@chaibuilder/sdk 1.0.23 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/AddBlocks-P3qHuE5J.cjs +1 -0
  2. package/dist/AddBlocks-imyQSCbI.js +230 -0
  3. package/dist/{BrandingOptions-Fyo8qs4o.cjs → BrandingOptions-_2XBEPab.cjs} +1 -1
  4. package/dist/{BrandingOptions-orZyDGiL.js → BrandingOptions-tSNtQ1Kv.js} +1 -1
  5. package/dist/CanvasArea-TzIgm_vh.cjs +58 -0
  6. package/dist/CanvasArea-dS2B20gv.js +1421 -0
  7. package/dist/{CurrentPage-lIithDJy.cjs → CurrentPage-_Em0U2gh.cjs} +1 -1
  8. package/dist/{CurrentPage-70sBzc2_.js → CurrentPage-pSsaLyEf.js} +2 -2
  9. package/dist/Layers-RyVRzaUa.cjs +1 -0
  10. package/dist/{Layers-W0N2zfnf.js → Layers-wp2Uc2Y5.js} +119 -137
  11. package/dist/{MarkAsGlobalBlock-FPCQmRIh.js → MarkAsGlobalBlock-aqik3ouc.js} +1 -1
  12. package/dist/{MarkAsGlobalBlock-EOsABFjY.cjs → MarkAsGlobalBlock-p_wvHkQZ.cjs} +1 -1
  13. package/dist/{PagesPanel-RbHN6lvQ.js → PagesPanel-L2VS8RyZ.js} +3 -3
  14. package/dist/{PagesPanel-i-MQEmm_.cjs → PagesPanel-ZuXc2610.cjs} +1 -1
  15. package/dist/{ProjectPanel-0BGx-hP-.cjs → ProjectPanel-SErKorHi.cjs} +1 -1
  16. package/dist/{ProjectPanel-CzwuyR0N.js → ProjectPanel-T3AXGe7O.js} +3 -3
  17. package/dist/Settings-GJHtwQaa.cjs +1 -0
  18. package/dist/{Settings-lxTrbI-C.js → Settings-xkL3U3Y-.js} +301 -308
  19. package/dist/{SidePanels-pUOJTYfr.cjs → SidePanels-5FNROZe7.cjs} +1 -1
  20. package/dist/{SidePanels-g4M6oTs-.js → SidePanels-pd7HYv8I.js} +33 -32
  21. package/dist/{Topbar-KqZt4TEY.js → Topbar-Jc74a6oE.js} +1 -1
  22. package/dist/{Topbar-kHffytzr.cjs → Topbar-ZjAs5fDc.cjs} +1 -1
  23. package/dist/{UnsplashImages-Ua7ksJ8c.js → UnsplashImages-_PxEYx5c.js} +1 -1
  24. package/dist/{UnsplashImages-y7I_7_W7.cjs → UnsplashImages-nXceZLmd.cjs} +1 -1
  25. package/dist/{UploadImages-RzEm0Stb.cjs → UploadImages-tcQb5NZu.cjs} +1 -1
  26. package/dist/{UploadImages-YP_J6erG.js → UploadImages-zzSgKmP9.js} +10 -10
  27. package/dist/{add-page-modal-btGWaXyq.js → add-page-modal-Njd5M7E2.js} +3 -3
  28. package/dist/{add-page-modal-ekFis5D8.cjs → add-page-modal-U8EH-GIa.cjs} +1 -1
  29. package/dist/{confirm-alert-Py2WqZhJ.js → confirm-alert-2JxcNf3T.js} +1 -1
  30. package/dist/{confirm-alert-mAhT8vln.cjs → confirm-alert-mzlwOW9w.cjs} +1 -1
  31. package/dist/core.cjs +1 -1
  32. package/dist/core.d.ts +1 -3
  33. package/dist/core.js +2 -2
  34. package/dist/{delete-page-modal-QzleoJG2.cjs → delete-page-modal-0LQiM0fX.cjs} +1 -1
  35. package/dist/{delete-page-modal-Rq4ThQpu.js → delete-page-modal-NT7df4pk.js} +2 -2
  36. package/dist/{form-Lm3bupAq.js → form-TQ7vwDYO.js} +1 -1
  37. package/dist/{form-kAjrBaV-.cjs → form-bSW-Pkw9.cjs} +1 -1
  38. package/dist/{index-WPlT_Q87.js → index-N3mTbV2j.js} +6 -4
  39. package/dist/{index-Vx4ctSV6.js → index-ORFlyrBx.js} +569 -556
  40. package/dist/{index-fvoD_laH.cjs → index-pYZXf7hY.cjs} +2 -2
  41. package/dist/index-zkc4SQCu.cjs +1 -0
  42. package/dist/{page-viewer-AlOCzh1b.cjs → page-viewer-UxwOwHCO.cjs} +1 -1
  43. package/dist/{page-viewer-_wGsV2_o.js → page-viewer-e3lOBAH3.js} +3 -3
  44. package/dist/{project-general-setting-XnNyOpXO.cjs → project-general-setting-DrLwWE-6.cjs} +1 -1
  45. package/dist/{project-general-setting-B8uuHccU.js → project-general-setting-el86II8N.js} +3 -3
  46. package/dist/{project-seo-setting-QJBATF59.cjs → project-seo-setting-cERASO9j.cjs} +1 -1
  47. package/dist/{project-seo-setting-Zg2Z-Frr.js → project-seo-setting-k0HlefUD.js} +2 -2
  48. package/dist/{single-page-detail-HXpxgQnU.js → single-page-detail-UFEXRI81.js} +4 -4
  49. package/dist/{single-page-detail-MWh30E_-.cjs → single-page-detail-fUh22jZE.cjs} +1 -1
  50. package/dist/studio.cjs +1 -1
  51. package/dist/studio.js +2 -2
  52. package/dist/ui.cjs +1 -1
  53. package/dist/ui.js +57 -57
  54. package/dist/useAddBlockByDrop-DPV32UHP.cjs +1 -0
  55. package/dist/useAddBlockByDrop-UA_Iw_4l.js +20 -0
  56. package/package.json +3 -3
  57. package/dist/AddBlocks-Izn_rxXD.js +0 -270
  58. package/dist/AddBlocks-RHuwwfe5.cjs +0 -3
  59. package/dist/CanvasArea-C30uJLef.js +0 -1298
  60. package/dist/CanvasArea-IM2K8bud.cjs +0 -46
  61. package/dist/Layers-YMtavzUG.cjs +0 -1
  62. package/dist/Settings-mTWkKG82.cjs +0 -1
  63. package/dist/index-W5drgyWI.cjs +0 -1
