@chaibuilder/sdk 1.0.9 → 1.0.10

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 (162) hide show
  1. package/LICENSE +28 -0
  2. package/README.md +123 -21
  3. package/dist/AddBlocks-tdvDe7xL.cjs +3 -0
  4. package/dist/{AddBlocks-d10b7b87.js → AddBlocks-xR2s2BVa.js} +47 -44
  5. package/dist/BrandingOptions-DpJ-oNnf.cjs +1 -0
  6. package/dist/{BrandingOptions-f4ab5d9f.js → BrandingOptions-cHK2bVZy.js} +14 -18
  7. package/dist/{CanvasArea-10356200.js → CanvasArea-2zqT1lSE.js} +492 -503
  8. package/dist/CanvasArea-Br8bBSeT.cjs +46 -0
  9. package/dist/ChaiBuilderEditor-SacH75l4.cjs +163 -0
  10. package/dist/{index-aa42febc.js → ChaiBuilderEditor-h9bXC4l-.js} +11215 -15404
  11. package/dist/Class-_uCzl5v1.cjs +1 -0
  12. package/dist/{html-to-json-45e0e3b5.js → Class-l7qYbuoN.js} +185 -366
  13. package/dist/{CurrentPage-35e14043.js → CurrentPage-4lTETR2f.js} +26 -23
  14. package/dist/CurrentPage-nlUWJiUA.cjs +1 -0
  15. package/dist/{ImagesPanel-8b7a989d.cjs → ImagesPanel-6us7hiLN.cjs} +1 -1
  16. package/dist/{ImagesPanel-47ac13c3.js → ImagesPanel-oaHOD-Ex.js} +4 -4
  17. package/dist/Layers-Vw4XE6YB.cjs +1 -0
  18. package/dist/{Layers-c3dd4fc8.js → Layers-wOfijZnb.js} +42 -41
  19. package/dist/MarkAsGlobalBlock-1J_YyL1L.cjs +1 -0
  20. package/dist/{MarkAsGlobalBlock-505ae793.js → MarkAsGlobalBlock-xRyn29gC.js} +17 -20
  21. package/dist/{PagesPanel-bafc506f.js → PagesPanel-82gCVzHS.js} +16 -13
  22. package/dist/PagesPanel-ZKRdK-mI.cjs +1 -0
  23. package/dist/ProjectPanel-kYg4KkJu.cjs +1 -0
  24. package/dist/{ProjectPanel-6113f394.js → ProjectPanel-vz5WOyqZ.js} +22 -19
  25. package/dist/Settings-1E3Y_5r6.cjs +1 -0
  26. package/dist/{Settings-1c41c514.js → Settings-IuAF359L.js} +297 -296
  27. package/dist/SidePanels-WL1UioF2.cjs +1 -0
  28. package/dist/{SidePanels-c13f87dc.js → SidePanels-xssTWt4M.js} +34 -42
  29. package/dist/Topbar-3ozdWfSy.cjs +1 -0
  30. package/dist/{Topbar-b38d5d50.js → Topbar-H0f0EL6-.js} +33 -35
  31. package/dist/UnsplashImages-BoBBSi1a.cjs +1 -0
  32. package/dist/{UnsplashImages-4edb97e7.js → UnsplashImages-gPcBLjgB.js} +13 -14
  33. package/dist/UploadImages-T6kW0s3G.cjs +1 -0
  34. package/dist/{UploadImages-52181c3e.js → UploadImages-_ZyUU66E.js} +11 -12
  35. package/dist/{accordion-c0176dc5.js → accordion-oPUeqPCZ.js} +2 -2
  36. package/dist/{accordion-0afd8143.cjs → accordion-ynvFtV_p.cjs} +1 -1
  37. package/dist/{add-page-modal-08a19915.js → add-page-modal-J1E7rh1U.js} +25 -22
  38. package/dist/add-page-modal-eiiUZCJX.cjs +1 -0
  39. package/dist/alert-dialog-GNfnpqFB.js +64 -0
  40. package/dist/alert-dialog-Mv0-wAvS.cjs +1 -0
  41. package/dist/{command-b1103666.cjs → command-ThdTuUxt.cjs} +1 -1
  42. package/dist/{command-6f260f61.js → command-VHca6CcN.js} +3 -3
  43. package/dist/confirm-alert-8EHe0OOd.cjs +1 -0
  44. package/dist/confirm-alert-b0e_BLhF.js +36 -0
  45. package/dist/{context-menu-e1c240ce.js → context-menu-8dC9uGXj.js} +2 -2
  46. package/dist/{context-menu-fec580f2.cjs → context-menu-IgLbIuth.cjs} +1 -1
  47. package/dist/controls-Ni5kEzLz.js +103 -0
  48. package/dist/controls-xUKa23ic.cjs +1 -0
  49. package/dist/core.cjs +1 -1
  50. package/dist/core.d.ts +1 -10
  51. package/dist/core.js +116 -69
  52. package/dist/delete-page-modal-TGTmRjyn.cjs +1 -0
  53. package/dist/{delete-page-modal-9b37665b.js → delete-page-modal-ysj4O0bM.js} +25 -22
  54. package/dist/{dialog-170eaad9.cjs → dialog-S_QbL1iq.cjs} +1 -1
  55. package/dist/{dialog-18207bef.js → dialog-jrw9DF1f.js} +2 -2
  56. package/dist/{dropdown-menu-ae3ed09b.js → dropdown-menu-S03K_fNs.js} +2 -2
  57. package/dist/{dropdown-menu-84b2439e.cjs → dropdown-menu-sMXR59cB.cjs} +1 -1
  58. package/dist/{form-25e1af37.js → form-dVpOAyRl.js} +2 -2
  59. package/dist/{form-ea21db6c.cjs → form-nRAvKPQj.cjs} +1 -1
  60. package/dist/{functions-83b1de8d.js → functions-nNTuSTsR.js} +1 -1
  61. package/dist/functions-pcUZhFJM.js +12 -0
  62. package/dist/{functions-f84d5e2a.cjs → functions-sCuB7nvZ.cjs} +1 -1
  63. package/dist/functions-uw7QP2kT.cjs +1 -0
  64. package/dist/html-to-json-P6GpbcQX.cjs +1 -0
  65. package/dist/html-to-json-pdHQfRkN.js +178 -0
  66. package/dist/index-8L3zCc6V.cjs +1 -0
  67. package/dist/index-cZ4uo6aT.js +2256 -0
  68. package/dist/{label-e770a087.js → label-KaP7MRrs.js} +2 -2
  69. package/dist/{label-167415e5.cjs → label-tFm8HZdb.cjs} +1 -1
  70. package/dist/lib.cjs +1 -1
  71. package/dist/lib.d.ts +20 -13
  72. package/dist/lib.js +24 -23
  73. package/dist/{link-57de608a.js → link-6o6n2Tnd.js} +4 -4
  74. package/dist/link-ece8dZGH.cjs +1 -0
  75. package/dist/{page-viewer-5c733179.js → page-viewer-84Giu0Rs.js} +29 -26
  76. package/dist/page-viewer-OdVEG83P.cjs +1 -0
  77. package/dist/{popover-f7addcf4.js → popover-a84pbVhQ.js} +2 -2
  78. package/dist/{popover-7cb9079b.cjs → popover-fKjgcRUx.cjs} +1 -1
  79. package/dist/{project-general-setting-d9736056.js → project-general-setting-8OEVVxzn.js} +20 -17
  80. package/dist/project-general-setting-laHNQPW5.cjs +1 -0
  81. package/dist/{project-seo-setting-d81fc1e3.js → project-seo-setting-9kD_stdI.js} +11 -12
  82. package/dist/project-seo-setting-F3Opt9Uj.cjs +1 -0
  83. package/dist/render.cjs +1 -1
  84. package/dist/render.d.ts +7 -7
  85. package/dist/render.js +3 -3
  86. package/dist/{scroll-area-bb343b86.cjs → scroll-area-FiHvy-TZ.cjs} +1 -1
  87. package/dist/{scroll-area-83bd9e8f.js → scroll-area-ewXbxc3n.js} +2 -2
  88. package/dist/{select-0e32300c.cjs → select-7bjg-rr9.cjs} +1 -1
  89. package/dist/{select-7fddd7c3.js → select-POGdEDHT.js} +2 -2
  90. package/dist/{separator-a597dba7.cjs → separator-3Civ-6hb.cjs} +1 -1
  91. package/dist/{separator-a80d065b.js → separator-SctTn0Qi.js} +2 -2
  92. package/dist/server.d.ts +7 -10
  93. package/dist/server.js +0 -3
  94. package/dist/single-page-detail-X0TGlsT4.cjs +1 -0
  95. package/dist/{single-page-detail-04410e64.js → single-page-detail-iXpavDy8.js} +32 -29
  96. package/dist/skeleton-CU_FIbg3.js +239 -0
  97. package/dist/skeleton-JHP9zwL2.cjs +1 -0
  98. package/dist/studio.cjs +1 -0
  99. package/dist/studio.d.ts +13 -0
  100. package/dist/studio.js +39 -0
  101. package/dist/{tabs-85caa1e8.js → tabs-Gb9v5dVb.js} +2 -2
  102. package/dist/{tabs-860e37aa.cjs → tabs-iWeaaVrg.cjs} +1 -1
  103. package/dist/{textarea-a338ede6.cjs → textarea-1kZEh7ki.cjs} +1 -1
  104. package/dist/{textarea-0750bcd2.js → textarea-b2QvVhrK.js} +2 -2
  105. package/dist/{toggle-00c9d11e.js → toggle-ASJRAaGP.js} +2 -2
  106. package/dist/{toggle-b90fed97.cjs → toggle-ehNIPmme.cjs} +1 -1
  107. package/dist/ui.cjs +1 -1
  108. package/dist/ui.d.ts +69 -4
  109. package/dist/ui.js +272 -212
  110. package/dist/useAddBlock-1cMXaOVk.cjs +1 -0
  111. package/dist/useAddBlock-BOjrGBEO.js +86 -0
  112. package/dist/useAllBlocks-RU_Xw8j9.cjs +1 -0
  113. package/dist/useAllBlocks-lX6uVO39.js +20 -0
  114. package/dist/useChaiExternalData-4K9WxANa.js +6 -0
  115. package/dist/useChaiExternalData-DkyBJ81C.cjs +1 -0
  116. package/dist/useDarkMode-JWkrNFpH.js +23 -0
  117. package/dist/useDarkMode-zeTW_UUR.cjs +1 -0
  118. package/dist/useFeatureSupport-jWSuY7wk.js +16 -0
  119. package/dist/useFeatureSupport-tZ0QfBxp.cjs +1 -0
  120. package/dist/useHiddenBlocks-3MsGOJ1s.js +15 -0
  121. package/dist/useHiddenBlocks-oJuQDmTy.cjs +1 -0
  122. package/dist/useLanguage-O1uu2Bzu.js +216 -0
  123. package/dist/useLanguage-Y3qgAbgG.cjs +1 -0
  124. package/dist/useMarkAsGlobalBlock-DB5B1UP6.js +25 -0
  125. package/dist/useMarkAsGlobalBlock-toxRSLc_.cjs +1 -0
  126. package/dist/useUiLibraries-4hPOi8DI.js +12 -0
  127. package/dist/useUiLibraries-9FhQCpKo.cjs +1 -0
  128. package/package.json +19 -5
  129. package/dist/AddBlocks-76275943.cjs +0 -3
  130. package/dist/BrandingOptions-d3b3309a.cjs +0 -1
  131. package/dist/CanvasArea-9f94cd28.cjs +0 -46
  132. package/dist/CurrentPage-edb509db.cjs +0 -1
  133. package/dist/Layers-ecba52c1.cjs +0 -1
  134. package/dist/MarkAsGlobalBlock-3a06a159.cjs +0 -1
  135. package/dist/PagesPanel-f4329082.cjs +0 -1
  136. package/dist/ProjectPanel-ce3116d3.cjs +0 -1
  137. package/dist/Settings-b6a2bef6.cjs +0 -1
  138. package/dist/SidePanels-2cc72c0b.cjs +0 -1
  139. package/dist/Topbar-3b9db9f3.cjs +0 -1
  140. package/dist/UnsplashImages-98c085c2.cjs +0 -1
  141. package/dist/UploadImages-61ef83ad.cjs +0 -1
  142. package/dist/add-page-modal-7f9ff733.cjs +0 -1
  143. package/dist/confirm-alert-c1fdf1e4.js +0 -35
  144. package/dist/confirm-alert-e1ea5110.cjs +0 -1
  145. package/dist/delete-page-modal-7066b01f.cjs +0 -1
  146. package/dist/html-to-json-aadcbf66.cjs +0 -1
  147. package/dist/index-c535cc95.cjs +0 -164
  148. package/dist/link-24679521.cjs +0 -1
  149. package/dist/page-viewer-da99c71e.cjs +0 -1
  150. package/dist/project-general-setting-90f8416d.cjs +0 -1
  151. package/dist/project-seo-setting-6eef8387.cjs +0 -1
  152. package/dist/single-page-detail-90f49d7a.cjs +0 -1
  153. package/dist/useBuilderProp-21feb2da.js +0 -296
  154. package/dist/useBuilderProp-adacf42f.cjs +0 -1
  155. package/dist/useChaiExternalData-192c7896.js +0 -5
  156. package/dist/useChaiExternalData-a90e8aac.cjs +0 -1
  157. /package/dist/{MODIFIERS-2f19c314.js → MODIFIERS-DsEzQ3aH.js} +0 -0
  158. /package/dist/{MODIFIERS-4716c669.cjs → MODIFIERS-Fx6WAZcw.cjs} +0 -0
  159. /package/dist/{jsx-runtime-5c3ac4f7.cjs → jsx-runtime-JYMCiFoE.cjs} +0 -0
  160. /package/dist/{jsx-runtime-944c88e2.js → jsx-runtime-Sp0orL4X.js} +0 -0
  161. /package/dist/{utils-ac68b2c8.js → utils-dze1SGvB.js} +0 -0
  162. /package/dist/{utils-3c452dd0.cjs → utils-qK_SjzzV.cjs} +0 -0
