@wakastellar/ui 0.1.0

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.
Files changed (113) hide show
  1. package/dist/blocks/footer/index.d.ts +19 -0
  2. package/dist/blocks/headtab/index.d.ts +27 -0
  3. package/dist/blocks/index.d.ts +5 -0
  4. package/dist/blocks/language-selector/index.d.ts +6 -0
  5. package/dist/blocks/layout/index.d.ts +28 -0
  6. package/dist/blocks/login/index.d.ts +13 -0
  7. package/dist/components/DataTable/DataTable.d.ts +17 -0
  8. package/dist/components/DataTable/DataTableAdvanced.d.ts +27 -0
  9. package/dist/components/DataTable/DataTableColumnResizer.d.ts +8 -0
  10. package/dist/components/DataTable/DataTableContextMenu.d.ts +47 -0
  11. package/dist/components/DataTable/DataTableEditCell.d.ts +29 -0
  12. package/dist/components/DataTable/DataTableFilters.d.ts +14 -0
  13. package/dist/components/DataTable/DataTableGrouping.d.ts +25 -0
  14. package/dist/components/DataTable/DataTablePagination.d.ts +8 -0
  15. package/dist/components/DataTable/DataTableSelection.d.ts +46 -0
  16. package/dist/components/DataTable/DataTableToolbar.d.ts +14 -0
  17. package/dist/components/DataTable/examples/EditExample.d.ts +2 -0
  18. package/dist/components/DataTable/hooks/useDataTable.d.ts +24 -0
  19. package/dist/components/DataTable/hooks/useDataTableAdvanced.d.ts +38 -0
  20. package/dist/components/DataTable/hooks/useDataTableEdit.d.ts +22 -0
  21. package/dist/components/DataTable/hooks/useDataTableExport.d.ts +15 -0
  22. package/dist/components/DataTable/hooks/useDataTableImport.d.ts +12 -0
  23. package/dist/components/DataTable/hooks/useDataTableTheme.d.ts +16 -0
  24. package/dist/components/DataTable/hooks/useDataTableVirtualization.d.ts +19 -0
  25. package/dist/components/DataTable/hooks/useTableLayout.d.ts +26 -0
  26. package/dist/components/DataTable/index.d.ts +37 -0
  27. package/dist/components/DataTable/types.d.ts +461 -0
  28. package/dist/components/DataTable/utils.d.ts +37 -0
  29. package/dist/components/accordion/index.d.ts +7 -0
  30. package/dist/components/alert/index.d.ts +8 -0
  31. package/dist/components/alert-dialog/index.d.ts +20 -0
  32. package/dist/components/aspect-ratio/index.d.ts +3 -0
  33. package/dist/components/avatar/index.d.ts +6 -0
  34. package/dist/components/badge/index.d.ts +9 -0
  35. package/dist/components/button/index.d.ts +11 -0
  36. package/dist/components/calendar/index.d.ts +8 -0
  37. package/dist/components/card/index.d.ts +8 -0
  38. package/dist/components/checkbox/index.d.ts +4 -0
  39. package/dist/components/code/index.d.ts +29 -0
  40. package/dist/components/collapsible/index.d.ts +5 -0
  41. package/dist/components/command/index.d.ts +51 -0
  42. package/dist/components/context-menu/index.d.ts +27 -0
  43. package/dist/components/dialog/index.d.ts +19 -0
  44. package/dist/components/dropdown-menu/index.d.ts +27 -0
  45. package/dist/components/form/index.d.ts +23 -0
  46. package/dist/components/hover-card/index.d.ts +6 -0
  47. package/dist/components/index.d.ts +52 -0
  48. package/dist/components/input/index.d.ts +5 -0
  49. package/dist/components/input-otp/index.d.ts +51 -0
  50. package/dist/components/label/index.d.ts +5 -0
  51. package/dist/components/language-selector/index.d.ts +40 -0
  52. package/dist/components/menubar/index.d.ts +28 -0
  53. package/dist/components/navigation-menu/index.d.ts +12 -0
  54. package/dist/components/popover/index.d.ts +6 -0
  55. package/dist/components/progress/index.d.ts +4 -0
  56. package/dist/components/radio-group/index.d.ts +5 -0
  57. package/dist/components/scroll-area/index.d.ts +5 -0
  58. package/dist/components/select/index.d.ts +13 -0
  59. package/dist/components/separator/index.d.ts +4 -0
  60. package/dist/components/sheet/index.d.ts +27 -0
  61. package/dist/components/skeleton/index.d.ts +2 -0
  62. package/dist/components/slider/index.d.ts +4 -0
  63. package/dist/components/switch/index.d.ts +4 -0
  64. package/dist/components/table/index.d.ts +10 -0
  65. package/dist/components/tabs/index.d.ts +7 -0
  66. package/dist/components/textarea/index.d.ts +5 -0
  67. package/dist/components/theme-selector/index.d.ts +8 -0
  68. package/dist/components/toast/index.d.ts +15 -0
  69. package/dist/components/toaster/index.d.ts +1 -0
  70. package/dist/components/toggle/index.d.ts +12 -0
  71. package/dist/components/tooltip/index.d.ts +7 -0
  72. package/dist/components/typography/index.d.ts +85 -0
  73. package/dist/components/waka-admincrumb/index.d.ts +41 -0
  74. package/dist/components/waka-carousel/index.d.ts +105 -0
  75. package/dist/components/waka-datetime-picker/index.d.ts +135 -0
  76. package/dist/components/waka-datetime-picker.form-integration/index.d.ts +69 -0
  77. package/dist/components/waka-notifications/index.d.ts +40 -0
  78. package/dist/components/waka-spinner/index.d.ts +46 -0
  79. package/dist/components/waka-theme-creator/index.d.ts +59 -0
  80. package/dist/components/waka-theme-manager/index.d.ts +62 -0
  81. package/dist/context/admincrumb-context.d.ts +34 -0
  82. package/dist/context/index.d.ts +8 -0
  83. package/dist/context/language-context.d.ts +57 -0
  84. package/dist/context/theme-context.d.ts +39 -0
  85. package/dist/context/theme-provider.d.ts +74 -0
  86. package/dist/context/waka-provider.d.ts +50 -0
  87. package/dist/hooks/index.d.ts +1 -0
  88. package/dist/hooks/use-toast.d.ts +44 -0
  89. package/dist/hooks/use-translation.d.ts +15 -0
  90. package/dist/hooks/useToast.d.ts +44 -0
  91. package/dist/index.cjs.js +70 -0
  92. package/dist/index.d.ts +20 -0
  93. package/dist/index.es.js +16379 -0
  94. package/dist/lib/i18n.d.ts +4 -0
  95. package/dist/types/provider.d.ts +108 -0
  96. package/dist/ui.css +1 -0
  97. package/dist/utils/cn.d.ts +1 -0
  98. package/dist/utils/datetime-helpers.d.ts +137 -0
  99. package/dist/utils/index.d.ts +5 -0
  100. package/dist/utils/theme-loader.d.ts +101 -0
  101. package/dist/utils/tweak.d.ts +18 -0
  102. package/package.json +118 -0
  103. package/src/styles/carousel.css +687 -0
  104. package/src/styles/code-highlight.css +232 -0
  105. package/src/styles/datepicker.css +420 -0
  106. package/src/styles/globals.css +84 -0
  107. package/src/styles/prism.css +261 -0
  108. package/src/styles/themes/forest.css +55 -0
  109. package/src/styles/themes/index.css +7 -0
  110. package/src/styles/themes/monochrome.css +55 -0
  111. package/src/styles/themes/perpetuity.css +55 -0
  112. package/src/styles/themes/sunset.css +55 -0
  113. package/src/styles/themes/twilight.css +55 -0
@@ -0,0 +1,70 @@
1
+ "use strict";var Mi=Object.create;var ns=Object.defineProperty;var Ri=Object.getOwnPropertyDescriptor;var Ai=Object.getOwnPropertyNames;var Fi=Object.getPrototypeOf,$i=Object.prototype.hasOwnProperty;var Ii=(t,a,r,s)=>{if(a&&typeof a=="object"||typeof a=="function")for(let n of Ai(a))!$i.call(t,n)&&n!==r&&ns(t,n,{get:()=>a[n],enumerable:!(s=Ri(a,n))||s.enumerable});return t};var Sa=(t,a,r)=>(r=t!=null?Mi(Fi(t)):{},Ii(a||!t||!t.__esModule?ns(r,"default",{value:t,enumerable:!0}):r,t));Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),C=require("react"),Li=require("@radix-ui/react-accordion"),T=require("lucide-react"),Is=require("clsx"),Oi=require("tailwind-merge"),Pe=require("class-variance-authority"),_i=require("@radix-ui/react-alert-dialog"),zi=require("@radix-ui/react-aspect-ratio"),Vi=require("@radix-ui/react-avatar"),Ma=require("@radix-ui/react-slot"),Wi=require("react-day-picker"),Hi=require("@radix-ui/react-checkbox"),D=require("date-fns"),qi=require("@radix-ui/react-collapsible"),Ie=require("cmdk"),Ui=require("@radix-ui/react-dialog"),Bi=require("@radix-ui/react-context-menu"),Gi=require("@radix-ui/react-dropdown-menu"),Xi=require("@radix-ui/react-label"),Yi=require("@radix-ui/react-hover-card"),Ji=require("@radix-ui/react-select"),Ya=require("react-dom"),Ki=require("@radix-ui/react-menubar"),Zi=require("@radix-ui/react-navigation-menu"),Qi=require("@radix-ui/react-popover"),el=require("@radix-ui/react-progress"),tl=require("@radix-ui/react-radio-group"),al=require("@radix-ui/react-scroll-area"),rl=require("@radix-ui/react-separator"),sl=require("@radix-ui/react-slider"),nl=require("@radix-ui/react-switch"),ol=require("@radix-ui/react-tabs"),il=require("@radix-ui/react-toast"),ll=require("@radix-ui/react-toggle"),dl=require("@radix-ui/react-tooltip"),ft=require("react-datepicker"),et=require("react-i18next"),lt=require("i18next"),Ee=require("@tanstack/react-table"),cl=require("@tanstack/react-virtual");function he(t){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const r in t)if(r!=="default"){const s=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(a,r,s.get?s:{enumerable:!0,get:()=>t[r]})}}return a.default=t,Object.freeze(a)}const i=he(C),Dt=he(Li),Fe=he(_i),ul=he(zi),zt=he(Vi),Ja=he(Hi),or=he(qi),fe=he(Ui),be=he(Bi),xe=he(Gi),Ls=he(Xi),Ra=he(Yi),Ce=he(Ji),ue=he(Ki),Le=he(Zi),ra=he(Qi),Ka=he(el),sa=he(tl),Et=he(al),Os=he(rl),Yt=he(sl),Za=he(nl),Rt=he(ol),qe=he(il),_s=he(ll),fa=he(dl);function Ea(...t){return Oi.twMerge(Is.clsx(...t))}Ea.variants=function(t){const a={variants:t.variants??{},defaultVariants:t.defaultVariants},r=Pe.cva(t.base??"",a);return s=>{const{class:n,className:o,...l}=s??{};return Ea(r(l),n,o)}};const w=(...t)=>Ea(t),ml=Dt.Root,zs=i.forwardRef(({className:t,...a},r)=>e.jsx(Dt.Item,{ref:r,className:w("border-b",t),...a}));zs.displayName="AccordionItem";const Vs=i.forwardRef(({className:t,children:a,...r},s)=>e.jsx(Dt.Header,{className:"flex",children:e.jsxs(Dt.Trigger,{ref:s,className:w("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",t),...r,children:[a,e.jsx(T.ChevronDown,{className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));Vs.displayName=Dt.Trigger.displayName;const Ws=i.forwardRef(({className:t,children:a,...r},s)=>e.jsx(Dt.Content,{ref:s,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...r,children:e.jsx("div",{className:w("pb-4 pt-0",t),children:a})}));Ws.displayName=Dt.Content.displayName;const Hs=Fe.Root,fl=Fe.Trigger,qs=Fe.Portal,ir=i.forwardRef(({className:t,...a},r)=>e.jsx(Fe.Overlay,{className:w("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...a,ref:r}));ir.displayName=Fe.Overlay.displayName;const lr=i.forwardRef(({className:t,...a},r)=>e.jsxs(qs,{children:[e.jsx(ir,{}),e.jsx(Fe.Content,{ref:r,className:w("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",t),...a})]}));lr.displayName=Fe.Content.displayName;const dr=({className:t,...a})=>e.jsx("div",{className:w("flex flex-col space-y-2 text-center sm:text-left",t),...a});dr.displayName="AlertDialogHeader";const cr=({className:t,...a})=>e.jsx("div",{className:w("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});cr.displayName="AlertDialogFooter";const ur=i.forwardRef(({className:t,...a},r)=>e.jsx(Fe.Title,{ref:r,className:w("text-lg font-semibold",t),...a}));ur.displayName=Fe.Title.displayName;const mr=i.forwardRef(({className:t,...a},r)=>e.jsx(Fe.Description,{ref:r,className:w("text-sm text-muted-foreground",t),...a}));mr.displayName=Fe.Description.displayName;const fr=i.forwardRef(({className:t,...a},r)=>e.jsx(Fe.Action,{ref:r,className:w("inline-flex h-10 items-center justify-center rounded-md bg-primary px-4 py-2 text-sm font-semibold text-primary-foreground ring-offset-background transition-colors hover:bg-primary/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",t),...a}));fr.displayName=Fe.Action.displayName;const hr=i.forwardRef(({className:t,...a},r)=>e.jsx(Fe.Cancel,{ref:r,className:w("mt-2 inline-flex h-10 items-center justify-center rounded-md border border-input bg-background px-4 py-2 text-sm font-semibold ring-offset-background transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 sm:mt-0",t),...a}));hr.displayName=Fe.Cancel.displayName;const hl=Pe.cva("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),Us=i.forwardRef(({className:t,variant:a,...r},s)=>e.jsx("div",{ref:s,role:"alert",className:w(hl({variant:a}),t),...r}));Us.displayName="Alert";const Bs=i.forwardRef(({className:t,...a},r)=>e.jsx("h5",{ref:r,className:w("mb-1 font-medium leading-none tracking-tight",t),...a}));Bs.displayName="AlertTitle";const Gs=i.forwardRef(({className:t,...a},r)=>e.jsx("div",{ref:r,className:w("text-sm [&_p]:leading-relaxed",t),...a}));Gs.displayName="AlertDescription";const pl=ul.Root,Xs=i.forwardRef(({className:t,...a},r)=>e.jsx(zt.Root,{ref:r,className:w("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",t),...a}));Xs.displayName=zt.Root.displayName;const Ys=i.forwardRef(({className:t,...a},r)=>e.jsx(zt.Image,{ref:r,className:w("aspect-square h-full w-full",t),...a}));Ys.displayName=zt.Image.displayName;const Js=i.forwardRef(({className:t,...a},r)=>e.jsx(zt.Fallback,{ref:r,className:w("flex h-full w-full items-center justify-center rounded-full bg-muted",t),...a}));Js.displayName=zt.Fallback.displayName;const Ks=Pe.cva("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function He({className:t,variant:a,...r}){return e.jsx("div",{className:w(Ks({variant:a}),t),...r})}const gl=Pe.cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),L=i.forwardRef(({className:t,variant:a,size:r,asChild:s=!1,...n},o)=>{const l=s?Ma.Slot:"button";return e.jsx(l,{className:w(gl({variant:a,size:r,className:t})),ref:o,...n})});L.displayName="Button";function pr({className:t,classNames:a,showOutsideDays:r=!0,...s}){return e.jsx(Wi.DayPicker,{showOutsideDays:r,className:w("p-4 bg-background border border-border rounded-lg shadow-sm",t),classNames:{months:"flex flex-col sm:flex-row space-y-4 sm:space-x-4 sm:space-y-0",month:"space-y-4",caption:"flex justify-center pt-1 relative items-center mb-4",caption_label:"text-lg font-semibold text-foreground",nav:"space-x-1 flex items-center",nav_button:w("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-all duration-200","h-8 w-8 bg-background border border-border hover:bg-accent hover:text-accent-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","disabled:pointer-events-none disabled:opacity-50"),nav_button_previous:"absolute left-1",nav_button_next:"absolute right-1",table:"w-full border-collapse space-y-1",head_row:"flex mb-2",head_cell:"text-muted-foreground rounded-md w-10 h-10 font-medium text-sm flex items-center justify-center",row:"flex w-full",cell:"h-10 w-10 text-center text-sm p-0 relative",day:w("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-all duration-200","h-10 w-10 p-0 font-normal cursor-pointer","hover:bg-accent hover:text-accent-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","disabled:pointer-events-none disabled:opacity-50"),day_range_end:"day-range-end",day_selected:w("bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground","focus:bg-primary focus:text-primary-foreground shadow-sm"),day_today:"bg-accent text-accent-foreground font-semibold",day_outside:"text-muted-foreground opacity-50 hover:opacity-70",day_disabled:"text-muted-foreground opacity-30 cursor-not-allowed",day_range_middle:"bg-accent/50 text-accent-foreground",day_hidden:"invisible",...a},components:{Chevron:({...n})=>n.orientation==="left"?e.jsx(T.ChevronLeft,{className:"h-4 w-4"}):e.jsx(T.ChevronRight,{className:"h-4 w-4"})},...s})}pr.displayName="Calendar";const Ve=i.forwardRef(({className:t,...a},r)=>e.jsx("div",{ref:r,className:w("rounded-xl border bg-card text-card-foreground shadow",t),...a}));Ve.displayName="Card";const Ke=i.forwardRef(({className:t,...a},r)=>e.jsx("div",{ref:r,className:w("flex flex-col space-y-1.5 p-6",t),...a}));Ke.displayName="CardHeader";const We=i.forwardRef(({className:t,...a},r)=>e.jsx("h3",{ref:r,className:w("font-semibold leading-none tracking-tight",t),...a}));We.displayName="CardTitle";const Pt=i.forwardRef(({className:t,...a},r)=>e.jsx("p",{ref:r,className:w("text-sm text-muted-foreground",t),...a}));Pt.displayName="CardDescription";const Ze=i.forwardRef(({className:t,...a},r)=>e.jsx("div",{ref:r,className:w("p-6 pt-0",t),...a}));Ze.displayName="CardContent";const Zs=i.forwardRef(({className:t,...a},r)=>e.jsx("div",{ref:r,className:w("flex items-center p-6 pt-0",t),...a}));Zs.displayName="CardFooter";const at=i.forwardRef(({className:t,...a},r)=>e.jsx(Ja.Root,{ref:r,className:w("peer h-4 w-4 shrink-0 rounded-sm border border-primary ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",t),...a,children:e.jsx(Ja.Indicator,{className:w("flex items-center justify-center text-current"),children:e.jsx(T.Check,{className:"h-4 w-4"})})}));at.displayName=Ja.Root.displayName;function je(t){return(a={})=>{const r=a.width?String(a.width):t.defaultWidth;return t.formats[r]||t.formats[t.defaultWidth]}}function K(t){return(a,r)=>{const s=r?.context?String(r.context):"standalone";let n;if(s==="formatting"&&t.formattingValues){const l=t.defaultFormattingWidth||t.defaultWidth,d=r?.width?String(r.width):l;n=t.formattingValues[d]||t.formattingValues[l]}else{const l=t.defaultWidth,d=r?.width?String(r.width):t.defaultWidth;n=t.values[d]||t.values[l]}const o=t.argumentCallback?t.argumentCallback(a):a;return n[o]}}function Z(t){return(a,r={})=>{const s=r.width,n=s&&t.matchPatterns[s]||t.matchPatterns[t.defaultMatchWidth],o=a.match(n);if(!o)return null;const l=o[0],d=s&&t.parsePatterns[s]||t.parsePatterns[t.defaultParseWidth],h=Array.isArray(d)?xl(d,f=>f.test(l)):bl(d,f=>f.test(l));let m;m=t.valueCallback?t.valueCallback(h):h,m=r.valueCallback?r.valueCallback(m):m;const p=a.slice(l.length);return{value:m,rest:p}}}function bl(t,a){for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&a(t[r]))return r}function xl(t,a){for(let r=0;r<t.length;r++)if(a(t[r]))return r}function yt(t){return(a,r={})=>{const s=a.match(t.matchPattern);if(!s)return null;const n=s[0],o=a.match(t.parsePattern);if(!o)return null;let l=t.valueCallback?t.valueCallback(o[0]):o[0];l=r.valueCallback?r.valueCallback(l):l;const d=a.slice(n.length);return{value:l,rest:d}}}const os=Symbol.for("constructDateFrom");function Qs(t,a){return typeof t=="function"?t(a):t&&typeof t=="object"&&os in t?t[os](a):t instanceof Date?new t.constructor(a):new Date(a)}function vl(t,...a){const r=Qs.bind(null,t||a.find(s=>typeof s=="object"));return a.map(r)}let yl={};function wl(){return yl}function jl(t,a){return Qs(a||t,t)}function is(t,a){const r=wl(),s=a?.weekStartsOn??a?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,n=jl(t,a?.in),o=n.getDay(),l=(o<s?7:0)+o-s;return n.setDate(n.getDate()-l),n.setHours(0,0,0,0),n}function Qa(t,a,r){const[s,n]=vl(r?.in,t,a);return+is(s,r)==+is(n,r)}const ls={lessThanXSeconds:{standalone:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"},withPreposition:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"}},xSeconds:{standalone:{one:"1 Sekunde",other:"{{count}} Sekunden"},withPreposition:{one:"1 Sekunde",other:"{{count}} Sekunden"}},halfAMinute:{standalone:"eine halbe Minute",withPreposition:"einer halben Minute"},lessThanXMinutes:{standalone:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"},withPreposition:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"}},xMinutes:{standalone:{one:"1 Minute",other:"{{count}} Minuten"},withPreposition:{one:"1 Minute",other:"{{count}} Minuten"}},aboutXHours:{standalone:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"},withPreposition:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"}},xHours:{standalone:{one:"1 Stunde",other:"{{count}} Stunden"},withPreposition:{one:"1 Stunde",other:"{{count}} Stunden"}},xDays:{standalone:{one:"1 Tag",other:"{{count}} Tage"},withPreposition:{one:"1 Tag",other:"{{count}} Tagen"}},aboutXWeeks:{standalone:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"},withPreposition:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"}},xWeeks:{standalone:{one:"1 Woche",other:"{{count}} Wochen"},withPreposition:{one:"1 Woche",other:"{{count}} Wochen"}},aboutXMonths:{standalone:{one:"etwa 1 Monat",other:"etwa {{count}} Monate"},withPreposition:{one:"etwa 1 Monat",other:"etwa {{count}} Monaten"}},xMonths:{standalone:{one:"1 Monat",other:"{{count}} Monate"},withPreposition:{one:"1 Monat",other:"{{count}} Monaten"}},aboutXYears:{standalone:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahre"},withPreposition:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahren"}},xYears:{standalone:{one:"1 Jahr",other:"{{count}} Jahre"},withPreposition:{one:"1 Jahr",other:"{{count}} Jahren"}},overXYears:{standalone:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahre"},withPreposition:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahren"}},almostXYears:{standalone:{one:"fast 1 Jahr",other:"fast {{count}} Jahre"},withPreposition:{one:"fast 1 Jahr",other:"fast {{count}} Jahren"}}},Nl=(t,a,r)=>{let s;const n=r?.addSuffix?ls[t].withPreposition:ls[t].standalone;return typeof n=="string"?s=n:a===1?s=n.one:s=n.other.replace("{{count}}",String(a)),r?.addSuffix?r.comparison&&r.comparison>0?"in "+s:"vor "+s:s},Sl={full:"EEEE, do MMMM y",long:"do MMMM y",medium:"do MMM y",short:"dd.MM.y"},kl={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},Cl={full:"{{date}} 'um' {{time}}",long:"{{date}} 'um' {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Tl={date:je({formats:Sl,defaultWidth:"full"}),time:je({formats:kl,defaultWidth:"full"}),dateTime:je({formats:Cl,defaultWidth:"full"})},El={lastWeek:"'letzten' eeee 'um' p",yesterday:"'gestern um' p",today:"'heute um' p",tomorrow:"'morgen um' p",nextWeek:"eeee 'um' p",other:"P"},Dl=(t,a,r,s)=>El[t],Pl={narrow:["v.Chr.","n.Chr."],abbreviated:["v.Chr.","n.Chr."],wide:["vor Christus","nach Christus"]},Ml={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1. Quartal","2. Quartal","3. Quartal","4. Quartal"]},er={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],wide:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"]},Rl={narrow:er.narrow,abbreviated:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],wide:er.wide},Al={narrow:["S","M","D","M","D","F","S"],short:["So","Mo","Di","Mi","Do","Fr","Sa"],abbreviated:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],wide:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"]},Fl={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachm.",evening:"Abend",night:"Nacht"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"}},$l={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachm.",evening:"abends",night:"nachts"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"}},Il=t=>Number(t)+".",Ll={ordinalNumber:Il,era:K({values:Pl,defaultWidth:"wide"}),quarter:K({values:Ml,defaultWidth:"wide",argumentCallback:t=>t-1}),month:K({values:er,formattingValues:Rl,defaultWidth:"wide"}),day:K({values:Al,defaultWidth:"wide"}),dayPeriod:K({values:Fl,defaultWidth:"wide",formattingValues:$l,defaultFormattingWidth:"wide"})},Ol=/^(\d+)(\.)?/i,_l=/\d+/i,zl={narrow:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,abbreviated:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,wide:/^(vor Christus|vor unserer Zeitrechnung|nach Christus|unserer Zeitrechnung)/i},Vl={any:[/^v/i,/^n/i]},Wl={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](\.)? Quartal/i},Hl={any:[/1/i,/2/i,/3/i,/4/i]},ql={narrow:/^[jfmasond]/i,abbreviated:/^(j[aä]n|feb|mär[z]?|apr|mai|jun[i]?|jul[i]?|aug|sep|okt|nov|dez)\.?/i,wide:/^(januar|februar|märz|april|mai|juni|juli|august|september|oktober|november|dezember)/i},Ul={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^j[aä]/i,/^f/i,/^mär/i,/^ap/i,/^mai/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Bl={narrow:/^[smdmf]/i,short:/^(so|mo|di|mi|do|fr|sa)/i,abbreviated:/^(son?|mon?|die?|mit?|don?|fre?|sam?)\.?/i,wide:/^(sonntag|montag|dienstag|mittwoch|donnerstag|freitag|samstag)/i},Gl={any:[/^so/i,/^mo/i,/^di/i,/^mi/i,/^do/i,/^f/i,/^sa/i]},Xl={narrow:/^(vm\.?|nm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,abbreviated:/^(vorm\.?|nachm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,wide:/^(vormittags|nachmittags|Mitternacht|Mittag|morgens|nachmittags|abends|nachts)/i},Yl={any:{am:/^v/i,pm:/^n/i,midnight:/^Mitte/i,noon:/^Mitta/i,morning:/morgens/i,afternoon:/nachmittags/i,evening:/abends/i,night:/nachts/i}},Jl={ordinalNumber:yt({matchPattern:Ol,parsePattern:_l,valueCallback:t=>parseInt(t)}),era:Z({matchPatterns:zl,defaultMatchWidth:"wide",parsePatterns:Vl,defaultParseWidth:"any"}),quarter:Z({matchPatterns:Wl,defaultMatchWidth:"wide",parsePatterns:Hl,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:ql,defaultMatchWidth:"wide",parsePatterns:Ul,defaultParseWidth:"any"}),day:Z({matchPatterns:Bl,defaultMatchWidth:"wide",parsePatterns:Gl,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:Xl,defaultMatchWidth:"wide",parsePatterns:Yl,defaultParseWidth:"any"})},en={code:"de",formatDistance:Nl,formatLong:Tl,formatRelative:Dl,localize:Ll,match:Jl,options:{weekStartsOn:1,firstWeekContainsDate:4}},Kl={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Zl=(t,a,r)=>{let s;const n=Kl[t];return typeof n=="string"?s=n:a===1?s=n.one:s=n.other.replace("{{count}}",a.toString()),r?.addSuffix?r.comparison&&r.comparison>0?"in "+s:s+" ago":s},Ql={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},ed=(t,a,r,s)=>Ql[t],td={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},ad={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},rd={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},sd={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},nd={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},od={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},id=(t,a)=>{const r=Number(t),s=r%100;if(s>20||s<10)switch(s%10){case 1:return r+"st";case 2:return r+"nd";case 3:return r+"rd"}return r+"th"},ld={ordinalNumber:id,era:K({values:td,defaultWidth:"wide"}),quarter:K({values:ad,defaultWidth:"wide",argumentCallback:t=>t-1}),month:K({values:rd,defaultWidth:"wide"}),day:K({values:sd,defaultWidth:"wide"}),dayPeriod:K({values:nd,defaultWidth:"wide",formattingValues:od,defaultFormattingWidth:"wide"})},dd=/^(\d+)(th|st|nd|rd)?/i,cd=/\d+/i,ud={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},md={any:[/^b/i,/^(a|c)/i]},fd={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},hd={any:[/1/i,/2/i,/3/i,/4/i]},pd={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},gd={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},bd={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},xd={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},vd={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},yd={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},wd={ordinalNumber:yt({matchPattern:dd,parsePattern:cd,valueCallback:t=>parseInt(t,10)}),era:Z({matchPatterns:ud,defaultMatchWidth:"wide",parsePatterns:md,defaultParseWidth:"any"}),quarter:Z({matchPatterns:fd,defaultMatchWidth:"wide",parsePatterns:hd,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:pd,defaultMatchWidth:"wide",parsePatterns:gd,defaultParseWidth:"any"}),day:Z({matchPatterns:bd,defaultMatchWidth:"wide",parsePatterns:xd,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:vd,defaultMatchWidth:"any",parsePatterns:yd,defaultParseWidth:"any"})},jd={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Nd={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Sd={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},kd={date:je({formats:jd,defaultWidth:"full"}),time:je({formats:Nd,defaultWidth:"full"}),dateTime:je({formats:Sd,defaultWidth:"full"})},tn={code:"en-US",formatDistance:Zl,formatLong:kd,formatRelative:ed,localize:ld,match:wd,options:{weekStartsOn:0,firstWeekContainsDate:1}},Cd={lessThanXSeconds:{one:"menos de un segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"medio minuto",lessThanXMinutes:{one:"menos de un minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"alrededor de 1 hora",other:"alrededor de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 día",other:"{{count}} días"},aboutXWeeks:{one:"alrededor de 1 semana",other:"alrededor de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"alrededor de 1 mes",other:"alrededor de {{count}} meses"},xMonths:{one:"1 mes",other:"{{count}} meses"},aboutXYears:{one:"alrededor de 1 año",other:"alrededor de {{count}} años"},xYears:{one:"1 año",other:"{{count}} años"},overXYears:{one:"más de 1 año",other:"más de {{count}} años"},almostXYears:{one:"casi 1 año",other:"casi {{count}} años"}},Td=(t,a,r)=>{let s;const n=Cd[t];return typeof n=="string"?s=n:a===1?s=n.one:s=n.other.replace("{{count}}",a.toString()),r?.addSuffix?r.comparison&&r.comparison>0?"en "+s:"hace "+s:s},Ed={full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/y"},Dd={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},Pd={full:"{{date}} 'a las' {{time}}",long:"{{date}} 'a las' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Md={date:je({formats:Ed,defaultWidth:"full"}),time:je({formats:Dd,defaultWidth:"full"}),dateTime:je({formats:Pd,defaultWidth:"full"})},Rd={lastWeek:"'el' eeee 'pasado a la' p",yesterday:"'ayer a la' p",today:"'hoy a la' p",tomorrow:"'mañana a la' p",nextWeek:"eeee 'a la' p",other:"P"},Ad={lastWeek:"'el' eeee 'pasado a las' p",yesterday:"'ayer a las' p",today:"'hoy a las' p",tomorrow:"'mañana a las' p",nextWeek:"eeee 'a las' p",other:"P"},Fd=(t,a,r,s)=>a.getHours()!==1?Ad[t]:Rd[t],$d={narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","después de cristo"]},Id={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},Ld={narrow:["e","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],wide:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"]},Od={narrow:["d","l","m","m","j","v","s"],short:["do","lu","ma","mi","ju","vi","sá"],abbreviated:["dom","lun","mar","mié","jue","vie","sáb"],wide:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"]},_d={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"}},zd={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"}},Vd=(t,a)=>Number(t)+"º",Wd={ordinalNumber:Vd,era:K({values:$d,defaultWidth:"wide"}),quarter:K({values:Id,defaultWidth:"wide",argumentCallback:t=>Number(t)-1}),month:K({values:Ld,defaultWidth:"wide"}),day:K({values:Od,defaultWidth:"wide"}),dayPeriod:K({values:_d,defaultWidth:"wide",formattingValues:zd,defaultFormattingWidth:"wide"})},Hd=/^(\d+)(º)?/i,qd=/\d+/i,Ud={narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,wide:/^(antes de cristo|antes de la era com[uú]n|despu[eé]s de cristo|era com[uú]n)/i},Bd={any:[/^ac/i,/^dc/i],wide:[/^(antes de cristo|antes de la era com[uú]n)/i,/^(despu[eé]s de cristo|era com[uú]n)/i]},Gd={narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},Xd={any:[/1/i,/2/i,/3/i,/4/i]},Yd={narrow:/^[efmajsond]/i,abbreviated:/^(ene|feb|mar|abr|may|jun|jul|ago|sep|oct|nov|dic)/i,wide:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i},Jd={narrow:[/^e/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^en/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i]},Kd={narrow:/^[dlmjvs]/i,short:/^(do|lu|ma|mi|ju|vi|s[áa])/i,abbreviated:/^(dom|lun|mar|mi[ée]|jue|vie|s[áa]b)/i,wide:/^(domingo|lunes|martes|mi[ée]rcoles|jueves|viernes|s[áa]bado)/i},Zd={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^do/i,/^lu/i,/^ma/i,/^mi/i,/^ju/i,/^vi/i,/^sa/i]},Qd={narrow:/^(a|p|mn|md|(de la|a las) (mañana|tarde|noche))/i,any:/^([ap]\.?\s?m\.?|medianoche|mediodia|(de la|a las) (mañana|tarde|noche))/i},ec={any:{am:/^a/i,pm:/^p/i,midnight:/^mn/i,noon:/^md/i,morning:/mañana/i,afternoon:/tarde/i,evening:/tarde/i,night:/noche/i}},tc={ordinalNumber:yt({matchPattern:Hd,parsePattern:qd,valueCallback:function(t){return parseInt(t,10)}}),era:Z({matchPatterns:Ud,defaultMatchWidth:"wide",parsePatterns:Bd,defaultParseWidth:"any"}),quarter:Z({matchPatterns:Gd,defaultMatchWidth:"wide",parsePatterns:Xd,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:Yd,defaultMatchWidth:"wide",parsePatterns:Jd,defaultParseWidth:"any"}),day:Z({matchPatterns:Kd,defaultMatchWidth:"wide",parsePatterns:Zd,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:Qd,defaultMatchWidth:"any",parsePatterns:ec,defaultParseWidth:"any"})},an={code:"es",formatDistance:Td,formatLong:Md,formatRelative:Fd,localize:Wd,match:tc,options:{weekStartsOn:1,firstWeekContainsDate:1}},ac={lessThanXSeconds:{one:"moins d’une seconde",other:"moins de {{count}} secondes"},xSeconds:{one:"1 seconde",other:"{{count}} secondes"},halfAMinute:"30 secondes",lessThanXMinutes:{one:"moins d’une minute",other:"moins de {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"environ 1 heure",other:"environ {{count}} heures"},xHours:{one:"1 heure",other:"{{count}} heures"},xDays:{one:"1 jour",other:"{{count}} jours"},aboutXWeeks:{one:"environ 1 semaine",other:"environ {{count}} semaines"},xWeeks:{one:"1 semaine",other:"{{count}} semaines"},aboutXMonths:{one:"environ 1 mois",other:"environ {{count}} mois"},xMonths:{one:"1 mois",other:"{{count}} mois"},aboutXYears:{one:"environ 1 an",other:"environ {{count}} ans"},xYears:{one:"1 an",other:"{{count}} ans"},overXYears:{one:"plus d’un an",other:"plus de {{count}} ans"},almostXYears:{one:"presqu’un an",other:"presque {{count}} ans"}},rc=(t,a,r)=>{let s;const n=ac[t];return typeof n=="string"?s=n:a===1?s=n.one:s=n.other.replace("{{count}}",String(a)),r?.addSuffix?r.comparison&&r.comparison>0?"dans "+s:"il y a "+s:s},sc={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},nc={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},oc={full:"{{date}} 'à' {{time}}",long:"{{date}} 'à' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},ic={date:je({formats:sc,defaultWidth:"full"}),time:je({formats:nc,defaultWidth:"full"}),dateTime:je({formats:oc,defaultWidth:"full"})},lc={lastWeek:"eeee 'dernier à' p",yesterday:"'hier à' p",today:"'aujourd’hui à' p",tomorrow:"'demain à' p'",nextWeek:"eeee 'prochain à' p",other:"P"},dc=(t,a,r,s)=>lc[t],cc={narrow:["av. J.-C","ap. J.-C"],abbreviated:["av. J.-C","ap. J.-C"],wide:["avant Jésus-Christ","après Jésus-Christ"]},uc={narrow:["T1","T2","T3","T4"],abbreviated:["1er trim.","2ème trim.","3ème trim.","4ème trim."],wide:["1er trimestre","2ème trimestre","3ème trimestre","4ème trimestre"]},mc={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],wide:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"]},fc={narrow:["D","L","M","M","J","V","S"],short:["di","lu","ma","me","je","ve","sa"],abbreviated:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],wide:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"]},hc={narrow:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"mat.",afternoon:"ap.m.",evening:"soir",night:"mat."},abbreviated:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"matin",afternoon:"après-midi",evening:"soir",night:"matin"},wide:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"du matin",afternoon:"de l’après-midi",evening:"du soir",night:"du matin"}},pc=(t,a)=>{const r=Number(t),s=a?.unit;if(r===0)return"0";const n=["year","week","hour","minute","second"];let o;return r===1?o=s&&n.includes(s)?"ère":"er":o="ème",r+o},gc=["MMM","MMMM"],bc={preprocessor:(t,a)=>t.getDate()===1||!a.some(s=>s.isToken&&gc.includes(s.value))?a:a.map(s=>s.isToken&&s.value==="do"?{isToken:!0,value:"d"}:s),ordinalNumber:pc,era:K({values:cc,defaultWidth:"wide"}),quarter:K({values:uc,defaultWidth:"wide",argumentCallback:t=>t-1}),month:K({values:mc,defaultWidth:"wide"}),day:K({values:fc,defaultWidth:"wide"}),dayPeriod:K({values:hc,defaultWidth:"wide"})},xc=/^(\d+)(ième|ère|ème|er|e)?/i,vc=/\d+/i,yc={narrow:/^(av\.J\.C|ap\.J\.C|ap\.J\.-C)/i,abbreviated:/^(av\.J\.-C|av\.J-C|apr\.J\.-C|apr\.J-C|ap\.J-C)/i,wide:/^(avant Jésus-Christ|après Jésus-Christ)/i},wc={any:[/^av/i,/^ap/i]},jc={narrow:/^T?[1234]/i,abbreviated:/^[1234](er|ème|e)? trim\.?/i,wide:/^[1234](er|ème|e)? trimestre/i},Nc={any:[/1/i,/2/i,/3/i,/4/i]},Sc={narrow:/^[jfmasond]/i,abbreviated:/^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\.?/i,wide:/^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i},kc={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^av/i,/^ma/i,/^juin/i,/^juil/i,/^ao/i,/^s/i,/^o/i,/^n/i,/^d/i]},Cc={narrow:/^[lmjvsd]/i,short:/^(di|lu|ma|me|je|ve|sa)/i,abbreviated:/^(dim|lun|mar|mer|jeu|ven|sam)\.?/i,wide:/^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i},Tc={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^di/i,/^lu/i,/^ma/i,/^me/i,/^je/i,/^ve/i,/^sa/i]},Ec={narrow:/^(a|p|minuit|midi|mat\.?|ap\.?m\.?|soir|nuit)/i,any:/^([ap]\.?\s?m\.?|du matin|de l'après[-\s]midi|du soir|de la nuit)/i},Dc={any:{am:/^a/i,pm:/^p/i,midnight:/^min/i,noon:/^mid/i,morning:/mat/i,afternoon:/ap/i,evening:/soir/i,night:/nuit/i}},Pc={ordinalNumber:yt({matchPattern:xc,parsePattern:vc,valueCallback:t=>parseInt(t)}),era:Z({matchPatterns:yc,defaultMatchWidth:"wide",parsePatterns:wc,defaultParseWidth:"any"}),quarter:Z({matchPatterns:jc,defaultMatchWidth:"wide",parsePatterns:Nc,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:Sc,defaultMatchWidth:"wide",parsePatterns:kc,defaultParseWidth:"any"}),day:Z({matchPatterns:Cc,defaultMatchWidth:"wide",parsePatterns:Tc,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:Ec,defaultMatchWidth:"any",parsePatterns:Dc,defaultParseWidth:"any"})},Ot={code:"fr",formatDistance:rc,formatLong:ic,formatRelative:dc,localize:bc,match:Pc,options:{weekStartsOn:1,firstWeekContainsDate:4}},Mc={lessThanXSeconds:{one:"meno di un secondo",other:"meno di {{count}} secondi"},xSeconds:{one:"un secondo",other:"{{count}} secondi"},halfAMinute:"alcuni secondi",lessThanXMinutes:{one:"meno di un minuto",other:"meno di {{count}} minuti"},xMinutes:{one:"un minuto",other:"{{count}} minuti"},aboutXHours:{one:"circa un'ora",other:"circa {{count}} ore"},xHours:{one:"un'ora",other:"{{count}} ore"},xDays:{one:"un giorno",other:"{{count}} giorni"},aboutXWeeks:{one:"circa una settimana",other:"circa {{count}} settimane"},xWeeks:{one:"una settimana",other:"{{count}} settimane"},aboutXMonths:{one:"circa un mese",other:"circa {{count}} mesi"},xMonths:{one:"un mese",other:"{{count}} mesi"},aboutXYears:{one:"circa un anno",other:"circa {{count}} anni"},xYears:{one:"un anno",other:"{{count}} anni"},overXYears:{one:"più di un anno",other:"più di {{count}} anni"},almostXYears:{one:"quasi un anno",other:"quasi {{count}} anni"}},Rc=(t,a,r)=>{let s;const n=Mc[t];return typeof n=="string"?s=n:a===1?s=n.one:s=n.other.replace("{{count}}",a.toString()),r?.addSuffix?r.comparison&&r.comparison>0?"tra "+s:s+" fa":s},Ac={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},Fc={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},$c={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Ic={date:je({formats:Ac,defaultWidth:"full"}),time:je({formats:Fc,defaultWidth:"full"}),dateTime:je({formats:$c,defaultWidth:"full"})},gr=["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"];function Lc(t){switch(t){case 0:return"'domenica scorsa alle' p";default:return"'"+gr[t]+" scorso alle' p"}}function ds(t){return"'"+gr[t]+" alle' p"}function Oc(t){switch(t){case 0:return"'domenica prossima alle' p";default:return"'"+gr[t]+" prossimo alle' p"}}const _c={lastWeek:(t,a,r)=>{const s=t.getDay();return Qa(t,a,r)?ds(s):Lc(s)},yesterday:"'ieri alle' p",today:"'oggi alle' p",tomorrow:"'domani alle' p",nextWeek:(t,a,r)=>{const s=t.getDay();return Qa(t,a,r)?ds(s):Oc(s)},other:"P"},zc=(t,a,r,s)=>{const n=_c[t];return typeof n=="function"?n(a,r,s):n},Vc={narrow:["aC","dC"],abbreviated:["a.C.","d.C."],wide:["avanti Cristo","dopo Cristo"]},Wc={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},Hc={narrow:["G","F","M","A","M","G","L","A","S","O","N","D"],abbreviated:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],wide:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"]},qc={narrow:["D","L","M","M","G","V","S"],short:["dom","lun","mar","mer","gio","ven","sab"],abbreviated:["dom","lun","mar","mer","gio","ven","sab"],wide:["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"]},Uc={narrow:{am:"m.",pm:"p.",midnight:"mezzanotte",noon:"mezzogiorno",morning:"mattina",afternoon:"pomeriggio",evening:"sera",night:"notte"},abbreviated:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"mattina",afternoon:"pomeriggio",evening:"sera",night:"notte"},wide:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"mattina",afternoon:"pomeriggio",evening:"sera",night:"notte"}},Bc={narrow:{am:"m.",pm:"p.",midnight:"mezzanotte",noon:"mezzogiorno",morning:"di mattina",afternoon:"del pomeriggio",evening:"di sera",night:"di notte"},abbreviated:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"di mattina",afternoon:"del pomeriggio",evening:"di sera",night:"di notte"},wide:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"di mattina",afternoon:"del pomeriggio",evening:"di sera",night:"di notte"}},Gc=(t,a)=>{const r=Number(t);return String(r)},Xc={ordinalNumber:Gc,era:K({values:Vc,defaultWidth:"wide"}),quarter:K({values:Wc,defaultWidth:"wide",argumentCallback:t=>t-1}),month:K({values:Hc,defaultWidth:"wide"}),day:K({values:qc,defaultWidth:"wide"}),dayPeriod:K({values:Uc,defaultWidth:"wide",formattingValues:Bc,defaultFormattingWidth:"wide"})},Yc=/^(\d+)(º)?/i,Jc=/\d+/i,Kc={narrow:/^(aC|dC)/i,abbreviated:/^(a\.?\s?C\.?|a\.?\s?e\.?\s?v\.?|d\.?\s?C\.?|e\.?\s?v\.?)/i,wide:/^(avanti Cristo|avanti Era Volgare|dopo Cristo|Era Volgare)/i},Zc={any:[/^a/i,/^(d|e)/i]},Qc={narrow:/^[1234]/i,abbreviated:/^t[1234]/i,wide:/^[1234](º)? trimestre/i},eu={any:[/1/i,/2/i,/3/i,/4/i]},tu={narrow:/^[gfmalsond]/i,abbreviated:/^(gen|feb|mar|apr|mag|giu|lug|ago|set|ott|nov|dic)/i,wide:/^(gennaio|febbraio|marzo|aprile|maggio|giugno|luglio|agosto|settembre|ottobre|novembre|dicembre)/i},au={narrow:[/^g/i,/^f/i,/^m/i,/^a/i,/^m/i,/^g/i,/^l/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ge/i,/^f/i,/^mar/i,/^ap/i,/^mag/i,/^gi/i,/^l/i,/^ag/i,/^s/i,/^o/i,/^n/i,/^d/i]},ru={narrow:/^[dlmgvs]/i,short:/^(do|lu|ma|me|gi|ve|sa)/i,abbreviated:/^(dom|lun|mar|mer|gio|ven|sab)/i,wide:/^(domenica|luned[i|ì]|marted[i|ì]|mercoled[i|ì]|gioved[i|ì]|venerd[i|ì]|sabato)/i},su={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^g/i,/^v/i,/^s/i],any:[/^d/i,/^l/i,/^ma/i,/^me/i,/^g/i,/^v/i,/^s/i]},nu={narrow:/^(a|m\.|p|mezzanotte|mezzogiorno|(di|del) (mattina|pomeriggio|sera|notte))/i,any:/^([ap]\.?\s?m\.?|mezzanotte|mezzogiorno|(di|del) (mattina|pomeriggio|sera|notte))/i},ou={any:{am:/^a/i,pm:/^p/i,midnight:/^mezza/i,noon:/^mezzo/i,morning:/mattina/i,afternoon:/pomeriggio/i,evening:/sera/i,night:/notte/i}},iu={ordinalNumber:yt({matchPattern:Yc,parsePattern:Jc,valueCallback:t=>parseInt(t,10)}),era:Z({matchPatterns:Kc,defaultMatchWidth:"wide",parsePatterns:Zc,defaultParseWidth:"any"}),quarter:Z({matchPatterns:Qc,defaultMatchWidth:"wide",parsePatterns:eu,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:tu,defaultMatchWidth:"wide",parsePatterns:au,defaultParseWidth:"any"}),day:Z({matchPatterns:ru,defaultMatchWidth:"wide",parsePatterns:su,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:nu,defaultMatchWidth:"any",parsePatterns:ou,defaultParseWidth:"any"})},rn={code:"it",formatDistance:Rc,formatLong:Ic,formatRelative:zc,localize:Xc,match:iu,options:{weekStartsOn:1,firstWeekContainsDate:4}},lu={lessThanXSeconds:{one:"1秒未満",other:"{{count}}秒未満",oneWithSuffix:"約1秒",otherWithSuffix:"約{{count}}秒"},xSeconds:{one:"1秒",other:"{{count}}秒"},halfAMinute:"30秒",lessThanXMinutes:{one:"1分未満",other:"{{count}}分未満",oneWithSuffix:"約1分",otherWithSuffix:"約{{count}}分"},xMinutes:{one:"1分",other:"{{count}}分"},aboutXHours:{one:"約1時間",other:"約{{count}}時間"},xHours:{one:"1時間",other:"{{count}}時間"},xDays:{one:"1日",other:"{{count}}日"},aboutXWeeks:{one:"約1週間",other:"約{{count}}週間"},xWeeks:{one:"1週間",other:"{{count}}週間"},aboutXMonths:{one:"約1か月",other:"約{{count}}か月"},xMonths:{one:"1か月",other:"{{count}}か月"},aboutXYears:{one:"約1年",other:"約{{count}}年"},xYears:{one:"1年",other:"{{count}}年"},overXYears:{one:"1年以上",other:"{{count}}年以上"},almostXYears:{one:"1年近く",other:"{{count}}年近く"}},du=(t,a,r)=>{r=r||{};let s;const n=lu[t];return typeof n=="string"?s=n:a===1?r.addSuffix&&n.oneWithSuffix?s=n.oneWithSuffix:s=n.one:r.addSuffix&&n.otherWithSuffix?s=n.otherWithSuffix.replace("{{count}}",String(a)):s=n.other.replace("{{count}}",String(a)),r.addSuffix?r.comparison&&r.comparison>0?s+"後":s+"前":s},cu={full:"y年M月d日EEEE",long:"y年M月d日",medium:"y/MM/dd",short:"y/MM/dd"},uu={full:"H時mm分ss秒 zzzz",long:"H:mm:ss z",medium:"H:mm:ss",short:"H:mm"},mu={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},fu={date:je({formats:cu,defaultWidth:"full"}),time:je({formats:uu,defaultWidth:"full"}),dateTime:je({formats:mu,defaultWidth:"full"})},hu={lastWeek:"先週のeeeeのp",yesterday:"昨日のp",today:"今日のp",tomorrow:"明日のp",nextWeek:"翌週のeeeeのp",other:"P"},pu=(t,a,r,s)=>hu[t],gu={narrow:["BC","AC"],abbreviated:["紀元前","西暦"],wide:["紀元前","西暦"]},bu={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["第1四半期","第2四半期","第3四半期","第4四半期"]},xu={narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"]},vu={narrow:["日","月","火","水","木","金","土"],short:["日","月","火","水","木","金","土"],abbreviated:["日","月","火","水","木","金","土"],wide:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"]},yu={narrow:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},abbreviated:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},wide:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"}},wu={narrow:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},abbreviated:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},wide:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"}},ju=(t,a)=>{const r=Number(t);switch(String(a?.unit)){case"year":return`${r}年`;case"quarter":return`第${r}四半期`;case"month":return`${r}月`;case"week":return`第${r}週`;case"date":return`${r}日`;case"hour":return`${r}時`;case"minute":return`${r}分`;case"second":return`${r}秒`;default:return`${r}`}},Nu={ordinalNumber:ju,era:K({values:gu,defaultWidth:"wide"}),quarter:K({values:bu,defaultWidth:"wide",argumentCallback:t=>Number(t)-1}),month:K({values:xu,defaultWidth:"wide"}),day:K({values:vu,defaultWidth:"wide"}),dayPeriod:K({values:yu,defaultWidth:"wide",formattingValues:wu,defaultFormattingWidth:"wide"})},Su=/^第?\d+(年|四半期|月|週|日|時|分|秒)?/i,ku=/\d+/i,Cu={narrow:/^(B\.?C\.?|A\.?D\.?)/i,abbreviated:/^(紀元[前後]|西暦)/i,wide:/^(紀元[前後]|西暦)/i},Tu={narrow:[/^B/i,/^A/i],any:[/^(紀元前)/i,/^(西暦|紀元後)/i]},Eu={narrow:/^[1234]/i,abbreviated:/^Q[1234]/i,wide:/^第[1234一二三四1234]四半期/i},Du={any:[/(1|一|1)/i,/(2|二|2)/i,/(3|三|3)/i,/(4|四|4)/i]},Pu={narrow:/^([123456789]|1[012])/,abbreviated:/^([123456789]|1[012])月/i,wide:/^([123456789]|1[012])月/i},Mu={any:[/^1\D/,/^2/,/^3/,/^4/,/^5/,/^6/,/^7/,/^8/,/^9/,/^10/,/^11/,/^12/]},Ru={narrow:/^[日月火水木金土]/,short:/^[日月火水木金土]/,abbreviated:/^[日月火水木金土]/,wide:/^[日月火水木金土]曜日/},Au={any:[/^日/,/^月/,/^火/,/^水/,/^木/,/^金/,/^土/]},Fu={any:/^(AM|PM|午前|午後|正午|深夜|真夜中|夜|朝)/i},$u={any:{am:/^(A|午前)/i,pm:/^(P|午後)/i,midnight:/^深夜|真夜中/i,noon:/^正午/i,morning:/^朝/i,afternoon:/^午後/i,evening:/^夜/i,night:/^深夜/i}},Iu={ordinalNumber:yt({matchPattern:Su,parsePattern:ku,valueCallback:function(t){return parseInt(t,10)}}),era:Z({matchPatterns:Cu,defaultMatchWidth:"wide",parsePatterns:Tu,defaultParseWidth:"any"}),quarter:Z({matchPatterns:Eu,defaultMatchWidth:"wide",parsePatterns:Du,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:Pu,defaultMatchWidth:"wide",parsePatterns:Mu,defaultParseWidth:"any"}),day:Z({matchPatterns:Ru,defaultMatchWidth:"wide",parsePatterns:Au,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:Fu,defaultMatchWidth:"any",parsePatterns:$u,defaultParseWidth:"any"})},sn={code:"ja",formatDistance:du,formatLong:fu,formatRelative:pu,localize:Nu,match:Iu,options:{weekStartsOn:0,firstWeekContainsDate:1}},Lu={lessThanXSeconds:{one:"menos de um segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"meio minuto",lessThanXMinutes:{one:"menos de um minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"aproximadamente 1 hora",other:"aproximadamente {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 dia",other:"{{count}} dias"},aboutXWeeks:{one:"aproximadamente 1 semana",other:"aproximadamente {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"aproximadamente 1 mês",other:"aproximadamente {{count}} meses"},xMonths:{one:"1 mês",other:"{{count}} meses"},aboutXYears:{one:"aproximadamente 1 ano",other:"aproximadamente {{count}} anos"},xYears:{one:"1 ano",other:"{{count}} anos"},overXYears:{one:"mais de 1 ano",other:"mais de {{count}} anos"},almostXYears:{one:"quase 1 ano",other:"quase {{count}} anos"}},Ou=(t,a,r)=>{let s;const n=Lu[t];return typeof n=="string"?s=n:a===1?s=n.one:s=n.other.replace("{{count}}",String(a)),r?.addSuffix?r.comparison&&r.comparison>0?"daqui a "+s:"há "+s:s},_u={full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d 'de' MMM 'de' y",short:"dd/MM/y"},zu={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},Vu={full:"{{date}} 'às' {{time}}",long:"{{date}} 'às' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Wu={date:je({formats:_u,defaultWidth:"full"}),time:je({formats:zu,defaultWidth:"full"}),dateTime:je({formats:Vu,defaultWidth:"full"})},Hu={lastWeek:t=>{const a=t.getDay();return"'"+(a===0||a===6?"último":"última")+"' eeee 'às' p"},yesterday:"'ontem às' p",today:"'hoje às' p",tomorrow:"'amanhã às' p",nextWeek:"eeee 'às' p",other:"P"},qu=(t,a,r,s)=>{const n=Hu[t];return typeof n=="function"?n(a):n},Uu={narrow:["aC","dC"],abbreviated:["a.C.","d.C."],wide:["antes de Cristo","depois de Cristo"]},Bu={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},Gu={narrow:["j","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],wide:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},Xu={narrow:["d","s","t","q","q","s","s"],short:["dom","seg","ter","qua","qui","sex","sáb"],abbreviated:["dom","seg","ter","qua","qui","sex","sáb"],wide:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},Yu={narrow:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"noite",night:"madrugada"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"noite",night:"madrugada"},wide:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"noite",night:"madrugada"}},Ju={narrow:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da noite",night:"da madrugada"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da noite",night:"da madrugada"},wide:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da noite",night:"da madrugada"}},Ku=(t,a)=>Number(t)+"º",Zu={ordinalNumber:Ku,era:K({values:Uu,defaultWidth:"wide"}),quarter:K({values:Bu,defaultWidth:"wide",argumentCallback:t=>t-1}),month:K({values:Gu,defaultWidth:"wide"}),day:K({values:Xu,defaultWidth:"wide"}),dayPeriod:K({values:Yu,defaultWidth:"wide",formattingValues:Ju,defaultFormattingWidth:"wide"})},Qu=/^(\d+)(º|ª)?/i,em=/\d+/i,tm={narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,wide:/^(antes de cristo|antes da era comum|depois de cristo|era comum)/i},am={any:[/^ac/i,/^dc/i],wide:[/^(antes de cristo|antes da era comum)/i,/^(depois de cristo|era comum)/i]},rm={narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º|ª)? trimestre/i},sm={any:[/1/i,/2/i,/3/i,/4/i]},nm={narrow:/^[jfmasond]/i,abbreviated:/^(jan|fev|mar|abr|mai|jun|jul|ago|set|out|nov|dez)/i,wide:/^(janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro)/i},om={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ab/i,/^mai/i,/^jun/i,/^jul/i,/^ag/i,/^s/i,/^o/i,/^n/i,/^d/i]},im={narrow:/^[dstq]/i,short:/^(dom|seg|ter|qua|qui|sex|s[áa]b)/i,abbreviated:/^(dom|seg|ter|qua|qui|sex|s[áa]b)/i,wide:/^(domingo|segunda-?\s?feira|terça-?\s?feira|quarta-?\s?feira|quinta-?\s?feira|sexta-?\s?feira|s[áa]bado)/i},lm={narrow:[/^d/i,/^s/i,/^t/i,/^q/i,/^q/i,/^s/i,/^s/i],any:[/^d/i,/^seg/i,/^t/i,/^qua/i,/^qui/i,/^sex/i,/^s[áa]/i]},dm={narrow:/^(a|p|meia-?\s?noite|meio-?\s?dia|(da) (manh[ãa]|tarde|noite|madrugada))/i,any:/^([ap]\.?\s?m\.?|meia-?\s?noite|meio-?\s?dia|(da) (manh[ãa]|tarde|noite|madrugada))/i},cm={any:{am:/^a/i,pm:/^p/i,midnight:/^meia/i,noon:/^meio/i,morning:/manh[ãa]/i,afternoon:/tarde/i,evening:/noite/i,night:/madrugada/i}},um={ordinalNumber:yt({matchPattern:Qu,parsePattern:em,valueCallback:t=>parseInt(t,10)}),era:Z({matchPatterns:tm,defaultMatchWidth:"wide",parsePatterns:am,defaultParseWidth:"any"}),quarter:Z({matchPatterns:rm,defaultMatchWidth:"wide",parsePatterns:sm,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:nm,defaultMatchWidth:"wide",parsePatterns:om,defaultParseWidth:"any"}),day:Z({matchPatterns:im,defaultMatchWidth:"wide",parsePatterns:lm,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:dm,defaultMatchWidth:"any",parsePatterns:cm,defaultParseWidth:"any"})},nn={code:"pt",formatDistance:Ou,formatLong:Wu,formatRelative:qu,localize:Zu,match:um,options:{weekStartsOn:1,firstWeekContainsDate:4}},mm={lessThanXSeconds:{one:"不到 1 秒",other:"不到 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分钟",lessThanXMinutes:{one:"不到 1 分钟",other:"不到 {{count}} 分钟"},xMinutes:{one:"1 分钟",other:"{{count}} 分钟"},xHours:{one:"1 小时",other:"{{count}} 小时"},aboutXHours:{one:"大约 1 小时",other:"大约 {{count}} 小时"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大约 1 个星期",other:"大约 {{count}} 个星期"},xWeeks:{one:"1 个星期",other:"{{count}} 个星期"},aboutXMonths:{one:"大约 1 个月",other:"大约 {{count}} 个月"},xMonths:{one:"1 个月",other:"{{count}} 个月"},aboutXYears:{one:"大约 1 年",other:"大约 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超过 1 年",other:"超过 {{count}} 年"},almostXYears:{one:"将近 1 年",other:"将近 {{count}} 年"}},fm=(t,a,r)=>{let s;const n=mm[t];return typeof n=="string"?s=n:a===1?s=n.one:s=n.other.replace("{{count}}",String(a)),r?.addSuffix?r.comparison&&r.comparison>0?s+"内":s+"前":s},hm={full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},pm={full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},gm={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},bm={date:je({formats:hm,defaultWidth:"full"}),time:je({formats:pm,defaultWidth:"full"}),dateTime:je({formats:gm,defaultWidth:"full"})};function cs(t,a,r){const s="eeee p";return Qa(t,a,r)?s:t.getTime()>a.getTime()?"'下个'"+s:"'上个'"+s}const xm={lastWeek:cs,yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:cs,other:"PP p"},vm=(t,a,r,s)=>{const n=xm[t];return typeof n=="function"?n(a,r,s):n},ym={narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},wm={narrow:["1","2","3","4"],abbreviated:["第一季","第二季","第三季","第四季"],wide:["第一季度","第二季度","第三季度","第四季度"]},jm={narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},Nm={narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["周日","周一","周二","周三","周四","周五","周六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},Sm={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},km={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},Cm=(t,a)=>{const r=Number(t);switch(a?.unit){case"date":return r.toString()+"日";case"hour":return r.toString()+"时";case"minute":return r.toString()+"分";case"second":return r.toString()+"秒";default:return"第 "+r.toString()}},Tm={ordinalNumber:Cm,era:K({values:ym,defaultWidth:"wide"}),quarter:K({values:wm,defaultWidth:"wide",argumentCallback:t=>t-1}),month:K({values:jm,defaultWidth:"wide"}),day:K({values:Nm,defaultWidth:"wide"}),dayPeriod:K({values:Sm,defaultWidth:"wide",formattingValues:km,defaultFormattingWidth:"wide"})},Em=/^(第\s*)?\d+(日|时|分|秒)?/i,Dm=/\d+/i,Pm={narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},Mm={any:[/^(前)/i,/^(公元)/i]},Rm={narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻钟/i},Am={any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},Fm={narrow:/^(一|二|三|四|五|六|七|八|九|十[二一])/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]|\d|1[12])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一])月/i},$m={narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^一|1/i,/^二|2/i,/^三|3/i,/^四|4/i,/^五|5/i,/^六|6/i,/^七|7/i,/^八|8/i,/^九|9/i,/^十(?!(一|二))|10/i,/^十一|11/i,/^十二|12/i]},Im={narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^周[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},Lm={any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},Om={any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨|)/i},_m={any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},zm={ordinalNumber:yt({matchPattern:Em,parsePattern:Dm,valueCallback:t=>parseInt(t,10)}),era:Z({matchPatterns:Pm,defaultMatchWidth:"wide",parsePatterns:Mm,defaultParseWidth:"any"}),quarter:Z({matchPatterns:Rm,defaultMatchWidth:"wide",parsePatterns:Am,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:Fm,defaultMatchWidth:"wide",parsePatterns:$m,defaultParseWidth:"any"}),day:Z({matchPatterns:Im,defaultMatchWidth:"wide",parsePatterns:Lm,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:Om,defaultMatchWidth:"any",parsePatterns:_m,defaultParseWidth:"any"})},on={code:"zh-CN",formatDistance:fm,formatLong:bm,formatRelative:vm,localize:Tm,match:zm,options:{weekStartsOn:1,firstWeekContainsDate:4}},Vm=(t=Ot)=>[{label:"Aujourd'hui",value:()=>new Date},{label:"Hier",value:()=>D.subDays(new Date,1)},{label:"Demain",value:()=>D.addDays(new Date,1)},{label:"Cette semaine",range:()=>({from:D.startOfWeek(new Date,{locale:t}),to:D.endOfWeek(new Date,{locale:t})})},{label:"Semaine dernière",range:()=>({from:D.startOfWeek(D.subWeeks(new Date,1),{locale:t}),to:D.endOfWeek(D.subWeeks(new Date,1),{locale:t})})},{label:"Ce mois",range:()=>({from:D.startOfMonth(new Date),to:D.endOfMonth(new Date)})},{label:"Mois dernier",range:()=>({from:D.startOfMonth(D.subMonths(new Date,1)),to:D.endOfMonth(D.subMonths(new Date,1))})},{label:"Ce trimestre",range:()=>({from:D.startOfQuarter(new Date),to:D.endOfQuarter(new Date)})},{label:"Cette année",range:()=>({from:D.startOfYear(new Date),to:D.endOfYear(new Date)})}],Wm=()=>[{label:"7 derniers jours",range:()=>({from:D.subDays(new Date,7),to:new Date})},{label:"30 derniers jours",range:()=>({from:D.subDays(new Date,30),to:new Date})},{label:"90 derniers jours",range:()=>({from:D.subDays(new Date,90),to:new Date})}],Hm=t=>t.map(a=>({label:`${a} prochains jours`,range:()=>({from:new Date,to:D.addDays(new Date,a)})})),qm=(t,a)=>{if(typeof a=="function"){const r=a();return"from"in r&&r.from&&r.to?{label:t,range:()=>({from:r.from,to:r.to})}:{label:t,value:a}}return"from"in a&&a.from&&a.to?{label:t,range:{from:a.from,to:a.to}}:{label:t,value:a}},Um=t=>D.isAfter(t,D.endOfDay(new Date)),ln=t=>D.isBefore(t,D.startOfDay(new Date)),Bm=t=>{const a=new Date;return t.getDate()===a.getDate()&&t.getMonth()===a.getMonth()&&t.getFullYear()===a.getFullYear()},br=t=>{const a=t.getDay();return a!==0&&a!==6},dn=t=>{const a=t.getDay();return a===0||a===6},cn=(t,a)=>a.some(r=>D.isEqual(D.startOfDay(r),D.startOfDay(t))),dt=(t,a,r)=>D.isWithinInterval(t,{start:a,end:r}),Gm=t=>a=>{const r=D.subYears(new Date,t);return D.isAfter(a,r)?`L'âge minimum est de ${t} ans`:!0},Xm=t=>a=>{const r=D.subYears(new Date,t);return D.isBefore(a,r)?`L'âge maximum est de ${t} ans`:!0},Ym=t=>ln(t)?"Cette date est expirée":!0,Jm=(t,a)=>({days:D.differenceInDays(a,t),weeks:D.differenceInWeeks(a,t),months:D.differenceInMonths(a,t)}),Km=(t,a="PPP",r=Ot)=>t.from?t.to?`${D.format(t.from,a,{locale:r})} - ${D.format(t.to,a,{locale:r})}`:D.format(t.from,a,{locale:r}):"",Zm=t=>[new Date(t,0,1),new Date(t,4,1),new Date(t,4,8),new Date(t,6,14),new Date(t,7,15),new Date(t,10,1),new Date(t,10,11),new Date(t,11,25)],xr=(t,a)=>{const r=[],s=D.startOfMonth(new Date(t,a)),n=D.endOfMonth(new Date(t,a));let o=s;for(;D.isBefore(o,n)||D.isEqual(o,n);)r.push(o),o=D.addDays(o,1);return r},Qm=(t,a)=>xr(t,a).filter(dn),ef=(t,a)=>xr(t,a).filter(br),tf=()=>t=>{const a=new Date,r=D.endOfMonth(t);if(D.isBefore(r,a))return"La carte est expirée";const s=D.addMonths(a,3);return D.isBefore(r,s)?"La carte expire bientôt":!0},af=t=>a=>{const r=D.addDays(new Date,t);return D.isBefore(a,r)?`La réservation doit être faite ${t} jours à l'avance minimum`:!0},rf=t=>a=>!a.from||!a.to?!0:D.differenceInDays(a.to,a.from)>t?`La période ne peut pas dépasser ${t} jours`:!0,sf=(t,a)=>D.isEqual(D.startOfDay(t),D.startOfDay(a)),nf=(t,a,r=[])=>{let s=0,n=D.startOfDay(t);const o=D.startOfDay(a);for(;D.isBefore(n,o)||D.isEqual(n,o);)br(n)&&!cn(n,r)&&s++,n=D.addDays(n,1);return s},of=t=>{const a=t||new Date().getFullYear();return[1,2,3,4].map(r=>{const s=D.startOfQuarter(new Date(a,(r-1)*3,1)),n=D.endOfQuarter(s);return{label:`T${r} ${a}`,range:()=>({from:s,to:n})}})},lf=(t,a=Ot)=>{const r=t||new Date().getFullYear();return Array.from({length:12},(s,n)=>{const o=D.startOfMonth(new Date(r,n,1)),l=D.endOfMonth(o);return{label:D.format(o,"MMMM yyyy",{locale:a}),range:()=>({from:o,to:l})}})},df=t=>t.getTime(),cf=t=>new Date(t),uf=t=>D.startOfDay(t),mf=(t,a)=>!t.from||!t.to||!a.from||!a.to?!1:D.isEqual(D.startOfDay(t.from),D.startOfDay(a.from))&&D.isEqual(D.startOfDay(t.to),D.startOfDay(a.to)),ff=(t,a)=>!t.from||!t.to||!a.from||!a.to||!(dt(t.from,a.from,a.to)||dt(t.to,a.from,a.to)||dt(a.from,t.from,t.to)||dt(a.to,t.from,t.to))?null:{from:D.isBefore(t.from,a.from)?t.from:a.from,to:D.isAfter(t.to,a.to)?t.to:a.to},hf=(t,a)=>!t.from||!t.to||!a.from||!a.to?!1:dt(t.from,a.from,a.to)||dt(t.to,a.from,a.to)||dt(a.from,t.from,t.to)||dt(a.to,t.from,t.to);class vr{constructor(a){this.loadedThemes=new Set,this.styleElements=new Map,this.config={baseUrl:a.baseUrl,cache:a.cache??!0,timeout:a.timeout??1e4,onError:a.onError??(r=>console.error("Theme loading error:",r)),onSuccess:a.onSuccess??(()=>{})}}async loadTheme(a){if(this.config.cache&&this.loadedThemes.has(a)){console.log(`Theme "${a}" already loaded from cache`),this.applyTheme(a);return}try{const r=new AbortController,s=setTimeout(()=>r.abort(),this.config.timeout),n=this.buildThemeUrl(a);console.log(`Loading theme from: ${n}`);const o=await fetch(n,{signal:r.signal,headers:{Accept:"text/css"}});if(clearTimeout(s),!o.ok)throw new Error(`Failed to load theme: ${o.status} ${o.statusText}`);const l=await o.text();if(!l.includes(`[data-theme="${a}"]`))throw new Error(`Invalid theme CSS: missing [data-theme="${a}"] selector`);this.injectThemeStyles(a,l),this.loadedThemes.add(a),this.applyTheme(a),this.config.onSuccess(a)}catch(r){const s=r instanceof Error?r:new Error(String(r));throw this.config.onError(s,a),s}}applyTheme(a){if(typeof document>"u")return;document.documentElement.setAttribute("data-theme",a);try{localStorage.setItem("theme",a)}catch(s){console.warn("Could not save theme to localStorage:",s)}console.log(`Applied theme: ${a}`)}getCurrentTheme(){return typeof document>"u"?null:document.documentElement.getAttribute("data-theme")}loadSavedTheme(){if(typeof window>"u")return null;try{return localStorage.getItem("theme")}catch(a){return console.warn("Could not load theme from localStorage:",a),null}}async preloadThemes(a){console.log(`Preloading ${a.length} themes...`),await Promise.allSettled(a.map(r=>this.loadTheme(r))),console.log(`Preloaded ${this.loadedThemes.size} themes`)}unloadTheme(a){const r=this.styleElements.get(a);r&&(r.remove(),this.styleElements.delete(a)),this.loadedThemes.delete(a),console.log(`Unloaded theme: ${a}`)}clearCache(){this.styleElements.forEach(a=>a.remove()),this.styleElements.clear(),this.loadedThemes.clear(),console.log("Theme cache cleared")}getLoadedThemes(){return Array.from(this.loadedThemes)}buildThemeUrl(a){return`${this.config.baseUrl.replace(/\/$/,"")}/${a}.css`}injectThemeStyles(a,r){if(typeof document>"u")return;const s=this.styleElements.get(a);s&&s.remove();const n=document.createElement("style");n.setAttribute("data-theme-name",a),n.textContent=r,document.head.appendChild(n),this.styleElements.set(a,n)}}let na=null;function pf(t){return na=new vr(t),na}function yr(){if(!na)throw new Error("ThemeLoader not initialized. Call initThemeLoader() first.");return na}async function gf(t){return yr().loadTheme(t)}function bf(t){yr().applyTheme(t)}function xf(t){if(typeof window>"u")return{loadTheme:async()=>{},applyTheme:()=>{},currentTheme:null,loadedThemes:[],isLoading:!1};const a=na||new vr({baseUrl:t?.baseUrl||"/themes",...t}),[r,s]=i.useState(!1),[n,o]=i.useState(a.getCurrentTheme());return{loadTheme:async h=>{s(!0);try{await a.loadTheme(h),o(h)}finally{s(!1)}},applyTheme:h=>{a.applyTheme(h),o(h)},currentTheme:n,loadedThemes:a.getLoadedThemes(),isLoading:r}}var us=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function vf(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Wa={exports:{}},ms;function yf(){return ms||(ms=1,(function(t){var a=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};/**
2
+ * Prism: Lightweight, robust, elegant syntax highlighting
3
+ *
4
+ * @license MIT <https://opensource.org/licenses/MIT>
5
+ * @author Lea Verou <https://lea.verou.me>
6
+ * @namespace
7
+ * @public
8
+ */var r=(function(s){var n=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,o=0,l={},d={manual:s.Prism&&s.Prism.manual,disableWorkerMessageHandler:s.Prism&&s.Prism.disableWorkerMessageHandler,util:{encode:function u(c){return c instanceof h?new h(c.type,u(c.content),c.alias):Array.isArray(c)?c.map(u):c.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/\u00a0/g," ")},type:function(u){return Object.prototype.toString.call(u).slice(8,-1)},objId:function(u){return u.__id||Object.defineProperty(u,"__id",{value:++o}),u.__id},clone:function u(c,g){g=g||{};var v,N;switch(d.util.type(c)){case"Object":if(N=d.util.objId(c),g[N])return g[N];v={},g[N]=v;for(var R in c)c.hasOwnProperty(R)&&(v[R]=u(c[R],g));return v;case"Array":return N=d.util.objId(c),g[N]?g[N]:(v=[],g[N]=v,c.forEach(function($,P){v[P]=u($,g)}),v);default:return c}},getLanguage:function(u){for(;u;){var c=n.exec(u.className);if(c)return c[1].toLowerCase();u=u.parentElement}return"none"},setLanguage:function(u,c){u.className=u.className.replace(RegExp(n,"gi"),""),u.classList.add("language-"+c)},currentScript:function(){if(typeof document>"u")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(v){var u=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(v.stack)||[])[1];if(u){var c=document.getElementsByTagName("script");for(var g in c)if(c[g].src==u)return c[g]}return null}},isActive:function(u,c,g){for(var v="no-"+c;u;){var N=u.classList;if(N.contains(c))return!0;if(N.contains(v))return!1;u=u.parentElement}return!!g}},languages:{plain:l,plaintext:l,text:l,txt:l,extend:function(u,c){var g=d.util.clone(d.languages[u]);for(var v in c)g[v]=c[v];return g},insertBefore:function(u,c,g,v){v=v||d.languages;var N=v[u],R={};for(var $ in N)if(N.hasOwnProperty($)){if($==c)for(var P in g)g.hasOwnProperty(P)&&(R[P]=g[P]);g.hasOwnProperty($)||(R[$]=N[$])}var E=v[u];return v[u]=R,d.languages.DFS(d.languages,function(M,O){O===E&&M!=u&&(this[M]=R)}),R},DFS:function u(c,g,v,N){N=N||{};var R=d.util.objId;for(var $ in c)if(c.hasOwnProperty($)){g.call(c,$,c[$],v||$);var P=c[$],E=d.util.type(P);E==="Object"&&!N[R(P)]?(N[R(P)]=!0,u(P,g,null,N)):E==="Array"&&!N[R(P)]&&(N[R(P)]=!0,u(P,g,$,N))}}},plugins:{},highlightAll:function(u,c){d.highlightAllUnder(document,u,c)},highlightAllUnder:function(u,c,g){var v={callback:g,container:u,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};d.hooks.run("before-highlightall",v),v.elements=Array.prototype.slice.apply(v.container.querySelectorAll(v.selector)),d.hooks.run("before-all-elements-highlight",v);for(var N=0,R;R=v.elements[N++];)d.highlightElement(R,c===!0,v.callback)},highlightElement:function(u,c,g){var v=d.util.getLanguage(u),N=d.languages[v];d.util.setLanguage(u,v);var R=u.parentElement;R&&R.nodeName.toLowerCase()==="pre"&&d.util.setLanguage(R,v);var $=u.textContent,P={element:u,language:v,grammar:N,code:$};function E(O){P.highlightedCode=O,d.hooks.run("before-insert",P),P.element.innerHTML=P.highlightedCode,d.hooks.run("after-highlight",P),d.hooks.run("complete",P),g&&g.call(P.element)}if(d.hooks.run("before-sanity-check",P),R=P.element.parentElement,R&&R.nodeName.toLowerCase()==="pre"&&!R.hasAttribute("tabindex")&&R.setAttribute("tabindex","0"),!P.code){d.hooks.run("complete",P),g&&g.call(P.element);return}if(d.hooks.run("before-highlight",P),!P.grammar){E(d.util.encode(P.code));return}if(c&&s.Worker){var M=new Worker(d.filename);M.onmessage=function(O){E(O.data)},M.postMessage(JSON.stringify({language:P.language,code:P.code,immediateClose:!0}))}else E(d.highlight(P.code,P.grammar,P.language))},highlight:function(u,c,g){var v={code:u,grammar:c,language:g};if(d.hooks.run("before-tokenize",v),!v.grammar)throw new Error('The language "'+v.language+'" has no grammar.');return v.tokens=d.tokenize(v.code,v.grammar),d.hooks.run("after-tokenize",v),h.stringify(d.util.encode(v.tokens),v.language)},tokenize:function(u,c){var g=c.rest;if(g){for(var v in g)c[v]=g[v];delete c.rest}var N=new f;return x(N,N.head,u),p(u,N,c,N.head,0),k(N)},hooks:{all:{},add:function(u,c){var g=d.hooks.all;g[u]=g[u]||[],g[u].push(c)},run:function(u,c){var g=d.hooks.all[u];if(!(!g||!g.length))for(var v=0,N;N=g[v++];)N(c)}},Token:h};s.Prism=d;function h(u,c,g,v){this.type=u,this.content=c,this.alias=g,this.length=(v||"").length|0}h.stringify=function u(c,g){if(typeof c=="string")return c;if(Array.isArray(c)){var v="";return c.forEach(function(E){v+=u(E,g)}),v}var N={type:c.type,content:u(c.content,g),tag:"span",classes:["token",c.type],attributes:{},language:g},R=c.alias;R&&(Array.isArray(R)?Array.prototype.push.apply(N.classes,R):N.classes.push(R)),d.hooks.run("wrap",N);var $="";for(var P in N.attributes)$+=" "+P+'="'+(N.attributes[P]||"").replace(/"/g,"&quot;")+'"';return"<"+N.tag+' class="'+N.classes.join(" ")+'"'+$+">"+N.content+"</"+N.tag+">"};function m(u,c,g,v){u.lastIndex=c;var N=u.exec(g);if(N&&v&&N[1]){var R=N[1].length;N.index+=R,N[0]=N[0].slice(R)}return N}function p(u,c,g,v,N,R){for(var $ in g)if(!(!g.hasOwnProperty($)||!g[$])){var P=g[$];P=Array.isArray(P)?P:[P];for(var E=0;E<P.length;++E){if(R&&R.cause==$+","+E)return;var M=P[E],O=M.inside,F=!!M.lookbehind,V=!!M.greedy,X=M.alias;if(V&&!M.pattern.global){var pe=M.pattern.toString().match(/[imsuy]*$/)[0];M.pattern=RegExp(M.pattern.source,pe+"g")}for(var se=M.pattern||M,G=v.next,U=N;G!==c.tail&&!(R&&U>=R.reach);U+=G.value.length,G=G.next){var z=G.value;if(c.length>u.length)return;if(!(z instanceof h)){var H=1,A;if(V){if(A=m(se,U,u,F),!A||A.index>=u.length)break;var Re=A.index,ce=A.index+A[0].length,ee=U;for(ee+=G.value.length;Re>=ee;)G=G.next,ee+=G.value.length;if(ee-=G.value.length,U=ee,G.value instanceof h)continue;for(var te=G;te!==c.tail&&(ee<ce||typeof te.value=="string");te=te.next)H++,ee+=te.value.length;H--,z=u.slice(U,ee),A.index-=U}else if(A=m(se,0,z,F),!A)continue;var Re=A.index,ve=A[0],Ne=z.slice(0,Re),ie=z.slice(Re+ve.length),Me=U+z.length;R&&Me>R.reach&&(R.reach=Me);var _=G.prev;Ne&&(_=x(c,_,Ne),U+=Ne.length),S(c,_,H);var I=new h($,O?d.tokenize(ve,O):ve,X,ve);if(G=x(c,_,I),ie&&x(c,G,ie),H>1){var Y={cause:$+","+E,reach:Me};p(u,c,g,G.prev,U,Y),R&&Y.reach>R.reach&&(R.reach=Y.reach)}}}}}}function f(){var u={value:null,prev:null,next:null},c={value:null,prev:u,next:null};u.next=c,this.head=u,this.tail=c,this.length=0}function x(u,c,g){var v=c.next,N={value:g,prev:c,next:v};return c.next=N,v.prev=N,u.length++,N}function S(u,c,g){for(var v=c.next,N=0;N<g&&v!==u.tail;N++)v=v.next;c.next=v,v.prev=c,u.length-=N}function k(u){for(var c=[],g=u.head.next;g!==u.tail;)c.push(g.value),g=g.next;return c}if(!s.document)return s.addEventListener&&(d.disableWorkerMessageHandler||s.addEventListener("message",function(u){var c=JSON.parse(u.data),g=c.language,v=c.code,N=c.immediateClose;s.postMessage(d.highlight(v,d.languages[g],g)),N&&s.close()},!1)),d;var j=d.util.currentScript();j&&(d.filename=j.src,j.hasAttribute("data-manual")&&(d.manual=!0));function y(){d.manual||d.highlightAll()}if(!d.manual){var b=document.readyState;b==="loading"||b==="interactive"&&j&&j.defer?document.addEventListener("DOMContentLoaded",y):window.requestAnimationFrame?window.requestAnimationFrame(y):window.setTimeout(y,16)}return d})(a);t.exports&&(t.exports=r),typeof us<"u"&&(us.Prism=r),r.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},r.languages.markup.tag.inside["attr-value"].inside.entity=r.languages.markup.entity,r.languages.markup.doctype.inside["internal-subset"].inside=r.languages.markup,r.hooks.add("wrap",function(s){s.type==="entity"&&(s.attributes.title=s.content.replace(/&amp;/,"&"))}),Object.defineProperty(r.languages.markup.tag,"addInlined",{value:function(n,o){var l={};l["language-"+o]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:r.languages[o]},l.cdata=/^<!\[CDATA\[|\]\]>$/i;var d={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:l}};d["language-"+o]={pattern:/[\s\S]+/,inside:r.languages[o]};var h={};h[n]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return n}),"i"),lookbehind:!0,greedy:!0,inside:d},r.languages.insertBefore("markup","cdata",h)}}),Object.defineProperty(r.languages.markup.tag,"addAttribute",{value:function(s,n){r.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+s+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[n,"language-"+n],inside:r.languages[n]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),r.languages.html=r.languages.markup,r.languages.mathml=r.languages.markup,r.languages.svg=r.languages.markup,r.languages.xml=r.languages.extend("markup",{}),r.languages.ssml=r.languages.xml,r.languages.atom=r.languages.xml,r.languages.rss=r.languages.xml,(function(s){var n=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;s.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+n.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+n.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+n.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+n.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:n,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},s.languages.css.atrule.inside.rest=s.languages.css;var o=s.languages.markup;o&&(o.tag.addInlined("style","css"),o.tag.addAttribute("style","css"))})(r),r.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},r.languages.javascript=r.languages.extend("clike",{"class-name":[r.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),r.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,r.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:r.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:r.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:r.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:r.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:r.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),r.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:r.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),r.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),r.languages.markup&&(r.languages.markup.tag.addInlined("script","javascript"),r.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),r.languages.js=r.languages.javascript,(function(){if(typeof r>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var s="Loading…",n=function(j,y){return"✖ Error "+j+" while fetching file: "+y},o="✖ Error: File does not exist or is empty",l={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},d="data-src-status",h="loading",m="loaded",p="failed",f="pre[data-src]:not(["+d+'="'+m+'"]):not(['+d+'="'+h+'"])';function x(j,y,b){var u=new XMLHttpRequest;u.open("GET",j,!0),u.onreadystatechange=function(){u.readyState==4&&(u.status<400&&u.responseText?y(u.responseText):u.status>=400?b(n(u.status,u.statusText)):b(o))},u.send(null)}function S(j){var y=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(j||"");if(y){var b=Number(y[1]),u=y[2],c=y[3];return u?c?[b,Number(c)]:[b,void 0]:[b,b]}}r.hooks.add("before-highlightall",function(j){j.selector+=", "+f}),r.hooks.add("before-sanity-check",function(j){var y=j.element;if(y.matches(f)){j.code="",y.setAttribute(d,h);var b=y.appendChild(document.createElement("CODE"));b.textContent=s;var u=y.getAttribute("data-src"),c=j.language;if(c==="none"){var g=(/\.(\w+)$/.exec(u)||[,"none"])[1];c=l[g]||g}r.util.setLanguage(b,c),r.util.setLanguage(y,c);var v=r.plugins.autoloader;v&&v.loadLanguages(c),x(u,function(N){y.setAttribute(d,m);var R=S(y.getAttribute("data-range"));if(R){var $=N.split(/\r\n?|\n/g),P=R[0],E=R[1]==null?$.length:R[1];P<0&&(P+=$.length),P=Math.max(0,Math.min(P-1,$.length)),E<0&&(E+=$.length),E=Math.max(0,Math.min(E,$.length)),N=$.slice(P,E).join(`
9
+ `),y.hasAttribute("data-start")||y.setAttribute("data-start",String(P+1))}b.textContent=N,r.highlightElement(b)},function(N){y.setAttribute(d,p),b.textContent=N})}}),r.plugins.fileHighlight={highlight:function(y){for(var b=(y||document).querySelectorAll(f),u=0,c;c=b[u++];)r.highlightElement(c)}};var k=!1;r.fileHighlight=function(){k||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),k=!0),r.plugins.fileHighlight.highlight.apply(this,arguments)}})()})(Wa)),Wa.exports}var wf=yf();const Ha=vf(wf);var fs={},hs;function jf(){return hs||(hs=1,(function(t){t.languages.typescript=t.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),t.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete t.languages.typescript.parameter,delete t.languages.typescript["literal-property"];var a=t.languages.extend("typescript",{});delete a["class-name"],t.languages.typescript["class-name"].inside=a,t.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:a}}}}),t.languages.ts=t.languages.typescript})(Prism)),fs}jf();Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));Prism.languages.js=Prism.languages.javascript;(function(t){var a=t.util.clone(t.languages.javascript),r=/(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source,s=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,n=/(?:\{<S>*\.{3}(?:[^{}]|<BRACES>)*\})/.source;function o(h,m){return h=h.replace(/<S>/g,function(){return r}).replace(/<BRACES>/g,function(){return s}).replace(/<SPREAD>/g,function(){return n}),RegExp(h,m)}n=o(n).source,t.languages.jsx=t.languages.extend("markup",a),t.languages.jsx.tag.pattern=o(/<\/?(?:[\w.:-]+(?:<S>+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|<BRACES>))?|<SPREAD>))*<S>*\/?)?>/.source),t.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,t.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,t.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,t.languages.jsx.tag.inside.comment=a.comment,t.languages.insertBefore("inside","attr-name",{spread:{pattern:o(/<SPREAD>/.source),inside:t.languages.jsx}},t.languages.jsx.tag),t.languages.insertBefore("inside","special-attr",{script:{pattern:o(/=<BRACES>/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:t.languages.jsx}}},t.languages.jsx.tag);var l=function(h){return h?typeof h=="string"?h:typeof h.content=="string"?h.content:h.content.map(l).join(""):""},d=function(h){for(var m=[],p=0;p<h.length;p++){var f=h[p],x=!1;if(typeof f!="string"&&(f.type==="tag"&&f.content[0]&&f.content[0].type==="tag"?f.content[0].content[0].content==="</"?m.length>0&&m[m.length-1].tagName===l(f.content[0].content[1])&&m.pop():f.content[f.content.length-1].content==="/>"||m.push({tagName:l(f.content[0].content[1]),openedBraces:0}):m.length>0&&f.type==="punctuation"&&f.content==="{"?m[m.length-1].openedBraces++:m.length>0&&m[m.length-1].openedBraces>0&&f.type==="punctuation"&&f.content==="}"?m[m.length-1].openedBraces--:x=!0),(x||typeof f=="string")&&m.length>0&&m[m.length-1].openedBraces===0){var S=l(f);p<h.length-1&&(typeof h[p+1]=="string"||h[p+1].type==="plain-text")&&(S+=l(h[p+1]),h.splice(p+1,1)),p>0&&(typeof h[p-1]=="string"||h[p-1].type==="plain-text")&&(S=l(h[p-1])+S,h.splice(p-1,1),p--),h[p]=new t.Token("plain-text",S,null,S)}f.content&&typeof f.content!="string"&&d(f.content)}};t.hooks.add("after-tokenize",function(h){h.language!=="jsx"&&h.language!=="tsx"||d(h.tokens)})})(Prism);(function(t){var a=t.util.clone(t.languages.typescript);t.languages.tsx=t.languages.extend("jsx",a),delete t.languages.tsx.parameter,delete t.languages.tsx["literal-property"];var r=t.languages.tsx.tag;r.pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+r.pattern.source+")",r.pattern.flags),r.lookbehind=!0})(Prism);(function(t){var a=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;t.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+a.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+a.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+a.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+a.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:a,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},t.languages.css.atrule.inside.rest=t.languages.css;var r=t.languages.markup;r&&(r.tag.addInlined("style","css"),r.tag.addAttribute("style","css"))})(Prism);var ps={},gs;function Nf(){return gs||(gs=1,Prism.languages.scss=Prism.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),Prism.languages.insertBefore("scss","atrule",{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),Prism.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),Prism.languages.insertBefore("scss","function",{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:"keyword"},placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),Prism.languages.scss.atrule.inside.rest=Prism.languages.scss),ps}Nf();Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}};Prism.languages.webmanifest=Prism.languages.json;(function(t){var a="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",r={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},s={bash:r,environment:{pattern:RegExp("\\$"+a),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+a),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};t.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+a),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:s},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:r}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:s},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:s.entity}}],environment:{pattern:RegExp("\\$?"+a),alias:"constant"},variable:s.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},r.inside=t.languages.bash;for(var n=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],o=s.variable[1].inside,l=0;l<n.length;l++)o[n[l]]=t.languages.bash[n[l]];t.languages.sh=t.languages.bash,t.languages.shell=t.languages.bash})(Prism);var bs={},xs;function Sf(){return xs||(xs=1,Prism.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},Prism.languages.python["string-interpolation"].inside.interpolation.inside.rest=Prism.languages.python,Prism.languages.py=Prism.languages.python),bs}Sf();var vs={},ys;function kf(){return ys||(ys=1,(function(t){var a=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,r=/(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source,s={pattern:RegExp(/(^|[^\w.])/.source+r+/[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};t.languages.java=t.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[s,{pattern:RegExp(/(^|[^\w.])/.source+r+/[A-Z]\w*(?=\s+\w+\s*[;,=()]|\s*(?:\[[\s,]*\]\s*)?::\s*new\b)/.source),lookbehind:!0,inside:s.inside},{pattern:RegExp(/(\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\s+)/.source+r+/[A-Z]\w*\b/.source),lookbehind:!0,inside:s.inside}],keyword:a,function:[t.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0},constant:/\b[A-Z][A-Z_\d]+\b/}),t.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),t.languages.insertBefore("java","class-name",{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:"punctuation"},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":s,keyword:a,punctuation:/[<>(),.:]/,operator:/[?&|]/}},import:[{pattern:RegExp(/(\bimport\s+)/.source+r+/(?:[A-Z]\w*|\*)(?=\s*;)/.source),lookbehind:!0,inside:{namespace:s.inside.namespace,punctuation:/\./,operator:/\*/,"class-name":/\w+/}},{pattern:RegExp(/(\bimport\s+static\s+)/.source+r+/(?:\w+|\*)(?=\s*;)/.source),lookbehind:!0,alias:"static",inside:{namespace:s.inside.namespace,static:/\b\w+$/,punctuation:/\./,operator:/\*/,"class-name":/\w+/}}],namespace:{pattern:RegExp(/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)(?!<keyword>)[a-z]\w*(?:\.[a-z]\w*)*\.?/.source.replace(/<keyword>/g,function(){return a.source})),lookbehind:!0,inside:{punctuation:/\./}}})})(Prism)),vs}kf();var ws={},js;function Cf(){return js||(js=1,(function(t){function a(U,z){return U.replace(/<<(\d+)>>/g,function(H,A){return"(?:"+z[+A]+")"})}function r(U,z,H){return RegExp(a(U,z),"")}function s(U,z){for(var H=0;H<z;H++)U=U.replace(/<<self>>/g,function(){return"(?:"+U+")"});return U.replace(/<<self>>/g,"[^\\s\\S]")}var n={type:"bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void",typeDeclaration:"class enum interface record struct",contextual:"add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)",other:"abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield"};function o(U){return"\\b(?:"+U.trim().replace(/ /g,"|")+")\\b"}var l=o(n.typeDeclaration),d=RegExp(o(n.type+" "+n.typeDeclaration+" "+n.contextual+" "+n.other)),h=o(n.typeDeclaration+" "+n.contextual+" "+n.other),m=o(n.type+" "+n.typeDeclaration+" "+n.other),p=s(/<(?:[^<>;=+\-*/%&|^]|<<self>>)*>/.source,2),f=s(/\((?:[^()]|<<self>>)*\)/.source,2),x=/@?\b[A-Za-z_]\w*\b/.source,S=a(/<<0>>(?:\s*<<1>>)?/.source,[x,p]),k=a(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source,[h,S]),j=/\[\s*(?:,\s*)*\]/.source,y=a(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source,[k,j]),b=a(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source,[p,f,j]),u=a(/\(<<0>>+(?:,<<0>>+)+\)/.source,[b]),c=a(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source,[u,k,j]),g={keyword:d,punctuation:/[<>()?,.:[\]]/},v=/'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source,N=/"(?:\\.|[^\\"\r\n])*"/.source,R=/@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;t.languages.csharp=t.languages.extend("clike",{string:[{pattern:r(/(^|[^$\\])<<0>>/.source,[R]),lookbehind:!0,greedy:!0},{pattern:r(/(^|[^@$\\])<<0>>/.source,[N]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:r(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source,[k]),lookbehind:!0,inside:g},{pattern:r(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source,[x,c]),lookbehind:!0,inside:g},{pattern:r(/(\busing\s+)<<0>>(?=\s*=)/.source,[x]),lookbehind:!0},{pattern:r(/(\b<<0>>\s+)<<1>>/.source,[l,S]),lookbehind:!0,inside:g},{pattern:r(/(\bcatch\s*\(\s*)<<0>>/.source,[k]),lookbehind:!0,inside:g},{pattern:r(/(\bwhere\s+)<<0>>/.source,[x]),lookbehind:!0},{pattern:r(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source,[y]),lookbehind:!0,inside:g},{pattern:r(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source,[c,m,x]),inside:g}],keyword:d,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),t.languages.insertBefore("csharp","number",{range:{pattern:/\.\./,alias:"operator"}}),t.languages.insertBefore("csharp","punctuation",{"named-parameter":{pattern:r(/([(,]\s*)<<0>>(?=\s*:)/.source,[x]),lookbehind:!0,alias:"punctuation"}}),t.languages.insertBefore("csharp","class-name",{namespace:{pattern:r(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source,[x]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:r(/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source,[f]),lookbehind:!0,alias:"class-name",inside:g},"return-type":{pattern:r(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source,[c,k]),inside:g,alias:"class-name"},"constructor-invocation":{pattern:r(/(\bnew\s+)<<0>>(?=\s*[[({])/.source,[c]),lookbehind:!0,inside:g,alias:"class-name"},"generic-method":{pattern:r(/<<0>>\s*<<1>>(?=\s*\()/.source,[x,p]),inside:{function:r(/^<<0>>/.source,[x]),generic:{pattern:RegExp(p),alias:"class-name",inside:g}}},"type-list":{pattern:r(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source,[l,S,x,c,d.source,f,/\bnew\s*\(\s*\)/.source]),lookbehind:!0,inside:{"record-arguments":{pattern:r(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source,[S,f]),lookbehind:!0,greedy:!0,inside:t.languages.csharp},keyword:d,"class-name":{pattern:RegExp(c),greedy:!0,inside:g},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}});var $=N+"|"+v,P=a(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source,[$]),E=s(a(/[^"'/()]|<<0>>|\(<<self>>*\)/.source,[P]),2),M=/\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source,O=a(/<<0>>(?:\s*\(<<1>>*\))?/.source,[k,E]);t.languages.insertBefore("csharp","class-name",{attribute:{pattern:r(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source,[M,O]),lookbehind:!0,greedy:!0,inside:{target:{pattern:r(/^<<0>>(?=\s*:)/.source,[M]),alias:"keyword"},"attribute-arguments":{pattern:r(/\(<<0>>*\)/.source,[E]),inside:t.languages.csharp},"class-name":{pattern:RegExp(k),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var F=/:[^}\r\n]+/.source,V=s(a(/[^"'/()]|<<0>>|\(<<self>>*\)/.source,[P]),2),X=a(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[V,F]),pe=s(a(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<<self>>*\)/.source,[$]),2),se=a(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[pe,F]);function G(U,z){return{interpolation:{pattern:r(/((?:^|[^{])(?:\{\{)*)<<0>>/.source,[U]),lookbehind:!0,inside:{"format-string":{pattern:r(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source,[z,F]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-csharp",inside:t.languages.csharp}}},string:/[\s\S]+/}}t.languages.insertBefore("csharp","string",{"interpolation-string":[{pattern:r(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source,[X]),lookbehind:!0,greedy:!0,inside:G(X,V)},{pattern:r(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source,[se]),lookbehind:!0,greedy:!0,inside:G(se,pe)}],char:{pattern:RegExp(v),greedy:!0}}),t.languages.dotnet=t.languages.cs=t.languages.csharp})(Prism)),ws}Cf();var Ns={},Ss;function Tf(){return Ss||(Ss=1,(function(t){var a=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,r=[{pattern:/\b(?:false|true)\b/i,alias:"boolean"},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],s=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,n=/<?=>|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,o=/[{}\[\](),:;]/;t.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"},comment:a,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:"class-name"},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:"function"},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:"type-casting",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:"type-declaration",greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:"type-declaration",greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:"class-name-fully-qualified",greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:"type-declaration",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-declaration"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:["class-name-fully-qualified","static-context"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-hint"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:["class-name-fully-qualified","return-type"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:r,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:s,operator:n,punctuation:o};var l={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:t.languages.php},d=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:"nowdoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:l}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:"backtick-quoted-string",greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:"single-quoted-string",greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:"double-quoted-string",greedy:!0,inside:{interpolation:l}}];t.languages.insertBefore("php","variable",{string:d,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:a,string:d,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:"class-name",greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:["class-name","class-name-fully-qualified"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:r,number:s,operator:n,punctuation:o}},delimiter:{pattern:/^#\[|\]$/,alias:"punctuation"}}}}),t.hooks.add("before-tokenize",function(h){if(/<\?/.test(h.code)){var m=/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g;t.languages["markup-templating"].buildPlaceholders(h,"php",m)}}),t.hooks.add("after-tokenize",function(h){t.languages["markup-templating"].tokenizePlaceholders(h,"php")})})(Prism)),Ns}Tf();var ks={},Cs;function Ef(){return Cs||(Cs=1,(function(t){t.languages.ruby=t.languages.extend("clike",{comment:{pattern:/#.*|^=begin\s[\s\S]*?^=end/m,greedy:!0},"class-name":{pattern:/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,operator:/\.{2,3}|&\.|===|<?=>|[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,punctuation:/[(){}[\].,;]/}),t.languages.insertBefore("ruby","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}});var a={pattern:/((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,lookbehind:!0,inside:{content:{pattern:/^(#\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:t.languages.ruby},delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"}}};delete t.languages.ruby.function;var r="(?:"+[/([^a-zA-Z0-9\s{(\[<=])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,/\((?:[^()\\]|\\[\s\S]|\((?:[^()\\]|\\[\s\S])*\))*\)/.source,/\{(?:[^{}\\]|\\[\s\S]|\{(?:[^{}\\]|\\[\s\S])*\})*\}/.source,/\[(?:[^\[\]\\]|\\[\s\S]|\[(?:[^\[\]\\]|\\[\s\S])*\])*\]/.source,/<(?:[^<>\\]|\\[\s\S]|<(?:[^<>\\]|\\[\s\S])*>)*>/.source].join("|")+")",s=/(?:"(?:\\.|[^"\\\r\n])*"|(?:\b[a-zA-Z_]\w*|[^\s\0-\x7F]+)[?!]?|\$.)/.source;t.languages.insertBefore("ruby","keyword",{"regex-literal":[{pattern:RegExp(/%r/.source+r+/[egimnosux]{0,6}/.source),greedy:!0,inside:{interpolation:a,regex:/[\s\S]+/}},{pattern:/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,lookbehind:!0,greedy:!0,inside:{interpolation:a,regex:/[\s\S]+/}}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:[{pattern:RegExp(/(^|[^:]):/.source+s),lookbehind:!0,greedy:!0},{pattern:RegExp(/([\r\n{(,][ \t]*)/.source+s+/(?=:(?!:))/.source),lookbehind:!0,greedy:!0}],"method-definition":{pattern:/(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,lookbehind:!0,inside:{function:/\b\w+$/,keyword:/^self\b/,"class-name":/^\w+/,punctuation:/\./}}}),t.languages.insertBefore("ruby","string",{"string-literal":[{pattern:RegExp(/%[qQiIwWs]?/.source+r),greedy:!0,inside:{interpolation:a,string:/[\s\S]+/}},{pattern:/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,greedy:!0,inside:{interpolation:a,string:/[\s\S]+/}},{pattern:/<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?/}},interpolation:a,string:/[\s\S]+/}},{pattern:/<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?'|'$/}},string:/[\s\S]+/}}],"command-literal":[{pattern:RegExp(/%x/.source+r),greedy:!0,inside:{interpolation:a,command:{pattern:/[\s\S]+/,alias:"string"}}},{pattern:/`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,greedy:!0,inside:{interpolation:a,command:{pattern:/[\s\S]+/,alias:"string"}}}]}),delete t.languages.ruby.string,t.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,constant:/\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/}),t.languages.rb=t.languages.ruby})(Prism)),ks}Ef();Prism.languages.go=Prism.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/});Prism.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}});delete Prism.languages.go["class-name"];var Ts={},Es;function Df(){return Es||(Es=1,(function(t){for(var a=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|<self>)*\*\//.source,r=0;r<2;r++)a=a.replace(/<self>/g,function(){return a});a=a.replace(/<self>/g,function(){return/[^\s\S]/.source}),t.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+a),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},t.languages.rust["closure-params"].inside.rest=t.languages.rust,t.languages.rust.attribute.inside.string=t.languages.rust.string})(Prism)),Ts}Df();Prism.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/};(function(t){var a=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function r(p){return p=p.replace(/<inner>/g,function(){return a}),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+p+")")}var s=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,n=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,function(){return s}),o=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;t.languages.markdown=t.languages.extend("markup",{}),t.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:t.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+n+o+"(?:"+n+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+n+o+")(?:"+n+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(s),inside:t.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+n+")"+o+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+n+"$"),inside:{"table-header":{pattern:RegExp(s),alias:"important",inside:t.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:r(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:r(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:r(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:r(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach(function(p){["url","bold","italic","strike","code-snippet"].forEach(function(f){p!==f&&(t.languages.markdown[p].inside.content.inside[f]=t.languages.markdown[f])})}),t.hooks.add("after-tokenize",function(p){if(p.language!=="markdown"&&p.language!=="md")return;function f(x){if(!(!x||typeof x=="string"))for(var S=0,k=x.length;S<k;S++){var j=x[S];if(j.type!=="code"){f(j.content);continue}var y=j.content[1],b=j.content[3];if(y&&b&&y.type==="code-language"&&b.type==="code-block"&&typeof y.content=="string"){var u=y.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp");u=(/[a-z][\w-]*/i.exec(u)||[""])[0].toLowerCase();var c="language-"+u;b.alias?typeof b.alias=="string"?b.alias=[b.alias,c]:b.alias.push(c):b.alias=[c]}}}f(p.tokens)}),t.hooks.add("wrap",function(p){if(p.type==="code-block"){for(var f="",x=0,S=p.classes.length;x<S;x++){var k=p.classes[x],j=/language-(.+)/.exec(k);if(j){f=j[1];break}}var y=t.languages[f];if(y)p.content=t.highlight(m(p.content),y,f);else if(f&&f!=="none"&&t.plugins.autoloader){var b="md-"+new Date().valueOf()+"-"+Math.floor(Math.random()*1e16);p.attributes.id=b,t.plugins.autoloader.loadLanguages(f,function(){var u=document.getElementById(b);u&&(u.innerHTML=t.highlight(u.textContent,t.languages[f],f))})}}});var l=RegExp(t.languages.markup.tag.pattern.source,"gi"),d={amp:"&",lt:"<",gt:">",quot:'"'},h=String.fromCodePoint||String.fromCharCode;function m(p){var f=p.replace(l,"");return f=f.replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,function(x,S){if(S=S.toLowerCase(),S[0]==="#"){var k;return S[1]==="x"?k=parseInt(S.slice(2),16):k=Number(S.slice(1)),h(k)}else{var j=d[S];return j||x}}),f}t.languages.md=t.languages.markdown})(Prism);(function(t){var a=/[*&][^\s[\]{},]+/,r=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,s="(?:"+r.source+"(?:[ ]+"+a.source+")?|"+a.source+"(?:[ ]+"+r.source+")?)",n=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),o=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function l(d,h){h=(h||"").replace(/m/g,"")+"m";var m=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,function(){return s}).replace(/<<value>>/g,function(){return d});return RegExp(m,h)}t.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,function(){return s})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,function(){return s}).replace(/<<key>>/g,function(){return"(?:"+n+"|"+o+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:l(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:l(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:l(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:l(o),lookbehind:!0,greedy:!0},number:{pattern:l(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:r,important:a,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},t.languages.yml=t.languages.yaml})(Prism);(function(t){var a=/\\[\r\n](?:\s|\\[\r\n]|#.*(?!.))*(?![\s#]|\\[\r\n])/.source,r=/(?:[ \t]+(?![ \t])(?:<SP_BS>)?|<SP_BS>)/.source.replace(/<SP_BS>/g,function(){return a}),s=/"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"|'(?:[^'\\\r\n]|\\(?:\r\n|[\s\S]))*'/.source,n=/--[\w-]+=(?:<STR>|(?!["'])(?:[^\s\\]|\\.)+)/.source.replace(/<STR>/g,function(){return s}),o={pattern:RegExp(s),greedy:!0},l={pattern:/(^[ \t]*)#.*/m,lookbehind:!0,greedy:!0};function d(h,m){return h=h.replace(/<OPT>/g,function(){return n}).replace(/<SP>/g,function(){return r}),RegExp(h,m)}t.languages.docker={instruction:{pattern:/(^[ \t]*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)(?:\\.|[^\r\n\\])*(?:\\$(?:\s|#.*$)*(?![\s#])(?:\\.|[^\r\n\\])*)*/im,lookbehind:!0,greedy:!0,inside:{options:{pattern:d(/(^(?:ONBUILD<SP>)?\w+<SP>)<OPT>(?:<SP><OPT>)*/.source,"i"),lookbehind:!0,greedy:!0,inside:{property:{pattern:/(^|\s)--[\w-]+/,lookbehind:!0},string:[o,{pattern:/(=)(?!["'])(?:[^\s\\]|\\.)+/,lookbehind:!0}],operator:/\\$/m,punctuation:/=/}},keyword:[{pattern:d(/(^(?:ONBUILD<SP>)?HEALTHCHECK<SP>(?:<OPT><SP>)*)(?:CMD|NONE)\b/.source,"i"),lookbehind:!0,greedy:!0},{pattern:d(/(^(?:ONBUILD<SP>)?FROM<SP>(?:<OPT><SP>)*(?!--)[^ \t\\]+<SP>)AS/.source,"i"),lookbehind:!0,greedy:!0},{pattern:d(/(^ONBUILD<SP>)\w+/.source,"i"),lookbehind:!0,greedy:!0},{pattern:/^\w+/,greedy:!0}],comment:l,string:o,variable:/\$(?:\w+|\{[^{}"'\\]*\})/,operator:/\\$/m}},comment:l},t.languages.dockerfile=t.languages.docker})(Prism);Prism.languages.git={comment:/^#.*/m,deleted:/^[-–].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/}},coord:/^@@.*@@$/m,"commit-sha1":/^commit \w{40}$/m};const Ds=Pe.cva("relative rounded font-mono",{variants:{variant:{inline:"bg-muted px-[0.3rem] py-[0.2rem] text-xs sm:text-sm",block:"block bg-muted overflow-x-auto"},size:{sm:"text-xs sm:text-sm",base:"text-sm sm:text-base",lg:"text-base sm:text-lg"}},defaultVariants:{variant:"inline",size:"base"}}),un=i.forwardRef(({className:t,variant:a,size:r,language:s,showLineNumbers:n=!1,maxHeight:o,copyable:l=!1,filename:d,theme:h="auto",children:m,...p},f)=>{const[x,S]=i.useState(!1),[k,j]=i.useState("");i.useRef(null),i.useEffect(()=>{if(a==="block"&&s&&m)try{const b=typeof m=="string"?m:String(m),u=Ha.highlight(b,Ha.languages[s]||Ha.languages.text,s);j(u)}catch(b){console.warn(`Failed to highlight code for language: ${s}`,b),j(String(m))}else j(String(m))},[s,m,a]);const y=async()=>{if(typeof m=="string")try{await navigator.clipboard.writeText(m),S(!0),setTimeout(()=>S(!1),2e3)}catch(b){console.error("Failed to copy code:",b)}};return a==="block"?e.jsxs("div",{className:"relative my-4 sm:my-6",children:[(d||l)&&e.jsxs("div",{className:"flex items-center justify-between bg-muted/50 px-3 sm:px-4 py-2 sm:py-3 rounded-t-lg border-b",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[d&&e.jsxs("div",{className:"flex items-center gap-1.5 text-xs sm:text-sm text-muted-foreground",children:[e.jsx(T.FileText,{className:"h-3 w-3 sm:h-4 sm:w-4"}),e.jsx("span",{className:"font-medium",children:d})]}),s&&!d&&e.jsx("div",{className:"text-xs sm:text-sm text-muted-foreground uppercase font-medium",children:s})]}),l&&e.jsx(L,{variant:"ghost",size:"sm",onClick:y,className:"h-6 w-6 sm:h-7 sm:w-7 p-0 hover:bg-muted-foreground/10",children:x?e.jsx(T.Check,{className:"h-3 w-3 sm:h-4 sm:w-4 text-green-600"}):e.jsx(T.Copy,{className:"h-3 w-3 sm:h-4 sm:w-4"})})]}),e.jsx("div",{className:w("waka-code relative",o&&"overflow-hidden"),style:{maxHeight:o?`${o}px`:void 0},children:e.jsxs("pre",{className:w(Ds({variant:a,size:r}),"p-3 sm:p-4 lg:p-6","text-xs sm:text-sm lg:text-base","leading-relaxed sm:leading-loose","whitespace-pre-wrap break-words","scrollbar-thin scrollbar-thumb-muted-foreground/20 scrollbar-track-transparent","hover:scrollbar-thumb-muted-foreground/30",o&&"overflow-y-auto",!d&&!l&&s&&"rounded-lg",d||l?"rounded-b-lg":"rounded-lg",t),children:[n&&e.jsx("div",{className:"absolute left-0 top-0 bottom-0 w-8 sm:w-10 lg:w-12 bg-muted/30 border-r border-border/50 flex flex-col text-xs sm:text-sm text-muted-foreground select-none",children:String(m).split(`
10
+ `).map((b,u)=>e.jsx("div",{className:"flex items-center justify-center h-5 sm:h-6 lg:h-7",children:u+1},u))}),e.jsx("code",{ref:f,className:w("block",n&&"ml-8 sm:ml-10 lg:ml-12",s&&"language-"+s),...p,dangerouslySetInnerHTML:a==="block"&&s?{__html:k}:void 0,children:a==="block"&&s?void 0:m})]})}),s&&!d&&!l&&e.jsx("div",{className:"absolute top-2 right-2 text-xs text-muted-foreground/70 bg-background/80 px-2 py-1 rounded uppercase font-medium",children:s})]}):e.jsx("code",{className:w(Ds({variant:a,size:r}),t),ref:f,...p,children:m})});un.displayName="Code";const Pf=or.Root,Mf=or.CollapsibleTrigger,Rf=or.CollapsibleContent,mn=fe.Root,Af=fe.Trigger,fn=fe.Portal,Ff=fe.Close,wr=i.forwardRef(({className:t,...a},r)=>e.jsx(fe.Overlay,{ref:r,className:w("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...a}));wr.displayName=fe.Overlay.displayName;const jr=i.forwardRef(({className:t,children:a,...r},s)=>e.jsxs(fn,{children:[e.jsx(wr,{}),e.jsxs(fe.Content,{ref:s,className:w("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",t),...r,children:[a,e.jsxs(fe.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[e.jsx(T.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));jr.displayName=fe.Content.displayName;const hn=({className:t,...a})=>e.jsx("div",{className:w("flex flex-col space-y-1.5 text-center sm:text-left",t),...a});hn.displayName="DialogHeader";const pn=({className:t,...a})=>e.jsx("div",{className:w("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});pn.displayName="DialogFooter";const gn=i.forwardRef(({className:t,...a},r)=>e.jsx(fe.Title,{ref:r,className:w("text-lg font-semibold leading-none tracking-tight",t),...a}));gn.displayName=fe.Title.displayName;const bn=i.forwardRef(({className:t,...a},r)=>e.jsx(fe.Description,{ref:r,className:w("text-sm text-muted-foreground",t),...a}));bn.displayName=fe.Description.displayName;const _t=i.forwardRef(({className:t,...a},r)=>e.jsx(Ie.Command,{ref:r,className:w("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",t),...a}));_t.displayName=Ie.Command.displayName;const $f=({children:t,...a})=>e.jsx(mn,{...a,children:e.jsx(jr,{className:"overflow-hidden p-0 shadow-lg",children:e.jsx(_t,{className:"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5",children:t})})}),oa=i.forwardRef(({className:t,...a},r)=>e.jsxs("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[e.jsx(T.Search,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),e.jsx(Ie.Command.Input,{ref:r,className:w("flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",t),...a})]}));oa.displayName=Ie.Command.Input.displayName;const Nr=i.forwardRef(({className:t,...a},r)=>e.jsx(Ie.Command.List,{ref:r,className:w("max-h-[300px] overflow-y-auto overflow-x-hidden",t),...a}));Nr.displayName=Ie.Command.List.displayName;const ia=i.forwardRef((t,a)=>e.jsx(Ie.Command.Empty,{ref:a,className:"py-6 text-center text-sm",...t}));ia.displayName=Ie.Command.Empty.displayName;const la=i.forwardRef(({className:t,...a},r)=>e.jsx(Ie.Command.Group,{ref:r,className:w("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",t),...a}));la.displayName=Ie.Command.Group.displayName;const xn=i.forwardRef(({className:t,...a},r)=>e.jsx(Ie.Command.Separator,{ref:r,className:w("-mx-1 h-px bg-border",t),...a}));xn.displayName=Ie.Command.Separator.displayName;const da=i.forwardRef(({className:t,...a},r)=>e.jsx(Ie.Command.Item,{ref:r,className:w("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...a}));da.displayName=Ie.Command.Item.displayName;const vn=({className:t,...a})=>e.jsx("span",{className:w("ml-auto text-xs tracking-widest text-muted-foreground",t),...a});vn.displayName="CommandShortcut";const yn=be.Root,wn=be.Trigger,If=be.Group,Lf=be.Portal,Of=be.Sub,_f=be.RadioGroup,jn=i.forwardRef(({className:t,inset:a,children:r,...s},n)=>e.jsxs(be.SubTrigger,{ref:n,className:w("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",a&&"pl-8",t),...s,children:[r,e.jsx(T.ChevronRight,{className:"ml-auto h-4 w-4"})]}));jn.displayName=be.SubTrigger.displayName;const Nn=i.forwardRef(({className:t,...a},r)=>e.jsx(be.SubContent,{ref:r,className:w("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...a}));Nn.displayName=be.SubContent.displayName;const Sr=i.forwardRef(({className:t,...a},r)=>e.jsx(be.Portal,{children:e.jsx(be.Content,{ref:r,className:w("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md animate-in fade-in-80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...a})}));Sr.displayName=be.Content.displayName;const it=i.forwardRef(({className:t,inset:a,...r},s)=>e.jsx(be.Item,{ref:s,className:w("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",a&&"pl-8",t),...r}));it.displayName=be.Item.displayName;const Sn=i.forwardRef(({className:t,children:a,checked:r,...s},n)=>e.jsxs(be.CheckboxItem,{ref:n,className:w("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),checked:r,...s,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(be.ItemIndicator,{children:e.jsx(T.Check,{className:"h-4 w-4"})})}),a]}));Sn.displayName=be.CheckboxItem.displayName;const kn=i.forwardRef(({className:t,children:a,...r},s)=>e.jsxs(be.RadioItem,{ref:s,className:w("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...r,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(be.ItemIndicator,{children:e.jsx(T.Circle,{className:"h-2 w-2 fill-current"})})}),a]}));kn.displayName=be.RadioItem.displayName;const Cn=i.forwardRef(({className:t,inset:a,...r},s)=>e.jsx(be.Label,{ref:s,className:w("px-2 py-1.5 text-sm font-semibold text-foreground",a&&"pl-8",t),...r}));Cn.displayName=be.Label.displayName;const Kt=i.forwardRef(({className:t,...a},r)=>e.jsx(be.Separator,{ref:r,className:w("-mx-1 my-1 h-px bg-border",t),...a}));Kt.displayName=be.Separator.displayName;const Tn=({className:t,...a})=>e.jsx("span",{className:w("ml-auto text-xs tracking-widest text-muted-foreground",t),...a});Tn.displayName="ContextMenuShortcut";const Zt=xe.Root,Qt=xe.Trigger,zf=xe.Group,Vf=xe.Portal,Wf=xe.Sub,Hf=xe.RadioGroup,En=i.forwardRef(({className:t,inset:a,children:r,...s},n)=>e.jsxs(xe.SubTrigger,{ref:n,className:w("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",a&&"pl-8",t),...s,children:[r,e.jsx(T.ChevronRight,{className:"ml-auto h-4 w-4"})]}));En.displayName=xe.SubTrigger.displayName;const Dn=i.forwardRef(({className:t,...a},r)=>e.jsx(xe.SubContent,{ref:r,className:w("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...a}));Dn.displayName=xe.SubContent.displayName;const It=i.forwardRef(({className:t,sideOffset:a=4,...r},s)=>e.jsx(xe.Portal,{children:e.jsx(xe.Content,{ref:s,sideOffset:a,className:w("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...r})}));It.displayName=xe.Content.displayName;const kr=i.forwardRef(({className:t,inset:a,...r},s)=>e.jsx(xe.Item,{ref:s,className:w("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",a&&"pl-8",t),...r}));kr.displayName=xe.Item.displayName;const Tt=i.forwardRef(({className:t,children:a,checked:r,...s},n)=>e.jsxs(xe.CheckboxItem,{ref:n,className:w("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),checked:r,...s,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(xe.ItemIndicator,{children:e.jsx(T.Check,{className:"h-4 w-4"})})}),a]}));Tt.displayName=xe.CheckboxItem.displayName;const Pn=i.forwardRef(({className:t,children:a,...r},s)=>e.jsxs(xe.RadioItem,{ref:s,className:w("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...r,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(xe.ItemIndicator,{children:e.jsx(T.Circle,{className:"h-2 w-2 fill-current"})})}),a]}));Pn.displayName=xe.RadioItem.displayName;const ea=i.forwardRef(({className:t,inset:a,...r},s)=>e.jsx(xe.Label,{ref:s,className:w("px-2 py-1.5 text-sm font-semibold",a&&"pl-8",t),...r}));ea.displayName=xe.Label.displayName;const ta=i.forwardRef(({className:t,...a},r)=>e.jsx(xe.Separator,{ref:r,className:w("-mx-1 my-1 h-px bg-muted",t),...a}));ta.displayName=xe.Separator.displayName;const Mn=({className:t,...a})=>e.jsx("span",{className:w("ml-auto text-xs tracking-widest opacity-60",t),...a});Mn.displayName="DropdownMenuShortcut";var qf=t=>t.type==="checkbox",Jt=t=>t instanceof Date,Cr=t=>t==null;const Rn=t=>typeof t=="object";var Mt=t=>!Cr(t)&&!Array.isArray(t)&&Rn(t)&&!Jt(t),Uf=t=>Mt(t)&&t.target?qf(t.target)?t.target.checked:t.target.value:t,Bf=t=>t.substring(0,t.search(/\.\d+(\.|$)/))||t,Gf=(t,a)=>t.has(Bf(a)),Xf=t=>{const a=t.constructor&&t.constructor.prototype;return Mt(a)&&a.hasOwnProperty("isPrototypeOf")},Yf=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function An(t){let a;const r=Array.isArray(t),s=typeof FileList<"u"?t instanceof FileList:!1;if(t instanceof Date)a=new Date(t);else if(!(Yf&&(t instanceof Blob||s))&&(r||Mt(t)))if(a=r?[]:Object.create(Object.getPrototypeOf(t)),!r&&!Xf(t))a=t;else for(const n in t)t.hasOwnProperty(n)&&(a[n]=An(t[n]));else return t;return a}var Fn=t=>/^\w*$/.test(t),tr=t=>t===void 0,Jf=t=>Array.isArray(t)?t.filter(Boolean):[],$n=t=>Jf(t.replace(/["|']|\]/g,"").split(/\.|\[/)),$e=(t,a,r)=>{if(!a||!Mt(t))return r;const s=(Fn(a)?[a]:$n(a)).reduce((n,o)=>Cr(n)?n:n[o],t);return tr(s)||s===t?tr(t[a])?r:t[a]:s},qa=t=>typeof t=="boolean",Ps=(t,a,r)=>{let s=-1;const n=Fn(a)?[a]:$n(a),o=n.length,l=o-1;for(;++s<o;){const d=n[s];let h=r;if(s!==l){const m=t[d];h=Mt(m)||Array.isArray(m)?m:isNaN(+n[s+1])?{}:[]}if(d==="__proto__"||d==="constructor"||d==="prototype")return;t[d]=h,t=t[d]}};const Ms={BLUR:"blur",CHANGE:"change"},Rs={all:"all"},Tr=C.createContext(null);Tr.displayName="HookFormContext";const Aa=()=>C.useContext(Tr),Kf=t=>{const{children:a,...r}=t;return C.createElement(Tr.Provider,{value:r},a)};var Zf=(t,a,r,s=!0)=>{const n={defaultValues:a._defaultValues};for(const o in t)Object.defineProperty(n,o,{get:()=>{const l=o;return a._proxyFormState[l]!==Rs.all&&(a._proxyFormState[l]=!s||Rs.all),r&&(r[l]=!0),t[l]}});return n};const In=typeof window<"u"?C.useLayoutEffect:C.useEffect;function Qf(t){const a=Aa(),{control:r=a.control,disabled:s,name:n,exact:o}=t||{},[l,d]=C.useState(r._formState),h=C.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1});return In(()=>r._subscribe({name:n,formState:h.current,exact:o,callback:m=>{!s&&d({...r._formState,...m})}}),[n,s,o]),C.useEffect(()=>{h.current.isValid&&r._setValid(!0)},[r]),C.useMemo(()=>Zf(l,r,h.current,!1),[l,r])}var eh=t=>typeof t=="string",th=(t,a,r,s,n)=>eh(t)?$e(r,t,n):Array.isArray(t)?t.map(o=>$e(r,o)):r,As=t=>Cr(t)||!Rn(t);function Ln(t,a,r=new WeakSet){if(As(t)||As(a))return t===a;if(Jt(t)&&Jt(a))return t.getTime()===a.getTime();const s=Object.keys(t),n=Object.keys(a);if(s.length!==n.length)return!1;if(r.has(t)||r.has(a))return!0;r.add(t),r.add(a);for(const o of s){const l=t[o];if(!n.includes(o))return!1;if(o!=="ref"){const d=a[o];if(Jt(l)&&Jt(d)||Mt(l)&&Mt(d)||Array.isArray(l)&&Array.isArray(d)?!Ln(l,d,r):l!==d)return!1}}return!0}function ah(t){const a=Aa(),{control:r=a.control,name:s,defaultValue:n,disabled:o,exact:l,compute:d}=t||{},h=C.useRef(n),m=C.useRef(d),p=C.useRef(void 0);m.current=d;const f=C.useMemo(()=>r._getWatch(s,h.current),[r,s]),[x,S]=C.useState(m.current?m.current(f):f);return In(()=>r._subscribe({name:s,formState:{values:!0},exact:l,callback:k=>{if(!o){const j=th(s,r._names,k.values||r._formValues,!1,h.current);if(m.current){const y=m.current(j);Ln(y,p.current)||(S(y),p.current=y)}else S(j)}}}),[r,o,s,l]),C.useEffect(()=>r._removeUnmounted()),x}function rh(t){const a=Aa(),{name:r,disabled:s,control:n=a.control,shouldUnregister:o,defaultValue:l}=t,d=Gf(n._names.array,r),h=C.useMemo(()=>$e(n._formValues,r,$e(n._defaultValues,r,l)),[n,r,l]),m=ah({control:n,name:r,defaultValue:h,exact:!0}),p=Qf({control:n,name:r,exact:!0}),f=C.useRef(t),x=C.useRef(void 0),S=C.useRef(n.register(r,{...t.rules,value:m,...qa(t.disabled)?{disabled:t.disabled}:{}}));f.current=t;const k=C.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!$e(p.errors,r)},isDirty:{enumerable:!0,get:()=>!!$e(p.dirtyFields,r)},isTouched:{enumerable:!0,get:()=>!!$e(p.touchedFields,r)},isValidating:{enumerable:!0,get:()=>!!$e(p.validatingFields,r)},error:{enumerable:!0,get:()=>$e(p.errors,r)}}),[p,r]),j=C.useCallback(c=>S.current.onChange({target:{value:Uf(c),name:r},type:Ms.CHANGE}),[r]),y=C.useCallback(()=>S.current.onBlur({target:{value:$e(n._formValues,r),name:r},type:Ms.BLUR}),[r,n._formValues]),b=C.useCallback(c=>{const g=$e(n._fields,r);g&&c&&(g._f.ref={focus:()=>c.focus&&c.focus(),select:()=>c.select&&c.select(),setCustomValidity:v=>c.setCustomValidity(v),reportValidity:()=>c.reportValidity()})},[n._fields,r]),u=C.useMemo(()=>({name:r,value:m,...qa(s)||p.disabled?{disabled:p.disabled||s}:{},onChange:j,onBlur:y,ref:b}),[r,s,p.disabled,j,y,b,m]);return C.useEffect(()=>{const c=n._options.shouldUnregister||o,g=x.current;g&&g!==r&&!d&&n.unregister(g),n.register(r,{...f.current.rules,...qa(f.current.disabled)?{disabled:f.current.disabled}:{}});const v=(N,R)=>{const $=$e(n._fields,N);$&&$._f&&($._f.mount=R)};if(v(r,!0),c){const N=An($e(n._options.defaultValues,r,f.current.defaultValue));Ps(n._defaultValues,r,N),tr($e(n._formValues,r))&&Ps(n._formValues,r,N)}return!d&&n.register(r),x.current=r,()=>{(d?c&&!n._state.action:c)?n.unregister(r):v(r,!1)}},[r,n,d,o]),C.useEffect(()=>{n._setDisabledField({disabled:s,name:r})},[s,r,n]),C.useMemo(()=>({field:u,formState:p,fieldState:k}),[u,p,k])}const On=t=>t.render(rh(t)),sh=Pe.cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),ge=i.forwardRef(({className:t,...a},r)=>e.jsx(Ls.Root,{ref:r,className:w(sh(),t),...a}));ge.displayName=Ls.Root.displayName;const nh=Kf,_n=i.createContext({}),oh=({...t})=>e.jsx(_n.Provider,{value:{name:t.name},children:e.jsx(On,{...t})}),ha=()=>{const t=i.useContext(_n),a=i.useContext(zn),{getFieldState:r,formState:s}=Aa(),n=r(t.name,s);if(!t)throw new Error("useFormField should be used within <FormField>");const{id:o}=a;return{id:o,name:t.name,formItemId:`${o}-form-item`,formDescriptionId:`${o}-form-item-description`,formMessageId:`${o}-form-item-message`,...n}},zn=i.createContext({}),Vn=i.forwardRef(({className:t,...a},r)=>{const s=i.useId();return e.jsx(zn.Provider,{value:{id:s},children:e.jsx("div",{ref:r,className:w("space-y-2",t),...a})})});Vn.displayName="FormItem";const Wn=i.forwardRef(({className:t,...a},r)=>{const{error:s,formItemId:n}=ha();return e.jsx(ge,{ref:r,className:w(s&&"text-destructive",t),htmlFor:n,...a})});Wn.displayName="FormLabel";const Hn=i.forwardRef(({...t},a)=>{const{error:r,formItemId:s,formDescriptionId:n,formMessageId:o}=ha();return e.jsx(Ma.Slot,{ref:a,id:s,"aria-describedby":r?`${n} ${o}`:`${n}`,"aria-invalid":!!r,...t})});Hn.displayName="FormControl";const qn=i.forwardRef(({className:t,...a},r)=>{const{formDescriptionId:s}=ha();return e.jsx("p",{ref:r,id:s,className:w("text-sm text-muted-foreground",t),...a})});qn.displayName="FormDescription";const Un=i.forwardRef(({className:t,children:a,...r},s)=>{const{error:n,formMessageId:o}=ha(),l=n?String(n?.message):a;return l?e.jsx("p",{ref:s,id:o,className:w("text-sm font-medium text-destructive",t),...r,children:l}):null});Un.displayName="FormMessage";const ih=Ra.Root,lh=Ra.Trigger,Bn=i.forwardRef(({className:t,align:a="center",sideOffset:r=4,...s},n)=>e.jsx(Ra.Content,{ref:n,align:a,sideOffset:r,className:w("z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...s}));Bn.displayName=Ra.Content.displayName;const Gn=i.forwardRef(({length:t=6,value:a="",onChange:r,onComplete:s,pattern:n="numeric",secure:o=!1,disabled:l=!1,className:d,error:h,size:m="md",separator:p,separatorElement:f=e.jsx("span",{className:"text-muted-foreground",children:"-"}),...x},S)=>{const[k,j]=i.useState(a.split("").slice(0,t)),y=i.useRef([]);i.useEffect(()=>{const $=a.split("").slice(0,t);j($)},[a,t]);const u=(()=>{switch(n){case"numeric":return/^[0-9]$/;case"alpha":return/^[a-zA-Z]$/;case"alphanumeric":return/^[a-zA-Z0-9]$/;default:return/^.$/}})(),c=($,P)=>{if(l)return;const E=P.slice(-1);if(E&&!u.test(E))return;const M=[...k];M[$]=E,j(M);const O=M.join("");r?.(O),E&&$<t-1&&y.current[$+1]?.focus(),M.every(F=>F!=="")&&M.length===t&&s?.(O)},g=($,P)=>{if(!l){if(P.key==="Backspace"){P.preventDefault();const E=[...k];E[$]?(E[$]="",j(E),r?.(E.join(""))):$>0&&(E[$-1]="",j(E),r?.(E.join("")),y.current[$-1]?.focus())}if(P.key==="Delete"){P.preventDefault();const E=[...k];E[$]="",j(E),r?.(E.join(""))}P.key==="ArrowLeft"&&$>0&&(P.preventDefault(),y.current[$-1]?.focus()),P.key==="ArrowRight"&&$<t-1&&(P.preventDefault(),y.current[$+1]?.focus()),P.key==="Home"&&(P.preventDefault(),y.current[0]?.focus()),P.key==="End"&&(P.preventDefault(),y.current[t-1]?.focus())}},v=$=>{if($.preventDefault(),l)return;const E=$.clipboardData.getData("text/plain").split("").filter(F=>u.test(F)).slice(0,t),M=[...k];E.forEach((F,V)=>{M[V]=F}),j(M),r?.(M.join(""));const O=M.findIndex(F=>!F);O!==-1?y.current[O]?.focus():y.current[t-1]?.focus(),M.every(F=>F!=="")&&M.length===t&&s?.(M.join(""))},N=$=>{$.target.select()},R={sm:"h-8 w-8 text-sm",md:"h-12 w-12 text-base",lg:"h-16 w-16 text-lg"}[m];return e.jsxs("div",{ref:S,className:w("flex flex-col gap-2",d),children:[e.jsx("div",{className:"flex items-center gap-2",children:Array.from({length:t}).map(($,P)=>e.jsxs(i.Fragment,{children:[e.jsx("input",{ref:E=>y.current[P]=E,type:o?"password":"text",inputMode:n==="numeric"?"numeric":"text",maxLength:1,value:k[P]||"",onChange:E=>c(P,E.target.value),onKeyDown:E=>g(P,E),onPaste:v,onFocus:N,disabled:l,className:w("flex items-center justify-center rounded-md border border-input bg-background text-center font-medium transition-colors","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","disabled:cursor-not-allowed disabled:opacity-50",R,h&&"border-destructive focus-visible:ring-destructive",k[P]&&"border-primary"),"aria-label":`Caractère ${P+1} sur ${t}`,...x}),p&&(P+1)%p===0&&P<t-1&&e.jsx("div",{className:"flex items-center justify-center",children:f})]},P))}),h&&e.jsx("p",{className:"text-sm text-destructive",role:"alert",children:h})]})});Gn.displayName="InputOTP";const me=i.forwardRef(({className:t,type:a,...r},s)=>e.jsx("input",{type:a,className:w("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",t),ref:s,...r}));me.displayName="Input";const ut=Ce.Root,dh=Ce.Group,mt=Ce.Value,rt=i.forwardRef(({className:t,children:a,...r},s)=>e.jsxs(Ce.Trigger,{ref:s,className:w("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",t),...r,children:[a,e.jsx(Ce.Icon,{asChild:!0,children:e.jsx(T.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));rt.displayName=Ce.Trigger.displayName;const Er=i.forwardRef(({className:t,...a},r)=>e.jsx(Ce.ScrollUpButton,{ref:r,className:w("flex cursor-default items-center justify-center py-1",t),...a,children:e.jsx(T.ChevronUp,{className:"h-4 w-4"})}));Er.displayName=Ce.ScrollUpButton.displayName;const Dr=i.forwardRef(({className:t,...a},r)=>e.jsx(Ce.ScrollDownButton,{ref:r,className:w("flex cursor-default items-center justify-center py-1",t),...a,children:e.jsx(T.ChevronDown,{className:"h-4 w-4"})}));Dr.displayName=Ce.ScrollDownButton.displayName;const st=i.forwardRef(({className:t,children:a,position:r="popper",...s},n)=>e.jsx(Ce.Portal,{children:e.jsxs(Ce.Content,{ref:n,className:w("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:r,...s,children:[e.jsx(Er,{}),e.jsx(Ce.Viewport,{className:w("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:a}),e.jsx(Dr,{})]})}));st.displayName=Ce.Content.displayName;const Xn=i.forwardRef(({className:t,...a},r)=>e.jsx(Ce.Label,{ref:r,className:w("py-1.5 pl-8 pr-2 text-sm font-semibold",t),...a}));Xn.displayName=Ce.Label.displayName;const Qe=i.forwardRef(({className:t,children:a,...r},s)=>e.jsxs(Ce.Item,{ref:s,className:w("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...r,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(Ce.ItemIndicator,{children:e.jsx(T.Check,{className:"h-4 w-4"})})}),e.jsx(Ce.ItemText,{children:a})]}));Qe.displayName=Ce.Item.displayName;const Yn=i.forwardRef(({className:t,...a},r)=>e.jsx(Ce.Separator,{ref:r,className:w("-mx-1 my-1 h-px bg-muted",t),...a}));Yn.displayName=Ce.Separator.displayName;function ch({languages:t,value:a,onChange:r,showFlags:s=!0,showLabels:n=!0,variant:o="default",isLoading:l=!1,className:d,placeholder:h="Select language",ariaLabel:m="Select language"}){const[p,f]=i.useState(!1),[x,S]=i.useState(!1),k=i.useRef(null),j=i.useRef(null);i.useEffect(()=>{S(!0)},[]);const y=t.find(v=>v.code===a),b=v=>{r?.(v),f(!1)},[u,c]=i.useState({top:0,left:0});if(i.useEffect(()=>{if(p&&k.current&&x){const v=k.current.getBoundingClientRect();c({top:v.bottom+8,left:v.left})}},[p,x]),o==="default")return e.jsxs(ut,{value:a,onValueChange:r,disabled:l,children:[e.jsx(rt,{className:w("w-[180px]",d),children:e.jsx(mt,{placeholder:h,children:y&&e.jsxs("div",{className:"flex items-center gap-2",children:[s&&y.flagEmoji&&e.jsx("span",{className:"text-lg",children:y.flagEmoji}),s&&y.flag&&!y.flagEmoji&&e.jsx("img",{src:y.flag,alt:y.label,className:"h-4 w-6 object-cover rounded"}),!s&&e.jsx(T.Globe,{className:"h-4 w-4 text-muted-foreground"}),n&&e.jsx("span",{children:y.label})]})})}),e.jsx(st,{children:t.map(v=>e.jsx(Qe,{value:v.code,children:e.jsxs("div",{className:"flex items-center gap-2",children:[s&&v.flagEmoji&&e.jsx("span",{className:"text-lg",children:v.flagEmoji}),s&&v.flag&&!v.flagEmoji&&e.jsx("img",{src:v.flag,alt:v.label,className:"h-4 w-6 object-cover rounded"}),n&&v.label]})},v.code))})]});if(o==="minimal"){const v=p&&x?e.jsx("div",{ref:j,className:"fixed z-[9999] min-w-[160px] rounded-md border border-border bg-popover text-popover-foreground p-2 shadow-lg",style:{top:`${u.top}px`,left:`${u.left}px`},onMouseDown:N=>N.stopPropagation(),children:e.jsx("div",{className:"grid gap-1",children:t.map(N=>e.jsxs("button",{onMouseDown:R=>{R.preventDefault(),R.stopPropagation(),b(N.code)},type:"button",className:w("flex items-center gap-2 rounded-sm px-2 py-2 text-sm hover:bg-accent hover:text-accent-foreground transition-colors cursor-pointer",a===N.code&&"bg-accent"),children:[N.flagEmoji&&e.jsx("span",{className:"text-lg",children:N.flagEmoji}),N.flag&&!N.flagEmoji&&e.jsx("img",{src:N.flag,alt:N.label,className:"h-4 w-6 object-cover rounded"}),e.jsx("span",{className:"flex-1 text-left",children:N.label}),a===N.code&&e.jsx(T.Check,{className:"h-4 w-4 shrink-0"})]},N.code))})}):null;return e.jsxs(e.Fragment,{children:[e.jsxs("button",{ref:k,onClick:N=>{N.preventDefault(),N.stopPropagation(),f(!p)},className:w("flex h-9 w-9 items-center justify-center rounded-md border border-input bg-transparent hover:bg-accent hover:text-accent-foreground transition-colors",d),title:"Changer de langue",type:"button",disabled:l,children:[y?.flagEmoji?e.jsx("span",{className:"text-lg",children:y.flagEmoji}):e.jsx(T.Globe,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:m})]}),x&&typeof document<"u"&&v&&Ya.createPortal(e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"fixed inset-0 z-[9998]",onMouseDown:N=>{N.preventDefault(),f(!1)}}),v]}),document.body)]})}const g=p&&x?e.jsx("div",{ref:j,className:"fixed z-[9999] min-w-[180px] rounded-md border border-border bg-popover text-popover-foreground p-2 shadow-lg",style:{top:`${u.top}px`,left:`${u.left}px`},onMouseDown:v=>v.stopPropagation(),children:e.jsx("div",{className:"grid gap-1",children:t.map(v=>e.jsxs("button",{onMouseDown:N=>{N.preventDefault(),N.stopPropagation(),b(v.code)},type:"button",className:w("flex items-center gap-2 rounded-sm px-2 py-2 text-sm hover:bg-accent hover:text-accent-foreground transition-colors cursor-pointer",a===v.code&&"bg-accent"),children:[s&&v.flagEmoji&&e.jsx("span",{className:"text-lg",children:v.flagEmoji}),s&&v.flag&&!v.flagEmoji&&e.jsx("img",{src:v.flag,alt:v.label,className:"h-4 w-6 object-cover rounded"}),e.jsx("span",{className:"flex-1 text-left",children:v.label}),a===v.code&&e.jsx(T.Check,{className:"h-4 w-4 shrink-0"})]},v.code))})}):null;return e.jsxs(e.Fragment,{children:[e.jsxs("button",{ref:k,onClick:v=>{v.preventDefault(),v.stopPropagation(),l||f(!p)},className:w("inline-flex items-center gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm hover:bg-accent hover:text-accent-foreground transition-colors",l&&"opacity-50 cursor-not-allowed",d),disabled:l,type:"button","aria-label":m,children:[s&&y?.flagEmoji&&e.jsx("span",{className:"text-lg",children:y.flagEmoji}),s&&y?.flag&&!y?.flagEmoji&&e.jsx("img",{src:y.flag,alt:y.label,className:"h-4 w-6 object-cover rounded"}),!s&&e.jsx(T.Globe,{className:"h-4 w-4"}),n&&e.jsx("span",{children:y?.label||"Langue"}),e.jsx(T.ChevronDown,{className:"h-4 w-4"})]}),x&&typeof document<"u"&&g&&Ya.createPortal(e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"fixed inset-0 z-[9998]",onMouseDown:v=>{v.preventDefault(),f(!1)}}),g]}),document.body)]})}const uh=ue.Menu,mh=ue.Group,fh=ue.Portal,hh=ue.Sub,ph=ue.RadioGroup,Jn=i.forwardRef(({className:t,...a},r)=>e.jsx(ue.Root,{ref:r,className:w("flex h-10 items-center space-x-1 rounded-md border bg-background p-1",t),...a}));Jn.displayName=ue.Root.displayName;const Kn=i.forwardRef(({className:t,...a},r)=>e.jsx(ue.Trigger,{ref:r,className:w("flex cursor-default select-none items-center rounded-sm px-3 py-1.5 text-sm font-medium outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",t),...a}));Kn.displayName=ue.Trigger.displayName;const Zn=i.forwardRef(({className:t,inset:a,children:r,...s},n)=>e.jsxs(ue.SubTrigger,{ref:n,className:w("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",a&&"pl-8",t),...s,children:[r,e.jsx(T.ChevronRight,{className:"ml-auto h-4 w-4"})]}));Zn.displayName=ue.SubTrigger.displayName;const Qn=i.forwardRef(({className:t,...a},r)=>e.jsx(ue.SubContent,{ref:r,className:w("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...a}));Qn.displayName=ue.SubContent.displayName;const eo=i.forwardRef(({className:t,align:a="start",alignOffset:r=-4,sideOffset:s=8,...n},o)=>e.jsx(ue.Portal,{children:e.jsx(ue.Content,{ref:o,align:a,alignOffset:r,sideOffset:s,className:w("z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...n})}));eo.displayName=ue.Content.displayName;const to=i.forwardRef(({className:t,inset:a,...r},s)=>e.jsx(ue.Item,{ref:s,className:w("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",a&&"pl-8",t),...r}));to.displayName=ue.Item.displayName;const ao=i.forwardRef(({className:t,children:a,checked:r,...s},n)=>e.jsxs(ue.CheckboxItem,{ref:n,className:w("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),checked:r,...s,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(ue.ItemIndicator,{children:e.jsx(T.Check,{className:"h-4 w-4"})})}),a]}));ao.displayName=ue.CheckboxItem.displayName;const ro=i.forwardRef(({className:t,children:a,...r},s)=>e.jsxs(ue.RadioItem,{ref:s,className:w("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...r,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(ue.ItemIndicator,{children:e.jsx(T.Circle,{className:"h-2 w-2 fill-current"})})}),a]}));ro.displayName=ue.RadioItem.displayName;const so=i.forwardRef(({className:t,inset:a,...r},s)=>e.jsx(ue.Label,{ref:s,className:w("px-2 py-1.5 text-sm font-semibold",a&&"pl-8",t),...r}));so.displayName=ue.Label.displayName;const no=i.forwardRef(({className:t,...a},r)=>e.jsx(ue.Separator,{ref:r,className:w("-mx-1 my-1 h-px bg-muted",t),...a}));no.displayName=ue.Separator.displayName;const oo=({className:t,...a})=>e.jsx("span",{className:w("ml-auto text-xs tracking-widest text-muted-foreground",t),...a});oo.displayName="MenubarShortcut";const io=i.forwardRef(({className:t,children:a,...r},s)=>e.jsxs(Le.Root,{ref:s,className:w("relative z-10 flex max-w-max flex-1 items-center justify-center",t),...r,children:[a,e.jsx(Pr,{})]}));io.displayName=Le.Root.displayName;const lo=i.forwardRef(({className:t,...a},r)=>e.jsx(Le.List,{ref:r,className:w("group flex flex-1 list-none items-center justify-center space-x-1",t),...a}));lo.displayName=Le.List.displayName;const gh=Le.Item,co=Pe.cva("group inline-flex h-10 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-accent/50 data-[state=open]:bg-accent/50"),uo=i.forwardRef(({className:t,children:a,...r},s)=>e.jsxs(Le.Trigger,{ref:s,className:w(co(),"group",t),...r,children:[a," ",e.jsx(T.ChevronDown,{className:"relative top-[1px] ml-1 h-3 w-3 transition duration-200 group-data-[state=open]:rotate-180","aria-hidden":"true"})]}));uo.displayName=Le.Trigger.displayName;const mo=i.forwardRef(({className:t,...a},r)=>e.jsx(Le.Content,{ref:r,className:w("left-0 top-0 w-full data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 md:absolute md:w-auto ",t),...a}));mo.displayName=Le.Content.displayName;const bh=Le.Link,Pr=i.forwardRef(({className:t,...a},r)=>e.jsx("div",{className:w("absolute left-0 top-full flex justify-center"),children:e.jsx(Le.Viewport,{className:w("origin-top-center relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 md:w-[var(--radix-navigation-menu-viewport-width)]",t),ref:r,...a})}));Pr.displayName=Le.Viewport.displayName;const fo=i.forwardRef(({className:t,...a},r)=>e.jsx(Le.Indicator,{ref:r,className:w("top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in",t),...a,children:e.jsx("div",{className:"relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md"})}));fo.displayName=Le.Indicator.displayName;const xt=ra.Root,vt=ra.Trigger,ct=i.forwardRef(({className:t,align:a="center",sideOffset:r=4,...s},n)=>e.jsx(ra.Portal,{children:e.jsx(ra.Content,{ref:n,align:a,sideOffset:r,className:w("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...s})}));ct.displayName=ra.Content.displayName;const ho=i.forwardRef(({className:t,value:a,...r},s)=>e.jsx(Ka.Root,{ref:s,className:w("relative h-4 w-full overflow-hidden rounded-full bg-secondary",t),...r,children:e.jsx(Ka.Indicator,{className:"h-full w-full flex-1 bg-primary transition-all",style:{transform:`translateX(-${100-(a||0)}%)`}})}));ho.displayName=Ka.Root.displayName;const po=i.forwardRef(({className:t,...a},r)=>e.jsx(sa.Root,{className:w("grid gap-2",t),...a,ref:r}));po.displayName=sa.Root.displayName;const go=i.forwardRef(({className:t,...a},r)=>e.jsx(sa.Item,{ref:r,className:w("aspect-square h-4 w-4 rounded-full border border-primary text-primary ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",t),...a,children:e.jsx(sa.Indicator,{className:"flex items-center justify-center",children:e.jsx(T.Circle,{className:"h-2.5 w-2.5 fill-current text-current"})})}));go.displayName=sa.Item.displayName;const Lt=i.forwardRef(({className:t,children:a,...r},s)=>e.jsxs(Et.Root,{ref:s,className:w("relative overflow-hidden",t),...r,children:[e.jsx(Et.Viewport,{className:"h-full w-full rounded-[inherit]",children:a}),e.jsx(Mr,{}),e.jsx(Et.Corner,{})]}));Lt.displayName=Et.Root.displayName;const Mr=i.forwardRef(({className:t,orientation:a="vertical",...r},s)=>e.jsx(Et.ScrollAreaScrollbar,{ref:s,orientation:a,className:w("flex touch-none select-none transition-colors",a==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",a==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",t),...r,children:e.jsx(Et.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));Mr.displayName=Et.ScrollAreaScrollbar.displayName;const At=i.forwardRef(({className:t,orientation:a="horizontal",decorative:r=!0,...s},n)=>e.jsx(Os.Root,{ref:n,decorative:r,orientation:a,className:w("shrink-0 bg-border",a==="horizontal"?"h-[1px] w-full":"h-full w-[1px]",t),...s}));At.displayName=Os.Root.displayName;const Rr=fe.Root,Ar=fe.Trigger,xh=fe.Close,bo=fe.Portal,Fr=i.forwardRef(({className:t,...a},r)=>e.jsx(fe.Overlay,{className:w("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...a,ref:r}));Fr.displayName=fe.Overlay.displayName;const vh=Pe.cva("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),Fa=i.forwardRef(({side:t="right",className:a,children:r,...s},n)=>e.jsxs(bo,{children:[e.jsx(Fr,{}),e.jsxs(fe.Content,{ref:n,className:w(vh({side:t}),a),...s,children:[r,e.jsxs(fe.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[e.jsx(T.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Fa.displayName=fe.Content.displayName;const $r=({className:t,...a})=>e.jsx("div",{className:w("flex flex-col space-y-2 text-center sm:text-left",t),...a});$r.displayName="SheetHeader";const xo=({className:t,...a})=>e.jsx("div",{className:w("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});xo.displayName="SheetFooter";const Ir=i.forwardRef(({className:t,...a},r)=>e.jsx(fe.Title,{ref:r,className:w("text-lg font-semibold text-foreground",t),...a}));Ir.displayName=fe.Title.displayName;const Lr=i.forwardRef(({className:t,...a},r)=>e.jsx(fe.Description,{ref:r,className:w("text-sm text-muted-foreground",t),...a}));Lr.displayName=fe.Description.displayName;function yh({className:t,...a}){return e.jsx("div",{className:w("animate-pulse rounded-md bg-muted",t),...a})}const vo=i.forwardRef(({className:t,...a},r)=>e.jsxs(Yt.Root,{ref:r,className:w("relative flex w-full touch-none select-none items-center",t),...a,children:[e.jsx(Yt.Track,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:e.jsx(Yt.Range,{className:"absolute h-full bg-primary"})}),e.jsx(Yt.Thumb,{className:"block h-5 w-5 rounded-full border-2 border-primary bg-background 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"})]}));vo.displayName=Yt.Root.displayName;const Or=i.forwardRef(({className:t,...a},r)=>e.jsx(Za.Root,{className:w("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",t),...a,ref:r,children:e.jsx(Za.Thumb,{className:w("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})}));Or.displayName=Za.Root.displayName;const yo=i.forwardRef(({className:t,...a},r)=>e.jsx("div",{className:"relative w-full overflow-auto",children:e.jsx("table",{ref:r,className:w("w-full caption-bottom text-sm",t),...a})}));yo.displayName="Table";const wo=i.forwardRef(({className:t,...a},r)=>e.jsx("thead",{ref:r,className:w("[&_tr]:border-b",t),...a}));wo.displayName="TableHeader";const jo=i.forwardRef(({className:t,...a},r)=>e.jsx("tbody",{ref:r,className:w("[&_tr:last-child]:border-0",t),...a}));jo.displayName="TableBody";const No=i.forwardRef(({className:t,...a},r)=>e.jsx("tfoot",{ref:r,className:w("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",t),...a}));No.displayName="TableFooter";const So=i.forwardRef(({className:t,...a},r)=>e.jsx("tr",{ref:r,className:w("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",t),...a}));So.displayName="TableRow";const ko=i.forwardRef(({className:t,...a},r)=>e.jsx("th",{ref:r,className:w("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",t),...a}));ko.displayName="TableHead";const Co=i.forwardRef(({className:t,...a},r)=>e.jsx("td",{ref:r,className:w("p-4 align-middle [&:has([role=checkbox])]:pr-0",t),...a}));Co.displayName="TableCell";const To=i.forwardRef(({className:t,...a},r)=>e.jsx("caption",{ref:r,className:w("mt-4 text-sm text-muted-foreground",t),...a}));To.displayName="TableCaption";const _r=Rt.Root,$a=i.forwardRef(({className:t,...a},r)=>e.jsx(Rt.List,{ref:r,className:w("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",t),...a}));$a.displayName=Rt.List.displayName;const ca=i.forwardRef(({className:t,...a},r)=>e.jsx(Rt.Trigger,{ref:r,className:w("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",t),...a}));ca.displayName=Rt.Trigger.displayName;const ua=i.forwardRef(({className:t,...a},r)=>e.jsx(Rt.Content,{ref:r,className:w("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",t),...a}));ua.displayName=Rt.Content.displayName;const pa=i.forwardRef(({className:t,...a},r)=>e.jsx("textarea",{className:w("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",t),ref:r,...a}));pa.displayName="Textarea";const Eo=i.createContext(void 0);function Do({children:t,themes:a,defaultTheme:r="default",s3Config:s,onThemeChange:n,enableDarkMode:o=!1}){const[l,d]=i.useState(r),[h,m]=i.useState(!0),[p,f]=i.useState(new Set),[x,S]=i.useState(!1),[k,j]=i.useState(!1),y=i.useRef(new Map),b=i.useRef(new Set);i.useEffect(()=>{b.current=p},[p]);const u=i.useCallback(async E=>{if(!s)throw new Error("S3 configuration not provided");const{baseUrl:M,prefix:O="",extension:F="css",headers:V={},timeout:X=1e4}=s,pe=`v=${Date.now()}`,se=`${M.replace(/\/$/,"")}/${O}${E}.${F}?${pe}`;try{const G=new AbortController,U=setTimeout(()=>G.abort(),X),z=await fetch(se,{signal:G.signal,headers:{Accept:"text/css","Cache-Control":"no-cache, no-store, must-revalidate",Pragma:"no-cache",...V}});if(clearTimeout(U),!z.ok)throw new Error(`HTTP ${z.status}: ${z.statusText}`);const H=await z.text();return!H.includes(`[data-theme="${E}"]`)&&!H.includes(":root")&&console.warn(`[ThemeProvider] Theme CSS might be missing [data-theme="${E}"] selector`),H}catch(G){throw console.error(`[ThemeProvider] Error loading theme ${E}:`,G),G}},[s]);i.useCallback(E=>{const M=y.current.get(E);M&&(M.parentNode&&M.parentNode.removeChild(M),y.current.delete(E))},[]);const c=i.useCallback((E,M)=>{if(typeof document>"u")return;document.querySelectorAll("style[data-theme-styles]").forEach(V=>V.remove()),y.current.clear();const F=document.createElement("style");F.setAttribute("data-theme-id",E),F.setAttribute("data-theme-styles","active"),F.textContent=M,document.head.appendChild(F),y.current.set(E,F)},[]),g=i.useCallback(E=>{if(typeof document>"u")return;document.documentElement.setAttribute("data-theme",E);try{localStorage.setItem("waka-theme",E)}catch(O){console.warn("[ThemeProvider] Could not save theme to localStorage:",O)}},[]),v=i.useCallback(async E=>{if(!b.current.has(E))try{if(s){const M=await u(E);c(E,M),f(O=>new Set(O).add(E))}else f(M=>new Set(M).add(E))}catch(M){throw console.error(`[ThemeProvider] Failed to preload theme ${E}:`,M),M}},[s,u,c]),N=i.useCallback(async E=>{m(!0);try{if(s){const M=await u(E);c(E,M),f(O=>new Set(O).add(E))}g(E),d(E),n?.(E)}catch(M){throw console.error(`[ThemeProvider] Failed to change theme to ${E}:`,M),M}finally{m(!1)}},[s,u,c,g,n]),R=i.useCallback(E=>p.has(E),[p]);i.useEffect(()=>{if(x)return;(async()=>{m(!0);try{let M=r;if(typeof window<"u"){const O=localStorage.getItem("waka-theme");O&&a.some(F=>F.id===O)&&(M=O)}if(s){const O=await u(M);c(M,O),f(new Set([M]))}else f(new Set([M]));g(M),d(M)}catch(M){console.error("[ThemeProvider] Error initializing:",M),g(r),d(r),f(new Set([r]))}finally{m(!1),S(!0)}})()},[x,r,a,s,u,c,g]);const $=i.useCallback(()=>{o&&j(E=>{const M=!E,O=document.documentElement;M?O.classList.add("dark"):O.classList.remove("dark");try{localStorage.setItem("waka-dark-mode",M?"dark":"light")}catch(F){console.warn("[ThemeProvider] Could not save dark mode to localStorage:",F)}return M})},[o]);i.useEffect(()=>{if(!o||typeof window>"u")return;let E=!1;try{const V=localStorage.getItem("waka-dark-mode");V!==null?E=V==="dark":(E=window.matchMedia("(prefers-color-scheme: dark)").matches,localStorage.setItem("waka-dark-mode",E?"dark":"light"))}catch(V){console.warn("[ThemeProvider] Could not read dark mode from localStorage:",V)}j(E);const M=document.documentElement;E?M.classList.add("dark"):M.classList.remove("dark");const O=window.matchMedia("(prefers-color-scheme: dark)"),F=V=>{try{localStorage.getItem("waka-dark-mode")||(j(V.matches),V.matches?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark"),localStorage.setItem("waka-dark-mode",V.matches?"dark":"light"))}catch{}};return O.addEventListener("change",F),()=>{O.removeEventListener("change",F)}},[]),i.useEffect(()=>()=>{y.current.forEach(E=>{E.parentNode&&E.parentNode.removeChild(E)}),y.current.clear()},[]);const P={currentTheme:l,themes:a,changeTheme:N,isLoading:h,loadedThemes:p,preloadTheme:v,isThemeLoaded:R,isDarkMode:k,toggleDarkMode:$};return e.jsx(Eo.Provider,{value:P,children:t})}function zr(){const t=i.useContext(Eo);if(!t)throw new Error("useTheme must be used within a ThemeProvider");return t}const Po=i.forwardRef(({className:t,variant:a="default",ariaLabel:r="Select theme"},s)=>{const{currentTheme:n,changeTheme:o,themes:l,isLoading:d}=zr(),[h,m]=i.useState(!1),[p,f]=i.useState(!1),x=i.useRef(null),S=i.useRef(null);i.useEffect(()=>{f(!0)},[]);const k=async(b,u)=>{u&&(u.preventDefault(),u.stopPropagation()),await o(b),a==="compact"&&setTimeout(()=>m(!1),100)},[j,y]=i.useState({top:0,right:0});if(i.useEffect(()=>{if(h&&x.current&&p){const b=x.current.getBoundingClientRect();y({top:b.bottom+8,right:window.innerWidth-b.right})}},[h,p]),a==="compact"){const b=h&&p?e.jsxs("div",{ref:S,className:"fixed z-[9999] min-w-[220px] rounded-md border border-border bg-popover text-popover-foreground p-2 shadow-lg",style:{top:`${j.top}px`,right:`${j.right}px`},onMouseDown:u=>{u.stopPropagation()},children:[e.jsx("div",{className:"px-2 py-1.5 border-b border-border mb-2",children:e.jsxs("div",{className:"text-xs font-medium text-muted-foreground flex items-center justify-between",children:[e.jsx("span",{children:"Thèmes"}),d&&e.jsx(T.Loader2,{className:"h-3 w-3 animate-spin"})]})}),d&&l.length===0?e.jsxs("div",{className:"flex items-center justify-center py-6 text-sm text-muted-foreground",children:[e.jsx(T.Loader2,{className:"h-4 w-4 mr-2 animate-spin"}),"Chargement..."]}):e.jsxs("div",{className:"grid gap-1",children:[l.map(u=>e.jsxs("button",{onMouseDown:c=>{c.preventDefault(),c.stopPropagation(),k(u.id,c)},type:"button",className:w("flex items-center gap-3 rounded-sm px-2 py-2 text-sm hover:bg-accent hover:text-accent-foreground transition-colors cursor-pointer",n===u.id&&"bg-accent"),children:[u.previewColor&&e.jsx("div",{className:"h-4 w-4 rounded border border-border shrink-0",style:{backgroundColor:u.previewColor}}),e.jsx("span",{className:"flex-1 text-left",children:u.label}),n===u.id&&e.jsx(T.Check,{className:"h-4 w-4 shrink-0"})]},u.id)),l.length===0&&!d&&e.jsx("div",{className:"py-6 text-center text-sm text-muted-foreground",children:"Aucun thème disponible"})]}),e.jsx("div",{className:"px-2 py-1.5 border-t border-border mt-2",children:e.jsxs("div",{className:"text-xs text-muted-foreground",children:[l.length," thème",l.length>1?"s":""," disponible",l.length>1?"s":""]})})]}):null;return e.jsxs(e.Fragment,{children:[e.jsx("div",{ref:s,className:w("relative",t),children:e.jsxs("button",{ref:x,onMouseDown:u=>{u.preventDefault(),u.stopPropagation()},onClick:u=>{u.preventDefault(),u.stopPropagation(),m(!h)},className:"flex h-9 w-9 items-center justify-center rounded-md border border-input bg-transparent hover:bg-accent hover:text-accent-foreground relative",title:"Changer de thème",type:"button",children:[e.jsx(T.Palette,{className:"h-4 w-4"}),d&&e.jsx(T.Loader2,{className:"h-3 w-3 absolute top-1 right-1 animate-spin text-primary"}),e.jsx("span",{className:"sr-only",children:r})]})}),p&&typeof document<"u"&&b&&Ya.createPortal(e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"fixed inset-0 z-[9998]",onMouseDown:u=>{u.preventDefault(),m(!1)}}),b]}),document.body)]})}if(a==="select"){const b=l.find(u=>u.id===n);return e.jsx("div",{ref:s,className:w("w-full",t),children:e.jsxs(ut,{value:n,onValueChange:u=>o(u),disabled:d||l.length===0,children:[e.jsx(rt,{className:"w-full","aria-label":r,children:e.jsx(mt,{children:d&&l.length===0?e.jsxs("span",{className:"flex items-center gap-2",children:[e.jsx(T.Loader2,{className:"h-4 w-4 animate-spin"}),e.jsx("span",{children:"Chargement..."})]}):b?e.jsxs("span",{className:"flex items-center gap-3",children:[b.previewColor&&e.jsx("div",{className:"h-4 w-4 rounded border border-border shrink-0",style:{backgroundColor:b.previewColor}}),e.jsx("span",{className:"truncate",children:b.label})]}):e.jsx("span",{className:"text-muted-foreground",children:"Sélectionner un thème"})})}),e.jsxs(st,{children:[l.map(u=>e.jsx(Qe,{value:u.id,className:"cursor-pointer",children:e.jsxs("div",{className:"flex items-center gap-3 w-full",children:[u.previewColor&&e.jsx("div",{className:"h-4 w-4 rounded border border-border shrink-0",style:{backgroundColor:u.previewColor}}),e.jsx("span",{className:"flex-1 text-left truncate",children:u.label})]})},u.id)),l.length===0&&!d&&e.jsx("div",{className:"py-6 text-center text-sm text-muted-foreground",children:"Aucun thème disponible"})]})]})})}return e.jsx("div",{ref:s,className:w("grid gap-4",t),children:d&&l.length===0?e.jsxs("div",{className:"flex items-center justify-center py-12 text-sm text-muted-foreground",children:[e.jsx(T.Loader2,{className:"h-5 w-5 mr-2 animate-spin"}),"Chargement des thèmes..."]}):e.jsxs(e.Fragment,{children:[l.map(b=>e.jsxs("button",{onClick:u=>k(b.id,u),type:"button",className:w("relative flex flex-col items-start gap-2 rounded-lg border-2 p-4 text-left transition-all hover:border-primary",n===b.id?"border-primary bg-primary/5":"border-muted"),children:[e.jsxs("div",{className:"flex w-full items-center justify-between",children:[e.jsxs("div",{className:"flex flex-col gap-1",children:[e.jsx("span",{className:"font-semibold",children:b.label}),b.description&&e.jsx("span",{className:"text-sm text-muted-foreground",children:b.description})]}),n===b.id&&e.jsx(T.Check,{className:"h-5 w-5 text-primary shrink-0"})]}),b.previewColor&&e.jsx("div",{className:"flex gap-2 w-full",children:e.jsx("div",{className:"h-8 w-full rounded border",style:{backgroundColor:b.previewColor}})})]},b.id)),l.length===0&&!d&&e.jsx("div",{className:"py-12 text-center text-sm text-muted-foreground",children:"Aucun thème disponible"})]})})});Po.displayName="ThemeSelector";const Mo=qe.Provider,Vr=i.forwardRef(({className:t,...a},r)=>e.jsx(qe.Viewport,{ref:r,className:w("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",t),...a}));Vr.displayName=qe.Viewport.displayName;const wh=Pe.cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),Wr=i.forwardRef(({className:t,variant:a,...r},s)=>e.jsx(qe.Root,{ref:s,className:w(wh({variant:a}),t),...r}));Wr.displayName=qe.Root.displayName;const Ro=i.forwardRef(({className:t,...a},r)=>e.jsx(qe.Action,{ref:r,className:w("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",t),...a}));Ro.displayName=qe.Action.displayName;const Hr=i.forwardRef(({className:t,...a},r)=>e.jsx(qe.Close,{ref:r,className:w("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",t),"toast-close":"",...a,children:e.jsx(T.X,{className:"h-4 w-4"})}));Hr.displayName=qe.Close.displayName;const qr=i.forwardRef(({className:t,...a},r)=>e.jsx(qe.Title,{ref:r,className:w("text-sm font-semibold",t),...a}));qr.displayName=qe.Title.displayName;const Ur=i.forwardRef(({className:t,...a},r)=>e.jsx(qe.Description,{ref:r,className:w("text-sm opacity-90",t),...a}));Ur.displayName=qe.Description.displayName;const jh=1,Nh=1e6;let Ua=0;function Sh(){return Ua=(Ua+1)%Number.MAX_SAFE_INTEGER,Ua.toString()}const Ba=new Map,Fs=t=>{if(Ba.has(t))return;const a=setTimeout(()=>{Ba.delete(t),aa({type:"REMOVE_TOAST",toastId:t})},Nh);Ba.set(t,a)},Ao=(t,a)=>{switch(a.type){case"ADD_TOAST":return{...t,toasts:[a.toast,...t.toasts].slice(0,jh)};case"UPDATE_TOAST":return{...t,toasts:t.toasts.map(r=>r.id===a.toast.id?{...r,...a.toast}:r)};case"DISMISS_TOAST":{const{toastId:r}=a;return r?Fs(r):t.toasts.forEach(s=>{Fs(s.id)}),{...t,toasts:t.toasts.map(s=>s.id===r||r===void 0?{...s,open:!1}:s)}}case"REMOVE_TOAST":return a.toastId===void 0?{...t,toasts:[]}:{...t,toasts:t.toasts.filter(r=>r.id!==a.toastId)}}},ka=[];let Ca={toasts:[]};function aa(t){Ca=Ao(Ca,t),ka.forEach(a=>{a(Ca)})}function Fo({...t}){const a=Sh(),r=n=>aa({type:"UPDATE_TOAST",toast:{...n,id:a}}),s=()=>aa({type:"DISMISS_TOAST",toastId:a});return aa({type:"ADD_TOAST",toast:{...t,id:a,open:!0,onOpenChange:n=>{n||s()}}}),{id:a,dismiss:s,update:r}}function Br(){const[t,a]=i.useState(Ca);return i.useEffect(()=>(ka.push(a),()=>{const r=ka.indexOf(a);r>-1&&ka.splice(r,1)}),[t]),{...t,toast:Fo,dismiss:r=>aa({type:"DISMISS_TOAST",toastId:r})}}function kh(){const{toasts:t}=Br();return e.jsxs(Mo,{children:[t.map(function({id:a,title:r,description:s,action:n,...o}){return e.jsxs(Wr,{...o,children:[e.jsxs("div",{className:"grid gap-1",children:[r&&e.jsx(qr,{children:r}),s&&e.jsx(Ur,{children:s})]}),n,e.jsx(Hr,{})]},a)}),e.jsx(Vr,{})]})}const $o=Pe.cva("inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent hover:bg-accent hover:text-accent-foreground"},size:{default:"h-10 px-3",sm:"h-9 px-2.5",lg:"h-11 px-5"}},defaultVariants:{variant:"default",size:"default"}}),Io=i.forwardRef(({className:t,variant:a,size:r,...s},n)=>e.jsx(_s.Root,{ref:n,className:w($o({variant:a,size:r,className:t})),...s}));Io.displayName=_s.Root.displayName;const ar=fa.Provider,rr=fa.Root,sr=fa.Trigger,Da=i.forwardRef(({className:t,sideOffset:a=4,...r},s)=>e.jsx(fa.Content,{ref:s,sideOffset:a,className:w("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...r}));Da.displayName=fa.Content.displayName;const Lo=Pe.cva("",{variants:{variant:{default:"text-foreground",muted:"text-muted-foreground",destructive:"text-destructive",success:"text-green-600 dark:text-green-400",warning:"text-amber-600 dark:text-amber-400",link:"text-primary underline-offset-4 hover:underline"},size:{xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg",xl:"text-xl"},weight:{normal:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold"},align:{left:"text-left",center:"text-center",right:"text-right",justify:"text-justify"}},defaultVariants:{variant:"default",size:"base",weight:"normal",align:"left"}}),Oo=i.forwardRef(({className:t,variant:a,size:r,weight:s,align:n,asChild:o=!1,truncate:l=!1,...d},h)=>{const m=o?Ma.Slot:"p";return e.jsx(m,{className:w(Lo({variant:a,size:r,weight:s,align:n}),l&&"truncate",t),ref:h,...d})});Oo.displayName="Text";const _o=Pe.cva("font-bold tracking-tight",{variants:{level:{h1:"text-4xl lg:text-5xl",h2:"text-3xl lg:text-4xl",h3:"text-2xl lg:text-3xl",h4:"text-xl lg:text-2xl",h5:"text-lg lg:text-xl",h6:"text-base lg:text-lg"},variant:{default:"text-foreground",gradient:"bg-gradient-to-r from-primary to-primary/60 bg-clip-text text-transparent",muted:"text-muted-foreground"}},defaultVariants:{level:"h2",variant:"default"}}),zo=i.forwardRef(({className:t,level:a="h2",variant:r,asChild:s=!1,...n},o)=>{const l=s?Ma.Slot:a;return e.jsx(l,{className:w(_o({level:a,variant:r}),t),ref:o,...n})});zo.displayName="Heading";const Vo=Pe.cva("mt-6 border-l-4 pl-6 italic",{variants:{variant:{default:"border-border text-muted-foreground",primary:"border-primary text-foreground",success:"border-green-500 text-green-900 dark:text-green-100",warning:"border-amber-500 text-amber-900 dark:text-amber-100",destructive:"border-destructive text-destructive"}},defaultVariants:{variant:"default"}}),Wo=i.forwardRef(({className:t,variant:a,author:r,cite:s,children:n,...o},l)=>e.jsxs("figure",{className:"my-6",children:[e.jsx("blockquote",{className:w(Vo({variant:a}),t),cite:s,ref:l,...o,children:n}),r&&e.jsxs("figcaption",{className:"mt-2 text-sm text-muted-foreground",children:["— ",r]})]}));Wo.displayName="Blockquote";Pe.cva("relative rounded font-mono",{variants:{variant:{inline:"bg-muted px-[0.3rem] py-[0.2rem] text-xs sm:text-sm",block:"block bg-muted overflow-x-auto"},size:{sm:"text-xs sm:text-sm",base:"text-sm sm:text-base",lg:"text-base sm:text-lg"}},defaultVariants:{variant:"inline",size:"base"}});const Ho=Pe.cva("inline-flex items-center justify-center rounded border border-border bg-muted px-2 py-1 font-mono text-xs font-medium text-muted-foreground shadow-sm",{variants:{size:{sm:"h-5 min-w-[1.25rem] text-[0.625rem]",default:"h-6 min-w-[1.5rem] text-xs",lg:"h-7 min-w-[1.75rem] text-sm"}},defaultVariants:{size:"default"}}),qo=i.forwardRef(({className:t,size:a,...r},s)=>e.jsx("kbd",{className:w(Ho({size:a}),t),ref:s,...r}));qo.displayName="Kbd";const Ch=Pe.cva("flex items-center",{variants:{variant:{default:"gap-2 p-3 rounded-lg border bg-card shadow-sm",minimal:"gap-2",pills:"gap-2 p-2 rounded-full border bg-muted/30",inline:"gap-1.5 text-sm",compact:"gap-1.5 p-2 rounded-md bg-muted/50"}},defaultVariants:{variant:"default"}}),Th=Pe.cva("justify-between gap-2 transition-all",{variants:{variant:{default:"h-9 border-primary/50",minimal:"h-8 border-0 shadow-none hover:bg-accent",pills:"h-8 rounded-full px-4",inline:"h-7 text-sm border-0 shadow-none p-0 hover:bg-transparent hover:underline",compact:"h-7 text-xs px-2"}},defaultVariants:{variant:"default"}}),Eh={partner:T.Building2,network:T.Network,customer:T.Users},Dh={partner:"bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200",network:"bg-purple-100 text-purple-800 dark:bg-purple-900 dark:text-purple-200",customer:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200"},Ga={partner:"Partenaire",network:"Réseau",customer:"Client"},Uo=i.forwardRef(({type:t,items:a,selected:r,isLoading:s,onSelect:n,placeholder:o,emptyText:l,showIcon:d,showBadge:h,variant:m},p)=>{const[f,x]=i.useState(!1),[S,k]=i.useState(""),j=Eh[t],y=i.useMemo(()=>S?a.filter(c=>c.name.toLowerCase().includes(S.toLowerCase())):a,[a,S]),b=c=>{n(c),x(!1),k("")},u=c=>{c.stopPropagation(),n({id:"",name:"",type:t}),k("")};return e.jsxs(xt,{open:f,onOpenChange:x,children:[e.jsx(vt,{asChild:!0,children:e.jsxs(L,{ref:p,variant:m==="inline"?"ghost":"outline",role:"combobox","aria-expanded":f,className:w(Th({variant:m}),r?.id?"border-primary/50":""),disabled:s||a.length===0,children:[e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[d&&j&&e.jsx(j,{className:"h-4 w-4 shrink-0"}),e.jsx("span",{className:"truncate",children:r?.name||o||Ga[t]}),h&&r?.id&&e.jsx(He,{variant:"secondary",className:w("text-xs",Dh[t]),children:t})]}),r?.id?e.jsx(T.X,{className:"h-3 w-3 shrink-0 opacity-50 hover:opacity-100",onClick:u}):e.jsx(T.ChevronRight,{className:"h-4 w-4 shrink-0 opacity-50"})]})}),e.jsx(ct,{className:"w-[300px] p-0",align:"start",children:e.jsxs(_t,{shouldFilter:!1,children:[e.jsxs("div",{className:"flex items-center border-b px-3 py-2 bg-muted/50",children:[e.jsx(T.Search,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),e.jsx(oa,{placeholder:`Rechercher ${Ga[t].toLowerCase()}...`,value:S,onValueChange:k,className:"border-0 focus:ring-0"})]}),e.jsxs(Nr,{children:[e.jsx(ia,{children:l||`Aucun ${Ga[t].toLowerCase()} trouvé`}),e.jsx(la,{children:y.map(c=>e.jsx(da,{value:c.id,onSelect:()=>b(c),className:"cursor-pointer",children:e.jsxs("div",{className:"flex items-center gap-2 w-full",children:[d&&j&&e.jsx(j,{className:"h-4 w-4 shrink-0"}),e.jsx("span",{className:"flex-1 truncate",children:c.name}),c.metadata?.count!==void 0&&e.jsx(He,{variant:"secondary",className:"text-xs",children:c.metadata.count})]})},c.id))})]})]})})]})});Uo.displayName="AdmincrumbSelector";const Bo=i.forwardRef(({levels:t,separator:a,className:r,onLevelChange:s,showIcons:n=!0,showBadges:o=!1,showHome:l=!1,maxWidth:d="100%",variant:h="default",resetable:m=!1,onReset:p},f)=>{const x=j=>y=>{s?.(j,y)},S=t.some(j=>j.selected?.id),k=m&&S&&p;return e.jsxs("nav",{ref:f,"aria-label":"Fil d'Ariane administrateur",className:w("flex items-center gap-2",r),style:{maxWidth:d},children:[e.jsxs("div",{className:w(Ch({variant:h}),"overflow-x-auto"),children:[l&&e.jsxs(e.Fragment,{children:[e.jsx(L,{variant:h==="inline"?"ghost":"outline",size:h==="compact"?"sm":"default",className:w(h==="inline"&&"h-7 px-2",h==="compact"&&"h-7 px-2"),onClick:()=>p?.(),children:e.jsx(T.Home,{className:"h-4 w-4"})}),e.jsx(T.ChevronRight,{className:"h-4 w-4 text-muted-foreground shrink-0","aria-hidden":"true"})]}),e.jsx("ol",{className:"flex items-center gap-2 list-none p-0 m-0",children:t.map((j,y)=>e.jsxs("li",{className:"flex items-center gap-2",children:[y>0&&e.jsx(e.Fragment,{children:a||e.jsx(T.ChevronRight,{className:w("text-muted-foreground shrink-0",h==="compact"||h==="inline"?"h-3 w-3":"h-4 w-4"),"aria-hidden":"true"})}),e.jsx(Uo,{...j,onSelect:x(y),showIcon:n,showBadge:o,variant:h||"default"})]},`${j.type}-${y}`))}),k&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"w-px h-6 bg-border mx-1","aria-hidden":"true"}),e.jsxs(L,{variant:"ghost",size:h==="compact"?"sm":"default",onClick:p,className:w("gap-2",h==="compact"&&"h-7 px-2 text-xs"),children:[e.jsx(T.X,{className:"h-3 w-3"}),"Réinitialiser"]})]})]}),S&&!k&&e.jsxs(He,{variant:"secondary",className:"gap-1",children:[e.jsx(T.Filter,{className:"h-3 w-3"}),"Filtré"]})]})});Bo.displayName="WakaAdmincrumb";function Ph(){const[t,a]=i.useState(),[r,s]=i.useState(),[n,o]=i.useState(),l=i.useCallback((h,m)=>{h===0?(a(m.id?m:void 0),s(void 0),o(void 0)):h===1?(s(m.id?m:void 0),o(void 0)):h===2&&o(m.id?m:void 0)},[]),d=i.useCallback(()=>{a(void 0),s(void 0),o(void 0)},[]);return{partner:t,network:r,customer:n,handleLevelChange:l,reset:d}}const Mh=({images:t,autoplay:a=!1,autoplayInterval:r=3e3,showIndicators:s=!0,showNavigation:n=!0,showThumbnails:o=!1,showFullscreen:l=!1,showDownload:d=!1,showShare:h=!1,showCounter:m=!1,showProgress:p=!1,transition:f="fade",layout:x="default",theme:S="auto",aspectRatio:k="16/9",maxHeight:j,className:y,imageClassName:b,indicatorClassName:u,navigationClassName:c,thumbnailClassName:g,overlayClassName:v,counterClassName:N,progressClassName:R,onImageChange:$,onImageClick:P,onFullscreenToggle:E,onDownload:M,onShare:O,onPlayPause:F,onThumbnailClick:V,onIndicatorClick:X,onNavigationClick:pe,onKeyboardNavigation:se,onTouchStart:G,onTouchEnd:U,onSwipeLeft:z,onSwipeRight:H,onSwipeUp:A,onSwipeDown:ce,onLoadStart:ee,onLoadEnd:te,onError:Re,onReady:ve,onDestroy:Ne,loop:ie=!0,pauseOnHover:Me=!0,pauseOnFocus:_=!0,pauseOnTouch:I=!0,keyboardNavigation:Y=!0,touchNavigation:le=!0,swipeThreshold:ne=50,animationDuration:de=300,preloadImages:Se=!0,lazyLoading:ye=!0,imageQuality:Oe="auto",placeholder:ht,errorImage:Ue,loadingSpinner:Be,emptyState:wt,customControls:Vt,customOverlay:Wt,customThumbnails:Ft,customIndicators:W,customNavigation:J,ariaLabel:De="Carrousel d'images",ariaLabelledBy:Ge,ariaDescribedBy:ga,role:es="region",virtualScrolling:Ia=!1,maxVisibleThumbnails:La=10,thumbnailSize:ba="medium",overlayOpacity:mi=.7,overlayGradient:fi,navigationSize:nt="medium",indicatorSize:jt="medium",indicatorShape:pt="circle",thumbnailAspectRatio:xa="1/1",onMount:Oa,onUnmount:_a,onBeforeChange:tt,onAfterChange:za})=>{const[Xe,Ht]=C.useState(0),[Ye,ot]=C.useState(a),[Nt,va]=C.useState(!1),[ts,Va]=C.useState(!1),[ya,as]=C.useState(!1),[qt,Ut]=C.useState(null),[hi,St]=C.useState(null),[Je,wa]=C.useState(new Set),[ja,Na]=C.useState(0),re=C.useRef(null),B=C.useRef(null),we=C.useRef([]),Ae=C.useRef(null),kt=C.useRef(0),ke=t&&t.length>0,Te=Math.max(0,Math.min(Xe,t.length-1)),ae=ke?t[Te]:null,Ct=C.useMemo(()=>{switch(k){case"16/9":return"aspect-video";case"4/3":return"aspect-[4/3]";case"1/1":return"aspect-square";case"3/2":return"aspect-[3/2]";default:return"aspect-video"}},[k]),gt=C.useMemo(()=>S==="auto"?"":S==="dark"?"dark":"light",[S]),Bt=C.useCallback(()=>{re.current&&clearInterval(re.current),Ye&&ke&&t.length>1&&(re.current=setInterval(()=>{Ht(q=>ie?(q+1)%t.length:Math.min(q+1,t.length-1))},r))},[Ye,ke,t.length,r,ie]),_e=C.useCallback(()=>{re.current&&(clearInterval(re.current),re.current=null)},[]),rs=C.useCallback(()=>{if(!Ye||!a)return;const q=Date.now(),oe=()=>{const $t=(Date.now()-q)/r*100;Na(Math.min($t,100)),$t<100&&requestAnimationFrame(oe)};requestAnimationFrame(oe)},[Ye,a,r]);C.useEffect(()=>(Ye?(Bt(),rs()):(_e(),Na(0)),()=>_e()),[Ye,Bt,_e,rs]);const Gt=C.useCallback(()=>{if(!ke)return;const q=ie?(Xe-1+t.length)%t.length:Math.max(Xe-1,0);tt&&!tt(Xe,q)||(Ht(q),pe?.("prev"))},[ke,Xe,t.length,ie,tt,pe]),Xt=C.useCallback(()=>{if(!ke)return;const q=ie?(Xe+1)%t.length:Math.min(Xe+1,t.length-1);tt&&!tt(Xe,q)||(Ht(q),pe?.("next"))},[ke,Xe,t.length,ie,tt,pe]),ss=C.useCallback(q=>{!ke||q<0||q>=t.length||tt&&!tt(Xe,q)||(Ht(q),X?.(q))},[ke,Xe,t.length,tt,X]),pi=C.useCallback(q=>{if(!Y)return;const oe=q.key;switch(se?.(oe),oe){case"ArrowLeft":q.preventDefault(),Gt();break;case"ArrowRight":q.preventDefault(),Xt();break;case"ArrowUp":q.preventDefault(),A?.();break;case"ArrowDown":q.preventDefault(),ce?.();break;case" ":q.preventDefault(),ot(ze=>!ze),F?.(!Ye);break;case"Escape":Nt&&(va(!1),E?.(!1));break;case"f":case"F":l&&va(ze=>(E?.(!ze),!ze));break}},[Y,Gt,Xt,se,A,ce,Ye,F,Nt,l,E]),gi=C.useCallback(q=>{if(!le)return;const oe=q.touches[0];Ut({x:oe.clientX,y:oe.clientY}),kt.current=Date.now(),G?.(q),I&&ot(!1)},[le,G,I]),bi=C.useCallback(q=>{if(!le||!qt)return;const oe=q.changedTouches[0];St({x:oe.clientX,y:oe.clientY}),U?.(q);const ze=oe.clientX-qt.x,$t=oe.clientY-qt.y;Date.now()-kt.current,Math.abs(ze)>Math.abs($t)&&Math.abs(ze)>ne?ze>0?(H?.(),Gt()):(z?.(),Xt()):Math.abs($t)>ne&&($t>0?ce?.():A?.()),Ut(null),St(null)},[le,qt,U,ne,H,z,ce,A,Gt,Xt]),xi=C.useCallback(q=>{wa(oe=>new Set([...oe,q])),Va(!1),te?.(q)},[te]),vi=C.useCallback((q,oe)=>{as(!0),Va(!1),Re?.(q,oe)},[Re]);C.useEffect(()=>{ae&&($?.(Te,ae),za?.(Te))},[Te,ae,$,za]);const yi=C.useCallback(()=>{ae&&P?.(ae,Te)},[ae,Te,P]),bt=C.useCallback(q=>{q.stopPropagation()},[]),wi=C.useCallback(()=>{va(q=>(E?.(!q),!q))},[E]),ji=C.useCallback(()=>{ae&&M?.(ae,Te)},[ae,Te,M]),Ni=C.useCallback(()=>{ae&&O?.(ae,Te)},[ae,Te,O]),Si=C.useCallback(()=>{Me&&ot(!1)},[Me]),ki=C.useCallback(()=>{Me&&a&&ot(!0)},[Me,a]),Ci=C.useCallback(()=>{_&&ot(!1)},[_]),Ti=C.useCallback(()=>{_&&a&&ot(!0)},[_,a]);if(C.useEffect(()=>(Oa?.(),ve?.(),()=>{_a?.(),Ne?.(),_e()}),[Oa,ve,_a,Ne,_e]),C.useEffect(()=>()=>_e(),[_e]),!ke)return e.jsx("div",{className:w("flex items-center justify-center h-64 bg-gray-100 rounded-lg",y),children:wt||e.jsxs("div",{className:"text-center",children:[e.jsx("p",{className:"text-gray-500 mb-2",children:"Aucune image à afficher"}),e.jsx("p",{className:"text-sm text-gray-400",children:"Ajoutez des images pour commencer"})]})});const Ei=w("waka-carousel relative w-full mx-auto bg-black rounded-lg overflow-hidden","focus:outline-none focus:ring-2 focus:ring-blue-500",Nt&&"fixed inset-0 z-50 rounded-none",gt,y),Di=w("relative",Ct,b),Pi=w("absolute bottom-0 left-0 right-0 bg-gradient-to-t from-black/70 to-transparent p-4",v);return e.jsxs("div",{ref:B,className:Ei,style:{maxHeight:j},tabIndex:0,onKeyDown:pi,onTouchStart:gi,onTouchEnd:bi,onMouseEnter:Si,onMouseLeave:ki,onFocus:Ci,onBlur:Ti,role:es,"aria-label":De,"aria-labelledby":Ge,"aria-describedby":ga,children:[e.jsxs("div",{className:Di,children:[ts&&Be&&e.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-black/50 z-20",children:Be}),ya&&Ue?e.jsx("img",{src:Ue,alt:"Erreur de chargement",className:w("w-full h-full object-cover",b)}):ae?e.jsx("img",{ref:q=>we.current[Te]=q,src:ae.src,alt:ae.alt,className:w("w-full h-full object-cover transition-opacity duration-300",b),onClick:yi,loading:ye?"lazy":"eager",onLoad:()=>xi(Te),onError:q=>vi(Te,new Error("Erreur de chargement de l'image"))}):null,ae&&(ae.title||ae.description||ae.caption)&&e.jsxs("div",{className:Pi,children:[ae.title&&e.jsx("h3",{className:"text-white text-lg font-semibold mb-1",children:ae.title}),ae.description&&e.jsx("p",{className:"text-white/90 text-sm mb-2",children:ae.description}),ae.caption&&e.jsx("p",{className:"text-white/80 text-xs",children:ae.caption})]}),Vt&&e.jsx("div",{className:"absolute inset-0 z-10",children:Vt}),Wt&&e.jsx("div",{className:"absolute inset-0 z-10",children:Wt}),n&&t.length>1&&e.jsx(e.Fragment,{children:J?e.jsx("div",{className:"absolute inset-0 z-10",children:J}):e.jsxs(e.Fragment,{children:[e.jsx("button",{onClick:q=>{bt(q),Gt()},className:w("absolute left-2 top-1/2 -translate-y-1/2 z-10","bg-black/50 hover:bg-black/70 text-white p-2 rounded-full","transition-all duration-200 hover:scale-110","focus:outline-none focus:ring-2 focus:ring-white",nt==="small"&&"p-1",nt==="large"&&"p-3",c),"aria-label":"Image précédente",children:e.jsx(T.ChevronLeft,{className:w("w-5 h-5",nt==="small"&&"w-4 h-4",nt==="large"&&"w-6 h-6")})}),e.jsx("button",{onClick:q=>{bt(q),Xt()},className:w("absolute right-2 top-1/2 -translate-y-1/2 z-10","bg-black/50 hover:bg-black/70 text-white p-2 rounded-full","transition-all duration-200 hover:scale-110","focus:outline-none focus:ring-2 focus:ring-white",nt==="small"&&"p-1",nt==="large"&&"p-3",c),"aria-label":"Image suivante",children:e.jsx(T.ChevronRight,{className:w("w-5 h-5",nt==="small"&&"w-4 h-4",nt==="large"&&"w-6 h-6")})})]})}),a&&t.length>1&&e.jsx("button",{onClick:q=>{bt(q),ot(oe=>(F?.(!oe),!oe))},className:w("absolute top-2 right-2 z-10","bg-black/50 hover:bg-black/70 text-white p-2 rounded-full","transition-all duration-200 hover:scale-110","focus:outline-none focus:ring-2 focus:ring-white"),"aria-label":Ye?"Pause":"Lecture",children:Ye?e.jsx(T.Pause,{className:"w-4 h-4"}):e.jsx(T.Play,{className:"w-4 h-4"})}),l&&e.jsx("button",{onClick:q=>{bt(q),wi()},className:w("absolute top-2 left-2 z-10","bg-black/50 hover:bg-black/70 text-white p-2 rounded-full","transition-all duration-200 hover:scale-110","focus:outline-none focus:ring-2 focus:ring-white"),"aria-label":Nt?"Quitter le plein écran":"Plein écran",children:Nt?e.jsx(T.X,{className:"w-4 h-4"}):e.jsx(T.Maximize2,{className:"w-4 h-4"})}),d&&ae?.downloadUrl&&e.jsx("button",{onClick:q=>{bt(q),ji()},className:w("absolute top-2 right-12 z-10","bg-black/50 hover:bg-black/70 text-white p-2 rounded-full","transition-all duration-200 hover:scale-110","focus:outline-none focus:ring-2 focus:ring-white"),"aria-label":"Télécharger l'image",children:e.jsx(T.Download,{className:"w-4 h-4"})}),h&&ae?.shareUrl&&e.jsx("button",{onClick:q=>{bt(q),Ni()},className:w("absolute top-2 right-20 z-10","bg-black/50 hover:bg-black/70 text-white p-2 rounded-full","transition-all duration-200 hover:scale-110","focus:outline-none focus:ring-2 focus:ring-white"),"aria-label":"Partager l'image",children:e.jsx(T.Share2,{className:"w-4 h-4"})}),m&&e.jsxs("div",{className:w("absolute top-2 left-1/2 -translate-x-1/2 z-10","bg-black/50 text-white px-3 py-1 rounded-full text-sm",N),children:[Te+1," / ",t.length]}),p&&Ye&&e.jsx("div",{className:w("absolute bottom-0 left-0 right-0 h-1 bg-black/30",R),children:e.jsx("div",{ref:Ae,className:"h-full bg-white transition-all duration-100",style:{width:`${ja}%`}})})]}),s&&t.length>1&&e.jsx("div",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 flex space-x-2",children:W?e.jsx("div",{className:"flex space-x-2",children:W}):t.map((q,oe)=>e.jsx("button",{onClick:ze=>{bt(ze),ss(oe)},className:w("transition-all duration-200","focus:outline-none focus:ring-2 focus:ring-white",pt==="circle"&&"rounded-full",pt==="square"&&"rounded",pt==="diamond"&&"rotate-45",pt==="line"&&"rounded-none",jt==="small"&&"w-2 h-2",jt==="medium"&&"w-3 h-3",jt==="large"&&"w-4 h-4",pt==="line"&&jt==="small"&&"w-8 h-1",pt==="line"&&jt==="medium"&&"w-12 h-1",pt==="line"&&jt==="large"&&"w-16 h-1",oe===Te?"bg-white":"bg-white/50 hover:bg-white/70",u),"aria-label":`Aller à l'image ${oe+1}`},oe))}),o&&t.length>1&&e.jsx("div",{className:"flex space-x-2 p-4 bg-gray-100 overflow-x-auto",children:Ft?e.jsx("div",{className:"flex space-x-2",children:Ft}):t.map((q,oe)=>e.jsx("button",{onClick:ze=>{bt(ze),ss(oe),V?.(oe)},className:w("flex-shrink-0 rounded overflow-hidden","border-2 transition-all duration-200","focus:outline-none focus:ring-2 focus:ring-blue-500",ba==="small"&&"w-12 h-12",ba==="medium"&&"w-16 h-16",ba==="large"&&"w-20 h-20",xa==="1/1"&&"aspect-square",xa==="4/3"&&"aspect-[4/3]",xa==="16/9"&&"aspect-video",oe===Te?"border-blue-500":"border-gray-300 hover:border-gray-400",g),children:e.jsx("img",{src:q.src,alt:q.alt,className:"w-full h-full object-cover",loading:"lazy"})},oe))})]})};let $s=!1,nr=null;!$s&&!lt.isInitialized&&($s=!0,nr=lt.use(et.initReactI18next).init({resources:{},fallbackLng:"fr",lng:"fr",defaultNS:"translation",ns:["translation"],debug:!1,interpolation:{escapeValue:!1},react:{useSuspense:!1},ignoreJSONStructure:!0,returnNull:!1,returnEmptyString:!1,returnObjects:!1,load:"languageOnly",detection:void 0,initImmediate:!0}).then(()=>(console.log("[i18n] Initialized successfully"),lt)).catch(t=>(console.error("[i18n] Failed to initialize:",t),lt)));function Go(){const[t,a]=C.useState(lt.isInitialized);return C.useEffect(()=>{if(lt.isInitialized){a(!0);return}if(nr)nr.then(()=>{a(!0)});else{const r=setTimeout(()=>{a(!0)},100);return()=>clearTimeout(r)}},[]),!t||!lt.isInitialized?{t:r=>r,i18n:lt,ready:!1}:et.useTranslation()}ft.registerLocale("fr",Ot);ft.registerLocale("en",tn);ft.registerLocale("es",an);ft.registerLocale("de",en);ft.registerLocale("it",rn);ft.registerLocale("pt",nn);ft.registerLocale("ja",sn);ft.registerLocale("zh",on);const Gr=i.forwardRef(({value:t,onChange:a,placeholder:r,disabled:s=!1,className:n,variant:o="date",format:l,minDate:d,maxDate:h,showSeconds:m=!1,showClear:p=!0,showPresets:f=!1,presets:x,locale:S="fr",timeFormat:k="24h",size:j="md",error:y,label:b,required:u=!1,inline:c=!1,monthsShown:g=1,timeIntervals:v=15,validation:N,showWeekNumbers:R=!1,showTodayButton:$=!0,showSelectionInfo:P=!1,allowTimeRange:E=!1,timezone:M,onBeforeChange:O,onAfterChange:F,renderDay:V,popoverClassName:X,disableAnimations:pe=!1,readOnly:se=!1,id:G,name:U,autoFocus:z=!1},H)=>{const{t:A}=Go(),[ce,ee]=i.useState(!1),[te,Re]=i.useState(o==="range"&&t&&!("from"in t)?{from:t,to:void 0}:t),[ve,Ne]=i.useState(null),[ie,Me]=i.useState(null),I={fr:Ot,en:tn,es:an,de:en,it:rn,pt:nn,ja:sn,zh:on}[S]||Ot,Y=[{label:A?.("today")||"Aujourd'hui",value:()=>new Date},{label:A?.("yesterday")||"Hier",value:()=>D.subDays(new Date,1)},{label:A?.("thisWeek")||"Cette semaine",range:()=>({from:D.startOfWeek(new Date,{locale:I}),to:D.endOfWeek(new Date,{locale:I})})},{label:A?.("lastWeek")||"Semaine dernière",range:()=>({from:D.startOfWeek(D.subWeeks(new Date,1),{locale:I}),to:D.endOfWeek(D.subWeeks(new Date,1),{locale:I})})},{label:A?.("thisMonth")||"Ce mois",range:()=>({from:D.startOfMonth(new Date),to:D.endOfMonth(new Date)})},{label:A?.("lastMonth")||"Mois dernier",range:()=>({from:D.startOfMonth(D.subMonths(new Date,1)),to:D.endOfMonth(D.subMonths(new Date,1))})},{label:A?.("last7Days")||"7 derniers jours",range:()=>({from:D.subDays(new Date,7),to:new Date})},{label:A?.("last30Days")||"30 derniers jours",range:()=>({from:D.subDays(new Date,30),to:new Date})},{label:A?.("thisYear")||"Cette année",range:()=>({from:D.startOfYear(new Date),to:D.endOfYear(new Date)})}],le=x||(f?Y:[]),ne={sm:"h-8 px-3 text-xs",md:"h-10 px-4 text-sm",lg:"h-12 px-5 text-base"},Se=l||(()=>{switch(o){case"time":return m?k==="12h"?"h:mm:ss a":"HH:mm:ss":k==="12h"?"h:mm a":"HH:mm";case"datetime":return m?k==="12h"?"PPP h:mm:ss a":"PPP HH:mm:ss":k==="12h"?"PPP h:mm a":"PPP HH:mm";case"range":return"PPP";case"multiple":return"PPP";default:return"PPP"}})(),ye=W=>{if(!N)return null;if(d&&D.isBefore(W,D.startOfDay(d)))return A?.("dateBeforeMin")||`Date antérieure au ${D.format(d,Se,{locale:I})}`;if(h&&D.isAfter(W,D.endOfDay(h)))return A?.("dateAfterMax")||`Date postérieure au ${D.format(h,Se,{locale:I})}`;if(N.disabledDates?.some(J=>D.isEqual(D.startOfDay(J),D.startOfDay(W)))||N.disabledDatesFn?.(W))return N.message||A?.("dateDisabled")||"Date désactivée";if(N.disabledDaysOfWeek?.includes(W.getDay()))return N.message||A?.("dayOfWeekDisabled")||"Jour de la semaine désactivé";if(N.validate){const J=N.validate(W);if(J===!1)return N.message||A?.("invalidDate")||"Date invalide";if(typeof J=="string")return J}return null},Oe=W=>{if(se)return;let J=null;if(o==="range"){if(Array.isArray(W)&&W[0]&&W[1])J={from:W[0],to:W[1]};else if(W){const De=te;De?.from&&!De.to?J={from:De.from,to:W}:J={from:W,to:void 0}}}else if(o==="multiple")if(Array.isArray(te)){const De=[...te],Ge=De.findIndex(ga=>D.isEqual(D.startOfDay(ga),D.startOfDay(W)));Ge>=0?De.splice(Ge,1):De.push(W),J=De}else J=W?[W]:[];else J=W;if(!(O&&!O(J))){if(J&&!J.from&&!Array.isArray(J)){const De=ye(J);if(De){Ne(De);return}}Ne(null),Re(J),a?.(J),F?.(J),o!=="range"&&o!=="multiple"&&!c&&ee(!1)}},ht=W=>{if(W.range){const J=typeof W.range=="function"?W.range():W.range;Oe([J.from,J.to])}else if(W.value){const J=typeof W.value=="function"?W.value():W.value;Oe(J)}c||ee(!1)},Ue=W=>{W&&W.stopPropagation(),!se&&(Re(null),Ne(null),a?.(null),F?.(null))},Be=()=>{Oe(new Date)},wt=()=>{if(!te)return r||A?.("selectDate")||"Sélectionner une date";try{if(o==="range"){const W=te;return W.from&&W.to?`${D.format(W.from,Se,{locale:I})} - ${D.format(W.to,Se,{locale:I})}`:W.from?`${D.format(W.from,Se,{locale:I})} - ...`:r||A?.("selectDateRange")||"Sélectionner une période"}if(o==="multiple"){const W=te;return W.length===0?r||A?.("selectDates")||"Sélectionner des dates":W.length===1?D.format(W[0],Se,{locale:I}):`${W.length} ${A?.("datesSelected")||"dates sélectionnées"}`}return D.format(te,Se,{locale:I})}catch(W){return console.error("Error formatting date:",W),r||A?.("selectDate")||"Sélectionner une date"}},Vt=W=>!!(d&&D.isBefore(W,D.startOfDay(d))||h&&D.isAfter(W,D.endOfDay(h))||N?.disabledDates?.some(J=>D.isEqual(D.startOfDay(J),D.startOfDay(W)))||N?.disabledDatesFn?.(W)||N?.disabledDaysOfWeek?.includes(W.getDay())),Wt=W=>!!(N?.highlightedDates?.some(J=>D.isEqual(D.startOfDay(J),D.startOfDay(W)))||N?.highlightedDatesFn?.(W)),Ft=()=>{const W={selected:o==="range"?te?.from:o==="multiple"?void 0:te,onChange:Oe,startDate:o==="range"?te?.from:void 0,endDate:o==="range"?te?.to:void 0,selectsRange:o==="range",selectsMultiple:o==="multiple",highlightDates:o==="multiple"?te:void 0,showTimeSelect:o==="time"||o==="datetime",showTimeSelectOnly:o==="time",timeFormat:m?k==="12h"?"h:mm:ss aa":"HH:mm:ss":k==="12h"?"h:mm aa":"HH:mm",timeIntervals:v,timeCaption:A?.("time")||"Heure",dateFormat:Se,locale:S,placeholderText:r,disabled:s,minDate:d,maxDate:h,inline:c,monthsShown:o==="range"?Math.max(2,g):g,showWeekNumbers:R,filterDate:J=>!Vt(J),dayClassName:J=>{const De=[];if(Wt(J)&&De.push("highlighted-date"),ie&&o==="range"){const Ge=te;Ge?.from&&!Ge.to&&D.isWithinInterval(J,{start:Ge.from<ie?Ge.from:ie,end:Ge.from>ie?Ge.from:ie})&&De.push("in-selecting-range")}return De.join(" ")},onDayMouseEnter:J=>Me(J),calendarClassName:w("waka-datepicker",pe&&"no-animations"),wrapperClassName:"w-full",autoFocus:z};return e.jsxs("div",{className:"flex gap-3",children:[f&&le.length>0&&e.jsxs("div",{className:"flex flex-col gap-1 min-w-[150px] border-r border-border pr-3",children:[e.jsx(ge,{className:"text-xs font-semibold text-muted-foreground mb-1",children:A?.("quickSelection")||"Sélection rapide"}),e.jsx(Lt,{className:"h-[300px]",children:e.jsx("div",{className:"space-y-1",children:le.map((J,De)=>e.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-xs",onClick:()=>ht(J),children:J.label},De))})})]}),e.jsxs("div",{className:"flex-1",children:[e.jsx(ft,{...W}),P&&te&&e.jsxs("div",{className:"mt-3 p-2 bg-muted rounded-md text-xs space-y-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(T.Info,{className:"h-3 w-3 text-muted-foreground"}),e.jsxs("span",{className:"font-medium",children:[A?.("selection")||"Sélection"," :"]})]}),e.jsx("div",{className:"text-muted-foreground pl-5",children:wt()})]})]})]})};return c?e.jsxs("div",{ref:H,className:w("space-y-2",n),id:G,children:[b&&e.jsxs(ge,{className:"text-sm font-medium text-foreground",children:[b,u&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx("div",{className:"border border-border rounded-lg p-4 bg-card",children:Ft()}),(y||ve)&&e.jsxs("div",{className:"flex items-center gap-1.5 text-sm text-destructive",children:[e.jsx(T.AlertCircle,{className:"h-3.5 w-3.5"}),e.jsx("span",{children:y||ve})]})]}):e.jsxs("div",{ref:H,className:w("space-y-2",n),id:G,children:[b&&e.jsxs(ge,{htmlFor:`${G}-input`,className:"text-sm font-medium text-foreground",children:[b,u&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsxs(xt,{open:ce,onOpenChange:ee,children:[e.jsx(vt,{asChild:!0,children:e.jsxs(L,{id:`${G}-input`,name:U,variant:"outline",disabled:s||se,className:w("w-full justify-between text-left font-normal",!te&&"text-muted-foreground",ne[j],(y||ve)&&"border-destructive focus-visible:ring-destructive",se&&"cursor-default opacity-70"),"aria-label":b||r,"aria-invalid":!!(y||ve),"aria-required":u,children:[e.jsxs("span",{className:"flex items-center gap-2 flex-1 truncate",children:[o==="time"?e.jsx(T.Clock,{className:"h-4 w-4 flex-shrink-0"}):e.jsx(T.Calendar,{className:"h-4 w-4 flex-shrink-0"}),e.jsx("span",{className:"truncate",children:wt()})]}),e.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0 ml-2",children:[te&&p&&!se&&e.jsx(ar,{children:e.jsxs(rr,{children:[e.jsx(sr,{asChild:!0,children:e.jsx("div",{className:"h-5 w-5 rounded hover:bg-destructive/10 flex items-center justify-center cursor-pointer",onClick:Ue,role:"button","aria-label":A?.("clear")||"Effacer",children:e.jsx(T.X,{className:"h-3 w-3 text-muted-foreground hover:text-destructive"})})}),e.jsx(Da,{children:e.jsx("p",{children:A?.("clear")||"Effacer"})})]})}),ve&&e.jsx(ar,{children:e.jsxs(rr,{children:[e.jsx(sr,{asChild:!0,children:e.jsx(T.AlertCircle,{className:"h-4 w-4 text-destructive"})}),e.jsx(Da,{children:e.jsx("p",{children:ve})})]})})]})]})}),e.jsxs(ct,{className:w("w-auto p-0",X),align:"start",sideOffset:4,children:[e.jsx("div",{className:"p-4",children:Ft()}),($||p)&&e.jsxs(e.Fragment,{children:[e.jsx(At,{}),e.jsxs("div",{className:"flex items-center justify-between p-3 gap-2",children:[$&&e.jsxs(L,{variant:"outline",size:"sm",onClick:Be,disabled:s||se,children:[e.jsx(T.Calendar,{className:"h-3.5 w-3.5 mr-1.5"}),A?.("today")||"Aujourd'hui"]}),p&&te&&e.jsxs(L,{variant:"outline",size:"sm",onClick:Ue,disabled:s||se,className:"ml-auto",children:[e.jsx(T.X,{className:"h-3.5 w-3.5 mr-1.5"}),A?.("clear")||"Effacer"]})]})]})]})]}),(y||ve)&&e.jsxs("div",{className:"flex items-center gap-1.5 text-sm text-destructive",children:[e.jsx(T.AlertCircle,{className:"h-3.5 w-3.5"}),e.jsx("span",{children:y||ve})]})]})});Gr.displayName="WakaDateTimePicker";function Rh({name:t,control:a,defaultValue:r,...s}){return e.jsx(On,{name:t,control:a,defaultValue:r,render:({field:n,fieldState:o})=>e.jsx(Gr,{...s,value:n.value,onChange:n.onChange,error:o.error?.message})})}function Ah(t){return i.useMemo(()=>({formatDateForSubmit:r=>r?r.toISOString():null,formatRangeForSubmit:r=>!r?.from||!r?.to?null:{from:r.from.toISOString(),to:r.to.toISOString()},parseDateFromServer:r=>r?new Date(r):null,parseRangeFromServer:r=>r?{from:new Date(r.from),to:new Date(r.to)}:null}),[])}const Fh={info:"bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-200",error:"bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-200"},Ta=i.forwardRef(({notification:t,onMarkAsRead:a,onDelete:r},s)=>{const n=o=>{const d=new Date().getTime()-o.getTime(),h=Math.floor(d/6e4),m=Math.floor(d/36e5),p=Math.floor(d/864e5);return h<1?"À l'instant":h<60?`Il y a ${h} min`:m<24?`Il y a ${m}h`:p<7?`Il y a ${p}j`:o.toLocaleDateString("fr-FR")};return e.jsxs("div",{ref:s,className:w("flex gap-3 p-4 hover:bg-muted/50 transition-colors border-l-4",t.read?"border-l-transparent opacity-60":"border-l-primary","relative group"),children:[e.jsx("div",{className:w("flex-shrink-0 w-10 h-10 rounded-full flex items-center justify-center",Fh[t.type]),children:t.icon||e.jsx(T.Bell,{className:"h-5 w-5"})}),e.jsxs("div",{className:"flex-1 min-w-0 space-y-1",children:[e.jsxs("div",{className:"flex items-start justify-between gap-2",children:[e.jsx("h4",{className:w("text-sm font-semibold",t.read&&"font-normal"),children:t.title}),e.jsx("span",{className:"text-xs text-muted-foreground whitespace-nowrap",children:n(t.timestamp)})]}),e.jsx("p",{className:"text-sm text-muted-foreground line-clamp-2",children:t.message}),t.action&&e.jsx(L,{variant:"link",size:"sm",className:"h-auto p-0 text-primary",onClick:t.action.onClick,children:t.action.label})]}),e.jsxs("div",{className:"flex-shrink-0 flex gap-1 opacity-0 group-hover:opacity-100 transition-opacity",children:[!t.read&&a&&e.jsxs(L,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:()=>a(t.id),children:[e.jsx(T.Check,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Marquer comme lu"})]}),r&&e.jsxs(L,{variant:"ghost",size:"icon",className:"h-8 w-8 text-destructive hover:text-destructive",onClick:()=>r(t.id),children:[e.jsx(T.Trash2,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Supprimer"})]})]})]})});Ta.displayName="NotificationItem";const Xo=i.forwardRef(({notifications:t,onMarkAsRead:a,onMarkAllAsRead:r,onDelete:s,onDeleteAll:n,onSettingsClick:o,maxHeight:l="400px",className:d,iconClassName:h,badgeClassName:m,showBadge:p=!0,showTabs:f=!0,emptyMessage:x="Aucune notification",emptyIcon:S},k)=>{const[j,y]=i.useState(!1),[b,u]=i.useState("all"),c=t.filter(N=>!N.read).length,g=i.useMemo(()=>b==="all"?t:b==="unread"?t.filter(N=>!N.read):t,[t,b]),v=()=>e.jsxs("div",{className:"flex flex-col items-center justify-center py-12 px-4 text-center",children:[S||e.jsx(T.Bell,{className:"h-12 w-12 text-muted-foreground/50 mb-4"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:x})]});return e.jsxs(xt,{open:j,onOpenChange:y,children:[e.jsx(vt,{asChild:!0,children:e.jsxs(L,{ref:k,variant:"ghost",size:"icon",className:w("relative",d),children:[e.jsx(T.Bell,{className:w("h-5 w-5",h)}),p&&c>0&&e.jsx(He,{variant:"destructive",className:w("absolute -top-1 -right-1 h-5 min-w-[20px] flex items-center justify-center p-0 text-xs",m),children:c>99?"99+":c}),e.jsxs("span",{className:"sr-only",children:["Notifications (",c," non lues)"]})]})}),e.jsxs(ct,{className:"w-[380px] p-0",align:"end",sideOffset:8,children:[e.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[e.jsxs("div",{children:[e.jsx("h3",{className:"font-semibold text-base",children:"Notifications"}),c>0&&e.jsxs("p",{className:"text-xs text-muted-foreground",children:[c," non ",c>1?"lues":"lue"]})]}),e.jsxs("div",{className:"flex gap-1",children:[r&&c>0&&e.jsxs(L,{variant:"ghost",size:"sm",className:"h-8 text-xs",onClick:r,children:[e.jsx(T.Check,{className:"h-3 w-3 mr-1"}),"Tout marquer"]}),o&&e.jsxs(L,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:o,children:[e.jsx(T.Settings,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Paramètres"})]})]})]}),f&&t.length>0&&e.jsxs(_r,{value:b,onValueChange:u,className:"w-full",children:[e.jsxs($a,{className:"w-full rounded-none border-b bg-transparent p-0",children:[e.jsxs(ca,{value:"all",className:"flex-1 rounded-none data-[state=active]:border-b-2 data-[state=active]:border-primary",children:["Toutes (",t.length,")"]}),e.jsxs(ca,{value:"unread",className:"flex-1 rounded-none data-[state=active]:border-b-2 data-[state=active]:border-primary",children:["Non lues (",c,")"]})]}),e.jsx(ua,{value:"all",className:"m-0",children:e.jsx(Lt,{className:"h-[400px]",style:{maxHeight:l},children:e.jsx("div",{className:"p-0",children:g.length===0?e.jsx(v,{}):e.jsx("div",{className:"divide-y",children:g.map(N=>e.jsx(Ta,{notification:N,onMarkAsRead:a,onDelete:s},N.id))})})})}),e.jsx(ua,{value:"unread",className:"m-0",children:e.jsx(Lt,{className:"h-[400px]",style:{maxHeight:l},children:e.jsx("div",{className:"p-0",children:g.length===0?e.jsx(v,{}):e.jsx("div",{className:"divide-y",children:g.map(N=>e.jsx(Ta,{notification:N,onMarkAsRead:a,onDelete:s},N.id))})})})})]}),!f&&e.jsx(Lt,{className:"h-[400px]",style:{maxHeight:l},children:e.jsx("div",{className:"p-0",children:t.length===0?e.jsx(v,{}):e.jsx("div",{className:"divide-y",children:t.map(N=>e.jsx(Ta,{notification:N,onMarkAsRead:a,onDelete:s},N.id))})})}),t.length>0&&n&&e.jsxs(e.Fragment,{children:[e.jsx(At,{}),e.jsx("div",{className:"p-2",children:e.jsxs(L,{variant:"ghost",size:"sm",className:"w-full text-destructive hover:text-destructive",onClick:n,children:[e.jsx(T.Trash2,{className:"h-3 w-3 mr-2"}),"Tout supprimer"]})})]})]})]})});Xo.displayName="WakaNotifications";function $h(t=[]){const[a,r]=i.useState(t),s=i.useCallback(m=>{const p={...m,id:`notification-${Date.now()}-${Math.random()}`,timestamp:new Date,read:!1};r(f=>[p,...f])},[]),n=i.useCallback(m=>{r(p=>p.map(f=>f.id===m?{...f,read:!0}:f))},[]),o=i.useCallback(()=>{r(m=>m.map(p=>({...p,read:!0})))},[]),l=i.useCallback(m=>{r(p=>p.filter(f=>f.id!==m))},[]),d=i.useCallback(()=>{r([])},[]),h=i.useMemo(()=>a.filter(m=>!m.read).length,[a]);return{notifications:a,addNotification:s,markAsRead:n,markAllAsRead:o,deleteNotification:l,deleteAllNotifications:d,unreadCount:h}}const Ih=Pe.cva("relative inline-flex items-center justify-center",{variants:{size:{sm:"w-12 h-12",md:"w-16 h-16",lg:"w-24 h-24",xl:"w-32 h-32"}},defaultVariants:{size:"md"}}),Yo=i.forwardRef(({className:t,size:a,showAsteroids:r=!0,speed:s=2,rocketColor:n="text-primary",asteroidColor:o="text-muted-foreground",...l},d)=>{const m={sm:{orbit:40,rocket:16,asteroid:6},md:{orbit:56,rocket:20,asteroid:8},lg:{orbit:88,rocket:28,asteroid:12},xl:{orbit:120,rocket:36,asteroid:16}}[a||"md"],p=m.orbit,f=m.orbit;return e.jsxs("div",{ref:d,className:w(Ih({size:a,className:t})),role:"status","aria-label":"Chargement en cours",...l,children:[e.jsxs("svg",{width:m.orbit*2,height:m.orbit*2,viewBox:`0 0 ${m.orbit*2} ${m.orbit*2}`,className:"overflow-visible",children:[e.jsx("circle",{cx:p,cy:f,r:m.orbit-m.rocket,fill:"none",stroke:"currentColor",strokeWidth:"1",strokeDasharray:"4 4",className:"opacity-20"}),r&&e.jsxs("g",{className:o,children:[e.jsx("g",{style:{animation:`waka-float ${s*1.5}s ease-in-out infinite`,transformOrigin:`${p+m.orbit*.6}px ${f-m.orbit*.5}px`},children:e.jsx("polygon",{points:Xa(p+m.orbit*.6,f-m.orbit*.5,m.asteroid),fill:"currentColor",opacity:"0.3"})}),e.jsx("g",{style:{animation:`waka-float ${s*2}s ease-in-out infinite 0.5s`,transformOrigin:`${p-m.orbit*.7}px ${f+m.orbit*.4}px`},children:e.jsx("polygon",{points:Xa(p-m.orbit*.7,f+m.orbit*.4,m.asteroid*.8),fill:"currentColor",opacity:"0.3"})}),e.jsx("g",{style:{animation:`waka-float ${s*1.8}s ease-in-out infinite 1s`,transformOrigin:`${p-m.orbit*.8}px ${f-m.orbit*.2}px`},children:e.jsx("polygon",{points:Xa(p-m.orbit*.8,f-m.orbit*.2,m.asteroid*.6),fill:"currentColor",opacity:"0.3"})})]}),e.jsx("g",{className:n,style:{animation:`waka-orbit ${s}s linear infinite`,transformOrigin:`${p}px ${f}px`},children:e.jsxs("g",{transform:`translate(${p}, ${f-m.orbit+m.rocket/2})`,children:[e.jsx("path",{d:`M 0,-${m.rocket/2} L ${m.rocket/4},-${m.rocket/6} L ${m.rocket/4},${m.rocket/3} L 0,${m.rocket/2} L -${m.rocket/4},${m.rocket/3} L -${m.rocket/4},-${m.rocket/6} Z`,fill:"currentColor"}),e.jsx("circle",{cx:"0",cy:-m.rocket/6,r:m.rocket/8,fill:"white",opacity:"0.8"}),e.jsxs("g",{opacity:"0.8",children:[e.jsx("path",{d:`M -${m.rocket/6},${m.rocket/2} L -${m.rocket/8},${m.rocket/1.5} L 0,${m.rocket/2} Z`,fill:"#FF6B35",style:{animation:`waka-flicker ${s/4}s ease-in-out infinite`}}),e.jsx("path",{d:`M 0,${m.rocket/2} L ${m.rocket/8},${m.rocket/1.5} L ${m.rocket/6},${m.rocket/2} Z`,fill:"#FF6B35",style:{animation:`waka-flicker ${s/4}s ease-in-out infinite 0.1s`}}),e.jsx("path",{d:`M -${m.rocket/12},${m.rocket/2} L 0,${m.rocket/1.3} L ${m.rocket/12},${m.rocket/2} Z`,fill:"#FFA500",style:{animation:`waka-flicker ${s/4}s ease-in-out infinite 0.05s`}})]})]})}),[...Array(3)].map((x,S)=>e.jsx("circle",{cx:p+(S-1)*m.orbit*.3,cy:f-m.orbit*1.2,r:"1",fill:"currentColor",className:"opacity-40",style:{animation:`waka-twinkle ${s*1.5}s ease-in-out infinite ${S*.3}s`}},S))]}),e.jsx("style",{dangerouslySetInnerHTML:{__html:`
11
+ @keyframes waka-orbit {
12
+ from { transform: rotate(0deg); }
13
+ to { transform: rotate(360deg); }
14
+ }
15
+ @keyframes waka-float {
16
+ 0%, 100% { transform: translateY(0px) translateX(0px); }
17
+ 50% { transform: translateY(-10px) translateX(5px); }
18
+ }
19
+ @keyframes waka-flicker {
20
+ 0%, 100% { opacity: 0.8; transform: scaleY(1); }
21
+ 50% { opacity: 0.5; transform: scaleY(0.8); }
22
+ }
23
+ @keyframes waka-twinkle {
24
+ 0%, 100% { opacity: 0.4; transform: scale(1); }
25
+ 50% { opacity: 1; transform: scale(1.5); }
26
+ }
27
+ `}})]})});Yo.displayName="WakaSpinner";function Xa(t,a,r){const s=[];for(let o=0;o<6;o++){const l=o/6*Math.PI*2,d=r*(.7+Math.random()*.6),h=t+Math.cos(l)*d,m=a+Math.sin(l)*d;s.push([h,m])}return s.map(([o,l])=>`${o},${l}`).join(" ")}function Jo({s3Config:t,onSave:a,onDelete:r,onLoadTheme:s,existingThemes:n=[],className:o}){const{toast:l}=Br(),[d,h]=i.useState(""),[m,p]=i.useState(""),[f,x]=i.useState(""),[S,k]=i.useState("#3b82f6"),[j,y]=i.useState(""),[b,u]=i.useState(""),[c,g]=i.useState(""),[v,N]=i.useState(!1),[R,$]=i.useState(!1),[P,E]=i.useState(!1),[M,O]=i.useState(!1),[F,V]=i.useState(!1),[X,pe]=i.useState(null),[se,G]=i.useState([]),[U,z]=i.useState("1.0.0"),H=i.useRef(null),A=i.useCallback(_=>{if(!_.trim())return{valid:!1,error:"Le CSS ne peut pas être vide"};const I=_.includes(":root")||_.includes(".dark"),Y=_.includes("@theme inline");return!I&&!Y?{valid:!1,error:"Le CSS doit contenir :root, .dark ou @theme inline"}:_.includes("--")?{valid:!0}:{valid:!1,error:"Le CSS doit contenir des variables CSS (--variable)"}},[]),ce=i.useCallback(()=>{const _=A(b);if(!_.valid){l({title:"CSS invalide",description:_.error,variant:"destructive"});return}H.current&&H.current.parentNode&&H.current.parentNode.removeChild(H.current);const I=document.createElement("style");I.setAttribute("data-theme-preview",d),I.textContent=b,document.head.appendChild(I),H.current=I,document.documentElement.setAttribute("data-theme",d),$(!0),l({title:"Prévisualisation activée",description:`Le thème "${m}" est maintenant actif`})},[b,d,m,A,l]),ee=i.useCallback(()=>{H.current&&H.current.parentNode&&H.current.parentNode.removeChild(H.current),document.documentElement.removeAttribute("data-theme"),$(!1),l({title:"Prévisualisation arrêtée",description:"Thème par défaut restauré"})},[l]),te=i.useCallback(async()=>{const _=A(b);if(!_.valid){l({title:"CSS invalide",description:_.error,variant:"destructive"});return}if(!d||!m){l({title:"Informations manquantes",description:"Veuillez renseigner l'ID et le nom du thème",variant:"destructive"});return}N(!0);try{const{baseUrl:I,method:Y="PUT",headers:le={},prefix:ne="",extension:de="css"}=t,Se=encodeURIComponent(d.replace(/\s+/g,"-").toLowerCase()),ye=`${I.replace(/\/$/,"")}/${ne}${Se}.${de}`;console.log(`[ThemeCreator] Uploading theme to: ${ye}`);const Oe=await fetch(ye,{method:Y,headers:{"Content-Type":"text/css",...le},body:b});if(!Oe.ok)throw new Error(`Upload failed: ${Oe.status} ${Oe.statusText}`);const ht={version:U,createdAt:new Date,createdBy:j||"Anonymous",changelog:c||"No changelog provided",css:b},Ue=[...se,ht];G(Ue);const Be={id:d,label:m,description:f,previewColor:S,author:j,versions:Ue,currentVersion:U},wt=`${I.replace(/\/$/,"")}/${ne}${d}.json`;await fetch(wt,{method:Y,headers:{"Content-Type":"application/json",...le},body:JSON.stringify(Be,null,2)}),l({title:"Thème publié !",description:`Le thème "${m}" v${U} a été uploadé sur S3`}),a?.(Be),g("")}catch(I){console.error("[ThemeCreator] Upload error:",I),l({title:"Erreur d'upload",description:I instanceof Error?I.message:"Une erreur est survenue",variant:"destructive"})}finally{N(!1)}},[b,d,m,f,S,j,U,c,se,t,A,l,a]),Re=i.useCallback(async()=>{try{await navigator.clipboard.writeText(b),E(!0),setTimeout(()=>E(!1),2e3),l({title:"CSS copié !",description:"Le code CSS a été copié dans le presse-papiers"})}catch{l({title:"Erreur de copie",description:"Impossible de copier le CSS",variant:"destructive"})}},[b,l]),ve=i.useCallback(async _=>{V(!0);try{let I=_;if(s&&(!_.versions||_.versions.length===0||!_.versions[0].css)){const le=await s(_.id);if(le)I=le,l({title:"Thème chargé",description:`Thème "${I.label}" chargé depuis S3`});else{l({title:"Erreur",description:`Impossible de charger le thème "${_.label}"`,variant:"destructive"});return}}h(I.id),p(I.label),x(I.description||""),k(I.previewColor||"#3b82f6"),y(I.author||""),G(I.versions),z(I.currentVersion);const Y=I.versions[I.versions.length-1];Y&&u(Y.css),pe(I)}catch(I){console.error("[WakaThemeCreator] Error loading theme:",I),l({title:"Erreur",description:"Erreur lors du chargement du thème",variant:"destructive"})}finally{V(!1)}},[s,l]),Ne=i.useCallback(()=>{h(""),p(""),x(""),k("#3b82f6"),y(""),u(""),g(""),G([]),z("1.0.0"),pe(null),R&&ee()},[R,ee]),ie=i.useCallback(()=>{const _=new Blob([b],{type:"text/css"}),I=URL.createObjectURL(_),Y=document.createElement("a");Y.href=I,Y.download=`${d||"theme"}.css`,document.body.appendChild(Y),Y.click(),document.body.removeChild(Y),URL.revokeObjectURL(I),l({title:"CSS téléchargé",description:`Fichier ${d||"theme"}.css téléchargé`})},[b,d,l]);return e.jsxs("div",{className:w("w-full max-w-6xl mx-auto space-y-6",o),children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-3xl font-bold",children:"Créateur de Thèmes"}),e.jsx("p",{className:"text-muted-foreground",children:"Créez et publiez des thèmes TweakCN sur S3"})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(L,{variant:"outline",onClick:Ne,children:[e.jsx(T.Plus,{className:"mr-2 h-4 w-4"}),"Nouveau thème"]}),R&&e.jsx(L,{variant:"destructive",onClick:ee,children:"Arrêter la prévisualisation"})]})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[e.jsxs(Ve,{className:"lg:col-span-1",children:[e.jsxs(Ke,{children:[e.jsx(We,{children:"Thèmes existants"}),e.jsx(Pt,{children:"Chargez un thème pour le modifier"})]}),e.jsx(Ze,{className:"space-y-2",children:n.length===0?e.jsx("p",{className:"text-sm text-muted-foreground text-center py-4",children:"Aucun thème existant"}):n.map(_=>e.jsxs("button",{onClick:()=>ve(_),disabled:F,className:w("w-full flex items-center gap-3 p-3 rounded-lg border-2 transition-all text-left",X?.id===_.id?"border-primary bg-primary/10":"border-border hover:border-primary/50",F&&"opacity-50 cursor-not-allowed"),children:[e.jsx("div",{className:"w-8 h-8 rounded-full flex-shrink-0",style:{backgroundColor:_.previewColor||"#3b82f6"}}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"font-medium truncate flex items-center gap-2",children:[_.label,F&&X?.id===_.id&&e.jsx(T.Loader2,{className:"h-4 w-4 animate-spin"})]}),e.jsxs("div",{className:"text-xs text-muted-foreground",children:["v",_.currentVersion||"1.0.0"," • ",_.versions?.length||0," versions"]})]})]},_.id))})]}),e.jsxs("div",{className:"lg:col-span-2 space-y-6",children:[e.jsxs(Ve,{children:[e.jsx(Ke,{children:e.jsxs(We,{className:"flex items-center gap-2",children:[e.jsx(T.Palette,{className:"h-5 w-5"}),"Informations du thème"]})}),e.jsxs(Ze,{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:"theme-id",children:"ID du thème *"}),e.jsx(me,{id:"theme-id",placeholder:"ex: forest",value:d,onChange:_=>h(_.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:"theme-label",children:"Nom d'affichage *"}),e.jsx(me,{id:"theme-label",placeholder:"ex: Forêt",value:m,onChange:_=>p(_.target.value)})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:"theme-description",children:"Description"}),e.jsx(me,{id:"theme-description",placeholder:"Thème inspiré de la nature",value:f,onChange:_=>x(_.target.value)})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:"theme-color",children:"Couleur de prévisualisation"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(me,{id:"theme-color",type:"color",value:S,onChange:_=>k(_.target.value),className:"w-16 h-10 p-1"}),e.jsx(me,{value:S,onChange:_=>k(_.target.value),placeholder:"#3b82f6"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:"theme-author",children:"Auteur"}),e.jsx(me,{id:"theme-author",placeholder:"Votre nom",value:j,onChange:_=>y(_.target.value)})]})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:"theme-version",children:"Version"}),e.jsx(me,{id:"theme-version",placeholder:"1.0.0",value:U,onChange:_=>z(_.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:"theme-changelog",children:"Changelog"}),e.jsx(me,{id:"theme-changelog",placeholder:"Modifications apportées",value:c,onChange:_=>g(_.target.value)})]})]})]})]}),e.jsxs(Ve,{children:[e.jsxs(Ke,{children:[e.jsxs(We,{className:"flex items-center gap-2",children:[e.jsx(T.FileCode,{className:"h-5 w-5"}),"Code CSS TweakCN"]}),e.jsx(Pt,{children:"Collez le CSS généré par TweakCN ici"})]}),e.jsxs(Ze,{className:"space-y-4",children:[e.jsx(pa,{placeholder:`:root {
28
+ --background: oklch(0.9911 0 0);
29
+ --foreground: oklch(0.2046 0 0);
30
+ --primary: oklch(0.8348 0.1302 160.9080);
31
+ --primary-foreground: oklch(0.2626 0.0147 166.4589);
32
+ --secondary: oklch(0.9940 0 0);
33
+ --secondary-foreground: oklch(0.2046 0 0);
34
+ --muted: oklch(0.9461 0 0);
35
+ --muted-foreground: oklch(0.2435 0 0);
36
+ --accent: oklch(0.9461 0 0);
37
+ --accent-foreground: oklch(0.2435 0 0);
38
+ --destructive: oklch(0.5523 0.1927 32.7272);
39
+ --destructive-foreground: oklch(0.9934 0.0032 17.2118);
40
+ --border: oklch(0.9037 0 0);
41
+ --ring: oklch(0.8348 0.1302 160.9080);
42
+ --radius: 0.5rem;
43
+ }
44
+
45
+ .dark {
46
+ --background: oklch(0.1822 0 0);
47
+ --foreground: oklch(0.9288 0.0126 255.5078);
48
+ --primary: oklch(0.4365 0.1044 156.7556);
49
+ --primary-foreground: oklch(0.9213 0.0135 167.1556);
50
+ }
51
+
52
+ @theme inline {
53
+ --color-background: var(--background);
54
+ --color-foreground: var(--foreground);
55
+ --color-primary: var(--primary);
56
+ --color-primary-foreground: var(--primary-foreground);
57
+ /* ... autres couleurs ... */
58
+ }`,value:b,onChange:_=>u(_.target.value),className:"font-mono text-sm min-h-[300px]"}),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[e.jsxs(L,{onClick:ce,disabled:R,children:[e.jsx(T.Eye,{className:"mr-2 h-4 w-4"}),"Prévisualiser"]}),e.jsx(L,{variant:"outline",onClick:Re,children:P?e.jsxs(e.Fragment,{children:[e.jsx(T.Check,{className:"mr-2 h-4 w-4"}),"Copié !"]}):e.jsxs(e.Fragment,{children:[e.jsx(T.Copy,{className:"mr-2 h-4 w-4"}),"Copier CSS"]})}),e.jsxs(L,{variant:"outline",onClick:ie,children:[e.jsx(T.Download,{className:"mr-2 h-4 w-4"}),"Télécharger"]}),e.jsx("div",{className:"ml-auto",children:e.jsx(L,{onClick:te,disabled:v,children:v?e.jsxs(e.Fragment,{children:[e.jsx(T.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),"Publication..."]}):e.jsxs(e.Fragment,{children:[e.jsx(T.Upload,{className:"mr-2 h-4 w-4"}),"Publier sur S3"]})})})]})]})]}),se.length>0&&e.jsxs(Ve,{children:[e.jsx(Ke,{children:e.jsxs(We,{className:"flex items-center gap-2",children:[e.jsx(T.History,{className:"h-5 w-5"}),"Historique des versions"]})}),e.jsx(Ze,{children:e.jsx("div",{className:"space-y-3",children:se.slice().reverse().map((_,I)=>e.jsxs("div",{className:"flex items-start gap-3 p-3 border rounded-lg",children:[e.jsxs(He,{variant:"outline",children:["v",_.version]}),e.jsxs("div",{className:"flex-1",children:[e.jsx("p",{className:"text-sm font-medium",children:_.changelog||"Aucune description"}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Par ",_.createdBy," • ",_.createdAt.toLocaleDateString()]})]}),e.jsx(L,{variant:"ghost",size:"sm",onClick:()=>u(_.css),children:"Charger"})]},I))})})]})]})]}),e.jsx(Hs,{open:M,onOpenChange:O,children:e.jsxs(lr,{children:[e.jsxs(dr,{children:[e.jsx(ur,{children:"Supprimer le thème ?"}),e.jsx(mr,{children:"Cette action est irréversible. Le thème sera supprimé de S3."})]}),e.jsxs(cr,{children:[e.jsx(hr,{children:"Annuler"}),e.jsx(fr,{onClick:()=>{X&&(r?.(X.id),Ne()),O(!1)},className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Supprimer"})]})]})})]})}Jo.displayName="WakaThemeCreator";function Lh(){try{const t=require("react"),{ThemeContext:a}=require("../../context");return t.useContext(a)}catch{return null}}const Ko=Pe.cva("w-full",{variants:{size:{sm:"max-w-2xl",base:"max-w-4xl",lg:"max-w-6xl",full:"max-w-full"}},defaultVariants:{size:"base"}}),Zo=i.forwardRef(({className:t,size:a,onThemeChange:r,onThemeLoad:s,onThemeSave:n,initialTheme:o,showPreview:l=!0,showExport:d=!0,showImport:h=!0,allowCustomColors:m=!0,...p},f)=>{const x=Lh(),S=x?.theme,k=x?.themes||[],j=x?.setTheme,[y,b]=C.useState(o||{name:"Custom Theme",description:"Thème personnalisé",colors:{background:"#ffffff",foreground:"#0a0a0a",card:"#ffffff",cardForeground:"#0a0a0a",popover:"#ffffff",popoverForeground:"#0a0a0a",primary:"#0a0a0a",primaryForeground:"#fafafa",secondary:"#f4f4f5",secondaryForeground:"#0a0a0a",muted:"#f4f4f5",mutedForeground:"#737373",accent:"#f4f4f5",accentForeground:"#0a0a0a",destructive:"#ef4444",destructiveForeground:"#fafafa",border:"#e4e4e7",input:"#e4e4e7",ring:"#0a0a0a"}}),[u,c]=C.useState(!1),[g,v]=C.useState(null),[N,R]=C.useState(null),[$,P]=C.useState(""),[E,M]=C.useState(!1),[O,F]=C.useState("auto"),V=C.useCallback(z=>{const H=document.documentElement;if(Object.entries(z.colors).forEach(([A,ce])=>{const ee=`--${A.replace(/([A-Z])/g,"-$1").toLowerCase()}`;H.style.setProperty(ee,ce)}),j){const A={id:z.name.toLowerCase().replace(/\s+/g,"-"),label:z.name,description:z.description||"",previewColor:z.colors.primary};j(A.id)}},[j]),X=async z=>{c(!0),v(null),R(null);try{const H=await fetch(z);if(!H.ok)throw new Error(`Erreur HTTP: ${H.status}`);const A=await H.json();if(!A.name||!A.colors)throw new Error("Format de thème invalide");const ce={name:A.name,description:A.description||"",author:A.author||"",version:A.version||"1.0.0",colors:{background:A.colors.background||"#ffffff",foreground:A.colors.foreground||"#0a0a0a",card:A.colors.card||"#ffffff",cardForeground:A.colors.cardForeground||"#0a0a0a",popover:A.colors.popover||"#ffffff",popoverForeground:A.colors.popoverForeground||"#0a0a0a",primary:A.colors.primary||"#0a0a0a",primaryForeground:A.colors.primaryForeground||"#fafafa",secondary:A.colors.secondary||"#f4f4f5",secondaryForeground:A.colors.secondaryForeground||"#0a0a0a",muted:A.colors.muted||"#f4f4f5",mutedForeground:A.colors.mutedForeground||"#737373",accent:A.colors.accent||"#f4f4f5",accentForeground:A.colors.accentForeground||"#0a0a0a",destructive:A.colors.destructive||"#ef4444",destructiveForeground:A.colors.destructiveForeground||"#fafafa",border:A.colors.border||"#e4e4e7",input:A.colors.input||"#e4e4e7",ring:A.colors.ring||"#0a0a0a",chart1:A.colors.chart1,chart2:A.colors.chart2,chart3:A.colors.chart3,chart4:A.colors.chart4,chart5:A.colors.chart5}};b(ce),V(ce),s?.(ce),R("Thème chargé avec succès !")}catch(H){v(H instanceof Error?H.message:"Erreur lors du chargement du thème")}finally{c(!1)}},pe=()=>{const z=JSON.stringify(y,null,2),H=new Blob([z],{type:"application/json"}),A=URL.createObjectURL(H),ce=document.createElement("a");ce.href=A,ce.download=`${y.name.toLowerCase().replace(/\s+/g,"-")}-theme.json`,document.body.appendChild(ce),ce.click(),document.body.removeChild(ce),URL.revokeObjectURL(A)},se=async()=>{try{await navigator.clipboard.writeText(JSON.stringify(y,null,2)),M(!0),setTimeout(()=>M(!1),2e3)}catch{v("Impossible de copier le thème")}},G=(z,H)=>{const A={...y,colors:{...y.colors,[z]:H}};b(A),V(A),r?.(A)},U=()=>{n?.(y),R("Thème sauvegardé !")};return C.useEffect(()=>{V(y)},[y,V]),C.useEffect(()=>{const z=document.documentElement;O==="dark"?z.classList.add("dark"):O==="light"?z.classList.remove("dark"):window.matchMedia("(prefers-color-scheme: dark)").matches?z.classList.add("dark"):z.classList.remove("dark")},[O]),e.jsx("div",{ref:f,className:w(Ko({size:a}),t),...p,children:e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-bold",children:"Gestionnaire de Thèmes TweakCN"}),e.jsx("p",{className:"text-muted-foreground",children:"Créez, importez et prévisualisez vos thèmes personnalisés"})]}),e.jsx("div",{className:"flex items-center gap-2",children:e.jsxs(He,{variant:"outline",className:"flex items-center gap-1",children:[e.jsx(T.Palette,{className:"h-3 w-3"}),y.name]})})]}),g&&e.jsxs("div",{className:"flex items-center gap-2 p-3 bg-destructive/10 border border-destructive/20 rounded-lg text-destructive",children:[e.jsx(T.AlertCircle,{className:"h-4 w-4"}),e.jsx("span",{className:"text-sm",children:g})]}),N&&e.jsxs("div",{className:"flex items-center gap-2 p-3 bg-green-500/10 border border-green-500/20 rounded-lg text-green-600",children:[e.jsx(T.CheckCircle,{className:"h-4 w-4"}),e.jsx("span",{className:"text-sm",children:N})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-6",children:[e.jsxs(Ve,{children:[e.jsx(Ke,{children:e.jsxs(We,{className:"flex items-center gap-2",children:[e.jsx(T.Settings,{className:"h-5 w-5"}),"Informations du thème"]})}),e.jsxs(Ze,{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(ge,{htmlFor:"theme-name",children:"Nom"}),e.jsx(me,{id:"theme-name",value:y.name,onChange:z=>b({...y,name:z.target.value}),placeholder:"Mon thème"})]}),e.jsxs("div",{children:[e.jsx(ge,{htmlFor:"theme-author",children:"Auteur"}),e.jsx(me,{id:"theme-author",value:y.author||"",onChange:z=>b({...y,author:z.target.value}),placeholder:"Votre nom"})]})]}),e.jsxs("div",{children:[e.jsx(ge,{htmlFor:"theme-description",children:"Description"}),e.jsx(pa,{id:"theme-description",value:y.description||"",onChange:z=>b({...y,description:z.target.value}),placeholder:"Description du thème...",rows:3})]})]})]}),(h||d)&&e.jsxs(Ve,{children:[e.jsx(Ke,{children:e.jsxs(We,{className:"flex items-center gap-2",children:[e.jsx(T.Upload,{className:"h-5 w-5"}),"Import / Export"]})}),e.jsxs(Ze,{className:"space-y-4",children:[h&&e.jsxs("div",{children:[e.jsx(ge,{htmlFor:"import-url",children:"URL du thème JSON"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(me,{id:"import-url",value:$,onChange:z=>P(z.target.value),placeholder:"https://example.com/theme.json",className:"flex-1"}),e.jsx(L,{onClick:()=>X($),disabled:!$||u,size:"sm",children:u?e.jsx(T.RefreshCw,{className:"h-4 w-4 animate-spin"}):e.jsx(T.Download,{className:"h-4 w-4"})})]})]}),d&&e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(L,{onClick:pe,variant:"outline",className:"flex-1",children:[e.jsx(T.Download,{className:"h-4 w-4 mr-2"}),"Exporter JSON"]}),e.jsx(L,{onClick:se,variant:"outline",children:E?e.jsx(T.Check,{className:"h-4 w-4"}):e.jsx(T.Copy,{className:"h-4 w-4"})})]})]})]}),l&&e.jsxs(Ve,{children:[e.jsx(Ke,{children:e.jsxs(We,{className:"flex items-center gap-2",children:[e.jsx(T.Eye,{className:"h-5 w-5"}),"Prévisualisation"]})}),e.jsx(Ze,{children:e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(L,{variant:O==="light"?"default":"outline",size:"sm",onClick:()=>F("light"),children:[e.jsx(T.Sun,{className:"h-4 w-4 mr-2"}),"Clair"]}),e.jsxs(L,{variant:O==="dark"?"default":"outline",size:"sm",onClick:()=>F("dark"),children:[e.jsx(T.Moon,{className:"h-4 w-4 mr-2"}),"Sombre"]}),e.jsxs(L,{variant:O==="auto"?"default":"outline",size:"sm",onClick:()=>F("auto"),children:[e.jsx(T.Monitor,{className:"h-4 w-4 mr-2"}),"Auto"]})]}),S&&e.jsxs("div",{className:"text-sm text-muted-foreground",children:[e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{children:"Thème actuel:"}),e.jsx("span",{className:"font-medium",children:S})]}),e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{children:"Mode sombre:"}),e.jsx("span",{className:"font-medium",children:"Géré par le système"})]}),e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{children:"Thèmes disponibles:"}),e.jsx("span",{className:"font-medium",children:k.length})]})]})]})})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(L,{onClick:U,className:"flex-1",children:"Sauvegarder le thème"}),e.jsxs(L,{variant:"outline",onClick:()=>window.open("https://tweakcn.com","_blank"),children:[e.jsx(T.ExternalLink,{className:"h-4 w-4 mr-2"}),"TweakCN"]})]})]}),m&&e.jsx("div",{className:"space-y-6",children:e.jsxs(Ve,{children:[e.jsxs(Ke,{children:[e.jsxs(We,{className:"flex items-center gap-2",children:[e.jsx(T.Palette,{className:"h-5 w-5"}),"Couleurs du thème"]}),e.jsx(Pt,{children:"Cliquez sur une couleur pour la modifier"})]}),e.jsx(Ze,{children:e.jsx("div",{className:"grid grid-cols-2 gap-4",children:Object.entries(y.colors).map(([z,H])=>e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:`color-${z}`,className:"text-sm font-medium",children:z.replace(/([A-Z])/g," $1").replace(/^./,A=>A.toUpperCase())}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("div",{className:"w-10 h-10 rounded border border-border cursor-pointer",style:{backgroundColor:H},onClick:()=>{document.getElementById(`color-${z}`)?.click()}}),e.jsx(me,{id:`color-${z}`,type:"color",value:H,onChange:A=>G(z,A.target.value),className:"flex-1 h-10"})]})]},z))})})]})})]}),l&&e.jsxs(Ve,{children:[e.jsx(Ke,{children:e.jsxs(We,{className:"flex items-center gap-2",children:[e.jsx(T.Eye,{className:"h-5 w-5"}),"Prévisualisation en temps réel"]})}),e.jsx(Ze,{children:e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx("h4",{className:"font-medium",children:"Boutons"}),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[e.jsx(L,{size:"sm",children:"Primary"}),e.jsx(L,{variant:"secondary",size:"sm",children:"Secondary"}),e.jsx(L,{variant:"outline",size:"sm",children:"Outline"}),e.jsx(L,{variant:"destructive",size:"sm",children:"Destructive"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h4",{className:"font-medium",children:"Cards"}),e.jsxs(Ve,{className:"p-3",children:[e.jsx(We,{className:"text-sm",children:"Exemple de carte"}),e.jsx(Pt,{className:"text-xs",children:"Contenu de la carte avec le nouveau thème"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h4",{className:"font-medium",children:"Inputs"}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(me,{placeholder:"Input normal"}),e.jsx(me,{placeholder:"Input avec erreur",className:"border-destructive"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h4",{className:"font-medium",children:"Badges"}),e.jsxs("div",{className:"flex flex-wrap gap-1",children:[e.jsx(He,{children:"Default"}),e.jsx(He,{variant:"secondary",children:"Secondary"}),e.jsx(He,{variant:"destructive",children:"Destructive"}),e.jsx(He,{variant:"outline",children:"Outline"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h4",{className:"font-medium",children:"Séparateur"}),e.jsx(At,{}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Texte avec couleur muted"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h4",{className:"font-medium",children:"Progress"}),e.jsx("div",{className:"w-full bg-muted rounded-full h-2",children:e.jsx("div",{className:"bg-primary h-2 rounded-full",style:{width:"60%"}})})]})]})})]})]})})});Zo.displayName="WakaThemeManager";function Q(...t){return Is.clsx(t)}function Qo(t,a="export.csv"){if(!t||t.length===0)return;const r=Object.keys(t[0]),s=[r.join(","),...t.map(l=>r.map(d=>{const h=l[d];return typeof h=="string"&&(h.includes(",")||h.includes('"')||h.includes(`
59
+ `))?`"${h.replace(/"/g,'""')}"`:h}).join(","))].join(`
60
+ `),n=new Blob([s],{type:"text/csv;charset=utf-8;"}),o=document.createElement("a");o.href=URL.createObjectURL(n),o.download=a,o.click(),URL.revokeObjectURL(o.href)}function ei(t,a="export.json"){const r=JSON.stringify(t,null,2),s=new Blob([r],{type:"application/json;charset=utf-8;"}),n=document.createElement("a");n.href=URL.createObjectURL(s),n.download=a,n.click(),URL.revokeObjectURL(n.href)}async function Oh(t){return new Promise((a,r)=>{const s=new FileReader;s.onload=n=>{try{const l=(n.target?.result).split(`
61
+ `).filter(m=>m.trim());if(l.length===0){a([]);return}const d=l[0].split(",").map(m=>m.trim().replace(/^"|"$/g,"")),h=l.slice(1).map(m=>{const p=m.split(",").map(x=>x.trim().replace(/^"|"$/g,"")),f={};return d.forEach((x,S)=>{f[x]=p[S]||""}),f});a(h)}catch(o){r(o)}},s.onerror=()=>r(s.error),s.readAsText(t)})}function ti(t,a){try{localStorage.setItem(`datatable_${t}`,JSON.stringify(a))}catch(r){console.warn("[DataTable] Failed to save state:",r)}}function ai(t){try{const a=localStorage.getItem(`datatable_${t}`);return a?JSON.parse(a):null}catch(a){return console.warn("[DataTable] Failed to load state:",a),null}}function _h(t,a,r){const s=r.toLowerCase();return Object.values(t).some(n=>n==null?!1:String(n).toLowerCase().includes(s))}function ri({data:t,columns:a,pagination:r,tableId:s,onSortingChange:n,onFiltersChange:o,onSelectionChange:l}){const d=C.useMemo(()=>s?ai(s):null,[s]),[h,m]=C.useState(d?.sorting||[]),[p,f]=C.useState(d?.columnFilters||[]),[x,S]=C.useState(d?.columnVisibility||{}),[k,j]=C.useState({}),[y,b]=C.useState(d?.globalFilter||""),[u,c]=C.useState({pageIndex:r?.currentPage||0,pageSize:r?.pageSize||10});C.useEffect(()=>{s&&ti(s,{sorting:h,columnFilters:p,columnVisibility:x,globalFilter:y})},[s,h,p,x,y]),C.useEffect(()=>{n?.(h)},[h,n]),C.useEffect(()=>{o?.(p)},[p,o]),C.useEffect(()=>{const P=g.getFilteredSelectedRowModel().rows.map(E=>E.original);l?.(P)},[k]);const g=Ee.useReactTable({data:t,columns:a,state:{sorting:h,columnFilters:p,columnVisibility:x,rowSelection:k,globalFilter:y,pagination:u},enableRowSelection:!0,onRowSelectionChange:j,onSortingChange:m,onColumnFiltersChange:f,onColumnVisibilityChange:S,onGlobalFilterChange:b,onPaginationChange:c,getCoreRowModel:Ee.getCoreRowModel(),getFilteredRowModel:Ee.getFilteredRowModel(),getPaginationRowModel:Ee.getPaginationRowModel(),getSortedRowModel:Ee.getSortedRowModel(),globalFilterFn:_h,manualPagination:r?.mode==="server",pageCount:r?.mode==="server"?Math.ceil((r.totalItems||0)/u.pageSize):void 0}),v=C.useMemo(()=>g.getFilteredSelectedRowModel().rows.map(P=>P.original),[g,k]),N=C.useCallback(()=>{f([]),b("")},[]),R=C.useCallback(()=>{j({})},[]),$=C.useCallback(()=>g.getFilteredRowModel().rows.map(P=>P.original),[g]);return{table:g,sorting:h,setSorting:m,columnFilters:p,setColumnFilters:f,columnVisibility:x,setColumnVisibility:S,rowSelection:k,setRowSelection:j,globalFilter:y,setGlobalFilter:b,pagination:u,setPagination:c,selectedRows:v,resetFilters:N,resetSelection:R,exportData:$}}function Xr(t="standard",a="comfortable"){const[r,s]=C.useState(t),[n,o]=C.useState(a),[l,d]=C.useState(!1);C.useEffect(()=>{const f=()=>{d(window.innerWidth<768)};return f(),window.addEventListener("resize",f),()=>window.removeEventListener("resize",f)},[]),C.useEffect(()=>{l&&r==="standard"&&s("card")},[l,r]);const h=C.useCallback(()=>{s(f=>{switch(f){case"standard":return"card";case"card":return"compact";case"compact":return"standard";default:return"standard"}})},[]),m=C.useCallback(()=>{o(f=>f==="comfortable"?"compact":"comfortable")},[]);return{layout:r,setLayout:s,density:n,setDensity:o,toggleLayout:h,toggleDensity:m,isMobile:l,densityClasses:{comfortable:{table:"text-sm",cell:"px-4 py-3",header:"px-4 py-3"},compact:{table:"text-xs",cell:"px-2 py-1.5",header:"px-2 py-2"},spacious:{table:"text-base",cell:"px-6 py-4",header:"px-6 py-4"}}[n]}}function Yr(t,a={}){const{onSave:r,onCancel:s,validateField:n,autoSave:o=!1,autoSaveDelay:l=2e3}=a,[d,h]=C.useState(null),[m,p]=C.useState({}),[f,x]=C.useState(null),[S,k]=C.useState({}),[j,y]=C.useState(!1),b=C.useMemo(()=>!f||!d?!1:Object.keys(m).some(M=>{const O=M;return m[O]!==f[O]}),[m,f,d]),u=b&&d!==null,c=C.useCallback((M,O)=>{h(M),p({...O}),x(O),k({})},[]),g=C.useCallback(()=>{!d||!f||(s?.(d,f),h(null),p({}),x(null),k({}))},[d,f,s]),v=C.useCallback((M,O)=>{if(d){if(n){const F=n(M,O);if(F){k(V=>({...V,[M]:F}));return}else k(V=>{const X={...V};return delete X[M],X})}p(F=>({...F,[M]:O}))}},[d,n]),N=C.useCallback(async()=>{if(!(!d||!r||j)){if(Object.keys(S).length>0)throw new Error("Validation errors present");y(!0);try{await r(d,m),h(null),p({}),x(null),k({})}catch(M){throw console.error("Error saving edit:",M),M}finally{y(!1)}}},[d,r,m,S,j]),R=C.useCallback(()=>{f&&(p({...f}),k({}))},[f]),$=C.useMemo(()=>!o||!u?null:setTimeout(()=>{u&&!j&&N().catch(console.error)},l),[o,u,j,N,l]);return C.useEffect(()=>()=>{$&&clearTimeout($)},[$]),[{editingRowId:d,editedData:m,hasChanges:b,isDirty:u},{startEdit:c,cancelEdit:g,saveEdit:N,updateField:v,resetEdit:R}]}function ma({table:t,config:a,globalFilter:r,onGlobalFilterChange:s,density:n,onDensityChange:o,onExport:l,onImport:d}){const{t:h}=et.useTranslation(),m=i.useRef(null),p=t.getFilteredSelectedRowModel().rows,f=p.length>0,x=i.useMemo(()=>a?.actions?a.actions.filter(j=>!(j.requiresSelection&&!f)):[],[a?.actions,f]),S=j=>{const y=f?p.map(b=>b.original):t.getFilteredRowModel().rows.map(b=>b.original);l?l(j):j==="csv"?Qo(y,"export.csv"):ei(y,"export.json")},k=j=>{const y=j.target.files?.[0];y&&d&&d(y),m.current&&(m.current.value="")};return e.jsxs("div",{className:"flex flex-col sm:flex-row items-start sm:items-center justify-between gap-4 p-4 border-b",children:[e.jsxs("div",{className:"flex flex-1 flex-col sm:flex-row items-start sm:items-center gap-2 w-full sm:w-auto",children:[a?.showSearch!==!1&&e.jsxs("div",{className:"relative w-full sm:w-64",children:[e.jsx(T.Search,{className:"absolute left-2 top-2.5 h-4 w-4 text-muted-foreground"}),e.jsx(me,{placeholder:h("datatable.toolbar.search",{defaultValue:"Search..."}),value:r??"",onChange:j=>s(j.target.value),className:"pl-8 h-9"}),r&&e.jsx("button",{onClick:()=>s(""),className:"absolute right-2 top-2.5 text-muted-foreground hover:text-foreground",children:e.jsx(T.X,{className:"h-4 w-4"})})]}),f&&e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsxs("span",{children:[p.length," ",h("datatable.toolbar.selected",{defaultValue:"selected"})]}),e.jsx(L,{variant:"ghost",size:"sm",onClick:()=>t.resetRowSelection(),className:"h-7 px-2",children:h("datatable.toolbar.clear",{defaultValue:"Clear"})})]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[x.map(j=>e.jsxs(L,{variant:j.variant||"outline",size:"sm",onClick:()=>j.onClick(p.map(y=>y.original)),disabled:j.disabled,className:"h-9",children:[j.icon,e.jsx("span",{className:"ml-2",children:j.label})]},j.id)),a?.showRefresh&&e.jsxs(L,{variant:"outline",size:"icon",onClick:a.onRefresh,className:"h-9 w-9",children:[e.jsx(T.RefreshCw,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:h("datatable.toolbar.refresh",{defaultValue:"Refresh"})})]}),l&&e.jsxs(Zt,{children:[e.jsx(Qt,{asChild:!0,children:e.jsxs(L,{variant:"outline",size:"icon",className:"h-9 w-9",children:[e.jsx(T.Download,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:h("datatable.toolbar.export",{defaultValue:"Export"})})]})}),e.jsxs(It,{align:"end",children:[e.jsx(ea,{children:h("datatable.toolbar.exportAs",{defaultValue:"Export as"})}),e.jsx(ta,{}),e.jsx(Tt,{onClick:()=>S("csv"),children:"CSV"}),e.jsx(Tt,{onClick:()=>S("json"),children:"JSON"})]})]}),d&&e.jsxs(e.Fragment,{children:[e.jsx("input",{ref:m,type:"file",accept:".csv,.json",onChange:k,className:"hidden"}),e.jsxs(L,{variant:"outline",size:"icon",onClick:()=>m.current?.click(),className:"h-9 w-9",children:[e.jsx(T.Upload,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:h("datatable.toolbar.import",{defaultValue:"Import"})})]})]}),a?.showColumnToggle!==!1&&e.jsxs(Zt,{children:[e.jsx(Qt,{asChild:!0,children:e.jsxs(L,{variant:"outline",size:"icon",className:"h-9 w-9",children:[e.jsx(T.Columns,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:h("datatable.toolbar.columns",{defaultValue:"Columns"})})]})}),e.jsxs(It,{align:"end",className:"w-48",children:[e.jsx(ea,{children:h("datatable.toolbar.toggleColumns",{defaultValue:"Toggle columns"})}),e.jsx(ta,{}),t.getAllColumns().filter(j=>j.getCanHide()).map(j=>e.jsx(Tt,{className:"capitalize",checked:j.getIsVisible(),onCheckedChange:y=>j.toggleVisibility(!!y),children:j.id},j.id))]})]}),a?.showDensity&&o&&e.jsxs(Zt,{children:[e.jsx(Qt,{asChild:!0,children:e.jsxs(L,{variant:"outline",size:"icon",className:"h-9 w-9",children:[e.jsx(T.SlidersHorizontal,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:h("datatable.toolbar.density",{defaultValue:"Density"})})]})}),e.jsxs(It,{align:"end",children:[e.jsx(ea,{children:h("datatable.toolbar.tableDensity",{defaultValue:"Table density"})}),e.jsx(ta,{}),e.jsx(Tt,{checked:n==="comfortable",onCheckedChange:()=>o("comfortable"),children:h("datatable.toolbar.comfortable",{defaultValue:"Comfortable"})}),e.jsx(Tt,{checked:n==="compact",onCheckedChange:()=>o("compact"),children:h("datatable.toolbar.compact",{defaultValue:"Compact"})})]})]})]})]})}function Jr({table:t,pageSizeOptions:a=[25,50,100,500],showInfo:r=!0}){const{t:s}=et.useTranslation(),n=t.getState().pagination.pageIndex,o=t.getState().pagination.pageSize,l=t.getPageCount(),d=t.getFilteredRowModel().rows.length,h=n*o+1,m=Math.min((n+1)*o,d);return e.jsxs("div",{className:"flex flex-col sm:flex-row items-center justify-between gap-4 px-4 py-3 border-t",children:[r&&e.jsx("div",{className:"text-sm text-muted-foreground",children:d>0?e.jsxs(e.Fragment,{children:[s("datatable.pagination.showing",{defaultValue:"Showing"})," ",h," ",s("datatable.pagination.to",{defaultValue:"to"})," ",m," ",s("datatable.pagination.of",{defaultValue:"of"})," ",d," ",s("datatable.pagination.results",{defaultValue:"results"})]}):s("datatable.pagination.noResults",{defaultValue:"No results"})}),e.jsxs("div",{className:"flex items-center gap-6",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"text-sm text-muted-foreground whitespace-nowrap",children:s("datatable.pagination.rowsPerPage",{defaultValue:"Rows per page"})}),e.jsxs(ut,{value:`${o}`,onValueChange:p=>{t.setPageSize(Number(p))},children:[e.jsx(rt,{className:"h-8 w-[70px]",children:e.jsx(mt,{placeholder:o})}),e.jsx(st,{side:"top",children:a.map(p=>e.jsx(Qe,{value:`${p}`,children:p},p))})]})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsxs("span",{className:"text-sm text-muted-foreground mr-2",children:[s("datatable.pagination.page",{defaultValue:"Page"})," ",n+1," ",s("datatable.pagination.of",{defaultValue:"of"})," ",l]}),e.jsxs(L,{variant:"outline",size:"icon",className:"h-8 w-8",onClick:()=>t.setPageIndex(0),disabled:!t.getCanPreviousPage(),children:[e.jsx(T.ChevronsLeft,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:s("datatable.pagination.firstPage",{defaultValue:"First page"})})]}),e.jsxs(L,{variant:"outline",size:"icon",className:"h-8 w-8",onClick:()=>t.previousPage(),disabled:!t.getCanPreviousPage(),children:[e.jsx(T.ChevronLeft,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:s("datatable.pagination.previousPage",{defaultValue:"Previous page"})})]}),e.jsxs(L,{variant:"outline",size:"icon",className:"h-8 w-8",onClick:()=>t.nextPage(),disabled:!t.getCanNextPage(),children:[e.jsx(T.ChevronRight,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:s("datatable.pagination.nextPage",{defaultValue:"Next page"})})]}),e.jsxs(L,{variant:"outline",size:"icon",className:"h-8 w-8",onClick:()=>t.setPageIndex(l-1),disabled:!t.getCanNextPage(),children:[e.jsx(T.ChevronsRight,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:s("datatable.pagination.lastPage",{defaultValue:"Last page"})})]})]})]})]})}function Kr({table:t,filters:a,position:r="top",onFiltersChange:s}){const{t:n}=et.useTranslation(),[o,l]=i.useState([]),[d,h]=i.useState(!1),m=i.useCallback(b=>{const u=t.getPreFilteredRowModel().rows,c=new Set;return u.forEach(g=>{const v=g.getValue(b);v!=null&&v!==""&&c.add(String(v))}),Array.from(c).sort()},[t]),p={text:[{value:"contains",label:n("datatable.filters.contains",{defaultValue:"Contains"})},{value:"equals",label:n("datatable.filters.equals",{defaultValue:"Equals"})},{value:"startsWith",label:n("datatable.filters.startsWith",{defaultValue:"Starts with"})},{value:"endsWith",label:n("datatable.filters.endsWith",{defaultValue:"Ends with"})},{value:"notContains",label:n("datatable.filters.notContains",{defaultValue:"Not contains"})}],select:[{value:"equals",label:n("datatable.filters.equals",{defaultValue:"Equals"})},{value:"notEquals",label:n("datatable.filters.notEquals",{defaultValue:"Not equals"})}],multiselect:[{value:"in",label:n("datatable.filters.in",{defaultValue:"In"})},{value:"notIn",label:n("datatable.filters.notIn",{defaultValue:"Not in"})}],range:[{value:"between",label:n("datatable.filters.between",{defaultValue:"Between"})},{value:"greaterThan",label:n("datatable.filters.greaterThan",{defaultValue:"Greater than"})},{value:"lessThan",label:n("datatable.filters.lessThan",{defaultValue:"Less than"})}],date:[{value:"equals",label:n("datatable.filters.equals",{defaultValue:"Equals"})},{value:"before",label:n("datatable.filters.before",{defaultValue:"Before"})},{value:"after",label:n("datatable.filters.after",{defaultValue:"After"})},{value:"between",label:n("datatable.filters.between",{defaultValue:"Between"})}],daterange:[{value:"between",label:n("datatable.filters.between",{defaultValue:"Between"})},{value:"before",label:n("datatable.filters.before",{defaultValue:"Before"})},{value:"after",label:n("datatable.filters.after",{defaultValue:"After"})}],checkbox:[{value:"equals",label:n("datatable.filters.equals",{defaultValue:"Equals"})}],number:[{value:"equals",label:n("datatable.filters.equals",{defaultValue:"Equals"})},{value:"notEquals",label:n("datatable.filters.notEquals",{defaultValue:"Not equals"})},{value:"greaterThan",label:n("datatable.filters.greaterThan",{defaultValue:"Greater than"})},{value:"lessThan",label:n("datatable.filters.lessThan",{defaultValue:"Less than"})},{value:"between",label:n("datatable.filters.between",{defaultValue:"Between"})}],boolean:[{value:"equals",label:n("datatable.filters.equals",{defaultValue:"Equals"})},{value:"notEquals",label:n("datatable.filters.notEquals",{defaultValue:"Not equals"})}]},f=(b,u,c)=>{const g=t.getColumn(b.column||b.id);if(!g)return;const v={columnId:b.column||b.id,operator:u,value:c,label:b.label};l(N=>[...N,v]),g.setFilterValue({operator:u,value:c}),s?.([...o,v])},x=b=>{const u=o[b],c=t.getColumn(u.columnId);c&&c.setFilterValue(void 0);const g=o.filter((v,N)=>N!==b);l(g),s?.(g)},S=()=>{o.forEach(b=>{const u=t.getColumn(b.columnId);u&&u.setFilterValue(void 0)}),l([]),s?.([])},k=b=>{const[u,c]=i.useState(p[b.type]?.[0]?.value||"equals"),g=()=>b.defaultValue!==void 0?b.defaultValue:b.type==="range"?{min:"",max:""}:b.type==="daterange"?{from:"",to:""}:b.type==="checkbox"?!1:"",[v,N]=i.useState(g()),[R,$]=i.useState([]),[P,E]=i.useState(!1),M=b.column?m(b.column):[],O=()=>{const F=b.type==="multiselect"?R:v;let V=!1;b.type==="multiselect"?V=Array.isArray(F)&&F.length>0:b.type==="range"?V=F.min!==""||F.max!=="":b.type==="daterange"?V=F.from!==""||F.to!=="":b.type==="checkbox"?V=!0:V=F!==""&&F!=null,V&&(f(b,u,F),N(g()),$([]),E(!1))};return e.jsxs("div",{className:"space-y-3 p-4 border rounded-lg",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(ge,{className:"text-sm font-medium",children:b.label}),e.jsx(He,{variant:"outline",className:"text-xs",children:b.type})]}),p[b.type]&&p[b.type].length>1&&e.jsxs(ut,{value:u,onValueChange:c,children:[e.jsx(rt,{className:"h-9",children:e.jsx(mt,{})}),e.jsx(st,{children:p[b.type].map(F=>e.jsx(Qe,{value:F.value,children:F.label},F.value))})]}),b.type==="text"&&e.jsx("div",{className:"space-y-2",children:e.jsxs(xt,{open:P,onOpenChange:E,children:[e.jsx(vt,{asChild:!0,children:e.jsx(me,{placeholder:b.placeholder||n("datatable.filters.enterValue",{defaultValue:"Enter value..."}),value:v,onChange:F=>{N(F.target.value),E(!0)},className:"h-9"})}),M.length>0&&v&&e.jsx(ct,{className:"w-[--radix-popover-trigger-width] p-0",align:"start",children:e.jsxs(_t,{children:[e.jsx(oa,{placeholder:n("datatable.filters.search",{defaultValue:"Search..."})}),e.jsx(ia,{children:n("datatable.filters.noResults",{defaultValue:"No results"})}),e.jsx(la,{className:"max-h-64 overflow-auto",children:M.filter(F=>F.toLowerCase().includes(v.toLowerCase())).slice(0,50).map(F=>e.jsx(da,{onSelect:()=>{N(F),E(!1)},children:F},F))})]})})]})}),b.type==="select"&&e.jsxs(ut,{value:v,onValueChange:N,children:[e.jsx(rt,{className:"h-9",children:e.jsx(mt,{placeholder:b.placeholder})}),e.jsx(st,{children:(b.options||M.map(F=>({label:F,value:F}))).map(F=>e.jsx(Qe,{value:String(F.value),children:F.label},F.value))})]}),b.type==="multiselect"&&e.jsxs(xt,{children:[e.jsx(vt,{asChild:!0,children:e.jsxs(L,{variant:"outline",className:"w-full justify-between h-9",children:[R.length>0?`${R.length} ${n("datatable.filters.selected",{defaultValue:"selected"})}`:b.placeholder||n("datatable.filters.selectValues",{defaultValue:"Select values..."}),e.jsx(T.ChevronDown,{className:"ml-2 h-4 w-4 opacity-50"})]})}),e.jsx(ct,{className:"w-[--radix-popover-trigger-width] p-0",align:"start",children:e.jsxs(_t,{children:[e.jsx(oa,{placeholder:n("datatable.filters.search",{defaultValue:"Search..."})}),e.jsx(ia,{children:n("datatable.filters.noResults",{defaultValue:"No results"})}),e.jsx(la,{className:"max-h-64 overflow-auto",children:M.map(F=>e.jsxs(da,{onSelect:()=>{$(V=>V.includes(F)?V.filter(X=>X!==F):[...V,F])},children:[e.jsx(at,{checked:R.includes(F),className:"mr-2"}),F]},F))})]})})]}),b.type==="date"&&e.jsx(me,{type:"date",value:v,onChange:F=>N(F.target.value),className:"h-9"}),b.type==="range"&&e.jsxs("div",{className:"flex gap-2",children:[e.jsx(me,{type:"number",placeholder:"Min",value:v.min||"",onChange:F=>N({...v,min:F.target.value}),className:"h-9"}),e.jsx(me,{type:"number",placeholder:"Max",value:v.max||"",onChange:F=>N({...v,max:F.target.value}),className:"h-9"})]}),b.type==="daterange"&&e.jsxs("div",{className:"flex gap-2",children:[e.jsx(me,{type:"date",placeholder:n("datatable.filters.from",{defaultValue:"From"}),value:v.from||"",onChange:F=>N({...v,from:F.target.value}),className:"h-9"}),e.jsx(me,{type:"date",placeholder:n("datatable.filters.to",{defaultValue:"To"}),value:v.to||"",onChange:F=>N({...v,to:F.target.value}),className:"h-9"})]}),b.type==="checkbox"&&e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(at,{id:`checkbox-${b.id}`,checked:v===!0,onCheckedChange:F=>N(F===!0)}),e.jsx(ge,{htmlFor:`checkbox-${b.id}`,className:"text-sm font-normal",children:b.placeholder||n("datatable.filters.checked",{defaultValue:"Checked"})})]}),e.jsxs(L,{onClick:O,size:"sm",className:"w-full",children:[e.jsx(T.Plus,{className:"h-4 w-4 mr-2"}),n("datatable.filters.apply",{defaultValue:"Apply filter"})]})]})};if(!a||a.length===0)return null;const j=e.jsxs("div",{className:"space-y-4",children:[o.length>0&&e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(ge,{className:"text-sm text-muted-foreground",children:n("datatable.filters.active",{defaultValue:"Filtres actifs"})}),e.jsxs(L,{variant:"ghost",size:"sm",onClick:S,children:[e.jsx(T.Trash2,{className:"h-3 w-3 mr-1"}),n("datatable.filters.clearAll",{defaultValue:"Tout effacer"})]})]}),e.jsx("div",{className:"space-y-1",children:o.map((b,u)=>e.jsxs("div",{className:"flex items-center justify-between p-2 bg-muted rounded-md text-sm",children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("span",{className:"font-medium",children:b.label}),e.jsx("span",{className:"text-muted-foreground mx-2",children:b.operator}),e.jsx("span",{className:"text-primary truncate",children:Array.isArray(b.value)?b.value.join(", "):b.value})]}),e.jsx(L,{variant:"ghost",size:"icon",className:"h-6 w-6 shrink-0",onClick:()=>x(u),children:e.jsx(T.X,{className:"h-3 w-3"})})]},u))})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsx(ge,{className:"text-sm text-muted-foreground",children:n("datatable.filters.available",{defaultValue:"Filtres disponibles"})}),a.map(b=>e.jsx("div",{children:k(b)},b.id))]})]}),y=e.jsxs(L,{variant:"outline",size:"sm",children:[e.jsx(T.Filter,{className:"h-4 w-4 mr-2"}),n("datatable.filters.title",{defaultValue:"Filtres"}),o.length>0&&e.jsx(He,{variant:"secondary",className:"ml-2",children:o.length})]});return r==="right"||r==="left"?e.jsxs(Rr,{open:d,onOpenChange:h,children:[e.jsx(Ar,{asChild:!0,children:y}),e.jsxs(Fa,{side:r,className:"w-[400px] sm:w-[540px] overflow-y-auto",children:[e.jsxs($r,{children:[e.jsxs(Ir,{className:"flex items-center gap-2",children:[e.jsx(T.Filter,{className:"h-5 w-5"}),n("datatable.filters.title",{defaultValue:"Filtres"})]}),e.jsx(Lr,{children:n("datatable.filters.description",{defaultValue:"Appliquez des filtres pour affiner les résultats"})})]}),e.jsx("div",{className:"mt-6",children:j})]})]}):e.jsxs(xt,{open:d,onOpenChange:h,children:[e.jsx(vt,{asChild:!0,children:y}),e.jsx(ct,{className:"w-[400px] max-h-[600px] overflow-y-auto",align:r==="top"?"start":"end",children:e.jsxs("div",{className:"space-y-4",children:[e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(T.Filter,{className:"h-4 w-4"}),e.jsx("h4",{className:"font-semibold text-sm",children:n("datatable.filters.title",{defaultValue:"Filtres"})})]})}),j]})})]})}function Pa({value:t,field:a,config:r,isEditing:s,error:n,onChange:o,onStartEdit:l,onSave:d,onCancel:h,className:m}){const[p,f]=i.useState(t),[x,S]=i.useState(!1);i.useEffect(()=>{f(t)},[t]);const k=()=>{o(p),d()},j=()=>{f(t),h()},y=u=>{u.key==="Enter"&&!u.shiftKey?(u.preventDefault(),k()):u.key==="Escape"&&(u.preventDefault(),j())};if(!s)return e.jsx("div",{className:Q("cursor-pointer hover:bg-muted/50 p-1 rounded transition-colors",m),onClick:l,children:zh(t,r)});const b=()=>{switch(r.type){case"textarea":return e.jsx(pa,{value:p||"",onChange:u=>f(u.target.value),onKeyDown:y,placeholder:r.placeholder,rows:r.rows||3,disabled:r.disabled,className:Q(n&&"border-destructive")});case"select":return e.jsxs(ut,{value:p||"",onValueChange:f,disabled:r.disabled,children:[e.jsx(rt,{className:Q(n&&"border-destructive"),children:e.jsx(mt,{placeholder:r.placeholder})}),e.jsx(st,{children:r.options?.map(u=>e.jsx(Qe,{value:u.value,children:u.label},u.value))})]});case"checkbox":return e.jsx(at,{checked:!!p,onCheckedChange:f,disabled:r.disabled});case"switch":return e.jsx(Or,{checked:!!p,onCheckedChange:f,disabled:r.disabled});case"date":case"datetime":return e.jsxs(xt,{open:x,onOpenChange:S,children:[e.jsx(vt,{asChild:!0,children:e.jsxs(L,{variant:"outline",className:Q("w-full justify-start text-left font-normal",!p&&"text-muted-foreground",n&&"border-destructive"),children:[e.jsx(T.CalendarIcon,{className:"mr-2 h-4 w-4"}),p?D.format(new Date(p),"PPP"):r.placeholder]})}),e.jsx(ct,{className:"w-auto p-0",align:"start",children:e.jsx(pr,{mode:"single",selected:p?new Date(p):void 0,onSelect:u=>{u&&(f(r.type==="datetime"?u.toISOString():u.toISOString().split("T")[0]),S(!1))},initialFocus:!0})})]});default:return e.jsx(me,{type:r.type,value:p||"",onChange:u=>f(u.target.value),onKeyDown:y,placeholder:r.placeholder,min:r.min,max:r.max,step:r.step,disabled:r.disabled,required:r.required,pattern:r.pattern,title:r.title,className:Q(n&&"border-destructive")})}};return e.jsxs("div",{className:Q("relative",m),children:[b(),e.jsxs("div",{className:"absolute right-1 top-1/2 -translate-y-1/2 flex gap-1",children:[e.jsx(L,{size:"sm",variant:"ghost",className:"h-6 w-6 p-0",onClick:k,children:e.jsx(T.Check,{className:"h-3 w-3 text-green-600"})}),e.jsx(L,{size:"sm",variant:"ghost",className:"h-6 w-6 p-0",onClick:j,children:e.jsx(T.X,{className:"h-3 w-3 text-red-600"})})]}),n&&e.jsx("p",{className:"text-xs text-destructive mt-1",children:n})]})}function zh(t,a){if(t==null)return e.jsx("span",{className:"text-muted-foreground italic",children:"Non défini"});switch(a.type){case"checkbox":case"switch":return e.jsx("span",{className:Q("inline-flex items-center px-2 py-1 rounded-full text-xs font-medium",t?"bg-green-100 text-green-800":"bg-gray-100 text-gray-800"),children:t?"Oui":"Non"});case"date":case"datetime":try{const s=new Date(t);return D.format(s,a.type==="datetime"?"PPP p":"PPP")}catch{return t}case"select":const r=a.options?.find(s=>s.value===t);return r?r.label:t;case"textarea":return e.jsx("div",{className:"max-w-xs",children:e.jsx("p",{className:"truncate",children:t})});default:return t}}function Vh({data:t,columns:a,layout:r="standard",variant:s="bordered",density:n="comfortable",filters:o,filterPosition:l="top",toolbar:d,pagination:h,selection:m=!1,actions:p,i18nNamespace:f,loading:x=!1,error:S,emptyState:k,headerSticky:j=!1,columnVisibilityToggle:y=!0,columnResize:b=!1,enableExport:u=!1,enableImport:c=!1,enableReorder:g=!1,enableContextMenu:v=!1,onRowClick:N,onRowDoubleClick:R,onSortingChange:$,onFiltersChange:P,onSelectionChange:E,className:M,tableId:O,virtualization:F,edit:V}){const{t:X}=et.useTranslation(f),{layout:pe,setLayout:se,density:G,setDensity:U,densityClasses:z}=Xr(r,n),H=i.useMemo(()=>{const le=[...a];if(m){const ne={id:"select",header:({table:de})=>e.jsx(at,{checked:de.getIsAllPageRowsSelected(),onCheckedChange:Se=>de.toggleAllPageRowsSelected(!!Se),"aria-label":X("datatable.selectAll",{defaultValue:"Select all"})}),cell:({row:de})=>e.jsx(at,{checked:de.getIsSelected(),onCheckedChange:Se=>de.toggleSelected(!!Se),"aria-label":X("datatable.selectRow",{defaultValue:"Select row"})}),enableSorting:!1,enableHiding:!1};le.unshift(ne)}return le},[a,m,V,X]),{table:A,globalFilter:ce,setGlobalFilter:ee,selectedRows:te,resetFilters:Re,exportData:ve}=ri({data:t,columns:H,pagination:h,tableId:O,onSortingChange:$,onFiltersChange:P,onSelectionChange:E}),[Ne,ie]=Yr(A,{onSave:V?.onSave,onCancel:V?.onCancel,autoSave:V?.autoSave,autoSaveDelay:V?.autoSaveDelay});if(V?.editableColumns&&V.editableColumns.length>0){const le={id:"edit-actions",header:()=>X("datatable.actions",{defaultValue:"Actions"}),cell:({row:ne})=>Ne.editingRowId===ne.id?e.jsxs("div",{className:"flex gap-1",children:[e.jsx(L,{size:"sm",variant:"ghost",onClick:()=>ie.saveEdit(),disabled:!Ne.hasChanges,children:X("datatable.save",{defaultValue:"Save"})}),e.jsx(L,{size:"sm",variant:"ghost",onClick:()=>ie.cancelEdit(),children:X("datatable.cancel",{defaultValue:"Cancel"})})]}):e.jsx(L,{size:"sm",variant:"ghost",onClick:()=>{console.log("🔧 Starting edit for row:",ne.id,ne.original),ie.startEdit(ne.id,ne.original)},children:X("datatable.edit",{defaultValue:"Edit"})}),enableSorting:!1,enableHiding:!1};H.push(le)}const Me=i.useCallback(le=>{const ne=ve();console.log("Export",le,ne)},[ve]),_=i.useCallback(le=>{console.log("Import",le)},[]),I={bordered:"border rounded-lg",minimal:"",striped:"[&_tbody_tr:nth-child(even)]:bg-muted/50",glass:"backdrop-blur-sm bg-background/80 border rounded-lg"};if(x)return e.jsx("div",{className:"flex items-center justify-center h-64 border rounded-lg",children:e.jsxs("div",{className:"flex flex-col items-center gap-2",children:[e.jsx(T.Loader2,{className:"h-8 w-8 animate-spin text-muted-foreground"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:X("datatable.loading",{defaultValue:"Loading..."})})]})});if(S)return e.jsx("div",{className:"flex items-center justify-center h-64 border rounded-lg bg-destructive/10",children:e.jsxs("div",{className:"flex flex-col items-center gap-2 text-destructive",children:[e.jsx(T.AlertCircle,{className:"h-8 w-8"}),e.jsx("p",{className:"text-sm font-medium",children:S})]})});if(!t||t.length===0)return e.jsxs("div",{className:"flex flex-col",children:[d&&e.jsx(ma,{table:A,config:d,globalFilter:ce,onGlobalFilterChange:ee,density:G,onDensityChange:U,onExport:u?Me:void 0,onImport:c?_:void 0}),e.jsx("div",{className:"flex items-center justify-center h-64 border rounded-lg",children:k||e.jsxs("div",{className:"flex flex-col items-center gap-2 text-muted-foreground",children:[e.jsx("p",{className:"text-lg font-medium",children:X("datatable.noData",{defaultValue:"No data"})}),e.jsx("p",{className:"text-sm",children:X("datatable.noDataDescription",{defaultValue:"There are no results to display"})})]})})]});const Y=()=>{const le=e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center justify-between gap-4",children:[d&&e.jsx("div",{className:"flex-1",children:e.jsx(ma,{table:A,config:d,globalFilter:ce,onGlobalFilterChange:ee,density:G,onDensityChange:U,onExport:u?Me:void 0,onImport:c?_:void 0})}),o&&e.jsx(Kr,{table:A,filters:o,position:l,onFiltersChange:P})]}),e.jsx("div",{className:Q("w-full overflow-auto",I[s]),children:e.jsxs("table",{className:Q("w-full caption-bottom text-sm",z.table),children:[e.jsx("thead",{className:Q(j&&"sticky top-0 bg-background z-10"),children:A.getHeaderGroups().map(ne=>e.jsx("tr",{className:"border-b",children:ne.headers.map(de=>e.jsxs("th",{className:Q("text-left font-medium text-muted-foreground",z.header,de.column.getCanSort()&&"cursor-pointer select-none hover:text-foreground"),onClick:de.column.getToggleSortingHandler(),children:[de.isPlaceholder?null:Ee.flexRender(de.column.columnDef.header,de.getContext()),de.column.getIsSorted()&&e.jsx("span",{className:"ml-2",children:de.column.getIsSorted()==="asc"?"↑":"↓"})]},de.id))},ne.id))}),e.jsx("tbody",{children:A.getRowModel().rows.map(ne=>e.jsx("tr",{className:Q("border-b transition-colors",N&&"cursor-pointer hover:bg-muted/50",ne.getIsSelected()&&"bg-muted"),onClick:()=>N?.(ne.original),onDoubleClick:()=>R?.(ne.original),children:ne.getVisibleCells().map(de=>{const Se=de.getValue(),ye=de.column.id,Oe=ne.id,ht=Ne.editingRowId===Oe,Ue=V?.editableColumns?.find(Be=>Be.field===ye);return Ue&&ht?e.jsx("td",{className:Q("align-middle",z.cell),children:e.jsx(Pa,{value:Se,field:ye,config:Ue.config,isEditing:ht,onChange:Be=>ie.updateField(ye,Be),onStartEdit:()=>ie.startEdit(Oe,ne.original),onSave:()=>ie.saveEdit(),onCancel:()=>ie.cancelEdit()})},de.id):e.jsx("td",{className:Q("align-middle",z.cell),children:Ee.flexRender(de.column.columnDef.cell,de.getContext())},de.id)})},ne.id))})]})}),h&&e.jsx(Jr,{table:A,pageSizeOptions:h.pageSizeOptions})]});return e.jsx("div",{className:"space-y-4",children:le})};return e.jsx("div",{className:Q("w-full",M),children:Y()})}function si({data:t,columns:a,pagination:r,tableId:s,onSortingChange:n,onFiltersChange:o,onSelectionChange:l,onColumnOrderChange:d,onExpandedChange:h,onGroupingChange:m,grouping:p,virtualization:f,sortMode:x="multiple",performance:S}){const k=C.useMemo(()=>s?Wh(s):null,[s]),[j,y]=C.useState(k?.sorting||[]),[b,u]=C.useState(k?.columnFilters||[]),[c,g]=C.useState(k?.columnVisibility||{}),[v,N]=C.useState(k?.columnOrder||[]),[R,$]=C.useState(k?.expanded||{}),[P,E]=C.useState(k?.grouping||[]),[M,O]=C.useState(k?.rowSelection||{}),[F,V]=C.useState(k?.globalFilter||""),[X,pe]=C.useState({pageIndex:r?.currentPage||0,pageSize:r?.pageSize||10}),[se,G]=C.useState(b);C.useEffect(()=>{const I=setTimeout(()=>{G(b)},S?.filterDebounceMs||300);return()=>clearTimeout(I)},[b,S?.filterDebounceMs]),C.useEffect(()=>{p?.columns&&p.columns.length>0&&P.length===0&&E([p.columns[0]])},[p?.columns,P.length]),C.useEffect(()=>{s&&Hh(s,{sorting:j,columnFilters:b,columnVisibility:c,columnOrder:v,expanded:R,grouping:P,pagination:X,globalFilter:F,density:"comfortable",layout:"standard",rowSelection:M})},[s,j,b,c,v,R,P,X,F,M]),C.useEffect(()=>{n?.(j)},[j,n]),C.useEffect(()=>{o?.(se)},[se,o]),C.useEffect(()=>{const I=U.getFilteredSelectedRowModel().rows.map(Y=>Y.original);l?.(I)},[M]),C.useEffect(()=>{d?.(v)},[v,d]),C.useEffect(()=>{h?.(R)},[R,h]),C.useEffect(()=>{m?.(P)},[P,m]);const U=Ee.useReactTable({data:t,columns:a,state:{sorting:j,columnFilters:se,columnVisibility:c,columnOrder:v,expanded:R,grouping:P,rowSelection:M,globalFilter:F,pagination:X},enableRowSelection:!0,enableMultiRowSelection:!0,enableSubRowSelection:!0,enableGrouping:!0,enableExpanding:!0,enableColumnResizing:!0,enableSorting:!0,enableMultiSort:x==="multiple",enableFilters:!0,enableGlobalFilter:!0,enableColumnFilters:!0,onRowSelectionChange:O,onSortingChange:y,onColumnFiltersChange:u,onColumnVisibilityChange:g,onColumnOrderChange:N,onExpandedChange:$,onGroupingChange:E,onGlobalFilterChange:V,onPaginationChange:pe,getCoreRowModel:Ee.getCoreRowModel(),getFilteredRowModel:Ee.getFilteredRowModel(),getPaginationRowModel:Ee.getPaginationRowModel(),getSortedRowModel:Ee.getSortedRowModel(),getGroupedRowModel:Ee.getGroupedRowModel(),getExpandedRowModel:Ee.getExpandedRowModel(),getFacetedRowModel:Ee.getFacetedRowModel(),getFacetedUniqueValues:Ee.getFacetedUniqueValues(),globalFilterFn:qh,manualPagination:r?.mode==="server",pageCount:r?.mode==="server"?Math.ceil((r.totalItems||0)/X.pageSize):void 0,columnResizeMode:"onChange",sortDescFirst:!1}),z=C.useMemo(()=>U.getFilteredSelectedRowModel().rows.map(I=>I.original),[U,M]),H=C.useCallback(()=>{u([]),V("")},[]),A=C.useCallback(()=>{O({})},[]),ce=C.useCallback(()=>{y([]),u([]),g({}),N([]),$({}),E([]),O({}),V(""),pe({pageIndex:0,pageSize:r?.pageSize||10})},[r?.pageSize]),ee=C.useCallback(()=>U.getFilteredRowModel().rows.map(I=>I.original),[U]),te=C.useCallback(()=>p?.columns?.length?U.getGroupedRowModel().rows.map(I=>I.original):t,[U,p,t]),Re=C.useCallback(()=>U.getExpandedRowModel().rows.map(I=>I.original),[U]),ve=C.useCallback(I=>{E(Y=>Y.includes(I)?Y.filter(ne=>ne!==I):[...Y,I])},[]),Ne=C.useCallback(()=>{E([])},[]),ie=C.useCallback(I=>{$(Y=>({...Y,[I]:!Y[I]}))},[]),Me=C.useCallback(()=>{const I=U.getRowModel().rows.map(le=>le.id),Y={};I.forEach(le=>{Y[le]=!0}),$(Y)},[U]),_=C.useCallback(()=>{$({})},[]);return{table:U,sorting:j,setSorting:y,columnFilters:b,setColumnFilters:u,columnVisibility:c,setColumnVisibility:g,columnOrder:v,setColumnOrder:N,expanded:R,setExpanded:$,grouping:P,setGrouping:E,rowSelection:M,setRowSelection:O,globalFilter:F,setGlobalFilter:V,pagination:X,setPagination:pe,selectedRows:z,resetFilters:H,resetSelection:A,resetAll:ce,exportData:ee,getGroupedData:te,getExpandedData:Re,toggleGrouping:ve,clearGrouping:Ne,toggleRowExpansion:ie,expandAll:Me,collapseAll:_}}function Wh(t){try{const a=localStorage.getItem(`datatable-${t}`);return a?JSON.parse(a):null}catch{return null}}function Hh(t,a){try{localStorage.setItem(`datatable-${t}`,JSON.stringify(a))}catch{}}function qh(t,a,r){const s=r.toLowerCase();return t.getVisibleCells().some(n=>{const o=n.getValue();return o==null?!1:String(o).toLowerCase().includes(s)})}function ni({data:t,virtualization:a,containerRef:r}){const[s,n]=C.useState(a?.containerHeight||600);C.useEffect(()=>{if(!r.current||!a)return;const x=new ResizeObserver(S=>{for(const k of S)n(k.contentRect.height)});return x.observe(r.current),()=>{x.disconnect()}},[r,a]);const o=C.useMemo(()=>{if(!a||a.type==="none")return null;const x={count:t.length,getScrollElement:()=>r.current,estimateSize:()=>a.itemHeight||50,overscan:a.overscan||5};return a.type==="dynamic"?{...x,estimateSize:()=>a.estimatedItemHeight||50}:x},[t.length,a,r]),l=o?cl.useVirtualizer(o):null,d=C.useCallback((x,S="start")=>{l&&l.scrollToIndex(x,{align:S})},[l]),h=C.useCallback(x=>{l&&l.scrollToOffset(x)},[l]),m=C.useCallback(()=>l?l.getVirtualItems():[],[l]),p=C.useCallback(()=>l?l.getTotalSize():0,[l]),f=a?.type!=="none"&&o!==null;return{virtualizer:l,isVirtualized:f,containerHeight:s,scrollToIndex:d,scrollToOffset:h,getVirtualItems:m,getTotalSize:p,virtualItems:l?l.getVirtualItems():[],totalSize:l?l.getTotalSize():0}}function oi({data:t,columns:a,exportConfig:r}){const s=C.useMemo(()=>({formats:["csv","xlsx","json"],filename:"export",includeHeaders:!0,...r}),[r]),n=C.useCallback((x,S)=>{if(!x.length)return;const k=a.filter(c=>c.accessorKey||c.id).map(c=>c.header||c.accessorKey||c.id).join(","),j=x.map(c=>a.filter(g=>g.accessorKey||g.id).map(g=>{const v=g.accessorKey?c[g.accessorKey]:c[g.id],N=g.formatter?g.formatter(v):v,R=String(N||"");return R.includes(",")||R.includes('"')||R.includes(`
62
+ `)?`"${R.replace(/"/g,'""')}"`:R}).join(",")),y=[k,...j].join(`
63
+ `),b=new Blob([y],{type:"text/csv;charset=utf-8;"}),u=document.createElement("a");u.href=URL.createObjectURL(b),u.download=`${S||s.filename}.csv`,u.click(),URL.revokeObjectURL(u.href)},[a,s.filename]),o=C.useCallback((x,S)=>{const k=JSON.stringify(x,null,2),j=new Blob([k],{type:"application/json"}),y=document.createElement("a");y.href=URL.createObjectURL(j),y.download=`${S||s.filename}.json`,y.click(),URL.revokeObjectURL(y.href)},[s.filename]),l=C.useCallback(async(x,S)=>{try{if(typeof window>"u")throw new Error("XLSX export not available in server environment");const k=await import("xlsx"),y=[a.filter(c=>c.accessorKey||c.id).map(c=>c.header||c.accessorKey||c.id),...x.map(c=>a.filter(g=>g.accessorKey||g.id).map(g=>{const v=g.accessorKey?c[g.accessorKey]:c[g.id];return g.formatter?g.formatter(v):v}))],b=k.utils.aoa_to_sheet(y),u=k.utils.book_new();k.utils.book_append_sheet(u,b,"Sheet1"),k.writeFile(u,`${S||s.filename}.xlsx`)}catch(k){throw console.error("Erreur lors de l'export XLSX:",k),new Error("La librairie xlsx n'est pas disponible")}},[a,s.filename]),d=C.useCallback(async(x,S)=>{try{if(typeof window>"u")throw new Error("PDF export not available in server environment");const k=await import("jspdf"),j=await import("jspdf-autotable"),y=new k.default,b=a.filter(c=>c.accessorKey||c.id).map(c=>c.header||c.accessorKey||c.id),u=x.map(c=>a.filter(g=>g.accessorKey||g.id).map(g=>{const v=g.accessorKey?c[g.accessorKey]:c[g.id];return g.formatter?g.formatter(v):v}));y.autoTable({head:[b],body:u,startY:20,styles:{fontSize:8},headStyles:{fillColor:[66,139,202]}}),y.save(`${S||s.filename}.pdf`)}catch(k){throw console.error("Erreur lors de l'export PDF:",k),new Error("Les librairies jsPDF et jspdf-autotable ne sont pas disponibles")}},[a,s.filename]),h=C.useCallback((x,S)=>{const k=a.filter(u=>u.accessorKey||u.id).map(u=>u.accessorKey||u.id);let j=`<?xml version="1.0" encoding="UTF-8"?>
64
+ <data>
65
+ `;x.forEach((u,c)=>{j+=` <row id="${c}">
66
+ `,k.forEach(g=>{const v=u[g],N=String(v||"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");j+=` <${g}>${N}</${g}>
67
+ `}),j+=` </row>
68
+ `}),j+="</data>";const y=new Blob([j],{type:"application/xml"}),b=document.createElement("a");b.href=URL.createObjectURL(y),b.download=`${S||s.filename}.xml`,b.click(),URL.revokeObjectURL(b.href)},[a,s.filename]),m=C.useCallback(async(x,S,k)=>{const j=S||t,y=k||s.filename;if(s.onExport){s.onExport(j,x);return}switch(x.toLowerCase()){case"csv":n(j,y);break;case"json":o(j,y);break;case"xlsx":await l(j,y);break;case"pdf":await d(j,y);break;case"xml":h(j,y);break;default:throw new Error(`Format d'export non supporté: ${x}`)}},[t,s,n,o,l,d,h]),p=C.useCallback(async x=>m(x),[m]),f=C.useCallback(async(x,S)=>m(x,S),[m]);return{exportData:m,exportAll:p,exportSelected:f,supportedFormats:s.formats,isExportSupported:x=>s.formats.includes(x)}}function ii({importConfig:t}){const a=C.useMemo(()=>({accept:".csv,.xlsx,.json,.xml",...t}),[t]),r=C.useCallback((f,x=",")=>{const S=f.split(`
69
+ `).filter(y=>y.trim());if(S.length===0)return[];const k=S[0].split(x).map(y=>y.trim().replace(/"/g,""));return S.slice(1).map(y=>{const b=y.split(x).map(c=>c.trim().replace(/"/g,"")),u={};return k.forEach((c,g)=>{u[c]=b[g]||""}),u})},[]),s=C.useCallback(f=>{try{const x=JSON.parse(f);return Array.isArray(x)?x:[x]}catch{throw new Error("Format JSON invalide")}},[]),n=C.useCallback(f=>{try{const k=new DOMParser().parseFromString(f,"text/xml").querySelectorAll("row");return Array.from(k).map(j=>{const y={};return Array.from(j.children).forEach(b=>{y[b.tagName]=b.textContent||""}),y})}catch{throw new Error("Format XML invalide")}},[]),o=C.useCallback(async f=>{try{if(typeof window>"u")throw new Error("XLSX parsing not available in server environment");const x=await import("xlsx"),S=await f.arrayBuffer(),k=x.read(S,{type:"array"}),j=k.SheetNames[0],y=k.Sheets[j],b=x.utils.sheet_to_json(y,{header:1});if(b.length===0)return[];const u=b[0];return b.slice(1).map(c=>{const g={};return u.forEach((v,N)=>{g[v]=c[N]||""}),g})}catch{throw new Error("Erreur lors du parsing du fichier XLSX")}},[]),l=C.useCallback(f=>a.validate?a.validate(f):Array.isArray(f)?f.length===0?{valid:!1,errors:["Aucune donnée trouvée"]}:{valid:!0,errors:[]}:{valid:!1,errors:["Les données doivent être un tableau"]},[a.validate]),d=C.useCallback(f=>a.columnMapping?f.map(x=>{const S={};return Object.entries(a.columnMapping).forEach(([k,j])=>{x[k]!==void 0&&(S[j]=x[k])}),S}):f,[a.columnMapping]),h=C.useCallback(async f=>{const x=f.name.split(".").pop()?.toLowerCase();let S=[];try{const k=await f.text();switch(x){case"csv":S=r(k,a.parseOptions?.csv?.delimiter);break;case"json":S=s(k);break;case"xml":S=n(k);break;case"xlsx":S=await o(f);break;default:throw new Error(`Format de fichier non supporté: ${x}`)}const j=l(S);if(!j.valid)throw new Error(`Données invalides: ${j.errors.join(", ")}`);const y=d(S);return a.onImport&&a.onImport(y),y}catch(k){throw new Error(`Erreur lors de l'import: ${k instanceof Error?k.message:"Erreur inconnue"}`)}},[a,r,s,n,o,l,d]),m=C.useCallback(()=>{const f=document.createElement("input");return f.type="file",f.accept=a.accept,f.multiple=!1,f},[a.accept]),p=C.useCallback(()=>new Promise((f,x)=>{const S=m();S.onchange=async k=>{const j=k.target.files?.[0];if(!j){x(new Error("Aucun fichier sélectionné"));return}try{const y=await h(j);f(y)}catch(y){x(y)}},S.click()}),[m,h]);return{importData:h,importWithUI:p,supportedFormats:a.accept?.split(",")||[],isFormatSupported:f=>{const x=f.split(".").pop()?.toLowerCase();return a.accept?.includes(x||"")||!1}}}function li({theme:t,variant:a="bordered",density:r="comfortable"}){const s={colors:{primary:"hsl(var(--primary))",secondary:"hsl(var(--secondary))",accent:"hsl(var(--accent))",background:"hsl(var(--background))",surface:"hsl(var(--card))",text:"hsl(var(--foreground))",textSecondary:"hsl(var(--muted-foreground))",border:"hsl(var(--border))",hover:"hsl(var(--muted))",selected:"hsl(var(--accent))",disabled:"hsl(var(--muted))"},spacing:{xs:"0.25rem",sm:"0.5rem",md:"1rem",lg:"1.5rem",xl:"2rem"},typography:{fontFamily:"inherit",fontSize:{xs:"0.75rem",sm:"0.875rem",md:"1rem",lg:"1.125rem",xl:"1.25rem"},fontWeight:{normal:"400",medium:"500",semibold:"600",bold:"700"}},borders:{radius:{sm:"0.25rem",md:"0.5rem",lg:"0.75rem"},width:{thin:"1px",medium:"2px",thick:"4px"}},shadows:{sm:"0 1px 2px 0 rgb(0 0 0 / 0.05)",md:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)"}},n=C.useMemo(()=>t?{colors:{...s.colors,...t.colors},spacing:{...s.spacing,...t.spacing},typography:{...s.typography,...t.typography},borders:{...s.borders,...t.borders},shadows:{...s.shadows,...t.shadows}}:s,[t,s]),o=C.useMemo(()=>{const p="w-full";switch(a){case"bordered":return`${p} border rounded-lg`;case"minimal":return p;case"striped":return`${p} [&_tbody_tr:nth-child(even)]:bg-muted/50`;case"glass":return`${p} backdrop-blur-sm bg-background/80 border rounded-lg`;default:return p}},[a]),l=C.useMemo(()=>{switch(r){case"spacious":return{table:"text-base",header:"px-6 py-4",cell:"px-6 py-4",row:"h-16"};case"compact":return{table:"text-sm",header:"px-3 py-2",cell:"px-3 py-2",row:"h-8"};case"comfortable":default:return{table:"text-sm",header:"px-4 py-3",cell:"px-4 py-3",row:"h-12"}}},[r]),d=C.useMemo(()=>{const p={};return n.colors&&Object.entries(n.colors).forEach(([f,x])=>{p[`--datatable-color-${f}`]=x}),n.spacing&&Object.entries(n.spacing).forEach(([f,x])=>{p[`--datatable-spacing-${f}`]=x}),n.typography&&(n.typography.fontFamily&&(p["--datatable-font-family"]=n.typography.fontFamily),n.typography.fontSize&&Object.entries(n.typography.fontSize).forEach(([f,x])=>{p[`--datatable-font-size-${f}`]=x}),n.typography.fontWeight&&Object.entries(n.typography.fontWeight).forEach(([f,x])=>{p[`--datatable-font-weight-${f}`]=x})),n.borders&&(n.borders.radius&&Object.entries(n.borders.radius).forEach(([f,x])=>{p[`--datatable-radius-${f}`]=x}),n.borders.width&&Object.entries(n.borders.width).forEach(([f,x])=>{p[`--datatable-border-width-${f}`]=x})),n.shadows&&Object.entries(n.shadows).forEach(([f,x])=>{p[`--datatable-shadow-${f}`]=x}),p},[n]),h=C.useCallback((p,f)=>f?`${p} [--datatable-theme-key:${f}]`:p,[]),m=C.useCallback((p={})=>({...p,...d}),[d]);return{theme:n,variantClasses:o,densityClasses:l,customStyles:d,getThemedClass:h,getThemedStyles:m}}function Uh({data:t,columns:a,layout:r="standard",variant:s="bordered",density:n="comfortable",filters:o,filterPosition:l="top",toolbar:d,pagination:h,selection:m=!1,actions:p,i18nNamespace:f,loading:x=!1,error:S,emptyState:k,headerSticky:j=!1,columnVisibilityToggle:y=!0,columnResize:b=!1,columnOrder:u,grouping:c,rowExpansion:g,virtualization:v,sortMode:N="multiple",enableExport:R=!1,enableImport:$=!1,enableReorder:P=!1,enableContextMenu:E=!1,onRowClick:M,onRowDoubleClick:O,onSortingChange:F,onFiltersChange:V,onSelectionChange:X,onColumnOrderChange:pe,onExpandedChange:se,onGroupingChange:G,className:U,tableId:z,edit:H,theme:A,performance:ce}){const{t:ee}=et.useTranslation(f),te=i.useRef(null),{layout:Re,setLayout:ve,density:Ne,setDensity:ie,densityClasses:Me}=Xr(r,n),{theme:_,variantClasses:I,densityClasses:Y,customStyles:le,getThemedClass:ne,getThemedStyles:de}=li({theme:A,variant:s,density:Ne}),Se=i.useMemo(()=>{const re=[...a];if(m){const B={id:"select",header:({table:we})=>e.jsx(at,{checked:we.getIsAllPageRowsSelected(),onCheckedChange:Ae=>we.toggleAllPageRowsSelected(!!Ae),"aria-label":ee("datatable.selectAll",{defaultValue:"Select all"})}),cell:({row:we})=>e.jsx(at,{checked:we.getIsSelected(),onCheckedChange:Ae=>we.toggleSelected(!!Ae),"aria-label":ee("datatable.selectRow",{defaultValue:"Select row"})}),enableSorting:!1,enableHiding:!1,size:50};re.unshift(B)}if(g?.enabled){const B={id:"expand",header:()=>null,cell:({row:we})=>we.getCanExpand()?e.jsx(L,{variant:"ghost",size:"sm",onClick:()=>we.toggleExpanded(),className:"h-8 w-8 p-0",children:we.getIsExpanded()?e.jsx(T.ChevronDown,{className:"h-4 w-4"}):e.jsx(T.ChevronRight,{className:"h-4 w-4"})}):null,enableSorting:!1,enableHiding:!1,size:50};re.unshift(B)}if(P){const B={id:"reorder",header:()=>null,cell:()=>e.jsx(L,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0 cursor-move",children:e.jsx(T.GripVertical,{className:"h-4 w-4"})}),enableSorting:!1,enableHiding:!1,size:50};re.unshift(B)}return re},[a,m,g,P,ee]);console.log("DataTableAdvanced - props:",{grouping:c,rowExpansion:g,dataLength:t.length});const{table:ye,sorting:Oe,setSorting:ht,columnFilters:Ue,setColumnFilters:Be,columnVisibility:wt,setColumnVisibility:Vt,columnOrder:Wt,setColumnOrder:Ft,expanded:W,setExpanded:J,grouping:De,setGrouping:Ge,rowSelection:ga,setRowSelection:es,globalFilter:Ia,setGlobalFilter:La,pagination:ba,setPagination:mi,selectedRows:fi,resetFilters:nt,resetSelection:jt,resetAll:pt,exportData:xa,getGroupedData:Oa,getExpandedData:_a,toggleGrouping:tt,clearGrouping:za,toggleRowExpansion:Xe,expandAll:Ht,collapseAll:Ye}=si({data:t,columns:Se,pagination:h,tableId:z,onSortingChange:F,onFiltersChange:V,onSelectionChange:X,onColumnOrderChange:pe,onExpandedChange:se,onGroupingChange:G,grouping:c,virtualization:v,sortMode:N,performance:ce}),{isVirtualized:ot,virtualItems:Nt,totalSize:va,scrollToIndex:ts,scrollToOffset:Va}=ni({data:t,virtualization:v,containerRef:te}),{exportData:ya,exportAll:as,exportSelected:qt}=oi({data:t,columns:Se,exportConfig:typeof R=="object"?R:void 0}),{importWithUI:Ut,supportedFormats:hi}=ii({importConfig:typeof $=="object"?$:void 0}),[St,Je]=Yr(ye,{onSave:H?.onSave,onCancel:H?.onCancel,autoSave:H?.autoSave,autoSaveDelay:H?.autoSaveDelay});if(H?.editableColumns&&H.editableColumns.length>0){const re={id:"edit-actions",header:()=>ee("datatable.actions",{defaultValue:"Actions"}),cell:({row:B})=>St.editingRowId===B.id?e.jsxs("div",{className:"flex gap-1",children:[e.jsx(L,{size:"sm",variant:"ghost",onClick:()=>Je.saveEdit(),disabled:!St.hasChanges,children:ee("datatable.save",{defaultValue:"Save"})}),e.jsx(L,{size:"sm",variant:"ghost",onClick:()=>Je.cancelEdit(),children:ee("datatable.cancel",{defaultValue:"Cancel"})})]}):e.jsx(L,{size:"sm",variant:"ghost",onClick:()=>Je.startEdit(B.id,B.original),children:ee("datatable.edit",{defaultValue:"Edit"})}),enableSorting:!1,enableHiding:!1};Se.push(re)}const wa=i.useCallback(async re=>{try{await ya(re)}catch(B){console.error("Erreur lors de l'export:",B)}},[ya]),ja=i.useCallback(async()=>{try{const re=await Ut();console.log("Données importées:",re)}catch(re){console.error("Erreur lors de l'import:",re)}},[Ut]);if(x)return e.jsx("div",{className:"flex items-center justify-center h-64 border rounded-lg",children:e.jsxs("div",{className:"flex flex-col items-center gap-2",children:[e.jsx(T.Loader2,{className:"h-8 w-8 animate-spin text-muted-foreground"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:ee("datatable.loading",{defaultValue:"Loading..."})})]})});if(S)return e.jsx("div",{className:"flex items-center justify-center h-64 border rounded-lg bg-destructive/10",children:e.jsxs("div",{className:"flex flex-col items-center gap-2 text-destructive",children:[e.jsx(T.AlertCircle,{className:"h-8 w-8"}),e.jsx("p",{className:"text-sm font-medium",children:S})]})});if(!t||t.length===0)return e.jsxs("div",{className:"flex flex-col",children:[d&&e.jsx(ma,{table:ye,config:d,globalFilter:Ia,onGlobalFilterChange:La,density:Ne,onDensityChange:ie,onExport:R?wa:void 0,onImport:$?ja:void 0}),e.jsx("div",{className:"flex items-center justify-center h-64 border rounded-lg",children:k||e.jsxs("div",{className:"flex flex-col items-center gap-2 text-muted-foreground",children:[e.jsx("p",{className:"text-lg font-medium",children:ee("datatable.noData",{defaultValue:"No data"})}),e.jsx("p",{className:"text-sm",children:ee("datatable.noDataDescription",{defaultValue:"There are no results to display"})})]})})]});const Na=()=>ot?e.jsx("div",{ref:te,className:"h-full overflow-auto",style:{height:v?.containerHeight||600},children:e.jsxs("table",{className:Q("w-full caption-bottom text-sm",Y.table),style:de(),children:[e.jsx("thead",{className:Q(j&&"sticky top-0 bg-background z-10"),children:ye.getHeaderGroups().map(re=>e.jsx("tr",{className:"border-b",children:re.headers.map(B=>e.jsxs("th",{className:Q("text-left font-medium text-muted-foreground",Y.header,B.column.getCanSort()&&"cursor-pointer select-none hover:text-foreground"),onClick:B.column.getToggleSortingHandler(),style:{width:B.getSize(),minWidth:B.column.columnDef.minSize,maxWidth:B.column.columnDef.maxSize},children:[B.isPlaceholder?null:Ee.flexRender(B.column.columnDef.header,B.getContext()),B.column.getIsSorted()&&e.jsx("span",{className:"ml-2",children:B.column.getIsSorted()==="asc"?"↑":"↓"})]},B.id))},re.id))}),e.jsx("tbody",{children:Nt.map(re=>{const we=(c?.columns?.length?ye.getGroupedRowModel().rows:g?.enabled?ye.getExpandedRowModel().rows:ye.getRowModel().rows)[re.index];return we?e.jsx("tr",{className:Q("border-b transition-colors",M&&"cursor-pointer hover:bg-muted/50",we.getIsSelected()&&"bg-muted"),onClick:()=>M?.(we.original),onDoubleClick:()=>O?.(we.original),style:{position:"absolute",top:re.start,left:0,width:"100%",height:re.size},children:we.getVisibleCells().map(Ae=>{const kt=Ae.getValue(),ke=Ae.column.id,Te=we.id,ae=St.editingRowId===Te,Ct=H?.editableColumns?.find(gt=>gt.field===ke);return Ct&&ae?e.jsx("td",{className:Q("align-middle",Y.cell),children:e.jsx(Pa,{value:kt,field:ke,config:Ct.config,isEditing:ae,onChange:gt=>Je.updateField(ke,gt),onStartEdit:()=>Je.startEdit(Te,we.original),onSave:()=>Je.saveEdit(),onCancel:()=>Je.cancelEdit()})},Ae.id):e.jsx("td",{className:Q("align-middle",Y.cell),children:Ee.flexRender(Ae.column.columnDef.cell,Ae.getContext())},Ae.id)})},we.id):null})})]})}):e.jsx("div",{className:Q("w-full overflow-auto",I),children:e.jsxs("table",{className:Q("w-full caption-bottom text-sm",Y.table),style:de(),children:[e.jsx("thead",{className:Q(j&&"sticky top-0 bg-background z-10"),children:ye.getHeaderGroups().map(re=>e.jsx("tr",{className:"border-b",children:re.headers.map(B=>e.jsxs("th",{className:Q("text-left font-medium text-muted-foreground",Y.header,B.column.getCanSort()&&"cursor-pointer select-none hover:text-foreground"),onClick:B.column.getToggleSortingHandler(),style:{width:B.getSize(),minWidth:B.column.columnDef.minSize,maxWidth:B.column.columnDef.maxSize},children:[B.isPlaceholder?null:Ee.flexRender(B.column.columnDef.header,B.getContext()),B.column.getIsSorted()&&e.jsx("span",{className:"ml-2",children:B.column.getIsSorted()==="asc"?"↑":"↓"})]},B.id))},re.id))}),e.jsx("tbody",{children:(()=>{const re=c?.columns?.length?ye.getGroupedRowModel().rows:g?.enabled?ye.getExpandedRowModel().rows:ye.getRowModel().rows;return console.log("DataTableAdvanced - rendering rows:",{totalRows:re.length,grouping:c?.columns,rowExpansion:g?.enabled,firstRow:re[0]}),re.map((B,we)=>{const Ae=B.getIsGrouped(),kt=B.getIsExpanded();return e.jsxs(i.Fragment,{children:[e.jsx("tr",{className:Q("border-b transition-colors",M&&"cursor-pointer hover:bg-muted/50",B.getIsSelected()&&"bg-muted",Ae&&"bg-muted/30 font-medium"),onClick:()=>M?.(B.original),onDoubleClick:()=>O?.(B.original),children:B.getVisibleCells().map(ke=>{const Te=ke.getValue(),ae=ke.column.id,Ct=B.id,gt=St.editingRowId===Ct,Bt=H?.editableColumns?.find(_e=>_e.field===ae);return Bt&&gt?e.jsx("td",{className:Q("align-middle",Y.cell),children:e.jsx(Pa,{value:Te,field:ae,config:Bt.config,isEditing:gt,onChange:_e=>Je.updateField(ae,_e),onStartEdit:()=>Je.startEdit(Ct,B.original),onSave:()=>Je.saveEdit(),onCancel:()=>Je.cancelEdit()})},ke.id):e.jsx("td",{className:Q("align-middle",Y.cell),children:Ae?e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("button",{onClick:_e=>{_e.stopPropagation(),B.toggleExpanded()},className:"p-1 hover:bg-muted rounded",children:kt?"▼":"▶"}),e.jsxs("span",{className:"font-medium",children:[ke.getValue()," (",B.subRows.length," éléments)"]})]}):Ee.flexRender(ke.column.columnDef.cell,ke.getContext())},ke.id)})}),g?.enabled&&kt&&e.jsx("tr",{children:e.jsx("td",{colSpan:Se.length,className:"p-0",children:e.jsx("div",{className:"border-b",children:g.renderExpanded?.(B.original)})})},`${B.id}-expanded-${we}`)]},`${B.id}-${we}`)})})()})]})});return e.jsxs("div",{className:Q("w-full",U),style:de(),children:[e.jsxs("div",{className:"flex items-center justify-between gap-4",children:[d&&e.jsx("div",{className:"flex-1",children:e.jsx(ma,{table:ye,config:d,globalFilter:Ia,onGlobalFilterChange:La,density:Ne,onDensityChange:ie,onExport:R?wa:void 0,onImport:$?ja:void 0})}),o&&e.jsx(Kr,{table:ye,filters:o,position:l,onFiltersChange:V})]}),Na(),h&&e.jsx(Jr,{table:ye,pageSizeOptions:h.pageSizeOptions})]})}function Bh({header:t,column:a,className:r}){const[s,n]=i.useState(!1),o=i.useCallback(l=>{l.preventDefault(),l.stopPropagation(),n(!0);const d=l.clientX,h=a.getSize(),m=f=>{const x=f.clientX-d,S=Math.max(50,h+x);a.setSize(S)},p=()=>{n(!1),document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",p)};document.addEventListener("mousemove",m),document.addEventListener("mouseup",p)},[a]);return a.getCanResize()?e.jsx("div",{className:Q("absolute right-0 top-0 h-full w-1 cursor-col-resize bg-border opacity-0 hover:opacity-100 transition-opacity",s&&"opacity-100 bg-primary",r),onMouseDown:o,style:{width:"4px",marginRight:"-2px"}}):null}function Gh({row:t,table:a,className:r}){const[s,n]=i.useState(t.getIsExpanded()),o=i.useCallback(()=>{n(!s),t.toggleExpanded()},[s,t]);t.getValue(t.groupingColumnId);const l=t.subRows.length;return e.jsxs("div",{className:Q("flex items-center gap-2 py-2",r),children:[e.jsx(L,{variant:"ghost",size:"sm",onClick:o,className:"h-6 w-6 p-0",children:s?e.jsx(T.ChevronDown,{className:"h-4 w-4"}):e.jsx(T.ChevronRight,{className:"h-4 w-4"})}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"font-medium",children:Ee.flexRender(t.groupingColumn.columnDef.cell,t.getGroupingValue())}),e.jsxs("span",{className:"text-sm text-muted-foreground",children:["(",l," ",l===1?"item":"items",")"]})]})]})}function Xh({row:t,table:a,className:r}){const s=t.getAggregationValue();return s?e.jsx("div",{className:Q("flex items-center gap-4 py-2 bg-muted/50",r),children:Object.entries(s).map(([n,o])=>e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs("span",{className:"text-sm font-medium",children:[n,":"]}),e.jsx("span",{className:"text-sm text-muted-foreground",children:typeof o=="number"?o.toLocaleString():String(o)})]},n))}):null}function Yh({table:t,groupingColumns:a,onGroupingChange:r,className:s}){const[n,o]=i.useState(a),l=i.useCallback(h=>{const m=n.includes(h)?n.filter(p=>p!==h):[...n,h];o(m),r(m)},[n,r]),d=i.useCallback(()=>{o([]),r([])},[r]);return e.jsxs("div",{className:Q("flex items-center gap-2",s),children:[e.jsx("span",{className:"text-sm font-medium",children:"Group by:"}),t.getAllColumns().filter(h=>h.getCanGroup()).map(h=>e.jsx(L,{variant:n.includes(h.id)?"default":"outline",size:"sm",onClick:()=>l(h.id),children:h.columnDef.header},h.id)),n.length>0&&e.jsx(L,{variant:"ghost",size:"sm",onClick:d,children:"Clear"})]})}function Jh({row:t,rowIndex:a,actions:r=[],columnActions:s=[],onCopy:n,onExport:o,onEdit:l,onDelete:d,onToggleColumnVisibility:h,visibleColumns:m=[],className:p,children:f}){const[x,S]=i.useState(!1),k=i.useCallback(g=>{g.onClick(t),S(!1)},[t]),j=i.useCallback(()=>{if(n)n(t);else{const g=Object.entries(t).map(([v,N])=>`${v}: ${N}`).join(`
70
+ `);navigator.clipboard.writeText(g)}S(!1)},[t,n]),y=i.useCallback(()=>{o&&o(t),S(!1)},[t,o]),b=i.useCallback(()=>{l&&l(t),S(!1)},[t,l]),u=i.useCallback(()=>{d&&d(t),S(!1)},[t,d]),c=i.useCallback(g=>{h&&h(g),S(!1)},[h]);return e.jsxs(yn,{onOpenChange:S,children:[e.jsx(wn,{asChild:!0,children:f}),e.jsxs(Sr,{className:Q("w-64",p),children:[r.length>0&&e.jsxs(e.Fragment,{children:[r.map(g=>e.jsxs(it,{onClick:()=>k(g),disabled:g.disabled,className:Q(g.destructive&&"text-destructive focus:text-destructive"),children:[g.icon&&e.jsx("span",{className:"mr-2",children:g.icon}),g.label]},g.id)),e.jsx(Kt,{})]}),e.jsxs(it,{onClick:j,children:[e.jsx(T.Copy,{className:"mr-2 h-4 w-4"}),"Copy row"]}),o&&e.jsxs(it,{onClick:y,children:[e.jsx(T.Download,{className:"mr-2 h-4 w-4"}),"Export row"]}),l&&e.jsxs(it,{onClick:b,children:[e.jsx(T.Edit,{className:"mr-2 h-4 w-4"}),"Edit row"]}),d&&e.jsxs(it,{onClick:u,className:"text-destructive focus:text-destructive",children:[e.jsx(T.Trash2,{className:"mr-2 h-4 w-4"}),"Delete row"]}),s.length>0&&e.jsxs(e.Fragment,{children:[e.jsx(Kt,{}),e.jsx("div",{className:"px-2 py-1.5 text-sm font-semibold text-muted-foreground",children:"Columns"}),s.map(g=>e.jsxs(it,{onClick:()=>c(g.id),disabled:g.disabled,children:[g.icon&&e.jsx("span",{className:"mr-2",children:g.icon}),g.label]},g.id))]}),h&&m.length>0&&e.jsxs(e.Fragment,{children:[e.jsx(Kt,{}),e.jsx("div",{className:"px-2 py-1.5 text-sm font-semibold text-muted-foreground",children:"Toggle Columns"}),m.map(g=>e.jsxs(it,{onClick:()=>c(g),children:[e.jsx(T.Eye,{className:"mr-2 h-4 w-4"}),g]},g))]})]})]})}function Kh({table:t,selectionMode:a="multiple",selectedRows:r,onSelectionChange:s,selectionActions:n=[],className:o}){const[l,d]=i.useState(null);i.useCallback((x,S)=>{if(a==="single"){t.setRowSelection({[x]:S});return}if(a==="range"&&l!==null){const k=Math.min(l,x),j=Math.max(l,x),y={...t.getState().rowSelection};for(let b=k;b<=j;b++)y[b]=S;t.setRowSelection(y)}else t.setRowSelection(k=>({...k,[x]:S}));d(x)},[t,a,l]);const h=i.useCallback(x=>{if(x){const S=t.getRowModel().rows.reduce((k,j,y)=>(k[y]=!0,k),{});t.setRowSelection(S)}else t.setRowSelection({})},[t]);i.useCallback((x,S,k)=>{const j={...t.getState().rowSelection};for(let y=x;y<=S;y++)j[y]=k;t.setRowSelection(j)},[t]),i.useCallback(x=>{const S={...t.getState().rowSelection};t.getRowModel().rows.forEach((k,j)=>{x(k.original)&&(S[j]=!0)}),t.setRowSelection(S)},[t]);const m=i.useCallback(x=>{x.onClick(r)},[r]),p=t.getIsAllPageRowsSelected(),f=t.getIsSomePageRowsSelected();return e.jsxs("div",{className:Q("flex items-center gap-2",o),children:[e.jsx(at,{checked:p,onCheckedChange:h,ref:x=>{x&&"indeterminate"in x&&(x.indeterminate=f&&!p)},"aria-label":"Select all rows"}),r.length>0&&e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsxs("span",{children:[r.length," selected"]}),e.jsx("div",{className:"flex items-center gap-1",children:n.map(x=>e.jsxs(L,{variant:"ghost",size:"sm",onClick:()=>m(x),disabled:x.disabled,className:Q(x.destructive&&"text-destructive hover:text-destructive"),children:[x.icon&&e.jsx("span",{className:"mr-1",children:x.icon}),x.label]},x.id))})]}),e.jsxs(ut,{onValueChange:x=>{switch(x){case"all":h(!0);break;case"none":h(!1);break;case"invert":t.getRowModel().rows.forEach((S,k)=>{const j=t.getState().rowSelection[k];t.setRowSelection(y=>({...y,[k]:!j}))});break}},children:[e.jsx(rt,{className:"w-32",children:e.jsx(mt,{placeholder:"Select"})}),e.jsxs(st,{children:[e.jsx(Qe,{value:"all",children:"Select All"}),e.jsx(Qe,{value:"none",children:"Select None"}),e.jsx(Qe,{value:"invert",children:"Invert Selection"})]})]})]})}function Zh({table:t,selectionMode:a="multiple",onSelectionChange:r}){const[s,n]=i.useState([]);i.useEffect(()=>{const p=t.getFilteredSelectedRowModel().rows.map(f=>f.original);n(p),r?.(p)},[t,r]);const o=i.useCallback((p,f=!0)=>{t.setRowSelection(x=>({...x,[p]:f}))},[t]),l=i.useCallback((p=!0)=>{if(p){const f=t.getRowModel().rows.reduce((x,S,k)=>(x[k]=!0,x),{});t.setRowSelection(f)}else t.setRowSelection({})},[t]),d=i.useCallback((p,f,x=!0)=>{const S={...t.getState().rowSelection};for(let k=p;k<=f;k++)S[k]=x;t.setRowSelection(S)},[t]),h=i.useCallback(p=>{const f={...t.getState().rowSelection};t.getRowModel().rows.forEach((x,S)=>{p(x.original)&&(f[S]=!0)}),t.setRowSelection(f)},[t]),m=i.useCallback(()=>{t.setRowSelection({})},[t]);return{selectedRows:s,selectRow:o,selectAll:l,selectRange:d,selectByCriteria:h,clearSelection:m,isAllSelected:t.getIsAllPageRowsSelected(),isSomeSelected:t.getIsSomePageRowsSelected()}}const di=i.createContext(void 0);function ci({children:t,languages:a,defaultLanguage:r="fr",s3Config:s,onLanguageChange:n}){const{i18n:o}=et.useTranslation(),[l,d]=i.useState(r),[h,m]=i.useState(!0),[p,f]=i.useState(new Set),[x,S]=i.useState(!1),k=i.useCallback(async b=>{if(!s)throw new Error("S3 configuration not provided");const{baseUrl:u,prefix:c="",extension:g="json",headers:v={}}=s,N=`${u.replace(/\/$/,"")}/${c}${b}.${g}`;console.log(`[LanguageProvider] Loading translations from S3: ${N}`);try{const R=await fetch(N,{headers:{Accept:"application/json",...v}});if(!R.ok)throw new Error(`Failed to load translations: ${R.status} ${R.statusText}`);const $=await R.json();return console.log(`[LanguageProvider] ✓ Translations loaded for ${b}`),$}catch(R){throw console.error(`[LanguageProvider] ✗ Error loading translations for ${b}:`,R),R}},[s]);i.useEffect(()=>{if(x||!o||!s)return;(async()=>{try{const u=typeof window<"u"?localStorage.getItem("language"):null,c=u&&a.some(v=>v.code===u)?u:r;console.log(`[LanguageProvider] Initializing with language: ${c}`);const g=await k(c);o.addResourceBundle&&o.addResourceBundle(c,"translation",g,!0,!0),await o.changeLanguage(c),d(c),f(new Set([c])),S(!0),console.log(`[LanguageProvider] ✓ Initialized with ${c}`)}catch(u){console.error("[LanguageProvider] Error initializing:",u),S(!0)}finally{m(!1)}})()},[x,o,s,r,a,k]);const j=i.useCallback(async b=>{if(b!==l){if(!o?.changeLanguage){console.error("[LanguageProvider] i18next is not initialized");return}if(!s){console.error("[LanguageProvider] S3 config not provided");return}m(!0);try{if(!p.has(b)){console.log(`[LanguageProvider] Loading ${b} from S3...`);const u=await k(b);o.addResourceBundle&&o.addResourceBundle(b,"translation",u,!0,!0),f(c=>new Set([...c,b]))}await o.changeLanguage(b),d(b),typeof window<"u"&&localStorage.setItem("language",b),n?.(b),console.log(`[LanguageProvider] ✓ Language changed to: ${b}`)}catch(u){throw console.error("[LanguageProvider] ✗ Error changing language:",u),u}finally{m(!1)}}},[l,p,s,k,o,n]),y={currentLanguage:l,languages:a,changeLanguage:j,isLoading:h,loadedLanguages:p};return e.jsx(di.Provider,{value:y,children:t})}function Zr(){const t=i.useContext(di);if(!t)throw new Error("useLanguage must be used within a LanguageProvider");return t}const ui=i.createContext(void 0);function Qh({children:t,config:a}){const{defaultTheme:r="light",storageKey:s="waka-ui-theme",themes:n,enableSystem:o=!0,s3Config:l}=a||{},[d,h]=i.useState(r),[m,p]=i.useState(),[f,x]=i.useState([]),[S,k]=i.useState(!0),[j,y]=i.useState("fallback");i.useEffect(()=>{(async()=>{if(k(!0),n&&n.length>0){const v=ep(n);x(v),y("config"),k(!1),console.log("[ThemeProvider] Using themes from config:",v.length);return}if(l?.baseUrl)try{const v=await tp(l.baseUrl);if(v.length>0){x(v),y("s3"),k(!1),console.log("[ThemeProvider] Loaded themes from S3:",v.length);return}}catch(v){console.error("[ThemeProvider] Failed to load themes from S3:",v)}x([{id:"light",label:"Clair",previewColor:"#3b82f6"},{id:"dark",label:"Sombre",previewColor:"#1e293b"}]),y("fallback"),k(!1),console.log("[ThemeProvider] Using fallback themes")})()},[n,l]),i.useEffect(()=>{if(!o)return;const c=window.matchMedia("(prefers-color-scheme: dark)"),g=v=>{p(v.matches?"dark":"light")};return p(c.matches?"dark":"light"),c.addEventListener("change",g),()=>c.removeEventListener("change",g)},[o]),i.useEffect(()=>{if(f.length===0)return;const c=localStorage.getItem(s),g=f.map(v=>v.id);c&&g.includes(c)&&h(c)},[s,f]),i.useEffect(()=>{if(f.length===0)return;const c=document.documentElement,g=d==="system"&&m?m:d;f.forEach(v=>c.classList.remove(v.id)),c.classList.add(g),c.setAttribute("data-theme",g),process.env.NODE_ENV==="development"&&console.log(`[WakaUI] Theme applied: ${g}`)},[d,m,f]);const b=i.useCallback(c=>{const g=f.map(v=>v.id);if(!g.includes(c)&&c!=="system"){console.warn(`[WakaUI] Theme "${c}" is not in the list of available themes:`,g);return}h(c),localStorage.setItem(s,c)},[f,s]),u=i.useMemo(()=>({theme:d,setTheme:b,themes:f,systemTheme:m,isLoadingThemes:S,themesSource:j}),[d,b,f,m,S,j]);return e.jsx(ui.Provider,{value:u,children:t})}function ep(t){return t.length===0?[]:typeof t[0]=="string"?t.map(a=>({id:a,label:ap(a),previewColor:rp(a)})):t}async function tp(t){try{const a=await fetch("/api/themes/list",{cache:"no-store"});if(!a.ok)throw new Error(`HTTP ${a.status}`);return(await a.json()).themes||[]}catch(a){return console.error("[ThemeProvider] Failed to fetch themes from S3:",a),[]}}function ap(t){return t.split("-").map(a=>a.charAt(0).toUpperCase()+a.slice(1)).join(" ")}function rp(t){return{light:"#3b82f6",dark:"#1e293b",forest:"#10b981",sunset:"#f59e0b",twilight:"#8b5cf6",monochrome:"#6b7280",perpetuity:"#ec4899"}[t]||"#3b82f6"}function sp(){const t=i.useContext(ui);if(!t)throw new Error("useTheme must be used within a ThemeProvider");return t}function np({children:t,config:a}){const[r]=i.useState(()=>lt.createInstance()),[s,n]=i.useState(!1);return i.useEffect(()=>{(async()=>{try{await r.use(et.initReactI18next).init({lng:a.language.defaultLanguage,fallbackLng:a.language.defaultLanguage,supportedLngs:a.language.supportedLanguages,resources:a.language.resources||{},interpolation:{escapeValue:!1},react:{useSuspense:!1},debug:a.debug}),a.language.s3Config&&await op(r,a.language.s3Config,a.language.supportedLanguages),n(!0),a.debug&&console.log("[WakaUI] i18n initialized successfully")}catch(l){console.error("[WakaUI] Failed to initialize i18n:",l),n(!0)}})()},[r,a]),i.useEffect(()=>{if(!s)return;const o=a.language.storageKey||"waka-ui-language",l=localStorage.getItem(o);l&&a.language.supportedLanguages.includes(l)&&r.changeLanguage(l);const d=h=>{localStorage.setItem(o,h),a.debug&&console.log(`[WakaUI] Language changed to: ${h}`)};return r.on("languageChanged",d),()=>{r.off("languageChanged",d)}},[s,r,a]),s?e.jsx(et.I18nextProvider,{i18n:r,children:e.jsx(ci,{languages:a.language.languages||[],defaultLanguage:a.language.defaultLanguage,s3Config:a.language.s3Config?{baseUrl:a.language.s3Config.bucketUrl,prefix:a.language.s3Config.translationsPath?`${a.language.s3Config.translationsPath}/`:"",extension:"json"}:void 0,children:e.jsx(Do,{themes:a.theme?.themes||[{id:"default",label:"Default"}],defaultTheme:a.theme?.defaultTheme||"default",s3Config:a.theme?.s3Config,enableDarkMode:a.theme?.enableSystem,children:t})})}):e.jsx("div",{style:{padding:"20px",textAlign:"center"},children:"Loading WakaUI..."})}async function op(t,a,r){if(!a)return;const{bucketUrl:s,translationsPath:n="translations"}=a;try{await Promise.all(r.map(async o=>{try{const l=`${s}/${n}/${o}.json`,d=await fetch(l);if(!d.ok){console.warn(`[WakaUI] Failed to load translations for ${o} from S3`);return}const h=await d.json();t.addResourceBundle(o,"translation",h,!0,!0),process.env.NODE_ENV==="development"&&console.log(`[WakaUI] Loaded translations for ${o} from S3`)}catch(l){console.warn(`[WakaUI] Error loading translations for ${o}:`,l)}}))}catch(o){console.error("[WakaUI] Error loading translations from S3:",o)}}function ip(){const{i18n:t,t:a}=et.useTranslation(),r=Zr(),s=zr();return{currentLanguage:t.language||r.currentLanguage,changeLanguage:async n=>{await r.changeLanguage(n),await t.changeLanguage(n)},languages:r.languages,isLanguageLoading:r.isLoading,currentTheme:s.currentTheme,changeTheme:s.changeTheme,themes:s.themes,isThemeLoading:s.isLoading,preloadTheme:s.preloadTheme,isThemeLoaded:s.isThemeLoaded,t:a}}const Qr=i.createContext(void 0);function lp({children:t,initialSelection:a,onSelectionChange:r,persistKey:s="admincrumb-selection"}){const[n,o]=i.useState(()=>{if(typeof window<"u"&&s){const S=localStorage.getItem(s);if(S)try{return JSON.parse(S)}catch(k){console.error("Failed to parse stored admincrumb selection",k)}}return a||{}});i.useEffect(()=>{typeof window<"u"&&s&&localStorage.setItem(s,JSON.stringify(n))},[n,s]),i.useEffect(()=>{r?.(n)},[n,r]);const l=i.useCallback(S=>{o({partner:S,network:void 0,customer:void 0})},[]),d=i.useCallback(S=>{o(k=>({...k,network:S,customer:void 0}))},[]),h=i.useCallback(S=>{o(k=>({...k,customer:S}))},[]),m=i.useCallback(()=>{o({})},[]),p=i.useMemo(()=>!!(n.partner||n.network||n.customer),[n]),f=i.useCallback(()=>({...n.partner?.id&&{partnerId:n.partner.id},...n.network?.id&&{networkId:n.network.id},...n.customer?.id&&{customerId:n.customer.id}}),[n]),x=i.useMemo(()=>({selection:n,setPartner:l,setNetwork:d,setCustomer:h,reset:m,isFiltered:p,getFilterQuery:f}),[n,l,d,h,m,p,f]);return e.jsx(Qr.Provider,{value:x,children:t})}function dp(){const t=i.useContext(Qr);if(!t)throw new Error("useAdmincrumbContext must be used within AdmincrumbProvider");return t}function cp(){return i.useContext(Qr)}const up={github:T.Github,twitter:T.Twitter,linkedin:T.Linkedin,email:T.Mail};function mp({columns:t=[],socialLinks:a=[],copyright:r="© 2024 Tous droits réservés.",className:s}){return e.jsx("footer",{className:w("bg-muted/40",s),children:e.jsxs("div",{className:"container mx-auto px-4 py-12",children:[e.jsxs("div",{className:"grid grid-cols-1 gap-8 md:grid-cols-2 lg:grid-cols-4",children:[t.map((n,o)=>e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:n.title}),e.jsx("ul",{className:"space-y-2",children:n.links.map((l,d)=>e.jsx("li",{children:e.jsx("a",{href:l.href,className:"text-sm text-muted-foreground hover:text-foreground transition-colors",children:l.label})},d))})]},o)),a.length>0&&e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Suivez-nous"}),e.jsx("div",{className:"flex space-x-4",children:a.map((n,o)=>{const l=up[n.platform];return e.jsx(L,{variant:"ghost",size:"icon",asChild:!0,className:"h-8 w-8",children:e.jsx("a",{href:n.url,target:"_blank",rel:"noopener noreferrer","aria-label":n.platform,children:e.jsx(l,{className:"h-4 w-4"})})},o)})})]})]}),e.jsx(At,{className:"my-8"}),e.jsxs("div",{className:"flex flex-col items-center justify-between space-y-4 md:flex-row md:space-y-0",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:r}),e.jsxs("div",{className:"flex space-x-6",children:[e.jsx("a",{href:"/privacy",className:"text-sm text-muted-foreground hover:text-foreground transition-colors",children:"Politique de confidentialité"}),e.jsx("a",{href:"/terms",className:"text-sm text-muted-foreground hover:text-foreground transition-colors",children:"Conditions d'utilisation"})]})]})]})})}function fp({items:t,defaultActiveId:a,variant:r="default",size:s="md",className:n,onTabChange:o}){const[l,d]=i.useState(a||t[0]?.id||""),h=f=>{d(f),o?.(f)},m={sm:"h-8 px-3 text-sm",md:"h-10 px-4 text-sm",lg:"h-12 px-6 text-base"},p={default:"bg-background",pills:"bg-muted rounded-full",underline:"bg-transparent border-b-2 border-transparent data-[state=active]:border-primary"};return e.jsx("div",{className:w("w-full",n),children:e.jsxs(_r,{value:l,onValueChange:h,children:[e.jsx($a,{className:w("grid w-full",r==="pills"&&"grid-cols-auto",r!=="pills"&&`grid-cols-${t.length}`,p[r]),children:t.map(f=>e.jsx(ca,{value:f.id,disabled:f.disabled,className:w(m[s],r==="underline"&&"rounded-none border-b-2 border-transparent data-[state=active]:border-primary",r==="pills"&&"rounded-full"),children:f.label},f.id))}),t.map(f=>e.jsx(ua,{value:f.id,className:"mt-6",children:f.content},f.id))]})})}function hp({variant:t="dropdown",showFlags:a=!0,className:r}){const{currentLanguage:s,languages:n,changeLanguage:o,isLoading:l}=Zr(),d=n.find(h=>h.code===s);return t==="select"?e.jsxs(ut,{value:s,onValueChange:o,disabled:l,children:[e.jsx(rt,{className:w("w-[180px]",r),children:e.jsxs(mt,{children:[a&&d?.flagEmoji&&e.jsx("span",{className:"mr-2",children:d.flagEmoji}),d?.label]})}),e.jsx(st,{children:n.map(h=>e.jsxs(Qe,{value:h.code,children:[a&&h.flagEmoji&&e.jsx("span",{className:"mr-2",children:h.flagEmoji}),h.label]},h.code))})]}):e.jsxs(Zt,{children:[e.jsx(Qt,{asChild:!0,children:e.jsxs(L,{variant:"outline",size:"sm",className:w("gap-2",r),disabled:l,children:[e.jsx(T.Globe,{className:"h-4 w-4"}),a&&d?.flagEmoji&&e.jsx("span",{children:d.flagEmoji}),d?.label]})}),e.jsx(It,{align:"end",children:n.map(h=>e.jsxs(kr,{onClick:()=>o(h.code),className:"cursor-pointer",children:[a&&h.flagEmoji&&e.jsx("span",{className:"mr-2",children:h.flagEmoji}),h.label]},h.code))})]})}function pp({children:t,header:a,sidebar:r,footer:s,collapsible:n=!1,className:o}){const[l,d]=i.useState(!1);return e.jsxs("div",{className:w("min-h-screen bg-background",o),children:[a&&e.jsx("header",{className:"sticky top-0 z-50 w-full border-b bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/60",children:e.jsxs("div",{className:"container flex h-14 max-w-screen-2xl items-center",children:[n&&r&&e.jsxs(Rr,{open:l,onOpenChange:d,children:[e.jsx(Ar,{asChild:!0,children:e.jsxs(L,{variant:"ghost",size:"icon",className:"md:hidden",children:[e.jsx(T.Menu,{className:"h-5 w-5"}),e.jsx("span",{className:"sr-only",children:"Ouvrir le menu"})]})}),e.jsx(Fa,{side:"left",className:"w-72 p-0",children:e.jsxs("div",{className:"flex h-full flex-col",children:[e.jsxs("div",{className:"flex items-center justify-between p-4",children:[e.jsx("h2",{className:"text-lg font-semibold",children:"Navigation"}),e.jsx(L,{variant:"ghost",size:"icon",onClick:()=>d(!1),children:e.jsx(T.X,{className:"h-4 w-4"})})]}),e.jsx("div",{className:"flex-1 overflow-y-auto p-4",children:r})]})})]}),a]})}),e.jsxs("div",{className:"flex",children:[r&&!n&&e.jsx("aside",{className:"hidden w-64 border-r bg-muted/40 md:block",children:e.jsx("div",{className:"h-full overflow-y-auto p-4",children:r})}),e.jsx("main",{className:"flex-1",children:e.jsx("div",{className:"container mx-auto p-4",children:t})})]}),s&&e.jsx("footer",{className:"border-t bg-muted/40",children:e.jsx("div",{className:"container mx-auto p-4",children:s})})]})}function gp({onSubmit:t,onForgotPassword:a,onSignUp:r,showSocialLogin:s=!1,className:n}){const[o,l]=i.useState({email:"",password:"",rememberMe:!1}),[d,h]=i.useState(!1),m=async f=>{f.preventDefault(),h(!0);try{await t?.(o)}finally{h(!1)}},p=f=>x=>{l(S=>({...S,[f]:f==="rememberMe"?x.target.checked:x.target.value}))};return e.jsx("div",{className:w("flex min-h-screen items-center justify-center p-4",n),children:e.jsxs(Ve,{className:"w-full max-w-md",children:[e.jsxs(Ke,{className:"space-y-1",children:[e.jsx(We,{className:"text-2xl text-center",children:"Connexion"}),e.jsx(Pt,{className:"text-center",children:"Entrez vos identifiants pour accéder à votre compte"})]}),e.jsxs(Ze,{className:"space-y-4",children:[s&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs(L,{variant:"outline",className:"w-full",children:[e.jsx(T.Github,{className:"mr-2 h-4 w-4"}),"GitHub"]}),e.jsxs(L,{variant:"outline",className:"w-full",children:[e.jsx(T.Mail,{className:"mr-2 h-4 w-4"}),"Google"]})]}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute inset-0 flex items-center",children:e.jsx(At,{className:"w-full"})}),e.jsx("div",{className:"relative flex justify-center text-xs uppercase",children:e.jsx("span",{className:"bg-background px-2 text-muted-foreground",children:"Ou continuez avec"})})]})]}),e.jsxs("form",{onSubmit:m,className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:"email",children:"Email"}),e.jsx(me,{id:"email",type:"email",placeholder:"votre@email.com",value:o.email,onChange:p("email"),required:!0})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{htmlFor:"password",children:"Mot de passe"}),e.jsx(me,{id:"password",type:"password",placeholder:"••••••••",value:o.password,onChange:p("password"),required:!0})]}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx("input",{id:"remember",type:"checkbox",checked:o.rememberMe,onChange:p("rememberMe"),className:"h-4 w-4 rounded border-gray-300"}),e.jsx(ge,{htmlFor:"remember",className:"text-sm",children:"Se souvenir de moi"})]}),a&&e.jsx(L,{type:"button",variant:"link",className:"px-0 text-sm",onClick:a,children:"Mot de passe oublié ?"})]}),e.jsx(L,{type:"submit",className:"w-full",disabled:d,children:d?"Connexion...":"Se connecter"})]}),r&&e.jsxs("div",{className:"text-center text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:"Pas encore de compte ? "}),e.jsx(L,{type:"button",variant:"link",className:"px-0 text-sm",onClick:r,children:"S'inscrire"})]})]})]})})}exports.Accordion=ml;exports.AccordionContent=Ws;exports.AccordionItem=zs;exports.AccordionTrigger=Vs;exports.AdmincrumbProvider=lp;exports.Alert=Us;exports.AlertDescription=Gs;exports.AlertDialog=Hs;exports.AlertDialogAction=fr;exports.AlertDialogCancel=hr;exports.AlertDialogContent=lr;exports.AlertDialogDescription=mr;exports.AlertDialogFooter=cr;exports.AlertDialogHeader=dr;exports.AlertDialogOverlay=ir;exports.AlertDialogPortal=qs;exports.AlertDialogTitle=ur;exports.AlertDialogTrigger=fl;exports.AlertTitle=Bs;exports.AspectRatio=pl;exports.Avatar=Xs;exports.AvatarFallback=Js;exports.AvatarImage=Ys;exports.Badge=He;exports.BlockLanguageSelector=hp;exports.Blockquote=Wo;exports.Button=L;exports.Calendar=pr;exports.Card=Ve;exports.CardContent=Ze;exports.CardDescription=Pt;exports.CardFooter=Zs;exports.CardHeader=Ke;exports.CardTitle=We;exports.Checkbox=at;exports.Code=un;exports.Collapsible=Pf;exports.CollapsibleContent=Rf;exports.CollapsibleTrigger=Mf;exports.Command=_t;exports.CommandDialog=$f;exports.CommandEmpty=ia;exports.CommandGroup=la;exports.CommandInput=oa;exports.CommandItem=da;exports.CommandList=Nr;exports.CommandSeparator=xn;exports.CommandShortcut=vn;exports.ContextMenu=yn;exports.ContextMenuCheckboxItem=Sn;exports.ContextMenuContent=Sr;exports.ContextMenuGroup=If;exports.ContextMenuItem=it;exports.ContextMenuLabel=Cn;exports.ContextMenuPortal=Lf;exports.ContextMenuRadioGroup=_f;exports.ContextMenuRadioItem=kn;exports.ContextMenuSeparator=Kt;exports.ContextMenuShortcut=Tn;exports.ContextMenuSub=Of;exports.ContextMenuSubContent=Nn;exports.ContextMenuSubTrigger=jn;exports.ContextMenuTrigger=wn;exports.DataTable=Vh;exports.DataTableAdvanced=Uh;exports.DataTableColumnResizer=Bh;exports.DataTableContextMenu=Jh;exports.DataTableEditCell=Pa;exports.DataTableFilters=Kr;exports.DataTableGroupTotals=Xh;exports.DataTableGrouping=Gh;exports.DataTableGroupingControls=Yh;exports.DataTablePagination=Jr;exports.DataTableSelection=Kh;exports.DataTableToolbar=ma;exports.Dialog=mn;exports.DialogClose=Ff;exports.DialogContent=jr;exports.DialogDescription=bn;exports.DialogFooter=pn;exports.DialogHeader=hn;exports.DialogOverlay=wr;exports.DialogPortal=fn;exports.DialogTitle=gn;exports.DialogTrigger=Af;exports.DropdownMenu=Zt;exports.DropdownMenuCheckboxItem=Tt;exports.DropdownMenuContent=It;exports.DropdownMenuGroup=zf;exports.DropdownMenuItem=kr;exports.DropdownMenuLabel=ea;exports.DropdownMenuPortal=Vf;exports.DropdownMenuRadioGroup=Hf;exports.DropdownMenuRadioItem=Pn;exports.DropdownMenuSeparator=ta;exports.DropdownMenuShortcut=Mn;exports.DropdownMenuSub=Wf;exports.DropdownMenuSubContent=Dn;exports.DropdownMenuSubTrigger=En;exports.DropdownMenuTrigger=Qt;exports.Footer=mp;exports.Form=nh;exports.FormControl=Hn;exports.FormDescription=qn;exports.FormField=oh;exports.FormItem=Vn;exports.FormLabel=Wn;exports.FormMessage=Un;exports.Heading=zo;exports.Headtab=fp;exports.HoverCard=ih;exports.HoverCardContent=Bn;exports.HoverCardTrigger=lh;exports.Input=me;exports.InputOTP=Gn;exports.Kbd=qo;exports.Label=ge;exports.LanguageProvider=ci;exports.LanguageSelector=ch;exports.Layout=pp;exports.LegacyThemeProvider=Qh;exports.Login=gp;exports.Menubar=Jn;exports.MenubarCheckboxItem=ao;exports.MenubarContent=eo;exports.MenubarGroup=mh;exports.MenubarItem=to;exports.MenubarLabel=so;exports.MenubarMenu=uh;exports.MenubarPortal=fh;exports.MenubarRadioGroup=ph;exports.MenubarRadioItem=ro;exports.MenubarSeparator=no;exports.MenubarShortcut=oo;exports.MenubarSub=hh;exports.MenubarSubContent=Qn;exports.MenubarSubTrigger=Zn;exports.MenubarTrigger=Kn;exports.NavigationMenu=io;exports.NavigationMenuContent=mo;exports.NavigationMenuIndicator=fo;exports.NavigationMenuItem=gh;exports.NavigationMenuLink=bh;exports.NavigationMenuList=lo;exports.NavigationMenuTrigger=uo;exports.NavigationMenuViewport=Pr;exports.Popover=xt;exports.PopoverContent=ct;exports.PopoverTrigger=vt;exports.Progress=ho;exports.RadioGroup=po;exports.RadioGroupItem=go;exports.ScrollArea=Lt;exports.ScrollBar=Mr;exports.Select=ut;exports.SelectContent=st;exports.SelectGroup=dh;exports.SelectItem=Qe;exports.SelectLabel=Xn;exports.SelectScrollDownButton=Dr;exports.SelectScrollUpButton=Er;exports.SelectSeparator=Yn;exports.SelectTrigger=rt;exports.SelectValue=mt;exports.Separator=At;exports.Sheet=Rr;exports.SheetClose=xh;exports.SheetContent=Fa;exports.SheetDescription=Lr;exports.SheetFooter=xo;exports.SheetHeader=$r;exports.SheetOverlay=Fr;exports.SheetPortal=bo;exports.SheetTitle=Ir;exports.SheetTrigger=Ar;exports.Skeleton=yh;exports.Slider=vo;exports.Switch=Or;exports.Table=yo;exports.TableBody=jo;exports.TableCaption=To;exports.TableCell=Co;exports.TableFooter=No;exports.TableHead=ko;exports.TableHeader=wo;exports.TableRow=So;exports.Tabs=_r;exports.TabsContent=ua;exports.TabsList=$a;exports.TabsTrigger=ca;exports.Text=Oo;exports.Textarea=pa;exports.ThemeLoader=vr;exports.ThemeProvider=Do;exports.ThemeSelector=Po;exports.Toast=Wr;exports.ToastAction=Ro;exports.ToastClose=Hr;exports.ToastDescription=Ur;exports.ToastProvider=Mo;exports.ToastTitle=qr;exports.ToastViewport=Vr;exports.Toaster=kh;exports.Toggle=Io;exports.Tooltip=rr;exports.TooltipContent=Da;exports.TooltipProvider=ar;exports.TooltipTrigger=sr;exports.WakaAdmincrumb=Bo;exports.WakaCarousel=Mh;exports.WakaDateTimePicker=Gr;exports.WakaDateTimePickerForm=Rh;exports.WakaNotifications=Xo;exports.WakaProvider=np;exports.WakaSpinner=Yo;exports.WakaThemeCreator=Jo;exports.WakaThemeManager=Zo;exports.applyTheme=bf;exports.badgeVariants=Ks;exports.blockquoteVariants=Vo;exports.calculateDuration=Jm;exports.cn=w;exports.compareRanges=mf;exports.createBookingDateValidator=af;exports.createCardExpiryValidator=tf;exports.createCommonPresets=Vm;exports.createCustomPreset=qm;exports.createLastDaysPresets=Wm;exports.createMaxAgeValidator=Xm;exports.createMaxRangeDaysValidator=rf;exports.createMinAgeValidator=Gm;exports.createMonthlyPresets=lf;exports.createNextDaysPresets=Hm;exports.createQuarterPresets=of;exports.dateToTimestamp=df;exports.exportToCSV=Qo;exports.exportToJSON=ei;exports.formatDateRange=Km;exports.getDatesInMonth=xr;exports.getFrenchHolidays=Zm;exports.getThemeLoader=yr;exports.getWeekdaysInMonth=ef;exports.getWeekendsInMonth=Qm;exports.getWorkingDays=nf;exports.headingVariants=_o;exports.initThemeLoader=pf;exports.isDateInRange=dt;exports.isFutureDate=Um;exports.isHoliday=cn;exports.isNotExpired=Ym;exports.isPastDate=ln;exports.isSameDay=sf;exports.isToday=Bm;exports.isWeekday=br;exports.isWeekend=dn;exports.kbdVariants=Ho;exports.loadTableState=ai;exports.loadTheme=gf;exports.mergeRanges=ff;exports.navigationMenuTriggerStyle=co;exports.normalizeDate=uf;exports.parseCSV=Oh;exports.rangesOverlap=hf;exports.reducer=Ao;exports.saveTableState=ti;exports.textVariants=Lo;exports.themeManagerVariants=Ko;exports.timestampToDate=cf;exports.toast=Fo;exports.toggleVariants=$o;exports.tweak=Ea;exports.useAdmincrumb=Ph;exports.useAdmincrumbContext=dp;exports.useAdmincrumbContextOptional=cp;exports.useDataTable=ri;exports.useDataTableAdvanced=si;exports.useDataTableEdit=Yr;exports.useDataTableExport=oi;exports.useDataTableImport=ii;exports.useDataTableSelection=Zh;exports.useDataTableTheme=li;exports.useDataTableVirtualization=ni;exports.useDateForm=Ah;exports.useFormField=ha;exports.useLanguage=Zr;exports.useLegacyTheme=sp;exports.useNotifications=$h;exports.useTableLayout=Xr;exports.useTheme=zr;exports.useThemeLoader=xf;exports.useToast=Br;exports.useTranslation=Go;exports.useWaka=ip;