orbcafe-ui 1.2.5 → 1.2.6
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.d.mts +25 -3
- package/dist/index.d.ts +25 -3
- package/dist/index.js +16 -16
- package/dist/index.mjs +15 -15
- package/package.json +1 -1
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 ct from'react';import ct__default,{createContext,forwardRef,useMemo,useContext,useState,useEffect,useCallback,Fragment as Fragment$1,useRef}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 Pp from'@mui/material/Dialog';import Rp from'@mui/material/DialogTitle';import Dp from'@mui/material/DialogContent';import rf from'@mui/material/DialogContentText';import Mp from'@mui/material/DialogActions';import Hn from'@mui/material/Box';import lf from'@mui/icons-material/CheckCircle';import cf from'@mui/icons-material/Warning';import df from'@mui/icons-material/Error';import pf 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 ub from'@mui/material/Paper';import mb from'@mui/material/Table';import gb from'@mui/material/TableBody';import Cl from'@mui/material/TableCell';import Fp from'@mui/material/TableContainer';import Nf from'@mui/material/TableHead';import Vf from'@mui/material/TableRow';import Ap from'@mui/material/TextField';import rs from'@mui/material/Button';import Bp 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 gp from'@mui/icons-material/Search';import Sf from'@mui/icons-material/ViewColumn';import kp from'@mui/icons-material/Save';import Tf from'@mui/icons-material/Download';import If from'@mui/icons-material/AccountTree';import Pf from'@mui/icons-material/Functions';import Rf from'@mui/icons-material/Insights';import Df from'@mui/icons-material/Add';import Mf from'@mui/icons-material/Edit';import Af from'@mui/icons-material/Delete';import Bf from'@mui/icons-material/KeyboardArrowLeft';import Ff from'@mui/icons-material/KeyboardArrowRight';import Of from'@mui/material/Checkbox';import Wf from'@mui/material/TableSortLabel';import $f from'@mui/material/IconButton';import Hf from'@mui/material/Tooltip';import Gf from'@mui/icons-material/UnfoldMore';import Uf from'@mui/icons-material/UnfoldLess';import Xf from'@mui/icons-material/KeyboardArrowDown';import dh from'@mui/icons-material/Check';import ph from'@mui/icons-material/ClearAll';import Vh from'@mui/icons-material/Close';import qh from'@mui/icons-material/MicNoneOutlined';import _h from'@mui/icons-material/SettingsOutlined';import Zh from'@mui/icons-material/SendOutlined';import Uy from'@mui/icons-material/Settings';import Ky from'@mui/icons-material/KeyboardArrowUp';import _y from'@mui/icons-material/ArrowRightAlt';import fy 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 My from'@mui/icons-material/CalendarMonth';import Ay from'@mui/icons-material/Clear';import By from'@mui/icons-material/ArrowForward';import Ua from'dayjs';import Fy from'dayjs/plugin/isBetween';import Ey 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 sb from'@mui/icons-material/StarBorder';import lb from'@mui/icons-material/ViewQuilt';import Mx from'@mui/icons-material/CloseOutlined';import Mb from'@mui/icons-material/ContentCopyOutlined';import Ab from'@mui/icons-material/CheckOutlined';import ix 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 pu from'@mui/icons-material/Language';import f0 from'@mui/icons-material/DesktopWindows';import h0 from'@mui/icons-material/DarkMode';import y0 from'@mui/icons-material/LightMode';import x0 from'@mui/icons-material/Logout';import Ev from'@mui/icons-material/DeleteOutline';import H0 from'@mui/icons-material/DragIndicator';import iv from'@mui/icons-material/FilterList';import sv from'@mui/icons-material/TableRows';import _0 from'@mui/icons-material/LayersClear';import nC from'@mui/icons-material/CameraAltRounded';import iC from'@mui/icons-material/QrCodeScannerRounded';import dC from'@mui/icons-material/DragIndicatorRounded';import gC from'@mui/icons-material/BackspaceRounded';import fC from'@mui/icons-material/CloseRounded';import hC from'@mui/icons-material/CheckRounded';import AC from'@mui/icons-material/SearchRounded';import BC from'@mui/icons-material/MenuOpenRounded';import FC from'@mui/icons-material/MenuRounded';import EC from'@mui/icons-material/ExpandMoreRounded';import LC from'@mui/icons-material/ChevronRightRounded';import tk from'next/dynamic';import {AnimatePresence,motion}from'framer-motion';import fS from'react-markdown';import hS from'remark-gfm';import yS from'remark-math';import bS from'rehype-katex';import xS 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 Nm from'mermaid';import MS from'@mui/icons-material/MicRounded';import AS from'@mui/icons-material/MicOffRounded';import {InsertDriveFile,Close,Stop}from'@mui/icons-material';import zS from'@mui/icons-material/SendRounded';import NS from'@mui/icons-material/AddRounded';import VS from'@mui/icons-material/HardwareRounded';import sw from'@mui/icons-material/LockOutlined';import ug from'@mui/icons-material/MailOutline';import mg from'@mui/icons-material/PersonOutline';import lw from'@mui/icons-material/VpnKeyOutlined';import Bw from'@mui/icons-material/CalendarMonthOutlined';import zw from'@mui/icons-material/KeyboardDoubleArrowLeftOutlined';import Nw from'@mui/icons-material/KeyboardDoubleArrowRightOutlined';import Vw from'@mui/icons-material/SplitscreenOutlined';import Ow from'@mui/icons-material/Sort';function mo(...e){return twMerge(clsx(e))}var pl={primary:"#000000",primaryHover:"#333333"},xi={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"},wn={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 Bg=cva(sd(),{variants:{variant:{default:`${xi.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:`${xi.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:xi.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-[${pl.primary}] hover:bg-[${pl.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:wn.none,sm:wn.sm,md:wn.md,full:wn.full}},defaultVariants:{variant:"default",size:"default",rounded:"md"}}),ul=ct.forwardRef(({className:e,variant:t,size:o,asChild:a=false,...r},n)=>jsx(a?Slot:"button",{className:mo(Bg({variant:t,size:o,className:e})),ref:n,...r}));ul.displayName="Button";var Eg={"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"},Lg={"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"},zg={"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"},Ng={"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"},Vg={"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"},Og={"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"},Tn={en:Eg,zh:Lg,fr:zg,de:Ng,ja:Vg,ko:Og};var cd=(e,t)=>t?e.replace(/\{(\w+)\}/g,(o,a)=>{let r=t[a];return r==null?"":String(r)}):e,Gg={locale:"en",t:(e,t)=>cd(Tn.en[e]||e,t)},dd=createContext(Gg),vi=({locale:e="en",messages:t,children:o})=>{let a=useMemo(()=>{let r=Tn[e]||Tn.en,n=t?.[e]||{},i={...Tn.en,...r,...n};return {locale:e,t:(l,d)=>cd(i[l]||l,d)}},[e,t]);return jsx(dd.Provider,{value:a,children:o})},Z=()=>useContext(dd);function gl({items:e,onItemClick:t,className:o="",level:a=0,expandedIds:r,onToggleExpand:n,colorMode:i="light"}){let{t:l}=Z(),d=i==="dark",s=usePathname(),[c,g]=useState(false),[f,u]=useState(new Set),h=r!==void 0&&n!==void 0,w=h?r:f;useEffect(()=>{g(true);},[]);let p=m=>{if(h)n(m);else {let y=new Set(f);y.has(m)?y.delete(m):y.add(m),u(y);}},v=m=>{m.children&&m.children.length>0&&p(m.id),t&&t(m);};return !e||!Array.isArray(e)?jsx("div",{className:mo("tree-menu",o),children:jsx("div",{className:"text-sm text-gray-500 p-2",children:l("navigation.noItems")})}):jsx("div",{className:mo("tree-menu",o),children:e.map(m=>{let y=w.has(m.id)||m.isExpanded,x=m.children&&m.children.length>0,k=m.appurl||m.href,F=c&&k?s===k:false;return jsxs("div",{className:"tree-menu-item relative",children:[F&&jsx("div",{className:mo("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",d?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxs(ul,{variant:"ghost",className:mo("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${a*4}`,F?d?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":d?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>v(m),children:[x&&jsx("div",{className:mo("flex-shrink-0 transition-transform duration-200",y&&"rotate-90",F?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:jsx(ChevronRight,{className:"h-4 w-4"})}),!x&&jsx("div",{className:"w-4 h-4 flex-shrink-0"}),m.icon&&jsx("div",{className:mo("flex-shrink-0 transition-colors duration-200",F?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:m.icon}),jsxs("div",{className:"flex-1 text-left overflow-hidden z-10",children:[jsx("div",{className:mo("text-sm truncate transition-colors duration-200",F?"font-semibold":"font-medium"),children:m.title||m.label}),m.description&&jsx("div",{className:mo("text-xs truncate transition-colors duration-200",F?d?"text-[#90caf9]/70":"text-[#1976d2]/75":d?"text-gray-400":"text-gray-500"),title:m.description,children:m.description})]})]}),x&&jsx("div",{className:mo("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(gl,{items:m.children,onItemClick:t,level:a+1,expandedIds:r,onToggleExpand:n,colorMode:i})})})]},m.id)})})}var hd=({collapsed:e,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light"})=>{let{t:i}=Z(),l=n==="dark",d=useRouter(),[s,c]=useState(""),[g,f]=useState(new Set);useEffect(()=>{e&&f(new Set);},[e]);let u=useCallback(v=>{let m=[],y=x=>{x.forEach(k=>{m.push(k.id),k.children&&y(k.children);});};return y(v),m},[]),h=useMemo(()=>{if(!s.trim())return r;let v=m=>m.reduce((y,x)=>{let k=x.title?.toLowerCase().includes(s.toLowerCase())||x.description?.toLowerCase().includes(s.toLowerCase()),F=x.children?v(x.children):[];return (k||F.length>0)&&y.push({...x,children:F.length>0?F:x.children}),y},[]);return v(r)},[s,r]),w=useMemo(()=>s.trim()?new Set(u(r)):g,[s,r,g,u]),p=useCallback(async v=>{if(console.log("\u{1F5B1}\uFE0F \u5BFC\u822A\u83DC\u5355\u9879\u70B9\u51FB:",v),v.id==="chat"||v.appurl==="/chat"){console.log("\u{1F4AC} \u68C0\u6D4B\u5230chat\u83DC\u5355\u70B9\u51FB\uFF0C\u8DF3\u8F6C\u5230\u65B0\u7684\u804A\u5929\u89C6\u56FE");try{d.push("/chat?new=true");}catch(y){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",y),d.push("/chat");}return}let m=v.appurl||v.href;m&&(m.startsWith("http://")||m.startsWith("https://")?window.open(m,"_blank"):d.push(m));},[d]);return jsxs("div",{className:`flex flex-col backdrop-blur-xl border shadow-[0_4px_8px_0_rgba(31,38,135,0.1)] ${e?"w-14 rounded-full":"w-[234px] rounded-2xl"} relative ${o} ${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:v=>c(v.target.value),className:`w-full pl-10 pr-4 py-2 text-sm border rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent ${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(gl,{items:h,onItemClick:p,className:"space-y-1",expandedIds:w,colorMode:n,onToggleExpand:v=>{let m=new Set(g);h.some(x=>x.id===v)?m.has(v)?m.delete(v):(h.forEach(x=>{x.id!==v&&m.has(x.id)&&m.delete(x.id);}),m.add(v)):m.has(v)?m.delete(v):m.add(v),f(m);}})}),e&&jsx("div",{className:"space-y-2",children:r.map(v=>jsx("div",{className:"space-y-1",children:jsx("button",{onClick:()=>{t();let m=new Set([v.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:v.title||""}),children:v.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:v.title?.charAt(0)||"?"})})},v.id))})]})}),!e&&jsx("button",{onClick:t,className:`absolute -bottom-1 -right-1 w-6 h-6 bg-transparent rounded-full flex items-center justify-center transition-all duration-300 ease-in-out z-20 ${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 bd=(e={})=>{let{initialCollapsed:t=false,content:o=[]}=e,[a,r]=useState(t),[n,i]=useState(o),l=useCallback(()=>{r(s=>!s);},[]),d=useMemo(()=>({collapsed:a,onToggle:l,menuData:n}),[a,l,n]);return {collapsed:a,setCollapsed:r,toggleCollapsed:l,menuData:n,setMenuData:i,navigationIslandProps:d}};var Do=e=>jsx(Button,{...e,variant:e.variant||"contained",size:e.size||"medium",sx:{textTransform:"none",...e.sx}});var hl=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);}},ra=new hl,O1={success:(e,t)=>ra.show("success",e,t),error:(e,t)=>ra.show("error",e,t),warning:(e,t)=>ra.show("warning",e,t),info:(e,t)=>ra.show("info",e,t),show:(e,t,o)=>ra.show(e,t,o),hide:()=>ra.hide()};var uf={success:{icon:jsx(lf,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsx(cf,{sx:{fontSize:40}}),color:"#fff3e0",iconColor:"#ffa726",borderColor:"#ffcc80"},error:{icon:jsx(df,{sx:{fontSize:40}}),color:"#ffebee",iconColor:"#ef5350",borderColor:"#ef9a9a"},info:{icon:jsx(pf,{sx:{fontSize:40}}),color:"#e3f2fd",iconColor:"#42a5f5",borderColor:"#90caf9"},default:{icon:null,color:"transparent",iconColor:"inherit",borderColor:"transparent"}},In=({open:e,title:t,message:o,onClose:a,onConfirm:r,confirmText:n,cancelText:i,showCancel:l=true,maxWidth:d="xs",type:s="default"})=>{let{t:c}=Z(),g=n||c("messageBox.confirm"),f=i||c("messageBox.cancel"),u=()=>{r?r():a();},h=uf[s],w=s!=="default";return jsxs(Pp,{open:e,onClose:a,maxWidth:d,fullWidth:true,PaperProps:{sx:{borderRadius:3,...w&&{borderTop:`6px solid ${h.iconColor}`}}},children:[w&&jsx(Hn,{sx:{display:"flex",justifyContent:"center",pt:3,color:h.iconColor},children:h.icon}),t&&jsx(Rp,{sx:{textAlign:w?"center":"left",pt:w?1:2},children:t}),jsx(Dp,{sx:{textAlign:w?"center":"left"},children:typeof o=="string"?jsx(rf,{children:o}):o}),jsxs(Mp,{sx:{justifyContent:w?"center":"flex-end",pb:3,px:3},children:[l&&jsx(Do,{onClick:a,variant:"text",color:"inherit",children:f}),jsx(Do,{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})]})]})},oT=()=>{let[e,t]=ct__default.useState(null),[o,a]=ct__default.useState(false);ct__default.useEffect(()=>{let i=l=>{l?(t(l),a(true)):(a(false),t(null));};return ra.register(i),()=>ra.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(In,{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 vd=({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 Ci=e=>{let{t}=Z(),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],d=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(d/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(gp,{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(Bf,{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(Ff,{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(ct__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(If,{})})})}),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(Pf,{})})}),jsx(Tooltip,{title:t("table.toolbar.columns"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.setAnchorEl(h.currentTarget),children:jsx(Sf,{})})}),jsx(Tooltip,{title:t("table.toolbar.export"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.handleExport,children:jsx(Tf,{})})}),e.showCreateButton&&jsx(Tooltip,{title:t("table.toolbar.newItem"),children:jsx(IconButton,{onClick:e.onOpenCreateDialog,color:"primary",children:jsx(Df,{})})}),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(Mf,{})})})}),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(Af,{})})})}),e.onOpenGraphReport&&jsx(Tooltip,{title:t("table.toolbar.graphicReport"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.onOpenGraphReport,children:jsx(Rf,{})})}),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(kp,{})})}),e.layoutManager]})]})};var ki=e=>{let{t}=Z(),{onSelectAllClick:o,order:a,orderBy:r,numSelected:n=0,rowCount:i=0,onRequestSort:l,columns:d,visibleColumns:s,selectionMode:c,grouping:g=[],isAllExpanded:f=false,handleToggleAll:u,onColumnResize:h,columnWidths:w}=e,[p,v]=useState(null),m=useRef(null),y=C=>D=>{p||l(C);},x=(C,D,I)=>{C.preventDefault(),C.stopPropagation(),v(D),m.current={startX:C.clientX,startWidth:I,colId:D},document.addEventListener("mousemove",k),document.addEventListener("mouseup",F),document.body.style.cursor="col-resize";},k=C=>{if(!m.current)return;let{startX:D,startWidth:I,colId:P}=m.current,M=C.clientX-D,$=Math.max(50,I+M);h&&h(P,$);},F=()=>{v(null),m.current=null,document.removeEventListener("mousemove",k),document.removeEventListener("mouseup",F),document.body.style.cursor="";};useEffect(()=>()=>{document.removeEventListener("mousemove",k),document.removeEventListener("mouseup",F);},[]);let S=c==="multiple"||c==="single",T=g.length>0&&!!u,A=t(f?"table.group.collapseAll":"table.group.expandAll"),R=d.filter(C=>s.includes(C.id));return jsx(Nf,{children:jsxs(Vf,{children:[S&&jsx(Cl,{padding:"checkbox",sx:C=>({width:48,position:"sticky",top:0,zIndex:4,backgroundColor:C.palette.mode==="dark"?"#000000":"#f5f5f5",color:C.palette.mode==="dark"?"#ffffff":C.palette.text.primary}),children:jsx(Of,{color:"primary",indeterminate:n>0&&n<i,checked:i>0&&n===i,onChange:o,disabled:c==="single"})}),T&&jsx(Cl,{align:"center",padding:"checkbox",sx:C=>({width:44,position:"sticky",top:0,zIndex:4,backgroundColor:C.palette.mode==="dark"?"#000000":"#f5f5f5",color:C.palette.mode==="dark"?"#ffffff":C.palette.text.primary}),children:jsx(Hf,{title:A,children:jsx($f,{size:"small",onClick:C=>{C.stopPropagation(),u?.(!f);},sx:{p:.2},children:f?jsx(Uf,{fontSize:"small"}):jsx(Gf,{fontSize:"small"})})})}),R.map(C=>{let D=w?.[C.id]||C.minWidth||100;return jsxs(Cl,{align:"left",padding:C.disablePadding?"none":"normal",sortDirection:r===C.id?a:false,style:{width:D,minWidth:D,maxWidth:D},sx:I=>({position:"sticky",top:0,zIndex:4,backgroundColor:I.palette.mode==="dark"?"#000000":"#f5f5f5",color:I.palette.mode==="dark"?"#ffffff":I.palette.text.primary,fontWeight:"bold",userSelect:"none"}),children:[jsx(Wf,{active:r===C.id,direction:r===C.id?a:"asc",onClick:y(C.id),sx:I=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:I.palette.mode==="dark"?"#ffffff":I.palette.text.primary,opacity:r===C.id?1:0,transition:"opacity 0.2s"},"&:hover .MuiTableSortLabel-icon":{opacity:.5},"&.Mui-active .MuiTableSortLabel-icon":{opacity:1,color:I.palette.mode==="dark"?"#ffffff":I.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:I.palette.mode==="dark"?"#ffffff":I.palette.text.primary}),children:jsx(Hn,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1},children:C.label})}),jsx(Hn,{onMouseDown:I=>x(I,C.id,typeof D=="number"?D:100),onClick:I=>I.stopPropagation(),sx:{position:"absolute",right:0,top:0,bottom:0,width:5,cursor:"col-resize","&:hover":{backgroundColor:"primary.main",opacity:.5},zIndex:1}})]},C.id)})]})})};var Id=e=>{let{t}=Z(),{visibleRows:o,visibleColumns:a,selected:r=[],handleClick:n,columns:i,toggleGroupExpand:l,expandedGroups:d=new Set,selectionMode:s,grouping:c=[],isGroupFullyExpanded:g,handleExpandGroupRecursively:f,handleCollapseGroupRecursively:u}=e,h=m=>r.indexOf(m)!==-1,w=s==="multiple"||s==="single",p=c.length>0,v=a.length+(w?1:0)+(p?1:0);return jsxs(TableBody,{children:[o.map((m,y)=>{if(m.type==="group"){let x=d.has(m.id),k=m.childIds||[],F=k.filter(R=>h(R)).length,S=k.length>0&&F===k.length,T=F>0&&F<k.length;return jsxs(TableRow,{sx:R=>({backgroundColor:R.palette.mode==="dark"?"#111111":"#f5f5f5","& .MuiTableCell-root":{color:R.palette.text.primary,borderBottomColor:R.palette.divider},"& .MuiIconButton-root":{color:R.palette.text.primary},"& .MuiCheckbox-root":{color:R.palette.text.secondary},"& .MuiCheckbox-root.Mui-checked, & .MuiCheckbox-root.MuiCheckbox-indeterminate":{color:R.palette.primary.main}}),children:[w&&jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:S,indeterminate:T,onChange:R=>{if(R.stopPropagation(),!!e.onSelectionChange)if(S){let C=r.filter(D=>!k.includes(D));e.onSelectionChange(C);}else {let C=Array.from(new Set([...r,...k]));e.onSelectionChange(C);}},onClick:R=>R.stopPropagation(),sx:{p:.5}})}),p&&jsx(TableCell,{padding:"checkbox",sx:{width:44},children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.25},children:[c.length>1&&m.level<c.length-1&&jsx(Tooltip,{title:g?.(m.id)?t("table.group.collapseAll"):t("table.group.expandAll"),children:jsx(IconButton,{size:"small",onClick:()=>{g?.(m.id)?u?.(m.id):f?.(m.id);},sx:{p:.25},children:g?.(m.id)?jsx(Uf,{fontSize:"small"}):jsx(Gf,{fontSize:"small"})})}),jsx(IconButton,{size:"small",onClick:()=>l&&l(m.id),sx:{p:.25},children:x?jsx(Xf,{}):jsx(Ff,{})})]})}),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,k=m.id||x.id||y,F=h(k),S=`enhanced-table-checkbox-${y}`,A=(m.level!==void 0?m.level:0)*4;return jsxs(TableRow,{hover:true,onClick:R=>n&&n(R,x),role:"checkbox","aria-checked":F,tabIndex:-1,selected:F,sx:{cursor:"pointer"},children:[w&&jsx(TableCell,{padding:"checkbox",sx:{pl:A>0?A+1:void 0},children:jsx(Checkbox,{color:"primary",checked:F,inputProps:{"aria-labelledby":S}})}),p&&jsx(TableCell,{padding:"checkbox",sx:{width:44}}),i.filter(R=>a.includes(R.id)).map((R,C)=>{let I=!w&&C===0&&A>0?{pl:A+2}:{};return jsx(TableCell,{align:"left",sx:I,children:R.render?R.render(x[R.id],x):(function(){let M=x[R.id];if(R.numeric){if(typeof M=="number")return M.toLocaleString();if(typeof M=="string"&&M.trim()!==""&&!isNaN(Number(M)))return Number(M).toLocaleString()}return M})()},R.id)})]},k)}}),o.length===0&&jsx(TableRow,{children:jsx(TableCell,{colSpan:v,align:"center",children:t("common.noData")})})]})};var Pd=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 Dd=e=>{let{t}=Z();return jsx(Box,{sx:{p:2},children:jsx(Typography,{children:t("table.mobile.notImplemented")})})};var zr=({groupAnchorEl:e,setGroupAnchorEl:t,grouping:o,setGrouping:a,columns:r,toggleGroupField:n})=>{let{t:i}=Z();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(ph,{}),children:i("table.menu.clearAll")})]}),jsx(Divider,{}),r.map(l=>{let d=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:d,size:"small"}),jsx(ListItemText,{primary:l.label}),d&&jsx(Badge,{badgeContent:s,color:"primary",sx:{mr:2}})]})},l.id)})]})},Nr=({anchorEl:e,setAnchorEl:t,columns:o,visibleColumns:a,toggleColumnVisibility:r})=>{let{t:n}=Z();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))]})},Ii=({anchorEl:e,setAnchorEl:t,showSummary:o,setShowSummary:a,columns:r,summaryColumns:n,toggleSummaryColumn:i})=>{let{t:l}=Z();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{children:jsx(FormControlLabel,{control:jsx(Switch,{checked:o,onChange:d=>a(d.target.checked),size:"small"}),label:l("table.menu.showSummaryRow")})}),jsx(Divider,{}),r.filter(d=>d.numeric).map(d=>jsxs(MenuItem,{onClick:()=>i(d.id),disabled:!o,children:[jsx(Checkbox,{checked:n.includes(d.id),size:"small"}),jsx(ListItemText,{primary:d.label})]},d.id)),r.filter(d=>d.numeric).length===0&&jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:l("table.menu.noNumericColumns")})})]})},Pi=({contextMenu:e,handleCloseContextMenu:t,columns:o,visibleColumns:a,toggleColumnVisibility:r})=>{let{t:n}=Z();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(dh,{fontSize:"small"})}),jsx(ListItemText,{children:i.label})]},i.id))]})};var Dn=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),Bd=({kpis:e})=>{let{t}=Z(),o=[{label:t("graph.kpi.totalRecords"),value:Dn(e.totalRecords,0),color:"text.primary"},{label:t("graph.kpi.totalReport"),value:Dn(e.totalReportHours),color:"text.primary"},{label:t("graph.kpi.totalBillable"),value:Dn(e.totalBillableHours),color:"success.main"},{label:t("graph.kpi.efficiency"),value:`${e.efficiency.toFixed(2)}%`,color:"warning.main"},{label:t("graph.kpi.amount"),value:Dn(e.totalAmount),color:"info.main"},{label:t("graph.kpi.flagged"),value:Dn(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 Ri=({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 An=({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 Ld=({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),w=a-n-(f.value-l)/s*(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 zd=({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),d=e.map((c,g)=>{let f=(r-n*2)/e.length,u=Math.max(f*.5,8),h=n+g*f+(f-u)/2,w=c.barValue/i*(a-n*2),p=a-n-w;return {x:h,y:p,barHeight:w,barWidth:u,item:c}}),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)"}),d.map(c=>jsx("rect",{x:c.x,y:c.y,width:c.barWidth,height:Math.max(c.barHeight,4),rx:6,fill:t},c.item.name)),jsx("polyline",{fill:"none",stroke:o,strokeWidth:3,points: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 xh=e=>`rgba(30, 136, 229, ${.2+Math.max(0,Math.min(1,e))*.8})`,Vd=({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,d=l/a;return jsx(Box,{sx:{height:36,borderRadius:1,bgcolor:xh(d),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 vh=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],Li=({data:e,variant:t="donut",colors:o=vh,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((d,s)=>{let c=i;return i+=d.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((d,s)=>jsxs(Box,{onClick:()=>n?.(d),sx:{display:"flex",alignItems:"center",gap:1,cursor:n?"pointer":"default",opacity:r&&d.name!==r?.45:1},children:[jsx(Box,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:o[s%o.length]}}),jsx(Typography,{variant:"caption",sx:{flex:1},children:d.name}),jsxs(Typography,{variant:"caption",sx:{fontWeight:700},children:[d.percent.toFixed(0),"%"]})]},d.name))})]})};var Wd=({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 Hd=({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,d=30,s=i-n||1,c=g=>t-d-(g-n)/s*(t-d*2);return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${l} ${t}`,sx:{width:"100%",height:t},children:[jsx("line",{x1:d,y1:c(0),x2:l-d,y2:c(0),stroke:"rgba(148,163,184,0.4)"}),a.map((g,f)=>{let u=(l-d*2)/a.length,h=Math.max(u*.55,8),w=d+f*u+(u-h)/2,p=c(Math.max(g.start,g.end)),v=c(Math.min(g.start,g.end)),m=g.type==="total"?"#42A5F5":g.delta>=0?"#66BB6A":"#EF5350";return jsxs("g",{children:[jsx("rect",{x:w,y:p,width:h,height:Math.max(v-p,4),rx:6,fill:m}),jsx("text",{x:w+h/2,y:p-6,textAnchor:"middle",fill:"currentColor",fontSize:"11",children:g.end.toFixed(1)})]},g.name)})]}),jsx(Box,{sx:{mt:1,display:"grid",gridTemplateColumns:`repeat(${a.length}, minmax(0, 1fr))`,gap:1},children:a.map(g=>jsx(Typography,{variant:"caption",noWrap:true,title:g.name,children:g.name},g.name))})]})};var En=({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}`},LI=(e,t=360)=>{let o=En(e);return `<iframe width="100%" height="${t}" style="border:0" loading="lazy" allowfullscreen referrerpolicy="no-referrer-when-downgrade" src="${o}"></iframe>`};var Kd=({apiKey:e,query:t,embedUrl:o,zoom:a=14,mapType:r="roadmap",height:n=320})=>{let i=o||(e&&t?En({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 Vi=({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 jd=({keyword:e,location:t,embedUrl:o,height:a=320})=>{let r=o||Vi({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 Xd=({billableByPrimary:e,efficiencyBySecondary:t,statusDistribution:o,interaction:a})=>{let{t:r}=Z();return jsxs(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"1.2fr 1.2fr 1fr"}},children:[jsx(Ri,{title:r("graph.chart.billable.title"),subtitle:r("graph.chart.billable.subtitle"),children:jsx(An,{data:e,orientation:"horizontal",activeName:a?.filters?.primaryDimension,onItemClick:n=>a?.onPrimaryDimensionClick?.(n.name)})}),jsx(Ri,{title:r("graph.chart.efficiency.title"),subtitle:r("graph.chart.efficiency.subtitle"),children:jsx(An,{data:t,orientation:"vertical",valueSuffix:"%",activeName:a?.filters?.secondaryDimension,onItemClick:n=>a?.onSecondaryDimensionClick?.(n.name)})}),jsx(Ri,{title:r("graph.chart.status.title"),subtitle:r("graph.chart.status.subtitle"),children:jsx(Li,{data:o,variant:"donut",activeName:a?.filters?.status,onItemClick:n=>a?.onStatusClick?.(n.name)})})]})};var Wt=e=>jsx(TextField,{...e,variant:e.variant||"outlined",size:e.size||"small",fullWidth:e.fullWidth!==void 0?e.fullWidth:true});var Fl=e=>jsx(TextField,{...e,multiline:true,minRows:3,fullWidth:true,variant:"outlined"});var Oh=["doubao-lite","gpt-4o-mini","gpt-4.1-mini","claude-3.5-sonnet"],Wh=["zh","en","de","fr","ja","ko"],Jd=({open:e,onClose:t,value:o,onSaveAll:a,modelOptions:r=Oh,promptLangOptions:n=Wh,analysisTemplateOptions:i=[],responseTemplateOptions:l=[],defaultAnalysisTemplateId:d,defaultResponseTemplateId:s})=>{let[c,g]=useState(o),[f,u]=useState(d||""),[h,w]=useState(s||""),[p,v]=useState(false);useEffect(()=>{e&&(g(o),u(d||""),w(s||""));},[e,o,d,s]);let m=(x,k)=>{g(F=>({...F,[x]:k}));},y=async()=>{if(a)try{v(!0),await a({settings:c,analysisTemplateId:f||void 0,responseTemplateId:h||void 0});}finally{v(false);}};return jsxs(Dialog,{open:e,onClose:t,fullWidth:true,maxWidth:"lg",children:[jsxs(DialogTitle,{sx:{pr:7,pb:2.2},children:[jsx(Typography,{variant:"h5",sx:{fontWeight:800},children:"AI Settings"}),jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.5},children:"Configure LLM settings and editable agent prompts by language."}),jsx(IconButton,{onClick:t,sx:{position:"absolute",right:12,top:12},children:jsx(Vh,{})})]}),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(Wt,{size:"small",value:c.baseUrl,onChange:x=>m("baseUrl",x.target.value),fullWidth:true,label:"Base URL"})}),jsx(Box,{children:jsx(Wt,{size:"small",type:"password",value:c.apiKey,onChange:x=>m("apiKey",x.target.value),fullWidth:true,label:"API Key"})}),jsx(Box,{children:jsx(Wt,{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(Wt,{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(Wt,{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(Fl,{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(Wt,{size:"small",value:h,onChange:x=>w(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(Fl,{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||p,children:"Save"})]})]})};var Gi=({open:e,onClose:t,model:o,tableContent:a,extraCharts:r,interaction:n,aiAssistant:i})=>{let{t:l}=Z(),[d,s]=useState(i?.defaultPrompt||""),[c,g]=useState(false),[f,u]=useState(false),h=n?.enabled!==false&&!!n,w=i?.enabled!==false,p=n?.filters||{},v=!!(p.primaryDimension||p.secondaryDimension||p.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 k=d.trim();if(!(!k||!i?.onSubmit))try{g(!0),await i.onSubmit(k,{filters:p,model:o});}finally{g(false);}};return jsx(Dialog,{open:e,onClose:t,fullScreen:true,children:jsxs(Box,{sx:{height:"100%",display:"flex",flexDirection:"column",bgcolor:"background.default"},children:[jsx(Box,{sx:{p:2,borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:{xs:"column",lg:"row"},alignItems:{xs:"stretch",lg:"center"},justifyContent:"space-between",spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{flexWrap:"wrap"},children:[jsx(Typography,{variant:"h5",fontWeight:800,children:o.title}),jsx(Chip,{size:"small",label:l("graph.records",{count:o.kpis.totalRecords})}),h&&p.primaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.primaryDimension}: ${p.primaryDimension}`,onDelete:()=>n?.onClearFilter("primaryDimension")}),h&&p.secondaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.secondaryDimension}: ${p.secondaryDimension}`,onDelete:()=>n?.onClearFilter("secondaryDimension")}),h&&p.status&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.status}: ${p.status}`,onDelete:()=>n?.onClearFilter("status")}),h&&v&&jsx(Button,{size:"small",onClick:()=>n?.onClearAll(),children:"Clear"})]}),jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{width:{xs:"100%",lg:"auto"}},children:[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(qh,{sx:{fontSize:18,color:"text.secondary"}})}),jsx(InputBase,{fullWidth:true,value:d,onChange:k=>s(k.target.value),onKeyDown:k=>{k.key==="Enter"&&(k.preventDefault(),x());},placeholder:m,sx:{fontSize:"0.9rem"}}),jsx(IconButton,{size:"small",onClick:x,disabled:c||!d.trim(),children:jsx(Zh,{sx:{fontSize:18}})}),jsx(IconButton,{size:"small",onClick:()=>u(true),children:jsx(_h,{sx:{fontSize:18}})})]}),jsx(IconButton,{onClick:t,children:jsx(Vh,{})})]})]})}),jsxs(Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsx(Bd,{kpis:o.kpis}),jsx(Xd,{billableByPrimary:o.charts.billableByPrimary,efficiencyBySecondary:o.charts.efficiencyBySecondary,statusDistribution:o.charts.statusDistribution,interaction:h?{filters:p,onPrimaryDimensionClick:k=>n?.onPrimaryDimensionClick(k),onSecondaryDimensionClick:k=>n?.onSecondaryDimensionClick(k),onStatusClick:k=>n?.onStatusClick(k)}:void 0}),r,a]}),jsx(Jd,{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 Pa={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"]},Xh=5,ep=e=>e.toLowerCase().replace(/[\s_-]/g,""),Ra=(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=>[ep(i),i]));for(let i of o){let l=n.get(ep(i));if(l)return l}return r[0]||a},to=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},Bt=(e,t)=>e==null||e===""?t:String(e),Qh=(e,t,o,a,r)=>{let n=new Map;return e.forEach(i=>{let l=Bt(i[t],r);n.set(l,(n.get(l)||0)+to(i[o]));}),Array.from(n.entries()).map(([i,l])=>({name:i,value:l})).sort((i,l)=>l.value-i.value).slice(0,a)},Yh=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(l=>{let d=Bt(l[t],n),s=i.get(d)||{report:0,billable:0};s.report+=to(l[o]),s.billable+=to(l[a]),i.set(d,s);}),Array.from(i.entries()).map(([l,d])=>({name:l,value:d.report>0?d.billable/d.report*100:0})).sort((l,d)=>l.value-d.value).slice(0,r)},Jh=(e,t,o)=>{let a=e.length;if(a===0)return [];let r=new Map;return e.forEach(n=>{let i=Bt(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}))},tp=(e,t,o)=>{let a=new Map;return e.forEach(r=>{let n=Bt(r[t],"N/A");a.set(n,(a.get(n)||0)+to(r[o]));}),Array.from(a.entries()).sort(([r],[n])=>r.localeCompare(n)).map(([r,n])=>({name:r,value:n}))},ey=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(l=>{let d=Bt(l[t],n),s=i.get(d)||{report:0,billable:0};s.report+=to(l[o]),s.billable+=to(l[a]),i.set(d,s);}),Array.from(i.entries()).map(([l,d])=>({name:l,barValue:d.billable,lineValue:d.report>0?d.billable/d.report*100:0})).sort((l,d)=>d.barValue-l.barValue).slice(0,r)},ty=(e,t,o,a,r)=>{let n=new Map;return e.forEach(i=>{let l=Bt(i[t],r),d=Bt(i[o],r),s=`${l}__${d}`;n.set(s,(n.get(s)||0)+to(i[a]));}),Array.from(n.entries()).map(([i,l])=>{let[d,s]=i.split("__");return {x:d,y:s,value:l}})},oy=(e,t,o)=>{let a=tp(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"}]},ay=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(l=>{let d=Bt(l[t],n),s=`${Bt(l[o],n)} / ${Bt(l[a],n)}`,c=i.get(d)||new Map;c.set(s,(c.get(s)||0)+1),i.set(d,c);}),Array.from(i.entries()).map(([l,d])=>({title:l,causes:Array.from(d.entries()).sort((s,c)=>c[1]-s[1]).slice(0,r).map(([s,c])=>`${s} (${c})`)})).slice(0,6)},_r=({rows:e,config:t})=>{let{t:o}=Z(),a=o("graph.unassigned"),r=useMemo(()=>{let c=t?.fieldMapping;return {primaryDimension:Ra(e,c?.primaryDimension,Pa.primaryDimension,"Category"),secondaryDimension:Ra(e,c?.secondaryDimension,Pa.secondaryDimension,"Owner"),status:Ra(e,c?.status,Pa.status,"Status"),date:Ra(e,c?.date,Pa.date,"Date"),description:Ra(e,c?.description,Pa.description,"Description"),reportHours:Ra(e,c?.reportHours,Pa.reportHours,"ReportHours"),billableHours:Ra(e,c?.billableHours,Pa.billableHours,"BillableHours"),amount:Ra(e,c?.amount,Pa.amount,"Amount")}},[e,t?.fieldMapping]),n=useMemo(()=>e.map((c,g)=>{let f=to(c[r.reportHours]),u=to(c[r.billableHours]),h=to(c[r.amount]),w=f>0?u/f*100:0;return {id:`graph-row-${g}`,Date:Bt(c[r.date],""),Primary:Bt(c[r.primaryDimension],a),Secondary:Bt(c[r.secondaryDimension],a),Description:Bt(c[r.description],""),ReportHours:f,BillableHours:u,Amount:h,Efficiency:w,Status:Bt(c[r.status],a)}}),[e,r,a]),i=useMemo(()=>{let c=n.length,g=n.reduce((v,m)=>v+to(m.ReportHours),0),f=n.reduce((v,m)=>v+to(m.BillableHours),0),u=n.reduce((v,m)=>v+to(m.Amount),0),h=g>0?f/g*100:0,w=t?.statusFlagValues||["flag","flagged","warning","risk"],p=n.filter(v=>w.includes(Bt(v.Status,"").toLowerCase())).length;return {totalRecords:c,totalReportHours:g,totalBillableHours:f,efficiency:h,totalAmount:u,flaggedCount:p}},[n,t?.statusFlagValues]),l=t?.topN||Xh,d=useMemo(()=>({billableByPrimary:Qh(n,"Primary","BillableHours",l,a),efficiencyBySecondary:Yh(n,"Secondary","ReportHours","BillableHours",l,a),statusDistribution:Jh(n,"Status",a),lineByDate:tp(n,"Date","BillableHours"),comboByPrimary:ey(n,"Primary","ReportHours","BillableHours",l,a),heatmapPrimarySecondary:ty(n,"Primary","Secondary","BillableHours",a),waterfallBillable:oy(n,"Date","BillableHours"),fishboneStatusCauses:ay(n,"Status","Primary","Secondary",3,a)}),[n,l,a]),s=useMemo(()=>({title:t?.title||o("graph.reportTitle"),kpis:i,charts:d,table:{columns:[{id:"Date",label:r.date},{id:"Primary",label:r.primaryDimension},{id:"Secondary",label:r.secondaryDimension},{id:"Description",label:r.description},{id:"ReportHours",label:o("graph.column.reportHours"),align:"right"},{id:"BillableHours",label:o("graph.column.billableHours"),align:"right"},{id:"Amount",label:"Amount",align:"right"},{id:"Efficiency",label:"Efficiency",align:"right"},{id:"Status",label:r.status}],rows:n}}),[d,t?.title,r,i,n,o]);return {fieldMapping:r,model:s}};var Zr=e=>String(e??"").trim(),Ki=(e={})=>{let[t,o]=useState(e),a=useCallback((d,s)=>{o(c=>{let g=s?.trim();if(!g){let f={...c};return delete f[d],f}if(c[d]===g){let f={...c};return delete f[d],f}return {...c,[d]:g}});},[]),r=useCallback(d=>{o(s=>{if(!s[d])return s;let c={...s};return delete c[d],c});},[]),n=useCallback(()=>{o({});},[]),i=useMemo(()=>!!(t.primaryDimension||t.secondaryDimension||t.status),[t]),l=useCallback((d,s)=>d.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 _i=({variants:e,currentVariantId:t,onLoad:o,onSave:a,onDelete:r,onSetDefault:n})=>{let{t:i}=Z(),d=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(""),[w,p]=useState(false),[v,m]=useState(false),y=e.find(F=>F.id===t),x=()=>{h(y?.name||i("variant.newVariant")),p(y?.isDefault||false),m(y?.isPublic||false),f(true);},k=()=>{a({name:u,isDefault:w,isPublic:v,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:d?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.9)":"rgba(25,118,210,0.85)"}},"& .MuiInputBase-input":{fontSize:s},"& .MuiAutocomplete-noOptions":{fontSize:s}},noOptionsText:jsx(Typography,{sx:{fontSize:s},children:i("variant.noOptions")}),options:e,getOptionLabel:F=>F.name+(F.isDefault?` (${i("variant.defaultSuffix")})`:""),value:y||null,onChange:(F,S)=>{S&&o(S);},renderInput:F=>jsx(TextField,{...F,variant:"outlined",size:"small",InputProps:{...F.InputProps,sx:{fontSize:s,color:d?"#E3F2FD":"#0D47A1"}},placeholder:i("variant.selectVariant")}),renderOption:(F,S)=>jsx("li",{...F,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Typography,{sx:{flex:1,fontSize:s},children:S.name}),S.isDefault&&jsx(fy,{fontSize:"small",color:"action"})]})})}),jsx(Tooltip,{title:i("variant.saveView"),children:jsx(IconButton,{onClick:x,size:"small",color:"primary",children:jsx(kp,{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:F=>h(F.target.value)}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:w,onChange:F=>p(F.target.checked)}),label:i("variant.setDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:v,onChange:F=>m(F.target.checked)}),label:i("variant.publicAllUsers")})]}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>f(false),children:i("common.cancel")}),jsx(Button,{onClick:k,variant:"contained",children:i("common.save")})]})]})]})};var cp=({appId:e,tableKey:t="default",currentFilters:o,currentLayoutId:a,layoutRefs:r,onLoad:n,variantService:i,serviceUrl:l,onError:d,onSuccess:s,currentVariantId:c,onVariantChange:g})=>{let{t:f}=Z(),[u,h]=useState([]),[w,p]=useState(""),v=`orbcafe.variants.${e}.${t}`,m=c!==void 0?c:w,y=D=>{c===void 0&&p(D),g&&g(D);},x=useCallback(()=>{try{let D=localStorage.getItem(v);if(!D)return [];let I=JSON.parse(D);return Array.isArray(I)?I:[]}catch{return []}},[v]),k=useCallback(D=>{try{localStorage.setItem(v,JSON.stringify(D));}catch{}},[v]),F=useCallback(D=>{h(D);let I=D.find(P=>P.isDefault);I&&!m&&(y(I.id),n(I));},[m,n,y]),S=useCallback(async()=>{if(!e)return [];try{let D=[];if(i)D=await i.getVariants(e,t);else if(l){let I=await fetch(`${l}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!I.ok)throw new Error(f("variant.toast.fetchFailed"));D=await I.json();}else D=x();return F(D),D}catch(D){console.error("Error fetching variants",D);let I=x();return F(I),d&&d(f("variant.toast.fetchFailed")),I}},[e,t,i,l,x,F,d,f]);return useEffect(()=>{S();},[e,t]),jsx(_i,{variants:u,currentVariantId:m,onLoad:D=>{y(D.id),n(D);},onSave:async D=>{let I=Date.now().toString(),P;try{let M=D.scope||"Both",$=u.find(te=>te.name===D.name);I=$?$.id:Date.now().toString();let N=[];if($&&(Array.isArray($.filters)?N=[...$.filters]:$.filters&&(N=[{scope:"default",filters:$.filters}])),M==="Search"||M==="Both"){let te=(Array.isArray(o),o);if(te)if(Array.isArray(te)&&te.length>0&&te[0].scope)te.forEach(re=>{let Q=N.findIndex(U=>U.scope===re.scope);Q>=0?N[Q]=re:N.push(re);});else {let re={scope:t,filters:te},Q=N.findIndex(U=>U.scope===t);Q>=0?N[Q]=re:N.push(re);}}let X=$?.layout||{},oe=[];if($&&Array.isArray($.layoutRefs)&&(oe=[...$.layoutRefs]),M==="Layout"||M==="Both")if(r&&r.length>0)r.forEach(te=>{let re=oe.findIndex(Q=>Q.tableKey===te.tableKey);re>=0?oe[re]=te:oe.push(te);});else {let te={tableKey:t,layoutId:a||null},re=oe.findIndex(Q=>Q.tableKey===t);re>=0?oe[re]=te:oe.push(te);}if(P={appId:e,tableKey:t,...D,scope:M,id:I,createdAt:new Date().toISOString(),filters:N,layout:X,layoutRefs:oe},i)await i.saveVariant(P,e,t);else if(l){if(!(await fetch(`${l}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(P)})).ok)throw new Error(f("variant.toast.saveFailed"))}else {let re=u.some(Q=>Q.id===I)?u.map(Q=>Q.id===I?P:Q):[...u,P];h(re),k(re);}s&&s(f("variant.toast.saveSuccess")),(i||l)&&await S(),y(I),n(P);}catch(M){console.error("Error saving variant",M);let N=u.some(X=>X.id===I)?u.map(X=>X.id===I?P:X):[...u,P];h(N),k(N),y(I),n(P),d&&d(f("variant.toast.saveFailed"));}},onDelete:async D=>{try{if(i)await i.deleteVariant(D);else if(l){if(!(await fetch(`${l}/api/variants/${D}`,{method:"DELETE"})).ok)throw new Error(f("variant.toast.deleteFailed"))}else {let I=u.filter(P=>P.id!==D);h(I),k(I);}m===D&&y(""),(i||l)&&S(),s&&s(f("variant.toast.deleteSuccess"));}catch(I){console.error("Error deleting variant",I);let P=u.filter(M=>M.id!==D);h(P),k(P),m===D&&y(""),d&&d(f("variant.toast.deleteFailed"));}},onSetDefault:async D=>{try{let I=u.find(M=>M.id===D);if(!I)return;let P={appId:e,tableKey:t,...I,isDefault:!0};if(i)await i.setDefaultVariant(D,e,t);else if(l){if(!(await fetch(`${l}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(P)})).ok)throw new Error(f("variant.toast.defaultFailed"))}else {let M=u.map($=>({...$,isDefault:$.id===D}));h(M),k(M);}(i||l)&&await S(),s&&s(f("variant.toast.defaultSuccess"));}catch(I){console.error("Error setting default variant",I);let P=u.map(M=>({...M,isDefault:M.id===D}));h(P),k(P),d&&d(f("variant.toast.defaultFailed"));}}})};Ua.extend(Fy);Ua.extend(Ey);var Ly=[null,null],Vl="0.85rem",zy={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},Ny=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%"}})),up=({label:e,value:t=Ly,onChange:o})=>{let{t:a,locale:r}=Z(),n=zy[r]||"en",i=e||a("dateRange.label"),[l,d]=useState(null),[s,c]=useState(t),[g,f]=useState("start"),[u,h]=useState(null),[w,p]=useState((t[0]||Ua()).locale(n)),v=ct__default.useRef(t);useEffect(()=>{let[I,P]=t,[M,$]=v.current,N=te=>te&&typeof te.isSame=="function",X=!(I===null&&M===null||N(I)&&N(M)&&I.isSame(M,"day")),oe=!(P===null&&$===null||N(P)&&N($)&&P.isSame($,"day"));(X||oe)&&(c(t),t[0]&&N(t[0])&&p(t[0].locale(n))),v.current=t;},[t,n]);let m=I=>{d(I.currentTarget);},y=()=>{d(null),f("start"),h(null);},x=!!l,k=I=>{if(!I)return;let P=[...s];if(g==="start")P=[I,null],f("end");else {let M=P[0];M&&I.isBefore(M)?(P=[I,null],f("end")):(P=[M,I],f("start"));}c(P);},F=I=>{let P=Ua().locale(n),M=[null,null];switch(I){case "today":M=[P,P];break;case "week":M=[P.startOf("week"),P.endOf("week")];break;case "month":M=[P.startOf("month"),P.endOf("month")];break}c(M),f("start"),p(P);},S=()=>{c([null,null]),f("start"),p(Ua().locale(n));},T=()=>{o&&o(s),y();},A=()=>{c(t),f("start"),y();},R=useCallback(I=>{let{day:P,...M}=I,[$,N]=s,X=$?P.isSame($,"day"):false,oe=N?P.isSame(N,"day"):false,te=$&&N?P.isBetween($,N,"day","()"):false,re=false;return g==="end"&&$&&!N&&u&&P.isAfter($,"day")&&P.isBefore(u.add(1,"day"),"day")&&(re=true),jsx(Ny,{...M,day:P,disableMargin:true,isStart:X,isEnd:oe,isInRange:te||re,onMouseEnter:()=>h(P)})},[s,g,u]),C=I=>I?I.locale(n).format("YYYY-MM-DD"):"",D=I=>I?I.locale(n).format("ll"):"";return jsxs(Box,{children:[jsx(TextField,{label:i,value:s[0]?`${C(s[0])} - ${C(s[1])}`:"",onClick:m,fullWidth:true,size:"small",InputLabelProps:{sx:{fontSize:Vl}},InputProps:{readOnly:true,sx:{fontSize:Vl,"& .MuiOutlinedInput-input":{fontSize:Vl},paddingRight:"4px"},endAdornment:jsxs(InputAdornment,{position:"end",sx:{ml:0},children:[(s[0]||s[1])&&jsx(IconButton,{size:"small",onClick:I=>{I.stopPropagation(),S();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsx(Ay,{sx:{fontSize:"1rem"}})}),jsx(IconButton,{size:"small",edge:"end",onClick:m,sx:{padding:"2px"},children:jsx(My,{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]?D(s[0]):a("dateRange.select")})]}),jsx(By,{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]?D(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:()=>F("today"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisWeek"),onClick:()=>F("week"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisMonth"),onClick:()=>F("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsx(LocalizationProvider,{dateAdapter:AdapterDayjs,adapterLocale:n,children:jsx(DateCalendar,{value:null,referenceDate:w,onMonthChange:p,onYearChange:p,onChange:k,slots:{day:R},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:A,color:"inherit",children:a("common.cancel")}),jsx(Button,{size:"small",variant:"contained",onClick:T,children:a("common.done")})]})]})]})};var Qi={equals:"=",contains:"\u2287",notContains:"\u2285",wildcard:"*","=":"=","!=":"!=",">":">","<":"<",">=":"\u2265","<=":"\u2264",between:"\u2194"},Zy={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"},jy=["equals","contains","notContains","wildcard"],fp=["=","!=",">","<",">=","<=","between"],rt="0.85rem",Xy=({field:e,value:t,onChange:o})=>{let{t:a}=Z(),[r,n]=useState(null),[i,l]=useState(null),[d,s]=useState(""),[c,g]=useState(""),[f,u]=useState(false),[h,w]=useState(""),[p,v]=useState("");useEffect(()=>{let C=setTimeout(()=>{v(h);},1e3);return ()=>clearTimeout(C)},[h]);let m=t?.operator||(e.type==="number"?"=":"equals"),y=t?.value,x=C=>{let D=Zy[C];return D?a(D):C},k=C=>{n(C.currentTarget);},F=C=>{o({...t,operator:C,value:y}),n(null);},S={size:"small",fullWidth:true,variant:"outlined",InputLabelProps:{sx:{fontSize:rt}},InputProps:{sx:{fontSize:rt}},SelectProps:{MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:rt,paddingTop:"4px",paddingBottom:"4px",minHeight:"auto"}}}}}},T=e.type||"text";if(T==="date"){let D=(I=>{if(!I)return [null,null];if(Array.isArray(I)&&I.length===2){let P=I[0]?Ua.isDayjs(I[0])?I[0]:Ua(I[0]):null,M=I[1]?Ua.isDayjs(I[1])?I[1]:Ua(I[1]):null;return [P,M]}return Ua.isDayjs(I)||typeof I=="string"?[Ua.isDayjs(I)?I:Ua(I),null]:[null,null]})(y);return jsx(up,{label:e.label,value:D,onChange:I=>o({value:I,operator:"between"})})}if(T==="number"&&m==="between"){let C=()=>{o({value:[d,c],operator:"between"}),l(null);},D=Array.isArray(y)?`${y[0]||""} - ${y[1]||""}`:"";return jsxs(Fragment,{children:[jsx(TextField,{...S,label:e.label,value:D,placeholder:a("smartFilter.minMaxPlaceholder"),InputProps:{...S.InputProps,startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:x("between"),children:jsx(IconButton,{size:"small",onClick:k,sx:{width:24,height:24,fontSize:rt},children:Qi.between})})}),readOnly:true},onClick:I=>l(I.currentTarget)}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:rt,minHeight:"auto",py:.5}}},children:fp.map(I=>jsxs(MenuItem,{selected:I===m,onClick:()=>F(I),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Qi[I]}),jsx(ListItemText,{primary:x(I),primaryTypographyProps:{fontSize:rt}})]},I))}),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:d,onChange:I=>s(I.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:rt}},InputProps:{sx:{fontSize:rt}}}),jsx(_y,{color:"action"}),jsx(TextField,{size:"small",label:a("smartFilter.max"),type:"number",value:c,onChange:I=>g(I.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:rt}},InputProps:{sx:{fontSize:rt}}}),jsx(Button,{variant:"contained",size:"small",onClick:C,children:a("common.ok")})]})})]})}if(T==="select")return jsxs(TextField,{...S,select:true,label:e.label,value:y||"",onChange:C=>o({...t,value:C.target.value,operator:"equals"}),children:[jsx(MenuItem,{value:"",children:jsx("em",{children:a("common.none")})}),e.options?.map(C=>jsx(MenuItem,{value:C.value,children:C.label},C.value))]});if(T==="multi-select"){let C=Array.isArray(y)?y:[],D=e.options?.filter(I=>I.label.toLowerCase().includes(p.toLowerCase()))||[];return jsxs(TextField,{...S,select:true,label:e.label,value:C,onChange:I=>o({...t,value:I.target.value,operator:"anyOf"}),SelectProps:{...S.SelectProps,multiple:true,onClose:()=>{w(""),v("");},renderValue:I=>{if(!Array.isArray(I)||I.length===0)return jsx("em",{children:a("common.none")});let P=$=>e.options?.find(N=>N.value===$)?.label||$,M=I.map(P);return M.length>2?`${M.slice(0,2).join(", ")} +${M.length-2}`:M.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(gp,{fontSize:"small"})}),sx:{fontSize:rt}},value:h,onChange:I=>w(I.target.value),onKeyDown:I=>{I.key!=="Escape"&&I.stopPropagation();},onClick:I=>I.stopPropagation()})}),D.length>0?D.map(I=>jsxs(MenuItem,{value:I.value,children:[jsx(Checkbox,{checked:C.indexOf(I.value)>-1,size:"small"}),jsx(ListItemText,{primary:I.label,primaryTypographyProps:{fontSize:rt}})]},I.value)):jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:a("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:rt}})})]})}let A=T==="number"?fp:jy,R=f||y!==void 0&&y!==""&&y!==null||!!r;return jsxs(Fragment,{children:[jsx(TextField,{...S,label:e.label,sx:{minWidth:"120px"},value:y||"",type:T==="number"?"number":"text",onChange:C=>o({...t,value:C.target.value,operator:m}),onFocus:()=>u(true),onBlur:()=>u(false),InputProps:{...S.InputProps,startAdornment:R?jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:x(m),children:jsx(IconButton,{size:"small",onClick:k,onMouseDown:C=>C.preventDefault(),sx:{width:24,height:24,fontSize:rt,fontWeight:"bold",color:"primary.main",bgcolor:"action.hover"},children:Qi[m]})})}):null,endAdornment:e.hasSearchIcon?jsx(InputAdornment,{position:"end",children:jsx(gp,{color:"action"})}):void 0}}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:rt,minHeight:"auto",py:.5}}},children:A.map(C=>jsxs(MenuItem,{selected:C===m,onClick:()=>F(C),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Qi[C]}),jsx(ListItemText,{primary:x(C),primaryTypographyProps:{fontSize:rt}})]},C))})]})},cr=({fields:e,filters:t,onFilterChange:o,variants:a=[],currentVariantId:r,onVariantLoad:n,onVariantSave:i,onVariantDelete:l,onVariantSetDefault:d,onSearch:s,loading:c=false,appId:g,tableKey:f,currentLayout:u,currentLayoutId:h,layoutRefs:w,variantService:p,serviceUrl:v})=>{let{t:m}=Z(),[y,x]=useState(true),[k,F]=useState(null),[S,T]=useState(e.filter(D=>!D.hidden).map(D=>D.id)),A=(D,I)=>{o({...t,[D]:I});},R=D=>{S.includes(D)?T(S.filter(I=>I!==D)):T([...S,D]);};return jsxs(Paper,{sx:{mb:0,display:"flex",flexDirection:"column",overflow:"visible",position:"relative"},children:[jsxs(Box,{sx:{p:2,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[g?jsx(cp,{appId:g,tableKey:f,currentFilters:{values:t,visibleFields:S},currentLayout:u,currentLayoutId:h,layoutRefs:w,onLoad:D=>{if(!D.filters)return;let I=null;if(Array.isArray(D.filters)){let P=f||"default",M=D.filters.find($=>$.scope===P);I=M?M.filters:null;}else I=D.filters;I&&(I.values||I.visibleFields?(I.visibleFields&&Array.isArray(I.visibleFields)&&T(I.visibleFields),I.values&&o(I.values)):o(I)),n&&n(D);},variantService:p,serviceUrl:v,currentVariantId:r}):jsx(_i,{variants:a,currentVariantId:r,onLoad:n,onSave:D=>{i&&i({...D,filters:{values:t,visibleFields:S}});},onDelete:l,onSetDefault:d}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:m("smartFilter.addFilters"),children:jsx(Button,{onClick:D=>F(D.currentTarget),size:"small",color:"primary",startIcon:jsx(Uy,{fontSize:"small"}),sx:{textTransform:"none",fontSize:rt,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:rt},children:m(c?"common.loading":"smartFilter.go")}),jsxs(Menu,{anchorEl:k,open:!!k,onClose:()=>F(null),slotProps:{paper:{style:{maxHeight:400,width:"25ch"},sx:{"& .MuiMenuItem-root":{fontSize:rt,minHeight:32}}}},children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:m("smartFilter.visibleFilters"),primaryTypographyProps:{fontSize:rt}})}),jsx(Divider,{}),e.map(D=>jsxs(MenuItem,{onClick:()=>R(D.id),children:[jsx(Checkbox,{checked:S.includes(D.id),size:"small"}),jsx(ListItemText,{primary:D.label,primaryTypographyProps:{fontSize:rt}})]},D.id))]})]})]}),jsx(Collapse,{in:y,children:jsx(Box,{sx:{px:2,pb:2},children:jsx(Grid,{container:true,spacing:2,columns:{xs:2,sm:3,md:4,lg:6},children:e.filter(D=>S.includes(D.id)).map(D=>jsx(Grid,{size:1,children:jsx(Xy,{field:D,value:t[D.id]||{value:"",operator:D.type==="number"?"=":"equals"},onChange:I=>A(D.id,I)})},D.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(Ky,{sx:{fontSize:16},color:"action"}):jsx(Xf,{sx:{fontSize:16},color:"action"})})})]})};var Sp=({layouts:e,currentLayoutId:t,onLoad:o,onSave:a,onDelete:r,onSetDefault:n})=>{let{t:i}=Z(),[l,d]=useState(null),[s,c]=useState(false),[g,f]=useState(""),[u,h]=useState(""),[w,p]=useState({isDefault:false,isPublic:false}),v=e.find(S=>S.id===t),m=S=>{d(S.currentTarget);},y=()=>{d(null);},x=S=>{o(S),y();},k=()=>{f(""),h(""),p({isDefault:false,isPublic:false}),c(true),y();},F=()=>{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:k,color:"primary",size:"small",children:jsx(kp,{})})}),jsx(Tooltip,{title:i("layout.layoutOptions"),children:jsx(IconButton,{onClick:m,color:v?"primary":"default",children:jsx(lb,{})})}),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:k,children:[jsx(ListItemIcon,{children:jsx(kp,{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((S,T)=>jsx(MenuItem,{onClick:()=>x(S),selected:S.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:S.id===t?"bold":"normal",noWrap:true,children:S.name})}),S.description&&jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:S.description})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center"},onClick:A=>A.stopPropagation(),children:[jsx(Tooltip,{title:S.isDefault?i("layout.removeDefault"):i("layout.setAsDefault"),children:jsx(IconButton,{size:"small",onClick:A=>{A.stopPropagation(),n(S.id);},children:S.isDefault?jsx(fy,{fontSize:"small",color:"warning"}):jsx(sb,{fontSize:"small"})})}),jsx(Tooltip,{title:i("common.delete"),children:jsx(IconButton,{size:"small",color:"error",onClick:A=>{A.stopPropagation(),r(S.id);},children:jsx(Af,{fontSize:"small"})})})]})]})},S.id||T))]}),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:S=>f(S.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:i("layout.layoutNameHelper")}),e.some(S=>S.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:S=>h(S.target.value),fullWidth:true,size:"small"}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:w.isDefault,onChange:S=>p({...w,isDefault:S.target.checked})}),label:i("layout.useAsDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:w.isPublic,onChange:S=>p({...w,isPublic:S.target.checked})}),label:i("layout.publicAllUsers")})]})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>c(false),children:i("common.cancel")}),jsx(Button,{onClick:F,variant:"contained",disabled:!g,children:i("common.save")})]})]})]})};var ts=({appId:e,tableKey:t="default",currentLayoutData:o,onLayoutLoad:a,targetLayoutId:r,activeLayoutId:n,serviceUrl:i,onError:l,onSuccess:d})=>{let{t:s}=Z(),[c,g]=useState([]),[f,u]=useState(""),h=`orbcafe.layouts.${e}.${t}`,w=T=>({id:T.layoutId,name:T.name,description:T.description??"",isDefault:!!T.isDefault,isPublic:!!T.isPublic,createdAt:T.createdAt??new Date().toISOString(),layoutData:T.layout??{}}),p=T=>({appId:e,tableKey:t,layoutId:T.id,name:T.name,description:T.description??"",isDefault:!!T.isDefault,isPublic:!!T.isPublic,createdAt:T.createdAt,layout:T.layoutData}),v=useCallback(()=>{try{let T=localStorage.getItem(h);if(!T)return [];let A=JSON.parse(T);return Array.isArray(A)?A:[]}catch{return []}},[h]),m=useCallback(T=>{try{localStorage.setItem(h,JSON.stringify(T));}catch{}},[h]);useEffect(()=>{n!==void 0&&u(n);},[n]),useEffect(()=>{if(r&&c.length>0){let T=c.find(A=>A.id===r);T&&(u(T.id),a(T));}},[r,c,a]);let y=useCallback(async()=>{if(e){if(!i){let T=v();g(T);let A=T.find(R=>R.isDefault);A&&!f&&!r&&(u(A.id),a(A));return}try{let T=await fetch(`${i}/api/layouts?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!T.ok)throw new Error("LAYOUT_FETCH_FAILED");let R=(await T.json()).map(w);g(R);let C=R.find(D=>D.isDefault);C&&!f&&!r&&(u(C.id),a(C));}catch(T){console.error("Error fetching layouts",T);let A=v();g(A);let R=A.find(C=>C.isDefault);R&&!f&&!r&&(u(R.id),a(R)),l&&l(s("layout.toast.loadFallback"));}}},[e,t,i,l,f,a,r,v,s]);return useEffect(()=>{y();},[e,t]),jsx(Sp,{layouts:c,currentLayoutId:f,onLoad:T=>{u(T.id),a(T);},onSave:async T=>{let A=c.find(D=>D.name===T.name),R=A?A.id:Date.now().toString(),C={id:R,...T,createdAt:new Date().toISOString(),layoutData:o,isDefault:T.isDefault??false,isPublic:T.isPublic??false};if(!i){let I=c.some(P=>P.id===R)?c.map(P=>P.id===R?C:P):[...c,C];g(I),m(I),u(R),a(C),d&&d(s("layout.toast.saveLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(p(C))})).ok)throw new Error("LAYOUT_SAVE_FAILED");d&&d(s("layout.toast.saveSuccess")),await y(),u(R),a(C);}catch(D){console.error("Error saving layout",D);let P=c.some(M=>M.id===R)?c.map(M=>M.id===R?C:M):[...c,C];g(P),m(P),u(R),a(C),d&&d(s("layout.toast.saveLocalSuccess")),l&&l(s("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async T=>{if(!i){let A=c.filter(R=>R.id!==T);g(A),m(A),f===T&&u(""),d&&d(s("layout.toast.deleteLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts/${encodeURIComponent(T)}`,{method:"DELETE"})).ok)throw new Error("LAYOUT_DELETE_FAILED");f===T&&u(""),d&&d(s("layout.toast.deleteSuccess")),await y();}catch(A){console.error("Error deleting layout",A);let R=c.filter(C=>C.id!==T);g(R),m(R),f===T&&u(""),d&&d(s("layout.toast.deleteLocalSuccess")),l&&l(s("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async T=>{if(!i){let A=c.map(R=>({...R,isDefault:R.id===T}));g(A),m(A),d&&d(s("layout.toast.defaultLocalSuccess"));return}try{let A=c.find(C=>C.id===T);if(!A)return;if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(p({...A,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");d&&d(s("layout.toast.defaultSuccess")),await y();}catch(A){console.error("Error setting default",A);let R=c.map(C=>({...C,isDefault:C.id===T}));g(R),m(R),d&&d(s("layout.toast.defaultLocalSuccess")),l&&l(s("layout.toast.backendUnavailableDefaultLocal"));}}})};var Tp=(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},os=(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 Ip(e,t,o){return t[o]<e[o]?-1:t[o]>e[o]?1:0}function db(e,t){return e==="desc"?(o,a)=>Ip(o,a,t):(o,a)=>-Ip(o,a,t)}function pb(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(V=>{let K=String(V?.label??V?.id??"").length*9+64,be=typeof V?.minWidth=="number"?V.minWidth:0;return Math.max(100,be,K)},[]),o=useCallback(()=>(e.columns||[]).filter(V=>!!V?.numeric).map(V=>V.id),[e.columns]),[a,r]=useState(""),[n,i]=useState(e.order||"asc"),[l,d]=useState(e.orderBy||""),[s,c]=useState(e.page||0),[g,f]=useState(e.rowsPerPage||20),[u,h]=useState(e.selected||[]),[w,p]=useState(e.columns?e.columns.map(V=>V.id):[]),[v,m]=useState(e.showSummary||false),[y,x]=useState(()=>o()),[k,F]=useState([]),[S,T]=useState(new Set),[A,R]=useState(()=>{let V={};return (e.columns||[]).forEach(O=>{V[O.id]=t(O);}),V}),[C,D]=useState(null),[I,P]=useState(null),[M,$]=useState(null),[N,X]=useState(null),[oe,te]=useState(false),[re,Q]=useState(""),[U,Y]=useState("");useEffect(()=>{e.layout&&Me(e.layout);},[e.layout]),useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&d(e.orderBy);},[e.order,e.orderBy]),useEffect(()=>{e.selected!==void 0&&h(e.selected);},[e.selected]),useEffect(()=>{e.page!==void 0&&c(e.page);},[e.page]),useEffect(()=>{e.rowsPerPage!==void 0&&f(e.rowsPerPage);},[e.rowsPerPage]),useEffect(()=>{let V=o();x(O=>O.filter(be=>V.includes(be)));},[o]),useEffect(()=>{R(V=>{let O={...V};return (e.columns||[]).forEach(K=>{O[K.id]===void 0&&(O[K.id]=t(K));}),O});},[e.columns,t]);let Re=useMemo(()=>{let V=e.rows||[];return a&&(V=V.filter(O=>Object.keys(O).some(K=>String(O[K]).toLowerCase().includes(a.toLowerCase())))),V},[e.rows,a]),j=useMemo(()=>e.onSortChange||!l?Re:pb(Re,db(n,l)),[Re,n,l,e.onSortChange]),fe=useCallback(V=>{if(k.length===0)return V.map(Be=>({type:"row",data:Be,id:Be[e.rowKey||"id"]}));let O=[...V].sort((Be,me)=>{for(let Le of k){if(Be[Le]<me[Le])return -1;if(Be[Le]>me[Le])return 1}return 0}),K=(Be,me=0)=>{if(me>=k.length)return Be;let Le=k[me],we={},ze=[];return Be.forEach(Ae=>{let ke=Ae[Le],De=`${Le}:${ke}`;we[De]||(we[De]={key:De,field:Le,value:ke,children:[],count:0,level:me},ze.push(we[De])),we[De].children.push(Ae),we[De].count++;}),ze.forEach(Ae=>{Ae.children&&(Ae.children=K(Ae.children,me+1));}),ze},be=K(O),Ce=(Be,me="")=>{let Le=[];return Be.forEach(we=>{if(we.children){let ze=me?`${me}>${we.key}`:we.key,Ae=S.has(ze);Le.push({type:"group",id:ze,field:we.field,value:we.value,level:we.level,count:we.count,isExpanded:Ae,childIds:(function ke(De){let Nt=[];return De.children.forEach(To=>{To.children?Nt=Nt.concat(ke(To)):Nt.push(To[e.rowKey||"id"]);}),Nt})(we)}),Ae&&(Le=Le.concat(Ce(we.children,ze)));}else Le.push({type:"row",data:we,id:we[e.rowKey||"id"],level:k.length});}),Le};return Ce(be)},[k,S,e.rowKey]),Se=useCallback(V=>{if(k.length===0)return [];let O=[...V].sort((Ce,Be)=>{for(let me of k){if(Ce[me]<Be[me])return -1;if(Ce[me]>Be[me])return 1}return 0}),K=[],be=(Ce,Be,me)=>{if(Be>=k.length)return;let Le=k[Be],we=new Map;Ce.forEach(ze=>{let Ae=ze[Le],ke=we.get(Ae);ke?ke.push(ze):we.set(Ae,[ze]);}),we.forEach((ze,Ae)=>{let ke=`${Le}:${Ae}`,De=me?`${me}>${ke}`:ke;K.push(De),be(ze,Be+1,De);});};return be(O,0,""),K},[k]),Ne=useMemo(()=>fe(j),[j,fe]),Ke=useMemo(()=>Se(j),[j,Se]),ve=useMemo(()=>{let V=(e.rows||[]).length;return typeof e.count=="number"&&e.count>V},[e.count,e.rows]),Fe=useMemo(()=>ve?Ne:g>0?Ne.slice(s*g,s*g+g):Ne,[Ne,s,g,ve]),xo=useMemo(()=>ve&&typeof e.count=="number"?e.count:Ne.length,[Ne.length,ve,e.count]),jt=V=>{T(O=>{let K=new Set(O);return K.has(V)?K.delete(V):K.add(V),K});},Qe=V=>{let O=Ke.filter(K=>K===V||K.startsWith(`${V}>`));T(K=>{let be=new Set(K);return O.forEach(Ce=>be.add(Ce)),be});},Mt=V=>{T(O=>{let K=new Set(O);return Array.from(K).forEach(be=>{(be===V||be.startsWith(`${V}>`))&&K.delete(be);}),K});},Lt=V=>{if(!V){T(new Set);return}T(new Set(Ke));},bt=V=>{let O=Ke.filter(K=>K.startsWith(`${V}>`));return O.length===0?S.has(V):S.has(V)&&O.every(K=>S.has(K))},H=V=>{let O=l===V&&n==="asc",K=l===V&&n==="desc";if(e.onSortChange){O?e.onSortChange(V,"desc"):K?e.onSortChange("","asc"):e.onSortChange(V,"asc");return}O?(i("desc"),d(V)):K?(i("asc"),d("")):(i("asc"),d(V));},he=(V,O)=>{R(K=>({...K,[V]:O}));},pe=V=>{if(V.target.checked){let O=Re.map(K=>K[e.rowKey||"id"]);h(O),e.onSelectionChange&&e.onSelectionChange(O);return}h([]),e.onSelectionChange&&e.onSelectionChange([]);},ye=(V,O)=>{let K=O[e.rowKey||"id"],be=u.indexOf(K),Ce=[];be===-1?Ce=Ce.concat(u,K):be===0?Ce=Ce.concat(u.slice(1)):be===u.length-1?Ce=Ce.concat(u.slice(0,-1)):be>0&&(Ce=Ce.concat(u.slice(0,be),u.slice(be+1))),h(Ce),e.onSelectionChange&&e.onSelectionChange(Ce);},Xe=V=>{c(V),e.onPageChange&&e.onPageChange(V);},Ve=V=>{f(V),c(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(V);},co=V=>{let O=w.indexOf(V),K=[...w];O===-1?K.push(V):K.splice(O,1),p(K);},vo=V=>{let O=k.indexOf(V),K=[...k];O===-1?K.push(V):K.splice(O,1),F(K);},Co=V=>{o().includes(V)&&x(K=>K.includes(V)?K.filter(be=>be!==V):[...K,V]);},ko=V=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:w,order:n,orderBy:l,grouping:k,columnWidths:A,showSummary:v,summaryColumns:y});},So=V=>{let{layout:O,layoutId:K}=os(V,e.tableKey||"default");K?(Y(K),Q(K)):(Y(""),Q("")),O&&(O.visibleColumns&&p(O.visibleColumns),O.order&&i(O.order),O.orderBy&&d(O.orderBy),O.grouping&&F(O.grouping),O.columnWidths&&R(O.columnWidths),O.showSummary!==void 0&&m(!!O.showSummary),Array.isArray(O.summaryColumns)&&x(O.summaryColumns));},Me=V=>{let O=V?.layoutData||V?.layout||V||{};O.visibleColumns&&p(O.visibleColumns),O.order&&i(O.order),O.orderBy!==void 0&&d(O.orderBy),O.grouping&&F(O.grouping),O.columnWidths&&R(O.columnWidths),O.showSummary!==void 0&&m(!!O.showSummary),Array.isArray(O.summaryColumns)&&x(O.summaryColumns),T(new Set),c(0),V?.id&&Q(V.id),Y("");};useEffect(()=>{e.layout&&So({layout:e.layout});},[e.layout]);let ge=V=>{V.preventDefault(),X(N===null?{mouseX:V.clientX+2,mouseY:V.clientY-6}:null);},xt=()=>{X(null);},Ee=useMemo(()=>{if(!v)return {};let V={};e.columns.forEach(K=>{if(K.numeric&&y.includes(K.id)){let be=Re.reduce((Ce,Be)=>{let me=parseFloat(Be[K.id]);return Ce+(isNaN(me)?0:me)},0);V[K.id]=be.toFixed(2);}else V[K.id]="";});let O=e.columns.find(K=>w.includes(K.id));return O&&!O.numeric&&(V[O.id]="Total"),V},[Re,e.columns,v,y,w]),zt=()=>{if(!e.columns||!Re)return;let V=e.columns.map(Be=>Be.label).join(","),O=Re.map(Be=>e.columns.map(me=>{let Le=Be[me.id];return `"${(Le==null?"":String(Le)).replace(/"/g,'""')}"`}).join(",")).join(`
|
|
1
|
+
import {a}from'./chunk-74Z76O3S.mjs';export{b as COrbCanvas}from'./chunk-74Z76O3S.mjs';import*as gt from'react';import gt__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 Ap from'@mui/material/Dialog';import Bp from'@mui/material/DialogTitle';import Fp from'@mui/material/DialogContent';import cf from'@mui/material/DialogContentText';import Ep from'@mui/material/DialogActions';import Hn from'@mui/material/Box';import uf from'@mui/icons-material/CheckCircle';import mf from'@mui/icons-material/Warning';import gf from'@mui/icons-material/Error';import ff 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 hb from'@mui/material/Paper';import yb from'@mui/material/Table';import bb from'@mui/material/TableBody';import wl from'@mui/material/TableCell';import Np from'@mui/material/TableContainer';import $f from'@mui/material/TableHead';import Hf from'@mui/material/TableRow';import Lp from'@mui/material/TextField';import ns from'@mui/material/Button';import zp 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 bp from'@mui/icons-material/Search';import Pf from'@mui/icons-material/ViewColumn';import Ip from'@mui/icons-material/Save';import Df from'@mui/icons-material/Download';import Mf from'@mui/icons-material/AccountTree';import Af from'@mui/icons-material/Functions';import Bf from'@mui/icons-material/Insights';import Ff from'@mui/icons-material/Add';import Ef from'@mui/icons-material/Edit';import Lf from'@mui/icons-material/Delete';import zf from'@mui/icons-material/KeyboardArrowLeft';import Nf from'@mui/icons-material/KeyboardArrowRight';import Gf from'@mui/material/Checkbox';import Uf from'@mui/material/TableSortLabel';import Kf from'@mui/material/IconButton';import qf from'@mui/material/Tooltip';import _f from'@mui/icons-material/UnfoldMore';import jf from'@mui/icons-material/UnfoldLess';import eh from'@mui/icons-material/KeyboardArrowDown';import gh from'@mui/icons-material/Check';import fh from'@mui/icons-material/ClearAll';import Hh from'@mui/icons-material/Close';import Xh from'@mui/icons-material/MicNoneOutlined';import Qh from'@mui/icons-material/SettingsOutlined';import Yh from'@mui/icons-material/SendOutlined';import jy from'@mui/icons-material/Settings';import Zy from'@mui/icons-material/KeyboardArrowUp';import Qy from'@mui/icons-material/ArrowRightAlt';import xy 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 Ey from'@mui/icons-material/CalendarMonth';import Ly from'@mui/icons-material/Clear';import zy from'@mui/icons-material/ArrowForward';import Ka from'dayjs';import Ny from'dayjs/plugin/isBetween';import Vy 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 pb from'@mui/icons-material/StarBorder';import ub from'@mui/icons-material/ViewQuilt';import Ex from'@mui/icons-material/CloseOutlined';import Eb from'@mui/icons-material/ContentCopyOutlined';import Lb from'@mui/icons-material/CheckOutlined';import dx 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 fu from'@mui/icons-material/Language';import x0 from'@mui/icons-material/DesktopWindows';import v0 from'@mui/icons-material/DarkMode';import C0 from'@mui/icons-material/LightMode';import S0 from'@mui/icons-material/Logout';import Vv from'@mui/icons-material/DeleteOutline';import q0 from'@mui/icons-material/DragIndicator';import dv from'@mui/icons-material/FilterList';import pv from'@mui/icons-material/TableRows';import Q0 from'@mui/icons-material/LayersClear';import cC from'@mui/icons-material/CameraAltRounded';import dC from'@mui/icons-material/QrCodeScannerRounded';import gC from'@mui/icons-material/DragIndicatorRounded';import bC from'@mui/icons-material/BackspaceRounded';import xC from'@mui/icons-material/CloseRounded';import vC from'@mui/icons-material/CheckRounded';import LC from'@mui/icons-material/SearchRounded';import zC from'@mui/icons-material/MenuOpenRounded';import NC from'@mui/icons-material/MenuRounded';import VC from'@mui/icons-material/ExpandMoreRounded';import OC from'@mui/icons-material/ChevronRightRounded';import nk from'next/dynamic';import {AnimatePresence,motion}from'framer-motion';import xS from'react-markdown';import vS from'remark-gfm';import CS from'remark-math';import kS from'rehype-katex';import SS 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 $m from'mermaid';import ES from'@mui/icons-material/MicRounded';import LS from'@mui/icons-material/MicOffRounded';import {InsertDriveFile,Close,Stop}from'@mui/icons-material';import WS from'@mui/icons-material/SendRounded';import $S from'@mui/icons-material/AddRounded';import HS from'@mui/icons-material/HardwareRounded';import pw from'@mui/icons-material/LockOutlined';import hg from'@mui/icons-material/MailOutline';import yg from'@mui/icons-material/PersonOutline';import uw from'@mui/icons-material/VpnKeyOutlined';import Vw from'@mui/icons-material/CalendarMonthOutlined';import Hw from'@mui/icons-material/KeyboardDoubleArrowLeftOutlined';import Gw from'@mui/icons-material/KeyboardDoubleArrowRightOutlined';import Uw from'@mui/icons-material/SplitscreenOutlined';import Kw from'@mui/icons-material/Sort';function ho(...e){return twMerge(clsx(e))}var gl={primary:"#000000",primaryHover:"#333333"},vi={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"},wn={none:"rounded-none",sm:"rounded-sm",md:"rounded-md",full:"rounded-full"},pd=()=>"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 zg=cva(pd(),{variants:{variant:{default:`${vi.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:`${vi.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:vi.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:wn.none,sm:wn.sm,md:wn.md,full:wn.full}},defaultVariants:{variant:"default",size:"default",rounded:"md"}}),fl=gt.forwardRef(({className:e,variant:t,size:o,asChild:a=false,...r},n)=>jsx(a?Slot:"button",{className:ho(zg({variant:t,size:o,className:e})),ref:n,...r}));fl.displayName="Button";var Vg={"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"},Og={"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"},Wg={"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"},$g={"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"},Hg={"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"},Gg={"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"},Tn={en:Vg,zh:Og,fr:Wg,de:$g,ja:Hg,ko:Gg};var md=(e,t)=>t?e.replace(/\{(\w+)\}/g,(o,a)=>{let r=t[a];return r==null?"":String(r)}):e,_g={locale:"en",t:(e,t)=>md(Tn.en[e]||e,t)},gd=createContext(_g),Ci=({locale:e="en",messages:t,children:o})=>{let a=useMemo(()=>{let r=Tn[e]||Tn.en,n=t?.[e]||{},i={...Tn.en,...r,...n};return {locale:e,t:(l,d)=>md(i[l]||l,d)}},[e,t]);return jsx(gd.Provider,{value:a,children:o})},j=()=>useContext(gd);function yl({items:e,onItemClick:t,className:o="",level:a=0,expandedIds:r,onToggleExpand:n,colorMode:i="light"}){let{t:l}=j(),d=i==="dark",s=usePathname(),[c,g]=useState(false),[f,p]=useState(new Set),h=r!==void 0&&n!==void 0,k=h?r:f;useEffect(()=>{g(true);},[]);let u=m=>{if(h)n(m);else {let y=new Set(f);y.has(m)?y.delete(m):y.add(m),p(y);}},C=m=>{m.children&&m.children.length>0&&u(m.id),t&&t(m);};return !e||!Array.isArray(e)?jsx("div",{className:ho("tree-menu",o),children:jsx("div",{className:"text-sm text-gray-500 p-2",children:l("navigation.noItems")})}):jsx("div",{className:ho("tree-menu",o),children:e.map(m=>{let y=k.has(m.id)||m.isExpanded,x=m.children&&m.children.length>0,S=m.appurl||m.href,F=c&&S?s===S:false;return jsxs("div",{className:"tree-menu-item relative",children:[F&&jsx("div",{className:ho("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",d?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxs(fl,{variant:"ghost",className:ho("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${a*4}`,F?d?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":d?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>C(m),children:[x&&jsx("div",{className:ho("flex-shrink-0 transition-transform duration-200",y&&"rotate-90",F?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:jsx(ChevronRight,{className:"h-4 w-4"})}),!x&&jsx("div",{className:"w-4 h-4 flex-shrink-0"}),m.icon&&jsx("div",{className:ho("flex-shrink-0 transition-colors duration-200",F?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:m.icon}),jsxs("div",{className:"flex-1 text-left overflow-hidden z-10",children:[jsx("div",{className:ho("text-sm truncate transition-colors duration-200",F?"font-semibold":"font-medium"),children:m.title||m.label}),m.description&&jsx("div",{className:ho("text-xs truncate transition-colors duration-200",F?d?"text-[#90caf9]/70":"text-[#1976d2]/75":d?"text-gray-400":"text-gray-500"),title:m.description,children:m.description})]})]}),x&&jsx("div",{className:ho("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 vd=({collapsed:e,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light"})=>{let{t:i}=j(),l=n==="dark",d=useRouter(),[s,c]=useState(""),[g,f]=useState(new Set);useEffect(()=>{e&&f(new Set);},[e]);let p=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()),F=x.children?C(x.children):[];return (S||F.length>0)&&y.push({...x,children:F.length>0?F:x.children}),y},[]);return C(r)},[s,r]),k=useMemo(()=>s.trim()?new Set(p(r)):g,[s,r,g,p]),u=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{d.push("/chat?new=true");}catch(y){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",y),d.push("/chat");}return}let m=C.appurl||C.href;m&&(m.startsWith("http://")||m.startsWith("https://")?window.open(m,"_blank"):d.push(m));},[d]);return jsxs("div",{className:`flex flex-col backdrop-blur-xl border shadow-[0_4px_8px_0_rgba(31,38,135,0.1)] ${e?"w-14 rounded-full":"w-[234px] rounded-2xl"} relative ${o} ${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:u,className:"space-y-1",expandedIds:k,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 kd=(e={})=>{let{initialCollapsed:t=false,content:o=[]}=e,[a,r]=useState(t),[n,i]=useState(o),l=useCallback(()=>{r(s=>!s);},[]),d=useMemo(()=>({collapsed:a,onToggle:l,menuData:n}),[a,l,n]);return {collapsed:a,setCollapsed:r,toggleCollapsed:l,menuData:n,setMenuData:i,navigationIslandProps:d}};var Do=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);}},ra=new xl,_1={success:(e,t)=>ra.show("success",e,t),error:(e,t)=>ra.show("error",e,t),warning:(e,t)=>ra.show("warning",e,t),info:(e,t)=>ra.show("info",e,t),show:(e,t,o)=>ra.show(e,t,o),hide:()=>ra.hide()};var hf={success:{icon:jsx(uf,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsx(mf,{sx:{fontSize:40}}),color:"#fff3e0",iconColor:"#ffa726",borderColor:"#ffcc80"},error:{icon:jsx(gf,{sx:{fontSize:40}}),color:"#ffebee",iconColor:"#ef5350",borderColor:"#ef9a9a"},info:{icon:jsx(ff,{sx:{fontSize:40}}),color:"#e3f2fd",iconColor:"#42a5f5",borderColor:"#90caf9"},default:{icon:null,color:"transparent",iconColor:"inherit",borderColor:"transparent"}},In=({open:e,title:t,message:o,onClose:a,onConfirm:r,confirmText:n,cancelText:i,showCancel:l=true,maxWidth:d="xs",type:s="default"})=>{let{t:c}=j(),g=n||c("messageBox.confirm"),f=i||c("messageBox.cancel"),p=()=>{r?r():a();},h=hf[s],k=s!=="default";return jsxs(Ap,{open:e,onClose:a,maxWidth:d,fullWidth:true,PaperProps:{sx:{borderRadius:3,...k&&{borderTop:`6px solid ${h.iconColor}`}}},children:[k&&jsx(Hn,{sx:{display:"flex",justifyContent:"center",pt:3,color:h.iconColor},children:h.icon}),t&&jsx(Bp,{sx:{textAlign:k?"center":"left",pt:k?1:2},children:t}),jsx(Fp,{sx:{textAlign:k?"center":"left"},children:typeof o=="string"?jsx(cf,{children:o}):o}),jsxs(Ep,{sx:{justifyContent:k?"center":"flex-end",pb:3,px:3},children:[l&&jsx(Do,{onClick:a,variant:"text",color:"inherit",children:f}),jsx(Do,{onClick:p,variant:"contained",sx:{bgcolor:k?h.iconColor:void 0,"&:hover":{bgcolor:k?h.iconColor:void 0,filter:"brightness(0.9)"}},autoFocus:true,children:g})]})]})},dT=()=>{let[e,t]=gt__default.useState(null),[o,a]=gt__default.useState(false);gt__default.useEffect(()=>{let i=l=>{l?(t(l),a(true)):(a(false),t(null));};return ra.register(i),()=>ra.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(In,{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 wd=({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 ki=e=>{let{t}=j(),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],d=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(d/i)),g=Math.min(s+1,c),f=s>0,p=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(bp,{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(zf,{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:!p,sx:{p:.35,color:"text.primary"},children:jsx(Nf,{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,k)=>jsx(gt__default.Fragment,{children:h},`toolbar-custom-${k}`))}),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(Mf,{})})})}),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(Af,{})})}),jsx(Tooltip,{title:t("table.toolbar.columns"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.setAnchorEl(h.currentTarget),children:jsx(Pf,{})})}),jsx(Tooltip,{title:t("table.toolbar.export"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.handleExport,children:jsx(Df,{})})}),e.showCreateButton&&jsx(Tooltip,{title:t("table.toolbar.newItem"),children:jsx(IconButton,{onClick:e.onOpenCreateDialog,color:"primary",children:jsx(Ff,{})})}),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(Ef,{})})})}),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(Lf,{})})})}),e.onOpenGraphReport&&jsx(Tooltip,{title:t("table.toolbar.graphicReport"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.onOpenGraphReport,children:jsx(Bf,{})})}),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(Ip,{})})}),e.layoutManager]})]})};var Si=e=>{let{t}=j(),{onSelectAllClick:o,order:a,orderBy:r,numSelected:n=0,rowCount:i=0,onRequestSort:l,columns:d,visibleColumns:s,selectionMode:c,grouping:g=[],isAllExpanded:f=false,handleToggleAll:p,onColumnResize:h,columnWidths:k}=e,[u,C]=useState(null),m=useRef(null),y=v=>M=>{u||l(v);},x=(v,M,w)=>{v.preventDefault(),v.stopPropagation(),C(M),m.current={startX:v.clientX,startWidth:w,colId:M},document.addEventListener("mousemove",S),document.addEventListener("mouseup",F),document.body.style.cursor="col-resize";},S=v=>{if(!m.current)return;let{startX:M,startWidth:w,colId:R}=m.current,T=v.clientX-M,W=Math.max(50,w+T);h&&h(R,W);},F=()=>{C(null),m.current=null,document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",F),document.body.style.cursor="";};useEffect(()=>()=>{document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",F);},[]);let D=c==="multiple"||c==="single",I=g.length>0&&!!p,A=t(f?"table.group.collapseAll":"table.group.expandAll"),P=d.filter(v=>s.includes(v.id));return jsx($f,{children:jsxs(Hf,{children:[D&&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(Gf,{color:"primary",indeterminate:n>0&&n<i,checked:i>0&&n===i,onChange:o,disabled:c==="single"})}),I&&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(qf,{title:A,children:jsx(Kf,{size:"small",onClick:v=>{v.stopPropagation(),p?.(!f);},sx:{p:.2},children:f?jsx(jf,{fontSize:"small"}):jsx(_f,{fontSize:"small"})})})}),P.map(v=>{let M=k?.[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:w=>({position:"sticky",top:0,zIndex:4,backgroundColor:w.palette.mode==="dark"?"#000000":"#f5f5f5",color:w.palette.mode==="dark"?"#ffffff":w.palette.text.primary,fontWeight:"bold",userSelect:"none"}),children:[jsx(Uf,{active:r===v.id,direction:r===v.id?a:"asc",onClick:y(v.id),sx:w=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:w.palette.mode==="dark"?"#ffffff":w.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:w.palette.mode==="dark"?"#ffffff":w.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:w.palette.mode==="dark"?"#ffffff":w.palette.text.primary}),children:jsx(Hn,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1},children:v.label})}),jsx(Hn,{onMouseDown:w=>x(w,v.id,typeof M=="number"?M:100),onClick:w=>w.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 Md=e=>{let{t}=j(),{visibleRows:o,visibleColumns:a,selected:r=[],handleClick:n,columns:i,toggleGroupExpand:l,expandedGroups:d=new Set,selectionMode:s,grouping:c=[],isGroupFullyExpanded:g,handleExpandGroupRecursively:f,handleCollapseGroupRecursively:p}=e,h=m=>r.indexOf(m)!==-1,k=s==="multiple"||s==="single",u=c.length>0,C=a.length+(k?1:0)+(u?1:0);return jsxs(TableBody,{children:[o.map((m,y)=>{if(m.type==="group"){let x=d.has(m.id),S=m.childIds||[],F=S.filter(P=>h(P)).length,D=S.length>0&&F===S.length,I=F>0&&F<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:[k&&jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:D,indeterminate:I,onChange:P=>{if(P.stopPropagation(),!!e.onSelectionChange)if(D){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}})}),u&&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)?p?.(m.id):f?.(m.id);},sx:{p:.25},children:g?.(m.id)?jsx(jf,{fontSize:"small"}):jsx(_f,{fontSize:"small"})})}),jsx(IconButton,{size:"small",onClick:()=>l&&l(m.id),sx:{p:.25},children:x?jsx(eh,{}):jsx(Nf,{})})]})}),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,F=h(S),D=`enhanced-table-checkbox-${y}`,A=(m.level!==void 0?m.level:0)*4;return jsxs(TableRow,{hover:true,onClick:P=>n&&n(P,x),role:"checkbox","aria-checked":F,tabIndex:-1,selected:F,sx:{cursor:"pointer"},children:[k&&jsx(TableCell,{padding:"checkbox",sx:{pl:A>0?A+1:void 0},children:jsx(Checkbox,{color:"primary",checked:F,inputProps:{"aria-labelledby":D}})}),u&&jsx(TableCell,{padding:"checkbox",sx:{width:44}}),i.filter(P=>a.includes(P.id)).map((P,v)=>{let w=!k&&v===0&&A>0?{pl:A+2}:{};return jsx(TableCell,{align:"left",sx:w,children:P.render?P.render(x[P.id],x):(function(){let T=x[P.id];if(P.numeric){if(typeof T=="number")return T.toLocaleString();if(typeof T=="string"&&T.trim()!==""&&!isNaN(Number(T)))return Number(T).toLocaleString()}return T})()},P.id)})]},S)}}),o.length===0&&jsx(TableRow,{children:jsx(TableCell,{colSpan:C,align:"center",children:t("common.noData")})})]})};var Ad=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}=j();return jsx(Box,{sx:{p:2},children:jsx(Typography,{children:t("table.mobile.notImplemented")})})};var zr=({groupAnchorEl:e,setGroupAnchorEl:t,grouping:o,setGrouping:a,columns:r,toggleGroupField:n})=>{let{t:i}=j();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(fh,{}),children:i("table.menu.clearAll")})]}),jsx(Divider,{}),r.map(l=>{let d=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:d,size:"small"}),jsx(ListItemText,{primary:l.label}),d&&jsx(Badge,{badgeContent:s,color:"primary",sx:{mr:2}})]})},l.id)})]})},Nr=({anchorEl:e,setAnchorEl:t,columns:o,visibleColumns:a,toggleColumnVisibility:r})=>{let{t:n}=j();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))]})},Pi=({anchorEl:e,setAnchorEl:t,showSummary:o,setShowSummary:a,columns:r,summaryColumns:n,toggleSummaryColumn:i})=>{let{t:l}=j();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{children:jsx(FormControlLabel,{control:jsx(Switch,{checked:o,onChange:d=>a(d.target.checked),size:"small"}),label:l("table.menu.showSummaryRow")})}),jsx(Divider,{}),r.filter(d=>d.numeric).map(d=>jsxs(MenuItem,{onClick:()=>i(d.id),disabled:!o,children:[jsx(Checkbox,{checked:n.includes(d.id),size:"small"}),jsx(ListItemText,{primary:d.label})]},d.id)),r.filter(d=>d.numeric).length===0&&jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:l("table.menu.noNumericColumns")})})]})},Ri=({contextMenu:e,handleCloseContextMenu:t,columns:o,visibleColumns:a,toggleColumnVisibility:r})=>{let{t:n}=j();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(gh,{fontSize:"small"})}),jsx(ListItemText,{children:i.label})]},i.id))]})};var Dn=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),zd=({kpis:e})=>{let{t}=j(),o=[{label:t("graph.kpi.totalRecords"),value:Dn(e.totalRecords,0),color:"text.primary"},{label:t("graph.kpi.totalReport"),value:Dn(e.totalReportHours),color:"text.primary"},{label:t("graph.kpi.totalBillable"),value:Dn(e.totalBillableHours),color:"success.main"},{label:t("graph.kpi.efficiency"),value:`${e.efficiency.toFixed(2)}%`,color:"warning.main"},{label:t("graph.kpi.amount"),value:Dn(e.totalAmount),color:"info.main"},{label:t("graph.kpi.flagged"),value:Dn(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 Di=({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 An=({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 Od=({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,p)=>{let h=n+p*(r-n*2)/Math.max(e.length-1,1),k=a-n-(f.value-l)/s*(a-n*2);return {x:h,y:k,...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 Wd=({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),d=e.map((c,g)=>{let f=(r-n*2)/e.length,p=Math.max(f*.5,8),h=n+g*f+(f-p)/2,k=c.barValue/i*(a-n*2),u=a-n-k;return {x:h,y:u,barHeight:k,barWidth:p,item:c}}),s=e.map((c,g)=>{let f=(r-n*2)/e.length,p=n+g*f+f/2,h=a-n-c.lineValue/l*(a-n*2);return {x:p,y:h,item:c}});return jsxs(Stack,{spacing:1.25,children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${r} ${a}`,sx:{width:"100%",height:a},children:[jsx("line",{x1:n,y1:a-n,x2:r-n,y2:a-n,stroke:"rgba(148,163,184,0.4)"}),d.map(c=>jsx("rect",{x:c.x,y:c.y,width:c.barWidth,height:Math.max(c.barHeight,4),rx:6,fill:t},c.item.name)),jsx("polyline",{fill:"none",stroke:o,strokeWidth:3,points: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 Sh=e=>`rgba(30, 136, 229, ${.2+Math.max(0,Math.min(1,e))*.8})`,Hd=({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,d=l/a;return jsx(Box,{sx:{height:36,borderRadius:1,bgcolor:Sh(d),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 wh=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],zi=({data:e,variant:t="donut",colors:o=wh,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((d,s)=>{let c=i;return i+=d.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((d,s)=>jsxs(Box,{onClick:()=>n?.(d),sx:{display:"flex",alignItems:"center",gap:1,cursor:n?"pointer":"default",opacity:r&&d.name!==r?.45:1},children:[jsx(Box,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:o[s%o.length]}}),jsx(Typography,{variant:"caption",sx:{flex:1},children:d.name}),jsxs(Typography,{variant:"caption",sx:{fontWeight:700},children:[d.percent.toFixed(0),"%"]})]},d.name))})]})};var Ud=({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 qd=({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,p=g.type==="total"?g.value:o+g.value;return g.type!=="total"&&(o=p),{...g,start:f,end:p,delta:p-f}}),r=a.flatMap(g=>[g.start,g.end]),n=Math.min(...r,0),i=Math.max(...r,1),l=680,d=30,s=i-n||1,c=g=>t-d-(g-n)/s*(t-d*2);return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${l} ${t}`,sx:{width:"100%",height:t},children:[jsx("line",{x1:d,y1:c(0),x2:l-d,y2:c(0),stroke:"rgba(148,163,184,0.4)"}),a.map((g,f)=>{let p=(l-d*2)/a.length,h=Math.max(p*.55,8),k=d+f*p+(p-h)/2,u=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:k,y:u,width:h,height:Math.max(C-u,4),rx:6,fill:m}),jsx("text",{x:k+h/2,y:u-6,textAnchor:"middle",fill:"currentColor",fontSize:"11",children:g.end.toFixed(1)})]},g.name)})]}),jsx(Box,{sx:{mt:1,display:"grid",gridTemplateColumns:`repeat(${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 En=({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}`},GI=(e,t=360)=>{let o=En(e);return `<iframe width="100%" height="${t}" style="border:0" loading="lazy" allowfullscreen referrerpolicy="no-referrer-when-downgrade" src="${o}"></iframe>`};var Zd=({apiKey:e,query:t,embedUrl:o,zoom:a=14,mapType:r="roadmap",height:n=320})=>{let i=o||(e&&t?En({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 Oi=({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 Jd=({keyword:e,location:t,embedUrl:o,height:a=320})=>{let r=o||Oi({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 ep=({billableByPrimary:e,efficiencyBySecondary:t,statusDistribution:o,interaction:a})=>{let{t:r}=j();return jsxs(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"1.2fr 1.2fr 1fr"}},children:[jsx(Di,{title:r("graph.chart.billable.title"),subtitle:r("graph.chart.billable.subtitle"),children:jsx(An,{data:e,orientation:"horizontal",activeName:a?.filters?.primaryDimension,onItemClick:n=>a?.onPrimaryDimensionClick?.(n.name)})}),jsx(Di,{title:r("graph.chart.efficiency.title"),subtitle:r("graph.chart.efficiency.subtitle"),children:jsx(An,{data:t,orientation:"vertical",valueSuffix:"%",activeName:a?.filters?.secondaryDimension,onItemClick:n=>a?.onSecondaryDimensionClick?.(n.name)})}),jsx(Di,{title:r("graph.chart.status.title"),subtitle:r("graph.chart.status.subtitle"),children:jsx(zi,{data:o,variant:"donut",activeName:a?.filters?.status,onItemClick:n=>a?.onStatusClick?.(n.name)})})]})};var Gt=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 Gh=["doubao-lite","gpt-4o-mini","gpt-4.1-mini","claude-3.5-sonnet"],Uh=["zh","en","de","fr","ja","ko"],ap=({open:e,onClose:t,value:o,onSaveAll:a,modelOptions:r=Gh,promptLangOptions:n=Uh,analysisTemplateOptions:i=[],responseTemplateOptions:l=[],defaultAnalysisTemplateId:d,defaultResponseTemplateId:s})=>{let[c,g]=useState(o),[f,p]=useState(d||""),[h,k]=useState(s||""),[u,C]=useState(false);useEffect(()=>{e&&(g(o),p(d||""),k(s||""));},[e,o,d,s]);let m=(x,S)=>{g(F=>({...F,[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(Hh,{})})]}),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(Gt,{size:"small",value:c.baseUrl,onChange:x=>m("baseUrl",x.target.value),fullWidth:true,label:"Base URL"})}),jsx(Box,{children:jsx(Gt,{size:"small",type:"password",value:c.apiKey,onChange:x=>m("apiKey",x.target.value),fullWidth:true,label:"API Key"})}),jsx(Box,{children:jsx(Gt,{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(Gt,{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(Gt,{size:"small",value:f,onChange:x=>p(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(Gt,{size:"small",value:h,onChange:x=>k(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||u,children:"Save"})]})]})};var Ui=({open:e,onClose:t,model:o,tableContent:a,extraCharts:r,interaction:n,aiAssistant:i})=>{let{t:l}=j(),[d,s]=useState(i?.defaultPrompt||""),[c,g]=useState(false),[f,p]=useState(false),h=n?.enabled!==false&&!!n,k=i?.enabled!==false,u=n?.filters||{},C=!!(u.primaryDimension||u.secondaryDimension||u.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=d.trim();if(!(!S||!i?.onSubmit))try{g(!0),await i.onSubmit(S,{filters:u,model:o});}finally{g(false);}};return jsx(Dialog,{open:e,onClose:t,fullScreen:true,children:jsxs(Box,{sx:{height:"100%",display:"flex",flexDirection:"column",bgcolor:"background.default"},children:[jsx(Box,{sx:{p:2,borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:{xs:"column",lg:"row"},alignItems:{xs:"stretch",lg:"center"},justifyContent:"space-between",spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{flexWrap:"wrap"},children:[jsx(Typography,{variant:"h5",fontWeight:800,children:o.title}),jsx(Chip,{size:"small",label:l("graph.records",{count:o.kpis.totalRecords})}),h&&u.primaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.primaryDimension}: ${u.primaryDimension}`,onDelete:()=>n?.onClearFilter("primaryDimension")}),h&&u.secondaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.secondaryDimension}: ${u.secondaryDimension}`,onDelete:()=>n?.onClearFilter("secondaryDimension")}),h&&u.status&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.status}: ${u.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:[k&&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(Xh,{sx:{fontSize:18,color:"text.secondary"}})}),jsx(InputBase,{fullWidth:true,value:d,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||!d.trim(),children:jsx(Yh,{sx:{fontSize:18}})}),jsx(IconButton,{size:"small",onClick:()=>p(true),children:jsx(Qh,{sx:{fontSize:18}})})]}),jsx(IconButton,{onClick:t,children:jsx(Hh,{})})]})]})}),jsxs(Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsx(zd,{kpis:o.kpis}),jsx(ep,{billableByPrimary:o.charts.billableByPrimary,efficiencyBySecondary:o.charts.efficiencyBySecondary,statusDistribution:o.charts.statusDistribution,interaction:h?{filters:u,onPrimaryDimensionClick:S=>n?.onPrimaryDimensionClick(S),onSecondaryDimensionClick:S=>n?.onSecondaryDimensionClick(S),onStatusClick:S=>n?.onStatusClick(S)}:void 0}),r,a]}),jsx(ap,{open:f,onClose:()=>p(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 Ra={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"]},ey=5,rp=e=>e.toLowerCase().replace(/[\s_-]/g,""),Da=(e,t,o,a)=>{if(t)return t;if(e.length===0)return a;let r=Object.keys(e[0]),n=new Map(r.map(i=>[rp(i),i]));for(let i of o){let l=n.get(rp(i));if(l)return l}return r[0]||a},no=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},zt=(e,t)=>e==null||e===""?t:String(e),ty=(e,t,o,a,r)=>{let n=new Map;return e.forEach(i=>{let l=zt(i[t],r);n.set(l,(n.get(l)||0)+no(i[o]));}),Array.from(n.entries()).map(([i,l])=>({name:i,value:l})).sort((i,l)=>l.value-i.value).slice(0,a)},oy=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(l=>{let d=zt(l[t],n),s=i.get(d)||{report:0,billable:0};s.report+=no(l[o]),s.billable+=no(l[a]),i.set(d,s);}),Array.from(i.entries()).map(([l,d])=>({name:l,value:d.report>0?d.billable/d.report*100:0})).sort((l,d)=>l.value-d.value).slice(0,r)},ay=(e,t,o)=>{let a=e.length;if(a===0)return [];let r=new Map;return e.forEach(n=>{let i=zt(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}))},np=(e,t,o)=>{let a=new Map;return e.forEach(r=>{let n=zt(r[t],"N/A");a.set(n,(a.get(n)||0)+no(r[o]));}),Array.from(a.entries()).sort(([r],[n])=>r.localeCompare(n)).map(([r,n])=>({name:r,value:n}))},ry=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(l=>{let d=zt(l[t],n),s=i.get(d)||{report:0,billable:0};s.report+=no(l[o]),s.billable+=no(l[a]),i.set(d,s);}),Array.from(i.entries()).map(([l,d])=>({name:l,barValue:d.billable,lineValue:d.report>0?d.billable/d.report*100:0})).sort((l,d)=>d.barValue-l.barValue).slice(0,r)},ny=(e,t,o,a,r)=>{let n=new Map;return e.forEach(i=>{let l=zt(i[t],r),d=zt(i[o],r),s=`${l}__${d}`;n.set(s,(n.get(s)||0)+no(i[a]));}),Array.from(n.entries()).map(([i,l])=>{let[d,s]=i.split("__");return {x:d,y:s,value:l}})},iy=(e,t,o)=>{let a=np(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"}]},sy=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(l=>{let d=zt(l[t],n),s=`${zt(l[o],n)} / ${zt(l[a],n)}`,c=i.get(d)||new Map;c.set(s,(c.get(s)||0)+1),i.set(d,c);}),Array.from(i.entries()).map(([l,d])=>({title:l,causes:Array.from(d.entries()).sort((s,c)=>c[1]-s[1]).slice(0,r).map(([s,c])=>`${s} (${c})`)})).slice(0,6)},_r=({rows:e,config:t})=>{let{t:o}=j(),a=o("graph.unassigned"),r=useMemo(()=>{let c=t?.fieldMapping;return {primaryDimension:Da(e,c?.primaryDimension,Ra.primaryDimension,"Category"),secondaryDimension:Da(e,c?.secondaryDimension,Ra.secondaryDimension,"Owner"),status:Da(e,c?.status,Ra.status,"Status"),date:Da(e,c?.date,Ra.date,"Date"),description:Da(e,c?.description,Ra.description,"Description"),reportHours:Da(e,c?.reportHours,Ra.reportHours,"ReportHours"),billableHours:Da(e,c?.billableHours,Ra.billableHours,"BillableHours"),amount:Da(e,c?.amount,Ra.amount,"Amount")}},[e,t?.fieldMapping]),n=useMemo(()=>e.map((c,g)=>{let f=no(c[r.reportHours]),p=no(c[r.billableHours]),h=no(c[r.amount]),k=f>0?p/f*100:0;return {id:`graph-row-${g}`,Date:zt(c[r.date],""),Primary:zt(c[r.primaryDimension],a),Secondary:zt(c[r.secondaryDimension],a),Description:zt(c[r.description],""),ReportHours:f,BillableHours:p,Amount:h,Efficiency:k,Status:zt(c[r.status],a)}}),[e,r,a]),i=useMemo(()=>{let c=n.length,g=n.reduce((C,m)=>C+no(m.ReportHours),0),f=n.reduce((C,m)=>C+no(m.BillableHours),0),p=n.reduce((C,m)=>C+no(m.Amount),0),h=g>0?f/g*100:0,k=t?.statusFlagValues||["flag","flagged","warning","risk"],u=n.filter(C=>k.includes(zt(C.Status,"").toLowerCase())).length;return {totalRecords:c,totalReportHours:g,totalBillableHours:f,efficiency:h,totalAmount:p,flaggedCount:u}},[n,t?.statusFlagValues]),l=t?.topN||ey,d=useMemo(()=>({billableByPrimary:ty(n,"Primary","BillableHours",l,a),efficiencyBySecondary:oy(n,"Secondary","ReportHours","BillableHours",l,a),statusDistribution:ay(n,"Status",a),lineByDate:np(n,"Date","BillableHours"),comboByPrimary:ry(n,"Primary","ReportHours","BillableHours",l,a),heatmapPrimarySecondary:ny(n,"Primary","Secondary","BillableHours",a),waterfallBillable:iy(n,"Date","BillableHours"),fishboneStatusCauses:sy(n,"Status","Primary","Secondary",3,a)}),[n,l,a]),s=useMemo(()=>({title:t?.title||o("graph.reportTitle"),kpis:i,charts:d,table:{columns:[{id:"Date",label:r.date},{id:"Primary",label:r.primaryDimension},{id:"Secondary",label:r.secondaryDimension},{id:"Description",label:r.description},{id:"ReportHours",label:o("graph.column.reportHours"),align:"right"},{id:"BillableHours",label:o("graph.column.billableHours"),align:"right"},{id:"Amount",label:"Amount",align:"right"},{id:"Efficiency",label:"Efficiency",align:"right"},{id:"Status",label:r.status}],rows:n}}),[d,t?.title,r,i,n,o]);return {fieldMapping:r,model:s}};var jr=e=>String(e??"").trim(),qi=(e={})=>{let[t,o]=useState(e),a=useCallback((d,s)=>{o(c=>{let g=s?.trim();if(!g){let f={...c};return delete f[d],f}if(c[d]===g){let f={...c};return delete f[d],f}return {...c,[d]:g}});},[]),r=useCallback(d=>{o(s=>{if(!s[d])return s;let c={...s};return delete c[d],c});},[]),n=useCallback(()=>{o({});},[]),i=useMemo(()=>!!(t.primaryDimension||t.secondaryDimension||t.status),[t]),l=useCallback((d,s)=>d.filter(c=>!(t.primaryDimension&&jr(c[s.primaryDimension])!==jr(t.primaryDimension)||t.secondaryDimension&&jr(c[s.secondaryDimension])!==jr(t.secondaryDimension)||t.status&&jr(c[s.status])!==jr(t.status))),[t]);return {filters:t,setFilter:a,clearFilter:r,clearAll:n,hasActiveFilters:i,applyRows:l}};var ji=({variants:e,currentVariantId:t,onLoad:o,onSave:a,onDelete:r,onSetDefault:n})=>{let{t:i}=j(),d=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),[p,h]=useState(""),[k,u]=useState(false),[C,m]=useState(false),y=e.find(F=>F.id===t),x=()=>{h(y?.name||i("variant.newVariant")),u(y?.isDefault||false),m(y?.isPublic||false),f(true);},S=()=>{a({name:p,isDefault:k,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:d?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.9)":"rgba(25,118,210,0.85)"}},"& .MuiInputBase-input":{fontSize:s},"& .MuiAutocomplete-noOptions":{fontSize:s}},noOptionsText:jsx(Typography,{sx:{fontSize:s},children:i("variant.noOptions")}),options:e,getOptionLabel:F=>F.name+(F.isDefault?` (${i("variant.defaultSuffix")})`:""),value:y||null,onChange:(F,D)=>{D&&o(D);},renderInput:F=>jsx(TextField,{...F,variant:"outlined",size:"small",InputProps:{...F.InputProps,sx:{fontSize:s,color:d?"#E3F2FD":"#0D47A1"}},placeholder:i("variant.selectVariant")}),renderOption:(F,D)=>jsx("li",{...F,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Typography,{sx:{flex:1,fontSize:s},children:D.name}),D.isDefault&&jsx(xy,{fontSize:"small",color:"action"})]})})}),jsx(Tooltip,{title:i("variant.saveView"),children:jsx(IconButton,{onClick:x,size:"small",color:"primary",children:jsx(Ip,{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:p,onChange:F=>h(F.target.value)}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:k,onChange:F=>u(F.target.checked)}),label:i("variant.setDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C,onChange:F=>m(F.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 mp=({appId:e,tableKey:t="default",currentFilters:o,currentLayoutId:a,layoutRefs:r,onLoad:n,variantService:i,serviceUrl:l,onError:d,onSuccess:s,currentVariantId:c,onVariantChange:g})=>{let{t:f}=j(),[p,h]=useState([]),[k,u]=useState(""),C=`orbcafe.variants.${e}.${t}`,m=c!==void 0?c:k,y=M=>{c===void 0&&u(M),g&&g(M);},x=useCallback(()=>{try{let M=localStorage.getItem(C);if(!M)return [];let w=JSON.parse(M);return Array.isArray(w)?w:[]}catch{return []}},[C]),S=useCallback(M=>{try{localStorage.setItem(C,JSON.stringify(M));}catch{}},[C]),F=useCallback(M=>{h(M);let w=M.find(R=>R.isDefault);w&&!m&&(y(w.id),n(w));},[m,n,y]),D=useCallback(async()=>{if(!e)return [];try{let M=[];if(i)M=await i.getVariants(e,t);else if(l){let w=await fetch(`${l}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!w.ok)throw new Error(f("variant.toast.fetchFailed"));M=await w.json();}else M=x();return F(M),M}catch(M){console.error("Error fetching variants",M);let w=x();return F(w),d&&d(f("variant.toast.fetchFailed")),w}},[e,t,i,l,x,F,d,f]);return useEffect(()=>{D();},[e,t]),jsx(ji,{variants:p,currentVariantId:m,onLoad:M=>{y(M.id),n(M);},onSave:async M=>{let w=Date.now().toString(),R;try{let T=M.scope||"Both",W=p.find(ee=>ee.name===M.name);w=W?W.id:Date.now().toString();let N=[];if(W&&(Array.isArray(W.filters)?N=[...W.filters]:W.filters&&(N=[{scope:"default",filters:W.filters}])),T==="Search"||T==="Both"){let ee=(Array.isArray(o),o);if(ee)if(Array.isArray(ee)&&ee.length>0&&ee[0].scope)ee.forEach(te=>{let Z=N.findIndex(Oe=>Oe.scope===te.scope);Z>=0?N[Z]=te:N.push(te);});else {let te={scope:t,filters:ee},Z=N.findIndex(Oe=>Oe.scope===t);Z>=0?N[Z]=te:N.push(te);}}let X=W?.layout||{},se=[];if(W&&Array.isArray(W.layoutRefs)&&(se=[...W.layoutRefs]),T==="Layout"||T==="Both")if(r&&r.length>0)r.forEach(ee=>{let te=se.findIndex(Z=>Z.tableKey===ee.tableKey);te>=0?se[te]=ee:se.push(ee);});else {let ee={tableKey:t,layoutId:a||null},te=se.findIndex(Z=>Z.tableKey===t);te>=0?se[te]=ee:se.push(ee);}if(R={appId:e,tableKey:t,...M,scope:T,id:w,createdAt:new Date().toISOString(),filters:N,layout:X,layoutRefs:se},i)await i.saveVariant(R,e,t);else if(l){if(!(await fetch(`${l}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(R)})).ok)throw new Error(f("variant.toast.saveFailed"))}else {let te=p.some(Z=>Z.id===w)?p.map(Z=>Z.id===w?R:Z):[...p,R];h(te),S(te);}s&&s(f("variant.toast.saveSuccess")),(i||l)&&await D(),y(w),n(R);}catch(T){console.error("Error saving variant",T);let N=p.some(X=>X.id===w)?p.map(X=>X.id===w?R:X):[...p,R];h(N),S(N),y(w),n(R),d&&d(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 w=p.filter(R=>R.id!==M);h(w),S(w);}m===M&&y(""),(i||l)&&D(),s&&s(f("variant.toast.deleteSuccess"));}catch(w){console.error("Error deleting variant",w);let R=p.filter(T=>T.id!==M);h(R),S(R),m===M&&y(""),d&&d(f("variant.toast.deleteFailed"));}},onSetDefault:async M=>{try{let w=p.find(T=>T.id===M);if(!w)return;let R={appId:e,tableKey:t,...w,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(R)})).ok)throw new Error(f("variant.toast.defaultFailed"))}else {let T=p.map(W=>({...W,isDefault:W.id===M}));h(T),S(T);}(i||l)&&await D(),s&&s(f("variant.toast.defaultSuccess"));}catch(w){console.error("Error setting default variant",w);let R=p.map(T=>({...T,isDefault:T.id===M}));h(R),S(R),d&&d(f("variant.toast.defaultFailed"));}}})};Ka.extend(Ny);Ka.extend(Vy);var Oy=[null,null],$l="0.85rem",Wy={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},$y=styled(PickersDay,{shouldForwardProp:e=>e!=="isInRange"&&e!=="isStart"&&e!=="isEnd"&&e!=="isHovered"})(({theme:e,isInRange:t,isStart:o,isEnd:a,isHovered:r})=>({...t&&{borderRadius:0,backgroundColor:e.palette.primary.light,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.main}},...r&&!t&&!o&&!a&&{borderRadius:0,backgroundColor:e.palette.action.hover,border:`1px dashed ${e.palette.primary.main}`},...o&&{borderRadius:"50% 0 0 50%",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...a&&{borderRadius:"0 50% 50% 0",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...o&&a&&{borderRadius:"50%"}})),hp=({label:e,value:t=Oy,onChange:o})=>{let{t:a,locale:r}=j(),n=Wy[r]||"en",i=e||a("dateRange.label"),[l,d]=useState(null),[s,c]=useState(t),[g,f]=useState("start"),[p,h]=useState(null),[k,u]=useState((t[0]||Ka()).locale(n)),C=gt__default.useRef(t);useEffect(()=>{let[w,R]=t,[T,W]=C.current,N=ee=>ee&&typeof ee.isSame=="function",X=!(w===null&&T===null||N(w)&&N(T)&&w.isSame(T,"day")),se=!(R===null&&W===null||N(R)&&N(W)&&R.isSame(W,"day"));(X||se)&&(c(t),t[0]&&N(t[0])&&u(t[0].locale(n))),C.current=t;},[t,n]);let m=w=>{d(w.currentTarget);},y=()=>{d(null),f("start"),h(null);},x=!!l,S=w=>{if(!w)return;let R=[...s];if(g==="start")R=[w,null],f("end");else {let T=R[0];T&&w.isBefore(T)?(R=[w,null],f("end")):(R=[T,w],f("start"));}c(R);},F=w=>{let R=Ka().locale(n),T=[null,null];switch(w){case "today":T=[R,R];break;case "week":T=[R.startOf("week"),R.endOf("week")];break;case "month":T=[R.startOf("month"),R.endOf("month")];break}c(T),f("start"),u(R);},D=()=>{c([null,null]),f("start"),u(Ka().locale(n));},I=()=>{o&&o(s),y();},A=()=>{c(t),f("start"),y();},P=useCallback(w=>{let{day:R,...T}=w,[W,N]=s,X=W?R.isSame(W,"day"):false,se=N?R.isSame(N,"day"):false,ee=W&&N?R.isBetween(W,N,"day","()"):false,te=false;return g==="end"&&W&&!N&&p&&R.isAfter(W,"day")&&R.isBefore(p.add(1,"day"),"day")&&(te=true),jsx($y,{...T,day:R,disableMargin:true,isStart:X,isEnd:se,isInRange:ee||te,onMouseEnter:()=>h(R)})},[s,g,p]),v=w=>w?w.locale(n).format("YYYY-MM-DD"):"",M=w=>w?w.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:w=>{w.stopPropagation(),D();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsx(Ly,{sx:{fontSize:"1rem"}})}),jsx(IconButton,{size:"small",edge:"end",onClick:m,sx:{padding:"2px"},children:jsx(Ey,{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(zy,{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:()=>F("today"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisWeek"),onClick:()=>F("week"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisMonth"),onClick:()=>F("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsx(LocalizationProvider,{dateAdapter:AdapterDayjs,adapterLocale:n,children:jsx(DateCalendar,{value:null,referenceDate:k,onMonthChange:u,onYearChange:u,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:A,color:"inherit",children:a("common.cancel")}),jsx(Button,{size:"small",variant:"contained",onClick:I,children:a("common.done")})]})]})]})};var Yi={equals:"=",contains:"\u2287",notContains:"\u2285",wildcard:"*","=":"=","!=":"!=",">":">","<":"<",">=":"\u2265","<=":"\u2264",between:"\u2194"},Yy={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"},Jy=["equals","contains","notContains","wildcard"],xp=["=","!=",">","<",">=","<=","between"],ct="0.85rem",eb=({field:e,value:t,onChange:o})=>{let{t:a}=j(),[r,n]=useState(null),[i,l]=useState(null),[d,s]=useState(""),[c,g]=useState(""),[f,p]=useState(false),[h,k]=useState(""),[u,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=Yy[v];return M?a(M):v},S=v=>{n(v.currentTarget);},F=v=>{o({...t,operator:v,value:y}),n(null);},D={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"}}}}}},I=e.type||"text";if(I==="date"){let M=(w=>{if(!w)return [null,null];if(Array.isArray(w)&&w.length===2){let R=w[0]?Ka.isDayjs(w[0])?w[0]:Ka(w[0]):null,T=w[1]?Ka.isDayjs(w[1])?w[1]:Ka(w[1]):null;return [R,T]}return Ka.isDayjs(w)||typeof w=="string"?[Ka.isDayjs(w)?w:Ka(w),null]:[null,null]})(y);return jsx(hp,{label:e.label,value:M,onChange:w=>o({value:w,operator:"between"})})}if(I==="number"&&m==="between"){let v=()=>{o({value:[d,c],operator:"between"}),l(null);},M=Array.isArray(y)?`${y[0]||""} - ${y[1]||""}`:"";return jsxs(Fragment,{children:[jsx(TextField,{...D,label:e.label,value:M,placeholder:a("smartFilter.minMaxPlaceholder"),InputProps:{...D.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:Yi.between})})}),readOnly:true},onClick:w=>l(w.currentTarget)}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ct,minHeight:"auto",py:.5}}},children:xp.map(w=>jsxs(MenuItem,{selected:w===m,onClick:()=>F(w),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Yi[w]}),jsx(ListItemText,{primary:x(w),primaryTypographyProps:{fontSize:ct}})]},w))}),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:d,onChange:w=>s(w.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:ct}},InputProps:{sx:{fontSize:ct}}}),jsx(Qy,{color:"action"}),jsx(TextField,{size:"small",label:a("smartFilter.max"),type:"number",value:c,onChange:w=>g(w.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(I==="select")return jsxs(TextField,{...D,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(I==="multi-select"){let v=Array.isArray(y)?y:[],M=e.options?.filter(w=>w.label.toLowerCase().includes(u.toLowerCase()))||[];return jsxs(TextField,{...D,select:true,label:e.label,value:v,onChange:w=>o({...t,value:w.target.value,operator:"anyOf"}),SelectProps:{...D.SelectProps,multiple:true,onClose:()=>{k(""),C("");},renderValue:w=>{if(!Array.isArray(w)||w.length===0)return jsx("em",{children:a("common.none")});let R=W=>e.options?.find(N=>N.value===W)?.label||W,T=w.map(R);return T.length>2?`${T.slice(0,2).join(", ")} +${T.length-2}`:T.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(bp,{fontSize:"small"})}),sx:{fontSize:ct}},value:h,onChange:w=>k(w.target.value),onKeyDown:w=>{w.key!=="Escape"&&w.stopPropagation();},onClick:w=>w.stopPropagation()})}),M.length>0?M.map(w=>jsxs(MenuItem,{value:w.value,children:[jsx(Checkbox,{checked:v.indexOf(w.value)>-1,size:"small"}),jsx(ListItemText,{primary:w.label,primaryTypographyProps:{fontSize:ct}})]},w.value)):jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:a("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:ct}})})]})}let A=I==="number"?xp:Jy,P=f||y!==void 0&&y!==""&&y!==null||!!r;return jsxs(Fragment,{children:[jsx(TextField,{...D,label:e.label,sx:{minWidth:"120px"},value:y||"",type:I==="number"?"number":"text",onChange:v=>o({...t,value:v.target.value,operator:m}),onFocus:()=>p(true),onBlur:()=>p(false),InputProps:{...D.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:Yi[m]})})}):null,endAdornment:e.hasSearchIcon?jsx(InputAdornment,{position:"end",children:jsx(bp,{color:"action"})}):void 0}}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ct,minHeight:"auto",py:.5}}},children:A.map(v=>jsxs(MenuItem,{selected:v===m,onClick:()=>F(v),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Yi[v]}),jsx(ListItemText,{primary:x(v),primaryTypographyProps:{fontSize:ct}})]},v))})]})},la=({fields:e,filters:t,onFilterChange:o,variants:a=[],currentVariantId:r,onVariantLoad:n,onVariantSave:i,onVariantDelete:l,onVariantSetDefault:d,onSearch:s,loading:c=false,appId:g,tableKey:f,currentLayout:p,currentLayoutId:h,layoutRefs:k,variantService:u,serviceUrl:C})=>{let{t:m}=j(),[y,x]=useState(true),[S,F]=useState(null),[D,I]=useState(e.filter(M=>!M.hidden).map(M=>M.id)),A=(M,w)=>{o({...t,[M]:w});},P=M=>{D.includes(M)?I(D.filter(w=>w!==M)):I([...D,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(mp,{appId:g,tableKey:f,currentFilters:{values:t,visibleFields:D},currentLayout:p,currentLayoutId:h,layoutRefs:k,onLoad:M=>{if(!M.filters)return;let w=null;if(Array.isArray(M.filters)){let R=f||"default",T=M.filters.find(W=>W.scope===R);w=T?T.filters:null;}else w=M.filters;w&&(w.values||w.visibleFields?(w.visibleFields&&Array.isArray(w.visibleFields)&&I(w.visibleFields),w.values&&o(w.values)):o(w)),n&&n(M);},variantService:u,serviceUrl:C,currentVariantId:r}):jsx(ji,{variants:a,currentVariantId:r,onLoad:n,onSave:M=>{i&&i({...M,filters:{values:t,visibleFields:D}});},onDelete:l,onSetDefault:d}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:m("smartFilter.addFilters"),children:jsx(Button,{onClick:M=>F(M.currentTarget),size:"small",color:"primary",startIcon:jsx(jy,{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:()=>F(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:D.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=>D.includes(M.id)).map(M=>jsx(Grid,{size:1,children:jsx(eb,{field:M,value:t[M.id]||{value:"",operator:M.type==="number"?"=":"equals"},onChange:w=>A(M.id,w)})},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(Zy,{sx:{fontSize:16},color:"action"}):jsx(eh,{sx:{fontSize:16},color:"action"})})})]})};var Pp=({layouts:e,currentLayoutId:t,onLoad:o,onSave:a,onDelete:r,onSetDefault:n})=>{let{t:i}=j(),[l,d]=useState(null),[s,c]=useState(false),[g,f]=useState(""),[p,h]=useState(""),[k,u]=useState({isDefault:false,isPublic:false}),C=e.find(D=>D.id===t),m=D=>{d(D.currentTarget);},y=()=>{d(null);},x=D=>{o(D),y();},S=()=>{f(""),h(""),u({isDefault:false,isPublic:false}),c(true),y();},F=()=>{g.trim()&&(a({name:g,description:p,...k}),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(Ip,{})})}),jsx(Tooltip,{title:i("layout.layoutOptions"),children:jsx(IconButton,{onClick:m,color:C?"primary":"default",children:jsx(ub,{})})}),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(Ip,{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((D,I)=>jsx(MenuItem,{onClick:()=>x(D),selected:D.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:D.id===t?"bold":"normal",noWrap:true,children:D.name})}),D.description&&jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:D.description})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center"},onClick:A=>A.stopPropagation(),children:[jsx(Tooltip,{title:D.isDefault?i("layout.removeDefault"):i("layout.setAsDefault"),children:jsx(IconButton,{size:"small",onClick:A=>{A.stopPropagation(),n(D.id);},children:D.isDefault?jsx(xy,{fontSize:"small",color:"warning"}):jsx(pb,{fontSize:"small"})})}),jsx(Tooltip,{title:i("common.delete"),children:jsx(IconButton,{size:"small",color:"error",onClick:A=>{A.stopPropagation(),r(D.id);},children:jsx(Lf,{fontSize:"small"})})})]})]})},D.id||I))]}),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:D=>f(D.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:i("layout.layoutNameHelper")}),e.some(D=>D.name===g)&&jsx(Typography,{variant:"caption",color:"warning.main",sx:{ml:1},children:i("layout.warningOverwrite")}),jsx(TextField,{label:i("layout.layoutDescription"),value:p,onChange:D=>h(D.target.value),fullWidth:true,size:"small"}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:k.isDefault,onChange:D=>u({...k,isDefault:D.target.checked})}),label:i("layout.useAsDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:k.isPublic,onChange:D=>u({...k,isPublic:D.target.checked})}),label:i("layout.publicAllUsers")})]})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>c(false),children:i("common.cancel")}),jsx(Button,{onClick:F,variant:"contained",disabled:!g,children:i("common.save")})]})]})]})};var os=({appId:e,tableKey:t="default",currentLayoutData:o,onLayoutLoad:a,targetLayoutId:r,activeLayoutId:n,serviceUrl:i,onError:l,onSuccess:d})=>{let{t:s}=j(),[c,g]=useState([]),[f,p]=useState(""),h=`orbcafe.layouts.${e}.${t}`,k=I=>({id:I.layoutId,name:I.name,description:I.description??"",isDefault:!!I.isDefault,isPublic:!!I.isPublic,createdAt:I.createdAt??new Date().toISOString(),layoutData:I.layout??{}}),u=I=>({appId:e,tableKey:t,layoutId:I.id,name:I.name,description:I.description??"",isDefault:!!I.isDefault,isPublic:!!I.isPublic,createdAt:I.createdAt,layout:I.layoutData}),C=useCallback(()=>{try{let I=localStorage.getItem(h);if(!I)return [];let A=JSON.parse(I);return Array.isArray(A)?A:[]}catch{return []}},[h]),m=useCallback(I=>{try{localStorage.setItem(h,JSON.stringify(I));}catch{}},[h]);useEffect(()=>{n!==void 0&&p(n);},[n]),useEffect(()=>{if(r&&c.length>0){let I=c.find(A=>A.id===r);I&&(p(I.id),a(I));}},[r,c,a]);let y=useCallback(async()=>{if(e){if(!i){let I=C();g(I);let A=I.find(P=>P.isDefault);A&&!f&&!r&&(p(A.id),a(A));return}try{let I=await fetch(`${i}/api/layouts?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!I.ok)throw new Error("LAYOUT_FETCH_FAILED");let P=(await I.json()).map(k);g(P);let v=P.find(M=>M.isDefault);v&&!f&&!r&&(p(v.id),a(v));}catch(I){console.error("Error fetching layouts",I);let A=C();g(A);let P=A.find(v=>v.isDefault);P&&!f&&!r&&(p(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(Pp,{layouts:c,currentLayoutId:f,onLoad:I=>{p(I.id),a(I);},onSave:async I=>{let A=c.find(M=>M.name===I.name),P=A?A.id:Date.now().toString(),v={id:P,...I,createdAt:new Date().toISOString(),layoutData:o,isDefault:I.isDefault??false,isPublic:I.isPublic??false};if(!i){let w=c.some(R=>R.id===P)?c.map(R=>R.id===P?v:R):[...c,v];g(w),m(w),p(P),a(v),d&&d(s("layout.toast.saveLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u(v))})).ok)throw new Error("LAYOUT_SAVE_FAILED");d&&d(s("layout.toast.saveSuccess")),await y(),p(P),a(v);}catch(M){console.error("Error saving layout",M);let R=c.some(T=>T.id===P)?c.map(T=>T.id===P?v:T):[...c,v];g(R),m(R),p(P),a(v),d&&d(s("layout.toast.saveLocalSuccess")),l&&l(s("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async I=>{if(!i){let A=c.filter(P=>P.id!==I);g(A),m(A),f===I&&p(""),d&&d(s("layout.toast.deleteLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts/${encodeURIComponent(I)}`,{method:"DELETE"})).ok)throw new Error("LAYOUT_DELETE_FAILED");f===I&&p(""),d&&d(s("layout.toast.deleteSuccess")),await y();}catch(A){console.error("Error deleting layout",A);let P=c.filter(v=>v.id!==I);g(P),m(P),f===I&&p(""),d&&d(s("layout.toast.deleteLocalSuccess")),l&&l(s("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async I=>{if(!i){let A=c.map(P=>({...P,isDefault:P.id===I}));g(A),m(A),d&&d(s("layout.toast.defaultLocalSuccess"));return}try{let A=c.find(v=>v.id===I);if(!A)return;if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u({...A,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");d&&d(s("layout.toast.defaultSuccess")),await y();}catch(A){console.error("Error setting default",A);let P=c.map(v=>({...v,isDefault:v.id===I}));g(P),m(P),d&&d(s("layout.toast.defaultLocalSuccess")),l&&l(s("layout.toast.backendUnavailableDefaultLocal"));}}})};var Dp=(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},as=(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 Mp(e,t,o){return t[o]<e[o]?-1:t[o]>e[o]?1:0}function gb(e,t){return e==="desc"?(o,a)=>Mp(o,a,t):(o,a)=>-Mp(o,a,t)}function fb(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(V=>{let K=String(V?.label??V?.id??"").length*9+64,ke=typeof V?.minWidth=="number"?V.minWidth:0;return Math.max(100,ke,K)},[]),o=useCallback(()=>(e.columns||[]).filter(V=>!!V?.numeric).map(V=>V.id),[e.columns]),[a,r]=useState(""),[n,i]=useState(e.order||"asc"),[l,d]=useState(e.orderBy||""),[s,c]=useState(e.page||0),[g,f]=useState(e.rowsPerPage||20),[p,h]=useState(e.selected||[]),[k,u]=useState(e.columns?e.columns.map(V=>V.id):[]),[C,m]=useState(e.showSummary||false),[y,x]=useState(()=>o()),[S,F]=useState([]),[D,I]=useState(new Set),[A,P]=useState(()=>{let V={};return (e.columns||[]).forEach($=>{V[$.id]=t($);}),V}),[v,M]=useState(null),[w,R]=useState(null),[T,W]=useState(null),[N,X]=useState(null),[se,ee]=useState(false),[te,Z]=useState(""),[Oe,tt]=useState("");useEffect(()=>{e.layout&&Be(e.layout);},[e.layout]),useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&d(e.orderBy);},[e.order,e.orderBy]),useEffect(()=>{e.selected!==void 0&&h(e.selected);},[e.selected]),useEffect(()=>{e.page!==void 0&&c(e.page);},[e.page]),useEffect(()=>{e.rowsPerPage!==void 0&&f(e.rowsPerPage);},[e.rowsPerPage]),useEffect(()=>{let V=o();x($=>$.filter(ke=>V.includes(ke)));},[o]),useEffect(()=>{P(V=>{let $={...V};return (e.columns||[]).forEach(K=>{$[K.id]===void 0&&($[K.id]=t(K));}),$});},[e.columns,t]);let qe=useMemo(()=>{let V=e.rows||[];return a&&(V=V.filter($=>Object.keys($).some(K=>String($[K]).toLowerCase().includes(a.toLowerCase())))),V},[e.rows,a]),oe=useMemo(()=>e.onSortChange||!l?qe:fb(qe,gb(n,l)),[qe,n,l,e.onSortChange]),Ie=useCallback(V=>{if(S.length===0)return V.map(Le=>({type:"row",data:Le,id:Le[e.rowKey||"id"]}));let $=[...V].sort((Le,he)=>{for(let Ne of S){if(Le[Ne]<he[Ne])return -1;if(Le[Ne]>he[Ne])return 1}return 0}),K=(Le,he=0)=>{if(he>=S.length)return Le;let Ne=S[he],Pe={},Ve=[];return Le.forEach(Fe=>{let Te=Fe[Ne],Ae=`${Ne}:${Te}`;Pe[Ae]||(Pe[Ae]={key:Ae,field:Ne,value:Te,children:[],count:0,level:he},Ve.push(Pe[Ae])),Pe[Ae].children.push(Fe),Pe[Ae].count++;}),Ve.forEach(Fe=>{Fe.children&&(Fe.children=K(Fe.children,he+1));}),Ve},ke=K($),we=(Le,he="")=>{let Ne=[];return Le.forEach(Pe=>{if(Pe.children){let Ve=he?`${he}>${Pe.key}`:Pe.key,Fe=D.has(Ve);Ne.push({type:"group",id:Ve,field:Pe.field,value:Pe.value,level:Pe.level,count:Pe.count,isExpanded:Fe,childIds:(function Te(Ae){let Wt=[];return Ae.children.forEach(To=>{To.children?Wt=Wt.concat(Te(To)):Wt.push(To[e.rowKey||"id"]);}),Wt})(Pe)}),Fe&&(Ne=Ne.concat(we(Pe.children,Ve)));}else Ne.push({type:"row",data:Pe,id:Pe[e.rowKey||"id"],level:S.length});}),Ne};return we(ke)},[S,D,e.rowKey]),ve=useCallback(V=>{if(S.length===0)return [];let $=[...V].sort((we,Le)=>{for(let he of S){if(we[he]<Le[he])return -1;if(we[he]>Le[he])return 1}return 0}),K=[],ke=(we,Le,he)=>{if(Le>=S.length)return;let Ne=S[Le],Pe=new Map;we.forEach(Ve=>{let Fe=Ve[Ne],Te=Pe.get(Fe);Te?Te.push(Ve):Pe.set(Fe,[Ve]);}),Pe.forEach((Ve,Fe)=>{let Te=`${Ne}:${Fe}`,Ae=he?`${he}>${Te}`:Te;K.push(Ae),ke(Ve,Le+1,Ae);});};return ke($,0,""),K},[S]),Je=useMemo(()=>Ie(oe),[oe,Ie]),nt=useMemo(()=>ve(oe),[oe,ve]),We=useMemo(()=>{let V=(e.rows||[]).length;return typeof e.count=="number"&&e.count>V},[e.count,e.rows]),et=useMemo(()=>We?Je:g>0?Je.slice(s*g,s*g+g):Je,[Je,s,g,We]),G=useMemo(()=>We&&typeof e.count=="number"?e.count:Je.length,[Je.length,We,e.count]),pe=V=>{I($=>{let K=new Set($);return K.has(V)?K.delete(V):K.add(V),K});},ue=V=>{let $=nt.filter(K=>K===V||K.startsWith(`${V}>`));I(K=>{let ke=new Set(K);return $.forEach(we=>ke.add(we)),ke});},be=V=>{I($=>{let K=new Set($);return Array.from(K).forEach(ke=>{(ke===V||ke.startsWith(`${V}>`))&&K.delete(ke);}),K});},Ce=V=>{if(!V){I(new Set);return}I(new Set(nt));},$e=V=>{let $=nt.filter(K=>K.startsWith(`${V}>`));return $.length===0?D.has(V):D.has(V)&&$.every(K=>D.has(K))},O=V=>{let $=l===V&&n==="asc",K=l===V&&n==="desc";if(e.onSortChange){$?e.onSortChange(V,"desc"):K?e.onSortChange("","asc"):e.onSortChange(V,"asc");return}$?(i("desc"),d(V)):K?(i("asc"),d("")):(i("asc"),d(V));},ce=(V,$)=>{P(K=>({...K,[V]:$}));},Y=V=>{if(V.target.checked){let $=qe.map(K=>K[e.rowKey||"id"]);h($),e.onSelectionChange&&e.onSelectionChange($);return}h([]),e.onSelectionChange&&e.onSelectionChange([]);},le=(V,$)=>{let K=$[e.rowKey||"id"],ke=p.indexOf(K),we=[];ke===-1?we=we.concat(p,K):ke===0?we=we.concat(p.slice(1)):ke===p.length-1?we=we.concat(p.slice(0,-1)):ke>0&&(we=we.concat(p.slice(0,ke),p.slice(ke+1))),h(we),e.onSelectionChange&&e.onSelectionChange(we);},Ee=V=>{c(V),e.onPageChange&&e.onPageChange(V);},xe=V=>{f(V),c(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(V);},St=V=>{let $=k.indexOf(V),K=[...k];$===-1?K.push(V):K.splice($,1),u(K);},_t=V=>{let $=S.indexOf(V),K=[...S];$===-1?K.push(V):K.splice($,1),F(K);},jt=V=>{o().includes(V)&&x(K=>K.includes(V)?K.filter(ke=>ke!==V):[...K,V]);},ko=V=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:k,order:n,orderBy:l,grouping:S,columnWidths:A,showSummary:C,summaryColumns:y});},So=V=>{let{layout:$,layoutId:K}=as(V,e.tableKey||"default");K?(tt(K),Z(K)):(tt(""),Z("")),$&&($.visibleColumns&&u($.visibleColumns),$.order&&i($.order),$.orderBy&&d($.orderBy),$.grouping&&F($.grouping),$.columnWidths&&P($.columnWidths),$.showSummary!==void 0&&m(!!$.showSummary),Array.isArray($.summaryColumns)&&x($.summaryColumns));},Be=V=>{let $=V?.layoutData||V?.layout||V||{};$.visibleColumns&&u($.visibleColumns),$.order&&i($.order),$.orderBy!==void 0&&d($.orderBy),$.grouping&&F($.grouping),$.columnWidths&&P($.columnWidths),$.showSummary!==void 0&&m(!!$.showSummary),Array.isArray($.summaryColumns)&&x($.summaryColumns),I(new Set),c(0),V?.id&&Z(V.id),tt("");};useEffect(()=>{e.layout&&So({layout:e.layout});},[e.layout]);let ye=V=>{V.preventDefault(),X(N===null?{mouseX:V.clientX+2,mouseY:V.clientY-6}:null);},wt=()=>{X(null);},ze=useMemo(()=>{if(!C)return {};let V={};e.columns.forEach(K=>{if(K.numeric&&y.includes(K.id)){let ke=qe.reduce((we,Le)=>{let he=parseFloat(Le[K.id]);return we+(isNaN(he)?0:he)},0);V[K.id]=ke.toFixed(2);}else V[K.id]="";});let $=e.columns.find(K=>k.includes(K.id));return $&&!$.numeric&&(V[$.id]="Total"),V},[qe,e.columns,C,y,k]),Ot=()=>{if(!e.columns||!qe)return;let V=e.columns.map(Le=>Le.label).join(","),$=qe.map(Le=>e.columns.map(he=>{let Ne=Le[he.id];return `"${(Ne==null?"":String(Ne)).replace(/"/g,'""')}"`}).join(",")).join(`
|
|
2
2
|
`),K=`data:text/csv;charset=utf-8,${V}
|
|
3
|
-
${O}`,be=encodeURI(K),Ce=document.createElement("a");Ce.setAttribute("href",be),Ce.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(Ce),Ce.click(),document.body.removeChild(Ce);},wo=()=>{te(true);},_a=()=>{te(false);};return {isMobile:false,columns:e.columns,order:n,orderBy:l,filterText:a,setFilterText:r,visibleColumns:w,setVisibleColumns:p,showSummary:v,setShowSummary:m,summaryColumns:y,grouping:k,setGrouping:F,expandedGroups:S,setExpandedGroups:T,groupAnchorEl:I,setGroupAnchorEl:P,summaryAnchorEl:M,setSummaryAnchorEl:$,columnWidths:A,setColumnWidths:R,anchorEl:C,setAnchorEl:D,contextMenu:N,setContextMenu:X,sensors:void 0,sortedAndFilteredRows:j,visibleRows:Fe,summaryRow:Ee,page:s,setPage:Xe,rowsPerPage:g,setRowsPerPage:Ve,totalDisplayCount:xo,selected:u,setSelected:h,isAllExpanded:Ke.length>0&&Ke.every(V=>S.has(V)),handleColumnResize:he,handleRequestSort:H,handleSelectAllClick:pe,handleClick:ye,toggleSummaryColumn:Co,handleDragEnd:()=>{},handleExport:zt,handleContextMenu:ge,handleCloseContextMenu:xt,toggleColumnVisibility:co,toggleGroupExpand:jt,toggleGroupField:vo,handleToggleAll:Lt,handleExpandGroupRecursively:Qe,handleCollapseGroupRecursively:Mt,isGroupFullyExpanded:bt,handleLayoutLoad:Me,handleVariantLoad:So,handleLayoutSave:ko,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:w,order:n,orderBy:l,grouping:k,columnWidths:A,showSummary:v,summaryColumns:y},currentLayoutId:re,layoutIdToLoad:U,onPageChange:Xe,onRowsPerPageChange:Ve,graphReportOpen:oe,handleOpenGraphReport:wo,handleCloseGraphReport:_a}};var kD=e=>jsx(gb,{...e}),SD=e=>jsx(Cl,{...e}),wD=e=>jsx(Fp,{...e}),TD=e=>jsx(Nf,{...e}),ID=e=>jsx(Vf,{...e}),Fa=e=>{let{t}=Z(),o="0.85rem",{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:l,actions:d,extraTools:s,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:u=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:w,filterConfig:p,rowKey:v,tableKey:m="default",graphReport:y,quickCreate:x,quickEdit:k,quickDelete:F,serviceUrl:S}=e,T=a||t("table.title.default"),{isMobile:A,columns:R,order:C,orderBy:D,filterText:I,setFilterText:P,visibleColumns:M,showSummary:$,setShowSummary:N,summaryColumns:X,grouping:oe,setGrouping:te,expandedGroups:re,groupAnchorEl:Q,setGroupAnchorEl:U,summaryAnchorEl:Y,setSummaryAnchorEl:Re,columnWidths:j,anchorEl:fe,setAnchorEl:Se,contextMenu:Ne,sensors:Ke,sortedAndFilteredRows:ve,summaryRow:Fe,visibleRows:xo,isAllExpanded:jt,page:Qe,setPage:Mt,rowsPerPage:Lt,setRowsPerPage:bt,totalDisplayCount:H,setSelected:he,handleColumnResize:pe,handleRequestSort:ye,handleSelectAllClick:Xe,handleClick:Ve,toggleSummaryColumn:co,handleDragEnd:vo,handleExport:Co,handleContextMenu:ko,handleCloseContextMenu:So,toggleColumnVisibility:Me,toggleGroupExpand:ge,toggleGroupField:xt,handleToggleAll:Ee,handleExpandGroupRecursively:zt,handleCollapseGroupRecursively:wo,isGroupFullyExpanded:_a,handleLayoutLoad:V,handleVariantLoad:O,handleLayoutSave:K,effectiveAppId:be,currentLayoutData:Ce,currentLayoutId:Be,layoutIdToLoad:me,graphReportOpen:Le,handleOpenGraphReport:we,handleCloseGraphReport:ze}=Qr(e),Ae=y?.enabled??false,ke=Ae&&(y?.interaction?.enabled??true),De=Ki(),Nt=!!x?.enabled,To=!!k?.enabled,gt=!!F?.enabled,vt=x?.fields,po=x?.excludeFields||[],va=x?.initialValues||{},[Pr,Io]=ct__default.useState(false),[Xt,Za]=ct__default.useState(false),[Qo,Vt]=ct__default.useState({}),[Qt,At]=ct__default.useState(false),[Oe,Yo]=ct__default.useState(false),[Wo,Jo]=ct__default.useState({}),[ja,$o]=ct__default.useState(false),[Xa,Qa]=ct__default.useState(false),Ho=u||Xt||Oe||Xa,ea=ct__default.useMemo(()=>{let L=[...R];if(Array.isArray(vt)&&vt.length>0){let _=new Set(vt);L=L.filter(q=>_.has(q.id));}if(po.length>0){let _=new Set(po);L=L.filter(q=>!_.has(q.id));}return L.filter(_=>!!_?.id)},[R,po,vt]),Ca=v||"id",Ot=ct__default.useMemo(()=>{let L=new Set(i);return ve.filter(_=>L.has(_?.[Ca]))},[i,ve,Ca]),Po=Ot.length===1?Ot[0]:null,ta=k?.fields,uo=k?.excludeFields||[],Go=k?.editableFields||[],Ya=k?.nonEditableFields||[],Rr=k?.primaryKeys?.length?k.primaryKeys:[Ca],ka=ct__default.useMemo(()=>{let L=[...R];if(Array.isArray(ta)&&ta.length>0){let _=new Set(ta);L=L.filter(q=>_.has(q.id));}if(uo.length>0){let _=new Set(uo);L=L.filter(q=>!_.has(q.id));}return L.filter(_=>!!_?.id)},[R,uo,ta]),Ja=ct__default.useMemo(()=>new Set(Rr),[Rr]),oa=ct__default.useMemo(()=>new Set(Go),[Go]),Ut=ct__default.useMemo(()=>new Set(Ya),[Ya]),Ro=ct__default.useCallback(L=>oa.size>0?oa.has(L):!(Ut.has(L)||Ja.has(L)),[oa,Ut,Ja]);ct__default.useEffect(()=>{!Le&&De.hasActiveFilters&&De.clearAll();},[Le,De.hasActiveFilters,De.clearAll]);let Dr=()=>{let L={};ea.forEach(_=>{L[_.id]=va[_.id]??"";}),Vt(L),Io(true);},er=()=>{Xt||Io(false);},Mr=(L,_)=>{Vt(q=>({...q,[L]:_}));},Ar=async()=>{if(!x?.onSubmit){Io(false);return}try{Za(!0),await x.onSubmit(Qo),Io(!1);}finally{Za(false);}},Br=()=>{if(!Po)return;let L={};ka.forEach(q=>{L[q.id]=Po[q.id]??"";});let _=k?.getInitialValues?{...L,...k.getInitialValues(Po)}:L;Jo(_),At(true);},Yt=()=>{Oe||At(false);},Fr=(L,_)=>{Jo(q=>({...q,[L]:_}));},Er=async()=>{if(Po){if(!k?.onSubmit){At(false);return}try{Yo(!0),await k.onSubmit(Wo,Po),At(!1);}finally{Yo(false);}}},tr=()=>{Ot.length!==0&&$o(true);},aa=()=>{Xa||$o(false);},Sa=async()=>{if(Ot.length===0){$o(false);return}if(!F?.onConfirm){$o(false),he([]),l?.([]);return}try{Qa(!0),await F.onConfirm(Ot),$o(!1),he([]),l?.([]);}finally{Qa(false);}},wa=ve,{fieldMapping:b}=_r({rows:wa,config:{...y,title:y?.title||`${T} ${t("graph.reportTitle")}`}}),B=ct__default.useMemo(()=>ke?De.applyRows(wa,b):wa,[ke,De.applyRows,wa,b]),{model:E}=_r({rows:B,config:{...y,title:y?.title||`${T} ${t("graph.reportTitle")}`,fieldMapping:b}}),W=E.table.columns.map(L=>({id:L.id,label:L.label,align:L.align||"left",minWidth:120,numeric:L.align==="right"})),ee=be?jsx(ts,{appId:be,tableKey:m,currentLayoutData:Ce,onLayoutLoad:V,targetLayoutId:me,activeLayoutId:Be,serviceUrl:S??p?.serviceUrl}):null,ue=jsxs(Fragment,{children:[jsx(zr,{groupAnchorEl:Q,setGroupAnchorEl:U,grouping:oe,setGrouping:te,columns:R,toggleGroupField:xt}),jsx(Nr,{anchorEl:fe,setAnchorEl:Se,columns:R,visibleColumns:M,toggleColumnVisibility:Me}),jsx(Ii,{anchorEl:Y,setAnchorEl:Re,showSummary:$,setShowSummary:N,columns:R,summaryColumns:X,toggleSummaryColumn:co}),jsx(Pi,{contextMenu:Ne,handleCloseContextMenu:So,columns:R,visibleColumns:M,toggleColumnVisibility:Me})]});return A?jsxs(Hn,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[p&&jsx(cr,{fields:p.fields,filters:p.filters,onFilterChange:p.onFilterChange,onSearch:p.onSearch,variants:p.variants||[],currentVariantId:p.currentVariantId,onVariantLoad:p.onVariantLoad,onVariantSave:p.onVariantSave,onVariantDelete:p.onVariantDelete,onVariantSetDefault:p.onVariantSetDefault,appId:p.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:Ce}],variantService:p.variantService,serviceUrl:S??p.serviceUrl}),jsx(Dd,{title:T,loading:u,showSummary:$,setShowSummary:N,setAnchorEl:Se,setSummaryAnchorEl:Re,filterText:I,setFilterText:P,sortedAndFilteredRows:ve,selected:i,columns:R,visibleColumns:M,summaryRow:Fe,handleClick:Ve,selectionMode:n}),ue]}):jsxs(Hn,{sx:{width:g?"100%":"auto",mb:c?0:2,...c?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[p&&jsx(Hn,{sx:{mb:2},children:jsx(cr,{fields:p.fields,filters:p.filters,onFilterChange:p.onFilterChange,onSearch:p.onSearch,variants:p.variants||[],currentVariantId:p.currentVariantId,onVariantLoad:L=>{O(L),p.onVariantLoad&&p.onVariantLoad(L);},onVariantSave:p.onVariantSave,onVariantDelete:p.onVariantDelete,onVariantSetDefault:p.onVariantSetDefault,loading:u,appId:p.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:Ce}],currentLayoutId:Be,layoutRefs:[{tableKey:m,layoutId:Be}],variantService:p.variantService,serviceUrl:S??p.serviceUrl})}),jsxs(ub,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative","&::before":Ho?{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(Ci,{filterText:I,setFilterText:P,onRowsPerPageChange:bt,rowsPerPage:Lt,rowsPerPageOptions:h,page:Qe,count:H,onPageChange:Mt,actions:d,extraTools:s,grouping:oe,setGroupAnchorEl:U,showSummary:$,setShowSummary:N,setAnchorEl:Se,setSummaryAnchorEl:Re,handleExport:Co,showCreateButton:Nt,onOpenCreateDialog:Dr,showEditButton:To,onOpenEditDialog:Br,editDisabled:Ot.length!==1,showDeleteButton:gt,onOpenDeleteConfirm:tr,deleteDisabled:Ot.length===0,onLayoutSave:w||p?.variantService&&p?.appId?K:void 0,loading:u,layoutManager:ee,onOpenGraphReport:Ae?we:void 0}),jsx(Fp,{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:Ke,collisionDetection:closestCenter,onDragEnd:vo,modifiers:[restrictToHorizontalAxis],children:jsxs(mb,{sx:{minWidth:g?750:"auto",width:g?"100%":"auto",tableLayout:Object.keys(j).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:o}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsx(ki,{columns:R,visibleColumns:M,order:C,orderBy:D,onRequestSort:ye,onContextMenu:ko,selectionMode:n,grouping:oe,isAllExpanded:jt,handleToggleAll:Ee,rowCount:ve.length,numSelected:i.length,onSelectAllClick:Xe,columnWidths:j,onColumnResize:pe}),jsx(Id,{visibleRows:xo,columns:R,visibleColumns:M,selectionMode:n,selected:i,orderBy:D,loading:u,expandedGroups:re,toggleGroupExpand:ge,handleExpandGroupRecursively:zt,handleCollapseGroupRecursively:wo,isGroupFullyExpanded:_a,handleClick:Ve,onSelectionChange:l,grouping:oe,rowKeyProp:v,page:Qe,rowsPerPage:Lt}),$&&jsx(Pd,{showSummary:$,columns:R,visibleColumns:M,summaryRow:Fe,selectionMode:n?.toString(),grouping:oe,orderBy:D,zIndex:3})]})})})]}),Nt&&jsxs(Pp,{open:Pr,onClose:er,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:L=>`1px solid ${L.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Rp,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:x?.title||t("quickCreate.createWithTitle",{title:T})}),jsx(Dp,{sx:{pt:"8px !important"},children:jsxs(Hn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[ea.map(L=>{let _=L.type==="number"||L.numeric?"number":L.type==="date"?"date":"text",q=L.label||L.id;return jsx(Ap,{label:q,value:Qo[L.id]??"",onChange:_e=>Mr(L.id,_e.target.value),type:_,size:"small",fullWidth:true,InputLabelProps:{shrink:_==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${L.id}`)}),x?.description&&jsx(Bp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:x.description})]})}),jsxs(Mp,{sx:{px:3,pb:2},children:[jsx(rs,{onClick:er,sx:{fontSize:"0.85rem"},disabled:Xt,children:x?.cancelLabel||t("common.cancel")}),jsx(rs,{onClick:Ar,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:Xt,children:x?.submitLabel||t("common.save")})]})]}),To&&jsxs(Pp,{open:Qt,onClose:Yt,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:L=>`1px solid ${L.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Rp,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:k?.title||t("quickEdit.editWithTitle",{title:T})}),jsx(Dp,{sx:{pt:"8px !important"},children:jsxs(Hn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[ka.map(L=>{let _=L.type==="number"||L.numeric?"number":L.type==="date"?"date":"text",q=L.label||L.id,_e=Ro(L.id);return jsx(Ap,{label:q,value:Wo[L.id]??"",onChange:z=>Fr(L.id,z.target.value),type:_,size:"small",fullWidth:true,disabled:!_e,InputLabelProps:{shrink:_==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${L.id}`)}),k?.description&&jsx(Bp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:k.description})]})}),jsxs(Mp,{sx:{px:3,pb:2},children:[jsx(rs,{onClick:Yt,sx:{fontSize:"0.85rem"},disabled:Oe,children:k?.cancelLabel||t("common.cancel")}),jsx(rs,{onClick:Er,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:Oe||!Po,children:k?.submitLabel||t("common.save")})]})]}),gt&&jsx(In,{open:ja,type:"warning",title:F?.title||t("quickDelete.confirmTitle"),message:F?.message||(Ot.length>1?t("quickDelete.confirmMessageMultiple",{count:Ot.length}):t("quickDelete.confirmMessageSingle")),confirmText:F?.confirmText||t("common.delete"),cancelText:F?.cancelText||t("common.cancel"),onClose:aa,onConfirm:Sa}),ue,Ae&&jsx(Gi,{open:Le,onClose:ze,model:E,aiAssistant:y?.aiAssistant,interaction:ke?{enabled:true,filters:De.filters,fieldMapping:b,onPrimaryDimensionClick:L=>De.setFilter("primaryDimension",L),onSecondaryDimensionClick:L=>De.setFilter("secondaryDimension",L),onStatusClick:L=>De.setFilter("status",L),onClearFilter:De.clearFilter,onClearAll:De.clearAll}:void 0,tableContent:jsx(Fa,{appId:be||"graph-report-internal",title:t("graph.dataBody"),columns:W,rows:E.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},PD=Fa;var ED=({id:e,title:t,hideHeader:o=true,filterConfig:a,tableProps:r,children:n,spacing:i=1,mode:l="separated"})=>{let d=a?{...a,appId:a.appId||e}:void 0,s={...r,appId:r.appId||e};return jsxs(vd,{title:t,hideHeader:o,children:[jsxs(Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[l==="separated"&&d&&jsx(Box,{sx:{flexShrink:0},children:jsx(cr,{...d})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsx(Fa,{...s,fitContainer:true,filterConfig:l==="integrated"?d:void 0})})]}),n]})};var WD=({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:d}=Z(),[s,c]=useState(false),[g,f]=useState([]),[u,h]=useState({}),[w,p]=useState(e.variants||[]),[v,m]=useState(e.layout||null),[y,x]=useState(""),[k,F]=useState(0),[S,T]=useState(0),[A,R]=useState(o),[C,D]=useState([]),[I,P]=useState("asc"),[M,$]=useState("");useEffect(()=>{let j={};e.filters.forEach(fe=>{fe.defaultValue!==void 0&&(j[fe.id]=fe.defaultValue);}),h(j);},[e.filters]);let N=useCallback(async(j,fe,Se,Ne,Ke)=>{c(true);try{let ve={...j,page:fe+1,limit:Se,sort:Ke,order:Ne},Fe;t?Fe=await t(ve):typeof e.api=="function"?Fe=await e.api(ve):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,ve),Fe={rows:[],total:0}):(console.warn("No API configured for report"),Fe={rows:[],total:0}),Fe&&(f(Fe.rows||[]),F(Fe.total||0));}catch(ve){console.error("Failed to fetch report data",ve);}finally{c(false);}},[e.api,t]);useEffect(()=>{N(u,S,A,I,M);},[N,S,A,I,M]);let X=()=>{T(0),N(u,0,A,I,M);},oe=j=>{T(0),R(j);},te=(j,fe)=>{P(fe),$(j);},re=j=>{h(j);},Q=j=>{x(j?.id||"");let fe=Tp(j,r);if(fe){let Ne=fe.values??fe;h(Ne),N(Ne,0,A,I,M),T(0);}let{layout:Se}=os(j,r);Se&&m(Se);},U=j=>{let fe={...j,id:Date.now().toString(),createdAt:new Date().toISOString()};p(Se=>[...Se,fe]);},Y=j=>{m(j);};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:Q,onVariantSave:U,onVariantDelete:j=>p(fe=>fe.filter(Se=>Se.id!==j)),onVariantSetDefault:j=>{p(fe=>fe.map(Se=>({...Se,isDefault:Se.id===j})));},variants:w,currentVariantId:y,variantService:l,serviceUrl:i},tableProps:{appId:e.id,tableKey:r,columns:e.columns,rows:g,loading:s,rowKey:"id",count:k,page:S,rowsPerPage:A,rowsPerPageOptions:a,onPageChange:T,onRowsPerPageChange:oe,selectionMode:"multiple",selected:C,onSelectionChange:D,onLayoutSave:Y,layout:v,title:e.title,showSummary:true,order:I,orderBy:M,serviceUrl:i,onSortChange:te,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${d("graph.reportTitle")}`}}},filters:u,rows:g,loading:s,refresh:X}};var wb=e=>[...e].sort((t,o)=>o.value-t.value),GD=({bars:e=[],lines:t=[],combos:o=[],heatmap:a=[],pies:r=[],waterfalls:n=[]})=>{let i=useMemo(()=>wb(e),[e]),l=useMemo(()=>[...t],[t]),d=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:d,heatmap:s,pies:c,waterfalls:g}};var ZD=({apiKey:e,query:t,zoom:o=14,mapType:a="roadmap"})=>useMemo(()=>!e||!t?"":En({apiKey:e,query:t,zoom:o,mapType:a}),[e,t,o,a]),jD=({keyword:e,location:t})=>useMemo(()=>Vi({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0}),[e,t]);var Gn=({code:e,language:t="text",copyable:o=true,showLineNumbers:a=false,wrapLongLines:r=false,maxHeight:n})=>{let[i,l]=useState(false),d=useMemo(()=>e.replace(/\n$/,"").split(`
|
|
4
|
-
`),[e]);return jsxs(Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:1.5,overflow:"hidden",bgcolor:"background.paper"},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:1,py:.6,bgcolor:"action.hover",borderBottom:"1px solid",borderColor:"divider"},children:[jsx(Typography,{variant:"caption",sx:{textTransform:"uppercase",letterSpacing:.5,color:"text.secondary",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:t}),o&&jsx(Tooltip,{title:i?"Copied":"Copy",children:jsx(IconButton,{size:"small",onClick:async()=>{try{await navigator.clipboard.writeText(e),l(!0),window.setTimeout(()=>l(!1),1400);}catch{l(false);}},children:i?jsx(
|
|
5
|
-
`).map(i=>i.trim()).filter(Boolean);if(t.length<2)return null;let o=
|
|
3
|
+
${$}`,ke=encodeURI(K),we=document.createElement("a");we.setAttribute("href",ke),we.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(we),we.click(),document.body.removeChild(we);},wo=()=>{ee(true);},_a=()=>{ee(false);};return {isMobile:false,columns:e.columns,order:n,orderBy:l,filterText:a,setFilterText:r,visibleColumns:k,setVisibleColumns:u,showSummary:C,setShowSummary:m,summaryColumns:y,grouping:S,setGrouping:F,expandedGroups:D,setExpandedGroups:I,groupAnchorEl:w,setGroupAnchorEl:R,summaryAnchorEl:T,setSummaryAnchorEl:W,columnWidths:A,setColumnWidths:P,anchorEl:v,setAnchorEl:M,contextMenu:N,setContextMenu:X,sensors:void 0,sortedAndFilteredRows:oe,visibleRows:et,summaryRow:ze,page:s,setPage:Ee,rowsPerPage:g,setRowsPerPage:xe,totalDisplayCount:G,selected:p,setSelected:h,isAllExpanded:nt.length>0&&nt.every(V=>D.has(V)),handleColumnResize:ce,handleRequestSort:O,handleSelectAllClick:Y,handleClick:le,toggleSummaryColumn:jt,handleDragEnd:()=>{},handleExport:Ot,handleContextMenu:ye,handleCloseContextMenu:wt,toggleColumnVisibility:St,toggleGroupExpand:pe,toggleGroupField:_t,handleToggleAll:Ce,handleExpandGroupRecursively:ue,handleCollapseGroupRecursively:be,isGroupFullyExpanded:$e,handleLayoutLoad:Be,handleVariantLoad:So,handleLayoutSave:ko,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:k,order:n,orderBy:l,grouping:S,columnWidths:A,showSummary:C,summaryColumns:y},currentLayoutId:te,layoutIdToLoad:Oe,onPageChange:Ee,onRowsPerPageChange:xe,graphReportOpen:se,handleOpenGraphReport:wo,handleCloseGraphReport:_a}};var MD=e=>jsx(bb,{...e}),AD=e=>jsx(wl,{...e}),BD=e=>jsx(Np,{...e}),FD=e=>jsx($f,{...e}),ED=e=>jsx(Hf,{...e}),Ea=e=>{let{t}=j(),o="0.85rem",{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:l,actions:d,extraTools:s,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:p=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:k,filterConfig:u,rowKey:C,tableKey:m="default",graphReport:y,quickCreate:x,quickEdit:S,quickDelete:F,serviceUrl:D}=e,I=a||t("table.title.default"),{isMobile:A,columns:P,order:v,orderBy:M,filterText:w,setFilterText:R,visibleColumns:T,showSummary:W,setShowSummary:N,summaryColumns:X,grouping:se,setGrouping:ee,expandedGroups:te,groupAnchorEl:Z,setGroupAnchorEl:Oe,summaryAnchorEl:tt,setSummaryAnchorEl:qe,columnWidths:oe,anchorEl:Ie,setAnchorEl:ve,contextMenu:Je,sensors:nt,sortedAndFilteredRows:We,summaryRow:et,visibleRows:G,isAllExpanded:pe,page:ue,setPage:be,rowsPerPage:Ce,setRowsPerPage:$e,totalDisplayCount:O,setSelected:ce,handleColumnResize:Y,handleRequestSort:le,handleSelectAllClick:Ee,handleClick:xe,toggleSummaryColumn:St,handleDragEnd:_t,handleExport:jt,handleContextMenu:ko,handleCloseContextMenu:So,toggleColumnVisibility:Be,toggleGroupExpand:ye,toggleGroupField:wt,handleToggleAll:ze,handleExpandGroupRecursively:Ot,handleCollapseGroupRecursively:wo,isGroupFullyExpanded:_a,handleLayoutLoad:V,handleVariantLoad:$,handleLayoutSave:K,effectiveAppId:ke,currentLayoutData:we,currentLayoutId:Le,layoutIdToLoad:he,graphReportOpen:Ne,handleOpenGraphReport:Pe,handleCloseGraphReport:Ve}=Qr(e),Fe=y?.enabled??false,Te=Fe&&(y?.interaction?.enabled??true),Ae=qi(),Wt=!!x?.enabled,To=!!S?.enabled,xt=!!F?.enabled,Tt=x?.fields,go=x?.excludeFields||[],Ca=x?.initialValues||{},[Pr,Io]=gt__default.useState(false),[eo,ja]=gt__default.useState(false),[Qo,$t]=gt__default.useState({}),[to,Lt]=gt__default.useState(false),[He,Yo]=gt__default.useState(false),[Wo,Jo]=gt__default.useState({}),[Za,$o]=gt__default.useState(false),[Xa,Qa]=gt__default.useState(false),Ho=p||eo||He||Xa,ea=gt__default.useMemo(()=>{let L=[...P];if(Array.isArray(Tt)&&Tt.length>0){let _=new Set(Tt);L=L.filter(q=>_.has(q.id));}if(go.length>0){let _=new Set(go);L=L.filter(q=>!_.has(q.id));}return L.filter(_=>!!_?.id)},[P,go,Tt]),ka=C||"id",Ht=gt__default.useMemo(()=>{let L=new Set(i);return We.filter(_=>L.has(_?.[ka]))},[i,We,ka]),Po=Ht.length===1?Ht[0]:null,ta=S?.fields,fo=S?.excludeFields||[],Go=S?.editableFields||[],Ya=S?.nonEditableFields||[],Rr=S?.primaryKeys?.length?S.primaryKeys:[ka],Sa=gt__default.useMemo(()=>{let L=[...P];if(Array.isArray(ta)&&ta.length>0){let _=new Set(ta);L=L.filter(q=>_.has(q.id));}if(fo.length>0){let _=new Set(fo);L=L.filter(q=>!_.has(q.id));}return L.filter(_=>!!_?.id)},[P,fo,ta]),Ja=gt__default.useMemo(()=>new Set(Rr),[Rr]),oa=gt__default.useMemo(()=>new Set(Go),[Go]),Zt=gt__default.useMemo(()=>new Set(Ya),[Ya]),Ro=gt__default.useCallback(L=>oa.size>0?oa.has(L):!(Zt.has(L)||Ja.has(L)),[oa,Zt,Ja]);gt__default.useEffect(()=>{!Ne&&Ae.hasActiveFilters&&Ae.clearAll();},[Ne,Ae.hasActiveFilters,Ae.clearAll]);let Dr=()=>{let L={};ea.forEach(_=>{L[_.id]=Ca[_.id]??"";}),$t(L),Io(true);},er=()=>{eo||Io(false);},Mr=(L,_)=>{$t(q=>({...q,[L]:_}));},Ar=async()=>{if(!x?.onSubmit){Io(false);return}try{ja(!0),await x.onSubmit(Qo),Io(!1);}finally{ja(false);}},Br=()=>{if(!Po)return;let L={};Sa.forEach(q=>{L[q.id]=Po[q.id]??"";});let _=S?.getInitialValues?{...L,...S.getInitialValues(Po)}:L;Jo(_),Lt(true);},oo=()=>{He||Lt(false);},Fr=(L,_)=>{Jo(q=>({...q,[L]:_}));},Er=async()=>{if(Po){if(!S?.onSubmit){Lt(false);return}try{Yo(!0),await S.onSubmit(Wo,Po),Lt(!1);}finally{Yo(false);}}},tr=()=>{Ht.length!==0&&$o(true);},aa=()=>{Xa||$o(false);},wa=async()=>{if(Ht.length===0){$o(false);return}if(!F?.onConfirm){$o(false),ce([]),l?.([]);return}try{Qa(!0),await F.onConfirm(Ht),$o(!1),ce([]),l?.([]);}finally{Qa(false);}},Ta=We,{fieldMapping:b}=_r({rows:Ta,config:{...y,title:y?.title||`${I} ${t("graph.reportTitle")}`}}),B=gt__default.useMemo(()=>Te?Ae.applyRows(Ta,b):Ta,[Te,Ae.applyRows,Ta,b]),{model:E}=_r({rows:B,config:{...y,title:y?.title||`${I} ${t("graph.reportTitle")}`,fieldMapping:b}}),H=E.table.columns.map(L=>({id:L.id,label:L.label,align:L.align||"left",minWidth:120,numeric:L.align==="right"})),J=ke?jsx(os,{appId:ke,tableKey:m,currentLayoutData:we,onLayoutLoad:V,targetLayoutId:he,activeLayoutId:Le,serviceUrl:D??u?.serviceUrl}):null,fe=jsxs(Fragment,{children:[jsx(zr,{groupAnchorEl:Z,setGroupAnchorEl:Oe,grouping:se,setGrouping:ee,columns:P,toggleGroupField:wt}),jsx(Nr,{anchorEl:Ie,setAnchorEl:ve,columns:P,visibleColumns:T,toggleColumnVisibility:Be}),jsx(Pi,{anchorEl:tt,setAnchorEl:qe,showSummary:W,setShowSummary:N,columns:P,summaryColumns:X,toggleSummaryColumn:St}),jsx(Ri,{contextMenu:Je,handleCloseContextMenu:So,columns:P,visibleColumns:T,toggleColumnVisibility:Be})]});return A?jsxs(Hn,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[u&&jsx(la,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:u.onVariantLoad,onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,appId:u.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:we}],variantService:u.variantService,serviceUrl:D??u.serviceUrl}),jsx(Fd,{title:I,loading:p,showSummary:W,setShowSummary:N,setAnchorEl:ve,setSummaryAnchorEl:qe,filterText:w,setFilterText:R,sortedAndFilteredRows:We,selected:i,columns:P,visibleColumns:T,summaryRow:et,handleClick:xe,selectionMode:n}),fe]}):jsxs(Hn,{sx:{width:g?"100%":"auto",mb:c?0:2,...c?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[u&&jsx(Hn,{sx:{mb:2},children:jsx(la,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:L=>{$(L),u.onVariantLoad&&u.onVariantLoad(L);},onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,loading:p,appId:u.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:we}],currentLayoutId:Le,layoutRefs:[{tableKey:m,layoutId:Le}],variantService:u.variantService,serviceUrl:D??u.serviceUrl})}),jsxs(hb,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative","&::before":Ho?{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(ki,{filterText:w,setFilterText:R,onRowsPerPageChange:$e,rowsPerPage:Ce,rowsPerPageOptions:h,page:ue,count:O,onPageChange:be,actions:d,extraTools:s,grouping:se,setGroupAnchorEl:Oe,showSummary:W,setShowSummary:N,setAnchorEl:ve,setSummaryAnchorEl:qe,handleExport:jt,showCreateButton:Wt,onOpenCreateDialog:Dr,showEditButton:To,onOpenEditDialog:Br,editDisabled:Ht.length!==1,showDeleteButton:xt,onOpenDeleteConfirm:tr,deleteDisabled:Ht.length===0,onLayoutSave:k||u?.variantService&&u?.appId?K:void 0,loading:p,layoutManager:J,onOpenGraphReport:Fe?Pe:void 0}),jsx(Np,{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:nt,collisionDetection:closestCenter,onDragEnd:_t,modifiers:[restrictToHorizontalAxis],children:jsxs(yb,{sx:{minWidth:g?750:"auto",width:g?"100%":"auto",tableLayout:Object.keys(oe).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:o}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsx(Si,{columns:P,visibleColumns:T,order:v,orderBy:M,onRequestSort:le,onContextMenu:ko,selectionMode:n,grouping:se,isAllExpanded:pe,handleToggleAll:ze,rowCount:We.length,numSelected:i.length,onSelectAllClick:Ee,columnWidths:oe,onColumnResize:Y}),jsx(Md,{visibleRows:G,columns:P,visibleColumns:T,selectionMode:n,selected:i,orderBy:M,loading:p,expandedGroups:te,toggleGroupExpand:ye,handleExpandGroupRecursively:Ot,handleCollapseGroupRecursively:wo,isGroupFullyExpanded:_a,handleClick:xe,onSelectionChange:l,grouping:se,rowKeyProp:C,page:ue,rowsPerPage:Ce}),W&&jsx(Ad,{showSummary:W,columns:P,visibleColumns:T,summaryRow:et,selectionMode:n?.toString(),grouping:se,orderBy:M,zIndex:3})]})})})]}),Wt&&jsxs(Ap,{open:Pr,onClose:er,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:L=>`1px solid ${L.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Bp,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:x?.title||t("quickCreate.createWithTitle",{title:I})}),jsx(Fp,{sx:{pt:"8px !important"},children:jsxs(Hn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[ea.map(L=>{let _=L.type==="number"||L.numeric?"number":L.type==="date"?"date":"text",q=L.label||L.id;return jsx(Lp,{label:q,value:Qo[L.id]??"",onChange:Xe=>Mr(L.id,Xe.target.value),type:_,size:"small",fullWidth:true,InputLabelProps:{shrink:_==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${L.id}`)}),x?.description&&jsx(zp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:x.description})]})}),jsxs(Ep,{sx:{px:3,pb:2},children:[jsx(ns,{onClick:er,sx:{fontSize:"0.85rem"},disabled:eo,children:x?.cancelLabel||t("common.cancel")}),jsx(ns,{onClick:Ar,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:eo,children:x?.submitLabel||t("common.save")})]})]}),To&&jsxs(Ap,{open:to,onClose:oo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:L=>`1px solid ${L.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Bp,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:S?.title||t("quickEdit.editWithTitle",{title:I})}),jsx(Fp,{sx:{pt:"8px !important"},children:jsxs(Hn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Sa.map(L=>{let _=L.type==="number"||L.numeric?"number":L.type==="date"?"date":"text",q=L.label||L.id,Xe=Ro(L.id);return jsx(Lp,{label:q,value:Wo[L.id]??"",onChange:z=>Fr(L.id,z.target.value),type:_,size:"small",fullWidth:true,disabled:!Xe,InputLabelProps:{shrink:_==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${L.id}`)}),S?.description&&jsx(zp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:S.description})]})}),jsxs(Ep,{sx:{px:3,pb:2},children:[jsx(ns,{onClick:oo,sx:{fontSize:"0.85rem"},disabled:He,children:S?.cancelLabel||t("common.cancel")}),jsx(ns,{onClick:Er,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:He||!Po,children:S?.submitLabel||t("common.save")})]})]}),xt&&jsx(In,{open:Za,type:"warning",title:F?.title||t("quickDelete.confirmTitle"),message:F?.message||(Ht.length>1?t("quickDelete.confirmMessageMultiple",{count:Ht.length}):t("quickDelete.confirmMessageSingle")),confirmText:F?.confirmText||t("common.delete"),cancelText:F?.cancelText||t("common.cancel"),onClose:aa,onConfirm:wa}),fe,Fe&&jsx(Ui,{open:Ne,onClose:Ve,model:E,aiAssistant:y?.aiAssistant,interaction:Te?{enabled:true,filters:Ae.filters,fieldMapping:b,onPrimaryDimensionClick:L=>Ae.setFilter("primaryDimension",L),onSecondaryDimensionClick:L=>Ae.setFilter("secondaryDimension",L),onStatusClick:L=>Ae.setFilter("status",L),onClearFilter:Ae.clearFilter,onClearAll:Ae.clearAll}:void 0,tableContent:jsx(Ea,{appId:ke||"graph-report-internal",title:t("graph.dataBody"),columns:H,rows:E.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},LD=Ea;var HD=({id:e,title:t,hideHeader:o=true,filterConfig:a,tableProps:r,children:n,spacing:i=1,mode:l="separated"})=>{let d=a?{...a,appId:a.appId||e}:void 0,s={...r,appId:r.appId||e};return jsxs(wd,{title:t,hideHeader:o,children:[jsxs(Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[l==="separated"&&d&&jsx(Box,{sx:{flexShrink:0},children:jsx(la,{...d})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsx(Ea,{...s,fitContainer:true,filterConfig:l==="integrated"?d:void 0})})]}),n]})};var jD=({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:d}=j(),[s,c]=useState(false),[g,f]=useState([]),[p,h]=useState({}),[k,u]=useState(e.variants||[]),[C,m]=useState(e.layout||null),[y,x]=useState(""),[S,F]=useState(0),[D,I]=useState(0),[A,P]=useState(o),[v,M]=useState([]),[w,R]=useState("asc"),[T,W]=useState("");useEffect(()=>{let oe={};e.filters.forEach(Ie=>{Ie.defaultValue!==void 0&&(oe[Ie.id]=Ie.defaultValue);}),h(oe);},[e.filters]);let N=useCallback(async(oe,Ie,ve,Je,nt)=>{c(true);try{let We={...oe,page:Ie+1,limit:ve,sort:nt,order:Je},et;t?et=await t(We):typeof e.api=="function"?et=await e.api(We):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,We),et={rows:[],total:0}):(console.warn("No API configured for report"),et={rows:[],total:0}),et&&(f(et.rows||[]),F(et.total||0));}catch(We){console.error("Failed to fetch report data",We);}finally{c(false);}},[e.api,t]);useEffect(()=>{N(p,D,A,w,T);},[N,D,A,w,T]);let X=()=>{I(0),N(p,0,A,w,T);},se=oe=>{I(0),P(oe);},ee=(oe,Ie)=>{R(Ie),W(oe);},te=oe=>{h(oe);},Z=oe=>{x(oe?.id||"");let Ie=Dp(oe,r);if(Ie){let Je=Ie.values??Ie;h(Je),N(Je,0,A,w,T),I(0);}let{layout:ve}=as(oe,r);ve&&m(ve);},Oe=oe=>{let Ie={...oe,id:Date.now().toString(),createdAt:new Date().toISOString()};u(ve=>[...ve,Ie]);},tt=oe=>{m(oe);};return {pageProps:{id:e.id,title:e.title,mode:n,filterConfig:{appId:e.id,tableKey:r,fields:e.filters,filters:p,onFilterChange:te,onSearch:X,onVariantLoad:Z,onVariantSave:Oe,onVariantDelete:oe=>u(Ie=>Ie.filter(ve=>ve.id!==oe)),onVariantSetDefault:oe=>{u(Ie=>Ie.map(ve=>({...ve,isDefault:ve.id===oe})));},variants:k,currentVariantId:y,variantService:l,serviceUrl:i},tableProps:{appId:e.id,tableKey:r,columns:e.columns,rows:g,loading:s,rowKey:"id",count:S,page:D,rowsPerPage:A,rowsPerPageOptions:a,onPageChange:I,onRowsPerPageChange:se,selectionMode:"multiple",selected:v,onSelectionChange:M,onLayoutSave:tt,layout:C,title:e.title,showSummary:true,order:w,orderBy:T,serviceUrl:i,onSortChange:ee,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${d("graph.reportTitle")}`}}},filters:p,rows:g,loading:s,refresh:X}};var Rb=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(()=>Rb(e),[e]),l=useMemo(()=>[...t],[t]),d=useMemo(()=>[...o],[o]),s=useMemo(()=>[...a],[a]),c=useMemo(()=>{let f=r.reduce((p,h)=>p+h.value,0);return r.map(p=>({...p,percent:f>0?p.value/f*100:p.percent}))},[r]),g=useMemo(()=>[...n],[n]);return {bars:i,lines:l,combos:d,heatmap:s,pies:c,waterfalls:g}};var oM=({apiKey:e,query:t,zoom:o=14,mapType:a="roadmap"})=>useMemo(()=>!e||!t?"":En({apiKey:e,query:t,zoom:o,mapType:a}),[e,t,o,a]),aM=({keyword:e,location:t})=>useMemo(()=>Oi({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0}),[e,t]);var Gn=({code:e,language:t="text",copyable:o=true,showLineNumbers:a=false,wrapLongLines:r=false,maxHeight:n})=>{let[i,l]=useState(false),d=useMemo(()=>e.replace(/\n$/,"").split(`
|
|
4
|
+
`),[e]);return jsxs(Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:1.5,overflow:"hidden",bgcolor:"background.paper"},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:1,py:.6,bgcolor:"action.hover",borderBottom:"1px solid",borderColor:"divider"},children:[jsx(Typography,{variant:"caption",sx:{textTransform:"uppercase",letterSpacing:.5,color:"text.secondary",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:t}),o&&jsx(Tooltip,{title:i?"Copied":"Copy",children:jsx(IconButton,{size:"small",onClick:async()=>{try{await navigator.clipboard.writeText(e),l(!0),window.setTimeout(()=>l(!1),1400);}catch{l(false);}},children:i?jsx(Lb,{fontSize:"inherit"}):jsx(Eb,{fontSize:"inherit"})})})]}),jsx(Box,{component:"pre",sx:{m:0,p:1.25,fontSize:"0.82rem",lineHeight:1.55,overflow:"auto",maxHeight:n,bgcolor:"background.default",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:a?d.map((c,g)=>jsxs(Box,{sx:{display:"flex"},children:[jsx(Box,{component:"span",sx:{width:34,flexShrink:0,textAlign:"right",pr:1,color:"text.disabled",userSelect:"none"},children:g+1}),jsx(Box,{component:"span",sx:{whiteSpace:r?"pre-wrap":"pre",wordBreak:r?"break-word":"normal"},children:c})]},`${g}-${c}`)):jsx(Box,{component:"code",sx:{display:"block",whiteSpace:r?"pre-wrap":"pre",wordBreak:r?"break-word":"normal"},children:e})})]})};var Wb=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},$b=async e=>new Function("m","return import(m)")(e),Un=({expression:e,inline:t=false,allowKatex:o=false})=>{let a=useMemo(()=>Wb(e),[e]),[r,n]=useState("");return useEffect(()=>{let i=true;return (async()=>{if(!o||!a){n("");return}try{let d=await $b("katex"),c=(d?.default||d)?.renderToString?.(a,{displayMode:!t,throwOnError:!1,strict:"warn"});i&&typeof c=="string"&&n(c);}catch{i&&n("");}})(),()=>{i=false;}},[o,a,t]),a?r?jsx(Box,{component:t?"span":"div",sx:{display:t?"inline-flex":"block",my:t?0:.5,overflowX:"auto"},dangerouslySetInnerHTML:{__html:r}}):t?jsx(Box,{component:"code",sx:{px:.4,py:.05,borderRadius:.8,bgcolor:"action.hover",fontSize:"0.82em",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:a}):jsx(Box,{sx:{my:1,p:1,borderRadius:1.2,border:"1px dashed",borderColor:"divider",bgcolor:"background.paper"},children:jsx(Typography,{component:"pre",sx:{m:0,whiteSpace:"pre-wrap",fontSize:"0.9rem",lineHeight:1.5,fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:a})}):null};var jb=async e=>new Function("m","return import(m)")(e),Yl=({code:e,title:t="Mermaid Diagram",height:o=320,enabled:a=true})=>{let[r,n]=useState(""),[i,l]=useState(""),[d,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 p=await jb("mermaid"),h=p?.default||p;if(!h||typeof h.render!="function")throw new Error("Mermaid runtime is not available");h.initialize?.({startOnLoad:!1,securityLevel:"loose",theme:"default"});let k=await h.render(`orbcafe-mermaid-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,c),u=typeof k=="string"?k:k?.svg;g&&typeof u=="string"&&n(u);}catch(p){if(g){let h=p instanceof Error?p.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:[d&&jsx(Box,{sx:{minHeight:120,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(CircularProgress,{size:20})}),!d&&r&&jsx(Box,{sx:{maxHeight:o,overflow:"auto","& svg":{display:"block",mx:"auto",maxWidth:"100%",height:"auto"}},dangerouslySetInnerHTML:{__html:r}}),!d&&!r&&jsxs(Box,{children:[i&&jsx(Alert,{severity:"info",sx:{mb:1},children:i}),jsx(Gn,{code:c,language:"mermaid",copyable:true,showLineNumbers:true,wrapLongLines:true})]})]})]})};var Jl=e=>e.trim().replace(/^\|/,"").replace(/\|$/,"").split("|").map(o=>o.trim()),ox=e=>/^:?-{3,}:?$/.test(e.trim()),ax=e=>{let t=e.trim(),o=t.startsWith(":"),a=t.endsWith(":");return o&&a?"center":a?"right":"left"},ls=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(ox))return null;let r=a.map(ax),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?ls(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 ds=({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(dx,{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,ps=e=>e.trim().startsWith("```"),_p=e=>/^#{1,6}\s+/.test(e.trim()),ac=e=>/^[-*+]\s+/.test(e.trim()),rc=e=>/^\d+\.\s+/.test(e.trim()),jp=e=>/^(?:-{3,}|\*{3,}|_{3,})$/.test(e.trim()),nc=e=>e.trim().startsWith(">"),Zp=(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())},Xp=e=>e.trim().startsWith("<think>")||e.trim()===":::think",_n=(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],d=`${o}-${n}`;if(l.startsWith("**")&&l.endsWith("**"))a.push(jsx("strong",{children:l.slice(2,-2)},d));else if(l.startsWith("*")&&l.endsWith("*"))a.push(jsx("em",{children:l.slice(1,-1)},d));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)},d));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]},d)):a.push(l);}else l.startsWith("$")&&l.endsWith("$")&&t.enableMath?a.push(jsx(Un,{expression:l,inline:true,allowKatex:true},d)):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]},jn=({markdown:e,content:t,className:o,enableMath:a=true,enableMermaid:r=true,enableThinkBlock:n=true,codeCopyable:i=true,codeLineNumbers:l=false})=>{let d=e??t??"",s=useMemo(()=>{let c=[],g=d.replace(/\r\n/g,`
|
|
6
6
|
`).split(`
|
|
7
|
-
`),f={enableMath:a},
|
|
8
|
-
`).trim()},`think-tag-${
|
|
9
|
-
`).trim()},`think-fence-${
|
|
10
|
-
`);if(r&&
|
|
11
|
-
`).trim(),allowKatex:true},`math-${
|
|
12
|
-
`),y=ss(m);if(y){c.push(jsx(Ql,{table:y},`table-${u}`)),u=v;continue}}if(oc(h)){let v=[];for(;u<g.length&&oc(g[u]);)v.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:v.map((m,y)=>jsxs(Fragment$1,{children:[y>0&&jsx("br",{}),_n(m,f,`q-${u}-${y}`)]},`quote-line-${y}`))})},`quote-${u}`));continue}if(ec(h)){let v=[];for(;u<g.length&&ec(g[u]);)v.push(g[u].trim().replace(/^[-*+]\s+/,"")),u+=1;c.push(jsx(Box,{component:"ul",sx:{my:.8,pl:2.5},children:v.map((m,y)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:_n(m,f,`ul-${u}-${y}`)})},`ul-item-${y}`))},`ul-${u}`));continue}if(tc(h)){let v=[];for(;u<g.length&&tc(g[u]);)v.push(g[u].trim().replace(/^\d+\.\s+/,"")),u+=1;c.push(jsx(Box,{component:"ol",sx:{my:.8,pl:2.7},children:v.map((m,y)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:_n(m,f,`ol-${u}-${y}`)})},`ol-item-${y}`))},`ol-${u}`));continue}let p=[];for(;u<g.length;){let v=g[u],m=v.trim();if(!m||ds(v)||Gp(v)||Up(v)||ec(v)||tc(v)||oc(v)||Kp(g,u)||n&&qp(v)||a&&m.startsWith("$$"))break;p.push(v),u+=1;}p.length>0?c.push(jsx(Typography,{variant:"body2",sx:{my:.65,lineHeight:1.65},children:p.map((v,m)=>jsxs(Fragment$1,{children:[m>0&&jsx("br",{}),_n(v,f,`p-${u}-${m}`)]},`p-line-${m}`))},`p-${u}`)):u+=1;}return c},[d,a,r,n,i,l]);return jsx(Box,{className:o,sx:{"& strong":{fontWeight:700},"& em":{fontStyle:"italic"},"& a":{wordBreak:"break-all"}},children:s})};var AM=(e,t)=>jsx(Zn,{markdown:e,...t});var jp=({value:e,onChange:t,onSubmit:o,onVoiceInput:a,onClear:r,placeholder:n,statusText:i,loading:l=false,compact:d=false,showStatusText:s=true})=>jsxs(Stack,{spacing:.75,children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:d?.25:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minHeight:d?38:44},children:[jsx(gp,{sx:{fontSize:d?16:18,color:"text.secondary"}}),jsx(InputBase,{fullWidth:true,value:e,onChange:c=>t(c.target.value),onKeyDown:c=>{c.key==="Enter"&&(c.preventDefault(),o());},placeholder:n,sx:{fontSize:d?"0.84rem":"0.9rem"}}),e&&r&&jsx(IconButton,{size:"small",onClick:r,children:jsx(Vh,{sx:{fontSize:d?16:18}})}),a&&jsx(IconButton,{size:"small",onClick:a,children:jsx(qh,{sx:{fontSize:d?16:18}})}),jsx(IconButton,{size:"small",onClick:o,disabled:l||!e.trim(),children:jsx(Zh,{sx:{fontSize:d?16:18}})})]}),s&&i&&jsx(Typography,{variant:"caption",color:"text.secondary",children:i})]});var Xp=(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)]})},ps=({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:Xp(a.label,t)}),jsx(Typography,{component:"div",variant:"body2",sx:{mt:.2,fontWeight:500,wordBreak:"break-word"},children:r?Xp(r,t):a.value})]},a.id)})})]})};var sc=e=>e==null?"":typeof e=="string"||typeof e=="number"||typeof e=="boolean"?String(e):"",ms=e=>e.trim().toLowerCase(),wx=(e,t)=>{let o=[];return e.forEach(a=>{a.fields.forEach(r=>{let n=r.searchableText||sc(r.value),i={source:"section",sourceId:a.id,sourceSectionId:a.id,sourceTitle:a.title,fieldId:r.id,fieldLabel:r.label,fieldValue:n};o.push({hit:i,text:ms(`${a.title} ${r.label} ${n}`)});});}),t.forEach(a=>{(a.fields||[]).forEach(r=>{let n=r.searchableText||sc(r.value),i={source:"tab",sourceId:a.id,sourceTitle:a.label,fieldId:r.id,fieldLabel:r.label,fieldValue:n};o.push({hit:i,text:ms(`${a.label} ${r.label} ${n}`)});}),(a.sections||[]).forEach(r=>{r.fields.forEach(n=>{let i=n.searchableText||sc(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:ms(`${a.label} ${r.title} ${n.label} ${i}`)});});});}),o},Qp=({sections:e,tabs:t=[],defaultTabId:o,ai:a})=>{let{t:r}=Z(),[n,i]=useState(""),[l,d]=useState(o||t[0]?.id),[s,c]=useState("idle"),[g,f]=useState([]),[u,h]=useState(""),[w,p]=useState(""),[v,m]=useState(false),y=useMemo(()=>wx(e,t),[e,t]);useEffect(()=>{if(t.length===0){d(void 0);return}t.some(A=>A.id===l)||d(o||t[0]?.id);},[t,l,o]);let x=useCallback(()=>{c("idle"),f([]),h(""),p("");},[]),k=useCallback(T=>{i(T),T.trim()||(c("idle"),f([]),h(""),p(""));},[]),F=useCallback(T=>{let A=ms(T);return A?y.filter(R=>R.text.includes(A)).map(R=>R.hit):[]},[y]),S=useCallback(async()=>{let T=n.trim();if(!T)return;m(true);let A=F(T);if(f(A),A.length>0){c("search"),p(""),h(r("detail.searchAi.matches",{count:A.length})),m(false);return}if(a?.enabled!==false&&a?.onSubmit){c("ai"),h(r("detail.searchAi.autoAiFallback"));try{let C=await a.onSubmit(T,{query:T,hits:A,activeTabId:l,sections:e,tabs:t});p(typeof C=="string"?C:"");}finally{m(false);}return}c("search"),p(""),h(r("detail.searchAi.noMatch")),m(false);},[n,F,r,a,l,e,t]);return {query:n,setQuery:k,activeTabId:l,setActiveTabId:d,searchMode:s,hits:g,statusText:u,aiResponse:w,searching:v,handleSubmit:S,clearResult:x}};var lA=({title:e,subtitle:t,sections:o,tabs:a=[],defaultTabId:r,table:n,ai:i,rightHeaderSlot:l,searchBarWidth:d=460,onClose:s,closeLabel:c="Close"})=>{let{t:g}=Z(),{query:f,setQuery:u,activeTabId:h,setActiveTabId:w,searchMode:p,hits:v,statusText:m,aiResponse:y,searching:x,handleSubmit:k,clearResult:F}=Qp({sections:o,tabs:a,defaultTabId:r,ai:i}),S=useMemo(()=>a.find(R=>R.id===h)||a[0],[a,h]),T=useCallback(R=>{let C=D=>{let I=document.getElementById(R);if(I){I.scrollIntoView({behavior:"smooth",block:"center"});return}D<4&&setTimeout(()=>C(D+1),60);};requestAnimationFrame(()=>C(0));},[]),A=useCallback((R,C)=>{if(a.some(D=>D.id===R)){w(R),T(C?`detail-tab-${R}-section-${C}`:`detail-tab-${R}`);return}T(`detail-section-${R}`);},[a,w,T]);return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,minHeight:"100%"},children:[jsxs(Stack,{direction:{xs:"column",md:"row"},justifyContent:"space-between",alignItems:{xs:"flex-start",md:"center"},spacing:1,children:[jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"h5",sx:{fontWeight:800,color:"text.primary"},children:e}),t&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.35},children:t})]}),jsxs(Stack,{direction:"row",spacing:.6,alignItems:"center",sx:{width:{xs:"100%",md:"auto"},ml:{xs:0,md:"auto"}},children:[jsx(Box,{sx:{width:{xs:"100%",md:d},maxWidth:"100%",minWidth:{md:320}},children:jsx(jp,{value:f,onChange:u,onSubmit:k,onVoiceInput:i?.onVoiceInput,onClear:()=>{u(""),F();},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(Mx,{fontSize:"small"})})}),l]})]}),m&&jsx(Typography,{variant:"caption",color:"text.secondary",sx:{mt:-0.7},children:m}),p==="search"&&v.length>0&&jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2},children:[jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.6},children:g("detail.searchAi.matches",{count:v.length})}),jsx(Stack,{spacing:.35,children:v.slice(0,8).map(R=>jsx(Box,{component:"button",type:"button",onClick:()=>A(R.sourceId,R.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:R.sourceTitle})," \xB7 ",jsx(Box,{component:"span",sx:{fontWeight:700},children:R.fieldLabel})," = ",jsx(Box,{component:"span",children:R.fieldValue||"-"})]})},`${R.source}|${R.sourceId}|${R.fieldId}`))})]}),p==="ai"&&y&&jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2},children:[jsx(Typography,{variant:"subtitle2",sx:{fontWeight:700,mb:.7},children:g("detail.searchAi.aiResultTitle")}),jsx(Box,{sx:{fontSize:"0.9rem",lineHeight:1.6,"& p":{m:0,mb:.8},"& h1, & h2, & h3, & h4":{mt:1.2,mb:.6,lineHeight:1.3},"& ul, & ol":{mt:.4,mb:.8,pl:2.6},"& code":{px:.5,py:.1,borderRadius:.8,bgcolor:"action.hover",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},"& pre":{m:0,mt:.8,mb:.8,p:1.1,borderRadius:1.2,bgcolor:"action.hover",overflowX:"auto"},"& pre code":{p:0,bgcolor:"transparent"}},children:jsx(Zn,{markdown:y})})]}),jsx(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"repeat(2, minmax(0, 1fr))"}},children:o.map(R=>jsx(Box,{id:`detail-section-${R.id}`,children:jsx(ps,{section:R,highlightQuery:f})},R.id))}),a.length>0&&jsxs(Paper,{variant:"outlined",sx:{borderRadius:2,overflow:"hidden"},children:[jsx(Tabs,{value:S?.id||false,onChange:(R,C)=>w(C),variant:"scrollable",scrollButtons:"auto",sx:{borderBottom:"1px solid",borderColor:"divider"},children:a.map(R=>jsx(Tab,{value:R.id,label:R.label,sx:{textTransform:"none"}},R.id))}),jsxs(Box,{sx:{p:1.5},children:[jsx(Box,{id:`detail-tab-${S?.id||""}`}),S?.description&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:1.2},children:S.description}),S?.content?S.content:jsxs(Stack,{spacing:1.5,children:[(S?.sections||[]).map(R=>jsx(Box,{id:`detail-tab-${S?.id}-section-${R.id}`,children:jsx(ps,{section:R,highlightQuery:f})},R.id)),S?.fields&&S.fields.length>0&&jsx(ps,{section:{id:`${S.id}-fields`,title:S.label,fields:S.fields,columns:2},highlightQuery:f})]})]})]}),n&&jsx(Fa,{title:n.title||g("detail.table.title"),...n.tableProps,filterConfig:void 0,fitContainer:false})]})};var tu=({bucket:e,cardCount:t,highlighted:o=false,children:a,emptyLabel:r,maxHeight:n,sx:i})=>{let{t:l}=Z();return jsx(Paper,{sx:[d=>{let s=e.accentColor??d.palette.primary.main;return {position:"relative",minWidth:0,borderRadius:4,overflow:"hidden",border:`1px solid ${alpha(s,o?.58:d.palette.mode==="dark"?.28:.18)}`,bgcolor:alpha(d.palette.background.paper,d.palette.mode==="dark"?.92:.97),boxShadow:o?`0 18px 40px ${alpha(s,.22)}`:`0 10px 28px ${alpha(d.palette.common.black,d.palette.mode==="dark"?.18:.08)}`,transition:"border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease","&::before":{content:'""',display:"block",height:4,bgcolor: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:d=>({minHeight:160,borderRadius:3,border:`1px dashed ${alpha(d.palette.divider,.9)}`,bgcolor:d.palette.mode==="dark"?alpha(d.palette.common.white,.02):alpha(d.palette.primary.main,.03),display:"grid",placeItems:"center",px:2,textAlign:"center"}),children:jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:r??e.emptyLabel??l("kanban.empty")})})})]})})};var Lx={success:"success",warning:"warning",info:"info",error:"error"},zx={critical:"error",high:"warning",medium:"info",low:"success"},Nx=(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}},Vx=e=>e?e.split(/\s+/).map(t=>t.charAt(0).toUpperCase()).slice(0,2).join(""):"NA",cc=({card:e,bucket:t,dragging:o=false,overlay:a=false,onClick:r,sx:n})=>{let{t:i}=Z(),l=!!(r&&t),d=e.tone??(e.priority?zx[e.priority]:"default"),s=d==="default"?"primary":Lx[d],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=d==="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:Nx(e.priority,i),variant:d==="default"?"outlined":"filled",sx:{height:22,fontWeight:700}})]}),e.summary&&jsx(Typography,{sx:{fontSize:"0.82rem",color:"text.secondary",lineHeight:1.5},children:e.summary}),e.metrics&&e.metrics.length>0&&jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.min(e.metrics.length,3)}, minmax(0, 1fr))`,gap:.9},children:e.metrics.slice(0,3).map(g=>jsxs(Box,{sx:f=>({borderRadius:2,px:1,py:.8,bgcolor:f.palette.mode==="dark"?alpha(f.palette.common.white,.05):alpha(f.palette.primary.main,.05)}),children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",textTransform:"uppercase",letterSpacing:.35},children:g.label}),jsx(Typography,{sx:{fontSize:"0.86rem",fontWeight:700},children:g.value})]},g.id))}),typeof e.progress=="number"&&jsxs(Box,{children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:.5},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:i("kanban.card.progress")}),jsxs(Typography,{sx:{fontSize:"0.72rem",fontWeight:700},children:[Math.round(e.progress),"%"]})]}),jsx(LinearProgress,{variant:"determinate",value:Math.max(0,Math.min(100,e.progress)),color: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??Vx(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 Wx=(e,t)=>Number.isNaN(e)||e<0?0:e>t?t:e,ru=({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}})}},zo=(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}}},hs=(e,t)=>{let o=zo(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],d=Wx(t.targetIndex??l.cards.length,l.cards.length);return l.cards.splice(d,0,{...i,bucketId:t.toBucketId}),{buckets:r.map(s=>({...s,cards:s.cards.map((c,g)=>({...c,bucketId:s.id,position:g}))}))}};var dc="kanban-card|",pc="kanban-bucket|",lu=e=>`${dc}${e}`,Jx=e=>`${pc}${e}`,ys=e=>e?.startsWith(dc)?e.slice(dc.length):void 0,su=e=>e?.startsWith(pc)?e.slice(pc.length):void 0,e0=({card:e,bucket:t,onCardClick:o})=>{let{setNodeRef:a,attributes:r,listeners:n,transform:i,transition:l,isDragging:d}=useSortable({id:lu(e.id)}),s={transform:i?`translate3d(${i.x}px, ${i.y}px, 0)`:void 0,transition:l,zIndex:d?2:1,touchAction:"none",cursor:d?"grabbing":"grab"};return jsx(Box,{ref:a,style:s,...r,...n,children:jsx(cc,{card:e,bucket:t,dragging:d,onClick:o})})},t0=({bucket:e,highlighted:t,bucketMaxHeight:o,emptyBucketLabel:a,onCardClick:r})=>{let{isOver:n,setNodeRef:i}=useDroppable({id:Jx(e.id)});return jsx(Box,{ref:i,sx:{minWidth:0},children:jsx(tu,{bucket:e,cardCount:e.cards.length,highlighted:t||n,emptyLabel:a,maxHeight:o,children:jsx(SortableContext,{items:e.cards.map(l=>lu(l.id)),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:1,children:e.cards.map(l=>jsx(e0,{card:l,bucket:e,onCardClick:r},l.id))})})})})},DA=({model:e,onCardMove:t,onCardClick:o,minBucketWidth:a=320,bucketMaxHeight:r,emptyBucketLabel:n,sx:i})=>{let[l,d]=useState(null),[s,c]=useState(),g=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:6}}),useSensor(TouchSensor,{activationConstraint:{delay:120,tolerance:8}})),f=useMemo(()=>l?zo(e,l):void 0,[l,e]),u=useCallback(()=>{d(null),c(void 0);},[]),h=useCallback(m=>{if(!m)return;let y=ys(m);return y?zo(e,y)?.bucket.id:su(m)},[e]),w=useCallback(m=>{d(ys(String(m.active.id))??null);},[]),p=useCallback(m=>{c(h(m.over?String(m.over.id):void 0));},[h]),v=useCallback(m=>{let y=ys(String(m.active.id)),x=m.over?String(m.over.id):void 0;if(!y||!x){u();return}let k=zo(e,y);if(!k){u();return}let F=k.bucket.id,S=k.cardIndex,T=ys(x);if(T){let C=zo(e,T);if(!C){u();return}F=C.bucket.id,S=C.cardIndex;}else {let C=su(x),D=e.buckets.find(I=>I.id===C);if(!C||!D){u();return}F=C,S=D.cards.length;}if(k.bucket.id===F&&k.cardIndex===S){u();return}let A=hs(e,{cardId:y,fromBucketId:k.bucket.id,toBucketId:F,targetIndex:S}),R=zo(A,y);R&&!(R.bucket.id===k.bucket.id&&R.cardIndex===k.cardIndex)&&t?.({cardId:y,fromBucketId:k.bucket.id,toBucketId:R.bucket.id,targetIndex:R.cardIndex,card:R.card,model:A}),u();},[e,t,u]);return jsxs(DndContext,{sensors:g,collisionDetection:closestCorners,onDragStart:w,onDragOver:p,onDragEnd:v,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(t0,{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(cc,{card:f.card,bucket:f.bucket,overlay:true})}):null})]})};var n0=({initialModel:e,initialBuckets:t,initialCards:o})=>e||ru({buckets:t??[],cards:o??[]}),EA=e=>{let{onCardMove:t,onCardClick:o}=e,[a,r]=useState(()=>n0(e)),n=useCallback(c=>{r(g=>typeof c=="function"?c(g):c);},[]),i=useCallback(c=>zo(a,c),[a]),l=useCallback((c,g,f)=>{let u=zo(a,c);if(!u)return;let h=hs(a,{cardId:c,fromBucketId:u.bucket.id,toBucketId:g,targetIndex:f}),w=zo(h,c);if(!w||w.bucket.id===u.bucket.id&&w.cardIndex===u.cardIndex)return;r(h);let p={cardId:c,fromBucketId:u.bucket.id,toBucketId:w.bucket.id,targetIndex:w.cardIndex,card:w.card,model:h};return t?.(p),p},[a,t]),d=useCallback((c,g)=>{r(f=>({buckets:f.buckets.map(u=>({...u,cards:u.cards.map(h=>h.id!==c?h:typeof g=="function"?g(h):{...h,...g})}))}));},[]),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:d,getCard:i},boardProps:s}};var uu=64,v0="#E9EDF2",C0="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",k0=["en","zh","fr","de","ja","ko"],mu={en:"EN",zh:"\u4E2D\u6587",fr:"FR",de:"DE",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4"},Cs=({appTitle:e,logo:t,mode:o="dark",onToggleMode:a,locale:r,localeLabel:n,localeOptions:i,onLocaleChange:l,searchPlaceholder:d,onSearch:s,user:c,onUserSetting:g,onUserLogout:f,userMenuItems:u,leftSlot:h,rightSlot:w})=>{let{t:p,locale:v}=Z(),y=useTheme().palette.mode==="dark",[x,k]=useState(""),[F,S]=useState(null),[T,A]=useState(null),R=Q=>{Q.preventDefault(),s&&s(x.trim());},C=o==="system"?jsx(f0,{fontSize:"small"}):o==="dark"?jsx(h0,{fontSize:"small"}):jsx(y0,{fontSize:"small"}),D=p(o==="system"?"header.theme.system":o==="dark"?"header.theme.dark":"header.theme.light"),I=r||v,P=i&&i.length>0?i:k0,M=n||mu[I]||I.toUpperCase(),$=!!F,N=d||p("header.searchPlaceholder"),X=!!T,oe=[{key:"setting",label:p("header.menu.setting"),icon:jsx(Uy,{sx:{fontSize:18}}),onClick:g},{key:"logout",label:p("header.menu.logout"),icon:jsx(x0,{sx:{fontSize:18}}),onClick:f}],te=u&&u.length>0?u:oe,re=Q=>{A(null),Q?.();};return jsxs(AppBar,{position:"sticky",elevation:0,sx:Q=>({top:0,zIndex:Q.zIndex.drawer+10,height:uu,backgroundColor:Q.palette.mode==="dark"?"#0D0D0D":v0,backgroundImage:Q.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%)",C0,"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:Q.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(15,23,42,0.12)"}),children:[jsxs(Toolbar,{sx:{minHeight:`${uu}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:R,sx:{width:"100%",maxWidth:540},children:jsx(TextField,{size:"small",fullWidth:true,value:x,onChange:Q=>k(Q.target.value),placeholder:N,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(gp,{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:Q=>S(Q.currentTarget),sx:{color:y?"common.white":"#111827",borderRadius:1,px:.5},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsx(pu,{sx:{fontSize:18}}),jsx(Typography,{variant:"caption",sx:{fontWeight:500},children:M})]})}),jsx(Menu,{anchorEl:F,open:$,onClose:()=>S(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:P.map(Q=>jsx(MenuItem,{selected:Q===I,onClick:()=>{l(Q),S(null);},sx:{fontSize:"0.82rem"},children:mu[Q]},Q))})]}):jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsx(pu,{sx:{color:y?"common.white":"#111827",fontSize:18}}),jsx(Typography,{variant:"caption",sx:{color:y?"common.white":"#111827",fontWeight:500},children:M})]}),jsx(IconButton,{size:"small",sx:{color:y?"common.white":"#111827"},onClick:a,title:D,children:C}),c&&jsxs(Stack,{direction:"row",alignItems:"center",spacing:1,children:[jsxs(Box,{sx:{textAlign:"right",minWidth:0},children:[jsx(Typography,{variant:"body2",sx:{color:y?"common.white":"#111827",fontWeight:700,lineHeight:1.15},children:c.name}),c.subtitle&&jsx(Typography,{variant:"caption",sx:{display:"block",mt:.25,color:y?"rgba(255,255,255,0.72)":"rgba(17,24,39,0.62)",fontSize:"0.72rem",lineHeight:1.1,letterSpacing:"0.01em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:220},title:c.subtitle,children:c.subtitle})]}),jsx(IconButton,{size:"small",onClick:Q=>A(Q.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:T,open:X,onClose:()=>A(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:te.map(Q=>jsxs(MenuItem,{disabled:Q.disabled,onClick:()=>re(Q.onClick),children:[Q.icon&&jsx(ListItemIcon,{children:Q.icon}),jsx(ListItemText,{primary:Q.label,slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]},Q.key))})]})};var gu=({menuData:e=[],initialNavigationCollapsed:t=false}={})=>{let{navigationIslandProps:o}=bd({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 r2=({appTitle:e,menuData:t=[],children:o,showNavigation:a=true,locale:r="en",localeLabel:n,localeOptions:i,onLocaleChange:l,user:d,onUserSetting:s,onUserLogout:c,userMenuItems:g,logo:f,onSearch:u,rightHeaderSlot:h,leftHeaderSlot:w,contentSx:p})=>{let v="orbcafe:page-layout-mode",[m,y]=useState("system"),[x,k]=useState("light"),[F,S]=useState(false),T=m==="system"?F?x:"light":m;useEffect(()=>{try{let P=window.localStorage.getItem(v);(P==="light"||P==="dark"||P==="system")&&y(P);}catch{}S(true);let D=window.matchMedia("(prefers-color-scheme: dark)"),I=()=>{k(D.matches?"dark":"light");};return I(),D.addEventListener("change",I),()=>D.removeEventListener("change",I)},[]),useEffect(()=>{if(F)try{window.localStorage.setItem(v,m);}catch{}},[F,m]),useEffect(()=>{T==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[T]);let A=useMemo(()=>createTheme({palette:{mode:T}}),[T]),{navigationIslandProps:R,navigationMaxHeight:C}=gu({menuData:t,initialNavigationCollapsed:false});return jsx(ThemeProvider,{theme:A,children:jsx(vi,{locale:r,children:jsxs(Box,{sx:D=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:D.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":D.palette.background.default}),children:[jsx(Cs,{appTitle:e,logo:f,mode:m,onToggleMode:()=>y(D=>D==="system"?"dark":D==="dark"?"light":"system"),locale:r,localeLabel:n,localeOptions:i,onLocaleChange:l,user:d,onUserSetting:s,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(hd,{...R,maxHeight:C,colorMode:T})}),jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...p},children:o})]})]})})})};var Ss="(blank)",hu="Result",yu="Grand Total",bu={sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max"},xu=["sum","count","avg","min","max"];var vu=["palette","rows","columns","filters","values"];var Cu=e=>vu.includes(e),ku=e=>e==="rows"||e==="columns"||e==="filters",ws=e=>{let t=e.split("|");return t.length===2&&t[0]==="container"&&Cu(t[1])?{kind:"container",zone:t[1]}:t.length===3&&t[0]==="item"&&Cu(t[1])&&t[2]?{kind:"item",zone:t[1],key:t[2]}:null},ua=e=>e==null||e===""?Ss:e instanceof Date?e.toISOString().slice(0,10):String(e),hr=e=>JSON.stringify(e),Su=(e,t)=>{let o=e.join(""),a=t.join("");return o.localeCompare(a,void 0,{sensitivity:"base"})},M0=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},tn=(e,t,o)=>{if(o==="count")return e.length;let a=e.map(r=>M0(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)},ht=(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},ma=(e,t)=>e.length!==t.length?false:e.every((o,a)=>o===t[a]),wu=(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 ma(n,i)})},Ts=(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}),hc=e=>!e?.aggregations||e.aggregations.length===0?xu:e.aggregations,$t=(e,t)=>{let o=hc(t);return e&&o.includes(e)?e:t?.type==="number"&&o.includes("sum")?"sum":o.includes("count")?"count":o[0]},ti=(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 Pu=({options:e,selectedValues:t,onChange:o,minWidth:a=96})=>{let{t:r}=Z(),[n,i]=useState(""),l=useMemo(()=>{let s=n.trim().toLowerCase();return s?e.filter(c=>c.toLowerCase().includes(s)):e},[e,n]),d=e.length>0&&t.length===e.length;return jsx(FormControl,{size:"small",sx:{minWidth:a},children:jsxs(Select,{multiple:true,value:t,onChange: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(d?[]:e);},sx:{minWidth:"auto",px:0,py:.2,fontSize:"0.76rem",fontWeight:700,textTransform:"none"},children:r(d?"pivot.filter.deselectAll":"pivot.filter.selectAll")})}),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 bc=({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(H0,{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})]})]})}),Mu=({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 rn=({zone:e,title:t,hint:o,icon:a,children:r,itemCount:n,onClear:i})=>{let l=`container|${e}`,{isOver:d,setNodeRef:s}=useDroppable({id:l}),{t:c}=Z();return jsxs(Paper,{ref:s,sx:g=>({p:1.1,borderRadius:3,border:"1px dashed",borderColor:d?"primary.main":g.palette.divider,bgcolor:d?g.palette.mode==="dark"?"rgba(25, 118, 210, 0.16)":"rgba(47, 91, 255, 0.06)":g.palette.mode==="dark"?"rgba(255,255,255,0.02)":"rgba(245, 248, 255, 0.86)",transition:"all 120ms ease",minHeight:120,display:"flex",flexDirection:"column"}),children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[a,jsx(Typography,{sx:{fontSize:"0.79rem",fontWeight:800,letterSpacing:.2},children:t}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:["(",n,")"]})]}),n>0&&i&&jsx(Tooltip,{title:c("pivot.clearArea"),children:jsx(IconButton,{size:"small",onClick:i,sx:{p:.25},children:jsx(_0,{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 Bu={xs:1.2,md:1.6},sn=({title:e,subtitle:t,collapsed:o,onToggleCollapse:a,expandAriaLabel:r,collapseAriaLabel:n,children:i,bodySx:l,unmountOnExit:d=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:Bu,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(Ky,{sx:{fontSize:16,transition:"transform 220ms cubic-bezier(0.2, 0, 0, 1)",transform:o?"rotate(180deg)":"rotate(0deg)"}})})]})]}),jsx(Collapse,{in:!o,timeout:260,easing:"cubic-bezier(0.2, 0, 0, 1)",unmountOnExit:d,children:jsx(Box,{sx:[{px:Bu,py:{xs:1.2,md:1.6}},...Array.isArray(l)?l:l?[l]:[]],children:i})})]});var Ms=({label:e,caption:t,onRemove:o,trailing:a,isDragging:r,dragRef:n,listeners:i,attributes:l,style:d})=>jsx(Paper,{ref:n,style:d,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(H0,{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(Vh,{sx:{fontSize:16}})})]})}),oi=({id:e,label:t,caption:o,onRemove:a,trailing:r})=>{let{setNodeRef:n,attributes:i,listeners:l,transform:d,transition:s,isDragging:c}=useSortable({id:e}),g={transform:d?`translate3d(${d.x}px, ${d.y}px, 0)`:void 0,transition:s,zIndex:c?999:"auto"};return jsx(Ms,{label:t,caption:o,onRemove:a,trailing:r,isDragging:c,dragRef:n,listeners:l,attributes:i,style:g})};var Fs={rows:jsx(sv,{fontSize:"small"}),columns:jsx(Sf,{fontSize:"small"}),filters:jsx(iv,{fontSize:"small"}),values:jsx(Pf,{fontSize:"small"})},Lu=({isConfiguratorCollapsed:e,onToggleCollapse:t,availableFields:o,fieldMap:a,filterFields:r,columnFields:n,rowFields:i,valueFields:l,clearZone:d,removeFieldFromZone:s,getFilterSelectionSummary:c,renderDimensionFilterSelect:g,renderAggregationSelect:f,getAggregationLabel:u})=>{let{t:h}=Z(),w=[`${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(sn,{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(rn,{zone:"palette",title:h("pivot.fieldList"),hint:h("pivot.availableDimensions"),itemCount:o.length,icon:jsx(H0,{sx:{fontSize:16,color:"text.secondary"}}),children:jsxs(Stack,{spacing:.8,sx:{maxHeight:400,overflowY:"auto",pr:.5},children:[o.length===0&&jsx(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary",py:1},children:h("pivot.allFieldsInUse")}),o.map(p=>jsx(Mu,{id:`item|palette|${p.id}`,label:p.label,subtitle:p.type??"string"},p.id))]})}),jsxs(Stack,{spacing:2,children:[jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(rn,{zone:"filters",title:h("pivot.zone.filters"),hint:h("pivot.hint.filters"),icon:Fs.filters,itemCount:r.length,onClear:()=>d("filters"),children:jsx(SortableContext,{items:r.map(p=>`item|filters|${p}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:r.map(p=>jsx(oi,{id:`item|filters|${p}`,label:a.get(p)?.label??p,caption:c(p),trailing:g(p),onRemove:()=>s("filters",p)},p))})})}),jsx(rn,{zone:"columns",title:h("pivot.zone.columns"),hint:h("pivot.hint.columns"),icon:Fs.columns,itemCount:n.length,onClear:()=>d("columns"),children:jsx(SortableContext,{items:n.map(p=>`item|columns|${p}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:n.map(p=>jsx(oi,{id:`item|columns|${p}`,label:a.get(p)?.label??p,caption:`${a.get(p)?.type??"dimension"} \u2022 ${c(p)}`,trailing:g(p),onRemove:()=>s("columns",p)},p))})})})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(rn,{zone:"rows",title:h("pivot.zone.rows"),hint:h("pivot.hint.rows"),icon:Fs.rows,itemCount:i.length,onClear:()=>d("rows"),children:jsx(SortableContext,{items:i.map(p=>`item|rows|${p}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:i.map(p=>jsx(oi,{id:`item|rows|${p}`,label:a.get(p)?.label??p,caption:`${a.get(p)?.type??"dimension"} \u2022 ${c(p)}`,trailing:g(p),onRemove:()=>s("rows",p)},p))})})}),jsx(rn,{zone:"values",title:h("pivot.zone.values"),hint:h("pivot.hint.values"),icon:Fs.values,itemCount:l.length,onClear:()=>d("values"),children:jsx(SortableContext,{items:l.map(p=>`item|values|${p.tokenId}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:l.map(p=>{let v=a.get(p.fieldId)?.label??p.fieldId,m=`${u(p.aggregation)}(${v})`;return jsx(oi,{id:`item|values|${p.tokenId}`,label:v,caption:m,trailing:f(p),onRemove:()=>s("values",p.tokenId)},p.tokenId)})})})})]})]})]})})};var zu=e=>e.toLocaleString(void 0,{maximumFractionDigits:1}),Nu=({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,d={top:20,right:24,bottom:40,left:52},s=o?e.map(p=>p.primaryValue):e.map((p,v)=>v+1),c=o?e.map(p=>p.secondaryValue??0):e.map(p=>p.primaryValue),g=Math.max(...s,1),f=Math.max(...c,1),u=i-d.left-d.right,h=l-d.top-d.bottom,w=e.map((p,v)=>{let m=o?p.primaryValue:v+1,y=o?p.secondaryValue??0:p.primaryValue,x=d.left+m/g*u,k=l-d.bottom-y/f*h;return {...p,x,y:k,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:d.left,y1:l-d.bottom,x2:i-d.right,y2:l-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),jsx("line",{x1:d.left,y1:d.top,x2:d.left,y2:l-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),w.map(p=>jsxs("g",{children:[jsx("circle",{cx:p.x,cy:p.y,r:7,fill:alpha(n.palette.primary.main,.18)}),jsx("circle",{cx:p.x,cy:p.y,r:4.5,fill:n.palette.primary.main,children:jsxs("title",{children:[p.name,`
|
|
13
|
-
`,o?`${t}: ${a(
|
|
14
|
-
${o}: ${(r??a)(
|
|
15
|
-
`,o,": ",r(m.item.primaryValue)]})},`primary-${m.item.name}`)),a&&jsxs(Fragment,{children:[jsx("polyline",{fill:"none",stroke:d,strokeWidth:2.5,strokeDasharray:"5 5",points:
|
|
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 Wu=(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},$u=(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}}),Hu=({rows:e,dimensionFieldId:t,primaryValue:o,secondaryValue:a})=>{if(!t)return [];let r=new Map;return e.forEach(n=>{let i=ua(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:tn(i,o.fieldId,o.aggregation),secondaryValue:a?tn(i,a.fieldId,a.aggregation):void 0}))};var Gu=({rows:e,fieldMap:t,rowFields:o,columnFields:a,valueFields:r,chartDimensionFieldId:n,chartPrimaryValueFieldId:i,chartSecondaryValueFieldId:l,chartType:d,isCollapsed:s,onChartDimensionFieldIdChange:c,onChartPrimaryValueFieldIdChange:g,onChartSecondaryValueFieldIdChange:f,onChartTypeChange:u,onToggleCollapse:h,getAggregationLabel:w})=>{let{t:p}=Z(),v=useMemo(()=>Wu(o,a,t),[a,t,o]),m=useMemo(()=>$u(r,t,w),[t,w,r]),y=m.find(C=>C.fieldId===i)??m[0],x=m.find(C=>C.fieldId===l&&C.fieldId!==y?.fieldId)??null,k=v.find(C=>C.fieldId===n)??v[0],F=k&&y?p("pivot.chart.subtitleReady",{dimension:k.label,measure:x?`${y.label} / ${x.label}`:y.label}):p("pivot.chart.subtitle"),S=useMemo(()=>!k||!y?[]:Hu({rows:e,dimensionFieldId:k.fieldId,primaryValue:y.item,secondaryValue:x?.item}),[y,e,x,k]),T=C=>y?ti(C,y.item,t):C.toLocaleString(),A=C=>x?ti(C,x.item,t):C.toLocaleString(),R=v.length>1||m.length>1;return jsxs(sn,{title:p("pivot.chart.title"),subtitle:F,collapsed:s,onToggleCollapse:h,expandAriaLabel:p("pivot.chart.collapse.ariaExpand"),collapseAriaLabel:p("pivot.chart.collapse.ariaCollapse"),bodySx:{display:"flex",flexDirection:"column",gap:1.1},children:[R&&jsxs(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",xl:"repeat(4, minmax(0, 1fr))"},gap:1,alignItems:"start"},children:[jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:p("pivot.chart.dimension")}),jsx(Select,{value:k?.fieldId??"",onChange:C=>c(String(C.target.value)),sx:{fontSize:"0.75rem",height:32},children:v.map(C=>jsx(MenuItem,{value:C.fieldId,sx:{fontSize:"0.75rem"},children:C.label},C.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:p("pivot.chart.primaryMeasure")}),jsx(Select,{value:y?.fieldId??"",onChange:C=>g(String(C.target.value)),sx:{fontSize:"0.75rem",height:32},children:m.map(C=>jsx(MenuItem,{value:C.fieldId,sx:{fontSize:"0.75rem"},children:C.label},C.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:p("pivot.chart.secondaryMeasure")}),jsxs(Select,{value:x?.fieldId??"",onChange:C=>f(String(C.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:p("common.none")}),m.filter(C=>C.fieldId!==y?.fieldId).map(C=>jsx(MenuItem,{value:C.fieldId,sx:{fontSize:"0.75rem"},children:C.label},C.fieldId))]})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:p("pivot.chart.chartType")}),jsxs(Select,{value:d,onChange:C=>u(C.target.value),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"bar-vertical",sx:{fontSize:"0.75rem"},children:p("pivot.chart.style.barVertical")}),jsx(MenuItem,{value:"bar-horizontal",sx:{fontSize:"0.75rem"},children:p("pivot.chart.style.barHorizontal")}),jsx(MenuItem,{value:"line",sx:{fontSize:"0.75rem"},children:p("pivot.chart.style.line")}),jsx(MenuItem,{value:"scatter",sx:{fontSize:"0.75rem"},children:p("pivot.chart.style.scatter")})]})]})]}),jsx(Box,{children:k?y?S.length===0?jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:p("pivot.chart.emptyNoData")})}):d==="scatter"?jsx(Nu,{data:S,primaryLabel:y.label,secondaryLabel:x?.label,formatPrimaryValue:T,formatSecondaryValue:A}):jsx(Ou,{data:S,chartType:d,primaryLabel:y.label,secondaryLabel:x?.label,formatPrimaryValue:T,formatSecondaryValue:A}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:p("pivot.chart.emptyNoValue")})}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:p("pivot.chart.emptyNoDimension")})})})]})};var zs=({node:e,dataColumns:t,fieldMap:o,level:a,expandedKeys:r,onToggle:n,getValue:i})=>{let l=r.has(e.key),d=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:[d&&!s&&jsx(IconButton,{size:"small",onClick:()=>n(e.key),sx:{p:.2,mr:.5,ml:-1},children:l?jsx(Xf,{sx:{fontSize:16}}):jsx(Ff,{sx:{fontSize:16}})}),!d&&!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:ti(i?i(e,c.id):e.aggregatedValues[c.id]??0,c.valueItem,o)},`${e.key}-${c.id}`))]}),l&&e.children.map(c=>jsx(zs,{node:c,dataColumns:t,fieldMap:o,level:a+1,expandedKeys:r,onToggle:n,getValue:i},c.key))]})};var Dc=(e,t,o)=>{let a=[...e,...t];return o&&a.includes(o)?o:a[0]??""},Os=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",Mc=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",Xu=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},Yu=(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,Yu(r.children,t,o+1)),o),Gv=(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},qB=({title:e,rows:t,fields:o,initialLayout:a,initialChart:r,emptyText:n,maxPreviewHeight:i=520,initialChartCollapsed:l=false,initialTableCollapsed:d=false,model:s,enablePresetManagement:c=false,presets:g,defaultPresets:f,onPresetsChange:u,initialPresetId:h,onPresetApplied:w})=>{let{t:p}=Z(),v=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}})),m=useRef(0),y=useRef(false),x=e??p("pivot.title.default"),k=n??p("pivot.empty"),F=useMemo(()=>({sum:p("pivot.agg.sum"),count:p("pivot.agg.count"),avg:p("pivot.agg.avg"),min:p("pivot.agg.min"),max:p("pivot.agg.max")}),[p]),S=useCallback(b=>F[b]??bu[b],[F]),T=useMemo(()=>new Set(o.map(b=>b.id)),[o]),A=useMemo(()=>new Map(o.map(b=>[b.id,b])),[o]),[R,C]=useState(()=>ht(a?.rows,T)),[D,I]=useState(()=>ht(a?.columns,T)),[P,M]=useState(()=>ht(a?.filters,T)),[$,N]=useState(()=>{let b=a?.values??[],B=new Set,E=[];return b.forEach(W=>{if(!T.has(W.fieldId)||B.has(W.fieldId))return;B.add(W.fieldId),m.current+=1;let ee=A.get(W.fieldId);E.push({tokenId:`v${m.current}`,fieldId:W.fieldId,aggregation:$t(W.aggregation,ee)});}),E}),[X,oe]=useState({}),[te,re]=useState(true),[Q,U]=useState(false),[Y,Re]=useState(()=>Dc(ht(a?.rows,T),ht(a?.columns,T),r?.dimensionFieldId)),[j,fe]=useState(()=>{let b=(a?.values??[]).filter((B,E,W)=>T.has(B.fieldId)&&W.findIndex(ee=>ee.fieldId===B.fieldId)===E).map(B=>({tokenId:B.fieldId,fieldId:B.fieldId,aggregation:$t(B.aggregation,A.get(B.fieldId))}));return Os(b,r?.primaryValueFieldId)}),[Se,Ne]=useState(()=>{let b=(a?.values??[]).filter((E,W,ee)=>T.has(E.fieldId)&&ee.findIndex(ue=>ue.fieldId===E.fieldId)===W).map(E=>({tokenId:E.fieldId,fieldId:E.fieldId,aggregation:$t(E.aggregation,A.get(E.fieldId))})),B=Os(b,r?.primaryValueFieldId);return Mc(b,B,r?.secondaryValueFieldId)}),[Ke,ve]=useState(r?.chartType??"bar-vertical"),[Fe,xo]=useState(l),[jt,Qe]=useState(d),[Mt,Lt]=useState(()=>f??[]),[bt,H]=useState(""),[he,pe]=useState(false),[ye,Xe]=useState(""),[Ve,co]=useState(null),[vo,Co]=useState(new Set(["__grand_total__"])),[ko,So]=useState(new Set),Me=s?.rowFields??R,ge=s?.columnFields??D,xt=s?.filterFields??P,Ee=s?.valueFields??$,zt=s?.filterSelections??X,wo=s?.showGrandTotal??te,_a=s?.isConfiguratorCollapsed??Q,V=s?.chartDimensionFieldId??Y,O=s?.chartPrimaryValueFieldId??j,K=s?.chartSecondaryValueFieldId??Se,be=s?.chartType??Ke,Ce=s?.isChartCollapsed??Fe,Be=s?.isTableCollapsed??jt,me=g??Mt,Le=c||me.length>0||!!u,we=useCallback(b=>{if(s?.setRowFields){s.setRowFields(b);return}C(b);},[s]),ze=useCallback(b=>{if(s?.setColumnFields){s.setColumnFields(b);return}I(b);},[s]),Ae=useCallback(b=>{if(s?.setFilterFields){s.setFilterFields(b);return}M(b);},[s]),ke=useCallback(b=>{if(s?.setValueFields){s.setValueFields(b);return}N(b);},[s]),De=useCallback(b=>{if(s?.setFilterSelections){s.setFilterSelections(b);return}oe(b);},[s]),Nt=useCallback(b=>{if(s?.setShowGrandTotal){s.setShowGrandTotal(b);return}re(b);},[s]),To=useCallback(b=>{if(s?.setIsConfiguratorCollapsed){s.setIsConfiguratorCollapsed(b);return}U(b);},[s]),gt=useCallback(b=>{if(s?.setChartDimensionFieldId){s.setChartDimensionFieldId(b);return}Re(b);},[s]),vt=useCallback(b=>{if(s?.setChartPrimaryValueFieldId){s.setChartPrimaryValueFieldId(b);return}fe(b);},[s]),po=useCallback(b=>{if(s?.setChartSecondaryValueFieldId){s.setChartSecondaryValueFieldId(b);return}Ne(b);},[s]),va=useCallback(b=>{if(s?.setChartType){s.setChartType(b);return}ve(b);},[s]),Pr=useCallback(b=>{if(s?.setIsChartCollapsed){s.setIsChartCollapsed(b);return}xo(b);},[s]),Io=useCallback(b=>{if(s?.setIsTableCollapsed){s.setIsTableCollapsed(b);return}Qe(b);},[s]),Xt=useCallback(b=>{let B=typeof b=="function"?b(me):b;g||Lt(B),u?.(B);},[u,me,g]),Za=useMemo(()=>new Set([...Me,...ge,...xt]),[Me,ge,xt]),Qo=useMemo(()=>o.filter(b=>!Za.has(b.id)),[o,Za]),Vt=useMemo(()=>{let b=[...Me,...ge,...xt],B=new Set,E=[];return b.forEach(W=>{B.has(W)||(B.add(W),E.push(W));}),E},[ge,xt,Me]);useEffect(()=>{we(b=>{let B=b.filter(E=>T.has(E));return ma(b,B)?b:B}),ze(b=>{let B=b.filter(E=>T.has(E));return ma(b,B)?b:B}),Ae(b=>{let B=b.filter(E=>T.has(E));return ma(b,B)?b:B}),ke(b=>{let B=b.filter(E=>T.has(E.fieldId)).map(E=>({...E,aggregation:$t(E.aggregation,A.get(E.fieldId))}));return Ts(b,B)?b:B});},[A,T]);let Qt=useMemo(()=>{let b={};return Vt.forEach(B=>{let E=new Set;t.forEach(W=>{E.add(ua(W[B]));}),b[B]=Array.from(E).sort((W,ee)=>W.localeCompare(ee));}),b},[Vt,t]);useEffect(()=>{De(b=>{let B={};return Vt.forEach(E=>{let W=Qt[E]??[],ue=(b[E]??[]).filter(_=>W.includes(_)),L=Object.prototype.hasOwnProperty.call(b,E);B[E]=L?ue:W;}),wu(b,B)?b:B});},[Vt,Qt]),useEffect(()=>{gt(b=>Dc(Me,ge,b));},[ge,Me,gt]),useEffect(()=>{vt(b=>Os(Ee,b));},[vt,Ee]),useEffect(()=>{po(b=>Mc(Ee,O,b));},[O,po,Ee]);let At=useMemo(()=>t.filter(b=>Vt.every(B=>{let E=zt[B]??[],W=Qt[B]??[];if(E.length===W.length)return true;if(E.length===0)return false;let ee=ua(b[B]);return E.includes(ee)})),[Vt,Qt,zt,t]),Oe=useMemo(()=>{if(Ee.length===0)return null;let b=new Map;if(At.forEach(L=>{let _=ge.length>0?ge.map(_e=>ua(L[_e])):[p("pivot.valueLabel")],q=hr(_);b.set(q,_);}),b.size===0){let L=ge.length>0?ge.map(()=>Ss):[p("pivot.valueLabel")];b.set(hr(L),L);}let B=Array.from(b.entries()).sort((L,_)=>Su(L[1],_[1])),E=B.flatMap(([L,_])=>Ee.map(q=>{let _e=A.get(q.fieldId),z=`${S(q.aggregation)} ${_e?.label??q.fieldId}`,J=ge.length===0||Ee.length>1?`${_.join(" / ")} \u2022 ${z}`:_.join(" / ");return {id:`${L}::${q.tokenId}`,colKey:L,valueItem:q,label:J}})),W=[];ge.length>0&&B.forEach(([L,_])=>{let q=E.filter(J=>J.colKey===L),_e=W,z=[];_.forEach((J,G)=>{z.push(`d${G}:${J}`);let ie=`col::${hr(z)}`,We=_e.find(Uo=>Uo.key===ie);We||(We={key:ie,label:J,children:[],leafColumnIds:[],path:_.slice(0,G+1),depth:G},_e.push(We)),q.forEach(Uo=>{We.leafColumnIds.includes(Uo.id)||We.leafColumnIds.push(Uo.id);}),_e=We.children;});});let ee=L=>{let _={};return E.forEach(q=>{let _e=L.filter(z=>{let J=ge.length>0?ge.map(G=>ua(z[G])):[p("pivot.valueLabel")];return hr(J)===q.colKey});_[q.id]=tn(_e,q.valueItem.fieldId,q.valueItem.aggregation);}),_},ue=[];if(Me.length===0)ue.push({key:"root",value:p("pivot.resultLabel")||hu,children:[],isLeaf:true,aggregatedValues:ee(At),path:[],depth:0});else {let L=(_,q,_e)=>{if(q>=Me.length)return [];let z=Me[q],J=new Map;return _.forEach(G=>{let ie=ua(G[z]);J.has(ie)||J.set(ie,[]),J.get(ie).push(G);}),Array.from(J.keys()).sort().map(G=>{let ie=J.get(G),We=[..._e,G];return {key:hr(We),value:G,fieldId:z,aggregatedValues:ee(ie),children:L(ie,q+1,We),isLeaf:q===Me.length-1,path:We,depth:q}})};ue.push(...L(At,0,[]));}return {dataColumns:E,columnTree:W,rowTree:ue}},[ge,A,At,S,Me,p,Ee]),Yo=useCallback((b,B)=>(m.current+=1,{tokenId:`v${m.current}`,fieldId:b,aggregation:$t(B,A.get(b))}),[A]),Wo=useCallback(b=>{if(b==="rows")return we([]);if(b==="columns")return ze([]);if(b==="filters")return Ae([]);ke([]);},[]),Jo=useCallback((b,B)=>{if(b==="rows")return we(E=>E.filter(W=>W!==B));if(b==="columns")return ze(E=>E.filter(W=>W!==B));if(b==="filters")return Ae(E=>E.filter(W=>W!==B));ke(E=>E.filter(W=>W.tokenId!==B));},[]),ja=useCallback((b,B)=>{ke(E=>E.map(W=>W.tokenId===b?{...W,aggregation:$t(B,A.get(W.fieldId))}:W));},[A]),$o=useCallback(b=>{co(String(b.active.id));},[]),Xa=useCallback(b=>{if(co(null),!b.over)return;let B=ws(String(b.active.id)),E=ws(String(b.over.id));if(!B||!E||B.kind!=="item"||!B.key)return;if(B.zone===E.zone&&E.kind==="item"){if(B.zone==="rows"){let G=Me.indexOf(B.key),ie=Me.indexOf(E.key??"");G!==-1&&ie!==-1&&G!==ie&&we(We=>arrayMove(We,G,ie));return}if(B.zone==="columns"){let G=ge.indexOf(B.key),ie=ge.indexOf(E.key??"");G!==-1&&ie!==-1&&G!==ie&&ze(We=>arrayMove(We,G,ie));return}if(B.zone==="filters"){let G=xt.indexOf(B.key),ie=xt.indexOf(E.key??"");G!==-1&&ie!==-1&&G!==ie&&Ae(We=>arrayMove(We,G,ie));return}if(B.zone==="values"){let G=Ee.findIndex(We=>We.tokenId===B.key),ie=Ee.findIndex(We=>We.tokenId===(E.key??""));G!==-1&&ie!==-1&&G!==ie&&ke(We=>arrayMove(We,G,ie));}return}let W=E.zone,ee=[...Me],ue=[...ge],L=[...xt],_=[...Ee],q="",_e=null;if(B.zone==="palette")q=B.key;else if(B.zone==="values"){let G=_.find(ie=>ie.tokenId===B.key);if(!G)return;q=G.fieldId,_e=G,_=_.filter(ie=>ie.tokenId!==B.key);}else B.zone==="rows"?(q=B.key,ee=ee.filter(G=>G!==q)):B.zone==="columns"?(q=B.key,ue=ue.filter(G=>G!==q)):B.zone==="filters"&&(q=B.key,L=L.filter(G=>G!==q));if(!q)return;let z=()=>{ee=ee.filter(G=>G!==q),ue=ue.filter(G=>G!==q),L=L.filter(G=>G!==q);},J=G=>{if(E.kind!=="item"||!E.key)return G==="rows"?ee.length:G==="columns"?ue.length:G==="filters"?L.length:G==="values"?_.length:0;if(G==="rows"){let ie=ee.indexOf(E.key);return ie>=0?ie:ee.length}if(G==="columns"){let ie=ue.indexOf(E.key);return ie>=0?ie:ue.length}if(G==="filters"){let ie=L.indexOf(E.key);return ie>=0?ie:L.length}if(G==="values"){let ie=_.findIndex(We=>We.tokenId===E.key);return ie>=0?ie:_.length}return 0};if(W==="palette"){we(ee),ze(ue),Ae(L),ke(_);return}if(W==="values"){let G=J("values"),ie=_e??Yo(q);_.splice(G,0,ie),we(ee),ze(ue),Ae(L),ke(_);return}if(ku(W)){z();let G=J(W);W==="rows"?ee.splice(G,0,q):W==="columns"?ue.splice(G,0,q):L.splice(G,0,q),we(ee),ze(ue),Ae(L),ke(_);}},[ge,Yo,xt,Me,Ee]),Qa=useCallback((b,B)=>{De(E=>({...E,[b]:B}));},[]),Ho=useCallback(b=>{Co(B=>{let E=new Set(B);return E.has(b)?E.delete(b):E.add(b),E});},[]),ea=useCallback(b=>{So(B=>{let E=new Set(B);return E.has(b)?E.delete(b):E.add(b),E});},[]),Ca=useCallback(b=>{let B=A.get(b.fieldId),E=hc(B);return jsx(FormControl,{size:"small",sx:{minWidth:98},children:jsx(Select,{value:b.aggregation,onChange:W=>ja(b.tokenId,W.target.value),onClick:W=>W.stopPropagation(),onMouseDown:W=>W.stopPropagation(),sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:E.map(W=>jsx(MenuItem,{value:W,sx:{fontSize:"0.75rem"},children:S(W)},W))})})},[A,S,ja]),Ot=useCallback(b=>{let B=Qt[b]??[],E=zt[b]??B;return B.length===0?p("pivot.filter.noValues"):E.length===0?p("pivot.filter.noneSelected"):E.length===B.length?p("pivot.filter.allValues"):p("pivot.filter.selectedCount",{selected:E.length,total:B.length})},[Qt,zt,p]),Po=useCallback(b=>{let B=Qt[b]??[],E=zt[b]??B;return jsx(Pu,{options:B,selectedValues:E,onChange:W=>Qa(b,W)})},[Qt,zt,Qa]),ta=useCallback(()=>`pivot-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,[]),uo=useCallback(()=>{let b={};return new Set([...Vt,...Object.keys(zt)]).forEach(E=>{if(!T.has(E))return;let W=zt[E]??[];b[E]=[...W];}),{layout:{rows:[...Me],columns:[...ge],filters:[...xt],values:Ee.map(E=>({fieldId:E.fieldId,aggregation:E.aggregation}))},filterSelections:b,showGrandTotal:wo,chart:{dimensionFieldId:V,primaryValueFieldId:O,secondaryValueFieldId:K,chartType:be}}},[Vt,V,O,K,be,ge,xt,zt,Me,wo,T,Ee]),Go=useCallback(b=>{let B=ht(b.layout.rows,T),E=ht(b.layout.columns,T),W=ht(b.layout.filters,T),ee=new Set,ue=(b.layout.values??[]).filter(q=>!T.has(q.fieldId)||ee.has(q.fieldId)?false:(ee.add(q.fieldId),true)).map(q=>Yo(q.fieldId,q.aggregation)),L={};Object.entries(b.filterSelections??{}).forEach(([q,_e])=>{!T.has(q)||!Array.isArray(_e)||(L[q]=Array.from(new Set(_e.map(z=>String(z)))));}),we(B),ze(E),Ae(W),ke(ue),De(L),typeof b.showGrandTotal=="boolean"&&Nt(b.showGrandTotal),gt(Dc(B,E,b.chart?.dimensionFieldId));let _=Os(ue,b.chart?.primaryValueFieldId);vt(_),po(Mc(ue,_,b.chart?.secondaryValueFieldId)),va(b.chart?.chartType??"bar-vertical"),H(b.id),w?.(b);},[Yo,w,gt,vt,po,va,ze,Ae,De,we,Nt,ke,T]),Ya=useCallback(b=>{if(!b){H("");return}let B=me.find(E=>E.id===b);if(!B){H("");return}Go(B);},[Go,me]),Rr=useCallback(()=>{let b=p("pivot.preset.defaultName",{index:me.length+1});Xe(b),pe(true);},[me.length,p]),ka=useCallback(()=>{let b=ye.trim();if(!b)return;let B={id:ta(),name:b,...uo()};Xt(E=>[...E,B]),H(B.id),pe(false);},[uo,ta,ye,Xt]),Ja=useCallback(()=>{bt&&(Xt(b=>b.filter(B=>B.id!==bt)),H(""));},[bt,Xt]);useEffect(()=>{if(!h||y.current)return;let b=me.find(B=>B.id===h);b&&(y.current=true,Go(b));},[Go,h,me]),useEffect(()=>{bt&&(me.some(b=>b.id===bt)||H(""));},[bt,me]);let oa=useMemo(()=>{if(!wo||!Oe||!Me.length)return null;let b={};return Oe.dataColumns.forEach(B=>{let E=At.filter(W=>{let ee=ge.length>0?ge.map(ue=>ua(W[ue])):[p("pivot.valueLabel")];return hr(ee)===B.colKey});b[B.id]=tn(E,B.valueItem.fieldId,B.valueItem.aggregation);}),{key:"__grand_total__",value:p("pivot.grandTotal")||yu,children:[],isLeaf:false,isGrandTotal:true,aggregatedValues:b,path:[],depth:-1}},[wo,Oe,At,ge,Me.length,p]),Ut=useMemo(()=>Xu(Oe?.rowTree??[]),[Oe]),Ro=useMemo(()=>Xu(Oe?.columnTree??[]),[Oe]);useEffect(()=>{Co(b=>{let B=new Set;return b.has("__grand_total__")&&B.add("__grand_total__"),Ut.forEach(E=>{b.has(E)&&B.add(E);}),B});},[Ut]),useEffect(()=>{So(b=>{let B=new Set;return Ro.forEach(E=>{b.has(E)&&B.add(E);}),B});},[Ro]);let Dr=useCallback(()=>{Co(b=>{let B=new Set(b);return Ut.forEach(E=>B.add(E)),B});},[Ut]),er=useCallback(()=>{Co(b=>{let B=new Set;return b.has("__grand_total__")&&B.add("__grand_total__"),B});},[]),Mr=useCallback(()=>{So(new Set(Ro));},[Ro]),Ar=useCallback(()=>{So(new Set);},[]),Br=useMemo(()=>!Oe||ge.length===0?[]:Gv(Oe.columnTree,ko),[ge.length,ko,Oe]),Yt=useMemo(()=>{if(!Oe)return [];if(ge.length===0)return Oe.dataColumns.map(B=>({id:B.id,label:B.label,leafColumnIds:[B.id],valueItem:B.valueItem}));let b=new Map(Oe.dataColumns.map(B=>[B.id,B]));return Br.flatMap(B=>{let E=new Map;return B.leafColumnIds.forEach(W=>{let ee=b.get(W);if(!ee)return;let ue=ee.valueItem.tokenId,L=`${S(ee.valueItem.aggregation)} ${A.get(ee.valueItem.fieldId)?.label??ee.valueItem.fieldId}`,_=E.get(ue);if(_){_.leafColumnIds.push(W);return}E.set(ue,{id:`${B.key}::${ue}`,label:Ee.length>1?L:B.label,leafColumnIds:[W],valueItem:ee.valueItem});}),Array.from(E.values())})},[ge.length,A,S,Oe,Ee.length,Br]),Fr=useMemo(()=>new Map(Yt.map(b=>[b.id,b])),[Yt]),Er=useMemo(()=>Yt.map(b=>({id:b.id,colKey:b.id,valueItem:b.valueItem,label:b.label})),[Yt]),tr=useMemo(()=>{if(!Oe||ge.length===0)return [];let b=[],B=Yu(Oe.columnTree,ko),E=B+(Ee.length>1?1:0),W=(ee,ue)=>{b[ue]??(b[ue]=[]),ee.forEach(L=>{let _=L.children.length>0&&ko.has(L.key),q=Yt.filter(z=>L.leafColumnIds.some(J=>z.leafColumnIds.includes(J))).length,_e=_||Ee.length>1?1:E-ue;b[ue].push({key:L.key,label:L.label,colSpan:q,rowSpan:_e,expandable:L.children.length>0,expanded:_}),_&&W(L.children,ue+1);});};return W(Oe.columnTree,0),Ee.length>1&&(b[B]=Yt.map(ee=>({key:ee.id,label:ee.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))),b},[ge.length,ko,Oe,Ee.length,Yt]),aa=useCallback((b,B)=>B.leafColumnIds.reduce((E,W)=>E+(b.aggregatedValues[W]??0),0),[]),Sa=useMemo(()=>jsxs(Fragment,{children:[jsx(Button,{size:"small",variant:"text",onClick:Dr,disabled:Ut.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:p("pivot.table.expandRowsAll")}),jsx(Button,{size:"small",variant:"text",onClick:er,disabled:Ut.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:p("pivot.table.collapseRowsAll")}),jsx(Divider,{orientation:"vertical",flexItem:true}),jsx(Button,{size:"small",variant:"text",onClick:Mr,disabled:Ro.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:p("pivot.table.expandColumnsAll")}),jsx(Button,{size:"small",variant:"text",onClick:Ar,disabled:ge.length===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:p("pivot.table.collapseColumnsAll")})]}),[ge.length,Ro.size,Ut.size,Ar,er,Mr,Dr,p]),wa=()=>{if(!Ve)return null;let b=ws(Ve);if(!b||b.kind!=="item"||!b.key)return null;if(b.zone==="palette"){let ee=A.get(b.key);return ee?jsx(bc,{label:ee.label,subtitle:ee.type}):null}if(b.zone==="values"){let ee=Ee.find(q=>q.tokenId===b.key);if(!ee)return null;let L=A.get(ee.fieldId)?.label??ee.fieldId,_=`${S(ee.aggregation)}(${L})`;return jsx(Ms,{label:L,caption:_})}let E=A.get(b.key)?.label??b.key,W=Ot(b.key);return jsx(Ms,{label:E,caption:W})};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:p("pivot.subtitle.default")})]}),jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[Le&&jsxs(Fragment,{children:[jsx(FormControl,{size:"small",sx:{minWidth:200},children:jsxs(Select,{value:bt,displayEmpty:true,onChange:b=>Ya(String(b.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:p("pivot.preset.selectPlaceholder")}),me.map(b=>jsx(MenuItem,{value:b.id,sx:{fontSize:"0.75rem"},children:b.name},b.id))]})}),jsx(Tooltip,{title:p("pivot.preset.save"),children:jsx(IconButton,{size:"small",onClick:Rr,"aria-label":p("pivot.preset.save"),children:jsx(kp,{sx:{fontSize:18}})})}),jsx(Tooltip,{title:p("pivot.preset.delete"),children:jsx("span",{children:jsx(IconButton,{size:"small",onClick:Ja,disabled:!bt,"aria-label":p("pivot.preset.delete"),children:jsx(Ev,{sx:{fontSize:18}})})})}),jsx(Divider,{flexItem:true,orientation:"vertical"})]}),jsxs(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary"},children:[p("pivot.records"),": ",jsx("strong",{children:t.length.toLocaleString()})," / ",p("pivot.afterFilter"),":"," ",jsx("strong",{children:At.length.toLocaleString()})]}),jsx(Divider,{flexItem:true,orientation:"vertical"}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.6},children:[jsx(Typography,{sx:{fontSize:"0.74rem"},children:p("pivot.grandTotal")}),jsx(Switch,{size:"small",checked:wo,onChange:b=>Nt(b.target.checked)})]})]})]}),jsx(Divider,{}),jsxs(DndContext,{sensors:v,collisionDetection:closestCenter,onDragStart:$o,onDragEnd:Xa,children:[jsx(Lu,{isConfiguratorCollapsed:_a,onToggleCollapse:()=>To(b=>!b),availableFields:Qo,fieldMap:A,filterFields:xt,columnFields:ge,rowFields:Me,valueFields:Ee,clearZone:Wo,removeFieldFromZone:Jo,getFilterSelectionSummary:Ot,renderDimensionFilterSelect:Po,renderAggregationSelect:Ca,getAggregationLabel:S}),jsx(Portal,{children:jsx(DragOverlay,{dropAnimation:{duration:250,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:wa()})})]}),jsx(Gu,{rows:At,fieldMap:A,rowFields:Me,columnFields:ge,valueFields:Ee,chartDimensionFieldId:V,chartPrimaryValueFieldId:O,chartSecondaryValueFieldId:K,chartType:be,isCollapsed:Ce,onChartDimensionFieldIdChange:b=>gt(b),onChartPrimaryValueFieldIdChange:b=>vt(b),onChartSecondaryValueFieldIdChange:b=>po(b),onChartTypeChange:b=>va(b),onToggleCollapse:()=>Pr(b=>!b),getAggregationLabel:S}),jsx(sn,{title:p("pivot.table.sectionTitle"),subtitle:Me.length>0?Me.map(b=>A.get(b)?.label??b).join(" > "):p("pivot.table.dimensions"),collapsed:Be,onToggleCollapse:()=>Io(b=>!b),expandAriaLabel:p("pivot.table.collapse.ariaExpand"),collapseAriaLabel:p("pivot.table.collapse.ariaCollapse"),bodySx:{p:0},headerActions:Sa,children:Oe===null?jsx(Box,{sx:{py:5,px:{xs:1.2,md:1.6},textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:k})}):jsx(TableContainer,{sx:{maxHeight:i},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:(tr.length>0?tr:[[]]).map((b,B)=>jsxs(TableRow,{children:[B===0&&jsx(TableCell,{rowSpan:Math.max(tr.length,1),sx:E=>({fontWeight:800,fontSize:"0.76rem",color:"text.primary",bgcolor:E.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${E.palette.divider}`,pl:2,minWidth:220,verticalAlign:"middle"}),children:Me.length>0?Me.map(E=>A.get(E)?.label).join(" > "):p("pivot.table.dimensions")}),(b.length>0?b:Yt.map(E=>({key:E.id,label:E.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))).map(E=>jsx(TableCell,{align:"center",colSpan:E.colSpan,rowSpan:E.rowSpan,sx:W=>({fontWeight:800,fontSize:"0.75rem",color:"text.primary",bgcolor:W.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${W.palette.divider}`,minWidth:148,verticalAlign:"middle"}),children:jsxs(Box,{sx:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:.4},children:[E.expandable&&jsx(IconButton,{size:"small",onClick:()=>ea(E.key),sx:{p:.1,ml:-0.3},children:E.expanded?jsx(Xf,{sx:{fontSize:16}}):jsx(Ff,{sx:{fontSize:16}})}),jsx(Box,{component:"span",children:E.label})]})},E.key))]},`pivot-header-row-${B}`))}),jsxs(TableBody,{children:[Oe.rowTree.map(b=>jsx(zs,{node:b,dataColumns:Er,fieldMap:A,level:0,expandedKeys:vo,onToggle:Ho,getValue:(B,E)=>{let W=Fr.get(E);return W?aa(B,W):0}},b.key)),oa&&jsx(zs,{node:oa,dataColumns:Er,fieldMap:A,level:0,expandedKeys:vo,onToggle:Ho,getValue:(b,B)=>{let E=Fr.get(B);return E?aa(b,E):0}})]})]})})}),jsxs(Dialog,{open:he,onClose:()=>pe(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:p("pivot.preset.saveDialogTitle")}),jsx(DialogContent,{children:jsx(TextField,{autoFocus:true,fullWidth:true,margin:"dense",label:p("pivot.preset.nameLabel"),value:ye,onChange:b=>Xe(b.target.value),onKeyDown:b=>{b.key==="Enter"&&(b.preventDefault(),ka());}})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>pe(false),children:p("common.cancel")}),jsx(Button,{variant:"contained",onClick:ka,disabled:!ye.trim(),children:p("common.save")})]})]})]})};var Ju=(e,t,o)=>{let a=[...e,...t];return o&&a.includes(o)?o:a[0]??""},Bc=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",em=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",QB=({fields:e,initialLayout:t,initialFilterSelections:o={},initialShowGrandTotal:a=true,initialConfiguratorCollapsed:r=false,initialChart:n,initialChartCollapsed:i=false,initialTableCollapsed:l=false})=>{let d=useRef(0),s=useMemo(()=>new Set(e.map(H=>H.id)),[e]),c=useMemo(()=>new Map(e.map(H=>[H.id,H])),[e]),[g,f]=useState(()=>ht(t?.rows,s)),[u,h]=useState(()=>ht(t?.columns,s)),[w,p]=useState(()=>ht(t?.filters,s)),[v,m]=useState(()=>{let H=t?.values??[],he=new Set,pe=[];return H.forEach(ye=>{!s.has(ye.fieldId)||he.has(ye.fieldId)||(he.add(ye.fieldId),d.current+=1,pe.push({tokenId:`v${d.current}`,fieldId:ye.fieldId,aggregation:$t(ye.aggregation,c.get(ye.fieldId))}));}),pe}),[y,x]=useState(o),[k,F]=useState(a),[S,T]=useState(r),[A,R]=useState(()=>Ju(ht(t?.rows,s),ht(t?.columns,s),n?.dimensionFieldId)),[C,D]=useState(()=>{let H=(()=>{let he=t?.values??[],pe=new Set,ye=[];return he.forEach(Xe=>{!s.has(Xe.fieldId)||pe.has(Xe.fieldId)||(pe.add(Xe.fieldId),ye.push({tokenId:Xe.fieldId,fieldId:Xe.fieldId,aggregation:$t(Xe.aggregation,c.get(Xe.fieldId))}));}),ye})();return Bc(H,n?.primaryValueFieldId)}),[I,P]=useState(()=>{let H=(()=>{let pe=t?.values??[],ye=new Set,Xe=[];return pe.forEach(Ve=>{!s.has(Ve.fieldId)||ye.has(Ve.fieldId)||(ye.add(Ve.fieldId),Xe.push({tokenId:Ve.fieldId,fieldId:Ve.fieldId,aggregation:$t(Ve.aggregation,c.get(Ve.fieldId))}));}),Xe})(),he=Bc(H,n?.primaryValueFieldId);return em(H,he,n?.secondaryValueFieldId)}),[M,$]=useState(n?.chartType??"bar-vertical"),[N,X]=useState(i),[oe,te]=useState(l);useEffect(()=>{f(H=>{let he=H.filter(pe=>s.has(pe));return ma(H,he)?H:he}),h(H=>{let he=H.filter(pe=>s.has(pe));return ma(H,he)?H:he}),p(H=>{let he=H.filter(pe=>s.has(pe));return ma(H,he)?H:he}),m(H=>{let he=H.filter(pe=>s.has(pe.fieldId)).map(pe=>({...pe,aggregation:$t(pe.aggregation,c.get(pe.fieldId))}));return Ts(H,he)?H:he});},[c,s]),useEffect(()=>{R(H=>Ju(g,u,H));},[u,g]),useEffect(()=>{D(H=>Bc(v,H));},[v]),useEffect(()=>{P(H=>em(v,C,H));},[C,v]);let re=useCallback(H=>{f(ht(H,s));},[s]),Q=useCallback(H=>{h(ht(H,s));},[s]),U=useCallback(H=>{p(ht(H,s));},[s]),Y=useCallback(H=>{m(he=>{let pe=H??[],ye=new Set,Xe=[];return pe.forEach(Ve=>{if(!s.has(Ve.fieldId)||ye.has(Ve.fieldId))return;ye.add(Ve.fieldId);let co=he.find(vo=>vo.fieldId===Ve.fieldId);if(co){Xe.push({...co,aggregation:$t(Ve.aggregation??co.aggregation,c.get(Ve.fieldId))});return}d.current+=1,Xe.push({tokenId:`v${d.current}`,fieldId:Ve.fieldId,aggregation:$t(Ve.aggregation,c.get(Ve.fieldId))});}),Xe});},[c,s]),Re=useCallback(H=>{re(H.rows??[]),Q(H.columns??[]),U(H.filters??[]),Y(H.values??[]);},[Q,U,re,Y]),j=useCallback(H=>{if(H==="rows")return f([]);if(H==="columns")return h([]);if(H==="filters")return p([]);m([]);},[]),fe=useCallback((H,he)=>{if(H==="rows")return f(pe=>pe.filter(ye=>ye!==he));if(H==="columns")return h(pe=>pe.filter(ye=>ye!==he));if(H==="filters")return p(pe=>pe.filter(ye=>ye!==he));m(pe=>pe.filter(ye=>ye.tokenId!==he));},[]),Se=useCallback((H,he)=>{m(pe=>pe.map(ye=>ye.tokenId===H?{...ye,aggregation:$t(he,c.get(ye.fieldId))}:ye));},[c]),Ne=useCallback((H,he)=>{x(pe=>({...pe,[H]:he}));},[]),Ke=useCallback(()=>{x({});},[]),ve=useCallback(()=>{F(H=>!H);},[]),Fe=useCallback(()=>{T(H=>!H);},[]),xo=useCallback(H=>{R(H);},[]),jt=useCallback(H=>{D(H);},[]),Qe=useCallback(H=>{P(H);},[]),Mt=useCallback(()=>{X(H=>!H);},[]),Lt=useCallback(()=>{te(H=>!H);},[]);return {model:useMemo(()=>({rowFields:g,setRowFields:f,columnFields:u,setColumnFields:h,filterFields:w,setFilterFields:p,valueFields:v,setValueFields:m,filterSelections:y,setFilterSelections:x,showGrandTotal:k,setShowGrandTotal:F,isConfiguratorCollapsed:S,setIsConfiguratorCollapsed:T,chartDimensionFieldId:A,setChartDimensionFieldId:R,chartPrimaryValueFieldId:C,setChartPrimaryValueFieldId:D,chartSecondaryValueFieldId:I,setChartSecondaryValueFieldId:P,chartType:M,setChartType:$,isChartCollapsed:N,setIsChartCollapsed:X,isTableCollapsed:oe,setIsTableCollapsed:te}),[A,C,I,M,u,w,y,N,S,oe,g,k,v]),actions:{setRows:re,setColumns:Q,setFilters:U,setValues:Y,setLayout:Re,clearZone:j,removeFieldFromZone:fe,setAggregationForValue:Se,setFilterSelection:Ne,resetFilterSelections:Ke,toggleGrandTotal:ve,toggleConfigurator:Fe,setChartDimension:xo,setChartPrimaryValue:jt,setChartSecondaryValue:Qe,setChartType:$,toggleChart:Mt,toggleTable:Lt}}};var o5=({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,d]=useState(t??i==="landscape");useEffect(()=>{d(t??i==="landscape");},[t,i]);let s=g=>{d(g),o?.(g);};return {resolvedOrientation:i,isPortraitViewport:r,isCompactViewport:n,navigationOpen:l,setNavigationOpen:s,toggleNavigationOpen:()=>s(!l)}};var Xv=e=>{let t=Number(e||0);return Number.isFinite(t)?t:0},n5=({rows:e,rowKey:t="id",numericField:o,defaultSelectedId:a})=>{let n=e[0]?.[t],[i,l]=useState(a??n),d=useMemo(()=>e.find(u=>u[t]===i)||e[0],[t,e,i]),[s,c]=useState(()=>{let u=d?.[o];return u==null?"0":String(u)});return {selectedId:i,selectedRecord:d,editorValue:s,setEditorValue:c,selectRecord:u=>{let h=u[t];l(h);let w=u[o];c(w==null?"0":String(w));},applyEditorValue:u=>{if(i===void 0)return;let h=Xv(s),w=e.map(p=>p[t]===i?{...p,[o]:h}:p);u(w);}}};var sC=["code_128","ean_13","ean_8","qr_code","upc_a","upc_e"],im=(e,t,o,a)=>{t?.(e),a&&o?.();},p5=({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=sC,facingMode:n="environment",manualEntry:i=true,autoCloseOnDetect:l=true,scanIntervalMs:d=600,confirmLabel:s="Use code",cancelLabel:c="Close",manualPlaceholder:g="Enter barcode manually",onDetected:f,onError:u,sx:h})=>{let w=ct__default.useRef(null),p=ct__default.useRef(null),v=ct__default.useRef(null),m=ct__default.useRef(null),[y,x]=ct__default.useState("idle"),[k,F]=ct__default.useState(""),[S,T]=ct__default.useState(null),[A,R]=ct__default.useState(null),C=ct__default.useCallback(()=>{v.current!==null&&(window.clearInterval(v.current),v.current=null),p.current&&(p.current.getTracks().forEach(P=>P.stop()),p.current=null),w.current&&(w.current.srcObject=null);},[]),D=ct__default.useCallback(P=>{R(P),x("error"),u?.(P);},[u]);ct__default.useEffect(()=>{if(!e){C(),x("idle"),R(null),F("");return}let P=false;return (async()=>{if(!(typeof window>"u"||typeof navigator>"u")){if(!navigator.mediaDevices?.getUserMedia){x("unsupported"),R("Camera access is not supported in this browser.");return}x("starting"),R(null);try{let $=await navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:{ideal:n}}});if(P){$.getTracks().forEach(N=>N.stop());return}if(p.current=$,w.current&&(w.current.srcObject=$,await w.current.play()),!window.BarcodeDetector){x("unsupported"),R("BarcodeDetector is not available. Camera preview is ready and manual entry is enabled.");return}m.current=new window.BarcodeDetector({formats:r}),x("ready"),v.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(te=>te.rawValue);if(!X?.rawValue)return;let oe={rawValue:X.rawValue,format:X.format};T(oe),C(),im(oe,f,t,l);}catch(N){D(N instanceof Error?N.message:"Failed to detect barcode.");}},d);}catch($){D($ instanceof Error?$.message:"Unable to start camera.");}}})(),()=>{P=true,C();}},[l,n,r,t,f,e,D,d,C]);let I=()=>{let P=k.trim();if(!P)return;let M={rawValue:P,format:"manual"};T(M),im(M,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:P=>({position:"relative",overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:"divider",minHeight:280,background:P.palette.mode==="dark"?"linear-gradient(180deg, rgba(15,23,42,0.92), rgba(2,6,23,0.96))":"linear-gradient(180deg, rgba(241,245,249,1), rgba(226,232,240,0.92))"}),children:[jsx("video",{ref:w,muted:true,playsInline:true,autoPlay:true,style:{width:"100%",height:280,objectFit:"cover",display:"block"}}),jsx(Box,{sx:{pointerEvents:"none",position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(Box,{sx:{width:"72%",maxWidth:320,aspectRatio:"1.7 / 1",borderRadius:3,border:"2px solid rgba(255,255,255,0.95)",boxShadow:"0 0 0 999px rgba(15,23,42,0.24)",position:"relative"},children:jsx(Box,{sx:{position:"absolute",top:"50%",left:0,right:0,height:2,bgcolor:"#38bdf8",boxShadow:"0 0 18px rgba(56,189,248,0.85)"}})})}),jsxs(Box,{sx:{position:"absolute",top:12,left:12,display:"flex",gap:1,flexWrap:"wrap"},children:[jsx(Chip,{icon:jsx(nC,{}),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"}),S?jsx(Chip,{icon:jsx(iC,{}),label:`${S.format||"barcode"}: ${S.rawValue}`,size:"small",color:"success",variant:"filled"}):null]})]}),A?jsx(Alert,{severity:y==="unsupported"?"info":"warning",children:A}):null,i?jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1.25,children:[jsx(TextField,{fullWidth:true,label:"Barcode",placeholder:g,value:k,onChange:P=>F(P.target.value)}),jsx(Button,{variant:"contained",onClick:I,sx:{minHeight:56,px:2.5},children:s})]}):null]})}),jsx(DialogActions,{sx:{px:3,pb:2},children:jsx(Button,{onClick:t,children:c})})]})};var pC={default:"#475569",primary:"#1d4ed8",success:"#047857",warning:"#b45309",error:"#b91c1c",info:"#0369a1"},y5=({title:e,description:t,kicker:o,icon:a,badges:r=[],metrics:n=[],footer:i,children:l,selected:d=false,draggable:s=false,isDragging:c=false,swipeThreshold:g=88,startAction:f,endAction:u,dragHandleProps:h,onClick:w,onSwipe:p,sx:v})=>{let[m,y]=useState(0),[x,k]=useState(false),F=useRef(null),S=useRef(0),T=useRef(0),A=!!(f||u),R=132,C=()=>{y(0),k(false),F.current=null,S.current=0,T.current=0;},D=N=>{(N==="start"?f:u)?.onTrigger?.(),p?.(N),C();},I=N=>{!A||N.target.closest('button, a, input, textarea, [data-no-swipe="true"]')||(F.current=N.pointerId,S.current=N.clientX,T.current=N.clientX,k(true),N.currentTarget.setPointerCapture(N.pointerId));},P=N=>{if(!x||F.current!==N.pointerId)return;T.current=N.clientX;let X=T.current-S.current,oe=Math.max(-R,Math.min(R,X));y(oe);},M=N=>{if(!x||F.current!==N.pointerId)return;let X=T.current-S.current;if(X>=g&&f){D("start");return}if(X<=-g&&u){D("end");return}Math.abs(X)<12&&w?.(),C();},$=(N,X)=>{if(!N)return null;let oe=N.backgroundColor||pC[N.tone||"default"];return jsx(Box,{sx:{position:"absolute",top:0,bottom:0,[X]:0,width:R,px:2,display:"flex",alignItems:"center",justifyContent:X==="left"?"flex-start":"flex-end",color:"#fff",background:`linear-gradient(135deg, ${oe}, rgba(15,23,42,0.92))`},children:jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[N.icon,jsx(Typography,{sx:{fontWeight:700,fontSize:"0.95rem"},children:N.label})]})})};return jsxs(Box,{sx:{position:"relative",overflow:"hidden",borderRadius:4,...v},children:[$(f,"left"),$(u,"right"),jsx(Paper,{elevation:0,onPointerDown:I,onPointerMove:P,onPointerUp:M,onPointerCancel:C,sx:N=>({position:"relative",zIndex:1,p:2,borderRadius:4,border:"1px solid",borderColor:d?"primary.main":"divider",background:N.palette.mode==="dark"?"linear-gradient(180deg, rgba(30,41,59,0.96), rgba(15,23,42,0.92))":"linear-gradient(180deg, #ffffff, #f8fafc)",color:"text.primary",boxShadow:d?"0 18px 42px rgba(37, 99, 235, 0.18)":"0 12px 28px rgba(15, 23, 42, 0.08)",transform:`translate3d(${m}px, 0, 0) scale(${c?.985:1})`,transition:x?"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]}),s?jsx(Box,{"data-no-swipe":"true",...h,sx:{alignSelf:"center",display:"inline-flex",touchAction:"none"},children:jsx(IconButton,{size:"small",children:jsx(dC,{})})}):null]}),r.length>0?jsx(Stack,{direction:"row",spacing:1,useFlexGap:true,flexWrap:"wrap",children:r.map((N,X)=>jsx(Chip,{label:N,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(N=>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:N.label}),jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800,lineHeight:1.2},children:N.value})]},N.id))}):null,l,i]})})]})};var pi=({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}),I5=({value:e,defaultValue:t="",title:o,subtitle:a,placeholder:r="0",allowDecimal:n=false,allowNegative:i=false,maxLength:l,confirmLabel:d,clearLabel:s,backspaceLabel:c,onChange:g,onSubmit:f,onClose:u,sx:h})=>{let{t:w}=Z(),[p,v]=useState(t),m=e??p,y=C=>{e===void 0&&v(C),g?.(C);},x=C=>{l&&m.length>=l||y(`${m}${C}`);},k=C=>{if(C==="00"){if(!m){y("0");return}x("00");return}x(C);},F=()=>{!n||m.includes(".")||y(m?`${m}.`:"0.");},S=()=>{if(i){if(m.startsWith("-")){y(m.slice(1));return}y(m?`-${m}`:"-");}},T=()=>{y(m.slice(0,-1));},A=()=>{y("");},R=()=>{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(fC,{})}):null]}),jsx(Paper,{elevation:0,sx:{p:2,borderRadius:3,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsx(Typography,{sx:{minHeight:38,fontSize:m?"1.9rem":"1.25rem",fontWeight:900,letterSpacing:"0.06em",color:m?"text.primary":"text.disabled"},children:m||r})}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[["1","2","3","4","5","6","7","8","9"].map(C=>jsx(pi,{label:C,onPress:()=>k(C)},C)),jsx(pi,{label:i?"+/-":"00",onPress:i?S:()=>k("00")}),jsx(pi,{label:"0",onPress:()=>k("0")}),jsx(pi,{label:n?".":c?String(c):"DEL",onPress:n?F:T})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[jsx(Box,{component:"button",type:"button",onClick:T,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(gC,{}),jsx(Typography,{sx:{fontWeight:700},children:c||"DEL"})]})}),jsx(pi,{label:String(s||"CLR"),onPress:A,emphasis:"danger"}),jsx(Box,{component:"button",type:"button",onClick:R,sx:C=>({minHeight:64,borderRadius:3,border:"1px solid",borderColor:"primary.main",background:C.palette.primary.main,color:"#fff",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"}),children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",alignItems:"center",children:[jsx(hC,{}),jsx(Typography,{sx:{fontWeight:800},children:d||w("common.ok")})]})})]})]})})};var pm=({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(cr,{...o})})};var SC=(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);}},gm=({items:e,selectedId:t,orientation:o="auto",onItemSelect:a,sx:r})=>{let n=useTheme$1(),[i,l]=useState(false);useEffect(()=>{l(true);},[]);let d=useMediaQuery("(orientation: portrait)",{noSsr:true}),s=useMediaQuery(n.breakpoints.down("md"),{noSsr:true}),c=o==="auto"?d||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:()=>SC(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 bm=(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?bm(a.children,t):[];return (r||n.length>0)&&o.push({...a,children:n.length>0?n:a.children}),o},[]):e,zC=e=>{let t=new Set,o=a=>{a.forEach(r=>{r.children?.length&&(t.add(r.id),o(r.children));});};return o(e),t},xm=({collapsed:e=false,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light",orientation:i="auto",headerSlot:l,footerSlot:d,activeHref:s,onItemSelect:c})=>{let{t:g}=Z(),f=useTheme$1(),u=useMediaQuery("(orientation: portrait)"),h=useMediaQuery(f.breakpoints.down("md")),w=i==="auto"?u||h?"portrait":"landscape":i,p=n==="dark",v=useRouter(),m=usePathname(),[y,x]=useState(""),[k,F]=useState(new Set),S=useMemo(()=>bm(r,y),[r,y]),T=useMemo(()=>y.trim()?zC(S):k,[k,S,y]);useEffect(()=>{e&&F(new Set);},[e]);let A=P=>P.appurl||P.href||"",R=P=>{c?.(P);let M=A(P);if(M){if(M.startsWith("http://")||M.startsWith("https://")){window.open(M,"_blank");return}v.push(M);}},C=P=>{let M=!!P.children?.length;if(e&&M){t?.();return}if(M){F($=>{let N=new Set($);return N.has(P.id)?N.delete(P.id):N.add(P.id),N});return}R(P);},D=P=>{let M=s||m,$=A(P);return !!($&&M===$)},I=(P,M=0)=>{let $=!!P.children?.length,N=T.has(P.id),X=D(P);return jsx(Box,{sx:{pl:M===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:()=>C(P),sx:{width:"100%",px:1.5,py:1.4,display:"flex",alignItems:"center",gap:1.25,border:0,background:"transparent",textAlign:"left",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"},children:[jsx(Avatar,{variant:"rounded",sx:{width:40,height:40,bgcolor:X?"primary.main":"action.hover",color:X?"#fff":"text.primary"},children:P.icon||(P.title||P.label||"?").slice(0,1).toUpperCase()}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.95rem",fontWeight:800,lineHeight:1.2},children:P.title||P.label}),P.description?jsx(Typography,{sx:{mt:.4,fontSize:"0.78rem",color:"text.secondary",lineHeight:1.35},children:P.description}):null]}),$?jsx(EC,{sx:{transform:N?"rotate(180deg)":"rotate(0deg)",transition:"transform 180ms ease"}}):jsx(LC,{color:"action"})]}),$?jsx(Collapse,{in:N,children:jsx(Box,{sx:{px:1.25,pb:1.25},children:P.children?.map(oe=>I(oe,M+1))})}):null]})},P.id)};return e?jsx(Paper,{elevation:0,className:o,sx:{width:w==="portrait"?"100%":88,p:1,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:p?"#101828":"rgba(255,255,255,0.88)",maxHeight:a?`${a}px`:void 0,overflowY:"auto"},children:jsxs(Stack,{spacing:1,children:[jsx(IconButton,{onClick:t,sx:{width:48,height:48,alignSelf:"center",bgcolor:"action.hover"},title:g("navigation.expand"),children:jsx(FC,{})}),r.map(P=>jsx(IconButton,{onClick:()=>C(P),sx:{width:56,height:56,alignSelf:"center",borderRadius:3,bgcolor:D(P)?"primary.main":"action.hover",color:D(P)?"#fff":"text.primary"},children:P.icon||(P.title||P.label||"?").slice(0,1).toUpperCase()},P.id))]})}):jsx(Paper,{elevation:0,className:o,sx:{width:w==="portrait"?"100%":320,p:1.25,borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:p?"#101828":"rgba(255,255,255,0.88)",maxHeight:a?`${a}px`:void 0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsxs(Stack,{spacing:1.25,sx:{flex:1,minHeight:0},children:[jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[jsx(TextField,{value:y,onChange:P=>x(P.target.value),placeholder:g("navigation.searchPlaceholder"),size:"small",fullWidth:true,InputProps:{startAdornment:jsx(AC,{fontSize:"small",color:"action"})}}),w==="landscape"&&!e?jsx(IconButton,{onClick:t,sx:{bgcolor:"action.hover"},children:jsx(BC,{})}):null]}),l,jsx(Box,{sx:{flex:1,minHeight:0,overflowY:"auto",pr:.25},children:S.length>0?S.map(P=>I(P)):jsx(Typography,{sx:{p:2,fontSize:"0.88rem",color:"text.secondary",textAlign:"center"},children:g("navigation.noMatch")})}),d]})})};var Pm=(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)},HC=e=>ct__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}),GC=(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)},UC=({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}`))})]})})},KC=e=>{let{t}=Z(),o=useTheme$1(),{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:l,actions:d,extraTools:s,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:u=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:w,filterConfig:p,rowKey:v,tableKey:m="default",graphReport:y,quickCreate:x,quickEdit:k,quickDelete:F,serviceUrl:S,orientation:T="auto",cardTitleField:A,cardSubtitleFields:R,toolbarSlot:C,emptyState:D,rowHeight:I="comfortable",cardActionSlot:P,renderCardFooter:M,onRowClick:$}=e,N=a||t("table.title.default"),X=useMediaQuery("(orientation: portrait)"),oe=useMediaQuery(o.breakpoints.down("md")),te=T==="auto"?X||oe?"portrait":"landscape":T,{columns:re,filterText:Q,setFilterText:U,visibleColumns:Y,showSummary:Re,setShowSummary:j,summaryColumns:fe,grouping:Se,setGrouping:Ne,expandedGroups:Ke,groupAnchorEl:ve,setGroupAnchorEl:Fe,summaryAnchorEl:xo,setSummaryAnchorEl:jt,anchorEl:Qe,setAnchorEl:Mt,contextMenu:Lt,sortedAndFilteredRows:bt,summaryRow:H,visibleRows:he,page:pe,setPage:ye,rowsPerPage:Xe,setRowsPerPage:Ve,totalDisplayCount:co,setSelected:vo,handleClick:Co,toggleSummaryColumn:ko,handleExport:So,handleCloseContextMenu:Me,toggleColumnVisibility:ge,toggleGroupExpand:xt,toggleGroupField:Ee,handleExpandGroupRecursively:zt,handleCollapseGroupRecursively:wo,handleLayoutLoad:_a,handleVariantLoad:V,handleLayoutSave:O,effectiveAppId:K,currentLayoutData:be,currentLayoutId:Ce,layoutIdToLoad:Be,graphReportOpen:me,handleOpenGraphReport:Le,handleCloseGraphReport:we}=Qr(e),ze=y?.enabled??false,Ae=ze&&(y?.interaction?.enabled??true),ke=Ki(),De=v||"id",Nt=ct__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]),To=ct__default.useMemo(()=>({...Nt,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)}),[Nt,o]),gt=ct__default.useMemo(()=>{let z=new Set(i);return bt.filter(J=>z.has(J?.[De]))},[De,i,bt]),vt=gt.length===1?gt[0]:null,po=!!x?.enabled,va=!!k?.enabled,Pr=!!F?.enabled,Io=x?.fields,Xt=x?.excludeFields||[],Za=x?.initialValues||{},Qo=k?.fields,Vt=k?.excludeFields||[],Qt=k?.editableFields||[],At=k?.nonEditableFields||[],Oe=k?.primaryKeys?.length?k.primaryKeys:[De],[Yo,Wo]=ct__default.useState(false),[Jo,ja]=ct__default.useState(false),[$o,Xa]=ct__default.useState({}),[Qa,Ho]=ct__default.useState(false),[ea,Ca]=ct__default.useState(false),[Ot,Po]=ct__default.useState({}),[ta,uo]=ct__default.useState(false),[Go,Ya]=ct__default.useState(false),Rr=u||Jo||ea||Go,ka=ct__default.useMemo(()=>{let z=[...re];if(Array.isArray(Io)&&Io.length>0){let J=new Set(Io);z=z.filter(G=>J.has(G.id));}if(Xt.length>0){let J=new Set(Xt);z=z.filter(G=>!J.has(G.id));}return z.filter(J=>!!J?.id)},[re,Xt,Io]),Ja=ct__default.useMemo(()=>{let z=[...re];if(Array.isArray(Qo)&&Qo.length>0){let J=new Set(Qo);z=z.filter(G=>J.has(G.id));}if(Vt.length>0){let J=new Set(Vt);z=z.filter(G=>!J.has(G.id));}return z.filter(J=>!!J?.id)},[re,Vt,Qo]),oa=ct__default.useMemo(()=>new Set(Oe),[Oe]),Ut=ct__default.useMemo(()=>new Set(Qt),[Qt]),Ro=ct__default.useMemo(()=>new Set(At),[At]),Dr=ct__default.useCallback(z=>Ut.size>0?Ut.has(z):!(Ro.has(z)||oa.has(z)),[Ut,Ro,oa]);ct__default.useEffect(()=>{!me&&ke.hasActiveFilters&&ke.clearAll();},[ke,me]);let er=()=>{let z={};ka.forEach(J=>{z[J.id]=Za[J.id]??"";}),Xa(z),Wo(true);},Mr=(z,J)=>{Xa(G=>({...G,[z]:J}));},Ar=async()=>{if(!x?.onSubmit){Wo(false);return}try{ja(!0),await x.onSubmit($o),Wo(!1);}finally{ja(false);}},Br=()=>{if(!vt)return;let z={};Ja.forEach(G=>{z[G.id]=vt[G.id]??"";});let J=k?.getInitialValues?{...z,...k.getInitialValues(vt)}:z;Po(J),Ho(true);},Yt=(z,J)=>{Po(G=>({...G,[z]:J}));},Fr=async()=>{if(vt){if(!k?.onSubmit){Ho(false);return}try{Ca(!0),await k.onSubmit(Ot,vt),Ho(!1);}finally{Ca(false);}}},Er=()=>{gt.length!==0&&uo(true);},tr=async()=>{if(gt.length===0){uo(false);return}if(!F?.onConfirm){uo(false),vo([]),l?.([]);return}try{Ya(!0),await F.onConfirm(gt),uo(!1),vo([]),l?.([]);}finally{Ya(false);}},aa=bt,{fieldMapping:Sa}=_r({rows:aa,config:{...y,title:y?.title||`${N} ${t("graph.reportTitle")}`}}),wa=ct__default.useMemo(()=>Ae?ke.applyRows(aa,Sa):aa,[Sa,ke,Ae,aa]),{model:b}=_r({rows:wa,config:{...y,title:y?.title||`${N} ${t("graph.reportTitle")}`,fieldMapping:Sa}}),B=b.table.columns.map(z=>({id:z.id,label:z.label,align:z.align||"left",minWidth:120,numeric:z.align==="right"})),E=K?jsx(ts,{appId:K,tableKey:m,currentLayoutData:be,onLayoutLoad:_a,targetLayoutId:Be,activeLayoutId:Ce,serviceUrl:S??p?.serviceUrl}):null,W=re.filter(z=>Y.includes(z.id)),ee=W.find(z=>z.id===A)||W[0],ue=R?.map(z=>W.find(J=>J.id===z)).filter(Boolean)||W.filter(z=>z.id!==ee?.id).slice(0,te==="portrait"?2:3),L=W.filter(z=>z.id!==ee?.id&&!ue.some(J=>J.id===z.id)),_=[C,s].filter(Boolean),q=jsxs(Fragment,{children:[jsx(zr,{groupAnchorEl:ve,setGroupAnchorEl:Fe,grouping:Se,setGrouping:Ne,columns:re,toggleGroupField:Ee}),jsx(Nr,{anchorEl:Qe,setAnchorEl:Mt,columns:re,visibleColumns:Y,toggleColumnVisibility:ge}),jsx(Ii,{anchorEl:xo,setAnchorEl:jt,showSummary:Re,setShowSummary:j,columns:re,summaryColumns:fe,toggleSummaryColumn:ko}),jsx(Pi,{contextMenu:Lt,handleCloseContextMenu:Me,columns:re,visibleColumns:Y,toggleColumnVisibility:ge})]}),_e=(z,J,G)=>{let ie=i.includes(J),We=te==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(140px, 1fr))",Uo=G%2===0?alpha(o.palette.primary.main,o.palette.mode==="dark"?.09:.04):alpha(o.palette.primary.main,o.palette.mode==="dark"?.05:.022),Pg=alpha(o.palette.divider,.22);return jsx(Paper,{elevation:0,onClick:()=>{Co({},z),$?.(z);},sx:{p:I==="compact"?1.25:1.5,borderRadius:4,border:"0.5px solid",borderColor:ie?alpha(o.palette.primary.main,.38):Pg,background:ie?`linear-gradient(135deg, ${alpha(o.palette.primary.main,.13)}, ${alpha(o.palette.primary.main,.06)})`:`linear-gradient(135deg, ${Uo}, ${alpha(o.palette.primary.main,.015)})`,boxShadow:ie?`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:ie?o.palette.primary.main:G%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:ie,onClick:Jt=>Jt.stopPropagation(),onChange:()=>Co({},z),sx:{mt:-0.6,ml:-0.6}}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[ee?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:900,lineHeight:1.25},children:Pm(ee,z)}):null,ue.length>0?jsx(Stack,{direction:"row",spacing:.75,useFlexGap:true,flexWrap:"wrap",sx:{mt:.75},children:ue.map(Jt=>jsx(Chip,{label:`${Jt.label}: ${GC(Jt,z)}`,size:"small",variant:"outlined",sx:Nt},`${J}-${Jt.id}`))}):null]}),P?jsx(Box,{onClick:Jt=>Jt.stopPropagation(),children:P(z)}):null]}),L.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:We,gap:1},children:L.map(Jt=>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:Jt.label}),HC(Pm(Jt,z))]},`${J}-${Jt.id}-detail`))}):null,M?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{onClick:Jt=>Jt.stopPropagation(),children:M(z)})]}):null]})},J)};return jsxs(Box,{sx:{width:g?"100%":"auto",mb:c?0:2,...c?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[p?jsx(Box,{sx:{mb:2},children:jsx(pm,{...p,onVariantLoad:z=>{V(z),p.onVariantLoad?.(z);},appId:p.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:be}],currentLayoutId:Ce,layoutRefs:[{tableKey:m,layoutId:Ce}],variantService:p.variantService,serviceUrl:S??p.serviceUrl,touchMode:te==="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":Rr?{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(Ci,{filterText:Q,setFilterText:U,onRowsPerPageChange:Ve,rowsPerPage:Xe,rowsPerPageOptions:h,page:pe,count:co,onPageChange:ye,actions:d,extraTools:_,grouping:Se,setGroupAnchorEl:Fe,showSummary:Re,setShowSummary:j,setAnchorEl:Mt,setSummaryAnchorEl:jt,handleExport:So,showCreateButton:po,onOpenCreateDialog:er,showEditButton:va,onOpenEditDialog:Br,editDisabled:gt.length!==1,showDeleteButton:Pr,onOpenDeleteConfirm:Er,deleteDisabled:gt.length===0,onLayoutSave:w||p?.variantService&&p?.appId?O:void 0,loading:u,layoutManager:E,onOpenGraphReport:ze?Le:void 0})}):null,jsx(Box,{sx:{flex:1,minHeight:0,overflow:"auto",p:1.5},children:jsxs(Stack,{spacing:1.25,children:[he.length===0&&!u?D||jsx(Paper,{elevation:0,sx:{p:4,borderRadius:4,border:"1px dashed",borderColor:"divider",textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.92rem",color:"text.secondary"},children:t("common.noData")})}):null,he.map((z,J)=>{if(z.type==="group"){let We=Ke.has(z.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:()=>xt(z.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:[We?jsx(EC,{}):jsx(LC,{}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsxs(Typography,{sx:{fontSize:"0.94rem",fontWeight:800},children:[z.field,": ",z.value]}),jsxs(Typography,{sx:{mt:.2,fontSize:"0.76rem",color:"text.secondary"},children:[z.count," records"]})]}),Se.length>1&&z.level<Se.length-1?jsxs(Stack,{direction:"row",spacing:.5,children:[jsx(Chip,{size:"small",label:t("table.group.expandAll"),onClick:Uo=>{Uo.stopPropagation(),zt(z.id);},sx:To}),jsx(Chip,{size:"small",label:t("table.group.collapseAll"),onClick:Uo=>{Uo.stopPropagation(),wo(z.id);},sx:To})]}):null]})},z.id)}let G=z.data||z,ie=z.id||G[De]||J;return _e(G,ie,J)}),Re?jsx(UC,{summaryRow:H,visibleColumns:Y,columns:re}):null,u?jsx(Typography,{sx:{py:1,fontSize:"0.84rem",color:"text.secondary",textAlign:"center"},children:t("common.loading")}):null]})})]}),po?jsxs(Dialog,{open:Yo,onClose:()=>!Jo&&Wo(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:x?.title||t("quickCreate.createWithTitle",{title:N})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[ka.map(z=>{let J=z.type==="number"||z.numeric?"number":z.type==="date"?"date":"text";return jsx(TextField,{label:z.label||z.id,value:$o[z.id]??"",onChange:G=>Mr(z.id,G.target.value),type:J,fullWidth:true,InputLabelProps:{shrink:J==="date"?true:void 0}},`quick-create-${z.id}`)}),x?.description?jsx(Alert,{severity:"info",children:x.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Wo(false),disabled:Jo,children:x?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Ar,variant:"contained",disabled:Jo,children:x?.submitLabel||t("common.save")})]})]}):null,va?jsxs(Dialog,{open:Qa,onClose:()=>!ea&&Ho(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:k?.title||t("quickEdit.editWithTitle",{title:N})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Ja.map(z=>{let J=z.type==="number"||z.numeric?"number":z.type==="date"?"date":"text";return jsx(TextField,{label:z.label||z.id,value:Ot[z.id]??"",onChange:G=>Yt(z.id,G.target.value),type:J,disabled:!Dr(z.id),fullWidth:true,InputLabelProps:{shrink:J==="date"?true:void 0}},`quick-edit-${z.id}`)}),k?.description?jsx(Alert,{severity:"info",children:k.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Ho(false),disabled:ea,children:k?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Fr,variant:"contained",disabled:ea||!vt,children:k?.submitLabel||t("common.save")})]})]}):null,Pr?jsx(In,{open:ta,type:"warning",title:F?.title||t("quickDelete.confirmTitle"),message:F?.message||(gt.length>1?t("quickDelete.confirmMessageMultiple",{count:gt.length}):t("quickDelete.confirmMessageSingle")),confirmText:F?.confirmText||t("common.delete"),cancelText:F?.cancelText||t("common.cancel"),onClose:()=>!Go&&uo(false),onConfirm:tr}):null,q,ze?jsx(Gi,{open:me,onClose:we,model:b,aiAssistant:y?.aiAssistant,interaction:Ae?{enabled:true,filters:ke.filters,fieldMapping:Sa,onPrimaryDimensionClick:z=>ke.setFilter("primaryDimension",z),onSecondaryDimensionClick:z=>ke.setFilter("secondaryDimension",z),onStatusClick:z=>ke.setFilter("status",z),onClearFilter:ke.clearFilter,onClearAll:ke.clearAll}:void 0,tableContent:jsx(KC,{appId:K||"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 kF=({appTitle:e,children:t,menuData:o=[],workloadItems:a=[],workloadSelectedId:r,showNavigation:n=true,showWorkloadNav:i=true,orientation:l="auto",logo:d,headerSlot:s,actionSlot:c,portraitBottomSlot:g,contentSx:f,containerSx:u,user:h,onSearch:w,defaultNavigationOpen:p,navOpen:v,onNavOpenChange:m,onWorkloadSelect:y,locale:x="en",localeLabel:k,localeOptions:F,onLocaleChange:S,onUserSetting:T,onUserLogout:A,userMenuItems:R,leftHeaderSlot:C,rightHeaderSlot:D})=>{let I="orbcafe:page-layout-mode",[P,M]=useState("system"),[$,N]=useState("light"),[X,oe]=useState(false),[te,re]=useState(false),Q=P==="system"?te?$:"light":P;useEffect(()=>{oe(true);},[]),useEffect(()=>{try{let Lt=window.localStorage.getItem(I);(Lt==="light"||Lt==="dark"||Lt==="system")&&M(Lt);}catch{}re(true);let Qe=window.matchMedia("(prefers-color-scheme: dark)"),Mt=()=>{N(Qe.matches?"dark":"light");};return Mt(),Qe.addEventListener("change",Mt),()=>Qe.removeEventListener("change",Mt)},[]),useEffect(()=>{if(te)try{window.localStorage.setItem(I,P);}catch{}},[te,P]),useEffect(()=>{Q==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[Q]);let U=useMemo(()=>createTheme$1({palette:Q==="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:Q==="dark"?"#060913":"#eef3f8"}}},MuiPaper:{styleOverrides:{root:{backgroundImage:"none"}}}}}),[Q]),Y=useMediaQuery("(orientation: portrait)"),Re=useMediaQuery(U.breakpoints.down("md")),j=l==="auto"?!X||Y||Re?"portrait":"landscape":l,[fe,Se]=useState({landscape:p??true,portrait:false}),Ne=fe[j],Ke=v??Ne,ve=Qe=>{v===void 0&&Se(Mt=>({...Mt,[j]:Qe})),m?.(Qe);},Fe=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[!X||n&&j==="portrait"?jsx(IconButton,{onClick:()=>ve(!Ke),sx:{bgcolor:"action.hover"},children:jsx(FC,{})}):null,C]}),xo=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[c,D]}),jt=jsx(xm,{collapsed:j==="landscape"?!Ke:false,onToggle:()=>ve(!Ke),menuData:o,orientation:j,colorMode:Q,maxHeight:j==="landscape"?900:void 0});return jsx(ThemeProvider$1,{theme:U,children:jsx(vi,{locale:x,children:jsxs(Box,{sx:[Qe=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:Qe.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":Qe.palette.background.default}),...Array.isArray(u)?u:[u]],children:[jsx(Cs,{appTitle:e,logo:d===void 0?null:d,mode:P,onToggleMode:()=>M(Qe=>Qe==="system"?"dark":Qe==="dark"?"light":"system"),locale:x,localeLabel:k,localeOptions:F,onLocaleChange:S,user:h,onUserSetting:T,onUserLogout:A,userMenuItems:R,onSearch:w,leftSlot:Fe,rightSlot:xo}),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:[X&&n&&j==="landscape"?jsx(Box,{sx:{p:1.5,pr:0,flexShrink:0},children:jt}):null,!X||n&&j==="portrait"?jsx(Drawer,{open:Ke,onClose:()=>ve(false),PaperProps:{sx:{width:"min(88vw, 360px)",p:1.25,bgcolor:"transparent",boxShadow:"none"}},children:jt}):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(gm,{items:a,selectedId:r,orientation:j,onItemSelect:y}):null,jsx(Paper,{elevation:0,sx:{flex:1,minHeight:j==="portrait"?420:560,p:{xs:1.25,md:1.5},borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:U.palette.mode==="dark"?"rgba(15,23,42,0.72)":"rgba(255,255,255,0.72)",backdropFilter:"blur(12px)",color:"text.primary"},children:t})]})})]}),j==="portrait"&&g?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{sx:{p:1.5},children:g})]}):null]})})})};var Mm=tk(()=>import('./COrbCanvas-EGX5NO3Y.mjs').then(e=>e.COrbCanvas),{ssr:false,loading:()=>jsx("div",{className:"h-full w-full bg-transparent"})});function $c({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(Mm,{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(Mm,{hue:10,hoverIntensity:.8,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})})]})})})}var PF=$c;function _s({onTextUpdate:e,onComplete:t,onError:o,wsUrl:a="ws://localhost:8765",silenceThresholdMs:r=2e3,minVolumeRms:n=.015}){let[i,l]=useState(false),d=useRef(null),s=useRef(null),c=useRef(null),g=useRef(null),f=useRef(null),u=useRef(0),h=useRef(false),w=useRef(false),p=useCallback(()=>{d.current&&(d.current.close(),d.current=null),g.current&&(g.current.disconnect(),g.current=null),f.current&&(f.current.disconnect(),f.current=null),s.current&&(s.current.getTracks().forEach(y=>y.stop()),s.current=null),c.current&&(c.current.close(),c.current=null),w.current=false,l(false);},[]),v=useCallback(()=>{h.current||(h.current=true,d.current?.readyState===WebSocket.OPEN&&d.current.send(JSON.stringify({type:"stop"})),setTimeout(p,500));},[p]),m=useCallback(async()=>{if(!(i||w.current)){w.current=true,h.current=false,u.current=Date.now();try{let y=await navigator.mediaDevices.getUserMedia({audio:{channelCount:1,sampleRate:16e3,echoCancellation:!0,noiseSuppression:!0}});s.current=y;let x=new WebSocket(a);d.current=x,x.onopen=()=>{l(!0),w.current=!1;},x.onmessage=A=>{try{let R=JSON.parse(A.data);if(R.type==="recognition")R.is_final?t(R.text):e?.(R.text);else if(R.type==="error"){let C=R.message||"Voice recognition error";o?.(C),v();}}catch{o?.("Failed to parse voice message");}},x.onerror=()=>{o?.("Voice service connection failed"),p();},x.onclose=()=>{p();};let k=window.AudioContext||window.webkitAudioContext;if(!k)throw new Error("AudioContext is not supported in this browser");let F=new k({sampleRate:16e3});c.current=F;let S=F.createMediaStreamSource(y);f.current=S;let T=F.createScriptProcessor(4096,1,1);g.current=T,T.onaudioprocess=A=>{if(d.current?.readyState!==WebSocket.OPEN)return;let R=A.inputBuffer.getChannelData(0),C=0;for(let P=0;P<R.length;P+=1)C+=R[P]*R[P];if(Math.sqrt(C/R.length)>n)u.current=Date.now();else if(Date.now()-u.current>r&&!h.current){v();return}let I=new Int16Array(R.length);for(let P=0;P<R.length;P+=1){let M=Math.max(-1,Math.min(1,R[P]));I[P]=M<0?M*32768:M*32767;}d.current.send(I.buffer);},S.connect(T),T.connect(F.destination);}catch{o?.("Cannot access microphone"),p();}}},[p,i,n,t,o,e,r,v,a]);return useEffect(()=>p,[p]),{isRecording:i,startRecording:m,stopRecording:v}}var Bm=createContext(null);function pk(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 uk({children:e,onVoiceSubmit:t,onVoicePartial:o,onVoiceError:a,longPressMs:r=200,disableSpaceTrigger:n=false,ignoreWhenFocusedInput:i=true,renderOverlay:l=true,wsUrl:d,silenceThresholdMs:s,minVolumeRms:c}){let[g,f]=useState(false),[u,h]=useState(false),w=useRef(null),p=useRef(false),v=useRef(false),m=useCallback(()=>{v.current=false,f(false);},[]),{isRecording:y,startRecording:x,stopRecording:k}=_s({wsUrl:d,silenceThresholdMs:s,minVolumeRms:c,onTextUpdate:A=>{o?.(A);},onComplete:async A=>{try{A.trim()&&(h(!0),await t(A.trim()));}catch(R){let C=R instanceof Error?R.message:"Failed to process voice command";a?.(C);}finally{h(!1),m();}},onError:A=>{a?.(A),h(!1),p.current||m();}}),F=useCallback(async()=>{v.current=false,await x();},[x]),S=useCallback(()=>{k();},[k]);useEffect(()=>{if(n)return;let A=C=>{C.isComposing||(C.code==="Space"||C.key===" ")&&(p.current||C.repeat||i&&pk(document.activeElement)||(p.current=true,C.preventDefault(),w.current=setTimeout(()=>{v.current=true,f(true),x();},r)));},R=C=>{(C.code==="Space"||C.key===" ")&&(w.current&&(clearTimeout(w.current),w.current=null),p.current=false,v.current&&(C.preventDefault(),f(false),k()));};return window.addEventListener("keydown",A),window.addEventListener("keyup",R),()=>{window.removeEventListener("keydown",A),window.removeEventListener("keyup",R),w.current&&(clearTimeout(w.current),w.current=null);}},[n,i,r,x,k]);let T=useMemo(()=>({isRecording:y,isHotkeyRecording:g,isSubmitting:u,startRecording:F,stopRecording:S}),[g,y,u,F,S]);return jsxs(Bm.Provider,{value:T,children:[l?jsx($c,{isRecording:g}):null,e]})}function mk(){let e=useContext(Bm);if(!e)throw new Error("useAINav must be used within CAINavProvider");return e}var LF=uk,zF=mk;function Ie(...e){return twMerge(clsx(e))}var vk=({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})]})},Fm=vk;var Rk=({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);}},d=r==="dark"?oneDark:oneLight;return jsxs("div",{className:Ie("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:d,customStyle:{margin:0,padding:"16px",fontSize:"14px",lineHeight:"1.5",backgroundColor:r==="dark"?"#1f2937":"#ffffff"},wrapLongLines:true,children:e})})]})},Lm=Rk;var Bk=({content:e,isLoading:t,className:o="",style:a})=>{let r=useRef(null),[n,i]=useState(false),[l,d]=useState(null),{theme:s}=useTheme$2();return useEffect(()=>{let c=async()=>{if(!(!e.trim()||!r.current)){i(true),d(null);try{Nm.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 Nm.render(f,u);r.current&&(r.current.innerHTML=h);}catch(f){console.error("Mermaid render failed:",f),d(f instanceof Error?f.message:"Render failed"),r.current&&(r.current.innerText=e);}finally{i(false);}}},g=setTimeout(()=>{c();},100);return ()=>clearTimeout(g)},[e,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})},Om=Bk;var Vk=({title:e="\u53D1\u751F\u9519\u8BEF",content:t,errorCode:o,stack:a,icon:r,closable:n=true,onClose:i,onRetry:l,className:d="",...s})=>{let[c,g]=useState(false),[f,u]=useState(false),h=async()=>{if(l){u(true);try{await l();}catch(w){console.error("\u91CD\u8BD5\u5931\u8D25:",w);}finally{u(false);}}};return jsxs("div",{className:`relative w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...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})})]})},Zs=Vk;var Uk=({title:e="\u8B66\u544A",content:t,warningType:o,severity:a="warning",warnings:r=[],icon:n,closable:i=true,onClose:l,onConfirm:d,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((w,p)=>jsxs("li",{className:"flex items-start text-sm text-gray-600 dark:text-gray-300",children:[jsx("span",{className:"mr-2 mt-1.5 w-1 h-1 rounded-full bg-gray-400 dark:bg-gray-500 flex-shrink-0"}),jsx("span",{children:w})]},p))})]}),i&&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"})})]}),d&&jsx("div",{className:"bg-gray-50 dark:bg-gray-800/50 px-4 py-3 flex justify-end border-t border-gray-100 dark:border-gray-800",children:jsx("button",{onClick:d,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:s||"\u786E\u8BA4"})})]})},js=Uk;var Zk=({title:e="\u76F8\u5173\u63A8\u8350",content:t,suggestions:o,onSuggestionClick:a,maxDisplay:r=5,icon:n,closable:i=false,onClose:l,className:d="",...s})=>{let[c,g]=useState(false),[f,u]=useState(""),[h,w]=useState(false),p=useMemo(()=>f.trim()?o.filter(y=>y.toLowerCase().includes(f.toLowerCase())):o,[o,f]),v=useMemo(()=>c?p:p.slice(0,r),[p,c,r]),m=y=>{a?.(y);};return !o||o.length===0?null:jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...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:()=>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&&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:v.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))}),p.length>r&&jsx("button",{onClick:()=>g(!c),className:"w-full text-center py-2 text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 transition-colors border-t border-gray-50 dark:border-gray-800/50 mt-1",children:c?"\u6536\u8D77":`\u67E5\u770B\u5168\u90E8 (${p.length})`}),p.length===0&&f&&jsx("div",{className:"text-center py-4 text-sm text-gray-500 dark:text-gray-400",children:"\u6CA1\u6709\u627E\u5230\u5339\u914D\u7684\u5EFA\u8BAE"})]})]})},Xs=Zk;var tS=({title:e,content:t,toolName:o,parameters:a,result:r,status:n,duration:i,icon:l,closable:d=false,onClose:s,onAction:c,actionText:g,className:f="",...u})=>{let[h,w]=useState(false),[p,v]=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=S=>S?S<1e3?`${S}ms`:`${(S/1e3).toFixed(2)}s`:"",k=m(),F=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 ${k.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:F}),jsx("span",{className:`text-[10px] font-medium px-1.5 py-0.5 rounded ${k.badgeBg} ${k.badgeText}`,children:k.label})]}),o&&e&&jsxs("div",{className:"text-xs text-gray-500 dark:text-gray-400 flex items-center mt-0.5",children:[jsx(Terminal,{className:"w-3 h-3 mr-1"}),o]})]})]}),jsxs("div",{className:"flex items-center space-x-2 text-xs text-gray-500 dark:text-gray-400",children:[i&&jsxs("div",{className:"flex items-center bg-gray-100 dark:bg-gray-800 px-2 py-1 rounded",children:[jsx(Clock,{className:"w-3 h-3 mr-1"}),x(i)]}),d&&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:()=>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:()=>v(!p),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 mb-2",children:[p?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),jsx(Terminal,{className:"w-3.5 h-3.5 mr-1.5"}),"\u6267\u884C\u7ED3\u679C"]}),p&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-hidden",children:jsx("pre",{className:"p-3 text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto",children:typeof r=="string"?r:JSON.stringify(r,null,2)})})]}),c&&jsx("div",{className:"mt-3 pt-3 border-t border-gray-100 dark:border-gray-800 flex justify-end",children:jsx("button",{onClick:c,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:g||"\u6267\u884C\u64CD\u4F5C"})})]})]})},Qs=tS;var aS=({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(Fa,{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]})})},Ys=aS;var uS=({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(An,{data:o,orientation:r.orientation||"horizontal",valueSuffix:r.valueSuffix||"",minHeight:r.minHeight});case "line-chart-card":return jsx(Ld,{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),d=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(Li,{data:d,variant:r.variant||"donut",size:r.size,colors:r.colors});case "combo-chart-card":return jsx(zd,{data:o,barColor:r.barColor,lineColor:r.lineColor});case "heatmap-chart-card":return jsx(Vd,{data:o});case "fishbone-chart-card":return jsx(Wd,{branches:o,effect:r.effect||e||"Problem"});case "waterfall-chart-card":return jsx(Hd,{data:o,height:r.height});case "google-map-card":return jsx(Kd,{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(jd,{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)})]})})]})]})},Js=uS;var gS=({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)})})})]}),tl=gS;var ol=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 vS=({content:e,theme:t,size:o="base",className:a,enableCodeHighlight:r=true,enableMermaid:n=true,messageId:i,cardHooks:l})=>{let d=useMemo(()=>e?e.replace(/<think>([\s\S]*?)<\/think>/g,(f,u)=>`<div data-component="thinkbox" data-think-content="${encodeURIComponent(u.trim())}"></div>`):"",[e]),s=(f,u,h,w,p)=>{l?.onCardEvent?.({messageId:i,cardType:f,action:u,title:h,payload:w,rawData:p});},c=(f,u,h,w,p,v)=>{if(!(!p&&!l?.onCardEvent))return (...m)=>{let y=p?.(...m),x=v?v(...m):void 0;return s(f,u,h,x,w),y}},g=useMemo(()=>({div(f){let{"data-component":u,"data-think-content":h,...w}=f;return u==="thinkbox"&&h?jsx(Fm,{content:decodeURIComponent(h),theme:t,size:o,defaultExpanded:false}):jsx("div",{...w})},table({children:f}){return jsx("div",{className:"my-4 w-full overflow-x-auto rounded-lg border border-gray-200 dark:border-gray-800",children:jsx("table",{className:"w-full min-w-[520px] border-collapse text-sm",children:f})})},thead({children:f}){return jsx("thead",{className:"bg-gray-50 dark:bg-gray-900/60",children:f})},tbody({children:f}){return jsx("tbody",{className:"bg-white dark:bg-gray-950",children:f})},tr({children:f}){return jsx("tr",{className:"border-b border-gray-200 dark:border-gray-800 last:border-b-0",children:f})},th({children:f,align:u}){return jsx("th",{className:`px-3 py-2 font-semibold text-gray-800 dark:text-gray-100 ${u==="center"?"text-center":u==="right"?"text-right":"text-left"}`,children:f})},td({children:f,align:u}){return jsx("td",{className:`px-3 py-2 text-gray-700 dark:text-gray-200 align-top ${u==="center"?"text-center":u==="right"?"text-right":"text-left"}`,children:f})},code({inline:f,className:u,children:h,...w}){let p=/language-([\w-]+)/.exec(u||""),v=p?p[1]:"";if(f)return jsx("code",{className:"font-mono text-sm bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded text-red-600 dark:text-red-400",...w,children:h});let m=String(h).replace(/\n$/,"");if(n&&v==="mermaid")return jsx(Om,{content:m});if(v==="json"){let y=ol(m);if(y)switch(y.type){case "table":return jsx(Ys,{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(Js,{...y});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(tl,{...y});case "error-card":{let x=y;return jsx(Zs,{...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,k=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(js,{...x,onClose:c("warning-card","close",x.title,x,x.onClose),onConfirm:k})}case "suggestions-card":{let x=y;return jsx(Xs,{...x,onClose:c("suggestions-card","close",x.title,x,x.onClose),onSuggestionClick:c("suggestions-card","suggestion-click",x.title,x,x.onSuggestionClick,k=>({suggestion:k}))})}case "tool-result-card":{let x=y;return jsx(Qs,{...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(Lm,{content:m,language:v,className:"not-prose"}):jsx("code",{className:u,...w,children:h})}}),[t,o,n,r,l,i]);return jsx("div",{className:Ie("markdown-body prose dark:prose-invert max-w-none",a),children:jsx(fS,{remarkPlugins:[hS,yS],rehypePlugins:[bS,xS],components:g,children:d})})},al=vS;var CS=({content:e,messageId:t,cardHooks:o})=>{let a=(i,l,d,s,c)=>{o?.onCardEvent?.({messageId:t,cardType:i,action:l,title:d,payload:s,rawData:c});},r=(i,l,d,s,c,g)=>{if(!(!c&&!o?.onCardEvent))return (...f)=>{let u=c?.(...f),h=g?g(...f):void 0;return a(i,l,d,h,s),u}},n=ol(e);if(n)switch(n.type){case "table":return jsx(Ys,{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(Js,{...n});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(tl,{...n});case "error-card":{let i=n;return jsx(Zs,{...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(js,{...i,onClose:r("warning-card","close",i.title,i,i.onClose),onConfirm:l})}case "suggestions-card":{let i=n;return jsx(Xs,{...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(Qs,{...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(al,{content:e,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:t,cardHooks:o})})},jm=CS;var Xc=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"}}},SS=({content:e,className:t="",messageId:o,cardHooks:a})=>{let r=ct__default.useMemo(()=>Xc.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(jm,{content:n.content,messageId:o,cardHooks:a},`block-${i}`):jsx(al,{content:n.content,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:o,cardHooks:a},`block-${i}`))})},Xm=SS;var wS=({content:e,isStreaming:t=true,onComplete:o,className:a="",streamIntervalMs:r=24,streamChunkSize:n=3,messageId:i,cardHooks:l})=>{let[d,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(d>=e.length){g(true),o?.();return}let p=window.setTimeout(()=>{s(v=>Math.min(v+n,e.length));},r);return ()=>{window.clearTimeout(p);}},[e.length,c,t,o,n,r,d]);let f=()=>{t&&!c&&(s(e.length),g(true),o?.());},u=t?e.slice(0,d):e,h=t&&!c,w=t&&!c;return jsxs("div",{className:`streaming-markdown ${a}`,onClick:f,style:{cursor:t?"pointer":"default"},children:[jsxs("div",{className:"relative",children:[jsx(Xm,{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"}})]}),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"})]})},eg=wS;var tg=({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:Ie("flex items-center gap-1",t),children:e.map((a,r)=>jsx("button",{onClick:a.onClick,disabled:a.disabled,className:Ie("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 rl=({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(eg,{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(tg,{buttons:[{type:"refresh",onClick:()=>o?.onRegenerate?.(),disabled:!o?.onRegenerate},{type:"copy",onClick:()=>navigator.clipboard.writeText(e.content),disabled:false},{type:"volume",onClick:()=>console.log("\u8BED\u97F3\u64AD\u653E"),disabled:false},{type:"like",onClick:()=>console.log("\u70B9\u8D5E"),disabled:false},{type:"dislike",onClick:()=>console.log("\u70B9\u8E29"),disabled:false}],size:"sm",variant:"default"})}),jsx("div",{className:"text-xs mt-2 text-gray-500 dark:text-gray-400",children:e.timestamp.toLocaleTimeString()})]})}):jsx("div",{className:"flex justify-end",children:jsxs("div",{className:"max-w-[80%] bg-gray-100 dark:bg-gray-700 text-gray-800 dark:text-gray-100 rounded-2xl px-4 py-3 ml-auto",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[jsx("div",{className:"whitespace-pre-wrap",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:e.content}),jsx("div",{className:"text-xs mt-2 text-gray-500 dark:text-gray-400",children:e.timestamp.toLocaleTimeString()})]})});var ag=({onTextUpdate:e,onComplete:t,onCancel:o,disabled:a,className:r})=>{let{isRecording:n,startRecording:i,stopRecording:l}=_s({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:Ie("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(AS,{sx:{fontSize:24}}):jsx(MS,{sx:{fontSize:24}})})};var dt={container:"w-full max-w-4xl mx-auto",inputContainer:Ie("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:Ie("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:Ie("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:Ie("bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400","cursor-pointer active:scale-95"),sendButton:Ie("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:Ie("cursor-not-allowed opacity-40 bg-transparent text-gray-400"),stopButton:Ie("cursor-pointer bg-red-500 hover:bg-red-600 text-white shadow-sm active:scale-95")},OS={padding:0,lineHeight:"1.5",border:"none !important",boxShadow:"none !important",backgroundColor:"transparent",height:"auto",fontFeatureSettings:'"liga" 1, "kern" 1',WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},WS=({enabled:e,onClick:t})=>jsx("button",{className:Ie(dt.buttonBase,dt.buttonSmall,dt.buttonNormal),onClick:t,disabled:!e,"aria-label":"Upload file",type:"button",children:jsx(NS,{sx:{fontSize:24}})}),$S=()=>jsxs("button",{className:Ie(dt.buttonBase,"h-10 px-3 py-2 gap-1.5 rounded-full",dt.buttonNormal),"aria-label":"Tools",type:"button",children:[jsx(VS,{sx:{fontSize:20}}),jsx("span",{className:"text-sm font-medium",children:"Tools"})]}),HS=({canSend:e,isResponding:t,onSend:o,onStop:a})=>t?jsx("button",{className:Ie(dt.buttonBase,dt.buttonSmall,dt.stopButton),onClick:a,"aria-label":"Stop generating",type:"button",children:jsx(Stop,{sx:{fontSize:20}})}):jsx("button",{className:Ie(dt.buttonBase,dt.buttonSmall,e?dt.sendButton:dt.sendButtonDisabled),onClick:o,disabled:!e,"aria-label":"Send message",type:"button",children:jsx(zS,{sx:{fontSize:24},className:e?"text-gray-500 dark:text-gray-400":"text-gray-300 dark:text-gray-600"})}),rg=({onSend:e,onStop:t,isResponding:o=false,placeholder:a,getText:r})=>{let[n,i]=useState(""),[l,d]=useState([]),[s,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||l.length>0)&&!o,p={enabled:true},v=useCallback(M=>{i(M.target.value),M.target.style.height="auto",M.target.style.height=`${Math.min(M.target.scrollHeight,200)}px`;},[]),m=useCallback(M=>{if(M.target.files&&M.target.files.length>0){let $=Array.from(M.target.files);d(N=>{let X=$.filter(te=>N.some(re=>re.name===te.name&&re.size===te.size));X.length>0&&console.warn("Duplicate files ignored:",X.map(te=>te.name));let oe=$.filter(te=>!N.some(re=>re.name===te.name&&re.size===te.size));return [...N,...oe]}),u.current&&(u.current.value="");}},[]),y=useCallback(M=>{d($=>$.filter((N,X)=>X!==M));},[]),x=useCallback(()=>{u.current?.click();},[]),k=useCallback(async()=>{if(!w)return;let M=n,$=[...l];i(""),d([]),u.current&&(u.current.value="");try{await e(M,$);}catch(N){console.error("Failed to send message:",N),i(M),d($);}},[n,w,e,l]),F=useCallback(M=>{M.key==="Enter"&&!M.shiftKey&&!s&&(M.preventDefault(),k());},[k,s]),S=useCallback(()=>{c(true);},[]),T=useCallback(()=>{c(false);},[]),A=useCallback(M=>{i(M);},[]),R=useCallback(M=>{i(M);},[]),C=useCallback(()=>{},[]),D=useCallback(M=>{M.preventDefault(),f(true);},[]),I=useCallback(M=>{M.preventDefault(),f(false);},[]),P=useCallback(M=>{if(M.preventDefault(),f(false),M.dataTransfer.files&&M.dataTransfer.files.length>0){let $=Array.from(M.dataTransfer.files);d(N=>[...N,...$]);}},[]);return jsx("div",{className:dt.container,children:jsxs("div",{className:"relative",children:[jsx("input",{type:"file",multiple:true,className:"hidden",ref:u,onChange:m}),jsxs("div",{className:Ie(dt.inputContainer,g&&dt.dragActive),style:{borderRadius:"32px"},onDragOver:D,onDragLeave:I,onDrop:P,children:[l.length>0&&jsx("div",{className:dt.filePreviewArea,children:l.map((M,$)=>jsxs("div",{className:dt.fileTag,children:[jsx(InsertDriveFile,{sx:{fontSize:16},className:"text-blue-500"}),jsx("span",{className:"truncate max-w-[150px]",children:M.name}),jsx("button",{onClick:()=>y($),className:"ml-1 hover:text-red-500 focus:outline-none",type:"button",children:jsx(Close,{sx:{fontSize:16}})})]},`${M.name}-${$}`))}),jsxs("div",{className:"flex flex-col w-full p-2",children:[jsx("div",{className:Ie(dt.textareaWrapper,"px-3 pt-2 pb-3 min-h-[60px]"),children:jsx("textarea",{className:Ie(dt.textarea,"min-h-[24px] py-0 px-0"),placeholder:h,value:n,onChange:v,onKeyDown:F,onCompositionStart:S,onCompositionEnd:T,style:OS,"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(WS,{enabled:p.enabled,onClick:x}),jsx($S,{})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(ag,{onTextUpdate:A,onComplete:R,onCancel:C,disabled:o,className:dt.buttonSmall}),jsx(HS,{canSend:w,isResponding:o,onSend:k,onStop:t})]})]})]})]})]})})};var sg=({messages:e,onSend:t,onStop:o,onRegenerate:a,isResponding:r=false,className:n,placeholder:i,streamIntervalMs:l,streamChunkSize:d,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:Ie("flex flex-col h-full w-full relative",n),children:[jsxs("div",{className:"flex-1 overflow-y-auto px-4 py-4 space-y-6 scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600",children:[e.map((h,w)=>{let p=h.type==="assistant"&&w===e.length-1,v=h.type==="assistant"?{isLatestAssistant:p,onRegenerate:a?()=>a(h.id):void 0}:void 0;return jsx(rl,{message:h,assistantActions:v,onStreamingComplete:()=>s?.(h.id),streamIntervalMs:l,streamChunkSize:d,cardHooks:c},h.id)}),jsx("div",{ref:f})]}),g&&jsx("div",{className:"p-4 bg-gradient-to-t from-white via-white to-transparent dark:from-gray-900 dark:via-gray-900 pb-8 z-10",children:jsx(rg,{onSend:t||(async()=>{}),onStop:o||(()=>{}),isResponding:r,placeholder:i})})]})};var so={};var KS={idle:"Idle",running:"Running",success:"Success",error:"Error",pending:"Pending"},sz=({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:Ie("relative flex h-full w-full",so.agentPanel,a),"data-status":l,children:[jsx("div",{className:so.colorHalo,"data-status":l,"aria-hidden":"true"}),jsxs("div",{className:so.marqueeBorder,"data-status":l,"aria-hidden":"true",children:[jsx("span",{className:Ie(so.edge,so.top)}),jsx("span",{className:Ie(so.edge,so.right)}),jsx("span",{className:Ie(so.edge,so.bottom)}),jsx("span",{className:Ie(so.edge,so.left)})]}),jsxs("div",{className:"relative z-10 flex h-full w-full flex-col rounded-xl border border-slate-200/70 bg-white shadow-sm overflow-hidden dark:border-slate-800 dark:bg-gray-950",children:[jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-gray-100 dark:border-gray-800 bg-white/50 dark:bg-gray-900/50 backdrop-blur-sm z-20",children:[jsxs("div",{children:[jsx("h2",{className:"text-lg font-semibold text-gray-900 dark:text-gray-100",children:e}),t&&jsx("p",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5",children:t})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsxs("div",{className:"inline-flex items-center gap-1.5 px-2 py-1 rounded-full bg-gray-100/80 dark:bg-gray-800/70",children:[jsx("span",{className:so.statusDot,"data-status":l}),jsx("span",{className:"text-[11px] font-medium uppercase tracking-wide text-gray-600 dark:text-gray-300",children:KS[l]})]}),o]})]}),jsx("div",{className:"flex-1 min-h-0 relative z-10",children:jsx(sg,{...i,showInput:n})})]})]})};var XS={"top-left":"bottom-right","top-right":"bottom-left","bottom-left":"top-right","bottom-right":"top-left"},fz=({messages:e,onSend:t,onRegenerate:o,isResponding:a=false,className:r,placeholder:n,title:i="Copilot",corner:l="bottom-right",onCollapse:d,onHeaderPointerDown:s,onPlusClick:c,onMicClick:g,streamIntervalMs:f,streamChunkSize:u,onMessageStreamingComplete:h,cardHooks:w})=>{let[p,v]=useState(""),[m,y]=useState(false),x=useRef(null),k=XS[l];useEffect(()=>{x.current?.scrollIntoView({behavior:"smooth"});},[e,a]);let F=useCallback(async()=>{let T=p.trim();!T||a||(v(""),await t(T));},[a,t,p]),S=useCallback(async T=>{T.key==="Enter"&&!m&&(T.preventDefault(),await F());},[F,m]);return jsxs("div",{className:Ie("relative flex h-full w-full min-h-[460px] min-w-[340px] flex-col overflow-hidden rounded-3xl border border-gray-200 bg-white shadow-none dark:border-gray-800 dark:bg-gray-900",r),children:[d&&jsx("button",{onClick:d,className:Ie("absolute z-20 flex h-10 w-10 items-center justify-center rounded-full transition-colors hover:bg-transparent dark:hover:bg-transparent",k==="top-left"&&"-left-2 -top-2",k==="top-right"&&"-right-2 -top-2",k==="bottom-left"&&"-bottom-2 -left-2",k==="bottom-right"&&"-bottom-2 -right-2"),type:"button","aria-label":"Collapse Copilot",children:jsx("span",{className:Ie("block h-4 w-4 border-[#21BCFF]",k==="top-left"&&"rounded-tl-full border-l-[3px] border-t-[3px]",k==="top-right"&&"rounded-tr-full border-r-[3px] border-t-[3px]",k==="bottom-left"&&"rounded-bl-full border-b-[3px] border-l-[3px]",k==="bottom-right"&&"rounded-br-full border-b-[3px] border-r-[3px]")})}),jsxs("div",{className:"flex items-center justify-between border-b border-gray-100 px-4 py-3 dark:border-gray-800",onPointerDown: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((T,A)=>{let R=T.type==="assistant"&&A===e.length-1,C=T.type==="assistant"?{isLatestAssistant:R,onRegenerate:o?()=>o(T.id):void 0}:void 0;return jsx(rl,{message:T,assistantActions:C,onStreamingComplete:()=>h?.(T.id),streamIntervalMs:f,streamChunkSize:u,cardHooks:w},T.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:p,onChange:T=>v(T.target.value),onCompositionStart:()=>y(true),onCompositionEnd:()=>y(false),onKeyDown:S,"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 xz=({defaultMode:e="login",onLogin:t,onRegister:o,onForgotPassword:a}={})=>{let[r,n]=useState(e),[i,l]=useState(false),d=useCallback(async u=>{l(true);try{await u?.();}finally{l(false);}},[]),s=useCallback(u=>d(()=>t?.(u)),[t,d]),c=useCallback(u=>d(()=>o?.(u)),[o,d]),g=useCallback(u=>d(()=>a?.(u)),[a,d]),f=useMemo(()=>({mode:r,loading:i,onModeChange:n,onLogin:s,onRegister:c,onForgotPassword:g}),[g,s,c,i,r]);return {mode:r,loading:i,setMode:n,authPageProps:f}};var Jc=({label:e,...t})=>jsx(FormControlLabel,{control:jsx(Checkbox,{...t}),label:e});var yi=forwardRef((e,t)=>jsx(Paper,{ref:t,...e,elevation:e.elevation||1,sx:{p:2,mb:2,...e.sx}}));yi.displayName="CPaper";var cw={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."},Oz=({mode:e,defaultMode:t="login",onModeChange:o,onLogin:a,onRegister:r,onForgotPassword:n,loading:i=false,logo:l,copy:d,sx:s})=>{let c=useTheme(),g=e!==void 0,[f,u]=useState(t),h=e??f,w=useMemo(()=>({...cw,...d}),[d]),[p,v]=useState({username:"demo@orbcafe.local",password:"orbcafe-demo",remember:true}),[m,y]=useState({name:"",email:"",password:"",confirmPassword:"",acceptedTerms:false}),[x,k]=useState({email:""}),[F,S]=useState(""),T=P=>{g||u(P),S(""),o?.(P);},A=async P=>{P.preventDefault(),await a?.(p),S("Demo login accepted. No real authentication request was sent.");},R=async P=>{P.preventDefault(),await r?.(m),S("Demo registration saved locally for this screen.");},C=async P=>{P.preventDefault(),await n?.(x),S("Demo reset link request created. No email was sent.");},D=h==="login"?w.loginTitle:h==="register"?w.registerTitle:w.forgotTitle,I=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%)",...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: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(yi,{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:D}),jsx(Typography,{sx:{color:"text.secondary"},children:I})]}),F&&jsx(Alert,{severity:"success",children:F}),h==="login"&&jsx(Box,{component:"form",onSubmit:A,children:jsxs(Stack,{spacing:2,children:[jsx(Wt,{label:"Email or user ID",value:p.username,onChange:P=>v(M=>({...M,username:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(mg,{fontSize:"small"})})}}),jsx(Wt,{label:"Password",type:"password",value:p.password,onChange:P=>v(M=>({...M,password:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(sw,{fontSize:"small"})})}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:2},children:[jsx(Jc,{label:"Remember me",checked:p.remember,onChange:P=>v(M=>({...M,remember:P.target.checked}))}),jsx(Do,{type:"button",variant:"text",size:"small",onClick:()=>T("forgot"),children:"Forgot?"})]}),jsx(Do,{type:"submit",size:"large",disabled:i,children:"Sign in"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["New user?"," ",jsx(Do,{type:"button",variant:"text",size:"small",onClick:()=>T("register"),sx:{minWidth:0,p:0},children:"Register"})]})]})}),h==="register"&&jsx(Box,{component:"form",onSubmit:R,children:jsxs(Stack,{spacing:2,children:[jsx(Wt,{label:"Full name",value:m.name,onChange:P=>y(M=>({...M,name:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(mg,{fontSize:"small"})})}}),jsx(Wt,{label:"Work email",type:"email",value:m.email,onChange:P=>y(M=>({...M,email:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(ug,{fontSize:"small"})})}}),jsx(Wt,{label:"Password",type:"password",value:m.password,onChange:P=>y(M=>({...M,password:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(lw,{fontSize:"small"})})}}),jsx(Wt,{label:"Confirm password",type:"password",value:m.confirmPassword,onChange:P=>y(M=>({...M,confirmPassword:P.target.value}))}),jsx(Jc,{label:"I accept the demo workspace terms",checked:m.acceptedTerms,onChange:P=>y(M=>({...M,acceptedTerms:P.target.checked}))}),jsx(Do,{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(Do,{type:"button",variant:"text",size:"small",onClick:()=>T("login"),sx:{minWidth:0,p:0},children:"Sign in"})]})]})}),h==="forgot"&&jsx(Box,{component:"form",onSubmit:C,children:jsxs(Stack,{spacing:2,children:[jsx(Wt,{label:"Work email",type:"email",value:x.email,onChange:P=>k({email:P.target.value}),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(ug,{fontSize:"small"})})}}),jsx(Do,{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(Do,{type:"button",variant:"text",size:"small",onClick:()=>T("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 uw={keyword:{value:"",operator:"contains"},status:{value:"",operator:"equals"},owner:{value:"",operator:"contains"},workCenter:{value:"",operator:"contains"}},mw=[{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"}],Uz=({tasks:e,defaultScale:t="week",defaultSelectedTaskId:o,initialFilters:a})=>{let[r,n]=useState(t),[i,l]=useState(o??e[0]?.id??""),[d,s]=useState({...uw,...a}),c=useMemo(()=>{let h=String(d.keyword?.value??"").trim().toLowerCase(),w=String(d.status?.value??"").trim(),p=String(d.owner?.value??"").trim().toLowerCase(),v=String(d.workCenter?.value??"").trim().toLowerCase(),m=d.dateRange?.value,y=m?.[0]?Ua(m[0]):null,x=m?.[1]?Ua(m[1]):null;return e.filter(k=>{if(h&&![k.id,k.code,k.title,k.project,k.workCenter,k.owner?.name].join(" ").toLowerCase().includes(h)||w&&k.status!==w||p&&!String(k.owner?.name??"").toLowerCase().includes(p)||v&&!String(k.workCenter??"").toLowerCase().includes(v))return false;if(y||x){let F=Ua(k.startDate),S=Ua(k.endDate),T=y?S.isAfter(y)||S.isSame(y,"day"):true,A=x?F.isBefore(x)||F.isSame(x,"day"):true;if(!T||!A)return false}return true})},[d,e]);useEffect(()=>{c.length!==0&&(c.some(h=>h.id===i)||l(c[0].id));},[c,i]);let g=useCallback(h=>{l(h.id);},[]),f=useMemo(()=>({appId:"planning-gantt-filter",tableKey:"planning",fields:mw,filters:d,onFilterChange:s,onVariantLoad:()=>{},onSearch:()=>{}}),[d]),u=useMemo(()=>({tasks:c,scale:r,onScaleChange:n,selectedTaskId:i,onTaskSelect:g}),[c,g,r,i]);return {scale:r,setScale:n,selectedTaskId:i,setSelectedTaskId:l,filters:d,setFilters:s,filteredTasks:c,smartFilterProps:f,planningGanttProps:u}};var gg=e=>jsx(Chip,{...e,size:e.size||"small",variant:e.variant||"outlined"});var Ga=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});Ga.displayName="CIconButton";var hg=({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))})]});var ad=[{value:"hour",label:"Hour",width:56},{value:"day",label:"Day",width:46},{value:"week",label:"Week",width:78},{value:"month",label:"Month",width:104}],vg=56,Ka=58,rd=8,nd=260,$w=320,qa="220ms cubic-bezier(0.2, 0, 0, 1)",kg={"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"}},Hw=e=>e?kg[e]?.label??e:"Planned",Gw=e=>e?kg[e]?.color??"default":"info",Sg=e=>Math.min(100,Math.max(0,e??0)),wg=(e,t=0)=>e.flatMap(o=>[{...o,level:t},...wg(o.children??[],t+1)]),Uw=e=>({id:e.id,code:e.code??e.id,title:e.title,titleSub:e.project??e.workCenter??"General",owner:e.owner?.name??"Unassigned",status:Hw(e.status),statusTone:e.status??"planned",progress:Sg(e.progress),startDate:e.startDate,endDate:e.endDate,color:e.color}),Tg=(e,t)=>t==="month"?e.startOf("month"):t==="week"?e.startOf("week"):t==="day"?e.startOf("day"):e.startOf("hour"),Ig=(e,t)=>t==="month"?e.endOf("month"):t==="week"?e.endOf("week"):t==="day"?e.endOf("day"):e.endOf("hour"),Kw=(e,t,o)=>{let a=[],r=Tg(e,o),n=Ig(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"),start:r,end:i}),r=i;}return a},Cg=(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},kN=({title:e="Project Plan",subtitle:t="Task table and timeline view",extraTools:o,tasks:a,scale:r="week",onScaleChange:n,timelineStart:i,timelineEnd:l,selectedTaskId:d,onTaskSelect:s,emptyLabel:c="No planning tasks available.",sx:g})=>{let f=useTheme(),u=useRef(null),[h,w]=useState(null),[p,v]=useState(null),m=useRef(null),y=useMemo(()=>wg(a),[a]),x=useMemo(()=>new Map(y.map(U=>[U.id,U])),[y]),k=useMemo(()=>y.map(U=>Uw(U)),[y]),F=useMemo(()=>[{id:"code",label:"ID",minWidth:90},{id:"title",label:"Task",minWidth:260,render:(U,Y)=>jsxs(Stack,{spacing:.2,children:[jsx(Typography,{sx:{fontSize:15,fontWeight:700,lineHeight:1.2},children:Y.title}),jsx(Typography,{sx:{fontSize:13,color:"text.secondary"},children:Y.titleSub})]})},{id:"owner",label:"Owner",minWidth:170},{id:"status",label:"Status",minWidth:130,render:(U,Y)=>jsx(gg,{label:Y.status,color:Gw(Y.statusTone),size:"small"})},{id:"progress",label:"Progress",minWidth:140,numeric:true,render:U=>jsxs(Stack,{spacing:.6,children:[jsxs(Typography,{variant:"caption",sx:{color:"text.secondary"},children:[U,"%"]}),jsx(LinearProgress,{variant:"determinate",value:U,sx:{height:6,borderRadius:999}})]})},{id:"startDate",label:"Start",minWidth:120},{id:"endDate",label:"End",minWidth:120}],[]),S=Qr({appId:"planning-gantt",title:e,columns:F,rows:k,rowKey:"id",rowsPerPage:-1,rowsPerPageOptions:[-1],count:k.length,showSummary:false}),T=S.visibleRows,A=useMemo(()=>{let U=k.map(ve=>Ua(ve.startDate)),Y=k.map(ve=>Ua(ve.endDate)),Re=i?Ua(i):U.reduce((ve,Fe)=>Fe.isBefore(ve)?Fe:ve,U[0]??Ua()),j=l?Ua(l):Y.reduce((ve,Fe)=>Fe.isAfter(ve)?Fe:ve,Y[0]??Ua().add(30,"day")),fe=r==="month"?"month":r==="week"?"week":r==="day"?"day":"hour",Se=r==="month"?"month":r==="week"?"week":r==="day"?"day":"hour",Ne=r==="hour"?12:1,Ke=r==="hour"?12:1;return {start:Tg(Re.subtract(Ne,fe),r),end:Ig(j.add(Ke,Se),r)}},[k,r,l,i]),R=ad.find(U=>U.value===r)??ad[1],C=Array.isArray(o)?o:o?[o]:[],D=useMemo(()=>Kw(A.start,A.end,r),[A.end,A.start,r]),I=D.length*R.width,P=(S.columns||[]).filter(U=>S.visibleColumns.includes(U.id)).reduce((U,Y)=>U+(S.columnWidths?.[Y.id]||Y.minWidth||100),0),M=h??P,$=p==="timeline"?0:M,N=p==="timeline",X=p==="table",oe=!N&&!X,te=X?"0px":"minmax(0, 1fr)";useEffect(()=>{w(U=>U===null?null:Math.min(Math.max(U,nd),P));},[P]);let re=U=>{U.preventDefault(),U.currentTarget.setPointerCapture(U.pointerId),v(null),m.current={startX:U.clientX,startWidth:M};let Y=j=>{let fe=m.current;if(!fe)return;let Se=u.current?.clientWidth??0,Ne=Se>0?Math.max(nd,Se-rd-$w):P,Ke=Math.min(Math.max(fe.startWidth+j.clientX-fe.startX,nd),Ne);w(Ke);},Re=()=>{m.current=null,window.removeEventListener("pointermove",Y),window.removeEventListener("pointerup",Re),document.body.style.cursor="",document.body.style.userSelect="";};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("pointermove",Y),window.addEventListener("pointerup",Re);},Q=()=>{v(null),w(null);};return jsxs(yi,{elevation:0,sx:{m:0,p:0,overflow:"hidden",borderRadius:3,border:`1px solid ${f.palette.divider}`,backgroundColor:f.palette.background.paper,...g},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 ${f.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(Bw,{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:[C.length>0&&jsx(Stack,{direction:"row",spacing:.75,alignItems:"center",children:C.map((U,Y)=>jsx(Box,{sx:{display:"flex",alignItems:"center"},children:U},`planning-extra-tool-${Y}`))}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(Ga,{tooltip:"Column visibility",onClick:U=>S.setAnchorEl(U.currentTarget),color:"default",children:jsx(Sf,{fontSize:"small"})}),jsx(Ga,{tooltip:"Group by",onClick:U=>S.setGroupAnchorEl(U.currentTarget),color:"default",children:jsx(If,{fontSize:"small"})}),jsx(Ga,{tooltip:"Sort by first visible column",onClick:()=>{let U=(S.columns||[]).find(Y=>S.visibleColumns.includes(Y.id));U&&S.handleRequestSort(U.id);},color:S.orderBy?"primary":"default",children:jsx(Ow,{fontSize:"small"})})]}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(Ga,{tooltip:"Expand task table",onClick:()=>v("table"),color:p==="table"?"primary":"default",children:jsx(Nw,{fontSize:"small"})}),jsx(Ga,{tooltip:"Reset split",onClick:Q,color:p===null?"primary":"default",children:jsx(Vw,{fontSize:"small"})}),jsx(Ga,{tooltip:"Expand timeline",onClick:()=>v("timeline"),color:p==="timeline"?"primary":"default",children:jsx(zw,{fontSize:"small"})})]}),jsx(Box,{sx:{minWidth:120},children:jsx(hg,{label:"",value:r,options:ad.map(U=>({value:U.value,label:U.label})),onChange:U=>n?.(U.target.value),sx:{"& .MuiSelect-select":{fontSize:"0.92rem",py:.65},"& .MuiSvgIcon-root":{fontSize:20}}})})]})]}),k.length===0?jsx(Box,{sx:{minHeight:240,display:"grid",placeItems:"center",color:"text.secondary"},children:c}):jsx(Box,{sx:{overflow:"hidden"},children:jsxs(Box,{ref:u,sx:{display:"grid",gridTemplateColumns:`${$}px ${oe?rd:0}px ${te}`,transition:`grid-template-columns ${qa}`},children:[jsx(TableContainer,{sx:{width:$,overflowX:"auto",overflowY:"hidden",opacity:N?0:1,transform:N?"translateX(-10px)":"translateX(0)",pointerEvents:N?"none":"auto",transition:`opacity ${qa}, transform ${qa}, width ${qa}`},children:jsxs(Table,{size:"small",stickyHeader:true,sx:{tableLayout:"fixed",width:P,"& thead .MuiTableCell-root":{height:vg,py:0,lineHeight:1.15,boxSizing:"border-box"}},children:[jsx(ki,{columns:S.columns,visibleColumns:S.visibleColumns,order:S.order,orderBy:S.orderBy,onRequestSort:S.handleRequestSort,grouping:S.grouping,isAllExpanded:S.isAllExpanded,handleToggleAll:S.handleToggleAll,columnWidths:S.columnWidths,onColumnResize:S.handleColumnResize}),jsx(TableBody,{children:T.map(U=>{if(U.type==="group")return jsxs(TableRow,{sx:{height:Ka,backgroundColor:f.palette.action.hover},children:[S.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Ka,py:0,borderBottom:`1px solid ${f.palette.divider}`},children:jsx(IconButton,{size:"small",onClick:()=>S.toggleGroupExpand(U.id),children:U.isExpanded?jsx(Xf,{fontSize:"small"}):jsx(Ff,{fontSize:"small"})})}),jsx(TableCell,{colSpan:S.visibleColumns.length,sx:{height:Ka,py:0,borderBottom:`1px solid ${f.palette.divider}`},children:jsxs(Typography,{sx:{fontSize:13,fontWeight:700},children:[U.field,": ",U.value," (",U.count,")"]})})]},U.id);let Y=U.data||U,Re=Y.id===d;return jsxs(TableRow,{hover:true,selected:Re,onClick:()=>s?.(x.get(Y.id)||Y),sx:{cursor:s?"pointer":"default",height:Ka},children:[S.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Ka,py:0,borderBottom:`1px solid ${f.palette.divider}`}}),(S.columns||[]).filter(j=>S.visibleColumns.includes(j.id)).map(j=>jsx(TableCell,{sx:{width:S.columnWidths?.[j.id]||j.minWidth||100,height:Ka,py:0,overflow:"hidden",borderBottom:`1px solid ${f.palette.divider}`},children:j.render?j.render(Y[j.id],Y):String(Y[j.id]??"-")},`${Y.id}-${j.id}`))]},Y.id)})})]})}),jsx(Box,{onPointerDown:oe?re:void 0,role:"separator","aria-orientation":"vertical",sx:{width:oe?rd:0,cursor:oe?"col-resize":"default",opacity:oe?1:0,pointerEvents:oe?"auto":"none",borderLeft:oe?`1px solid ${f.palette.divider}`:"0 solid transparent",borderRight:oe?`1px solid ${f.palette.divider}`:"0 solid transparent",backgroundColor:f.palette.mode==="dark"?"rgba(148,163,184,0.10)":"rgba(15,23,42,0.04)",transition:`width ${qa}, opacity ${qa}, background-color 120ms ease`,position:"relative","&:hover":{backgroundColor:f.palette.action.selected},"&::before":{content:'""',position:"absolute",top:0,bottom:0,left:-6,right:-6,cursor:oe?"col-resize":"default"}}}),jsx(Box,{sx:{minWidth:0,overflow:"hidden",opacity:X?0:1,transform:X?"translateX(10px)":"translateX(0)",pointerEvents:X?"none":"auto",transition:`opacity ${qa}, transform ${qa}`},children:jsx(Box,{sx:{width:"100%",overflowX:"auto",overflowY:"hidden"},children:jsxs(Box,{sx:{width:I},children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${D.length}, ${R.width}px)`,height:vg,borderBottom:`1px solid ${f.palette.divider}`,position:"sticky",top:0,zIndex:2,backgroundColor:f.palette.background.paper},children:D.map(U=>jsx(Box,{sx:{px:.75,display:"flex",alignItems:"center",borderRight:`1px solid ${f.palette.divider}`,color:"text.secondary",fontSize:12,fontWeight:700},children:U.label},U.key))}),jsx(Stack,{sx:{position:"relative"},children:T.map(U=>{if(U.type==="group")return jsx(Box,{sx:{position:"relative",height:Ka,borderBottom:`1px solid ${f.palette.divider}`,backgroundColor:f.palette.action.hover}},U.id);let Y=U.data||U,Re=Ua(Y.startDate),j=Ua(Y.endDate),fe=Cg(Re,D,R.width),Se=Cg(j,D,R.width),Ne=Math.max(18,Se-fe),Ke=Sg(Y.progress),ve=Y.id===d,Fe=Y.color??(Y.statusTone==="blocked"?f.palette.error.main:f.palette.primary.main);return jsx(Box,{onClick:()=>s?.(x.get(Y.id)||Y),sx:{position:"relative",height:Ka,borderBottom:`1px solid ${f.palette.divider}`,backgroundImage:f.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:`${R.width}px 100%`,cursor:s?"pointer":"default"},children:jsx(Tooltip,{title:`${Y.title}: ${Re.format("MMM D HH:mm")} - ${j.format("MMM D HH:mm")}`,children:jsxs(Box,{sx:{position:"absolute",left:fe,top:16,width:Ne,height:24,borderRadius:999,overflow:"hidden",backgroundColor:f.palette.mode==="dark"?"rgba(148,163,184,0.18)":"rgba(15,23,42,0.10)",outline:ve?`2px solid ${f.palette.warning.main}`:"none",outlineOffset:2},children:[jsx(Box,{sx:{height:"100%",width:`${Ke}%`,backgroundColor:Fe}}),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:Y.code})]})})},Y.id)})})]})})})]})}),jsx(zr,{groupAnchorEl:S.groupAnchorEl,setGroupAnchorEl:S.setGroupAnchorEl,grouping:S.grouping,setGrouping:S.setGrouping,columns:S.columns,toggleGroupField:S.toggleGroupField}),jsx(Nr,{anchorEl:S.anchorEl,setAnchorEl:S.setAnchorEl,columns:S.columns,visibleColumns:S.visibleColumns,toggleColumnVisibility:S.toggleColumnVisibility})]})};var Qw={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)"}}},PN=({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 d=useMediaQuery("(prefers-reduced-motion: reduce)"),[s,c]=useState("to"),g=!i&&!d&&o!=="none";useEffect(()=>{if(!g){c("to");return}c("from");let h=requestAnimationFrame(()=>{h=requestAnimationFrame(()=>{c("to");});});return ()=>cancelAnimationFrame(h)},[t,g]);let f=Qw[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})},RN={subtle:{variant:"fade",durationMs:180},smooth:{variant:"slide-up",durationMs:220},snappy:{variant:"scale",durationMs:160}};
|
|
17
|
-
export{
|
|
7
|
+
`),f={enableMath:a},p=0;for(;p<g.length;){let h=g[p],k=h.trim();if(!k){p+=1;continue}if(n&&Xp(h)){if(k.startsWith("<think>")){let m=[],y=h;for(;;){let x=y.indexOf("<think>"),S=x>=0?y.slice(x+7):y,F=S.indexOf("</think>");if(F>=0){m.push(S.slice(0,F)),p+=1;break}if(m.push(S),p+=1,p>=g.length)break;y=g[p];}c.push(jsx(ds,{content:m.join(`
|
|
8
|
+
`).trim()},`think-tag-${p}`));continue}p+=1;let C=[];for(;p<g.length&&g[p].trim()!==":::";)C.push(g[p]),p+=1;p<g.length&&g[p].trim()===":::"&&(p+=1),c.push(jsx(ds,{content:C.join(`
|
|
9
|
+
`).trim()},`think-fence-${p}`));continue}if(ps(h)){let C=k.slice(3).trim().toLowerCase(),m=[];for(p+=1;p<g.length&&!ps(g[p]);)m.push(g[p]),p+=1;p<g.length&&ps(g[p])&&(p+=1);let y=m.join(`
|
|
10
|
+
`);if(r&&C==="mermaid"){c.push(jsx(Yl,{code:y},`mermaid-${p}`));continue}if(a&&["math","latex","katex"].includes(C)){c.push(jsx(Un,{expression:y,allowKatex:true},`math-fence-${p}`));continue}c.push(jsx(Gn,{code:y,language:C||"text",copyable:i,showLineNumbers:l,wrapLongLines:true},`code-${p}`));continue}if(a&&k.startsWith("$$")){let C=[];if(k.endsWith("$$")&&k!=="$$")C.push(k.slice(2,-2)),p+=1;else {let y=h.slice(h.indexOf("$$")+2);for(y.trim()&&C.push(y),p+=1;p<g.length;){let x=g[p],S=x.indexOf("$$");if(S>=0){C.push(x.slice(0,S)),p+=1;break}C.push(x),p+=1;}}c.push(jsx(Un,{expression:C.join(`
|
|
11
|
+
`).trim(),allowKatex:true},`math-${p}`));continue}if(_p(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:_n(m,f,`h-${p}`)},`heading-${p}`)),p+=1;continue}if(jp(h)){c.push(jsx(Divider,{sx:{my:1.2}},`hr-${p}`)),p+=1;continue}if(Zp(g,p)){let C=p+2;for(;C<g.length&&g[C].trim()&&g[C].includes("|");)C+=1;let m=g.slice(p,C).join(`
|
|
12
|
+
`),y=ls(m);if(y){c.push(jsx(ec,{table:y},`table-${p}`)),p=C;continue}}if(nc(h)){let C=[];for(;p<g.length&&nc(g[p]);)C.push(g[p].replace(/^\s*>\s?/,"")),p+=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",{}),_n(m,f,`q-${p}-${y}`)]},`quote-line-${y}`))})},`quote-${p}`));continue}if(ac(h)){let C=[];for(;p<g.length&&ac(g[p]);)C.push(g[p].trim().replace(/^[-*+]\s+/,"")),p+=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:_n(m,f,`ul-${p}-${y}`)})},`ul-item-${y}`))},`ul-${p}`));continue}if(rc(h)){let C=[];for(;p<g.length&&rc(g[p]);)C.push(g[p].trim().replace(/^\d+\.\s+/,"")),p+=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:_n(m,f,`ol-${p}-${y}`)})},`ol-item-${y}`))},`ol-${p}`));continue}let u=[];for(;p<g.length;){let C=g[p],m=C.trim();if(!m||ps(C)||_p(C)||jp(C)||ac(C)||rc(C)||nc(C)||Zp(g,p)||n&&Xp(C)||a&&m.startsWith("$$"))break;u.push(C),p+=1;}u.length>0?c.push(jsx(Typography,{variant:"body2",sx:{my:.65,lineHeight:1.65},children:u.map((C,m)=>jsxs(Fragment$1,{children:[m>0&&jsx("br",{}),_n(C,f,`p-${p}-${m}`)]},`p-line-${m}`))},`p-${p}`)):p+=1;}return c},[d,a,r,n,i,l]);return jsx(Box,{className:o,sx:{"& strong":{fontWeight:700},"& em":{fontStyle:"italic"},"& a":{wordBreak:"break-all"}},children:s})};var OM=(e,t)=>jsx(jn,{markdown:e,...t});var Jp=({value:e,onChange:t,onSubmit:o,onVoiceInput:a,onClear:r,placeholder:n,statusText:i,loading:l=false,compact:d=false,showStatusText:s=true})=>jsxs(Stack,{spacing:.75,children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:d?.25:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minHeight:d?38:44},children:[jsx(bp,{sx:{fontSize:d?16:18,color:"text.secondary"}}),jsx(InputBase,{fullWidth:true,value:e,onChange:c=>t(c.target.value),onKeyDown:c=>{c.key==="Enter"&&(c.preventDefault(),o());},placeholder:n,sx:{fontSize:d?"0.84rem":"0.9rem"}}),e&&r&&jsx(IconButton,{size:"small",onClick:r,children:jsx(Hh,{sx:{fontSize:d?16:18}})}),a&&jsx(IconButton,{size:"small",onClick:a,children:jsx(Xh,{sx:{fontSize:d?16:18}})}),jsx(IconButton,{size:"small",onClick:o,disabled:l||!e.trim(),children:jsx(Yh,{sx:{fontSize:d?16:18}})})]}),s&&i&&jsx(Typography,{variant:"caption",color:"text.secondary",children:i})]});var eu=(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)]})},us=({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:eu(a.label,t)}),jsx(Typography,{component:"div",variant:"body2",sx:{mt:.2,fontWeight:500,wordBreak:"break-word"},children:r?eu(r,t):a.value})]},a.id)})})]})};var dc=e=>e==null?"":typeof e=="string"||typeof e=="number"||typeof e=="boolean"?String(e):"",gs=e=>e.trim().toLowerCase(),Rx=(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:gs(`${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:gs(`${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:gs(`${a.label} ${r.title} ${n.label} ${i}`)});});});}),o},tu=({sections:e,tabs:t=[],defaultTabId:o,ai:a})=>{let{t:r}=j(),[n,i]=useState(""),[l,d]=useState(o||t[0]?.id),[s,c]=useState("idle"),[g,f]=useState([]),[p,h]=useState(""),[k,u]=useState(""),[C,m]=useState(false),y=useMemo(()=>Rx(e,t),[e,t]);useEffect(()=>{if(t.length===0){d(void 0);return}t.some(A=>A.id===l)||d(o||t[0]?.id);},[t,l,o]);let x=useCallback(()=>{c("idle"),f([]),h(""),u("");},[]),S=useCallback(I=>{i(I),I.trim()||(c("idle"),f([]),h(""),u(""));},[]),F=useCallback(I=>{let A=gs(I);return A?y.filter(P=>P.text.includes(A)).map(P=>P.hit):[]},[y]),D=useCallback(async()=>{let I=n.trim();if(!I)return;m(true);let A=F(I);if(f(A),A.length>0){c("search"),u(""),h(r("detail.searchAi.matches",{count:A.length})),m(false);return}if(a?.enabled!==false&&a?.onSubmit){c("ai"),h(r("detail.searchAi.autoAiFallback"));try{let v=await a.onSubmit(I,{query:I,hits:A,activeTabId:l,sections:e,tabs:t});u(typeof v=="string"?v:"");}finally{m(false);}return}c("search"),u(""),h(r("detail.searchAi.noMatch")),m(false);},[n,F,r,a,l,e,t]);return {query:n,setQuery:S,activeTabId:l,setActiveTabId:d,searchMode:s,hits:g,statusText:p,aiResponse:k,searching:C,handleSubmit:D,clearResult:x}};var hA=({title:e,subtitle:t,sections:o,tabs:a=[],defaultTabId:r,table:n,ai:i,rightHeaderSlot:l,searchBarWidth:d=460,onClose:s,closeLabel:c="Close"})=>{let{t:g}=j(),{query:f,setQuery:p,activeTabId:h,setActiveTabId:k,searchMode:u,hits:C,statusText:m,aiResponse:y,searching:x,handleSubmit:S,clearResult:F}=tu({sections:o,tabs:a,defaultTabId:r,ai:i}),D=useMemo(()=>a.find(P=>P.id===h)||a[0],[a,h]),I=useCallback(P=>{let v=M=>{let w=document.getElementById(P);if(w){w.scrollIntoView({behavior:"smooth",block:"center"});return}M<4&&setTimeout(()=>v(M+1),60);};requestAnimationFrame(()=>v(0));},[]),A=useCallback((P,v)=>{if(a.some(M=>M.id===P)){k(P),I(v?`detail-tab-${P}-section-${v}`:`detail-tab-${P}`);return}I(`detail-section-${P}`);},[a,k,I]);return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,minHeight:"100%"},children:[jsxs(Stack,{direction:{xs:"column",md:"row"},justifyContent:"space-between",alignItems:{xs:"flex-start",md:"center"},spacing:1,children:[jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"h5",sx:{fontWeight:800,color:"text.primary"},children:e}),t&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.35},children:t})]}),jsxs(Stack,{direction:"row",spacing:.6,alignItems:"center",sx:{width:{xs:"100%",md:"auto"},ml:{xs:0,md:"auto"}},children:[jsx(Box,{sx:{width:{xs:"100%",md:d},maxWidth:"100%",minWidth:{md:320}},children:jsx(Jp,{value:f,onChange:p,onSubmit:S,onVoiceInput:i?.onVoiceInput,onClear:()=>{p(""),F();},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(Ex,{fontSize:"small"})})}),l]})]}),m&&jsx(Typography,{variant:"caption",color:"text.secondary",sx:{mt:-0.7},children:m}),u==="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:()=>A(P.sourceId,P.sourceSectionId),sx:{textAlign:"left",border:0,bgcolor:"transparent",p:.2,cursor:"pointer",color:"text.primary",borderRadius:1,"&:hover":{bgcolor:"action.hover"}},children:jsxs(Typography,{variant:"body2",sx:{fontSize:"0.84rem"},children:[jsx(Box,{component:"span",sx:{color:"text.secondary"},children:P.sourceTitle})," \xB7 ",jsx(Box,{component:"span",sx:{fontWeight:700},children:P.fieldLabel})," = ",jsx(Box,{component:"span",children:P.fieldValue||"-"})]})},`${P.source}|${P.sourceId}|${P.fieldId}`))})]}),u==="ai"&&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(jn,{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(us,{section:P,highlightQuery:f})},P.id))}),a.length>0&&jsxs(Paper,{variant:"outlined",sx:{borderRadius:2,overflow:"hidden"},children:[jsx(Tabs,{value:D?.id||false,onChange:(P,v)=>k(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-${D?.id||""}`}),D?.description&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:1.2},children:D.description}),D?.content?D.content:jsxs(Stack,{spacing:1.5,children:[(D?.sections||[]).map(P=>jsx(Box,{id:`detail-tab-${D?.id}-section-${P.id}`,children:jsx(us,{section:P,highlightQuery:f})},P.id)),D?.fields&&D.fields.length>0&&jsx(us,{section:{id:`${D.id}-fields`,title:D.label,fields:D.fields,columns:2},highlightQuery:f})]})]})]}),n&&jsx(Ea,{title:n.title||g("detail.table.title"),...n.tableProps,filterConfig:void 0,fitContainer:false})]})};var nu=({bucket:e,cardCount:t,highlighted:o=false,children:a,emptyLabel:r,maxHeight:n,sx:i})=>{let{t:l}=j();return jsx(Paper,{sx:[d=>{let s=e.accentColor??d.palette.primary.main;return {position:"relative",minWidth:0,borderRadius:4,overflow:"hidden",border:`1px solid ${alpha(s,o?.58:d.palette.mode==="dark"?.28:.18)}`,bgcolor:alpha(d.palette.background.paper,d.palette.mode==="dark"?.92:.97),boxShadow:o?`0 18px 40px ${alpha(s,.22)}`:`0 10px 28px ${alpha(d.palette.common.black,d.palette.mode==="dark"?.18:.08)}`,transition:"border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease","&::before":{content:'""',display:"block",height:4,bgcolor: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:d=>({minHeight:160,borderRadius:3,border:`1px dashed ${alpha(d.palette.divider,.9)}`,bgcolor:d.palette.mode==="dark"?alpha(d.palette.common.white,.02):alpha(d.palette.primary.main,.03),display:"grid",placeItems:"center",px:2,textAlign:"center"}),children:jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:r??e.emptyLabel??l("kanban.empty")})})})]})})};var Ox={success:"success",warning:"warning",info:"info",error:"error"},Wx={critical:"error",high:"warning",medium:"info",low:"success"},$x=(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}},Hx=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}=j(),l=!!(r&&t),d=e.tone??(e.priority?Wx[e.priority]:"default"),s=d==="default"?"primary":Ox[d],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=d==="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:$x(e.priority,i),variant:d==="default"?"outlined":"filled",sx:{height:22,fontWeight:700}})]}),e.summary&&jsx(Typography,{sx:{fontSize:"0.82rem",color:"text.secondary",lineHeight:1.5},children:e.summary}),e.metrics&&e.metrics.length>0&&jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.min(e.metrics.length,3)}, minmax(0, 1fr))`,gap:.9},children:e.metrics.slice(0,3).map(g=>jsxs(Box,{sx:f=>({borderRadius:2,px:1,py:.8,bgcolor:f.palette.mode==="dark"?alpha(f.palette.common.white,.05):alpha(f.palette.primary.main,.05)}),children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",textTransform:"uppercase",letterSpacing:.35},children:g.label}),jsx(Typography,{sx:{fontSize:"0.86rem",fontWeight:700},children:g.value})]},g.id))}),typeof e.progress=="number"&&jsxs(Box,{children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:.5},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:i("kanban.card.progress")}),jsxs(Typography,{sx:{fontSize:"0.72rem",fontWeight:700},children:[Math.round(e.progress),"%"]})]}),jsx(LinearProgress,{variant:"determinate",value:Math.max(0,Math.min(100,e.progress)),color: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??Hx(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 Ux=(e,t)=>Number.isNaN(e)||e<0?0:e>t?t:e,lu=({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}})}},zo=(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}}},ys=(e,t)=>{let o=zo(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],d=Ux(t.targetIndex??l.cards.length,l.cards.length);return l.cards.splice(d,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|",uu=e=>`${mc}${e}`,a0=e=>`${gc}${e}`,bs=e=>e?.startsWith(mc)?e.slice(mc.length):void 0,pu=e=>e?.startsWith(gc)?e.slice(gc.length):void 0,r0=({card:e,bucket:t,onCardClick:o})=>{let{setNodeRef:a,attributes:r,listeners:n,transform:i,transition:l,isDragging:d}=useSortable({id:uu(e.id)}),s={transform:i?`translate3d(${i.x}px, ${i.y}px, 0)`:void 0,transition:l,zIndex:d?2:1,touchAction:"none",cursor:d?"grabbing":"grab"};return jsx(Box,{ref:a,style:s,...r,...n,children:jsx(uc,{card:e,bucket:t,dragging:d,onClick:o})})},n0=({bucket:e,highlighted:t,bucketMaxHeight:o,emptyBucketLabel:a,onCardClick:r})=>{let{isOver:n,setNodeRef:i}=useDroppable({id:a0(e.id)});return jsx(Box,{ref:i,sx:{minWidth:0},children:jsx(nu,{bucket:e,cardCount:e.cards.length,highlighted:t||n,emptyLabel:a,maxHeight:o,children:jsx(SortableContext,{items:e.cards.map(l=>uu(l.id)),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:1,children:e.cards.map(l=>jsx(r0,{card:l,bucket:e,onCardClick:r},l.id))})})})})},NA=({model:e,onCardMove:t,onCardClick:o,minBucketWidth:a=320,bucketMaxHeight:r,emptyBucketLabel:n,sx:i})=>{let[l,d]=useState(null),[s,c]=useState(),g=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:6}}),useSensor(TouchSensor,{activationConstraint:{delay:120,tolerance:8}})),f=useMemo(()=>l?zo(e,l):void 0,[l,e]),p=useCallback(()=>{d(null),c(void 0);},[]),h=useCallback(m=>{if(!m)return;let y=bs(m);return y?zo(e,y)?.bucket.id:pu(m)},[e]),k=useCallback(m=>{d(bs(String(m.active.id))??null);},[]),u=useCallback(m=>{c(h(m.over?String(m.over.id):void 0));},[h]),C=useCallback(m=>{let y=bs(String(m.active.id)),x=m.over?String(m.over.id):void 0;if(!y||!x){p();return}let S=zo(e,y);if(!S){p();return}let F=S.bucket.id,D=S.cardIndex,I=bs(x);if(I){let v=zo(e,I);if(!v){p();return}F=v.bucket.id,D=v.cardIndex;}else {let v=pu(x),M=e.buckets.find(w=>w.id===v);if(!v||!M){p();return}F=v,D=M.cards.length;}if(S.bucket.id===F&&S.cardIndex===D){p();return}let A=ys(e,{cardId:y,fromBucketId:S.bucket.id,toBucketId:F,targetIndex:D}),P=zo(A,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:A}),p();},[e,t,p]);return jsxs(DndContext,{sensors:g,collisionDetection:closestCorners,onDragStart:k,onDragOver:u,onDragEnd:C,onDragCancel:p,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(n0,{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 c0=({initialModel:e,initialBuckets:t,initialCards:o})=>e||lu({buckets:t??[],cards:o??[]}),HA=e=>{let{onCardMove:t,onCardClick:o}=e,[a,r]=useState(()=>c0(e)),n=useCallback(c=>{r(g=>typeof c=="function"?c(g):c);},[]),i=useCallback(c=>zo(a,c),[a]),l=useCallback((c,g,f)=>{let p=zo(a,c);if(!p)return;let h=ys(a,{cardId:c,fromBucketId:p.bucket.id,toBucketId:g,targetIndex:f}),k=zo(h,c);if(!k||k.bucket.id===p.bucket.id&&k.cardIndex===p.cardIndex)return;r(h);let u={cardId:c,fromBucketId:p.bucket.id,toBucketId:k.bucket.id,targetIndex:k.cardIndex,card:k.card,model:h};return t?.(u),u},[a,t]),d=useCallback((c,g)=>{r(f=>({buckets:f.buckets.map(p=>({...p,cards:p.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:d,getCard:i},boardProps:s}};var hu=64,w0="#E9EDF2",T0="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",I0=["en","zh","fr","de","ja","ko"],yu={en:"EN",zh:"\u4E2D\u6587",fr:"FR",de:"DE",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4"},ks=({appTitle:e,logo:t,mode:o="dark",onToggleMode:a,locale:r,localeLabel:n,localeOptions:i,onLocaleChange:l,searchPlaceholder:d,onSearch:s,user:c,onUserSetting:g,onUserLogout:f,userMenuItems:p,leftSlot:h,rightSlot:k})=>{let{t:u,locale:C}=j(),y=useTheme().palette.mode==="dark",[x,S]=useState(""),[F,D]=useState(null),[I,A]=useState(null),P=Z=>{Z.preventDefault(),s&&s(x.trim());},v=o==="system"?jsx(x0,{fontSize:"small"}):o==="dark"?jsx(v0,{fontSize:"small"}):jsx(C0,{fontSize:"small"}),M=u(o==="system"?"header.theme.system":o==="dark"?"header.theme.dark":"header.theme.light"),w=r||C,R=i&&i.length>0?i:I0,T=n||yu[w]||w.toUpperCase(),W=!!F,N=d||u("header.searchPlaceholder"),X=!!I,se=[{key:"setting",label:u("header.menu.setting"),icon:jsx(jy,{sx:{fontSize:18}}),onClick:g},{key:"logout",label:u("header.menu.logout"),icon:jsx(S0,{sx:{fontSize:18}}),onClick:f}],ee=p&&p.length>0?p:se,te=Z=>{A(null),Z?.();};return jsxs(AppBar,{position:"sticky",elevation:0,sx:Z=>({top:0,zIndex:Z.zIndex.drawer+10,height:hu,backgroundColor:Z.palette.mode==="dark"?"#0D0D0D":w0,backgroundImage:Z.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%)",T0,"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:Z.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(15,23,42,0.12)"}),children:[jsxs(Toolbar,{sx:{minHeight:`${hu}px !important`,px:2,gap:2},children:[jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,sx:{minWidth:220},children:[h,t===null?null:t||jsx(Box,{component:"img",src:"/orbcafe.png",alt:"ORBCAFE Logo",sx:{width:44,height:44,display:"block",objectFit:"contain",flexShrink:0}}),e&&jsx(Typography,{variant:"h6",sx:{fontWeight:700,color:y?"common.white":"#111827"},children:e})]}),jsx(Box,{sx:{flex:1,display:"flex",justifyContent:"center",minWidth:0},children:jsx(Box,{component:"form",onSubmit:P,sx:{width:"100%",maxWidth:540},children:jsx(TextField,{size:"small",fullWidth:true,value:x,onChange:Z=>S(Z.target.value),placeholder:N,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(bp,{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:Z=>D(Z.currentTarget),sx:{color:y?"common.white":"#111827",borderRadius:1,px:.5},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsx(fu,{sx:{fontSize:18}}),jsx(Typography,{variant:"caption",sx:{fontWeight:500},children:T})]})}),jsx(Menu,{anchorEl:F,open:W,onClose:()=>D(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:R.map(Z=>jsx(MenuItem,{selected:Z===w,onClick:()=>{l(Z),D(null);},sx:{fontSize:"0.82rem"},children:yu[Z]},Z))})]}):jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsx(fu,{sx:{color:y?"common.white":"#111827",fontSize:18}}),jsx(Typography,{variant:"caption",sx:{color:y?"common.white":"#111827",fontWeight:500},children:T})]}),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:Z=>A(Z.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()})})]}),k]})]}),c&&jsx(Menu,{anchorEl:I,open:X,onClose:()=>A(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:ee.map(Z=>jsxs(MenuItem,{disabled:Z.disabled,onClick:()=>te(Z.onClick),children:[Z.icon&&jsx(ListItemIcon,{children:Z.icon}),jsx(ListItemText,{primary:Z.label,slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]},Z.key))})]})};var bu=({menuData:e=[],initialNavigationCollapsed:t=false}={})=>{let{navigationIslandProps:o}=kd({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 u2=({appTitle:e,menuData:t=[],children:o,showNavigation:a=true,locale:r="en",localeLabel:n,localeOptions:i,onLocaleChange:l,user:d,onUserSetting:s,onUserLogout:c,userMenuItems:g,logo:f,onSearch:p,rightHeaderSlot:h,leftHeaderSlot:k,contentSx:u})=>{let C="orbcafe:page-layout-mode",[m,y]=useState("system"),[x,S]=useState("light"),[F,D]=useState(false),I=m==="system"?F?x:"light":m;useEffect(()=>{try{let R=window.localStorage.getItem(C);(R==="light"||R==="dark"||R==="system")&&y(R);}catch{}D(true);let M=window.matchMedia("(prefers-color-scheme: dark)"),w=()=>{S(M.matches?"dark":"light");};return w(),M.addEventListener("change",w),()=>M.removeEventListener("change",w)},[]),useEffect(()=>{if(F)try{window.localStorage.setItem(C,m);}catch{}},[F,m]),useEffect(()=>{I==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[I]);let A=useMemo(()=>createTheme({palette:{mode:I}}),[I]),{navigationIslandProps:P,navigationMaxHeight:v}=bu({menuData:t,initialNavigationCollapsed:false});return jsx(ThemeProvider,{theme:A,children:jsx(Ci,{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(ks,{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:d,onUserSetting:s,onUserLogout:c,userMenuItems:g,onSearch:p,leftSlot:k,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(vd,{...P,maxHeight:v,colorMode:I})}),jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...u},children:o})]})]})})})};var ws="(blank)",vu="Result",Cu="Grand Total",ku={sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max"},Su=["sum","count","avg","min","max"];var wu=["palette","rows","columns","filters","values"];var Tu=e=>wu.includes(e),Iu=e=>e==="rows"||e==="columns"||e==="filters",Ts=e=>{let t=e.split("|");return t.length===2&&t[0]==="container"&&Tu(t[1])?{kind:"container",zone:t[1]}:t.length===3&&t[0]==="item"&&Tu(t[1])&&t[2]?{kind:"item",zone:t[1],key:t[2]}:null},ma=e=>e==null||e===""?ws:e instanceof Date?e.toISOString().slice(0,10):String(e),fr=e=>JSON.stringify(e),Pu=(e,t)=>{let o=e.join(""),a=t.join("");return o.localeCompare(a,void 0,{sensitivity:"base"})},E0=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},tn=(e,t,o)=>{if(o==="count")return e.length;let a=e.map(r=>E0(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)},Ct=(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},ga=(e,t)=>e.length!==t.length?false:e.every((o,a)=>o===t[a]),Ru=(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 ga(n,i)})},Is=(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?Su:e.aggregations,Ut=(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]},ti=(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 Au=({options:e,selectedValues:t,onChange:o,minWidth:a=96})=>{let{t:r}=j(),[n,i]=useState(""),l=useMemo(()=>{let s=n.trim().toLowerCase();return s?e.filter(c=>c.toLowerCase().includes(s)):e},[e,n]),d=e.length>0&&t.length===e.length;return jsx(FormControl,{size:"small",sx:{minWidth:a},children:jsxs(Select,{multiple:true,value:t,onChange: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(d?[]:e);},sx:{minWidth:"auto",px:0,py:.2,fontSize:"0.76rem",fontWeight:700,textTransform:"none"},children:r(d?"pivot.filter.deselectAll":"pivot.filter.selectAll")})}),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(q0,{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})]})]})}),Eu=({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 rn=({zone:e,title:t,hint:o,icon:a,children:r,itemCount:n,onClear:i})=>{let l=`container|${e}`,{isOver:d,setNodeRef:s}=useDroppable({id:l}),{t:c}=j();return jsxs(Paper,{ref:s,sx:g=>({p:1.1,borderRadius:3,border:"1px dashed",borderColor:d?"primary.main":g.palette.divider,bgcolor:d?g.palette.mode==="dark"?"rgba(25, 118, 210, 0.16)":"rgba(47, 91, 255, 0.06)":g.palette.mode==="dark"?"rgba(255,255,255,0.02)":"rgba(245, 248, 255, 0.86)",transition:"all 120ms ease",minHeight:120,display:"flex",flexDirection:"column"}),children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[a,jsx(Typography,{sx:{fontSize:"0.79rem",fontWeight:800,letterSpacing:.2},children:t}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:["(",n,")"]})]}),n>0&&i&&jsx(Tooltip,{title:c("pivot.clearArea"),children:jsx(IconButton,{size:"small",onClick:i,sx:{p:.25},children:jsx(Q0,{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 zu={xs:1.2,md:1.6},sn=({title:e,subtitle:t,collapsed:o,onToggleCollapse:a,expandAriaLabel:r,collapseAriaLabel:n,children:i,bodySx:l,unmountOnExit:d=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:zu,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(Zy,{sx:{fontSize:16,transition:"transform 220ms cubic-bezier(0.2, 0, 0, 1)",transform:o?"rotate(180deg)":"rotate(0deg)"}})})]})]}),jsx(Collapse,{in:!o,timeout:260,easing:"cubic-bezier(0.2, 0, 0, 1)",unmountOnExit:d,children:jsx(Box,{sx:[{px:zu,py:{xs:1.2,md:1.6}},...Array.isArray(l)?l:l?[l]:[]],children:i})})]});var As=({label:e,caption:t,onRemove:o,trailing:a,isDragging:r,dragRef:n,listeners:i,attributes:l,style:d})=>jsx(Paper,{ref:n,style:d,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(q0,{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(Hh,{sx:{fontSize:16}})})]})}),oi=({id:e,label:t,caption:o,onRemove:a,trailing:r})=>{let{setNodeRef:n,attributes:i,listeners:l,transform:d,transition:s,isDragging:c}=useSortable({id:e}),g={transform:d?`translate3d(${d.x}px, ${d.y}px, 0)`:void 0,transition:s,zIndex:c?999:"auto"};return jsx(As,{label:t,caption:o,onRemove:a,trailing:r,isDragging:c,dragRef:n,listeners:l,attributes:i,style:g})};var Es={rows:jsx(pv,{fontSize:"small"}),columns:jsx(Pf,{fontSize:"small"}),filters:jsx(dv,{fontSize:"small"}),values:jsx(Af,{fontSize:"small"})},Ou=({isConfiguratorCollapsed:e,onToggleCollapse:t,availableFields:o,fieldMap:a,filterFields:r,columnFields:n,rowFields:i,valueFields:l,clearZone:d,removeFieldFromZone:s,getFilterSelectionSummary:c,renderDimensionFilterSelect:g,renderAggregationSelect:f,getAggregationLabel:p})=>{let{t:h}=j(),k=[`${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(sn,{title:h("pivot.config.title"),subtitle:k,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(rn,{zone:"palette",title:h("pivot.fieldList"),hint:h("pivot.availableDimensions"),itemCount:o.length,icon:jsx(q0,{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(u=>jsx(Eu,{id:`item|palette|${u.id}`,label:u.label,subtitle:u.type??"string"},u.id))]})}),jsxs(Stack,{spacing:2,children:[jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(rn,{zone:"filters",title:h("pivot.zone.filters"),hint:h("pivot.hint.filters"),icon:Es.filters,itemCount:r.length,onClear:()=>d("filters"),children:jsx(SortableContext,{items:r.map(u=>`item|filters|${u}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:r.map(u=>jsx(oi,{id:`item|filters|${u}`,label:a.get(u)?.label??u,caption:c(u),trailing:g(u),onRemove:()=>s("filters",u)},u))})})}),jsx(rn,{zone:"columns",title:h("pivot.zone.columns"),hint:h("pivot.hint.columns"),icon:Es.columns,itemCount:n.length,onClear:()=>d("columns"),children:jsx(SortableContext,{items:n.map(u=>`item|columns|${u}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:n.map(u=>jsx(oi,{id:`item|columns|${u}`,label:a.get(u)?.label??u,caption:`${a.get(u)?.type??"dimension"} \u2022 ${c(u)}`,trailing:g(u),onRemove:()=>s("columns",u)},u))})})})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(rn,{zone:"rows",title:h("pivot.zone.rows"),hint:h("pivot.hint.rows"),icon:Es.rows,itemCount:i.length,onClear:()=>d("rows"),children:jsx(SortableContext,{items:i.map(u=>`item|rows|${u}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:i.map(u=>jsx(oi,{id:`item|rows|${u}`,label:a.get(u)?.label??u,caption:`${a.get(u)?.type??"dimension"} \u2022 ${c(u)}`,trailing:g(u),onRemove:()=>s("rows",u)},u))})})}),jsx(rn,{zone:"values",title:h("pivot.zone.values"),hint:h("pivot.hint.values"),icon:Es.values,itemCount:l.length,onClear:()=>d("values"),children:jsx(SortableContext,{items:l.map(u=>`item|values|${u.tokenId}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:l.map(u=>{let C=a.get(u.fieldId)?.label??u.fieldId,m=`${p(u.aggregation)}(${C})`;return jsx(oi,{id:`item|values|${u.tokenId}`,label:C,caption:m,trailing:f(u),onRemove:()=>s("values",u.tokenId)},u.tokenId)})})})})]})]})]})})};var Wu=e=>e.toLocaleString(void 0,{maximumFractionDigits:1}),$u=({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,d={top:20,right:24,bottom:40,left:52},s=o?e.map(u=>u.primaryValue):e.map((u,C)=>C+1),c=o?e.map(u=>u.secondaryValue??0):e.map(u=>u.primaryValue),g=Math.max(...s,1),f=Math.max(...c,1),p=i-d.left-d.right,h=l-d.top-d.bottom,k=e.map((u,C)=>{let m=o?u.primaryValue:C+1,y=o?u.secondaryValue??0:u.primaryValue,x=d.left+m/g*p,S=l-d.bottom-y/f*h;return {...u,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:d.left,y1:l-d.bottom,x2:i-d.right,y2:l-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),jsx("line",{x1:d.left,y1:d.top,x2:d.left,y2:l-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),k.map(u=>jsxs("g",{children:[jsx("circle",{cx:u.x,cy:u.y,r:7,fill:alpha(n.palette.primary.main,.18)}),jsx("circle",{cx:u.x,cy:u.y,r:4.5,fill:n.palette.primary.main,children:jsxs("title",{children:[u.name,`
|
|
13
|
+
`,o?`${t}: ${a(u.primaryValue)}`:`${t}: ${a(u.primaryValue)}`,o?`
|
|
14
|
+
${o}: ${(r??a)(u.secondaryValue??0)}`:""]})}),jsx("text",{x:u.x,y:Math.max(u.y-12,d.top+8),textAnchor:"middle",fontSize:"10",fill:n.palette.text.secondary,children:u.name})]},u.name)),jsx("text",{x:i/2,y: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:d.left,y:d.top-4,fontSize:"10",fill:n.palette.text.secondary,children:Wu(f)}),jsx("text",{x:i-d.right,y:l-d.bottom+16,textAnchor:"end",fontSize:"10",fill:n.palette.text.secondary,children:Wu(g)})]})}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(3, minmax(0, 1fr))"},gap:1},children:e.map(u=>jsxs(Box,{sx: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:u.name,children:u.name}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[t,": ",a(u.primaryValue)]}),o&&jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[o,": ",(r??a)(u.secondaryValue??0)]})]},u.name))})]})};var Pc=e=>Math.max(...e,1),Gu=({data:e,chartType:t,primaryLabel:o,secondaryLabel:a,formatPrimaryValue:r,formatSecondaryValue:n})=>{let i=useTheme$1(),l=i.palette.primary.main,d=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:d}})})]}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},fontWeight:700},children:r(y.primaryValue)}),a&&jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},color:"text.secondary"},children:(n??r)(y.secondaryValue??0)})]})]},y.name))})}if(t==="bar-vertical"){let m=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:d},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])),p=s-g.left-g.right,h=c-g.top-g.bottom,k=m=>e.map((y,x)=>{let S=g.left+x*p/Math.max(e.length-1,1),F=c-g.bottom-m(y)/f*h;return {x:S,y:F,item:y}}),u=k(m=>m.primaryValue),C=a?k(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:u.map(m=>`${m.x},${m.y}`).join(" ")}),u.map(m=>jsx("circle",{cx:m.x,cy:m.y,r:4,fill:l,children:jsxs("title",{children:[m.item.name,`
|
|
15
|
+
`,o,": ",r(m.item.primaryValue)]})},`primary-${m.item.name}`)),a&&jsxs(Fragment,{children:[jsx("polyline",{fill:"none",stroke:d,strokeWidth:2.5,strokeDasharray:"5 5",points:C.map(m=>`${m.x},${m.y}`).join(" ")}),C.map(m=>jsx("circle",{cx:m.x,cy:m.y,r:3.5,fill:d,children:jsxs("title",{children:[m.item.name,`
|
|
16
|
+
`,a,": ",(n??r)(m.item.secondaryValue??0)]})},`secondary-${m.item.name}`))]})]})}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",xl:"repeat(4, minmax(0, 1fr))"},gap:1},children:e.map(m=>jsxs(Box,{sx:y=>({borderRadius:2,px:1.1,py:.9,border:`1px solid ${alpha(y.palette.divider,.7)}`,bgcolor:alpha(y.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.76rem",fontWeight:700},noWrap:true,title:m.name,children:m.name}),jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:r(m.primaryValue)}),a&&jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:(n??r)(m.secondaryValue??0)})]},m.name))})]})};var Uu=(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},Ku=(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}}),qu=({rows:e,dimensionFieldId:t,primaryValue:o,secondaryValue:a})=>{if(!t)return [];let r=new Map;return e.forEach(n=>{let i=ma(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:tn(i,o.fieldId,o.aggregation),secondaryValue:a?tn(i,a.fieldId,a.aggregation):void 0}))};var _u=({rows:e,fieldMap:t,rowFields:o,columnFields:a,valueFields:r,chartDimensionFieldId:n,chartPrimaryValueFieldId:i,chartSecondaryValueFieldId:l,chartType:d,isCollapsed:s,onChartDimensionFieldIdChange:c,onChartPrimaryValueFieldIdChange:g,onChartSecondaryValueFieldIdChange:f,onChartTypeChange:p,onToggleCollapse:h,getAggregationLabel:k})=>{let{t:u}=j(),C=useMemo(()=>Uu(o,a,t),[a,t,o]),m=useMemo(()=>Ku(r,t,k),[t,k,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],F=S&&y?u("pivot.chart.subtitleReady",{dimension:S.label,measure:x?`${y.label} / ${x.label}`:y.label}):u("pivot.chart.subtitle"),D=useMemo(()=>!S||!y?[]:qu({rows:e,dimensionFieldId:S.fieldId,primaryValue:y.item,secondaryValue:x?.item}),[y,e,x,S]),I=v=>y?ti(v,y.item,t):v.toLocaleString(),A=v=>x?ti(v,x.item,t):v.toLocaleString(),P=C.length>1||m.length>1;return jsxs(sn,{title:u("pivot.chart.title"),subtitle:F,collapsed:s,onToggleCollapse:h,expandAriaLabel:u("pivot.chart.collapse.ariaExpand"),collapseAriaLabel:u("pivot.chart.collapse.ariaCollapse"),bodySx:{display:"flex",flexDirection:"column",gap:1.1},children:[P&&jsxs(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",xl:"repeat(4, minmax(0, 1fr))"},gap:1,alignItems:"start"},children:[jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:u("pivot.chart.dimension")}),jsx(Select,{value: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:u("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:u("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:u("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:u("pivot.chart.chartType")}),jsxs(Select,{value:d,onChange:v=>p(v.target.value),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"bar-vertical",sx:{fontSize:"0.75rem"},children:u("pivot.chart.style.barVertical")}),jsx(MenuItem,{value:"bar-horizontal",sx:{fontSize:"0.75rem"},children:u("pivot.chart.style.barHorizontal")}),jsx(MenuItem,{value:"line",sx:{fontSize:"0.75rem"},children:u("pivot.chart.style.line")}),jsx(MenuItem,{value:"scatter",sx:{fontSize:"0.75rem"},children:u("pivot.chart.style.scatter")})]})]})]}),jsx(Box,{children:S?y?D.length===0?jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:u("pivot.chart.emptyNoData")})}):d==="scatter"?jsx($u,{data:D,primaryLabel:y.label,secondaryLabel:x?.label,formatPrimaryValue:I,formatSecondaryValue:A}):jsx(Gu,{data:D,chartType:d,primaryLabel:y.label,secondaryLabel:x?.label,formatPrimaryValue:I,formatSecondaryValue:A}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:u("pivot.chart.emptyNoValue")})}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:u("pivot.chart.emptyNoDimension")})})})]})};var Ns=({node:e,dataColumns:t,fieldMap:o,level:a,expandedKeys:r,onToggle:n,getValue:i})=>{let l=r.has(e.key),d=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:[d&&!s&&jsx(IconButton,{size:"small",onClick:()=>n(e.key),sx:{p:.2,mr:.5,ml:-1},children:l?jsx(eh,{sx:{fontSize:16}}):jsx(Nf,{sx:{fontSize:16}})}),!d&&!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:ti(i?i(e,c.id):e.aggregatedValues[c.id]??0,c.valueItem,o)},`${e.key}-${c.id}`))]}),l&&e.children.map(c=>jsx(Ns,{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]??""},Ws=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",Fc=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",em=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},om=(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,om(r.children,t,o+1)),o),_v=(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},eF=({title:e,rows:t,fields:o,initialLayout:a,initialChart:r,emptyText:n,maxPreviewHeight:i=520,initialChartCollapsed:l=false,initialTableCollapsed:d=false,model:s,enablePresetManagement:c=false,presets:g,defaultPresets:f,onPresetsChange:p,initialPresetId:h,onPresetApplied:k})=>{let{t:u}=j(),C=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}})),m=useRef(0),y=useRef(false),x=e??u("pivot.title.default"),S=n??u("pivot.empty"),F=useMemo(()=>({sum:u("pivot.agg.sum"),count:u("pivot.agg.count"),avg:u("pivot.agg.avg"),min:u("pivot.agg.min"),max:u("pivot.agg.max")}),[u]),D=useCallback(b=>F[b]??ku[b],[F]),I=useMemo(()=>new Set(o.map(b=>b.id)),[o]),A=useMemo(()=>new Map(o.map(b=>[b.id,b])),[o]),[P,v]=useState(()=>Ct(a?.rows,I)),[M,w]=useState(()=>Ct(a?.columns,I)),[R,T]=useState(()=>Ct(a?.filters,I)),[W,N]=useState(()=>{let b=a?.values??[],B=new Set,E=[];return b.forEach(H=>{if(!I.has(H.fieldId)||B.has(H.fieldId))return;B.add(H.fieldId),m.current+=1;let J=A.get(H.fieldId);E.push({tokenId:`v${m.current}`,fieldId:H.fieldId,aggregation:Ut(H.aggregation,J)});}),E}),[X,se]=useState({}),[ee,te]=useState(true),[Z,Oe]=useState(false),[tt,qe]=useState(()=>Bc(Ct(a?.rows,I),Ct(a?.columns,I),r?.dimensionFieldId)),[oe,Ie]=useState(()=>{let b=(a?.values??[]).filter((B,E,H)=>I.has(B.fieldId)&&H.findIndex(J=>J.fieldId===B.fieldId)===E).map(B=>({tokenId:B.fieldId,fieldId:B.fieldId,aggregation:Ut(B.aggregation,A.get(B.fieldId))}));return Ws(b,r?.primaryValueFieldId)}),[ve,Je]=useState(()=>{let b=(a?.values??[]).filter((E,H,J)=>I.has(E.fieldId)&&J.findIndex(fe=>fe.fieldId===E.fieldId)===H).map(E=>({tokenId:E.fieldId,fieldId:E.fieldId,aggregation:Ut(E.aggregation,A.get(E.fieldId))})),B=Ws(b,r?.primaryValueFieldId);return Fc(b,B,r?.secondaryValueFieldId)}),[nt,We]=useState(r?.chartType??"bar-vertical"),[et,G]=useState(l),[pe,ue]=useState(d),[be,Ce]=useState(()=>f??[]),[$e,O]=useState(""),[ce,Y]=useState(false),[le,Ee]=useState(""),[xe,St]=useState(null),[_t,jt]=useState(new Set(["__grand_total__"])),[ko,So]=useState(new Set),Be=s?.rowFields??P,ye=s?.columnFields??M,wt=s?.filterFields??R,ze=s?.valueFields??W,Ot=s?.filterSelections??X,wo=s?.showGrandTotal??ee,_a=s?.isConfiguratorCollapsed??Z,V=s?.chartDimensionFieldId??tt,$=s?.chartPrimaryValueFieldId??oe,K=s?.chartSecondaryValueFieldId??ve,ke=s?.chartType??nt,we=s?.isChartCollapsed??et,Le=s?.isTableCollapsed??pe,he=g??be,Ne=c||he.length>0||!!p,Pe=useCallback(b=>{if(s?.setRowFields){s.setRowFields(b);return}v(b);},[s]),Ve=useCallback(b=>{if(s?.setColumnFields){s.setColumnFields(b);return}w(b);},[s]),Fe=useCallback(b=>{if(s?.setFilterFields){s.setFilterFields(b);return}T(b);},[s]),Te=useCallback(b=>{if(s?.setValueFields){s.setValueFields(b);return}N(b);},[s]),Ae=useCallback(b=>{if(s?.setFilterSelections){s.setFilterSelections(b);return}se(b);},[s]),Wt=useCallback(b=>{if(s?.setShowGrandTotal){s.setShowGrandTotal(b);return}te(b);},[s]),To=useCallback(b=>{if(s?.setIsConfiguratorCollapsed){s.setIsConfiguratorCollapsed(b);return}Oe(b);},[s]),xt=useCallback(b=>{if(s?.setChartDimensionFieldId){s.setChartDimensionFieldId(b);return}qe(b);},[s]),Tt=useCallback(b=>{if(s?.setChartPrimaryValueFieldId){s.setChartPrimaryValueFieldId(b);return}Ie(b);},[s]),go=useCallback(b=>{if(s?.setChartSecondaryValueFieldId){s.setChartSecondaryValueFieldId(b);return}Je(b);},[s]),Ca=useCallback(b=>{if(s?.setChartType){s.setChartType(b);return}We(b);},[s]),Pr=useCallback(b=>{if(s?.setIsChartCollapsed){s.setIsChartCollapsed(b);return}G(b);},[s]),Io=useCallback(b=>{if(s?.setIsTableCollapsed){s.setIsTableCollapsed(b);return}ue(b);},[s]),eo=useCallback(b=>{let B=typeof b=="function"?b(he):b;g||Ce(B),p?.(B);},[p,he,g]),ja=useMemo(()=>new Set([...Be,...ye,...wt]),[Be,ye,wt]),Qo=useMemo(()=>o.filter(b=>!ja.has(b.id)),[o,ja]),$t=useMemo(()=>{let b=[...Be,...ye,...wt],B=new Set,E=[];return b.forEach(H=>{B.has(H)||(B.add(H),E.push(H));}),E},[ye,wt,Be]);useEffect(()=>{Pe(b=>{let B=b.filter(E=>I.has(E));return ga(b,B)?b:B}),Ve(b=>{let B=b.filter(E=>I.has(E));return ga(b,B)?b:B}),Fe(b=>{let B=b.filter(E=>I.has(E));return ga(b,B)?b:B}),Te(b=>{let B=b.filter(E=>I.has(E.fieldId)).map(E=>({...E,aggregation:Ut(E.aggregation,A.get(E.fieldId))}));return Is(b,B)?b:B});},[A,I]);let to=useMemo(()=>{let b={};return $t.forEach(B=>{let E=new Set;t.forEach(H=>{E.add(ma(H[B]));}),b[B]=Array.from(E).sort((H,J)=>H.localeCompare(J));}),b},[$t,t]);useEffect(()=>{Ae(b=>{let B={};return $t.forEach(E=>{let H=to[E]??[],fe=(b[E]??[]).filter(_=>H.includes(_)),L=Object.prototype.hasOwnProperty.call(b,E);B[E]=L?fe:H;}),Ru(b,B)?b:B});},[$t,to]),useEffect(()=>{xt(b=>Bc(Be,ye,b));},[ye,Be,xt]),useEffect(()=>{Tt(b=>Ws(ze,b));},[Tt,ze]),useEffect(()=>{go(b=>Fc(ze,$,b));},[$,go,ze]);let Lt=useMemo(()=>t.filter(b=>$t.every(B=>{let E=Ot[B]??[],H=to[B]??[];if(E.length===H.length)return true;if(E.length===0)return false;let J=ma(b[B]);return E.includes(J)})),[$t,to,Ot,t]),He=useMemo(()=>{if(ze.length===0)return null;let b=new Map;if(Lt.forEach(L=>{let _=ye.length>0?ye.map(Xe=>ma(L[Xe])):[u("pivot.valueLabel")],q=fr(_);b.set(q,_);}),b.size===0){let L=ye.length>0?ye.map(()=>ws):[u("pivot.valueLabel")];b.set(fr(L),L);}let B=Array.from(b.entries()).sort((L,_)=>Pu(L[1],_[1])),E=B.flatMap(([L,_])=>ze.map(q=>{let Xe=A.get(q.fieldId),z=`${D(q.aggregation)} ${Xe?.label??q.fieldId}`,Q=ye.length===0||ze.length>1?`${_.join(" / ")} \u2022 ${z}`:_.join(" / ");return {id:`${L}::${q.tokenId}`,colKey:L,valueItem:q,label:Q}})),H=[];ye.length>0&&B.forEach(([L,_])=>{let q=E.filter(Q=>Q.colKey===L),Xe=H,z=[];_.forEach((Q,U)=>{z.push(`d${U}:${Q}`);let ne=`col::${fr(z)}`,Ge=Xe.find(Uo=>Uo.key===ne);Ge||(Ge={key:ne,label:Q,children:[],leafColumnIds:[],path:_.slice(0,U+1),depth:U},Xe.push(Ge)),q.forEach(Uo=>{Ge.leafColumnIds.includes(Uo.id)||Ge.leafColumnIds.push(Uo.id);}),Xe=Ge.children;});});let J=L=>{let _={};return E.forEach(q=>{let Xe=L.filter(z=>{let Q=ye.length>0?ye.map(U=>ma(z[U])):[u("pivot.valueLabel")];return fr(Q)===q.colKey});_[q.id]=tn(Xe,q.valueItem.fieldId,q.valueItem.aggregation);}),_},fe=[];if(Be.length===0)fe.push({key:"root",value:u("pivot.resultLabel")||vu,children:[],isLeaf:true,aggregatedValues:J(Lt),path:[],depth:0});else {let L=(_,q,Xe)=>{if(q>=Be.length)return [];let z=Be[q],Q=new Map;return _.forEach(U=>{let ne=ma(U[z]);Q.has(ne)||Q.set(ne,[]),Q.get(ne).push(U);}),Array.from(Q.keys()).sort().map(U=>{let ne=Q.get(U),Ge=[...Xe,U];return {key:fr(Ge),value:U,fieldId:z,aggregatedValues:J(ne),children:L(ne,q+1,Ge),isLeaf:q===Be.length-1,path:Ge,depth:q}})};fe.push(...L(Lt,0,[]));}return {dataColumns:E,columnTree:H,rowTree:fe}},[ye,A,Lt,D,Be,u,ze]),Yo=useCallback((b,B)=>(m.current+=1,{tokenId:`v${m.current}`,fieldId:b,aggregation:Ut(B,A.get(b))}),[A]),Wo=useCallback(b=>{if(b==="rows")return Pe([]);if(b==="columns")return Ve([]);if(b==="filters")return Fe([]);Te([]);},[]),Jo=useCallback((b,B)=>{if(b==="rows")return Pe(E=>E.filter(H=>H!==B));if(b==="columns")return Ve(E=>E.filter(H=>H!==B));if(b==="filters")return Fe(E=>E.filter(H=>H!==B));Te(E=>E.filter(H=>H.tokenId!==B));},[]),Za=useCallback((b,B)=>{Te(E=>E.map(H=>H.tokenId===b?{...H,aggregation:Ut(B,A.get(H.fieldId))}:H));},[A]),$o=useCallback(b=>{St(String(b.active.id));},[]),Xa=useCallback(b=>{if(St(null),!b.over)return;let B=Ts(String(b.active.id)),E=Ts(String(b.over.id));if(!B||!E||B.kind!=="item"||!B.key)return;if(B.zone===E.zone&&E.kind==="item"){if(B.zone==="rows"){let U=Be.indexOf(B.key),ne=Be.indexOf(E.key??"");U!==-1&&ne!==-1&&U!==ne&&Pe(Ge=>arrayMove(Ge,U,ne));return}if(B.zone==="columns"){let U=ye.indexOf(B.key),ne=ye.indexOf(E.key??"");U!==-1&&ne!==-1&&U!==ne&&Ve(Ge=>arrayMove(Ge,U,ne));return}if(B.zone==="filters"){let U=wt.indexOf(B.key),ne=wt.indexOf(E.key??"");U!==-1&&ne!==-1&&U!==ne&&Fe(Ge=>arrayMove(Ge,U,ne));return}if(B.zone==="values"){let U=ze.findIndex(Ge=>Ge.tokenId===B.key),ne=ze.findIndex(Ge=>Ge.tokenId===(E.key??""));U!==-1&&ne!==-1&&U!==ne&&Te(Ge=>arrayMove(Ge,U,ne));}return}let H=E.zone,J=[...Be],fe=[...ye],L=[...wt],_=[...ze],q="",Xe=null;if(B.zone==="palette")q=B.key;else if(B.zone==="values"){let U=_.find(ne=>ne.tokenId===B.key);if(!U)return;q=U.fieldId,Xe=U,_=_.filter(ne=>ne.tokenId!==B.key);}else B.zone==="rows"?(q=B.key,J=J.filter(U=>U!==q)):B.zone==="columns"?(q=B.key,fe=fe.filter(U=>U!==q)):B.zone==="filters"&&(q=B.key,L=L.filter(U=>U!==q));if(!q)return;let z=()=>{J=J.filter(U=>U!==q),fe=fe.filter(U=>U!==q),L=L.filter(U=>U!==q);},Q=U=>{if(E.kind!=="item"||!E.key)return U==="rows"?J.length:U==="columns"?fe.length:U==="filters"?L.length:U==="values"?_.length:0;if(U==="rows"){let ne=J.indexOf(E.key);return ne>=0?ne:J.length}if(U==="columns"){let ne=fe.indexOf(E.key);return ne>=0?ne:fe.length}if(U==="filters"){let ne=L.indexOf(E.key);return ne>=0?ne:L.length}if(U==="values"){let ne=_.findIndex(Ge=>Ge.tokenId===E.key);return ne>=0?ne:_.length}return 0};if(H==="palette"){Pe(J),Ve(fe),Fe(L),Te(_);return}if(H==="values"){let U=Q("values"),ne=Xe??Yo(q);_.splice(U,0,ne),Pe(J),Ve(fe),Fe(L),Te(_);return}if(Iu(H)){z();let U=Q(H);H==="rows"?J.splice(U,0,q):H==="columns"?fe.splice(U,0,q):L.splice(U,0,q),Pe(J),Ve(fe),Fe(L),Te(_);}},[ye,Yo,wt,Be,ze]),Qa=useCallback((b,B)=>{Ae(E=>({...E,[b]:B}));},[]),Ho=useCallback(b=>{jt(B=>{let E=new Set(B);return E.has(b)?E.delete(b):E.add(b),E});},[]),ea=useCallback(b=>{So(B=>{let E=new Set(B);return E.has(b)?E.delete(b):E.add(b),E});},[]),ka=useCallback(b=>{let B=A.get(b.fieldId),E=xc(B);return jsx(FormControl,{size:"small",sx:{minWidth:98},children:jsx(Select,{value:b.aggregation,onChange:H=>Za(b.tokenId,H.target.value),onClick:H=>H.stopPropagation(),onMouseDown:H=>H.stopPropagation(),sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:E.map(H=>jsx(MenuItem,{value:H,sx:{fontSize:"0.75rem"},children:D(H)},H))})})},[A,D,Za]),Ht=useCallback(b=>{let B=to[b]??[],E=Ot[b]??B;return B.length===0?u("pivot.filter.noValues"):E.length===0?u("pivot.filter.noneSelected"):E.length===B.length?u("pivot.filter.allValues"):u("pivot.filter.selectedCount",{selected:E.length,total:B.length})},[to,Ot,u]),Po=useCallback(b=>{let B=to[b]??[],E=Ot[b]??B;return jsx(Au,{options:B,selectedValues:E,onChange:H=>Qa(b,H)})},[to,Ot,Qa]),ta=useCallback(()=>`pivot-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,[]),fo=useCallback(()=>{let b={};return new Set([...$t,...Object.keys(Ot)]).forEach(E=>{if(!I.has(E))return;let H=Ot[E]??[];b[E]=[...H];}),{layout:{rows:[...Be],columns:[...ye],filters:[...wt],values:ze.map(E=>({fieldId:E.fieldId,aggregation:E.aggregation}))},filterSelections:b,showGrandTotal:wo,chart:{dimensionFieldId:V,primaryValueFieldId:$,secondaryValueFieldId:K,chartType:ke}}},[$t,V,$,K,ke,ye,wt,Ot,Be,wo,I,ze]),Go=useCallback(b=>{let B=Ct(b.layout.rows,I),E=Ct(b.layout.columns,I),H=Ct(b.layout.filters,I),J=new Set,fe=(b.layout.values??[]).filter(q=>!I.has(q.fieldId)||J.has(q.fieldId)?false:(J.add(q.fieldId),true)).map(q=>Yo(q.fieldId,q.aggregation)),L={};Object.entries(b.filterSelections??{}).forEach(([q,Xe])=>{!I.has(q)||!Array.isArray(Xe)||(L[q]=Array.from(new Set(Xe.map(z=>String(z)))));}),Pe(B),Ve(E),Fe(H),Te(fe),Ae(L),typeof b.showGrandTotal=="boolean"&&Wt(b.showGrandTotal),xt(Bc(B,E,b.chart?.dimensionFieldId));let _=Ws(fe,b.chart?.primaryValueFieldId);Tt(_),go(Fc(fe,_,b.chart?.secondaryValueFieldId)),Ca(b.chart?.chartType??"bar-vertical"),O(b.id),k?.(b);},[Yo,k,xt,Tt,go,Ca,Ve,Fe,Ae,Pe,Wt,Te,I]),Ya=useCallback(b=>{if(!b){O("");return}let B=he.find(E=>E.id===b);if(!B){O("");return}Go(B);},[Go,he]),Rr=useCallback(()=>{let b=u("pivot.preset.defaultName",{index:he.length+1});Ee(b),Y(true);},[he.length,u]),Sa=useCallback(()=>{let b=le.trim();if(!b)return;let B={id:ta(),name:b,...fo()};eo(E=>[...E,B]),O(B.id),Y(false);},[fo,ta,le,eo]),Ja=useCallback(()=>{$e&&(eo(b=>b.filter(B=>B.id!==$e)),O(""));},[$e,eo]);useEffect(()=>{if(!h||y.current)return;let b=he.find(B=>B.id===h);b&&(y.current=true,Go(b));},[Go,h,he]),useEffect(()=>{$e&&(he.some(b=>b.id===$e)||O(""));},[$e,he]);let oa=useMemo(()=>{if(!wo||!He||!Be.length)return null;let b={};return He.dataColumns.forEach(B=>{let E=Lt.filter(H=>{let J=ye.length>0?ye.map(fe=>ma(H[fe])):[u("pivot.valueLabel")];return fr(J)===B.colKey});b[B.id]=tn(E,B.valueItem.fieldId,B.valueItem.aggregation);}),{key:"__grand_total__",value:u("pivot.grandTotal")||Cu,children:[],isLeaf:false,isGrandTotal:true,aggregatedValues:b,path:[],depth:-1}},[wo,He,Lt,ye,Be.length,u]),Zt=useMemo(()=>em(He?.rowTree??[]),[He]),Ro=useMemo(()=>em(He?.columnTree??[]),[He]);useEffect(()=>{jt(b=>{let B=new Set;return b.has("__grand_total__")&&B.add("__grand_total__"),Zt.forEach(E=>{b.has(E)&&B.add(E);}),B});},[Zt]),useEffect(()=>{So(b=>{let B=new Set;return Ro.forEach(E=>{b.has(E)&&B.add(E);}),B});},[Ro]);let Dr=useCallback(()=>{jt(b=>{let B=new Set(b);return Zt.forEach(E=>B.add(E)),B});},[Zt]),er=useCallback(()=>{jt(b=>{let B=new Set;return b.has("__grand_total__")&&B.add("__grand_total__"),B});},[]),Mr=useCallback(()=>{So(new Set(Ro));},[Ro]),Ar=useCallback(()=>{So(new Set);},[]),Br=useMemo(()=>!He||ye.length===0?[]:_v(He.columnTree,ko),[ye.length,ko,He]),oo=useMemo(()=>{if(!He)return [];if(ye.length===0)return He.dataColumns.map(B=>({id:B.id,label:B.label,leafColumnIds:[B.id],valueItem:B.valueItem}));let b=new Map(He.dataColumns.map(B=>[B.id,B]));return Br.flatMap(B=>{let E=new Map;return B.leafColumnIds.forEach(H=>{let J=b.get(H);if(!J)return;let fe=J.valueItem.tokenId,L=`${D(J.valueItem.aggregation)} ${A.get(J.valueItem.fieldId)?.label??J.valueItem.fieldId}`,_=E.get(fe);if(_){_.leafColumnIds.push(H);return}E.set(fe,{id:`${B.key}::${fe}`,label:ze.length>1?L:B.label,leafColumnIds:[H],valueItem:J.valueItem});}),Array.from(E.values())})},[ye.length,A,D,He,ze.length,Br]),Fr=useMemo(()=>new Map(oo.map(b=>[b.id,b])),[oo]),Er=useMemo(()=>oo.map(b=>({id:b.id,colKey:b.id,valueItem:b.valueItem,label:b.label})),[oo]),tr=useMemo(()=>{if(!He||ye.length===0)return [];let b=[],B=om(He.columnTree,ko),E=B+(ze.length>1?1:0),H=(J,fe)=>{b[fe]??(b[fe]=[]),J.forEach(L=>{let _=L.children.length>0&&ko.has(L.key),q=oo.filter(z=>L.leafColumnIds.some(Q=>z.leafColumnIds.includes(Q))).length,Xe=_||ze.length>1?1:E-fe;b[fe].push({key:L.key,label:L.label,colSpan:q,rowSpan:Xe,expandable:L.children.length>0,expanded:_}),_&&H(L.children,fe+1);});};return H(He.columnTree,0),ze.length>1&&(b[B]=oo.map(J=>({key:J.id,label:J.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))),b},[ye.length,ko,He,ze.length,oo]),aa=useCallback((b,B)=>B.leafColumnIds.reduce((E,H)=>E+(b.aggregatedValues[H]??0),0),[]),wa=useMemo(()=>jsxs(Fragment,{children:[jsx(Button,{size:"small",variant:"text",onClick:Dr,disabled:Zt.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.expandRowsAll")}),jsx(Button,{size:"small",variant:"text",onClick:er,disabled:Zt.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.collapseRowsAll")}),jsx(Divider,{orientation:"vertical",flexItem:true}),jsx(Button,{size:"small",variant:"text",onClick:Mr,disabled:Ro.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.expandColumnsAll")}),jsx(Button,{size:"small",variant:"text",onClick:Ar,disabled:ye.length===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.collapseColumnsAll")})]}),[ye.length,Ro.size,Zt.size,Ar,er,Mr,Dr,u]),Ta=()=>{if(!xe)return null;let b=Ts(xe);if(!b||b.kind!=="item"||!b.key)return null;if(b.zone==="palette"){let J=A.get(b.key);return J?jsx(Cc,{label:J.label,subtitle:J.type}):null}if(b.zone==="values"){let J=ze.find(q=>q.tokenId===b.key);if(!J)return null;let L=A.get(J.fieldId)?.label??J.fieldId,_=`${D(J.aggregation)}(${L})`;return jsx(As,{label:L,caption:_})}let E=A.get(b.key)?.label??b.key,H=Ht(b.key);return jsx(As,{label:E,caption:H})};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:u("pivot.subtitle.default")})]}),jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[Ne&&jsxs(Fragment,{children:[jsx(FormControl,{size:"small",sx:{minWidth:200},children:jsxs(Select,{value:$e,displayEmpty:true,onChange:b=>Ya(String(b.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:u("pivot.preset.selectPlaceholder")}),he.map(b=>jsx(MenuItem,{value:b.id,sx:{fontSize:"0.75rem"},children:b.name},b.id))]})}),jsx(Tooltip,{title:u("pivot.preset.save"),children:jsx(IconButton,{size:"small",onClick:Rr,"aria-label":u("pivot.preset.save"),children:jsx(Ip,{sx:{fontSize:18}})})}),jsx(Tooltip,{title:u("pivot.preset.delete"),children:jsx("span",{children:jsx(IconButton,{size:"small",onClick:Ja,disabled:!$e,"aria-label":u("pivot.preset.delete"),children:jsx(Vv,{sx:{fontSize:18}})})})}),jsx(Divider,{flexItem:true,orientation:"vertical"})]}),jsxs(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary"},children:[u("pivot.records"),": ",jsx("strong",{children:t.length.toLocaleString()})," / ",u("pivot.afterFilter"),":"," ",jsx("strong",{children:Lt.length.toLocaleString()})]}),jsx(Divider,{flexItem:true,orientation:"vertical"}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.6},children:[jsx(Typography,{sx:{fontSize:"0.74rem"},children:u("pivot.grandTotal")}),jsx(Switch,{size:"small",checked:wo,onChange:b=>Wt(b.target.checked)})]})]})]}),jsx(Divider,{}),jsxs(DndContext,{sensors:C,collisionDetection:closestCenter,onDragStart:$o,onDragEnd:Xa,children:[jsx(Ou,{isConfiguratorCollapsed:_a,onToggleCollapse:()=>To(b=>!b),availableFields:Qo,fieldMap:A,filterFields:wt,columnFields:ye,rowFields:Be,valueFields:ze,clearZone:Wo,removeFieldFromZone:Jo,getFilterSelectionSummary:Ht,renderDimensionFilterSelect:Po,renderAggregationSelect:ka,getAggregationLabel:D}),jsx(Portal,{children:jsx(DragOverlay,{dropAnimation:{duration:250,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:Ta()})})]}),jsx(_u,{rows:Lt,fieldMap:A,rowFields:Be,columnFields:ye,valueFields:ze,chartDimensionFieldId:V,chartPrimaryValueFieldId:$,chartSecondaryValueFieldId:K,chartType:ke,isCollapsed:we,onChartDimensionFieldIdChange:b=>xt(b),onChartPrimaryValueFieldIdChange:b=>Tt(b),onChartSecondaryValueFieldIdChange:b=>go(b),onChartTypeChange:b=>Ca(b),onToggleCollapse:()=>Pr(b=>!b),getAggregationLabel:D}),jsx(sn,{title:u("pivot.table.sectionTitle"),subtitle:Be.length>0?Be.map(b=>A.get(b)?.label??b).join(" > "):u("pivot.table.dimensions"),collapsed:Le,onToggleCollapse:()=>Io(b=>!b),expandAriaLabel:u("pivot.table.collapse.ariaExpand"),collapseAriaLabel:u("pivot.table.collapse.ariaCollapse"),bodySx:{p:0},headerActions:wa,children:He===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:(tr.length>0?tr:[[]]).map((b,B)=>jsxs(TableRow,{children:[B===0&&jsx(TableCell,{rowSpan:Math.max(tr.length,1),sx:E=>({fontWeight:800,fontSize:"0.76rem",color:"text.primary",bgcolor:E.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${E.palette.divider}`,pl:2,minWidth:220,verticalAlign:"middle"}),children:Be.length>0?Be.map(E=>A.get(E)?.label).join(" > "):u("pivot.table.dimensions")}),(b.length>0?b:oo.map(E=>({key:E.id,label:E.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))).map(E=>jsx(TableCell,{align:"center",colSpan:E.colSpan,rowSpan:E.rowSpan,sx:H=>({fontWeight:800,fontSize:"0.75rem",color:"text.primary",bgcolor:H.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${H.palette.divider}`,minWidth:148,verticalAlign:"middle"}),children:jsxs(Box,{sx:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:.4},children:[E.expandable&&jsx(IconButton,{size:"small",onClick:()=>ea(E.key),sx:{p:.1,ml:-0.3},children:E.expanded?jsx(eh,{sx:{fontSize:16}}):jsx(Nf,{sx:{fontSize:16}})}),jsx(Box,{component:"span",children:E.label})]})},E.key))]},`pivot-header-row-${B}`))}),jsxs(TableBody,{children:[He.rowTree.map(b=>jsx(Ns,{node:b,dataColumns:Er,fieldMap:A,level:0,expandedKeys:_t,onToggle:Ho,getValue:(B,E)=>{let H=Fr.get(E);return H?aa(B,H):0}},b.key)),oa&&jsx(Ns,{node:oa,dataColumns:Er,fieldMap:A,level:0,expandedKeys:_t,onToggle:Ho,getValue:(b,B)=>{let E=Fr.get(B);return E?aa(b,E):0}})]})]})})}),jsxs(Dialog,{open:ce,onClose:()=>Y(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:u("pivot.preset.saveDialogTitle")}),jsx(DialogContent,{children:jsx(TextField,{autoFocus:true,fullWidth:true,margin:"dense",label:u("pivot.preset.nameLabel"),value:le,onChange:b=>Ee(b.target.value),onKeyDown:b=>{b.key==="Enter"&&(b.preventDefault(),Sa());}})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>Y(false),children:u("common.cancel")}),jsx(Button,{variant:"contained",onClick:Sa,disabled:!le.trim(),children:u("common.save")})]})]})]})};var am=(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??"",rm=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",nF=({fields:e,initialLayout:t,initialFilterSelections:o={},initialShowGrandTotal:a=true,initialConfiguratorCollapsed:r=false,initialChart:n,initialChartCollapsed:i=false,initialTableCollapsed:l=false})=>{let d=useRef(0),s=useMemo(()=>new Set(e.map(O=>O.id)),[e]),c=useMemo(()=>new Map(e.map(O=>[O.id,O])),[e]),[g,f]=useState(()=>Ct(t?.rows,s)),[p,h]=useState(()=>Ct(t?.columns,s)),[k,u]=useState(()=>Ct(t?.filters,s)),[C,m]=useState(()=>{let O=t?.values??[],ce=new Set,Y=[];return O.forEach(le=>{!s.has(le.fieldId)||ce.has(le.fieldId)||(ce.add(le.fieldId),d.current+=1,Y.push({tokenId:`v${d.current}`,fieldId:le.fieldId,aggregation:Ut(le.aggregation,c.get(le.fieldId))}));}),Y}),[y,x]=useState(o),[S,F]=useState(a),[D,I]=useState(r),[A,P]=useState(()=>am(Ct(t?.rows,s),Ct(t?.columns,s),n?.dimensionFieldId)),[v,M]=useState(()=>{let O=(()=>{let ce=t?.values??[],Y=new Set,le=[];return ce.forEach(Ee=>{!s.has(Ee.fieldId)||Y.has(Ee.fieldId)||(Y.add(Ee.fieldId),le.push({tokenId:Ee.fieldId,fieldId:Ee.fieldId,aggregation:Ut(Ee.aggregation,c.get(Ee.fieldId))}));}),le})();return Lc(O,n?.primaryValueFieldId)}),[w,R]=useState(()=>{let O=(()=>{let Y=t?.values??[],le=new Set,Ee=[];return Y.forEach(xe=>{!s.has(xe.fieldId)||le.has(xe.fieldId)||(le.add(xe.fieldId),Ee.push({tokenId:xe.fieldId,fieldId:xe.fieldId,aggregation:Ut(xe.aggregation,c.get(xe.fieldId))}));}),Ee})(),ce=Lc(O,n?.primaryValueFieldId);return rm(O,ce,n?.secondaryValueFieldId)}),[T,W]=useState(n?.chartType??"bar-vertical"),[N,X]=useState(i),[se,ee]=useState(l);useEffect(()=>{f(O=>{let ce=O.filter(Y=>s.has(Y));return ga(O,ce)?O:ce}),h(O=>{let ce=O.filter(Y=>s.has(Y));return ga(O,ce)?O:ce}),u(O=>{let ce=O.filter(Y=>s.has(Y));return ga(O,ce)?O:ce}),m(O=>{let ce=O.filter(Y=>s.has(Y.fieldId)).map(Y=>({...Y,aggregation:Ut(Y.aggregation,c.get(Y.fieldId))}));return Is(O,ce)?O:ce});},[c,s]),useEffect(()=>{P(O=>am(g,p,O));},[p,g]),useEffect(()=>{M(O=>Lc(C,O));},[C]),useEffect(()=>{R(O=>rm(C,v,O));},[v,C]);let te=useCallback(O=>{f(Ct(O,s));},[s]),Z=useCallback(O=>{h(Ct(O,s));},[s]),Oe=useCallback(O=>{u(Ct(O,s));},[s]),tt=useCallback(O=>{m(ce=>{let Y=O??[],le=new Set,Ee=[];return Y.forEach(xe=>{if(!s.has(xe.fieldId)||le.has(xe.fieldId))return;le.add(xe.fieldId);let St=ce.find(_t=>_t.fieldId===xe.fieldId);if(St){Ee.push({...St,aggregation:Ut(xe.aggregation??St.aggregation,c.get(xe.fieldId))});return}d.current+=1,Ee.push({tokenId:`v${d.current}`,fieldId:xe.fieldId,aggregation:Ut(xe.aggregation,c.get(xe.fieldId))});}),Ee});},[c,s]),qe=useCallback(O=>{te(O.rows??[]),Z(O.columns??[]),Oe(O.filters??[]),tt(O.values??[]);},[Z,Oe,te,tt]),oe=useCallback(O=>{if(O==="rows")return f([]);if(O==="columns")return h([]);if(O==="filters")return u([]);m([]);},[]),Ie=useCallback((O,ce)=>{if(O==="rows")return f(Y=>Y.filter(le=>le!==ce));if(O==="columns")return h(Y=>Y.filter(le=>le!==ce));if(O==="filters")return u(Y=>Y.filter(le=>le!==ce));m(Y=>Y.filter(le=>le.tokenId!==ce));},[]),ve=useCallback((O,ce)=>{m(Y=>Y.map(le=>le.tokenId===O?{...le,aggregation:Ut(ce,c.get(le.fieldId))}:le));},[c]),Je=useCallback((O,ce)=>{x(Y=>({...Y,[O]:ce}));},[]),nt=useCallback(()=>{x({});},[]),We=useCallback(()=>{F(O=>!O);},[]),et=useCallback(()=>{I(O=>!O);},[]),G=useCallback(O=>{P(O);},[]),pe=useCallback(O=>{M(O);},[]),ue=useCallback(O=>{R(O);},[]),be=useCallback(()=>{X(O=>!O);},[]),Ce=useCallback(()=>{ee(O=>!O);},[]);return {model:useMemo(()=>({rowFields:g,setRowFields:f,columnFields:p,setColumnFields:h,filterFields:k,setFilterFields:u,valueFields:C,setValueFields:m,filterSelections:y,setFilterSelections:x,showGrandTotal:S,setShowGrandTotal:F,isConfiguratorCollapsed:D,setIsConfiguratorCollapsed:I,chartDimensionFieldId:A,setChartDimensionFieldId:P,chartPrimaryValueFieldId:v,setChartPrimaryValueFieldId:M,chartSecondaryValueFieldId:w,setChartSecondaryValueFieldId:R,chartType:T,setChartType:W,isChartCollapsed:N,setIsChartCollapsed:X,isTableCollapsed:se,setIsTableCollapsed:ee}),[A,v,w,T,p,k,y,N,D,se,g,S,C]),actions:{setRows:te,setColumns:Z,setFilters:Oe,setValues:tt,setLayout:qe,clearZone:oe,removeFieldFromZone:Ie,setAggregationForValue:ve,setFilterSelection:Je,resetFilterSelections:nt,toggleGrandTotal:We,toggleConfigurator:et,setChartDimension:G,setChartPrimaryValue:pe,setChartSecondaryValue:ue,setChartType:W,toggleChart:be,toggleTable:Ce}}};var dF=({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,d]=useState(t??i==="landscape");useEffect(()=>{d(t??i==="landscape");},[t,i]);let s=g=>{d(g),o?.(g);};return {resolvedOrientation:i,isPortraitViewport:r,isCompactViewport:n,navigationOpen:l,setNavigationOpen:s,toggleNavigationOpen:()=>s(!l)}};var eC=e=>{let t=Number(e||0);return Number.isFinite(t)?t:0},mF=({rows:e,rowKey:t="id",numericField:o,defaultSelectedId:a})=>{let n=e[0]?.[t],[i,l]=useState(a??n),d=useMemo(()=>e.find(p=>p[t]===i)||e[0],[t,e,i]),[s,c]=useState(()=>{let p=d?.[o];return p==null?"0":String(p)});return {selectedId:i,selectedRecord:d,editorValue:s,setEditorValue:c,selectRecord:p=>{let h=p[t];l(h);let k=p[o];c(k==null?"0":String(k));},applyEditorValue:p=>{if(i===void 0)return;let h=eC(s),k=e.map(u=>u[t]===i?{...u,[o]:h}:u);p(k);}}};var pC=["code_128","ean_13","ean_8","qr_code","upc_a","upc_e"],dm=(e,t,o,a)=>{t?.(e),a&&o?.();},xF=({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=pC,facingMode:n="environment",manualEntry:i=true,autoCloseOnDetect:l=true,scanIntervalMs:d=600,confirmLabel:s="Use code",cancelLabel:c="Close",manualPlaceholder:g="Enter barcode manually",onDetected:f,onError:p,sx:h})=>{let k=gt__default.useRef(null),u=gt__default.useRef(null),C=gt__default.useRef(null),m=gt__default.useRef(null),[y,x]=gt__default.useState("idle"),[S,F]=gt__default.useState(""),[D,I]=gt__default.useState(null),[A,P]=gt__default.useState(null),v=gt__default.useCallback(()=>{C.current!==null&&(window.clearInterval(C.current),C.current=null),u.current&&(u.current.getTracks().forEach(R=>R.stop()),u.current=null),k.current&&(k.current.srcObject=null);},[]),M=gt__default.useCallback(R=>{P(R),x("error"),p?.(R);},[p]);gt__default.useEffect(()=>{if(!e){v(),x("idle"),P(null),F("");return}let R=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 W=await navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:{ideal:n}}});if(R){W.getTracks().forEach(N=>N.stop());return}if(u.current=W,k.current&&(k.current.srcObject=W,await k.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(!(!k.current||!m.current)&&!(k.current.readyState<HTMLMediaElement.HAVE_CURRENT_DATA))try{let X=(await m.current.detect(k.current)).find(ee=>ee.rawValue);if(!X?.rawValue)return;let se={rawValue:X.rawValue,format:X.format};I(se),v(),dm(se,f,t,l);}catch(N){M(N instanceof Error?N.message:"Failed to detect barcode.");}},d);}catch(W){M(W instanceof Error?W.message:"Unable to start camera.");}}})(),()=>{R=true,v();}},[l,n,r,t,f,e,M,d,v]);let w=()=>{let R=S.trim();if(!R)return;let T={rawValue:R,format:"manual"};I(T),dm(T,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:R=>({position:"relative",overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:"divider",minHeight:280,background:R.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:k,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(cC,{}),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"}),D?jsx(Chip,{icon:jsx(dC,{}),label:`${D.format||"barcode"}: ${D.rawValue}`,size:"small",color:"success",variant:"filled"}):null]})]}),A?jsx(Alert,{severity:y==="unsupported"?"info":"warning",children:A}):null,i?jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1.25,children:[jsx(TextField,{fullWidth:true,label:"Barcode",placeholder:g,value:S,onChange:R=>F(R.target.value)}),jsx(Button,{variant:"contained",onClick:w,sx:{minHeight:56,px:2.5},children:s})]}):null]})}),jsx(DialogActions,{sx:{px:3,pb:2},children:jsx(Button,{onClick:t,children:c})})]})};var fC={default:"#475569",primary:"#1d4ed8",success:"#047857",warning:"#b45309",error:"#b91c1c",info:"#0369a1"},TF=({title:e,description:t,kicker:o,icon:a,badges:r=[],metrics:n=[],footer:i,children:l,selected:d=false,draggable:s=false,isDragging:c=false,swipeThreshold:g=88,startAction:f,endAction:p,dragHandleProps:h,onClick:k,onSwipe:u,sx:C})=>{let[m,y]=useState(0),[x,S]=useState(false),F=useRef(null),D=useRef(0),I=useRef(0),A=!!(f||p),P=132,v=()=>{y(0),S(false),F.current=null,D.current=0,I.current=0;},M=N=>{(N==="start"?f:p)?.onTrigger?.(),u?.(N),v();},w=N=>{!A||N.target.closest('button, a, input, textarea, [data-no-swipe="true"]')||(F.current=N.pointerId,D.current=N.clientX,I.current=N.clientX,S(true),N.currentTarget.setPointerCapture(N.pointerId));},R=N=>{if(!x||F.current!==N.pointerId)return;I.current=N.clientX;let X=I.current-D.current,se=Math.max(-P,Math.min(P,X));y(se);},T=N=>{if(!x||F.current!==N.pointerId)return;let X=I.current-D.current;if(X>=g&&f){M("start");return}if(X<=-g&&p){M("end");return}Math.abs(X)<12&&k?.(),v();},W=(N,X)=>{if(!N)return null;let se=N.backgroundColor||fC[N.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, ${se}, rgba(15,23,42,0.92))`},children:jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[N.icon,jsx(Typography,{sx:{fontWeight:700,fontSize:"0.95rem"},children:N.label})]})})};return jsxs(Box,{sx:{position:"relative",overflow:"hidden",borderRadius:4,...C},children:[W(f,"left"),W(p,"right"),jsx(Paper,{elevation:0,onPointerDown:w,onPointerMove:R,onPointerUp:T,onPointerCancel:v,sx:N=>({position:"relative",zIndex:1,p:2,borderRadius:4,border:"1px solid",borderColor:d?"primary.main":"divider",background:N.palette.mode==="dark"?"linear-gradient(180deg, rgba(30,41,59,0.96), rgba(15,23,42,0.92))":"linear-gradient(180deg, #ffffff, #f8fafc)",color:"text.primary",boxShadow:d?"0 18px 42px rgba(37, 99, 235, 0.18)":"0 12px 28px rgba(15, 23, 42, 0.08)",transform:`translate3d(${m}px, 0, 0) scale(${c?.985:1})`,transition:x?"none":"transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease",touchAction:"pan-y",cursor:k?"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(gC,{})})}):null]}),r.length>0?jsx(Stack,{direction:"row",spacing:1,useFlexGap:true,flexWrap:"wrap",children:r.map((N,X)=>jsx(Chip,{label:N,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(N=>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:N.label}),jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800,lineHeight:1.2},children:N.value})]},N.id))}):null,l,i]})})]})};var pi=({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}),EF=({value:e,defaultValue:t="",title:o,subtitle:a,placeholder:r="0",allowDecimal:n=false,allowNegative:i=false,maxLength:l,confirmLabel:d,clearLabel:s,backspaceLabel:c,onChange:g,onSubmit:f,onClose:p,sx:h})=>{let{t:k}=j(),[u,C]=useState(t),m=e??u,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);},F=()=>{!n||m.includes(".")||y(m?`${m}.`:"0.");},D=()=>{if(i){if(m.startsWith("-")){y(m.slice(1));return}y(m?`-${m}`:"-");}},I=()=>{y(m.slice(0,-1));},A=()=>{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]}),p?jsx(IconButton,{onClick:p,size:"small",children:jsx(xC,{})}):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(pi,{label:v,onPress:()=>S(v)},v)),jsx(pi,{label:i?"+/-":"00",onPress:i?D:()=>S("00")}),jsx(pi,{label:"0",onPress:()=>S("0")}),jsx(pi,{label:n?".":c?String(c):"DEL",onPress:n?F:I})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[jsx(Box,{component:"button",type:"button",onClick:I,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(bC,{}),jsx(Typography,{sx:{fontWeight:700},children:c||"DEL"})]})}),jsx(pi,{label:String(s||"CLR"),onPress:A,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(vC,{}),jsx(Typography,{sx:{fontWeight:800},children:d||k("common.ok")})]})})]})]})})};var fm=({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(la,{...o})})};var PC=(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);}},bm=({items:e,selectedId:t,orientation:o="auto",onItemSelect:a,sx:r})=>{let n=useTheme$1(),[i,l]=useState(false);useEffect(()=>{l(true);},[]);let d=useMediaQuery("(orientation: portrait)",{noSsr:true}),s=useMediaQuery(n.breakpoints.down("md"),{noSsr:true}),c=o==="auto"?d||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 p=f.id===t,h=f.color||(p?n.palette.primary.main:n.palette.divider);return jsx(Paper,{elevation:0,sx:{overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:p?"primary.main":"divider",boxShadow:p?"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:()=>PC(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:p?"#fff":"text.primary",background:p?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:p?"primary.main":"action.hover",color:p?"#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 km=(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?km(a.children,t):[];return (r||n.length>0)&&o.push({...a,children:n.length>0?n:a.children}),o},[]):e,WC=e=>{let t=new Set,o=a=>{a.forEach(r=>{r.children?.length&&(t.add(r.id),o(r.children));});};return o(e),t},Sm=({collapsed:e=false,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light",orientation:i="auto",headerSlot:l,footerSlot:d,activeHref:s,onItemSelect:c})=>{let{t:g}=j(),f=useTheme$1(),p=useMediaQuery("(orientation: portrait)"),h=useMediaQuery(f.breakpoints.down("md")),k=i==="auto"?p||h?"portrait":"landscape":i,u=n==="dark",C=useRouter(),m=usePathname(),[y,x]=useState(""),[S,F]=useState(new Set),D=useMemo(()=>km(r,y),[r,y]),I=useMemo(()=>y.trim()?WC(D):S,[S,D,y]);useEffect(()=>{e&&F(new Set);},[e]);let A=R=>R.appurl||R.href||"",P=R=>{c?.(R);let T=A(R);if(T){if(T.startsWith("http://")||T.startsWith("https://")){window.open(T,"_blank");return}C.push(T);}},v=R=>{let T=!!R.children?.length;if(e&&T){t?.();return}if(T){F(W=>{let N=new Set(W);return N.has(R.id)?N.delete(R.id):N.add(R.id),N});return}P(R);},M=R=>{let T=s||m,W=A(R);return !!(W&&T===W)},w=(R,T=0)=>{let W=!!R.children?.length,N=I.has(R.id),X=M(R);return jsx(Box,{sx:{pl:T===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(R),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:R.icon||(R.title||R.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:R.title||R.label}),R.description?jsx(Typography,{sx:{mt:.4,fontSize:"0.78rem",color:"text.secondary",lineHeight:1.35},children:R.description}):null]}),W?jsx(VC,{sx:{transform:N?"rotate(180deg)":"rotate(0deg)",transition:"transform 180ms ease"}}):jsx(OC,{color:"action"})]}),W?jsx(Collapse,{in:N,children:jsx(Box,{sx:{px:1.25,pb:1.25},children:R.children?.map(se=>w(se,T+1))})}):null]})},R.id)};return e?jsx(Paper,{elevation:0,className:o,sx:{width:k==="portrait"?"100%":88,p:1,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:u?"#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(NC,{})}),r.map(R=>jsx(IconButton,{onClick:()=>v(R),sx:{width:56,height:56,alignSelf:"center",borderRadius:3,bgcolor:M(R)?"primary.main":"action.hover",color:M(R)?"#fff":"text.primary"},children:R.icon||(R.title||R.label||"?").slice(0,1).toUpperCase()},R.id))]})}):jsx(Paper,{elevation:0,className:o,sx:{width:k==="portrait"?"100%":320,p:1.25,borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:u?"#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:R=>x(R.target.value),placeholder:g("navigation.searchPlaceholder"),size:"small",fullWidth:true,InputProps:{startAdornment:jsx(LC,{fontSize:"small",color:"action"})}}),k==="landscape"&&!e?jsx(IconButton,{onClick:t,sx:{bgcolor:"action.hover"},children:jsx(zC,{})}):null]}),l,jsx(Box,{sx:{flex:1,minHeight:0,overflowY:"auto",pr:.25},children:D.length>0?D.map(R=>w(R)):jsx(Typography,{sx:{p:2,fontSize:"0.88rem",color:"text.secondary",textAlign:"center"},children:g("navigation.noMatch")})}),d]})})};var Am=(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)},qC=e=>gt__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}),_C=(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)},jC=({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}`))})]})})},ZC=e=>{let{t}=j(),o=useTheme$1(),{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:l,actions:d,extraTools:s,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:p=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:k,filterConfig:u,rowKey:C,tableKey:m="default",graphReport:y,quickCreate:x,quickEdit:S,quickDelete:F,serviceUrl:D,orientation:I="auto",cardTitleField:A,cardSubtitleFields:P,toolbarSlot:v,emptyState:M,rowHeight:w="comfortable",cardActionSlot:R,renderCardFooter:T,onRowClick:W}=e,N=a||t("table.title.default"),X=useMediaQuery("(orientation: portrait)"),se=useMediaQuery(o.breakpoints.down("md")),ee=I==="auto"?X||se?"portrait":"landscape":I,{columns:te,filterText:Z,setFilterText:Oe,visibleColumns:tt,showSummary:qe,setShowSummary:oe,summaryColumns:Ie,grouping:ve,setGrouping:Je,expandedGroups:nt,groupAnchorEl:We,setGroupAnchorEl:et,summaryAnchorEl:G,setSummaryAnchorEl:pe,anchorEl:ue,setAnchorEl:be,contextMenu:Ce,sortedAndFilteredRows:$e,summaryRow:O,visibleRows:ce,page:Y,setPage:le,rowsPerPage:Ee,setRowsPerPage:xe,totalDisplayCount:St,setSelected:_t,handleClick:jt,toggleSummaryColumn:ko,handleExport:So,handleCloseContextMenu:Be,toggleColumnVisibility:ye,toggleGroupExpand:wt,toggleGroupField:ze,handleExpandGroupRecursively:Ot,handleCollapseGroupRecursively:wo,handleLayoutLoad:_a,handleVariantLoad:V,handleLayoutSave:$,effectiveAppId:K,currentLayoutData:ke,currentLayoutId:we,layoutIdToLoad:Le,graphReportOpen:he,handleOpenGraphReport:Ne,handleCloseGraphReport:Pe}=Qr(e),Ve=y?.enabled??false,Fe=Ve&&(y?.interaction?.enabled??true),Te=qi(),Ae=C||"id",Wt=gt__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]),To=gt__default.useMemo(()=>({...Wt,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)}),[Wt,o]),xt=gt__default.useMemo(()=>{let z=new Set(i);return $e.filter(Q=>z.has(Q?.[Ae]))},[Ae,i,$e]),Tt=xt.length===1?xt[0]:null,go=!!x?.enabled,Ca=!!S?.enabled,Pr=!!F?.enabled,Io=x?.fields,eo=x?.excludeFields||[],ja=x?.initialValues||{},Qo=S?.fields,$t=S?.excludeFields||[],to=S?.editableFields||[],Lt=S?.nonEditableFields||[],He=S?.primaryKeys?.length?S.primaryKeys:[Ae],[Yo,Wo]=gt__default.useState(false),[Jo,Za]=gt__default.useState(false),[$o,Xa]=gt__default.useState({}),[Qa,Ho]=gt__default.useState(false),[ea,ka]=gt__default.useState(false),[Ht,Po]=gt__default.useState({}),[ta,fo]=gt__default.useState(false),[Go,Ya]=gt__default.useState(false),Rr=p||Jo||ea||Go,Sa=gt__default.useMemo(()=>{let z=[...te];if(Array.isArray(Io)&&Io.length>0){let Q=new Set(Io);z=z.filter(U=>Q.has(U.id));}if(eo.length>0){let Q=new Set(eo);z=z.filter(U=>!Q.has(U.id));}return z.filter(Q=>!!Q?.id)},[te,eo,Io]),Ja=gt__default.useMemo(()=>{let z=[...te];if(Array.isArray(Qo)&&Qo.length>0){let Q=new Set(Qo);z=z.filter(U=>Q.has(U.id));}if($t.length>0){let Q=new Set($t);z=z.filter(U=>!Q.has(U.id));}return z.filter(Q=>!!Q?.id)},[te,$t,Qo]),oa=gt__default.useMemo(()=>new Set(He),[He]),Zt=gt__default.useMemo(()=>new Set(to),[to]),Ro=gt__default.useMemo(()=>new Set(Lt),[Lt]),Dr=gt__default.useCallback(z=>Zt.size>0?Zt.has(z):!(Ro.has(z)||oa.has(z)),[Zt,Ro,oa]);gt__default.useEffect(()=>{!he&&Te.hasActiveFilters&&Te.clearAll();},[Te,he]);let er=()=>{let z={};Sa.forEach(Q=>{z[Q.id]=ja[Q.id]??"";}),Xa(z),Wo(true);},Mr=(z,Q)=>{Xa(U=>({...U,[z]:Q}));},Ar=async()=>{if(!x?.onSubmit){Wo(false);return}try{Za(!0),await x.onSubmit($o),Wo(!1);}finally{Za(false);}},Br=()=>{if(!Tt)return;let z={};Ja.forEach(U=>{z[U.id]=Tt[U.id]??"";});let Q=S?.getInitialValues?{...z,...S.getInitialValues(Tt)}:z;Po(Q),Ho(true);},oo=(z,Q)=>{Po(U=>({...U,[z]:Q}));},Fr=async()=>{if(Tt){if(!S?.onSubmit){Ho(false);return}try{ka(!0),await S.onSubmit(Ht,Tt),Ho(!1);}finally{ka(false);}}},Er=()=>{xt.length!==0&&fo(true);},tr=async()=>{if(xt.length===0){fo(false);return}if(!F?.onConfirm){fo(false),_t([]),l?.([]);return}try{Ya(!0),await F.onConfirm(xt),fo(!1),_t([]),l?.([]);}finally{Ya(false);}},aa=$e,{fieldMapping:wa}=_r({rows:aa,config:{...y,title:y?.title||`${N} ${t("graph.reportTitle")}`}}),Ta=gt__default.useMemo(()=>Fe?Te.applyRows(aa,wa):aa,[wa,Te,Fe,aa]),{model:b}=_r({rows:Ta,config:{...y,title:y?.title||`${N} ${t("graph.reportTitle")}`,fieldMapping:wa}}),B=b.table.columns.map(z=>({id:z.id,label:z.label,align:z.align||"left",minWidth:120,numeric:z.align==="right"})),E=K?jsx(os,{appId:K,tableKey:m,currentLayoutData:ke,onLayoutLoad:_a,targetLayoutId:Le,activeLayoutId:we,serviceUrl:D??u?.serviceUrl}):null,H=te.filter(z=>tt.includes(z.id)),J=H.find(z=>z.id===A)||H[0],fe=P?.map(z=>H.find(Q=>Q.id===z)).filter(Boolean)||H.filter(z=>z.id!==J?.id).slice(0,ee==="portrait"?2:3),L=H.filter(z=>z.id!==J?.id&&!fe.some(Q=>Q.id===z.id)),_=[v,s].filter(Boolean),q=jsxs(Fragment,{children:[jsx(zr,{groupAnchorEl:We,setGroupAnchorEl:et,grouping:ve,setGrouping:Je,columns:te,toggleGroupField:ze}),jsx(Nr,{anchorEl:ue,setAnchorEl:be,columns:te,visibleColumns:tt,toggleColumnVisibility:ye}),jsx(Pi,{anchorEl:G,setAnchorEl:pe,showSummary:qe,setShowSummary:oe,columns:te,summaryColumns:Ie,toggleSummaryColumn:ko}),jsx(Ri,{contextMenu:Ce,handleCloseContextMenu:Be,columns:te,visibleColumns:tt,toggleColumnVisibility:ye})]}),Xe=(z,Q,U)=>{let ne=i.includes(Q),Ge=ee==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(140px, 1fr))",Uo=U%2===0?alpha(o.palette.primary.main,o.palette.mode==="dark"?.09:.04):alpha(o.palette.primary.main,o.palette.mode==="dark"?.05:.022),Ag=alpha(o.palette.divider,.22);return jsx(Paper,{elevation:0,onClick:()=>{jt({},z),W?.(z);},sx:{p:w==="compact"?1.25:1.5,borderRadius:4,border:"0.5px solid",borderColor:ne?alpha(o.palette.primary.main,.38):Ag,background:ne?`linear-gradient(135deg, ${alpha(o.palette.primary.main,.13)}, ${alpha(o.palette.primary.main,.06)})`:`linear-gradient(135deg, ${Uo}, ${alpha(o.palette.primary.main,.015)})`,boxShadow:ne?`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:ne?o.palette.primary.main:U%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:ne,onClick:ao=>ao.stopPropagation(),onChange:()=>jt({},z),sx:{mt:-0.6,ml:-0.6}}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[J?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:900,lineHeight:1.25},children:Am(J,z)}):null,fe.length>0?jsx(Stack,{direction:"row",spacing:.75,useFlexGap:true,flexWrap:"wrap",sx:{mt:.75},children:fe.map(ao=>jsx(Chip,{label:`${ao.label}: ${_C(ao,z)}`,size:"small",variant:"outlined",sx:Wt},`${Q}-${ao.id}`))}):null]}),R?jsx(Box,{onClick:ao=>ao.stopPropagation(),children:R(z)}):null]}),L.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:Ge,gap:1},children:L.map(ao=>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:ao.label}),qC(Am(ao,z))]},`${Q}-${ao.id}-detail`))}):null,T?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{onClick:ao=>ao.stopPropagation(),children:T(z)})]}):null]})},Q)};return jsxs(Box,{sx:{width:g?"100%":"auto",mb:c?0:2,...c?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[u?jsx(Box,{sx:{mb:2},children:jsx(fm,{...u,onVariantLoad:z=>{V(z),u.onVariantLoad?.(z);},appId:u.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:ke}],currentLayoutId:we,layoutRefs:[{tableKey:m,layoutId:we}],variantService:u.variantService,serviceUrl:D??u.serviceUrl,touchMode:ee==="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":Rr?{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(ki,{filterText:Z,setFilterText:Oe,onRowsPerPageChange:xe,rowsPerPage:Ee,rowsPerPageOptions:h,page:Y,count:St,onPageChange:le,actions:d,extraTools:_,grouping:ve,setGroupAnchorEl:et,showSummary:qe,setShowSummary:oe,setAnchorEl:be,setSummaryAnchorEl:pe,handleExport:So,showCreateButton:go,onOpenCreateDialog:er,showEditButton:Ca,onOpenEditDialog:Br,editDisabled:xt.length!==1,showDeleteButton:Pr,onOpenDeleteConfirm:Er,deleteDisabled:xt.length===0,onLayoutSave:k||u?.variantService&&u?.appId?$:void 0,loading:p,layoutManager:E,onOpenGraphReport:Ve?Ne:void 0})}):null,jsx(Box,{sx:{flex:1,minHeight:0,overflow:"auto",p:1.5},children:jsxs(Stack,{spacing:1.25,children:[ce.length===0&&!p?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,ce.map((z,Q)=>{if(z.type==="group"){let Ge=nt.has(z.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:()=>wt(z.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:[Ge?jsx(VC,{}):jsx(OC,{}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsxs(Typography,{sx:{fontSize:"0.94rem",fontWeight:800},children:[z.field,": ",z.value]}),jsxs(Typography,{sx:{mt:.2,fontSize:"0.76rem",color:"text.secondary"},children:[z.count," records"]})]}),ve.length>1&&z.level<ve.length-1?jsxs(Stack,{direction:"row",spacing:.5,children:[jsx(Chip,{size:"small",label:t("table.group.expandAll"),onClick:Uo=>{Uo.stopPropagation(),Ot(z.id);},sx:To}),jsx(Chip,{size:"small",label:t("table.group.collapseAll"),onClick:Uo=>{Uo.stopPropagation(),wo(z.id);},sx:To})]}):null]})},z.id)}let U=z.data||z,ne=z.id||U[Ae]||Q;return Xe(U,ne,Q)}),qe?jsx(jC,{summaryRow:O,visibleColumns:tt,columns:te}):null,p?jsx(Typography,{sx:{py:1,fontSize:"0.84rem",color:"text.secondary",textAlign:"center"},children:t("common.loading")}):null]})})]}),go?jsxs(Dialog,{open:Yo,onClose:()=>!Jo&&Wo(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:x?.title||t("quickCreate.createWithTitle",{title:N})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Sa.map(z=>{let Q=z.type==="number"||z.numeric?"number":z.type==="date"?"date":"text";return jsx(TextField,{label:z.label||z.id,value:$o[z.id]??"",onChange:U=>Mr(z.id,U.target.value),type:Q,fullWidth:true,InputLabelProps:{shrink:Q==="date"?true:void 0}},`quick-create-${z.id}`)}),x?.description?jsx(Alert,{severity:"info",children:x.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Wo(false),disabled:Jo,children:x?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Ar,variant:"contained",disabled:Jo,children:x?.submitLabel||t("common.save")})]})]}):null,Ca?jsxs(Dialog,{open:Qa,onClose:()=>!ea&&Ho(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:S?.title||t("quickEdit.editWithTitle",{title:N})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Ja.map(z=>{let Q=z.type==="number"||z.numeric?"number":z.type==="date"?"date":"text";return jsx(TextField,{label:z.label||z.id,value:Ht[z.id]??"",onChange:U=>oo(z.id,U.target.value),type:Q,disabled:!Dr(z.id),fullWidth:true,InputLabelProps:{shrink:Q==="date"?true:void 0}},`quick-edit-${z.id}`)}),S?.description?jsx(Alert,{severity:"info",children:S.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Ho(false),disabled:ea,children:S?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Fr,variant:"contained",disabled:ea||!Tt,children:S?.submitLabel||t("common.save")})]})]}):null,Pr?jsx(In,{open:ta,type:"warning",title:F?.title||t("quickDelete.confirmTitle"),message:F?.message||(xt.length>1?t("quickDelete.confirmMessageMultiple",{count:xt.length}):t("quickDelete.confirmMessageSingle")),confirmText:F?.confirmText||t("common.delete"),cancelText:F?.cancelText||t("common.cancel"),onClose:()=>!Go&&fo(false),onConfirm:tr}):null,q,Ve?jsx(Ui,{open:he,onClose:Pe,model:b,aiAssistant:y?.aiAssistant,interaction:Fe?{enabled:true,filters:Te.filters,fieldMapping:wa,onPrimaryDimensionClick:z=>Te.setFilter("primaryDimension",z),onSecondaryDimensionClick:z=>Te.setFilter("secondaryDimension",z),onStatusClick:z=>Te.setFilter("status",z),onClearFilter:Te.clearFilter,onClearAll:Te.clearAll}:void 0,tableContent:jsx(ZC,{appId:K||"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 M5=({appTitle:e,children:t,menuData:o=[],workloadItems:a=[],workloadSelectedId:r,showNavigation:n=true,showWorkloadNav:i=true,orientation:l="auto",logo:d,headerSlot:s,actionSlot:c,portraitBottomSlot:g,contentSx:f,containerSx:p,user:h,onSearch:k,defaultNavigationOpen:u,navOpen:C,onNavOpenChange:m,onWorkloadSelect:y,locale:x="en",localeLabel:S,localeOptions:F,onLocaleChange:D,onUserSetting:I,onUserLogout:A,userMenuItems:P,leftHeaderSlot:v,rightHeaderSlot:M})=>{let w="orbcafe:page-layout-mode",[R,T]=useState("system"),[W,N]=useState("light"),[X,se]=useState(false),[ee,te]=useState(false),Z=R==="system"?ee?W:"light":R;useEffect(()=>{se(true);},[]),useEffect(()=>{try{let Ce=window.localStorage.getItem(w);(Ce==="light"||Ce==="dark"||Ce==="system")&&T(Ce);}catch{}te(true);let ue=window.matchMedia("(prefers-color-scheme: dark)"),be=()=>{N(ue.matches?"dark":"light");};return be(),ue.addEventListener("change",be),()=>ue.removeEventListener("change",be)},[]),useEffect(()=>{if(ee)try{window.localStorage.setItem(w,R);}catch{}},[ee,R]),useEffect(()=>{Z==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[Z]);let Oe=useMemo(()=>createTheme$1({palette:Z==="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:Z==="dark"?"#060913":"#eef3f8"}}},MuiPaper:{styleOverrides:{root:{backgroundImage:"none"}}}}}),[Z]),tt=useMediaQuery("(orientation: portrait)"),qe=useMediaQuery(Oe.breakpoints.down("md")),oe=l==="auto"?!X||tt||qe?"portrait":"landscape":l,[Ie,ve]=useState({landscape:u??true,portrait:false}),Je=Ie[oe],nt=C??Je,We=ue=>{C===void 0&&ve(be=>({...be,[oe]:ue})),m?.(ue);},et=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[!X||n&&oe==="portrait"?jsx(IconButton,{onClick:()=>We(!nt),sx:{bgcolor:"action.hover"},children:jsx(NC,{})}):null,v]}),G=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[c,M]}),pe=jsx(Sm,{collapsed:oe==="landscape"?!nt:false,onToggle:()=>We(!nt),menuData:o,orientation:oe,colorMode:Z,maxHeight:oe==="landscape"?900:void 0});return jsx(ThemeProvider$1,{theme:Oe,children:jsx(Ci,{locale:x,children:jsxs(Box,{sx:[ue=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:ue.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":ue.palette.background.default}),...Array.isArray(p)?p:[p]],children:[jsx(ks,{appTitle:e,logo:d===void 0?null:d,mode:R,onToggleMode:()=>T(ue=>ue==="system"?"dark":ue==="dark"?"light":"system"),locale:x,localeLabel:S,localeOptions:F,onLocaleChange:D,user:h,onUserSetting:I,onUserLogout:A,userMenuItems:P,onSearch:k,leftSlot:et,rightSlot:G}),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:[X&&n&&oe==="landscape"?jsx(Box,{sx:{p:1.5,pr:0,flexShrink:0},children:pe}):null,!X||n&&oe==="portrait"?jsx(Drawer,{open:nt,onClose:()=>We(false),PaperProps:{sx:{width:"min(88vw, 360px)",p:1.25,bgcolor:"transparent",boxShadow:"none"}},children:pe}):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(bm,{items:a,selectedId:r,orientation:oe,onItemSelect:y}):null,jsx(Paper,{elevation:0,sx:{flex:1,minHeight:oe==="portrait"?420:560,p:{xs:1.25,md:1.5},borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:Oe.palette.mode==="dark"?"rgba(15,23,42,0.72)":"rgba(255,255,255,0.72)",backdropFilter:"blur(12px)",color:"text.primary"},children:t})]})})]}),oe==="portrait"&&g?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{sx:{p:1.5},children:g})]}):null]})})})};var Em=nk(()=>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(Em,{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(Em,{hue:10,hoverIntensity:.8,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})})]})})})}var L5=Uc;function js({onTextUpdate:e,onComplete:t,onError:o,wsUrl:a="ws://localhost:8765",silenceThresholdMs:r=2e3,minVolumeRms:n=.015}){let[i,l]=useState(false),d=useRef(null),s=useRef(null),c=useRef(null),g=useRef(null),f=useRef(null),p=useRef(0),h=useRef(false),k=useRef(false),u=useCallback(()=>{d.current&&(d.current.close(),d.current=null),g.current&&(g.current.disconnect(),g.current=null),f.current&&(f.current.disconnect(),f.current=null),s.current&&(s.current.getTracks().forEach(y=>y.stop()),s.current=null),c.current&&(c.current.close(),c.current=null),k.current=false,l(false);},[]),C=useCallback(()=>{h.current||(h.current=true,d.current?.readyState===WebSocket.OPEN&&d.current.send(JSON.stringify({type:"stop"})),setTimeout(u,500));},[u]),m=useCallback(async()=>{if(!(i||k.current)){k.current=true,h.current=false,p.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);d.current=x,x.onopen=()=>{l(!0),k.current=!1;},x.onmessage=A=>{try{let P=JSON.parse(A.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"),u();},x.onclose=()=>{u();};let S=window.AudioContext||window.webkitAudioContext;if(!S)throw new Error("AudioContext is not supported in this browser");let F=new S({sampleRate:16e3});c.current=F;let D=F.createMediaStreamSource(y);f.current=D;let I=F.createScriptProcessor(4096,1,1);g.current=I,I.onaudioprocess=A=>{if(d.current?.readyState!==WebSocket.OPEN)return;let P=A.inputBuffer.getChannelData(0),v=0;for(let R=0;R<P.length;R+=1)v+=P[R]*P[R];if(Math.sqrt(v/P.length)>n)p.current=Date.now();else if(Date.now()-p.current>r&&!h.current){C();return}let w=new Int16Array(P.length);for(let R=0;R<P.length;R+=1){let T=Math.max(-1,Math.min(1,P[R]));w[R]=T<0?T*32768:T*32767;}d.current.send(w.buffer);},D.connect(I),I.connect(F.destination);}catch{o?.("Cannot access microphone"),u();}}},[u,i,n,t,o,e,r,C,a]);return useEffect(()=>u,[u]),{isRecording:i,startRecording:m,stopRecording:C}}var zm=createContext(null);function fk(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 hk({children:e,onVoiceSubmit:t,onVoicePartial:o,onVoiceError:a,longPressMs:r=200,disableSpaceTrigger:n=false,ignoreWhenFocusedInput:i=true,renderOverlay:l=true,wsUrl:d,silenceThresholdMs:s,minVolumeRms:c}){let[g,f]=useState(false),[p,h]=useState(false),k=useRef(null),u=useRef(false),C=useRef(false),m=useCallback(()=>{C.current=false,f(false);},[]),{isRecording:y,startRecording:x,stopRecording:S}=js({wsUrl:d,silenceThresholdMs:s,minVolumeRms:c,onTextUpdate:A=>{o?.(A);},onComplete:async A=>{try{A.trim()&&(h(!0),await t(A.trim()));}catch(P){let v=P instanceof Error?P.message:"Failed to process voice command";a?.(v);}finally{h(!1),m();}},onError:A=>{a?.(A),h(!1),u.current||m();}}),F=useCallback(async()=>{C.current=false,await x();},[x]),D=useCallback(()=>{S();},[S]);useEffect(()=>{if(n)return;let A=v=>{v.isComposing||(v.code==="Space"||v.key===" ")&&(u.current||v.repeat||i&&fk(document.activeElement)||(u.current=true,v.preventDefault(),k.current=setTimeout(()=>{C.current=true,f(true),x();},r)));},P=v=>{(v.code==="Space"||v.key===" ")&&(k.current&&(clearTimeout(k.current),k.current=null),u.current=false,C.current&&(v.preventDefault(),f(false),S()));};return window.addEventListener("keydown",A),window.addEventListener("keyup",P),()=>{window.removeEventListener("keydown",A),window.removeEventListener("keyup",P),k.current&&(clearTimeout(k.current),k.current=null);}},[n,i,r,x,S]);let I=useMemo(()=>({isRecording:y,isHotkeyRecording:g,isSubmitting:p,startRecording:F,stopRecording:D}),[g,y,p,F,D]);return jsxs(zm.Provider,{value:I,children:[l?jsx(Uc,{isRecording:g}):null,e]})}function yk(){let e=useContext(zm);if(!e)throw new Error("useAINav must be used within CAINavProvider");return e}var G5=hk,U5=yk;function De(...e){return twMerge(clsx(e))}var wk=({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})]})},Nm=wk;var Bk=({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);}},d=r==="dark"?oneDark:oneLight;return jsxs("div",{className:De("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:d,customStyle:{margin:0,padding:"16px",fontSize:"14px",lineHeight:"1.5",backgroundColor:r==="dark"?"#1f2937":"#ffffff"},wrapLongLines:true,children:e})})]})},Om=Bk;var zk=({content:e,isLoading:t,className:o="",style:a})=>{let r=useRef(null),[n,i]=useState(false),[l,d]=useState(null),{theme:s}=useTheme$2();return useEffect(()=>{let c=async()=>{if(!(!e.trim()||!r.current)){i(true),d(null);try{$m.initialize({startOnLoad:!1,theme:s==="dark"?"dark":"default",securityLevel:"loose",fontFamily:"inherit"});let f=`mermaid-${Math.random().toString(36).substr(2,9)}`,p=e.replace(/```mermaid\n?|\n?```/g,"").trim(),{svg:h}=await $m.render(f,p);r.current&&(r.current.innerHTML=h);}catch(f){console.error("Mermaid render failed:",f),d(f instanceof Error?f.message:"Render failed"),r.current&&(r.current.innerText=e);}finally{i(false);}}},g=setTimeout(()=>{c();},100);return ()=>clearTimeout(g)},[e,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})},Gm=zk;var Hk=({title:e="\u53D1\u751F\u9519\u8BEF",content:t,errorCode:o,stack:a,icon:r,closable:n=true,onClose:i,onRetry:l,className:d="",...s})=>{let[c,g]=useState(false),[f,p]=useState(false),h=async()=>{if(l){p(true);try{await l();}catch(k){console.error("\u91CD\u8BD5\u5931\u8D25:",k);}finally{p(false);}}};return jsxs("div",{className:`relative w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...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})})]})},Zs=Hk;var jk=({title:e="\u8B66\u544A",content:t,warningType:o,severity:a="warning",warnings:r=[],icon:n,closable:i=true,onClose:l,onConfirm:d,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"}}},p=()=>{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||p()}),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((k,u)=>jsxs("li",{className:"flex items-start text-sm text-gray-600 dark:text-gray-300",children:[jsx("span",{className:"mr-2 mt-1.5 w-1 h-1 rounded-full bg-gray-400 dark:bg-gray-500 flex-shrink-0"}),jsx("span",{children:k})]},u))})]}),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"})})]}),d&&jsx("div",{className:"bg-gray-50 dark:bg-gray-800/50 px-4 py-3 flex justify-end border-t border-gray-100 dark:border-gray-800",children:jsx("button",{onClick:d,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:s||"\u786E\u8BA4"})})]})},Xs=jk;var Yk=({title:e="\u76F8\u5173\u63A8\u8350",content:t,suggestions:o,onSuggestionClick:a,maxDisplay:r=5,icon:n,closable:i=false,onClose:l,className:d="",...s})=>{let[c,g]=useState(false),[f,p]=useState(""),[h,k]=useState(false),u=useMemo(()=>f.trim()?o.filter(y=>y.toLowerCase().includes(f.toLowerCase())):o,[o,f]),C=useMemo(()=>c?u:u.slice(0,r),[u,c,r]),m=y=>{a?.(y);};return !o||o.length===0?null:jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...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:()=>k(!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=>p(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))}),u.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 (${u.length})`}),u.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=Yk;var nS=({title:e,content:t,toolName:o,parameters:a,result:r,status:n,duration:i,icon:l,closable:d=false,onClose:s,onAction:c,actionText:g,className:f="",...p})=>{let[h,k]=useState(false),[u,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=D=>D?D<1e3?`${D}ms`:`${(D/1e3).toFixed(2)}s`:"",S=m(),F=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}`,...p,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:F}),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)]}),d&&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:()=>k(!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(!u),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 mb-2",children:[u?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),jsx(Terminal,{className:"w-3.5 h-3.5 mr-1.5"}),"\u6267\u884C\u7ED3\u679C"]}),u&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-hidden",children:jsx("pre",{className:"p-3 text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto",children:typeof 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"})})]})]})},Ys=nS;var sS=({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(Ea,{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]})})},Js=sS;var hS=({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(An,{data:o,orientation:r.orientation||"horizontal",valueSuffix:r.valueSuffix||"",minHeight:r.minHeight});case "line-chart-card":return jsx(Od,{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),d=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(zi,{data:d,variant:r.variant||"donut",size:r.size,colors:r.colors});case "combo-chart-card":return jsx(Wd,{data:o,barColor:r.barColor,lineColor:r.lineColor});case "heatmap-chart-card":return jsx(Hd,{data:o});case "fishbone-chart-card":return jsx(Ud,{branches:o,effect:r.effect||e||"Problem"});case "waterfall-chart-card":return jsx(qd,{data:o,height:r.height});case "google-map-card":return jsx(Zd,{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(Jd,{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)})]})})]})]})},el=hS;var bS=({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)})})})]}),ol=bS;var al=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 wS=({content:e,theme:t,size:o="base",className:a,enableCodeHighlight:r=true,enableMermaid:n=true,messageId:i,cardHooks:l})=>{let d=useMemo(()=>e?e.replace(/<think>([\s\S]*?)<\/think>/g,(f,p)=>`<div data-component="thinkbox" data-think-content="${encodeURIComponent(p.trim())}"></div>`):"",[e]),s=(f,p,h,k,u)=>{l?.onCardEvent?.({messageId:i,cardType:f,action:p,title:h,payload:k,rawData:u});},c=(f,p,h,k,u,C)=>{if(!(!u&&!l?.onCardEvent))return (...m)=>{let y=u?.(...m),x=C?C(...m):void 0;return s(f,p,h,x,k),y}},g=useMemo(()=>({div(f){let{"data-component":p,"data-think-content":h,...k}=f;return p==="thinkbox"&&h?jsx(Nm,{content:decodeURIComponent(h),theme:t,size:o,defaultExpanded:false}):jsx("div",{...k})},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:p}){return jsx("th",{className:`px-3 py-2 font-semibold text-gray-800 dark:text-gray-100 ${p==="center"?"text-center":p==="right"?"text-right":"text-left"}`,children:f})},td({children:f,align:p}){return jsx("td",{className:`px-3 py-2 text-gray-700 dark:text-gray-200 align-top ${p==="center"?"text-center":p==="right"?"text-right":"text-left"}`,children:f})},code({inline:f,className:p,children:h,...k}){let u=/language-([\w-]+)/.exec(p||""),C=u?u[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",...k,children:h});let m=String(h).replace(/\n$/,"");if(n&&C==="mermaid")return jsx(Gm,{content:m});if(C==="json"){let y=al(m);if(y)switch(y.type){case "table":return jsx(Js,{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(el,{...y});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(ol,{...y});case "error-card":{let x=y;return jsx(Zs,{...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(Xs,{...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(Ys,{...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(Om,{content:m,language:C,className:"not-prose"}):jsx("code",{className:p,...k,children:h})}}),[t,o,n,r,l,i]);return jsx("div",{className:De("markdown-body prose dark:prose-invert max-w-none",a),children:jsx(xS,{remarkPlugins:[vS,CS],rehypePlugins:[kS,SS],components:g,children:d})})},rl=wS;var TS=({content:e,messageId:t,cardHooks:o})=>{let a=(i,l,d,s,c)=>{o?.onCardEvent?.({messageId:t,cardType:i,action:l,title:d,payload:s,rawData:c});},r=(i,l,d,s,c,g)=>{if(!(!c&&!o?.onCardEvent))return (...f)=>{let p=c?.(...f),h=g?g(...f):void 0;return a(i,l,d,h,s),p}},n=al(e);if(n)switch(n.type){case "table":return jsx(Js,{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(el,{...n});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(ol,{...n});case "error-card":{let i=n;return jsx(Zs,{...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(Xs,{...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(Ys,{...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(rl,{content:e,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:t,cardHooks:o})})},Jm=TS;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"}}},PS=({content:e,className:t="",messageId:o,cardHooks:a})=>{let r=gt__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(Jm,{content:n.content,messageId:o,cardHooks:a},`block-${i}`):jsx(rl,{content:n.content,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:o,cardHooks:a},`block-${i}`))})},eg=PS;var RS=({content:e,isStreaming:t=true,onComplete:o,className:a="",streamIntervalMs:r=24,streamChunkSize:n=3,messageId:i,cardHooks:l})=>{let[d,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(d>=e.length){g(true),o?.();return}let u=window.setTimeout(()=>{s(C=>Math.min(C+n,e.length));},r);return ()=>{window.clearTimeout(u);}},[e.length,c,t,o,n,r,d]);let f=()=>{t&&!c&&(s(e.length),g(true),o?.());},p=t?e.slice(0,d):e,h=t&&!c,k=t&&!c;return jsxs("div",{className:`streaming-markdown ${a}`,onClick:f,style:{cursor:t?"pointer":"default"},children:[jsxs("div",{className:"relative",children:[jsx(eg,{content:p,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"}})]}),k&&jsx("div",{className:"streaming-hint",style:{fontSize:"9px",color:"#999",marginTop:"8px",fontStyle:"italic",opacity:.7},children:"\u70B9\u51FB\u6B64\u5904\u663E\u793A\u5B8C\u6574\u5185\u5BB9"})]})},rg=RS;var ng=({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:De("flex items-center gap-1",t),children:e.map((a,r)=>jsx("button",{onClick:a.onClick,disabled:a.disabled,className:De("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 nl=({message:e,onStreamingComplete:t,assistantActions:o,streamIntervalMs:a,streamChunkSize:r,cardHooks:n})=>e.type==="assistant"?jsx("div",{className:"flex justify-start mb-4",children:jsxs("div",{className:"w-full bg-transparent text-black dark:text-gray-100 rounded-2xl px-4 py-3 mr-auto",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[jsx(rg,{content:e.content,isStreaming:e.isStreaming??false,onComplete:t,streamIntervalMs:a,streamChunkSize:r,messageId:e.id,cardHooks:n}),e.content&&o?.isLatestAssistant&&jsx("div",{className:"flex flex-row justify-start gap-2 mt-3 pt-2 border-t border-gray-100 dark:border-gray-700",children:jsx(ng,{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 sg=({onTextUpdate:e,onComplete:t,onCancel:o,disabled:a,className:r})=>{let{isRecording:n,startRecording:i,stopRecording:l}=js({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:De("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(LS,{sx:{fontSize:24}}):jsx(ES,{sx:{fontSize:24}})})};var ft={container:"w-full max-w-4xl mx-auto",inputContainer:De("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:De("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:De("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:De("bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400","cursor-pointer active:scale-95"),sendButton:De("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:De("cursor-not-allowed opacity-40 bg-transparent text-gray-400"),stopButton:De("cursor-pointer bg-red-500 hover:bg-red-600 text-white shadow-sm active:scale-95")},GS={padding:0,lineHeight:"1.5",border:"none !important",boxShadow:"none !important",backgroundColor:"transparent",height:"auto",fontFeatureSettings:'"liga" 1, "kern" 1',WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},US=({enabled:e,onClick:t})=>jsx("button",{className:De(ft.buttonBase,ft.buttonSmall,ft.buttonNormal),onClick:t,disabled:!e,"aria-label":"Upload file",type:"button",children:jsx($S,{sx:{fontSize:24}})}),KS=()=>jsxs("button",{className:De(ft.buttonBase,"h-10 px-3 py-2 gap-1.5 rounded-full",ft.buttonNormal),"aria-label":"Tools",type:"button",children:[jsx(HS,{sx:{fontSize:20}}),jsx("span",{className:"text-sm font-medium",children:"Tools"})]}),qS=({canSend:e,isResponding:t,onSend:o,onStop:a})=>t?jsx("button",{className:De(ft.buttonBase,ft.buttonSmall,ft.stopButton),onClick:a,"aria-label":"Stop generating",type:"button",children:jsx(Stop,{sx:{fontSize:20}})}):jsx("button",{className:De(ft.buttonBase,ft.buttonSmall,e?ft.sendButton:ft.sendButtonDisabled),onClick:o,disabled:!e,"aria-label":"Send message",type:"button",children:jsx(WS,{sx:{fontSize:24},className:e?"text-gray-500 dark:text-gray-400":"text-gray-300 dark:text-gray-600"})}),lg=({onSend:e,onStop:t,isResponding:o=false,placeholder:a,getText:r})=>{let[n,i]=useState(""),[l,d]=useState([]),[s,c]=useState(false),[g,f]=useState(false),p=useRef(null),h=a||(r?r("00019","Type a message..."):"Type a message..."),k=(n.trim().length>0||l.length>0)&&!o,u={enabled:true},C=useCallback(T=>{i(T.target.value),T.target.style.height="auto",T.target.style.height=`${Math.min(T.target.scrollHeight,200)}px`;},[]),m=useCallback(T=>{if(T.target.files&&T.target.files.length>0){let W=Array.from(T.target.files);d(N=>{let X=W.filter(ee=>N.some(te=>te.name===ee.name&&te.size===ee.size));X.length>0&&console.warn("Duplicate files ignored:",X.map(ee=>ee.name));let se=W.filter(ee=>!N.some(te=>te.name===ee.name&&te.size===ee.size));return [...N,...se]}),p.current&&(p.current.value="");}},[]),y=useCallback(T=>{d(W=>W.filter((N,X)=>X!==T));},[]),x=useCallback(()=>{p.current?.click();},[]),S=useCallback(async()=>{if(!k)return;let T=n,W=[...l];i(""),d([]),p.current&&(p.current.value="");try{await e(T,W);}catch(N){console.error("Failed to send message:",N),i(T),d(W);}},[n,k,e,l]),F=useCallback(T=>{T.key==="Enter"&&!T.shiftKey&&!s&&(T.preventDefault(),S());},[S,s]),D=useCallback(()=>{c(true);},[]),I=useCallback(()=>{c(false);},[]),A=useCallback(T=>{i(T);},[]),P=useCallback(T=>{i(T);},[]),v=useCallback(()=>{},[]),M=useCallback(T=>{T.preventDefault(),f(true);},[]),w=useCallback(T=>{T.preventDefault(),f(false);},[]),R=useCallback(T=>{if(T.preventDefault(),f(false),T.dataTransfer.files&&T.dataTransfer.files.length>0){let W=Array.from(T.dataTransfer.files);d(N=>[...N,...W]);}},[]);return jsx("div",{className:ft.container,children:jsxs("div",{className:"relative",children:[jsx("input",{type:"file",multiple:true,className:"hidden",ref:p,onChange:m}),jsxs("div",{className:De(ft.inputContainer,g&&ft.dragActive),style:{borderRadius:"32px"},onDragOver:M,onDragLeave:w,onDrop:R,children:[l.length>0&&jsx("div",{className:ft.filePreviewArea,children:l.map((T,W)=>jsxs("div",{className:ft.fileTag,children:[jsx(InsertDriveFile,{sx:{fontSize:16},className:"text-blue-500"}),jsx("span",{className:"truncate max-w-[150px]",children:T.name}),jsx("button",{onClick:()=>y(W),className:"ml-1 hover:text-red-500 focus:outline-none",type:"button",children:jsx(Close,{sx:{fontSize:16}})})]},`${T.name}-${W}`))}),jsxs("div",{className:"flex flex-col w-full p-2",children:[jsx("div",{className:De(ft.textareaWrapper,"px-3 pt-2 pb-3 min-h-[60px]"),children:jsx("textarea",{className:De(ft.textarea,"min-h-[24px] py-0 px-0"),placeholder:h,value:n,onChange:C,onKeyDown:F,onCompositionStart:D,onCompositionEnd:I,style:GS,"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(US,{enabled:u.enabled,onClick:x}),jsx(KS,{})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(sg,{onTextUpdate:A,onComplete:P,onCancel:v,disabled:o,className:ft.buttonSmall}),jsx(qS,{canSend:k,isResponding:o,onSend:S,onStop:t})]})]})]})]})]})})};var pg=({messages:e,onSend:t,onStop:o,onRegenerate:a,isResponding:r=false,className:n,placeholder:i,streamIntervalMs:l,streamChunkSize:d,onMessageStreamingComplete:s,cardHooks:c,showInput:g=true})=>{let f=useRef(null),p=useRef(e.length);return useEffect(()=>{e.length>p.current&&f.current?.scrollIntoView({behavior:"smooth"}),p.current=e.length;},[e]),jsxs("div",{className:De("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,k)=>{let u=h.type==="assistant"&&k===e.length-1,C=h.type==="assistant"?{isLatestAssistant:u,onRegenerate:a?()=>a(h.id):void 0}:void 0;return jsx(nl,{message:h,assistantActions:C,onStreamingComplete:()=>s?.(h.id),streamIntervalMs:l,streamChunkSize:d,cardHooks:c},h.id)}),jsx("div",{ref:f})]}),g&&jsx("div",{className:"p-4 bg-gradient-to-t from-white via-white to-transparent dark:from-gray-900 dark:via-gray-900 pb-8 z-10",children:jsx(lg,{onSend:t||(async()=>{}),onStop:o||(()=>{}),isResponding:r,placeholder:i})})]})};var uo={};var ZS={idle:"Idle",running:"Running",success:"Success",error:"Error",pending:"Pending"},fz=({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:De("relative flex h-full w-full",uo.agentPanel,a),"data-status":l,children:[jsx("div",{className:uo.colorHalo,"data-status":l,"aria-hidden":"true"}),jsxs("div",{className:uo.marqueeBorder,"data-status":l,"aria-hidden":"true",children:[jsx("span",{className:De(uo.edge,uo.top)}),jsx("span",{className:De(uo.edge,uo.right)}),jsx("span",{className:De(uo.edge,uo.bottom)}),jsx("span",{className:De(uo.edge,uo.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:uo.statusDot,"data-status":l}),jsx("span",{className:"text-[11px] font-medium uppercase tracking-wide text-gray-600 dark:text-gray-300",children:ZS[l]})]}),o]})]}),jsx("div",{className:"flex-1 min-h-0 relative z-10",children:jsx(pg,{...i,showInput:n})})]})]})};var ew={"top-left":"bottom-right","top-right":"bottom-left","bottom-left":"top-right","bottom-right":"top-left"},Sz=({messages:e,onSend:t,onRegenerate:o,isResponding:a=false,className:r,placeholder:n,title:i="Copilot",corner:l="bottom-right",onCollapse:d,onHeaderPointerDown:s,onPlusClick:c,onMicClick:g,streamIntervalMs:f,streamChunkSize:p,onMessageStreamingComplete:h,cardHooks:k})=>{let[u,C]=useState(""),[m,y]=useState(false),x=useRef(null),S=ew[l];useEffect(()=>{x.current?.scrollIntoView({behavior:"smooth"});},[e,a]);let F=useCallback(async()=>{let I=u.trim();!I||a||(C(""),await t(I));},[a,t,u]),D=useCallback(async I=>{I.key==="Enter"&&!m&&(I.preventDefault(),await F());},[F,m]);return jsxs("div",{className:De("relative flex h-full w-full min-h-[460px] min-w-[340px] flex-col overflow-hidden rounded-3xl border border-gray-200 bg-white shadow-none dark:border-gray-800 dark:bg-gray-900",r),children:[d&&jsx("button",{onClick:d,className:De("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:De("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((I,A)=>{let P=I.type==="assistant"&&A===e.length-1,v=I.type==="assistant"?{isLatestAssistant:P,onRegenerate:o?()=>o(I.id):void 0}:void 0;return jsx(nl,{message:I,assistantActions:v,onStreamingComplete:()=>h?.(I.id),streamIntervalMs:f,streamChunkSize:p,cardHooks:k},I.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:u,onChange:I=>C(I.target.value),onCompositionStart:()=>y(true),onCompositionEnd:()=>y(false),onKeyDown:D,"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 Pz=({defaultMode:e="login",onLogin:t,onRegister:o,onForgotPassword:a}={})=>{let[r,n]=useState(e),[i,l]=useState(false),d=useCallback(async p=>{l(true);try{await p?.();}finally{l(false);}},[]),s=useCallback(p=>d(()=>t?.(p)),[t,d]),c=useCallback(p=>d(()=>o?.(p)),[o,d]),g=useCallback(p=>d(()=>a?.(p)),[a,d]),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 yi=forwardRef((e,t)=>jsx(Paper,{ref:t,...e,elevation:e.elevation||1,sx:{p:2,mb:2,...e.sx}}));yi.displayName="CPaper";var mw={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."},_z=({mode:e,defaultMode:t="login",onModeChange:o,onLogin:a,onRegister:r,onForgotPassword:n,loading:i=false,logo:l,copy:d,sx:s})=>{let c=useTheme(),g=e!==void 0,[f,p]=useState(t),h=e??f,k=useMemo(()=>({...mw,...d}),[d]),[u,C]=useState({username:"demo@orbcafe.local",password:"orbcafe-demo",remember:true}),[m,y]=useState({name:"",email:"",password:"",confirmPassword:"",acceptedTerms:false}),[x,S]=useState({email:""}),[F,D]=useState(""),I=R=>{g||p(R),D(""),o?.(R);},A=async R=>{R.preventDefault(),await a?.(u),D("Demo login accepted. No real authentication request was sent.");},P=async R=>{R.preventDefault(),await r?.(m),D("Demo registration saved locally for this screen.");},v=async R=>{R.preventDefault(),await n?.(x),D("Demo reset link request created. No email was sent.");},M=h==="login"?k.loginTitle:h==="register"?k.registerTitle:k.forgotTitle,w=h==="login"?k.loginSubtitle:h==="register"?k.registerSubtitle:k.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:k.productName}),jsx(Typography,{sx:{fontSize:{md:34,lg:42},lineHeight:1.06,fontWeight:800},children:k.headline}),jsx(Typography,{sx:{maxWidth:460,color:"text.secondary",fontSize:16,lineHeight:1.7},children:k.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(yi,{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:w})]}),F&&jsx(Alert,{severity:"success",children:F}),h==="login"&&jsx(Box,{component:"form",onSubmit:A,children:jsxs(Stack,{spacing:2,children:[jsx(Gt,{label:"Email or user ID",value:u.username,onChange:R=>C(T=>({...T,username:R.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(yg,{fontSize:"small"})})}}),jsx(Gt,{label:"Password",type:"password",value:u.password,onChange:R=>C(T=>({...T,password:R.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(pw,{fontSize:"small"})})}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:2},children:[jsx(od,{label:"Remember me",checked:u.remember,onChange:R=>C(T=>({...T,remember:R.target.checked}))}),jsx(Do,{type:"button",variant:"text",size:"small",onClick:()=>I("forgot"),children:"Forgot?"})]}),jsx(Do,{type:"submit",size:"large",disabled:i,children:"Sign in"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["New user?"," ",jsx(Do,{type:"button",variant:"text",size:"small",onClick:()=>I("register"),sx:{minWidth:0,p:0},children:"Register"})]})]})}),h==="register"&&jsx(Box,{component:"form",onSubmit:P,children:jsxs(Stack,{spacing:2,children:[jsx(Gt,{label:"Full name",value:m.name,onChange:R=>y(T=>({...T,name:R.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(yg,{fontSize:"small"})})}}),jsx(Gt,{label:"Work email",type:"email",value:m.email,onChange:R=>y(T=>({...T,email:R.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(hg,{fontSize:"small"})})}}),jsx(Gt,{label:"Password",type:"password",value:m.password,onChange:R=>y(T=>({...T,password:R.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(uw,{fontSize:"small"})})}}),jsx(Gt,{label:"Confirm password",type:"password",value:m.confirmPassword,onChange:R=>y(T=>({...T,confirmPassword:R.target.value}))}),jsx(od,{label:"I accept the demo workspace terms",checked:m.acceptedTerms,onChange:R=>y(T=>({...T,acceptedTerms:R.target.checked}))}),jsx(Do,{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(Do,{type:"button",variant:"text",size:"small",onClick:()=>I("login"),sx:{minWidth:0,p:0},children:"Sign in"})]})]})}),h==="forgot"&&jsx(Box,{component:"form",onSubmit:v,children:jsxs(Stack,{spacing:2,children:[jsx(Gt,{label:"Work email",type:"email",value:x.email,onChange:R=>S({email:R.target.value}),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(hg,{fontSize:"small"})})}}),jsx(Do,{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(Do,{type:"button",variant:"text",size:"small",onClick:()=>I("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 hw={keyword:{value:"",operator:"contains"},status:{value:"",operator:"equals"},owner:{value:"",operator:"contains"},workCenter:{value:"",operator:"contains"}},yw=[{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"}],bg=({tasks:e,defaultScale:t="week",defaultSelectedTaskId:o,initialFilters:a,filterFields:r,filterAppId:n="planning-gantt-filter",filterTableKey:i="planning",onFilterSearch:l,onFilterVariantLoad:d})=>{let[s,c]=useState(t),[g,f]=useState(o??e[0]?.id??""),[p,h]=useState({...hw,...a}),k=useMemo(()=>{let y=String(p.keyword?.value??"").trim().toLowerCase(),x=String(p.status?.value??"").trim(),S=String(p.owner?.value??"").trim().toLowerCase(),F=String(p.workCenter?.value??"").trim().toLowerCase(),D=p.dateRange?.value,I=D?.[0]?Ka(D[0]):null,A=D?.[1]?Ka(D[1]):null;return e.filter(P=>{if(y&&![P.id,P.code,P.title,P.project,P.workCenter,P.owner?.name].join(" ").toLowerCase().includes(y)||x&&P.status!==x||S&&!String(P.owner?.name??"").toLowerCase().includes(S)||F&&!String(P.workCenter??"").toLowerCase().includes(F))return false;if(I||A){let v=Ka(P.startDate),M=Ka(P.endDate),w=I?M.isAfter(I)||M.isSame(I,"day"):true,R=A?v.isBefore(A)||v.isSame(A,"day"):true;if(!w||!R)return false}return true})},[p,e]);useEffect(()=>{k.length!==0&&(k.some(y=>y.id===g)||f(k[0].id));},[k,g]);let u=useCallback(y=>{f(y.id);},[]),C=useMemo(()=>({appId:n,tableKey:i,fields:r??yw,filters:p,onFilterChange:h,onVariantLoad:d??(()=>{}),onSearch:l??(()=>{})}),[n,r,i,p,l,d]),m=useMemo(()=>({tasks:k,scale:s,onScaleChange:c,selectedTaskId:g,onTaskSelect:u}),[k,u,s,g]);return {scale:s,setScale:c,selectedTaskId:g,setSelectedTaskId:f,filters:p,setFilters:h,filteredTasks:k,smartFilterProps:C,planningGanttProps:m}};var tN=e=>{let t=bg(e),o=useMemo(()=>({filterProps:t.smartFilterProps,ganttProps:t.planningGanttProps}),[t.planningGanttProps,t.smartFilterProps]);return {...t,layoutProps:o}};var xg=e=>jsx(Chip,{...e,size:e.size||"small",variant:e.variant||"outlined"});var Ua=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});Ua.displayName="CIconButton";var Cg=({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))})]});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,Ir=58,ld=8,cd=260,_w=320,qa="220ms cubic-bezier(0.2, 0, 0, 1)",wg={"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"}},jw=e=>e?wg[e]?.label??e:"Planned",Zw=e=>e?wg[e]?.color??"default":"info",Tg=e=>Math.min(100,Math.max(0,e??0)),Ig=(e,t=0)=>e.flatMap(o=>[{...o,level:t},...Ig(o.children??[],t+1)]),Xw=e=>({id:e.id,code:e.code??e.id,title:e.title,titleSub:e.project??e.workCenter??"General",owner:e.owner?.name??"Unassigned",status:jw(e.status),statusTone:e.status??"planned",progress:Tg(e.progress),startDate:e.startDate,endDate:e.endDate,color:e.color}),Pg=(e,t)=>t==="month"?e.startOf("month"):t==="week"?e.startOf("week"):t==="day"?e.startOf("day"):e.startOf("hour"),Rg=(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=Pg(e,o),n=Rg(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"),start:r,end:i}),r=i;}return a},Sg=(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},Dg=({title:e="Project Plan",subtitle:t="Task table and timeline view",extraTools:o,bodyHeight:a=560,tasks:r,scale:n="week",onScaleChange:i,timelineStart:l,timelineEnd:d,selectedTaskId:s,onTaskSelect:c,emptyLabel:g="No planning tasks available.",sx:f})=>{let p=useTheme(),h=useRef(null),k=useRef(null),u=useRef(null),C=useRef(false),[m,y]=useState(null),[x,S]=useState(null),[F,D]=useState({}),[I,A]=useState(sd),P=useRef(null),v=useMemo(()=>Ig(r),[r]),M=useMemo(()=>new Map(v.map(G=>[G.id,G])),[v]),w=useMemo(()=>v.map(G=>Xw(G)),[v]),R=useMemo(()=>[{id:"code",label:"ID",minWidth:90},{id:"title",label:"Task",minWidth:260,render:(G,pe)=>jsxs(Stack,{spacing:.2,children:[jsx(Typography,{sx:{fontSize:15,fontWeight:700,lineHeight:1.2},children:pe.title}),jsx(Typography,{sx:{fontSize:13,color:"text.secondary"},children:pe.titleSub})]})},{id:"owner",label:"Owner",minWidth:170},{id:"status",label:"Status",minWidth:130,render:(G,pe)=>jsx(xg,{label:pe.status,color:Zw(pe.statusTone),size:"small"})},{id:"progress",label:"Progress",minWidth:140,numeric:true,render:G=>jsxs(Stack,{spacing:.6,children:[jsxs(Typography,{variant:"caption",sx:{color:"text.secondary"},children:[G,"%"]}),jsx(LinearProgress,{variant:"determinate",value:G,sx:{height:6,borderRadius:999}})]})},{id:"startDate",label:"Start",minWidth:120},{id:"endDate",label:"End",minWidth:120}],[]),T=Qr({appId:"planning-gantt",title:e,columns:R,rows:w,rowKey:"id",rowsPerPage:-1,rowsPerPageOptions:[-1],count:w.length,showSummary:false}),W=T.visibleRows,N=G=>G.type==="group"?`group-${G.id}`:`row-${(G.data||G)?.id}`,X=useMemo(()=>{let G=w.map(Y=>Ka(Y.startDate)),pe=w.map(Y=>Ka(Y.endDate)),ue=l?Ka(l):G.reduce((Y,le)=>le.isBefore(Y)?le:Y,G[0]??Ka()),be=d?Ka(d):pe.reduce((Y,le)=>le.isAfter(Y)?le:Y,pe[0]??Ka().add(30,"day")),Ce=n==="month"?"month":n==="week"?"week":n==="day"?"day":"hour",$e=n==="month"?"month":n==="week"?"week":n==="day"?"day":"hour",O=n==="hour"?12:1,ce=n==="hour"?12:1;return {start:Pg(ue.subtract(O,Ce),n),end:Rg(be.add(ce,$e),n)}},[w,n,d,l]),se=id.find(G=>G.value===n)??id[1],ee=Array.isArray(o)?o:o?[o]:[],te=useMemo(()=>Qw(X.start,X.end,n),[X.end,X.start,n]),Z=te.length*se.width,Oe=(T.columns||[]).filter(G=>T.visibleColumns.includes(G.id)).reduce((G,pe)=>G+(T.columnWidths?.[pe.id]||pe.minWidth||100),0),tt=m??Oe,qe=x==="timeline"?0:tt,oe=x==="timeline",Ie=x==="table",ve=!oe&&!Ie,Je=Ie?"0px":"minmax(0, 1fr)";useEffect(()=>{y(G=>G===null?null:Math.min(Math.max(G,cd),Oe));},[Oe]);let nt=G=>{G.preventDefault(),G.currentTarget.setPointerCapture(G.pointerId),S(null),P.current={startX:G.clientX,startWidth:tt};let pe=be=>{let Ce=P.current;if(!Ce)return;let $e=h.current?.clientWidth??0,O=$e>0?Math.max(cd,$e-ld-_w):Oe,ce=Math.min(Math.max(Ce.startWidth+be.clientX-Ce.startX,cd),O);y(ce);},ue=()=>{P.current=null,window.removeEventListener("pointermove",pe),window.removeEventListener("pointerup",ue),document.body.style.cursor="",document.body.style.userSelect="";};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("pointermove",pe),window.addEventListener("pointerup",ue);},We=()=>{S(null),y(null);},et=G=>{if(C.current)return;let pe=G==="table"?k.current:u.current,ue=G==="table"?u.current:k.current;!pe||!ue||(C.current=true,ue.scrollTop=pe.scrollTop,window.requestAnimationFrame(()=>{C.current=false;}));};return useLayoutEffect(()=>{let G=k.current;if(!G)return;let pe=0,ue=()=>{let ce=G.querySelector("thead"),Y=Array.from(G.querySelectorAll("tbody tr[data-planning-row-key]"));if(Y.length===0)return;let le=ce?.getBoundingClientRect().height||sd,Ee={};Y.forEach(xe=>{let St=xe.dataset.planningRowKey;St&&(Ee[St]=xe.getBoundingClientRect().height);}),A(xe=>Math.abs(xe-le)<.01?xe:le),D(xe=>{let St=Object.keys(xe),_t=Object.keys(Ee);return St.length===_t.length&&_t.every(jt=>Math.abs((xe[jt]??0)-Ee[jt])<.01)?xe:Ee});},be=()=>{window.cancelAnimationFrame(pe),pe=window.requestAnimationFrame(ue);};if(ue(),typeof ResizeObserver>"u")return window.addEventListener("resize",be),()=>{window.cancelAnimationFrame(pe),window.removeEventListener("resize",be);};let Ce=new ResizeObserver(be),$e=G.querySelector("table"),O=G.querySelector("thead");return $e&&Ce.observe($e),O&&Ce.observe(O),G.querySelectorAll("tbody tr[data-planning-row-key]").forEach(ce=>Ce.observe(ce)),window.addEventListener("resize",be),()=>{window.cancelAnimationFrame(pe),Ce.disconnect(),window.removeEventListener("resize",be);}},[W,T.visibleColumns,T.grouping,T.columnWidths]),jsxs(yi,{elevation:0,sx:{m:0,p:0,display:"flex",flexDirection:"column",minHeight:0,overflow:"hidden",borderRadius:3,border:`1px solid ${p.palette.divider}`,backgroundColor:p.palette.background.paper,...f},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 ${p.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(Vw,{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:[ee.length>0&&jsx(Stack,{direction:"row",spacing:.75,alignItems:"center",children:ee.map((G,pe)=>jsx(Box,{sx:{display:"flex",alignItems:"center"},children:G},`planning-extra-tool-${pe}`))}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(Ua,{tooltip:"Column visibility",onClick:G=>T.setAnchorEl(G.currentTarget),color:"default",children:jsx(Pf,{fontSize:"small"})}),jsx(Ua,{tooltip:"Group by",onClick:G=>T.setGroupAnchorEl(G.currentTarget),color:"default",children:jsx(Mf,{fontSize:"small"})}),jsx(Ua,{tooltip:"Sort by first visible column",onClick:()=>{let G=(T.columns||[]).find(pe=>T.visibleColumns.includes(pe.id));G&&T.handleRequestSort(G.id);},color:T.orderBy?"primary":"default",children:jsx(Kw,{fontSize:"small"})})]}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(Ua,{tooltip:"Expand task table",onClick:()=>S("table"),color:x==="table"?"primary":"default",children:jsx(Gw,{fontSize:"small"})}),jsx(Ua,{tooltip:"Reset split",onClick:We,color:x===null?"primary":"default",children:jsx(Uw,{fontSize:"small"})}),jsx(Ua,{tooltip:"Expand timeline",onClick:()=>S("timeline"),color:x==="timeline"?"primary":"default",children:jsx(Hw,{fontSize:"small"})})]}),jsx(Box,{sx:{minWidth:120},children:jsx(Cg,{label:"",value:n,options:id.map(G=>({value:G.value,label:G.label})),onChange:G=>i?.(G.target.value),sx:{"& .MuiSelect-select":{fontSize:"0.92rem",py:.65},"& .MuiSvgIcon-root":{fontSize:20}}})})]})]}),w.length===0?jsx(Box,{sx:{minHeight:240,display:"grid",placeItems:"center",color:"text.secondary"},children:g}):jsx(Box,{sx:{overflow:"hidden",flex:1,minHeight:0},children:jsxs(Box,{ref:h,sx:{height:"100%",display:"grid",gridTemplateColumns:`${qe}px ${ve?ld:0}px ${Je}`,transition:`grid-template-columns ${qa}`},children:[jsx(TableContainer,{"data-planning-scroll-pane":"table",ref:k,onScroll:()=>et("table"),sx:{width:qe,height:a,overflowX:"auto",overflowY:"auto",opacity:oe?0:1,transform:oe?"translateX(-10px)":"translateX(0)",pointerEvents:oe?"none":"auto",transition:`opacity ${qa}, transform ${qa}, width ${qa}`},children:jsxs(Table,{size:"small",stickyHeader:true,sx:{tableLayout:"fixed",width:Oe,"& thead .MuiTableCell-root":{height:sd,py:0,lineHeight:1.15,boxSizing:"border-box"}},children:[jsx(Si,{columns:T.columns,visibleColumns:T.visibleColumns,order:T.order,orderBy:T.orderBy,onRequestSort:T.handleRequestSort,grouping:T.grouping,isAllExpanded:T.isAllExpanded,handleToggleAll:T.handleToggleAll,columnWidths:T.columnWidths,onColumnResize:T.handleColumnResize}),jsx(TableBody,{children:W.map(G=>{let pe=N(G);if(G.type==="group")return jsxs(TableRow,{"data-planning-row-key":pe,sx:{height:Ir,backgroundColor:p.palette.action.hover},children:[T.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Ir,py:0,borderBottom:`1px solid ${p.palette.divider}`},children:jsx(IconButton,{size:"small",onClick:()=>T.toggleGroupExpand(G.id),children:G.isExpanded?jsx(eh,{fontSize:"small"}):jsx(Nf,{fontSize:"small"})})}),jsx(TableCell,{colSpan:T.visibleColumns.length,sx:{height:Ir,py:0,borderBottom:`1px solid ${p.palette.divider}`},children:jsxs(Typography,{sx:{fontSize:13,fontWeight:700},children:[G.field,": ",G.value," (",G.count,")"]})})]},G.id);let ue=G.data||G,be=ue.id===s;return jsxs(TableRow,{"data-planning-row-key":pe,hover:true,selected:be,onClick:()=>c?.(M.get(ue.id)||ue),sx:{cursor:c?"pointer":"default",height:Ir},children:[T.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Ir,py:0,borderBottom:`1px solid ${p.palette.divider}`}}),(T.columns||[]).filter(Ce=>T.visibleColumns.includes(Ce.id)).map(Ce=>jsx(TableCell,{sx:{width:T.columnWidths?.[Ce.id]||Ce.minWidth||100,height:Ir,py:0,overflow:"hidden",borderBottom:`1px solid ${p.palette.divider}`},children:Ce.render?Ce.render(ue[Ce.id],ue):String(ue[Ce.id]??"-")},`${ue.id}-${Ce.id}`))]},ue.id)})})]})}),jsx(Box,{onPointerDown:ve?nt:void 0,role:"separator","aria-orientation":"vertical",sx:{width:ve?ld:0,cursor:ve?"col-resize":"default",opacity:ve?1:0,pointerEvents:ve?"auto":"none",borderLeft:ve?`1px solid ${p.palette.divider}`:"0 solid transparent",borderRight:ve?`1px solid ${p.palette.divider}`:"0 solid transparent",backgroundColor:p.palette.mode==="dark"?"rgba(148,163,184,0.10)":"rgba(15,23,42,0.04)",transition:`width ${qa}, opacity ${qa}, background-color 120ms ease`,position:"relative","&:hover":{backgroundColor:p.palette.action.selected},"&::before":{content:'""',position:"absolute",top:0,bottom:0,left:-6,right:-6,cursor:ve?"col-resize":"default"}}}),jsx(Box,{sx:{minWidth:0,overflow:"hidden",opacity:Ie?0:1,transform:Ie?"translateX(10px)":"translateX(0)",pointerEvents:Ie?"none":"auto",transition:`opacity ${qa}, transform ${qa}`},children:jsx(Box,{"data-planning-scroll-pane":"timeline",ref:u,onScroll:()=>et("timeline"),sx:{width:"100%",height:a,overflowX:"auto",overflowY:"auto"},children:jsxs(Box,{sx:{width:Z},children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${te.length}, ${se.width}px)`,height:I,boxSizing:"border-box",borderBottom:`1px solid ${p.palette.divider}`,position:"sticky",top:0,zIndex:2,backgroundColor:p.palette.background.paper},children:te.map(G=>jsx(Box,{sx:{px:.75,display:"flex",alignItems:"center",borderRight:`1px solid ${p.palette.divider}`,color:"text.secondary",fontSize:12,fontWeight:700},children:G.label},G.key))}),jsx(Stack,{sx:{position:"relative"},children:W.map(G=>{let pe=N(G),ue=F[pe]??Ir;if(G.type==="group")return jsx(Box,{"data-planning-timeline-row-key":pe,sx:{position:"relative",height:ue,boxSizing:"border-box",borderBottom:`1px solid ${p.palette.divider}`,backgroundColor:p.palette.action.hover}},G.id);let be=G.data||G,Ce=Ka(be.startDate),$e=Ka(be.endDate),O=Sg(Ce,te,se.width),ce=Sg($e,te,se.width),Y=Math.max(18,ce-O),le=Tg(be.progress),Ee=be.id===s,xe=be.color??(be.statusTone==="blocked"?p.palette.error.main:p.palette.primary.main);return jsx(Box,{"data-planning-timeline-row-key":pe,onClick:()=>c?.(M.get(be.id)||be),sx:{position:"relative",height:ue,boxSizing:"border-box",borderBottom:`1px solid ${p.palette.divider}`,backgroundImage:p.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:`${se.width}px 100%`,cursor:c?"pointer":"default"},children:jsx(Tooltip,{title:`${be.title}: ${Ce.format("MMM D HH:mm")} - ${$e.format("MMM D HH:mm")}`,children:jsxs(Box,{sx:{position:"absolute",left:O,top:Math.max(8,(ue-24)/2),width:Y,height:24,borderRadius:999,overflow:"hidden",backgroundColor:p.palette.mode==="dark"?"rgba(148,163,184,0.18)":"rgba(15,23,42,0.10)",outline:Ee?`2px solid ${p.palette.warning.main}`:"none",outlineOffset:2},children:[jsx(Box,{sx:{height:"100%",width:`${le}%`,backgroundColor:xe}}),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:be.code})]})})},be.id)})})]})})})]})}),jsx(zr,{groupAnchorEl:T.groupAnchorEl,setGroupAnchorEl:T.setGroupAnchorEl,grouping:T.grouping,setGrouping:T.setGrouping,columns:T.columns,toggleGroupField:T.toggleGroupField}),jsx(Nr,{anchorEl:T.anchorEl,setAnchorEl:T.setAnchorEl,columns:T.columns,visibleColumns:T.visibleColumns,toggleColumnVisibility:T.toggleColumnVisibility})]})};var VN=({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(la,{...e})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden"},children:jsx(Dg,{...t,bodyHeight:t.bodyHeight??"100%",sx:i})}),r]})};var n1={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)"}}},GN=({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 d=useMediaQuery("(prefers-reduced-motion: reduce)"),[s,c]=useState("to"),g=!i&&!d&&o!=="none";useEffect(()=>{if(!g){c("to");return}c("from");let h=requestAnimationFrame(()=>{h=requestAnimationFrame(()=>{c("to");});});return ()=>cancelAnimationFrame(h)},[t,g]);let f=n1[o],p=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",...p,...l},children:e})},UN={subtle:{variant:"fade",durationMs:180},smooth:{variant:"slide-up",durationMs:220},snappy:{variant:"scale",durationMs:160}};
|
|
17
|
+
export{fz as AgentPanel,fl as Button,hk as CAINavProvider,Jd as CAmapChart,ks as CAppHeader,u2 as CAppPageLayout,_z as CAuthPage,An as CBarChart,Di as CChartCard,Wd as CComboChart,ap as CCustomizeAgent,hA as CDetailInfoPage,Jp as CDetailSearchAiBar,us as CDetailSectionCard,Ud as CFishboneChart,Zd as CGoogleMapChart,ep as CGraphCharts,zd as CGraphKpiCards,Ui as CGraphReport,Hd as CHeatmapChart,NA as CKanbanBoard,nu as CKanbanBucket,uc as CKanbanCard,Pp as CLayoutManagement,os as CLayoutManager,Od as CLineChart,In as CMessageBox,wd as CPageLayout,GN as CPageTransition,zi as CPieChart,eF as CPivotTable,Dg as CPlanningGantt,VN as CPlanningLayout,la as CSmartFilter,LD as CSmartTable,HD as CStandardPage,Ea as CTable,MD as CTableBody,AD as CTableCell,BD as CTableContainer,FD as CTableHead,ED as CTableRow,ji as CVariantManagement,mp as CVariantManager,Uc as CVoiceWaveOverlay,qd as CWaterfallChart,Gn as CodeBlock,Sz as CopilotChat,dT as GlobalMessage,jn as MarkdownRenderer,Un as MathBlock,Yl as MermaidBlock,vd as NavigationIsland,Tn as ORBCAFE_I18N_MESSAGES,Ci as OrbcafeI18nProvider,UN as PAGE_TRANSITION_PRESETS,M5 as PAppPageLayout,xF as PBarcodeScanner,Sm as PNavIsland,EF as PNumericKeypad,fm as PSmartFilter,ZC as PTable,TF as PTouchCard,bm as PWorkloadNav,_u as PivotChartPanel,pg as StdChat,ec as TableBlock,ds as ThinkBlock,yl as TreeMenu,G5 as VoiceNavigatorProvider,L5 as VoiceWaveOverlay,Oi as buildAmapEmbedUrl,En as buildGoogleMapEmbedUrl,GI as buildGoogleMapIframe,zg as buttonVariants,lu as createKanbanBoardModel,zo as findKanbanCard,_1 as message,ra as messageManager,ys as moveKanbanCard,ls as parseMarkdownTable,OM as renderMarkdown,Dp as resolveVariantFilters,as as resolveVariantLayout,yk as useAINav,aM as useAmapEmbedUrl,Pz as useAuthPage,tu as useDetailInfo,oM as useGoogleMapEmbedUrl,QD as useGraphChartData,qi as useGraphInteraction,_r as useGraphReport,HA as useKanbanBoard,kd as useNavigationIsland,j as useOrbcafeI18n,dF as usePadLayout,mF as usePadRecordEditor,bu as usePageLayout,nF as usePivotTable,bg as usePlanningGantt,tN as usePlanningLayout,jD as useStandardReport,js as useVoiceInput,U5 as useVoiceNavigator};
|