@@ -1 +0,0 @@
1
- "use strict";const e=require("./jsx-runtime-5c3ac4f7.cjs"),m=require("react-icons-picker"),h=require("react-dom"),g=require("lodash"),d=require("react"),x=require("./dialog-170eaad9.cjs"),j=require("./ImagesPanel-8b7a989d.cjs"),E=require("react-quill");require("react-i18next");const R=require("./useBuilderProp-adacf42f.cjs"),f=t=>{try{const s=document.getElementById("icon-picker-field"),r=document.createElement("div");h.render(e.jsxRuntimeExports.jsx(m.IconPickerItem,{value:t}),r),s.appendChild(r),r.hidden=!0;let l=r.innerHTML;setTimeout(()=>s.removeChild(r),1e3);const o=new DOMParser().parseFromString(l,"image/svg+xml"),n=o.querySelector("svg");return n&&(n.removeAttribute("width"),n.removeAttribute("height")),new XMLSerializer().serializeToString(o)}catch{return""}},b=({value:t,onChange:s,onBlur:r,id:l})=>{const a=o=>{s("<svg />");const n=f(o);s(n),r(l,n)};return e.jsxRuntimeExports.jsxs("div",{className:"mt-1 flex h-20 items-center gap-x-2",id:"icon-picker-field",children:[e.jsxRuntimeExports.jsxs("div",{className:"relative h-12 w-12 group",children:[e.jsxRuntimeExports.jsx("div",{dangerouslySetInnerHTML:{__html:t==null?void 0:t.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"}),e.jsxRuntimeExports.jsx(m,{value:t?"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"}})]}),e.jsxRuntimeExports.jsx("textarea",{value:t,onChange:o=>s(o.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"})]})},k=({children:t,onSelect:s})=>{const[r,l]=d.useState(!1),a=(...o)=>{s.call(void 0,...o),l(!1)};return e.jsxRuntimeExports.jsxs(x.Dialog,{open:r,onOpenChange:o=>l(o),children:[e.jsxRuntimeExports.jsx(x.DialogTrigger,{asChild:!0,children:t}),e.jsxRuntimeExports.jsx(x.DialogContent,{className:"flex h-3/4 max-w-5xl",children:e.jsxRuntimeExports.jsx("div",{className:"h-full w-full",children:e.jsxRuntimeExports.jsx(j.default,{isModalView:!0,onSelect:a})})})]})},p=k,v=({value:t,onChange:s,id:r,onBlur:l})=>e.jsxRuntimeExports.jsxs("div",{className:"mt-1.5 flex items-center gap-x-3",children:[t?e.jsxRuntimeExports.jsx("img",{src:t,className:"h-20 w-20 overflow-hidden rounded-md border object-cover",alt:""}):e.jsxRuntimeExports.jsx(p,{onSelect:s,children:e.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"})}),e.jsxRuntimeExports.jsxs("div",{className:"flex w-3/5 flex-col",children:[e.jsxRuntimeExports.jsx(p,{onSelect:s,children:e.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:t||!g.isEmpty(t)?"Replace Image":"Choose Image"})}),e.jsxRuntimeExports.jsx("small",{className:"-pl-4 pt-2 text-center text-xs text-gray-600",children:"OR"}),e.jsxRuntimeExports.jsx("input",{type:"url",className:"text-xs",placeholder:"Enter image URL",value:t,onBlur:({target:{value:a}})=>l(r,a),onChange:a=>s(a.target.value)})]})]}),y=({id:t,placeholder:s,value:r,onChange:l,onBlur:a})=>{const o={toolbar:[["bold","italic","underline","strike","blockquote"],[{list:"ordered"},{list:"bullet"}],[{color:[]},{background:[]},{align:[]}],["link","clean"]]},n=["header","font","list","bold","italic","underline","strike","blockquote","color","background","align","link","image"];return typeof window>"u"?null:e.jsxRuntimeExports.jsx(E,{id:t,value:r,onBlur:c=>a(t,c),onChange:c=>l(c),modules:o,formats:n,placeholder:s,className:"mt-1 rounded-md"})},w=({schema:t,formData:s,onChange:r})=>{const[l,a]=d.useState([]),o=R.useBuilderProp("getPages",()=>[]),{type:n="page",href:c="",target:u="self"}=s;return d.useEffect(()=>{(async()=>{const i=await o();a(i||[])})()},[o]),e.jsxRuntimeExports.jsxs("div",{children:[e.jsxRuntimeExports.jsx("span",{className:"text-xs font-medium",children:(t==null?void 0:t.title)??"Link"}),e.jsxRuntimeExports.jsxs("div",{className:"flex flex-col gap-y-1.5",children:[e.jsxRuntimeExports.jsx("select",{name:"type",defaultValue:"page",value:n,onChange:i=>r({...s,type:i.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(i=>e.jsxRuntimeExports.jsx("option",{value:i.const,children:i.title},i.const))}),n==="page"?e.jsxRuntimeExports.jsxs("select",{name:"href",defaultValue:"",placeholder:"Choose Page",value:c,onChange:i=>r({...s,href:i.target.value}),children:[e.jsxRuntimeExports.jsx("option",{value:"",children:"Choose page"}),g.map(l,i=>e.jsxRuntimeExports.jsx("option",{value:i.slug,children:i.name},i.uuid))]}):e.jsxRuntimeExports.jsx("input",{name:"href",type:"text",value:c,onChange:i=>r({...s,href:i.target.value}),placeholder:n==="page"||n==="url"?"Enter URL":n==="scroll"?"#ElementID":"Enter detail"}),(n==="page"||n==="url")&&e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2",children:[e.jsxRuntimeExports.jsx("input",{type:"checkbox",defaultChecked:u==="_blank",className:"cursor-pointer rounded-md border border-border",onChange:()=>r({...s,target:u==="_blank"?"_self":"_blank"})}),e.jsxRuntimeExports.jsx("span",{className:"pt-1 text-xs",children:"Open in new tab"})]})]})]})};exports.IconPickerField=b;exports.ImagePickerField=v;exports.LinkField=w;exports.RichTextEditorField=y;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./jsx-runtime-5c3ac4f7.cjs"),n=require("react"),u=require("@radix-ui/react-icons"),o=require("./popover-7cb9079b.cjs"),x=require("./index-c535cc95.cjs");require("@radix-ui/react-popover");require("./utils-3c452dd0.cjs");require("clsx");require("tailwind-merge");require("./MODIFIERS-4716c669.cjs");require("@radix-ui/react-scroll-area");require("react-dom");require("@floating-ui/react-dom");require("jotai");require("i18next");require("react-i18next");require("flagged");require("react-dnd");require("lodash");require("@minoru/react-dnd-treeview");require("./useBuilderProp-adacf42f.cjs");require("@radix-ui/react-alert-dialog");require("@radix-ui/react-slot");require("class-variance-authority");require("@radix-ui/react-tooltip");require("@radix-ui/react-toast");require("react-hotkeys-hook");require("flat-to-nested");require("./html-to-json-aadcbf66.cjs");require("himalaya");require("redux-undo");require("@react-hookz/web");require("@chaibuilder/blocks");require("sonner");require("lucide-react");const m=n.lazy(()=>Promise.resolve().then(()=>require("./single-page-detail-90f49d7a.cjs"))),j=({pageData:s})=>{const[r,t]=n.useState("CLOSE");return e.jsxRuntimeExports.jsxs(o.Popover,{open:r==="OPEN"||r==="ALERT"||r==="PENDING",onOpenChange:i=>{t(r==="PENDING"?"ALERT":i?"OPEN":"CLOSE")},children:[e.jsxRuntimeExports.jsx(o.PopoverTrigger,{asChild:!0,onClick:i=>{i.stopPropagation(),t("OPEN")},children:e.jsxRuntimeExports.jsx("div",{className:"flex items-center justify-between",children:r==="OPEN"||r==="ALERT"||r==="PENDING"?e.jsxRuntimeExports.jsx(u.ChevronRightIcon,{}):e.jsxRuntimeExports.jsx("div",{className:"hidden hover:text-blue-600 group-hover:flex",children:e.jsxRuntimeExports.jsx(u.GearIcon,{})})})}),e.jsxRuntimeExports.jsx(o.PopoverContent,{side:"right",align:"start",alignOffset:-35,className:"h-screen w-96",children:e.jsxRuntimeExports.jsx(n.Suspense,{fallback:e.jsxRuntimeExports.jsxs("div",{className:"flex w-full animate-pulse flex-col gap-y-3",children:[e.jsxRuntimeExports.jsx("div",{className:"bg-background-300 h-6 w-1/2"}),e.jsxRuntimeExports.jsx("div",{className:"bg-background-300 h-20 w-full"}),e.jsxRuntimeExports.jsx("div",{className:"bg-background-300 h-20 w-full"})]}),children:e.jsxRuntimeExports.jsx(m,{pageData:s,open:r,setOpen:t})})})]})},p=s=>{const[r]=x.useCurrentPage(),{data:t}=x.useProject(),i=x.useChangePage(),l=(t==null?void 0:t.homepage)===s.uuid,a=r===s.uuid,c=()=>i(s);return t?e.jsxRuntimeExports.jsxs("button",{className:`group relative flex w-full cursor-pointer items-center justify-between px-2.5 py-2 ${a?"bg-blue-200 ":""}`,onClick:c,type:"button",children:[e.jsxRuntimeExports.jsxs("div",{className:"flex text-sm items-center gap-x-1.5",children:[l?e.jsxRuntimeExports.jsx(u.HomeIcon,{}):e.jsxRuntimeExports.jsx(u.FileTextIcon,{})," ",s.name]}),e.jsxRuntimeExports.jsx(j,{pageData:s})]}):null},d=({pages:s,isLoading:r})=>r?e.jsxRuntimeExports.jsxs("div",{className:"flex animate-pulse flex-col gap-y-1 px-2.5 pt-2",children:[e.jsxRuntimeExports.jsx("div",{className:"bg-background-200 h-7 w-full"}),e.jsxRuntimeExports.jsx("div",{className:"bg-background-200 h-7 w-full"}),e.jsxRuntimeExports.jsx("div",{className:"bg-background-200 h-7 w-full"})]}):s.length===0?e.jsxRuntimeExports.jsx("div",{className:"px-2.5 pb-2 pt-4",children:"No pages"}):e.jsxRuntimeExports.jsx("div",{className:"-mb-2",children:n.Children.toArray(s.map(t=>e.jsxRuntimeExports.jsx(p,{...t})))});exports.default=d;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./jsx-runtime-5c3ac4f7.cjs"),a=require("react"),f=require("./scroll-area-bb343b86.cjs"),o=require("@chaibuilder/blocks"),m=require("./form-ea21db6c.cjs"),d=require("./index-c535cc95.cjs");require("@radix-ui/react-scroll-area");require("./utils-3c452dd0.cjs");require("clsx");require("tailwind-merge");require("@rjsf/core");require("@rjsf/validator-ajv8");require("lodash");require("./link-24679521.cjs");require("react-icons-picker");require("react-dom");require("./dialog-170eaad9.cjs");require("@radix-ui/react-dialog");require("@radix-ui/react-icons");require("./ImagesPanel-8b7a989d.cjs");require("./tabs-860e37aa.cjs");require("@radix-ui/react-tabs");require("react-quill");require("react-i18next");require("./useBuilderProp-adacf42f.cjs");require("@radix-ui/react-alert-dialog");require("@radix-ui/react-slot");require("class-variance-authority");require("@radix-ui/react-tooltip");require("@radix-ui/react-toast");require("jotai");require("./MODIFIERS-4716c669.cjs");require("@floating-ui/react-dom");require("i18next");require("flagged");require("react-dnd");require("@minoru/react-dnd-treeview");require("react-hotkeys-hook");require("flat-to-nested");require("./html-to-json-aadcbf66.cjs");require("himalaya");require("redux-undo");require("@react-hookz/web");require("sonner");require("lucide-react");function g(r){const i=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const e in r)if(e!=="default"){const u=Object.getOwnPropertyDescriptor(r,e);Object.defineProperty(i,e,u.get?u:{enumerable:!0,get:()=>r[e]})}}return i.default=r,Object.freeze(i)}const j=g(a),b=({_projectData:r,seany:i})=>{const{data:e,isLoading:u}=d.useProject();j.useEffect(()=>{e&&i(e)},[e,i]);const q=({formData:l},t)=>{i(s=>({...s,[t]:l[t]}))},c={name:o.SingleLineText({title:"Project Name",default:e==null?void 0:e.name}),favicon:o.Image({title:"Favicon",default:e==null?void 0:e.favicon})};return n.jsxRuntimeExports.jsx(f.ScrollArea,{className:"flex h-full select-none flex-col",children:n.jsxRuntimeExports.jsx(m.Form,{properties:c,disabled:u,formData:r,onChange:q})})};exports.default=b;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./jsx-runtime-5c3ac4f7.cjs"),r=require("@chaibuilder/blocks"),g=require("./form-ea21db6c.cjs");require("react");require("@rjsf/core");require("@rjsf/validator-ajv8");require("lodash");require("./link-24679521.cjs");require("react-icons-picker");require("react-dom");require("./dialog-170eaad9.cjs");require("@radix-ui/react-dialog");require("@radix-ui/react-icons");require("./utils-3c452dd0.cjs");require("clsx");require("tailwind-merge");require("./ImagesPanel-8b7a989d.cjs");require("./tabs-860e37aa.cjs");require("@radix-ui/react-tabs");require("react-quill");require("react-i18next");require("./useBuilderProp-adacf42f.cjs");require("@radix-ui/react-alert-dialog");require("@radix-ui/react-slot");require("class-variance-authority");require("@radix-ui/react-tooltip");require("@radix-ui/react-toast");require("jotai");const D=({_projectData:e,seany:q})=>{var t,u,o,s,a,l;const d=({formData:c})=>{const i={...c};i.seoData.title===void 0&&(i.seoData.title=""),i.seoData.description===void 0&&(i.seoData.description=""),i.seoData.image===void 0&&(i.seoData.image=""),q(f=>({...f,...i}))},m={seoData:r.Model({title:"",default:{title:((t=e.seoData)==null?void 0:t.title)||"",description:((u=e.seoData)==null?void 0:u.description)||"",image:((o=e.seoData)==null?void 0:o.image)||""},properties:{title:r.SingleLineText({title:"Default Title",default:((s=e.seoData)==null?void 0:s.title)||""}),description:r.MultilineText({title:"Default Description",default:((a=e.seoData)==null?void 0:a.description)||""}),image:r.Image({title:"Social Media Image",default:((l=e.seoData)==null?void 0:l.image)||""})}})};return n.jsxRuntimeExports.jsx("div",{className:"flex h-full select-none flex-col",children:n.jsxRuntimeExports.jsx(g.Form,{properties:m,formData:e,onChange:d})})};exports.default=D;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./jsx-runtime-5c3ac4f7.cjs"),g=require("react"),c=require("lodash"),M=require("@radix-ui/react-icons"),H=require("./useBuilderProp-adacf42f.cjs"),w=require("./scroll-area-bb343b86.cjs"),d=require("@chaibuilder/blocks"),L=require("sonner"),p=require("./form-ea21db6c.cjs"),P=require("./index-c535cc95.cjs");require("@radix-ui/react-alert-dialog");require("./utils-3c452dd0.cjs");require("clsx");require("tailwind-merge");require("@radix-ui/react-slot");require("class-variance-authority");require("@radix-ui/react-tooltip");require("@radix-ui/react-toast");require("jotai");require("@radix-ui/react-scroll-area");require("@rjsf/core");require("@rjsf/validator-ajv8");require("./link-24679521.cjs");require("react-icons-picker");require("react-dom");require("./dialog-170eaad9.cjs");require("@radix-ui/react-dialog");require("./ImagesPanel-8b7a989d.cjs");require("./tabs-860e37aa.cjs");require("@radix-ui/react-tabs");require("react-quill");require("react-i18next");require("./MODIFIERS-4716c669.cjs");require("@floating-ui/react-dom");require("i18next");require("flagged");require("react-dnd");require("@minoru/react-dnd-treeview");require("react-hotkeys-hook");require("flat-to-nested");require("./html-to-json-aadcbf66.cjs");require("himalaya");require("redux-undo");require("@react-hookz/web");require("lucide-react");const z=g.lazy(()=>Promise.resolve().then(()=>require("./delete-page-modal-7066b01f.cjs"))),B=g.lazy(()=>Promise.resolve().then(()=>require("./confirm-alert-e1ea5110.cjs"))),E=n=>{if(!c.isString(n)||!(n.includes("/[")&&n.includes("]")))return!1;const s=/^\[((?:\.{3})?[a-zA-Z0-9_-]+)\]$/,q=/^[a-zA-Z0-9_-]+$/;let e=!0;return n.split("/").forEach(u=>{e&&(u.includes("[[")&&u.includes("]]")?e=/^\[\[\.{3}[a-zA-Z0-9_-]+\]\]$/.test(u):u.includes("[")&&u.includes("]")?e=s.test(u):e=q.test(u))}),e},h=n=>n&&c.isEmpty(n.seoData)?{...n,seoData:{title:"",description:"",image:""}}:n,G=(n,o)=>{const s=!c.isEqual(c.omit(n,["seoData"]),c.omit(o,["seoData"])),q=!c.isEqual(h(o).seoData,h(n).seoData);return s||q},Y=({open:n,setOpen:o,pageData:s})=>{const q=P.useQueryClient(),{data:e}=P.useProject(),u=P.useUpdatePage(),m=P.useUpdateProject("Homepage updated successfully."),[i,b]=g.useState(h(s)),[a,y]=g.useState({isHomePage:(e==null?void 0:e.homepage)===s.uuid}),j=G(i,s);g.useEffect(()=>{const l=!c.isEqual(h(s),i),r=(e==null?void 0:e.homepage)!==s.uuid&&a.isHomePage;o(l||r?"PENDING":"OPEN")},[e,s,i,a,o]);const S=()=>{if(j){if(s.type==="DYNAMIC"&&!E((i==null?void 0:i.slug)||"")){n==="ALERT"&&o("PENDING");return}u.mutate(i,{onSuccess:()=>{q.invalidateQueries({refetchType:"active",queryKey:["pages",e==null?void 0:e.uuid]}),o("CLOSE"),L.toast.success("Page updated successfully.")}})}a.isHomePage&&(e==null?void 0:e.homepage)!==s.uuid&&m.mutate({...e,homepage:s==null?void 0:s.uuid},{onSuccess:()=>o("CLOSE")})},C=({formData:l},r)=>{b(f=>{var R,N;if(!r)return f;const x={[r]:l[r]};return r==="name"?x.slug=c.kebabCase((R=l[r])==null?void 0:R.replace(/\d/g,"")):r==="slug"?x.slug=(N=l[r])==null?void 0:N.replace(/\d/g,"").replace(/\s+/g,"").replace("--","-").replace("__","_"):r==="seoData"&&(x.seoData={title:l[r].title||"",description:l[r].description||"",image:l[r].image||""}),{...f,...x}})},A=({formData:l},r)=>{y(f=>{const x={[r]:l[r]};return{...f,...x}})},I={name:d.SingleLineText({title:"Page Name",default:i.name}),slug:d.SingleLineText({title:"Page Slug",default:i.slug})},T={seoData:d.Model({title:"",description:"",default:{title:"",description:"",image:""},properties:{title:d.SingleLineText({title:"Meta Title",default:i.name}),description:d.MultilineText({title:"Meta Description",default:i.slug}),image:d.Image({title:"Social Media Image",default:""})}})},v={isHomePage:d.Checkbox({title:"Set as homepage",default:a.isHomePage})};return t.jsxRuntimeExports.jsxs(w.ScrollArea,{className:"flex h-full select-none flex-col",children:[t.jsxRuntimeExports.jsx(B,{open:n==="ALERT",title:"Do yo want to save changes?",onCancel:()=>o("CLOSE"),onConfirm:S,disabled:m.isPending||u.isPending}),t.jsxRuntimeExports.jsx("div",{className:"rounded-md bg-background/30 px-2.5 py-1",children:t.jsxRuntimeExports.jsx("h1",{className:"px-1 font-semibold",children:"Page Details"})}),t.jsxRuntimeExports.jsx("div",{className:"px-2.5 pt-2",children:t.jsxRuntimeExports.jsxs("div",{className:"flex flex-col space-y-2",children:[t.jsxRuntimeExports.jsx(p.Form,{title:"Basic Details",formData:i,properties:I,onChange:C,disabled:u.isPending||m.isPending}),t.jsxRuntimeExports.jsx("div",{className:"h-2 w-full"}),t.jsxRuntimeExports.jsx(p.Form,{title:"SEO Details",formData:i,properties:T,onChange:C,disabled:u.isPending||m.isPending}),(e==null?void 0:e.homepage)!==s.uuid&&s.type==="STATIC"?t.jsxRuntimeExports.jsx(p.Form,{formData:a,properties:v,onChange:A,disabled:u.isPending||m.isPending}):s.type==="STATIC"&&t.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-1 px-1 pt-2 text-xs font-medium text-gray-500",children:[t.jsxRuntimeExports.jsx(M.HomeIcon,{})," This is homepage"," "]}),i.type==="DYNAMIC"&&!E((i==null?void 0:i.slug)||"")&&t.jsxRuntimeExports.jsxs("small",{className:"px-1 text-red-400",children:["Add dynamic ID in page slug Eg: ",t.jsxRuntimeExports.jsx("i",{className:"underline",children:"some-url/[some-id]"})]}),t.jsxRuntimeExports.jsxs("div",{className:"my-2 flex w-full items-center justify-between gap-x-2 px-1",children:[t.jsxRuntimeExports.jsx(H.Button,{className:"w-full",type:"submit",onClick:S,disabled:(e==null?void 0:e.homepage)!==s.uuid&&a.isHomePage?!1:c.isEmpty(i.name)||c.isEmpty(i.slug)||!j||u.isPending||m.isPending||i.type==="DYNAMIC"&&!E((i==null?void 0:i.slug)||""),children:"Save"}),t.jsxRuntimeExports.jsx(z,{pageData:s,projectData:e})]})]})})]})};exports.default=Y;
@@ -1,296 +0,0 @@
1
- import { j as s } from "./jsx-runtime-944c88e2.js";
2
- import * as i from "react";
3
- import * as d from "@radix-ui/react-alert-dialog";
4
- import { c as a } from "./utils-ac68b2c8.js";
5
- import { Slot as P } from "@radix-ui/react-slot";
6
- import { cva as b } from "class-variance-authority";
7
- import * as c from "@radix-ui/react-tooltip";
8
- import { Cross2Icon as C } from "@radix-ui/react-icons";
9
- import * as n from "@radix-ui/react-toast";
10
- import { atom as T, useAtomValue as E } from "jotai";
11
- import { get as _ } from "lodash";
12
- const h = T(null);
13
- h.debugLabel = "chaiBuilderPropsAtom";
14
- const V = T(null);
15
- V.debugLabel = "apiKeyAtom";
16
- const v = b(
17
- "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",
18
- {
19
- variants: {
20
- variant: {
21
- default: "bg-primary text-primary-foreground shadow hover:bg-primary/90",
22
- destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
23
- outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",
24
- secondary: "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",
25
- ghost: "hover:bg-accent hover:text-accent-foreground",
26
- link: "text-primary underline-offset-4 hover:underline"
27
- },
28
- size: {
29
- default: "h-9 px-4 py-2",
30
- sm: "h-8 rounded-md px-3 text-xs",
31
- lg: "h-10 rounded-md px-8",
32
- icon: "h-9 w-9"
33
- }
34
- },
35
- defaultVariants: {
36
- variant: "default",
37
- size: "default"
38
- }
39
- }
40
- ), I = i.forwardRef(
41
- ({ className: e, variant: t, size: o, asChild: r = !1, ...l }, f) => {
42
- const O = r ? P : "button";
43
- return /* @__PURE__ */ s.jsx(O, { className: a(v({ variant: t, size: o, className: e })), ref: f, ...l });
44
- }
45
- );
46
- I.displayName = "Button";
47
- const ie = d.Root, de = d.Trigger, N = ({ className: e, ...t }) => /* @__PURE__ */ s.jsx(d.Portal, { className: a(e), ...t });
48
- N.displayName = d.Portal.displayName;
49
- const w = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(
50
- d.Overlay,
51
- {
52
- className: a(
53
- "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",
54
- e
55
- ),
56
- ...t,
57
- ref: o
58
- }
59
- ));
60
- w.displayName = d.Overlay.displayName;
61
- const z = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsxs(N, { children: [
62
- /* @__PURE__ */ s.jsx(w, {}),
63
- /* @__PURE__ */ s.jsx(
64
- d.Content,
65
- {
66
- ref: o,
67
- className: a(
68
- "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",
69
- e
70
- ),
71
- ...t
72
- }
73
- )
74
- ] }));
75
- z.displayName = d.Content.displayName;
76
- const k = ({ className: e, ...t }) => /* @__PURE__ */ s.jsx("div", { className: a("flex flex-col space-y-2 text-center sm:text-left", e), ...t });
77
- k.displayName = "AlertDialogHeader";
78
- const M = ({ className: e, ...t }) => /* @__PURE__ */ s.jsx("div", { className: a("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", e), ...t });
79
- M.displayName = "AlertDialogFooter";
80
- const B = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(d.Title, { ref: o, className: a("text-lg font-semibold", e), ...t }));
81
- B.displayName = d.Title.displayName;
82
- const L = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(d.Description, { ref: o, className: a("text-sm text-muted-foreground", e), ...t }));
83
- L.displayName = d.Description.displayName;
84
- const U = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(d.Action, { ref: o, className: a(v(), e), ...t }));
85
- U.displayName = d.Action.displayName;
86
- const F = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(
87
- d.Cancel,
88
- {
89
- ref: o,
90
- className: a(v({ variant: "outline" }), "mt-2 sm:mt-0", e),
91
- ...t
92
- }
93
- ));
94
- F.displayName = d.Cancel.displayName;
95
- const ne = c.Portal, le = c.Provider, ce = c.Root, me = c.Trigger, H = i.forwardRef(({ className: e, sideOffset: t = 4, ...o }, r) => /* @__PURE__ */ s.jsx(
96
- c.Content,
97
- {
98
- ref: r,
99
- sideOffset: t,
100
- className: a(
101
- "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",
102
- e
103
- ),
104
- ...o
105
- }
106
- ));
107
- H.displayName = c.Content.displayName;
108
- const K = 1, Q = 1e6;
109
- let g = 0;
110
- function X() {
111
- return g = (g + 1) % Number.MAX_VALUE, g.toString();
112
- }
113
- const x = /* @__PURE__ */ new Map(), y = (e) => {
114
- if (x.has(e))
115
- return;
116
- const t = setTimeout(() => {
117
- x.delete(e), m({
118
- type: "REMOVE_TOAST",
119
- toastId: e
120
- });
121
- }, Q);
122
- x.set(e, t);
123
- }, Y = (e, t) => {
124
- switch (t.type) {
125
- case "ADD_TOAST":
126
- return {
127
- ...e,
128
- toasts: [t.toast, ...e.toasts].slice(0, K)
129
- };
130
- case "UPDATE_TOAST":
131
- return {
132
- ...e,
133
- toasts: e.toasts.map((o) => o.id === t.toast.id ? { ...o, ...t.toast } : o)
134
- };
135
- case "DISMISS_TOAST": {
136
- const { toastId: o } = t;
137
- return o ? y(o) : e.toasts.forEach((r) => {
138
- y(r.id);
139
- }), {
140
- ...e,
141
- toasts: e.toasts.map(
142
- (r) => r.id === o || o === void 0 ? {
143
- ...r,
144
- open: !1
145
- } : r
146
- )
147
- };
148
- }
149
- case "REMOVE_TOAST":
150
- return t.toastId === void 0 ? {
151
- ...e,
152
- toasts: []
153
- } : {
154
- ...e,
155
- toasts: e.toasts.filter((o) => o.id !== t.toastId)
156
- };
157
- }
158
- }, u = [];
159
- let p = { toasts: [] };
160
- function m(e) {
161
- p = Y(p, e), u.forEach((t) => {
162
- t(p);
163
- });
164
- }
165
- function q({ ...e }) {
166
- const t = X(), o = (l) => m({
167
- type: "UPDATE_TOAST",
168
- toast: { ...l, id: t }
169
- }), r = () => m({ type: "DISMISS_TOAST", toastId: t });
170
- return m({
171
- type: "ADD_TOAST",
172
- toast: {
173
- ...e,
174
- id: t,
175
- open: !0,
176
- onOpenChange: (l) => {
177
- l || r();
178
- }
179
- }
180
- }), {
181
- id: t,
182
- dismiss: r,
183
- update: o
184
- };
185
- }
186
- function G() {
187
- const [e, t] = i.useState(p);
188
- return i.useEffect(() => (u.push(t), () => {
189
- const o = u.indexOf(t);
190
- o > -1 && u.splice(o, 1);
191
- }), [e]), {
192
- ...e,
193
- toast: q,
194
- dismiss: (o) => m({ type: "DISMISS_TOAST", toastId: o })
195
- };
196
- }
197
- const J = n.Provider, A = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(
198
- n.Viewport,
199
- {
200
- ref: o,
201
- className: a(
202
- "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]",
203
- e
204
- ),
205
- ...t
206
- }
207
- ));
208
- A.displayName = n.Viewport.displayName;
209
- const W = b(
210
- "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",
211
- {
212
- variants: {
213
- variant: {
214
- default: "border bg-background",
215
- destructive: "destructive group border-destructive bg-destructive text-destructive-foreground"
216
- }
217
- },
218
- defaultVariants: {
219
- variant: "default"
220
- }
221
- }
222
- ), j = i.forwardRef(({ className: e, variant: t, ...o }, r) => /* @__PURE__ */ s.jsx(n.Root, { ref: r, className: a(W({ variant: t }), e), ...o }));
223
- j.displayName = n.Root.displayName;
224
- const Z = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(
225
- n.Action,
226
- {
227
- ref: o,
228
- className: a(
229
- "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",
230
- e
231
- ),
232
- ...t
233
- }
234
- ));
235
- Z.displayName = n.Action.displayName;
236
- const D = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(
237
- n.Close,
238
- {
239
- ref: o,
240
- className: a(
241
- "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",
242
- e
243
- ),
244
- "toast-close": "",
245
- ...t,
246
- children: /* @__PURE__ */ s.jsx(C, { className: "h-4 w-4" })
247
- }
248
- ));
249
- D.displayName = n.Close.displayName;
250
- const S = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(n.Title, { ref: o, className: a("text-sm font-semibold [&+div]:text-xs", e), ...t }));
251
- S.displayName = n.Title.displayName;
252
- const R = i.forwardRef(({ className: e, ...t }, o) => /* @__PURE__ */ s.jsx(n.Description, { ref: o, className: a("text-sm opacity-90", e), ...t }));
253
- R.displayName = n.Description.displayName;
254
- function ue() {
255
- const { toasts: e } = G();
256
- return /* @__PURE__ */ s.jsxs(J, { children: [
257
- e.map(({ id: t, title: o, description: r, action: l, ...f }) => /* @__PURE__ */ s.jsxs(j, { ...f, children: [
258
- /* @__PURE__ */ s.jsxs("div", { className: "grid gap-1", children: [
259
- o && /* @__PURE__ */ s.jsx(S, { children: o }),
260
- r && /* @__PURE__ */ s.jsx(R, { children: r })
261
- ] }),
262
- l,
263
- /* @__PURE__ */ s.jsx(D, {})
264
- ] }, t)),
265
- /* @__PURE__ */ s.jsx(A, {})
266
- ] });
267
- }
268
- const pe = ({ className: e, ...t }) => /* @__PURE__ */ s.jsx("div", { className: a("animate-pulse rounded-md bg-primary/10", e), ...t }), fe = (e, t = void 0) => {
269
- const o = E(h);
270
- return _(o, e, t);
271
- };
272
- export {
273
- ie as A,
274
- I as B,
275
- pe as S,
276
- le as T,
277
- ue as a,
278
- de as b,
279
- h as c,
280
- z as d,
281
- k as e,
282
- B as f,
283
- L as g,
284
- M as h,
285
- F as i,
286
- v as j,
287
- U as k,
288
- ce as l,
289
- me as m,
290
- H as n,
291
- ne as o,
292
- G as p,
293
- Y as r,
294
- q as t,
295
- fe as u
296
- };
@@ -1 +0,0 @@
1
- "use strict";const s=require("./jsx-runtime-5c3ac4f7.cjs"),H=require("react"),U=require("@radix-ui/react-alert-dialog"),r=require("./utils-3c452dd0.cjs"),K=require("@radix-ui/react-slot"),h=require("class-variance-authority"),Q=require("@radix-ui/react-tooltip"),X=require("@radix-ui/react-icons"),Y=require("@radix-ui/react-toast"),T=require("jotai"),G=require("lodash");function x(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const a=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(e,o,a.get?a:{enumerable:!0,get:()=>t[o]})}}return e.default=t,Object.freeze(e)}const i=x(H),n=x(U),c=x(Q),d=x(Y),j=T.atom(null);j.debugLabel="chaiBuilderPropsAtom";const J=T.atom(null);J.debugLabel="apiKeyAtom";const f=h.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"}}),A=i.forwardRef(({className:t,variant:e,size:o,asChild:a=!1,...l},g)=>{const F=a?K.Slot:"button";return s.jsxRuntimeExports.jsx(F,{className:r.cn(f({variant:e,size:o,className:t})),ref:g,...l})});A.displayName="Button";const W=n.Root,Z=n.Trigger,N=({className:t,...e})=>s.jsxRuntimeExports.jsx(n.Portal,{className:r.cn(t),...e});N.displayName=n.Portal.displayName;const R=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(n.Overlay,{className:r.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",t),...e,ref:o}));R.displayName=n.Overlay.displayName;const w=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsxs(N,{children:[s.jsxRuntimeExports.jsx(R,{}),s.jsxRuntimeExports.jsx(n.Content,{ref:o,className:r.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",t),...e})]}));w.displayName=n.Content.displayName;const D=({className:t,...e})=>s.jsxRuntimeExports.jsx("div",{className:r.cn("flex flex-col space-y-2 text-center sm:text-left",t),...e});D.displayName="AlertDialogHeader";const E=({className:t,...e})=>s.jsxRuntimeExports.jsx("div",{className:r.cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...e});E.displayName="AlertDialogFooter";const S=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(n.Title,{ref:o,className:r.cn("text-lg font-semibold",t),...e}));S.displayName=n.Title.displayName;const P=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(n.Description,{ref:o,className:r.cn("text-sm text-muted-foreground",t),...e}));P.displayName=n.Description.displayName;const O=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(n.Action,{ref:o,className:r.cn(f(),t),...e}));O.displayName=n.Action.displayName;const _=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(n.Cancel,{ref:o,className:r.cn(f({variant:"outline"}),"mt-2 sm:mt-0",t),...e}));_.displayName=n.Cancel.displayName;const $=c.Portal,tt=c.Provider,et=c.Root,ot=c.Trigger,C=i.forwardRef(({className:t,sideOffset:e=4,...o},a)=>s.jsxRuntimeExports.jsx(c.Content,{ref:a,sideOffset:e,className:r.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",t),...o}));C.displayName=c.Content.displayName;const st=1,at=1e6;let v=0;function rt(){return v=(v+1)%Number.MAX_VALUE,v.toString()}const y=new Map,b=t=>{if(y.has(t))return;const e=setTimeout(()=>{y.delete(t),u({type:"REMOVE_TOAST",toastId:t})},at);y.set(t,e)},V=(t,e)=>{switch(e.type){case"ADD_TOAST":return{...t,toasts:[e.toast,...t.toasts].slice(0,st)};case"UPDATE_TOAST":return{...t,toasts:t.toasts.map(o=>o.id===e.toast.id?{...o,...e.toast}:o)};case"DISMISS_TOAST":{const{toastId:o}=e;return o?b(o):t.toasts.forEach(a=>{b(a.id)}),{...t,toasts:t.toasts.map(a=>a.id===o||o===void 0?{...a,open:!1}:a)}}case"REMOVE_TOAST":return e.toastId===void 0?{...t,toasts:[]}:{...t,toasts:t.toasts.filter(o=>o.id!==e.toastId)}}},m=[];let p={toasts:[]};function u(t){p=V(p,t),m.forEach(e=>{e(p)})}function I({...t}){const e=rt(),o=l=>u({type:"UPDATE_TOAST",toast:{...l,id:e}}),a=()=>u({type:"DISMISS_TOAST",toastId:e});return u({type:"ADD_TOAST",toast:{...t,id:e,open:!0,onOpenChange:l=>{l||a()}}}),{id:e,dismiss:a,update:o}}function q(){const[t,e]=i.useState(p);return i.useEffect(()=>(m.push(e),()=>{const o=m.indexOf(e);o>-1&&m.splice(o,1)}),[t]),{...t,toast:I,dismiss:o=>u({type:"DISMISS_TOAST",toastId:o})}}const it=d.Provider,z=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(d.Viewport,{ref:o,className:r.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]",t),...e}));z.displayName=d.Viewport.displayName;const nt=h.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"}}),k=i.forwardRef(({className:t,variant:e,...o},a)=>s.jsxRuntimeExports.jsx(d.Root,{ref:a,className:r.cn(nt({variant:e}),t),...o}));k.displayName=d.Root.displayName;const dt=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(d.Action,{ref:o,className:r.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",t),...e}));dt.displayName=d.Action.displayName;const M=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(d.Close,{ref:o,className:r.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",t),"toast-close":"",...e,children:s.jsxRuntimeExports.jsx(X.Cross2Icon,{className:"h-4 w-4"})}));M.displayName=d.Close.displayName;const B=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(d.Title,{ref:o,className:r.cn("text-sm font-semibold [&+div]:text-xs",t),...e}));B.displayName=d.Title.displayName;const L=i.forwardRef(({className:t,...e},o)=>s.jsxRuntimeExports.jsx(d.Description,{ref:o,className:r.cn("text-sm opacity-90",t),...e}));L.displayName=d.Description.displayName;function lt(){const{toasts:t}=q();return s.jsxRuntimeExports.jsxs(it,{children:[t.map(({id:e,title:o,description:a,action:l,...g})=>s.jsxRuntimeExports.jsxs(k,{...g,children:[s.jsxRuntimeExports.jsxs("div",{className:"grid gap-1",children:[o&&s.jsxRuntimeExports.jsx(B,{children:o}),a&&s.jsxRuntimeExports.jsx(L,{children:a})]}),l,s.jsxRuntimeExports.jsx(M,{})]},e)),s.jsxRuntimeExports.jsx(z,{})]})}const ct=({className:t,...e})=>s.jsxRuntimeExports.jsx("div",{className:r.cn("animate-pulse rounded-md bg-primary/10",t),...e}),ut=(t,e=void 0)=>{const o=T.useAtomValue(j);return G.get(o,t,e)};exports.AlertDialog=W;exports.AlertDialogAction=O;exports.AlertDialogCancel=_;exports.AlertDialogContent=w;exports.AlertDialogDescription=P;exports.AlertDialogFooter=E;exports.AlertDialogHeader=D;exports.AlertDialogTitle=S;exports.AlertDialogTrigger=Z;exports.Button=A;exports.Skeleton=ct;exports.Toaster=lt;exports.Tooltip=et;exports.TooltipContent=C;exports.TooltipPortal=$;exports.TooltipProvider=tt;exports.TooltipTrigger=ot;exports.buttonVariants=f;exports.chaiBuilderPropsAtom=j;exports.reducer=V;exports.toast=I;exports.useBuilderProp=ut;exports.useToast=q;
@@ -1,5 +0,0 @@
1
- import { atom as t, useAtom as a } from "jotai";
2
- const o = t({}), m = () => a(o);
3
- export {
4
- m as u
5
- };
@@ -1 +0,0 @@
1
- "use strict";const t=require("jotai"),a=t.atom({}),e=()=>t.useAtom(a);exports.useChaiExternalData=e;
File without changes
File without changes