@@ -1,46 +0,0 @@
1
- "use strict";var Ae=Object.defineProperty;var Pe=(n,t,s)=>t in n?Ae(n,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):n[t]=s;var U=(n,t,s)=>(Pe(n,typeof t!="symbol"?t+"":t,s),s);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./jsx-runtime-WUGKV8jN.cjs"),h=require("react"),x=require("lodash"),M=require("@radix-ui/react-icons"),i=require("./index-W5drgyWI.cjs"),je=require("react-i18next"),Y=require("jotai"),ue=require("react-dom"),K=require("./MODIFIERS-WFzDQfiT.cjs"),V=require("./index-fvoD_laH.cjs"),Me=require("@floating-ui/dom"),de=require("@floating-ui/react-dom"),_e=require("react-dnd"),Ne=require("@react-hookz/web"),Le=require("@bobthered/tailwindcss-palette-generator"),We=require("react-wrap-balancer"),Fe=require("tailwind-merge"),$e=require("@chaibuilder/runtime");require("@radix-ui/react-toggle");require("class-variance-authority");require("./utils-It2K33fU.cjs");require("clsx");require("@radix-ui/react-switch");require("@radix-ui/react-slot");require("@radix-ui/react-accordion");require("@radix-ui/react-alert-dialog");require("@radix-ui/react-dialog");require("@radix-ui/react-label");require("@radix-ui/react-scroll-area");require("@radix-ui/react-tabs");require("@radix-ui/react-tooltip");require("@radix-ui/react-popover");require("@radix-ui/react-menubar");require("@radix-ui/react-hover-card");require("@radix-ui/react-select");require("@radix-ui/react-dropdown-menu");require("@radix-ui/react-separator");require("@radix-ui/react-toast");require("cmdk");require("@radix-ui/react-context-menu");require("react-icons-picker");require("react-quill");require("flat-to-nested");require("redux-undo");require("i18next");require("react-textarea-autosize");require("flagged");require("@minoru/react-dnd-treeview");require("./lib.cjs");require("himalaya");require("./functions-KMQYiBHf.cjs");require("@mhsdesign/jit-browser-tailwindcss");require("@tailwindcss/forms");require("@tailwindcss/typography");require("@tailwindcss/aspect-ratio");require("@tailwindcss/line-clamp");require("./tailwind-config-OxLD7oFU.cjs");require("react-hotkeys-hook");require("sonner");require("lucide-react");const Ue=()=>{const{undoCount:n,redoCount:t,undo:s,redo:c}=i.useCanvasHistory();return e.jsxRuntimeExports.jsxs("div",{className:"flex items-center",children:[e.jsxRuntimeExports.jsx(i.Button,{disabled:!n,size:"sm",onClick:s,className:"rounded-full",variant:"ghost",children:e.jsxRuntimeExports.jsx(M.ResetIcon,{})}),e.jsxRuntimeExports.jsx(i.Button,{disabled:!t,onClick:c,size:"sm",className:"rounded-full",variant:"ghost",children:e.jsxRuntimeExports.jsx(M.ResetIcon,{className:"rotate-180 scale-y-[-1] transform"})})]})};function He(){const[n,t]=i.useDarkMode(),{t:s}=je.useTranslation();return e.jsxRuntimeExports.jsxs("div",{className:"flex items-center",children:[e.jsxRuntimeExports.jsx(i.Label,{htmlFor:"dark-mode-switch",children:s("dark_mode")}),e.jsxRuntimeExports.jsxs(i.Switch,{id:"dark-mode-switch",checked:n,onCheckedChange:()=>{t(!n)},className:`${n?"bg-violet-600":"bg-violet-300"}
2
- relative ml-2 inline-flex h-[20px] w-[40px] shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus-visible:ring-2 focus-visible:ring-white focus-visible:ring-opacity-75`,children:[e.jsxRuntimeExports.jsx("span",{className:"sr-only",children:"Use setting"}),e.jsxRuntimeExports.jsx("span",{"aria-hidden":"true",className:`${n?"translate-x-5":"translate-x-0"}
3
- pointer-events-none -mt-px inline-block h-[18px] w-[20px] transform rounded-full bg-white shadow-lg ring-0 transition duration-200 ease-in-out`})]})]})}const pe=({landscape:n=!1})=>e.jsxRuntimeExports.jsxs("svg",{className:n?"rotate-90":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 13",xmlSpace:"preserve",width:13,height:13,children:[e.jsxRuntimeExports.jsx("g",{strokeWidth:0}),e.jsxRuntimeExports.jsx("g",{strokeLinecap:"round",strokeLinejoin:"round"}),e.jsxRuntimeExports.jsx("path",{d:"M10.65 0H2.349a.851.851 0 0 0-.851.852v11.299c0 .47.382.852.851.852h8.3a.851.851 0 0 0 .851-.852V.852A.851.851 0 0 0 10.65 0zM6.599 12.466a.367.367 0 1 1 0-.735.367.367 0 0 1 0 .735zm3.9-1.267H2.5V1h8.001v10.199z",style:{fill:"#000"}})]}),fe=[{title:"Mobile (XS)",content:"Styles set here are applied to all screen unless edited at higher breakpoint",breakpoint:"xs",icon:e.jsxRuntimeExports.jsx(M.MobileIcon,{}),width:400},{title:"Mobile landscape (SM)",content:"Styles set here are applied at 640px and up unless edited at higher breakpoint",breakpoint:"sm",icon:e.jsxRuntimeExports.jsx(M.MobileIcon,{className:"rotate-90"}),width:640},{title:"Tablet (MD)",content:"Styles set here are applied at 768px and up",breakpoint:"md",icon:e.jsxRuntimeExports.jsx(pe,{}),width:800},{title:"Tablet Landscape (LG)",content:"Styles set here are applied at 1024px and up unless edited at higher breakpoint",breakpoint:"lg",icon:e.jsxRuntimeExports.jsx(pe,{landscape:!0}),width:1024},{title:"Desktop (XL)",content:"Styles set here are applied at 1280px and up unless edited at higher breakpoint",breakpoint:"xl",icon:e.jsxRuntimeExports.jsx(M.LaptopIcon,{}),width:1420},{title:"Large Desktop (2XL)",content:"Styles set here are applied at 1536px and up",breakpoint:"2xl",icon:e.jsxRuntimeExports.jsx(M.DesktopIcon,{}),width:1920}],ze=({title:n,content:t,currentBreakpoint:s,breakpoint:c,width:u,icon:o,onClick:a})=>e.jsxRuntimeExports.jsxs(i.HoverCard,{children:[e.jsxRuntimeExports.jsx(i.HoverCardTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsx(i.Button,{onClick:()=>a(u),size:"sm",variant:c===s?"secondary":"ghost",children:o})}),e.jsxRuntimeExports.jsx(i.HoverCardContent,{className:"w-52 border-border",children:e.jsxRuntimeExports.jsx("div",{className:"flex justify-between space-x-4",children:e.jsxRuntimeExports.jsxs("div",{className:"space-y-1",children:[e.jsxRuntimeExports.jsx("h4",{className:"text-sm font-semibold",children:n}),e.jsxRuntimeExports.jsx("p",{className:"text-xs",children:t})]})})})]}),Ye=()=>{const[,n,t]=i.useCanvasWidth(),[s,c]=i.useSelectedBreakpoints(),u=o=>{s.includes(o)?s.length>2&&c(s.filter(a=>a!==o)):c(a=>[...a,o])};return e.jsxRuntimeExports.jsxs("div",{className:"flex items-center rounded-md",children:[x.map(fe.filter(o=>x.includes(s,x.toUpper(o.breakpoint))),o=>h.createElement(ze,{...o,onClick:t,key:o.breakpoint,currentBreakpoint:n})),e.jsxRuntimeExports.jsxs(i.DropdownMenu,{children:[e.jsxRuntimeExports.jsx(i.DropdownMenuTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsx("span",{className:"cursor-pointer px-2.5 hover:opacity-80",children:e.jsxRuntimeExports.jsx(M.DotsVerticalIcon,{className:"scale-90 transform"})})}),e.jsxRuntimeExports.jsxs(i.DropdownMenuContent,{className:"w-56 border-border text-xs",children:[e.jsxRuntimeExports.jsx(i.DropdownMenuLabel,{children:"Breakpoints"}),e.jsxRuntimeExports.jsx(i.DropdownMenuSeparator,{}),x.map(fe,o=>e.jsxRuntimeExports.jsx(i.DropdownMenuCheckboxItem,{disabled:o.breakpoint==="xs",onCheckedChange:()=>u(x.toUpper(o.breakpoint)),checked:x.includes(s,x.toUpper(o.breakpoint)),children:o.title},o.breakpoint))]})]})]})},Ke=()=>{const[n]=i.useSetAllBlocks(),{createSnapshot:t}=i.useCanvasHistory(),[,s]=i.useSelectedBlockIds(),[,c]=i.useSelectedStylingBlocks(),u=h.useCallback(()=>{n([]),s([]),c([]),t()},[n,t]);return e.jsxRuntimeExports.jsx("div",{className:"flex items-center",children:e.jsxRuntimeExports.jsxs(i.AlertDialog,{children:[e.jsxRuntimeExports.jsx(i.AlertDialogTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsxs(i.Button,{size:"sm",variant:"ghost",className:"flex items-center gap-x-1",children:[e.jsxRuntimeExports.jsx(M.EraserIcon,{})," Clear"]})}),e.jsxRuntimeExports.jsxs(i.AlertDialogContent,{className:"border-border",children:[e.jsxRuntimeExports.jsxs(i.AlertDialogHeader,{children:[e.jsxRuntimeExports.jsx(i.AlertDialogTitle,{children:"Clear whole canvas?"}),e.jsxRuntimeExports.jsx(i.AlertDialogDescription,{children:"Are you sure you want to clear the whole canvas?"})]}),e.jsxRuntimeExports.jsxs(i.AlertDialogFooter,{children:[e.jsxRuntimeExports.jsx(i.AlertDialogCancel,{children:"Cancel"}),e.jsxRuntimeExports.jsx(i.AlertDialogAction,{onClick:u,children:"Yes"})]})]})]})})},Ve=()=>{const n=i.useFeatureSupport("darkMode",!1),[t]=i.useCanvasZoom();return e.jsxRuntimeExports.jsxs("div",{className:"flex h-10 items-center justify-between border-b bg-background/70 px-2",children:[e.jsxRuntimeExports.jsxs("div",{className:"flex h-full space-x-2",children:[n?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(He,{}),e.jsxRuntimeExports.jsx(i.Separator,{orientation:"vertical"})]}):null,e.jsxRuntimeExports.jsx(Ye,{}),e.jsxRuntimeExports.jsx(i.Separator,{orientation:"vertical"}),e.jsxRuntimeExports.jsxs("div",{className:"flex w-12 items-center justify-center gap-x-1 space-x-0 font-medium",children:[e.jsxRuntimeExports.jsx(M.ZoomInIcon,{className:"h-3.5 w-3.5 flex-shrink-0"})," ",e.jsxRuntimeExports.jsxs("div",{className:"text-xs leading-3",children:[x.round(t,0),"%"]})]}),e.jsxRuntimeExports.jsx(i.Separator,{orientation:"vertical"}),e.jsxRuntimeExports.jsx(Ue,{})]}),e.jsxRuntimeExports.jsxs("div",{className:"flex h-full items-center space-x-2",children:[e.jsxRuntimeExports.jsx(i.Separator,{orientation:"vertical"}),e.jsxRuntimeExports.jsx(Ke,{})]})]})},Xe=`<!doctype html>
4
- <html class="scroll-smooth h-full overflow-y-auto">
5
- <head>
6
- <meta charset="UTF-8">
7
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
8
- <script src="https://old.chaibuilder.com/offline/tailwind.cdn.js"><\/script>
9
- <style>
10
- html { height: 100%; overflow:auto; }
11
- body { height: 100%; }
12
- .air-highlight{ outline: 1px solid #42a1fc !important; outline-offset: -1px;}
13
- .air-highlight-multi{ outline: 1px solid #29e503 !important; outline-offset: -1px;}
14
- body{ -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none;
15
- -moz-user-select: none;-ms-user-select: none; user-select: none; }
16
- html{
17
- -ms-overflow-style: none; /* IE and Edge */
18
- scrollbar-width: none; /* Firefox */
19
- }
20
- /** IMPORTANT: Make fields content editable in SAFARI */
21
- [contenteditable] {-webkit-user-select: text;user-select: text;}
22
-
23
- html::-webkit-scrollbar { width: 0 !important }
24
- .aspect-auto{aspect-ratio: auto;}
25
- .aspect-square{aspect-ratio: 1/1;}
26
- .aspect-video{aspect-ratio: 16/9;}
27
- a{ pointer-events: none !important; }
28
- </style>
29
- <style id="hidden-blocks"></style>
30
- <style id="selected-block"></style>
31
- <style id="selected-styling-block"></style>
32
- <style id="highlighted-block"></style>
33
- </head>
34
- <body class="font-body antialiased h-full">
35
- <div class="frame-root"></div>
36
- </body>
37
- </html>`,Ze=n=>{const[t]=i.useCanvasWidth(),[,s]=i.useCanvasZoom(),[c,u]=h.useState({}),o=h.useCallback(()=>{const{width:a,height:f}=n;if(a<t){const j=parseFloat((a/t).toString());let R={};f&&(R={height:f+2*f*(1-j)}),u({transform:`scale(${j})`,transformOrigin:"top left",...R,maxWidth:"none"}),s(j*100)}else u({}),s(100)},[t,n,s]);return h.useEffect(()=>{o()},[t,n,s,o]),c};var Z={exports:{}};/*
38
- object-assign
39
- (c) Sindre Sorhus
40
- @license MIT
41
- */var Q,xe;function Ge(){if(xe)return Q;xe=1;var n=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,s=Object.prototype.propertyIsEnumerable;function c(o){if(o==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(o)}function u(){try{if(!Object.assign)return!1;var o=new String("abc");if(o[5]="de",Object.getOwnPropertyNames(o)[0]==="5")return!1;for(var a={},f=0;f<10;f++)a["_"+String.fromCharCode(f)]=f;var j=Object.getOwnPropertyNames(a).map(function(p){return a[p]});if(j.join("")!=="0123456789")return!1;var R={};return"abcdefghijklmnopqrst".split("").forEach(function(p){R[p]=p}),Object.keys(Object.assign({},R)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return Q=u()?Object.assign:function(o,a){for(var f,j=c(o),R,p=1;p<arguments.length;p++){f=Object(arguments[p]);for(var d in f)t.call(f,d)&&(j[d]=f[d]);if(n){R=n(f);for(var g=0;g<R.length;g++)s.call(f,R[g])&&(j[R[g]]=f[R[g]])}}return j},Q}var ee,he;function ae(){if(he)return ee;he=1;var n="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return ee=n,ee}var te,me;function Ee(){return me||(me=1,te=Function.call.bind(Object.prototype.hasOwnProperty)),te}var ne,ye;function Je(){if(ye)return ne;ye=1;var n=function(){};if(process.env.NODE_ENV!=="production"){var t=ae(),s={},c=Ee();n=function(o){var a="Warning: "+o;typeof console<"u"&&console.error(a);try{throw new Error(a)}catch{}}}function u(o,a,f,j,R){if(process.env.NODE_ENV!=="production"){for(var p in o)if(c(o,p)){var d;try{if(typeof o[p]!="function"){var g=Error((j||"React class")+": "+f+" type `"+p+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof o[p]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw g.name="Invariant Violation",g}d=o[p](a,p,j,f,null,t)}catch(O){d=O}if(d&&!(d instanceof Error)&&n((j||"React class")+": type specification of "+f+" `"+p+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof d+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),d instanceof Error&&!(d.message in s)){s[d.message]=!0;var S=R?R():"";n("Failed "+f+" type: "+d.message+(S??""))}}}}return u.resetWarningCache=function(){process.env.NODE_ENV!=="production"&&(s={})},ne=u,ne}var se,ge;function Qe(){if(ge)return se;ge=1;var n=V.reactIsExports,t=Ge(),s=ae(),c=Ee(),u=Je(),o=function(){};process.env.NODE_ENV!=="production"&&(o=function(f){var j="Warning: "+f;typeof console<"u"&&console.error(j);try{throw new Error(j)}catch{}});function a(){return null}return se=function(f,j){var R=typeof Symbol=="function"&&Symbol.iterator,p="@@iterator";function d(r){var l=r&&(R&&r[R]||r[p]);if(typeof l=="function")return l}var g="<<anonymous>>",S={array:m("array"),bigint:m("bigint"),bool:m("boolean"),func:m("function"),number:m("number"),object:m("object"),string:m("string"),symbol:m("symbol"),any:F(),arrayOf:N,element:G(),elementType:J(),instanceOf:q,node:Te(),objectOf:W,oneOf:L,oneOfType:Ce,shape:Ie,exact:Be};function O(r,l){return r===l?r!==0||1/r===1/l:r!==r&&l!==l}function w(r,l){this.message=r,this.data=l&&typeof l=="object"?l:{},this.stack=""}w.prototype=Error.prototype;function B(r){if(process.env.NODE_ENV!=="production")var l={},k=0;function E(C,v,b,T,D,I,_){if(T=T||g,I=I||b,_!==s){if(j){var A=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw A.name="Invariant Violation",A}else if(process.env.NODE_ENV!=="production"&&typeof console<"u"){var H=T+":"+b;!l[H]&&k<3&&(o("You are manually calling a React.PropTypes validation function for the `"+I+"` prop on `"+T+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),l[H]=!0,k++)}}return v[b]==null?C?v[b]===null?new w("The "+D+" `"+I+"` is marked as required "+("in `"+T+"`, but its value is `null`.")):new w("The "+D+" `"+I+"` is marked as required in "+("`"+T+"`, but its value is `undefined`.")):null:r(v,b,T,D,I)}var y=E.bind(null,!1);return y.isRequired=E.bind(null,!0),y}function m(r){function l(k,E,y,C,v,b){var T=k[E],D=$(T);if(D!==r){var I=z(T);return new w("Invalid "+C+" `"+v+"` of type "+("`"+I+"` supplied to `"+y+"`, expected ")+("`"+r+"`."),{expectedType:r})}return null}return B(l)}function F(){return B(a)}function N(r){function l(k,E,y,C,v){if(typeof r!="function")return new w("Property `"+v+"` of component `"+y+"` has invalid PropType notation inside arrayOf.");var b=k[E];if(!Array.isArray(b)){var T=$(b);return new w("Invalid "+C+" `"+v+"` of type "+("`"+T+"` supplied to `"+y+"`, expected an array."))}for(var D=0;D<b.length;D++){var I=r(b,D,y,C,v+"["+D+"]",s);if(I instanceof Error)return I}return null}return B(l)}function G(){function r(l,k,E,y,C){var v=l[k];if(!f(v)){var b=$(v);return new w("Invalid "+y+" `"+C+"` of type "+("`"+b+"` supplied to `"+E+"`, expected a single ReactElement."))}return null}return B(r)}function J(){function r(l,k,E,y,C){var v=l[k];if(!n.isValidElementType(v)){var b=$(v);return new w("Invalid "+y+" `"+C+"` of type "+("`"+b+"` supplied to `"+E+"`, expected a single ReactElement type."))}return null}return B(r)}function q(r){function l(k,E,y,C,v){if(!(k[E]instanceof r)){var b=r.name||g,T=qe(k[E]);return new w("Invalid "+C+" `"+v+"` of type "+("`"+T+"` supplied to `"+y+"`, expected ")+("instance of `"+b+"`."))}return null}return B(l)}function L(r){if(!Array.isArray(r))return process.env.NODE_ENV!=="production"&&(arguments.length>1?o("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."):o("Invalid argument supplied to oneOf, expected an array.")),a;function l(k,E,y,C,v){for(var b=k[E],T=0;T<r.length;T++)if(O(b,r[T]))return null;var D=JSON.stringify(r,function(_,A){var H=z(A);return H==="symbol"?String(A):A});return new w("Invalid "+C+" `"+v+"` of value `"+String(b)+"` "+("supplied to `"+y+"`, expected one of "+D+"."))}return B(l)}function W(r){function l(k,E,y,C,v){if(typeof r!="function")return new w("Property `"+v+"` of component `"+y+"` has invalid PropType notation inside objectOf.");var b=k[E],T=$(b);if(T!=="object")return new w("Invalid "+C+" `"+v+"` of type "+("`"+T+"` supplied to `"+y+"`, expected an object."));for(var D in b)if(c(b,D)){var I=r(b,D,y,C,v+"."+D,s);if(I instanceof Error)return I}return null}return B(l)}function Ce(r){if(!Array.isArray(r))return process.env.NODE_ENV!=="production"&&o("Invalid argument supplied to oneOfType, expected an instance of array."),a;for(var l=0;l<r.length;l++){var k=r[l];if(typeof k!="function")return o("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+Oe(k)+" at index "+l+"."),a}function E(y,C,v,b,T){for(var D=[],I=0;I<r.length;I++){var _=r[I],A=_(y,C,v,b,T,s);if(A==null)return null;A.data&&c(A.data,"expectedType")&&D.push(A.data.expectedType)}var H=D.length>0?", expected one of type ["+D.join(", ")+"]":"";return new w("Invalid "+b+" `"+T+"` supplied to "+("`"+v+"`"+H+"."))}return B(E)}function Te(){function r(l,k,E,y,C){return X(l[k])?null:new w("Invalid "+y+" `"+C+"` supplied to "+("`"+E+"`, expected a ReactNode."))}return B(r)}function le(r,l,k,E,y){return new w((r||"React class")+": "+l+" type `"+k+"."+E+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+y+"`.")}function Ie(r){function l(k,E,y,C,v){var b=k[E],T=$(b);if(T!=="object")return new w("Invalid "+C+" `"+v+"` of type `"+T+"` "+("supplied to `"+y+"`, expected `object`."));for(var D in r){var I=r[D];if(typeof I!="function")return le(y,C,v,D,z(I));var _=I(b,D,y,C,v+"."+D,s);if(_)return _}return null}return B(l)}function Be(r){function l(k,E,y,C,v){var b=k[E],T=$(b);if(T!=="object")return new w("Invalid "+C+" `"+v+"` of type `"+T+"` "+("supplied to `"+y+"`, expected `object`."));var D=t({},k[E],r);for(var I in D){var _=r[I];if(c(r,I)&&typeof _!="function")return le(y,C,v,I,z(_));if(!_)return new w("Invalid "+C+" `"+v+"` key `"+I+"` supplied to `"+y+"`.\nBad object: "+JSON.stringify(k[E],null," ")+`
42
- Valid keys: `+JSON.stringify(Object.keys(r),null," "));var A=_(b,I,y,C,v+"."+I,s);if(A)return A}return null}return B(l)}function X(r){switch(typeof r){case"number":case"string":case"undefined":return!0;case"boolean":return!r;case"object":if(Array.isArray(r))return r.every(X);if(r===null||f(r))return!0;var l=d(r);if(l){var k=l.call(r),E;if(l!==r.entries){for(;!(E=k.next()).done;)if(!X(E.value))return!1}else for(;!(E=k.next()).done;){var y=E.value;if(y&&!X(y[1]))return!1}}else return!1;return!0;default:return!1}}function De(r,l){return r==="symbol"?!0:l?l["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&l instanceof Symbol:!1}function $(r){var l=typeof r;return Array.isArray(r)?"array":r instanceof RegExp?"object":De(l,r)?"symbol":l}function z(r){if(typeof r>"u"||r===null)return""+r;var l=$(r);if(l==="object"){if(r instanceof Date)return"date";if(r instanceof RegExp)return"regexp"}return l}function Oe(r){var l=z(r);switch(l){case"array":case"object":return"an "+l;case"boolean":case"date":case"regexp":return"a "+l;default:return l}}function qe(r){return!r.constructor||!r.constructor.name?g:r.constructor.name}return S.checkPropTypes=u,S.resetWarningCache=u.resetWarningCache,S.PropTypes=S,S},se}var re,ve;function et(){if(ve)return re;ve=1;var n=ae();function t(){}function s(){}return s.resetWarningCache=t,re=function(){function c(a,f,j,R,p,d){if(d!==n){var g=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw g.name="Invariant Violation",g}}c.isRequired=c;function u(){return c}var o={array:c,bigint:c,bool:c,func:c,number:c,object:c,string:c,symbol:c,any:c,arrayOf:u,element:c,elementType:c,instanceOf:u,node:c,objectOf:u,oneOf:u,oneOfType:u,shape:u,exact:u,checkPropTypes:s,resetWarningCache:t};return o.PropTypes=o,o},re}var Rt=Z.exports;if(process.env.NODE_ENV!=="production"){var tt=V.reactIsExports,nt=!0;Z.exports=Qe()(tt.isElement,nt)}else Z.exports=et()();var st=Z.exports;const P=K.getDefaultExportFromCjs(st);let be,Re;typeof document<"u"&&(be=document);typeof window<"u"&&(Re=window);const ke=h.createContext({document:be,window:Re}),ce=()=>h.useContext(ke),{Provider:rt,Consumer:kt}=ke;class we extends h.Component{componentDidMount(){this.props.contentDidMount()}componentDidUpdate(){this.props.contentDidUpdate()}render(){return h.Children.only(this.props.children)}}U(we,"propTypes",{children:P.element.isRequired,contentDidMount:P.func.isRequired,contentDidUpdate:P.func.isRequired});class ie extends h.Component{constructor(s,c){super(s,c);U(this,"setRef",s=>{this.nodeRef.current=s;const{forwardedRef:c}=this.props;typeof c=="function"?c(s):c&&(c.current=s)});U(this,"handleLoad",()=>{clearInterval(this.loadCheck),this.state.iframeLoaded||this.setState({iframeLoaded:!0})});U(this,"loadCheck",()=>setInterval(()=>{this.handleLoad()},500));this._isMounted=!1,this.nodeRef=h.createRef(),this.state={iframeLoaded:!1}}componentDidMount(){this._isMounted=!0,this.getDoc()&&this.nodeRef.current.contentWindow.addEventListener("DOMContentLoaded",this.handleLoad)}componentWillUnmount(){this._isMounted=!1,this.nodeRef.current.removeEventListener("DOMContentLoaded",this.handleLoad)}getDoc(){return this.nodeRef.current?this.nodeRef.current.contentDocument:null}getMountTarget(){const s=this.getDoc();return this.props.mountTarget?s.querySelector(this.props.mountTarget):s.body.children[0]}renderFrameContents(){if(!this._isMounted)return null;const s=this.getDoc();if(!s)return null;const c=this.props.contentDidMount,u=this.props.contentDidUpdate,o=s.defaultView||s.parentView,a=e.jsxRuntimeExports.jsx(we,{contentDidMount:c,contentDidUpdate:u,children:e.jsxRuntimeExports.jsx(rt,{value:{document:s,window:o},children:e.jsxRuntimeExports.jsx("div",{className:"frame-content",children:this.props.children})})}),f=this.getMountTarget();return[ue.createPortal(this.props.head,this.getDoc().head),ue.createPortal(a,f)]}render(){const s={...this.props,srcDoc:this.props.initialContent,children:void 0};return delete s.head,delete s.initialContent,delete s.mountTarget,delete s.contentDidMount,delete s.contentDidUpdate,delete s.forwardedRef,e.jsxRuntimeExports.jsx("iframe",{...s,ref:this.setRef,onLoad:this.handleLoad,children:this.state.iframeLoaded&&this.renderFrameContents()})}}U(ie,"propTypes",{style:P.object,head:P.node,initialContent:P.string,mountTarget:P.string,contentDidMount:P.func,contentDidUpdate:P.func,children:P.oneOfType([P.element,P.arrayOf(P.element)])}),U(ie,"defaultProps",{style:{},head:null,children:void 0,mountTarget:void 0,contentDidMount:()=>{},contentDidUpdate:()=>{},initialContent:'<!DOCTYPE html><html><head></head><body><div class="frame-root"></div></body></html>'});const it=h.forwardRef((n,t)=>e.jsxRuntimeExports.jsx(ie,{...n,forwardedRef:t})),ot=({children:n})=>{const{document:t}=ce(),[s]=i.useSelectedBlockIds(),[c,u]=i.useSelectedStylingBlocks();return h.useEffect(()=>{setTimeout(()=>{if(!x.isEmpty(c))return;const o=Se(t,x.first(s));if(o){const a=o.getAttribute("data-style-prop");if(a){const f=o.getAttribute("data-style-id"),j=o.getAttribute("data-block-parent");u([{id:f,prop:a,blockId:j}])}}},100)},[t,s,u,c]),e.jsxRuntimeExports.jsx("div",{id:"canvas",className:"relative h-screen max-w-full outline-2",children:n})},Se=(n,t)=>n.querySelector(`[data-block-id="${t}"]`),at=()=>{const{window:n}=ce(),[t,s]=i.useSelectedBlockIds(),[,c]=i.useSelectedStylingBlocks(),{undo:u,redo:o}=i.useCanvasHistory(),a=i.useDuplicateBlocks(),[,f]=i.useCutBlockIds(),[,j]=i.useCopyBlockIds(),{pasteBlocks:R}=i.usePasteBlocks(),[,p]=i.usePreviewMode(),d=i.useRemoveBlocks(),{savePage:g}=i.useSavePage(),[S]=Y.useAtom(i.inlineEditingActiveAtom),[,O]=Y.useAtom(i.editLayerNameAtom),w=B=>{B.key==="Enter"&&(B.preventDefault(),t.length===1&&O(x.first(t)))};return h.useEffect(()=>{const B=m=>{if(m.key==="Escape"){s([]),c([]);return}if(w(m),!S&&(m.key==="Delete"||m.key==="Backspace")&&(m.preventDefault(),d(t)),m.ctrlKey||m.metaKey){if(["z","y","d","x","c","p","s","v"].includes(m.key)){if(S&&["x","z","v"].includes(m.key))return!0;m.preventDefault()}m.key==="s"&&(m.stopPropagation(),m.preventDefault(),g()),m.key==="z"&&u(),m.key==="y"&&o(),m.key==="d"&&a(t),m.key==="x"&&f(t),m.key==="c"&&j(t),m.key==="v"&&t.length>0&&R(t[0])}};return n.removeEventListener("keydown",B),n.addEventListener("keydown",B),()=>{n.removeEventListener("keydown",B)}},[t,s,u,d,p,o,a,f,j,R,S,g,n]),null},ct=({block:n,label:t})=>{const[,s]=_e.useDrag(()=>({type:"CANVAS_BLOCK",item:n}));return e.jsxRuntimeExports.jsxs("div",{className:"mr-10 flex cursor-grab items-center space-x-1 px-1",ref:s,onDragStart:()=>{console.log("drag start")},children:[e.jsxRuntimeExports.jsx(M.DragHandleDots2Icon,{}),t]})},lt=({selectedBlockElement:n,block:t})=>{const s=i.useRemoveBlocks(),c=i.useDuplicateBlocks(),[,u]=i.useSelectedBlockIds(),[,o]=i.useSelectedStylingBlocks(),{floatingStyles:a,refs:f,update:j}=de.useFloating({placement:"top-start",middleware:[de.shift(),Me.flip()],elements:{reference:n}});Ne.useResizeObserver(n,()=>j(),n!==null);const R=x.get(t,"_parent",null),p=x.isEmpty(x.get(t,"_name",""))?x.get(t,"_type",""):x.get(t,"_name","");return!n||!t?null:e.jsxRuntimeExports.jsxs("div",{role:"button",tabIndex:0,ref:f.setFloating,style:a,onClick:d=>{d.stopPropagation(),d.preventDefault()},onKeyDown:d=>d.stopPropagation(),className:"z-50 flex h-6 items-center bg-blue-500 py-2 text-xs text-white",children:[e.jsxRuntimeExports.jsx(ct,{label:p,block:t}),e.jsxRuntimeExports.jsxs("div",{className:"flex gap-2 px-1 ",children:[R&&e.jsxRuntimeExports.jsx(M.ArrowUpIcon,{className:"hover:scale-105 ",onClick:()=>{o([]),u([R])}}),i.canDuplicateBlock(x.get(t,"_type",""))?e.jsxRuntimeExports.jsx(M.CopyIcon,{className:"hover:scale-105 ",onClick:()=>c([t==null?void 0:t._id])}):null,i.canDeleteBlock(x.get(t,"_type",""))?e.jsxRuntimeExports.jsx(M.TrashIcon,{className:"hover:scale-105 ",onClick:()=>s([t==null?void 0:t._id])}):null]})]})},ut=({model:n})=>{const[t]=i.useBrandingOptions(),[s]=i.useSelectedBlockIds(),[c]=i.useDarkMode(),[u]=i.useHighlightBlockId(),[o]=i.useSelectedStylingBlocks(),{document:a,window:f}=ce(),[j]=h.useState(a==null?void 0:a.getElementById("highlighted-block")),[R]=h.useState(a==null?void 0:a.getElementById("selected-block")),[p]=h.useState(a==null?void 0:a.getElementById("selected-styling-block"));h.useEffect(()=>{c?a==null||a.documentElement.classList.add("dark"):a==null||a.documentElement.classList.remove("dark")},[c,a]);const d=x.get(t,"headingFont","DM Sans"),g=x.get(t,"bodyFont","DM Sans");return h.useEffect(()=>{const S=x.get(t,"primaryColor","#000"),O=x.get(t,"secondaryColor","#FFF"),w=Le.tailwindcssPaletteGenerator({colors:[S,O],names:["primary","secondary"]});w.primary.DEFAULT=S,w.secondary.DEFAULT=O;const B=x.get(t,"roundedCorners","0");!f||!f.tailwind||(f.tailwind.config={darkMode:"class",theme:{fontFamily:{heading:[d],body:[g]},extend:{borderRadius:{global:`${B||"0"}px`},colors:w}},plugins:[f.tailwind.plugin.withOptions(({prefix:m="ui"}={})=>({addVariant:F})=>{for(const N of["open","checked","selected","active","disabled"])F(`${m}-${N}`,[`&[data-headlessui-state~="${N}"]`,`:where([data-headlessui-state~="${N}"]) &`]),F(`${m}-not-${N}`,[`&[data-headlessui-state]:not([data-headlessui-state~="${N}"])`,`:where([data-headlessui-state]:not([data-headlessui-state~="${N}"])) &:not([data-headlessui-state])`])})]})},[t,f,d,g]),h.useEffect(()=>{R&&(R.textContent=`${x.map(s,S=>`[data-block-id="${S}"]`).join(",")}{
43
- outline: 1px solid ${s.length===1?"#42a1fc":"orange"} !important; outline-offset: -1px;
44
- }`)},[s,R]),h.useEffect(()=>{j&&(j.textContent=u?`[data-style-id="${u}"]{ outline: 1px solid orange !important; outline-offset: -1px;}`:"")},[u,s,j]),h.useEffect(()=>{p&&(p.textContent=`${x.map(o,({id:S})=>`[data-style-id="${S}"]`).join(",")}{
45
- outline: 1px solid orange !important; outline-offset: -1px;
46
- }`)},[o,p]),h.useEffect(()=>{if(n==="section")return;const S=x.get(t,"bodyTextLightColor","#64748b"),O=x.get(t,"bodyTextDarkColor","#94a3b8"),w=x.get(t,"bodyBgLightColor","#FFFFFF"),B=x.get(t,"bodyBgDarkColor","#0f172a");a.body.className=`font-body antialiased text-[${S}] bg-[${w}] dark:text-[${O}] dark:bg-[${B}]`},[t,a,n]),n==="page"?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[d&&e.jsxRuntimeExports.jsx("link",{id:"heading-font",rel:"stylesheet",type:"text/css",href:`https://fonts.googleapis.com/css2?family=${d.replace(/ /g,"+")}:wght@300;400;500;600;700;800;900&display=swap`,media:"all"}),g&&d!==g&&e.jsxRuntimeExports.jsx("link",{id:"body-font",rel:"stylesheet",type:"text/css",href:`https://fonts.googleapis.com/css2?family=${g.replace(/ /g,"+")}:wght@300;400;500;600;700;800;900&display=swap`,media:"all"}),d&&e.jsxRuntimeExports.jsx("style",{children:`h1,h2,h3,h4,h5,h6{font-family: "${d}",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";}`})]}):null},dt=()=>{const{t:n}=je.useTranslation();return e.jsxRuntimeExports.jsx("div",{className:"my-auto py-24 text-center text-gray-600 dark:text-white",children:e.jsxRuntimeExports.jsx("h1",{className:"mb-10 text-4xl ",children:n("canvas_empty")})})},pt=n=>{const t={};return Object.keys(n).forEach(s=>{x.isString(n[s])&&n[s].startsWith(K.SLOT_KEY)&&(t[s]=n[s].replace(K.SLOT_KEY,"").split(","))}),t},ft=x.memoize(n=>{const t=n.replace(K.STYLES_KEY,"").split(",");return Fe.twMerge(t[0],t[1])});function xt(n,t){return x.get(n,`${t}_attrs`,{})}function ht(n,t,s,c){const u={};return Object.keys(n).forEach(o=>{if(x.isString(n[o])&&n[o].startsWith(K.STYLES_KEY)){const a=ft(n[o]);u[o]={className:a,"data-style-prop":o,"data-block-parent":n._id,"data-style-id":`${o}-${n._id}`,onMouseEnter:t,onMouseLeave:s,onClick:c,...xt(n,o)}}}),u}function mt(n,t){const s=x.get(n,"_bindings",{});return x.isEmpty(s)?{...n}:(x.each(s,(c,u)=>{x.isString(c)&&x.get(t,c,null)&&(n[u]=x.get(t,c,null))}),n)}function oe({blocks:n}){const t=i.useAllBlocks(),[,s]=i.useHighlightBlockId(),[,c]=i.useSelectedStylingBlocks(),[,u]=i.useSelectedBlockIds(),o=h.useCallback(p=>{var g;const d=(g=p.currentTarget)==null?void 0:g.getAttribute("data-style-id");s(d||""),p.stopPropagation()},[s]),a=h.useCallback(p=>{s(""),p.stopPropagation()},[s]),f=h.useCallback(p=>{p.stopPropagation();const d=p.currentTarget;if(d.getAttribute("data-block-parent")){const g=d.getAttribute("data-style-prop"),S=d.getAttribute("data-style-id"),O=d.getAttribute("data-block-parent");c([{id:S,prop:g,blockId:O}]),u([O])}else if(d.getAttribute("data-block-id")&&(u([d.getAttribute("data-block-id")]),d.getAttribute("data-block-parent"))){const g=d.getAttribute("data-style-prop"),S=d.getAttribute("data-style-id"),O=d.getAttribute("data-block-parent");c([{id:S,prop:g,blockId:O}])}},[c,u]),j=h.useCallback(p=>ht(p,o,a,f),[f,o,a]),[R]=V.useChaiExternalData();return e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:h.Children.toArray(n.map((p,d)=>{const g=pt(p),S={};x.isEmpty(g)||Object.keys(g).forEach(m=>{S[m]=h.Children.toArray(g[m].map(F=>e.jsxRuntimeExports.jsx(oe,{blocks:[x.find(t,{_id:F})]})))});const O=x.filter(t,{_parent:p._id});S.children=O.length?e.jsxRuntimeExports.jsx(oe,{blocks:O}):null;const w=$e.getBlockComponent(p._type),B=x.get(w,"component",null);return x.isNull(B)?e.jsxRuntimeExports.jsx("noscript",{children:`<!-- ${p==null?void 0:p._type} not registered -->`}):e.jsxRuntimeExports.jsx(h.Suspense,{children:h.createElement(B,{blockProps:{onClick:f,"data-block-id":p._id,"data-block-type":p._type},inBuilder:!0,index:d,...mt(p,R),...j(p),...S})})}))})}const yt=()=>{const n=i.useAllBlocks();return e.jsxRuntimeExports.jsx(We.Provider,{children:x.isEmpty(n)?e.jsxRuntimeExports.jsx(dt,{}):e.jsxRuntimeExports.jsx(V.BlocksExternalDataProvider,{children:e.jsxRuntimeExports.jsx(oe,{blocks:x.filter(n,t=>x.isEmpty(t._parent))})})})},gt=(n,t)=>n.querySelector(`[data-style-id="${t}"]`),vt=()=>{const[n]=Y.useAtom(i.networkModeAtom),[t]=i.usePreviewMode(),[s]=i.useCanvasWidth(),[,c]=i.useSelectedBlockIds(),u=i.useSelectedBlock(),[,o]=i.useHighlightBlockId(),a=h.useRef(null),f=h.useRef(null),[j,R]=h.useState({width:0,height:0}),p=Ze(j),[d,g]=h.useState(0),[S,O]=h.useState([]),[,w]=h.useState([]),[,B]=Y.useAtom(i.canvasIframeAtom),[m,F]=i.useSelectedStylingBlocks(),N=i.useBuilderProp("loadingCanvas",!1);h.useEffect(()=>{const{clientWidth:q,clientHeight:L}=f.current;R({width:q,height:L}),d===0&&g(q)},[f,s,d]);const G=(q,L=0)=>{const{top:W}=q.getBoundingClientRect();return W+L>=0&&W-L<=window.innerHeight};h.useEffect(()=>{var q,L;if(u&&u.type!=="Multiple"&&a.current){const W=Se(a.current.contentDocument,u._id);W&&(G(W)||(L=(q=a.current)==null?void 0:q.contentWindow)==null||L.scrollTo({top:W.offsetTop,behavior:"smooth"}),O([W]))}},[u]),h.useEffect(()=>{if(!x.isEmpty(m)&&a.current){const q=gt(a.current.contentDocument,x.first(m).id);w(q?[q]:[null])}else w([null])},[m]);const J=h.useMemo(()=>{let q=Xe;return n==="offline"&&(q=q.replace("https://old.chaibuilder.com/offline/tailwind.cdn.js","/offline/tailwind.cdn.js"),q=q.replace("https://unpkg.com/aos@next/dist/aos.css","/offline/aos.css"),q=q.replace("https://unpkg.com/aos@next/dist/aos.js","/offline/aos.js")),q},[n]);return e.jsxRuntimeExports.jsx("div",{onClick:()=>{c([]),F([])},onMouseLeave:()=>setTimeout(()=>o(""),300),className:"relative mx-auto h-full w-full",style:d>0&&!x.isEmpty(p)?{width:t?"100%":d}:{},ref:f,children:e.jsxRuntimeExports.jsxs(it,{contentDidMount:()=>B(a.current),ref:a,id:"canvas-iframe",style:{width:`${s}px`,...p},className:"relative mx-auto box-content h-full max-w-full shadow-lg transition-all duration-300 ease-linear",initialContent:J,children:[e.jsxRuntimeExports.jsx(at,{}),e.jsxRuntimeExports.jsx(lt,{block:u,selectedBlockElement:x.first(S)}),e.jsxRuntimeExports.jsx(ut,{model:"page"}),e.jsxRuntimeExports.jsxs(ot,{children:[N?e.jsxRuntimeExports.jsx("div",{className:"h-full p-4",children:e.jsxRuntimeExports.jsx(i.Skeleton,{className:"h-full"})}):e.jsxRuntimeExports.jsx(yt,{}),e.jsxRuntimeExports.jsx("div",{className:"h-60"})]})]})})},jt=h.lazy(()=>Promise.resolve().then(()=>require("./AddBlocks-RHuwwfe5.cjs"))),Et=()=>{const[n,t]=Y.useAtom(i.addBlocksModalAtom);return e.jsxRuntimeExports.jsxs("div",{className:"flex h-full w-full flex-col",children:[e.jsxRuntimeExports.jsx(Ve,{}),e.jsxRuntimeExports.jsxs("div",{className:"relative flex-1 overflow-hidden bg-slate-800/90 px-2 bg-[linear-gradient(to_right,#222_0.5px,transparent_0.5px),linear-gradient(to_bottom,#222_0.5px,transparent_0.5px)] bg-[size:12px_12px]",children:[e.jsxRuntimeExports.jsx(h.Suspense,{fallback:e.jsxRuntimeExports.jsx(i.Skeleton,{className:"h-full"}),children:e.jsxRuntimeExports.jsx(V.ErrorBoundary,{children:e.jsxRuntimeExports.jsx(vt,{})})}),n?e.jsxRuntimeExports.jsx("div",{onClick:()=>t(!1),className:"absolute inset-0 z-50 flex items-center bg-black/30 backdrop-blur-sm",children:e.jsxRuntimeExports.jsx("div",{onClick:s=>s.stopPropagation(),className:"mx-auto h-[90%] w-[90%] max-w-3xl rounded-md bg-white p-4 shadow-lg shadow-black/10 xl:w-[65%]",children:e.jsxRuntimeExports.jsx(jt,{})})}):null]})]})};exports.default=Et;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./jsx-runtime-WUGKV8jN.cjs"),u=require("lodash"),s=require("@radix-ui/react-icons"),f=require("react-dnd"),B=require("@minoru/react-dnd-treeview"),N=require("react-i18next"),r=require("./index-W5drgyWI.cjs"),O=require("lucide-react");require("./lib.cjs");const p=require("react"),A=require("./MODIFIERS-WFzDQfiT.cjs"),q=require("./utils-It2K33fU.cjs"),_=require("./index-fvoD_laH.cjs"),P=require("jotai");require("@radix-ui/react-toggle");require("class-variance-authority");require("@radix-ui/react-switch");require("@radix-ui/react-slot");require("@radix-ui/react-accordion");require("@radix-ui/react-alert-dialog");require("@radix-ui/react-dialog");require("@radix-ui/react-label");require("@radix-ui/react-scroll-area");require("@radix-ui/react-tabs");require("@radix-ui/react-tooltip");require("@radix-ui/react-popover");require("@radix-ui/react-menubar");require("@radix-ui/react-hover-card");require("@radix-ui/react-select");require("@radix-ui/react-dropdown-menu");require("@radix-ui/react-separator");require("@radix-ui/react-toast");require("cmdk");require("@radix-ui/react-context-menu");require("react-icons-picker");require("react-dom");require("react-quill");require("flat-to-nested");require("redux-undo");require("@chaibuilder/runtime");require("@react-hookz/web");require("himalaya");require("./functions-KMQYiBHf.cjs");require("@mhsdesign/jit-browser-tailwindcss");require("@bobthered/tailwindcss-palette-generator");require("@tailwindcss/forms");require("@tailwindcss/typography");require("@tailwindcss/aspect-ratio");require("@tailwindcss/line-clamp");require("./tailwind-config-OxLD7oFU.cjs");require("clsx");require("tailwind-merge");require("i18next");require("@floating-ui/react-dom");require("react-textarea-autosize");require("flagged");require("react-hotkeys-hook");require("sonner");const C=t=>{switch(t.type){case"Image":return e.jsxRuntimeExports.jsx(s.ImageIcon,{});case"Heading":return e.jsxRuntimeExports.jsx(s.HeadingIcon,{});case"Text":return e.jsxRuntimeExports.jsx(s.TextIcon,{});case"Link":return e.jsxRuntimeExports.jsx(s.Link1Icon,{});case"Video":return e.jsxRuntimeExports.jsx(s.VideoIcon,{});case"RichText":return e.jsxRuntimeExports.jsx(s.CursorTextIcon,{});case"Button":return e.jsxRuntimeExports.jsx(s.ButtonIcon,{});case"CustomHTML":return e.jsxRuntimeExports.jsx(s.CodeIcon,{});case"Divider":return e.jsxRuntimeExports.jsx(s.DividerHorizontalIcon,{});case"Icon":return e.jsxRuntimeExports.jsx(s.SketchLogoIcon,{});case"List":return e.jsxRuntimeExports.jsx(s.RowsIcon,{});case"Paragraph":return e.jsxRuntimeExports.jsx(s.TextIcon,{});case"Row":return e.jsxRuntimeExports.jsx(s.RowsIcon,{});case"ListItem":return e.jsxRuntimeExports.jsx(s.ColumnsIcon,{});case"LineBreak":return e.jsxRuntimeExports.jsx(s.SpaceBetweenVerticallyIcon,{});case"Form":return e.jsxRuntimeExports.jsx(s.GroupIcon,{});case"Checkbox":return e.jsxRuntimeExports.jsx(s.CheckboxIcon,{});case"FormButton":return e.jsxRuntimeExports.jsx(s.ButtonIcon,{});case"Input":case"TextArea":return e.jsxRuntimeExports.jsx(s.InputIcon,{});case"Radio":return e.jsxRuntimeExports.jsx(s.RadiobuttonIcon,{});case"Select":return e.jsxRuntimeExports.jsx(s.DropdownMenuIcon,{});case"Table":return e.jsxRuntimeExports.jsx(s.TableIcon,{});case"TableHead":return e.jsxRuntimeExports.jsx(s.BorderTopIcon,{});case"TableBody":return e.jsxRuntimeExports.jsx(s.BorderAllIcon,{});case"TableRow":return e.jsxRuntimeExports.jsx(s.ViewHorizontalIcon,{});case"TableCell":return e.jsxRuntimeExports.jsx(s.DragHandleHorizontalIcon,{});case"DataProvider":return e.jsxRuntimeExports.jsx(O.DatabaseIcon,{size:16});case"Box":return e.jsxRuntimeExports.jsx(s.BoxIcon,{});default:return e.jsxRuntimeExports.jsx(s.BoxModelIcon,{})}};function H(t=""){const n={xs:"390px",sm:"640px",md:"768px",lg:"1024px",xl:"1366px","2xl":"1536px"};if(new RegExp(/\bsr-only\b/).test(t))return"Sr Only";if(new RegExp(/\b(sm|md|lg|xl|2xl):hidden\b/).test(t))return"Visible on mobile";if(t.match(/(^| )hidden( |$)/g)){const c=new RegExp(/\b(sm|md|lg|xl|2xl):(block|grid|flex|inline|inline-grid|inline-flex|inline-block)\b/),l=t.match(c);if(u.nth(l,1))return`Visible >=${n[u.nth(l,1)]}`}return""}const L=t=>{let n="";return Object.keys(t).forEach(o=>{u.startsWith(t[o],A.STYLES_KEY)&&(n=t[o])}),n},F=t=>{var g;const[,n]=r.useHighlightBlockId(),[o]=r.useHiddenBlockIds(),{isSelected:x}=t,{id:c,data:l}=t.node,a=t.depth*10,m=d=>{d.stopPropagation(),t.onToggle(t.node.id)},E=B.useDragOver(c,t.isOpen,t.onToggle),j=p.useMemo(()=>{const d=L(t.node.data);return H(d)},[t.node.data]);return e.jsxRuntimeExports.jsx("div",{onMouseEnter:()=>n(c),className:q.cn("group flex w-full items-center justify-between space-x-px py-px ",x?"bg-blue-500 text-white":"hover:bg-gray-200 dark:hover:bg-gray-800"),onClick:d=>{d.stopPropagation(),!o.includes(c)&&t.onSelect(c)},onContextMenu:()=>t.onSelect(c),style:{paddingInlineStart:a},...E,children:e.jsxRuntimeExports.jsxs("div",{className:"flex items-center",children:[e.jsxRuntimeExports.jsx("div",{className:`flex h-4 w-4 rotate-0 transform cursor-pointer items-center justify-center text-xs transition-transform duration-100 ${t.isOpen?"rotate-90":""}`,children:t.node.droppable&&e.jsxRuntimeExports.jsx("button",{onClick:m,type:"button",children:e.jsxRuntimeExports.jsx(s.TriangleRightIcon,{})})}),e.jsxRuntimeExports.jsxs("button",{type:"button",className:"flex items-center",children:[e.jsxRuntimeExports.jsx("div",{className:"-mt-1 h-3 w-3",children:e.jsxRuntimeExports.jsx(C,{type:l==null?void 0:l._type})}),e.jsxRuntimeExports.jsx("div",{className:"ml-2 truncate text-[11px]",children:((g=t.node.data)==null?void 0:g._name)||t.node.text}),j?e.jsxRuntimeExports.jsxs("span",{className:"ml-2 flex items-center text-[10px] italic "+(x?"text-gray-200":"text-gray-500"),children:["(",j,")"]}):null]})]})})},V=t=>{var o;const{item:n}=t.monitorProps;return e.jsxRuntimeExports.jsxs("div",{className:"flex w-max items-center bg-blue-200 bg-opacity-30 p-1 font-semibold text-blue-700",children:[e.jsxRuntimeExports.jsx("div",{className:"",children:e.jsxRuntimeExports.jsx(C,{type:(o=n==null?void 0:n.data)==null?void 0:o._type})}),e.jsxRuntimeExports.jsx("div",{className:"ml-2 truncate text-[11px]",children:n.text})]})},z=t=>{const n=t.depth*10+16;return e.jsxRuntimeExports.jsx("div",{className:"absolute right-0 top-0 h-0.5 -translate-y-1/2 transform bg-green-500",style:{left:n}})},G=p.lazy(()=>Promise.resolve().then(()=>require("./MarkAsGlobalBlock-EOsABFjY.cjs"))),$=()=>{const[t]=r.useSelectedBlockIds(),[,n]=r.useCutBlockIds();return e.jsxRuntimeExports.jsxs(r.ContextMenuItem,{className:"flex items-center gap-x-4 text-xs",onClick:()=>n(t),children:[e.jsxRuntimeExports.jsx(s.ScissorsIcon,{})," Cut"]})},K=()=>{const[t]=r.useSelectedBlockIds(),[,n]=r.useCopyBlockIds();return e.jsxRuntimeExports.jsxs(r.ContextMenuItem,{className:"flex items-center gap-x-4 text-xs",onClick:()=>n(t),children:[e.jsxRuntimeExports.jsx(s.ClipboardIcon,{})," Copy"]})},Q=()=>{const[t]=r.useSelectedBlockIds(),n=r.useRemoveBlocks(),o=r.useSelectedBlock();return e.jsxRuntimeExports.jsxs(r.ContextMenuItem,{disabled:(o==null?void 0:o._type)==="Slot",className:"flex items-center gap-x-4 text-xs",onClick:()=>n(t),children:[e.jsxRuntimeExports.jsx(s.TrashIcon,{})," Remove"]})},U=({id:t=null,openMarkAsGlobalModal:n})=>{const[o]=r.useSelectedBlockIds(),x=r.useDuplicateBlocks(),{pasteBlocks:c,canPaste:l}=r.usePasteBlocks(),a=r.useBuilderProp("globalBlocksSupport",!1),m=p.useCallback(()=>{x(o)},[o,x]);return e.jsxRuntimeExports.jsxs(r.ContextMenuContent,{className:"text-xs",children:[a&&e.jsxRuntimeExports.jsx(r.ContextMenuItem,{className:"flex items-center gap-x-4 border-b text-xs",onClick:n,children:e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-4",children:[e.jsxRuntimeExports.jsx(s.GlobeIcon,{})," Mark as global"]})}),e.jsxRuntimeExports.jsxs(r.ContextMenuItem,{className:"flex items-center gap-x-4 text-xs",onClick:m,children:[e.jsxRuntimeExports.jsx(s.CopyIcon,{})," Duplicate"]}),e.jsxRuntimeExports.jsx($,{}),e.jsxRuntimeExports.jsx(K,{}),e.jsxRuntimeExports.jsxs(r.ContextMenuItem,{className:"flex items-center gap-x-4 text-xs",onClick:()=>c(t),disabled:!l,children:[e.jsxRuntimeExports.jsx(s.ClipboardCopyIcon,{})," Paste"]}),e.jsxRuntimeExports.jsx(Q,{})]})},Y=({children:t,id:n=null})=>{const[o,x]=p.useState(!1);return e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(r.Dialog,{open:o,onOpenChange:x,children:o&&e.jsxRuntimeExports.jsx(r.DialogContent,{children:e.jsxRuntimeExports.jsx(p.Suspense,{fallback:e.jsxRuntimeExports.jsx("div",{className:"h-96 w-full animate-pulse bg-gray-200"}),children:e.jsxRuntimeExports.jsx(G,{closeModal:()=>x(!1),id:n})})})}),e.jsxRuntimeExports.jsxs(r.ContextMenu,{children:[e.jsxRuntimeExports.jsx(r.ContextMenuTrigger,{children:t}),e.jsxRuntimeExports.jsx(U,{id:n,openMarkAsGlobalModal:()=>x(!0)})]})]})},W=()=>{const{addCoreBlock:t}=r.useAddBlock(),n=r.useBuilderProp("getExternalPredefinedBlock");return p.useCallback(async o=>{const{block:x,dropTargetId:c,relativeIndex:l}=o;if(u.has(x,"format")){const a=await n(x);return t({blocks:a},c===0?null:c,l)}return t(x,c===0?null:c,l)},[t])};function J(t){return u.map(t,n=>{const{data:o}=n;return{...o,_parent:n.parent===0?null:n.parent}})}const X=()=>{const t=r.useAllBlocks(),[n]=r.useSetAllBlocks(),[o,x,c]=r.useSelectedBlockIds(),[,l]=r.useSelectedStylingBlocks(),{t:a}=N.useTranslation(),{createSnapshot:m}=r.useCanvasHistory(),E=_.useExpandedIds(),j=W(),[,g]=P.useAtom(r.addBlocksModalAtom),d=async(i,R)=>{const{dragSource:h,destinationIndex:b,relativeIndex:k,dropTargetId:T,monitor:D}=R,M=J(i);n(M),h?m():(await j({block:D.getItem(),dropTargetId:T,destinationIndex:b,relativeIndex:k}),g(!1))},y=u.map(t,i=>({id:i._id,text:i._type,parent:i._parent||0,droppable:!u.isUndefined(u.find(t,{_parent:i._id})),data:i})),v=()=>{x([]),l([])},[{isOver:I},S]=f.useDrop(()=>({accept:["CHAI_BLOCK"],collect:i=>({canDrop:i.canDrop(),isOver:i.isOver()}),drop:i=>{(async()=>(await j({block:i,dropTargetId:"",destinationIndex:0,relativeIndex:0}),g(!1)))()}})),{isDragging:w}=f.useDragLayer(i=>({isDragging:i.isDragging()}));return e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsx("div",{onClick:()=>v(),className:q.cn("-mx-1 -mt-1 flex h-full select-none flex-col space-y-1",w?"bg-green-50/80":"bg-background"),children:u.isEmpty(t)?e.jsxRuntimeExports.jsxs("div",{ref:S,className:`mx-1 mt-4 max-w-full h-full p-6 text-center text-sm text-gray-400 ${I?"bg-blue-200":""}`,children:[I?e.jsxRuntimeExports.jsx(s.DoubleArrowDownIcon,{className:"mx-auto h-12 w-12 animate-bounce"}):e.jsxRuntimeExports.jsx(s.StackIcon,{className:"mx-auto h-10 w-10"}),e.jsxRuntimeExports.jsx("p",{className:"mt-2",children:a(I?"drop_here_message":"tree_view_no_blocks")})]}):e.jsxRuntimeExports.jsx(r.ScrollArea,{id:"layers-view",className:"no-scrollbar h-full overflow-y-auto p-1",children:e.jsxRuntimeExports.jsx(B.Tree,{initialOpen:E,extraAcceptTypes:["CHAI_BLOCK"],tree:y,rootId:0,render:(i,{depth:R,isOpen:h,onToggle:b})=>e.jsxRuntimeExports.jsx(Y,{id:i.id,children:e.jsxRuntimeExports.jsx(F,{onSelect:k=>{l([]),x([k])},isSelected:u.includes(o,i.id),node:i,depth:R,isOpen:h,onToggle:b,toggleIds:c})}),dragPreviewRender:i=>e.jsxRuntimeExports.jsx(V,{monitorProps:i}),onDrop:d,classes:{root:"h-full pt-2",draggingSource:"opacity-30",dropTarget:"bg-green-100",placeholder:"relative"},sort:!1,insertDroppableFirst:!1,canDrop:r.canDropBlock,dropTargetOffset:2,enableAnimateExpand:!0,placeholderRender:(i,{depth:R})=>e.jsxRuntimeExports.jsx(z,{node:i,depth:R})})})})})};exports.default=X;
@@ -1 +0,0 @@
1
- "use strict";var le=Object.create;var z=Object.defineProperty;var ae=Object.getOwnPropertyDescriptor;var ue=Object.getOwnPropertyNames;var pe=Object.getPrototypeOf,de=Object.prototype.hasOwnProperty;var xe=(s,n,r,i)=>{if(n&&typeof n=="object"||typeof n=="function")for(let l of ue(n))!de.call(s,l)&&l!==r&&z(s,l,{get:()=>n[l],enumerable:!(i=ae(n,l))||i.enumerable});return s};var ce=(s,n,r)=>(r=s!=null?le(pe(s)):{},xe(n||!s||!s.__esModule?z(r,"default",{value:s,enumerable:!0}):r,s));Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./jsx-runtime-WUGKV8jN.cjs"),c=require("react"),_=require("@react-hookz/web"),t=require("lodash"),ee=require("react-i18next"),d=require("@radix-ui/react-icons"),o=require("./index-W5drgyWI.cjs"),me=require("@rjsf/core"),ge=require("@rjsf/validator-ajv8"),he=require("./controls-aHZq-q4b.cjs"),W=require("lucide-react"),X=require("@chaibuilder/runtime"),O=require("./index-fvoD_laH.cjs"),ye=require("jotai"),je=require("react-autosuggest"),be=require("fuse.js"),V=require("./utils-It2K33fU.cjs"),fe=require("./MODIFIERS-WFzDQfiT.cjs");require("@radix-ui/react-toggle");require("class-variance-authority");require("@radix-ui/react-switch");require("@radix-ui/react-slot");require("@radix-ui/react-accordion");require("@radix-ui/react-alert-dialog");require("@radix-ui/react-dialog");require("@radix-ui/react-label");require("@radix-ui/react-scroll-area");require("@radix-ui/react-tabs");require("@radix-ui/react-tooltip");require("@radix-ui/react-popover");require("@radix-ui/react-menubar");require("@radix-ui/react-hover-card");require("@radix-ui/react-select");require("@radix-ui/react-dropdown-menu");require("@radix-ui/react-separator");require("@radix-ui/react-toast");require("cmdk");require("@radix-ui/react-context-menu");require("react-icons-picker");require("react-dom");require("react-quill");require("flat-to-nested");require("redux-undo");require("i18next");require("clsx");require("@floating-ui/react-dom");require("react-textarea-autosize");require("flagged");require("react-dnd");require("@minoru/react-dnd-treeview");require("./lib.cjs");require("himalaya");require("./functions-KMQYiBHf.cjs");require("@mhsdesign/jit-browser-tailwindcss");require("@bobthered/tailwindcss-palette-generator");require("@tailwindcss/forms");require("@tailwindcss/typography");require("@tailwindcss/aspect-ratio");require("@tailwindcss/line-clamp");require("./tailwind-config-OxLD7oFU.cjs");require("tailwind-merge");require("react-hotkeys-hook");require("sonner");function ve(s){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const r in s)if(r!=="default"){const i=Object.getOwnPropertyDescriptor(s,r);Object.defineProperty(n,r,i.get?i:{enumerable:!0,get:()=>s[r]})}}return n.default=s,Object.freeze(n)}const M=ve(c),Re=c.lazy(()=>import("react-json-view"));function Ee(s){const n=[],r={};function i(l,u){t.forEach(u,(x,p)=>{const a=l?`${l}.${p}`:p,g=t.isArray(x)?"list":typeof x;n.push(a),r[a]=g==="string"?"text":g==="object"?"model":g,g==="object"&&!t.isArray(x)&&i(a,x)})}return i("",t.omit(s,["styles","_type","_id","_name","_bindings"])),{paths:n,pathsType:r}}const F=({data:s,fullView:n})=>{if(!s)return null;const r=typeof s;return n?typeof s=="object"?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx("div",{className:"h-3"}),e.jsxRuntimeExports.jsx(O.ErrorBoundary,{children:e.jsxRuntimeExports.jsx(Re,{style:{maxHeight:"40vh",overflowY:"auto"},name:"Content",enableClipboard:!1,displayObjectSize:!1,displayDataTypes:!1,src:s,collapsed:!0})})]}):e.jsxRuntimeExports.jsxs("div",{className:"text-gray-800/50 text-[12px] leading-4 w-full max-h-36 overflow-x-hidden overflow-y-auto",children:[e.jsxRuntimeExports.jsx("span",{className:"font-medium text-gray-800/80",children:"Content: "}),s]}):e.jsxRuntimeExports.jsx("div",{className:"text-[10px] text-gray-800/50 leading-3 whitespace-nowrap overflow-hidden w-full",children:t.truncate(r==="object"?JSON.stringify(s):s,{length:40})})},U=({type:s,value:n="",setValue:r,data:i,onChange:l,dataType:u,appliedBindings:x})=>{const{paths:p,pathsType:a}=Ee(i),g=s==="PROP"?X.getBlockComponent(i==null?void 0:i._type):{},h=s==="PROP",[m,b]=c.useState(!1),j=c.useMemo(()=>s==="PROP"?p.filter(y=>!t.includes(x,y)&&t.get(g,`props.${t.first(t.split(y,"."))}.binding`)):p.filter(y=>u===t.get(a,y,"")),[s,p,x,u,g]);return c.useEffect(()=>{n&&l(n)},[n,s]),e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs("div",{className:"flex items-center space-x-4",children:[e.jsxRuntimeExports.jsx("p",{className:"text-sm text-muted-foreground",children:t.startCase(t.toLower(s))}),e.jsxRuntimeExports.jsxs(o.Popover,{open:m,onOpenChange:b,children:[e.jsxRuntimeExports.jsx(o.PopoverTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsx(o.Button,{variant:"outline",size:"sm",className:` ${t.isEmpty(n)?"bg-blue-500 text-gray-100 hover:bg-blue-400 hover:text-white w-44 justify-center":"min-w-[350px] justify-between items-center"}`,children:n?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs("span",{className:"text-sm pr-8",children:[h&&e.jsxRuntimeExports.jsx("span",{className:"text-[10px] text-purple-500 bg-purple-100 px-2 py-0.5 mr-2 rounded-full",children:t.startCase(u)}),n]}),e.jsxRuntimeExports.jsx("span",{className:"text-[9px] text-blue-400 underline cursor-pointer hover:text-blue-700",children:"Change"})]}):e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:["+ Set ",t.startCase(t.toLower(s))]})})}),e.jsxRuntimeExports.jsx(o.PopoverContent,{className:"p-0 z-[999] min-w-[300px]",side:"right",align:"start",children:e.jsxRuntimeExports.jsxs(o.Command,{children:[e.jsxRuntimeExports.jsx(o.CommandInput,{placeholder:`Choose ${t.toLower(s)}...`}),e.jsxRuntimeExports.jsxs(o.CommandList,{children:[e.jsxRuntimeExports.jsx(o.CommandEmpty,{children:"No results found."}),e.jsxRuntimeExports.jsx(o.CommandGroup,{children:t.map(j,y=>e.jsxRuntimeExports.jsxs(o.CommandItem,{value:y,className:`cursor-pointer ${h?"flex justify-between items-center":"flex flex-col items-start justify-start"}`,onSelect:v=>{r(t.find(j,C=>C===v)||null),b(!1)},children:[e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2",children:[e.jsxRuntimeExports.jsx(W.Check,{className:`w-4 h-4 text-green-500 ${n===y?"":"opacity-0"}`}),y]}),h?e.jsxRuntimeExports.jsx("div",{children:e.jsxRuntimeExports.jsx("span",{className:"text-[10px] text-purple-500 bg-purple-100 px-2 py-0.5 rounded-full",children:t.startCase(t.get(a,y,""))})}):e.jsxRuntimeExports.jsx("div",{className:"pl-6",children:e.jsxRuntimeExports.jsx(F,{data:t.get(i,y)})})]},y))})]})]})})]})]}),!h&&!t.isEmpty(n)&&e.jsxRuntimeExports.jsx("div",{className:"pt-2",children:e.jsxRuntimeExports.jsx(F,{data:t.get(i,n,""),fullView:!0})})]})},we=({appliedBindings:s=[],onAddBinding:n,editMode:r,item:i})=>{const[l,u]=c.useState(r?i.key:""),[x,p]=c.useState(r?i.value:""),a=o.useSelectedBlock(),[g]=O.useChaiExternalData(),h=c.useCallback((j,y)=>{if(t.isEmpty(j))return"";{const v=t.get(y==="PROP"?a:g,j,"");if(t.isArray(v))return"list";const C=typeof v;return C==="string"?"text":C==="object"?"model":C}},[a,g]),[m,b]=c.useState(r?h(i.key,"PROP"):"");return e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs(o.DialogHeader,{children:[e.jsxRuntimeExports.jsx(o.DialogTitle,{children:"Add Data Binding"}),e.jsxRuntimeExports.jsx(o.DialogDescription,{className:"text-xs",children:"Add prop and path of binding. Click save when you're done."})]}),e.jsxRuntimeExports.jsxs("div",{className:"flex flex-col gap-1 relative",children:[e.jsxRuntimeExports.jsx(U,{type:"PROP",isDisabled:!1,placeholder:"Enter prop key",value:l,setValue:u,onChange:j=>{const y=h(j,"PROP");u(j),m!==y&&p(""),b(y)},data:a,dataType:m,appliedBindings:s}),e.jsxRuntimeExports.jsx("div",{className:"h-2"}),e.jsxRuntimeExports.jsx(U,{type:"PATH",isDisabled:t.isEmpty(l),placeholder:"Enter data path",value:x,setValue:p,onChange:j=>{const y=h(j,"PATH");p(m===y?j:"")},data:g,dataType:m,appliedBindings:s})]}),e.jsxRuntimeExports.jsx(o.DialogFooter,{children:e.jsxRuntimeExports.jsx(o.Button,{type:"submit",className:"mt-4",disabled:t.isEmpty(l)&&t.isEmpty(x),onClick:()=>n({key:l,value:x}),children:"Save"})})]})},te=({disabled:s,children:n,onAddBinding:r,appliedBindings:i,editMode:l=!0,item:u={}})=>{const[x,p]=c.useState(!1);return e.jsxRuntimeExports.jsxs(o.Dialog,{children:[e.jsxRuntimeExports.jsx(o.DialogTrigger,{disabled:s,asChild:!0,onClick:()=>p(!0),children:n}),x&&e.jsxRuntimeExports.jsx(o.DialogContent,{children:e.jsxRuntimeExports.jsx(we,{item:u,editMode:l,appliedBindings:i,onAddBinding:a=>{r(a),p(!1)}})})]})},Ce=({item:s,onAddBinding:n,onRemove:r,selectedBlock:i,dataProvider:l,appliedBindings:u})=>{const[x,p]=c.useState("string"),a=(g,h)=>{if(t.isEmpty(g))return"";{const m=t.get(h==="PROP"?i:l,g,"");if(t.isArray(m))return"list";const b=typeof m;return b==="string"?"text":b==="object"?"model":b}};return c.useEffect(()=>p(()=>a(s.key,"PROP")),[s.key]),e.jsxRuntimeExports.jsxs("div",{className:"flex flex-col border border-gray-200 relative rounded-md p-2",children:[e.jsxRuntimeExports.jsx("div",{className:"text-gray-500 font-normal text-sm",children:s.key}),e.jsxRuntimeExports.jsx("div",{className:"font-medium leading-5",children:s.value}),e.jsxRuntimeExports.jsx(F,{data:t.get(l,s.value,"")}),e.jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-end gap-x-2",children:[e.jsxRuntimeExports.jsx(te,{editMode:!0,onAddBinding:n,appliedBindings:u,item:s,children:e.jsxRuntimeExports.jsx(W.EditIcon,{className:"h-6 w-6 mt-1 cursor-pointer rounded border hover:bg-blue-400 hover:text-white border-blue-400 p-1 text-blue-400 hover:scale-105 duration-200"})}),e.jsxRuntimeExports.jsx(W.TrashIcon,{onClick:()=>r(),className:"h-6 w-6 mt-1 cursor-pointer rounded border hover:bg-red-400 hover:text-white border-red-400 p-1 text-red-400 hover:scale-105 duration-200"})]}),!t.isEmpty(x)&&!t.isEmpty(s.key)&&e.jsxRuntimeExports.jsx("div",{className:"mt-px absolute right-0 top-1 text-purple-600 text-[10px] flex items-center font-medium h-4 px-2 rounded-full",children:t.startCase(x)})]})},ke=({bindingData:s,onChange:n})=>{const r=o.useSelectedBlock(),[i]=O.useChaiExternalData(),l=X.getChaiDataProviders(),[u,x]=c.useState(t.map(s,(m,b)=>({key:b,value:m})));c.useEffect(()=>{x(t.map(s,(m,b)=>({key:b,value:m})))},[r==null?void 0:r._id]);const p=c.useMemo(()=>{if(t.isEmpty(i))return!0;if(t.isEmpty(u))return!1;const m=t.last(u);return t.isEmpty(m==null?void 0:m.key)||t.isEmpty(m==null?void 0:m.value)},[i,u]),a=m=>{const b=t.filter(u,j=>j.key!==m.key);x([...b,m]),h([...b,m])},g=m=>{const b=t.filter(u,(j,y)=>m!==y);h([...b])},h=c.useCallback((m=[])=>{if(x(m),t.isEmpty(m)){n({});return}const b={};t.forEach(m,j=>{!t.isEmpty(j==null?void 0:j.key)&&!t.isEmpty(j==null?void 0:j.value)&&t.set(b,j.key,j.value)}),n(b)},[n]);return t.isEmpty(l)?e.jsxRuntimeExports.jsx("div",{className:"w-full flex items-center justify-center",children:e.jsxRuntimeExports.jsxs("p",{className:"text-gray-500 mb-1.5 text-xs",children:["You have no data providers registered. Please add a data provider to your project. ",e.jsxRuntimeExports.jsx("br",{}),e.jsxRuntimeExports.jsx("a",{className:"text-blue-500",href:"https://chaibuilder.com/docs/registering-data-providers",target:"_blank",children:"Learn more"})]})}):e.jsxRuntimeExports.jsxs("div",{className:"space-y-2",children:[t.map(u,(m,b)=>e.jsxRuntimeExports.jsx(Ce,{item:m,onAddBinding:a,onRemove:()=>g(b),selectedBlock:r,dataProvider:i,appliedBindings:t.map(u,"key")},m.key)),e.jsxRuntimeExports.jsxs(o.Tooltip,{delayDuration:200,children:[e.jsxRuntimeExports.jsx(o.TooltipTrigger,{className:"w-full",children:e.jsxRuntimeExports.jsx(te,{disabled:p,appliedBindings:t.map(u,"key"),onAddBinding:a,children:e.jsxRuntimeExports.jsx("span",{className:`w-full px-5 py-1.5 text-xs rounded-md font-medium duration-200 ${p?"cursor-not-allowed bg-gray-200 text-gray-400":"bg-blue-700/20 text-blue-800 hover:bg-blue-700/30"}`,children:t.isEmpty(i)?e.jsxRuntimeExports.jsx("small",{className:"text-gray-500 text-[9.5px]",children:"No data provider has been set up for this page"}):"+ Add Data Binding"})})}),p&&e.jsxRuntimeExports.jsx(o.TooltipContent,{sideOffset:-55,className:"text-[11px]",children:t.isEmpty(i)?"No data provider has been set up for this page.":"Complete last added data binding to add more"})]})]})},Ne=()=>e.jsxRuntimeExports.jsx("div",{className:"text-xs border rounded-sm p-1 mt-1 border-orange-500 text-orange-500 bg-orange-100",children:"Data binding is set for this field"}),G=c.memo(({createHistorySnapshot:s,properties:n,formData:r,onChange:i})=>{const[l]=o.useActiveLanguage(),u={type:"object",properties:{}},x={};return Object.keys(n).forEach(p=>{const a=n[p];if(t.includes(["slot","styles"],a.type))return;const g=t.get(a,"i18n",!1)?`${p}-${l}`:p;u.properties[g]=o.getBlockJSONFromSchemas(a,l),x[g]=o.getBlockJSONFromUISchemas(a,l)}),e.jsxRuntimeExports.jsx(me,{widgets:{binding:Ne,richtext:o.RichTextEditorField,icon:o.IconPickerField,image:o.ImagePickerField},fields:{link:o.LinkField},idSeparator:".",autoComplete:"off",omitExtraData:!1,liveOmit:!1,liveValidate:!0,validator:ge,uiSchema:x,onBlur:s,schema:u,formData:r,onChange:i})});function Se(){const s=o.useSelectedBlock(),{createSnapshot:n}=o.useCanvasHistory(),r=o.useUpdateBlocksPropsRealtime(),i=X.getBlockComponent(s._type),l={...s},u=()=>n(),x=({formData:h},m)=>{if(m){const b=m.replace("root.","");r([s._id],{[b]:t.get(h,b)})}},p={_name:he.u({title:"Name",default:t.get(s,"_name",s._type)})},a=t.keys(t.get(l,"_bindings",{})),g=c.useMemo(()=>{const h=t.cloneDeep(t.get(i,"props",{}));return t.each(a,m=>{delete h[m]}),h},[i,a]);return e.jsxRuntimeExports.jsxs("div",{className:"overflow-x-hidden",children:[e.jsxRuntimeExports.jsx(G,{onChange:x,createHistorySnapshot:u,formData:l,properties:p}),e.jsxRuntimeExports.jsx("hr",{className:"mt-4"}),e.jsxRuntimeExports.jsxs(o.Accordion,{type:"multiple",defaultValue:["STATIC","BINDING"],className:"h-full w-full",children:[e.jsxRuntimeExports.jsxs(o.AccordionItem,{value:"BINDING",children:[e.jsxRuntimeExports.jsx(o.AccordionTrigger,{className:"px-3 py-2 text-xs hover:no-underline bg-gray-100 ml-1",children:e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2",children:[e.jsxRuntimeExports.jsx("div",{className:`h-[8px] w-[8px] rounded-full ${t.isEmpty(t.get(s,"_bindings",{}))?"bg-gray-300":"bg-blue-500"}`}),"Data Binding"]})}),e.jsxRuntimeExports.jsx(o.AccordionContent,{className:"pt-4 px-4",children:e.jsxRuntimeExports.jsx(ke,{bindingData:t.get(l,"_bindings",{}),onChange:h=>{x({formData:{...l,_bindings:h}},"root._bindings")}})})]}),e.jsxRuntimeExports.jsxs(o.AccordionItem,{value:"STATIC",children:[e.jsxRuntimeExports.jsx(o.AccordionTrigger,{className:"px-3 py-2 text-xs hover:no-underline bg-gray-100 ml-1",children:e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2",children:[e.jsxRuntimeExports.jsx("div",{className:"h-[8px] w-[8px] rounded-full bg-blue-500"}),"Static Content"]})}),e.jsxRuntimeExports.jsxs(o.AccordionContent,{className:"pt-4",children:[t.isEmpty(a)?"":e.jsxRuntimeExports.jsxs("div",{className:"text-xs mx-4 border rounded-sm p-1 mb-1 mt-0 border-orange-500 text-orange-500 bg-orange-100",children:["Data binding is set for ",e.jsxRuntimeExports.jsx("b",{children:t.map(a,t.capitalize).join(", ")})," ",a.length===1?"property":"properties",". Remove data binding to edit static content."]}),e.jsxRuntimeExports.jsx(G,{onChange:x,createHistorySnapshot:u,formData:l,properties:g})]})]})]}),e.jsxRuntimeExports.jsx("div",{className:"pb-60"})]})}const K=new be(V.ALL_TW_CLASSES,{isCaseSensitive:!1,threshold:.2,minMatchCharLength:2,keys:["name"]});function Te(){var S;const[s]=o.useSelectedStylingBlocks(),n=o.useSelectedBlock(),r=o.useAddClassesToBlocks(),i=o.useRemoveClassesFromBlocks(),[l]=o.useSelectedBlockIds(),[u,x]=c.useState(""),p=(S=t.first(s))==null?void 0:S.prop,a=t.reject((t.get(n,p,"").replace(fe.STYLES_KEY,"").split(",").pop()||"").split(" "),t.isEmpty),g=()=>{const E=u.trim().toLowerCase().replace(/ +(?= )/g,"").split(" ");r(l,E,!0),x("")},[h,m]=c.useState([]),b=({value:E})=>{const B=E.trim().toLowerCase(),T=B.match(/.+:/g);let w=[];if(T&&T.length>0){const[I]=T,H=B.replace(I,"");w=K.search(H).map(f=>({...f,item:{...f.item,name:I+f.item.name}}))}else w=K.search(B);m(t.map(w,"item"))},j=()=>{m([])},y=E=>E.name,v=E=>e.jsxRuntimeExports.jsx("div",{className:"rounded-md p-1",children:E.name}),C={autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:!1,placeholder:"Enter class name",value:u,onKeyDown:E=>{E.key==="Enter"&&u.trim()!==""&&g()},onChange:(E,{newValue:B})=>x(B),className:"w-full rounded-md text-xs px-2 hover:outline-0 bg-background border-border py-1"};return e.jsxRuntimeExports.jsxs("div",{className:`no-scrollbar flex ${h.length>0?"min-h-[300px]":"min-h-max"} w-full flex-col gap-y-5 overflow-y-auto bg-gray-100 px-px`,children:[e.jsxRuntimeExports.jsx(o.Label,{className:"mt-2",children:"Add Tailwind classes"}),e.jsxRuntimeExports.jsxs("div",{className:"relative -mt-4 flex items-center gap-x-3",children:[e.jsxRuntimeExports.jsx("div",{className:"relative flex w-full items-center gap-x-3",children:e.jsxRuntimeExports.jsx(je,{suggestions:h,onSuggestionsFetchRequested:b,onSuggestionsClearRequested:j,getSuggestionValue:y,renderSuggestion:v,inputProps:C,containerProps:{className:"relative h-8 w-full gap-y-1 py-1 border-gray-600"},theme:{suggestion:"bg-transparent",suggestionHighlighted:"bg-gray-700 ",suggestionsContainerOpen:"absolute bg-gray-100 z-50 max-h-[230px] overflow-y-auto w-full border border-gray-600 rounded-md"}})}),e.jsxRuntimeExports.jsx(o.Button,{variant:"outline",className:"h-6 border-gray-700",onClick:g,disabled:u.trim()==="",size:"sm",children:e.jsxRuntimeExports.jsx(d.PlusIcon,{})})]}),e.jsxRuntimeExports.jsxs("div",{className:"flex w-full flex-wrap gap-2",children:[t.isEmpty(a)&&e.jsxRuntimeExports.jsx("div",{className:"flex h-10 w-full items-center justify-center text-center text-sm text-gray-400",children:"No class added"}),M.Children.toArray(a.map(E=>e.jsxRuntimeExports.jsxs("div",{className:"group relative flex cursor-default items-center gap-x-1 rounded-full border border-blue-600 bg-blue-500 p-px px-1.5 text-[11px] text-white hover:border-blue-900",children:[E,e.jsxRuntimeExports.jsx(d.Cross2Icon,{onClick:()=>i(l,[E]),className:"invisible absolute right-1 hover:text-white group-hover:visible group-hover:cursor-pointer"})]},E)))]})]})}const N=["px","%","em","rem","ch","vh","vw"],Ie={heading:"Flex Child",items:[{type:"arbitrary",label:"Basis",units:N,property:"flexBasis"},{type:"range",label:"Order",property:"order"},{type:"dropdown",label:"Flex",property:"flexGrowShrink"},{type:"dropdown",label:"Grow",property:"flexGrow"},{type:"dropdown",label:"Shrink",property:"flexShrink"}]},Be={heading:"Grid Child",items:[{type:"range",label:"Col Span",property:"gridColSpan"},{type:"range",label:"Col Start",property:"gridColStart"},{type:"range",label:"Col End",property:"gridColEnd"},{type:"range",label:"Row Span",property:"gridRowSpan"},{type:"range",label:"Row Start",property:"gridRowStart"},{type:"range",label:"Row End",property:"gridRowEnd"},{type:"range",label:"Order",property:"order"}]},Ae=[{heading:"Display",items:[{type:"dropdown",label:"Display",property:"display",units:N},{styleType:"accordion",heading:"Flex options",items:[{type:"dropdown",label:"Direction",property:"flexDirection"},{type:"dropdown",label:"Wrap",property:"flexWrap"},{type:"dropdown",label:"Justify",property:"justifyContent"},{type:"dropdown",label:"Content",property:"alignContent"},{type:"dropdown",label:"Items",property:"alignItems"},{styleType:"multiple",label:"Gap",options:[{key:"gap",label:"All"},{key:"gapX",label:"Left-Right"},{key:"gapY",label:"Top-Bottom"}]}],conditions:{display:"flex"}},{styleType:"accordion",heading:"Grid options",items:[{type:"range",label:"Columns",property:"gridColumns"},{type:"range",label:"Rows",property:"gridRows"},{type:"dropdown",label:"Auto Flow",property:"gridAutoFlow"},{type:"dropdown",label:"Auto Cols",property:"gridAutoColumns"},{type:"dropdown",label:"Auto Rows",property:"gridAutoRows"},{type:"dropdown",label:"Justify",property:"justifyContent"},{type:"dropdown",label:"Content",property:"alignContent"},{type:"dropdown",label:"Items",property:"alignItems"},{styleType:"multiple",label:"Gap",units:["px","rem"],options:[{key:"gap",label:"All"},{key:"gapX",label:"Left-Right"},{key:"gapY",label:"Top-Bottom"}]}],conditions:{display:"grid"}},{styleType:"accordion",heading:"Visibility & Opacity",items:[{type:"dropdown",label:"Visibility",property:"visibility",units:N},{type:"arbitrary",label:"Opacity",property:"opacity",units:["-"]}]}]},{heading:"Spacing",items:[{styleType:"multiple",label:"Margin",negative:!0,units:[...N,"auto"],options:[{key:"margin",label:"All"},{key:"marginX",label:"Left-Right"},{key:"marginY",label:"Top-Bottom"},{key:"marginTop",label:"Top"},{key:"marginRight",label:"Right"},{key:"marginBottom",label:"Bottom"},{key:"marginLeft",label:"Left"}]},{styleType:"multiple",label:"Padding",options:[{key:"padding",label:"All"},{key:"paddingX",label:"Left-Right"},{key:"paddingY",label:"Top-Bottom"},{key:"paddingTop",label:"Top"},{key:"paddingRight",label:"Right"},{key:"paddingBottom",label:"Bottom"},{key:"paddingLeft",label:"Left"}]},{styleType:"multiple",label:"Space Between",options:[{key:"spaceX",label:"Left-Right"},{key:"spaceY",label:"Top-Bottom"}]}]},{heading:"Size",items:[{type:"arbitrary",label:"Width",units:N.concat("auto"),property:"width"},{type:"arbitrary",label:"Height",units:N.concat("auto"),property:"height"},{styleType:"accordion",heading:"Min width & height",items:[{type:"arbitrary",label:"Min Width",units:N.concat("auto"),property:"minWidth"},{type:"arbitrary",label:"Min Height",units:N.concat("auto"),property:"minHeight"}]},{styleType:"accordion",heading:"Max width & height",items:[{type:"arbitrary",label:"Max Width",units:N.concat("auto"),property:"maxWidth"},{type:"arbitrary",label:"Max Height",units:N.concat("auto"),property:"maxHeight"}]},{styleType:"accordion",heading:"Object options & aspect ratio",items:[{type:"dropdown",label:"Aspect",property:"aspectRatio"},{type:"dropdown",label:"Fit",property:"objectFit"},{type:"dropdown",label:"Position",property:"objectPosition"}]}]},{heading:"Position",items:[{type:"icons",label:"Position",property:"position"},{styleType:"accordion",heading:"Position options",items:[{styleType:"multiple",label:"Direction",options:[{key:"top",label:"Top"},{key:"right",label:"Right"},{key:"bottom",label:"Bottom"},{key:"left",label:"Left"}]},{styleType:"multiple",label:"Inset",options:[{key:"inset",label:"All"},{key:"insetX",label:"Left Right"},{key:"insetY",label:"Top Bottom"}]},{type:"arbitrary",label:"Z-Chai",units:["-","auto"],property:"zIndex"}]},{styleType:"accordion",heading:"Float & Clear",items:[{type:"icons",label:"Float",property:"float"},{type:"dropdown",label:"Clear",property:"clear"}]},{styleType:"accordion",heading:"Overflow & Overscroll",items:[{styleType:"multiple",type:"dropdown",label:"Overflow",options:[{key:"overflow",label:"All"},{key:"overflowX",label:"Left-Right"},{key:"overflowY",label:"Top-Bottom"}]},{styleType:"multiple",type:"dropdown",label:"Overscroll",options:[{key:"overscroll",label:"All"},{key:"overscrollX",label:"Left-Right"},{key:"overscrollY",label:"Top-Bottom"}]}]}]},{heading:"Typography",items:[{type:"dropdown",property:"fontFamily",label:"Font"},{type:"arbitrary",property:"fontSize",label:"Size",units:N},{type:"arbitrary",property:"lineHeight",label:"Height",units:N.concat("-")},{type:"range",property:"fontWeight",label:"Weight"},{type:"color",property:"textColor",label:"Color"},{styleType:"accordion",heading:"Alignments",items:[{type:"dropdown",property:"textAlign",label:"Align"},{type:"dropdown",property:"verticalAlign",label:"V. Align"}]},{styleType:"accordion",heading:"Spacing, decoration & more",items:[{type:"dropdown",property:"letterSpacing",label:"Spacing"},{type:"dropdown",property:"textDecoration",label:"Decoration"},{type:"range",property:"textDecorationThickness",label:"Thickness"},{type:"dropdown",property:"textTransform",label:"Transform"}]},{styleType:"accordion",heading:"White space & breaks",items:[{type:"dropdown",property:"whitespace",label:"Whitespace"},{type:"dropdown",property:"wordBreak",label:"Wordbreak"}]}]},{heading:"Background",items:[{type:"color",label:"Bg. Color",property:"backgroundColor"},{styleType:"accordion",heading:"Position, Size & more",items:[{type:"dropdown",label:"Attachment",property:"backgroundAttachment"},{type:"dropdown",label:"Clipping",property:"backgroundClip"},{type:"dropdown",label:"Origin",property:"backgroundOrigin"},{type:"dropdown",label:"Position",property:"backgroundPosition"},{type:"dropdown",label:"Repeat",property:"backgroundRepeat"},{type:"dropdown",label:"Size",property:"backgroundSize"}]},{type:"dropdown",label:"Gradient",property:"backgroundGradient"},{styleType:"accordion",heading:"Gradient colors",items:[{type:"color",label:"From",property:"fromColor"},{type:"color",label:"Via",property:"viaColor"},{type:"color",label:"To",property:"toColor"}]}]},{heading:"Border & Outline",items:[{styleType:"multiple",type:"dropdown",label:"Width",options:[{key:"border",label:"All"},{key:"borderX",label:"Left Right"},{key:"borderY",label:"Top bottom"},{key:"borderTop",label:"Top"},{key:"borderRight",label:"Right"},{key:"borderBottom",label:"Bottom"},{key:"borderLeft",label:"Left"}]},{styleType:"multiple",type:"dropdown",label:"Corners",options:[{key:"borderRadius",label:"All"},{key:"borderRadiusTop",label:"Top"},{key:"borderRadiusRight",label:"Right"},{key:"borderRadiusBottom",label:"Bottom"},{key:"borderRadiusLeft",label:"Left"},{key:"borderRadiusTopLeft",label:"Top Left"},{key:"borderRadiusTopRight",label:"Top right"},{key:"borderRadiusBottomRight",label:"Bottom right"},{key:"borderRadiusBottomLeft",label:"Bottom left"}]},{type:"color",label:"Color",property:"borderColor"},{type:"dropdown",label:"Style",property:"borderStyle"},{styleType:"accordion",heading:"Divide options",items:[{styleType:"multiple",type:"range",label:"Width",options:[{key:"divideXWidth",label:"Left Right"},{key:"divideYWidth",label:"Top Bottom"}]},{type:"color",label:"Color",property:"divideColor"},{type:"dropdown",label:"Style",property:"divideStyle"}]},{styleType:"accordion",heading:"Outline styling",items:[{type:"range",label:"Width",property:"outlineWidth"},{type:"range",label:"Offset",property:"outlineOffset"},{type:"dropdown",label:"Style",property:"outlineStyle"}]},{styleType:"accordion",heading:"Ring options",items:[{type:"range",label:"Width",property:"ringWidth"},{type:"color",label:"Color",property:"ringColor"},{type:"range",label:"Offset",property:"ringOffsetWidth"},{type:"color",label:"Off. color",property:"ringOffsetColor"}]}]},{heading:"Effect & Animation",items:[{type:"range",label:"Shadow",property:"boxShadow"},{type:"color",label:"Color",property:"boxShadowColor"},{type:"dropdown",label:"Cursor",property:"cursor"},{styleType:"accordion",heading:"Blend & Cursor",items:[{type:"dropdown",label:"Mix Blend",property:"mixBlendMode"},{type:"dropdown",label:"Bg. Blend",property:"bgBlendMode"}]},{styleType:"accordion",heading:"Transform",items:[{type:"dropdown",label:"Origin",property:"transformOrigin"},{styleType:"multiple",label:"Scale",units:["-"],options:[{key:"scale",label:"All"},{key:"scaleX",label:"Left-Right"},{key:"scaleY",label:"Top-Bottom"}]},{styleType:"multiple",label:"Skew",units:["deg"],options:[{key:"skewX",label:"Left-Right"},{key:"skewY",label:"Top-Bottom"}]},{styleType:"multiple",label:"Translate",negative:!0,options:[{key:"translateX",label:"Left-Right"},{key:"translateY",label:"Top-Bottom"}]},{type:"arbitrary",units:["deg"],negative:!0,label:"Rotate",property:"rotate"}]},{styleType:"accordion",heading:"Animation",items:[{type:"dropdown",label:"Animation",property:"animation"},{type:"dropdown",label:"Transition",property:"transition"},{type:"dropdown",label:"Easing",property:"transitionEase"},{type:"arbitrary",units:["ms"],label:"Duration",property:"duration"},{type:"arbitrary",units:["ms"],label:"Delay",property:"delay"}]}]},{heading:"Classes",items:[{component:Te}]}],se={"not-italic":()=>e.jsxRuntimeExports.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e.jsxRuntimeExports.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9 3H11V5H9V11H11V13H5V11H7V5H5V3H9Z",fill:"white"})}),visible:d.EyeOpenIcon,invisible:d.EyeClosedIcon,hidden:d.EyeClosedIcon,gap:d.BorderAllIcon,gapX:d.WidthIcon,gapY:d.HeightIcon,spaceX:d.WidthIcon,spaceY:d.HeightIcon,overscroll:d.BorderAllIcon,overscrollX:d.WidthIcon,overscrollY:d.HeightIcon,overflow:d.BorderAllIcon,overflowX:d.WidthIcon,overflowY:d.HeightIcon,top:d.ArrowUpIcon,right:d.ArrowRightIcon,bottom:d.ArrowDownIcon,left:d.ArrowLeftIcon,inset:d.BorderAllIcon,insetX:d.WidthIcon,insetY:d.HeightIcon,border:d.BorderAllIcon,borderX:d.WidthIcon,borderY:d.HeightIcon,borderTop:d.ArrowUpIcon,borderRight:d.ArrowRightIcon,borderBottom:d.ArrowDownIcon,borderLeft:d.ArrowLeftIcon,borderRadius:d.BorderAllIcon,borderRadiusX:d.WidthIcon,borderRadiusY:d.HeightIcon,borderRadiusTop:d.ArrowUpIcon,borderRadiusRight:d.ArrowRightIcon,borderRadiusBottom:d.ArrowDownIcon,borderRadiusLeft:d.ArrowLeftIcon,borderRadiusTopLeft:d.ArrowTopLeftIcon,borderRadiusTopRight:d.ArrowTopRightIcon,borderRadiusBottomRight:d.ArrowBottomRightIcon,borderRadiusBottomLeft:d.ArrowBottomLeftIcon,divideXWidth:d.WidthIcon,divideYWidth:d.HeightIcon,scale:d.BorderAllIcon,scaleX:d.WidthIcon,scaleY:d.HeightIcon,skewX:d.WidthIcon,skewY:d.HeightIcon,translateX:d.WidthIcon,translateY:d.HeightIcon,padding:d.BorderAllIcon,paddingX:d.WidthIcon,paddingY:d.HeightIcon,paddingTop:d.ArrowUpIcon,paddingRight:d.ArrowRightIcon,paddingBottom:d.ArrowDownIcon,paddingLeft:d.ArrowLeftIcon,margin:d.BorderAllIcon,marginX:d.WidthIcon,marginY:d.HeightIcon,marginTop:d.ArrowUpIcon,marginRight:d.ArrowRightIcon,marginBottom:d.ArrowDownIcon,marginLeft:d.ArrowLeftIcon,textLeft:d.AlignLeftIcon,textCenter:d.AlignCenterHorizontallyIcon,textRight:d.AlignRightIcon,textJustify:d.StretchHorizontallyIcon,italic:d.FontItalicIcon,underline:d.UnderlineIcon,overline:d.OverlineIcon,uppercase:d.LetterCaseUppercaseIcon,block:()=>e.jsxRuntimeExports.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsxRuntimeExports.jsx("path",{opacity:"0.6",fillRule:"evenodd",clipRule:"evenodd",d:"M2 2H14V14H2V2ZM1 1H15V15H1V1Z",fill:"currentColor"}),e.jsxRuntimeExports.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 4H4V12H7V4ZM9 4H12V12H9V4Z",fill:"currentColor"})]}),"float-right":()=>e.jsxRuntimeExports.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsxRuntimeExports.jsx("path",{d:"M8 4H16V12H8V4Z",fill:"currentColor"}),e.jsxRuntimeExports.jsx("path",{opacity:"0.6",fillRule:"evenodd",clipRule:"evenodd",d:"M0 4H6V6H0V4ZM0 7H6V9H0V7ZM4 10H0V12H4V10Z",fill:"currentColor"})]}),"float-left":()=>e.jsxRuntimeExports.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsxRuntimeExports.jsx("path",{d:"M0 4H8V12H0V4Z",fill:"currentColor"}),e.jsxRuntimeExports.jsx("path",{opacity:"0.6",fillRule:"evenodd",clipRule:"evenodd",d:"M10 4H16V6H10V4ZM10 7H16V9H10V7ZM14 10H10V12H14V10Z",fill:"currentColor"})]}),"float-none":d.Cross2Icon,fixed:()=>e.jsxRuntimeExports.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsxRuntimeExports.jsx("path",{opacity:"0.6",fillRule:"evenodd",clipRule:"evenodd",d:"M15 2H14V4H13V5H14V6H15V2ZM10 5V4H9V2H1V8H2V5H10ZM7 4V3H5V4H7ZM4 4V3H2V4H4ZM1 13H7V14H1V13Z",fill:"currentColor"}),e.jsxRuntimeExports.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11 2H10V3H11V6H12V3H13V2H11ZM2 9H1V12H2V11H7V10H2V9ZM15 7H8V14H15V7Z",fill:"currentColor"})]}),absolute:()=>e.jsxRuntimeExports.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsxRuntimeExports.jsx("path",{opacity:"0.6",fillRule:"evenodd",clipRule:"evenodd",d:"M14 2H15V6H14V2ZM9 3V2H1V8H2V3H9ZM7 13H1V14H7V13Z",fill:"currentColor"}),e.jsxRuntimeExports.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11 2H10V3H11V6H12V3H13V2H11ZM2 9H1V12H2V11H7V10H2V9ZM15 7H8V14H15V7Z",fill:"currentColor"})]}),relative:()=>e.jsxRuntimeExports.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e.jsxRuntimeExports.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11 2H9V3H11V6H12V3H14V2H11ZM2 8H1V13H2V11H7V10H2V8ZM15 7H8V14H15V7Z",fill:"currentColor"})}),sticky:()=>e.jsxRuntimeExports.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsxRuntimeExports.jsx("path",{d:"M12.9998 7C13.6558 7 14.2937 6.78498 14.8158 6.38787C15.338 5.99076 15.7156 5.43345 15.8908 4.80128C16.066 4.16912 16.0292 3.49694 15.7859 2.8877C15.5427 2.27846 15.1065 1.76573 14.5441 1.42804C13.9817 1.09034 13.3241 0.946293 12.672 1.01795C12.02 1.08961 11.4094 1.37303 10.9337 1.8248C10.4581 2.27658 10.1436 2.8718 10.0385 3.51932C9.93341 4.16685 10.0434 4.83097 10.3518 5.41L6.88176 8.88C6.80034 8.96122 6.73572 9.05769 6.69158 9.16388C6.64744 9.27008 6.62465 9.38393 6.62451 9.49894C6.62437 9.61395 6.64689 9.72785 6.69077 9.83416C6.73465 9.94046 6.79904 10.0371 6.88026 10.1185C6.96149 10.1999 7.05795 10.2645 7.16415 10.3087C7.27035 10.3528 7.3842 10.3756 7.4992 10.3758C7.61421 10.3759 7.72812 10.3534 7.83442 10.3095C7.94072 10.2656 8.03734 10.2012 8.11876 10.12L11.5888 6.648C12.0088 6.873 12.4888 7 12.9988 7H12.9998Z",fill:"currentColor"}),e.jsxRuntimeExports.jsx("path",{opacity:"0.6",fillRule:"evenodd",clipRule:"evenodd",d:"M9.535 2H1V14H15V7.465C14.69 7.645 14.355 7.783 14 7.875V13H2V5H9.126C8.86504 3.98486 9.01223 2.90789 9.536 2H9.535ZM7 3V4H5V3H7ZM4 3V4H2V3H4Z",fill:"currentColor"})]}),static:d.Cross1Icon},L=c.createContext({canReset:!1,canChange:!0}),He=({children:s,canReset:n=!1,canChange:r=!0})=>e.jsxRuntimeExports.jsx(L.Provider,{value:{canReset:n,canChange:r},children:s}),re=({label:s,property:n,onChange:r})=>{const i=c.useMemo(()=>t.get(V.CLASSES_LIST,`${n}.classes`,[""]),[n]),l=P(n),u=c.useMemo(()=>t.get(l,"cls",""),[l]),{canChange:x}=c.useContext(L),p=/\[.*\]/g.test(u);return e.jsxRuntimeExports.jsx("div",{className:s?"w-full rounded ":"grow",children:p?e.jsxRuntimeExports.jsxs("div",{className:"flex items-center",children:[e.jsxRuntimeExports.jsx(o.Input,{className:"w-[70%] rounded py-1",readOnly:!0,value:u}),e.jsxRuntimeExports.jsxs(o.Tooltip,{delayDuration:100,children:[e.jsxRuntimeExports.jsx(o.TooltipTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsx("button",{type:"button",className:"invisible ml-3 mt-1 text-blue-600 group-hover:visible",children:e.jsxRuntimeExports.jsx(d.InfoCircledIcon,{})})}),e.jsxRuntimeExports.jsx(o.TooltipContent,{children:"Current value is using a Tailwind arbitrary value."})]})]}):e.jsxRuntimeExports.jsx(Y,{rounded:s,onChange:a=>r(a,n),selected:u,options:i,disabled:!x})})};function Y({selected:s,onChange:n,rounded:r=!1,options:i,disabled:l=!1}){const u=s.replace(/.*:/g,"").trim(),{undo:x,redo:p}=o.useCanvasHistory();return e.jsxRuntimeExports.jsxs("select",{disabled:!i.length||l,className:`${r?"rounded-md border border-border":"border-0"} w-full disable:bg-gray-500 h-full truncate rounded bg-background px-2 py-1 text-xs outline-none disabled:cursor-not-allowed`,onChange:a=>n(a.target.value),onKeyDown:a=>{a.ctrlKey&&(a.key==="z"&&x(),a.key==="y"&&p())},value:u,children:[e.jsxRuntimeExports.jsx("option",{className:"bg-transparent",value:""}),c.Children.toArray(i.map(a=>e.jsxRuntimeExports.jsx("option",{className:"bg-transparent",value:a,children:a})))]})}const Ve=({property:s,onChange:n})=>{const{canReset:r,canChange:i}=c.useContext(L),l=P(s),u=c.useMemo(()=>t.get(l,"cls",""),[l]),x=c.useMemo(()=>t.get(V.CLASSES_LIST,`${s}.classes`,[""]),[s]),p=x.indexOf(u)>-1?x.indexOf(u):0,a=/\[.*\]/g.test(u);return e.jsxRuntimeExports.jsx("div",{className:"flex flex-row divide-x divide-solid divide-border rounded border border-border text-xs",children:a?e.jsxRuntimeExports.jsx("div",{className:"py-[5px] px-2",children:u}):e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx("button",{type:"button",className:"box-border w-2/12 rounded-tl rounded-bl bg-background px-1 text-center hover:bg-bg-gray-700 disabled:cursor-not-allowed disabled:bg-gray-600",disabled:!i&&(!r||p-1<0),onClick:()=>n(t.nth(x,p-1),s),children:e.jsxRuntimeExports.jsx("span",{className:"flex items-center justify-center",children:e.jsxRuntimeExports.jsx(d.MinusIcon,{className:!i&&(!r||p-1<0)?"text-gray-500":"text-white/60"})})}),e.jsxRuntimeExports.jsx("div",{className:"w-8/12 text-center",children:e.jsxRuntimeExports.jsx(re,{label:!1,property:s,onChange:n})}),e.jsxRuntimeExports.jsx("button",{type:"button",className:"w-2/12 rounded-tr rounded-br bg-background px-1 text-center hover:bg-bg-gray-700 disabled:cursor-not-allowed disabled:bg-gray-600",disabled:!i&&(!r||p+1>=x.length),onClick:()=>n(t.nth(x,p+1),s),children:e.jsxRuntimeExports.jsx("span",{className:"flex items-center justify-center",children:e.jsxRuntimeExports.jsx(d.PlusIcon,{className:!i&&(!r||p+1>=x.length)?"text-gray-500":"text-white/60"})})})]})})},De=({property:s,onChange:n})=>{const r=c.useMemo(()=>t.get(V.CLASSES_LIST,`${s}.classes`,[""]),[s]),{canChange:i}=c.useContext(L),l=P(s),u=c.useMemo(()=>t.get(l,"cls",""),[l]);return e.jsxRuntimeExports.jsx("div",{className:"flex grow flex-wrap gap-1",children:t.map(r,x=>e.jsxRuntimeExports.jsxs(o.Tooltip,{children:[e.jsxRuntimeExports.jsx(o.TooltipTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsx("button",{type:"button",disabled:!i,onClick:()=>n(x,s),className:`cursor-pointer rounded border border-gray-600 p-1 disabled:cursor-not-allowed ${u===x?" bg-blue-500 text-white":"disabled:bg-gray-600 disabled:text-gray-400"}`,children:c.createElement(t.get(se,x,d.BoxIcon))})}),e.jsxRuntimeExports.jsx(o.TooltipContent,{children:t.startCase(t.toLower(x))})]}))})},Le={backgroundColor:"bg",textColor:"text",borderColor:"border",boxShadowColor:"shadow",outlineColor:"outline",divideColor:"divide",fromColor:"from",viaColor:"via",toColor:"to",ringColor:"ring",ringOffsetColor:"ring-offset"},Pe=({property:s,onChange:n})=>{const r=P(s),i=c.useMemo(()=>t.get(r,"cls",""),[r]),{canChange:l}=c.useContext(L),[u,x]=c.useState([]),[p,a]=c.useState({color:"",shade:""}),g=i.split("-"),h=t.get(g,"1",""),m=t.get(g,"2",""),b=c.useCallback(y=>{["current","inherit","transparent","black","white"].includes(y)?(x([]),a({color:y})):(x(["50","100","200","300","400","500","600","700","800","900"]),a(v=>({...v,color:y,shade:v.shade?v.shade:"500"})))},[x,a]);c.useEffect(()=>{if(["current","inherit","transparent","black","white"].includes(h))return x([]);x(["50","100","200","300","400","500","600","700","800","900"])},[h]);const j=c.useCallback(y=>{a({color:h,shade:y})},[h]);return c.useEffect(()=>{a({color:"",shade:""})},[r]),c.useEffect(()=>{const v=`${t.get(Le,s,"")}-${p.color}${p.shade?`-${p.shade}`:""}`;v.match(new RegExp(t.get(V.CLASSES_LIST,`${s}.regExp`,"")))&&n(v,s)},[p,n,s]),e.jsxRuntimeExports.jsxs("div",{className:"flex flex-row divide-x divide-solid divide-border rounded-lg border border-border text-xs",children:[e.jsxRuntimeExports.jsx("div",{className:"grow text-center",children:e.jsxRuntimeExports.jsx(Y,{disabled:!l,rounded:!0,selected:h,onChange:b,options:["current","transparent","primary","secondary","black","white","slate","gray","zinc","neutral","stone","red","orange","amber","yellow","lime","green","emerald","teal","cyan","sky","blue","indigo","violet","purple","fuchsia","pink","rose"]})}),e.jsxRuntimeExports.jsx("button",{type:"button",className:"grow text-center",children:e.jsxRuntimeExports.jsx(Y,{rounded:!0,selected:m,disabled:!h||!l,onChange:j,options:u})})]})},J=(s,n)=>{s=s.toLowerCase();let r=s.trim().replace(/ |\+/g,"");if((r==="auto"||r==="none")&&n.includes(r))return{value:"",unit:r};const i=n.length?new RegExp(n.join("|"),"g"):/XXXXXX/g;r=r.replace(i,"");const l=s.match(i),u=l&&l.length>1,x=!t.isEmpty(r)&&Number.isNaN(Number(r));return u||x?{error:"Invalid value"}:l&&(l[0]==="auto"||l[0]==="none")?{value:l[0],unit:""}:{value:r,unit:l?l[0]:""}};const $e=s=>{const n=s.startsWith("-")?"-":"",r=s.split("-").pop();if(["auto","none"].includes(r))return{value:"",unit:r};if(r==="px")return{value:"1",unit:"px"};if(r==="screen")return{value:"100",unit:s.indexOf("w-")!==-1?"vw":"vh"};if(r==="full")return{value:"100",unit:"%"};if(t.includes(s,"skew-"))return{value:`${n}${r}`,unit:"deg"};if(t.includes(s,"rotate-"))return{value:`${n}${r}`,unit:"deg"};if(t.includes(s,"opacity-"))return{value:`${r/100}`,unit:"-"};if(t.includes(s,"duration-")||t.includes(s,"delay-"))return{value:`${r}`,unit:"ms"};if(t.includes(s,"translate-")&&!r.includes("/"))return{value:`${n}${`${r/4}`}`,unit:"rem"};if(t.includes(s,"scale-"))return{value:`${n}${`${r/100}`}`,unit:"-"};if(t.startsWith(s,"border")){const i=s.match(/border-?(x|y|t|r|b|l)?\d+/g);if(i)return{value:i[0].split("-").pop(),unit:"px"};if(s.match(/border-?(x|y|t|r|b|l)?/g))return{value:"1",unit:"px"}}if(t.startsWith(s,"max-w-")){if(s==="max-w-screen-sm")return{value:"640",unit:"px"};if(s==="max-w-screen-md")return{value:"768",unit:"px"};if(s==="max-w-screen-lg")return{value:"1024",unit:"px"};if(s==="max-w-screen-xl")return{value:"1280",unit:"px"};if(s==="max-w-screen-2xl")return{value:"1536",unit:"px"};if(r==="xs")return{value:"320",unit:"px"};if(r==="sm")return{value:"384",unit:"px"};if(r==="md")return{value:"448",unit:"px"};if(r==="lg")return{value:"512",unit:"px"};if(r==="xl")return{value:"576",unit:"px"};if(r==="2xl")return{value:"672",unit:"px"};if(r==="3xl")return{value:"768",unit:"px"};if(r==="4xl")return{value:"896",unit:"px"};if(r==="5xl")return{value:"1024",unit:"px"};if(r==="6xl")return{value:"1152",unit:"px"};if(r==="7xl")return{value:"1280",unit:"px"};if(r==="prose")return{value:"65",unit:"ch"}}if(t.startsWith(s,"text-")){if(r==="xs")return{value:"12",unit:"px"};if(r==="sm")return{value:"14",unit:"px"};if(r==="base")return{value:"16",unit:"px"};if(r==="lg")return{value:"18",unit:"px"};if(r==="xl")return{value:"20",unit:"px"};if(r==="2xl")return{value:"24",unit:"px"};if(r==="3xl")return{value:"30",unit:"px"};if(r==="4xl")return{value:"36",unit:"px"};if(r==="5xl")return{value:"48",unit:"px"};if(r==="6xl")return{value:"60",unit:"px"};if(r==="7xl")return{value:"72",unit:"px"};if(r==="8xl")return{value:"96",unit:"px"};if(r==="9xl")return{value:"128",unit:"px"}}if(t.startsWith(s,"leading-")){if(r==="none")return{value:"1",unit:"-"};if(r==="tight")return{value:"1.25",unit:"-"};if(r==="snug")return{value:"1.375",unit:"-"};if(r==="normal")return{value:"1.5",unit:"-"};if(r==="relaxed")return{value:"1.625",unit:"-"};if(r==="loose")return{value:"2",unit:"-"}}if(t.startsWith(s,"tracking-")){if(r==="tighter")return{value:"-0.05",unit:"em"};if(r==="tight")return{value:"-0.025",unit:"em"};if(r==="normal")return{value:"0",unit:"em"};if(r==="wide")return{value:"0.025",unit:"em"};if(r==="wider")return{value:"0.05",unit:"em"};if(r==="widest")return{value:"0.1",unit:"em"}}if(["max","min","fit"].includes(r))return{value:s,unit:"class"};if(r.includes("/")){const[i,l]=t.map(r.split("/"),u=>parseInt(u,10));return{value:n+(i/l*100).toFixed(2).replace(".00",""),unit:"%"}}return t.isNumber(parseFloat(r))?{value:`${n+parseFloat(r)*4}`,unit:"px"}:{value:r,unit:"class"}};const Me=s=>{if(t.isEmpty(s))return{value:"",unit:""};const n=s.match(/\[.*\]/g);if(n===null)return Oe(s);const r=t.get(n,"0","").replace(/\[|\]/g,""),i=s.startsWith("-")?"-":"",l=t.first(r.match(/\d+.\d+|\d+/g));return{value:`${i}${l}`,unit:r.replace(l,"")}},Oe=s=>t.isEmpty(s)?{value:"",unit:""}:$e(s),oe=c.createContext({setDragData:()=>{}}),qe=({unit:s,currentValue:n,onDrag:r,onDragEnd:i,onDragStart:l,negative:u,cssProperty:x})=>{const{setDragData:p}=c.useContext(oe);return e.jsxRuntimeExports.jsx("button",{type:"button",onMouseDown:a=>{const g={onDrag:r,onDragEnd:i,dragging:!0,dragStartY:a.pageY,dragStartValue:`${n}`,dragUnit:s,negative:u,cssProperty:x};l(g),p(g)},color:void 0,className:"relative z-50 ml-1 hidden h-6 cursor-row-resize rounded bg-background/70 px-2 group-hover:inline",children:e.jsxRuntimeExports.jsx(d.RowSpacingIcon,{})})},_e=({onSelect:s,current:n,units:r})=>e.jsxRuntimeExports.jsx("div",{"data-theme":"light",className:"-m-[7px] -mx-[13px] flex w-9 flex-col",children:r.map(i=>e.jsxRuntimeExports.jsx(o.Button,{className:"h-max rounded-none px-1 py-1 text-right text-[11px] hover:bg-blue-400",color:n===i?"primary":void 0,size:"sm",onClick:l=>{l.stopPropagation(),s(i)},children:i},i))}),We=s=>{const[n,r]=c.useState(!1),[i,l]=c.useState(""),{currentClass:u,onChange:x,classPrefix:p,cssProperty:a,units:g,negative:h}=s,[m,b]=c.useState(a!=null&&a.toLowerCase().includes("width")?"%":g[0]),[j,y]=c.useState(!1),[v,C]=c.useState(""),[S,E]=c.useState(!1),[B,T]=c.useState(!1);c.useEffect(()=>{const{value:f,unit:R}=Me(u);if(R===""){l(f),b(a!=null&&a.toLowerCase().includes("width")?"%":g[0]);return}b(R),l(R==="class"||t.isEmpty(f)?"":f)},[u,a,g]);const w=_.useThrottledCallback(f=>{x(f)},[x],200),I=_.useThrottledCallback(f=>{x(f,!1)},[x],200),H=c.useCallback((f=!1)=>{const R=J(`${i}`,g);if(t.get(R,"error",!1)){y(!0);return}const k=t.get(R,"unit")!==""?t.get(R,"unit"):m;if(k==="auto"||k==="none"){w(`${p}${k}`);return}if(t.get(R,"value")==="")return;const D=`${t.get(R,"value","").startsWith("-")?"-":""}${p}[${t.get(R,"value","").replace("-","")}${k==="-"?"":k}]`;f?I(D):w(D)},[w,I,i,m,p,g]),$=c.useCallback(f=>{const R=J(`${i}`,g);if(t.get(R,"error",!1)){y(!0);return}if(f==="auto"||f==="none"){w(`${p}${f}`);return}if(t.get(R,"value")==="")return;const k=t.get(R,"unit")!==""?t.get(R,"unit"):f,D=`${t.get(R,"value","").startsWith("-")?"-":""}${p}[${t.get(R,"value","").replace("-","")}${k==="-"?"":k}]`;w(D)},[w,i,p,g]);return e.jsxRuntimeExports.jsx("div",{className:"flex w-full flex-col",children:e.jsxRuntimeExports.jsx("div",{className:"flex items-center justify-start",children:m==="class"?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx("input",{className:"w-20 rounded py-1",readOnly:!0,value:u}),e.jsxRuntimeExports.jsxs(o.Tooltip,{children:[e.jsxRuntimeExports.jsx(o.TooltipTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsx("button",{type:"button",className:"invisible ml-3 mt-1 text-blue-600 group-hover:visible",children:e.jsxRuntimeExports.jsx(d.InfoCircledIcon,{})})}),e.jsxRuntimeExports.jsx(o.TooltipContent,{children:"Current value is using a Tailwind preset class."})]})]}):e.jsxRuntimeExports.jsxs("div",{className:`group relative flex items-center ${S?"z-auto":""}`,children:[e.jsxRuntimeExports.jsxs("div",{className:"flex items-center rounded-md border border-border",children:[["none","auto"].indexOf(m)!==-1?null:e.jsxRuntimeExports.jsx("input",{readOnly:m==="class",onKeyPress:f=>{f.key==="Enter"&&H()},onKeyDown:f=>{if(f.keyCode!==38&&f.keyCode!==40)return;f.preventDefault(),T(!0);const R=t.parseInt(f.target.value);let k=t.isNaN(R)?0:R;f.keyCode===38&&(k+=1),f.keyCode===40&&(k-=1);const A=`${k}`,ie=`${A.startsWith("-")?"-":""}${p}[${A.replace("-","")}${m==="-"?"":m}]`;I(ie)},onKeyUp:f=>{B&&(f.preventDefault(),T(!1))},onBlur:()=>H(),onChange:f=>{y(!1),l(f.target.value)},onClick:f=>{var R;(R=f==null?void 0:f.target)==null||R.select(),r(!1)},value:S?v:i,className:"h-6 w-14 rounded rounded-r-none bg-background pl-2 text-sm focus-visible:outline-0 ".concat(" ",j?"border-red-500 text-red-500":"border-foreground/20")}),e.jsxRuntimeExports.jsxs(o.Tooltip,{open:n,delayDuration:100,children:[e.jsxRuntimeExports.jsx(o.TooltipTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsxs("button",{type:"button",onClick:()=>r(!n),className:"flex h-6 cursor-pointer items-center gap-x-1 rounded rounded-l-none bg-background p-px px-1 text-[11px] uppercase",children:[e.jsxRuntimeExports.jsx("span",{className:`inline-block ${g.length===1?"px-2 font-semibold":""}`,children:m}),g.length>1?e.jsxRuntimeExports.jsx(d.TriangleDownIcon,{}):null]})}),e.jsxRuntimeExports.jsx(o.TooltipPortal,{children:e.jsxRuntimeExports.jsx(o.TooltipContent,{className:"bg-background",children:e.jsxRuntimeExports.jsx(_e,{units:g,current:m,onSelect:f=>{r(!1),b(f),$(f)}})})})]})]}),["none","auto"].indexOf(m)!==-1||S?null:e.jsxRuntimeExports.jsx(qe,{onDragStart:()=>E(!0),onDragEnd:f=>{if(C(()=>""),E(!1),t.isEmpty(f))return;const R=`${f}`,A=`${R.startsWith("-")?"-":""}${p}[${R.replace("-","")}${m==="-"?"":m}]`;w(A)},onDrag:f=>{if(t.isEmpty(f))return;C(f);const R=`${f}`,A=`${R.startsWith("-")?"-":""}${p}[${R.replace("-","")}${m==="-"?"":m}]`;I(A)},currentValue:i,unit:m,negative:h,cssProperty:a})]})})})},P=s=>{const n=o.useSelectedBlockCurrentClasses();return t.findLast(n,{property:s})},Fe=(s,n)=>{const r={xs:0,sm:1,md:2,lg:3,xl:4,"2xl":5};return r[t.get(s,"mq","xs")]<=r[n]},Ye={width:"w-",height:"h-",minWidth:"min-w-",minHeight:"min-h-",maxWidth:"max-w-",maxHeight:"max-h-",zIndex:"z-",gap:"gap-",gapX:"gap-x-",gapY:"gap-y-",margin:"m-",marginX:"mx-",marginY:"my-",marginTop:"mt-",marginBottom:"mb-",marginLeft:"ml-",marginRight:"mr-",padding:"p-",paddingX:"px-",paddingY:"py-",paddingTop:"pt-",paddingBottom:"pb-",paddingLeft:"pl-",paddingRight:"pr-",spaceX:"space-x-",spaceY:"space-y-",border:"border-",borderTop:"border-t-",borderBottom:"border-b-",borderLeft:"border-l-",borderRight:"border-r-",borderX:"border-x-",borderY:"border-y-",borderRadius:"rounded-",borderRadiusTop:"rounded-t-",borderRadiusRight:"rounded-r-",borderRadiusBottom:"rounded-b-",borderRadiusLeft:"rounded-l-",borderRadiusTopLeft:"rounded-tl-",borderRadiusTopRight:"rounded-tr-",borderRadiusBottomRight:"rounded-br-",borderRadiusBottomLeft:"rounded-bl-",fontSize:"text-",lineHeight:"leading-",letterSpacing:"tracking-",textIndent:"indent-",rotate:"rotate-",duration:"duration-",transitionDelay:"delay-",scale:"scale-",scaleX:"scale-x-",scaleY:"scale-y-",translateX:"translate-x-",translateY:"translate-y-",skewX:"skew-x-",skewY:"skew-y-",top:"top-",bottom:"bottom-",left:"left-",right:"right-",inset:"inset-",insetX:"inset-x-",insetY:"inset-y-",opacity:"opacity-",flexBasis:"basis-"},Q={xs:"",sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},Xe=s=>`${s.toUpperCase()} ${Q[s]?`(${Q[s]} & up)`:""}`,Z=s=>{const{type:n="icons",label:r,property:i,onEmitChange:l=()=>{},units:u,negative:x=!1}=s,[p]=o.useDarkMode(),[a]=o.useStylingState(),[,g]=o.useCanvasWidth(),h=P(i),m=o.useAddClassesToBlocks(),b=o.useRemoveClassesFromBlocks(),[j]=o.useSelectedBlockIds(),y=c.useMemo(()=>t.get(h,"fullCls",""),[h]),v=c.useCallback((w,I=!0)=>{const H={dark:p,mq:g,mod:a,cls:w,property:i,fullCls:""};(p||a!=="")&&(H.mq="xs");const $=V.generateFullClsName(H);m(j,[$],I)},[j,p,g,a,i,m]),C=c.useCallback(()=>{b(j,[y])},[j,y,b]),S=c.useMemo(()=>Fe(h,g),[h,g]);c.useEffect(()=>{l(S,h)},[S,l,h]);const[,,E]=o.useCanvasWidth(),B=c.useCallback(w=>{E({xs:400,sm:640,md:800,lg:1024,xl:1420,"2xl":1920}[w])},[E]),T=t.get(h,"dark",null)===p&&t.get(h,"mod",null)===a&&t.get(h,"mq",null)===g;return e.jsxRuntimeExports.jsx(He,{canChange:S,canReset:h&&T,children:e.jsxRuntimeExports.jsxs("div",{className:"group flex flex-row items-center py-2 first:pt-0 last:pb-0",children:[e.jsxRuntimeExports.jsx("div",{className:"relative w-[70px] truncate text-xs text-foreground",children:e.jsxRuntimeExports.jsx("span",{className:`text-[11px] ${h&&!T?"text-foreground":""}`,children:r})}),e.jsxRuntimeExports.jsxs("div",{className:"flex flex-row items-center",children:[e.jsxRuntimeExports.jsxs("div",{className:"w-[150px]",children:[n==="arbitrary"?e.jsxRuntimeExports.jsx(We,{currentClass:t.get(h,"cls",""),classPrefix:t.get(Ye,i,""),units:u||[],onChange:v,negative:x,cssProperty:i}):null,n==="icons"&&e.jsxRuntimeExports.jsx(De,{property:i,onChange:v}),n==="range"&&e.jsxRuntimeExports.jsx(Ve,{property:i,onChange:v}),n==="color"&&e.jsxRuntimeExports.jsx(Pe,{property:i,onChange:v}),n==="dropdown"&&e.jsxRuntimeExports.jsx(re,{label:r,property:i,onChange:v})]}),e.jsxRuntimeExports.jsx("div",{className:`w-[30px] cursor-pointer ${y?"visible":"invisible"}`,children:T?e.jsxRuntimeExports.jsx("button",{type:"button",onClick:()=>C(),title:"Reset",className:"flex px-1.5 text-xs",children:e.jsxRuntimeExports.jsx(d.TrashIcon,{className:"h-5 w-5 text-blue-500 hover:opacity-80"})}):S&&h?e.jsxRuntimeExports.jsxs(o.Tooltip,{delayDuration:100,children:[e.jsxRuntimeExports.jsx(o.TooltipTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsx("button",{type:"button",className:"invisible ml-3 mt-1 rounded-full bg-blue-500 text-white group-hover:visible",children:e.jsxRuntimeExports.jsx(d.InfoCircledIcon,{})})}),e.jsxRuntimeExports.jsx(o.TooltipContent,{children:e.jsxRuntimeExports.jsx("div",{className:"text-right",children:e.jsxRuntimeExports.jsxs("div",{children:["Current style is set at  ",e.jsxRuntimeExports.jsxs("span",{className:"font-bold ",children:[Xe(t.get(h,"mq")),p&&!h.dark?"(Light mode)":""]}),e.jsxRuntimeExports.jsx("br",{}),e.jsxRuntimeExports.jsxs("button",{type:"button",onClick:()=>B(t.get(h,"mq")),className:"block w-full cursor-default text-right font-semibold text-blue-500",children:["Switch to ",t.get(h,"mq").toUpperCase()]})]})})})]}):null})]})]})})},Ze=["px","%","em","rem","ch","vh","vw"],ne=({label:s,options:n,borderB:r=!1,borderT:i=!1,type:l="arbitrary",units:u=Ze,negative:x=!1})=>{const[p,a]=c.useState(n[0].key),g=o.useSelectedBlockCurrentClasses(),h=c.useCallback(m=>t.map(g,"property").includes(m),[g]);return e.jsxRuntimeExports.jsxs("div",{className:`mb-2 border-gray-800 py-2 first:pt-0 last:pb-0 ${r?"border-b":""} ${i?"border-t":""}`,children:[e.jsxRuntimeExports.jsxs("div",{className:"flex flex-row text-xs",children:[s&&e.jsxRuntimeExports.jsx("span",{className:"relative w-[70px] flex-none text-xs text-foreground",children:s}),e.jsxRuntimeExports.jsx("div",{className:"mb-3 flex grow flex-row flex-wrap gap-x-px",children:c.Children.toArray(n.map(({label:m,key:b})=>e.jsxRuntimeExports.jsx("div",{className:"first:rounded-l last:rounded-r",children:e.jsxRuntimeExports.jsxs(o.Tooltip,{children:[e.jsxRuntimeExports.jsx(o.TooltipTrigger,{asChild:!0,children:e.jsxRuntimeExports.jsxs("button",{type:"button",onClick:()=>a(b),className:`relative cursor-pointer rounded-full p-1 text-[8px] ${b===p?" bg-[#3E57F0] text-white":"text-gray-600 dark:text-gray-300"}`,children:[c.createElement("div",{className:h(b)?"-bottom-1.5 absolute bg-[#3E57F0] h-[2px] left-0 w-full":""}),c.createElement(t.get(se,b,d.BoxIcon),{className:"text-inherit w-3 h-3"})]})}),e.jsxRuntimeExports.jsx(o.TooltipContent,{children:t.startCase(t.toLower(m))})]})})))})]}),e.jsxRuntimeExports.jsx("div",{className:"mt-0 flex items-center",children:e.jsxRuntimeExports.jsx(Z,{type:l,units:[...u],label:"",property:p,negative:x})})]})},ze=({heading:s,items:n})=>{const r=o.useSelectedBlockCurrentClasses(),i=c.useMemo(()=>{const l=p=>t.flatten(p.map(a=>a.styleType==="multiple"?t.map(a.options,"key"):a.property)),u=t.flatten(n.map(p=>p.styleType==="accordion"?l(p.items):p.styleType==="multiple"?t.map(p.options,"key"):p.property)),x=t.map(r,"property");return t.intersection(u,x).length>0},[r,n]);return e.jsxRuntimeExports.jsxs("details",{children:[e.jsxRuntimeExports.jsx("summary",{className:"my-px cursor-default rounded-md bg-background p-px px-2 text-[11px] text-foreground",children:e.jsxRuntimeExports.jsxs("div",{className:"inline",children:[s,i?e.jsxRuntimeExports.jsx("span",{className:`ml-1 mr-2 inline-block h-[8px] w-[8px] rounded-full ${i?"bg-blue-500":"bg-gray-300"}`}):null]})}),e.jsxRuntimeExports.jsx("div",{className:"p-2",children:n.map(l=>l.styleType==="multiple"?e.jsxRuntimeExports.jsx(ne,{...l},l.label):e.jsxRuntimeExports.jsx(Z,{...l},l.label))})]})},Ue=c.createContext({}),q=({section:s})=>{const n=o.useSelectedBlockCurrentClasses(),r=c.useCallback((u=[])=>{const x={};for(let a=0;a<n.length;a++)x[n[a].property]=n[a].cls;let p=!0;for(const a in u)if(!t.has(x,a)||x[a]!==u[a]){p=!1;break}return p},[n]),i=c.useMemo(()=>{if(n.length>0&&s.heading==="Classes")return!0;const u=a=>t.flatten(a.map(g=>g.styleType==="multiple"?t.flatten(t.map(g.options,"key")):g.property)),x=t.flatten(s.items.map(a=>a.styleType==="accordion"?u(a.items):a.styleType==="multiple"?t.flatten(t.map(a.options,"key")):a.property)),p=t.map(n,"property");return t.intersection(x,p).length>0},[n,s.heading,s.items]),l=c.useMemo(()=>({}),[]);return e.jsxRuntimeExports.jsx(Ue.Provider,{value:l,children:e.jsxRuntimeExports.jsxs(o.AccordionItem,{value:s.heading,children:[e.jsxRuntimeExports.jsx(o.AccordionTrigger,{className:"px-3 py-2 text-xs hover:no-underline",children:e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2",children:[e.jsxRuntimeExports.jsx("div",{className:`h-[8px] w-[8px] rounded-full ${i?"bg-blue-500":"bg-gray-300"}`}),s.heading]})}),e.jsxRuntimeExports.jsx(o.AccordionContent,{className:"bg-gray-100 px-3.5 py-2",children:c.Children.toArray(s.items.map(u=>t.has(u,"component")?c.createElement(u.component,{key:u.label}):t.has(u,"styleType")?u.styleType==="multiple"?e.jsxRuntimeExports.jsx(ne,{...u},u.label):u.styleType==="accordion"&&r(u==null?void 0:u.conditions)?e.jsxRuntimeExports.jsx(ze,{...u},u.label):null:e.jsxRuntimeExports.jsx(Z,{...u},u.label)))})]})})},Ge=({item:s,index:n,canDelete:r,onChange:i,onRemove:l})=>e.jsxRuntimeExports.jsxs("div",{className:`flex flex-col gap-1 border-gray-400 py-2 ${r?"border-b":""}`,children:[e.jsxRuntimeExports.jsx("input",{name:"key",onChange:u=>i(u,n),value:s.key,placeholder:"Key",className:"w-full rounded border-gray-300 bg-background p-0.5 pl-2 text-sm focus-visible:outline-0",autoComplete:"off",autoCapitalize:"off"}),e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-1.5",children:[e.jsxRuntimeExports.jsx("input",{name:"value",onChange:u=>t.isEmpty(s.key)?{}:i(u,n),value:s.value,placeholder:"Value",className:"w-full rounded border-gray-300 bg-background p-0.5 pl-2 text-sm focus-visible:outline-0",autoComplete:"off",autoCapitalize:"off"}),e.jsxRuntimeExports.jsx(d.TrashIcon,{onClick:l,className:"h-6 w-6 cursor-pointer rounded border border-red-400 p-1 text-red-400 hover:opacity-80"})]})]}),Ke=({section:s})=>{var b;const{setSyncState:n}=o.useSavePage(),r=o.useSelectedBlock(),[i,l]=c.useState([]),[u]=o.useSelectedStylingBlocks(),x=o.useUpdateBlocksPropsRealtime(),p=`${t.get(u,"0.prop")}_attrs`;M.useEffect(()=>{const j=t.map(t.get(r,p),(y,v)=>({key:v,value:y}));t.isEmpty(j)?l([]):l(j)},[t.get(r,p)]);const a=()=>l([...i,{key:"",value:""}]),g=j=>{const y=t.filter(i,(v,C)=>j!==C);m(y)},h=(j,y)=>{const v=[...i];v[y][j.target.name]=j.target.value,m(v)},m=M.useCallback((j=[])=>{const y={};t.forEach(j,v=>{t.isEmpty(v.key)||t.set(y,v.key,v.value)}),x([t.get(r,"_id")],{[p]:y}),n("UNSAVED")},[r,n,x,p]);return e.jsxRuntimeExports.jsxs(o.AccordionItem,{value:s.heading,children:[e.jsxRuntimeExports.jsx(o.AccordionTrigger,{className:"px-3 py-2 text-xs hover:no-underline",children:e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2",children:[e.jsxRuntimeExports.jsx("div",{className:`h-[8px] w-[8px] rounded-full ${t.isEmpty(t.get(r,p))?"bg-gray-300":"bg-blue-500"}`}),"Attributes"]})}),e.jsxRuntimeExports.jsx(o.AccordionContent,{className:"bg-gray-100 px-3.5 py-2",children:e.jsxRuntimeExports.jsxs("div",{className:"no-scrollbar flex min-h-max flex-col gap-y-2 overflow-y-auto bg-gray-100 p-px",children:[e.jsxRuntimeExports.jsxs(o.Label,{className:"mt-2 flex w-full items-center justify-between",children:["Add Custom attributes",e.jsxRuntimeExports.jsxs("div",{className:`flex h-6 w-max items-center justify-center gap-x-0.5 rounded-full border p-1 px-2 text-xs ${!t.isEmpty(i)&&t.isEmpty((b=t.last(i))==null?void 0:b.key)?"cursor-not-allowed border-gray-400 text-gray-400":"cursor-pointer border-blue-400 text-blue-400 hover:bg-blue-400 hover:text-white"}`,onClick:()=>{var j;!t.isEmpty(i)&&t.isEmpty((j=t.last(i))==null?void 0:j.key)||a()},children:[e.jsxRuntimeExports.jsx(d.PlusIcon,{width:12,height:12})," Add"]})]}),e.jsxRuntimeExports.jsxs("div",{className:"flex flex-col",children:[t.isEmpty(i)&&e.jsxRuntimeExports.jsx("div",{className:"flex h-12 items-center justify-center text-sm text-gray-400",children:"Click + Add to add attributes"}),M.Children.toArray(t.map(i,(j,y)=>{const v=i.length>0&&y<i.length-1;return e.jsxRuntimeExports.jsx(Ge,{item:j,index:y,canDelete:v,onChange:h,onRemove:()=>g(y)})}))]})]})})]})};function Je(){const[s,n]=o.useStylingState(),{flexChild:r,gridChild:i}=o.useSelectedBlocksDisplayChild(),[,l]=ye.useAtom(o.advanceStylingOpenAtom),{t:u}=ee.useTranslation(),[x]=o.useSelectedStylingBlocks();return t.isEmpty(x)?e.jsxRuntimeExports.jsx("div",{className:"p-4 text-center",children:e.jsxRuntimeExports.jsxs("div",{className:"space-y-4 rounded-xl p-4",children:[e.jsxRuntimeExports.jsx(d.MixerHorizontalIcon,{className:"mx-auto text-3xl"}),e.jsxRuntimeExports.jsx("h1",{children:u("no_styling_block_selected")}),e.jsxRuntimeExports.jsxs("p",{className:"text-xs ",children:["Hint: Styling allowed blocks are highlighted with"," ",e.jsxRuntimeExports.jsx("span",{className:"border border-orange-500 p-px",children:"orange"})," border"]})]})}):e.jsxRuntimeExports.jsxs("div",{onClick:()=>l(!1),className:"flex h-full flex-col",children:[e.jsxRuntimeExports.jsx("div",{className:"flex flex-col space-x-4 space-y-3 border-b border-border px-4 py-2",children:e.jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-end gap-x-1.5",children:[e.jsxRuntimeExports.jsx(o.Label,{htmlFor:"",className:"flex gap-x-1.5 text-xs italic",children:"State"}),e.jsxRuntimeExports.jsxs(o.Select,{defaultValue:s,onValueChange:p=>n(p),children:[e.jsxRuntimeExports.jsx(o.SelectTrigger,{className:"h-auto w-fit p-1 px-3",children:e.jsxRuntimeExports.jsx(o.SelectValue,{placeholder:"State"})}),e.jsxRuntimeExports.jsxs(o.SelectContent,{children:[e.jsxRuntimeExports.jsx(o.SelectItem,{value:"",children:"Normal"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"hover",children:"Hover"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"active",children:"Active"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"focus",children:"Focus"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"before",children:"Before"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"after",children:"After"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"only",children:"Only"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"first",children:"First"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"last",children:"Last"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"first-letter",children:"First Letter"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"first-line",children:"First Line"}),e.jsxRuntimeExports.jsx(o.SelectItem,{value:"disabled",children:"Disabled"})]})]})]})}),e.jsxRuntimeExports.jsxs(o.ScrollArea,{className:"no-scrollbar -mx-1 h-full overflow-x-hidden",children:[e.jsxRuntimeExports.jsxs(o.Accordion,{type:"multiple",className:"h-full w-full",children:[r&&e.jsxRuntimeExports.jsx(q,{section:Ie}),i?e.jsxRuntimeExports.jsx(q,{section:Be}):null,Ae.map(p=>e.jsxRuntimeExports.jsx(q,{section:p},p.heading)),e.jsxRuntimeExports.jsx(Ke,{section:{heading:"Attributes"}})]}),e.jsxRuntimeExports.jsx("div",{className:"h-60"})]})]})}const Qe={px:1,"%":1,em:100,rem:100,ch:1,vw:1,vh:1,"-":1,deg:1,ms:.1},et=()=>{const s=o.useSelectedBlock(),{t:n}=ee.useTranslation(),[r,i]=c.useState(""),[l,u]=c.useState({onDrag:a=>a,onDragEnd:a=>a,dragStartY:0,dragging:!1,dragStartValue:0,dragUnit:"",negative:!1,cssProperty:""}),x=_.useThrottledCallback(a=>{const g=!t.get(l,"negative",!1),h=t.get(l,"cssProperty","");let m=parseFloat(l.dragStartValue);m=t.isNaN(m)?0:m;let b=Qe[l.dragUnit];(t.startsWith(h,"scale")||h==="opacity")&&(b=10);let y=(l.dragStartY-a.pageY)/b+m;g&&y<0&&(y=0),h==="opacity"&&y>1&&(y=1),l.onDrag(`${y}`),i(`${y}`)},[l],50),p=c.useCallback(()=>{setTimeout(()=>l.onDragEnd(`${r}`),100),u({onDrag:a=>a,onDragEnd:a=>a,dragStartY:0,dragging:!1,dragStartValue:0,dragUnit:"",negative:!1,cssProperty:""})},[l,r,u]);return t.isNull(s)?e.jsxRuntimeExports.jsx("div",{className:"p-4 text-center",children:e.jsxRuntimeExports.jsxs("div",{className:"space-y-4 rounded-xl p-4",children:[e.jsxRuntimeExports.jsx(d.MixerHorizontalIcon,{className:"mx-auto text-3xl"}),e.jsxRuntimeExports.jsx("h1",{children:n("no_block_selected_for_styling")})]})}):e.jsxRuntimeExports.jsx(O.ErrorBoundary,{children:e.jsxRuntimeExports.jsxs(oe.Provider,{value:{setDragData:u},children:[l.dragging?e.jsxRuntimeExports.jsx("div",{onMouseMove:x,onMouseUp:()=>p(),className:"absolute inset-0 z-30 cursor-row-resize bg-gray-300/10 "}):null,e.jsxRuntimeExports.jsxs(o.Tabs,{defaultValue:"settings",className:"flex h-full w-full flex-col py-1",children:[e.jsxRuntimeExports.jsxs(o.TabsList,{className:"mx-1 grid grid-cols-2",children:[e.jsxRuntimeExports.jsx(o.TabsTrigger,{value:"settings",children:"Settings"}),e.jsxRuntimeExports.jsx(o.TabsTrigger,{value:"styling",children:"Styling"})]}),e.jsxRuntimeExports.jsx(o.TabsContent,{value:"settings",className:"no-scrollbar -mx-1 -mr-2 h-full flex-1 overflow-y-auto overflow-x-hidden",children:e.jsxRuntimeExports.jsx(Se,{})}),e.jsxRuntimeExports.jsx(o.TabsContent,{value:"styling",className:"flex-1 overflow-y-auto overflow-x-hidden",children:e.jsxRuntimeExports.jsx(Je,{})})]})]})})};exports.default=et;
@@ -1 +0,0 @@
1
- "use strict";const n=require("./jsx-runtime-WUGKV8jN.cjs"),w=require("react"),mn=require("@radix-ui/react-toggle"),re=require("class-variance-authority"),c=require("./utils-It2K33fU.cjs"),pn=require("@radix-ui/react-switch"),fn=require("@radix-ui/react-slot"),xn=require("@radix-ui/react-accordion"),O=require("@radix-ui/react-icons"),gn=require("@radix-ui/react-alert-dialog"),bn=require("@radix-ui/react-dialog"),hn=require("@radix-ui/react-label"),vn=require("@radix-ui/react-scroll-area"),yn=require("@radix-ui/react-tabs"),jn=require("@radix-ui/react-tooltip"),wn=require("@radix-ui/react-popover"),Rn=require("@radix-ui/react-menubar"),kn=require("@radix-ui/react-hover-card"),An=require("@radix-ui/react-select"),Nn=require("@radix-ui/react-dropdown-menu"),Sn=require("@radix-ui/react-separator"),Cn=require("@radix-ui/react-toast"),F=require("cmdk"),En=require("@radix-ui/react-context-menu"),vt=require("react-icons-picker"),_n=require("react-dom"),i=require("lodash"),Bn=require("react-quill"),d=require("jotai"),yt=require("flat-to-nested"),fe=require("redux-undo"),$=require("./MODIFIERS-WFzDQfiT.cjs"),Pn=require("@chaibuilder/runtime"),Tn=require("@react-hookz/web");require("react-i18next");function D(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const s in e)if(s!=="default"){const o=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,o.get?o:{enumerable:!0,get:()=>e[s]})}}return t.default=e,Object.freeze(t)}const x=D(w),jt=D(mn),Le=D(pn),ae=D(xn),V=D(gn),_=D(bn),wt=D(hn),oe=D(vn),ie=D(yn),de=D(jn),ge=D(wn),C=D(Rn),ke=D(kn),M=D(An),B=D(Nn),Rt=D(Sn),U=D(Cn),P=D(En);var L={BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};let In=0;function K(e,t){const s=`atom${++In}`,o={toString:()=>s};return typeof e=="function"?o.read=e:(o.init=e,o.read=a=>a(o),o.write=(a,r,l)=>r(o,typeof l=="function"?l(a(o)):l)),t&&(o.write=t),o}const Pe=e=>"init"in e,Te=e=>!!e.write,je=new WeakMap,Mn=(e,t)=>{je.set(e,t),e.catch(()=>{}).finally(()=>je.delete(e))},at=(e,t)=>{const s=je.get(e);s&&(je.delete(e),s(t))},rt=(e,t)=>{e.status="fulfilled",e.value=t},it=(e,t)=>{e.status="rejected",e.reason=t},Dn=e=>typeof(e==null?void 0:e.then)=="function",pe=(e,t)=>"v"in e&&"v"in t&&Object.is(e.v,t.v),lt=(e,t)=>"e"in e&&"e"in t&&Object.is(e.e,t.e),ce=e=>"v"in e&&e.v instanceof Promise,Ln=(e,t)=>"v"in e&&"v"in t&&e.v.orig&&e.v.orig===t.v.orig,he=e=>{if("e"in e)throw e.e;return e.v},kt=()=>{const e=new WeakMap,t=new WeakMap,s=new Map;let o,a,r;(L?"production":void 0)!=="production"&&(o=new Set,a=new Set,r=new Set);const l=m=>e.get(m),p=(m,b)=>{(L?"production":void 0)!=="production"&&Object.freeze(b);const y=e.get(m);if(e.set(m,b),s.has(m)||s.set(m,y),y&&ce(y)){const h="v"in b?b.v instanceof Promise?b.v:Promise.resolve(b.v):Promise.reject(b.e);at(y.v,h)}},f=(m,b,y)=>{const h=new Map;let j=!1;y.forEach((v,k)=>{!v&&k===m&&(v=b),v?(h.set(k,v),b.d.get(k)!==v&&(j=!0)):(L?"production":void 0)!=="production"&&console.warn("[Bug] atom state not found")}),(j||b.d.size!==h.size)&&(b.d=h)},u=(m,b,y)=>{const h=l(m),j={d:(h==null?void 0:h.d)||new Map,v:b};if(y&&f(m,j,y),h&&pe(h,j)&&h.d===j.d)return h;if(h&&ce(h)&&ce(j)&&Ln(h,j)){if(h.d===j.d)return h;j.v=h.v}return p(m,j),j},g=(m,b,y,h)=>{if(Dn(b)){let j;const v=new Promise((k,T)=>{let N=!1;b.then(E=>{if(!N){N=!0;const S=l(m),J=u(m,v,y);rt(v,E),k(E),(S==null?void 0:S.d)!==J.d&&q(m,J,S==null?void 0:S.d)}},E=>{if(!N){N=!0;const S=l(m),J=u(m,v,y);it(v,E),T(E),(S==null?void 0:S.d)!==J.d&&q(m,J,S==null?void 0:S.d)}}),j=E=>{N||(N=!0,E.then(S=>rt(v,S),S=>it(v,S)),k(E))}});return v.orig=b,v.status="pending",Mn(v,k=>{k&&j(k),h==null||h()}),u(m,v,y)}return u(m,b,y)},R=(m,b,y)=>{const h=l(m),j={d:(h==null?void 0:h.d)||new Map,e:b};return y&&f(m,j,y),h&&lt(h,j)&&h.d===j.d?h:(p(m,j),j)},A=m=>{const b=l(m);if(b&&(b.d.forEach((N,E)=>{E!==m&&!t.has(E)&&A(E)}),Array.from(b.d).every(([N,E])=>{const S=l(N);return N===m||S===E||S&&!ce(S)&&pe(S,E)})))return b;const y=new Map;let h=!0;const j=N=>{if(N===m){const S=l(N);if(S)return y.set(N,S),he(S);if(Pe(N))return y.set(N,void 0),N.init;throw new Error("no atom init")}const E=A(N);return y.set(N,E),he(E)};let v,k;const T={get signal(){return v||(v=new AbortController),v.signal},get setSelf(){return(L?"production":void 0)!=="production"&&!Te(m)&&console.warn("setSelf function cannot be used with read-only atom"),!k&&Te(m)&&(k=(...N)=>{if((L?"production":void 0)!=="production"&&h&&console.warn("setSelf function cannot be called in sync"),!h)return Q(m,...N)}),k}};try{const N=m.read(j,T);return g(m,N,y,()=>v==null?void 0:v.abort())}catch(N){return R(m,N,y)}finally{h=!1}},I=m=>he(A(m)),z=m=>{let b=t.get(m);return b||(b=Y(m)),b},W=(m,b)=>!b.l.size&&(!b.t.size||b.t.size===1&&b.t.has(m)),X=m=>{const b=t.get(m);b&&W(m,b)&&se(m)},le=m=>{const b=new Map,y=new WeakMap,h=v=>{const k=t.get(v);k==null||k.t.forEach(T=>{T!==v&&(b.set(T,(b.get(T)||new Set).add(v)),y.set(T,(y.get(T)||0)+1),h(T))})};h(m);const j=v=>{const k=t.get(v);k==null||k.t.forEach(T=>{var N;if(T!==v){let E=y.get(T);if(E&&y.set(T,--E),!E){let S=!!((N=b.get(T))!=null&&N.size);if(S){const J=l(T),un=A(T);S=!J||!pe(J,un)}S||b.forEach(J=>J.delete(T))}j(T)}})};j(m)},Z=(m,...b)=>{let y=!0;const h=k=>he(A(k)),j=(k,...T)=>{let N;if(k===m){if(!Pe(k))throw new Error("atom not writable");const E=l(k),S=g(k,T[0]);(!E||!pe(E,S))&&le(k)}else N=Z(k,...T);if(!y){const E=ee();(L?"production":void 0)!=="production"&&a.forEach(S=>S({type:"async-write",flushed:E}))}return N},v=m.write(h,j,...b);return y=!1,v},Q=(m,...b)=>{const y=Z(m,...b),h=ee();return(L?"production":void 0)!=="production"&&a.forEach(j=>j({type:"write",flushed:h})),y},Y=(m,b)=>{const y={t:new Set(b&&[b]),l:new Set};if(t.set(m,y),(L?"production":void 0)!=="production"&&r.add(m),A(m).d.forEach((h,j)=>{const v=t.get(j);v?v.t.add(m):j!==m&&Y(j,m)}),A(m),Te(m)&&m.onMount){const h=m.onMount((...j)=>Q(m,...j));h&&(y.u=h)}return y},se=m=>{var b;const y=(b=t.get(m))==null?void 0:b.u;y&&y(),t.delete(m),(L?"production":void 0)!=="production"&&r.delete(m);const h=l(m);h?(ce(h)&&at(h.v),h.d.forEach((j,v)=>{if(v!==m){const k=t.get(v);k&&(k.t.delete(m),W(v,k)&&se(v))}})):(L?"production":void 0)!=="production"&&console.warn("[Bug] could not find atom state to unmount",m)},q=(m,b,y)=>{const h=new Set(b.d.keys());y==null||y.forEach((j,v)=>{if(h.has(v)){h.delete(v);return}const k=t.get(v);k&&(k.t.delete(m),W(v,k)&&se(v))}),h.forEach(j=>{const v=t.get(j);v?v.t.add(m):t.has(m)&&Y(j,m)})},ee=()=>{let m;for((L?"production":void 0)!=="production"&&(m=new Set);s.size;){const b=Array.from(s);s.clear(),b.forEach(([y,h])=>{const j=l(y);if(j){j.d!==(h==null?void 0:h.d)&&q(y,j,h==null?void 0:h.d);const v=t.get(y);v&&!(h&&!ce(h)&&(pe(h,j)||lt(h,j)))&&(v.l.forEach(k=>k()),(L?"production":void 0)!=="production"&&m.add(y))}else(L?"production":void 0)!=="production"&&console.warn("[Bug] no atom state to flush")})}if((L?"production":void 0)!=="production")return o.forEach(b=>b("state")),m},te=(m,b)=>{const y=z(m),h=ee(),j=y.l;return j.add(b),(L?"production":void 0)!=="production"&&(o.forEach(v=>v("sub")),a.forEach(v=>v({type:"sub",flushed:h}))),()=>{j.delete(b),X(m),(L?"production":void 0)!=="production"&&(o.forEach(v=>v("unsub")),a.forEach(v=>v({type:"unsub"})))}};return(L?"production":void 0)!=="production"?{get:I,set:Q,sub:te,dev_subscribe_store:(m,b)=>b!==2?(console.warn("The current StoreListener revision is 2. The older ones are deprecated."),o.add(m),()=>{o.delete(m)}):(a.add(m),()=>{a.delete(m)}),dev_get_mounted_atoms:()=>r.values(),dev_get_atom_state:m=>e.get(m),dev_get_mounted:m=>t.get(m),dev_restore_atoms:m=>{for(const[y,h]of m)Pe(y)&&(g(y,h),le(y));const b=ee();a.forEach(y=>y({type:"restore",flushed:b}))}}:{get:I,set:Q,sub:te}};let Ie;const On=()=>(Ie||(Ie=kt()),Ie);var Vn={BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const zn=w.createContext(void 0),Fe=e=>{const t=w.useContext(zn);return(e==null?void 0:e.store)||t||On()};const $n=e=>typeof(e==null?void 0:e.then)=="function",Fn=w.use||(e=>{if(e.status==="pending")throw e;if(e.status==="fulfilled")return e.value;throw e.status==="rejected"?e.reason:(e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t}),e)});function At(e,t){const s=Fe(t),[[o,a,r],l]=w.useReducer(u=>{const g=s.get(e);return Object.is(u[0],g)&&u[1]===s&&u[2]===e?u:[g,s,e]},void 0,()=>[s.get(e),s,e]);let p=o;(a!==s||r!==e)&&(l(),p=s.get(e));const f=t==null?void 0:t.delay;return w.useEffect(()=>{const u=s.sub(e,()=>{if(typeof f=="number"){setTimeout(l,f);return}l()});return l(),u},[s,e,f]),w.useDebugValue(p),$n(p)?Fn(p):p}function Nt(e,t){const s=Fe(t);return w.useCallback((...a)=>{if((Vn?"production":void 0)!=="production"&&!("write"in e))throw new Error("not writable atom");return s.set(e,...a)},[s,e])}function qn(e,t){return[At(e,t),Nt(e,t)]}var qe={BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const St=Symbol();function Un(e,t){const s=K(e,(o,a,r)=>a(s,t(o(s),r)));return s}const ct=(e,t,s)=>(t.has(s)?t:t.set(s,e())).get(s),Gn=new WeakMap,Hn=(e,t,s)=>{const o=ct(()=>new WeakMap,Gn,t);return ct(e,o,s)},Wn={},dt=e=>!!e.write,Yn=e=>typeof e=="function";function Kn(e,t){return Hn(()=>{const s=new WeakMap,o=(l,p)=>{let f=s.get(l);if(f)return f;const u=p&&s.get(p),g=[],R=[];return l.forEach((A,I)=>{const z=t?t(A):I;R[I]=z;const W=u&&u.atomList[u.keyList.indexOf(z)];if(W){g[I]=W;return}const X=Z=>{const Q=Z(a),Y=Z(e),q=o(Y,Q==null?void 0:Q.arr).keyList.indexOf(z);if(q<0||q>=Y.length){const ee=l[o(l).keyList.indexOf(z)];if(ee)return ee;throw new Error("splitAtom: index out of bounds for read")}return Y[q]},le=(Z,Q,Y)=>{const se=Z(a),q=Z(e),te=o(q,se==null?void 0:se.arr).keyList.indexOf(z);if(te<0||te>=q.length)throw new Error("splitAtom: index out of bounds for write");const m=Yn(Y)?Y(q[te]):Y;Q(e,[...q.slice(0,te),m,...q.slice(te+1)])};g[I]=dt(e)?K(X,le):K(X)}),u&&u.keyList.length===R.length&&u.keyList.every((A,I)=>A===R[I])?f=u:f={arr:l,atomList:g,keyList:R},s.set(l,f),f},a=K(l=>{const p=l(a),f=l(e);return o(f,p==null?void 0:p.arr)});(qe?"production":void 0)!=="production"&&(a.debugPrivate=!0),a.init=void 0;const r=dt(e)?K(l=>l(a).atomList,(l,p,f)=>{switch(f.type){case"remove":{const u=l(r).indexOf(f.atom);if(u>=0){const g=l(e);p(e,[...g.slice(0,u),...g.slice(u+1)])}break}case"insert":{const u=f.before?l(r).indexOf(f.before):l(r).length;if(u>=0){const g=l(e);p(e,[...g.slice(0,u),f.value,...g.slice(u)])}break}case"move":{const u=l(r).indexOf(f.atom),g=f.before?l(r).indexOf(f.before):l(r).length;if(u>=0&&g>=0){const R=l(e);u<g?p(e,[...R.slice(0,u),...R.slice(u+1,g),R[u],...R.slice(g)]):p(e,[...R.slice(0,g),R[u],...R.slice(g,u),...R.slice(u+1)])}break}}}):K(l=>l(a).atomList);return r},e,t||Wn)}function Jn(e){const t=Symbol(),s=K(t);(qe?"production":void 0)!=="production"&&(s.debugPrivate=!0);const o=K((a,r)=>{const l=a(s);return l!==t?l:e(a,r)},(a,r,l)=>{if(l===St)r(s,t);else if(typeof l=="function"){const p=a(o);r(s,l(p))}else r(s,l)});return o}const Qn=e=>typeof(e==null?void 0:e.then)=="function";function Xn(e){let t,s;const o={getItem:(a,r)=>{var l,p;const f=g=>{if(g=g||"",t!==g){try{s=JSON.parse(g)}catch{return r}t=g}return s},u=(p=(l=e())==null?void 0:l.getItem(a))!=null?p:null;return Qn(u)?u.then(f):f(u)},setItem:(a,r)=>{var l;return(l=e())==null?void 0:l.setItem(a,JSON.stringify(r))},removeItem:a=>{var r;return(r=e())==null?void 0:r.removeItem(a)}};return typeof window<"u"&&typeof window.addEventListener=="function"&&(o.subscribe=(a,r,l)=>{if(!(e()instanceof window.Storage))return()=>{};const p=f=>{if(f.storageArea===e()&&f.key===a){let u;try{u=JSON.parse(f.newValue||"")}catch{u=l}r(u)}};return window.addEventListener("storage",p),()=>{window.removeEventListener("storage",p)}}),o}const Zn=Xn(()=>typeof window<"u"?window.localStorage:void 0);function ue(e,t,s=Zn,o){const a=o==null?void 0:o.unstable_getOnInit,r=K(a?s.getItem(e,t):t);return(qe?"production":void 0)!=="production"&&(r.debugPrivate=!0),r.onMount=p=>{a||p(s.getItem(e,t));let f;return s.subscribe&&(f=s.subscribe(e,p,t)),f},K(p=>p(r),(p,f,u)=>{const g=typeof u=="function"?u(p(r)):u;return g===St?(f(r,t),s.removeItem(e)):g instanceof Promise?g.then(R=>(f(r,R),s.setItem(e,R))):(f(r,g),s.setItem(e,g))})}const Ae=d.atom(null);Ae.debugLabel="chaiBuilderPropsAtom";const Ct=d.atom({});Ct.debugLabel="chaiExternalDataAtom";const ea=()=>!1,ta=e=>{const t=e.replace($.STYLES_KEY,"").split(",");return{baseClasses:t[0],classes:t[1]}};const sa=new yt({children:"blockNodes"}),Et=(e,t=null)=>i.flatten(e.map(s=>{if(s=t!==null?{...s,parent:t}:s,s.children&&s.children.length){const o=[...s.children];return delete s.children,i.flatten([s,...Et(o,s._id)])}return s}));function _t(e,t,s){const o=i.filter(e,r=>r._parent===t),a=[];for(let r=0;r<o.length;r++){const l=Bt(o[r]);if(Object.keys(l).length>0&&Object.keys(l).forEach(p=>{o[r][p]=`slot:${c.generateUUID()}`}),i.filter(e,{_parent:o[r]._id}).length>0){const p=c.generateUUID();a.push({...o[r],oldId:o[r]._id,_id:p,_parent:s}),a.push(i.flatten(_t(e,o[r]._id,p)))}else a.push({...o[r],oldId:o[r]._id,_id:c.generateUUID(),_parent:s})}return i.flatten(a)}function oa(e){let t=sa.convert(e.map(s=>i.omit(s,["settings"])));return t=!t.type&&t.blockNodes?t.blockNodes:i.isEmpty(t)?[]:[t],t}const Bt=e=>{const t={};return Object.keys(e).forEach(s=>{i.isString(e[s])&&e[s].startsWith("slot")&&(t[s]=e[s].replace("slot:",""))}),t},na=(e,t,s=null)=>{let o=i.find(e,{_id:t});o={...o,oldId:o._id,_id:c.generateUUID()},s&&(o={...o,_parent:s});const a=[o];i.filter(e,{_parent:t}).length>0&&a.push(i.flatten(_t(e,t,o._id)));const r=i.flatten(a);return i.map(r,l=>{const p=l,f=Bt(p);return Object.keys(f).length>0&&Object.keys(f).forEach(u=>{const g=i.find(r,{oldId:f[u].replace("slot:","")});p[u]=`slot:${g._id}`}),i.omit(p,["global","oldId"])})};const aa=fe((e=[],t)=>{switch(t.type){case"add_new_blocks":case"add_duplicate_blocks":return[...e,...t.payload];case"create_snapshot":return[...e];case"set_blocks":case"set_page_blocks":return[...t.payload];case"update_props":case"update_props_realtime":const{payload:s}=t;return e.map(o=>(s.ids.includes(o._id)&&!i.isEmpty(t.payload.props)&&Object.keys(t.payload.props).forEach(a=>{i.set(o,a,t.payload.props[a])}),o));default:return e}},{debug:!1,ignoreInitialState:!1,limit:30,filter:fe.excludeAction(["update_props_realtime","add_duplicate_blocks","set_page_blocks"])}),Ne=Un({past:[],present:[],future:[]},aa);Ne.debugLabel="pageBlocksAtom";const G=d.atom(e=>{var t;return(t=e(Ne))==null?void 0:t.present});G.debugLabel="presentBlocksAtom";const Ue=Kn(G);Ue.debugLabel="pageBlocksAtomsAtom";const Pt=d.atom(e=>oa(e(G)));Pt.debugLabel="pageBlocksTreeAtom";const ra=d.atom("");ra.debugLabel="builderActivePageAtom";const ia=d.atom(-1);ia.debugLabel="destinationDropIndexAtom";const Tt=d.atom(!1);Tt.debugLabel="addBlocksModalAtom";const It=d.atom([]);It.debugLabel="buildingBlocksAtom";const Mt=d.atom(e=>{const t=e(It);return i.filter(t,s=>i.has(s,"blockId"))});Mt.debugLabel="globalBlocksAtom";const H=()=>{const[,e]=d.useAtom(Ne);return e},la=()=>{const e=H(),t=d.useAtomValue(Pt),s=w.useCallback(o=>{const a=Et(o);e({type:"set_page_blocks",payload:a})},[e]);return[t,s]},ca=()=>{const e=H();return[w.useCallback(s=>{e({type:"set_page_blocks",payload:s})},[e])]},Oe=e=>["Box","Slot","Form","DataProvider","Link","List","ListItem","Row","Column","Table","TableCell"].includes(e),da=e=>!["Slot"].includes(e),ua=e=>!["Slot"].includes(e);function ma(e,t){return e==="Slot"||t==="List"&&e!=="ListItem"||t==="Row"&&e!=="Column"?!1:Oe(t)}const pa=(e,{dragSource:t,dropTarget:s})=>{const o=i.get(t,"data._type",""),a=i.get(s,"data._type","");return o==="Slot"||i.get(t,"id")&&i.get(t,"id")===i.get(s,"id")?!1:i.isEmpty(a)?!0:ma(o,a)},Ge=d.atom([]);Ge.debugLabel="selectedBlockIdsAtom";const He=d.atom(e=>{const t=e(G),s=e(Ge);return i.map(i.filter(t,({_id:o})=>i.includes(s,o)),o=>({...o}))});He.debugLabel="selectedBlocksAtom";const We=d.atom(e=>{const t=e(He);return t.length===0?null:t.length===1?t[0]:{type:"Multiple",id:i.map(t,"id")}});We.debugLabel="selectedBlockAtom";const fa=e=>i.get(e,"parent",null),xa=d.atom(e=>{const t=e(He),s=i.map(t,fa);return i.filter(e(G),o=>i.includes(s,o._id))});xa.debugLabel="selectedBlocksParentsAtom";const Dt=d.atom(()=>!1);Dt.debugLabel="selectedBlockFlexChildAtom";const Lt=d.atom(()=>!1);Lt.debugLabel="selectedBlockGridChildAtom";const Ye=d.atom("");Ye.debugLabel="styleStateAtom";const Ot=ue("styleBreakpoint","xs");Ot.debugLabel="styleBreakpointAtom";const ga=()=>({flexChild:d.useAtomValue(Dt),gridChild:d.useAtomValue(Lt)}),ba=()=>d.useAtomValue(We);const me=()=>{const[e,t]=d.useAtom(Ge),s=w.useCallback(o=>{t(a=>i.includes(a,o)?i.without(a,o):[...a,o])},[t]);return[e,t,s]},Ve=(e,t="")=>{switch(e.type){case"singular":return e.uiSchema;case"model":const{properties:s}=e,o={};return Object.keys(s).forEach(l=>{const p=s[l];if(i.includes(["slot","styles"],p.type))return;const f=i.get(p,"i18n",!1)?`${l}-${t}`:l;o[f]=Ve(p,t)}),o;case"list":const{itemProperties:a}=e,r={items:{}};return Object.keys(a).forEach(l=>{const p=a[l];if(i.includes(["slot","styles"],p.type))return;const f=i.get(p,"i18n",!1)?`${l}-${t}`:l;r.items[f]=Ve(p,t)}),r;default:return{}}},ze=(e,t="")=>{switch(e.type){case"singular":return e.schema;case"model":const{properties:s,title:o}=e,a={title:o,type:"object",properties:{}};return Object.keys(s).forEach(f=>{const u=s[f];if(i.includes(["slot","styles"],u.type))return;const g=i.get(u,"i18n",!1)?`${f}-${t}`:f;a.properties[g]=ze(u,t)}),a;case"list":const{itemProperties:r,title:l}=e,p={title:l,type:"array",items:{type:"object",properties:{}}};return Object.keys(r).forEach(f=>{const u=r[f];if(i.includes(["slot","styles"],u.type))return;const g=i.get(u,"i18n",!1)?`${f}-${t}`:f;p.items.properties[g]=ze(u,t),i.set(p.items,"title",i.get(u,"itemTitle",`${l} item`))}),p;default:return{}}},Vt=e=>{const t={};return Object.keys(e).forEach(s=>{t[s]=va(e[s])}),t},ha=e=>{if(i.isEmpty(e.default))return[];const{itemProperties:t}=e;return i.map(e.default,s=>{const o={...s};return i.forIn(s,(a,r)=>{i.has(t,r)&&i.get(t[r],"i18n",!1)&&(o[r]=$.I18N_KEY)}),o})},va=e=>{switch(e.type){case"styles":return e.default;case"slot":return`${$.SLOT_KEY}${c.generateUUID()}`;case"singular":const{i18n:t,schema:s}=e;return t?$.I18N_KEY:i.get(s,"default","");case"model":return Vt(e.properties);case"list":return ha(e);default:return""}};const zt=()=>d.useAtomValue(G);function ut(e,t,s,o,a){if(t===null)return[...e,...o];if(s!==null){const f=i.findIndex(e,{_parent:t}),u=(f===-1?0:f)+s;return e.splice(u,0,...o),e}if(!a){const u=i.findIndex(e,{_id:t})+1;return e.splice(u,0,...o),e}let r=i.findIndex(e,{_id:t});const l=i.filter(e,{_parent:t});i.isEmpty(l)||(r=i.findIndex(e,{_id:i.last(l)._id}));const p=r+1;return e.splice(p,0,...o),e}const ya=()=>{const e=H(),t=zt(),[,s]=me(),o=w.useCallback((r,l,p)=>{var g;for(let R=0;R<r.length;R++){const{_id:A}=r[R];r[R]._id=c.generateUUID();const I=i.filter(r,{_parent:A});for(let z=0;z<I.length;z++)I[z]._parent=r[R]._id}let f;l&&(f=i.find(t,{_id:l}),r[0]._parent=l);const u=f?Oe(f._type):!0;return!u&&f&&(r[0]._parent=f._parent),e({type:"set_blocks",payload:ut(t,l||null,p||null,r,u)}),s([(g=i.first(r))==null?void 0:g._id]),i.first(r)},[t,e,s]);return{addCoreBlock:w.useCallback((r,l,p)=>{if(i.has(r,"blocks")){const W=r.blocks;return o(W,l,p)}const f=c.generateUUID(),u=Vt(r.props),g=[];i.forIn(u,(W,X)=>{if(i.startsWith(W,$.SLOT_KEY)){const le=W.replace($.SLOT_KEY,"");g.push({_id:le,_type:"Slot",_parent:f,_name:r.props[X].name,_styles:r.props[X].styles,_emptyStyles:r.props[X].emptyStyles})}});const R={_type:r.type,_id:f,...u};let A;l&&(A=i.find(t,{_id:l}),R._parent=l);const I=A?Oe(A._type):!0;!I&&A&&(R._parent=A._parent);const z=[R,...g];return e({type:"set_blocks",payload:ut(t,l||null,p||null,z,I)}),s([R._id]),R},[o,t,e,s]),addPredefinedBlock:o}},mt={xs:420,sm:620,md:768,lg:1024,xl:1280,"2xl":1536},pt=["xs","sm","md","lg","xl","2xl"];function ja(e,t){if(t===null)return"baseClasses";const s=t.mq;if(s==="xs"||t.dark||t.mod!=="")return"classes";let o="baseClasses",a=pt.indexOf(s);for(;a>0;){const r=pt[a-1];if(i.find(e,{mq:r,property:t.property})){o="classes";break}a--}return o}const ft=[];function wa(e="",t="",s=[]){e=e.trim().replace(/ +/g,"");let o=i.filter(i.map(e.split(" "),c.constructClassObject),u=>!i.isNull(u)),a=i.filter(i.map(t.split(" "),c.constructClassObject),u=>!i.isNull(u));a=i.filter(a,u=>!i.includes(ft,u.property));const r=[],l=[];i.each(s,u=>{const g=c.constructClassObject(u),R=i.find(o,i.pick(g,["dark","mq","mod","property"]));if(R&&(o=i.filter(o,A=>A.fullCls!==(R==null?void 0:R.fullCls))),r.push(g),g.mq==="xs"&&!g.dark&&g.mod===""&&(a=i.filter(a,A=>A.property!==g.property)),ja(o,g)==="baseClasses"&&!i.includes(ft,g.property)){const A=i.find(a,i.pick(g,["property"]));R&&(a=i.filter(a,I=>I.fullCls!==(A==null?void 0:A.fullCls))),l.push({...g,fullCls:g.cls,mq:"xs"})}});const p=i.map(i.sortBy([...o,...r],u=>mt[u.mq]),"fullCls").join(" ");return`${i.map(i.sortBy([...a,...l],u=>mt[u.mq]),"fullCls").join(" ").trim()},${p.trim()}`.trim().replace(/ +/g,"")}const be=d.atom([]);be.debugLabel="selectedStylingBlocksAtom";const Ke=()=>d.useAtom(be),Ra=e=>{const t=e.replace($.STYLES_KEY,"").split(",");return{baseClasses:t[0],classes:t[1]}},ka=d.atom(null,(e,t,{blockIds:s,newClasses:o,dispatch:a})=>{const r=i.filter(e(Ue),p=>s.includes(e(p)._id)),l=i.first(e(be));i.each(r,p=>{const f=e(p),u=i.get(f,l.prop,`${$.STYLES_KEY},`),{baseClasses:g,classes:R}=Ra(u);a({type:"update_props_realtime",payload:{ids:[f._id],props:{[l.prop]:`${$.STYLES_KEY}${wa(R,g,o)}`}}})})}),Aa=()=>{const e=H(),t=d.useSetAtom(ka);return w.useCallback((s,o,a)=>{t({blockIds:s,newClasses:o,dispatch:e}),a&&setTimeout(()=>e({type:"create_snapshot"}),500)},[e,t])},xt=()=>{},$t=()=>{const e=Pn.useChaiBlocks(),t=d.useAtomValue(Mt),s=()=>{xt()},o=w.useCallback(()=>xt(),[]);return[e,t,s,o]},Na=d.atom(!1),Ft=()=>{const[e,t]=d.useAtom(Na);return[e,t]},Sa=d.atom($.BRANDING_OPTIONS_DEFAULTS),qt=()=>{const[e,t]=d.useAtom(Sa);return[i.isObject(e)?{...$.BRANDING_OPTIONS_DEFAULTS,...e}:$.BRANDING_OPTIONS_DEFAULTS,t]},Ca=d.atom(null),Ut=()=>({currentPage:d.useAtomValue(Ca)}),Gt=new yt({});function Ea(e){let t=Gt.convert(e);return t=!t.type&&t.children&&t.children.length?t.children:i.isEmpty(t)?[]:[t],t}const Je=(e,t)=>i.flatten(e.map(s=>{if(s=t?{...s,parent:t}:{...s},s.children){const o=[...s.children];return delete s.children,i.flatten([s,...Je(o,s._id)])}return s}));function Qe(e,t=!1){for(let s=0;s<e.length;s++){const o=e[s];o.global&&!t?e[s]={type:"GlobalBlock",blockId:o.blockId,_parent:i.get(o,"parent",null),_id:o._id}:o.children&&o.children.length&&Qe(o.children)}}function Ht(e){let t=[],s=i.filter(e,{type:"GlobalBlock"});return s.length>0&&(s=i.map(s,Wt),i.each(s,o=>{t=[...t,..._a(o)]})),t}function _a(e){let t=[];const s=i.get(i.first(e),"parent",null);i.set(i.first(e),"parent",null);const o=[Gt.convert(Yt(e))];Qe(o,!0);let a=Je(o,e[0]._id);return a=i.set(a,"0.parent",s),t=[...t,a,...Ht(a)],t}function Wt(e){const t=i.find($e,{_id:e._id});if(!t)return[];const s=[t],o=i.filter($e,{_parent:e._id});return o.length?i.flatten([...s,...i.flatten(i.map(o,Wt))]):i.flatten(s)}const Yt=e=>JSON.parse(JSON.stringify(e));let $e=[];function Ba(e){$e=e;const t=Ea(Yt(e));Qe(t);const s=Je(t,null),o=Ht(s),a={};return i.each(o,r=>i.set(a,i.first(r).blockId,r)),[s,a]}const Xe=()=>{const[e]=qt(),{currentPage:t}=Ut(),s=d.useAtomValue(G);return w.useCallback(()=>{const o=i.map(s,l=>i.omit(l,["expanded","order","title","siblings","tempClasses"])),[a=[],r=[]]=Ba(o);return{currentPage:t,blocks:a,globalBlocks:r}},[e,t,s])},ne=(e,t=void 0)=>{const s=d.useAtomValue(Ae);return i.get(s,e,t)},Kt=d.atom(!1);Kt.debugLabel="readOnlyModeAtom";const Jt=d.atom(!1);Jt.debugLabel="inlineEditingActiveAtom";const Qt=d.atom(!1);Qt.debugLabel="advanceStylingOpenAtom";const Xt=d.atom("online");Xt.debugLabel="networkModeAtom";const Pa=d.atom(!1);Pa.debugLabel="codeEditorOpenAtom";const Zt=d.atom(!1);Zt.debugLabel="editLayerNameAtom";const Ta=d.atom("");Ta.debugLabel="activeLanguageAtom";const Ia=d.atom("");Ia.debugLabel="primaryLanguageAtom";const es=d.atom(null);es.debugLabel="canvasIframeAtom";const ts=d.atom("layers");ts.debugLabel="activePanelAtom";const ss=d.atom(!1);ss.debugLabel="addBlockOffCanvasAtom";const os=d.atom("");os.debugLabel="showPredefinedBlockCategoryAtom";const Se=d.atom({undoCount:0,redoCount:0});Se.debugLabel="historyStatesAtom";const Ze=d.atom([]);Ze.debugLabel="dataProvidersAtom";const ns=()=>d.useAtom(Ze),Ce=d.atom("SAVED");Ce.debugLabel="pageSyncStateAtom";const Ma=()=>{const[e,t]=d.useAtom(Ce),s=ne("onSaveBlocks",async()=>{}),o=ne("onSavePage",async()=>{}),a=ne("onSyncStatusChange",()=>{}),r=Xe(),l=d.useSetAtom(Se),{undoCount:p,redoCount:f}=Ee(),[u]=ns();return{savePage:Tn.useThrottledCallback(async()=>{t("SAVING"),a("SAVING");const R=r();return await o({blocks:R.blocks,providers:u}),setTimeout(()=>{l({undoCount:p,redoCount:f}),t("SAVED"),a("SAVED")},100),!0},[r,t,a,s],5e3),syncState:e,setSyncState:t}},Ee=()=>{const e=d.useAtomValue(Ne),[{undoCount:t,redoCount:s}]=d.useAtom(Se),o=H(),[a]=Ft(),[,r]=me(),[,l]=Ke(),[p,f]=d.useAtom(Ce),u=ne("onSyncStatusChange",()=>{}),g=w.useCallback(()=>{o({type:"create_snapshot"})},[o]);return w.useEffect(()=>{(p==="SAVED"&&t!==(e==null?void 0:e.past.length)||s!==(e==null?void 0:e.future.length))&&(f("UNSAVED"),u("UNSAVED"))},[e==null?void 0:e.past.length,e==null?void 0:e.future.length,t,s,u,f,p]),{undoCount:e==null?void 0:e.past.length,redoCount:e==null?void 0:e.future.length,undo:w.useCallback(()=>{a||(o(fe.ActionCreators.undo()),setTimeout(()=>{l([]),r([])},200))},[o,a,r,l]),redo:w.useCallback(()=>{a||(o(fe.ActionCreators.redo()),setTimeout(()=>{l([]),r([])},200))},[a,o,l,r]),clear:()=>{o(fe.ActionCreators.clearHistory())},createSnapshot:g}},as=()=>d.useAtom(Ot),rs=ue("canvasWidth",800),is=d.atom(e=>{const t=e(rs);return c.getBreakpointValue(t).toLowerCase()}),Da=()=>{const[e,t]=d.useAtom(rs),s=d.useAtomValue(is),[o,a]=as();return w.useEffect(()=>{o!=="xs"&&a(s)},[s,o,a]),[e,s,t]},La=ue("canvasZoom",100),Oa=()=>d.useAtom(La),ls=d.atom([]),cs=()=>{const[e,t]=d.useAtom(ls),s=d.useSetAtom(et),o=w.useCallback(a=>{t(a),s([])},[t,s]);return[e,o]},et=d.atom([]),Va=()=>{const[e,t]=d.useAtom(et),s=d.useSetAtom(ls),o=w.useCallback(a=>{t(a),s([])},[t,s]);return[e,o]},ds=ue("darkMode",!1),za=()=>{const[e,t]=d.useAtom(ds);return[e,t]},$a=d.atom(!1),Fa=()=>{const[e,t]=d.useAtom($a);return[e,t]},us=()=>{const e=H(),t=d.useAtomValue(G),[,s]=me();return w.useCallback((o,a=null)=>{const r=[];i.each(o,l=>{const f=na(t,l,a===l?null:a);r.push(i.get(f,"0._id","")),e({type:"add_duplicate_blocks",payload:f})}),s(r),e({type:"create_snapshot"})},[t,s,e])},qa=d.atom([]),Ua=()=>{const[e,t]=d.useAtom(qa),s=w.useCallback(o=>{t(a=>i.includes(a,o)?i.without(a,o):[...a,o])},[t]);return[e,t,s]},Ga=d.atom(""),ms=()=>d.useAtom(Ga),Ha=()=>{const e=d.useAtomValue(G),t=H(),s=Xe(),[,,o]=$t();return w.useCallback(async(a,r)=>{const l=c.generateUUID(16),p=i.map(e,f=>(f._id===a&&(f._globalBlockId=l,f._name=r),f));t({type:"set_page_blocks",payload:p}),o()},[e,t,s,o])},Wa=()=>({}),Ya=()=>{const e=d.useAtomValue(G),t=H();return w.useCallback((s,o)=>{const a=i.map(e,r=>(i.includes(s,i.get(r,"_id"))&&i.set(r,"_parent",o),r));t({type:"set_blocks",payload:a})},[e,t])},Ka=()=>{const e=d.useAtomValue(et),[t,s]=cs(),o=us(),a=Ya();return{canPaste:w.useMemo(()=>t.length>0||e.length>0,[e,t]),pasteBlocks:w.useCallback(l=>{i.isEmpty(e)?a(t,l):o(e,l),s(()=>[])},[t,e,o,a,s])}},Ja=d.atom(""),Qa=()=>{const e=d.useAtomValue(Ja),t=w.useCallback(()=>{},[]),s=w.useCallback(()=>{},[]),o=w.useCallback(()=>{},[]);return{currentProject:e,createProject:o,deleteProject:t,updateProject:s}},ps=(e,t)=>{const s=[],o=i.filter(e,a=>i.includes(t,a._id)||i.includes(t,a._parent)?(s.push(a._id),!1):!0);return i.isEmpty(s)?o:ps(o,s)},Xa=()=>{const e=H(),t=d.useAtomValue(G),[s,o]=me();return w.useCallback(a=>{var p;const r=((p=i.find(t,{_id:a[0]}))==null?void 0:p._parent)||null,l=ps(t,a);e({type:"set_blocks",payload:l}),o(r?[r]:[])},[t,o,e,s])},Za=d.atom(null,(e,t,{blockIds:s,fullClasses:o,dispatch:a})=>{const r=i.first(e(be)),l=i.filter(e(Ue),p=>s.includes(e(p)._id));i.each(l,p=>{const f=e(p),u=o;let{classes:g,baseClasses:R}=ta(i.get(f,r.prop,"styles:,"));i.each(u,A=>{const I=new RegExp(`(^| )${A.replace("[","\\[").replace("]","\\]")}($| )`,"g");g=g.replace(I," ").replace(/ +/g," ").trim();const z=i.first(A.split(":"));i.includes(["2xl","xl","lg","md","sm"],z)&&u.push(A.split(":").pop().trim())}),i.each(u,A=>{const I=new RegExp(`(^| )${A.replace("[","\\[").replace("]","\\]")}($| )`,"g");R=R.replace(I," ").replace(/ +/g," ").trim()}),a({type:"update_props_realtime",payload:{ids:[f._id],props:{[r.prop]:`${$.STYLES_KEY}${R},${g}`}}})})}),er=()=>{const e=H(),t=d.useSetAtom(Za);return w.useCallback((s,o)=>{t({blockIds:s,fullClasses:o,dispatch:e}),setTimeout(()=>e({type:"create_snapshot"}))},[e,t])},fs=d.atom(e=>{const t=i.first(e(be)),s=e(We);if(!t||t.blockId!==i.get(s,"_id",null))return[];const a=i.get(s,t.prop,`${$.STYLES_KEY},`).replace($.STYLES_KEY,"").split(",").join(" ");return i.filter(i.map(a.trim().split(" "),c.constructClassObject),r=>!i.isNull(r))}),tr=()=>d.useAtomValue(fs),gt={xs:0,sm:1,md:2,lg:3,xl:4,"2xl":5},sr=d.atom(e=>{const t=e(is),s=e(Ye),o=e(ds),a=or(t);let r=i.filter(e(fs),{mod:s});return i.startsWith(s,"_")||(r=i.filter(r,l=>a.includes(l.mq))),r=r.sort((l,p)=>gt[l.mq]-gt[p.mq]),o||(r=i.filter(r,{dark:!1})),r}),or=e=>{let t=[];switch(e){case"xs":t=["xs"];break;case"sm":t=["xs","sm"];break;case"md":t=["xs","sm","md"];break;case"lg":t=["xs","sm","md","lg"];break;case"xl":t=["xs","sm","md","lg","xl"];break;case"2xl":t=["xs","sm","md","lg","xl","2xl"];break;default:t=["xs"];break}return t},nr=()=>d.useAtomValue(sr),ar=()=>d.useAtom(Ye),xs=d.atom(null,(e,t,{blockIds:s,props:o,dispatch:a})=>{a({type:"update_props_realtime",payload:{ids:s,props:o}})}),rr=()=>{const{createSnapshot:e}=Ee(),t=H(),s=d.useSetAtom(xs);return w.useCallback((o,a)=>{s({blockIds:o,props:a,dispatch:t}),e()},[e,t,s])},ir=()=>{const e=H(),t=d.useSetAtom(xs);return w.useCallback((s,o)=>{t({blockIds:s,props:o,dispatch:e})},[e,t])},gs={name:"",props:{},modalProps:{},backdropClose:!0},lr=d.atom(gs),cr=()=>{const[e,t]=d.useAtom(lr),s=w.useCallback((a,r={},l={})=>{t({name:a,props:r,modalProps:l})},[t]),o=w.useCallback((...a)=>{i.get(e,"props.onClose",()=>{})(...a),t(gs)},[t,e]);return{activeModal:e,openModal:s,closeModal:o}},dr=()=>d.useAtomValue(Kt),ur=d.atom(""),mr=d.atom(null),pr=()=>d.useAtom(ur),fr=()=>d.useAtom(mr),xr=ue("selectedBreakpoints",["XS","MD","XL"]),gr=()=>{const[e,t]=d.useAtom(xr);return[e,t]},br=()=>{const e=d.useSetAtom(Se),{clear:t}=Ee(),[,s]=me(),[,o]=ms(),[,a]=Ke();return()=>{s([]),a([]),o(""),t(),e({undoCount:0,redoCount:0})}},hr=d.atom({en:{}}),vr=()=>{const[e,t]=d.useAtom(hr),s=w.useCallback((o,a,r)=>{i.set(e,`${o}.${a}`,r),t(e)},[e,t]);return[e,s]},yr=(e,t)=>{const[s]=d.useAtom(Ae);return i.get(s,e,t)},jr=d.atom([]),wr=()=>{const[e,t]=w.useState(!1),[s,o]=d.useAtom(jr),a=ne("getUILibraryBlocks",()=>[]);return w.useEffect(()=>{(async()=>s.length>0||(t(!0),o(await a()),t(!1)))()},[]),{data:s,isLoading:e}},Rr=d.atom("en"),kr=d.atom("en"),Ar=d.atom(["en"]),bs=()=>d.useAtom(Rr),Nr=()=>d.useAtom(kr),Sr=()=>d.useAtom(Ar),Cr=(e,t)=>{const[s]=bs(),o=`${e}${s?`-${s}`:""}`;return{content:i.get(t,o,i.get(t,e,"")),propKey:e}},hs=re.cva("inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent hover:bg-accent hover:text-accent-foreground"},size:{default:"h-10 px-3",sm:"h-9 px-2.5",lg:"h-11 px-5"}},defaultVariants:{variant:"default",size:"default"}}),vs=x.forwardRef(({className:e,variant:t,size:s,...o},a)=>n.jsxRuntimeExports.jsx(jt.Root,{ref:a,className:c.cn(hs({variant:t,size:s,className:e})),...o}));vs.displayName=jt.Root.displayName;const ys=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(Le.Root,{className:c.cn("peer inline-flex h-[24px] w-[44px] shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:ring-offset-white disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-slate-900 data-[state=unchecked]:bg-slate-200 dark:focus-visible:ring-slate-800 dark:focus-visible:ring-offset-slate-950 dark:data-[state=checked]:bg-slate-50 dark:data-[state=unchecked]:bg-slate-800",e),...t,ref:s,children:n.jsxRuntimeExports.jsx(Le.Thumb,{className:c.cn("pointer-events-none block h-5 w-5 rounded-full bg-white shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0 dark:bg-slate-950")})}));ys.displayName=Le.Root.displayName;const _e=re.cva("inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),js=x.forwardRef(({className:e,variant:t,size:s,asChild:o=!1,...a},r)=>{const l=o?fn.Slot:"button";return n.jsxRuntimeExports.jsx(l,{className:c.cn(_e({variant:t,size:s,className:e})),ref:r,...a})});js.displayName="Button";const Er=ae.Root,ws=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(ae.Item,{ref:s,className:c.cn("border-b",e),...t}));ws.displayName="AccordionItem";const Rs=x.forwardRef(({className:e,children:t,...s},o)=>n.jsxRuntimeExports.jsx(ae.Header,{className:"flex",children:n.jsxRuntimeExports.jsxs(ae.Trigger,{ref:o,className:c.cn("flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",e),...s,children:[t,n.jsxRuntimeExports.jsx(O.ChevronDownIcon,{className:"h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200"})]})}));Rs.displayName=ae.Trigger.displayName;const ks=x.forwardRef(({className:e,children:t,...s},o)=>n.jsxRuntimeExports.jsx(ae.Content,{ref:o,className:c.cn("text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",e),...s,children:n.jsxRuntimeExports.jsx("div",{className:"pb-4 pt-0",children:t})}));ks.displayName=ae.Content.displayName;const _r=re.cva("relative w-full rounded-lg border px-4 py-3 text-sm [&:has(svg)]:pl-11 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),As=x.forwardRef(({className:e,variant:t,...s},o)=>n.jsxRuntimeExports.jsx("div",{ref:o,role:"alert",className:c.cn(_r({variant:t}),e),...s}));As.displayName="Alert";const Ns=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx("h5",{ref:s,className:c.cn("mb-1 font-medium leading-none tracking-tight",e),...t}));Ns.displayName="AlertTitle";const Ss=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx("div",{ref:s,className:c.cn("text-sm [&_p]:leading-relaxed",e),...t}));Ss.displayName="AlertDescription";const Cs=re.cva("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}}),Br=({className:e,variant:t,...s})=>n.jsxRuntimeExports.jsx("div",{className:c.cn(Cs({variant:t}),e),...s}),Pr=V.Root,Tr=V.Trigger,Es=({className:e,...t})=>n.jsxRuntimeExports.jsx(V.Portal,{className:c.cn(e),...t});Es.displayName=V.Portal.displayName;const _s=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(V.Overlay,{className:c.cn("fixed inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t,ref:s}));_s.displayName=V.Overlay.displayName;const Bs=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsxs(Es,{children:[n.jsxRuntimeExports.jsx(_s,{}),n.jsxRuntimeExports.jsx(V.Content,{ref:s,className:c.cn("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg md:w-full",e),...t})]}));Bs.displayName=V.Content.displayName;const Ps=({className:e,...t})=>n.jsxRuntimeExports.jsx("div",{className:c.cn("flex flex-col space-y-2 text-center sm:text-left",e),...t});Ps.displayName="AlertDialogHeader";const Ts=({className:e,...t})=>n.jsxRuntimeExports.jsx("div",{className:c.cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});Ts.displayName="AlertDialogFooter";const Is=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(V.Title,{ref:s,className:c.cn("text-lg font-semibold",e),...t}));Is.displayName=V.Title.displayName;const Ms=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(V.Description,{ref:s,className:c.cn("text-sm text-muted-foreground",e),...t}));Ms.displayName=V.Description.displayName;const Ds=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(V.Action,{ref:s,className:c.cn(_e(),e),...t}));Ds.displayName=V.Action.displayName;const Ls=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(V.Cancel,{ref:s,className:c.cn(_e({variant:"outline"}),"mt-2 sm:mt-0",e),...t}));Ls.displayName=V.Cancel.displayName;const tt=_.Root,Os=_.Trigger,Vs=({className:e,...t})=>n.jsxRuntimeExports.jsx(_.Portal,{className:c.cn(e),...t});Vs.displayName=_.Portal.displayName;const zs=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(_.Overlay,{ref:s,className:c.cn("fixed inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));zs.displayName=_.Overlay.displayName;const Be=x.forwardRef(({className:e,children:t,...s},o)=>n.jsxRuntimeExports.jsxs(Vs,{children:[n.jsxRuntimeExports.jsx(zs,{}),n.jsxRuntimeExports.jsxs(_.Content,{ref:o,className:c.cn("fixed left-[50%] top-[50%] z-[999] grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg md:w-full",e),...s,children:[t,n.jsxRuntimeExports.jsxs(_.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[n.jsxRuntimeExports.jsx(O.Cross2Icon,{className:"h-4 w-4"}),n.jsxRuntimeExports.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Be.displayName=_.Content.displayName;const $s=({className:e,...t})=>n.jsxRuntimeExports.jsx("div",{className:c.cn("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});$s.displayName="DialogHeader";const Fs=({className:e,...t})=>n.jsxRuntimeExports.jsx("div",{className:c.cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});Fs.displayName="DialogFooter";const qs=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(_.Title,{ref:s,className:c.cn("text-lg font-semibold leading-none tracking-tight",e),...t}));qs.displayName=_.Title.displayName;const Us=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(_.Description,{ref:s,className:c.cn("text-sm text-muted-foreground",e),...t}));Us.displayName=_.Description.displayName;const Gs=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx("div",{ref:s,className:c.cn("rounded-xl border bg-card text-card-foreground shadow",e),...t}));Gs.displayName="Card";const Hs=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx("div",{ref:s,className:c.cn("flex flex-col space-y-1.5 p-6",e),...t}));Hs.displayName="CardHeader";const Ws=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx("h3",{ref:s,className:c.cn("font-semibold leading-none tracking-tight",e),...t}));Ws.displayName="CardTitle";const Ys=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx("p",{ref:s,className:c.cn("text-sm text-muted-foreground",e),...t}));Ys.displayName="CardDescription";const Ks=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx("div",{ref:s,className:c.cn("p-6 pt-0",e),...t}));Ks.displayName="CardContent";const Js=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx("div",{ref:s,className:c.cn(" flex items-center p-6 pt-0",e),...t}));Js.displayName="CardFooter";const Qs=x.forwardRef(({className:e,type:t,...s},o)=>n.jsxRuntimeExports.jsx("input",{type:t,className:c.cn("flex h-9 w-full rounded-md border border-border bg-background px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:o,...s}));Qs.displayName="Input";const Ir=re.cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),Xs=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(wt.Root,{ref:s,className:c.cn(Ir(),e),...t}));Xs.displayName=wt.Root.displayName;const Zs=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx("textarea",{className:c.cn("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:s,...t}));Zs.displayName="Textarea";const eo=x.forwardRef(({className:e,children:t,...s},o)=>n.jsxRuntimeExports.jsxs(oe.Root,{ref:o,className:c.cn("relative overflow-hidden",e),...s,children:[n.jsxRuntimeExports.jsx(oe.Viewport,{className:"h-full w-full rounded-[inherit]",children:t}),n.jsxRuntimeExports.jsx(st,{}),n.jsxRuntimeExports.jsx(oe.Corner,{})]}));eo.displayName=oe.Root.displayName;const st=x.forwardRef(({className:e,orientation:t="vertical",...s},o)=>n.jsxRuntimeExports.jsx(oe.ScrollAreaScrollbar,{ref:o,orientation:t,className:c.cn("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 border-t border-t-transparent p-[1px]",e),...s,children:n.jsxRuntimeExports.jsx(oe.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));st.displayName=oe.ScrollAreaScrollbar.displayName;const to=ie.Root,ot=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(ie.List,{ref:s,className:c.cn("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...t}));ot.displayName=ie.List.displayName;const we=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(ie.Trigger,{ref:s,className:c.cn("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",e),...t}));we.displayName=ie.Trigger.displayName;const Re=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(ie.Content,{ref:s,className:c.cn("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));Re.displayName=ie.Content.displayName;const Mr=de.Portal,Dr=de.Provider,Lr=de.Root,Or=de.Trigger,so=x.forwardRef(({className:e,sideOffset:t=4,...s},o)=>n.jsxRuntimeExports.jsx(de.Content,{ref:o,sideOffset:t,className:c.cn("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...s}));so.displayName=de.Content.displayName;const Vr=ge.Root,zr=ge.Trigger,oo=x.forwardRef(({className:e,align:t="center",sideOffset:s=4,...o},a)=>n.jsxRuntimeExports.jsx(ge.Portal,{children:n.jsxRuntimeExports.jsx(ge.Content,{ref:a,align:t,sideOffset:s,className:c.cn("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...o})}));oo.displayName=ge.Content.displayName;const $r=C.Menu,Fr=C.Group,qr=C.Portal,Ur=C.Sub,Gr=C.RadioGroup,no=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(C.Root,{ref:s,className:c.cn("flex h-9 items-center space-x-1 rounded-md border bg-background p-1 shadow-sm",e),...t}));no.displayName=C.Root.displayName;const ao=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(C.Trigger,{ref:s,className:c.cn("flex cursor-default select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",e),...t}));ao.displayName=C.Trigger.displayName;const ro=x.forwardRef(({className:e,inset:t,children:s,...o},a)=>n.jsxRuntimeExports.jsxs(C.SubTrigger,{ref:a,className:c.cn("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",t&&"pl-8",e),...o,children:[s,n.jsxRuntimeExports.jsx(O.ChevronRightIcon,{className:"ml-auto h-4 w-4"})]}));ro.displayName=C.SubTrigger.displayName;const io=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(C.SubContent,{ref:s,className:c.cn("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t}));io.displayName=C.SubContent.displayName;const lo=x.forwardRef(({className:e,align:t="start",alignOffset:s=-4,sideOffset:o=8,...a},r)=>n.jsxRuntimeExports.jsx(C.Portal,{children:n.jsxRuntimeExports.jsx(C.Content,{ref:r,align:t,alignOffset:s,sideOffset:o,className:c.cn("z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...a})}));lo.displayName=C.Content.displayName;const co=x.forwardRef(({className:e,inset:t,...s},o)=>n.jsxRuntimeExports.jsx(C.Item,{ref:o,className:c.cn("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...s}));co.displayName=C.Item.displayName;const uo=x.forwardRef(({className:e,children:t,checked:s,...o},a)=>n.jsxRuntimeExports.jsxs(C.CheckboxItem,{ref:a,className:c.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:s,...o,children:[n.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:n.jsxRuntimeExports.jsx(C.ItemIndicator,{children:n.jsxRuntimeExports.jsx(O.CheckIcon,{className:"h-4 w-4"})})}),t]}));uo.displayName=C.CheckboxItem.displayName;const mo=x.forwardRef(({className:e,children:t,...s},o)=>n.jsxRuntimeExports.jsxs(C.RadioItem,{ref:o,className:c.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...s,children:[n.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:n.jsxRuntimeExports.jsx(C.ItemIndicator,{children:n.jsxRuntimeExports.jsx(O.DotFilledIcon,{className:"h-4 w-4 fill-current"})})}),t]}));mo.displayName=C.RadioItem.displayName;const po=x.forwardRef(({className:e,inset:t,...s},o)=>n.jsxRuntimeExports.jsx(C.Label,{ref:o,className:c.cn("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",e),...s}));po.displayName=C.Label.displayName;const fo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(C.Separator,{ref:s,className:c.cn("-mx-1 my-1 h-px bg-muted",e),...t}));fo.displayName=C.Separator.displayName;const xo=({className:e,...t})=>n.jsxRuntimeExports.jsx("span",{className:c.cn("ml-auto text-xs tracking-widest text-muted-foreground",e),...t});xo.displayname="MenubarShortcut";const Hr=ke.Root,Wr=ke.Trigger,go=x.forwardRef(({className:e,align:t="center",sideOffset:s=4,...o},a)=>n.jsxRuntimeExports.jsx(ke.Content,{ref:a,align:t,sideOffset:s,className:c.cn("z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...o}));go.displayName=ke.Content.displayName;const Yr=M.Root,Kr=M.Group,Jr=M.Value,bo=x.forwardRef(({className:e,children:t,...s},o)=>n.jsxRuntimeExports.jsxs(M.Trigger,{ref:o,className:c.cn("flex h-9 w-full items-center justify-between rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),...s,children:[t,n.jsxRuntimeExports.jsx(M.Icon,{asChild:!0,children:n.jsxRuntimeExports.jsx(O.CaretSortIcon,{className:"h-4 w-4 opacity-50"})})]}));bo.displayName=M.Trigger.displayName;const ho=x.forwardRef(({className:e,children:t,position:s="popper",...o},a)=>n.jsxRuntimeExports.jsx(M.Portal,{children:n.jsxRuntimeExports.jsx(M.Content,{ref:a,className:c.cn("relative z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:s,...o,children:n.jsxRuntimeExports.jsx(M.Viewport,{className:c.cn("p-1",s==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t})})}));ho.displayName=M.Content.displayName;const vo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(M.Label,{ref:s,className:c.cn("px-2 py-1.5 text-sm font-semibold",e),...t}));vo.displayName=M.Label.displayName;const yo=x.forwardRef(({className:e,children:t,...s},o)=>n.jsxRuntimeExports.jsxs(M.Item,{ref:o,className:c.cn("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...s,children:[n.jsxRuntimeExports.jsx("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:n.jsxRuntimeExports.jsx(M.ItemIndicator,{children:n.jsxRuntimeExports.jsx(O.CheckIcon,{className:"h-4 w-4"})})}),n.jsxRuntimeExports.jsx(M.ItemText,{children:t})]}));yo.displayName=M.Item.displayName;const jo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(M.Separator,{ref:s,className:c.cn("-mx-1 my-1 h-px bg-muted",e),...t}));jo.displayName=M.Separator.displayName;const Qr=_.Root,Xr=_.Trigger,Zr=_.Close,wo=({className:e,...t})=>n.jsxRuntimeExports.jsx(_.Portal,{className:c.cn(e),...t});wo.displayName=_.Portal.displayName;const Ro=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(_.Overlay,{className:c.cn("fixed inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t,ref:s}));Ro.displayName=_.Overlay.displayName;const ei=re.cva("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),ko=x.forwardRef(({side:e="right",className:t,children:s,...o},a)=>n.jsxRuntimeExports.jsxs(wo,{children:[n.jsxRuntimeExports.jsx(Ro,{}),n.jsxRuntimeExports.jsxs(_.Content,{ref:a,className:c.cn(ei({side:e}),t),...o,children:[s,n.jsxRuntimeExports.jsxs(_.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[n.jsxRuntimeExports.jsx(O.Cross2Icon,{className:"h-4 w-4"}),n.jsxRuntimeExports.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));ko.displayName=_.Content.displayName;const Ao=({className:e,...t})=>n.jsxRuntimeExports.jsx("div",{className:c.cn("flex flex-col space-y-2 text-center sm:text-left",e),...t});Ao.displayName="SheetHeader";const No=({className:e,...t})=>n.jsxRuntimeExports.jsx("div",{className:c.cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});No.displayName="SheetFooter";const So=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(_.Title,{ref:s,className:c.cn("text-lg font-semibold text-foreground",e),...t}));So.displayName=_.Title.displayName;const Co=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(_.Description,{ref:s,className:c.cn("text-sm text-muted-foreground",e),...t}));Co.displayName=_.Description.displayName;const ti=B.Root,si=B.Trigger,oi=B.Group,ni=B.Portal,ai=B.Sub,ri=B.RadioGroup,Eo=x.forwardRef(({className:e,inset:t,children:s,...o},a)=>n.jsxRuntimeExports.jsxs(B.SubTrigger,{ref:a,className:c.cn("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",t&&"pl-8",e),...o,children:[s,n.jsxRuntimeExports.jsx(O.ChevronRightIcon,{className:"ml-auto h-4 w-4"})]}));Eo.displayName=B.SubTrigger.displayName;const _o=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(B.SubContent,{ref:s,className:c.cn("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t}));_o.displayName=B.SubContent.displayName;const Bo=x.forwardRef(({className:e,sideOffset:t=4,...s},o)=>n.jsxRuntimeExports.jsx(B.Portal,{children:n.jsxRuntimeExports.jsx(B.Content,{ref:o,sideOffset:t,className:c.cn("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...s})}));Bo.displayName=B.Content.displayName;const Po=x.forwardRef(({className:e,inset:t,...s},o)=>n.jsxRuntimeExports.jsx(B.Item,{ref:o,className:c.cn("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...s}));Po.displayName=B.Item.displayName;const To=x.forwardRef(({className:e,children:t,checked:s,...o},a)=>n.jsxRuntimeExports.jsxs(B.CheckboxItem,{ref:a,className:c.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:s,...o,children:[n.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:n.jsxRuntimeExports.jsx(B.ItemIndicator,{children:n.jsxRuntimeExports.jsx(O.CheckIcon,{className:"h-4 w-4"})})}),t]}));To.displayName=B.CheckboxItem.displayName;const Io=x.forwardRef(({className:e,children:t,...s},o)=>n.jsxRuntimeExports.jsxs(B.RadioItem,{ref:o,className:c.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...s,children:[n.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:n.jsxRuntimeExports.jsx(B.ItemIndicator,{children:n.jsxRuntimeExports.jsx(O.DotFilledIcon,{className:"h-4 w-4 fill-current"})})}),t]}));Io.displayName=B.RadioItem.displayName;const Mo=x.forwardRef(({className:e,inset:t,...s},o)=>n.jsxRuntimeExports.jsx(B.Label,{ref:o,className:c.cn("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",e),...s}));Mo.displayName=B.Label.displayName;const Do=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(B.Separator,{ref:s,className:c.cn("-mx-1 my-1 h-px bg-muted",e),...t}));Do.displayName=B.Separator.displayName;const Lo=({className:e,...t})=>n.jsxRuntimeExports.jsx("span",{className:c.cn("ml-auto text-xs tracking-widest opacity-60",e),...t});Lo.displayName="DropdownMenuShortcut";const Oo=x.forwardRef(({className:e,orientation:t="horizontal",decorative:s=!0,...o},a)=>n.jsxRuntimeExports.jsx(Rt.Root,{ref:a,decorative:s,orientation:t,className:c.cn("shrink-0 bg-border",t==="horizontal"?"h-[1px] w-full":"h-full w-[1px]",e),...o}));Oo.displayName=Rt.Root.displayName;const ii=1,li=1e6;let Me=0;function ci(){return Me=(Me+1)%Number.MAX_VALUE,Me.toString()}const De=new Map,bt=e=>{if(De.has(e))return;const t=setTimeout(()=>{De.delete(e),xe({type:"REMOVE_TOAST",toastId:e})},li);De.set(e,t)},Vo=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,ii)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(s=>s.id===t.toast.id?{...s,...t.toast}:s)};case"DISMISS_TOAST":{const{toastId:s}=t;return s?bt(s):e.toasts.forEach(o=>{bt(o.id)}),{...e,toasts:e.toasts.map(o=>o.id===s||s===void 0?{...o,open:!1}:o)}}case"REMOVE_TOAST":return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(s=>s.id!==t.toastId)}}},ve=[];let ye={toasts:[]};function xe(e){ye=Vo(ye,e),ve.forEach(t=>{t(ye)})}function zo({...e}){const t=ci(),s=a=>xe({type:"UPDATE_TOAST",toast:{...a,id:t}}),o=()=>xe({type:"DISMISS_TOAST",toastId:t});return xe({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:a=>{a||o()}}}),{id:t,dismiss:o,update:s}}function $o(){const[e,t]=x.useState(ye);return x.useEffect(()=>(ve.push(t),()=>{const s=ve.indexOf(t);s>-1&&ve.splice(s,1)}),[e]),{...e,toast:zo,dismiss:s=>xe({type:"DISMISS_TOAST",toastId:s})}}const di=U.Provider,Fo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(U.Viewport,{ref:s,className:c.cn("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));Fo.displayName=U.Viewport.displayName;const ui=re.cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-2 overflow-hidden rounded-md border p-4 pr-6 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),qo=x.forwardRef(({className:e,variant:t,...s},o)=>n.jsxRuntimeExports.jsx(U.Root,{ref:o,className:c.cn(ui({variant:t}),e),...s}));qo.displayName=U.Root.displayName;const mi=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(U.Action,{ref:s,className:c.cn("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium transition-colors hover:bg-secondary focus:outline-none focus:ring-1 focus:ring-ring disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...t}));mi.displayName=U.Action.displayName;const Uo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(U.Close,{ref:s,className:c.cn("absolute right-1 top-1 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-1 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:n.jsxRuntimeExports.jsx(O.Cross2Icon,{className:"h-4 w-4"})}));Uo.displayName=U.Close.displayName;const Go=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(U.Title,{ref:s,className:c.cn("text-sm font-semibold [&+div]:text-xs",e),...t}));Go.displayName=U.Title.displayName;const Ho=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(U.Description,{ref:s,className:c.cn("text-sm opacity-90",e),...t}));Ho.displayName=U.Description.displayName;function pi(){const{toasts:e}=$o();return n.jsxRuntimeExports.jsxs(di,{children:[e.map(({id:t,title:s,description:o,action:a,...r})=>n.jsxRuntimeExports.jsxs(qo,{...r,children:[n.jsxRuntimeExports.jsxs("div",{className:"grid gap-1",children:[s&&n.jsxRuntimeExports.jsx(Go,{children:s}),o&&n.jsxRuntimeExports.jsx(Ho,{children:o})]}),a,n.jsxRuntimeExports.jsx(Uo,{})]},t)),n.jsxRuntimeExports.jsx(Fo,{})]})}const fi=({className:e,...t})=>n.jsxRuntimeExports.jsx("div",{className:c.cn("animate-pulse rounded-md bg-primary/10",e),...t}),nt=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(F.Command,{ref:s,className:c.cn("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",e),...t}));nt.displayName=F.Command.displayName;const xi=({children:e,...t})=>n.jsxRuntimeExports.jsx(tt,{...t,children:n.jsxRuntimeExports.jsx(Be,{className:"overflow-hidden p-0",children:n.jsxRuntimeExports.jsx(nt,{className:"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5",children:e})})}),Wo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsxs("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[n.jsxRuntimeExports.jsx(O.MagnifyingGlassIcon,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),n.jsxRuntimeExports.jsx(F.Command.Input,{ref:s,className:c.cn("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",e),...t})]}));Wo.displayName=F.Command.Input.displayName;const Yo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(F.Command.List,{ref:s,className:c.cn("max-h-[300px] overflow-y-auto overflow-x-hidden",e),...t}));Yo.displayName=F.Command.List.displayName;const Ko=x.forwardRef((e,t)=>n.jsxRuntimeExports.jsx(F.Command.Empty,{ref:t,className:"py-6 text-center text-sm",...e}));Ko.displayName=F.Command.Empty.displayName;const Jo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(F.Command.Group,{ref:s,className:c.cn("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",e),...t}));Jo.displayName=F.Command.Group.displayName;const Qo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(F.Command.Separator,{ref:s,className:c.cn("-mx-1 h-px bg-border",e),...t}));Qo.displayName=F.Command.Separator.displayName;const Xo=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(F.Command.Item,{ref:s,className:c.cn("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...t}));Xo.displayName=F.Command.Item.displayName;const Zo=({className:e,...t})=>n.jsxRuntimeExports.jsx("span",{className:c.cn("ml-auto text-xs tracking-widest text-muted-foreground",e),...t});Zo.displayName="CommandShortcut";const gi=P.Root,bi=P.Trigger,hi=P.Group,vi=P.Portal,yi=P.Sub,ji=P.RadioGroup,en=x.forwardRef(({className:e,inset:t,children:s,...o},a)=>n.jsxRuntimeExports.jsxs(P.SubTrigger,{ref:a,className:c.cn("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",t&&"pl-8",e),...o,children:[s,n.jsxRuntimeExports.jsx(O.ChevronRightIcon,{className:"ml-auto h-4 w-4"})]}));en.displayName=P.SubTrigger.displayName;const tn=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(P.SubContent,{ref:s,className:c.cn("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t}));tn.displayName=P.SubContent.displayName;const sn=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(P.Portal,{children:n.jsxRuntimeExports.jsx(P.Content,{ref:s,className:c.cn("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t})}));sn.displayName=P.Content.displayName;const on=x.forwardRef(({className:e,inset:t,...s},o)=>n.jsxRuntimeExports.jsx(P.Item,{ref:o,className:c.cn("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...s}));on.displayName=P.Item.displayName;const nn=x.forwardRef(({className:e,children:t,checked:s,...o},a)=>n.jsxRuntimeExports.jsxs(P.CheckboxItem,{ref:a,className:c.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:s,...o,children:[n.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:n.jsxRuntimeExports.jsx(P.ItemIndicator,{children:n.jsxRuntimeExports.jsx(O.CheckIcon,{className:"h-4 w-4"})})}),t]}));nn.displayName=P.CheckboxItem.displayName;const an=x.forwardRef(({className:e,children:t,...s},o)=>n.jsxRuntimeExports.jsxs(P.RadioItem,{ref:o,className:c.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...s,children:[n.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:n.jsxRuntimeExports.jsx(P.ItemIndicator,{children:n.jsxRuntimeExports.jsx(O.DotFilledIcon,{className:"h-4 w-4 fill-current"})})}),t]}));an.displayName=P.RadioItem.displayName;const rn=x.forwardRef(({className:e,inset:t,...s},o)=>n.jsxRuntimeExports.jsx(P.Label,{ref:o,className:c.cn("px-2 py-1.5 text-sm font-semibold text-foreground",t&&"pl-8",e),...s}));rn.displayName=P.Label.displayName;const ln=x.forwardRef(({className:e,...t},s)=>n.jsxRuntimeExports.jsx(P.Separator,{ref:s,className:c.cn("-mx-1 my-1 h-px bg-border",e),...t}));ln.displayName=P.Separator.displayName;const cn=({className:e,...t})=>n.jsxRuntimeExports.jsx("span",{className:c.cn("ml-auto text-xs tracking-widest text-muted-foreground",e),...t});cn.displayName="ContextMenuShortcut";const wi=e=>{try{const t=document.getElementById("icon-picker-field"),s=document.createElement("div");_n.render(n.jsxRuntimeExports.jsx(vt.IconPickerItem,{value:e}),s),t.appendChild(s),s.hidden=!0;let o=s.innerHTML;setTimeout(()=>t.removeChild(s),1e3);const r=new DOMParser().parseFromString(o,"image/svg+xml"),l=r.querySelector("svg");return l&&(l.removeAttribute("width"),l.removeAttribute("height")),new XMLSerializer().serializeToString(r)}catch{return""}},Ri=({value:e,onChange:t,onBlur:s,id:o})=>{const a=r=>{t("<svg />");const l=wi(r);t(l),s(o,l)};return n.jsxRuntimeExports.jsxs("div",{className:"mt-1 flex h-20 items-center gap-x-2",id:"icon-picker-field",children:[n.jsxRuntimeExports.jsxs("div",{className:"relative h-12 w-12 group",children:[n.jsxRuntimeExports.jsx("div",{dangerouslySetInnerHTML:{__html:e==null?void 0:e.replace("<svg",'<svg class="h-5 w-5"')},className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 transform cursor-pointer bg-white z-0"}),n.jsxRuntimeExports.jsx(vt,{value:e?"BiSolidGrid":null,onChange:a,pickButtonStyle:{position:"relative",height:"48px",width:"48px",border:"1px solid #BBBBBB",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"6px",backgroundColor:"transparent",zIndex:1},searchInputStyle:{backgroundColor:"transparent",width:"100%",border:"1px solid #BBBBBB",margin:"0px 10px",padding:"10px"}})]}),n.jsxRuntimeExports.jsx("textarea",{value:e,onChange:r=>t(r.target.value),className:"h-full border w-full rounded-sm border-foreground/20 px-2 py-1 text-xs shadow-sm focus:border-gray-500/80 focus:outline-none focus:ring-0",placeholder:"Choose icon or enter svg"})]})},ki=w.lazy(()=>Promise.resolve().then(()=>require("./UnsplashImages-y7I_7_W7.cjs"))),Ai=w.lazy(()=>Promise.resolve().then(()=>require("./UploadImages-RzEm0Stb.cjs"))),dn=({isModalView:e=!1,onSelect:t=()=>{}})=>{const[s,o]=w.useState("upload");return n.jsxRuntimeExports.jsxs("div",{className:"flex h-full flex-col",children:[n.jsxRuntimeExports.jsx("div",{className:"flex items-center justify-between rounded-md bg-background/30 p-1",children:n.jsxRuntimeExports.jsx("h1",{className:"px-1 font-semibold",children:e?"Select or upload images":"Images"})}),n.jsxRuntimeExports.jsxs(to,{value:s,onValueChange:a=>o(a),className:"flex h-full w-full flex-col py-2",children:[n.jsxRuntimeExports.jsxs(ot,{className:"w-full",children:[n.jsxRuntimeExports.jsx(we,{value:"upload",className:"w-1/2",children:"Upload"}),n.jsxRuntimeExports.jsx(we,{value:"unsplash",className:"w-1/2",children:"Unsplash"})]}),s==="unsplash"?n.jsxRuntimeExports.jsx(Re,{value:"unsplash",className:"flex h-full flex-col overflow-hidden",children:n.jsxRuntimeExports.jsx(w.Suspense,{fallback:n.jsxRuntimeExports.jsx("div",{className:"h-64 w-full animate-pulse bg-gray-100"}),children:n.jsxRuntimeExports.jsx(ki,{isModalView:e,onSelect:t})})}):n.jsxRuntimeExports.jsx(Re,{value:"upload",className:"flex h-full flex-col overflow-hidden",children:n.jsxRuntimeExports.jsx(w.Suspense,{fallback:n.jsxRuntimeExports.jsx("div",{className:"h-64 w-full animate-pulse bg-gray-100"}),children:n.jsxRuntimeExports.jsx(Ai,{isModalView:e,onSelect:t})})})]})]})},Ni=Object.freeze(Object.defineProperty({__proto__:null,default:dn},Symbol.toStringTag,{value:"Module"})),ht=({children:e,onSelect:t})=>{const[s,o]=w.useState(!1),a=(...r)=>{t.call(void 0,...r),o(!1)};return n.jsxRuntimeExports.jsxs(tt,{open:s,onOpenChange:r=>o(r),children:[n.jsxRuntimeExports.jsx(Os,{asChild:!0,children:e}),n.jsxRuntimeExports.jsx(Be,{className:"flex h-3/4 max-w-5xl",children:n.jsxRuntimeExports.jsx("div",{className:"h-full w-full",children:n.jsxRuntimeExports.jsx(dn,{isModalView:!0,onSelect:a})})})]})},Si=({value:e,onChange:t,id:s,onBlur:o})=>n.jsxRuntimeExports.jsxs("div",{className:"mt-1.5 flex items-center gap-x-3",children:[e?n.jsxRuntimeExports.jsx("img",{src:e,className:"h-20 w-20 overflow-hidden rounded-md border object-cover",alt:""}):n.jsxRuntimeExports.jsx(ht,{onSelect:t,children:n.jsxRuntimeExports.jsx("div",{className:"h-20 w-20 cursor-pointer rounded-md border bg-[radial-gradient(#AAA,transparent_1px)] duration-300 [background-size:10px_10px] hover:border-gray-400"})}),n.jsxRuntimeExports.jsxs("div",{className:"flex w-3/5 flex-col",children:[n.jsxRuntimeExports.jsx(ht,{onSelect:t,children:n.jsxRuntimeExports.jsx("small",{className:"cursor-pointer rounded-full bg-gray-600 px-2 py-1 text-center text-xs text-white hover:bg-gray-500 dark:bg-gray-700",children:e||!i.isEmpty(e)?"Replace Image":"Choose Image"})}),n.jsxRuntimeExports.jsx("small",{className:"-pl-4 pt-2 text-center text-xs text-gray-600",children:"OR"}),n.jsxRuntimeExports.jsx("input",{type:"url",className:"text-xs",placeholder:"Enter image URL",value:e,onBlur:({target:{value:a}})=>o(s,a),onChange:a=>t(a.target.value)})]})]}),Ci=({id:e,placeholder:t,value:s,onChange:o,onBlur:a})=>{const r={toolbar:[["bold","italic","underline","strike","blockquote"],[{list:"ordered"},{list:"bullet"}],[{color:[]},{background:[]},{align:[]}],["link","clean"]]},l=["header","font","list","bold","italic","underline","strike","blockquote","color","background","align","link","image"];return typeof window>"u"?null:n.jsxRuntimeExports.jsx(Bn,{id:e,value:s,onBlur:p=>a(e,p),onChange:p=>o(p),modules:r,formats:l,placeholder:t,className:"mt-1 rounded-md"})},Ei=({schema:e,formData:t,onChange:s})=>{const[o,a]=w.useState([]),r=ne("getPages",()=>[]),{type:l="page",href:p="",target:f="self"}=t;return w.useEffect(()=>{(async()=>{const u=await r();a(u||[])})()},[]),n.jsxRuntimeExports.jsxs("div",{children:[n.jsxRuntimeExports.jsx("span",{className:"text-xs font-medium",children:(e==null?void 0:e.title)??"Link"}),n.jsxRuntimeExports.jsxs("div",{className:"flex flex-col gap-y-1.5",children:[n.jsxRuntimeExports.jsx("select",{name:"type",value:l,onChange:u=>s({...t,type:u.target.value}),children:[{const:"page",title:"Open Page"},{const:"url",title:"Open URL"},{const:"email",title:"Compose Email"},{const:"telephone",title:"Call Phone"},{const:"scroll",title:"Scroll to element"}].map(u=>n.jsxRuntimeExports.jsx("option",{value:u.const,children:u.title},u.const))}),l==="page"?n.jsxRuntimeExports.jsxs("select",{name:"href",placeholder:"Choose Page",value:p,onChange:u=>s({...t,href:u.target.value}),children:[n.jsxRuntimeExports.jsx("option",{value:"",children:"Choose page"}),i.map(o,u=>n.jsxRuntimeExports.jsx("option",{value:u.slug,children:u.name},u.uuid))]}):n.jsxRuntimeExports.jsx("input",{name:"href",type:"text",value:p,onChange:u=>s({...t,href:u.target.value}),placeholder:l==="page"||l==="url"?"Enter URL":l==="scroll"?"#ElementID":"Enter detail"}),(l==="page"||l==="url")&&n.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2",children:[n.jsxRuntimeExports.jsx("input",{type:"checkbox",defaultChecked:f==="_blank",className:"cursor-pointer rounded-md border border-border",onChange:()=>s({...t,target:f==="_blank"?"_self":"_blank"})}),n.jsxRuntimeExports.jsx("span",{className:"pt-1 text-xs",children:"Open in new tab"})]})]})]})};exports.Accordion=Er;exports.AccordionContent=ks;exports.AccordionItem=ws;exports.AccordionTrigger=Rs;exports.Alert=As;exports.AlertDescription=Ss;exports.AlertDialog=Pr;exports.AlertDialogAction=Ds;exports.AlertDialogCancel=Ls;exports.AlertDialogContent=Bs;exports.AlertDialogDescription=Ms;exports.AlertDialogFooter=Ts;exports.AlertDialogHeader=Ps;exports.AlertDialogTitle=Is;exports.AlertDialogTrigger=Tr;exports.AlertTitle=Ns;exports.Badge=Br;exports.Button=js;exports.Card=Gs;exports.CardContent=Ks;exports.CardDescription=Ys;exports.CardFooter=Js;exports.CardHeader=Hs;exports.CardTitle=Ws;exports.Command=nt;exports.CommandDialog=xi;exports.CommandEmpty=Ko;exports.CommandGroup=Jo;exports.CommandInput=Wo;exports.CommandItem=Xo;exports.CommandList=Yo;exports.CommandSeparator=Qo;exports.CommandShortcut=Zo;exports.ContextMenu=gi;exports.ContextMenuCheckboxItem=nn;exports.ContextMenuContent=sn;exports.ContextMenuGroup=hi;exports.ContextMenuItem=on;exports.ContextMenuLabel=rn;exports.ContextMenuPortal=vi;exports.ContextMenuRadioGroup=ji;exports.ContextMenuRadioItem=an;exports.ContextMenuSeparator=ln;exports.ContextMenuShortcut=cn;exports.ContextMenuSub=yi;exports.ContextMenuSubContent=tn;exports.ContextMenuSubTrigger=en;exports.ContextMenuTrigger=bi;exports.Dialog=tt;exports.DialogContent=Be;exports.DialogDescription=Us;exports.DialogFooter=Fs;exports.DialogHeader=$s;exports.DialogTitle=qs;exports.DialogTrigger=Os;exports.DropdownMenu=ti;exports.DropdownMenuCheckboxItem=To;exports.DropdownMenuContent=Bo;exports.DropdownMenuGroup=oi;exports.DropdownMenuItem=Po;exports.DropdownMenuLabel=Mo;exports.DropdownMenuPortal=ni;exports.DropdownMenuRadioGroup=ri;exports.DropdownMenuRadioItem=Io;exports.DropdownMenuSeparator=Do;exports.DropdownMenuShortcut=Lo;exports.DropdownMenuSub=ai;exports.DropdownMenuSubContent=_o;exports.DropdownMenuSubTrigger=Eo;exports.DropdownMenuTrigger=si;exports.HoverCard=Hr;exports.HoverCardContent=go;exports.HoverCardTrigger=Wr;exports.IconPickerField=Ri;exports.ImagePickerField=Si;exports.ImagesPanel=Ni;exports.Input=Qs;exports.Label=Xs;exports.LinkField=Ei;exports.Menubar=no;exports.MenubarCheckboxItem=uo;exports.MenubarContent=lo;exports.MenubarGroup=Fr;exports.MenubarItem=co;exports.MenubarLabel=po;exports.MenubarMenu=$r;exports.MenubarPortal=qr;exports.MenubarRadioGroup=Gr;exports.MenubarRadioItem=mo;exports.MenubarSeparator=fo;exports.MenubarShortcut=xo;exports.MenubarSub=Ur;exports.MenubarSubContent=io;exports.MenubarSubTrigger=ro;exports.MenubarTrigger=ao;exports.Popover=Vr;exports.PopoverContent=oo;exports.PopoverTrigger=zr;exports.RichTextEditorField=Ci;exports.ScrollArea=eo;exports.ScrollBar=st;exports.Select=Yr;exports.SelectContent=ho;exports.SelectGroup=Kr;exports.SelectItem=yo;exports.SelectLabel=vo;exports.SelectSeparator=jo;exports.SelectTrigger=bo;exports.SelectValue=Jr;exports.Separator=Oo;exports.Sheet=Qr;exports.SheetClose=Zr;exports.SheetContent=ko;exports.SheetDescription=Co;exports.SheetFooter=No;exports.SheetHeader=Ao;exports.SheetTitle=So;exports.SheetTrigger=Xr;exports.Skeleton=fi;exports.Switch=ys;exports.Tabs=to;exports.TabsContent=Re;exports.TabsList=ot;exports.TabsTrigger=we;exports.Textarea=Zs;exports.Toaster=pi;exports.Toggle=vs;exports.Tooltip=Lr;exports.TooltipContent=so;exports.TooltipPortal=Mr;exports.TooltipProvider=Dr;exports.TooltipTrigger=Or;exports.activePanelAtom=ts;exports.addBlockOffCanvasAtom=ss;exports.addBlocksModalAtom=Tt;exports.advanceStylingOpenAtom=Qt;exports.atom=K;exports.atomWithDefault=Jn;exports.atomWithStorage=ue;exports.badgeVariants=Cs;exports.buttonVariants=_e;exports.canDeleteBlock=ua;exports.canDropBlock=pa;exports.canDuplicateBlock=da;exports.canvasIframeAtom=es;exports.chaiBuilderPropsAtom=Ae;exports.chaiExternalDataAtom=Ct;exports.createStore=kt;exports.dataProvidersAtom=Ze;exports.editLayerNameAtom=Zt;exports.getBlockJSONFromSchemas=ze;exports.getBlockJSONFromUISchemas=Ve;exports.inlineEditingActiveAtom=Jt;exports.isDevelopment=ea;exports.networkModeAtom=Xt;exports.pageSyncStateAtom=Ce;exports.presentBlocksAtom=G;exports.reducer=Vo;exports.showPredefinedBlockCategoryAtom=os;exports.toast=zo;exports.toggleVariants=hs;exports.useActiveLanguage=bs;exports.useActiveModal=cr;exports.useActivePanel=pr;exports.useAddBlock=ya;exports.useAddBlockParent=fr;exports.useAddClassesToBlocks=Aa;exports.useAllBlocks=zt;exports.useAtom=qn;exports.useAtomValue=At;exports.useBlockContentByLanguage=Cr;exports.useBrandingOptions=qt;exports.useBuilderProp=ne;exports.useBuilderReset=br;exports.useBuildingBlocks=$t;exports.useCanvasHistory=Ee;exports.useCanvasWidth=Da;exports.useCanvasZoom=Oa;exports.useCopyBlockIds=Va;exports.useCurrentPage=Ut;exports.useCutBlockIds=cs;exports.useDarkMode=za;exports.useDeveloperPreviewMode=Fa;exports.useDuplicateBlocks=us;exports.useFeatureSupport=yr;exports.useGetPageData=Xe;exports.useHiddenBlockIds=Ua;exports.useHighlightBlockId=ms;exports.useLanguages=Sr;exports.useMarkAsGlobalBlock=Ha;exports.useMoveBlocks=Wa;exports.usePageDataProviders=ns;exports.usePasteBlocks=Ka;exports.usePreviewMode=Ft;exports.usePrimaryLanguage=Nr;exports.useProject=Qa;exports.useReadOnlyMode=dr;exports.useRemoveBlocks=Xa;exports.useRemoveClassesFromBlocks=er;exports.useSavePage=Ma;exports.useSelectedBlock=ba;exports.useSelectedBlockAllClasses=tr;exports.useSelectedBlockCurrentClasses=nr;exports.useSelectedBlockIds=me;exports.useSelectedBlocksDisplayChild=ga;exports.useSelectedBreakpoints=gr;exports.useSelectedStylingBlocks=Ke;exports.useSetAllBlocks=ca;exports.useSetAtom=Nt;exports.useStore=Fe;exports.useStylingBreakpoint=as;exports.useStylingState=ar;exports.useToast=$o;exports.useTranslations=vr;exports.useTreeData=la;exports.useUILibraryBlocks=wr;exports.useUpdateBlocksProps=rr;exports.useUpdateBlocksPropsRealtime=ir;