orbcafe-ui 1.4.2 → 1.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,19 +1,19 @@
1
- import {a}from'./chunk-74Z76O3S.mjs';export{b as COrbCanvas}from'./chunk-74Z76O3S.mjs';import*as Kt from'react';import Kt__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,MicOff,Mic,SendHorizontal,Plus,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 Tp from'@mui/material/Dialog';import Ip from'@mui/material/DialogTitle';import Pp from'@mui/material/DialogContent';import dh from'@mui/material/DialogContentText';import Rp from'@mui/material/DialogActions';import ui from'@mui/material/Box';import mh from'@mui/icons-material/CheckCircle';import gh from'@mui/icons-material/Warning';import fh from'@mui/icons-material/Error';import hh from'@mui/icons-material/Info';import {styled,Paper,IconButton,Tooltip,TextField,InputAdornment,CircularProgress,Dialog,DialogTitle,Box,Typography,DialogContent,Stack,Button,TableContainer,Table,TableHead,TableRow,TableCell,TableBody,Checkbox,DialogActions,Link,MenuItem,Chip,InputBase,useTheme,Autocomplete,FormControlLabel,Menu,ListItemText,Divider,Collapse,Grid,ListItemIcon,Alert,Tabs,Tab,LinearProgress,Avatar,AppBar,Toolbar,createTheme,ThemeProvider,FormControl,Select,Switch,Portal,useMediaQuery,Drawer,Popover,ListSubheader,Badge,TableFooter,InputLabel}from'@mui/material';import {alpha,useTheme as useTheme$1,createTheme as createTheme$1,ThemeProvider as ThemeProvider$1}from'@mui/material/styles';import Mh from'@mui/icons-material/Clear';import Dh from'@mui/icons-material/Close';import nu from'@mui/icons-material/Search';import $x from'@mui/material/Paper';import Gx from'@mui/material/Table';import Ux from'@mui/material/TableBody';import Js from'@mui/material/TableCell';import Ap from'@mui/material/TableContainer';import nb from'@mui/material/TableHead';import ib from'@mui/material/TableRow';import Mp from'@mui/material/TextField';import Rl from'@mui/material/Button';import Dp 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 Kh from'@mui/icons-material/ViewColumn';import vp from'@mui/icons-material/Save';import _h from'@mui/icons-material/Download';import jh from'@mui/icons-material/AccountTree';import Zh from'@mui/icons-material/Functions';import Xh from'@mui/icons-material/Insights';import Tu from'@mui/icons-material/Add';import Qh from'@mui/icons-material/Edit';import Jh from'@mui/icons-material/Delete';import eb from'@mui/icons-material/KeyboardArrowLeft';import Tf from'@mui/icons-material/KeyboardArrowRight';import lb from'@mui/material/Checkbox';import sb from'@mui/material/TableSortLabel';import cb from'@mui/material/IconButton';import db from'@mui/material/Tooltip';import ub from'@mui/icons-material/UnfoldMore';import pb from'@mui/icons-material/UnfoldLess';import {arrayMove,SortableContext,horizontalListSortingStrategy,verticalListSortingStrategy,useSortable}from'@dnd-kit/sortable';import kb from'@mui/icons-material/KeyboardArrowDown';import zb from'@mui/icons-material/Check';import ku from'@mui/icons-material/ClearAll';import Su from'@mui/icons-material/ArrowUpward';import wu from'@mui/icons-material/ArrowDownward';import Nb from'@mui/icons-material/VisibilityOff';import Hb from'@mui/icons-material/DeleteOutline';import Sy from'@mui/icons-material/MicNoneOutlined';import wy from'@mui/icons-material/SettingsOutlined';import Ty from'@mui/icons-material/SendOutlined';import vx from'@mui/icons-material/Settings';import Cx from'@mui/icons-material/KeyboardArrowUp';import Sx from'@mui/icons-material/ArrowRightAlt';import qy 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 nx from'@mui/icons-material/CalendarMonth';import lx from'@mui/icons-material/ArrowForward';import Ir from'dayjs';import sx from'dayjs/plugin/isBetween';import cx from'dayjs/plugin/localizedFormat';import dx from'dayjs/plugin/customParseFormat';import'dayjs/locale/zh-cn';import'dayjs/locale/fr';import'dayjs/locale/de';import'dayjs/locale/ja';import'dayjs/locale/ko';import Nx from'@mui/icons-material/StarBorder';import Vx from'@mui/icons-material/ViewQuilt';import iv from'@mui/icons-material/CloseOutlined';import i0 from'@mui/icons-material/ContentCopyOutlined';import l0 from'@mui/icons-material/CheckOutlined';import z0 from'@mui/icons-material/ExpandMore';import jv from'@mui/icons-material/AddRounded';import um from'@mui/icons-material/Language';import Zv from'@mui/icons-material/DesktopWindows';import Xv from'@mui/icons-material/DarkMode';import Yv from'@mui/icons-material/LightMode';import Jv from'@mui/icons-material/Logout';import kC from'@mui/icons-material/DragIndicator';import HC from'@mui/icons-material/FilterList';import WC from'@mui/icons-material/TableRows';import PC from'@mui/icons-material/LayersClear';import Ok from'@mui/icons-material/CameraAltRounded';import Hk from'@mui/icons-material/QrCodeScannerRounded';import Uk from'@mui/icons-material/DragIndicatorRounded';import jk from'@mui/icons-material/BackspaceRounded';import Zk from'@mui/icons-material/CloseRounded';import Xk from'@mui/icons-material/CheckRounded';import uS from'@mui/icons-material/SearchRounded';import pS from'@mui/icons-material/MenuOpenRounded';import mS from'@mui/icons-material/MenuRounded';import gS from'@mui/icons-material/ExpandMoreRounded';import fS from'@mui/icons-material/ChevronRightRounded';import LS from'next/dynamic';import {AnimatePresence,motion}from'framer-motion';import _w from'react-markdown';import jw from'remark-gfm';import Zw from'remark-math';import Xw from'rehype-katex';import Yw 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 Wg from'mermaid';import s1 from'@mui/icons-material/MicRounded';import c1 from'@mui/icons-material/MicOffRounded';import {InsertDriveFile,Close,Stop}from'@mui/icons-material';import g1 from'@mui/icons-material/SendRounded';import h1 from'@mui/icons-material/HardwareRounded';import G1 from'@mui/icons-material/LockOutlined';import yf from'@mui/icons-material/MailOutline';import xf from'@mui/icons-material/PersonOutline';import U1 from'@mui/icons-material/VpnKeyOutlined';import iT from'dayjs/plugin/isoWeek';import wT from'@mui/icons-material/KeyboardDoubleArrowLeftOutlined';import TT from'@mui/icons-material/KeyboardDoubleArrowRightOutlined';import IT from'@mui/icons-material/SplitscreenOutlined';import PT from'@mui/icons-material/Sort';function Xo(...e){return twMerge(clsx(e))}var Ns={primary:"#000000",primaryHover:"#333333"},Ui={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"},qn={none:"rounded-none",sm:"rounded-sm",md:"rounded-md",full:"rounded-full"},$d=()=>"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 Vf=cva($d(),{variants:{variant:{default:`${Ui.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:`${Ui.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:Ui.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-[${Ns.primary}] hover:bg-[${Ns.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:qn.none,sm:qn.sm,md:qn.md,full:qn.full}},defaultVariants:{variant:"default",size:"default",rounded:"md"}}),Vs=Kt.forwardRef(({className:e,variant:t,size:o,asChild:r=false,...a},n)=>jsx(r?Slot:"button",{className:Xo(Vf({variant:t,size:o,className:e})),ref:n,...a}));Vs.displayName="Button";var Hf={"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.searchAddFeature":"Add feature","header.searchSend":"Send","header.searchStartVoice":"Start voice input","header.searchStopVoice":"Stop voice input","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}","navigation.mode.switchToFixed":"Switch to fixed navigation","navigation.mode.switchToFloating":"Switch to floating navigation","table.toolbar.searchPlaceholder":"Search...","table.title.default":"Data Table","table.toolbar.groupBy":"Group By","table.toolbar.summary":"Summary","table.toolbar.columns":"Columns","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Items per page:","table.toolbar.pageOf":"Page {current} of {total}","table.toolbar.newItem":"New Item","table.toolbar.editItem":"Edit Item","table.toolbar.deleteItem":"Delete Item","table.toolbar.graphicReport":"Graphic Report","table.toolbar.saveLayout":"Save Layout","table.menu.groupBy":"Group By","table.menu.clearAll":"Clear All","table.menu.visibleColumns":"Visible Columns","table.menu.showSummaryRow":"Show Summary Row","table.menu.noNumericColumns":"No numeric columns","table.group.expandAll":"Expand All Groups","table.group.collapseAll":"Collapse All Groups","table.mobile.notImplemented":"Mobile View Not Implemented","table.headerMenu.sortAsc":"Sort Ascending","table.headerMenu.sortDesc":"Sort Descending","table.headerMenu.clearSort":"Clear Sort","table.headerMenu.configureSort":"Configure Sort...","table.headerMenu.group":"Group by this column","table.headerMenu.ungroup":"Remove from grouping","table.headerMenu.addSummary":"Include in Summary","table.headerMenu.removeSummary":"Remove from Summary","table.headerMenu.hideColumn":"Hide Column","table.sortDialog.title":"Sort Settings","table.sortDialog.empty":"No sort rules. Add one to start ordering rows.","table.sortDialog.addRule":"Add Sort Rule","table.sortDialog.clearAll":"Clear All","table.sortDialog.asc":"Ascending","table.sortDialog.desc":"Descending","pivot.title.default":"Pivot Table Builder","pivot.subtitle.default":"Drag fields to configure the pivot table.","pivot.empty":"Drag at least one field into Values to render the pivot result.","pivot.records":"Records","pivot.afterFilter":"After filter","pivot.grandTotal":"Grand Total","pivot.resultLabel":"Result","pivot.valueLabel":"Value","pivot.table.dimensions":"Dimensions","pivot.config.title":"Configuration","pivot.fieldList":"Field List","pivot.availableDimensions":"Available dimensions","pivot.allFieldsInUse":"All fields are in use.","pivot.zone.rows":"Rows","pivot.zone.columns":"Columns","pivot.zone.filters":"Filters","pivot.zone.values":"Values","pivot.hint.rows":"Drag fields here to build row hierarchy","pivot.hint.columns":"Drag fields here to build column hierarchy","pivot.hint.filters":"Drag fields here for report filters","pivot.hint.values":"Drag numeric fields here for aggregation","pivot.clearArea":"Clear area","pivot.filter.na":"N/A","pivot.filter.noValues":"No values","pivot.filter.noneSelected":"None selected","pivot.filter.allValues":"All values","pivot.filter.selectedCount":"{selected} / {total} selected","pivot.filter.selectAll":"Select All","pivot.filter.deselectAll":"Deselect All","pivot.filter.noResults":"No results","pivot.collapse.ariaExpand":"Expand configuration area","pivot.collapse.ariaCollapse":"Collapse configuration area","pivot.agg.sum":"Sum","pivot.agg.count":"Count","pivot.agg.avg":"Average","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"Select preset","pivot.preset.save":"Save preset","pivot.preset.delete":"Delete preset","pivot.preset.saveDialogTitle":"Save current preset","pivot.preset.nameLabel":"Preset name","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"Pivot Result","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"Expand pivot result","pivot.table.collapse.ariaCollapse":"Collapse pivot result","pivot.chart.title":"Pivot Chart","pivot.chart.subtitle":"Map one dimension and up to two measures into a compact chart.","pivot.chart.subtitleReady":"{dimension} by {measure}","pivot.chart.emptyNoDimension":"Add at least one row or column field to render the chart.","pivot.chart.emptyNoValue":"Add at least one value field to render the chart.","pivot.chart.emptyNoData":"No data available for the current chart selection.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Measure","pivot.chart.secondaryMeasure":"Compare measure","pivot.chart.chartType":"Chart type","pivot.chart.style.barVertical":"Vertical bars","pivot.chart.style.barHorizontal":"Horizontal bars","pivot.chart.style.line":"Line","pivot.chart.style.scatter":"Scatter","pivot.chart.collapse.ariaExpand":"Expand chart area","pivot.chart.collapse.ariaCollapse":"Collapse chart area","smartFilter.adaptFilters":"Adapt Filters","smartFilter.addFilters":"Add Filters","smartFilter.go":"Go","smartFilter.visibleFilters":"Visible Filters","smartFilter.searchPlaceholder":"Search...","smartFilter.noOptionsFound":"No options found","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"Equals","smartFilter.operator.contains":"Contains","smartFilter.operator.notContains":"Does Not Contain","smartFilter.operator.wildcard":"Wildcard Search","smartFilter.operator.notEquals":"Not Equals","smartFilter.operator.greaterThan":"Greater Than","smartFilter.operator.lessThan":"Less Than","smartFilter.operator.greaterOrEqual":"Greater Than or Equal","smartFilter.operator.lessOrEqual":"Less Than or Equal","smartFilter.operator.between":"Between","variant.noOptions":"No options","variant.defaultSuffix":"Default","variant.selectVariant":"Select Variant","variant.saveView":"Save View","variant.newVariant":"New Variant","variant.viewName":"View Name","variant.setDefault":"Set as Default","variant.publicAllUsers":"Public (All Users)","variant.toast.fetchFailed":"Failed to load variants","variant.toast.saveFailed":"Failed to save variant","variant.toast.saveSuccess":"Variant saved successfully","variant.toast.deleteFailed":"Failed to delete variant","variant.toast.deleteSuccess":"Variant deleted successfully","variant.toast.defaultFailed":"Failed to update default variant","variant.toast.defaultSuccess":"Default variant updated","layout.saveLayout":"Save Layout","layout.layoutOptions":"Layout Options","layout.selectLayout":"Select Layout","layout.saveCurrentLayout":"Save Current Layout...","layout.noSavedLayouts":"No saved layouts","layout.removeDefault":"Remove Default","layout.setAsDefault":"Set as Default","layout.layoutName":"Layout Name","layout.layoutDescription":"Description","layout.layoutNameHelper":"e.g., 'Compact View'","layout.warningOverwrite":"Warning: Existing layout will be overwritten","layout.useAsDefault":"Use as Default Layout","layout.publicAllUsers":"Public (Visible to all users)","layout.toast.loadFallback":"Failed to load layouts from backend, fallback to local storage","layout.toast.saveSuccess":"Layout saved successfully","layout.toast.saveLocalSuccess":"Layout saved to local storage","layout.toast.backendUnavailableSavedLocal":"Backend unavailable, saved to local storage","layout.toast.deleteSuccess":"Layout deleted successfully","layout.toast.deleteLocalSuccess":"Layout deleted from local storage","layout.toast.backendUnavailableDeletedLocal":"Backend unavailable, deleted from local storage","layout.toast.defaultSuccess":"Default layout set","layout.toast.defaultLocalSuccess":"Default layout set in local storage","layout.toast.backendUnavailableDefaultLocal":"Backend unavailable, default saved to local storage","dateRange.label":"Date Range","dateRange.startDate":"Start Date","dateRange.endDate":"End Date","dateRange.select":"Select...","dateRange.today":"Today","dateRange.thisWeek":"This Week","dateRange.thisMonth":"This Month","graph.records":"{count} records","graph.kpi.totalRecords":"Total Records","graph.kpi.totalReport":"Total Report","graph.kpi.totalBillable":"Total Billable","graph.kpi.efficiency":"Efficiency","graph.kpi.amount":"Amount","graph.kpi.flagged":"Flagged","graph.chart.billable.title":"Billable by Dimension","graph.chart.billable.subtitle":"Top values by billable hours","graph.chart.efficiency.title":"Efficiency by Person","graph.chart.efficiency.subtitle":"Lowest efficiency first","graph.chart.status.title":"Status Distribution","graph.chart.status.subtitle":"Record ratio by status","graph.dataBody":"Data Body","graph.reportTitle":"Graphic Report","graph.unassigned":"Unassigned","graph.column.reportHours":"Report Hours","graph.column.billableHours":"Billable Hours","detail.searchAi.placeholder":"Search fields, or ask AI if no match...","detail.searchAi.matches":"{count} matches found","detail.searchAi.noMatch":"No matching field found.","detail.searchAi.autoAiFallback":"No direct match. Triggering AI analysis...","detail.searchAi.aiResultTitle":"AI Insight","detail.table.title":"Related Records","kanban.empty":"Drop cards here","kanban.bucket.limit":"Limit","kanban.bucket.dropHere":"Release to move into this bucket","kanban.card.progress":"Progress","kanban.card.openDetail":"Open Detail","kanban.priority.critical":"Critical","kanban.priority.high":"High","kanban.priority.medium":"Medium","kanban.priority.low":"Low","quickCreate.newItem":"New Item","quickCreate.createWithTitle":"Create {title}","quickEdit.editWithTitle":"Edit {title}","quickDelete.confirmTitle":"Confirm Delete","quickDelete.confirmMessageSingle":"Are you sure you want to delete the selected record?","quickDelete.confirmMessageMultiple":"Are you sure you want to delete {count} selected records?","messageBox.confirm":"OK","messageBox.cancel":"Cancel"},Wf={"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.searchAddFeature":"\u589E\u52A0\u529F\u80FD","header.searchSend":"\u53D1\u9001","header.searchStartVoice":"\u5F00\u59CB\u8BED\u97F3\u8F93\u5165","header.searchStopVoice":"\u505C\u6B62\u8BED\u97F3\u8F93\u5165","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}","navigation.mode.switchToFixed":"\u5207\u6362\u4E3A\u56FA\u5B9A\u5BFC\u822A","navigation.mode.switchToFloating":"\u5207\u6362\u4E3A\u60AC\u6D6E\u5BFC\u822A","table.toolbar.searchPlaceholder":"\u641C\u7D22...","table.title.default":"\u6570\u636E\u8868","table.toolbar.groupBy":"\u5206\u7EC4","table.toolbar.summary":"\u6C47\u603B","table.toolbar.columns":"\u5217","table.toolbar.export":"\u5BFC\u51FA","table.toolbar.itemsPerPage":"\u6BCF\u9875\u6761\u6570\uFF1A","table.toolbar.pageOf":"\u7B2C {current} / {total} \u9875","table.toolbar.newItem":"\u65B0\u5EFA\u6761\u76EE","table.toolbar.editItem":"\u7F16\u8F91\u6761\u76EE","table.toolbar.deleteItem":"\u5220\u9664\u6761\u76EE","table.toolbar.graphicReport":"\u56FE\u8868\u62A5\u8868","table.toolbar.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","table.menu.groupBy":"\u5206\u7EC4","table.menu.clearAll":"\u6E05\u7A7A","table.menu.visibleColumns":"\u53EF\u89C1\u5217","table.menu.showSummaryRow":"\u663E\u793A\u6C47\u603B\u884C","table.menu.noNumericColumns":"\u6CA1\u6709\u6570\u503C\u5217","table.group.expandAll":"\u5C55\u5F00\u5168\u90E8\u5206\u7EC4","table.group.collapseAll":"\u6298\u53E0\u5168\u90E8\u5206\u7EC4","table.mobile.notImplemented":"\u79FB\u52A8\u7AEF\u89C6\u56FE\u6682\u672A\u5B9E\u73B0","table.headerMenu.sortAsc":"\u5347\u5E8F\u6392\u5217","table.headerMenu.sortDesc":"\u964D\u5E8F\u6392\u5217","table.headerMenu.clearSort":"\u6E05\u9664\u6392\u5E8F","table.headerMenu.configureSort":"\u6392\u5E8F\u8BBE\u7F6E...","table.headerMenu.group":"\u6309\u6B64\u5217\u5206\u7EC4","table.headerMenu.ungroup":"\u53D6\u6D88\u5206\u7EC4","table.headerMenu.addSummary":"\u52A0\u5165\u6C47\u603B","table.headerMenu.removeSummary":"\u4ECE\u6C47\u603B\u4E2D\u79FB\u9664","table.headerMenu.hideColumn":"\u9690\u85CF\u8BE5\u5217","table.sortDialog.title":"\u6392\u5E8F\u8BBE\u7F6E","table.sortDialog.empty":"\u6682\u65E0\u6392\u5E8F\u89C4\u5219\uFF0C\u8BF7\u6DFB\u52A0\u89C4\u5219\u8FDB\u884C\u6392\u5E8F\u3002","table.sortDialog.addRule":"\u6DFB\u52A0\u6392\u5E8F\u89C4\u5219","table.sortDialog.clearAll":"\u6E05\u7A7A\u89C4\u5219","table.sortDialog.asc":"\u5347\u5E8F","table.sortDialog.desc":"\u964D\u5E8F","pivot.title.default":"\u6570\u636E\u900F\u89C6\u8868","pivot.subtitle.default":"\u62D6\u62FD\u5B57\u6BB5\u4EE5\u914D\u7F6E\u900F\u89C6\u8868\u3002","pivot.empty":"\u8BF7\u81F3\u5C11\u62D6\u5165\u4E00\u4E2A\u503C\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u900F\u89C6\u7ED3\u679C\u3002","pivot.records":"\u8BB0\u5F55\u6570","pivot.afterFilter":"\u7B5B\u9009\u540E","pivot.grandTotal":"\u603B\u8BA1","pivot.resultLabel":"\u7ED3\u679C","pivot.valueLabel":"\u503C","pivot.table.dimensions":"\u7EF4\u5EA6","pivot.config.title":"\u5E03\u5C40\u914D\u7F6E","pivot.fieldList":"\u5B57\u6BB5\u5217\u8868","pivot.availableDimensions":"\u53EF\u7528\u7EF4\u5EA6","pivot.allFieldsInUse":"\u6240\u6709\u5B57\u6BB5\u90FD\u5DF2\u4F7F\u7528\u3002","pivot.zone.rows":"\u884C","pivot.zone.columns":"\u5217","pivot.zone.filters":"\u7B5B\u9009","pivot.zone.values":"\u503C","pivot.hint.rows":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u6784\u5EFA\u884C\u5C42\u7EA7","pivot.hint.columns":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u6784\u5EFA\u5217\u5C42\u7EA7","pivot.hint.filters":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u4F5C\u4E3A\u62A5\u8868\u7B5B\u9009","pivot.hint.values":"\u5C06\u6570\u503C\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u8FDB\u884C\u805A\u5408","pivot.clearArea":"\u6E05\u7A7A\u533A\u57DF","pivot.filter.na":"\u4E0D\u53EF\u7528","pivot.filter.noValues":"\u65E0\u53EF\u9009\u503C","pivot.filter.noneSelected":"\u672A\u9009\u62E9","pivot.filter.allValues":"\u5168\u90E8\u503C","pivot.filter.selectedCount":"\u5DF2\u9009 {selected} / {total}","pivot.filter.selectAll":"\u5168\u9009","pivot.filter.deselectAll":"\u53D6\u6D88\u5168\u9009","pivot.filter.noResults":"\u65E0\u5339\u914D\u7ED3\u679C","pivot.collapse.ariaExpand":"\u5C55\u5F00\u914D\u7F6E\u533A\u57DF","pivot.collapse.ariaCollapse":"\u6298\u53E0\u914D\u7F6E\u533A\u57DF","pivot.agg.sum":"\u6C42\u548C","pivot.agg.count":"\u8BA1\u6570","pivot.agg.avg":"\u5E73\u5747\u503C","pivot.agg.min":"\u6700\u5C0F\u503C","pivot.agg.max":"\u6700\u5927\u503C","pivot.preset.selectPlaceholder":"\u9009\u62E9\u65B9\u6848","pivot.preset.save":"\u4FDD\u5B58\u65B9\u6848","pivot.preset.delete":"\u5220\u9664\u65B9\u6848","pivot.preset.saveDialogTitle":"\u4FDD\u5B58\u5F53\u524D\u65B9\u6848","pivot.preset.nameLabel":"\u65B9\u6848\u540D\u79F0","pivot.preset.defaultName":"\u65B9\u6848 {index}","pivot.table.sectionTitle":"\u900F\u89C6\u7ED3\u679C","pivot.table.expandRowsAll":"\u884C\u5168\u90E8\u6253\u5F00","pivot.table.collapseRowsAll":"\u884C\u5168\u90E8\u6298\u53E0","pivot.table.expandColumnsAll":"\u5217\u5168\u90E8\u6253\u5F00","pivot.table.collapseColumnsAll":"\u5217\u5168\u90E8\u6298\u53E0","pivot.table.collapse.ariaExpand":"\u5C55\u5F00\u900F\u89C6\u7ED3\u679C","pivot.table.collapse.ariaCollapse":"\u6298\u53E0\u900F\u89C6\u7ED3\u679C","pivot.chart.title":"\u900F\u89C6\u56FE\u8868","pivot.chart.subtitle":"\u5C06\u4E00\u4E2A\u7EF4\u5EA6\u4E0E\u6700\u591A\u4E24\u4E2A\u5EA6\u91CF\u6620\u5C04\u4E3A\u7D27\u51D1\u56FE\u8868\u3002","pivot.chart.subtitleReady":"{dimension} \xB7 {measure}","pivot.chart.emptyNoDimension":"\u8BF7\u81F3\u5C11\u653E\u5165\u4E00\u4E2A\u884C\u6216\u5217\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u56FE\u8868\u3002","pivot.chart.emptyNoValue":"\u8BF7\u81F3\u5C11\u653E\u5165\u4E00\u4E2A\u503C\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u56FE\u8868\u3002","pivot.chart.emptyNoData":"\u5F53\u524D\u56FE\u8868\u9009\u62E9\u4E0B\u6682\u65E0\u53EF\u5C55\u793A\u6570\u636E\u3002","pivot.chart.dimension":"\u56FE\u8868\u7EF4\u5EA6","pivot.chart.primaryMeasure":"\u4E3B\u5EA6\u91CF","pivot.chart.secondaryMeasure":"\u5BF9\u6BD4\u5EA6\u91CF","pivot.chart.chartType":"\u56FE\u8868\u7C7B\u578B","pivot.chart.style.barVertical":"\u7EB5\u5411\u67F1\u72B6\u56FE","pivot.chart.style.barHorizontal":"\u6A2A\u5411\u67F1\u72B6\u56FE","pivot.chart.style.line":"\u6298\u7EBF\u56FE","pivot.chart.style.scatter":"\u6563\u70B9\u56FE","pivot.chart.collapse.ariaExpand":"\u5C55\u5F00\u56FE\u8868\u533A\u57DF","pivot.chart.collapse.ariaCollapse":"\u6298\u53E0\u56FE\u8868\u533A\u57DF","smartFilter.adaptFilters":"\u7B5B\u9009\u8BBE\u7F6E","smartFilter.addFilters":"\u6DFB\u52A0\u7B5B\u9009","smartFilter.go":"\u6267\u884C","smartFilter.visibleFilters":"\u53EF\u89C1\u7B5B\u9009\u9879","smartFilter.searchPlaceholder":"\u641C\u7D22...","smartFilter.noOptionsFound":"\u672A\u627E\u5230\u9009\u9879","smartFilter.min":"\u6700\u5C0F\u503C","smartFilter.max":"\u6700\u5927\u503C","smartFilter.minMaxPlaceholder":"\u6700\u5C0F\u503C - \u6700\u5927\u503C","smartFilter.operator.equals":"\u7B49\u4E8E","smartFilter.operator.contains":"\u5305\u542B","smartFilter.operator.notContains":"\u4E0D\u5305\u542B","smartFilter.operator.wildcard":"\u901A\u914D\u7B26\u641C\u7D22","smartFilter.operator.notEquals":"\u4E0D\u7B49\u4E8E","smartFilter.operator.greaterThan":"\u5927\u4E8E","smartFilter.operator.lessThan":"\u5C0F\u4E8E","smartFilter.operator.greaterOrEqual":"\u5927\u4E8E\u7B49\u4E8E","smartFilter.operator.lessOrEqual":"\u5C0F\u4E8E\u7B49\u4E8E","smartFilter.operator.between":"\u533A\u95F4","variant.noOptions":"\u65E0\u9009\u9879","variant.defaultSuffix":"\u9ED8\u8BA4","variant.selectVariant":"\u9009\u62E9\u89C6\u56FE","variant.saveView":"\u4FDD\u5B58\u89C6\u56FE","variant.newVariant":"\u65B0\u89C6\u56FE","variant.viewName":"\u89C6\u56FE\u540D\u79F0","variant.setDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","variant.publicAllUsers":"\u516C\u5F00\uFF08\u6240\u6709\u7528\u6237\uFF09","variant.toast.fetchFailed":"\u52A0\u8F7D\u89C6\u56FE\u5931\u8D25","variant.toast.saveFailed":"\u4FDD\u5B58\u89C6\u56FE\u5931\u8D25","variant.toast.saveSuccess":"\u89C6\u56FE\u4FDD\u5B58\u6210\u529F","variant.toast.deleteFailed":"\u5220\u9664\u89C6\u56FE\u5931\u8D25","variant.toast.deleteSuccess":"\u89C6\u56FE\u5220\u9664\u6210\u529F","variant.toast.defaultFailed":"\u66F4\u65B0\u9ED8\u8BA4\u89C6\u56FE\u5931\u8D25","variant.toast.defaultSuccess":"\u9ED8\u8BA4\u89C6\u56FE\u5DF2\u66F4\u65B0","layout.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","layout.layoutOptions":"\u5E03\u5C40\u9009\u9879","layout.selectLayout":"\u9009\u62E9\u5E03\u5C40","layout.saveCurrentLayout":"\u4FDD\u5B58\u5F53\u524D\u5E03\u5C40...","layout.noSavedLayouts":"\u6682\u65E0\u5DF2\u4FDD\u5B58\u5E03\u5C40","layout.removeDefault":"\u53D6\u6D88\u9ED8\u8BA4","layout.setAsDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","layout.layoutName":"\u5E03\u5C40\u540D\u79F0","layout.layoutDescription":"\u63CF\u8FF0","layout.layoutNameHelper":"\u4F8B\u5982\uFF1A\u7D27\u51D1\u89C6\u56FE","layout.warningOverwrite":"\u8B66\u544A\uFF1A\u5C06\u8986\u76D6\u540C\u540D\u5E03\u5C40","layout.useAsDefault":"\u7528\u4F5C\u9ED8\u8BA4\u5E03\u5C40","layout.publicAllUsers":"\u516C\u5F00\uFF08\u6240\u6709\u7528\u6237\u53EF\u89C1\uFF09","layout.toast.loadFallback":"\u540E\u7AEF\u52A0\u8F7D\u5E03\u5C40\u5931\u8D25\uFF0C\u5DF2\u56DE\u9000\u5230\u672C\u5730\u5B58\u50A8","layout.toast.saveSuccess":"\u5E03\u5C40\u4FDD\u5B58\u6210\u529F","layout.toast.saveLocalSuccess":"\u5E03\u5C40\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","layout.toast.backendUnavailableSavedLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","layout.toast.deleteSuccess":"\u5E03\u5C40\u5220\u9664\u6210\u529F","layout.toast.deleteLocalSuccess":"\u5E03\u5C40\u5DF2\u4ECE\u672C\u5730\u5B58\u50A8\u5220\u9664","layout.toast.backendUnavailableDeletedLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u5DF2\u4ECE\u672C\u5730\u5B58\u50A8\u5220\u9664","layout.toast.defaultSuccess":"\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u8BBE\u7F6E","layout.toast.defaultLocalSuccess":"\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u5728\u672C\u5730\u5B58\u50A8\u8BBE\u7F6E","layout.toast.backendUnavailableDefaultLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","dateRange.label":"\u65E5\u671F\u8303\u56F4","dateRange.startDate":"\u5F00\u59CB\u65E5\u671F","dateRange.endDate":"\u7ED3\u675F\u65E5\u671F","dateRange.select":"\u8BF7\u9009\u62E9...","dateRange.today":"\u4ECA\u5929","dateRange.thisWeek":"\u672C\u5468","dateRange.thisMonth":"\u672C\u6708","graph.records":"{count} \u6761\u8BB0\u5F55","graph.kpi.totalRecords":"\u603B\u8BB0\u5F55\u6570","graph.kpi.totalReport":"\u603B\u7533\u62A5\u5DE5\u65F6","graph.kpi.totalBillable":"\u603B\u53EF\u8BA1\u8D39\u5DE5\u65F6","graph.kpi.efficiency":"\u6548\u7387","graph.kpi.amount":"\u91D1\u989D","graph.kpi.flagged":"\u6807\u8BB0","graph.chart.billable.title":"\u7EF4\u5EA6\u8BA1\u8D39\u5DE5\u65F6","graph.chart.billable.subtitle":"\u6309\u53EF\u8BA1\u8D39\u5DE5\u65F6\u6392\u5E8F\u524D\u5217","graph.chart.efficiency.title":"\u4EBA\u5458\u6548\u7387","graph.chart.efficiency.subtitle":"\u6309\u6700\u4F4E\u6548\u7387\u4F18\u5148","graph.chart.status.title":"\u72B6\u6001\u5206\u5E03","graph.chart.status.subtitle":"\u6309\u72B6\u6001\u8BB0\u5F55\u5360\u6BD4","graph.dataBody":"\u6570\u636E\u660E\u7EC6","graph.reportTitle":"\u56FE\u8868\u62A5\u8868","graph.unassigned":"\u672A\u5206\u914D","graph.column.reportHours":"\u7533\u62A5\u5DE5\u65F6","graph.column.billableHours":"\u53EF\u8BA1\u8D39\u5DE5\u65F6","detail.searchAi.placeholder":"\u641C\u7D22\u5B57\u6BB5\uFF1B\u5982\u65E0\u7ED3\u679C\u5219\u81EA\u52A8\u89E6\u53D1 AI...","detail.searchAi.matches":"{count} \u6761\u5339\u914D\u7ED3\u679C","detail.searchAi.noMatch":"\u672A\u627E\u5230\u5339\u914D\u5B57\u6BB5\u3002","detail.searchAi.autoAiFallback":"\u672A\u547D\u4E2D\u5B57\u6BB5\uFF0C\u6B63\u5728\u89E6\u53D1 AI \u5206\u6790...","detail.searchAi.aiResultTitle":"AI \u5206\u6790\u7ED3\u679C","detail.table.title":"\u5173\u8054\u8BB0\u5F55","kanban.empty":"\u5C06\u5361\u7247\u62D6\u5230\u8FD9\u91CC","kanban.bucket.limit":"\u4E0A\u9650","kanban.bucket.dropHere":"\u91CA\u653E\u540E\u79FB\u52A8\u5230\u8BE5 bucket","kanban.card.progress":"\u8FDB\u5EA6","kanban.card.openDetail":"\u6253\u5F00\u8BE6\u60C5","kanban.priority.critical":"\u7D27\u6025","kanban.priority.high":"\u9AD8","kanban.priority.medium":"\u4E2D","kanban.priority.low":"\u4F4E","quickCreate.newItem":"\u65B0\u5EFA\u6761\u76EE","quickCreate.createWithTitle":"\u521B\u5EFA{title}","quickEdit.editWithTitle":"\u7F16\u8F91{title}","quickDelete.confirmTitle":"\u786E\u8BA4\u5220\u9664","quickDelete.confirmMessageSingle":"\u786E\u8BA4\u5220\u9664\u5F53\u524D\u9009\u4E2D\u8BB0\u5F55\u5417\uFF1F","quickDelete.confirmMessageMultiple":"\u786E\u8BA4\u5220\u9664\u5DF2\u9009\u4E2D\u7684 {count} \u6761\u8BB0\u5F55\u5417\uFF1F","messageBox.confirm":"\u786E\u5B9A","messageBox.cancel":"\u53D6\u6D88"},$f={"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.searchAddFeature":"Ajouter une fonction","header.searchSend":"Envoyer","header.searchStartVoice":"D\xE9marrer la saisie vocale","header.searchStopVoice":"Arr\xEAter la saisie vocale","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}","navigation.mode.switchToFixed":"Basculer vers la navigation fixe","navigation.mode.switchToFloating":"Basculer vers la navigation flottante","table.toolbar.searchPlaceholder":"Rechercher...","table.title.default":"Tableau de donn\xE9es","table.toolbar.groupBy":"Grouper","table.toolbar.summary":"R\xE9sum\xE9","table.toolbar.columns":"Colonnes","table.toolbar.export":"Exporter","table.toolbar.itemsPerPage":"Lignes par page :","table.toolbar.pageOf":"Page {current} sur {total}","table.toolbar.newItem":"Nouvel \xE9l\xE9ment","table.toolbar.editItem":"Modifier l'\xE9l\xE9ment","table.toolbar.deleteItem":"Supprimer l'\xE9l\xE9ment","table.toolbar.graphicReport":"Rapport graphique","table.toolbar.saveLayout":"Enregistrer la vue","table.menu.groupBy":"Grouper","table.menu.clearAll":"Tout effacer","table.menu.visibleColumns":"Colonnes visibles","table.menu.showSummaryRow":"Afficher la ligne de r\xE9sum\xE9","table.menu.noNumericColumns":"Aucune colonne num\xE9rique","table.group.expandAll":"D\xE9velopper tous les groupes","table.group.collapseAll":"R\xE9duire tous les groupes","table.mobile.notImplemented":"Vue mobile non impl\xE9ment\xE9e","table.headerMenu.sortAsc":"Trier ascendant","table.headerMenu.sortDesc":"Trier descendant","table.headerMenu.clearSort":"Effacer le tri","table.headerMenu.configureSort":"Configurer le tri...","table.headerMenu.group":"Grouper par cette colonne","table.headerMenu.ungroup":"Retirer du groupement","table.headerMenu.addSummary":"Inclure dans le r\xE9sum\xE9","table.headerMenu.removeSummary":"Retirer du r\xE9sum\xE9","table.headerMenu.hideColumn":"Masquer la colonne","table.sortDialog.title":"Param\xE8tres de tri","table.sortDialog.empty":"Aucune r\xE8gle de tri. Ajoutez-en une pour commencer.","table.sortDialog.addRule":"Ajouter une r\xE8gle","table.sortDialog.clearAll":"Tout effacer","table.sortDialog.asc":"Ascendant","table.sortDialog.desc":"Descendant","pivot.title.default":"Tableau crois\xE9 dynamique","pivot.subtitle.default":"Faites glisser les champs pour configurer le tableau crois\xE9.","pivot.empty":"Ajoutez au moins un champ de valeur pour afficher le r\xE9sultat.","pivot.records":"Enregistrements","pivot.afterFilter":"Apr\xE8s filtre","pivot.grandTotal":"Total g\xE9n\xE9ral","pivot.resultLabel":"R\xE9sultat","pivot.valueLabel":"Valeur","pivot.table.dimensions":"Dimensions","pivot.config.title":"Configuration","pivot.fieldList":"Liste des champs","pivot.availableDimensions":"Dimensions disponibles","pivot.allFieldsInUse":"Tous les champs sont d\xE9j\xE0 utilis\xE9s.","pivot.zone.rows":"Lignes","pivot.zone.columns":"Colonnes","pivot.zone.filters":"Filtres","pivot.zone.values":"Valeurs","pivot.hint.rows":"D\xE9posez les champs ici pour construire la hi\xE9rarchie des lignes","pivot.hint.columns":"D\xE9posez les champs ici pour construire la hi\xE9rarchie des colonnes","pivot.hint.filters":"D\xE9posez les champs ici pour les filtres du rapport","pivot.hint.values":"D\xE9posez les champs num\xE9riques ici pour les agr\xE9gations","pivot.clearArea":"Vider la zone","pivot.filter.na":"N/A","pivot.filter.noValues":"Aucune valeur","pivot.filter.noneSelected":"Aucune s\xE9lection","pivot.filter.allValues":"Toutes les valeurs","pivot.filter.selectedCount":"{selected} / {total} s\xE9lectionn\xE9es","pivot.filter.selectAll":"Tout s\xE9lectionner","pivot.filter.deselectAll":"Tout d\xE9s\xE9lectionner","pivot.filter.noResults":"Aucun r\xE9sultat","pivot.collapse.ariaExpand":"D\xE9velopper la zone de configuration","pivot.collapse.ariaCollapse":"R\xE9duire la zone de configuration","pivot.agg.sum":"Somme","pivot.agg.count":"Compte","pivot.agg.avg":"Moyenne","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"S\xE9lectionner un preset","pivot.preset.save":"Enregistrer le preset","pivot.preset.delete":"Supprimer le preset","pivot.preset.saveDialogTitle":"Enregistrer le preset actuel","pivot.preset.nameLabel":"Nom du preset","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"R\xE9sultat du pivot","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"D\xE9velopper le r\xE9sultat du pivot","pivot.table.collapse.ariaCollapse":"R\xE9duire le r\xE9sultat du pivot","pivot.chart.title":"Graphique pivot","pivot.chart.subtitle":"Associez une dimension et jusqu\u2019\xE0 deux mesures dans un graphique compact.","pivot.chart.subtitleReady":"{dimension} par {measure}","pivot.chart.emptyNoDimension":"Ajoutez au moins un champ de ligne ou de colonne pour afficher le graphique.","pivot.chart.emptyNoValue":"Ajoutez au moins un champ de valeur pour afficher le graphique.","pivot.chart.emptyNoData":"Aucune donn\xE9e disponible pour la s\xE9lection actuelle du graphique.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Mesure","pivot.chart.secondaryMeasure":"Mesure de comparaison","pivot.chart.chartType":"Type de graphique","pivot.chart.style.barVertical":"Barres verticales","pivot.chart.style.barHorizontal":"Barres horizontales","pivot.chart.style.line":"Ligne","pivot.chart.style.scatter":"Nuage de points","pivot.chart.collapse.ariaExpand":"D\xE9velopper la zone du graphique","pivot.chart.collapse.ariaCollapse":"R\xE9duire la zone du graphique","smartFilter.adaptFilters":"Adapter les filtres","smartFilter.addFilters":"Ajouter des filtres","smartFilter.go":"Ex\xE9cuter","smartFilter.visibleFilters":"Filtres visibles","smartFilter.searchPlaceholder":"Rechercher...","smartFilter.noOptionsFound":"Aucune option trouv\xE9e","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"\xC9gal \xE0","smartFilter.operator.contains":"Contient","smartFilter.operator.notContains":"Ne contient pas","smartFilter.operator.wildcard":"Recherche g\xE9n\xE9rique","smartFilter.operator.notEquals":"Diff\xE9rent de","smartFilter.operator.greaterThan":"Sup\xE9rieur \xE0","smartFilter.operator.lessThan":"Inf\xE9rieur \xE0","smartFilter.operator.greaterOrEqual":"Sup\xE9rieur ou \xE9gal","smartFilter.operator.lessOrEqual":"Inf\xE9rieur ou \xE9gal","smartFilter.operator.between":"Entre","variant.noOptions":"Aucune option","variant.defaultSuffix":"Par d\xE9faut","variant.selectVariant":"S\xE9lectionner une vue","variant.saveView":"Enregistrer la vue","variant.newVariant":"Nouvelle vue","variant.viewName":"Nom de la vue","variant.setDefault":"D\xE9finir par d\xE9faut","variant.publicAllUsers":"Public (tous les utilisateurs)","variant.toast.fetchFailed":"\xC9chec du chargement des vues","variant.toast.saveFailed":"\xC9chec de l'enregistrement de la vue","variant.toast.saveSuccess":"Vue enregistr\xE9e avec succ\xE8s","variant.toast.deleteFailed":"\xC9chec de la suppression de la vue","variant.toast.deleteSuccess":"Vue supprim\xE9e avec succ\xE8s","variant.toast.defaultFailed":"\xC9chec de la mise \xE0 jour de la vue par d\xE9faut","variant.toast.defaultSuccess":"Vue par d\xE9faut mise \xE0 jour","layout.saveLayout":"Enregistrer la vue","layout.layoutOptions":"Options de vue","layout.selectLayout":"S\xE9lectionner une vue","layout.saveCurrentLayout":"Enregistrer la vue actuelle...","layout.noSavedLayouts":"Aucune vue enregistr\xE9e","layout.removeDefault":"Retirer le d\xE9faut","layout.setAsDefault":"D\xE9finir par d\xE9faut","layout.layoutName":"Nom de la vue","layout.layoutDescription":"Description","layout.layoutNameHelper":"ex. : Vue compacte","layout.warningOverwrite":"Attention : la vue existante sera \xE9cras\xE9e","layout.useAsDefault":"Utiliser comme vue par d\xE9faut","layout.publicAllUsers":"Public (visible par tous les utilisateurs)","layout.toast.loadFallback":"\xC9chec du chargement depuis le backend, bascule vers le stockage local","layout.toast.saveSuccess":"Vue enregistr\xE9e avec succ\xE8s","layout.toast.saveLocalSuccess":"Vue enregistr\xE9e dans le stockage local","layout.toast.backendUnavailableSavedLocal":"Backend indisponible, enregistr\xE9 en local","layout.toast.deleteSuccess":"Vue supprim\xE9e avec succ\xE8s","layout.toast.deleteLocalSuccess":"Vue supprim\xE9e du stockage local","layout.toast.backendUnavailableDeletedLocal":"Backend indisponible, supprim\xE9 en local","layout.toast.defaultSuccess":"Vue par d\xE9faut d\xE9finie","layout.toast.defaultLocalSuccess":"Vue par d\xE9faut d\xE9finie en local","layout.toast.backendUnavailableDefaultLocal":"Backend indisponible, d\xE9faut enregistr\xE9 en local","dateRange.label":"Plage de dates","dateRange.startDate":"Date de d\xE9but","dateRange.endDate":"Date de fin","dateRange.select":"S\xE9lectionner...","dateRange.today":"Aujourd'hui","dateRange.thisWeek":"Cette semaine","dateRange.thisMonth":"Ce mois-ci","graph.records":"{count} enregistrements","graph.kpi.totalRecords":"Total des enregistrements","graph.kpi.totalReport":"Total d\xE9clar\xE9","graph.kpi.totalBillable":"Total facturable","graph.kpi.efficiency":"Efficacit\xE9","graph.kpi.amount":"Montant","graph.kpi.flagged":"Signal\xE9","graph.chart.billable.title":"Facturable par dimension","graph.chart.billable.subtitle":"Top valeurs par heures facturables","graph.chart.efficiency.title":"Efficacit\xE9 par personne","graph.chart.efficiency.subtitle":"Efficacit\xE9 la plus faible en premier","graph.chart.status.title":"R\xE9partition des statuts","graph.chart.status.subtitle":"Ratio des enregistrements par statut","graph.dataBody":"Donn\xE9es","graph.reportTitle":"Rapport graphique","graph.unassigned":"Non attribu\xE9","graph.column.reportHours":"Heures d\xE9clar\xE9es","graph.column.billableHours":"Heures facturables","detail.searchAi.placeholder":"Rechercher des champs, ou interroger l\u2019IA en cas d\u2019absence de r\xE9sultat...","detail.searchAi.matches":"{count} correspondances trouv\xE9es","detail.searchAi.noMatch":"Aucun champ correspondant trouv\xE9.","detail.searchAi.autoAiFallback":"Aucune correspondance directe. Analyse IA en cours...","detail.searchAi.aiResultTitle":"Analyse IA","detail.table.title":"Enregistrements li\xE9s","kanban.empty":"D\xE9posez les cartes ici","kanban.bucket.limit":"Limite","kanban.bucket.dropHere":"Rel\xE2chez pour d\xE9placer dans cette colonne","kanban.card.progress":"Progression","kanban.card.openDetail":"Ouvrir le d\xE9tail","kanban.priority.critical":"Critique","kanban.priority.high":"\xC9lev\xE9e","kanban.priority.medium":"Moyenne","kanban.priority.low":"Faible","quickCreate.newItem":"Nouvel \xE9l\xE9ment","quickCreate.createWithTitle":"Cr\xE9er {title}","quickEdit.editWithTitle":"Modifier {title}","quickDelete.confirmTitle":"Confirmer la suppression","quickDelete.confirmMessageSingle":"Voulez-vous vraiment supprimer l\u2019enregistrement s\xE9lectionn\xE9 ?","quickDelete.confirmMessageMultiple":"Voulez-vous vraiment supprimer les {count} enregistrements s\xE9lectionn\xE9s ?","messageBox.confirm":"OK","messageBox.cancel":"Annuler"},Gf={"common.cancel":"Abbrechen","common.save":"Speichern","common.ok":"OK","common.done":"Fertig","common.search":"Suchen","common.none":"Keine","common.all":"Alle","common.noData":"Keine Daten","common.copy":"Kopieren","common.delete":"L\xF6schen","common.loading":"Wird geladen...","header.searchPlaceholder":"Frag mich...","header.searchAddFeature":"Funktion hinzuf\xFCgen","header.searchSend":"Senden","header.searchStartVoice":"Spracheingabe starten","header.searchStopVoice":"Spracheingabe stoppen","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","navigation.mode.switchToFixed":"Zu fester Navigation wechseln","navigation.mode.switchToFloating":"Zu schwebender Navigation wechseln","table.toolbar.searchPlaceholder":"Suchen...","table.title.default":"Datentabelle","table.toolbar.groupBy":"Gruppieren","table.toolbar.summary":"Zusammenfassung","table.toolbar.columns":"Spalten","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Zeilen pro Seite:","table.toolbar.pageOf":"Seite {current} von {total}","table.toolbar.newItem":"Neuer Eintrag","table.toolbar.editItem":"Eintrag bearbeiten","table.toolbar.deleteItem":"Eintrag l\xF6schen","table.toolbar.graphicReport":"Grafikbericht","table.toolbar.saveLayout":"Layout speichern","table.menu.groupBy":"Gruppieren","table.menu.clearAll":"Alles l\xF6schen","table.menu.visibleColumns":"Sichtbare Spalten","table.menu.showSummaryRow":"Summenzeile anzeigen","table.menu.noNumericColumns":"Keine numerischen Spalten","table.group.expandAll":"Alle Gruppen aufklappen","table.group.collapseAll":"Alle Gruppen zuklappen","table.mobile.notImplemented":"Mobile Ansicht nicht implementiert","table.headerMenu.sortAsc":"Aufsteigend sortieren","table.headerMenu.sortDesc":"Absteigend sortieren","table.headerMenu.clearSort":"Sortierung entfernen","table.headerMenu.configureSort":"Sortierung konfigurieren...","table.headerMenu.group":"Nach dieser Spalte gruppieren","table.headerMenu.ungroup":"Aus Gruppierung entfernen","table.headerMenu.addSummary":"In Summe einbeziehen","table.headerMenu.removeSummary":"Aus Summe entfernen","table.headerMenu.hideColumn":"Spalte ausblenden","table.sortDialog.title":"Sortiereinstellungen","table.sortDialog.empty":"Keine Sortierregeln. F\xFCgen Sie eine hinzu, um zu sortieren.","table.sortDialog.addRule":"Regel hinzuf\xFCgen","table.sortDialog.clearAll":"Alle l\xF6schen","table.sortDialog.asc":"Aufsteigend","table.sortDialog.desc":"Absteigend","pivot.title.default":"Pivot-Tabelle","pivot.subtitle.default":"Ziehen Sie Felder, um die Pivot-Tabelle zu konfigurieren.","pivot.empty":"Ziehen Sie mindestens ein Wertefeld, um das Ergebnis anzuzeigen.","pivot.records":"Datens\xE4tze","pivot.afterFilter":"Nach Filter","pivot.grandTotal":"Gesamtsumme","pivot.resultLabel":"Ergebnis","pivot.valueLabel":"Wert","pivot.table.dimensions":"Dimensionen","pivot.config.title":"Konfiguration","pivot.fieldList":"Feldliste","pivot.availableDimensions":"Verf\xFCgbare Dimensionen","pivot.allFieldsInUse":"Alle Felder sind bereits verwendet.","pivot.zone.rows":"Zeilen","pivot.zone.columns":"Spalten","pivot.zone.filters":"Filter","pivot.zone.values":"Werte","pivot.hint.rows":"Felder hierhin ziehen, um die Zeilenhierarchie zu erstellen","pivot.hint.columns":"Felder hierhin ziehen, um die Spaltenhierarchie zu erstellen","pivot.hint.filters":"Felder hierhin ziehen f\xFCr Berichtsfilter","pivot.hint.values":"Numerische Felder hierhin ziehen f\xFCr Aggregation","pivot.clearArea":"Bereich leeren","pivot.filter.na":"N/V","pivot.filter.noValues":"Keine Werte","pivot.filter.noneSelected":"Nichts ausgew\xE4hlt","pivot.filter.allValues":"Alle Werte","pivot.filter.selectedCount":"{selected} / {total} ausgew\xE4hlt","pivot.filter.selectAll":"Alle ausw\xE4hlen","pivot.filter.deselectAll":"Alle abw\xE4hlen","pivot.filter.noResults":"Keine Ergebnisse","pivot.collapse.ariaExpand":"Konfigurationsbereich erweitern","pivot.collapse.ariaCollapse":"Konfigurationsbereich reduzieren","pivot.agg.sum":"Summe","pivot.agg.count":"Anzahl","pivot.agg.avg":"Durchschnitt","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"Preset w\xE4hlen","pivot.preset.save":"Preset speichern","pivot.preset.delete":"Preset l\xF6schen","pivot.preset.saveDialogTitle":"Aktuelles Preset speichern","pivot.preset.nameLabel":"Preset-Name","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"Pivot-Ergebnis","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"Pivot-Ergebnis erweitern","pivot.table.collapse.ariaCollapse":"Pivot-Ergebnis reduzieren","pivot.chart.title":"Pivot-Diagramm","pivot.chart.subtitle":"Eine Dimension und bis zu zwei Kennzahlen in einem kompakten Diagramm abbilden.","pivot.chart.subtitleReady":"{dimension} nach {measure}","pivot.chart.emptyNoDimension":"F\xFCgen Sie mindestens ein Zeilen- oder Spaltenfeld hinzu, um das Diagramm anzuzeigen.","pivot.chart.emptyNoValue":"F\xFCgen Sie mindestens ein Wertefeld hinzu, um das Diagramm anzuzeigen.","pivot.chart.emptyNoData":"F\xFCr die aktuelle Diagrammauswahl sind keine Daten verf\xFCgbar.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Kennzahl","pivot.chart.secondaryMeasure":"Vergleichskennzahl","pivot.chart.chartType":"Diagrammtyp","pivot.chart.style.barVertical":"Vertikale Balken","pivot.chart.style.barHorizontal":"Horizontale Balken","pivot.chart.style.line":"Linie","pivot.chart.style.scatter":"Streudiagramm","pivot.chart.collapse.ariaExpand":"Diagrammbereich erweitern","pivot.chart.collapse.ariaCollapse":"Diagrammbereich reduzieren","smartFilter.adaptFilters":"Filter anpassen","smartFilter.addFilters":"Filter hinzuf\xFCgen","smartFilter.go":"Los","smartFilter.visibleFilters":"Sichtbare Filter","smartFilter.searchPlaceholder":"Suchen...","smartFilter.noOptionsFound":"Keine Optionen gefunden","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"Gleich","smartFilter.operator.contains":"Enth\xE4lt","smartFilter.operator.notContains":"Enth\xE4lt nicht","smartFilter.operator.wildcard":"Wildcard-Suche","smartFilter.operator.notEquals":"Ungleich","smartFilter.operator.greaterThan":"Gr\xF6\xDFer als","smartFilter.operator.lessThan":"Kleiner als","smartFilter.operator.greaterOrEqual":"Gr\xF6\xDFer gleich","smartFilter.operator.lessOrEqual":"Kleiner gleich","smartFilter.operator.between":"Zwischen","variant.noOptions":"Keine Optionen","variant.defaultSuffix":"Standard","variant.selectVariant":"Variante w\xE4hlen","variant.saveView":"Ansicht speichern","variant.newVariant":"Neue Variante","variant.viewName":"Ansichtsname","variant.setDefault":"Als Standard setzen","variant.publicAllUsers":"\xD6ffentlich (alle Benutzer)","variant.toast.fetchFailed":"Varianten konnten nicht geladen werden","variant.toast.saveFailed":"Variante konnte nicht gespeichert werden","variant.toast.saveSuccess":"Variante erfolgreich gespeichert","variant.toast.deleteFailed":"Variante konnte nicht gel\xF6scht werden","variant.toast.deleteSuccess":"Variante erfolgreich gel\xF6scht","variant.toast.defaultFailed":"Standardvariante konnte nicht aktualisiert werden","variant.toast.defaultSuccess":"Standardvariante aktualisiert","layout.saveLayout":"Layout speichern","layout.layoutOptions":"Layout-Optionen","layout.selectLayout":"Layout w\xE4hlen","layout.saveCurrentLayout":"Aktuelles Layout speichern...","layout.noSavedLayouts":"Keine gespeicherten Layouts","layout.removeDefault":"Standard entfernen","layout.setAsDefault":"Als Standard setzen","layout.layoutName":"Layoutname","layout.layoutDescription":"Beschreibung","layout.layoutNameHelper":"z. B. Kompaktansicht","layout.warningOverwrite":"Warnung: Vorhandenes Layout wird \xFCberschrieben","layout.useAsDefault":"Als Standardlayout verwenden","layout.publicAllUsers":"\xD6ffentlich (f\xFCr alle sichtbar)","layout.toast.loadFallback":"Layouts konnten nicht vom Backend geladen werden, Wechsel zu lokalem Speicher","layout.toast.saveSuccess":"Layout erfolgreich gespeichert","layout.toast.saveLocalSuccess":"Layout im lokalen Speicher gespeichert","layout.toast.backendUnavailableSavedLocal":"Backend nicht verf\xFCgbar, lokal gespeichert","layout.toast.deleteSuccess":"Layout erfolgreich gel\xF6scht","layout.toast.deleteLocalSuccess":"Layout aus lokalem Speicher gel\xF6scht","layout.toast.backendUnavailableDeletedLocal":"Backend nicht verf\xFCgbar, lokal gel\xF6scht","layout.toast.defaultSuccess":"Standardlayout gesetzt","layout.toast.defaultLocalSuccess":"Standardlayout lokal gesetzt","layout.toast.backendUnavailableDefaultLocal":"Backend nicht verf\xFCgbar, Standard lokal gespeichert","dateRange.label":"Datumsbereich","dateRange.startDate":"Startdatum","dateRange.endDate":"Enddatum","dateRange.select":"Ausw\xE4hlen...","dateRange.today":"Heute","dateRange.thisWeek":"Diese Woche","dateRange.thisMonth":"Diesen Monat","graph.records":"{count} Datens\xE4tze","graph.kpi.totalRecords":"Gesamt Datens\xE4tze","graph.kpi.totalReport":"Gesamt Report","graph.kpi.totalBillable":"Gesamt abrechenbar","graph.kpi.efficiency":"Effizienz","graph.kpi.amount":"Betrag","graph.kpi.flagged":"Markiert","graph.chart.billable.title":"Abrechenbar nach Dimension","graph.chart.billable.subtitle":"Top-Werte nach abrechenbaren Stunden","graph.chart.efficiency.title":"Effizienz pro Person","graph.chart.efficiency.subtitle":"Niedrigste Effizienz zuerst","graph.chart.status.title":"Statusverteilung","graph.chart.status.subtitle":"Anteil je Status","graph.dataBody":"Datentabelle","graph.reportTitle":"Grafikbericht","graph.unassigned":"Nicht zugewiesen","graph.column.reportHours":"Melde-Stunden","graph.column.billableHours":"Abrechenbare Stunden","detail.searchAi.placeholder":"Felder suchen, oder bei keinem Treffer die KI fragen...","detail.searchAi.matches":"{count} Treffer gefunden","detail.searchAi.noMatch":"Kein passendes Feld gefunden.","detail.searchAi.autoAiFallback":"Keine direkte \xDCbereinstimmung. KI-Analyse wird gestartet...","detail.searchAi.aiResultTitle":"KI-Ergebnis","detail.table.title":"Verkn\xFCpfte Eintr\xE4ge","kanban.empty":"Karten hier ablegen","kanban.bucket.limit":"Limit","kanban.bucket.dropHere":"Loslassen, um in diese Spalte zu verschieben","kanban.card.progress":"Fortschritt","kanban.card.openDetail":"Detail \xF6ffnen","kanban.priority.critical":"Kritisch","kanban.priority.high":"Hoch","kanban.priority.medium":"Mittel","kanban.priority.low":"Niedrig","quickCreate.newItem":"Neuer Eintrag","quickCreate.createWithTitle":"{title} erstellen","quickEdit.editWithTitle":"{title} bearbeiten","quickDelete.confirmTitle":"L\xF6schen best\xE4tigen","quickDelete.confirmMessageSingle":"M\xF6chten Sie den ausgew\xE4hlten Datensatz wirklich l\xF6schen?","quickDelete.confirmMessageMultiple":"M\xF6chten Sie die {count} ausgew\xE4hlten Datens\xE4tze wirklich l\xF6schen?","messageBox.confirm":"OK","messageBox.cancel":"Abbrechen"},Uf={"common.cancel":"\u30AD\u30E3\u30F3\u30BB\u30EB","common.save":"\u4FDD\u5B58","common.ok":"OK","common.done":"\u5B8C\u4E86","common.search":"\u691C\u7D22","common.none":"\u306A\u3057","common.all":"\u3059\u3079\u3066","common.noData":"\u30C7\u30FC\u30BF\u306A\u3057","common.copy":"\u30B3\u30D4\u30FC","common.delete":"\u524A\u9664","common.loading":"\u8AAD\u307F\u8FBC\u307F\u4E2D...","header.searchPlaceholder":"\u4F55\u304B\u805E\u3044\u3066\u304F\u3060\u3055\u3044...","header.searchAddFeature":"\u6A5F\u80FD\u3092\u8FFD\u52A0","header.searchSend":"\u9001\u4FE1","header.searchStartVoice":"\u97F3\u58F0\u5165\u529B\u3092\u958B\u59CB","header.searchStopVoice":"\u97F3\u58F0\u5165\u529B\u3092\u505C\u6B62","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","navigation.mode.switchToFixed":"\u56FA\u5B9A\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u306B\u5207\u308A\u66FF\u3048","navigation.mode.switchToFloating":"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u306B\u5207\u308A\u66FF\u3048","table.toolbar.searchPlaceholder":"\u691C\u7D22...","table.title.default":"\u30C7\u30FC\u30BF\u30C6\u30FC\u30D6\u30EB","table.toolbar.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.toolbar.summary":"\u96C6\u8A08","table.toolbar.columns":"\u5217","table.toolbar.export":"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8","table.toolbar.itemsPerPage":"1\u30DA\u30FC\u30B8\u306E\u4EF6\u6570\uFF1A","table.toolbar.pageOf":"{current} / {total} \u30DA\u30FC\u30B8","table.toolbar.newItem":"\u65B0\u898F\u4F5C\u6210","table.toolbar.editItem":"\u7DE8\u96C6","table.toolbar.deleteItem":"\u524A\u9664","table.toolbar.graphicReport":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","table.toolbar.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","table.menu.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.menu.clearAll":"\u3059\u3079\u3066\u30AF\u30EA\u30A2","table.menu.visibleColumns":"\u8868\u793A\u5217","table.menu.showSummaryRow":"\u96C6\u8A08\u884C\u3092\u8868\u793A","table.menu.noNumericColumns":"\u6570\u5024\u5217\u304C\u3042\u308A\u307E\u305B\u3093","table.group.expandAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u5C55\u958B","table.group.collapseAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u6298\u308A\u305F\u305F\u3080","table.mobile.notImplemented":"\u30E2\u30D0\u30A4\u30EB\u8868\u793A\u306F\u672A\u5B9F\u88C5\u3067\u3059","table.headerMenu.sortAsc":"\u6607\u9806\u3067\u4E26\u3079\u66FF\u3048","table.headerMenu.sortDesc":"\u964D\u9806\u3067\u4E26\u3079\u66FF\u3048","table.headerMenu.clearSort":"\u4E26\u3079\u66FF\u3048\u3092\u89E3\u9664","table.headerMenu.configureSort":"\u4E26\u3079\u66FF\u3048\u3092\u8A2D\u5B9A...","table.headerMenu.group":"\u3053\u306E\u5217\u3067\u30B0\u30EB\u30FC\u30D7\u5316","table.headerMenu.ungroup":"\u30B0\u30EB\u30FC\u30D7\u304B\u3089\u5916\u3059","table.headerMenu.addSummary":"\u96C6\u8A08\u306B\u8FFD\u52A0","table.headerMenu.removeSummary":"\u96C6\u8A08\u304B\u3089\u524A\u9664","table.headerMenu.hideColumn":"\u5217\u3092\u975E\u8868\u793A","table.sortDialog.title":"\u4E26\u3079\u66FF\u3048\u8A2D\u5B9A","table.sortDialog.empty":"\u4E26\u3079\u66FF\u3048\u30EB\u30FC\u30EB\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","table.sortDialog.addRule":"\u30EB\u30FC\u30EB\u3092\u8FFD\u52A0","table.sortDialog.clearAll":"\u3059\u3079\u3066\u30AF\u30EA\u30A2","table.sortDialog.asc":"\u6607\u9806","table.sortDialog.desc":"\u964D\u9806","pivot.title.default":"\u30D4\u30DC\u30C3\u30C8\u30C6\u30FC\u30D6\u30EB","pivot.subtitle.default":"\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u30D4\u30DC\u30C3\u30C8\u30C6\u30FC\u30D6\u30EB\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002","pivot.empty":"\u7D50\u679C\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5024\u30A8\u30EA\u30A2\u306B\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.records":"\u30EC\u30B3\u30FC\u30C9","pivot.afterFilter":"\u30D5\u30A3\u30EB\u30BF\u30FC\u5F8C","pivot.grandTotal":"\u7DCF\u8A08","pivot.resultLabel":"\u7D50\u679C","pivot.valueLabel":"\u5024","pivot.table.dimensions":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.config.title":"\u8A2D\u5B9A","pivot.fieldList":"\u30D5\u30A3\u30FC\u30EB\u30C9\u4E00\u89A7","pivot.availableDimensions":"\u5229\u7528\u53EF\u80FD\u306A\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.allFieldsInUse":"\u3059\u3079\u3066\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u4F7F\u7528\u4E2D\u3067\u3059\u3002","pivot.zone.rows":"\u884C","pivot.zone.columns":"\u5217","pivot.zone.filters":"\u30D5\u30A3\u30EB\u30BF\u30FC","pivot.zone.values":"\u5024","pivot.hint.rows":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u884C\u968E\u5C64\u3092\u4F5C\u6210","pivot.hint.columns":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u5217\u968E\u5C64\u3092\u4F5C\u6210","pivot.hint.filters":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u30EC\u30DD\u30FC\u30C8\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u8A2D\u5B9A","pivot.hint.values":"\u3053\u3053\u306B\u6570\u5024\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u96C6\u8A08","pivot.clearArea":"\u30A8\u30EA\u30A2\u3092\u30AF\u30EA\u30A2","pivot.filter.na":"N/A","pivot.filter.noValues":"\u5024\u304C\u3042\u308A\u307E\u305B\u3093","pivot.filter.noneSelected":"\u672A\u9078\u629E","pivot.filter.allValues":"\u3059\u3079\u3066\u306E\u5024","pivot.filter.selectedCount":"{selected} / {total} \u3092\u9078\u629E","pivot.filter.selectAll":"\u3059\u3079\u3066\u9078\u629E","pivot.filter.deselectAll":"\u3059\u3079\u3066\u89E3\u9664","pivot.filter.noResults":"\u7D50\u679C\u304C\u3042\u308A\u307E\u305B\u3093","pivot.collapse.ariaExpand":"\u8A2D\u5B9A\u30A8\u30EA\u30A2\u3092\u5C55\u958B","pivot.collapse.ariaCollapse":"\u8A2D\u5B9A\u30A8\u30EA\u30A2\u3092\u6298\u308A\u305F\u305F\u3080","pivot.agg.sum":"\u5408\u8A08","pivot.agg.count":"\u4EF6\u6570","pivot.agg.avg":"\u5E73\u5747","pivot.agg.min":"\u6700\u5C0F","pivot.agg.max":"\u6700\u5927","pivot.preset.selectPlaceholder":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u9078\u629E","pivot.preset.save":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u4FDD\u5B58","pivot.preset.delete":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u524A\u9664","pivot.preset.saveDialogTitle":"\u73FE\u5728\u306E\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u4FDD\u5B58","pivot.preset.nameLabel":"\u30D7\u30EA\u30BB\u30C3\u30C8\u540D","pivot.preset.defaultName":"\u30D7\u30EA\u30BB\u30C3\u30C8 {index}","pivot.table.sectionTitle":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C\u3092\u5C55\u958B","pivot.table.collapse.ariaCollapse":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C\u3092\u6298\u308A\u305F\u305F\u3080","pivot.chart.title":"\u30D4\u30DC\u30C3\u30C8\u30C1\u30E3\u30FC\u30C8","pivot.chart.subtitle":"1\u3064\u306E\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3\u3068\u6700\u59272\u3064\u306E\u6307\u6A19\u3092\u30B3\u30F3\u30D1\u30AF\u30C8\u306A\u30C1\u30E3\u30FC\u30C8\u306B\u307E\u3068\u3081\u307E\u3059\u3002","pivot.chart.subtitleReady":"{dimension} \u3054\u3068\u306E {measure}","pivot.chart.emptyNoDimension":"\u30C1\u30E3\u30FC\u30C8\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u884C\u307E\u305F\u306F\u5217\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.chart.emptyNoValue":"\u30C1\u30E3\u30FC\u30C8\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u5024\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.chart.emptyNoData":"\u73FE\u5728\u306E\u30C1\u30E3\u30FC\u30C8\u9078\u629E\u3067\u306F\u8868\u793A\u3067\u304D\u308B\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093\u3002","pivot.chart.dimension":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.chart.primaryMeasure":"\u6307\u6A19","pivot.chart.secondaryMeasure":"\u6BD4\u8F03\u6307\u6A19","pivot.chart.chartType":"\u30C1\u30E3\u30FC\u30C8\u7A2E\u5225","pivot.chart.style.barVertical":"\u7E26\u68D2\u30B0\u30E9\u30D5","pivot.chart.style.barHorizontal":"\u6A2A\u68D2\u30B0\u30E9\u30D5","pivot.chart.style.line":"\u6298\u308C\u7DDA\u30B0\u30E9\u30D5","pivot.chart.style.scatter":"\u6563\u5E03\u56F3","pivot.chart.collapse.ariaExpand":"\u30C1\u30E3\u30FC\u30C8\u9818\u57DF\u3092\u5C55\u958B","pivot.chart.collapse.ariaCollapse":"\u30C1\u30E3\u30FC\u30C8\u9818\u57DF\u3092\u6298\u308A\u305F\u305F\u3080","smartFilter.adaptFilters":"\u30D5\u30A3\u30EB\u30BF\u30FC\u8ABF\u6574","smartFilter.addFilters":"\u30D5\u30A3\u30EB\u30BF\u30FC\u8FFD\u52A0","smartFilter.go":"\u5B9F\u884C","smartFilter.visibleFilters":"\u8868\u793A\u30D5\u30A3\u30EB\u30BF\u30FC","smartFilter.searchPlaceholder":"\u691C\u7D22...","smartFilter.noOptionsFound":"\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093","smartFilter.min":"\u6700\u5C0F","smartFilter.max":"\u6700\u5927","smartFilter.minMaxPlaceholder":"\u6700\u5C0F - \u6700\u5927","smartFilter.operator.equals":"\u7B49\u3057\u3044","smartFilter.operator.contains":"\u542B\u3080","smartFilter.operator.notContains":"\u542B\u307E\u306A\u3044","smartFilter.operator.wildcard":"\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u691C\u7D22","smartFilter.operator.notEquals":"\u7B49\u3057\u304F\u306A\u3044","smartFilter.operator.greaterThan":"\u3088\u308A\u5927\u304D\u3044","smartFilter.operator.lessThan":"\u3088\u308A\u5C0F\u3055\u3044","smartFilter.operator.greaterOrEqual":"\u4EE5\u4E0A","smartFilter.operator.lessOrEqual":"\u4EE5\u4E0B","smartFilter.operator.between":"\u7BC4\u56F2","variant.noOptions":"\u30AA\u30D7\u30B7\u30E7\u30F3\u306A\u3057","variant.defaultSuffix":"\u30C7\u30D5\u30A9\u30EB\u30C8","variant.selectVariant":"\u30D3\u30E5\u30FC\u3092\u9078\u629E","variant.saveView":"\u30D3\u30E5\u30FC\u4FDD\u5B58","variant.newVariant":"\u65B0\u3057\u3044\u30D3\u30E5\u30FC","variant.viewName":"\u30D3\u30E5\u30FC\u540D","variant.setDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A","variant.publicAllUsers":"\u516C\u958B\uFF08\u5168\u30E6\u30FC\u30B6\u30FC\uFF09","variant.toast.fetchFailed":"\u30D3\u30E5\u30FC\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.saveFailed":"\u30D3\u30E5\u30FC\u306E\u4FDD\u5B58\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.saveSuccess":"\u30D3\u30E5\u30FC\u3092\u4FDD\u5B58\u3057\u307E\u3057\u305F","variant.toast.deleteFailed":"\u30D3\u30E5\u30FC\u306E\u524A\u9664\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.deleteSuccess":"\u30D3\u30E5\u30FC\u3092\u524A\u9664\u3057\u307E\u3057\u305F","variant.toast.defaultFailed":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30D3\u30E5\u30FC\u306E\u66F4\u65B0\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.defaultSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30D3\u30E5\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3057\u305F","layout.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","layout.layoutOptions":"\u30EC\u30A4\u30A2\u30A6\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3","layout.selectLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u9078\u629E","layout.saveCurrentLayout":"\u73FE\u5728\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u5B58...","layout.noSavedLayouts":"\u4FDD\u5B58\u6E08\u307F\u30EC\u30A4\u30A2\u30A6\u30C8\u306A\u3057","layout.removeDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u89E3\u9664","layout.setAsDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A","layout.layoutName":"\u30EC\u30A4\u30A2\u30A6\u30C8\u540D","layout.layoutDescription":"\u8AAC\u660E","layout.layoutNameHelper":"\u4F8B\uFF1A\u30B3\u30F3\u30D1\u30AF\u30C8\u8868\u793A","layout.warningOverwrite":"\u8B66\u544A\uFF1A\u65E2\u5B58\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059","layout.useAsDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3068\u3057\u3066\u4F7F\u7528","layout.publicAllUsers":"\u516C\u958B\uFF08\u5168\u30E6\u30FC\u30B6\u30FC\u306B\u8868\u793A\uFF09","layout.toast.loadFallback":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u304B\u3089\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u3001\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u306B\u5207\u308A\u66FF\u3048\u307E\u3057\u305F","layout.toast.saveSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.saveLocalSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableSavedLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30ED\u30FC\u30AB\u30EB\u306B\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.deleteSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.deleteLocalSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u304B\u3089\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableDeletedLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30ED\u30FC\u30AB\u30EB\u304B\u3089\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.defaultSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u8A2D\u5B9A\u3057\u307E\u3057\u305F","layout.toast.defaultLocalSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u306B\u8A2D\u5B9A\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableDefaultLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u3057\u307E\u3057\u305F","dateRange.label":"\u65E5\u4ED8\u7BC4\u56F2","dateRange.startDate":"\u958B\u59CB\u65E5","dateRange.endDate":"\u7D42\u4E86\u65E5","dateRange.select":"\u9078\u629E...","dateRange.today":"\u4ECA\u65E5","dateRange.thisWeek":"\u4ECA\u9031","dateRange.thisMonth":"\u4ECA\u6708","graph.records":"{count} \u4EF6","graph.kpi.totalRecords":"\u7DCF\u30EC\u30B3\u30FC\u30C9","graph.kpi.totalReport":"\u7DCF\u5831\u544A\u6642\u9593","graph.kpi.totalBillable":"\u7DCF\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","graph.kpi.efficiency":"\u52B9\u7387","graph.kpi.amount":"\u91D1\u984D","graph.kpi.flagged":"\u8981\u78BA\u8A8D","graph.chart.billable.title":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3\u5225\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","graph.chart.billable.subtitle":"\u8ACB\u6C42\u53EF\u80FD\u6642\u9593\u306E\u4E0A\u4F4D","graph.chart.efficiency.title":"\u62C5\u5F53\u8005\u5225\u52B9\u7387","graph.chart.efficiency.subtitle":"\u52B9\u7387\u306E\u4F4E\u3044\u9806","graph.chart.status.title":"\u30B9\u30C6\u30FC\u30BF\u30B9\u5206\u5E03","graph.chart.status.subtitle":"\u30B9\u30C6\u30FC\u30BF\u30B9\u5225\u6BD4\u7387","graph.dataBody":"\u30C7\u30FC\u30BF\u672C\u4F53","graph.reportTitle":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","graph.unassigned":"\u672A\u5272\u308A\u5F53\u3066","graph.column.reportHours":"\u5831\u544A\u6642\u9593","graph.column.billableHours":"\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","detail.searchAi.placeholder":"\u9805\u76EE\u3092\u691C\u7D22\u3002\u898B\u3064\u304B\u3089\u306A\u3044\u5834\u5408\u306FAI\u306B\u8CEA\u554F\u3057\u307E\u3059...","detail.searchAi.matches":"{count} \u4EF6\u306E\u4E00\u81F4","detail.searchAi.noMatch":"\u4E00\u81F4\u3059\u308B\u9805\u76EE\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002","detail.searchAi.autoAiFallback":"\u4E00\u81F4\u306A\u3057\u3002AI\u5206\u6790\u3092\u5B9F\u884C\u3057\u307E\u3059...","detail.searchAi.aiResultTitle":"AI\u5206\u6790\u7D50\u679C","detail.table.title":"\u95A2\u9023\u30EC\u30B3\u30FC\u30C9","kanban.empty":"\u3053\u3053\u306B\u30AB\u30FC\u30C9\u3092\u30C9\u30ED\u30C3\u30D7","kanban.bucket.limit":"\u4E0A\u9650","kanban.bucket.dropHere":"\u96E2\u3059\u3068\u3053\u306E bucket \u306B\u79FB\u52D5\u3057\u307E\u3059","kanban.card.progress":"\u9032\u6357","kanban.card.openDetail":"\u8A73\u7D30\u3092\u958B\u304F","kanban.priority.critical":"\u7DCA\u6025","kanban.priority.high":"\u9AD8","kanban.priority.medium":"\u4E2D","kanban.priority.low":"\u4F4E","quickCreate.newItem":"\u65B0\u898F\u4F5C\u6210","quickCreate.createWithTitle":"{title} \u3092\u4F5C\u6210","quickEdit.editWithTitle":"{title} \u3092\u7DE8\u96C6","quickDelete.confirmTitle":"\u524A\u9664\u306E\u78BA\u8A8D","quickDelete.confirmMessageSingle":"\u9078\u629E\u3057\u305F\u30EC\u30B3\u30FC\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F","quickDelete.confirmMessageMultiple":"\u9078\u629E\u3057\u305F {count} \u4EF6\u306E\u30EC\u30B3\u30FC\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F","messageBox.confirm":"OK","messageBox.cancel":"\u30AD\u30E3\u30F3\u30BB\u30EB"},Kf={"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.searchAddFeature":"\uAE30\uB2A5 \uCD94\uAC00","header.searchSend":"\uBCF4\uB0B4\uAE30","header.searchStartVoice":"\uC74C\uC131 \uC785\uB825 \uC2DC\uC791","header.searchStopVoice":"\uC74C\uC131 \uC785\uB825 \uC911\uC9C0","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","navigation.mode.switchToFixed":"\uACE0\uC815 \uD0D0\uC0C9\uC73C\uB85C \uC804\uD658","navigation.mode.switchToFloating":"\uD50C\uB85C\uD305 \uD0D0\uC0C9\uC73C\uB85C \uC804\uD658","table.toolbar.searchPlaceholder":"\uAC80\uC0C9...","table.title.default":"\uB370\uC774\uD130 \uD14C\uC774\uBE14","table.toolbar.groupBy":"\uADF8\uB8F9","table.toolbar.summary":"\uC694\uC57D","table.toolbar.columns":"\uC5F4","table.toolbar.export":"\uB0B4\uBCF4\uB0B4\uAE30","table.toolbar.itemsPerPage":"\uD398\uC774\uC9C0\uB2F9 \uD589 \uC218:","table.toolbar.pageOf":"{current} / {total} \uD398\uC774\uC9C0","table.toolbar.newItem":"\uC2E0\uADDC \uD56D\uBAA9","table.toolbar.editItem":"\uD56D\uBAA9 \uC218\uC815","table.toolbar.deleteItem":"\uD56D\uBAA9 \uC0AD\uC81C","table.toolbar.graphicReport":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","table.toolbar.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","table.menu.groupBy":"\uADF8\uB8F9","table.menu.clearAll":"\uBAA8\uB450 \uC9C0\uC6B0\uAE30","table.menu.visibleColumns":"\uD45C\uC2DC \uC5F4","table.menu.showSummaryRow":"\uC694\uC57D \uD589 \uD45C\uC2DC","table.menu.noNumericColumns":"\uC22B\uC790 \uC5F4 \uC5C6\uC74C","table.group.expandAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uD3BC\uCE58\uAE30","table.group.collapseAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uC811\uAE30","table.mobile.notImplemented":"\uBAA8\uBC14\uC77C \uBDF0\uB294 \uC544\uC9C1 \uAD6C\uD604\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4","table.headerMenu.sortAsc":"\uC624\uB984\uCC28\uC21C \uC815\uB82C","table.headerMenu.sortDesc":"\uB0B4\uB9BC\uCC28\uC21C \uC815\uB82C","table.headerMenu.clearSort":"\uC815\uB82C \uD574\uC81C","table.headerMenu.configureSort":"\uC815\uB82C \uC124\uC815...","table.headerMenu.group":"\uC774 \uC5F4\uB85C \uADF8\uB8F9\uD654","table.headerMenu.ungroup":"\uADF8\uB8F9\uC5D0\uC11C \uC81C\uAC70","table.headerMenu.addSummary":"\uC694\uC57D\uC5D0 \uCD94\uAC00","table.headerMenu.removeSummary":"\uC694\uC57D\uC5D0\uC11C \uC81C\uAC70","table.headerMenu.hideColumn":"\uC5F4 \uC228\uAE30\uAE30","table.sortDialog.title":"\uC815\uB82C \uC124\uC815","table.sortDialog.empty":"\uC815\uB82C \uADDC\uCE59\uC774 \uC5C6\uC2B5\uB2C8\uB2E4. \uCD94\uAC00\uD558\uC138\uC694.","table.sortDialog.addRule":"\uADDC\uCE59 \uCD94\uAC00","table.sortDialog.clearAll":"\uBAA8\uB450 \uC9C0\uC6B0\uAE30","table.sortDialog.asc":"\uC624\uB984\uCC28\uC21C","table.sortDialog.desc":"\uB0B4\uB9BC\uCC28\uC21C","pivot.title.default":"\uD53C\uBC97 \uD14C\uC774\uBE14","pivot.subtitle.default":"\uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uD53C\uBC97 \uD14C\uC774\uBE14\uC744 \uAD6C\uC131\uD558\uC138\uC694.","pivot.empty":"\uACB0\uACFC\uB97C \uBCF4\uB824\uBA74 \uAC12 \uC601\uC5ED\uC5D0 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.records":"\uB808\uCF54\uB4DC","pivot.afterFilter":"\uD544\uD130 \uD6C4","pivot.grandTotal":"\uCD1D\uD569","pivot.resultLabel":"\uACB0\uACFC","pivot.valueLabel":"\uAC12","pivot.table.dimensions":"\uCC28\uC6D0","pivot.config.title":"\uAD6C\uC131","pivot.fieldList":"\uD544\uB4DC \uBAA9\uB85D","pivot.availableDimensions":"\uC0AC\uC6A9 \uAC00\uB2A5\uD55C \uCC28\uC6D0","pivot.allFieldsInUse":"\uBAA8\uB4E0 \uD544\uB4DC\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.","pivot.zone.rows":"\uD589","pivot.zone.columns":"\uC5F4","pivot.zone.filters":"\uD544\uD130","pivot.zone.values":"\uAC12","pivot.hint.rows":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uD589 \uACC4\uCE35\uC744 \uAD6C\uC131","pivot.hint.columns":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uC5F4 \uACC4\uCE35\uC744 \uAD6C\uC131","pivot.hint.filters":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uBCF4\uACE0\uC11C \uD544\uD130\uB85C \uC0AC\uC6A9","pivot.hint.values":"\uC22B\uC790 \uD544\uB4DC\uB97C \uC5EC\uAE30\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC9D1\uACC4","pivot.clearArea":"\uC601\uC5ED \uBE44\uC6B0\uAE30","pivot.filter.na":"\uD574\uB2F9 \uC5C6\uC74C","pivot.filter.noValues":"\uAC12 \uC5C6\uC74C","pivot.filter.noneSelected":"\uC120\uD0DD \uC5C6\uC74C","pivot.filter.allValues":"\uBAA8\uB4E0 \uAC12","pivot.filter.selectedCount":"{selected} / {total} \uC120\uD0DD\uB428","pivot.filter.selectAll":"\uC804\uCCB4 \uC120\uD0DD","pivot.filter.deselectAll":"\uC804\uCCB4 \uD574\uC81C","pivot.filter.noResults":"\uAC80\uC0C9 \uACB0\uACFC \uC5C6\uC74C","pivot.collapse.ariaExpand":"\uAD6C\uC131 \uC601\uC5ED \uD3BC\uCE58\uAE30","pivot.collapse.ariaCollapse":"\uAD6C\uC131 \uC601\uC5ED \uC811\uAE30","pivot.agg.sum":"\uD569\uACC4","pivot.agg.count":"\uAC1C\uC218","pivot.agg.avg":"\uD3C9\uADE0","pivot.agg.min":"\uCD5C\uC18C","pivot.agg.max":"\uCD5C\uB300","pivot.preset.selectPlaceholder":"\uD504\uB9AC\uC14B \uC120\uD0DD","pivot.preset.save":"\uD504\uB9AC\uC14B \uC800\uC7A5","pivot.preset.delete":"\uD504\uB9AC\uC14B \uC0AD\uC81C","pivot.preset.saveDialogTitle":"\uD604\uC7AC \uD504\uB9AC\uC14B \uC800\uC7A5","pivot.preset.nameLabel":"\uD504\uB9AC\uC14B \uC774\uB984","pivot.preset.defaultName":"\uD504\uB9AC\uC14B {index}","pivot.table.sectionTitle":"\uD53C\uBC97 \uACB0\uACFC","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"\uD53C\uBC97 \uACB0\uACFC \uD3BC\uCE58\uAE30","pivot.table.collapse.ariaCollapse":"\uD53C\uBC97 \uACB0\uACFC \uC811\uAE30","pivot.chart.title":"\uD53C\uBC97 \uCC28\uD2B8","pivot.chart.subtitle":"\uD558\uB098\uC758 \uCC28\uC6D0\uACFC \uCD5C\uB300 \uB450 \uAC1C\uC758 \uCE21\uC815\uAC12\uC744 \uAC04\uACB0\uD55C \uCC28\uD2B8\uB85C \uD45C\uC2DC\uD569\uB2C8\uB2E4.","pivot.chart.subtitleReady":"{dimension}\uBCC4 {measure}","pivot.chart.emptyNoDimension":"\uCC28\uD2B8\uB97C \uBCF4\uB824\uBA74 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uD589 \uB610\uB294 \uC5F4 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.chart.emptyNoValue":"\uCC28\uD2B8\uB97C \uBCF4\uB824\uBA74 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uAC12 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.chart.emptyNoData":"\uD604\uC7AC \uCC28\uD2B8 \uC120\uD0DD\uC5D0 \uD45C\uC2DC\uD560 \uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.","pivot.chart.dimension":"\uCC28\uD2B8 \uCC28\uC6D0","pivot.chart.primaryMeasure":"\uC8FC \uCE21\uC815\uAC12","pivot.chart.secondaryMeasure":"\uBE44\uAD50 \uCE21\uC815\uAC12","pivot.chart.chartType":"\uCC28\uD2B8 \uC720\uD615","pivot.chart.style.barVertical":"\uC138\uB85C \uB9C9\uB300","pivot.chart.style.barHorizontal":"\uAC00\uB85C \uB9C9\uB300","pivot.chart.style.line":"\uC120\uD615 \uCC28\uD2B8","pivot.chart.style.scatter":"\uC0B0\uC810\uB3C4","pivot.chart.collapse.ariaExpand":"\uCC28\uD2B8 \uC601\uC5ED \uD3BC\uCE58\uAE30","pivot.chart.collapse.ariaCollapse":"\uCC28\uD2B8 \uC601\uC5ED \uC811\uAE30","smartFilter.adaptFilters":"\uD544\uD130 \uC870\uC815","smartFilter.addFilters":"\uD544\uD130 \uCD94\uAC00","smartFilter.go":"\uC2E4\uD589","smartFilter.visibleFilters":"\uD45C\uC2DC \uD544\uD130","smartFilter.searchPlaceholder":"\uAC80\uC0C9...","smartFilter.noOptionsFound":"\uC635\uC158\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4","smartFilter.min":"\uCD5C\uC18C","smartFilter.max":"\uCD5C\uB300","smartFilter.minMaxPlaceholder":"\uCD5C\uC18C - \uCD5C\uB300","smartFilter.operator.equals":"\uAC19\uC74C","smartFilter.operator.contains":"\uD3EC\uD568","smartFilter.operator.notContains":"\uBBF8\uD3EC\uD568","smartFilter.operator.wildcard":"\uC640\uC77C\uB4DC\uCE74\uB4DC \uAC80\uC0C9","smartFilter.operator.notEquals":"\uAC19\uC9C0 \uC54A\uC74C","smartFilter.operator.greaterThan":"\uBCF4\uB2E4 \uD07C","smartFilter.operator.lessThan":"\uBCF4\uB2E4 \uC791\uC74C","smartFilter.operator.greaterOrEqual":"\uC774\uC0C1","smartFilter.operator.lessOrEqual":"\uC774\uD558","smartFilter.operator.between":"\uBC94\uC704","variant.noOptions":"\uC635\uC158 \uC5C6\uC74C","variant.defaultSuffix":"\uAE30\uBCF8","variant.selectVariant":"\uBDF0 \uC120\uD0DD","variant.saveView":"\uBDF0 \uC800\uC7A5","variant.newVariant":"\uC0C8 \uBDF0","variant.viewName":"\uBDF0 \uC774\uB984","variant.setDefault":"\uAE30\uBCF8\uC73C\uB85C \uC124\uC815","variant.publicAllUsers":"\uACF5\uAC1C(\uC804\uCCB4 \uC0AC\uC6A9\uC790)","variant.toast.fetchFailed":"\uBDF0\uB97C \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.saveFailed":"\uBDF0\uB97C \uC800\uC7A5\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.saveSuccess":"\uBDF0\uAC00 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","variant.toast.deleteFailed":"\uBDF0\uB97C \uC0AD\uC81C\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.deleteSuccess":"\uBDF0\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","variant.toast.defaultFailed":"\uAE30\uBCF8 \uBDF0\uB97C \uC5C5\uB370\uC774\uD2B8\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.defaultSuccess":"\uAE30\uBCF8 \uBDF0\uAC00 \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","layout.layoutOptions":"\uB808\uC774\uC544\uC6C3 \uC635\uC158","layout.selectLayout":"\uB808\uC774\uC544\uC6C3 \uC120\uD0DD","layout.saveCurrentLayout":"\uD604\uC7AC \uB808\uC774\uC544\uC6C3 \uC800\uC7A5...","layout.noSavedLayouts":"\uC800\uC7A5\uB41C \uB808\uC774\uC544\uC6C3 \uC5C6\uC74C","layout.removeDefault":"\uAE30\uBCF8 \uD574\uC81C","layout.setAsDefault":"\uAE30\uBCF8\uC73C\uB85C \uC124\uC815","layout.layoutName":"\uB808\uC774\uC544\uC6C3 \uC774\uB984","layout.layoutDescription":"\uC124\uBA85","layout.layoutNameHelper":"\uC608: \uCEF4\uD329\uD2B8 \uBDF0","layout.warningOverwrite":"\uACBD\uACE0: \uAE30\uC874 \uB808\uC774\uC544\uC6C3\uC774 \uB36E\uC5B4\uC4F0\uAE30 \uB429\uB2C8\uB2E4","layout.useAsDefault":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC73C\uB85C \uC0AC\uC6A9","layout.publicAllUsers":"\uACF5\uAC1C(\uBAA8\uB4E0 \uC0AC\uC6A9\uC790\uC5D0\uAC8C \uD45C\uC2DC)","layout.toast.loadFallback":"\uBC31\uC5D4\uB4DC\uC5D0\uC11C \uB808\uC774\uC544\uC6C3\uC744 \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD574 \uB85C\uCEEC \uC800\uC7A5\uC18C\uB85C \uC804\uD658\uD588\uC2B5\uB2C8\uB2E4","layout.toast.saveSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.saveLocalSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC \uC800\uC7A5\uC18C\uC5D0 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableSavedLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uB85C\uCEEC\uC5D0 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4","layout.toast.deleteSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.deleteLocalSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC \uC800\uC7A5\uC18C\uC5D0\uC11C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableDeletedLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uB85C\uCEEC\uC5D0\uC11C \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4","layout.toast.defaultSuccess":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC774 \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.defaultLocalSuccess":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC\uC5D0 \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableDefaultLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uAE30\uBCF8\uAC12\uC744 \uB85C\uCEEC\uC5D0 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4","dateRange.label":"\uB0A0\uC9DC \uBC94\uC704","dateRange.startDate":"\uC2DC\uC791\uC77C","dateRange.endDate":"\uC885\uB8CC\uC77C","dateRange.select":"\uC120\uD0DD...","dateRange.today":"\uC624\uB298","dateRange.thisWeek":"\uC774\uBC88 \uC8FC","dateRange.thisMonth":"\uC774\uBC88 \uB2EC","graph.records":"{count}\uAC74","graph.kpi.totalRecords":"\uCD1D \uB808\uCF54\uB4DC","graph.kpi.totalReport":"\uCD1D \uBCF4\uACE0 \uC2DC\uAC04","graph.kpi.totalBillable":"\uCD1D \uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","graph.kpi.efficiency":"\uD6A8\uC728","graph.kpi.amount":"\uAE08\uC561","graph.kpi.flagged":"\uD50C\uB798\uADF8","graph.chart.billable.title":"\uCC28\uC6D0\uBCC4 \uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","graph.chart.billable.subtitle":"\uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04 \uC0C1\uC704 \uAC12","graph.chart.efficiency.title":"\uB2F4\uB2F9\uC790\uBCC4 \uD6A8\uC728","graph.chart.efficiency.subtitle":"\uB0AE\uC740 \uD6A8\uC728 \uC6B0\uC120","graph.chart.status.title":"\uC0C1\uD0DC \uBD84\uD3EC","graph.chart.status.subtitle":"\uC0C1\uD0DC\uBCC4 \uBE44\uC728","graph.dataBody":"\uB370\uC774\uD130 \uBCF8\uBB38","graph.reportTitle":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","graph.unassigned":"\uBBF8\uC9C0\uC815","graph.column.reportHours":"\uBCF4\uACE0 \uC2DC\uAC04","graph.column.billableHours":"\uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","detail.searchAi.placeholder":"\uD544\uB4DC\uB97C \uAC80\uC0C9\uD558\uACE0, \uACB0\uACFC\uAC00 \uC5C6\uC73C\uBA74 AI\uC5D0 \uC9C8\uBB38\uD558\uC138\uC694...","detail.searchAi.matches":"{count}\uAC1C \uC77C\uCE58 \uD56D\uBAA9","detail.searchAi.noMatch":"\uC77C\uCE58\uD558\uB294 \uD544\uB4DC\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.","detail.searchAi.autoAiFallback":"\uC77C\uCE58 \uD56D\uBAA9\uC774 \uC5C6\uC5B4 AI \uBD84\uC11D\uC744 \uC2E4\uD589\uD569\uB2C8\uB2E4...","detail.searchAi.aiResultTitle":"AI \uBD84\uC11D \uACB0\uACFC","detail.table.title":"\uAD00\uB828 \uB808\uCF54\uB4DC","kanban.empty":"\uC5EC\uAE30\uC5D0 \uCE74\uB4DC\uB97C \uB193\uC73C\uC138\uC694","kanban.bucket.limit":"\uD55C\uB3C4","kanban.bucket.dropHere":"\uB193\uC73C\uBA74 \uC774 \uBC84\uD0B7\uC73C\uB85C \uC774\uB3D9\uD569\uB2C8\uB2E4","kanban.card.progress":"\uC9C4\uD589\uB960","kanban.card.openDetail":"\uC0C1\uC138 \uC5F4\uAE30","kanban.priority.critical":"\uAE34\uAE09","kanban.priority.high":"\uB192\uC74C","kanban.priority.medium":"\uBCF4\uD1B5","kanban.priority.low":"\uB0AE\uC74C","quickCreate.newItem":"\uC2E0\uADDC \uD56D\uBAA9","quickCreate.createWithTitle":"{title} \uC0DD\uC131","quickEdit.editWithTitle":"{title} \uC218\uC815","quickDelete.confirmTitle":"\uC0AD\uC81C \uD655\uC778","quickDelete.confirmMessageSingle":"\uC120\uD0DD\uD55C \uD56D\uBAA9\uC744 \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?","quickDelete.confirmMessageMultiple":"\uC120\uD0DD\uD55C {count}\uAC1C \uD56D\uBAA9\uC744 \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?","messageBox.confirm":"\uD655\uC778","messageBox.cancel":"\uCDE8\uC18C"},_n={en:Hf,zh:Wf,fr:$f,de:Gf,ja:Uf,ko:Kf};var Ud=(e,t)=>t?e.replace(/\{(\w+)\}/g,(o,r)=>{let a=t[r];return a==null?"":String(a)}):e,Zf={locale:"en",t:(e,t)=>Ud(_n.en[e]||e,t)},Kd=createContext(Zf),Ki=({locale:e="en",messages:t,children:o})=>{let r=useMemo(()=>{let a=_n[e]||_n.en,n=t?.[e]||{},i={..._n.en,...a,...n};return {locale:e,t:(s,d)=>Ud(i[s]||s,d)}},[e,t]);return jsx(Kd.Provider,{value:r,children:o})},ae=()=>useContext(Kd);function Hs({items:e,onItemClick:t,className:o="",level:r=0,expandedIds:a,onToggleExpand:n,colorMode:i="light"}){let{t:s}=ae(),d=i==="dark",l=usePathname(),[c,g]=useState(false),[f,m]=useState(new Set),h=a!==void 0&&n!==void 0,C=h?a:f;useEffect(()=>{g(true);},[]);let u=p=>{if(h)n(p);else {let b=new Set(f);b.has(p)?b.delete(p):b.add(p),m(b);}},v=p=>{p.children&&p.children.length>0&&u(p.id),t&&t(p);};return !e||!Array.isArray(e)?jsx("div",{className:Xo("tree-menu",o),children:jsx("div",{className:"text-sm text-gray-500 p-2",children:s("navigation.noItems")})}):jsx("div",{className:Xo("tree-menu",o),children:e.map(p=>{let b=C.has(p.id)||p.isExpanded,y=p.children&&p.children.length>0,T=p.appurl||p.href,E=c&&T?l===T:false;return jsxs("div",{className:"tree-menu-item relative",children:[E&&jsx("div",{className:Xo("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",d?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxs(Vs,{variant:"ghost",className:Xo("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${r*4}`,E?d?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":d?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>v(p),children:[y&&jsx("div",{className:Xo("flex-shrink-0 transition-transform duration-200",b&&"rotate-90",E?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:jsx(ChevronRight,{className:"h-4 w-4"})}),!y&&jsx("div",{className:"w-4 h-4 flex-shrink-0"}),p.icon&&jsx("div",{className:Xo("flex-shrink-0 transition-colors duration-200",E?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:p.icon}),jsxs("div",{className:"flex-1 text-left overflow-hidden z-10",children:[jsx("div",{className:Xo("text-sm truncate transition-colors duration-200",E?"font-semibold":"font-medium"),children:p.title||p.label}),p.description&&jsx("div",{className:Xo("text-xs truncate transition-colors duration-200",E?d?"text-[#90caf9]/70":"text-[#1976d2]/75":d?"text-gray-400":"text-gray-500"),title:p.description,children:p.description})]})]}),y&&jsx("div",{className:Xo("grid transition-[grid-template-rows] duration-300 ease-in-out",b?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:jsx("div",{className:"overflow-hidden",children:jsx(Hs,{items:p.children,onItemClick:t,level:r+1,expandedIds:a,onToggleExpand:n,colorMode:i})})})]},p.id)})})}var $s=({collapsed:e,onToggle:t,className:o="",maxHeight:r,menuData:a=[],colorMode:n="light",displayMode:i="fixed",onDisplayModeChange:s,showDisplayModeToggle:d=true})=>{let{t:l}=ae(),c=n==="dark",g=i==="floating",f=Kt__default.useId().replace(/:/g,""),m=`orbcafe-nav-mode-arc-${f}`,h=`orbcafe-nav-mode-glow-${f}`,C=useRouter(),[u,v]=useState(""),[p,b]=useState(new Set);useEffect(()=>{e&&b(new Set);},[e]);let y=useCallback(I=>{let k=[],S=B=>{B.forEach(P=>{k.push(P.id),P.children&&S(P.children);});};return S(I),k},[]),T=useMemo(()=>{if(!u.trim())return a;let I=k=>k.reduce((S,B)=>{let P=B.title?.toLowerCase().includes(u.toLowerCase())||B.description?.toLowerCase().includes(u.toLowerCase()),M=B.children?I(B.children):[];return (P||M.length>0)&&S.push({...B,children:M.length>0?M:B.children}),S},[]);return I(a)},[u,a]),E=useMemo(()=>u.trim()?new Set(y(a)):p,[u,a,p,y]),R=useCallback(async I=>{if(console.log("\u{1F5B1}\uFE0F \u5BFC\u822A\u83DC\u5355\u9879\u70B9\u51FB:",I),I.id==="chat"||I.appurl==="/chat"){console.log("\u{1F4AC} \u68C0\u6D4B\u5230chat\u83DC\u5355\u70B9\u51FB\uFF0C\u8DF3\u8F6C\u5230\u65B0\u7684\u804A\u5929\u89C6\u56FE");try{C.push("/chat?new=true");}catch(S){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",S),C.push("/chat");}return}let k=I.appurl||I.href;k&&(k.startsWith("http://")||k.startsWith("https://")?window.open(k,"_blank"):C.push(k));},[C]),w=useCallback(()=>{s?.(i==="fixed"?"floating":"fixed");},[i,s]);return jsxs("div",{className:`flex flex-col backdrop-blur-xl border ${g?"shadow-[0_28px_80px_rgba(15,23,42,0.34)]":"shadow-[0_4px_8px_0_rgba(31,38,135,0.1)]"} ${e?"w-14 rounded-full":"w-[234px] rounded-2xl"} relative ${o} ${c?g?"border-white/25":"bg-[#111111] border-white/10":g?"border-white/70":"bg-white/70 border-white/30"}`,style:{backdropFilter:g?"blur(34px) saturate(230%) contrast(1.12)":"blur(16px) saturate(180%)",WebkitBackdropFilter:g?"blur(34px) saturate(230%) contrast(1.12)":"blur(16px) saturate(180%)",backgroundColor:g?c?"rgba(8, 12, 18, 0.34)":"rgba(255, 255, 255, 0.24)":void 0,backgroundImage:g?c?"radial-gradient(circle at 28% 8%, rgba(255,255,255,0.14), rgba(255,255,255,0) 44%), linear-gradient(145deg, rgba(255,255,255,0.08), rgba(255,255,255,0.015) 50%, rgba(33,188,255,0.05))":"radial-gradient(circle at 28% 8%, rgba(255,255,255,0.42), rgba(255,255,255,0) 46%), linear-gradient(145deg, rgba(255,255,255,0.22), rgba(255,255,255,0.07) 50%, rgba(33,188,255,0.08))":void 0,boxShadow:g?c?"inset 0 1px 0 rgba(255,255,255,0.20), inset 0 -1px 0 rgba(255,255,255,0.08), 0 26px 90px rgba(0,0,0,0.52), 0 0 0 1px rgba(255,255,255,0.06)":"inset 0 1px 0 rgba(255,255,255,0.88), inset 0 -1px 0 rgba(255,255,255,0.34), 0 26px 90px rgba(15,23,42,0.24), 0 0 0 1px rgba(255,255,255,0.35)":void 0,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, background-color 220ms ease-out, backdrop-filter 220ms ease-out",maxHeight:r?`${r}px`:void 0},children:[jsx("div",{className:`pt-4 pb-2 transition-all duration-500 ease-in-out ${e?"px-1":"px-2"}`,children:e?jsx("div",{className:"flex justify-center",children:jsx("button",{onClick:t,className:`w-10 h-10 flex items-center justify-center rounded-lg transition-colors duration-200 ${c?"text-gray-300 hover:bg-gray-800":"text-gray-500 hover:bg-gray-50"}`,title:l("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:l("navigation.searchPlaceholder"),value:u,onChange:I=>v(I.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 ${c?"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 ${c?"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:T.length===0?jsx("div",{className:"flex items-center justify-center py-8 text-gray-500 text-sm",children:e?"\u{1F4C2}":l(u?"navigation.noMatch":"navigation.noAccessibleApp")}):jsxs(Fragment,{children:[!e&&jsx("div",{className:`transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:jsx(Hs,{items:T,onItemClick:R,className:"space-y-1",expandedIds:E,colorMode:n,onToggleExpand:I=>{let k=new Set(p);T.some(B=>B.id===I)?k.has(I)?k.delete(I):(T.forEach(B=>{B.id!==I&&k.has(B.id)&&k.delete(B.id);}),k.add(I)):k.has(I)?k.delete(I):k.add(I),b(k);}})}),e&&jsx("div",{className:"space-y-2",children:a.map(I=>jsx("div",{className:"space-y-1",children:jsx("button",{onClick:()=>{t();let k=new Set([I.id]);b(k);},className:`w-full flex items-center justify-center p-2 rounded-lg cursor-pointer transition-colors duration-200 ${c?"text-gray-400 hover:bg-gray-800":"text-gray-600 hover:bg-gray-50"}`,title:l("navigation.expandView",{title:I.title||""}),children:I.icon||jsx("div",{className:`w-6 h-6 rounded text-xs flex items-center justify-center font-medium ${c?"bg-[#90caf9] text-[#0b0b0b]":"bg-[#1976d2] text-white"}`,children:I.title?.charAt(0)||"?"})})},I.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 ${c?"hover:bg-gray-800/50":"hover:bg-white/20"}`,title:l("navigation.collapse"),children:jsx("div",{className:"absolute",style:{bottom:"0px",right:"0px",width:"16px",height:"16px",overflow:"hidden"},children:jsx("div",{className:c?"border-yellow-400":"",style:{width:"32px",height:"32px",borderRadius:"16px",border:"3px solid #21BCFF",backgroundColor:"transparent",position:"absolute",top:"-16px",left:"-16px"}})})}),d&&e&&jsx("button",{type:"button",onClick:w,className:"absolute -bottom-5 left-1/2 z-30 flex h-11 -translate-x-1/2 items-end justify-center rounded-full bg-transparent px-2 pb-1 transition-opacity duration-200 hover:opacity-95 focus:outline-none focus:ring-2 focus:ring-cyan-400/70",style:{width:"62px",touchAction:"manipulation"},title:l(g?"navigation.mode.switchToFixed":"navigation.mode.switchToFloating"),"aria-label":l(g?"navigation.mode.switchToFixed":"navigation.mode.switchToFloating"),children:jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 118 34",preserveAspectRatio:"none",className:"h-[34px] w-full overflow-visible",children:[jsxs("defs",{children:[jsxs("linearGradient",{id:m,x1:"0",x2:"1",y1:"0",y2:"0",children:[jsx("stop",{offset:"0%",stopColor:"#21BCFF"}),jsx("stop",{offset:"52%",stopColor:"#7C3AED"}),jsx("stop",{offset:"100%",stopColor:"#F59E0B"})]}),jsxs("filter",{id:h,x:"-70%",y:"-180%",width:"240%",height:"460%",children:[jsx("feGaussianBlur",{stdDeviation:"8.5",result:"coloredBlur"}),jsxs("feMerge",{children:[jsx("feMergeNode",{in:"coloredBlur"}),jsx("feMergeNode",{in:"SourceGraphic"})]})]})]}),jsx("path",{d:"M8 4 C27 21 91 21 110 4",fill:"none",stroke:`url(#${m})`,strokeLinecap:"round",strokeWidth:"18",opacity:g?.28:.2,filter:`url(#${h})`}),jsx("path",{d:"M8 4 C27 21 91 21 110 4",fill:"none",stroke:`url(#${m})`,strokeLinecap:"round",strokeWidth:"12",opacity:g?.4:.3,filter:`url(#${h})`}),jsx("path",{d:"M8 4 C27 21 91 21 110 4",fill:"none",stroke:`url(#${m})`,strokeLinecap:"round",strokeWidth:"6",opacity:g?.34:.25,filter:`url(#${h})`}),jsx("path",{d:"M8 4 C27 21 91 21 110 4",fill:"none",stroke:`url(#${m})`,strokeLinecap:"round",strokeWidth:"1",opacity:g?.28:.18})]})})]})};var Yd=(e={})=>{let{initialCollapsed:t=false,initialDisplayMode:o="fixed",content:r=[]}=e,[a,n]=useState(t),[i,s]=useState(o),[d,l]=useState(r),c=useCallback(()=>{n(m=>!m);},[]),g=useCallback(()=>{s(m=>m==="fixed"?"floating":"fixed");},[]),f=useMemo(()=>({collapsed:a,onToggle:c,menuData:d,displayMode:i,onDisplayModeChange:s}),[a,c,d,i,s]);return {collapsed:a,setCollapsed:n,toggleCollapsed:c,displayMode:i,setDisplayMode:s,toggleDisplayMode:g,menuData:d,setMenuData:l,navigationIslandProps:f}};var ir=e=>jsx(Button,{...e,variant:e.variant||"contained",size:e.size||"medium",sx:{textTransform:"none",...e.sx}});var Us=class{constructor(){a(this,"listener",null);}register(t){this.listener=t;}unregister(){this.listener=null;}show(t,o,r){this.listener&&this.listener({type:t,content:o,options:r});}hide(){this.listener&&this.listener(null);}},Rr=new Us,RI={success:(e,t)=>Rr.show("success",e,t),error:(e,t)=>Rr.show("error",e,t),warning:(e,t)=>Rr.show("warning",e,t),info:(e,t)=>Rr.show("info",e,t),show:(e,t,o)=>Rr.show(e,t,o),hide:()=>Rr.hide()};var bh={success:{icon:jsx(mh,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsx(gh,{sx:{fontSize:40}}),color:"#fff3e0",iconColor:"#ffa726",borderColor:"#ffcc80"},error:{icon:jsx(fh,{sx:{fontSize:40}}),color:"#ffebee",iconColor:"#ef5350",borderColor:"#ef9a9a"},info:{icon:jsx(hh,{sx:{fontSize:40}}),color:"#e3f2fd",iconColor:"#42a5f5",borderColor:"#90caf9"},default:{icon:null,color:"transparent",iconColor:"inherit",borderColor:"transparent"}},jn=({open:e,title:t,message:o,onClose:r,onConfirm:a,confirmText:n,cancelText:i,showCancel:s=true,maxWidth:d="xs",type:l="default"})=>{let{t:c}=ae(),g=n||c("messageBox.confirm"),f=i||c("messageBox.cancel"),m=()=>{a?a():r();},h=bh[l],C=l!=="default";return jsxs(Tp,{open:e,onClose:r,maxWidth:d,fullWidth:true,PaperProps:{sx:{borderRadius:3,...C&&{borderTop:`6px solid ${h.iconColor}`}}},children:[C&&jsx(ui,{sx:{display:"flex",justifyContent:"center",pt:3,color:h.iconColor},children:h.icon}),t&&jsx(Ip,{sx:{textAlign:C?"center":"left",pt:C?1:2},children:t}),jsx(Pp,{sx:{textAlign:C?"center":"left"},children:typeof o=="string"?jsx(dh,{children:o}):o}),jsxs(Rp,{sx:{justifyContent:C?"center":"flex-end",pb:3,px:3},children:[s&&jsx(ir,{onClick:r,variant:"text",color:"inherit",children:f}),jsx(ir,{onClick:m,variant:"contained",sx:{bgcolor:C?h.iconColor:void 0,"&:hover":{bgcolor:C?h.iconColor:void 0,filter:"brightness(0.9)"}},autoFocus:true,children:g})]})]})},KI=()=>{let[e,t]=Kt__default.useState(null),[o,r]=Kt__default.useState(false);Kt__default.useEffect(()=>{let i=s=>{s?(t(s),r(true)):(r(false),t(null));};return Rr.register(i),()=>Rr.unregister()},[]);let a=()=>{r(false),e?.options?.onClose&&e.options.onClose(),t(null);},n=()=>{e?.options?.onConfirm&&e.options.onConfirm(),r(false),t(null);};return e?jsx(jn,{open:o,type:e.type,message:e.content,title:e.options?.title,onClose:a,onConfirm:n,confirmText:e.options?.confirmText,cancelText:e.options?.cancelText,showCancel:e.options?.showCancel,maxWidth:e.options?.maxWidth}):null};var Ah=[{field:"value",label:"Value",minWidth:120},{field:"label",label:"Description",minWidth:180}],iu=e=>Array.isArray(e)?e:e==null||e===""?[]:[e],No=e=>String(e),lu=(e,t)=>e[t],su=e=>{let t=e.value??e.id??e.key??e.code;return typeof t=="number"||typeof t=="string"?t:""},Bh=e=>{let t=e.label??e.description??e.name??e.title;return String(typeof t=="number"||typeof t=="string"?t:su(e))},Fh=e=>{let t=e.description??e.subtitle;return typeof t=="number"||typeof t=="string"?String(t):void 0},cu=({value:e=null,items:t=[],columns:o,mode:r="single",dialogTitle:a="Value Help",searchPlaceholder:n="Search values...",selectLabel:i="Select",clearLabel:s="Clear",cancelLabel:d="Cancel",valueHelpLabel:l="Open value help",noResultsText:c="No matching values",loading:g=false,clearable:f=true,allowManualInput:m=true,validateManualInput:h=true,manualInputErrorText:C="Enter a valid value.",selectedItems:u=[],displayValue:v,getOptionValue:p=su,getOptionLabel:b=Bh,getOptionDescription:y=Fh,onChange:T,onSearch:E,disabled:R,InputProps:w,onFocus:I,onBlur:k,onKeyDown:S,error:B,helperText:P,...M})=>{let A=r==="multiple",[Z,W]=useState(false),[K,ee]=useState(false),[le,G]=useState(""),[te,me]=useState(null),[we,Ce]=useState(false),[re,oe]=useState(()=>iu(e)),[ye,Ge]=useState(""),[de,Te]=useState(""),$e=useMemo(()=>o&&o.length>0?o:Ah,[o]),ct=te??t,fe=useMemo(()=>{let O=[...u,...t,...te??[]],xe=new Map;return O.forEach(Ke=>{xe.set(No(p(Ke)),Ke);}),xe},[p,t,te,u]),Le=useMemo(()=>iu(e),[e]),_e=useMemo(()=>Le.map(String).join(", "),[Le]);useEffect(()=>{Z||oe(Le);},[Z,Le]),useEffect(()=>{!K&&!de&&Ge(_e);},[K,_e,de]);let dt=useMemo(()=>{let O=le.trim().toLowerCase();if(!O||E)return ct;let xe=$e.filter(Ke=>Ke.searchable!==false);return ct.filter(Ke=>[p(Ke),b(Ke),y(Ke),...xe.map(Ct=>lu(Ke,Ct.field))].some(Ct=>String(Ct??"").toLowerCase().includes(O)))},[ct,y,b,p,E,le,$e]),rt=useMemo(()=>{if(v!==void 0)return v;if(Le.length===0)return "";let O=xe=>{let Ke=fe.get(No(xe));if(!Ke)return String(xe);let et=b(Ke);return et&&et!==String(xe)?`${xe} - ${et}`:String(xe)};return A?Le.length>2?`${Le.length} selected`:Le.map(O).join(", "):O(Le[0])},[v,b,A,fe,Le]),j=useCallback(async()=>{if(E){Ce(true);try{let O=await E(le);Array.isArray(O)&&me(O);}finally{Ce(false);}}},[E,le]),Ne=()=>{R||(oe(Le),W(true));},_=()=>{W(false);},Q=()=>{T?.(A?[]:null,A?[]:null),oe([]),Ge(""),Te("");},Re=O=>{let xe=p(O);if(A){oe(Ke=>Ke.some(Ct=>No(Ct)===No(xe))?Ke.filter(Ct=>No(Ct)!==No(xe)):[...Ke,xe]);return}oe([xe]);},Be=()=>{let O=re.map(xe=>fe.get(No(xe))).filter(xe=>!!xe);A?T?.(re,O):T?.(re[0]??null,O[0]??null),Te(""),W(false);},at=O=>{if(O.key==="F4"){O.preventDefault(),Ne();return}if(O.key==="Enter"&&m&&!gt(ye,true)){O.preventDefault();return}S?.(O);},it=O=>h?O.every(xe=>fe.has(No(xe))):true,gt=(O,xe)=>{if(A){let et=O.split(/[,;\n]/).map(It=>It.trim()).filter(Boolean);if(et.length===0)return Te(""),T?.([],[]),true;if(!it(et))return xe&&Te(C),false;Te("");let Ct=et.map(It=>fe.get(No(It))).filter(It=>!!It);return T?.(et,Ct),true}let Ke=O.trim();return Ke?it([Ke])?(Te(""),T?.(Ke,fe.get(No(Ke))??null),true):(xe&&Te(C),false):(Te(""),T?.(null,null),true)},Et=O=>{if(!m)return;let xe=O.target.value;Ge(xe),Te(""),gt(xe,false);},U=g||we,ze=Le.length>0;return jsxs(Fragment,{children:[jsx(TextField,{...M,disabled:R,value:m&&(K||!!de)?ye:rt,error:!!de||B,helperText:de||P,onChange:Et,onFocus:O=>{ee(true),Ge(_e),I?.(O);},onBlur:O=>{m&&gt(ye,true),ee(false),k?.(O);},onKeyDown:at,InputProps:{...w,readOnly:!m,endAdornment:jsxs(InputAdornment,{position:"end",children:[U?jsx(CircularProgress,{size:18}):null,f&&ze&&!R?jsx(Tooltip,{title:s,children:jsx(IconButton,{size:"small",edge:"end","aria-label":s,onClick:Q,children:jsx(Mh,{fontSize:"small"})})}):null,jsx(Tooltip,{title:l,children:jsx("span",{children:jsx(IconButton,{size:"small",edge:"end","aria-label":l,onClick:Ne,disabled:R,children:jsx(nu,{fontSize:"small"})})})})]})}}),jsxs(Dialog,{open:Z,onClose:_,fullWidth:true,maxWidth:"md",PaperProps:{sx:O=>({borderRadius:2,overflow:"hidden",border:`1px solid ${O.palette.divider}`,boxShadow:O.palette.mode==="dark"?`0 24px 80px ${alpha(O.palette.common.black,.72)}`:`0 24px 80px ${alpha(O.palette.common.black,.18)}`})},children:[jsxs(DialogTitle,{sx:O=>({display:"flex",alignItems:"center",justifyContent:"space-between",gap:2,px:2.5,py:2,pr:1.5,borderBottom:`1px solid ${O.palette.divider}`,bgcolor:O.palette.background.paper}),children:[jsxs(Box,{children:[jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800,lineHeight:1.25},children:a}),A?jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.25},children:`${re.length} selected`}):null]}),jsx(IconButton,{"aria-label":"Close",onClick:_,size:"small",children:jsx(Dh,{fontSize:"small"})})]}),jsxs(DialogContent,{sx:{p:0},children:[jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1,sx:O=>({px:2.5,py:1.5,borderBottom:`1px solid ${O.palette.divider}`,bgcolor:O.palette.mode==="dark"?alpha(O.palette.common.white,.025):alpha(O.palette.primary.main,.035)}),children:[jsx(TextField,{size:"small",fullWidth:true,value:le,placeholder:n,onChange:O=>G(O.target.value),onKeyDown:O=>{O.key==="Enter"&&(O.preventDefault(),j());},InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(nu,{fontSize:"small"})}),sx:O=>({borderRadius:1,bgcolor:O.palette.background.paper,"& fieldset":{borderColor:alpha(O.palette.text.primary,O.palette.mode==="dark"?.2:.16)},"&:hover fieldset":{borderColor:alpha(O.palette.primary.main,.52)},"&.Mui-focused fieldset":{borderColor:O.palette.primary.main}})}}),E?jsx(Button,{variant:"outlined",onClick:()=>{j();},disabled:U,sx:{minWidth:96,textTransform:"none",fontWeight:700},children:U?jsx(CircularProgress,{size:18}):"Search"}):null]}),jsx(TableContainer,{sx:{maxHeight:420},children:jsxs(Table,{stickyHeader:true,size:"small",children:[jsx(TableHead,{children:jsxs(TableRow,{children:[jsx(TableCell,{padding:"checkbox",sx:O=>({bgcolor:O.palette.mode==="dark"?"#111111":O.palette.background.paper,borderBottom:`1px solid ${O.palette.divider}`})}),$e.map(O=>jsx(TableCell,{align:O.align,sx:xe=>({minWidth:O.minWidth,width:O.width,fontSize:"0.78rem",fontWeight:800,bgcolor:xe.palette.mode==="dark"?"#111111":xe.palette.background.paper,borderBottom:`1px solid ${xe.palette.divider}`}),children:O.label},String(O.field)))]})}),jsxs(TableBody,{children:[dt.map(O=>{let xe=p(O),Ke=re.some(et=>No(et)===No(xe));return jsxs(TableRow,{hover:true,selected:Ke,onClick:()=>Re(O),onDoubleClick:()=>{A||(oe([xe]),T?.(xe,O),W(false));},sx:et=>({cursor:"pointer","&.Mui-selected":{bgcolor:alpha(et.palette.primary.main,et.palette.mode==="dark"?.22:.12)},"&.Mui-selected:hover":{bgcolor:alpha(et.palette.primary.main,et.palette.mode==="dark"?.28:.18)}}),children:[jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:Ke})}),$e.map(et=>{let Ct=lu(O,et.field);return jsx(TableCell,{align:et.align,sx:{fontSize:"0.82rem",py:1},children:et.render?et.render(Ct,O):String(Ct??"")},String(et.field))})]},No(xe))}),dt.length===0?jsx(TableRow,{children:jsx(TableCell,{colSpan:$e.length+1,children:jsx(Box,{sx:{py:5,textAlign:"center",color:"text.secondary"},children:c})})}):null]})]})})]}),jsxs(DialogActions,{sx:O=>({px:2.5,py:1.5,borderTop:`1px solid ${O.palette.divider}`,bgcolor:O.palette.background.paper,"& .MuiButton-root":{textTransform:"none",fontWeight:700}}),children:[f&&(ze||re.length>0)?jsx(Button,{onClick:Q,children:s}):null,jsx(Box,{sx:{flex:1}}),jsx(Button,{onClick:_,children:d}),jsx(Button,{variant:"contained",onClick:Be,disabled:!A&&re.length===0,children:i})]})]})]})};var du=({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 _i=e=>{let{t}=ae(),o="0.85rem",r=Array.isArray(e.actions)?e.actions:e.actions?[e.actions]:[],a=Array.isArray(e.extraTools)?e.extraTools:e.extraTools?[e.extraTools]:[],n=[...r,...a],i=typeof e.rowsPerPage=="number"?e.rowsPerPage:20,s=Array.isArray(e.rowsPerPageOptions)&&e.rowsPerPageOptions.length>0?e.rowsPerPageOptions:[20,50,100,-1],d=typeof e.count=="number"?e.count:0,l=Math.max(0,typeof e.page=="number"?e.page:0),c=i===-1?1:Math.max(1,Math.ceil(d/i)),g=Math.min(l+1,c),f=l>0,m=l<c-1&&i!==-1;return jsxs(Toolbar,{sx:{pl:{sm:2},pr:{xs:1,sm:1},alignItems:"center",gap:1},children:[jsx(TextField,{size:"small",placeholder:t("table.toolbar.searchPlaceholder"),value:e.filterText,onChange: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(nu,{fontSize:"small"})})},sx:{width:300}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,ml:1},children:[jsx(Typography,{sx:{fontSize:o,color:"text.secondary",whiteSpace:"nowrap"},children:t("table.toolbar.itemsPerPage")}),jsx(Select,{size:"small",variant:"standard",value:i,disableUnderline:true,onChange:h=>e.onRowsPerPageChange?.(Number(h.target.value)),sx:{fontSize:o,fontWeight:600,color:"text.primary",minWidth:64,"& .MuiSelect-select":{py:.25,pr:"16px !important"},"& .MuiSvgIcon-root":{color:"text.primary"}},children:s.map(h=>jsx(MenuItem,{value:h,sx:{fontSize:o},children:h===-1?t("common.all"):h},`rows-per-page-${h}`))}),jsx(IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.max(l-1,0)),disabled:!f,sx:{p:.35,color:"text.primary"},children:jsx(eb,{fontSize:"small"})}),jsx(Typography,{sx:{fontSize:o,fontWeight:600,minWidth:88,textAlign:"center",color:"text.primary"},children:t("table.toolbar.pageOf",{current:g,total:c})}),jsx(IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.min(l+1,c-1)),disabled:!m,sx:{p:.35,color:"text.primary"},children:jsx(Tf,{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,C)=>jsx(Kt__default.Fragment,{children:h},`toolbar-custom-${C}`))}),jsx(Box,{sx:{width:"1px",height:20,bgcolor:"divider",mx:.5}}),jsx(Tooltip,{title:t("table.toolbar.groupBy"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.setGroupAnchorEl(h.currentTarget),children:jsx(Badge,{badgeContent:e.grouping?.length,color:"primary",children:jsx(jh,{})})})}),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(Zh,{})})}),jsx(Tooltip,{title:t("table.toolbar.columns"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.setAnchorEl(h.currentTarget),children:jsx(Kh,{})})}),jsx(Tooltip,{title:t("table.toolbar.export"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.handleExport,children:jsx(_h,{})})}),e.showCreateButton&&jsx(Tooltip,{title:t("table.toolbar.newItem"),children:jsx(IconButton,{onClick:e.onOpenCreateDialog,color:"primary",children:jsx(Tu,{})})}),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(Qh,{})})})}),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(Jh,{})})})}),e.onOpenGraphReport&&jsx(Tooltip,{title:t("table.toolbar.graphicReport"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.onOpenGraphReport,children:jsx(Xh,{})})}),e.onLayoutSave&&!e.layoutManager&&jsx(Tooltip,{title:t("table.toolbar.saveLayout"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.onLayoutSave(h),children:jsx(vp,{})})}),e.layoutManager]})]})};var ji=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:o}=e;return "translate3d("+(t?Math.round(t):0)+"px, "+(o?Math.round(o):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:o}=e;return "scaleX("+t+") scaleY("+o+")"}},Transform:{toString(e){if(e)return [ji.Translate.toString(e),ji.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:o,easing:r}=e;return t+" "+o+"ms "+r}}});var Zi=e=>{let{t}=ae(),{onSelectAllClick:o,order:r,orderBy:a,sortBy:n=[],numSelected:i=0,rowCount:s=0,onRequestSort:d,onContextMenu:l,columns:c,visibleColumns:g,selectionMode:f,grouping:m=[],isAllExpanded:h=false,handleToggleAll:C,onColumnResize:u,columnWidths:v,enableColumnReorder:p=false}=e,[b,y]=useState(null),T=useRef(null),E=K=>ee=>{b||d(K);},R=(K,ee,le)=>{K.preventDefault(),K.stopPropagation(),y(ee),T.current={startX:K.clientX,startWidth:le,colId:ee},document.addEventListener("mousemove",w),document.addEventListener("mouseup",I),document.body.style.cursor="col-resize";},w=K=>{if(!T.current)return;let{startX:ee,startWidth:le,colId:G}=T.current,te=K.clientX-ee,me=Math.max(50,le+te);u&&u(G,me);},I=()=>{y(null),T.current=null,document.removeEventListener("mousemove",w),document.removeEventListener("mouseup",I),document.body.style.cursor="";};useEffect(()=>()=>{document.removeEventListener("mousemove",w),document.removeEventListener("mouseup",I);},[]);let k=f==="multiple"||f==="single",S=m.length>0&&!!C,B=t(h?"table.group.collapseAll":"table.group.expandAll"),P=c.filter(K=>g.includes(K.id)),M=new Map(n.map((K,ee)=>[K.field,{...K,priority:ee+1}])),A=P.map(K=>{let ee=v?.[K.id]||K.minWidth||100,le=M.get(K.id);return jsx(hb,{headCell:K,width:typeof ee=="number"?ee:100,order:r,orderBy:a,multiSortInfo:le,onRequestSort:E(K.id),onContextMenu:l,onResizeMouseDown:G=>R(G,K.id,typeof ee=="number"?ee:100),enableColumnReorder:p},K.id)}),Z=P.map(K=>K.id),W=jsxs(ib,{children:[k&&jsx(Js,{padding:"checkbox",sx:K=>({width:48,position:"sticky",top:0,zIndex:4,backgroundColor:K.palette.mode==="dark"?"#000000":"#f5f5f5",color:K.palette.mode==="dark"?"#ffffff":K.palette.text.primary}),children:jsx(lb,{color:"primary",indeterminate:i>0&&i<s,checked:s>0&&i===s,onChange:o,disabled:f==="single"})}),S&&jsx(Js,{align:"center",padding:"checkbox",sx:K=>({width:44,position:"sticky",top:0,zIndex:4,backgroundColor:K.palette.mode==="dark"?"#000000":"#f5f5f5",color:K.palette.mode==="dark"?"#ffffff":K.palette.text.primary}),children:jsx(db,{title:B,children:jsx(cb,{size:"small",onClick:K=>{K.stopPropagation(),C?.(!h);},sx:{p:.2},children:h?jsx(pb,{fontSize:"small"}):jsx(ub,{fontSize:"small"})})})}),p?jsx(SortableContext,{items:Z,strategy:horizontalListSortingStrategy,children:A}):A]});return jsx(nb,{children:W})},hb=({headCell:e,width:t,order:o,orderBy:r,multiSortInfo:a,onRequestSort:n,onContextMenu:i,onResizeMouseDown:s,enableColumnReorder:d})=>{let{setNodeRef:l,attributes:c,listeners:g,transform:f,transition:m,isDragging:h}=useSortable({id:e.id,disabled:!d}),C=d?{transform:ji.Transform.toString(f),transition:m,opacity:h?.6:1}:{},u=a?.direction??(r===e.id?o:"asc"),v=!!a||r===e.id;return jsxs(Js,{ref:d?l:void 0,align:"left",padding:e.disablePadding?"none":"normal",sortDirection:v?u:false,onContextMenu:i?p=>i(p,e.id):void 0,style:{width:t,minWidth:t,maxWidth:t,...C},sx:p=>({position:"sticky",top:0,zIndex:4,backgroundColor:p.palette.mode==="dark"?"#000000":"#f5f5f5",color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary,fontWeight:"bold",userSelect:"none",cursor:d?h?"grabbing":"grab":void 0}),...d?c:{},...d?g:{},children:[jsx(sb,{active:v,direction:u,onClick:n,sx:p=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary,opacity:v?1:0,transition:"opacity 0.2s"},"&:hover .MuiTableSortLabel-icon":{opacity:.5},"&.Mui-active .MuiTableSortLabel-icon":{opacity:1,color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary}),children:jsxs(ui,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1,display:"inline-flex",alignItems:"center",gap:.5},children:[e.label,a&&jsx(ui,{component:"span",sx:p=>({display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:16,height:16,px:.5,borderRadius:999,fontSize:10,fontWeight:700,color:"#fff",backgroundColor:p.palette.primary.main}),children:a.priority})]})}),jsx(ui,{onMouseDown:s,onPointerDown:p=>p.stopPropagation(),onClick:p=>p.stopPropagation(),sx:p=>({position:"absolute",right:0,top:0,bottom:0,width:5,cursor:"col-resize",backgroundColor:"transparent",transition:"background-color 120ms ease","&:hover":{backgroundColor:p.palette.mode==="dark"?"rgba(148,163,184,0.28)":"rgba(15,23,42,0.12)"},zIndex:1})})]})};var gu=e=>{let{t}=ae(),{visibleRows:o,visibleColumns:r,selected:a=[],handleClick:n,columns:i,toggleGroupExpand:s,expandedGroups:d=new Set,selectionMode:l,grouping:c=[],isGroupFullyExpanded:g,handleExpandGroupRecursively:f,handleCollapseGroupRecursively:m}=e,h=p=>a.indexOf(p)!==-1,C=l==="multiple"||l==="single",u=c.length>0,v=r.length+(C?1:0)+(u?1:0);return jsxs(TableBody,{children:[o.map((p,b)=>{if(p.type==="group"){let y=d.has(p.id),T=p.childIds||[],E=T.filter(k=>h(k)).length,R=T.length>0&&E===T.length,w=E>0&&E<T.length;return jsxs(TableRow,{sx:k=>({backgroundColor:k.palette.mode==="dark"?"#111111":"#f5f5f5","& .MuiTableCell-root":{color:k.palette.text.primary,borderBottomColor:k.palette.divider},"& .MuiIconButton-root":{color:k.palette.text.primary},"& .MuiCheckbox-root":{color:k.palette.text.secondary},"& .MuiCheckbox-root.Mui-checked, & .MuiCheckbox-root.MuiCheckbox-indeterminate":{color:k.palette.primary.main}}),children:[C&&jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:R,indeterminate:w,onChange:k=>{if(k.stopPropagation(),!!e.onSelectionChange)if(R){let S=a.filter(B=>!T.includes(B));e.onSelectionChange(S);}else {let S=Array.from(new Set([...a,...T]));e.onSelectionChange(S);}},onClick:k=>k.stopPropagation(),sx:{p:.5}})}),u&&jsx(TableCell,{padding:"checkbox",sx:{width:44},children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.25},children:[c.length>1&&p.level<c.length-1&&jsx(Tooltip,{title:g?.(p.id)?t("table.group.collapseAll"):t("table.group.expandAll"),children:jsx(IconButton,{size:"small",onClick:()=>{g?.(p.id)?m?.(p.id):f?.(p.id);},sx:{p:.25},children:g?.(p.id)?jsx(pb,{fontSize:"small"}):jsx(ub,{fontSize:"small"})})}),jsx(IconButton,{size:"small",onClick:()=>s&&s(p.id),sx:{p:.25},children:y?jsx(kb,{}):jsx(Tf,{})})]})}),jsx(TableCell,{colSpan:r.length,sx:{py:1,pl:p.level*3+1},children:jsxs(Typography,{variant:"body2",fontWeight:"bold",color:"text.primary",sx:{fontSize:"0.85rem"},children:[p.field,": ",p.value," (",p.count,")"]})})]},p.id)}else {let y=p.data||p,T=p.id||y.id||b,E=h(T),R=`enhanced-table-checkbox-${b}`,I=(p.level!==void 0?p.level:0)*4;return jsxs(TableRow,{hover:true,onClick:k=>n&&n(k,y),role:"checkbox","aria-checked":E,tabIndex:-1,selected:E,sx:{cursor:"pointer"},children:[C&&jsx(TableCell,{padding:"checkbox",sx:{pl:I>0?I+1:void 0},children:jsx(Checkbox,{color:"primary",checked:E,inputProps:{"aria-labelledby":R}})}),u&&jsx(TableCell,{padding:"checkbox",sx:{width:44}}),i.filter(k=>r.includes(k.id)).map((k,S)=>{let P=!C&&S===0&&I>0?{pl:I+2}:{};return jsx(TableCell,{align:"left",sx:P,children:k.render?k.render(y[k.id],y):(function(){let A=y[k.id];if(k.numeric){if(typeof A=="number")return A.toLocaleString();if(typeof A=="string"&&A.trim()!==""&&!isNaN(Number(A)))return Number(A).toLocaleString()}return A})()},k.id)})]},T)}}),o.length===0&&jsx(TableRow,{children:jsx(TableCell,{colSpan:v,align:"center",children:t("common.noData")})})]})};var fu=e=>{let{visibleColumns:t,summaryRow:o,selectionMode:r,grouping:a=[]}=e;if(!e.showSummary)return null;let n=r==="multiple"||r==="single",i=a.length>0;return jsx(TableFooter,{sx:{position:"sticky",bottom:0,zIndex:e.zIndex,bgcolor:"background.paper"},children:jsxs(TableRow,{children:[n&&jsx(TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper"}}),i&&jsx(TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper",width:44}}),t.map(s=>jsx(TableCell,{sx:{fontWeight:"bold",fontSize:"0.85rem",bgcolor:"background.paper",color:"text.primary"},children:(function(){let l=o[s];return l==null||l===""?"":typeof l=="number"?l.toLocaleString():typeof l=="string"&&l.trim()!==""&&!isNaN(Number(l))?Number(l).toLocaleString():l})()},s))]})})};var bu=e=>{let{t}=ae();return jsx(Box,{sx:{p:2},children:jsx(Typography,{children:t("table.mobile.notImplemented")})})};var Qa=({groupAnchorEl:e,setGroupAnchorEl:t,grouping:o,setGrouping:r,columns:a,toggleGroupField:n})=>{let{t:i}=ae();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxs(Box,{sx:{p:1,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[jsx(Typography,{variant:"subtitle2",sx:{px:1},children:i("table.menu.groupBy")}),o.length>0&&jsx(Button,{size:"small",color:"error",onClick:()=>r([]),startIcon:jsx(ku,{}),children:i("table.menu.clearAll")})]}),jsx(Divider,{}),a.map(s=>{let d=o.includes(s.id),l=o.indexOf(s.id)+1;return jsx(MenuItem,{onClick:()=>n(s.id),children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Checkbox,{checked:d,size:"small"}),jsx(ListItemText,{primary:s.label}),d&&jsx(Badge,{badgeContent:l,color:"primary",sx:{mr:2}})]})},s.id)})]})},Ja=({anchorEl:e,setAnchorEl:t,columns:o,visibleColumns:r,toggleColumnVisibility:a})=>{let{t:n}=ae();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:n("table.menu.visibleColumns")})}),jsx(Divider,{}),o.map(i=>jsxs(MenuItem,{onClick:()=>a(i.id),children:[jsx(Checkbox,{checked:r.includes(i.id),size:"small"}),jsx(ListItemText,{primary:i.label})]},i.id))]})},Qi=({anchorEl:e,setAnchorEl:t,showSummary:o,setShowSummary:r,columns:a,summaryColumns:n,toggleSummaryColumn:i})=>{let{t:s}=ae();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{children:jsx(FormControlLabel,{control:jsx(Switch,{checked:o,onChange:d=>r(d.target.checked),size:"small"}),label:s("table.menu.showSummaryRow")})}),jsx(Divider,{}),a.filter(d=>d.numeric).map(d=>jsxs(MenuItem,{onClick:()=>i(d.id),disabled:!o,children:[jsx(Checkbox,{checked:n.includes(d.id),size:"small"}),jsx(ListItemText,{primary:d.label})]},d.id)),a.filter(d=>d.numeric).length===0&&jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:s("table.menu.noNumericColumns")})})]})},Ji=({contextMenu:e,handleCloseContextMenu:t,columns:o,visibleColumns:r,toggleColumnVisibility:a})=>{let{t:n}=ae();return jsxs(Menu,{open:e!==null,onClose:t,anchorReference:"anchorPosition",anchorPosition:e!==null?{top:e.mouseY,left:e.mouseX}:void 0,children:[jsx(MenuItem,{onClick:t,children:n("common.copy")}),jsx(Divider,{}),jsx(MenuItem,{disabled:true,children:n("table.menu.visibleColumns")}),o.map(i=>jsxs(MenuItem,{onClick:()=>a(i.id),children:[jsx(ListItemIcon,{children:r.includes(i.id)&&jsx(zb,{fontSize:"small"})}),jsx(ListItemText,{children:i.label})]},i.id))]})},Iu=({contextMenu:e,handleClose:t,columns:o,visibleColumns:r,grouping:a,summaryColumns:n,showSummary:i,sortBy:s,orderBy:d,order:l,onSortAsc:c,onSortDesc:g,onClearSort:f,onHideColumn:m,onToggleGroup:h,onToggleSummary:C,onOpenSortDialog:u})=>{let{t:v}=ae(),p=e?.columnId??"",b=o.find(S=>S.id===p),y=a.includes(p),T=n.includes(p),E=!!b?.numeric,R=s.find(S=>S.field===p),w=R?R.direction==="asc":d===p&&l==="asc",I=R?R.direction==="desc":d===p&&l==="desc",k=w||I;return jsxs(Menu,{open:e!==null,onClose:t,anchorReference:"anchorPosition",anchorPosition:e!==null?{top:e.mouseY,left:e.mouseX}:void 0,children:[jsx(MenuItem,{disabled:true,sx:{opacity:"1 !important",fontWeight:700},children:jsx(ListItemText,{primary:b?.label??p})}),jsx(Divider,{}),jsxs(MenuItem,{onClick:()=>{c(p),t();},selected:w,children:[jsx(ListItemIcon,{children:jsx(Su,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.sortAsc")})]}),jsxs(MenuItem,{onClick:()=>{g(p),t();},selected:I,children:[jsx(ListItemIcon,{children:jsx(wu,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.sortDesc")})]}),k&&jsxs(MenuItem,{onClick:()=>{f(p),t();},children:[jsx(ListItemIcon,{children:jsx(ku,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.clearSort")})]}),jsxs(MenuItem,{onClick:()=>{u(),t();},children:[jsx(ListItemIcon,{children:jsx(Tu,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.configureSort")})]}),jsx(Divider,{}),jsxs(MenuItem,{onClick:()=>{h(p),t();},selected:y,children:[jsx(ListItemIcon,{children:jsx(jh,{fontSize:"small"})}),jsx(ListItemText,{primary:v(y?"table.headerMenu.ungroup":"table.headerMenu.group")})]}),E&&i&&jsxs(MenuItem,{onClick:()=>{C(p),t();},selected:T,children:[jsx(ListItemIcon,{children:jsx(Zh,{fontSize:"small"})}),jsx(ListItemText,{primary:v(T?"table.headerMenu.removeSummary":"table.headerMenu.addSummary")})]}),jsx(Divider,{}),jsxs(MenuItem,{onClick:()=>{m(p),t();},children:[jsx(ListItemIcon,{children:jsx(Nb,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.hideColumn")})]})]})},Pu=({open:e,onClose:t,columns:o,initialRules:r,onApply:a,onClear:n})=>{let{t:i}=ae(),[s,d]=useState([]);useEffect(()=>{e&&d(r.length>0?r.map(C=>({...C})):[]);},[e,r]);let l=useMemo(()=>new Set(s.map(C=>C.field)),[s]),c=useMemo(()=>o.filter(C=>!l.has(C.id)),[o,l]),g=()=>{let C=c[0];C&&d(u=>[...u,{field:C.id,direction:"asc"}]);},f=C=>{d(u=>u.filter((v,p)=>p!==C));},m=(C,u)=>{d(v=>v.map((p,b)=>b===C?{...p,...u}:p));},h=(C,u)=>{d(v=>{let p=C+u;if(p<0||p>=v.length)return v;let b=[...v],[y]=b.splice(C,1);return b.splice(p,0,y),b});};return jsxs(Dialog,{open:e,onClose:t,maxWidth:"sm",fullWidth:true,children:[jsx(DialogTitle,{children:i("table.sortDialog.title")}),jsxs(DialogContent,{dividers:true,children:[s.length===0?jsx(Typography,{variant:"body2",sx:{color:"text.secondary",py:2},children:i("table.sortDialog.empty")}):jsx(Stack,{spacing:1,children:s.map((C,u)=>{let v=new Set(s.filter((b,y)=>y!==u).map(b=>b.field)),p=o.filter(b=>!v.has(b.id));return jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"24px 1fr 110px auto auto",alignItems:"center",gap:1},children:[jsx(Badge,{badgeContent:u+1,color:"primary",sx:{ml:.5}}),jsx("select",{value:C.field,onChange:b=>m(u,{field:b.target.value}),style:{padding:6,fontSize:13,borderRadius:4},children:p.map(b=>jsx("option",{value:b.id,children:b.label},b.id))}),jsxs("select",{value:C.direction,onChange:b=>m(u,{direction:b.target.value}),style:{padding:6,fontSize:13,borderRadius:4},children:[jsx("option",{value:"asc",children:i("table.sortDialog.asc")}),jsx("option",{value:"desc",children:i("table.sortDialog.desc")})]}),jsx(IconButton,{size:"small",onClick:()=>h(u,-1),disabled:u===0,children:jsx(Su,{fontSize:"small"})}),jsxs(Stack,{direction:"row",children:[jsx(IconButton,{size:"small",onClick:()=>h(u,1),disabled:u===s.length-1,children:jsx(wu,{fontSize:"small"})}),jsx(IconButton,{size:"small",onClick:()=>f(u),children:jsx(Hb,{fontSize:"small"})})]})]},`sort-rule-${u}`)})}),jsx(Button,{size:"small",onClick:g,disabled:c.length===0,startIcon:jsx(Tu,{}),sx:{mt:2},children:i("table.sortDialog.addRule")})]}),jsxs(DialogActions,{children:[jsx(Button,{color:"inherit",onClick:()=>{n(),t();},children:i("table.sortDialog.clearAll")}),jsx(Box,{sx:{flex:1}}),jsx(Button,{onClick:t,children:i("common.cancel")}),jsx(Button,{variant:"contained",onClick:()=>{a(s),t();},children:i("common.ok")})]})]})};var ei=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),Mu=({kpis:e})=>{let{t}=ae(),o=[{label:t("graph.kpi.totalRecords"),value:ei(e.totalRecords,0),color:"text.primary"},{label:t("graph.kpi.totalReport"),value:ei(e.totalReportHours),color:"text.primary"},{label:t("graph.kpi.totalBillable"),value:ei(e.totalBillableHours),color:"success.main"},{label:t("graph.kpi.efficiency"),value:`${e.efficiency.toFixed(2)}%`,color:"warning.main"},{label:t("graph.kpi.amount"),value:ei(e.totalAmount),color:"info.main"},{label:t("graph.kpi.flagged"),value:ei(e.flaggedCount,0),color:"error.main"}];return jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(6, minmax(0, 1fr))"},gap:1.5},children:o.map(r=>jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2,minHeight:96,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[jsx(Typography,{variant:"caption",color:"text.secondary",children:r.label}),jsx(Typography,{variant:"h4",fontWeight:800,sx:{color:r.color},children:r.value})]},r.label))})};var el=({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 oi=({data:e,orientation:t="horizontal",valueSuffix:o="",minHeight:r=210,activeName:a,onItemClick:n})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let i=Math.max(...e.map(s=>s.value),1);return t==="vertical"?jsx(Box,{sx:{display:"flex",gap:1,alignItems:"flex-end",minHeight:r},children:e.map(s=>jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Box,{onClick:()=>n?.(s),sx:{height:`${Math.max(s.value/i*180,6)}px`,bgcolor:s.name===a?"primary.dark":"primary.main",borderRadius:"8px 8px 0 0",cursor:n?"pointer":"default",opacity:a&&s.name!==a?.45:1}}),jsx(Typography,{variant:"caption",noWrap:true,title:s.name,sx:{display:"block",mt:.5},children:s.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",children:[s.value.toFixed(1),o]})]},s.name))}):jsx(Stack,{spacing:1,children:e.map(s=>jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"140px 1fr 64px",gap:1},children:[jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,title:s.name,children:s.name}),jsx(Box,{onClick:()=>n?.(s),sx:{alignSelf:"center",bgcolor:"action.hover",height:10,borderRadius:999,overflow:"hidden",cursor:n?"pointer":"default",opacity:a&&s.name!==a?.45:1},children:jsx(Box,{sx:{width:`${s.value/i*100}%`,height:"100%",bgcolor:s.name===a?"primary.dark":"primary.main"}})}),jsxs(Typography,{variant:"caption",sx:{textAlign:"right",fontWeight:600},children:[s.value.toFixed(1),o]})]},s.name))})};var Bu=({data:e,color:t="#42A5F5",valueSuffix:o="",height:r=220})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let a=640,n=28,i=e.map(f=>f.value),s=Math.min(...i,0),l=Math.max(...i,1)-s||1,c=e.map((f,m)=>{let h=n+m*(a-n*2)/Math.max(e.length-1,1),C=r-n-(f.value-s)/l*(r-n*2);return {x:h,y:C,...f}}),g=c.map(f=>`${f.x},${f.y}`).join(" ");return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${a} ${r}`,sx:{width:"100%",height:r},children:[jsx("line",{x1:n,y1:r-n,x2:a-n,y2:r-n,stroke:"rgba(148,163,184,0.4)"}),jsx("polyline",{fill:"none",stroke:t,strokeWidth:3,points:g}),c.map(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 Fu=({data:e,barColor:t="#64B5F6",lineColor:o="#FFB74D",height:r=220})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let a=640,n=28,i=Math.max(...e.map(c=>c.barValue),1),s=Math.max(...e.map(c=>c.lineValue),1),d=e.map((c,g)=>{let f=(a-n*2)/e.length,m=Math.max(f*.5,8),h=n+g*f+(f-m)/2,C=c.barValue/i*(r-n*2),u=r-n-C;return {x:h,y:u,barHeight:C,barWidth:m,item:c}}),l=e.map((c,g)=>{let f=(a-n*2)/e.length,m=n+g*f+f/2,h=r-n-c.lineValue/s*(r-n*2);return {x:m,y:h,item:c}});return jsxs(Stack,{spacing:1.25,children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${a} ${r}`,sx:{width:"100%",height:r},children:[jsx("line",{x1:n,y1:r-n,x2:a-n,y2:r-n,stroke:"rgba(148,163,184,0.4)"}),d.map(c=>jsx("rect",{x:c.x,y:c.y,width:c.barWidth,height:Math.max(c.barHeight,4),rx:6,fill:t},c.item.name)),jsx("polyline",{fill:"none",stroke:o,strokeWidth:3,points:l.map(c=>`${c.x},${c.y}`).join(" ")}),l.map(c=>jsx("circle",{cx:c.x,cy:c.y,r:3.5,fill:o},`${c.item.name}-line`))]}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${e.length}, minmax(0, 1fr))`,gap:1},children:e.map(c=>jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",noWrap:true,title:c.name,sx:{display:"block"},children:c.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:["Bar: ",c.barValue.toFixed(1)]}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:["Line: ",c.lineValue.toFixed(1)]})]},c.name))})]})};var Xb=e=>`rgba(30, 136, 229, ${.2+Math.max(0,Math.min(1,e))*.8})`,Lu=({data:e})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let t=Array.from(new Set(e.map(n=>n.x))),o=Array.from(new Set(e.map(n=>n.y))),r=Math.max(...e.map(n=>n.value),1),a=new Map(e.map(n=>[`${n.y}__${n.x}`,n.value]));return jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{sx:{display:"grid",gridTemplateColumns:`120px repeat(${t.length}, minmax(64px, 1fr))`,gap:1,minWidth:120+t.length*64},children:[jsx(Box,{}),t.map(n=>jsx(Typography,{variant:"caption",sx:{textAlign:"center",fontWeight:600},children:n},n)),o.map(n=>jsxs(Box,{sx:{display:"contents"},children:[jsx(Typography,{variant:"caption",sx:{alignSelf:"center"},children:n}),t.map(i=>{let s=a.get(`${n}__${i}`)||0,d=s/r;return jsx(Box,{sx:{height:36,borderRadius:1,bgcolor:Xb(d),border:"1px solid rgba(148,163,184,0.2)",display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(Typography,{variant:"caption",fontWeight:700,children:s.toFixed(1)})},`${n}-${i}`)})]},n))]})})};var Yb=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],ll=({data:e,variant:t="donut",colors:o=Yb,size:r=180,activeName:a,onItemClick:n})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let i=0,s=e.map((d,l)=>{let c=i;return i+=d.percent,`${o[l%o.length]} ${c}% ${i}%`});return jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:2,alignItems:"center",children:[jsx(Box,{sx:{width:r,height:r,borderRadius:"50%",background:`conic-gradient(${s.join(", ")})`,position:"relative",flexShrink:0},children:t==="donut"&&jsx(Box,{sx:{position:"absolute",inset:Math.round(r*.18),bgcolor:"background.paper",borderRadius:"50%"}})}),jsx(Stack,{spacing:1,sx:{minWidth:180},children:e.map((d,l)=>jsxs(Box,{onClick:()=>n?.(d),sx:{display:"flex",alignItems:"center",gap:1,cursor:n?"pointer":"default",opacity:a&&d.name!==a?.45:1},children:[jsx(Box,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:o[l%o.length]}}),jsx(Typography,{variant:"caption",sx:{flex:1},children:d.name}),jsxs(Typography,{variant:"caption",sx:{fontWeight:700},children:[d.percent.toFixed(0),"%"]})]},d.name))})]})};var Nu=({effect:e,branches:t})=>{if(t.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let o=t.filter((a,n)=>n%2===0),r=t.filter((a,n)=>n%2===1);return jsxs(Stack,{spacing:1.5,children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.max(o.length,1)}, minmax(0, 1fr))`,gap:1},children:o.map(a=>jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1},children:[jsx(Typography,{variant:"caption",fontWeight:700,children:a.title}),a.causes.map(n=>jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:n},n))]},a.title))}),jsxs(Box,{sx:{position:"relative",height:32},children:[jsx(Box,{sx:{position:"absolute",inset:"50% 0 auto 0",borderTop:"2px solid",borderColor:"primary.main"}}),jsx(Box,{sx:{position:"absolute",right:0,top:"calc(50% - 12px)",px:1,py:.25,borderRadius:1,bgcolor:"primary.main",color:"primary.contrastText"},children:jsx(Typography,{variant:"caption",fontWeight:700,children:e})})]}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.max(r.length,1)}, minmax(0, 1fr))`,gap:1},children:r.map(a=>jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1},children:[jsx(Typography,{variant:"caption",fontWeight:700,children:a.title}),a.causes.map(n=>jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:n},n))]},a.title))})]})};var Ou=({data:e,height:t=240})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let o=0,r=e.map(g=>{let f=g.type==="total"?0:o,m=g.type==="total"?g.value:o+g.value;return g.type!=="total"&&(o=m),{...g,start:f,end:m,delta:m-f}}),a=r.flatMap(g=>[g.start,g.end]),n=Math.min(...a,0),i=Math.max(...a,1),s=680,d=30,l=i-n||1,c=g=>t-d-(g-n)/l*(t-d*2);return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${s} ${t}`,sx:{width:"100%",height:t},children:[jsx("line",{x1:d,y1:c(0),x2:s-d,y2:c(0),stroke:"rgba(148,163,184,0.4)"}),r.map((g,f)=>{let m=(s-d*2)/r.length,h=Math.max(m*.55,8),C=d+f*m+(m-h)/2,u=c(Math.max(g.start,g.end)),v=c(Math.min(g.start,g.end)),p=g.type==="total"?"#42A5F5":g.delta>=0?"#66BB6A":"#EF5350";return jsxs("g",{children:[jsx("rect",{x:C,y:u,width:h,height:Math.max(v-u,4),rx:6,fill:p}),jsx("text",{x:C+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(${r.length}, minmax(0, 1fr))`,gap:1},children:r.map(g=>jsx(Typography,{variant:"caption",noWrap:true,title:g.name,children:g.name},g.name))})]})};var ni=({apiKey:e,query:t,zoom:o=14,mapType:r="roadmap"})=>{let a=encodeURIComponent(t);return `https://www.google.com/maps/embed/v1/place?key=${encodeURIComponent(e)}&q=${a}&zoom=${o}&maptype=${r}`},XR=(e,t=360)=>{let o=ni(e);return `<iframe width="100%" height="${t}" style="border:0" loading="lazy" allowfullscreen referrerpolicy="no-referrer-when-downgrade" src="${o}"></iframe>`};var $u=({apiKey:e,query:t,embedUrl:o,zoom:r=14,mapType:a="roadmap",height:n=320})=>{let i=o||(e&&t?ni({apiKey:e,query:t,zoom:r,mapType:a}):"");return i?jsxs(Box,{children:[jsx(Box,{component:"iframe",src:i,loading:"lazy",referrerPolicy:"no-referrer-when-downgrade",sx:{width:"100%",height:n,border:0,borderRadius:2}}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{mt:.75,display:"block"},children:["If iframe is blocked, open directly: ",jsx(Link,{href:i,target:"_blank",rel:"noreferrer",children:"Google Maps"})]})]}):jsx(Box,{children:jsx(Typography,{variant:"body2",color:"text.secondary",children:"Google Map requires `embedUrl` or (`apiKey` + `query`)."})})};var dl=({keyword:e,location:t,src:o="orbcafe-ui"})=>{if(t){let r=encodeURIComponent(t.name||e||"Location");return `https://uri.amap.com/marker?position=${t.lng},${t.lat}&name=${r}&src=${encodeURIComponent(o)}&coordinate=gaode&callnative=0`}return e?`https://uri.amap.com/search?keyword=${encodeURIComponent(e)}&src=${encodeURIComponent(o)}&callnative=0`:"https://uri.amap.com/search?keyword=%E5%8C%97%E4%BA%AC&src=orbcafe-ui&callnative=0"};var qu=({keyword:e,location:t,embedUrl:o,height:r=320})=>{let a=o||dl({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0});return jsxs(Box,{children:[jsx(Box,{component:"iframe",src:a,loading:"lazy",referrerPolicy:"no-referrer-when-downgrade",sx:{width:"100%",height:r,border:0,borderRadius:2}}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{mt:.75,display:"block"},children:["If iframe is blocked, open directly: ",jsx(Link,{href:a,target:"_blank",rel:"noreferrer",children:"AMap"})]})]})};var _u=({billableByPrimary:e,efficiencyBySecondary:t,statusDistribution:o,interaction:r})=>{let{t:a}=ae();return jsxs(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"1.2fr 1.2fr 1fr"}},children:[jsx(el,{title:a("graph.chart.billable.title"),subtitle:a("graph.chart.billable.subtitle"),children:jsx(oi,{data:e,orientation:"horizontal",activeName:r?.filters?.primaryDimension,onItemClick:n=>r?.onPrimaryDimensionClick?.(n.name)})}),jsx(el,{title:a("graph.chart.efficiency.title"),subtitle:a("graph.chart.efficiency.subtitle"),children:jsx(oi,{data:t,orientation:"vertical",valueSuffix:"%",activeName:r?.filters?.secondaryDimension,onItemClick:n=>r?.onSecondaryDimensionClick?.(n.name)})}),jsx(el,{title:a("graph.chart.status.title"),subtitle:a("graph.chart.status.subtitle"),children:jsx(ll,{data:o,variant:"donut",activeName:r?.filters?.status,onItemClick:n=>r?.onStatusClick?.(n.name)})})]})};var ko=e=>jsx(TextField,{...e,variant:e.variant||"outlined",size:e.size||"small",fullWidth:e.fullWidth!==void 0?e.fullWidth:true});var mc=e=>jsx(TextField,{...e,multiline:true,minRows:3,fullWidth:true,variant:"outlined"});var hy=["doubao-lite","gpt-4o-mini","gpt-4.1-mini","claude-3.5-sonnet"],by=["zh","en","de","fr","ja","ko"],Xu=({open:e,onClose:t,value:o,onSaveAll:r,modelOptions:a=hy,promptLangOptions:n=by,analysisTemplateOptions:i=[],responseTemplateOptions:s=[],defaultAnalysisTemplateId:d,defaultResponseTemplateId:l})=>{let[c,g]=useState(o),[f,m]=useState(d||""),[h,C]=useState(l||""),[u,v]=useState(false);useEffect(()=>{e&&(g(o),m(d||""),C(l||""));},[e,o,d,l]);let p=(y,T)=>{g(E=>({...E,[y]:T}));},b=async()=>{if(r)try{v(!0),await r({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(Dh,{})})]}),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(ko,{size:"small",value:c.baseUrl,onChange:y=>p("baseUrl",y.target.value),fullWidth:true,label:"Base URL"})}),jsx(Box,{children:jsx(ko,{size:"small",type:"password",value:c.apiKey,onChange:y=>p("apiKey",y.target.value),fullWidth:true,label:"API Key"})}),jsx(Box,{children:jsx(ko,{size:"small",value:c.model,onChange:y=>p("model",y.target.value),fullWidth:true,select:true,label:"Model",children:a.map(y=>jsx(MenuItem,{value:y,children:y},y))})}),jsx(Box,{children:jsx(ko,{size:"small",value:c.promptLang,onChange:y=>p("promptLang",y.target.value),fullWidth:true,select:true,label:"Prompt Lang",children:n.map(y=>jsx(MenuItem,{value:y,children:y},y))})})]}),jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.5},children:[jsxs(ko,{size:"small",value:f,onChange:y=>m(y.target.value),fullWidth:true,select:true,label:"Analysis Template",children:[jsx(MenuItem,{value:"",children:"Default"}),i.map(y=>jsx(MenuItem,{value:y.id,children:y.label},y.id))]}),jsx(mc,{multiline:true,minRows:8,value:c.analysisPrompt,onChange:y=>p("analysisPrompt",y.target.value),fullWidth:true,label:"Analysis Prompt",sx:{"& .MuiInputBase-root":{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"}}}),jsxs(ko,{size:"small",value:h,onChange:y=>C(y.target.value),fullWidth:true,select:true,label:"Response Template",children:[jsx(MenuItem,{value:"",children:"Default"}),s.map(y=>jsx(MenuItem,{value:y.id,children:y.label},y.id))]}),jsx(mc,{multiline:true,minRows:8,value:c.responsePrompt,onChange:y=>p("responsePrompt",y.target.value),fullWidth:true,label:"Response Prompt",sx:{"& .MuiInputBase-root":{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"}}})]})]})}),jsxs(DialogActions,{sx:{px:3,pb:2.5,pt:1.2,gap:1},children:[jsx(Button,{variant:"outlined",onClick:t,children:"Cancel"}),jsx(Button,{variant:"contained",onClick:b,disabled:!r||u,children:"Save"})]})]})};var fl=({open:e,onClose:t,model:o,tableContent:r,extraCharts:a,interaction:n,aiAssistant:i})=>{let{t:s}=ae(),[d,l]=useState(i?.defaultPrompt||""),[c,g]=useState(false),[f,m]=useState(false),h=n?.enabled!==false&&!!n,C=i?.enabled!==false,u=n?.filters||{},v=!!(u.primaryDimension||u.secondaryDimension||u.status),p=i?.placeholder||"Ask AI to analyze data, create charts, or find insights...";useEffect(()=>{e&&l(i?.defaultPrompt||"");},[e,i?.defaultPrompt]);let b=i?.settings||{baseUrl:"/llm-api",apiKey:"",model:"doubao-lite",promptLang:"zh",analysisPrompt:"",responsePrompt:""},y=async()=>{let T=d.trim();if(!(!T||!i?.onSubmit))try{g(!0),await i.onSubmit(T,{filters:u,model:o});}finally{g(false);}};return jsx(Dialog,{open:e,onClose:t,fullScreen:true,children:jsxs(Box,{sx:{height:"100%",display:"flex",flexDirection:"column",bgcolor:"background.default"},children:[jsx(Box,{sx:{p:2,borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:{xs:"column",lg:"row"},alignItems:{xs:"stretch",lg:"center"},justifyContent:"space-between",spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{flexWrap:"wrap"},children:[jsx(Typography,{variant:"h5",fontWeight:800,children:o.title}),jsx(Chip,{size:"small",label:s("graph.records",{count:o.kpis.totalRecords})}),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&&v&&jsx(Button,{size:"small",onClick:()=>n?.onClearAll(),children:"Clear"})]}),jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{width:{xs:"100%",lg:"auto"}},children:[C&&jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minWidth:{xs:0,lg:520},flex:{xs:1,lg:"0 0 auto"}},children:[jsx(IconButton,{size:"small",onClick:i?.onVoiceInput,children:jsx(Sy,{sx:{fontSize:18,color:"text.secondary"}})}),jsx(InputBase,{fullWidth:true,value:d,onChange:T=>l(T.target.value),onKeyDown:T=>{T.key==="Enter"&&(T.preventDefault(),y());},placeholder:p,sx:{fontSize:"0.9rem"}}),jsx(IconButton,{size:"small",onClick:y,disabled:c||!d.trim(),children:jsx(Ty,{sx:{fontSize:18}})}),jsx(IconButton,{size:"small",onClick:()=>m(true),children:jsx(wy,{sx:{fontSize:18}})})]}),jsx(IconButton,{onClick:t,children:jsx(Dh,{})})]})]})}),jsxs(Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsx(Mu,{kpis:o.kpis}),jsx(_u,{billableByPrimary:o.charts.billableByPrimary,efficiencyBySecondary:o.charts.efficiencyBySecondary,statusDistribution:o.charts.statusDistribution,interaction:h?{filters:u,onPrimaryDimensionClick:T=>n?.onPrimaryDimensionClick(T),onSecondaryDimensionClick:T=>n?.onSecondaryDimensionClick(T),onStatusClick:T=>n?.onStatusClick(T)}:void 0}),a,r]}),jsx(Xu,{open:f,onClose:()=>m(false),value:b,onSaveAll:i?.onSaveAll,modelOptions:i?.modelOptions,promptLangOptions:i?.promptLangOptions,analysisTemplateOptions:i?.analysisTemplateOptions,responseTemplateOptions:i?.responseTemplateOptions,defaultAnalysisTemplateId:i?.defaultAnalysisTemplateId,defaultResponseTemplateId:i?.defaultResponseTemplateId})]})})};var ta={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"]},Py=5,Yu=e=>e.toLowerCase().replace(/[\s_-]/g,""),oa=(e,t,o,r)=>{if(t)return t;if(e.length===0)return r;let a=Object.keys(e[0]),n=new Map(a.map(i=>[Yu(i),i]));for(let i of o){let s=n.get(Yu(i));if(s)return s}return a[0]||r},Oo=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},ho=(e,t)=>e==null||e===""?t:String(e),Ry=(e,t,o,r,a)=>{let n=new Map;return e.forEach(i=>{let s=ho(i[t],a);n.set(s,(n.get(s)||0)+Oo(i[o]));}),Array.from(n.entries()).map(([i,s])=>({name:i,value:s})).sort((i,s)=>s.value-i.value).slice(0,r)},My=(e,t,o,r,a,n)=>{let i=new Map;return e.forEach(s=>{let d=ho(s[t],n),l=i.get(d)||{report:0,billable:0};l.report+=Oo(s[o]),l.billable+=Oo(s[r]),i.set(d,l);}),Array.from(i.entries()).map(([s,d])=>({name:s,value:d.report>0?d.billable/d.report*100:0})).sort((s,d)=>s.value-d.value).slice(0,a)},Dy=(e,t,o)=>{let r=e.length;if(r===0)return [];let a=new Map;return e.forEach(n=>{let i=ho(n[t],o);a.set(i,(a.get(i)||0)+1);}),Array.from(a.entries()).map(([n,i])=>({name:n,value:i,percent:i/r*100}))},Qu=(e,t,o)=>{let r=new Map;return e.forEach(a=>{let n=ho(a[t],"N/A");r.set(n,(r.get(n)||0)+Oo(a[o]));}),Array.from(r.entries()).sort(([a],[n])=>a.localeCompare(n)).map(([a,n])=>({name:a,value:n}))},Ay=(e,t,o,r,a,n)=>{let i=new Map;return e.forEach(s=>{let d=ho(s[t],n),l=i.get(d)||{report:0,billable:0};l.report+=Oo(s[o]),l.billable+=Oo(s[r]),i.set(d,l);}),Array.from(i.entries()).map(([s,d])=>({name:s,barValue:d.billable,lineValue:d.report>0?d.billable/d.report*100:0})).sort((s,d)=>d.barValue-s.barValue).slice(0,a)},By=(e,t,o,r,a)=>{let n=new Map;return e.forEach(i=>{let s=ho(i[t],a),d=ho(i[o],a),l=`${s}__${d}`;n.set(l,(n.get(l)||0)+Oo(i[r]));}),Array.from(n.entries()).map(([i,s])=>{let[d,l]=i.split("__");return {x:d,y:l,value:s}})},Fy=(e,t,o)=>{let r=Qu(e,t,o),a=r.map(i=>({name:i.name,value:i.value,type:"delta"})),n=r.reduce((i,s)=>i+s.value,0);return [...a,{name:"Total",value:n,type:"total"}]},Ey=(e,t,o,r,a,n)=>{let i=new Map;return e.forEach(s=>{let d=ho(s[t],n),l=`${ho(s[o],n)} / ${ho(s[r],n)}`,c=i.get(d)||new Map;c.set(l,(c.get(l)||0)+1),i.set(d,c);}),Array.from(i.entries()).map(([s,d])=>({title:s,causes:Array.from(d.entries()).sort((l,c)=>c[1]-l[1]).slice(0,a).map(([l,c])=>`${l} (${c})`)})).slice(0,6)},dn=({rows:e,config:t})=>{let{t:o}=ae(),r=o("graph.unassigned"),a=useMemo(()=>{let c=t?.fieldMapping;return {primaryDimension:oa(e,c?.primaryDimension,ta.primaryDimension,"Category"),secondaryDimension:oa(e,c?.secondaryDimension,ta.secondaryDimension,"Owner"),status:oa(e,c?.status,ta.status,"Status"),date:oa(e,c?.date,ta.date,"Date"),description:oa(e,c?.description,ta.description,"Description"),reportHours:oa(e,c?.reportHours,ta.reportHours,"ReportHours"),billableHours:oa(e,c?.billableHours,ta.billableHours,"BillableHours"),amount:oa(e,c?.amount,ta.amount,"Amount")}},[e,t?.fieldMapping]),n=useMemo(()=>e.map((c,g)=>{let f=Oo(c[a.reportHours]),m=Oo(c[a.billableHours]),h=Oo(c[a.amount]),C=f>0?m/f*100:0;return {id:`graph-row-${g}`,Date:ho(c[a.date],""),Primary:ho(c[a.primaryDimension],r),Secondary:ho(c[a.secondaryDimension],r),Description:ho(c[a.description],""),ReportHours:f,BillableHours:m,Amount:h,Efficiency:C,Status:ho(c[a.status],r)}}),[e,a,r]),i=useMemo(()=>{let c=n.length,g=n.reduce((v,p)=>v+Oo(p.ReportHours),0),f=n.reduce((v,p)=>v+Oo(p.BillableHours),0),m=n.reduce((v,p)=>v+Oo(p.Amount),0),h=g>0?f/g*100:0,C=t?.statusFlagValues||["flag","flagged","warning","risk"],u=n.filter(v=>C.includes(ho(v.Status,"").toLowerCase())).length;return {totalRecords:c,totalReportHours:g,totalBillableHours:f,efficiency:h,totalAmount:m,flaggedCount:u}},[n,t?.statusFlagValues]),s=t?.topN||Py,d=useMemo(()=>({billableByPrimary:Ry(n,"Primary","BillableHours",s,r),efficiencyBySecondary:My(n,"Secondary","ReportHours","BillableHours",s,r),statusDistribution:Dy(n,"Status",r),lineByDate:Qu(n,"Date","BillableHours"),comboByPrimary:Ay(n,"Primary","ReportHours","BillableHours",s,r),heatmapPrimarySecondary:By(n,"Primary","Secondary","BillableHours",r),waterfallBillable:Fy(n,"Date","BillableHours"),fishboneStatusCauses:Ey(n,"Status","Primary","Secondary",3,r)}),[n,s,r]),l=useMemo(()=>({title:t?.title||o("graph.reportTitle"),kpis:i,charts:d,table:{columns:[{id:"Date",label:a.date},{id:"Primary",label:a.primaryDimension},{id:"Secondary",label:a.secondaryDimension},{id:"Description",label:a.description},{id:"ReportHours",label:o("graph.column.reportHours"),align:"right"},{id:"BillableHours",label:o("graph.column.billableHours"),align:"right"},{id:"Amount",label:"Amount",align:"right"},{id:"Efficiency",label:"Efficiency",align:"right"},{id:"Status",label:a.status}],rows:n}}),[d,t?.title,a,i,n,o]);return {fieldMapping:a,model:l}};var un=e=>String(e??"").trim(),bl=(e={})=>{let[t,o]=useState(e),r=useCallback((d,l)=>{o(c=>{let g=l?.trim();if(!g){let f={...c};return delete f[d],f}if(c[d]===g){let f={...c};return delete f[d],f}return {...c,[d]:g}});},[]),a=useCallback(d=>{o(l=>{if(!l[d])return l;let c={...l};return delete c[d],c});},[]),n=useCallback(()=>{o({});},[]),i=useMemo(()=>!!(t.primaryDimension||t.secondaryDimension||t.status),[t]),s=useCallback((d,l)=>d.filter(c=>!(t.primaryDimension&&un(c[l.primaryDimension])!==un(t.primaryDimension)||t.secondaryDimension&&un(c[l.secondaryDimension])!==un(t.secondaryDimension)||t.status&&un(c[l.status])!==un(t.status))),[t]);return {filters:t,setFilter:r,clearFilter:a,clearAll:n,hasActiveFilters:i,applyRows:s}};var xl=({variants:e,currentVariantId:t,onLoad:o,onSave:r,onDelete:a,onSetDefault:n})=>{let{t:i}=ae(),d=useTheme().palette.mode==="dark",l="0.85rem",c={xs:"calc((100% - 1 * 16px) / 2)",sm:"calc((100% - 2 * 16px) / 3)",md:"calc((100% - 3 * 16px) / 4)",lg:"calc((100% - 5 * 16px) / 6)"},[g,f]=useState(false),[m,h]=useState(""),[C,u]=useState(false),[v,p]=useState(false),b=e.find(E=>E.id===t),y=()=>{h(b?.name||i("variant.newVariant")),u(b?.isDefault||false),p(b?.isPublic||false),f(true);},T=()=>{r({name:m,isDefault:C,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:l,bgcolor:d?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.9)":"rgba(25,118,210,0.85)"}},"& .MuiInputBase-input":{fontSize:l},"& .MuiAutocomplete-noOptions":{fontSize:l}},noOptionsText:jsx(Typography,{sx:{fontSize:l},children:i("variant.noOptions")}),options:e,getOptionLabel:E=>E.name+(E.isDefault?` (${i("variant.defaultSuffix")})`:""),value:b||null,onChange:(E,R)=>{R&&o(R);},renderInput:E=>jsx(TextField,{...E,variant:"outlined",size:"small",InputProps:{...E.InputProps,sx:{fontSize:l,color:d?"#E3F2FD":"#0D47A1"}},placeholder:i("variant.selectVariant")}),renderOption:(E,R)=>{let{key:w,...I}=E;return jsx("li",{...I,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Typography,{sx:{flex:1,fontSize:l},children:R.name}),R.isDefault&&jsx(qy,{fontSize:"small",color:"action"})]})},w)}}),jsx(Tooltip,{title:i("variant.saveView"),children:jsx(IconButton,{onClick:y,size:"small",color:"primary",children:jsx(vp,{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:m,onChange:E=>h(E.target.value)}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C,onChange:E=>u(E.target.checked)}),label:i("variant.setDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:v,onChange:E=>p(E.target.checked)}),label:i("variant.publicAllUsers")})]}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>f(false),children:i("common.cancel")}),jsx(Button,{onClick:T,variant:"contained",children:i("common.save")})]})]})]})};var ip=({appId:e,tableKey:t="default",currentFilters:o,currentLayoutId:r,layoutRefs:a,onLoad:n,variantService:i,serviceUrl:s,onError:d,onSuccess:l,currentVariantId:c,onVariantChange:g})=>{let{t:f}=ae(),[m,h]=useState([]),[C,u]=useState(""),v=`orbcafe.variants.${e}.${t}`,p=c!==void 0?c:C,b=B=>{c===void 0&&u(B),g&&g(B);},y=useCallback(()=>{try{let B=localStorage.getItem(v);if(!B)return [];let P=JSON.parse(B);return Array.isArray(P)?P:[]}catch{return []}},[v]),T=useCallback(B=>{try{localStorage.setItem(v,JSON.stringify(B));}catch{}},[v]),E=useCallback(B=>{h(B);let P=B.find(M=>M.isDefault);P&&!p&&(b(P.id),n(P));},[p,n,b]),R=useCallback(async()=>{if(!e)return [];try{let B=[];if(i)B=await i.getVariants(e,t);else if(s){let P=await fetch(`${s}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!P.ok)throw new Error(f("variant.toast.fetchFailed"));B=await P.json();}else B=y();return E(B),B}catch(B){console.error("Error fetching variants",B);let P=y();return E(P),d&&d(f("variant.toast.fetchFailed")),P}},[e,t,i,s,y,E,d,f]);return useEffect(()=>{R();},[e,t]),jsx(xl,{variants:m,currentVariantId:p,onLoad:B=>{b(B.id),n(B);},onSave:async B=>{let P=Date.now().toString(),M;try{let A=B.scope||"Both",Z=m.find(le=>le.name===B.name);P=Z?Z.id:Date.now().toString();let W=[];if(Z&&(Array.isArray(Z.filters)?W=[...Z.filters]:Z.filters&&(W=[{scope:"default",filters:Z.filters}])),A==="Search"||A==="Both"){let le=(Array.isArray(o),o);if(le)if(Array.isArray(le)&&le.length>0&&le[0].scope)le.forEach(G=>{let te=W.findIndex(me=>me.scope===G.scope);te>=0?W[te]=G:W.push(G);});else {let G={scope:t,filters:le},te=W.findIndex(me=>me.scope===t);te>=0?W[te]=G:W.push(G);}}let K=Z?.layout||{},ee=[];if(Z&&Array.isArray(Z.layoutRefs)&&(ee=[...Z.layoutRefs]),A==="Layout"||A==="Both")if(a&&a.length>0)a.forEach(le=>{let G=ee.findIndex(te=>te.tableKey===le.tableKey);G>=0?ee[G]=le:ee.push(le);});else {let le={tableKey:t,layoutId:r||null},G=ee.findIndex(te=>te.tableKey===t);G>=0?ee[G]=le:ee.push(le);}if(M={appId:e,tableKey:t,...B,scope:A,id:P,createdAt:new Date().toISOString(),filters:W,layout:K,layoutRefs:ee},i)await i.saveVariant(M,e,t);else if(s){if(!(await fetch(`${s}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(M)})).ok)throw new Error(f("variant.toast.saveFailed"))}else {let G=m.some(te=>te.id===P)?m.map(te=>te.id===P?M:te):[...m,M];h(G),T(G);}l&&l(f("variant.toast.saveSuccess")),(i||s)&&await R(),b(P),n(M);}catch(A){console.error("Error saving variant",A);let W=m.some(K=>K.id===P)?m.map(K=>K.id===P?M:K):[...m,M];h(W),T(W),b(P),n(M),d&&d(f("variant.toast.saveFailed"));}},onDelete:async B=>{try{if(i)await i.deleteVariant(B);else if(s){if(!(await fetch(`${s}/api/variants/${B}`,{method:"DELETE"})).ok)throw new Error(f("variant.toast.deleteFailed"))}else {let P=m.filter(M=>M.id!==B);h(P),T(P);}p===B&&b(""),(i||s)&&R(),l&&l(f("variant.toast.deleteSuccess"));}catch(P){console.error("Error deleting variant",P);let M=m.filter(A=>A.id!==B);h(M),T(M),p===B&&b(""),d&&d(f("variant.toast.deleteFailed"));}},onSetDefault:async B=>{try{let P=m.find(A=>A.id===B);if(!P)return;let M={appId:e,tableKey:t,...P,isDefault:!0};if(i)await i.setDefaultVariant(B,e,t);else if(s){if(!(await fetch(`${s}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(M)})).ok)throw new Error(f("variant.toast.defaultFailed"))}else {let A=m.map(Z=>({...Z,isDefault:Z.id===B}));h(A),T(A);}(i||s)&&await R(),l&&l(f("variant.toast.defaultSuccess"));}catch(P){console.error("Error setting default variant",P);let M=m.map(A=>({...A,isDefault:A.id===B}));h(M),T(M),d&&d(f("variant.toast.defaultFailed"));}}})};Ir.extend(sx);Ir.extend(cx);Ir.extend(dx);var si="YYYY-MM-DD",ux=[null,null],Sa="0.85rem",px={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},mx=styled(PickersDay,{shouldForwardProp:e=>e!=="isInRange"&&e!=="isStart"&&e!=="isEnd"&&e!=="isHovered"})(({theme:e,isInRange:t,isStart:o,isEnd:r,isHovered:a})=>({...t&&{borderRadius:0,backgroundColor:e.palette.primary.light,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.main}},...a&&!t&&!o&&!r&&{borderRadius:0,backgroundColor:e.palette.action.hover,border:`1px dashed ${e.palette.primary.main}`},...o&&{borderRadius:"50% 0 0 50%",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...r&&{borderRadius:"0 50% 50% 0",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...o&&r&&{borderRadius:"50%"}})),dp=({label:e,value:t=ux,onChange:o})=>{let{t:r,locale:a}=ae(),n=px[a]||"en",i=e||r("dateRange.label"),[s,d]=useState(null),[l,c]=useState(t),[g,f]=useState("start"),[m,h]=useState(null),[C,u]=useState((t[0]||Ir()).locale(n)),[v,p]=useState(""),[b,y]=useState(""),[T,E]=useState(false),[R,w]=useState(false),I=Kt__default.useRef(t);useEffect(()=>{let[G,te]=t,[me,we]=I.current,Ce=ye=>ye&&typeof ye.isSame=="function",re=!(G===null&&me===null||Ce(G)&&Ce(me)&&G.isSame(me,"day")),oe=!(te===null&&we===null||Ce(te)&&Ce(we)&&te.isSame(we,"day"));(re||oe)&&(c(t),t[0]&&Ce(t[0])&&u(t[0].locale(n))),I.current=t;},[t,n]),useEffect(()=>{p(l[0]?l[0].locale(n).format(si):""),y(l[1]?l[1].locale(n).format(si):""),E(false),w(false);},[l,n]);let k=(G,te)=>{let me=te.trim(),we=G==="start"?E:w;if(!me){let oe=G==="start"?[null,l[1]]:[l[0],null];we(false),c(oe);return}let Ce=Ir(me,si,true).locale(n);if(!Ce.isValid()){we(true);return}we(false);let re=[...l];if(G==="start")re[0]=Ce,re[1]&&Ce.isAfter(re[1],"day")&&(re[1]=null),f(re[1]?"start":"end");else {let oe=re[0];oe&&Ce.isBefore(oe,"day")?(re=[Ce,null],f("end")):(re[1]=Ce,f("start"));}c(re),u(Ce);},S=G=>{d(G.currentTarget);},B=()=>{d(null),f("start"),h(null);},P=!!s,M=G=>{if(!G)return;let te=[...l];if(g==="start")te=[G,null],f("end");else {let me=te[0];me&&G.isBefore(me)?(te=[G,null],f("end")):(te=[me,G],f("start"));}c(te);},A=G=>{let te=Ir().locale(n),me=[null,null];switch(G){case "today":me=[te,te];break;case "week":me=[te.startOf("week"),te.endOf("week")];break;case "month":me=[te.startOf("month"),te.endOf("month")];break}c(me),f("start"),u(te);},Z=()=>{c([null,null]),f("start"),u(Ir().locale(n));},W=()=>{o&&o(l),B();},K=()=>{c(t),f("start"),B();},ee=useCallback(G=>{let{day:te,...me}=G,[we,Ce]=l,re=we?te.isSame(we,"day"):false,oe=Ce?te.isSame(Ce,"day"):false,ye=we&&Ce?te.isBetween(we,Ce,"day","()"):false,Ge=false;return g==="end"&&we&&!Ce&&m&&te.isAfter(we,"day")&&te.isBefore(m.add(1,"day"),"day")&&(Ge=true),jsx(mx,{...me,day:te,disableMargin:true,isStart:re,isEnd:oe,isInRange:ye||Ge,onMouseEnter:()=>h(te)})},[l,g,m]),le=G=>G?G.locale(n).format("YYYY-MM-DD"):"";return jsxs(Box,{children:[jsx(TextField,{label:i,value:l[0]?`${le(l[0])} - ${le(l[1])}`:"",onClick:S,fullWidth:true,size:"small",InputLabelProps:{sx:{fontSize:Sa}},InputProps:{readOnly:true,sx:{fontSize:Sa,"& .MuiOutlinedInput-input":{fontSize:Sa},paddingRight:"4px"},endAdornment:jsxs(InputAdornment,{position:"end",sx:{ml:0},children:[(l[0]||l[1])&&jsx(IconButton,{size:"small",onClick:G=>{G.stopPropagation(),Z();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsx(Mh,{sx:{fontSize:"1rem"}})}),jsx(IconButton,{size:"small",edge:"end",onClick:S,sx:{padding:"2px"},children:jsx(nx,{sx:{fontSize:"1rem"},color:"action"})})]})}}),jsxs(Popover,{open:P,anchorEl:s,onClose:B,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},slotProps:{paper:{sx:{display:"flex",flexDirection:"column",p:0,width:320}}},children:[jsx(Box,{sx:{p:2,bgcolor:"background.default",borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,justifyContent:"space-between",children:[jsx(TextField,{label:r("dateRange.startDate"),placeholder:si,value:v,error:T,size:"small",onFocus:()=>f("start"),onChange:G=>{p(G.target.value),T&&E(false);},onBlur:()=>k("start",v),onKeyDown:G=>{G.key==="Enter"&&(G.preventDefault(),k("start",v));},sx:{flex:1,"& .MuiInputBase-input":{fontSize:Sa,py:.75},"& .MuiInputLabel-root":{fontSize:Sa}}}),jsx(lx,{color:"action",fontSize:"small"}),jsx(TextField,{label:r("dateRange.endDate"),placeholder:si,value:b,error:R,size:"small",onFocus:()=>{l[0]&&f("end");},onChange:G=>{y(G.target.value),R&&w(false);},onBlur:()=>k("end",b),onKeyDown:G=>{G.key==="Enter"&&(G.preventDefault(),k("end",b));},sx:{flex:1,"& .MuiInputBase-input":{fontSize:Sa,py:.75},"& .MuiInputLabel-root":{fontSize:Sa}}})]})}),jsx(Box,{sx:{p:2,pb:0},children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",children:[jsx(Chip,{label:r("dateRange.today"),onClick:()=>A("today"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:r("dateRange.thisWeek"),onClick:()=>A("week"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:r("dateRange.thisMonth"),onClick:()=>A("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsx(LocalizationProvider,{dateAdapter:AdapterDayjs,adapterLocale:n,children:jsx(DateCalendar,{value:null,referenceDate:C,onMonthChange:u,onYearChange:u,onChange:M,slots:{day:ee},views:["year","month","day"],openTo:"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:K,color:"inherit",children:r("common.cancel")}),jsx(Button,{size:"small",variant:"contained",onClick:W,children:r("common.done")})]})]})]})};var kl={equals:"=",contains:"\u2287",notContains:"\u2285",wildcard:"*","=":"=","!=":"!=",">":">","<":"<",">=":"\u2265","<=":"\u2264",between:"\u2194"},wx={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"},Tx=["equals","contains","notContains","wildcard"],mp=["=","!=",">","<",">=","<=","between"],Vt="0.85rem",Ix=({field:e,value:t,onChange:o})=>{let{t:r}=ae(),[a,n]=useState(null),[i,s]=useState(null),[d,l]=useState(""),[c,g]=useState(""),[f,m]=useState(false),[h,C]=useState(""),[u,v]=useState("");useEffect(()=>{let S=setTimeout(()=>{v(h);},1e3);return ()=>clearTimeout(S)},[h]);let p=t?.operator||(e.type==="number"?"=":"equals"),b=t?.value,y=S=>{let B=wx[S];return B?r(B):S},T=S=>{n(S.currentTarget);},E=S=>{o({...t,operator:S,value:b}),n(null);},R={size:"small",fullWidth:true,variant:"outlined",InputLabelProps:{sx:{fontSize:Vt}},InputProps:{sx:{fontSize:Vt}},SelectProps:{MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:Vt,paddingTop:"4px",paddingBottom:"4px",minHeight:"auto"}}}}}},w=e.type||"text";if(w==="date"){let B=(P=>{if(!P)return [null,null];if(Array.isArray(P)&&P.length===2){let M=P[0]?Ir.isDayjs(P[0])?P[0]:Ir(P[0]):null,A=P[1]?Ir.isDayjs(P[1])?P[1]:Ir(P[1]):null;return [M,A]}return Ir.isDayjs(P)||typeof P=="string"?[Ir.isDayjs(P)?P:Ir(P),null]:[null,null]})(b);return jsx(dp,{label:e.label,value:B,onChange:P=>o({value:P,operator:"between"})})}if(w==="number"&&p==="between"){let S=()=>{o({value:[d,c],operator:"between"}),s(null);},B=Array.isArray(b)?`${b[0]||""} - ${b[1]||""}`:"";return jsxs(Fragment,{children:[jsx(TextField,{...R,label:e.label,value:B,placeholder:r("smartFilter.minMaxPlaceholder"),InputProps:{...R.InputProps,startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:y("between"),children:jsx(IconButton,{size:"small",onClick:T,sx:{width:24,height:24,fontSize:Vt},children:kl.between})})}),readOnly:true},onClick:P=>s(P.currentTarget)}),jsx(Menu,{anchorEl:a,open:!!a,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:Vt,minHeight:"auto",py:.5}}},children:mp.map(P=>jsxs(MenuItem,{selected:P===p,onClick:()=>E(P),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:kl[P]}),jsx(ListItemText,{primary:y(P),primaryTypographyProps:{fontSize:Vt}})]},P))}),jsx(Popover,{open:!!i,anchorEl:i,onClose:()=>s(null),anchorOrigin:{vertical:"bottom",horizontal:"left"},children:jsxs(Box,{sx:{p:2,display:"flex",gap:1,alignItems:"center"},children:[jsx(TextField,{size:"small",label:r("smartFilter.min"),type:"number",value:d,onChange:P=>l(P.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:Vt}},InputProps:{sx:{fontSize:Vt}}}),jsx(Sx,{color:"action"}),jsx(TextField,{size:"small",label:r("smartFilter.max"),type:"number",value:c,onChange:P=>g(P.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:Vt}},InputProps:{sx:{fontSize:Vt}}}),jsx(Button,{variant:"contained",size:"small",onClick:S,children:r("common.ok")})]})})]})}if(e.isValueHelp||w==="value-help"){let S=e.valueHelp?.mode||"single";return jsx(cu,{...R,...e.valueHelp,label:e.label,placeholder:e.placeholder||e.valueHelp?.placeholder,value:b??(S==="multiple"?[]:null),mode:S,onChange:B=>o({value:B,operator:S==="multiple"?"anyOf":"equals"})})}if(w==="select")return jsxs(TextField,{...R,select:true,label:e.label,value:b||"",onChange:S=>o({...t,value:S.target.value,operator:"equals"}),children:[jsx(MenuItem,{value:"",children:jsx("em",{children:r("common.none")})}),e.options?.map(S=>jsx(MenuItem,{value:S.value,children:S.label},S.value))]});if(w==="multi-select"){let S=Array.isArray(b)?b:[],B=e.options?.filter(P=>P.label.toLowerCase().includes(u.toLowerCase()))||[];return jsxs(TextField,{...R,select:true,label:e.label,value:S,onChange:P=>o({...t,value:P.target.value,operator:"anyOf"}),SelectProps:{...R.SelectProps,multiple:true,onClose:()=>{C(""),v("");},renderValue:P=>{if(!Array.isArray(P)||P.length===0)return jsx("em",{children:r("common.none")});let M=Z=>e.options?.find(W=>W.value===Z)?.label||Z,A=P.map(M);return A.length>2?`${A.slice(0,2).join(", ")} +${A.length-2}`:A.join(", ")}},children:[jsx(ListSubheader,{children:jsx(TextField,{size:"small",autoFocus:true,placeholder:r("smartFilter.searchPlaceholder"),fullWidth:true,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(nu,{fontSize:"small"})}),sx:{fontSize:Vt}},value:h,onChange:P=>C(P.target.value),onKeyDown:P=>{P.key!=="Escape"&&P.stopPropagation();},onClick:P=>P.stopPropagation()})}),B.length>0?B.map(P=>jsxs(MenuItem,{value:P.value,children:[jsx(Checkbox,{checked:S.indexOf(P.value)>-1,size:"small"}),jsx(ListItemText,{primary:P.label,primaryTypographyProps:{fontSize:Vt}})]},P.value)):jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:r("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:Vt}})})]})}let I=w==="number"?mp:Tx,k=f||b!==void 0&&b!==""&&b!==null||!!a;return jsxs(Fragment,{children:[jsx(TextField,{...R,label:e.label,sx:{minWidth:"120px"},value:b||"",type:w==="number"?"number":"text",onChange:S=>o({...t,value:S.target.value,operator:p}),onFocus:()=>m(true),onBlur:()=>m(false),InputProps:{...R.InputProps,startAdornment:k?jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:y(p),children:jsx(IconButton,{size:"small",onClick:T,onMouseDown:S=>S.preventDefault(),sx:{width:24,height:24,fontSize:Vt,fontWeight:"bold",color:"primary.main",bgcolor:"action.hover"},children:kl[p]})})}):null,endAdornment:e.hasSearchIcon?jsx(InputAdornment,{position:"end",children:jsx(nu,{color:"action"})}):void 0}}),jsx(Menu,{anchorEl:a,open:!!a,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:Vt,minHeight:"auto",py:.5}}},children:I.map(S=>jsxs(MenuItem,{selected:S===p,onClick:()=>E(S),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:kl[S]}),jsx(ListItemText,{primary:y(S),primaryTypographyProps:{fontSize:Vt}})]},S))})]})},Ar=({fields:e,filters:t,onFilterChange:o,variants:r=[],currentVariantId:a,onVariantLoad:n,onVariantSave:i,onVariantDelete:s,onVariantSetDefault:d,onSearch:l,loading:c=false,appId:g,tableKey:f,currentLayout:m,currentLayoutId:h,layoutRefs:C,variantService:u,serviceUrl:v})=>{let{t:p}=ae(),[b,y]=useState(true),[T,E]=useState(null),[R,w]=useState(e.filter(B=>!B.hidden).map(B=>B.id)),I=(B,P)=>{o({...t,[B]:P});},k=B=>{R.includes(B)?w(R.filter(P=>P!==B)):w([...R,B]);};return jsxs(Paper,{sx:{mb:0,display:"flex",flexDirection:"column",overflow:"visible",position:"relative"},children:[jsxs(Box,{sx:{p:2,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[g?jsx(ip,{appId:g,tableKey:f,currentFilters:{values:t,visibleFields:R},currentLayout:m,currentLayoutId:h,layoutRefs:C,onLoad:B=>{if(!B.filters)return;let P=null;if(Array.isArray(B.filters)){let M=f||"default",A=B.filters.find(Z=>Z.scope===M);P=A?A.filters:null;}else P=B.filters;P&&(P.values||P.visibleFields?(P.visibleFields&&Array.isArray(P.visibleFields)&&w(P.visibleFields),P.values&&o(P.values)):o(P)),n&&n(B);},variantService:u,serviceUrl:v,currentVariantId:a}):jsx(xl,{variants:r,currentVariantId:a,onLoad:n,onSave:B=>{i&&i({...B,filters:{values:t,visibleFields:R}});},onDelete:s,onSetDefault:d}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:p("smartFilter.addFilters"),children:jsx(Button,{onClick:B=>E(B.currentTarget),size:"small",color:"primary",startIcon:jsx(vx,{fontSize:"small"}),sx:{textTransform:"none",fontSize:Vt,whiteSpace:"nowrap",minWidth:"fit-content"},children:p("smartFilter.adaptFilters")})}),jsx(Button,{variant:"contained",size:"small",onClick:l,disabled:c,sx:{minWidth:"52px",fontWeight:"bold",fontSize:Vt},children:p(c?"common.loading":"smartFilter.go")}),jsxs(Menu,{anchorEl:T,open:!!T,onClose:()=>E(null),slotProps:{paper:{style:{maxHeight:400,width:"25ch"},sx:{"& .MuiMenuItem-root":{fontSize:Vt,minHeight:32}}}},children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:p("smartFilter.visibleFilters"),primaryTypographyProps:{fontSize:Vt}})}),jsx(Divider,{}),e.map(B=>jsxs(MenuItem,{onClick:()=>k(B.id),children:[jsx(Checkbox,{checked:R.includes(B.id),size:"small"}),jsx(ListItemText,{primary:B.label,primaryTypographyProps:{fontSize:Vt}})]},B.id))]})]})]}),jsx(Collapse,{in:b,children:jsx(Box,{sx:{px:2,pb:2},children:jsx(Grid,{container:true,spacing:2,columns:{xs:2,sm:3,md:4,lg:6},children:e.filter(B=>R.includes(B.id)).map(B=>jsx(Grid,{size:1,children:jsx(Ix,{field:B,value:t[B.id]||{value:"",operator:B.type==="number"?"=":"equals"},onChange:P=>I(B.id,P)})},B.id))})})}),jsx(Box,{sx:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",zIndex:10},children:jsx(IconButton,{size:"small",onClick:()=>y(!b),sx:{bgcolor:"background.paper",boxShadow:2,border:"1px solid",borderColor:"divider",width:20,height:20,minHeight:0,p:0,"&:hover":{bgcolor:"background.paper"}},children:b?jsx(Cx,{sx:{fontSize:16},color:"action"}):jsx(kb,{sx:{fontSize:16},color:"action"})})})]})};var Cp=({layouts:e,currentLayoutId:t,onLoad:o,onSave:r,onDelete:a,onSetDefault:n})=>{let{t:i}=ae(),[s,d]=useState(null),[l,c]=useState(false),[g,f]=useState(""),[m,h]=useState(""),[C,u]=useState({isDefault:false,isPublic:false}),v=e.find(R=>R.id===t),p=R=>{d(R.currentTarget);},b=()=>{d(null);},y=R=>{o(R),b();},T=()=>{f(""),h(""),u({isDefault:false,isPublic:false}),c(true),b();},E=()=>{g.trim()&&(r({name:g,description:m,...C}),c(false));};return jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:i("layout.saveLayout"),children:jsx(IconButton,{onClick:T,color:"primary",size:"small",children:jsx(vp,{})})}),jsx(Tooltip,{title:i("layout.layoutOptions"),children:jsx(IconButton,{onClick:p,color:v?"primary":"default",children:jsx(Vx,{})})}),jsxs(Menu,{anchorEl:s,open:!!s,onClose:b,PaperProps:{sx:{width:320,maxHeight:400}},children:[jsx(MenuItem,{disabled:true,children:jsx(Typography,{variant:"caption",children:i("layout.selectLayout")})}),jsxs(MenuItem,{onClick:T,children:[jsx(ListItemIcon,{children:jsx(vp,{fontSize:"small"})}),jsx(ListItemText,{children:i("layout.saveCurrentLayout")})]}),jsx(Divider,{}),e.length===0&&jsx(MenuItem,{disabled:true,children:jsx(Typography,{variant:"body2",color:"text.secondary",children:i("layout.noSavedLayouts")})}),e.map((R,w)=>jsx(MenuItem,{onClick:()=>y(R),selected:R.id===t,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%",justifyContent:"space-between"},children:[jsxs(Box,{sx:{display:"flex",flexDirection:"column",overflow:"hidden",mr:1},children:[jsx(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:jsx(Typography,{variant:"body2",fontWeight:R.id===t?"bold":"normal",noWrap:true,children:R.name})}),R.description&&jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:R.description})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center"},onClick:I=>I.stopPropagation(),children:[jsx(Tooltip,{title:R.isDefault?i("layout.removeDefault"):i("layout.setAsDefault"),children:jsx(IconButton,{size:"small",onClick:I=>{I.stopPropagation(),n(R.id);},children:R.isDefault?jsx(qy,{fontSize:"small",color:"warning"}):jsx(Nx,{fontSize:"small"})})}),jsx(Tooltip,{title:i("common.delete"),children:jsx(IconButton,{size:"small",color:"error",onClick:I=>{I.stopPropagation(),a(R.id);},children:jsx(Jh,{fontSize:"small"})})})]})]})},R.id||w))]}),jsxs(Dialog,{open:l,onClose:()=>c(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:i("layout.saveLayout")}),jsx(DialogContent,{children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:2,mt:1},children:[jsx(TextField,{label:i("layout.layoutName"),value:g,onChange:R=>f(R.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:i("layout.layoutNameHelper")}),e.some(R=>R.name===g)&&jsx(Typography,{variant:"caption",color:"warning.main",sx:{ml:1},children:i("layout.warningOverwrite")}),jsx(TextField,{label:i("layout.layoutDescription"),value:m,onChange:R=>h(R.target.value),fullWidth:true,size:"small"}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C.isDefault,onChange:R=>u({...C,isDefault:R.target.checked})}),label:i("layout.useAsDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C.isPublic,onChange:R=>u({...C,isPublic:R.target.checked})}),label:i("layout.publicAllUsers")})]})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>c(false),children:i("common.cancel")}),jsx(Button,{onClick:E,variant:"contained",disabled:!g,children:i("common.save")})]})]})]})};var fn=({appId:e,tableKey:t="default",currentLayoutData:o,onLayoutLoad:r,targetLayoutId:a,activeLayoutId:n,serviceUrl:i,onError:s,onSuccess:d})=>{let{t:l}=ae(),[c,g]=useState([]),[f,m]=useState(""),h=`orbcafe.layouts.${e}.${t}`,C=w=>({id:w.layoutId,name:w.name,description:w.description??"",isDefault:!!w.isDefault,isPublic:!!w.isPublic,createdAt:w.createdAt??new Date().toISOString(),layoutData:w.layout??{}}),u=w=>({appId:e,tableKey:t,layoutId:w.id,name:w.name,description:w.description??"",isDefault:!!w.isDefault,isPublic:!!w.isPublic,createdAt:w.createdAt,layout:w.layoutData}),v=useCallback(()=>{try{let w=localStorage.getItem(h);if(!w)return [];let I=JSON.parse(w);return Array.isArray(I)?I:[]}catch{return []}},[h]),p=useCallback(w=>{try{localStorage.setItem(h,JSON.stringify(w));}catch{}},[h]);useEffect(()=>{n!==void 0&&m(n);},[n]),useEffect(()=>{if(a&&c.length>0){let w=c.find(I=>I.id===a);w&&(m(w.id),r(w));}},[a,c,r]);let b=useCallback(async()=>{if(e){if(!i){let w=v();g(w);let I=w.find(k=>k.isDefault);I&&!f&&!a&&(m(I.id),r(I));return}try{let w=await fetch(`${i}/api/layouts?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!w.ok)throw new Error("LAYOUT_FETCH_FAILED");let k=(await w.json()).map(C);g(k);let S=k.find(B=>B.isDefault);S&&!f&&!a&&(m(S.id),r(S));}catch(w){console.error("Error fetching layouts",w);let I=v();g(I);let k=I.find(S=>S.isDefault);k&&!f&&!a&&(m(k.id),r(k)),s&&s(l("layout.toast.loadFallback"));}}},[e,t,i,s,f,r,a,v,l]);return useEffect(()=>{b();},[e,t]),jsx(Cp,{layouts:c,currentLayoutId:f,onLoad:w=>{m(w.id),r(w);},onSave:async w=>{let I=c.find(B=>B.name===w.name),k=I?I.id:Date.now().toString(),S={id:k,...w,createdAt:new Date().toISOString(),layoutData:o,isDefault:w.isDefault??false,isPublic:w.isPublic??false};if(!i){let P=c.some(M=>M.id===k)?c.map(M=>M.id===k?S:M):[...c,S];g(P),p(P),m(k),r(S),d&&d(l("layout.toast.saveLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u(S))})).ok)throw new Error("LAYOUT_SAVE_FAILED");d&&d(l("layout.toast.saveSuccess")),await b(),m(k),r(S);}catch(B){console.error("Error saving layout",B);let M=c.some(A=>A.id===k)?c.map(A=>A.id===k?S:A):[...c,S];g(M),p(M),m(k),r(S),d&&d(l("layout.toast.saveLocalSuccess")),s&&s(l("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async w=>{if(!i){let I=c.filter(k=>k.id!==w);g(I),p(I),f===w&&m(""),d&&d(l("layout.toast.deleteLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts/${encodeURIComponent(w)}`,{method:"DELETE"})).ok)throw new Error("LAYOUT_DELETE_FAILED");f===w&&m(""),d&&d(l("layout.toast.deleteSuccess")),await b();}catch(I){console.error("Error deleting layout",I);let k=c.filter(S=>S.id!==w);g(k),p(k),f===w&&m(""),d&&d(l("layout.toast.deleteLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async w=>{if(!i){let I=c.map(k=>({...k,isDefault:k.id===w}));g(I),p(I),d&&d(l("layout.toast.defaultLocalSuccess"));return}try{let I=c.find(S=>S.id===w);if(!I)return;if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u({...I,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");d&&d(l("layout.toast.defaultSuccess")),await b();}catch(I){console.error("Error setting default",I);let k=c.map(S=>({...S,isDefault:S.id===w}));g(k),p(k),d&&d(l("layout.toast.defaultLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDefaultLocal"));}}})};var Sp=(e,t)=>{if(!e||!e.filters)return null;if(Array.isArray(e.filters)){let o=e.filters.find(a=>a.scope===t);if(o)return o.filters;let r=e.filters.find(a=>a.scope==="default");return r?r.filters:null}return typeof e.filters=="object"?e.filters:null},Il=(e,t)=>{if(!e)return {layout:null,layoutId:null};let o=null,r=null;if(Array.isArray(e.layoutRefs)){let a=e.layoutRefs.find(n=>n.tableKey===t);a&&(o=a.layoutId);}return !o&&e.layoutId&&(o=e.layoutId),e.layout&&typeof e.layout=="object"&&!Array.isArray(e.layout)&&(r=e.layout),{layoutId:o,layout:r}};function wp(e,t,o){return t[o]<e[o]?-1:t[o]>e[o]?1:0}function Hx(e,t){return e==="desc"?(o,r)=>wp(o,r,t):(o,r)=>-wp(o,r,t)}function Wx(e,t){let o=e.map((r,a)=>[r,a]);return o.sort((r,a)=>{let n=t(r[0],a[0]);return n!==0?n:r[1]-a[1]}),o.map(r=>r[0])}var hn=e=>{let t=useCallback(z=>{let V=String(z?.label??z?.id??"").length*9+64,ce=typeof z?.minWidth=="number"?z.minWidth:0;return Math.max(100,ce,V)},[]),o=useCallback(()=>(e.columns||[]).filter(z=>!!z?.numeric).map(z=>z.id),[e.columns]),[r,a]=useState(""),[n,i]=useState(e.order||"asc"),[s,d]=useState(e.orderBy||""),[l,c]=useState([]),[g,f]=useState(e.page||0),[m,h]=useState(e.rowsPerPage||20),[C,u]=useState(e.selected||[]),[v,p]=useState(e.columns?e.columns.map(z=>z.id):[]),[b,y]=useState(e.columns?e.columns.map(z=>z.id):[]),[T,E]=useState(e.showSummary||false),[R,w]=useState(()=>o()),[I,k]=useState([]),[S,B]=useState(new Set),[P,M]=useState(()=>{let z={};return (e.columns||[]).forEach(N=>{z[N.id]=t(N);}),z}),[A,Z]=useState(null),[W,K]=useState(null),[ee,le]=useState(null),[G,te]=useState(null),[me,we]=useState(false),[Ce,re]=useState(""),[oe,ye]=useState("");useEffect(()=>{e.layout&&oo(e.layout);},[e.layout]),useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&d(e.orderBy);},[e.order,e.orderBy]),useEffect(()=>{e.selected!==void 0&&u(e.selected);},[e.selected]),useEffect(()=>{e.page!==void 0&&f(e.page);},[e.page]),useEffect(()=>{e.rowsPerPage!==void 0&&h(e.rowsPerPage);},[e.rowsPerPage]),useEffect(()=>{let z=o();w(N=>N.filter(ce=>z.includes(ce)));},[o]),useEffect(()=>{M(z=>{let N={...z};return (e.columns||[]).forEach(V=>{N[V.id]===void 0&&(N[V.id]=t(V));}),N});},[e.columns,t]),useEffect(()=>{y(z=>{let N=(e.columns||[]).map(Fe=>Fe.id),V=new Set(N),ce=z.filter(Fe=>V.has(Fe)),pe=new Set(ce),Pe=N.filter(Fe=>!pe.has(Fe)),ke=[...ce,...Pe];return ke.length===z.length&&ke.every((Fe,Ue)=>Fe===z[Ue])?z:ke});},[e.columns]);let Ge=useMemo(()=>{let z=e.columns||[];if(b.length===0)return z;let N=new Map(z.map(pe=>[pe.id,pe])),V=[],ce=new Set;return b.forEach(pe=>{let Pe=N.get(pe);Pe&&(V.push(Pe),ce.add(pe));}),z.forEach(pe=>{ce.has(pe.id)||V.push(pe);}),V},[e.columns,b]),de=useMemo(()=>{let z=e.rows||[];return r&&(z=z.filter(N=>Object.keys(N).some(V=>String(N[V]).toLowerCase().includes(r.toLowerCase())))),z},[e.rows,r]),Te=useMemo(()=>{if(e.onSortChange)return de;if(l.length>0){let z=[...de];return z.sort((N,V)=>{for(let ce of l){let pe=N?.[ce.field],Pe=V?.[ce.field];if(!(pe==null&&Pe==null)){if(pe==null)return ce.direction==="asc"?-1:1;if(Pe==null)return ce.direction==="asc"?1:-1;if(pe<Pe)return ce.direction==="asc"?-1:1;if(pe>Pe)return ce.direction==="asc"?1:-1}}return 0}),z}return s?Wx(de,Hx(n,s)):de},[de,n,s,l,e.onSortChange]),$e=useCallback(z=>{if(I.length===0)return z.map(Pe=>({type:"row",data:Pe,id:Pe[e.rowKey||"id"]}));let N=[...z].sort((Pe,ke)=>{for(let Fe of I){if(Pe[Fe]<ke[Fe])return -1;if(Pe[Fe]>ke[Fe])return 1}return 0}),V=(Pe,ke=0)=>{if(ke>=I.length)return Pe;let Fe=I[ke],Ue={},Rt=[];return Pe.forEach(yt=>{let Tt=yt[Fe],ht=`${Fe}:${Tt}`;Ue[ht]||(Ue[ht]={key:ht,field:Fe,value:Tt,children:[],count:0,level:ke},Rt.push(Ue[ht])),Ue[ht].children.push(yt),Ue[ht].count++;}),Rt.forEach(yt=>{yt.children&&(yt.children=V(yt.children,ke+1));}),Rt},ce=V(N),pe=(Pe,ke="")=>{let Fe=[];return Pe.forEach(Ue=>{if(Ue.children){let Rt=ke?`${ke}>${Ue.key}`:Ue.key,yt=S.has(Rt);Fe.push({type:"group",id:Rt,field:Ue.field,value:Ue.value,level:Ue.level,count:Ue.count,isExpanded:yt,childIds:(function Tt(ht){let Po=[];return ht.children.forEach(_t=>{_t.children?Po=Po.concat(Tt(_t)):Po.push(_t[e.rowKey||"id"]);}),Po})(Ue)}),yt&&(Fe=Fe.concat(pe(Ue.children,Rt)));}else Fe.push({type:"row",data:Ue,id:Ue[e.rowKey||"id"],level:I.length});}),Fe};return pe(ce)},[I,S,e.rowKey]),ct=useCallback(z=>{if(I.length===0)return [];let N=[...z].sort((pe,Pe)=>{for(let ke of I){if(pe[ke]<Pe[ke])return -1;if(pe[ke]>Pe[ke])return 1}return 0}),V=[],ce=(pe,Pe,ke)=>{if(Pe>=I.length)return;let Fe=I[Pe],Ue=new Map;pe.forEach(Rt=>{let yt=Rt[Fe],Tt=Ue.get(yt);Tt?Tt.push(Rt):Ue.set(yt,[Rt]);}),Ue.forEach((Rt,yt)=>{let Tt=`${Fe}:${yt}`,ht=ke?`${ke}>${Tt}`:Tt;V.push(ht),ce(Rt,Pe+1,ht);});};return ce(N,0,""),V},[I]),fe=useMemo(()=>$e(Te),[Te,$e]),Le=useMemo(()=>ct(Te),[Te,ct]),_e=useMemo(()=>{let z=(e.rows||[]).length;return typeof e.count=="number"&&e.count>z},[e.count,e.rows]),dt=useMemo(()=>_e?fe:m>0?fe.slice(g*m,g*m+m):fe,[fe,g,m,_e]),rt=useMemo(()=>_e&&typeof e.count=="number"?e.count:fe.length,[fe.length,_e,e.count]),j=z=>{B(N=>{let V=new Set(N);return V.has(z)?V.delete(z):V.add(z),V});},Ne=z=>{let N=Le.filter(V=>V===z||V.startsWith(`${z}>`));B(V=>{let ce=new Set(V);return N.forEach(pe=>ce.add(pe)),ce});},_=z=>{B(N=>{let V=new Set(N);return Array.from(V).forEach(ce=>{(ce===z||ce.startsWith(`${z}>`))&&V.delete(ce);}),V});},Q=z=>{if(!z){B(new Set);return}B(new Set(Le));},Re=z=>{let N=Le.filter(V=>V.startsWith(`${z}>`));return N.length===0?S.has(z):S.has(z)&&N.every(V=>S.has(V))},Be=z=>{l.length>0&&c([]);let N=s===z&&n==="asc",V=s===z&&n==="desc";if(e.onSortChange){N?e.onSortChange(z,"desc"):V?e.onSortChange("","asc"):e.onSortChange(z,"asc");return}N?(i("desc"),d(z)):V?(i("asc"),d("")):(i("asc"),d(z));},at=z=>{let N=z.filter(V=>V&&V.field);c(N),N.length>0&&d("");},it=()=>{c([]);},gt=(z,N)=>{M(V=>({...V,[z]:N}));},Et=z=>{if(z.target.checked){let N=de.map(V=>V[e.rowKey||"id"]);u(N),e.onSelectionChange&&e.onSelectionChange(N);return}u([]),e.onSelectionChange&&e.onSelectionChange([]);},U=(z,N)=>{let V=N[e.rowKey||"id"],ce=C.indexOf(V),pe=[];ce===-1?pe=pe.concat(C,V):ce===0?pe=pe.concat(C.slice(1)):ce===C.length-1?pe=pe.concat(C.slice(0,-1)):ce>0&&(pe=pe.concat(C.slice(0,ce),C.slice(ce+1))),u(pe),e.onSelectionChange&&e.onSelectionChange(pe);},ze=z=>{f(z),e.onPageChange&&e.onPageChange(z);},Ae=z=>{h(z),f(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(z);},ft=z=>{let N=v.indexOf(z),V=[...v];N===-1?V.push(z):V.splice(N,1),p(V);},O=z=>{let N=I.indexOf(z),V=[...I];N===-1?V.push(z):V.splice(N,1),k(V);},xe=z=>{o().includes(z)&&w(V=>V.includes(z)?V.filter(ce=>ce!==z):[...V,z]);},Ke=(z,N)=>{!z||!N||z===N||y(V=>{let ce=V.indexOf(z),pe=V.indexOf(N);if(ce===-1||pe===-1)return V;let Pe=[...V];return Pe.splice(ce,1),Pe.splice(pe,0,z),Pe});},et=z=>{let N=z?.active?.id,V=z?.over?.id;typeof N=="string"&&typeof V=="string"&&Ke(N,V);},Ct=z=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:v,columnOrder:b,order:n,orderBy:s,sortBy:l,grouping:I,columnWidths:P,showSummary:T,summaryColumns:R});},It=z=>{let{layout:N,layoutId:V}=Il(z,e.tableKey||"default");V?(ye(V),re(V)):(ye(""),re("")),N&&(N.visibleColumns&&p(N.visibleColumns),Array.isArray(N.columnOrder)&&y(N.columnOrder),N.order&&i(N.order),N.orderBy&&d(N.orderBy),Array.isArray(N.sortBy)&&c(N.sortBy),N.grouping&&k(N.grouping),N.columnWidths&&M(N.columnWidths),N.showSummary!==void 0&&E(!!N.showSummary),Array.isArray(N.summaryColumns)&&w(N.summaryColumns));},oo=z=>{let N=z?.layoutData||z?.layout||z||{};N.visibleColumns&&p(N.visibleColumns),Array.isArray(N.columnOrder)&&y(N.columnOrder),N.order&&i(N.order),N.orderBy!==void 0&&d(N.orderBy),Array.isArray(N.sortBy)&&c(N.sortBy),N.grouping&&k(N.grouping),N.columnWidths&&M(N.columnWidths),N.showSummary!==void 0&&E(!!N.showSummary),Array.isArray(N.summaryColumns)&&w(N.summaryColumns),B(new Set),f(0),z?.id&&re(z.id),ye("");};useEffect(()=>{e.layout&&It({layout:e.layout});},[e.layout]);let xo=z=>{z.preventDefault(),te(G===null?{mouseX:z.clientX+2,mouseY:z.clientY-6}:null);},bt=()=>{te(null);},ar=useMemo(()=>{if(!T)return {};let z={};e.columns.forEach(V=>{if(V.numeric&&R.includes(V.id)){let ce=de.reduce((pe,Pe)=>{let ke=parseFloat(Pe[V.id]);return pe+(isNaN(ke)?0:ke)},0);z[V.id]=ce.toFixed(2);}else z[V.id]="";});let N=e.columns.find(V=>v.includes(V.id));return N&&!N.numeric&&(z[N.id]="Total"),z},[de,e.columns,T,R,v]),Pt=()=>{if(!e.columns||!de)return;let z=e.columns.map(Pe=>Pe.label).join(","),N=de.map(Pe=>e.columns.map(ke=>{let Fe=Pe[ke.id];return `"${(Fe==null?"":String(Fe)).replace(/"/g,'""')}"`}).join(",")).join(`
2
- `),V=`data:text/csv;charset=utf-8,${z}
3
- ${N}`,ce=encodeURI(V),pe=document.createElement("a");pe.setAttribute("href",ce),pe.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(pe),pe.click(),document.body.removeChild(pe);},nr=()=>{we(true);},ro=()=>{we(false);};return {isMobile:false,columns:Ge,order:n,setOrder:i,orderBy:s,setOrderBy:d,sortBy:l,setSortBy:c,applyMultiSort:at,clearMultiSort:it,columnOrder:b,setColumnOrder:y,filterText:r,setFilterText:a,visibleColumns:v,setVisibleColumns:p,showSummary:T,setShowSummary:E,summaryColumns:R,grouping:I,setGrouping:k,expandedGroups:S,setExpandedGroups:B,groupAnchorEl:W,setGroupAnchorEl:K,summaryAnchorEl:ee,setSummaryAnchorEl:le,columnWidths:P,setColumnWidths:M,anchorEl:A,setAnchorEl:Z,contextMenu:G,setContextMenu:te,sensors:void 0,sortedAndFilteredRows:Te,visibleRows:dt,summaryRow:ar,page:g,setPage:ze,rowsPerPage:m,setRowsPerPage:Ae,totalDisplayCount:rt,selected:C,setSelected:u,isAllExpanded:Le.length>0&&Le.every(z=>S.has(z)),handleColumnResize:gt,handleRequestSort:Be,handleSelectAllClick:Et,handleClick:U,toggleSummaryColumn:xe,handleDragEnd:et,handleColumnReorder:Ke,handleExport:Pt,handleContextMenu:xo,handleCloseContextMenu:bt,toggleColumnVisibility:ft,toggleGroupExpand:j,toggleGroupField:O,handleToggleAll:Q,handleExpandGroupRecursively:Ne,handleCollapseGroupRecursively:_,isGroupFullyExpanded:Re,handleLayoutLoad:oo,handleVariantLoad:It,handleLayoutSave:Ct,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:v,order:n,orderBy:s,sortBy:l,columnOrder:b,grouping:I,columnWidths:P,showSummary:T,summaryColumns:R},currentLayoutId:Ce,layoutIdToLoad:oe,onPageChange:ze,onRowsPerPageChange:Ae,graphReportOpen:me,handleOpenGraphReport:nr,handleCloseGraphReport:ro}};var OA=e=>jsx(Ux,{...e}),HA=e=>jsx(Js,{...e}),WA=e=>jsx(Ap,{...e}),$A=e=>jsx(nb,{...e}),GA=e=>jsx(ib,{...e}),aa=e=>{let{t}=ae(),o="0.85rem",{title:r,showToolbar:a=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:d,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:m=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:C,filterConfig:u,rowKey:v,tableKey:p="default",graphReport:b,quickCreate:y,quickEdit:T,quickDelete:E,serviceUrl:R}=e,w=r||t("table.title.default"),{isMobile:I,columns:k,order:S,orderBy:B,filterText:P,setFilterText:M,visibleColumns:A,showSummary:Z,setShowSummary:W,summaryColumns:K,grouping:ee,setGrouping:le,expandedGroups:G,groupAnchorEl:te,setGroupAnchorEl:me,summaryAnchorEl:we,setSummaryAnchorEl:Ce,columnWidths:re,anchorEl:oe,setAnchorEl:ye,contextMenu:Ge,sensors:de,sortedAndFilteredRows:Te,summaryRow:$e,visibleRows:ct,isAllExpanded:fe,page:Le,setPage:_e,rowsPerPage:dt,setRowsPerPage:rt,totalDisplayCount:j,setSelected:Ne,handleColumnResize:_,handleRequestSort:Q,handleSelectAllClick:Re,handleClick:Be,toggleSummaryColumn:at,handleDragEnd:it,handleExport:gt,handleContextMenu:Et,handleCloseContextMenu:U,toggleColumnVisibility:ze,toggleGroupExpand:Ae,toggleGroupField:ft,handleToggleAll:O,handleExpandGroupRecursively:xe,handleCollapseGroupRecursively:Ke,isGroupFullyExpanded:et,handleLayoutLoad:Ct,handleVariantLoad:It,handleLayoutSave:oo,effectiveAppId:xo,currentLayoutData:bt,currentLayoutId:ar,layoutIdToLoad:Pt,graphReportOpen:nr,handleOpenGraphReport:ro,handleCloseGraphReport:z}=hn(e),N=b?.enabled??false,V=N&&(b?.interaction?.enabled??true),ce=bl(),pe=!!y?.enabled,Pe=!!T?.enabled,ke=!!E?.enabled,Fe=y?.fields,Ue=y?.excludeFields||[],Rt=y?.initialValues||{},[yt,Tt]=Kt__default.useState(false),[ht,Po]=Kt__default.useState(false),[_t,Nt]=Kt__default.useState({}),[vo,jt]=Kt__default.useState(false),[tt,_o]=Kt__default.useState(false),[Fo,jo]=Kt__default.useState({}),[D,q]=Kt__default.useState(false),[Y,ue]=Kt__default.useState(false),Ee=m||ht||tt||Y,We=Kt__default.useMemo(()=>{let H=[...k];if(Array.isArray(Fe)&&Fe.length>0){let se=new Set(Fe);H=H.filter(ie=>se.has(ie.id));}if(Ue.length>0){let se=new Set(Ue);H=H.filter(ie=>!se.has(ie.id));}return H.filter(se=>!!se?.id)},[k,Ue,Fe]),Qe=v||"id",he=Kt__default.useMemo(()=>{let H=new Set(i);return Te.filter(se=>H.has(se?.[Qe]))},[i,Te,Qe]),je=he.length===1?he[0]:null,nt=T?.fields,Mt=T?.excludeFields||[],lt=T?.editableFields||[],Jt=T?.nonEditableFields||[],ao=T?.primaryKeys?.length?T.primaryKeys:[Qe],Co=Kt__default.useMemo(()=>{let H=[...k];if(Array.isArray(nt)&&nt.length>0){let se=new Set(nt);H=H.filter(ie=>se.has(ie.id));}if(Mt.length>0){let se=new Set(Mt);H=H.filter(ie=>!se.has(ie.id));}return H.filter(se=>!!se?.id)},[k,Mt,nt]),$t=Kt__default.useMemo(()=>new Set(ao),[ao]),no=Kt__default.useMemo(()=>new Set(lt),[lt]),xt=Kt__default.useMemo(()=>new Set(Jt),[Jt]),Zt=Kt__default.useCallback(H=>no.size>0?no.has(H):!(xt.has(H)||$t.has(H)),[no,xt,$t]);Kt__default.useEffect(()=>{!nr&&ce.hasActiveFilters&&ce.clearAll();},[nr,ce.hasActiveFilters,ce.clearAll]);let br=()=>{let H={};We.forEach(se=>{H[se.id]=Rt[se.id]??"";}),Nt(H),Tt(true);},Zo=()=>{ht||Tt(false);},qa=(H,se)=>{Nt(ie=>({...ie,[H]:se}));},_a=async()=>{if(!y?.onSubmit){Tt(false);return}try{Po(!0),await y.onSubmit(_t),Tt(!1);}finally{Po(false);}},ja=()=>{if(!je)return;let H={};Co.forEach(ie=>{H[ie.id]=je[ie.id]??"";});let se=T?.getInitialValues?{...H,...T.getInitialValues(je)}:H;jo(se),jt(true);},Eo=()=>{tt||jt(false);},Za=(H,se)=>{jo(ie=>({...ie,[H]:se}));},Xa=async()=>{if(je){if(!T?.onSubmit){jt(false);return}try{_o(!0),await T.onSubmit(Fo,je),jt(!1);}finally{_o(false);}}},ba=()=>{he.length!==0&&q(true);},Pr=()=>{Y||q(false);},_r=async()=>{if(he.length===0){q(false);return}if(!E?.onConfirm){q(false),Ne([]),s?.([]);return}try{ue(!0),await E.onConfirm(he),q(!1),Ne([]),s?.([]);}finally{ue(false);}},jr=Te,{fieldMapping:x}=dn({rows:jr,config:{...b,title:b?.title||`${w} ${t("graph.reportTitle")}`}}),F=Kt__default.useMemo(()=>V?ce.applyRows(jr,x):jr,[V,ce.applyRows,jr,x]),{model:L}=dn({rows:F,config:{...b,title:b?.title||`${w} ${t("graph.reportTitle")}`,fieldMapping:x}}),X=L.table.columns.map(H=>({id:H.id,label:H.label,align:H.align||"left",minWidth:120,numeric:H.align==="right"})),ve=xo?jsx(fn,{appId:xo,tableKey:p,currentLayoutData:bt,onLayoutLoad:Ct,targetLayoutId:Pt,activeLayoutId:ar,serviceUrl:R??u?.serviceUrl}):null,He=jsxs(Fragment,{children:[jsx(Qa,{groupAnchorEl:te,setGroupAnchorEl:me,grouping:ee,setGrouping:le,columns:k,toggleGroupField:ft}),jsx(Ja,{anchorEl:oe,setAnchorEl:ye,columns:k,visibleColumns:A,toggleColumnVisibility:ze}),jsx(Qi,{anchorEl:we,setAnchorEl:Ce,showSummary:Z,setShowSummary:W,columns:k,summaryColumns:K,toggleSummaryColumn:at}),jsx(Ji,{contextMenu:Ge,handleCloseContextMenu:U,columns:k,visibleColumns:A,toggleColumnVisibility:ze})]});return I?jsxs(ui,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[u&&jsx(Ar,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:u.onVariantLoad,onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,appId:u.appId,tableKey:p,currentLayout:[{tableKey:p,layoutData:bt}],variantService:u.variantService,serviceUrl:R??u.serviceUrl}),jsx(bu,{title:w,loading:m,showSummary:Z,setShowSummary:W,setAnchorEl:ye,setSummaryAnchorEl:Ce,filterText:P,setFilterText:M,sortedAndFilteredRows:Te,selected:i,columns:k,visibleColumns:A,summaryRow:$e,handleClick:Be,selectionMode:n}),He]}):jsxs(ui,{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(ui,{sx:{mb:2},children:jsx(Ar,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:H=>{It(H),u.onVariantLoad&&u.onVariantLoad(H);},onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,loading:m,appId:u.appId,tableKey:p,currentLayout:[{tableKey:p,layoutData:bt}],currentLayoutId:ar,layoutRefs:[{tableKey:p,layoutId:ar}],variantService:u.variantService,serviceUrl:R??u.serviceUrl})}),jsxs($x,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative","&::before":Ee?{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:[a&&jsx(_i,{filterText:P,setFilterText:M,onRowsPerPageChange:rt,rowsPerPage:dt,rowsPerPageOptions:h,page:Le,count:j,onPageChange:_e,actions:d,extraTools:l,grouping:ee,setGroupAnchorEl:me,showSummary:Z,setShowSummary:W,setAnchorEl:ye,setSummaryAnchorEl:Ce,handleExport:gt,showCreateButton:pe,onOpenCreateDialog:br,showEditButton:Pe,onOpenEditDialog:ja,editDisabled:he.length!==1,showDeleteButton:ke,onOpenDeleteConfirm:ba,deleteDisabled:he.length===0,onLayoutSave:C||u?.variantService&&u?.appId?oo:void 0,loading:m,layoutManager:ve,onOpenGraphReport:N?ro:void 0}),jsx(Ap,{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:de,collisionDetection:closestCenter,onDragEnd:it,modifiers:[restrictToHorizontalAxis],children:jsxs(Gx,{sx:{minWidth:g?750:"auto",width:g?"100%":"auto",tableLayout:Object.keys(re).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:o}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsx(Zi,{columns:k,visibleColumns:A,order:S,orderBy:B,onRequestSort:Q,onContextMenu:Et,selectionMode:n,grouping:ee,isAllExpanded:fe,handleToggleAll:O,rowCount:Te.length,numSelected:i.length,onSelectAllClick:Re,columnWidths:re,onColumnResize:_}),jsx(gu,{visibleRows:ct,columns:k,visibleColumns:A,selectionMode:n,selected:i,orderBy:B,loading:m,expandedGroups:G,toggleGroupExpand:Ae,handleExpandGroupRecursively:xe,handleCollapseGroupRecursively:Ke,isGroupFullyExpanded:et,handleClick:Be,onSelectionChange:s,grouping:ee,rowKeyProp:v,page:Le,rowsPerPage:dt}),Z&&jsx(fu,{showSummary:Z,columns:k,visibleColumns:A,summaryRow:$e,selectionMode:n?.toString(),grouping:ee,orderBy:B,zIndex:3})]})})})]}),pe&&jsxs(Tp,{open:yt,onClose:Zo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:H=>`1px solid ${H.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Ip,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:y?.title||t("quickCreate.createWithTitle",{title:w})}),jsx(Pp,{sx:{pt:"8px !important"},children:jsxs(ui,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[We.map(H=>{let se=H.type==="number"||H.numeric?"number":H.type==="date"?"date":"text",ie=H.label||H.id;return jsx(Mp,{label:ie,value:_t[H.id]??"",onChange:kt=>qa(H.id,kt.target.value),type:se,size:"small",fullWidth:true,InputLabelProps:{shrink:se==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${H.id}`)}),y?.description&&jsx(Dp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:y.description})]})}),jsxs(Rp,{sx:{px:3,pb:2},children:[jsx(Rl,{onClick:Zo,sx:{fontSize:"0.85rem"},disabled:ht,children:y?.cancelLabel||t("common.cancel")}),jsx(Rl,{onClick:_a,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:ht,children:y?.submitLabel||t("common.save")})]})]}),Pe&&jsxs(Tp,{open:vo,onClose:Eo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:H=>`1px solid ${H.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Ip,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:T?.title||t("quickEdit.editWithTitle",{title:w})}),jsx(Pp,{sx:{pt:"8px !important"},children:jsxs(ui,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Co.map(H=>{let se=H.type==="number"||H.numeric?"number":H.type==="date"?"date":"text",ie=H.label||H.id,kt=Zt(H.id);return jsx(Mp,{label:ie,value:Fo[H.id]??"",onChange:$=>Za(H.id,$.target.value),type:se,size:"small",fullWidth:true,disabled:!kt,InputLabelProps:{shrink:se==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${H.id}`)}),T?.description&&jsx(Dp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:T.description})]})}),jsxs(Rp,{sx:{px:3,pb:2},children:[jsx(Rl,{onClick:Eo,sx:{fontSize:"0.85rem"},disabled:tt,children:T?.cancelLabel||t("common.cancel")}),jsx(Rl,{onClick:Xa,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:tt||!je,children:T?.submitLabel||t("common.save")})]})]}),ke&&jsx(jn,{open:D,type:"warning",title:E?.title||t("quickDelete.confirmTitle"),message:E?.message||(he.length>1?t("quickDelete.confirmMessageMultiple",{count:he.length}):t("quickDelete.confirmMessageSingle")),confirmText:E?.confirmText||t("common.delete"),cancelText:E?.cancelText||t("common.cancel"),onClose:Pr,onConfirm:_r}),He,N&&jsx(fl,{open:nr,onClose:z,model:L,aiAssistant:b?.aiAssistant,interaction:V?{enabled:true,filters:ce.filters,fieldMapping:x,onPrimaryDimensionClick:H=>ce.setFilter("primaryDimension",H),onSecondaryDimensionClick:H=>ce.setFilter("secondaryDimension",H),onStatusClick:H=>ce.setFilter("status",H),onClearFilter:ce.clearFilter,onClearAll:ce.clearAll}:void 0,tableContent:jsx(aa,{appId:xo||"graph-report-internal",title:t("graph.dataBody"),columns:X,rows:L.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},UA=aa;var YA=({id:e,title:t,hideHeader:o=true,filterConfig:r,tableProps:a,children:n,spacing:i=1,mode:s="separated"})=>{let d=r?{...r,appId:r.appId||e}:void 0,l={...a,appId:a.appId||e};return jsxs(du,{title:t,hideHeader:o,children:[jsxs(Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[s==="separated"&&d&&jsx(Box,{sx:{flexShrink:0},children:jsx(Ar,{...d})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsx(aa,{...l,fitContainer:true,filterConfig:s==="integrated"?d:void 0})})]}),n]})};var r2=({metadata:e,fetchData:t,initialRowsPerPage:o=20,rowsPerPageOptions:r=[20,50,100,-1],tableKey:a="default",mode:n="integrated",serviceUrl:i,variantService:s})=>{let{t:d}=ae(),[l,c]=useState(false),[g,f]=useState([]),[m,h]=useState({}),[C,u]=useState(e.variants||[]),[v,p]=useState(e.layout||null),[b,y]=useState(""),[T,E]=useState(0),[R,w]=useState(0),[I,k]=useState(o),[S,B]=useState([]),[P,M]=useState("asc"),[A,Z]=useState("");useEffect(()=>{let re={};e.filters.forEach(oe=>{oe.defaultValue!==void 0&&(re[oe.id]=oe.defaultValue);}),h(re);},[e.filters]);let W=useCallback(async(re,oe,ye,Ge,de)=>{c(true);try{let Te={...re,page:oe+1,limit:ye,sort:de,order:Ge},$e;t?$e=await t(Te):typeof e.api=="function"?$e=await e.api(Te):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,Te),$e={rows:[],total:0}):(console.warn("No API configured for report"),$e={rows:[],total:0}),$e&&(f($e.rows||[]),E($e.total||0));}catch(Te){console.error("Failed to fetch report data",Te);}finally{c(false);}},[e.api,t]);useEffect(()=>{W(m,R,I,P,A);},[W,R,I,P,A]);let K=()=>{w(0),W(m,0,I,P,A);},ee=re=>{w(0),k(re);},le=(re,oe)=>{M(oe),Z(re);},G=re=>{h(re);},te=re=>{y(re?.id||"");let oe=Sp(re,a);if(oe){let Ge=oe.values??oe;h(Ge),W(Ge,0,I,P,A),w(0);}let{layout:ye}=Il(re,a);ye&&p(ye);},me=re=>{let oe={...re,id:Date.now().toString(),createdAt:new Date().toISOString()};u(ye=>[...ye,oe]);},we=re=>{p(re);};return {pageProps:{id:e.id,title:e.title,mode:n,filterConfig:{appId:e.id,tableKey:a,fields:e.filters,filters:m,onFilterChange:G,onSearch:K,onVariantLoad:te,onVariantSave:me,onVariantDelete:re=>u(oe=>oe.filter(ye=>ye.id!==re)),onVariantSetDefault:re=>{u(oe=>oe.map(ye=>({...ye,isDefault:ye.id===re})));},variants:C,currentVariantId:b,variantService:s,serviceUrl:i},tableProps:{appId:e.id,tableKey:a,columns:e.columns,rows:g,loading:l,rowKey:"id",count:T,page:R,rowsPerPage:I,rowsPerPageOptions:r,onPageChange:w,onRowsPerPageChange:ee,selectionMode:"multiple",selected:S,onSelectionChange:B,onLayoutSave:we,layout:v,title:e.title,showSummary:true,order:P,orderBy:A,serviceUrl:i,onSortChange:le,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${d("graph.reportTitle")}`}}},filters:m,rows:g,loading:l,refresh:K}};var e0=e=>[...e].sort((t,o)=>o.value-t.value),i2=({bars:e=[],lines:t=[],combos:o=[],heatmap:r=[],pies:a=[],waterfalls:n=[]})=>{let i=useMemo(()=>e0(e),[e]),s=useMemo(()=>[...t],[t]),d=useMemo(()=>[...o],[o]),l=useMemo(()=>[...r],[r]),c=useMemo(()=>{let f=a.reduce((m,h)=>m+h.value,0);return a.map(m=>({...m,percent:f>0?m.value/f*100:m.percent}))},[a]),g=useMemo(()=>[...n],[n]);return {bars:i,lines:s,combos:d,heatmap:l,pies:c,waterfalls:g}};var u2=({apiKey:e,query:t,zoom:o=14,mapType:r="roadmap"})=>useMemo(()=>!e||!t?"":ni({apiKey:e,query:t,zoom:o,mapType:r}),[e,t,o,r]),p2=({keyword:e,location:t})=>useMemo(()=>dl({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0}),[e,t]);var pi=({code:e,language:t="text",copyable:o=true,showLineNumbers:r=false,wrapLongLines:a=false,maxHeight:n})=>{let[i,s]=useState(false),d=useMemo(()=>e.replace(/\n$/,"").split(`
4
- `),[e]);return jsxs(Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:1.5,overflow:"hidden",bgcolor:"background.paper"},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:1,py:.6,bgcolor:"action.hover",borderBottom:"1px solid",borderColor:"divider"},children:[jsx(Typography,{variant:"caption",sx:{textTransform:"uppercase",letterSpacing:.5,color:"text.secondary",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:t}),o&&jsx(Tooltip,{title:i?"Copied":"Copy",children:jsx(IconButton,{size:"small",onClick:async()=>{try{await navigator.clipboard.writeText(e),s(!0),window.setTimeout(()=>s(!1),1400);}catch{s(false);}},children:i?jsx(l0,{fontSize:"inherit"}):jsx(i0,{fontSize:"inherit"})})})]}),jsx(Box,{component:"pre",sx:{m:0,p:1.25,fontSize:"0.82rem",lineHeight:1.55,overflow:"auto",maxHeight:n,bgcolor:"background.default",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:r?d.map((c,g)=>jsxs(Box,{sx:{display:"flex"},children:[jsx(Box,{component:"span",sx:{width:34,flexShrink:0,textAlign:"right",pr:1,color:"text.disabled",userSelect:"none"},children:g+1}),jsx(Box,{component:"span",sx:{whiteSpace:a?"pre-wrap":"pre",wordBreak:a?"break-word":"normal"},children:c})]},`${g}-${c}`)):jsx(Box,{component:"code",sx:{display:"block",whiteSpace:a?"pre-wrap":"pre",wordBreak:a?"break-word":"normal"},children:e})})]})};var p0=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},m0=async e=>new Function("m","return import(m)")(e),mi=({expression:e,inline:t=false,allowKatex:o=false})=>{let r=useMemo(()=>p0(e),[e]),[a,n]=useState("");return useEffect(()=>{let i=true;return (async()=>{if(!o||!r){n("");return}try{let d=await m0("katex"),c=(d?.default||d)?.renderToString?.(r,{displayMode:!t,throwOnError:!1,strict:"warn"});i&&typeof c=="string"&&n(c);}catch{i&&n("");}})(),()=>{i=false;}},[o,r,t]),r?a?jsx(Box,{component:t?"span":"div",sx:{display:t?"inline-flex":"block",my:t?0:.5,overflowX:"auto"},dangerouslySetInnerHTML:{__html:a}}):t?jsx(Box,{component:"code",sx:{px:.4,py:.05,borderRadius:.8,bgcolor:"action.hover",fontSize:"0.82em",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:r}):jsx(Box,{sx:{my:1,p:1,borderRadius:1.2,border:"1px dashed",borderColor:"divider",bgcolor:"background.paper"},children:jsx(Typography,{component:"pre",sx:{m:0,whiteSpace:"pre-wrap",fontSize:"0.9rem",lineHeight:1.5,fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:r})}):null};var v0=async e=>new Function("m","return import(m)")(e),Dc=({code:e,title:t="Mermaid Diagram",height:o=320,enabled:r=true})=>{let[a,n]=useState(""),[i,s]=useState(""),[d,l]=useState(false),c=useMemo(()=>e.trim(),[e]);return useEffect(()=>{let g=true;return (async()=>{if(!r||!c){n(""),s("");return}l(true),s(""),n("");try{let m=await v0("mermaid"),h=m?.default||m;if(!h||typeof h.render!="function")throw new Error("Mermaid runtime is not available");h.initialize?.({startOnLoad:!1,securityLevel:"loose",theme:"default"});let C=await h.render(`orbcafe-mermaid-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,c),u=typeof C=="string"?C:C?.svg;g&&typeof u=="string"&&n(u);}catch(m){if(g){let h=m instanceof Error?m.message:"Failed to render Mermaid diagram";s(h);}}finally{g&&l(false);}})(),()=>{g=false;}},[r,c]),jsxs(Paper,{variant:"outlined",sx:{borderRadius:1.5,overflow:"hidden",my:1},children:[jsx(Box,{sx:{px:1,py:.6,borderBottom:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsx(Typography,{variant:"caption",color:"text.secondary",sx:{letterSpacing:.4,textTransform:"uppercase"},children:t})}),jsxs(Box,{sx:{p:1},children:[d&&jsx(Box,{sx:{minHeight:120,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(CircularProgress,{size:20})}),!d&&a&&jsx(Box,{sx:{maxHeight:o,overflow:"auto","& svg":{display:"block",mx:"auto",maxWidth:"100%",height:"auto"}},dangerouslySetInnerHTML:{__html:a}}),!d&&!a&&jsxs(Box,{children:[i&&jsx(Alert,{severity:"info",sx:{mb:1},children:i}),jsx(pi,{code:c,language:"mermaid",copyable:true,showLineNumbers:true,wrapLongLines:true})]})]})]})};var Ac=e=>e.trim().replace(/^\|/,"").replace(/\|$/,"").split("|").map(o=>o.trim()),R0=e=>/^:?-{3,}:?$/.test(e.trim()),M0=e=>{let t=e.trim(),o=t.startsWith(":"),r=t.endsWith(":");return o&&r?"center":r?"right":"left"},Al=e=>{let t=e.split(`
5
- `).map(i=>i.trim()).filter(Boolean);if(t.length<2)return null;let o=Ac(t[0]),r=Ac(t[1]);if(o.length===0||r.length!==o.length||!r.every(R0))return null;let a=r.map(M0),n=t.slice(2).filter(i=>i.includes("|")).map(i=>{let s=Ac(i);return s.length<o.length?[...s,...Array.from({length:o.length-s.length},()=>"")]:s.slice(0,o.length)});return {headers:o,aligns:a,rows:n}},Bc=({markdown:e,table:t,maxHeight:o=360})=>{let r=useMemo(()=>t||(e?Al(e):null),[t,e]);return !r||r.headers.length===0?jsx(Paper,{variant:"outlined",sx:{p:1.2,borderRadius:1.5},children:jsx(Typography,{variant:"body2",color:"text.secondary",children:"Invalid table block"})}):jsx(Paper,{variant:"outlined",sx:{borderRadius:1.5,overflow:"hidden",my:1},children:jsx(TableContainer,{sx:{maxHeight:o},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:jsx(TableRow,{children:r.headers.map((a,n)=>jsx(TableCell,{align:r.aligns[n],sx:{fontWeight:700,bgcolor:"background.paper"},children:a},`${a}-${n}`))})}),jsx(TableBody,{children:r.rows.map((a,n)=>jsx(TableRow,{hover:true,children:a.map((i,s)=>jsx(TableCell,{align:r.aligns[s],sx:{whiteSpace:"pre-wrap",wordBreak:"break-word"},children:i||jsx(Box,{component:"span",sx:{color:"text.disabled"},children:"-"})},`cell-${n}-${s}`))},`row-${n}`))})]})})})};var Fl=({content:e,title:t="Thinking",defaultExpanded:o=false,isStreaming:r=false})=>{let[a,n]=useState(o);return jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1,my:.8},children:[jsxs(Stack,{direction:"row",alignItems:"center",spacing:.6,children:[jsx(IconButton,{size:"small",onClick:()=>n(i=>!i),sx:{transform:a?"rotate(180deg)":"rotate(0deg)",transition:"transform .15s ease"},children:jsx(z0,{fontSize:"inherit"})}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{fontStyle:"italic"},children:[t,r?" ...":""]})]}),jsx(Collapse,{in:a,children:jsx(Typography,{variant:"body2",sx:{pl:4,pt:.4,whiteSpace:"pre-wrap",color:"text.secondary",fontStyle:"italic",lineHeight:1.55},children:e})})]})};var Ec=/(\*\*[^*]+\*\*|`[^`]+`|\[[^\]]+\]\([^)]+\)|\*[^*]+\*|\$[^$\n]+\$)/g,El=e=>e.trim().startsWith("```"),Wp=e=>/^#{1,6}\s+/.test(e.trim()),Lc=e=>/^[-*+]\s+/.test(e.trim()),zc=e=>/^\d+\.\s+/.test(e.trim()),$p=e=>/^(?:-{3,}|\*{3,}|_{3,})$/.test(e.trim()),Nc=e=>e.trim().startsWith(">"),Gp=(e,t)=>{if(t+1>=e.length)return false;let o=e[t],r=e[t+1];return !o.includes("|")||!r.includes("|")?false:/^\s*\|?\s*:?-{3,}:?\s*(\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(r.trim())},Up=e=>e.trim().startsWith("<think>")||e.trim()===":::think",hi=(e,t,o)=>{let r=[],a=0,n=0;Ec.lastIndex=0;let i=Ec.exec(e);for(;i;){i.index>a&&r.push(e.slice(a,i.index));let s=i[0],d=`${o}-${n}`;if(s.startsWith("**")&&s.endsWith("**"))r.push(jsx("strong",{children:s.slice(2,-2)},d));else if(s.startsWith("*")&&s.endsWith("*"))r.push(jsx("em",{children:s.slice(1,-1)},d));else if(s.startsWith("`")&&s.endsWith("`"))r.push(jsx(Box,{component:"code",sx:{px:.45,py:.08,borderRadius:.8,bgcolor:"action.hover",fontSize:"0.82em",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:s.slice(1,-1)},d));else if(s.startsWith("[")&&s.includes("](")&&s.endsWith(")")){let l=s.match(/^\[([^\]]+)\]\(([^)]+)\)$/);l?r.push(jsx(Link,{href:l[2],target:"_blank",rel:"noreferrer",underline:"hover",children:l[1]},d)):r.push(s);}else s.startsWith("$")&&s.endsWith("$")&&t.enableMath?r.push(jsx(mi,{expression:s,inline:true,allowKatex:true},d)):r.push(s);a=i.index+s.length,n+=1,i=Ec.exec(e);}return a<e.length&&r.push(e.slice(a)),r.length>0?r:[e]},bi=({markdown:e,content:t,className:o,enableMath:r=true,enableMermaid:a=true,enableThinkBlock:n=true,codeCopyable:i=true,codeLineNumbers:s=false})=>{let d=e??t??"",l=useMemo(()=>{let c=[],g=d.replace(/\r\n/g,`
1
+ import {a}from'./chunk-74Z76O3S.mjs';export{b as COrbCanvas}from'./chunk-74Z76O3S.mjs';import*as Kt from'react';import Kt__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,MicOff,Mic,SendHorizontal,Plus,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 Op from'@mui/material/Dialog';import Vp from'@mui/material/DialogTitle';import Hp from'@mui/material/DialogContent';import Dh from'@mui/material/DialogContentText';import Wp from'@mui/material/DialogActions';import vi from'@mui/material/Box';import Eh from'@mui/icons-material/CheckCircle';import Fh from'@mui/icons-material/Warning';import Lh from'@mui/icons-material/Error';import Nh from'@mui/icons-material/Info';import {styled,Paper,IconButton,Tooltip,TextField,InputAdornment,CircularProgress,Dialog,DialogTitle,Box,Typography,DialogContent,Stack,Button,TableContainer,Table,TableHead,TableRow,TableCell,TableBody,Checkbox,DialogActions,Link,MenuItem,Chip,InputBase,useTheme,Autocomplete,FormControlLabel,Menu,ListItemText,Divider,Collapse,Grid,ListItemIcon,Alert,Tabs,Tab,LinearProgress,Avatar,AppBar,Toolbar,createTheme,ThemeProvider,FormControl,Select,Switch,Portal,useMediaQuery,Drawer,Popover,ListSubheader,Badge,TableFooter,InputLabel}from'@mui/material';import {alpha,useTheme as useTheme$1,createTheme as createTheme$1,ThemeProvider as ThemeProvider$1}from'@mui/material/styles';import Zh from'@mui/icons-material/Clear';import Xh from'@mui/icons-material/Close';import bu from'@mui/icons-material/Search';import s0 from'@mui/material/Paper';import c0 from'@mui/material/Table';import d0 from'@mui/material/TableBody';import cc from'@mui/material/TableCell';import Up from'@mui/material/TableContainer';import Tb from'@mui/material/TableHead';import Ib from'@mui/material/TableRow';import $p from'@mui/material/TextField';import zl from'@mui/material/Button';import Gp 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 ub from'@mui/icons-material/ViewColumn';import Ep from'@mui/icons-material/Save';import mb from'@mui/icons-material/Download';import gb from'@mui/icons-material/AccountTree';import fb from'@mui/icons-material/Functions';import hb from'@mui/icons-material/Insights';import Ou from'@mui/icons-material/Add';import yb from'@mui/icons-material/Edit';import xb from'@mui/icons-material/Delete';import vb from'@mui/icons-material/KeyboardArrowLeft';import Kf from'@mui/icons-material/KeyboardArrowRight';import Pb from'@mui/material/Checkbox';import Rb from'@mui/material/TableSortLabel';import Mb from'@mui/material/IconButton';import Db from'@mui/material/Tooltip';import Ab from'@mui/icons-material/UnfoldMore';import Bb from'@mui/icons-material/UnfoldLess';import {arrayMove,SortableContext,horizontalListSortingStrategy,verticalListSortingStrategy,useSortable}from'@dnd-kit/sortable';import $b from'@mui/icons-material/KeyboardArrowDown';import oy from'@mui/icons-material/Check';import Lu from'@mui/icons-material/ClearAll';import Nu from'@mui/icons-material/ArrowUpward';import zu from'@mui/icons-material/ArrowDownward';import ry from'@mui/icons-material/VisibilityOff';import iy from'@mui/icons-material/DeleteOutline';import Gy from'@mui/icons-material/MicNoneOutlined';import Uy from'@mui/icons-material/SettingsOutlined';import Ky from'@mui/icons-material/SendOutlined';import Hx from'@mui/icons-material/Settings';import Wx from'@mui/icons-material/KeyboardArrowUp';import Gx from'@mui/icons-material/ArrowRightAlt';import px 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 Tx from'@mui/icons-material/CalendarMonth';import Px from'@mui/icons-material/ArrowForward';import Ar from'dayjs';import Rx from'dayjs/plugin/isBetween';import Mx from'dayjs/plugin/localizedFormat';import Dx from'dayjs/plugin/customParseFormat';import'dayjs/locale/zh-cn';import'dayjs/locale/fr';import'dayjs/locale/de';import'dayjs/locale/ja';import'dayjs/locale/ko';import r0 from'@mui/icons-material/StarBorder';import a0 from'@mui/icons-material/ViewQuilt';import Iv from'@mui/icons-material/CloseOutlined';import I0 from'@mui/icons-material/ContentCopyOutlined';import P0 from'@mui/icons-material/CheckOutlined';import ov from'@mui/icons-material/ExpandMore';import mC from'@mui/icons-material/AddRounded';import wm from'@mui/icons-material/Language';import gC from'@mui/icons-material/DesktopWindows';import fC from'@mui/icons-material/DarkMode';import hC from'@mui/icons-material/LightMode';import yC from'@mui/icons-material/Logout';import WC from'@mui/icons-material/DragIndicator';import nk from'@mui/icons-material/FilterList';import ik from'@mui/icons-material/TableRows';import _C from'@mui/icons-material/LayersClear';import aS from'@mui/icons-material/CameraAltRounded';import nS from'@mui/icons-material/QrCodeScannerRounded';import cS from'@mui/icons-material/DragIndicatorRounded';import mS from'@mui/icons-material/BackspaceRounded';import gS from'@mui/icons-material/CloseRounded';import fS from'@mui/icons-material/CheckRounded';import DS from'@mui/icons-material/SearchRounded';import AS from'@mui/icons-material/MenuOpenRounded';import BS from'@mui/icons-material/MenuRounded';import ES from'@mui/icons-material/ExpandMoreRounded';import FS from'@mui/icons-material/ChevronRightRounded';import ew from'next/dynamic';import {AnimatePresence,motion}from'framer-motion';import p1 from'react-markdown';import m1 from'remark-gfm';import g1 from'remark-math';import f1 from'rehype-katex';import h1 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 tf from'mermaid';import P1 from'@mui/icons-material/MicRounded';import R1 from'@mui/icons-material/MicOffRounded';import {InsertDriveFile,Close,Stop}from'@mui/icons-material';import E1 from'@mui/icons-material/SendRounded';import L1 from'@mui/icons-material/HardwareRounded';import gT from'@mui/icons-material/LockOutlined';import Of from'@mui/icons-material/MailOutline';import Vf from'@mui/icons-material/PersonOutline';import fT from'@mui/icons-material/VpnKeyOutlined';import BT from'dayjs/plugin/isoWeek';import XT from'@mui/icons-material/KeyboardDoubleArrowLeftOutlined';import YT from'@mui/icons-material/KeyboardDoubleArrowRightOutlined';import QT from'@mui/icons-material/SplitscreenOutlined';import JT from'@mui/icons-material/Sort';function Xo(...e){return twMerge(clsx(e))}var qs={primary:"#000000",primaryHover:"#333333"},Ji={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"},Jn={none:"rounded-none",sm:"rounded-sm",md:"rounded-md",full:"rounded-full"},eu=()=>"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 ah=cva(eu(),{variants:{variant:{default:`${Ji.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:`${Ji.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:Ji.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-[${qs.primary}] hover:bg-[${qs.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:Jn.none,sm:Jn.sm,md:Jn.md,full:Jn.full}},defaultVariants:{variant:"default",size:"default",rounded:"md"}}),js=Kt.forwardRef(({className:e,variant:t,size:o,asChild:r=false,...a},n)=>jsx(r?Slot:"button",{className:Xo(ah({variant:t,size:o,className:e})),ref:n,...a}));js.displayName="Button";var ih={"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.searchAddFeature":"Add feature","header.searchSend":"Send","header.searchStartVoice":"Start voice input","header.searchStopVoice":"Stop voice input","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}","navigation.mode.switchToFixed":"Switch to fixed navigation","navigation.mode.switchToFloating":"Switch to floating navigation","table.toolbar.searchPlaceholder":"Search...","table.title.default":"Data Table","table.toolbar.groupBy":"Group By","table.toolbar.summary":"Summary","table.toolbar.columns":"Columns","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Items per page:","table.toolbar.pageOf":"Page {current} of {total}","table.toolbar.newItem":"New Item","table.toolbar.editItem":"Edit Item","table.toolbar.deleteItem":"Delete Item","table.toolbar.graphicReport":"Graphic Report","table.toolbar.saveLayout":"Save Layout","table.menu.groupBy":"Group By","table.menu.clearAll":"Clear All","table.menu.visibleColumns":"Visible Columns","table.menu.showSummaryRow":"Show Summary Row","table.menu.noNumericColumns":"No numeric columns","table.group.expandAll":"Expand All Groups","table.group.collapseAll":"Collapse All Groups","table.mobile.notImplemented":"Mobile View Not Implemented","table.headerMenu.sortAsc":"Sort Ascending","table.headerMenu.sortDesc":"Sort Descending","table.headerMenu.clearSort":"Clear Sort","table.headerMenu.configureSort":"Configure Sort...","table.headerMenu.group":"Group by this column","table.headerMenu.ungroup":"Remove from grouping","table.headerMenu.addSummary":"Include in Summary","table.headerMenu.removeSummary":"Remove from Summary","table.headerMenu.hideColumn":"Hide Column","table.sortDialog.title":"Sort Settings","table.sortDialog.empty":"No sort rules. Add one to start ordering rows.","table.sortDialog.addRule":"Add Sort Rule","table.sortDialog.clearAll":"Clear All","table.sortDialog.asc":"Ascending","table.sortDialog.desc":"Descending","pivot.title.default":"Pivot Table Builder","pivot.subtitle.default":"Drag fields to configure the pivot table.","pivot.empty":"Drag at least one field into Values to render the pivot result.","pivot.records":"Records","pivot.afterFilter":"After filter","pivot.grandTotal":"Grand Total","pivot.resultLabel":"Result","pivot.valueLabel":"Value","pivot.table.dimensions":"Dimensions","pivot.config.title":"Configuration","pivot.fieldList":"Field List","pivot.availableDimensions":"Available dimensions","pivot.allFieldsInUse":"All fields are in use.","pivot.zone.rows":"Rows","pivot.zone.columns":"Columns","pivot.zone.filters":"Filters","pivot.zone.values":"Values","pivot.hint.rows":"Drag fields here to build row hierarchy","pivot.hint.columns":"Drag fields here to build column hierarchy","pivot.hint.filters":"Drag fields here for report filters","pivot.hint.values":"Drag numeric fields here for aggregation","pivot.clearArea":"Clear area","pivot.filter.na":"N/A","pivot.filter.noValues":"No values","pivot.filter.noneSelected":"None selected","pivot.filter.allValues":"All values","pivot.filter.selectedCount":"{selected} / {total} selected","pivot.filter.selectAll":"Select All","pivot.filter.deselectAll":"Deselect All","pivot.filter.noResults":"No results","pivot.collapse.ariaExpand":"Expand configuration area","pivot.collapse.ariaCollapse":"Collapse configuration area","pivot.agg.sum":"Sum","pivot.agg.count":"Count","pivot.agg.avg":"Average","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"Select preset","pivot.preset.save":"Save preset","pivot.preset.delete":"Delete preset","pivot.preset.saveDialogTitle":"Save current preset","pivot.preset.nameLabel":"Preset name","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"Pivot Result","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"Expand pivot result","pivot.table.collapse.ariaCollapse":"Collapse pivot result","pivot.chart.title":"Pivot Chart","pivot.chart.subtitle":"Map one dimension and up to two measures into a compact chart.","pivot.chart.subtitleReady":"{dimension} by {measure}","pivot.chart.emptyNoDimension":"Add at least one row or column field to render the chart.","pivot.chart.emptyNoValue":"Add at least one value field to render the chart.","pivot.chart.emptyNoData":"No data available for the current chart selection.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Measure","pivot.chart.secondaryMeasure":"Compare measure","pivot.chart.chartType":"Chart type","pivot.chart.style.barVertical":"Vertical bars","pivot.chart.style.barHorizontal":"Horizontal bars","pivot.chart.style.line":"Line","pivot.chart.style.scatter":"Scatter","pivot.chart.collapse.ariaExpand":"Expand chart area","pivot.chart.collapse.ariaCollapse":"Collapse chart area","smartFilter.adaptFilters":"Adapt Filters","smartFilter.addFilters":"Add Filters","smartFilter.go":"Go","smartFilter.visibleFilters":"Visible Filters","smartFilter.searchPlaceholder":"Search...","smartFilter.noOptionsFound":"No options found","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"Equals","smartFilter.operator.contains":"Contains","smartFilter.operator.notContains":"Does Not Contain","smartFilter.operator.wildcard":"Wildcard Search","smartFilter.operator.notEquals":"Not Equals","smartFilter.operator.greaterThan":"Greater Than","smartFilter.operator.lessThan":"Less Than","smartFilter.operator.greaterOrEqual":"Greater Than or Equal","smartFilter.operator.lessOrEqual":"Less Than or Equal","smartFilter.operator.between":"Between","variant.noOptions":"No options","variant.defaultSuffix":"Default","variant.selectVariant":"Select Variant","variant.saveView":"Save View","variant.newVariant":"New Variant","variant.viewName":"View Name","variant.setDefault":"Set as Default","variant.publicAllUsers":"Public (All Users)","variant.toast.fetchFailed":"Failed to load variants","variant.toast.saveFailed":"Failed to save variant","variant.toast.saveSuccess":"Variant saved successfully","variant.toast.deleteFailed":"Failed to delete variant","variant.toast.deleteSuccess":"Variant deleted successfully","variant.toast.defaultFailed":"Failed to update default variant","variant.toast.defaultSuccess":"Default variant updated","layout.saveLayout":"Save Layout","layout.layoutOptions":"Layout Options","layout.selectLayout":"Select Layout","layout.saveCurrentLayout":"Save Current Layout...","layout.noSavedLayouts":"No saved layouts","layout.removeDefault":"Remove Default","layout.setAsDefault":"Set as Default","layout.layoutName":"Layout Name","layout.layoutDescription":"Description","layout.layoutNameHelper":"e.g., 'Compact View'","layout.warningOverwrite":"Warning: Existing layout will be overwritten","layout.useAsDefault":"Use as Default Layout","layout.publicAllUsers":"Public (Visible to all users)","layout.toast.loadFallback":"Failed to load layouts from backend, fallback to local storage","layout.toast.saveSuccess":"Layout saved successfully","layout.toast.saveLocalSuccess":"Layout saved to local storage","layout.toast.backendUnavailableSavedLocal":"Backend unavailable, saved to local storage","layout.toast.deleteSuccess":"Layout deleted successfully","layout.toast.deleteLocalSuccess":"Layout deleted from local storage","layout.toast.backendUnavailableDeletedLocal":"Backend unavailable, deleted from local storage","layout.toast.defaultSuccess":"Default layout set","layout.toast.defaultLocalSuccess":"Default layout set in local storage","layout.toast.backendUnavailableDefaultLocal":"Backend unavailable, default saved to local storage","dateRange.label":"Date Range","dateRange.startDate":"Start Date","dateRange.endDate":"End Date","dateRange.select":"Select...","dateRange.today":"Today","dateRange.thisWeek":"This Week","dateRange.thisMonth":"This Month","graph.records":"{count} records","graph.kpi.totalRecords":"Total Records","graph.kpi.totalReport":"Total Report","graph.kpi.totalBillable":"Total Billable","graph.kpi.efficiency":"Efficiency","graph.kpi.amount":"Amount","graph.kpi.flagged":"Flagged","graph.chart.billable.title":"Billable by Dimension","graph.chart.billable.subtitle":"Top values by billable hours","graph.chart.efficiency.title":"Efficiency by Person","graph.chart.efficiency.subtitle":"Lowest efficiency first","graph.chart.status.title":"Status Distribution","graph.chart.status.subtitle":"Record ratio by status","graph.dataBody":"Data Body","graph.reportTitle":"Graphic Report","graph.unassigned":"Unassigned","graph.column.reportHours":"Report Hours","graph.column.billableHours":"Billable Hours","detail.searchAi.placeholder":"Search fields, or ask AI if no match...","detail.searchAi.matches":"{count} matches found","detail.searchAi.noMatch":"No matching field found.","detail.searchAi.autoAiFallback":"No direct match. Triggering AI analysis...","detail.searchAi.aiResultTitle":"AI Insight","detail.table.title":"Related Records","kanban.empty":"Drop cards here","kanban.bucket.limit":"Limit","kanban.bucket.dropHere":"Release to move into this bucket","kanban.card.progress":"Progress","kanban.card.openDetail":"Open Detail","kanban.priority.critical":"Critical","kanban.priority.high":"High","kanban.priority.medium":"Medium","kanban.priority.low":"Low","quickCreate.newItem":"New Item","quickCreate.createWithTitle":"Create {title}","quickEdit.editWithTitle":"Edit {title}","quickDelete.confirmTitle":"Confirm Delete","quickDelete.confirmMessageSingle":"Are you sure you want to delete the selected record?","quickDelete.confirmMessageMultiple":"Are you sure you want to delete {count} selected records?","messageBox.confirm":"OK","messageBox.cancel":"Cancel"},lh={"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.searchAddFeature":"\u589E\u52A0\u529F\u80FD","header.searchSend":"\u53D1\u9001","header.searchStartVoice":"\u5F00\u59CB\u8BED\u97F3\u8F93\u5165","header.searchStopVoice":"\u505C\u6B62\u8BED\u97F3\u8F93\u5165","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}","navigation.mode.switchToFixed":"\u5207\u6362\u4E3A\u56FA\u5B9A\u5BFC\u822A","navigation.mode.switchToFloating":"\u5207\u6362\u4E3A\u60AC\u6D6E\u5BFC\u822A","table.toolbar.searchPlaceholder":"\u641C\u7D22...","table.title.default":"\u6570\u636E\u8868","table.toolbar.groupBy":"\u5206\u7EC4","table.toolbar.summary":"\u6C47\u603B","table.toolbar.columns":"\u5217","table.toolbar.export":"\u5BFC\u51FA","table.toolbar.itemsPerPage":"\u6BCF\u9875\u6761\u6570\uFF1A","table.toolbar.pageOf":"\u7B2C {current} / {total} \u9875","table.toolbar.newItem":"\u65B0\u5EFA\u6761\u76EE","table.toolbar.editItem":"\u7F16\u8F91\u6761\u76EE","table.toolbar.deleteItem":"\u5220\u9664\u6761\u76EE","table.toolbar.graphicReport":"\u56FE\u8868\u62A5\u8868","table.toolbar.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","table.menu.groupBy":"\u5206\u7EC4","table.menu.clearAll":"\u6E05\u7A7A","table.menu.visibleColumns":"\u53EF\u89C1\u5217","table.menu.showSummaryRow":"\u663E\u793A\u6C47\u603B\u884C","table.menu.noNumericColumns":"\u6CA1\u6709\u6570\u503C\u5217","table.group.expandAll":"\u5C55\u5F00\u5168\u90E8\u5206\u7EC4","table.group.collapseAll":"\u6298\u53E0\u5168\u90E8\u5206\u7EC4","table.mobile.notImplemented":"\u79FB\u52A8\u7AEF\u89C6\u56FE\u6682\u672A\u5B9E\u73B0","table.headerMenu.sortAsc":"\u5347\u5E8F\u6392\u5217","table.headerMenu.sortDesc":"\u964D\u5E8F\u6392\u5217","table.headerMenu.clearSort":"\u6E05\u9664\u6392\u5E8F","table.headerMenu.configureSort":"\u6392\u5E8F\u8BBE\u7F6E...","table.headerMenu.group":"\u6309\u6B64\u5217\u5206\u7EC4","table.headerMenu.ungroup":"\u53D6\u6D88\u5206\u7EC4","table.headerMenu.addSummary":"\u52A0\u5165\u6C47\u603B","table.headerMenu.removeSummary":"\u4ECE\u6C47\u603B\u4E2D\u79FB\u9664","table.headerMenu.hideColumn":"\u9690\u85CF\u8BE5\u5217","table.sortDialog.title":"\u6392\u5E8F\u8BBE\u7F6E","table.sortDialog.empty":"\u6682\u65E0\u6392\u5E8F\u89C4\u5219\uFF0C\u8BF7\u6DFB\u52A0\u89C4\u5219\u8FDB\u884C\u6392\u5E8F\u3002","table.sortDialog.addRule":"\u6DFB\u52A0\u6392\u5E8F\u89C4\u5219","table.sortDialog.clearAll":"\u6E05\u7A7A\u89C4\u5219","table.sortDialog.asc":"\u5347\u5E8F","table.sortDialog.desc":"\u964D\u5E8F","pivot.title.default":"\u6570\u636E\u900F\u89C6\u8868","pivot.subtitle.default":"\u62D6\u62FD\u5B57\u6BB5\u4EE5\u914D\u7F6E\u900F\u89C6\u8868\u3002","pivot.empty":"\u8BF7\u81F3\u5C11\u62D6\u5165\u4E00\u4E2A\u503C\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u900F\u89C6\u7ED3\u679C\u3002","pivot.records":"\u8BB0\u5F55\u6570","pivot.afterFilter":"\u7B5B\u9009\u540E","pivot.grandTotal":"\u603B\u8BA1","pivot.resultLabel":"\u7ED3\u679C","pivot.valueLabel":"\u503C","pivot.table.dimensions":"\u7EF4\u5EA6","pivot.config.title":"\u5E03\u5C40\u914D\u7F6E","pivot.fieldList":"\u5B57\u6BB5\u5217\u8868","pivot.availableDimensions":"\u53EF\u7528\u7EF4\u5EA6","pivot.allFieldsInUse":"\u6240\u6709\u5B57\u6BB5\u90FD\u5DF2\u4F7F\u7528\u3002","pivot.zone.rows":"\u884C","pivot.zone.columns":"\u5217","pivot.zone.filters":"\u7B5B\u9009","pivot.zone.values":"\u503C","pivot.hint.rows":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u6784\u5EFA\u884C\u5C42\u7EA7","pivot.hint.columns":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u6784\u5EFA\u5217\u5C42\u7EA7","pivot.hint.filters":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u4F5C\u4E3A\u62A5\u8868\u7B5B\u9009","pivot.hint.values":"\u5C06\u6570\u503C\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u8FDB\u884C\u805A\u5408","pivot.clearArea":"\u6E05\u7A7A\u533A\u57DF","pivot.filter.na":"\u4E0D\u53EF\u7528","pivot.filter.noValues":"\u65E0\u53EF\u9009\u503C","pivot.filter.noneSelected":"\u672A\u9009\u62E9","pivot.filter.allValues":"\u5168\u90E8\u503C","pivot.filter.selectedCount":"\u5DF2\u9009 {selected} / {total}","pivot.filter.selectAll":"\u5168\u9009","pivot.filter.deselectAll":"\u53D6\u6D88\u5168\u9009","pivot.filter.noResults":"\u65E0\u5339\u914D\u7ED3\u679C","pivot.collapse.ariaExpand":"\u5C55\u5F00\u914D\u7F6E\u533A\u57DF","pivot.collapse.ariaCollapse":"\u6298\u53E0\u914D\u7F6E\u533A\u57DF","pivot.agg.sum":"\u6C42\u548C","pivot.agg.count":"\u8BA1\u6570","pivot.agg.avg":"\u5E73\u5747\u503C","pivot.agg.min":"\u6700\u5C0F\u503C","pivot.agg.max":"\u6700\u5927\u503C","pivot.preset.selectPlaceholder":"\u9009\u62E9\u65B9\u6848","pivot.preset.save":"\u4FDD\u5B58\u65B9\u6848","pivot.preset.delete":"\u5220\u9664\u65B9\u6848","pivot.preset.saveDialogTitle":"\u4FDD\u5B58\u5F53\u524D\u65B9\u6848","pivot.preset.nameLabel":"\u65B9\u6848\u540D\u79F0","pivot.preset.defaultName":"\u65B9\u6848 {index}","pivot.table.sectionTitle":"\u900F\u89C6\u7ED3\u679C","pivot.table.expandRowsAll":"\u884C\u5168\u90E8\u6253\u5F00","pivot.table.collapseRowsAll":"\u884C\u5168\u90E8\u6298\u53E0","pivot.table.expandColumnsAll":"\u5217\u5168\u90E8\u6253\u5F00","pivot.table.collapseColumnsAll":"\u5217\u5168\u90E8\u6298\u53E0","pivot.table.collapse.ariaExpand":"\u5C55\u5F00\u900F\u89C6\u7ED3\u679C","pivot.table.collapse.ariaCollapse":"\u6298\u53E0\u900F\u89C6\u7ED3\u679C","pivot.chart.title":"\u900F\u89C6\u56FE\u8868","pivot.chart.subtitle":"\u5C06\u4E00\u4E2A\u7EF4\u5EA6\u4E0E\u6700\u591A\u4E24\u4E2A\u5EA6\u91CF\u6620\u5C04\u4E3A\u7D27\u51D1\u56FE\u8868\u3002","pivot.chart.subtitleReady":"{dimension} \xB7 {measure}","pivot.chart.emptyNoDimension":"\u8BF7\u81F3\u5C11\u653E\u5165\u4E00\u4E2A\u884C\u6216\u5217\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u56FE\u8868\u3002","pivot.chart.emptyNoValue":"\u8BF7\u81F3\u5C11\u653E\u5165\u4E00\u4E2A\u503C\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u56FE\u8868\u3002","pivot.chart.emptyNoData":"\u5F53\u524D\u56FE\u8868\u9009\u62E9\u4E0B\u6682\u65E0\u53EF\u5C55\u793A\u6570\u636E\u3002","pivot.chart.dimension":"\u56FE\u8868\u7EF4\u5EA6","pivot.chart.primaryMeasure":"\u4E3B\u5EA6\u91CF","pivot.chart.secondaryMeasure":"\u5BF9\u6BD4\u5EA6\u91CF","pivot.chart.chartType":"\u56FE\u8868\u7C7B\u578B","pivot.chart.style.barVertical":"\u7EB5\u5411\u67F1\u72B6\u56FE","pivot.chart.style.barHorizontal":"\u6A2A\u5411\u67F1\u72B6\u56FE","pivot.chart.style.line":"\u6298\u7EBF\u56FE","pivot.chart.style.scatter":"\u6563\u70B9\u56FE","pivot.chart.collapse.ariaExpand":"\u5C55\u5F00\u56FE\u8868\u533A\u57DF","pivot.chart.collapse.ariaCollapse":"\u6298\u53E0\u56FE\u8868\u533A\u57DF","smartFilter.adaptFilters":"\u7B5B\u9009\u8BBE\u7F6E","smartFilter.addFilters":"\u6DFB\u52A0\u7B5B\u9009","smartFilter.go":"\u6267\u884C","smartFilter.visibleFilters":"\u53EF\u89C1\u7B5B\u9009\u9879","smartFilter.searchPlaceholder":"\u641C\u7D22...","smartFilter.noOptionsFound":"\u672A\u627E\u5230\u9009\u9879","smartFilter.min":"\u6700\u5C0F\u503C","smartFilter.max":"\u6700\u5927\u503C","smartFilter.minMaxPlaceholder":"\u6700\u5C0F\u503C - \u6700\u5927\u503C","smartFilter.operator.equals":"\u7B49\u4E8E","smartFilter.operator.contains":"\u5305\u542B","smartFilter.operator.notContains":"\u4E0D\u5305\u542B","smartFilter.operator.wildcard":"\u901A\u914D\u7B26\u641C\u7D22","smartFilter.operator.notEquals":"\u4E0D\u7B49\u4E8E","smartFilter.operator.greaterThan":"\u5927\u4E8E","smartFilter.operator.lessThan":"\u5C0F\u4E8E","smartFilter.operator.greaterOrEqual":"\u5927\u4E8E\u7B49\u4E8E","smartFilter.operator.lessOrEqual":"\u5C0F\u4E8E\u7B49\u4E8E","smartFilter.operator.between":"\u533A\u95F4","variant.noOptions":"\u65E0\u9009\u9879","variant.defaultSuffix":"\u9ED8\u8BA4","variant.selectVariant":"\u9009\u62E9\u89C6\u56FE","variant.saveView":"\u4FDD\u5B58\u89C6\u56FE","variant.newVariant":"\u65B0\u89C6\u56FE","variant.viewName":"\u89C6\u56FE\u540D\u79F0","variant.setDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","variant.publicAllUsers":"\u516C\u5F00\uFF08\u6240\u6709\u7528\u6237\uFF09","variant.toast.fetchFailed":"\u52A0\u8F7D\u89C6\u56FE\u5931\u8D25","variant.toast.saveFailed":"\u4FDD\u5B58\u89C6\u56FE\u5931\u8D25","variant.toast.saveSuccess":"\u89C6\u56FE\u4FDD\u5B58\u6210\u529F","variant.toast.deleteFailed":"\u5220\u9664\u89C6\u56FE\u5931\u8D25","variant.toast.deleteSuccess":"\u89C6\u56FE\u5220\u9664\u6210\u529F","variant.toast.defaultFailed":"\u66F4\u65B0\u9ED8\u8BA4\u89C6\u56FE\u5931\u8D25","variant.toast.defaultSuccess":"\u9ED8\u8BA4\u89C6\u56FE\u5DF2\u66F4\u65B0","layout.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","layout.layoutOptions":"\u5E03\u5C40\u9009\u9879","layout.selectLayout":"\u9009\u62E9\u5E03\u5C40","layout.saveCurrentLayout":"\u4FDD\u5B58\u5F53\u524D\u5E03\u5C40...","layout.noSavedLayouts":"\u6682\u65E0\u5DF2\u4FDD\u5B58\u5E03\u5C40","layout.removeDefault":"\u53D6\u6D88\u9ED8\u8BA4","layout.setAsDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","layout.layoutName":"\u5E03\u5C40\u540D\u79F0","layout.layoutDescription":"\u63CF\u8FF0","layout.layoutNameHelper":"\u4F8B\u5982\uFF1A\u7D27\u51D1\u89C6\u56FE","layout.warningOverwrite":"\u8B66\u544A\uFF1A\u5C06\u8986\u76D6\u540C\u540D\u5E03\u5C40","layout.useAsDefault":"\u7528\u4F5C\u9ED8\u8BA4\u5E03\u5C40","layout.publicAllUsers":"\u516C\u5F00\uFF08\u6240\u6709\u7528\u6237\u53EF\u89C1\uFF09","layout.toast.loadFallback":"\u540E\u7AEF\u52A0\u8F7D\u5E03\u5C40\u5931\u8D25\uFF0C\u5DF2\u56DE\u9000\u5230\u672C\u5730\u5B58\u50A8","layout.toast.saveSuccess":"\u5E03\u5C40\u4FDD\u5B58\u6210\u529F","layout.toast.saveLocalSuccess":"\u5E03\u5C40\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","layout.toast.backendUnavailableSavedLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","layout.toast.deleteSuccess":"\u5E03\u5C40\u5220\u9664\u6210\u529F","layout.toast.deleteLocalSuccess":"\u5E03\u5C40\u5DF2\u4ECE\u672C\u5730\u5B58\u50A8\u5220\u9664","layout.toast.backendUnavailableDeletedLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u5DF2\u4ECE\u672C\u5730\u5B58\u50A8\u5220\u9664","layout.toast.defaultSuccess":"\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u8BBE\u7F6E","layout.toast.defaultLocalSuccess":"\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u5728\u672C\u5730\u5B58\u50A8\u8BBE\u7F6E","layout.toast.backendUnavailableDefaultLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","dateRange.label":"\u65E5\u671F\u8303\u56F4","dateRange.startDate":"\u5F00\u59CB\u65E5\u671F","dateRange.endDate":"\u7ED3\u675F\u65E5\u671F","dateRange.select":"\u8BF7\u9009\u62E9...","dateRange.today":"\u4ECA\u5929","dateRange.thisWeek":"\u672C\u5468","dateRange.thisMonth":"\u672C\u6708","graph.records":"{count} \u6761\u8BB0\u5F55","graph.kpi.totalRecords":"\u603B\u8BB0\u5F55\u6570","graph.kpi.totalReport":"\u603B\u7533\u62A5\u5DE5\u65F6","graph.kpi.totalBillable":"\u603B\u53EF\u8BA1\u8D39\u5DE5\u65F6","graph.kpi.efficiency":"\u6548\u7387","graph.kpi.amount":"\u91D1\u989D","graph.kpi.flagged":"\u6807\u8BB0","graph.chart.billable.title":"\u7EF4\u5EA6\u8BA1\u8D39\u5DE5\u65F6","graph.chart.billable.subtitle":"\u6309\u53EF\u8BA1\u8D39\u5DE5\u65F6\u6392\u5E8F\u524D\u5217","graph.chart.efficiency.title":"\u4EBA\u5458\u6548\u7387","graph.chart.efficiency.subtitle":"\u6309\u6700\u4F4E\u6548\u7387\u4F18\u5148","graph.chart.status.title":"\u72B6\u6001\u5206\u5E03","graph.chart.status.subtitle":"\u6309\u72B6\u6001\u8BB0\u5F55\u5360\u6BD4","graph.dataBody":"\u6570\u636E\u660E\u7EC6","graph.reportTitle":"\u56FE\u8868\u62A5\u8868","graph.unassigned":"\u672A\u5206\u914D","graph.column.reportHours":"\u7533\u62A5\u5DE5\u65F6","graph.column.billableHours":"\u53EF\u8BA1\u8D39\u5DE5\u65F6","detail.searchAi.placeholder":"\u641C\u7D22\u5B57\u6BB5\uFF1B\u5982\u65E0\u7ED3\u679C\u5219\u81EA\u52A8\u89E6\u53D1 AI...","detail.searchAi.matches":"{count} \u6761\u5339\u914D\u7ED3\u679C","detail.searchAi.noMatch":"\u672A\u627E\u5230\u5339\u914D\u5B57\u6BB5\u3002","detail.searchAi.autoAiFallback":"\u672A\u547D\u4E2D\u5B57\u6BB5\uFF0C\u6B63\u5728\u89E6\u53D1 AI \u5206\u6790...","detail.searchAi.aiResultTitle":"AI \u5206\u6790\u7ED3\u679C","detail.table.title":"\u5173\u8054\u8BB0\u5F55","kanban.empty":"\u5C06\u5361\u7247\u62D6\u5230\u8FD9\u91CC","kanban.bucket.limit":"\u4E0A\u9650","kanban.bucket.dropHere":"\u91CA\u653E\u540E\u79FB\u52A8\u5230\u8BE5 bucket","kanban.card.progress":"\u8FDB\u5EA6","kanban.card.openDetail":"\u6253\u5F00\u8BE6\u60C5","kanban.priority.critical":"\u7D27\u6025","kanban.priority.high":"\u9AD8","kanban.priority.medium":"\u4E2D","kanban.priority.low":"\u4F4E","quickCreate.newItem":"\u65B0\u5EFA\u6761\u76EE","quickCreate.createWithTitle":"\u521B\u5EFA{title}","quickEdit.editWithTitle":"\u7F16\u8F91{title}","quickDelete.confirmTitle":"\u786E\u8BA4\u5220\u9664","quickDelete.confirmMessageSingle":"\u786E\u8BA4\u5220\u9664\u5F53\u524D\u9009\u4E2D\u8BB0\u5F55\u5417\uFF1F","quickDelete.confirmMessageMultiple":"\u786E\u8BA4\u5220\u9664\u5DF2\u9009\u4E2D\u7684 {count} \u6761\u8BB0\u5F55\u5417\uFF1F","messageBox.confirm":"\u786E\u5B9A","messageBox.cancel":"\u53D6\u6D88"},sh={"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.searchAddFeature":"Ajouter une fonction","header.searchSend":"Envoyer","header.searchStartVoice":"D\xE9marrer la saisie vocale","header.searchStopVoice":"Arr\xEAter la saisie vocale","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}","navigation.mode.switchToFixed":"Basculer vers la navigation fixe","navigation.mode.switchToFloating":"Basculer vers la navigation flottante","table.toolbar.searchPlaceholder":"Rechercher...","table.title.default":"Tableau de donn\xE9es","table.toolbar.groupBy":"Grouper","table.toolbar.summary":"R\xE9sum\xE9","table.toolbar.columns":"Colonnes","table.toolbar.export":"Exporter","table.toolbar.itemsPerPage":"Lignes par page :","table.toolbar.pageOf":"Page {current} sur {total}","table.toolbar.newItem":"Nouvel \xE9l\xE9ment","table.toolbar.editItem":"Modifier l'\xE9l\xE9ment","table.toolbar.deleteItem":"Supprimer l'\xE9l\xE9ment","table.toolbar.graphicReport":"Rapport graphique","table.toolbar.saveLayout":"Enregistrer la vue","table.menu.groupBy":"Grouper","table.menu.clearAll":"Tout effacer","table.menu.visibleColumns":"Colonnes visibles","table.menu.showSummaryRow":"Afficher la ligne de r\xE9sum\xE9","table.menu.noNumericColumns":"Aucune colonne num\xE9rique","table.group.expandAll":"D\xE9velopper tous les groupes","table.group.collapseAll":"R\xE9duire tous les groupes","table.mobile.notImplemented":"Vue mobile non impl\xE9ment\xE9e","table.headerMenu.sortAsc":"Trier ascendant","table.headerMenu.sortDesc":"Trier descendant","table.headerMenu.clearSort":"Effacer le tri","table.headerMenu.configureSort":"Configurer le tri...","table.headerMenu.group":"Grouper par cette colonne","table.headerMenu.ungroup":"Retirer du groupement","table.headerMenu.addSummary":"Inclure dans le r\xE9sum\xE9","table.headerMenu.removeSummary":"Retirer du r\xE9sum\xE9","table.headerMenu.hideColumn":"Masquer la colonne","table.sortDialog.title":"Param\xE8tres de tri","table.sortDialog.empty":"Aucune r\xE8gle de tri. Ajoutez-en une pour commencer.","table.sortDialog.addRule":"Ajouter une r\xE8gle","table.sortDialog.clearAll":"Tout effacer","table.sortDialog.asc":"Ascendant","table.sortDialog.desc":"Descendant","pivot.title.default":"Tableau crois\xE9 dynamique","pivot.subtitle.default":"Faites glisser les champs pour configurer le tableau crois\xE9.","pivot.empty":"Ajoutez au moins un champ de valeur pour afficher le r\xE9sultat.","pivot.records":"Enregistrements","pivot.afterFilter":"Apr\xE8s filtre","pivot.grandTotal":"Total g\xE9n\xE9ral","pivot.resultLabel":"R\xE9sultat","pivot.valueLabel":"Valeur","pivot.table.dimensions":"Dimensions","pivot.config.title":"Configuration","pivot.fieldList":"Liste des champs","pivot.availableDimensions":"Dimensions disponibles","pivot.allFieldsInUse":"Tous les champs sont d\xE9j\xE0 utilis\xE9s.","pivot.zone.rows":"Lignes","pivot.zone.columns":"Colonnes","pivot.zone.filters":"Filtres","pivot.zone.values":"Valeurs","pivot.hint.rows":"D\xE9posez les champs ici pour construire la hi\xE9rarchie des lignes","pivot.hint.columns":"D\xE9posez les champs ici pour construire la hi\xE9rarchie des colonnes","pivot.hint.filters":"D\xE9posez les champs ici pour les filtres du rapport","pivot.hint.values":"D\xE9posez les champs num\xE9riques ici pour les agr\xE9gations","pivot.clearArea":"Vider la zone","pivot.filter.na":"N/A","pivot.filter.noValues":"Aucune valeur","pivot.filter.noneSelected":"Aucune s\xE9lection","pivot.filter.allValues":"Toutes les valeurs","pivot.filter.selectedCount":"{selected} / {total} s\xE9lectionn\xE9es","pivot.filter.selectAll":"Tout s\xE9lectionner","pivot.filter.deselectAll":"Tout d\xE9s\xE9lectionner","pivot.filter.noResults":"Aucun r\xE9sultat","pivot.collapse.ariaExpand":"D\xE9velopper la zone de configuration","pivot.collapse.ariaCollapse":"R\xE9duire la zone de configuration","pivot.agg.sum":"Somme","pivot.agg.count":"Compte","pivot.agg.avg":"Moyenne","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"S\xE9lectionner un preset","pivot.preset.save":"Enregistrer le preset","pivot.preset.delete":"Supprimer le preset","pivot.preset.saveDialogTitle":"Enregistrer le preset actuel","pivot.preset.nameLabel":"Nom du preset","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"R\xE9sultat du pivot","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"D\xE9velopper le r\xE9sultat du pivot","pivot.table.collapse.ariaCollapse":"R\xE9duire le r\xE9sultat du pivot","pivot.chart.title":"Graphique pivot","pivot.chart.subtitle":"Associez une dimension et jusqu\u2019\xE0 deux mesures dans un graphique compact.","pivot.chart.subtitleReady":"{dimension} par {measure}","pivot.chart.emptyNoDimension":"Ajoutez au moins un champ de ligne ou de colonne pour afficher le graphique.","pivot.chart.emptyNoValue":"Ajoutez au moins un champ de valeur pour afficher le graphique.","pivot.chart.emptyNoData":"Aucune donn\xE9e disponible pour la s\xE9lection actuelle du graphique.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Mesure","pivot.chart.secondaryMeasure":"Mesure de comparaison","pivot.chart.chartType":"Type de graphique","pivot.chart.style.barVertical":"Barres verticales","pivot.chart.style.barHorizontal":"Barres horizontales","pivot.chart.style.line":"Ligne","pivot.chart.style.scatter":"Nuage de points","pivot.chart.collapse.ariaExpand":"D\xE9velopper la zone du graphique","pivot.chart.collapse.ariaCollapse":"R\xE9duire la zone du graphique","smartFilter.adaptFilters":"Adapter les filtres","smartFilter.addFilters":"Ajouter des filtres","smartFilter.go":"Ex\xE9cuter","smartFilter.visibleFilters":"Filtres visibles","smartFilter.searchPlaceholder":"Rechercher...","smartFilter.noOptionsFound":"Aucune option trouv\xE9e","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"\xC9gal \xE0","smartFilter.operator.contains":"Contient","smartFilter.operator.notContains":"Ne contient pas","smartFilter.operator.wildcard":"Recherche g\xE9n\xE9rique","smartFilter.operator.notEquals":"Diff\xE9rent de","smartFilter.operator.greaterThan":"Sup\xE9rieur \xE0","smartFilter.operator.lessThan":"Inf\xE9rieur \xE0","smartFilter.operator.greaterOrEqual":"Sup\xE9rieur ou \xE9gal","smartFilter.operator.lessOrEqual":"Inf\xE9rieur ou \xE9gal","smartFilter.operator.between":"Entre","variant.noOptions":"Aucune option","variant.defaultSuffix":"Par d\xE9faut","variant.selectVariant":"S\xE9lectionner une vue","variant.saveView":"Enregistrer la vue","variant.newVariant":"Nouvelle vue","variant.viewName":"Nom de la vue","variant.setDefault":"D\xE9finir par d\xE9faut","variant.publicAllUsers":"Public (tous les utilisateurs)","variant.toast.fetchFailed":"\xC9chec du chargement des vues","variant.toast.saveFailed":"\xC9chec de l'enregistrement de la vue","variant.toast.saveSuccess":"Vue enregistr\xE9e avec succ\xE8s","variant.toast.deleteFailed":"\xC9chec de la suppression de la vue","variant.toast.deleteSuccess":"Vue supprim\xE9e avec succ\xE8s","variant.toast.defaultFailed":"\xC9chec de la mise \xE0 jour de la vue par d\xE9faut","variant.toast.defaultSuccess":"Vue par d\xE9faut mise \xE0 jour","layout.saveLayout":"Enregistrer la vue","layout.layoutOptions":"Options de vue","layout.selectLayout":"S\xE9lectionner une vue","layout.saveCurrentLayout":"Enregistrer la vue actuelle...","layout.noSavedLayouts":"Aucune vue enregistr\xE9e","layout.removeDefault":"Retirer le d\xE9faut","layout.setAsDefault":"D\xE9finir par d\xE9faut","layout.layoutName":"Nom de la vue","layout.layoutDescription":"Description","layout.layoutNameHelper":"ex. : Vue compacte","layout.warningOverwrite":"Attention : la vue existante sera \xE9cras\xE9e","layout.useAsDefault":"Utiliser comme vue par d\xE9faut","layout.publicAllUsers":"Public (visible par tous les utilisateurs)","layout.toast.loadFallback":"\xC9chec du chargement depuis le backend, bascule vers le stockage local","layout.toast.saveSuccess":"Vue enregistr\xE9e avec succ\xE8s","layout.toast.saveLocalSuccess":"Vue enregistr\xE9e dans le stockage local","layout.toast.backendUnavailableSavedLocal":"Backend indisponible, enregistr\xE9 en local","layout.toast.deleteSuccess":"Vue supprim\xE9e avec succ\xE8s","layout.toast.deleteLocalSuccess":"Vue supprim\xE9e du stockage local","layout.toast.backendUnavailableDeletedLocal":"Backend indisponible, supprim\xE9 en local","layout.toast.defaultSuccess":"Vue par d\xE9faut d\xE9finie","layout.toast.defaultLocalSuccess":"Vue par d\xE9faut d\xE9finie en local","layout.toast.backendUnavailableDefaultLocal":"Backend indisponible, d\xE9faut enregistr\xE9 en local","dateRange.label":"Plage de dates","dateRange.startDate":"Date de d\xE9but","dateRange.endDate":"Date de fin","dateRange.select":"S\xE9lectionner...","dateRange.today":"Aujourd'hui","dateRange.thisWeek":"Cette semaine","dateRange.thisMonth":"Ce mois-ci","graph.records":"{count} enregistrements","graph.kpi.totalRecords":"Total des enregistrements","graph.kpi.totalReport":"Total d\xE9clar\xE9","graph.kpi.totalBillable":"Total facturable","graph.kpi.efficiency":"Efficacit\xE9","graph.kpi.amount":"Montant","graph.kpi.flagged":"Signal\xE9","graph.chart.billable.title":"Facturable par dimension","graph.chart.billable.subtitle":"Top valeurs par heures facturables","graph.chart.efficiency.title":"Efficacit\xE9 par personne","graph.chart.efficiency.subtitle":"Efficacit\xE9 la plus faible en premier","graph.chart.status.title":"R\xE9partition des statuts","graph.chart.status.subtitle":"Ratio des enregistrements par statut","graph.dataBody":"Donn\xE9es","graph.reportTitle":"Rapport graphique","graph.unassigned":"Non attribu\xE9","graph.column.reportHours":"Heures d\xE9clar\xE9es","graph.column.billableHours":"Heures facturables","detail.searchAi.placeholder":"Rechercher des champs, ou interroger l\u2019IA en cas d\u2019absence de r\xE9sultat...","detail.searchAi.matches":"{count} correspondances trouv\xE9es","detail.searchAi.noMatch":"Aucun champ correspondant trouv\xE9.","detail.searchAi.autoAiFallback":"Aucune correspondance directe. Analyse IA en cours...","detail.searchAi.aiResultTitle":"Analyse IA","detail.table.title":"Enregistrements li\xE9s","kanban.empty":"D\xE9posez les cartes ici","kanban.bucket.limit":"Limite","kanban.bucket.dropHere":"Rel\xE2chez pour d\xE9placer dans cette colonne","kanban.card.progress":"Progression","kanban.card.openDetail":"Ouvrir le d\xE9tail","kanban.priority.critical":"Critique","kanban.priority.high":"\xC9lev\xE9e","kanban.priority.medium":"Moyenne","kanban.priority.low":"Faible","quickCreate.newItem":"Nouvel \xE9l\xE9ment","quickCreate.createWithTitle":"Cr\xE9er {title}","quickEdit.editWithTitle":"Modifier {title}","quickDelete.confirmTitle":"Confirmer la suppression","quickDelete.confirmMessageSingle":"Voulez-vous vraiment supprimer l\u2019enregistrement s\xE9lectionn\xE9 ?","quickDelete.confirmMessageMultiple":"Voulez-vous vraiment supprimer les {count} enregistrements s\xE9lectionn\xE9s ?","messageBox.confirm":"OK","messageBox.cancel":"Annuler"},ch={"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.searchAddFeature":"Funktion hinzuf\xFCgen","header.searchSend":"Senden","header.searchStartVoice":"Spracheingabe starten","header.searchStopVoice":"Spracheingabe stoppen","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","navigation.mode.switchToFixed":"Zu fester Navigation wechseln","navigation.mode.switchToFloating":"Zu schwebender Navigation wechseln","table.toolbar.searchPlaceholder":"Suchen...","table.title.default":"Datentabelle","table.toolbar.groupBy":"Gruppieren","table.toolbar.summary":"Zusammenfassung","table.toolbar.columns":"Spalten","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Zeilen pro Seite:","table.toolbar.pageOf":"Seite {current} von {total}","table.toolbar.newItem":"Neuer Eintrag","table.toolbar.editItem":"Eintrag bearbeiten","table.toolbar.deleteItem":"Eintrag l\xF6schen","table.toolbar.graphicReport":"Grafikbericht","table.toolbar.saveLayout":"Layout speichern","table.menu.groupBy":"Gruppieren","table.menu.clearAll":"Alles l\xF6schen","table.menu.visibleColumns":"Sichtbare Spalten","table.menu.showSummaryRow":"Summenzeile anzeigen","table.menu.noNumericColumns":"Keine numerischen Spalten","table.group.expandAll":"Alle Gruppen aufklappen","table.group.collapseAll":"Alle Gruppen zuklappen","table.mobile.notImplemented":"Mobile Ansicht nicht implementiert","table.headerMenu.sortAsc":"Aufsteigend sortieren","table.headerMenu.sortDesc":"Absteigend sortieren","table.headerMenu.clearSort":"Sortierung entfernen","table.headerMenu.configureSort":"Sortierung konfigurieren...","table.headerMenu.group":"Nach dieser Spalte gruppieren","table.headerMenu.ungroup":"Aus Gruppierung entfernen","table.headerMenu.addSummary":"In Summe einbeziehen","table.headerMenu.removeSummary":"Aus Summe entfernen","table.headerMenu.hideColumn":"Spalte ausblenden","table.sortDialog.title":"Sortiereinstellungen","table.sortDialog.empty":"Keine Sortierregeln. F\xFCgen Sie eine hinzu, um zu sortieren.","table.sortDialog.addRule":"Regel hinzuf\xFCgen","table.sortDialog.clearAll":"Alle l\xF6schen","table.sortDialog.asc":"Aufsteigend","table.sortDialog.desc":"Absteigend","pivot.title.default":"Pivot-Tabelle","pivot.subtitle.default":"Ziehen Sie Felder, um die Pivot-Tabelle zu konfigurieren.","pivot.empty":"Ziehen Sie mindestens ein Wertefeld, um das Ergebnis anzuzeigen.","pivot.records":"Datens\xE4tze","pivot.afterFilter":"Nach Filter","pivot.grandTotal":"Gesamtsumme","pivot.resultLabel":"Ergebnis","pivot.valueLabel":"Wert","pivot.table.dimensions":"Dimensionen","pivot.config.title":"Konfiguration","pivot.fieldList":"Feldliste","pivot.availableDimensions":"Verf\xFCgbare Dimensionen","pivot.allFieldsInUse":"Alle Felder sind bereits verwendet.","pivot.zone.rows":"Zeilen","pivot.zone.columns":"Spalten","pivot.zone.filters":"Filter","pivot.zone.values":"Werte","pivot.hint.rows":"Felder hierhin ziehen, um die Zeilenhierarchie zu erstellen","pivot.hint.columns":"Felder hierhin ziehen, um die Spaltenhierarchie zu erstellen","pivot.hint.filters":"Felder hierhin ziehen f\xFCr Berichtsfilter","pivot.hint.values":"Numerische Felder hierhin ziehen f\xFCr Aggregation","pivot.clearArea":"Bereich leeren","pivot.filter.na":"N/V","pivot.filter.noValues":"Keine Werte","pivot.filter.noneSelected":"Nichts ausgew\xE4hlt","pivot.filter.allValues":"Alle Werte","pivot.filter.selectedCount":"{selected} / {total} ausgew\xE4hlt","pivot.filter.selectAll":"Alle ausw\xE4hlen","pivot.filter.deselectAll":"Alle abw\xE4hlen","pivot.filter.noResults":"Keine Ergebnisse","pivot.collapse.ariaExpand":"Konfigurationsbereich erweitern","pivot.collapse.ariaCollapse":"Konfigurationsbereich reduzieren","pivot.agg.sum":"Summe","pivot.agg.count":"Anzahl","pivot.agg.avg":"Durchschnitt","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"Preset w\xE4hlen","pivot.preset.save":"Preset speichern","pivot.preset.delete":"Preset l\xF6schen","pivot.preset.saveDialogTitle":"Aktuelles Preset speichern","pivot.preset.nameLabel":"Preset-Name","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"Pivot-Ergebnis","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"Pivot-Ergebnis erweitern","pivot.table.collapse.ariaCollapse":"Pivot-Ergebnis reduzieren","pivot.chart.title":"Pivot-Diagramm","pivot.chart.subtitle":"Eine Dimension und bis zu zwei Kennzahlen in einem kompakten Diagramm abbilden.","pivot.chart.subtitleReady":"{dimension} nach {measure}","pivot.chart.emptyNoDimension":"F\xFCgen Sie mindestens ein Zeilen- oder Spaltenfeld hinzu, um das Diagramm anzuzeigen.","pivot.chart.emptyNoValue":"F\xFCgen Sie mindestens ein Wertefeld hinzu, um das Diagramm anzuzeigen.","pivot.chart.emptyNoData":"F\xFCr die aktuelle Diagrammauswahl sind keine Daten verf\xFCgbar.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Kennzahl","pivot.chart.secondaryMeasure":"Vergleichskennzahl","pivot.chart.chartType":"Diagrammtyp","pivot.chart.style.barVertical":"Vertikale Balken","pivot.chart.style.barHorizontal":"Horizontale Balken","pivot.chart.style.line":"Linie","pivot.chart.style.scatter":"Streudiagramm","pivot.chart.collapse.ariaExpand":"Diagrammbereich erweitern","pivot.chart.collapse.ariaCollapse":"Diagrammbereich reduzieren","smartFilter.adaptFilters":"Filter anpassen","smartFilter.addFilters":"Filter hinzuf\xFCgen","smartFilter.go":"Los","smartFilter.visibleFilters":"Sichtbare Filter","smartFilter.searchPlaceholder":"Suchen...","smartFilter.noOptionsFound":"Keine Optionen gefunden","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"Gleich","smartFilter.operator.contains":"Enth\xE4lt","smartFilter.operator.notContains":"Enth\xE4lt nicht","smartFilter.operator.wildcard":"Wildcard-Suche","smartFilter.operator.notEquals":"Ungleich","smartFilter.operator.greaterThan":"Gr\xF6\xDFer als","smartFilter.operator.lessThan":"Kleiner als","smartFilter.operator.greaterOrEqual":"Gr\xF6\xDFer gleich","smartFilter.operator.lessOrEqual":"Kleiner gleich","smartFilter.operator.between":"Zwischen","variant.noOptions":"Keine Optionen","variant.defaultSuffix":"Standard","variant.selectVariant":"Variante w\xE4hlen","variant.saveView":"Ansicht speichern","variant.newVariant":"Neue Variante","variant.viewName":"Ansichtsname","variant.setDefault":"Als Standard setzen","variant.publicAllUsers":"\xD6ffentlich (alle Benutzer)","variant.toast.fetchFailed":"Varianten konnten nicht geladen werden","variant.toast.saveFailed":"Variante konnte nicht gespeichert werden","variant.toast.saveSuccess":"Variante erfolgreich gespeichert","variant.toast.deleteFailed":"Variante konnte nicht gel\xF6scht werden","variant.toast.deleteSuccess":"Variante erfolgreich gel\xF6scht","variant.toast.defaultFailed":"Standardvariante konnte nicht aktualisiert werden","variant.toast.defaultSuccess":"Standardvariante aktualisiert","layout.saveLayout":"Layout speichern","layout.layoutOptions":"Layout-Optionen","layout.selectLayout":"Layout w\xE4hlen","layout.saveCurrentLayout":"Aktuelles Layout speichern...","layout.noSavedLayouts":"Keine gespeicherten Layouts","layout.removeDefault":"Standard entfernen","layout.setAsDefault":"Als Standard setzen","layout.layoutName":"Layoutname","layout.layoutDescription":"Beschreibung","layout.layoutNameHelper":"z. B. Kompaktansicht","layout.warningOverwrite":"Warnung: Vorhandenes Layout wird \xFCberschrieben","layout.useAsDefault":"Als Standardlayout verwenden","layout.publicAllUsers":"\xD6ffentlich (f\xFCr alle sichtbar)","layout.toast.loadFallback":"Layouts konnten nicht vom Backend geladen werden, Wechsel zu lokalem Speicher","layout.toast.saveSuccess":"Layout erfolgreich gespeichert","layout.toast.saveLocalSuccess":"Layout im lokalen Speicher gespeichert","layout.toast.backendUnavailableSavedLocal":"Backend nicht verf\xFCgbar, lokal gespeichert","layout.toast.deleteSuccess":"Layout erfolgreich gel\xF6scht","layout.toast.deleteLocalSuccess":"Layout aus lokalem Speicher gel\xF6scht","layout.toast.backendUnavailableDeletedLocal":"Backend nicht verf\xFCgbar, lokal gel\xF6scht","layout.toast.defaultSuccess":"Standardlayout gesetzt","layout.toast.defaultLocalSuccess":"Standardlayout lokal gesetzt","layout.toast.backendUnavailableDefaultLocal":"Backend nicht verf\xFCgbar, Standard lokal gespeichert","dateRange.label":"Datumsbereich","dateRange.startDate":"Startdatum","dateRange.endDate":"Enddatum","dateRange.select":"Ausw\xE4hlen...","dateRange.today":"Heute","dateRange.thisWeek":"Diese Woche","dateRange.thisMonth":"Diesen Monat","graph.records":"{count} Datens\xE4tze","graph.kpi.totalRecords":"Gesamt Datens\xE4tze","graph.kpi.totalReport":"Gesamt Report","graph.kpi.totalBillable":"Gesamt abrechenbar","graph.kpi.efficiency":"Effizienz","graph.kpi.amount":"Betrag","graph.kpi.flagged":"Markiert","graph.chart.billable.title":"Abrechenbar nach Dimension","graph.chart.billable.subtitle":"Top-Werte nach abrechenbaren Stunden","graph.chart.efficiency.title":"Effizienz pro Person","graph.chart.efficiency.subtitle":"Niedrigste Effizienz zuerst","graph.chart.status.title":"Statusverteilung","graph.chart.status.subtitle":"Anteil je Status","graph.dataBody":"Datentabelle","graph.reportTitle":"Grafikbericht","graph.unassigned":"Nicht zugewiesen","graph.column.reportHours":"Melde-Stunden","graph.column.billableHours":"Abrechenbare Stunden","detail.searchAi.placeholder":"Felder suchen, oder bei keinem Treffer die KI fragen...","detail.searchAi.matches":"{count} Treffer gefunden","detail.searchAi.noMatch":"Kein passendes Feld gefunden.","detail.searchAi.autoAiFallback":"Keine direkte \xDCbereinstimmung. KI-Analyse wird gestartet...","detail.searchAi.aiResultTitle":"KI-Ergebnis","detail.table.title":"Verkn\xFCpfte Eintr\xE4ge","kanban.empty":"Karten hier ablegen","kanban.bucket.limit":"Limit","kanban.bucket.dropHere":"Loslassen, um in diese Spalte zu verschieben","kanban.card.progress":"Fortschritt","kanban.card.openDetail":"Detail \xF6ffnen","kanban.priority.critical":"Kritisch","kanban.priority.high":"Hoch","kanban.priority.medium":"Mittel","kanban.priority.low":"Niedrig","quickCreate.newItem":"Neuer Eintrag","quickCreate.createWithTitle":"{title} erstellen","quickEdit.editWithTitle":"{title} bearbeiten","quickDelete.confirmTitle":"L\xF6schen best\xE4tigen","quickDelete.confirmMessageSingle":"M\xF6chten Sie den ausgew\xE4hlten Datensatz wirklich l\xF6schen?","quickDelete.confirmMessageMultiple":"M\xF6chten Sie die {count} ausgew\xE4hlten Datens\xE4tze wirklich l\xF6schen?","messageBox.confirm":"OK","messageBox.cancel":"Abbrechen"},dh={"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.searchAddFeature":"\u6A5F\u80FD\u3092\u8FFD\u52A0","header.searchSend":"\u9001\u4FE1","header.searchStartVoice":"\u97F3\u58F0\u5165\u529B\u3092\u958B\u59CB","header.searchStopVoice":"\u97F3\u58F0\u5165\u529B\u3092\u505C\u6B62","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","navigation.mode.switchToFixed":"\u56FA\u5B9A\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u306B\u5207\u308A\u66FF\u3048","navigation.mode.switchToFloating":"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u306B\u5207\u308A\u66FF\u3048","table.toolbar.searchPlaceholder":"\u691C\u7D22...","table.title.default":"\u30C7\u30FC\u30BF\u30C6\u30FC\u30D6\u30EB","table.toolbar.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.toolbar.summary":"\u96C6\u8A08","table.toolbar.columns":"\u5217","table.toolbar.export":"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8","table.toolbar.itemsPerPage":"1\u30DA\u30FC\u30B8\u306E\u4EF6\u6570\uFF1A","table.toolbar.pageOf":"{current} / {total} \u30DA\u30FC\u30B8","table.toolbar.newItem":"\u65B0\u898F\u4F5C\u6210","table.toolbar.editItem":"\u7DE8\u96C6","table.toolbar.deleteItem":"\u524A\u9664","table.toolbar.graphicReport":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","table.toolbar.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","table.menu.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.menu.clearAll":"\u3059\u3079\u3066\u30AF\u30EA\u30A2","table.menu.visibleColumns":"\u8868\u793A\u5217","table.menu.showSummaryRow":"\u96C6\u8A08\u884C\u3092\u8868\u793A","table.menu.noNumericColumns":"\u6570\u5024\u5217\u304C\u3042\u308A\u307E\u305B\u3093","table.group.expandAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u5C55\u958B","table.group.collapseAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u6298\u308A\u305F\u305F\u3080","table.mobile.notImplemented":"\u30E2\u30D0\u30A4\u30EB\u8868\u793A\u306F\u672A\u5B9F\u88C5\u3067\u3059","table.headerMenu.sortAsc":"\u6607\u9806\u3067\u4E26\u3079\u66FF\u3048","table.headerMenu.sortDesc":"\u964D\u9806\u3067\u4E26\u3079\u66FF\u3048","table.headerMenu.clearSort":"\u4E26\u3079\u66FF\u3048\u3092\u89E3\u9664","table.headerMenu.configureSort":"\u4E26\u3079\u66FF\u3048\u3092\u8A2D\u5B9A...","table.headerMenu.group":"\u3053\u306E\u5217\u3067\u30B0\u30EB\u30FC\u30D7\u5316","table.headerMenu.ungroup":"\u30B0\u30EB\u30FC\u30D7\u304B\u3089\u5916\u3059","table.headerMenu.addSummary":"\u96C6\u8A08\u306B\u8FFD\u52A0","table.headerMenu.removeSummary":"\u96C6\u8A08\u304B\u3089\u524A\u9664","table.headerMenu.hideColumn":"\u5217\u3092\u975E\u8868\u793A","table.sortDialog.title":"\u4E26\u3079\u66FF\u3048\u8A2D\u5B9A","table.sortDialog.empty":"\u4E26\u3079\u66FF\u3048\u30EB\u30FC\u30EB\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","table.sortDialog.addRule":"\u30EB\u30FC\u30EB\u3092\u8FFD\u52A0","table.sortDialog.clearAll":"\u3059\u3079\u3066\u30AF\u30EA\u30A2","table.sortDialog.asc":"\u6607\u9806","table.sortDialog.desc":"\u964D\u9806","pivot.title.default":"\u30D4\u30DC\u30C3\u30C8\u30C6\u30FC\u30D6\u30EB","pivot.subtitle.default":"\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u30D4\u30DC\u30C3\u30C8\u30C6\u30FC\u30D6\u30EB\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002","pivot.empty":"\u7D50\u679C\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5024\u30A8\u30EA\u30A2\u306B\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.records":"\u30EC\u30B3\u30FC\u30C9","pivot.afterFilter":"\u30D5\u30A3\u30EB\u30BF\u30FC\u5F8C","pivot.grandTotal":"\u7DCF\u8A08","pivot.resultLabel":"\u7D50\u679C","pivot.valueLabel":"\u5024","pivot.table.dimensions":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.config.title":"\u8A2D\u5B9A","pivot.fieldList":"\u30D5\u30A3\u30FC\u30EB\u30C9\u4E00\u89A7","pivot.availableDimensions":"\u5229\u7528\u53EF\u80FD\u306A\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.allFieldsInUse":"\u3059\u3079\u3066\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u4F7F\u7528\u4E2D\u3067\u3059\u3002","pivot.zone.rows":"\u884C","pivot.zone.columns":"\u5217","pivot.zone.filters":"\u30D5\u30A3\u30EB\u30BF\u30FC","pivot.zone.values":"\u5024","pivot.hint.rows":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u884C\u968E\u5C64\u3092\u4F5C\u6210","pivot.hint.columns":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u5217\u968E\u5C64\u3092\u4F5C\u6210","pivot.hint.filters":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u30EC\u30DD\u30FC\u30C8\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u8A2D\u5B9A","pivot.hint.values":"\u3053\u3053\u306B\u6570\u5024\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u96C6\u8A08","pivot.clearArea":"\u30A8\u30EA\u30A2\u3092\u30AF\u30EA\u30A2","pivot.filter.na":"N/A","pivot.filter.noValues":"\u5024\u304C\u3042\u308A\u307E\u305B\u3093","pivot.filter.noneSelected":"\u672A\u9078\u629E","pivot.filter.allValues":"\u3059\u3079\u3066\u306E\u5024","pivot.filter.selectedCount":"{selected} / {total} \u3092\u9078\u629E","pivot.filter.selectAll":"\u3059\u3079\u3066\u9078\u629E","pivot.filter.deselectAll":"\u3059\u3079\u3066\u89E3\u9664","pivot.filter.noResults":"\u7D50\u679C\u304C\u3042\u308A\u307E\u305B\u3093","pivot.collapse.ariaExpand":"\u8A2D\u5B9A\u30A8\u30EA\u30A2\u3092\u5C55\u958B","pivot.collapse.ariaCollapse":"\u8A2D\u5B9A\u30A8\u30EA\u30A2\u3092\u6298\u308A\u305F\u305F\u3080","pivot.agg.sum":"\u5408\u8A08","pivot.agg.count":"\u4EF6\u6570","pivot.agg.avg":"\u5E73\u5747","pivot.agg.min":"\u6700\u5C0F","pivot.agg.max":"\u6700\u5927","pivot.preset.selectPlaceholder":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u9078\u629E","pivot.preset.save":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u4FDD\u5B58","pivot.preset.delete":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u524A\u9664","pivot.preset.saveDialogTitle":"\u73FE\u5728\u306E\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u4FDD\u5B58","pivot.preset.nameLabel":"\u30D7\u30EA\u30BB\u30C3\u30C8\u540D","pivot.preset.defaultName":"\u30D7\u30EA\u30BB\u30C3\u30C8 {index}","pivot.table.sectionTitle":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C\u3092\u5C55\u958B","pivot.table.collapse.ariaCollapse":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C\u3092\u6298\u308A\u305F\u305F\u3080","pivot.chart.title":"\u30D4\u30DC\u30C3\u30C8\u30C1\u30E3\u30FC\u30C8","pivot.chart.subtitle":"1\u3064\u306E\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3\u3068\u6700\u59272\u3064\u306E\u6307\u6A19\u3092\u30B3\u30F3\u30D1\u30AF\u30C8\u306A\u30C1\u30E3\u30FC\u30C8\u306B\u307E\u3068\u3081\u307E\u3059\u3002","pivot.chart.subtitleReady":"{dimension} \u3054\u3068\u306E {measure}","pivot.chart.emptyNoDimension":"\u30C1\u30E3\u30FC\u30C8\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u884C\u307E\u305F\u306F\u5217\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.chart.emptyNoValue":"\u30C1\u30E3\u30FC\u30C8\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u5024\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.chart.emptyNoData":"\u73FE\u5728\u306E\u30C1\u30E3\u30FC\u30C8\u9078\u629E\u3067\u306F\u8868\u793A\u3067\u304D\u308B\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093\u3002","pivot.chart.dimension":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.chart.primaryMeasure":"\u6307\u6A19","pivot.chart.secondaryMeasure":"\u6BD4\u8F03\u6307\u6A19","pivot.chart.chartType":"\u30C1\u30E3\u30FC\u30C8\u7A2E\u5225","pivot.chart.style.barVertical":"\u7E26\u68D2\u30B0\u30E9\u30D5","pivot.chart.style.barHorizontal":"\u6A2A\u68D2\u30B0\u30E9\u30D5","pivot.chart.style.line":"\u6298\u308C\u7DDA\u30B0\u30E9\u30D5","pivot.chart.style.scatter":"\u6563\u5E03\u56F3","pivot.chart.collapse.ariaExpand":"\u30C1\u30E3\u30FC\u30C8\u9818\u57DF\u3092\u5C55\u958B","pivot.chart.collapse.ariaCollapse":"\u30C1\u30E3\u30FC\u30C8\u9818\u57DF\u3092\u6298\u308A\u305F\u305F\u3080","smartFilter.adaptFilters":"\u30D5\u30A3\u30EB\u30BF\u30FC\u8ABF\u6574","smartFilter.addFilters":"\u30D5\u30A3\u30EB\u30BF\u30FC\u8FFD\u52A0","smartFilter.go":"\u5B9F\u884C","smartFilter.visibleFilters":"\u8868\u793A\u30D5\u30A3\u30EB\u30BF\u30FC","smartFilter.searchPlaceholder":"\u691C\u7D22...","smartFilter.noOptionsFound":"\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093","smartFilter.min":"\u6700\u5C0F","smartFilter.max":"\u6700\u5927","smartFilter.minMaxPlaceholder":"\u6700\u5C0F - \u6700\u5927","smartFilter.operator.equals":"\u7B49\u3057\u3044","smartFilter.operator.contains":"\u542B\u3080","smartFilter.operator.notContains":"\u542B\u307E\u306A\u3044","smartFilter.operator.wildcard":"\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u691C\u7D22","smartFilter.operator.notEquals":"\u7B49\u3057\u304F\u306A\u3044","smartFilter.operator.greaterThan":"\u3088\u308A\u5927\u304D\u3044","smartFilter.operator.lessThan":"\u3088\u308A\u5C0F\u3055\u3044","smartFilter.operator.greaterOrEqual":"\u4EE5\u4E0A","smartFilter.operator.lessOrEqual":"\u4EE5\u4E0B","smartFilter.operator.between":"\u7BC4\u56F2","variant.noOptions":"\u30AA\u30D7\u30B7\u30E7\u30F3\u306A\u3057","variant.defaultSuffix":"\u30C7\u30D5\u30A9\u30EB\u30C8","variant.selectVariant":"\u30D3\u30E5\u30FC\u3092\u9078\u629E","variant.saveView":"\u30D3\u30E5\u30FC\u4FDD\u5B58","variant.newVariant":"\u65B0\u3057\u3044\u30D3\u30E5\u30FC","variant.viewName":"\u30D3\u30E5\u30FC\u540D","variant.setDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A","variant.publicAllUsers":"\u516C\u958B\uFF08\u5168\u30E6\u30FC\u30B6\u30FC\uFF09","variant.toast.fetchFailed":"\u30D3\u30E5\u30FC\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.saveFailed":"\u30D3\u30E5\u30FC\u306E\u4FDD\u5B58\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.saveSuccess":"\u30D3\u30E5\u30FC\u3092\u4FDD\u5B58\u3057\u307E\u3057\u305F","variant.toast.deleteFailed":"\u30D3\u30E5\u30FC\u306E\u524A\u9664\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.deleteSuccess":"\u30D3\u30E5\u30FC\u3092\u524A\u9664\u3057\u307E\u3057\u305F","variant.toast.defaultFailed":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30D3\u30E5\u30FC\u306E\u66F4\u65B0\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.defaultSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30D3\u30E5\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3057\u305F","layout.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","layout.layoutOptions":"\u30EC\u30A4\u30A2\u30A6\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3","layout.selectLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u9078\u629E","layout.saveCurrentLayout":"\u73FE\u5728\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u5B58...","layout.noSavedLayouts":"\u4FDD\u5B58\u6E08\u307F\u30EC\u30A4\u30A2\u30A6\u30C8\u306A\u3057","layout.removeDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u89E3\u9664","layout.setAsDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A","layout.layoutName":"\u30EC\u30A4\u30A2\u30A6\u30C8\u540D","layout.layoutDescription":"\u8AAC\u660E","layout.layoutNameHelper":"\u4F8B\uFF1A\u30B3\u30F3\u30D1\u30AF\u30C8\u8868\u793A","layout.warningOverwrite":"\u8B66\u544A\uFF1A\u65E2\u5B58\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059","layout.useAsDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3068\u3057\u3066\u4F7F\u7528","layout.publicAllUsers":"\u516C\u958B\uFF08\u5168\u30E6\u30FC\u30B6\u30FC\u306B\u8868\u793A\uFF09","layout.toast.loadFallback":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u304B\u3089\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u3001\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u306B\u5207\u308A\u66FF\u3048\u307E\u3057\u305F","layout.toast.saveSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.saveLocalSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableSavedLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30ED\u30FC\u30AB\u30EB\u306B\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.deleteSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.deleteLocalSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u304B\u3089\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableDeletedLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30ED\u30FC\u30AB\u30EB\u304B\u3089\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.defaultSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u8A2D\u5B9A\u3057\u307E\u3057\u305F","layout.toast.defaultLocalSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u306B\u8A2D\u5B9A\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableDefaultLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u3057\u307E\u3057\u305F","dateRange.label":"\u65E5\u4ED8\u7BC4\u56F2","dateRange.startDate":"\u958B\u59CB\u65E5","dateRange.endDate":"\u7D42\u4E86\u65E5","dateRange.select":"\u9078\u629E...","dateRange.today":"\u4ECA\u65E5","dateRange.thisWeek":"\u4ECA\u9031","dateRange.thisMonth":"\u4ECA\u6708","graph.records":"{count} \u4EF6","graph.kpi.totalRecords":"\u7DCF\u30EC\u30B3\u30FC\u30C9","graph.kpi.totalReport":"\u7DCF\u5831\u544A\u6642\u9593","graph.kpi.totalBillable":"\u7DCF\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","graph.kpi.efficiency":"\u52B9\u7387","graph.kpi.amount":"\u91D1\u984D","graph.kpi.flagged":"\u8981\u78BA\u8A8D","graph.chart.billable.title":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3\u5225\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","graph.chart.billable.subtitle":"\u8ACB\u6C42\u53EF\u80FD\u6642\u9593\u306E\u4E0A\u4F4D","graph.chart.efficiency.title":"\u62C5\u5F53\u8005\u5225\u52B9\u7387","graph.chart.efficiency.subtitle":"\u52B9\u7387\u306E\u4F4E\u3044\u9806","graph.chart.status.title":"\u30B9\u30C6\u30FC\u30BF\u30B9\u5206\u5E03","graph.chart.status.subtitle":"\u30B9\u30C6\u30FC\u30BF\u30B9\u5225\u6BD4\u7387","graph.dataBody":"\u30C7\u30FC\u30BF\u672C\u4F53","graph.reportTitle":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","graph.unassigned":"\u672A\u5272\u308A\u5F53\u3066","graph.column.reportHours":"\u5831\u544A\u6642\u9593","graph.column.billableHours":"\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","detail.searchAi.placeholder":"\u9805\u76EE\u3092\u691C\u7D22\u3002\u898B\u3064\u304B\u3089\u306A\u3044\u5834\u5408\u306FAI\u306B\u8CEA\u554F\u3057\u307E\u3059...","detail.searchAi.matches":"{count} \u4EF6\u306E\u4E00\u81F4","detail.searchAi.noMatch":"\u4E00\u81F4\u3059\u308B\u9805\u76EE\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002","detail.searchAi.autoAiFallback":"\u4E00\u81F4\u306A\u3057\u3002AI\u5206\u6790\u3092\u5B9F\u884C\u3057\u307E\u3059...","detail.searchAi.aiResultTitle":"AI\u5206\u6790\u7D50\u679C","detail.table.title":"\u95A2\u9023\u30EC\u30B3\u30FC\u30C9","kanban.empty":"\u3053\u3053\u306B\u30AB\u30FC\u30C9\u3092\u30C9\u30ED\u30C3\u30D7","kanban.bucket.limit":"\u4E0A\u9650","kanban.bucket.dropHere":"\u96E2\u3059\u3068\u3053\u306E bucket \u306B\u79FB\u52D5\u3057\u307E\u3059","kanban.card.progress":"\u9032\u6357","kanban.card.openDetail":"\u8A73\u7D30\u3092\u958B\u304F","kanban.priority.critical":"\u7DCA\u6025","kanban.priority.high":"\u9AD8","kanban.priority.medium":"\u4E2D","kanban.priority.low":"\u4F4E","quickCreate.newItem":"\u65B0\u898F\u4F5C\u6210","quickCreate.createWithTitle":"{title} \u3092\u4F5C\u6210","quickEdit.editWithTitle":"{title} \u3092\u7DE8\u96C6","quickDelete.confirmTitle":"\u524A\u9664\u306E\u78BA\u8A8D","quickDelete.confirmMessageSingle":"\u9078\u629E\u3057\u305F\u30EC\u30B3\u30FC\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F","quickDelete.confirmMessageMultiple":"\u9078\u629E\u3057\u305F {count} \u4EF6\u306E\u30EC\u30B3\u30FC\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F","messageBox.confirm":"OK","messageBox.cancel":"\u30AD\u30E3\u30F3\u30BB\u30EB"},uh={"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.searchAddFeature":"\uAE30\uB2A5 \uCD94\uAC00","header.searchSend":"\uBCF4\uB0B4\uAE30","header.searchStartVoice":"\uC74C\uC131 \uC785\uB825 \uC2DC\uC791","header.searchStopVoice":"\uC74C\uC131 \uC785\uB825 \uC911\uC9C0","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","navigation.mode.switchToFixed":"\uACE0\uC815 \uD0D0\uC0C9\uC73C\uB85C \uC804\uD658","navigation.mode.switchToFloating":"\uD50C\uB85C\uD305 \uD0D0\uC0C9\uC73C\uB85C \uC804\uD658","table.toolbar.searchPlaceholder":"\uAC80\uC0C9...","table.title.default":"\uB370\uC774\uD130 \uD14C\uC774\uBE14","table.toolbar.groupBy":"\uADF8\uB8F9","table.toolbar.summary":"\uC694\uC57D","table.toolbar.columns":"\uC5F4","table.toolbar.export":"\uB0B4\uBCF4\uB0B4\uAE30","table.toolbar.itemsPerPage":"\uD398\uC774\uC9C0\uB2F9 \uD589 \uC218:","table.toolbar.pageOf":"{current} / {total} \uD398\uC774\uC9C0","table.toolbar.newItem":"\uC2E0\uADDC \uD56D\uBAA9","table.toolbar.editItem":"\uD56D\uBAA9 \uC218\uC815","table.toolbar.deleteItem":"\uD56D\uBAA9 \uC0AD\uC81C","table.toolbar.graphicReport":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","table.toolbar.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","table.menu.groupBy":"\uADF8\uB8F9","table.menu.clearAll":"\uBAA8\uB450 \uC9C0\uC6B0\uAE30","table.menu.visibleColumns":"\uD45C\uC2DC \uC5F4","table.menu.showSummaryRow":"\uC694\uC57D \uD589 \uD45C\uC2DC","table.menu.noNumericColumns":"\uC22B\uC790 \uC5F4 \uC5C6\uC74C","table.group.expandAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uD3BC\uCE58\uAE30","table.group.collapseAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uC811\uAE30","table.mobile.notImplemented":"\uBAA8\uBC14\uC77C \uBDF0\uB294 \uC544\uC9C1 \uAD6C\uD604\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4","table.headerMenu.sortAsc":"\uC624\uB984\uCC28\uC21C \uC815\uB82C","table.headerMenu.sortDesc":"\uB0B4\uB9BC\uCC28\uC21C \uC815\uB82C","table.headerMenu.clearSort":"\uC815\uB82C \uD574\uC81C","table.headerMenu.configureSort":"\uC815\uB82C \uC124\uC815...","table.headerMenu.group":"\uC774 \uC5F4\uB85C \uADF8\uB8F9\uD654","table.headerMenu.ungroup":"\uADF8\uB8F9\uC5D0\uC11C \uC81C\uAC70","table.headerMenu.addSummary":"\uC694\uC57D\uC5D0 \uCD94\uAC00","table.headerMenu.removeSummary":"\uC694\uC57D\uC5D0\uC11C \uC81C\uAC70","table.headerMenu.hideColumn":"\uC5F4 \uC228\uAE30\uAE30","table.sortDialog.title":"\uC815\uB82C \uC124\uC815","table.sortDialog.empty":"\uC815\uB82C \uADDC\uCE59\uC774 \uC5C6\uC2B5\uB2C8\uB2E4. \uCD94\uAC00\uD558\uC138\uC694.","table.sortDialog.addRule":"\uADDC\uCE59 \uCD94\uAC00","table.sortDialog.clearAll":"\uBAA8\uB450 \uC9C0\uC6B0\uAE30","table.sortDialog.asc":"\uC624\uB984\uCC28\uC21C","table.sortDialog.desc":"\uB0B4\uB9BC\uCC28\uC21C","pivot.title.default":"\uD53C\uBC97 \uD14C\uC774\uBE14","pivot.subtitle.default":"\uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uD53C\uBC97 \uD14C\uC774\uBE14\uC744 \uAD6C\uC131\uD558\uC138\uC694.","pivot.empty":"\uACB0\uACFC\uB97C \uBCF4\uB824\uBA74 \uAC12 \uC601\uC5ED\uC5D0 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.records":"\uB808\uCF54\uB4DC","pivot.afterFilter":"\uD544\uD130 \uD6C4","pivot.grandTotal":"\uCD1D\uD569","pivot.resultLabel":"\uACB0\uACFC","pivot.valueLabel":"\uAC12","pivot.table.dimensions":"\uCC28\uC6D0","pivot.config.title":"\uAD6C\uC131","pivot.fieldList":"\uD544\uB4DC \uBAA9\uB85D","pivot.availableDimensions":"\uC0AC\uC6A9 \uAC00\uB2A5\uD55C \uCC28\uC6D0","pivot.allFieldsInUse":"\uBAA8\uB4E0 \uD544\uB4DC\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.","pivot.zone.rows":"\uD589","pivot.zone.columns":"\uC5F4","pivot.zone.filters":"\uD544\uD130","pivot.zone.values":"\uAC12","pivot.hint.rows":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uD589 \uACC4\uCE35\uC744 \uAD6C\uC131","pivot.hint.columns":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uC5F4 \uACC4\uCE35\uC744 \uAD6C\uC131","pivot.hint.filters":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uBCF4\uACE0\uC11C \uD544\uD130\uB85C \uC0AC\uC6A9","pivot.hint.values":"\uC22B\uC790 \uD544\uB4DC\uB97C \uC5EC\uAE30\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC9D1\uACC4","pivot.clearArea":"\uC601\uC5ED \uBE44\uC6B0\uAE30","pivot.filter.na":"\uD574\uB2F9 \uC5C6\uC74C","pivot.filter.noValues":"\uAC12 \uC5C6\uC74C","pivot.filter.noneSelected":"\uC120\uD0DD \uC5C6\uC74C","pivot.filter.allValues":"\uBAA8\uB4E0 \uAC12","pivot.filter.selectedCount":"{selected} / {total} \uC120\uD0DD\uB428","pivot.filter.selectAll":"\uC804\uCCB4 \uC120\uD0DD","pivot.filter.deselectAll":"\uC804\uCCB4 \uD574\uC81C","pivot.filter.noResults":"\uAC80\uC0C9 \uACB0\uACFC \uC5C6\uC74C","pivot.collapse.ariaExpand":"\uAD6C\uC131 \uC601\uC5ED \uD3BC\uCE58\uAE30","pivot.collapse.ariaCollapse":"\uAD6C\uC131 \uC601\uC5ED \uC811\uAE30","pivot.agg.sum":"\uD569\uACC4","pivot.agg.count":"\uAC1C\uC218","pivot.agg.avg":"\uD3C9\uADE0","pivot.agg.min":"\uCD5C\uC18C","pivot.agg.max":"\uCD5C\uB300","pivot.preset.selectPlaceholder":"\uD504\uB9AC\uC14B \uC120\uD0DD","pivot.preset.save":"\uD504\uB9AC\uC14B \uC800\uC7A5","pivot.preset.delete":"\uD504\uB9AC\uC14B \uC0AD\uC81C","pivot.preset.saveDialogTitle":"\uD604\uC7AC \uD504\uB9AC\uC14B \uC800\uC7A5","pivot.preset.nameLabel":"\uD504\uB9AC\uC14B \uC774\uB984","pivot.preset.defaultName":"\uD504\uB9AC\uC14B {index}","pivot.table.sectionTitle":"\uD53C\uBC97 \uACB0\uACFC","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"\uD53C\uBC97 \uACB0\uACFC \uD3BC\uCE58\uAE30","pivot.table.collapse.ariaCollapse":"\uD53C\uBC97 \uACB0\uACFC \uC811\uAE30","pivot.chart.title":"\uD53C\uBC97 \uCC28\uD2B8","pivot.chart.subtitle":"\uD558\uB098\uC758 \uCC28\uC6D0\uACFC \uCD5C\uB300 \uB450 \uAC1C\uC758 \uCE21\uC815\uAC12\uC744 \uAC04\uACB0\uD55C \uCC28\uD2B8\uB85C \uD45C\uC2DC\uD569\uB2C8\uB2E4.","pivot.chart.subtitleReady":"{dimension}\uBCC4 {measure}","pivot.chart.emptyNoDimension":"\uCC28\uD2B8\uB97C \uBCF4\uB824\uBA74 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uD589 \uB610\uB294 \uC5F4 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.chart.emptyNoValue":"\uCC28\uD2B8\uB97C \uBCF4\uB824\uBA74 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uAC12 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.chart.emptyNoData":"\uD604\uC7AC \uCC28\uD2B8 \uC120\uD0DD\uC5D0 \uD45C\uC2DC\uD560 \uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.","pivot.chart.dimension":"\uCC28\uD2B8 \uCC28\uC6D0","pivot.chart.primaryMeasure":"\uC8FC \uCE21\uC815\uAC12","pivot.chart.secondaryMeasure":"\uBE44\uAD50 \uCE21\uC815\uAC12","pivot.chart.chartType":"\uCC28\uD2B8 \uC720\uD615","pivot.chart.style.barVertical":"\uC138\uB85C \uB9C9\uB300","pivot.chart.style.barHorizontal":"\uAC00\uB85C \uB9C9\uB300","pivot.chart.style.line":"\uC120\uD615 \uCC28\uD2B8","pivot.chart.style.scatter":"\uC0B0\uC810\uB3C4","pivot.chart.collapse.ariaExpand":"\uCC28\uD2B8 \uC601\uC5ED \uD3BC\uCE58\uAE30","pivot.chart.collapse.ariaCollapse":"\uCC28\uD2B8 \uC601\uC5ED \uC811\uAE30","smartFilter.adaptFilters":"\uD544\uD130 \uC870\uC815","smartFilter.addFilters":"\uD544\uD130 \uCD94\uAC00","smartFilter.go":"\uC2E4\uD589","smartFilter.visibleFilters":"\uD45C\uC2DC \uD544\uD130","smartFilter.searchPlaceholder":"\uAC80\uC0C9...","smartFilter.noOptionsFound":"\uC635\uC158\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4","smartFilter.min":"\uCD5C\uC18C","smartFilter.max":"\uCD5C\uB300","smartFilter.minMaxPlaceholder":"\uCD5C\uC18C - \uCD5C\uB300","smartFilter.operator.equals":"\uAC19\uC74C","smartFilter.operator.contains":"\uD3EC\uD568","smartFilter.operator.notContains":"\uBBF8\uD3EC\uD568","smartFilter.operator.wildcard":"\uC640\uC77C\uB4DC\uCE74\uB4DC \uAC80\uC0C9","smartFilter.operator.notEquals":"\uAC19\uC9C0 \uC54A\uC74C","smartFilter.operator.greaterThan":"\uBCF4\uB2E4 \uD07C","smartFilter.operator.lessThan":"\uBCF4\uB2E4 \uC791\uC74C","smartFilter.operator.greaterOrEqual":"\uC774\uC0C1","smartFilter.operator.lessOrEqual":"\uC774\uD558","smartFilter.operator.between":"\uBC94\uC704","variant.noOptions":"\uC635\uC158 \uC5C6\uC74C","variant.defaultSuffix":"\uAE30\uBCF8","variant.selectVariant":"\uBDF0 \uC120\uD0DD","variant.saveView":"\uBDF0 \uC800\uC7A5","variant.newVariant":"\uC0C8 \uBDF0","variant.viewName":"\uBDF0 \uC774\uB984","variant.setDefault":"\uAE30\uBCF8\uC73C\uB85C \uC124\uC815","variant.publicAllUsers":"\uACF5\uAC1C(\uC804\uCCB4 \uC0AC\uC6A9\uC790)","variant.toast.fetchFailed":"\uBDF0\uB97C \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.saveFailed":"\uBDF0\uB97C \uC800\uC7A5\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.saveSuccess":"\uBDF0\uAC00 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","variant.toast.deleteFailed":"\uBDF0\uB97C \uC0AD\uC81C\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.deleteSuccess":"\uBDF0\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","variant.toast.defaultFailed":"\uAE30\uBCF8 \uBDF0\uB97C \uC5C5\uB370\uC774\uD2B8\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.defaultSuccess":"\uAE30\uBCF8 \uBDF0\uAC00 \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","layout.layoutOptions":"\uB808\uC774\uC544\uC6C3 \uC635\uC158","layout.selectLayout":"\uB808\uC774\uC544\uC6C3 \uC120\uD0DD","layout.saveCurrentLayout":"\uD604\uC7AC \uB808\uC774\uC544\uC6C3 \uC800\uC7A5...","layout.noSavedLayouts":"\uC800\uC7A5\uB41C \uB808\uC774\uC544\uC6C3 \uC5C6\uC74C","layout.removeDefault":"\uAE30\uBCF8 \uD574\uC81C","layout.setAsDefault":"\uAE30\uBCF8\uC73C\uB85C \uC124\uC815","layout.layoutName":"\uB808\uC774\uC544\uC6C3 \uC774\uB984","layout.layoutDescription":"\uC124\uBA85","layout.layoutNameHelper":"\uC608: \uCEF4\uD329\uD2B8 \uBDF0","layout.warningOverwrite":"\uACBD\uACE0: \uAE30\uC874 \uB808\uC774\uC544\uC6C3\uC774 \uB36E\uC5B4\uC4F0\uAE30 \uB429\uB2C8\uB2E4","layout.useAsDefault":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC73C\uB85C \uC0AC\uC6A9","layout.publicAllUsers":"\uACF5\uAC1C(\uBAA8\uB4E0 \uC0AC\uC6A9\uC790\uC5D0\uAC8C \uD45C\uC2DC)","layout.toast.loadFallback":"\uBC31\uC5D4\uB4DC\uC5D0\uC11C \uB808\uC774\uC544\uC6C3\uC744 \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD574 \uB85C\uCEEC \uC800\uC7A5\uC18C\uB85C \uC804\uD658\uD588\uC2B5\uB2C8\uB2E4","layout.toast.saveSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.saveLocalSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC \uC800\uC7A5\uC18C\uC5D0 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableSavedLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uB85C\uCEEC\uC5D0 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4","layout.toast.deleteSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.deleteLocalSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC \uC800\uC7A5\uC18C\uC5D0\uC11C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableDeletedLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uB85C\uCEEC\uC5D0\uC11C \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4","layout.toast.defaultSuccess":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC774 \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.defaultLocalSuccess":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC\uC5D0 \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableDefaultLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uAE30\uBCF8\uAC12\uC744 \uB85C\uCEEC\uC5D0 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4","dateRange.label":"\uB0A0\uC9DC \uBC94\uC704","dateRange.startDate":"\uC2DC\uC791\uC77C","dateRange.endDate":"\uC885\uB8CC\uC77C","dateRange.select":"\uC120\uD0DD...","dateRange.today":"\uC624\uB298","dateRange.thisWeek":"\uC774\uBC88 \uC8FC","dateRange.thisMonth":"\uC774\uBC88 \uB2EC","graph.records":"{count}\uAC74","graph.kpi.totalRecords":"\uCD1D \uB808\uCF54\uB4DC","graph.kpi.totalReport":"\uCD1D \uBCF4\uACE0 \uC2DC\uAC04","graph.kpi.totalBillable":"\uCD1D \uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","graph.kpi.efficiency":"\uD6A8\uC728","graph.kpi.amount":"\uAE08\uC561","graph.kpi.flagged":"\uD50C\uB798\uADF8","graph.chart.billable.title":"\uCC28\uC6D0\uBCC4 \uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","graph.chart.billable.subtitle":"\uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04 \uC0C1\uC704 \uAC12","graph.chart.efficiency.title":"\uB2F4\uB2F9\uC790\uBCC4 \uD6A8\uC728","graph.chart.efficiency.subtitle":"\uB0AE\uC740 \uD6A8\uC728 \uC6B0\uC120","graph.chart.status.title":"\uC0C1\uD0DC \uBD84\uD3EC","graph.chart.status.subtitle":"\uC0C1\uD0DC\uBCC4 \uBE44\uC728","graph.dataBody":"\uB370\uC774\uD130 \uBCF8\uBB38","graph.reportTitle":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","graph.unassigned":"\uBBF8\uC9C0\uC815","graph.column.reportHours":"\uBCF4\uACE0 \uC2DC\uAC04","graph.column.billableHours":"\uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","detail.searchAi.placeholder":"\uD544\uB4DC\uB97C \uAC80\uC0C9\uD558\uACE0, \uACB0\uACFC\uAC00 \uC5C6\uC73C\uBA74 AI\uC5D0 \uC9C8\uBB38\uD558\uC138\uC694...","detail.searchAi.matches":"{count}\uAC1C \uC77C\uCE58 \uD56D\uBAA9","detail.searchAi.noMatch":"\uC77C\uCE58\uD558\uB294 \uD544\uB4DC\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.","detail.searchAi.autoAiFallback":"\uC77C\uCE58 \uD56D\uBAA9\uC774 \uC5C6\uC5B4 AI \uBD84\uC11D\uC744 \uC2E4\uD589\uD569\uB2C8\uB2E4...","detail.searchAi.aiResultTitle":"AI \uBD84\uC11D \uACB0\uACFC","detail.table.title":"\uAD00\uB828 \uB808\uCF54\uB4DC","kanban.empty":"\uC5EC\uAE30\uC5D0 \uCE74\uB4DC\uB97C \uB193\uC73C\uC138\uC694","kanban.bucket.limit":"\uD55C\uB3C4","kanban.bucket.dropHere":"\uB193\uC73C\uBA74 \uC774 \uBC84\uD0B7\uC73C\uB85C \uC774\uB3D9\uD569\uB2C8\uB2E4","kanban.card.progress":"\uC9C4\uD589\uB960","kanban.card.openDetail":"\uC0C1\uC138 \uC5F4\uAE30","kanban.priority.critical":"\uAE34\uAE09","kanban.priority.high":"\uB192\uC74C","kanban.priority.medium":"\uBCF4\uD1B5","kanban.priority.low":"\uB0AE\uC74C","quickCreate.newItem":"\uC2E0\uADDC \uD56D\uBAA9","quickCreate.createWithTitle":"{title} \uC0DD\uC131","quickEdit.editWithTitle":"{title} \uC218\uC815","quickDelete.confirmTitle":"\uC0AD\uC81C \uD655\uC778","quickDelete.confirmMessageSingle":"\uC120\uD0DD\uD55C \uD56D\uBAA9\uC744 \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?","quickDelete.confirmMessageMultiple":"\uC120\uD0DD\uD55C {count}\uAC1C \uD56D\uBAA9\uC744 \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?","messageBox.confirm":"\uD655\uC778","messageBox.cancel":"\uCDE8\uC18C"},ei={en:ih,zh:lh,fr:sh,de:ch,ja:dh,ko:uh};var ou=(e,t)=>t?e.replace(/\{(\w+)\}/g,(o,r)=>{let a=t[r];return a==null?"":String(a)}):e,fh={locale:"en",t:(e,t)=>ou(ei.en[e]||e,t)},ru=createContext(fh),el=({locale:e="en",messages:t,children:o})=>{let r=useMemo(()=>{let a=ei[e]||ei.en,n=t?.[e]||{},i={...ei.en,...a,...n};return {locale:e,t:(s,d)=>ou(i[s]||s,d)}},[e,t]);return jsx(ru.Provider,{value:r,children:o})},oe=()=>useContext(ru);function Xs({items:e,onItemClick:t,className:o="",level:r=0,expandedIds:a,onToggleExpand:n,colorMode:i="light"}){let{t:s}=oe(),d=i==="dark",l=usePathname(),[c,g]=useState(false),[f,m]=useState(new Set),b=a!==void 0&&n!==void 0,v=b?a:f;useEffect(()=>{g(true);},[]);let u=p=>{if(b)n(p);else {let h=new Set(f);h.has(p)?h.delete(p):h.add(p),m(h);}},C=p=>{p.children&&p.children.length>0&&u(p.id),t&&t(p);};return !e||!Array.isArray(e)?jsx("div",{className:Xo("tree-menu",o),children:jsx("div",{className:"text-sm text-gray-500 p-2",children:s("navigation.noItems")})}):jsx("div",{className:Xo("tree-menu",o),children:e.map(p=>{let h=v.has(p.id)||p.isExpanded,x=p.children&&p.children.length>0,w=p.appurl||p.href,E=c&&w?l===w:false;return jsxs("div",{className:"tree-menu-item relative",children:[E&&jsx("div",{className:Xo("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",d?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxs(js,{variant:"ghost",className:Xo("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${r*4}`,E?d?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":d?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>C(p),children:[x&&jsx("div",{className:Xo("flex-shrink-0 transition-transform duration-200",h&&"rotate-90",E?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:jsx(ChevronRight,{className:"h-4 w-4"})}),!x&&jsx("div",{className:"w-4 h-4 flex-shrink-0"}),p.icon&&jsx("div",{className:Xo("flex-shrink-0 transition-colors duration-200",E?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:p.icon}),jsxs("div",{className:"flex-1 text-left overflow-hidden z-10",children:[jsx("div",{className:Xo("text-sm truncate transition-colors duration-200",E?"font-semibold":"font-medium"),children:p.title||p.label}),p.description&&jsx("div",{className:Xo("text-xs truncate transition-colors duration-200",E?d?"text-[#90caf9]/70":"text-[#1976d2]/75":d?"text-gray-400":"text-gray-500"),title:p.description,children:p.description})]})]}),x&&jsx("div",{className:Xo("grid transition-[grid-template-rows] duration-300 ease-in-out",h?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:jsx("div",{className:"overflow-hidden",children:jsx(Xs,{items:p.children,onItemClick:t,level:r+1,expandedIds:a,onToggleExpand:n,colorMode:i})})})]},p.id)})})}var Qs=({collapsed:e,onToggle:t,className:o="",maxHeight:r,menuData:a=[],colorMode:n="light",displayMode:i="fixed",onDisplayModeChange:s,showDisplayModeToggle:d=true})=>{let{t:l}=oe(),c=n==="dark",g=i==="floating",f=Kt__default.useId().replace(/:/g,""),m=`orbcafe-nav-mode-arc-${f}`,b=`orbcafe-nav-mode-glow-${f}`,v=useRouter(),[u,C]=useState(""),[p,h]=useState(new Set);useEffect(()=>{e&&h(new Set);},[e]);let x=useCallback(I=>{let k=[],S=A=>{A.forEach(P=>{k.push(P.id),P.children&&S(P.children);});};return S(I),k},[]),w=useMemo(()=>{if(!u.trim())return a;let I=k=>k.reduce((S,A)=>{let P=A.title?.toLowerCase().includes(u.toLowerCase())||A.description?.toLowerCase().includes(u.toLowerCase()),M=A.children?I(A.children):[];return (P||M.length>0)&&S.push({...A,children:M.length>0?M:A.children}),S},[]);return I(a)},[u,a]),E=useMemo(()=>u.trim()?new Set(x(a)):p,[u,a,p,x]),R=useCallback(async I=>{if(console.log("\u{1F5B1}\uFE0F \u5BFC\u822A\u83DC\u5355\u9879\u70B9\u51FB:",I),I.id==="chat"||I.appurl==="/chat"){console.log("\u{1F4AC} \u68C0\u6D4B\u5230chat\u83DC\u5355\u70B9\u51FB\uFF0C\u8DF3\u8F6C\u5230\u65B0\u7684\u804A\u5929\u89C6\u56FE");try{v.push("/chat?new=true");}catch(S){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",S),v.push("/chat");}return}let k=I.appurl||I.href;k&&(k.startsWith("http://")||k.startsWith("https://")?window.open(k,"_blank"):v.push(k));},[v]),T=useCallback(()=>{s?.(i==="fixed"?"floating":"fixed");},[i,s]);return jsxs("div",{className:`flex flex-col backdrop-blur-xl border ${g?"shadow-[0_28px_80px_rgba(15,23,42,0.34)]":"shadow-[0_4px_8px_0_rgba(31,38,135,0.1)]"} ${e?"w-14 rounded-full":"w-[234px] rounded-2xl"} relative ${o} ${c?g?"border-white/25":"bg-[#111111] border-white/10":g?"border-white/70":"bg-white/70 border-white/30"}`,style:{backdropFilter:g?"blur(34px) saturate(230%) contrast(1.12)":"blur(16px) saturate(180%)",WebkitBackdropFilter:g?"blur(34px) saturate(230%) contrast(1.12)":"blur(16px) saturate(180%)",backgroundColor:g?c?"rgba(8, 12, 18, 0.34)":"rgba(255, 255, 255, 0.24)":void 0,backgroundImage:g?c?"radial-gradient(circle at 28% 8%, rgba(255,255,255,0.14), rgba(255,255,255,0) 44%), linear-gradient(145deg, rgba(255,255,255,0.08), rgba(255,255,255,0.015) 50%, rgba(33,188,255,0.05))":"radial-gradient(circle at 28% 8%, rgba(255,255,255,0.42), rgba(255,255,255,0) 46%), linear-gradient(145deg, rgba(255,255,255,0.22), rgba(255,255,255,0.07) 50%, rgba(33,188,255,0.08))":void 0,boxShadow:g?c?"inset 0 1px 0 rgba(255,255,255,0.20), inset 0 -1px 0 rgba(255,255,255,0.08), 0 26px 90px rgba(0,0,0,0.52), 0 0 0 1px rgba(255,255,255,0.06)":"inset 0 1px 0 rgba(255,255,255,0.88), inset 0 -1px 0 rgba(255,255,255,0.34), 0 26px 90px rgba(15,23,42,0.24), 0 0 0 1px rgba(255,255,255,0.35)":void 0,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, background-color 220ms ease-out, backdrop-filter 220ms ease-out",maxHeight:r?`${r}px`:void 0},children:[jsx("div",{className:`pt-4 pb-2 transition-all duration-500 ease-in-out ${e?"px-1":"px-2"}`,children:e?jsx("div",{className:"flex justify-center",children:jsx("button",{onClick:t,className:`w-10 h-10 flex items-center justify-center rounded-lg transition-colors duration-200 ${c?"text-gray-300 hover:bg-gray-800":"text-gray-500 hover:bg-gray-50"}`,title:l("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:l("navigation.searchPlaceholder"),value:u,onChange:I=>C(I.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 ${c?"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 ${c?"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:w.length===0?jsx("div",{className:"flex items-center justify-center py-8 text-gray-500 text-sm",children:e?"\u{1F4C2}":l(u?"navigation.noMatch":"navigation.noAccessibleApp")}):jsxs(Fragment,{children:[!e&&jsx("div",{className:`transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:jsx(Xs,{items:w,onItemClick:R,className:"space-y-1",expandedIds:E,colorMode:n,onToggleExpand:I=>{let k=new Set(p);w.some(A=>A.id===I)?k.has(I)?k.delete(I):(w.forEach(A=>{A.id!==I&&k.has(A.id)&&k.delete(A.id);}),k.add(I)):k.has(I)?k.delete(I):k.add(I),h(k);}})}),e&&jsx("div",{className:"space-y-2",children:a.map(I=>jsx("div",{className:"space-y-1",children:jsx("button",{onClick:()=>{t();let k=new Set([I.id]);h(k);},className:`w-full flex items-center justify-center p-2 rounded-lg cursor-pointer transition-colors duration-200 ${c?"text-gray-400 hover:bg-gray-800":"text-gray-600 hover:bg-gray-50"}`,title:l("navigation.expandView",{title:I.title||""}),children:I.icon||jsx("div",{className:`w-6 h-6 rounded text-xs flex items-center justify-center font-medium ${c?"bg-[#90caf9] text-[#0b0b0b]":"bg-[#1976d2] text-white"}`,children:I.title?.charAt(0)||"?"})})},I.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 ${c?"hover:bg-gray-800/50":"hover:bg-white/20"}`,title:l("navigation.collapse"),children:jsx("div",{className:"absolute",style:{bottom:"0px",right:"0px",width:"16px",height:"16px",overflow:"hidden"},children:jsx("div",{className:c?"border-yellow-400":"",style:{width:"32px",height:"32px",borderRadius:"16px",border:"3px solid #21BCFF",backgroundColor:"transparent",position:"absolute",top:"-16px",left:"-16px"}})})}),d&&e&&jsx("button",{type:"button",onClick:T,className:"absolute -bottom-5 left-1/2 z-30 flex h-11 -translate-x-1/2 items-end justify-center rounded-full bg-transparent px-2 pb-1 transition-opacity duration-200 hover:opacity-95 focus:outline-none focus:ring-2 focus:ring-cyan-400/70",style:{width:"62px",touchAction:"manipulation"},title:l(g?"navigation.mode.switchToFixed":"navigation.mode.switchToFloating"),"aria-label":l(g?"navigation.mode.switchToFixed":"navigation.mode.switchToFloating"),children:jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 118 34",preserveAspectRatio:"none",className:"h-[34px] w-full overflow-visible",children:[jsxs("defs",{children:[jsxs("linearGradient",{id:m,x1:"0",x2:"1",y1:"0",y2:"0",children:[jsx("stop",{offset:"0%",stopColor:"#21BCFF"}),jsx("stop",{offset:"52%",stopColor:"#7C3AED"}),jsx("stop",{offset:"100%",stopColor:"#F59E0B"})]}),jsxs("filter",{id:b,x:"-70%",y:"-180%",width:"240%",height:"460%",children:[jsx("feGaussianBlur",{stdDeviation:"8.5",result:"coloredBlur"}),jsxs("feMerge",{children:[jsx("feMergeNode",{in:"coloredBlur"}),jsx("feMergeNode",{in:"SourceGraphic"})]})]})]}),jsx("path",{d:"M8 4 C27 21 91 21 110 4",fill:"none",stroke:`url(#${m})`,strokeLinecap:"round",strokeWidth:"18",opacity:g?.28:.2,filter:`url(#${b})`}),jsx("path",{d:"M8 4 C27 21 91 21 110 4",fill:"none",stroke:`url(#${m})`,strokeLinecap:"round",strokeWidth:"12",opacity:g?.4:.3,filter:`url(#${b})`}),jsx("path",{d:"M8 4 C27 21 91 21 110 4",fill:"none",stroke:`url(#${m})`,strokeLinecap:"round",strokeWidth:"6",opacity:g?.34:.25,filter:`url(#${b})`}),jsx("path",{d:"M8 4 C27 21 91 21 110 4",fill:"none",stroke:`url(#${m})`,strokeLinecap:"round",strokeWidth:"1",opacity:g?.28:.18})]})})]})};var cu=(e={})=>{let{initialCollapsed:t=false,initialDisplayMode:o="fixed",content:r=[]}=e,[a,n]=useState(t),[i,s]=useState(o),[d,l]=useState(r),c=useCallback(()=>{n(m=>!m);},[]),g=useCallback(()=>{s(m=>m==="fixed"?"floating":"fixed");},[]),f=useMemo(()=>({collapsed:a,onToggle:c,menuData:d,displayMode:i,onDisplayModeChange:s}),[a,c,d,i,s]);return {collapsed:a,setCollapsed:n,toggleCollapsed:c,displayMode:i,setDisplayMode:s,toggleDisplayMode:g,menuData:d,setMenuData:l,navigationIslandProps:f}};var lr=e=>jsx(Button,{...e,variant:e.variant||"contained",size:e.size||"medium",sx:{textTransform:"none",...e.sx}});var ec=class{constructor(){a(this,"listener",null);}register(t){this.listener=t;}unregister(){this.listener=null;}show(t,o,r){this.listener&&this.listener({type:t,content:o,options:r});}hide(){this.listener&&this.listener(null);}},Er=new ec,eP={success:(e,t)=>Er.show("success",e,t),error:(e,t)=>Er.show("error",e,t),warning:(e,t)=>Er.show("warning",e,t),info:(e,t)=>Er.show("info",e,t),show:(e,t,o)=>Er.show(e,t,o),hide:()=>Er.hide()};var zh={success:{icon:jsx(Eh,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsx(Fh,{sx:{fontSize:40}}),color:"#fff3e0",iconColor:"#ffa726",borderColor:"#ffcc80"},error:{icon:jsx(Lh,{sx:{fontSize:40}}),color:"#ffebee",iconColor:"#ef5350",borderColor:"#ef9a9a"},info:{icon:jsx(Nh,{sx:{fontSize:40}}),color:"#e3f2fd",iconColor:"#42a5f5",borderColor:"#90caf9"},default:{icon:null,color:"transparent",iconColor:"inherit",borderColor:"transparent"}},ti=({open:e,title:t,message:o,onClose:r,onConfirm:a,confirmText:n,cancelText:i,showCancel:s=true,maxWidth:d="xs",type:l="default"})=>{let{t:c}=oe(),g=n||c("messageBox.confirm"),f=i||c("messageBox.cancel"),m=()=>{a?a():r();},b=zh[l],v=l!=="default";return jsxs(Op,{open:e,onClose:r,maxWidth:d,fullWidth:true,PaperProps:{sx:{borderRadius:3,...v&&{borderTop:`6px solid ${b.iconColor}`}}},children:[v&&jsx(vi,{sx:{display:"flex",justifyContent:"center",pt:3,color:b.iconColor},children:b.icon}),t&&jsx(Vp,{sx:{textAlign:v?"center":"left",pt:v?1:2},children:t}),jsx(Hp,{sx:{textAlign:v?"center":"left"},children:typeof o=="string"?jsx(Dh,{children:o}):o}),jsxs(Wp,{sx:{justifyContent:v?"center":"flex-end",pb:3,px:3},children:[s&&jsx(lr,{onClick:r,variant:"text",color:"inherit",children:f}),jsx(lr,{onClick:m,variant:"contained",sx:{bgcolor:v?b.iconColor:void 0,"&:hover":{bgcolor:v?b.iconColor:void 0,filter:"brightness(0.9)"}},autoFocus:true,children:g})]})]})},bP=()=>{let[e,t]=Kt__default.useState(null),[o,r]=Kt__default.useState(false);Kt__default.useEffect(()=>{let i=s=>{s?(t(s),r(true)):(r(false),t(null));};return Er.register(i),()=>Er.unregister()},[]);let a=()=>{r(false),e?.options?.onClose&&e.options.onClose(),t(null);},n=()=>{e?.options?.onConfirm&&e.options.onConfirm(),r(false),t(null);};return e?jsx(ti,{open:o,type:e.type,message:e.content,title:e.options?.title,onClose:a,onConfirm:n,confirmText:e.options?.confirmText,cancelText:e.options?.cancelText,showCancel:e.options?.showCancel,maxWidth:e.options?.maxWidth}):null};var Yh=[{field:"value",label:"Value",minWidth:120},{field:"label",label:"Description",minWidth:180}],yu=e=>Array.isArray(e)?e:e==null||e===""?[]:[e],zo=e=>String(e),xu=(e,t)=>e[t],vu=e=>{let t=e.value??e.id??e.key??e.code;return typeof t=="number"||typeof t=="string"?t:""},Qh=e=>{let t=e.label??e.description??e.name??e.title;return String(typeof t=="number"||typeof t=="string"?t:vu(e))},Jh=e=>{let t=e.description??e.subtitle;return typeof t=="number"||typeof t=="string"?String(t):void 0},Cu=({value:e=null,items:t=[],columns:o,mode:r="single",dialogTitle:a="Value Help",searchPlaceholder:n="Search values...",selectLabel:i="Select",clearLabel:s="Clear",cancelLabel:d="Cancel",valueHelpLabel:l="Open value help",noResultsText:c="No matching values",loading:g=false,clearable:f=true,allowManualInput:m=true,validateManualInput:b=true,manualInputErrorText:v="Enter a valid value.",selectedItems:u=[],displayValue:C,getOptionValue:p=vu,getOptionLabel:h=Qh,getOptionDescription:x=Jh,onChange:w,onSearch:E,disabled:R,InputProps:T,onFocus:I,onBlur:k,onKeyDown:S,error:A,helperText:P,...M})=>{let B=r==="multiple",[Z,N]=useState(false),[V,X]=useState(false),[j,H]=useState(""),[ee,pe]=useState(null),[De,xe]=useState(false),[se,te]=useState(()=>yu(e)),[Ie,Ye]=useState(""),[Ue,be]=useState(""),Ke=useMemo(()=>o&&o.length>0?o:Yh,[o]),lt=ee??t,Ee=useMemo(()=>{let W=[...u,...t,...ee??[]],ue=new Map;return W.forEach(_e=>{ue.set(zo(p(_e)),_e);}),ue},[p,t,ee,u]),Oe=useMemo(()=>yu(e),[e]),qe=useMemo(()=>Oe.map(String).join(", "),[Oe]);useEffect(()=>{Z||te(Oe);},[Z,Oe]),useEffect(()=>{!V&&!Ue&&Ye(qe);},[V,qe,Ue]);let pt=useMemo(()=>{let W=j.trim().toLowerCase();if(!W||E)return lt;let ue=Ke.filter(_e=>_e.searchable!==false);return lt.filter(_e=>[p(_e),h(_e),x(_e),...ue.map(mt=>xu(_e,mt.field))].some(mt=>String(mt??"").toLowerCase().includes(W)))},[lt,x,h,p,E,j,Ke]),$e=useMemo(()=>{if(C!==void 0)return C;if(Oe.length===0)return "";let W=ue=>{let _e=Ee.get(zo(ue));if(!_e)return String(ue);let Qe=h(_e);return Qe&&Qe!==String(ue)?`${ue} - ${Qe}`:String(ue)};return B?Oe.length>2?`${Oe.length} selected`:Oe.map(W).join(", "):W(Oe[0])},[C,h,B,Ee,Oe]),q=useCallback(async()=>{if(E){xe(true);try{let W=await E(j);Array.isArray(W)&&pe(W);}finally{xe(false);}}},[E,j]),Le=()=>{R||(te(Oe),N(true));},ve=()=>{N(false);},Pe=()=>{w?.(B?[]:null,B?[]:null),te([]),Ye(""),be("");},at=W=>{let ue=p(W);if(B){te(_e=>_e.some(mt=>zo(mt)===zo(ue))?_e.filter(mt=>zo(mt)!==zo(ue)):[..._e,ue]);return}te([ue]);},We=()=>{let W=se.map(ue=>Ee.get(zo(ue))).filter(ue=>!!ue);B?w?.(se,W):w?.(se[0]??null,W[0]??null),be(""),N(false);},re=W=>{if(W.key==="F4"){W.preventDefault(),Le();return}if(W.key==="Enter"&&m&&!je(Ie,true)){W.preventDefault();return}S?.(W);},ke=W=>b?W.every(ue=>Ee.has(zo(ue))):true,je=(W,ue)=>{if(B){let Qe=W.split(/[,;\n]/).map(yt=>yt.trim()).filter(Boolean);if(Qe.length===0)return be(""),w?.([],[]),true;if(!ke(Qe))return ue&&be(v),false;be("");let mt=Qe.map(yt=>Ee.get(zo(yt))).filter(yt=>!!yt);return w?.(Qe,mt),true}let _e=W.trim();return _e?ke([_e])?(be(""),w?.(_e,Ee.get(zo(_e))??null),true):(ue&&be(v),false):(be(""),w?.(null,null),true)},St=W=>{if(!m)return;let ue=W.target.value;Ye(ue),be(""),je(ue,false);},K=g||De,Fe=Oe.length>0;return jsxs(Fragment,{children:[jsx(TextField,{...M,disabled:R,value:m&&(V||!!Ue)?Ie:$e,error:!!Ue||A,helperText:Ue||P,onChange:St,onFocus:W=>{X(true),Ye(qe),I?.(W);},onBlur:W=>{m&&je(Ie,true),X(false),k?.(W);},onKeyDown:re,InputProps:{...T,readOnly:!m,endAdornment:jsxs(InputAdornment,{position:"end",children:[K?jsx(CircularProgress,{size:18}):null,f&&Fe&&!R?jsx(Tooltip,{title:s,children:jsx(IconButton,{size:"small",edge:"end","aria-label":s,onClick:Pe,children:jsx(Zh,{fontSize:"small"})})}):null,jsx(Tooltip,{title:l,children:jsx("span",{children:jsx(IconButton,{size:"small",edge:"end","aria-label":l,onClick:Le,disabled:R,children:jsx(bu,{fontSize:"small"})})})})]})}}),jsxs(Dialog,{open:Z,onClose:ve,fullWidth:true,maxWidth:"md",PaperProps:{sx:W=>({borderRadius:2,overflow:"hidden",border:`1px solid ${W.palette.divider}`,boxShadow:W.palette.mode==="dark"?`0 24px 80px ${alpha(W.palette.common.black,.72)}`:`0 24px 80px ${alpha(W.palette.common.black,.18)}`})},children:[jsxs(DialogTitle,{sx:W=>({display:"flex",alignItems:"center",justifyContent:"space-between",gap:2,px:2.5,py:2,pr:1.5,borderBottom:`1px solid ${W.palette.divider}`,bgcolor:W.palette.background.paper}),children:[jsxs(Box,{children:[jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800,lineHeight:1.25},children:a}),B?jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.25},children:`${se.length} selected`}):null]}),jsx(IconButton,{"aria-label":"Close",onClick:ve,size:"small",children:jsx(Xh,{fontSize:"small"})})]}),jsxs(DialogContent,{sx:{p:0},children:[jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1,sx:W=>({px:2.5,py:1.5,borderBottom:`1px solid ${W.palette.divider}`,bgcolor:W.palette.mode==="dark"?alpha(W.palette.common.white,.025):alpha(W.palette.primary.main,.035)}),children:[jsx(TextField,{size:"small",fullWidth:true,value:j,placeholder:n,onChange:W=>H(W.target.value),onKeyDown:W=>{W.key==="Enter"&&(W.preventDefault(),q());},InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(bu,{fontSize:"small"})}),sx:W=>({borderRadius:1,bgcolor:W.palette.background.paper,"& fieldset":{borderColor:alpha(W.palette.text.primary,W.palette.mode==="dark"?.2:.16)},"&:hover fieldset":{borderColor:alpha(W.palette.primary.main,.52)},"&.Mui-focused fieldset":{borderColor:W.palette.primary.main}})}}),E?jsx(Button,{variant:"outlined",onClick:()=>{q();},disabled:K,sx:{minWidth:96,textTransform:"none",fontWeight:700},children:K?jsx(CircularProgress,{size:18}):"Search"}):null]}),jsx(TableContainer,{sx:{maxHeight:420},children:jsxs(Table,{stickyHeader:true,size:"small",children:[jsx(TableHead,{children:jsxs(TableRow,{children:[jsx(TableCell,{padding:"checkbox",sx:W=>({bgcolor:W.palette.mode==="dark"?"#111111":W.palette.background.paper,borderBottom:`1px solid ${W.palette.divider}`})}),Ke.map(W=>jsx(TableCell,{align:W.align,sx:ue=>({minWidth:W.minWidth,width:W.width,fontSize:"0.78rem",fontWeight:800,bgcolor:ue.palette.mode==="dark"?"#111111":ue.palette.background.paper,borderBottom:`1px solid ${ue.palette.divider}`}),children:W.label},String(W.field)))]})}),jsxs(TableBody,{children:[pt.map(W=>{let ue=p(W),_e=se.some(Qe=>zo(Qe)===zo(ue));return jsxs(TableRow,{hover:true,selected:_e,onClick:()=>at(W),onDoubleClick:()=>{B||(te([ue]),w?.(ue,W),N(false));},sx:Qe=>({cursor:"pointer","&.Mui-selected":{bgcolor:alpha(Qe.palette.primary.main,Qe.palette.mode==="dark"?.22:.12)},"&.Mui-selected:hover":{bgcolor:alpha(Qe.palette.primary.main,Qe.palette.mode==="dark"?.28:.18)}}),children:[jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:_e})}),Ke.map(Qe=>{let mt=xu(W,Qe.field);return jsx(TableCell,{align:Qe.align,sx:{fontSize:"0.82rem",py:1},children:Qe.render?Qe.render(mt,W):String(mt??"")},String(Qe.field))})]},zo(ue))}),pt.length===0?jsx(TableRow,{children:jsx(TableCell,{colSpan:Ke.length+1,children:jsx(Box,{sx:{py:5,textAlign:"center",color:"text.secondary"},children:c})})}):null]})]})})]}),jsxs(DialogActions,{sx:W=>({px:2.5,py:1.5,borderTop:`1px solid ${W.palette.divider}`,bgcolor:W.palette.background.paper,"& .MuiButton-root":{textTransform:"none",fontWeight:700}}),children:[f&&(Fe||se.length>0)?jsx(Button,{onClick:Pe,children:s}):null,jsx(Box,{sx:{flex:1}}),jsx(Button,{onClick:ve,children:d}),jsx(Button,{variant:"contained",onClick:We,disabled:!B&&se.length===0,children:i})]})]})]})};var ku=({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 ka={width:56,minWidth:56,maxWidth:56,paddingLeft:"4px !important",paddingRight:"4px !important",paddingTop:"0 !important",paddingBottom:"0 !important",textAlign:"center",verticalAlign:"middle",boxSizing:"border-box"},vr={width:72,minWidth:72,maxWidth:72,paddingLeft:"4px !important",paddingRight:"4px !important",paddingTop:"0 !important",paddingBottom:"0 !important",textAlign:"center",verticalAlign:"middle",boxSizing:"border-box"},ri={width:30,height:30,p:.25,flex:"0 0 auto","& .MuiSvgIcon-root":{fontSize:20}},Cr={width:30,height:30,minWidth:30,minHeight:30,p:.25,flex:"0 0 auto","& .MuiSvgIcon-root":{fontSize:20}},Su={display:"flex",alignItems:"center",justifyContent:"center",gap:.25,width:"100%",minWidth:0},Qo={...Cr,borderRadius:1};var ol=e=>{let{t}=oe(),o="0.85rem",r=Array.isArray(e.actions)?e.actions:e.actions?[e.actions]:[],a=Array.isArray(e.extraTools)?e.extraTools:e.extraTools?[e.extraTools]:[],n=[...r,...a],i=typeof e.rowsPerPage=="number"?e.rowsPerPage:20,s=Array.isArray(e.rowsPerPageOptions)&&e.rowsPerPageOptions.length>0?e.rowsPerPageOptions:[20,50,100,-1],d=typeof e.count=="number"?e.count:0,l=Math.max(0,typeof e.page=="number"?e.page:0),c=i===-1?1:Math.max(1,Math.ceil(d/i)),g=Math.min(l+1,c),f=l>0,m=l<c-1&&i!==-1,b={fontSize:o,fontWeight:600,color:"text.primary",minWidth:64,height:30,display:"flex",alignItems:"center","& .MuiSelect-select":{py:0,pl:.75,pr:"22px !important",minHeight:`${30}px !important`,height:30,display:"flex",alignItems:"center",boxSizing:"border-box"},"& .MuiSelect-icon":{right:0,fontSize:20,color:"text.primary"}};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:v=>e.setFilterText(v.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(bu,{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:v=>e.onRowsPerPageChange?.(Number(v.target.value)),sx:b,children:s.map(v=>jsx(MenuItem,{value:v,sx:{fontSize:o},children:v===-1?t("common.all"):v},`rows-per-page-${v}`))}),jsx(IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.max(l-1,0)),disabled:!f,sx:{...Qo,color:"text.primary"},children:jsx(vb,{})}),jsx(Typography,{sx:{fontSize:o,fontWeight:600,minWidth:88,textAlign:"center",color:"text.primary"},children:t("table.toolbar.pageOf",{current:g,total:c})}),jsx(IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.min(l+1,c-1)),disabled:!m,sx:{...Qo,color:"text.primary"},children:jsx(Kf,{})})]}),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((v,u)=>jsx(Kt__default.Fragment,{children:v},`toolbar-custom-${u}`))}),jsx(Box,{sx:{width:"1px",height:20,bgcolor:"divider",mx:.5}}),jsx(Tooltip,{title:t("table.toolbar.groupBy"),children:jsx(IconButton,{sx:{...Qo,color:"text.primary"},onClick:v=>e.setGroupAnchorEl(v.currentTarget),children:jsx(Badge,{badgeContent:e.grouping?.length,color:"primary",children:jsx(gb,{})})})}),jsx(Tooltip,{title:t("table.toolbar.summary"),children:jsx(IconButton,{sx:{...Qo,color:e.showSummary?"primary.main":"text.primary"},onClick:v=>e.setSummaryAnchorEl(v.currentTarget),children:jsx(fb,{})})}),jsx(Tooltip,{title:t("table.toolbar.columns"),children:jsx(IconButton,{sx:{...Qo,color:"text.primary"},onClick:v=>e.setAnchorEl(v.currentTarget),children:jsx(ub,{})})}),jsx(Tooltip,{title:t("table.toolbar.export"),children:jsx(IconButton,{sx:{...Qo,color:"text.primary"},onClick:e.handleExport,children:jsx(mb,{})})}),e.showCreateButton&&jsx(Tooltip,{title:t("table.toolbar.newItem"),children:jsx(IconButton,{onClick:e.onOpenCreateDialog,color:"primary",sx:Qo,children:jsx(Ou,{})})}),e.showEditButton&&jsx(Tooltip,{title:t("table.toolbar.editItem"),children:jsx("span",{children:jsx(IconButton,{onClick:e.onOpenEditDialog,color:"primary",disabled:!!e.editDisabled,sx:Qo,children:jsx(yb,{})})})}),e.showDeleteButton&&jsx(Tooltip,{title:t("table.toolbar.deleteItem"),children:jsx("span",{children:jsx(IconButton,{onClick:e.onOpenDeleteConfirm,color:"error",disabled:!!e.deleteDisabled,sx:Qo,children:jsx(xb,{})})})}),e.onOpenGraphReport&&jsx(Tooltip,{title:t("table.toolbar.graphicReport"),children:jsx(IconButton,{sx:{...Qo,color:"text.primary"},onClick:e.onOpenGraphReport,children:jsx(hb,{})})}),e.onLayoutSave&&!e.layoutManager&&jsx(Tooltip,{title:t("table.toolbar.saveLayout"),children:jsx(IconButton,{sx:{...Qo,color:"text.primary"},onClick:v=>e.onLayoutSave(v),children:jsx(Ep,{})})}),e.layoutManager]})]})};var rl=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:o}=e;return "translate3d("+(t?Math.round(t):0)+"px, "+(o?Math.round(o):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:o}=e;return "scaleX("+t+") scaleY("+o+")"}},Transform:{toString(e){if(e)return [rl.Translate.toString(e),rl.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:o,easing:r}=e;return t+" "+o+"ms "+r}}});var al=e=>{let{t}=oe(),{onSelectAllClick:o,order:r,orderBy:a,sortBy:n=[],numSelected:i=0,rowCount:s=0,onRequestSort:d,onContextMenu:l,columns:c,visibleColumns:g,selectionMode:f,grouping:m=[],isAllExpanded:b=false,handleToggleAll:v,onColumnResize:u,columnWidths:C,enableColumnReorder:p=false}=e,[h,x]=useState(null),w=useRef(null),E=V=>X=>{h||d(V);},R=(V,X,j)=>{V.preventDefault(),V.stopPropagation(),x(X),w.current={startX:V.clientX,startWidth:j,colId:X},document.addEventListener("mousemove",T),document.addEventListener("mouseup",I),document.body.style.cursor="col-resize";},T=V=>{if(!w.current)return;let{startX:X,startWidth:j,colId:H}=w.current,ee=V.clientX-X,pe=Math.max(50,j+ee);u&&u(H,pe);},I=()=>{x(null),w.current=null,document.removeEventListener("mousemove",T),document.removeEventListener("mouseup",I),document.body.style.cursor="";};useEffect(()=>()=>{document.removeEventListener("mousemove",T),document.removeEventListener("mouseup",I);},[]);let k=f==="multiple"||f==="single",S=m.length>0&&!!v,A=t(b?"table.group.collapseAll":"table.group.expandAll"),P=c.filter(V=>g.includes(V.id)),M=new Map(n.map((V,X)=>[V.field,{...V,priority:X+1}])),B=P.map(V=>{let X=C?.[V.id]||V.minWidth||100,j=M.get(V.id);return jsx(Nb,{headCell:V,width:typeof X=="number"?X:100,order:r,orderBy:a,multiSortInfo:j,onRequestSort:E(V.id),onContextMenu:l,onResizeMouseDown:H=>R(H,V.id,typeof X=="number"?X:100),enableColumnReorder:p},V.id)}),Z=P.map(V=>V.id),N=jsxs(Ib,{children:[k&&jsx(cc,{padding:"checkbox",sx:V=>({...ka,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(Pb,{color:"primary",indeterminate:i>0&&i<s,checked:s>0&&i===s,onChange:o,disabled:f==="single",sx:ri})}),S&&jsx(cc,{align:"center",padding:"checkbox",sx:V=>({...vr,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(Db,{title:A,children:jsx(Mb,{size:"small",onClick:V=>{V.stopPropagation(),v?.(!b);},sx:Cr,children:b?jsx(Bb,{}):jsx(Ab,{})})})}),p?jsx(SortableContext,{items:Z,strategy:horizontalListSortingStrategy,children:B}):B]});return jsx(Tb,{children:N})},Nb=({headCell:e,width:t,order:o,orderBy:r,multiSortInfo:a,onRequestSort:n,onContextMenu:i,onResizeMouseDown:s,enableColumnReorder:d})=>{let{setNodeRef:l,attributes:c,listeners:g,transform:f,transition:m,isDragging:b}=useSortable({id:e.id,disabled:!d}),v=d?{transform:rl.Transform.toString(f),transition:m,opacity:b?.6:1}:{},u=a?.direction??(r===e.id?o:"asc"),C=!!a||r===e.id;return jsxs(cc,{ref:d?l:void 0,align:"left",padding:e.disablePadding?"none":"normal",sortDirection:C?u:false,onContextMenu:i?p=>i(p,e.id):void 0,style:{width:t,minWidth:t,maxWidth:t,...v},sx:p=>({position:"sticky",top:0,zIndex:4,backgroundColor:p.palette.mode==="dark"?"#000000":"#f5f5f5",color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary,fontWeight:"bold",userSelect:"none",cursor:d?b?"grabbing":"grab":void 0}),...d?c:{},...d?g:{},children:[jsx(Rb,{active:C,direction:u,onClick:n,sx:p=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary,opacity:C?1:0,transition:"opacity 0.2s"},"&:hover .MuiTableSortLabel-icon":{opacity:.5},"&.Mui-active .MuiTableSortLabel-icon":{opacity:1,color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary}),children:jsxs(vi,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1,display:"inline-flex",alignItems:"center",gap:.5},children:[e.label,a&&jsx(vi,{component:"span",sx:p=>({display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:16,height:16,px:.5,borderRadius:999,fontSize:10,fontWeight:700,color:"#fff",backgroundColor:p.palette.primary.main}),children:a.priority})]})}),jsx(vi,{onMouseDown:s,onPointerDown:p=>p.stopPropagation(),onClick:p=>p.stopPropagation(),sx:p=>({position:"absolute",right:0,top:0,bottom:0,width:5,cursor:"col-resize",backgroundColor:"transparent",transition:"background-color 120ms ease","&:hover":{backgroundColor:p.palette.mode==="dark"?"rgba(148,163,184,0.28)":"rgba(15,23,42,0.12)"},zIndex:1})})]})};var Pu=e=>{let{t}=oe(),{visibleRows:o,visibleColumns:r,selected:a=[],handleClick:n,columns:i,toggleGroupExpand:s,expandedGroups:d=new Set,selectionMode:l,grouping:c=[],isGroupFullyExpanded:g,handleExpandGroupRecursively:f,handleCollapseGroupRecursively:m}=e,b=p=>a.indexOf(p)!==-1,v=l==="multiple"||l==="single",u=c.length>0,C=r.length+(v?1:0)+(u?1:0);return jsxs(TableBody,{children:[o.map((p,h)=>{if(p.type==="group"){let x=d.has(p.id),w=p.childIds||[],E=w.filter(k=>b(k)).length,R=w.length>0&&E===w.length,T=E>0&&E<w.length;return jsxs(TableRow,{sx:k=>({backgroundColor:k.palette.mode==="dark"?"#111111":"#f5f5f5","& .MuiTableCell-root":{color:k.palette.text.primary,borderBottomColor:k.palette.divider},"& .MuiIconButton-root":{color:k.palette.text.primary},"& .MuiCheckbox-root":{color:k.palette.text.secondary},"& .MuiCheckbox-root.Mui-checked, & .MuiCheckbox-root.MuiCheckbox-indeterminate":{color:k.palette.primary.main}}),children:[v&&jsx(TableCell,{padding:"checkbox",sx:ka,children:jsx(Checkbox,{size:"small",checked:R,indeterminate:T,onChange:k=>{if(k.stopPropagation(),!!e.onSelectionChange)if(R){let S=a.filter(A=>!w.includes(A));e.onSelectionChange(S);}else {let S=Array.from(new Set([...a,...w]));e.onSelectionChange(S);}},onClick:k=>k.stopPropagation(),sx:ri})}),u&&jsx(TableCell,{padding:"checkbox",sx:vr,children:jsxs(Box,{sx:Su,children:[c.length>1&&p.level<c.length-1&&jsx(Tooltip,{title:g?.(p.id)?t("table.group.collapseAll"):t("table.group.expandAll"),children:jsx(IconButton,{size:"small",onClick:()=>{g?.(p.id)?m?.(p.id):f?.(p.id);},sx:Cr,children:g?.(p.id)?jsx(Bb,{}):jsx(Ab,{})})}),jsx(IconButton,{size:"small",onClick:()=>s&&s(p.id),sx:Cr,children:x?jsx($b,{}):jsx(Kf,{})})]})}),jsx(TableCell,{colSpan:r.length,sx:{py:1,pl:p.level*3+1},children:jsxs(Typography,{variant:"body2",fontWeight:"bold",color:"text.primary",sx:{fontSize:"0.85rem"},children:[p.field,": ",p.value," (",p.count,")"]})})]},p.id)}else {let x=p.data||p,w=p.id||x.id||h,E=b(w),R=`enhanced-table-checkbox-${h}`,I=(p.level!==void 0?p.level:0)*4;return jsxs(TableRow,{hover:true,onClick:k=>n&&n(k,x),role:"checkbox","aria-checked":E,tabIndex:-1,selected:E,sx:{cursor:"pointer"},children:[v&&jsx(TableCell,{padding:"checkbox",sx:ka,children:jsx(Checkbox,{color:"primary",checked:E,inputProps:{"aria-labelledby":R},sx:ri})}),u&&jsx(TableCell,{padding:"checkbox",sx:vr}),i.filter(k=>r.includes(k.id)).map((k,S)=>{let P=S===0&&I>0?{pl:I+2}:{};return jsx(TableCell,{align:"left",sx:P,children:k.render?k.render(x[k.id],x):(function(){let B=x[k.id];if(k.numeric){if(typeof B=="number")return B.toLocaleString();if(typeof B=="string"&&B.trim()!==""&&!isNaN(Number(B)))return Number(B).toLocaleString()}return B})()},k.id)})]},w)}}),o.length===0&&jsx(TableRow,{children:jsx(TableCell,{colSpan:C,align:"center",children:t("common.noData")})})]})};var Ru=e=>{let{visibleColumns:t,summaryRow:o,selectionMode:r,grouping:a=[]}=e;if(!e.showSummary)return null;let n=r==="multiple"||r==="single",i=a.length>0;return jsx(TableFooter,{sx:{position:"sticky",bottom:0,zIndex:e.zIndex,bgcolor:"background.paper"},children:jsxs(TableRow,{children:[n&&jsx(TableCell,{padding:"checkbox",sx:{...ka,bgcolor:"background.paper"}}),i&&jsx(TableCell,{padding:"checkbox",sx:{...vr,bgcolor:"background.paper"}}),t.map(s=>jsx(TableCell,{sx:{fontWeight:"bold",fontSize:"0.85rem",bgcolor:"background.paper",color:"text.primary"},children:(function(){let l=o[s];return l==null||l===""?"":typeof l=="number"?l.toLocaleString():typeof l=="string"&&l.trim()!==""&&!isNaN(Number(l))?Number(l).toLocaleString():l})()},s))]})})};var Du=e=>{let{t}=oe();return jsx(Box,{sx:{p:2},children:jsx(Typography,{children:t("table.mobile.notImplemented")})})};var rn=({groupAnchorEl:e,setGroupAnchorEl:t,grouping:o,setGrouping:r,columns:a,toggleGroupField:n})=>{let{t:i}=oe();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxs(Box,{sx:{p:1,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[jsx(Typography,{variant:"subtitle2",sx:{px:1},children:i("table.menu.groupBy")}),o.length>0&&jsx(Button,{size:"small",color:"error",onClick:()=>r([]),startIcon:jsx(Lu,{}),children:i("table.menu.clearAll")})]}),jsx(Divider,{}),a.map(s=>{let d=o.includes(s.id),l=o.indexOf(s.id)+1;return jsx(MenuItem,{onClick:()=>n(s.id),children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Checkbox,{checked:d,size:"small"}),jsx(ListItemText,{primary:s.label}),d&&jsx(Badge,{badgeContent:l,color:"primary",sx:{mr:2}})]})},s.id)})]})},an=({anchorEl:e,setAnchorEl:t,columns:o,visibleColumns:r,toggleColumnVisibility:a})=>{let{t:n}=oe();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:n("table.menu.visibleColumns")})}),jsx(Divider,{}),o.map(i=>jsxs(MenuItem,{onClick:()=>a(i.id),children:[jsx(Checkbox,{checked:r.includes(i.id),size:"small"}),jsx(ListItemText,{primary:i.label})]},i.id))]})},ll=({anchorEl:e,setAnchorEl:t,showSummary:o,setShowSummary:r,columns:a,summaryColumns:n,toggleSummaryColumn:i})=>{let{t:s}=oe();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{children:jsx(FormControlLabel,{control:jsx(Switch,{checked:o,onChange:d=>r(d.target.checked),size:"small"}),label:s("table.menu.showSummaryRow")})}),jsx(Divider,{}),a.filter(d=>d.numeric).map(d=>jsxs(MenuItem,{onClick:()=>i(d.id),disabled:!o,children:[jsx(Checkbox,{checked:n.includes(d.id),size:"small"}),jsx(ListItemText,{primary:d.label})]},d.id)),a.filter(d=>d.numeric).length===0&&jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:s("table.menu.noNumericColumns")})})]})},sl=({contextMenu:e,handleCloseContextMenu:t,columns:o,visibleColumns:r,toggleColumnVisibility:a})=>{let{t:n}=oe();return jsxs(Menu,{open:e!==null,onClose:t,anchorReference:"anchorPosition",anchorPosition:e!==null?{top:e.mouseY,left:e.mouseX}:void 0,children:[jsx(MenuItem,{onClick:t,children:n("common.copy")}),jsx(Divider,{}),jsx(MenuItem,{disabled:true,children:n("table.menu.visibleColumns")}),o.map(i=>jsxs(MenuItem,{onClick:()=>a(i.id),children:[jsx(ListItemIcon,{children:r.includes(i.id)&&jsx(oy,{fontSize:"small"})}),jsx(ListItemText,{children:i.label})]},i.id))]})},Vu=({contextMenu:e,handleClose:t,columns:o,visibleColumns:r,grouping:a,summaryColumns:n,showSummary:i,sortBy:s,orderBy:d,order:l,onSortAsc:c,onSortDesc:g,onClearSort:f,onHideColumn:m,onToggleGroup:b,onToggleSummary:v,onOpenSortDialog:u})=>{let{t:C}=oe(),p=e?.columnId??"",h=o.find(S=>S.id===p),x=a.includes(p),w=n.includes(p),E=!!h?.numeric,R=s.find(S=>S.field===p),T=R?R.direction==="asc":d===p&&l==="asc",I=R?R.direction==="desc":d===p&&l==="desc",k=T||I;return jsxs(Menu,{open:e!==null,onClose:t,anchorReference:"anchorPosition",anchorPosition:e!==null?{top:e.mouseY,left:e.mouseX}:void 0,children:[jsx(MenuItem,{disabled:true,sx:{opacity:"1 !important",fontWeight:700},children:jsx(ListItemText,{primary:h?.label??p})}),jsx(Divider,{}),jsxs(MenuItem,{onClick:()=>{c(p),t();},selected:T,children:[jsx(ListItemIcon,{children:jsx(Nu,{fontSize:"small"})}),jsx(ListItemText,{primary:C("table.headerMenu.sortAsc")})]}),jsxs(MenuItem,{onClick:()=>{g(p),t();},selected:I,children:[jsx(ListItemIcon,{children:jsx(zu,{fontSize:"small"})}),jsx(ListItemText,{primary:C("table.headerMenu.sortDesc")})]}),k&&jsxs(MenuItem,{onClick:()=>{f(p),t();},children:[jsx(ListItemIcon,{children:jsx(Lu,{fontSize:"small"})}),jsx(ListItemText,{primary:C("table.headerMenu.clearSort")})]}),jsxs(MenuItem,{onClick:()=>{u(),t();},children:[jsx(ListItemIcon,{children:jsx(Ou,{fontSize:"small"})}),jsx(ListItemText,{primary:C("table.headerMenu.configureSort")})]}),jsx(Divider,{}),jsxs(MenuItem,{onClick:()=>{b(p),t();},selected:x,children:[jsx(ListItemIcon,{children:jsx(gb,{fontSize:"small"})}),jsx(ListItemText,{primary:C(x?"table.headerMenu.ungroup":"table.headerMenu.group")})]}),E&&i&&jsxs(MenuItem,{onClick:()=>{v(p),t();},selected:w,children:[jsx(ListItemIcon,{children:jsx(fb,{fontSize:"small"})}),jsx(ListItemText,{primary:C(w?"table.headerMenu.removeSummary":"table.headerMenu.addSummary")})]}),jsx(Divider,{}),jsxs(MenuItem,{onClick:()=>{m(p),t();},children:[jsx(ListItemIcon,{children:jsx(ry,{fontSize:"small"})}),jsx(ListItemText,{primary:C("table.headerMenu.hideColumn")})]})]})},Hu=({open:e,onClose:t,columns:o,initialRules:r,onApply:a,onClear:n})=>{let{t:i}=oe(),[s,d]=useState([]);useEffect(()=>{e&&d(r.length>0?r.map(v=>({...v})):[]);},[e,r]);let l=useMemo(()=>new Set(s.map(v=>v.field)),[s]),c=useMemo(()=>o.filter(v=>!l.has(v.id)),[o,l]),g=()=>{let v=c[0];v&&d(u=>[...u,{field:v.id,direction:"asc"}]);},f=v=>{d(u=>u.filter((C,p)=>p!==v));},m=(v,u)=>{d(C=>C.map((p,h)=>h===v?{...p,...u}:p));},b=(v,u)=>{d(C=>{let p=v+u;if(p<0||p>=C.length)return C;let h=[...C],[x]=h.splice(v,1);return h.splice(p,0,x),h});};return jsxs(Dialog,{open:e,onClose:t,maxWidth:"sm",fullWidth:true,children:[jsx(DialogTitle,{children:i("table.sortDialog.title")}),jsxs(DialogContent,{dividers:true,children:[s.length===0?jsx(Typography,{variant:"body2",sx:{color:"text.secondary",py:2},children:i("table.sortDialog.empty")}):jsx(Stack,{spacing:1,children:s.map((v,u)=>{let C=new Set(s.filter((h,x)=>x!==u).map(h=>h.field)),p=o.filter(h=>!C.has(h.id));return jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"24px 1fr 110px auto auto",alignItems:"center",gap:1},children:[jsx(Badge,{badgeContent:u+1,color:"primary",sx:{ml:.5}}),jsx("select",{value:v.field,onChange:h=>m(u,{field:h.target.value}),style:{padding:6,fontSize:13,borderRadius:4},children:p.map(h=>jsx("option",{value:h.id,children:h.label},h.id))}),jsxs("select",{value:v.direction,onChange:h=>m(u,{direction:h.target.value}),style:{padding:6,fontSize:13,borderRadius:4},children:[jsx("option",{value:"asc",children:i("table.sortDialog.asc")}),jsx("option",{value:"desc",children:i("table.sortDialog.desc")})]}),jsx(IconButton,{size:"small",onClick:()=>b(u,-1),disabled:u===0,children:jsx(Nu,{fontSize:"small"})}),jsxs(Stack,{direction:"row",children:[jsx(IconButton,{size:"small",onClick:()=>b(u,1),disabled:u===s.length-1,children:jsx(zu,{fontSize:"small"})}),jsx(IconButton,{size:"small",onClick:()=>f(u),children:jsx(iy,{fontSize:"small"})})]})]},`sort-rule-${u}`)})}),jsx(Button,{size:"small",onClick:g,disabled:c.length===0,startIcon:jsx(Ou,{}),sx:{mt:2},children:i("table.sortDialog.addRule")})]}),jsxs(DialogActions,{children:[jsx(Button,{color:"inherit",onClick:()=>{n(),t();},children:i("table.sortDialog.clearAll")}),jsx(Box,{sx:{flex:1}}),jsx(Button,{onClick:t,children:i("common.cancel")}),jsx(Button,{variant:"contained",onClick:()=>{a(s),t();},children:i("common.ok")})]})]})};var ci=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),$u=({kpis:e})=>{let{t}=oe(),o=[{label:t("graph.kpi.totalRecords"),value:ci(e.totalRecords,0),color:"text.primary"},{label:t("graph.kpi.totalReport"),value:ci(e.totalReportHours),color:"text.primary"},{label:t("graph.kpi.totalBillable"),value:ci(e.totalBillableHours),color:"success.main"},{label:t("graph.kpi.efficiency"),value:`${e.efficiency.toFixed(2)}%`,color:"warning.main"},{label:t("graph.kpi.amount"),value:ci(e.totalAmount),color:"info.main"},{label:t("graph.kpi.flagged"),value:ci(e.flaggedCount,0),color:"error.main"}];return jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(6, minmax(0, 1fr))"},gap:1.5},children:o.map(r=>jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2,minHeight:96,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[jsx(Typography,{variant:"caption",color:"text.secondary",children:r.label}),jsx(Typography,{variant:"h4",fontWeight:800,sx:{color:r.color},children:r.value})]},r.label))})};var cl=({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 ui=({data:e,orientation:t="horizontal",valueSuffix:o="",minHeight:r=210,activeName:a,onItemClick:n})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let i=Math.max(...e.map(s=>s.value),1);return t==="vertical"?jsx(Box,{sx:{display:"flex",gap:1,alignItems:"flex-end",minHeight:r},children:e.map(s=>jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Box,{onClick:()=>n?.(s),sx:{height:`${Math.max(s.value/i*180,6)}px`,bgcolor:s.name===a?"primary.dark":"primary.main",borderRadius:"8px 8px 0 0",cursor:n?"pointer":"default",opacity:a&&s.name!==a?.45:1}}),jsx(Typography,{variant:"caption",noWrap:true,title:s.name,sx:{display:"block",mt:.5},children:s.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",children:[s.value.toFixed(1),o]})]},s.name))}):jsx(Stack,{spacing:1,children:e.map(s=>jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"140px 1fr 64px",gap:1},children:[jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,title:s.name,children:s.name}),jsx(Box,{onClick:()=>n?.(s),sx:{alignSelf:"center",bgcolor:"action.hover",height:10,borderRadius:999,overflow:"hidden",cursor:n?"pointer":"default",opacity:a&&s.name!==a?.45:1},children:jsx(Box,{sx:{width:`${s.value/i*100}%`,height:"100%",bgcolor:s.name===a?"primary.dark":"primary.main"}})}),jsxs(Typography,{variant:"caption",sx:{textAlign:"right",fontWeight:600},children:[s.value.toFixed(1),o]})]},s.name))})};var Ku=({data:e,color:t="#42A5F5",valueSuffix:o="",height:r=220})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let a=640,n=28,i=e.map(f=>f.value),s=Math.min(...i,0),l=Math.max(...i,1)-s||1,c=e.map((f,m)=>{let b=n+m*(a-n*2)/Math.max(e.length-1,1),v=r-n-(f.value-s)/l*(r-n*2);return {x:b,y:v,...f}}),g=c.map(f=>`${f.x},${f.y}`).join(" ");return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${a} ${r}`,sx:{width:"100%",height:r},children:[jsx("line",{x1:n,y1:r-n,x2:a-n,y2:r-n,stroke:"rgba(148,163,184,0.4)"}),jsx("polyline",{fill:"none",stroke:t,strokeWidth:3,points:g}),c.map(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 _u=({data:e,barColor:t="#64B5F6",lineColor:o="#FFB74D",height:r=220})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let a=640,n=28,i=Math.max(...e.map(c=>c.barValue),1),s=Math.max(...e.map(c=>c.lineValue),1),d=e.map((c,g)=>{let f=(a-n*2)/e.length,m=Math.max(f*.5,8),b=n+g*f+(f-m)/2,v=c.barValue/i*(r-n*2),u=r-n-v;return {x:b,y:u,barHeight:v,barWidth:m,item:c}}),l=e.map((c,g)=>{let f=(a-n*2)/e.length,m=n+g*f+f/2,b=r-n-c.lineValue/s*(r-n*2);return {x:m,y:b,item:c}});return jsxs(Stack,{spacing:1.25,children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${a} ${r}`,sx:{width:"100%",height:r},children:[jsx("line",{x1:n,y1:r-n,x2:a-n,y2:r-n,stroke:"rgba(148,163,184,0.4)"}),d.map(c=>jsx("rect",{x:c.x,y:c.y,width:c.barWidth,height:Math.max(c.barHeight,4),rx:6,fill:t},c.item.name)),jsx("polyline",{fill:"none",stroke:o,strokeWidth:3,points:l.map(c=>`${c.x},${c.y}`).join(" ")}),l.map(c=>jsx("circle",{cx:c.x,cy:c.y,r:3.5,fill:o},`${c.item.name}-line`))]}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${e.length}, minmax(0, 1fr))`,gap:1},children:e.map(c=>jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",noWrap:true,title:c.name,sx:{display:"block"},children:c.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:["Bar: ",c.barValue.toFixed(1)]}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:["Line: ",c.lineValue.toFixed(1)]})]},c.name))})]})};var hy=e=>`rgba(30, 136, 229, ${.2+Math.max(0,Math.min(1,e))*.8})`,ju=({data:e})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let t=Array.from(new Set(e.map(n=>n.x))),o=Array.from(new Set(e.map(n=>n.y))),r=Math.max(...e.map(n=>n.value),1),a=new Map(e.map(n=>[`${n.y}__${n.x}`,n.value]));return jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{sx:{display:"grid",gridTemplateColumns:`120px repeat(${t.length}, minmax(64px, 1fr))`,gap:1,minWidth:120+t.length*64},children:[jsx(Box,{}),t.map(n=>jsx(Typography,{variant:"caption",sx:{textAlign:"center",fontWeight:600},children:n},n)),o.map(n=>jsxs(Box,{sx:{display:"contents"},children:[jsx(Typography,{variant:"caption",sx:{alignSelf:"center"},children:n}),t.map(i=>{let s=a.get(`${n}__${i}`)||0,d=s/r;return jsx(Box,{sx:{height:36,borderRadius:1,bgcolor:hy(d),border:"1px solid rgba(148,163,184,0.2)",display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(Typography,{variant:"caption",fontWeight:700,children:s.toFixed(1)})},`${n}-${i}`)})]},n))]})})};var by=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],hl=({data:e,variant:t="donut",colors:o=by,size:r=180,activeName:a,onItemClick:n})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let i=0,s=e.map((d,l)=>{let c=i;return i+=d.percent,`${o[l%o.length]} ${c}% ${i}%`});return jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:2,alignItems:"center",children:[jsx(Box,{sx:{width:r,height:r,borderRadius:"50%",background:`conic-gradient(${s.join(", ")})`,position:"relative",flexShrink:0},children:t==="donut"&&jsx(Box,{sx:{position:"absolute",inset:Math.round(r*.18),bgcolor:"background.paper",borderRadius:"50%"}})}),jsx(Stack,{spacing:1,sx:{minWidth:180},children:e.map((d,l)=>jsxs(Box,{onClick:()=>n?.(d),sx:{display:"flex",alignItems:"center",gap:1,cursor:n?"pointer":"default",opacity:a&&d.name!==a?.45:1},children:[jsx(Box,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:o[l%o.length]}}),jsx(Typography,{variant:"caption",sx:{flex:1},children:d.name}),jsxs(Typography,{variant:"caption",sx:{fontWeight:700},children:[d.percent.toFixed(0),"%"]})]},d.name))})]})};var Xu=({effect:e,branches:t})=>{if(t.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let o=t.filter((a,n)=>n%2===0),r=t.filter((a,n)=>n%2===1);return jsxs(Stack,{spacing:1.5,children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.max(o.length,1)}, minmax(0, 1fr))`,gap:1},children:o.map(a=>jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1},children:[jsx(Typography,{variant:"caption",fontWeight:700,children:a.title}),a.causes.map(n=>jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:n},n))]},a.title))}),jsxs(Box,{sx:{position:"relative",height:32},children:[jsx(Box,{sx:{position:"absolute",inset:"50% 0 auto 0",borderTop:"2px solid",borderColor:"primary.main"}}),jsx(Box,{sx:{position:"absolute",right:0,top:"calc(50% - 12px)",px:1,py:.25,borderRadius:1,bgcolor:"primary.main",color:"primary.contrastText"},children:jsx(Typography,{variant:"caption",fontWeight:700,children:e})})]}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.max(r.length,1)}, minmax(0, 1fr))`,gap:1},children:r.map(a=>jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1},children:[jsx(Typography,{variant:"caption",fontWeight:700,children:a.title}),a.causes.map(n=>jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:n},n))]},a.title))})]})};var Qu=({data:e,height:t=240})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let o=0,r=e.map(g=>{let f=g.type==="total"?0:o,m=g.type==="total"?g.value:o+g.value;return g.type!=="total"&&(o=m),{...g,start:f,end:m,delta:m-f}}),a=r.flatMap(g=>[g.start,g.end]),n=Math.min(...a,0),i=Math.max(...a,1),s=680,d=30,l=i-n||1,c=g=>t-d-(g-n)/l*(t-d*2);return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${s} ${t}`,sx:{width:"100%",height:t},children:[jsx("line",{x1:d,y1:c(0),x2:s-d,y2:c(0),stroke:"rgba(148,163,184,0.4)"}),r.map((g,f)=>{let m=(s-d*2)/r.length,b=Math.max(m*.55,8),v=d+f*m+(m-b)/2,u=c(Math.max(g.start,g.end)),C=c(Math.min(g.start,g.end)),p=g.type==="total"?"#42A5F5":g.delta>=0?"#66BB6A":"#EF5350";return jsxs("g",{children:[jsx("rect",{x:v,y:u,width:b,height:Math.max(C-u,4),rx:6,fill:p}),jsx("text",{x:v+b/2,y:u-6,textAnchor:"middle",fill:"currentColor",fontSize:"11",children:g.end.toFixed(1)})]},g.name)})]}),jsx(Box,{sx:{mt:1,display:"grid",gridTemplateColumns:`repeat(${r.length}, minmax(0, 1fr))`,gap:1},children:r.map(g=>jsx(Typography,{variant:"caption",noWrap:true,title:g.name,children:g.name},g.name))})]})};var gi=({apiKey:e,query:t,zoom:o=14,mapType:r="roadmap"})=>{let a=encodeURIComponent(t);return `https://www.google.com/maps/embed/v1/place?key=${encodeURIComponent(e)}&q=${a}&zoom=${o}&maptype=${r}`},PM=(e,t=360)=>{let o=gi(e);return `<iframe width="100%" height="${t}" style="border:0" loading="lazy" allowfullscreen referrerpolicy="no-referrer-when-downgrade" src="${o}"></iframe>`};var tp=({apiKey:e,query:t,embedUrl:o,zoom:r=14,mapType:a="roadmap",height:n=320})=>{let i=o||(e&&t?gi({apiKey:e,query:t,zoom:r,mapType:a}):"");return i?jsxs(Box,{children:[jsx(Box,{component:"iframe",src:i,loading:"lazy",referrerPolicy:"no-referrer-when-downgrade",sx:{width:"100%",height:n,border:0,borderRadius:2}}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{mt:.75,display:"block"},children:["If iframe is blocked, open directly: ",jsx(Link,{href:i,target:"_blank",rel:"noreferrer",children:"Google Maps"})]})]}):jsx(Box,{children:jsx(Typography,{variant:"body2",color:"text.secondary",children:"Google Map requires `embedUrl` or (`apiKey` + `query`)."})})};var xl=({keyword:e,location:t,src:o="orbcafe-ui"})=>{if(t){let r=encodeURIComponent(t.name||e||"Location");return `https://uri.amap.com/marker?position=${t.lng},${t.lat}&name=${r}&src=${encodeURIComponent(o)}&coordinate=gaode&callnative=0`}return e?`https://uri.amap.com/search?keyword=${encodeURIComponent(e)}&src=${encodeURIComponent(o)}&callnative=0`:"https://uri.amap.com/search?keyword=%E5%8C%97%E4%BA%AC&src=orbcafe-ui&callnative=0"};var np=({keyword:e,location:t,embedUrl:o,height:r=320})=>{let a=o||xl({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0});return jsxs(Box,{children:[jsx(Box,{component:"iframe",src:a,loading:"lazy",referrerPolicy:"no-referrer-when-downgrade",sx:{width:"100%",height:r,border:0,borderRadius:2}}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{mt:.75,display:"block"},children:["If iframe is blocked, open directly: ",jsx(Link,{href:a,target:"_blank",rel:"noreferrer",children:"AMap"})]})]})};var ip=({billableByPrimary:e,efficiencyBySecondary:t,statusDistribution:o,interaction:r})=>{let{t:a}=oe();return jsxs(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"1.2fr 1.2fr 1fr"}},children:[jsx(cl,{title:a("graph.chart.billable.title"),subtitle:a("graph.chart.billable.subtitle"),children:jsx(ui,{data:e,orientation:"horizontal",activeName:r?.filters?.primaryDimension,onItemClick:n=>r?.onPrimaryDimensionClick?.(n.name)})}),jsx(cl,{title:a("graph.chart.efficiency.title"),subtitle:a("graph.chart.efficiency.subtitle"),children:jsx(ui,{data:t,orientation:"vertical",valueSuffix:"%",activeName:r?.filters?.secondaryDimension,onItemClick:n=>r?.onSecondaryDimensionClick?.(n.name)})}),jsx(cl,{title:a("graph.chart.status.title"),subtitle:a("graph.chart.status.subtitle"),children:jsx(hl,{data:o,variant:"donut",activeName:r?.filters?.status,onItemClick:n=>r?.onStatusClick?.(n.name)})})]})};var ko=e=>jsx(TextField,{...e,variant:e.variant||"outlined",size:e.size||"small",fullWidth:e.fullWidth!==void 0?e.fullWidth:true});var Sc=e=>jsx(TextField,{...e,multiline:true,minRows:3,fullWidth:true,variant:"outlined"});var Ny=["doubao-lite","gpt-4o-mini","gpt-4.1-mini","claude-3.5-sonnet"],zy=["zh","en","de","fr","ja","ko"],cp=({open:e,onClose:t,value:o,onSaveAll:r,modelOptions:a=Ny,promptLangOptions:n=zy,analysisTemplateOptions:i=[],responseTemplateOptions:s=[],defaultAnalysisTemplateId:d,defaultResponseTemplateId:l})=>{let[c,g]=useState(o),[f,m]=useState(d||""),[b,v]=useState(l||""),[u,C]=useState(false);useEffect(()=>{e&&(g(o),m(d||""),v(l||""));},[e,o,d,l]);let p=(x,w)=>{g(E=>({...E,[x]:w}));},h=async()=>{if(r)try{C(!0),await r({settings:c,analysisTemplateId:f||void 0,responseTemplateId:b||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(Xh,{})})]}),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(ko,{size:"small",value:c.baseUrl,onChange:x=>p("baseUrl",x.target.value),fullWidth:true,label:"Base URL"})}),jsx(Box,{children:jsx(ko,{size:"small",type:"password",value:c.apiKey,onChange:x=>p("apiKey",x.target.value),fullWidth:true,label:"API Key"})}),jsx(Box,{children:jsx(ko,{size:"small",value:c.model,onChange:x=>p("model",x.target.value),fullWidth:true,select:true,label:"Model",children:a.map(x=>jsx(MenuItem,{value:x,children:x},x))})}),jsx(Box,{children:jsx(ko,{size:"small",value:c.promptLang,onChange:x=>p("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(ko,{size:"small",value:f,onChange:x=>m(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(Sc,{multiline:true,minRows:8,value:c.analysisPrompt,onChange:x=>p("analysisPrompt",x.target.value),fullWidth:true,label:"Analysis Prompt",sx:{"& .MuiInputBase-root":{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"}}}),jsxs(ko,{size:"small",value:b,onChange:x=>v(x.target.value),fullWidth:true,select:true,label:"Response Template",children:[jsx(MenuItem,{value:"",children:"Default"}),s.map(x=>jsx(MenuItem,{value:x.id,children:x.label},x.id))]}),jsx(Sc,{multiline:true,minRows:8,value:c.responsePrompt,onChange:x=>p("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:h,disabled:!r||u,children:"Save"})]})]})};var wl=({open:e,onClose:t,model:o,tableContent:r,extraCharts:a,interaction:n,aiAssistant:i})=>{let{t:s}=oe(),[d,l]=useState(i?.defaultPrompt||""),[c,g]=useState(false),[f,m]=useState(false),b=n?.enabled!==false&&!!n,v=i?.enabled!==false,u=n?.filters||{},C=!!(u.primaryDimension||u.secondaryDimension||u.status),p=i?.placeholder||"Ask AI to analyze data, create charts, or find insights...";useEffect(()=>{e&&l(i?.defaultPrompt||"");},[e,i?.defaultPrompt]);let h=i?.settings||{baseUrl:"/llm-api",apiKey:"",model:"doubao-lite",promptLang:"zh",analysisPrompt:"",responsePrompt:""},x=async()=>{let w=d.trim();if(!(!w||!i?.onSubmit))try{g(!0),await i.onSubmit(w,{filters:u,model:o});}finally{g(false);}};return jsx(Dialog,{open:e,onClose:t,fullScreen:true,children:jsxs(Box,{sx:{height:"100%",display:"flex",flexDirection:"column",bgcolor:"background.default"},children:[jsx(Box,{sx:{p:2,borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:{xs:"column",lg:"row"},alignItems:{xs:"stretch",lg:"center"},justifyContent:"space-between",spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{flexWrap:"wrap"},children:[jsx(Typography,{variant:"h5",fontWeight:800,children:o.title}),jsx(Chip,{size:"small",label:s("graph.records",{count:o.kpis.totalRecords})}),b&&u.primaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.primaryDimension}: ${u.primaryDimension}`,onDelete:()=>n?.onClearFilter("primaryDimension")}),b&&u.secondaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.secondaryDimension}: ${u.secondaryDimension}`,onDelete:()=>n?.onClearFilter("secondaryDimension")}),b&&u.status&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.status}: ${u.status}`,onDelete:()=>n?.onClearFilter("status")}),b&&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:[v&&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(Gy,{sx:{fontSize:18,color:"text.secondary"}})}),jsx(InputBase,{fullWidth:true,value:d,onChange:w=>l(w.target.value),onKeyDown:w=>{w.key==="Enter"&&(w.preventDefault(),x());},placeholder:p,sx:{fontSize:"0.9rem"}}),jsx(IconButton,{size:"small",onClick:x,disabled:c||!d.trim(),children:jsx(Ky,{sx:{fontSize:18}})}),jsx(IconButton,{size:"small",onClick:()=>m(true),children:jsx(Uy,{sx:{fontSize:18}})})]}),jsx(IconButton,{onClick:t,children:jsx(Xh,{})})]})]})}),jsxs(Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsx($u,{kpis:o.kpis}),jsx(ip,{billableByPrimary:o.charts.billableByPrimary,efficiencyBySecondary:o.charts.efficiencyBySecondary,statusDistribution:o.charts.statusDistribution,interaction:b?{filters:u,onPrimaryDimensionClick:w=>n?.onPrimaryDimensionClick(w),onSecondaryDimensionClick:w=>n?.onSecondaryDimensionClick(w),onStatusClick:w=>n?.onStatusClick(w)}:void 0}),a,r]}),jsx(cp,{open:f,onClose:()=>m(false),value:h,onSaveAll:i?.onSaveAll,modelOptions:i?.modelOptions,promptLangOptions:i?.promptLangOptions,analysisTemplateOptions:i?.analysisTemplateOptions,responseTemplateOptions:i?.responseTemplateOptions,defaultAnalysisTemplateId:i?.defaultAnalysisTemplateId,defaultResponseTemplateId:i?.defaultResponseTemplateId})]})})};var ia={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"]},qy=5,dp=e=>e.toLowerCase().replace(/[\s_-]/g,""),la=(e,t,o,r)=>{if(t)return t;if(e.length===0)return r;let a=Object.keys(e[0]),n=new Map(a.map(i=>[dp(i),i]));for(let i of o){let s=n.get(dp(i));if(s)return s}return a[0]||r},Vo=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},ho=(e,t)=>e==null||e===""?t:String(e),jy=(e,t,o,r,a)=>{let n=new Map;return e.forEach(i=>{let s=ho(i[t],a);n.set(s,(n.get(s)||0)+Vo(i[o]));}),Array.from(n.entries()).map(([i,s])=>({name:i,value:s})).sort((i,s)=>s.value-i.value).slice(0,r)},Zy=(e,t,o,r,a,n)=>{let i=new Map;return e.forEach(s=>{let d=ho(s[t],n),l=i.get(d)||{report:0,billable:0};l.report+=Vo(s[o]),l.billable+=Vo(s[r]),i.set(d,l);}),Array.from(i.entries()).map(([s,d])=>({name:s,value:d.report>0?d.billable/d.report*100:0})).sort((s,d)=>s.value-d.value).slice(0,a)},Xy=(e,t,o)=>{let r=e.length;if(r===0)return [];let a=new Map;return e.forEach(n=>{let i=ho(n[t],o);a.set(i,(a.get(i)||0)+1);}),Array.from(a.entries()).map(([n,i])=>({name:n,value:i,percent:i/r*100}))},up=(e,t,o)=>{let r=new Map;return e.forEach(a=>{let n=ho(a[t],"N/A");r.set(n,(r.get(n)||0)+Vo(a[o]));}),Array.from(r.entries()).sort(([a],[n])=>a.localeCompare(n)).map(([a,n])=>({name:a,value:n}))},Yy=(e,t,o,r,a,n)=>{let i=new Map;return e.forEach(s=>{let d=ho(s[t],n),l=i.get(d)||{report:0,billable:0};l.report+=Vo(s[o]),l.billable+=Vo(s[r]),i.set(d,l);}),Array.from(i.entries()).map(([s,d])=>({name:s,barValue:d.billable,lineValue:d.report>0?d.billable/d.report*100:0})).sort((s,d)=>d.barValue-s.barValue).slice(0,a)},Qy=(e,t,o,r,a)=>{let n=new Map;return e.forEach(i=>{let s=ho(i[t],a),d=ho(i[o],a),l=`${s}__${d}`;n.set(l,(n.get(l)||0)+Vo(i[r]));}),Array.from(n.entries()).map(([i,s])=>{let[d,l]=i.split("__");return {x:d,y:l,value:s}})},Jy=(e,t,o)=>{let r=up(e,t,o),a=r.map(i=>({name:i.name,value:i.value,type:"delta"})),n=r.reduce((i,s)=>i+s.value,0);return [...a,{name:"Total",value:n,type:"total"}]},ex=(e,t,o,r,a,n)=>{let i=new Map;return e.forEach(s=>{let d=ho(s[t],n),l=`${ho(s[o],n)} / ${ho(s[r],n)}`,c=i.get(d)||new Map;c.set(l,(c.get(l)||0)+1),i.set(d,c);}),Array.from(i.entries()).map(([s,d])=>({title:s,causes:Array.from(d.entries()).sort((l,c)=>c[1]-l[1]).slice(0,a).map(([l,c])=>`${l} (${c})`)})).slice(0,6)},fn=({rows:e,config:t})=>{let{t:o}=oe(),r=o("graph.unassigned"),a=useMemo(()=>{let c=t?.fieldMapping;return {primaryDimension:la(e,c?.primaryDimension,ia.primaryDimension,"Category"),secondaryDimension:la(e,c?.secondaryDimension,ia.secondaryDimension,"Owner"),status:la(e,c?.status,ia.status,"Status"),date:la(e,c?.date,ia.date,"Date"),description:la(e,c?.description,ia.description,"Description"),reportHours:la(e,c?.reportHours,ia.reportHours,"ReportHours"),billableHours:la(e,c?.billableHours,ia.billableHours,"BillableHours"),amount:la(e,c?.amount,ia.amount,"Amount")}},[e,t?.fieldMapping]),n=useMemo(()=>e.map((c,g)=>{let f=Vo(c[a.reportHours]),m=Vo(c[a.billableHours]),b=Vo(c[a.amount]),v=f>0?m/f*100:0;return {id:`graph-row-${g}`,Date:ho(c[a.date],""),Primary:ho(c[a.primaryDimension],r),Secondary:ho(c[a.secondaryDimension],r),Description:ho(c[a.description],""),ReportHours:f,BillableHours:m,Amount:b,Efficiency:v,Status:ho(c[a.status],r)}}),[e,a,r]),i=useMemo(()=>{let c=n.length,g=n.reduce((C,p)=>C+Vo(p.ReportHours),0),f=n.reduce((C,p)=>C+Vo(p.BillableHours),0),m=n.reduce((C,p)=>C+Vo(p.Amount),0),b=g>0?f/g*100:0,v=t?.statusFlagValues||["flag","flagged","warning","risk"],u=n.filter(C=>v.includes(ho(C.Status,"").toLowerCase())).length;return {totalRecords:c,totalReportHours:g,totalBillableHours:f,efficiency:b,totalAmount:m,flaggedCount:u}},[n,t?.statusFlagValues]),s=t?.topN||qy,d=useMemo(()=>({billableByPrimary:jy(n,"Primary","BillableHours",s,r),efficiencyBySecondary:Zy(n,"Secondary","ReportHours","BillableHours",s,r),statusDistribution:Xy(n,"Status",r),lineByDate:up(n,"Date","BillableHours"),comboByPrimary:Yy(n,"Primary","ReportHours","BillableHours",s,r),heatmapPrimarySecondary:Qy(n,"Primary","Secondary","BillableHours",r),waterfallBillable:Jy(n,"Date","BillableHours"),fishboneStatusCauses:ex(n,"Status","Primary","Secondary",3,r)}),[n,s,r]),l=useMemo(()=>({title:t?.title||o("graph.reportTitle"),kpis:i,charts:d,table:{columns:[{id:"Date",label:a.date},{id:"Primary",label:a.primaryDimension},{id:"Secondary",label:a.secondaryDimension},{id:"Description",label:a.description},{id:"ReportHours",label:o("graph.column.reportHours"),align:"right"},{id:"BillableHours",label:o("graph.column.billableHours"),align:"right"},{id:"Amount",label:"Amount",align:"right"},{id:"Efficiency",label:"Efficiency",align:"right"},{id:"Status",label:a.status}],rows:n}}),[d,t?.title,a,i,n,o]);return {fieldMapping:a,model:l}};var hn=e=>String(e??"").trim(),Il=(e={})=>{let[t,o]=useState(e),r=useCallback((d,l)=>{o(c=>{let g=l?.trim();if(!g){let f={...c};return delete f[d],f}if(c[d]===g){let f={...c};return delete f[d],f}return {...c,[d]:g}});},[]),a=useCallback(d=>{o(l=>{if(!l[d])return l;let c={...l};return delete c[d],c});},[]),n=useCallback(()=>{o({});},[]),i=useMemo(()=>!!(t.primaryDimension||t.secondaryDimension||t.status),[t]),s=useCallback((d,l)=>d.filter(c=>!(t.primaryDimension&&hn(c[l.primaryDimension])!==hn(t.primaryDimension)||t.secondaryDimension&&hn(c[l.secondaryDimension])!==hn(t.secondaryDimension)||t.status&&hn(c[l.status])!==hn(t.status))),[t]);return {filters:t,setFilter:r,clearFilter:a,clearAll:n,hasActiveFilters:i,applyRows:s}};var Rl=({variants:e,currentVariantId:t,onLoad:o,onSave:r,onDelete:a,onSetDefault:n})=>{let{t:i}=oe(),d=useTheme().palette.mode==="dark",l="0.85rem",c={xs:"calc((100% - 1 * 16px) / 2)",sm:"calc((100% - 2 * 16px) / 3)",md:"calc((100% - 3 * 16px) / 4)",lg:"calc((100% - 5 * 16px) / 6)"},[g,f]=useState(false),[m,b]=useState(""),[v,u]=useState(false),[C,p]=useState(false),h=e.find(E=>E.id===t),x=()=>{b(h?.name||i("variant.newVariant")),u(h?.isDefault||false),p(h?.isPublic||false),f(true);},w=()=>{r({name:m,isDefault:v,isPublic:C,description:""}),f(false);};return jsxs(Box,{sx:{display:"flex",gap:1,alignItems:"center",width:"100%",maxWidth:"100%"},children:[jsx(Autocomplete,{size:"small",sx:{width:c,"& .MuiInputBase-root":{fontSize:l,bgcolor:d?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.9)":"rgba(25,118,210,0.85)"}},"& .MuiInputBase-input":{fontSize:l},"& .MuiAutocomplete-noOptions":{fontSize:l}},noOptionsText:jsx(Typography,{sx:{fontSize:l},children:i("variant.noOptions")}),options:e,getOptionLabel:E=>E.name+(E.isDefault?` (${i("variant.defaultSuffix")})`:""),value:h||null,onChange:(E,R)=>{R&&o(R);},renderInput:E=>jsx(TextField,{...E,variant:"outlined",size:"small",InputProps:{...E.InputProps,sx:{fontSize:l,color:d?"#E3F2FD":"#0D47A1"}},placeholder:i("variant.selectVariant")}),renderOption:(E,R)=>{let{key:T,...I}=E;return jsx("li",{...I,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Typography,{sx:{flex:1,fontSize:l},children:R.name}),R.isDefault&&jsx(px,{fontSize:"small",color:"action"})]})},T)}}),jsx(Tooltip,{title:i("variant.saveView"),children:jsx(IconButton,{onClick:x,size:"small",color:"primary",children:jsx(Ep,{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:m,onChange:E=>b(E.target.value)}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:v,onChange:E=>u(E.target.checked)}),label:i("variant.setDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C,onChange:E=>p(E.target.checked)}),label:i("variant.publicAllUsers")})]}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>f(false),children:i("common.cancel")}),jsx(Button,{onClick:w,variant:"contained",children:i("common.save")})]})]})]})};var xp=({appId:e,tableKey:t="default",currentFilters:o,currentLayoutId:r,layoutRefs:a,onLoad:n,variantService:i,serviceUrl:s,onError:d,onSuccess:l,currentVariantId:c,onVariantChange:g})=>{let{t:f}=oe(),[m,b]=useState([]),[v,u]=useState(""),C=`orbcafe.variants.${e}.${t}`,p=c!==void 0?c:v,h=A=>{c===void 0&&u(A),g&&g(A);},x=useCallback(()=>{try{let A=localStorage.getItem(C);if(!A)return [];let P=JSON.parse(A);return Array.isArray(P)?P:[]}catch{return []}},[C]),w=useCallback(A=>{try{localStorage.setItem(C,JSON.stringify(A));}catch{}},[C]),E=useCallback(A=>{b(A);let P=A.find(M=>M.isDefault);P&&!p&&(h(P.id),n(P));},[p,n,h]),R=useCallback(async()=>{if(!e)return [];try{let A=[];if(i)A=await i.getVariants(e,t);else if(s){let P=await fetch(`${s}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!P.ok)throw new Error(f("variant.toast.fetchFailed"));A=await P.json();}else A=x();return E(A),A}catch(A){console.error("Error fetching variants",A);let P=x();return E(P),d&&d(f("variant.toast.fetchFailed")),P}},[e,t,i,s,x,E,d,f]);return useEffect(()=>{R();},[e,t]),jsx(Rl,{variants:m,currentVariantId:p,onLoad:A=>{h(A.id),n(A);},onSave:async A=>{let P=Date.now().toString(),M;try{let B=A.scope||"Both",Z=m.find(j=>j.name===A.name);P=Z?Z.id:Date.now().toString();let N=[];if(Z&&(Array.isArray(Z.filters)?N=[...Z.filters]:Z.filters&&(N=[{scope:"default",filters:Z.filters}])),B==="Search"||B==="Both"){let j=(Array.isArray(o),o);if(j)if(Array.isArray(j)&&j.length>0&&j[0].scope)j.forEach(H=>{let ee=N.findIndex(pe=>pe.scope===H.scope);ee>=0?N[ee]=H:N.push(H);});else {let H={scope:t,filters:j},ee=N.findIndex(pe=>pe.scope===t);ee>=0?N[ee]=H:N.push(H);}}let V=Z?.layout||{},X=[];if(Z&&Array.isArray(Z.layoutRefs)&&(X=[...Z.layoutRefs]),B==="Layout"||B==="Both")if(a&&a.length>0)a.forEach(j=>{let H=X.findIndex(ee=>ee.tableKey===j.tableKey);H>=0?X[H]=j:X.push(j);});else {let j={tableKey:t,layoutId:r||null},H=X.findIndex(ee=>ee.tableKey===t);H>=0?X[H]=j:X.push(j);}if(M={appId:e,tableKey:t,...A,scope:B,id:P,createdAt:new Date().toISOString(),filters:N,layout:V,layoutRefs:X},i)await i.saveVariant(M,e,t);else if(s){if(!(await fetch(`${s}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(M)})).ok)throw new Error(f("variant.toast.saveFailed"))}else {let H=m.some(ee=>ee.id===P)?m.map(ee=>ee.id===P?M:ee):[...m,M];b(H),w(H);}l&&l(f("variant.toast.saveSuccess")),(i||s)&&await R(),h(P),n(M);}catch(B){console.error("Error saving variant",B);let N=m.some(V=>V.id===P)?m.map(V=>V.id===P?M:V):[...m,M];b(N),w(N),h(P),n(M),d&&d(f("variant.toast.saveFailed"));}},onDelete:async A=>{try{if(i)await i.deleteVariant(A);else if(s){if(!(await fetch(`${s}/api/variants/${A}`,{method:"DELETE"})).ok)throw new Error(f("variant.toast.deleteFailed"))}else {let P=m.filter(M=>M.id!==A);b(P),w(P);}p===A&&h(""),(i||s)&&R(),l&&l(f("variant.toast.deleteSuccess"));}catch(P){console.error("Error deleting variant",P);let M=m.filter(B=>B.id!==A);b(M),w(M),p===A&&h(""),d&&d(f("variant.toast.deleteFailed"));}},onSetDefault:async A=>{try{let P=m.find(B=>B.id===A);if(!P)return;let M={appId:e,tableKey:t,...P,isDefault:!0};if(i)await i.setDefaultVariant(A,e,t);else if(s){if(!(await fetch(`${s}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(M)})).ok)throw new Error(f("variant.toast.defaultFailed"))}else {let B=m.map(Z=>({...Z,isDefault:Z.id===A}));b(B),w(B);}(i||s)&&await R(),l&&l(f("variant.toast.defaultSuccess"));}catch(P){console.error("Error setting default variant",P);let M=m.map(B=>({...B,isDefault:B.id===A}));b(M),w(M),d&&d(f("variant.toast.defaultFailed"));}}})};Ar.extend(Rx);Ar.extend(Mx);Ar.extend(Dx);var bi="YYYY-MM-DD",Ax=[null,null],Ra="0.85rem",Bx={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},Ex=styled(PickersDay,{shouldForwardProp:e=>e!=="isInRange"&&e!=="isStart"&&e!=="isEnd"&&e!=="isHovered"})(({theme:e,isInRange:t,isStart:o,isEnd:r,isHovered:a})=>({...t&&{borderRadius:0,backgroundColor:e.palette.primary.light,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.main}},...a&&!t&&!o&&!r&&{borderRadius:0,backgroundColor:e.palette.action.hover,border:`1px dashed ${e.palette.primary.main}`},...o&&{borderRadius:"50% 0 0 50%",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...r&&{borderRadius:"0 50% 50% 0",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...o&&r&&{borderRadius:"50%"}})),Sp=({label:e,value:t=Ax,onChange:o})=>{let{t:r,locale:a}=oe(),n=Bx[a]||"en",i=e||r("dateRange.label"),[s,d]=useState(null),[l,c]=useState(t),[g,f]=useState("start"),[m,b]=useState(null),[v,u]=useState((t[0]||Ar()).locale(n)),[C,p]=useState(""),[h,x]=useState(""),[w,E]=useState(false),[R,T]=useState(false),I=Kt__default.useRef(t);useEffect(()=>{let[H,ee]=t,[pe,De]=I.current,xe=Ie=>Ie&&typeof Ie.isSame=="function",se=!(H===null&&pe===null||xe(H)&&xe(pe)&&H.isSame(pe,"day")),te=!(ee===null&&De===null||xe(ee)&&xe(De)&&ee.isSame(De,"day"));(se||te)&&(c(t),t[0]&&xe(t[0])&&u(t[0].locale(n))),I.current=t;},[t,n]),useEffect(()=>{p(l[0]?l[0].locale(n).format(bi):""),x(l[1]?l[1].locale(n).format(bi):""),E(false),T(false);},[l,n]);let k=(H,ee)=>{let pe=ee.trim(),De=H==="start"?E:T;if(!pe){let te=H==="start"?[null,l[1]]:[l[0],null];De(false),c(te);return}let xe=Ar(pe,bi,true).locale(n);if(!xe.isValid()){De(true);return}De(false);let se=[...l];if(H==="start")se[0]=xe,se[1]&&xe.isAfter(se[1],"day")&&(se[1]=null),f(se[1]?"start":"end");else {let te=se[0];te&&xe.isBefore(te,"day")?(se=[xe,null],f("end")):(se[1]=xe,f("start"));}c(se),u(xe);},S=H=>{d(H.currentTarget);},A=()=>{d(null),f("start"),b(null);},P=!!s,M=H=>{if(!H)return;let ee=[...l];if(g==="start")ee=[H,null],f("end");else {let pe=ee[0];pe&&H.isBefore(pe)?(ee=[H,null],f("end")):(ee=[pe,H],f("start"));}c(ee);},B=H=>{let ee=Ar().locale(n),pe=[null,null];switch(H){case "today":pe=[ee,ee];break;case "week":pe=[ee.startOf("week"),ee.endOf("week")];break;case "month":pe=[ee.startOf("month"),ee.endOf("month")];break}c(pe),f("start"),u(ee);},Z=()=>{c([null,null]),f("start"),u(Ar().locale(n));},N=()=>{o&&o(l),A();},V=()=>{c(t),f("start"),A();},X=useCallback(H=>{let{day:ee,...pe}=H,[De,xe]=l,se=De?ee.isSame(De,"day"):false,te=xe?ee.isSame(xe,"day"):false,Ie=De&&xe?ee.isBetween(De,xe,"day","()"):false,Ye=false;return g==="end"&&De&&!xe&&m&&ee.isAfter(De,"day")&&ee.isBefore(m.add(1,"day"),"day")&&(Ye=true),jsx(Ex,{...pe,day:ee,disableMargin:true,isStart:se,isEnd:te,isInRange:Ie||Ye,onMouseEnter:()=>b(ee)})},[l,g,m]),j=H=>H?H.locale(n).format("YYYY-MM-DD"):"";return jsxs(Box,{children:[jsx(TextField,{label:i,value:l[0]?`${j(l[0])} - ${j(l[1])}`:"",onClick:S,fullWidth:true,size:"small",InputLabelProps:{sx:{fontSize:Ra}},InputProps:{readOnly:true,sx:{fontSize:Ra,"& .MuiOutlinedInput-input":{fontSize:Ra},paddingRight:"4px"},endAdornment:jsxs(InputAdornment,{position:"end",sx:{ml:0},children:[(l[0]||l[1])&&jsx(IconButton,{size:"small",onClick:H=>{H.stopPropagation(),Z();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsx(Zh,{sx:{fontSize:"1rem"}})}),jsx(IconButton,{size:"small",edge:"end",onClick:S,sx:{padding:"2px"},children:jsx(Tx,{sx:{fontSize:"1rem"},color:"action"})})]})}}),jsxs(Popover,{open:P,anchorEl:s,onClose:A,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},slotProps:{paper:{sx:{display:"flex",flexDirection:"column",p:0,width:320}}},children:[jsx(Box,{sx:{p:2,bgcolor:"background.default",borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,justifyContent:"space-between",children:[jsx(TextField,{label:r("dateRange.startDate"),placeholder:bi,value:C,error:w,size:"small",onFocus:()=>f("start"),onChange:H=>{p(H.target.value),w&&E(false);},onBlur:()=>k("start",C),onKeyDown:H=>{H.key==="Enter"&&(H.preventDefault(),k("start",C));},sx:{flex:1,"& .MuiInputBase-input":{fontSize:Ra,py:.75},"& .MuiInputLabel-root":{fontSize:Ra}}}),jsx(Px,{color:"action",fontSize:"small"}),jsx(TextField,{label:r("dateRange.endDate"),placeholder:bi,value:h,error:R,size:"small",onFocus:()=>{l[0]&&f("end");},onChange:H=>{x(H.target.value),R&&T(false);},onBlur:()=>k("end",h),onKeyDown:H=>{H.key==="Enter"&&(H.preventDefault(),k("end",h));},sx:{flex:1,"& .MuiInputBase-input":{fontSize:Ra,py:.75},"& .MuiInputLabel-root":{fontSize:Ra}}})]})}),jsx(Box,{sx:{p:2,pb:0},children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",children:[jsx(Chip,{label:r("dateRange.today"),onClick:()=>B("today"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:r("dateRange.thisWeek"),onClick:()=>B("week"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:r("dateRange.thisMonth"),onClick:()=>B("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsx(LocalizationProvider,{dateAdapter:AdapterDayjs,adapterLocale:n,children:jsx(DateCalendar,{value:null,referenceDate:v,onMonthChange:u,onYearChange:u,onChange:M,slots:{day:X},views:["year","month","day"],openTo:"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:V,color:"inherit",children:r("common.cancel")}),jsx(Button,{size:"small",variant:"contained",onClick:N,children:r("common.done")})]})]})]})};var Al={equals:"=",contains:"\u2287",notContains:"\u2285",wildcard:"*","=":"=","!=":"!=",">":">","<":"<",">=":"\u2265","<=":"\u2264",between:"\u2194"},Ux={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"},Kx=["equals","contains","notContains","wildcard"],Ip=["=","!=",">","<",">=","<=","between"],Ot="0.85rem",_x=({field:e,value:t,onChange:o})=>{let{t:r}=oe(),[a,n]=useState(null),[i,s]=useState(null),[d,l]=useState(""),[c,g]=useState(""),[f,m]=useState(false),[b,v]=useState(""),[u,C]=useState("");useEffect(()=>{let S=setTimeout(()=>{C(b);},1e3);return ()=>clearTimeout(S)},[b]);let p=t?.operator||(e.type==="number"?"=":"equals"),h=t?.value,x=S=>{let A=Ux[S];return A?r(A):S},w=S=>{n(S.currentTarget);},E=S=>{o({...t,operator:S,value:h}),n(null);},R={size:"small",fullWidth:true,variant:"outlined",InputLabelProps:{sx:{fontSize:Ot}},InputProps:{sx:{fontSize:Ot}},SelectProps:{MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:Ot,paddingTop:"4px",paddingBottom:"4px",minHeight:"auto"}}}}}},T=e.type||"text";if(T==="date"){let A=(P=>{if(!P)return [null,null];if(Array.isArray(P)&&P.length===2){let M=P[0]?Ar.isDayjs(P[0])?P[0]:Ar(P[0]):null,B=P[1]?Ar.isDayjs(P[1])?P[1]:Ar(P[1]):null;return [M,B]}return Ar.isDayjs(P)||typeof P=="string"?[Ar.isDayjs(P)?P:Ar(P),null]:[null,null]})(h);return jsx(Sp,{label:e.label,value:A,onChange:P=>o({value:P,operator:"between"})})}if(T==="number"&&p==="between"){let S=()=>{o({value:[d,c],operator:"between"}),s(null);},A=Array.isArray(h)?`${h[0]||""} - ${h[1]||""}`:"";return jsxs(Fragment,{children:[jsx(TextField,{...R,label:e.label,value:A,placeholder:r("smartFilter.minMaxPlaceholder"),InputProps:{...R.InputProps,startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:x("between"),children:jsx(IconButton,{size:"small",onClick:w,sx:{width:24,height:24,fontSize:Ot},children:Al.between})})}),readOnly:true},onClick:P=>s(P.currentTarget)}),jsx(Menu,{anchorEl:a,open:!!a,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:Ot,minHeight:"auto",py:.5}}},children:Ip.map(P=>jsxs(MenuItem,{selected:P===p,onClick:()=>E(P),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Al[P]}),jsx(ListItemText,{primary:x(P),primaryTypographyProps:{fontSize:Ot}})]},P))}),jsx(Popover,{open:!!i,anchorEl:i,onClose:()=>s(null),anchorOrigin:{vertical:"bottom",horizontal:"left"},children:jsxs(Box,{sx:{p:2,display:"flex",gap:1,alignItems:"center"},children:[jsx(TextField,{size:"small",label:r("smartFilter.min"),type:"number",value:d,onChange:P=>l(P.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:Ot}},InputProps:{sx:{fontSize:Ot}}}),jsx(Gx,{color:"action"}),jsx(TextField,{size:"small",label:r("smartFilter.max"),type:"number",value:c,onChange:P=>g(P.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:Ot}},InputProps:{sx:{fontSize:Ot}}}),jsx(Button,{variant:"contained",size:"small",onClick:S,children:r("common.ok")})]})})]})}if(e.isValueHelp||T==="value-help"){let S=e.valueHelp?.mode||"single";return jsx(Cu,{...R,...e.valueHelp,label:e.label,placeholder:e.placeholder||e.valueHelp?.placeholder,value:h??(S==="multiple"?[]:null),mode:S,onChange:A=>o({value:A,operator:S==="multiple"?"anyOf":"equals"})})}if(T==="select")return jsxs(TextField,{...R,select:true,label:e.label,value:h||"",onChange:S=>o({...t,value:S.target.value,operator:"equals"}),children:[jsx(MenuItem,{value:"",children:jsx("em",{children:r("common.none")})}),e.options?.map(S=>jsx(MenuItem,{value:S.value,children:S.label},S.value))]});if(T==="multi-select"){let S=Array.isArray(h)?h:[],A=e.options?.filter(P=>P.label.toLowerCase().includes(u.toLowerCase()))||[];return jsxs(TextField,{...R,select:true,label:e.label,value:S,onChange:P=>o({...t,value:P.target.value,operator:"anyOf"}),SelectProps:{...R.SelectProps,multiple:true,onClose:()=>{v(""),C("");},renderValue:P=>{if(!Array.isArray(P)||P.length===0)return jsx("em",{children:r("common.none")});let M=Z=>e.options?.find(N=>N.value===Z)?.label||Z,B=P.map(M);return B.length>2?`${B.slice(0,2).join(", ")} +${B.length-2}`:B.join(", ")}},children:[jsx(ListSubheader,{children:jsx(TextField,{size:"small",autoFocus:true,placeholder:r("smartFilter.searchPlaceholder"),fullWidth:true,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(bu,{fontSize:"small"})}),sx:{fontSize:Ot}},value:b,onChange:P=>v(P.target.value),onKeyDown:P=>{P.key!=="Escape"&&P.stopPropagation();},onClick:P=>P.stopPropagation()})}),A.length>0?A.map(P=>jsxs(MenuItem,{value:P.value,children:[jsx(Checkbox,{checked:S.indexOf(P.value)>-1,size:"small"}),jsx(ListItemText,{primary:P.label,primaryTypographyProps:{fontSize:Ot}})]},P.value)):jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:r("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:Ot}})})]})}let I=T==="number"?Ip:Kx,k=f||h!==void 0&&h!==""&&h!==null||!!a;return jsxs(Fragment,{children:[jsx(TextField,{...R,label:e.label,sx:{minWidth:"120px"},value:h||"",type:T==="number"?"number":"text",onChange:S=>o({...t,value:S.target.value,operator:p}),onFocus:()=>m(true),onBlur:()=>m(false),InputProps:{...R.InputProps,startAdornment:k?jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:x(p),children:jsx(IconButton,{size:"small",onClick:w,onMouseDown:S=>S.preventDefault(),sx:{width:24,height:24,fontSize:Ot,fontWeight:"bold",color:"primary.main",bgcolor:"action.hover"},children:Al[p]})})}):null,endAdornment:e.hasSearchIcon?jsx(InputAdornment,{position:"end",children:jsx(bu,{color:"action"})}):void 0}}),jsx(Menu,{anchorEl:a,open:!!a,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:Ot,minHeight:"auto",py:.5}}},children:I.map(S=>jsxs(MenuItem,{selected:S===p,onClick:()=>E(S),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Al[S]}),jsx(ListItemText,{primary:x(S),primaryTypographyProps:{fontSize:Ot}})]},S))})]})},Nr=({fields:e,filters:t,onFilterChange:o,variants:r=[],currentVariantId:a,onVariantLoad:n,onVariantSave:i,onVariantDelete:s,onVariantSetDefault:d,onSearch:l,loading:c=false,appId:g,tableKey:f,currentLayout:m,currentLayoutId:b,layoutRefs:v,variantService:u,serviceUrl:C})=>{let{t:p}=oe(),[h,x]=useState(true),[w,E]=useState(null),[R,T]=useState(e.filter(A=>!A.hidden).map(A=>A.id)),I=(A,P)=>{o({...t,[A]:P});},k=A=>{R.includes(A)?T(R.filter(P=>P!==A)):T([...R,A]);};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(xp,{appId:g,tableKey:f,currentFilters:{values:t,visibleFields:R},currentLayout:m,currentLayoutId:b,layoutRefs:v,onLoad:A=>{if(!A.filters)return;let P=null;if(Array.isArray(A.filters)){let M=f||"default",B=A.filters.find(Z=>Z.scope===M);P=B?B.filters:null;}else P=A.filters;P&&(P.values||P.visibleFields?(P.visibleFields&&Array.isArray(P.visibleFields)&&T(P.visibleFields),P.values&&o(P.values)):o(P)),n&&n(A);},variantService:u,serviceUrl:C,currentVariantId:a}):jsx(Rl,{variants:r,currentVariantId:a,onLoad:n,onSave:A=>{i&&i({...A,filters:{values:t,visibleFields:R}});},onDelete:s,onSetDefault:d}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:p("smartFilter.addFilters"),children:jsx(Button,{onClick:A=>E(A.currentTarget),size:"small",color:"primary",startIcon:jsx(Hx,{fontSize:"small"}),sx:{textTransform:"none",fontSize:Ot,whiteSpace:"nowrap",minWidth:"fit-content"},children:p("smartFilter.adaptFilters")})}),jsx(Button,{variant:"contained",size:"small",onClick:l,disabled:c,sx:{minWidth:"52px",fontWeight:"bold",fontSize:Ot},children:p(c?"common.loading":"smartFilter.go")}),jsxs(Menu,{anchorEl:w,open:!!w,onClose:()=>E(null),slotProps:{paper:{style:{maxHeight:400,width:"25ch"},sx:{"& .MuiMenuItem-root":{fontSize:Ot,minHeight:32}}}},children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:p("smartFilter.visibleFilters"),primaryTypographyProps:{fontSize:Ot}})}),jsx(Divider,{}),e.map(A=>jsxs(MenuItem,{onClick:()=>k(A.id),children:[jsx(Checkbox,{checked:R.includes(A.id),size:"small"}),jsx(ListItemText,{primary:A.label,primaryTypographyProps:{fontSize:Ot}})]},A.id))]})]})]}),jsx(Collapse,{in:h,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(A=>R.includes(A.id)).map(A=>jsx(Grid,{size:1,children:jsx(_x,{field:A,value:t[A.id]||{value:"",operator:A.type==="number"?"=":"equals"},onChange:P=>I(A.id,P)})},A.id))})})}),jsx(Box,{sx:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",zIndex:10},children:jsx(IconButton,{size:"small",onClick:()=>x(!h),sx:{bgcolor:"background.paper",boxShadow:2,border:"1px solid",borderColor:"divider",width:30,height:30,minWidth:30,minHeight:0,p:0,"&:hover":{bgcolor:"background.paper"}},children:h?jsx(Wx,{sx:{fontSize:20},color:"action"}):jsx($b,{sx:{fontSize:20},color:"action"})})})]})};var Fp=({layouts:e,currentLayoutId:t,onLoad:o,onSave:r,onDelete:a,onSetDefault:n})=>{let{t:i}=oe(),[s,d]=useState(null),[l,c]=useState(false),[g,f]=useState(""),[m,b]=useState(""),[v,u]=useState({isDefault:false,isPublic:false}),C=e.find(R=>R.id===t),p=R=>{d(R.currentTarget);},h=()=>{d(null);},x=R=>{o(R),h();},w=()=>{f(""),b(""),u({isDefault:false,isPublic:false}),c(true),h();},E=()=>{g.trim()&&(r({name:g,description:m,...v}),c(false));};return jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:i("layout.saveLayout"),children:jsx(IconButton,{onClick:w,color:"primary",size:"small",children:jsx(Ep,{fontSize:"small"})})}),jsx(Tooltip,{title:i("layout.layoutOptions"),children:jsx(IconButton,{onClick:p,color:C?"primary":"default",size:"small",children:jsx(a0,{fontSize:"small"})})}),jsxs(Menu,{anchorEl:s,open:!!s,onClose:h,PaperProps:{sx:{width:320,maxHeight:400}},children:[jsx(MenuItem,{disabled:true,children:jsx(Typography,{variant:"caption",children:i("layout.selectLayout")})}),jsxs(MenuItem,{onClick:w,children:[jsx(ListItemIcon,{children:jsx(Ep,{fontSize:"small"})}),jsx(ListItemText,{children:i("layout.saveCurrentLayout")})]}),jsx(Divider,{}),e.length===0&&jsx(MenuItem,{disabled:true,children:jsx(Typography,{variant:"body2",color:"text.secondary",children:i("layout.noSavedLayouts")})}),e.map((R,T)=>jsx(MenuItem,{onClick:()=>x(R),selected:R.id===t,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%",justifyContent:"space-between"},children:[jsxs(Box,{sx:{display:"flex",flexDirection:"column",overflow:"hidden",mr:1},children:[jsx(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:jsx(Typography,{variant:"body2",fontWeight:R.id===t?"bold":"normal",noWrap:true,children:R.name})}),R.description&&jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:R.description})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center"},onClick:I=>I.stopPropagation(),children:[jsx(Tooltip,{title:R.isDefault?i("layout.removeDefault"):i("layout.setAsDefault"),children:jsx(IconButton,{size:"small",onClick:I=>{I.stopPropagation(),n(R.id);},children:R.isDefault?jsx(px,{fontSize:"small",color:"warning"}):jsx(r0,{fontSize:"small"})})}),jsx(Tooltip,{title:i("common.delete"),children:jsx(IconButton,{size:"small",color:"error",onClick:I=>{I.stopPropagation(),a(R.id);},children:jsx(xb,{fontSize:"small"})})})]})]})},R.id||T))]}),jsxs(Dialog,{open:l,onClose:()=>c(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:i("layout.saveLayout")}),jsx(DialogContent,{children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:2,mt:1},children:[jsx(TextField,{label:i("layout.layoutName"),value:g,onChange:R=>f(R.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:i("layout.layoutNameHelper")}),e.some(R=>R.name===g)&&jsx(Typography,{variant:"caption",color:"warning.main",sx:{ml:1},children:i("layout.warningOverwrite")}),jsx(TextField,{label:i("layout.layoutDescription"),value:m,onChange:R=>b(R.target.value),fullWidth:true,size:"small"}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:v.isDefault,onChange:R=>u({...v,isDefault:R.target.checked})}),label:i("layout.useAsDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:v.isPublic,onChange:R=>u({...v,isPublic:R.target.checked})}),label:i("layout.publicAllUsers")})]})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>c(false),children:i("common.cancel")}),jsx(Button,{onClick:E,variant:"contained",disabled:!g,children:i("common.save")})]})]})]})};var vn=({appId:e,tableKey:t="default",currentLayoutData:o,onLayoutLoad:r,targetLayoutId:a,activeLayoutId:n,serviceUrl:i,onError:s,onSuccess:d})=>{let{t:l}=oe(),[c,g]=useState([]),[f,m]=useState(""),b=`orbcafe.layouts.${e}.${t}`,v=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??{}}),u=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}),C=useCallback(()=>{try{let T=localStorage.getItem(b);if(!T)return [];let I=JSON.parse(T);return Array.isArray(I)?I:[]}catch{return []}},[b]),p=useCallback(T=>{try{localStorage.setItem(b,JSON.stringify(T));}catch{}},[b]);useEffect(()=>{n!==void 0&&m(n);},[n]),useEffect(()=>{if(a&&c.length>0){let T=c.find(I=>I.id===a);T&&(m(T.id),r(T));}},[a,c,r]);let h=useCallback(async()=>{if(e){if(!i){let T=C();g(T);let I=T.find(k=>k.isDefault);I&&!f&&!a&&(m(I.id),r(I));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 k=(await T.json()).map(v);g(k);let S=k.find(A=>A.isDefault);S&&!f&&!a&&(m(S.id),r(S));}catch(T){console.error("Error fetching layouts",T);let I=C();g(I);let k=I.find(S=>S.isDefault);k&&!f&&!a&&(m(k.id),r(k)),s&&s(l("layout.toast.loadFallback"));}}},[e,t,i,s,f,r,a,C,l]);return useEffect(()=>{h();},[e,t]),jsx(Fp,{layouts:c,currentLayoutId:f,onLoad:T=>{m(T.id),r(T);},onSave:async T=>{let I=c.find(A=>A.name===T.name),k=I?I.id:Date.now().toString(),S={id:k,...T,createdAt:new Date().toISOString(),layoutData:o,isDefault:T.isDefault??false,isPublic:T.isPublic??false};if(!i){let P=c.some(M=>M.id===k)?c.map(M=>M.id===k?S:M):[...c,S];g(P),p(P),m(k),r(S),d&&d(l("layout.toast.saveLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u(S))})).ok)throw new Error("LAYOUT_SAVE_FAILED");d&&d(l("layout.toast.saveSuccess")),await h(),m(k),r(S);}catch(A){console.error("Error saving layout",A);let M=c.some(B=>B.id===k)?c.map(B=>B.id===k?S:B):[...c,S];g(M),p(M),m(k),r(S),d&&d(l("layout.toast.saveLocalSuccess")),s&&s(l("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async T=>{if(!i){let I=c.filter(k=>k.id!==T);g(I),p(I),f===T&&m(""),d&&d(l("layout.toast.deleteLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts/${encodeURIComponent(T)}`,{method:"DELETE"})).ok)throw new Error("LAYOUT_DELETE_FAILED");f===T&&m(""),d&&d(l("layout.toast.deleteSuccess")),await h();}catch(I){console.error("Error deleting layout",I);let k=c.filter(S=>S.id!==T);g(k),p(k),f===T&&m(""),d&&d(l("layout.toast.deleteLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async T=>{if(!i){let I=c.map(k=>({...k,isDefault:k.id===T}));g(I),p(I),d&&d(l("layout.toast.defaultLocalSuccess"));return}try{let I=c.find(S=>S.id===T);if(!I)return;if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u({...I,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");d&&d(l("layout.toast.defaultSuccess")),await h();}catch(I){console.error("Error setting default",I);let k=c.map(S=>({...S,isDefault:S.id===T}));g(k),p(k),d&&d(l("layout.toast.defaultLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDefaultLocal"));}}})};var Np=(e,t)=>{if(!e||!e.filters)return null;if(Array.isArray(e.filters)){let o=e.filters.find(a=>a.scope===t);if(o)return o.filters;let r=e.filters.find(a=>a.scope==="default");return r?r.filters:null}return typeof e.filters=="object"?e.filters:null},Ll=(e,t)=>{if(!e)return {layout:null,layoutId:null};let o=null,r=null;if(Array.isArray(e.layoutRefs)){let a=e.layoutRefs.find(n=>n.tableKey===t);a&&(o=a.layoutId);}return !o&&e.layoutId&&(o=e.layoutId),e.layout&&typeof e.layout=="object"&&!Array.isArray(e.layout)&&(r=e.layout),{layoutId:o,layout:r}};function zp(e,t,o){return t[o]<e[o]?-1:t[o]>e[o]?1:0}function i0(e,t){return e==="desc"?(o,r)=>zp(o,r,t):(o,r)=>-zp(o,r,t)}function l0(e,t){let o=e.map((r,a)=>[r,a]);return o.sort((r,a)=>{let n=t(r[0],a[0]);return n!==0?n:r[1]-a[1]}),o.map(r=>r[0])}var Cn=e=>{let t=useCallback(z=>{let $=String(z?.label??z?.id??"").length*9+64,le=typeof z?.minWidth=="number"?z.minWidth:0;return Math.max(100,le,$)},[]),o=useCallback(()=>(e.columns||[]).filter(z=>!!z?.numeric).map(z=>z.id),[e.columns]),[r,a]=useState(""),[n,i]=useState(e.order||"asc"),[s,d]=useState(e.orderBy||""),[l,c]=useState([]),[g,f]=useState(e.page||0),[m,b]=useState(e.rowsPerPage||20),[v,u]=useState(e.selected||[]),[C,p]=useState(e.columns?e.columns.map(z=>z.id):[]),[h,x]=useState(e.columns?e.columns.map(z=>z.id):[]),[w,E]=useState(e.showSummary||false),[R,T]=useState(()=>o()),[I,k]=useState([]),[S,A]=useState(new Set),[P,M]=useState(()=>{let z={};return (e.columns||[]).forEach(O=>{z[O.id]=t(O);}),z}),[B,Z]=useState(null),[N,V]=useState(null),[X,j]=useState(null),[H,ee]=useState(null),[pe,De]=useState(false),[xe,se]=useState(""),[te,Ie]=useState("");useEffect(()=>{e.layout&&oo(e.layout);},[e.layout]),useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&d(e.orderBy);},[e.order,e.orderBy]),useEffect(()=>{e.selected!==void 0&&u(e.selected);},[e.selected]),useEffect(()=>{e.page!==void 0&&f(e.page);},[e.page]),useEffect(()=>{e.rowsPerPage!==void 0&&b(e.rowsPerPage);},[e.rowsPerPage]),useEffect(()=>{let z=o();T(O=>O.filter(le=>z.includes(le)));},[o]),useEffect(()=>{M(z=>{let O={...z};return (e.columns||[]).forEach($=>{O[$.id]===void 0&&(O[$.id]=t($));}),O});},[e.columns,t]),useEffect(()=>{x(z=>{let O=(e.columns||[]).map(Ae=>Ae.id),$=new Set(O),le=z.filter(Ae=>$.has(Ae)),de=new Set(le),Te=O.filter(Ae=>!de.has(Ae)),Ce=[...le,...Te];return Ce.length===z.length&&Ce.every((Ae,Ge)=>Ae===z[Ge])?z:Ce});},[e.columns]);let Ye=useMemo(()=>{let z=e.columns||[];if(h.length===0)return z;let O=new Map(z.map(de=>[de.id,de])),$=[],le=new Set;return h.forEach(de=>{let Te=O.get(de);Te&&($.push(Te),le.add(de));}),z.forEach(de=>{le.has(de.id)||$.push(de);}),$},[e.columns,h]),Ue=useMemo(()=>{let z=e.rows||[];return r&&(z=z.filter(O=>Object.keys(O).some($=>String(O[$]).toLowerCase().includes(r.toLowerCase())))),z},[e.rows,r]),be=useMemo(()=>{if(e.onSortChange)return Ue;if(l.length>0){let z=[...Ue];return z.sort((O,$)=>{for(let le of l){let de=O?.[le.field],Te=$?.[le.field];if(!(de==null&&Te==null)){if(de==null)return le.direction==="asc"?-1:1;if(Te==null)return le.direction==="asc"?1:-1;if(de<Te)return le.direction==="asc"?-1:1;if(de>Te)return le.direction==="asc"?1:-1}}return 0}),z}return s?l0(Ue,i0(n,s)):Ue},[Ue,n,s,l,e.onSortChange]),Ke=useCallback(z=>{if(I.length===0)return z.map(Te=>({type:"row",data:Te,id:Te[e.rowKey||"id"]}));let O=[...z].sort((Te,Ce)=>{for(let Ae of I){if(Te[Ae]<Ce[Ae])return -1;if(Te[Ae]>Ce[Ae])return 1}return 0}),$=(Te,Ce=0)=>{if(Ce>=I.length)return Te;let Ae=I[Ce],Ge={},Mt=[];return Te.forEach(vt=>{let Pt=vt[Ae],bt=`${Ae}:${Pt}`;Ge[bt]||(Ge[bt]={key:bt,field:Ae,value:Pt,children:[],count:0,level:Ce},Mt.push(Ge[bt])),Ge[bt].children.push(vt),Ge[bt].count++;}),Mt.forEach(vt=>{vt.children&&(vt.children=$(vt.children,Ce+1));}),Mt},le=$(O),de=(Te,Ce="")=>{let Ae=[];return Te.forEach(Ge=>{if(Ge.children){let Mt=Ce?`${Ce}>${Ge.key}`:Ge.key,vt=S.has(Mt);Ae.push({type:"group",id:Mt,field:Ge.field,value:Ge.value,level:Ge.level,count:Ge.count,isExpanded:vt,childIds:(function Pt(bt){let Po=[];return bt.children.forEach(qt=>{qt.children?Po=Po.concat(Pt(qt)):Po.push(qt[e.rowKey||"id"]);}),Po})(Ge)}),vt&&(Ae=Ae.concat(de(Ge.children,Mt)));}else Ae.push({type:"row",data:Ge,id:Ge[e.rowKey||"id"],level:I.length});}),Ae};return de(le)},[I,S,e.rowKey]),lt=useCallback(z=>{if(I.length===0)return [];let O=[...z].sort((de,Te)=>{for(let Ce of I){if(de[Ce]<Te[Ce])return -1;if(de[Ce]>Te[Ce])return 1}return 0}),$=[],le=(de,Te,Ce)=>{if(Te>=I.length)return;let Ae=I[Te],Ge=new Map;de.forEach(Mt=>{let vt=Mt[Ae],Pt=Ge.get(vt);Pt?Pt.push(Mt):Ge.set(vt,[Mt]);}),Ge.forEach((Mt,vt)=>{let Pt=`${Ae}:${vt}`,bt=Ce?`${Ce}>${Pt}`:Pt;$.push(bt),le(Mt,Te+1,bt);});};return le(O,0,""),$},[I]),Ee=useMemo(()=>Ke(be),[be,Ke]),Oe=useMemo(()=>lt(be),[be,lt]),qe=useMemo(()=>{let z=(e.rows||[]).length;return typeof e.count=="number"&&e.count>z},[e.count,e.rows]),pt=useMemo(()=>qe?Ee:m>0?Ee.slice(g*m,g*m+m):Ee,[Ee,g,m,qe]),$e=useMemo(()=>qe&&typeof e.count=="number"?e.count:Ee.length,[Ee.length,qe,e.count]),q=z=>{A(O=>{let $=new Set(O);return $.has(z)?$.delete(z):$.add(z),$});},Le=z=>{let O=Oe.filter($=>$===z||$.startsWith(`${z}>`));A($=>{let le=new Set($);return O.forEach(de=>le.add(de)),le});},ve=z=>{A(O=>{let $=new Set(O);return Array.from($).forEach(le=>{(le===z||le.startsWith(`${z}>`))&&$.delete(le);}),$});},Pe=z=>{if(!z){A(new Set);return}A(new Set(Oe));},at=z=>{let O=Oe.filter($=>$.startsWith(`${z}>`));return O.length===0?S.has(z):S.has(z)&&O.every($=>S.has($))},We=z=>{l.length>0&&c([]);let O=s===z&&n==="asc",$=s===z&&n==="desc";if(e.onSortChange){O?e.onSortChange(z,"desc"):$?e.onSortChange("","asc"):e.onSortChange(z,"asc");return}O?(i("desc"),d(z)):$?(i("asc"),d("")):(i("asc"),d(z));},re=z=>{let O=z.filter($=>$&&$.field);c(O),O.length>0&&d("");},ke=()=>{c([]);},je=(z,O)=>{M($=>({...$,[z]:O}));},St=z=>{if(z.target.checked){let O=Ue.map($=>$[e.rowKey||"id"]);u(O),e.onSelectionChange&&e.onSelectionChange(O);return}u([]),e.onSelectionChange&&e.onSelectionChange([]);},K=(z,O)=>{let $=O[e.rowKey||"id"],le=v.indexOf($),de=[];le===-1?de=de.concat(v,$):le===0?de=de.concat(v.slice(1)):le===v.length-1?de=de.concat(v.slice(0,-1)):le>0&&(de=de.concat(v.slice(0,le),v.slice(le+1))),u(de),e.onSelectionChange&&e.onSelectionChange(de);},Fe=z=>{f(z),e.onPageChange&&e.onPageChange(z);},ye=z=>{b(z),f(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(z);},st=z=>{let O=C.indexOf(z),$=[...C];O===-1?$.push(z):$.splice(O,1),p($);},W=z=>{let O=I.indexOf(z),$=[...I];O===-1?$.push(z):$.splice(O,1),k($);},ue=z=>{o().includes(z)&&T($=>$.includes(z)?$.filter(le=>le!==z):[...$,z]);},_e=(z,O)=>{!z||!O||z===O||x($=>{let le=$.indexOf(z),de=$.indexOf(O);if(le===-1||de===-1)return $;let Te=[...$];return Te.splice(le,1),Te.splice(de,0,z),Te});},Qe=z=>{let O=z?.active?.id,$=z?.over?.id;typeof O=="string"&&typeof $=="string"&&_e(O,$);},mt=z=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:C,columnOrder:h,order:n,orderBy:s,sortBy:l,grouping:I,columnWidths:P,showSummary:w,summaryColumns:R});},yt=z=>{let{layout:O,layoutId:$}=Ll(z,e.tableKey||"default");$?(Ie($),se($)):(Ie(""),se("")),O&&(O.visibleColumns&&p(O.visibleColumns),Array.isArray(O.columnOrder)&&x(O.columnOrder),O.order&&i(O.order),O.orderBy&&d(O.orderBy),Array.isArray(O.sortBy)&&c(O.sortBy),O.grouping&&k(O.grouping),O.columnWidths&&M(O.columnWidths),O.showSummary!==void 0&&E(!!O.showSummary),Array.isArray(O.summaryColumns)&&T(O.summaryColumns));},oo=z=>{let O=z?.layoutData||z?.layout||z||{};O.visibleColumns&&p(O.visibleColumns),Array.isArray(O.columnOrder)&&x(O.columnOrder),O.order&&i(O.order),O.orderBy!==void 0&&d(O.orderBy),Array.isArray(O.sortBy)&&c(O.sortBy),O.grouping&&k(O.grouping),O.columnWidths&&M(O.columnWidths),O.showSummary!==void 0&&E(!!O.showSummary),Array.isArray(O.summaryColumns)&&T(O.summaryColumns),A(new Set),f(0),z?.id&&se(z.id),Ie("");};useEffect(()=>{e.layout&&yt({layout:e.layout});},[e.layout]);let xo=z=>{z.preventDefault(),ee(H===null?{mouseX:z.clientX+2,mouseY:z.clientY-6}:null);},xt=()=>{ee(null);},nr=useMemo(()=>{if(!w)return {};let z={};e.columns.forEach($=>{if($.numeric&&R.includes($.id)){let le=Ue.reduce((de,Te)=>{let Ce=parseFloat(Te[$.id]);return de+(isNaN(Ce)?0:Ce)},0);z[$.id]=le.toFixed(2);}else z[$.id]="";});let O=e.columns.find($=>C.includes($.id));return O&&!O.numeric&&(z[O.id]="Total"),z},[Ue,e.columns,w,R,C]),Rt=()=>{if(!e.columns||!Ue)return;let z=e.columns.map(Te=>Te.label).join(","),O=Ue.map(Te=>e.columns.map(Ce=>{let Ae=Te[Ce.id];return `"${(Ae==null?"":String(Ae)).replace(/"/g,'""')}"`}).join(",")).join(`
2
+ `),$=`data:text/csv;charset=utf-8,${z}
3
+ ${O}`,le=encodeURI($),de=document.createElement("a");de.setAttribute("href",le),de.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(de),de.click(),document.body.removeChild(de);},ir=()=>{De(true);},ro=()=>{De(false);};return {isMobile:false,columns:Ye,order:n,setOrder:i,orderBy:s,setOrderBy:d,sortBy:l,setSortBy:c,applyMultiSort:re,clearMultiSort:ke,columnOrder:h,setColumnOrder:x,filterText:r,setFilterText:a,visibleColumns:C,setVisibleColumns:p,showSummary:w,setShowSummary:E,summaryColumns:R,grouping:I,setGrouping:k,expandedGroups:S,setExpandedGroups:A,groupAnchorEl:N,setGroupAnchorEl:V,summaryAnchorEl:X,setSummaryAnchorEl:j,columnWidths:P,setColumnWidths:M,anchorEl:B,setAnchorEl:Z,contextMenu:H,setContextMenu:ee,sensors:void 0,sortedAndFilteredRows:be,visibleRows:pt,summaryRow:nr,page:g,setPage:Fe,rowsPerPage:m,setRowsPerPage:ye,totalDisplayCount:$e,selected:v,setSelected:u,isAllExpanded:Oe.length>0&&Oe.every(z=>S.has(z)),handleColumnResize:je,handleRequestSort:We,handleSelectAllClick:St,handleClick:K,toggleSummaryColumn:ue,handleDragEnd:Qe,handleColumnReorder:_e,handleExport:Rt,handleContextMenu:xo,handleCloseContextMenu:xt,toggleColumnVisibility:st,toggleGroupExpand:q,toggleGroupField:W,handleToggleAll:Pe,handleExpandGroupRecursively:Le,handleCollapseGroupRecursively:ve,isGroupFullyExpanded:at,handleLayoutLoad:oo,handleVariantLoad:yt,handleLayoutSave:mt,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:C,order:n,orderBy:s,sortBy:l,columnOrder:h,grouping:I,columnWidths:P,showSummary:w,summaryColumns:R},currentLayoutId:xe,layoutIdToLoad:te,onPageChange:Fe,onRowsPerPageChange:ye,graphReportOpen:pe,handleOpenGraphReport:ir,handleCloseGraphReport:ro}};var h2=e=>jsx(d0,{...e}),b2=e=>jsx(cc,{...e}),y2=e=>jsx(Up,{...e}),x2=e=>jsx(Tb,{...e}),v2=e=>jsx(Ib,{...e}),ca=e=>{let{t}=oe(),o="0.85rem",{title:r,showToolbar:a=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:d,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:m=false,rowsPerPageOptions:b=[20,50,100,-1],onLayoutSave:v,filterConfig:u,rowKey:C,tableKey:p="default",graphReport:h,quickCreate:x,quickEdit:w,quickDelete:E,serviceUrl:R}=e,T=r||t("table.title.default"),{isMobile:I,columns:k,order:S,orderBy:A,filterText:P,setFilterText:M,visibleColumns:B,showSummary:Z,setShowSummary:N,summaryColumns:V,grouping:X,setGrouping:j,expandedGroups:H,groupAnchorEl:ee,setGroupAnchorEl:pe,summaryAnchorEl:De,setSummaryAnchorEl:xe,columnWidths:se,anchorEl:te,setAnchorEl:Ie,contextMenu:Ye,sensors:Ue,sortedAndFilteredRows:be,summaryRow:Ke,visibleRows:lt,isAllExpanded:Ee,page:Oe,setPage:qe,rowsPerPage:pt,setRowsPerPage:$e,totalDisplayCount:q,setSelected:Le,handleColumnResize:ve,handleRequestSort:Pe,handleSelectAllClick:at,handleClick:We,toggleSummaryColumn:re,handleDragEnd:ke,handleExport:je,handleContextMenu:St,handleCloseContextMenu:K,toggleColumnVisibility:Fe,toggleGroupExpand:ye,toggleGroupField:st,handleToggleAll:W,handleExpandGroupRecursively:ue,handleCollapseGroupRecursively:_e,isGroupFullyExpanded:Qe,handleLayoutLoad:mt,handleVariantLoad:yt,handleLayoutSave:oo,effectiveAppId:xo,currentLayoutData:xt,currentLayoutId:nr,layoutIdToLoad:Rt,graphReportOpen:ir,handleOpenGraphReport:ro,handleCloseGraphReport:z}=Cn(e),O=h?.enabled??false,$=O&&(h?.interaction?.enabled??true),le=Il(),de=!!x?.enabled,Te=!!w?.enabled,Ce=!!E?.enabled,Ae=x?.fields,Ge=x?.excludeFields||[],Mt=x?.initialValues||{},[vt,Pt]=Kt__default.useState(false),[bt,Po]=Kt__default.useState(false),[qt,zt]=Kt__default.useState({}),[vo,jt]=Kt__default.useState(false),[nt,qo]=Kt__default.useState(false),[Eo,jo]=Kt__default.useState({}),[D,_]=Kt__default.useState(false),[Q,ce]=Kt__default.useState(false),Be=m||bt||nt||Q,He=Kt__default.useMemo(()=>{let G=[...k];if(Array.isArray(Ae)&&Ae.length>0){let ie=new Set(Ae);G=G.filter(ne=>ie.has(ne.id));}if(Ge.length>0){let ie=new Set(Ge);G=G.filter(ne=>!ie.has(ne.id));}return G.filter(ie=>!!ie?.id)},[k,Ge,Ae]),rt=C||"id",ge=Kt__default.useMemo(()=>{let G=new Set(i);return be.filter(ie=>G.has(ie?.[rt]))},[i,be,rt]),Je=ge.length===1?ge[0]:null,ct=w?.fields,Dt=w?.excludeFields||[],dt=w?.editableFields||[],Jt=w?.nonEditableFields||[],ao=w?.primaryKeys?.length?w.primaryKeys:[rt],Co=Kt__default.useMemo(()=>{let G=[...k];if(Array.isArray(ct)&&ct.length>0){let ie=new Set(ct);G=G.filter(ne=>ie.has(ne.id));}if(Dt.length>0){let ie=new Set(Dt);G=G.filter(ne=>!ie.has(ne.id));}return G.filter(ie=>!!ie?.id)},[k,Dt,ct]),$t=Kt__default.useMemo(()=>new Set(ao),[ao]),no=Kt__default.useMemo(()=>new Set(dt),[dt]),Ct=Kt__default.useMemo(()=>new Set(Jt),[Jt]),Zt=Kt__default.useCallback(G=>no.size>0?no.has(G):!(Ct.has(G)||$t.has(G)),[no,Ct,$t]);Kt__default.useEffect(()=>{!ir&&le.hasActiveFilters&&le.clearAll();},[ir,le.hasActiveFilters,le.clearAll]);let yr=()=>{let G={};He.forEach(ie=>{G[ie.id]=Mt[ie.id]??"";}),zt(G),Pt(true);},Zo=()=>{bt||Pt(false);},Ya=(G,ie)=>{zt(ne=>({...ne,[G]:ie}));},Qa=async()=>{if(!x?.onSubmit){Pt(false);return}try{Po(!0),await x.onSubmit(qt),Pt(!1);}finally{Po(false);}},Ja=()=>{if(!Je)return;let G={};Co.forEach(ne=>{G[ne.id]=Je[ne.id]??"";});let ie=w?.getInitialValues?{...G,...w.getInitialValues(Je)}:G;jo(ie),jt(true);},Fo=()=>{nt||jt(false);},en=(G,ie)=>{jo(ne=>({...ne,[G]:ie}));},tn=async()=>{if(Je){if(!w?.onSubmit){jt(false);return}try{qo(!0),await w.onSubmit(Eo,Je),jt(!1);}finally{qo(false);}}},Ca=()=>{ge.length!==0&&_(true);},Br=()=>{Q||_(false);},Qr=async()=>{if(ge.length===0){_(false);return}if(!E?.onConfirm){_(false),Le([]),s?.([]);return}try{ce(!0),await E.onConfirm(ge),_(!1),Le([]),s?.([]);}finally{ce(false);}},Jr=be,{fieldMapping:y}=fn({rows:Jr,config:{...h,title:h?.title||`${T} ${t("graph.reportTitle")}`}}),F=Kt__default.useMemo(()=>$?le.applyRows(Jr,y):Jr,[$,le.applyRows,Jr,y]),{model:L}=fn({rows:F,config:{...h,title:h?.title||`${T} ${t("graph.reportTitle")}`,fieldMapping:y}}),Y=L.table.columns.map(G=>({id:G.id,label:G.label,align:G.align||"left",minWidth:120,numeric:G.align==="right"})),he=xo?jsx(vn,{appId:xo,tableKey:p,currentLayoutData:xt,onLayoutLoad:mt,targetLayoutId:Rt,activeLayoutId:nr,serviceUrl:R??u?.serviceUrl}):null,Ve=jsxs(Fragment,{children:[jsx(rn,{groupAnchorEl:ee,setGroupAnchorEl:pe,grouping:X,setGrouping:j,columns:k,toggleGroupField:st}),jsx(an,{anchorEl:te,setAnchorEl:Ie,columns:k,visibleColumns:B,toggleColumnVisibility:Fe}),jsx(ll,{anchorEl:De,setAnchorEl:xe,showSummary:Z,setShowSummary:N,columns:k,summaryColumns:V,toggleSummaryColumn:re}),jsx(sl,{contextMenu:Ye,handleCloseContextMenu:K,columns:k,visibleColumns:B,toggleColumnVisibility:Fe})]});return I?jsxs(vi,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[u&&jsx(Nr,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:u.onVariantLoad,onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,appId:u.appId,tableKey:p,currentLayout:[{tableKey:p,layoutData:xt}],variantService:u.variantService,serviceUrl:R??u.serviceUrl}),jsx(Du,{title:T,loading:m,showSummary:Z,setShowSummary:N,setAnchorEl:Ie,setSummaryAnchorEl:xe,filterText:P,setFilterText:M,sortedAndFilteredRows:be,selected:i,columns:k,visibleColumns:B,summaryRow:Ke,handleClick:We,selectionMode:n}),Ve]}):jsxs(vi,{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(vi,{sx:{mb:2},children:jsx(Nr,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:G=>{yt(G),u.onVariantLoad&&u.onVariantLoad(G);},onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,loading:m,appId:u.appId,tableKey:p,currentLayout:[{tableKey:p,layoutData:xt}],currentLayoutId:nr,layoutRefs:[{tableKey:p,layoutId:nr}],variantService:u.variantService,serviceUrl:R??u.serviceUrl})}),jsxs(s0,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative","&::before":Be?{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:[a&&jsx(ol,{filterText:P,setFilterText:M,onRowsPerPageChange:$e,rowsPerPage:pt,rowsPerPageOptions:b,page:Oe,count:q,onPageChange:qe,actions:d,extraTools:l,grouping:X,setGroupAnchorEl:pe,showSummary:Z,setShowSummary:N,setAnchorEl:Ie,setSummaryAnchorEl:xe,handleExport:je,showCreateButton:de,onOpenCreateDialog:yr,showEditButton:Te,onOpenEditDialog:Ja,editDisabled:ge.length!==1,showDeleteButton:Ce,onOpenDeleteConfirm:Ca,deleteDisabled:ge.length===0,onLayoutSave:v||u?.variantService&&u?.appId?oo:void 0,loading:m,layoutManager:he,onOpenGraphReport:O?ro:void 0}),jsx(Up,{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:Ue,collisionDetection:closestCenter,onDragEnd:ke,modifiers:[restrictToHorizontalAxis],children:jsxs(c0,{sx:{minWidth:g?750:"auto",width:g?"100%":"auto",tableLayout:Object.keys(se).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:o}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsx(al,{columns:k,visibleColumns:B,order:S,orderBy:A,onRequestSort:Pe,onContextMenu:St,selectionMode:n,grouping:X,isAllExpanded:Ee,handleToggleAll:W,rowCount:be.length,numSelected:i.length,onSelectAllClick:at,columnWidths:se,onColumnResize:ve}),jsx(Pu,{visibleRows:lt,columns:k,visibleColumns:B,selectionMode:n,selected:i,orderBy:A,loading:m,expandedGroups:H,toggleGroupExpand:ye,handleExpandGroupRecursively:ue,handleCollapseGroupRecursively:_e,isGroupFullyExpanded:Qe,handleClick:We,onSelectionChange:s,grouping:X,rowKeyProp:C,page:Oe,rowsPerPage:pt}),Z&&jsx(Ru,{showSummary:Z,columns:k,visibleColumns:B,summaryRow:Ke,selectionMode:n?.toString(),grouping:X,orderBy:A,zIndex:3})]})})})]}),de&&jsxs(Op,{open:vt,onClose:Zo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:G=>`1px solid ${G.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Vp,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:x?.title||t("quickCreate.createWithTitle",{title:T})}),jsx(Hp,{sx:{pt:"8px !important"},children:jsxs(vi,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[He.map(G=>{let ie=G.type==="number"||G.numeric?"number":G.type==="date"?"date":"text",ne=G.label||G.id;return jsx($p,{label:ne,value:qt[G.id]??"",onChange:wt=>Ya(G.id,wt.target.value),type:ie,size:"small",fullWidth:true,InputLabelProps:{shrink:ie==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${G.id}`)}),x?.description&&jsx(Gp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:x.description})]})}),jsxs(Wp,{sx:{px:3,pb:2},children:[jsx(zl,{onClick:Zo,sx:{fontSize:"0.85rem"},disabled:bt,children:x?.cancelLabel||t("common.cancel")}),jsx(zl,{onClick:Qa,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:bt,children:x?.submitLabel||t("common.save")})]})]}),Te&&jsxs(Op,{open:vo,onClose:Fo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:G=>`1px solid ${G.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Vp,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:w?.title||t("quickEdit.editWithTitle",{title:T})}),jsx(Hp,{sx:{pt:"8px !important"},children:jsxs(vi,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Co.map(G=>{let ie=G.type==="number"||G.numeric?"number":G.type==="date"?"date":"text",ne=G.label||G.id,wt=Zt(G.id);return jsx($p,{label:ne,value:Eo[G.id]??"",onChange:U=>en(G.id,U.target.value),type:ie,size:"small",fullWidth:true,disabled:!wt,InputLabelProps:{shrink:ie==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${G.id}`)}),w?.description&&jsx(Gp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:w.description})]})}),jsxs(Wp,{sx:{px:3,pb:2},children:[jsx(zl,{onClick:Fo,sx:{fontSize:"0.85rem"},disabled:nt,children:w?.cancelLabel||t("common.cancel")}),jsx(zl,{onClick:tn,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:nt||!Je,children:w?.submitLabel||t("common.save")})]})]}),Ce&&jsx(ti,{open:D,type:"warning",title:E?.title||t("quickDelete.confirmTitle"),message:E?.message||(ge.length>1?t("quickDelete.confirmMessageMultiple",{count:ge.length}):t("quickDelete.confirmMessageSingle")),confirmText:E?.confirmText||t("common.delete"),cancelText:E?.cancelText||t("common.cancel"),onClose:Br,onConfirm:Qr}),Ve,O&&jsx(wl,{open:ir,onClose:z,model:L,aiAssistant:h?.aiAssistant,interaction:$?{enabled:true,filters:le.filters,fieldMapping:y,onPrimaryDimensionClick:G=>le.setFilter("primaryDimension",G),onSecondaryDimensionClick:G=>le.setFilter("secondaryDimension",G),onStatusClick:G=>le.setFilter("status",G),onClearFilter:le.clearFilter,onClearAll:le.clearAll}:void 0,tableContent:jsx(ca,{appId:xo||"graph-report-internal",title:t("graph.dataBody"),columns:Y,rows:L.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},C2=ca;var R2=({id:e,title:t,hideHeader:o=true,filterConfig:r,tableProps:a,children:n,spacing:i=1,mode:s="separated"})=>{let d=r?{...r,appId:r.appId||e}:void 0,l={...a,appId:a.appId||e};return jsxs(ku,{title:t,hideHeader:o,children:[jsxs(Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[s==="separated"&&d&&jsx(Box,{sx:{flexShrink:0},children:jsx(Nr,{...d})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsx(ca,{...l,fitContainer:true,filterConfig:s==="integrated"?d:void 0})})]}),n]})};var F2=({metadata:e,fetchData:t,initialRowsPerPage:o=20,rowsPerPageOptions:r=[20,50,100,-1],tableKey:a="default",mode:n="integrated",serviceUrl:i,variantService:s})=>{let{t:d}=oe(),[l,c]=useState(false),[g,f]=useState([]),[m,b]=useState({}),[v,u]=useState(e.variants||[]),[C,p]=useState(e.layout||null),[h,x]=useState(""),[w,E]=useState(0),[R,T]=useState(0),[I,k]=useState(o),[S,A]=useState([]),[P,M]=useState("asc"),[B,Z]=useState("");useEffect(()=>{let se={};e.filters.forEach(te=>{te.defaultValue!==void 0&&(se[te.id]=te.defaultValue);}),b(se);},[e.filters]);let N=useCallback(async(se,te,Ie,Ye,Ue)=>{c(true);try{let be={...se,page:te+1,limit:Ie,sort:Ue,order:Ye},Ke;t?Ke=await t(be):typeof e.api=="function"?Ke=await e.api(be):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,be),Ke={rows:[],total:0}):(console.warn("No API configured for report"),Ke={rows:[],total:0}),Ke&&(f(Ke.rows||[]),E(Ke.total||0));}catch(be){console.error("Failed to fetch report data",be);}finally{c(false);}},[e.api,t]);useEffect(()=>{N(m,R,I,P,B);},[N,R,I,P,B]);let V=()=>{T(0),N(m,0,I,P,B);},X=se=>{T(0),k(se);},j=(se,te)=>{M(te),Z(se);},H=se=>{b(se);},ee=se=>{x(se?.id||"");let te=Np(se,a);if(te){let Ye=te.values??te;b(Ye),N(Ye,0,I,P,B),T(0);}let{layout:Ie}=Ll(se,a);Ie&&p(Ie);},pe=se=>{let te={...se,id:Date.now().toString(),createdAt:new Date().toISOString()};u(Ie=>[...Ie,te]);},De=se=>{p(se);};return {pageProps:{id:e.id,title:e.title,mode:n,filterConfig:{appId:e.id,tableKey:a,fields:e.filters,filters:m,onFilterChange:H,onSearch:V,onVariantLoad:ee,onVariantSave:pe,onVariantDelete:se=>u(te=>te.filter(Ie=>Ie.id!==se)),onVariantSetDefault:se=>{u(te=>te.map(Ie=>({...Ie,isDefault:Ie.id===se})));},variants:v,currentVariantId:h,variantService:s,serviceUrl:i},tableProps:{appId:e.id,tableKey:a,columns:e.columns,rows:g,loading:l,rowKey:"id",count:w,page:R,rowsPerPage:I,rowsPerPageOptions:r,onPageChange:T,onRowsPerPageChange:X,selectionMode:"multiple",selected:S,onSelectionChange:A,onLayoutSave:De,layout:C,title:e.title,showSummary:true,order:P,orderBy:B,serviceUrl:i,onSortChange:j,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${d("graph.reportTitle")}`}}},filters:m,rows:g,loading:l,refresh:V}};var v0=e=>[...e].sort((t,o)=>o.value-t.value),z2=({bars:e=[],lines:t=[],combos:o=[],heatmap:r=[],pies:a=[],waterfalls:n=[]})=>{let i=useMemo(()=>v0(e),[e]),s=useMemo(()=>[...t],[t]),d=useMemo(()=>[...o],[o]),l=useMemo(()=>[...r],[r]),c=useMemo(()=>{let f=a.reduce((m,b)=>m+b.value,0);return a.map(m=>({...m,percent:f>0?m.value/f*100:m.percent}))},[a]),g=useMemo(()=>[...n],[n]);return {bars:i,lines:s,combos:d,heatmap:l,pies:c,waterfalls:g}};var $2=({apiKey:e,query:t,zoom:o=14,mapType:r="roadmap"})=>useMemo(()=>!e||!t?"":gi({apiKey:e,query:t,zoom:o,mapType:r}),[e,t,o,r]),G2=({keyword:e,location:t})=>useMemo(()=>xl({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0}),[e,t]);var Ci=({code:e,language:t="text",copyable:o=true,showLineNumbers:r=false,wrapLongLines:a=false,maxHeight:n})=>{let[i,s]=useState(false),d=useMemo(()=>e.replace(/\n$/,"").split(`
4
+ `),[e]);return jsxs(Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:1.5,overflow:"hidden",bgcolor:"background.paper"},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:1,py:.6,bgcolor:"action.hover",borderBottom:"1px solid",borderColor:"divider"},children:[jsx(Typography,{variant:"caption",sx:{textTransform:"uppercase",letterSpacing:.5,color:"text.secondary",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:t}),o&&jsx(Tooltip,{title:i?"Copied":"Copy",children:jsx(IconButton,{size:"small",onClick:async()=>{try{await navigator.clipboard.writeText(e),s(!0),window.setTimeout(()=>s(!1),1400);}catch{s(false);}},children:i?jsx(P0,{fontSize:"inherit"}):jsx(I0,{fontSize:"inherit"})})})]}),jsx(Box,{component:"pre",sx:{m:0,p:1.25,fontSize:"0.82rem",lineHeight:1.55,overflow:"auto",maxHeight:n,bgcolor:"background.default",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:r?d.map((c,g)=>jsxs(Box,{sx:{display:"flex"},children:[jsx(Box,{component:"span",sx:{width:34,flexShrink:0,textAlign:"right",pr:1,color:"text.disabled",userSelect:"none"},children:g+1}),jsx(Box,{component:"span",sx:{whiteSpace:a?"pre-wrap":"pre",wordBreak:a?"break-word":"normal"},children:c})]},`${g}-${c}`)):jsx(Box,{component:"code",sx:{display:"block",whiteSpace:a?"pre-wrap":"pre",wordBreak:a?"break-word":"normal"},children:e})})]})};var B0=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},E0=async e=>new Function("m","return import(m)")(e),ki=({expression:e,inline:t=false,allowKatex:o=false})=>{let r=useMemo(()=>B0(e),[e]),[a,n]=useState("");return useEffect(()=>{let i=true;return (async()=>{if(!o||!r){n("");return}try{let d=await E0("katex"),c=(d?.default||d)?.renderToString?.(r,{displayMode:!t,throwOnError:!1,strict:"warn"});i&&typeof c=="string"&&n(c);}catch{i&&n("");}})(),()=>{i=false;}},[o,r,t]),r?a?jsx(Box,{component:t?"span":"div",sx:{display:t?"inline-flex":"block",my:t?0:.5,overflowX:"auto"},dangerouslySetInnerHTML:{__html:a}}):t?jsx(Box,{component:"code",sx:{px:.4,py:.05,borderRadius:.8,bgcolor:"action.hover",fontSize:"0.82em",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:r}):jsx(Box,{sx:{my:1,p:1,borderRadius:1.2,border:"1px dashed",borderColor:"divider",bgcolor:"background.paper"},children:jsx(Typography,{component:"pre",sx:{m:0,whiteSpace:"pre-wrap",fontSize:"0.9rem",lineHeight:1.5,fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:r})}):null};var H0=async e=>new Function("m","return import(m)")(e),Hc=({code:e,title:t="Mermaid Diagram",height:o=320,enabled:r=true})=>{let[a,n]=useState(""),[i,s]=useState(""),[d,l]=useState(false),c=useMemo(()=>e.trim(),[e]);return useEffect(()=>{let g=true;return (async()=>{if(!r||!c){n(""),s("");return}l(true),s(""),n("");try{let m=await H0("mermaid"),b=m?.default||m;if(!b||typeof b.render!="function")throw new Error("Mermaid runtime is not available");b.initialize?.({startOnLoad:!1,securityLevel:"loose",theme:"default"});let v=await b.render(`orbcafe-mermaid-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,c),u=typeof v=="string"?v:v?.svg;g&&typeof u=="string"&&n(u);}catch(m){if(g){let b=m instanceof Error?m.message:"Failed to render Mermaid diagram";s(b);}}finally{g&&l(false);}})(),()=>{g=false;}},[r,c]),jsxs(Paper,{variant:"outlined",sx:{borderRadius:1.5,overflow:"hidden",my:1},children:[jsx(Box,{sx:{px:1,py:.6,borderBottom:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsx(Typography,{variant:"caption",color:"text.secondary",sx:{letterSpacing:.4,textTransform:"uppercase"},children:t})}),jsxs(Box,{sx:{p:1},children:[d&&jsx(Box,{sx:{minHeight:120,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(CircularProgress,{size:20})}),!d&&a&&jsx(Box,{sx:{maxHeight:o,overflow:"auto","& svg":{display:"block",mx:"auto",maxWidth:"100%",height:"auto"}},dangerouslySetInnerHTML:{__html:a}}),!d&&!a&&jsxs(Box,{children:[i&&jsx(Alert,{severity:"info",sx:{mb:1},children:i}),jsx(Ci,{code:c,language:"mermaid",copyable:true,showLineNumbers:true,wrapLongLines:true})]})]})]})};var Wc=e=>e.trim().replace(/^\|/,"").replace(/\|$/,"").split("|").map(o=>o.trim()),j0=e=>/^:?-{3,}:?$/.test(e.trim()),Z0=e=>{let t=e.trim(),o=t.startsWith(":"),r=t.endsWith(":");return o&&r?"center":r?"right":"left"},Hl=e=>{let t=e.split(`
5
+ `).map(i=>i.trim()).filter(Boolean);if(t.length<2)return null;let o=Wc(t[0]),r=Wc(t[1]);if(o.length===0||r.length!==o.length||!r.every(j0))return null;let a=r.map(Z0),n=t.slice(2).filter(i=>i.includes("|")).map(i=>{let s=Wc(i);return s.length<o.length?[...s,...Array.from({length:o.length-s.length},()=>"")]:s.slice(0,o.length)});return {headers:o,aligns:a,rows:n}},$c=({markdown:e,table:t,maxHeight:o=360})=>{let r=useMemo(()=>t||(e?Hl(e):null),[t,e]);return !r||r.headers.length===0?jsx(Paper,{variant:"outlined",sx:{p:1.2,borderRadius:1.5},children:jsx(Typography,{variant:"body2",color:"text.secondary",children:"Invalid table block"})}):jsx(Paper,{variant:"outlined",sx:{borderRadius:1.5,overflow:"hidden",my:1},children:jsx(TableContainer,{sx:{maxHeight:o},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:jsx(TableRow,{children:r.headers.map((a,n)=>jsx(TableCell,{align:r.aligns[n],sx:{fontWeight:700,bgcolor:"background.paper"},children:a},`${a}-${n}`))})}),jsx(TableBody,{children:r.rows.map((a,n)=>jsx(TableRow,{hover:true,children:a.map((i,s)=>jsx(TableCell,{align:r.aligns[s],sx:{whiteSpace:"pre-wrap",wordBreak:"break-word"},children:i||jsx(Box,{component:"span",sx:{color:"text.disabled"},children:"-"})},`cell-${n}-${s}`))},`row-${n}`))})]})})})};var $l=({content:e,title:t="Thinking",defaultExpanded:o=false,isStreaming:r=false})=>{let[a,n]=useState(o);return jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1,my:.8},children:[jsxs(Stack,{direction:"row",alignItems:"center",spacing:.6,children:[jsx(IconButton,{size:"small",onClick:()=>n(i=>!i),sx:{transform:a?"rotate(180deg)":"rotate(0deg)",transition:"transform .15s ease"},children:jsx(ov,{fontSize:"inherit"})}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{fontStyle:"italic"},children:[t,r?" ...":""]})]}),jsx(Collapse,{in:a,children:jsx(Typography,{variant:"body2",sx:{pl:4,pt:.4,whiteSpace:"pre-wrap",color:"text.secondary",fontStyle:"italic",lineHeight:1.55},children:e})})]})};var Uc=/(\*\*[^*]+\*\*|`[^`]+`|\[[^\]]+\]\([^)]+\)|\*[^*]+\*|\$[^$\n]+\$)/g,Gl=e=>e.trim().startsWith("```"),em=e=>/^#{1,6}\s+/.test(e.trim()),Kc=e=>/^[-*+]\s+/.test(e.trim()),_c=e=>/^\d+\.\s+/.test(e.trim()),tm=e=>/^(?:-{3,}|\*{3,}|_{3,})$/.test(e.trim()),qc=e=>e.trim().startsWith(">"),om=(e,t)=>{if(t+1>=e.length)return false;let o=e[t],r=e[t+1];return !o.includes("|")||!r.includes("|")?false:/^\s*\|?\s*:?-{3,}:?\s*(\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(r.trim())},rm=e=>e.trim().startsWith("<think>")||e.trim()===":::think",Ti=(e,t,o)=>{let r=[],a=0,n=0;Uc.lastIndex=0;let i=Uc.exec(e);for(;i;){i.index>a&&r.push(e.slice(a,i.index));let s=i[0],d=`${o}-${n}`;if(s.startsWith("**")&&s.endsWith("**"))r.push(jsx("strong",{children:s.slice(2,-2)},d));else if(s.startsWith("*")&&s.endsWith("*"))r.push(jsx("em",{children:s.slice(1,-1)},d));else if(s.startsWith("`")&&s.endsWith("`"))r.push(jsx(Box,{component:"code",sx:{px:.45,py:.08,borderRadius:.8,bgcolor:"action.hover",fontSize:"0.82em",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:s.slice(1,-1)},d));else if(s.startsWith("[")&&s.includes("](")&&s.endsWith(")")){let l=s.match(/^\[([^\]]+)\]\(([^)]+)\)$/);l?r.push(jsx(Link,{href:l[2],target:"_blank",rel:"noreferrer",underline:"hover",children:l[1]},d)):r.push(s);}else s.startsWith("$")&&s.endsWith("$")&&t.enableMath?r.push(jsx(ki,{expression:s,inline:true,allowKatex:true},d)):r.push(s);a=i.index+s.length,n+=1,i=Uc.exec(e);}return a<e.length&&r.push(e.slice(a)),r.length>0?r:[e]},Ii=({markdown:e,content:t,className:o,enableMath:r=true,enableMermaid:a=true,enableThinkBlock:n=true,codeCopyable:i=true,codeLineNumbers:s=false})=>{let d=e??t??"",l=useMemo(()=>{let c=[],g=d.replace(/\r\n/g,`
6
6
  `).split(`
7
- `),f={enableMath:r},m=0;for(;m<g.length;){let h=g[m],C=h.trim();if(!C){m+=1;continue}if(n&&Up(h)){if(C.startsWith("<think>")){let p=[],b=h;for(;;){let y=b.indexOf("<think>"),T=y>=0?b.slice(y+7):b,E=T.indexOf("</think>");if(E>=0){p.push(T.slice(0,E)),m+=1;break}if(p.push(T),m+=1,m>=g.length)break;b=g[m];}c.push(jsx(Fl,{content:p.join(`
8
- `).trim()},`think-tag-${m}`));continue}m+=1;let v=[];for(;m<g.length&&g[m].trim()!==":::";)v.push(g[m]),m+=1;m<g.length&&g[m].trim()===":::"&&(m+=1),c.push(jsx(Fl,{content:v.join(`
9
- `).trim()},`think-fence-${m}`));continue}if(El(h)){let v=C.slice(3).trim().toLowerCase(),p=[];for(m+=1;m<g.length&&!El(g[m]);)p.push(g[m]),m+=1;m<g.length&&El(g[m])&&(m+=1);let b=p.join(`
10
- `);if(a&&v==="mermaid"){c.push(jsx(Dc,{code:b},`mermaid-${m}`));continue}if(r&&["math","latex","katex"].includes(v)){c.push(jsx(mi,{expression:b,allowKatex:true},`math-fence-${m}`));continue}c.push(jsx(pi,{code:b,language:v||"text",copyable:i,showLineNumbers:s,wrapLongLines:true},`code-${m}`));continue}if(r&&C.startsWith("$$")){let v=[];if(C.endsWith("$$")&&C!=="$$")v.push(C.slice(2,-2)),m+=1;else {let b=h.slice(h.indexOf("$$")+2);for(b.trim()&&v.push(b),m+=1;m<g.length;){let y=g[m],T=y.indexOf("$$");if(T>=0){v.push(y.slice(0,T)),m+=1;break}v.push(y),m+=1;}}c.push(jsx(mi,{expression:v.join(`
11
- `).trim(),allowKatex:true},`math-${m}`));continue}if(Wp(h)){let v=Math.min(6,h.match(/^#{1,6}/)?.[0]?.length||1),p=h.replace(/^#{1,6}\s+/,""),b=v===1?"h5":v===2?"h6":"subtitle1";c.push(jsx(Typography,{variant:b,sx:{mt:v===1?1.2:.8,mb:.5,fontWeight:700},children:hi(p,f,`h-${m}`)},`heading-${m}`)),m+=1;continue}if($p(h)){c.push(jsx(Divider,{sx:{my:1.2}},`hr-${m}`)),m+=1;continue}if(Gp(g,m)){let v=m+2;for(;v<g.length&&g[v].trim()&&g[v].includes("|");)v+=1;let p=g.slice(m,v).join(`
12
- `),b=Al(p);if(b){c.push(jsx(Bc,{table:b},`table-${m}`)),m=v;continue}}if(Nc(h)){let v=[];for(;m<g.length&&Nc(g[m]);)v.push(g[m].replace(/^\s*>\s?/,"")),m+=1;c.push(jsx(Paper,{variant:"outlined",sx:{px:1,py:.8,my:.9,borderLeftWidth:3,borderLeftStyle:"solid",borderLeftColor:"primary.main",bgcolor:"action.hover"},children:jsx(Typography,{variant:"body2",sx:{whiteSpace:"pre-wrap"},children:v.map((p,b)=>jsxs(Fragment$1,{children:[b>0&&jsx("br",{}),hi(p,f,`q-${m}-${b}`)]},`quote-line-${b}`))})},`quote-${m}`));continue}if(Lc(h)){let v=[];for(;m<g.length&&Lc(g[m]);)v.push(g[m].trim().replace(/^[-*+]\s+/,"")),m+=1;c.push(jsx(Box,{component:"ul",sx:{my:.8,pl:2.5},children:v.map((p,b)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:hi(p,f,`ul-${m}-${b}`)})},`ul-item-${b}`))},`ul-${m}`));continue}if(zc(h)){let v=[];for(;m<g.length&&zc(g[m]);)v.push(g[m].trim().replace(/^\d+\.\s+/,"")),m+=1;c.push(jsx(Box,{component:"ol",sx:{my:.8,pl:2.7},children:v.map((p,b)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:hi(p,f,`ol-${m}-${b}`)})},`ol-item-${b}`))},`ol-${m}`));continue}let u=[];for(;m<g.length;){let v=g[m],p=v.trim();if(!p||El(v)||Wp(v)||$p(v)||Lc(v)||zc(v)||Nc(v)||Gp(g,m)||n&&Up(v)||r&&p.startsWith("$$"))break;u.push(v),m+=1;}u.length>0?c.push(jsx(Typography,{variant:"body2",sx:{my:.65,lineHeight:1.65},children:u.map((v,p)=>jsxs(Fragment$1,{children:[p>0&&jsx("br",{}),hi(v,f,`p-${m}-${p}`)]},`p-line-${p}`))},`p-${m}`)):m+=1;}return c},[d,r,a,n,i,s]);return jsx(Box,{className:o,sx:{"& strong":{fontWeight:700},"& em":{fontStyle:"italic"},"& a":{wordBreak:"break-all"}},children:l})};var j2=(e,t)=>jsx(bi,{markdown:e,...t});var _p=({value:e,onChange:t,onSubmit:o,onVoiceInput:r,onClear:a,placeholder:n,statusText:i,loading:s=false,compact:d=false,showStatusText:l=true})=>jsxs(Stack,{spacing:.75,children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:d?.25:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minHeight:d?38:44},children:[jsx(nu,{sx:{fontSize:d?16:18,color:"text.secondary"}}),jsx(InputBase,{fullWidth:true,value:e,onChange:c=>t(c.target.value),onKeyDown:c=>{c.key==="Enter"&&(c.preventDefault(),o());},placeholder:n,sx:{fontSize:d?"0.84rem":"0.9rem"}}),e&&a&&jsx(IconButton,{size:"small",onClick:a,children:jsx(Dh,{sx:{fontSize:d?16:18}})}),r&&jsx(IconButton,{size:"small",onClick:r,children:jsx(Sy,{sx:{fontSize:d?16:18}})}),jsx(IconButton,{size:"small",onClick:o,disabled:s||!e.trim(),children:jsx(Ty,{sx:{fontSize:d?16:18}})})]}),l&&i&&jsx(Typography,{variant:"caption",color:"text.secondary",children:i})]});var jp=(e,t)=>{let o=t.trim();if(!o)return e;let r=e.toLowerCase(),a=o.toLowerCase(),n=r.indexOf(a);return n<0?e:jsxs(Fragment,{children:[e.slice(0,n),jsx(Box,{component:"mark",sx:{bgcolor:"warning.light",color:"warning.contrastText",px:.15,borderRadius:.4},children:e.slice(n,n+o.length)}),e.slice(n+o.length)]})},Ll=({section:e,highlightQuery:t=""})=>{let o=e.columns||2;return jsxs(Paper,{variant:"outlined",sx:{p:1.8,borderRadius:2},children:[jsx(Typography,{variant:"subtitle1",sx:{fontWeight:700,mb:1.4},children:e.title}),jsx(Box,{sx:{display:"grid",gap:1.15,gridTemplateColumns:{xs:"1fr",md:o===3?"repeat(3, minmax(0, 1fr))":o===1?"1fr":"repeat(2, minmax(0, 1fr))"}},children:e.fields.map(r=>{let a=typeof r.value=="string"||typeof r.value=="number"?String(r.value):null;return jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:jp(r.label,t)}),jsx(Typography,{component:"div",variant:"body2",sx:{mt:.2,fontWeight:500,wordBreak:"break-word"},children:a?jp(a,t):r.value})]},r.id)})})]})};var $c=e=>e==null?"":typeof e=="string"||typeof e=="number"||typeof e=="boolean"?String(e):"",Nl=e=>e.trim().toLowerCase(),ev=(e,t)=>{let o=[];return e.forEach(r=>{r.fields.forEach(a=>{let n=a.searchableText||$c(a.value),i={source:"section",sourceId:r.id,sourceSectionId:r.id,sourceTitle:r.title,fieldId:a.id,fieldLabel:a.label,fieldValue:n};o.push({hit:i,text:Nl(`${r.title} ${a.label} ${n}`)});});}),t.forEach(r=>{(r.fields||[]).forEach(a=>{let n=a.searchableText||$c(a.value),i={source:"tab",sourceId:r.id,sourceTitle:r.label,fieldId:a.id,fieldLabel:a.label,fieldValue:n};o.push({hit:i,text:Nl(`${r.label} ${a.label} ${n}`)});}),(r.sections||[]).forEach(a=>{a.fields.forEach(n=>{let i=n.searchableText||$c(n.value),s={source:"tab",sourceId:r.id,sourceSectionId:a.id,sourceTitle:`${r.label} / ${a.title}`,fieldId:n.id,fieldLabel:n.label,fieldValue:i};o.push({hit:s,text:Nl(`${r.label} ${a.title} ${n.label} ${i}`)});});});}),o},Zp=({sections:e,tabs:t=[],defaultTabId:o,ai:r})=>{let{t:a}=ae(),[n,i]=useState(""),[s,d]=useState(o||t[0]?.id),[l,c]=useState("idle"),[g,f]=useState([]),[m,h]=useState(""),[C,u]=useState(""),[v,p]=useState(false),b=useMemo(()=>ev(e,t),[e,t]);useEffect(()=>{if(t.length===0){d(void 0);return}t.some(I=>I.id===s)||d(o||t[0]?.id);},[t,s,o]);let y=useCallback(()=>{c("idle"),f([]),h(""),u("");},[]),T=useCallback(w=>{i(w),w.trim()||(c("idle"),f([]),h(""),u(""));},[]),E=useCallback(w=>{let I=Nl(w);return I?b.filter(k=>k.text.includes(I)).map(k=>k.hit):[]},[b]),R=useCallback(async()=>{let w=n.trim();if(!w)return;p(true);let I=E(w);if(f(I),I.length>0){c("search"),u(""),h(a("detail.searchAi.matches",{count:I.length})),p(false);return}if(r?.enabled!==false&&r?.onSubmit){c("ai"),h(a("detail.searchAi.autoAiFallback"));try{let S=await r.onSubmit(w,{query:w,hits:I,activeTabId:s,sections:e,tabs:t});u(typeof S=="string"?S:"");}finally{p(false);}return}c("search"),u(""),h(a("detail.searchAi.noMatch")),p(false);},[n,E,a,r,s,e,t]);return {query:n,setQuery:T,activeTabId:s,setActiveTabId:d,searchMode:l,hits:g,statusText:m,aiResponse:C,searching:v,handleSubmit:R,clearResult:y}};var TB=({title:e,subtitle:t,sections:o,tabs:r=[],defaultTabId:a,table:n,ai:i,rightHeaderSlot:s,searchBarWidth:d=460,onClose:l,closeLabel:c="Close"})=>{let{t:g}=ae(),{query:f,setQuery:m,activeTabId:h,setActiveTabId:C,searchMode:u,hits:v,statusText:p,aiResponse:b,searching:y,handleSubmit:T,clearResult:E}=Zp({sections:o,tabs:r,defaultTabId:a,ai:i}),R=useMemo(()=>r.find(k=>k.id===h)||r[0],[r,h]),w=useCallback(k=>{let S=B=>{let P=document.getElementById(k);if(P){P.scrollIntoView({behavior:"smooth",block:"center"});return}B<4&&setTimeout(()=>S(B+1),60);};requestAnimationFrame(()=>S(0));},[]),I=useCallback((k,S)=>{if(r.some(B=>B.id===k)){C(k),w(S?`detail-tab-${k}-section-${S}`:`detail-tab-${k}`);return}w(`detail-section-${k}`);},[r,C,w]);return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,minHeight:"100%"},children:[jsxs(Stack,{direction:{xs:"column",md:"row"},justifyContent:"space-between",alignItems:{xs:"flex-start",md:"center"},spacing:1,children:[jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"h5",sx:{fontWeight:800,color:"text.primary"},children:e}),t&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.35},children:t})]}),jsxs(Stack,{direction:"row",spacing:.6,alignItems:"center",sx:{width:{xs:"100%",md:"auto"},ml:{xs:0,md:"auto"}},children:[jsx(Box,{sx:{width:{xs:"100%",md:d},maxWidth:"100%",minWidth:{md:320}},children:jsx(_p,{value:f,onChange:m,onSubmit:T,onVoiceInput:i?.onVoiceInput,onClear:()=>{m(""),E();},placeholder:i?.placeholder||g("detail.searchAi.placeholder"),statusText:p,loading:y,compact:true,showStatusText:false})}),l&&jsx(Tooltip,{title:c,children:jsx(IconButton,{size:"small",onClick:l,children:jsx(iv,{fontSize:"small"})})}),s]})]}),p&&jsx(Typography,{variant:"caption",color:"text.secondary",sx:{mt:-0.7},children:p}),u==="search"&&v.length>0&&jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2},children:[jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.6},children:g("detail.searchAi.matches",{count:v.length})}),jsx(Stack,{spacing:.35,children:v.slice(0,8).map(k=>jsx(Box,{component:"button",type:"button",onClick:()=>I(k.sourceId,k.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:k.sourceTitle})," \xB7 ",jsx(Box,{component:"span",sx:{fontWeight:700},children:k.fieldLabel})," = ",jsx(Box,{component:"span",children:k.fieldValue||"-"})]})},`${k.source}|${k.sourceId}|${k.fieldId}`))})]}),u==="ai"&&b&&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(bi,{markdown:b})})]}),jsx(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"repeat(2, minmax(0, 1fr))"}},children:o.map(k=>jsx(Box,{id:`detail-section-${k.id}`,children:jsx(Ll,{section:k,highlightQuery:f})},k.id))}),r.length>0&&jsxs(Paper,{variant:"outlined",sx:{borderRadius:2,overflow:"hidden"},children:[jsx(Tabs,{value:R?.id||false,onChange:(k,S)=>C(S),variant:"scrollable",scrollButtons:"auto",sx:{borderBottom:"1px solid",borderColor:"divider"},children:r.map(k=>jsx(Tab,{value:k.id,label:k.label,sx:{textTransform:"none"}},k.id))}),jsxs(Box,{sx:{p:1.5},children:[jsx(Box,{id:`detail-tab-${R?.id||""}`}),R?.description&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:1.2},children:R.description}),R?.content?R.content:jsxs(Stack,{spacing:1.5,children:[(R?.sections||[]).map(k=>jsx(Box,{id:`detail-tab-${R?.id}-section-${k.id}`,children:jsx(Ll,{section:k,highlightQuery:f})},k.id)),R?.fields&&R.fields.length>0&&jsx(Ll,{section:{id:`${R.id}-fields`,title:R.label,fields:R.fields,columns:2},highlightQuery:f})]})]})]}),n&&jsx(aa,{title:n.title||g("detail.table.title"),...n.tableProps,filterConfig:void 0,fitContainer:false})]})};var Jp=({bucket:e,cardCount:t,highlighted:o=false,children:r,emptyLabel:a,maxHeight:n,sx:i})=>{let{t:s}=ae();return jsx(Paper,{sx:[d=>{let l=e.accentColor??d.palette.primary.main;return {position:"relative",minWidth:0,borderRadius:4,overflow:"hidden",border:`1px solid ${alpha(l,o?.58:d.palette.mode==="dark"?.28:.18)}`,bgcolor:alpha(d.palette.background.paper,d.palette.mode==="dark"?.92:.97),boxShadow:o?`0 18px 40px ${alpha(l,.22)}`:`0 10px 28px ${alpha(d.palette.common.black,d.palette.mode==="dark"?.18:.08)}`,transition:"border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease","&::before":{content:'""',display:"block",height:4,bgcolor:l}}},...Array.isArray(i)?i:i?[i]:[]],children:jsxs(Stack,{spacing:1.2,sx:{p:1.5},children:[jsxs(Box,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{minWidth:0},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[e.icon,jsx(Typography,{sx:{fontSize:"0.96rem",fontWeight:800},children:e.title})]}),e.description&&jsx(Typography,{sx:{mt:.45,fontSize:"0.76rem",color:"text.secondary",lineHeight:1.45},children:e.description})]}),jsxs(Stack,{direction:"row",spacing:.8,sx:{flexShrink:0},children:[jsx(Chip,{size:"small",label:t,sx:{fontWeight:700}}),typeof e.limit=="number"&&jsx(Chip,{size:"small",label:`${s("kanban.bucket.limit")} ${e.limit}`,color:t>e.limit?"warning":"default",variant:"outlined"})]})]}),o&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"primary.main",fontWeight:700},children:s("kanban.bucket.dropHere")}),jsx(Box,{sx:{minHeight:220,maxHeight:n,overflowY:n?"auto":"visible",pr:n?.4:0},children:t>0?r:jsx(Box,{sx:d=>({minHeight:160,borderRadius:3,border:`1px dashed ${alpha(d.palette.divider,.9)}`,bgcolor:d.palette.mode==="dark"?alpha(d.palette.common.white,.02):alpha(d.palette.primary.main,.03),display:"grid",placeItems:"center",px:2,textAlign:"center"}),children:jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:a??e.emptyLabel??s("kanban.empty")})})})]})})};var uv={success:"success",warning:"warning",info:"info",error:"error"},pv={critical:"error",high:"warning",medium:"info",low:"success"},mv=(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}},gv=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:r=false,onClick:a,sx:n})=>{let{t:i}=ae(),s=!!(a&&t),d=e.tone??(e.priority?pv[e.priority]:"default"),l=d==="default"?"primary":uv[d],c=t?{card:e,bucket:t}:void 0;return jsx(Paper,{onClick:s?()=>c&&a?.(c):void 0,onKeyDown:s?g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),c&&a?.(c));}:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,sx:[g=>{let f=d==="default"?g.palette.primary.main:g.palette[l].main;return {position:"relative",overflow:"hidden",p:1.4,borderRadius:3,border:`1px solid ${alpha(f,g.palette.mode==="dark"?.42:.2)}`,bgcolor:alpha(g.palette.background.paper,g.palette.mode==="dark"?.96:.98),boxShadow:r?`0 20px 45px ${alpha(g.palette.common.black,.24)}`:o?"none":`0 8px 24px ${alpha(g.palette.common.black,g.palette.mode==="dark"?.18:.08)}`,transform:r?"rotate(1deg) scale(1.01)":"none",transition:"transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease",cursor:s?"pointer":"default",opacity:o?.5:1,"&::before":{content:'""',position:"absolute",inset:"0 auto 0 0",width:4,bgcolor:f},"&:hover":s?{transform:"translateY(-1px)",boxShadow:`0 14px 32px ${alpha(g.palette.common.black,g.palette.mode==="dark"?.28:.12)}`}:void 0}},...Array.isArray(n)?n:n?[n]:[]],children:jsxs(Stack,{spacing:1.1,children:[jsxs(Box,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{minWidth:0,flex:1},children:[(e.kicker||t?.title)&&jsx(Typography,{sx:{fontSize:"0.72rem",fontWeight:700,letterSpacing:.4,color:"text.secondary",textTransform:"uppercase"},children:e.kicker??t?.title}),jsx(Typography,{sx:{mt:.2,fontSize:"0.98rem",fontWeight:800,lineHeight:1.3},children:e.title})]}),e.priority&&jsx(Chip,{size:"small",color:l,label:mv(e.priority,i),variant:d==="default"?"outlined":"filled",sx:{height:22,fontWeight:700}})]}),e.summary&&jsx(Typography,{sx:{fontSize:"0.82rem",color:"text.secondary",lineHeight:1.5},children:e.summary}),e.metrics&&e.metrics.length>0&&jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.min(e.metrics.length,3)}, minmax(0, 1fr))`,gap:.9},children:e.metrics.slice(0,3).map(g=>jsxs(Box,{sx:f=>({borderRadius:2,px:1,py:.8,bgcolor:f.palette.mode==="dark"?alpha(f.palette.common.white,.05):alpha(f.palette.primary.main,.05)}),children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",textTransform:"uppercase",letterSpacing:.35},children:g.label}),jsx(Typography,{sx:{fontSize:"0.86rem",fontWeight:700},children:g.value})]},g.id))}),typeof e.progress=="number"&&jsxs(Box,{children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:.5},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:i("kanban.card.progress")}),jsxs(Typography,{sx:{fontSize:"0.72rem",fontWeight:700},children:[Math.round(e.progress),"%"]})]}),jsx(LinearProgress,{variant:"determinate",value:Math.max(0,Math.min(100,e.progress)),color:l,sx:{height:8,borderRadius:999}})]}),(e.tags?.length||e.assignee||e.dueDate||e.footer||s)&&jsxs(Stack,{spacing:.9,children:[e.tags&&e.tags.length>0&&jsx(Box,{sx:{display:"flex",flexWrap:"wrap",gap:.75},children:e.tags.map(g=>jsx(Chip,{size:"small",label:g.label,color:g.color??"default",variant:"outlined"},g.id))}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8,minWidth:0},children:[e.assignee&&jsxs(Fragment,{children:[jsx(Avatar,{src:e.assignee.avatarSrc,sx:{width:28,height:28,fontSize:"0.75rem"},children:e.assignee.initials??gv(e.assignee.name)}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700,lineHeight:1.2},noWrap:true,children:e.assignee.name}),e.dueDate&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary",lineHeight:1.2},noWrap:true,children:e.dueDate})]})]}),!e.assignee&&e.dueDate&&jsx(Typography,{sx:{fontSize:"0.76rem",color:"text.secondary"},children:e.dueDate})]}),s&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"primary.main",fontWeight:700,whiteSpace:"nowrap"},children:i("kanban.card.openDetail")})]}),e.footer]})]})})};var hv=(e,t)=>Number.isNaN(e)||e<0?0:e>t?t:e,om=({buckets:e,cards:t})=>{let o=new Map;return t.forEach((r,a)=>{let n=o.get(r.bucketId)??[];n.push({card:r,sourceIndex:a}),o.set(r.bucketId,n);}),{buckets:e.map(r=>{let a=[...o.get(r.id)??[]].sort((n,i)=>n.card.position===void 0&&i.card.position===void 0?n.sourceIndex-i.sourceIndex:n.card.position===void 0?1:i.card.position===void 0?-1:n.card.position-i.card.position||n.sourceIndex-i.sourceIndex).map(({card:n},i)=>({...n,bucketId:r.id,position:i}));return {...r,cards:a}})}},pr=(e,t)=>{for(let o=0;o<e.buckets.length;o+=1){let r=e.buckets[o],a=r.cards.findIndex(n=>n.id===t);if(a>=0)return {card:r.cards[a],bucket:r,bucketIndex:o,cardIndex:a}}},Hl=(e,t)=>{let o=pr(e,t.cardId);if(!o)return e;let r=e.buckets.findIndex(l=>l.id===t.toBucketId);if(r<0)return e;let a=e.buckets.map(l=>({...l,cards:l.cards.map(c=>({...c}))})),n=a[o.bucketIndex],[i]=n.cards.splice(o.cardIndex,1);if(!i)return e;let s=a[r],d=hv(t.targetIndex??s.cards.length,s.cards.length);return s.cards.splice(d,0,{...i,bucketId:t.toBucketId}),{buckets:a.map(l=>({...l,cards:l.cards.map((c,g)=>({...c,bucketId:l.id,position:g}))}))}};var Kc="kanban-card|",qc="kanban-bucket|",im=e=>`${Kc}${e}`,Mv=e=>`${qc}${e}`,Wl=e=>e?.startsWith(Kc)?e.slice(Kc.length):void 0,nm=e=>e?.startsWith(qc)?e.slice(qc.length):void 0,Dv=({card:e,bucket:t,onCardClick:o})=>{let{setNodeRef:r,attributes:a,listeners:n,transform:i,transition:s,isDragging:d}=useSortable({id:im(e.id)}),l={transform:i?`translate3d(${i.x}px, ${i.y}px, 0)`:void 0,transition:s,zIndex:d?2:1,touchAction:"none",cursor:d?"grabbing":"grab"};return jsx(Box,{ref:r,style:l,...a,...n,children:jsx(Uc,{card:e,bucket:t,dragging:d,onClick:o})})},Av=({bucket:e,highlighted:t,bucketMaxHeight:o,emptyBucketLabel:r,onCardClick:a})=>{let{isOver:n,setNodeRef:i}=useDroppable({id:Mv(e.id)});return jsx(Box,{ref:i,sx:{minWidth:0},children:jsx(Jp,{bucket:e,cardCount:e.cards.length,highlighted:t||n,emptyLabel:r,maxHeight:o,children:jsx(SortableContext,{items:e.cards.map(s=>im(s.id)),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:1,children:e.cards.map(s=>jsx(Dv,{card:s,bucket:e,onCardClick:a},s.id))})})})})},qB=({model:e,onCardMove:t,onCardClick:o,minBucketWidth:r=320,bucketMaxHeight:a,emptyBucketLabel:n,sx:i})=>{let[s,d]=useState(null),[l,c]=useState(),g=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:6}}),useSensor(TouchSensor,{activationConstraint:{delay:120,tolerance:8}})),f=useMemo(()=>s?pr(e,s):void 0,[s,e]),m=useCallback(()=>{d(null),c(void 0);},[]),h=useCallback(p=>{if(!p)return;let b=Wl(p);return b?pr(e,b)?.bucket.id:nm(p)},[e]),C=useCallback(p=>{d(Wl(String(p.active.id))??null);},[]),u=useCallback(p=>{c(h(p.over?String(p.over.id):void 0));},[h]),v=useCallback(p=>{let b=Wl(String(p.active.id)),y=p.over?String(p.over.id):void 0;if(!b||!y){m();return}let T=pr(e,b);if(!T){m();return}let E=T.bucket.id,R=T.cardIndex,w=Wl(y);if(w){let S=pr(e,w);if(!S){m();return}E=S.bucket.id,R=S.cardIndex;}else {let S=nm(y),B=e.buckets.find(P=>P.id===S);if(!S||!B){m();return}E=S,R=B.cards.length;}if(T.bucket.id===E&&T.cardIndex===R){m();return}let I=Hl(e,{cardId:b,fromBucketId:T.bucket.id,toBucketId:E,targetIndex:R}),k=pr(I,b);k&&!(k.bucket.id===T.bucket.id&&k.cardIndex===T.cardIndex)&&t?.({cardId:b,fromBucketId:T.bucket.id,toBucketId:k.bucket.id,targetIndex:k.cardIndex,card:k.card,model:I}),m();},[e,t,m]);return jsxs(DndContext,{sensors:g,collisionDetection:closestCorners,onDragStart:C,onDragOver:u,onDragEnd:v,onDragCancel:m,children:[jsx(Box,{sx:[{display:"grid",gridAutoFlow:"column",gridAutoColumns:`minmax(${r}px, 1fr)`,gap:2,alignItems:"start",overflowX:"auto",pb:.5},...Array.isArray(i)?i:i?[i]:[]],children:e.buckets.map(p=>jsx(Av,{bucket:p,highlighted:p.id===l,bucketMaxHeight:a,emptyBucketLabel:n,onCardClick:o},p.id))}),jsx(DragOverlay,{children:f?jsx(Box,{sx:{width:Math.max(r-24,260)},children:jsx(Uc,{card:f.card,bucket:f.bucket,overlay:true})}):null})]})};var Lv=({initialModel:e,initialBuckets:t,initialCards:o})=>e||om({buckets:t??[],cards:o??[]}),YB=e=>{let{onCardMove:t,onCardClick:o}=e,[r,a]=useState(()=>Lv(e)),n=useCallback(c=>{a(g=>typeof c=="function"?c(g):c);},[]),i=useCallback(c=>pr(r,c),[r]),s=useCallback((c,g,f)=>{let m=pr(r,c);if(!m)return;let h=Hl(r,{cardId:c,fromBucketId:m.bucket.id,toBucketId:g,targetIndex:f}),C=pr(h,c);if(!C||C.bucket.id===m.bucket.id&&C.cardIndex===m.cardIndex)return;a(h);let u={cardId:c,fromBucketId:m.bucket.id,toBucketId:C.bucket.id,targetIndex:C.cardIndex,card:C.card,model:h};return t?.(u),u},[r,t]),d=useCallback((c,g)=>{a(f=>({buckets:f.buckets.map(m=>({...m,cards:m.cards.map(h=>h.id!==c?h:typeof g=="function"?g(h):{...h,...g})}))}));},[]),l=useMemo(()=>({model:r,onCardMove:c=>{s(c.cardId,c.toBucketId,c.targetIndex);},onCardClick:o}),[r,s,o]);return {model:r,actions:{replaceModel:n,moveCard:s,updateCard:d,getCard:i},boardProps:l}};function xn({onTextUpdate:e,onComplete:t,onError:o,wsUrl:r="ws://localhost:8765",silenceThresholdMs:a=2e3,minVolumeRms:n=.015}){let[i,s]=useState(false),d=useRef(null),l=useRef(null),c=useRef(null),g=useRef(null),f=useRef(null),m=useRef(0),h=useRef(false),C=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),l.current&&(l.current.getTracks().forEach(b=>b.stop()),l.current=null),c.current&&(c.current.close(),c.current=null),C.current=false,s(false);},[]),v=useCallback(()=>{h.current||(h.current=true,d.current?.readyState===WebSocket.OPEN&&d.current.send(JSON.stringify({type:"stop"})),setTimeout(u,500));},[u]),p=useCallback(async()=>{if(!(i||C.current)){C.current=true,h.current=false,m.current=Date.now();try{let b=await navigator.mediaDevices.getUserMedia({audio:{channelCount:1,sampleRate:16e3,echoCancellation:!0,noiseSuppression:!0}});l.current=b;let y=new WebSocket(r);d.current=y,y.onopen=()=>{s(!0),C.current=!1;},y.onmessage=I=>{try{let k=JSON.parse(I.data);if(k.type==="recognition")k.is_final?t(k.text):e?.(k.text);else if(k.type==="error"){let S=k.message||"Voice recognition error";o?.(S),v();}}catch{o?.("Failed to parse voice message");}},y.onerror=()=>{o?.("Voice service connection failed"),u();},y.onclose=()=>{u();};let T=window.AudioContext||window.webkitAudioContext;if(!T)throw new Error("AudioContext is not supported in this browser");let E=new T({sampleRate:16e3});c.current=E;let R=E.createMediaStreamSource(b);f.current=R;let w=E.createScriptProcessor(4096,1,1);g.current=w,w.onaudioprocess=I=>{if(d.current?.readyState!==WebSocket.OPEN)return;let k=I.inputBuffer.getChannelData(0),S=0;for(let M=0;M<k.length;M+=1)S+=k[M]*k[M];if(Math.sqrt(S/k.length)>n)m.current=Date.now();else if(Date.now()-m.current>a&&!h.current){v();return}let P=new Int16Array(k.length);for(let M=0;M<k.length;M+=1){let A=Math.max(-1,Math.min(1,k[M]));P[M]=A<0?A*32768:A*32767;}d.current.send(P.buffer);},R.connect(w),w.connect(E.destination);}catch{o?.("Cannot access microphone"),u();}}},[u,i,n,t,o,e,a,v,r]);return useEffect(()=>u,[u]),{isRecording:i,startRecording:p,stopRecording:v}}var pm=64,eC="#E9EDF2",tC="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",oC=["en","zh","fr","de","ja","ko"],mm={en:"EN",zh:"\u4E2D\u6587",fr:"FR",de:"DE",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4"},Kl=({appTitle:e,logo:t,mode:o="dark",onToggleMode:r,locale:a,localeLabel:n,localeOptions:i,onLocaleChange:s,searchPlaceholder:d,onSearch:l,onSearchAdd:c,user:g,onUserSetting:f,onUserLogout:m,userMenuItems:h,leftSlot:C,rightSlot:u})=>{let{t:v,locale:p}=ae(),b=useTheme(),y=b.palette.mode==="dark",[T,E]=useState(""),[R,w]=useState(null),[I,k]=useState(null),S=useCallback((de=T)=>{let Te=de.trim();Te&&l?.(Te);},[l,T]),B=de=>{de.preventDefault(),S();},{isRecording:P,startRecording:M,stopRecording:A}=xn({onTextUpdate:E,onComplete:de=>{E(de),S(de);},onError:de=>{console.error("Header voice input error:",de);}}),Z=useCallback(async()=>{if(P){A();return}await M();},[P,M,A]),W=o==="system"?jsx(Zv,{fontSize:"small"}):o==="dark"?jsx(Xv,{fontSize:"small"}):jsx(Yv,{fontSize:"small"}),K=v(o==="system"?"header.theme.system":o==="dark"?"header.theme.dark":"header.theme.light"),ee=a||p,le=i&&i.length>0?i:oC,G=n||mm[ee]||ee.toUpperCase(),te=!!R,me=d||v("header.searchPlaceholder"),we=T.trim().length>0,Ce=!!I,re={width:28,height:28,p:0,color:y?"rgba(255,255,255,0.72)":"rgba(15,23,42,0.56)","&:hover":{bgcolor:y?"rgba(255,255,255,0.1)":"rgba(15,23,42,0.06)"},"&.Mui-disabled":{color:y?"rgba(255,255,255,0.28)":"rgba(15,23,42,0.24)"}},oe=[{key:"setting",label:v("header.menu.setting"),icon:jsx(vx,{sx:{fontSize:18}}),onClick:f},{key:"logout",label:v("header.menu.logout"),icon:jsx(Jv,{sx:{fontSize:18}}),onClick:m}],ye=h&&h.length>0?h:oe,Ge=de=>{k(null),de?.();};return jsxs(AppBar,{position:"sticky",elevation:0,sx:de=>({top:0,zIndex:de.zIndex.drawer+10,height:pm,backgroundColor:de.palette.mode==="dark"?"#0D0D0D":eC,backgroundImage:de.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%)",tC,"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:de.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(15,23,42,0.12)"}),children:[jsxs(Toolbar,{sx:{minHeight:`${pm}px !important`,px:2,gap:2},children:[jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,sx:{minWidth:220},children:[C,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:B,sx:{width:"100%",maxWidth:540},children:jsx(TextField,{size:"small",fullWidth:true,value:T,onChange:de=>E(de.target.value),placeholder:me,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",sx:{ml:.25,mr:.5},children:jsx(IconButton,{size:"small",type:"button",onClick:c,"aria-label":v("header.searchAddFeature"),title:v("header.searchAddFeature"),sx:re,children:jsx(jv,{sx:{fontSize:20}})})}),endAdornment:jsx(InputAdornment,{position:"end",sx:{ml:.5,mr:.25},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.15,children:[jsx(IconButton,{size:"small",type:"button",onClick:()=>{Z();},"aria-label":v(P?"header.searchStopVoice":"header.searchStartVoice"),title:v(P?"header.searchStopVoice":"header.searchStartVoice"),sx:{...re,color:P?b.palette.error.main:re.color,bgcolor:P?y?"rgba(239,68,68,0.18)":"rgba(239,68,68,0.1)":"transparent"},children:P?jsx(MicOff,{size:17,strokeWidth:2.35}):jsx(Mic,{size:17,strokeWidth:2.35})}),jsx(IconButton,{size:"small",type:"submit",disabled:!we,"aria-label":v("header.searchSend"),title:v("header.searchSend"),sx:{...re,color:we?b.palette.primary.main:re.color},children:jsx(SendHorizontal,{size:17,strokeWidth:2.35})})]})}),sx:{color:y?"common.white":"rgba(17,24,39,0.9)",bgcolor:y?"rgba(255,255,255,0.08)":"#ffffff",borderRadius:999,pr:.5,"& .MuiInputBase-input":{py:1.1},"& .MuiOutlinedInput-notchedOutline":{borderColor:y?"rgba(255,255,255,0.15)":"rgba(15,23,42,0.2)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:y?"rgba(255,255,255,0.35)":"rgba(15,23,42,0.35)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:y?"rgba(255,255,255,0.5)":"rgba(15,23,42,0.55)"}}},inputProps:{style:{color:y?"white":"#111827"}}})})}),jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,children:[s?jsxs(Fragment,{children:[jsx(IconButton,{size:"small",onClick:de=>w(de.currentTarget),sx:{color:y?"common.white":"#111827",borderRadius:1,px:.5},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsx(um,{sx:{fontSize:18}}),jsx(Typography,{variant:"caption",sx:{fontWeight:500},children:G})]})}),jsx(Menu,{anchorEl:R,open:te,onClose:()=>w(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:le.map(de=>jsx(MenuItem,{selected:de===ee,onClick:()=>{s(de),w(null);},sx:{fontSize:"0.82rem"},children:mm[de]},de))})]}):jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsx(um,{sx:{color:y?"common.white":"#111827",fontSize:18}}),jsx(Typography,{variant:"caption",sx:{color:y?"common.white":"#111827",fontWeight:500},children:G})]}),jsx(IconButton,{size:"small",sx:{color:y?"common.white":"#111827"},onClick:r,title:K,children:W}),g&&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:g.name}),g.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:g.subtitle,children:g.subtitle})]}),jsx(IconButton,{size:"small",onClick:de=>k(de.currentTarget),sx:{p:0},children:jsx(Avatar,{src:g.avatarSrc,imgProps:{style:{objectFit:"cover"}},sx:{width:34,height:34,bgcolor:"grey.100",color:"grey.700",fontSize:"0.85rem"},children:g.avatarText||g.name.slice(0,1).toUpperCase()})})]}),u]})]}),g&&jsx(Menu,{anchorEl:I,open:Ce,onClose:()=>k(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:ye.map(de=>jsxs(MenuItem,{disabled:de.disabled,onClick:()=>Ge(de.onClick),children:[de.icon&&jsx(ListItemIcon,{children:de.icon}),jsx(ListItemText,{primary:de.label,slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]},de.key))})]})};var gm=({menuData:e=[],initialNavigationCollapsed:t=false,initialNavigationMode:o="fixed"}={})=>{let{navigationIslandProps:r}=Yd({initialCollapsed:t,initialDisplayMode:o,content:e}),[a,n]=useState(900);useEffect(()=>{let s=()=>n(window.innerHeight);return s(),window.addEventListener("resize",s),()=>window.removeEventListener("resize",s)},[]);let i=useMemo(()=>Math.max(280,a-100),[a]);return {navigationIslandProps:r,navigationMaxHeight:i}};var tr=12,bm=56,ym=234,ql=(e,t,o)=>Math.min(Math.max(e,t),Math.max(t,o)),cC=e=>e instanceof HTMLElement?!!e.closest('button,input,a,textarea,select,[role="button"],[contenteditable="true"]'):false,T5=({appTitle:e,menuData:t=[],children:o,showNavigation:r=true,locale:a="en",localeLabel:n,localeOptions:i,onLocaleChange:s,user:d,onUserSetting:l,onUserLogout:c,userMenuItems:g,logo:f,onSearch:m,onSearchAdd:h,rightHeaderSlot:C,leftHeaderSlot:u,contentSx:v,navigationMode:p,defaultNavigationMode:b="fixed",onNavigationModeChange:y,showNavigationModeToggle:T=true})=>{let E="orbcafe:page-layout-mode",R="orbcafe:page-layout-navigation-mode",[w,I]=useState("system"),[k,S]=useState("light"),[B,P]=useState(false),[M,A]=useState(false),[Z,W]=useState(b),[K,ee]=useState({x:tr,y:tr}),[le,G]=useState("left"),[te,me]=useState(false),we=useRef(null),Ce=useRef(null),re=p!==void 0,oe=p??Z,ye=oe==="floating",Ge=w==="system"?B?k:"light":w;useEffect(()=>{try{let Re=window.localStorage.getItem(E);(Re==="light"||Re==="dark"||Re==="system")&&I(Re);}catch{}P(true);let _=window.matchMedia("(prefers-color-scheme: dark)"),Q=()=>{S(_.matches?"dark":"light");};return Q(),_.addEventListener("change",Q),()=>_.removeEventListener("change",Q)},[]),useEffect(()=>{if(B)try{window.localStorage.setItem(E,w);}catch{}},[B,w]),useEffect(()=>{if(re){A(true);return}try{let _=window.localStorage.getItem(R);(_==="fixed"||_==="floating")&&W(_);}catch{}finally{A(true);}},[re]),useEffect(()=>{if(M)try{window.localStorage.setItem(R,oe);}catch{}},[oe,M]),useEffect(()=>{Ge==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[Ge]);let de=useMemo(()=>createTheme({palette:{mode:Ge}}),[Ge]),Te=useCallback(_=>{re||W(_),y?.(_);},[re,y]),{navigationIslandProps:$e,navigationMaxHeight:ct}=gm({menuData:t,initialNavigationCollapsed:false,initialNavigationMode:oe}),fe=$e.collapsed,Le=useCallback(_=>{let Q=we.current,Re=Q?.parentElement;if(!Q||!Re)return _;let Be=Re.getBoundingClientRect(),at=Q.getBoundingClientRect(),it=tr,gt=tr,Et=Math.max(it,Be.width-at.width-tr),U=Math.max(gt,Be.height-at.height-tr);return {x:ql(_.x,it,Et),y:ql(_.y,gt,U)}},[]),_e=useCallback(_=>{let Q=we.current,Re=Q?.parentElement;if(!Q||!Re)return _;let Be=Re.getBoundingClientRect(),at=Q.getBoundingClientRect(),it=tr,gt=tr,Et=Math.max(it,Be.width-at.width-tr),U=Math.max(gt,Be.height-at.height-tr),ze={x:ql(_.x,it,Et),y:ql(_.y,gt,U)},ft=[{distance:Math.abs(ze.x-it),position:{x:it,y:ze.y}},{distance:Math.abs(ze.x-Et),position:{x:Et,y:ze.y}},{distance:Math.abs(ze.y-gt),position:{x:ze.x,y:gt}},{distance:Math.abs(ze.y-U),position:{x:ze.x,y:U}}].reduce((O,xe)=>xe.distance<O.distance?xe:O).position;return G(ft.x>=(it+Et)/2?"right":"left"),ft},[]),dt=useMemo(()=>{if(!ye||te)return K.x;if(le==="right"){let Re=we.current?.parentElement?.getBoundingClientRect().width,Be=fe?bm:ym;return Re?Math.max(tr,Re-Be-tr):fe?K.x:K.x-(ym-bm)}return K.x},[le,K.x,te,ye,fe]),rt=useCallback(_=>{if(!ye||!fe||cC(_.target))return;_.preventDefault(),_.currentTarget.setPointerCapture(_.pointerId);let Q=Le({x:dt,y:K.y});G("left"),ee(Q),Ce.current={pointerId:_.pointerId,startClientX:_.clientX,startClientY:_.clientY,startX:Q.x,startY:Q.y,currentX:Q.x,currentY:Q.y},me(true);},[Le,dt,K.y,ye,fe]),j=useCallback(_=>{let Q=Ce.current;if(!Q||Q.pointerId!==_.pointerId)return;let Re=Le({x:Q.startX+_.clientX-Q.startClientX,y:Q.startY+_.clientY-Q.startClientY});Q.currentX=Re.x,Q.currentY=Re.y,ee(Re);},[Le]),Ne=useCallback(_=>{let Q=Ce.current;if(!(!Q||Q.pointerId!==_.pointerId)){try{_.currentTarget.releasePointerCapture(_.pointerId);}catch{}Ce.current=null,ee(_e({x:Q.currentX,y:Q.currentY})),me(false);}},[_e]);return useEffect(()=>{if(!ye)return;let _=()=>{ee(Be=>Le(Be));},Q=window.requestAnimationFrame(_),Re=window.setTimeout(_,430);return ()=>{window.cancelAnimationFrame(Q),window.clearTimeout(Re);}},[Le,ye,fe,ct]),jsx(ThemeProvider,{theme:de,children:jsx(Ki,{locale:a,children:jsxs(Box,{sx:_=>({minHeight:"100vh",width:"100%",display:"flex",flexDirection:"column",overflowX:"hidden",background:_.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":_.palette.background.default}),children:[jsx(Kl,{appTitle:e,logo:f,mode:w,onToggleMode:()=>I(_=>_==="system"?"dark":_==="dark"?"light":"system"),locale:a,localeLabel:n,localeOptions:i,onLocaleChange:s,user:d,onUserSetting:l,onUserLogout:c,userMenuItems:g,onSearch:m,onSearchAdd:h,leftSlot:u,rightSlot:C}),jsxs(Box,{sx:{flex:1,minHeight:0,minWidth:0,display:"flex",overflowX:"hidden",position:"relative"},children:[r&&!ye&&jsx(Box,{sx:{pt:1.5,pb:1.5,pl:1.5,pr:fe?.5:1.5,display:"flex",alignItems:"flex-start",flexShrink:0},children:jsx($s,{...$e,maxHeight:ct,colorMode:Ge,displayMode:oe,onDisplayModeChange:Te,showDisplayModeToggle:T&&fe})}),r&&ye&&jsx(Box,{ref:we,onPointerDown:rt,onPointerMove:j,onPointerUp:Ne,onPointerCancel:Ne,sx:_=>({position:"absolute",top:K.y,left:dt,zIndex:_.zIndex.drawer+5,display:"flex",alignItems:"flex-start",cursor:fe?te?"grabbing":"grab":"default",touchAction:fe?"none":"auto",userSelect:te?"none":void 0,transition:te?"none":"left 180ms ease-out, top 180ms ease-out"}),children:jsx($s,{...$e,maxHeight:ct,colorMode:Ge,displayMode:oe,onDisplayModeChange:Te,showDisplayModeToggle:T&&fe})}),jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",pt:1.5,pb:1.5,pr:1.5,pl:r&&!ye&&fe?.5:1.5,...v},children:o})]})]})})})};var _l="(blank)",vm="Result",Cm="Grand Total",km={sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max"},Sm=["sum","count","avg","min","max"];var wm=["palette","rows","columns","filters","values"];var Tm=e=>wm.includes(e),Im=e=>e==="rows"||e==="columns"||e==="filters",jl=e=>{let t=e.split("|");return t.length===2&&t[0]==="container"&&Tm(t[1])?{kind:"container",zone:t[1]}:t.length===3&&t[0]==="item"&&Tm(t[1])&&t[2]?{kind:"item",zone:t[1],key:t[2]}:null},Vr=e=>e==null||e===""?_l:e instanceof Date?e.toISOString().slice(0,10):String(e),Ea=e=>JSON.stringify(e),Pm=(e,t)=>{let o=e.join(""),r=t.join("");return o.localeCompare(r,void 0,{sensitivity:"base"})},dC=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},wn=(e,t,o)=>{if(o==="count")return e.length;let r=e.map(a=>dC(a[t])).filter(a=>a!==null);return r.length===0?0:o==="sum"?r.reduce((a,n)=>a+n,0):o==="avg"?r.reduce((a,n)=>a+n,0)/r.length:o==="min"?Math.min(...r):Math.max(...r)},eo=(e,t)=>{if(!e||e.length===0)return [];let o=new Set,r=[];return e.forEach(a=>{!t.has(a)||o.has(a)||(o.add(a),r.push(a));}),r},Or=(e,t)=>e.length!==t.length?false:e.every((o,r)=>o===t[r]),Rm=(e,t)=>{let o=Object.keys(e),r=Object.keys(t);return o.length!==r.length?false:o.every(a=>{let n=e[a]??[],i=t[a]??[];return Or(n,i)})},Zl=(e,t)=>e.length!==t.length?false:e.every((o,r)=>{let a=t[r];return o.tokenId===a.tokenId&&o.fieldId===a.fieldId&&o.aggregation===a.aggregation}),Zc=e=>!e?.aggregations||e.aggregations.length===0?Sm:e.aggregations,So=(e,t)=>{let o=Zc(t);return e&&o.includes(e)?e:t?.type==="number"&&o.includes("sum")?"sum":o.includes("count")?"count":o[0]},wi=(e,t,o)=>{let r=o.get(t.fieldId);return r?.formatValue?r.formatValue(e):t.aggregation==="count"?Math.round(e).toLocaleString():e.toLocaleString(void 0,{minimumFractionDigits:0,maximumFractionDigits:2})};var Am=({options:e,selectedValues:t,onChange:o,minWidth:r=96})=>{let{t:a}=ae(),[n,i]=useState(""),s=useMemo(()=>{let l=n.trim().toLowerCase();return l?e.filter(c=>c.toLowerCase().includes(l)):e},[e,n]),d=e.length>0&&t.length===e.length;return jsx(FormControl,{size:"small",sx:{minWidth:r},children:jsxs(Select,{multiple:true,value:t,onChange:l=>{let c=l.target.value,g=typeof c=="string"?c.split(","):c;o(g);},onClick:l=>l.stopPropagation(),onMouseDown:l=>l.stopPropagation(),renderValue:l=>{let c=l;return e.length===0?a("pivot.filter.na"):c.length===0?a("common.none"):c.length===e.length?a("common.all"):`${c.length}/${e.length}`},MenuProps:{PaperProps:{sx:{maxHeight:320,bgcolor:"background.paper"}}},sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:[jsx(ListSubheader,{disableSticky:true,sx:l=>({bgcolor:"background.paper",py:.8,lineHeight:"normal",borderBottom:`1px solid ${l.palette.divider}`}),children:jsx(TextField,{size:"small",placeholder:`${a("common.search")}...`,fullWidth:true,value:n,onChange:l=>i(l.target.value),onKeyDown:l=>l.stopPropagation(),onClick:l=>l.stopPropagation(),sx:{m:0,"& .MuiInputBase-input":{fontSize:"0.75rem",py:.7}}})}),jsx(Box,{sx:l=>({px:1.5,py:.5,borderBottom:`1px solid ${l.palette.divider}`,bgcolor:"background.paper"}),onMouseDown:l=>{l.preventDefault(),l.stopPropagation();},onClick:l=>{l.preventDefault(),l.stopPropagation();},children:jsx(Button,{variant:"text",size:"small",onClick:l=>{l.preventDefault(),l.stopPropagation(),o(d?[]:e);},sx:{minWidth:"auto",px:0,py:.2,fontSize:"0.76rem",fontWeight:700,textTransform:"none"},children:a(d?"pivot.filter.deselectAll":"pivot.filter.selectAll")})}),s.length===0&&jsx(MenuItem,{disabled:true,sx:{fontSize:"0.75rem"},children:a("pivot.filter.noResults")}),s.map(l=>{let c=t.includes(l);return jsxs(MenuItem,{value:l,sx:{fontSize:"0.75rem",py:.25},children:[jsx(Checkbox,{size:"small",checked:c,sx:{p:.5,mr:.5}}),jsx(ListItemText,{primary:l,primaryTypographyProps:{sx:{fontSize:"0.75rem",lineHeight:1.2}}})]},l)})]})})};var Yc=({label:e,subtitle:t,isDragging:o,dragRef:r,listeners:a,attributes:n,style:i})=>jsx(Paper,{ref:r,...a,...n,sx:s=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:s.palette.mode==="dark"?"#111111":"background.paper",touchAction:"none"}),style:{...i,opacity:o?.3:1,cursor:o?"grabbing":"grab"},children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[jsx(Box,{sx:s=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.3,borderRadius:1,bgcolor:s.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)"}),children:jsx(kC,{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})]})]})}),Em=({id:e,label:t,subtitle:o})=>{let{setNodeRef:r,listeners:a,attributes:n,isDragging:i}=useDraggable({id:e});return jsx(Yc,{label:t,subtitle:o,isDragging:i,dragRef:r,listeners:a,attributes:n})};var Pn=({zone:e,title:t,hint:o,icon:r,children:a,itemCount:n,onClear:i})=>{let s=`container|${e}`,{isOver:d,setNodeRef:l}=useDroppable({id:s}),{t:c}=ae();return jsxs(Paper,{ref:l,sx:g=>({p:1.1,borderRadius:3,border:"1px dashed",borderColor:d?"primary.main":g.palette.divider,bgcolor:d?g.palette.mode==="dark"?"rgba(25, 118, 210, 0.16)":"rgba(47, 91, 255, 0.06)":g.palette.mode==="dark"?"rgba(255,255,255,0.02)":"rgba(245, 248, 255, 0.86)",transition:"all 120ms ease",minHeight:120,display:"flex",flexDirection:"column"}),children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[r,jsx(Typography,{sx:{fontSize:"0.79rem",fontWeight:800,letterSpacing:.2},children:t}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:["(",n,")"]})]}),n>0&&i&&jsx(Tooltip,{title:c("pivot.clearArea"),children:jsx(IconButton,{size:"small",onClick:i,sx:{p:.25},children:jsx(PC,{sx:{fontSize:16}})})})]}),jsx(Typography,{sx:{mt:.5,mb:.9,fontSize:"0.7rem",color:"text.secondary"},children:o}),jsx(Box,{sx:{flex:1},children:a})]})};var zm={xs:1.2,md:1.6},Mn=({title:e,subtitle:t,collapsed:o,onToggleCollapse:r,expandAriaLabel:a,collapseAriaLabel:n,children:i,bodySx:s,unmountOnExit:d=false,headerActions:l})=>jsxs(Paper,{sx:c=>({borderRadius:3,border:`1px solid ${c.palette.divider}`,overflow:"hidden",bgcolor:alpha(c.palette.background.paper,.95)}),children:[jsxs(Box,{sx:c=>({px:zm,py:1,display:"flex",alignItems:"center",justifyContent:"space-between",gap:1,borderBottom:o?"none":`1px solid ${c.palette.divider}`}),children:[jsxs(Box,{sx:{minWidth:0,flex:1},children:[jsx(Typography,{sx:{fontSize:"0.9rem",fontWeight:800},children:e}),jsx(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:t})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.75,flexShrink:0},children:[l,jsx(IconButton,{size:"small","aria-label":o?a:n,onClick:r,sx:c=>({border:`1px solid ${c.palette.divider}`,bgcolor:alpha(c.palette.background.paper,.88),width:28,height:28,borderRadius:999,flexShrink:0,"&:hover":{bgcolor:c.palette.mode==="dark"?alpha(c.palette.primary.main,.18):alpha(c.palette.primary.main,.08)}}),children:jsx(Cx,{sx:{fontSize:16,transition:"transform 220ms cubic-bezier(0.2, 0, 0, 1)",transform:o?"rotate(180deg)":"rotate(0deg)"}})})]})]}),jsx(Collapse,{in:!o,timeout:260,easing:"cubic-bezier(0.2, 0, 0, 1)",unmountOnExit:d,children:jsx(Box,{sx:[{px:zm,py:{xs:1.2,md:1.6}},...Array.isArray(s)?s:s?[s]:[]],children:i})})]});var es=({label:e,caption:t,onRemove:o,trailing:r,isDragging:a,dragRef:n,listeners:i,attributes:s,style:d})=>jsx(Paper,{ref:n,style:d,sx:l=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:l.palette.mode==="dark"?"#111111":"background.paper",touchAction:"none",opacity:a?0:1}),children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[jsx(Box,{...s,...i,sx:l=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.25,borderRadius:1,bgcolor:l.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)",cursor:"grab"}),children:jsx(kC,{sx:{fontSize:15,color:"text.secondary"}})}),jsxs(Box,{sx:{minWidth:0,flex:1},children:[jsx(Typography,{sx:{fontSize:"0.8rem",fontWeight:700,lineHeight:1.2},children:e}),t&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary",lineHeight:1.2},children:t})]}),r,o&&jsx(IconButton,{size:"small",onClick:l=>{l.stopPropagation(),o();},sx:{p:.2},children:jsx(Dh,{sx:{fontSize:16}})})]})}),Ti=({id:e,label:t,caption:o,onRemove:r,trailing:a})=>{let{setNodeRef:n,attributes:i,listeners:s,transform:d,transition:l,isDragging:c}=useSortable({id:e}),g={transform:d?`translate3d(${d.x}px, ${d.y}px, 0)`:void 0,transition:l,zIndex:c?999:"auto"};return jsx(es,{label:t,caption:o,onRemove:r,trailing:a,isDragging:c,dragRef:n,listeners:s,attributes:i,style:g})};var rs={rows:jsx(WC,{fontSize:"small"}),columns:jsx(Kh,{fontSize:"small"}),filters:jsx(HC,{fontSize:"small"}),values:jsx(Zh,{fontSize:"small"})},Om=({isConfiguratorCollapsed:e,onToggleCollapse:t,availableFields:o,fieldMap:r,filterFields:a,columnFields:n,rowFields:i,valueFields:s,clearZone:d,removeFieldFromZone:l,getFilterSelectionSummary:c,renderDimensionFilterSelect:g,renderAggregationSelect:f,getAggregationLabel:m})=>{let{t:h}=ae(),C=[`${h("pivot.zone.rows")} ${i.length}`,`${h("pivot.zone.columns")} ${n.length}`,`${h("pivot.zone.filters")} ${a.length}`,`${h("pivot.zone.values")} ${s.length}`].join(" \xB7 ");return jsx(Mn,{title:h("pivot.config.title"),subtitle:C,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(Pn,{zone:"palette",title:h("pivot.fieldList"),hint:h("pivot.availableDimensions"),itemCount:o.length,icon:jsx(kC,{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(Em,{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(Pn,{zone:"filters",title:h("pivot.zone.filters"),hint:h("pivot.hint.filters"),icon:rs.filters,itemCount:a.length,onClear:()=>d("filters"),children:jsx(SortableContext,{items:a.map(u=>`item|filters|${u}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:a.map(u=>jsx(Ti,{id:`item|filters|${u}`,label:r.get(u)?.label??u,caption:c(u),trailing:g(u),onRemove:()=>l("filters",u)},u))})})}),jsx(Pn,{zone:"columns",title:h("pivot.zone.columns"),hint:h("pivot.hint.columns"),icon:rs.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(Ti,{id:`item|columns|${u}`,label:r.get(u)?.label??u,caption:`${r.get(u)?.type??"dimension"} \u2022 ${c(u)}`,trailing:g(u),onRemove:()=>l("columns",u)},u))})})})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(Pn,{zone:"rows",title:h("pivot.zone.rows"),hint:h("pivot.hint.rows"),icon:rs.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(Ti,{id:`item|rows|${u}`,label:r.get(u)?.label??u,caption:`${r.get(u)?.type??"dimension"} \u2022 ${c(u)}`,trailing:g(u),onRemove:()=>l("rows",u)},u))})})}),jsx(Pn,{zone:"values",title:h("pivot.zone.values"),hint:h("pivot.hint.values"),icon:rs.values,itemCount:s.length,onClear:()=>d("values"),children:jsx(SortableContext,{items:s.map(u=>`item|values|${u.tokenId}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:s.map(u=>{let v=r.get(u.fieldId)?.label??u.fieldId,p=`${m(u.aggregation)}(${v})`;return jsx(Ti,{id:`item|values|${u.tokenId}`,label:v,caption:p,trailing:f(u),onRemove:()=>l("values",u.tokenId)},u.tokenId)})})})})]})]})]})})};var Hm=e=>e.toLocaleString(void 0,{maximumFractionDigits:1}),Wm=({data:e,primaryLabel:t,secondaryLabel:o,formatPrimaryValue:r,formatSecondaryValue:a})=>{let n=useTheme$1();if(e.length===0)return null;let i=720,s=250,d={top:20,right:24,bottom:40,left:52},l=o?e.map(u=>u.primaryValue):e.map((u,v)=>v+1),c=o?e.map(u=>u.secondaryValue??0):e.map(u=>u.primaryValue),g=Math.max(...l,1),f=Math.max(...c,1),m=i-d.left-d.right,h=s-d.top-d.bottom,C=e.map((u,v)=>{let p=o?u.primaryValue:v+1,b=o?u.secondaryValue??0:u.primaryValue,y=d.left+p/g*m,T=s-d.bottom-b/f*h;return {...u,x:y,y:T,rawX:p,rawY:b}});return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{component:"svg",viewBox:`0 0 ${i} ${s}`,sx:{width:"100%",minWidth:i,height:s},children:[jsx("line",{x1:d.left,y1:s-d.bottom,x2:i-d.right,y2:s-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),jsx("line",{x1:d.left,y1:d.top,x2:d.left,y2:s-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),C.map(u=>jsxs("g",{children:[jsx("circle",{cx:u.x,cy:u.y,r:7,fill:alpha(n.palette.primary.main,.18)}),jsx("circle",{cx:u.x,cy:u.y,r:4.5,fill:n.palette.primary.main,children:jsxs("title",{children:[u.name,`
7
+ `),f={enableMath:r},m=0;for(;m<g.length;){let b=g[m],v=b.trim();if(!v){m+=1;continue}if(n&&rm(b)){if(v.startsWith("<think>")){let p=[],h=b;for(;;){let x=h.indexOf("<think>"),w=x>=0?h.slice(x+7):h,E=w.indexOf("</think>");if(E>=0){p.push(w.slice(0,E)),m+=1;break}if(p.push(w),m+=1,m>=g.length)break;h=g[m];}c.push(jsx($l,{content:p.join(`
8
+ `).trim()},`think-tag-${m}`));continue}m+=1;let C=[];for(;m<g.length&&g[m].trim()!==":::";)C.push(g[m]),m+=1;m<g.length&&g[m].trim()===":::"&&(m+=1),c.push(jsx($l,{content:C.join(`
9
+ `).trim()},`think-fence-${m}`));continue}if(Gl(b)){let C=v.slice(3).trim().toLowerCase(),p=[];for(m+=1;m<g.length&&!Gl(g[m]);)p.push(g[m]),m+=1;m<g.length&&Gl(g[m])&&(m+=1);let h=p.join(`
10
+ `);if(a&&C==="mermaid"){c.push(jsx(Hc,{code:h},`mermaid-${m}`));continue}if(r&&["math","latex","katex"].includes(C)){c.push(jsx(ki,{expression:h,allowKatex:true},`math-fence-${m}`));continue}c.push(jsx(Ci,{code:h,language:C||"text",copyable:i,showLineNumbers:s,wrapLongLines:true},`code-${m}`));continue}if(r&&v.startsWith("$$")){let C=[];if(v.endsWith("$$")&&v!=="$$")C.push(v.slice(2,-2)),m+=1;else {let h=b.slice(b.indexOf("$$")+2);for(h.trim()&&C.push(h),m+=1;m<g.length;){let x=g[m],w=x.indexOf("$$");if(w>=0){C.push(x.slice(0,w)),m+=1;break}C.push(x),m+=1;}}c.push(jsx(ki,{expression:C.join(`
11
+ `).trim(),allowKatex:true},`math-${m}`));continue}if(em(b)){let C=Math.min(6,b.match(/^#{1,6}/)?.[0]?.length||1),p=b.replace(/^#{1,6}\s+/,""),h=C===1?"h5":C===2?"h6":"subtitle1";c.push(jsx(Typography,{variant:h,sx:{mt:C===1?1.2:.8,mb:.5,fontWeight:700},children:Ti(p,f,`h-${m}`)},`heading-${m}`)),m+=1;continue}if(tm(b)){c.push(jsx(Divider,{sx:{my:1.2}},`hr-${m}`)),m+=1;continue}if(om(g,m)){let C=m+2;for(;C<g.length&&g[C].trim()&&g[C].includes("|");)C+=1;let p=g.slice(m,C).join(`
12
+ `),h=Hl(p);if(h){c.push(jsx($c,{table:h},`table-${m}`)),m=C;continue}}if(qc(b)){let C=[];for(;m<g.length&&qc(g[m]);)C.push(g[m].replace(/^\s*>\s?/,"")),m+=1;c.push(jsx(Paper,{variant:"outlined",sx:{px:1,py:.8,my:.9,borderLeftWidth:3,borderLeftStyle:"solid",borderLeftColor:"primary.main",bgcolor:"action.hover"},children:jsx(Typography,{variant:"body2",sx:{whiteSpace:"pre-wrap"},children:C.map((p,h)=>jsxs(Fragment$1,{children:[h>0&&jsx("br",{}),Ti(p,f,`q-${m}-${h}`)]},`quote-line-${h}`))})},`quote-${m}`));continue}if(Kc(b)){let C=[];for(;m<g.length&&Kc(g[m]);)C.push(g[m].trim().replace(/^[-*+]\s+/,"")),m+=1;c.push(jsx(Box,{component:"ul",sx:{my:.8,pl:2.5},children:C.map((p,h)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:Ti(p,f,`ul-${m}-${h}`)})},`ul-item-${h}`))},`ul-${m}`));continue}if(_c(b)){let C=[];for(;m<g.length&&_c(g[m]);)C.push(g[m].trim().replace(/^\d+\.\s+/,"")),m+=1;c.push(jsx(Box,{component:"ol",sx:{my:.8,pl:2.7},children:C.map((p,h)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:Ti(p,f,`ol-${m}-${h}`)})},`ol-item-${h}`))},`ol-${m}`));continue}let u=[];for(;m<g.length;){let C=g[m],p=C.trim();if(!p||Gl(C)||em(C)||tm(C)||Kc(C)||_c(C)||qc(C)||om(g,m)||n&&rm(C)||r&&p.startsWith("$$"))break;u.push(C),m+=1;}u.length>0?c.push(jsx(Typography,{variant:"body2",sx:{my:.65,lineHeight:1.65},children:u.map((C,p)=>jsxs(Fragment$1,{children:[p>0&&jsx("br",{}),Ti(C,f,`p-${m}-${p}`)]},`p-line-${p}`))},`p-${m}`)):m+=1;}return c},[d,r,a,n,i,s]);return jsx(Box,{className:o,sx:{"& strong":{fontWeight:700},"& em":{fontStyle:"italic"},"& a":{wordBreak:"break-all"}},children:l})};var TB=(e,t)=>jsx(Ii,{markdown:e,...t});var im=({value:e,onChange:t,onSubmit:o,onVoiceInput:r,onClear:a,placeholder:n,statusText:i,loading:s=false,compact:d=false,showStatusText:l=true})=>jsxs(Stack,{spacing:.75,children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:d?.25:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minHeight:d?38:44},children:[jsx(bu,{sx:{fontSize:d?16:18,color:"text.secondary"}}),jsx(InputBase,{fullWidth:true,value:e,onChange:c=>t(c.target.value),onKeyDown:c=>{c.key==="Enter"&&(c.preventDefault(),o());},placeholder:n,sx:{fontSize:d?"0.84rem":"0.9rem"}}),e&&a&&jsx(IconButton,{size:"small",onClick:a,children:jsx(Xh,{sx:{fontSize:d?16:18}})}),r&&jsx(IconButton,{size:"small",onClick:r,children:jsx(Gy,{sx:{fontSize:d?16:18}})}),jsx(IconButton,{size:"small",onClick:o,disabled:s||!e.trim(),children:jsx(Ky,{sx:{fontSize:d?16:18}})})]}),l&&i&&jsx(Typography,{variant:"caption",color:"text.secondary",children:i})]});var lm=(e,t)=>{let o=t.trim();if(!o)return e;let r=e.toLowerCase(),a=o.toLowerCase(),n=r.indexOf(a);return n<0?e:jsxs(Fragment,{children:[e.slice(0,n),jsx(Box,{component:"mark",sx:{bgcolor:"warning.light",color:"warning.contrastText",px:.15,borderRadius:.4},children:e.slice(n,n+o.length)}),e.slice(n+o.length)]})},Ul=({section:e,highlightQuery:t=""})=>{let o=e.columns||2;return jsxs(Paper,{variant:"outlined",sx:{p:1.8,borderRadius:2},children:[jsx(Typography,{variant:"subtitle1",sx:{fontWeight:700,mb:1.4},children:e.title}),jsx(Box,{sx:{display:"grid",gap:1.15,gridTemplateColumns:{xs:"1fr",md:o===3?"repeat(3, minmax(0, 1fr))":o===1?"1fr":"repeat(2, minmax(0, 1fr))"}},children:e.fields.map(r=>{let a=typeof r.value=="string"||typeof r.value=="number"?String(r.value):null;return jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:lm(r.label,t)}),jsx(Typography,{component:"div",variant:"body2",sx:{mt:.2,fontWeight:500,wordBreak:"break-word"},children:a?lm(a,t):r.value})]},r.id)})})]})};var Qc=e=>e==null?"":typeof e=="string"||typeof e=="number"||typeof e=="boolean"?String(e):"",_l=e=>e.trim().toLowerCase(),vv=(e,t)=>{let o=[];return e.forEach(r=>{r.fields.forEach(a=>{let n=a.searchableText||Qc(a.value),i={source:"section",sourceId:r.id,sourceSectionId:r.id,sourceTitle:r.title,fieldId:a.id,fieldLabel:a.label,fieldValue:n};o.push({hit:i,text:_l(`${r.title} ${a.label} ${n}`)});});}),t.forEach(r=>{(r.fields||[]).forEach(a=>{let n=a.searchableText||Qc(a.value),i={source:"tab",sourceId:r.id,sourceTitle:r.label,fieldId:a.id,fieldLabel:a.label,fieldValue:n};o.push({hit:i,text:_l(`${r.label} ${a.label} ${n}`)});}),(r.sections||[]).forEach(a=>{a.fields.forEach(n=>{let i=n.searchableText||Qc(n.value),s={source:"tab",sourceId:r.id,sourceSectionId:a.id,sourceTitle:`${r.label} / ${a.title}`,fieldId:n.id,fieldLabel:n.label,fieldValue:i};o.push({hit:s,text:_l(`${r.label} ${a.title} ${n.label} ${i}`)});});});}),o},sm=({sections:e,tabs:t=[],defaultTabId:o,ai:r})=>{let{t:a}=oe(),[n,i]=useState(""),[s,d]=useState(o||t[0]?.id),[l,c]=useState("idle"),[g,f]=useState([]),[m,b]=useState(""),[v,u]=useState(""),[C,p]=useState(false),h=useMemo(()=>vv(e,t),[e,t]);useEffect(()=>{if(t.length===0){d(void 0);return}t.some(I=>I.id===s)||d(o||t[0]?.id);},[t,s,o]);let x=useCallback(()=>{c("idle"),f([]),b(""),u("");},[]),w=useCallback(T=>{i(T),T.trim()||(c("idle"),f([]),b(""),u(""));},[]),E=useCallback(T=>{let I=_l(T);return I?h.filter(k=>k.text.includes(I)).map(k=>k.hit):[]},[h]),R=useCallback(async()=>{let T=n.trim();if(!T)return;p(true);let I=E(T);if(f(I),I.length>0){c("search"),u(""),b(a("detail.searchAi.matches",{count:I.length})),p(false);return}if(r?.enabled!==false&&r?.onSubmit){c("ai"),b(a("detail.searchAi.autoAiFallback"));try{let S=await r.onSubmit(T,{query:T,hits:I,activeTabId:s,sections:e,tabs:t});u(typeof S=="string"?S:"");}finally{p(false);}return}c("search"),u(""),b(a("detail.searchAi.noMatch")),p(false);},[n,E,a,r,s,e,t]);return {query:n,setQuery:w,activeTabId:s,setActiveTabId:d,searchMode:l,hits:g,statusText:m,aiResponse:v,searching:C,handleSubmit:R,clearResult:x}};var o5=({title:e,subtitle:t,sections:o,tabs:r=[],defaultTabId:a,table:n,ai:i,rightHeaderSlot:s,searchBarWidth:d=460,onClose:l,closeLabel:c="Close"})=>{let{t:g}=oe(),{query:f,setQuery:m,activeTabId:b,setActiveTabId:v,searchMode:u,hits:C,statusText:p,aiResponse:h,searching:x,handleSubmit:w,clearResult:E}=sm({sections:o,tabs:r,defaultTabId:a,ai:i}),R=useMemo(()=>r.find(k=>k.id===b)||r[0],[r,b]),T=useCallback(k=>{let S=A=>{let P=document.getElementById(k);if(P){P.scrollIntoView({behavior:"smooth",block:"center"});return}A<4&&setTimeout(()=>S(A+1),60);};requestAnimationFrame(()=>S(0));},[]),I=useCallback((k,S)=>{if(r.some(A=>A.id===k)){v(k),T(S?`detail-tab-${k}-section-${S}`:`detail-tab-${k}`);return}T(`detail-section-${k}`);},[r,v,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(im,{value:f,onChange:m,onSubmit:w,onVoiceInput:i?.onVoiceInput,onClear:()=>{m(""),E();},placeholder:i?.placeholder||g("detail.searchAi.placeholder"),statusText:p,loading:x,compact:true,showStatusText:false})}),l&&jsx(Tooltip,{title:c,children:jsx(IconButton,{size:"small",onClick:l,children:jsx(Iv,{fontSize:"small"})})}),s]})]}),p&&jsx(Typography,{variant:"caption",color:"text.secondary",sx:{mt:-0.7},children:p}),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(k=>jsx(Box,{component:"button",type:"button",onClick:()=>I(k.sourceId,k.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:k.sourceTitle})," \xB7 ",jsx(Box,{component:"span",sx:{fontWeight:700},children:k.fieldLabel})," = ",jsx(Box,{component:"span",children:k.fieldValue||"-"})]})},`${k.source}|${k.sourceId}|${k.fieldId}`))})]}),u==="ai"&&h&&jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2},children:[jsx(Typography,{variant:"subtitle2",sx:{fontWeight:700,mb:.7},children:g("detail.searchAi.aiResultTitle")}),jsx(Box,{sx:{fontSize:"0.9rem",lineHeight:1.6,"& p":{m:0,mb:.8},"& h1, & h2, & h3, & h4":{mt:1.2,mb:.6,lineHeight:1.3},"& ul, & ol":{mt:.4,mb:.8,pl:2.6},"& code":{px:.5,py:.1,borderRadius:.8,bgcolor:"action.hover",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},"& pre":{m:0,mt:.8,mb:.8,p:1.1,borderRadius:1.2,bgcolor:"action.hover",overflowX:"auto"},"& pre code":{p:0,bgcolor:"transparent"}},children:jsx(Ii,{markdown:h})})]}),jsx(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"repeat(2, minmax(0, 1fr))"}},children:o.map(k=>jsx(Box,{id:`detail-section-${k.id}`,children:jsx(Ul,{section:k,highlightQuery:f})},k.id))}),r.length>0&&jsxs(Paper,{variant:"outlined",sx:{borderRadius:2,overflow:"hidden"},children:[jsx(Tabs,{value:R?.id||false,onChange:(k,S)=>v(S),variant:"scrollable",scrollButtons:"auto",sx:{borderBottom:"1px solid",borderColor:"divider"},children:r.map(k=>jsx(Tab,{value:k.id,label:k.label,sx:{textTransform:"none"}},k.id))}),jsxs(Box,{sx:{p:1.5},children:[jsx(Box,{id:`detail-tab-${R?.id||""}`}),R?.description&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:1.2},children:R.description}),R?.content?R.content:jsxs(Stack,{spacing:1.5,children:[(R?.sections||[]).map(k=>jsx(Box,{id:`detail-tab-${R?.id}-section-${k.id}`,children:jsx(Ul,{section:k,highlightQuery:f})},k.id)),R?.fields&&R.fields.length>0&&jsx(Ul,{section:{id:`${R.id}-fields`,title:R.label,fields:R.fields,columns:2},highlightQuery:f})]})]})]}),n&&jsx(ca,{title:n.title||g("detail.table.title"),...n.tableProps,filterConfig:void 0,fitContainer:false})]})};var pm=({bucket:e,cardCount:t,highlighted:o=false,children:r,emptyLabel:a,maxHeight:n,sx:i})=>{let{t:s}=oe();return jsx(Paper,{sx:[d=>{let l=e.accentColor??d.palette.primary.main;return {position:"relative",minWidth:0,borderRadius:4,overflow:"hidden",border:`1px solid ${alpha(l,o?.58:d.palette.mode==="dark"?.28:.18)}`,bgcolor:alpha(d.palette.background.paper,d.palette.mode==="dark"?.92:.97),boxShadow:o?`0 18px 40px ${alpha(l,.22)}`:`0 10px 28px ${alpha(d.palette.common.black,d.palette.mode==="dark"?.18:.08)}`,transition:"border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease","&::before":{content:'""',display:"block",height:4,bgcolor:l}}},...Array.isArray(i)?i:i?[i]:[]],children:jsxs(Stack,{spacing:1.2,sx:{p:1.5},children:[jsxs(Box,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{minWidth:0},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[e.icon,jsx(Typography,{sx:{fontSize:"0.96rem",fontWeight:800},children:e.title})]}),e.description&&jsx(Typography,{sx:{mt:.45,fontSize:"0.76rem",color:"text.secondary",lineHeight:1.45},children:e.description})]}),jsxs(Stack,{direction:"row",spacing:.8,sx:{flexShrink:0},children:[jsx(Chip,{size:"small",label:t,sx:{fontWeight:700}}),typeof e.limit=="number"&&jsx(Chip,{size:"small",label:`${s("kanban.bucket.limit")} ${e.limit}`,color:t>e.limit?"warning":"default",variant:"outlined"})]})]}),o&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"primary.main",fontWeight:700},children:s("kanban.bucket.dropHere")}),jsx(Box,{sx:{minHeight:220,maxHeight:n,overflowY:n?"auto":"visible",pr:n?.4:0},children:t>0?r:jsx(Box,{sx:d=>({minHeight:160,borderRadius:3,border:`1px dashed ${alpha(d.palette.divider,.9)}`,bgcolor:d.palette.mode==="dark"?alpha(d.palette.common.white,.02):alpha(d.palette.primary.main,.03),display:"grid",placeItems:"center",px:2,textAlign:"center"}),children:jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:a??e.emptyLabel??s("kanban.empty")})})})]})})};var Av={success:"success",warning:"warning",info:"info",error:"error"},Bv={critical:"error",high:"warning",medium:"info",low:"success"},Ev=(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}},Fv=e=>e?e.split(/\s+/).map(t=>t.charAt(0).toUpperCase()).slice(0,2).join(""):"NA",ed=({card:e,bucket:t,dragging:o=false,overlay:r=false,onClick:a,sx:n})=>{let{t:i}=oe(),s=!!(a&&t),d=e.tone??(e.priority?Bv[e.priority]:"default"),l=d==="default"?"primary":Av[d],c=t?{card:e,bucket:t}:void 0;return jsx(Paper,{onClick:s?()=>c&&a?.(c):void 0,onKeyDown:s?g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),c&&a?.(c));}:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,sx:[g=>{let f=d==="default"?g.palette.primary.main:g.palette[l].main;return {position:"relative",overflow:"hidden",p:1.4,borderRadius:3,border:`1px solid ${alpha(f,g.palette.mode==="dark"?.42:.2)}`,bgcolor:alpha(g.palette.background.paper,g.palette.mode==="dark"?.96:.98),boxShadow:r?`0 20px 45px ${alpha(g.palette.common.black,.24)}`:o?"none":`0 8px 24px ${alpha(g.palette.common.black,g.palette.mode==="dark"?.18:.08)}`,transform:r?"rotate(1deg) scale(1.01)":"none",transition:"transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease",cursor:s?"pointer":"default",opacity:o?.5:1,"&::before":{content:'""',position:"absolute",inset:"0 auto 0 0",width:4,bgcolor:f},"&:hover":s?{transform:"translateY(-1px)",boxShadow:`0 14px 32px ${alpha(g.palette.common.black,g.palette.mode==="dark"?.28:.12)}`}:void 0}},...Array.isArray(n)?n:n?[n]:[]],children:jsxs(Stack,{spacing:1.1,children:[jsxs(Box,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{minWidth:0,flex:1},children:[(e.kicker||t?.title)&&jsx(Typography,{sx:{fontSize:"0.72rem",fontWeight:700,letterSpacing:.4,color:"text.secondary",textTransform:"uppercase"},children:e.kicker??t?.title}),jsx(Typography,{sx:{mt:.2,fontSize:"0.98rem",fontWeight:800,lineHeight:1.3},children:e.title})]}),e.priority&&jsx(Chip,{size:"small",color:l,label:Ev(e.priority,i),variant:d==="default"?"outlined":"filled",sx:{height:22,fontWeight:700}})]}),e.summary&&jsx(Typography,{sx:{fontSize:"0.82rem",color:"text.secondary",lineHeight:1.5},children:e.summary}),e.metrics&&e.metrics.length>0&&jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.min(e.metrics.length,3)}, minmax(0, 1fr))`,gap:.9},children:e.metrics.slice(0,3).map(g=>jsxs(Box,{sx:f=>({borderRadius:2,px:1,py:.8,bgcolor:f.palette.mode==="dark"?alpha(f.palette.common.white,.05):alpha(f.palette.primary.main,.05)}),children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",textTransform:"uppercase",letterSpacing:.35},children:g.label}),jsx(Typography,{sx:{fontSize:"0.86rem",fontWeight:700},children:g.value})]},g.id))}),typeof e.progress=="number"&&jsxs(Box,{children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:.5},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:i("kanban.card.progress")}),jsxs(Typography,{sx:{fontSize:"0.72rem",fontWeight:700},children:[Math.round(e.progress),"%"]})]}),jsx(LinearProgress,{variant:"determinate",value:Math.max(0,Math.min(100,e.progress)),color:l,sx:{height:8,borderRadius:999}})]}),(e.tags?.length||e.assignee||e.dueDate||e.footer||s)&&jsxs(Stack,{spacing:.9,children:[e.tags&&e.tags.length>0&&jsx(Box,{sx:{display:"flex",flexWrap:"wrap",gap:.75},children:e.tags.map(g=>jsx(Chip,{size:"small",label:g.label,color:g.color??"default",variant:"outlined"},g.id))}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8,minWidth:0},children:[e.assignee&&jsxs(Fragment,{children:[jsx(Avatar,{src:e.assignee.avatarSrc,sx:{width:28,height:28,fontSize:"0.75rem"},children:e.assignee.initials??Fv(e.assignee.name)}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700,lineHeight:1.2},noWrap:true,children:e.assignee.name}),e.dueDate&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary",lineHeight:1.2},noWrap:true,children:e.dueDate})]})]}),!e.assignee&&e.dueDate&&jsx(Typography,{sx:{fontSize:"0.76rem",color:"text.secondary"},children:e.dueDate})]}),s&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"primary.main",fontWeight:700,whiteSpace:"nowrap"},children:i("kanban.card.openDetail")})]}),e.footer]})]})})};var Nv=(e,t)=>Number.isNaN(e)||e<0?0:e>t?t:e,fm=({buckets:e,cards:t})=>{let o=new Map;return t.forEach((r,a)=>{let n=o.get(r.bucketId)??[];n.push({card:r,sourceIndex:a}),o.set(r.bucketId,n);}),{buckets:e.map(r=>{let a=[...o.get(r.id)??[]].sort((n,i)=>n.card.position===void 0&&i.card.position===void 0?n.sourceIndex-i.sourceIndex:n.card.position===void 0?1:i.card.position===void 0?-1:n.card.position-i.card.position||n.sourceIndex-i.sourceIndex).map(({card:n},i)=>({...n,bucketId:r.id,position:i}));return {...r,cards:a}})}},mr=(e,t)=>{for(let o=0;o<e.buckets.length;o+=1){let r=e.buckets[o],a=r.cards.findIndex(n=>n.id===t);if(a>=0)return {card:r.cards[a],bucket:r,bucketIndex:o,cardIndex:a}}},Zl=(e,t)=>{let o=mr(e,t.cardId);if(!o)return e;let r=e.buckets.findIndex(l=>l.id===t.toBucketId);if(r<0)return e;let a=e.buckets.map(l=>({...l,cards:l.cards.map(c=>({...c}))})),n=a[o.bucketIndex],[i]=n.cards.splice(o.cardIndex,1);if(!i)return e;let s=a[r],d=Nv(t.targetIndex??s.cards.length,s.cards.length);return s.cards.splice(d,0,{...i,bucketId:t.toBucketId}),{buckets:a.map(l=>({...l,cards:l.cards.map((c,g)=>({...c,bucketId:l.id,position:g}))}))}};var td="kanban-card|",od="kanban-bucket|",xm=e=>`${td}${e}`,Zv=e=>`${od}${e}`,Xl=e=>e?.startsWith(td)?e.slice(td.length):void 0,ym=e=>e?.startsWith(od)?e.slice(od.length):void 0,Xv=({card:e,bucket:t,onCardClick:o})=>{let{setNodeRef:r,attributes:a,listeners:n,transform:i,transition:s,isDragging:d}=useSortable({id:xm(e.id)}),l={transform:i?`translate3d(${i.x}px, ${i.y}px, 0)`:void 0,transition:s,zIndex:d?2:1,touchAction:"none",cursor:d?"grabbing":"grab"};return jsx(Box,{ref:r,style:l,...a,...n,children:jsx(ed,{card:e,bucket:t,dragging:d,onClick:o})})},Yv=({bucket:e,highlighted:t,bucketMaxHeight:o,emptyBucketLabel:r,onCardClick:a})=>{let{isOver:n,setNodeRef:i}=useDroppable({id:Zv(e.id)});return jsx(Box,{ref:i,sx:{minWidth:0},children:jsx(pm,{bucket:e,cardCount:e.cards.length,highlighted:t||n,emptyLabel:r,maxHeight:o,children:jsx(SortableContext,{items:e.cards.map(s=>xm(s.id)),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:1,children:e.cards.map(s=>jsx(Xv,{card:s,bucket:e,onCardClick:a},s.id))})})})})},S5=({model:e,onCardMove:t,onCardClick:o,minBucketWidth:r=320,bucketMaxHeight:a,emptyBucketLabel:n,sx:i})=>{let[s,d]=useState(null),[l,c]=useState(),g=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:6}}),useSensor(TouchSensor,{activationConstraint:{delay:120,tolerance:8}})),f=useMemo(()=>s?mr(e,s):void 0,[s,e]),m=useCallback(()=>{d(null),c(void 0);},[]),b=useCallback(p=>{if(!p)return;let h=Xl(p);return h?mr(e,h)?.bucket.id:ym(p)},[e]),v=useCallback(p=>{d(Xl(String(p.active.id))??null);},[]),u=useCallback(p=>{c(b(p.over?String(p.over.id):void 0));},[b]),C=useCallback(p=>{let h=Xl(String(p.active.id)),x=p.over?String(p.over.id):void 0;if(!h||!x){m();return}let w=mr(e,h);if(!w){m();return}let E=w.bucket.id,R=w.cardIndex,T=Xl(x);if(T){let S=mr(e,T);if(!S){m();return}E=S.bucket.id,R=S.cardIndex;}else {let S=ym(x),A=e.buckets.find(P=>P.id===S);if(!S||!A){m();return}E=S,R=A.cards.length;}if(w.bucket.id===E&&w.cardIndex===R){m();return}let I=Zl(e,{cardId:h,fromBucketId:w.bucket.id,toBucketId:E,targetIndex:R}),k=mr(I,h);k&&!(k.bucket.id===w.bucket.id&&k.cardIndex===w.cardIndex)&&t?.({cardId:h,fromBucketId:w.bucket.id,toBucketId:k.bucket.id,targetIndex:k.cardIndex,card:k.card,model:I}),m();},[e,t,m]);return jsxs(DndContext,{sensors:g,collisionDetection:closestCorners,onDragStart:v,onDragOver:u,onDragEnd:C,onDragCancel:m,children:[jsx(Box,{sx:[{display:"grid",gridAutoFlow:"column",gridAutoColumns:`minmax(${r}px, 1fr)`,gap:2,alignItems:"start",overflowX:"auto",pb:.5},...Array.isArray(i)?i:i?[i]:[]],children:e.buckets.map(p=>jsx(Yv,{bucket:p,highlighted:p.id===l,bucketMaxHeight:a,emptyBucketLabel:n,onCardClick:o},p.id))}),jsx(DragOverlay,{children:f?jsx(Box,{sx:{width:Math.max(r-24,260)},children:jsx(ed,{card:f.card,bucket:f.bucket,overlay:true})}):null})]})};var tC=({initialModel:e,initialBuckets:t,initialCards:o})=>e||fm({buckets:t??[],cards:o??[]}),R5=e=>{let{onCardMove:t,onCardClick:o}=e,[r,a]=useState(()=>tC(e)),n=useCallback(c=>{a(g=>typeof c=="function"?c(g):c);},[]),i=useCallback(c=>mr(r,c),[r]),s=useCallback((c,g,f)=>{let m=mr(r,c);if(!m)return;let b=Zl(r,{cardId:c,fromBucketId:m.bucket.id,toBucketId:g,targetIndex:f}),v=mr(b,c);if(!v||v.bucket.id===m.bucket.id&&v.cardIndex===m.cardIndex)return;a(b);let u={cardId:c,fromBucketId:m.bucket.id,toBucketId:v.bucket.id,targetIndex:v.cardIndex,card:v.card,model:b};return t?.(u),u},[r,t]),d=useCallback((c,g)=>{a(f=>({buckets:f.buckets.map(m=>({...m,cards:m.cards.map(b=>b.id!==c?b:typeof g=="function"?g(b):{...b,...g})}))}));},[]),l=useMemo(()=>({model:r,onCardMove:c=>{s(c.cardId,c.toBucketId,c.targetIndex);},onCardClick:o}),[r,s,o]);return {model:r,actions:{replaceModel:n,moveCard:s,updateCard:d,getCard:i},boardProps:l}};function wn({onTextUpdate:e,onComplete:t,onError:o,wsUrl:r="ws://localhost:8765",silenceThresholdMs:a=2e3,minVolumeRms:n=.015}){let[i,s]=useState(false),d=useRef(null),l=useRef(null),c=useRef(null),g=useRef(null),f=useRef(null),m=useRef(0),b=useRef(false),v=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),l.current&&(l.current.getTracks().forEach(h=>h.stop()),l.current=null),c.current&&(c.current.close(),c.current=null),v.current=false,s(false);},[]),C=useCallback(()=>{b.current||(b.current=true,d.current?.readyState===WebSocket.OPEN&&d.current.send(JSON.stringify({type:"stop"})),setTimeout(u,500));},[u]),p=useCallback(async()=>{if(!(i||v.current)){v.current=true,b.current=false,m.current=Date.now();try{let h=await navigator.mediaDevices.getUserMedia({audio:{channelCount:1,sampleRate:16e3,echoCancellation:!0,noiseSuppression:!0}});l.current=h;let x=new WebSocket(r);d.current=x,x.onopen=()=>{s(!0),v.current=!1;},x.onmessage=I=>{try{let k=JSON.parse(I.data);if(k.type==="recognition")k.is_final?t(k.text):e?.(k.text);else if(k.type==="error"){let S=k.message||"Voice recognition error";o?.(S),C();}}catch{o?.("Failed to parse voice message");}},x.onerror=()=>{o?.("Voice service connection failed"),u();},x.onclose=()=>{u();};let w=window.AudioContext||window.webkitAudioContext;if(!w)throw new Error("AudioContext is not supported in this browser");let E=new w({sampleRate:16e3});c.current=E;let R=E.createMediaStreamSource(h);f.current=R;let T=E.createScriptProcessor(4096,1,1);g.current=T,T.onaudioprocess=I=>{if(d.current?.readyState!==WebSocket.OPEN)return;let k=I.inputBuffer.getChannelData(0),S=0;for(let M=0;M<k.length;M+=1)S+=k[M]*k[M];if(Math.sqrt(S/k.length)>n)m.current=Date.now();else if(Date.now()-m.current>a&&!b.current){C();return}let P=new Int16Array(k.length);for(let M=0;M<k.length;M+=1){let B=Math.max(-1,Math.min(1,k[M]));P[M]=B<0?B*32768:B*32767;}d.current.send(P.buffer);},R.connect(T),T.connect(E.destination);}catch{o?.("Cannot access microphone"),u();}}},[u,i,n,t,o,e,a,C,r]);return useEffect(()=>u,[u]),{isRecording:i,startRecording:p,stopRecording:C}}var Tm=64,xC="#E9EDF2",vC="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",CC=["en","zh","fr","de","ja","ko"],Im={en:"EN",zh:"\u4E2D\u6587",fr:"FR",de:"DE",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4"},nd=({searchPlaceholder:e,onSearch:t,onSearchAdd:o,maxWidth:r=540,sx:a})=>{let{t:n}=oe(),i=useTheme(),s=i.palette.mode==="dark",[d,l]=useState(""),c=useCallback((h=d)=>{let x=h.trim();x&&(l(""),t?.(x));},[t,d]),g=h=>{h.preventDefault(),c();},{isRecording:f,startRecording:m,stopRecording:b}=wn({onTextUpdate:l,onComplete:h=>{l(h),c(h);},onError:h=>{console.error("Header voice input error:",h);}}),v=useCallback(async()=>{if(f){b();return}await m();},[f,m,b]),u=e||n("header.searchPlaceholder"),C=d.trim().length>0,p={width:28,height:28,p:0,color:s?"rgba(255,255,255,0.72)":"rgba(15,23,42,0.56)","&:hover":{bgcolor:s?"rgba(255,255,255,0.1)":"rgba(15,23,42,0.06)"},"&.Mui-disabled":{color:s?"rgba(255,255,255,0.28)":"rgba(15,23,42,0.24)"}};return jsx(Box,{component:"form",onSubmit:g,sx:[{width:"100%",maxWidth:r},...Array.isArray(a)?a:a?[a]:[]],children:jsx(TextField,{size:"small",fullWidth:true,value:d,onChange:h=>l(h.target.value),placeholder:u,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",sx:{ml:.25,mr:.5},children:jsx(IconButton,{size:"small",type:"button",onClick:o,"aria-label":n("header.searchAddFeature"),title:n("header.searchAddFeature"),sx:p,children:jsx(mC,{sx:{fontSize:20}})})}),endAdornment:jsx(InputAdornment,{position:"end",sx:{ml:.5,mr:.25},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.15,children:[jsx(IconButton,{size:"small",type:"button",onClick:()=>{v();},"aria-label":n(f?"header.searchStopVoice":"header.searchStartVoice"),title:n(f?"header.searchStopVoice":"header.searchStartVoice"),sx:{...p,color:f?i.palette.error.main:p.color,bgcolor:f?s?"rgba(239,68,68,0.18)":"rgba(239,68,68,0.1)":"transparent"},children:f?jsx(MicOff,{size:17,strokeWidth:2.35}):jsx(Mic,{size:17,strokeWidth:2.35})}),jsx(IconButton,{size:"small",type:"submit",disabled:!C,"aria-label":n("header.searchSend"),title:n("header.searchSend"),sx:{...p,color:C?i.palette.primary.main:p.color},children:jsx(SendHorizontal,{size:17,strokeWidth:2.35})})]})}),sx:{color:s?"common.white":"rgba(17,24,39,0.9)",bgcolor:s?"rgba(255,255,255,0.08)":"#ffffff",borderRadius:999,pr:.5,"& .MuiInputBase-input":{py:1.1},"& .MuiOutlinedInput-notchedOutline":{borderColor:s?"rgba(255,255,255,0.15)":"rgba(15,23,42,0.2)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:s?"rgba(255,255,255,0.35)":"rgba(15,23,42,0.35)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:s?"rgba(255,255,255,0.5)":"rgba(15,23,42,0.55)"}}},inputProps:{style:{color:s?"white":"#111827"}}})})},es=({appTitle:e,logo:t,mode:o="dark",onToggleMode:r,locale:a,localeLabel:n,localeOptions:i,onLocaleChange:s,searchPlaceholder:d,showSearch:l=false,onSearch:c,onSearchAdd:g,user:f,onUserSetting:m,onUserLogout:b,userMenuItems:v,leftSlot:u,rightSlot:C})=>{let{t:p,locale:h}=oe(),w=useTheme().palette.mode==="dark",[E,R]=useState(null),[T,I]=useState(null),k=o==="system"?jsx(gC,{fontSize:"small"}):o==="dark"?jsx(fC,{fontSize:"small"}):jsx(hC,{fontSize:"small"}),S=p(o==="system"?"header.theme.system":o==="dark"?"header.theme.dark":"header.theme.light"),A=a||h,P=i&&i.length>0?i:CC,M=n||Im[A]||A.toUpperCase(),B=!!E,Z=!!T,N=[{key:"setting",label:p("header.menu.setting"),icon:jsx(Hx,{sx:{fontSize:18}}),onClick:m},{key:"logout",label:p("header.menu.logout"),icon:jsx(yC,{sx:{fontSize:18}}),onClick:b}],V=v&&v.length>0?v:N,X=j=>{I(null),j?.();};return jsxs(AppBar,{position:"sticky",elevation:0,sx:j=>({top:0,zIndex:j.zIndex.drawer+10,height:Tm,backgroundColor:j.palette.mode==="dark"?"#0D0D0D":xC,backgroundImage:j.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%)",vC,"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:j.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(15,23,42,0.12)"}),children:[jsxs(Toolbar,{sx:{minHeight:`${Tm}px !important`,px:2,gap:2},children:[jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,sx:{minWidth:220},children:[u,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:w?"common.white":"#111827"},children:e})]}),jsx(Box,{sx:{flex:1,display:"flex",justifyContent:"center",minWidth:0},children:l&&jsx(nd,{searchPlaceholder:d,onSearch:c,onSearchAdd:g})}),jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,children:[s?jsxs(Fragment,{children:[jsx(IconButton,{size:"small",onClick:j=>R(j.currentTarget),sx:{color:w?"common.white":"#111827",borderRadius:1,px:.5},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsx(wm,{sx:{fontSize:18}}),jsx(Typography,{variant:"caption",sx:{fontWeight:500},children:M})]})}),jsx(Menu,{anchorEl:E,open:B,onClose:()=>R(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:P.map(j=>jsx(MenuItem,{selected:j===A,onClick:()=>{s(j),R(null);},sx:{fontSize:"0.82rem"},children:Im[j]},j))})]}):jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsx(wm,{sx:{color:w?"common.white":"#111827",fontSize:18}}),jsx(Typography,{variant:"caption",sx:{color:w?"common.white":"#111827",fontWeight:500},children:M})]}),jsx(IconButton,{size:"small",sx:{color:w?"common.white":"#111827"},onClick:r,title:S,children:k}),f&&jsxs(Stack,{direction:"row",alignItems:"center",spacing:1,children:[jsxs(Box,{sx:{textAlign:"right",minWidth:0},children:[jsx(Typography,{variant:"body2",sx:{color:w?"common.white":"#111827",fontWeight:700,lineHeight:1.15},children:f.name}),f.subtitle&&jsx(Typography,{variant:"caption",sx:{display:"block",mt:.25,color:w?"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:f.subtitle,children:f.subtitle})]}),jsx(IconButton,{size:"small",onClick:j=>I(j.currentTarget),sx:{p:0},children:jsx(Avatar,{src:f.avatarSrc,imgProps:{style:{objectFit:"cover"}},sx:{width:34,height:34,bgcolor:"grey.100",color:"grey.700",fontSize:"0.85rem"},children:f.avatarText||f.name.slice(0,1).toUpperCase()})})]}),C]})]}),f&&jsx(Menu,{anchorEl:T,open:Z,onClose:()=>I(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:V.map(j=>jsxs(MenuItem,{disabled:j.disabled,onClick:()=>X(j.onClick),children:[j.icon&&jsx(ListItemIcon,{children:j.icon}),jsx(ListItemText,{primary:j.label,slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]},j.key))})]})};var Rm=({menuData:e=[],initialNavigationCollapsed:t=false,initialNavigationMode:o="fixed"}={})=>{let{navigationIslandProps:r}=cu({initialCollapsed:t,initialDisplayMode:o,content:e}),[a,n]=useState(900);useEffect(()=>{let s=()=>n(window.innerHeight);return s(),window.addEventListener("resize",s),()=>window.removeEventListener("resize",s)},[]);let i=useMemo(()=>Math.max(280,a-100),[a]);return {navigationIslandProps:r,navigationMaxHeight:i}};var or=12,Am=56,Bm=234,ts=(e,t,o)=>Math.min(Math.max(e,t),Math.max(t,o)),RC=e=>e instanceof HTMLElement?!!e.closest('button,input,a,textarea,select,[role="button"],[contenteditable="true"]'):false,oE=({appTitle:e,menuData:t=[],children:o,showNavigation:r=true,locale:a="en",localeLabel:n,localeOptions:i,onLocaleChange:s,user:d,onUserSetting:l,onUserLogout:c,userMenuItems:g,logo:f,searchPlaceholder:m,searchPlacement:b="hidden",floatingSearchSx:v,onSearch:u,onSearchAdd:C,rightHeaderSlot:p,leftHeaderSlot:h,contentSx:x,navigationMode:w,defaultNavigationMode:E="fixed",onNavigationModeChange:R,showNavigationModeToggle:T=true})=>{let I="orbcafe:page-layout-mode",k="orbcafe:page-layout-navigation-mode",[S,A]=useState("system"),[P,M]=useState("light"),[B,Z]=useState(false),[N,V]=useState(false),[X,j]=useState(E),[H,ee]=useState({x:or,y:or}),[pe,De]=useState("left"),[xe,se]=useState(false),te=useRef(null),Ie=useRef(null),Ye=w!==void 0,Ue=w??X,be=Ue==="floating",Ke=b==="header",lt=S==="system"?B?P:"light":S;useEffect(()=>{try{let je=window.localStorage.getItem(I);(je==="light"||je==="dark"||je==="system")&&A(je);}catch{}Z(true);let re=window.matchMedia("(prefers-color-scheme: dark)"),ke=()=>{M(re.matches?"dark":"light");};return ke(),re.addEventListener("change",ke),()=>re.removeEventListener("change",ke)},[]),useEffect(()=>{if(B)try{window.localStorage.setItem(I,S);}catch{}},[B,S]),useEffect(()=>{if(Ye){V(true);return}try{let re=window.localStorage.getItem(k);(re==="fixed"||re==="floating")&&j(re);}catch{}finally{V(true);}},[Ye]),useEffect(()=>{if(N)try{window.localStorage.setItem(k,Ue);}catch{}},[Ue,N]),useEffect(()=>{lt==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[lt]);let Ee=useMemo(()=>createTheme({palette:{mode:lt}}),[lt]),Oe=useCallback(re=>{Ye||j(re),R?.(re);},[Ye,R]),{navigationIslandProps:qe,navigationMaxHeight:pt}=Rm({menuData:t,initialNavigationCollapsed:false,initialNavigationMode:Ue}),$e=qe.collapsed,q=useCallback(re=>{let ke=te.current,je=ke?.parentElement;if(!ke||!je)return re;let St=je.getBoundingClientRect(),K=ke.getBoundingClientRect(),Fe=or,ye=or,st=Math.max(Fe,St.width-K.width-or),W=Math.max(ye,St.height-K.height-or);return {x:ts(re.x,Fe,st),y:ts(re.y,ye,W)}},[]),Le=useCallback(re=>{let ke=te.current,je=ke?.parentElement;if(!ke||!je)return re;let St=je.getBoundingClientRect(),K=ke.getBoundingClientRect(),Fe=or,ye=or,st=Math.max(Fe,St.width-K.width-or),W=Math.max(ye,St.height-K.height-or),ue={x:ts(re.x,Fe,st),y:ts(re.y,ye,W)},Qe=[{distance:Math.abs(ue.x-Fe),position:{x:Fe,y:ue.y}},{distance:Math.abs(ue.x-st),position:{x:st,y:ue.y}},{distance:Math.abs(ue.y-ye),position:{x:ue.x,y:ye}},{distance:Math.abs(ue.y-W),position:{x:ue.x,y:W}}].reduce((mt,yt)=>yt.distance<mt.distance?yt:mt).position;return De(Qe.x>=(Fe+st)/2?"right":"left"),Qe},[]),ve=useMemo(()=>{if(!be||xe)return H.x;if(pe==="right"){let je=te.current?.parentElement?.getBoundingClientRect().width,St=$e?Am:Bm;return je?Math.max(or,je-St-or):$e?H.x:H.x-(Bm-Am)}return H.x},[pe,H.x,xe,be,$e]),Pe=useCallback(re=>{if(!be||!$e||RC(re.target))return;re.preventDefault(),re.currentTarget.setPointerCapture(re.pointerId);let ke=q({x:ve,y:H.y});De("left"),ee(ke),Ie.current={pointerId:re.pointerId,startClientX:re.clientX,startClientY:re.clientY,startX:ke.x,startY:ke.y,currentX:ke.x,currentY:ke.y},se(true);},[q,ve,H.y,be,$e]),at=useCallback(re=>{let ke=Ie.current;if(!ke||ke.pointerId!==re.pointerId)return;let je=q({x:ke.startX+re.clientX-ke.startClientX,y:ke.startY+re.clientY-ke.startClientY});ke.currentX=je.x,ke.currentY=je.y,ee(je);},[q]),We=useCallback(re=>{let ke=Ie.current;if(!(!ke||ke.pointerId!==re.pointerId)){try{re.currentTarget.releasePointerCapture(re.pointerId);}catch{}Ie.current=null,ee(Le({x:ke.currentX,y:ke.currentY})),se(false);}},[Le]);return useEffect(()=>{if(!be)return;let re=()=>{ee(St=>q(St));},ke=window.requestAnimationFrame(re),je=window.setTimeout(re,430);return ()=>{window.cancelAnimationFrame(ke),window.clearTimeout(je);}},[q,be,$e,pt]),jsx(ThemeProvider,{theme:Ee,children:jsx(el,{locale:a,children:jsxs(Box,{sx:re=>({minHeight:"100vh",width:"100%",display:"flex",flexDirection:"column",overflowX:"hidden",background:re.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":re.palette.background.default}),children:[jsx(es,{appTitle:e,logo:f,mode:S,onToggleMode:()=>A(re=>re==="system"?"dark":re==="dark"?"light":"system"),locale:a,localeLabel:n,localeOptions:i,onLocaleChange:s,user:d,onUserSetting:l,onUserLogout:c,userMenuItems:g,searchPlaceholder:m,showSearch:Ke,onSearch:u,onSearchAdd:C,leftSlot:h,rightSlot:p}),b==="floating"&&jsx(Box,{sx:[re=>({position:"fixed",left:{xs:12,sm:"auto"},right:{xs:12,md:24},bottom:{xs:12,md:24},width:{xs:"auto",sm:540},maxWidth:"calc(100vw - 24px)",zIndex:re.zIndex.modal+30,pointerEvents:"auto",filter:re.palette.mode==="dark"?"drop-shadow(0 18px 42px rgba(0,0,0,0.58))":"drop-shadow(0 18px 36px rgba(15,23,42,0.18))"}),...Array.isArray(v)?v:v?[v]:[]],children:jsx(nd,{searchPlaceholder:m,onSearch:u,onSearchAdd:C,maxWidth:"100%"})}),jsxs(Box,{sx:{flex:1,minHeight:0,minWidth:0,display:"flex",overflowX:"hidden",position:"relative"},children:[r&&!be&&jsx(Box,{sx:{pt:1.5,pb:1.5,pl:1.5,pr:$e?.5:1.5,display:"flex",alignItems:"flex-start",flexShrink:0},children:jsx(Qs,{...qe,maxHeight:pt,colorMode:lt,displayMode:Ue,onDisplayModeChange:Oe,showDisplayModeToggle:T&&$e})}),r&&be&&jsx(Box,{ref:te,onPointerDown:Pe,onPointerMove:at,onPointerUp:We,onPointerCancel:We,sx:re=>({position:"absolute",top:H.y,left:ve,zIndex:re.zIndex.drawer+5,display:"flex",alignItems:"flex-start",cursor:$e?xe?"grabbing":"grab":"default",touchAction:$e?"none":"auto",userSelect:xe?"none":void 0,transition:xe?"none":"left 180ms ease-out, top 180ms ease-out"}),children:jsx(Qs,{...qe,maxHeight:pt,colorMode:lt,displayMode:Ue,onDisplayModeChange:Oe,showDisplayModeToggle:T&&$e})}),jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",pt:1.5,pb:1.5,pr:1.5,pl:r&&!be&&$e?.5:1.5,...x},children:o})]})]})})})};var os="(blank)",Fm="Result",Lm="Grand Total",Nm={sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max"},zm=["sum","count","avg","min","max"];var Om=["palette","rows","columns","filters","values"];var Vm=e=>Om.includes(e),Hm=e=>e==="rows"||e==="columns"||e==="filters",rs=e=>{let t=e.split("|");return t.length===2&&t[0]==="container"&&Vm(t[1])?{kind:"container",zone:t[1]}:t.length===3&&t[0]==="item"&&Vm(t[1])&&t[2]?{kind:"item",zone:t[1],key:t[2]}:null},Gr=e=>e==null||e===""?os:e instanceof Date?e.toISOString().slice(0,10):String(e),Va=e=>JSON.stringify(e),Wm=(e,t)=>{let o=e.join(""),r=t.join("");return o.localeCompare(r,void 0,{sensitivity:"base"})},MC=e=>{if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"&&e.trim()!==""){let t=Number(e);return Number.isFinite(t)?t:null}return null},Dn=(e,t,o)=>{if(o==="count")return e.length;let r=e.map(a=>MC(a[t])).filter(a=>a!==null);return r.length===0?0:o==="sum"?r.reduce((a,n)=>a+n,0):o==="avg"?r.reduce((a,n)=>a+n,0)/r.length:o==="min"?Math.min(...r):Math.max(...r)},eo=(e,t)=>{if(!e||e.length===0)return [];let o=new Set,r=[];return e.forEach(a=>{!t.has(a)||o.has(a)||(o.add(a),r.push(a));}),r},Ur=(e,t)=>e.length!==t.length?false:e.every((o,r)=>o===t[r]),$m=(e,t)=>{let o=Object.keys(e),r=Object.keys(t);return o.length!==r.length?false:o.every(a=>{let n=e[a]??[],i=t[a]??[];return Ur(n,i)})},as=(e,t)=>e.length!==t.length?false:e.every((o,r)=>{let a=t[r];return o.tokenId===a.tokenId&&o.fieldId===a.fieldId&&o.aggregation===a.aggregation}),id=e=>!e?.aggregations||e.aggregations.length===0?zm:e.aggregations,So=(e,t)=>{let o=id(t);return e&&o.includes(e)?e:t?.type==="number"&&o.includes("sum")?"sum":o.includes("count")?"count":o[0]},Bi=(e,t,o)=>{let r=o.get(t.fieldId);return r?.formatValue?r.formatValue(e):t.aggregation==="count"?Math.round(e).toLocaleString():e.toLocaleString(void 0,{minimumFractionDigits:0,maximumFractionDigits:2})};var Km=({options:e,selectedValues:t,onChange:o,minWidth:r=96})=>{let{t:a}=oe(),[n,i]=useState(""),s=useMemo(()=>{let l=n.trim().toLowerCase();return l?e.filter(c=>c.toLowerCase().includes(l)):e},[e,n]),d=e.length>0&&t.length===e.length;return jsx(FormControl,{size:"small",sx:{minWidth:r},children:jsxs(Select,{multiple:true,value:t,onChange:l=>{let c=l.target.value,g=typeof c=="string"?c.split(","):c;o(g);},onClick:l=>l.stopPropagation(),onMouseDown:l=>l.stopPropagation(),renderValue:l=>{let c=l;return e.length===0?a("pivot.filter.na"):c.length===0?a("common.none"):c.length===e.length?a("common.all"):`${c.length}/${e.length}`},MenuProps:{PaperProps:{sx:{maxHeight:320,bgcolor:"background.paper"}}},sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:[jsx(ListSubheader,{disableSticky:true,sx:l=>({bgcolor:"background.paper",py:.8,lineHeight:"normal",borderBottom:`1px solid ${l.palette.divider}`}),children:jsx(TextField,{size:"small",placeholder:`${a("common.search")}...`,fullWidth:true,value:n,onChange:l=>i(l.target.value),onKeyDown:l=>l.stopPropagation(),onClick:l=>l.stopPropagation(),sx:{m:0,"& .MuiInputBase-input":{fontSize:"0.75rem",py:.7}}})}),jsx(Box,{sx:l=>({px:1.5,py:.5,borderBottom:`1px solid ${l.palette.divider}`,bgcolor:"background.paper"}),onMouseDown:l=>{l.preventDefault(),l.stopPropagation();},onClick:l=>{l.preventDefault(),l.stopPropagation();},children:jsx(Button,{variant:"text",size:"small",onClick:l=>{l.preventDefault(),l.stopPropagation(),o(d?[]:e);},sx:{minWidth:"auto",px:0,py:.2,fontSize:"0.76rem",fontWeight:700,textTransform:"none"},children:a(d?"pivot.filter.deselectAll":"pivot.filter.selectAll")})}),s.length===0&&jsx(MenuItem,{disabled:true,sx:{fontSize:"0.75rem"},children:a("pivot.filter.noResults")}),s.map(l=>{let c=t.includes(l);return jsxs(MenuItem,{value:l,sx:{fontSize:"0.75rem",py:.25},children:[jsx(Checkbox,{size:"small",checked:c,sx:{p:.5,mr:.5}}),jsx(ListItemText,{primary:l,primaryTypographyProps:{sx:{fontSize:"0.75rem",lineHeight:1.2}}})]},l)})]})})};var sd=({label:e,subtitle:t,isDragging:o,dragRef:r,listeners:a,attributes:n,style:i})=>jsx(Paper,{ref:r,...a,...n,sx:s=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:s.palette.mode==="dark"?"#111111":"background.paper",touchAction:"none"}),style:{...i,opacity:o?.3:1,cursor:o?"grabbing":"grab"},children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[jsx(Box,{sx:s=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.3,borderRadius:1,bgcolor:s.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)"}),children:jsx(WC,{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})]})]})}),jm=({id:e,label:t,subtitle:o})=>{let{setNodeRef:r,listeners:a,attributes:n,isDragging:i}=useDraggable({id:e});return jsx(sd,{label:t,subtitle:o,isDragging:i,dragRef:r,listeners:a,attributes:n})};var En=({zone:e,title:t,hint:o,icon:r,children:a,itemCount:n,onClear:i})=>{let s=`container|${e}`,{isOver:d,setNodeRef:l}=useDroppable({id:s}),{t:c}=oe();return jsxs(Paper,{ref:l,sx:g=>({p:1.1,borderRadius:3,border:"1px dashed",borderColor:d?"primary.main":g.palette.divider,bgcolor:d?g.palette.mode==="dark"?"rgba(25, 118, 210, 0.16)":"rgba(47, 91, 255, 0.06)":g.palette.mode==="dark"?"rgba(255,255,255,0.02)":"rgba(245, 248, 255, 0.86)",transition:"all 120ms ease",minHeight:120,display:"flex",flexDirection:"column"}),children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[r,jsx(Typography,{sx:{fontSize:"0.79rem",fontWeight:800,letterSpacing:.2},children:t}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:["(",n,")"]})]}),n>0&&i&&jsx(Tooltip,{title:c("pivot.clearArea"),children:jsx(IconButton,{size:"small",onClick:i,sx:{p:.25},children:jsx(_C,{sx:{fontSize:16}})})})]}),jsx(Typography,{sx:{mt:.5,mb:.9,fontSize:"0.7rem",color:"text.secondary"},children:o}),jsx(Box,{sx:{flex:1},children:a})]})};var Xm={xs:1.2,md:1.6},Ln=({title:e,subtitle:t,collapsed:o,onToggleCollapse:r,expandAriaLabel:a,collapseAriaLabel:n,children:i,bodySx:s,unmountOnExit:d=false,headerActions:l})=>jsxs(Paper,{sx:c=>({borderRadius:3,border:`1px solid ${c.palette.divider}`,overflow:"hidden",bgcolor:alpha(c.palette.background.paper,.95)}),children:[jsxs(Box,{sx:c=>({px:Xm,py:1,display:"flex",alignItems:"center",justifyContent:"space-between",gap:1,borderBottom:o?"none":`1px solid ${c.palette.divider}`}),children:[jsxs(Box,{sx:{minWidth:0,flex:1},children:[jsx(Typography,{sx:{fontSize:"0.9rem",fontWeight:800},children:e}),jsx(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:t})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.75,flexShrink:0},children:[l,jsx(IconButton,{size:"small","aria-label":o?a:n,onClick:r,sx:c=>({border:`1px solid ${c.palette.divider}`,bgcolor:alpha(c.palette.background.paper,.88),width:28,height:28,borderRadius:999,flexShrink:0,"&:hover":{bgcolor:c.palette.mode==="dark"?alpha(c.palette.primary.main,.18):alpha(c.palette.primary.main,.08)}}),children:jsx(Wx,{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:Xm,py:{xs:1.2,md:1.6}},...Array.isArray(s)?s:s?[s]:[]],children:i})})]});var cs=({label:e,caption:t,onRemove:o,trailing:r,isDragging:a,dragRef:n,listeners:i,attributes:s,style:d})=>jsx(Paper,{ref:n,style:d,sx:l=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:l.palette.mode==="dark"?"#111111":"background.paper",touchAction:"none",opacity:a?0:1}),children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[jsx(Box,{...s,...i,sx:l=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.25,borderRadius:1,bgcolor:l.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)",cursor:"grab"}),children:jsx(WC,{sx:{fontSize:15,color:"text.secondary"}})}),jsxs(Box,{sx:{minWidth:0,flex:1},children:[jsx(Typography,{sx:{fontSize:"0.8rem",fontWeight:700,lineHeight:1.2},children:e}),t&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary",lineHeight:1.2},children:t})]}),r,o&&jsx(IconButton,{size:"small",onClick:l=>{l.stopPropagation(),o();},sx:{p:.2},children:jsx(Xh,{sx:{fontSize:16}})})]})}),Ei=({id:e,label:t,caption:o,onRemove:r,trailing:a})=>{let{setNodeRef:n,attributes:i,listeners:s,transform:d,transition:l,isDragging:c}=useSortable({id:e}),g={transform:d?`translate3d(${d.x}px, ${d.y}px, 0)`:void 0,transition:l,zIndex:c?999:"auto"};return jsx(cs,{label:t,caption:o,onRemove:r,trailing:a,isDragging:c,dragRef:n,listeners:s,attributes:i,style:g})};var ps={rows:jsx(ik,{fontSize:"small"}),columns:jsx(ub,{fontSize:"small"}),filters:jsx(nk,{fontSize:"small"}),values:jsx(fb,{fontSize:"small"})},Jm=({isConfiguratorCollapsed:e,onToggleCollapse:t,availableFields:o,fieldMap:r,filterFields:a,columnFields:n,rowFields:i,valueFields:s,clearZone:d,removeFieldFromZone:l,getFilterSelectionSummary:c,renderDimensionFilterSelect:g,renderAggregationSelect:f,getAggregationLabel:m})=>{let{t:b}=oe(),v=[`${b("pivot.zone.rows")} ${i.length}`,`${b("pivot.zone.columns")} ${n.length}`,`${b("pivot.zone.filters")} ${a.length}`,`${b("pivot.zone.values")} ${s.length}`].join(" \xB7 ");return jsx(Ln,{title:b("pivot.config.title"),subtitle:v,collapsed:e,onToggleCollapse:t,expandAriaLabel:b("pivot.collapse.ariaExpand"),collapseAriaLabel:b("pivot.collapse.ariaCollapse"),unmountOnExit:true,children:jsxs(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",lg:"260px 1fr"},gap:2},children:[jsx(En,{zone:"palette",title:b("pivot.fieldList"),hint:b("pivot.availableDimensions"),itemCount:o.length,icon:jsx(WC,{sx:{fontSize:16,color:"text.secondary"}}),children:jsxs(Stack,{spacing:.8,sx:{maxHeight:400,overflowY:"auto",pr:.5},children:[o.length===0&&jsx(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary",py:1},children:b("pivot.allFieldsInUse")}),o.map(u=>jsx(jm,{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(En,{zone:"filters",title:b("pivot.zone.filters"),hint:b("pivot.hint.filters"),icon:ps.filters,itemCount:a.length,onClear:()=>d("filters"),children:jsx(SortableContext,{items:a.map(u=>`item|filters|${u}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:a.map(u=>jsx(Ei,{id:`item|filters|${u}`,label:r.get(u)?.label??u,caption:c(u),trailing:g(u),onRemove:()=>l("filters",u)},u))})})}),jsx(En,{zone:"columns",title:b("pivot.zone.columns"),hint:b("pivot.hint.columns"),icon:ps.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(Ei,{id:`item|columns|${u}`,label:r.get(u)?.label??u,caption:`${r.get(u)?.type??"dimension"} \u2022 ${c(u)}`,trailing:g(u),onRemove:()=>l("columns",u)},u))})})})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(En,{zone:"rows",title:b("pivot.zone.rows"),hint:b("pivot.hint.rows"),icon:ps.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(Ei,{id:`item|rows|${u}`,label:r.get(u)?.label??u,caption:`${r.get(u)?.type??"dimension"} \u2022 ${c(u)}`,trailing:g(u),onRemove:()=>l("rows",u)},u))})})}),jsx(En,{zone:"values",title:b("pivot.zone.values"),hint:b("pivot.hint.values"),icon:ps.values,itemCount:s.length,onClear:()=>d("values"),children:jsx(SortableContext,{items:s.map(u=>`item|values|${u.tokenId}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:s.map(u=>{let C=r.get(u.fieldId)?.label??u.fieldId,p=`${m(u.aggregation)}(${C})`;return jsx(Ei,{id:`item|values|${u.tokenId}`,label:C,caption:p,trailing:f(u),onRemove:()=>l("values",u.tokenId)},u.tokenId)})})})})]})]})]})})};var eg=e=>e.toLocaleString(void 0,{maximumFractionDigits:1}),tg=({data:e,primaryLabel:t,secondaryLabel:o,formatPrimaryValue:r,formatSecondaryValue:a})=>{let n=useTheme$1();if(e.length===0)return null;let i=720,s=250,d={top:20,right:24,bottom:40,left:52},l=o?e.map(u=>u.primaryValue):e.map((u,C)=>C+1),c=o?e.map(u=>u.secondaryValue??0):e.map(u=>u.primaryValue),g=Math.max(...l,1),f=Math.max(...c,1),m=i-d.left-d.right,b=s-d.top-d.bottom,v=e.map((u,C)=>{let p=o?u.primaryValue:C+1,h=o?u.secondaryValue??0:u.primaryValue,x=d.left+p/g*m,w=s-d.bottom-h/f*b;return {...u,x,y:w,rawX:p,rawY:h}});return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{component:"svg",viewBox:`0 0 ${i} ${s}`,sx:{width:"100%",minWidth:i,height:s},children:[jsx("line",{x1:d.left,y1:s-d.bottom,x2:i-d.right,y2:s-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),jsx("line",{x1:d.left,y1:d.top,x2:d.left,y2:s-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),v.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
13
  `,o?`${t}: ${r(u.primaryValue)}`:`${t}: ${r(u.primaryValue)}`,o?`
14
- ${o}: ${(a??r)(u.secondaryValue??0)}`:""]})}),jsx("text",{x:u.x,y:Math.max(u.y-12,d.top+8),textAnchor:"middle",fontSize:"10",fill:n.palette.text.secondary,children:u.name})]},u.name)),jsx("text",{x:i/2,y:s-10,textAnchor:"middle",fontSize:"11",fill:n.palette.text.secondary,children:o?t:"Index"}),jsx("text",{x:16,y:s/2,textAnchor:"middle",transform:`rotate(-90 16 ${s/2})`,fontSize:"11",fill:n.palette.text.secondary,children:o??t}),jsx("text",{x:d.left,y:d.top-4,fontSize:"10",fill:n.palette.text.secondary,children:Hm(f)}),jsx("text",{x:i-d.right,y:s-d.bottom+16,textAnchor:"end",fontSize:"10",fill:n.palette.text.secondary,children:Hm(g)})]})}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(3, minmax(0, 1fr))"},gap:1},children:e.map(u=>jsxs(Box,{sx:v=>({borderRadius:2,px:1.25,py:1,border:`1px solid ${alpha(v.palette.divider,.7)}`,bgcolor:alpha(v.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700},noWrap:true,title:u.name,children:u.name}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[t,": ",r(u.primaryValue)]}),o&&jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[o,": ",(a??r)(u.secondaryValue??0)]})]},u.name))})]})};var rd=e=>Math.max(...e,1),Gm=({data:e,chartType:t,primaryLabel:o,secondaryLabel:r,formatPrimaryValue:a,formatSecondaryValue:n})=>{let i=useTheme$1(),s=i.palette.primary.main,d=i.palette.warning.main;if(e.length===0)return null;if(t==="bar-horizontal"){let p=rd(e.flatMap(b=>[b.primaryValue,b.secondaryValue??0]));return jsx(Stack,{spacing:1.1,children:e.map(b=>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:b.name,children:b.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:`${b.primaryValue/p*100}%`,height:"100%",bgcolor:s}})}),r&&jsx(Box,{sx:{height:8,borderRadius:999,overflow:"hidden",bgcolor:alpha(i.palette.action.active,.08)},children:jsx(Box,{sx:{width:`${(b.secondaryValue??0)/p*100}%`,height:"100%",bgcolor:d}})})]}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},fontWeight:700},children:a(b.primaryValue)}),r&&jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},color:"text.secondary"},children:(n??a)(b.secondaryValue??0)})]})]},b.name))})}if(t==="bar-vertical"){let p=rd(e.flatMap(y=>[y.primaryValue,y.secondaryValue??0])),b=r?92:76;return jsx(Box,{sx:{overflowX:"auto",pb:.5},children:jsx(Box,{sx:{minWidth:Math.max(620,e.length*b),display:"grid",gridTemplateColumns:`repeat(${e.length}, minmax(56px, 1fr))`,gap:1,alignItems:"end"},children:e.map(y=>jsxs(Box,{sx:{minWidth:0},children:[jsxs(Box,{sx:{height:210,display:"flex",alignItems:"flex-end",justifyContent:"center",gap:.8},children:[jsx(Box,{sx:{width:r?16:26,minHeight:8,height:`${Math.max(y.primaryValue/p*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:s},title:`${o}: ${a(y.primaryValue)}`}),r&&jsx(Box,{sx:{width:16,minHeight:8,height:`${Math.max((y.secondaryValue??0)/p*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:d},title:`${r}: ${(n??a)(y.secondaryValue??0)}`})]}),jsx(Typography,{sx:{fontSize:"0.76rem",fontWeight:700},noWrap:true,title:y.name,children:y.name}),jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary"},noWrap:true,title:a(y.primaryValue),children:a(y.primaryValue)}),r&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary"},noWrap:true,title:(n??a)(y.secondaryValue??0),children:(n??a)(y.secondaryValue??0)})]},y.name))})})}let l=Math.max(680,e.length*74),c=240,g={top:20,right:18,bottom:36,left:18},f=rd(e.flatMap(p=>[p.primaryValue,p.secondaryValue??0])),m=l-g.left-g.right,h=c-g.top-g.bottom,C=p=>e.map((b,y)=>{let T=g.left+y*m/Math.max(e.length-1,1),E=c-g.bottom-p(b)/f*h;return {x:T,y:E,item:b}}),u=C(p=>p.primaryValue),v=r?C(p=>p.secondaryValue??0):[];return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.1},children:[jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{component:"svg",viewBox:`0 0 ${l} ${c}`,sx:{width:"100%",minWidth:l,height:c},children:[jsx("line",{x1:g.left,y1:c-g.bottom,x2:l-g.right,y2:c-g.bottom,stroke:alpha(i.palette.text.secondary,.35)}),jsx("polyline",{fill:"none",stroke:s,strokeWidth:3,points:u.map(p=>`${p.x},${p.y}`).join(" ")}),u.map(p=>jsx("circle",{cx:p.x,cy:p.y,r:4,fill:s,children:jsxs("title",{children:[p.item.name,`
15
- `,o,": ",a(p.item.primaryValue)]})},`primary-${p.item.name}`)),r&&jsxs(Fragment,{children:[jsx("polyline",{fill:"none",stroke:d,strokeWidth:2.5,strokeDasharray:"5 5",points:v.map(p=>`${p.x},${p.y}`).join(" ")}),v.map(p=>jsx("circle",{cx:p.x,cy:p.y,r:3.5,fill:d,children:jsxs("title",{children:[p.item.name,`
16
- `,r,": ",(n??a)(p.item.secondaryValue??0)]})},`secondary-${p.item.name}`))]})]})}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",xl:"repeat(4, minmax(0, 1fr))"},gap:1},children:e.map(p=>jsxs(Box,{sx:b=>({borderRadius:2,px:1.1,py:.9,border:`1px solid ${alpha(b.palette.divider,.7)}`,bgcolor:alpha(b.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.76rem",fontWeight:700},noWrap:true,title:p.name,children:p.name}),jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:a(p.primaryValue)}),r&&jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:(n??a)(p.secondaryValue??0)})]},p.name))})]})};var Um=(e,t,o)=>{let r=new Set,a=[];return e.forEach(n=>{r.has(n)||(r.add(n),a.push({fieldId:n,label:o.get(n)?.label??n,zone:"rows"}));}),t.forEach(n=>{r.has(n)||(r.add(n),a.push({fieldId:n,label:o.get(n)?.label??n,zone:"columns"}));}),a},Km=(e,t,o)=>e.map(r=>{let a=t.get(r.fieldId),n=a?.label??r.fieldId;return {fieldId:r.fieldId,label:`${o(r.aggregation)} \xB7 ${n}`,item:r,field:a}}),qm=({rows:e,dimensionFieldId:t,primaryValue:o,secondaryValue:r})=>{if(!t)return [];let a=new Map;return e.forEach(n=>{let i=Vr(n[t]),s=a.get(i);if(s){s.push(n);return}a.set(i,[n]);}),Array.from(a.entries()).sort((n,i)=>n[0].localeCompare(i[0],void 0,{sensitivity:"base"})).map(([n,i])=>({name:n,primaryValue:wn(i,o.fieldId,o.aggregation),secondaryValue:r?wn(i,r.fieldId,r.aggregation):void 0}))};var _m=({rows:e,fieldMap:t,rowFields:o,columnFields:r,valueFields:a,chartDimensionFieldId:n,chartPrimaryValueFieldId:i,chartSecondaryValueFieldId:s,chartType:d,isCollapsed:l,onChartDimensionFieldIdChange:c,onChartPrimaryValueFieldIdChange:g,onChartSecondaryValueFieldIdChange:f,onChartTypeChange:m,onToggleCollapse:h,getAggregationLabel:C})=>{let{t:u}=ae(),v=useMemo(()=>Um(o,r,t),[r,t,o]),p=useMemo(()=>Km(a,t,C),[t,C,a]),b=p.find(S=>S.fieldId===i)??p[0],y=p.find(S=>S.fieldId===s&&S.fieldId!==b?.fieldId)??null,T=v.find(S=>S.fieldId===n)??v[0],E=T&&b?u("pivot.chart.subtitleReady",{dimension:T.label,measure:y?`${b.label} / ${y.label}`:b.label}):u("pivot.chart.subtitle"),R=useMemo(()=>!T||!b?[]:qm({rows:e,dimensionFieldId:T.fieldId,primaryValue:b.item,secondaryValue:y?.item}),[b,e,y,T]),w=S=>b?wi(S,b.item,t):S.toLocaleString(),I=S=>y?wi(S,y.item,t):S.toLocaleString(),k=v.length>1||p.length>1;return jsxs(Mn,{title:u("pivot.chart.title"),subtitle:E,collapsed:l,onToggleCollapse:h,expandAriaLabel:u("pivot.chart.collapse.ariaExpand"),collapseAriaLabel:u("pivot.chart.collapse.ariaCollapse"),bodySx:{display:"flex",flexDirection:"column",gap:1.1},children:[k&&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:T?.fieldId??"",onChange:S=>c(String(S.target.value)),sx:{fontSize:"0.75rem",height:32},children:v.map(S=>jsx(MenuItem,{value:S.fieldId,sx:{fontSize:"0.75rem"},children:S.label},S.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:b?.fieldId??"",onChange:S=>g(String(S.target.value)),sx:{fontSize:"0.75rem",height:32},children:p.map(S=>jsx(MenuItem,{value:S.fieldId,sx:{fontSize:"0.75rem"},children:S.label},S.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:u("pivot.chart.secondaryMeasure")}),jsxs(Select,{value:y?.fieldId??"",onChange:S=>f(String(S.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:u("common.none")}),p.filter(S=>S.fieldId!==b?.fieldId).map(S=>jsx(MenuItem,{value:S.fieldId,sx:{fontSize:"0.75rem"},children:S.label},S.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:S=>m(S.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:T?b?R.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(Wm,{data:R,primaryLabel:b.label,secondaryLabel:y?.label,formatPrimaryValue:w,formatSecondaryValue:I}):jsx(Gm,{data:R,chartType:d,primaryLabel:b.label,secondaryLabel:y?.label,formatPrimaryValue:w,formatSecondaryValue:I}):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 is=({node:e,dataColumns:t,fieldMap:o,level:r,expandedKeys:a,onToggle:n,getValue:i})=>{let s=a.has(e.key),d=e.children.length>0,l=e.isGrandTotal;return jsxs(Fragment,{children:[jsxs(TableRow,{sx:c=>({bgcolor:l?c.palette.mode==="dark"?"rgba(25, 118, 210, 0.22)":"rgba(47, 91, 255, 0.08)":c.palette.mode==="dark"?"#111111":"background.paper","&:hover":{bgcolor:l?c.palette.mode==="dark"?"rgba(25, 118, 210, 0.28)":"rgba(47, 91, 255, 0.12)":c.palette.mode==="dark"?"#181818":"rgba(0, 0, 0, 0.02)"}}),children:[jsxs(TableCell,{sx:c=>({fontSize:"0.76rem",fontWeight:l?800:600,borderBottom:`1px solid ${c.palette.divider}`,whiteSpace:"nowrap",pl:r*2+1,display:"flex",alignItems:"center",height:40}),children:[d&&!l&&jsx(IconButton,{size:"small",onClick:()=>n(e.key),sx:{p:.2,mr:.5,ml:-1},children:s?jsx(kb,{sx:{fontSize:16}}):jsx(Tf,{sx:{fontSize:16}})}),!d&&!l&&r>0&&jsx(Box,{sx:{width:20}}),e.value]}),t.map(c=>jsx(TableCell,{align:"right",sx:{fontSize:"0.76rem",fontWeight:l?800:500,borderBottom:g=>`1px solid ${g.palette.divider}`,whiteSpace:"nowrap"},children:wi(i?i(e,c.id):e.aggregatedValues[c.id]??0,c.valueItem,o)},`${e.key}-${c.id}`))]}),s&&e.children.map(c=>jsx(is,{node:c,dataColumns:t,fieldMap:o,level:r+1,expandedKeys:a,onToggle:n,getValue:i},c.key))]})};var sd=(e,t,o)=>{let r=[...e,...t];return o&&r.includes(o)?o:r[0]??""},cs=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",cd=(e,t,o)=>o===""?"":o&&o!==t&&e.some(r=>r.fieldId===o)?o:e.find(r=>r.fieldId!==t)?.fieldId??"",eg=e=>{let t=new Set,o=r=>{r.forEach(a=>{a.children.length>0&&(t.add(a.key),o(a.children));});};return o(e),t},og=(e,t,o=0)=>e.length===0?o:e.reduce((r,a)=>a.children.length===0||!t.has(a.key)?Math.max(r,o+1):Math.max(r,og(a.children,t,o+1)),o),Sk=(e,t)=>{let o=[],r=a=>{a.forEach(n=>{if(n.children.length>0&&t.has(n.key)){r(n.children);return}o.push(n);});};return r(e),o},mE=({title:e,rows:t,fields:o,initialLayout:r,initialChart:a,emptyText:n,maxPreviewHeight:i=520,initialChartCollapsed:s=false,initialTableCollapsed:d=false,model:l,enablePresetManagement:c=false,presets:g,defaultPresets:f,onPresetsChange:m,initialPresetId:h,onPresetApplied:C})=>{let{t:u}=ae(),v=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}})),p=useRef(0),b=useRef(false),y=e??u("pivot.title.default"),T=n??u("pivot.empty"),E=useMemo(()=>({sum:u("pivot.agg.sum"),count:u("pivot.agg.count"),avg:u("pivot.agg.avg"),min:u("pivot.agg.min"),max:u("pivot.agg.max")}),[u]),R=useCallback(x=>E[x]??km[x],[E]),w=useMemo(()=>new Set(o.map(x=>x.id)),[o]),I=useMemo(()=>new Map(o.map(x=>[x.id,x])),[o]),[k,S]=useState(()=>eo(r?.rows,w)),[B,P]=useState(()=>eo(r?.columns,w)),[M,A]=useState(()=>eo(r?.filters,w)),[Z,W]=useState(()=>{let x=r?.values??[],F=new Set,L=[];return x.forEach(X=>{if(!w.has(X.fieldId)||F.has(X.fieldId))return;F.add(X.fieldId),p.current+=1;let ve=I.get(X.fieldId);L.push({tokenId:`v${p.current}`,fieldId:X.fieldId,aggregation:So(X.aggregation,ve)});}),L}),[K,ee]=useState({}),[le,G]=useState(true),[te,me]=useState(false),[we,Ce]=useState(()=>sd(eo(r?.rows,w),eo(r?.columns,w),a?.dimensionFieldId)),[re,oe]=useState(()=>{let x=(r?.values??[]).filter((F,L,X)=>w.has(F.fieldId)&&X.findIndex(ve=>ve.fieldId===F.fieldId)===L).map(F=>({tokenId:F.fieldId,fieldId:F.fieldId,aggregation:So(F.aggregation,I.get(F.fieldId))}));return cs(x,a?.primaryValueFieldId)}),[ye,Ge]=useState(()=>{let x=(r?.values??[]).filter((L,X,ve)=>w.has(L.fieldId)&&ve.findIndex(He=>He.fieldId===L.fieldId)===X).map(L=>({tokenId:L.fieldId,fieldId:L.fieldId,aggregation:So(L.aggregation,I.get(L.fieldId))})),F=cs(x,a?.primaryValueFieldId);return cd(x,F,a?.secondaryValueFieldId)}),[de,Te]=useState(a?.chartType??"bar-vertical"),[$e,ct]=useState(s),[fe,Le]=useState(d),[_e,dt]=useState(()=>f??[]),[rt,j]=useState(""),[Ne,_]=useState(false),[Q,Re]=useState(""),[Be,at]=useState(null),[it,gt]=useState(new Set(["__grand_total__"])),[Et,U]=useState(new Set),ze=l?.rowFields??k,Ae=l?.columnFields??B,ft=l?.filterFields??M,O=l?.valueFields??Z,xe=l?.filterSelections??K,Ke=l?.showGrandTotal??le,et=l?.isConfiguratorCollapsed??te,Ct=l?.chartDimensionFieldId??we,It=l?.chartPrimaryValueFieldId??re,oo=l?.chartSecondaryValueFieldId??ye,xo=l?.chartType??de,bt=l?.isChartCollapsed??$e,ar=l?.isTableCollapsed??fe,Pt=g??_e,nr=c||Pt.length>0||!!m,ro=useCallback(x=>{if(l?.setRowFields){l.setRowFields(x);return}S(x);},[l]),z=useCallback(x=>{if(l?.setColumnFields){l.setColumnFields(x);return}P(x);},[l]),N=useCallback(x=>{if(l?.setFilterFields){l.setFilterFields(x);return}A(x);},[l]),V=useCallback(x=>{if(l?.setValueFields){l.setValueFields(x);return}W(x);},[l]),ce=useCallback(x=>{if(l?.setFilterSelections){l.setFilterSelections(x);return}ee(x);},[l]),pe=useCallback(x=>{if(l?.setShowGrandTotal){l.setShowGrandTotal(x);return}G(x);},[l]),Pe=useCallback(x=>{if(l?.setIsConfiguratorCollapsed){l.setIsConfiguratorCollapsed(x);return}me(x);},[l]),ke=useCallback(x=>{if(l?.setChartDimensionFieldId){l.setChartDimensionFieldId(x);return}Ce(x);},[l]),Fe=useCallback(x=>{if(l?.setChartPrimaryValueFieldId){l.setChartPrimaryValueFieldId(x);return}oe(x);},[l]),Ue=useCallback(x=>{if(l?.setChartSecondaryValueFieldId){l.setChartSecondaryValueFieldId(x);return}Ge(x);},[l]),Rt=useCallback(x=>{if(l?.setChartType){l.setChartType(x);return}Te(x);},[l]),yt=useCallback(x=>{if(l?.setIsChartCollapsed){l.setIsChartCollapsed(x);return}ct(x);},[l]),Tt=useCallback(x=>{if(l?.setIsTableCollapsed){l.setIsTableCollapsed(x);return}Le(x);},[l]),ht=useCallback(x=>{let F=typeof x=="function"?x(Pt):x;g||dt(F),m?.(F);},[m,Pt,g]),Po=useMemo(()=>new Set([...ze,...Ae,...ft]),[ze,Ae,ft]),_t=useMemo(()=>o.filter(x=>!Po.has(x.id)),[o,Po]),Nt=useMemo(()=>{let x=[...ze,...Ae,...ft],F=new Set,L=[];return x.forEach(X=>{F.has(X)||(F.add(X),L.push(X));}),L},[Ae,ft,ze]);useEffect(()=>{ro(x=>{let F=x.filter(L=>w.has(L));return Or(x,F)?x:F}),z(x=>{let F=x.filter(L=>w.has(L));return Or(x,F)?x:F}),N(x=>{let F=x.filter(L=>w.has(L));return Or(x,F)?x:F}),V(x=>{let F=x.filter(L=>w.has(L.fieldId)).map(L=>({...L,aggregation:So(L.aggregation,I.get(L.fieldId))}));return Zl(x,F)?x:F});},[I,w]);let vo=useMemo(()=>{let x={};return Nt.forEach(F=>{let L=new Set;t.forEach(X=>{L.add(Vr(X[F]));}),x[F]=Array.from(L).sort((X,ve)=>X.localeCompare(ve));}),x},[Nt,t]);useEffect(()=>{ce(x=>{let F={};return Nt.forEach(L=>{let X=vo[L]??[],He=(x[L]??[]).filter(se=>X.includes(se)),H=Object.prototype.hasOwnProperty.call(x,L);F[L]=H?He:X;}),Rm(x,F)?x:F});},[Nt,vo]),useEffect(()=>{ke(x=>sd(ze,Ae,x));},[Ae,ze,ke]),useEffect(()=>{Fe(x=>cs(O,x));},[Fe,O]),useEffect(()=>{Ue(x=>cd(O,It,x));},[It,Ue,O]);let jt=useMemo(()=>t.filter(x=>Nt.every(F=>{let L=xe[F]??[],X=vo[F]??[];if(L.length===X.length)return true;if(L.length===0)return false;let ve=Vr(x[F]);return L.includes(ve)})),[Nt,vo,xe,t]),tt=useMemo(()=>{if(O.length===0)return null;let x=new Map;if(jt.forEach(H=>{let se=Ae.length>0?Ae.map(kt=>Vr(H[kt])):[u("pivot.valueLabel")],ie=Ea(se);x.set(ie,se);}),x.size===0){let H=Ae.length>0?Ae.map(()=>_l):[u("pivot.valueLabel")];x.set(Ea(H),H);}let F=Array.from(x.entries()).sort((H,se)=>Pm(H[1],se[1])),L=F.flatMap(([H,se])=>O.map(ie=>{let kt=I.get(ie.fieldId),$=`${R(ie.aggregation)} ${kt?.label??ie.fieldId}`,ge=Ae.length===0||O.length>1?`${se.join(" / ")} \u2022 ${$}`:se.join(" / ");return {id:`${H}::${ie.tokenId}`,colKey:H,valueItem:ie,label:ge}})),X=[];Ae.length>0&&F.forEach(([H,se])=>{let ie=L.filter(ge=>ge.colKey===H),kt=X,$=[];se.forEach((ge,J)=>{$.push(`d${J}:${ge}`);let Me=`col::${Ea($)}`,ut=kt.find(yr=>yr.key===Me);ut||(ut={key:Me,label:ge,children:[],leafColumnIds:[],path:se.slice(0,J+1),depth:J},kt.push(ut)),ie.forEach(yr=>{ut.leafColumnIds.includes(yr.id)||ut.leafColumnIds.push(yr.id);}),kt=ut.children;});});let ve=H=>{let se={};return L.forEach(ie=>{let kt=H.filter($=>{let ge=Ae.length>0?Ae.map(J=>Vr($[J])):[u("pivot.valueLabel")];return Ea(ge)===ie.colKey});se[ie.id]=wn(kt,ie.valueItem.fieldId,ie.valueItem.aggregation);}),se},He=[];if(ze.length===0)He.push({key:"root",value:u("pivot.resultLabel")||vm,children:[],isLeaf:true,aggregatedValues:ve(jt),path:[],depth:0});else {let H=(se,ie,kt)=>{if(ie>=ze.length)return [];let $=ze[ie],ge=new Map;return se.forEach(J=>{let Me=Vr(J[$]);ge.has(Me)||ge.set(Me,[]),ge.get(Me).push(J);}),Array.from(ge.keys()).sort().map(J=>{let Me=ge.get(J),ut=[...kt,J];return {key:Ea(ut),value:J,fieldId:$,aggregatedValues:ve(Me),children:H(Me,ie+1,ut),isLeaf:ie===ze.length-1,path:ut,depth:ie}})};He.push(...H(jt,0,[]));}return {dataColumns:L,columnTree:X,rowTree:He}},[Ae,I,jt,R,ze,u,O]),_o=useCallback((x,F)=>(p.current+=1,{tokenId:`v${p.current}`,fieldId:x,aggregation:So(F,I.get(x))}),[I]),Fo=useCallback(x=>{if(x==="rows")return ro([]);if(x==="columns")return z([]);if(x==="filters")return N([]);V([]);},[]),jo=useCallback((x,F)=>{if(x==="rows")return ro(L=>L.filter(X=>X!==F));if(x==="columns")return z(L=>L.filter(X=>X!==F));if(x==="filters")return N(L=>L.filter(X=>X!==F));V(L=>L.filter(X=>X.tokenId!==F));},[]),D=useCallback((x,F)=>{V(L=>L.map(X=>X.tokenId===x?{...X,aggregation:So(F,I.get(X.fieldId))}:X));},[I]),q=useCallback(x=>{at(String(x.active.id));},[]),Y=useCallback(x=>{if(at(null),!x.over)return;let F=jl(String(x.active.id)),L=jl(String(x.over.id));if(!F||!L||F.kind!=="item"||!F.key)return;if(F.zone===L.zone&&L.kind==="item"){if(F.zone==="rows"){let J=ze.indexOf(F.key),Me=ze.indexOf(L.key??"");J!==-1&&Me!==-1&&J!==Me&&ro(ut=>arrayMove(ut,J,Me));return}if(F.zone==="columns"){let J=Ae.indexOf(F.key),Me=Ae.indexOf(L.key??"");J!==-1&&Me!==-1&&J!==Me&&z(ut=>arrayMove(ut,J,Me));return}if(F.zone==="filters"){let J=ft.indexOf(F.key),Me=ft.indexOf(L.key??"");J!==-1&&Me!==-1&&J!==Me&&N(ut=>arrayMove(ut,J,Me));return}if(F.zone==="values"){let J=O.findIndex(ut=>ut.tokenId===F.key),Me=O.findIndex(ut=>ut.tokenId===(L.key??""));J!==-1&&Me!==-1&&J!==Me&&V(ut=>arrayMove(ut,J,Me));}return}let X=L.zone,ve=[...ze],He=[...Ae],H=[...ft],se=[...O],ie="",kt=null;if(F.zone==="palette")ie=F.key;else if(F.zone==="values"){let J=se.find(Me=>Me.tokenId===F.key);if(!J)return;ie=J.fieldId,kt=J,se=se.filter(Me=>Me.tokenId!==F.key);}else F.zone==="rows"?(ie=F.key,ve=ve.filter(J=>J!==ie)):F.zone==="columns"?(ie=F.key,He=He.filter(J=>J!==ie)):F.zone==="filters"&&(ie=F.key,H=H.filter(J=>J!==ie));if(!ie)return;let $=()=>{ve=ve.filter(J=>J!==ie),He=He.filter(J=>J!==ie),H=H.filter(J=>J!==ie);},ge=J=>{if(L.kind!=="item"||!L.key)return J==="rows"?ve.length:J==="columns"?He.length:J==="filters"?H.length:J==="values"?se.length:0;if(J==="rows"){let Me=ve.indexOf(L.key);return Me>=0?Me:ve.length}if(J==="columns"){let Me=He.indexOf(L.key);return Me>=0?Me:He.length}if(J==="filters"){let Me=H.indexOf(L.key);return Me>=0?Me:H.length}if(J==="values"){let Me=se.findIndex(ut=>ut.tokenId===L.key);return Me>=0?Me:se.length}return 0};if(X==="palette"){ro(ve),z(He),N(H),V(se);return}if(X==="values"){let J=ge("values"),Me=kt??_o(ie);se.splice(J,0,Me),ro(ve),z(He),N(H),V(se);return}if(Im(X)){$();let J=ge(X);X==="rows"?ve.splice(J,0,ie):X==="columns"?He.splice(J,0,ie):H.splice(J,0,ie),ro(ve),z(He),N(H),V(se);}},[Ae,_o,ft,ze,O]),ue=useCallback((x,F)=>{ce(L=>({...L,[x]:F}));},[]),Ee=useCallback(x=>{gt(F=>{let L=new Set(F);return L.has(x)?L.delete(x):L.add(x),L});},[]),We=useCallback(x=>{U(F=>{let L=new Set(F);return L.has(x)?L.delete(x):L.add(x),L});},[]),Qe=useCallback(x=>{let F=I.get(x.fieldId),L=Zc(F);return jsx(FormControl,{size:"small",sx:{minWidth:98},children:jsx(Select,{value:x.aggregation,onChange:X=>D(x.tokenId,X.target.value),onClick:X=>X.stopPropagation(),onMouseDown:X=>X.stopPropagation(),sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:L.map(X=>jsx(MenuItem,{value:X,sx:{fontSize:"0.75rem"},children:R(X)},X))})})},[I,R,D]),he=useCallback(x=>{let F=vo[x]??[],L=xe[x]??F;return F.length===0?u("pivot.filter.noValues"):L.length===0?u("pivot.filter.noneSelected"):L.length===F.length?u("pivot.filter.allValues"):u("pivot.filter.selectedCount",{selected:L.length,total:F.length})},[vo,xe,u]),je=useCallback(x=>{let F=vo[x]??[],L=xe[x]??F;return jsx(Am,{options:F,selectedValues:L,onChange:X=>ue(x,X)})},[vo,xe,ue]),nt=useCallback(()=>`pivot-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,[]),Mt=useCallback(()=>{let x={};return new Set([...Nt,...Object.keys(xe)]).forEach(L=>{if(!w.has(L))return;let X=xe[L]??[];x[L]=[...X];}),{layout:{rows:[...ze],columns:[...Ae],filters:[...ft],values:O.map(L=>({fieldId:L.fieldId,aggregation:L.aggregation}))},filterSelections:x,showGrandTotal:Ke,chart:{dimensionFieldId:Ct,primaryValueFieldId:It,secondaryValueFieldId:oo,chartType:xo}}},[Nt,Ct,It,oo,xo,Ae,ft,xe,ze,Ke,w,O]),lt=useCallback(x=>{let F=eo(x.layout.rows,w),L=eo(x.layout.columns,w),X=eo(x.layout.filters,w),ve=new Set,He=(x.layout.values??[]).filter(ie=>!w.has(ie.fieldId)||ve.has(ie.fieldId)?false:(ve.add(ie.fieldId),true)).map(ie=>_o(ie.fieldId,ie.aggregation)),H={};Object.entries(x.filterSelections??{}).forEach(([ie,kt])=>{!w.has(ie)||!Array.isArray(kt)||(H[ie]=Array.from(new Set(kt.map($=>String($)))));}),ro(F),z(L),N(X),V(He),ce(H),typeof x.showGrandTotal=="boolean"&&pe(x.showGrandTotal),ke(sd(F,L,x.chart?.dimensionFieldId));let se=cs(He,x.chart?.primaryValueFieldId);Fe(se),Ue(cd(He,se,x.chart?.secondaryValueFieldId)),Rt(x.chart?.chartType??"bar-vertical"),j(x.id),C?.(x);},[_o,C,ke,Fe,Ue,Rt,z,N,ce,ro,pe,V,w]),Jt=useCallback(x=>{if(!x){j("");return}let F=Pt.find(L=>L.id===x);if(!F){j("");return}lt(F);},[lt,Pt]),ao=useCallback(()=>{let x=u("pivot.preset.defaultName",{index:Pt.length+1});Re(x),_(true);},[Pt.length,u]),Co=useCallback(()=>{let x=Q.trim();if(!x)return;let F={id:nt(),name:x,...Mt()};ht(L=>[...L,F]),j(F.id),_(false);},[Mt,nt,Q,ht]),$t=useCallback(()=>{rt&&(ht(x=>x.filter(F=>F.id!==rt)),j(""));},[rt,ht]);useEffect(()=>{if(!h||b.current)return;let x=Pt.find(F=>F.id===h);x&&(b.current=true,lt(x));},[lt,h,Pt]),useEffect(()=>{rt&&(Pt.some(x=>x.id===rt)||j(""));},[rt,Pt]);let no=useMemo(()=>{if(!Ke||!tt||!ze.length)return null;let x={};return tt.dataColumns.forEach(F=>{let L=jt.filter(X=>{let ve=Ae.length>0?Ae.map(He=>Vr(X[He])):[u("pivot.valueLabel")];return Ea(ve)===F.colKey});x[F.id]=wn(L,F.valueItem.fieldId,F.valueItem.aggregation);}),{key:"__grand_total__",value:u("pivot.grandTotal")||Cm,children:[],isLeaf:false,isGrandTotal:true,aggregatedValues:x,path:[],depth:-1}},[Ke,tt,jt,Ae,ze.length,u]),xt=useMemo(()=>eg(tt?.rowTree??[]),[tt]),Zt=useMemo(()=>eg(tt?.columnTree??[]),[tt]);useEffect(()=>{gt(x=>{let F=new Set;return x.has("__grand_total__")&&F.add("__grand_total__"),xt.forEach(L=>{x.has(L)&&F.add(L);}),F});},[xt]),useEffect(()=>{U(x=>{let F=new Set;return Zt.forEach(L=>{x.has(L)&&F.add(L);}),F});},[Zt]);let br=useCallback(()=>{gt(x=>{let F=new Set(x);return xt.forEach(L=>F.add(L)),F});},[xt]),Zo=useCallback(()=>{gt(x=>{let F=new Set;return x.has("__grand_total__")&&F.add("__grand_total__"),F});},[]),qa=useCallback(()=>{U(new Set(Zt));},[Zt]),_a=useCallback(()=>{U(new Set);},[]),ja=useMemo(()=>!tt||Ae.length===0?[]:Sk(tt.columnTree,Et),[Ae.length,Et,tt]),Eo=useMemo(()=>{if(!tt)return [];if(Ae.length===0)return tt.dataColumns.map(F=>({id:F.id,label:F.label,leafColumnIds:[F.id],valueItem:F.valueItem}));let x=new Map(tt.dataColumns.map(F=>[F.id,F]));return ja.flatMap(F=>{let L=new Map;return F.leafColumnIds.forEach(X=>{let ve=x.get(X);if(!ve)return;let He=ve.valueItem.tokenId,H=`${R(ve.valueItem.aggregation)} ${I.get(ve.valueItem.fieldId)?.label??ve.valueItem.fieldId}`,se=L.get(He);if(se){se.leafColumnIds.push(X);return}L.set(He,{id:`${F.key}::${He}`,label:O.length>1?H:F.label,leafColumnIds:[X],valueItem:ve.valueItem});}),Array.from(L.values())})},[Ae.length,I,R,tt,O.length,ja]),Za=useMemo(()=>new Map(Eo.map(x=>[x.id,x])),[Eo]),Xa=useMemo(()=>Eo.map(x=>({id:x.id,colKey:x.id,valueItem:x.valueItem,label:x.label})),[Eo]),ba=useMemo(()=>{if(!tt||Ae.length===0)return [];let x=[],F=og(tt.columnTree,Et),L=F+(O.length>1?1:0),X=(ve,He)=>{x[He]??(x[He]=[]),ve.forEach(H=>{let se=H.children.length>0&&Et.has(H.key),ie=Eo.filter($=>H.leafColumnIds.some(ge=>$.leafColumnIds.includes(ge))).length,kt=se||O.length>1?1:L-He;x[He].push({key:H.key,label:H.label,colSpan:ie,rowSpan:kt,expandable:H.children.length>0,expanded:se}),se&&X(H.children,He+1);});};return X(tt.columnTree,0),O.length>1&&(x[F]=Eo.map(ve=>({key:ve.id,label:ve.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))),x},[Ae.length,Et,tt,O.length,Eo]),Pr=useCallback((x,F)=>F.leafColumnIds.reduce((L,X)=>L+(x.aggregatedValues[X]??0),0),[]),_r=useMemo(()=>jsxs(Fragment,{children:[jsx(Button,{size:"small",variant:"text",onClick:br,disabled:xt.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.expandRowsAll")}),jsx(Button,{size:"small",variant:"text",onClick:Zo,disabled:xt.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:qa,disabled:Zt.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.expandColumnsAll")}),jsx(Button,{size:"small",variant:"text",onClick:_a,disabled:Ae.length===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.collapseColumnsAll")})]}),[Ae.length,Zt.size,xt.size,_a,Zo,qa,br,u]),jr=()=>{if(!Be)return null;let x=jl(Be);if(!x||x.kind!=="item"||!x.key)return null;if(x.zone==="palette"){let ve=I.get(x.key);return ve?jsx(Yc,{label:ve.label,subtitle:ve.type}):null}if(x.zone==="values"){let ve=O.find(ie=>ie.tokenId===x.key);if(!ve)return null;let H=I.get(ve.fieldId)?.label??ve.fieldId,se=`${R(ve.aggregation)}(${H})`;return jsx(es,{label:H,caption:se})}let L=I.get(x.key)?.label??x.key,X=he(x.key);return jsx(es,{label:L,caption:X})};return jsxs(Paper,{sx:x=>({p:{xs:1.2,md:2},borderRadius:4,border:`1px solid ${x.palette.divider}`,bgcolor:"background.paper",boxShadow:x.palette.mode==="dark"?"none":"0 12px 28px rgba(15, 23, 42, 0.08)",display:"flex",flexDirection:"column",gap:2}),children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1.5,flexWrap:"wrap"},children:[jsxs(Box,{children:[jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800},children:y}),jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:u("pivot.subtitle.default")})]}),jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[nr&&jsxs(Fragment,{children:[jsx(FormControl,{size:"small",sx:{minWidth:200},children:jsxs(Select,{value:rt,displayEmpty:true,onChange:x=>Jt(String(x.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:u("pivot.preset.selectPlaceholder")}),Pt.map(x=>jsx(MenuItem,{value:x.id,sx:{fontSize:"0.75rem"},children:x.name},x.id))]})}),jsx(Tooltip,{title:u("pivot.preset.save"),children:jsx(IconButton,{size:"small",onClick:ao,"aria-label":u("pivot.preset.save"),children:jsx(vp,{sx:{fontSize:18}})})}),jsx(Tooltip,{title:u("pivot.preset.delete"),children:jsx("span",{children:jsx(IconButton,{size:"small",onClick:$t,disabled:!rt,"aria-label":u("pivot.preset.delete"),children:jsx(Hb,{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:jt.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:Ke,onChange:x=>pe(x.target.checked)})]})]})]}),jsx(Divider,{}),jsxs(DndContext,{sensors:v,collisionDetection:closestCenter,onDragStart:q,onDragEnd:Y,children:[jsx(Om,{isConfiguratorCollapsed:et,onToggleCollapse:()=>Pe(x=>!x),availableFields:_t,fieldMap:I,filterFields:ft,columnFields:Ae,rowFields:ze,valueFields:O,clearZone:Fo,removeFieldFromZone:jo,getFilterSelectionSummary:he,renderDimensionFilterSelect:je,renderAggregationSelect:Qe,getAggregationLabel:R}),jsx(Portal,{children:jsx(DragOverlay,{dropAnimation:{duration:250,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:jr()})})]}),jsx(_m,{rows:jt,fieldMap:I,rowFields:ze,columnFields:Ae,valueFields:O,chartDimensionFieldId:Ct,chartPrimaryValueFieldId:It,chartSecondaryValueFieldId:oo,chartType:xo,isCollapsed:bt,onChartDimensionFieldIdChange:x=>ke(x),onChartPrimaryValueFieldIdChange:x=>Fe(x),onChartSecondaryValueFieldIdChange:x=>Ue(x),onChartTypeChange:x=>Rt(x),onToggleCollapse:()=>yt(x=>!x),getAggregationLabel:R}),jsx(Mn,{title:u("pivot.table.sectionTitle"),subtitle:ze.length>0?ze.map(x=>I.get(x)?.label??x).join(" > "):u("pivot.table.dimensions"),collapsed:ar,onToggleCollapse:()=>Tt(x=>!x),expandAriaLabel:u("pivot.table.collapse.ariaExpand"),collapseAriaLabel:u("pivot.table.collapse.ariaCollapse"),bodySx:{p:0},headerActions:_r,children:tt===null?jsx(Box,{sx:{py:5,px:{xs:1.2,md:1.6},textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:T})}):jsx(TableContainer,{sx:{maxHeight:i},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:(ba.length>0?ba:[[]]).map((x,F)=>jsxs(TableRow,{children:[F===0&&jsx(TableCell,{rowSpan:Math.max(ba.length,1),sx:L=>({fontWeight:800,fontSize:"0.76rem",color:"text.primary",bgcolor:L.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${L.palette.divider}`,pl:2,minWidth:220,verticalAlign:"middle"}),children:ze.length>0?ze.map(L=>I.get(L)?.label).join(" > "):u("pivot.table.dimensions")}),(x.length>0?x:Eo.map(L=>({key:L.id,label:L.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))).map(L=>jsx(TableCell,{align:"center",colSpan:L.colSpan,rowSpan:L.rowSpan,sx:X=>({fontWeight:800,fontSize:"0.75rem",color:"text.primary",bgcolor:X.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${X.palette.divider}`,minWidth:148,verticalAlign:"middle"}),children:jsxs(Box,{sx:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:.4},children:[L.expandable&&jsx(IconButton,{size:"small",onClick:()=>We(L.key),sx:{p:.1,ml:-0.3},children:L.expanded?jsx(kb,{sx:{fontSize:16}}):jsx(Tf,{sx:{fontSize:16}})}),jsx(Box,{component:"span",children:L.label})]})},L.key))]},`pivot-header-row-${F}`))}),jsxs(TableBody,{children:[tt.rowTree.map(x=>jsx(is,{node:x,dataColumns:Xa,fieldMap:I,level:0,expandedKeys:it,onToggle:Ee,getValue:(F,L)=>{let X=Za.get(L);return X?Pr(F,X):0}},x.key)),no&&jsx(is,{node:no,dataColumns:Xa,fieldMap:I,level:0,expandedKeys:it,onToggle:Ee,getValue:(x,F)=>{let L=Za.get(F);return L?Pr(x,L):0}})]})]})})}),jsxs(Dialog,{open:Ne,onClose:()=>_(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:Q,onChange:x=>Re(x.target.value),onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),Co());}})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>_(false),children:u("common.cancel")}),jsx(Button,{variant:"contained",onClick:Co,disabled:!Q.trim(),children:u("common.save")})]})]})]})};var rg=(e,t,o)=>{let r=[...e,...t];return o&&r.includes(o)?o:r[0]??""},ud=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",ag=(e,t,o)=>o===""?"":o&&o!==t&&e.some(r=>r.fieldId===o)?o:e.find(r=>r.fieldId!==t)?.fieldId??"",yE=({fields:e,initialLayout:t,initialFilterSelections:o={},initialShowGrandTotal:r=true,initialConfiguratorCollapsed:a=false,initialChart:n,initialChartCollapsed:i=false,initialTableCollapsed:s=false})=>{let d=useRef(0),l=useMemo(()=>new Set(e.map(j=>j.id)),[e]),c=useMemo(()=>new Map(e.map(j=>[j.id,j])),[e]),[g,f]=useState(()=>eo(t?.rows,l)),[m,h]=useState(()=>eo(t?.columns,l)),[C,u]=useState(()=>eo(t?.filters,l)),[v,p]=useState(()=>{let j=t?.values??[],Ne=new Set,_=[];return j.forEach(Q=>{!l.has(Q.fieldId)||Ne.has(Q.fieldId)||(Ne.add(Q.fieldId),d.current+=1,_.push({tokenId:`v${d.current}`,fieldId:Q.fieldId,aggregation:So(Q.aggregation,c.get(Q.fieldId))}));}),_}),[b,y]=useState(o),[T,E]=useState(r),[R,w]=useState(a),[I,k]=useState(()=>rg(eo(t?.rows,l),eo(t?.columns,l),n?.dimensionFieldId)),[S,B]=useState(()=>{let j=(()=>{let Ne=t?.values??[],_=new Set,Q=[];return Ne.forEach(Re=>{!l.has(Re.fieldId)||_.has(Re.fieldId)||(_.add(Re.fieldId),Q.push({tokenId:Re.fieldId,fieldId:Re.fieldId,aggregation:So(Re.aggregation,c.get(Re.fieldId))}));}),Q})();return ud(j,n?.primaryValueFieldId)}),[P,M]=useState(()=>{let j=(()=>{let _=t?.values??[],Q=new Set,Re=[];return _.forEach(Be=>{!l.has(Be.fieldId)||Q.has(Be.fieldId)||(Q.add(Be.fieldId),Re.push({tokenId:Be.fieldId,fieldId:Be.fieldId,aggregation:So(Be.aggregation,c.get(Be.fieldId))}));}),Re})(),Ne=ud(j,n?.primaryValueFieldId);return ag(j,Ne,n?.secondaryValueFieldId)}),[A,Z]=useState(n?.chartType??"bar-vertical"),[W,K]=useState(i),[ee,le]=useState(s);useEffect(()=>{f(j=>{let Ne=j.filter(_=>l.has(_));return Or(j,Ne)?j:Ne}),h(j=>{let Ne=j.filter(_=>l.has(_));return Or(j,Ne)?j:Ne}),u(j=>{let Ne=j.filter(_=>l.has(_));return Or(j,Ne)?j:Ne}),p(j=>{let Ne=j.filter(_=>l.has(_.fieldId)).map(_=>({..._,aggregation:So(_.aggregation,c.get(_.fieldId))}));return Zl(j,Ne)?j:Ne});},[c,l]),useEffect(()=>{k(j=>rg(g,m,j));},[m,g]),useEffect(()=>{B(j=>ud(v,j));},[v]),useEffect(()=>{M(j=>ag(v,S,j));},[S,v]);let G=useCallback(j=>{f(eo(j,l));},[l]),te=useCallback(j=>{h(eo(j,l));},[l]),me=useCallback(j=>{u(eo(j,l));},[l]),we=useCallback(j=>{p(Ne=>{let _=j??[],Q=new Set,Re=[];return _.forEach(Be=>{if(!l.has(Be.fieldId)||Q.has(Be.fieldId))return;Q.add(Be.fieldId);let at=Ne.find(it=>it.fieldId===Be.fieldId);if(at){Re.push({...at,aggregation:So(Be.aggregation??at.aggregation,c.get(Be.fieldId))});return}d.current+=1,Re.push({tokenId:`v${d.current}`,fieldId:Be.fieldId,aggregation:So(Be.aggregation,c.get(Be.fieldId))});}),Re});},[c,l]),Ce=useCallback(j=>{G(j.rows??[]),te(j.columns??[]),me(j.filters??[]),we(j.values??[]);},[te,me,G,we]),re=useCallback(j=>{if(j==="rows")return f([]);if(j==="columns")return h([]);if(j==="filters")return u([]);p([]);},[]),oe=useCallback((j,Ne)=>{if(j==="rows")return f(_=>_.filter(Q=>Q!==Ne));if(j==="columns")return h(_=>_.filter(Q=>Q!==Ne));if(j==="filters")return u(_=>_.filter(Q=>Q!==Ne));p(_=>_.filter(Q=>Q.tokenId!==Ne));},[]),ye=useCallback((j,Ne)=>{p(_=>_.map(Q=>Q.tokenId===j?{...Q,aggregation:So(Ne,c.get(Q.fieldId))}:Q));},[c]),Ge=useCallback((j,Ne)=>{y(_=>({..._,[j]:Ne}));},[]),de=useCallback(()=>{y({});},[]),Te=useCallback(()=>{E(j=>!j);},[]),$e=useCallback(()=>{w(j=>!j);},[]),ct=useCallback(j=>{k(j);},[]),fe=useCallback(j=>{B(j);},[]),Le=useCallback(j=>{M(j);},[]),_e=useCallback(()=>{K(j=>!j);},[]),dt=useCallback(()=>{le(j=>!j);},[]);return {model:useMemo(()=>({rowFields:g,setRowFields:f,columnFields:m,setColumnFields:h,filterFields:C,setFilterFields:u,valueFields:v,setValueFields:p,filterSelections:b,setFilterSelections:y,showGrandTotal:T,setShowGrandTotal:E,isConfiguratorCollapsed:R,setIsConfiguratorCollapsed:w,chartDimensionFieldId:I,setChartDimensionFieldId:k,chartPrimaryValueFieldId:S,setChartPrimaryValueFieldId:B,chartSecondaryValueFieldId:P,setChartSecondaryValueFieldId:M,chartType:A,setChartType:Z,isChartCollapsed:W,setIsChartCollapsed:K,isTableCollapsed:ee,setIsTableCollapsed:le}),[I,S,P,A,m,C,b,W,R,ee,g,T,v]),actions:{setRows:G,setColumns:te,setFilters:me,setValues:we,setLayout:Ce,clearZone:re,removeFieldFromZone:oe,setAggregationForValue:ye,setFilterSelection:Ge,resetFilterSelections:de,toggleGrandTotal:Te,toggleConfigurator:$e,setChartDimension:ct,setChartPrimaryValue:fe,setChartSecondaryValue:Le,setChartType:Z,toggleChart:_e,toggleTable:dt}}};var SE=({orientation:e="auto",defaultNavigationOpen:t,onNavOpenChange:o}={})=>{let r=useTheme$1(),a=useMediaQuery("(orientation: portrait)",{noSsr:true}),n=useMediaQuery(r.breakpoints.down("md"),{noSsr:true}),i=useMemo(()=>e==="auto"?a||n?"portrait":"landscape":e,[n,a,e]),[s,d]=useState(t??i==="landscape");useEffect(()=>{d(t??i==="landscape");},[t,i]);let l=g=>{d(g),o?.(g);};return {resolvedOrientation:i,isPortraitViewport:a,isCompactViewport:n,navigationOpen:s,setNavigationOpen:l,toggleNavigationOpen:()=>l(!s)}};var Dk=e=>{let t=Number(e||0);return Number.isFinite(t)?t:0},IE=({rows:e,rowKey:t="id",numericField:o,defaultSelectedId:r})=>{let n=e[0]?.[t],[i,s]=useState(r??n),d=useMemo(()=>e.find(m=>m[t]===i)||e[0],[t,e,i]),[l,c]=useState(()=>{let m=d?.[o];return m==null?"0":String(m)});return {selectedId:i,selectedRecord:d,editorValue:l,setEditorValue:c,selectRecord:m=>{let h=m[t];s(h);let C=m[o];c(C==null?"0":String(C));},applyEditorValue:m=>{if(i===void 0)return;let h=Dk(l),C=e.map(u=>u[t]===i?{...u,[o]:h}:u);m(C);}}};var Wk=["code_128","ean_13","ean_8","qr_code","upc_a","upc_e"],dg=(e,t,o,r)=>{t?.(e),r&&o?.();},BE=({open:e,onClose:t,title:o="Scan barcode",subtitle:r="Use the rear camera on the device. If scanning is unavailable, enter the code manually.",formats:a=Wk,facingMode:n="environment",manualEntry:i=true,autoCloseOnDetect:s=true,scanIntervalMs:d=600,confirmLabel:l="Use code",cancelLabel:c="Close",manualPlaceholder:g="Enter barcode manually",onDetected:f,onError:m,sx:h})=>{let C=Kt__default.useRef(null),u=Kt__default.useRef(null),v=Kt__default.useRef(null),p=Kt__default.useRef(null),[b,y]=Kt__default.useState("idle"),[T,E]=Kt__default.useState(""),[R,w]=Kt__default.useState(null),[I,k]=Kt__default.useState(null),S=Kt__default.useCallback(()=>{v.current!==null&&(window.clearInterval(v.current),v.current=null),u.current&&(u.current.getTracks().forEach(M=>M.stop()),u.current=null),C.current&&(C.current.srcObject=null);},[]),B=Kt__default.useCallback(M=>{k(M),y("error"),m?.(M);},[m]);Kt__default.useEffect(()=>{if(!e){S(),y("idle"),k(null),E("");return}let M=false;return (async()=>{if(!(typeof window>"u"||typeof navigator>"u")){if(!navigator.mediaDevices?.getUserMedia){y("unsupported"),k("Camera access is not supported in this browser.");return}y("starting"),k(null);try{let Z=await navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:{ideal:n}}});if(M){Z.getTracks().forEach(W=>W.stop());return}if(u.current=Z,C.current&&(C.current.srcObject=Z,await C.current.play()),!window.BarcodeDetector){y("unsupported"),k("BarcodeDetector is not available. Camera preview is ready and manual entry is enabled.");return}p.current=new window.BarcodeDetector({formats:a}),y("ready"),v.current=window.setInterval(async()=>{if(!(!C.current||!p.current)&&!(C.current.readyState<HTMLMediaElement.HAVE_CURRENT_DATA))try{let K=(await p.current.detect(C.current)).find(le=>le.rawValue);if(!K?.rawValue)return;let ee={rawValue:K.rawValue,format:K.format};w(ee),S(),dg(ee,f,t,s);}catch(W){B(W instanceof Error?W.message:"Failed to detect barcode.");}},d);}catch(Z){B(Z instanceof Error?Z.message:"Unable to start camera.");}}})(),()=>{M=true,S();}},[s,n,a,t,f,e,B,d,S]);let P=()=>{let M=T.trim();if(!M)return;let A={rawValue:M,format:"manual"};w(A),dg(A,f,t,s);};return jsxs(Dialog,{open:e,onClose:t,fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:900},children:o}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Stack,{spacing:2,sx:h,children:[jsx(Typography,{sx:{fontSize:"0.88rem",color:"text.secondary",lineHeight:1.55},children:r}),jsxs(Paper,{elevation:0,sx:M=>({position:"relative",overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:"divider",minHeight:280,background:M.palette.mode==="dark"?"linear-gradient(180deg, rgba(15,23,42,0.92), rgba(2,6,23,0.96))":"linear-gradient(180deg, rgba(241,245,249,1), rgba(226,232,240,0.92))"}),children:[jsx("video",{ref:C,muted:true,playsInline:true,autoPlay:true,style:{width:"100%",height:280,objectFit:"cover",display:"block"}}),jsx(Box,{sx:{pointerEvents:"none",position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(Box,{sx:{width:"72%",maxWidth:320,aspectRatio:"1.7 / 1",borderRadius:3,border:"2px solid rgba(255,255,255,0.95)",boxShadow:"0 0 0 999px rgba(15,23,42,0.24)",position:"relative"},children:jsx(Box,{sx:{position:"absolute",top:"50%",left:0,right:0,height:2,bgcolor:"#38bdf8",boxShadow:"0 0 18px rgba(56,189,248,0.85)"}})})}),jsxs(Box,{sx:{position:"absolute",top:12,left:12,display:"flex",gap:1,flexWrap:"wrap"},children:[jsx(Chip,{icon:jsx(Ok,{}),label:b==="ready"?"Camera ready":b==="starting"?"Starting camera":b==="unsupported"?"Preview only":b==="error"?"Scanner error":"Idle",size:"small",color:b==="error"?"error":"primary",variant:"filled"}),R?jsx(Chip,{icon:jsx(Hk,{}),label:`${R.format||"barcode"}: ${R.rawValue}`,size:"small",color:"success",variant:"filled"}):null]})]}),I?jsx(Alert,{severity:b==="unsupported"?"info":"warning",children:I}):null,i?jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1.25,children:[jsx(TextField,{fullWidth:true,label:"Barcode",placeholder:g,value:T,onChange:M=>E(M.target.value)}),jsx(Button,{variant:"contained",onClick:P,sx:{minHeight:56,px:2.5},children:l})]}):null]})}),jsx(DialogActions,{sx:{px:3,pb:2},children:jsx(Button,{onClick:t,children:c})})]})};var Kk={default:"#475569",primary:"#1d4ed8",success:"#047857",warning:"#b45309",error:"#b91c1c",info:"#0369a1"},VE=({title:e,description:t,kicker:o,icon:r,badges:a=[],metrics:n=[],footer:i,children:s,selected:d=false,draggable:l=false,isDragging:c=false,swipeThreshold:g=88,startAction:f,endAction:m,dragHandleProps:h,onClick:C,onSwipe:u,sx:v})=>{let[p,b]=useState(0),[y,T]=useState(false),E=useRef(null),R=useRef(0),w=useRef(0),I=!!(f||m),k=132,S=()=>{b(0),T(false),E.current=null,R.current=0,w.current=0;},B=W=>{(W==="start"?f:m)?.onTrigger?.(),u?.(W),S();},P=W=>{!I||W.target.closest('button, a, input, textarea, [data-no-swipe="true"]')||(E.current=W.pointerId,R.current=W.clientX,w.current=W.clientX,T(true),W.currentTarget.setPointerCapture(W.pointerId));},M=W=>{if(!y||E.current!==W.pointerId)return;w.current=W.clientX;let K=w.current-R.current,ee=Math.max(-k,Math.min(k,K));b(ee);},A=W=>{if(!y||E.current!==W.pointerId)return;let K=w.current-R.current;if(K>=g&&f){B("start");return}if(K<=-g&&m){B("end");return}Math.abs(K)<12&&C?.(),S();},Z=(W,K)=>{if(!W)return null;let ee=W.backgroundColor||Kk[W.tone||"default"];return jsx(Box,{sx:{position:"absolute",top:0,bottom:0,[K]:0,width:k,px:2,display:"flex",alignItems:"center",justifyContent:K==="left"?"flex-start":"flex-end",color:"#fff",background:`linear-gradient(135deg, ${ee}, rgba(15,23,42,0.92))`},children:jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[W.icon,jsx(Typography,{sx:{fontWeight:700,fontSize:"0.95rem"},children:W.label})]})})};return jsxs(Box,{sx:{position:"relative",overflow:"hidden",borderRadius:4,...v},children:[Z(f,"left"),Z(m,"right"),jsx(Paper,{elevation:0,onPointerDown:P,onPointerMove:M,onPointerUp:A,onPointerCancel:S,sx:W=>({position:"relative",zIndex:1,p:2,borderRadius:4,border:"1px solid",borderColor:d?"primary.main":"divider",background:W.palette.mode==="dark"?"linear-gradient(180deg, rgba(30,41,59,0.96), rgba(15,23,42,0.92))":"linear-gradient(180deg, #ffffff, #f8fafc)",color:"text.primary",boxShadow:d?"0 18px 42px rgba(37, 99, 235, 0.18)":"0 12px 28px rgba(15, 23, 42, 0.08)",transform:`translate3d(${p}px, 0, 0) scale(${c?.985:1})`,transition:y?"none":"transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease",touchAction:"pan-y",cursor:C?"pointer":"default",opacity:c?.9:1}),children:jsxs(Stack,{spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"flex-start",children:[r?jsx(Box,{sx:{mt:.25},children:r}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[o?jsx(Typography,{sx:{fontSize:"0.72rem",fontWeight:700,letterSpacing:"0.08em",color:"text.secondary"},children:o}):null,jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800,lineHeight:1.25},children:e}),t?jsx(Typography,{sx:{mt:.5,fontSize:"0.9rem",color:"text.secondary",lineHeight:1.45},children:t}):null]}),l?jsx(Box,{"data-no-swipe":"true",...h,sx:{alignSelf:"center",display:"inline-flex",touchAction:"none"},children:jsx(IconButton,{size:"small",children:jsx(Uk,{})})}):null]}),a.length>0?jsx(Stack,{direction:"row",spacing:1,useFlexGap:true,flexWrap:"wrap",children:a.map((W,K)=>jsx(Chip,{label:W,size:"small",sx:{borderRadius:999,fontWeight:700,bgcolor:"action.hover",color:"text.primary"}},K))}):null,n.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(110px, 1fr))",gap:1},children:n.map(W=>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:W.label}),jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800,lineHeight:1.2},children:W.value})]},W.id))}):null,s,i]})})]})};var Ei=({label:e,onPress:t,emphasis:o="default"})=>jsx(Box,{component:"button",type:"button",onClick:t,sx:r=>({minHeight:72,borderRadius:3,border:"1px solid",borderColor:o==="primary"?"primary.main":"divider",background:o==="primary"?r.palette.primary.main:o==="danger"?r.palette.mode==="dark"?"rgba(239,68,68,0.18)":"rgba(239,68,68,0.10)":r.palette.mode==="dark"?"rgba(255,255,255,0.04)":"#fff",color:o==="primary"?"#fff":"text.primary",fontSize:"1.25rem",fontWeight:800,transition:"transform 120ms ease, box-shadow 160ms ease, background-color 160ms ease",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent","&:active":{transform:"scale(0.98)"}}),children:e}),_E=({value:e,defaultValue:t="",title:o,subtitle:r,placeholder:a="0",allowDecimal:n=false,allowNegative:i=false,maxLength:s,confirmLabel:d,clearLabel:l,backspaceLabel:c,onChange:g,onSubmit:f,onClose:m,sx:h})=>{let{t:C}=ae(),[u,v]=useState(t),p=e??u,b=S=>{e===void 0&&v(S),g?.(S);},y=S=>{s&&p.length>=s||b(`${p}${S}`);},T=S=>{if(S==="00"){if(!p){b("0");return}y("00");return}y(S);},E=()=>{!n||p.includes(".")||b(p?`${p}.`:"0.");},R=()=>{if(i){if(p.startsWith("-")){b(p.slice(1));return}b(p?`-${p}`:"-");}},w=()=>{b(p.slice(0,-1));},I=()=>{b("");},k=()=>{f?.(p);};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,r?jsx(Typography,{sx:{mt:.5,fontSize:"0.86rem",color:"text.secondary"},children:r}):null]}),m?jsx(IconButton,{onClick:m,size:"small",children:jsx(Zk,{})}):null]}),jsx(Paper,{elevation:0,sx:{p:2,borderRadius:3,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsx(Typography,{sx:{minHeight:38,fontSize:p?"1.9rem":"1.25rem",fontWeight:900,letterSpacing:"0.06em",color:p?"text.primary":"text.disabled"},children:p||a})}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[["1","2","3","4","5","6","7","8","9"].map(S=>jsx(Ei,{label:S,onPress:()=>T(S)},S)),jsx(Ei,{label:i?"+/-":"00",onPress:i?R:()=>T("00")}),jsx(Ei,{label:"0",onPress:()=>T("0")}),jsx(Ei,{label:n?".":c?String(c):"DEL",onPress:n?E:w})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[jsx(Box,{component:"button",type:"button",onClick:w,sx:{minHeight:64,borderRadius:3,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"},children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",alignItems:"center",children:[jsx(jk,{}),jsx(Typography,{sx:{fontWeight:700},children:c||"DEL"})]})}),jsx(Ei,{label:String(l||"CLR"),onPress:I,emphasis:"danger"}),jsx(Box,{component:"button",type:"button",onClick:k,sx:S=>({minHeight:64,borderRadius:3,border:"1px solid",borderColor:"primary.main",background:S.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(Xk,{}),jsx(Typography,{sx:{fontWeight:800},children:d||C("common.ok")})]})})]})]})})};var fg=({touchMode:e="comfortable",sx:t,...o})=>{let r=e==="expanded";return jsx(Box,{sx:{"& .MuiPaper-root":{borderRadius:4},"& .MuiAutocomplete-root":{minWidth:{xs:"100%",md:260}},"& .MuiAutocomplete-root .MuiInputBase-root":{backgroundColor:"transparent !important"},"& .MuiInputBase-root":{minHeight:r?56:50,borderRadius:3,fontSize:r?"0.98rem":"0.92rem"},"& .MuiInputBase-input":{py:r?1.6:1.25,fontSize:r?"0.98rem":"0.92rem"},"& .MuiInputLabel-root":{fontSize:r?"0.95rem":"0.88rem"},"& .MuiButton-root":{minHeight:r?48:44,px:r?2.25:1.75,borderRadius:3,fontSize:r?"0.95rem":"0.88rem",fontWeight:700},"& .MuiIconButton-root":{width:r?40:36,height:r?40:36},"& .MuiMenuItem-root":{minHeight:r?44:38,fontSize:r?"0.95rem":"0.88rem"},"& .MuiListSubheader-root":{py:1},"& .MuiCheckbox-root":{p:r?1:.75},"& .MuiFormControlLabel-label":{fontSize:r?"0.95rem":"0.88rem"},"& .MuiDialog-paper":{borderRadius:4},"& .MuiDialogTitle-root":{fontSize:r?"1.05rem":"0.98rem",fontWeight:800},"& .MuiDialogContent-root .MuiInputBase-root":{minHeight:52},'& .MuiGrid-root > .MuiGrid-item, & .MuiGrid-root > .MuiGrid-sizeXs-1, & .MuiGrid-root > [class*="MuiGrid-grid-"]':{minWidth:0},...t},children:jsx(Ar,{...o})})};var rS=(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);}},yg=({items:e,selectedId:t,orientation:o="auto",onItemSelect:r,sx:a})=>{let n=useTheme$1(),[i,s]=useState(false);useEffect(()=>{s(true);},[]);let d=useMediaQuery("(orientation: portrait)",{noSsr:true}),l=useMediaQuery(n.breakpoints.down("md"),{noSsr:true}),c=o==="auto"?d||l?"portrait":"landscape":o,g=useRouter();return jsx(Box,{sx:{display:"grid",gridTemplateColumns:!i||c==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(180px, 1fr))",gap:1.5,...a},children:e.map(f=>{let m=f.id===t,h=f.color||(m?n.palette.primary.main:n.palette.divider);return jsx(Paper,{elevation:0,sx:{overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:m?"primary.main":"divider",boxShadow:m?"0 18px 40px rgba(37, 99, 235, 0.16)":"none",bgcolor:n.palette.mode==="dark"?"rgba(30,41,59,0.6)":"background.paper"},children:jsx(Box,{component:"button",type:"button",disabled:f.disabled,onClick:()=>rS(g,f,r),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:m?"#fff":"text.primary",background:m?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:m?"primary.main":"action.hover",color:m?"#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 kg=(e,t)=>t.trim()?e.reduce((o,r)=>{let a=r.title?.toLowerCase().includes(t.toLowerCase())||r.label?.toLowerCase().includes(t.toLowerCase())||r.description?.toLowerCase().includes(t.toLowerCase()),n=r.children?kg(r.children,t):[];return (a||n.length>0)&&o.push({...r,children:n.length>0?n:r.children}),o},[]):e,hS=e=>{let t=new Set,o=r=>{r.forEach(a=>{a.children?.length&&(t.add(a.id),o(a.children));});};return o(e),t},Sg=({collapsed:e=false,onToggle:t,className:o="",maxHeight:r,menuData:a=[],colorMode:n="light",orientation:i="auto",headerSlot:s,footerSlot:d,activeHref:l,onItemSelect:c})=>{let{t:g}=ae(),f=useTheme$1(),m=useMediaQuery("(orientation: portrait)"),h=useMediaQuery(f.breakpoints.down("md")),C=i==="auto"?m||h?"portrait":"landscape":i,u=n==="dark",v=useRouter(),p=usePathname(),[b,y]=useState(""),[T,E]=useState(new Set),R=useMemo(()=>kg(a,b),[a,b]),w=useMemo(()=>b.trim()?hS(R):T,[T,R,b]);useEffect(()=>{e&&E(new Set);},[e]);let I=M=>M.appurl||M.href||"",k=M=>{c?.(M);let A=I(M);if(A){if(A.startsWith("http://")||A.startsWith("https://")){window.open(A,"_blank");return}v.push(A);}},S=M=>{let A=!!M.children?.length;if(e&&A){t?.();return}if(A){E(Z=>{let W=new Set(Z);return W.has(M.id)?W.delete(M.id):W.add(M.id),W});return}k(M);},B=M=>{let A=l||p,Z=I(M);return !!(Z&&A===Z)},P=(M,A=0)=>{let Z=!!M.children?.length,W=w.has(M.id),K=B(M);return jsx(Box,{sx:{pl:A===0?0:1.5},children:jsxs(Paper,{elevation:0,sx:{mb:1,overflow:"hidden",borderRadius:3,border:"1px solid",borderColor:K?"primary.main":"divider",bgcolor:K?"action.selected":"background.paper"},children:[jsxs(Box,{component:"button",type:"button",onClick:()=>S(M),sx:{width:"100%",px:1.5,py:1.4,display:"flex",alignItems:"center",gap:1.25,border:0,background:"transparent",textAlign:"left",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"},children:[jsx(Avatar,{variant:"rounded",sx:{width:40,height:40,bgcolor:K?"primary.main":"action.hover",color:K?"#fff":"text.primary"},children:M.icon||(M.title||M.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:M.title||M.label}),M.description?jsx(Typography,{sx:{mt:.4,fontSize:"0.78rem",color:"text.secondary",lineHeight:1.35},children:M.description}):null]}),Z?jsx(gS,{sx:{transform:W?"rotate(180deg)":"rotate(0deg)",transition:"transform 180ms ease"}}):jsx(fS,{color:"action"})]}),Z?jsx(Collapse,{in:W,children:jsx(Box,{sx:{px:1.25,pb:1.25},children:M.children?.map(ee=>P(ee,A+1))})}):null]})},M.id)};return e?jsx(Paper,{elevation:0,className:o,sx:{width:C==="portrait"?"100%":88,p:1,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:u?"#101828":"rgba(255,255,255,0.88)",maxHeight:r?`${r}px`:void 0,overflowY:"auto"},children:jsxs(Stack,{spacing:1,children:[jsx(IconButton,{onClick:t,sx:{width:48,height:48,alignSelf:"center",bgcolor:"action.hover"},title:g("navigation.expand"),children:jsx(mS,{})}),a.map(M=>jsx(IconButton,{onClick:()=>S(M),sx:{width:56,height:56,alignSelf:"center",borderRadius:3,bgcolor:B(M)?"primary.main":"action.hover",color:B(M)?"#fff":"text.primary"},children:M.icon||(M.title||M.label||"?").slice(0,1).toUpperCase()},M.id))]})}):jsx(Paper,{elevation:0,className:o,sx:{width:C==="portrait"?"100%":320,p:1.25,borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:u?"#101828":"rgba(255,255,255,0.88)",maxHeight:r?`${r}px`:void 0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsxs(Stack,{spacing:1.25,sx:{flex:1,minHeight:0},children:[jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[jsx(TextField,{value:b,onChange:M=>y(M.target.value),placeholder:g("navigation.searchPlaceholder"),size:"small",fullWidth:true,InputProps:{startAdornment:jsx(uS,{fontSize:"small",color:"action"})}}),C==="landscape"&&!e?jsx(IconButton,{onClick:t,sx:{bgcolor:"action.hover"},children:jsx(pS,{})}):null]}),s,jsx(Box,{sx:{flex:1,minHeight:0,overflowY:"auto",pr:.25},children:R.length>0?R.map(M=>P(M)):jsx(Typography,{sx:{p:2,fontSize:"0.88rem",color:"text.secondary",textAlign:"center"},children:g("navigation.noMatch")})}),d]})})};var Ag=(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)},kS=e=>Kt__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}),SS=(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)},wS=({summaryRow:e,visibleColumns:t,columns:o})=>{let r=o.filter(a=>t.includes(a.id)&&e[a.id]!=="");return r.length===0?null:jsx(Paper,{elevation:0,sx:{p:1.5,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsxs(Stack,{spacing:1,children:[jsx(Typography,{sx:{fontSize:"0.82rem",fontWeight:800,color:"text.secondary"},children:"Summary"}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(132px, 1fr))",gap:1},children:r.map(a=>jsxs(Paper,{elevation:0,sx:{p:1.1,borderRadius:3,border:"1px solid",borderColor:"divider"},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:a.label}),jsx(Typography,{sx:{mt:.25,fontSize:"0.96rem",fontWeight:800},children:e[a.id]})]},`summary-${a.id}`))})]})})},TS=e=>{let{t}=ae(),o=useTheme$1(),{title:r,showToolbar:a=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:d,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:m=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:C,filterConfig:u,rowKey:v,tableKey:p="default",graphReport:b,quickCreate:y,quickEdit:T,quickDelete:E,serviceUrl:R,orientation:w="auto",cardTitleField:I,cardSubtitleFields:k,toolbarSlot:S,emptyState:B,rowHeight:P="comfortable",cardActionSlot:M,renderCardFooter:A,onRowClick:Z}=e,W=r||t("table.title.default"),K=useMediaQuery("(orientation: portrait)"),ee=useMediaQuery(o.breakpoints.down("md")),le=w==="auto"?K||ee?"portrait":"landscape":w,{columns:G,filterText:te,setFilterText:me,visibleColumns:we,showSummary:Ce,setShowSummary:re,summaryColumns:oe,grouping:ye,setGrouping:Ge,expandedGroups:de,groupAnchorEl:Te,setGroupAnchorEl:$e,summaryAnchorEl:ct,setSummaryAnchorEl:fe,anchorEl:Le,setAnchorEl:_e,contextMenu:dt,sortedAndFilteredRows:rt,summaryRow:j,visibleRows:Ne,page:_,setPage:Q,rowsPerPage:Re,setRowsPerPage:Be,totalDisplayCount:at,setSelected:it,handleClick:gt,toggleSummaryColumn:Et,handleExport:U,handleCloseContextMenu:ze,toggleColumnVisibility:Ae,toggleGroupExpand:ft,toggleGroupField:O,handleExpandGroupRecursively:xe,handleCollapseGroupRecursively:Ke,handleLayoutLoad:et,handleVariantLoad:Ct,handleLayoutSave:It,effectiveAppId:oo,currentLayoutData:xo,currentLayoutId:bt,layoutIdToLoad:ar,graphReportOpen:Pt,handleOpenGraphReport:nr,handleCloseGraphReport:ro}=hn(e),z=b?.enabled??false,N=z&&(b?.interaction?.enabled??true),V=bl(),ce=v||"id",pe=Kt__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]),Pe=Kt__default.useMemo(()=>({...pe,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)}),[pe,o]),ke=Kt__default.useMemo(()=>{let $=new Set(i);return rt.filter(ge=>$.has(ge?.[ce]))},[ce,i,rt]),Fe=ke.length===1?ke[0]:null,Ue=!!y?.enabled,Rt=!!T?.enabled,yt=!!E?.enabled,Tt=y?.fields,ht=y?.excludeFields||[],Po=y?.initialValues||{},_t=T?.fields,Nt=T?.excludeFields||[],vo=T?.editableFields||[],jt=T?.nonEditableFields||[],tt=T?.primaryKeys?.length?T.primaryKeys:[ce],[_o,Fo]=Kt__default.useState(false),[jo,D]=Kt__default.useState(false),[q,Y]=Kt__default.useState({}),[ue,Ee]=Kt__default.useState(false),[We,Qe]=Kt__default.useState(false),[he,je]=Kt__default.useState({}),[nt,Mt]=Kt__default.useState(false),[lt,Jt]=Kt__default.useState(false),ao=m||jo||We||lt,Co=Kt__default.useMemo(()=>{let $=[...G];if(Array.isArray(Tt)&&Tt.length>0){let ge=new Set(Tt);$=$.filter(J=>ge.has(J.id));}if(ht.length>0){let ge=new Set(ht);$=$.filter(J=>!ge.has(J.id));}return $.filter(ge=>!!ge?.id)},[G,ht,Tt]),$t=Kt__default.useMemo(()=>{let $=[...G];if(Array.isArray(_t)&&_t.length>0){let ge=new Set(_t);$=$.filter(J=>ge.has(J.id));}if(Nt.length>0){let ge=new Set(Nt);$=$.filter(J=>!ge.has(J.id));}return $.filter(ge=>!!ge?.id)},[G,Nt,_t]),no=Kt__default.useMemo(()=>new Set(tt),[tt]),xt=Kt__default.useMemo(()=>new Set(vo),[vo]),Zt=Kt__default.useMemo(()=>new Set(jt),[jt]),br=Kt__default.useCallback($=>xt.size>0?xt.has($):!(Zt.has($)||no.has($)),[xt,Zt,no]);Kt__default.useEffect(()=>{!Pt&&V.hasActiveFilters&&V.clearAll();},[V,Pt]);let Zo=()=>{let $={};Co.forEach(ge=>{$[ge.id]=Po[ge.id]??"";}),Y($),Fo(true);},qa=($,ge)=>{Y(J=>({...J,[$]:ge}));},_a=async()=>{if(!y?.onSubmit){Fo(false);return}try{D(!0),await y.onSubmit(q),Fo(!1);}finally{D(false);}},ja=()=>{if(!Fe)return;let $={};$t.forEach(J=>{$[J.id]=Fe[J.id]??"";});let ge=T?.getInitialValues?{...$,...T.getInitialValues(Fe)}:$;je(ge),Ee(true);},Eo=($,ge)=>{je(J=>({...J,[$]:ge}));},Za=async()=>{if(Fe){if(!T?.onSubmit){Ee(false);return}try{Qe(!0),await T.onSubmit(he,Fe),Ee(!1);}finally{Qe(false);}}},Xa=()=>{ke.length!==0&&Mt(true);},ba=async()=>{if(ke.length===0){Mt(false);return}if(!E?.onConfirm){Mt(false),it([]),s?.([]);return}try{Jt(!0),await E.onConfirm(ke),Mt(!1),it([]),s?.([]);}finally{Jt(false);}},Pr=rt,{fieldMapping:_r}=dn({rows:Pr,config:{...b,title:b?.title||`${W} ${t("graph.reportTitle")}`}}),jr=Kt__default.useMemo(()=>N?V.applyRows(Pr,_r):Pr,[_r,V,N,Pr]),{model:x}=dn({rows:jr,config:{...b,title:b?.title||`${W} ${t("graph.reportTitle")}`,fieldMapping:_r}}),F=x.table.columns.map($=>({id:$.id,label:$.label,align:$.align||"left",minWidth:120,numeric:$.align==="right"})),L=oo?jsx(fn,{appId:oo,tableKey:p,currentLayoutData:xo,onLayoutLoad:et,targetLayoutId:ar,activeLayoutId:bt,serviceUrl:R??u?.serviceUrl}):null,X=G.filter($=>we.includes($.id)),ve=X.find($=>$.id===I)||X[0],He=k?.map($=>X.find(ge=>ge.id===$)).filter(Boolean)||X.filter($=>$.id!==ve?.id).slice(0,le==="portrait"?2:3),H=X.filter($=>$.id!==ve?.id&&!He.some(ge=>ge.id===$.id)),se=[S,l].filter(Boolean),ie=jsxs(Fragment,{children:[jsx(Qa,{groupAnchorEl:Te,setGroupAnchorEl:$e,grouping:ye,setGrouping:Ge,columns:G,toggleGroupField:O}),jsx(Ja,{anchorEl:Le,setAnchorEl:_e,columns:G,visibleColumns:we,toggleColumnVisibility:Ae}),jsx(Qi,{anchorEl:ct,setAnchorEl:fe,showSummary:Ce,setShowSummary:re,columns:G,summaryColumns:oe,toggleSummaryColumn:Et}),jsx(Ji,{contextMenu:dt,handleCloseContextMenu:ze,columns:G,visibleColumns:we,toggleColumnVisibility:Ae})]}),kt=($,ge,J)=>{let Me=i.includes(ge),ut=le==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(140px, 1fr))",yr=J%2===0?alpha(o.palette.primary.main,o.palette.mode==="dark"?.09:.04):alpha(o.palette.primary.main,o.palette.mode==="dark"?.05:.022),Ff=alpha(o.palette.divider,.22);return jsx(Paper,{elevation:0,onClick:()=>{gt({},$),Z?.($);},sx:{p:P==="compact"?1.25:1.5,borderRadius:4,border:"0.5px solid",borderColor:Me?alpha(o.palette.primary.main,.38):Ff,background:Me?`linear-gradient(135deg, ${alpha(o.palette.primary.main,.13)}, ${alpha(o.palette.primary.main,.06)})`:`linear-gradient(135deg, ${yr}, ${alpha(o.palette.primary.main,.015)})`,boxShadow:Me?`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:Me?o.palette.primary.main:J%2===0?alpha(o.palette.primary.main,.26):alpha(o.palette.text.primary,.16)},"&:hover":{boxShadow:`0 10px 20px ${alpha(o.palette.primary.main,.12)}`,transform:"translateY(-1px)"},"&:active":{transform:"scale(0.995)"}},children:jsxs(Stack,{spacing:1.25,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"flex-start",children:[n?jsx(Checkbox,{checked:Me,onClick:Lo=>Lo.stopPropagation(),onChange:()=>gt({},$),sx:{mt:-0.6,ml:-0.6}}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[ve?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:900,lineHeight:1.25},children:Ag(ve,$)}):null,He.length>0?jsx(Stack,{direction:"row",spacing:.75,useFlexGap:true,flexWrap:"wrap",sx:{mt:.75},children:He.map(Lo=>jsx(Chip,{label:`${Lo.label}: ${SS(Lo,$)}`,size:"small",variant:"outlined",sx:pe},`${ge}-${Lo.id}`))}):null]}),M?jsx(Box,{onClick:Lo=>Lo.stopPropagation(),children:M($)}):null]}),H.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:ut,gap:1},children:H.map(Lo=>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:Lo.label}),kS(Ag(Lo,$))]},`${ge}-${Lo.id}-detail`))}):null,A?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{onClick:Lo=>Lo.stopPropagation(),children:A($)})]}):null]})},ge)};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(fg,{...u,onVariantLoad:$=>{Ct($),u.onVariantLoad?.($);},appId:u.appId,tableKey:p,currentLayout:[{tableKey:p,layoutData:xo}],currentLayoutId:bt,layoutRefs:[{tableKey:p,layoutId:bt}],variantService:u.variantService,serviceUrl:R??u.serviceUrl,touchMode:le==="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":ao?{content:'""',position:"absolute",top:0,left:0,width:"100%",height:"3px",background:"linear-gradient(90deg, rgba(25, 118, 210, 0) 0%, rgba(25, 118, 210, 0.25) 25%, rgba(25, 118, 210, 1) 50%, rgba(25, 118, 210, 0.25) 75%, rgba(25, 118, 210, 0) 100%)",backgroundSize:"220% 100%",animation:"cTableTopMarquee 1.2s linear infinite",zIndex:6,pointerEvents:"none"}:{},"@keyframes cTableTopMarquee":{"0%":{backgroundPosition:"220% 0"},"100%":{backgroundPosition:"-120% 0"}},...f?{height:f}:c?{flex:1,minHeight:0,height:"100%"}:{}},children:[a?jsx(Box,{sx:{"& .MuiToolbar-root":{minHeight:60,alignItems:{xs:"flex-start",md:"center"},flexWrap:"wrap",rowGap:1,columnGap:1},"& .MuiToolbar-root > :nth-of-type(1)":{width:{xs:"100%",md:"auto"},"& .MuiTextField-root":{width:{xs:"100%",md:300}}},"& .MuiToolbar-root > :nth-of-type(2)":{flexShrink:0},"& .MuiToolbar-root > :nth-of-type(3)":{display:{xs:"none",md:"block"}},"& .MuiToolbar-root > :nth-of-type(4)":{ml:"auto",justifyContent:"flex-end",flexWrap:"wrap"},"& .MuiInputBase-root":{minHeight:46},"& .MuiIconButton-root":{width:40,height:40},"& .MuiTypography-root":{fontSize:"0.9rem"},"& .MuiButtonBase-root":{borderRadius:2.5}},children:jsx(_i,{filterText:te,setFilterText:me,onRowsPerPageChange:Be,rowsPerPage:Re,rowsPerPageOptions:h,page:_,count:at,onPageChange:Q,actions:d,extraTools:se,grouping:ye,setGroupAnchorEl:$e,showSummary:Ce,setShowSummary:re,setAnchorEl:_e,setSummaryAnchorEl:fe,handleExport:U,showCreateButton:Ue,onOpenCreateDialog:Zo,showEditButton:Rt,onOpenEditDialog:ja,editDisabled:ke.length!==1,showDeleteButton:yt,onOpenDeleteConfirm:Xa,deleteDisabled:ke.length===0,onLayoutSave:C||u?.variantService&&u?.appId?It:void 0,loading:m,layoutManager:L,onOpenGraphReport:z?nr:void 0})}):null,jsx(Box,{sx:{flex:1,minHeight:0,overflow:"auto",p:1.5},children:jsxs(Stack,{spacing:1.25,children:[Ne.length===0&&!m?B||jsx(Paper,{elevation:0,sx:{p:4,borderRadius:4,border:"1px dashed",borderColor:"divider",textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.92rem",color:"text.secondary"},children:t("common.noData")})}):null,Ne.map(($,ge)=>{if($.type==="group"){let ut=de.has($.id);return jsx(Paper,{elevation:0,sx:{borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsxs(Box,{component:"button",type:"button",onClick:()=>ft($.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:[ut?jsx(gS,{}):jsx(fS,{}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsxs(Typography,{sx:{fontSize:"0.94rem",fontWeight:800},children:[$.field,": ",$.value]}),jsxs(Typography,{sx:{mt:.2,fontSize:"0.76rem",color:"text.secondary"},children:[$.count," records"]})]}),ye.length>1&&$.level<ye.length-1?jsxs(Stack,{direction:"row",spacing:.5,children:[jsx(Chip,{size:"small",label:t("table.group.expandAll"),onClick:yr=>{yr.stopPropagation(),xe($.id);},sx:Pe}),jsx(Chip,{size:"small",label:t("table.group.collapseAll"),onClick:yr=>{yr.stopPropagation(),Ke($.id);},sx:Pe})]}):null]})},$.id)}let J=$.data||$,Me=$.id||J[ce]||ge;return kt(J,Me,ge)}),Ce?jsx(wS,{summaryRow:j,visibleColumns:we,columns:G}):null,m?jsx(Typography,{sx:{py:1,fontSize:"0.84rem",color:"text.secondary",textAlign:"center"},children:t("common.loading")}):null]})})]}),Ue?jsxs(Dialog,{open:_o,onClose:()=>!jo&&Fo(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:y?.title||t("quickCreate.createWithTitle",{title:W})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Co.map($=>{let ge=$.type==="number"||$.numeric?"number":$.type==="date"?"date":"text";return jsx(TextField,{label:$.label||$.id,value:q[$.id]??"",onChange:J=>qa($.id,J.target.value),type:ge,fullWidth:true,InputLabelProps:{shrink:ge==="date"?true:void 0}},`quick-create-${$.id}`)}),y?.description?jsx(Alert,{severity:"info",children:y.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Fo(false),disabled:jo,children:y?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:_a,variant:"contained",disabled:jo,children:y?.submitLabel||t("common.save")})]})]}):null,Rt?jsxs(Dialog,{open:ue,onClose:()=>!We&&Ee(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:T?.title||t("quickEdit.editWithTitle",{title:W})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[$t.map($=>{let ge=$.type==="number"||$.numeric?"number":$.type==="date"?"date":"text";return jsx(TextField,{label:$.label||$.id,value:he[$.id]??"",onChange:J=>Eo($.id,J.target.value),type:ge,disabled:!br($.id),fullWidth:true,InputLabelProps:{shrink:ge==="date"?true:void 0}},`quick-edit-${$.id}`)}),T?.description?jsx(Alert,{severity:"info",children:T.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Ee(false),disabled:We,children:T?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Za,variant:"contained",disabled:We||!Fe,children:T?.submitLabel||t("common.save")})]})]}):null,yt?jsx(jn,{open:nt,type:"warning",title:E?.title||t("quickDelete.confirmTitle"),message:E?.message||(ke.length>1?t("quickDelete.confirmMessageMultiple",{count:ke.length}):t("quickDelete.confirmMessageSingle")),confirmText:E?.confirmText||t("common.delete"),cancelText:E?.cancelText||t("common.cancel"),onClose:()=>!lt&&Mt(false),onConfirm:ba}):null,ie,z?jsx(fl,{open:Pt,onClose:ro,model:x,aiAssistant:b?.aiAssistant,interaction:N?{enabled:true,filters:V.filters,fieldMapping:_r,onPrimaryDimensionClick:$=>V.setFilter("primaryDimension",$),onSecondaryDimensionClick:$=>V.setFilter("secondaryDimension",$),onStatusClick:$=>V.setFilter("status",$),onClearFilter:V.clearFilter,onClearAll:V.clearAll}:void 0,tableContent:jsx(TS,{appId:oo||"graph-report-internal",title:t("graph.dataBody"),columns:F,rows:x.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false},showSummary:false})}):null]})};var GL=({appTitle:e,children:t,menuData:o=[],workloadItems:r=[],workloadSelectedId:a,showNavigation:n=true,showWorkloadNav:i=true,orientation:s="auto",logo:d,headerSlot:l,actionSlot:c,portraitBottomSlot:g,contentSx:f,containerSx:m,user:h,onSearch:C,onSearchAdd:u,defaultNavigationOpen:v,navOpen:p,onNavOpenChange:b,onWorkloadSelect:y,locale:T="en",localeLabel:E,localeOptions:R,onLocaleChange:w,onUserSetting:I,onUserLogout:k,userMenuItems:S,leftHeaderSlot:B,rightHeaderSlot:P})=>{let M="orbcafe:page-layout-mode",[A,Z]=useState("system"),[W,K]=useState("light"),[ee,le]=useState(false),[G,te]=useState(false),me=A==="system"?G?W:"light":A;useEffect(()=>{le(true);},[]),useEffect(()=>{try{let rt=window.localStorage.getItem(M);(rt==="light"||rt==="dark"||rt==="system")&&Z(rt);}catch{}te(true);let _e=window.matchMedia("(prefers-color-scheme: dark)"),dt=()=>{K(_e.matches?"dark":"light");};return dt(),_e.addEventListener("change",dt),()=>_e.removeEventListener("change",dt)},[]),useEffect(()=>{if(G)try{window.localStorage.setItem(M,A);}catch{}},[G,A]),useEffect(()=>{me==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[me]);let we=useMemo(()=>createTheme$1({palette:me==="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:me==="dark"?"#060913":"#eef3f8"}}},MuiPaper:{styleOverrides:{root:{backgroundImage:"none"}}}}}),[me]),Ce=useMediaQuery("(orientation: portrait)"),re=useMediaQuery(we.breakpoints.down("md")),oe=s==="auto"?!ee||Ce||re?"portrait":"landscape":s,[ye,Ge]=useState({landscape:v??true,portrait:false}),de=ye[oe],Te=p??de,$e=_e=>{p===void 0&&Ge(dt=>({...dt,[oe]:_e})),b?.(_e);},ct=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[!ee||n&&oe==="portrait"?jsx(IconButton,{onClick:()=>$e(!Te),sx:{bgcolor:"action.hover"},children:jsx(mS,{})}):null,B]}),fe=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[c,P]}),Le=jsx(Sg,{collapsed:oe==="landscape"?!Te:false,onToggle:()=>$e(!Te),menuData:o,orientation:oe,colorMode:me,maxHeight:oe==="landscape"?900:void 0});return jsx(ThemeProvider$1,{theme:we,children:jsx(Ki,{locale:T,children:jsxs(Box,{sx:[_e=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:_e.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":_e.palette.background.default}),...Array.isArray(m)?m:[m]],children:[jsx(Kl,{appTitle:e,logo:d===void 0?null:d,mode:A,onToggleMode:()=>Z(_e=>_e==="system"?"dark":_e==="dark"?"light":"system"),locale:T,localeLabel:E,localeOptions:R,onLocaleChange:w,user:h,onUserSetting:I,onUserLogout:k,userMenuItems:S,onSearch:C,onSearchAdd:u,leftSlot:ct,rightSlot:fe}),l?jsx(Box,{sx:{px:{xs:2,md:3},py:1.5,borderBottom:"1px solid",borderColor:"divider"},children:l}):null,jsxs(Box,{sx:{flex:1,minHeight:0,display:"flex",position:"relative"},children:[ee&&n&&oe==="landscape"?jsx(Box,{sx:{p:1.5,pr:0,flexShrink:0},children:Le}):null,!ee||n&&oe==="portrait"?jsx(Drawer,{open:Te,onClose:()=>$e(false),PaperProps:{sx:{width:"min(88vw, 360px)",p:1.25,bgcolor:"transparent",boxShadow:"none"}},children:Le}):null,jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...f},children:jsxs(Stack,{spacing:1.5,children:[i&&r.length>0?jsx(yg,{items:r,selectedId:a,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:we.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 Eg=LS(()=>import('./COrbCanvas-EGX5NO3Y.mjs').then(e=>e.COrbCanvas),{ssr:false,loading:()=>jsx("div",{className:"h-full w-full bg-transparent"})});function vd({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(Eg,{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(Eg,{hue:10,hoverIntensity:.8,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})})]})})})}var jL=vd;var zg=createContext(null);function GS(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 US({children:e,onVoiceSubmit:t,onVoicePartial:o,onVoiceError:r,longPressMs:a=200,disableSpaceTrigger:n=false,ignoreWhenFocusedInput:i=true,renderOverlay:s=true,wsUrl:d,silenceThresholdMs:l,minVolumeRms:c}){let[g,f]=useState(false),[m,h]=useState(false),C=useRef(null),u=useRef(false),v=useRef(false),p=useCallback(()=>{v.current=false,f(false);},[]),{isRecording:b,startRecording:y,stopRecording:T}=xn({wsUrl:d,silenceThresholdMs:l,minVolumeRms:c,onTextUpdate:I=>{o?.(I);},onComplete:async I=>{try{I.trim()&&(h(!0),await t(I.trim()));}catch(k){let S=k instanceof Error?k.message:"Failed to process voice command";r?.(S);}finally{h(!1),p();}},onError:I=>{r?.(I),h(!1),u.current||p();}}),E=useCallback(async()=>{v.current=false,await y();},[y]),R=useCallback(()=>{T();},[T]);useEffect(()=>{if(n)return;let I=S=>{S.isComposing||(S.code==="Space"||S.key===" ")&&(u.current||S.repeat||i&&GS(document.activeElement)||(u.current=true,S.preventDefault(),C.current=setTimeout(()=>{v.current=true,f(true),y();},a)));},k=S=>{(S.code==="Space"||S.key===" ")&&(C.current&&(clearTimeout(C.current),C.current=null),u.current=false,v.current&&(S.preventDefault(),f(false),T()));};return window.addEventListener("keydown",I),window.addEventListener("keyup",k),()=>{window.removeEventListener("keydown",I),window.removeEventListener("keyup",k),C.current&&(clearTimeout(C.current),C.current=null);}},[n,i,a,y,T]);let w=useMemo(()=>({isRecording:b,isHotkeyRecording:g,isSubmitting:m,startRecording:E,stopRecording:R}),[g,b,m,E,R]);return jsxs(zg.Provider,{value:w,children:[s?jsx(vd,{isRecording:g}):null,e]})}function KS(){let e=useContext(zg);if(!e)throw new Error("useAINav must be used within CAINavProvider");return e}var ez=US,tz=KS;function Xe(...e){return twMerge(clsx(e))}var QS=({content:e,theme:t="light",size:o="base",defaultExpanded:r=false})=>{let[a,n]=useState(r),i=useMemo(()=>`${(o==="sm"?14:o==="lg"?18:16)-2}px`,[o]);return jsxs("div",{className:`my-6 rounded-lg overflow-hidden transition-all duration-200 ${t==="dark"?"bg-gray-800":"bg-white"}`,style:{border:`0.5px solid ${t==="dark"?"#4b5563":"#d1d5db"}`},children:[jsxs("div",{className:`px-4 py-3 cursor-pointer flex items-center justify-between transition-colors duration-200 ${t==="dark"?"bg-gray-700 hover:bg-gray-650":"bg-gray-50 hover:bg-gray-100"}`,style:{borderBottom:`0.5px solid ${t==="dark"?"#4b5563":"#e5e7eb"}`},onClick:()=>n(!a),children:[jsxs("span",{className:"flex items-center",children:[jsx("span",{className:"mr-2",children:"\u{1F914}"}),jsx("span",{className:`font-medium ${t==="dark"?"text-gray-300":"text-gray-700"}`,style:{fontSize:o==="sm"?"14px":o==="lg"?"18px":"16px"},children:"\u601D\u8003\u8FC7\u7A0B"})]}),jsx("svg",{className:`w-4 h-4 transition-transform duration-200 ${a?"rotate-180":""} ${t==="dark"?"text-gray-400":"text-gray-500"}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),a&&jsx("div",{className:`p-4 whitespace-pre-wrap italic font-light ${t==="dark"?"text-gray-400":"text-gray-600"}`,style:{fontSize:i,lineHeight:"1.3 !important"},children:e})]})},Ng=QS;var iw=({content:e,language:t="text",isStreaming:o=false,className:r=""})=>{let{theme:a}=useTheme$2(),[n,i]=useState(false),s=async()=>{try{await navigator.clipboard.writeText(e),i(!0),setTimeout(()=>i(!1),2e3);}catch(l){console.error("\u590D\u5236\u5931\u8D25:",l);}},d=a==="dark"?oneDark:oneLight;return jsxs("div",{className:Xe("rounded-lg overflow-hidden border border-gray-200 dark:border-gray-700 my-4",r),children:[jsxs("div",{className:"flex items-center justify-between px-4 py-2 bg-gray-50 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700",children:[jsx("span",{className:"text-xs font-medium text-gray-600 dark:text-gray-300 uppercase",children:t}),jsx("button",{onClick:s,className:"p-1 hover:bg-gray-200 dark:hover:bg-gray-700 rounded transition-colors",disabled:o,title:n?"Copied":"Copy code",children:n?jsx(Check,{size:14,className:"text-green-500"}):jsx(Clipboard,{size:14,className:"text-gray-500 dark:text-gray-400"})})]}),jsx("div",{className:"text-sm",children:jsx(Prism,{language:t,style:d,customStyle:{margin:0,padding:"16px",fontSize:"14px",lineHeight:"1.5",backgroundColor:a==="dark"?"#1f2937":"#ffffff"},wrapLongLines:true,children:e})})]})},Og=iw;var dw=({content:e,isLoading:t,className:o="",style:r})=>{let a=useRef(null),[n,i]=useState(false),[s,d]=useState(null),{theme:l}=useTheme$2();return useEffect(()=>{let c=async()=>{if(!(!e.trim()||!a.current)){i(true),d(null);try{Wg.initialize({startOnLoad:!1,theme:l==="dark"?"dark":"default",securityLevel:"loose",fontFamily:"inherit"});let f=`mermaid-${Math.random().toString(36).substr(2,9)}`,m=e.replace(/```mermaid\n?|\n?```/g,"").trim(),{svg:h}=await Wg.render(f,m);a.current&&(a.current.innerHTML=h);}catch(f){console.error("Mermaid render failed:",f),d(f instanceof Error?f.message:"Render failed"),a.current&&(a.current.innerText=e);}finally{i(false);}}},g=setTimeout(()=>{c();},100);return ()=>clearTimeout(g)},[e,l]),t||n?jsx("div",{className:`mermaid-block loading ${o}`,style:r,children:jsxs("div",{className:"flex items-center justify-center p-4 bg-gray-50 dark:bg-gray-800 rounded border border-gray-200 dark:border-gray-700",children:[jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-b-2 border-blue-500 mr-2"}),jsx("span",{className:"text-sm text-gray-500",children:"Generating Diagram..."})]})}):s?jsxs("div",{className:"p-4 bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded text-red-600 dark:text-red-400 text-sm overflow-auto",children:[jsx("p",{className:"font-semibold mb-2",children:"Mermaid Error:"}),jsx("pre",{children:s}),jsx("pre",{className:"mt-4 text-xs text-gray-500",children:e})]}):jsx("div",{className:`mermaid-block overflow-x-auto ${o}`,style:r,ref:a})},Gg=dw;var hw=({title:e="\u53D1\u751F\u9519\u8BEF",content:t,errorCode:o,stack:r,icon:a,closable:n=true,onClose:i,onRetry:s,className:d="",...l})=>{let[c,g]=useState(false),[f,m]=useState(false),h=async()=>{if(s){m(true);try{await s();}catch(C){console.error("\u91CD\u8BD5\u5931\u8D25:",C);}finally{m(false);}}};return jsxs("div",{className:`relative w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...l,children:[jsxs("div",{className:"flex p-4 border-l-4 border-l-red-500 bg-red-50 dark:bg-red-900/10",children:[jsx("div",{className:"flex-shrink-0 mr-3 text-red-500 mt-0.5",children:a||jsx(AlertCircle,{className:"w-5 h-5"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center space-x-2 mb-1",children:[jsx("h4",{className:"text-base font-semibold text-gray-900 dark:text-gray-100",children:e}),o&&jsx("span",{className:"text-xs font-mono px-1.5 py-0.5 rounded bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-300",children:o})]}),t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-3 leading-relaxed",children:typeof t=="string"?jsx("p",{className:"whitespace-pre-wrap",children:t}):t}),(s||r)&&jsxs("div",{className:"flex items-center space-x-4 mt-2",children:[s&&jsxs("button",{onClick: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"]}),r&&jsxs("button",{onClick:()=>g(!c),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 transition-colors",children:[c?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),c?"\u9690\u85CF\u8BE6\u60C5":"\u67E5\u770B\u8BE6\u60C5"]})]})]}),n&&i&&jsx("button",{onClick:i,className:"flex-shrink-0 ml-3 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors self-start",children:jsx(X,{className:"w-4 h-4"})})]}),r&&c&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 p-3 border-t border-gray-100 dark:border-gray-800",children:jsx("pre",{className:"text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto whitespace-pre-wrap p-2 bg-white dark:bg-gray-900 rounded border border-gray-200 dark:border-gray-800",children:r})})]})},bs=hw;var kw=({title:e="\u8B66\u544A",content:t,warningType:o,severity:r="warning",warnings:a=[],icon:n,closable:i=true,onClose:s,onConfirm:d,actionText:l,className:c="",...g})=>{let f=()=>{switch(r){case "info":return {borderLeftColor:"border-l-blue-500",iconColor:"text-blue-500",bgColor:"bg-blue-50 dark:bg-blue-900/10"};case "error":return {borderLeftColor:"border-l-red-500",iconColor:"text-red-500",bgColor:"bg-red-50 dark:bg-red-900/10"};case "success":return {borderLeftColor:"border-l-green-500",iconColor:"text-green-500",bgColor:"bg-green-50 dark:bg-green-900/10"};default:return {borderLeftColor:"border-l-yellow-500",iconColor:"text-yellow-500",bgColor:"bg-yellow-50 dark:bg-yellow-900/10"}}},m=()=>{switch(r){case "info":return jsx(Info,{className:"w-5 h-5"});case "error":return jsx(XCircle,{className:"w-5 h-5"});case "success":return jsx(CheckCircle,{className:"w-5 h-5"});default:return jsx(AlertTriangle,{className:"w-5 h-5"})}},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||m()}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center justify-between mb-1",children:[jsx("h4",{className:"text-base font-semibold text-gray-900 dark:text-gray-100",children:e}),o&&jsx("span",{className:"text-xs font-medium px-2 py-0.5 rounded-full bg-gray-100 dark:bg-gray-800 text-gray-600 dark:text-gray-400",children:o})]}),t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-2",children:t}),a&&a.length>0&&jsx("ul",{className:"mt-2 space-y-1",children:a.map((C,u)=>jsxs("li",{className:"flex items-start text-sm text-gray-600 dark:text-gray-300",children:[jsx("span",{className:"mr-2 mt-1.5 w-1 h-1 rounded-full bg-gray-400 dark:bg-gray-500 flex-shrink-0"}),jsx("span",{children:C})]},u))})]}),i&&s&&jsx("button",{onClick:s,className:"flex-shrink-0 ml-3 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors",children:jsx(X,{className:"w-4 h-4"})})]}),d&&jsx("div",{className:"bg-gray-50 dark:bg-gray-800/50 px-4 py-3 flex justify-end border-t border-gray-100 dark:border-gray-800",children:jsx("button",{onClick:d,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:l||"\u786E\u8BA4"})})]})},ys=kw;var Iw=({title:e="\u76F8\u5173\u63A8\u8350",content:t,suggestions:o,onSuggestionClick:r,maxDisplay:a=5,icon:n,closable:i=false,onClose:s,className:d="",...l})=>{let[c,g]=useState(false),[f,m]=useState(""),[h,C]=useState(false),u=useMemo(()=>f.trim()?o.filter(b=>b.toLowerCase().includes(f.toLowerCase())):o,[o,f]),v=useMemo(()=>c?u:u.slice(0,a),[u,c,a]),p=b=>{r?.(b);};return !o||o.length===0?null:jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...l,children:[jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-blue-50/30 dark:bg-blue-900/10",children:[jsxs("div",{className:"flex items-center space-x-2.5",children:[jsx("div",{className:"text-blue-500 flex-shrink-0",children:n||jsx(Lightbulb,{className:"w-5 h-5"})}),jsxs("div",{className:"flex flex-col",children:[jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100 leading-tight",children:e}),t&&jsx("span",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5",children:t})]})]}),jsxs("div",{className:"flex items-center space-x-1",children:[o.length>3&&jsx("button",{onClick:()=>C(!h),className:`p-1.5 rounded-md transition-colors ${h?"bg-blue-100 dark:bg-blue-900/30 text-blue-600 dark:text-blue-400":"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-800"}`,title:h?"\u5173\u95ED\u641C\u7D22":"\u641C\u7D22\u95EE\u9898",children:jsx(Search,{className:"w-4 h-4"})}),i&&s&&jsx("button",{onClick:s,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 p-1.5 rounded-md hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"\u5173\u95ED",children:jsx(X,{className:"w-4 h-4"})})]})]}),h&&jsx("div",{className:"px-4 py-2 border-b border-gray-100 dark:border-gray-800 bg-gray-50 dark:bg-gray-900/50",children:jsxs("div",{className:"relative",children:[jsx("input",{type:"text",placeholder:"\u641C\u7D22\u76F8\u5173\u95EE\u9898...",value:f,onChange:b=>m(b.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((b,y)=>jsx("li",{children:jsxs("button",{onClick:()=>p(b),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:b}),jsx(ChevronRight,{className:"w-4 h-4 text-gray-300 group-hover:text-blue-400 opacity-0 group-hover:opacity-100 transition-all transform group-hover:translate-x-0.5"})]})},y))}),u.length>a&&jsx("button",{onClick:()=>g(!c),className:"w-full text-center py-2 text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 transition-colors border-t border-gray-50 dark:border-gray-800/50 mt-1",children:c?"\u6536\u8D77":`\u67E5\u770B\u5168\u90E8 (${u.length})`}),u.length===0&&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=Iw;var Fw=({title:e,content:t,toolName:o,parameters:r,result:a,status:n,duration:i,icon:s,closable:d=false,onClose:l,onAction:c,actionText:g,className:f="",...m})=>{let[h,C]=useState(false),[u,v]=useState(true),p=()=>{switch(n){case "pending":return {iconColor:"text-blue-500",badgeBg:"bg-blue-50 dark:bg-blue-900/30",badgeText:"text-blue-600 dark:text-blue-400",label:"\u6267\u884C\u4E2D"};case "error":return {iconColor:"text-red-500",badgeBg:"bg-red-50 dark:bg-red-900/30",badgeText:"text-red-600 dark:text-red-400",label:"\u5931\u8D25"};default:return {iconColor:"text-green-500",badgeBg:"bg-green-50 dark:bg-green-900/30",badgeText:"text-green-600 dark:text-green-400",label:"\u6210\u529F"}}},b=()=>{switch(n){case "pending":return jsx(Loader2,{className:"w-5 h-5 animate-spin"});case "error":return jsx(XCircle,{className:"w-5 h-5"});default:return jsx(CheckCircle,{className:"w-5 h-5"})}},y=R=>R?R<1e3?`${R}ms`:`${(R/1e3).toFixed(2)}s`:"",T=p(),E=e||o||"\u5DE5\u5177\u8C03\u7528";return jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${f}`,...m,children:[jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-gray-50/50 dark:bg-gray-800/50",children:[jsxs("div",{className:"flex items-center space-x-3",children:[jsx("div",{className:`flex-shrink-0 ${T.iconColor}`,children:s||b()}),jsxs("div",{children:[jsxs("div",{className:"flex items-center space-x-2",children:[jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100",children:E}),jsx("span",{className:`text-[10px] font-medium px-1.5 py-0.5 rounded ${T.badgeBg} ${T.badgeText}`,children:T.label})]}),o&&e&&jsxs("div",{className:"text-xs text-gray-500 dark:text-gray-400 flex items-center mt-0.5",children:[jsx(Terminal,{className:"w-3 h-3 mr-1"}),o]})]})]}),jsxs("div",{className:"flex items-center space-x-2 text-xs text-gray-500 dark:text-gray-400",children:[i&&jsxs("div",{className:"flex items-center bg-gray-100 dark:bg-gray-800 px-2 py-1 rounded",children:[jsx(Clock,{className:"w-3 h-3 mr-1"}),y(i)]}),d&&l&&jsx("button",{onClick:l,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors p-1 rounded",children:jsx(X,{className:"w-4 h-4"})})]})]}),jsxs("div",{className:"p-4",children:[t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-4 leading-relaxed",children:t}),r&&jsxs("div",{className:"mb-3",children:[jsxs("button",{onClick:()=>C(!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(r,null,2)})})]}),a&&jsxs("div",{children:[jsxs("button",{onClick:()=>v(!u),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 mb-2",children:[u?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),jsx(Terminal,{className:"w-3.5 h-3.5 mr-1.5"}),"\u6267\u884C\u7ED3\u679C"]}),u&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-hidden",children:jsx("pre",{className:"p-3 text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto",children:typeof a=="string"?a:JSON.stringify(a,null,2)})})]}),c&&jsx("div",{className:"mt-3 pt-3 border-t border-gray-100 dark:border-gray-800 flex justify-end",children:jsx("button",{onClick:c,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:g||"\u6267\u884C\u64CD\u4F5C"})})]})]})},vs=Fw;var Lw=({data:e})=>{if(!e)return null;let t=useMemo(()=>{let o=[],r=[],a="\u6570\u636E\u8868\u683C";return Array.isArray(e)?(o=e,o.length>0&&(r=Object.keys(o[0]).map(n=>({id:n,label:n.charAt(0).toUpperCase()+n.slice(1),numeric:typeof o[0][n]=="number"})))):typeof e=="object"&&(a=e.title||a,o=Array.isArray(e.rows)?e.rows:Array.isArray(e.data)?e.data:[],Array.isArray(e.columns)?r=e.columns.map(i=>({id:i.key||i.id,label:i.title||i.label,numeric:i.dataType==="number"||i.numeric})):o.length>0&&(r=Object.keys(o[0]).map(i=>({id:i,label:i,numeric:typeof o[0][i]=="number"})))),o=o.map((n,i)=>({...n,id:n.id||`row_${i}`})),{title:a,columns:r,rows:o}},[e]);return t.rows.length===0?jsx("div",{className:"w-full my-4 p-4 border border-dashed border-gray-300 rounded text-center text-gray-500",children:"\u6682\u65E0\u8868\u683C\u6570\u636E"}):jsx("div",{className:"w-full my-4",children:jsx(aa,{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]})})},Cs=Lw;var Uw=({title:e,subtitle:t,data:o,type:r,config:a={}})=>{let n=()=>{switch(r){case "bar-chart-card":return jsx(BarChart,{className:"w-4 h-4 text-blue-500"});case "line-chart-card":return jsx(LineChart,{className:"w-4 h-4 text-green-500"});case "pie-chart-card":return jsx(PieChart,{className:"w-4 h-4 text-purple-500"});case "combo-chart-card":return jsx(Activity,{className:"w-4 h-4 text-orange-500"});case "heatmap-chart-card":return jsx(Grid$1,{className:"w-4 h-4 text-red-500"});case "fishbone-chart-card":return jsx(GitBranch,{className:"w-4 h-4 text-indigo-500"});case "waterfall-chart-card":return jsx(TrendingDown,{className:"w-4 h-4 text-teal-500"});case "google-map-card":return jsx(Globe,{className:"w-4 h-4 text-blue-600"});case "amap-card":return jsx(MapPin,{className:"w-4 h-4 text-blue-600"});default:return jsx(BarChart,{className:"w-4 h-4"})}},i=()=>{if(!o&&r!=="google-map-card"&&r!=="amap-card")return jsx("div",{className:"text-gray-500 text-sm p-4 text-center",children:"No data available"});try{switch(r){case "bar-chart-card":return jsx(oi,{data:o,orientation:a.orientation||"horizontal",valueSuffix:a.valueSuffix||"",minHeight:a.minHeight});case "line-chart-card":return jsx(Bu,{data:o,color:a.color,valueSuffix:a.valueSuffix||"",height:a.height});case "pie-chart-card":let s=o.reduce((l,c)=>l+(Number(c.value)||0),0),d=o.map(l=>({name:l.name,value:Number(l.value)||0,percent:typeof l.percent=="number"?l.percent:s>0?(Number(l.value)||0)/s*100:0}));return jsx(ll,{data:d,variant:a.variant||"donut",size:a.size,colors:a.colors});case "combo-chart-card":return jsx(Fu,{data:o,barColor:a.barColor,lineColor:a.lineColor});case "heatmap-chart-card":return jsx(Lu,{data:o});case "fishbone-chart-card":return jsx(Nu,{branches:o,effect:a.effect||e||"Problem"});case "waterfall-chart-card":return jsx(Ou,{data:o,height:a.height});case "google-map-card":return jsx($u,{embedUrl:a.embedUrl||o&&o[0]?.embedUrl,apiKey:a.apiKey,query:a.query||o&&o[0]?.query||e,height:a.height});case "amap-card":return jsx(qu,{embedUrl:a.embedUrl||o&&o[0]?.embedUrl,keyword:a.keyword||o&&o[0]?.keyword||e,height:a.height});default:return jsxs("div",{className:"text-gray-500 text-sm p-4 text-center",children:["Unsupported chart type: ",r]})}}catch(s){return console.error("Error rendering chart:",s),jsx("div",{className:"text-red-500 text-sm p-4 text-center",children:"Error rendering chart"})}};return jsxs("div",{className:"w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md",children:[jsxs("div",{className:"flex items-center px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-gray-50/50 dark:bg-gray-800/50",children:[jsx("div",{className:"mr-2 flex-shrink-0",children:n()}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("h3",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100 truncate",children:e}),t&&jsx("p",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5 truncate",children:t})]})]}),jsxs("div",{className:"p-4",children:[jsx("div",{className:"overflow-x-auto",children:i()}),jsx("div",{className:"mt-3",children:jsxs("details",{className:"text-xs text-gray-500 dark:text-gray-400",children:[jsx("summary",{className:"cursor-pointer hover:text-gray-700 dark:hover:text-gray-300 transition-colors select-none font-medium opacity-60 hover:opacity-100",children:"View Raw Data"}),jsx("pre",{className:"mt-2 p-2 bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-x-auto max-h-40",children:JSON.stringify(o,null,2)})]})})]})]})},ks=Uw;var qw=({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)})})})]}),ws=qw;var Ts=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 Qw=({content:e,theme:t,size:o="base",className:r,enableCodeHighlight:a=true,enableMermaid:n=true,messageId:i,cardHooks:s})=>{let d=useMemo(()=>e?e.replace(/<think>([\s\S]*?)<\/think>/g,(f,m)=>`<div data-component="thinkbox" data-think-content="${encodeURIComponent(m.trim())}"></div>`):"",[e]),l=(f,m,h,C,u)=>{s?.onCardEvent?.({messageId:i,cardType:f,action:m,title:h,payload:C,rawData:u});},c=(f,m,h,C,u,v)=>{if(!(!u&&!s?.onCardEvent))return (...p)=>{let b=u?.(...p),y=v?v(...p):void 0;return l(f,m,h,y,C),b}},g=useMemo(()=>({div(f){let{"data-component":m,"data-think-content":h,...C}=f;return m==="thinkbox"&&h?jsx(Ng,{content:decodeURIComponent(h),theme:t,size:o,defaultExpanded:false}):jsx("div",{...C})},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:m}){return jsx("th",{className:`px-3 py-2 font-semibold text-gray-800 dark:text-gray-100 ${m==="center"?"text-center":m==="right"?"text-right":"text-left"}`,children:f})},td({children:f,align:m}){return jsx("td",{className:`px-3 py-2 text-gray-700 dark:text-gray-200 align-top ${m==="center"?"text-center":m==="right"?"text-right":"text-left"}`,children:f})},code({inline:f,className:m,children:h,...C}){let u=/language-([\w-]+)/.exec(m||""),v=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",...C,children:h});let p=String(h).replace(/\n$/,"");if(n&&v==="mermaid")return jsx(Gg,{content:p});if(v==="json"){let b=Ts(p);if(b)switch(b.type){case "table":return jsx(Cs,{data:b.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(ks,{...b});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(ws,{...b});case "error-card":{let y=b;return jsx(bs,{...y,onClose:c("error-card","close",y.title,y,y.onClose),onRetry:c("error-card","retry",y.title,y,y.onRetry)})}case "warning-card":{let y=b,T=y.onConfirm?c("warning-card","confirm",y.title,y,y.onConfirm):y.actionText&&s?.onCardEvent?c("warning-card","confirm",y.title,y):void 0;return jsx(ys,{...y,onClose:c("warning-card","close",y.title,y,y.onClose),onConfirm:T})}case "suggestions-card":{let y=b;return jsx(xs,{...y,onClose:c("suggestions-card","close",y.title,y,y.onClose),onSuggestionClick:c("suggestions-card","suggestion-click",y.title,y,y.onSuggestionClick,T=>({suggestion:T}))})}case "tool-result-card":{let y=b;return jsx(vs,{...y,onClose:c("tool-result-card","close",y.title,y,y.onClose),onAction:c("tool-result-card","action",y.title,y,y.onAction)})}}}return a?jsx(Og,{content:p,language:v,className:"not-prose"}):jsx("code",{className:m,...C,children:h})}}),[t,o,n,a,s,i]);return jsx("div",{className:Xe("markdown-body prose dark:prose-invert max-w-none",r),children:jsx(_w,{remarkPlugins:[jw,Zw],rehypePlugins:[Xw,Yw],components:g,children:d})})},Is=Qw;var Jw=({content:e,messageId:t,cardHooks:o})=>{let r=(i,s,d,l,c)=>{o?.onCardEvent?.({messageId:t,cardType:i,action:s,title:d,payload:l,rawData:c});},a=(i,s,d,l,c,g)=>{if(!(!c&&!o?.onCardEvent))return (...f)=>{let m=c?.(...f),h=g?g(...f):void 0;return r(i,s,d,h,l),m}},n=Ts(e);if(n)switch(n.type){case "table":return jsx(Cs,{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(ks,{...n});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(ws,{...n});case "error-card":{let i=n;return jsx(bs,{...i,onClose:a("error-card","close",i.title,i,i.onClose),onRetry:a("error-card","retry",i.title,i,i.onRetry)})}case "warning-card":{let i=n,s=i.onConfirm?a("warning-card","confirm",i.title,i,i.onConfirm):i.actionText&&o?.onCardEvent?a("warning-card","confirm",i.title,i):void 0;return jsx(ys,{...i,onClose:a("warning-card","close",i.title,i,i.onClose),onConfirm:s})}case "suggestions-card":{let i=n;return jsx(xs,{...i,onClose:a("suggestions-card","close",i.title,i,i.onClose),onSuggestionClick:a("suggestions-card","suggestion-click",i.title,i,i.onSuggestionClick,s=>({suggestion:s}))})}case "tool-result-card":{let i=n;return jsx(vs,{...i,onClose:a("tool-result-card","close",i.title,i,i.onClose),onAction:a("tool-result-card","action",i.title,i,i.onAction)})}}return jsx("div",{className:"dynamic-card-fallback",children:jsx(Is,{content:e,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:t,cardHooks:o})})},Jg=Jw;var Rd=class{static analyze(t){if(!t.trim())return {blocks:[],hasComplexContent:false,overallType:"simple"};let r=/```json\s*\{\s*"type":\s*"[^"]+"/g.test(t),a=/<[^>]+>[\s\S]*?<\/[^>]+>/.test(t),n=t.includes("NQ#")||t.includes("data-component");return r||a||n?{blocks:[{type:"mixed",content:t,startIndex:0,endIndex:t.length}],hasComplexContent:true,overallType:"complex"}:{blocks:[{type:"markdown",content:t,startIndex:0,endIndex:t.length}],hasComplexContent:false,overallType:"simple"}}},t1=({content:e,className:t="",messageId:o,cardHooks:r})=>{let a=Kt__default.useMemo(()=>Rd.analyze(e),[e]);return jsx("div",{className:`universal-content-renderer ${t}`,children:a.blocks.map((n,i)=>n.type==="mixed"||n.type==="json-card"?jsx(Jg,{content:n.content,messageId:o,cardHooks:r},`block-${i}`):jsx(Is,{content:n.content,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:o,cardHooks:r},`block-${i}`))})},ef=t1;var o1=({content:e,isStreaming:t=true,onComplete:o,className:r="",streamIntervalMs:a=24,streamChunkSize:n=3,messageId:i,cardHooks:s})=>{let[d,l]=useState(t?0:e.length),[c,g]=useState(!t);useEffect(()=>{if(t){l(0),g(false);return}l(e.length),g(true);},[e,t]),useEffect(()=>{if(!t||c)return;if(d>=e.length){g(true),o?.();return}let u=window.setTimeout(()=>{l(v=>Math.min(v+n,e.length));},a);return ()=>{window.clearTimeout(u);}},[e.length,c,t,o,n,a,d]);let f=()=>{t&&!c&&(l(e.length),g(true),o?.());},m=t?e.slice(0,d):e,h=t&&!c,C=t&&!c;return jsxs("div",{className:`streaming-markdown ${r}`,onClick:f,style:{cursor:t?"pointer":"default"},children:[jsxs("div",{className:"relative",children:[jsx(ef,{content:m,messageId:i,cardHooks:s}),h&&jsx("span",{className:"inline-block w-0.5 h-5 bg-blue-500 ml-1 animate-pulse",style:{verticalAlign:"text-bottom"}})]}),C&&jsx("div",{className:"streaming-hint",style:{fontSize:"9px",color:"#999",marginTop:"8px",fontStyle:"italic",opacity:.7},children:"\u70B9\u51FB\u6B64\u5904\u663E\u793A\u5B8C\u6574\u5185\u5BB9"})]})},af=o1;var nf=({buttons:e,className:t})=>{let o=r=>{switch(r){case "copy":return jsx(Copy,{size:14});case "refresh":return jsx(RefreshCw,{size:14});case "volume":return jsx(Volume2,{size:14});case "like":return jsx(ThumbsUp,{size:14});case "dislike":return jsx(ThumbsDown,{size:14});default:return null}};return jsx("div",{className:Xe("flex items-center gap-1",t),children:e.map((r,a)=>jsx("button",{onClick:r.onClick,disabled:r.disabled,className:Xe("p-1.5 rounded-md transition-colors","text-gray-500 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-100","hover:bg-gray-100 dark:hover:bg-gray-800","disabled:opacity-50 disabled:cursor-not-allowed",r.active&&"text-blue-600 bg-blue-50 dark:text-blue-400 dark:bg-blue-900/20",r.type==="refresh"&&r.disabled&&"animate-spin"),title:r.type,type:"button",children:o(r.type)},`${r.type}-${a}`))})};var Ps=({message:e,onStreamingComplete:t,assistantActions:o,streamIntervalMs:r,streamChunkSize:a,cardHooks:n})=>e.type==="assistant"?jsx("div",{className:"flex justify-start mb-4",children:jsxs("div",{className:"w-full bg-transparent text-black dark:text-gray-100 rounded-2xl px-4 py-3 mr-auto",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[jsx(af,{content:e.content,isStreaming:e.isStreaming??false,onComplete:t,streamIntervalMs:r,streamChunkSize:a,messageId:e.id,cardHooks:n}),e.content&&o?.isLatestAssistant&&jsx("div",{className:"flex flex-row justify-start gap-2 mt-3 pt-2 border-t border-gray-100 dark:border-gray-700",children:jsx(nf,{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 sf=({onTextUpdate:e,onComplete:t,onCancel:o,disabled:r,className:a})=>{let{isRecording:n,startRecording:i,stopRecording:s}=xn({onTextUpdate:e,onComplete:l=>{t?.(l);},onError:l=>{console.error("Voice input error:",l),o?.();}});return jsx("button",{onClick:async()=>{n?s():await i();},disabled:r,className:Xe("transition-all duration-200 flex items-center justify-center rounded-full",n?"bg-red-100 text-red-600 hover:bg-red-200 animate-pulse":"bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400 active:scale-95",r&&"opacity-50 cursor-not-allowed",a),title:n?"Stop recording":"Start recording",type:"button",children:n?jsx(c1,{sx:{fontSize:24}}):jsx(s1,{sx:{fontSize:24}})})};var qt={container:"w-full max-w-4xl mx-auto",inputContainer:Xe("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:Xe("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:Xe("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:Xe("bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400","cursor-pointer active:scale-95"),sendButton:Xe("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:Xe("cursor-not-allowed opacity-40 bg-transparent text-gray-400"),stopButton:Xe("cursor-pointer bg-red-500 hover:bg-red-600 text-white shadow-sm active:scale-95")},b1={padding:0,lineHeight:"1.5",border:"none !important",boxShadow:"none !important",backgroundColor:"transparent",height:"auto",fontFeatureSettings:'"liga" 1, "kern" 1',WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},y1=({enabled:e,onClick:t})=>jsx("button",{className:Xe(qt.buttonBase,qt.buttonSmall,qt.buttonNormal),onClick:t,disabled:!e,"aria-label":"Upload file",type:"button",children:jsx(jv,{sx:{fontSize:24}})}),x1=()=>jsxs("button",{className:Xe(qt.buttonBase,"h-10 px-3 py-2 gap-1.5 rounded-full",qt.buttonNormal),"aria-label":"Tools",type:"button",children:[jsx(h1,{sx:{fontSize:20}}),jsx("span",{className:"text-sm font-medium",children:"Tools"})]}),v1=({canSend:e,isResponding:t,onSend:o,onStop:r})=>t?jsx("button",{className:Xe(qt.buttonBase,qt.buttonSmall,qt.stopButton),onClick:r,"aria-label":"Stop generating",type:"button",children:jsx(Stop,{sx:{fontSize:20}})}):jsx("button",{className:Xe(qt.buttonBase,qt.buttonSmall,e?qt.sendButton:qt.sendButtonDisabled),onClick:o,disabled:!e,"aria-label":"Send message",type:"button",children:jsx(g1,{sx:{fontSize:24},className:e?"text-gray-500 dark:text-gray-400":"text-gray-300 dark:text-gray-600"})}),cf=({onSend:e,onStop:t,isResponding:o=false,placeholder:r,getText:a})=>{let[n,i]=useState(""),[s,d]=useState([]),[l,c]=useState(false),[g,f]=useState(false),m=useRef(null),h=r||(a?a("00019","Type a message..."):"Type a message..."),C=(n.trim().length>0||s.length>0)&&!o,u={enabled:true},v=useCallback(A=>{i(A.target.value),A.target.style.height="auto",A.target.style.height=`${Math.min(A.target.scrollHeight,200)}px`;},[]),p=useCallback(A=>{if(A.target.files&&A.target.files.length>0){let Z=Array.from(A.target.files);d(W=>{let K=Z.filter(le=>W.some(G=>G.name===le.name&&G.size===le.size));K.length>0&&console.warn("Duplicate files ignored:",K.map(le=>le.name));let ee=Z.filter(le=>!W.some(G=>G.name===le.name&&G.size===le.size));return [...W,...ee]}),m.current&&(m.current.value="");}},[]),b=useCallback(A=>{d(Z=>Z.filter((W,K)=>K!==A));},[]),y=useCallback(()=>{m.current?.click();},[]),T=useCallback(async()=>{if(!C)return;let A=n,Z=[...s];i(""),d([]),m.current&&(m.current.value="");try{await e(A,Z);}catch(W){console.error("Failed to send message:",W),i(A),d(Z);}},[n,C,e,s]),E=useCallback(A=>{A.key==="Enter"&&!A.shiftKey&&!l&&(A.preventDefault(),T());},[T,l]),R=useCallback(()=>{c(true);},[]),w=useCallback(()=>{c(false);},[]),I=useCallback(A=>{i(A);},[]),k=useCallback(A=>{i(A);},[]),S=useCallback(()=>{},[]),B=useCallback(A=>{A.preventDefault(),f(true);},[]),P=useCallback(A=>{A.preventDefault(),f(false);},[]),M=useCallback(A=>{if(A.preventDefault(),f(false),A.dataTransfer.files&&A.dataTransfer.files.length>0){let Z=Array.from(A.dataTransfer.files);d(W=>[...W,...Z]);}},[]);return jsx("div",{className:qt.container,children:jsxs("div",{className:"relative",children:[jsx("input",{type:"file",multiple:true,className:"hidden",ref:m,onChange:p}),jsxs("div",{className:Xe(qt.inputContainer,g&&qt.dragActive),style:{borderRadius:"32px"},onDragOver:B,onDragLeave:P,onDrop:M,children:[s.length>0&&jsx("div",{className:qt.filePreviewArea,children:s.map((A,Z)=>jsxs("div",{className:qt.fileTag,children:[jsx(InsertDriveFile,{sx:{fontSize:16},className:"text-blue-500"}),jsx("span",{className:"truncate max-w-[150px]",children:A.name}),jsx("button",{onClick:()=>b(Z),className:"ml-1 hover:text-red-500 focus:outline-none",type:"button",children:jsx(Close,{sx:{fontSize:16}})})]},`${A.name}-${Z}`))}),jsxs("div",{className:"flex flex-col w-full p-2",children:[jsx("div",{className:Xe(qt.textareaWrapper,"px-3 pt-2 pb-3 min-h-[60px]"),children:jsx("textarea",{className:Xe(qt.textarea,"min-h-[24px] py-0 px-0"),placeholder:h,value:n,onChange:v,onKeyDown:E,onCompositionStart:R,onCompositionEnd:w,style:b1,"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(y1,{enabled:u.enabled,onClick:y}),jsx(x1,{})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(sf,{onTextUpdate:I,onComplete:k,onCancel:S,disabled:o,className:qt.buttonSmall}),jsx(v1,{canSend:C,isResponding:o,onSend:T,onStop:t})]})]})]})]})]})})};var pf=({messages:e,onSend:t,onStop:o,onRegenerate:r,isResponding:a=false,className:n,placeholder:i,streamIntervalMs:s,streamChunkSize:d,onMessageStreamingComplete:l,cardHooks:c,showInput:g=true})=>{let f=useRef(null),m=useRef(e.length);return useEffect(()=>{e.length>m.current&&f.current?.scrollIntoView({behavior:"smooth"}),m.current=e.length;},[e]),jsxs("div",{className:Xe("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,C)=>{let u=h.type==="assistant"&&C===e.length-1,v=h.type==="assistant"?{isLatestAssistant:u,onRegenerate:r?()=>r(h.id):void 0}:void 0;return jsx(Ps,{message:h,assistantActions:v,onStreamingComplete:()=>l?.(h.id),streamIntervalMs:s,streamChunkSize:d,cardHooks:c},h.id)}),jsx("div",{ref:f})]}),g&&jsx("div",{className:"p-4 bg-gradient-to-t from-white via-white to-transparent dark:from-gray-900 dark:via-gray-900 pb-8 z-10",children:jsx(cf,{onSend:t||(async()=>{}),onStop:o||(()=>{}),isResponding:a,placeholder:i})})]})};var Ko={};var S1={idle:"Idle",running:"Running",success:"Success",error:"Error",pending:"Pending"},IV=({title:e="AI Agent",description:t,headerActions:o,className:r,agentStatus:a,showInput:n=false,...i})=>{let s=a??(i.isResponding?"running":"idle");return jsxs("div",{className:Xe("relative flex h-full w-full",Ko.agentPanel,r),"data-status":s,children:[jsx("div",{className:Ko.colorHalo,"data-status":s,"aria-hidden":"true"}),jsxs("div",{className:Ko.marqueeBorder,"data-status":s,"aria-hidden":"true",children:[jsx("span",{className:Xe(Ko.edge,Ko.top)}),jsx("span",{className:Xe(Ko.edge,Ko.right)}),jsx("span",{className:Xe(Ko.edge,Ko.bottom)}),jsx("span",{className:Xe(Ko.edge,Ko.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:Ko.statusDot,"data-status":s}),jsx("span",{className:"text-[11px] font-medium uppercase tracking-wide text-gray-600 dark:text-gray-300",children:S1[s]})]}),o]})]}),jsx("div",{className:"flex-1 min-h-0 relative z-10",children:jsx(pf,{...i,showInput:n})})]})]})};var R1={"top-left":"bottom-right","top-right":"bottom-left","bottom-left":"top-right","bottom-right":"top-left"},EV=({messages:e,onSend:t,onRegenerate:o,isResponding:r=false,className:a,placeholder:n,title:i="Copilot",corner:s="bottom-right",onCollapse:d,onHeaderPointerDown:l,onPlusClick:c,onMicClick:g,streamIntervalMs:f,streamChunkSize:m,onMessageStreamingComplete:h,cardHooks:C})=>{let[u,v]=useState(""),[p,b]=useState(false),y=useRef(null),T=R1[s];useEffect(()=>{y.current?.scrollIntoView({behavior:"smooth"});},[e,r]);let E=useCallback(async()=>{let w=u.trim();!w||r||(v(""),await t(w));},[r,t,u]),R=useCallback(async w=>{w.key==="Enter"&&!p&&(w.preventDefault(),await E());},[E,p]);return jsxs("div",{className:Xe("relative flex h-full w-full min-h-[460px] min-w-[340px] flex-col overflow-hidden rounded-3xl border border-gray-200 bg-white shadow-none dark:border-gray-800 dark:bg-gray-900",a),children:[d&&jsx("button",{onClick:d,className:Xe("absolute z-20 flex h-10 w-10 items-center justify-center rounded-full transition-colors hover:bg-transparent dark:hover:bg-transparent",T==="top-left"&&"-left-2 -top-2",T==="top-right"&&"-right-2 -top-2",T==="bottom-left"&&"-bottom-2 -left-2",T==="bottom-right"&&"-bottom-2 -right-2"),type:"button","aria-label":"Collapse Copilot",children:jsx("span",{className:Xe("block h-4 w-4 border-[#21BCFF]",T==="top-left"&&"rounded-tl-full border-l-[3px] border-t-[3px]",T==="top-right"&&"rounded-tr-full border-r-[3px] border-t-[3px]",T==="bottom-left"&&"rounded-bl-full border-b-[3px] border-l-[3px]",T==="bottom-right"&&"rounded-br-full border-b-[3px] border-r-[3px]")})}),jsxs("div",{className:"flex items-center justify-between border-b border-gray-100 px-4 py-3 dark:border-gray-800",onPointerDown:l,children:[jsx("div",{className:"flex items-center",children:jsx("h3",{className:"text-base font-semibold tracking-tight text-gray-900 dark:text-gray-100",children:i})}),jsx("div",{})]}),jsxs("div",{className:"flex-1 overflow-y-auto px-3 py-3 space-y-5 scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600",children:[e.map((w,I)=>{let k=w.type==="assistant"&&I===e.length-1,S=w.type==="assistant"?{isLatestAssistant:k,onRegenerate:o?()=>o(w.id):void 0}:void 0;return jsx(Ps,{message:w,assistantActions:S,onStreamingComplete:()=>h?.(w.id),streamIntervalMs:f,streamChunkSize:m,cardHooks:C},w.id)}),jsx("div",{ref:y})]}),jsx("div",{className:"border-t border-gray-100 px-3 py-3 dark:border-gray-800",children:jsxs("div",{className:"flex items-center gap-2 rounded-xl border border-blue-300/80 bg-white px-2 py-1.5 dark:bg-gray-900",children:[jsx("button",{className:"flex h-8 w-8 items-center justify-center rounded-full text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200",onClick:c,type:"button","aria-label":"Add",children:jsx(Plus,{className:"h-4 w-4"})}),jsx("input",{className:"h-7 flex-1 border-none bg-transparent text-sm text-gray-800 outline-none placeholder:text-gray-400 dark:text-gray-100 dark:placeholder:text-gray-500",placeholder:n||"Ask Copilot...",value:u,onChange:w=>v(w.target.value),onCompositionStart:()=>b(true),onCompositionEnd:()=>b(false),onKeyDown:R,"aria-label":"Copilot input",spellCheck:false}),jsx("button",{className:"flex h-8 w-8 items-center justify-center rounded-full text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200",onClick:g,type:"button","aria-label":"Microphone",children:jsx(Mic,{className:"h-4 w-4"})})]})})]})};var M1=["#ff3860","#24e070","#3090ff"],D1=`
14
+ ${o}: ${(a??r)(u.secondaryValue??0)}`:""]})}),jsx("text",{x:u.x,y:Math.max(u.y-12,d.top+8),textAnchor:"middle",fontSize:"10",fill:n.palette.text.secondary,children:u.name})]},u.name)),jsx("text",{x:i/2,y:s-10,textAnchor:"middle",fontSize:"11",fill:n.palette.text.secondary,children:o?t:"Index"}),jsx("text",{x:16,y:s/2,textAnchor:"middle",transform:`rotate(-90 16 ${s/2})`,fontSize:"11",fill:n.palette.text.secondary,children:o??t}),jsx("text",{x:d.left,y:d.top-4,fontSize:"10",fill:n.palette.text.secondary,children:eg(f)}),jsx("text",{x:i-d.right,y:s-d.bottom+16,textAnchor:"end",fontSize:"10",fill:n.palette.text.secondary,children:eg(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,": ",r(u.primaryValue)]}),o&&jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[o,": ",(a??r)(u.secondaryValue??0)]})]},u.name))})]})};var gd=e=>Math.max(...e,1),rg=({data:e,chartType:t,primaryLabel:o,secondaryLabel:r,formatPrimaryValue:a,formatSecondaryValue:n})=>{let i=useTheme$1(),s=i.palette.primary.main,d=i.palette.warning.main;if(e.length===0)return null;if(t==="bar-horizontal"){let p=gd(e.flatMap(h=>[h.primaryValue,h.secondaryValue??0]));return jsx(Stack,{spacing:1.1,children:e.map(h=>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:h.name,children:h.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:`${h.primaryValue/p*100}%`,height:"100%",bgcolor:s}})}),r&&jsx(Box,{sx:{height:8,borderRadius:999,overflow:"hidden",bgcolor:alpha(i.palette.action.active,.08)},children:jsx(Box,{sx:{width:`${(h.secondaryValue??0)/p*100}%`,height:"100%",bgcolor:d}})})]}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},fontWeight:700},children:a(h.primaryValue)}),r&&jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},color:"text.secondary"},children:(n??a)(h.secondaryValue??0)})]})]},h.name))})}if(t==="bar-vertical"){let p=gd(e.flatMap(x=>[x.primaryValue,x.secondaryValue??0])),h=r?92:76;return jsx(Box,{sx:{overflowX:"auto",pb:.5},children:jsx(Box,{sx:{minWidth:Math.max(620,e.length*h),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:r?16:26,minHeight:8,height:`${Math.max(x.primaryValue/p*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:s},title:`${o}: ${a(x.primaryValue)}`}),r&&jsx(Box,{sx:{width:16,minHeight:8,height:`${Math.max((x.secondaryValue??0)/p*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:d},title:`${r}: ${(n??a)(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:a(x.primaryValue),children:a(x.primaryValue)}),r&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary"},noWrap:true,title:(n??a)(x.secondaryValue??0),children:(n??a)(x.secondaryValue??0)})]},x.name))})})}let l=Math.max(680,e.length*74),c=240,g={top:20,right:18,bottom:36,left:18},f=gd(e.flatMap(p=>[p.primaryValue,p.secondaryValue??0])),m=l-g.left-g.right,b=c-g.top-g.bottom,v=p=>e.map((h,x)=>{let w=g.left+x*m/Math.max(e.length-1,1),E=c-g.bottom-p(h)/f*b;return {x:w,y:E,item:h}}),u=v(p=>p.primaryValue),C=r?v(p=>p.secondaryValue??0):[];return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.1},children:[jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{component:"svg",viewBox:`0 0 ${l} ${c}`,sx:{width:"100%",minWidth:l,height:c},children:[jsx("line",{x1:g.left,y1:c-g.bottom,x2:l-g.right,y2:c-g.bottom,stroke:alpha(i.palette.text.secondary,.35)}),jsx("polyline",{fill:"none",stroke:s,strokeWidth:3,points:u.map(p=>`${p.x},${p.y}`).join(" ")}),u.map(p=>jsx("circle",{cx:p.x,cy:p.y,r:4,fill:s,children:jsxs("title",{children:[p.item.name,`
15
+ `,o,": ",a(p.item.primaryValue)]})},`primary-${p.item.name}`)),r&&jsxs(Fragment,{children:[jsx("polyline",{fill:"none",stroke:d,strokeWidth:2.5,strokeDasharray:"5 5",points:C.map(p=>`${p.x},${p.y}`).join(" ")}),C.map(p=>jsx("circle",{cx:p.x,cy:p.y,r:3.5,fill:d,children:jsxs("title",{children:[p.item.name,`
16
+ `,r,": ",(n??a)(p.item.secondaryValue??0)]})},`secondary-${p.item.name}`))]})]})}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",xl:"repeat(4, minmax(0, 1fr))"},gap:1},children:e.map(p=>jsxs(Box,{sx:h=>({borderRadius:2,px:1.1,py:.9,border:`1px solid ${alpha(h.palette.divider,.7)}`,bgcolor:alpha(h.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.76rem",fontWeight:700},noWrap:true,title:p.name,children:p.name}),jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:a(p.primaryValue)}),r&&jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:(n??a)(p.secondaryValue??0)})]},p.name))})]})};var ag=(e,t,o)=>{let r=new Set,a=[];return e.forEach(n=>{r.has(n)||(r.add(n),a.push({fieldId:n,label:o.get(n)?.label??n,zone:"rows"}));}),t.forEach(n=>{r.has(n)||(r.add(n),a.push({fieldId:n,label:o.get(n)?.label??n,zone:"columns"}));}),a},ng=(e,t,o)=>e.map(r=>{let a=t.get(r.fieldId),n=a?.label??r.fieldId;return {fieldId:r.fieldId,label:`${o(r.aggregation)} \xB7 ${n}`,item:r,field:a}}),ig=({rows:e,dimensionFieldId:t,primaryValue:o,secondaryValue:r})=>{if(!t)return [];let a=new Map;return e.forEach(n=>{let i=Gr(n[t]),s=a.get(i);if(s){s.push(n);return}a.set(i,[n]);}),Array.from(a.entries()).sort((n,i)=>n[0].localeCompare(i[0],void 0,{sensitivity:"base"})).map(([n,i])=>({name:n,primaryValue:Dn(i,o.fieldId,o.aggregation),secondaryValue:r?Dn(i,r.fieldId,r.aggregation):void 0}))};var lg=({rows:e,fieldMap:t,rowFields:o,columnFields:r,valueFields:a,chartDimensionFieldId:n,chartPrimaryValueFieldId:i,chartSecondaryValueFieldId:s,chartType:d,isCollapsed:l,onChartDimensionFieldIdChange:c,onChartPrimaryValueFieldIdChange:g,onChartSecondaryValueFieldIdChange:f,onChartTypeChange:m,onToggleCollapse:b,getAggregationLabel:v})=>{let{t:u}=oe(),C=useMemo(()=>ag(o,r,t),[r,t,o]),p=useMemo(()=>ng(a,t,v),[t,v,a]),h=p.find(S=>S.fieldId===i)??p[0],x=p.find(S=>S.fieldId===s&&S.fieldId!==h?.fieldId)??null,w=C.find(S=>S.fieldId===n)??C[0],E=w&&h?u("pivot.chart.subtitleReady",{dimension:w.label,measure:x?`${h.label} / ${x.label}`:h.label}):u("pivot.chart.subtitle"),R=useMemo(()=>!w||!h?[]:ig({rows:e,dimensionFieldId:w.fieldId,primaryValue:h.item,secondaryValue:x?.item}),[h,e,x,w]),T=S=>h?Bi(S,h.item,t):S.toLocaleString(),I=S=>x?Bi(S,x.item,t):S.toLocaleString(),k=C.length>1||p.length>1;return jsxs(Ln,{title:u("pivot.chart.title"),subtitle:E,collapsed:l,onToggleCollapse:b,expandAriaLabel:u("pivot.chart.collapse.ariaExpand"),collapseAriaLabel:u("pivot.chart.collapse.ariaCollapse"),bodySx:{display:"flex",flexDirection:"column",gap:1.1},children:[k&&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:w?.fieldId??"",onChange:S=>c(String(S.target.value)),sx:{fontSize:"0.75rem",height:32},children:C.map(S=>jsx(MenuItem,{value:S.fieldId,sx:{fontSize:"0.75rem"},children:S.label},S.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:h?.fieldId??"",onChange:S=>g(String(S.target.value)),sx:{fontSize:"0.75rem",height:32},children:p.map(S=>jsx(MenuItem,{value:S.fieldId,sx:{fontSize:"0.75rem"},children:S.label},S.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:S=>f(String(S.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:u("common.none")}),p.filter(S=>S.fieldId!==h?.fieldId).map(S=>jsx(MenuItem,{value:S.fieldId,sx:{fontSize:"0.75rem"},children:S.label},S.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:S=>m(S.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:w?h?R.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(tg,{data:R,primaryLabel:h.label,secondaryLabel:x?.label,formatPrimaryValue:T,formatSecondaryValue:I}):jsx(rg,{data:R,chartType:d,primaryLabel:h.label,secondaryLabel:x?.label,formatPrimaryValue:T,formatSecondaryValue:I}):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 fs=({node:e,dataColumns:t,fieldMap:o,level:r,expandedKeys:a,onToggle:n,getValue:i})=>{let s=a.has(e.key),d=e.children.length>0,l=e.isGrandTotal;return jsxs(Fragment,{children:[jsxs(TableRow,{sx:c=>({bgcolor:l?c.palette.mode==="dark"?"rgba(25, 118, 210, 0.22)":"rgba(47, 91, 255, 0.08)":c.palette.mode==="dark"?"#111111":"background.paper","&:hover":{bgcolor:l?c.palette.mode==="dark"?"rgba(25, 118, 210, 0.28)":"rgba(47, 91, 255, 0.12)":c.palette.mode==="dark"?"#181818":"rgba(0, 0, 0, 0.02)"}}),children:[jsxs(TableCell,{sx:c=>({fontSize:"0.76rem",fontWeight:l?800:600,borderBottom:`1px solid ${c.palette.divider}`,whiteSpace:"nowrap",pl:r*2+1,display:"flex",alignItems:"center",height:40}),children:[d&&!l&&jsx(IconButton,{size:"small",onClick:()=>n(e.key),sx:{p:.2,mr:.5,ml:-1},children:s?jsx($b,{sx:{fontSize:16}}):jsx(Kf,{sx:{fontSize:16}})}),!d&&!l&&r>0&&jsx(Box,{sx:{width:20}}),e.value]}),t.map(c=>jsx(TableCell,{align:"right",sx:{fontSize:"0.76rem",fontWeight:l?800:500,borderBottom:g=>`1px solid ${g.palette.divider}`,whiteSpace:"nowrap"},children:Bi(i?i(e,c.id):e.aggregatedValues[c.id]??0,c.valueItem,o)},`${e.key}-${c.id}`))]}),s&&e.children.map(c=>jsx(fs,{node:c,dataColumns:t,fieldMap:o,level:r+1,expandedKeys:a,onToggle:n,getValue:i},c.key))]})};var xd=(e,t,o)=>{let r=[...e,...t];return o&&r.includes(o)?o:r[0]??""},ys=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",vd=(e,t,o)=>o===""?"":o&&o!==t&&e.some(r=>r.fieldId===o)?o:e.find(r=>r.fieldId!==t)?.fieldId??"",gg=e=>{let t=new Set,o=r=>{r.forEach(a=>{a.children.length>0&&(t.add(a.key),o(a.children));});};return o(e),t},hg=(e,t,o=0)=>e.length===0?o:e.reduce((r,a)=>a.children.length===0||!t.has(a.key)?Math.max(r,o+1):Math.max(r,hg(a.children,t,o+1)),o),$k=(e,t)=>{let o=[],r=a=>{a.forEach(n=>{if(n.children.length>0&&t.has(n.key)){r(n.children);return}o.push(n);});};return r(e),o},UF=({title:e,rows:t,fields:o,initialLayout:r,initialChart:a,emptyText:n,maxPreviewHeight:i=520,initialChartCollapsed:s=false,initialTableCollapsed:d=false,model:l,enablePresetManagement:c=false,presets:g,defaultPresets:f,onPresetsChange:m,initialPresetId:b,onPresetApplied:v})=>{let{t:u}=oe(),C=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}})),p=useRef(0),h=useRef(false),x=e??u("pivot.title.default"),w=n??u("pivot.empty"),E=useMemo(()=>({sum:u("pivot.agg.sum"),count:u("pivot.agg.count"),avg:u("pivot.agg.avg"),min:u("pivot.agg.min"),max:u("pivot.agg.max")}),[u]),R=useCallback(y=>E[y]??Nm[y],[E]),T=useMemo(()=>new Set(o.map(y=>y.id)),[o]),I=useMemo(()=>new Map(o.map(y=>[y.id,y])),[o]),[k,S]=useState(()=>eo(r?.rows,T)),[A,P]=useState(()=>eo(r?.columns,T)),[M,B]=useState(()=>eo(r?.filters,T)),[Z,N]=useState(()=>{let y=r?.values??[],F=new Set,L=[];return y.forEach(Y=>{if(!T.has(Y.fieldId)||F.has(Y.fieldId))return;F.add(Y.fieldId),p.current+=1;let he=I.get(Y.fieldId);L.push({tokenId:`v${p.current}`,fieldId:Y.fieldId,aggregation:So(Y.aggregation,he)});}),L}),[V,X]=useState({}),[j,H]=useState(true),[ee,pe]=useState(false),[De,xe]=useState(()=>xd(eo(r?.rows,T),eo(r?.columns,T),a?.dimensionFieldId)),[se,te]=useState(()=>{let y=(r?.values??[]).filter((F,L,Y)=>T.has(F.fieldId)&&Y.findIndex(he=>he.fieldId===F.fieldId)===L).map(F=>({tokenId:F.fieldId,fieldId:F.fieldId,aggregation:So(F.aggregation,I.get(F.fieldId))}));return ys(y,a?.primaryValueFieldId)}),[Ie,Ye]=useState(()=>{let y=(r?.values??[]).filter((L,Y,he)=>T.has(L.fieldId)&&he.findIndex(Ve=>Ve.fieldId===L.fieldId)===Y).map(L=>({tokenId:L.fieldId,fieldId:L.fieldId,aggregation:So(L.aggregation,I.get(L.fieldId))})),F=ys(y,a?.primaryValueFieldId);return vd(y,F,a?.secondaryValueFieldId)}),[Ue,be]=useState(a?.chartType??"bar-vertical"),[Ke,lt]=useState(s),[Ee,Oe]=useState(d),[qe,pt]=useState(()=>f??[]),[$e,q]=useState(""),[Le,ve]=useState(false),[Pe,at]=useState(""),[We,re]=useState(null),[ke,je]=useState(new Set(["__grand_total__"])),[St,K]=useState(new Set),Fe=l?.rowFields??k,ye=l?.columnFields??A,st=l?.filterFields??M,W=l?.valueFields??Z,ue=l?.filterSelections??V,_e=l?.showGrandTotal??j,Qe=l?.isConfiguratorCollapsed??ee,mt=l?.chartDimensionFieldId??De,yt=l?.chartPrimaryValueFieldId??se,oo=l?.chartSecondaryValueFieldId??Ie,xo=l?.chartType??Ue,xt=l?.isChartCollapsed??Ke,nr=l?.isTableCollapsed??Ee,Rt=g??qe,ir=c||Rt.length>0||!!m,ro=useCallback(y=>{if(l?.setRowFields){l.setRowFields(y);return}S(y);},[l]),z=useCallback(y=>{if(l?.setColumnFields){l.setColumnFields(y);return}P(y);},[l]),O=useCallback(y=>{if(l?.setFilterFields){l.setFilterFields(y);return}B(y);},[l]),$=useCallback(y=>{if(l?.setValueFields){l.setValueFields(y);return}N(y);},[l]),le=useCallback(y=>{if(l?.setFilterSelections){l.setFilterSelections(y);return}X(y);},[l]),de=useCallback(y=>{if(l?.setShowGrandTotal){l.setShowGrandTotal(y);return}H(y);},[l]),Te=useCallback(y=>{if(l?.setIsConfiguratorCollapsed){l.setIsConfiguratorCollapsed(y);return}pe(y);},[l]),Ce=useCallback(y=>{if(l?.setChartDimensionFieldId){l.setChartDimensionFieldId(y);return}xe(y);},[l]),Ae=useCallback(y=>{if(l?.setChartPrimaryValueFieldId){l.setChartPrimaryValueFieldId(y);return}te(y);},[l]),Ge=useCallback(y=>{if(l?.setChartSecondaryValueFieldId){l.setChartSecondaryValueFieldId(y);return}Ye(y);},[l]),Mt=useCallback(y=>{if(l?.setChartType){l.setChartType(y);return}be(y);},[l]),vt=useCallback(y=>{if(l?.setIsChartCollapsed){l.setIsChartCollapsed(y);return}lt(y);},[l]),Pt=useCallback(y=>{if(l?.setIsTableCollapsed){l.setIsTableCollapsed(y);return}Oe(y);},[l]),bt=useCallback(y=>{let F=typeof y=="function"?y(Rt):y;g||pt(F),m?.(F);},[m,Rt,g]),Po=useMemo(()=>new Set([...Fe,...ye,...st]),[Fe,ye,st]),qt=useMemo(()=>o.filter(y=>!Po.has(y.id)),[o,Po]),zt=useMemo(()=>{let y=[...Fe,...ye,...st],F=new Set,L=[];return y.forEach(Y=>{F.has(Y)||(F.add(Y),L.push(Y));}),L},[ye,st,Fe]);useEffect(()=>{ro(y=>{let F=y.filter(L=>T.has(L));return Ur(y,F)?y:F}),z(y=>{let F=y.filter(L=>T.has(L));return Ur(y,F)?y:F}),O(y=>{let F=y.filter(L=>T.has(L));return Ur(y,F)?y:F}),$(y=>{let F=y.filter(L=>T.has(L.fieldId)).map(L=>({...L,aggregation:So(L.aggregation,I.get(L.fieldId))}));return as(y,F)?y:F});},[I,T]);let vo=useMemo(()=>{let y={};return zt.forEach(F=>{let L=new Set;t.forEach(Y=>{L.add(Gr(Y[F]));}),y[F]=Array.from(L).sort((Y,he)=>Y.localeCompare(he));}),y},[zt,t]);useEffect(()=>{le(y=>{let F={};return zt.forEach(L=>{let Y=vo[L]??[],Ve=(y[L]??[]).filter(ie=>Y.includes(ie)),G=Object.prototype.hasOwnProperty.call(y,L);F[L]=G?Ve:Y;}),$m(y,F)?y:F});},[zt,vo]),useEffect(()=>{Ce(y=>xd(Fe,ye,y));},[ye,Fe,Ce]),useEffect(()=>{Ae(y=>ys(W,y));},[Ae,W]),useEffect(()=>{Ge(y=>vd(W,yt,y));},[yt,Ge,W]);let jt=useMemo(()=>t.filter(y=>zt.every(F=>{let L=ue[F]??[],Y=vo[F]??[];if(L.length===Y.length)return true;if(L.length===0)return false;let he=Gr(y[F]);return L.includes(he)})),[zt,vo,ue,t]),nt=useMemo(()=>{if(W.length===0)return null;let y=new Map;if(jt.forEach(G=>{let ie=ye.length>0?ye.map(wt=>Gr(G[wt])):[u("pivot.valueLabel")],ne=Va(ie);y.set(ne,ie);}),y.size===0){let G=ye.length>0?ye.map(()=>os):[u("pivot.valueLabel")];y.set(Va(G),G);}let F=Array.from(y.entries()).sort((G,ie)=>Wm(G[1],ie[1])),L=F.flatMap(([G,ie])=>W.map(ne=>{let wt=I.get(ne.fieldId),U=`${R(ne.aggregation)} ${wt?.label??ne.fieldId}`,me=ye.length===0||W.length>1?`${ie.join(" / ")} \u2022 ${U}`:ie.join(" / ");return {id:`${G}::${ne.tokenId}`,colKey:G,valueItem:ne,label:me}})),Y=[];ye.length>0&&F.forEach(([G,ie])=>{let ne=L.filter(me=>me.colKey===G),wt=Y,U=[];ie.forEach((me,J)=>{U.push(`d${J}:${me}`);let Re=`col::${Va(U)}`,gt=wt.find(xr=>xr.key===Re);gt||(gt={key:Re,label:me,children:[],leafColumnIds:[],path:ie.slice(0,J+1),depth:J},wt.push(gt)),ne.forEach(xr=>{gt.leafColumnIds.includes(xr.id)||gt.leafColumnIds.push(xr.id);}),wt=gt.children;});});let he=G=>{let ie={};return L.forEach(ne=>{let wt=G.filter(U=>{let me=ye.length>0?ye.map(J=>Gr(U[J])):[u("pivot.valueLabel")];return Va(me)===ne.colKey});ie[ne.id]=Dn(wt,ne.valueItem.fieldId,ne.valueItem.aggregation);}),ie},Ve=[];if(Fe.length===0)Ve.push({key:"root",value:u("pivot.resultLabel")||Fm,children:[],isLeaf:true,aggregatedValues:he(jt),path:[],depth:0});else {let G=(ie,ne,wt)=>{if(ne>=Fe.length)return [];let U=Fe[ne],me=new Map;return ie.forEach(J=>{let Re=Gr(J[U]);me.has(Re)||me.set(Re,[]),me.get(Re).push(J);}),Array.from(me.keys()).sort().map(J=>{let Re=me.get(J),gt=[...wt,J];return {key:Va(gt),value:J,fieldId:U,aggregatedValues:he(Re),children:G(Re,ne+1,gt),isLeaf:ne===Fe.length-1,path:gt,depth:ne}})};Ve.push(...G(jt,0,[]));}return {dataColumns:L,columnTree:Y,rowTree:Ve}},[ye,I,jt,R,Fe,u,W]),qo=useCallback((y,F)=>(p.current+=1,{tokenId:`v${p.current}`,fieldId:y,aggregation:So(F,I.get(y))}),[I]),Eo=useCallback(y=>{if(y==="rows")return ro([]);if(y==="columns")return z([]);if(y==="filters")return O([]);$([]);},[]),jo=useCallback((y,F)=>{if(y==="rows")return ro(L=>L.filter(Y=>Y!==F));if(y==="columns")return z(L=>L.filter(Y=>Y!==F));if(y==="filters")return O(L=>L.filter(Y=>Y!==F));$(L=>L.filter(Y=>Y.tokenId!==F));},[]),D=useCallback((y,F)=>{$(L=>L.map(Y=>Y.tokenId===y?{...Y,aggregation:So(F,I.get(Y.fieldId))}:Y));},[I]),_=useCallback(y=>{re(String(y.active.id));},[]),Q=useCallback(y=>{if(re(null),!y.over)return;let F=rs(String(y.active.id)),L=rs(String(y.over.id));if(!F||!L||F.kind!=="item"||!F.key)return;if(F.zone===L.zone&&L.kind==="item"){if(F.zone==="rows"){let J=Fe.indexOf(F.key),Re=Fe.indexOf(L.key??"");J!==-1&&Re!==-1&&J!==Re&&ro(gt=>arrayMove(gt,J,Re));return}if(F.zone==="columns"){let J=ye.indexOf(F.key),Re=ye.indexOf(L.key??"");J!==-1&&Re!==-1&&J!==Re&&z(gt=>arrayMove(gt,J,Re));return}if(F.zone==="filters"){let J=st.indexOf(F.key),Re=st.indexOf(L.key??"");J!==-1&&Re!==-1&&J!==Re&&O(gt=>arrayMove(gt,J,Re));return}if(F.zone==="values"){let J=W.findIndex(gt=>gt.tokenId===F.key),Re=W.findIndex(gt=>gt.tokenId===(L.key??""));J!==-1&&Re!==-1&&J!==Re&&$(gt=>arrayMove(gt,J,Re));}return}let Y=L.zone,he=[...Fe],Ve=[...ye],G=[...st],ie=[...W],ne="",wt=null;if(F.zone==="palette")ne=F.key;else if(F.zone==="values"){let J=ie.find(Re=>Re.tokenId===F.key);if(!J)return;ne=J.fieldId,wt=J,ie=ie.filter(Re=>Re.tokenId!==F.key);}else F.zone==="rows"?(ne=F.key,he=he.filter(J=>J!==ne)):F.zone==="columns"?(ne=F.key,Ve=Ve.filter(J=>J!==ne)):F.zone==="filters"&&(ne=F.key,G=G.filter(J=>J!==ne));if(!ne)return;let U=()=>{he=he.filter(J=>J!==ne),Ve=Ve.filter(J=>J!==ne),G=G.filter(J=>J!==ne);},me=J=>{if(L.kind!=="item"||!L.key)return J==="rows"?he.length:J==="columns"?Ve.length:J==="filters"?G.length:J==="values"?ie.length:0;if(J==="rows"){let Re=he.indexOf(L.key);return Re>=0?Re:he.length}if(J==="columns"){let Re=Ve.indexOf(L.key);return Re>=0?Re:Ve.length}if(J==="filters"){let Re=G.indexOf(L.key);return Re>=0?Re:G.length}if(J==="values"){let Re=ie.findIndex(gt=>gt.tokenId===L.key);return Re>=0?Re:ie.length}return 0};if(Y==="palette"){ro(he),z(Ve),O(G),$(ie);return}if(Y==="values"){let J=me("values"),Re=wt??qo(ne);ie.splice(J,0,Re),ro(he),z(Ve),O(G),$(ie);return}if(Hm(Y)){U();let J=me(Y);Y==="rows"?he.splice(J,0,ne):Y==="columns"?Ve.splice(J,0,ne):G.splice(J,0,ne),ro(he),z(Ve),O(G),$(ie);}},[ye,qo,st,Fe,W]),ce=useCallback((y,F)=>{le(L=>({...L,[y]:F}));},[]),Be=useCallback(y=>{je(F=>{let L=new Set(F);return L.has(y)?L.delete(y):L.add(y),L});},[]),He=useCallback(y=>{K(F=>{let L=new Set(F);return L.has(y)?L.delete(y):L.add(y),L});},[]),rt=useCallback(y=>{let F=I.get(y.fieldId),L=id(F);return jsx(FormControl,{size:"small",sx:{minWidth:98},children:jsx(Select,{value:y.aggregation,onChange:Y=>D(y.tokenId,Y.target.value),onClick:Y=>Y.stopPropagation(),onMouseDown:Y=>Y.stopPropagation(),sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:L.map(Y=>jsx(MenuItem,{value:Y,sx:{fontSize:"0.75rem"},children:R(Y)},Y))})})},[I,R,D]),ge=useCallback(y=>{let F=vo[y]??[],L=ue[y]??F;return F.length===0?u("pivot.filter.noValues"):L.length===0?u("pivot.filter.noneSelected"):L.length===F.length?u("pivot.filter.allValues"):u("pivot.filter.selectedCount",{selected:L.length,total:F.length})},[vo,ue,u]),Je=useCallback(y=>{let F=vo[y]??[],L=ue[y]??F;return jsx(Km,{options:F,selectedValues:L,onChange:Y=>ce(y,Y)})},[vo,ue,ce]),ct=useCallback(()=>`pivot-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,[]),Dt=useCallback(()=>{let y={};return new Set([...zt,...Object.keys(ue)]).forEach(L=>{if(!T.has(L))return;let Y=ue[L]??[];y[L]=[...Y];}),{layout:{rows:[...Fe],columns:[...ye],filters:[...st],values:W.map(L=>({fieldId:L.fieldId,aggregation:L.aggregation}))},filterSelections:y,showGrandTotal:_e,chart:{dimensionFieldId:mt,primaryValueFieldId:yt,secondaryValueFieldId:oo,chartType:xo}}},[zt,mt,yt,oo,xo,ye,st,ue,Fe,_e,T,W]),dt=useCallback(y=>{let F=eo(y.layout.rows,T),L=eo(y.layout.columns,T),Y=eo(y.layout.filters,T),he=new Set,Ve=(y.layout.values??[]).filter(ne=>!T.has(ne.fieldId)||he.has(ne.fieldId)?false:(he.add(ne.fieldId),true)).map(ne=>qo(ne.fieldId,ne.aggregation)),G={};Object.entries(y.filterSelections??{}).forEach(([ne,wt])=>{!T.has(ne)||!Array.isArray(wt)||(G[ne]=Array.from(new Set(wt.map(U=>String(U)))));}),ro(F),z(L),O(Y),$(Ve),le(G),typeof y.showGrandTotal=="boolean"&&de(y.showGrandTotal),Ce(xd(F,L,y.chart?.dimensionFieldId));let ie=ys(Ve,y.chart?.primaryValueFieldId);Ae(ie),Ge(vd(Ve,ie,y.chart?.secondaryValueFieldId)),Mt(y.chart?.chartType??"bar-vertical"),q(y.id),v?.(y);},[qo,v,Ce,Ae,Ge,Mt,z,O,le,ro,de,$,T]),Jt=useCallback(y=>{if(!y){q("");return}let F=Rt.find(L=>L.id===y);if(!F){q("");return}dt(F);},[dt,Rt]),ao=useCallback(()=>{let y=u("pivot.preset.defaultName",{index:Rt.length+1});at(y),ve(true);},[Rt.length,u]),Co=useCallback(()=>{let y=Pe.trim();if(!y)return;let F={id:ct(),name:y,...Dt()};bt(L=>[...L,F]),q(F.id),ve(false);},[Dt,ct,Pe,bt]),$t=useCallback(()=>{$e&&(bt(y=>y.filter(F=>F.id!==$e)),q(""));},[$e,bt]);useEffect(()=>{if(!b||h.current)return;let y=Rt.find(F=>F.id===b);y&&(h.current=true,dt(y));},[dt,b,Rt]),useEffect(()=>{$e&&(Rt.some(y=>y.id===$e)||q(""));},[$e,Rt]);let no=useMemo(()=>{if(!_e||!nt||!Fe.length)return null;let y={};return nt.dataColumns.forEach(F=>{let L=jt.filter(Y=>{let he=ye.length>0?ye.map(Ve=>Gr(Y[Ve])):[u("pivot.valueLabel")];return Va(he)===F.colKey});y[F.id]=Dn(L,F.valueItem.fieldId,F.valueItem.aggregation);}),{key:"__grand_total__",value:u("pivot.grandTotal")||Lm,children:[],isLeaf:false,isGrandTotal:true,aggregatedValues:y,path:[],depth:-1}},[_e,nt,jt,ye,Fe.length,u]),Ct=useMemo(()=>gg(nt?.rowTree??[]),[nt]),Zt=useMemo(()=>gg(nt?.columnTree??[]),[nt]);useEffect(()=>{je(y=>{let F=new Set;return y.has("__grand_total__")&&F.add("__grand_total__"),Ct.forEach(L=>{y.has(L)&&F.add(L);}),F});},[Ct]),useEffect(()=>{K(y=>{let F=new Set;return Zt.forEach(L=>{y.has(L)&&F.add(L);}),F});},[Zt]);let yr=useCallback(()=>{je(y=>{let F=new Set(y);return Ct.forEach(L=>F.add(L)),F});},[Ct]),Zo=useCallback(()=>{je(y=>{let F=new Set;return y.has("__grand_total__")&&F.add("__grand_total__"),F});},[]),Ya=useCallback(()=>{K(new Set(Zt));},[Zt]),Qa=useCallback(()=>{K(new Set);},[]),Ja=useMemo(()=>!nt||ye.length===0?[]:$k(nt.columnTree,St),[ye.length,St,nt]),Fo=useMemo(()=>{if(!nt)return [];if(ye.length===0)return nt.dataColumns.map(F=>({id:F.id,label:F.label,leafColumnIds:[F.id],valueItem:F.valueItem}));let y=new Map(nt.dataColumns.map(F=>[F.id,F]));return Ja.flatMap(F=>{let L=new Map;return F.leafColumnIds.forEach(Y=>{let he=y.get(Y);if(!he)return;let Ve=he.valueItem.tokenId,G=`${R(he.valueItem.aggregation)} ${I.get(he.valueItem.fieldId)?.label??he.valueItem.fieldId}`,ie=L.get(Ve);if(ie){ie.leafColumnIds.push(Y);return}L.set(Ve,{id:`${F.key}::${Ve}`,label:W.length>1?G:F.label,leafColumnIds:[Y],valueItem:he.valueItem});}),Array.from(L.values())})},[ye.length,I,R,nt,W.length,Ja]),en=useMemo(()=>new Map(Fo.map(y=>[y.id,y])),[Fo]),tn=useMemo(()=>Fo.map(y=>({id:y.id,colKey:y.id,valueItem:y.valueItem,label:y.label})),[Fo]),Ca=useMemo(()=>{if(!nt||ye.length===0)return [];let y=[],F=hg(nt.columnTree,St),L=F+(W.length>1?1:0),Y=(he,Ve)=>{y[Ve]??(y[Ve]=[]),he.forEach(G=>{let ie=G.children.length>0&&St.has(G.key),ne=Fo.filter(U=>G.leafColumnIds.some(me=>U.leafColumnIds.includes(me))).length,wt=ie||W.length>1?1:L-Ve;y[Ve].push({key:G.key,label:G.label,colSpan:ne,rowSpan:wt,expandable:G.children.length>0,expanded:ie}),ie&&Y(G.children,Ve+1);});};return Y(nt.columnTree,0),W.length>1&&(y[F]=Fo.map(he=>({key:he.id,label:he.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))),y},[ye.length,St,nt,W.length,Fo]),Br=useCallback((y,F)=>F.leafColumnIds.reduce((L,Y)=>L+(y.aggregatedValues[Y]??0),0),[]),Qr=useMemo(()=>jsxs(Fragment,{children:[jsx(Button,{size:"small",variant:"text",onClick:yr,disabled:Ct.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.expandRowsAll")}),jsx(Button,{size:"small",variant:"text",onClick:Zo,disabled:Ct.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:Ya,disabled:Zt.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.expandColumnsAll")}),jsx(Button,{size:"small",variant:"text",onClick:Qa,disabled:ye.length===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.collapseColumnsAll")})]}),[ye.length,Zt.size,Ct.size,Qa,Zo,Ya,yr,u]),Jr=()=>{if(!We)return null;let y=rs(We);if(!y||y.kind!=="item"||!y.key)return null;if(y.zone==="palette"){let he=I.get(y.key);return he?jsx(sd,{label:he.label,subtitle:he.type}):null}if(y.zone==="values"){let he=W.find(ne=>ne.tokenId===y.key);if(!he)return null;let G=I.get(he.fieldId)?.label??he.fieldId,ie=`${R(he.aggregation)}(${G})`;return jsx(cs,{label:G,caption:ie})}let L=I.get(y.key)?.label??y.key,Y=ge(y.key);return jsx(cs,{label:L,caption:Y})};return jsxs(Paper,{sx:y=>({p:{xs:1.2,md:2},borderRadius:4,border:`1px solid ${y.palette.divider}`,bgcolor:"background.paper",boxShadow:y.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:[ir&&jsxs(Fragment,{children:[jsx(FormControl,{size:"small",sx:{minWidth:200},children:jsxs(Select,{value:$e,displayEmpty:true,onChange:y=>Jt(String(y.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:u("pivot.preset.selectPlaceholder")}),Rt.map(y=>jsx(MenuItem,{value:y.id,sx:{fontSize:"0.75rem"},children:y.name},y.id))]})}),jsx(Tooltip,{title:u("pivot.preset.save"),children:jsx(IconButton,{size:"small",onClick:ao,"aria-label":u("pivot.preset.save"),children:jsx(Ep,{sx:{fontSize:18}})})}),jsx(Tooltip,{title:u("pivot.preset.delete"),children:jsx("span",{children:jsx(IconButton,{size:"small",onClick:$t,disabled:!$e,"aria-label":u("pivot.preset.delete"),children:jsx(iy,{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:jt.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:_e,onChange:y=>de(y.target.checked)})]})]})]}),jsx(Divider,{}),jsxs(DndContext,{sensors:C,collisionDetection:closestCenter,onDragStart:_,onDragEnd:Q,children:[jsx(Jm,{isConfiguratorCollapsed:Qe,onToggleCollapse:()=>Te(y=>!y),availableFields:qt,fieldMap:I,filterFields:st,columnFields:ye,rowFields:Fe,valueFields:W,clearZone:Eo,removeFieldFromZone:jo,getFilterSelectionSummary:ge,renderDimensionFilterSelect:Je,renderAggregationSelect:rt,getAggregationLabel:R}),jsx(Portal,{children:jsx(DragOverlay,{dropAnimation:{duration:250,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:Jr()})})]}),jsx(lg,{rows:jt,fieldMap:I,rowFields:Fe,columnFields:ye,valueFields:W,chartDimensionFieldId:mt,chartPrimaryValueFieldId:yt,chartSecondaryValueFieldId:oo,chartType:xo,isCollapsed:xt,onChartDimensionFieldIdChange:y=>Ce(y),onChartPrimaryValueFieldIdChange:y=>Ae(y),onChartSecondaryValueFieldIdChange:y=>Ge(y),onChartTypeChange:y=>Mt(y),onToggleCollapse:()=>vt(y=>!y),getAggregationLabel:R}),jsx(Ln,{title:u("pivot.table.sectionTitle"),subtitle:Fe.length>0?Fe.map(y=>I.get(y)?.label??y).join(" > "):u("pivot.table.dimensions"),collapsed:nr,onToggleCollapse:()=>Pt(y=>!y),expandAriaLabel:u("pivot.table.collapse.ariaExpand"),collapseAriaLabel:u("pivot.table.collapse.ariaCollapse"),bodySx:{p:0},headerActions:Qr,children:nt===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:w})}):jsx(TableContainer,{sx:{maxHeight:i},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:(Ca.length>0?Ca:[[]]).map((y,F)=>jsxs(TableRow,{children:[F===0&&jsx(TableCell,{rowSpan:Math.max(Ca.length,1),sx:L=>({fontWeight:800,fontSize:"0.76rem",color:"text.primary",bgcolor:L.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${L.palette.divider}`,pl:2,minWidth:220,verticalAlign:"middle"}),children:Fe.length>0?Fe.map(L=>I.get(L)?.label).join(" > "):u("pivot.table.dimensions")}),(y.length>0?y:Fo.map(L=>({key:L.id,label:L.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))).map(L=>jsx(TableCell,{align:"center",colSpan:L.colSpan,rowSpan:L.rowSpan,sx:Y=>({fontWeight:800,fontSize:"0.75rem",color:"text.primary",bgcolor:Y.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${Y.palette.divider}`,minWidth:148,verticalAlign:"middle"}),children:jsxs(Box,{sx:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:.4},children:[L.expandable&&jsx(IconButton,{size:"small",onClick:()=>He(L.key),sx:{p:.1,ml:-0.3},children:L.expanded?jsx($b,{sx:{fontSize:16}}):jsx(Kf,{sx:{fontSize:16}})}),jsx(Box,{component:"span",children:L.label})]})},L.key))]},`pivot-header-row-${F}`))}),jsxs(TableBody,{children:[nt.rowTree.map(y=>jsx(fs,{node:y,dataColumns:tn,fieldMap:I,level:0,expandedKeys:ke,onToggle:Be,getValue:(F,L)=>{let Y=en.get(L);return Y?Br(F,Y):0}},y.key)),no&&jsx(fs,{node:no,dataColumns:tn,fieldMap:I,level:0,expandedKeys:ke,onToggle:Be,getValue:(y,F)=>{let L=en.get(F);return L?Br(y,L):0}})]})]})})}),jsxs(Dialog,{open:Le,onClose:()=>ve(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:Pe,onChange:y=>at(y.target.value),onKeyDown:y=>{y.key==="Enter"&&(y.preventDefault(),Co());}})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>ve(false),children:u("common.cancel")}),jsx(Button,{variant:"contained",onClick:Co,disabled:!Pe.trim(),children:u("common.save")})]})]})]})};var bg=(e,t,o)=>{let r=[...e,...t];return o&&r.includes(o)?o:r[0]??""},kd=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",yg=(e,t,o)=>o===""?"":o&&o!==t&&e.some(r=>r.fieldId===o)?o:e.find(r=>r.fieldId!==t)?.fieldId??"",ZF=({fields:e,initialLayout:t,initialFilterSelections:o={},initialShowGrandTotal:r=true,initialConfiguratorCollapsed:a=false,initialChart:n,initialChartCollapsed:i=false,initialTableCollapsed:s=false})=>{let d=useRef(0),l=useMemo(()=>new Set(e.map(q=>q.id)),[e]),c=useMemo(()=>new Map(e.map(q=>[q.id,q])),[e]),[g,f]=useState(()=>eo(t?.rows,l)),[m,b]=useState(()=>eo(t?.columns,l)),[v,u]=useState(()=>eo(t?.filters,l)),[C,p]=useState(()=>{let q=t?.values??[],Le=new Set,ve=[];return q.forEach(Pe=>{!l.has(Pe.fieldId)||Le.has(Pe.fieldId)||(Le.add(Pe.fieldId),d.current+=1,ve.push({tokenId:`v${d.current}`,fieldId:Pe.fieldId,aggregation:So(Pe.aggregation,c.get(Pe.fieldId))}));}),ve}),[h,x]=useState(o),[w,E]=useState(r),[R,T]=useState(a),[I,k]=useState(()=>bg(eo(t?.rows,l),eo(t?.columns,l),n?.dimensionFieldId)),[S,A]=useState(()=>{let q=(()=>{let Le=t?.values??[],ve=new Set,Pe=[];return Le.forEach(at=>{!l.has(at.fieldId)||ve.has(at.fieldId)||(ve.add(at.fieldId),Pe.push({tokenId:at.fieldId,fieldId:at.fieldId,aggregation:So(at.aggregation,c.get(at.fieldId))}));}),Pe})();return kd(q,n?.primaryValueFieldId)}),[P,M]=useState(()=>{let q=(()=>{let ve=t?.values??[],Pe=new Set,at=[];return ve.forEach(We=>{!l.has(We.fieldId)||Pe.has(We.fieldId)||(Pe.add(We.fieldId),at.push({tokenId:We.fieldId,fieldId:We.fieldId,aggregation:So(We.aggregation,c.get(We.fieldId))}));}),at})(),Le=kd(q,n?.primaryValueFieldId);return yg(q,Le,n?.secondaryValueFieldId)}),[B,Z]=useState(n?.chartType??"bar-vertical"),[N,V]=useState(i),[X,j]=useState(s);useEffect(()=>{f(q=>{let Le=q.filter(ve=>l.has(ve));return Ur(q,Le)?q:Le}),b(q=>{let Le=q.filter(ve=>l.has(ve));return Ur(q,Le)?q:Le}),u(q=>{let Le=q.filter(ve=>l.has(ve));return Ur(q,Le)?q:Le}),p(q=>{let Le=q.filter(ve=>l.has(ve.fieldId)).map(ve=>({...ve,aggregation:So(ve.aggregation,c.get(ve.fieldId))}));return as(q,Le)?q:Le});},[c,l]),useEffect(()=>{k(q=>bg(g,m,q));},[m,g]),useEffect(()=>{A(q=>kd(C,q));},[C]),useEffect(()=>{M(q=>yg(C,S,q));},[S,C]);let H=useCallback(q=>{f(eo(q,l));},[l]),ee=useCallback(q=>{b(eo(q,l));},[l]),pe=useCallback(q=>{u(eo(q,l));},[l]),De=useCallback(q=>{p(Le=>{let ve=q??[],Pe=new Set,at=[];return ve.forEach(We=>{if(!l.has(We.fieldId)||Pe.has(We.fieldId))return;Pe.add(We.fieldId);let re=Le.find(ke=>ke.fieldId===We.fieldId);if(re){at.push({...re,aggregation:So(We.aggregation??re.aggregation,c.get(We.fieldId))});return}d.current+=1,at.push({tokenId:`v${d.current}`,fieldId:We.fieldId,aggregation:So(We.aggregation,c.get(We.fieldId))});}),at});},[c,l]),xe=useCallback(q=>{H(q.rows??[]),ee(q.columns??[]),pe(q.filters??[]),De(q.values??[]);},[ee,pe,H,De]),se=useCallback(q=>{if(q==="rows")return f([]);if(q==="columns")return b([]);if(q==="filters")return u([]);p([]);},[]),te=useCallback((q,Le)=>{if(q==="rows")return f(ve=>ve.filter(Pe=>Pe!==Le));if(q==="columns")return b(ve=>ve.filter(Pe=>Pe!==Le));if(q==="filters")return u(ve=>ve.filter(Pe=>Pe!==Le));p(ve=>ve.filter(Pe=>Pe.tokenId!==Le));},[]),Ie=useCallback((q,Le)=>{p(ve=>ve.map(Pe=>Pe.tokenId===q?{...Pe,aggregation:So(Le,c.get(Pe.fieldId))}:Pe));},[c]),Ye=useCallback((q,Le)=>{x(ve=>({...ve,[q]:Le}));},[]),Ue=useCallback(()=>{x({});},[]),be=useCallback(()=>{E(q=>!q);},[]),Ke=useCallback(()=>{T(q=>!q);},[]),lt=useCallback(q=>{k(q);},[]),Ee=useCallback(q=>{A(q);},[]),Oe=useCallback(q=>{M(q);},[]),qe=useCallback(()=>{V(q=>!q);},[]),pt=useCallback(()=>{j(q=>!q);},[]);return {model:useMemo(()=>({rowFields:g,setRowFields:f,columnFields:m,setColumnFields:b,filterFields:v,setFilterFields:u,valueFields:C,setValueFields:p,filterSelections:h,setFilterSelections:x,showGrandTotal:w,setShowGrandTotal:E,isConfiguratorCollapsed:R,setIsConfiguratorCollapsed:T,chartDimensionFieldId:I,setChartDimensionFieldId:k,chartPrimaryValueFieldId:S,setChartPrimaryValueFieldId:A,chartSecondaryValueFieldId:P,setChartSecondaryValueFieldId:M,chartType:B,setChartType:Z,isChartCollapsed:N,setIsChartCollapsed:V,isTableCollapsed:X,setIsTableCollapsed:j}),[I,S,P,B,m,v,h,N,R,X,g,w,C]),actions:{setRows:H,setColumns:ee,setFilters:pe,setValues:De,setLayout:xe,clearZone:se,removeFieldFromZone:te,setAggregationForValue:Ie,setFilterSelection:Ye,resetFilterSelections:Ue,toggleGrandTotal:be,toggleConfigurator:Ke,setChartDimension:lt,setChartPrimaryValue:Ee,setChartSecondaryValue:Oe,setChartType:Z,toggleChart:qe,toggleTable:pt}}};var eL=({orientation:e="auto",defaultNavigationOpen:t,onNavOpenChange:o}={})=>{let r=useTheme$1(),a=useMediaQuery("(orientation: portrait)",{noSsr:true}),n=useMediaQuery(r.breakpoints.down("md"),{noSsr:true}),i=useMemo(()=>e==="auto"?a||n?"portrait":"landscape":e,[n,a,e]),[s,d]=useState(t??i==="landscape");useEffect(()=>{d(t??i==="landscape");},[t,i]);let l=g=>{d(g),o?.(g);};return {resolvedOrientation:i,isPortraitViewport:a,isCompactViewport:n,navigationOpen:s,setNavigationOpen:l,toggleNavigationOpen:()=>l(!s)}};var Zk=e=>{let t=Number(e||0);return Number.isFinite(t)?t:0},rL=({rows:e,rowKey:t="id",numericField:o,defaultSelectedId:r})=>{let n=e[0]?.[t],[i,s]=useState(r??n),d=useMemo(()=>e.find(m=>m[t]===i)||e[0],[t,e,i]),[l,c]=useState(()=>{let m=d?.[o];return m==null?"0":String(m)});return {selectedId:i,selectedRecord:d,editorValue:l,setEditorValue:c,selectRecord:m=>{let b=m[t];s(b);let v=m[o];c(v==null?"0":String(v));},applyEditorValue:m=>{if(i===void 0)return;let b=Zk(l),v=e.map(u=>u[t]===i?{...u,[o]:b}:u);m(v);}}};var iS=["code_128","ean_13","ean_8","qr_code","upc_a","upc_e"],wg=(e,t,o,r)=>{t?.(e),r&&o?.();},cL=({open:e,onClose:t,title:o="Scan barcode",subtitle:r="Use the rear camera on the device. If scanning is unavailable, enter the code manually.",formats:a=iS,facingMode:n="environment",manualEntry:i=true,autoCloseOnDetect:s=true,scanIntervalMs:d=600,confirmLabel:l="Use code",cancelLabel:c="Close",manualPlaceholder:g="Enter barcode manually",onDetected:f,onError:m,sx:b})=>{let v=Kt__default.useRef(null),u=Kt__default.useRef(null),C=Kt__default.useRef(null),p=Kt__default.useRef(null),[h,x]=Kt__default.useState("idle"),[w,E]=Kt__default.useState(""),[R,T]=Kt__default.useState(null),[I,k]=Kt__default.useState(null),S=Kt__default.useCallback(()=>{C.current!==null&&(window.clearInterval(C.current),C.current=null),u.current&&(u.current.getTracks().forEach(M=>M.stop()),u.current=null),v.current&&(v.current.srcObject=null);},[]),A=Kt__default.useCallback(M=>{k(M),x("error"),m?.(M);},[m]);Kt__default.useEffect(()=>{if(!e){S(),x("idle"),k(null),E("");return}let M=false;return (async()=>{if(!(typeof window>"u"||typeof navigator>"u")){if(!navigator.mediaDevices?.getUserMedia){x("unsupported"),k("Camera access is not supported in this browser.");return}x("starting"),k(null);try{let Z=await navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:{ideal:n}}});if(M){Z.getTracks().forEach(N=>N.stop());return}if(u.current=Z,v.current&&(v.current.srcObject=Z,await v.current.play()),!window.BarcodeDetector){x("unsupported"),k("BarcodeDetector is not available. Camera preview is ready and manual entry is enabled.");return}p.current=new window.BarcodeDetector({formats:a}),x("ready"),C.current=window.setInterval(async()=>{if(!(!v.current||!p.current)&&!(v.current.readyState<HTMLMediaElement.HAVE_CURRENT_DATA))try{let V=(await p.current.detect(v.current)).find(j=>j.rawValue);if(!V?.rawValue)return;let X={rawValue:V.rawValue,format:V.format};T(X),S(),wg(X,f,t,s);}catch(N){A(N instanceof Error?N.message:"Failed to detect barcode.");}},d);}catch(Z){A(Z instanceof Error?Z.message:"Unable to start camera.");}}})(),()=>{M=true,S();}},[s,n,a,t,f,e,A,d,S]);let P=()=>{let M=w.trim();if(!M)return;let B={rawValue:M,format:"manual"};T(B),wg(B,f,t,s);};return jsxs(Dialog,{open:e,onClose:t,fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:900},children:o}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Stack,{spacing:2,sx:b,children:[jsx(Typography,{sx:{fontSize:"0.88rem",color:"text.secondary",lineHeight:1.55},children:r}),jsxs(Paper,{elevation:0,sx:M=>({position:"relative",overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:"divider",minHeight:280,background:M.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:v,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(aS,{}),label:h==="ready"?"Camera ready":h==="starting"?"Starting camera":h==="unsupported"?"Preview only":h==="error"?"Scanner error":"Idle",size:"small",color:h==="error"?"error":"primary",variant:"filled"}),R?jsx(Chip,{icon:jsx(nS,{}),label:`${R.format||"barcode"}: ${R.rawValue}`,size:"small",color:"success",variant:"filled"}):null]})]}),I?jsx(Alert,{severity:h==="unsupported"?"info":"warning",children:I}):null,i?jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1.25,children:[jsx(TextField,{fullWidth:true,label:"Barcode",placeholder:g,value:w,onChange:M=>E(M.target.value)}),jsx(Button,{variant:"contained",onClick:P,sx:{minHeight:56,px:2.5},children:l})]}):null]})}),jsx(DialogActions,{sx:{px:3,pb:2},children:jsx(Button,{onClick:t,children:c})})]})};var dS={default:"#475569",primary:"#1d4ed8",success:"#047857",warning:"#b45309",error:"#b91c1c",info:"#0369a1"},fL=({title:e,description:t,kicker:o,icon:r,badges:a=[],metrics:n=[],footer:i,children:s,selected:d=false,draggable:l=false,isDragging:c=false,swipeThreshold:g=88,startAction:f,endAction:m,dragHandleProps:b,onClick:v,onSwipe:u,sx:C})=>{let[p,h]=useState(0),[x,w]=useState(false),E=useRef(null),R=useRef(0),T=useRef(0),I=!!(f||m),k=132,S=()=>{h(0),w(false),E.current=null,R.current=0,T.current=0;},A=N=>{(N==="start"?f:m)?.onTrigger?.(),u?.(N),S();},P=N=>{!I||N.target.closest('button, a, input, textarea, [data-no-swipe="true"]')||(E.current=N.pointerId,R.current=N.clientX,T.current=N.clientX,w(true),N.currentTarget.setPointerCapture(N.pointerId));},M=N=>{if(!x||E.current!==N.pointerId)return;T.current=N.clientX;let V=T.current-R.current,X=Math.max(-k,Math.min(k,V));h(X);},B=N=>{if(!x||E.current!==N.pointerId)return;let V=T.current-R.current;if(V>=g&&f){A("start");return}if(V<=-g&&m){A("end");return}Math.abs(V)<12&&v?.(),S();},Z=(N,V)=>{if(!N)return null;let X=N.backgroundColor||dS[N.tone||"default"];return jsx(Box,{sx:{position:"absolute",top:0,bottom:0,[V]:0,width:k,px:2,display:"flex",alignItems:"center",justifyContent:V==="left"?"flex-start":"flex-end",color:"#fff",background:`linear-gradient(135deg, ${X}, 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:[Z(f,"left"),Z(m,"right"),jsx(Paper,{elevation:0,onPointerDown:P,onPointerMove:M,onPointerUp:B,onPointerCancel:S,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(${p}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:v?"pointer":"default",opacity:c?.9:1}),children:jsxs(Stack,{spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"flex-start",children:[r?jsx(Box,{sx:{mt:.25},children:r}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[o?jsx(Typography,{sx:{fontSize:"0.72rem",fontWeight:700,letterSpacing:"0.08em",color:"text.secondary"},children:o}):null,jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800,lineHeight:1.25},children:e}),t?jsx(Typography,{sx:{mt:.5,fontSize:"0.9rem",color:"text.secondary",lineHeight:1.45},children:t}):null]}),l?jsx(Box,{"data-no-swipe":"true",...b,sx:{alignSelf:"center",display:"inline-flex",touchAction:"none"},children:jsx(IconButton,{size:"small",children:jsx(cS,{})})}):null]}),a.length>0?jsx(Stack,{direction:"row",spacing:1,useFlexGap:true,flexWrap:"wrap",children:a.map((N,V)=>jsx(Chip,{label:N,size:"small",sx:{borderRadius:999,fontWeight:700,bgcolor:"action.hover",color:"text.primary"}},V))}):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,s,i]})})]})};var $i=({label:e,onPress:t,emphasis:o="default"})=>jsx(Box,{component:"button",type:"button",onClick:t,sx:r=>({minHeight:72,borderRadius:3,border:"1px solid",borderColor:o==="primary"?"primary.main":"divider",background:o==="primary"?r.palette.primary.main:o==="danger"?r.palette.mode==="dark"?"rgba(239,68,68,0.18)":"rgba(239,68,68,0.10)":r.palette.mode==="dark"?"rgba(255,255,255,0.04)":"#fff",color:o==="primary"?"#fff":"text.primary",fontSize:"1.25rem",fontWeight:800,transition:"transform 120ms ease, box-shadow 160ms ease, background-color 160ms ease",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent","&:active":{transform:"scale(0.98)"}}),children:e}),wL=({value:e,defaultValue:t="",title:o,subtitle:r,placeholder:a="0",allowDecimal:n=false,allowNegative:i=false,maxLength:s,confirmLabel:d,clearLabel:l,backspaceLabel:c,onChange:g,onSubmit:f,onClose:m,sx:b})=>{let{t:v}=oe(),[u,C]=useState(t),p=e??u,h=S=>{e===void 0&&C(S),g?.(S);},x=S=>{s&&p.length>=s||h(`${p}${S}`);},w=S=>{if(S==="00"){if(!p){h("0");return}x("00");return}x(S);},E=()=>{!n||p.includes(".")||h(p?`${p}.`:"0.");},R=()=>{if(i){if(p.startsWith("-")){h(p.slice(1));return}h(p?`-${p}`:"-");}},T=()=>{h(p.slice(0,-1));},I=()=>{h("");},k=()=>{f?.(p);};return jsx(Paper,{elevation:0,sx:{p:2,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",...b},children:jsxs(Stack,{spacing:2,children:[jsxs(Stack,{direction:"row",justifyContent:"space-between",alignItems:"flex-start",children:[jsxs(Box,{sx:{minWidth:0},children:[o?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800},children:o}):null,r?jsx(Typography,{sx:{mt:.5,fontSize:"0.86rem",color:"text.secondary"},children:r}):null]}),m?jsx(IconButton,{onClick:m,size:"small",children:jsx(gS,{})}):null]}),jsx(Paper,{elevation:0,sx:{p:2,borderRadius:3,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsx(Typography,{sx:{minHeight:38,fontSize:p?"1.9rem":"1.25rem",fontWeight:900,letterSpacing:"0.06em",color:p?"text.primary":"text.disabled"},children:p||a})}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[["1","2","3","4","5","6","7","8","9"].map(S=>jsx($i,{label:S,onPress:()=>w(S)},S)),jsx($i,{label:i?"+/-":"00",onPress:i?R:()=>w("00")}),jsx($i,{label:"0",onPress:()=>w("0")}),jsx($i,{label:n?".":c?String(c):"DEL",onPress:n?E: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(mS,{}),jsx(Typography,{sx:{fontWeight:700},children:c||"DEL"})]})}),jsx($i,{label:String(l||"CLR"),onPress:I,emphasis:"danger"}),jsx(Box,{component:"button",type:"button",onClick:k,sx:S=>({minHeight:64,borderRadius:3,border:"1px solid",borderColor:"primary.main",background:S.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(fS,{}),jsx(Typography,{sx:{fontWeight:800},children:d||v("common.ok")})]})})]})]})})};var Mg=({touchMode:e="comfortable",sx:t,...o})=>{let r=e==="expanded";return jsx(Box,{sx:{"& .MuiPaper-root":{borderRadius:4},"& .MuiAutocomplete-root":{minWidth:{xs:"100%",md:260}},"& .MuiAutocomplete-root .MuiInputBase-root":{backgroundColor:"transparent !important"},"& .MuiInputBase-root":{minHeight:r?56:50,borderRadius:3,fontSize:r?"0.98rem":"0.92rem"},"& .MuiInputBase-input":{py:r?1.6:1.25,fontSize:r?"0.98rem":"0.92rem"},"& .MuiInputLabel-root":{fontSize:r?"0.95rem":"0.88rem"},"& .MuiButton-root":{minHeight:r?48:44,px:r?2.25:1.75,borderRadius:3,fontSize:r?"0.95rem":"0.88rem",fontWeight:700},"& .MuiIconButton-root":{width:r?40:36,height:r?40:36},"& .MuiMenuItem-root":{minHeight:r?44:38,fontSize:r?"0.95rem":"0.88rem"},"& .MuiListSubheader-root":{py:1},"& .MuiCheckbox-root":{p:r?1:.75},"& .MuiFormControlLabel-label":{fontSize:r?"0.95rem":"0.88rem"},"& .MuiDialog-paper":{borderRadius:4},"& .MuiDialogTitle-root":{fontSize:r?"1.05rem":"0.98rem",fontWeight:800},"& .MuiDialogContent-root .MuiInputBase-root":{minHeight:52},'& .MuiGrid-root > .MuiGrid-item, & .MuiGrid-root > .MuiGrid-sizeXs-1, & .MuiGrid-root > [class*="MuiGrid-grid-"]':{minWidth:0},...t},children:jsx(Nr,{...o})})};var kS=(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);}},Bg=({items:e,selectedId:t,orientation:o="auto",onItemSelect:r,sx:a})=>{let n=useTheme$1(),[i,s]=useState(false);useEffect(()=>{s(true);},[]);let d=useMediaQuery("(orientation: portrait)",{noSsr:true}),l=useMediaQuery(n.breakpoints.down("md"),{noSsr:true}),c=o==="auto"?d||l?"portrait":"landscape":o,g=useRouter();return jsx(Box,{sx:{display:"grid",gridTemplateColumns:!i||c==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(180px, 1fr))",gap:1.5,...a},children:e.map(f=>{let m=f.id===t,b=f.color||(m?n.palette.primary.main:n.palette.divider);return jsx(Paper,{elevation:0,sx:{overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:m?"primary.main":"divider",boxShadow:m?"0 18px 40px rgba(37, 99, 235, 0.16)":"none",bgcolor:n.palette.mode==="dark"?"rgba(30,41,59,0.6)":"background.paper"},children:jsx(Box,{component:"button",type:"button",disabled:f.disabled,onClick:()=>kS(g,f,r),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:m?"#fff":"text.primary",background:m?b:"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:m?"primary.main":"action.hover",color:m?"#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 Ng=(e,t)=>t.trim()?e.reduce((o,r)=>{let a=r.title?.toLowerCase().includes(t.toLowerCase())||r.label?.toLowerCase().includes(t.toLowerCase())||r.description?.toLowerCase().includes(t.toLowerCase()),n=r.children?Ng(r.children,t):[];return (a||n.length>0)&&o.push({...r,children:n.length>0?n:r.children}),o},[]):e,LS=e=>{let t=new Set,o=r=>{r.forEach(a=>{a.children?.length&&(t.add(a.id),o(a.children));});};return o(e),t},zg=({collapsed:e=false,onToggle:t,className:o="",maxHeight:r,menuData:a=[],colorMode:n="light",orientation:i="auto",headerSlot:s,footerSlot:d,activeHref:l,onItemSelect:c})=>{let{t:g}=oe(),f=useTheme$1(),m=useMediaQuery("(orientation: portrait)"),b=useMediaQuery(f.breakpoints.down("md")),v=i==="auto"?m||b?"portrait":"landscape":i,u=n==="dark",C=useRouter(),p=usePathname(),[h,x]=useState(""),[w,E]=useState(new Set),R=useMemo(()=>Ng(a,h),[a,h]),T=useMemo(()=>h.trim()?LS(R):w,[w,R,h]);useEffect(()=>{e&&E(new Set);},[e]);let I=M=>M.appurl||M.href||"",k=M=>{c?.(M);let B=I(M);if(B){if(B.startsWith("http://")||B.startsWith("https://")){window.open(B,"_blank");return}C.push(B);}},S=M=>{let B=!!M.children?.length;if(e&&B){t?.();return}if(B){E(Z=>{let N=new Set(Z);return N.has(M.id)?N.delete(M.id):N.add(M.id),N});return}k(M);},A=M=>{let B=l||p,Z=I(M);return !!(Z&&B===Z)},P=(M,B=0)=>{let Z=!!M.children?.length,N=T.has(M.id),V=A(M);return jsx(Box,{sx:{pl:B===0?0:1.5},children:jsxs(Paper,{elevation:0,sx:{mb:1,overflow:"hidden",borderRadius:3,border:"1px solid",borderColor:V?"primary.main":"divider",bgcolor:V?"action.selected":"background.paper"},children:[jsxs(Box,{component:"button",type:"button",onClick:()=>S(M),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:V?"primary.main":"action.hover",color:V?"#fff":"text.primary"},children:M.icon||(M.title||M.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:M.title||M.label}),M.description?jsx(Typography,{sx:{mt:.4,fontSize:"0.78rem",color:"text.secondary",lineHeight:1.35},children:M.description}):null]}),Z?jsx(ES,{sx:{transform:N?"rotate(180deg)":"rotate(0deg)",transition:"transform 180ms ease"}}):jsx(FS,{color:"action"})]}),Z?jsx(Collapse,{in:N,children:jsx(Box,{sx:{px:1.25,pb:1.25},children:M.children?.map(X=>P(X,B+1))})}):null]})},M.id)};return e?jsx(Paper,{elevation:0,className:o,sx:{width:v==="portrait"?"100%":88,p:1,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:u?"#101828":"rgba(255,255,255,0.88)",maxHeight:r?`${r}px`:void 0,overflowY:"auto"},children:jsxs(Stack,{spacing:1,children:[jsx(IconButton,{onClick:t,sx:{width:48,height:48,alignSelf:"center",bgcolor:"action.hover"},title:g("navigation.expand"),children:jsx(BS,{})}),a.map(M=>jsx(IconButton,{onClick:()=>S(M),sx:{width:56,height:56,alignSelf:"center",borderRadius:3,bgcolor:A(M)?"primary.main":"action.hover",color:A(M)?"#fff":"text.primary"},children:M.icon||(M.title||M.label||"?").slice(0,1).toUpperCase()},M.id))]})}):jsx(Paper,{elevation:0,className:o,sx:{width:v==="portrait"?"100%":320,p:1.25,borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:u?"#101828":"rgba(255,255,255,0.88)",maxHeight:r?`${r}px`:void 0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsxs(Stack,{spacing:1.25,sx:{flex:1,minHeight:0},children:[jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[jsx(TextField,{value:h,onChange:M=>x(M.target.value),placeholder:g("navigation.searchPlaceholder"),size:"small",fullWidth:true,InputProps:{startAdornment:jsx(DS,{fontSize:"small",color:"action"})}}),v==="landscape"&&!e?jsx(IconButton,{onClick:t,sx:{bgcolor:"action.hover"},children:jsx(AS,{})}):null]}),s,jsx(Box,{sx:{flex:1,minHeight:0,overflowY:"auto",pr:.25},children:R.length>0?R.map(M=>P(M)):jsx(Typography,{sx:{p:2,fontSize:"0.88rem",color:"text.secondary",textAlign:"center"},children:g("navigation.noMatch")})}),d]})})};var Kg=(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)},WS=e=>Kt__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}),$S=(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)},GS=({summaryRow:e,visibleColumns:t,columns:o})=>{let r=o.filter(a=>t.includes(a.id)&&e[a.id]!=="");return r.length===0?null:jsx(Paper,{elevation:0,sx:{p:1.5,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsxs(Stack,{spacing:1,children:[jsx(Typography,{sx:{fontSize:"0.82rem",fontWeight:800,color:"text.secondary"},children:"Summary"}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(132px, 1fr))",gap:1},children:r.map(a=>jsxs(Paper,{elevation:0,sx:{p:1.1,borderRadius:3,border:"1px solid",borderColor:"divider"},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:a.label}),jsx(Typography,{sx:{mt:.25,fontSize:"0.96rem",fontWeight:800},children:e[a.id]})]},`summary-${a.id}`))})]})})},US=e=>{let{t}=oe(),o=useTheme$1(),{title:r,showToolbar:a=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:d,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:m=false,rowsPerPageOptions:b=[20,50,100,-1],onLayoutSave:v,filterConfig:u,rowKey:C,tableKey:p="default",graphReport:h,quickCreate:x,quickEdit:w,quickDelete:E,serviceUrl:R,orientation:T="auto",cardTitleField:I,cardSubtitleFields:k,toolbarSlot:S,emptyState:A,rowHeight:P="comfortable",cardActionSlot:M,renderCardFooter:B,onRowClick:Z}=e,N=r||t("table.title.default"),V=useMediaQuery("(orientation: portrait)"),X=useMediaQuery(o.breakpoints.down("md")),j=T==="auto"?V||X?"portrait":"landscape":T,{columns:H,filterText:ee,setFilterText:pe,visibleColumns:De,showSummary:xe,setShowSummary:se,summaryColumns:te,grouping:Ie,setGrouping:Ye,expandedGroups:Ue,groupAnchorEl:be,setGroupAnchorEl:Ke,summaryAnchorEl:lt,setSummaryAnchorEl:Ee,anchorEl:Oe,setAnchorEl:qe,contextMenu:pt,sortedAndFilteredRows:$e,summaryRow:q,visibleRows:Le,page:ve,setPage:Pe,rowsPerPage:at,setRowsPerPage:We,totalDisplayCount:re,setSelected:ke,handleClick:je,toggleSummaryColumn:St,handleExport:K,handleCloseContextMenu:Fe,toggleColumnVisibility:ye,toggleGroupExpand:st,toggleGroupField:W,handleExpandGroupRecursively:ue,handleCollapseGroupRecursively:_e,handleLayoutLoad:Qe,handleVariantLoad:mt,handleLayoutSave:yt,effectiveAppId:oo,currentLayoutData:xo,currentLayoutId:xt,layoutIdToLoad:nr,graphReportOpen:Rt,handleOpenGraphReport:ir,handleCloseGraphReport:ro}=Cn(e),z=h?.enabled??false,O=z&&(h?.interaction?.enabled??true),$=Il(),le=C||"id",de=Kt__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]),Te=Kt__default.useMemo(()=>({...de,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)}),[de,o]),Ce=Kt__default.useMemo(()=>{let U=new Set(i);return $e.filter(me=>U.has(me?.[le]))},[le,i,$e]),Ae=Ce.length===1?Ce[0]:null,Ge=!!x?.enabled,Mt=!!w?.enabled,vt=!!E?.enabled,Pt=x?.fields,bt=x?.excludeFields||[],Po=x?.initialValues||{},qt=w?.fields,zt=w?.excludeFields||[],vo=w?.editableFields||[],jt=w?.nonEditableFields||[],nt=w?.primaryKeys?.length?w.primaryKeys:[le],[qo,Eo]=Kt__default.useState(false),[jo,D]=Kt__default.useState(false),[_,Q]=Kt__default.useState({}),[ce,Be]=Kt__default.useState(false),[He,rt]=Kt__default.useState(false),[ge,Je]=Kt__default.useState({}),[ct,Dt]=Kt__default.useState(false),[dt,Jt]=Kt__default.useState(false),ao=m||jo||He||dt,Co=Kt__default.useMemo(()=>{let U=[...H];if(Array.isArray(Pt)&&Pt.length>0){let me=new Set(Pt);U=U.filter(J=>me.has(J.id));}if(bt.length>0){let me=new Set(bt);U=U.filter(J=>!me.has(J.id));}return U.filter(me=>!!me?.id)},[H,bt,Pt]),$t=Kt__default.useMemo(()=>{let U=[...H];if(Array.isArray(qt)&&qt.length>0){let me=new Set(qt);U=U.filter(J=>me.has(J.id));}if(zt.length>0){let me=new Set(zt);U=U.filter(J=>!me.has(J.id));}return U.filter(me=>!!me?.id)},[H,zt,qt]),no=Kt__default.useMemo(()=>new Set(nt),[nt]),Ct=Kt__default.useMemo(()=>new Set(vo),[vo]),Zt=Kt__default.useMemo(()=>new Set(jt),[jt]),yr=Kt__default.useCallback(U=>Ct.size>0?Ct.has(U):!(Zt.has(U)||no.has(U)),[Ct,Zt,no]);Kt__default.useEffect(()=>{!Rt&&$.hasActiveFilters&&$.clearAll();},[$,Rt]);let Zo=()=>{let U={};Co.forEach(me=>{U[me.id]=Po[me.id]??"";}),Q(U),Eo(true);},Ya=(U,me)=>{Q(J=>({...J,[U]:me}));},Qa=async()=>{if(!x?.onSubmit){Eo(false);return}try{D(!0),await x.onSubmit(_),Eo(!1);}finally{D(false);}},Ja=()=>{if(!Ae)return;let U={};$t.forEach(J=>{U[J.id]=Ae[J.id]??"";});let me=w?.getInitialValues?{...U,...w.getInitialValues(Ae)}:U;Je(me),Be(true);},Fo=(U,me)=>{Je(J=>({...J,[U]:me}));},en=async()=>{if(Ae){if(!w?.onSubmit){Be(false);return}try{rt(!0),await w.onSubmit(ge,Ae),Be(!1);}finally{rt(false);}}},tn=()=>{Ce.length!==0&&Dt(true);},Ca=async()=>{if(Ce.length===0){Dt(false);return}if(!E?.onConfirm){Dt(false),ke([]),s?.([]);return}try{Jt(!0),await E.onConfirm(Ce),Dt(!1),ke([]),s?.([]);}finally{Jt(false);}},Br=$e,{fieldMapping:Qr}=fn({rows:Br,config:{...h,title:h?.title||`${N} ${t("graph.reportTitle")}`}}),Jr=Kt__default.useMemo(()=>O?$.applyRows(Br,Qr):Br,[Qr,$,O,Br]),{model:y}=fn({rows:Jr,config:{...h,title:h?.title||`${N} ${t("graph.reportTitle")}`,fieldMapping:Qr}}),F=y.table.columns.map(U=>({id:U.id,label:U.label,align:U.align||"left",minWidth:120,numeric:U.align==="right"})),L=oo?jsx(vn,{appId:oo,tableKey:p,currentLayoutData:xo,onLayoutLoad:Qe,targetLayoutId:nr,activeLayoutId:xt,serviceUrl:R??u?.serviceUrl}):null,Y=H.filter(U=>De.includes(U.id)),he=Y.find(U=>U.id===I)||Y[0],Ve=k?.map(U=>Y.find(me=>me.id===U)).filter(Boolean)||Y.filter(U=>U.id!==he?.id).slice(0,j==="portrait"?2:3),G=Y.filter(U=>U.id!==he?.id&&!Ve.some(me=>me.id===U.id)),ie=[S,l].filter(Boolean),ne=jsxs(Fragment,{children:[jsx(rn,{groupAnchorEl:be,setGroupAnchorEl:Ke,grouping:Ie,setGrouping:Ye,columns:H,toggleGroupField:W}),jsx(an,{anchorEl:Oe,setAnchorEl:qe,columns:H,visibleColumns:De,toggleColumnVisibility:ye}),jsx(ll,{anchorEl:lt,setAnchorEl:Ee,showSummary:xe,setShowSummary:se,columns:H,summaryColumns:te,toggleSummaryColumn:St}),jsx(sl,{contextMenu:pt,handleCloseContextMenu:Fe,columns:H,visibleColumns:De,toggleColumnVisibility:ye})]}),wt=(U,me,J)=>{let Re=i.includes(me),gt=j==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(140px, 1fr))",xr=J%2===0?alpha(o.palette.primary.main,o.palette.mode==="dark"?.09:.04):alpha(o.palette.primary.main,o.palette.mode==="dark"?.05:.022),Jf=alpha(o.palette.divider,.22);return jsx(Paper,{elevation:0,onClick:()=>{je({},U),Z?.(U);},sx:{p:P==="compact"?1.25:1.5,borderRadius:4,border:"0.5px solid",borderColor:Re?alpha(o.palette.primary.main,.38):Jf,background:Re?`linear-gradient(135deg, ${alpha(o.palette.primary.main,.13)}, ${alpha(o.palette.primary.main,.06)})`:`linear-gradient(135deg, ${xr}, ${alpha(o.palette.primary.main,.015)})`,boxShadow:Re?`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:Re?o.palette.primary.main:J%2===0?alpha(o.palette.primary.main,.26):alpha(o.palette.text.primary,.16)},"&:hover":{boxShadow:`0 10px 20px ${alpha(o.palette.primary.main,.12)}`,transform:"translateY(-1px)"},"&:active":{transform:"scale(0.995)"}},children:jsxs(Stack,{spacing:1.25,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"flex-start",children:[n?jsx(Checkbox,{checked:Re,onClick:Lo=>Lo.stopPropagation(),onChange:()=>je({},U),sx:{mt:-0.6,ml:-0.6}}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[he?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:900,lineHeight:1.25},children:Kg(he,U)}):null,Ve.length>0?jsx(Stack,{direction:"row",spacing:.75,useFlexGap:true,flexWrap:"wrap",sx:{mt:.75},children:Ve.map(Lo=>jsx(Chip,{label:`${Lo.label}: ${$S(Lo,U)}`,size:"small",variant:"outlined",sx:de},`${me}-${Lo.id}`))}):null]}),M?jsx(Box,{onClick:Lo=>Lo.stopPropagation(),children:M(U)}):null]}),G.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:gt,gap:1},children:G.map(Lo=>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:Lo.label}),WS(Kg(Lo,U))]},`${me}-${Lo.id}-detail`))}):null,B?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{onClick:Lo=>Lo.stopPropagation(),children:B(U)})]}):null]})},me)};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(Mg,{...u,onVariantLoad:U=>{mt(U),u.onVariantLoad?.(U);},appId:u.appId,tableKey:p,currentLayout:[{tableKey:p,layoutData:xo}],currentLayoutId:xt,layoutRefs:[{tableKey:p,layoutId:xt}],variantService:u.variantService,serviceUrl:R??u.serviceUrl,touchMode:j==="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":ao?{content:'""',position:"absolute",top:0,left:0,width:"100%",height:"3px",background:"linear-gradient(90deg, rgba(25, 118, 210, 0) 0%, rgba(25, 118, 210, 0.25) 25%, rgba(25, 118, 210, 1) 50%, rgba(25, 118, 210, 0.25) 75%, rgba(25, 118, 210, 0) 100%)",backgroundSize:"220% 100%",animation:"cTableTopMarquee 1.2s linear infinite",zIndex:6,pointerEvents:"none"}:{},"@keyframes cTableTopMarquee":{"0%":{backgroundPosition:"220% 0"},"100%":{backgroundPosition:"-120% 0"}},...f?{height:f}:c?{flex:1,minHeight:0,height:"100%"}:{}},children:[a?jsx(Box,{sx:{"& .MuiToolbar-root":{minHeight:60,alignItems:{xs:"flex-start",md:"center"},flexWrap:"wrap",rowGap:1,columnGap:1},"& .MuiToolbar-root > :nth-of-type(1)":{width:{xs:"100%",md:"auto"},"& .MuiTextField-root":{width:{xs:"100%",md:300}}},"& .MuiToolbar-root > :nth-of-type(2)":{flexShrink:0},"& .MuiToolbar-root > :nth-of-type(3)":{display:{xs:"none",md:"block"}},"& .MuiToolbar-root > :nth-of-type(4)":{ml:"auto",justifyContent:"flex-end",flexWrap:"wrap"},"& .MuiInputBase-root":{minHeight:46},"& .MuiIconButton-root":{width:40,height:40},"& .MuiTypography-root":{fontSize:"0.9rem"},"& .MuiButtonBase-root":{borderRadius:2.5}},children:jsx(ol,{filterText:ee,setFilterText:pe,onRowsPerPageChange:We,rowsPerPage:at,rowsPerPageOptions:b,page:ve,count:re,onPageChange:Pe,actions:d,extraTools:ie,grouping:Ie,setGroupAnchorEl:Ke,showSummary:xe,setShowSummary:se,setAnchorEl:qe,setSummaryAnchorEl:Ee,handleExport:K,showCreateButton:Ge,onOpenCreateDialog:Zo,showEditButton:Mt,onOpenEditDialog:Ja,editDisabled:Ce.length!==1,showDeleteButton:vt,onOpenDeleteConfirm:tn,deleteDisabled:Ce.length===0,onLayoutSave:v||u?.variantService&&u?.appId?yt:void 0,loading:m,layoutManager:L,onOpenGraphReport:z?ir:void 0})}):null,jsx(Box,{sx:{flex:1,minHeight:0,overflow:"auto",p:1.5},children:jsxs(Stack,{spacing:1.25,children:[Le.length===0&&!m?A||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,Le.map((U,me)=>{if(U.type==="group"){let gt=Ue.has(U.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:()=>st(U.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:[gt?jsx(ES,{}):jsx(FS,{}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsxs(Typography,{sx:{fontSize:"0.94rem",fontWeight:800},children:[U.field,": ",U.value]}),jsxs(Typography,{sx:{mt:.2,fontSize:"0.76rem",color:"text.secondary"},children:[U.count," records"]})]}),Ie.length>1&&U.level<Ie.length-1?jsxs(Stack,{direction:"row",spacing:.5,children:[jsx(Chip,{size:"small",label:t("table.group.expandAll"),onClick:xr=>{xr.stopPropagation(),ue(U.id);},sx:Te}),jsx(Chip,{size:"small",label:t("table.group.collapseAll"),onClick:xr=>{xr.stopPropagation(),_e(U.id);},sx:Te})]}):null]})},U.id)}let J=U.data||U,Re=U.id||J[le]||me;return wt(J,Re,me)}),xe?jsx(GS,{summaryRow:q,visibleColumns:De,columns:H}):null,m?jsx(Typography,{sx:{py:1,fontSize:"0.84rem",color:"text.secondary",textAlign:"center"},children:t("common.loading")}):null]})})]}),Ge?jsxs(Dialog,{open:qo,onClose:()=>!jo&&Eo(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:[Co.map(U=>{let me=U.type==="number"||U.numeric?"number":U.type==="date"?"date":"text";return jsx(TextField,{label:U.label||U.id,value:_[U.id]??"",onChange:J=>Ya(U.id,J.target.value),type:me,fullWidth:true,InputLabelProps:{shrink:me==="date"?true:void 0}},`quick-create-${U.id}`)}),x?.description?jsx(Alert,{severity:"info",children:x.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Eo(false),disabled:jo,children:x?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Qa,variant:"contained",disabled:jo,children:x?.submitLabel||t("common.save")})]})]}):null,Mt?jsxs(Dialog,{open:ce,onClose:()=>!He&&Be(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:w?.title||t("quickEdit.editWithTitle",{title:N})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[$t.map(U=>{let me=U.type==="number"||U.numeric?"number":U.type==="date"?"date":"text";return jsx(TextField,{label:U.label||U.id,value:ge[U.id]??"",onChange:J=>Fo(U.id,J.target.value),type:me,disabled:!yr(U.id),fullWidth:true,InputLabelProps:{shrink:me==="date"?true:void 0}},`quick-edit-${U.id}`)}),w?.description?jsx(Alert,{severity:"info",children:w.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Be(false),disabled:He,children:w?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:en,variant:"contained",disabled:He||!Ae,children:w?.submitLabel||t("common.save")})]})]}):null,vt?jsx(ti,{open:ct,type:"warning",title:E?.title||t("quickDelete.confirmTitle"),message:E?.message||(Ce.length>1?t("quickDelete.confirmMessageMultiple",{count:Ce.length}):t("quickDelete.confirmMessageSingle")),confirmText:E?.confirmText||t("common.delete"),cancelText:E?.cancelText||t("common.cancel"),onClose:()=>!dt&&Dt(false),onConfirm:Ca}):null,ne,z?jsx(wl,{open:Rt,onClose:ro,model:y,aiAssistant:h?.aiAssistant,interaction:O?{enabled:true,filters:$.filters,fieldMapping:Qr,onPrimaryDimensionClick:U=>$.setFilter("primaryDimension",U),onSecondaryDimensionClick:U=>$.setFilter("secondaryDimension",U),onStatusClick:U=>$.setFilter("status",U),onClearFilter:$.clearFilter,onClearAll:$.clearAll}:void 0,tableContent:jsx(US,{appId:oo||"graph-report-internal",title:t("graph.dataBody"),columns:F,rows:y.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false},showSummary:false})}):null]})};var vN=({appTitle:e,children:t,menuData:o=[],workloadItems:r=[],workloadSelectedId:a,showNavigation:n=true,showWorkloadNav:i=true,orientation:s="auto",logo:d,headerSlot:l,actionSlot:c,portraitBottomSlot:g,contentSx:f,containerSx:m,user:b,onSearch:v,onSearchAdd:u,defaultNavigationOpen:C,navOpen:p,onNavOpenChange:h,onWorkloadSelect:x,locale:w="en",localeLabel:E,localeOptions:R,onLocaleChange:T,onUserSetting:I,onUserLogout:k,userMenuItems:S,leftHeaderSlot:A,rightHeaderSlot:P})=>{let M="orbcafe:page-layout-mode",[B,Z]=useState("system"),[N,V]=useState("light"),[X,j]=useState(false),[H,ee]=useState(false),pe=B==="system"?H?N:"light":B;useEffect(()=>{j(true);},[]),useEffect(()=>{try{let $e=window.localStorage.getItem(M);($e==="light"||$e==="dark"||$e==="system")&&Z($e);}catch{}ee(true);let qe=window.matchMedia("(prefers-color-scheme: dark)"),pt=()=>{V(qe.matches?"dark":"light");};return pt(),qe.addEventListener("change",pt),()=>qe.removeEventListener("change",pt)},[]),useEffect(()=>{if(H)try{window.localStorage.setItem(M,B);}catch{}},[H,B]),useEffect(()=>{pe==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[pe]);let De=useMemo(()=>createTheme$1({palette:pe==="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:pe==="dark"?"#060913":"#eef3f8"}}},MuiPaper:{styleOverrides:{root:{backgroundImage:"none"}}}}}),[pe]),xe=useMediaQuery("(orientation: portrait)"),se=useMediaQuery(De.breakpoints.down("md")),te=s==="auto"?!X||xe||se?"portrait":"landscape":s,[Ie,Ye]=useState({landscape:C??true,portrait:false}),Ue=Ie[te],be=p??Ue,Ke=qe=>{p===void 0&&Ye(pt=>({...pt,[te]:qe})),h?.(qe);},lt=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[!X||n&&te==="portrait"?jsx(IconButton,{onClick:()=>Ke(!be),sx:{bgcolor:"action.hover"},children:jsx(BS,{})}):null,A]}),Ee=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[c,P]}),Oe=jsx(zg,{collapsed:te==="landscape"?!be:false,onToggle:()=>Ke(!be),menuData:o,orientation:te,colorMode:pe,maxHeight:te==="landscape"?900:void 0});return jsx(ThemeProvider$1,{theme:De,children:jsx(el,{locale:w,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(m)?m:[m]],children:[jsx(es,{appTitle:e,logo:d===void 0?null:d,mode:B,onToggleMode:()=>Z(qe=>qe==="system"?"dark":qe==="dark"?"light":"system"),locale:w,localeLabel:E,localeOptions:R,onLocaleChange:T,user:b,onUserSetting:I,onUserLogout:k,userMenuItems:S,onSearch:v,onSearchAdd:u,leftSlot:lt,rightSlot:Ee}),l?jsx(Box,{sx:{px:{xs:2,md:3},py:1.5,borderBottom:"1px solid",borderColor:"divider"},children:l}):null,jsxs(Box,{sx:{flex:1,minHeight:0,display:"flex",position:"relative"},children:[X&&n&&te==="landscape"?jsx(Box,{sx:{p:1.5,pr:0,flexShrink:0},children:Oe}):null,!X||n&&te==="portrait"?jsx(Drawer,{open:be,onClose:()=>Ke(false),PaperProps:{sx:{width:"min(88vw, 360px)",p:1.25,bgcolor:"transparent",boxShadow:"none"}},children:Oe}):null,jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...f},children:jsxs(Stack,{spacing:1.5,children:[i&&r.length>0?jsx(Bg,{items:r,selectedId:a,orientation:te,onItemSelect:x}):null,jsx(Paper,{elevation:0,sx:{flex:1,minHeight:te==="portrait"?420:560,p:{xs:1.25,md:1.5},borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:De.palette.mode==="dark"?"rgba(15,23,42,0.72)":"rgba(255,255,255,0.72)",backdropFilter:"blur(12px)",color:"text.primary"},children:t})]})})]}),te==="portrait"&&g?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{sx:{p:1.5},children:g})]}):null]})})})};var jg=ew(()=>import('./COrbCanvas-EGX5NO3Y.mjs').then(e=>e.COrbCanvas),{ssr:false,loading:()=>jsx("div",{className:"h-full w-full bg-transparent"})});function Ad({isRecording:e}){return jsx(AnimatePresence,{children:e&&jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.5},className:"pointer-events-none absolute inset-0 z-0 overflow-hidden",children:jsxs("div",{className:"relative flex h-full w-full items-center justify-center",children:[jsx("div",{className:"absolute inset-0",children:jsx(jg,{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(jg,{hue:10,hoverIntensity:.8,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})})]})})})}var TN=Ad;var Xg=createContext(null);function sw(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 cw({children:e,onVoiceSubmit:t,onVoicePartial:o,onVoiceError:r,longPressMs:a=200,disableSpaceTrigger:n=false,ignoreWhenFocusedInput:i=true,renderOverlay:s=true,wsUrl:d,silenceThresholdMs:l,minVolumeRms:c}){let[g,f]=useState(false),[m,b]=useState(false),v=useRef(null),u=useRef(false),C=useRef(false),p=useCallback(()=>{C.current=false,f(false);},[]),{isRecording:h,startRecording:x,stopRecording:w}=wn({wsUrl:d,silenceThresholdMs:l,minVolumeRms:c,onTextUpdate:I=>{o?.(I);},onComplete:async I=>{try{I.trim()&&(b(!0),await t(I.trim()));}catch(k){let S=k instanceof Error?k.message:"Failed to process voice command";r?.(S);}finally{b(!1),p();}},onError:I=>{r?.(I),b(!1),u.current||p();}}),E=useCallback(async()=>{C.current=false,await x();},[x]),R=useCallback(()=>{w();},[w]);useEffect(()=>{if(n)return;let I=S=>{S.isComposing||(S.code==="Space"||S.key===" ")&&(u.current||S.repeat||i&&sw(document.activeElement)||(u.current=true,S.preventDefault(),v.current=setTimeout(()=>{C.current=true,f(true),x();},a)));},k=S=>{(S.code==="Space"||S.key===" ")&&(v.current&&(clearTimeout(v.current),v.current=null),u.current=false,C.current&&(S.preventDefault(),f(false),w()));};return window.addEventListener("keydown",I),window.addEventListener("keyup",k),()=>{window.removeEventListener("keydown",I),window.removeEventListener("keyup",k),v.current&&(clearTimeout(v.current),v.current=null);}},[n,i,a,x,w]);let T=useMemo(()=>({isRecording:h,isHotkeyRecording:g,isSubmitting:m,startRecording:E,stopRecording:R}),[g,h,m,E,R]);return jsxs(Xg.Provider,{value:T,children:[s?jsx(Ad,{isRecording:g}):null,e]})}function dw(){let e=useContext(Xg);if(!e)throw new Error("useAINav must be used within CAINavProvider");return e}var AN=cw,BN=dw;function Xe(...e){return twMerge(clsx(e))}var bw=({content:e,theme:t="light",size:o="base",defaultExpanded:r=false})=>{let[a,n]=useState(r),i=useMemo(()=>`${(o==="sm"?14:o==="lg"?18:16)-2}px`,[o]);return jsxs("div",{className:`my-6 rounded-lg overflow-hidden transition-all duration-200 ${t==="dark"?"bg-gray-800":"bg-white"}`,style:{border:`0.5px solid ${t==="dark"?"#4b5563":"#d1d5db"}`},children:[jsxs("div",{className:`px-4 py-3 cursor-pointer flex items-center justify-between transition-colors duration-200 ${t==="dark"?"bg-gray-700 hover:bg-gray-650":"bg-gray-50 hover:bg-gray-100"}`,style:{borderBottom:`0.5px solid ${t==="dark"?"#4b5563":"#e5e7eb"}`},onClick:()=>n(!a),children:[jsxs("span",{className:"flex items-center",children:[jsx("span",{className:"mr-2",children:"\u{1F914}"}),jsx("span",{className:`font-medium ${t==="dark"?"text-gray-300":"text-gray-700"}`,style:{fontSize:o==="sm"?"14px":o==="lg"?"18px":"16px"},children:"\u601D\u8003\u8FC7\u7A0B"})]}),jsx("svg",{className:`w-4 h-4 transition-transform duration-200 ${a?"rotate-180":""} ${t==="dark"?"text-gray-400":"text-gray-500"}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),a&&jsx("div",{className:`p-4 whitespace-pre-wrap italic font-light ${t==="dark"?"text-gray-400":"text-gray-600"}`,style:{fontSize:i,lineHeight:"1.3 !important"},children:e})]})},Yg=bw;var Tw=({content:e,language:t="text",isStreaming:o=false,className:r=""})=>{let{theme:a}=useTheme$2(),[n,i]=useState(false),s=async()=>{try{await navigator.clipboard.writeText(e),i(!0),setTimeout(()=>i(!1),2e3);}catch(l){console.error("\u590D\u5236\u5931\u8D25:",l);}},d=a==="dark"?oneDark:oneLight;return jsxs("div",{className:Xe("rounded-lg overflow-hidden border border-gray-200 dark:border-gray-700 my-4",r),children:[jsxs("div",{className:"flex items-center justify-between px-4 py-2 bg-gray-50 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700",children:[jsx("span",{className:"text-xs font-medium text-gray-600 dark:text-gray-300 uppercase",children:t}),jsx("button",{onClick:s,className:"p-1 hover:bg-gray-200 dark:hover:bg-gray-700 rounded transition-colors",disabled:o,title:n?"Copied":"Copy code",children:n?jsx(Check,{size:14,className:"text-green-500"}):jsx(Clipboard,{size:14,className:"text-gray-500 dark:text-gray-400"})})]}),jsx("div",{className:"text-sm",children:jsx(Prism,{language:t,style:d,customStyle:{margin:0,padding:"16px",fontSize:"14px",lineHeight:"1.5",backgroundColor:a==="dark"?"#1f2937":"#ffffff"},wrapLongLines:true,children:e})})]})},Jg=Tw;var Mw=({content:e,isLoading:t,className:o="",style:r})=>{let a=useRef(null),[n,i]=useState(false),[s,d]=useState(null),{theme:l}=useTheme$2();return useEffect(()=>{let c=async()=>{if(!(!e.trim()||!a.current)){i(true),d(null);try{tf.initialize({startOnLoad:!1,theme:l==="dark"?"dark":"default",securityLevel:"loose",fontFamily:"inherit"});let f=`mermaid-${Math.random().toString(36).substr(2,9)}`,m=e.replace(/```mermaid\n?|\n?```/g,"").trim(),{svg:b}=await tf.render(f,m);a.current&&(a.current.innerHTML=b);}catch(f){console.error("Mermaid render failed:",f),d(f instanceof Error?f.message:"Render failed"),a.current&&(a.current.innerText=e);}finally{i(false);}}},g=setTimeout(()=>{c();},100);return ()=>clearTimeout(g)},[e,l]),t||n?jsx("div",{className:`mermaid-block loading ${o}`,style:r,children:jsxs("div",{className:"flex items-center justify-center p-4 bg-gray-50 dark:bg-gray-800 rounded border border-gray-200 dark:border-gray-700",children:[jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-b-2 border-blue-500 mr-2"}),jsx("span",{className:"text-sm text-gray-500",children:"Generating Diagram..."})]})}):s?jsxs("div",{className:"p-4 bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded text-red-600 dark:text-red-400 text-sm overflow-auto",children:[jsx("p",{className:"font-semibold mb-2",children:"Mermaid Error:"}),jsx("pre",{children:s}),jsx("pre",{className:"mt-4 text-xs text-gray-500",children:e})]}):jsx("div",{className:`mermaid-block overflow-x-auto ${o}`,style:r,ref:a})},rf=Mw;var Lw=({title:e="\u53D1\u751F\u9519\u8BEF",content:t,errorCode:o,stack:r,icon:a,closable:n=true,onClose:i,onRetry:s,className:d="",...l})=>{let[c,g]=useState(false),[f,m]=useState(false),b=async()=>{if(s){m(true);try{await s();}catch(v){console.error("\u91CD\u8BD5\u5931\u8D25:",v);}finally{m(false);}}};return jsxs("div",{className:`relative w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...l,children:[jsxs("div",{className:"flex p-4 border-l-4 border-l-red-500 bg-red-50 dark:bg-red-900/10",children:[jsx("div",{className:"flex-shrink-0 mr-3 text-red-500 mt-0.5",children:a||jsx(AlertCircle,{className:"w-5 h-5"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center space-x-2 mb-1",children:[jsx("h4",{className:"text-base font-semibold text-gray-900 dark:text-gray-100",children:e}),o&&jsx("span",{className:"text-xs font-mono px-1.5 py-0.5 rounded bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-300",children:o})]}),t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-3 leading-relaxed",children:typeof t=="string"?jsx("p",{className:"whitespace-pre-wrap",children:t}):t}),(s||r)&&jsxs("div",{className:"flex items-center space-x-4 mt-2",children:[s&&jsxs("button",{onClick:b,disabled: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"]}),r&&jsxs("button",{onClick:()=>g(!c),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 transition-colors",children:[c?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),c?"\u9690\u85CF\u8BE6\u60C5":"\u67E5\u770B\u8BE6\u60C5"]})]})]}),n&&i&&jsx("button",{onClick:i,className:"flex-shrink-0 ml-3 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors self-start",children:jsx(X,{className:"w-4 h-4"})})]}),r&&c&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 p-3 border-t border-gray-100 dark:border-gray-800",children:jsx("pre",{className:"text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto whitespace-pre-wrap p-2 bg-white dark:bg-gray-900 rounded border border-gray-200 dark:border-gray-800",children:r})})]})},Is=Lw;var Ww=({title:e="\u8B66\u544A",content:t,warningType:o,severity:r="warning",warnings:a=[],icon:n,closable:i=true,onClose:s,onConfirm:d,actionText:l,className:c="",...g})=>{let f=()=>{switch(r){case "info":return {borderLeftColor:"border-l-blue-500",iconColor:"text-blue-500",bgColor:"bg-blue-50 dark:bg-blue-900/10"};case "error":return {borderLeftColor:"border-l-red-500",iconColor:"text-red-500",bgColor:"bg-red-50 dark:bg-red-900/10"};case "success":return {borderLeftColor:"border-l-green-500",iconColor:"text-green-500",bgColor:"bg-green-50 dark:bg-green-900/10"};default:return {borderLeftColor:"border-l-yellow-500",iconColor:"text-yellow-500",bgColor:"bg-yellow-50 dark:bg-yellow-900/10"}}},m=()=>{switch(r){case "info":return jsx(Info,{className:"w-5 h-5"});case "error":return jsx(XCircle,{className:"w-5 h-5"});case "success":return jsx(CheckCircle,{className:"w-5 h-5"});default:return jsx(AlertTriangle,{className:"w-5 h-5"})}},b=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 ${b.borderLeftColor} ${b.bgColor}`,children:[jsx("div",{className:`flex-shrink-0 mr-3 ${b.iconColor}`,children:n||m()}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center justify-between mb-1",children:[jsx("h4",{className:"text-base font-semibold text-gray-900 dark:text-gray-100",children:e}),o&&jsx("span",{className:"text-xs font-medium px-2 py-0.5 rounded-full bg-gray-100 dark:bg-gray-800 text-gray-600 dark:text-gray-400",children:o})]}),t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-2",children:t}),a&&a.length>0&&jsx("ul",{className:"mt-2 space-y-1",children:a.map((v,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:v})]},u))})]}),i&&s&&jsx("button",{onClick:s,className:"flex-shrink-0 ml-3 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors",children:jsx(X,{className:"w-4 h-4"})})]}),d&&jsx("div",{className:"bg-gray-50 dark:bg-gray-800/50 px-4 py-3 flex justify-end border-t border-gray-100 dark:border-gray-800",children:jsx("button",{onClick:d,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:l||"\u786E\u8BA4"})})]})},Ps=Ww;var Kw=({title:e="\u76F8\u5173\u63A8\u8350",content:t,suggestions:o,onSuggestionClick:r,maxDisplay:a=5,icon:n,closable:i=false,onClose:s,className:d="",...l})=>{let[c,g]=useState(false),[f,m]=useState(""),[b,v]=useState(false),u=useMemo(()=>f.trim()?o.filter(h=>h.toLowerCase().includes(f.toLowerCase())):o,[o,f]),C=useMemo(()=>c?u:u.slice(0,a),[u,c,a]),p=h=>{r?.(h);};return !o||o.length===0?null:jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...l,children:[jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-blue-50/30 dark:bg-blue-900/10",children:[jsxs("div",{className:"flex items-center space-x-2.5",children:[jsx("div",{className:"text-blue-500 flex-shrink-0",children:n||jsx(Lightbulb,{className:"w-5 h-5"})}),jsxs("div",{className:"flex flex-col",children:[jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100 leading-tight",children:e}),t&&jsx("span",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5",children:t})]})]}),jsxs("div",{className:"flex items-center space-x-1",children:[o.length>3&&jsx("button",{onClick:()=>v(!b),className:`p-1.5 rounded-md transition-colors ${b?"bg-blue-100 dark:bg-blue-900/30 text-blue-600 dark:text-blue-400":"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-800"}`,title:b?"\u5173\u95ED\u641C\u7D22":"\u641C\u7D22\u95EE\u9898",children:jsx(Search,{className:"w-4 h-4"})}),i&&s&&jsx("button",{onClick:s,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 p-1.5 rounded-md hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"\u5173\u95ED",children:jsx(X,{className:"w-4 h-4"})})]})]}),b&&jsx("div",{className:"px-4 py-2 border-b border-gray-100 dark:border-gray-800 bg-gray-50 dark:bg-gray-900/50",children:jsxs("div",{className:"relative",children:[jsx("input",{type:"text",placeholder:"\u641C\u7D22\u76F8\u5173\u95EE\u9898...",value:f,onChange:h=>m(h.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((h,x)=>jsx("li",{children:jsxs("button",{onClick:()=>p(h),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:h}),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>a&&jsx("button",{onClick:()=>g(!c),className:"w-full text-center py-2 text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 transition-colors border-t border-gray-50 dark:border-gray-800/50 mt-1",children:c?"\u6536\u8D77":`\u67E5\u770B\u5168\u90E8 (${u.length})`}),u.length===0&&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"})]})]})},Rs=Kw;var Qw=({title:e,content:t,toolName:o,parameters:r,result:a,status:n,duration:i,icon:s,closable:d=false,onClose:l,onAction:c,actionText:g,className:f="",...m})=>{let[b,v]=useState(false),[u,C]=useState(true),p=()=>{switch(n){case "pending":return {iconColor:"text-blue-500",badgeBg:"bg-blue-50 dark:bg-blue-900/30",badgeText:"text-blue-600 dark:text-blue-400",label:"\u6267\u884C\u4E2D"};case "error":return {iconColor:"text-red-500",badgeBg:"bg-red-50 dark:bg-red-900/30",badgeText:"text-red-600 dark:text-red-400",label:"\u5931\u8D25"};default:return {iconColor:"text-green-500",badgeBg:"bg-green-50 dark:bg-green-900/30",badgeText:"text-green-600 dark:text-green-400",label:"\u6210\u529F"}}},h=()=>{switch(n){case "pending":return jsx(Loader2,{className:"w-5 h-5 animate-spin"});case "error":return jsx(XCircle,{className:"w-5 h-5"});default:return jsx(CheckCircle,{className:"w-5 h-5"})}},x=R=>R?R<1e3?`${R}ms`:`${(R/1e3).toFixed(2)}s`:"",w=p(),E=e||o||"\u5DE5\u5177\u8C03\u7528";return jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${f}`,...m,children:[jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-gray-50/50 dark:bg-gray-800/50",children:[jsxs("div",{className:"flex items-center space-x-3",children:[jsx("div",{className:`flex-shrink-0 ${w.iconColor}`,children:s||h()}),jsxs("div",{children:[jsxs("div",{className:"flex items-center space-x-2",children:[jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100",children:E}),jsx("span",{className:`text-[10px] font-medium px-1.5 py-0.5 rounded ${w.badgeBg} ${w.badgeText}`,children:w.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&&l&&jsx("button",{onClick:l,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors p-1 rounded",children:jsx(X,{className:"w-4 h-4"})})]})]}),jsxs("div",{className:"p-4",children:[t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-4 leading-relaxed",children:t}),r&&jsxs("div",{className:"mb-3",children:[jsxs("button",{onClick:()=>v(!b),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 mb-2",children:[b?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),jsx(Box$1,{className:"w-3.5 h-3.5 mr-1.5"}),"\u8F93\u5165\u53C2\u6570"]}),b&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-hidden",children:jsx("pre",{className:"p-3 text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto",children:JSON.stringify(r,null,2)})})]}),a&&jsxs("div",{children:[jsxs("button",{onClick:()=>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 a=="string"?a:JSON.stringify(a,null,2)})})]}),c&&jsx("div",{className:"mt-3 pt-3 border-t border-gray-100 dark:border-gray-800 flex justify-end",children:jsx("button",{onClick:c,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:g||"\u6267\u884C\u64CD\u4F5C"})})]})]})},Ms=Qw;var e1=({data:e})=>{if(!e)return null;let t=useMemo(()=>{let o=[],r=[],a="\u6570\u636E\u8868\u683C";return Array.isArray(e)?(o=e,o.length>0&&(r=Object.keys(o[0]).map(n=>({id:n,label:n.charAt(0).toUpperCase()+n.slice(1),numeric:typeof o[0][n]=="number"})))):typeof e=="object"&&(a=e.title||a,o=Array.isArray(e.rows)?e.rows:Array.isArray(e.data)?e.data:[],Array.isArray(e.columns)?r=e.columns.map(i=>({id:i.key||i.id,label:i.title||i.label,numeric:i.dataType==="number"||i.numeric})):o.length>0&&(r=Object.keys(o[0]).map(i=>({id:i,label:i,numeric:typeof o[0][i]=="number"})))),o=o.map((n,i)=>({...n,id:n.id||`row_${i}`})),{title:a,columns:r,rows:o}},[e]);return t.rows.length===0?jsx("div",{className:"w-full my-4 p-4 border border-dashed border-gray-300 rounded text-center text-gray-500",children:"\u6682\u65E0\u8868\u683C\u6570\u636E"}):jsx("div",{className:"w-full my-4",children:jsx(ca,{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]})})},Ds=e1;var c1=({title:e,subtitle:t,data:o,type:r,config:a={}})=>{let n=()=>{switch(r){case "bar-chart-card":return jsx(BarChart,{className:"w-4 h-4 text-blue-500"});case "line-chart-card":return jsx(LineChart,{className:"w-4 h-4 text-green-500"});case "pie-chart-card":return jsx(PieChart,{className:"w-4 h-4 text-purple-500"});case "combo-chart-card":return jsx(Activity,{className:"w-4 h-4 text-orange-500"});case "heatmap-chart-card":return jsx(Grid$1,{className:"w-4 h-4 text-red-500"});case "fishbone-chart-card":return jsx(GitBranch,{className:"w-4 h-4 text-indigo-500"});case "waterfall-chart-card":return jsx(TrendingDown,{className:"w-4 h-4 text-teal-500"});case "google-map-card":return jsx(Globe,{className:"w-4 h-4 text-blue-600"});case "amap-card":return jsx(MapPin,{className:"w-4 h-4 text-blue-600"});default:return jsx(BarChart,{className:"w-4 h-4"})}},i=()=>{if(!o&&r!=="google-map-card"&&r!=="amap-card")return jsx("div",{className:"text-gray-500 text-sm p-4 text-center",children:"No data available"});try{switch(r){case "bar-chart-card":return jsx(ui,{data:o,orientation:a.orientation||"horizontal",valueSuffix:a.valueSuffix||"",minHeight:a.minHeight});case "line-chart-card":return jsx(Ku,{data:o,color:a.color,valueSuffix:a.valueSuffix||"",height:a.height});case "pie-chart-card":let s=o.reduce((l,c)=>l+(Number(c.value)||0),0),d=o.map(l=>({name:l.name,value:Number(l.value)||0,percent:typeof l.percent=="number"?l.percent:s>0?(Number(l.value)||0)/s*100:0}));return jsx(hl,{data:d,variant:a.variant||"donut",size:a.size,colors:a.colors});case "combo-chart-card":return jsx(_u,{data:o,barColor:a.barColor,lineColor:a.lineColor});case "heatmap-chart-card":return jsx(ju,{data:o});case "fishbone-chart-card":return jsx(Xu,{branches:o,effect:a.effect||e||"Problem"});case "waterfall-chart-card":return jsx(Qu,{data:o,height:a.height});case "google-map-card":return jsx(tp,{embedUrl:a.embedUrl||o&&o[0]?.embedUrl,apiKey:a.apiKey,query:a.query||o&&o[0]?.query||e,height:a.height});case "amap-card":return jsx(np,{embedUrl:a.embedUrl||o&&o[0]?.embedUrl,keyword:a.keyword||o&&o[0]?.keyword||e,height:a.height});default:return jsxs("div",{className:"text-gray-500 text-sm p-4 text-center",children:["Unsupported chart type: ",r]})}}catch(s){return console.error("Error rendering chart:",s),jsx("div",{className:"text-red-500 text-sm p-4 text-center",children:"Error rendering chart"})}};return jsxs("div",{className:"w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md",children:[jsxs("div",{className:"flex items-center px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-gray-50/50 dark:bg-gray-800/50",children:[jsx("div",{className:"mr-2 flex-shrink-0",children:n()}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("h3",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100 truncate",children:e}),t&&jsx("p",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5 truncate",children:t})]})]}),jsxs("div",{className:"p-4",children:[jsx("div",{className:"overflow-x-auto",children:i()}),jsx("div",{className:"mt-3",children:jsxs("details",{className:"text-xs text-gray-500 dark:text-gray-400",children:[jsx("summary",{className:"cursor-pointer hover:text-gray-700 dark:hover:text-gray-300 transition-colors select-none font-medium opacity-60 hover:opacity-100",children:"View Raw Data"}),jsx("pre",{className:"mt-2 p-2 bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-x-auto max-h-40",children:JSON.stringify(o,null,2)})]})})]})]})},As=c1;var u1=({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)})})})]}),Es=u1;var Fs=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 b1=({content:e,theme:t,size:o="base",className:r,enableCodeHighlight:a=true,enableMermaid:n=true,messageId:i,cardHooks:s})=>{let d=useMemo(()=>e?e.replace(/<think>([\s\S]*?)<\/think>/g,(f,m)=>`<div data-component="thinkbox" data-think-content="${encodeURIComponent(m.trim())}"></div>`):"",[e]),l=(f,m,b,v,u)=>{s?.onCardEvent?.({messageId:i,cardType:f,action:m,title:b,payload:v,rawData:u});},c=(f,m,b,v,u,C)=>{if(!(!u&&!s?.onCardEvent))return (...p)=>{let h=u?.(...p),x=C?C(...p):void 0;return l(f,m,b,x,v),h}},g=useMemo(()=>({div(f){let{"data-component":m,"data-think-content":b,...v}=f;return m==="thinkbox"&&b?jsx(Yg,{content:decodeURIComponent(b),theme:t,size:o,defaultExpanded:false}):jsx("div",{...v})},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:m}){return jsx("th",{className:`px-3 py-2 font-semibold text-gray-800 dark:text-gray-100 ${m==="center"?"text-center":m==="right"?"text-right":"text-left"}`,children:f})},td({children:f,align:m}){return jsx("td",{className:`px-3 py-2 text-gray-700 dark:text-gray-200 align-top ${m==="center"?"text-center":m==="right"?"text-right":"text-left"}`,children:f})},code({inline:f,className:m,children:b,...v}){let u=/language-([\w-]+)/.exec(m||""),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",...v,children:b});let p=String(b).replace(/\n$/,"");if(n&&C==="mermaid")return jsx(rf,{content:p});if(C==="json"){let h=Fs(p);if(h)switch(h.type){case "table":return jsx(Ds,{data:h.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(As,{...h});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(Es,{...h});case "error-card":{let x=h;return jsx(Is,{...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=h,w=x.onConfirm?c("warning-card","confirm",x.title,x,x.onConfirm):x.actionText&&s?.onCardEvent?c("warning-card","confirm",x.title,x):void 0;return jsx(Ps,{...x,onClose:c("warning-card","close",x.title,x,x.onClose),onConfirm:w})}case "suggestions-card":{let x=h;return jsx(Rs,{...x,onClose:c("suggestions-card","close",x.title,x,x.onClose),onSuggestionClick:c("suggestions-card","suggestion-click",x.title,x,x.onSuggestionClick,w=>({suggestion:w}))})}case "tool-result-card":{let x=h;return jsx(Ms,{...x,onClose:c("tool-result-card","close",x.title,x,x.onClose),onAction:c("tool-result-card","action",x.title,x,x.onAction)})}}}return a?jsx(Jg,{content:p,language:C,className:"not-prose"}):jsx("code",{className:m,...v,children:b})}}),[t,o,n,a,s,i]);return jsx("div",{className:Xe("markdown-body prose dark:prose-invert max-w-none",r),children:jsx(p1,{remarkPlugins:[m1,g1],rehypePlugins:[f1,h1],components:g,children:d})})},Ls=b1;var y1=({content:e,messageId:t,cardHooks:o})=>{let r=(i,s,d,l,c)=>{o?.onCardEvent?.({messageId:t,cardType:i,action:s,title:d,payload:l,rawData:c});},a=(i,s,d,l,c,g)=>{if(!(!c&&!o?.onCardEvent))return (...f)=>{let m=c?.(...f),b=g?g(...f):void 0;return r(i,s,d,b,l),m}},n=Fs(e);if(n)switch(n.type){case "table":return jsx(Ds,{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(As,{...n});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(Es,{...n});case "error-card":{let i=n;return jsx(Is,{...i,onClose:a("error-card","close",i.title,i,i.onClose),onRetry:a("error-card","retry",i.title,i,i.onRetry)})}case "warning-card":{let i=n,s=i.onConfirm?a("warning-card","confirm",i.title,i,i.onConfirm):i.actionText&&o?.onCardEvent?a("warning-card","confirm",i.title,i):void 0;return jsx(Ps,{...i,onClose:a("warning-card","close",i.title,i,i.onClose),onConfirm:s})}case "suggestions-card":{let i=n;return jsx(Rs,{...i,onClose:a("suggestions-card","close",i.title,i,i.onClose),onSuggestionClick:a("suggestions-card","suggestion-click",i.title,i,i.onSuggestionClick,s=>({suggestion:s}))})}case "tool-result-card":{let i=n;return jsx(Ms,{...i,onClose:a("tool-result-card","close",i.title,i,i.onClose),onAction:a("tool-result-card","action",i.title,i,i.onAction)})}}return jsx("div",{className:"dynamic-card-fallback",children:jsx(Ls,{content:e,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:t,cardHooks:o})})},gf=y1;var Vd=class{static analyze(t){if(!t.trim())return {blocks:[],hasComplexContent:false,overallType:"simple"};let r=/```json\s*\{\s*"type":\s*"[^"]+"/g.test(t),a=/<[^>]+>[\s\S]*?<\/[^>]+>/.test(t),n=t.includes("NQ#")||t.includes("data-component");return r||a||n?{blocks:[{type:"mixed",content:t,startIndex:0,endIndex:t.length}],hasComplexContent:true,overallType:"complex"}:{blocks:[{type:"markdown",content:t,startIndex:0,endIndex:t.length}],hasComplexContent:false,overallType:"simple"}}},v1=({content:e,className:t="",messageId:o,cardHooks:r})=>{let a=Kt__default.useMemo(()=>Vd.analyze(e),[e]);return jsx("div",{className:`universal-content-renderer ${t}`,children:a.blocks.map((n,i)=>n.type==="mixed"||n.type==="json-card"?jsx(gf,{content:n.content,messageId:o,cardHooks:r},`block-${i}`):jsx(Ls,{content:n.content,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:o,cardHooks:r},`block-${i}`))})},ff=v1;var C1=({content:e,isStreaming:t=true,onComplete:o,className:r="",streamIntervalMs:a=24,streamChunkSize:n=3,messageId:i,cardHooks:s})=>{let[d,l]=useState(t?0:e.length),[c,g]=useState(!t);useEffect(()=>{if(t){l(0),g(false);return}l(e.length),g(true);},[e,t]),useEffect(()=>{if(!t||c)return;if(d>=e.length){g(true),o?.();return}let u=window.setTimeout(()=>{l(C=>Math.min(C+n,e.length));},a);return ()=>{window.clearTimeout(u);}},[e.length,c,t,o,n,a,d]);let f=()=>{t&&!c&&(l(e.length),g(true),o?.());},m=t?e.slice(0,d):e,b=t&&!c,v=t&&!c;return jsxs("div",{className:`streaming-markdown ${r}`,onClick:f,style:{cursor:t?"pointer":"default"},children:[jsxs("div",{className:"relative",children:[jsx(ff,{content:m,messageId:i,cardHooks:s}),b&&jsx("span",{className:"inline-block w-0.5 h-5 bg-blue-500 ml-1 animate-pulse",style:{verticalAlign:"text-bottom"}})]}),v&&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"})]})},xf=C1;var vf=({buttons:e,className:t})=>{let o=r=>{switch(r){case "copy":return jsx(Copy,{size:14});case "refresh":return jsx(RefreshCw,{size:14});case "volume":return jsx(Volume2,{size:14});case "like":return jsx(ThumbsUp,{size:14});case "dislike":return jsx(ThumbsDown,{size:14});default:return null}};return jsx("div",{className:Xe("flex items-center gap-1",t),children:e.map((r,a)=>jsx("button",{onClick:r.onClick,disabled:r.disabled,"aria-busy":r.loading||void 0,className:Xe("p-1.5 rounded-md transition-colors","text-gray-500 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-100","hover:bg-gray-100 dark:hover:bg-gray-800","disabled:opacity-50 disabled:cursor-not-allowed",r.active&&"text-blue-600 bg-blue-50 dark:text-blue-400 dark:bg-blue-900/20",r.type==="refresh"&&r.loading&&"animate-spin"),title:r.type,type:"button",children:o(r.type)},`${r.type}-${a}`))})};var Ns=({message:e,onStreamingComplete:t,assistantActions:o,streamIntervalMs:r,streamChunkSize:a,cardHooks:n})=>{if(e.type==="assistant"){let i=!!(o?.isResponding||e.isStreaming);return 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(xf,{content:e.content,isStreaming:e.isStreaming??false,onComplete:t,streamIntervalMs:r,streamChunkSize:a,messageId:e.id,cardHooks:n}),e.content&&o?.isLatestAssistant&&jsx("div",{className:"flex flex-row justify-start gap-2 mt-3 pt-2 border-t border-gray-100 dark:border-gray-700",children:jsx(vf,{buttons:[{type:"refresh",onClick:()=>{o?.onRegenerate?.();},disabled:i||!o?.onRegenerate,loading:i},{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()})]})})}return 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 kf=({onTextUpdate:e,onComplete:t,onCancel:o,disabled:r,className:a})=>{let{isRecording:n,startRecording:i,stopRecording:s}=wn({onTextUpdate:e,onComplete:l=>{t?.(l);},onError:l=>{console.error("Voice input error:",l),o?.();}});return jsx("button",{onClick:async()=>{n?s():await i();},disabled:r,className:Xe("transition-all duration-200 flex items-center justify-center rounded-full",n?"bg-red-100 text-red-600 hover:bg-red-200 animate-pulse":"bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400 active:scale-95",r&&"opacity-50 cursor-not-allowed",a),title:n?"Stop recording":"Start recording",type:"button",children:n?jsx(R1,{sx:{fontSize:24}}):jsx(P1,{sx:{fontSize:24}})})};var _t={container:"w-full max-w-4xl mx-auto",inputContainer:Xe("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:Xe("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:Xe("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:Xe("bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400","cursor-pointer active:scale-95"),sendButton:Xe("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:Xe("cursor-not-allowed opacity-40 bg-transparent text-gray-400"),stopButton:Xe("cursor-pointer bg-red-500 hover:bg-red-600 text-white shadow-sm active:scale-95")},N1={padding:0,lineHeight:"1.5",border:"none !important",boxShadow:"none !important",backgroundColor:"transparent",height:"auto",fontFeatureSettings:'"liga" 1, "kern" 1',WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},z1=({enabled:e,onClick:t})=>jsx("button",{className:Xe(_t.buttonBase,_t.buttonSmall,_t.buttonNormal),onClick:t,disabled:!e,"aria-label":"Upload file",type:"button",children:jsx(mC,{sx:{fontSize:24}})}),O1=()=>jsxs("button",{className:Xe(_t.buttonBase,"h-10 px-3 py-2 gap-1.5 rounded-full",_t.buttonNormal),"aria-label":"Tools",type:"button",children:[jsx(L1,{sx:{fontSize:20}}),jsx("span",{className:"text-sm font-medium",children:"Tools"})]}),V1=({canSend:e,isResponding:t,onSend:o,onStop:r})=>t?jsx("button",{className:Xe(_t.buttonBase,_t.buttonSmall,_t.stopButton),onClick:r,"aria-label":"Stop generating",type:"button",children:jsx(Stop,{sx:{fontSize:20}})}):jsx("button",{className:Xe(_t.buttonBase,_t.buttonSmall,e?_t.sendButton:_t.sendButtonDisabled),onClick:o,disabled:!e,"aria-label":"Send message",type:"button",children:jsx(E1,{sx:{fontSize:24},className:e?"text-gray-500 dark:text-gray-400":"text-gray-300 dark:text-gray-600"})}),Sf=({onSend:e,onStop:t,isResponding:o=false,placeholder:r,getText:a})=>{let[n,i]=useState(""),[s,d]=useState([]),[l,c]=useState(false),[g,f]=useState(false),m=useRef(null),b=r||(a?a("00019","Type a message..."):"Type a message..."),v=(n.trim().length>0||s.length>0)&&!o,u={enabled:true},C=useCallback(B=>{i(B.target.value),B.target.style.height="auto",B.target.style.height=`${Math.min(B.target.scrollHeight,200)}px`;},[]),p=useCallback(B=>{if(B.target.files&&B.target.files.length>0){let Z=Array.from(B.target.files);d(N=>{let V=Z.filter(j=>N.some(H=>H.name===j.name&&H.size===j.size));V.length>0&&console.warn("Duplicate files ignored:",V.map(j=>j.name));let X=Z.filter(j=>!N.some(H=>H.name===j.name&&H.size===j.size));return [...N,...X]}),m.current&&(m.current.value="");}},[]),h=useCallback(B=>{d(Z=>Z.filter((N,V)=>V!==B));},[]),x=useCallback(()=>{m.current?.click();},[]),w=useCallback(async()=>{if(!v)return;let B=n,Z=[...s];i(""),d([]),m.current&&(m.current.value="");try{await e(B,Z);}catch(N){console.error("Failed to send message:",N),i(B),d(Z);}},[n,v,e,s]),E=useCallback(B=>{B.key==="Enter"&&!B.shiftKey&&!l&&(B.preventDefault(),w());},[w,l]),R=useCallback(()=>{c(true);},[]),T=useCallback(()=>{c(false);},[]),I=useCallback(B=>{i(B);},[]),k=useCallback(B=>{i(B);},[]),S=useCallback(()=>{},[]),A=useCallback(B=>{B.preventDefault(),f(true);},[]),P=useCallback(B=>{B.preventDefault(),f(false);},[]),M=useCallback(B=>{if(B.preventDefault(),f(false),B.dataTransfer.files&&B.dataTransfer.files.length>0){let Z=Array.from(B.dataTransfer.files);d(N=>[...N,...Z]);}},[]);return jsx("div",{className:_t.container,children:jsxs("div",{className:"relative",children:[jsx("input",{type:"file",multiple:true,className:"hidden",ref:m,onChange:p}),jsxs("div",{className:Xe(_t.inputContainer,g&&_t.dragActive),style:{borderRadius:"32px"},onDragOver:A,onDragLeave:P,onDrop:M,children:[s.length>0&&jsx("div",{className:_t.filePreviewArea,children:s.map((B,Z)=>jsxs("div",{className:_t.fileTag,children:[jsx(InsertDriveFile,{sx:{fontSize:16},className:"text-blue-500"}),jsx("span",{className:"truncate max-w-[150px]",children:B.name}),jsx("button",{onClick:()=>h(Z),className:"ml-1 hover:text-red-500 focus:outline-none",type:"button",children:jsx(Close,{sx:{fontSize:16}})})]},`${B.name}-${Z}`))}),jsxs("div",{className:"flex flex-col w-full p-2",children:[jsx("div",{className:Xe(_t.textareaWrapper,"px-3 pt-2 pb-3 min-h-[60px]"),children:jsx("textarea",{className:Xe(_t.textarea,"min-h-[24px] py-0 px-0"),placeholder:b,value:n,onChange:C,onKeyDown:E,onCompositionStart:R,onCompositionEnd:T,style:N1,"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(z1,{enabled:u.enabled,onClick:x}),jsx(O1,{})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(kf,{onTextUpdate:I,onComplete:k,onCancel:S,disabled:o,className:_t.buttonSmall}),jsx(V1,{canSend:v,isResponding:o,onSend:w,onStop:t})]})]})]})]})]})})};var If=({messages:e,onSend:t,onStop:o,onRegenerate:r,isResponding:a=false,className:n,placeholder:i,streamIntervalMs:s,streamChunkSize:d,onMessageStreamingComplete:l,cardHooks:c,showInput:g=true})=>{let f=useRef(null),m=useRef(e.length);return useEffect(()=>{e.length>m.current&&f.current?.scrollIntoView({behavior:"smooth"}),m.current=e.length;},[e]),jsxs("div",{className:Xe("flex flex-col h-full w-full relative",n),children:[jsxs("div",{className:"flex-1 overflow-y-auto px-4 py-4 space-y-6 scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600",children:[e.map((b,v)=>{let u=b.type==="assistant"&&v===e.length-1,C=b.type==="assistant"?{isLatestAssistant:u,isResponding:a,onRegenerate:r?()=>r(b.id):void 0}:void 0;return jsx(Ns,{message:b,assistantActions:C,onStreamingComplete:()=>l?.(b.id),streamIntervalMs:s,streamChunkSize:d,cardHooks:c},b.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(Sf,{onSend:t||(async()=>{}),onStop:o||(()=>{}),isResponding:a,placeholder:i})})]})};var Ko={};var $1={idle:"Idle",running:"Running",success:"Success",error:"Error",pending:"Pending"},Pf=({title:e="AI Agent",description:t,headerActions:o,className:r,agentStatus:a,onHeaderPointerDown:n,showInput:i=false,...s})=>{let d=a??(s.isResponding?"running":"idle");return jsxs("div",{className:Xe("relative flex h-full w-full",Ko.agentPanel,r),"data-status":d,children:[jsx("div",{className:Ko.colorHalo,"data-status":d,"aria-hidden":"true"}),jsxs("div",{className:Ko.marqueeBorder,"data-status":d,"aria-hidden":"true",children:[jsx("span",{className:Xe(Ko.edge,Ko.top)}),jsx("span",{className:Xe(Ko.edge,Ko.right)}),jsx("span",{className:Xe(Ko.edge,Ko.bottom)}),jsx("span",{className:Xe(Ko.edge,Ko.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:Xe("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",n&&"cursor-grab active:cursor-grabbing"),onPointerDown:n,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:Ko.statusDot,"data-status":d}),jsx("span",{className:"text-[11px] font-medium uppercase tracking-wide text-gray-600 dark:text-gray-300",children:$1[d]})]}),o]})]}),jsx("div",{className:"flex-1 min-h-0 relative z-10",children:jsx(If,{...s,showInput:i})})]})]})};var Df=520,K1=88,_1=88,q1=24,Vs=640,Af=(e,t,o)=>Math.min(Math.max(e,t),Math.max(t,o)),$d=e=>typeof e=="number"?`${e}px`:e,j1=e=>e instanceof HTMLElement?!!e.closest('button,input,a,textarea,select,[role="button"],[contenteditable="true"]'):false,cV=({anchor:e,defaultAnchor:t="right",onAnchorChange:o,width:r=Df,top:a=K1,bottom:n=_1,inset:i=q1,zIndex:s=1300,shellClassName:d,shellStyle:l,className:c,onHeaderPointerDown:g,...f})=>{let m=useRef(null),b=useRef(null),[v,u]=useState(t),[C,p]=useState(0),[h,x]=useState(typeof r=="number"?r:Df),[w,E]=useState(0),[R,T]=useState(false),I=e??v;useEffect(()=>{let N=()=>p(window.innerWidth);return N(),window.addEventListener("resize",N),()=>window.removeEventListener("resize",N)},[]),useLayoutEffect(()=>{let N=()=>{let X=m.current?.getBoundingClientRect();X?.width?x(X.width):typeof r=="number"&&x(r);};if(N(),!m.current||typeof ResizeObserver>"u")return;let V=new ResizeObserver(N);return V.observe(m.current),()=>V.disconnect()},[r]);let k=useCallback(N=>{if(!C)return i;let V=C<Vs?12:i,X=Math.max(V,C-h-V);return C<Vs||N==="left"?V:N==="center"?Af((C-h)/2,V,X):X},[i,h,C]),S=useCallback(N=>["left","center","right"].reduce((X,j)=>{let H=Math.abs(N-k(X));return Math.abs(N-k(j))<H?j:X},"right"),[k]),A=useCallback(N=>{e===void 0&&u(N),o?.(N);},[e,o]);useEffect(()=>{R||E(k(I));},[k,R,I]);let P=useCallback(N=>{g?.(N),!(N.defaultPrevented||j1(N.target))&&(N.preventDefault(),N.currentTarget.setPointerCapture(N.pointerId),b.current={pointerId:N.pointerId,startClientX:N.clientX,startX:w,currentX:w,captureElement:N.currentTarget},T(true));},[g,w]),M=useCallback(N=>{let V=b.current;if(!V||V.pointerId!==N.pointerId)return;let X=C<Vs?12:i,j=Math.max(X,C-h-X),H=Af(V.startX+N.clientX-V.startClientX,X,j);V.currentX=H,E(H);},[i,h,C]),B=useCallback(N=>{let V=b.current;if(!V||V.pointerId!==N.pointerId)return;try{V.captureElement.releasePointerCapture(N.pointerId);}catch{}let X=S(V.currentX);b.current=null,T(false),A(X),E(k(X));},[k,A,S]),Z=useMemo(()=>({position:"fixed",top:$d(a),bottom:$d(n),left:w,width:$d(r),maxWidth:`calc(100vw - ${C<Vs?24:i*2}px)`,zIndex:s,pointerEvents:"auto",transition:R?"none":"left 180ms ease-out",touchAction:"none",...l}),[n,i,R,w,l,a,C,r,s]);return jsx("div",{ref:m,className:Xe("orbcafe-floating-agent-panel min-w-0",d),"data-anchor":I,"data-dragging":R?"true":"false",style:Z,onPointerMove:M,onPointerUp:B,onPointerCancel:B,children:jsx(Pf,{...f,className:c,onHeaderPointerDown:P})})};var J1={"top-left":"bottom-right","top-right":"bottom-left","bottom-left":"top-right","bottom-right":"top-left"},bV=({messages:e,onSend:t,onRegenerate:o,isResponding:r=false,className:a,placeholder:n,title:i="Copilot",corner:s="bottom-right",onCollapse:d,onHeaderPointerDown:l,onPlusClick:c,onMicClick:g,streamIntervalMs:f,streamChunkSize:m,onMessageStreamingComplete:b,cardHooks:v})=>{let[u,C]=useState(""),[p,h]=useState(false),x=useRef(null),w=J1[s];useEffect(()=>{x.current?.scrollIntoView({behavior:"smooth"});},[e,r]);let E=useCallback(async()=>{let T=u.trim();!T||r||(C(""),await t(T));},[r,t,u]),R=useCallback(async T=>{T.key==="Enter"&&!p&&(T.preventDefault(),await E());},[E,p]);return jsxs("div",{className:Xe("relative flex h-full w-full min-h-[460px] min-w-[340px] flex-col overflow-hidden rounded-3xl border border-gray-200 bg-white shadow-none dark:border-gray-800 dark:bg-gray-900",a),children:[d&&jsx("button",{onClick:d,className:Xe("absolute z-20 flex h-10 w-10 items-center justify-center rounded-full transition-colors hover:bg-transparent dark:hover:bg-transparent",w==="top-left"&&"-left-2 -top-2",w==="top-right"&&"-right-2 -top-2",w==="bottom-left"&&"-bottom-2 -left-2",w==="bottom-right"&&"-bottom-2 -right-2"),type:"button","aria-label":"Collapse Copilot",children:jsx("span",{className:Xe("block h-4 w-4 border-[#21BCFF]",w==="top-left"&&"rounded-tl-full border-l-[3px] border-t-[3px]",w==="top-right"&&"rounded-tr-full border-r-[3px] border-t-[3px]",w==="bottom-left"&&"rounded-bl-full border-b-[3px] border-l-[3px]",w==="bottom-right"&&"rounded-br-full border-b-[3px] border-r-[3px]")})}),jsxs("div",{className:"flex items-center justify-between border-b border-gray-100 px-4 py-3 dark:border-gray-800",onPointerDown:l,children:[jsx("div",{className:"flex items-center",children:jsx("h3",{className:"text-base font-semibold tracking-tight text-gray-900 dark:text-gray-100",children:i})}),jsx("div",{})]}),jsxs("div",{className:"flex-1 overflow-y-auto px-3 py-3 space-y-5 scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600",children:[e.map((T,I)=>{let k=T.type==="assistant"&&I===e.length-1,S=T.type==="assistant"?{isLatestAssistant:k,isResponding:r,onRegenerate:o?()=>o(T.id):void 0}:void 0;return jsx(Ns,{message:T,assistantActions:S,onStreamingComplete:()=>b?.(T.id),streamIntervalMs:f,streamChunkSize:m,cardHooks:v},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:u,onChange:T=>C(T.target.value),onCompositionStart:()=>h(true),onCompositionEnd:()=>h(false),onKeyDown:R,"aria-label":"Copilot input",spellCheck:false}),jsx("button",{className:"flex h-8 w-8 items-center justify-center rounded-full text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200",onClick:g,type:"button","aria-label":"Microphone",children:jsx(Mic,{className:"h-4 w-4"})})]})})]})};var eT=["#ff3860","#24e070","#3090ff"],tT=`
17
17
  .orbcafe-ai-browser-glow {
18
18
  position: fixed;
19
19
  inset: 0;
@@ -67,4 +67,4 @@ ${o}: ${(a??r)(u.secondaryValue??0)}`:""]})}),jsx("text",{x:u.x,y:Math.max(u.y-1
67
67
  0%, 100% { opacity: 0.68; }
68
68
  50% { opacity: 0.98; }
69
69
  }
70
- `,NV=({active:e=false,colors:t=M1,zIndex:o=2147483e3})=>{let r={"--orbcafe-ai-glow-a":t[0],"--orbcafe-ai-glow-b":t[1],"--orbcafe-ai-glow-c":t[2],"--orbcafe-ai-glow-z-index":o};return jsxs(Fragment,{children:[jsx("style",{children:D1}),jsx("div",{className:"orbcafe-ai-browser-glow","data-active":e?"true":"false",style:r,"aria-hidden":"true"})]})};var WV=({defaultMode:e="login",onLogin:t,onRegister:o,onForgotPassword:r}={})=>{let[a,n]=useState(e),[i,s]=useState(false),d=useCallback(async m=>{s(true);try{await m?.();}finally{s(false);}},[]),l=useCallback(m=>d(()=>t?.(m)),[t,d]),c=useCallback(m=>d(()=>o?.(m)),[o,d]),g=useCallback(m=>d(()=>r?.(m)),[r,d]),f=useMemo(()=>({mode:a,loading:i,onModeChange:n,onLogin:l,onRegister:c,onForgotPassword:g}),[g,l,c,i,a]);return {mode:a,loading:i,setMode:n,authPageProps:f}};var Ad=({label:e,...t})=>jsx(FormControlLabel,{control:jsx(Checkbox,{...t}),label:e});var Hi=forwardRef((e,t)=>jsx(Paper,{ref:t,...e,elevation:e.elevation||1,sx:{p:2,mb:2,...e.sx}}));Hi.displayName="CPaper";var K1={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."},lO=({mode:e,defaultMode:t="login",onModeChange:o,onLogin:r,onRegister:a,onForgotPassword:n,loading:i=false,logo:s,copy:d,sx:l})=>{let c=useTheme(),g=e!==void 0,[f,m]=useState(t),h=e??f,C=useMemo(()=>({...K1,...d}),[d]),[u,v]=useState({username:"demo@orbcafe.local",password:"orbcafe-demo",remember:true}),[p,b]=useState({name:"",email:"",password:"",confirmPassword:"",acceptedTerms:false}),[y,T]=useState({email:""}),[E,R]=useState(""),w=M=>{g||m(M),R(""),o?.(M);},I=async M=>{M.preventDefault(),await r?.(u),R("Demo login accepted. No real authentication request was sent.");},k=async M=>{M.preventDefault(),await a?.(p),R("Demo registration saved locally for this screen.");},S=async M=>{M.preventDefault(),await n?.(y),R("Demo reset link request created. No email was sent.");},B=h==="login"?C.loginTitle:h==="register"?C.registerTitle:C.forgotTitle,P=h==="login"?C.loginSubtitle:h==="register"?C.registerSubtitle:C.forgotSubtitle;return jsxs(Box,{sx:{minHeight:"100vh",display:"grid",gridTemplateColumns:{xs:"1fr",md:"minmax(320px, 0.9fr) minmax(420px, 1.1fr)"},background:c.palette.mode==="dark"?"linear-gradient(135deg, #071018 0%, #151515 48%, #101827 100%)":"linear-gradient(135deg, #eef3f8 0%, #ffffff 52%, #e8f2f0 100%)",...l},children:[jsxs(Box,{sx:{display:{xs:"none",md:"flex"},flexDirection:"column",justifyContent:"space-between",p:{md:6,lg:8},borderRight:`1px solid ${c.palette.divider}`},children:[jsxs(Stack,{spacing:4,children:[jsx(Box,{children:s}),jsxs(Stack,{spacing:2,children:[jsx(Typography,{sx:{fontSize:14,fontWeight:700,color:"primary.main",textTransform:"uppercase"},children:C.productName}),jsx(Typography,{sx:{fontSize:{md:34,lg:42},lineHeight:1.06,fontWeight:800},children:C.headline}),jsx(Typography,{sx:{maxWidth:460,color:"text.secondary",fontSize:16,lineHeight:1.7},children:C.subheadline})]})]}),jsxs(Stack,{direction:"row",spacing:2,sx:{color:"text.secondary",fontSize:13},children:[jsx(Typography,{variant:"caption",children:"Reports"}),jsx(Typography,{variant:"caption",children:"Planning"}),jsx(Typography,{variant:"caption",children:"Agent UI"})]})]}),jsx(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"center",p:{xs:2,sm:4,md:6}},children:jsx(Hi,{elevation:0,sx:{width:"100%",maxWidth:460,m:0,p:{xs:2.5,sm:4},borderRadius:3,border:`1px solid ${c.palette.divider}`,backgroundColor:c.palette.mode==="dark"?"rgba(15, 23, 42, 0.86)":"rgba(255, 255, 255, 0.88)",backdropFilter:"blur(18px)",boxShadow:c.palette.mode==="dark"?"0 24px 80px rgba(0,0,0,0.34)":"0 24px 80px rgba(15,23,42,0.10)"},children:jsxs(Stack,{spacing:3,children:[jsxs(Stack,{spacing:1,children:[jsx(Box,{sx:{display:{xs:"block",md:"none"},mb:1},children:s}),jsx(Typography,{sx:{fontSize:28,fontWeight:800},children:B}),jsx(Typography,{sx:{color:"text.secondary"},children:P})]}),E&&jsx(Alert,{severity:"success",children:E}),h==="login"&&jsx(Box,{component:"form",onSubmit:I,children:jsxs(Stack,{spacing:2,children:[jsx(ko,{label:"Email or user ID",value:u.username,onChange:M=>v(A=>({...A,username:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(xf,{fontSize:"small"})})}}),jsx(ko,{label:"Password",type:"password",value:u.password,onChange:M=>v(A=>({...A,password:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(G1,{fontSize:"small"})})}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:2},children:[jsx(Ad,{label:"Remember me",checked:u.remember,onChange:M=>v(A=>({...A,remember:M.target.checked}))}),jsx(ir,{type:"button",variant:"text",size:"small",onClick:()=>w("forgot"),children:"Forgot?"})]}),jsx(ir,{type:"submit",size:"large",disabled:i,children:"Sign in"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["New user?"," ",jsx(ir,{type:"button",variant:"text",size:"small",onClick:()=>w("register"),sx:{minWidth:0,p:0},children:"Register"})]})]})}),h==="register"&&jsx(Box,{component:"form",onSubmit:k,children:jsxs(Stack,{spacing:2,children:[jsx(ko,{label:"Full name",value:p.name,onChange:M=>b(A=>({...A,name:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(xf,{fontSize:"small"})})}}),jsx(ko,{label:"Work email",type:"email",value:p.email,onChange:M=>b(A=>({...A,email:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(yf,{fontSize:"small"})})}}),jsx(ko,{label:"Password",type:"password",value:p.password,onChange:M=>b(A=>({...A,password:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(U1,{fontSize:"small"})})}}),jsx(ko,{label:"Confirm password",type:"password",value:p.confirmPassword,onChange:M=>b(A=>({...A,confirmPassword:M.target.value}))}),jsx(Ad,{label:"I accept the demo workspace terms",checked:p.acceptedTerms,onChange:M=>b(A=>({...A,acceptedTerms:M.target.checked}))}),jsx(ir,{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(ir,{type:"button",variant:"text",size:"small",onClick:()=>w("login"),sx:{minWidth:0,p:0},children:"Sign in"})]})]})}),h==="forgot"&&jsx(Box,{component:"form",onSubmit:S,children:jsxs(Stack,{spacing:2,children:[jsx(ko,{label:"Work email",type:"email",value:y.email,onChange:M=>T({email:M.target.value}),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(yf,{fontSize:"small"})})}}),jsx(ir,{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(ir,{type:"button",variant:"text",size:"small",onClick:()=>w("login"),sx:{minWidth:0,p:0},children:"Back to sign in"})]})]})}),jsx(Divider,{}),jsx(Typography,{variant:"caption",sx:{color:"text.secondary"},children:"Demo credentials: demo@orbcafe.local / orbcafe-demo"})]})})})]})};var _1={keyword:{value:"",operator:"contains"},status:{value:"",operator:"equals"},owner:{value:"",operator:"contains"},workCenter:{value:"",operator:"contains"}},j1=[{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"}],vf=({tasks:e,appId:t,tableKey:o,defaultScale:r="week",defaultSelectedTaskId:a,initialFilters:n,filterFields:i,filterAppId:s,filterTableKey:d,serviceUrl:l,variantService:c,layout:g,columns:f,page:m,rowsPerPage:h,rowsPerPageOptions:C,count:u,onPageChange:v,onRowsPerPageChange:p,onFilterSearch:b,onFilterVariantLoad:y,enableRowReorder:T,onTaskReorder:E,onLayoutIdChange:R,onLayoutSave:w})=>{let I=t??s??"planning-gantt",k=o??d??"planning",[S,B]=useState(r),[P,M]=useState(a??e[0]?.id??""),[A,Z]=useState(""),[W,K]=useState(null),[ee,le]=useState({..._1,...n}),G=useMemo(()=>{let oe=String(ee.keyword?.value??"").trim().toLowerCase(),ye=String(ee.status?.value??"").trim(),Ge=String(ee.owner?.value??"").trim().toLowerCase(),de=String(ee.workCenter?.value??"").trim().toLowerCase(),Te=ee.dateRange?.value,$e=Te?.[0]?Ir(Te[0]):null,ct=Te?.[1]?Ir(Te[1]):null;return e.filter(fe=>{if(oe&&![fe.id,fe.code,fe.title,fe.project,fe.workCenter,fe.owner?.name].join(" ").toLowerCase().includes(oe)||ye&&fe.status!==ye||Ge&&!String(fe.owner?.name??"").toLowerCase().includes(Ge)||de&&!String(fe.workCenter??"").toLowerCase().includes(de))return false;if($e||ct){let Le=Ir(fe.startDate),_e=Ir(fe.endDate),dt=$e?_e.isAfter($e)||_e.isSame($e,"day"):true,rt=ct?Le.isBefore(ct)||Le.isSame(ct,"day"):true;if(!dt||!rt)return false}return true})},[ee,e]);useEffect(()=>{G.length!==0&&(G.some(oe=>oe.id===P)||M(G[0].id));},[G,P]);let te=useCallback(oe=>{M(oe.id);},[]),me=useCallback(oe=>{Z(oe),R?.(oe);},[R]),we=useCallback(oe=>{K(ye=>({key:(ye?.key??0)+1,variant:oe})),y?.(oe);},[y]),Ce=useMemo(()=>({appId:I,tableKey:k,fields:i??j1,filters:ee,onFilterChange:le,onVariantLoad:we,onSearch:b??(()=>{}),currentLayoutId:A,layoutRefs:[{tableKey:k,layoutId:A||null}],variantService:c,serviceUrl:l}),[A,i,ee,we,b,I,k,l,c]),re=useMemo(()=>({appId:I,tableKey:k,serviceUrl:l,tasks:G,columns:f,scale:S,onScaleChange:B,page:m,rowsPerPage:h,rowsPerPageOptions:C,count:u,onPageChange:v,onRowsPerPageChange:p,selectedTaskId:P,onTaskSelect:te,enableRowReorder:T,onTaskReorder:E,layout:g,layoutVariant:W?.variant,layoutVariantLoadKey:W?.key,onLayoutIdChange:me,onLayoutSave:w}),[f,u,T,G,me,g,W?.key,W?.variant,v,p,w,E,te,m,I,k,h,C,S,l,P]);return {scale:S,setScale:B,selectedTaskId:P,setSelectedTaskId:M,filters:ee,setFilters:le,filteredTasks:G,smartFilterProps:Ce,planningGanttProps:re}};var fO=e=>{let t=vf(e),o=useMemo(()=>({filterProps:t.smartFilterProps,ganttProps:t.planningGanttProps}),[t.planningGanttProps,t.smartFilterProps]);return {...t,layoutProps:o}};var Cf=e=>jsx(Chip,{...e,size:e.size||"small",variant:e.variant||"outlined"});var ha=forwardRef(({tooltip:e,...t},o)=>{let r=jsx(IconButton,{ref:o,...t,size:t.size||"small"});return e?jsx(Tooltip,{title:e,children:r}):r});ha.displayName="CIconButton";var Sf=({label:e,options:t,minWidth:o=120,...r})=>jsxs(FormControl,{fullWidth:true,size:"small",sx:{minWidth:o},children:[e&&jsx(InputLabel,{children:e}),jsx(Select,{label:e,...r,children:t.map(a=>jsx(MenuItem,{value:a.value,children:a.label},a.value))})]});Ir.extend(iT);var Nd=[{value:"hour",label:"Hour",width:56},{value:"day",label:"Day",width:46},{value:"week",label:"Week",width:78},{value:"month",label:"Month",width:104}],Vd=56,Ua=58,Gi=8,Od=260,MT=320,Ls="0.85rem",Ka="220ms cubic-bezier(0.2, 0, 0, 1)",If={"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"}},DT=e=>e?If[e]?.label??e:"Planned",AT=e=>e?If[e]?.color??"default":"info",Pf=e=>Math.min(100,Math.max(0,e??0)),Rf=(e,t=0)=>e.flatMap(o=>[{...o,level:t},...Rf(o.children??[],t+1)]),BT=e=>({id:e.id,code:e.code??e.id,title:e.title,titleSub:e.project??e.workCenter??"General",project:e.project??"",workCenter:e.workCenter??"",owner:e.owner?.name??"Unassigned",status:DT(e.status),statusTone:e.status??"planned",progress:Pf(e.progress),startDate:e.startDate,endDate:e.endDate,color:e.color,reorderable:e.reorderable!==false}),Mf=(e,t)=>t==="month"?e.startOf("month"):t==="week"?e.startOf("week"):t==="day"?e.startOf("day"):e.startOf("hour"),Df=(e,t)=>t==="month"?e.endOf("month"):t==="week"?e.endOf("week"):t==="day"?e.endOf("day"):e.endOf("hour"),FT=(e,t,o)=>{let r=[],a=Mf(e,o),n=Df(t,o);for(;a.isBefore(n)||a.isSame(n);){let i=o==="month"?a.add(1,"month"):o==="week"?a.add(1,"week"):o==="day"?a.add(1,"day"):a.add(1,"hour");r.push({key:`${o}-${a.valueOf()}`,label:o==="month"?a.format("MMM YYYY"):o==="week"?a.format("MMM D"):o==="day"?a.format("D"):a.format("HH:mm"),contextLabel:o==="hour"?a.format("MMM D"):o==="day"?a.format("MMM"):o==="week"?`W${a.isoWeek()}`:void 0,title:o==="hour"?a.format("MMM D, YYYY HH:mm"):o==="day"?a.format("MMM D, YYYY"):o==="week"?`${a.format("MMM D, YYYY")} - Week ${a.isoWeek()}`:void 0,start:a,end:i}),a=i;}return r},Hd=(e,t,o)=>{let r=0;for(let a of t){if(e.isBefore(a.start))return r;if(e.isBefore(a.end)){let n=Math.max(1,a.end.valueOf()-a.start.valueOf()),i=Math.max(0,e.valueOf()-a.start.valueOf());return r+i/n*o}r+=o;}return r},Af=({appId:e="planning-gantt",tableKey:t="planning",serviceUrl:o,title:r="Project Plan",extraTools:a,bodyHeight:n=560,tasks:i,columns:s,scale:d="week",onScaleChange:l,page:c,rowsPerPage:g=20,rowsPerPageOptions:f=[20,50,100,-1],count:m,onPageChange:h,onRowsPerPageChange:C,timelineStart:u,timelineEnd:v,selectedTaskId:p,onTaskSelect:b,enableRowReorder:y=true,onTaskReorder:T,layout:E,layoutVariant:R,layoutVariantLoadKey:w,onLayoutIdChange:I,onLayoutSave:k,emptyLabel:S="No planning tasks available.",sx:B})=>{let P=useTheme(),{t:M}=ae(),A=useRef(null),Z=useRef(null),W=useRef(null),K=useRef(false),[ee,le]=useState(null),[G,te]=useState("content"),[me,we]=useState(null),[Ce,re]=useState(0),[oe,ye]=useState({}),[Ge,de]=useState(Vd),[Te,$e]=useState([]),ct=useRef(void 0),[fe,Le]=useState({activeId:null,overId:null}),[_e,dt]=useState(null),[rt,j]=useState(false),Ne=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:4}})),_=useRef(null),Q=useMemo(()=>Rf(i),[i]),Re=useMemo(()=>{if(Te.length===0)return Q;let D=new Map(Q.map(ue=>[ue.id,ue])),q=Te.map(ue=>D.get(ue)).filter(ue=>!!ue),Y=new Set(q.map(ue=>ue.id));return [...q,...Q.filter(ue=>!Y.has(ue.id))]},[Q,Te]),Be=useMemo(()=>new Map(Re.map(D=>[D.id,D])),[Re]),at=useMemo(()=>Re.map(D=>BT(D)),[Re]),it=useMemo(()=>new Map(at.map(D=>[D.id,D])),[at]),gt=useMemo(()=>[{id:"code",label:"ID",minWidth:90},{id:"title",label:"Task",minWidth:260,render:(D,q)=>jsxs(Stack,{spacing:.2,children:[jsx(Typography,{sx:{fontSize:15,fontWeight:700,lineHeight:1.2},children:q.title}),jsx(Typography,{sx:{fontSize:13,color:"text.secondary"},children:q.titleSub})]})},{id:"owner",label:"Owner",minWidth:170},{id:"status",label:"Status",minWidth:130,render:(D,q)=>jsx(Cf,{label:q.status,color:AT(q.statusTone),size:"small"})},{id:"progress",label:"Progress",minWidth:140,numeric:true,render:D=>jsxs(Stack,{spacing:.6,children:[jsxs(Typography,{variant:"caption",sx:{color:"text.secondary"},children:[D,"%"]}),jsx(LinearProgress,{variant:"determinate",value:D,sx:{height:6,borderRadius:999}})]})},{id:"startDate",label:"Start",minWidth:120},{id:"endDate",label:"End",minWidth:120}],[]),Et=useMemo(()=>{if(!s||s.length===0)return gt;let D=new Map(gt.map(q=>[q.id,q]));return s.map(q=>{let Y=D.get(q.id),ue=q.width??Y?.minWidth??120,Ee={id:q.id,label:q.label,minWidth:ue};if(Y?.numeric&&(Ee.numeric=true),q.render){let We=q.render;return Ee.render=(Qe,he)=>{let je=Be.get(he.id);return We(je||he)},Ee}return Y?.render?(Ee.render=Y.render,Ee):(Ee.render=(We,Qe)=>{let he=Qe[q.id];if(he!=null&&String(he).length>0)return String(he);let nt=Be.get(Qe.id)?.[q.id];return nt!=null&&String(nt).length>0?String(nt):"-"},Ee)})},[s,gt,Be]),U=hn({appId:e,tableKey:t,title:r,columns:Et,rows:at,rowKey:"id",page:c,rowsPerPage:g,rowsPerPageOptions:f,count:m??at.length,onPageChange:h,onRowsPerPageChange:C,showSummary:false,layout:E,onLayoutSave:k}),ze=e?jsx(fn,{appId:e,tableKey:t,currentLayoutData:U.currentLayoutData,onLayoutLoad:U.handleLayoutLoad,targetLayoutId:U.layoutIdToLoad,activeLayoutId:U.currentLayoutId,serviceUrl:o}):null,Ae=U.visibleRows,ft=U.rowsPerPage===-1?1:Math.max(1,Math.ceil(U.totalDisplayCount/U.rowsPerPage)),O=Math.max(0,Math.min(U.page,ft-1)),xe=Math.min(O+1,ft),Ke=O>0,et=O<ft-1&&U.rowsPerPage!==-1;useEffect(()=>{let D=Q.map(q=>q.id);$e(q=>{let Y=new Set(D),ue=q.filter(he=>Y.has(he)),Ee=new Set(ue),We=D.filter(he=>!Ee.has(he)),Qe=[...ue,...We];return Qe.length===q.length&&Qe.every((he,je)=>he===q[je])?q:Qe});},[Q]),useEffect(()=>{w===void 0||!R||ct.current!==w&&(ct.current=w,U.handleVariantLoad(R));},[U,R,w]),useEffect(()=>{I?.(U.currentLayoutId);},[U.currentLayoutId,I]);let Ct=D=>D.type==="group"?`group-${D.id}`:`row-${(D.data||D)?.id}`,It=useMemo(()=>{let D=at.map(je=>Ir(je.startDate)),q=at.map(je=>Ir(je.endDate)),Y=u?Ir(u):D.reduce((je,nt)=>nt.isBefore(je)?nt:je,D[0]??Ir()),ue=v?Ir(v):q.reduce((je,nt)=>nt.isAfter(je)?nt:je,q[0]??Ir().add(30,"day")),Ee=d==="month"?"month":d==="week"?"week":d==="day"?"day":"hour",We=d==="month"?"month":d==="week"?"week":d==="day"?"day":"hour",Qe=d==="hour"?12:1,he=d==="hour"?12:1;return {start:Mf(Y.subtract(Qe,Ee),d),end:Df(ue.add(he,We),d)}},[at,d,v,u]),oo=Nd.find(D=>D.value===d)??Nd[1],xo=Array.isArray(a)?a:a?[a]:[],bt=useMemo(()=>FT(It.start,It.end,d),[It.end,It.start,d]),ar=bt.length*oo.width,Pt=bt.length>0?100/bt.length:100,nr=bt.length>0?`repeat(${bt.length}, minmax(${oo.width}px, 1fr))`:"1fr",ro=bt.length>0?`calc(100% / ${bt.length}) 100%`:"100% 100%",z=(U.columns||[]).filter(D=>U.visibleColumns.includes(D.id)).reduce((D,q)=>D+(U.columnWidths?.[q.id]||q.minWidth||100),0),N=G==="manual"&&ee!==null?ee:z,V=me==="table",ce=me==="timeline",pe=me==="timeline",Pe=me==="table",ke=!pe&&!Pe,Fe=()=>{let D=Ce||A.current?.clientWidth||0;return D>0?Math.max(Od,D-Gi-MT):Math.max(Od,z)},Ue=D=>Math.min(Math.max(D,Od),Fe()),yt=(()=>{if(Ce<=0)return null;let D=ke?Gi:0;if(V)return {tableWidth:Ce,splitterWidth:D,timelineWidth:0};if(ce)return {tableWidth:0,splitterWidth:D,timelineWidth:Ce};if(G==="even"){let Y=Math.max(0,(Ce-D)/2);return {tableWidth:Y,splitterWidth:D,timelineWidth:Math.max(0,Ce-D-Y)}}let q=Ue(N);return {tableWidth:q,splitterWidth:D,timelineWidth:Math.max(0,Ce-D-q)}})(),Tt=yt?`${yt.tableWidth}px ${yt.splitterWidth}px ${yt.timelineWidth}px`:V?"minmax(0, 1fr) 0px 0px":ce?"0px 0px minmax(0, 1fr)":G==="even"?`minmax(0, 1fr) ${Gi}px minmax(0, 1fr)`:`${N}px ${Gi}px minmax(0, 1fr)`;useEffect(()=>{G==="manual"&&le(D=>D===null?null:Ue(D));},[G,z,Ce]);let ht=D=>{D.preventDefault(),D.currentTarget.setPointerCapture(D.pointerId),we(null),te("manual"),_.current={startX:D.clientX,startWidth:Z.current?.getBoundingClientRect().width??N};let q=ue=>{let Ee=_.current;if(!Ee)return;let We=Ue(Ee.startWidth+ue.clientX-Ee.startX);le(We);},Y=()=>{_.current=null,window.removeEventListener("pointermove",q),window.removeEventListener("pointerup",Y),document.body.style.cursor="",document.body.style.userSelect="";};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("pointermove",q),window.addEventListener("pointerup",Y);},Po=()=>{we(null),te("even"),le(null);},_t=D=>!y||!D?false:it.get(D)?.reorderable!==false,Nt=(D,q)=>{if(!D||!q||D===q||!_t(D)||!_t(q))return false;if(U.grouping.length===0)return true;let Y=it.get(D),ue=it.get(q);return !Y||!ue?false:U.grouping.every(Ee=>Y[Ee]===ue[Ee])},vo=(D,q)=>{if(!Nt(D,q))return;let Y=Ae.filter(lt=>lt.type!=="group").map(lt=>String((lt.data||lt)?.id)),ue=Y.indexOf(D),Ee=Y.indexOf(q);if(ue<0||Ee<0)return;let We=[...Y];[We[ue],We[Ee]]=[We[Ee],We[ue]];let Qe=new Set(Y),he=Re.map(lt=>lt.id),je=[...We,...he.filter(lt=>!Qe.has(lt))],nt=Be.get(D),Mt=Be.get(q);if(U.setOrder("asc"),U.setOrderBy(""),$e(je),nt&&Mt){let{level:lt,...Jt}=nt,{level:ao,...Co}=Mt,$t=je.reduce((no,xt)=>{let Zt=Be.get(xt);if(Zt){let{level:br,...Zo}=Zt;no.push(Zo);}return no},[]);T?.($t,{activeTask:Jt,targetTask:Co});}},jt=(D,q)=>{if(!_t(q.id)){D.preventDefault();return}D.stopPropagation(),D.dataTransfer.effectAllowed="move",D.dataTransfer.setData("text/plain",q.id),Le({activeId:q.id,overId:null}),b?.(Be.get(q.id)||q);},tt=(D,q)=>{if(!Nt(fe.activeId,q)){Le(Y=>Y.overId===null?Y:{...Y,overId:null});return}D.preventDefault(),D.stopPropagation(),D.dataTransfer.dropEffect="move",Le(Y=>Y.overId===q?Y:{...Y,overId:q});},_o=(D,q)=>{let Y=fe.activeId||D.dataTransfer.getData("text/plain");if(!Nt(Y,q)){Le({activeId:null,overId:null});return}D.preventDefault(),D.stopPropagation(),vo(Y,q),Le({activeId:null,overId:null});},Fo=()=>{Le({activeId:null,overId:null});},jo=D=>{if(K.current)return;let q=D==="table"?Z.current:W.current,Y=D==="table"?W.current:Z.current;!q||!Y||(K.current=true,Y.scrollTop=q.scrollTop,window.requestAnimationFrame(()=>{K.current=false;}));};return useLayoutEffect(()=>{let D=A.current;if(!D){re(0);return}let q=0,Y=()=>{window.cancelAnimationFrame(q),q=window.requestAnimationFrame(()=>{let Ee=D.clientWidth;re(We=>Math.abs(We-Ee)<.5?We:Ee);});};if(Y(),typeof ResizeObserver>"u")return window.addEventListener("resize",Y),()=>{window.cancelAnimationFrame(q),window.removeEventListener("resize",Y);};let ue=new ResizeObserver(Y);return ue.observe(D),window.addEventListener("resize",Y),()=>{window.cancelAnimationFrame(q),ue.disconnect(),window.removeEventListener("resize",Y);}},[at.length]),useLayoutEffect(()=>{if(!p||Pe)return;let D=W.current,q=Z.current;if(!D)return;let Y=`row-${p}`,ue=Array.from(D.querySelectorAll("[data-planning-timeline-row-key]")).find(Qe=>Qe.dataset.planningTimelineRowKey===Y),Ee=it.get(p);if(!ue||!Ee)return;let We=window.requestAnimationFrame(()=>{let Qe=D.getBoundingClientRect(),he=ue.getBoundingClientRect(),je=Math.max(1,D.clientHeight-Ge),nt=D.scrollTop+he.top-Qe.top-Ge-(je-he.height)/2;K.current=true,D.scrollTop=Math.max(0,nt),q&&!pe&&(q.scrollTop=D.scrollTop);let Mt=Math.max(1,D.scrollWidth),lt=bt.length>0?Mt/bt.length:oo.width,Jt=Hd(Ir(Ee.startDate),bt,lt),ao=Math.max(0,Jt-lt);D.scrollLeft=Math.min(ao,Math.max(0,Mt-D.clientWidth)),window.requestAnimationFrame(()=>{K.current=false;});});return ()=>window.cancelAnimationFrame(We)},[oo.width,Ge,p,pe,it,Pe,Ae,bt]),useLayoutEffect(()=>{let D=Z.current;if(!D)return;let q=0,Y=0,ue=false,Ee=()=>{if(ue)return;let ao=D.querySelector("thead"),Co=Array.from(D.querySelectorAll("tbody tr[data-planning-row-key]"));if(Co.length===0)return;let $t=ao?.getBoundingClientRect().height||Vd,no={};Co.forEach(xt=>{let Zt=xt.dataset.planningRowKey;Zt&&(no[Zt]=xt.getBoundingClientRect().height);}),de(xt=>Math.abs(xt-$t)<.01?xt:$t),ye(xt=>{let Zt=Object.keys(xt),br=Object.keys(no);return Zt.length===br.length&&br.every(Zo=>Math.abs((xt[Zo]??0)-no[Zo])<.01)?xt:no});},We=()=>{window.cancelAnimationFrame(q),q=window.requestAnimationFrame(Ee);};if(Ee(),window.cancelAnimationFrame(Y),Y=window.requestAnimationFrame(()=>{Y=window.requestAnimationFrame(Ee);}),typeof document<"u"&&document.fonts?.ready&&document.fonts.ready.then(()=>{ue||We();}).catch(()=>{}),typeof ResizeObserver>"u")return window.addEventListener("resize",We),()=>{ue=true,window.cancelAnimationFrame(q),window.cancelAnimationFrame(Y),window.removeEventListener("resize",We);};let Qe=new ResizeObserver(We),he=D.querySelector("table"),je=D.querySelector("tbody"),nt=D.querySelector("thead");he&&Qe.observe(he),nt&&Qe.observe(nt);let Mt=new WeakSet,lt=()=>{D.querySelectorAll("tbody tr[data-planning-row-key]").forEach(ao=>{Mt.has(ao)||(Qe.observe(ao),Mt.add(ao));});};lt();let Jt=null;return je&&typeof MutationObserver<"u"&&(Jt=new MutationObserver(()=>{lt(),We();}),Jt.observe(je,{childList:true,subtree:true,characterData:true})),window.addEventListener("resize",We),()=>{ue=true,window.cancelAnimationFrame(q),window.cancelAnimationFrame(Y),Qe.disconnect(),Jt?.disconnect(),window.removeEventListener("resize",We);}},[Ae,U.visibleColumns,U.grouping,U.columnWidths]),jsxs(Hi,{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,...B},children:[jsxs(Stack,{direction:{xs:"column",md:"row"},justifyContent:"space-between",alignItems:{xs:"stretch",md:"center"},spacing:2,sx:{px:2,py:1.75,borderBottom:`1px solid ${P.palette.divider}`},children:[jsxs(Stack,{direction:"row",spacing:.75,alignItems:"center",sx:{p:.5,borderRadius:2,backgroundColor:"action.hover",minHeight:38},children:[jsx(Typography,{sx:{fontSize:Ls,color:"text.secondary",whiteSpace:"nowrap"},children:M("table.toolbar.itemsPerPage")}),jsx(Select,{size:"small",variant:"standard",value:U.rowsPerPage,disableUnderline:true,onChange:D=>U.setRowsPerPage(Number(D.target.value)),sx:{fontSize:Ls,fontWeight:600,color:"text.primary",minWidth:64,"& .MuiSelect-select":{py:.25,pr:"16px !important"},"& .MuiSvgIcon-root":{color:"text.primary"}},children:f.map(D=>jsx(MenuItem,{value:D,sx:{fontSize:Ls},children:D===-1?M("common.all"):D},`planning-rows-per-page-${D}`))}),jsx(IconButton,{size:"small",onClick:()=>U.setPage(Math.max(O-1,0)),disabled:!Ke,sx:{p:.35,color:"text.primary"},children:jsx(eb,{fontSize:"small"})}),jsx(Typography,{sx:{fontSize:Ls,fontWeight:600,minWidth:88,textAlign:"center",color:"text.primary"},children:M("table.toolbar.pageOf",{current:xe,total:ft})}),jsx(IconButton,{size:"small",onClick:()=>U.setPage(Math.min(O+1,ft-1)),disabled:!et,sx:{p:.35,color:"text.primary"},children:jsx(Tf,{fontSize:"small"})})]}),jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",sx:{flexWrap:"wrap"},children:[xo.length>0&&jsx(Stack,{direction:"row",spacing:.75,alignItems:"center",children:xo.map((D,q)=>jsx(Box,{sx:{display:"flex",alignItems:"center"},children:D},`planning-extra-tool-${q}`))}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(ha,{tooltip:"Column visibility",onClick:D=>U.setAnchorEl(D.currentTarget),color:"default",children:jsx(Kh,{fontSize:"small"})}),jsx(ha,{tooltip:"Group by",onClick:D=>U.setGroupAnchorEl(D.currentTarget),color:"default",children:jsx(jh,{fontSize:"small"})}),jsx(ha,{tooltip:"Sort by...",onClick:()=>j(true),color:U.sortBy.length>0||U.orderBy?"primary":"default",children:jsx(PT,{fontSize:"small"})})]}),ze&&jsx(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:ze}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(ha,{tooltip:"Expand task table",onClick:()=>we("table"),color:me==="table"?"primary":"default",children:jsx(TT,{fontSize:"small"})}),jsx(ha,{tooltip:"Split evenly",onClick:Po,color:me===null&&G==="even"?"primary":"default",children:jsx(IT,{fontSize:"small"})}),jsx(ha,{tooltip:"Expand timeline",onClick:()=>we("timeline"),color:me==="timeline"?"primary":"default",children:jsx(wT,{fontSize:"small"})})]}),jsx(Box,{sx:{minWidth:120},children:jsx(Sf,{label:"",value:d,options:Nd.map(D=>({value:D.value,label:D.label})),onChange:D=>l?.(D.target.value),sx:{"& .MuiSelect-select":{fontSize:"0.92rem",py:.65},"& .MuiSvgIcon-root":{fontSize:20}}})})]})]}),at.length===0?jsx(Box,{sx:{minHeight:240,display:"grid",placeItems:"center",color:"text.secondary"},children:S}):jsx(Box,{sx:{overflow:"hidden",flex:1,minHeight:0},children:jsxs(Box,{ref:A,sx:{height:"100%",display:"grid",gridTemplateColumns:Tt,minWidth:0,transition:`grid-template-columns ${Ka}`},children:[jsx(TableContainer,{"data-planning-scroll-pane":"table",ref:Z,onScroll:()=>jo("table"),sx:{width:"100%",minWidth:0,maxWidth:"100%",height:n,overflowX:"auto",overflowY:"auto",opacity:pe?0:1,transform:pe?"translateX(-10px)":"translateX(0)",pointerEvents:pe?"none":"auto",transition:`opacity ${Ka}, transform ${Ka}`},children:jsx(DndContext,{sensors:Ne,collisionDetection:closestCenter,modifiers:[restrictToHorizontalAxis],onDragEnd:D=>{let q=D?.active?.id,Y=D?.over?.id;typeof q=="string"&&typeof Y=="string"&&U.handleColumnReorder(q,Y);},children:jsxs(Table,{size:"small",stickyHeader:true,sx:{tableLayout:"fixed",width:z,"& thead .MuiTableCell-root":{height:Vd,py:0,lineHeight:1.15,boxSizing:"border-box"}},children:[jsx(Zi,{columns:U.columns,visibleColumns:U.visibleColumns,order:U.order,orderBy:U.orderBy,sortBy:U.sortBy,onRequestSort:U.handleRequestSort,onContextMenu:(D,q)=>{D.preventDefault(),D.stopPropagation(),dt({mouseX:D.clientX+2,mouseY:D.clientY-6,columnId:q});},grouping:U.grouping,isAllExpanded:U.isAllExpanded,handleToggleAll:U.handleToggleAll,columnWidths:U.columnWidths,onColumnResize:U.handleColumnResize,enableColumnReorder:true}),jsx(TableBody,{children:Ae.map(D=>{let q=Ct(D);if(D.type==="group")return jsxs(TableRow,{"data-planning-row-key":q,sx:{height:Ua,backgroundColor:P.palette.action.hover},children:[U.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Ua,py:0,borderBottom:`1px solid ${P.palette.divider}`},children:jsx(IconButton,{size:"small",onClick:()=>U.toggleGroupExpand(D.id),children:D.isExpanded?jsx(kb,{fontSize:"small"}):jsx(Tf,{fontSize:"small"})})}),jsx(TableCell,{colSpan:U.visibleColumns.length,sx:{height:Ua,py:0,borderBottom:`1px solid ${P.palette.divider}`},children:jsxs(Typography,{sx:{fontSize:13,fontWeight:700},children:[D.field,": ",D.value," (",D.count,")"]})})]},D.id);let Y=D.data||D,ue=Y.id===p,Ee=_t(Y.id),We=fe.activeId===Y.id,Qe=fe.overId===Y.id&&Nt(fe.activeId,Y.id);return jsxs(TableRow,{"data-planning-row-key":q,draggable:Ee,hover:true,selected:ue,onDragStart:he=>jt(he,Y),onDragOver:he=>tt(he,Y.id),onDragEnter:he=>tt(he,Y.id),onDrop:he=>_o(he,Y.id),onDragEnd:Fo,onClick:()=>b?.(Be.get(Y.id)||Y),sx:{cursor:We?"grabbing":Ee?"grab":b?"pointer":"default",height:Ua,opacity:We?.56:1,"& .MuiTableCell-root":Qe?{borderTop:`2px solid ${P.palette.primary.main}`}:void 0,transition:"background-color 120ms ease, opacity 120ms ease"},children:[U.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Ua,py:0,borderBottom:`1px solid ${P.palette.divider}`}}),(U.columns||[]).filter(he=>U.visibleColumns.includes(he.id)).map(he=>jsx(TableCell,{sx:{width:U.columnWidths?.[he.id]||he.minWidth||100,height:Ua,py:0,overflow:"hidden",borderBottom:`1px solid ${P.palette.divider}`},children:he.render?he.render(Y[he.id],Y):String(Y[he.id]??"-")},`${Y.id}-${he.id}`))]},Y.id)})})]})})}),jsx(Box,{onPointerDown:ke?ht:void 0,role:"separator","aria-orientation":"vertical",sx:{width:ke?Gi:0,cursor:ke?"col-resize":"default",opacity:ke?1:0,pointerEvents:ke?"auto":"none",borderLeft:ke?`1px solid ${P.palette.divider}`:"0 solid transparent",borderRight:ke?`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 ${Ka}, opacity ${Ka}, 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:ke?"col-resize":"default"}}}),jsx(Box,{sx:{minWidth:0,overflow:"hidden",opacity:Pe?0:1,transform:Pe?"translateX(10px)":"translateX(0)",pointerEvents:Pe?"none":"auto",transition:`opacity ${Ka}, transform ${Ka}`},children:jsx(Box,{"data-planning-scroll-pane":"timeline",ref:W,onScroll:()=>jo("timeline"),sx:{width:"100%",height:n,overflowX:"auto",overflowY:"auto"},children:jsxs(Box,{sx:{width:"100%",minWidth:ar||"100%"},children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:nr,height:Ge,boxSizing:"border-box",borderBottom:`1px solid ${P.palette.divider}`,position:"sticky",top:0,zIndex:2,backgroundColor:P.palette.background.paper},children:bt.map(D=>jsxs(Box,{title:D.title,sx:{px:.75,display:"flex",flexDirection:D.contextLabel?"column":"row",alignItems:"center",justifyContent:"center",gap:D.contextLabel?.15:0,borderRight:`1px solid ${P.palette.divider}`,color:D.contextLabel?"text.primary":"text.secondary",overflow:"hidden"},children:[D.contextLabel&&jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"text.secondary",fontSize:11,fontWeight:700,lineHeight:1.1},children:D.contextLabel}),jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,fontWeight:700,lineHeight:1.15},children:D.label})]},D.key))}),jsx(Stack,{sx:{position:"relative"},children:Ae.map(D=>{let q=Ct(D),Y=oe[q]??Ua;if(D.type==="group")return jsx(Box,{"data-planning-timeline-row-key":q,sx:{position:"relative",height:Y,boxSizing:"border-box",borderBottom:`1px solid ${P.palette.divider}`,backgroundColor:P.palette.action.hover}},D.id);let ue=D.data||D,Ee=Ir(ue.startDate),We=Ir(ue.endDate),Qe=Hd(Ee,bt,Pt),he=Hd(We,bt,Pt),je=Math.max(0,he-Qe),nt=Pf(ue.progress),Mt=ue.id===p,lt=_t(ue.id),Jt=fe.activeId===ue.id,ao=fe.overId===ue.id&&Nt(fe.activeId,ue.id),Co=ue.color??(ue.statusTone==="blocked"?P.palette.error.main:P.palette.primary.main);return jsx(Box,{"data-planning-timeline-row-key":q,draggable:lt,onDragStart:$t=>jt($t,ue),onDragOver:$t=>tt($t,ue.id),onDragEnter:$t=>tt($t,ue.id),onDrop:$t=>_o($t,ue.id),onDragEnd:Fo,onClick:()=>b?.(Be.get(ue.id)||ue),sx:{position:"relative",height:Y,boxSizing:"border-box",borderBottom:`1px solid ${P.palette.divider}`,opacity:Jt?.56:1,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,height:2,backgroundColor:P.palette.primary.main,opacity:ao?1:0,transition:"opacity 120ms ease",pointerEvents:"none",zIndex:3},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:ro,cursor:Jt?"grabbing":lt?"grab":b?"pointer":"default",transition:"opacity 120ms ease"},children:jsx(Tooltip,{title:`${ue.title}: ${Ee.format("MMM D HH:mm")} - ${We.format("MMM D HH:mm")}`,children:jsxs(Box,{sx:{position:"absolute",left:`${Qe}%`,top:Math.max(8,(Y-24)/2),width:`max(18px, ${je}%)`,height:24,borderRadius:999,overflow:"hidden",backgroundColor:P.palette.mode==="dark"?"rgba(148,163,184,0.18)":"rgba(15,23,42,0.10)",outline:Mt?`2px solid ${P.palette.warning.main}`:"none",outlineOffset:2},children:[jsx(Box,{sx:{height:"100%",width:`${nt}%`,backgroundColor:Co}}),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:ue.code})]})})},ue.id)})})]})})})]})}),jsx(Qa,{groupAnchorEl:U.groupAnchorEl,setGroupAnchorEl:U.setGroupAnchorEl,grouping:U.grouping,setGrouping:U.setGrouping,columns:U.columns,toggleGroupField:U.toggleGroupField}),jsx(Ja,{anchorEl:U.anchorEl,setAnchorEl:U.setAnchorEl,columns:U.columns,visibleColumns:U.visibleColumns,toggleColumnVisibility:U.toggleColumnVisibility}),jsx(Iu,{contextMenu:_e,handleClose:()=>dt(null),columns:U.columns,visibleColumns:U.visibleColumns,grouping:U.grouping,summaryColumns:U.summaryColumns,showSummary:U.showSummary,sortBy:U.sortBy,orderBy:U.orderBy,order:U.order,onSortAsc:D=>{U.applyMultiSort([{field:D,direction:"asc"}]);},onSortDesc:D=>{U.applyMultiSort([{field:D,direction:"desc"}]);},onClearSort:D=>{let q=U.sortBy.filter(Y=>Y.field!==D);q.length>0?U.applyMultiSort(q):(U.clearMultiSort(),U.orderBy===D&&U.setOrderBy(""));},onHideColumn:D=>{U.visibleColumns.includes(D)&&U.toggleColumnVisibility(D);},onToggleGroup:D=>U.toggleGroupField(D),onToggleSummary:D=>U.toggleSummaryColumn(D),onOpenSortDialog:()=>j(true)}),jsx(Pu,{open:rt,onClose:()=>j(false),columns:U.columns,initialRules:U.sortBy.length>0?U.sortBy:U.orderBy?[{field:U.orderBy,direction:U.order}]:[],onApply:D=>U.applyMultiSort(D),onClear:()=>{U.clearMultiSort(),U.setOrderBy("");}})]})};var r8=({filterProps:e,ganttProps:t,spacing:o=2,sx:r,children:a})=>{let n=r?[{height:"100%",overflow:"hidden"},r]:{height:"100%",overflow:"hidden"},i=t.sx?[{height:"100%"},t.sx]:{height:"100%"};return jsxs(Stack,{spacing:o,sx:n,children:[jsx(Box,{sx:{flexShrink:0},children:jsx(Ar,{...e})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden"},children:jsx(Af,{...t,bodyHeight:t.bodyHeight??"100%",sx:i})}),a]})};var WT={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)"}}},s8=({children:e,transitionKey:t,variant:o="fade",durationMs:r=220,delayMs:a=0,easing:n="cubic-bezier(0.22, 1, 0.36, 1)",disabled:i=false,sx:s})=>{let d=useMediaQuery("(prefers-reduced-motion: reduce)"),[l,c]=useState("to"),g=!i&&!d&&o!=="none";useEffect(()=>{if(!g){c("to");return}c("from");let h=requestAnimationFrame(()=>{h=requestAnimationFrame(()=>{c("to");});});return ()=>cancelAnimationFrame(h)},[t,g]);let f=WT[o],m=useMemo(()=>g?l==="from"?f.from:f.to:{opacity:1,transform:"none"},[g,l,f.from,f.to]);return jsx(Box,{sx:{willChange:g?"opacity, transform":"auto",transition:g?`opacity ${r}ms ${n} ${a}ms, transform ${r}ms ${n} ${a}ms`:"none",backfaceVisibility:"hidden",...m,...s},children:e})},c8={subtle:{variant:"fade",durationMs:180},smooth:{variant:"slide-up",durationMs:220},snappy:{variant:"scale",durationMs:160}};export{NV as AIBrowserGlow,IV as AgentPanel,Vs as Button,US as CAINavProvider,qu as CAmapChart,Kl as CAppHeader,T5 as CAppPageLayout,lO as CAuthPage,oi as CBarChart,el as CChartCard,Fu as CComboChart,Xu as CCustomizeAgent,TB as CDetailInfoPage,_p as CDetailSearchAiBar,Ll as CDetailSectionCard,Nu as CFishboneChart,$u as CGoogleMapChart,_u as CGraphCharts,Mu as CGraphKpiCards,fl as CGraphReport,Lu as CHeatmapChart,qB as CKanbanBoard,Jp as CKanbanBucket,Uc as CKanbanCard,Cp as CLayoutManagement,fn as CLayoutManager,Bu as CLineChart,jn as CMessageBox,du as CPageLayout,s8 as CPageTransition,ll as CPieChart,mE as CPivotTable,Af as CPlanningGantt,r8 as CPlanningLayout,Ar as CSmartFilter,UA as CSmartTable,YA as CStandardPage,aa as CTable,OA as CTableBody,HA as CTableCell,WA as CTableContainer,$A as CTableHead,GA as CTableRow,cu as CValueHelp,xl as CVariantManagement,ip as CVariantManager,vd as CVoiceWaveOverlay,Ou as CWaterfallChart,pi as CodeBlock,EV as CopilotChat,KI as GlobalMessage,bi as MarkdownRenderer,mi as MathBlock,Dc as MermaidBlock,$s as NavigationIsland,_n as ORBCAFE_I18N_MESSAGES,Ki as OrbcafeI18nProvider,c8 as PAGE_TRANSITION_PRESETS,GL as PAppPageLayout,BE as PBarcodeScanner,Sg as PNavIsland,_E as PNumericKeypad,fg as PSmartFilter,TS as PTable,VE as PTouchCard,yg as PWorkloadNav,_m as PivotChartPanel,pf as StdChat,Bc as TableBlock,Fl as ThinkBlock,Hs as TreeMenu,ez as VoiceNavigatorProvider,jL as VoiceWaveOverlay,dl as buildAmapEmbedUrl,ni as buildGoogleMapEmbedUrl,XR as buildGoogleMapIframe,Vf as buttonVariants,om as createKanbanBoardModel,pr as findKanbanCard,RI as message,Rr as messageManager,Hl as moveKanbanCard,Al as parseMarkdownTable,j2 as renderMarkdown,Sp as resolveVariantFilters,Il as resolveVariantLayout,KS as useAINav,p2 as useAmapEmbedUrl,WV as useAuthPage,Zp as useDetailInfo,u2 as useGoogleMapEmbedUrl,i2 as useGraphChartData,bl as useGraphInteraction,dn as useGraphReport,YB as useKanbanBoard,Yd as useNavigationIsland,ae as useOrbcafeI18n,SE as usePadLayout,IE as usePadRecordEditor,gm as usePageLayout,yE as usePivotTable,vf as usePlanningGantt,fO as usePlanningLayout,r2 as useStandardReport,xn as useVoiceInput,tz as useVoiceNavigator};
70
+ `,vV=({active:e=false,colors:t=eT,zIndex:o=2147483e3})=>{let r={"--orbcafe-ai-glow-a":t[0],"--orbcafe-ai-glow-b":t[1],"--orbcafe-ai-glow-c":t[2],"--orbcafe-ai-glow-z-index":o};return jsxs(Fragment,{children:[jsx("style",{children:tT}),jsx("div",{className:"orbcafe-ai-browser-glow","data-active":e?"true":"false",style:r,"aria-hidden":"true"})]})};var wV=({defaultMode:e="login",onLogin:t,onRegister:o,onForgotPassword:r}={})=>{let[a,n]=useState(e),[i,s]=useState(false),d=useCallback(async m=>{s(true);try{await m?.();}finally{s(false);}},[]),l=useCallback(m=>d(()=>t?.(m)),[t,d]),c=useCallback(m=>d(()=>o?.(m)),[o,d]),g=useCallback(m=>d(()=>r?.(m)),[r,d]),f=useMemo(()=>({mode:a,loading:i,onModeChange:n,onLogin:l,onRegister:c,onForgotPassword:g}),[g,l,c,i,a]);return {mode:a,loading:i,setMode:n,authPageProps:f}};var Gd=({label:e,...t})=>jsx(FormControlLabel,{control:jsx(Checkbox,{...t}),label:e});var Zi=forwardRef((e,t)=>jsx(Paper,{ref:t,...e,elevation:e.elevation||1,sx:{p:2,mb:2,...e.sx}}));Zi.displayName="CPaper";var hT={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."},UV=({mode:e,defaultMode:t="login",onModeChange:o,onLogin:r,onRegister:a,onForgotPassword:n,loading:i=false,logo:s,copy:d,sx:l})=>{let c=useTheme(),g=e!==void 0,[f,m]=useState(t),b=e??f,v=useMemo(()=>({...hT,...d}),[d]),[u,C]=useState({username:"demo@orbcafe.local",password:"orbcafe-demo",remember:true}),[p,h]=useState({name:"",email:"",password:"",confirmPassword:"",acceptedTerms:false}),[x,w]=useState({email:""}),[E,R]=useState(""),T=M=>{g||m(M),R(""),o?.(M);},I=async M=>{M.preventDefault(),await r?.(u),R("Demo login accepted. No real authentication request was sent.");},k=async M=>{M.preventDefault(),await a?.(p),R("Demo registration saved locally for this screen.");},S=async M=>{M.preventDefault(),await n?.(x),R("Demo reset link request created. No email was sent.");},A=b==="login"?v.loginTitle:b==="register"?v.registerTitle:v.forgotTitle,P=b==="login"?v.loginSubtitle:b==="register"?v.registerSubtitle:v.forgotSubtitle;return jsxs(Box,{sx:{minHeight:"100vh",display:"grid",gridTemplateColumns:{xs:"1fr",md:"minmax(320px, 0.9fr) minmax(420px, 1.1fr)"},background:c.palette.mode==="dark"?"linear-gradient(135deg, #071018 0%, #151515 48%, #101827 100%)":"linear-gradient(135deg, #eef3f8 0%, #ffffff 52%, #e8f2f0 100%)",...l},children:[jsxs(Box,{sx:{display:{xs:"none",md:"flex"},flexDirection:"column",justifyContent:"space-between",p:{md:6,lg:8},borderRight:`1px solid ${c.palette.divider}`},children:[jsxs(Stack,{spacing:4,children:[jsx(Box,{children:s}),jsxs(Stack,{spacing:2,children:[jsx(Typography,{sx:{fontSize:14,fontWeight:700,color:"primary.main",textTransform:"uppercase"},children:v.productName}),jsx(Typography,{sx:{fontSize:{md:34,lg:42},lineHeight:1.06,fontWeight:800},children:v.headline}),jsx(Typography,{sx:{maxWidth:460,color:"text.secondary",fontSize:16,lineHeight:1.7},children:v.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(Zi,{elevation:0,sx:{width:"100%",maxWidth:460,m:0,p:{xs:2.5,sm:4},borderRadius:3,border:`1px solid ${c.palette.divider}`,backgroundColor:c.palette.mode==="dark"?"rgba(15, 23, 42, 0.86)":"rgba(255, 255, 255, 0.88)",backdropFilter:"blur(18px)",boxShadow:c.palette.mode==="dark"?"0 24px 80px rgba(0,0,0,0.34)":"0 24px 80px rgba(15,23,42,0.10)"},children:jsxs(Stack,{spacing:3,children:[jsxs(Stack,{spacing:1,children:[jsx(Box,{sx:{display:{xs:"block",md:"none"},mb:1},children:s}),jsx(Typography,{sx:{fontSize:28,fontWeight:800},children:A}),jsx(Typography,{sx:{color:"text.secondary"},children:P})]}),E&&jsx(Alert,{severity:"success",children:E}),b==="login"&&jsx(Box,{component:"form",onSubmit:I,children:jsxs(Stack,{spacing:2,children:[jsx(ko,{label:"Email or user ID",value:u.username,onChange:M=>C(B=>({...B,username:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Vf,{fontSize:"small"})})}}),jsx(ko,{label:"Password",type:"password",value:u.password,onChange:M=>C(B=>({...B,password:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(gT,{fontSize:"small"})})}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:2},children:[jsx(Gd,{label:"Remember me",checked:u.remember,onChange:M=>C(B=>({...B,remember:M.target.checked}))}),jsx(lr,{type:"button",variant:"text",size:"small",onClick:()=>T("forgot"),children:"Forgot?"})]}),jsx(lr,{type:"submit",size:"large",disabled:i,children:"Sign in"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["New user?"," ",jsx(lr,{type:"button",variant:"text",size:"small",onClick:()=>T("register"),sx:{minWidth:0,p:0},children:"Register"})]})]})}),b==="register"&&jsx(Box,{component:"form",onSubmit:k,children:jsxs(Stack,{spacing:2,children:[jsx(ko,{label:"Full name",value:p.name,onChange:M=>h(B=>({...B,name:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Vf,{fontSize:"small"})})}}),jsx(ko,{label:"Work email",type:"email",value:p.email,onChange:M=>h(B=>({...B,email:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Of,{fontSize:"small"})})}}),jsx(ko,{label:"Password",type:"password",value:p.password,onChange:M=>h(B=>({...B,password:M.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(fT,{fontSize:"small"})})}}),jsx(ko,{label:"Confirm password",type:"password",value:p.confirmPassword,onChange:M=>h(B=>({...B,confirmPassword:M.target.value}))}),jsx(Gd,{label:"I accept the demo workspace terms",checked:p.acceptedTerms,onChange:M=>h(B=>({...B,acceptedTerms:M.target.checked}))}),jsx(lr,{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(lr,{type:"button",variant:"text",size:"small",onClick:()=>T("login"),sx:{minWidth:0,p:0},children:"Sign in"})]})]})}),b==="forgot"&&jsx(Box,{component:"form",onSubmit:S,children:jsxs(Stack,{spacing:2,children:[jsx(ko,{label:"Work email",type:"email",value:x.email,onChange:M=>w({email:M.target.value}),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Of,{fontSize:"small"})})}}),jsx(lr,{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(lr,{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 yT={keyword:{value:"",operator:"contains"},status:{value:"",operator:"equals"},owner:{value:"",operator:"contains"},workCenter:{value:"",operator:"contains"}},xT=[{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"}],Hf=({tasks:e,appId:t,tableKey:o,defaultScale:r="week",defaultSelectedTaskId:a,initialFilters:n,filterFields:i,filterAppId:s,filterTableKey:d,serviceUrl:l,variantService:c,layout:g,columns:f,page:m,rowsPerPage:b,rowsPerPageOptions:v,count:u,onPageChange:C,onRowsPerPageChange:p,onFilterSearch:h,onFilterVariantLoad:x,enableRowReorder:w,onTaskReorder:E,onLayoutIdChange:R,onLayoutSave:T})=>{let I=t??s??"planning-gantt",k=o??d??"planning",[S,A]=useState(r),[P,M]=useState(a??e[0]?.id??""),[B,Z]=useState(""),[N,V]=useState(null),[X,j]=useState({...yT,...n}),H=useMemo(()=>{let te=String(X.keyword?.value??"").trim().toLowerCase(),Ie=String(X.status?.value??"").trim(),Ye=String(X.owner?.value??"").trim().toLowerCase(),Ue=String(X.workCenter?.value??"").trim().toLowerCase(),be=X.dateRange?.value,Ke=be?.[0]?Ar(be[0]):null,lt=be?.[1]?Ar(be[1]):null;return e.filter(Ee=>{if(te&&![Ee.id,Ee.code,Ee.title,Ee.project,Ee.workCenter,Ee.owner?.name].join(" ").toLowerCase().includes(te)||Ie&&Ee.status!==Ie||Ye&&!String(Ee.owner?.name??"").toLowerCase().includes(Ye)||Ue&&!String(Ee.workCenter??"").toLowerCase().includes(Ue))return false;if(Ke||lt){let Oe=Ar(Ee.startDate),qe=Ar(Ee.endDate),pt=Ke?qe.isAfter(Ke)||qe.isSame(Ke,"day"):true,$e=lt?Oe.isBefore(lt)||Oe.isSame(lt,"day"):true;if(!pt||!$e)return false}return true})},[X,e]);useEffect(()=>{H.length!==0&&(H.some(te=>te.id===P)||M(H[0].id));},[H,P]);let ee=useCallback(te=>{M(te.id);},[]),pe=useCallback(te=>{Z(te),R?.(te);},[R]),De=useCallback(te=>{V(Ie=>({key:(Ie?.key??0)+1,variant:te})),x?.(te);},[x]),xe=useMemo(()=>({appId:I,tableKey:k,fields:i??xT,filters:X,onFilterChange:j,onVariantLoad:De,onSearch:h??(()=>{}),currentLayoutId:B,layoutRefs:[{tableKey:k,layoutId:B||null}],variantService:c,serviceUrl:l}),[B,i,X,De,h,I,k,l,c]),se=useMemo(()=>({appId:I,tableKey:k,serviceUrl:l,tasks:H,columns:f,scale:S,onScaleChange:A,page:m,rowsPerPage:b,rowsPerPageOptions:v,count:u,onPageChange:C,onRowsPerPageChange:p,selectedTaskId:P,onTaskSelect:ee,enableRowReorder:w,onTaskReorder:E,layout:g,layoutVariant:N?.variant,layoutVariantLoadKey:N?.key,onLayoutIdChange:pe,onLayoutSave:T}),[f,u,w,H,pe,g,N?.key,N?.variant,C,p,T,E,ee,m,I,k,b,v,S,l,P]);return {scale:S,setScale:A,selectedTaskId:P,setSelectedTaskId:M,filters:X,setFilters:j,filteredTasks:H,smartFilterProps:xe,planningGanttProps:se}};var QV=e=>{let t=Hf(e),o=useMemo(()=>({filterProps:t.smartFilterProps,ganttProps:t.planningGanttProps}),[t.planningGanttProps,t.smartFilterProps]);return {...t,layoutProps:o}};var Wf=e=>jsx(Chip,{...e,size:e.size||"small",variant:e.variant||"outlined"});var va=forwardRef(({tooltip:e,...t},o)=>{let r=jsx(IconButton,{ref:o,...t,size:t.size||"small"});return e?jsx(Tooltip,{title:e,children:r}):r});va.displayName="CIconButton";var Gf=({label:e,options:t,minWidth:o=120,...r})=>jsxs(FormControl,{fullWidth:true,size:"small",sx:{minWidth:o},children:[e&&jsx(InputLabel,{children:e}),jsx(Select,{label:e,...r,children:t.map(a=>jsx(MenuItem,{value:a.value,children:a.label},a.value))})]});Ar.extend(BT);var Zd=[{value:"hour",label:"Hour",width:56},{value:"day",label:"Day",width:46},{value:"week",label:"Week",width:78},{value:"month",label:"Month",width:104}],Xd=56,Za=58,Qi=8,Yd=260,tI=320,Ks="0.85rem",Xa="220ms cubic-bezier(0.2, 0, 0, 1)",_f={"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"}},oI=e=>e?_f[e]?.label??e:"Planned",rI=e=>e?_f[e]?.color??"default":"info",qf=e=>Math.min(100,Math.max(0,e??0)),jf=(e,t=0)=>e.flatMap(o=>[{...o,level:t},...jf(o.children??[],t+1)]),aI=e=>({id:e.id,code:e.code??e.id,title:e.title,titleSub:e.project??e.workCenter??"General",project:e.project??"",workCenter:e.workCenter??"",owner:e.owner?.name??"Unassigned",status:oI(e.status),statusTone:e.status??"planned",progress:qf(e.progress),startDate:e.startDate,endDate:e.endDate,color:e.color,reorderable:e.reorderable!==false}),Zf=(e,t)=>t==="month"?e.startOf("month"):t==="week"?e.startOf("week"):t==="day"?e.startOf("day"):e.startOf("hour"),Xf=(e,t)=>t==="month"?e.endOf("month"):t==="week"?e.endOf("week"):t==="day"?e.endOf("day"):e.endOf("hour"),nI=(e,t,o)=>{let r=[],a=Zf(e,o),n=Xf(t,o);for(;a.isBefore(n)||a.isSame(n);){let i=o==="month"?a.add(1,"month"):o==="week"?a.add(1,"week"):o==="day"?a.add(1,"day"):a.add(1,"hour");r.push({key:`${o}-${a.valueOf()}`,label:o==="month"?a.format("MMM YYYY"):o==="week"?a.format("MMM D"):o==="day"?a.format("D"):a.format("HH:mm"),contextLabel:o==="hour"?a.format("MMM D"):o==="day"?a.format("MMM"):o==="week"?`W${a.isoWeek()}`:void 0,title:o==="hour"?a.format("MMM D, YYYY HH:mm"):o==="day"?a.format("MMM D, YYYY"):o==="week"?`${a.format("MMM D, YYYY")} - Week ${a.isoWeek()}`:void 0,start:a,end:i}),a=i;}return r},Qd=(e,t,o)=>{let r=0;for(let a of t){if(e.isBefore(a.start))return r;if(e.isBefore(a.end)){let n=Math.max(1,a.end.valueOf()-a.start.valueOf()),i=Math.max(0,e.valueOf()-a.start.valueOf());return r+i/n*o}r+=o;}return r},Yf=({appId:e="planning-gantt",tableKey:t="planning",serviceUrl:o,title:r="Project Plan",extraTools:a,bodyHeight:n=560,tasks:i,columns:s,scale:d="week",onScaleChange:l,page:c,rowsPerPage:g=20,rowsPerPageOptions:f=[20,50,100,-1],count:m,onPageChange:b,onRowsPerPageChange:v,timelineStart:u,timelineEnd:C,selectedTaskId:p,onTaskSelect:h,enableRowReorder:x=true,onTaskReorder:w,layout:E,layoutVariant:R,layoutVariantLoadKey:T,onLayoutIdChange:I,onLayoutSave:k,emptyLabel:S="No planning tasks available.",sx:A})=>{let P=useTheme(),{t:M}=oe(),B=useRef(null),Z=useRef(null),N=useRef(null),V=useRef(false),[X,j]=useState(null),[H,ee]=useState("content"),[pe,De]=useState(null),[xe,se]=useState(0),[te,Ie]=useState({}),[Ye,Ue]=useState(Xd),[be,Ke]=useState([]),lt=useRef(void 0),[Ee,Oe]=useState({activeId:null,overId:null}),[qe,pt]=useState(null),[$e,q]=useState(false),Le=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:4}})),ve=useRef(null),Pe=useMemo(()=>jf(i),[i]),at=useMemo(()=>{if(be.length===0)return Pe;let D=new Map(Pe.map(ce=>[ce.id,ce])),_=be.map(ce=>D.get(ce)).filter(ce=>!!ce),Q=new Set(_.map(ce=>ce.id));return [..._,...Pe.filter(ce=>!Q.has(ce.id))]},[Pe,be]),We=useMemo(()=>new Map(at.map(D=>[D.id,D])),[at]),re=useMemo(()=>at.map(D=>aI(D)),[at]),ke=useMemo(()=>new Map(re.map(D=>[D.id,D])),[re]),je=useMemo(()=>[{id:"code",label:"ID",minWidth:90},{id:"title",label:"Task",minWidth:260,render:(D,_)=>jsxs(Stack,{spacing:.2,children:[jsx(Typography,{sx:{fontSize:15,fontWeight:700,lineHeight:1.2},children:_.title}),jsx(Typography,{sx:{fontSize:13,color:"text.secondary"},children:_.titleSub})]})},{id:"owner",label:"Owner",minWidth:170},{id:"status",label:"Status",minWidth:130,render:(D,_)=>jsx(Wf,{label:_.status,color:rI(_.statusTone),size:"small"})},{id:"progress",label:"Progress",minWidth:140,numeric:true,render:D=>jsxs(Stack,{spacing:.6,children:[jsxs(Typography,{variant:"caption",sx:{color:"text.secondary"},children:[D,"%"]}),jsx(LinearProgress,{variant:"determinate",value:D,sx:{height:6,borderRadius:999}})]})},{id:"startDate",label:"Start",minWidth:120},{id:"endDate",label:"End",minWidth:120}],[]),St=useMemo(()=>{if(!s||s.length===0)return je;let D=new Map(je.map(_=>[_.id,_]));return s.map(_=>{let Q=D.get(_.id),ce=_.width??Q?.minWidth??120,Be={id:_.id,label:_.label,minWidth:ce};if(Q?.numeric&&(Be.numeric=true),_.render){let He=_.render;return Be.render=(rt,ge)=>{let Je=We.get(ge.id);return He(Je||ge)},Be}return Q?.render?(Be.render=Q.render,Be):(Be.render=(He,rt)=>{let ge=rt[_.id];if(ge!=null&&String(ge).length>0)return String(ge);let ct=We.get(rt.id)?.[_.id];return ct!=null&&String(ct).length>0?String(ct):"-"},Be)})},[s,je,We]),K=Cn({appId:e,tableKey:t,title:r,columns:St,rows:re,rowKey:"id",page:c,rowsPerPage:g,rowsPerPageOptions:f,count:m??re.length,onPageChange:b,onRowsPerPageChange:v,showSummary:false,layout:E,onLayoutSave:k}),Fe=e?jsx(vn,{appId:e,tableKey:t,currentLayoutData:K.currentLayoutData,onLayoutLoad:K.handleLayoutLoad,targetLayoutId:K.layoutIdToLoad,activeLayoutId:K.currentLayoutId,serviceUrl:o}):null,ye=K.visibleRows,st=K.rowsPerPage===-1?1:Math.max(1,Math.ceil(K.totalDisplayCount/K.rowsPerPage)),W=Math.max(0,Math.min(K.page,st-1)),ue=Math.min(W+1,st),_e=W>0,Qe=W<st-1&&K.rowsPerPage!==-1;useEffect(()=>{let D=Pe.map(_=>_.id);Ke(_=>{let Q=new Set(D),ce=_.filter(ge=>Q.has(ge)),Be=new Set(ce),He=D.filter(ge=>!Be.has(ge)),rt=[...ce,...He];return rt.length===_.length&&rt.every((ge,Je)=>ge===_[Je])?_:rt});},[Pe]),useEffect(()=>{T===void 0||!R||lt.current!==T&&(lt.current=T,K.handleVariantLoad(R));},[K,R,T]),useEffect(()=>{I?.(K.currentLayoutId);},[K.currentLayoutId,I]);let mt=D=>D.type==="group"?`group-${D.id}`:`row-${(D.data||D)?.id}`,yt=useMemo(()=>{let D=re.map(Je=>Ar(Je.startDate)),_=re.map(Je=>Ar(Je.endDate)),Q=u?Ar(u):D.reduce((Je,ct)=>ct.isBefore(Je)?ct:Je,D[0]??Ar()),ce=C?Ar(C):_.reduce((Je,ct)=>ct.isAfter(Je)?ct:Je,_[0]??Ar().add(30,"day")),Be=d==="month"?"month":d==="week"?"week":d==="day"?"day":"hour",He=d==="month"?"month":d==="week"?"week":d==="day"?"day":"hour",rt=d==="hour"?12:1,ge=d==="hour"?12:1;return {start:Zf(Q.subtract(rt,Be),d),end:Xf(ce.add(ge,He),d)}},[re,d,C,u]),oo=Zd.find(D=>D.value===d)??Zd[1],xo=Array.isArray(a)?a:a?[a]:[],xt=useMemo(()=>nI(yt.start,yt.end,d),[yt.end,yt.start,d]),nr=xt.length*oo.width,Rt=xt.length>0?100/xt.length:100,ir=xt.length>0?`repeat(${xt.length}, minmax(${oo.width}px, 1fr))`:"1fr",ro=xt.length>0?`calc(100% / ${xt.length}) 100%`:"100% 100%",z=(K.columns||[]).filter(D=>K.visibleColumns.includes(D.id)).reduce((D,_)=>D+(K.columnWidths?.[_.id]||_.minWidth||100),0)+(K.grouping.length>0?72:0),O=H==="manual"&&X!==null?X:z,$=pe==="table",le=pe==="timeline",de=pe==="timeline",Te=pe==="table",Ce=!de&&!Te,Ae=()=>{let D=xe||B.current?.clientWidth||0;return D>0?Math.max(Yd,D-Qi-tI):Math.max(Yd,z)},Ge=D=>Math.min(Math.max(D,Yd),Ae()),vt=(()=>{if(xe<=0)return null;let D=Ce?Qi:0;if($)return {tableWidth:xe,splitterWidth:D,timelineWidth:0};if(le)return {tableWidth:0,splitterWidth:D,timelineWidth:xe};if(H==="even"){let Q=Math.max(0,(xe-D)/2);return {tableWidth:Q,splitterWidth:D,timelineWidth:Math.max(0,xe-D-Q)}}let _=Ge(O);return {tableWidth:_,splitterWidth:D,timelineWidth:Math.max(0,xe-D-_)}})(),Pt=vt?`${vt.tableWidth}px ${vt.splitterWidth}px ${vt.timelineWidth}px`:$?"minmax(0, 1fr) 0px 0px":le?"0px 0px minmax(0, 1fr)":H==="even"?`minmax(0, 1fr) ${Qi}px minmax(0, 1fr)`:`${O}px ${Qi}px minmax(0, 1fr)`;useEffect(()=>{H==="manual"&&j(D=>D===null?null:Ge(D));},[H,z,xe]);let bt=D=>{D.preventDefault(),D.currentTarget.setPointerCapture(D.pointerId),De(null),ee("manual"),ve.current={startX:D.clientX,startWidth:Z.current?.getBoundingClientRect().width??O};let _=ce=>{let Be=ve.current;if(!Be)return;let He=Ge(Be.startWidth+ce.clientX-Be.startX);j(He);},Q=()=>{ve.current=null,window.removeEventListener("pointermove",_),window.removeEventListener("pointerup",Q),document.body.style.cursor="",document.body.style.userSelect="";};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("pointermove",_),window.addEventListener("pointerup",Q);},Po=()=>{De(null),ee("even"),j(null);},qt=D=>!x||!D?false:ke.get(D)?.reorderable!==false,zt=(D,_)=>{if(!D||!_||D===_||!qt(D)||!qt(_))return false;if(K.grouping.length===0)return true;let Q=ke.get(D),ce=ke.get(_);return !Q||!ce?false:K.grouping.every(Be=>Q[Be]===ce[Be])},vo=(D,_)=>{if(!zt(D,_))return;let Q=ye.filter(dt=>dt.type!=="group").map(dt=>String((dt.data||dt)?.id)),ce=Q.indexOf(D),Be=Q.indexOf(_);if(ce<0||Be<0)return;let He=[...Q];[He[ce],He[Be]]=[He[Be],He[ce]];let rt=new Set(Q),ge=at.map(dt=>dt.id),Je=[...He,...ge.filter(dt=>!rt.has(dt))],ct=We.get(D),Dt=We.get(_);if(K.setOrder("asc"),K.setOrderBy(""),Ke(Je),ct&&Dt){let{level:dt,...Jt}=ct,{level:ao,...Co}=Dt,$t=Je.reduce((no,Ct)=>{let Zt=We.get(Ct);if(Zt){let{level:yr,...Zo}=Zt;no.push(Zo);}return no},[]);w?.($t,{activeTask:Jt,targetTask:Co});}},jt=(D,_)=>{if(!qt(_.id)){D.preventDefault();return}D.stopPropagation(),D.dataTransfer.effectAllowed="move",D.dataTransfer.setData("text/plain",_.id),Oe({activeId:_.id,overId:null}),h?.(We.get(_.id)||_);},nt=(D,_)=>{if(!zt(Ee.activeId,_)){Oe(Q=>Q.overId===null?Q:{...Q,overId:null});return}D.preventDefault(),D.stopPropagation(),D.dataTransfer.dropEffect="move",Oe(Q=>Q.overId===_?Q:{...Q,overId:_});},qo=(D,_)=>{let Q=Ee.activeId||D.dataTransfer.getData("text/plain");if(!zt(Q,_)){Oe({activeId:null,overId:null});return}D.preventDefault(),D.stopPropagation(),vo(Q,_),Oe({activeId:null,overId:null});},Eo=()=>{Oe({activeId:null,overId:null});},jo=D=>{if(V.current)return;let _=D==="table"?Z.current:N.current,Q=D==="table"?N.current:Z.current;!_||!Q||(V.current=true,Q.scrollTop=_.scrollTop,window.requestAnimationFrame(()=>{V.current=false;}));};return useLayoutEffect(()=>{let D=B.current;if(!D){se(0);return}let _=0,Q=()=>{window.cancelAnimationFrame(_),_=window.requestAnimationFrame(()=>{let Be=D.clientWidth;se(He=>Math.abs(He-Be)<.5?He:Be);});};if(Q(),typeof ResizeObserver>"u")return window.addEventListener("resize",Q),()=>{window.cancelAnimationFrame(_),window.removeEventListener("resize",Q);};let ce=new ResizeObserver(Q);return ce.observe(D),window.addEventListener("resize",Q),()=>{window.cancelAnimationFrame(_),ce.disconnect(),window.removeEventListener("resize",Q);}},[re.length]),useLayoutEffect(()=>{if(!p||Te)return;let D=N.current,_=Z.current;if(!D)return;let Q=`row-${p}`,ce=Array.from(D.querySelectorAll("[data-planning-timeline-row-key]")).find(rt=>rt.dataset.planningTimelineRowKey===Q),Be=ke.get(p);if(!ce||!Be)return;let He=window.requestAnimationFrame(()=>{let rt=D.getBoundingClientRect(),ge=ce.getBoundingClientRect(),Je=Math.max(1,D.clientHeight-Ye),ct=D.scrollTop+ge.top-rt.top-Ye-(Je-ge.height)/2;V.current=true,D.scrollTop=Math.max(0,ct),_&&!de&&(_.scrollTop=D.scrollTop);let Dt=Math.max(1,D.scrollWidth),dt=xt.length>0?Dt/xt.length:oo.width,Jt=Qd(Ar(Be.startDate),xt,dt),ao=Math.max(0,Jt-dt);D.scrollLeft=Math.min(ao,Math.max(0,Dt-D.clientWidth)),window.requestAnimationFrame(()=>{V.current=false;});});return ()=>window.cancelAnimationFrame(He)},[oo.width,Ye,p,de,ke,Te,ye,xt]),useLayoutEffect(()=>{let D=Z.current;if(!D)return;let _=0,Q=0,ce=false,Be=()=>{if(ce)return;let ao=D.querySelector("thead"),Co=Array.from(D.querySelectorAll("tbody tr[data-planning-row-key]"));if(Co.length===0)return;let $t=ao?.getBoundingClientRect().height||Xd,no={};Co.forEach(Ct=>{let Zt=Ct.dataset.planningRowKey;Zt&&(no[Zt]=Ct.getBoundingClientRect().height);}),Ue(Ct=>Math.abs(Ct-$t)<.01?Ct:$t),Ie(Ct=>{let Zt=Object.keys(Ct),yr=Object.keys(no);return Zt.length===yr.length&&yr.every(Zo=>Math.abs((Ct[Zo]??0)-no[Zo])<.01)?Ct:no});},He=()=>{window.cancelAnimationFrame(_),_=window.requestAnimationFrame(Be);};if(Be(),window.cancelAnimationFrame(Q),Q=window.requestAnimationFrame(()=>{Q=window.requestAnimationFrame(Be);}),typeof document<"u"&&document.fonts?.ready&&document.fonts.ready.then(()=>{ce||He();}).catch(()=>{}),typeof ResizeObserver>"u")return window.addEventListener("resize",He),()=>{ce=true,window.cancelAnimationFrame(_),window.cancelAnimationFrame(Q),window.removeEventListener("resize",He);};let rt=new ResizeObserver(He),ge=D.querySelector("table"),Je=D.querySelector("tbody"),ct=D.querySelector("thead");ge&&rt.observe(ge),ct&&rt.observe(ct);let Dt=new WeakSet,dt=()=>{D.querySelectorAll("tbody tr[data-planning-row-key]").forEach(ao=>{Dt.has(ao)||(rt.observe(ao),Dt.add(ao));});};dt();let Jt=null;return Je&&typeof MutationObserver<"u"&&(Jt=new MutationObserver(()=>{dt(),He();}),Jt.observe(Je,{childList:true,subtree:true,characterData:true})),window.addEventListener("resize",He),()=>{ce=true,window.cancelAnimationFrame(_),window.cancelAnimationFrame(Q),rt.disconnect(),Jt?.disconnect(),window.removeEventListener("resize",He);}},[ye,K.visibleColumns,K.grouping,K.columnWidths]),jsxs(Zi,{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,...A},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:.75,alignItems:"center",sx:{p:.5,borderRadius:2,backgroundColor:"action.hover",minHeight:38},children:[jsx(Typography,{sx:{fontSize:Ks,color:"text.secondary",whiteSpace:"nowrap"},children:M("table.toolbar.itemsPerPage")}),jsx(Select,{size:"small",variant:"standard",value:K.rowsPerPage,disableUnderline:true,onChange:D=>K.setRowsPerPage(Number(D.target.value)),sx:{fontSize:Ks,fontWeight:600,color:"text.primary",minWidth:64,height:30,display:"flex",alignItems:"center","& .MuiSelect-select":{py:0,pl:.75,pr:"22px !important",minHeight:`${30}px !important`,height:30,display:"flex",alignItems:"center",boxSizing:"border-box"},"& .MuiSelect-icon":{right:0,fontSize:20,color:"text.primary"}},children:f.map(D=>jsx(MenuItem,{value:D,sx:{fontSize:Ks},children:D===-1?M("common.all"):D},`planning-rows-per-page-${D}`))}),jsx(IconButton,{size:"small",onClick:()=>K.setPage(Math.max(W-1,0)),disabled:!_e,sx:{...Cr,color:"text.primary"},children:jsx(vb,{})}),jsx(Typography,{sx:{fontSize:Ks,fontWeight:600,minWidth:88,textAlign:"center",color:"text.primary"},children:M("table.toolbar.pageOf",{current:ue,total:st})}),jsx(IconButton,{size:"small",onClick:()=>K.setPage(Math.min(W+1,st-1)),disabled:!Qe,sx:{...Cr,color:"text.primary"},children:jsx(Kf,{})})]}),jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",sx:{flexWrap:"wrap"},children:[xo.length>0&&jsx(Stack,{direction:"row",spacing:.75,alignItems:"center",children:xo.map((D,_)=>jsx(Box,{sx:{display:"flex",alignItems:"center"},children:D},`planning-extra-tool-${_}`))}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(va,{tooltip:"Column visibility",onClick:D=>K.setAnchorEl(D.currentTarget),color:"default",children:jsx(ub,{fontSize:"small"})}),jsx(va,{tooltip:"Group by",onClick:D=>K.setGroupAnchorEl(D.currentTarget),color:"default",children:jsx(gb,{fontSize:"small"})}),jsx(va,{tooltip:"Sort by...",onClick:()=>q(true),color:K.sortBy.length>0||K.orderBy?"primary":"default",children:jsx(JT,{fontSize:"small"})})]}),Fe&&jsx(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:Fe}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(va,{tooltip:"Expand task table",onClick:()=>De("table"),color:pe==="table"?"primary":"default",children:jsx(YT,{fontSize:"small"})}),jsx(va,{tooltip:"Split evenly",onClick:Po,color:pe===null&&H==="even"?"primary":"default",children:jsx(QT,{fontSize:"small"})}),jsx(va,{tooltip:"Expand timeline",onClick:()=>De("timeline"),color:pe==="timeline"?"primary":"default",children:jsx(XT,{fontSize:"small"})})]}),jsx(Box,{sx:{minWidth:120},children:jsx(Gf,{label:"",value:d,options:Zd.map(D=>({value:D.value,label:D.label})),onChange:D=>l?.(D.target.value),sx:{"& .MuiSelect-select":{fontSize:"0.92rem",py:.65},"& .MuiSvgIcon-root":{fontSize:20}}})})]})]}),re.length===0?jsx(Box,{sx:{minHeight:240,display:"grid",placeItems:"center",color:"text.secondary"},children:S}):jsx(Box,{sx:{overflow:"hidden",flex:1,minHeight:0},children:jsxs(Box,{ref:B,sx:{height:"100%",display:"grid",gridTemplateColumns:Pt,minWidth:0,transition:`grid-template-columns ${Xa}`},children:[jsx(TableContainer,{"data-planning-scroll-pane":"table",ref:Z,onScroll:()=>jo("table"),sx:{width:"100%",minWidth:0,maxWidth:"100%",height:n,overflowX:"auto",overflowY:"auto",opacity:de?0:1,transform:de?"translateX(-10px)":"translateX(0)",pointerEvents:de?"none":"auto",transition:`opacity ${Xa}, transform ${Xa}`},children:jsx(DndContext,{sensors:Le,collisionDetection:closestCenter,modifiers:[restrictToHorizontalAxis],onDragEnd:D=>{let _=D?.active?.id,Q=D?.over?.id;typeof _=="string"&&typeof Q=="string"&&K.handleColumnReorder(_,Q);},children:jsxs(Table,{size:"small",stickyHeader:true,sx:{tableLayout:"fixed",width:z,"& thead .MuiTableCell-root":{height:Xd,py:0,lineHeight:1.15,boxSizing:"border-box"}},children:[jsx(al,{columns:K.columns,visibleColumns:K.visibleColumns,order:K.order,orderBy:K.orderBy,sortBy:K.sortBy,onRequestSort:K.handleRequestSort,onContextMenu:(D,_)=>{D.preventDefault(),D.stopPropagation(),pt({mouseX:D.clientX+2,mouseY:D.clientY-6,columnId:_});},grouping:K.grouping,isAllExpanded:K.isAllExpanded,handleToggleAll:K.handleToggleAll,columnWidths:K.columnWidths,onColumnResize:K.handleColumnResize,enableColumnReorder:true}),jsx(TableBody,{children:ye.map(D=>{let _=mt(D);if(D.type==="group")return jsxs(TableRow,{"data-planning-row-key":_,sx:{height:Za,backgroundColor:P.palette.action.hover},children:[K.grouping.length>0&&jsx(TableCell,{sx:{...vr,height:Za,borderBottom:`1px solid ${P.palette.divider}`},children:jsx(IconButton,{size:"small",onClick:()=>K.toggleGroupExpand(D.id),sx:Cr,children:D.isExpanded?jsx($b,{}):jsx(Kf,{})})}),jsx(TableCell,{colSpan:K.visibleColumns.length,sx:{height:Za,py:0,borderBottom:`1px solid ${P.palette.divider}`},children:jsxs(Typography,{sx:{fontSize:13,fontWeight:700},children:[D.field,": ",D.value," (",D.count,")"]})})]},D.id);let Q=D.data||D,ce=Q.id===p,Be=qt(Q.id),He=Ee.activeId===Q.id,rt=Ee.overId===Q.id&&zt(Ee.activeId,Q.id);return jsxs(TableRow,{"data-planning-row-key":_,draggable:Be,hover:true,selected:ce,onDragStart:ge=>jt(ge,Q),onDragOver:ge=>nt(ge,Q.id),onDragEnter:ge=>nt(ge,Q.id),onDrop:ge=>qo(ge,Q.id),onDragEnd:Eo,onClick:()=>h?.(We.get(Q.id)||Q),sx:{cursor:He?"grabbing":Be?"grab":h?"pointer":"default",height:Za,opacity:He?.56:1,"& .MuiTableCell-root":rt?{borderTop:`2px solid ${P.palette.primary.main}`}:void 0,transition:"background-color 120ms ease, opacity 120ms ease"},children:[K.grouping.length>0&&jsx(TableCell,{sx:{...vr,height:Za,borderBottom:`1px solid ${P.palette.divider}`}}),(K.columns||[]).filter(ge=>K.visibleColumns.includes(ge.id)).map(ge=>jsx(TableCell,{sx:{width:K.columnWidths?.[ge.id]||ge.minWidth||100,height:Za,py:0,overflow:"hidden",borderBottom:`1px solid ${P.palette.divider}`},children:ge.render?ge.render(Q[ge.id],Q):String(Q[ge.id]??"-")},`${Q.id}-${ge.id}`))]},Q.id)})})]})})}),jsx(Box,{onPointerDown:Ce?bt:void 0,role:"separator","aria-orientation":"vertical",sx:{width:Ce?Qi:0,cursor:Ce?"col-resize":"default",opacity:Ce?1:0,pointerEvents:Ce?"auto":"none",borderLeft:Ce?`1px solid ${P.palette.divider}`:"0 solid transparent",borderRight:Ce?`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 ${Xa}, opacity ${Xa}, 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:Ce?"col-resize":"default"}}}),jsx(Box,{sx:{minWidth:0,overflow:"hidden",opacity:Te?0:1,transform:Te?"translateX(10px)":"translateX(0)",pointerEvents:Te?"none":"auto",transition:`opacity ${Xa}, transform ${Xa}`},children:jsx(Box,{"data-planning-scroll-pane":"timeline",ref:N,onScroll:()=>jo("timeline"),sx:{width:"100%",height:n,overflowX:"auto",overflowY:"auto"},children:jsxs(Box,{sx:{width:"100%",minWidth:nr||"100%"},children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:ir,height:Ye,boxSizing:"border-box",borderBottom:`1px solid ${P.palette.divider}`,position:"sticky",top:0,zIndex:2,backgroundColor:P.palette.background.paper},children:xt.map(D=>jsxs(Box,{title:D.title,sx:{px:.75,display:"flex",flexDirection:D.contextLabel?"column":"row",alignItems:"center",justifyContent:"center",gap:D.contextLabel?.15:0,borderRight:`1px solid ${P.palette.divider}`,color:D.contextLabel?"text.primary":"text.secondary",overflow:"hidden"},children:[D.contextLabel&&jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"text.secondary",fontSize:11,fontWeight:700,lineHeight:1.1},children:D.contextLabel}),jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,fontWeight:700,lineHeight:1.15},children:D.label})]},D.key))}),jsx(Stack,{sx:{position:"relative"},children:ye.map(D=>{let _=mt(D),Q=te[_]??Za;if(D.type==="group")return jsx(Box,{"data-planning-timeline-row-key":_,sx:{position:"relative",height:Q,boxSizing:"border-box",borderBottom:`1px solid ${P.palette.divider}`,backgroundColor:P.palette.action.hover}},D.id);let ce=D.data||D,Be=Ar(ce.startDate),He=Ar(ce.endDate),rt=Qd(Be,xt,Rt),ge=Qd(He,xt,Rt),Je=Math.max(0,ge-rt),ct=qf(ce.progress),Dt=ce.id===p,dt=qt(ce.id),Jt=Ee.activeId===ce.id,ao=Ee.overId===ce.id&&zt(Ee.activeId,ce.id),Co=ce.color??(ce.statusTone==="blocked"?P.palette.error.main:P.palette.primary.main);return jsx(Box,{"data-planning-timeline-row-key":_,draggable:dt,onDragStart:$t=>jt($t,ce),onDragOver:$t=>nt($t,ce.id),onDragEnter:$t=>nt($t,ce.id),onDrop:$t=>qo($t,ce.id),onDragEnd:Eo,onClick:()=>h?.(We.get(ce.id)||ce),sx:{position:"relative",height:Q,boxSizing:"border-box",borderBottom:`1px solid ${P.palette.divider}`,opacity:Jt?.56:1,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,height:2,backgroundColor:P.palette.primary.main,opacity:ao?1:0,transition:"opacity 120ms ease",pointerEvents:"none",zIndex:3},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:ro,cursor:Jt?"grabbing":dt?"grab":h?"pointer":"default",transition:"opacity 120ms ease"},children:jsx(Tooltip,{title:`${ce.title}: ${Be.format("MMM D HH:mm")} - ${He.format("MMM D HH:mm")}`,children:jsxs(Box,{sx:{position:"absolute",left:`${rt}%`,top:Math.max(8,(Q-24)/2),width:`max(18px, ${Je}%)`,height:24,borderRadius:999,overflow:"hidden",backgroundColor:P.palette.mode==="dark"?"rgba(148,163,184,0.18)":"rgba(15,23,42,0.10)",outline:Dt?`2px solid ${P.palette.warning.main}`:"none",outlineOffset:2},children:[jsx(Box,{sx:{height:"100%",width:`${ct}%`,backgroundColor:Co}}),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:ce.code})]})})},ce.id)})})]})})})]})}),jsx(rn,{groupAnchorEl:K.groupAnchorEl,setGroupAnchorEl:K.setGroupAnchorEl,grouping:K.grouping,setGrouping:K.setGrouping,columns:K.columns,toggleGroupField:K.toggleGroupField}),jsx(an,{anchorEl:K.anchorEl,setAnchorEl:K.setAnchorEl,columns:K.columns,visibleColumns:K.visibleColumns,toggleColumnVisibility:K.toggleColumnVisibility}),jsx(Vu,{contextMenu:qe,handleClose:()=>pt(null),columns:K.columns,visibleColumns:K.visibleColumns,grouping:K.grouping,summaryColumns:K.summaryColumns,showSummary:K.showSummary,sortBy:K.sortBy,orderBy:K.orderBy,order:K.order,onSortAsc:D=>{K.applyMultiSort([{field:D,direction:"asc"}]);},onSortDesc:D=>{K.applyMultiSort([{field:D,direction:"desc"}]);},onClearSort:D=>{let _=K.sortBy.filter(Q=>Q.field!==D);_.length>0?K.applyMultiSort(_):(K.clearMultiSort(),K.orderBy===D&&K.setOrderBy(""));},onHideColumn:D=>{K.visibleColumns.includes(D)&&K.toggleColumnVisibility(D);},onToggleGroup:D=>K.toggleGroupField(D),onToggleSummary:D=>K.toggleSummaryColumn(D),onOpenSortDialog:()=>q(true)}),jsx(Hu,{open:$e,onClose:()=>q(false),columns:K.columns,initialRules:K.sortBy.length>0?K.sortBy:K.orderBy?[{field:K.orderBy,direction:K.order}]:[],onApply:D=>K.applyMultiSort(D),onClear:()=>{K.clearMultiSort(),K.setOrderBy("");}})]})};var W8=({filterProps:e,ganttProps:t,spacing:o=2,sx:r,children:a})=>{let n=r?[{height:"100%",overflow:"hidden"},r]:{height:"100%",overflow:"hidden"},i=t.sx?[{height:"100%"},t.sx]:{height:"100%"};return jsxs(Stack,{spacing:o,sx:n,children:[jsx(Box,{sx:{flexShrink:0},children:jsx(Nr,{...e})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden"},children:jsx(Yf,{...t,bodyHeight:t.bodyHeight??"100%",sx:i})}),a]})};var mI={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)"}}},_8=({children:e,transitionKey:t,variant:o="fade",durationMs:r=220,delayMs:a=0,easing:n="cubic-bezier(0.22, 1, 0.36, 1)",disabled:i=false,sx:s})=>{let d=useMediaQuery("(prefers-reduced-motion: reduce)"),[l,c]=useState("to"),g=!i&&!d&&o!=="none";useEffect(()=>{if(!g){c("to");return}c("from");let b=requestAnimationFrame(()=>{b=requestAnimationFrame(()=>{c("to");});});return ()=>cancelAnimationFrame(b)},[t,g]);let f=mI[o],m=useMemo(()=>g?l==="from"?f.from:f.to:{opacity:1,transform:"none"},[g,l,f.from,f.to]);return jsx(Box,{sx:{willChange:g?"opacity, transform":"auto",transition:g?`opacity ${r}ms ${n} ${a}ms, transform ${r}ms ${n} ${a}ms`:"none",backfaceVisibility:"hidden",...m,...s},children:e})},q8={subtle:{variant:"fade",durationMs:180},smooth:{variant:"slide-up",durationMs:220},snappy:{variant:"scale",durationMs:160}};export{vV as AIBrowserGlow,Pf as AgentPanel,js as Button,cw as CAINavProvider,np as CAmapChart,es as CAppHeader,nd as CAppHeaderSearch,oE as CAppPageLayout,UV as CAuthPage,ui as CBarChart,cl as CChartCard,_u as CComboChart,cp as CCustomizeAgent,o5 as CDetailInfoPage,im as CDetailSearchAiBar,Ul as CDetailSectionCard,Xu as CFishboneChart,tp as CGoogleMapChart,ip as CGraphCharts,$u as CGraphKpiCards,wl as CGraphReport,ju as CHeatmapChart,S5 as CKanbanBoard,pm as CKanbanBucket,ed as CKanbanCard,Fp as CLayoutManagement,vn as CLayoutManager,Ku as CLineChart,ti as CMessageBox,ku as CPageLayout,_8 as CPageTransition,hl as CPieChart,UF as CPivotTable,Yf as CPlanningGantt,W8 as CPlanningLayout,Nr as CSmartFilter,C2 as CSmartTable,R2 as CStandardPage,ca as CTable,h2 as CTableBody,b2 as CTableCell,y2 as CTableContainer,x2 as CTableHead,v2 as CTableRow,Cu as CValueHelp,Rl as CVariantManagement,xp as CVariantManager,Ad as CVoiceWaveOverlay,Qu as CWaterfallChart,Ci as CodeBlock,bV as CopilotChat,cV as FloatingAgentPanel,bP as GlobalMessage,Ii as MarkdownRenderer,ki as MathBlock,Hc as MermaidBlock,Qs as NavigationIsland,ei as ORBCAFE_I18N_MESSAGES,el as OrbcafeI18nProvider,q8 as PAGE_TRANSITION_PRESETS,vN as PAppPageLayout,cL as PBarcodeScanner,zg as PNavIsland,wL as PNumericKeypad,Mg as PSmartFilter,US as PTable,fL as PTouchCard,Bg as PWorkloadNav,lg as PivotChartPanel,If as StdChat,$c as TableBlock,$l as ThinkBlock,Xs as TreeMenu,AN as VoiceNavigatorProvider,TN as VoiceWaveOverlay,xl as buildAmapEmbedUrl,gi as buildGoogleMapEmbedUrl,PM as buildGoogleMapIframe,ah as buttonVariants,fm as createKanbanBoardModel,mr as findKanbanCard,eP as message,Er as messageManager,Zl as moveKanbanCard,Hl as parseMarkdownTable,TB as renderMarkdown,Np as resolveVariantFilters,Ll as resolveVariantLayout,dw as useAINav,G2 as useAmapEmbedUrl,wV as useAuthPage,sm as useDetailInfo,$2 as useGoogleMapEmbedUrl,z2 as useGraphChartData,Il as useGraphInteraction,fn as useGraphReport,R5 as useKanbanBoard,cu as useNavigationIsland,oe as useOrbcafeI18n,eL as usePadLayout,rL as usePadRecordEditor,Rm as usePageLayout,ZF as usePivotTable,Hf as usePlanningGantt,QV as usePlanningLayout,F2 as useStandardReport,wn as useVoiceInput,BN as useVoiceNavigator};