@chaibuilder/sdk 0.1.32 → 1.0.1

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 (84) hide show
  1. package/dist/{AddBlocks-4b96d545.js → AddBlocks-080c1274.js} +5 -4
  2. package/dist/AddBlocks-60959797.cjs +3 -0
  3. package/dist/{BrandingOptions-c91e9d44.js → BrandingOptions-1ca79681.js} +6 -5
  4. package/dist/BrandingOptions-ca7601f5.cjs +1 -0
  5. package/dist/CanvasArea-2b2e716c.cjs +46 -0
  6. package/dist/{CanvasArea-957f5f74.js → CanvasArea-d6278d04.js} +42 -43
  7. package/dist/CurrentPage-fa269f81.cjs +1 -0
  8. package/dist/{CurrentPage-fb4c55bc.js → CurrentPage-fd7a82fa.js} +5 -4
  9. package/dist/{ImagesPanel-3fb8087f.js → ImagesPanel-47ac13c3.js} +1 -1
  10. package/dist/{ImagesPanel-56ca0618.cjs → ImagesPanel-8b7a989d.cjs} +1 -1
  11. package/dist/Layers-734693fc.cjs +1 -0
  12. package/dist/{Layers-6866cb0c.js → Layers-adc8455f.js} +48 -47
  13. package/dist/MarkAsGlobalBlock-329164e9.cjs +1 -0
  14. package/dist/{MarkAsGlobalBlock-f28148d9.js → MarkAsGlobalBlock-630e27ad.js} +8 -7
  15. package/dist/PagesPanel-6f1c85d1.cjs +1 -0
  16. package/dist/{PagesPanel-003201ca.js → PagesPanel-eeed6449.js} +8 -7
  17. package/dist/{ProjectPanel-83321040.js → ProjectPanel-7bddc623.js} +7 -6
  18. package/dist/ProjectPanel-e0f42dc0.cjs +1 -0
  19. package/dist/Settings-86e1ae56.cjs +1 -0
  20. package/dist/{Settings-ad55d8cb.js → Settings-f1994b5f.js} +82 -79
  21. package/dist/{SidePanels-96bf29c6.js → SidePanels-5f5198f0.js} +33 -34
  22. package/dist/SidePanels-eb22edf9.cjs +1 -0
  23. package/dist/Topbar-bcf7ba73.cjs +1 -0
  24. package/dist/{Topbar-1c4964e5.js → Topbar-d3cee67a.js} +38 -37
  25. package/dist/{UnsplashImages-fe480747.js → UnsplashImages-4edb97e7.js} +6 -5
  26. package/dist/UnsplashImages-98c085c2.cjs +1 -0
  27. package/dist/{UploadImages-b14bd152.js → UploadImages-52181c3e.js} +9 -8
  28. package/dist/UploadImages-61ef83ad.cjs +1 -0
  29. package/dist/add-page-modal-47c908cf.cjs +1 -0
  30. package/dist/{add-page-modal-2ef8a63c.js → add-page-modal-dbc2e64b.js} +11 -10
  31. package/dist/confirm-alert-c1fdf1e4.js +35 -0
  32. package/dist/confirm-alert-e1ea5110.cjs +1 -0
  33. package/dist/core.cjs +1 -1
  34. package/dist/core.d.ts +2 -1
  35. package/dist/core.js +56 -55
  36. package/dist/{delete-page-modal-961dcc5f.js → delete-page-modal-27bbf349.js} +18 -19
  37. package/dist/delete-page-modal-8400b775.cjs +1 -0
  38. package/dist/{form-046bcdbc.js → form-25e1af37.js} +1 -1
  39. package/dist/{form-2dc05f35.cjs → form-ea21db6c.cjs} +1 -1
  40. package/dist/{index-86352d44.cjs → index-74a48d24.cjs} +41 -41
  41. package/dist/{index-370ce00c.js → index-cc98ec55.js} +7239 -7070
  42. package/dist/{link-e71b94f1.cjs → link-24679521.cjs} +1 -1
  43. package/dist/{link-e3a788f7.js → link-57de608a.js} +2 -2
  44. package/dist/page-viewer-31361e82.cjs +1 -0
  45. package/dist/{page-viewer-0c45ce74.js → page-viewer-7341b13c.js} +17 -16
  46. package/dist/{project-general-setting-c5d96f79.js → project-general-setting-5fa43e2b.js} +9 -8
  47. package/dist/project-general-setting-a6815e84.cjs +1 -0
  48. package/dist/project-seo-setting-6eef8387.cjs +1 -0
  49. package/dist/{project-seo-setting-639e4f33.js → project-seo-setting-d81fc1e3.js} +7 -6
  50. package/dist/server.cjs +1 -1
  51. package/dist/server.d.ts +21 -2
  52. package/dist/server.js +32 -19
  53. package/dist/single-page-detail-79089f73.cjs +1 -0
  54. package/dist/{single-page-detail-22e7bc3b.js → single-page-detail-837db2d5.js} +11 -10
  55. package/dist/ui.cjs +1 -1
  56. package/dist/ui.js +105 -106
  57. package/dist/useBuilderProp-21feb2da.js +296 -0
  58. package/dist/useBuilderProp-adacf42f.cjs +1 -0
  59. package/package.json +1 -1
  60. package/dist/AddBlocks-e4f51b58.cjs +0 -3
  61. package/dist/BrandingOptions-52f9691c.cjs +0 -1
  62. package/dist/CanvasArea-b8c26858.cjs +0 -46
  63. package/dist/CurrentPage-715fe809.cjs +0 -1
  64. package/dist/Layers-a955d0bb.cjs +0 -1
  65. package/dist/MarkAsGlobalBlock-cbcb3003.cjs +0 -1
  66. package/dist/PagesPanel-7b8f54e1.cjs +0 -1
  67. package/dist/ProjectPanel-6c5f2470.cjs +0 -1
  68. package/dist/Settings-8f07a4b7.cjs +0 -1
  69. package/dist/SidePanels-446b93e7.cjs +0 -1
  70. package/dist/Topbar-5eeea40a.cjs +0 -1
  71. package/dist/UnsplashImages-ef3b6388.cjs +0 -1
  72. package/dist/UploadImages-10439fde.cjs +0 -1
  73. package/dist/add-page-modal-56dc3c56.cjs +0 -1
  74. package/dist/alert-dialog-4ce6ed22.cjs +0 -1
  75. package/dist/alert-dialog-ee98f47e.js +0 -64
  76. package/dist/confirm-alert-4f50caa7.cjs +0 -1
  77. package/dist/confirm-alert-f2a47cc7.js +0 -36
  78. package/dist/delete-page-modal-88aeacfd.cjs +0 -1
  79. package/dist/page-viewer-e0d9895d.cjs +0 -1
  80. package/dist/project-general-setting-d4d96611.cjs +0 -1
  81. package/dist/project-seo-setting-6356c72f.cjs +0 -1
  82. package/dist/single-page-detail-36430438.cjs +0 -1
  83. package/dist/useBuilderProp-5e57d0c8.cjs +0 -1
  84. package/dist/useBuilderProp-81a14920.js +0 -238
