react-admin-crud-manager 1.2.5 → 1.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +16 -16
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +3366 -1837
- package/dist/index.es.js.map +1 -1
- package/dist/types/data/countries.d.ts +4 -2
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
"use strict";const r=require("react/jsx-runtime"),b=require("react"),re=require("lucide-react"),dr=require("react-dom"),ue=require("@iconify/react"),Vr=require("@tinymce/tinymce-react"),ke=require("notistack");function Xr(a){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const e in a)if(e!=="default"){const t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(o,e,t.get?t:{enumerable:!0,get:()=>a[e]})}}return o.default=a,Object.freeze(o)}const ve=Xr(b),qr='@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";.racm-root *,.racm-root :before,.racm-root :after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}.racm-root :before,.racm-root :after{--tw-content: ""}.racm-root{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal}.racm-root{margin:0;line-height:inherit}.racm-root hr{height:0;color:inherit;border-top-width:1px}.racm-root abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.racm-root h1,.racm-root h2,.racm-root h3,.racm-root h4,.racm-root h5,.racm-root h6{font-size:inherit;font-weight:inherit}.racm-root a{color:inherit;text-decoration:inherit}.racm-root b,.racm-root strong{font-weight:bolder}.racm-root code,.racm-root kbd,.racm-root samp,.racm-root pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}.racm-root small{font-size:80%}.racm-root sub,.racm-root sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.racm-root sub{bottom:-.25em}.racm-root sup{top:-.5em}.racm-root table{text-indent:0;border-color:inherit;border-collapse:collapse}.racm-root button,.racm-root input,.racm-root optgroup,.racm-root select,.racm-root textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}.racm-root button,.racm-root select{text-transform:none}.racm-root button,.racm-root [type=button],.racm-root [type=reset],.racm-root [type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}.racm-root :-moz-focusring{outline:auto}.racm-root :-moz-ui-invalid{box-shadow:none}.racm-root progress{vertical-align:baseline}.racm-root ::-webkit-inner-spin-button,.racm-root ::-webkit-outer-spin-button{height:auto}.racm-root [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.racm-root ::-webkit-search-decoration{-webkit-appearance:none}.racm-root ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.racm-root summary{display:list-item}.racm-root blockquote,.racm-root dl,.racm-root dd,.racm-root h1,.racm-root h2,.racm-root h3,.racm-root h4,.racm-root h5,.racm-root h6,.racm-root hr,.racm-root figure,.racm-root p,.racm-root pre{margin:0}.racm-root fieldset{margin:0;padding:0}.racm-root legend{padding:0}.racm-root ol,.racm-root ul,.racm-root menu{list-style:none;margin:0;padding:0}.racm-root dialog{padding:0}.racm-root textarea{resize:vertical}.racm-root input::-moz-placeholder,.racm-root textarea::-moz-placeholder{opacity:1;color:#9ca3af}.racm-root input::placeholder,.racm-root textarea::placeholder{opacity:1;color:#9ca3af}.racm-root button,.racm-root [role=button]{cursor:pointer}.racm-root :disabled{cursor:default}.racm-root img,.racm-root svg,.racm-root video,.racm-root canvas,.racm-root audio,.racm-root iframe,.racm-root embed,.racm-root object{display:block;vertical-align:middle}.racm-root img,.racm-root video{max-width:100%;height:auto}.racm-root [hidden]{display:none}.racm-root{--background: 0 0% 100%;--foreground: 0 0% 3.9%;--card: 0 0% 100%;--card-foreground: 0 0% 3.9%;--popover: 0 0% 100%;--popover-foreground: 0 0% 3.9%;--primary: 0 0% 9%;--primary-foreground: 0 0% 98%;--secondary: 0 0% 96.1%;--secondary-foreground: 0 0% 9%;--muted: 0 0% 96.1%;--muted-foreground: 0 0% 45.1%;--accent: 0 0% 96.1%;--accent-foreground: 0 0% 9%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 0 0% 89.8%;--input: 0 0% 89.8%;--ring: 0 0% 3.9%;--chart-1: 12 76% 61%;--chart-2: 173 58% 39%;--chart-3: 197 37% 24%;--chart-4: 43 74% 66%;--chart-5: 27 87% 67%;--radius: .5rem}.racm-root *{border-color:hsl(var(--border, 0 0% 89.8%))}.racm-root{background-color:hsl(var(--background, 0 0% 100%));color:hsl(var(--foreground, 0 0% 3.9%))}.racm-root *,.racm-root :before,.racm-root :after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.racm-root ::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.racm-root .container{width:100%}@media (min-width: 640px){.racm-root .container{max-width:640px}}@media (min-width: 768px){.racm-root .container{max-width:768px}}@media (min-width: 1024px){.racm-root .container{max-width:1024px}}@media (min-width: 1280px){.racm-root .container{max-width:1280px}}@media (min-width: 1536px){.racm-root .container{max-width:1536px}}.racm-root .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.racm-root .pointer-events-none{pointer-events:none}.racm-root .pointer-events-auto{pointer-events:auto}.racm-root .fixed{position:fixed}.racm-root .absolute{position:absolute}.racm-root .relative{position:relative}.racm-root .inset-0{top:0;right:0;bottom:0;left:0}.racm-root .inset-y-0{top:0;bottom:0}.racm-root .-bottom-4{bottom:-1rem}.racm-root .-right-2{right:-.5rem}.racm-root .-right-6{right:-1.5rem}.racm-root .-top-2{top:-.5rem}.racm-root .-top-6{top:-1.5rem}.racm-root .left-1{left:.25rem}.racm-root .left-1\\/2{left:50%}.racm-root .left-3{left:.75rem}.racm-root .right-0{right:0}.racm-root .right-1{right:.25rem}.racm-root .right-1\\/2{right:50%}.racm-root .right-2{right:.5rem}.racm-root .right-3{right:.75rem}.racm-root .right-4{right:1rem}.racm-root .right-\\[50\\%\\]{right:50%}.racm-root .top-0{top:0}.racm-root .top-1{top:.25rem}.racm-root .top-1\\/2{top:50%}.racm-root .top-2{top:.5rem}.racm-root .top-4{top:1rem}.racm-root .top-\\[80\\%\\]{top:80%}.racm-root .top-full{top:100%}.racm-root .z-10{z-index:10}.racm-root .z-20{z-index:20}.racm-root .z-40{z-index:40}.racm-root .z-50{z-index:50}.racm-root .col-span-12{grid-column:span 12 / span 12}.racm-root .col-span-6{grid-column:span 6 / span 6}.racm-root .mb-0{margin-bottom:0}.racm-root .mb-1{margin-bottom:.25rem}.racm-root .mb-3{margin-bottom:.75rem}.racm-root .mb-6{margin-bottom:1.5rem}.racm-root .ml-1{margin-left:.25rem}.racm-root .ml-2{margin-left:.5rem}.racm-root .mr-2{margin-right:.5rem}.racm-root .mt-1{margin-top:.25rem}.racm-root .mt-2{margin-top:.5rem}.racm-root .mt-auto{margin-top:auto}.racm-root .inline{display:inline}.racm-root .flex{display:flex}.racm-root .inline-flex{display:inline-flex}.racm-root .table{display:table}.racm-root .table-row{display:table-row}.racm-root .grid{display:grid}.racm-root .hidden{display:none}.racm-root .h-1{height:.25rem}.racm-root .h-10{height:2.5rem}.racm-root .h-11{height:2.75rem}.racm-root .h-12{height:3rem}.racm-root .h-16{height:4rem}.racm-root .h-2{height:.5rem}.racm-root .h-20{height:5rem}.racm-root .h-28{height:7rem}.racm-root .h-3{height:.75rem}.racm-root .h-32{height:8rem}.racm-root .h-4{height:1rem}.racm-root .h-5{height:1.25rem}.racm-root .h-6{height:1.5rem}.racm-root .h-64{height:16rem}.racm-root .h-7{height:1.75rem}.racm-root .h-72{height:18rem}.racm-root .h-8{height:2rem}.racm-root .h-9{height:2.25rem}.racm-root .h-\\[10px\\]{height:10px}.racm-root .h-\\[150px\\]{height:150px}.racm-root .h-\\[36px\\]{height:36px}.racm-root .h-\\[40px\\]{height:40px}.racm-root .h-full{height:100%}.racm-root .max-h-40{max-height:10rem}.racm-root .max-h-60{max-height:15rem}.racm-root .max-h-\\[260px\\]{max-height:260px}.racm-root .max-h-\\[90vh\\]{max-height:90vh}.racm-root .min-h-\\[52px\\]{min-height:52px}.racm-root .w-1{width:.25rem}.racm-root .w-10{width:2.5rem}.racm-root .w-11{width:2.75rem}.racm-root .w-12{width:3rem}.racm-root .w-16{width:4rem}.racm-root .w-2{width:.5rem}.racm-root .w-20{width:5rem}.racm-root .w-24{width:6rem}.racm-root .w-3{width:.75rem}.racm-root .w-32{width:8rem}.racm-root .w-4{width:1rem}.racm-root .w-48{width:12rem}.racm-root .w-5{width:1.25rem}.racm-root .w-6{width:1.5rem}.racm-root .w-64{width:16rem}.racm-root .w-7{width:1.75rem}.racm-root .w-8{width:2rem}.racm-root .w-80{width:20rem}.racm-root .w-\\[260px\\]{width:260px}.racm-root .w-\\[28rem\\]{width:28rem}.racm-root .w-\\[36px\\]{width:36px}.racm-root .w-\\[42\\%\\]{width:42%}.racm-root .w-full{width:100%}.racm-root .w-max{width:-moz-max-content;width:max-content}.racm-root .min-w-0{min-width:0px}.racm-root .min-w-\\[100px\\]{min-width:100px}.racm-root .min-w-\\[150px\\]{min-width:150px}.racm-root .min-w-\\[220px\\]{min-width:220px}.racm-root .min-w-\\[40px\\]{min-width:40px}.racm-root .min-w-\\[78px\\]{min-width:78px}.racm-root .max-w-2xl{max-width:42rem}.racm-root .max-w-4xl{max-width:56rem}.racm-root .max-w-5xl{max-width:64rem}.racm-root .max-w-\\[200px\\]{max-width:200px}.racm-root .max-w-\\[300px\\]{max-width:300px}.racm-root .max-w-full{max-width:100%}.racm-root .max-w-lg{max-width:32rem}.racm-root .max-w-md{max-width:28rem}.racm-root .max-w-xs{max-width:20rem}.racm-root .flex-1{flex:1 1 0%}.racm-root .flex-shrink{flex-shrink:1}.racm-root .flex-shrink-0,.racm-root .shrink-0{flex-shrink:0}.racm-root .border-collapse{border-collapse:collapse}.racm-root .-translate-x-1\\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.racm-root .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.racm-root .animate-spin{animation:spin 1s linear infinite}.racm-root .cursor-not-allowed{cursor:not-allowed}.racm-root .cursor-pointer{cursor:pointer}.racm-root .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.racm-root .resize{resize:both}.racm-root .grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.racm-root .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.racm-root .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.racm-root .flex-col{flex-direction:column}.racm-root .items-center{align-items:center}.racm-root .items-stretch{align-items:stretch}.racm-root .justify-end{justify-content:flex-end}.racm-root .justify-center{justify-content:center}.racm-root .justify-between{justify-content:space-between}.racm-root .gap-1{gap:.25rem}.racm-root .gap-1\\.5{gap:.375rem}.racm-root .gap-2{gap:.5rem}.racm-root .gap-2\\.5{gap:.625rem}.racm-root .gap-3{gap:.75rem}.racm-root .gap-4{gap:1rem}.racm-root .gap-6{gap:1.5rem}.racm-root .-space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.5rem * var(--tw-space-x-reverse));margin-left:calc(-.5rem * calc(1 - var(--tw-space-x-reverse)))}.racm-root .space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.racm-root .space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.racm-root .space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.racm-root .space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.racm-root .space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.racm-root .divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.racm-root .divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(243 244 246 / var(--tw-divide-opacity))}.racm-root .overflow-auto{overflow:auto}.racm-root .overflow-hidden{overflow:hidden}.racm-root .overflow-x-auto{overflow-x:auto}.racm-root .overflow-y-auto{overflow-y:auto}.racm-root .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.racm-root .text-ellipsis{text-overflow:ellipsis}.racm-root .whitespace-nowrap{white-space:nowrap}.racm-root .break-words{overflow-wrap:break-word}.racm-root .rounded{border-radius:.25rem}.racm-root .rounded-full{border-radius:9999px}.racm-root .rounded-lg{border-radius:var(--radius)}.racm-root .rounded-md{border-radius:calc(var(--radius) - 2px)}.racm-root .rounded-sm{border-radius:calc(var(--radius) - 4px)}.racm-root .rounded-xl{border-radius:.75rem}.racm-root .border{border-width:1px}.racm-root .border-2{border-width:2px}.racm-root .border-4{border-width:4px}.racm-root .border-8{border-width:8px}.racm-root .border-b{border-bottom-width:1px}.racm-root .border-l{border-left-width:1px}.racm-root .border-r{border-right-width:1px}.racm-root .border-t{border-top-width:1px}.racm-root .border-t-2{border-top-width:2px}.racm-root .border-dashed{border-style:dashed}.racm-root .border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity))}.racm-root .border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity))}.racm-root .border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity))}.racm-root .border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.racm-root .border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.racm-root .border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity))}.racm-root .border-green-600{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity))}.racm-root .border-primary,.racm-root .border-primary-500{border-color:var(--primary-500, #3b82f6)}.racm-root .border-purple-300{--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity))}.racm-root .border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity))}.racm-root .border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity))}.racm-root .border-red-600{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity))}.racm-root .border-teal-300{--tw-border-opacity: 1;border-color:rgb(94 234 212 / var(--tw-border-opacity))}.racm-root .border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.racm-root .border-white\\/30{border-color:#ffffff4d}.racm-root .border-yellow-300{--tw-border-opacity: 1;border-color:rgb(253 224 71 / var(--tw-border-opacity))}.racm-root .border-t-gray-200{--tw-border-opacity: 1;border-top-color:rgb(229 231 235 / var(--tw-border-opacity))}.racm-root .border-t-white{--tw-border-opacity: 1;border-top-color:rgb(255 255 255 / var(--tw-border-opacity))}.racm-root .\\!bg-transparent{background-color:transparent!important}.racm-root .bg-black\\/50{background-color:#00000080}.racm-root .bg-black\\/70{background-color:#000000b3}.racm-root .bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity))}.racm-root .bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}.racm-root .bg-blue-500\\/10{background-color:#3b82f61a}.racm-root .bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.racm-root .bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.racm-root .bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.racm-root .bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.racm-root .bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.racm-root .bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.racm-root .bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity))}.racm-root .bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity))}.racm-root .bg-primary{background-color:var(--primary-500, #3b82f6)}.racm-root .bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity))}.racm-root .bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity))}.racm-root .bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.racm-root .bg-red-500\\/95{background-color:#ef4444f2}.racm-root .bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.racm-root .bg-teal-100{--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity))}.racm-root .bg-transparent{background-color:transparent}.racm-root .bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.racm-root .bg-white\\/90{background-color:#ffffffe6}.racm-root .bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity))}.racm-root .bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.racm-root .to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.racm-root .object-contain{-o-object-fit:contain;object-fit:contain}.racm-root .object-cover{-o-object-fit:cover;object-fit:cover}.racm-root .p-1{padding:.25rem}.racm-root .p-2{padding:.5rem}.racm-root .p-4{padding:1rem}.racm-root .p-5{padding:1.25rem}.racm-root .px-2{padding-left:.5rem;padding-right:.5rem}.racm-root .px-3{padding-left:.75rem;padding-right:.75rem}.racm-root .px-4{padding-left:1rem;padding-right:1rem}.racm-root .px-5{padding-left:1.25rem;padding-right:1.25rem}.racm-root .px-6{padding-left:1.5rem;padding-right:1.5rem}.racm-root .px-8{padding-left:2rem;padding-right:2rem}.racm-root .py-1{padding-top:.25rem;padding-bottom:.25rem}.racm-root .py-2{padding-top:.5rem;padding-bottom:.5rem}.racm-root .py-3{padding-top:.75rem;padding-bottom:.75rem}.racm-root .py-4{padding-top:1rem;padding-bottom:1rem}.racm-root .py-6{padding-top:1.5rem;padding-bottom:1.5rem}.racm-root .pl-9{padding-left:2.25rem}.racm-root .pr-10{padding-right:2.5rem}.racm-root .pr-2{padding-right:.5rem}.racm-root .pr-3{padding-right:.75rem}.racm-root .text-left{text-align:left}.racm-root .text-center{text-align:center}.racm-root .text-base{font-size:1rem;line-height:1.5rem}.racm-root .text-lg{font-size:1.125rem;line-height:1.75rem}.racm-root .text-sm{font-size:.875rem;line-height:1.25rem}.racm-root .text-xl{font-size:1.25rem;line-height:1.75rem}.racm-root .text-xs{font-size:.75rem;line-height:1rem}.racm-root .font-bold{font-weight:700}.racm-root .font-medium{font-weight:500}.racm-root .font-semibold{font-weight:600}.racm-root .uppercase{text-transform:uppercase}.racm-root .italic{font-style:italic}.racm-root .leading-none{line-height:1}.racm-root .leading-snug{line-height:1.375}.racm-root .leading-tight{line-height:1.25}.racm-root .tracking-wide{letter-spacing:.025em}.racm-root .tracking-wider{letter-spacing:.05em}.racm-root .text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.racm-root .text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity))}.racm-root .text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity))}.racm-root .text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity))}.racm-root .text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root .text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.racm-root .text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.racm-root .text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.racm-root .text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.racm-root .text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.racm-root .text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity))}.racm-root .text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity))}.racm-root .text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity))}.racm-root .text-primary{color:var(--primary-500, #3b82f6)}.racm-root .text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity))}.racm-root .text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity))}.racm-root .text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.racm-root .text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity))}.racm-root .text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity))}.racm-root .text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity))}.racm-root .text-teal-700{--tw-text-opacity: 1;color:rgb(15 118 110 / var(--tw-text-opacity))}.racm-root .text-teal-800{--tw-text-opacity: 1;color:rgb(17 94 89 / var(--tw-text-opacity))}.racm-root .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root .text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity))}.racm-root .text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity))}.racm-root .underline{text-decoration-line:underline}.racm-root .placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root .placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root .placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))}.racm-root .placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))}.racm-root .opacity-0{opacity:0}.racm-root .opacity-100{opacity:1}.racm-root .opacity-50{opacity:.5}.racm-root .opacity-60{opacity:.6}.racm-root .opacity-75{opacity:.75}.racm-root .opacity-90{opacity:.9}.racm-root .shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .outline-none{outline:2px solid transparent;outline-offset:2px}.racm-root .outline{outline-style:solid}.racm-root .ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.racm-root .ring-blue-100{--tw-ring-opacity: 1;--tw-ring-color: rgb(219 234 254 / var(--tw-ring-opacity))}.racm-root .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.racm-root .backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.racm-root .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .duration-200{transition-duration:.2s}.racm-root .duration-300{transition-duration:.3s}.racm-root .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.racm-root .primary-bg{background-color:var(--primary-500)}.racm-root .primary-bg-light{background-color:var(--primary-100)}.racm-root .primary-bg-dark{background-color:var(--primary-700)}.racm-root .primary-text{color:var(--primary-600)}.racm-root .primary-border{border-color:var(--primary-300)}.racm-root .primary-hover:hover{background-color:var(--primary-600)}.racm-root{--foreground-rgb: 0, 0, 0;--background-start-rgb: 214, 219, 220;--background-end-rgb: 255, 255, 255}@media (prefers-color-scheme: dark){.racm-root{--foreground-rgb: 255, 255, 255;--background-start-rgb: 0, 0, 0;--background-end-rgb: 0, 0, 0}}.racm-root{height:100%}.racm-root{--scrollbar-thumb: #d1d5db;--scrollbar-thumb-hover: #9ca3af}.racm-root .dark{--scrollbar-thumb: #4b5563;--scrollbar-thumb-hover: #6b7280}.racm-root *{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.racm-root *::-webkit-scrollbar{width:6px;height:6px}.racm-root *::-webkit-scrollbar-track{background:transparent}.racm-root *::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:3px}.racm-root *::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}.racm-root h1{font-size:1.5rem;line-height:2rem;font-weight:700;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.racm-root :is(.dark h1){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root p{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.racm-root :is(.dark p){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root .table-search-field{position:relative;width:100%}@media (min-width: 640px){.racm-root .table-search-field{min-width:300px!important}}.racm-root .table-search-field .search-icon{position:absolute;left:.75rem;top:50%;height:1rem;width:1rem;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root :is(.dark .table-search-field .search-icon){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root .table-search-field input{height:36px;width:100%;border-radius:calc(var(--radius) - 2px);border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.75rem 1rem .75rem 2.25rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.racm-root .table-search-field input::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))}.racm-root .table-search-field input::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))}.racm-root .table-search-field input:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(147 197 253 / var(--tw-ring-opacity))}.racm-root .table-search-field input:disabled{opacity:.5}.racm-root :is(.dark .table-search-field input){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root :is(.dark .table-search-field input)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root :is(.dark .table-search-field input)::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root :is(.dark .table-search-field input){--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity))}.racm-root .filter-button-wrapper{position:relative;width:100%}@media (min-width: 640px){.racm-root .filter-button-wrapper{width:auto!important}}.racm-root .filter-button-wrapper .red-dot{position:absolute;top:.25rem;right:.25rem;height:.5rem;width:.5rem;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.racm-root .table-container{overflow:hidden;border-radius:var(--radius);border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root :is(.dark .table-container){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root .table-container table{min-width:100%}.racm-root .table-container table>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse));--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))}.racm-root :is(.dark .table-container table)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity))}.racm-root .table-container thead{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.racm-root :is(.dark .table-container thead){background-color:#37415199}.racm-root .table-container tbody>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse));--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))}.racm-root .table-container tbody{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.racm-root :is(.dark .table-container tbody)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity))}.racm-root :is(.dark .table-container tbody){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root .table-container .table-head-data{min-width:-moz-max-content;min-width:max-content;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1rem 1.5rem;text-align:left;font-size:.75rem;line-height:1rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .table-head-data){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root .table-container .no-data-message{padding-top:2.5rem;padding-bottom:2.5rem;text-align:center;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .no-data-message){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root .table-container .table-row{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .table-container .table-row:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.racm-root :is(.dark .table-container .table-row:hover){background-color:#1e40af1a}.racm-root .table-container .table-data{min-width:-moz-max-content;min-width:max-content;padding:1rem 1.5rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .table-data){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.racm-root .table-container .pagination-wrapper{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.75rem 1.5rem}.racm-root :is(.dark .table-container .pagination-wrapper){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));background-color:#37415199}.racm-root .table-container .pagination-wrapper span{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .pagination-wrapper span){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root .table-container .pagination-wrapper .rows-number-select{border-radius:calc(var(--radius) - 2px);border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.racm-root .table-container .pagination-wrapper .rows-number-select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))}.racm-root :is(.dark .table-container .pagination-wrapper .rows-number-select){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root .table-container .pagination-wrapper .arrow-icons{border-radius:calc(var(--radius) - 2px);padding:.5rem;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .table-container .pagination-wrapper .arrow-icons:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.racm-root .table-container .pagination-wrapper .arrow-icons:disabled{opacity:.5}.racm-root :is(.dark .table-container .pagination-wrapper .arrow-icons){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .pagination-wrapper .arrow-icons:hover){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.racm-root .no-spinner::-webkit-outer-spin-button,.racm-root .no-spinner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.racm-root .no-spinner{-moz-appearance:textfield}.racm-root .tox.tox-tinymce .tox-edit-area:before{border:0!important;box-shadow:none!important}.racm-root .hover\\:-translate-y-0:hover{--tw-translate-y: -0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .hover\\:-translate-y-0\\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .hover\\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-green-50:hover{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-primary-50:hover{background-color:var(--primary-50, #eff6ff)}.racm-root .hover\\:bg-primary-600:hover{background-color:var(--primary-600, #2563eb)}.racm-root .hover\\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-white\\/20:hover{background-color:#fff3}.racm-root .hover\\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.racm-root .hover\\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.racm-root .focus\\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.racm-root .focus\\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.racm-root .focus\\:ring-blue-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-blue-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(147 197 253 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-gray-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-green-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-primary-500:focus{--tw-ring-color: var(--primary-500, #3b82f6)}.racm-root .focus\\:ring-red-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.racm-root .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.racm-root .focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.racm-root .focus-visible\\:ring-blue-400:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity))}.racm-root .focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.racm-root .disabled\\:pointer-events-none:disabled{pointer-events:none}.racm-root .disabled\\:opacity-50:disabled{opacity:.5}.racm-root .group:hover .group-hover\\:opacity-100{opacity:1}.racm-root .peer:checked~.peer-checked\\:translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .peer:checked~.peer-checked\\:bg-primary-600{background-color:var(--primary-600, #2563eb)}.racm-root .peer:focus~.peer-focus\\:outline-none{outline:2px solid transparent;outline-offset:2px}.racm-root .peer:disabled~.peer-disabled\\:cursor-not-allowed{cursor:not-allowed}.racm-root .peer:disabled~.peer-disabled\\:opacity-50{opacity:.5}.racm-root :is(.dark .dark\\:divide-gray-800)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(31 41 55 / var(--tw-divide-opacity))}.racm-root :is(.dark .dark\\:border-blue-700){--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-gray-600){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-gray-700){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-gray-700\\/60){border-color:#37415199}.racm-root :is(.dark .dark\\:border-gray-800){--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-green-700){--tw-border-opacity: 1;border-color:rgb(21 128 61 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-purple-700){--tw-border-opacity: 1;border-color:rgb(126 34 206 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-red-700){--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-teal-700){--tw-border-opacity: 1;border-color:rgb(15 118 110 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-yellow-700){--tw-border-opacity: 1;border-color:rgb(161 98 7 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:bg-black){--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-black\\/80){background-color:#000c}.racm-root :is(.dark .dark\\:bg-blue-900\\/20){background-color:#1e3a8a33}.racm-root :is(.dark .dark\\:bg-blue-900\\/30){background-color:#1e3a8a4d}.racm-root :is(.dark .dark\\:bg-gray-600){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-gray-700){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-gray-800){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-gray-800\\/80){background-color:#1f2937cc}.racm-root :is(.dark .dark\\:bg-gray-900){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-gray-900\\/30){background-color:#1118274d}.racm-root :is(.dark .dark\\:bg-green-900\\/30){background-color:#14532d4d}.racm-root :is(.dark .dark\\:bg-purple-900\\/30){background-color:#581c874d}.racm-root :is(.dark .dark\\:bg-red-900\\/30){background-color:#7f1d1d4d}.racm-root :is(.dark .dark\\:bg-teal-900\\/30){background-color:#134e4a4d}.racm-root :is(.dark .dark\\:bg-yellow-900\\/30){background-color:#713f124d}.racm-root :is(.dark .dark\\:text-blue-300){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-blue-400){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-100){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-200){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-300){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-400){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-500){--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-green-300){--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-purple-300){--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-red-300){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-red-500){--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-teal-300){--tw-text-opacity: 1;color:rgb(94 234 212 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-white){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-yellow-300){--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:placeholder-gray-400)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root :is(.dark .dark\\:placeholder-gray-400)::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root :is(.dark .dark\\:hover\\:bg-gray-600:hover){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:hover\\:bg-gray-700:hover){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:hover\\:bg-gray-800:hover){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:hover\\:text-gray-200:hover){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:hover\\:text-gray-300:hover){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-blue-200:focus){--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-blue-400:focus){--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-gray-500:focus){--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-gray-600:focus){--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-offset-gray-800:focus){--tw-ring-offset-color: #1f2937}@media (min-width: 640px){.racm-root .sm\\:\\!w-auto{width:auto!important}.racm-root .sm\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.racm-root .sm\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.racm-root .sm\\:\\!flex-row{flex-direction:row!important}.racm-root .sm\\:\\!flex-wrap{flex-wrap:wrap!important}.racm-root .sm\\:\\!items-center{align-items:center!important}.racm-root .sm\\:\\!px-6{padding-left:1.5rem!important;padding-right:1.5rem!important}.racm-root .sm\\:opacity-0{opacity:0}.racm-root .group:hover .sm\\:group-hover\\:opacity-100{opacity:1}}@media (min-width: 1024px){.racm-root .lg\\:\\!w-auto{width:auto!important}.racm-root .lg\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.racm-root .lg\\:\\!flex-row{flex-direction:row!important}.racm-root .lg\\:\\!items-end{align-items:flex-end!important}.racm-root .lg\\:\\!justify-between{justify-content:space-between!important}}.racm-root .\\[\\&\\>svg\\]\\:h-3\\.5>svg{height:.875rem}.racm-root .\\[\\&\\>svg\\]\\:h-4>svg{height:1rem}.racm-root .\\[\\&\\>svg\\]\\:w-3\\.5>svg{width:.875rem}.racm-root .\\[\\&\\>svg\\]\\:w-4>svg{width:1rem}',er=(a,o="DD MMM YYYY")=>{if(!a)return"N/A";const e=new Date(a);if(isNaN(e.getTime()))return"Invalid Date";const t=s=>String(s).padStart(2,"0"),n={YYYY:e.getFullYear(),YY:String(e.getFullYear()).slice(-2),MMMM:e.toLocaleString("en-US",{month:"long"}),MMM:e.toLocaleString("en-US",{month:"short"}),MM:t(e.getMonth()+1),M:e.getMonth()+1,DD:t(e.getDate()),D:e.getDate(),dddd:e.toLocaleString("en-US",{weekday:"long"}),ddd:e.toLocaleString("en-US",{weekday:"short"}),HH:t(e.getHours()),hh:t(e.getHours()%12||12),mm:t(e.getMinutes()),ss:t(e.getSeconds()),A:e.getHours()>=12?"PM":"AM"};return o.replace(/YYYY|YY|MMMM|MMM|MM|M|DD|D|dddd|ddd|HH|hh|mm|ss|A/g,s=>String(n[s]))},Jr=(a,o,e=[])=>{if(!(o!=null&&o.trim()))return a;const t=o.toLowerCase(),n=s=>s==null?[]:typeof s=="object"?Object.values(s).flatMap(n):[String(s)];return a.filter(s=>{let i=[];return e.length>0?e.forEach(l=>{s[l]!==void 0&&i.push(...n(s[l]))}):i=n(s),i.some(l=>l.toLowerCase().includes(t))})},v=(...a)=>a.filter(Boolean).join(" "),f={crudPage:{root:"crud_page",deleteContent:"crud_page_delete_content"},button:{root:"crud_button"},chip:{root:"crud_chip"},modal:{root:"crud_modal",overlay:"crud_modal_overlay",container:"crud_modal_container",header:"crud_modal_header",title:"crud_modal_title",closeButton:"crud_modal_close_button",body:"crud_modal_body",footer:"crud_modal_footer",actionButton:"crud_modal_action_button",loadingIndicator:"crud_modal_loading_indicator"},table:{root:"crud_table",toolbar:"crud_table_toolbar",searchField:"crud_table_search_field",searchInput:"crud_table_search_input",container:"crud_table_container",element:"crud_table_element",head:"crud_table_head",headRow:"crud_table_head_row",headCell:"crud_table_head_cell",body:"crud_table_body",row:"crud_table_row",cell:"crud_table_cell",noData:"crud_table_no_data",actionButton:"crud_table_action_button",menu:"crud_table_menu",menuItem:"crud_table_menu_item",pagination:"crud_table_pagination"},tableSkeleton:{root:"crud_table_skeleton",table:"crud_table_skeleton_table"},sortDropdown:{root:"crud_sort_dropdown",trigger:"crud_sort_dropdown_trigger",menu:"crud_sort_dropdown_menu",item:"crud_sort_dropdown_item"},imagePreview:{root:"crud_image_preview",container:"crud_image_preview_container",image:"crud_image_preview_image"},filterDrawer:{overlay:"crud_filter_overlay",panel:"crud_filter_panel",header:"crud_filter_header",body:"crud_filter_body",footer:"crud_filter_footer"},form:{root:"crud_form",loading:"crud_form_loading"},field:{wrapper:"crud_field_wrapper",label:"crud_field_label",input:"crud_field_input",error:"crud_field_error"},mediaPicker:{image:"crud_media_image_picker",multiImage:"crud_media_multi_image_picker",audio:"crud_media_audio_picker",video:"crud_media_video_picker",dropzone:"crud_media_dropzone",cropModal:"crud_media_crop_modal"},details:{root:"crud_details",container:"crud_details_container",row:"crud_details_row"}},he=b.forwardRef(({className:a="",variant:o="contained",color:e="default",size:t="default",fullWidth:n=!1,children:s,...i},l)=>{var w;const m="inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-400 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",p={sm:"h-8 px-3 rounded-md text-sm",md:"h-9 px-4 rounded-md text-sm",lg:"h-11 px-6 rounded-md text-base",xl:"h-12 px-8 rounded-lg text-lg",default:"h-9 px-4 rounded-md text-sm"},h={primary:{contained:"bg-primary text-white hover:bg-primary-600 focus:ring-primary-500 shadow-sm",outlined:"border border-primary bg-transparent text-primary hover:bg-primary-50 focus:ring-primary-500",text:"bg-transparent text-primary hover:bg-primary-50 focus:ring-primary-500"},success:{contained:"bg-green-600 text-white hover:bg-green-700 focus:ring-green-500 shadow-sm",outlined:"border border-green-600 bg-transparent text-green-600 hover:bg-green-50 focus:ring-green-500",text:"bg-transparent text-green-600 hover:bg-green-50 focus:ring-green-500"},error:{contained:"bg-red-600 text-white hover:bg-red-700 focus:ring-red-500 shadow-sm",outlined:"border border-red-600 bg-transparent text-red-600 hover:bg-red-50 focus:ring-red-500",text:"bg-transparent text-red-600 hover:bg-red-50 focus:ring-red-500"},default:{contained:"border bg-gray-200 text-gray-800 hover:bg-gray-300 focus:ring-gray-300 shadow-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-100 dark:hover:bg-gray-600 dark:focus:ring-gray-600",outlined:"border border-gray-300 bg-transparent text-gray-700 hover:bg-gray-100 focus:ring-gray-300 dark:border-gray-600 dark:text-gray-200 dark:hover:bg-gray-700 dark:focus:ring-gray-500",text:"bg-transparent text-gray-700 hover:bg-gray-100 focus:ring-gray-300 dark:text-gray-200 dark:hover:bg-gray-700 dark:focus:ring-gray-500"}},u=((w=h[e])==null?void 0:w[o])||h.default.contained,c=p[t]||p.default,g=v(f.button.root,m,u,c,n?"w-full":"",a);return r.jsx("button",{ref:l,type:i.type||"button",className:g,...i,children:s})});he.displayName="Button";function me({label:a,required:o=!1,infoText:e=""}){return r.jsx(r.Fragment,{children:r.jsxs("label",{className:v(f.field.label,"flex text-sm font-medium text-gray-700 dark:text-gray-300 mb-1"),children:[a,o&&r.jsx("span",{className:"ml-1",children:"*"}),e&&r.jsxs("span",{className:"ml-2 relative group inline-flex items-center cursor-pointer",children:[r.jsx(re.Info,{className:"w-4 h-4 text-gray-500 dark:text-gray-400"}),r.jsx("span",{className:`absolute left-1/2 top-full mt-2\r
|
|
1
|
+
"use strict";const r=require("react/jsx-runtime"),b=require("react"),te=require("lucide-react"),dr=require("react-dom"),me=require("@iconify/react"),Zr=require("@tinymce/tinymce-react"),ke=require("notistack");function Xr(a){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const e in a)if(e!=="default"){const t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(o,e,t.get?t:{enumerable:!0,get:()=>a[e]})}}return o.default=a,Object.freeze(o)}const ve=Xr(b),qr='@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";.racm-root *,.racm-root :before,.racm-root :after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}.racm-root :before,.racm-root :after{--tw-content: ""}.racm-root{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal}.racm-root{margin:0;line-height:inherit}.racm-root hr{height:0;color:inherit;border-top-width:1px}.racm-root abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.racm-root h1,.racm-root h2,.racm-root h3,.racm-root h4,.racm-root h5,.racm-root h6{font-size:inherit;font-weight:inherit}.racm-root a{color:inherit;text-decoration:inherit}.racm-root b,.racm-root strong{font-weight:bolder}.racm-root code,.racm-root kbd,.racm-root samp,.racm-root pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}.racm-root small{font-size:80%}.racm-root sub,.racm-root sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.racm-root sub{bottom:-.25em}.racm-root sup{top:-.5em}.racm-root table{text-indent:0;border-color:inherit;border-collapse:collapse}.racm-root button,.racm-root input,.racm-root optgroup,.racm-root select,.racm-root textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}.racm-root button,.racm-root select{text-transform:none}.racm-root button,.racm-root [type=button],.racm-root [type=reset],.racm-root [type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}.racm-root :-moz-focusring{outline:auto}.racm-root :-moz-ui-invalid{box-shadow:none}.racm-root progress{vertical-align:baseline}.racm-root ::-webkit-inner-spin-button,.racm-root ::-webkit-outer-spin-button{height:auto}.racm-root [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.racm-root ::-webkit-search-decoration{-webkit-appearance:none}.racm-root ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.racm-root summary{display:list-item}.racm-root blockquote,.racm-root dl,.racm-root dd,.racm-root h1,.racm-root h2,.racm-root h3,.racm-root h4,.racm-root h5,.racm-root h6,.racm-root hr,.racm-root figure,.racm-root p,.racm-root pre{margin:0}.racm-root fieldset{margin:0;padding:0}.racm-root legend{padding:0}.racm-root ol,.racm-root ul,.racm-root menu{list-style:none;margin:0;padding:0}.racm-root dialog{padding:0}.racm-root textarea{resize:vertical}.racm-root input::-moz-placeholder,.racm-root textarea::-moz-placeholder{opacity:1;color:#9ca3af}.racm-root input::placeholder,.racm-root textarea::placeholder{opacity:1;color:#9ca3af}.racm-root button,.racm-root [role=button]{cursor:pointer}.racm-root :disabled{cursor:default}.racm-root img,.racm-root svg,.racm-root video,.racm-root canvas,.racm-root audio,.racm-root iframe,.racm-root embed,.racm-root object{display:block;vertical-align:middle}.racm-root img,.racm-root video{max-width:100%;height:auto}.racm-root [hidden]{display:none}.racm-root{--background: 0 0% 100%;--foreground: 0 0% 3.9%;--card: 0 0% 100%;--card-foreground: 0 0% 3.9%;--popover: 0 0% 100%;--popover-foreground: 0 0% 3.9%;--primary: 0 0% 9%;--primary-foreground: 0 0% 98%;--secondary: 0 0% 96.1%;--secondary-foreground: 0 0% 9%;--muted: 0 0% 96.1%;--muted-foreground: 0 0% 45.1%;--accent: 0 0% 96.1%;--accent-foreground: 0 0% 9%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 0 0% 89.8%;--input: 0 0% 89.8%;--ring: 0 0% 3.9%;--chart-1: 12 76% 61%;--chart-2: 173 58% 39%;--chart-3: 197 37% 24%;--chart-4: 43 74% 66%;--chart-5: 27 87% 67%;--radius: .5rem}.racm-root *{border-color:hsl(var(--border, 0 0% 89.8%))}.racm-root{background-color:hsl(var(--background, 0 0% 100%));color:hsl(var(--foreground, 0 0% 3.9%))}.racm-root *,.racm-root :before,.racm-root :after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.racm-root ::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.racm-root .container{width:100%}@media (min-width: 640px){.racm-root .container{max-width:640px}}@media (min-width: 768px){.racm-root .container{max-width:768px}}@media (min-width: 1024px){.racm-root .container{max-width:1024px}}@media (min-width: 1280px){.racm-root .container{max-width:1280px}}@media (min-width: 1536px){.racm-root .container{max-width:1536px}}.racm-root .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.racm-root .pointer-events-none{pointer-events:none}.racm-root .pointer-events-auto{pointer-events:auto}.racm-root .fixed{position:fixed}.racm-root .absolute{position:absolute}.racm-root .relative{position:relative}.racm-root .inset-0{top:0;right:0;bottom:0;left:0}.racm-root .inset-y-0{top:0;bottom:0}.racm-root .-bottom-4{bottom:-1rem}.racm-root .-right-2{right:-.5rem}.racm-root .-right-6{right:-1.5rem}.racm-root .-top-2{top:-.5rem}.racm-root .-top-6{top:-1.5rem}.racm-root .left-1{left:.25rem}.racm-root .left-1\\/2{left:50%}.racm-root .left-3{left:.75rem}.racm-root .right-0{right:0}.racm-root .right-1{right:.25rem}.racm-root .right-1\\/2{right:50%}.racm-root .right-2{right:.5rem}.racm-root .right-3{right:.75rem}.racm-root .right-4{right:1rem}.racm-root .right-\\[50\\%\\]{right:50%}.racm-root .top-0{top:0}.racm-root .top-1{top:.25rem}.racm-root .top-1\\/2{top:50%}.racm-root .top-2{top:.5rem}.racm-root .top-4{top:1rem}.racm-root .top-\\[80\\%\\]{top:80%}.racm-root .top-full{top:100%}.racm-root .z-10{z-index:10}.racm-root .z-20{z-index:20}.racm-root .z-40{z-index:40}.racm-root .z-50{z-index:50}.racm-root .col-span-12{grid-column:span 12 / span 12}.racm-root .col-span-6{grid-column:span 6 / span 6}.racm-root .mb-0{margin-bottom:0}.racm-root .mb-1{margin-bottom:.25rem}.racm-root .mb-3{margin-bottom:.75rem}.racm-root .mb-6{margin-bottom:1.5rem}.racm-root .ml-1{margin-left:.25rem}.racm-root .ml-2{margin-left:.5rem}.racm-root .mr-2{margin-right:.5rem}.racm-root .mt-1{margin-top:.25rem}.racm-root .mt-2{margin-top:.5rem}.racm-root .mt-auto{margin-top:auto}.racm-root .inline{display:inline}.racm-root .flex{display:flex}.racm-root .inline-flex{display:inline-flex}.racm-root .table{display:table}.racm-root .table-row{display:table-row}.racm-root .grid{display:grid}.racm-root .hidden{display:none}.racm-root .h-1{height:.25rem}.racm-root .h-10{height:2.5rem}.racm-root .h-11{height:2.75rem}.racm-root .h-12{height:3rem}.racm-root .h-16{height:4rem}.racm-root .h-2{height:.5rem}.racm-root .h-20{height:5rem}.racm-root .h-28{height:7rem}.racm-root .h-3{height:.75rem}.racm-root .h-32{height:8rem}.racm-root .h-4{height:1rem}.racm-root .h-5{height:1.25rem}.racm-root .h-6{height:1.5rem}.racm-root .h-64{height:16rem}.racm-root .h-7{height:1.75rem}.racm-root .h-72{height:18rem}.racm-root .h-8{height:2rem}.racm-root .h-9{height:2.25rem}.racm-root .h-\\[10px\\]{height:10px}.racm-root .h-\\[150px\\]{height:150px}.racm-root .h-\\[36px\\]{height:36px}.racm-root .h-\\[40px\\]{height:40px}.racm-root .h-full{height:100%}.racm-root .max-h-40{max-height:10rem}.racm-root .max-h-60{max-height:15rem}.racm-root .max-h-\\[250px\\]{max-height:250px}.racm-root .max-h-\\[260px\\]{max-height:260px}.racm-root .max-h-\\[90vh\\]{max-height:90vh}.racm-root .min-h-\\[52px\\]{min-height:52px}.racm-root .w-1{width:.25rem}.racm-root .w-10{width:2.5rem}.racm-root .w-11{width:2.75rem}.racm-root .w-12{width:3rem}.racm-root .w-16{width:4rem}.racm-root .w-2{width:.5rem}.racm-root .w-20{width:5rem}.racm-root .w-24{width:6rem}.racm-root .w-3{width:.75rem}.racm-root .w-32{width:8rem}.racm-root .w-4{width:1rem}.racm-root .w-48{width:12rem}.racm-root .w-5{width:1.25rem}.racm-root .w-6{width:1.5rem}.racm-root .w-64{width:16rem}.racm-root .w-7{width:1.75rem}.racm-root .w-8{width:2rem}.racm-root .w-80{width:20rem}.racm-root .w-\\[260px\\]{width:260px}.racm-root .w-\\[28rem\\]{width:28rem}.racm-root .w-\\[36px\\]{width:36px}.racm-root .w-\\[42\\%\\]{width:42%}.racm-root .w-full{width:100%}.racm-root .w-max{width:-moz-max-content;width:max-content}.racm-root .min-w-0{min-width:0px}.racm-root .min-w-\\[100px\\]{min-width:100px}.racm-root .min-w-\\[150px\\]{min-width:150px}.racm-root .min-w-\\[220px\\]{min-width:220px}.racm-root .min-w-\\[40px\\]{min-width:40px}.racm-root .min-w-\\[78px\\]{min-width:78px}.racm-root .max-w-2xl{max-width:42rem}.racm-root .max-w-4xl{max-width:56rem}.racm-root .max-w-5xl{max-width:64rem}.racm-root .max-w-\\[200px\\]{max-width:200px}.racm-root .max-w-\\[300px\\]{max-width:300px}.racm-root .max-w-full{max-width:100%}.racm-root .max-w-lg{max-width:32rem}.racm-root .max-w-md{max-width:28rem}.racm-root .max-w-xs{max-width:20rem}.racm-root .flex-1{flex:1 1 0%}.racm-root .flex-shrink{flex-shrink:1}.racm-root .flex-shrink-0,.racm-root .shrink-0{flex-shrink:0}.racm-root .border-collapse{border-collapse:collapse}.racm-root .-translate-x-1\\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.racm-root .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.racm-root .animate-spin{animation:spin 1s linear infinite}.racm-root .cursor-not-allowed{cursor:not-allowed}.racm-root .cursor-pointer{cursor:pointer}.racm-root .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.racm-root .resize{resize:both}.racm-root .grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.racm-root .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.racm-root .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.racm-root .flex-col{flex-direction:column}.racm-root .items-center{align-items:center}.racm-root .items-stretch{align-items:stretch}.racm-root .justify-end{justify-content:flex-end}.racm-root .justify-center{justify-content:center}.racm-root .justify-between{justify-content:space-between}.racm-root .gap-1{gap:.25rem}.racm-root .gap-1\\.5{gap:.375rem}.racm-root .gap-2{gap:.5rem}.racm-root .gap-2\\.5{gap:.625rem}.racm-root .gap-3{gap:.75rem}.racm-root .gap-4{gap:1rem}.racm-root .gap-6{gap:1.5rem}.racm-root .-space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.5rem * var(--tw-space-x-reverse));margin-left:calc(-.5rem * calc(1 - var(--tw-space-x-reverse)))}.racm-root .space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.racm-root .space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.racm-root .space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.racm-root .space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.racm-root .space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.racm-root .divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.racm-root .divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(243 244 246 / var(--tw-divide-opacity))}.racm-root .overflow-auto{overflow:auto}.racm-root .overflow-hidden{overflow:hidden}.racm-root .overflow-x-auto{overflow-x:auto}.racm-root .overflow-y-auto{overflow-y:auto}.racm-root .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.racm-root .text-ellipsis{text-overflow:ellipsis}.racm-root .whitespace-nowrap{white-space:nowrap}.racm-root .break-words{overflow-wrap:break-word}.racm-root .rounded{border-radius:.25rem}.racm-root .rounded-full{border-radius:9999px}.racm-root .rounded-lg{border-radius:var(--radius)}.racm-root .rounded-md{border-radius:calc(var(--radius) - 2px)}.racm-root .rounded-sm{border-radius:calc(var(--radius) - 4px)}.racm-root .rounded-xl{border-radius:.75rem}.racm-root .border{border-width:1px}.racm-root .border-2{border-width:2px}.racm-root .border-4{border-width:4px}.racm-root .border-8{border-width:8px}.racm-root .border-b{border-bottom-width:1px}.racm-root .border-l{border-left-width:1px}.racm-root .border-r{border-right-width:1px}.racm-root .border-t{border-top-width:1px}.racm-root .border-t-2{border-top-width:2px}.racm-root .border-dashed{border-style:dashed}.racm-root .border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity))}.racm-root .border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity))}.racm-root .border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity))}.racm-root .border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.racm-root .border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.racm-root .border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity))}.racm-root .border-green-600{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity))}.racm-root .border-primary,.racm-root .border-primary-500{border-color:var(--primary-500, #3b82f6)}.racm-root .border-purple-300{--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity))}.racm-root .border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity))}.racm-root .border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity))}.racm-root .border-red-600{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity))}.racm-root .border-teal-300{--tw-border-opacity: 1;border-color:rgb(94 234 212 / var(--tw-border-opacity))}.racm-root .border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.racm-root .border-white\\/30{border-color:#ffffff4d}.racm-root .border-yellow-300{--tw-border-opacity: 1;border-color:rgb(253 224 71 / var(--tw-border-opacity))}.racm-root .border-t-gray-200{--tw-border-opacity: 1;border-top-color:rgb(229 231 235 / var(--tw-border-opacity))}.racm-root .border-t-white{--tw-border-opacity: 1;border-top-color:rgb(255 255 255 / var(--tw-border-opacity))}.racm-root .\\!bg-transparent{background-color:transparent!important}.racm-root .bg-black\\/50{background-color:#00000080}.racm-root .bg-black\\/70{background-color:#000000b3}.racm-root .bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity))}.racm-root .bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}.racm-root .bg-blue-500\\/10{background-color:#3b82f61a}.racm-root .bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.racm-root .bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.racm-root .bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.racm-root .bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.racm-root .bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.racm-root .bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.racm-root .bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity))}.racm-root .bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity))}.racm-root .bg-primary{background-color:var(--primary-500, #3b82f6)}.racm-root .bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity))}.racm-root .bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity))}.racm-root .bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.racm-root .bg-red-500\\/95{background-color:#ef4444f2}.racm-root .bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.racm-root .bg-teal-100{--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity))}.racm-root .bg-transparent{background-color:transparent}.racm-root .bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.racm-root .bg-white\\/90{background-color:#ffffffe6}.racm-root .bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity))}.racm-root .bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.racm-root .to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.racm-root .object-contain{-o-object-fit:contain;object-fit:contain}.racm-root .object-cover{-o-object-fit:cover;object-fit:cover}.racm-root .p-1{padding:.25rem}.racm-root .p-2{padding:.5rem}.racm-root .p-4{padding:1rem}.racm-root .p-5{padding:1.25rem}.racm-root .px-2{padding-left:.5rem;padding-right:.5rem}.racm-root .px-3{padding-left:.75rem;padding-right:.75rem}.racm-root .px-4{padding-left:1rem;padding-right:1rem}.racm-root .px-5{padding-left:1.25rem;padding-right:1.25rem}.racm-root .px-6{padding-left:1.5rem;padding-right:1.5rem}.racm-root .px-8{padding-left:2rem;padding-right:2rem}.racm-root .py-1{padding-top:.25rem;padding-bottom:.25rem}.racm-root .py-2{padding-top:.5rem;padding-bottom:.5rem}.racm-root .py-3{padding-top:.75rem;padding-bottom:.75rem}.racm-root .py-4{padding-top:1rem;padding-bottom:1rem}.racm-root .py-6{padding-top:1.5rem;padding-bottom:1.5rem}.racm-root .pl-9{padding-left:2.25rem}.racm-root .pr-10{padding-right:2.5rem}.racm-root .pr-2{padding-right:.5rem}.racm-root .pr-3{padding-right:.75rem}.racm-root .text-left{text-align:left}.racm-root .text-center{text-align:center}.racm-root .text-base{font-size:1rem;line-height:1.5rem}.racm-root .text-lg{font-size:1.125rem;line-height:1.75rem}.racm-root .text-sm{font-size:.875rem;line-height:1.25rem}.racm-root .text-xl{font-size:1.25rem;line-height:1.75rem}.racm-root .text-xs{font-size:.75rem;line-height:1rem}.racm-root .font-bold{font-weight:700}.racm-root .font-medium{font-weight:500}.racm-root .font-semibold{font-weight:600}.racm-root .uppercase{text-transform:uppercase}.racm-root .italic{font-style:italic}.racm-root .leading-none{line-height:1}.racm-root .leading-snug{line-height:1.375}.racm-root .leading-tight{line-height:1.25}.racm-root .tracking-wide{letter-spacing:.025em}.racm-root .tracking-wider{letter-spacing:.05em}.racm-root .text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.racm-root .text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity))}.racm-root .text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity))}.racm-root .text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity))}.racm-root .text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root .text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.racm-root .text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.racm-root .text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.racm-root .text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.racm-root .text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.racm-root .text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity))}.racm-root .text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity))}.racm-root .text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity))}.racm-root .text-primary{color:var(--primary-500, #3b82f6)}.racm-root .text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity))}.racm-root .text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity))}.racm-root .text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.racm-root .text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity))}.racm-root .text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity))}.racm-root .text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity))}.racm-root .text-teal-700{--tw-text-opacity: 1;color:rgb(15 118 110 / var(--tw-text-opacity))}.racm-root .text-teal-800{--tw-text-opacity: 1;color:rgb(17 94 89 / var(--tw-text-opacity))}.racm-root .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root .text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity))}.racm-root .text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity))}.racm-root .underline{text-decoration-line:underline}.racm-root .placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root .placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root .placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))}.racm-root .placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))}.racm-root .opacity-0{opacity:0}.racm-root .opacity-100{opacity:1}.racm-root .opacity-50{opacity:.5}.racm-root .opacity-60{opacity:.6}.racm-root .opacity-75{opacity:.75}.racm-root .opacity-90{opacity:.9}.racm-root .shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .outline-none{outline:2px solid transparent;outline-offset:2px}.racm-root .outline{outline-style:solid}.racm-root .ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.racm-root .ring-blue-100{--tw-ring-opacity: 1;--tw-ring-color: rgb(219 234 254 / var(--tw-ring-opacity))}.racm-root .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.racm-root .backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.racm-root .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .duration-200{transition-duration:.2s}.racm-root .duration-300{transition-duration:.3s}.racm-root .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.racm-root .primary-bg{background-color:var(--primary-500)}.racm-root .primary-bg-light{background-color:var(--primary-100)}.racm-root .primary-bg-dark{background-color:var(--primary-700)}.racm-root .primary-text{color:var(--primary-600)}.racm-root .primary-border{border-color:var(--primary-300)}.racm-root .primary-hover:hover{background-color:var(--primary-600)}.racm-root{--foreground-rgb: 0, 0, 0;--background-start-rgb: 214, 219, 220;--background-end-rgb: 255, 255, 255}@media (prefers-color-scheme: dark){.racm-root{--foreground-rgb: 255, 255, 255;--background-start-rgb: 0, 0, 0;--background-end-rgb: 0, 0, 0}}.racm-root{height:100%}.racm-root{--scrollbar-thumb: #d1d5db;--scrollbar-thumb-hover: #9ca3af}.racm-root .dark{--scrollbar-thumb: #4b5563;--scrollbar-thumb-hover: #6b7280}.racm-root *{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.racm-root *::-webkit-scrollbar{width:6px;height:6px}.racm-root *::-webkit-scrollbar-track{background:transparent}.racm-root *::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:3px}.racm-root *::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}.racm-root h1{font-size:1.5rem;line-height:2rem;font-weight:700;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.racm-root :is(.dark h1){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root p{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.racm-root :is(.dark p){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root .table-search-field{position:relative;width:100%}@media (min-width: 640px){.racm-root .table-search-field{min-width:300px!important}}.racm-root .table-search-field .search-icon{position:absolute;left:.75rem;top:50%;height:1rem;width:1rem;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root :is(.dark .table-search-field .search-icon){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root .table-search-field input{height:36px;width:100%;border-radius:calc(var(--radius) - 2px);border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.75rem 1rem .75rem 2.25rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.racm-root .table-search-field input::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))}.racm-root .table-search-field input::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))}.racm-root .table-search-field input:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(147 197 253 / var(--tw-ring-opacity))}.racm-root .table-search-field input:disabled{opacity:.5}.racm-root :is(.dark .table-search-field input){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root :is(.dark .table-search-field input)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root :is(.dark .table-search-field input)::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root :is(.dark .table-search-field input){--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity))}.racm-root .filter-button-wrapper{position:relative;width:100%}@media (min-width: 640px){.racm-root .filter-button-wrapper{width:auto!important}}.racm-root .filter-button-wrapper .red-dot{position:absolute;top:.25rem;right:.25rem;height:.5rem;width:.5rem;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.racm-root .table-container{overflow:hidden;border-radius:var(--radius);border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root :is(.dark .table-container){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root .table-container table{min-width:100%}.racm-root .table-container table>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse));--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))}.racm-root :is(.dark .table-container table)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity))}.racm-root .table-container thead{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.racm-root :is(.dark .table-container thead){background-color:#37415199}.racm-root .table-container tbody>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse));--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))}.racm-root .table-container tbody{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.racm-root :is(.dark .table-container tbody)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity))}.racm-root :is(.dark .table-container tbody){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root .table-container .table-head-data{min-width:-moz-max-content;min-width:max-content;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1rem 1.5rem;text-align:left;font-size:.75rem;line-height:1rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .table-head-data){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root .table-container .no-data-message{padding-top:2.5rem;padding-bottom:2.5rem;text-align:center;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .no-data-message){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root .table-container .table-row{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .table-container .table-row:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.racm-root :is(.dark .table-container .table-row:hover){background-color:#1e40af1a}.racm-root .table-container .table-data{min-width:-moz-max-content;min-width:max-content;padding:1rem 1.5rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .table-data){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.racm-root .table-container .pagination-wrapper{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.75rem 1.5rem}.racm-root :is(.dark .table-container .pagination-wrapper){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));background-color:#37415199}.racm-root .table-container .pagination-wrapper span{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .pagination-wrapper span){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root .table-container .pagination-wrapper .rows-number-select{border-radius:calc(var(--radius) - 2px);border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.racm-root .table-container .pagination-wrapper .rows-number-select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))}.racm-root :is(.dark .table-container .pagination-wrapper .rows-number-select){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root .table-container .pagination-wrapper .arrow-icons{border-radius:calc(var(--radius) - 2px);padding:.5rem;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.racm-root .table-container .pagination-wrapper .arrow-icons:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.racm-root .table-container .pagination-wrapper .arrow-icons:disabled{opacity:.5}.racm-root :is(.dark .table-container .pagination-wrapper .arrow-icons){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root :is(.dark .table-container .pagination-wrapper .arrow-icons:hover){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.racm-root .no-spinner::-webkit-outer-spin-button,.racm-root .no-spinner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.racm-root .no-spinner{-moz-appearance:textfield}.racm-root .tox.tox-tinymce .tox-edit-area:before{border:0!important;box-shadow:none!important}.racm-root .hover\\:-translate-y-0:hover{--tw-translate-y: -0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .hover\\:-translate-y-0\\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .hover\\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-green-50:hover{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-primary-50:hover{background-color:var(--primary-50, #eff6ff)}.racm-root .hover\\:bg-primary-600:hover{background-color:var(--primary-600, #2563eb)}.racm-root .hover\\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.racm-root .hover\\:bg-white\\/20:hover{background-color:#fff3}.racm-root .hover\\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.racm-root .hover\\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.racm-root .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.racm-root .focus\\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.racm-root .focus\\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.racm-root .focus\\:ring-blue-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-blue-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(147 197 253 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-gray-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-green-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-primary-500:focus{--tw-ring-color: var(--primary-500, #3b82f6)}.racm-root .focus\\:ring-red-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity))}.racm-root .focus\\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.racm-root .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.racm-root .focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.racm-root .focus-visible\\:ring-blue-400:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity))}.racm-root .focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.racm-root .disabled\\:pointer-events-none:disabled{pointer-events:none}.racm-root .disabled\\:opacity-50:disabled{opacity:.5}.racm-root .group:hover .group-hover\\:opacity-100{opacity:1}.racm-root .peer:checked~.peer-checked\\:translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.racm-root .peer:checked~.peer-checked\\:bg-primary-600{background-color:var(--primary-600, #2563eb)}.racm-root .peer:focus~.peer-focus\\:outline-none{outline:2px solid transparent;outline-offset:2px}.racm-root .peer:disabled~.peer-disabled\\:cursor-not-allowed{cursor:not-allowed}.racm-root .peer:disabled~.peer-disabled\\:opacity-50{opacity:.5}.racm-root :is(.dark .dark\\:divide-gray-800)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(31 41 55 / var(--tw-divide-opacity))}.racm-root :is(.dark .dark\\:border-blue-700){--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-gray-600){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-gray-700){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-gray-700\\/60){border-color:#37415199}.racm-root :is(.dark .dark\\:border-gray-800){--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-green-700){--tw-border-opacity: 1;border-color:rgb(21 128 61 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-purple-700){--tw-border-opacity: 1;border-color:rgb(126 34 206 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-red-700){--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-teal-700){--tw-border-opacity: 1;border-color:rgb(15 118 110 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:border-yellow-700){--tw-border-opacity: 1;border-color:rgb(161 98 7 / var(--tw-border-opacity))}.racm-root :is(.dark .dark\\:bg-black){--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-black\\/80){background-color:#000c}.racm-root :is(.dark .dark\\:bg-blue-900\\/20){background-color:#1e3a8a33}.racm-root :is(.dark .dark\\:bg-blue-900\\/30){background-color:#1e3a8a4d}.racm-root :is(.dark .dark\\:bg-gray-600){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-gray-700){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-gray-800){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-gray-800\\/80){background-color:#1f2937cc}.racm-root :is(.dark .dark\\:bg-gray-900){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:bg-gray-900\\/30){background-color:#1118274d}.racm-root :is(.dark .dark\\:bg-green-900\\/30){background-color:#14532d4d}.racm-root :is(.dark .dark\\:bg-purple-900\\/30){background-color:#581c874d}.racm-root :is(.dark .dark\\:bg-red-900\\/30){background-color:#7f1d1d4d}.racm-root :is(.dark .dark\\:bg-teal-900\\/30){background-color:#134e4a4d}.racm-root :is(.dark .dark\\:bg-yellow-900\\/30){background-color:#713f124d}.racm-root :is(.dark .dark\\:text-blue-300){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-blue-400){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-100){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-200){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-300){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-400){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-gray-500){--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-green-300){--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-purple-300){--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-red-300){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-red-500){--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-teal-300){--tw-text-opacity: 1;color:rgb(94 234 212 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-white){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:text-yellow-300){--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:placeholder-gray-400)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root :is(.dark .dark\\:placeholder-gray-400)::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.racm-root :is(.dark .dark\\:hover\\:bg-gray-600:hover){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:hover\\:bg-gray-700:hover){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:hover\\:bg-gray-800:hover){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.racm-root :is(.dark .dark\\:hover\\:text-gray-200:hover){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:hover\\:text-gray-300:hover){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-blue-200:focus){--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-blue-400:focus){--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-gray-500:focus){--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-gray-600:focus){--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity))}.racm-root :is(.dark .dark\\:focus\\:ring-offset-gray-800:focus){--tw-ring-offset-color: #1f2937}@media (min-width: 640px){.racm-root .sm\\:\\!w-auto{width:auto!important}.racm-root .sm\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.racm-root .sm\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.racm-root .sm\\:\\!flex-row{flex-direction:row!important}.racm-root .sm\\:\\!flex-wrap{flex-wrap:wrap!important}.racm-root .sm\\:\\!items-center{align-items:center!important}.racm-root .sm\\:\\!px-6{padding-left:1.5rem!important;padding-right:1.5rem!important}.racm-root .sm\\:opacity-0{opacity:0}.racm-root .group:hover .sm\\:group-hover\\:opacity-100{opacity:1}}@media (min-width: 1024px){.racm-root .lg\\:\\!w-auto{width:auto!important}.racm-root .lg\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.racm-root .lg\\:\\!flex-row{flex-direction:row!important}.racm-root .lg\\:\\!items-end{align-items:flex-end!important}.racm-root .lg\\:\\!justify-between{justify-content:space-between!important}}.racm-root .\\[\\&\\>svg\\]\\:h-3\\.5>svg{height:.875rem}.racm-root .\\[\\&\\>svg\\]\\:h-4>svg{height:1rem}.racm-root .\\[\\&\\>svg\\]\\:w-3\\.5>svg{width:.875rem}.racm-root .\\[\\&\\>svg\\]\\:w-4>svg{width:1rem}',er=(a,o="DD MMM YYYY")=>{if(!a)return"N/A";const e=new Date(a);if(isNaN(e.getTime()))return"Invalid Date";const t=s=>String(s).padStart(2,"0"),n={YYYY:e.getFullYear(),YY:String(e.getFullYear()).slice(-2),MMMM:e.toLocaleString("en-US",{month:"long"}),MMM:e.toLocaleString("en-US",{month:"short"}),MM:t(e.getMonth()+1),M:e.getMonth()+1,DD:t(e.getDate()),D:e.getDate(),dddd:e.toLocaleString("en-US",{weekday:"long"}),ddd:e.toLocaleString("en-US",{weekday:"short"}),HH:t(e.getHours()),hh:t(e.getHours()%12||12),mm:t(e.getMinutes()),ss:t(e.getSeconds()),A:e.getHours()>=12?"PM":"AM"};return o.replace(/YYYY|YY|MMMM|MMM|MM|M|DD|D|dddd|ddd|HH|hh|mm|ss|A/g,s=>String(n[s]))},Jr=(a,o,e=[])=>{if(!(o!=null&&o.trim()))return a;const t=o.toLowerCase(),n=s=>s==null?[]:typeof s=="object"?Object.values(s).flatMap(n):[String(s)];return a.filter(s=>{let i=[];return e.length>0?e.forEach(l=>{s[l]!==void 0&&i.push(...n(s[l]))}):i=n(s),i.some(l=>l.toLowerCase().includes(t))})},v=(...a)=>a.filter(Boolean).join(" "),x={crudPage:{root:"crud_page",deleteContent:"crud_page_delete_content"},button:{root:"crud_button"},chip:{root:"crud_chip"},modal:{root:"crud_modal",overlay:"crud_modal_overlay",container:"crud_modal_container",header:"crud_modal_header",title:"crud_modal_title",closeButton:"crud_modal_close_button",body:"crud_modal_body",footer:"crud_modal_footer",actionButton:"crud_modal_action_button",loadingIndicator:"crud_modal_loading_indicator"},table:{root:"crud_table",toolbar:"crud_table_toolbar",searchField:"crud_table_search_field",searchInput:"crud_table_search_input",container:"crud_table_container",element:"crud_table_element",head:"crud_table_head",headRow:"crud_table_head_row",headCell:"crud_table_head_cell",body:"crud_table_body",row:"crud_table_row",cell:"crud_table_cell",noData:"crud_table_no_data",actionButton:"crud_table_action_button",menu:"crud_table_menu",menuItem:"crud_table_menu_item",pagination:"crud_table_pagination"},tableSkeleton:{root:"crud_table_skeleton",table:"crud_table_skeleton_table"},sortDropdown:{root:"crud_sort_dropdown",trigger:"crud_sort_dropdown_trigger",menu:"crud_sort_dropdown_menu",item:"crud_sort_dropdown_item"},imagePreview:{root:"crud_image_preview",container:"crud_image_preview_container",image:"crud_image_preview_image"},filterDrawer:{overlay:"crud_filter_overlay",panel:"crud_filter_panel",header:"crud_filter_header",body:"crud_filter_body",footer:"crud_filter_footer"},form:{root:"crud_form",loading:"crud_form_loading"},field:{wrapper:"crud_field_wrapper",label:"crud_field_label",input:"crud_field_input",error:"crud_field_error"},mediaPicker:{image:"crud_media_image_picker",multiImage:"crud_media_multi_image_picker",audio:"crud_media_audio_picker",video:"crud_media_video_picker",dropzone:"crud_media_dropzone",cropModal:"crud_media_crop_modal"},details:{root:"crud_details",container:"crud_details_container",row:"crud_details_row"}},ue=b.forwardRef(({className:a="",variant:o="contained",color:e="default",size:t="default",fullWidth:n=!1,children:s,...i},l)=>{var f;const h="inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-400 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",d={sm:"h-8 px-3 rounded-md text-sm",md:"h-9 px-4 rounded-md text-sm",lg:"h-11 px-6 rounded-md text-base",xl:"h-12 px-8 rounded-lg text-lg",default:"h-9 px-4 rounded-md text-sm"},m={primary:{contained:"bg-primary text-white hover:bg-primary-600 focus:ring-primary-500 shadow-sm",outlined:"border border-primary bg-transparent text-primary hover:bg-primary-50 focus:ring-primary-500",text:"bg-transparent text-primary hover:bg-primary-50 focus:ring-primary-500"},success:{contained:"bg-green-600 text-white hover:bg-green-700 focus:ring-green-500 shadow-sm",outlined:"border border-green-600 bg-transparent text-green-600 hover:bg-green-50 focus:ring-green-500",text:"bg-transparent text-green-600 hover:bg-green-50 focus:ring-green-500"},error:{contained:"bg-red-600 text-white hover:bg-red-700 focus:ring-red-500 shadow-sm",outlined:"border border-red-600 bg-transparent text-red-600 hover:bg-red-50 focus:ring-red-500",text:"bg-transparent text-red-600 hover:bg-red-50 focus:ring-red-500"},default:{contained:"border bg-gray-200 text-gray-800 hover:bg-gray-300 focus:ring-gray-300 shadow-sm dark:border-gray-600 dark:bg-gray-700 dark:text-gray-100 dark:hover:bg-gray-600 dark:focus:ring-gray-600",outlined:"border border-gray-300 bg-transparent text-gray-700 hover:bg-gray-100 focus:ring-gray-300 dark:border-gray-600 dark:text-gray-200 dark:hover:bg-gray-700 dark:focus:ring-gray-500",text:"bg-transparent text-gray-700 hover:bg-gray-100 focus:ring-gray-300 dark:text-gray-200 dark:hover:bg-gray-700 dark:focus:ring-gray-500"}},u=((f=m[e])==null?void 0:f[o])||m.default.contained,c=d[t]||d.default,g=v(x.button.root,h,u,c,n?"w-full":"",a);return r.jsx("button",{ref:l,type:i.type||"button",className:g,...i,children:s})});ue.displayName="Button";function he({label:a,required:o=!1,infoText:e=""}){return r.jsx(r.Fragment,{children:r.jsxs("label",{className:v(x.field.label,"flex text-sm font-medium text-gray-700 dark:text-gray-300 mb-1"),children:[a,o&&r.jsx("span",{className:"ml-1",children:"*"}),e&&r.jsxs("span",{className:"ml-2 relative group inline-flex items-center cursor-pointer",children:[r.jsx(te.Info,{className:"w-4 h-4 text-gray-500 dark:text-gray-400"}),r.jsx("span",{className:`absolute left-1/2 top-full mt-2\r
|
|
2
2
|
w-max max-w-xs bg-white text-black dark:bg-black dark:text-white text-xs\r
|
|
3
3
|
rounded px-2 py-1 opacity-0 shadow-lg\r
|
|
4
4
|
group-hover:opacity-100 transition-opacity\r
|
|
5
|
-
duration-200 pointer-events-none z-50`,children:e})]})]})})}const Oe=[{label:"Afghanistan",code:"AF",phone:"93"},{label:"Aland Islands",code:"AX",phone:"358"},{label:"Albania",code:"AL",phone:"355"},{label:"Algeria",code:"DZ",phone:"213"},{label:"American Samoa",code:"AS",phone:"1"},{label:"Andorra",code:"AD",phone:"376"},{label:"Angola",code:"AO",phone:"244"},{label:"Anguilla",code:"AI",phone:"1"},{label:"Antarctica",code:"AQ",phone:"672"},{label:"Antigua and Barbuda",code:"AG",phone:"1"},{label:"Argentina",code:"AR",phone:"54"},{label:"Armenia",code:"AM",phone:"374"},{label:"Aruba",code:"AW",phone:"297"},{label:"Australia",code:"AU",phone:"61"},{label:"Austria",code:"AT",phone:"43"},{label:"Azerbaijan",code:"AZ",phone:"994"},{label:"Bahrain",code:"BH",phone:"973"},{label:"Bangladesh",code:"BD",phone:"880"},{label:"Barbados",code:"BB",phone:"1"},{label:"Belarus",code:"BY",phone:"375"},{label:"Belgium",code:"BE",phone:"32"},{label:"Belize",code:"BZ",phone:"501"},{label:"Benin",code:"BJ",phone:"229"},{label:"Bermuda",code:"BM",phone:"1"},{label:"Bhutan",code:"BT",phone:"975"},{label:"Bolivia",code:"BO",phone:"591"},{label:"Bonaire, Sint Eustatius and Saba",code:"BQ",phone:"599"},{label:"Bosnia and Herzegovina",code:"BA",phone:"387"},{label:"Botswana",code:"BW",phone:"267"},{label:"Bouvet Island",code:"BV",phone:"0055"},{label:"Brazil",code:"BR",phone:"55"},{label:"British Indian Ocean Territory",code:"IO",phone:"246"},{label:"Brunei",code:"BN",phone:"673"},{label:"Bulgaria",code:"BG",phone:"359"},{label:"Burkina Faso",code:"BF",phone:"226"},{label:"Burundi",code:"BI",phone:"257"},{label:"Cambodia",code:"KH",phone:"855"},{label:"Cameroon",code:"CM",phone:"237"},{label:"Canada",code:"CA",phone:"1"},{label:"Cape Verde",code:"CV",phone:"238"},{label:"Cayman Islands",code:"KY",phone:"1"},{label:"Central African Republic",code:"CF",phone:"236"},{label:"Chad",code:"TD",phone:"235"},{label:"Chile",code:"CL",phone:"56"},{label:"China",code:"CN",phone:"86"},{label:"Christmas Island",code:"CX",phone:"61"},{label:"Cocos (Keeling) Islands",code:"CC",phone:"61"},{label:"Colombia",code:"CO",phone:"57"},{label:"Comoros",code:"KM",phone:"269"},{label:"Congo",code:"CG",phone:"242"},{label:"Cook Islands",code:"CK",phone:"682"},{label:"Costa Rica",code:"CR",phone:"506"},{label:"Croatia",code:"HR",phone:"385"},{label:"Cuba",code:"CU",phone:"53"},{label:"Curaçao",code:"CW",phone:"599"},{label:"Cyprus",code:"CY",phone:"357"},{label:"Czech Republic",code:"CZ",phone:"420"},{label:"Democratic Republic of the Congo",code:"CD",phone:"243"},{label:"Denmark",code:"DK",phone:"45"},{label:"Djibouti",code:"DJ",phone:"253"},{label:"Dominica",code:"DM",phone:"1"},{label:"Dominican Republic",code:"DO",phone:"1"},{label:"Ecuador",code:"EC",phone:"593"},{label:"Egypt",code:"EG",phone:"20"},{label:"El Salvador",code:"SV",phone:"503"},{label:"Equatorial Guinea",code:"GQ",phone:"240"},{label:"Eritrea",code:"ER",phone:"291"},{label:"Estonia",code:"EE",phone:"372"},{label:"Eswatini",code:"SZ",phone:"268"},{label:"Ethiopia",code:"ET",phone:"251"},{label:"Falkland Islands",code:"FK",phone:"500"},{label:"Faroe Islands",code:"FO",phone:"298"},{label:"Fiji Islands",code:"FJ",phone:"679"},{label:"Finland",code:"FI",phone:"358"},{label:"France",code:"FR",phone:"33"},{label:"French Guiana",code:"GF",phone:"594"},{label:"French Polynesia",code:"PF",phone:"689"},{label:"French Southern Territories",code:"TF",phone:"262"},{label:"Gabon",code:"GA",phone:"241"},{label:"Georgia",code:"GE",phone:"995"},{label:"Germany",code:"DE",phone:"49"},{label:"Ghana",code:"GH",phone:"233"},{label:"Gibraltar",code:"GI",phone:"350"},{label:"Greece",code:"GR",phone:"30"},{label:"Greenland",code:"GL",phone:"299"},{label:"Grenada",code:"GD",phone:"1"},{label:"Guadeloupe",code:"GP",phone:"590"},{label:"Guam",code:"GU",phone:"1"},{label:"Guatemala",code:"GT",phone:"502"},{label:"Guernsey",code:"GG",phone:"44"},{label:"Guinea",code:"GN",phone:"224"},{label:"Guinea-Bissau",code:"GW",phone:"245"},{label:"Guyana",code:"GY",phone:"592"},{label:"Haiti",code:"HT",phone:"509"},{label:"Heard Island and McDonald Islands",code:"HM",phone:"672"},{label:"Honduras",code:"HN",phone:"504"},{label:"Hong Kong S.A.R.",code:"HK",phone:"852"},{label:"Hungary",code:"HU",phone:"36"},{label:"Iceland",code:"IS",phone:"354"},{label:"India",code:"IN",phone:"91"},{label:"Indonesia",code:"ID",phone:"62"},{label:"Iran",code:"IR",phone:"98"},{label:"Iraq",code:"IQ",phone:"964"},{label:"Ireland",code:"IE",phone:"353"},{label:"Israel",code:"IL",phone:"972"},{label:"Italy",code:"IT",phone:"39"},{label:"Ivory Coast",code:"CI",phone:"225"},{label:"Jamaica",code:"JM",phone:"1"},{label:"Japan",code:"JP",phone:"81"},{label:"Jersey",code:"JE",phone:"44"},{label:"Jordan",code:"JO",phone:"962"},{label:"Kazakhstan",code:"KZ",phone:"7"},{label:"Kenya",code:"KE",phone:"254"},{label:"Kiribati",code:"KI",phone:"686"},{label:"Kosovo",code:"XK",phone:"383"},{label:"Kuwait",code:"KW",phone:"965"},{label:"Kyrgyzstan",code:"KG",phone:"996"},{label:"Laos",code:"LA",phone:"856"},{label:"Latvia",code:"LV",phone:"371"},{label:"Lebanon",code:"LB",phone:"961"},{label:"Lesotho",code:"LS",phone:"266"},{label:"Liberia",code:"LR",phone:"231"},{label:"Libya",code:"LY",phone:"218"},{label:"Liechtenstein",code:"LI",phone:"423"},{label:"Lithuania",code:"LT",phone:"370"},{label:"Luxembourg",code:"LU",phone:"352"},{label:"Macau S.A.R.",code:"MO",phone:"853"},{label:"Madagascar",code:"MG",phone:"261"},{label:"Malawi",code:"MW",phone:"265"},{label:"Malaysia",code:"MY",phone:"60"},{label:"Maldives",code:"MV",phone:"960"},{label:"Mali",code:"ML",phone:"223"},{label:"Malta",code:"MT",phone:"356"},{label:"Man (Isle of)",code:"IM",phone:"44"},{label:"Marshall Islands",code:"MH",phone:"692"},{label:"Martinique",code:"MQ",phone:"596"},{label:"Mauritania",code:"MR",phone:"222"},{label:"Mauritius",code:"MU",phone:"230"},{label:"Mayotte",code:"YT",phone:"262"},{label:"Mexico",code:"MX",phone:"52"},{label:"Micronesia",code:"FM",phone:"691"},{label:"Moldova",code:"MD",phone:"373"},{label:"Monaco",code:"MC",phone:"377"},{label:"Mongolia",code:"MN",phone:"976"},{label:"Montenegro",code:"ME",phone:"382"},{label:"Montserrat",code:"MS",phone:"1"},{label:"Morocco",code:"MA",phone:"212"},{label:"Mozambique",code:"MZ",phone:"258"},{label:"Myanmar",code:"MM",phone:"95"},{label:"Namibia",code:"NA",phone:"264"},{label:"Nauru",code:"NR",phone:"674"},{label:"Nepal",code:"NP",phone:"977"},{label:"Netherlands",code:"NL",phone:"31"},{label:"New Caledonia",code:"NC",phone:"687"},{label:"New Zealand",code:"NZ",phone:"64"},{label:"Nicaragua",code:"NI",phone:"505"},{label:"Niger",code:"NE",phone:"227"},{label:"Nigeria",code:"NG",phone:"234"},{label:"Niue",code:"NU",phone:"683"},{label:"Norfolk Island",code:"NF",phone:"672"},{label:"North Korea",code:"KP",phone:"850"},{label:"North Macedonia",code:"MK",phone:"389"},{label:"Northern Mariana Islands",code:"MP",phone:"1"},{label:"Norway",code:"NO",phone:"47"},{label:"Oman",code:"OM",phone:"968"},{label:"Pakistan",code:"PK",phone:"92"},{label:"Palau",code:"PW",phone:"680"},{label:"Palestinian Territory Occupied",code:"PS",phone:"970"},{label:"Panama",code:"PA",phone:"507"},{label:"Papua New Guinea",code:"PG",phone:"675"},{label:"Paraguay",code:"PY",phone:"595"},{label:"Peru",code:"PE",phone:"51"},{label:"Philippines",code:"PH",phone:"63"},{label:"Pitcairn Island",code:"PN",phone:"870"},{label:"Poland",code:"PL",phone:"48"},{label:"Portugal",code:"PT",phone:"351"},{label:"Puerto Rico",code:"PR",phone:"1"},{label:"Qatar",code:"QA",phone:"974"},{label:"Reunion",code:"RE",phone:"262"},{label:"Romania",code:"RO",phone:"40"},{label:"Russia",code:"RU",phone:"7"},{label:"Rwanda",code:"RW",phone:"250"},{label:"Saint Helena",code:"SH",phone:"290"},{label:"Saint Kitts and Nevis",code:"KN",phone:"1"},{label:"Saint Lucia",code:"LC",phone:"1"},{label:"Saint Pierre and Miquelon",code:"PM",phone:"508"},{label:"Saint Vincent and the Grenadines",code:"VC",phone:"1"},{label:"Saint-Barthelemy",code:"BL",phone:"590"},{label:"Saint-Martin (French part)",code:"MF",phone:"590"},{label:"Samoa",code:"WS",phone:"685"},{label:"San Marino",code:"SM",phone:"378"},{label:"Sao Tome and Principe",code:"ST",phone:"239"},{label:"Saudi Arabia",code:"SA",phone:"966"},{label:"Senegal",code:"SN",phone:"221"},{label:"Serbia",code:"RS",phone:"381"},{label:"Seychelles",code:"SC",phone:"248"},{label:"Sierra Leone",code:"SL",phone:"232"},{label:"Singapore",code:"SG",phone:"65"},{label:"Sint Maarten (Dutch part)",code:"SX",phone:"1721"},{label:"Slovakia",code:"SK",phone:"421"},{label:"Slovenia",code:"SI",phone:"386"},{label:"Solomon Islands",code:"SB",phone:"677"},{label:"Somalia",code:"SO",phone:"252"},{label:"South Africa",code:"ZA",phone:"27"},{label:"South Georgia",code:"GS",phone:"500"},{label:"South Korea",code:"KR",phone:"82"},{label:"South Sudan",code:"SS",phone:"211"},{label:"Spain",code:"ES",phone:"34"},{label:"Sri Lanka",code:"LK",phone:"94"},{label:"Sudan",code:"SD",phone:"249"},{label:"Suriname",code:"SR",phone:"597"},{label:"Svalbard and Jan Mayen Islands",code:"SJ",phone:"47"},{label:"Sweden",code:"SE",phone:"46"},{label:"Switzerland",code:"CH",phone:"41"},{label:"Syria",code:"SY",phone:"963"},{label:"Taiwan",code:"TW",phone:"886"},{label:"Tajikistan",code:"TJ",phone:"992"},{label:"Tanzania",code:"TZ",phone:"255"},{label:"Thailand",code:"TH",phone:"66"},{label:"The Bahamas",code:"BS",phone:"1"},{label:"The Gambia",code:"GM",phone:"220"},{label:"Timor-Leste",code:"TL",phone:"670"},{label:"Togo",code:"TG",phone:"228"},{label:"Tokelau",code:"TK",phone:"690"},{label:"Tonga",code:"TO",phone:"676"},{label:"Trinidad and Tobago",code:"TT",phone:"1"},{label:"Tunisia",code:"TN",phone:"216"},{label:"Turkey",code:"TR",phone:"90"},{label:"Turkmenistan",code:"TM",phone:"993"},{label:"Turks and Caicos Islands",code:"TC",phone:"1"},{label:"Tuvalu",code:"TV",phone:"688"},{label:"Uganda",code:"UG",phone:"256"},{label:"Ukraine",code:"UA",phone:"380"},{label:"United Arab Emirates",code:"AE",phone:"971"},{label:"United Kingdom",code:"GB",phone:"44"},{label:"United States",code:"US",phone:"1"},{label:"United States Minor Outlying Islands",code:"UM",phone:"1"},{label:"Uruguay",code:"UY",phone:"598"},{label:"Uzbekistan",code:"UZ",phone:"998"},{label:"Vanuatu",code:"VU",phone:"678"},{label:"Vatican City State (Holy See)",code:"VA",phone:"379"},{label:"Venezuela",code:"VE",phone:"58"},{label:"Vietnam",code:"VN",phone:"84"},{label:"Virgin Islands (British)",code:"VG",phone:"1"},{label:"Virgin Islands (US)",code:"VI",phone:"1"},{label:"Wallis and Futuna Islands",code:"WF",phone:"681"},{label:"Western Sahara",code:"EH",phone:"212"},{label:"Yemen",code:"YE",phone:"967"},{label:"Zambia",code:"ZM",phone:"260"},{label:"Zimbabwe",code:"ZW",phone:"263"}],Qr=({options:a=[],value:o="",defaultValue:e="",onChange:t,placeholder:n="Select option",className:s="",disabled:i=!1,search:l=!1,label:m="",required:p=!1,name:h="",parentClass:u="",multiple:c=!1,dropdownMaxHeight:g="",formData:w={},countriesList:x=!1,dependencyKey:N="",errorMessage:k=""})=>{var be,we;const[S,A]=b.useState(!1),[T,z]=b.useState(""),[L,$]=b.useState(!0),y=b.useRef(null),F=b.useRef(null),M=b.useRef(null),[I,K]=b.useState([]),[W,P]=b.useState({top:0,left:0,width:0}),G=typeof document<"u"?((be=y.current)==null?void 0:be.closest(".racm-root"))||document.body:null,R=o||o===!1?o:e,te=_=>_==null||_===""?"":String(typeof _=="boolean"?_:_??""),q=()=>Oe.map(U=>({value:U.label,label:U.label,code:U.code}));b.useEffect(()=>{(async()=>{if(x==!0)K(q());else if(typeof a=="function"){const U=await a(w);K(U||[])}else K(a||[])})()},N?[a,w==null?void 0:w[N]]:[a]);const oe=c?(R||[]).map(te):te(R),D=I.filter(_=>_.label.toLowerCase().includes(T.toLowerCase())),H=_=>{const U=te(_);return c?oe.includes(U):U===oe};b.useEffect(()=>{const _=U=>{var C;y.current&&!y.current.contains(U.target)&&!((C=F.current)!=null&&C.contains(U.target))&&(A(!1),z(""))};return document.addEventListener("mousedown",_),()=>document.removeEventListener("mousedown",_)},[]),b.useEffect(()=>{if(!S||!y.current)return;const _=()=>{if(!y.current)return;const U=y.current.getBoundingClientRect(),J=window.innerHeight-U.bottom<(typeof g=="number"?g:200);$(J),P({top:J?U.top-4:U.bottom+4,left:U.left,width:U.width})};return _(),window.addEventListener("resize",_),window.addEventListener("scroll",_,!0),()=>{window.removeEventListener("resize",_),window.removeEventListener("scroll",_,!0)}},[S]),b.useEffect(()=>{S&&M.current&&M.current.focus()},[S]);const ce=_=>{let U=_;if(_==="true"?U=!0:_==="false"&&(U=!1),c){const C=oe.includes(te(_));let O;C?O=(Array.isArray(o)?o:[]).filter(X=>te(X)!==te(_)):O=[...Array.isArray(o)?o:[],U],t==null||t(O)}else t==null||t(U),A(!1);z("")},E=c?I.filter(_=>H(_.value)).map(_=>_.label).join(", "):(we=I.find(_=>H(_.value)))==null?void 0:we.label;return b.useEffect(()=>{(R||R===!1)&&setTimeout(()=>{t==null||t(R)},100)},[]),r.jsxs("div",{className:v(f.field.wrapper,u||"col-span-12"),children:[r.jsx(me,{label:m,required:p}),r.jsxs("div",{className:v(f.field.input,"relative",s),ref:y,children:[r.jsx("select",{name:"hidden_select_for_validation",value:c?E?E.split(", "):[]:E||"",required:p,multiple:c,id:`field-${h}`,className:"absolute opacity-0 right-1/2 top-[80%] -translate-x-1/2 -translate-y-1/2 pointer-events-none h-[10px]",onChange:()=>{},children:c?E==null?void 0:E.split(", ").map(_=>r.jsx("option",{value:_,children:_},_)):r.jsx("option",{hidden:!0,value:E,children:E})}),r.jsxs("button",{type:"button",onClick:()=>!i&&A(!S),disabled:i,className:`w-full h-10 px-3 border border-gray-300 dark:border-gray-600 rounded-md text-left text-sm flex items-center justify-between
|
|
5
|
+
duration-200 pointer-events-none z-50`,children:e})]})]})})}const Ie=[{label:"Afghanistan",code:"AF",phone:"93",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Aland Islands",code:"AX",phone:"358",pattern:"^[0-9]{6,10}$",mask:"### ### ### ##"},{label:"Albania",code:"AL",phone:"355",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Algeria",code:"DZ",phone:"213",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"American Samoa",code:"AS",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Andorra",code:"AD",phone:"376",pattern:"^[0-9]{6,9}$",mask:"### ###"},{label:"Angola",code:"AO",phone:"244",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Anguilla",code:"AI",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Antarctica",code:"AQ",phone:"672",pattern:"^[0-9]{6,11}$",mask:"## #### ####"},{label:"Antigua and Barbuda",code:"AG",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Argentina",code:"AR",phone:"54",pattern:"^[0-9]{10,11}$",mask:"(###) ###-####"},{label:"Armenia",code:"AM",phone:"374",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Aruba",code:"AW",phone:"297",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Australia",code:"AU",phone:"61",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Austria",code:"AT",phone:"43",pattern:"^[0-9]{10,12}$",mask:"#### ######"},{label:"Azerbaijan",code:"AZ",phone:"994",pattern:"^[0-9]{9}$",mask:"## ### ## ##"},{label:"Bahrain",code:"BH",phone:"973",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Bangladesh",code:"BD",phone:"880",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Barbados",code:"BB",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Belarus",code:"BY",phone:"375",pattern:"^[0-9]{9}$",mask:"## ### ## ##"},{label:"Belgium",code:"BE",phone:"32",pattern:"^[0-9]{9}$",mask:"### ## ## ##"},{label:"Belize",code:"BZ",phone:"501",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Benin",code:"BJ",phone:"229",pattern:"^[0-9]{8}$",mask:"## ## ####"},{label:"Bermuda",code:"BM",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Bhutan",code:"BT",phone:"975",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Bolivia",code:"BO",phone:"591",pattern:"^[0-9]{8}$",mask:"### ### ##"},{label:"Bonaire, Sint Eustatius and Saba",code:"BQ",phone:"599",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Bosnia and Herzegovina",code:"BA",phone:"387",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Botswana",code:"BW",phone:"267",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Bouvet Island",code:"BV",phone:"0055",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Brazil",code:"BR",phone:"55",pattern:"^[0-9]{10,11}$",mask:"(##) #####-####"},{label:"British Indian Ocean Territory",code:"IO",phone:"246",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Brunei",code:"BN",phone:"673",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Bulgaria",code:"BG",phone:"359",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Burkina Faso",code:"BF",phone:"226",pattern:"^[0-9]{8}$",mask:"## ## ####"},{label:"Burundi",code:"BI",phone:"257",pattern:"^[0-9]{8}$",mask:"## ## ####"},{label:"Cambodia",code:"KH",phone:"855",pattern:"^[0-9]{9}$",mask:"## ### ###"},{label:"Cameroon",code:"CM",phone:"237",pattern:"^[0-9]{9}$",mask:"#### ## ##"},{label:"Canada",code:"CA",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Cape Verde",code:"CV",phone:"238",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Cayman Islands",code:"KY",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Central African Republic",code:"CF",phone:"236",pattern:"^[0-9]{8}$",mask:"## ## ####"},{label:"Chad",code:"TD",phone:"235",pattern:"^[0-9]{8}$",mask:"## ## ## ##"},{label:"Chile",code:"CL",phone:"56",pattern:"^[0-9]{9}$",mask:"## #### ###"},{label:"China",code:"CN",phone:"86",pattern:"^[0-9]{11}$",mask:"### #### ####"},{label:"Christmas Island",code:"CX",phone:"61",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Cocos (Keeling) Islands",code:"CC",phone:"61",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Colombia",code:"CO",phone:"57",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Comoros",code:"KM",phone:"269",pattern:"^[0-9]{7}$",mask:"## ## ###"},{label:"Congo",code:"CG",phone:"242",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Cook Islands",code:"CK",phone:"682",pattern:"^[0-9]{5}$",mask:"#####"},{label:"Costa Rica",code:"CR",phone:"506",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Croatia",code:"HR",phone:"385",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Cuba",code:"CU",phone:"53",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Curaçao",code:"CW",phone:"599",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Cyprus",code:"CY",phone:"357",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Czech Republic",code:"CZ",phone:"420",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Democratic Republic of the Congo",code:"CD",phone:"243",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Denmark",code:"DK",phone:"45",pattern:"^[0-9]{8}$",mask:"## ## ## ##"},{label:"Djibouti",code:"DJ",phone:"253",pattern:"^[0-9]{8}$",mask:"## ## ## ##"},{label:"Dominica",code:"DM",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Dominican Republic",code:"DO",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Ecuador",code:"EC",phone:"593",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Egypt",code:"EG",phone:"20",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"El Salvador",code:"SV",phone:"503",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Equatorial Guinea",code:"GQ",phone:"240",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Eritrea",code:"ER",phone:"291",pattern:"^[0-9]{7}$",mask:"## ### ##"},{label:"Estonia",code:"EE",phone:"372",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Eswatini",code:"SZ",phone:"268",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Ethiopia",code:"ET",phone:"251",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Falkland Islands",code:"FK",phone:"500",pattern:"^[0-9]{5}$",mask:"#####"},{label:"Faroe Islands",code:"FO",phone:"298",pattern:"^[0-9]{6}$",mask:"### ###"},{label:"Fiji Islands",code:"FJ",phone:"679",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Finland",code:"FI",phone:"358",pattern:"^[0-9]{6,10}$",mask:"## ### ####"},{label:"France",code:"FR",phone:"33",pattern:"^[0-9]{9}$",mask:"## ## ## ## ##"},{label:"French Guiana",code:"GF",phone:"594",pattern:"^[0-9]{9}$",mask:"##### #####"},{label:"French Polynesia",code:"PF",phone:"689",pattern:"^[0-9]{8}$",mask:"## ## ## ##"},{label:"French Southern Territories",code:"TF",phone:"262",pattern:"^[0-9]{9}$",mask:"##### #####"},{label:"Gabon",code:"GA",phone:"241",pattern:"^[0-9]{7,8}$",mask:"## ## ####"},{label:"Georgia",code:"GE",phone:"995",pattern:"^[0-9]{9}$",mask:"### ## ## ##"},{label:"Germany",code:"DE",phone:"49",pattern:"^[0-9]{10,11}$",mask:"#### ######"},{label:"Ghana",code:"GH",phone:"233",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Gibraltar",code:"GI",phone:"350",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Greece",code:"GR",phone:"30",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Greenland",code:"GL",phone:"299",pattern:"^[0-9]{6}$",mask:"## ## ##"},{label:"Grenada",code:"GD",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Guadeloupe",code:"GP",phone:"590",pattern:"^[0-9]{9}$",mask:"##### #####"},{label:"Guam",code:"GU",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Guatemala",code:"GT",phone:"502",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Guernsey",code:"GG",phone:"44",pattern:"^[0-9]{10}$",mask:"#### ######"},{label:"Guinea",code:"GN",phone:"224",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Guinea-Bissau",code:"GW",phone:"245",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Guyana",code:"GY",phone:"592",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Haiti",code:"HT",phone:"509",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Heard Island and McDonald Islands",code:"HM",phone:"672",pattern:"^[0-9]{6,11}$",mask:"## ### ###"},{label:"Honduras",code:"HN",phone:"504",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Hong Kong S.A.R.",code:"HK",phone:"852",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Hungary",code:"HU",phone:"36",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Iceland",code:"IS",phone:"354",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"India",code:"IN",phone:"91",pattern:"^[0-9]{10}$",mask:"##### #####"},{label:"Indonesia",code:"ID",phone:"62",pattern:"^[0-9]{9,11}$",mask:"### #### ####"},{label:"Iran",code:"IR",phone:"98",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Iraq",code:"IQ",phone:"964",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Ireland",code:"IE",phone:"353",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Israel",code:"IL",phone:"972",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Italy",code:"IT",phone:"39",pattern:"^[0-9]{10,11}$",mask:"### ### ####"},{label:"Ivory Coast",code:"CI",phone:"225",pattern:"^[0-9]{10}$",mask:"## ## ## ## ##"},{label:"Jamaica",code:"JM",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Japan",code:"JP",phone:"81",pattern:"^[0-9]{10}$",mask:"## #### ####"},{label:"Jersey",code:"JE",phone:"44",pattern:"^[0-9]{10}$",mask:"#### ######"},{label:"Jordan",code:"JO",phone:"962",pattern:"^[0-9]{9}$",mask:"## #### ####"},{label:"Kazakhstan",code:"KZ",phone:"7",pattern:"^[0-9]{10}$",mask:"### ### ## ##"},{label:"Kenya",code:"KE",phone:"254",pattern:"^[0-9]{10}$",mask:"### ### ###"},{label:"Kiribati",code:"KI",phone:"686",pattern:"^[0-9]{5,8}$",mask:"## ###"},{label:"Kosovo",code:"XK",phone:"383",pattern:"^[0-9]{8,9}$",mask:"## ### ###"},{label:"Kuwait",code:"KW",phone:"965",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Kyrgyzstan",code:"KG",phone:"996",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Laos",code:"LA",phone:"856",pattern:"^[0-9]{9,10}$",mask:"## ### ###"},{label:"Latvia",code:"LV",phone:"371",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Lebanon",code:"LB",phone:"961",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Lesotho",code:"LS",phone:"266",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Liberia",code:"LR",phone:"231",pattern:"^[0-9]{7,8}$",mask:"## ### ###"},{label:"Libya",code:"LY",phone:"218",pattern:"^[0-9]{9,10}$",mask:"## ### ####"},{label:"Liechtenstein",code:"LI",phone:"423",pattern:"^[0-9]{7,9}$",mask:"### ####"},{label:"Lithuania",code:"LT",phone:"370",pattern:"^[0-9]{8}$",mask:"### ### ##"},{label:"Luxembourg",code:"LU",phone:"352",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Macau S.A.R.",code:"MO",phone:"853",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Madagascar",code:"MG",phone:"261",pattern:"^[0-9]{9}$",mask:"## ## #####"},{label:"Malawi",code:"MW",phone:"265",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Malaysia",code:"MY",phone:"60",pattern:"^[0-9]{9,10}$",mask:"## ### ####"},{label:"Maldives",code:"MV",phone:"960",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Mali",code:"ML",phone:"223",pattern:"^[0-9]{8}$",mask:"## ## ####"},{label:"Malta",code:"MT",phone:"356",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Man (Isle of)",code:"IM",phone:"44",pattern:"^[0-9]{10}$",mask:"#### ######"},{label:"Marshall Islands",code:"MH",phone:"692",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Martinique",code:"MQ",phone:"596",pattern:"^[0-9]{9}$",mask:"##### #####"},{label:"Mauritania",code:"MR",phone:"222",pattern:"^[0-9]{8}$",mask:"## ## ####"},{label:"Mauritius",code:"MU",phone:"230",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Mayotte",code:"YT",phone:"262",pattern:"^[0-9]{9}$",mask:"##### #####"},{label:"Mexico",code:"MX",phone:"52",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Micronesia",code:"FM",phone:"691",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Moldova",code:"MD",phone:"373",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Monaco",code:"MC",phone:"377",pattern:"^[0-9]{9}$",mask:"## ## ## ## ##"},{label:"Mongolia",code:"MN",phone:"976",pattern:"^[0-9]{8}$",mask:"## ## ####"},{label:"Montenegro",code:"ME",phone:"382",pattern:"^[0-9]{8,9}$",mask:"## ### ###"},{label:"Montserrat",code:"MS",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Morocco",code:"MA",phone:"212",pattern:"^[0-9]{9}$",mask:"## #### ###"},{label:"Mozambique",code:"MZ",phone:"258",pattern:"^[0-9]{9}$",mask:"## ### ###"},{label:"Myanmar",code:"MM",phone:"95",pattern:"^[0-9]{9,10}$",mask:"## ### ###"},{label:"Namibia",code:"NA",phone:"264",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Nauru",code:"NR",phone:"674",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Nepal",code:"NP",phone:"977",pattern:"^[0-9]{10}$",mask:"### #### ###"},{label:"Netherlands",code:"NL",phone:"31",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"New Caledonia",code:"NC",phone:"687",pattern:"^[0-9]{6}$",mask:"## ####"},{label:"New Zealand",code:"NZ",phone:"64",pattern:"^[0-9]{9,10}$",mask:"## ### ####"},{label:"Nicaragua",code:"NI",phone:"505",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Niger",code:"NE",phone:"227",pattern:"^[0-9]{8}$",mask:"## ## ####"},{label:"Nigeria",code:"NG",phone:"234",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Niue",code:"NU",phone:"683",pattern:"^[0-9]{4}$",mask:"####"},{label:"Norfolk Island",code:"NF",phone:"672",pattern:"^[0-9]{6,11}$",mask:"## ### ###"},{label:"North Korea",code:"KP",phone:"850",pattern:"^[0-9]{8,10}$",mask:"## ### ####"},{label:"North Macedonia",code:"MK",phone:"389",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Northern Mariana Islands",code:"MP",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Norway",code:"NO",phone:"47",pattern:"^[0-9]{8}$",mask:"### ## ###"},{label:"Oman",code:"OM",phone:"968",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Pakistan",code:"PK",phone:"92",pattern:"^[0-9]{10,11}$",mask:"### #### ###"},{label:"Palau",code:"PW",phone:"680",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Palestinian Territory Occupied",code:"PS",phone:"970",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Panama",code:"PA",phone:"507",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Papua New Guinea",code:"PG",phone:"675",pattern:"^[0-9]{8}$",mask:"### ## ###"},{label:"Paraguay",code:"PY",phone:"595",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Peru",code:"PE",phone:"51",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Philippines",code:"PH",phone:"63",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Pitcairn Island",code:"PN",phone:"870",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Poland",code:"PL",phone:"48",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Portugal",code:"PT",phone:"351",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Puerto Rico",code:"PR",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Qatar",code:"QA",phone:"974",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Reunion",code:"RE",phone:"262",pattern:"^[0-9]{9}$",mask:"##### #####"},{label:"Romania",code:"RO",phone:"40",pattern:"^[0-9]{10}$",mask:"### ### ###"},{label:"Russia",code:"RU",phone:"7",pattern:"^[0-9]{10}$",mask:"### ### ## ##"},{label:"Rwanda",code:"RW",phone:"250",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Saint Helena",code:"SH",phone:"290",pattern:"^[0-9]{4}$",mask:"####"},{label:"Saint Kitts and Nevis",code:"KN",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Saint Lucia",code:"LC",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Saint Pierre and Miquelon",code:"PM",phone:"508",pattern:"^[0-9]{6}$",mask:"## ###"},{label:"Saint Vincent and the Grenadines",code:"VC",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Saint-Barthelemy",code:"BL",phone:"590",pattern:"^[0-9]{9}$",mask:"##### #####"},{label:"Saint-Martin (French part)",code:"MF",phone:"590",pattern:"^[0-9]{9}$",mask:"##### #####"},{label:"Samoa",code:"WS",phone:"685",pattern:"^[0-9]{7}$",mask:"## ####"},{label:"San Marino",code:"SM",phone:"378",pattern:"^[0-9]{10,12}$",mask:"#### ######"},{label:"Sao Tome and Principe",code:"ST",phone:"239",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Saudi Arabia",code:"SA",phone:"966",pattern:"^[0-9]{9}$",mask:"### ### ####"},{label:"Senegal",code:"SN",phone:"221",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Serbia",code:"RS",phone:"381",pattern:"^[0-9]{8,9}$",mask:"## ### ####"},{label:"Seychelles",code:"SC",phone:"248",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Sierra Leone",code:"SL",phone:"232",pattern:"^[0-9]{8}$",mask:"## ######"},{label:"Singapore",code:"SG",phone:"65",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Sint Maarten (Dutch part)",code:"SX",phone:"1721",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Slovakia",code:"SK",phone:"421",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Slovenia",code:"SI",phone:"386",pattern:"^[0-9]{9}$",mask:"## ### ###"},{label:"Solomon Islands",code:"SB",phone:"677",pattern:"^[0-9]{7}$",mask:"##### ##"},{label:"Somalia",code:"SO",phone:"252",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"South Africa",code:"ZA",phone:"27",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"South Georgia",code:"GS",phone:"500",pattern:"^[0-9]{5}$",mask:"#####"},{label:"South Korea",code:"KR",phone:"82",pattern:"^[0-9]{9,10}$",mask:"## #### ####"},{label:"South Sudan",code:"SS",phone:"211",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Spain",code:"ES",phone:"34",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Sri Lanka",code:"LK",phone:"94",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Sudan",code:"SD",phone:"249",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Suriname",code:"SR",phone:"597",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Svalbard and Jan Mayen Islands",code:"SJ",phone:"47",pattern:"^[0-9]{8}$",mask:"### ## ###"},{label:"Sweden",code:"SE",phone:"46",pattern:"^[0-9]{9,10}$",mask:"## ### ####"},{label:"Switzerland",code:"CH",phone:"41",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Syria",code:"SY",phone:"963",pattern:"^[0-9]{9}$",mask:"## #### ###"},{label:"Taiwan",code:"TW",phone:"886",pattern:"^[0-9]{9}$",mask:"#### ####"},{label:"Tajikistan",code:"TJ",phone:"992",pattern:"^[0-9]{9}$",mask:"### ## ####"},{label:"Tanzania",code:"TZ",phone:"255",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Thailand",code:"TH",phone:"66",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"The Bahamas",code:"BS",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"The Gambia",code:"GM",phone:"220",pattern:"^[0-9]{7}$",mask:"### ####"},{label:"Timor-Leste",code:"TL",phone:"670",pattern:"^[0-9]{8}$",mask:"#### ####"},{label:"Togo",code:"TG",phone:"228",pattern:"^[0-9]{8}$",mask:"## ## ####"},{label:"Tokelau",code:"TK",phone:"690",pattern:"^[0-9]{4}$",mask:"####"},{label:"Tonga",code:"TO",phone:"676",pattern:"^[0-9]{7}$",mask:"##### ##"},{label:"Trinidad and Tobago",code:"TT",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Tunisia",code:"TN",phone:"216",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Turkey",code:"TR",phone:"90",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Turkmenistan",code:"TM",phone:"993",pattern:"^[0-9]{8}$",mask:"## #### ##"},{label:"Turks and Caicos Islands",code:"TC",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Tuvalu",code:"TV",phone:"688",pattern:"^[0-9]{5}$",mask:"#####"},{label:"Uganda",code:"UG",phone:"256",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Ukraine",code:"UA",phone:"380",pattern:"^[0-9]{9}$",mask:"## ### ## ##"},{label:"United Arab Emirates",code:"AE",phone:"971",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"United Kingdom",code:"GB",phone:"44",pattern:"^[0-9]{10}$",mask:"#### ######"},{label:"United States",code:"US",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"United States Minor Outlying Islands",code:"UM",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Uruguay",code:"UY",phone:"598",pattern:"^[0-9]{8}$",mask:"## ### ###"},{label:"Uzbekistan",code:"UZ",phone:"998",pattern:"^[0-9]{9}$",mask:"## ### ## ##"},{label:"Vanuatu",code:"VU",phone:"678",pattern:"^[0-9]{7}$",mask:"##### ##"},{label:"Vatican City State (Holy See)",code:"VA",phone:"379",pattern:"^[0-9]{10}$",mask:"## #### ####"},{label:"Venezuela",code:"VE",phone:"58",pattern:"^[0-9]{10}$",mask:"### ### ####"},{label:"Vietnam",code:"VN",phone:"84",pattern:"^[0-9]{9,10}$",mask:"## #### ###"},{label:"Virgin Islands (British)",code:"VG",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Virgin Islands (US)",code:"VI",phone:"1",pattern:"^[0-9]{10}$",mask:"(###) ###-####"},{label:"Wallis and Futuna Islands",code:"WF",phone:"681",pattern:"^[0-9]{6}$",mask:"## ####"},{label:"Western Sahara",code:"EH",phone:"212",pattern:"^[0-9]{9}$",mask:"## #### ###"},{label:"Yemen",code:"YE",phone:"967",pattern:"^[0-9]{9}$",mask:"### ### ###"},{label:"Zambia",code:"ZM",phone:"260",pattern:"^[0-9]{9}$",mask:"## ### ####"},{label:"Zimbabwe",code:"ZW",phone:"263",pattern:"^[0-9]{9}$",mask:"## ### ####"}],Qr=({options:a=[],value:o="",defaultValue:e="",onChange:t,placeholder:n="Select option",className:s="",disabled:i=!1,search:l=!1,label:h="",required:d=!1,name:m="",parentClass:u="",multiple:c=!1,dropdownMaxHeight:g="",formData:f={},countriesList:w=!1,dependencyKey:N="",errorMessage:j=""})=>{var be,we;const[S,P]=b.useState(!1),[T,I]=b.useState(""),[L,U]=b.useState(!0),y=b.useRef(null),A=b.useRef(null),M=b.useRef(null),[z,H]=b.useState([]),[V,ee]=b.useState({top:0,left:0,width:0}),ae=typeof document<"u"?((be=y.current)==null?void 0:be.closest(".racm-root"))||document.body:null,D=o||o===!1?o:e,C=_=>_==null||_===""?"":String(typeof _=="boolean"?_:_??""),F=()=>Ie.map(B=>({value:B.label,label:B.label,code:B.code}));b.useEffect(()=>{(async()=>{if(w==!0)H(F());else if(typeof a=="function"){const B=await a(f);H(B||[])}else H(a||[])})()},N?[a,f==null?void 0:f[N]]:[a]);const Y=c?(D||[]).map(C):C(D),$=z.filter(_=>_.label.toLowerCase().includes(T.toLowerCase())),K=_=>{const B=C(_);return c?Y.includes(B):B===Y};b.useEffect(()=>{const _=B=>{var R;y.current&&!y.current.contains(B.target)&&!((R=A.current)!=null&&R.contains(B.target))&&(P(!1),I(""))};return document.addEventListener("mousedown",_),()=>document.removeEventListener("mousedown",_)},[]),b.useEffect(()=>{if(!S||!y.current)return;const _=()=>{if(!y.current)return;const B=y.current.getBoundingClientRect(),J=window.innerHeight-B.bottom<(typeof g=="number"?g:200);U(J),ee({top:J?B.top-4:B.bottom+4,left:B.left,width:B.width})};return _(),window.addEventListener("resize",_),window.addEventListener("scroll",_,!0),()=>{window.removeEventListener("resize",_),window.removeEventListener("scroll",_,!0)}},[S]),b.useEffect(()=>{S&&M.current&&M.current.focus()},[S]);const ce=_=>{let B=_;if(_==="true"?B=!0:_==="false"&&(B=!1),c){const R=Y.includes(C(_));let O;R?O=(Array.isArray(o)?o:[]).filter(q=>C(q)!==C(_)):O=[...Array.isArray(o)?o:[],B],t==null||t(O)}else t==null||t(B),P(!1);I("")},E=c?z.filter(_=>K(_.value)).map(_=>_.label).join(", "):(we=z.find(_=>K(_.value)))==null?void 0:we.label;return b.useEffect(()=>{(D||D===!1)&&setTimeout(()=>{t==null||t(D)},100)},[]),r.jsxs("div",{className:v(x.field.wrapper,u||"col-span-12"),children:[r.jsx(he,{label:h,required:d}),r.jsxs("div",{className:v(x.field.input,"relative",s),ref:y,children:[r.jsx("select",{name:"hidden_select_for_validation",value:c?E?E.split(", "):[]:E||"",required:d,multiple:c,id:`field-${m}`,className:"absolute opacity-0 right-1/2 top-[80%] -translate-x-1/2 -translate-y-1/2 pointer-events-none h-[10px]",onChange:()=>{},children:c?E==null?void 0:E.split(", ").map(_=>r.jsx("option",{value:_,children:_},_)):r.jsx("option",{hidden:!0,value:E,children:E})}),r.jsxs("button",{type:"button",onClick:()=>!i&&P(!S),disabled:i,className:`w-full h-10 px-3 border border-gray-300 dark:border-gray-600 rounded-md text-left text-sm flex items-center justify-between
|
|
6
6
|
${E?"dark:text-white":"text-gray-500 dark:text-gray-400"}
|
|
7
7
|
${i?"opacity-50 cursor-not-allowed":"dark:bg-gray-700"}
|
|
8
|
-
${
|
|
9
|
-
${
|
|
8
|
+
${j?"border-red-500":""}`,children:[r.jsx("span",{className:"truncate",children:E||n}),r.jsx(te.ChevronDown,{className:`w-4 h-4 transition-transform ${S?"rotate-180":""}`})]}),S&&ae&&dr.createPortal(r.jsxs("div",{ref:A,className:"fixed z-50 border rounded-md bg-white dark:bg-gray-700 shadow-lg",style:{top:V.top,left:V.left,width:V.width,transform:L?"translateY(-100%)":void 0},children:[l&&r.jsx("div",{className:"p-2 border-b border-gray-200 dark:border-gray-600",children:r.jsxs("div",{className:"relative",children:[r.jsx(te.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"}),r.jsx("input",{ref:M,type:"text",value:T,onChange:_=>I(_.target.value),placeholder:"Search...",className:"w-full pl-9 pr-3 py-2 text-sm border rounded-md bg-white dark:bg-gray-800 dark:text-white placeholder-gray-500 dark:placeholder-gray-400 focus:outline-none"})]})}),r.jsx("div",{className:"max-h-40 overflow-y-auto",style:{maxHeight:g||""},children:$.length>0?$.map(_=>r.jsxs("button",{type:"button",onClick:()=>ce(String(_.value)),className:`w-full px-3 py-2 text-left text-sm flex items-center justify-between hover:bg-gray-100 dark:hover:bg-gray-600
|
|
9
|
+
${K(_.value)?"bg-blue-50 dark:bg-blue-900/20 text-blue-700 dark:text-blue-300":""}`,children:[r.jsxs("div",{className:"flex gap-2 items-center",children:[w&&(_==null?void 0:_.code)&&r.jsx("img",{src:`https://flagcdn.com/w20/${_==null?void 0:_.code.toLowerCase()}.png`,alt:_.code,className:"w-5 h-3 object-cover"}),r.jsx("span",{children:_.label})]}),c&&K(_.value)&&r.jsx(te.Check,{className:"w-4 h-4"})]},String(_.value))):r.jsx("div",{className:"px-3 py-2 text-sm text-gray-500 dark:text-gray-400",children:"No options found"})})]}),ae)]}),j&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:j})]},m)},Dr=b.forwardRef(({label:a,required:o,parentClass:e="col-span-12",className:t="",value:n=!1,onChange:s,disabled:i=!1,errorMessage:l="",name:h,...d},m)=>r.jsxs("div",{className:v(x.field.wrapper,"flex justify-between",e),children:[a&&r.jsx(he,{label:a,required:o}),r.jsxs("label",{className:"relative inline-flex items-center cursor-pointer",children:[r.jsx("input",{type:"checkbox",ref:m,id:`field-${h}`,className:v(x.field.input,"sr-only peer"),checked:n,onChange:u=>s==null?void 0:s(u.target.checked),disabled:i,...d}),r.jsx("div",{className:`
|
|
10
10
|
w-11 h-6 bg-gray-200 peer-focus:outline-none
|
|
11
11
|
rounded-full peer dark:bg-gray-700
|
|
12
12
|
peer-checked:bg-primary-600
|
|
@@ -19,12 +19,12 @@
|
|
|
19
19
|
w-4 h-4 bg-white rounded-full\r
|
|
20
20
|
transition-transform duration-200\r
|
|
21
21
|
peer-checked:translate-x-5\r
|
|
22
|
-
`})]}),l&&r.jsx("span",{className:v(
|
|
22
|
+
`})]}),l&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:l})]}));Dr.displayName="Switch";function et({label:a="",value:o="",name:e="",parentClass:t="",onChange:n,disabled:s=!1,required:i=!1,placeholder:l="Phone number",search:h=!1,countriesList:d=!1,defaultCountry:m="",errorMessage:u=""}){var D;const c=C=>Ie.find(F=>F.code==C),[g,f]=b.useState(c(m)||Ie[0]),[w,N]=b.useState(""),[j,S]=b.useState(""),[P,T]=b.useState(!1),[I,L]=b.useState(""),U=b.useRef(null),y=b.useRef(null),[A,M]=b.useState({top:0,left:0,width:0}),z=typeof document<"u"?((D=U.current)==null?void 0:D.closest(".racm-root"))||document.body:null,H=(C,F)=>{let Y="",$=0;for(let K=0;K<F.length&&$<C.length;K++)F[K]==="#"?(Y+=C[$],$++):Y+=F[K];return Y},V=C=>{const Y=C.target.value.replace(/\D/g,"");if(d&&(g!=null&&g.mask)){const $=H(Y,g.mask);S($),n==null||n("+"+g.phone+" "+$);const K=$.replace(/\D/g,"");N(K)}else S(Y),N(Y),g&&n?n("+"+g.phone+" "+Y):n==null||n(Y)};b.useEffect(()=>{if(typeof o=="string"&&o.startsWith("+")){const C=Ie.filter(F=>o.startsWith("+"+F.phone)).sort((F,Y)=>Y.phone.length-F.phone.length)[0];if(C){f(C);let F=o.replace("+"+C.phone,"").replaceAll(" ","");N(F),S(H(F,C.mask));return}}N(o||""),S(o||"")},[]);const ee=C=>{f(C),n&&n("+"+C.phone+" "+w),T(!1),L("")};b.useEffect(()=>{const C=F=>{var Y;U.current&&!U.current.contains(F.target)&&!((Y=y.current)!=null&&Y.contains(F.target))&&T(!1)};return document.addEventListener("mousedown",C),()=>document.removeEventListener("mousedown",C)},[]),b.useEffect(()=>{if(!P||!U.current)return;const C=()=>{if(!U.current)return;const F=U.current.getBoundingClientRect();M({top:F.bottom+4,left:F.left,width:F.width})};return C(),window.addEventListener("resize",C),window.addEventListener("scroll",C,!0),()=>{window.removeEventListener("resize",C),window.removeEventListener("scroll",C,!0)}},[P]);const ae=Ie.filter(C=>C.label.toLowerCase().includes(I.toLowerCase())||C.phone.includes(I));if(!d){const C=F=>{const Y=F.target.value.replace(/[^+\d]/g,""),$=Y.startsWith("+")?"+"+Y.replace(/[+]/g,"").slice(0):Y;n==null||n($)};return r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(x.field.wrapper,t||"col-span-12"),children:[r.jsx(he,{label:a,required:i}),r.jsx("input",{type:"text",value:o,onChange:C,placeholder:l,disabled:s,required:i,className:`w-full h-10 px-3 text-sm border border-gray-300 dark:border-gray-600 rounded-md \r
|
|
23
23
|
bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 focus:outline-none \r
|
|
24
|
-
focus:ring-1 focus:ring-blue-300 dark:focus:ring-blue-200`,inputMode:"tel",pattern:"^\\+\\d{1,15}$"})]},e)})}return r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(
|
|
25
|
-
${
|
|
24
|
+
focus:ring-1 focus:ring-blue-300 dark:focus:ring-blue-200`,inputMode:"tel",pattern:"^\\+\\d{1,15}$"})]},e)})}return r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(x.field.wrapper,t||"col-span-12"),children:[r.jsx(he,{label:a,required:i}),r.jsxs("div",{className:"relative ",ref:U,children:[r.jsxs("div",{className:`h-[40px] flex items-center border rounded-md px-2 bg-white dark:bg-gray-700 transition-all
|
|
25
|
+
${P?"ring-0.5 ring-blue-100 border-blue-300":"border-gray-300 dark:border-gray-600"}
|
|
26
26
|
${s?"opacity-60 cursor-not-allowed":""}
|
|
27
|
-
${u?"border-red-500":""}`,children:[r.jsxs("button",{type:"button",disabled:s,onClick:()=>
|
|
27
|
+
${u?"border-red-500":""}`,children:[r.jsxs("button",{type:"button",disabled:s,onClick:()=>T(!P),className:"flex items-center gap-1 pr-2 border-r border-gray-300 dark:border-gray-700 focus:outline-none",children:[g?r.jsx("img",{src:`https://flagcdn.com/w20/${g.code.toLowerCase()}.png`,alt:g.code,className:"w-5 h-3 object-cover"}):r.jsx("span",{className:"text-gray-400 text-xs",children:"🌐"}),r.jsx(te.ChevronDown,{className:"w-3 h-3 text-gray-500"})]}),g&&r.jsxs("span",{className:"ml-2 text-sm text-gray-700 dark:text-gray-200 whitespace-nowrap",children:["+",g.phone]}),r.jsx("input",{type:"tel",value:j,onChange:V,required:i,id:`field-${e}`,disabled:s||!g,placeholder:g?l||"Enter phone number":"Select a country",className:"flex-1 ml-2 bg-transparent outline-none text-sm text-gray-800 dark:text-gray-100 placeholder-gray-400"}),r.jsx("input",{type:"tel",required:i,tabIndex:-1,readOnly:!0,value:g&&w?"+"+g.phone+w:"",style:{position:"absolute",opacity:0,pointerEvents:"none",height:0},onChange:()=>{}})]}),P&&z&&dr.createPortal(r.jsxs("div",{ref:y,className:"fixed border border-gray-300 dark:border-gray-700 rounded-md bg-white dark:bg-gray-700 shadow-lg z-50 max-h-60 overflow-y-auto",style:{top:A.top,left:A.left,width:A.width},children:[h&&r.jsx("div",{className:"p-2 border-b border-gray-200 dark:border-gray-700",children:r.jsxs("div",{className:"relative",children:[r.jsx(te.Search,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"}),r.jsx("input",{type:"text",value:I,onChange:C=>L(C.target.value),placeholder:"Search country...",className:"w-full pl-9 pr-3 py-2 text-sm border rounded-md bg-white dark:bg-gray-800 dark:text-white placeholder-gray-500 dark:placeholder-gray-400 focus:outline-none "})]})}),ae.map(C=>r.jsxs("button",{type:"button",onClick:()=>ee(C),className:"w-full flex items-center gap-2 px-2 py-1 text-sm hover:bg-blue-50 dark:hover:bg-gray-700 text-gray-800 dark:text-gray-100",children:[r.jsx("img",{src:`https://flagcdn.com/w20/${C.code.toLowerCase()}.png`,alt:C.code,className:"w-5 h-3 object-cover"}),r.jsxs("span",{children:[C.label," (+",C.phone,")"]})]},C.code))]}),z)]}),u&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:u})]},e)})}const Pr=b.forwardRef(({className:a="",label:o,required:e,errorMessage:t="",name:n,...s},i)=>{const l=v(x.field.input,"placeholder-gray-400 dark:placeholder-gray-400",t?"border-red-500":"",a);return r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(x.field.wrapper,s.parentClass||"col-span-12"),children:[r.jsx(he,{label:o,required:e}),r.jsxs("div",{className:"relative",children:[r.jsx("textarea",{className:l,ref:i,id:`field-${n}`,required:e,...s}),t&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:t})]})]},n)})});Pr.displayName="TextArea";var rr=function(a,o){return rr=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},rr(a,o)};function rt(a,o){if(typeof o!="function"&&o!==null)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");rr(a,o);function e(){this.constructor=a}a.prototype=o===null?Object.create(o):(e.prototype=o.prototype,new e)}var se=function(){return se=Object.assign||function(o){for(var e,t=1,n=arguments.length;t<n;t++){e=arguments[t];for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(o[s]=e[s])}return o},se.apply(this,arguments)};function tt(a){return a&&a.__esModule&&Object.prototype.hasOwnProperty.call(a,"default")?a.default:a}var br=!1,Se,tr,ar,Ze,Xe,Lr,qe,or,nr,ir,Er,sr,cr,Ar,Fr;function pe(){if(!br){br=!0;var a=navigator.userAgent,o=/(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(a),e=/(Mac OS X)|(Windows)|(Linux)/.exec(a);if(sr=/\b(iPhone|iP[ao]d)/.exec(a),cr=/\b(iP[ao]d)/.exec(a),ir=/Android/i.exec(a),Ar=/FBAN\/\w+;/i.exec(a),Fr=/Mobile/i.exec(a),Er=!!/Win64/.exec(a),o){Se=o[1]?parseFloat(o[1]):o[5]?parseFloat(o[5]):NaN,Se&&document&&document.documentMode&&(Se=document.documentMode);var t=/(?:Trident\/(\d+.\d+))/.exec(a);Lr=t?parseFloat(t[1])+4:Se,tr=o[2]?parseFloat(o[2]):NaN,ar=o[3]?parseFloat(o[3]):NaN,Ze=o[4]?parseFloat(o[4]):NaN,Ze?(o=/(?:Chrome\/(\d+\.\d+))/.exec(a),Xe=o&&o[1]?parseFloat(o[1]):NaN):Xe=NaN}else Se=tr=ar=Xe=Ze=NaN;if(e){if(e[1]){var n=/(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(a);qe=n?parseFloat(n[1].replace("_",".")):!0}else qe=!1;or=!!e[2],nr=!!e[3]}else qe=or=nr=!1}}var lr={ie:function(){return pe()||Se},ieCompatibilityMode:function(){return pe()||Lr>Se},ie64:function(){return lr.ie()&&Er},firefox:function(){return pe()||tr},opera:function(){return pe()||ar},webkit:function(){return pe()||Ze},safari:function(){return lr.webkit()},chrome:function(){return pe()||Xe},windows:function(){return pe()||or},osx:function(){return pe()||qe},linux:function(){return pe()||nr},iphone:function(){return pe()||sr},mobile:function(){return pe()||sr||cr||ir||Fr},nativeApp:function(){return pe()||Ar},android:function(){return pe()||ir},ipad:function(){return pe()||cr}},at=lr,ot=!!(typeof window<"u"&&window.document&&window.document.createElement),nt={canUseDOM:ot},it=nt,zr=it,Ir;zr.canUseDOM&&(Ir=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);/**
|
|
28
28
|
* Checks if an event is supported in the current execution environment.
|
|
29
29
|
*
|
|
30
30
|
* NOTE: This will not work correctly for non-generic events such as `change`,
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
* @return {boolean} True if the event is supported.
|
|
38
38
|
* @internal
|
|
39
39
|
* @license Modernizr 3.0.0pre (Custom Build) | MIT
|
|
40
|
-
*/function st(a,o){if(!
|
|
40
|
+
*/function st(a,o){if(!zr.canUseDOM||o&&!("addEventListener"in document))return!1;var e="on"+a,t=e in document;if(!t){var n=document.createElement("div");n.setAttribute(e,"return;"),t=typeof n[e]=="function"}return!t&&Ir&&a==="wheel"&&(t=document.implementation.hasFeature("Events.wheel","3.0")),t}var ct=st,lt=at,dt=ct,gr=10,wr=40,fr=800;function Ur(a){var o=0,e=0,t=0,n=0;return"detail"in a&&(e=a.detail),"wheelDelta"in a&&(e=-a.wheelDelta/120),"wheelDeltaY"in a&&(e=-a.wheelDeltaY/120),"wheelDeltaX"in a&&(o=-a.wheelDeltaX/120),"axis"in a&&a.axis===a.HORIZONTAL_AXIS&&(o=e,e=0),t=o*gr,n=e*gr,"deltaY"in a&&(n=a.deltaY),"deltaX"in a&&(t=a.deltaX),(t||n)&&a.deltaMode&&(a.deltaMode==1?(t*=wr,n*=wr):(t*=fr,n*=fr)),t&&!o&&(o=t<1?-1:1),n&&!e&&(e=n<1?-1:1),{spinX:o,spinY:e,pixelX:t,pixelY:n}}Ur.getEventType=function(){return lt.firefox()?"DOMMouseScroll":dt("wheel")?"wheel":"mousewheel"};var pt=Ur,mt=pt;const ut=tt(mt);function ht(a,o,e,t,n,s){s===void 0&&(s=0);var i=Me(a,o,s),l=i.width,h=i.height,d=Math.min(l,e),m=Math.min(h,t);return d>m*n?{width:m*n,height:m}:{width:d,height:d/n}}function bt(a){return a.width>a.height?a.width/a.naturalWidth:a.height/a.naturalHeight}function ze(a,o,e,t,n){n===void 0&&(n=0);var s=Me(o.width,o.height,n),i=s.width,l=s.height;return{x:xr(a.x,i,e.width,t),y:xr(a.y,l,e.height,t)}}function xr(a,o,e,t){var n=o*t/2-e/2;return Je(a,-n,n)}function yr(a,o){return Math.sqrt(Math.pow(a.y-o.y,2)+Math.pow(a.x-o.x,2))}function vr(a,o){return Math.atan2(o.y-a.y,o.x-a.x)*180/Math.PI}function gt(a,o,e,t,n,s,i){s===void 0&&(s=0),i===void 0&&(i=!0);var l=i?wt:ft,h=Me(o.width,o.height,s),d=Me(o.naturalWidth,o.naturalHeight,s),m={x:l(100,((h.width-e.width/n)/2-a.x/n)/h.width*100),y:l(100,((h.height-e.height/n)/2-a.y/n)/h.height*100),width:l(100,e.width/h.width*100/n),height:l(100,e.height/h.height*100/n)},u=Math.round(l(d.width,m.width*d.width/100)),c=Math.round(l(d.height,m.height*d.height/100)),g=d.width>=d.height*t,f=g?{width:Math.round(c*t),height:c}:{width:u,height:Math.round(u/t)},w=se(se({},f),{x:Math.round(l(d.width-f.width,m.x*d.width/100)),y:Math.round(l(d.height-f.height,m.y*d.height/100))});return{croppedAreaPercentages:m,croppedAreaPixels:w}}function wt(a,o){return Math.min(a,Math.max(0,o))}function ft(a,o){return o}function xt(a,o,e,t,n,s){var i=Me(o.width,o.height,e),l=Je(t.width/i.width*(100/a.width),n,s),h={x:l*i.width/2-t.width/2-i.width*l*(a.x/100),y:l*i.height/2-t.height/2-i.height*l*(a.y/100)};return{crop:h,zoom:l}}function yt(a,o,e){var t=bt(o);return e.height>e.width?e.height/(a.height*t):e.width/(a.width*t)}function vt(a,o,e,t,n,s){e===void 0&&(e=0);var i=Me(o.naturalWidth,o.naturalHeight,e),l=Je(yt(a,o,t),n,s),h=t.height>t.width?t.height/a.height:t.width/a.width,d={x:((i.width-a.width)/2-a.x)*h,y:((i.height-a.height)/2-a.y)*h};return{crop:d,zoom:l}}function kr(a,o){return{x:(o.x+a.x)/2,y:(o.y+a.y)/2}}function kt(a){return a*Math.PI/180}function Me(a,o,e){var t=kt(e);return{width:Math.abs(Math.cos(t)*a)+Math.abs(Math.sin(t)*o),height:Math.abs(Math.sin(t)*a)+Math.abs(Math.cos(t)*o)}}function Je(a,o,e){return Math.min(Math.max(a,o),e)}function He(){for(var a=[],o=0;o<arguments.length;o++)a[o]=arguments[o];return a.filter(function(e){return typeof e=="string"&&e.length>0}).join(" ").trim()}var jt=`.reactEasyCrop_Container {
|
|
41
41
|
position: absolute;
|
|
42
42
|
top: 0;
|
|
43
43
|
left: 0;
|
|
@@ -117,13 +117,13 @@
|
|
|
117
117
|
border-left: 0;
|
|
118
118
|
border-right: 0;
|
|
119
119
|
}
|
|
120
|
-
`,Nt=1,St=3,_t=1,Rt=function(a){rt(o,a);function o(){var e=a!==null&&a.apply(this,arguments)||this;return e.cropperRef=ve.createRef(),e.imageRef=ve.createRef(),e.videoRef=ve.createRef(),e.containerPosition={x:0,y:0},e.containerRef=null,e.styleRef=null,e.containerRect=null,e.mediaSize={width:0,height:0,naturalWidth:0,naturalHeight:0},e.dragStartPosition={x:0,y:0},e.dragStartCrop={x:0,y:0},e.gestureZoomStart=0,e.gestureRotationStart=0,e.isTouching=!1,e.lastPinchDistance=0,e.lastPinchRotation=0,e.rafDragTimeout=null,e.rafPinchTimeout=null,e.wheelTimer=null,e.currentDoc=typeof document<"u"?document:null,e.currentWindow=typeof window<"u"?window:null,e.resizeObserver=null,e.previousCropSize=null,e.isInitialized=!1,e.state={cropSize:null,hasWheelJustStarted:!1,mediaObjectFit:void 0},e.initResizeObserver=function(){if(!(typeof window.ResizeObserver>"u"||!e.containerRef)){var t=!0;e.resizeObserver=new window.ResizeObserver(function(n){if(t){t=!1;return}e.computeSizes()}),e.resizeObserver.observe(e.containerRef)}},e.preventZoomSafari=function(t){return t.preventDefault()},e.cleanEvents=function(){e.currentDoc&&(e.currentDoc.removeEventListener("mousemove",e.onMouseMove),e.currentDoc.removeEventListener("mouseup",e.onDragStopped),e.currentDoc.removeEventListener("touchmove",e.onTouchMove),e.currentDoc.removeEventListener("touchend",e.onDragStopped),e.currentDoc.removeEventListener("gesturechange",e.onGestureChange),e.currentDoc.removeEventListener("gestureend",e.onGestureEnd),e.currentDoc.removeEventListener("scroll",e.onScroll))},e.clearScrollEvent=function(){e.containerRef&&e.containerRef.removeEventListener("wheel",e.onWheel),e.wheelTimer&&clearTimeout(e.wheelTimer)},e.onMediaLoad=function(){var t=e.computeSizes();t&&(e.previousCropSize=t,e.emitCropData(),e.setInitialCrop(t),e.isInitialized=!0),e.props.onMediaLoaded&&e.props.onMediaLoaded(e.mediaSize)},e.setInitialCrop=function(t){if(e.props.initialCroppedAreaPercentages){var n=xt(e.props.initialCroppedAreaPercentages,e.mediaSize,e.props.rotation,t,e.props.minZoom,e.props.maxZoom),s=n.crop,i=n.zoom;e.props.onCropChange(s),e.props.onZoomChange&&e.props.onZoomChange(i)}else if(e.props.initialCroppedAreaPixels){var l=vt(e.props.initialCroppedAreaPixels,e.mediaSize,e.props.rotation,t,e.props.minZoom,e.props.maxZoom),s=l.crop,i=l.zoom;e.props.onCropChange(s),e.props.onZoomChange&&e.props.onZoomChange(i)}},e.computeSizes=function(){var t,n,s,i,l,m,p=e.imageRef.current||e.videoRef.current;if(p&&e.containerRef){e.containerRect=e.containerRef.getBoundingClientRect(),e.saveContainerPosition();var h=e.containerRect.width/e.containerRect.height,u=((t=e.imageRef.current)===null||t===void 0?void 0:t.naturalWidth)||((n=e.videoRef.current)===null||n===void 0?void 0:n.videoWidth)||0,c=((s=e.imageRef.current)===null||s===void 0?void 0:s.naturalHeight)||((i=e.videoRef.current)===null||i===void 0?void 0:i.videoHeight)||0,g=p.offsetWidth<u||p.offsetHeight<c,w=u/c,x=void 0;if(g)switch(e.state.mediaObjectFit){default:case"contain":x=h>w?{width:e.containerRect.height*w,height:e.containerRect.height}:{width:e.containerRect.width,height:e.containerRect.width/w};break;case"horizontal-cover":x={width:e.containerRect.width,height:e.containerRect.width/w};break;case"vertical-cover":x={width:e.containerRect.height*w,height:e.containerRect.height};break}else x={width:p.offsetWidth,height:p.offsetHeight};e.mediaSize=se(se({},x),{naturalWidth:u,naturalHeight:c}),e.props.setMediaSize&&e.props.setMediaSize(e.mediaSize);var N=e.props.cropSize?e.props.cropSize:mt(e.mediaSize.width,e.mediaSize.height,e.containerRect.width,e.containerRect.height,e.props.aspect,e.props.rotation);return(((l=e.state.cropSize)===null||l===void 0?void 0:l.height)!==N.height||((m=e.state.cropSize)===null||m===void 0?void 0:m.width)!==N.width)&&e.props.onCropSizeChange&&e.props.onCropSizeChange(N),e.setState({cropSize:N},e.recomputeCropPosition),e.props.setCropSize&&e.props.setCropSize(N),N}},e.saveContainerPosition=function(){if(e.containerRef){var t=e.containerRef.getBoundingClientRect();e.containerPosition={x:t.left,y:t.top}}},e.onMouseDown=function(t){e.currentDoc&&(t.preventDefault(),e.currentDoc.addEventListener("mousemove",e.onMouseMove),e.currentDoc.addEventListener("mouseup",e.onDragStopped),e.saveContainerPosition(),e.onDragStart(o.getMousePoint(t)))},e.onMouseMove=function(t){return e.onDrag(o.getMousePoint(t))},e.onScroll=function(t){e.currentDoc&&(t.preventDefault(),e.saveContainerPosition())},e.onTouchStart=function(t){e.currentDoc&&(e.isTouching=!0,!(e.props.onTouchRequest&&!e.props.onTouchRequest(t))&&(e.currentDoc.addEventListener("touchmove",e.onTouchMove,{passive:!1}),e.currentDoc.addEventListener("touchend",e.onDragStopped),e.saveContainerPosition(),t.touches.length===2?e.onPinchStart(t):t.touches.length===1&&e.onDragStart(o.getTouchPoint(t.touches[0]))))},e.onTouchMove=function(t){t.preventDefault(),t.touches.length===2?e.onPinchMove(t):t.touches.length===1&&e.onDrag(o.getTouchPoint(t.touches[0]))},e.onGestureStart=function(t){e.currentDoc&&(t.preventDefault(),e.currentDoc.addEventListener("gesturechange",e.onGestureChange),e.currentDoc.addEventListener("gestureend",e.onGestureEnd),e.gestureZoomStart=e.props.zoom,e.gestureRotationStart=e.props.rotation)},e.onGestureChange=function(t){if(t.preventDefault(),!e.isTouching){var n=o.getMousePoint(t),s=e.gestureZoomStart-1+t.scale;if(e.setNewZoom(s,n,{shouldUpdatePosition:!0}),e.props.onRotationChange){var i=e.gestureRotationStart+t.rotation;e.props.onRotationChange(i)}}},e.onGestureEnd=function(t){e.cleanEvents()},e.onDragStart=function(t){var n,s,i=t.x,l=t.y;e.dragStartPosition={x:i,y:l},e.dragStartCrop=se({},e.props.crop),(s=(n=e.props).onInteractionStart)===null||s===void 0||s.call(n)},e.onDrag=function(t){var n=t.x,s=t.y;e.currentWindow&&(e.rafDragTimeout&&e.currentWindow.cancelAnimationFrame(e.rafDragTimeout),e.rafDragTimeout=e.currentWindow.requestAnimationFrame(function(){if(e.state.cropSize&&!(n===void 0||s===void 0)){var i=n-e.dragStartPosition.x,l=s-e.dragStartPosition.y,m={x:e.dragStartCrop.x+i,y:e.dragStartCrop.y+l},p=e.props.restrictPosition?Ie(m,e.mediaSize,e.state.cropSize,e.props.zoom,e.props.rotation):m;e.props.onCropChange(p)}}))},e.onDragStopped=function(){var t,n;e.isTouching=!1,e.cleanEvents(),e.emitCropData(),(n=(t=e.props).onInteractionEnd)===null||n===void 0||n.call(t)},e.onWheel=function(t){if(e.currentWindow&&!(e.props.onWheelRequest&&!e.props.onWheelRequest(t))){t.preventDefault();var n=o.getMousePoint(t),s=ht(t).pixelY,i=e.props.zoom-s*e.props.zoomSpeed/200;e.setNewZoom(i,n,{shouldUpdatePosition:!0}),e.state.hasWheelJustStarted||e.setState({hasWheelJustStarted:!0},function(){var l,m;return(m=(l=e.props).onInteractionStart)===null||m===void 0?void 0:m.call(l)}),e.wheelTimer&&clearTimeout(e.wheelTimer),e.wheelTimer=e.currentWindow.setTimeout(function(){return e.setState({hasWheelJustStarted:!1},function(){var l,m;return(m=(l=e.props).onInteractionEnd)===null||m===void 0?void 0:m.call(l)})},250)}},e.getPointOnContainer=function(t,n){var s=t.x,i=t.y;if(!e.containerRect)throw new Error("The Cropper is not mounted");return{x:e.containerRect.width/2-(s-n.x),y:e.containerRect.height/2-(i-n.y)}},e.getPointOnMedia=function(t){var n=t.x,s=t.y,i=e.props,l=i.crop,m=i.zoom;return{x:(n+l.x)/m,y:(s+l.y)/m}},e.setNewZoom=function(t,n,s){var i=s===void 0?{}:s,l=i.shouldUpdatePosition,m=l===void 0?!0:l;if(!(!e.state.cropSize||!e.props.onZoomChange)){var p=Je(t,e.props.minZoom,e.props.maxZoom);if(m){var h=e.getPointOnContainer(n,e.containerPosition),u=e.getPointOnMedia(h),c={x:u.x*p-h.x,y:u.y*p-h.y},g=e.props.restrictPosition?Ie(c,e.mediaSize,e.state.cropSize,p,e.props.rotation):c;e.props.onCropChange(g)}e.props.onZoomChange(p)}},e.getCropData=function(){if(!e.state.cropSize)return null;var t=e.props.restrictPosition?Ie(e.props.crop,e.mediaSize,e.state.cropSize,e.props.zoom,e.props.rotation):e.props.crop;return gt(t,e.mediaSize,e.state.cropSize,e.getAspect(),e.props.zoom,e.props.rotation,e.props.restrictPosition)},e.emitCropData=function(){var t=e.getCropData();if(t){var n=t.croppedAreaPercentages,s=t.croppedAreaPixels;e.props.onCropComplete&&e.props.onCropComplete(n,s),e.props.onCropAreaChange&&e.props.onCropAreaChange(n,s)}},e.emitCropAreaChange=function(){var t=e.getCropData();if(t){var n=t.croppedAreaPercentages,s=t.croppedAreaPixels;e.props.onCropAreaChange&&e.props.onCropAreaChange(n,s)}},e.recomputeCropPosition=function(){var t,n;if(e.state.cropSize){var s=e.props.crop;if(e.isInitialized&&(!((t=e.previousCropSize)===null||t===void 0)&&t.width)&&(!((n=e.previousCropSize)===null||n===void 0)&&n.height)){var i=Math.abs(e.previousCropSize.width-e.state.cropSize.width)>1e-6||Math.abs(e.previousCropSize.height-e.state.cropSize.height)>1e-6;if(i){var l=e.state.cropSize.width/e.previousCropSize.width,m=e.state.cropSize.height/e.previousCropSize.height;s={x:e.props.crop.x*l,y:e.props.crop.y*m}}}var p=e.props.restrictPosition?Ie(s,e.mediaSize,e.state.cropSize,e.props.zoom,e.props.rotation):s;e.previousCropSize=e.state.cropSize,e.props.onCropChange(p),e.emitCropData()}},e.onKeyDown=function(t){var n,s,i=e.props,l=i.crop,m=i.onCropChange,p=i.keyboardStep,h=i.zoom,u=i.rotation,c=p;if(e.state.cropSize){t.shiftKey&&(c*=.2);var g=se({},l);switch(t.key){case"ArrowUp":g.y-=c,t.preventDefault();break;case"ArrowDown":g.y+=c,t.preventDefault();break;case"ArrowLeft":g.x-=c,t.preventDefault();break;case"ArrowRight":g.x+=c,t.preventDefault();break;default:return}e.props.restrictPosition&&(g=Ie(g,e.mediaSize,e.state.cropSize,h,u)),t.repeat||(s=(n=e.props).onInteractionStart)===null||s===void 0||s.call(n),m(g)}},e.onKeyUp=function(t){var n,s;switch(t.key){case"ArrowUp":case"ArrowDown":case"ArrowLeft":case"ArrowRight":t.preventDefault();break;default:return}e.emitCropData(),(s=(n=e.props).onInteractionEnd)===null||s===void 0||s.call(n)},e}return o.prototype.componentDidMount=function(){!this.currentDoc||!this.currentWindow||(this.containerRef&&(this.containerRef.ownerDocument&&(this.currentDoc=this.containerRef.ownerDocument),this.currentDoc.defaultView&&(this.currentWindow=this.currentDoc.defaultView),this.initResizeObserver(),typeof window.ResizeObserver>"u"&&this.currentWindow.addEventListener("resize",this.computeSizes),this.props.zoomWithScroll&&this.containerRef.addEventListener("wheel",this.onWheel,{passive:!1}),this.containerRef.addEventListener("gesturestart",this.onGestureStart)),this.currentDoc.addEventListener("scroll",this.onScroll),this.props.disableAutomaticStylesInjection||(this.styleRef=this.currentDoc.createElement("style"),this.styleRef.setAttribute("type","text/css"),this.props.nonce&&this.styleRef.setAttribute("nonce",this.props.nonce),this.styleRef.innerHTML=jt,this.currentDoc.head.appendChild(this.styleRef)),this.imageRef.current&&this.imageRef.current.complete&&this.onMediaLoad(),this.props.setImageRef&&this.props.setImageRef(this.imageRef),this.props.setVideoRef&&this.props.setVideoRef(this.videoRef),this.props.setCropperRef&&this.props.setCropperRef(this.cropperRef))},o.prototype.componentWillUnmount=function(){var e,t;!this.currentDoc||!this.currentWindow||(typeof window.ResizeObserver>"u"&&this.currentWindow.removeEventListener("resize",this.computeSizes),(e=this.resizeObserver)===null||e===void 0||e.disconnect(),this.containerRef&&this.containerRef.removeEventListener("gesturestart",this.preventZoomSafari),this.styleRef&&((t=this.styleRef.parentNode)===null||t===void 0||t.removeChild(this.styleRef)),this.cleanEvents(),this.props.zoomWithScroll&&this.clearScrollEvent())},o.prototype.componentDidUpdate=function(e){var t,n,s,i,l,m,p,h,u;e.rotation!==this.props.rotation?(this.computeSizes(),this.recomputeCropPosition()):e.aspect!==this.props.aspect?this.computeSizes():e.objectFit!==this.props.objectFit?this.computeSizes():e.zoom!==this.props.zoom?this.recomputeCropPosition():((t=e.cropSize)===null||t===void 0?void 0:t.height)!==((n=this.props.cropSize)===null||n===void 0?void 0:n.height)||((s=e.cropSize)===null||s===void 0?void 0:s.width)!==((i=this.props.cropSize)===null||i===void 0?void 0:i.width)?this.computeSizes():(((l=e.crop)===null||l===void 0?void 0:l.x)!==((m=this.props.crop)===null||m===void 0?void 0:m.x)||((p=e.crop)===null||p===void 0?void 0:p.y)!==((h=this.props.crop)===null||h===void 0?void 0:h.y))&&this.emitCropAreaChange(),e.zoomWithScroll!==this.props.zoomWithScroll&&this.containerRef&&(this.props.zoomWithScroll?this.containerRef.addEventListener("wheel",this.onWheel,{passive:!1}):this.clearScrollEvent()),e.video!==this.props.video&&((u=this.videoRef.current)===null||u===void 0||u.load());var c=this.getObjectFit();c!==this.state.mediaObjectFit&&this.setState({mediaObjectFit:c},this.computeSizes)},o.prototype.getAspect=function(){var e=this.props,t=e.cropSize,n=e.aspect;return t?t.width/t.height:n},o.prototype.getObjectFit=function(){var e,t,n,s;if(this.props.objectFit==="cover"){var i=this.imageRef.current||this.videoRef.current;if(i&&this.containerRef){this.containerRect=this.containerRef.getBoundingClientRect();var l=this.containerRect.width/this.containerRect.height,m=((e=this.imageRef.current)===null||e===void 0?void 0:e.naturalWidth)||((t=this.videoRef.current)===null||t===void 0?void 0:t.videoWidth)||0,p=((n=this.imageRef.current)===null||n===void 0?void 0:n.naturalHeight)||((s=this.videoRef.current)===null||s===void 0?void 0:s.videoHeight)||0,h=m/p;return h<l?"horizontal-cover":"vertical-cover"}return"horizontal-cover"}return this.props.objectFit},o.prototype.onPinchStart=function(e){var t=o.getTouchPoint(e.touches[0]),n=o.getTouchPoint(e.touches[1]);this.lastPinchDistance=yr(t,n),this.lastPinchRotation=vr(t,n),this.onDragStart(kr(t,n))},o.prototype.onPinchMove=function(e){var t=this;if(!(!this.currentDoc||!this.currentWindow)){var n=o.getTouchPoint(e.touches[0]),s=o.getTouchPoint(e.touches[1]),i=kr(n,s);this.onDrag(i),this.rafPinchTimeout&&this.currentWindow.cancelAnimationFrame(this.rafPinchTimeout),this.rafPinchTimeout=this.currentWindow.requestAnimationFrame(function(){var l=yr(n,s),m=t.props.zoom*(l/t.lastPinchDistance);t.setNewZoom(m,i,{shouldUpdatePosition:!1}),t.lastPinchDistance=l;var p=vr(n,s),h=t.props.rotation+(p-t.lastPinchRotation);t.props.onRotationChange&&t.props.onRotationChange(h),t.lastPinchRotation=p})}},o.prototype.render=function(){var e=this,t,n=this.props,s=n.image,i=n.video,l=n.mediaProps,m=n.cropperProps,p=n.transform,h=n.crop,u=h.x,c=h.y,g=n.rotation,w=n.zoom,x=n.cropShape,N=n.showGrid,k=n.roundCropAreaPixels,S=n.style,A=S.containerStyle,T=S.cropAreaStyle,z=S.mediaStyle,L=n.classes,$=L.containerClassName,y=L.cropAreaClassName,F=L.mediaClassName,M=(t=this.state.mediaObjectFit)!==null&&t!==void 0?t:this.getObjectFit();return ve.createElement("div",{onMouseDown:this.onMouseDown,onTouchStart:this.onTouchStart,ref:function(K){return e.containerRef=K},"data-testid":"container",style:A,className:He("reactEasyCrop_Container",$)},s?ve.createElement("img",se({alt:"",className:He("reactEasyCrop_Image",M==="contain"&&"reactEasyCrop_Contain",M==="horizontal-cover"&&"reactEasyCrop_Cover_Horizontal",M==="vertical-cover"&&"reactEasyCrop_Cover_Vertical",F)},l,{src:s,ref:this.imageRef,style:se(se({},z),{transform:p||"translate(".concat(u,"px, ").concat(c,"px) rotate(").concat(g,"deg) scale(").concat(w,")")}),onLoad:this.onMediaLoad})):i&&ve.createElement("video",se({autoPlay:!0,playsInline:!0,loop:!0,muted:!0,className:He("reactEasyCrop_Video",M==="contain"&&"reactEasyCrop_Contain",M==="horizontal-cover"&&"reactEasyCrop_Cover_Horizontal",M==="vertical-cover"&&"reactEasyCrop_Cover_Vertical",F)},l,{ref:this.videoRef,onLoadedMetadata:this.onMediaLoad,style:se(se({},z),{transform:p||"translate(".concat(u,"px, ").concat(c,"px) rotate(").concat(g,"deg) scale(").concat(w,")")}),controls:!1}),(Array.isArray(i)?i:[{src:i}]).map(function(I){return ve.createElement("source",se({key:I.src},I))})),this.state.cropSize&&ve.createElement("div",se({ref:this.cropperRef,style:se(se({},T),{width:k?Math.round(this.state.cropSize.width):this.state.cropSize.width,height:k?Math.round(this.state.cropSize.height):this.state.cropSize.height}),tabIndex:0,onKeyDown:this.onKeyDown,onKeyUp:this.onKeyUp,"data-testid":"cropper",className:He("reactEasyCrop_CropArea",x==="round"&&"reactEasyCrop_CropAreaRound",N&&"reactEasyCrop_CropAreaGrid",y)},m)))},o.defaultProps={zoom:1,rotation:0,aspect:4/3,maxZoom:St,minZoom:Nt,cropShape:"rect",objectFit:"contain",showGrid:!0,style:{},classes:{},mediaProps:{},cropperProps:{},zoomSpeed:1,restrictPosition:!0,zoomWithScroll:!0,keyboardStep:_t},o.getMousePoint=function(e){return{x:Number(e.clientX),y:Number(e.clientY)}},o.getTouchPoint=function(e){return{x:Number(e.clientX),y:Number(e.clientY)}},o}(ve.Component);const jr=he,Ct=a=>new Promise((o,e)=>{const t=new Image;t.addEventListener("load",()=>o(t)),t.addEventListener("error",n=>e(n)),t.setAttribute("crossOrigin","anonymous"),t.src=a}),Tr=a=>a*Math.PI/180,Mt=(a,o,e)=>{const t=Tr(e);return{width:Math.abs(Math.cos(t)*a)+Math.abs(Math.sin(t)*o),height:Math.abs(Math.sin(t)*a)+Math.abs(Math.cos(t)*o)}},Dt=async(a,o,e="image/jpeg",t=0)=>{const n=await Ct(a),s=document.createElement("canvas"),i=s.getContext("2d");if(!i)throw new Error("Canvas context is not available");const l=Tr(t),{width:m,height:p}=Mt(n.width,n.height,t);s.width=m,s.height=p,i.translate(m/2,p/2),i.rotate(l),i.translate(-n.width/2,-n.height/2),i.drawImage(n,0,0);const h=document.createElement("canvas"),u=h.getContext("2d");if(!u)throw new Error("Canvas context is not available");return h.width=o.width,h.height=o.height,u.drawImage(s,o.x,o.y,o.width,o.height,0,0,o.width,o.height),new Promise((c,g)=>{h.toBlob(w=>{if(!w){g(new Error("Image cropping failed"));return}c(w)},e,.95)})},$r=({isOpen:a,imageSrc:o,fileType:e="image/jpeg",fileName:t="cropped-image",aspect:n=1/1,title:s="Crop Image",onClose:i,onApply:l})=>{const[m,p]=b.useState({x:0,y:0}),[h,u]=b.useState(1),[c,g]=b.useState(null);b.useEffect(()=>{a&&(p({x:0,y:0}),u(1),g(null))},[a]);const w=b.useCallback((N,k)=>{g(k)},[]),x=async()=>{var N,k;if(!(!o||!c))try{const S=await Dt(o,c,e),A=((k=(N=e==null?void 0:e.split("/"))==null?void 0:N[1])==null?void 0:k.replace("jpeg","jpg"))||"jpg",T=new File([S],`${t}.${A}`,{type:e});l==null||l(T)}catch{i==null||i()}};return a?r.jsxs("div",{className:v(f.mediaPicker.cropModal,"fixed inset-0 z-50 flex items-center justify-center p-4"),children:[r.jsx("div",{className:"fixed inset-0 bg-gray-500 opacity-75",onClick:i}),r.jsxs("div",{className:"relative bg-white rounded-lg shadow-xl w-full max-w-2xl max-h-[90vh] flex flex-col dark:bg-gray-800",children:[r.jsxs("div",{className:"flex items-center justify-between p-4 border-b border-gray-200 dark:border-gray-700 flex-shrink-0",children:[r.jsx("h3",{className:"text-lg font-medium text-gray-900 dark:text-white",children:s}),r.jsx("button",{type:"button",onClick:i,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":"Close crop modal",children:r.jsx(ue.Icon,{icon:"mdi:close",className:"w-6 h-6"})})]}),r.jsxs("div",{className:"p-4 space-y-4",children:[r.jsx("div",{className:"relative h-72 w-full bg-gray-900 rounded-md overflow-hidden",children:o&&r.jsx(Rt,{image:o,crop:m,zoom:h,aspect:n,onCropChange:p,onZoomChange:u,onCropComplete:w})}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{className:"text-sm text-gray-700 dark:text-gray-300",children:"Zoom"}),r.jsx("input",{type:"range",min:1,max:3,step:.1,value:h,onChange:N=>u(Number(N.target.value)),className:"w-full"})]})]}),r.jsxs("div",{className:"px-4 py-3 flex justify-end gap-3 border-t border-gray-200 dark:border-gray-700 sm:!px-6",children:[r.jsx(jr,{type:"button",onClick:i,variant:"outlined",color:"default",children:"Cancel"}),r.jsx(jr,{type:"button",onClick:x,variant:"contained",color:"primary",children:"Apply Crop"})]})]})]}):null},Pt=he,Ne=a=>{typeof a=="string"&&a.startsWith("blob:")&&URL.revokeObjectURL(a)},Lt=({label:a="",value:o=null,onChange:e,required:t=!1,accept:n="image/*",aspect:s="1",id:i,dragDrop:l=!1,cropImage:m=!1,name:p="",parentClass:h="",errorMessage:u=""})=>{const[c,g]=b.useState(o),[w,x]=b.useState(!1),[N,k]=b.useState(!1),[S,A]=b.useState(""),[T,z]=b.useState("image/jpeg"),[L,$]=b.useState("cropped-image"),y=b.useRef(null),F=b.useRef(""),M=b.useRef("");b.useEffect(()=>{if(o instanceof File){const D=URL.createObjectURL(o);Ne(M.current),M.current=D,g({file:o,preview:D})}else o&&typeof o=="object"&&"preview"in o,g(o)},[o]),b.useEffect(()=>()=>{Ne(M.current),Ne(F.current)},[]);const I=()=>{k(!1),Ne(F.current),F.current="",A(""),y.current&&(y.current.value="")},K=D=>{const H=URL.createObjectURL(D);Ne(M.current),M.current=H,g({file:D,preview:H}),e==null||e(D),I()},W=D=>{if(!D||D.length===0)return;const H=D[0];if(m){const E=URL.createObjectURL(H);Ne(F.current),F.current=E,A(E),z(H.type||"image/jpeg"),$((H.name||"cropped-image").replace(/\.[^/.]+$/,"")),k(!0);return}const ce=URL.createObjectURL(H);Ne(M.current),M.current=ce,g({file:H,preview:ce}),e==null||e(H)},P=D=>{D&&D.stopPropagation(),Ne(M.current),M.current="",g(null),e==null||e(null),y.current&&(y.current.value="")},G=D=>{l&&(D.preventDefault(),x(!0))},R=D=>{l&&(D.preventDefault(),x(!1))},te=D=>{var H,ce,E,be;l&&(D.preventDefault(),x(!1),(be=(E=(ce=(H=D.dataTransfer)==null?void 0:H.files)==null?void 0:ce[0])==null?void 0:E.type)!=null&&be.includes("image/")&&W(D.dataTransfer.files))},q=()=>{var D;(D=y.current)==null||D.click()},oe=c&&typeof c=="object"&&"preview"in c?c.preview:typeof c=="string"?c:"";return r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(f.mediaPicker.image,f.field.wrapper,h||"col-span-12"),children:[r.jsx(me,{label:a,required:t}),r.jsxs("div",{className:v(f.mediaPicker.dropzone,"relative rounded-md p-2 transition-all",w?"border-2 border-dashed border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800",u?"border-red-500":""),onDragOver:G,onDragLeave:R,onDrop:te,id:`field-${p}`,children:[r.jsx("input",{ref:y,id:i,type:"file",accept:n,onChange:D=>W(D.target.files),required:t&&!c,className:"absolute opacity-0 right-[50%] top-[80%] -translate-y-1/2 pointer-events-none h-[10px]"}),r.jsxs("div",{className:`flex items-center space-x-4 transition-all ${w?"opacity-50":""}`,children:[c?r.jsxs("div",{className:"relative group",children:[r.jsx("img",{src:oe,alt:"preview",className:"object-cover w-20 h-20 rounded-full shadow-md"}),!t&&r.jsx("button",{type:"button",onClick:P,className:"absolute top-0 -right-2 bg-red-500 text-white rounded-full p-1 shadow-lg hover:bg-red-600 transition-colors focus:outline-none focus:ring-2 focus:ring-red-500 focus:ring-offset-2","aria-label":"Remove image",children:r.jsx(ue.Icon,{icon:"mdi:close",className:"w-3 h-3"})})]}):r.jsx("div",{className:"rounded-full bg-gray-100 dark:bg-gray-700 h-20 w-20 flex items-center justify-center",children:r.jsx(ue.Icon,{icon:"ri:image-add-fill",className:"text-gray-400 w-10 h-10"})}),r.jsxs("div",{className:"flex flex-col items-center space-y-1",children:[r.jsx(Pt,{type:"button",onClick:q,variant:"outlined",color:"default",children:c?"Change Image":"Select Image"}),l&&!c&&r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"or drag and drop"})]})]}),l&&w&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none bg-blue-500/10 rounded-md",children:r.jsx("span",{className:"text-blue-600 dark:text-blue-400 font-semibold text-lg",children:"Drop image here"})})]}),u&&r.jsx("span",{className:v(f.field.error,"text-red-500 text-xs mt-1"),children:u})]},p),r.jsx($r,{isOpen:N,imageSrc:S,fileType:T,fileName:L,onClose:I,onApply:K,aspect:Number(s)})]})},Br=b.forwardRef(({label:a,value:o,name:e,required:t,parentClass:n="",className:s="",type:i="text",onKeyDown:l,negativeNumberAllow:m=!0,defaultValue:p="",field:h={},onChange:u,mask:c="",errorMessage:g="",maskApplyOnValue:w=!0,...x},N)=>{const[k,S]=b.useState(!1),A=L=>{if(i==="number"){if(["e","E","+"].includes(L.key)){L.preventDefault();return}if(m==!1&&L.key==="-"){L.preventDefault();return}if(["ArrowUp","ArrowDown"].includes(L.key)){L.preventDefault();return}}l==null||l(L)},T=v(f.field.input,"h-10 placeholder-gray-400 dark:placeholder-gray-400",i==="password"?"pr-10":"",i==="number"?"no-spinner":"",s,g?"border-red-500":"");function z(L,$){if(!L)return L;const y=String(L).replace(/[^a-zA-Z0-9]/g,"");let F="",M=0;for(let I=0;I<($==null?void 0:$.length)&&M<y.length;I++){const K=$[I],W=y[M];K==="9"?/\d/.test(W)?(F+=W,M++):(M++,I--):K==="A"?/[a-zA-Z]/.test(W)?(F+=W,M++):(M++,I--):K==="X"?/[a-zA-Z0-9]/.test(W)?(F+=W,M++):(M++,I--):K==="*"?(F+=W,M++):(F+=K,W===K&&M++)}return F}return b.useEffect(()=>{if(p){const L=o||p;setTimeout(()=>{u==null||u(L)},100)}},[p]),r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(f.field.wrapper,n||"col-span-12"),children:[r.jsx(me,{label:a,required:t,infoText:h==null?void 0:h.infoText}),r.jsxs("div",{className:"relative",children:[r.jsx("input",{type:i==="password"&&k?"text":i,ref:N,id:`field-${e}`,required:t,onKeyDown:A,className:T,value:c?z(o,c):o,onChange:L=>{u(c&&w?z(L.target.value,c):L.target.value)},...x}),g&&r.jsx("span",{className:v(f.field.error,"text-red-500 text-xs mt-1"),children:g}),i==="password"&&r.jsx("button",{type:"button",tabIndex:-1,onClick:()=>S(L=>!L),className:"absolute inset-y-0 right-3 flex items-center text-gray-400 hover:text-gray-600 dark:text-gray-400 dark:hover:text-gray-200",children:r.jsx(ue.Icon,{icon:k?"mdi:eye-outline":"mdi:eye-off-outline",className:"w-5 h-5"})})]})]},e)})});Br.displayName="Input";const Et=({editorKey:a="",value:o="",name:e="",onChange:t,label:n="",required:s=!1,placeholder:i="",parentClass:l="col-span-12",height:m=400,inline:p=!1,disabled:h=!1,plugins:u,toolbar:c,menubar:g=!1,fontFamily:w="Inter, sans-serif",initConfig:x={},imageUploadHandler:N,errorMessage:k=""})=>{const S=["advlist","autolink","lists","link","image","charmap","preview","anchor","searchreplace","visualblocks","code","fullscreen","insertdatetime","media","table","help","wordcount"],A="undo redo | blocks | bold italic underline forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image media table | removeformat | code fullscreen preview",T=z=>new Promise((L,$)=>{if(!N){L(`data:${z.blob().type};base64,${z.base64()}`);return}N(z).then(y=>{y?L(y):$("Upload failed: No URL returned")}).catch(y=>{$(typeof y=="string"?y:(y==null?void 0:y.message)||"Image upload failed")})});return r.jsxs("div",{className:v(f.field.wrapper,l),id:`field-${e}`,children:[n&&r.jsx(me,{label:n,required:s}),r.jsx(Vr.Editor,{apiKey:a,value:o,disabled:h,init:{height:m,inline:p,menubar:g,branding:!1,statusbar:!0,automatic_uploads:!0,images_upload_handler:T,plugins:u??S,toolbar:c??A,placeholder:i,content_style:`
|
|
120
|
+
`,Nt=1,St=3,$t=1,_t=function(a){rt(o,a);function o(){var e=a!==null&&a.apply(this,arguments)||this;return e.cropperRef=ve.createRef(),e.imageRef=ve.createRef(),e.videoRef=ve.createRef(),e.containerPosition={x:0,y:0},e.containerRef=null,e.styleRef=null,e.containerRect=null,e.mediaSize={width:0,height:0,naturalWidth:0,naturalHeight:0},e.dragStartPosition={x:0,y:0},e.dragStartCrop={x:0,y:0},e.gestureZoomStart=0,e.gestureRotationStart=0,e.isTouching=!1,e.lastPinchDistance=0,e.lastPinchRotation=0,e.rafDragTimeout=null,e.rafPinchTimeout=null,e.wheelTimer=null,e.currentDoc=typeof document<"u"?document:null,e.currentWindow=typeof window<"u"?window:null,e.resizeObserver=null,e.previousCropSize=null,e.isInitialized=!1,e.state={cropSize:null,hasWheelJustStarted:!1,mediaObjectFit:void 0},e.initResizeObserver=function(){if(!(typeof window.ResizeObserver>"u"||!e.containerRef)){var t=!0;e.resizeObserver=new window.ResizeObserver(function(n){if(t){t=!1;return}e.computeSizes()}),e.resizeObserver.observe(e.containerRef)}},e.preventZoomSafari=function(t){return t.preventDefault()},e.cleanEvents=function(){e.currentDoc&&(e.currentDoc.removeEventListener("mousemove",e.onMouseMove),e.currentDoc.removeEventListener("mouseup",e.onDragStopped),e.currentDoc.removeEventListener("touchmove",e.onTouchMove),e.currentDoc.removeEventListener("touchend",e.onDragStopped),e.currentDoc.removeEventListener("gesturechange",e.onGestureChange),e.currentDoc.removeEventListener("gestureend",e.onGestureEnd),e.currentDoc.removeEventListener("scroll",e.onScroll))},e.clearScrollEvent=function(){e.containerRef&&e.containerRef.removeEventListener("wheel",e.onWheel),e.wheelTimer&&clearTimeout(e.wheelTimer)},e.onMediaLoad=function(){var t=e.computeSizes();t&&(e.previousCropSize=t,e.emitCropData(),e.setInitialCrop(t),e.isInitialized=!0),e.props.onMediaLoaded&&e.props.onMediaLoaded(e.mediaSize)},e.setInitialCrop=function(t){if(e.props.initialCroppedAreaPercentages){var n=xt(e.props.initialCroppedAreaPercentages,e.mediaSize,e.props.rotation,t,e.props.minZoom,e.props.maxZoom),s=n.crop,i=n.zoom;e.props.onCropChange(s),e.props.onZoomChange&&e.props.onZoomChange(i)}else if(e.props.initialCroppedAreaPixels){var l=vt(e.props.initialCroppedAreaPixels,e.mediaSize,e.props.rotation,t,e.props.minZoom,e.props.maxZoom),s=l.crop,i=l.zoom;e.props.onCropChange(s),e.props.onZoomChange&&e.props.onZoomChange(i)}},e.computeSizes=function(){var t,n,s,i,l,h,d=e.imageRef.current||e.videoRef.current;if(d&&e.containerRef){e.containerRect=e.containerRef.getBoundingClientRect(),e.saveContainerPosition();var m=e.containerRect.width/e.containerRect.height,u=((t=e.imageRef.current)===null||t===void 0?void 0:t.naturalWidth)||((n=e.videoRef.current)===null||n===void 0?void 0:n.videoWidth)||0,c=((s=e.imageRef.current)===null||s===void 0?void 0:s.naturalHeight)||((i=e.videoRef.current)===null||i===void 0?void 0:i.videoHeight)||0,g=d.offsetWidth<u||d.offsetHeight<c,f=u/c,w=void 0;if(g)switch(e.state.mediaObjectFit){default:case"contain":w=m>f?{width:e.containerRect.height*f,height:e.containerRect.height}:{width:e.containerRect.width,height:e.containerRect.width/f};break;case"horizontal-cover":w={width:e.containerRect.width,height:e.containerRect.width/f};break;case"vertical-cover":w={width:e.containerRect.height*f,height:e.containerRect.height};break}else w={width:d.offsetWidth,height:d.offsetHeight};e.mediaSize=se(se({},w),{naturalWidth:u,naturalHeight:c}),e.props.setMediaSize&&e.props.setMediaSize(e.mediaSize);var N=e.props.cropSize?e.props.cropSize:ht(e.mediaSize.width,e.mediaSize.height,e.containerRect.width,e.containerRect.height,e.props.aspect,e.props.rotation);return(((l=e.state.cropSize)===null||l===void 0?void 0:l.height)!==N.height||((h=e.state.cropSize)===null||h===void 0?void 0:h.width)!==N.width)&&e.props.onCropSizeChange&&e.props.onCropSizeChange(N),e.setState({cropSize:N},e.recomputeCropPosition),e.props.setCropSize&&e.props.setCropSize(N),N}},e.saveContainerPosition=function(){if(e.containerRef){var t=e.containerRef.getBoundingClientRect();e.containerPosition={x:t.left,y:t.top}}},e.onMouseDown=function(t){e.currentDoc&&(t.preventDefault(),e.currentDoc.addEventListener("mousemove",e.onMouseMove),e.currentDoc.addEventListener("mouseup",e.onDragStopped),e.saveContainerPosition(),e.onDragStart(o.getMousePoint(t)))},e.onMouseMove=function(t){return e.onDrag(o.getMousePoint(t))},e.onScroll=function(t){e.currentDoc&&(t.preventDefault(),e.saveContainerPosition())},e.onTouchStart=function(t){e.currentDoc&&(e.isTouching=!0,!(e.props.onTouchRequest&&!e.props.onTouchRequest(t))&&(e.currentDoc.addEventListener("touchmove",e.onTouchMove,{passive:!1}),e.currentDoc.addEventListener("touchend",e.onDragStopped),e.saveContainerPosition(),t.touches.length===2?e.onPinchStart(t):t.touches.length===1&&e.onDragStart(o.getTouchPoint(t.touches[0]))))},e.onTouchMove=function(t){t.preventDefault(),t.touches.length===2?e.onPinchMove(t):t.touches.length===1&&e.onDrag(o.getTouchPoint(t.touches[0]))},e.onGestureStart=function(t){e.currentDoc&&(t.preventDefault(),e.currentDoc.addEventListener("gesturechange",e.onGestureChange),e.currentDoc.addEventListener("gestureend",e.onGestureEnd),e.gestureZoomStart=e.props.zoom,e.gestureRotationStart=e.props.rotation)},e.onGestureChange=function(t){if(t.preventDefault(),!e.isTouching){var n=o.getMousePoint(t),s=e.gestureZoomStart-1+t.scale;if(e.setNewZoom(s,n,{shouldUpdatePosition:!0}),e.props.onRotationChange){var i=e.gestureRotationStart+t.rotation;e.props.onRotationChange(i)}}},e.onGestureEnd=function(t){e.cleanEvents()},e.onDragStart=function(t){var n,s,i=t.x,l=t.y;e.dragStartPosition={x:i,y:l},e.dragStartCrop=se({},e.props.crop),(s=(n=e.props).onInteractionStart)===null||s===void 0||s.call(n)},e.onDrag=function(t){var n=t.x,s=t.y;e.currentWindow&&(e.rafDragTimeout&&e.currentWindow.cancelAnimationFrame(e.rafDragTimeout),e.rafDragTimeout=e.currentWindow.requestAnimationFrame(function(){if(e.state.cropSize&&!(n===void 0||s===void 0)){var i=n-e.dragStartPosition.x,l=s-e.dragStartPosition.y,h={x:e.dragStartCrop.x+i,y:e.dragStartCrop.y+l},d=e.props.restrictPosition?ze(h,e.mediaSize,e.state.cropSize,e.props.zoom,e.props.rotation):h;e.props.onCropChange(d)}}))},e.onDragStopped=function(){var t,n;e.isTouching=!1,e.cleanEvents(),e.emitCropData(),(n=(t=e.props).onInteractionEnd)===null||n===void 0||n.call(t)},e.onWheel=function(t){if(e.currentWindow&&!(e.props.onWheelRequest&&!e.props.onWheelRequest(t))){t.preventDefault();var n=o.getMousePoint(t),s=ut(t).pixelY,i=e.props.zoom-s*e.props.zoomSpeed/200;e.setNewZoom(i,n,{shouldUpdatePosition:!0}),e.state.hasWheelJustStarted||e.setState({hasWheelJustStarted:!0},function(){var l,h;return(h=(l=e.props).onInteractionStart)===null||h===void 0?void 0:h.call(l)}),e.wheelTimer&&clearTimeout(e.wheelTimer),e.wheelTimer=e.currentWindow.setTimeout(function(){return e.setState({hasWheelJustStarted:!1},function(){var l,h;return(h=(l=e.props).onInteractionEnd)===null||h===void 0?void 0:h.call(l)})},250)}},e.getPointOnContainer=function(t,n){var s=t.x,i=t.y;if(!e.containerRect)throw new Error("The Cropper is not mounted");return{x:e.containerRect.width/2-(s-n.x),y:e.containerRect.height/2-(i-n.y)}},e.getPointOnMedia=function(t){var n=t.x,s=t.y,i=e.props,l=i.crop,h=i.zoom;return{x:(n+l.x)/h,y:(s+l.y)/h}},e.setNewZoom=function(t,n,s){var i=s===void 0?{}:s,l=i.shouldUpdatePosition,h=l===void 0?!0:l;if(!(!e.state.cropSize||!e.props.onZoomChange)){var d=Je(t,e.props.minZoom,e.props.maxZoom);if(h){var m=e.getPointOnContainer(n,e.containerPosition),u=e.getPointOnMedia(m),c={x:u.x*d-m.x,y:u.y*d-m.y},g=e.props.restrictPosition?ze(c,e.mediaSize,e.state.cropSize,d,e.props.rotation):c;e.props.onCropChange(g)}e.props.onZoomChange(d)}},e.getCropData=function(){if(!e.state.cropSize)return null;var t=e.props.restrictPosition?ze(e.props.crop,e.mediaSize,e.state.cropSize,e.props.zoom,e.props.rotation):e.props.crop;return gt(t,e.mediaSize,e.state.cropSize,e.getAspect(),e.props.zoom,e.props.rotation,e.props.restrictPosition)},e.emitCropData=function(){var t=e.getCropData();if(t){var n=t.croppedAreaPercentages,s=t.croppedAreaPixels;e.props.onCropComplete&&e.props.onCropComplete(n,s),e.props.onCropAreaChange&&e.props.onCropAreaChange(n,s)}},e.emitCropAreaChange=function(){var t=e.getCropData();if(t){var n=t.croppedAreaPercentages,s=t.croppedAreaPixels;e.props.onCropAreaChange&&e.props.onCropAreaChange(n,s)}},e.recomputeCropPosition=function(){var t,n;if(e.state.cropSize){var s=e.props.crop;if(e.isInitialized&&(!((t=e.previousCropSize)===null||t===void 0)&&t.width)&&(!((n=e.previousCropSize)===null||n===void 0)&&n.height)){var i=Math.abs(e.previousCropSize.width-e.state.cropSize.width)>1e-6||Math.abs(e.previousCropSize.height-e.state.cropSize.height)>1e-6;if(i){var l=e.state.cropSize.width/e.previousCropSize.width,h=e.state.cropSize.height/e.previousCropSize.height;s={x:e.props.crop.x*l,y:e.props.crop.y*h}}}var d=e.props.restrictPosition?ze(s,e.mediaSize,e.state.cropSize,e.props.zoom,e.props.rotation):s;e.previousCropSize=e.state.cropSize,e.props.onCropChange(d),e.emitCropData()}},e.onKeyDown=function(t){var n,s,i=e.props,l=i.crop,h=i.onCropChange,d=i.keyboardStep,m=i.zoom,u=i.rotation,c=d;if(e.state.cropSize){t.shiftKey&&(c*=.2);var g=se({},l);switch(t.key){case"ArrowUp":g.y-=c,t.preventDefault();break;case"ArrowDown":g.y+=c,t.preventDefault();break;case"ArrowLeft":g.x-=c,t.preventDefault();break;case"ArrowRight":g.x+=c,t.preventDefault();break;default:return}e.props.restrictPosition&&(g=ze(g,e.mediaSize,e.state.cropSize,m,u)),t.repeat||(s=(n=e.props).onInteractionStart)===null||s===void 0||s.call(n),h(g)}},e.onKeyUp=function(t){var n,s;switch(t.key){case"ArrowUp":case"ArrowDown":case"ArrowLeft":case"ArrowRight":t.preventDefault();break;default:return}e.emitCropData(),(s=(n=e.props).onInteractionEnd)===null||s===void 0||s.call(n)},e}return o.prototype.componentDidMount=function(){!this.currentDoc||!this.currentWindow||(this.containerRef&&(this.containerRef.ownerDocument&&(this.currentDoc=this.containerRef.ownerDocument),this.currentDoc.defaultView&&(this.currentWindow=this.currentDoc.defaultView),this.initResizeObserver(),typeof window.ResizeObserver>"u"&&this.currentWindow.addEventListener("resize",this.computeSizes),this.props.zoomWithScroll&&this.containerRef.addEventListener("wheel",this.onWheel,{passive:!1}),this.containerRef.addEventListener("gesturestart",this.onGestureStart)),this.currentDoc.addEventListener("scroll",this.onScroll),this.props.disableAutomaticStylesInjection||(this.styleRef=this.currentDoc.createElement("style"),this.styleRef.setAttribute("type","text/css"),this.props.nonce&&this.styleRef.setAttribute("nonce",this.props.nonce),this.styleRef.innerHTML=jt,this.currentDoc.head.appendChild(this.styleRef)),this.imageRef.current&&this.imageRef.current.complete&&this.onMediaLoad(),this.props.setImageRef&&this.props.setImageRef(this.imageRef),this.props.setVideoRef&&this.props.setVideoRef(this.videoRef),this.props.setCropperRef&&this.props.setCropperRef(this.cropperRef))},o.prototype.componentWillUnmount=function(){var e,t;!this.currentDoc||!this.currentWindow||(typeof window.ResizeObserver>"u"&&this.currentWindow.removeEventListener("resize",this.computeSizes),(e=this.resizeObserver)===null||e===void 0||e.disconnect(),this.containerRef&&this.containerRef.removeEventListener("gesturestart",this.preventZoomSafari),this.styleRef&&((t=this.styleRef.parentNode)===null||t===void 0||t.removeChild(this.styleRef)),this.cleanEvents(),this.props.zoomWithScroll&&this.clearScrollEvent())},o.prototype.componentDidUpdate=function(e){var t,n,s,i,l,h,d,m,u;e.rotation!==this.props.rotation?(this.computeSizes(),this.recomputeCropPosition()):e.aspect!==this.props.aspect?this.computeSizes():e.objectFit!==this.props.objectFit?this.computeSizes():e.zoom!==this.props.zoom?this.recomputeCropPosition():((t=e.cropSize)===null||t===void 0?void 0:t.height)!==((n=this.props.cropSize)===null||n===void 0?void 0:n.height)||((s=e.cropSize)===null||s===void 0?void 0:s.width)!==((i=this.props.cropSize)===null||i===void 0?void 0:i.width)?this.computeSizes():(((l=e.crop)===null||l===void 0?void 0:l.x)!==((h=this.props.crop)===null||h===void 0?void 0:h.x)||((d=e.crop)===null||d===void 0?void 0:d.y)!==((m=this.props.crop)===null||m===void 0?void 0:m.y))&&this.emitCropAreaChange(),e.zoomWithScroll!==this.props.zoomWithScroll&&this.containerRef&&(this.props.zoomWithScroll?this.containerRef.addEventListener("wheel",this.onWheel,{passive:!1}):this.clearScrollEvent()),e.video!==this.props.video&&((u=this.videoRef.current)===null||u===void 0||u.load());var c=this.getObjectFit();c!==this.state.mediaObjectFit&&this.setState({mediaObjectFit:c},this.computeSizes)},o.prototype.getAspect=function(){var e=this.props,t=e.cropSize,n=e.aspect;return t?t.width/t.height:n},o.prototype.getObjectFit=function(){var e,t,n,s;if(this.props.objectFit==="cover"){var i=this.imageRef.current||this.videoRef.current;if(i&&this.containerRef){this.containerRect=this.containerRef.getBoundingClientRect();var l=this.containerRect.width/this.containerRect.height,h=((e=this.imageRef.current)===null||e===void 0?void 0:e.naturalWidth)||((t=this.videoRef.current)===null||t===void 0?void 0:t.videoWidth)||0,d=((n=this.imageRef.current)===null||n===void 0?void 0:n.naturalHeight)||((s=this.videoRef.current)===null||s===void 0?void 0:s.videoHeight)||0,m=h/d;return m<l?"horizontal-cover":"vertical-cover"}return"horizontal-cover"}return this.props.objectFit},o.prototype.onPinchStart=function(e){var t=o.getTouchPoint(e.touches[0]),n=o.getTouchPoint(e.touches[1]);this.lastPinchDistance=yr(t,n),this.lastPinchRotation=vr(t,n),this.onDragStart(kr(t,n))},o.prototype.onPinchMove=function(e){var t=this;if(!(!this.currentDoc||!this.currentWindow)){var n=o.getTouchPoint(e.touches[0]),s=o.getTouchPoint(e.touches[1]),i=kr(n,s);this.onDrag(i),this.rafPinchTimeout&&this.currentWindow.cancelAnimationFrame(this.rafPinchTimeout),this.rafPinchTimeout=this.currentWindow.requestAnimationFrame(function(){var l=yr(n,s),h=t.props.zoom*(l/t.lastPinchDistance);t.setNewZoom(h,i,{shouldUpdatePosition:!1}),t.lastPinchDistance=l;var d=vr(n,s),m=t.props.rotation+(d-t.lastPinchRotation);t.props.onRotationChange&&t.props.onRotationChange(m),t.lastPinchRotation=d})}},o.prototype.render=function(){var e=this,t,n=this.props,s=n.image,i=n.video,l=n.mediaProps,h=n.cropperProps,d=n.transform,m=n.crop,u=m.x,c=m.y,g=n.rotation,f=n.zoom,w=n.cropShape,N=n.showGrid,j=n.roundCropAreaPixels,S=n.style,P=S.containerStyle,T=S.cropAreaStyle,I=S.mediaStyle,L=n.classes,U=L.containerClassName,y=L.cropAreaClassName,A=L.mediaClassName,M=(t=this.state.mediaObjectFit)!==null&&t!==void 0?t:this.getObjectFit();return ve.createElement("div",{onMouseDown:this.onMouseDown,onTouchStart:this.onTouchStart,ref:function(H){return e.containerRef=H},"data-testid":"container",style:P,className:He("reactEasyCrop_Container",U)},s?ve.createElement("img",se({alt:"",className:He("reactEasyCrop_Image",M==="contain"&&"reactEasyCrop_Contain",M==="horizontal-cover"&&"reactEasyCrop_Cover_Horizontal",M==="vertical-cover"&&"reactEasyCrop_Cover_Vertical",A)},l,{src:s,ref:this.imageRef,style:se(se({},I),{transform:d||"translate(".concat(u,"px, ").concat(c,"px) rotate(").concat(g,"deg) scale(").concat(f,")")}),onLoad:this.onMediaLoad})):i&&ve.createElement("video",se({autoPlay:!0,playsInline:!0,loop:!0,muted:!0,className:He("reactEasyCrop_Video",M==="contain"&&"reactEasyCrop_Contain",M==="horizontal-cover"&&"reactEasyCrop_Cover_Horizontal",M==="vertical-cover"&&"reactEasyCrop_Cover_Vertical",A)},l,{ref:this.videoRef,onLoadedMetadata:this.onMediaLoad,style:se(se({},I),{transform:d||"translate(".concat(u,"px, ").concat(c,"px) rotate(").concat(g,"deg) scale(").concat(f,")")}),controls:!1}),(Array.isArray(i)?i:[{src:i}]).map(function(z){return ve.createElement("source",se({key:z.src},z))})),this.state.cropSize&&ve.createElement("div",se({ref:this.cropperRef,style:se(se({},T),{width:j?Math.round(this.state.cropSize.width):this.state.cropSize.width,height:j?Math.round(this.state.cropSize.height):this.state.cropSize.height}),tabIndex:0,onKeyDown:this.onKeyDown,onKeyUp:this.onKeyUp,"data-testid":"cropper",className:He("reactEasyCrop_CropArea",w==="round"&&"reactEasyCrop_CropAreaRound",N&&"reactEasyCrop_CropAreaGrid",y)},h)))},o.defaultProps={zoom:1,rotation:0,aspect:4/3,maxZoom:St,minZoom:Nt,cropShape:"rect",objectFit:"contain",showGrid:!0,style:{},classes:{},mediaProps:{},cropperProps:{},zoomSpeed:1,restrictPosition:!0,zoomWithScroll:!0,keyboardStep:$t},o.getMousePoint=function(e){return{x:Number(e.clientX),y:Number(e.clientY)}},o.getTouchPoint=function(e){return{x:Number(e.clientX),y:Number(e.clientY)}},o}(ve.Component);const jr=ue,Rt=a=>new Promise((o,e)=>{const t=new Image;t.addEventListener("load",()=>o(t)),t.addEventListener("error",n=>e(n)),t.setAttribute("crossOrigin","anonymous"),t.src=a}),Or=a=>a*Math.PI/180,Mt=(a,o,e)=>{const t=Or(e);return{width:Math.abs(Math.cos(t)*a)+Math.abs(Math.sin(t)*o),height:Math.abs(Math.sin(t)*a)+Math.abs(Math.cos(t)*o)}},Ct=async(a,o,e="image/jpeg",t=0)=>{const n=await Rt(a),s=document.createElement("canvas"),i=s.getContext("2d");if(!i)throw new Error("Canvas context is not available");const l=Or(t),{width:h,height:d}=Mt(n.width,n.height,t);s.width=h,s.height=d,i.translate(h/2,d/2),i.rotate(l),i.translate(-n.width/2,-n.height/2),i.drawImage(n,0,0);const m=document.createElement("canvas"),u=m.getContext("2d");if(!u)throw new Error("Canvas context is not available");return m.width=o.width,m.height=o.height,u.drawImage(s,o.x,o.y,o.width,o.height,0,0,o.width,o.height),new Promise((c,g)=>{m.toBlob(f=>{if(!f){g(new Error("Image cropping failed"));return}c(f)},e,.95)})},Tr=({isOpen:a,imageSrc:o,fileType:e="image/jpeg",fileName:t="cropped-image",aspect:n=1/1,title:s="Crop Image",onClose:i,onApply:l})=>{const[h,d]=b.useState({x:0,y:0}),[m,u]=b.useState(1),[c,g]=b.useState(null);b.useEffect(()=>{a&&(d({x:0,y:0}),u(1),g(null))},[a]);const f=b.useCallback((N,j)=>{g(j)},[]),w=async()=>{var N,j;if(!(!o||!c))try{const S=await Ct(o,c,e),P=((j=(N=e==null?void 0:e.split("/"))==null?void 0:N[1])==null?void 0:j.replace("jpeg","jpg"))||"jpg",T=new File([S],`${t}.${P}`,{type:e});l==null||l(T)}catch{i==null||i()}};return a?r.jsxs("div",{className:v(x.mediaPicker.cropModal,"fixed inset-0 z-50 flex items-center justify-center p-4"),children:[r.jsx("div",{className:"fixed inset-0 bg-gray-500 opacity-75",onClick:i}),r.jsxs("div",{className:"relative bg-white rounded-lg shadow-xl w-full max-w-2xl max-h-[90vh] flex flex-col dark:bg-gray-800",children:[r.jsxs("div",{className:"flex items-center justify-between p-4 border-b border-gray-200 dark:border-gray-700 flex-shrink-0",children:[r.jsx("h3",{className:"text-lg font-medium text-gray-900 dark:text-white",children:s}),r.jsx("button",{type:"button",onClick:i,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":"Close crop modal",children:r.jsx(me.Icon,{icon:"mdi:close",className:"w-6 h-6"})})]}),r.jsxs("div",{className:"p-4 space-y-4",children:[r.jsx("div",{className:"relative h-72 w-full bg-gray-900 rounded-md overflow-hidden",children:o&&r.jsx(_t,{image:o,crop:h,zoom:m,aspect:n,onCropChange:d,onZoomChange:u,onCropComplete:f})}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{className:"text-sm text-gray-700 dark:text-gray-300",children:"Zoom"}),r.jsx("input",{type:"range",min:1,max:3,step:.1,value:m,onChange:N=>u(Number(N.target.value)),className:"w-full"})]})]}),r.jsxs("div",{className:"px-4 py-3 flex justify-end gap-3 border-t border-gray-200 dark:border-gray-700 sm:!px-6",children:[r.jsx(jr,{type:"button",onClick:i,variant:"outlined",color:"default",children:"Cancel"}),r.jsx(jr,{type:"button",onClick:w,variant:"contained",color:"primary",children:"Apply Crop"})]})]})]}):null},Dt=ue,Ne=a=>{typeof a=="string"&&a.startsWith("blob:")&&URL.revokeObjectURL(a)},Pt=({label:a="",value:o=null,onChange:e,required:t=!1,accept:n="image/*",aspect:s="1",id:i,dragDrop:l=!1,cropImage:h=!1,name:d="",parentClass:m="",errorMessage:u=""})=>{const[c,g]=b.useState(o),[f,w]=b.useState(!1),[N,j]=b.useState(!1),[S,P]=b.useState(""),[T,I]=b.useState("image/jpeg"),[L,U]=b.useState("cropped-image"),y=b.useRef(null),A=b.useRef(""),M=b.useRef("");b.useEffect(()=>{if(o instanceof File){const $=URL.createObjectURL(o);Ne(M.current),M.current=$,g({file:o,preview:$})}else o&&typeof o=="object"&&"preview"in o,g(o)},[o]),b.useEffect(()=>()=>{Ne(M.current),Ne(A.current)},[]);const z=()=>{j(!1),Ne(A.current),A.current="",P(""),y.current&&(y.current.value="")},H=$=>{const K=URL.createObjectURL($);Ne(M.current),M.current=K,g({file:$,preview:K}),e==null||e($),z()},V=$=>{if(!$||$.length===0)return;const K=$[0];if(h){const E=URL.createObjectURL(K);Ne(A.current),A.current=E,P(E),I(K.type||"image/jpeg"),U((K.name||"cropped-image").replace(/\.[^/.]+$/,"")),j(!0);return}const ce=URL.createObjectURL(K);Ne(M.current),M.current=ce,g({file:K,preview:ce}),e==null||e(K)},ee=$=>{$&&$.stopPropagation(),Ne(M.current),M.current="",g(null),e==null||e(null),y.current&&(y.current.value="")},ae=$=>{l&&($.preventDefault(),w(!0))},D=$=>{l&&($.preventDefault(),w(!1))},C=$=>{var K,ce,E,be;l&&($.preventDefault(),w(!1),(be=(E=(ce=(K=$.dataTransfer)==null?void 0:K.files)==null?void 0:ce[0])==null?void 0:E.type)!=null&&be.includes("image/")&&V($.dataTransfer.files))},F=()=>{var $;($=y.current)==null||$.click()},Y=c&&typeof c=="object"&&"preview"in c?c.preview:typeof c=="string"?c:"";return r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(x.mediaPicker.image,x.field.wrapper,m||"col-span-12"),children:[r.jsx(he,{label:a,required:t}),r.jsxs("div",{className:v(x.mediaPicker.dropzone,"relative rounded-md p-2 transition-all",f?"border-2 border-dashed border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800",u?"border-red-500":""),onDragOver:ae,onDragLeave:D,onDrop:C,id:`field-${d}`,children:[r.jsx("input",{ref:y,id:i,type:"file",accept:n,onChange:$=>V($.target.files),required:t&&!c,className:"absolute opacity-0 right-[50%] top-[80%] -translate-y-1/2 pointer-events-none h-[10px]"}),r.jsxs("div",{className:`flex items-center space-x-4 transition-all ${f?"opacity-50":""}`,children:[c?r.jsxs("div",{className:"relative group",children:[r.jsx("img",{src:Y,alt:"preview",className:"object-cover w-20 h-20 rounded-full shadow-md"}),!t&&r.jsx("button",{type:"button",onClick:ee,className:"absolute top-0 -right-2 bg-red-500 text-white rounded-full p-1 shadow-lg hover:bg-red-600 transition-colors focus:outline-none focus:ring-2 focus:ring-red-500 focus:ring-offset-2","aria-label":"Remove image",children:r.jsx(me.Icon,{icon:"mdi:close",className:"w-3 h-3"})})]}):r.jsx("div",{className:"rounded-full bg-gray-100 dark:bg-gray-700 h-20 w-20 flex items-center justify-center",children:r.jsx(me.Icon,{icon:"ri:image-add-fill",className:"text-gray-400 w-10 h-10"})}),r.jsxs("div",{className:"flex flex-col items-center space-y-1",children:[r.jsx(Dt,{type:"button",onClick:F,variant:"outlined",color:"default",children:c?"Change Image":"Select Image"}),l&&!c&&r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"or drag and drop"})]})]}),l&&f&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none bg-blue-500/10 rounded-md",children:r.jsx("span",{className:"text-blue-600 dark:text-blue-400 font-semibold text-lg",children:"Drop image here"})})]}),u&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:u})]},d),r.jsx(Tr,{isOpen:N,imageSrc:S,fileType:T,fileName:L,onClose:z,onApply:H,aspect:Number(s)})]})},Br=b.forwardRef(({label:a,value:o,name:e,required:t,parentClass:n="",className:s="",type:i="text",onKeyDown:l,negativeNumberAllow:h=!0,defaultValue:d="",field:m={},onChange:u,mask:c="",errorMessage:g="",maskApplyOnValue:f=!0,...w},N)=>{const[j,S]=b.useState(!1),P=L=>{if(i==="number"){if(["e","E","+"].includes(L.key)){L.preventDefault();return}if(h==!1&&L.key==="-"){L.preventDefault();return}if(["ArrowUp","ArrowDown"].includes(L.key)){L.preventDefault();return}}l==null||l(L)},T=v(x.field.input,"h-10 placeholder-gray-400 dark:placeholder-gray-400",i==="password"?"pr-10":"",i==="number"?"no-spinner":"",s,g?"border-red-500":"");function I(L,U){if(!L)return L;const y=String(L).replace(/[^a-zA-Z0-9]/g,"");let A="",M=0;for(let z=0;z<(U==null?void 0:U.length)&&M<y.length;z++){const H=U[z],V=y[M];H==="9"?/\d/.test(V)?(A+=V,M++):(M++,z--):H==="A"?/[a-zA-Z]/.test(V)?(A+=V,M++):(M++,z--):H==="X"?/[a-zA-Z0-9]/.test(V)?(A+=V,M++):(M++,z--):H==="*"?(A+=V,M++):(A+=H,V===H&&M++)}return A}return b.useEffect(()=>{if(d){const L=o||d;setTimeout(()=>{u==null||u(L)},100)}},[d]),r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(x.field.wrapper,n||"col-span-12"),children:[r.jsx(he,{label:a,required:t,infoText:m==null?void 0:m.infoText}),r.jsxs("div",{className:"relative",children:[r.jsx("input",{type:i==="password"&&j?"text":i,ref:N,id:`field-${e}`,required:t,onKeyDown:P,className:T,value:c?I(o,c):o,onChange:L=>{u(c&&f?I(L.target.value,c):L.target.value)},...w}),g&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:g}),i==="password"&&r.jsx("button",{type:"button",tabIndex:-1,onClick:()=>S(L=>!L),className:"absolute inset-y-0 right-3 flex items-center text-gray-400 hover:text-gray-600 dark:text-gray-400 dark:hover:text-gray-200",children:r.jsx(me.Icon,{icon:j?"mdi:eye-outline":"mdi:eye-off-outline",className:"w-5 h-5"})})]})]},e)})});Br.displayName="Input";const Lt=({editorKey:a="",value:o="",name:e="",onChange:t,label:n="",required:s=!1,placeholder:i="",parentClass:l="col-span-12",height:h=400,inline:d=!1,disabled:m=!1,plugins:u,toolbar:c,menubar:g=!1,fontFamily:f="Inter, sans-serif",initConfig:w={},imageUploadHandler:N,errorMessage:j=""})=>{const S=["advlist","autolink","lists","link","image","charmap","preview","anchor","searchreplace","visualblocks","code","fullscreen","insertdatetime","media","table","help","wordcount"],P="undo redo | blocks | bold italic underline forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image media table | removeformat | code fullscreen preview",T=I=>new Promise((L,U)=>{if(!N){L(`data:${I.blob().type};base64,${I.base64()}`);return}N(I).then(y=>{y?L(y):U("Upload failed: No URL returned")}).catch(y=>{U(typeof y=="string"?y:(y==null?void 0:y.message)||"Image upload failed")})});return r.jsxs("div",{className:v(x.field.wrapper,l),id:`field-${e}`,children:[n&&r.jsx(he,{label:n,required:s}),r.jsx(Zr.Editor,{apiKey:a,value:o,disabled:m,init:{height:h,inline:d,menubar:g,branding:!1,statusbar:!0,automatic_uploads:!0,images_upload_handler:T,plugins:u??S,toolbar:c??P,placeholder:i,content_style:`
|
|
121
121
|
body {
|
|
122
|
-
font-family: ${
|
|
123
|
-
border: ${
|
|
122
|
+
font-family: ${f};
|
|
123
|
+
border: ${j?"1px solid blue":""};
|
|
124
124
|
}
|
|
125
|
-
`,...x},onEditorChange:z=>{t==null||t(z)}}),k&&r.jsx("span",{className:v(f.field.error,"text-red-500 text-xs mt-1"),children:k})]})},At=({name:a="",label:o="",options:e=[],value:t=null,onChange:n,disabled:s=!1,required:i=!1,parentClass:l="col-span-12",className:m="",errorMessage:p="",multiSelect:h=!1})=>{const u=Array.isArray(e)&&e.length>0,c=x=>u?h?Array.isArray(t)&&t.includes(x):t===x:!!t,g=x=>{n==null||n(x.target.checked,a)},w=(x,N)=>{if(n)if(!h)n(N?x:"",a);else{const k=Array.isArray(t)?[...t]:[];if(N)k.includes(x)||k.push(x);else{const S=k.indexOf(x);S>-1&&k.splice(S,1)}n(k,a)}};return u?r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(f.field.wrapper,l),children:[r.jsx(me,{label:o,required:i}),r.jsx("div",{className:"flex flex-col space-y-2",children:e.map((x,N)=>r.jsxs("div",{className:"flex items-center",children:[r.jsx("input",{type:"checkbox",name:a,id:`field-${a}`,value:x.value,checked:c(x.value),disabled:s||!!x.disabled,required:i&&N===0,onChange:k=>w(x.value,k.target.checked),className:v(f.field.input,"h-4 w-4 cursor-pointer text-blue-600 border-gray-300 rounded focus:ring-2 focus:ring-blue-500 dark:focus:ring-blue-400",m)},a),x.label&&r.jsx("label",{htmlFor:a,className:"ml-2 text-sm text-gray-700 dark:text-gray-200 select-none",children:x.label})]},x.value||x.label))}),p&&r.jsx("span",{className:v(f.field.error,"text-red-500 text-xs mt-1"),children:p})]})}):r.jsxs("div",{className:v(f.field.wrapper,"flex items-center",l),children:[r.jsx("input",{type:"checkbox",name:a,checked:c(),disabled:s,required:i,onChange:g,className:v(f.field.input,"h-4 w-4 text-blue-600 cursor-pointer border-gray-300 rounded focus:ring-2 focus:ring-blue-500 dark:focus:ring-blue-400",m)}),o&&r.jsx("label",{htmlFor:a,className:"ml-2 text-sm text-gray-700 dark:text-gray-200 select-none",children:o})]})},Nr=he,Ft=({label:a="",value:o=null,onChange:e,required:t=!1,accept:n="audio/*",id:s,dragDrop:i=!1,name:l="",parentClass:m="",errorMessage:p="",maxSize:h=0})=>{const[u,c]=b.useState(null),[g,w]=b.useState(!1),x=b.useRef(null),N=h*1024*1024;b.useEffect(()=>{if(!o){k(),c(null);return}if(o instanceof File){const y=URL.createObjectURL(o);return c({file:o,preview:y}),()=>{URL.revokeObjectURL(y)}}else typeof o=="string"?c({preview:o}):o!=null&&o.preview&&c(o)},[o]);const k=()=>{u!=null&&u.preview&&u.preview.startsWith("blob:")&&URL.revokeObjectURL(u.preview)},S=y=>{if(!y||y.length===0)return;const F=y[0];if(N&&F.size>N){ke.enqueueSnackbar(`Audio is too large. Maximum allowed size is ${h} MB`,{variant:"warning"});return}const M=URL.createObjectURL(F);k(),c({file:F,preview:M}),e==null||e(F)},A=y=>{y&&y.stopPropagation(),k(),c(null),e==null||e(null),x.current&&(x.current.value="")},T=y=>{i&&(y.preventDefault(),w(!0))},z=y=>{i&&(y.preventDefault(),w(!1))},L=y=>{var F,M,I,K;i&&(y.preventDefault(),w(!1),(K=(I=(M=(F=y.dataTransfer)==null?void 0:F.files)==null?void 0:M[0])==null?void 0:I.type)!=null&&K.includes("audio/")&&S(y.dataTransfer.files))},$=()=>{var y;(y=x.current)==null||y.click()};return r.jsxs("div",{className:v(f.mediaPicker.audio,f.field.wrapper,m||"col-span-12"),children:[r.jsx(me,{label:a,required:t}),r.jsxs("div",{className:v(f.mediaPicker.dropzone,"relative rounded-lg p-2 transition-all",g?"border-2 border-dashed border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800",p?"border-red-500":""),onDragOver:T,onDragLeave:z,onDrop:L,id:`field-${l}`,children:[r.jsx("input",{ref:x,id:s,type:"file",accept:n,onChange:y=>S(y.target.files),required:t&&!u,className:"absolute opacity-0 right-[50%] top-[80%] -translate-y-1/2 pointer-events-none h-[10px]"}),r.jsx("div",{className:`flex items-center space-x-4 transition-all ${g?"opacity-50":""}`,children:u?r.jsxs("div",{className:"flex items-center space-x-4",children:[r.jsxs("div",{className:"relative w-full",children:[!t&&r.jsx("button",{type:"button",onClick:A,className:"absolute top-0 -right-2 bg-red-500 text-white rounded-full p-1 shadow-lg hover:bg-red-600 transition-colors z-10 focus:outline-none focus:ring-2 focus:ring-red-500 focus:ring-offset-2 dark:focus:ring-offset-gray-800","aria-label":"Remove audio",children:r.jsx(ue.Icon,{icon:"mdi:close",className:"w-3 h-3"})}),r.jsx("audio",{src:u.preview,controls:!0,controlsList:"nodownload"},u.preview)]}),r.jsx(Nr,{type:"button",onClick:$,children:r.jsx("span",{children:"Change Audio File"})})]}):r.jsxs("div",{className:"flex items-center justify-center space-x-4",children:[r.jsx("div",{className:"rounded-full bg-gray-100 dark:bg-gray-700 h-20 w-20 flex items-center justify-center",children:r.jsx(ue.Icon,{icon:"mdi:music",className:"text-gray-400 w-10 h-10"})}),r.jsxs("div",{className:"flex flex-col items-center space-y-1",children:[r.jsx(Nr,{type:"button",onClick:$,variant:"outlined",children:r.jsx("span",{children:"Choose Audio File"})}),i&&r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"or drag and drop your audio file here"})]})]})}),i&&g&&!u&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none bg-blue-500/10 rounded-lg",children:r.jsx("span",{className:"text-blue-600 dark:text-blue-400 font-semibold text-lg bg-white dark:bg-gray-800 px-4 py-2 rounded-lg shadow-lg",children:"Drop audio here"})})]}),p&&r.jsx("span",{className:v(f.field.error,"text-red-500 text-xs mt-1"),children:p})]},l)},Sr=he,zt=a=>{if(!a)return null;if(a instanceof File){const o=URL.createObjectURL(a);return{id:`${Date.now()}-${Math.random()}`,file:a,preview:o,createdBlobUrl:o}}if(typeof a=="string")return{id:`${Date.now()}-${Math.random()}`,file:null,preview:a};if(typeof a=="object"){if(a.preview)return{id:`${Date.now()}-${Math.random()}`,file:a.file||null,preview:a.preview};if(a.file){const o=URL.createObjectURL(a.file);return{id:`${Date.now()}-${Math.random()}`,file:a.file,preview:o,createdBlobUrl:o}}}return null},It=({label:a="",value:o=[],onChange:e,required:t=!1,accept:n="image/*",aspect:s="1",id:i,dragDrop:l=!1,cropImage:m=!1,name:p="",parentClass:h="",maxImages:u,errorMessage:c=""})=>{const[g,w]=b.useState([]),[x,N]=b.useState(!1),[k,S]=b.useState(!1),[A,T]=b.useState(""),[z,L]=b.useState("image/jpeg"),[$,y]=b.useState("cropped-image"),[F,M]=b.useState(null),I=b.useRef(null),K=b.useRef(null),W=b.useRef(""),P=b.useRef([]);b.useEffect(()=>{P.current=g},[g]),b.useEffect(()=>()=>{P.current.forEach(C=>{C.createdBlobUrl&&URL.revokeObjectURL(C.createdBlobUrl)}),W.current&&URL.revokeObjectURL(W.current)},[]),b.useEffect(()=>{if(!Array.isArray(o)){w([]);return}const C=o.map(O=>zt(O)).filter(Boolean);w(O=>(O.forEach(X=>{X.createdBlobUrl&&URL.revokeObjectURL(X.createdBlobUrl)}),C))},[o]);const G=typeof u=="number"&&u>0?Math.max(u-g.length,0):Number.POSITIVE_INFINITY,R=()=>{S(!1),W.current&&(URL.revokeObjectURL(W.current),W.current=""),T(""),M(null),I.current&&(I.current.value="")},te=C=>{var O,X;T(C.preview),L(((O=C.file)==null?void 0:O.type)||"image/jpeg"),y((((X=C.file)==null?void 0:X.name)||"cropped-image").replace(/\.[^/.]+$/,"")),M(C.id),S(!0)},q=C=>{const O=URL.createObjectURL(C);w(X=>{const J=X.map(Z=>Z.id!==F?Z:(Z.createdBlobUrl&&URL.revokeObjectURL(Z.createdBlobUrl),{...Z,file:C,preview:O,createdBlobUrl:O}));return e==null||e(J.map(Z=>Z.file?Z.file:Z.preview)),J}),R()},oe=C=>{if(!C||C.length===0||G===0)return;const O=Array.from(C).filter(J=>J.type.includes("image/")).slice(0,G);if(O.length===0)return;const X=O.map(J=>{const Z=URL.createObjectURL(J);return{id:`${Date.now()}-${Math.random()}`,file:J,preview:Z,createdBlobUrl:Z}});w(J=>{const Z=[...J,...X];return e==null||e(Z.map(ae=>ae.file?ae.file:ae.preview)),Z}),I.current&&(I.current.value="")},D=C=>{w(O=>{const X=O.find(Z=>Z.id===C);X!=null&&X.createdBlobUrl&&URL.revokeObjectURL(X.createdBlobUrl);const J=O.filter(Z=>Z.id!==C);return e==null||e(J.map(Z=>Z.file?Z.file:Z.preview)),J}),I.current&&(I.current.value="")},H=C=>{var O;M(C),(O=K.current)==null||O.click()},ce=C=>{if(!C||C.length===0||!F)return;const O=Array.from(C).find(J=>J.type.includes("image/"));if(!O)return;const X=URL.createObjectURL(O);w(J=>{const Z=J.map(ae=>ae.id!==F?ae:(ae.createdBlobUrl&&URL.revokeObjectURL(ae.createdBlobUrl),{...ae,file:O,preview:X,createdBlobUrl:X}));return e==null||e(Z.map(ae=>ae.file?ae.file:ae.preview)),Z}),M(null),K.current&&(K.current.value="")},E=C=>{l&&(C.preventDefault(),N(!0))},be=C=>{l&&(C.preventDefault(),N(!1))},we=C=>{var O;l&&(C.preventDefault(),N(!1),oe(((O=C.dataTransfer)==null?void 0:O.files)||null))},_=()=>{var C;(C=I.current)==null||C.click()},U=typeof u=="number"&&u>0?g.length<u:!0;return r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(f.mediaPicker.multiImage,f.field.wrapper,h||"col-span-12"),children:[r.jsx(me,{label:a,required:t}),r.jsxs("div",{className:v(f.mediaPicker.dropzone,"relative rounded-md p-2 transition-all",x?"border-2 border-dashed border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800",c?"border-red-500":""),onDragOver:E,onDragLeave:be,onDrop:we,id:`field-${p}`,children:[r.jsx("input",{ref:I,id:i,type:"file",accept:n,multiple:!0,onChange:C=>oe(C.target.files),required:t&&g.length===0,className:"absolute opacity-0 pointer-events-none h-1 w-1"}),r.jsx("input",{ref:K,type:"file",accept:n,onChange:C=>ce(C.target.files),className:"absolute opacity-0 pointer-events-none h-1 w-1"}),g.length===0?r.jsxs("div",{className:"flex items-center space-x-4",children:[r.jsx("div",{className:"rounded-full bg-gray-100 dark:bg-gray-700 h-20 w-20 flex items-center justify-center",children:r.jsx(ue.Icon,{icon:"ri:multi-image-fill",className:"text-gray-400 w-10 h-10"})}),r.jsxs("div",{className:"flex flex-col items-center space-y-1",children:[r.jsx(Sr,{type:"button",onClick:_,variant:"outlined",color:"default",children:r.jsx("span",{className:"text-sm font-medium",children:"Choose Images"})}),l&&r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"or drag and drop your images here"})]})]}):r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"flex items-center justify-between gap-2 mb-3",children:[r.jsx(Sr,{type:"button",onClick:_,disabled:!U,variant:"outlined",color:"default",children:r.jsx("span",{className:"text-sm font-medium",children:"Upload Images"})}),r.jsx("span",{className:"text-xs text-gray-500 dark:text-gray-400",children:u?`${g.length}/${u}`:`${g.length} selected`})]}),r.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-3",children:g.map(C=>r.jsxs("div",{className:"relative group rounded-md overflow-hidden border border-gray-200 dark:border-gray-700",children:[r.jsx("img",{src:C.preview,alt:"preview",className:"w-full h-28 object-cover"}),r.jsxs("div",{className:"absolute top-2 right-2 flex items-center gap-1.5 opacity-100 sm:opacity-0 sm:group-hover:opacity-100 transition-opacity",children:[r.jsx("button",{type:"button",onClick:()=>H(C.id),className:"w-7 h-7 rounded-full bg-white/90 text-gray-800 hover:bg-white flex items-center justify-center shadow","aria-label":"Replace image",children:r.jsx(ue.Icon,{icon:"solar:refresh-bold",className:"w-4 h-4"})}),m&&r.jsx("button",{type:"button",onClick:()=>te(C),className:"w-7 h-7 rounded-full bg-white/90 text-gray-800 hover:bg-white flex items-center justify-center shadow","aria-label":"Crop image",children:r.jsx(ue.Icon,{icon:"solar:crop-bold",className:"w-4 h-4"})}),r.jsx("button",{type:"button",onClick:()=>D(C.id),className:"w-7 h-7 rounded-full bg-red-500/95 text-white hover:bg-red-600 flex items-center justify-center shadow","aria-label":"Delete image",children:r.jsx(ue.Icon,{icon:"solar:trash-bin-trash-bold",className:"w-4 h-4"})})]})]},C.id))})]}),l&&x&&g.length===0&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none bg-blue-500/10 rounded-lg",children:r.jsx("span",{className:"text-blue-600 dark:text-blue-400 font-semibold text-lg bg-white dark:bg-gray-800 px-4 py-2 rounded-lg shadow-lg",children:"Drop images here"})})]}),c&&r.jsx("span",{className:v(f.field.error,"text-red-500 text-xs mt-1"),children:c})]},p),r.jsx($r,{isOpen:k,imageSrc:A,fileType:z,fileName:$,onClose:R,onApply:q,aspect:Number(s)})]})},xe=({src:a,alt:o="preview",isOpen:e,setIsOpen:t})=>{const n=()=>t(!1);return b.useEffect(()=>{const s=i=>{i.key==="Escape"&&n()};return e&&(document.body.style.overflow="hidden",document.addEventListener("keydown",s)),()=>{document.body.style.overflow="",document.removeEventListener("keydown",s)}},[e]),r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(f.imagePreview.root,"fixed inset-0 z-50 flex items-center justify-center bg-black/70 dark:bg-black/80 backdrop-blur-sm animate-in fade-in duration-200"),onClick:n,children:[r.jsx("button",{onClick:n,className:`absolute top-4 right-4 bg-white dark:bg-gray-800 text-gray-800 dark:text-gray-200\r
|
|
126
|
-
hover:bg-gray-100 dark:hover:bg-gray-700 rounded-full p-2 shadow-lg transition`,children:r.jsx(re.X,{size:20})}),r.jsx("div",{className:v(f.imagePreview.container,"max-w-5xl w-full px-4 transform transition-all duration-200 scale-95 animate-in zoom-in-95"),onClick:s=>s.stopPropagation(),children:r.jsx("img",{src:a,alt:o,className:v(f.imagePreview.image,"w-full max-h-[90vh] object-contain rounded-xl")})})]})})},Gr=({col:a,data:o,uiVariant:e="default",styleConfig:t={}})=>{const n=o[a.titleKey],s=o[a.subtitleKey],i=o[a.imageKey],l=a.fallback_icon,[m,p]=b.useState(null),[h,u]=b.useState(!1),c=w=>{let x=w;w&&w.src instanceof File&&(x={...w,src:URL.createObjectURL(w.src)}),p(x),u(!0)},g=w=>{const N={sm:{img:"w-8 h-8",wrap:"w-8 h-8",icon:"w-4 h-4"},md:{img:"w-12 h-12",wrap:"w-12 h-12",icon:"w-6 h-6"},lg:{img:"w-16 h-16",wrap:"w-16 h-16",icon:"w-8 h-8"}}[w];return i?r.jsx("img",{src:i instanceof File?URL.createObjectURL(i):i,alt:n,onClick:()=>c({src:i,alt:n}),className:`${N.img} cursor-pointer rounded-full object-cover border-2 border-white dark:border-gray-700 shadow flex-shrink-0`}):l?l instanceof Function?l(o):l:r.jsx("div",{className:`${N.wrap} flex items-center justify-center rounded-full border-2 border-gray-300 dark:border-gray-600 bg-gray-200 dark:bg-gray-600 flex-shrink-0`,children:r.jsx(re.User,{className:`${N.icon} text-gray-400`})})};return e==="card"?r.jsxs(r.Fragment,{children:[h&&m&&r.jsx(xe,{src:m.src,alt:m.alt,isOpen:h,setIsOpen:u}),r.jsxs("div",{className:v(f.details.row,"col-span-12 relative overflow-hidden rounded-xl bg-gradient-to-r from-primary/10 via-primary/5 to-transparent dark:from-primary/20 dark:via-primary/10 border border-primary/20 dark:border-primary/30 p-5 flex items-center gap-4",t.rowClass||"",t.groupClass||"",a.blockClass||""),children:[r.jsx("div",{className:"pointer-events-none absolute -right-6 -top-6 w-32 h-32 rounded-full bg-primary/8 dark:bg-primary/12"}),r.jsx("div",{className:"pointer-events-none absolute -right-2 -bottom-4 w-20 h-20 rounded-full bg-primary/5"}),g("lg"),r.jsxs("div",{className:"min-w-0 z-10",children:[r.jsx("h3",{className:`text-lg font-bold text-gray-900 dark:text-white truncate ${t.valueClass||""}`,children:n}),r.jsx("p",{className:`text-sm text-primary/70 dark:text-primary/60 font-medium truncate ${t.labelClass||""}`,children:s})]})]})]}):e==="split"?r.jsxs(r.Fragment,{children:[h&&m&&r.jsx(xe,{src:m.src,alt:m.alt,isOpen:h,setIsOpen:u}),r.jsxs("div",{className:v(f.details.row,"flex items-center gap-3 px-5 py-4 bg-gradient-to-r from-primary/8 via-primary/4 to-transparent dark:from-primary/15 dark:via-primary/8",t.rowClass||"",t.groupClass||"",a.blockClass||""),children:[g("md"),r.jsxs("div",{className:"min-w-0",children:[r.jsx("h3",{className:`text-base font-bold text-gray-900 dark:text-white truncate ${t.valueClass||""}`,children:n}),r.jsx("p",{className:`text-xs font-semibold text-primary/70 dark:text-primary/60 truncate ${t.labelClass||""}`,children:s})]})]})]}):r.jsxs(r.Fragment,{children:[h&&m&&r.jsx(xe,{src:m.src,alt:m.alt,isOpen:h,setIsOpen:u}),r.jsxs("div",{className:v(f.details.row,"col-span-12 flex items-center space-x-4 p-4 rounded-xl bg-gray-100 dark:bg-gray-900",t.rowClass||"",t.groupClass||"",a.blockClass||""),children:[g("lg"),r.jsxs("div",{children:[r.jsx("h3",{className:`text-xl font-semibold text-gray-900 dark:text-white ${t.valueClass||""}`,children:n}),r.jsx("p",{className:`text-sm text-gray-500 dark:text-gray-400 ${t.labelClass||""}`,children:s})]})]})]})},Yr=({col:a,data:o,uiVariant:e="default",styleConfig:t={}})=>{const n=o[a.titleKey],s=o[a.subtitleKey],i=o[a.imageKey],l=a.label,m=a==null?void 0:a.icon,p=a.fallback_icon,[h,u]=b.useState(null),[c,g]=b.useState(!1),w=N=>{let k=N;N&&N.src instanceof File&&(k={...N,src:URL.createObjectURL(N.src)}),u(k),g(!0)},x=()=>i?r.jsx("img",{src:i instanceof File?URL.createObjectURL(i):i,alt:n,onClick:()=>w({src:i,alt:n}),className:"w-8 h-8 cursor-pointer rounded-full object-cover border-2 border-gray-200 dark:border-gray-700 flex-shrink-0"}):p?p instanceof Function?p(o):p:r.jsx("div",{className:"w-8 h-8 flex items-center justify-center rounded-full border-2 border-gray-300 dark:border-gray-700 bg-gray-200 dark:bg-gray-600 flex-shrink-0",children:r.jsx(re.User,{className:"w-5 h-5 text-gray-400"})});return e==="card"?r.jsxs(r.Fragment,{children:[c&&h&&r.jsx(xe,{src:h.src,alt:h.alt,isOpen:c,setIsOpen:g}),r.jsxs("div",{className:v(f.details.row,a.blockClass||"col-span-6","group bg-white dark:bg-gray-800 rounded-xl border border-gray-100 dark:border-gray-700/60 shadow-sm hover:shadow-md hover:-translate-y-0.5 transition-all duration-200 p-4 flex flex-col gap-2.5",t.rowClass||"",t.cardGroupClass||""),children:[m&&r.jsx("div",{className:`w-8 h-8 rounded-lg bg-primary/10 dark:bg-primary/20 flex items-center justify-center text-primary flex-shrink-0 [&>svg]:w-4 [&>svg]:h-4 ${t.iconClass||""}`,children:m}),r.jsx("p",{className:`text-xs font-semibold uppercase tracking-wider text-gray-400 dark:text-gray-500 leading-none ${t.labelClass||""}`,children:l}),r.jsxs("div",{className:"flex items-center gap-2 mt-auto",children:[x(),r.jsxs("div",{className:"min-w-0",children:[r.jsx("p",{className:`text-sm font-semibold text-gray-800 dark:text-gray-100 truncate ${t.valueClass||""}`,children:n}),s&&r.jsx("p",{className:"text-xs text-gray-400 dark:text-gray-500 truncate",children:s})]})]})]})]}):e==="split"?r.jsxs(r.Fragment,{children:[c&&h&&r.jsx(xe,{src:h.src,alt:h.alt,isOpen:c,setIsOpen:g}),r.jsxs("div",{className:v(f.details.row,"flex items-stretch min-h-[52px]",t.rowClass||"",t.cardGroupClass||"",a.blockClass||""),children:[r.jsxs("div",{className:"w-[42%] flex-shrink-0 flex items-center gap-2 px-4 py-3 bg-gray-50 dark:bg-gray-800/80 border-r border-gray-200 dark:border-gray-700",children:[m&&r.jsx("span",{className:`text-primary/60 dark:text-primary/50 flex-shrink-0 [&>svg]:w-3.5 [&>svg]:h-3.5 ${t.iconClass||""}`,children:m}),r.jsx("p",{className:`text-xs font-semibold uppercase tracking-wide text-gray-500 dark:text-gray-400 leading-tight ${t.labelClass||""}`,children:l})]}),r.jsxs("div",{className:"flex-1 flex items-center gap-2.5 px-4 py-3 bg-white dark:bg-gray-900",children:[x(),r.jsxs("div",{className:"min-w-0",children:[r.jsx("p",{className:`text-sm text-gray-800 dark:text-gray-100 break-words ${t.valueClass||""}`,children:n}),s&&r.jsx("p",{className:"text-xs text-gray-400 dark:text-gray-500 truncate",children:s})]})]})]})]}):r.jsxs(r.Fragment,{children:[c&&h&&r.jsx(xe,{src:h.src,alt:h.alt,isOpen:c,setIsOpen:g}),r.jsxs("div",{className:v(f.details.row,"col-span-12 flex items-center space-x-4 p-4 rounded-xl bg-gray-100 dark:bg-gray-900",t.rowClass||"",t.cardGroupClass||"",a.blockClass||""),children:[m&&r.jsx("div",{className:`flex-shrink-0 ${t.iconClass||""}`,children:m}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("p",{className:`text-sm font-medium text-gray-500 dark:text-gray-400 ${t.labelClass||""}`,children:l}),r.jsxs("div",{className:"flex items-center mt-1",children:[x(),r.jsxs("div",{className:"ml-2",children:[r.jsx("p",{className:`mb-0 text-sm text-gray-900 dark:text-white break-words ${t.valueClass||""}`,children:n}),r.jsx("p",{className:`text-xs text-gray-500 dark:text-gray-400 ${t.labelClass||""}`,children:s})]})]})]})]})]})},_r={blue:{bg:"bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-300",border:"border border-blue-300 text-blue-700 dark:border-blue-700 dark:text-blue-300"},teal:{bg:"bg-teal-100 text-teal-800 dark:bg-teal-900/30 dark:text-teal-300",border:"border border-teal-300 text-teal-700 dark:border-teal-700 dark:text-teal-300"},purple:{bg:"bg-purple-100 text-purple-800 dark:bg-purple-900/30 dark:text-purple-300",border:"border border-purple-300 text-purple-700 dark:border-purple-700 dark:text-purple-300"},yellow:{bg:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-300",border:"border border-yellow-300 text-yellow-700 dark:border-yellow-700 dark:text-yellow-300"},green:{bg:"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300",border:"border border-green-300 text-green-700 dark:border-green-700 dark:text-green-300"},red:{bg:"bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300",border:"border border-red-300 text-red-700 dark:border-red-700 dark:text-red-300"},gray:{bg:"bg-gray-100 text-gray-800 dark:bg-gray-900/30 dark:text-gray-300",border:"border border-gray-300 text-gray-700 dark:border-gray-700 dark:text-gray-300"}},Rr={contained:"bg",outline:"border !bg-transparent",soft:"bg opacity-90"},Kr=({label:a,variant:o="contained",color:e="green",className:t=""})=>{const n=_r[e]||_r.green,s=Rr[o]||Rr.contained,i=o==="outline"?n.border:n.bg;return r.jsx("span",{className:v(f.chip.root,"inline-flex justify-center items-center rounded-sm text-xs font-semibold px-3 py-1 min-w-[78px]",i,s,t),children:a})},Wr=({col:a,data:o,uiVariant:e="default",styleConfig:t={}})=>{var k;const[n,s]=b.useState(null),[i,l]=b.useState(!1),m=a==null?void 0:a.icon,p=a.label;let h=o[a.key];const u=a.type,c=a.variant||"outline";let g=a.defaultColor;if(u==="chip"&&((k=a.chipOptions)==null?void 0:k.length)>0){const S=a==null?void 0:a.chipOptions.find(A=>A.value==h);S&&(h=S.label,g=S.color)}const w=S=>{if(!S)return"";if(typeof S=="string")return S;if(S instanceof File)return URL.createObjectURL(S);if(typeof S=="object"){if(typeof S.preview=="string")return S.preview;if(typeof S.src=="string")return S.src;if(S.src instanceof File)return URL.createObjectURL(S.src);if(S.file instanceof File)return URL.createObjectURL(S.file)}return""},x=(S,A)=>{s({src:S,alt:A}),l(!0)},N=(S="text-sm text-gray-900 dark:text-white break-words")=>u==="chip"?r.jsx(Kr,{label:h,variant:c,color:g,className:"mt-1"}):u==="tinyEditor"?r.jsx("p",{className:`${S} ${t.valueClass||""}`,dangerouslySetInnerHTML:{__html:h}}):u==="audio"?h?r.jsx("audio",{controls:!0,src:h instanceof File?URL.createObjectURL(h):h,onClick:A=>A.stopPropagation(),className:"shadow-sm rounded-full mt-1 w-full max-w-xs"},h instanceof File?URL.createObjectURL(h):h):r.jsx("p",{className:"text-sm text-gray-400",children:"N/A"}):u==="multiImage"?Array.isArray(h)&&h.length>0?r.jsx("div",{className:`mt-1 grid grid-cols-3 sm:grid-cols-4 gap-2 ${t.mediaGridClass||""}`,children:h.map((A,T)=>{const z=w(A);return z?r.jsx("button",{type:"button",onClick:()=>x(z,`Gallery ${T+1}`),className:"w-full h-16 rounded-lg overflow-hidden border border-gray-200 dark:border-gray-700 hover:border-primary/50 transition-colors",children:r.jsx("img",{src:z,alt:`gallery-${T+1}`,className:"w-full h-full object-cover"})},`${z}-${T}`):null})}):r.jsx("p",{className:"text-sm text-gray-400",children:"N/A"}):r.jsx("p",{className:`${S} ${t.valueClass||""}`,children:u==="date"?r.jsx("span",{children:er(h,a.format||"DD MMM YYYY")}):r.jsx("span",{children:h||"N/A"})});return e==="card"?r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(f.details.row,a.blockClass||"col-span-6","group bg-white dark:bg-gray-800 rounded-xl border border-gray-100 dark:border-gray-700/60 shadow-sm hover:shadow-md hover:-translate-y-0.5 transition-all duration-200 p-4 flex flex-col gap-2.5",t.rowClass||""),children:[m&&r.jsx("div",{className:`w-8 h-8 rounded-lg bg-primary/10 dark:bg-primary/20 flex items-center justify-center text-primary flex-shrink-0 [&>svg]:w-4 [&>svg]:h-4 ${t.iconClass||""}`,children:m}),r.jsx("p",{className:`text-xs font-semibold uppercase tracking-wider text-gray-400 dark:text-gray-500 leading-none ${t.labelClass||""}`,children:p}),r.jsx("div",{className:"mt-auto",children:N("text-sm font-semibold text-gray-800 dark:text-gray-100 break-words leading-snug")})]}),i&&n&&r.jsx(xe,{src:n.src,alt:n.alt,isOpen:i,setIsOpen:l})]}):e==="split"?r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(f.details.row,"flex items-stretch min-h-[52px]",t.rowClass||"",a.blockClass||""),children:[r.jsxs("div",{className:"w-[42%] flex-shrink-0 flex items-center gap-2 px-4 py-3 bg-gray-50 dark:bg-gray-800/80 border-r border-gray-200 dark:border-gray-700",children:[m&&r.jsx("span",{className:`text-primary/60 dark:text-primary/50 flex-shrink-0 [&>svg]:w-3.5 [&>svg]:h-3.5 ${t.iconClass||""}`,children:m}),r.jsx("p",{className:`text-xs font-semibold uppercase tracking-wide text-gray-500 dark:text-gray-400 leading-tight ${t.labelClass||""}`,children:p})]}),r.jsx("div",{className:"flex-1 flex items-center px-4 py-3 bg-white dark:bg-gray-900",children:N("text-sm text-gray-800 dark:text-gray-100 break-words")})]}),i&&n&&r.jsx(xe,{src:n.src,alt:n.alt,isOpen:i,setIsOpen:l})]}):r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(f.details.row,"col-span-12 flex items-center space-x-4 p-4 rounded-xl bg-gray-100 dark:bg-gray-900",t.rowClass||"",a.blockClass||""),children:[m&&r.jsx("div",{className:`flex-shrink-0 ${t.iconClass||""}`,children:m}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("p",{className:`text-sm font-medium text-gray-500 dark:text-gray-400 ${t.labelClass||""}`,children:p}),N("mt-1 text-sm text-gray-900 dark:text-white break-words")]})]}),i&&n&&r.jsx(xe,{src:n.src,alt:n.alt,isOpen:i,setIsOpen:l})]})},Ot=({value:a=!0,onChange:o,text:e,options:t=[],label:n,required:s,name:i="",disabled:l=!1,parentClass:m="",errorMessage:p=""})=>{const h=t.length>0?t:[{label:"Active",value:!0},{label:"Inactive",value:!1}];return r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(f.field.wrapper,m||"col-span-12"),children:[r.jsx(me,{label:n,required:s}),r.jsxs("div",{className:`flex items-center justify-between h-10 gap-4 bg-gray-100 dark:bg-gray-700 px-3 rounded-md border border-gray-100 dark:border-gray-600
|
|
127
|
-
${p?"border-red-500":""}`,children:[e&&r.jsx("p",{className:"text-xs text-gray-600 dark:text-gray-400 flex-shrink overflow-hidden text-ellipsis whitespace-nowrap max-w-[200px]",children:e}),r.jsx("div",{className:"flex items-center gap-6",children:h.map((u,c)=>r.jsxs("label",{className:"flex items-center gap-2 cursor-pointer select-none",children:[r.jsx("input",{type:"radio",name:"switch-field",required:s&&c===0,value:String(u.value),disabled:l,id:`field-${i}`,checked:a===u.value,onChange:()=>o==null?void 0:o(u.value),className:v(f.field.input,"w-4 h-4 border-gray-300 cursor-pointer")}),r.jsx("span",{className:"text-sm text-gray-700 dark:text-white",children:u.label})]},c))})]}),p&&r.jsx("span",{className:v(f.field.error,"text-red-500 text-xs mt-1"),children:p})]},i)})},Cr=he,Ut=({label:a="",value:o=null,onChange:e,required:t=!1,accept:n="video/*",id:s,dragDrop:i=!1,name:l="",parentClass:m="",maxSize:p=0,errorMessage:h=""})=>{const[u,c]=b.useState(null),[g,w]=b.useState(!1),x=b.useRef(null),N=p*1024*1024;b.useEffect(()=>{if(!o){k(),c(null);return}if(o instanceof File){const y=URL.createObjectURL(o);return c({file:o,preview:y}),()=>{URL.revokeObjectURL(y)}}else typeof o=="string"?c({preview:o}):o!=null&&o.preview&&c(o)},[o]);const k=()=>{u!=null&&u.preview&&u.preview.startsWith("blob:")&&URL.revokeObjectURL(u.preview)},S=y=>{if(!y||y.length===0)return;const F=y[0];if(N&&F.size>N){ke.enqueueSnackbar(`File is too large. Maximum allowed size is ${p} MB`,{variant:"warning"});return}const M=URL.createObjectURL(F);k(),c({file:F,preview:M}),e==null||e(F)},A=y=>{y&&y.stopPropagation(),k(),c(null),e==null||e(null),x.current&&(x.current.value="")},T=y=>{i&&(y.preventDefault(),w(!0))},z=y=>{i&&(y.preventDefault(),w(!1))},L=y=>{var F,M,I,K;i&&(y.preventDefault(),w(!1),(K=(I=(M=(F=y.dataTransfer)==null?void 0:F.files)==null?void 0:M[0])==null?void 0:I.type)!=null&&K.includes("video/")&&S(y.dataTransfer.files))},$=()=>{var y;(y=x.current)==null||y.click()};return r.jsxs("div",{className:v(f.mediaPicker.video,f.field.wrapper,m||"col-span-12"),children:[r.jsx(me,{label:a,required:t}),r.jsxs("div",{className:v(f.mediaPicker.dropzone,"relative rounded-lg p-2 transition-all",g?"border-2 border-dashed border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800",h?"border-red-500":""),onDragOver:T,onDragLeave:z,onDrop:L,id:`field-${l}`,children:[r.jsx("input",{ref:x,id:s,type:"file",accept:n,onChange:y=>S(y.target.files),required:t&&!u,className:"absolute opacity-0 pointer-events-none h-[10px]"}),r.jsx("div",{className:`flex items-center space-x-4 transition-all ${g?"opacity-50":""}`,children:u?r.jsxs("div",{className:"flex items-center space-x-4",children:[r.jsxs("div",{className:"relative",children:[!t&&r.jsx("button",{type:"button",onClick:A,className:"absolute -top-2 -right-2 bg-red-500 text-white rounded-full p-1 shadow hover:bg-red-600 z-10",children:r.jsx(ue.Icon,{icon:"mdi:close",className:"w-3 h-3"})}),r.jsx("video",{src:u.preview,controls:!0,controlsList:"nodownload",className:"w-[260px] h-[150px] rounded-md object-cover"},u.preview)]}),r.jsx(Cr,{type:"button",onClick:$,children:"Change Video File"})]}):r.jsxs("div",{className:"flex items-center justify-center space-x-4",children:[r.jsx("div",{className:"rounded-full bg-gray-100 dark:bg-gray-700 h-20 w-20 flex items-center justify-center",children:r.jsx(ue.Icon,{icon:"mdi:video",className:"text-gray-400 w-10 h-10"})}),r.jsxs("div",{className:"flex flex-col items-center space-y-1",children:[r.jsx(Cr,{type:"button",onClick:$,variant:"outlined",children:"Choose Video File"}),i&&r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"or drag and drop your video here"})]})]})}),i&&g&&!u&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none bg-blue-500/10 rounded-lg",children:r.jsx("span",{className:"text-blue-600 dark:text-blue-400 font-semibold text-lg bg-white dark:bg-gray-800 px-4 py-2 rounded-lg shadow-lg",children:"Drop video here"})})]}),h&&r.jsx("span",{className:v(f.field.error,"text-red-500 text-xs mt-1"),children:h})]},l)},Hr=({field:a,formData:o,handleChange:e,errorMessage:t})=>{const{key:n,label:s,type:i,options:l,placeholder:m,rows:p,inputClass:h,search:u,accept:c,text:g,required:w=!1,minLength:x,dragDrop:N,parentClass:k,countriesList:S,defaultCountry:A,multiple:T,dropdownMaxHeight:z,editorKey:L,fontFamily:$,disabled:y,negativeNumberAllow:F,defaultValue:M,renderCondition:I,pattern:K,renderType:W,cropImage:P,aspectRatio:G,dependencyKey:R,mask:te,maskApplyOnValue:q,maxSize:oe}=a;let D=o==null?void 0:o[n];D==null&&(D="");const H=m||(i==="select"?`Select ${s}`:`Enter ${s}`),ce="w-full px-3 py-2 rounded-md border border-gray-300 dark:border-gray-600 text-sm focus:outline-none focus:ring-1 focus:ring-blue-200 bg-white text-black dark:bg-gray-700 dark:text-white";if(I&&typeof I=="function"&&!I(o))return null;if(W&&W=="details")switch(i){case"group":return r.jsx(Gr,{col:a,data:o});case"cardGroup":return r.jsx(Yr,{col:a,data:o});default:return r.jsx(Wr,{col:a,data:o})}switch(i){case"select":return r.jsx(Qr,{options:l||[],value:D,formData:o,dependencyKey:R,onChange:E=>e(n,E),placeholder:H,className:h||"",search:u,required:w,defaultValue:M,label:s||"",name:n,countriesList:S,disabled:y,parentClass:k||"",multiple:T,dropdownMaxHeight:z,errorMessage:t});case"checkbox":return r.jsx(r.Fragment,{children:r.jsx(At,{name:n,label:s||"",options:l||[],value:D,onChange:E=>e(n,E),required:w,parentClass:k||"",className:h||"",multiSelect:T,disabled:y,errorMessage:t})});case"radio":return r.jsx(Ot,{value:D,onChange:E=>e(n,E),text:g,options:l||[],label:s||"",required:w,name:n,disabled:y,parentClass:k||"",errorMessage:t});case"switch":return r.jsx(Pr,{value:!!D,onChange:E=>e(n,E),label:s||"",required:w,name:n,disabled:y,className:"",parentClass:k||"",errorMessage:t});case"phone":return r.jsx(et,{value:D,onChange:E=>e(n,E),countriesList:S,defaultCountry:A,required:w,placeholder:H,search:u,label:s||"",name:n,disabled:y,errorMessage:t,parentClass:k||""});case"textarea":return r.jsx(Lr,{value:D,onChange:E=>e(n,E.target.value),placeholder:H,rows:p||3,className:`${ce} ${h||""}`,required:w,name:n,label:s||"",disabled:y,parentClass:k||"",errorMessage:t});case"image":case"multiImage":return T||i==="multiImage"?r.jsx(It,{value:Array.isArray(D)?D:[],onChange:E=>e(n,E),required:w,accept:c||"image/*",aspect:G,id:`file-${n}`,dragDrop:N,cropImage:P,label:s||"",name:n,parentClass:k||"",maxImages:a.maxImages,errorMessage:t}):r.jsx(Lt,{value:D,onChange:E=>e(n,E),required:w,accept:c||"image/*",aspect:G,id:`file-${n}`,dragDrop:N,cropImage:P,label:s||"",name:n,parentClass:k||"",errorMessage:t});case"audio":return r.jsx(Ft,{value:D,onChange:E=>e(n,E),required:w,accept:c||"audio/*",id:`file-${n}`,dragDrop:N,label:s||"",name:n,parentClass:k||"",maxSize:oe,errorMessage:t});case"video":return r.jsx(Ut,{value:D,onChange:E=>e(n,E),required:w,accept:c||"video/*",id:`file-${n}`,dragDrop:N,label:s||"",name:n,maxSize:oe,parentClass:k||"",errorMessage:t});case"tinyEditor":return r.jsx(Et,{value:D,name:n,onChange:E=>e(n,E),required:w,placeholder:H,label:s||"",parentClass:k||"",fontFamily:$,editorKey:L||"",disabled:y,errorMessage:t});default:return r.jsx(Br,{field:a,type:i||"text",defaultValue:M,value:D,onChange:E=>e(n,E),placeholder:H,className:`${ce} ${h||""}`,required:w,name:n,minLength:x,label:s||"",negativeNumberAllow:F,parentClass:k||"",disabled:y,pattern:K,mask:te,errorMessage:t,maskApplyOnValue:q})}},Tt=({isOpen:a,onClose:o,config:e,onApply:t})=>{var h;const[n,s]=b.useState({}),i=(u,c)=>{s(g=>({...g,[u]:c}))},l=()=>{t(n),o()},m=()=>{s({}),t({}),o()},p=e==null?void 0:e.component;return r.jsxs(r.Fragment,{children:[r.jsx("div",{className:v(f.filterDrawer.overlay,"fixed inset-0 bg-black/50 z-40 transition-opacity duration-300",a?"opacity-100 pointer-events-auto":"opacity-0 pointer-events-none")}),r.jsxs("div",{className:v(f.filterDrawer.panel,"fixed top-0 right-0 h-full w-[28rem] bg-white dark:bg-gray-900 shadow-2xl z-50 flex flex-col border-l border-gray-200 dark:border-gray-700 transform transition-transform duration-300 ease-in-out",a?"translate-x-0":"translate-x-full"),children:[r.jsxs("div",{className:v(f.filterDrawer.header,"flex items-center justify-between px-4 py-3 border-b border-gray-200 dark:border-gray-700"),children:[r.jsx("h2",{className:"text-lg font-semibold text-gray-900 dark:text-white",children:"Filters"}),r.jsx("button",{onClick:o,className:"p-2 hover:bg-gray-100 dark:hover:bg-gray-800 rounded-md transition",children:r.jsx(re.X,{className:"w-5 h-5 text-gray-500 dark:text-gray-400"})})]}),a&&r.jsx("div",{className:v(f.filterDrawer.body,"flex-1 overflow-y-auto px-4 py-3"),children:p?r.jsx(p,{filters:n,onFilterChange:i}):r.jsx("div",{className:"space-y-4",children:(h=e==null?void 0:e.fields)==null?void 0:h.map(u=>r.jsx(Hr,{field:u,formData:n,handleChange:i},u.key))})}),r.jsxs("div",{className:v(f.filterDrawer.footer,"flex gap-2 px-4 py-3 border-t border-gray-200 dark:border-gray-700"),children:[r.jsx(he,{onClick:l,variant:"contained",color:"primary",fullWidth:!0,children:"Apply Filters"}),r.jsx(he,{onClick:m,variant:"contained",className:"min-w-[150px]",children:"Reset"})]})]})]})},$t=({rows:a=5,columns:o=5})=>r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"w-full mb-6 inline-flex justify-end items-center",children:r.jsx("div",{className:"h-8 w-80 bg-gray-300 dark:bg-gray-700 rounded animate-pulse"})}),r.jsx("div",{className:"overflow-hidden rounded-md border border-gray-200 dark:border-gray-800",children:r.jsxs("table",{className:v(f.tableSkeleton.root,f.tableSkeleton.table,"w-full border-collapse"),children:[r.jsx("thead",{children:r.jsx("tr",{className:"bg-gray-50 dark:bg-gray-900",children:Array.from({length:o}).map((e,t)=>r.jsx("th",{className:"px-4 py-3",children:r.jsx("div",{className:"h-6 w-24 bg-gray-300 dark:bg-gray-700 rounded animate-pulse inline-flex justify-center items-center"})},t))})}),r.jsx("tbody",{children:Array.from({length:a}).map((e,t)=>r.jsx("tr",{className:"border-t border-gray-200 dark:border-gray-800",children:Array.from({length:o}).map((n,s)=>r.jsx("td",{className:"px-4 py-6",children:r.jsx("div",{className:"h-6 w-full bg-gray-300 dark:bg-gray-700 rounded animate-pulse"})},s))},t))})]})})]}),Bt=({options:a=[],value:o="",onChange:e,clearLabel:t=""})=>{const[n,s]=b.useState(!1),i=b.useRef(null),l=!!o;b.useEffect(()=>{const p=h=>{i.current&&!i.current.contains(h.target)&&s(!1)};return document.addEventListener("click",p),()=>document.removeEventListener("click",p)},[]);const m=p=>{const h=a.find(u=>u.value===p);e(p,h||null),s(!1)};return a!=null&&a.length?r.jsxs("div",{className:v(f.sortDropdown.root,"relative"),ref:i,children:[r.jsxs("button",{type:"button",onClick:()=>s(p=>!p),className:v(f.sortDropdown.trigger,"relative inline-flex items-center justify-center h-[36px] w-[36px] rounded-md border border-gray-300 dark:border-gray-600 bg-gray-50 dark:bg-gray-700 text-gray-700 dark:text-gray-200 hover:bg-gray-100 dark:hover:bg-gray-600 transition"),"aria-label":"Open sort options",children:[r.jsx(re.ArrowUpDown,{className:"w-4 h-4"}),l&&r.jsx("span",{className:"absolute top-1 right-1 w-2 h-2 bg-red-500 rounded-full"})]}),n&&r.jsxs("div",{className:v(f.sortDropdown.menu,"absolute right-0 mt-2 z-20 min-w-[220px] max-h-[260px] overflow-auto rounded-md border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800 shadow-lg"),children:[!!(t!=null&&t.trim())&&r.jsx("button",{type:"button",onClick:()=>m(""),className:v(f.sortDropdown.item,"w-full text-left px-3 py-2 text-sm transition hover:bg-gray-100 dark:hover:bg-gray-700",o?"text-gray-700 dark:text-gray-200":"bg-gray-100 dark:bg-gray-700 text-gray-900 dark:text-white"),children:t}),a.map(p=>r.jsx("button",{type:"button",onClick:()=>m(p.value),className:v(f.sortDropdown.item,"w-full text-left px-3 py-2 text-sm transition hover:bg-gray-100 dark:hover:bg-gray-700",o===p.value?"bg-gray-100 dark:bg-gray-700 text-gray-900 dark:text-white":"text-gray-700 dark:text-gray-200"),children:p.label},p.value))]})]}):null},Qe={enabled:!1,useServerSideSorting:!1,options:[],fields:[],defaultValue:"",autoGenerate:!0,clearLabel:"",onChange:null},Gt=a=>a===!0?{...Qe,enabled:!0}:!a||typeof a!="object"?Qe:{...Qe,...a,enabled:a.enabled??!0,autoGenerate:a.autoGenerate??!0},Yt=(a=[])=>a.filter(o=>{const e=["menu_actions","index","audio","avatar"];return o.type&&e.includes(o.type)?!1:!!(o.sortKey||(o.type==="group"?o.titleKey:o.key))}),Kt=a=>{if(a.sortType)return a.sortType;if(a.type==="date")return"date";if(a.type==="number")return"number";const o=String(a.sortKey||(a.type==="group"?a.titleKey:a.key)||"").toLowerCase();return["phone","mobile","contact","tel","whatsapp"].some(t=>o.includes(t))?"phone":Array.isArray(a.chipOptions)&&a.chipOptions.length>0&&a.chipOptions.every(n=>typeof n.value=="boolean")?"boolean":"string"},Mr=(a=[])=>a.flatMap(o=>{const e=o.sortKey||(o.type==="group"?o.titleKey:o.key),t=o.sortLabel||o.title||e,n=Kt(o);return e?n==="number"?[{value:`${e}_asc`,label:`${t} (Low-High)`,key:e,order:"asc",type:n},{value:`${e}_desc`,label:`${t} (High-Low)`,key:e,order:"desc",type:n}]:n==="phone"?[{value:`${e}_asc`,label:`${t} (0-9)`,key:e,order:"asc",type:n},{value:`${e}_desc`,label:`${t} (9-0)`,key:e,order:"desc",type:n}]:n==="date"?[{value:`${e}_desc`,label:`${t} (Newest First)`,key:e,order:"desc",type:n},{value:`${e}_asc`,label:`${t} (Oldest First)`,key:e,order:"asc",type:n}]:n==="boolean"?[{value:`${e}_desc`,label:`${t} (True First)`,key:e,order:"desc",type:n},{value:`${e}_asc`,label:`${t} (False First)`,key:e,order:"asc",type:n}]:[{value:`${e}_asc`,label:`${t} (A-Z)`,key:e,order:"asc",type:n},{value:`${e}_desc`,label:`${t} (Z-A)`,key:e,order:"desc",type:n}]:[]}),Wt=(a,o=[])=>{if(Array.isArray(a.options)&&a.options.length>0)return a.options.map(n=>({...n,type:n.type||"string",order:n.order==="desc"?"desc":"asc"}));const t=Array.isArray(a.fields)?a.fields:[];if(t.length>0){const n=t.map(s=>{const i=typeof s=="string"?s:s.key,l=o.find(m=>m.key===i||m.sortKey===i||m.type==="group"&&m.titleKey===i);return l?{...l,sortKey:typeof s=="object"&&s.key?s.key:l.sortKey,sortType:typeof s=="object"&&s.type?s.type:l.sortType,sortLabel:typeof s=="object"&&s.label?s.label:l.sortLabel}:null}).filter(s=>s!==null);return Mr(n)}return a.autoGenerate?Mr(o):[]},Ht=(a=[],o="",e,t=[])=>{if(!(e!=null&&e.enabled)||!o||e!=null&&e.useServerSideSorting)return a;const n=t==null?void 0:t.find(p=>p.value===o);if(!(n!=null&&n.key))return a;const s=n.order==="desc"?"desc":"asc",i=n.key,l=n.type||"string",m=p=>String(p??"").replace(/[^\d]/g,"").trim();return[...a].sort((p,h)=>{const u=p==null?void 0:p[i],c=h==null?void 0:h[i];if(u==null&&c==null)return 0;if(u==null)return s==="asc"?1:-1;if(c==null)return s==="asc"?-1:1;let g=0;return l==="number"?g=Number(u)-Number(c):l==="phone"?g=m(u).localeCompare(m(c),void 0,{numeric:!0}):l==="date"?g=new Date(u).getTime()-new Date(c).getTime():l==="boolean"?g=+!!u-+!!c:g=String(u).localeCompare(String(c)),s==="asc"?g:-g})},Zt=({config:a,setShowAdd:o,title:e,buttonText:t,description:n,showAddButton:s})=>{var hr;const{data:i=[],table_head:l=[],loading:m=!1,search:p={enabled:!1,placeholder:"Search...",useServerSideSearch:!1},filter:h={enabled:!1,useServerSideFilters:!1},sort:u={enabled:!1},pagination:c={enabled:!1,rows_per_page:10,useServerSidePagination:!1},exportCSV:g={enabled:!1,fileName:"",fields:[]},emptyMessage:w="No data available",onMenuAction:x,setServerSidePaginationData:N=()=>{},onFilterApply:k,filterConfig:S=null,rowClick:A=null}=a,[T,z]=b.useState(""),[L,$]=b.useState(null),[y,F]=b.useState([]),[M,I]=b.useState({top:0,left:0}),[K,W]=b.useState(!1),[P,G]=b.useState({}),R=b.useMemo(()=>Gt(u),[u]),te=b.useMemo(()=>Yt(l),[l]),q=b.useMemo(()=>Wt(R,te),[R,te]),[oe,D]=b.useState((R==null?void 0:R.defaultValue)||""),[H,ce]=b.useState(null),[E,be]=b.useState(!1),we=b.useMemo(()=>!p.enabled||!T.trim()||p.useServerSideSearch?i:Jr(i,T,p.searchKeys||[]),[i,T,p]),_=b.useMemo(()=>Ht(we,oe,R,q),[we,oe,R,q]),[U,C]=b.useState(1),[O,X]=b.useState((c==null?void 0:c.rows_per_page)||50),[J,Z]=b.useState(we.length||0),ae=c!=null&&c.useServerSidePagination?c.total_pages:Math.ceil(we.length/O),_e=b.useMemo(()=>{if(c.useServerSidePagination)return _;const d=(U-1)*O;return _.slice(d,d+O)},[_,U,O,c.useServerSidePagination]),Re=b.useRef(null),De=b.useRef(null),Pe=b.useRef({}),Ce=b.useRef(null),Le=typeof document<"u"?((hr=De.current)==null?void 0:hr.closest(".racm-root"))||document.body:null,Ue=d=>{z(d),C(1),p.useServerSideSearch&&(Ce.current&&clearTimeout(Ce.current),Ce.current=setTimeout(async()=>{try{await N(j=>({...j,search:d,current_page:1}))}catch(j){console.error("Search error:",j)}},800))},Te=(d,j=null)=>{D(d),C(1);const Y={value:d,option:j,key:(j==null?void 0:j.key)||"",order:(j==null?void 0:j.order)||"",type:(j==null?void 0:j.type)||""};typeof(R==null?void 0:R.onChange)=="function"&&R.onChange(Y)},$e=(d,j,Y)=>{Y.stopPropagation(),$(null),x==null||x(d.type,j)},Be=(d,j,Y)=>{j.stopPropagation(),F(Y);const Q=j.currentTarget;Pe.current[d]=Q;const ee=Q.getBoundingClientRect(),le=192,ge=Y.length*40,de=window.innerWidth,fe=window.innerHeight,ye=de-ee.right<le?ee.left-le+ee.width:ee.left,ze=fe-ee.bottom<ge&&ee.top>ge?ee.top-ge-2:ee.bottom+2;I({top:Math.max(8,Math.min(ze,fe-ge-8)),left:Math.max(8,Math.min(ye,de-le-8))}),$(L===d?null:d)},Ge=d=>(U-1)*O+d+1,Ee=d=>{let j=d;j&&j.src instanceof File&&(j={...j,src:URL.createObjectURL(j.src)}),ce(j),be(!0)},Ye=d=>{if(!d)return"";if(typeof d=="string")return d;if(d instanceof File)return URL.createObjectURL(d);if(typeof d=="object"){if(typeof d.preview=="string")return d.preview;if(typeof d.src=="string")return d.src;if(d.src instanceof File)return URL.createObjectURL(d.src);if(d.file instanceof File)return URL.createObjectURL(d.file)}return""},Ke=(d,j)=>{const Y=Array.isArray(d)?d:[];if(Y.length===0)return r.jsx("span",{className:j.className||"",children:"N/A"});const Q=j.maxPreview||3,ee=Y.slice(0,Q),le=Y.length-ee.length;return r.jsxs("div",{className:"flex items-center",children:[r.jsx("div",{className:"flex -space-x-2",children:ee.map((ge,de)=>{const fe=Ye(ge);return fe?r.jsx("button",{type:"button",onClick:Fe=>{Fe.stopPropagation(),Ee({src:fe,alt:`Gallery ${de+1}`})},className:"w-8 h-8 rounded-full border-2 border-white dark:border-gray-800 overflow-hidden",children:r.jsx("img",{src:fe,alt:`gallery-${de+1}`,className:"w-full h-full object-cover"})},`${fe}-${de}`):null})}),le>0&&r.jsxs("span",{className:"ml-2 text-xs font-medium text-gray-600 dark:text-gray-300",children:["+",le]})]})},Ae=(d,j,Y,Q=null,ee=null)=>r.jsx(r.Fragment,{children:d?r.jsx("img",{src:d instanceof File?URL.createObjectURL(d):d,alt:j||"Avatar",onClick:le=>{le.stopPropagation(),le.preventDefault(),Ee({src:d,alt:j})},className:`w-10 h-10 cursor-pointer shrink-0 rounded-full object-cover border border-gray-200 dark:border-gray-700 ${Y||""}`}):r.jsx(r.Fragment,{children:Q?typeof Q=="function"?Q(ee):Q:r.jsx("div",{className:`w-10 h-10 flex items-center shrink-0 justify-center rounded-full border border-gray-300 dark:border-gray-700 bg-gray-200 dark:bg-gray-600 ${Y||""}`,children:r.jsx(re.User,{className:"w-6 h-6 text-gray-400 dark:text-gray-400"})})})}),We=(d,j)=>r.jsx(r.Fragment,{children:d?r.jsx("audio",{controls:!0,src:d instanceof File?URL.createObjectURL(d):d,onClick:Y=>{Y.stopPropagation()},className:`w-64 cursor-pointer ${j||""}`},d instanceof File?URL.createObjectURL(d):d):r.jsx(r.Fragment,{children:r.jsx("div",{className:`w-12 h-12 flex items-center shrink-0 justify-center rounded-full border border-gray-300 dark:border-gray-700 bg-gray-200 dark:bg-gray-600 ${j||""}`,children:r.jsx(re.Music,{className:"w-6 h-6 text-gray-400 dark:text-gray-400"})})})}),B=(d,j)=>r.jsxs("div",{className:`flex items-center space-x-4 ${j.className||""}`,children:[j.imageKey?Ae(d[j.imageKey],d[j.titleKey],"group-avatar",j.fallback_icon,d):"",r.jsxs("div",{children:[r.jsx("p",{className:"font-medium text-gray-900 dark:text-white group-title",children:d[j.titleKey]||""}),r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400 group-sub-title",children:d[j.subtitleKey]||""})]})]}),V=(d,j)=>{var le;let Y=String(d);const Q=j.variant||"contained";let ee=j.defaultColor;if(((le=j==null?void 0:j.chipOptions)==null?void 0:le.length)>0){const ge=j==null?void 0:j.chipOptions.find(de=>de.value==d);ge&&(Y=ge.label,ee=ge.color)}return r.jsx(Kr,{label:Y,variant:Q,color:ee,className:j.className||""})},ne=(d,j,Y)=>{const Q=j[d.key];return d.type==="menu_actions"?r.jsx("div",{className:`text-center ${d.className||""}`,children:r.jsx("button",{ref:ee=>{Pe.current[j.id||j._id]=ee},onClick:ee=>Be(j.id||j._id,ee,d.menuList),className:v(f.table.actionButton,"p-2 bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 rounded-full transition text-gray-700 dark:text-gray-300"),children:r.jsx(re.EllipsisVertical,{className:"h-4 w-4"})})}):d.type==="index"?r.jsx("span",{className:d.className||"",children:Ge(Y)}):d.type==="group"?B(j,d):d.type==="chip"?r.jsx(r.Fragment,{children:V(Q,d)}):d.type==="date"?r.jsx("span",{className:d.className||"",children:er(Q,d.format||"DD MMM YYYY")}):d.type==="avatar"?r.jsx(r.Fragment,{children:r.jsx("div",{className:"min-w-[40px]",children:Ae(Q,d.alt,d.className,d.fallback_icon,j)})}):d.type==="audio"?r.jsx(r.Fragment,{children:We(Q,d.className)}):d.type==="multiImage"?r.jsx(r.Fragment,{children:Ke(Q,d)}):r.jsx("span",{className:d.className||"",children:Q||"N/A"})},je=d=>{if(typeof A=="function")return A(d);if(A)return x==null?void 0:x("view",d)},ie=(d,j)=>{if(d.onClickDetails)return x==null?void 0:x("view",j);if(typeof d.handleClick=="function")return d.handleClick(j)},pr=()=>A||typeof A=="function",ur=d=>d.onClickDetails||typeof d.handleClick=="function",Zr=()=>{var Fe;if(!(i!=null&&i.length)||!((Fe=g==null?void 0:g.fields)!=null&&Fe.length))return;const d=g.fields.map(ye=>ye.label),j=_e.map(ye=>g.fields.map(mr=>{const ze=ye==null?void 0:ye[mr.key];return`"${ze??""}"`})),Y=[d.join(","),...j.map(ye=>ye.join(","))].join(`
|
|
128
|
-
`),ee=`export-${er(new Date,"YYYY-MM-DD_HH-mm-ss")}.csv`,le=g.fileName||ee,ge=new Blob([Y],{type:"text/csv;charset=utf-8;"}),de=document.createElement("a"),fe=URL.createObjectURL(ge);de.href=fe,de.download=le,document.body.appendChild(de),de.click(),document.body.removeChild(de),URL.revokeObjectURL(fe)};return b.useEffect(()=>{const d=()=>{L&&$(null)};return window.addEventListener("scroll",d,!0),()=>{window.removeEventListener("scroll",d,!0)}},[L]),b.useEffect(()=>{const d=j=>{Re.current&&!Re.current.contains(j.target)&&$(null)};return document.addEventListener("click",d),()=>document.removeEventListener("click",d)},[]),b.useEffect(()=>{c!=null&&c.rows_per_page&&(c!=null&&c.useServerSidePagination)&&X((c==null?void 0:c.rows_per_page)||50),c.current_page&&C(c.current_page)},[c.rows_per_page,c==null?void 0:c.useServerSidePagination,c.current_page]),b.useEffect(()=>{Z(c!=null&&c.useServerSidePagination?c.total_records:_.length),_.length<=O*(U-1)&&!(c!=null&&c.useServerSidePagination)&&C(d=>d-1||1)},[_.length,c.total_records,c==null?void 0:c.useServerSidePagination]),b.useEffect(()=>{if(!(R!=null&&R.enabled)){D("");return}if(q.some(j=>j.value===R.defaultValue)){D(R.defaultValue);return}D("")},[R,q]),b.useEffect(()=>{if(!(R!=null&&R.enabled)||!(R!=null&&R.useServerSideSorting))return;const d=q==null?void 0:q.find(j=>j.value===oe);N(j=>({...j,current_page:1,sort_by:(d==null?void 0:d.key)||"",sort_order:(d==null?void 0:d.order)||""}))},[oe,R==null?void 0:R.enabled,R==null?void 0:R.useServerSideSorting,q,N]),r.jsxs("div",{ref:De,children:[m?r.jsx($t,{rows:6,columns:6}):r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(f.table.toolbar,"flex flex-col lg:!flex-row lg:!justify-between gap-4 mb-3"),children:[r.jsxs("div",{className:"table-heading",children:[r.jsx("h1",{children:e}),r.jsx("p",{children:n})]}),r.jsxs("div",{className:"flex flex-col justify-end items-stretch lg:!items-end gap-2 w-full lg:!w-auto",children:[s&&r.jsxs(he,{onClick:()=>o(!0),variant:"contained",color:"primary",children:[r.jsx(re.Plus,{className:"w-4 h-4 mr-2"}),t||"Add New"]}),r.jsxs("div",{className:"flex flex-col sm:!flex-row sm:!flex-wrap justify-end items-stretch sm:!items-center gap-2 w-full",children:[p.enabled&&r.jsx("div",{className:"w-full sm:!w-auto",children:r.jsxs("div",{className:v(f.table.searchField,"table-search-field"),children:[r.jsx(re.Search,{className:"search-icon"}),r.jsx("input",{type:"text",placeholder:p.placeholder||"Search...",value:T,onChange:d=>Ue(d.target.value),className:f.table.searchInput})]})}),R!=null&&R.enabled&&(q==null?void 0:q.length)>0||S&&h.enabled||g&&g.enabled?r.jsxs("div",{className:"flex items-center justify-end gap-2 w-full sm:!w-auto",children:[S&&h.enabled&&r.jsxs("div",{className:"filter-button-wrapper",children:[r.jsxs(he,{onClick:()=>W(!0),variant:"contained",className:"w-full sm:!w-auto",children:[r.jsx(re.Filter,{className:"w-4 h-4 mr-2"}),"Filters"]}),Object.keys(P).length>0&&r.jsx("span",{className:"red-dot"})]}),g&&g.enabled&&r.jsx("div",{className:"filter-button-wrapper",children:r.jsxs(he,{onClick:()=>Zr(),variant:"contained",className:"w-full sm:!w-auto",children:[r.jsx(re.Download,{className:"w-4 h-4 mr-2"}),"Export CSV"]})}),(R==null?void 0:R.enabled)&&(q==null?void 0:q.length)>0&&r.jsx(Bt,{options:q,value:oe,onChange:Te,clearLabel:R==null?void 0:R.clearLabel})]}):null]})]})]}),r.jsxs("div",{className:v(f.table.root,f.table.container,"table-container"),children:[r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:f.table.element,children:[r.jsx("thead",{className:f.table.head,children:r.jsx("tr",{className:f.table.headRow,children:l.map(d=>r.jsx("th",{className:v(f.table.headCell,"table-head-data",d.headClass||""),children:d.title},d.key))})}),r.jsx("tbody",{className:f.table.body,children:_e.length===0?r.jsx("tr",{children:r.jsx("td",{colSpan:l.length,className:v(f.table.noData,"no-data-message"),children:w})}):_e.map((d,j)=>r.jsx("tr",{className:v(f.table.row,"table-row",pr()?"cursor-pointer":""),onClick:()=>{pr()&&je(d)},children:l.map(Y=>r.jsx("td",{className:v(f.table.cell,"table-data",Y.type=="audio"?"":"max-w-[300px]","truncate",ur(Y)?"cursor-pointer":""),title:String(d[Y.key]??""),onClick:Q=>{ur(Y)&&(Q.stopPropagation(),Q.preventDefault(),ie(Y,d))},children:Y.render?Y.render(d,j):ne(Y,d,j)},Y.key))},d.id||d._id||j))})]})}),(c==null?void 0:c.enabled)&&_.length>0&&r.jsxs("div",{className:v(f.table.pagination,"pagination-wrapper"),children:[r.jsxs("span",{children:["Showing ",(U-1)*O+1," to"," ",Math.min(U*O,J)," of"," ",J," results"]}),r.jsxs("div",{className:"flex items-center gap-4",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{children:"Rows per page:"}),r.jsx("select",{value:O,onChange:d=>{const j=Number(d.target.value);X(j),C(1),c.useServerSidePagination&&N(Y=>({...Y,current_page:1,rows_per_page:j}))},className:"rows-number-select",children:[10,25,50,100].map(d=>r.jsx("option",{value:d,children:d},d))})]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("button",{onClick:()=>{if(U>1){const d=U-1;C(d),c.useServerSidePagination&&N(j=>({...j,current_page:d}))}},disabled:U===1,className:"arrow-icons",children:r.jsx(re.ChevronLeft,{className:"h-4 w-4"})}),r.jsxs("span",{children:["Page ",U," of ",ae]}),r.jsx("button",{onClick:()=>{if(U<ae){const d=U+1;C(d),c.useServerSidePagination&&N(j=>({...j,current_page:d}))}},disabled:U===ae,className:"arrow-icons",children:r.jsx(re.ChevronRight,{className:"h-4 w-4"})})]})]})]})]})]}),L&&Le&&dr.createPortal(r.jsx("div",{ref:Re,style:{position:"fixed",top:`${M.top}px`,left:`${M.left}px`,zIndex:9999},className:v(f.table.menu,"w-48 bg-white dark:bg-gray-700 rounded-md shadow-lg border border-gray-200 dark:border-gray-600"),children:y.map((d,j)=>r.jsxs("button",{onClick:Y=>$e(d,i.find(Q=>Q.id===L||Q._id==L),Y),className:v(f.table.menuItem,"w-full flex items-center gap-2 px-4 py-2 text-sm text-left hover:bg-gray-100 dark:hover:bg-gray-600",d.variant==="danger"?"text-red-600 dark:text-red-500":"text-gray-700 dark:text-gray-200"),children:[d.icon&&r.jsx("span",{className:"shrink-0",children:d.icon}),d.title]},j))}),Le),S&&K&&r.jsx(Tt,{isOpen:K,onClose:()=>W(!1),config:S,onApply:d=>{G(d),k==null||k(d)}}),E&&H&&r.jsx(xe,{src:H.src,alt:H.alt,isOpen:E,setIsOpen:be})]})},Ze=({isOpen:a,onClose:o,icon:e,title:t,children:n,size:s="md",actionButtons:i=[],onFormSubmit:l=()=>{},loadingBtn:m=!1,executeFunction:p=()=>{},selectedItem:h=null,footerConfig:u,classNames:c})=>{if(!a)return null;const g={sm:"max-w-md",md:"max-w-lg",lg:"max-w-2xl",xl:"max-w-4xl",full:"max-w-full"},w=i.length>0||!!(u!=null&&u.cancelButton);return r.jsxs("div",{className:v(f.modal.root,"fixed inset-0 z-50 flex items-center justify-center p-4"),children:[r.jsx("div",{className:v(f.modal.overlay,"fixed inset-0 bg-gray-500 opacity-75",c==null?void 0:c.overlay)}),r.jsxs("div",{className:v(f.modal.container,"relative bg-white rounded-lg shadow-xl w-full max-h-[90vh] flex flex-col dark:bg-gray-800",g[s]||g.md,c==null?void 0:c.container),children:[r.jsxs("div",{className:v(f.modal.header,"flex items-center justify-between p-4 border-b border-gray-200 dark:border-gray-700 flex-shrink-0",c==null?void 0:c.header),children:[r.jsxs("div",{className:"flex items-center gap-1",children:[e&&r.jsx("span",{children:e}),r.jsx("h3",{className:v(f.modal.title,"text-lg font-medium text-gray-900 dark:text-white",c==null?void 0:c.title),children:t})]}),r.jsx("button",{onClick:()=>o(),className:v(f.modal.closeButton,"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300",c==null?void 0:c.closeButton),children:r.jsx(re.X,{className:"w-6 h-6"})})]}),r.jsx("div",{className:v(f.modal.body,"flex-1 overflow-y-auto p-4",c==null?void 0:c.body),children:n}),w&&r.jsxs("div",{className:v(f.modal.footer,"px-4 py-3 flex justify-end gap-3 border-t border-gray-200 dark:border-gray-700 sm:!px-6",c==null?void 0:c.footer),children:[(u==null?void 0:u.cancelButton)&&r.jsx(he,{onClick:()=>o(),variant:"outlined",color:"default",className:v(f.modal.actionButton,"min-w-[100px]"),type:"button",children:(u==null?void 0:u.cancelText)||"Cancel"}),i.map((x,N)=>r.jsx(he,{onClick:k=>{x.type=="submit"?l(k):p(()=>{var S;return Promise.resolve((S=x==null?void 0:x.onClick)==null?void 0:S.call(x,k,h))},S=>o==null?void 0:o(S))},disabled:m||x.disabled,variant:x.variant||"contained",color:x.color||"primary",className:v(f.modal.actionButton,"min-w-[100px]",x.className||""),type:x.type||"button",children:m?r.jsxs("div",{className:v(f.modal.loadingIndicator,"flex items-center"),children:[r.jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-2 border-white/30 border-t-2 border-t-white mr-2"}),x.label||"Submit","..."]}):x.label||"Submit"},`${x.label||"action"}-${N}`))]})]})]})},Dr=({config:a,onSubmit:o,initialData:e,fetchRowDetails:t,type:n})=>{const s=e||{},{formClass:i="grid grid-cols-12 gap-4",formFields:l=[]}=a||{},[m,p]=b.useState(s),[h,u]=b.useState(!0),[c,g]=b.useState({}),w=async()=>{t==null||t(s).then(k=>{p(k.data)}).catch(k=>{ke.enqueueSnackbar(k.message,{variant:"error"})}).finally(()=>{u(!1)})};b.useEffect(()=>{t instanceof Function?w():(p(s),u(!1))},[]);const x=(k,S)=>{p(A=>({...A,[k]:S})),g(A=>({...A,[k]:""}))},N=k=>{k.preventDefault();const S=k.currentTarget;if(!S.checkValidity()){S.reportValidity();return}const A={};let T=!1;for(const z of l){const L=m[z.key]||"";if(z.customValidation){const $=z.customValidation(L);if($!==!1&&(A[z.key]=$,!T)){const y=S.querySelector(`[id="field-${z.key}"]`);y==null||y.focus(),T=!0}}}g(A),!(Object.keys(A).length>0)&&o(m)};return h?r.jsx("div",{className:v(f.form.loading,"flex items-center justify-center h-64"),children:r.jsx("div",{className:"rounded-full border-4 border-blue-500 border-t-gray-200 animate-spin w-8 h-8",style:{borderTopColor:"border-primary-500"}})}):r.jsx("form",{id:n==="add"?"addForm":n==="edit"?"editForm":"defaultForm",onSubmit:N,className:v(f.form.root,i),noValidate:!1,children:l.map(k=>r.jsx(Hr,{field:k,formData:m,errorMessage:c[k.key]||"",handleChange:x},k.key))})};function Vt({data:a,config:o,fetchRowDetails:e}){const{fields:t=[],containerClass:n,variant:s="default",styles:i={}}=o||{},l=a||{},[m,p]=b.useState(l),[h,u]=b.useState(!0),c=async()=>{e==null||e(l).then(w=>{p(w.data)}).catch(w=>{ke.enqueueSnackbar(w.message,{variant:"error"})}).finally(()=>{u(!1)})};if(b.useEffect(()=>{e instanceof Function?c():(p(l),u(!1))},[]),h)return r.jsx("div",{className:v(f.form.loading,"flex items-center justify-center h-64"),children:r.jsx("div",{className:"rounded-full border-4 border-blue-500 border-t-gray-200 animate-spin w-8 h-8",style:{borderTopColor:"border-primary-500"}})});const g={default:"grid grid-cols-12 gap-4",card:"grid grid-cols-12 gap-3",split:"rounded-xl border border-gray-200 dark:border-gray-700 overflow-hidden divide-y divide-gray-100 dark:divide-gray-800"};return r.jsx(r.Fragment,{children:r.jsx("div",{className:v(f.details.root,f.details.container,g[s]||g.default,n||"",i.containerClass||""),children:t.map(w=>w.renderCondition&&typeof w.renderCondition=="function"&&!w.renderCondition(m)?null:w.type=="group"?r.jsx(Gr,{col:w,data:m,uiVariant:s,styleConfig:i},w.key||w.titleKey):w.type=="cardGroup"?r.jsx(Yr,{col:w,data:m,uiVariant:s,styleConfig:i},w.key||w.titleKey):r.jsx(Wr,{col:w,data:m,uiVariant:s,styleConfig:i},w.key||w.label))})})}const Xt=({config:a})=>{var C,O,X,J,Z,ae,_e,Re,De,Pe,Ce,Le,Ue,Te,$e,Be,Ge,Ee,Ye,Ke,Ae,We;const{title:o,fetchData:e,fetchRowDetails:t,isStaticData:n=!1,tableConfig:s,modalConfig:i,filterConfig:l}=a,[m,p]=b.useState(!0),[h,u]=b.useState(!1),[c,g]=b.useState([]),[w,x]=b.useState(null),[N,k]=b.useState({search:"",rows_per_page:50,current_page:1,sort_by:"",sort_order:""}),[S,A]=b.useState({}),[T,z]=b.useState(!1),[L,$]=b.useState(!1),[y,F]=b.useState(!1),[M,I]=b.useState(!1),[K,W]=b.useState(!1),[P,G]=b.useState(null),R=(B,V)=>{B==="edit"?(G(V),F(!0)):B==="view"?(G(V),W(!0)):B==="delete"&&(G(V),I(!0))},te=async(B,V,ne="",je="")=>{u(!0);try{if(!B)return;const ie=await B();(ne||ie!=null&&ie.message)&&ke.enqueueSnackbar(ne||ie.message||"Success",{variant:"success"}),V==null||V(ie)}catch(ie){(je||ie!=null&&ie.message)&&ke.enqueueSnackbar(je||ie.message||"Error occurred",{variant:"error"})}finally{u(!1)}},q=B=>{const V=B.newObject;n?(g(ne=>[V,...ne]),x(ne=>({...ne,current_page:1}))):(k(ne=>({...ne,current_page:1})),N.current_page===1&&E()),$(!1)},oe=B=>{const{newObject:V,targetObject:ne}=B;n?g(je=>je.map(ie=>ie.id===ne.id?{...ie,...V}:ie)):E(),F(!1)},D=B=>{if(!B){I(!1),G(null);return}n?g(V=>V.filter(ne=>ne.id!==B.targetObject.id)):c.length===1&&N.current_page>1?k(V=>({...V,current_page:V.current_page-1})):E(),I(!1),G(null)},H=B=>te(()=>{var V;return(V=i==null?void 0:i.addModal)!=null&&V.handleSubmit?i.addModal.handleSubmit(B):Promise.resolve({newObject:null})},q),ce=B=>te(()=>{var V;return(V=i==null?void 0:i.editModal)!=null&&V.handleSubmit?i.editModal.handleSubmit(B,P):Promise.resolve({newObject:null,targetObject:null})},oe),E=async()=>{p(!0);try{const B=await e({...N,...S});g(B.data||[]),x(B.pagination||null)}catch(B){ke.enqueueSnackbar(B.message||"Failed to fetch data",{variant:"error"})}finally{p(!1)}},be=B=>{var V;A(ne=>({...B})),(V=s==null?void 0:s.filter)!=null&&V.useServerSideFilters&&z(ne=>!ne)},we=(B,V)=>B.filter(ne=>Object.entries(V).every(([je,ie])=>ne[je]===ie)),_=b.useMemo(()=>{var B;return(B=s==null?void 0:s.filter)!=null&&B.useServerSideFilters?c:we(c,S)},[c,S,(C=s==null?void 0:s.filter)==null?void 0:C.useServerSideFilters]),U=(O=i==null?void 0:i.viewModal)==null?void 0:O.component;return b.useEffect(()=>{E()},[N.search,N.rows_per_page,N.current_page,N.sort_by,N.sort_order,T]),r.jsxs("div",{className:f.crudPage.root,children:[r.jsx(Zt,{title:o,setShowAdd:$,description:a.description,buttonText:a.buttonText,showAddButton:!!(i!=null&&i.addModal),config:{...s,pagination:{...s.pagination,...w},data:_,setServerSidePaginationData:k,onMenuAction:R,filterConfig:l,onFilterApply:be,loading:m}}),L&&r.jsx(Ze,{isOpen:L,onClose:()=>{h||$(!1)},icon:(X=i==null?void 0:i.addModal)==null?void 0:X.icon,title:((J=i==null?void 0:i.addModal)==null?void 0:J.title)||"Add New",size:((Z=i==null?void 0:i.addModal)==null?void 0:Z.size)||"md",onFormSubmit:()=>{var B;return(B=document.querySelector("#addForm"))==null?void 0:B.requestSubmit()},loadingBtn:h,actionButtons:((ae=i==null?void 0:i.addModal)==null?void 0:ae.actionButtons)||[],children:r.jsx(Dr,{config:(i==null?void 0:i.addModal)||{},onSubmit:H,initialData:{},type:"add",loading:h})}),y&&r.jsx(Ze,{isOpen:y,onClose:()=>{h||F(!1)},icon:(_e=i==null?void 0:i.editModal)==null?void 0:_e.icon,title:((Re=i==null?void 0:i.editModal)==null?void 0:Re.title)||"Edit",size:((De=i==null?void 0:i.editModal)==null?void 0:De.size)||"md",onFormSubmit:()=>{var B;return(B=document.querySelector("#editForm"))==null?void 0:B.requestSubmit()},actionButtons:((Pe=i==null?void 0:i.editModal)==null?void 0:Pe.actionButtons)||[],loadingBtn:h,children:r.jsx(Dr,{config:(i==null?void 0:i.editModal)||{},onSubmit:ce,initialData:P,type:"edit",loading:h,fetchRowDetails:t})}),M&&r.jsx(Ze,{isOpen:M,onClose:B=>{D(B)},icon:((Ce=i==null?void 0:i.deleteModal)==null?void 0:Ce.icon)||r.jsx(ue.Icon,{icon:"ph:warning-bold",className:"w-6 h-6 text-red-500"}),title:((Le=i==null?void 0:i.deleteModal)==null?void 0:Le.title)||"Confirm Delete",size:((Ue=i==null?void 0:i.deleteModal)==null?void 0:Ue.size)||"md",loading:h,actionButtons:((Te=i==null?void 0:i.deleteModal)==null?void 0:Te.actionButtons)||[],executeFunction:te,selectedItem:P,children:r.jsx("div",{className:v(f.crudPage.deleteContent,"flex items-center space-x-2 py-3"),children:r.jsxs("div",{children:[r.jsx("p",{className:"text-md text-gray-700 dark:text-white",children:(($e=i==null?void 0:i.deleteModal)==null?void 0:$e.confirmText)||"Are you sure you want to delete this item?"}),((Be=i==null?void 0:i.deleteModal)==null?void 0:Be.referenceKey)&&r.jsx("p",{className:"text-md font-semibold text-gray-700 dark:text-white",children:P==null?void 0:P[(Ge=i==null?void 0:i.deleteModal)==null?void 0:Ge.referenceKey]})]})})}),(i==null?void 0:i.viewModal)&&r.jsx(Ze,{isOpen:K,onClose:()=>{W(!1),G(null)},icon:(Ee=i==null?void 0:i.viewModal)==null?void 0:Ee.icon,title:((Ye=i==null?void 0:i.viewModal)==null?void 0:Ye.title)||"View Details",size:((Ke=i==null?void 0:i.viewModal)==null?void 0:Ke.size)||"lg",footerConfig:(Ae=i==null?void 0:i.viewModal)==null?void 0:Ae.footer,classNames:(We=i==null?void 0:i.viewModal)==null?void 0:We.modalClassNames,children:U?r.jsx(U,{data:P}):r.jsx(Vt,{data:P,fetchRowDetails:t,config:(i==null?void 0:i.viewModal)||{}})})]})};function qt({children:a}){return ke.useSnackbar(),a}function Jt({children:a}){try{return r.jsx(qt,{children:a})}catch{return r.jsx(ke.SnackbarProvider,{anchorOrigin:{vertical:"bottom",horizontal:"right"},action:e=>r.jsx("button",{onClick:()=>{window.dispatchEvent(new CustomEvent("closeSnackbar",{detail:e}))},className:"p-1 hover:bg-white/20 rounded-full transition-colors duration-200 text-white flex items-center justify-center",children:r.jsx(re.X,{className:"h-4 w-4"})}),maxSnack:3,autoHideDuration:3e3,children:a})}}const Qt=()=>{if(typeof document>"u"||document.getElementById("react-admin-crud-manager-styles"))return;const a=document.createElement("style");a.id="react-admin-crud-manager-styles",a.textContent=qr,document.head.appendChild(a)};function ea({config:a}){return b.useEffect(()=>{Qt()},[]),r.jsx("div",{className:"racm-root",children:r.jsx(Jt,{children:r.jsx(Xt,{config:a})})})}module.exports=ea;
|
|
125
|
+
`,...w},onEditorChange:I=>{t==null||t(I)}}),j&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:j})]})},Et=({name:a="",label:o="",options:e=[],value:t=null,onChange:n,disabled:s=!1,required:i=!1,parentClass:l="col-span-12",className:h="",errorMessage:d="",multiSelect:m=!1})=>{const u=Array.isArray(e)&&e.length>0,c=w=>u?m?Array.isArray(t)&&t.includes(w):t===w:!!t,g=w=>{n==null||n(w.target.checked,a)},f=(w,N)=>{if(n)if(!m)n(N?w:"",a);else{const j=Array.isArray(t)?[...t]:[];if(N)j.includes(w)||j.push(w);else{const S=j.indexOf(w);S>-1&&j.splice(S,1)}n(j,a)}};return b.useEffect(()=>{let w;u?m?w=Array.isArray(t)?t:[]:w=t||"":w=!!t,setTimeout(()=>{n==null||n(w,a)},100)},[]),u?r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(x.field.wrapper,l),children:[r.jsx(he,{label:o,required:i}),r.jsx("div",{className:"flex flex-col space-y-2",children:e.map((w,N)=>r.jsxs("div",{className:"flex items-center",children:[r.jsx("input",{type:"checkbox",name:a,id:`field-${a}`,value:w.value,checked:c(w.value),disabled:s||!!w.disabled,required:i&&N===0,onChange:j=>f(w.value,j.target.checked),className:v(x.field.input,"h-4 w-4 cursor-pointer text-blue-600 border-gray-300 rounded focus:ring-2 focus:ring-blue-500 dark:focus:ring-blue-400",h)},a),w.label&&r.jsx("label",{htmlFor:a,className:"ml-2 text-sm text-gray-700 dark:text-gray-200 select-none",children:w.label})]},w.value||w.label))}),d&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:d})]})}):r.jsxs("div",{className:v(x.field.wrapper,"flex items-center",l),children:[r.jsx("input",{type:"checkbox",name:a,checked:c(),disabled:s,required:i,onChange:g,className:v(x.field.input,"h-4 w-4 text-blue-600 cursor-pointer border-gray-300 rounded focus:ring-2 focus:ring-blue-500 dark:focus:ring-blue-400",h)}),o&&r.jsx("label",{htmlFor:a,className:"ml-2 text-sm text-gray-700 dark:text-gray-200 select-none",children:o})]})},Nr=ue,At=({label:a="",value:o=null,onChange:e,required:t=!1,accept:n="audio/*",id:s,dragDrop:i=!1,name:l="",parentClass:h="",errorMessage:d="",maxSize:m=0})=>{const[u,c]=b.useState(null),[g,f]=b.useState(!1),w=b.useRef(null),N=m*1024*1024;b.useEffect(()=>{if(!o){j(),c(null);return}if(o instanceof File){const y=URL.createObjectURL(o);return c({file:o,preview:y}),()=>{URL.revokeObjectURL(y)}}else typeof o=="string"?c({preview:o}):o!=null&&o.preview&&c(o)},[o]);const j=()=>{u!=null&&u.preview&&u.preview.startsWith("blob:")&&URL.revokeObjectURL(u.preview)},S=y=>{if(!y||y.length===0)return;const A=y[0];if(N&&A.size>N){ke.enqueueSnackbar(`Audio is too large. Maximum allowed size is ${m} MB`,{variant:"warning"});return}const M=URL.createObjectURL(A);j(),c({file:A,preview:M}),e==null||e(A)},P=y=>{y&&y.stopPropagation(),j(),c(null),e==null||e(null),w.current&&(w.current.value="")},T=y=>{i&&(y.preventDefault(),f(!0))},I=y=>{i&&(y.preventDefault(),f(!1))},L=y=>{var A,M,z,H;i&&(y.preventDefault(),f(!1),(H=(z=(M=(A=y.dataTransfer)==null?void 0:A.files)==null?void 0:M[0])==null?void 0:z.type)!=null&&H.includes("audio/")&&S(y.dataTransfer.files))},U=()=>{var y;(y=w.current)==null||y.click()};return r.jsxs("div",{className:v(x.mediaPicker.audio,x.field.wrapper,h||"col-span-12"),children:[r.jsx(he,{label:a,required:t}),r.jsxs("div",{className:v(x.mediaPicker.dropzone,"relative rounded-lg p-2 transition-all",g?"border-2 border-dashed border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800",d?"border-red-500":""),onDragOver:T,onDragLeave:I,onDrop:L,id:`field-${l}`,children:[r.jsx("input",{ref:w,id:s,type:"file",accept:n,onChange:y=>S(y.target.files),required:t&&!u,className:"absolute opacity-0 right-[50%] top-[80%] -translate-y-1/2 pointer-events-none h-[10px]"}),r.jsx("div",{className:`flex items-center space-x-4 transition-all ${g?"opacity-50":""}`,children:u?r.jsxs("div",{className:"flex items-center space-x-4",children:[r.jsxs("div",{className:"relative w-full",children:[!t&&r.jsx("button",{type:"button",onClick:P,className:"absolute top-0 -right-2 bg-red-500 text-white rounded-full p-1 shadow-lg hover:bg-red-600 transition-colors z-10 focus:outline-none focus:ring-2 focus:ring-red-500 focus:ring-offset-2 dark:focus:ring-offset-gray-800","aria-label":"Remove audio",children:r.jsx(me.Icon,{icon:"mdi:close",className:"w-3 h-3"})}),r.jsx("audio",{src:u.preview,controls:!0,controlsList:"nodownload"},u.preview)]}),r.jsx(Nr,{type:"button",onClick:U,children:r.jsx("span",{children:"Change Audio File"})})]}):r.jsxs("div",{className:"flex items-center justify-center space-x-4",children:[r.jsx("div",{className:"rounded-full bg-gray-100 dark:bg-gray-700 h-20 w-20 flex items-center justify-center",children:r.jsx(me.Icon,{icon:"mdi:music",className:"text-gray-400 w-10 h-10"})}),r.jsxs("div",{className:"flex flex-col items-center space-y-1",children:[r.jsx(Nr,{type:"button",onClick:U,variant:"outlined",children:r.jsx("span",{children:"Choose Audio File"})}),i&&r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"or drag and drop your audio file here"})]})]})}),i&&g&&!u&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none bg-blue-500/10 rounded-lg",children:r.jsx("span",{className:"text-blue-600 dark:text-blue-400 font-semibold text-lg bg-white dark:bg-gray-800 px-4 py-2 rounded-lg shadow-lg",children:"Drop audio here"})})]}),d&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:d})]},l)},Sr=ue,Ft=a=>{if(!a)return null;if(a instanceof File){const o=URL.createObjectURL(a);return{id:`${Date.now()}-${Math.random()}`,file:a,preview:o,createdBlobUrl:o}}if(typeof a=="string")return{id:`${Date.now()}-${Math.random()}`,file:null,preview:a};if(typeof a=="object"){if(a.preview)return{id:`${Date.now()}-${Math.random()}`,file:a.file||null,preview:a.preview};if(a.file){const o=URL.createObjectURL(a.file);return{id:`${Date.now()}-${Math.random()}`,file:a.file,preview:o,createdBlobUrl:o}}}return null},zt=({label:a="",value:o=[],onChange:e,required:t=!1,accept:n="image/*",aspect:s="1",id:i,dragDrop:l=!1,cropImage:h=!1,name:d="",parentClass:m="",maxImages:u,errorMessage:c=""})=>{const[g,f]=b.useState([]),[w,N]=b.useState(!1),[j,S]=b.useState(!1),[P,T]=b.useState(""),[I,L]=b.useState("image/jpeg"),[U,y]=b.useState("cropped-image"),[A,M]=b.useState(null),z=b.useRef(null),H=b.useRef(null),V=b.useRef(""),ee=b.useRef([]);b.useEffect(()=>{ee.current=g},[g]),b.useEffect(()=>()=>{ee.current.forEach(R=>{R.createdBlobUrl&&URL.revokeObjectURL(R.createdBlobUrl)}),V.current&&URL.revokeObjectURL(V.current)},[]),b.useEffect(()=>{if(!Array.isArray(o)){f([]);return}const R=o.map(O=>Ft(O)).filter(Boolean);f(O=>(O.forEach(q=>{q.createdBlobUrl&&URL.revokeObjectURL(q.createdBlobUrl)}),R))},[o]);const ae=typeof u=="number"&&u>0?Math.max(u-g.length,0):Number.POSITIVE_INFINITY,D=()=>{S(!1),V.current&&(URL.revokeObjectURL(V.current),V.current=""),T(""),M(null),z.current&&(z.current.value="")},C=R=>{var O,q;T(R.preview),L(((O=R.file)==null?void 0:O.type)||"image/jpeg"),y((((q=R.file)==null?void 0:q.name)||"cropped-image").replace(/\.[^/.]+$/,"")),M(R.id),S(!0)},F=R=>{const O=URL.createObjectURL(R);f(q=>{const J=q.map(Z=>Z.id!==A?Z:(Z.createdBlobUrl&&URL.revokeObjectURL(Z.createdBlobUrl),{...Z,file:R,preview:O,createdBlobUrl:O}));return e==null||e(J.map(Z=>Z.file?Z.file:Z.preview)),J}),D()},Y=R=>{if(!R||R.length===0||ae===0)return;const O=Array.from(R).filter(J=>J.type.includes("image/")).slice(0,ae);if(O.length===0)return;const q=O.map(J=>{const Z=URL.createObjectURL(J);return{id:`${Date.now()}-${Math.random()}`,file:J,preview:Z,createdBlobUrl:Z}});f(J=>{const Z=[...J,...q];return e==null||e(Z.map(oe=>oe.file?oe.file:oe.preview)),Z}),z.current&&(z.current.value="")},$=R=>{f(O=>{const q=O.find(Z=>Z.id===R);q!=null&&q.createdBlobUrl&&URL.revokeObjectURL(q.createdBlobUrl);const J=O.filter(Z=>Z.id!==R);return e==null||e(J.map(Z=>Z.file?Z.file:Z.preview)),J}),z.current&&(z.current.value="")},K=R=>{var O;M(R),(O=H.current)==null||O.click()},ce=R=>{if(!R||R.length===0||!A)return;const O=Array.from(R).find(J=>J.type.includes("image/"));if(!O)return;const q=URL.createObjectURL(O);f(J=>{const Z=J.map(oe=>oe.id!==A?oe:(oe.createdBlobUrl&&URL.revokeObjectURL(oe.createdBlobUrl),{...oe,file:O,preview:q,createdBlobUrl:q}));return e==null||e(Z.map(oe=>oe.file?oe.file:oe.preview)),Z}),M(null),H.current&&(H.current.value="")},E=R=>{l&&(R.preventDefault(),N(!0))},be=R=>{l&&(R.preventDefault(),N(!1))},we=R=>{var O;l&&(R.preventDefault(),N(!1),Y(((O=R.dataTransfer)==null?void 0:O.files)||null))},_=()=>{var R;(R=z.current)==null||R.click()},B=typeof u=="number"&&u>0?g.length<u:!0;return r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(x.mediaPicker.multiImage,x.field.wrapper,m||"col-span-12"),children:[r.jsx(he,{label:a,required:t}),r.jsxs("div",{className:v(x.mediaPicker.dropzone,"relative rounded-md p-2 transition-all",w?"border-2 border-dashed border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800",c?"border-red-500":""),onDragOver:E,onDragLeave:be,onDrop:we,id:`field-${d}`,children:[r.jsx("input",{ref:z,id:i,type:"file",accept:n,multiple:!0,onChange:R=>Y(R.target.files),required:t&&g.length===0,className:"absolute opacity-0 pointer-events-none h-1 w-1"}),r.jsx("input",{ref:H,type:"file",accept:n,onChange:R=>ce(R.target.files),className:"absolute opacity-0 pointer-events-none h-1 w-1"}),g.length===0?r.jsxs("div",{className:"flex items-center space-x-4",children:[r.jsx("div",{className:"rounded-full bg-gray-100 dark:bg-gray-700 h-20 w-20 flex items-center justify-center",children:r.jsx(me.Icon,{icon:"ri:multi-image-fill",className:"text-gray-400 w-10 h-10"})}),r.jsxs("div",{className:"flex flex-col items-center space-y-1",children:[r.jsx(Sr,{type:"button",onClick:_,variant:"outlined",color:"default",children:r.jsx("span",{className:"text-sm font-medium",children:"Choose Images"})}),l&&r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"or drag and drop your images here"})]})]}):r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"flex items-center justify-between gap-2 mb-3",children:[r.jsx(Sr,{type:"button",onClick:_,disabled:!B,variant:"outlined",color:"default",children:r.jsx("span",{className:"text-sm font-medium",children:"Upload Images"})}),r.jsx("span",{className:"text-xs text-gray-500 dark:text-gray-400",children:u?`${g.length}/${u}`:`${g.length} selected`})]}),r.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-3",children:g.map(R=>r.jsxs("div",{className:"relative group rounded-md overflow-hidden border border-gray-200 dark:border-gray-700",children:[r.jsx("img",{src:R.preview,alt:"preview",className:"w-full h-28 object-cover"}),r.jsxs("div",{className:"absolute top-2 right-2 flex items-center gap-1.5 opacity-100 sm:opacity-0 sm:group-hover:opacity-100 transition-opacity",children:[r.jsx("button",{type:"button",onClick:()=>K(R.id),className:"w-7 h-7 rounded-full bg-white/90 text-gray-800 hover:bg-white flex items-center justify-center shadow","aria-label":"Replace image",children:r.jsx(me.Icon,{icon:"solar:refresh-bold",className:"w-4 h-4"})}),h&&r.jsx("button",{type:"button",onClick:()=>C(R),className:"w-7 h-7 rounded-full bg-white/90 text-gray-800 hover:bg-white flex items-center justify-center shadow","aria-label":"Crop image",children:r.jsx(me.Icon,{icon:"solar:crop-bold",className:"w-4 h-4"})}),r.jsx("button",{type:"button",onClick:()=>$(R.id),className:"w-7 h-7 rounded-full bg-red-500/95 text-white hover:bg-red-600 flex items-center justify-center shadow","aria-label":"Delete image",children:r.jsx(me.Icon,{icon:"solar:trash-bin-trash-bold",className:"w-4 h-4"})})]})]},R.id))})]}),l&&w&&g.length===0&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none bg-blue-500/10 rounded-lg",children:r.jsx("span",{className:"text-blue-600 dark:text-blue-400 font-semibold text-lg bg-white dark:bg-gray-800 px-4 py-2 rounded-lg shadow-lg",children:"Drop images here"})})]}),c&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:c})]},d),r.jsx(Tr,{isOpen:j,imageSrc:P,fileType:I,fileName:U,onClose:D,onApply:F,aspect:Number(s)})]})},xe=({src:a,alt:o="preview",isOpen:e,setIsOpen:t})=>{const n=()=>t(!1);return b.useEffect(()=>{const s=i=>{i.key==="Escape"&&n()};return e&&(document.body.style.overflow="hidden",document.addEventListener("keydown",s)),()=>{document.body.style.overflow="",document.removeEventListener("keydown",s)}},[e]),r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(x.imagePreview.root,"fixed inset-0 z-50 flex items-center justify-center bg-black/70 dark:bg-black/80 backdrop-blur-sm animate-in fade-in duration-200"),onClick:n,children:[r.jsx("button",{onClick:n,className:`absolute top-4 right-4 bg-white dark:bg-gray-800 text-gray-800 dark:text-gray-200\r
|
|
126
|
+
hover:bg-gray-100 dark:hover:bg-gray-700 rounded-full p-2 shadow-lg transition`,children:r.jsx(te.X,{size:20})}),r.jsx("div",{className:v(x.imagePreview.container,"max-w-5xl w-full px-4 transform transition-all duration-200 scale-95 animate-in zoom-in-95"),onClick:s=>s.stopPropagation(),children:r.jsx("img",{src:a,alt:o,className:v(x.imagePreview.image,"w-full max-h-[90vh] object-contain rounded-xl")})})]})})},Gr=({col:a,data:o,uiVariant:e="default",styleConfig:t={}})=>{const n=o[a.titleKey],s=o[a.subtitleKey],i=o[a.imageKey],l=a.fallback_icon,[h,d]=b.useState(null),[m,u]=b.useState(!1),c=f=>{let w=f;f&&f.src instanceof File&&(w={...f,src:URL.createObjectURL(f.src)}),d(w),u(!0)},g=f=>{const N={sm:{img:"w-8 h-8",wrap:"w-8 h-8",icon:"w-4 h-4"},md:{img:"w-12 h-12",wrap:"w-12 h-12",icon:"w-6 h-6"},lg:{img:"w-16 h-16",wrap:"w-16 h-16",icon:"w-8 h-8"}}[f];return i?r.jsx("img",{src:i instanceof File?URL.createObjectURL(i):i,alt:n,onClick:()=>c({src:i,alt:n}),className:`${N.img} cursor-pointer rounded-full object-cover border-2 border-white dark:border-gray-700 shadow flex-shrink-0`}):l?l instanceof Function?l(o):l:r.jsx("div",{className:`${N.wrap} flex items-center justify-center rounded-full border-2 border-gray-300 dark:border-gray-600 bg-gray-200 dark:bg-gray-600 flex-shrink-0`,children:r.jsx(te.User,{className:`${N.icon} text-gray-400`})})};return e==="card"?r.jsxs(r.Fragment,{children:[m&&h&&r.jsx(xe,{src:h.src,alt:h.alt,isOpen:m,setIsOpen:u}),r.jsxs("div",{className:v(x.details.row,"col-span-12 relative overflow-hidden rounded-xl bg-gradient-to-r from-primary/10 via-primary/5 to-transparent dark:from-primary/20 dark:via-primary/10 border border-primary/20 dark:border-primary/30 p-5 flex items-center gap-4",t.rowClass||"",t.groupClass||"",a.blockClass||""),children:[r.jsx("div",{className:"pointer-events-none absolute -right-6 -top-6 w-32 h-32 rounded-full bg-primary/8 dark:bg-primary/12"}),r.jsx("div",{className:"pointer-events-none absolute -right-2 -bottom-4 w-20 h-20 rounded-full bg-primary/5"}),g("lg"),r.jsxs("div",{className:"min-w-0 z-10",children:[r.jsx("h3",{className:`text-lg font-bold text-gray-900 dark:text-white truncate ${t.valueClass||""}`,children:n}),r.jsx("p",{className:`text-sm text-primary/70 dark:text-primary/60 font-medium truncate ${t.labelClass||""}`,children:s})]})]})]}):e==="split"?r.jsxs(r.Fragment,{children:[m&&h&&r.jsx(xe,{src:h.src,alt:h.alt,isOpen:m,setIsOpen:u}),r.jsxs("div",{className:v(x.details.row,"flex items-center gap-3 px-5 py-4 bg-gradient-to-r from-primary/8 via-primary/4 to-transparent dark:from-primary/15 dark:via-primary/8",t.rowClass||"",t.groupClass||"",a.blockClass||""),children:[g("md"),r.jsxs("div",{className:"min-w-0",children:[r.jsx("h3",{className:`text-base font-bold text-gray-900 dark:text-white truncate ${t.valueClass||""}`,children:n}),r.jsx("p",{className:`text-xs font-semibold text-primary/70 dark:text-primary/60 truncate ${t.labelClass||""}`,children:s})]})]})]}):r.jsxs(r.Fragment,{children:[m&&h&&r.jsx(xe,{src:h.src,alt:h.alt,isOpen:m,setIsOpen:u}),r.jsxs("div",{className:v(x.details.row,"col-span-12 flex items-center space-x-4 p-4 rounded-xl bg-gray-100 dark:bg-gray-900",t.rowClass||"",t.groupClass||"",a.blockClass||""),children:[g("lg"),r.jsxs("div",{children:[r.jsx("h3",{className:`text-xl font-semibold text-gray-900 dark:text-white ${t.valueClass||""}`,children:n}),r.jsx("p",{className:`text-sm text-gray-500 dark:text-gray-400 ${t.labelClass||""}`,children:s})]})]})]})},Yr=({col:a,data:o,uiVariant:e="default",styleConfig:t={}})=>{const n=o[a.titleKey],s=o[a.subtitleKey],i=o[a.imageKey],l=a.label,h=a==null?void 0:a.icon,d=a.fallback_icon,[m,u]=b.useState(null),[c,g]=b.useState(!1),f=N=>{let j=N;N&&N.src instanceof File&&(j={...N,src:URL.createObjectURL(N.src)}),u(j),g(!0)},w=()=>i?r.jsx("img",{src:i instanceof File?URL.createObjectURL(i):i,alt:n,onClick:()=>f({src:i,alt:n}),className:"w-8 h-8 cursor-pointer rounded-full object-cover border-2 border-gray-200 dark:border-gray-700 flex-shrink-0"}):d?d instanceof Function?d(o):d:r.jsx("div",{className:"w-8 h-8 flex items-center justify-center rounded-full border-2 border-gray-300 dark:border-gray-700 bg-gray-200 dark:bg-gray-600 flex-shrink-0",children:r.jsx(te.User,{className:"w-5 h-5 text-gray-400"})});return e==="card"?r.jsxs(r.Fragment,{children:[c&&m&&r.jsx(xe,{src:m.src,alt:m.alt,isOpen:c,setIsOpen:g}),r.jsxs("div",{className:v(x.details.row,a.blockClass||"col-span-6","group bg-white dark:bg-gray-800 rounded-xl border border-gray-100 dark:border-gray-700/60 shadow-sm hover:shadow-md hover:-translate-y-0.5 transition-all duration-200 p-4 flex flex-col gap-2.5",t.rowClass||"",t.cardGroupClass||""),children:[h&&r.jsx("div",{className:`w-8 h-8 rounded-lg bg-primary/10 dark:bg-primary/20 flex items-center justify-center text-primary flex-shrink-0 [&>svg]:w-4 [&>svg]:h-4 ${t.iconClass||""}`,children:h}),r.jsx("p",{className:`text-xs font-semibold uppercase tracking-wider text-gray-400 dark:text-gray-500 leading-none ${t.labelClass||""}`,children:l}),r.jsxs("div",{className:"flex items-center gap-2 mt-auto",children:[w(),r.jsxs("div",{className:"min-w-0",children:[r.jsx("p",{className:`text-sm font-semibold text-gray-800 dark:text-gray-100 truncate ${t.valueClass||""}`,children:n}),s&&r.jsx("p",{className:"text-xs text-gray-400 dark:text-gray-500 truncate",children:s})]})]})]})]}):e==="split"?r.jsxs(r.Fragment,{children:[c&&m&&r.jsx(xe,{src:m.src,alt:m.alt,isOpen:c,setIsOpen:g}),r.jsxs("div",{className:v(x.details.row,"flex items-stretch min-h-[52px]",t.rowClass||"",t.cardGroupClass||"",a.blockClass||""),children:[r.jsxs("div",{className:"w-[42%] flex-shrink-0 flex items-center gap-2 px-4 py-3 bg-gray-50 dark:bg-gray-800/80 border-r border-gray-200 dark:border-gray-700",children:[h&&r.jsx("span",{className:`text-primary/60 dark:text-primary/50 flex-shrink-0 [&>svg]:w-3.5 [&>svg]:h-3.5 ${t.iconClass||""}`,children:h}),r.jsx("p",{className:`text-xs font-semibold uppercase tracking-wide text-gray-500 dark:text-gray-400 leading-tight ${t.labelClass||""}`,children:l})]}),r.jsxs("div",{className:"flex-1 flex items-center gap-2.5 px-4 py-3 bg-white dark:bg-gray-900",children:[w(),r.jsxs("div",{className:"min-w-0",children:[r.jsx("p",{className:`text-sm text-gray-800 dark:text-gray-100 break-words ${t.valueClass||""}`,children:n}),s&&r.jsx("p",{className:"text-xs text-gray-400 dark:text-gray-500 truncate",children:s})]})]})]})]}):r.jsxs(r.Fragment,{children:[c&&m&&r.jsx(xe,{src:m.src,alt:m.alt,isOpen:c,setIsOpen:g}),r.jsxs("div",{className:v(x.details.row,"col-span-12 flex items-center space-x-4 p-4 rounded-xl bg-gray-100 dark:bg-gray-900",t.rowClass||"",t.cardGroupClass||"",a.blockClass||""),children:[h&&r.jsx("div",{className:`flex-shrink-0 ${t.iconClass||""}`,children:h}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("p",{className:`text-sm font-medium text-gray-500 dark:text-gray-400 ${t.labelClass||""}`,children:l}),r.jsxs("div",{className:"flex items-center mt-1",children:[w(),r.jsxs("div",{className:"ml-2",children:[r.jsx("p",{className:`mb-0 text-sm text-gray-900 dark:text-white break-words ${t.valueClass||""}`,children:n}),r.jsx("p",{className:`text-xs text-gray-500 dark:text-gray-400 ${t.labelClass||""}`,children:s})]})]})]})]})]})},$r={blue:{bg:"bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-300",border:"border border-blue-300 text-blue-700 dark:border-blue-700 dark:text-blue-300"},teal:{bg:"bg-teal-100 text-teal-800 dark:bg-teal-900/30 dark:text-teal-300",border:"border border-teal-300 text-teal-700 dark:border-teal-700 dark:text-teal-300"},purple:{bg:"bg-purple-100 text-purple-800 dark:bg-purple-900/30 dark:text-purple-300",border:"border border-purple-300 text-purple-700 dark:border-purple-700 dark:text-purple-300"},yellow:{bg:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-300",border:"border border-yellow-300 text-yellow-700 dark:border-yellow-700 dark:text-yellow-300"},green:{bg:"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300",border:"border border-green-300 text-green-700 dark:border-green-700 dark:text-green-300"},red:{bg:"bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300",border:"border border-red-300 text-red-700 dark:border-red-700 dark:text-red-300"},gray:{bg:"bg-gray-100 text-gray-800 dark:bg-gray-900/30 dark:text-gray-300",border:"border border-gray-300 text-gray-700 dark:border-gray-700 dark:text-gray-300"}},_r={contained:"bg",outline:"border !bg-transparent",soft:"bg opacity-90"},Kr=({label:a,variant:o="contained",color:e="green",className:t=""})=>{const n=$r[e]||$r.green,s=_r[o]||_r.contained,i=o==="outline"?n.border:n.bg;return r.jsx("span",{className:v(x.chip.root,"inline-flex justify-center items-center rounded-sm text-xs font-semibold px-3 py-1 min-w-[78px]",i,s,t),children:a})},Wr=({col:a,data:o,uiVariant:e="default",styleConfig:t={}})=>{var j;const[n,s]=b.useState(null),[i,l]=b.useState(!1),h=a==null?void 0:a.icon,d=a.label;let m=o[a.key];const u=a.type,c=a.variant||"outline";let g=a.defaultColor;if(u==="chip"&&((j=a.chipOptions)==null?void 0:j.length)>0){const S=a==null?void 0:a.chipOptions.find(P=>P.value==m);S&&(m=S.label,g=S.color)}const f=S=>{if(!S)return"";if(typeof S=="string")return S;if(S instanceof File)return URL.createObjectURL(S);if(typeof S=="object"){if(typeof S.preview=="string")return S.preview;if(typeof S.src=="string")return S.src;if(S.src instanceof File)return URL.createObjectURL(S.src);if(S.file instanceof File)return URL.createObjectURL(S.file)}return""},w=(S,P)=>{s({src:S,alt:P}),l(!0)},N=(S="text-sm text-gray-900 dark:text-white break-words")=>u==="chip"?r.jsx(Kr,{label:m,variant:c,color:g,className:"mt-1"}):u==="tinyEditor"?r.jsx("p",{className:`${S} ${t.valueClass||""}`,dangerouslySetInnerHTML:{__html:m}}):u==="video"?m?r.jsx("video",{controls:!0,src:m instanceof File?URL.createObjectURL(m):m,onClick:P=>P.stopPropagation(),className:"shadow-sm mt-1 w-full max-w-xs max-h-[250px] rounded-md "},m instanceof File?URL.createObjectURL(m):m):r.jsx("p",{className:"text-sm text-gray-400",children:"N/A"}):u==="audio"?m?r.jsx("audio",{controls:!0,src:m instanceof File?URL.createObjectURL(m):m,onClick:P=>P.stopPropagation(),className:"shadow-sm rounded-full mt-1 w-full max-w-xs"},m instanceof File?URL.createObjectURL(m):m):r.jsx("p",{className:"text-sm text-gray-400",children:"N/A"}):u==="multiImage"?Array.isArray(m)&&m.length>0?r.jsx("div",{className:`mt-1 grid grid-cols-3 sm:grid-cols-4 gap-2 ${t.mediaGridClass||""}`,children:m.map((P,T)=>{const I=f(P);return I?r.jsx("button",{type:"button",onClick:()=>w(I,`Gallery ${T+1}`),className:"w-full h-16 rounded-lg overflow-hidden border border-gray-200 dark:border-gray-700 hover:border-primary/50 transition-colors",children:r.jsx("img",{src:I,alt:`gallery-${T+1}`,className:"w-full h-full object-cover"})},`${I}-${T}`):null})}):r.jsx("p",{className:"text-sm text-gray-400",children:"N/A"}):r.jsx("p",{className:`${S} ${t.valueClass||""}`,children:u==="date"?r.jsx("span",{children:er(m,a.format||"DD MMM YYYY")}):r.jsx("span",{children:m||"N/A"})});return e==="card"?r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(x.details.row,a.blockClass||"col-span-6","group bg-white dark:bg-gray-800 rounded-xl border border-gray-100 dark:border-gray-700/60 shadow-sm hover:shadow-md hover:-translate-y-0.5 transition-all duration-200 p-4 flex flex-col gap-2.5",t.rowClass||""),children:[h&&r.jsx("div",{className:`w-8 h-8 rounded-lg bg-primary/10 dark:bg-primary/20 flex items-center justify-center text-primary flex-shrink-0 [&>svg]:w-4 [&>svg]:h-4 ${t.iconClass||""}`,children:h}),r.jsx("p",{className:`text-xs font-semibold uppercase tracking-wider text-gray-400 dark:text-gray-500 leading-none ${t.labelClass||""}`,children:d}),r.jsx("div",{className:"mt-auto",children:N("text-sm font-semibold text-gray-800 dark:text-gray-100 break-words leading-snug")})]}),i&&n&&r.jsx(xe,{src:n.src,alt:n.alt,isOpen:i,setIsOpen:l})]}):e==="split"?r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(x.details.row,"flex items-stretch min-h-[52px]",t.rowClass||"",a.blockClass||""),children:[r.jsxs("div",{className:"w-[42%] flex-shrink-0 flex items-center gap-2 px-4 py-3 bg-gray-50 dark:bg-gray-800/80 border-r border-gray-200 dark:border-gray-700",children:[h&&r.jsx("span",{className:`text-primary/60 dark:text-primary/50 flex-shrink-0 [&>svg]:w-3.5 [&>svg]:h-3.5 ${t.iconClass||""}`,children:h}),r.jsx("p",{className:`text-xs font-semibold uppercase tracking-wide text-gray-500 dark:text-gray-400 leading-tight ${t.labelClass||""}`,children:d})]}),r.jsx("div",{className:"flex-1 flex items-center px-4 py-3 bg-white dark:bg-gray-900",children:N("text-sm text-gray-800 dark:text-gray-100 break-words")})]}),i&&n&&r.jsx(xe,{src:n.src,alt:n.alt,isOpen:i,setIsOpen:l})]}):r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(x.details.row,"col-span-12 flex items-center space-x-4 p-4 rounded-xl bg-gray-100 dark:bg-gray-900",t.rowClass||"",a.blockClass||""),children:[h&&r.jsx("div",{className:`flex-shrink-0 ${t.iconClass||""}`,children:h}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("p",{className:`text-sm font-medium text-gray-500 dark:text-gray-400 ${t.labelClass||""}`,children:d}),N("mt-1 text-sm text-gray-900 dark:text-white break-words")]})]}),i&&n&&r.jsx(xe,{src:n.src,alt:n.alt,isOpen:i,setIsOpen:l})]})},It=({value:a=!0,onChange:o,text:e,options:t=[],label:n,required:s,name:i="",disabled:l=!1,parentClass:h="",errorMessage:d=""})=>{const m=t.length>0?t:[{label:"Active",value:!0},{label:"Inactive",value:!1}];return r.jsx(r.Fragment,{children:r.jsxs("div",{className:v(x.field.wrapper,h||"col-span-12"),children:[r.jsx(he,{label:n,required:s}),r.jsxs("div",{className:`flex items-center justify-between h-10 gap-4 bg-gray-100 dark:bg-gray-700 px-3 rounded-md border border-gray-100 dark:border-gray-600
|
|
127
|
+
${d?"border-red-500":""}`,children:[e&&r.jsx("p",{className:"text-xs text-gray-600 dark:text-gray-400 flex-shrink overflow-hidden text-ellipsis whitespace-nowrap max-w-[200px]",children:e}),r.jsx("div",{className:"flex items-center gap-6",children:m.map((u,c)=>r.jsxs("label",{className:"flex items-center gap-2 cursor-pointer select-none",children:[r.jsx("input",{type:"radio",name:"switch-field",required:s&&c===0,value:String(u.value),disabled:l,id:`field-${i}`,checked:a===u.value,onChange:()=>o==null?void 0:o(u.value),className:v(x.field.input,"w-4 h-4 border-gray-300 cursor-pointer")}),r.jsx("span",{className:"text-sm text-gray-700 dark:text-white",children:u.label})]},c))})]}),d&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:d})]},i)})},Rr=ue,Ut=({label:a="",value:o=null,onChange:e,required:t=!1,accept:n="video/*",id:s,dragDrop:i=!1,name:l="",parentClass:h="",maxSize:d=0,errorMessage:m=""})=>{const[u,c]=b.useState(null),[g,f]=b.useState(!1),w=b.useRef(null),N=d*1024*1024;b.useEffect(()=>{if(!o){j(),c(null);return}if(o instanceof File){const y=URL.createObjectURL(o);return c({file:o,preview:y}),()=>{URL.revokeObjectURL(y)}}else typeof o=="string"?c({preview:o}):o!=null&&o.preview&&c(o)},[o]);const j=()=>{u!=null&&u.preview&&u.preview.startsWith("blob:")&&URL.revokeObjectURL(u.preview)},S=y=>{if(!y||y.length===0)return;const A=y[0];if(N&&A.size>N){ke.enqueueSnackbar(`File is too large. Maximum allowed size is ${d} MB`,{variant:"warning"});return}const M=URL.createObjectURL(A);j(),c({file:A,preview:M}),e==null||e(A)},P=y=>{y&&y.stopPropagation(),j(),c(null),e==null||e(null),w.current&&(w.current.value="")},T=y=>{i&&(y.preventDefault(),f(!0))},I=y=>{i&&(y.preventDefault(),f(!1))},L=y=>{var A,M,z,H;i&&(y.preventDefault(),f(!1),(H=(z=(M=(A=y.dataTransfer)==null?void 0:A.files)==null?void 0:M[0])==null?void 0:z.type)!=null&&H.includes("video/")&&S(y.dataTransfer.files))},U=()=>{var y;(y=w.current)==null||y.click()};return r.jsxs("div",{className:v(x.mediaPicker.video,x.field.wrapper,h||"col-span-12"),children:[r.jsx(he,{label:a,required:t}),r.jsxs("div",{className:v(x.mediaPicker.dropzone,"relative rounded-lg p-2 transition-all",g?"border-2 border-dashed border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800",m?"border-red-500":""),onDragOver:T,onDragLeave:I,onDrop:L,id:`field-${l}`,children:[r.jsx("input",{ref:w,id:s,type:"file",accept:n,onChange:y=>S(y.target.files),required:t&&!u,className:"absolute opacity-0 pointer-events-none h-[10px]"}),r.jsx("div",{className:`flex items-center space-x-4 transition-all ${g?"opacity-50":""}`,children:u?r.jsxs("div",{className:"flex items-center space-x-4",children:[r.jsxs("div",{className:"relative",children:[!t&&r.jsx("button",{type:"button",onClick:P,className:"absolute -top-2 -right-2 bg-red-500 text-white rounded-full p-1 shadow hover:bg-red-600 z-10",children:r.jsx(me.Icon,{icon:"mdi:close",className:"w-3 h-3"})}),r.jsx("video",{src:u.preview,controls:!0,controlsList:"nodownload",className:"w-[260px] h-[150px] rounded-md object-cover"},u.preview)]}),r.jsx(Rr,{type:"button",onClick:U,children:"Change Video File"})]}):r.jsxs("div",{className:"flex items-center justify-center space-x-4",children:[r.jsx("div",{className:"rounded-full bg-gray-100 dark:bg-gray-700 h-20 w-20 flex items-center justify-center",children:r.jsx(me.Icon,{icon:"mdi:video",className:"text-gray-400 w-10 h-10"})}),r.jsxs("div",{className:"flex flex-col items-center space-y-1",children:[r.jsx(Rr,{type:"button",onClick:U,variant:"outlined",children:"Choose Video File"}),i&&r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:"or drag and drop your video here"})]})]})}),i&&g&&!u&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none bg-blue-500/10 rounded-lg",children:r.jsx("span",{className:"text-blue-600 dark:text-blue-400 font-semibold text-lg bg-white dark:bg-gray-800 px-4 py-2 rounded-lg shadow-lg",children:"Drop video here"})})]}),m&&r.jsx("span",{className:v(x.field.error,"text-red-500 text-xs mt-1"),children:m})]},l)},Hr=({field:a,formData:o,handleChange:e,errorMessage:t})=>{const{key:n,label:s,type:i,options:l,placeholder:h,rows:d,inputClass:m,search:u,accept:c,text:g,required:f=!1,minLength:w,dragDrop:N,parentClass:j,countriesList:S,defaultCountry:P,multiple:T,dropdownMaxHeight:I,editorKey:L,fontFamily:U,disabled:y,negativeNumberAllow:A,defaultValue:M,renderCondition:z,pattern:H,renderType:V,cropImage:ee,aspectRatio:ae,dependencyKey:D,mask:C,maskApplyOnValue:F,maxSize:Y}=a;let $=o==null?void 0:o[n];$==null&&($="");const K=h||(i==="select"?`Select ${s}`:`Enter ${s}`),ce="w-full px-3 py-2 rounded-md border border-gray-300 dark:border-gray-600 text-sm focus:outline-none focus:ring-1 focus:ring-blue-200 bg-white text-black dark:bg-gray-700 dark:text-white";if(z&&typeof z=="function"&&!z(o))return null;if(V&&V=="details")switch(i){case"group":return r.jsx(Gr,{col:a,data:o});case"cardGroup":return r.jsx(Yr,{col:a,data:o});default:return r.jsx(Wr,{col:a,data:o})}switch(i){case"select":return r.jsx(Qr,{options:l||[],value:$,formData:o,dependencyKey:D,onChange:E=>e(n,E),placeholder:K,className:m||"",search:u,required:f,defaultValue:M,label:s||"",name:n,countriesList:S,disabled:y,parentClass:j||"",multiple:T,dropdownMaxHeight:I,errorMessage:t});case"checkbox":return r.jsx(r.Fragment,{children:r.jsx(Et,{name:n,label:s||"",options:l||[],value:$,onChange:E=>e(n,E),required:f,parentClass:j||"",className:m||"",multiSelect:T,disabled:y,errorMessage:t})});case"radio":return r.jsx(It,{value:$,onChange:E=>e(n,E),text:g,options:l||[],label:s||"",required:f,name:n,disabled:y,parentClass:j||"",errorMessage:t});case"switch":return r.jsx(Dr,{value:!!$,onChange:E=>e(n,E),label:s||"",required:f,name:n,disabled:y,className:"",parentClass:j||"",errorMessage:t});case"phone":return r.jsx(et,{value:$,onChange:E=>e(n,E),countriesList:S,defaultCountry:P,required:f,placeholder:K,search:u,label:s||"",name:n,disabled:y,errorMessage:t,parentClass:j||""});case"textarea":return r.jsx(Pr,{value:$,onChange:E=>e(n,E.target.value),placeholder:K,rows:d||3,className:`${ce} ${m||""}`,required:f,name:n,label:s||"",disabled:y,parentClass:j||"",errorMessage:t});case"image":case"multiImage":return T||i==="multiImage"?r.jsx(zt,{value:Array.isArray($)?$:[],onChange:E=>e(n,E),required:f,accept:c||"image/*",aspect:ae,id:`file-${n}`,dragDrop:N,cropImage:ee,label:s||"",name:n,parentClass:j||"",maxImages:a.maxImages,errorMessage:t}):r.jsx(Pt,{value:$,onChange:E=>e(n,E),required:f,accept:c||"image/*",aspect:ae,id:`file-${n}`,dragDrop:N,cropImage:ee,label:s||"",name:n,parentClass:j||"",errorMessage:t});case"audio":return r.jsx(At,{value:$,onChange:E=>e(n,E),required:f,accept:c||"audio/*",id:`file-${n}`,dragDrop:N,label:s||"",name:n,parentClass:j||"",maxSize:Y,errorMessage:t});case"video":return r.jsx(Ut,{value:$,onChange:E=>e(n,E),required:f,accept:c||"video/*",id:`file-${n}`,dragDrop:N,label:s||"",name:n,maxSize:Y,parentClass:j||"",errorMessage:t});case"tinyEditor":return r.jsx(Lt,{value:$,name:n,onChange:E=>e(n,E),required:f,placeholder:K,label:s||"",parentClass:j||"",fontFamily:U,editorKey:L||"",disabled:y,errorMessage:t});default:return r.jsx(Br,{field:a,type:i||"text",defaultValue:M,value:$,onChange:E=>e(n,E),placeholder:K,className:`${ce} ${m||""}`,required:f,name:n,minLength:w,label:s||"",negativeNumberAllow:A,parentClass:j||"",disabled:y,pattern:H,mask:C,errorMessage:t,maskApplyOnValue:F})}},Ot=({isOpen:a,onClose:o,config:e,onApply:t})=>{var m;const[n,s]=b.useState({}),i=(u,c)=>{s(g=>({...g,[u]:c}))},l=()=>{t(n),o()},h=()=>{s({}),t({}),o()},d=e==null?void 0:e.component;return r.jsxs(r.Fragment,{children:[r.jsx("div",{className:v(x.filterDrawer.overlay,"fixed inset-0 bg-black/50 z-40 transition-opacity duration-300",a?"opacity-100 pointer-events-auto":"opacity-0 pointer-events-none")}),r.jsxs("div",{className:v(x.filterDrawer.panel,"fixed top-0 right-0 h-full w-[28rem] bg-white dark:bg-gray-900 shadow-2xl z-50 flex flex-col border-l border-gray-200 dark:border-gray-700 transform transition-transform duration-300 ease-in-out",a?"translate-x-0":"translate-x-full"),children:[r.jsxs("div",{className:v(x.filterDrawer.header,"flex items-center justify-between px-4 py-3 border-b border-gray-200 dark:border-gray-700"),children:[r.jsx("h2",{className:"text-lg font-semibold text-gray-900 dark:text-white",children:"Filters"}),r.jsx("button",{onClick:o,className:"p-2 hover:bg-gray-100 dark:hover:bg-gray-800 rounded-md transition",children:r.jsx(te.X,{className:"w-5 h-5 text-gray-500 dark:text-gray-400"})})]}),a&&r.jsx("div",{className:v(x.filterDrawer.body,"flex-1 overflow-y-auto px-4 py-3"),children:d?r.jsx(d,{filters:n,onFilterChange:i}):r.jsx("div",{className:"space-y-4",children:(m=e==null?void 0:e.fields)==null?void 0:m.map(u=>r.jsx(Hr,{field:u,formData:n,handleChange:i},u.key))})}),r.jsxs("div",{className:v(x.filterDrawer.footer,"flex gap-2 px-4 py-3 border-t border-gray-200 dark:border-gray-700"),children:[r.jsx(ue,{onClick:l,variant:"contained",color:"primary",fullWidth:!0,children:"Apply Filters"}),r.jsx(ue,{onClick:h,variant:"contained",className:"min-w-[150px]",children:"Reset"})]})]})]})},Tt=({rows:a=5,columns:o=5})=>r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"w-full mb-6 inline-flex justify-end items-center",children:r.jsx("div",{className:"h-8 w-80 bg-gray-300 dark:bg-gray-700 rounded animate-pulse"})}),r.jsx("div",{className:"overflow-hidden rounded-md border border-gray-200 dark:border-gray-800",children:r.jsxs("table",{className:v(x.tableSkeleton.root,x.tableSkeleton.table,"w-full border-collapse"),children:[r.jsx("thead",{children:r.jsx("tr",{className:"bg-gray-50 dark:bg-gray-900",children:Array.from({length:o}).map((e,t)=>r.jsx("th",{className:"px-4 py-3",children:r.jsx("div",{className:"h-6 w-24 bg-gray-300 dark:bg-gray-700 rounded animate-pulse inline-flex justify-center items-center"})},t))})}),r.jsx("tbody",{children:Array.from({length:a}).map((e,t)=>r.jsx("tr",{className:"border-t border-gray-200 dark:border-gray-800",children:Array.from({length:o}).map((n,s)=>r.jsx("td",{className:"px-4 py-6",children:r.jsx("div",{className:"h-6 w-full bg-gray-300 dark:bg-gray-700 rounded animate-pulse"})},s))},t))})]})})]}),Bt=({options:a=[],value:o="",onChange:e,clearLabel:t=""})=>{const[n,s]=b.useState(!1),i=b.useRef(null),l=!!o;b.useEffect(()=>{const d=m=>{i.current&&!i.current.contains(m.target)&&s(!1)};return document.addEventListener("click",d),()=>document.removeEventListener("click",d)},[]);const h=d=>{const m=a.find(u=>u.value===d);e(d,m||null),s(!1)};return a!=null&&a.length?r.jsxs("div",{className:v(x.sortDropdown.root,"relative"),ref:i,children:[r.jsxs("button",{type:"button",onClick:()=>s(d=>!d),className:v(x.sortDropdown.trigger,"relative inline-flex items-center justify-center h-[36px] w-[36px] rounded-md border border-gray-300 dark:border-gray-600 bg-gray-50 dark:bg-gray-700 text-gray-700 dark:text-gray-200 hover:bg-gray-100 dark:hover:bg-gray-600 transition"),"aria-label":"Open sort options",children:[r.jsx(te.ArrowUpDown,{className:"w-4 h-4"}),l&&r.jsx("span",{className:"absolute top-1 right-1 w-2 h-2 bg-red-500 rounded-full"})]}),n&&r.jsxs("div",{className:v(x.sortDropdown.menu,"absolute right-0 mt-2 z-20 min-w-[220px] max-h-[260px] overflow-auto rounded-md border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800 shadow-lg"),children:[!!(t!=null&&t.trim())&&r.jsx("button",{type:"button",onClick:()=>h(""),className:v(x.sortDropdown.item,"w-full text-left px-3 py-2 text-sm transition hover:bg-gray-100 dark:hover:bg-gray-700",o?"text-gray-700 dark:text-gray-200":"bg-gray-100 dark:bg-gray-700 text-gray-900 dark:text-white"),children:t}),a.map(d=>r.jsx("button",{type:"button",onClick:()=>h(d.value),className:v(x.sortDropdown.item,"w-full text-left px-3 py-2 text-sm transition hover:bg-gray-100 dark:hover:bg-gray-700",o===d.value?"bg-gray-100 dark:bg-gray-700 text-gray-900 dark:text-white":"text-gray-700 dark:text-gray-200"),children:d.label},d.value))]})]}):null},Qe={enabled:!1,useServerSideSorting:!1,options:[],fields:[],defaultValue:"",autoGenerate:!0,clearLabel:"",onChange:null},Gt=a=>a===!0?{...Qe,enabled:!0}:!a||typeof a!="object"?Qe:{...Qe,...a,enabled:a.enabled??!0,autoGenerate:a.autoGenerate??!0},Yt=(a=[])=>a.filter(o=>{const e=["menu_actions","index","audio","avatar"];return o.type&&e.includes(o.type)?!1:!!(o.sortKey||(o.type==="group"?o.titleKey:o.key))}),Kt=a=>{if(a.sortType)return a.sortType;if(a.type==="date")return"date";if(a.type==="number")return"number";const o=String(a.sortKey||(a.type==="group"?a.titleKey:a.key)||"").toLowerCase();return["phone","mobile","contact","tel","whatsapp"].some(t=>o.includes(t))?"phone":Array.isArray(a.chipOptions)&&a.chipOptions.length>0&&a.chipOptions.every(n=>typeof n.value=="boolean")?"boolean":"string"},Mr=(a=[])=>a.flatMap(o=>{const e=o.sortKey||(o.type==="group"?o.titleKey:o.key),t=o.sortLabel||o.title||e,n=Kt(o);return e?n==="number"?[{value:`${e}_asc`,label:`${t} (Low-High)`,key:e,order:"asc",type:n},{value:`${e}_desc`,label:`${t} (High-Low)`,key:e,order:"desc",type:n}]:n==="phone"?[{value:`${e}_asc`,label:`${t} (0-9)`,key:e,order:"asc",type:n},{value:`${e}_desc`,label:`${t} (9-0)`,key:e,order:"desc",type:n}]:n==="date"?[{value:`${e}_desc`,label:`${t} (Newest First)`,key:e,order:"desc",type:n},{value:`${e}_asc`,label:`${t} (Oldest First)`,key:e,order:"asc",type:n}]:n==="boolean"?[{value:`${e}_desc`,label:`${t} (True First)`,key:e,order:"desc",type:n},{value:`${e}_asc`,label:`${t} (False First)`,key:e,order:"asc",type:n}]:[{value:`${e}_asc`,label:`${t} (A-Z)`,key:e,order:"asc",type:n},{value:`${e}_desc`,label:`${t} (Z-A)`,key:e,order:"desc",type:n}]:[]}),Wt=(a,o=[])=>{if(Array.isArray(a.options)&&a.options.length>0)return a.options.map(n=>({...n,type:n.type||"string",order:n.order==="desc"?"desc":"asc"}));const t=Array.isArray(a.fields)?a.fields:[];if(t.length>0){const n=t.map(s=>{const i=typeof s=="string"?s:s.key,l=o.find(h=>h.key===i||h.sortKey===i||h.type==="group"&&h.titleKey===i);return l?{...l,sortKey:typeof s=="object"&&s.key?s.key:l.sortKey,sortType:typeof s=="object"&&s.type?s.type:l.sortType,sortLabel:typeof s=="object"&&s.label?s.label:l.sortLabel}:null}).filter(s=>s!==null);return Mr(n)}return a.autoGenerate?Mr(o):[]},Ht=(a=[],o="",e,t=[])=>{if(!(e!=null&&e.enabled)||!o||e!=null&&e.useServerSideSorting)return a;const n=t==null?void 0:t.find(d=>d.value===o);if(!(n!=null&&n.key))return a;const s=n.order==="desc"?"desc":"asc",i=n.key,l=n.type||"string",h=d=>String(d??"").replace(/[^\d]/g,"").trim();return[...a].sort((d,m)=>{const u=d==null?void 0:d[i],c=m==null?void 0:m[i];if(u==null&&c==null)return 0;if(u==null)return s==="asc"?1:-1;if(c==null)return s==="asc"?-1:1;let g=0;return l==="number"?g=Number(u)-Number(c):l==="phone"?g=h(u).localeCompare(h(c),void 0,{numeric:!0}):l==="date"?g=new Date(u).getTime()-new Date(c).getTime():l==="boolean"?g=+!!u-+!!c:g=String(u).localeCompare(String(c)),s==="asc"?g:-g})},Vt=({config:a,setShowAdd:o,title:e,buttonText:t,description:n,showAddButton:s})=>{var ur;const{data:i=[],table_head:l=[],loading:h=!1,search:d={enabled:!1,placeholder:"Search...",useServerSideSearch:!1},filter:m={enabled:!1,useServerSideFilters:!1},sort:u={enabled:!1},pagination:c={enabled:!1,rows_per_page:10,useServerSidePagination:!1},exportCSV:g={enabled:!1,fileName:"",fields:[]},emptyMessage:f="No data available",onMenuAction:w,setServerSidePaginationData:N=()=>{},onFilterApply:j,filterConfig:S=null,rowClick:P=null}=a,[T,I]=b.useState(""),[L,U]=b.useState(null),[y,A]=b.useState([]),[M,z]=b.useState({top:0,left:0}),[H,V]=b.useState(!1),[ee,ae]=b.useState({}),D=b.useMemo(()=>Gt(u),[u]),C=b.useMemo(()=>Yt(l),[l]),F=b.useMemo(()=>Wt(D,C),[D,C]),[Y,$]=b.useState((D==null?void 0:D.defaultValue)||""),[K,ce]=b.useState(null),[E,be]=b.useState(!1),we=b.useMemo(()=>!d.enabled||!T.trim()||d.useServerSideSearch?i:Jr(i,T,d.searchKeys||[]),[i,T,d]),_=b.useMemo(()=>Ht(we,Y,D,F),[we,Y,D,F]),[B,R]=b.useState(1),[O,q]=b.useState((c==null?void 0:c.rows_per_page)||50),[J,Z]=b.useState(we.length||0),oe=c!=null&&c.useServerSidePagination?c.total_pages:Math.ceil(we.length/O),$e=b.useMemo(()=>{if(c.useServerSidePagination)return _;const p=(B-1)*O;return _.slice(p,p+O)},[_,B,O,c.useServerSidePagination]),_e=b.useRef(null),Ce=b.useRef(null),De=b.useRef({}),Re=b.useRef(null),Pe=typeof document<"u"?((ur=Ce.current)==null?void 0:ur.closest(".racm-root"))||document.body:null,Ue=p=>{I(p),R(1),d.useServerSideSearch&&(Re.current&&clearTimeout(Re.current),Re.current=setTimeout(async()=>{try{await N(k=>({...k,search:p,current_page:1}))}catch(k){console.error("Search error:",k)}},800))},Oe=(p,k=null)=>{$(p),R(1);const W={value:p,option:k,key:(k==null?void 0:k.key)||"",order:(k==null?void 0:k.order)||"",type:(k==null?void 0:k.type)||""};typeof(D==null?void 0:D.onChange)=="function"&&D.onChange(W)},Te=(p,k,W)=>{W.stopPropagation(),U(null),w==null||w(p.type,k)},Be=(p,k,W)=>{k.stopPropagation(),A(W);const Q=k.currentTarget;De.current[p]=Q;const re=Q.getBoundingClientRect(),le=192,ge=W.length*40,de=window.innerWidth,fe=window.innerHeight,ye=de-re.right<le?re.left-le+re.width:re.left,Fe=fe-re.bottom<ge&&re.top>ge?re.top-ge-2:re.bottom+2;z({top:Math.max(8,Math.min(Fe,fe-ge-8)),left:Math.max(8,Math.min(ye,de-le-8))}),U(L===p?null:p)},Ge=p=>(B-1)*O+p+1,Le=p=>{let k=p;k&&k.src instanceof File&&(k={...k,src:URL.createObjectURL(k.src)}),ce(k),be(!0)},Ye=p=>{if(!p)return"";if(typeof p=="string")return p;if(p instanceof File)return URL.createObjectURL(p);if(typeof p=="object"){if(typeof p.preview=="string")return p.preview;if(typeof p.src=="string")return p.src;if(p.src instanceof File)return URL.createObjectURL(p.src);if(p.file instanceof File)return URL.createObjectURL(p.file)}return""},Ke=(p,k)=>{const W=Array.isArray(p)?p:[];if(W.length===0)return r.jsx("span",{className:k.className||"",children:"N/A"});const Q=k.maxPreview||3,re=W.slice(0,Q),le=W.length-re.length;return r.jsxs("div",{className:"flex items-center",children:[r.jsx("div",{className:"flex -space-x-2",children:re.map((ge,de)=>{const fe=Ye(ge);return fe?r.jsx("button",{type:"button",onClick:Ae=>{Ae.stopPropagation(),Le({src:fe,alt:`Gallery ${de+1}`})},className:"w-8 h-8 rounded-full border-2 border-white dark:border-gray-800 overflow-hidden",children:r.jsx("img",{src:fe,alt:`gallery-${de+1}`,className:"w-full h-full object-cover"})},`${fe}-${de}`):null})}),le>0&&r.jsxs("span",{className:"ml-2 text-xs font-medium text-gray-600 dark:text-gray-300",children:["+",le]})]})},Ee=(p,k,W,Q=null,re=null)=>r.jsx(r.Fragment,{children:p?r.jsx("img",{src:p instanceof File?URL.createObjectURL(p):p,alt:k||"Avatar",onClick:le=>{le.stopPropagation(),le.preventDefault(),Le({src:p,alt:k})},className:`w-10 h-10 cursor-pointer shrink-0 rounded-full object-cover border border-gray-200 dark:border-gray-700 ${W||""}`}):r.jsx(r.Fragment,{children:Q?typeof Q=="function"?Q(re):Q:r.jsx("div",{className:`w-10 h-10 flex items-center shrink-0 justify-center rounded-full border border-gray-300 dark:border-gray-700 bg-gray-200 dark:bg-gray-600 ${W||""}`,children:r.jsx(te.User,{className:"w-6 h-6 text-gray-400 dark:text-gray-400"})})})}),We=(p,k)=>r.jsx(r.Fragment,{children:p?r.jsx("audio",{controls:!0,src:p instanceof File?URL.createObjectURL(p):p,onClick:W=>{W.stopPropagation()},className:`w-64 cursor-pointer ${k||""}`},p instanceof File?URL.createObjectURL(p):p):r.jsx(r.Fragment,{children:r.jsx("div",{className:`w-12 h-12 flex items-center shrink-0 justify-center rounded-full border border-gray-300 dark:border-gray-700 bg-gray-200 dark:bg-gray-600 ${k||""}`,children:r.jsx(te.Music,{className:"w-6 h-6 text-gray-400 dark:text-gray-400"})})})}),G=(p,k)=>r.jsxs("div",{className:`flex items-center space-x-4 ${k.className||""}`,children:[k.imageKey?Ee(p[k.imageKey],p[k.titleKey],"group-avatar",k.fallback_icon,p):"",r.jsxs("div",{children:[r.jsx("p",{className:"font-medium text-gray-900 dark:text-white group-title",children:p[k.titleKey]||""}),r.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400 group-sub-title",children:p[k.subtitleKey]||""})]})]}),X=(p,k)=>{var le;let W=String(p);const Q=k.variant||"contained";let re=k.defaultColor;if(((le=k==null?void 0:k.chipOptions)==null?void 0:le.length)>0){const ge=k==null?void 0:k.chipOptions.find(de=>de.value==p);ge&&(W=ge.label,re=ge.color)}return r.jsx(Kr,{label:W,variant:Q,color:re,className:k.className||""})},ne=(p,k,W)=>{const Q=k[p.key];return p.type==="menu_actions"?r.jsx("div",{className:`text-center ${p.className||""}`,children:r.jsx("button",{ref:re=>{De.current[k.id||k._id]=re},onClick:re=>Be(k.id||k._id,re,p.menuList),className:v(x.table.actionButton,"p-2 bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 rounded-full transition text-gray-700 dark:text-gray-300"),children:r.jsx(te.EllipsisVertical,{className:"h-4 w-4"})})}):p.type==="index"?r.jsx("span",{className:p.className||"",children:Ge(W)}):p.type==="group"?G(k,p):p.type==="chip"?r.jsx(r.Fragment,{children:X(Q,p)}):p.type==="date"?r.jsx("span",{className:p.className||"",children:er(Q,p.format||"DD MMM YYYY")}):p.type==="avatar"?r.jsx(r.Fragment,{children:r.jsx("div",{className:"min-w-[40px]",children:Ee(Q,p.alt,p.className,p.fallback_icon,k)})}):p.type==="audio"?r.jsx(r.Fragment,{children:We(Q,p.className)}):p.type==="multiImage"?r.jsx(r.Fragment,{children:Ke(Q,p)}):r.jsx("span",{className:p.className||"",children:Q||"N/A"})},je=p=>{if(typeof P=="function")return P(p);if(P)return w==null?void 0:w("view",p)},ie=(p,k)=>{if(p.onClickDetails)return w==null?void 0:w("view",k);if(typeof p.handleClick=="function")return p.handleClick(k)},pr=()=>P||typeof P=="function",mr=p=>p.onClickDetails||typeof p.handleClick=="function",Vr=()=>{var Ae;if(!(i!=null&&i.length)||!((Ae=g==null?void 0:g.fields)!=null&&Ae.length))return;const p=g.fields.map(ye=>ye.label),k=$e.map(ye=>g.fields.map(hr=>{const Fe=ye==null?void 0:ye[hr.key];return`"${Fe??""}"`})),W=[p.join(","),...k.map(ye=>ye.join(","))].join(`
|
|
128
|
+
`),re=`export-${er(new Date,"YYYY-MM-DD_HH-mm-ss")}.csv`,le=g.fileName||re,ge=new Blob([W],{type:"text/csv;charset=utf-8;"}),de=document.createElement("a"),fe=URL.createObjectURL(ge);de.href=fe,de.download=le,document.body.appendChild(de),de.click(),document.body.removeChild(de),URL.revokeObjectURL(fe)};return b.useEffect(()=>{const p=()=>{L&&U(null)};return window.addEventListener("scroll",p,!0),()=>{window.removeEventListener("scroll",p,!0)}},[L]),b.useEffect(()=>{const p=k=>{_e.current&&!_e.current.contains(k.target)&&U(null)};return document.addEventListener("click",p),()=>document.removeEventListener("click",p)},[]),b.useEffect(()=>{c!=null&&c.rows_per_page&&(c!=null&&c.useServerSidePagination)&&q((c==null?void 0:c.rows_per_page)||50),c.current_page&&R(c.current_page)},[c.rows_per_page,c==null?void 0:c.useServerSidePagination,c.current_page]),b.useEffect(()=>{Z(c!=null&&c.useServerSidePagination?c.total_records:_.length),_.length<=O*(B-1)&&!(c!=null&&c.useServerSidePagination)&&R(p=>p-1||1)},[_.length,c.total_records,c==null?void 0:c.useServerSidePagination]),b.useEffect(()=>{if(!(D!=null&&D.enabled)){$("");return}if(F.some(k=>k.value===D.defaultValue)){$(D.defaultValue);return}$("")},[D,F]),b.useEffect(()=>{if(!(D!=null&&D.enabled)||!(D!=null&&D.useServerSideSorting))return;const p=F==null?void 0:F.find(k=>k.value===Y);N(k=>({...k,current_page:1,sort_by:(p==null?void 0:p.key)||"",sort_order:(p==null?void 0:p.order)||""}))},[Y,D==null?void 0:D.enabled,D==null?void 0:D.useServerSideSorting,F,N]),r.jsxs("div",{ref:Ce,children:[h?r.jsx(Tt,{rows:6,columns:6}):r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:v(x.table.toolbar,"flex flex-col lg:!flex-row lg:!justify-between gap-4 mb-3"),children:[r.jsxs("div",{className:"table-heading",children:[r.jsx("h1",{children:e}),r.jsx("p",{children:n})]}),r.jsxs("div",{className:"flex flex-col justify-end items-stretch lg:!items-end gap-2 w-full lg:!w-auto",children:[s&&r.jsxs(ue,{onClick:()=>o(!0),variant:"contained",color:"primary",children:[r.jsx(te.Plus,{className:"w-4 h-4 mr-2"}),t||"Add New"]}),r.jsxs("div",{className:"flex flex-col sm:!flex-row sm:!flex-wrap justify-end items-stretch sm:!items-center gap-2 w-full",children:[d.enabled&&r.jsx("div",{className:"w-full sm:!w-auto",children:r.jsxs("div",{className:v(x.table.searchField,"table-search-field"),children:[r.jsx(te.Search,{className:"search-icon"}),r.jsx("input",{type:"text",placeholder:d.placeholder||"Search...",value:T,onChange:p=>Ue(p.target.value),className:x.table.searchInput})]})}),D!=null&&D.enabled&&(F==null?void 0:F.length)>0||S&&m.enabled||g&&g.enabled?r.jsxs("div",{className:"flex items-center justify-end gap-2 w-full sm:!w-auto",children:[S&&m.enabled&&r.jsxs("div",{className:"filter-button-wrapper",children:[r.jsxs(ue,{onClick:()=>V(!0),variant:"contained",className:"w-full sm:!w-auto",children:[r.jsx(te.Filter,{className:"w-4 h-4 mr-2"}),"Filters"]}),Object.keys(ee).length>0&&r.jsx("span",{className:"red-dot"})]}),g&&g.enabled&&r.jsx("div",{className:"filter-button-wrapper",children:r.jsxs(ue,{onClick:()=>Vr(),variant:"contained",className:"w-full sm:!w-auto",children:[r.jsx(te.Download,{className:"w-4 h-4 mr-2"}),"Export CSV"]})}),(D==null?void 0:D.enabled)&&(F==null?void 0:F.length)>0&&r.jsx(Bt,{options:F,value:Y,onChange:Oe,clearLabel:D==null?void 0:D.clearLabel})]}):null]})]})]}),r.jsxs("div",{className:v(x.table.root,x.table.container,"table-container"),children:[r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:x.table.element,children:[r.jsx("thead",{className:x.table.head,children:r.jsx("tr",{className:x.table.headRow,children:l.map(p=>r.jsx("th",{className:v(x.table.headCell,"table-head-data",p.headClass||""),children:p.title},p.key))})}),r.jsx("tbody",{className:x.table.body,children:$e.length===0?r.jsx("tr",{children:r.jsx("td",{colSpan:l.length,className:v(x.table.noData,"no-data-message"),children:f})}):$e.map((p,k)=>r.jsx("tr",{className:v(x.table.row,"table-row",pr()?"cursor-pointer":""),onClick:()=>{pr()&&je(p)},children:l.map(W=>r.jsx("td",{className:v(x.table.cell,"table-data",W.type=="audio"?"":"max-w-[300px]","truncate",mr(W)?"cursor-pointer":""),title:String(p[W.key]??""),onClick:Q=>{mr(W)&&(Q.stopPropagation(),Q.preventDefault(),ie(W,p))},children:W.render?W.render(p,k):ne(W,p,k)},W.key))},p.id||p._id||k))})]})}),(c==null?void 0:c.enabled)&&_.length>0&&r.jsxs("div",{className:v(x.table.pagination,"pagination-wrapper"),children:[r.jsxs("span",{children:["Showing ",(B-1)*O+1," to"," ",Math.min(B*O,J)," of"," ",J," results"]}),r.jsxs("div",{className:"flex items-center gap-4",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{children:"Rows per page:"}),r.jsx("select",{value:O,onChange:p=>{const k=Number(p.target.value);q(k),R(1),c.useServerSidePagination&&N(W=>({...W,current_page:1,rows_per_page:k}))},className:"rows-number-select",children:[10,25,50,100].map(p=>r.jsx("option",{value:p,children:p},p))})]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("button",{onClick:()=>{if(B>1){const p=B-1;R(p),c.useServerSidePagination&&N(k=>({...k,current_page:p}))}},disabled:B===1,className:"arrow-icons",children:r.jsx(te.ChevronLeft,{className:"h-4 w-4"})}),r.jsxs("span",{children:["Page ",B," of ",oe]}),r.jsx("button",{onClick:()=>{if(B<oe){const p=B+1;R(p),c.useServerSidePagination&&N(k=>({...k,current_page:p}))}},disabled:B===oe,className:"arrow-icons",children:r.jsx(te.ChevronRight,{className:"h-4 w-4"})})]})]})]})]})]}),L&&Pe&&dr.createPortal(r.jsx("div",{ref:_e,style:{position:"fixed",top:`${M.top}px`,left:`${M.left}px`,zIndex:9999},className:v(x.table.menu,"w-48 bg-white dark:bg-gray-700 rounded-md shadow-lg border border-gray-200 dark:border-gray-600"),children:y.map((p,k)=>r.jsxs("button",{onClick:W=>Te(p,i.find(Q=>Q.id===L||Q._id==L),W),className:v(x.table.menuItem,"w-full flex items-center gap-2 px-4 py-2 text-sm text-left hover:bg-gray-100 dark:hover:bg-gray-600",p.variant==="danger"?"text-red-600 dark:text-red-500":"text-gray-700 dark:text-gray-200"),children:[p.icon&&r.jsx("span",{className:"shrink-0",children:p.icon}),p.title]},k))}),Pe),S&&H&&r.jsx(Ot,{isOpen:H,onClose:()=>V(!1),config:S,onApply:p=>{ae(p),j==null||j(p)}}),E&&K&&r.jsx(xe,{src:K.src,alt:K.alt,isOpen:E,setIsOpen:be})]})},Ve=({isOpen:a,onClose:o,icon:e,title:t,children:n,size:s="md",actionButtons:i=[],onFormSubmit:l=()=>{},loadingBtn:h=!1,executeFunction:d=()=>{},selectedItem:m=null,footerConfig:u,classNames:c})=>{if(!a)return null;const g={sm:"max-w-md",md:"max-w-lg",lg:"max-w-2xl",xl:"max-w-4xl",full:"max-w-full"},f=i.length>0||!!(u!=null&&u.cancelButton);return r.jsxs("div",{className:v(x.modal.root,"fixed inset-0 z-50 flex items-center justify-center p-4"),children:[r.jsx("div",{className:v(x.modal.overlay,"fixed inset-0 bg-gray-500 opacity-75",c==null?void 0:c.overlay)}),r.jsxs("div",{className:v(x.modal.container,"relative bg-white rounded-lg shadow-xl w-full max-h-[90vh] flex flex-col dark:bg-gray-800",g[s]||g.md,c==null?void 0:c.container),children:[r.jsxs("div",{className:v(x.modal.header,"flex items-center justify-between p-4 border-b border-gray-200 dark:border-gray-700 flex-shrink-0",c==null?void 0:c.header),children:[r.jsxs("div",{className:"flex items-center gap-1",children:[e&&r.jsx("span",{children:e}),r.jsx("h3",{className:v(x.modal.title,"text-lg font-medium text-gray-900 dark:text-white",c==null?void 0:c.title),children:t})]}),r.jsx("button",{onClick:()=>o(),className:v(x.modal.closeButton,"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300",c==null?void 0:c.closeButton),children:r.jsx(te.X,{className:"w-6 h-6"})})]}),r.jsx("div",{className:v(x.modal.body,"flex-1 overflow-y-auto p-4",c==null?void 0:c.body),children:n}),f&&r.jsxs("div",{className:v(x.modal.footer,"px-4 py-3 flex justify-end gap-3 border-t border-gray-200 dark:border-gray-700 sm:!px-6",c==null?void 0:c.footer),children:[(u==null?void 0:u.cancelButton)&&r.jsx(ue,{onClick:()=>o(),variant:"outlined",color:"default",className:v(x.modal.actionButton,"min-w-[100px]"),type:"button",children:(u==null?void 0:u.cancelText)||"Cancel"}),i.map((w,N)=>r.jsx(ue,{onClick:j=>{w.type=="submit"?l(j):d(()=>{var S;return Promise.resolve((S=w==null?void 0:w.onClick)==null?void 0:S.call(w,j,m))},S=>o==null?void 0:o(S))},disabled:h||w.disabled,variant:w.variant||"contained",color:w.color||"primary",className:v(x.modal.actionButton,"min-w-[100px]",w.className||""),type:w.type||"button",children:h?r.jsxs("div",{className:v(x.modal.loadingIndicator,"flex items-center"),children:[r.jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-2 border-white/30 border-t-2 border-t-white mr-2"}),w.label||"Submit","..."]}):w.label||"Submit"},`${w.label||"action"}-${N}`))]})]})]})},Cr=({config:a,onSubmit:o,initialData:e,fetchRowDetails:t,type:n})=>{const s=e||{},{formClass:i="grid grid-cols-12 gap-4",formFields:l=[]}=a||{},[h,d]=b.useState(s),[m,u]=b.useState(!0),[c,g]=b.useState({}),f=async()=>{t==null||t(s).then(j=>{d(j.data)}).catch(j=>{ke.enqueueSnackbar(j.message,{variant:"error"})}).finally(()=>{u(!1)})};b.useEffect(()=>{t instanceof Function?f():(d(s),u(!1))},[]);const w=(j,S)=>{d(P=>({...P,[j]:S})),g(P=>({...P,[j]:""}))},N=j=>{j.preventDefault();const S=j.currentTarget;if(!S.checkValidity()){S.reportValidity();return}const P={};let T=!1;for(const I of l){const L=h[I.key]||"";if(I.customValidation){const U=I.customValidation(L);if(U!==!1&&(P[I.key]=U,!T)){const y=S.querySelector(`[id="field-${I.key}"]`);y==null||y.focus(),T=!0}}}g(P),!(Object.keys(P).length>0)&&o(h)};return m?r.jsx("div",{className:v(x.form.loading,"flex items-center justify-center h-64"),children:r.jsx("div",{className:"rounded-full border-4 border-blue-500 border-t-gray-200 animate-spin w-8 h-8",style:{borderTopColor:"border-primary-500"}})}):r.jsx("form",{id:n==="add"?"addForm":n==="edit"?"editForm":"defaultForm",onSubmit:N,className:v(x.form.root,i),noValidate:!1,children:l.map(j=>r.jsx(Hr,{field:j,formData:h,errorMessage:c[j.key]||"",handleChange:w},j.key))})};function Zt({data:a,config:o,fetchRowDetails:e}){const{fields:t=[],containerClass:n,variant:s="default",styles:i={}}=o||{},l=a||{},[h,d]=b.useState(l),[m,u]=b.useState(!0),c=async()=>{e==null||e(l).then(f=>{d(f.data)}).catch(f=>{ke.enqueueSnackbar(f.message,{variant:"error"})}).finally(()=>{u(!1)})};if(b.useEffect(()=>{e instanceof Function?c():(d(l),u(!1))},[]),m)return r.jsx("div",{className:v(x.form.loading,"flex items-center justify-center h-64"),children:r.jsx("div",{className:"rounded-full border-4 border-blue-500 border-t-gray-200 animate-spin w-8 h-8",style:{borderTopColor:"border-primary-500"}})});const g={default:"grid grid-cols-12 gap-4",card:"grid grid-cols-12 gap-3",split:"rounded-xl border border-gray-200 dark:border-gray-700 overflow-hidden divide-y divide-gray-100 dark:divide-gray-800"};return r.jsx(r.Fragment,{children:r.jsx("div",{className:v(x.details.root,x.details.container,g[s]||g.default,n||"",i.containerClass||""),children:t.map(f=>f.renderCondition&&typeof f.renderCondition=="function"&&!f.renderCondition(h)?null:f.type=="group"?r.jsx(Gr,{col:f,data:h,uiVariant:s,styleConfig:i},f.key||f.titleKey):f.type=="cardGroup"?r.jsx(Yr,{col:f,data:h,uiVariant:s,styleConfig:i},f.key||f.titleKey):r.jsx(Wr,{col:f,data:h,uiVariant:s,styleConfig:i},f.key||f.label))})})}const Xt=({config:a})=>{var R,O,q,J,Z,oe,$e,_e,Ce,De,Re,Pe,Ue,Oe,Te,Be,Ge,Le,Ye,Ke,Ee,We;const{title:o,fetchData:e,fetchRowDetails:t,isStaticData:n=!1,tableConfig:s,modalConfig:i,filterConfig:l}=a,[h,d]=b.useState(!0),[m,u]=b.useState(!1),[c,g]=b.useState([]),[f,w]=b.useState(null),[N,j]=b.useState({search:"",rows_per_page:50,current_page:1,sort_by:"",sort_order:""}),[S,P]=b.useState({}),[T,I]=b.useState(!1),[L,U]=b.useState(!1),[y,A]=b.useState(!1),[M,z]=b.useState(!1),[H,V]=b.useState(!1),[ee,ae]=b.useState(null),D=(G,X)=>{G==="edit"?(ae(X),A(!0)):G==="view"?(ae(X),V(!0)):G==="delete"&&(ae(X),z(!0))},C=async(G,X,ne="",je="")=>{u(!0);try{if(!G)return;const ie=await G();(ne||ie!=null&&ie.message)&&ke.enqueueSnackbar(ne||ie.message||"Success",{variant:"success"}),X==null||X(ie)}catch(ie){(je||ie!=null&&ie.message)&&ke.enqueueSnackbar(je||ie.message||"Error occurred",{variant:"error"})}finally{u(!1)}},F=G=>{const X=G.newObject;n?(g(ne=>[X,...ne]),w(ne=>({...ne,current_page:1}))):(j(ne=>({...ne,current_page:1})),N.current_page===1&&E()),U(!1)},Y=G=>{const{newObject:X,targetObject:ne}=G;n?g(je=>je.map(ie=>ie.id===ne.id?{...ie,...X}:ie)):E(),A(!1)},$=G=>{if(!G){z(!1),ae(null);return}n?g(X=>X.filter(ne=>ne.id!==G.targetObject.id)):c.length===1&&N.current_page>1?j(X=>({...X,current_page:X.current_page-1})):E(),z(!1),ae(null)},K=G=>C(()=>{var X;return(X=i==null?void 0:i.addModal)!=null&&X.handleSubmit?i.addModal.handleSubmit(G):Promise.resolve({newObject:null})},F),ce=G=>C(()=>{var X;return(X=i==null?void 0:i.editModal)!=null&&X.handleSubmit?i.editModal.handleSubmit(G,ee):Promise.resolve({newObject:null,targetObject:null})},Y),E=async()=>{d(!0);try{const G=await e({...N,...S});g(G.data||[]),w(G.pagination||null)}catch(G){ke.enqueueSnackbar(G.message||"Failed to fetch data",{variant:"error"})}finally{d(!1)}},be=G=>{var X;P(ne=>({...G})),(X=s==null?void 0:s.filter)!=null&&X.useServerSideFilters&&I(ne=>!ne)},we=(G,X)=>G.filter(ne=>Object.entries(X).every(([je,ie])=>ne[je]===ie)),_=b.useMemo(()=>{var G;return(G=s==null?void 0:s.filter)!=null&&G.useServerSideFilters?c:we(c,S)},[c,S,(R=s==null?void 0:s.filter)==null?void 0:R.useServerSideFilters]),B=(O=i==null?void 0:i.viewModal)==null?void 0:O.component;return b.useEffect(()=>{E()},[N.search,N.rows_per_page,N.current_page,N.sort_by,N.sort_order,T]),r.jsxs("div",{className:x.crudPage.root,children:[r.jsx(Vt,{title:o,setShowAdd:U,description:a.description,buttonText:a.buttonText,showAddButton:!!(i!=null&&i.addModal),config:{...s,pagination:{...s.pagination,...f},data:_,setServerSidePaginationData:j,onMenuAction:D,filterConfig:l,onFilterApply:be,loading:h}}),L&&r.jsx(Ve,{isOpen:L,onClose:()=>{m||U(!1)},icon:(q=i==null?void 0:i.addModal)==null?void 0:q.icon,title:((J=i==null?void 0:i.addModal)==null?void 0:J.title)||"Add New",size:((Z=i==null?void 0:i.addModal)==null?void 0:Z.size)||"md",onFormSubmit:()=>{var G;return(G=document.querySelector("#addForm"))==null?void 0:G.requestSubmit()},loadingBtn:m,actionButtons:((oe=i==null?void 0:i.addModal)==null?void 0:oe.actionButtons)||[],children:r.jsx(Cr,{config:(i==null?void 0:i.addModal)||{},onSubmit:K,initialData:{},type:"add",loading:m})}),y&&r.jsx(Ve,{isOpen:y,onClose:()=>{m||A(!1)},icon:($e=i==null?void 0:i.editModal)==null?void 0:$e.icon,title:((_e=i==null?void 0:i.editModal)==null?void 0:_e.title)||"Edit",size:((Ce=i==null?void 0:i.editModal)==null?void 0:Ce.size)||"md",onFormSubmit:()=>{var G;return(G=document.querySelector("#editForm"))==null?void 0:G.requestSubmit()},actionButtons:((De=i==null?void 0:i.editModal)==null?void 0:De.actionButtons)||[],loadingBtn:m,children:r.jsx(Cr,{config:(i==null?void 0:i.editModal)||{},onSubmit:ce,initialData:ee,type:"edit",loading:m,fetchRowDetails:t})}),M&&r.jsx(Ve,{isOpen:M,onClose:G=>{$(G)},icon:((Re=i==null?void 0:i.deleteModal)==null?void 0:Re.icon)||r.jsx(me.Icon,{icon:"ph:warning-bold",className:"w-6 h-6 text-red-500"}),title:((Pe=i==null?void 0:i.deleteModal)==null?void 0:Pe.title)||"Confirm Delete",size:((Ue=i==null?void 0:i.deleteModal)==null?void 0:Ue.size)||"md",loading:m,actionButtons:((Oe=i==null?void 0:i.deleteModal)==null?void 0:Oe.actionButtons)||[],executeFunction:C,selectedItem:ee,children:r.jsx("div",{className:v(x.crudPage.deleteContent,"flex items-center space-x-2 py-3"),children:r.jsxs("div",{children:[r.jsx("p",{className:"text-md text-gray-700 dark:text-white",children:((Te=i==null?void 0:i.deleteModal)==null?void 0:Te.confirmText)||"Are you sure you want to delete this item?"}),((Be=i==null?void 0:i.deleteModal)==null?void 0:Be.referenceKey)&&r.jsx("p",{className:"text-md font-semibold text-gray-700 dark:text-white",children:ee==null?void 0:ee[(Ge=i==null?void 0:i.deleteModal)==null?void 0:Ge.referenceKey]})]})})}),(i==null?void 0:i.viewModal)&&r.jsx(Ve,{isOpen:H,onClose:()=>{V(!1),ae(null)},icon:(Le=i==null?void 0:i.viewModal)==null?void 0:Le.icon,title:((Ye=i==null?void 0:i.viewModal)==null?void 0:Ye.title)||"View Details",size:((Ke=i==null?void 0:i.viewModal)==null?void 0:Ke.size)||"lg",footerConfig:(Ee=i==null?void 0:i.viewModal)==null?void 0:Ee.footer,classNames:(We=i==null?void 0:i.viewModal)==null?void 0:We.modalClassNames,children:B?r.jsx(B,{data:ee}):r.jsx(Zt,{data:ee,fetchRowDetails:t,config:(i==null?void 0:i.viewModal)||{}})})]})};function qt({children:a}){return ke.useSnackbar(),a}function Jt({children:a}){try{return r.jsx(qt,{children:a})}catch{return r.jsx(ke.SnackbarProvider,{anchorOrigin:{vertical:"bottom",horizontal:"right"},action:e=>r.jsx("button",{onClick:()=>{window.dispatchEvent(new CustomEvent("closeSnackbar",{detail:e}))},className:"p-1 hover:bg-white/20 rounded-full transition-colors duration-200 text-white flex items-center justify-center",children:r.jsx(te.X,{className:"h-4 w-4"})}),maxSnack:3,autoHideDuration:3e3,children:a})}}const Qt=()=>{if(typeof document>"u"||document.getElementById("react-admin-crud-manager-styles"))return;const a=document.createElement("style");a.id="react-admin-crud-manager-styles",a.textContent=qr,document.head.appendChild(a)};function ea({config:a}){return b.useEffect(()=>{Qt()},[]),r.jsx("div",{className:"racm-root",children:r.jsx(Jt,{children:r.jsx(Xt,{config:a})})})}module.exports=ea;
|
|
129
129
|
//# sourceMappingURL=index.cjs.js.map
|