orbcafe-ui 1.0.6 → 1.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +2 -2
- package/dist/index.mjs +2 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
'use strict';var pe=require('react'),navigation=require('next/navigation'),lucideReact=require('lucide-react'),clsx=require('clsx'),tailwindMerge=require('tailwind-merge'),reactSlot=require('@radix-ui/react-slot'),classVarianceAuthority=require('class-variance-authority'),jsxRuntime=require('react/jsx-runtime'),Lr=require('@mui/material/Dialog'),Fr=require('@mui/material/DialogTitle'),Er=require('@mui/material/DialogContent'),$n=require('@mui/material/DialogContentText'),Ar=require('@mui/material/DialogActions'),St=require('@mui/material/Box'),jn=require('@mui/icons-material/CheckCircle'),Qn=require('@mui/icons-material/Warning'),Yn=require('@mui/icons-material/Error'),Xn=require('@mui/icons-material/Info'),material=require('@mui/material'),ks=require('@mui/material/Paper'),ws=require('@mui/material/Table'),Ts=require('@mui/material/TableBody'),La=require('@mui/material/TableCell'),zr=require('@mui/material/TableContainer'),kl=require('@mui/material/TableHead'),wl=require('@mui/material/TableRow'),Br=require('@mui/material/TextField'),jt=require('@mui/material/Button'),Or=require('@mui/material/Alert'),core=require('@dnd-kit/core'),modifiers=require('@dnd-kit/modifiers'),br=require('@mui/icons-material/Search'),cl=require('@mui/icons-material/ViewColumn'),Tr=require('@mui/icons-material/Save'),dl=require('@mui/icons-material/Download'),pl=require('@mui/icons-material/AccountTree'),ml=require('@mui/icons-material/Functions'),gl=require('@mui/icons-material/Insights'),fl=require('@mui/icons-material/Add'),hl=require('@mui/icons-material/Edit'),bl=require('@mui/icons-material/Delete'),yl=require('@mui/icons-material/KeyboardArrowLeft'),vl=require('@mui/icons-material/KeyboardArrowRight'),Tl=require('@mui/material/Checkbox'),Dl=require('@mui/material/TableSortLabel'),Il=require('@mui/material/IconButton'),Ml=require('@mui/material/Tooltip'),Pl=require('@mui/icons-material/UnfoldMore'),Rl=require('@mui/icons-material/UnfoldLess'),Ol=require('@mui/icons-material/KeyboardArrowDown'),Yl=require('@mui/icons-material/Check'),Xl=require('@mui/icons-material/ClearAll'),ci=require('@mui/icons-material/Close'),es=require('@mui/icons-material/Settings'),ts=require('@mui/icons-material/KeyboardArrowUp'),os=require('@mui/icons-material/ArrowRightAlt'),ki=require('@mui/icons-material/Star'),DateCalendar=require('@mui/x-date-pickers/DateCalendar'),PickersDay=require('@mui/x-date-pickers/PickersDay'),LocalizationProvider=require('@mui/x-date-pickers/LocalizationProvider'),AdapterDayjs=require('@mui/x-date-pickers/AdapterDayjs'),Hi=require('@mui/icons-material/CalendarMonth'),Gi=require('@mui/icons-material/Clear'),Wi=require('@mui/icons-material/ArrowForward'),je=require('dayjs'),qi=require('dayjs/plugin/isBetween'),Ui=require('dayjs/plugin/localizedFormat');require('dayjs/locale/zh-cn'),require('dayjs/locale/fr'),require('dayjs/locale/de'),require('dayjs/locale/ja'),require('dayjs/locale/ko');var bs=require('@mui/icons-material/StarBorder'),ys=require('@mui/icons-material/ViewQuilt'),Ur=require('@mui/icons-material/Language'),Ws=require('@mui/icons-material/DesktopWindows'),qs=require('@mui/icons-material/DarkMode'),Us=require('@mui/icons-material/LightMode'),_s=require('@mui/icons-material/Logout');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var pe__namespace=/*#__PURE__*/_interopNamespace(pe);var Lr__default=/*#__PURE__*/_interopDefault(Lr);var Fr__default=/*#__PURE__*/_interopDefault(Fr);var Er__default=/*#__PURE__*/_interopDefault(Er);var $n__default=/*#__PURE__*/_interopDefault($n);var Ar__default=/*#__PURE__*/_interopDefault(Ar);var St__default=/*#__PURE__*/_interopDefault(St);var jn__default=/*#__PURE__*/_interopDefault(jn);var Qn__default=/*#__PURE__*/_interopDefault(Qn);var Yn__default=/*#__PURE__*/_interopDefault(Yn);var Xn__default=/*#__PURE__*/_interopDefault(Xn);var ks__default=/*#__PURE__*/_interopDefault(ks);var ws__default=/*#__PURE__*/_interopDefault(ws);var Ts__default=/*#__PURE__*/_interopDefault(Ts);var La__default=/*#__PURE__*/_interopDefault(La);var zr__default=/*#__PURE__*/_interopDefault(zr);var kl__default=/*#__PURE__*/_interopDefault(kl);var wl__default=/*#__PURE__*/_interopDefault(wl);var Br__default=/*#__PURE__*/_interopDefault(Br);var jt__default=/*#__PURE__*/_interopDefault(jt);var Or__default=/*#__PURE__*/_interopDefault(Or);var br__default=/*#__PURE__*/_interopDefault(br);var cl__default=/*#__PURE__*/_interopDefault(cl);var Tr__default=/*#__PURE__*/_interopDefault(Tr);var dl__default=/*#__PURE__*/_interopDefault(dl);var pl__default=/*#__PURE__*/_interopDefault(pl);var ml__default=/*#__PURE__*/_interopDefault(ml);var gl__default=/*#__PURE__*/_interopDefault(gl);var fl__default=/*#__PURE__*/_interopDefault(fl);var hl__default=/*#__PURE__*/_interopDefault(hl);var bl__default=/*#__PURE__*/_interopDefault(bl);var yl__default=/*#__PURE__*/_interopDefault(yl);var vl__default=/*#__PURE__*/_interopDefault(vl);var Tl__default=/*#__PURE__*/_interopDefault(Tl);var Dl__default=/*#__PURE__*/_interopDefault(Dl);var Il__default=/*#__PURE__*/_interopDefault(Il);var Ml__default=/*#__PURE__*/_interopDefault(Ml);var Pl__default=/*#__PURE__*/_interopDefault(Pl);var Rl__default=/*#__PURE__*/_interopDefault(Rl);var Ol__default=/*#__PURE__*/_interopDefault(Ol);var Yl__default=/*#__PURE__*/_interopDefault(Yl);var Xl__default=/*#__PURE__*/_interopDefault(Xl);var ci__default=/*#__PURE__*/_interopDefault(ci);var es__default=/*#__PURE__*/_interopDefault(es);var ts__default=/*#__PURE__*/_interopDefault(ts);var os__default=/*#__PURE__*/_interopDefault(os);var ki__default=/*#__PURE__*/_interopDefault(ki);var Hi__default=/*#__PURE__*/_interopDefault(Hi);var Gi__default=/*#__PURE__*/_interopDefault(Gi);var Wi__default=/*#__PURE__*/_interopDefault(Wi);var je__default=/*#__PURE__*/_interopDefault(je);var qi__default=/*#__PURE__*/_interopDefault(qi);var Ui__default=/*#__PURE__*/_interopDefault(Ui);var bs__default=/*#__PURE__*/_interopDefault(bs);var ys__default=/*#__PURE__*/_interopDefault(ys);var Ur__default=/*#__PURE__*/_interopDefault(Ur);var Ws__default=/*#__PURE__*/_interopDefault(Ws);var qs__default=/*#__PURE__*/_interopDefault(qs);var Us__default=/*#__PURE__*/_interopDefault(Us);var _s__default=/*#__PURE__*/_interopDefault(_s);function xe(...e){return tailwindMerge.twMerge(clsx.clsx(e))}var Sa={primary:"#000000",primaryHover:"#333333"},At={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"},ct={none:"rounded-none",sm:"rounded-sm",md:"rounded-md",full:"rounded-full"},Co=()=>"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 vn=classVarianceAuthority.cva(Co(),{variants:{variant:{default:`${At.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:`${At.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:At.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-[${Sa.primary}] hover:bg-[${Sa.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:ct.none,sm:ct.sm,md:ct.md,full:ct.full}},defaultVariants:{variant:"default",size:"default",rounded:"md"}}),ka=pe__namespace.forwardRef(({className:e,variant:t,size:a,asChild:r=false,...l},i)=>jsxRuntime.jsx(r?reactSlot.Slot:"button",{className:xe(vn({variant:t,size:a,className:e})),ref:i,...l}));ka.displayName="Button";var Cn={"common.cancel":"Cancel","common.save":"Save","common.ok":"OK","common.done":"Done","common.search":"Search","common.none":"None","common.all":"All","common.noData":"No data","common.copy":"Copy","common.delete":"Delete","common.loading":"Loading...","header.searchPlaceholder":"Ask me...","header.theme.system":"Theme: System","header.theme.dark":"Theme: Dark","header.theme.light":"Theme: Light","header.menu.setting":"Setting","header.menu.logout":"Logout","navigation.expand":"Expand navigation","navigation.collapse":"Collapse navigation","navigation.searchPlaceholder":"Search menu...","navigation.noMatch":"No matching menu items","navigation.noAccessibleApp":"No accessible applications","navigation.noItems":"No items to display","navigation.expandView":"Expand {title}","table.toolbar.searchPlaceholder":"Search...","table.title.default":"Data Table","table.toolbar.groupBy":"Group By","table.toolbar.summary":"Summary","table.toolbar.columns":"Columns","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Items per page:","table.toolbar.pageOf":"Page {current} of {total}","table.toolbar.newItem":"New Item","table.toolbar.editItem":"Edit Item","table.toolbar.deleteItem":"Delete Item","table.toolbar.graphicReport":"Graphic Report","table.toolbar.saveLayout":"Save Layout","table.menu.groupBy":"Group By","table.menu.clearAll":"Clear All","table.menu.visibleColumns":"Visible Columns","table.menu.showSummaryRow":"Show Summary Row","table.menu.noNumericColumns":"No numeric columns","table.group.expandAll":"Expand All Groups","table.group.collapseAll":"Collapse All Groups","table.mobile.notImplemented":"Mobile View Not Implemented","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","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"},Sn={"common.cancel":"\u53D6\u6D88","common.save":"\u4FDD\u5B58","common.ok":"\u786E\u5B9A","common.done":"\u5B8C\u6210","common.search":"\u641C\u7D22","common.none":"\u65E0","common.all":"\u5168\u90E8","common.noData":"\u6682\u65E0\u6570\u636E","common.copy":"\u590D\u5236","common.delete":"\u5220\u9664","common.loading":"\u52A0\u8F7D\u4E2D...","header.searchPlaceholder":"\u95EE\u6211\u70B9\u4EC0\u4E48...","header.theme.system":"\u4E3B\u9898\uFF1A\u8DDF\u968F\u7CFB\u7EDF","header.theme.dark":"\u4E3B\u9898\uFF1A\u6DF1\u8272","header.theme.light":"\u4E3B\u9898\uFF1A\u6D45\u8272","header.menu.setting":"\u8BBE\u7F6E","header.menu.logout":"\u6CE8\u9500","navigation.expand":"\u5C55\u5F00\u5BFC\u822A","navigation.collapse":"\u6298\u53E0\u5BFC\u822A","navigation.searchPlaceholder":"\u641C\u7D22\u83DC\u5355...","navigation.noMatch":"\u672A\u627E\u5230\u5339\u914D\u7684\u83DC\u5355\u9879","navigation.noAccessibleApp":"\u6682\u65E0\u53EF\u8BBF\u95EE\u7684\u5E94\u7528","navigation.noItems":"\u6682\u65E0\u53EF\u663E\u793A\u9879","navigation.expandView":"\u5C55\u5F00\u67E5\u770B {title}","table.toolbar.searchPlaceholder":"\u641C\u7D22...","table.title.default":"\u6570\u636E\u8868","table.toolbar.groupBy":"\u5206\u7EC4","table.toolbar.summary":"\u6C47\u603B","table.toolbar.columns":"\u5217","table.toolbar.export":"\u5BFC\u51FA","table.toolbar.itemsPerPage":"\u6BCF\u9875\u6761\u6570\uFF1A","table.toolbar.pageOf":"\u7B2C {current} / {total} \u9875","table.toolbar.newItem":"\u65B0\u5EFA\u6761\u76EE","table.toolbar.editItem":"\u7F16\u8F91\u6761\u76EE","table.toolbar.deleteItem":"\u5220\u9664\u6761\u76EE","table.toolbar.graphicReport":"\u56FE\u8868\u62A5\u8868","table.toolbar.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","table.menu.groupBy":"\u5206\u7EC4","table.menu.clearAll":"\u6E05\u7A7A","table.menu.visibleColumns":"\u53EF\u89C1\u5217","table.menu.showSummaryRow":"\u663E\u793A\u6C47\u603B\u884C","table.menu.noNumericColumns":"\u6CA1\u6709\u6570\u503C\u5217","table.group.expandAll":"\u5C55\u5F00\u5168\u90E8\u5206\u7EC4","table.group.collapseAll":"\u6298\u53E0\u5168\u90E8\u5206\u7EC4","table.mobile.notImplemented":"\u79FB\u52A8\u7AEF\u89C6\u56FE\u6682\u672A\u5B9E\u73B0","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","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"},kn={"common.cancel":"Annuler","common.save":"Enregistrer","common.ok":"OK","common.done":"Terminer","common.search":"Rechercher","common.none":"Aucun","common.all":"Tout","common.noData":"Aucune donn\xE9e","common.copy":"Copier","common.delete":"Supprimer","common.loading":"Chargement...","header.searchPlaceholder":"Demandez-moi...","header.theme.system":"Th\xE8me : Syst\xE8me","header.theme.dark":"Th\xE8me : Sombre","header.theme.light":"Th\xE8me : Clair","header.menu.setting":"Param\xE8tres","header.menu.logout":"Se d\xE9connecter","navigation.expand":"D\xE9velopper la navigation","navigation.collapse":"R\xE9duire la navigation","navigation.searchPlaceholder":"Rechercher dans le menu...","navigation.noMatch":"Aucun \xE9l\xE9ment correspondant","navigation.noAccessibleApp":"Aucune application accessible","navigation.noItems":"Aucun \xE9l\xE9ment \xE0 afficher","navigation.expandView":"D\xE9velopper {title}","table.toolbar.searchPlaceholder":"Rechercher...","table.title.default":"Tableau de donn\xE9es","table.toolbar.groupBy":"Grouper","table.toolbar.summary":"R\xE9sum\xE9","table.toolbar.columns":"Colonnes","table.toolbar.export":"Exporter","table.toolbar.itemsPerPage":"Lignes par page :","table.toolbar.pageOf":"Page {current} sur {total}","table.toolbar.newItem":"Nouvel \xE9l\xE9ment","table.toolbar.editItem":"Modifier l'\xE9l\xE9ment","table.toolbar.deleteItem":"Supprimer l'\xE9l\xE9ment","table.toolbar.graphicReport":"Rapport graphique","table.toolbar.saveLayout":"Enregistrer la vue","table.menu.groupBy":"Grouper","table.menu.clearAll":"Tout effacer","table.menu.visibleColumns":"Colonnes visibles","table.menu.showSummaryRow":"Afficher la ligne de r\xE9sum\xE9","table.menu.noNumericColumns":"Aucune colonne num\xE9rique","table.group.expandAll":"D\xE9velopper tous les groupes","table.group.collapseAll":"R\xE9duire tous les groupes","table.mobile.notImplemented":"Vue mobile non impl\xE9ment\xE9e","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","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"},wn={"common.cancel":"Abbrechen","common.save":"Speichern","common.ok":"OK","common.done":"Fertig","common.search":"Suchen","common.none":"Keine","common.all":"Alle","common.noData":"Keine Daten","common.copy":"Kopieren","common.delete":"L\xF6schen","common.loading":"Wird geladen...","header.searchPlaceholder":"Frag mich...","header.theme.system":"Theme: System","header.theme.dark":"Theme: Dunkel","header.theme.light":"Theme: Hell","header.menu.setting":"Einstellungen","header.menu.logout":"Abmelden","navigation.expand":"Navigation erweitern","navigation.collapse":"Navigation einklappen","navigation.searchPlaceholder":"Men\xFC suchen...","navigation.noMatch":"Keine passenden Men\xFCeintr\xE4ge","navigation.noAccessibleApp":"Keine verf\xFCgbaren Anwendungen","navigation.noItems":"Keine Eintr\xE4ge vorhanden","navigation.expandView":"{title} aufklappen","table.toolbar.searchPlaceholder":"Suchen...","table.title.default":"Datentabelle","table.toolbar.groupBy":"Gruppieren","table.toolbar.summary":"Zusammenfassung","table.toolbar.columns":"Spalten","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Zeilen pro Seite:","table.toolbar.pageOf":"Seite {current} von {total}","table.toolbar.newItem":"Neuer Eintrag","table.toolbar.editItem":"Eintrag bearbeiten","table.toolbar.deleteItem":"Eintrag l\xF6schen","table.toolbar.graphicReport":"Grafikbericht","table.toolbar.saveLayout":"Layout speichern","table.menu.groupBy":"Gruppieren","table.menu.clearAll":"Alles l\xF6schen","table.menu.visibleColumns":"Sichtbare Spalten","table.menu.showSummaryRow":"Summenzeile anzeigen","table.menu.noNumericColumns":"Keine numerischen Spalten","table.group.expandAll":"Alle Gruppen aufklappen","table.group.collapseAll":"Alle Gruppen zuklappen","table.mobile.notImplemented":"Mobile Ansicht nicht implementiert","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","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"},Tn={"common.cancel":"\u30AD\u30E3\u30F3\u30BB\u30EB","common.save":"\u4FDD\u5B58","common.ok":"OK","common.done":"\u5B8C\u4E86","common.search":"\u691C\u7D22","common.none":"\u306A\u3057","common.all":"\u3059\u3079\u3066","common.noData":"\u30C7\u30FC\u30BF\u306A\u3057","common.copy":"\u30B3\u30D4\u30FC","common.delete":"\u524A\u9664","common.loading":"\u8AAD\u307F\u8FBC\u307F\u4E2D...","header.searchPlaceholder":"\u4F55\u304B\u805E\u3044\u3066\u304F\u3060\u3055\u3044...","header.theme.system":"\u30C6\u30FC\u30DE\uFF1A\u30B7\u30B9\u30C6\u30E0","header.theme.dark":"\u30C6\u30FC\u30DE\uFF1A\u30C0\u30FC\u30AF","header.theme.light":"\u30C6\u30FC\u30DE\uFF1A\u30E9\u30A4\u30C8","header.menu.setting":"\u8A2D\u5B9A","header.menu.logout":"\u30ED\u30B0\u30A2\u30A6\u30C8","navigation.expand":"\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u3092\u5C55\u958B","navigation.collapse":"\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u3092\u6298\u308A\u305F\u305F\u3080","navigation.searchPlaceholder":"\u30E1\u30CB\u30E5\u30FC\u3092\u691C\u7D22...","navigation.noMatch":"\u4E00\u81F4\u3059\u308B\u30E1\u30CB\u30E5\u30FC\u304C\u3042\u308A\u307E\u305B\u3093","navigation.noAccessibleApp":"\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A\u30A2\u30D7\u30EA\u304C\u3042\u308A\u307E\u305B\u3093","navigation.noItems":"\u8868\u793A\u3067\u304D\u308B\u9805\u76EE\u304C\u3042\u308A\u307E\u305B\u3093","navigation.expandView":"{title} \u3092\u5C55\u958B","table.toolbar.searchPlaceholder":"\u691C\u7D22...","table.title.default":"\u30C7\u30FC\u30BF\u30C6\u30FC\u30D6\u30EB","table.toolbar.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.toolbar.summary":"\u96C6\u8A08","table.toolbar.columns":"\u5217","table.toolbar.export":"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8","table.toolbar.itemsPerPage":"1\u30DA\u30FC\u30B8\u306E\u4EF6\u6570\uFF1A","table.toolbar.pageOf":"{current} / {total} \u30DA\u30FC\u30B8","table.toolbar.newItem":"\u65B0\u898F\u4F5C\u6210","table.toolbar.editItem":"\u7DE8\u96C6","table.toolbar.deleteItem":"\u524A\u9664","table.toolbar.graphicReport":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","table.toolbar.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","table.menu.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.menu.clearAll":"\u3059\u3079\u3066\u30AF\u30EA\u30A2","table.menu.visibleColumns":"\u8868\u793A\u5217","table.menu.showSummaryRow":"\u96C6\u8A08\u884C\u3092\u8868\u793A","table.menu.noNumericColumns":"\u6570\u5024\u5217\u304C\u3042\u308A\u307E\u305B\u3093","table.group.expandAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u5C55\u958B","table.group.collapseAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u6298\u308A\u305F\u305F\u3080","table.mobile.notImplemented":"\u30E2\u30D0\u30A4\u30EB\u8868\u793A\u306F\u672A\u5B9F\u88C5\u3067\u3059","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","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"},Dn={"common.cancel":"\uCDE8\uC18C","common.save":"\uC800\uC7A5","common.ok":"\uD655\uC778","common.done":"\uC644\uB8CC","common.search":"\uAC80\uC0C9","common.none":"\uC5C6\uC74C","common.all":"\uC804\uCCB4","common.noData":"\uB370\uC774\uD130 \uC5C6\uC74C","common.copy":"\uBCF5\uC0AC","common.delete":"\uC0AD\uC81C","common.loading":"\uB85C\uB529 \uC911...","header.searchPlaceholder":"\uBB34\uC5C7\uC774\uB4E0 \uBB3C\uC5B4\uBCF4\uC138\uC694...","header.theme.system":"\uD14C\uB9C8: \uC2DC\uC2A4\uD15C","header.theme.dark":"\uD14C\uB9C8: \uB2E4\uD06C","header.theme.light":"\uD14C\uB9C8: \uB77C\uC774\uD2B8","header.menu.setting":"\uC124\uC815","header.menu.logout":"\uB85C\uADF8\uC544\uC6C3","navigation.expand":"\uD0D0\uC0C9 \uD3BC\uCE58\uAE30","navigation.collapse":"\uD0D0\uC0C9 \uC811\uAE30","navigation.searchPlaceholder":"\uBA54\uB274 \uAC80\uC0C9...","navigation.noMatch":"\uC77C\uCE58\uD558\uB294 \uBA54\uB274\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.noAccessibleApp":"\uC811\uADFC \uAC00\uB2A5\uD55C \uC571\uC774 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.noItems":"\uD45C\uC2DC\uD560 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.expandView":"{title} \uD3BC\uCE58\uAE30","table.toolbar.searchPlaceholder":"\uAC80\uC0C9...","table.title.default":"\uB370\uC774\uD130 \uD14C\uC774\uBE14","table.toolbar.groupBy":"\uADF8\uB8F9","table.toolbar.summary":"\uC694\uC57D","table.toolbar.columns":"\uC5F4","table.toolbar.export":"\uB0B4\uBCF4\uB0B4\uAE30","table.toolbar.itemsPerPage":"\uD398\uC774\uC9C0\uB2F9 \uD589 \uC218:","table.toolbar.pageOf":"{current} / {total} \uD398\uC774\uC9C0","table.toolbar.newItem":"\uC2E0\uADDC \uD56D\uBAA9","table.toolbar.editItem":"\uD56D\uBAA9 \uC218\uC815","table.toolbar.deleteItem":"\uD56D\uBAA9 \uC0AD\uC81C","table.toolbar.graphicReport":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","table.toolbar.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","table.menu.groupBy":"\uADF8\uB8F9","table.menu.clearAll":"\uBAA8\uB450 \uC9C0\uC6B0\uAE30","table.menu.visibleColumns":"\uD45C\uC2DC \uC5F4","table.menu.showSummaryRow":"\uC694\uC57D \uD589 \uD45C\uC2DC","table.menu.noNumericColumns":"\uC22B\uC790 \uC5F4 \uC5C6\uC74C","table.group.expandAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uD3BC\uCE58\uAE30","table.group.collapseAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uC811\uAE30","table.mobile.notImplemented":"\uBAA8\uBC14\uC77C \uBDF0\uB294 \uC544\uC9C1 \uAD6C\uD604\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4","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","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"},ut={en:Cn,zh:Sn,fr:kn,de:wn,ja:Tn,ko:Dn};var ko=(e,t)=>t?e.replace(/\{(\w+)\}/g,(a,r)=>{let l=t[r];return l==null?"":String(l)}):e,Rn={locale:"en",t:(e,t)=>ko(ut.en[e]||e,t)},wo=pe.createContext(Rn),To=({locale:e="en",messages:t,children:a})=>{let r=pe.useMemo(()=>{let l=ut[e]||ut.en,i=t?.[e]||{},o={...ut.en,...l,...i};return {locale:e,t:(c,g)=>ko(o[c]||c,g)}},[e,t]);return jsxRuntime.jsx(wo.Provider,{value:r,children:a})},V=()=>pe.useContext(wo);function Ta({items:e,onItemClick:t,className:a="",level:r=0,expandedIds:l,onToggleExpand:i,colorMode:o="light"}){let{t:c}=V(),g=o==="dark",m=navigation.usePathname(),[f,S]=pe.useState(new Set),x=l!==void 0&&i!==void 0,P=x?l:f,v=u=>{if(x)i(u);else {let y=new Set(f);y.has(u)?y.delete(u):y.add(u),S(y);}},E=u=>{u.children&&u.children.length>0&&v(u.id),t&&t(u);};return !e||!Array.isArray(e)?jsxRuntime.jsx("div",{className:xe("tree-menu",a),children:jsxRuntime.jsx("div",{className:"text-sm text-gray-500 p-2",children:c("navigation.noItems")})}):jsxRuntime.jsx("div",{className:xe("tree-menu",a),children:e.map(u=>{let y=P.has(u.id)||u.isExpanded,s=u.children&&u.children.length>0,I=u.appurl||u.href,C=I?m===I:false;return jsxRuntime.jsxs("div",{className:"tree-menu-item relative",children:[C&&jsxRuntime.jsx("div",{className:xe("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",g?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxRuntime.jsxs(ka,{variant:"ghost",className:xe("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${r*4}`,C?g?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":g?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>E(u),children:[s&&jsxRuntime.jsx("div",{className:xe("flex-shrink-0 transition-transform duration-200",y&&"rotate-90",C?g?"text-[#90caf9]":"text-[#1976d2]":g?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:jsxRuntime.jsx(lucideReact.ChevronRight,{className:"h-4 w-4"})}),!s&&jsxRuntime.jsx("div",{className:"w-4 h-4 flex-shrink-0"}),u.icon&&jsxRuntime.jsx("div",{className:xe("flex-shrink-0 transition-colors duration-200",C?g?"text-[#90caf9]":"text-[#1976d2]":g?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:u.icon}),jsxRuntime.jsxs("div",{className:"flex-1 text-left overflow-hidden z-10",children:[jsxRuntime.jsx("div",{className:xe("text-sm truncate transition-colors duration-200",C?"font-semibold":"font-medium"),children:u.title||u.label}),u.description&&jsxRuntime.jsx("div",{className:xe("text-xs truncate transition-colors duration-200",C?g?"text-[#90caf9]/70":"text-[#1976d2]/75":g?"text-gray-400":"text-gray-500"),title:u.description,children:u.description})]})]}),s&&jsxRuntime.jsx("div",{className:xe("grid transition-[grid-template-rows] duration-300 ease-in-out",y?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:jsxRuntime.jsx("div",{className:"overflow-hidden",children:jsxRuntime.jsx(Ta,{items:u.children,onItemClick:t,level:r+1,expandedIds:l,onToggleExpand:i,colorMode:o})})})]},u.id)})})}var Ro=({collapsed:e,onToggle:t,className:a="",maxHeight:r,menuData:l=[],colorMode:i="light"})=>{let{t:o}=V(),c=i==="dark",g=navigation.useRouter(),[m,f]=pe.useState(""),[S,x]=pe.useState(new Set);pe.useEffect(()=>{e&&x(new Set);},[e]);let P=pe.useCallback(y=>{let s=[],I=C=>{C.forEach(R=>{s.push(R.id),R.children&&I(R.children);});};return I(y),s},[]),v=pe.useMemo(()=>{if(!m.trim())return l;let y=s=>s.reduce((I,C)=>{let R=C.title?.toLowerCase().includes(m.toLowerCase())||C.description?.toLowerCase().includes(m.toLowerCase()),T=C.children?y(C.children):[];return (R||T.length>0)&&I.push({...C,children:T.length>0?T:C.children}),I},[]);return y(l)},[m,l]),E=pe.useMemo(()=>m.trim()?new Set(P(l)):S,[m,l,S,P]),u=pe.useCallback(async y=>{if(console.log("\u{1F5B1}\uFE0F \u5BFC\u822A\u83DC\u5355\u9879\u70B9\u51FB:",y),y.id==="chat"||y.appurl==="/chat"){console.log("\u{1F4AC} \u68C0\u6D4B\u5230chat\u83DC\u5355\u70B9\u51FB\uFF0C\u8DF3\u8F6C\u5230\u65B0\u7684\u804A\u5929\u89C6\u56FE");try{g.push("/chat?new=true");}catch(I){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",I),g.push("/chat");}return}let s=y.appurl||y.href;s&&(s.startsWith("http://")||s.startsWith("https://")?window.open(s,"_blank"):g.push(s));},[g]);return jsxRuntime.jsxs("div",{className:`flex flex-col backdrop-blur-xl border shadow-[0_4px_8px_0_rgba(31,38,135,0.1)] ${e?"w-14 rounded-full":"w-[234px] rounded-2xl"} relative ${a} ${c?"bg-[#111111] border-white/10":"bg-white/70 border-white/30"}`,style:{backdropFilter:"blur(16px) saturate(180%)",WebkitBackdropFilter:"blur(16px) saturate(180%)",transition:"width 400ms cubic-bezier(0.4, 0.0, 0.2, 1), border-radius 0ms cubic-bezier(0.4, 0.0, 0.2, 1), box-shadow 400ms ease-out",maxHeight:r?`${r}px`:void 0},children:[jsxRuntime.jsx("div",{className:`pt-4 pb-2 transition-all duration-500 ease-in-out ${e?"px-1":"px-2"}`,children:e?jsxRuntime.jsx("div",{className:"flex justify-center",children:jsxRuntime.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:o("navigation.expand"),children:jsxRuntime.jsx(lucideReact.Search,{className:"h-5 w-5"})})}):jsxRuntime.jsxs("div",{className:`relative transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:[jsxRuntime.jsx("input",{type:"text",placeholder:o("navigation.searchPlaceholder"),value:m,onChange:y=>f(y.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"}`}),jsxRuntime.jsx("div",{className:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none",children:jsxRuntime.jsx(lucideReact.Search,{className:`h-4 w-4 ${c?"text-gray-500":"text-gray-400"}`})})]})}),jsxRuntime.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:v.length===0?jsxRuntime.jsx("div",{className:"flex items-center justify-center py-8 text-gray-500 text-sm",children:e?"\u{1F4C2}":o(m?"navigation.noMatch":"navigation.noAccessibleApp")}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[!e&&jsxRuntime.jsx("div",{className:`transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:jsxRuntime.jsx(Ta,{items:v,onItemClick:u,className:"space-y-1",expandedIds:E,colorMode:i,onToggleExpand:y=>{let s=new Set(S);v.some(C=>C.id===y)?s.has(y)?s.delete(y):(v.forEach(C=>{C.id!==y&&s.has(C.id)&&s.delete(C.id);}),s.add(y)):s.has(y)?s.delete(y):s.add(y),x(s);}})}),e&&jsxRuntime.jsx("div",{className:"space-y-2",children:l.map(y=>jsxRuntime.jsx("div",{className:"space-y-1",children:jsxRuntime.jsx("button",{onClick:()=>{t();let s=new Set([y.id]);x(s);},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:o("navigation.expandView",{title:y.title||""}),children:y.icon||jsxRuntime.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:y.title?.charAt(0)||"?"})})},y.id))})]})}),!e&&jsxRuntime.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:o("navigation.collapse"),children:jsxRuntime.jsx("div",{className:"absolute",style:{bottom:"0px",right:"0px",width:"16px",height:"16px",overflow:"hidden"},children:jsxRuntime.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"}})})})]})};var Fo=(e={})=>{let{initialCollapsed:t=false,content:a=[]}=e,[r,l]=pe.useState(t),[i,o]=pe.useState(a),c=pe.useCallback(()=>{l(m=>!m);},[]),g=pe.useMemo(()=>({collapsed:r,onToggle:c,menuData:i}),[r,c,i]);return {collapsed:r,setCollapsed:l,toggleCollapsed:c,menuData:i,setMenuData:o,navigationIslandProps:g}};var Ia=e=>jsxRuntime.jsx(material.Button,{...e,variant:e.variant||"contained",size:e.size||"medium",sx:{textTransform:"none",...e.sx}});var Zn={success:{icon:jsxRuntime.jsx(jn__default.default,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsxRuntime.jsx(Qn__default.default,{sx:{fontSize:40}}),color:"#fff3e0",iconColor:"#ffa726",borderColor:"#ffcc80"},error:{icon:jsxRuntime.jsx(Yn__default.default,{sx:{fontSize:40}}),color:"#ffebee",iconColor:"#ef5350",borderColor:"#ef9a9a"},info:{icon:jsxRuntime.jsx(Xn__default.default,{sx:{fontSize:40}}),color:"#e3f2fd",iconColor:"#42a5f5",borderColor:"#90caf9"},default:{icon:null,color:"transparent",iconColor:"inherit",borderColor:"transparent"}},Ao=({open:e,title:t,message:a,onClose:r,onConfirm:l,confirmText:i,cancelText:o,showCancel:c=true,maxWidth:g="xs",type:m="default"})=>{let{t:f}=V(),S=i||f("messageBox.confirm"),x=o||f("messageBox.cancel"),P=()=>{l?l():r();},v=Zn[m],E=m!=="default";return jsxRuntime.jsxs(Lr__default.default,{open:e,onClose:r,maxWidth:g,fullWidth:true,PaperProps:{sx:{borderRadius:3,...E&&{borderTop:`6px solid ${v.iconColor}`}}},children:[E&&jsxRuntime.jsx(St__default.default,{sx:{display:"flex",justifyContent:"center",pt:3,color:v.iconColor},children:v.icon}),t&&jsxRuntime.jsx(Fr__default.default,{sx:{textAlign:E?"center":"left",pt:E?1:2},children:t}),jsxRuntime.jsx(Er__default.default,{sx:{textAlign:E?"center":"left"},children:typeof a=="string"?jsxRuntime.jsx($n__default.default,{children:a}):a}),jsxRuntime.jsxs(Ar__default.default,{sx:{justifyContent:E?"center":"flex-end",pb:3,px:3},children:[c&&jsxRuntime.jsx(Ia,{onClick:r,variant:"text",color:"inherit",children:x}),jsxRuntime.jsx(Ia,{onClick:P,variant:"contained",sx:{bgcolor:E?v.iconColor:void 0,"&:hover":{bgcolor:E?v.iconColor:void 0,filter:"brightness(0.9)"}},autoFocus:true,children:S})]})]})};var Bo=({title:e,hideHeader:t,children:a})=>jsxRuntime.jsxs(material.Box,{sx:{display:"flex",flexDirection:"column",height:"100%"},children:[!t&&jsxRuntime.jsx(material.Box,{sx:{mb:2},children:jsxRuntime.jsx(material.Typography,{variant:"h4",children:e})}),jsxRuntime.jsx(material.Box,{sx:{flex:1,overflow:"hidden"},children:a})]});var zo=e=>{let{t}=V(),a="0.85rem",r=Array.isArray(e.actions)?e.actions:e.actions?[e.actions]:[],l=Array.isArray(e.extraTools)?e.extraTools:e.extraTools?[e.extraTools]:[],i=[...r,...l],o=typeof e.rowsPerPage=="number"?e.rowsPerPage:20,c=Array.isArray(e.rowsPerPageOptions)&&e.rowsPerPageOptions.length>0?e.rowsPerPageOptions:[20,50,100,-1],g=typeof e.count=="number"?e.count:0,m=Math.max(0,typeof e.page=="number"?e.page:0),f=o===-1?1:Math.max(1,Math.ceil(g/o)),S=Math.min(m+1,f),x=m>0,P=m<f-1&&o!==-1;return jsxRuntime.jsxs(material.Toolbar,{sx:{pl:{sm:2},pr:{xs:1,sm:1},alignItems:"center",gap:1},children:[jsxRuntime.jsx(material.TextField,{size:"small",placeholder:t("table.toolbar.searchPlaceholder"),value:e.filterText,onChange:v=>e.setFilterText(v.target.value),InputProps:{sx:{fontSize:a,"& .MuiInputBase-input":{fontSize:a},"& .MuiInputBase-input::placeholder":{fontSize:a,opacity:1}},startAdornment:jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(br__default.default,{fontSize:"small"})})},sx:{width:300}}),jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:1,ml:1},children:[jsxRuntime.jsx(material.Typography,{sx:{fontSize:a,color:"text.secondary",whiteSpace:"nowrap"},children:t("table.toolbar.itemsPerPage")}),jsxRuntime.jsx(material.Select,{size:"small",variant:"standard",value:o,disableUnderline:true,onChange:v=>e.onRowsPerPageChange?.(Number(v.target.value)),sx:{fontSize:a,fontWeight:600,minWidth:64,"& .MuiSelect-select":{py:.25,pr:"16px !important"}},children:c.map(v=>jsxRuntime.jsx(material.MenuItem,{value:v,sx:{fontSize:a},children:v===-1?t("common.all"):v},`rows-per-page-${v}`))}),jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.max(m-1,0)),disabled:!x,sx:{p:.35},children:jsxRuntime.jsx(yl__default.default,{fontSize:"small"})}),jsxRuntime.jsx(material.Typography,{sx:{fontSize:a,fontWeight:600,minWidth:88,textAlign:"center"},children:t("table.toolbar.pageOf",{current:S,total:f})}),jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.min(m+1,f-1)),disabled:!P,sx:{p:.35},children:jsxRuntime.jsx(vl__default.default,{fontSize:"small"})})]}),jsxRuntime.jsx(material.Box,{sx:{flex:1}}),jsxRuntime.jsxs(material.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:[i.length>0&&jsxRuntime.jsx(material.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:i.map((v,E)=>jsxRuntime.jsx(pe__namespace.default.Fragment,{children:v},`toolbar-custom-${E}`))}),jsxRuntime.jsx(material.Box,{sx:{width:"1px",height:20,bgcolor:"divider",mx:.5}}),jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.groupBy"),children:jsxRuntime.jsx(material.IconButton,{onClick:v=>e.setGroupAnchorEl(v.currentTarget),children:jsxRuntime.jsx(material.Badge,{badgeContent:e.grouping?.length,color:"primary",children:jsxRuntime.jsx(pl__default.default,{})})})}),jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.summary"),children:jsxRuntime.jsx(material.IconButton,{onClick:v=>e.setSummaryAnchorEl(v.currentTarget),color:e.showSummary?"primary":"default",children:jsxRuntime.jsx(ml__default.default,{})})}),jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.columns"),children:jsxRuntime.jsx(material.IconButton,{onClick:v=>e.setAnchorEl(v.currentTarget),children:jsxRuntime.jsx(cl__default.default,{})})}),jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.export"),children:jsxRuntime.jsx(material.IconButton,{onClick:e.handleExport,children:jsxRuntime.jsx(dl__default.default,{})})}),e.showCreateButton&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.newItem"),children:jsxRuntime.jsx(material.IconButton,{onClick:e.onOpenCreateDialog,color:"primary",children:jsxRuntime.jsx(fl__default.default,{})})}),e.showEditButton&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.editItem"),children:jsxRuntime.jsx("span",{children:jsxRuntime.jsx(material.IconButton,{onClick:e.onOpenEditDialog,color:"primary",disabled:!!e.editDisabled,children:jsxRuntime.jsx(hl__default.default,{})})})}),e.showDeleteButton&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.deleteItem"),children:jsxRuntime.jsx("span",{children:jsxRuntime.jsx(material.IconButton,{onClick:e.onOpenDeleteConfirm,color:"error",disabled:!!e.deleteDisabled,children:jsxRuntime.jsx(bl__default.default,{})})})}),e.onOpenGraphReport&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.graphicReport"),children:jsxRuntime.jsx(material.IconButton,{onClick:e.onOpenGraphReport,children:jsxRuntime.jsx(gl__default.default,{})})}),e.onLayoutSave&&!e.layoutManager&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.saveLayout"),children:jsxRuntime.jsx(material.IconButton,{onClick:v=>e.onLayoutSave(v),children:jsxRuntime.jsx(Tr__default.default,{})})}),e.layoutManager]})]})};var Ho=e=>{let{t}=V(),{onSelectAllClick:a,order:r,orderBy:l,numSelected:i=0,rowCount:o=0,onRequestSort:c,columns:g,visibleColumns:m,selectionMode:f,grouping:S=[],isAllExpanded:x=false,handleToggleAll:P,onColumnResize:v,columnWidths:E}=e,[u,y]=pe.useState(null),s=pe.useRef(null),I=n=>D=>{u||c(n);},C=(n,D,d)=>{n.preventDefault(),n.stopPropagation(),y(D),s.current={startX:n.clientX,startWidth:d,colId:D},document.addEventListener("mousemove",R),document.addEventListener("mouseup",T),document.body.style.cursor="col-resize";},R=n=>{if(!s.current)return;let{startX:D,startWidth:d,colId:B}=s.current,M=n.clientX-D,O=Math.max(50,d+M);v&&v(B,O);},T=()=>{y(null),s.current=null,document.removeEventListener("mousemove",R),document.removeEventListener("mouseup",T),document.body.style.cursor="";};pe.useEffect(()=>()=>{document.removeEventListener("mousemove",R),document.removeEventListener("mouseup",T);},[]);let h=f==="multiple"||f==="single",p=S.length>0&&!!P,k=t(x?"table.group.collapseAll":"table.group.expandAll"),w=g.filter(n=>m.includes(n.id));return jsxRuntime.jsx(kl__default.default,{children:jsxRuntime.jsxs(wl__default.default,{children:[h&&jsxRuntime.jsx(La__default.default,{padding:"checkbox",sx:n=>({width:48,position:"sticky",top:0,zIndex:4,backgroundColor:n.palette.mode==="dark"?"#000000":"#f5f5f5",color:n.palette.mode==="dark"?"#ffffff":n.palette.text.primary}),children:jsxRuntime.jsx(Tl__default.default,{color:"primary",indeterminate:i>0&&i<o,checked:o>0&&i===o,onChange:a,disabled:f==="single"})}),p&&jsxRuntime.jsx(La__default.default,{align:"center",padding:"checkbox",sx:n=>({width:44,position:"sticky",top:0,zIndex:4,backgroundColor:n.palette.mode==="dark"?"#000000":"#f5f5f5",color:n.palette.mode==="dark"?"#ffffff":n.palette.text.primary}),children:jsxRuntime.jsx(Ml__default.default,{title:k,children:jsxRuntime.jsx(Il__default.default,{size:"small",onClick:n=>{n.stopPropagation(),P?.(!x);},sx:{p:.2},children:x?jsxRuntime.jsx(Rl__default.default,{fontSize:"small"}):jsxRuntime.jsx(Pl__default.default,{fontSize:"small"})})})}),w.map(n=>{let D=E?.[n.id]||n.minWidth||100;return jsxRuntime.jsxs(La__default.default,{align:"left",padding:n.disablePadding?"none":"normal",sortDirection:l===n.id?r:false,style:{width:D,minWidth:D,maxWidth:D},sx:d=>({position:"sticky",top:0,zIndex:4,backgroundColor:d.palette.mode==="dark"?"#000000":"#f5f5f5",color:d.palette.mode==="dark"?"#ffffff":d.palette.text.primary,fontWeight:"bold",userSelect:"none"}),children:[jsxRuntime.jsx(Dl__default.default,{active:l===n.id,direction:l===n.id?r:"asc",onClick:I(n.id),sx:d=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:d.palette.mode==="dark"?"#ffffff":d.palette.text.primary,opacity:l===n.id?1:0,transition:"opacity 0.2s"},"&:hover .MuiTableSortLabel-icon":{opacity:.5},"&.Mui-active .MuiTableSortLabel-icon":{opacity:1,color:d.palette.mode==="dark"?"#ffffff":d.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:d.palette.mode==="dark"?"#ffffff":d.palette.text.primary}),children:jsxRuntime.jsx(St__default.default,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1},children:n.label})}),jsxRuntime.jsx(St__default.default,{onMouseDown:d=>C(d,n.id,typeof D=="number"?D:100),onClick:d=>d.stopPropagation(),sx:{position:"absolute",right:0,top:0,bottom:0,width:5,cursor:"col-resize","&:hover":{backgroundColor:"primary.main",opacity:.5},zIndex:1}})]},n.id)})]})})};var qo=e=>{let{t}=V(),{visibleRows:a,visibleColumns:r,selected:l=[],handleClick:i,columns:o,toggleGroupExpand:c,expandedGroups:g=new Set,selectionMode:m,grouping:f=[],isGroupFullyExpanded:S,handleExpandGroupRecursively:x,handleCollapseGroupRecursively:P}=e,v=s=>l.indexOf(s)!==-1,E=m==="multiple"||m==="single",u=f.length>0,y=r.length+(E?1:0)+(u?1:0);return jsxRuntime.jsxs(material.TableBody,{children:[a.map((s,I)=>{if(s.type==="group"){let C=g.has(s.id),R=s.childIds||[],T=R.filter(w=>v(w)).length,h=R.length>0&&T===R.length,p=T>0&&T<R.length;return jsxRuntime.jsxs(material.TableRow,{sx:w=>({backgroundColor:w.palette.mode==="dark"?"#111111":"#f5f5f5","& .MuiTableCell-root":{color:w.palette.text.primary,borderBottomColor:w.palette.divider},"& .MuiIconButton-root":{color:w.palette.text.primary},"& .MuiCheckbox-root":{color:w.palette.text.secondary},"& .MuiCheckbox-root.Mui-checked, & .MuiCheckbox-root.MuiCheckbox-indeterminate":{color:w.palette.primary.main}}),children:[E&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",children:jsxRuntime.jsx(material.Checkbox,{size:"small",checked:h,indeterminate:p,onChange:w=>{if(w.stopPropagation(),!!e.onSelectionChange)if(h){let n=l.filter(D=>!R.includes(D));e.onSelectionChange(n);}else {let n=Array.from(new Set([...l,...R]));e.onSelectionChange(n);}},onClick:w=>w.stopPropagation(),sx:{p:.5}})}),u&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{width:44},children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:.25},children:[f.length>1&&s.level<f.length-1&&jsxRuntime.jsx(material.Tooltip,{title:S?.(s.id)?t("table.group.collapseAll"):t("table.group.expandAll"),children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>{S?.(s.id)?P?.(s.id):x?.(s.id);},sx:{p:.25},children:S?.(s.id)?jsxRuntime.jsx(Rl__default.default,{fontSize:"small"}):jsxRuntime.jsx(Pl__default.default,{fontSize:"small"})})}),jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>c&&c(s.id),sx:{p:.25},children:C?jsxRuntime.jsx(Ol__default.default,{}):jsxRuntime.jsx(vl__default.default,{})})]})}),jsxRuntime.jsx(material.TableCell,{colSpan:r.length,sx:{py:1,pl:s.level*3+1},children:jsxRuntime.jsxs(material.Typography,{variant:"body2",fontWeight:"bold",color:"text.primary",sx:{fontSize:"0.85rem"},children:[s.field,": ",s.value," (",s.count,")"]})})]},s.id)}else {let C=s.data||s,R=s.id||C.id||I,T=v(R),h=`enhanced-table-checkbox-${I}`,k=(s.level!==void 0?s.level:0)*4;return jsxRuntime.jsxs(material.TableRow,{hover:true,onClick:w=>i&&i(w,C),role:"checkbox","aria-checked":T,tabIndex:-1,selected:T,sx:{cursor:"pointer"},children:[E&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{pl:k>0?k+1:void 0},children:jsxRuntime.jsx(material.Checkbox,{color:"primary",checked:T,inputProps:{"aria-labelledby":h}})}),u&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{width:44}}),o.filter(w=>r.includes(w.id)).map((w,n)=>{let d=!E&&n===0&&k>0?{pl:k+2}:{};return jsxRuntime.jsx(material.TableCell,{align:"left",sx:d,children:w.render?w.render(C[w.id],C):(function(){let M=C[w.id];if(w.numeric){if(typeof M=="number")return M.toLocaleString();if(typeof M=="string"&&M.trim()!==""&&!isNaN(Number(M)))return Number(M).toLocaleString()}return M})()},w.id)})]},R)}}),a.length===0&&jsxRuntime.jsx(material.TableRow,{children:jsxRuntime.jsx(material.TableCell,{colSpan:y,align:"center",children:t("common.noData")})})]})};var Uo=e=>{let{visibleColumns:t,summaryRow:a,selectionMode:r,grouping:l=[]}=e;if(!e.showSummary)return null;let i=r==="multiple"||r==="single",o=l.length>0;return jsxRuntime.jsx(material.TableFooter,{sx:{position:"sticky",bottom:0,zIndex:e.zIndex,bgcolor:"background.paper"},children:jsxRuntime.jsxs(material.TableRow,{children:[i&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper"}}),o&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper",width:44}}),t.map(c=>jsxRuntime.jsx(material.TableCell,{sx:{fontWeight:"bold",fontSize:"0.85rem",bgcolor:"background.paper",color:"text.primary"},children:(function(){let m=a[c];return m==null||m===""?"":typeof m=="number"?m.toLocaleString():typeof m=="string"&&m.trim()!==""&&!isNaN(Number(m))?Number(m).toLocaleString():m})()},c))]})})};var _o=e=>{let{t}=V();return jsxRuntime.jsx(material.Box,{sx:{p:2},children:jsxRuntime.jsx(material.Typography,{children:t("table.mobile.notImplemented")})})};var jo=({groupAnchorEl:e,setGroupAnchorEl:t,grouping:a,setGrouping:r,columns:l,toggleGroupField:i})=>{let{t:o}=V();return jsxRuntime.jsxs(material.Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxRuntime.jsxs(material.Box,{sx:{p:1,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[jsxRuntime.jsx(material.Typography,{variant:"subtitle2",sx:{px:1},children:o("table.menu.groupBy")}),a.length>0&&jsxRuntime.jsx(material.Button,{size:"small",color:"error",onClick:()=>r([]),startIcon:jsxRuntime.jsx(Xl__default.default,{}),children:o("table.menu.clearAll")})]}),jsxRuntime.jsx(material.Divider,{}),l.map(c=>{let g=a.includes(c.id),m=a.indexOf(c.id)+1;return jsxRuntime.jsx(material.MenuItem,{onClick:()=>i(c.id),children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsxRuntime.jsx(material.Checkbox,{checked:g,size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:c.label}),g&&jsxRuntime.jsx(material.Badge,{badgeContent:m,color:"primary",sx:{mr:2}})]})},c.id)})]})},Qo=({anchorEl:e,setAnchorEl:t,columns:a,visibleColumns:r,toggleColumnVisibility:l})=>{let{t:i}=V();return jsxRuntime.jsxs(material.Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.ListItemText,{primary:i("table.menu.visibleColumns")})}),jsxRuntime.jsx(material.Divider,{}),a.map(o=>jsxRuntime.jsxs(material.MenuItem,{onClick:()=>l(o.id),children:[jsxRuntime.jsx(material.Checkbox,{checked:r.includes(o.id),size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:o.label})]},o.id))]})},Yo=({anchorEl:e,setAnchorEl:t,showSummary:a,setShowSummary:r,columns:l,summaryColumns:i,toggleSummaryColumn:o})=>{let{t:c}=V();return jsxRuntime.jsxs(material.Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxRuntime.jsx(material.MenuItem,{children:jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Switch,{checked:a,onChange:g=>r(g.target.checked),size:"small"}),label:c("table.menu.showSummaryRow")})}),jsxRuntime.jsx(material.Divider,{}),l.filter(g=>g.numeric).map(g=>jsxRuntime.jsxs(material.MenuItem,{onClick:()=>o(g.id),disabled:!a,children:[jsxRuntime.jsx(material.Checkbox,{checked:i.includes(g.id),size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:g.label})]},g.id)),l.filter(g=>g.numeric).length===0&&jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.ListItemText,{primary:c("table.menu.noNumericColumns")})})]})},Xo=({contextMenu:e,handleCloseContextMenu:t,columns:a,visibleColumns:r,toggleColumnVisibility:l})=>{let{t:i}=V();return jsxRuntime.jsxs(material.Menu,{open:e!==null,onClose:t,anchorReference:"anchorPosition",anchorPosition:e!==null?{top:e.mouseY,left:e.mouseX}:void 0,children:[jsxRuntime.jsx(material.MenuItem,{onClick:t,children:i("common.copy")}),jsxRuntime.jsx(material.Divider,{}),jsxRuntime.jsx(material.MenuItem,{disabled:true,children:i("table.menu.visibleColumns")}),a.map(o=>jsxRuntime.jsxs(material.MenuItem,{onClick:()=>l(o.id),children:[jsxRuntime.jsx(material.ListItemIcon,{children:r.includes(o.id)&&jsxRuntime.jsx(Yl__default.default,{fontSize:"small"})}),jsxRuntime.jsx(material.ListItemText,{children:o.label})]},o.id))]})};var mt=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),Jo=({kpis:e})=>{let{t}=V(),a=[{label:t("graph.kpi.totalRecords"),value:mt(e.totalRecords,0),color:"text.primary"},{label:t("graph.kpi.totalReport"),value:mt(e.totalReportHours),color:"text.primary"},{label:t("graph.kpi.totalBillable"),value:mt(e.totalBillableHours),color:"success.main"},{label:t("graph.kpi.efficiency"),value:`${e.efficiency.toFixed(2)}%`,color:"warning.main"},{label:t("graph.kpi.amount"),value:mt(e.totalAmount),color:"info.main"},{label:t("graph.kpi.flagged"),value:mt(e.flaggedCount,0),color:"error.main"}];return jsxRuntime.jsx(material.Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(6, minmax(0, 1fr))"},gap:1.5},children:a.map(r=>jsxRuntime.jsxs(material.Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2,minHeight:96,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",children:r.label}),jsxRuntime.jsx(material.Typography,{variant:"h4",fontWeight:800,sx:{color:r.color},children:r.value})]},r.label))})};var Vt=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],ai=({data:e})=>{let t=Math.max(...e.map(a=>a.value),1);return jsxRuntime.jsx(material.Stack,{spacing:1,children:e.map(a=>jsxRuntime.jsxs(material.Box,{sx:{display:"grid",gridTemplateColumns:"140px 1fr 64px",gap:1},children:[jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",noWrap:true,title:a.name,children:a.name}),jsxRuntime.jsx(material.Box,{sx:{alignSelf:"center",bgcolor:"action.hover",height:10,borderRadius:999,overflow:"hidden"},children:jsxRuntime.jsx(material.Box,{sx:{width:`${a.value/t*100}%`,height:"100%",bgcolor:"primary.main"}})}),jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{textAlign:"right",fontWeight:600},children:a.value.toFixed(1)})]},a.name))})},oi=({data:e})=>{let t=Math.max(...e.map(a=>a.value),1);return jsxRuntime.jsx(material.Box,{sx:{display:"flex",gap:1,alignItems:"flex-end",minHeight:210},children:e.map(a=>jsxRuntime.jsxs(material.Box,{sx:{flex:1,minWidth:0},children:[jsxRuntime.jsx(material.Box,{sx:{height:`${Math.max(a.value/t*180,6)}px`,bgcolor:"primary.main",borderRadius:"8px 8px 0 0"}}),jsxRuntime.jsx(material.Typography,{variant:"caption",noWrap:true,title:a.name,sx:{display:"block",mt:.5},children:a.name}),jsxRuntime.jsxs(material.Typography,{variant:"caption",color:"text.secondary",children:[a.value.toFixed(1),"%"]})]},a.name))})},ri=({data:e})=>{let{t}=V();if(e.length===0)return jsxRuntime.jsx(material.Typography,{variant:"body2",color:"text.secondary",children:t("common.noData")});let a=0,l=`conic-gradient(${e.map((i,o)=>{let c=a;return a+=i.percent,`${Vt[o%Vt.length]} ${c}% ${a}%`}).join(", ")})`;return jsxRuntime.jsxs(material.Stack,{direction:{xs:"column",sm:"row"},spacing:2,alignItems:"center",children:[jsxRuntime.jsx(material.Box,{sx:{width:180,height:180,borderRadius:"50%",background:l,position:"relative"},children:jsxRuntime.jsx(material.Box,{sx:{position:"absolute",inset:30,bgcolor:"background.paper",borderRadius:"50%"}})}),jsxRuntime.jsx(material.Stack,{spacing:1,sx:{minWidth:180},children:e.map((i,o)=>jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsxRuntime.jsx(material.Box,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:Vt[o%Vt.length]}}),jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{flex:1},children:i.name}),jsxRuntime.jsxs(material.Typography,{variant:"caption",sx:{fontWeight:700},children:[i.percent.toFixed(0),"%"]})]},i.name))})]})},Oa=({title:e,subtitle:t,children:a})=>jsxRuntime.jsxs(material.Paper,{variant:"outlined",sx:{p:2,borderRadius:2},children:[jsxRuntime.jsx(material.Typography,{variant:"subtitle1",fontWeight:700,children:e}),jsxRuntime.jsx(material.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:t}),a]}),er=({billableByPrimary:e,efficiencyBySecondary:t,statusDistribution:a})=>{let{t:r}=V();return jsxRuntime.jsxs(material.Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"1.2fr 1.2fr 1fr"}},children:[jsxRuntime.jsx(Oa,{title:r("graph.chart.billable.title"),subtitle:r("graph.chart.billable.subtitle"),children:jsxRuntime.jsx(ai,{data:e})}),jsxRuntime.jsx(Oa,{title:r("graph.chart.efficiency.title"),subtitle:r("graph.chart.efficiency.subtitle"),children:jsxRuntime.jsx(oi,{data:t})}),jsxRuntime.jsx(Oa,{title:r("graph.chart.status.title"),subtitle:r("graph.chart.status.subtitle"),children:jsxRuntime.jsx(ri,{data:a})})]})};var ar=({open:e,onClose:t,model:a,tableContent:r})=>{let{t:l}=V();return jsxRuntime.jsx(material.Dialog,{open:e,onClose:t,fullScreen:true,children:jsxRuntime.jsxs(material.Box,{sx:{height:"100%",display:"flex",flexDirection:"column",bgcolor:"background.default"},children:[jsxRuntime.jsx(material.Box,{sx:{p:2,borderBottom:1,borderColor:"divider"},children:jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",spacing:2,children:[jsxRuntime.jsxs(material.Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[jsxRuntime.jsx(material.Typography,{variant:"h5",fontWeight:800,children:a.title}),jsxRuntime.jsx(material.Chip,{size:"small",label:l("graph.records",{count:a.kpis.totalRecords})})]}),jsxRuntime.jsx(material.IconButton,{onClick:t,children:jsxRuntime.jsx(ci__default.default,{})})]})}),jsxRuntime.jsxs(material.Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsxRuntime.jsx(Jo,{kpis:a.kpis}),jsxRuntime.jsx(er,{billableByPrimary:a.charts.billableByPrimary,efficiencyBySecondary:a.charts.efficiencyBySecondary,statusDistribution:a.charts.statusDistribution}),r]})]})})};var He={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"]},ui=5,or=e=>e.toLowerCase().replace(/[\s_-]/g,""),Ge=(e,t,a,r)=>{if(t)return t;if(e.length===0)return r;let l=Object.keys(e[0]),i=new Map(l.map(o=>[or(o),o]));for(let o of a){let c=i.get(or(o));if(c)return c}return l[0]||r},Ae=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},Be=(e,t)=>e==null||e===""?t:String(e),di=(e,t,a,r,l)=>{let i=new Map;return e.forEach(o=>{let c=Be(o[t],l);i.set(c,(i.get(c)||0)+Ae(o[a]));}),Array.from(i.entries()).map(([o,c])=>({name:o,value:c})).sort((o,c)=>c.value-o.value).slice(0,r)},pi=(e,t,a,r,l,i)=>{let o=new Map;return e.forEach(c=>{let g=Be(c[t],i),m=o.get(g)||{report:0,billable:0};m.report+=Ae(c[a]),m.billable+=Ae(c[r]),o.set(g,m);}),Array.from(o.entries()).map(([c,g])=>({name:c,value:g.report>0?g.billable/g.report*100:0})).sort((c,g)=>c.value-g.value).slice(0,l)},mi=(e,t,a)=>{let r=e.length;if(r===0)return [];let l=new Map;return e.forEach(i=>{let o=Be(i[t],a);l.set(o,(l.get(o)||0)+1);}),Array.from(l.entries()).map(([i,o])=>({name:i,value:o,percent:o/r*100}))},rr=({rows:e,config:t})=>{let{t:a}=V(),r=a("graph.unassigned"),l=pe.useMemo(()=>{let f=t?.fieldMapping;return {primaryDimension:Ge(e,f?.primaryDimension,He.primaryDimension,"Category"),secondaryDimension:Ge(e,f?.secondaryDimension,He.secondaryDimension,"Owner"),status:Ge(e,f?.status,He.status,"Status"),date:Ge(e,f?.date,He.date,"Date"),description:Ge(e,f?.description,He.description,"Description"),reportHours:Ge(e,f?.reportHours,He.reportHours,"ReportHours"),billableHours:Ge(e,f?.billableHours,He.billableHours,"BillableHours"),amount:Ge(e,f?.amount,He.amount,"Amount")}},[e,t?.fieldMapping]),i=pe.useMemo(()=>e.map((f,S)=>{let x=Ae(f[l.reportHours]),P=Ae(f[l.billableHours]),v=Ae(f[l.amount]),E=x>0?P/x*100:0;return {id:`graph-row-${S}`,Date:Be(f[l.date],""),Primary:Be(f[l.primaryDimension],r),Secondary:Be(f[l.secondaryDimension],r),Description:Be(f[l.description],""),ReportHours:x,BillableHours:P,Amount:v,Efficiency:E,Status:Be(f[l.status],r)}}),[e,l,r]),o=pe.useMemo(()=>{let f=i.length,S=i.reduce((y,s)=>y+Ae(s.ReportHours),0),x=i.reduce((y,s)=>y+Ae(s.BillableHours),0),P=i.reduce((y,s)=>y+Ae(s.Amount),0),v=S>0?x/S*100:0,E=t?.statusFlagValues||["flag","flagged","warning","risk"],u=i.filter(y=>E.includes(Be(y.Status,"").toLowerCase())).length;return {totalRecords:f,totalReportHours:S,totalBillableHours:x,efficiency:v,totalAmount:P,flaggedCount:u}},[i,t?.statusFlagValues]),c=t?.topN||ui,g=pe.useMemo(()=>({billableByPrimary:di(i,"Primary","BillableHours",c,r),efficiencyBySecondary:pi(i,"Secondary","ReportHours","BillableHours",c,r),statusDistribution:mi(i,"Status",r)}),[i,c,r]),m=pe.useMemo(()=>({title:t?.title||a("graph.reportTitle"),kpis:o,charts:g,table:{columns:[{id:"Date",label:l.date},{id:"Primary",label:l.primaryDimension},{id:"Secondary",label:l.secondaryDimension},{id:"Description",label:l.description},{id:"ReportHours",label:a("graph.column.reportHours"),align:"right"},{id:"BillableHours",label:a("graph.column.billableHours"),align:"right"},{id:"Amount",label:"Amount",align:"right"},{id:"Efficiency",label:"Efficiency",align:"right"},{id:"Status",label:l.status}],rows:i}}),[g,t?.title,l,o,i,a]);return {fieldMapping:l,model:m}};var Gt=({variants:e,currentVariantId:t,onLoad:a,onSave:r,onDelete:l,onSetDefault:i})=>{let{t:o}=V(),g=material.useTheme().palette.mode==="dark",m="0.85rem",f={xs:"calc((100% - 1 * 16px) / 2)",sm:"calc((100% - 2 * 16px) / 3)",md:"calc((100% - 3 * 16px) / 4)",lg:"calc((100% - 5 * 16px) / 6)"},[S,x]=pe.useState(false),[P,v]=pe.useState(""),[E,u]=pe.useState(false),[y,s]=pe.useState(false),I=e.find(T=>T.id===t),C=()=>{v(I?.name||o("variant.newVariant")),u(I?.isDefault||false),s(I?.isPublic||false),x(true);},R=()=>{r({name:P,isDefault:E,isPublic:y,description:""}),x(false);};return jsxRuntime.jsxs(material.Box,{sx:{display:"flex",gap:1,alignItems:"center",width:"100%",maxWidth:"100%"},children:[jsxRuntime.jsx(material.Autocomplete,{size:"small",sx:{width:f,"& .MuiInputBase-root":{fontSize:m,bgcolor:g?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:g?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:g?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:g?"rgba(144,202,249,0.9)":"rgba(25,118,210,0.85)"}},"& .MuiInputBase-input":{fontSize:m},"& .MuiAutocomplete-noOptions":{fontSize:m}},noOptionsText:jsxRuntime.jsx(material.Typography,{sx:{fontSize:m},children:o("variant.noOptions")}),options:e,getOptionLabel:T=>T.name+(T.isDefault?` (${o("variant.defaultSuffix")})`:""),value:I||null,onChange:(T,h)=>{h&&a(h);},renderInput:T=>jsxRuntime.jsx(material.TextField,{...T,variant:"outlined",size:"small",InputProps:{...T.InputProps,sx:{fontSize:m,color:g?"#E3F2FD":"#0D47A1"}},placeholder:o("variant.selectVariant")}),renderOption:(T,h)=>jsxRuntime.jsx("li",{...T,children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsxRuntime.jsx(material.Typography,{sx:{flex:1,fontSize:m},children:h.name}),h.isDefault&&jsxRuntime.jsx(ki__default.default,{fontSize:"small",color:"action"})]})})}),jsxRuntime.jsx(material.Tooltip,{title:o("variant.saveView"),children:jsxRuntime.jsx(material.IconButton,{onClick:C,size:"small",color:"primary",children:jsxRuntime.jsx(Tr__default.default,{fontSize:"small"})})}),jsxRuntime.jsxs(material.Dialog,{open:S,onClose:()=>x(false),children:[jsxRuntime.jsx(material.DialogTitle,{children:o("variant.saveView")}),jsxRuntime.jsxs(material.DialogContent,{children:[jsxRuntime.jsx(material.TextField,{autoFocus:true,margin:"dense",label:o("variant.viewName"),fullWidth:true,variant:"outlined",value:P,onChange:T=>v(T.target.value)}),jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Checkbox,{checked:E,onChange:T=>u(T.target.checked)}),label:o("variant.setDefault")}),jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Checkbox,{checked:y,onChange:T=>s(T.target.checked)}),label:o("variant.publicAllUsers")})]}),jsxRuntime.jsxs(material.DialogActions,{children:[jsxRuntime.jsx(material.Button,{onClick:()=>x(false),children:o("common.cancel")}),jsxRuntime.jsx(material.Button,{onClick:R,variant:"contained",children:o("common.save")})]})]})]})};var Di="http://127.0.0.1:8515",pr=({appId:e,tableKey:t="default",currentFilters:a,currentLayoutId:r,layoutRefs:l,onLoad:i,serviceUrl:o=Di,onError:c,onSuccess:g,currentVariantId:m,onVariantChange:f})=>{let{t:S}=V(),[x,P]=pe.useState([]),[v,E]=pe.useState(""),u=m!==void 0?m:v,y=h=>{m===void 0&&E(h),f&&f(h);},s=pe.useCallback(async()=>{if(!e)return [];try{let h=await fetch(`${o}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!h.ok)throw new Error(S("variant.toast.fetchFailed"));let p=await h.json();P(p);let k=p.find(w=>w.isDefault);return k&&!u&&(y(k.id),i(k)),p}catch(h){return console.error("Error fetching variants",h),c&&c(S("variant.toast.fetchFailed")),[]}},[e,t,o,c,u,i,S]);return pe.useEffect(()=>{s();},[e,t]),jsxRuntime.jsx(Gt,{variants:x,currentVariantId:u,onLoad:h=>{y(h.id),i(h);},onSave:async h=>{try{let p=x.find(M=>M.name===h.name),k=p?p.id:Date.now().toString(),w=[];if(p&&(Array.isArray(p.filters)?w=[...p.filters]:p.filters&&(w=[{scope:"default",filters:p.filters}])),h.scope==="Search"||h.scope==="Both"){let M=(Array.isArray(a),a);if(M)if(Array.isArray(M)&&M.length>0&&M[0].scope)M.forEach(O=>{let q=w.findIndex(le=>le.scope===O.scope);q>=0?w[q]=O:w.push(O);});else {let O={scope:t,filters:M},q=w.findIndex(le=>le.scope===t);q>=0?w[q]=O:w.push(O);}}let n=p?.layout||{},D=[];if(p&&Array.isArray(p.layoutRefs)&&(D=[...p.layoutRefs]),h.scope==="Layout"||h.scope==="Both")if(l&&l.length>0)l.forEach(M=>{let O=D.findIndex(q=>q.tableKey===M.tableKey);O>=0?D[O]=M:D.push(M);});else {let M={tableKey:t,layoutId:r||null},O=D.findIndex(q=>q.tableKey===t);O>=0?D[O]=M:D.push(M);}let d={appId:e,tableKey:t,...h,id:k,createdAt:new Date().toISOString(),filters:w,layout:n,layoutRefs:D};if(!(await fetch(`${o}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d)})).ok)throw new Error(S("variant.toast.saveFailed"));g&&g(S("variant.toast.saveSuccess")),await s(),y(k),i(d);}catch(p){console.error("Error saving variant",p),c&&c(S("variant.toast.saveFailed"));}},onDelete:async h=>{try{if(!(await fetch(`${o}/api/variants/${h}`,{method:"DELETE"})).ok)throw new Error(S("variant.toast.deleteFailed"));u===h&&y(""),s(),g&&g(S("variant.toast.deleteSuccess"));}catch(p){console.error("Error deleting variant",p),c&&c(S("variant.toast.deleteFailed"));}},onSetDefault:async h=>{try{let p=x.find(n=>n.id===h);if(!p)return;let k={appId:e,tableKey:t,...p,isDefault:!0};if(!(await fetch(`${o}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(k)})).ok)throw new Error(S("variant.toast.defaultFailed"));await s(),g&&g(S("variant.toast.defaultSuccess"));}catch(p){console.error("Error setting default variant",p),c&&c(S("variant.toast.defaultFailed"));}}})};je__default.default.extend(qi__default.default);je__default.default.extend(Ui__default.default);var $i=[null,null],Ga="0.85rem",_i={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},Ki=material.styled(PickersDay.PickersDay,{shouldForwardProp:e=>e!=="isInRange"&&e!=="isStart"&&e!=="isEnd"&&e!=="isHovered"})(({theme:e,isInRange:t,isStart:a,isEnd:r,isHovered:l})=>({...t&&{borderRadius:0,backgroundColor:e.palette.primary.light,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.main}},...l&&!t&&!a&&!r&&{borderRadius:0,backgroundColor:e.palette.action.hover,border:`1px dashed ${e.palette.primary.main}`},...a&&{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}},...a&&r&&{borderRadius:"50%"}})),fr=({label:e,value:t=$i,onChange:a})=>{let{t:r,locale:l}=V(),i=_i[l]||"en",o=e||r("dateRange.label"),[c,g]=pe.useState(null),[m,f]=pe.useState(t),[S,x]=pe.useState("start"),[P,v]=pe.useState(null),[E,u]=pe.useState((t[0]||je__default.default()).locale(i)),y=pe__namespace.default.useRef(t);pe.useEffect(()=>{let[d,B]=t,[M,O]=y.current,q=H=>H&&typeof H.isSame=="function",le=!(d===null&&M===null||q(d)&&q(M)&&d.isSame(M,"day")),ze=!(B===null&&O===null||q(B)&&q(O)&&B.isSame(O,"day"));(le||ze)&&(f(t),t[0]&&q(t[0])&&u(t[0].locale(i))),y.current=t;},[t,i]);let s=d=>{g(d.currentTarget);},I=()=>{g(null),x("start"),v(null);},C=!!c,R=d=>{if(!d)return;let B=[...m];if(S==="start")B=[d,null],x("end");else {let M=B[0];M&&d.isBefore(M)?(B=[d,null],x("end")):(B=[M,d],x("start"));}f(B);},T=d=>{let B=je__default.default().locale(i),M=[null,null];switch(d){case "today":M=[B,B];break;case "week":M=[B.startOf("week"),B.endOf("week")];break;case "month":M=[B.startOf("month"),B.endOf("month")];break}f(M),x("start"),u(B);},h=()=>{f([null,null]),x("start"),u(je__default.default().locale(i));},p=()=>{a&&a(m),I();},k=()=>{f(t),x("start"),I();},w=pe.useCallback(d=>{let{day:B,...M}=d,[O,q]=m,le=O?B.isSame(O,"day"):false,ze=q?B.isSame(q,"day"):false,H=O&&q?B.isBetween(O,q,"day","()"):false,$=false;return S==="end"&&O&&!q&&P&&B.isAfter(O,"day")&&B.isBefore(P.add(1,"day"),"day")&&($=true),jsxRuntime.jsx(Ki,{...M,day:B,disableMargin:true,isStart:le,isEnd:ze,isInRange:H||$,onMouseEnter:()=>v(B)})},[m,S,P]),n=d=>d?d.locale(i).format("YYYY-MM-DD"):"",D=d=>d?d.locale(i).format("ll"):"";return jsxRuntime.jsxs(material.Box,{children:[jsxRuntime.jsx(material.TextField,{label:o,value:m[0]?`${n(m[0])} - ${n(m[1])}`:"",onClick:s,fullWidth:true,size:"small",InputLabelProps:{sx:{fontSize:Ga}},InputProps:{readOnly:true,sx:{fontSize:Ga,"& .MuiOutlinedInput-input":{fontSize:Ga},paddingRight:"4px"},endAdornment:jsxRuntime.jsxs(material.InputAdornment,{position:"end",sx:{ml:0},children:[(m[0]||m[1])&&jsxRuntime.jsx(material.IconButton,{size:"small",onClick:d=>{d.stopPropagation(),h();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsxRuntime.jsx(Gi__default.default,{sx:{fontSize:"1rem"}})}),jsxRuntime.jsx(material.IconButton,{size:"small",edge:"end",onClick:s,sx:{padding:"2px"},children:jsxRuntime.jsx(Hi__default.default,{sx:{fontSize:"1rem"},color:"action"})})]})}}),jsxRuntime.jsxs(material.Popover,{open:C,anchorEl:c,onClose:I,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},slotProps:{paper:{sx:{display:"flex",flexDirection:"column",p:0,minWidth:320}}},children:[jsxRuntime.jsx(material.Box,{sx:{p:2,bgcolor:"background.default",borderBottom:1,borderColor:"divider"},children:jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:2,justifyContent:"space-between",children:[jsxRuntime.jsxs(material.Box,{sx:{p:1,border:1,borderColor:S==="start"?"primary.main":"divider",borderRadius:1,bgcolor:S==="start"?"action.hover":"transparent",flex:1,cursor:"pointer"},onClick:()=>x("start"),children:[jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",display:"block",children:r("dateRange.startDate")}),jsxRuntime.jsx(material.Typography,{variant:"body2",fontWeight:500,children:m[0]?D(m[0]):r("dateRange.select")})]}),jsxRuntime.jsx(Wi__default.default,{color:"action",fontSize:"small"}),jsxRuntime.jsxs(material.Box,{sx:{p:1,border:1,borderColor:S==="end"?"primary.main":"divider",borderRadius:1,bgcolor:S==="end"?"action.hover":"transparent",flex:1,cursor:"pointer"},onClick:()=>{m[0]&&x("end");},children:[jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",display:"block",children:r("dateRange.endDate")}),jsxRuntime.jsx(material.Typography,{variant:"body2",fontWeight:500,children:m[1]?D(m[1]):r("dateRange.select")})]})]})}),jsxRuntime.jsx(material.Box,{sx:{p:2,pb:0},children:jsxRuntime.jsxs(material.Stack,{direction:"row",spacing:1,justifyContent:"center",children:[jsxRuntime.jsx(material.Chip,{label:r("dateRange.today"),onClick:()=>T("today"),clickable:true,size:"small",variant:"outlined"}),jsxRuntime.jsx(material.Chip,{label:r("dateRange.thisWeek"),onClick:()=>T("week"),clickable:true,size:"small",variant:"outlined"}),jsxRuntime.jsx(material.Chip,{label:r("dateRange.thisMonth"),onClick:()=>T("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsxRuntime.jsx(LocalizationProvider.LocalizationProvider,{dateAdapter:AdapterDayjs.AdapterDayjs,adapterLocale:i,children:jsxRuntime.jsx(DateCalendar.DateCalendar,{value:null,referenceDate:E,onMonthChange:u,onYearChange:u,onChange:R,slots:{day:w},views:["day"],showDaysOutsideCurrentMonth:true,sx:{m:0}})}),jsxRuntime.jsx(material.Divider,{}),jsxRuntime.jsxs(material.Stack,{direction:"row",justifyContent:"flex-end",spacing:1,sx:{p:2},children:[jsxRuntime.jsx(material.Button,{size:"small",onClick:k,color:"inherit",children:r("common.cancel")}),jsxRuntime.jsx(material.Button,{size:"small",variant:"contained",onClick:p,children:r("common.done")})]})]})]})};var Ut={equals:"=",contains:"\u2287",notContains:"\u2285",wildcard:"*","=":"=","!=":"!=",">":">","<":"<",">=":"\u2265","<=":"\u2264",between:"\u2194"},rs={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"},ns=["equals","contains","notContains","wildcard"],yr=["=","!=",">","<",">=","<=","between"],ae="0.85rem",ls=({field:e,value:t,onChange:a})=>{let{t:r}=V(),[l,i]=pe.useState(null),[o,c]=pe.useState(null),[g,m]=pe.useState(""),[f,S]=pe.useState(""),[x,P]=pe.useState(false),[v,E]=pe.useState(""),[u,y]=pe.useState("");pe.useEffect(()=>{let n=setTimeout(()=>{y(v);},1e3);return ()=>clearTimeout(n)},[v]);let s=t?.operator||(e.type==="number"?"=":"equals"),I=t?.value,C=n=>{let D=rs[n];return D?r(D):n},R=n=>{i(n.currentTarget);},T=n=>{a({...t,operator:n,value:I}),i(null);},h={size:"small",fullWidth:true,variant:"outlined",InputLabelProps:{sx:{fontSize:ae}},InputProps:{sx:{fontSize:ae}},SelectProps:{MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ae,paddingTop:"4px",paddingBottom:"4px",minHeight:"auto"}}}}}},p=e.type||"text";if(p==="date"){let D=(d=>{if(!d)return [null,null];if(Array.isArray(d)&&d.length===2){let B=d[0]?je__default.default.isDayjs(d[0])?d[0]:je__default.default(d[0]):null,M=d[1]?je__default.default.isDayjs(d[1])?d[1]:je__default.default(d[1]):null;return [B,M]}return je__default.default.isDayjs(d)||typeof d=="string"?[je__default.default.isDayjs(d)?d:je__default.default(d),null]:[null,null]})(I);return jsxRuntime.jsx(fr,{label:e.label,value:D,onChange:d=>a({value:d,operator:"between"})})}if(p==="number"&&s==="between"){let n=()=>{a({value:[g,f],operator:"between"}),c(null);},D=Array.isArray(I)?`${I[0]||""} - ${I[1]||""}`:"";return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(material.TextField,{...h,label:e.label,value:D,placeholder:r("smartFilter.minMaxPlaceholder"),InputProps:{...h.InputProps,startAdornment:jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(material.Tooltip,{title:C("between"),children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:R,sx:{width:24,height:24,fontSize:ae},children:Ut.between})})}),readOnly:true},onClick:d=>c(d.currentTarget)}),jsxRuntime.jsx(material.Menu,{anchorEl:l,open:!!l,onClose:()=>i(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ae,minHeight:"auto",py:.5}}},children:yr.map(d=>jsxRuntime.jsxs(material.MenuItem,{selected:d===s,onClick:()=>T(d),children:[jsxRuntime.jsx(material.Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Ut[d]}),jsxRuntime.jsx(material.ListItemText,{primary:C(d),primaryTypographyProps:{fontSize:ae}})]},d))}),jsxRuntime.jsx(material.Popover,{open:!!o,anchorEl:o,onClose:()=>c(null),anchorOrigin:{vertical:"bottom",horizontal:"left"},children:jsxRuntime.jsxs(material.Box,{sx:{p:2,display:"flex",gap:1,alignItems:"center"},children:[jsxRuntime.jsx(material.TextField,{size:"small",label:r("smartFilter.min"),type:"number",value:g,onChange:d=>m(d.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:ae}},InputProps:{sx:{fontSize:ae}}}),jsxRuntime.jsx(os__default.default,{color:"action"}),jsxRuntime.jsx(material.TextField,{size:"small",label:r("smartFilter.max"),type:"number",value:f,onChange:d=>S(d.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:ae}},InputProps:{sx:{fontSize:ae}}}),jsxRuntime.jsx(material.Button,{variant:"contained",size:"small",onClick:n,children:r("common.ok")})]})})]})}if(p==="select")return jsxRuntime.jsxs(material.TextField,{...h,select:true,label:e.label,value:I||"",onChange:n=>a({...t,value:n.target.value,operator:"equals"}),children:[jsxRuntime.jsx(material.MenuItem,{value:"",children:jsxRuntime.jsx("em",{children:r("common.none")})}),e.options?.map(n=>jsxRuntime.jsx(material.MenuItem,{value:n.value,children:n.label},n.value))]});if(p==="multi-select"){let n=Array.isArray(I)?I:[],D=e.options?.filter(d=>d.label.toLowerCase().includes(u.toLowerCase()))||[];return jsxRuntime.jsxs(material.TextField,{...h,select:true,label:e.label,value:n,onChange:d=>a({...t,value:d.target.value,operator:"anyOf"}),SelectProps:{...h.SelectProps,multiple:true,onClose:()=>{E(""),y("");},renderValue:d=>{if(!Array.isArray(d)||d.length===0)return jsxRuntime.jsx("em",{children:r("common.none")});let B=O=>e.options?.find(q=>q.value===O)?.label||O,M=d.map(B);return M.length>2?`${M.slice(0,2).join(", ")} +${M.length-2}`:M.join(", ")}},children:[jsxRuntime.jsx(material.ListSubheader,{children:jsxRuntime.jsx(material.TextField,{size:"small",autoFocus:true,placeholder:r("smartFilter.searchPlaceholder"),fullWidth:true,InputProps:{startAdornment:jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(br__default.default,{fontSize:"small"})}),sx:{fontSize:ae}},value:v,onChange:d=>E(d.target.value),onKeyDown:d=>{d.key!=="Escape"&&d.stopPropagation();},onClick:d=>d.stopPropagation()})}),D.length>0?D.map(d=>jsxRuntime.jsxs(material.MenuItem,{value:d.value,children:[jsxRuntime.jsx(material.Checkbox,{checked:n.indexOf(d.value)>-1,size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:d.label,primaryTypographyProps:{fontSize:ae}})]},d.value)):jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.ListItemText,{primary:r("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:ae}})})]})}let k=p==="number"?yr:ns,w=x||I!==void 0&&I!==""&&I!==null||!!l;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(material.TextField,{...h,label:e.label,sx:{minWidth:"120px"},value:I||"",type:p==="number"?"number":"text",onChange:n=>a({...t,value:n.target.value,operator:s}),onFocus:()=>P(true),onBlur:()=>P(false),InputProps:{...h.InputProps,startAdornment:w?jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(material.Tooltip,{title:C(s),children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:R,onMouseDown:n=>n.preventDefault(),sx:{width:24,height:24,fontSize:ae,fontWeight:"bold",color:"primary.main",bgcolor:"action.hover"},children:Ut[s]})})}):null,endAdornment:e.hasSearchIcon?jsxRuntime.jsx(material.InputAdornment,{position:"end",children:jsxRuntime.jsx(br__default.default,{color:"action"})}):void 0}}),jsxRuntime.jsx(material.Menu,{anchorEl:l,open:!!l,onClose:()=>i(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ae,minHeight:"auto",py:.5}}},children:k.map(n=>jsxRuntime.jsxs(material.MenuItem,{selected:n===s,onClick:()=>T(n),children:[jsxRuntime.jsx(material.Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Ut[n]}),jsxRuntime.jsx(material.ListItemText,{primary:C(n),primaryTypographyProps:{fontSize:ae}})]},n))})]})},vt=({fields:e,filters:t,onFilterChange:a,variants:r=[],currentVariantId:l,onVariantLoad:i,onVariantSave:o,onVariantDelete:c,onVariantSetDefault:g,onSearch:m,loading:f=false,appId:S,tableKey:x,currentLayout:P,currentLayoutId:v,layoutRefs:E,variantService:u})=>{let{t:y}=V(),[s,I]=pe.useState(true),[C,R]=pe.useState(null),[T,h]=pe.useState(e.filter(n=>!n.hidden).map(n=>n.id)),p=(n,D)=>{a({...t,[n]:D});},k=n=>{T.includes(n)?h(T.filter(D=>D!==n)):h([...T,n]);};return jsxRuntime.jsxs(material.Paper,{sx:{mb:0,display:"flex",flexDirection:"column",overflow:"visible",position:"relative"},children:[jsxRuntime.jsxs(material.Box,{sx:{p:2,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[S?jsxRuntime.jsx(pr,{appId:S,tableKey:x,currentFilters:{values:t,visibleFields:T},currentLayout:P,currentLayoutId:v,layoutRefs:E,onLoad:n=>{if(!n.filters)return;let D=null;if(Array.isArray(n.filters)){let d=x||"default",B=n.filters.find(M=>M.scope===d);D=B?B.filters:null;}else D=n.filters;D&&(D.values||D.visibleFields?(D.visibleFields&&Array.isArray(D.visibleFields)&&h(D.visibleFields),D.values&&a(D.values)):a(D)),i&&i(n);},variantService:u,currentVariantId:l}):jsxRuntime.jsx(Gt,{variants:r,currentVariantId:l,onLoad:i,onSave:n=>{o&&o({...n,filters:{values:t,visibleFields:T}});},onDelete:c,onSetDefault:g}),jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsxRuntime.jsx(material.Tooltip,{title:y("smartFilter.addFilters"),children:jsxRuntime.jsx(material.Button,{onClick:n=>R(n.currentTarget),size:"small",color:"primary",startIcon:jsxRuntime.jsx(es__default.default,{fontSize:"small"}),sx:{textTransform:"none",fontSize:ae,whiteSpace:"nowrap",minWidth:"fit-content"},children:y("smartFilter.adaptFilters")})}),jsxRuntime.jsx(material.Button,{variant:"contained",size:"small",onClick:m,disabled:f,sx:{minWidth:"40px",fontWeight:"bold",fontSize:ae},children:y(f?"common.loading":"smartFilter.go")}),jsxRuntime.jsxs(material.Menu,{anchorEl:C,open:!!C,onClose:()=>R(null),slotProps:{paper:{style:{maxHeight:400,width:"25ch"},sx:{"& .MuiMenuItem-root":{fontSize:ae,minHeight:32}}}},children:[jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.ListItemText,{primary:y("smartFilter.visibleFilters"),primaryTypographyProps:{fontSize:ae}})}),jsxRuntime.jsx(material.Divider,{}),e.map(n=>jsxRuntime.jsxs(material.MenuItem,{onClick:()=>k(n.id),children:[jsxRuntime.jsx(material.Checkbox,{checked:T.includes(n.id),size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:n.label,primaryTypographyProps:{fontSize:ae}})]},n.id))]})]})]}),jsxRuntime.jsx(material.Collapse,{in:s,children:jsxRuntime.jsx(material.Box,{sx:{px:2,pb:2},children:jsxRuntime.jsx(material.Grid,{container:true,spacing:2,columns:{xs:2,sm:3,md:4,lg:6},children:e.filter(n=>T.includes(n.id)).map(n=>jsxRuntime.jsx(material.Grid,{size:1,children:jsxRuntime.jsx(ls,{field:n,value:t[n.id]||{value:"",operator:n.type==="number"?"=":"equals"},onChange:D=>p(n.id,D)})},n.id))})})}),jsxRuntime.jsx(material.Box,{sx:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",zIndex:10},children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>I(!s),sx:{bgcolor:"background.paper",boxShadow:2,border:"1px solid",borderColor:"divider",width:20,height:20,minHeight:0,p:0,"&:hover":{bgcolor:"background.paper"}},children:s?jsxRuntime.jsx(ts__default.default,{sx:{fontSize:16},color:"action"}):jsxRuntime.jsx(Ol__default.default,{sx:{fontSize:16},color:"action"})})})]})};var Dr=({layouts:e,currentLayoutId:t,onLoad:a,onSave:r,onDelete:l,onSetDefault:i})=>{let{t:o}=V(),[c,g]=pe.useState(null),[m,f]=pe.useState(false),[S,x]=pe.useState(""),[P,v]=pe.useState(""),[E,u]=pe.useState({isDefault:false,isPublic:false}),y=e.find(h=>h.id===t),s=h=>{g(h.currentTarget);},I=()=>{g(null);},C=h=>{a(h),I();},R=()=>{x(""),v(""),u({isDefault:false,isPublic:false}),f(true),I();},T=()=>{S.trim()&&(r({name:S,description:P,...E}),f(false));};return jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsxRuntime.jsx(material.Tooltip,{title:o("layout.saveLayout"),children:jsxRuntime.jsx(material.IconButton,{onClick:R,color:"primary",size:"small",children:jsxRuntime.jsx(Tr__default.default,{})})}),jsxRuntime.jsx(material.Tooltip,{title:o("layout.layoutOptions"),children:jsxRuntime.jsx(material.IconButton,{onClick:s,color:y?"primary":"default",children:jsxRuntime.jsx(ys__default.default,{})})}),jsxRuntime.jsxs(material.Menu,{anchorEl:c,open:!!c,onClose:I,PaperProps:{sx:{width:320,maxHeight:400}},children:[jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.Typography,{variant:"caption",children:o("layout.selectLayout")})}),jsxRuntime.jsxs(material.MenuItem,{onClick:R,children:[jsxRuntime.jsx(material.ListItemIcon,{children:jsxRuntime.jsx(Tr__default.default,{fontSize:"small"})}),jsxRuntime.jsx(material.ListItemText,{children:o("layout.saveCurrentLayout")})]}),jsxRuntime.jsx(material.Divider,{}),e.length===0&&jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.Typography,{variant:"body2",color:"text.secondary",children:o("layout.noSavedLayouts")})}),e.map((h,p)=>jsxRuntime.jsx(material.MenuItem,{onClick:()=>C(h),selected:h.id===t,children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",width:"100%",justifyContent:"space-between"},children:[jsxRuntime.jsxs(material.Box,{sx:{display:"flex",flexDirection:"column",overflow:"hidden",mr:1},children:[jsxRuntime.jsx(material.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:jsxRuntime.jsx(material.Typography,{variant:"body2",fontWeight:h.id===t?"bold":"normal",noWrap:true,children:h.name})}),h.description&&jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:h.description})]}),jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center"},onClick:k=>k.stopPropagation(),children:[jsxRuntime.jsx(material.Tooltip,{title:h.isDefault?o("layout.removeDefault"):o("layout.setAsDefault"),children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:k=>{k.stopPropagation(),i(h.id);},children:h.isDefault?jsxRuntime.jsx(ki__default.default,{fontSize:"small",color:"warning"}):jsxRuntime.jsx(bs__default.default,{fontSize:"small"})})}),jsxRuntime.jsx(material.Tooltip,{title:o("common.delete"),children:jsxRuntime.jsx(material.IconButton,{size:"small",color:"error",onClick:k=>{k.stopPropagation(),l(h.id);},children:jsxRuntime.jsx(bl__default.default,{fontSize:"small"})})})]})]})},h.id||p))]}),jsxRuntime.jsxs(material.Dialog,{open:m,onClose:()=>f(false),maxWidth:"xs",fullWidth:true,children:[jsxRuntime.jsx(material.DialogTitle,{children:o("layout.saveLayout")}),jsxRuntime.jsx(material.DialogContent,{children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",flexDirection:"column",gap:2,mt:1},children:[jsxRuntime.jsx(material.TextField,{label:o("layout.layoutName"),value:S,onChange:h=>x(h.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:o("layout.layoutNameHelper")}),e.some(h=>h.name===S)&&jsxRuntime.jsx(material.Typography,{variant:"caption",color:"warning.main",sx:{ml:1},children:o("layout.warningOverwrite")}),jsxRuntime.jsx(material.TextField,{label:o("layout.layoutDescription"),value:P,onChange:h=>v(h.target.value),fullWidth:true,size:"small"}),jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Checkbox,{checked:E.isDefault,onChange:h=>u({...E,isDefault:h.target.checked})}),label:o("layout.useAsDefault")}),jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Checkbox,{checked:E.isPublic,onChange:h=>u({...E,isPublic:h.target.checked})}),label:o("layout.publicAllUsers")})]})}),jsxRuntime.jsxs(material.DialogActions,{children:[jsxRuntime.jsx(material.Button,{onClick:()=>f(false),children:o("common.cancel")}),jsxRuntime.jsx(material.Button,{onClick:T,variant:"contained",disabled:!S,children:o("common.save")})]})]})]})};var vs="http://127.0.0.1:8515",Mr=({appId:e,tableKey:t="default",currentLayoutData:a,onLayoutLoad:r,targetLayoutId:l,activeLayoutId:i,serviceUrl:o=vs,onError:c,onSuccess:g})=>{let{t:m}=V(),[f,S]=pe.useState([]),[x,P]=pe.useState(""),v=`orbcafe.layouts.${e}.${t}`,E=p=>({id:p.layoutId,name:p.name,description:p.description??"",isDefault:!!p.isDefault,isPublic:!!p.isPublic,createdAt:p.createdAt??new Date().toISOString(),layoutData:p.layout??{}}),u=p=>({appId:e,tableKey:t,layoutId:p.id,name:p.name,description:p.description??"",isDefault:!!p.isDefault,isPublic:!!p.isPublic,createdAt:p.createdAt,layout:p.layoutData}),y=pe.useCallback(()=>{try{let p=localStorage.getItem(v);if(!p)return [];let k=JSON.parse(p);return Array.isArray(k)?k:[]}catch{return []}},[v]),s=pe.useCallback(p=>{try{localStorage.setItem(v,JSON.stringify(p));}catch{}},[v]);pe.useEffect(()=>{i!==void 0&&P(i);},[i]),pe.useEffect(()=>{if(l&&f.length>0){let p=f.find(k=>k.id===l);p&&(P(p.id),r(p));}},[l,f,r]);let I=pe.useCallback(async()=>{if(e)try{let p=await fetch(`${o}/api/layouts?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!p.ok)throw new Error("LAYOUT_FETCH_FAILED");let w=(await p.json()).map(E);S(w);let n=w.find(D=>D.isDefault);n&&!x&&!l&&(P(n.id),r(n));}catch(p){console.error("Error fetching layouts",p);let k=y();S(k);let w=k.find(n=>n.isDefault);w&&!x&&!l&&(P(w.id),r(w)),c&&c(m("layout.toast.loadFallback"));}},[e,t,o,c,x,r,l,y,m]);return pe.useEffect(()=>{I();},[e,t]),jsxRuntime.jsx(Dr,{layouts:f,currentLayoutId:x,onLoad:p=>{P(p.id),r(p);},onSave:async p=>{let k=f.find(D=>D.name===p.name),w=k?k.id:Date.now().toString(),n={id:w,...p,createdAt:new Date().toISOString(),layoutData:a,isDefault:p.isDefault??false,isPublic:p.isPublic??false};try{if(!(await fetch(`${o}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u(n))})).ok)throw new Error("LAYOUT_SAVE_FAILED");g&&g(m("layout.toast.saveSuccess")),await I(),P(w),r(n);}catch(D){console.error("Error saving layout",D);let B=f.some(M=>M.id===w)?f.map(M=>M.id===w?n:M):[...f,n];S(B),s(B),P(w),r(n),g&&g(m("layout.toast.saveLocalSuccess")),c&&c(m("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async p=>{try{if(!(await fetch(`${o}/api/layouts/${encodeURIComponent(p)}`,{method:"DELETE"})).ok)throw new Error("LAYOUT_DELETE_FAILED");x===p&&P(""),g&&g(m("layout.toast.deleteSuccess")),await I();}catch(k){console.error("Error deleting layout",k);let w=f.filter(n=>n.id!==p);S(w),s(w),x===p&&P(""),g&&g(m("layout.toast.deleteLocalSuccess")),c&&c(m("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async p=>{try{let k=f.find(n=>n.id===p);if(!k)return;if(!(await fetch(`${o}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u({...k,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");g&&g(m("layout.toast.defaultSuccess")),await I();}catch(k){console.error("Error setting default",k);let w=f.map(n=>({...n,isDefault:n.id===p}));S(w),s(w),g&&g(m("layout.toast.defaultLocalSuccess")),c&&c(m("layout.toast.backendUnavailableDefaultLocal"));}}})};function Pr(e,t,a){return t[a]<e[a]?-1:t[a]>e[a]?1:0}function Cs(e,t){return e==="desc"?(a,r)=>Pr(a,r,t):(a,r)=>-Pr(a,r,t)}function Ss(e,t){let a=e.map((r,l)=>[r,l]);return a.sort((r,l)=>{let i=t(r[0],l[0]);return i!==0?i:r[1]-l[1]}),a.map(r=>r[0])}var Rr=e=>{let t=pe.useCallback(b=>{let F=String(b?.label??b?.id??"").length*9+64,Q=typeof b?.minWidth=="number"?b.minWidth:0;return Math.max(100,Q,F)},[]),[a,r]=pe.useState(""),[l,i]=pe.useState(e.order||"asc"),[o,c]=pe.useState(e.orderBy||""),[g,m]=pe.useState(e.page||0),[f,S]=pe.useState(e.rowsPerPage||20),[x,P]=pe.useState(e.selected||[]),[v,E]=pe.useState(e.columns?e.columns.map(b=>b.id):[]),[u,y]=pe.useState(e.showSummary||false),[s,I]=pe.useState([]),[C,R]=pe.useState(new Set),[T,h]=pe.useState(()=>{let b={};return (e.columns||[]).forEach(L=>{b[L.id]=t(L);}),b}),[p,k]=pe.useState(null),[w,n]=pe.useState(null),[D,d]=pe.useState(null),[B,M]=pe.useState(null),[O,q]=pe.useState(false),[le,ze]=pe.useState("");pe.useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&c(e.orderBy);},[e.order,e.orderBy]),pe.useEffect(()=>{e.selected!==void 0&&P(e.selected);},[e.selected]),pe.useEffect(()=>{e.page!==void 0&&m(e.page);},[e.page]),pe.useEffect(()=>{e.rowsPerPage!==void 0&&S(e.rowsPerPage);},[e.rowsPerPage]),pe.useEffect(()=>{h(b=>{let L={...b};return (e.columns||[]).forEach(F=>{L[F.id]===void 0&&(L[F.id]=t(F));}),L});},[e.columns,t]);let H=pe.useMemo(()=>{let b=e.rows||[];return a&&(b=b.filter(L=>Object.keys(L).some(F=>String(L[F]).toLowerCase().includes(a.toLowerCase())))),b},[e.rows,a]),$=pe.useMemo(()=>e.onSortChange||!o?H:Ss(H,Cs(l,o)),[H,l,o,e.onSortChange]),ie=pe.useCallback(b=>{if(s.length===0)return b.map(Y=>({type:"row",data:Y,id:Y[e.rowKey||"id"]}));let L=[...b].sort((Y,X)=>{for(let J of s){if(Y[J]<X[J])return -1;if(Y[J]>X[J])return 1}return 0}),F=(Y,X=0)=>{if(X>=s.length)return Y;let J=s[X],Z={},se=[];return Y.forEach(oe=>{let ve=oe[J],he=`${J}:${ve}`;Z[he]||(Z[he]={key:he,field:J,value:ve,children:[],count:0,level:X},se.push(Z[he])),Z[he].children.push(oe),Z[he].count++;}),se.forEach(oe=>{oe.children&&(oe.children=F(oe.children,X+1));}),se},Q=F(L),U=(Y,X="")=>{let J=[];return Y.forEach(Z=>{if(Z.children){let se=X?`${X}>${Z.key}`:Z.key,oe=C.has(se);J.push({type:"group",id:se,field:Z.field,value:Z.value,level:Z.level,count:Z.count,isExpanded:oe,childIds:(function ve(he){let Xe=[];return he.children.forEach(it=>{it.children?Xe=Xe.concat(ve(it)):Xe.push(it[e.rowKey||"id"]);}),Xe})(Z)}),oe&&(J=J.concat(U(Z.children,se)));}else J.push({type:"row",data:Z,id:Z[e.rowKey||"id"],level:s.length});}),J};return U(Q)},[s,C,e.rowKey]),Ye=pe.useCallback(b=>{if(s.length===0)return [];let L=[...b].sort((U,Y)=>{for(let X of s){if(U[X]<Y[X])return -1;if(U[X]>Y[X])return 1}return 0}),F=[],Q=(U,Y,X)=>{if(Y>=s.length)return;let J=s[Y],Z=new Map;U.forEach(se=>{let oe=se[J],ve=Z.get(oe);ve?ve.push(se):Z.set(oe,[se]);}),Z.forEach((se,oe)=>{let ve=`${J}:${oe}`,he=X?`${X}>${ve}`:ve;F.push(he),Q(se,Y+1,he);});};return Q(L,0,""),F},[s]),fe=pe.useMemo(()=>ie($),[$,ie]),me=pe.useMemo(()=>Ye($),[$,Ye]),ge=pe.useMemo(()=>{let b=(e.rows||[]).length;return typeof e.count=="number"&&e.count>b},[e.count,e.rows]),rt=pe.useMemo(()=>ge?fe:f>0?fe.slice(g*f,g*f+f):fe,[fe,g,f,ge]),Jt=pe.useMemo(()=>ge&&typeof e.count=="number"?e.count:fe.length,[fe.length,ge,e.count]),ea=b=>{R(L=>{let F=new Set(L);return F.has(b)?F.delete(b):F.add(b),F});},$e=b=>{let L=me.filter(F=>F===b||F.startsWith(`${b}>`));R(F=>{let Q=new Set(F);return L.forEach(U=>Q.add(U)),Q});},Tt=b=>{R(L=>{let F=new Set(L);return Array.from(F).forEach(Q=>{(Q===b||Q.startsWith(`${b}>`))&&F.delete(Q);}),F});},ta=b=>{if(!b){R(new Set);return}R(new Set(me));},aa=b=>{let L=me.filter(F=>F.startsWith(`${b}>`));return L.length===0?C.has(b):C.has(b)&&L.every(F=>C.has(F))},Dt=b=>{let L=o===b&&l==="asc",F=o===b&&l==="desc";if(e.onSortChange){L?e.onSortChange(b,"desc"):F?e.onSortChange("","asc"):e.onSortChange(b,"asc");return}L?(i("desc"),c(b)):F?(i("asc"),c("")):(i("asc"),c(b));},oa=(b,L)=>{h(F=>({...F,[b]:L}));},It=b=>{if(b.target.checked){let L=H.map(F=>F[e.rowKey||"id"]);P(L),e.onSelectionChange&&e.onSelectionChange(L);return}P([]),e.onSelectionChange&&e.onSelectionChange([]);},ra=(b,L)=>{let F=L[e.rowKey||"id"],Q=x.indexOf(F),U=[];Q===-1?U=U.concat(x,F):Q===0?U=U.concat(x.slice(1)):Q===x.length-1?U=U.concat(x.slice(0,-1)):Q>0&&(U=U.concat(x.slice(0,Q),x.slice(Q+1))),P(U),e.onSelectionChange&&e.onSelectionChange(U);},Mt=b=>{m(b),e.onPageChange&&e.onPageChange(b);},nt=b=>{S(b),m(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(b);},na=b=>{let L=v.indexOf(b),F=[...v];L===-1?F.push(b):F.splice(L,1),E(F);},la=b=>{let L=s.indexOf(b),F=[...s];L===-1?F.push(b):F.splice(L,1),I(F);},ia=b=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:v,order:l,orderBy:o,grouping:s,columnWidths:T});},lt=b=>{b.layout&&(b.layout.visibleColumns&&E(b.layout.visibleColumns),b.layout.order&&i(b.layout.order),b.layout.orderBy&&c(b.layout.orderBy),b.layout.grouping&&I(b.layout.grouping),b.layout.columnWidths&&h(b.layout.columnWidths));},sa=b=>{let L=b?.layoutData||b?.layout||b||{};L.visibleColumns&&E(L.visibleColumns),L.order&&i(L.order),L.orderBy!==void 0&&c(L.orderBy),L.grouping&&I(L.grouping),L.columnWidths&&h(L.columnWidths),L.showSummary!==void 0&&y(!!L.showSummary),R(new Set),m(0),b?.id&&ze(b.id);};pe.useEffect(()=>{e.layout&<({layout:e.layout});},[e.layout]);let ca=b=>{b.preventDefault(),M(B===null?{mouseX:b.clientX+2,mouseY:b.clientY-6}:null);},ua=()=>{M(null);},da=pe.useMemo(()=>{if(!u)return {};let b={};e.columns.forEach(F=>{if(F.numeric){let Q=H.reduce((U,Y)=>{let X=parseFloat(Y[F.id]);return U+(isNaN(X)?0:X)},0);b[F.id]=Q.toFixed(2);}else b[F.id]="";});let L=e.columns.find(F=>v.includes(F.id));return L&&!L.numeric&&(b[L.id]="Total"),b},[H,e.columns,u,v]),pa=()=>{if(!e.columns||!H)return;let b=e.columns.map(Y=>Y.label).join(","),L=H.map(Y=>e.columns.map(X=>{let J=Y[X.id];return `"${(J==null?"":String(J)).replace(/"/g,'""')}"`}).join(",")).join(`
|
|
1
|
+
'use strict';var pe=require('react'),navigation=require('next/navigation'),lucideReact=require('lucide-react'),clsx=require('clsx'),tailwindMerge=require('tailwind-merge'),reactSlot=require('@radix-ui/react-slot'),classVarianceAuthority=require('class-variance-authority'),jsxRuntime=require('react/jsx-runtime'),Fr=require('@mui/material/Dialog'),Er=require('@mui/material/DialogTitle'),Ar=require('@mui/material/DialogContent'),_n=require('@mui/material/DialogContentText'),Br=require('@mui/material/DialogActions'),St=require('@mui/material/Box'),Qn=require('@mui/icons-material/CheckCircle'),Yn=require('@mui/icons-material/Warning'),Xn=require('@mui/icons-material/Error'),Zn=require('@mui/icons-material/Info'),material=require('@mui/material'),ws=require('@mui/material/Paper'),Ts=require('@mui/material/Table'),Is=require('@mui/material/TableBody'),La=require('@mui/material/TableCell'),Vr=require('@mui/material/TableContainer'),wl=require('@mui/material/TableHead'),Tl=require('@mui/material/TableRow'),Or=require('@mui/material/TextField'),Yt=require('@mui/material/Button'),zr=require('@mui/material/Alert'),core=require('@dnd-kit/core'),modifiers=require('@dnd-kit/modifiers'),yr=require('@mui/icons-material/Search'),ul=require('@mui/icons-material/ViewColumn'),Ir=require('@mui/icons-material/Save'),pl=require('@mui/icons-material/Download'),ml=require('@mui/icons-material/AccountTree'),gl=require('@mui/icons-material/Functions'),fl=require('@mui/icons-material/Insights'),hl=require('@mui/icons-material/Add'),bl=require('@mui/icons-material/Edit'),yl=require('@mui/icons-material/Delete'),vl=require('@mui/icons-material/KeyboardArrowLeft'),xl=require('@mui/icons-material/KeyboardArrowRight'),Il=require('@mui/material/Checkbox'),Dl=require('@mui/material/TableSortLabel'),Ml=require('@mui/material/IconButton'),Pl=require('@mui/material/Tooltip'),Rl=require('@mui/icons-material/UnfoldMore'),Ll=require('@mui/icons-material/UnfoldLess'),zl=require('@mui/icons-material/KeyboardArrowDown'),Xl=require('@mui/icons-material/Check'),Zl=require('@mui/icons-material/ClearAll'),ui=require('@mui/icons-material/Close'),ts=require('@mui/icons-material/Settings'),as=require('@mui/icons-material/KeyboardArrowUp'),rs=require('@mui/icons-material/ArrowRightAlt'),wi=require('@mui/icons-material/Star'),DateCalendar=require('@mui/x-date-pickers/DateCalendar'),PickersDay=require('@mui/x-date-pickers/PickersDay'),LocalizationProvider=require('@mui/x-date-pickers/LocalizationProvider'),AdapterDayjs=require('@mui/x-date-pickers/AdapterDayjs'),Gi=require('@mui/icons-material/CalendarMonth'),Wi=require('@mui/icons-material/Clear'),qi=require('@mui/icons-material/ArrowForward'),je=require('dayjs'),Ui=require('dayjs/plugin/isBetween'),$i=require('dayjs/plugin/localizedFormat');require('dayjs/locale/zh-cn'),require('dayjs/locale/fr'),require('dayjs/locale/de'),require('dayjs/locale/ja'),require('dayjs/locale/ko');var ys=require('@mui/icons-material/StarBorder'),vs=require('@mui/icons-material/ViewQuilt'),$r=require('@mui/icons-material/Language'),qs=require('@mui/icons-material/DesktopWindows'),Us=require('@mui/icons-material/DarkMode'),$s=require('@mui/icons-material/LightMode'),Ks=require('@mui/icons-material/Logout');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var pe__namespace=/*#__PURE__*/_interopNamespace(pe);var Fr__default=/*#__PURE__*/_interopDefault(Fr);var Er__default=/*#__PURE__*/_interopDefault(Er);var Ar__default=/*#__PURE__*/_interopDefault(Ar);var _n__default=/*#__PURE__*/_interopDefault(_n);var Br__default=/*#__PURE__*/_interopDefault(Br);var St__default=/*#__PURE__*/_interopDefault(St);var Qn__default=/*#__PURE__*/_interopDefault(Qn);var Yn__default=/*#__PURE__*/_interopDefault(Yn);var Xn__default=/*#__PURE__*/_interopDefault(Xn);var Zn__default=/*#__PURE__*/_interopDefault(Zn);var ws__default=/*#__PURE__*/_interopDefault(ws);var Ts__default=/*#__PURE__*/_interopDefault(Ts);var Is__default=/*#__PURE__*/_interopDefault(Is);var La__default=/*#__PURE__*/_interopDefault(La);var Vr__default=/*#__PURE__*/_interopDefault(Vr);var wl__default=/*#__PURE__*/_interopDefault(wl);var Tl__default=/*#__PURE__*/_interopDefault(Tl);var Or__default=/*#__PURE__*/_interopDefault(Or);var Yt__default=/*#__PURE__*/_interopDefault(Yt);var zr__default=/*#__PURE__*/_interopDefault(zr);var yr__default=/*#__PURE__*/_interopDefault(yr);var ul__default=/*#__PURE__*/_interopDefault(ul);var Ir__default=/*#__PURE__*/_interopDefault(Ir);var pl__default=/*#__PURE__*/_interopDefault(pl);var ml__default=/*#__PURE__*/_interopDefault(ml);var gl__default=/*#__PURE__*/_interopDefault(gl);var fl__default=/*#__PURE__*/_interopDefault(fl);var hl__default=/*#__PURE__*/_interopDefault(hl);var bl__default=/*#__PURE__*/_interopDefault(bl);var yl__default=/*#__PURE__*/_interopDefault(yl);var vl__default=/*#__PURE__*/_interopDefault(vl);var xl__default=/*#__PURE__*/_interopDefault(xl);var Il__default=/*#__PURE__*/_interopDefault(Il);var Dl__default=/*#__PURE__*/_interopDefault(Dl);var Ml__default=/*#__PURE__*/_interopDefault(Ml);var Pl__default=/*#__PURE__*/_interopDefault(Pl);var Rl__default=/*#__PURE__*/_interopDefault(Rl);var Ll__default=/*#__PURE__*/_interopDefault(Ll);var zl__default=/*#__PURE__*/_interopDefault(zl);var Xl__default=/*#__PURE__*/_interopDefault(Xl);var Zl__default=/*#__PURE__*/_interopDefault(Zl);var ui__default=/*#__PURE__*/_interopDefault(ui);var ts__default=/*#__PURE__*/_interopDefault(ts);var as__default=/*#__PURE__*/_interopDefault(as);var rs__default=/*#__PURE__*/_interopDefault(rs);var wi__default=/*#__PURE__*/_interopDefault(wi);var Gi__default=/*#__PURE__*/_interopDefault(Gi);var Wi__default=/*#__PURE__*/_interopDefault(Wi);var qi__default=/*#__PURE__*/_interopDefault(qi);var je__default=/*#__PURE__*/_interopDefault(je);var Ui__default=/*#__PURE__*/_interopDefault(Ui);var $i__default=/*#__PURE__*/_interopDefault($i);var ys__default=/*#__PURE__*/_interopDefault(ys);var vs__default=/*#__PURE__*/_interopDefault(vs);var $r__default=/*#__PURE__*/_interopDefault($r);var qs__default=/*#__PURE__*/_interopDefault(qs);var Us__default=/*#__PURE__*/_interopDefault(Us);var $s__default=/*#__PURE__*/_interopDefault($s);var Ks__default=/*#__PURE__*/_interopDefault(Ks);function xe(...e){return tailwindMerge.twMerge(clsx.clsx(e))}var Sa={primary:"#000000",primaryHover:"#333333"},Ot={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"},ct={none:"rounded-none",sm:"rounded-sm",md:"rounded-md",full:"rounded-full"},So=()=>"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 xn=classVarianceAuthority.cva(So(),{variants:{variant:{default:`${Ot.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:`${Ot.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:Ot.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-[${Sa.primary}] hover:bg-[${Sa.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:ct.none,sm:ct.sm,md:ct.md,full:ct.full}},defaultVariants:{variant:"default",size:"default",rounded:"md"}}),ka=pe__namespace.forwardRef(({className:e,variant:t,size:a,asChild:r=false,...l},i)=>jsxRuntime.jsx(r?reactSlot.Slot:"button",{className:xe(xn({variant:t,size:a,className:e})),ref:i,...l}));ka.displayName="Button";var Sn={"common.cancel":"Cancel","common.save":"Save","common.ok":"OK","common.done":"Done","common.search":"Search","common.none":"None","common.all":"All","common.noData":"No data","common.copy":"Copy","common.delete":"Delete","common.loading":"Loading...","header.searchPlaceholder":"Ask me...","header.theme.system":"Theme: System","header.theme.dark":"Theme: Dark","header.theme.light":"Theme: Light","header.menu.setting":"Setting","header.menu.logout":"Logout","navigation.expand":"Expand navigation","navigation.collapse":"Collapse navigation","navigation.searchPlaceholder":"Search menu...","navigation.noMatch":"No matching menu items","navigation.noAccessibleApp":"No accessible applications","navigation.noItems":"No items to display","navigation.expandView":"Expand {title}","table.toolbar.searchPlaceholder":"Search...","table.title.default":"Data Table","table.toolbar.groupBy":"Group By","table.toolbar.summary":"Summary","table.toolbar.columns":"Columns","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Items per page:","table.toolbar.pageOf":"Page {current} of {total}","table.toolbar.newItem":"New Item","table.toolbar.editItem":"Edit Item","table.toolbar.deleteItem":"Delete Item","table.toolbar.graphicReport":"Graphic Report","table.toolbar.saveLayout":"Save Layout","table.menu.groupBy":"Group By","table.menu.clearAll":"Clear All","table.menu.visibleColumns":"Visible Columns","table.menu.showSummaryRow":"Show Summary Row","table.menu.noNumericColumns":"No numeric columns","table.group.expandAll":"Expand All Groups","table.group.collapseAll":"Collapse All Groups","table.mobile.notImplemented":"Mobile View Not Implemented","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","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"},kn={"common.cancel":"\u53D6\u6D88","common.save":"\u4FDD\u5B58","common.ok":"\u786E\u5B9A","common.done":"\u5B8C\u6210","common.search":"\u641C\u7D22","common.none":"\u65E0","common.all":"\u5168\u90E8","common.noData":"\u6682\u65E0\u6570\u636E","common.copy":"\u590D\u5236","common.delete":"\u5220\u9664","common.loading":"\u52A0\u8F7D\u4E2D...","header.searchPlaceholder":"\u95EE\u6211\u70B9\u4EC0\u4E48...","header.theme.system":"\u4E3B\u9898\uFF1A\u8DDF\u968F\u7CFB\u7EDF","header.theme.dark":"\u4E3B\u9898\uFF1A\u6DF1\u8272","header.theme.light":"\u4E3B\u9898\uFF1A\u6D45\u8272","header.menu.setting":"\u8BBE\u7F6E","header.menu.logout":"\u6CE8\u9500","navigation.expand":"\u5C55\u5F00\u5BFC\u822A","navigation.collapse":"\u6298\u53E0\u5BFC\u822A","navigation.searchPlaceholder":"\u641C\u7D22\u83DC\u5355...","navigation.noMatch":"\u672A\u627E\u5230\u5339\u914D\u7684\u83DC\u5355\u9879","navigation.noAccessibleApp":"\u6682\u65E0\u53EF\u8BBF\u95EE\u7684\u5E94\u7528","navigation.noItems":"\u6682\u65E0\u53EF\u663E\u793A\u9879","navigation.expandView":"\u5C55\u5F00\u67E5\u770B {title}","table.toolbar.searchPlaceholder":"\u641C\u7D22...","table.title.default":"\u6570\u636E\u8868","table.toolbar.groupBy":"\u5206\u7EC4","table.toolbar.summary":"\u6C47\u603B","table.toolbar.columns":"\u5217","table.toolbar.export":"\u5BFC\u51FA","table.toolbar.itemsPerPage":"\u6BCF\u9875\u6761\u6570\uFF1A","table.toolbar.pageOf":"\u7B2C {current} / {total} \u9875","table.toolbar.newItem":"\u65B0\u5EFA\u6761\u76EE","table.toolbar.editItem":"\u7F16\u8F91\u6761\u76EE","table.toolbar.deleteItem":"\u5220\u9664\u6761\u76EE","table.toolbar.graphicReport":"\u56FE\u8868\u62A5\u8868","table.toolbar.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","table.menu.groupBy":"\u5206\u7EC4","table.menu.clearAll":"\u6E05\u7A7A","table.menu.visibleColumns":"\u53EF\u89C1\u5217","table.menu.showSummaryRow":"\u663E\u793A\u6C47\u603B\u884C","table.menu.noNumericColumns":"\u6CA1\u6709\u6570\u503C\u5217","table.group.expandAll":"\u5C55\u5F00\u5168\u90E8\u5206\u7EC4","table.group.collapseAll":"\u6298\u53E0\u5168\u90E8\u5206\u7EC4","table.mobile.notImplemented":"\u79FB\u52A8\u7AEF\u89C6\u56FE\u6682\u672A\u5B9E\u73B0","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","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"},wn={"common.cancel":"Annuler","common.save":"Enregistrer","common.ok":"OK","common.done":"Terminer","common.search":"Rechercher","common.none":"Aucun","common.all":"Tout","common.noData":"Aucune donn\xE9e","common.copy":"Copier","common.delete":"Supprimer","common.loading":"Chargement...","header.searchPlaceholder":"Demandez-moi...","header.theme.system":"Th\xE8me : Syst\xE8me","header.theme.dark":"Th\xE8me : Sombre","header.theme.light":"Th\xE8me : Clair","header.menu.setting":"Param\xE8tres","header.menu.logout":"Se d\xE9connecter","navigation.expand":"D\xE9velopper la navigation","navigation.collapse":"R\xE9duire la navigation","navigation.searchPlaceholder":"Rechercher dans le menu...","navigation.noMatch":"Aucun \xE9l\xE9ment correspondant","navigation.noAccessibleApp":"Aucune application accessible","navigation.noItems":"Aucun \xE9l\xE9ment \xE0 afficher","navigation.expandView":"D\xE9velopper {title}","table.toolbar.searchPlaceholder":"Rechercher...","table.title.default":"Tableau de donn\xE9es","table.toolbar.groupBy":"Grouper","table.toolbar.summary":"R\xE9sum\xE9","table.toolbar.columns":"Colonnes","table.toolbar.export":"Exporter","table.toolbar.itemsPerPage":"Lignes par page :","table.toolbar.pageOf":"Page {current} sur {total}","table.toolbar.newItem":"Nouvel \xE9l\xE9ment","table.toolbar.editItem":"Modifier l'\xE9l\xE9ment","table.toolbar.deleteItem":"Supprimer l'\xE9l\xE9ment","table.toolbar.graphicReport":"Rapport graphique","table.toolbar.saveLayout":"Enregistrer la vue","table.menu.groupBy":"Grouper","table.menu.clearAll":"Tout effacer","table.menu.visibleColumns":"Colonnes visibles","table.menu.showSummaryRow":"Afficher la ligne de r\xE9sum\xE9","table.menu.noNumericColumns":"Aucune colonne num\xE9rique","table.group.expandAll":"D\xE9velopper tous les groupes","table.group.collapseAll":"R\xE9duire tous les groupes","table.mobile.notImplemented":"Vue mobile non impl\xE9ment\xE9e","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","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"},Tn={"common.cancel":"Abbrechen","common.save":"Speichern","common.ok":"OK","common.done":"Fertig","common.search":"Suchen","common.none":"Keine","common.all":"Alle","common.noData":"Keine Daten","common.copy":"Kopieren","common.delete":"L\xF6schen","common.loading":"Wird geladen...","header.searchPlaceholder":"Frag mich...","header.theme.system":"Theme: System","header.theme.dark":"Theme: Dunkel","header.theme.light":"Theme: Hell","header.menu.setting":"Einstellungen","header.menu.logout":"Abmelden","navigation.expand":"Navigation erweitern","navigation.collapse":"Navigation einklappen","navigation.searchPlaceholder":"Men\xFC suchen...","navigation.noMatch":"Keine passenden Men\xFCeintr\xE4ge","navigation.noAccessibleApp":"Keine verf\xFCgbaren Anwendungen","navigation.noItems":"Keine Eintr\xE4ge vorhanden","navigation.expandView":"{title} aufklappen","table.toolbar.searchPlaceholder":"Suchen...","table.title.default":"Datentabelle","table.toolbar.groupBy":"Gruppieren","table.toolbar.summary":"Zusammenfassung","table.toolbar.columns":"Spalten","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Zeilen pro Seite:","table.toolbar.pageOf":"Seite {current} von {total}","table.toolbar.newItem":"Neuer Eintrag","table.toolbar.editItem":"Eintrag bearbeiten","table.toolbar.deleteItem":"Eintrag l\xF6schen","table.toolbar.graphicReport":"Grafikbericht","table.toolbar.saveLayout":"Layout speichern","table.menu.groupBy":"Gruppieren","table.menu.clearAll":"Alles l\xF6schen","table.menu.visibleColumns":"Sichtbare Spalten","table.menu.showSummaryRow":"Summenzeile anzeigen","table.menu.noNumericColumns":"Keine numerischen Spalten","table.group.expandAll":"Alle Gruppen aufklappen","table.group.collapseAll":"Alle Gruppen zuklappen","table.mobile.notImplemented":"Mobile Ansicht nicht implementiert","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","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"},In={"common.cancel":"\u30AD\u30E3\u30F3\u30BB\u30EB","common.save":"\u4FDD\u5B58","common.ok":"OK","common.done":"\u5B8C\u4E86","common.search":"\u691C\u7D22","common.none":"\u306A\u3057","common.all":"\u3059\u3079\u3066","common.noData":"\u30C7\u30FC\u30BF\u306A\u3057","common.copy":"\u30B3\u30D4\u30FC","common.delete":"\u524A\u9664","common.loading":"\u8AAD\u307F\u8FBC\u307F\u4E2D...","header.searchPlaceholder":"\u4F55\u304B\u805E\u3044\u3066\u304F\u3060\u3055\u3044...","header.theme.system":"\u30C6\u30FC\u30DE\uFF1A\u30B7\u30B9\u30C6\u30E0","header.theme.dark":"\u30C6\u30FC\u30DE\uFF1A\u30C0\u30FC\u30AF","header.theme.light":"\u30C6\u30FC\u30DE\uFF1A\u30E9\u30A4\u30C8","header.menu.setting":"\u8A2D\u5B9A","header.menu.logout":"\u30ED\u30B0\u30A2\u30A6\u30C8","navigation.expand":"\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u3092\u5C55\u958B","navigation.collapse":"\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u3092\u6298\u308A\u305F\u305F\u3080","navigation.searchPlaceholder":"\u30E1\u30CB\u30E5\u30FC\u3092\u691C\u7D22...","navigation.noMatch":"\u4E00\u81F4\u3059\u308B\u30E1\u30CB\u30E5\u30FC\u304C\u3042\u308A\u307E\u305B\u3093","navigation.noAccessibleApp":"\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A\u30A2\u30D7\u30EA\u304C\u3042\u308A\u307E\u305B\u3093","navigation.noItems":"\u8868\u793A\u3067\u304D\u308B\u9805\u76EE\u304C\u3042\u308A\u307E\u305B\u3093","navigation.expandView":"{title} \u3092\u5C55\u958B","table.toolbar.searchPlaceholder":"\u691C\u7D22...","table.title.default":"\u30C7\u30FC\u30BF\u30C6\u30FC\u30D6\u30EB","table.toolbar.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.toolbar.summary":"\u96C6\u8A08","table.toolbar.columns":"\u5217","table.toolbar.export":"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8","table.toolbar.itemsPerPage":"1\u30DA\u30FC\u30B8\u306E\u4EF6\u6570\uFF1A","table.toolbar.pageOf":"{current} / {total} \u30DA\u30FC\u30B8","table.toolbar.newItem":"\u65B0\u898F\u4F5C\u6210","table.toolbar.editItem":"\u7DE8\u96C6","table.toolbar.deleteItem":"\u524A\u9664","table.toolbar.graphicReport":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","table.toolbar.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","table.menu.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.menu.clearAll":"\u3059\u3079\u3066\u30AF\u30EA\u30A2","table.menu.visibleColumns":"\u8868\u793A\u5217","table.menu.showSummaryRow":"\u96C6\u8A08\u884C\u3092\u8868\u793A","table.menu.noNumericColumns":"\u6570\u5024\u5217\u304C\u3042\u308A\u307E\u305B\u3093","table.group.expandAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u5C55\u958B","table.group.collapseAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u6298\u308A\u305F\u305F\u3080","table.mobile.notImplemented":"\u30E2\u30D0\u30A4\u30EB\u8868\u793A\u306F\u672A\u5B9F\u88C5\u3067\u3059","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","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"},Dn={"common.cancel":"\uCDE8\uC18C","common.save":"\uC800\uC7A5","common.ok":"\uD655\uC778","common.done":"\uC644\uB8CC","common.search":"\uAC80\uC0C9","common.none":"\uC5C6\uC74C","common.all":"\uC804\uCCB4","common.noData":"\uB370\uC774\uD130 \uC5C6\uC74C","common.copy":"\uBCF5\uC0AC","common.delete":"\uC0AD\uC81C","common.loading":"\uB85C\uB529 \uC911...","header.searchPlaceholder":"\uBB34\uC5C7\uC774\uB4E0 \uBB3C\uC5B4\uBCF4\uC138\uC694...","header.theme.system":"\uD14C\uB9C8: \uC2DC\uC2A4\uD15C","header.theme.dark":"\uD14C\uB9C8: \uB2E4\uD06C","header.theme.light":"\uD14C\uB9C8: \uB77C\uC774\uD2B8","header.menu.setting":"\uC124\uC815","header.menu.logout":"\uB85C\uADF8\uC544\uC6C3","navigation.expand":"\uD0D0\uC0C9 \uD3BC\uCE58\uAE30","navigation.collapse":"\uD0D0\uC0C9 \uC811\uAE30","navigation.searchPlaceholder":"\uBA54\uB274 \uAC80\uC0C9...","navigation.noMatch":"\uC77C\uCE58\uD558\uB294 \uBA54\uB274\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.noAccessibleApp":"\uC811\uADFC \uAC00\uB2A5\uD55C \uC571\uC774 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.noItems":"\uD45C\uC2DC\uD560 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.expandView":"{title} \uD3BC\uCE58\uAE30","table.toolbar.searchPlaceholder":"\uAC80\uC0C9...","table.title.default":"\uB370\uC774\uD130 \uD14C\uC774\uBE14","table.toolbar.groupBy":"\uADF8\uB8F9","table.toolbar.summary":"\uC694\uC57D","table.toolbar.columns":"\uC5F4","table.toolbar.export":"\uB0B4\uBCF4\uB0B4\uAE30","table.toolbar.itemsPerPage":"\uD398\uC774\uC9C0\uB2F9 \uD589 \uC218:","table.toolbar.pageOf":"{current} / {total} \uD398\uC774\uC9C0","table.toolbar.newItem":"\uC2E0\uADDC \uD56D\uBAA9","table.toolbar.editItem":"\uD56D\uBAA9 \uC218\uC815","table.toolbar.deleteItem":"\uD56D\uBAA9 \uC0AD\uC81C","table.toolbar.graphicReport":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","table.toolbar.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","table.menu.groupBy":"\uADF8\uB8F9","table.menu.clearAll":"\uBAA8\uB450 \uC9C0\uC6B0\uAE30","table.menu.visibleColumns":"\uD45C\uC2DC \uC5F4","table.menu.showSummaryRow":"\uC694\uC57D \uD589 \uD45C\uC2DC","table.menu.noNumericColumns":"\uC22B\uC790 \uC5F4 \uC5C6\uC74C","table.group.expandAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uD3BC\uCE58\uAE30","table.group.collapseAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uC811\uAE30","table.mobile.notImplemented":"\uBAA8\uBC14\uC77C \uBDF0\uB294 \uC544\uC9C1 \uAD6C\uD604\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4","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","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"},ut={en:Sn,zh:kn,fr:wn,de:Tn,ja:In,ko:Dn};var wo=(e,t)=>t?e.replace(/\{(\w+)\}/g,(a,r)=>{let l=t[r];return l==null?"":String(l)}):e,Ln={locale:"en",t:(e,t)=>wo(ut.en[e]||e,t)},To=pe.createContext(Ln),Io=({locale:e="en",messages:t,children:a})=>{let r=pe.useMemo(()=>{let l=ut[e]||ut.en,i=t?.[e]||{},o={...ut.en,...l,...i};return {locale:e,t:(c,g)=>wo(o[c]||c,g)}},[e,t]);return jsxRuntime.jsx(To.Provider,{value:r,children:a})},V=()=>pe.useContext(To);function Ta({items:e,onItemClick:t,className:a="",level:r=0,expandedIds:l,onToggleExpand:i,colorMode:o="light"}){let{t:c}=V(),g=o==="dark",m=navigation.usePathname(),[f,S]=pe.useState(new Set),x=l!==void 0&&i!==void 0,M=x?l:f,v=u=>{if(x)i(u);else {let y=new Set(f);y.has(u)?y.delete(u):y.add(u),S(y);}},E=u=>{u.children&&u.children.length>0&&v(u.id),t&&t(u);};return !e||!Array.isArray(e)?jsxRuntime.jsx("div",{className:xe("tree-menu",a),children:jsxRuntime.jsx("div",{className:"text-sm text-gray-500 p-2",children:c("navigation.noItems")})}):jsxRuntime.jsx("div",{className:xe("tree-menu",a),children:e.map(u=>{let y=M.has(u.id)||u.isExpanded,s=u.children&&u.children.length>0,D=u.appurl||u.href,C=D?m===D:false;return jsxRuntime.jsxs("div",{className:"tree-menu-item relative",children:[C&&jsxRuntime.jsx("div",{className:xe("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",g?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxRuntime.jsxs(ka,{variant:"ghost",className:xe("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${r*4}`,C?g?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":g?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>E(u),children:[s&&jsxRuntime.jsx("div",{className:xe("flex-shrink-0 transition-transform duration-200",y&&"rotate-90",C?g?"text-[#90caf9]":"text-[#1976d2]":g?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:jsxRuntime.jsx(lucideReact.ChevronRight,{className:"h-4 w-4"})}),!s&&jsxRuntime.jsx("div",{className:"w-4 h-4 flex-shrink-0"}),u.icon&&jsxRuntime.jsx("div",{className:xe("flex-shrink-0 transition-colors duration-200",C?g?"text-[#90caf9]":"text-[#1976d2]":g?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:u.icon}),jsxRuntime.jsxs("div",{className:"flex-1 text-left overflow-hidden z-10",children:[jsxRuntime.jsx("div",{className:xe("text-sm truncate transition-colors duration-200",C?"font-semibold":"font-medium"),children:u.title||u.label}),u.description&&jsxRuntime.jsx("div",{className:xe("text-xs truncate transition-colors duration-200",C?g?"text-[#90caf9]/70":"text-[#1976d2]/75":g?"text-gray-400":"text-gray-500"),title:u.description,children:u.description})]})]}),s&&jsxRuntime.jsx("div",{className:xe("grid transition-[grid-template-rows] duration-300 ease-in-out",y?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:jsxRuntime.jsx("div",{className:"overflow-hidden",children:jsxRuntime.jsx(Ta,{items:u.children,onItemClick:t,level:r+1,expandedIds:l,onToggleExpand:i,colorMode:o})})})]},u.id)})})}var Lo=({collapsed:e,onToggle:t,className:a="",maxHeight:r,menuData:l=[],colorMode:i="light"})=>{let{t:o}=V(),c=i==="dark",g=navigation.useRouter(),[m,f]=pe.useState(""),[S,x]=pe.useState(new Set);pe.useEffect(()=>{e&&x(new Set);},[e]);let M=pe.useCallback(y=>{let s=[],D=C=>{C.forEach(R=>{s.push(R.id),R.children&&D(R.children);});};return D(y),s},[]),v=pe.useMemo(()=>{if(!m.trim())return l;let y=s=>s.reduce((D,C)=>{let R=C.title?.toLowerCase().includes(m.toLowerCase())||C.description?.toLowerCase().includes(m.toLowerCase()),T=C.children?y(C.children):[];return (R||T.length>0)&&D.push({...C,children:T.length>0?T:C.children}),D},[]);return y(l)},[m,l]),E=pe.useMemo(()=>m.trim()?new Set(M(l)):S,[m,l,S,M]),u=pe.useCallback(async y=>{if(console.log("\u{1F5B1}\uFE0F \u5BFC\u822A\u83DC\u5355\u9879\u70B9\u51FB:",y),y.id==="chat"||y.appurl==="/chat"){console.log("\u{1F4AC} \u68C0\u6D4B\u5230chat\u83DC\u5355\u70B9\u51FB\uFF0C\u8DF3\u8F6C\u5230\u65B0\u7684\u804A\u5929\u89C6\u56FE");try{g.push("/chat?new=true");}catch(D){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",D),g.push("/chat");}return}let s=y.appurl||y.href;s&&(s.startsWith("http://")||s.startsWith("https://")?window.open(s,"_blank"):g.push(s));},[g]);return jsxRuntime.jsxs("div",{className:`flex flex-col backdrop-blur-xl border shadow-[0_4px_8px_0_rgba(31,38,135,0.1)] ${e?"w-14 rounded-full":"w-[234px] rounded-2xl"} relative ${a} ${c?"bg-[#111111] border-white/10":"bg-white/70 border-white/30"}`,style:{backdropFilter:"blur(16px) saturate(180%)",WebkitBackdropFilter:"blur(16px) saturate(180%)",transition:"width 400ms cubic-bezier(0.4, 0.0, 0.2, 1), border-radius 0ms cubic-bezier(0.4, 0.0, 0.2, 1), box-shadow 400ms ease-out",maxHeight:r?`${r}px`:void 0},children:[jsxRuntime.jsx("div",{className:`pt-4 pb-2 transition-all duration-500 ease-in-out ${e?"px-1":"px-2"}`,children:e?jsxRuntime.jsx("div",{className:"flex justify-center",children:jsxRuntime.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:o("navigation.expand"),children:jsxRuntime.jsx(lucideReact.Search,{className:"h-5 w-5"})})}):jsxRuntime.jsxs("div",{className:`relative transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:[jsxRuntime.jsx("input",{type:"text",placeholder:o("navigation.searchPlaceholder"),value:m,onChange:y=>f(y.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"}`}),jsxRuntime.jsx("div",{className:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none",children:jsxRuntime.jsx(lucideReact.Search,{className:`h-4 w-4 ${c?"text-gray-500":"text-gray-400"}`})})]})}),jsxRuntime.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:v.length===0?jsxRuntime.jsx("div",{className:"flex items-center justify-center py-8 text-gray-500 text-sm",children:e?"\u{1F4C2}":o(m?"navigation.noMatch":"navigation.noAccessibleApp")}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[!e&&jsxRuntime.jsx("div",{className:`transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:jsxRuntime.jsx(Ta,{items:v,onItemClick:u,className:"space-y-1",expandedIds:E,colorMode:i,onToggleExpand:y=>{let s=new Set(S);v.some(C=>C.id===y)?s.has(y)?s.delete(y):(v.forEach(C=>{C.id!==y&&s.has(C.id)&&s.delete(C.id);}),s.add(y)):s.has(y)?s.delete(y):s.add(y),x(s);}})}),e&&jsxRuntime.jsx("div",{className:"space-y-2",children:l.map(y=>jsxRuntime.jsx("div",{className:"space-y-1",children:jsxRuntime.jsx("button",{onClick:()=>{t();let s=new Set([y.id]);x(s);},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:o("navigation.expandView",{title:y.title||""}),children:y.icon||jsxRuntime.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:y.title?.charAt(0)||"?"})})},y.id))})]})}),!e&&jsxRuntime.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:o("navigation.collapse"),children:jsxRuntime.jsx("div",{className:"absolute",style:{bottom:"0px",right:"0px",width:"16px",height:"16px",overflow:"hidden"},children:jsxRuntime.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"}})})})]})};var Eo=(e={})=>{let{initialCollapsed:t=false,content:a=[]}=e,[r,l]=pe.useState(t),[i,o]=pe.useState(a),c=pe.useCallback(()=>{l(m=>!m);},[]),g=pe.useMemo(()=>({collapsed:r,onToggle:c,menuData:i}),[r,c,i]);return {collapsed:r,setCollapsed:l,toggleCollapsed:c,menuData:i,setMenuData:o,navigationIslandProps:g}};var Da=e=>jsxRuntime.jsx(material.Button,{...e,variant:e.variant||"contained",size:e.size||"medium",sx:{textTransform:"none",...e.sx}});var Jn={success:{icon:jsxRuntime.jsx(Qn__default.default,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsxRuntime.jsx(Yn__default.default,{sx:{fontSize:40}}),color:"#fff3e0",iconColor:"#ffa726",borderColor:"#ffcc80"},error:{icon:jsxRuntime.jsx(Xn__default.default,{sx:{fontSize:40}}),color:"#ffebee",iconColor:"#ef5350",borderColor:"#ef9a9a"},info:{icon:jsxRuntime.jsx(Zn__default.default,{sx:{fontSize:40}}),color:"#e3f2fd",iconColor:"#42a5f5",borderColor:"#90caf9"},default:{icon:null,color:"transparent",iconColor:"inherit",borderColor:"transparent"}},Bo=({open:e,title:t,message:a,onClose:r,onConfirm:l,confirmText:i,cancelText:o,showCancel:c=true,maxWidth:g="xs",type:m="default"})=>{let{t:f}=V(),S=i||f("messageBox.confirm"),x=o||f("messageBox.cancel"),M=()=>{l?l():r();},v=Jn[m],E=m!=="default";return jsxRuntime.jsxs(Fr__default.default,{open:e,onClose:r,maxWidth:g,fullWidth:true,PaperProps:{sx:{borderRadius:3,...E&&{borderTop:`6px solid ${v.iconColor}`}}},children:[E&&jsxRuntime.jsx(St__default.default,{sx:{display:"flex",justifyContent:"center",pt:3,color:v.iconColor},children:v.icon}),t&&jsxRuntime.jsx(Er__default.default,{sx:{textAlign:E?"center":"left",pt:E?1:2},children:t}),jsxRuntime.jsx(Ar__default.default,{sx:{textAlign:E?"center":"left"},children:typeof a=="string"?jsxRuntime.jsx(_n__default.default,{children:a}):a}),jsxRuntime.jsxs(Br__default.default,{sx:{justifyContent:E?"center":"flex-end",pb:3,px:3},children:[c&&jsxRuntime.jsx(Da,{onClick:r,variant:"text",color:"inherit",children:x}),jsxRuntime.jsx(Da,{onClick:M,variant:"contained",sx:{bgcolor:E?v.iconColor:void 0,"&:hover":{bgcolor:E?v.iconColor:void 0,filter:"brightness(0.9)"}},autoFocus:true,children:S})]})]})};var Oo=({title:e,hideHeader:t,children:a})=>jsxRuntime.jsxs(material.Box,{sx:{display:"flex",flexDirection:"column",height:"100%"},children:[!t&&jsxRuntime.jsx(material.Box,{sx:{mb:2},children:jsxRuntime.jsx(material.Typography,{variant:"h4",children:e})}),jsxRuntime.jsx(material.Box,{sx:{flex:1,overflow:"hidden"},children:a})]});var Vo=e=>{let{t}=V(),a="0.85rem",r=Array.isArray(e.actions)?e.actions:e.actions?[e.actions]:[],l=Array.isArray(e.extraTools)?e.extraTools:e.extraTools?[e.extraTools]:[],i=[...r,...l],o=typeof e.rowsPerPage=="number"?e.rowsPerPage:20,c=Array.isArray(e.rowsPerPageOptions)&&e.rowsPerPageOptions.length>0?e.rowsPerPageOptions:[20,50,100,-1],g=typeof e.count=="number"?e.count:0,m=Math.max(0,typeof e.page=="number"?e.page:0),f=o===-1?1:Math.max(1,Math.ceil(g/o)),S=Math.min(m+1,f),x=m>0,M=m<f-1&&o!==-1;return jsxRuntime.jsxs(material.Toolbar,{sx:{pl:{sm:2},pr:{xs:1,sm:1},alignItems:"center",gap:1},children:[jsxRuntime.jsx(material.TextField,{size:"small",placeholder:t("table.toolbar.searchPlaceholder"),value:e.filterText,onChange:v=>e.setFilterText(v.target.value),InputProps:{sx:{fontSize:a,"& .MuiInputBase-input":{fontSize:a},"& .MuiInputBase-input::placeholder":{fontSize:a,opacity:1}},startAdornment:jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(yr__default.default,{fontSize:"small"})})},sx:{width:300}}),jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:1,ml:1},children:[jsxRuntime.jsx(material.Typography,{sx:{fontSize:a,color:"text.secondary",whiteSpace:"nowrap"},children:t("table.toolbar.itemsPerPage")}),jsxRuntime.jsx(material.Select,{size:"small",variant:"standard",value:o,disableUnderline:true,onChange:v=>e.onRowsPerPageChange?.(Number(v.target.value)),sx:{fontSize:a,fontWeight:600,minWidth:64,"& .MuiSelect-select":{py:.25,pr:"16px !important"}},children:c.map(v=>jsxRuntime.jsx(material.MenuItem,{value:v,sx:{fontSize:a},children:v===-1?t("common.all"):v},`rows-per-page-${v}`))}),jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.max(m-1,0)),disabled:!x,sx:{p:.35},children:jsxRuntime.jsx(vl__default.default,{fontSize:"small"})}),jsxRuntime.jsx(material.Typography,{sx:{fontSize:a,fontWeight:600,minWidth:88,textAlign:"center"},children:t("table.toolbar.pageOf",{current:S,total:f})}),jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.min(m+1,f-1)),disabled:!M,sx:{p:.35},children:jsxRuntime.jsx(xl__default.default,{fontSize:"small"})})]}),jsxRuntime.jsx(material.Box,{sx:{flex:1}}),jsxRuntime.jsxs(material.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:[i.length>0&&jsxRuntime.jsx(material.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:i.map((v,E)=>jsxRuntime.jsx(pe__namespace.default.Fragment,{children:v},`toolbar-custom-${E}`))}),jsxRuntime.jsx(material.Box,{sx:{width:"1px",height:20,bgcolor:"divider",mx:.5}}),jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.groupBy"),children:jsxRuntime.jsx(material.IconButton,{onClick:v=>e.setGroupAnchorEl(v.currentTarget),children:jsxRuntime.jsx(material.Badge,{badgeContent:e.grouping?.length,color:"primary",children:jsxRuntime.jsx(ml__default.default,{})})})}),jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.summary"),children:jsxRuntime.jsx(material.IconButton,{onClick:v=>e.setSummaryAnchorEl(v.currentTarget),color:e.showSummary?"primary":"default",children:jsxRuntime.jsx(gl__default.default,{})})}),jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.columns"),children:jsxRuntime.jsx(material.IconButton,{onClick:v=>e.setAnchorEl(v.currentTarget),children:jsxRuntime.jsx(ul__default.default,{})})}),jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.export"),children:jsxRuntime.jsx(material.IconButton,{onClick:e.handleExport,children:jsxRuntime.jsx(pl__default.default,{})})}),e.showCreateButton&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.newItem"),children:jsxRuntime.jsx(material.IconButton,{onClick:e.onOpenCreateDialog,color:"primary",children:jsxRuntime.jsx(hl__default.default,{})})}),e.showEditButton&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.editItem"),children:jsxRuntime.jsx("span",{children:jsxRuntime.jsx(material.IconButton,{onClick:e.onOpenEditDialog,color:"primary",disabled:!!e.editDisabled,children:jsxRuntime.jsx(bl__default.default,{})})})}),e.showDeleteButton&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.deleteItem"),children:jsxRuntime.jsx("span",{children:jsxRuntime.jsx(material.IconButton,{onClick:e.onOpenDeleteConfirm,color:"error",disabled:!!e.deleteDisabled,children:jsxRuntime.jsx(yl__default.default,{})})})}),e.onOpenGraphReport&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.graphicReport"),children:jsxRuntime.jsx(material.IconButton,{onClick:e.onOpenGraphReport,children:jsxRuntime.jsx(fl__default.default,{})})}),e.onLayoutSave&&!e.layoutManager&&jsxRuntime.jsx(material.Tooltip,{title:t("table.toolbar.saveLayout"),children:jsxRuntime.jsx(material.IconButton,{onClick:v=>e.onLayoutSave(v),children:jsxRuntime.jsx(Ir__default.default,{})})}),e.layoutManager]})]})};var Go=e=>{let{t}=V(),{onSelectAllClick:a,order:r,orderBy:l,numSelected:i=0,rowCount:o=0,onRequestSort:c,columns:g,visibleColumns:m,selectionMode:f,grouping:S=[],isAllExpanded:x=false,handleToggleAll:M,onColumnResize:v,columnWidths:E}=e,[u,y]=pe.useState(null),s=pe.useRef(null),D=n=>I=>{u||c(n);},C=(n,I,d)=>{n.preventDefault(),n.stopPropagation(),y(I),s.current={startX:n.clientX,startWidth:d,colId:I},document.addEventListener("mousemove",R),document.addEventListener("mouseup",T),document.body.style.cursor="col-resize";},R=n=>{if(!s.current)return;let{startX:I,startWidth:d,colId:B}=s.current,P=n.clientX-I,O=Math.max(50,d+P);v&&v(B,O);},T=()=>{y(null),s.current=null,document.removeEventListener("mousemove",R),document.removeEventListener("mouseup",T),document.body.style.cursor="";};pe.useEffect(()=>()=>{document.removeEventListener("mousemove",R),document.removeEventListener("mouseup",T);},[]);let h=f==="multiple"||f==="single",p=S.length>0&&!!M,k=t(x?"table.group.collapseAll":"table.group.expandAll"),w=g.filter(n=>m.includes(n.id));return jsxRuntime.jsx(wl__default.default,{children:jsxRuntime.jsxs(Tl__default.default,{children:[h&&jsxRuntime.jsx(La__default.default,{padding:"checkbox",sx:n=>({width:48,position:"sticky",top:0,zIndex:4,backgroundColor:n.palette.mode==="dark"?"#000000":"#f5f5f5",color:n.palette.mode==="dark"?"#ffffff":n.palette.text.primary}),children:jsxRuntime.jsx(Il__default.default,{color:"primary",indeterminate:i>0&&i<o,checked:o>0&&i===o,onChange:a,disabled:f==="single"})}),p&&jsxRuntime.jsx(La__default.default,{align:"center",padding:"checkbox",sx:n=>({width:44,position:"sticky",top:0,zIndex:4,backgroundColor:n.palette.mode==="dark"?"#000000":"#f5f5f5",color:n.palette.mode==="dark"?"#ffffff":n.palette.text.primary}),children:jsxRuntime.jsx(Pl__default.default,{title:k,children:jsxRuntime.jsx(Ml__default.default,{size:"small",onClick:n=>{n.stopPropagation(),M?.(!x);},sx:{p:.2},children:x?jsxRuntime.jsx(Ll__default.default,{fontSize:"small"}):jsxRuntime.jsx(Rl__default.default,{fontSize:"small"})})})}),w.map(n=>{let I=E?.[n.id]||n.minWidth||100;return jsxRuntime.jsxs(La__default.default,{align:"left",padding:n.disablePadding?"none":"normal",sortDirection:l===n.id?r:false,style:{width:I,minWidth:I,maxWidth:I},sx:d=>({position:"sticky",top:0,zIndex:4,backgroundColor:d.palette.mode==="dark"?"#000000":"#f5f5f5",color:d.palette.mode==="dark"?"#ffffff":d.palette.text.primary,fontWeight:"bold",userSelect:"none"}),children:[jsxRuntime.jsx(Dl__default.default,{active:l===n.id,direction:l===n.id?r:"asc",onClick:D(n.id),sx:d=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:d.palette.mode==="dark"?"#ffffff":d.palette.text.primary,opacity:l===n.id?1:0,transition:"opacity 0.2s"},"&:hover .MuiTableSortLabel-icon":{opacity:.5},"&.Mui-active .MuiTableSortLabel-icon":{opacity:1,color:d.palette.mode==="dark"?"#ffffff":d.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:d.palette.mode==="dark"?"#ffffff":d.palette.text.primary}),children:jsxRuntime.jsx(St__default.default,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1},children:n.label})}),jsxRuntime.jsx(St__default.default,{onMouseDown:d=>C(d,n.id,typeof I=="number"?I:100),onClick:d=>d.stopPropagation(),sx:{position:"absolute",right:0,top:0,bottom:0,width:5,cursor:"col-resize","&:hover":{backgroundColor:"primary.main",opacity:.5},zIndex:1}})]},n.id)})]})})};var Uo=e=>{let{t}=V(),{visibleRows:a,visibleColumns:r,selected:l=[],handleClick:i,columns:o,toggleGroupExpand:c,expandedGroups:g=new Set,selectionMode:m,grouping:f=[],isGroupFullyExpanded:S,handleExpandGroupRecursively:x,handleCollapseGroupRecursively:M}=e,v=s=>l.indexOf(s)!==-1,E=m==="multiple"||m==="single",u=f.length>0,y=r.length+(E?1:0)+(u?1:0);return jsxRuntime.jsxs(material.TableBody,{children:[a.map((s,D)=>{if(s.type==="group"){let C=g.has(s.id),R=s.childIds||[],T=R.filter(w=>v(w)).length,h=R.length>0&&T===R.length,p=T>0&&T<R.length;return jsxRuntime.jsxs(material.TableRow,{sx:w=>({backgroundColor:w.palette.mode==="dark"?"#111111":"#f5f5f5","& .MuiTableCell-root":{color:w.palette.text.primary,borderBottomColor:w.palette.divider},"& .MuiIconButton-root":{color:w.palette.text.primary},"& .MuiCheckbox-root":{color:w.palette.text.secondary},"& .MuiCheckbox-root.Mui-checked, & .MuiCheckbox-root.MuiCheckbox-indeterminate":{color:w.palette.primary.main}}),children:[E&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",children:jsxRuntime.jsx(material.Checkbox,{size:"small",checked:h,indeterminate:p,onChange:w=>{if(w.stopPropagation(),!!e.onSelectionChange)if(h){let n=l.filter(I=>!R.includes(I));e.onSelectionChange(n);}else {let n=Array.from(new Set([...l,...R]));e.onSelectionChange(n);}},onClick:w=>w.stopPropagation(),sx:{p:.5}})}),u&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{width:44},children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:.25},children:[f.length>1&&s.level<f.length-1&&jsxRuntime.jsx(material.Tooltip,{title:S?.(s.id)?t("table.group.collapseAll"):t("table.group.expandAll"),children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>{S?.(s.id)?M?.(s.id):x?.(s.id);},sx:{p:.25},children:S?.(s.id)?jsxRuntime.jsx(Ll__default.default,{fontSize:"small"}):jsxRuntime.jsx(Rl__default.default,{fontSize:"small"})})}),jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>c&&c(s.id),sx:{p:.25},children:C?jsxRuntime.jsx(zl__default.default,{}):jsxRuntime.jsx(xl__default.default,{})})]})}),jsxRuntime.jsx(material.TableCell,{colSpan:r.length,sx:{py:1,pl:s.level*3+1},children:jsxRuntime.jsxs(material.Typography,{variant:"body2",fontWeight:"bold",color:"text.primary",sx:{fontSize:"0.85rem"},children:[s.field,": ",s.value," (",s.count,")"]})})]},s.id)}else {let C=s.data||s,R=s.id||C.id||D,T=v(R),h=`enhanced-table-checkbox-${D}`,k=(s.level!==void 0?s.level:0)*4;return jsxRuntime.jsxs(material.TableRow,{hover:true,onClick:w=>i&&i(w,C),role:"checkbox","aria-checked":T,tabIndex:-1,selected:T,sx:{cursor:"pointer"},children:[E&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{pl:k>0?k+1:void 0},children:jsxRuntime.jsx(material.Checkbox,{color:"primary",checked:T,inputProps:{"aria-labelledby":h}})}),u&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{width:44}}),o.filter(w=>r.includes(w.id)).map((w,n)=>{let d=!E&&n===0&&k>0?{pl:k+2}:{};return jsxRuntime.jsx(material.TableCell,{align:"left",sx:d,children:w.render?w.render(C[w.id],C):(function(){let P=C[w.id];if(w.numeric){if(typeof P=="number")return P.toLocaleString();if(typeof P=="string"&&P.trim()!==""&&!isNaN(Number(P)))return Number(P).toLocaleString()}return P})()},w.id)})]},R)}}),a.length===0&&jsxRuntime.jsx(material.TableRow,{children:jsxRuntime.jsx(material.TableCell,{colSpan:y,align:"center",children:t("common.noData")})})]})};var $o=e=>{let{visibleColumns:t,summaryRow:a,selectionMode:r,grouping:l=[]}=e;if(!e.showSummary)return null;let i=r==="multiple"||r==="single",o=l.length>0;return jsxRuntime.jsx(material.TableFooter,{sx:{position:"sticky",bottom:0,zIndex:e.zIndex,bgcolor:"background.paper"},children:jsxRuntime.jsxs(material.TableRow,{children:[i&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper"}}),o&&jsxRuntime.jsx(material.TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper",width:44}}),t.map(c=>jsxRuntime.jsx(material.TableCell,{sx:{fontWeight:"bold",fontSize:"0.85rem",bgcolor:"background.paper",color:"text.primary"},children:(function(){let m=a[c];return m==null||m===""?"":typeof m=="number"?m.toLocaleString():typeof m=="string"&&m.trim()!==""&&!isNaN(Number(m))?Number(m).toLocaleString():m})()},c))]})})};var Ko=e=>{let{t}=V();return jsxRuntime.jsx(material.Box,{sx:{p:2},children:jsxRuntime.jsx(material.Typography,{children:t("table.mobile.notImplemented")})})};var Qo=({groupAnchorEl:e,setGroupAnchorEl:t,grouping:a,setGrouping:r,columns:l,toggleGroupField:i})=>{let{t:o}=V();return jsxRuntime.jsxs(material.Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxRuntime.jsxs(material.Box,{sx:{p:1,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[jsxRuntime.jsx(material.Typography,{variant:"subtitle2",sx:{px:1},children:o("table.menu.groupBy")}),a.length>0&&jsxRuntime.jsx(material.Button,{size:"small",color:"error",onClick:()=>r([]),startIcon:jsxRuntime.jsx(Zl__default.default,{}),children:o("table.menu.clearAll")})]}),jsxRuntime.jsx(material.Divider,{}),l.map(c=>{let g=a.includes(c.id),m=a.indexOf(c.id)+1;return jsxRuntime.jsx(material.MenuItem,{onClick:()=>i(c.id),children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsxRuntime.jsx(material.Checkbox,{checked:g,size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:c.label}),g&&jsxRuntime.jsx(material.Badge,{badgeContent:m,color:"primary",sx:{mr:2}})]})},c.id)})]})},Yo=({anchorEl:e,setAnchorEl:t,columns:a,visibleColumns:r,toggleColumnVisibility:l})=>{let{t:i}=V();return jsxRuntime.jsxs(material.Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.ListItemText,{primary:i("table.menu.visibleColumns")})}),jsxRuntime.jsx(material.Divider,{}),a.map(o=>jsxRuntime.jsxs(material.MenuItem,{onClick:()=>l(o.id),children:[jsxRuntime.jsx(material.Checkbox,{checked:r.includes(o.id),size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:o.label})]},o.id))]})},Xo=({anchorEl:e,setAnchorEl:t,showSummary:a,setShowSummary:r,columns:l,summaryColumns:i,toggleSummaryColumn:o})=>{let{t:c}=V();return jsxRuntime.jsxs(material.Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxRuntime.jsx(material.MenuItem,{children:jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Switch,{checked:a,onChange:g=>r(g.target.checked),size:"small"}),label:c("table.menu.showSummaryRow")})}),jsxRuntime.jsx(material.Divider,{}),l.filter(g=>g.numeric).map(g=>jsxRuntime.jsxs(material.MenuItem,{onClick:()=>o(g.id),disabled:!a,children:[jsxRuntime.jsx(material.Checkbox,{checked:i.includes(g.id),size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:g.label})]},g.id)),l.filter(g=>g.numeric).length===0&&jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.ListItemText,{primary:c("table.menu.noNumericColumns")})})]})},Zo=({contextMenu:e,handleCloseContextMenu:t,columns:a,visibleColumns:r,toggleColumnVisibility:l})=>{let{t:i}=V();return jsxRuntime.jsxs(material.Menu,{open:e!==null,onClose:t,anchorReference:"anchorPosition",anchorPosition:e!==null?{top:e.mouseY,left:e.mouseX}:void 0,children:[jsxRuntime.jsx(material.MenuItem,{onClick:t,children:i("common.copy")}),jsxRuntime.jsx(material.Divider,{}),jsxRuntime.jsx(material.MenuItem,{disabled:true,children:i("table.menu.visibleColumns")}),a.map(o=>jsxRuntime.jsxs(material.MenuItem,{onClick:()=>l(o.id),children:[jsxRuntime.jsx(material.ListItemIcon,{children:r.includes(o.id)&&jsxRuntime.jsx(Xl__default.default,{fontSize:"small"})}),jsxRuntime.jsx(material.ListItemText,{children:o.label})]},o.id))]})};var mt=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),er=({kpis:e})=>{let{t}=V(),a=[{label:t("graph.kpi.totalRecords"),value:mt(e.totalRecords,0),color:"text.primary"},{label:t("graph.kpi.totalReport"),value:mt(e.totalReportHours),color:"text.primary"},{label:t("graph.kpi.totalBillable"),value:mt(e.totalBillableHours),color:"success.main"},{label:t("graph.kpi.efficiency"),value:`${e.efficiency.toFixed(2)}%`,color:"warning.main"},{label:t("graph.kpi.amount"),value:mt(e.totalAmount),color:"info.main"},{label:t("graph.kpi.flagged"),value:mt(e.flaggedCount,0),color:"error.main"}];return jsxRuntime.jsx(material.Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(6, minmax(0, 1fr))"},gap:1.5},children:a.map(r=>jsxRuntime.jsxs(material.Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2,minHeight:96,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",children:r.label}),jsxRuntime.jsx(material.Typography,{variant:"h4",fontWeight:800,sx:{color:r.color},children:r.value})]},r.label))})};var Ht=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],oi=({data:e})=>{let t=Math.max(...e.map(a=>a.value),1);return jsxRuntime.jsx(material.Stack,{spacing:1,children:e.map(a=>jsxRuntime.jsxs(material.Box,{sx:{display:"grid",gridTemplateColumns:"140px 1fr 64px",gap:1},children:[jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",noWrap:true,title:a.name,children:a.name}),jsxRuntime.jsx(material.Box,{sx:{alignSelf:"center",bgcolor:"action.hover",height:10,borderRadius:999,overflow:"hidden"},children:jsxRuntime.jsx(material.Box,{sx:{width:`${a.value/t*100}%`,height:"100%",bgcolor:"primary.main"}})}),jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{textAlign:"right",fontWeight:600},children:a.value.toFixed(1)})]},a.name))})},ri=({data:e})=>{let t=Math.max(...e.map(a=>a.value),1);return jsxRuntime.jsx(material.Box,{sx:{display:"flex",gap:1,alignItems:"flex-end",minHeight:210},children:e.map(a=>jsxRuntime.jsxs(material.Box,{sx:{flex:1,minWidth:0},children:[jsxRuntime.jsx(material.Box,{sx:{height:`${Math.max(a.value/t*180,6)}px`,bgcolor:"primary.main",borderRadius:"8px 8px 0 0"}}),jsxRuntime.jsx(material.Typography,{variant:"caption",noWrap:true,title:a.name,sx:{display:"block",mt:.5},children:a.name}),jsxRuntime.jsxs(material.Typography,{variant:"caption",color:"text.secondary",children:[a.value.toFixed(1),"%"]})]},a.name))})},ni=({data:e})=>{let{t}=V();if(e.length===0)return jsxRuntime.jsx(material.Typography,{variant:"body2",color:"text.secondary",children:t("common.noData")});let a=0,l=`conic-gradient(${e.map((i,o)=>{let c=a;return a+=i.percent,`${Ht[o%Ht.length]} ${c}% ${a}%`}).join(", ")})`;return jsxRuntime.jsxs(material.Stack,{direction:{xs:"column",sm:"row"},spacing:2,alignItems:"center",children:[jsxRuntime.jsx(material.Box,{sx:{width:180,height:180,borderRadius:"50%",background:l,position:"relative"},children:jsxRuntime.jsx(material.Box,{sx:{position:"absolute",inset:30,bgcolor:"background.paper",borderRadius:"50%"}})}),jsxRuntime.jsx(material.Stack,{spacing:1,sx:{minWidth:180},children:e.map((i,o)=>jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsxRuntime.jsx(material.Box,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:Ht[o%Ht.length]}}),jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{flex:1},children:i.name}),jsxRuntime.jsxs(material.Typography,{variant:"caption",sx:{fontWeight:700},children:[i.percent.toFixed(0),"%"]})]},i.name))})]})},Oa=({title:e,subtitle:t,children:a})=>jsxRuntime.jsxs(material.Paper,{variant:"outlined",sx:{p:2,borderRadius:2},children:[jsxRuntime.jsx(material.Typography,{variant:"subtitle1",fontWeight:700,children:e}),jsxRuntime.jsx(material.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:t}),a]}),tr=({billableByPrimary:e,efficiencyBySecondary:t,statusDistribution:a})=>{let{t:r}=V();return jsxRuntime.jsxs(material.Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"1.2fr 1.2fr 1fr"}},children:[jsxRuntime.jsx(Oa,{title:r("graph.chart.billable.title"),subtitle:r("graph.chart.billable.subtitle"),children:jsxRuntime.jsx(oi,{data:e})}),jsxRuntime.jsx(Oa,{title:r("graph.chart.efficiency.title"),subtitle:r("graph.chart.efficiency.subtitle"),children:jsxRuntime.jsx(ri,{data:t})}),jsxRuntime.jsx(Oa,{title:r("graph.chart.status.title"),subtitle:r("graph.chart.status.subtitle"),children:jsxRuntime.jsx(ni,{data:a})})]})};var or=({open:e,onClose:t,model:a,tableContent:r})=>{let{t:l}=V();return jsxRuntime.jsx(material.Dialog,{open:e,onClose:t,fullScreen:true,children:jsxRuntime.jsxs(material.Box,{sx:{height:"100%",display:"flex",flexDirection:"column",bgcolor:"background.default"},children:[jsxRuntime.jsx(material.Box,{sx:{p:2,borderBottom:1,borderColor:"divider"},children:jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",spacing:2,children:[jsxRuntime.jsxs(material.Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[jsxRuntime.jsx(material.Typography,{variant:"h5",fontWeight:800,children:a.title}),jsxRuntime.jsx(material.Chip,{size:"small",label:l("graph.records",{count:a.kpis.totalRecords})})]}),jsxRuntime.jsx(material.IconButton,{onClick:t,children:jsxRuntime.jsx(ui__default.default,{})})]})}),jsxRuntime.jsxs(material.Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsxRuntime.jsx(er,{kpis:a.kpis}),jsxRuntime.jsx(tr,{billableByPrimary:a.charts.billableByPrimary,efficiencyBySecondary:a.charts.efficiencyBySecondary,statusDistribution:a.charts.statusDistribution}),r]})]})})};var He={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"]},di=5,rr=e=>e.toLowerCase().replace(/[\s_-]/g,""),Ge=(e,t,a,r)=>{if(t)return t;if(e.length===0)return r;let l=Object.keys(e[0]),i=new Map(l.map(o=>[rr(o),o]));for(let o of a){let c=i.get(rr(o));if(c)return c}return l[0]||r},Ae=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},Be=(e,t)=>e==null||e===""?t:String(e),pi=(e,t,a,r,l)=>{let i=new Map;return e.forEach(o=>{let c=Be(o[t],l);i.set(c,(i.get(c)||0)+Ae(o[a]));}),Array.from(i.entries()).map(([o,c])=>({name:o,value:c})).sort((o,c)=>c.value-o.value).slice(0,r)},mi=(e,t,a,r,l,i)=>{let o=new Map;return e.forEach(c=>{let g=Be(c[t],i),m=o.get(g)||{report:0,billable:0};m.report+=Ae(c[a]),m.billable+=Ae(c[r]),o.set(g,m);}),Array.from(o.entries()).map(([c,g])=>({name:c,value:g.report>0?g.billable/g.report*100:0})).sort((c,g)=>c.value-g.value).slice(0,l)},gi=(e,t,a)=>{let r=e.length;if(r===0)return [];let l=new Map;return e.forEach(i=>{let o=Be(i[t],a);l.set(o,(l.get(o)||0)+1);}),Array.from(l.entries()).map(([i,o])=>({name:i,value:o,percent:o/r*100}))},nr=({rows:e,config:t})=>{let{t:a}=V(),r=a("graph.unassigned"),l=pe.useMemo(()=>{let f=t?.fieldMapping;return {primaryDimension:Ge(e,f?.primaryDimension,He.primaryDimension,"Category"),secondaryDimension:Ge(e,f?.secondaryDimension,He.secondaryDimension,"Owner"),status:Ge(e,f?.status,He.status,"Status"),date:Ge(e,f?.date,He.date,"Date"),description:Ge(e,f?.description,He.description,"Description"),reportHours:Ge(e,f?.reportHours,He.reportHours,"ReportHours"),billableHours:Ge(e,f?.billableHours,He.billableHours,"BillableHours"),amount:Ge(e,f?.amount,He.amount,"Amount")}},[e,t?.fieldMapping]),i=pe.useMemo(()=>e.map((f,S)=>{let x=Ae(f[l.reportHours]),M=Ae(f[l.billableHours]),v=Ae(f[l.amount]),E=x>0?M/x*100:0;return {id:`graph-row-${S}`,Date:Be(f[l.date],""),Primary:Be(f[l.primaryDimension],r),Secondary:Be(f[l.secondaryDimension],r),Description:Be(f[l.description],""),ReportHours:x,BillableHours:M,Amount:v,Efficiency:E,Status:Be(f[l.status],r)}}),[e,l,r]),o=pe.useMemo(()=>{let f=i.length,S=i.reduce((y,s)=>y+Ae(s.ReportHours),0),x=i.reduce((y,s)=>y+Ae(s.BillableHours),0),M=i.reduce((y,s)=>y+Ae(s.Amount),0),v=S>0?x/S*100:0,E=t?.statusFlagValues||["flag","flagged","warning","risk"],u=i.filter(y=>E.includes(Be(y.Status,"").toLowerCase())).length;return {totalRecords:f,totalReportHours:S,totalBillableHours:x,efficiency:v,totalAmount:M,flaggedCount:u}},[i,t?.statusFlagValues]),c=t?.topN||di,g=pe.useMemo(()=>({billableByPrimary:pi(i,"Primary","BillableHours",c,r),efficiencyBySecondary:mi(i,"Secondary","ReportHours","BillableHours",c,r),statusDistribution:gi(i,"Status",r)}),[i,c,r]),m=pe.useMemo(()=>({title:t?.title||a("graph.reportTitle"),kpis:o,charts:g,table:{columns:[{id:"Date",label:l.date},{id:"Primary",label:l.primaryDimension},{id:"Secondary",label:l.secondaryDimension},{id:"Description",label:l.description},{id:"ReportHours",label:a("graph.column.reportHours"),align:"right"},{id:"BillableHours",label:a("graph.column.billableHours"),align:"right"},{id:"Amount",label:"Amount",align:"right"},{id:"Efficiency",label:"Efficiency",align:"right"},{id:"Status",label:l.status}],rows:i}}),[g,t?.title,l,o,i,a]);return {fieldMapping:l,model:m}};var qt=({variants:e,currentVariantId:t,onLoad:a,onSave:r,onDelete:l,onSetDefault:i})=>{let{t:o}=V(),g=material.useTheme().palette.mode==="dark",m="0.85rem",f={xs:"calc((100% - 1 * 16px) / 2)",sm:"calc((100% - 2 * 16px) / 3)",md:"calc((100% - 3 * 16px) / 4)",lg:"calc((100% - 5 * 16px) / 6)"},[S,x]=pe.useState(false),[M,v]=pe.useState(""),[E,u]=pe.useState(false),[y,s]=pe.useState(false),D=e.find(T=>T.id===t),C=()=>{v(D?.name||o("variant.newVariant")),u(D?.isDefault||false),s(D?.isPublic||false),x(true);},R=()=>{r({name:M,isDefault:E,isPublic:y,description:""}),x(false);};return jsxRuntime.jsxs(material.Box,{sx:{display:"flex",gap:1,alignItems:"center",width:"100%",maxWidth:"100%"},children:[jsxRuntime.jsx(material.Autocomplete,{size:"small",sx:{width:f,"& .MuiInputBase-root":{fontSize:m,bgcolor:g?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:g?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:g?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:g?"rgba(144,202,249,0.9)":"rgba(25,118,210,0.85)"}},"& .MuiInputBase-input":{fontSize:m},"& .MuiAutocomplete-noOptions":{fontSize:m}},noOptionsText:jsxRuntime.jsx(material.Typography,{sx:{fontSize:m},children:o("variant.noOptions")}),options:e,getOptionLabel:T=>T.name+(T.isDefault?` (${o("variant.defaultSuffix")})`:""),value:D||null,onChange:(T,h)=>{h&&a(h);},renderInput:T=>jsxRuntime.jsx(material.TextField,{...T,variant:"outlined",size:"small",InputProps:{...T.InputProps,sx:{fontSize:m,color:g?"#E3F2FD":"#0D47A1"}},placeholder:o("variant.selectVariant")}),renderOption:(T,h)=>jsxRuntime.jsx("li",{...T,children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsxRuntime.jsx(material.Typography,{sx:{flex:1,fontSize:m},children:h.name}),h.isDefault&&jsxRuntime.jsx(wi__default.default,{fontSize:"small",color:"action"})]})})}),jsxRuntime.jsx(material.Tooltip,{title:o("variant.saveView"),children:jsxRuntime.jsx(material.IconButton,{onClick:C,size:"small",color:"primary",children:jsxRuntime.jsx(Ir__default.default,{fontSize:"small"})})}),jsxRuntime.jsxs(material.Dialog,{open:S,onClose:()=>x(false),children:[jsxRuntime.jsx(material.DialogTitle,{children:o("variant.saveView")}),jsxRuntime.jsxs(material.DialogContent,{children:[jsxRuntime.jsx(material.TextField,{autoFocus:true,margin:"dense",label:o("variant.viewName"),fullWidth:true,variant:"outlined",value:M,onChange:T=>v(T.target.value)}),jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Checkbox,{checked:E,onChange:T=>u(T.target.checked)}),label:o("variant.setDefault")}),jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Checkbox,{checked:y,onChange:T=>s(T.target.checked)}),label:o("variant.publicAllUsers")})]}),jsxRuntime.jsxs(material.DialogActions,{children:[jsxRuntime.jsx(material.Button,{onClick:()=>x(false),children:o("common.cancel")}),jsxRuntime.jsx(material.Button,{onClick:R,variant:"contained",children:o("common.save")})]})]})]})};var Di="http://127.0.0.1:8515",mr=({appId:e,tableKey:t="default",currentFilters:a,currentLayoutId:r,layoutRefs:l,onLoad:i,serviceUrl:o=Di,onError:c,onSuccess:g,currentVariantId:m,onVariantChange:f})=>{let{t:S}=V(),[x,M]=pe.useState([]),[v,E]=pe.useState(""),u=m!==void 0?m:v,y=h=>{m===void 0&&E(h),f&&f(h);},s=pe.useCallback(async()=>{if(!e)return [];try{let h=await fetch(`${o}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!h.ok)throw new Error(S("variant.toast.fetchFailed"));let p=await h.json();M(p);let k=p.find(w=>w.isDefault);return k&&!u&&(y(k.id),i(k)),p}catch(h){return console.error("Error fetching variants",h),c&&c(S("variant.toast.fetchFailed")),[]}},[e,t,o,c,u,i,S]);return pe.useEffect(()=>{s();},[e,t]),jsxRuntime.jsx(qt,{variants:x,currentVariantId:u,onLoad:h=>{y(h.id),i(h);},onSave:async h=>{try{let p=x.find(P=>P.name===h.name),k=p?p.id:Date.now().toString(),w=[];if(p&&(Array.isArray(p.filters)?w=[...p.filters]:p.filters&&(w=[{scope:"default",filters:p.filters}])),h.scope==="Search"||h.scope==="Both"){let P=(Array.isArray(a),a);if(P)if(Array.isArray(P)&&P.length>0&&P[0].scope)P.forEach(O=>{let q=w.findIndex(le=>le.scope===O.scope);q>=0?w[q]=O:w.push(O);});else {let O={scope:t,filters:P},q=w.findIndex(le=>le.scope===t);q>=0?w[q]=O:w.push(O);}}let n=p?.layout||{},I=[];if(p&&Array.isArray(p.layoutRefs)&&(I=[...p.layoutRefs]),h.scope==="Layout"||h.scope==="Both")if(l&&l.length>0)l.forEach(P=>{let O=I.findIndex(q=>q.tableKey===P.tableKey);O>=0?I[O]=P:I.push(P);});else {let P={tableKey:t,layoutId:r||null},O=I.findIndex(q=>q.tableKey===t);O>=0?I[O]=P:I.push(P);}let d={appId:e,tableKey:t,...h,id:k,createdAt:new Date().toISOString(),filters:w,layout:n,layoutRefs:I};if(!(await fetch(`${o}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d)})).ok)throw new Error(S("variant.toast.saveFailed"));g&&g(S("variant.toast.saveSuccess")),await s(),y(k),i(d);}catch(p){console.error("Error saving variant",p),c&&c(S("variant.toast.saveFailed"));}},onDelete:async h=>{try{if(!(await fetch(`${o}/api/variants/${h}`,{method:"DELETE"})).ok)throw new Error(S("variant.toast.deleteFailed"));u===h&&y(""),s(),g&&g(S("variant.toast.deleteSuccess"));}catch(p){console.error("Error deleting variant",p),c&&c(S("variant.toast.deleteFailed"));}},onSetDefault:async h=>{try{let p=x.find(n=>n.id===h);if(!p)return;let k={appId:e,tableKey:t,...p,isDefault:!0};if(!(await fetch(`${o}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(k)})).ok)throw new Error(S("variant.toast.defaultFailed"));await s(),g&&g(S("variant.toast.defaultSuccess"));}catch(p){console.error("Error setting default variant",p),c&&c(S("variant.toast.defaultFailed"));}}})};je__default.default.extend(Ui__default.default);je__default.default.extend($i__default.default);var _i=[null,null],Ga="0.85rem",Ki={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},ji=material.styled(PickersDay.PickersDay,{shouldForwardProp:e=>e!=="isInRange"&&e!=="isStart"&&e!=="isEnd"&&e!=="isHovered"})(({theme:e,isInRange:t,isStart:a,isEnd:r,isHovered:l})=>({...t&&{borderRadius:0,backgroundColor:e.palette.primary.light,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.main}},...l&&!t&&!a&&!r&&{borderRadius:0,backgroundColor:e.palette.action.hover,border:`1px dashed ${e.palette.primary.main}`},...a&&{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}},...a&&r&&{borderRadius:"50%"}})),hr=({label:e,value:t=_i,onChange:a})=>{let{t:r,locale:l}=V(),i=Ki[l]||"en",o=e||r("dateRange.label"),[c,g]=pe.useState(null),[m,f]=pe.useState(t),[S,x]=pe.useState("start"),[M,v]=pe.useState(null),[E,u]=pe.useState((t[0]||je__default.default()).locale(i)),y=pe__namespace.default.useRef(t);pe.useEffect(()=>{let[d,B]=t,[P,O]=y.current,q=H=>H&&typeof H.isSame=="function",le=!(d===null&&P===null||q(d)&&q(P)&&d.isSame(P,"day")),ze=!(B===null&&O===null||q(B)&&q(O)&&B.isSame(O,"day"));(le||ze)&&(f(t),t[0]&&q(t[0])&&u(t[0].locale(i))),y.current=t;},[t,i]);let s=d=>{g(d.currentTarget);},D=()=>{g(null),x("start"),v(null);},C=!!c,R=d=>{if(!d)return;let B=[...m];if(S==="start")B=[d,null],x("end");else {let P=B[0];P&&d.isBefore(P)?(B=[d,null],x("end")):(B=[P,d],x("start"));}f(B);},T=d=>{let B=je__default.default().locale(i),P=[null,null];switch(d){case "today":P=[B,B];break;case "week":P=[B.startOf("week"),B.endOf("week")];break;case "month":P=[B.startOf("month"),B.endOf("month")];break}f(P),x("start"),u(B);},h=()=>{f([null,null]),x("start"),u(je__default.default().locale(i));},p=()=>{a&&a(m),D();},k=()=>{f(t),x("start"),D();},w=pe.useCallback(d=>{let{day:B,...P}=d,[O,q]=m,le=O?B.isSame(O,"day"):false,ze=q?B.isSame(q,"day"):false,H=O&&q?B.isBetween(O,q,"day","()"):false,$=false;return S==="end"&&O&&!q&&M&&B.isAfter(O,"day")&&B.isBefore(M.add(1,"day"),"day")&&($=true),jsxRuntime.jsx(ji,{...P,day:B,disableMargin:true,isStart:le,isEnd:ze,isInRange:H||$,onMouseEnter:()=>v(B)})},[m,S,M]),n=d=>d?d.locale(i).format("YYYY-MM-DD"):"",I=d=>d?d.locale(i).format("ll"):"";return jsxRuntime.jsxs(material.Box,{children:[jsxRuntime.jsx(material.TextField,{label:o,value:m[0]?`${n(m[0])} - ${n(m[1])}`:"",onClick:s,fullWidth:true,size:"small",InputLabelProps:{sx:{fontSize:Ga}},InputProps:{readOnly:true,sx:{fontSize:Ga,"& .MuiOutlinedInput-input":{fontSize:Ga},paddingRight:"4px"},endAdornment:jsxRuntime.jsxs(material.InputAdornment,{position:"end",sx:{ml:0},children:[(m[0]||m[1])&&jsxRuntime.jsx(material.IconButton,{size:"small",onClick:d=>{d.stopPropagation(),h();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsxRuntime.jsx(Wi__default.default,{sx:{fontSize:"1rem"}})}),jsxRuntime.jsx(material.IconButton,{size:"small",edge:"end",onClick:s,sx:{padding:"2px"},children:jsxRuntime.jsx(Gi__default.default,{sx:{fontSize:"1rem"},color:"action"})})]})}}),jsxRuntime.jsxs(material.Popover,{open:C,anchorEl:c,onClose:D,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},slotProps:{paper:{sx:{display:"flex",flexDirection:"column",p:0,minWidth:320}}},children:[jsxRuntime.jsx(material.Box,{sx:{p:2,bgcolor:"background.default",borderBottom:1,borderColor:"divider"},children:jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:2,justifyContent:"space-between",children:[jsxRuntime.jsxs(material.Box,{sx:{p:1,border:1,borderColor:S==="start"?"primary.main":"divider",borderRadius:1,bgcolor:S==="start"?"action.hover":"transparent",flex:1,cursor:"pointer"},onClick:()=>x("start"),children:[jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",display:"block",children:r("dateRange.startDate")}),jsxRuntime.jsx(material.Typography,{variant:"body2",fontWeight:500,children:m[0]?I(m[0]):r("dateRange.select")})]}),jsxRuntime.jsx(qi__default.default,{color:"action",fontSize:"small"}),jsxRuntime.jsxs(material.Box,{sx:{p:1,border:1,borderColor:S==="end"?"primary.main":"divider",borderRadius:1,bgcolor:S==="end"?"action.hover":"transparent",flex:1,cursor:"pointer"},onClick:()=>{m[0]&&x("end");},children:[jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",display:"block",children:r("dateRange.endDate")}),jsxRuntime.jsx(material.Typography,{variant:"body2",fontWeight:500,children:m[1]?I(m[1]):r("dateRange.select")})]})]})}),jsxRuntime.jsx(material.Box,{sx:{p:2,pb:0},children:jsxRuntime.jsxs(material.Stack,{direction:"row",spacing:1,justifyContent:"center",children:[jsxRuntime.jsx(material.Chip,{label:r("dateRange.today"),onClick:()=>T("today"),clickable:true,size:"small",variant:"outlined"}),jsxRuntime.jsx(material.Chip,{label:r("dateRange.thisWeek"),onClick:()=>T("week"),clickable:true,size:"small",variant:"outlined"}),jsxRuntime.jsx(material.Chip,{label:r("dateRange.thisMonth"),onClick:()=>T("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsxRuntime.jsx(LocalizationProvider.LocalizationProvider,{dateAdapter:AdapterDayjs.AdapterDayjs,adapterLocale:i,children:jsxRuntime.jsx(DateCalendar.DateCalendar,{value:null,referenceDate:E,onMonthChange:u,onYearChange:u,onChange:R,slots:{day:w},views:["day"],showDaysOutsideCurrentMonth:true,sx:{m:0}})}),jsxRuntime.jsx(material.Divider,{}),jsxRuntime.jsxs(material.Stack,{direction:"row",justifyContent:"flex-end",spacing:1,sx:{p:2},children:[jsxRuntime.jsx(material.Button,{size:"small",onClick:k,color:"inherit",children:r("common.cancel")}),jsxRuntime.jsx(material.Button,{size:"small",variant:"contained",onClick:p,children:r("common.done")})]})]})]})};var _t={equals:"=",contains:"\u2287",notContains:"\u2285",wildcard:"*","=":"=","!=":"!=",">":">","<":"<",">=":"\u2265","<=":"\u2264",between:"\u2194"},ns={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"},ls=["equals","contains","notContains","wildcard"],vr=["=","!=",">","<",">=","<=","between"],ae="0.85rem",is=({field:e,value:t,onChange:a})=>{let{t:r}=V(),[l,i]=pe.useState(null),[o,c]=pe.useState(null),[g,m]=pe.useState(""),[f,S]=pe.useState(""),[x,M]=pe.useState(false),[v,E]=pe.useState(""),[u,y]=pe.useState("");pe.useEffect(()=>{let n=setTimeout(()=>{y(v);},1e3);return ()=>clearTimeout(n)},[v]);let s=t?.operator||(e.type==="number"?"=":"equals"),D=t?.value,C=n=>{let I=ns[n];return I?r(I):n},R=n=>{i(n.currentTarget);},T=n=>{a({...t,operator:n,value:D}),i(null);},h={size:"small",fullWidth:true,variant:"outlined",InputLabelProps:{sx:{fontSize:ae}},InputProps:{sx:{fontSize:ae}},SelectProps:{MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ae,paddingTop:"4px",paddingBottom:"4px",minHeight:"auto"}}}}}},p=e.type||"text";if(p==="date"){let I=(d=>{if(!d)return [null,null];if(Array.isArray(d)&&d.length===2){let B=d[0]?je__default.default.isDayjs(d[0])?d[0]:je__default.default(d[0]):null,P=d[1]?je__default.default.isDayjs(d[1])?d[1]:je__default.default(d[1]):null;return [B,P]}return je__default.default.isDayjs(d)||typeof d=="string"?[je__default.default.isDayjs(d)?d:je__default.default(d),null]:[null,null]})(D);return jsxRuntime.jsx(hr,{label:e.label,value:I,onChange:d=>a({value:d,operator:"between"})})}if(p==="number"&&s==="between"){let n=()=>{a({value:[g,f],operator:"between"}),c(null);},I=Array.isArray(D)?`${D[0]||""} - ${D[1]||""}`:"";return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(material.TextField,{...h,label:e.label,value:I,placeholder:r("smartFilter.minMaxPlaceholder"),InputProps:{...h.InputProps,startAdornment:jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(material.Tooltip,{title:C("between"),children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:R,sx:{width:24,height:24,fontSize:ae},children:_t.between})})}),readOnly:true},onClick:d=>c(d.currentTarget)}),jsxRuntime.jsx(material.Menu,{anchorEl:l,open:!!l,onClose:()=>i(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ae,minHeight:"auto",py:.5}}},children:vr.map(d=>jsxRuntime.jsxs(material.MenuItem,{selected:d===s,onClick:()=>T(d),children:[jsxRuntime.jsx(material.Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:_t[d]}),jsxRuntime.jsx(material.ListItemText,{primary:C(d),primaryTypographyProps:{fontSize:ae}})]},d))}),jsxRuntime.jsx(material.Popover,{open:!!o,anchorEl:o,onClose:()=>c(null),anchorOrigin:{vertical:"bottom",horizontal:"left"},children:jsxRuntime.jsxs(material.Box,{sx:{p:2,display:"flex",gap:1,alignItems:"center"},children:[jsxRuntime.jsx(material.TextField,{size:"small",label:r("smartFilter.min"),type:"number",value:g,onChange:d=>m(d.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:ae}},InputProps:{sx:{fontSize:ae}}}),jsxRuntime.jsx(rs__default.default,{color:"action"}),jsxRuntime.jsx(material.TextField,{size:"small",label:r("smartFilter.max"),type:"number",value:f,onChange:d=>S(d.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:ae}},InputProps:{sx:{fontSize:ae}}}),jsxRuntime.jsx(material.Button,{variant:"contained",size:"small",onClick:n,children:r("common.ok")})]})})]})}if(p==="select")return jsxRuntime.jsxs(material.TextField,{...h,select:true,label:e.label,value:D||"",onChange:n=>a({...t,value:n.target.value,operator:"equals"}),children:[jsxRuntime.jsx(material.MenuItem,{value:"",children:jsxRuntime.jsx("em",{children:r("common.none")})}),e.options?.map(n=>jsxRuntime.jsx(material.MenuItem,{value:n.value,children:n.label},n.value))]});if(p==="multi-select"){let n=Array.isArray(D)?D:[],I=e.options?.filter(d=>d.label.toLowerCase().includes(u.toLowerCase()))||[];return jsxRuntime.jsxs(material.TextField,{...h,select:true,label:e.label,value:n,onChange:d=>a({...t,value:d.target.value,operator:"anyOf"}),SelectProps:{...h.SelectProps,multiple:true,onClose:()=>{E(""),y("");},renderValue:d=>{if(!Array.isArray(d)||d.length===0)return jsxRuntime.jsx("em",{children:r("common.none")});let B=O=>e.options?.find(q=>q.value===O)?.label||O,P=d.map(B);return P.length>2?`${P.slice(0,2).join(", ")} +${P.length-2}`:P.join(", ")}},children:[jsxRuntime.jsx(material.ListSubheader,{children:jsxRuntime.jsx(material.TextField,{size:"small",autoFocus:true,placeholder:r("smartFilter.searchPlaceholder"),fullWidth:true,InputProps:{startAdornment:jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(yr__default.default,{fontSize:"small"})}),sx:{fontSize:ae}},value:v,onChange:d=>E(d.target.value),onKeyDown:d=>{d.key!=="Escape"&&d.stopPropagation();},onClick:d=>d.stopPropagation()})}),I.length>0?I.map(d=>jsxRuntime.jsxs(material.MenuItem,{value:d.value,children:[jsxRuntime.jsx(material.Checkbox,{checked:n.indexOf(d.value)>-1,size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:d.label,primaryTypographyProps:{fontSize:ae}})]},d.value)):jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.ListItemText,{primary:r("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:ae}})})]})}let k=p==="number"?vr:ls,w=x||D!==void 0&&D!==""&&D!==null||!!l;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(material.TextField,{...h,label:e.label,sx:{minWidth:"120px"},value:D||"",type:p==="number"?"number":"text",onChange:n=>a({...t,value:n.target.value,operator:s}),onFocus:()=>M(true),onBlur:()=>M(false),InputProps:{...h.InputProps,startAdornment:w?jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(material.Tooltip,{title:C(s),children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:R,onMouseDown:n=>n.preventDefault(),sx:{width:24,height:24,fontSize:ae,fontWeight:"bold",color:"primary.main",bgcolor:"action.hover"},children:_t[s]})})}):null,endAdornment:e.hasSearchIcon?jsxRuntime.jsx(material.InputAdornment,{position:"end",children:jsxRuntime.jsx(yr__default.default,{color:"action"})}):void 0}}),jsxRuntime.jsx(material.Menu,{anchorEl:l,open:!!l,onClose:()=>i(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ae,minHeight:"auto",py:.5}}},children:k.map(n=>jsxRuntime.jsxs(material.MenuItem,{selected:n===s,onClick:()=>T(n),children:[jsxRuntime.jsx(material.Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:_t[n]}),jsxRuntime.jsx(material.ListItemText,{primary:C(n),primaryTypographyProps:{fontSize:ae}})]},n))})]})},vt=({fields:e,filters:t,onFilterChange:a,variants:r=[],currentVariantId:l,onVariantLoad:i,onVariantSave:o,onVariantDelete:c,onVariantSetDefault:g,onSearch:m,loading:f=false,appId:S,tableKey:x,currentLayout:M,currentLayoutId:v,layoutRefs:E,variantService:u})=>{let{t:y}=V(),[s,D]=pe.useState(true),[C,R]=pe.useState(null),[T,h]=pe.useState(e.filter(n=>!n.hidden).map(n=>n.id)),p=(n,I)=>{a({...t,[n]:I});},k=n=>{T.includes(n)?h(T.filter(I=>I!==n)):h([...T,n]);};return jsxRuntime.jsxs(material.Paper,{sx:{mb:0,display:"flex",flexDirection:"column",overflow:"visible",position:"relative"},children:[jsxRuntime.jsxs(material.Box,{sx:{p:2,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[S?jsxRuntime.jsx(mr,{appId:S,tableKey:x,currentFilters:{values:t,visibleFields:T},currentLayout:M,currentLayoutId:v,layoutRefs:E,onLoad:n=>{if(!n.filters)return;let I=null;if(Array.isArray(n.filters)){let d=x||"default",B=n.filters.find(P=>P.scope===d);I=B?B.filters:null;}else I=n.filters;I&&(I.values||I.visibleFields?(I.visibleFields&&Array.isArray(I.visibleFields)&&h(I.visibleFields),I.values&&a(I.values)):a(I)),i&&i(n);},variantService:u,currentVariantId:l}):jsxRuntime.jsx(qt,{variants:r,currentVariantId:l,onLoad:i,onSave:n=>{o&&o({...n,filters:{values:t,visibleFields:T}});},onDelete:c,onSetDefault:g}),jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsxRuntime.jsx(material.Tooltip,{title:y("smartFilter.addFilters"),children:jsxRuntime.jsx(material.Button,{onClick:n=>R(n.currentTarget),size:"small",color:"primary",startIcon:jsxRuntime.jsx(ts__default.default,{fontSize:"small"}),sx:{textTransform:"none",fontSize:ae,whiteSpace:"nowrap",minWidth:"fit-content"},children:y("smartFilter.adaptFilters")})}),jsxRuntime.jsx(material.Button,{variant:"contained",size:"small",onClick:m,disabled:f,sx:{minWidth:"40px",fontWeight:"bold",fontSize:ae},children:y(f?"common.loading":"smartFilter.go")}),jsxRuntime.jsxs(material.Menu,{anchorEl:C,open:!!C,onClose:()=>R(null),slotProps:{paper:{style:{maxHeight:400,width:"25ch"},sx:{"& .MuiMenuItem-root":{fontSize:ae,minHeight:32}}}},children:[jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.ListItemText,{primary:y("smartFilter.visibleFilters"),primaryTypographyProps:{fontSize:ae}})}),jsxRuntime.jsx(material.Divider,{}),e.map(n=>jsxRuntime.jsxs(material.MenuItem,{onClick:()=>k(n.id),children:[jsxRuntime.jsx(material.Checkbox,{checked:T.includes(n.id),size:"small"}),jsxRuntime.jsx(material.ListItemText,{primary:n.label,primaryTypographyProps:{fontSize:ae}})]},n.id))]})]})]}),jsxRuntime.jsx(material.Collapse,{in:s,children:jsxRuntime.jsx(material.Box,{sx:{px:2,pb:2},children:jsxRuntime.jsx(material.Grid,{container:true,spacing:2,columns:{xs:2,sm:3,md:4,lg:6},children:e.filter(n=>T.includes(n.id)).map(n=>jsxRuntime.jsx(material.Grid,{size:1,children:jsxRuntime.jsx(is,{field:n,value:t[n.id]||{value:"",operator:n.type==="number"?"=":"equals"},onChange:I=>p(n.id,I)})},n.id))})})}),jsxRuntime.jsx(material.Box,{sx:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",zIndex:10},children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:()=>D(!s),sx:{bgcolor:"background.paper",boxShadow:2,border:"1px solid",borderColor:"divider",width:20,height:20,minHeight:0,p:0,"&:hover":{bgcolor:"background.paper"}},children:s?jsxRuntime.jsx(as__default.default,{sx:{fontSize:16},color:"action"}):jsxRuntime.jsx(zl__default.default,{sx:{fontSize:16},color:"action"})})})]})};var Dr=({layouts:e,currentLayoutId:t,onLoad:a,onSave:r,onDelete:l,onSetDefault:i})=>{let{t:o}=V(),[c,g]=pe.useState(null),[m,f]=pe.useState(false),[S,x]=pe.useState(""),[M,v]=pe.useState(""),[E,u]=pe.useState({isDefault:false,isPublic:false}),y=e.find(h=>h.id===t),s=h=>{g(h.currentTarget);},D=()=>{g(null);},C=h=>{a(h),D();},R=()=>{x(""),v(""),u({isDefault:false,isPublic:false}),f(true),D();},T=()=>{S.trim()&&(r({name:S,description:M,...E}),f(false));};return jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsxRuntime.jsx(material.Tooltip,{title:o("layout.saveLayout"),children:jsxRuntime.jsx(material.IconButton,{onClick:R,color:"primary",size:"small",children:jsxRuntime.jsx(Ir__default.default,{})})}),jsxRuntime.jsx(material.Tooltip,{title:o("layout.layoutOptions"),children:jsxRuntime.jsx(material.IconButton,{onClick:s,color:y?"primary":"default",children:jsxRuntime.jsx(vs__default.default,{})})}),jsxRuntime.jsxs(material.Menu,{anchorEl:c,open:!!c,onClose:D,PaperProps:{sx:{width:320,maxHeight:400}},children:[jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.Typography,{variant:"caption",children:o("layout.selectLayout")})}),jsxRuntime.jsxs(material.MenuItem,{onClick:R,children:[jsxRuntime.jsx(material.ListItemIcon,{children:jsxRuntime.jsx(Ir__default.default,{fontSize:"small"})}),jsxRuntime.jsx(material.ListItemText,{children:o("layout.saveCurrentLayout")})]}),jsxRuntime.jsx(material.Divider,{}),e.length===0&&jsxRuntime.jsx(material.MenuItem,{disabled:true,children:jsxRuntime.jsx(material.Typography,{variant:"body2",color:"text.secondary",children:o("layout.noSavedLayouts")})}),e.map((h,p)=>jsxRuntime.jsx(material.MenuItem,{onClick:()=>C(h),selected:h.id===t,children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center",width:"100%",justifyContent:"space-between"},children:[jsxRuntime.jsxs(material.Box,{sx:{display:"flex",flexDirection:"column",overflow:"hidden",mr:1},children:[jsxRuntime.jsx(material.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:jsxRuntime.jsx(material.Typography,{variant:"body2",fontWeight:h.id===t?"bold":"normal",noWrap:true,children:h.name})}),h.description&&jsxRuntime.jsx(material.Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:h.description})]}),jsxRuntime.jsxs(material.Box,{sx:{display:"flex",alignItems:"center"},onClick:k=>k.stopPropagation(),children:[jsxRuntime.jsx(material.Tooltip,{title:h.isDefault?o("layout.removeDefault"):o("layout.setAsDefault"),children:jsxRuntime.jsx(material.IconButton,{size:"small",onClick:k=>{k.stopPropagation(),i(h.id);},children:h.isDefault?jsxRuntime.jsx(wi__default.default,{fontSize:"small",color:"warning"}):jsxRuntime.jsx(ys__default.default,{fontSize:"small"})})}),jsxRuntime.jsx(material.Tooltip,{title:o("common.delete"),children:jsxRuntime.jsx(material.IconButton,{size:"small",color:"error",onClick:k=>{k.stopPropagation(),l(h.id);},children:jsxRuntime.jsx(yl__default.default,{fontSize:"small"})})})]})]})},h.id||p))]}),jsxRuntime.jsxs(material.Dialog,{open:m,onClose:()=>f(false),maxWidth:"xs",fullWidth:true,children:[jsxRuntime.jsx(material.DialogTitle,{children:o("layout.saveLayout")}),jsxRuntime.jsx(material.DialogContent,{children:jsxRuntime.jsxs(material.Box,{sx:{display:"flex",flexDirection:"column",gap:2,mt:1},children:[jsxRuntime.jsx(material.TextField,{label:o("layout.layoutName"),value:S,onChange:h=>x(h.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:o("layout.layoutNameHelper")}),e.some(h=>h.name===S)&&jsxRuntime.jsx(material.Typography,{variant:"caption",color:"warning.main",sx:{ml:1},children:o("layout.warningOverwrite")}),jsxRuntime.jsx(material.TextField,{label:o("layout.layoutDescription"),value:M,onChange:h=>v(h.target.value),fullWidth:true,size:"small"}),jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Checkbox,{checked:E.isDefault,onChange:h=>u({...E,isDefault:h.target.checked})}),label:o("layout.useAsDefault")}),jsxRuntime.jsx(material.FormControlLabel,{control:jsxRuntime.jsx(material.Checkbox,{checked:E.isPublic,onChange:h=>u({...E,isPublic:h.target.checked})}),label:o("layout.publicAllUsers")})]})}),jsxRuntime.jsxs(material.DialogActions,{children:[jsxRuntime.jsx(material.Button,{onClick:()=>f(false),children:o("common.cancel")}),jsxRuntime.jsx(material.Button,{onClick:T,variant:"contained",disabled:!S,children:o("common.save")})]})]})]})};var xs="http://127.0.0.1:8515",Pr=({appId:e,tableKey:t="default",currentLayoutData:a,onLayoutLoad:r,targetLayoutId:l,activeLayoutId:i,serviceUrl:o=xs,onError:c,onSuccess:g})=>{let{t:m}=V(),[f,S]=pe.useState([]),[x,M]=pe.useState(""),v=`orbcafe.layouts.${e}.${t}`,E=p=>({id:p.layoutId,name:p.name,description:p.description??"",isDefault:!!p.isDefault,isPublic:!!p.isPublic,createdAt:p.createdAt??new Date().toISOString(),layoutData:p.layout??{}}),u=p=>({appId:e,tableKey:t,layoutId:p.id,name:p.name,description:p.description??"",isDefault:!!p.isDefault,isPublic:!!p.isPublic,createdAt:p.createdAt,layout:p.layoutData}),y=pe.useCallback(()=>{try{let p=localStorage.getItem(v);if(!p)return [];let k=JSON.parse(p);return Array.isArray(k)?k:[]}catch{return []}},[v]),s=pe.useCallback(p=>{try{localStorage.setItem(v,JSON.stringify(p));}catch{}},[v]);pe.useEffect(()=>{i!==void 0&&M(i);},[i]),pe.useEffect(()=>{if(l&&f.length>0){let p=f.find(k=>k.id===l);p&&(M(p.id),r(p));}},[l,f,r]);let D=pe.useCallback(async()=>{if(e)try{let p=await fetch(`${o}/api/layouts?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!p.ok)throw new Error("LAYOUT_FETCH_FAILED");let w=(await p.json()).map(E);S(w);let n=w.find(I=>I.isDefault);n&&!x&&!l&&(M(n.id),r(n));}catch(p){console.error("Error fetching layouts",p);let k=y();S(k);let w=k.find(n=>n.isDefault);w&&!x&&!l&&(M(w.id),r(w)),c&&c(m("layout.toast.loadFallback"));}},[e,t,o,c,x,r,l,y,m]);return pe.useEffect(()=>{D();},[e,t]),jsxRuntime.jsx(Dr,{layouts:f,currentLayoutId:x,onLoad:p=>{M(p.id),r(p);},onSave:async p=>{let k=f.find(I=>I.name===p.name),w=k?k.id:Date.now().toString(),n={id:w,...p,createdAt:new Date().toISOString(),layoutData:a,isDefault:p.isDefault??false,isPublic:p.isPublic??false};try{if(!(await fetch(`${o}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u(n))})).ok)throw new Error("LAYOUT_SAVE_FAILED");g&&g(m("layout.toast.saveSuccess")),await D(),M(w),r(n);}catch(I){console.error("Error saving layout",I);let B=f.some(P=>P.id===w)?f.map(P=>P.id===w?n:P):[...f,n];S(B),s(B),M(w),r(n),g&&g(m("layout.toast.saveLocalSuccess")),c&&c(m("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async p=>{try{if(!(await fetch(`${o}/api/layouts/${encodeURIComponent(p)}`,{method:"DELETE"})).ok)throw new Error("LAYOUT_DELETE_FAILED");x===p&&M(""),g&&g(m("layout.toast.deleteSuccess")),await D();}catch(k){console.error("Error deleting layout",k);let w=f.filter(n=>n.id!==p);S(w),s(w),x===p&&M(""),g&&g(m("layout.toast.deleteLocalSuccess")),c&&c(m("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async p=>{try{let k=f.find(n=>n.id===p);if(!k)return;if(!(await fetch(`${o}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u({...k,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");g&&g(m("layout.toast.defaultSuccess")),await D();}catch(k){console.error("Error setting default",k);let w=f.map(n=>({...n,isDefault:n.id===p}));S(w),s(w),g&&g(m("layout.toast.defaultLocalSuccess")),c&&c(m("layout.toast.backendUnavailableDefaultLocal"));}}})};function Rr(e,t,a){return t[a]<e[a]?-1:t[a]>e[a]?1:0}function Ss(e,t){return e==="desc"?(a,r)=>Rr(a,r,t):(a,r)=>-Rr(a,r,t)}function ks(e,t){let a=e.map((r,l)=>[r,l]);return a.sort((r,l)=>{let i=t(r[0],l[0]);return i!==0?i:r[1]-l[1]}),a.map(r=>r[0])}var Lr=e=>{let t=pe.useCallback(b=>{let F=String(b?.label??b?.id??"").length*9+64,Q=typeof b?.minWidth=="number"?b.minWidth:0;return Math.max(100,Q,F)},[]),[a,r]=pe.useState(""),[l,i]=pe.useState(e.order||"asc"),[o,c]=pe.useState(e.orderBy||""),[g,m]=pe.useState(e.page||0),[f,S]=pe.useState(e.rowsPerPage||20),[x,M]=pe.useState(e.selected||[]),[v,E]=pe.useState(e.columns?e.columns.map(b=>b.id):[]),[u,y]=pe.useState(e.showSummary||false),[s,D]=pe.useState([]),[C,R]=pe.useState(new Set),[T,h]=pe.useState(()=>{let b={};return (e.columns||[]).forEach(L=>{b[L.id]=t(L);}),b}),[p,k]=pe.useState(null),[w,n]=pe.useState(null),[I,d]=pe.useState(null),[B,P]=pe.useState(null),[O,q]=pe.useState(false),[le,ze]=pe.useState("");pe.useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&c(e.orderBy);},[e.order,e.orderBy]),pe.useEffect(()=>{e.selected!==void 0&&M(e.selected);},[e.selected]),pe.useEffect(()=>{e.page!==void 0&&m(e.page);},[e.page]),pe.useEffect(()=>{e.rowsPerPage!==void 0&&S(e.rowsPerPage);},[e.rowsPerPage]),pe.useEffect(()=>{h(b=>{let L={...b};return (e.columns||[]).forEach(F=>{L[F.id]===void 0&&(L[F.id]=t(F));}),L});},[e.columns,t]);let H=pe.useMemo(()=>{let b=e.rows||[];return a&&(b=b.filter(L=>Object.keys(L).some(F=>String(L[F]).toLowerCase().includes(a.toLowerCase())))),b},[e.rows,a]),$=pe.useMemo(()=>e.onSortChange||!o?H:ks(H,Ss(l,o)),[H,l,o,e.onSortChange]),ie=pe.useCallback(b=>{if(s.length===0)return b.map(Y=>({type:"row",data:Y,id:Y[e.rowKey||"id"]}));let L=[...b].sort((Y,X)=>{for(let J of s){if(Y[J]<X[J])return -1;if(Y[J]>X[J])return 1}return 0}),F=(Y,X=0)=>{if(X>=s.length)return Y;let J=s[X],Z={},se=[];return Y.forEach(oe=>{let ve=oe[J],he=`${J}:${ve}`;Z[he]||(Z[he]={key:he,field:J,value:ve,children:[],count:0,level:X},se.push(Z[he])),Z[he].children.push(oe),Z[he].count++;}),se.forEach(oe=>{oe.children&&(oe.children=F(oe.children,X+1));}),se},Q=F(L),U=(Y,X="")=>{let J=[];return Y.forEach(Z=>{if(Z.children){let se=X?`${X}>${Z.key}`:Z.key,oe=C.has(se);J.push({type:"group",id:se,field:Z.field,value:Z.value,level:Z.level,count:Z.count,isExpanded:oe,childIds:(function ve(he){let Xe=[];return he.children.forEach(it=>{it.children?Xe=Xe.concat(ve(it)):Xe.push(it[e.rowKey||"id"]);}),Xe})(Z)}),oe&&(J=J.concat(U(Z.children,se)));}else J.push({type:"row",data:Z,id:Z[e.rowKey||"id"],level:s.length});}),J};return U(Q)},[s,C,e.rowKey]),Ye=pe.useCallback(b=>{if(s.length===0)return [];let L=[...b].sort((U,Y)=>{for(let X of s){if(U[X]<Y[X])return -1;if(U[X]>Y[X])return 1}return 0}),F=[],Q=(U,Y,X)=>{if(Y>=s.length)return;let J=s[Y],Z=new Map;U.forEach(se=>{let oe=se[J],ve=Z.get(oe);ve?ve.push(se):Z.set(oe,[se]);}),Z.forEach((se,oe)=>{let ve=`${J}:${oe}`,he=X?`${X}>${ve}`:ve;F.push(he),Q(se,Y+1,he);});};return Q(L,0,""),F},[s]),fe=pe.useMemo(()=>ie($),[$,ie]),me=pe.useMemo(()=>Ye($),[$,Ye]),ge=pe.useMemo(()=>{let b=(e.rows||[]).length;return typeof e.count=="number"&&e.count>b},[e.count,e.rows]),rt=pe.useMemo(()=>ge?fe:f>0?fe.slice(g*f,g*f+f):fe,[fe,g,f,ge]),ta=pe.useMemo(()=>ge&&typeof e.count=="number"?e.count:fe.length,[fe.length,ge,e.count]),aa=b=>{R(L=>{let F=new Set(L);return F.has(b)?F.delete(b):F.add(b),F});},$e=b=>{let L=me.filter(F=>F===b||F.startsWith(`${b}>`));R(F=>{let Q=new Set(F);return L.forEach(U=>Q.add(U)),Q});},Tt=b=>{R(L=>{let F=new Set(L);return Array.from(F).forEach(Q=>{(Q===b||Q.startsWith(`${b}>`))&&F.delete(Q);}),F});},oa=b=>{if(!b){R(new Set);return}R(new Set(me));},ra=b=>{let L=me.filter(F=>F.startsWith(`${b}>`));return L.length===0?C.has(b):C.has(b)&&L.every(F=>C.has(F))},It=b=>{let L=o===b&&l==="asc",F=o===b&&l==="desc";if(e.onSortChange){L?e.onSortChange(b,"desc"):F?e.onSortChange("","asc"):e.onSortChange(b,"asc");return}L?(i("desc"),c(b)):F?(i("asc"),c("")):(i("asc"),c(b));},na=(b,L)=>{h(F=>({...F,[b]:L}));},Dt=b=>{if(b.target.checked){let L=H.map(F=>F[e.rowKey||"id"]);M(L),e.onSelectionChange&&e.onSelectionChange(L);return}M([]),e.onSelectionChange&&e.onSelectionChange([]);},la=(b,L)=>{let F=L[e.rowKey||"id"],Q=x.indexOf(F),U=[];Q===-1?U=U.concat(x,F):Q===0?U=U.concat(x.slice(1)):Q===x.length-1?U=U.concat(x.slice(0,-1)):Q>0&&(U=U.concat(x.slice(0,Q),x.slice(Q+1))),M(U),e.onSelectionChange&&e.onSelectionChange(U);},Mt=b=>{m(b),e.onPageChange&&e.onPageChange(b);},nt=b=>{S(b),m(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(b);},ia=b=>{let L=v.indexOf(b),F=[...v];L===-1?F.push(b):F.splice(L,1),E(F);},sa=b=>{let L=s.indexOf(b),F=[...s];L===-1?F.push(b):F.splice(L,1),D(F);},ca=b=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:v,order:l,orderBy:o,grouping:s,columnWidths:T});},lt=b=>{b.layout&&(b.layout.visibleColumns&&E(b.layout.visibleColumns),b.layout.order&&i(b.layout.order),b.layout.orderBy&&c(b.layout.orderBy),b.layout.grouping&&D(b.layout.grouping),b.layout.columnWidths&&h(b.layout.columnWidths));},ua=b=>{let L=b?.layoutData||b?.layout||b||{};L.visibleColumns&&E(L.visibleColumns),L.order&&i(L.order),L.orderBy!==void 0&&c(L.orderBy),L.grouping&&D(L.grouping),L.columnWidths&&h(L.columnWidths),L.showSummary!==void 0&&y(!!L.showSummary),R(new Set),m(0),b?.id&&ze(b.id);};pe.useEffect(()=>{e.layout&<({layout:e.layout});},[e.layout]);let da=b=>{b.preventDefault(),P(B===null?{mouseX:b.clientX+2,mouseY:b.clientY-6}:null);},pa=()=>{P(null);},ma=pe.useMemo(()=>{if(!u)return {};let b={};e.columns.forEach(F=>{if(F.numeric){let Q=H.reduce((U,Y)=>{let X=parseFloat(Y[F.id]);return U+(isNaN(X)?0:X)},0);b[F.id]=Q.toFixed(2);}else b[F.id]="";});let L=e.columns.find(F=>v.includes(F.id));return L&&!L.numeric&&(b[L.id]="Total"),b},[H,e.columns,u,v]),ga=()=>{if(!e.columns||!H)return;let b=e.columns.map(Y=>Y.label).join(","),L=H.map(Y=>e.columns.map(X=>{let J=Y[X.id];return `"${(J==null?"":String(J)).replace(/"/g,'""')}"`}).join(",")).join(`
|
|
2
2
|
`),F=`data:text/csv;charset=utf-8,${b}
|
|
3
|
-
${L}`,Q=encodeURI(F),U=document.createElement("a");U.setAttribute("href",Q),U.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(U),U.click(),document.body.removeChild(U);},Pt=()=>{q(true);},ma=()=>{q(false);};return {isMobile:false,columns:e.columns,order:l,orderBy:o,filterText:a,setFilterText:r,visibleColumns:v,setVisibleColumns:E,showSummary:u,setShowSummary:y,summaryColumns:[],grouping:s,setGrouping:I,expandedGroups:C,setExpandedGroups:R,groupAnchorEl:w,setGroupAnchorEl:n,summaryAnchorEl:D,setSummaryAnchorEl:d,columnWidths:T,setColumnWidths:h,anchorEl:p,setAnchorEl:k,contextMenu:B,setContextMenu:M,sensors:void 0,sortedAndFilteredRows:$,visibleRows:rt,summaryRow:da,page:g,setPage:Mt,rowsPerPage:f,setRowsPerPage:nt,totalDisplayCount:Jt,selected:x,setSelected:P,isAllExpanded:me.length>0&&me.every(b=>C.has(b)),handleColumnResize:oa,handleRequestSort:Dt,handleSelectAllClick:It,handleClick:ra,toggleSummaryColumn:()=>{},handleDragEnd:()=>{},handleExport:pa,handleContextMenu:ca,handleCloseContextMenu:ua,toggleColumnVisibility:na,toggleGroupExpand:ea,toggleGroupField:la,handleToggleAll:ta,handleExpandGroupRecursively:$e,handleCollapseGroupRecursively:Tt,isGroupFullyExpanded:aa,handleLayoutLoad:sa,handleVariantLoad:lt,handleLayoutSave:ia,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:v,order:l,orderBy:o,grouping:s,columnWidths:T},currentLayoutId:le,layoutIdToLoad:"",onPageChange:Mt,onRowsPerPageChange:nt,graphReportOpen:O,handleOpenGraphReport:Pt,handleCloseGraphReport:ma}};var fm=e=>jsxRuntime.jsx(Ts__default.default,{...e}),hm=e=>jsxRuntime.jsx(La__default.default,{...e}),bm=e=>jsxRuntime.jsx(zr__default.default,{...e}),ym=e=>jsxRuntime.jsx(kl__default.default,{...e}),vm=e=>jsxRuntime.jsx(wl__default.default,{...e}),Qt=e=>{let{t}=V(),a="0.85rem",{title:r,showToolbar:l=true,selectionMode:i,selected:o=[],onSelectionChange:c,actions:g,extraTools:m,fitContainer:f=false,fullWidth:S=false,maxHeight:x,loading:P=false,rowsPerPageOptions:v=[20,50,100,-1],onLayoutSave:E,filterConfig:u,rowKey:y,tableKey:s="default",graphReport:I,quickCreate:C,quickEdit:R,quickDelete:T}=e,h=r||t("table.title.default"),{isMobile:p,columns:k,order:w,orderBy:n,filterText:D,setFilterText:d,visibleColumns:B,showSummary:M,setShowSummary:O,summaryColumns:q,grouping:le,setGrouping:ze,expandedGroups:H,groupAnchorEl:$,setGroupAnchorEl:ie,summaryAnchorEl:Ye,setSummaryAnchorEl:fe,columnWidths:me,anchorEl:ge,setAnchorEl:rt,contextMenu:Jt,sensors:ea,sortedAndFilteredRows:$e,summaryRow:Tt,visibleRows:ta,isAllExpanded:aa,page:Dt,setPage:oa,rowsPerPage:It,setRowsPerPage:ra,totalDisplayCount:Mt,setSelected:nt,handleColumnResize:na,handleRequestSort:la,handleSelectAllClick:ia,handleClick:lt,toggleSummaryColumn:sa,handleDragEnd:ca,handleExport:ua,handleContextMenu:da,handleCloseContextMenu:pa,toggleColumnVisibility:Pt,toggleGroupExpand:ma,toggleGroupField:b,handleToggleAll:L,handleExpandGroupRecursively:F,handleCollapseGroupRecursively:Q,isGroupFullyExpanded:U,handleLayoutLoad:Y,handleVariantLoad:X,handleLayoutSave:J,effectiveAppId:Z,currentLayoutData:se,currentLayoutId:oe,layoutIdToLoad:ve,graphReportOpen:he,handleOpenGraphReport:Xe,handleCloseGraphReport:it}=Rr(e),Ja=I?.enabled??false,eo=!!C?.enabled,to=!!R?.enabled,ao=!!T?.enabled,Rt=C?.fields,ga=C?.excludeFields||[],Yr=C?.initialValues||{},[Xr,Lt]=pe__namespace.default.useState(false),[fa,oo]=pe__namespace.default.useState(false),[ro,no]=pe__namespace.default.useState({}),[Zr,Ft]=pe__namespace.default.useState(false),[ha,lo]=pe__namespace.default.useState(false),[io,so]=pe__namespace.default.useState({}),[Jr,st]=pe__namespace.default.useState(false),[en,co]=pe__namespace.default.useState(false),uo=pe__namespace.default.useMemo(()=>{let A=[...k];if(Array.isArray(Rt)&&Rt.length>0){let _=new Set(Rt);A=A.filter(re=>_.has(re.id));}if(ga.length>0){let _=new Set(ga);A=A.filter(re=>!_.has(re.id));}return A.filter(_=>!!_?.id)},[k,ga,Rt]),ba=y||"id",Pe=pe__namespace.default.useMemo(()=>{let A=new Set(o);return $e.filter(_=>A.has(_?.[ba]))},[o,$e,ba]),Ze=Pe.length===1?Pe[0]:null,Et=R?.fields,ya=R?.excludeFields||[],po=R?.editableFields||[],mo=R?.nonEditableFields||[],go=R?.primaryKeys?.length?R.primaryKeys:[ba],fo=pe__namespace.default.useMemo(()=>{let A=[...k];if(Array.isArray(Et)&&Et.length>0){let _=new Set(Et);A=A.filter(re=>_.has(re.id));}if(ya.length>0){let _=new Set(ya);A=A.filter(re=>!_.has(re.id));}return A.filter(_=>!!_?.id)},[k,ya,Et]),ho=pe__namespace.default.useMemo(()=>new Set(go),[go]),va=pe__namespace.default.useMemo(()=>new Set(po),[po]),bo=pe__namespace.default.useMemo(()=>new Set(mo),[mo]),tn=pe__namespace.default.useCallback(A=>va.size>0?va.has(A):!(bo.has(A)||ho.has(A)),[va,bo,ho]),an=()=>{let A={};uo.forEach(_=>{A[_.id]=Yr[_.id]??"";}),no(A),Lt(true);},yo=()=>{fa||Lt(false);},on=(A,_)=>{no(re=>({...re,[A]:_}));},rn=async()=>{if(!C?.onSubmit){Lt(false);return}try{oo(!0),await C.onSubmit(ro),Lt(!1);}finally{oo(false);}},nn=()=>{if(!Ze)return;let A={};fo.forEach(re=>{A[re.id]=Ze[re.id]??"";});let _=R?.getInitialValues?{...A,...R.getInitialValues(Ze)}:A;so(_),Ft(true);},vo=()=>{ha||Ft(false);},ln=(A,_)=>{so(re=>({...re,[A]:_}));},sn=async()=>{if(Ze){if(!R?.onSubmit){Ft(false);return}try{lo(!0),await R.onSubmit(io,Ze),Ft(!1);}finally{lo(false);}}},cn=()=>{Pe.length!==0&&st(true);},un=()=>{en||st(false);},dn=async()=>{if(Pe.length===0){st(false);return}if(!T?.onConfirm){st(false),nt([]),c?.([]);return}try{co(!0),await T.onConfirm(Pe),st(!1),nt([]),c?.([]);}finally{co(false);}},{model:xa}=rr({rows:$e,config:{...I,title:I?.title||`${h} ${t("graph.reportTitle")}`}}),pn=xa.table.columns.map(A=>({id:A.id,label:A.label,align:A.align||"left",minWidth:120,numeric:A.align==="right"})),mn=Z?jsxRuntime.jsx(Mr,{appId:Z,tableKey:s,currentLayoutData:se,onLayoutLoad:Y,targetLayoutId:ve,activeLayoutId:oe,serviceUrl:(u?.variantService,void 0)}):null,xo=jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(jo,{groupAnchorEl:$,setGroupAnchorEl:ie,grouping:le,setGrouping:ze,columns:k,toggleGroupField:b}),jsxRuntime.jsx(Qo,{anchorEl:ge,setAnchorEl:rt,columns:k,visibleColumns:B,toggleColumnVisibility:Pt}),jsxRuntime.jsx(Yo,{anchorEl:Ye,setAnchorEl:fe,showSummary:M,setShowSummary:O,columns:k,summaryColumns:q,toggleSummaryColumn:sa}),jsxRuntime.jsx(Xo,{contextMenu:Jt,handleCloseContextMenu:pa,columns:k,visibleColumns:B,toggleColumnVisibility:Pt})]});return p?jsxRuntime.jsxs(St__default.default,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[u&&jsxRuntime.jsx(vt,{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:s,currentLayout:[{tableKey:s,layoutData:se}],variantService:u.variantService}),jsxRuntime.jsx(_o,{title:h,loading:P,showSummary:M,setShowSummary:O,setAnchorEl:rt,setSummaryAnchorEl:fe,filterText:D,setFilterText:d,sortedAndFilteredRows:$e,selected:o,columns:k,visibleColumns:B,summaryRow:Tt,handleClick:lt,selectionMode:i}),xo]}):jsxRuntime.jsxs(St__default.default,{sx:{width:S?"100%":"auto",mb:f?0:2,...f?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[u&&jsxRuntime.jsx(St__default.default,{sx:{mb:2},children:jsxRuntime.jsx(vt,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:X,onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,loading:P,appId:u.appId,tableKey:s,currentLayout:[{tableKey:s,layoutData:se}],currentLayoutId:oe,layoutRefs:[{tableKey:s,layoutId:oe}],variantService:u.variantService})}),jsxRuntime.jsxs(ks__default.default,{sx:{width:S?"100%":"auto",mb:f?0:2,display:"flex",flexDirection:"column",overflow:"hidden",...x?{height:x}:f?{flex:1,minHeight:0,height:"100%"}:{}},children:[l&&jsxRuntime.jsx(zo,{filterText:D,setFilterText:d,onRowsPerPageChange:ra,rowsPerPage:It,rowsPerPageOptions:v,page:Dt,count:Mt,onPageChange:oa,actions:g,extraTools:m,grouping:le,setGroupAnchorEl:ie,showSummary:M,setShowSummary:O,setAnchorEl:rt,setSummaryAnchorEl:fe,handleExport:ua,showCreateButton:eo,onOpenCreateDialog:an,showEditButton:to,onOpenEditDialog:nn,editDisabled:Pe.length!==1,showDeleteButton:ao,onOpenDeleteConfirm:cn,deleteDisabled:Pe.length===0,onLayoutSave:E||u?.variantService&&u?.appId?J:void 0,loading:P,layoutManager:mn,onOpenGraphReport:Ja?Xe:void 0}),jsxRuntime.jsx(zr__default.default,{sx:{flex:1,...x?{maxHeight:x,height:x}:f?{height:0,maxHeight:"none"}:{maxHeight:"calc(100vh - 320px)"},overflowY:"auto",overflowX:"auto",position:"relative",minHeight:0},children:jsxRuntime.jsx(core.DndContext,{sensors:ea,collisionDetection:core.closestCenter,onDragEnd:ca,modifiers:[modifiers.restrictToHorizontalAxis],children:jsxRuntime.jsxs(ws__default.default,{sx:{minWidth:S?750:"auto",width:S?"100%":"auto",tableLayout:Object.keys(me).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:a}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsxRuntime.jsx(Ho,{columns:k,visibleColumns:B,order:w,orderBy:n,onRequestSort:la,onContextMenu:da,selectionMode:i,grouping:le,isAllExpanded:aa,handleToggleAll:L,rowCount:$e.length,numSelected:o.length,onSelectAllClick:ia,columnWidths:me,onColumnResize:na}),jsxRuntime.jsx(qo,{visibleRows:ta,columns:k,visibleColumns:B,selectionMode:i,selected:o,orderBy:n,loading:P,expandedGroups:H,toggleGroupExpand:ma,handleExpandGroupRecursively:F,handleCollapseGroupRecursively:Q,isGroupFullyExpanded:U,handleClick:lt,onSelectionChange:c,grouping:le,rowKeyProp:y,page:Dt,rowsPerPage:It}),M&&jsxRuntime.jsx(Uo,{showSummary:M,columns:k,visibleColumns:B,summaryRow:Tt,selectionMode:i?.toString(),grouping:le,orderBy:n,zIndex:3})]})})})]}),eo&&jsxRuntime.jsxs(Lr__default.default,{open:Xr,onClose:yo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:A=>`1px solid ${A.palette.divider}`,bgcolor:"background.paper"}}},children:[jsxRuntime.jsx(Fr__default.default,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:C?.title||t("quickCreate.createWithTitle",{title:h})}),jsxRuntime.jsx(Er__default.default,{sx:{pt:"8px !important"},children:jsxRuntime.jsxs(St__default.default,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[uo.map(A=>{let _=A.type==="number"||A.numeric?"number":A.type==="date"?"date":"text",re=A.label||A.id;return jsxRuntime.jsx(Br__default.default,{label:re,value:ro[A.id]??"",onChange:Ca=>on(A.id,Ca.target.value),type:_,size:"small",fullWidth:true,InputLabelProps:{shrink:_==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${A.id}`)}),C?.description&&jsxRuntime.jsx(Or__default.default,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:C.description})]})}),jsxRuntime.jsxs(Ar__default.default,{sx:{px:3,pb:2},children:[jsxRuntime.jsx(jt__default.default,{onClick:yo,sx:{fontSize:"0.85rem"},disabled:fa,children:C?.cancelLabel||t("common.cancel")}),jsxRuntime.jsx(jt__default.default,{onClick:rn,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:fa,children:C?.submitLabel||t("common.save")})]})]}),to&&jsxRuntime.jsxs(Lr__default.default,{open:Zr,onClose:vo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:A=>`1px solid ${A.palette.divider}`,bgcolor:"background.paper"}}},children:[jsxRuntime.jsx(Fr__default.default,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:R?.title||t("quickEdit.editWithTitle",{title:h})}),jsxRuntime.jsx(Er__default.default,{sx:{pt:"8px !important"},children:jsxRuntime.jsxs(St__default.default,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[fo.map(A=>{let _=A.type==="number"||A.numeric?"number":A.type==="date"?"date":"text",re=A.label||A.id,Ca=tn(A.id);return jsxRuntime.jsx(Br__default.default,{label:re,value:io[A.id]??"",onChange:gn=>ln(A.id,gn.target.value),type:_,size:"small",fullWidth:true,disabled:!Ca,InputLabelProps:{shrink:_==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${A.id}`)}),R?.description&&jsxRuntime.jsx(Or__default.default,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:R.description})]})}),jsxRuntime.jsxs(Ar__default.default,{sx:{px:3,pb:2},children:[jsxRuntime.jsx(jt__default.default,{onClick:vo,sx:{fontSize:"0.85rem"},disabled:ha,children:R?.cancelLabel||t("common.cancel")}),jsxRuntime.jsx(jt__default.default,{onClick:sn,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:ha||!Ze,children:R?.submitLabel||t("common.save")})]})]}),ao&&jsxRuntime.jsx(Ao,{open:Jr,type:"warning",title:T?.title||t("quickDelete.confirmTitle"),message:T?.message||(Pe.length>1?t("quickDelete.confirmMessageMultiple",{count:Pe.length}):t("quickDelete.confirmMessageSingle")),confirmText:T?.confirmText||t("common.delete"),cancelText:T?.cancelText||t("common.cancel"),onClose:un,onConfirm:dn}),xo,Ja&&jsxRuntime.jsx(ar,{open:he,onClose:it,model:xa,tableContent:jsxRuntime.jsx(Qt,{title:t("graph.dataBody"),columns:pn,rows:xa.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},xm=Qt;var Im=({title:e,hideHeader:t=true,filterConfig:a,tableProps:r,children:l,spacing:i=1})=>jsxRuntime.jsxs(Bo,{title:e,hideHeader:t,children:[jsxRuntime.jsxs(material.Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[a&&jsxRuntime.jsx(material.Box,{sx:{flexShrink:0},children:jsxRuntime.jsx(vt,{...a})}),jsxRuntime.jsx(material.Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsxRuntime.jsx(Qt,{...r,fitContainer:true,filterConfig:void 0})})]}),l]});var Fm=({metadata:e,fetchData:t,initialRowsPerPage:a=20,rowsPerPageOptions:r=[20,50,100,-1]})=>{let{t:l}=V(),[i,o]=pe.useState(false),[c,g]=pe.useState([]),[m,f]=pe.useState({}),[S,x]=pe.useState(e.variants||[]),[P,v]=pe.useState(e.layout||null),[E,u]=pe.useState(0),[y,s]=pe.useState(0),[I,C]=pe.useState(a),[R,T]=pe.useState([]),[h,p]=pe.useState("asc"),[k,w]=pe.useState("");pe.useEffect(()=>{let H={};e.filters.forEach($=>{$.defaultValue!==void 0&&(H[$.id]=$.defaultValue);}),f(H);},[e.filters]);let n=pe.useCallback(async(H,$,ie,Ye,fe)=>{o(true);try{let me={...H,page:$+1,limit:ie,sort:fe,order:Ye},ge;t?ge=await t(me):typeof e.api=="function"?ge=await e.api(me):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,me),ge={rows:[],total:0}):(console.warn("No API configured for report"),ge={rows:[],total:0}),ge&&(g(ge.rows||[]),u(ge.total||0));}catch(me){console.error("Failed to fetch report data",me);}finally{o(false);}},[e.api,t]);pe.useEffect(()=>{n(m,y,I,h,k);},[n,y,I,h,k]);let D=()=>{s(0),n(m,0,I,h,k);},d=H=>{s(0),C(H);},B=(H,$)=>{p($),w(H);},M=H=>{f(H);},O=H=>{if(H.filters){let $=H.filters.find(ie=>ie.scope==="default"||ie.scope===e.id);$&&(f($.filters),n($.filters,0,I));}H.layout&&v(H.layout);},q=H=>{let $={...H,id:Date.now().toString(),createdAt:new Date().toISOString()};x(ie=>[...ie,$]);},le=H=>{v(H);};return {pageProps:{title:e.title,filterConfig:{appId:e.id,fields:e.filters,filters:m,onFilterChange:M,onSearch:D,onVariantLoad:O,onVariantSave:q,onVariantDelete:H=>x($=>$.filter(ie=>ie.id!==H)),onVariantSetDefault:H=>{x($=>$.map(ie=>({...ie,isDefault:ie.id===H})));},variants:S},tableProps:{appId:e.id,columns:e.columns,rows:c,loading:i,rowKey:"id",count:E,page:y,rowsPerPage:I,rowsPerPageOptions:r,onPageChange:s,onRowsPerPageChange:d,selectionMode:"multiple",selected:R,onSelectionChange:T,onLayoutSave:le,layout:P,title:e.title,showSummary:true,order:h,orderBy:k,onSortChange:B,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${l("graph.reportTitle")}`}}},filters:m,rows:c,loading:i,refresh:D}};var $r=64,Ks="#E9EDF2",js="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",Qs=["en","zh","fr","de","ja","ko"],_r={en:"EN",zh:"\u4E2D\u6587",fr:"FR",de:"DE",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4"},Kr=({appTitle:e,logo:t,mode:a="dark",onToggleMode:r,locale:l,localeLabel:i,localeOptions:o,onLocaleChange:c,searchPlaceholder:g,onSearch:m,user:f,leftSlot:S,rightSlot:x})=>{let{t:P,locale:v}=V(),u=material.useTheme().palette.mode==="dark",[y,s]=pe.useState(""),[I,C]=pe.useState(null),[R,T]=pe.useState(null),h=O=>{O.preventDefault(),m&&m(y.trim());},p=a==="system"?jsxRuntime.jsx(Ws__default.default,{fontSize:"small"}):a==="dark"?jsxRuntime.jsx(qs__default.default,{fontSize:"small"}):jsxRuntime.jsx(Us__default.default,{fontSize:"small"}),k=P(a==="system"?"header.theme.system":a==="dark"?"header.theme.dark":"header.theme.light"),w=l||v,n=o&&o.length>0?o:Qs,D=i||_r[w]||w.toUpperCase(),d=!!I,B=g||P("header.searchPlaceholder"),M=!!R;return jsxRuntime.jsxs(material.AppBar,{position:"sticky",elevation:0,sx:O=>({top:0,zIndex:O.zIndex.drawer+10,height:$r,backgroundColor:O.palette.mode==="dark"?"#0D0D0D":Ks,backgroundImage:O.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%)",js,"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:O.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(15,23,42,0.12)"}),children:[jsxRuntime.jsxs(material.Toolbar,{sx:{minHeight:`${$r}px !important`,px:2,gap:2},children:[jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:1.5,sx:{minWidth:220},children:[t||jsxRuntime.jsx(material.Box,{component:"img",src:"/orbcafe.png",alt:"ORBCAFE Logo",sx:{width:44,height:44,display:"block",objectFit:"contain",flexShrink:0}}),e&&jsxRuntime.jsx(material.Typography,{variant:"h6",sx:{fontWeight:700,color:u?"common.white":"#111827"},children:e}),S]}),jsxRuntime.jsx(material.Box,{sx:{flex:1,display:"flex",justifyContent:"center",minWidth:0},children:jsxRuntime.jsx(material.Box,{component:"form",onSubmit:h,sx:{width:"100%",maxWidth:540},children:jsxRuntime.jsx(material.TextField,{size:"small",fullWidth:true,value:y,onChange:O=>s(O.target.value),placeholder:B,InputProps:{startAdornment:jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(br__default.default,{sx:{color:u?"rgba(255,255,255,0.7)":"rgba(15,23,42,0.55)",fontSize:18}})}),sx:{color:u?"common.white":"rgba(17,24,39,0.9)",bgcolor:u?"rgba(255,255,255,0.08)":"#ffffff",borderRadius:999,"& .MuiOutlinedInput-notchedOutline":{borderColor:u?"rgba(255,255,255,0.15)":"rgba(15,23,42,0.2)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:u?"rgba(255,255,255,0.35)":"rgba(15,23,42,0.35)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:u?"rgba(255,255,255,0.5)":"rgba(15,23,42,0.55)"}}},inputProps:{style:{color:u?"white":"#111827"}}})})}),jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:1.5,children:[c?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(material.IconButton,{size:"small",onClick:O=>C(O.currentTarget),sx:{color:u?"common.white":"#111827",borderRadius:1,px:.5},children:jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsxRuntime.jsx(Ur__default.default,{sx:{fontSize:18}}),jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{fontWeight:500},children:D})]})}),jsxRuntime.jsx(material.Menu,{anchorEl:I,open:d,onClose:()=>C(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:n.map(O=>jsxRuntime.jsx(material.MenuItem,{selected:O===w,onClick:()=>{c(O),C(null);},sx:{fontSize:"0.82rem"},children:_r[O]},O))})]}):jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsxRuntime.jsx(Ur__default.default,{sx:{color:u?"common.white":"#111827",fontSize:18}}),jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{color:u?"common.white":"#111827",fontWeight:500},children:D})]}),jsxRuntime.jsx(material.IconButton,{size:"small",sx:{color:u?"common.white":"#111827"},onClick:r,title:k,children:p}),f&&jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:1,children:[jsxRuntime.jsxs(material.Box,{sx:{textAlign:"right",minWidth:0},children:[jsxRuntime.jsx(material.Typography,{variant:"body2",sx:{color:u?"common.white":"#111827",fontWeight:700,lineHeight:1.15},children:f.name}),f.subtitle&&jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{display:"block",mt:.25,color:u?"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})]}),jsxRuntime.jsx(material.IconButton,{size:"small",onClick:O=>T(O.currentTarget),sx:{p:0},children:jsxRuntime.jsx(material.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()})})]}),x]})]}),jsxRuntime.jsxs(material.Menu,{anchorEl:R,open:M,onClose:()=>T(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:[jsxRuntime.jsxs(material.MenuItem,{onClick:()=>T(null),children:[jsxRuntime.jsx(material.ListItemIcon,{children:jsxRuntime.jsx(es__default.default,{sx:{fontSize:18}})}),jsxRuntime.jsx(material.ListItemText,{primary:P("header.menu.setting"),slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]}),jsxRuntime.jsxs(material.MenuItem,{onClick:()=>T(null),children:[jsxRuntime.jsx(material.ListItemIcon,{children:jsxRuntime.jsx(_s__default.default,{sx:{fontSize:18}})}),jsxRuntime.jsx(material.ListItemText,{primary:P("header.menu.logout"),slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]})]})]})};var jr=({menuData:e=[],initialNavigationCollapsed:t=false}={})=>{let{navigationIslandProps:a}=Fo({initialCollapsed:t,content:e}),[r,l]=pe.useState(900);pe.useEffect(()=>{let o=()=>l(window.innerHeight);return o(),window.addEventListener("resize",o),()=>window.removeEventListener("resize",o)},[]);let i=pe.useMemo(()=>Math.max(280,r-100),[r]);return {navigationIslandProps:a,navigationMaxHeight:i}};var ag=({appTitle:e,menuData:t=[],children:a,showNavigation:r=true,locale:l="en",localeLabel:i,localeOptions:o,onLocaleChange:c,user:g,logo:m,onSearch:f,rightHeaderSlot:S,leftHeaderSlot:x,contentSx:P})=>{let[v,E]=pe.useState("system"),[u,y]=pe.useState("light"),[s,I]=pe.useState(false),C=v==="system"?s?u:"light":v;pe.useEffect(()=>{I(true);let p=window.matchMedia("(prefers-color-scheme: dark)"),k=()=>{y(p.matches?"dark":"light");};return k(),p.addEventListener("change",k),()=>p.removeEventListener("change",k)},[]);let R=pe.useMemo(()=>material.createTheme({palette:{mode:C}}),[C]),{navigationIslandProps:T,navigationMaxHeight:h}=jr({menuData:t,initialNavigationCollapsed:false});return jsxRuntime.jsx(material.ThemeProvider,{theme:R,children:jsxRuntime.jsx(To,{locale:l,children:jsxRuntime.jsxs(material.Box,{sx:p=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:p.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":p.palette.background.default}),children:[jsxRuntime.jsx(Kr,{appTitle:e,logo:m,mode:v,onToggleMode:()=>E(p=>p==="system"?"dark":p==="dark"?"light":"system"),locale:l,localeLabel:i,localeOptions:o,onLocaleChange:c,user:g,onSearch:f,leftSlot:x,rightSlot:S}),jsxRuntime.jsxs(material.Box,{sx:{flex:1,minHeight:0,display:"flex"},children:[r&&jsxRuntime.jsx(material.Box,{sx:{p:1.5,display:"flex",alignItems:"flex-start",flexShrink:0},children:jsxRuntime.jsx(Ro,{...T,maxHeight:h,colorMode:C})}),jsxRuntime.jsx(material.Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...P},children:a})]})]})})})};exports.Button=ka;exports.CAppHeader=Kr;exports.CAppPageLayout=ag;exports.CLayoutManagement=Dr;exports.CLayoutManager=Mr;exports.CMessageBox=Ao;exports.CPageLayout=Bo;exports.CSmartFilter=vt;exports.CSmartTable=xm;exports.CStandardPage=Im;exports.CTable=Qt;exports.CTableBody=fm;exports.CTableCell=hm;exports.CTableContainer=bm;exports.CTableHead=ym;exports.CTableRow=vm;exports.CVariantManagement=Gt;exports.CVariantManager=pr;exports.NavigationIsland=Ro;exports.ORBCAFE_I18N_MESSAGES=ut;exports.OrbcafeI18nProvider=To;exports.TreeMenu=Ta;exports.buttonVariants=vn;exports.useNavigationIsland=Fo;exports.useOrbcafeI18n=V;exports.usePageLayout=jr;exports.useStandardReport=Fm;
|
|
3
|
+
${L}`,Q=encodeURI(F),U=document.createElement("a");U.setAttribute("href",Q),U.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(U),U.click(),document.body.removeChild(U);},Pt=()=>{q(true);},fa=()=>{q(false);};return {isMobile:false,columns:e.columns,order:l,orderBy:o,filterText:a,setFilterText:r,visibleColumns:v,setVisibleColumns:E,showSummary:u,setShowSummary:y,summaryColumns:[],grouping:s,setGrouping:D,expandedGroups:C,setExpandedGroups:R,groupAnchorEl:w,setGroupAnchorEl:n,summaryAnchorEl:I,setSummaryAnchorEl:d,columnWidths:T,setColumnWidths:h,anchorEl:p,setAnchorEl:k,contextMenu:B,setContextMenu:P,sensors:void 0,sortedAndFilteredRows:$,visibleRows:rt,summaryRow:ma,page:g,setPage:Mt,rowsPerPage:f,setRowsPerPage:nt,totalDisplayCount:ta,selected:x,setSelected:M,isAllExpanded:me.length>0&&me.every(b=>C.has(b)),handleColumnResize:na,handleRequestSort:It,handleSelectAllClick:Dt,handleClick:la,toggleSummaryColumn:()=>{},handleDragEnd:()=>{},handleExport:ga,handleContextMenu:da,handleCloseContextMenu:pa,toggleColumnVisibility:ia,toggleGroupExpand:aa,toggleGroupField:sa,handleToggleAll:oa,handleExpandGroupRecursively:$e,handleCollapseGroupRecursively:Tt,isGroupFullyExpanded:ra,handleLayoutLoad:ua,handleVariantLoad:lt,handleLayoutSave:ca,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:v,order:l,orderBy:o,grouping:s,columnWidths:T},currentLayoutId:le,layoutIdToLoad:"",onPageChange:Mt,onRowsPerPageChange:nt,graphReportOpen:O,handleOpenGraphReport:Pt,handleCloseGraphReport:fa}};var hm=e=>jsxRuntime.jsx(Is__default.default,{...e}),bm=e=>jsxRuntime.jsx(La__default.default,{...e}),ym=e=>jsxRuntime.jsx(Vr__default.default,{...e}),vm=e=>jsxRuntime.jsx(wl__default.default,{...e}),xm=e=>jsxRuntime.jsx(Tl__default.default,{...e}),Xt=e=>{let{t}=V(),a="0.85rem",{title:r,showToolbar:l=true,selectionMode:i,selected:o=[],onSelectionChange:c,actions:g,extraTools:m,fitContainer:f=false,fullWidth:S=false,maxHeight:x,loading:M=false,rowsPerPageOptions:v=[20,50,100,-1],onLayoutSave:E,filterConfig:u,rowKey:y,tableKey:s="default",graphReport:D,quickCreate:C,quickEdit:R,quickDelete:T}=e,h=r||t("table.title.default"),{isMobile:p,columns:k,order:w,orderBy:n,filterText:I,setFilterText:d,visibleColumns:B,showSummary:P,setShowSummary:O,summaryColumns:q,grouping:le,setGrouping:ze,expandedGroups:H,groupAnchorEl:$,setGroupAnchorEl:ie,summaryAnchorEl:Ye,setSummaryAnchorEl:fe,columnWidths:me,anchorEl:ge,setAnchorEl:rt,contextMenu:ta,sensors:aa,sortedAndFilteredRows:$e,summaryRow:Tt,visibleRows:oa,isAllExpanded:ra,page:It,setPage:na,rowsPerPage:Dt,setRowsPerPage:la,totalDisplayCount:Mt,setSelected:nt,handleColumnResize:ia,handleRequestSort:sa,handleSelectAllClick:ca,handleClick:lt,toggleSummaryColumn:ua,handleDragEnd:da,handleExport:pa,handleContextMenu:ma,handleCloseContextMenu:ga,toggleColumnVisibility:Pt,toggleGroupExpand:fa,toggleGroupField:b,handleToggleAll:L,handleExpandGroupRecursively:F,handleCollapseGroupRecursively:Q,isGroupFullyExpanded:U,handleLayoutLoad:Y,handleVariantLoad:X,handleLayoutSave:J,effectiveAppId:Z,currentLayoutData:se,currentLayoutId:oe,layoutIdToLoad:ve,graphReportOpen:he,handleOpenGraphReport:Xe,handleCloseGraphReport:it}=Lr(e),Ja=D?.enabled??false,eo=!!C?.enabled,to=!!R?.enabled,ao=!!T?.enabled,Rt=C?.fields,ha=C?.excludeFields||[],Xr=C?.initialValues||{},[Zr,Lt]=pe__namespace.default.useState(false),[Ft,oo]=pe__namespace.default.useState(false),[ro,no]=pe__namespace.default.useState({}),[Jr,Et]=pe__namespace.default.useState(false),[At,lo]=pe__namespace.default.useState(false),[io,so]=pe__namespace.default.useState({}),[en,st]=pe__namespace.default.useState(false),[co,uo]=pe__namespace.default.useState(false),tn=M||Ft||At||co,po=pe__namespace.default.useMemo(()=>{let A=[...k];if(Array.isArray(Rt)&&Rt.length>0){let _=new Set(Rt);A=A.filter(re=>_.has(re.id));}if(ha.length>0){let _=new Set(ha);A=A.filter(re=>!_.has(re.id));}return A.filter(_=>!!_?.id)},[k,ha,Rt]),ba=y||"id",Pe=pe__namespace.default.useMemo(()=>{let A=new Set(o);return $e.filter(_=>A.has(_?.[ba]))},[o,$e,ba]),Ze=Pe.length===1?Pe[0]:null,Bt=R?.fields,ya=R?.excludeFields||[],mo=R?.editableFields||[],go=R?.nonEditableFields||[],fo=R?.primaryKeys?.length?R.primaryKeys:[ba],ho=pe__namespace.default.useMemo(()=>{let A=[...k];if(Array.isArray(Bt)&&Bt.length>0){let _=new Set(Bt);A=A.filter(re=>_.has(re.id));}if(ya.length>0){let _=new Set(ya);A=A.filter(re=>!_.has(re.id));}return A.filter(_=>!!_?.id)},[k,ya,Bt]),bo=pe__namespace.default.useMemo(()=>new Set(fo),[fo]),va=pe__namespace.default.useMemo(()=>new Set(mo),[mo]),yo=pe__namespace.default.useMemo(()=>new Set(go),[go]),an=pe__namespace.default.useCallback(A=>va.size>0?va.has(A):!(yo.has(A)||bo.has(A)),[va,yo,bo]),on=()=>{let A={};po.forEach(_=>{A[_.id]=Xr[_.id]??"";}),no(A),Lt(true);},vo=()=>{Ft||Lt(false);},rn=(A,_)=>{no(re=>({...re,[A]:_}));},nn=async()=>{if(!C?.onSubmit){Lt(false);return}try{oo(!0),await C.onSubmit(ro),Lt(!1);}finally{oo(false);}},ln=()=>{if(!Ze)return;let A={};ho.forEach(re=>{A[re.id]=Ze[re.id]??"";});let _=R?.getInitialValues?{...A,...R.getInitialValues(Ze)}:A;so(_),Et(true);},xo=()=>{At||Et(false);},sn=(A,_)=>{so(re=>({...re,[A]:_}));},cn=async()=>{if(Ze){if(!R?.onSubmit){Et(false);return}try{lo(!0),await R.onSubmit(io,Ze),Et(!1);}finally{lo(false);}}},un=()=>{Pe.length!==0&&st(true);},dn=()=>{co||st(false);},pn=async()=>{if(Pe.length===0){st(false);return}if(!T?.onConfirm){st(false),nt([]),c?.([]);return}try{uo(!0),await T.onConfirm(Pe),st(!1),nt([]),c?.([]);}finally{uo(false);}},{model:xa}=nr({rows:$e,config:{...D,title:D?.title||`${h} ${t("graph.reportTitle")}`}}),mn=xa.table.columns.map(A=>({id:A.id,label:A.label,align:A.align||"left",minWidth:120,numeric:A.align==="right"})),gn=Z?jsxRuntime.jsx(Pr,{appId:Z,tableKey:s,currentLayoutData:se,onLayoutLoad:Y,targetLayoutId:ve,activeLayoutId:oe,serviceUrl:(u?.variantService,void 0)}):null,Co=jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Qo,{groupAnchorEl:$,setGroupAnchorEl:ie,grouping:le,setGrouping:ze,columns:k,toggleGroupField:b}),jsxRuntime.jsx(Yo,{anchorEl:ge,setAnchorEl:rt,columns:k,visibleColumns:B,toggleColumnVisibility:Pt}),jsxRuntime.jsx(Xo,{anchorEl:Ye,setAnchorEl:fe,showSummary:P,setShowSummary:O,columns:k,summaryColumns:q,toggleSummaryColumn:ua}),jsxRuntime.jsx(Zo,{contextMenu:ta,handleCloseContextMenu:ga,columns:k,visibleColumns:B,toggleColumnVisibility:Pt})]});return p?jsxRuntime.jsxs(St__default.default,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[u&&jsxRuntime.jsx(vt,{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:s,currentLayout:[{tableKey:s,layoutData:se}],variantService:u.variantService}),jsxRuntime.jsx(Ko,{title:h,loading:M,showSummary:P,setShowSummary:O,setAnchorEl:rt,setSummaryAnchorEl:fe,filterText:I,setFilterText:d,sortedAndFilteredRows:$e,selected:o,columns:k,visibleColumns:B,summaryRow:Tt,handleClick:lt,selectionMode:i}),Co]}):jsxRuntime.jsxs(St__default.default,{sx:{width:S?"100%":"auto",mb:f?0:2,...f?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[u&&jsxRuntime.jsx(St__default.default,{sx:{mb:2},children:jsxRuntime.jsx(vt,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:X,onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,loading:M,appId:u.appId,tableKey:s,currentLayout:[{tableKey:s,layoutData:se}],currentLayoutId:oe,layoutRefs:[{tableKey:s,layoutId:oe}],variantService:u.variantService})}),jsxRuntime.jsxs(ws__default.default,{sx:{width:S?"100%":"auto",mb:f?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative","&::before":tn?{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"}},...x?{height:x}:f?{flex:1,minHeight:0,height:"100%"}:{}},children:[l&&jsxRuntime.jsx(Vo,{filterText:I,setFilterText:d,onRowsPerPageChange:la,rowsPerPage:Dt,rowsPerPageOptions:v,page:It,count:Mt,onPageChange:na,actions:g,extraTools:m,grouping:le,setGroupAnchorEl:ie,showSummary:P,setShowSummary:O,setAnchorEl:rt,setSummaryAnchorEl:fe,handleExport:pa,showCreateButton:eo,onOpenCreateDialog:on,showEditButton:to,onOpenEditDialog:ln,editDisabled:Pe.length!==1,showDeleteButton:ao,onOpenDeleteConfirm:un,deleteDisabled:Pe.length===0,onLayoutSave:E||u?.variantService&&u?.appId?J:void 0,loading:M,layoutManager:gn,onOpenGraphReport:Ja?Xe:void 0}),jsxRuntime.jsx(Vr__default.default,{sx:{flex:1,...x?{maxHeight:x,height:x}:f?{height:0,maxHeight:"none"}:{maxHeight:"calc(100vh - 320px)"},overflowY:"auto",overflowX:"auto",position:"relative",minHeight:0},children:jsxRuntime.jsx(core.DndContext,{sensors:aa,collisionDetection:core.closestCenter,onDragEnd:da,modifiers:[modifiers.restrictToHorizontalAxis],children:jsxRuntime.jsxs(Ts__default.default,{sx:{minWidth:S?750:"auto",width:S?"100%":"auto",tableLayout:Object.keys(me).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:a}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsxRuntime.jsx(Go,{columns:k,visibleColumns:B,order:w,orderBy:n,onRequestSort:sa,onContextMenu:ma,selectionMode:i,grouping:le,isAllExpanded:ra,handleToggleAll:L,rowCount:$e.length,numSelected:o.length,onSelectAllClick:ca,columnWidths:me,onColumnResize:ia}),jsxRuntime.jsx(Uo,{visibleRows:oa,columns:k,visibleColumns:B,selectionMode:i,selected:o,orderBy:n,loading:M,expandedGroups:H,toggleGroupExpand:fa,handleExpandGroupRecursively:F,handleCollapseGroupRecursively:Q,isGroupFullyExpanded:U,handleClick:lt,onSelectionChange:c,grouping:le,rowKeyProp:y,page:It,rowsPerPage:Dt}),P&&jsxRuntime.jsx($o,{showSummary:P,columns:k,visibleColumns:B,summaryRow:Tt,selectionMode:i?.toString(),grouping:le,orderBy:n,zIndex:3})]})})})]}),eo&&jsxRuntime.jsxs(Fr__default.default,{open:Zr,onClose:vo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:A=>`1px solid ${A.palette.divider}`,bgcolor:"background.paper"}}},children:[jsxRuntime.jsx(Er__default.default,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:C?.title||t("quickCreate.createWithTitle",{title:h})}),jsxRuntime.jsx(Ar__default.default,{sx:{pt:"8px !important"},children:jsxRuntime.jsxs(St__default.default,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[po.map(A=>{let _=A.type==="number"||A.numeric?"number":A.type==="date"?"date":"text",re=A.label||A.id;return jsxRuntime.jsx(Or__default.default,{label:re,value:ro[A.id]??"",onChange:Ca=>rn(A.id,Ca.target.value),type:_,size:"small",fullWidth:true,InputLabelProps:{shrink:_==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${A.id}`)}),C?.description&&jsxRuntime.jsx(zr__default.default,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:C.description})]})}),jsxRuntime.jsxs(Br__default.default,{sx:{px:3,pb:2},children:[jsxRuntime.jsx(Yt__default.default,{onClick:vo,sx:{fontSize:"0.85rem"},disabled:Ft,children:C?.cancelLabel||t("common.cancel")}),jsxRuntime.jsx(Yt__default.default,{onClick:nn,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:Ft,children:C?.submitLabel||t("common.save")})]})]}),to&&jsxRuntime.jsxs(Fr__default.default,{open:Jr,onClose:xo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:A=>`1px solid ${A.palette.divider}`,bgcolor:"background.paper"}}},children:[jsxRuntime.jsx(Er__default.default,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:R?.title||t("quickEdit.editWithTitle",{title:h})}),jsxRuntime.jsx(Ar__default.default,{sx:{pt:"8px !important"},children:jsxRuntime.jsxs(St__default.default,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[ho.map(A=>{let _=A.type==="number"||A.numeric?"number":A.type==="date"?"date":"text",re=A.label||A.id,Ca=an(A.id);return jsxRuntime.jsx(Or__default.default,{label:re,value:io[A.id]??"",onChange:fn=>sn(A.id,fn.target.value),type:_,size:"small",fullWidth:true,disabled:!Ca,InputLabelProps:{shrink:_==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${A.id}`)}),R?.description&&jsxRuntime.jsx(zr__default.default,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:R.description})]})}),jsxRuntime.jsxs(Br__default.default,{sx:{px:3,pb:2},children:[jsxRuntime.jsx(Yt__default.default,{onClick:xo,sx:{fontSize:"0.85rem"},disabled:At,children:R?.cancelLabel||t("common.cancel")}),jsxRuntime.jsx(Yt__default.default,{onClick:cn,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:At||!Ze,children:R?.submitLabel||t("common.save")})]})]}),ao&&jsxRuntime.jsx(Bo,{open:en,type:"warning",title:T?.title||t("quickDelete.confirmTitle"),message:T?.message||(Pe.length>1?t("quickDelete.confirmMessageMultiple",{count:Pe.length}):t("quickDelete.confirmMessageSingle")),confirmText:T?.confirmText||t("common.delete"),cancelText:T?.cancelText||t("common.cancel"),onClose:dn,onConfirm:pn}),Co,Ja&&jsxRuntime.jsx(or,{open:he,onClose:it,model:xa,tableContent:jsxRuntime.jsx(Xt,{title:t("graph.dataBody"),columns:mn,rows:xa.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},Cm=Xt;var Mm=({title:e,hideHeader:t=true,filterConfig:a,tableProps:r,children:l,spacing:i=1})=>jsxRuntime.jsxs(Oo,{title:e,hideHeader:t,children:[jsxRuntime.jsxs(material.Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[a&&jsxRuntime.jsx(material.Box,{sx:{flexShrink:0},children:jsxRuntime.jsx(vt,{...a})}),jsxRuntime.jsx(material.Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsxRuntime.jsx(Xt,{...r,fitContainer:true,filterConfig:void 0})})]}),l]});var Em=({metadata:e,fetchData:t,initialRowsPerPage:a=20,rowsPerPageOptions:r=[20,50,100,-1]})=>{let{t:l}=V(),[i,o]=pe.useState(false),[c,g]=pe.useState([]),[m,f]=pe.useState({}),[S,x]=pe.useState(e.variants||[]),[M,v]=pe.useState(e.layout||null),[E,u]=pe.useState(0),[y,s]=pe.useState(0),[D,C]=pe.useState(a),[R,T]=pe.useState([]),[h,p]=pe.useState("asc"),[k,w]=pe.useState("");pe.useEffect(()=>{let H={};e.filters.forEach($=>{$.defaultValue!==void 0&&(H[$.id]=$.defaultValue);}),f(H);},[e.filters]);let n=pe.useCallback(async(H,$,ie,Ye,fe)=>{o(true);try{let me={...H,page:$+1,limit:ie,sort:fe,order:Ye},ge;t?ge=await t(me):typeof e.api=="function"?ge=await e.api(me):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,me),ge={rows:[],total:0}):(console.warn("No API configured for report"),ge={rows:[],total:0}),ge&&(g(ge.rows||[]),u(ge.total||0));}catch(me){console.error("Failed to fetch report data",me);}finally{o(false);}},[e.api,t]);pe.useEffect(()=>{n(m,y,D,h,k);},[n,y,D,h,k]);let I=()=>{s(0),n(m,0,D,h,k);},d=H=>{s(0),C(H);},B=(H,$)=>{p($),w(H);},P=H=>{f(H);},O=H=>{if(H.filters){let $=H.filters.find(ie=>ie.scope==="default"||ie.scope===e.id);$&&(f($.filters),n($.filters,0,D));}H.layout&&v(H.layout);},q=H=>{let $={...H,id:Date.now().toString(),createdAt:new Date().toISOString()};x(ie=>[...ie,$]);},le=H=>{v(H);};return {pageProps:{title:e.title,filterConfig:{appId:e.id,fields:e.filters,filters:m,onFilterChange:P,onSearch:I,onVariantLoad:O,onVariantSave:q,onVariantDelete:H=>x($=>$.filter(ie=>ie.id!==H)),onVariantSetDefault:H=>{x($=>$.map(ie=>({...ie,isDefault:ie.id===H})));},variants:S},tableProps:{appId:e.id,columns:e.columns,rows:c,loading:i,rowKey:"id",count:E,page:y,rowsPerPage:D,rowsPerPageOptions:r,onPageChange:s,onRowsPerPageChange:d,selectionMode:"multiple",selected:R,onSelectionChange:T,onLayoutSave:le,layout:M,title:e.title,showSummary:true,order:h,orderBy:k,onSortChange:B,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${l("graph.reportTitle")}`}}},filters:m,rows:c,loading:i,refresh:I}};var _r=64,js="#E9EDF2",Qs="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",Ys=["en","zh","fr","de","ja","ko"],Kr={en:"EN",zh:"\u4E2D\u6587",fr:"FR",de:"DE",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4"},jr=({appTitle:e,logo:t,mode:a="dark",onToggleMode:r,locale:l,localeLabel:i,localeOptions:o,onLocaleChange:c,searchPlaceholder:g,onSearch:m,user:f,leftSlot:S,rightSlot:x})=>{let{t:M,locale:v}=V(),u=material.useTheme().palette.mode==="dark",[y,s]=pe.useState(""),[D,C]=pe.useState(null),[R,T]=pe.useState(null),h=O=>{O.preventDefault(),m&&m(y.trim());},p=a==="system"?jsxRuntime.jsx(qs__default.default,{fontSize:"small"}):a==="dark"?jsxRuntime.jsx(Us__default.default,{fontSize:"small"}):jsxRuntime.jsx($s__default.default,{fontSize:"small"}),k=M(a==="system"?"header.theme.system":a==="dark"?"header.theme.dark":"header.theme.light"),w=l||v,n=o&&o.length>0?o:Ys,I=i||Kr[w]||w.toUpperCase(),d=!!D,B=g||M("header.searchPlaceholder"),P=!!R;return jsxRuntime.jsxs(material.AppBar,{position:"sticky",elevation:0,sx:O=>({top:0,zIndex:O.zIndex.drawer+10,height:_r,backgroundColor:O.palette.mode==="dark"?"#0D0D0D":js,backgroundImage:O.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%)",Qs,"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:O.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(15,23,42,0.12)"}),children:[jsxRuntime.jsxs(material.Toolbar,{sx:{minHeight:`${_r}px !important`,px:2,gap:2},children:[jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:1.5,sx:{minWidth:220},children:[t||jsxRuntime.jsx(material.Box,{component:"img",src:"/orbcafe.png",alt:"ORBCAFE Logo",sx:{width:44,height:44,display:"block",objectFit:"contain",flexShrink:0}}),e&&jsxRuntime.jsx(material.Typography,{variant:"h6",sx:{fontWeight:700,color:u?"common.white":"#111827"},children:e}),S]}),jsxRuntime.jsx(material.Box,{sx:{flex:1,display:"flex",justifyContent:"center",minWidth:0},children:jsxRuntime.jsx(material.Box,{component:"form",onSubmit:h,sx:{width:"100%",maxWidth:540},children:jsxRuntime.jsx(material.TextField,{size:"small",fullWidth:true,value:y,onChange:O=>s(O.target.value),placeholder:B,InputProps:{startAdornment:jsxRuntime.jsx(material.InputAdornment,{position:"start",children:jsxRuntime.jsx(yr__default.default,{sx:{color:u?"rgba(255,255,255,0.7)":"rgba(15,23,42,0.55)",fontSize:18}})}),sx:{color:u?"common.white":"rgba(17,24,39,0.9)",bgcolor:u?"rgba(255,255,255,0.08)":"#ffffff",borderRadius:999,"& .MuiOutlinedInput-notchedOutline":{borderColor:u?"rgba(255,255,255,0.15)":"rgba(15,23,42,0.2)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:u?"rgba(255,255,255,0.35)":"rgba(15,23,42,0.35)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:u?"rgba(255,255,255,0.5)":"rgba(15,23,42,0.55)"}}},inputProps:{style:{color:u?"white":"#111827"}}})})}),jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:1.5,children:[c?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(material.IconButton,{size:"small",onClick:O=>C(O.currentTarget),sx:{color:u?"common.white":"#111827",borderRadius:1,px:.5},children:jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsxRuntime.jsx($r__default.default,{sx:{fontSize:18}}),jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{fontWeight:500},children:I})]})}),jsxRuntime.jsx(material.Menu,{anchorEl:D,open:d,onClose:()=>C(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:n.map(O=>jsxRuntime.jsx(material.MenuItem,{selected:O===w,onClick:()=>{c(O),C(null);},sx:{fontSize:"0.82rem"},children:Kr[O]},O))})]}):jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsxRuntime.jsx($r__default.default,{sx:{color:u?"common.white":"#111827",fontSize:18}}),jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{color:u?"common.white":"#111827",fontWeight:500},children:I})]}),jsxRuntime.jsx(material.IconButton,{size:"small",sx:{color:u?"common.white":"#111827"},onClick:r,title:k,children:p}),f&&jsxRuntime.jsxs(material.Stack,{direction:"row",alignItems:"center",spacing:1,children:[jsxRuntime.jsxs(material.Box,{sx:{textAlign:"right",minWidth:0},children:[jsxRuntime.jsx(material.Typography,{variant:"body2",sx:{color:u?"common.white":"#111827",fontWeight:700,lineHeight:1.15},children:f.name}),f.subtitle&&jsxRuntime.jsx(material.Typography,{variant:"caption",sx:{display:"block",mt:.25,color:u?"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})]}),jsxRuntime.jsx(material.IconButton,{size:"small",onClick:O=>T(O.currentTarget),sx:{p:0},children:jsxRuntime.jsx(material.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()})})]}),x]})]}),jsxRuntime.jsxs(material.Menu,{anchorEl:R,open:P,onClose:()=>T(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:[jsxRuntime.jsxs(material.MenuItem,{onClick:()=>T(null),children:[jsxRuntime.jsx(material.ListItemIcon,{children:jsxRuntime.jsx(ts__default.default,{sx:{fontSize:18}})}),jsxRuntime.jsx(material.ListItemText,{primary:M("header.menu.setting"),slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]}),jsxRuntime.jsxs(material.MenuItem,{onClick:()=>T(null),children:[jsxRuntime.jsx(material.ListItemIcon,{children:jsxRuntime.jsx(Ks__default.default,{sx:{fontSize:18}})}),jsxRuntime.jsx(material.ListItemText,{primary:M("header.menu.logout"),slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]})]})]})};var Qr=({menuData:e=[],initialNavigationCollapsed:t=false}={})=>{let{navigationIslandProps:a}=Eo({initialCollapsed:t,content:e}),[r,l]=pe.useState(900);pe.useEffect(()=>{let o=()=>l(window.innerHeight);return o(),window.addEventListener("resize",o),()=>window.removeEventListener("resize",o)},[]);let i=pe.useMemo(()=>Math.max(280,r-100),[r]);return {navigationIslandProps:a,navigationMaxHeight:i}};var og=({appTitle:e,menuData:t=[],children:a,showNavigation:r=true,locale:l="en",localeLabel:i,localeOptions:o,onLocaleChange:c,user:g,logo:m,onSearch:f,rightHeaderSlot:S,leftHeaderSlot:x,contentSx:M})=>{let[v,E]=pe.useState("system"),[u,y]=pe.useState("light"),[s,D]=pe.useState(false),C=v==="system"?s?u:"light":v;pe.useEffect(()=>{D(true);let p=window.matchMedia("(prefers-color-scheme: dark)"),k=()=>{y(p.matches?"dark":"light");};return k(),p.addEventListener("change",k),()=>p.removeEventListener("change",k)},[]);let R=pe.useMemo(()=>material.createTheme({palette:{mode:C}}),[C]),{navigationIslandProps:T,navigationMaxHeight:h}=Qr({menuData:t,initialNavigationCollapsed:false});return jsxRuntime.jsx(material.ThemeProvider,{theme:R,children:jsxRuntime.jsx(Io,{locale:l,children:jsxRuntime.jsxs(material.Box,{sx:p=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:p.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":p.palette.background.default}),children:[jsxRuntime.jsx(jr,{appTitle:e,logo:m,mode:v,onToggleMode:()=>E(p=>p==="system"?"dark":p==="dark"?"light":"system"),locale:l,localeLabel:i,localeOptions:o,onLocaleChange:c,user:g,onSearch:f,leftSlot:x,rightSlot:S}),jsxRuntime.jsxs(material.Box,{sx:{flex:1,minHeight:0,display:"flex"},children:[r&&jsxRuntime.jsx(material.Box,{sx:{p:1.5,display:"flex",alignItems:"flex-start",flexShrink:0},children:jsxRuntime.jsx(Lo,{...T,maxHeight:h,colorMode:C})}),jsxRuntime.jsx(material.Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...M},children:a})]})]})})})};exports.Button=ka;exports.CAppHeader=jr;exports.CAppPageLayout=og;exports.CLayoutManagement=Dr;exports.CLayoutManager=Pr;exports.CMessageBox=Bo;exports.CPageLayout=Oo;exports.CSmartFilter=vt;exports.CSmartTable=Cm;exports.CStandardPage=Mm;exports.CTable=Xt;exports.CTableBody=hm;exports.CTableCell=bm;exports.CTableContainer=ym;exports.CTableHead=vm;exports.CTableRow=xm;exports.CVariantManagement=qt;exports.CVariantManager=mr;exports.NavigationIsland=Lo;exports.ORBCAFE_I18N_MESSAGES=ut;exports.OrbcafeI18nProvider=Io;exports.TreeMenu=Ta;exports.buttonVariants=xn;exports.useNavigationIsland=Eo;exports.useOrbcafeI18n=V;exports.usePageLayout=Qr;exports.useStandardReport=Em;
|