@@ -1,36 +0,0 @@
1
- import { j as r } from "./jsx-runtime-944c88e2.js";
2
- import { B as n } from "./useBuilderProp-81a14920.js";
3
- import { A as p, b as c, e as x, f as j, h as d } from "./alert-dialog-ee98f47e.js";
4
- import "react";
5
- import "@radix-ui/react-slot";
6
- import "class-variance-authority";
7
- import "./utils-ac68b2c8.js";
8
- import "clsx";
9
- import "tailwind-merge";
10
- import "@radix-ui/react-tooltip";
11
- import "@radix-ui/react-icons";
12
- import "@radix-ui/react-toast";
13
- import "jotai";
14
- import "lodash";
15
- import "@radix-ui/react-alert-dialog";
16
- const T = ({
17
- open: o,
18
- onCancel: e = () => {
19
- },
20
- onConfirm: l,
21
- title: s,
22
- description: i,
23
- disabled: t,
24
- cancelText: a = "Discard",
25
- confirmText: m = "Save"
26
- }) => /* @__PURE__ */ r.jsx(p, { open: o, children: /* @__PURE__ */ r.jsxs(c, { children: [
27
- /* @__PURE__ */ r.jsx(x, { children: s }),
28
- i && /* @__PURE__ */ r.jsx(j, { children: i }),
29
- /* @__PURE__ */ r.jsxs("div", { className: "flex items-center justify-end gap-x-3", children: [
30
- /* @__PURE__ */ r.jsx(d, { disabled: t, onClick: e, children: a }),
31
- /* @__PURE__ */ r.jsx(n, { variant: "default", onClick: l, disabled: t, children: m })
32
- ] })
33
- ] }) });
34
- export {
35
- T as default
36
- };
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./jsx-runtime-5c3ac4f7.cjs"),l=require("./useBuilderProp-5e57d0c8.cjs"),r=require("./alert-dialog-4ce6ed22.cjs"),d=require("./index-86352d44.cjs"),c=require("@radix-ui/react-icons");require("react");require("@radix-ui/react-slot");require("class-variance-authority");require("./utils-3c452dd0.cjs");require("clsx");require("tailwind-merge");require("@radix-ui/react-tooltip");require("@radix-ui/react-toast");require("jotai");require("lodash");require("@radix-ui/react-alert-dialog");require("./MODIFIERS-4716c669.cjs");require("@radix-ui/react-scroll-area");require("react-dom");require("@floating-ui/react-dom");require("i18next");require("react-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("@chaibuilder/blocks");require("lucide-react");require("sonner");const x=({pageData:i,projectData:s})=>{const n={},t=d.useDeletePage(),u=i.uuid===s.homepage,o=()=>{t.mutate(i,{onSuccess:()=>{n({uuid:s.homepage,slug:"/home"})}})};return e.jsxRuntimeExports.jsxs(r.AlertDialog,{children:[e.jsxRuntimeExports.jsx(r.AlertDialogTrigger,{disabled:u,children:e.jsxRuntimeExports.jsx("div",{className:`flex h-full items-center justify-center rounded-md border px-2 py-2 font-medium hover:bg-red-400 hover:text-white ${u?"cursor-not-allowed border-red-200 text-red-200":"cursor-pointer border-red-400 text-red-400"}`,children:e.jsxRuntimeExports.jsx(c.TrashIcon,{})})}),e.jsxRuntimeExports.jsxs(r.AlertDialogContent,{children:[e.jsxRuntimeExports.jsxs(r.AlertDialogTitle,{children:["Are you sure you want to delete ",e.jsxRuntimeExports.jsx("i",{className:"text-red-500",children:i.name})," page?"]}),e.jsxRuntimeExports.jsx(r.AlertDialogDescription,{children:"This action cannot be undone. This will permanently delete your page."}),e.jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-end gap-x-3",children:[e.jsxRuntimeExports.jsx(r.AlertDialogCancel,{disabled:t.isPending,children:"Cancel"}),e.jsxRuntimeExports.jsx(l.Button,{variant:"destructive",onClick:o,disabled:t.isPending,children:"Yes, Delete"})]})]})]})};exports.default=x;
@@ -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-86352d44.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-5e57d0c8.cjs");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("lucide-react");require("sonner");const m=n.lazy(()=>Promise.resolve().then(()=>require("./single-page-detail-36430438.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-2dc05f35.cjs"),d=require("./index-86352d44.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-e71b94f1.cjs");require("react-icons-picker");require("react-dom");require("./dialog-170eaad9.cjs");require("@radix-ui/react-dialog");require("@radix-ui/react-icons");require("./ImagesPanel-56ca0618.cjs");require("./tabs-860e37aa.cjs");require("@radix-ui/react-tabs");require("react-quill");require("react-i18next");require("./useBuilderProp-5e57d0c8.cjs");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("lucide-react");require("sonner");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-2dc05f35.cjs");require("react");require("@rjsf/core");require("@rjsf/validator-ajv8");require("lodash");require("./link-e71b94f1.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-56ca0618.cjs");require("./tabs-860e37aa.cjs");require("@radix-ui/react-tabs");require("react-quill");require("react-i18next");require("./useBuilderProp-5e57d0c8.cjs");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,o,u,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:((o=e.seoData)==null?void 0:o.description)||"",image:((u=e.seoData)==null?void 0:u.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-5e57d0c8.cjs"),w=require("./scroll-area-bb343b86.cjs"),d=require("@chaibuilder/blocks"),L=require("sonner"),p=require("./form-2dc05f35.cjs"),P=require("./index-86352d44.cjs");require("@radix-ui/react-slot");require("class-variance-authority");require("./utils-3c452dd0.cjs");require("clsx");require("tailwind-merge");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-e71b94f1.cjs");require("react-icons-picker");require("react-dom");require("./dialog-170eaad9.cjs");require("@radix-ui/react-dialog");require("./ImagesPanel-56ca0618.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-88aeacfd.cjs"))),B=g.lazy(()=>Promise.resolve().then(()=>require("./confirm-alert-4f50caa7.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 +0,0 @@
1
- "use strict";const r=require("./jsx-runtime-5c3ac4f7.cjs"),V=require("@radix-ui/react-slot"),h=require("class-variance-authority"),I=require("react"),n=require("./utils-3c452dd0.cjs"),q=require("@radix-ui/react-tooltip"),C=require("@radix-ui/react-icons"),M=require("@radix-ui/react-toast"),g=require("jotai"),B=require("lodash");function v(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const s=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(e,o,s.get?s:{enumerable:!0,get:()=>t[o]})}}return e.default=t,Object.freeze(e)}const a=v(I),u=v(q),i=v(M),T=g.atom(null);T.debugLabel="chaiBuilderPropsAtom";const k=g.atom(null);k.debugLabel="apiKeyAtom";const y=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"}}),j=a.forwardRef(({className:t,variant:e,size:o,asChild:s=!1,...d},m)=>{const D=s?V.Slot:"button";return r.jsxRuntimeExports.jsx(D,{className:n.cn(y({variant:e,size:o,className:t})),ref:m,...d})});j.displayName="Button";const z=u.Portal,L=u.Provider,U=u.Root,K=u.Trigger,R=a.forwardRef(({className:t,sideOffset:e=4,...o},s)=>r.jsxRuntimeExports.jsx(u.Content,{ref:s,sideOffset:e,className:n.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}));R.displayName=u.Content.displayName;const Q=1,X=1e6;let f=0;function Y(){return f=(f+1)%Number.MAX_VALUE,f.toString()}const x=new Map,b=t=>{if(x.has(t))return;const e=setTimeout(()=>{x.delete(t),c({type:"REMOVE_TOAST",toastId:t})},X);x.set(t,e)},w=(t,e)=>{switch(e.type){case"ADD_TOAST":return{...t,toasts:[e.toast,...t.toasts].slice(0,Q)};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(s=>{b(s.id)}),{...t,toasts:t.toasts.map(s=>s.id===o||o===void 0?{...s,open:!1}:s)}}case"REMOVE_TOAST":return e.toastId===void 0?{...t,toasts:[]}:{...t,toasts:t.toasts.filter(o=>o.id!==e.toastId)}}},l=[];let p={toasts:[]};function c(t){p=w(p,t),l.forEach(e=>{e(p)})}function E({...t}){const e=Y(),o=d=>c({type:"UPDATE_TOAST",toast:{...d,id:e}}),s=()=>c({type:"DISMISS_TOAST",toastId:e});return c({type:"ADD_TOAST",toast:{...t,id:e,open:!0,onOpenChange:d=>{d||s()}}}),{id:e,dismiss:s,update:o}}function S(){const[t,e]=a.useState(p);return a.useEffect(()=>(l.push(e),()=>{const o=l.indexOf(e);o>-1&&l.splice(o,1)}),[t]),{...t,toast:E,dismiss:o=>c({type:"DISMISS_TOAST",toastId:o})}}const F=i.Provider,A=a.forwardRef(({className:t,...e},o)=>r.jsxRuntimeExports.jsx(i.Viewport,{ref:o,className:n.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}));A.displayName=i.Viewport.displayName;const G=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"}}),N=a.forwardRef(({className:t,variant:e,...o},s)=>r.jsxRuntimeExports.jsx(i.Root,{ref:s,className:n.cn(G({variant:e}),t),...o}));N.displayName=i.Root.displayName;const H=a.forwardRef(({className:t,...e},o)=>r.jsxRuntimeExports.jsx(i.Action,{ref:o,className:n.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}));H.displayName=i.Action.displayName;const P=a.forwardRef(({className:t,...e},o)=>r.jsxRuntimeExports.jsx(i.Close,{ref:o,className:n.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:r.jsxRuntimeExports.jsx(C.Cross2Icon,{className:"h-4 w-4"})}));P.displayName=i.Close.displayName;const O=a.forwardRef(({className:t,...e},o)=>r.jsxRuntimeExports.jsx(i.Title,{ref:o,className:n.cn("text-sm font-semibold [&+div]:text-xs",t),...e}));O.displayName=i.Title.displayName;const _=a.forwardRef(({className:t,...e},o)=>r.jsxRuntimeExports.jsx(i.Description,{ref:o,className:n.cn("text-sm opacity-90",t),...e}));_.displayName=i.Description.displayName;function J(){const{toasts:t}=S();return r.jsxRuntimeExports.jsxs(F,{children:[t.map(({id:e,title:o,description:s,action:d,...m})=>r.jsxRuntimeExports.jsxs(N,{...m,children:[r.jsxRuntimeExports.jsxs("div",{className:"grid gap-1",children:[o&&r.jsxRuntimeExports.jsx(O,{children:o}),s&&r.jsxRuntimeExports.jsx(_,{children:s})]}),d,r.jsxRuntimeExports.jsx(P,{})]},e)),r.jsxRuntimeExports.jsx(A,{})]})}const W=({className:t,...e})=>r.jsxRuntimeExports.jsx("div",{className:n.cn("animate-pulse rounded-md bg-primary/10",t),...e}),Z=(t,e=void 0)=>{const o=g.useAtomValue(T);return B.get(o,t,e)};exports.Button=j;exports.Skeleton=W;exports.Toaster=J;exports.Tooltip=U;exports.TooltipContent=R;exports.TooltipPortal=z;exports.TooltipProvider=L;exports.TooltipTrigger=K;exports.buttonVariants=y;exports.chaiBuilderPropsAtom=T;exports.reducer=w;exports.toast=E;exports.useBuilderProp=Z;exports.useToast=S;
@@ -1,238 +0,0 @@
1
- import { j as r } from "./jsx-runtime-944c88e2.js";
2
- import { Slot as j } from "@radix-ui/react-slot";
3
- import { cva as x } from "class-variance-authority";
4
- import * as i from "react";
5
- import { c as n } from "./utils-ac68b2c8.js";
6
- import * as c from "@radix-ui/react-tooltip";
7
- import { Cross2Icon as R } from "@radix-ui/react-icons";
8
- import * as a from "@radix-ui/react-toast";
9
- import { atom as h, useAtomValue as O } from "jotai";
10
- import { get as E } from "lodash";
11
- const T = h(null);
12
- T.debugLabel = "chaiBuilderPropsAtom";
13
- const P = h(null);
14
- P.debugLabel = "apiKeyAtom";
15
- const D = x(
16
- "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",
17
- {
18
- variants: {
19
- variant: {
20
- default: "bg-primary text-primary-foreground shadow hover:bg-primary/90",
21
- destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
22
- outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",
23
- secondary: "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",
24
- ghost: "hover:bg-accent hover:text-accent-foreground",
25
- link: "text-primary underline-offset-4 hover:underline"
26
- },
27
- size: {
28
- default: "h-9 px-4 py-2",
29
- sm: "h-8 rounded-md px-3 text-xs",
30
- lg: "h-10 rounded-md px-8",
31
- icon: "h-9 w-9"
32
- }
33
- },
34
- defaultVariants: {
35
- variant: "default",
36
- size: "default"
37
- }
38
- }
39
- ), _ = i.forwardRef(
40
- ({ className: t, variant: e, size: o, asChild: s = !1, ...d }, p) => {
41
- const A = s ? j : "button";
42
- return /* @__PURE__ */ r.jsx(A, { className: n(D({ variant: e, size: o, className: t })), ref: p, ...d });
43
- }
44
- );
45
- _.displayName = "Button";
46
- const J = c.Portal, W = c.Provider, Z = c.Root, $ = c.Trigger, V = i.forwardRef(({ className: t, sideOffset: e = 4, ...o }, s) => /* @__PURE__ */ r.jsx(
47
- c.Content,
48
- {
49
- ref: s,
50
- sideOffset: e,
51
- className: n(
52
- "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",
53
- t
54
- ),
55
- ...o
56
- }
57
- ));
58
- V.displayName = c.Content.displayName;
59
- const I = 1, C = 1e6;
60
- let f = 0;
61
- function M() {
62
- return f = (f + 1) % Number.MAX_VALUE, f.toString();
63
- }
64
- const v = /* @__PURE__ */ new Map(), g = (t) => {
65
- if (v.has(t))
66
- return;
67
- const e = setTimeout(() => {
68
- v.delete(t), u({
69
- type: "REMOVE_TOAST",
70
- toastId: t
71
- });
72
- }, C);
73
- v.set(t, e);
74
- }, z = (t, e) => {
75
- switch (e.type) {
76
- case "ADD_TOAST":
77
- return {
78
- ...t,
79
- toasts: [e.toast, ...t.toasts].slice(0, I)
80
- };
81
- case "UPDATE_TOAST":
82
- return {
83
- ...t,
84
- toasts: t.toasts.map((o) => o.id === e.toast.id ? { ...o, ...e.toast } : o)
85
- };
86
- case "DISMISS_TOAST": {
87
- const { toastId: o } = e;
88
- return o ? g(o) : t.toasts.forEach((s) => {
89
- g(s.id);
90
- }), {
91
- ...t,
92
- toasts: t.toasts.map(
93
- (s) => s.id === o || o === void 0 ? {
94
- ...s,
95
- open: !1
96
- } : s
97
- )
98
- };
99
- }
100
- case "REMOVE_TOAST":
101
- return e.toastId === void 0 ? {
102
- ...t,
103
- toasts: []
104
- } : {
105
- ...t,
106
- toasts: t.toasts.filter((o) => o.id !== e.toastId)
107
- };
108
- }
109
- }, l = [];
110
- let m = { toasts: [] };
111
- function u(t) {
112
- m = z(m, t), l.forEach((e) => {
113
- e(m);
114
- });
115
- }
116
- function B({ ...t }) {
117
- const e = M(), o = (d) => u({
118
- type: "UPDATE_TOAST",
119
- toast: { ...d, id: e }
120
- }), s = () => u({ type: "DISMISS_TOAST", toastId: e });
121
- return u({
122
- type: "ADD_TOAST",
123
- toast: {
124
- ...t,
125
- id: e,
126
- open: !0,
127
- onOpenChange: (d) => {
128
- d || s();
129
- }
130
- }
131
- }), {
132
- id: e,
133
- dismiss: s,
134
- update: o
135
- };
136
- }
137
- function k() {
138
- const [t, e] = i.useState(m);
139
- return i.useEffect(() => (l.push(e), () => {
140
- const o = l.indexOf(e);
141
- o > -1 && l.splice(o, 1);
142
- }), [t]), {
143
- ...t,
144
- toast: B,
145
- dismiss: (o) => u({ type: "DISMISS_TOAST", toastId: o })
146
- };
147
- }
148
- const L = a.Provider, b = i.forwardRef(({ className: t, ...e }, o) => /* @__PURE__ */ r.jsx(
149
- a.Viewport,
150
- {
151
- ref: o,
152
- className: n(
153
- "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]",
154
- t
155
- ),
156
- ...e
157
- }
158
- ));
159
- b.displayName = a.Viewport.displayName;
160
- const U = x(
161
- "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",
162
- {
163
- variants: {
164
- variant: {
165
- default: "border bg-background",
166
- destructive: "destructive group border-destructive bg-destructive text-destructive-foreground"
167
- }
168
- },
169
- defaultVariants: {
170
- variant: "default"
171
- }
172
- }
173
- ), y = i.forwardRef(({ className: t, variant: e, ...o }, s) => /* @__PURE__ */ r.jsx(a.Root, { ref: s, className: n(U({ variant: e }), t), ...o }));
174
- y.displayName = a.Root.displayName;
175
- const K = i.forwardRef(({ className: t, ...e }, o) => /* @__PURE__ */ r.jsx(
176
- a.Action,
177
- {
178
- ref: o,
179
- className: n(
180
- "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",
181
- t
182
- ),
183
- ...e
184
- }
185
- ));
186
- K.displayName = a.Action.displayName;
187
- const w = i.forwardRef(({ className: t, ...e }, o) => /* @__PURE__ */ r.jsx(
188
- a.Close,
189
- {
190
- ref: o,
191
- className: n(
192
- "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",
193
- t
194
- ),
195
- "toast-close": "",
196
- ...e,
197
- children: /* @__PURE__ */ r.jsx(R, { className: "h-4 w-4" })
198
- }
199
- ));
200
- w.displayName = a.Close.displayName;
201
- const N = i.forwardRef(({ className: t, ...e }, o) => /* @__PURE__ */ r.jsx(a.Title, { ref: o, className: n("text-sm font-semibold [&+div]:text-xs", t), ...e }));
202
- N.displayName = a.Title.displayName;
203
- const S = i.forwardRef(({ className: t, ...e }, o) => /* @__PURE__ */ r.jsx(a.Description, { ref: o, className: n("text-sm opacity-90", t), ...e }));
204
- S.displayName = a.Description.displayName;
205
- function tt() {
206
- const { toasts: t } = k();
207
- return /* @__PURE__ */ r.jsxs(L, { children: [
208
- t.map(({ id: e, title: o, description: s, action: d, ...p }) => /* @__PURE__ */ r.jsxs(y, { ...p, children: [
209
- /* @__PURE__ */ r.jsxs("div", { className: "grid gap-1", children: [
210
- o && /* @__PURE__ */ r.jsx(N, { children: o }),
211
- s && /* @__PURE__ */ r.jsx(S, { children: s })
212
- ] }),
213
- d,
214
- /* @__PURE__ */ r.jsx(w, {})
215
- ] }, e)),
216
- /* @__PURE__ */ r.jsx(b, {})
217
- ] });
218
- }
219
- const et = ({ className: t, ...e }) => /* @__PURE__ */ r.jsx("div", { className: n("animate-pulse rounded-md bg-primary/10", t), ...e }), ot = (t, e = void 0) => {
220
- const o = O(T);
221
- return E(o, t, e);
222
- };
223
- export {
224
- _ as B,
225
- et as S,
226
- W as T,
227
- tt as a,
228
- D as b,
229
- T as c,
230
- Z as d,
231
- $ as e,
232
- V as f,
233
- J as g,
234
- k as h,
235
- z as r,
236
- B as t,
237
- ot as u
238
- };