@chaibuilder/sdk 1.1.13 → 1.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AddBlocks-AG_J7s2Z.cjs +1 -0
- package/dist/{AddBlocks-A7WofxHV.js → AddBlocks-FsdsASNp.js} +51 -51
- package/dist/BrandingOptions-TRVyCvVq.cjs +1 -0
- package/dist/{BrandingOptions-wkFrLFI_.js → BrandingOptions-zFJ28xmJ.js} +23 -23
- package/dist/{CanvasArea-chEYQhH8.js → CanvasArea-IiD0f6Eq.js} +7 -7
- package/dist/{CanvasArea-kF46NWZK.cjs → CanvasArea-Kbw-TjPH.cjs} +7 -7
- package/dist/CurrentPage-lOQd17GA.cjs +1 -0
- package/dist/{CurrentPage-Wd7F9Egg.js → CurrentPage-n2RQMBpJ.js} +10 -10
- package/dist/{Layers-qMOMP2Mi.js → Layers-38kbAjTI.js} +81 -81
- package/dist/Layers-D2WY0CpR.cjs +1 -0
- package/dist/MarkAsGlobalBlock-LXDkmFUr.cjs +1 -0
- package/dist/{MarkAsGlobalBlock-Czq45Amf.js → MarkAsGlobalBlock-xOHhiMDl.js} +3 -3
- package/dist/PagesPanel-RWnIpNqP.cjs +1 -0
- package/dist/{PagesPanel-ay4uk4mg.js → PagesPanel-bNqfHuCk.js} +6 -6
- package/dist/{ProjectPanel-eLlbfAtj.js → ProjectPanel-1Kgm2-R5.js} +10 -10
- package/dist/ProjectPanel-cXKiyEXm.cjs +1 -0
- package/dist/Settings-5AI0CInt.cjs +1 -0
- package/dist/{Settings-lpoxaMDu.js → Settings-ou3Owu0B.js} +454 -454
- package/dist/SidePanels-NV3UX8kK.cjs +1 -0
- package/dist/{SidePanels-iRXV69vh.js → SidePanels-muLqfBql.js} +36 -36
- package/dist/{Topbar-dQYhW4iv.js → Topbar-_-1HX-EE.js} +3 -3
- package/dist/Topbar-gQxbcPtG.cjs +1 -0
- package/dist/UnsplashImages-PNp5fYCc.cjs +1 -0
- package/dist/{UnsplashImages-AL1ASAoD.js → UnsplashImages-mqK09h8E.js} +6 -6
- package/dist/UploadImages-BoSSsLtD.cjs +1 -0
- package/dist/{UploadImages-09wuhk2O.js → UploadImages-IDkkRuhx.js} +3 -3
- package/dist/{add-page-modal-TXREEFPZ.js → add-page-modal-AJorVipD.js} +16 -16
- package/dist/add-page-modal-zOdAgfvh.cjs +1 -0
- package/dist/confirm-alert-dHRDZrA1.cjs +1 -0
- package/dist/{confirm-alert-GkfW9chS.js → confirm-alert-ea5xpncD.js} +3 -3
- package/dist/controls-QnyBNkXG.cjs +36 -0
- package/dist/controls-kEuiMMDf.js +4600 -0
- package/dist/core.cjs +1 -1
- package/dist/core.d.ts +5 -15
- package/dist/core.js +5 -5
- package/dist/{delete-page-modal-LNME2FwD.js → delete-page-modal-0VAs4Heb.js} +5 -5
- package/dist/delete-page-modal-KRBGE4Fo.cjs +1 -0
- package/dist/form-6qGAOYI3.cjs +1 -0
- package/dist/{form-Fk4CaX1A.js → form-irY39wvJ.js} +29 -29
- package/dist/functions-86L6n983.js +23 -0
- package/dist/functions-Jr7gX_RX.cjs +1 -0
- package/dist/{html-to-json-kGgp07Hv.js → html-to-json-Y5M0N8PH.js} +33 -33
- package/dist/html-to-json-aAZkA0f5.cjs +1 -0
- package/dist/{index-89A3jPHh.js → index-0OqmBgqo.js} +3 -3
- package/dist/{index-Q5q5Y_8a.js → index-4fMl4eN2.js} +6 -6
- package/dist/index-d55M5MRz.cjs +1 -0
- package/dist/{index-61c5wSJn.cjs → index-veRjBw4J.cjs} +2 -2
- package/dist/lib.cjs +1 -1
- package/dist/lib.js +27 -27
- package/dist/lodash-2us0VT8I.cjs +36 -0
- package/dist/lodash-3gkdNK5u.js +4538 -0
- package/dist/page-viewer-LvBMrQas.cjs +1 -0
- package/dist/{page-viewer-LPx-OTCC.js → page-viewer-QuVbTBKO.js} +6 -6
- package/dist/{project-general-setting-sSpFUD_Y.js → project-general-setting-6Nsq4-2Z.js} +9 -9
- package/dist/project-general-setting-pSrUGR7K.cjs +1 -0
- package/dist/{project-seo-setting-CGVegBtM.js → project-seo-setting-EhqUcTKy.js} +9 -9
- package/dist/project-seo-setting-N0OnBCvh.cjs +1 -0
- package/dist/render.cjs +1 -1
- package/dist/render.js +46 -46
- package/dist/server.cjs +1 -1
- package/dist/server.js +11 -11
- package/dist/single-page-detail-JWCEEBaZ.cjs +1 -0
- package/dist/{single-page-detail-32H1_IG4.js → single-page-detail-SAqjZ5E1.js} +53 -53
- package/dist/studio.cjs +1 -1
- package/dist/studio.js +5 -5
- package/dist/ui.cjs +1 -1
- package/dist/ui.js +3 -3
- package/dist/useAddBlockByDrop-5QW86HjG.js +20 -0
- package/dist/useAddBlockByDrop-Ckzuvu-s.cjs +1 -0
- package/dist/utils-37UXq2O5.cjs +1 -0
- package/dist/{utils-zWMk4dB2.js → utils-XsPKXMVo.js} +5 -5
- package/package.json +3 -3
- package/dist/AddBlocks-Yuc4t0Z_.cjs +0 -1
- package/dist/BrandingOptions-KkPF1OGn.cjs +0 -1
- package/dist/CurrentPage-p9MaXTOB.cjs +0 -1
- package/dist/Layers-wQ0Fv9Xc.cjs +0 -1
- package/dist/MarkAsGlobalBlock-sb3hMXLq.cjs +0 -1
- package/dist/PagesPanel--maZxwX5.cjs +0 -1
- package/dist/ProjectPanel-KhIpO7m3.cjs +0 -1
- package/dist/Settings-n2DpS5Ta.cjs +0 -1
- package/dist/SidePanels-Dud5Xh9L.cjs +0 -1
- package/dist/Topbar-vqzjB75a.cjs +0 -1
- package/dist/UnsplashImages-3Sh4UZ-7.cjs +0 -1
- package/dist/UploadImages-mPzLhMiH.cjs +0 -1
- package/dist/add-page-modal-FPnIWwqA.cjs +0 -1
- package/dist/confirm-alert-YNyc3WEo.cjs +0 -1
- package/dist/controls-G0puEH71.js +0 -120
- package/dist/controls-aHZq-q4b.cjs +0 -1
- package/dist/delete-page-modal-sTbqZPvk.cjs +0 -1
- package/dist/form-OhgCJlVA.cjs +0 -1
- package/dist/functions-ZWGlwlQY.cjs +0 -1
- package/dist/functions-slns6ONz.js +0 -23
- package/dist/html-to-json-po8on2ju.cjs +0 -1
- package/dist/index-GNmGzavZ.cjs +0 -1
- package/dist/page-viewer-wQO9oV9h.cjs +0 -1
- package/dist/project-general-setting-8EwuN5lN.cjs +0 -1
- package/dist/project-seo-setting-R77SKM1I.cjs +0 -1
- package/dist/single-page-detail-nyBEHLtT.cjs +0 -1
- package/dist/useAddBlockByDrop-4VH-SMj7.cjs +0 -1
- package/dist/useAddBlockByDrop-_kyR0iI4.js +0 -20
- package/dist/utils-tx6hqsHY.cjs +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
"use strict";var We=Object.defineProperty;var $e=(e,t,n)=>t in e?We(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var K=(e,t,n)=>($e(e,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./jsx-runtime-WUGKV8jN.cjs"),m=require("react"),
|
|
1
|
+
"use strict";var We=Object.defineProperty;var $e=(e,t,n)=>t in e?We(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var K=(e,t,n)=>($e(e,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./jsx-runtime-WUGKV8jN.cjs"),m=require("react"),h=require("./lodash-2us0VT8I.cjs"),L=require("@radix-ui/react-icons"),r=require("./index-d55M5MRz.cjs"),Ue=require("react-i18next"),H=require("jotai"),xe=require("react-dom"),Z=require("./MODIFIERS-WFzDQfiT.cjs"),Q=require("./index-veRjBw4J.cjs"),ze=require("react-quill"),Ye=require("./useAddBlockByDrop-Ckzuvu-s.cjs"),Se=require("flagged"),Ke=require("@floating-ui/dom"),ge=require("@floating-ui/react-dom"),Je=require("@react-hookz/web"),Xe=require("@bobthered/tailwindcss-palette-generator"),Ve=require("react-wrap-balancer"),Ze=require("tailwind-merge"),Ge=require("@chaibuilder/runtime");require("@radix-ui/react-toggle");require("class-variance-authority");require("./utils-37UXq2O5.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("flat-to-nested");require("redux-undo");require("i18next");require("react-textarea-autosize");require("react-dnd");require("@minoru/react-dnd-treeview");require("react-hotkeys-hook");require("sonner");require("./html-to-json-aAZkA0f5.cjs");require("himalaya");require("lucide-react");const Qe=()=>{const{undoCount:e,redoCount:t,undo:n,redo:a}=r.useCanvasHistory();return s.jsxRuntimeExports.jsxs("div",{className:"flex items-center",children:[s.jsxRuntimeExports.jsx(r.Button,{disabled:!e,size:"sm",onClick:n,className:"rounded-full",variant:"ghost",children:s.jsxRuntimeExports.jsx(L.ResetIcon,{})}),s.jsxRuntimeExports.jsx(r.Button,{disabled:!t,onClick:a,size:"sm",className:"rounded-full",variant:"ghost",children:s.jsxRuntimeExports.jsx(L.ResetIcon,{className:"rotate-180 scale-y-[-1] transform"})})]})};function et(){const[e,t]=r.useDarkMode(),{t:n}=Ue.useTranslation();return s.jsxRuntimeExports.jsxs("div",{className:"flex items-center",children:[s.jsxRuntimeExports.jsx(r.Label,{htmlFor:"dark-mode-switch",children:n("dark_mode")}),s.jsxRuntimeExports.jsxs(r.Switch,{id:"dark-mode-switch",checked:e,onCheckedChange:()=>{t(!e)},className:`${e?"bg-violet-600":"bg-violet-300"}
|
|
2
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:[s.jsxRuntimeExports.jsx("span",{className:"sr-only",children:"Use setting"}),s.jsxRuntimeExports.jsx("span",{"aria-hidden":"true",className:`${e?"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 me=({landscape:e=!1})=>s.jsxRuntimeExports.jsxs("svg",{className:e?"rotate-90":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 13",xmlSpace:"preserve",width:13,height:13,children:[s.jsxRuntimeExports.jsx("g",{strokeWidth:0}),s.jsxRuntimeExports.jsx("g",{strokeLinecap:"round",strokeLinejoin:"round"}),s.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"}})]}),ye=[{title:"Mobile (XS)",content:"Styles set here are applied to all screen unless edited at higher breakpoint",breakpoint:"xs",icon:s.jsxRuntimeExports.jsx(L.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:s.jsxRuntimeExports.jsx(L.MobileIcon,{className:"rotate-90"}),width:640},{title:"Tablet (MD)",content:"Styles set here are applied at 768px and up",breakpoint:"md",icon:s.jsxRuntimeExports.jsx(me,{}),width:800},{title:"Tablet Landscape (LG)",content:"Styles set here are applied at 1024px and up unless edited at higher breakpoint",breakpoint:"lg",icon:s.jsxRuntimeExports.jsx(me,{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:s.jsxRuntimeExports.jsx(L.LaptopIcon,{}),width:1420},{title:"Large Desktop (2XL)",content:"Styles set here are applied at 1536px and up",breakpoint:"2xl",icon:s.jsxRuntimeExports.jsx(L.DesktopIcon,{}),width:1920}],tt=({title:e,content:t,currentBreakpoint:n,breakpoint:a,width:c,icon:i,onClick:u})=>s.jsxRuntimeExports.jsxs(r.HoverCard,{children:[s.jsxRuntimeExports.jsx(r.HoverCardTrigger,{asChild:!0,children:s.jsxRuntimeExports.jsx(r.Button,{onClick:()=>u(c),size:"sm",variant:a===n?"secondary":"ghost",children:i})}),s.jsxRuntimeExports.jsx(r.HoverCardContent,{className:"w-52 border-border",children:s.jsxRuntimeExports.jsx("div",{className:"flex justify-between space-x-4",children:s.jsxRuntimeExports.jsxs("div",{className:"space-y-1",children:[s.jsxRuntimeExports.jsx("h4",{className:"text-sm font-semibold",children:e}),s.jsxRuntimeExports.jsx("p",{className:"text-xs",children:t})]})})})]}),nt=()=>{const[,e,t]=r.useCanvasWidth(),[n,a]=r.useSelectedBreakpoints(),c=i=>{n.includes(i)?n.length>2&&a(n.filter(u=>u!==i)):a(u=>[...u,i])};return s.jsxRuntimeExports.jsxs("div",{className:"flex items-center rounded-md",children:[
|
|
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 me=({landscape:e=!1})=>s.jsxRuntimeExports.jsxs("svg",{className:e?"rotate-90":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 13",xmlSpace:"preserve",width:13,height:13,children:[s.jsxRuntimeExports.jsx("g",{strokeWidth:0}),s.jsxRuntimeExports.jsx("g",{strokeLinecap:"round",strokeLinejoin:"round"}),s.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"}})]}),ye=[{title:"Mobile (XS)",content:"Styles set here are applied to all screen unless edited at higher breakpoint",breakpoint:"xs",icon:s.jsxRuntimeExports.jsx(L.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:s.jsxRuntimeExports.jsx(L.MobileIcon,{className:"rotate-90"}),width:640},{title:"Tablet (MD)",content:"Styles set here are applied at 768px and up",breakpoint:"md",icon:s.jsxRuntimeExports.jsx(me,{}),width:800},{title:"Tablet Landscape (LG)",content:"Styles set here are applied at 1024px and up unless edited at higher breakpoint",breakpoint:"lg",icon:s.jsxRuntimeExports.jsx(me,{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:s.jsxRuntimeExports.jsx(L.LaptopIcon,{}),width:1420},{title:"Large Desktop (2XL)",content:"Styles set here are applied at 1536px and up",breakpoint:"2xl",icon:s.jsxRuntimeExports.jsx(L.DesktopIcon,{}),width:1920}],tt=({title:e,content:t,currentBreakpoint:n,breakpoint:a,width:c,icon:i,onClick:u})=>s.jsxRuntimeExports.jsxs(r.HoverCard,{children:[s.jsxRuntimeExports.jsx(r.HoverCardTrigger,{asChild:!0,children:s.jsxRuntimeExports.jsx(r.Button,{onClick:()=>u(c),size:"sm",variant:a===n?"secondary":"ghost",children:i})}),s.jsxRuntimeExports.jsx(r.HoverCardContent,{className:"w-52 border-border",children:s.jsxRuntimeExports.jsx("div",{className:"flex justify-between space-x-4",children:s.jsxRuntimeExports.jsxs("div",{className:"space-y-1",children:[s.jsxRuntimeExports.jsx("h4",{className:"text-sm font-semibold",children:e}),s.jsxRuntimeExports.jsx("p",{className:"text-xs",children:t})]})})})]}),nt=()=>{const[,e,t]=r.useCanvasWidth(),[n,a]=r.useSelectedBreakpoints(),c=i=>{n.includes(i)?n.length>2&&a(n.filter(u=>u!==i)):a(u=>[...u,i])};return s.jsxRuntimeExports.jsxs("div",{className:"flex items-center rounded-md",children:[h.map(ye.filter(i=>h.includes(n,h.toUpper(i.breakpoint))),i=>m.createElement(tt,{...i,onClick:t,key:i.breakpoint,currentBreakpoint:e})),s.jsxRuntimeExports.jsxs(r.DropdownMenu,{children:[s.jsxRuntimeExports.jsx(r.DropdownMenuTrigger,{asChild:!0,children:s.jsxRuntimeExports.jsx("span",{className:"cursor-pointer px-2.5 hover:opacity-80",children:s.jsxRuntimeExports.jsx(L.DotsVerticalIcon,{className:"scale-90 transform"})})}),s.jsxRuntimeExports.jsxs(r.DropdownMenuContent,{className:"w-56 border-border text-xs",children:[s.jsxRuntimeExports.jsx(r.DropdownMenuLabel,{children:"Breakpoints"}),s.jsxRuntimeExports.jsx(r.DropdownMenuSeparator,{}),h.map(ye,i=>s.jsxRuntimeExports.jsx(r.DropdownMenuCheckboxItem,{disabled:i.breakpoint==="xs",onCheckedChange:()=>c(h.toUpper(i.breakpoint)),checked:h.includes(n,h.toUpper(i.breakpoint)),children:i.title},i.breakpoint))]})]})]})},st=()=>{const[e]=r.useSetAllBlocks(),{createSnapshot:t}=r.useCanvasHistory(),[,n]=r.useSelectedBlockIds(),[,a]=r.useSelectedStylingBlocks(),c=m.useCallback(()=>{e([]),n([]),a([]),t()},[e,t]);return s.jsxRuntimeExports.jsx("div",{className:"flex items-center",children:s.jsxRuntimeExports.jsxs(r.AlertDialog,{children:[s.jsxRuntimeExports.jsx(r.AlertDialogTrigger,{asChild:!0,children:s.jsxRuntimeExports.jsxs(r.Button,{size:"sm",variant:"ghost",className:"flex items-center gap-x-1",children:[s.jsxRuntimeExports.jsx(L.EraserIcon,{})," Clear"]})}),s.jsxRuntimeExports.jsxs(r.AlertDialogContent,{className:"border-border",children:[s.jsxRuntimeExports.jsxs(r.AlertDialogHeader,{children:[s.jsxRuntimeExports.jsx(r.AlertDialogTitle,{children:"Clear whole canvas?"}),s.jsxRuntimeExports.jsx(r.AlertDialogDescription,{children:"Are you sure you want to clear the whole canvas?"})]}),s.jsxRuntimeExports.jsxs(r.AlertDialogFooter,{children:[s.jsxRuntimeExports.jsx(r.AlertDialogCancel,{children:"Cancel"}),s.jsxRuntimeExports.jsx(r.AlertDialogAction,{onClick:c,children:"Yes"})]})]})]})})},rt=()=>{const e=r.useFeatureSupport("darkMode",!1),[t]=r.useCanvasZoom();return s.jsxRuntimeExports.jsxs("div",{className:"flex h-10 items-center justify-between border-b bg-background/70 px-2",children:[s.jsxRuntimeExports.jsxs("div",{className:"flex h-full space-x-2",children:[e?s.jsxRuntimeExports.jsxs(s.jsxRuntimeExports.Fragment,{children:[s.jsxRuntimeExports.jsx(et,{}),s.jsxRuntimeExports.jsx(r.Separator,{orientation:"vertical"})]}):null,s.jsxRuntimeExports.jsx(nt,{}),s.jsxRuntimeExports.jsx(r.Separator,{orientation:"vertical"}),s.jsxRuntimeExports.jsxs("div",{className:"flex w-12 items-center justify-center gap-x-1 space-x-0 font-medium",children:[s.jsxRuntimeExports.jsx(L.ZoomInIcon,{className:"h-3.5 w-3.5 flex-shrink-0"})," ",s.jsxRuntimeExports.jsxs("div",{className:"text-xs leading-3",children:[h.round(t,0),"%"]})]}),s.jsxRuntimeExports.jsx(r.Separator,{orientation:"vertical"}),s.jsxRuntimeExports.jsx(Qe,{})]}),s.jsxRuntimeExports.jsxs("div",{className:"flex h-full items-center space-x-2",children:[s.jsxRuntimeExports.jsx(r.Separator,{orientation:"vertical"}),s.jsxRuntimeExports.jsx(st,{})]})]})},ot=`<!doctype html>
|
|
4
4
|
<html class="scroll-smooth h-full overflow-y-auto">
|
|
5
5
|
<head>
|
|
6
6
|
<meta charset="UTF-8">
|
|
@@ -47,13 +47,13 @@
|
|
|
47
47
|
<div class="frame-root"></div>
|
|
48
48
|
<script src="https://cdn.jsdelivr.net/npm/quill@2.0.0/dist/quill.js"><\/script>
|
|
49
49
|
</body>
|
|
50
|
-
</html>`,it=e=>{const[t]=r.useCanvasWidth(),[,n]=r.useCanvasZoom(),[a,c]=m.useState({}),i=m.useCallback(()=>{const{width:u,height:o}=e;if(u<t){const p=parseFloat((u/t).toFixed(2).toString());let d={};const
|
|
50
|
+
</html>`,it=e=>{const[t]=r.useCanvasWidth(),[,n]=r.useCanvasZoom(),[a,c]=m.useState({}),i=m.useCallback(()=>{const{width:u,height:o}=e;if(u<t){const p=parseFloat((u/t).toFixed(2).toString());let d={};const x=o*p;o&&(d={height:100+(o-x)/x*100+"%"}),c({position:"relative",top:0,transform:`scale(${p})`,transformOrigin:"top left",...d,maxWidth:"none"}),n(p*100)}else c({}),n(100)},[t,e,n]);return m.useEffect(()=>{i()},[t,e,n,i]),a};var te={exports:{}};/*
|
|
51
51
|
object-assign
|
|
52
52
|
(c) Sindre Sorhus
|
|
53
53
|
@license MIT
|
|
54
|
-
*/var se,ve;function at(){if(ve)return se;ve=1;var e=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function a(i){if(i==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(i)}function c(){try{if(!Object.assign)return!1;var i=new String("abc");if(i[5]="de",Object.getOwnPropertyNames(i)[0]==="5")return!1;for(var u={},o=0;o<10;o++)u["_"+String.fromCharCode(o)]=o;var p=Object.getOwnPropertyNames(u).map(function(
|
|
55
|
-
Valid keys: `+JSON.stringify(Object.keys(l),null," "));var M=N(b,T,y,S,v+"."+T,n);if(M)return M}return null}return A(f)}function ee(l){switch(typeof l){case"number":case"string":case"undefined":return!0;case"boolean":return!l;case"object":if(Array.isArray(l))return l.every(ee);if(l===null||o(l))return!0;var f=g(l);if(f){var k=f.call(l),j;if(f!==l.entries){for(;!(j=k.next()).done;)if(!ee(j.value))return!1}else for(;!(j=k.next()).done;){var y=j.value;if(y&&!ee(y[1]))return!1}}else return!1;return!0;default:return!1}}function Ne(l,f){return l==="symbol"?!0:f?f["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&f instanceof Symbol:!1}function z(l){var f=typeof l;return Array.isArray(l)?"array":l instanceof RegExp?"object":Ne(f,l)?"symbol":f}function X(l){if(typeof l>"u"||l===null)return""+l;var f=z(l);if(f==="object"){if(l instanceof Date)return"date";if(l instanceof RegExp)return"regexp"}return f}function Fe(l){var f=X(l);switch(f){case"array":case"object":return"an "+f;case"boolean":case"date":case"regexp":return"a "+f;default:return f}}function He(l){return!l.constructor||!l.constructor.name?w:l.constructor.name}return I.checkPropTypes=c,I.resetWarningCache=c.resetWarningCache,I.PropTypes=I,I},ae}var le,we;function dt(){if(we)return le;we=1;var e=pe();function t(){}function n(){}return n.resetWarningCache=t,le=function(){function a(u,o,p,d,h,g){if(g!==e){var w=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 w.name="Invariant Violation",w}}a.isRequired=a;function c(){return a}var i={array:a,bigint:a,bool:a,func:a,number:a,object:a,string:a,symbol:a,any:a,arrayOf:c,element:a,elementType:a,instanceOf:c,node:a,objectOf:c,oneOf:c,oneOfType:c,shape:c,exact:c,checkPropTypes:n,resetWarningCache:t};return i.PropTypes=i,i},le}var Wt=te.exports;if(process.env.NODE_ENV!=="production"){var ut=Q.reactIsExports,pt=!0;te.exports=ct()(ut.isElement,pt)}else te.exports=dt()();var ft=te.exports;const _=Z.getDefaultExportFromCjs(ft);let Te,Ie;typeof document<"u"&&(Te=document);typeof window<"u"&&(Ie=window);const Be=m.createContext({document:Te,window:Ie}),ne=()=>m.useContext(Be),{Provider:xt,Consumer:$t}=Be;class Ae extends m.Component{componentDidMount(){this.props.contentDidMount()}componentDidUpdate(){this.props.contentDidUpdate()}render(){return m.Children.only(this.props.children)}}K(Ae,"propTypes",{children:_.element.isRequired,contentDidMount:_.func.isRequired,contentDidUpdate:_.func.isRequired});class de extends m.Component{constructor(n,a){super(n,a);K(this,"setRef",n=>{this.nodeRef.current=n;const{forwardedRef:a}=this.props;typeof a=="function"?a(n):a&&(a.current=n)});K(this,"handleLoad",()=>{clearInterval(this.loadCheck),this.state.iframeLoaded||this.setState({iframeLoaded:!0})});K(this,"loadCheck",()=>setInterval(()=>{this.handleLoad()},500));this._isMounted=!1,this.nodeRef=m.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 n=this.getDoc();return this.props.mountTarget?n.querySelector(this.props.mountTarget):n.body.children[0]}renderFrameContents(){if(!this._isMounted)return null;const n=this.getDoc();if(!n)return null;const a=this.props.contentDidMount,c=this.props.contentDidUpdate,i=n.defaultView||n.parentView,u=s.jsxRuntimeExports.jsx(Ae,{contentDidMount:a,contentDidUpdate:c,children:s.jsxRuntimeExports.jsx(xt,{value:{document:n,window:i},children:s.jsxRuntimeExports.jsx("div",{className:"frame-content",children:this.props.children})})}),o=this.getMountTarget();return[he.createPortal(this.props.head,this.getDoc().head),he.createPortal(u,o)]}render(){const n={...this.props,srcDoc:this.props.initialContent,children:void 0};return delete n.head,delete n.initialContent,delete n.mountTarget,delete n.contentDidMount,delete n.contentDidUpdate,delete n.forwardedRef,s.jsxRuntimeExports.jsx("iframe",{...n,ref:this.setRef,onLoad:this.handleLoad,children:this.state.iframeLoaded&&this.renderFrameContents()})}}K(de,"propTypes",{style:_.object,head:_.node,initialContent:_.string,mountTarget:_.string,contentDidMount:_.func,contentDidUpdate:_.func,children:_.oneOfType([_.element,_.arrayOf(_.element)])}),K(de,"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 ht=m.forwardRef((e,t)=>s.jsxRuntimeExports.jsx(de,{...e,forwardedRef:t}));let Y=null,G=[],V=null,De=null;function gt(e){const t=window.getComputedStyle(e),n=parseInt(t.paddingLeft,10),a=parseInt(t.paddingTop,10),c=parseInt(t.paddingRight,10),i=parseInt(t.paddingBottom,10);return{paddingLeft:n,paddingTop:a,paddingRight:c,paddingBottom:i}}const Re=(e,t,n)=>{if(!Y)return;const a=e.getBoundingClientRect(),c=Y==null?void 0:Y.getElementById("placeholder"),{paddingLeft:i,paddingTop:u,paddingRight:o,paddingBottom:p}=gt(e);c.style.width=t==="vertical"?a.width-i-o+"px":"2px",c.style.height=t==="vertical"?"2px":a.height-u-p+"px",c.style.display="block";const d=G.reduce((h,g)=>Math.abs(g-n)<Math.abs(h-n)?g:h);De=G.indexOf(d),t==="vertical"?(c.style.top=e.offsetTop+d+"px",c.style.left=e.offsetLeft+i+"px"):(c.style.top=e.offsetTop+u+"px",c.style.left=e.offsetLeft+d+"px")},mt=e=>{const t=Oe(e),n=window.getComputedStyle(e),a=t==="horizontal",c=parseInt(n.paddingLeft),i=parseInt(n.paddingTop);let u=a?c:i;G=[u],Array.from(e.children).forEach(o=>{const p=window.getComputedStyle(o),d=parseInt(a?p.marginLeft+p.marginRight:p.marginTop+p.marginBottom),h=a?o.offsetWidth:o.offsetHeight;G.push(u+h+d),u+=h+d})};function Oe(e){const t=window.getComputedStyle(e).display,n=window.getComputedStyle(e).flexDirection;if(t==="flex")return n==="column"||n==="column-reverse"?"vertical":"horizontal";if(t==="grid"){const a=window.getComputedStyle(e).gridTemplateRows,c=window.getComputedStyle(e).gridTemplateColumns;if(a.includes("auto"))return"vertical";if(c.includes("auto"))return"horizontal"}return t==="block"?"vertical":"horizontal"}const yt=x.throttle(e=>{const t=e.target,n=Oe(t);if(n==="vertical"){const a=e.clientY-t.offsetTop;Re(t,n,a)}else{const a=e.clientX-t.offsetLeft;Re(t,n,a)}},200),vt=e=>{e.preventDefault(),e.stopPropagation(),yt(e)};function ce(){const e=Y==null?void 0:Y.getElementById("placeholder");e.style.display="none"}const jt=()=>{const{document:e}=ne(),[t,n]=H.useAtom(r.draggingFlagAtom),a=Ye.useAddBlockByDrop(),c=Se.useFeature("dnd"),[,i]=r.useHighlightBlockId(),[,u]=r.useSelectedBlockIds();return Y=e,{isDragging:t,"data-dnd":"branch",onDragOver:c?vt:x.noop,onDrop:c?o=>{V==null||V.classList.remove("outline","outline-green-300","outline-2","-outline-offset-2");const p=JSON.parse(o.dataTransfer.getData("text/plain"));let d=o.target.getAttribute("data-block-id");d===null&&(d=o.target.parentElement.getAttribute("data-block-id")),a({block:p,dropTargetId:d||null,relativeIndex:De}),n(!1),ce(),setTimeout(()=>{ce()},300)}:x.noop,onDragEnter:c?o=>{const p=o;V=p.target,p.stopPropagation(),p.preventDefault(),G=[];const d=p.target;mt(d),d.classList.add("outline","outline-green-300","outline-2","-outline-offset-2"),n(!0),i(""),u([])}:x.noop,onDragLeave:c?o=>{const p=o;V=null,p.stopPropagation(),p.preventDefault(),p.target.classList.remove("outline","outline-green-300","outline-2","-outline-offset-2")}:x.noop,onMouseOut:c?()=>{n(!1),ce()}:x.noop}};function fe(e){return e.getAttribute("data-block-id")?e:e.closest("[data-block-id]")}function bt(e){e.container.innerHTML="",e.container.parentNode.removeChild(e.container);var t=document.querySelector(".ql-toolbar");t&&t.parentNode.removeChild(t),e=null}const Et=()=>{const e=["Heading","Paragraph","Text","Link","Span","Button"],t=r.useUpdateBlocksProps(),[,n]=r.useSelectedBlockIds(),[,a]=r.useHighlightBlockId(),[c,i]=H.useAtom(r.inlineEditingActiveAtom);return u=>{var w;if(c)return;const o=fe(u.target),p=o.getAttribute("data-block-type");if(!p||!e.includes(p))return;const d=o.cloneNode(!0);o.style.display="none",Array.from(d.attributes).forEach(I=>{I.name!=="class"&&d.removeAttribute(I.name)}),p==="Text"&&(d.style.display="inline-block"),o.parentNode.insertBefore(d,o.nextSibling);const h=new ze.Quill(d,{placeholder:"Type here..."});function g(){const I=h.getText(0,h.getLength());t([o.getAttribute("data-block-id")],{content:I}),o.removeAttribute("style"),d.removeEventListener("blur",g,!0),bt(h),i(""),a("")}d.addEventListener("blur",g,!0),h.focus(),(w=d.querySelector(".ql-clipboard"))==null||w.remove(),n([]),i(o.getAttribute("data-block-id"))}},kt=()=>{const[,e]=r.useSelectedStylingBlocks(),[,t]=r.useSelectedBlockIds(),[n]=H.useAtom(r.inlineEditingActiveAtom);return a=>{if(n)return;a.stopPropagation();const c=fe(a.target);if(c!=null&&c.getAttribute("data-block-parent")){const i=c.getAttribute("data-style-prop"),u=c.getAttribute("data-style-id"),o=c.getAttribute("data-block-parent");e([{id:u,prop:i,blockId:o}]),t([o])}else c!=null&&c.getAttribute("data-block-id")&&t([c.getAttribute("data-block-id")])}},wt=x.throttle((e,t)=>{const n=fe(e.target);n!=null&&n.getAttribute("data-style-id")&&t(n.getAttribute("data-style-id"))},100),Rt=()=>{const[,e]=r.useHighlightBlockId(),[t]=H.useAtom(r.inlineEditingActiveAtom);return n=>{t||wt(n,e)}},St=({children:e})=>{const{document:t}=ne(),[n]=r.useSelectedBlockIds(),[a,c]=r.useSelectedStylingBlocks();m.useEffect(()=>{setTimeout(()=>{if(!x.isEmpty(a))return;const d=qe(t,x.first(n));if(d){const h=d.getAttribute("data-style-prop");if(h){const g=d.getAttribute("data-style-id"),w=d.getAttribute("data-block-parent");c([{id:g,prop:h,blockId:w}])}}},100)},[t,n,c,a]);const i=Et(),u=kt(),o=Rt(),p=jt();return s.jsxRuntimeExports.jsx("div",{id:"canvas",onClick:u,onDoubleClick:i,onMouseMove:o,...x.omit(p,"isDragging"),className:"relative mb-5 max-w-full "+(p.isDragging?"dragging":""),children:e})},qe=(e,t)=>e.querySelector(`[data-block-id="${t}"]`),Ct=()=>{const{window:e}=ne(),[t,n]=r.useSelectedBlockIds(),a=r.useAllBlocks(),[,c]=r.useSelectedStylingBlocks(),{undo:i,redo:u}=r.useCanvasHistory(),o=r.useDuplicateBlocks(),[,p]=r.useCutBlockIds(),[,d]=r.useCopyBlockIds(),{pasteBlocks:h}=r.usePasteBlocks(),[,g]=r.usePreviewMode(),w=r.useRemoveBlocks(),{savePage:I}=r.useSavePage(),[P]=H.useAtom(r.inlineEditingActiveAtom),[,E]=H.useAtom(r.editLayerNameAtom),A=q=>{q.key==="Enter"&&(q.preventDefault(),t.length===1&&E(x.first(t)))},D=q=>{const R=a.find(F=>F._id===q);return R?R._parent:null};return m.useEffect(()=>{const q=R=>{if(R.key==="Escape"){n([]),c([]);return}if(A(R),!P&&(R.key==="Delete"||R.key==="Backspace")&&(R.preventDefault(),w(t)),R.ctrlKey||R.metaKey){if(R.key==="ArrowUp"){R.preventDefault();const F=t.length>0?D(t[0]):null;F&&n([F])}if(["z","y","d","x","c","p","s","v"].includes(R.key)){if(P&&["x","z","v"].includes(R.key))return!0;R.preventDefault()}R.key==="s"&&(R.stopPropagation(),R.preventDefault(),I()),R.key==="z"&&i(),R.key==="y"&&u(),R.key==="d"&&o(t),R.key==="x"&&p(t),R.key==="c"&&d(t),R.key==="v"&&t.length>0&&h(t[0])}};return e.removeEventListener("keydown",q),e.addEventListener("keydown",q),()=>{e.removeEventListener("keydown",q)}},[t,n,i,w,g,u,o,p,d,h,P,I,e]),null},Tt=({block:e,label:t})=>{const[,n]=r.useSelectedBlockIds(),[,a]=r.useHighlightBlockId(),[,c]=H.useAtom(r.draggedBlockIdAtom),i=Se.useFeature("dnd");return s.jsxRuntimeExports.jsxs("div",{className:"mr-10 flex cursor-grab items-center space-x-1 px-1",draggable:i?"true":"false",onDragStart:u=>{u.dataTransfer.setData("text/plain",JSON.stringify(x.pick(e,["_id","_type"]))),c(e._id),setTimeout(()=>{n([]),a(null)},200)},children:[s.jsxRuntimeExports.jsx(L.DragHandleDots2Icon,{}),t]})},It=({selectedBlockElement:e,block:t})=>{const n=r.useRemoveBlocks(),a=r.useDuplicateBlocks(),[,c]=r.useSelectedBlockIds(),[,i]=r.useSelectedStylingBlocks(),{floatingStyles:u,refs:o,update:p}=ge.useFloating({placement:"top-start",middleware:[ge.shift(),Ke.flip()],elements:{reference:e}});Je.useResizeObserver(e,()=>p(),e!==null);const d=x.get(t,"_parent",null),h=x.isEmpty(x.get(t,"_name",""))?x.get(t,"_type",""):x.get(t,"_name","");return!e||!t?null:s.jsxRuntimeExports.jsxs("div",{role:"button",tabIndex:0,ref:o.setFloating,style:u,onClick:g=>{g.stopPropagation(),g.preventDefault()},onKeyDown:g=>g.stopPropagation(),className:"z-[99999] flex h-6 items-center bg-blue-500 py-2 text-xs text-white",children:[s.jsxRuntimeExports.jsx(Tt,{label:h,block:t}),s.jsxRuntimeExports.jsxs("div",{className:"flex gap-2 px-1 ",children:[d&&s.jsxRuntimeExports.jsx(L.ArrowUpIcon,{className:"hover:scale-105 ",onClick:()=>{i([]),c([d])}}),r.canDuplicateBlock(x.get(t,"_type",""))?s.jsxRuntimeExports.jsx(L.CopyIcon,{className:"hover:scale-105 ",onClick:()=>a([t==null?void 0:t._id])}):null,r.canDeleteBlock(x.get(t,"_type",""))?s.jsxRuntimeExports.jsx(L.TrashIcon,{className:"hover:scale-105 ",onClick:()=>n([t==null?void 0:t._id])}):null]})]})},Bt=({model:e})=>{const[t]=r.useBrandingOptions(),[n]=r.useSelectedBlockIds(),[a]=r.useDarkMode(),[c]=r.useHighlightBlockId(),[i]=r.useSelectedStylingBlocks(),[u]=H.useAtom(r.draggedBlockIdAtom),{document:o,window:p}=ne(),[d]=m.useState(o==null?void 0:o.getElementById("highlighted-block")),[h]=m.useState(o==null?void 0:o.getElementById("selected-block")),[g]=m.useState(o==null?void 0:o.getElementById("selected-styling-block")),[w]=m.useState(o==null?void 0:o.getElementById("dragged-block"));m.useEffect(()=>{a?o==null||o.documentElement.classList.add("dark"):o==null||o.documentElement.classList.remove("dark")},[a,o]);const I=x.get(t,"headingFont","DM Sans"),P=x.get(t,"bodyFont","DM Sans");return m.useEffect(()=>{const E=x.get(t,"primaryColor","#000"),A=x.get(t,"secondaryColor","#FFF"),D=Xe.tailwindcssPaletteGenerator({colors:[E,A],names:["primary","secondary"]});D.primary.DEFAULT=E,D.secondary.DEFAULT=A;const q=x.get(t,"roundedCorners","0");!p||!p.tailwind||(p.tailwind.config={darkMode:"class",theme:{fontFamily:{heading:[I],body:[P]},extend:{borderRadius:{global:`${q||"0"}px`},colors:D}},plugins:[p.tailwind.plugin.withOptions(({prefix:R="ui"}={})=>({addVariant:F})=>{for(const W of["open","checked","selected","active","disabled"])F(`${R}-${W}`,[`&[data-headlessui-state~="${W}"]`,`:where([data-headlessui-state~="${W}"]) &`]),F(`${R}-not-${W}`,[`&[data-headlessui-state]:not([data-headlessui-state~="${W}"])`,`:where([data-headlessui-state]:not([data-headlessui-state~="${W}"])) &:not([data-headlessui-state])`])})]})},[t,p,I,P]),m.useEffect(()=>{h&&(h.textContent=`${x.map(n,E=>`[data-block-id="${E}"]`).join(",")}{
|
|
54
|
+
*/var se,ve;function at(){if(ve)return se;ve=1;var e=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function a(i){if(i==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(i)}function c(){try{if(!Object.assign)return!1;var i=new String("abc");if(i[5]="de",Object.getOwnPropertyNames(i)[0]==="5")return!1;for(var u={},o=0;o<10;o++)u["_"+String.fromCharCode(o)]=o;var p=Object.getOwnPropertyNames(u).map(function(x){return u[x]});if(p.join("")!=="0123456789")return!1;var d={};return"abcdefghijklmnopqrst".split("").forEach(function(x){d[x]=x}),Object.keys(Object.assign({},d)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return se=c()?Object.assign:function(i,u){for(var o,p=a(i),d,x=1;x<arguments.length;x++){o=Object(arguments[x]);for(var g in o)t.call(o,g)&&(p[g]=o[g]);if(e){d=e(o);for(var w=0;w<d.length;w++)n.call(o,d[w])&&(p[d[w]]=o[d[w]])}}return p},se}var re,je;function pe(){if(je)return re;je=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return re=e,re}var oe,be;function Ce(){return be||(be=1,oe=Function.call.bind(Object.prototype.hasOwnProperty)),oe}var ie,Ee;function lt(){if(Ee)return ie;Ee=1;var e=function(){};if(process.env.NODE_ENV!=="production"){var t=pe(),n={},a=Ce();e=function(i){var u="Warning: "+i;typeof console<"u"&&console.error(u);try{throw new Error(u)}catch{}}}function c(i,u,o,p,d){if(process.env.NODE_ENV!=="production"){for(var x in i)if(a(i,x)){var g;try{if(typeof i[x]!="function"){var w=Error((p||"React class")+": "+o+" type `"+x+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof i[x]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw w.name="Invariant Violation",w}g=i[x](u,x,p,o,null,t)}catch(P){g=P}if(g&&!(g instanceof Error)&&e((p||"React class")+": type specification of "+o+" `"+x+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof g+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),g instanceof Error&&!(g.message in n)){n[g.message]=!0;var I=d?d():"";e("Failed "+o+" type: "+g.message+(I??""))}}}}return c.resetWarningCache=function(){process.env.NODE_ENV!=="production"&&(n={})},ie=c,ie}var ae,ke;function ct(){if(ke)return ae;ke=1;var e=Q.reactIsExports,t=at(),n=pe(),a=Ce(),c=lt(),i=function(){};process.env.NODE_ENV!=="production"&&(i=function(o){var p="Warning: "+o;typeof console<"u"&&console.error(p);try{throw new Error(p)}catch{}});function u(){return null}return ae=function(o,p){var d=typeof Symbol=="function"&&Symbol.iterator,x="@@iterator";function g(l){var f=l&&(d&&l[d]||l[x]);if(typeof f=="function")return f}var w="<<anonymous>>",I={array:D("array"),bigint:D("bigint"),bool:D("boolean"),func:D("function"),number:D("number"),object:D("object"),string:D("string"),symbol:D("symbol"),any:q(),arrayOf:R,element:F(),elementType:W(),instanceOf:O,node:Me(),objectOf:U,oneOf:$,oneOfType:Pe,shape:_e,exact:Le};function P(l,f){return l===f?l!==0||1/l===1/f:l!==l&&f!==f}function E(l,f){this.message=l,this.data=f&&typeof f=="object"?f:{},this.stack=""}E.prototype=Error.prototype;function A(l){if(process.env.NODE_ENV!=="production")var f={},k=0;function j(S,v,b,C,B,T,N){if(C=C||w,T=T||b,N!==n){if(p){var M=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 M.name="Invariant Violation",M}else if(process.env.NODE_ENV!=="production"&&typeof console<"u"){var J=C+":"+b;!f[J]&&k<3&&(i("You are manually calling a React.PropTypes validation function for the `"+T+"` prop on `"+C+"`. 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."),f[J]=!0,k++)}}return v[b]==null?S?v[b]===null?new E("The "+B+" `"+T+"` is marked as required "+("in `"+C+"`, but its value is `null`.")):new E("The "+B+" `"+T+"` is marked as required in "+("`"+C+"`, but its value is `undefined`.")):null:l(v,b,C,B,T)}var y=j.bind(null,!1);return y.isRequired=j.bind(null,!0),y}function D(l){function f(k,j,y,S,v,b){var C=k[j],B=z(C);if(B!==l){var T=X(C);return new E("Invalid "+S+" `"+v+"` of type "+("`"+T+"` supplied to `"+y+"`, expected ")+("`"+l+"`."),{expectedType:l})}return null}return A(f)}function q(){return A(u)}function R(l){function f(k,j,y,S,v){if(typeof l!="function")return new E("Property `"+v+"` of component `"+y+"` has invalid PropType notation inside arrayOf.");var b=k[j];if(!Array.isArray(b)){var C=z(b);return new E("Invalid "+S+" `"+v+"` of type "+("`"+C+"` supplied to `"+y+"`, expected an array."))}for(var B=0;B<b.length;B++){var T=l(b,B,y,S,v+"["+B+"]",n);if(T instanceof Error)return T}return null}return A(f)}function F(){function l(f,k,j,y,S){var v=f[k];if(!o(v)){var b=z(v);return new E("Invalid "+y+" `"+S+"` of type "+("`"+b+"` supplied to `"+j+"`, expected a single ReactElement."))}return null}return A(l)}function W(){function l(f,k,j,y,S){var v=f[k];if(!e.isValidElementType(v)){var b=z(v);return new E("Invalid "+y+" `"+S+"` of type "+("`"+b+"` supplied to `"+j+"`, expected a single ReactElement type."))}return null}return A(l)}function O(l){function f(k,j,y,S,v){if(!(k[j]instanceof l)){var b=l.name||w,C=He(k[j]);return new E("Invalid "+S+" `"+v+"` of type "+("`"+C+"` supplied to `"+y+"`, expected ")+("instance of `"+b+"`."))}return null}return A(f)}function $(l){if(!Array.isArray(l))return process.env.NODE_ENV!=="production"&&(arguments.length>1?i("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])."):i("Invalid argument supplied to oneOf, expected an array.")),u;function f(k,j,y,S,v){for(var b=k[j],C=0;C<l.length;C++)if(P(b,l[C]))return null;var B=JSON.stringify(l,function(N,M){var J=X(M);return J==="symbol"?String(M):M});return new E("Invalid "+S+" `"+v+"` of value `"+String(b)+"` "+("supplied to `"+y+"`, expected one of "+B+"."))}return A(f)}function U(l){function f(k,j,y,S,v){if(typeof l!="function")return new E("Property `"+v+"` of component `"+y+"` has invalid PropType notation inside objectOf.");var b=k[j],C=z(b);if(C!=="object")return new E("Invalid "+S+" `"+v+"` of type "+("`"+C+"` supplied to `"+y+"`, expected an object."));for(var B in b)if(a(b,B)){var T=l(b,B,y,S,v+"."+B,n);if(T instanceof Error)return T}return null}return A(f)}function Pe(l){if(!Array.isArray(l))return process.env.NODE_ENV!=="production"&&i("Invalid argument supplied to oneOfType, expected an instance of array."),u;for(var f=0;f<l.length;f++){var k=l[f];if(typeof k!="function")return i("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+Fe(k)+" at index "+f+"."),u}function j(y,S,v,b,C){for(var B=[],T=0;T<l.length;T++){var N=l[T],M=N(y,S,v,b,C,n);if(M==null)return null;M.data&&a(M.data,"expectedType")&&B.push(M.data.expectedType)}var J=B.length>0?", expected one of type ["+B.join(", ")+"]":"";return new E("Invalid "+b+" `"+C+"` supplied to "+("`"+v+"`"+J+"."))}return A(j)}function Me(){function l(f,k,j,y,S){return ee(f[k])?null:new E("Invalid "+y+" `"+S+"` supplied to "+("`"+j+"`, expected a ReactNode."))}return A(l)}function he(l,f,k,j,y){return new E((l||"React class")+": "+f+" type `"+k+"."+j+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+y+"`.")}function _e(l){function f(k,j,y,S,v){var b=k[j],C=z(b);if(C!=="object")return new E("Invalid "+S+" `"+v+"` of type `"+C+"` "+("supplied to `"+y+"`, expected `object`."));for(var B in l){var T=l[B];if(typeof T!="function")return he(y,S,v,B,X(T));var N=T(b,B,y,S,v+"."+B,n);if(N)return N}return null}return A(f)}function Le(l){function f(k,j,y,S,v){var b=k[j],C=z(b);if(C!=="object")return new E("Invalid "+S+" `"+v+"` of type `"+C+"` "+("supplied to `"+y+"`, expected `object`."));var B=t({},k[j],l);for(var T in B){var N=l[T];if(a(l,T)&&typeof N!="function")return he(y,S,v,T,X(N));if(!N)return new E("Invalid "+S+" `"+v+"` key `"+T+"` supplied to `"+y+"`.\nBad object: "+JSON.stringify(k[j],null," ")+`
|
|
55
|
+
Valid keys: `+JSON.stringify(Object.keys(l),null," "));var M=N(b,T,y,S,v+"."+T,n);if(M)return M}return null}return A(f)}function ee(l){switch(typeof l){case"number":case"string":case"undefined":return!0;case"boolean":return!l;case"object":if(Array.isArray(l))return l.every(ee);if(l===null||o(l))return!0;var f=g(l);if(f){var k=f.call(l),j;if(f!==l.entries){for(;!(j=k.next()).done;)if(!ee(j.value))return!1}else for(;!(j=k.next()).done;){var y=j.value;if(y&&!ee(y[1]))return!1}}else return!1;return!0;default:return!1}}function Ne(l,f){return l==="symbol"?!0:f?f["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&f instanceof Symbol:!1}function z(l){var f=typeof l;return Array.isArray(l)?"array":l instanceof RegExp?"object":Ne(f,l)?"symbol":f}function X(l){if(typeof l>"u"||l===null)return""+l;var f=z(l);if(f==="object"){if(l instanceof Date)return"date";if(l instanceof RegExp)return"regexp"}return f}function Fe(l){var f=X(l);switch(f){case"array":case"object":return"an "+f;case"boolean":case"date":case"regexp":return"a "+f;default:return f}}function He(l){return!l.constructor||!l.constructor.name?w:l.constructor.name}return I.checkPropTypes=c,I.resetWarningCache=c.resetWarningCache,I.PropTypes=I,I},ae}var le,we;function dt(){if(we)return le;we=1;var e=pe();function t(){}function n(){}return n.resetWarningCache=t,le=function(){function a(u,o,p,d,x,g){if(g!==e){var w=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 w.name="Invariant Violation",w}}a.isRequired=a;function c(){return a}var i={array:a,bigint:a,bool:a,func:a,number:a,object:a,string:a,symbol:a,any:a,arrayOf:c,element:a,elementType:a,instanceOf:c,node:a,objectOf:c,oneOf:c,oneOfType:c,shape:c,exact:c,checkPropTypes:n,resetWarningCache:t};return i.PropTypes=i,i},le}var Wt=te.exports;if(process.env.NODE_ENV!=="production"){var ut=Q.reactIsExports,pt=!0;te.exports=ct()(ut.isElement,pt)}else te.exports=dt()();var ft=te.exports;const _=Z.getDefaultExportFromCjs(ft);let Te,Ie;typeof document<"u"&&(Te=document);typeof window<"u"&&(Ie=window);const Be=m.createContext({document:Te,window:Ie}),ne=()=>m.useContext(Be),{Provider:ht,Consumer:$t}=Be;class Ae extends m.Component{componentDidMount(){this.props.contentDidMount()}componentDidUpdate(){this.props.contentDidUpdate()}render(){return m.Children.only(this.props.children)}}K(Ae,"propTypes",{children:_.element.isRequired,contentDidMount:_.func.isRequired,contentDidUpdate:_.func.isRequired});class de extends m.Component{constructor(n,a){super(n,a);K(this,"setRef",n=>{this.nodeRef.current=n;const{forwardedRef:a}=this.props;typeof a=="function"?a(n):a&&(a.current=n)});K(this,"handleLoad",()=>{clearInterval(this.loadCheck),this.state.iframeLoaded||this.setState({iframeLoaded:!0})});K(this,"loadCheck",()=>setInterval(()=>{this.handleLoad()},500));this._isMounted=!1,this.nodeRef=m.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 n=this.getDoc();return this.props.mountTarget?n.querySelector(this.props.mountTarget):n.body.children[0]}renderFrameContents(){if(!this._isMounted)return null;const n=this.getDoc();if(!n)return null;const a=this.props.contentDidMount,c=this.props.contentDidUpdate,i=n.defaultView||n.parentView,u=s.jsxRuntimeExports.jsx(Ae,{contentDidMount:a,contentDidUpdate:c,children:s.jsxRuntimeExports.jsx(ht,{value:{document:n,window:i},children:s.jsxRuntimeExports.jsx("div",{className:"frame-content",children:this.props.children})})}),o=this.getMountTarget();return[xe.createPortal(this.props.head,this.getDoc().head),xe.createPortal(u,o)]}render(){const n={...this.props,srcDoc:this.props.initialContent,children:void 0};return delete n.head,delete n.initialContent,delete n.mountTarget,delete n.contentDidMount,delete n.contentDidUpdate,delete n.forwardedRef,s.jsxRuntimeExports.jsx("iframe",{...n,ref:this.setRef,onLoad:this.handleLoad,children:this.state.iframeLoaded&&this.renderFrameContents()})}}K(de,"propTypes",{style:_.object,head:_.node,initialContent:_.string,mountTarget:_.string,contentDidMount:_.func,contentDidUpdate:_.func,children:_.oneOfType([_.element,_.arrayOf(_.element)])}),K(de,"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 xt=m.forwardRef((e,t)=>s.jsxRuntimeExports.jsx(de,{...e,forwardedRef:t}));let Y=null,G=[],V=null,De=null;function gt(e){const t=window.getComputedStyle(e),n=parseInt(t.paddingLeft,10),a=parseInt(t.paddingTop,10),c=parseInt(t.paddingRight,10),i=parseInt(t.paddingBottom,10);return{paddingLeft:n,paddingTop:a,paddingRight:c,paddingBottom:i}}const Re=(e,t,n)=>{if(!Y)return;const a=e.getBoundingClientRect(),c=Y==null?void 0:Y.getElementById("placeholder"),{paddingLeft:i,paddingTop:u,paddingRight:o,paddingBottom:p}=gt(e);c.style.width=t==="vertical"?a.width-i-o+"px":"2px",c.style.height=t==="vertical"?"2px":a.height-u-p+"px",c.style.display="block";const d=G.reduce((x,g)=>Math.abs(g-n)<Math.abs(x-n)?g:x);De=G.indexOf(d),t==="vertical"?(c.style.top=e.offsetTop+d+"px",c.style.left=e.offsetLeft+i+"px"):(c.style.top=e.offsetTop+u+"px",c.style.left=e.offsetLeft+d+"px")},mt=e=>{const t=Oe(e),n=window.getComputedStyle(e),a=t==="horizontal",c=parseInt(n.paddingLeft),i=parseInt(n.paddingTop);let u=a?c:i;G=[u],Array.from(e.children).forEach(o=>{const p=window.getComputedStyle(o),d=parseInt(a?p.marginLeft+p.marginRight:p.marginTop+p.marginBottom),x=a?o.offsetWidth:o.offsetHeight;G.push(u+x+d),u+=x+d})};function Oe(e){const t=window.getComputedStyle(e).display,n=window.getComputedStyle(e).flexDirection;if(t==="flex")return n==="column"||n==="column-reverse"?"vertical":"horizontal";if(t==="grid"){const a=window.getComputedStyle(e).gridTemplateRows,c=window.getComputedStyle(e).gridTemplateColumns;if(a.includes("auto"))return"vertical";if(c.includes("auto"))return"horizontal"}return t==="block"?"vertical":"horizontal"}const yt=h.throttle(e=>{const t=e.target,n=Oe(t);if(n==="vertical"){const a=e.clientY-t.offsetTop;Re(t,n,a)}else{const a=e.clientX-t.offsetLeft;Re(t,n,a)}},200),vt=e=>{e.preventDefault(),e.stopPropagation(),yt(e)};function ce(){const e=Y==null?void 0:Y.getElementById("placeholder");e.style.display="none"}const jt=()=>{const{document:e}=ne(),[t,n]=H.useAtom(r.draggingFlagAtom),a=Ye.useAddBlockByDrop(),c=Se.useFeature("dnd"),[,i]=r.useHighlightBlockId(),[,u]=r.useSelectedBlockIds();return Y=e,{isDragging:t,"data-dnd":"branch",onDragOver:c?vt:h.noop,onDrop:c?o=>{V==null||V.classList.remove("outline","outline-green-300","outline-2","-outline-offset-2");const p=JSON.parse(o.dataTransfer.getData("text/plain"));let d=o.target.getAttribute("data-block-id");d===null&&(d=o.target.parentElement.getAttribute("data-block-id")),a({block:p,dropTargetId:d||null,relativeIndex:De}),n(!1),ce(),setTimeout(()=>{ce()},300)}:h.noop,onDragEnter:c?o=>{const p=o;V=p.target,p.stopPropagation(),p.preventDefault(),G=[];const d=p.target;mt(d),d.classList.add("outline","outline-green-300","outline-2","-outline-offset-2"),n(!0),i(""),u([])}:h.noop,onDragLeave:c?o=>{const p=o;V=null,p.stopPropagation(),p.preventDefault(),p.target.classList.remove("outline","outline-green-300","outline-2","-outline-offset-2")}:h.noop,onMouseOut:c?()=>{n(!1),ce()}:h.noop}};function fe(e){return e.getAttribute("data-block-id")?e:e.closest("[data-block-id]")}function bt(e){e.container.innerHTML="",e.container.parentNode.removeChild(e.container);var t=document.querySelector(".ql-toolbar");t&&t.parentNode.removeChild(t),e=null}const Et=()=>{const e=["Heading","Paragraph","Text","Link","Span","Button"],t=r.useUpdateBlocksProps(),[,n]=r.useSelectedBlockIds(),[,a]=r.useHighlightBlockId(),[c,i]=H.useAtom(r.inlineEditingActiveAtom);return u=>{var w;if(c)return;const o=fe(u.target),p=o.getAttribute("data-block-type");if(!p||!e.includes(p))return;const d=o.cloneNode(!0);o.style.display="none",Array.from(d.attributes).forEach(I=>{I.name!=="class"&&d.removeAttribute(I.name)}),p==="Text"&&(d.style.display="inline-block"),o.parentNode.insertBefore(d,o.nextSibling);const x=new ze.Quill(d,{placeholder:"Type here..."});function g(){const I=x.getText(0,x.getLength());t([o.getAttribute("data-block-id")],{content:I}),o.removeAttribute("style"),d.removeEventListener("blur",g,!0),bt(x),i(""),a("")}d.addEventListener("blur",g,!0),x.focus(),(w=d.querySelector(".ql-clipboard"))==null||w.remove(),n([]),i(o.getAttribute("data-block-id"))}},kt=()=>{const[,e]=r.useSelectedStylingBlocks(),[,t]=r.useSelectedBlockIds(),[n]=H.useAtom(r.inlineEditingActiveAtom);return a=>{if(n)return;a.stopPropagation();const c=fe(a.target);if(c!=null&&c.getAttribute("data-block-parent")){const i=c.getAttribute("data-style-prop"),u=c.getAttribute("data-style-id"),o=c.getAttribute("data-block-parent");e([{id:u,prop:i,blockId:o}]),t([o])}else c!=null&&c.getAttribute("data-block-id")&&t([c.getAttribute("data-block-id")])}},wt=h.throttle((e,t)=>{const n=fe(e.target);n!=null&&n.getAttribute("data-style-id")&&t(n.getAttribute("data-style-id"))},100),Rt=()=>{const[,e]=r.useHighlightBlockId(),[t]=H.useAtom(r.inlineEditingActiveAtom);return n=>{t||wt(n,e)}},St=({children:e})=>{const{document:t}=ne(),[n]=r.useSelectedBlockIds(),[a,c]=r.useSelectedStylingBlocks();m.useEffect(()=>{setTimeout(()=>{if(!h.isEmpty(a))return;const d=qe(t,h.head(n));if(d){const x=d.getAttribute("data-style-prop");if(x){const g=d.getAttribute("data-style-id"),w=d.getAttribute("data-block-parent");c([{id:g,prop:x,blockId:w}])}}},100)},[t,n,c,a]);const i=Et(),u=kt(),o=Rt(),p=jt();return s.jsxRuntimeExports.jsx("div",{id:"canvas",onClick:u,onDoubleClick:i,onMouseMove:o,...h.omit(p,"isDragging"),className:"relative mb-5 max-w-full "+(p.isDragging?"dragging":""),children:e})},qe=(e,t)=>e.querySelector(`[data-block-id="${t}"]`),Ct=()=>{const{window:e}=ne(),[t,n]=r.useSelectedBlockIds(),a=r.useAllBlocks(),[,c]=r.useSelectedStylingBlocks(),{undo:i,redo:u}=r.useCanvasHistory(),o=r.useDuplicateBlocks(),[,p]=r.useCutBlockIds(),[,d]=r.useCopyBlockIds(),{pasteBlocks:x}=r.usePasteBlocks(),[,g]=r.usePreviewMode(),w=r.useRemoveBlocks(),{savePage:I}=r.useSavePage(),[P]=H.useAtom(r.inlineEditingActiveAtom),[,E]=H.useAtom(r.editLayerNameAtom),A=q=>{q.key==="Enter"&&(q.preventDefault(),t.length===1&&E(h.head(t)))},D=q=>{const R=a.find(F=>F._id===q);return R?R._parent:null};return m.useEffect(()=>{const q=R=>{if(R.key==="Escape"){n([]),c([]);return}if(A(R),!P&&(R.key==="Delete"||R.key==="Backspace")&&(R.preventDefault(),w(t)),R.ctrlKey||R.metaKey){if(R.key==="ArrowUp"){R.preventDefault();const F=t.length>0?D(t[0]):null;F&&n([F])}if(["z","y","d","x","c","p","s","v"].includes(R.key)){if(P&&["x","z","v"].includes(R.key))return!0;R.preventDefault()}R.key==="s"&&(R.stopPropagation(),R.preventDefault(),I()),R.key==="z"&&i(),R.key==="y"&&u(),R.key==="d"&&o(t),R.key==="x"&&p(t),R.key==="c"&&d(t),R.key==="v"&&t.length>0&&x(t[0])}};return e.removeEventListener("keydown",q),e.addEventListener("keydown",q),()=>{e.removeEventListener("keydown",q)}},[t,n,i,w,g,u,o,p,d,x,P,I,e]),null},Tt=({block:e,label:t})=>{const[,n]=r.useSelectedBlockIds(),[,a]=r.useHighlightBlockId(),[,c]=H.useAtom(r.draggedBlockIdAtom),i=Se.useFeature("dnd");return s.jsxRuntimeExports.jsxs("div",{className:"mr-10 flex cursor-grab items-center space-x-1 px-1",draggable:i?"true":"false",onDragStart:u=>{u.dataTransfer.setData("text/plain",JSON.stringify(h.pick(e,["_id","_type"]))),c(e._id),setTimeout(()=>{n([]),a(null)},200)},children:[s.jsxRuntimeExports.jsx(L.DragHandleDots2Icon,{}),t]})},It=({selectedBlockElement:e,block:t})=>{const n=r.useRemoveBlocks(),a=r.useDuplicateBlocks(),[,c]=r.useSelectedBlockIds(),[,i]=r.useSelectedStylingBlocks(),{floatingStyles:u,refs:o,update:p}=ge.useFloating({placement:"top-start",middleware:[ge.shift(),Ke.flip()],elements:{reference:e}});Je.useResizeObserver(e,()=>p(),e!==null);const d=h.get(t,"_parent",null),x=h.isEmpty(h.get(t,"_name",""))?h.get(t,"_type",""):h.get(t,"_name","");return!e||!t?null:s.jsxRuntimeExports.jsxs("div",{role:"button",tabIndex:0,ref:o.setFloating,style:u,onClick:g=>{g.stopPropagation(),g.preventDefault()},onKeyDown:g=>g.stopPropagation(),className:"z-[99999] flex h-6 items-center bg-blue-500 py-2 text-xs text-white",children:[s.jsxRuntimeExports.jsx(Tt,{label:x,block:t}),s.jsxRuntimeExports.jsxs("div",{className:"flex gap-2 px-1 ",children:[d&&s.jsxRuntimeExports.jsx(L.ArrowUpIcon,{className:"hover:scale-105 ",onClick:()=>{i([]),c([d])}}),r.canDuplicateBlock(h.get(t,"_type",""))?s.jsxRuntimeExports.jsx(L.CopyIcon,{className:"hover:scale-105 ",onClick:()=>a([t==null?void 0:t._id])}):null,r.canDeleteBlock(h.get(t,"_type",""))?s.jsxRuntimeExports.jsx(L.TrashIcon,{className:"hover:scale-105 ",onClick:()=>n([t==null?void 0:t._id])}):null]})]})},Bt=({model:e})=>{const[t]=r.useBrandingOptions(),[n]=r.useSelectedBlockIds(),[a]=r.useDarkMode(),[c]=r.useHighlightBlockId(),[i]=r.useSelectedStylingBlocks(),[u]=H.useAtom(r.draggedBlockIdAtom),{document:o,window:p}=ne(),[d]=m.useState(o==null?void 0:o.getElementById("highlighted-block")),[x]=m.useState(o==null?void 0:o.getElementById("selected-block")),[g]=m.useState(o==null?void 0:o.getElementById("selected-styling-block")),[w]=m.useState(o==null?void 0:o.getElementById("dragged-block"));m.useEffect(()=>{a?o==null||o.documentElement.classList.add("dark"):o==null||o.documentElement.classList.remove("dark")},[a,o]);const I=h.get(t,"headingFont","DM Sans"),P=h.get(t,"bodyFont","DM Sans");return m.useEffect(()=>{const E=h.get(t,"primaryColor","#000"),A=h.get(t,"secondaryColor","#FFF"),D=Xe.tailwindcssPaletteGenerator({colors:[E,A],names:["primary","secondary"]});D.primary.DEFAULT=E,D.secondary.DEFAULT=A;const q=h.get(t,"roundedCorners","0");!p||!p.tailwind||(p.tailwind.config={darkMode:"class",theme:{fontFamily:{heading:[I],body:[P]},extend:{borderRadius:{global:`${q||"0"}px`},colors:D}},plugins:[p.tailwind.plugin.withOptions(({prefix:R="ui"}={})=>({addVariant:F})=>{for(const W of["open","checked","selected","active","disabled"])F(`${R}-${W}`,[`&[data-headlessui-state~="${W}"]`,`:where([data-headlessui-state~="${W}"]) &`]),F(`${R}-not-${W}`,[`&[data-headlessui-state]:not([data-headlessui-state~="${W}"])`,`:where([data-headlessui-state]:not([data-headlessui-state~="${W}"])) &:not([data-headlessui-state])`])})]})},[t,p,I,P]),m.useEffect(()=>{x&&(x.textContent=`${h.map(n,E=>`[data-block-id="${E}"]`).join(",")}{
|
|
56
56
|
outline: 1px solid ${n.length===1?"#42a1fc":"orange"} !important; outline-offset: -1px;
|
|
57
|
-
}`)},[n,
|
|
57
|
+
}`)},[n,x]),m.useEffect(()=>{if(!u){w.textContent="";return}w.textContent=`[data-block-id="${u}"]{ pointer-events: none !important; opacity: 0.2 !important}`},[u]),m.useEffect(()=>{d&&(d.textContent=c?`[data-style-id="${c}"]{ outline: 1px solid #42a1fc !important; outline-offset: -1px;}`:"")},[c,n,d]),m.useEffect(()=>{g&&(g.textContent=`${h.map(i,({id:E})=>`[data-style-id="${E}"]`).join(",")}{
|
|
58
58
|
outline: 1px solid #42a1fc !important; outline-offset: -1px;
|
|
59
|
-
}`)},[i,g]),m.useEffect(()=>{const E=
|
|
59
|
+
}`)},[i,g]),m.useEffect(()=>{const E=h.get(t,"bodyTextLightColor","#64748b"),A=h.get(t,"bodyTextDarkColor","#94a3b8"),D=h.get(t,"bodyBgLightColor","#FFFFFF"),q=h.get(t,"bodyBgDarkColor","#0f172a");o.body.className=`font-body antialiased text-[${E}] bg-[${D}] dark:text-[${A}] dark:bg-[${q}]`},[t,o,e]),e==="page"?s.jsxRuntimeExports.jsxs(s.jsxRuntimeExports.Fragment,{children:[I&&s.jsxRuntimeExports.jsx("link",{id:"heading-font",rel:"stylesheet",type:"text/css",href:`https://fonts.googleapis.com/css2?family=${I.replace(/ /g,"+")}:wght@300;400;500;600;700;800;900&display=swap`,media:"all"}),P&&I!==P&&s.jsxRuntimeExports.jsx("link",{id:"body-font",rel:"stylesheet",type:"text/css",href:`https://fonts.googleapis.com/css2?family=${P.replace(/ /g,"+")}:wght@300;400;500;600;700;800;900&display=swap`,media:"all"}),I&&s.jsxRuntimeExports.jsx("style",{children:`h1,h2,h3,h4,h5,h6{font-family: "${I}",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},At=e=>{const t={};return Object.keys(e).forEach(n=>{h.isString(e[n])&&e[n].startsWith(Z.SLOT_KEY)&&(t[n]=e[n].replace(Z.SLOT_KEY,"").split(","))}),t},Dt=h.memoize(e=>{const t=e.replace(Z.STYLES_KEY,"").split(",");return Ze.twMerge(t[0],t[1])});function Ot(e,t){return h.get(e,`${t}_attrs`,{})}function qt(e){const t={};return Object.keys(e).forEach(n=>{if(h.isString(e[n])&&e[n].startsWith(Z.STYLES_KEY)){const a=Dt(e[n]);t[n]={className:a,"data-style-prop":n,"data-block-parent":e._id,"data-style-id":`${n}-${e._id}`,...Ot(e,n)}}}),t}function Pt(e,t){const n=h.get(e,"_bindings",{});return h.isEmpty(n)?{...e}:(h.forEach(n,(a,c)=>{h.isString(a)&&h.get(t,a,null)&&(e[c]=h.get(t,a,null))}),e)}function ue({blocks:e}){const t=r.useAllBlocks(),n=m.useCallback(i=>qt(i),[]),[a]=Q.useChaiExternalData(),[c]=r.useAtom(r.inlineEditingActiveAtom);return s.jsxRuntimeExports.jsx(s.jsxRuntimeExports.Fragment,{children:m.Children.toArray(e.map((i,u)=>{if(c===i._id)return null;const o=At(i),p={};h.isEmpty(o)||Object.keys(o).forEach(w=>{p[w]=m.Children.toArray(o[w].map(I=>s.jsxRuntimeExports.jsx(ue,{blocks:[h.find(t,{_id:I})]})))});const d=h.filter(t,{_parent:i._id});p.children=d.length?s.jsxRuntimeExports.jsx(ue,{blocks:d}):null;const x=Ge.getBlockComponent(i._type),g=h.get(x,"component",null);return h.isNull(g)?s.jsxRuntimeExports.jsx("noscript",{children:`<!-- ${i==null?void 0:i._type} not registered -->`}):s.jsxRuntimeExports.jsx(m.Suspense,{children:m.createElement(g,{blockProps:{"data-block-id":i._id,"data-block-type":i._type,"data-dnd":r.canAddChildBlock(i._type)?"branch":"leaf"},inBuilder:!0,index:u,...Pt(i,a),...n(i),...p})})}))})}const Mt=()=>{const e=r.useAllBlocks();return s.jsxRuntimeExports.jsx(Ve.Provider,{children:h.isEmpty(e)?null:s.jsxRuntimeExports.jsx(Q.BlocksExternalDataProvider,{children:s.jsxRuntimeExports.jsx(ue,{blocks:h.filter(e,t=>h.isEmpty(t._parent))})})})},_t=(e,t)=>e.querySelector(`[data-style-id="${t}"]`),Lt=()=>{const[e]=H.useAtom(r.networkModeAtom),[t]=r.usePreviewMode(),[n]=r.useCanvasWidth(),[,a]=r.useSelectedBlockIds(),c=r.useSelectedBlock(),[,i]=r.useHighlightBlockId(),u=m.useRef(null),o=m.useRef(null),[p,d]=m.useState({width:0,height:0}),x=it(p),[g,w]=m.useState(0),[I,P]=m.useState([]),[,E]=m.useState([]),[,A]=H.useAtom(r.canvasIframeAtom),[D,q]=r.useSelectedStylingBlocks(),R=r.useBuilderProp("loadingCanvas",!1);m.useEffect(()=>{const{clientWidth:O,clientHeight:$}=o.current;d({width:O,height:$}),g===0&&w(O)},[o,n,g]);const F=(O,$=0)=>{const{top:U}=O.getBoundingClientRect();return U+$>=0&&U-$<=window.innerHeight};m.useEffect(()=>{var O,$;if(c&&c.type!=="Multiple"&&u.current){const U=qe(u.current.contentDocument,c._id);U&&(F(U)||($=(O=u.current)==null?void 0:O.contentWindow)==null||$.scrollTo({top:U.offsetTop,behavior:"smooth"}),P([U]))}},[c]),m.useEffect(()=>{if(!h.isEmpty(D)&&u.current){const O=_t(u.current.contentDocument,h.head(D).id);E(O?[O]:[null])}else E([null])},[D]);const W=m.useMemo(()=>{let O=ot;return e==="offline"&&(O=O.replace("https://old.chaibuilder.com/offline/tailwind.cdn.js","/offline/tailwind.cdn.js"),O=O.replace("https://unpkg.com/aos@next/dist/aos.css","/offline/aos.css"),O=O.replace("https://unpkg.com/aos@next/dist/aos.js","/offline/aos.js")),O},[e]);return s.jsxRuntimeExports.jsx("div",{onClick:()=>{a([]),q([])},onMouseLeave:()=>setTimeout(()=>i(""),300),className:"relative mx-auto overflow-hidden h-full w-full",style:g>0&&!h.isEmpty(x)?{width:t?"100%":g}:{},ref:o,children:s.jsxRuntimeExports.jsxs(xt,{contentDidMount:()=>A(u.current),ref:u,id:"canvas-iframe",style:{width:`${n}px`,...x},className:"relative mx-auto box-content h-full max-w-full shadow-lg transition-all duration-300 ease-linear",initialContent:W,children:[s.jsxRuntimeExports.jsx(Ct,{}),s.jsxRuntimeExports.jsx(It,{block:c,selectedBlockElement:h.head(I)}),s.jsxRuntimeExports.jsx(Bt,{model:"page"}),s.jsxRuntimeExports.jsx(St,{children:R?s.jsxRuntimeExports.jsx("div",{className:"h-full p-4",children:s.jsxRuntimeExports.jsx(r.Skeleton,{className:"h-full"})}):s.jsxRuntimeExports.jsx(Mt,{})}),s.jsxRuntimeExports.jsx("br",{}),s.jsxRuntimeExports.jsx("div",{id:"placeholder",className:"absolute bg-green-500 z-[99999] max-w-full transition-transform"})]})})},Nt=m.lazy(()=>Promise.resolve().then(()=>require("./AddBlocks-AG_J7s2Z.cjs"))),Ft=()=>{const[e,t]=H.useAtom(r.addBlocksModalAtom);return s.jsxRuntimeExports.jsxs("div",{className:"flex h-full w-full flex-col",children:[s.jsxRuntimeExports.jsx(rt,{}),s.jsxRuntimeExports.jsxs("div",{className:"relative h-full 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:[s.jsxRuntimeExports.jsx(m.Suspense,{fallback:s.jsxRuntimeExports.jsx(r.Skeleton,{className:"h-full"}),children:s.jsxRuntimeExports.jsx(Q.ErrorBoundary,{children:s.jsxRuntimeExports.jsx(Lt,{})})}),e?s.jsxRuntimeExports.jsx("div",{onClick:()=>t(!1),className:"absolute inset-0 z-50 flex items-center bg-black/30 backdrop-blur-sm",children:s.jsxRuntimeExports.jsx("div",{onClick:n=>n.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:s.jsxRuntimeExports.jsx(Nt,{})})}):null]})]})};exports.default=Ft;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./jsx-runtime-WUGKV8jN.cjs"),s=require("./index-d55M5MRz.cjs"),i=require("./lodash-2us0VT8I.cjs"),h=require("sonner"),l=require("react"),o=require("./index-veRjBw4J.cjs"),j=require("lucide-react");require("./MODIFIERS-WFzDQfiT.cjs");require("@radix-ui/react-toggle");require("class-variance-authority");require("./utils-37UXq2O5.cjs");require("clsx");require("tailwind-merge");require("@radix-ui/react-switch");require("@radix-ui/react-slot");require("@radix-ui/react-accordion");require("@radix-ui/react-icons");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("jotai");require("flat-to-nested");require("redux-undo");require("@chaibuilder/runtime");require("@react-hookz/web");require("react-i18next");require("i18next");require("@floating-ui/react-dom");require("react-textarea-autosize");require("flagged");require("react-dnd");require("@minoru/react-dnd-treeview");require("react-hotkeys-hook");require("./html-to-json-aAZkA0f5.cjs");require("himalaya");const p=()=>{const{data:t}=o.useProject(),{data:u,isLoading:x}=o.usePages(),{syncState:d}=s.useSavePage(),m=o.useChangePage(),[n,a]=o.useCurrentPage(),c=i.sortBy(i.filter(u,{type:"STATIC"}),r=>i.get(r,"uuid")===(t==null?void 0:t.homepage)?0:1);l.useEffect(()=>{!i.isEmpty(u)&&t.homepage&&!i.find(u,{uuid:n})&&a(t.homepage)},[n,u,t,a]),l.useEffect(()=>()=>a(null),[a]);const q=r=>{if(d!=="SAVED")h.toast.error("You have unsaved changes. Please save before changing the page.");else{const g=i.find(c,{uuid:r});m(g)}};return x||i.isEmpty(n)?null:e.jsxRuntimeExports.jsx("nav",{className:"flex rounded-lg border border-gray-200 bg-gray-50 px-3 pr-0 py-1 text-gray-700 dark:border-gray-700 dark:bg-gray-800","aria-label":"Breadcrumb",children:e.jsxRuntimeExports.jsxs("ol",{className:"inline-flex items-center space-x-1 md:space-x-3",children:[e.jsxRuntimeExports.jsx("li",{className:"inline-flex items-center",children:e.jsxRuntimeExports.jsxs("div",{className:"inline-flex items-center text-sm font-medium text-gray-500 dark:text-gray-400",children:[e.jsxRuntimeExports.jsx(j.BriefcaseIcon,{className:"w-4 h-4 mr-2"}),i.capitalize(t.name)]})}),e.jsxRuntimeExports.jsx("li",{"aria-current":"page",children:e.jsxRuntimeExports.jsxs("div",{className:"flex items-center",children:[e.jsxRuntimeExports.jsx("svg",{className:"mx-1 h-3 w-3 text-gray-400","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 6 10",children:e.jsxRuntimeExports.jsx("path",{stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"m1 9 4-4-4-4"})}),e.jsxRuntimeExports.jsxs(s.Select,{value:n||"",onValueChange:q,children:[e.jsxRuntimeExports.jsx(s.SelectTrigger,{className:"h-max border-0 py-0 text-sm font-medium text-gray-600 shadow-none outline-none ring-0 focus:ring-0 dark:text-gray-400",children:e.jsxRuntimeExports.jsx(s.SelectValue,{placeholder:"Page"})}),e.jsxRuntimeExports.jsx(s.SelectContent,{className:"z-[999]",children:i.map(c,r=>e.jsxRuntimeExports.jsx(s.SelectItem,{value:r.uuid,children:r==null?void 0:r.name},r.uuid))})]})]})})]})})};exports.default=p;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { j as e } from "./jsx-runtime-NV737rRe.js";
|
|
2
|
-
import { ag as x, aq as h, ar as f, as as j, at as y, au as P } from "./index-
|
|
3
|
-
import {
|
|
2
|
+
import { ag as x, aq as h, ar as f, as as j, at as y, au as P } from "./index-0OqmBgqo.js";
|
|
3
|
+
import { q as v, b, g as w, a as m, j as n, u as C, d as N } from "./lodash-3gkdNK5u.js";
|
|
4
4
|
import { toast as S } from "sonner";
|
|
5
5
|
import { useEffect as p } from "react";
|
|
6
|
-
import { b as k, a as B, d as E, e as I } from "./index-
|
|
6
|
+
import { b as k, a as B, d as E, e as I } from "./index-4fMl4eN2.js";
|
|
7
7
|
import { BriefcaseIcon as L } from "lucide-react";
|
|
8
8
|
import "./MODIFIERS-MLfpKQY1.js";
|
|
9
9
|
import "@radix-ui/react-toggle";
|
|
10
10
|
import "class-variance-authority";
|
|
11
|
-
import "./utils-
|
|
11
|
+
import "./utils-XsPKXMVo.js";
|
|
12
12
|
import "clsx";
|
|
13
13
|
import "tailwind-merge";
|
|
14
14
|
import "@radix-ui/react-switch";
|
|
@@ -46,13 +46,13 @@ import "flagged";
|
|
|
46
46
|
import "react-dnd";
|
|
47
47
|
import "@minoru/react-dnd-treeview";
|
|
48
48
|
import "react-hotkeys-hook";
|
|
49
|
-
import "./html-to-json-
|
|
49
|
+
import "./html-to-json-Y5M0N8PH.js";
|
|
50
50
|
import "himalaya";
|
|
51
51
|
const Be = () => {
|
|
52
|
-
const { data: t } = k(), { data:
|
|
52
|
+
const { data: t } = k(), { data: a, isLoading: l } = B(), { syncState: c } = x(), d = E(), [i, o] = I(), s = v(b(a, { type: "STATIC" }), (r) => w(r, "uuid") === (t == null ? void 0 : t.homepage) ? 0 : 1);
|
|
53
53
|
p(() => {
|
|
54
|
-
!m(
|
|
55
|
-
}, [
|
|
54
|
+
!m(a) && t.homepage && !n(a, { uuid: i }) && o(t.homepage);
|
|
55
|
+
}, [i, a, t, o]), p(() => () => o(null), [o]);
|
|
56
56
|
const u = (r) => {
|
|
57
57
|
if (c !== "SAVED")
|
|
58
58
|
S.error("You have unsaved changes. Please save before changing the page.");
|
|
@@ -61,7 +61,7 @@ const Be = () => {
|
|
|
61
61
|
d(g);
|
|
62
62
|
}
|
|
63
63
|
};
|
|
64
|
-
return l || m(
|
|
64
|
+
return l || m(i) ? null : /* @__PURE__ */ e.jsx(
|
|
65
65
|
"nav",
|
|
66
66
|
{
|
|
67
67
|
className: "flex rounded-lg border border-gray-200 bg-gray-50 px-3 pr-0 py-1 text-gray-700 dark:border-gray-700 dark:bg-gray-800",
|
|
@@ -92,7 +92,7 @@ const Be = () => {
|
|
|
92
92
|
)
|
|
93
93
|
}
|
|
94
94
|
),
|
|
95
|
-
/* @__PURE__ */ e.jsxs(h, { value:
|
|
95
|
+
/* @__PURE__ */ e.jsxs(h, { value: i || "", onValueChange: u, children: [
|
|
96
96
|
/* @__PURE__ */ e.jsx(f, { className: "h-max border-0 py-0 text-sm font-medium text-gray-600 shadow-none outline-none ring-0 focus:ring-0 dark:text-gray-400", children: /* @__PURE__ */ e.jsx(j, { placeholder: "Page" }) }),
|
|
97
97
|
/* @__PURE__ */ e.jsx(y, { className: "z-[999]", children: N(s, (r) => /* @__PURE__ */ e.jsx(P, { value: r.uuid, children: r == null ? void 0 : r.name }, r.uuid)) })
|
|
98
98
|
] })
|