@chaibuilder/pages 0.16.14 → 0.16.16

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 (94) hide show
  1. package/dist/{2AITGKQY-B9AnRLq_.cjs → 2AITGKQY-BV6JxIio.cjs} +1 -1
  2. package/dist/{2AITGKQY-B7xwscsX.js → 2AITGKQY-DmJ7FEya.js} +5 -5
  3. package/dist/{NCMVHL6D-CRMC-wXy.cjs → NCMVHL6D-B_AZmaGG.cjs} +1 -1
  4. package/dist/{NCMVHL6D-B1mwht0Q.js → NCMVHL6D-DsqUQxZK.js} +4 -4
  5. package/dist/{ZDWCUMSJ-BqqPEOij.cjs → ZDWCUMSJ-CQXWzREv.cjs} +1 -1
  6. package/dist/{ZDWCUMSJ-CxKNtXtp.js → ZDWCUMSJ-DusX6DXb.js} +1 -1
  7. package/dist/active-in-another-tab-CSNxota6.js +34 -0
  8. package/dist/active-in-another-tab-rGDvhc3f.cjs +1 -0
  9. package/dist/{add-new-language-page-DD0qvJJs.js → add-new-language-page-C1ekdWwV.js} +20 -20
  10. package/dist/{add-new-language-page-D2a6GK-7.cjs → add-new-language-page-DmQ_eB85.cjs} +1 -1
  11. package/dist/{add-new-page-01GDCaa4.cjs → add-new-page-BImvK_fV.cjs} +1 -1
  12. package/dist/{add-new-page-CYtuChN1.js → add-new-page-C6gW1_B-.js} +1 -1
  13. package/dist/{ai-panel-content-Ouz6pu_0.cjs → ai-panel-content-BGMRcgkl.cjs} +1 -1
  14. package/dist/{ai-panel-content-DfdnvlS8.js → ai-panel-content-BJoNy1Yk.js} +2 -2
  15. package/dist/{ai-panel-default-lang-Bi2fH1so.js → ai-panel-default-lang-BLE3cVLR.js} +3 -3
  16. package/dist/{ai-panel-default-lang-N1pb8rzQ.cjs → ai-panel-default-lang-CNTq97FU.cjs} +2 -2
  17. package/dist/{ai-panel-other-lang-2JPRSyO1.js → ai-panel-other-lang-DBBxinT6.js} +3 -3
  18. package/dist/{ai-panel-other-lang-BysU1464.cjs → ai-panel-other-lang-VRmIp9Qm.cjs} +1 -1
  19. package/dist/{ai-prompt-input-JeIqWZco.cjs → ai-prompt-input-5aMuJDep.cjs} +1 -1
  20. package/dist/{ai-prompt-input-DadL_cng.js → ai-prompt-input-BivmKxNH.js} +2 -2
  21. package/dist/{ai-translation-prompt-B0si-R0R.js → ai-translation-prompt-CkvGj9Zu.js} +1 -1
  22. package/dist/{ai-translation-prompt-CQb1L7NM.cjs → ai-translation-prompt-hp5Ey1Eq.cjs} +1 -1
  23. package/dist/continue-editing-in-this-client-BdjGzFLm.cjs +1 -0
  24. package/dist/continue-editing-in-this-client-Bdm_5BEM.js +24 -0
  25. package/dist/delete-page-BHu4rVNA.js +70 -0
  26. package/dist/delete-page-OGCRZzrG.cjs +1 -0
  27. package/dist/{digital-asset-manager-jfnmWRJj.js → digital-asset-manager-C7JEgxdI.js} +1 -1
  28. package/dist/{digital-asset-manager-B5FQGtGY.cjs → digital-asset-manager-CaF6tRHd.cjs} +1 -1
  29. package/dist/{duplicate-page-BNjfZ7Wd.cjs → duplicate-page-Co3QgE3M.cjs} +1 -1
  30. package/dist/{duplicate-page-CERjaPIW.js → duplicate-page-DZW5jpE3.js} +13 -13
  31. package/dist/{dynamic-page-selector-XEWV4iCf.js → dynamic-page-selector-C2vVfVwL.js} +1 -1
  32. package/dist/{dynamic-page-selector-Bpz_bvRu.cjs → dynamic-page-selector-CL-sCDkO.cjs} +1 -1
  33. package/dist/index-DOH-lluK.js +4820 -0
  34. package/dist/index-MzR4MaVE.cjs +5 -0
  35. package/dist/index.cjs +1 -1
  36. package/dist/index.d.ts +1 -34
  37. package/dist/index.js +21 -22
  38. package/dist/{json-diff-viewer-H-2DkGza.cjs → json-diff-viewer-C69tubC8.cjs} +1 -1
  39. package/dist/{json-diff-viewer-DyvKomxd.js → json-diff-viewer-DVB2glQZ.js} +6 -6
  40. package/dist/{lang-panel-BWP5A-FD.js → lang-panel-BDNMrT8U.js} +24 -24
  41. package/dist/{lang-panel-DcZ7u4em.cjs → lang-panel-DWj5wlfo.cjs} +1 -1
  42. package/dist/{mark-as-template-B_FyVRRO.cjs → mark-as-template-Br9qxjbc.cjs} +1 -1
  43. package/dist/{mark-as-template-1oVraE1x.js → mark-as-template-wKn7aI8D.js} +7 -7
  44. package/dist/{no-language-page-content-CEci_4j7.js → no-language-page-content-C7oVsIYu.js} +1 -1
  45. package/dist/{no-language-page-content-JO4YYUx7.cjs → no-language-page-content-CFVzHv_Y.cjs} +1 -1
  46. package/dist/no-language-page-dialog-5-cAE2F2.js +10 -0
  47. package/dist/no-language-page-dialog-BqrxzBfj.cjs +1 -0
  48. package/dist/{page-creator-DJJFl7px.js → page-creator-89jgn0Ao.js} +52 -52
  49. package/dist/{page-creator-BGgoOA92.cjs → page-creator-itnGYmd4.cjs} +1 -1
  50. package/dist/page-lock-BGnEhXCW.cjs +1 -0
  51. package/dist/page-lock-T6QScRbl.js +30 -0
  52. package/dist/page-locked-dialog-B39IqdJ9.cjs +1 -0
  53. package/dist/page-locked-dialog-Bo2JuCSN.js +133 -0
  54. package/dist/page-manager-new-CElobhjD.js +354 -0
  55. package/dist/page-manager-new-D44_zdpQ.cjs +1 -0
  56. package/dist/{page-manager-search-and-filter-Dgh8iyGp.cjs → page-manager-search-and-filter-DmXFyylC.cjs} +1 -1
  57. package/dist/{page-manager-search-and-filter-DbUoW8Di.js → page-manager-search-and-filter-VgVbeup1.js} +1 -1
  58. package/dist/{page-revisions-content-CxEJGxLY.js → page-revisions-content-C3GLr_sM.js} +19 -19
  59. package/dist/{page-revisions-content-CwoXXE53.cjs → page-revisions-content-CsxGDRzT.cjs} +1 -1
  60. package/dist/pages.css +1 -1
  61. package/dist/publish-pages-content-CdwZOxtG.cjs +1 -0
  62. package/dist/{publish-pages-content-CfAlmivf.js → publish-pages-content-Cj6sTZ-B.js} +88 -88
  63. package/dist/{save-to-lib-DpyJA0y1.cjs → save-to-lib-BjfzVByH.cjs} +1 -1
  64. package/dist/{save-to-lib-BCaBfh0I.js → save-to-lib-DtdHpuWg.js} +1 -1
  65. package/dist/{selected-block-display-CqnwyGRp.cjs → selected-block-display-B0yeKnWl.cjs} +1 -1
  66. package/dist/{selected-block-display-BmNhvYKu.js → selected-block-display-DVzQ888o.js} +1 -1
  67. package/dist/{seo-panel-D-nKfsRJ.cjs → seo-panel-CaXQTicZ.cjs} +1 -1
  68. package/dist/{seo-panel-BH8fcGqr.js → seo-panel-h6FQkwhv.js} +61 -61
  69. package/dist/{shared-json-ld-zTDoJzUv.js → shared-json-ld-B1HhFgk0.js} +39 -39
  70. package/dist/{shared-json-ld-m_OsVv8h.cjs → shared-json-ld-DcYfd7Sl.cjs} +1 -1
  71. package/dist/{slug-input-CumDDlCk.js → slug-input-Bq48cfWr.js} +1 -1
  72. package/dist/{slug-input-vzNtu37S.cjs → slug-input-DDDMhrBe.cjs} +1 -1
  73. package/dist/take-over-request-BC2Rh5wd.js +63 -0
  74. package/dist/take-over-request-Cpa9ooTw.cjs +1 -0
  75. package/dist/{theme-panel-footer-CdUmjB-e.js → theme-panel-footer-B4D33YEO.js} +4 -4
  76. package/dist/{theme-panel-footer-CKccBcd9.cjs → theme-panel-footer-DoFYuPy1.cjs} +1 -1
  77. package/dist/{unmark-as-template-BNFOsxIg.cjs → unmark-as-template-4A6kxi6r.cjs} +1 -1
  78. package/dist/{unmark-as-template-6ew-7bf8.js → unmark-as-template-fkt1rehy.js} +1 -1
  79. package/dist/{unpublish-page-BomE76Wg.js → unpublish-page-IQ4WTVMd.js} +9 -9
  80. package/dist/{unpublish-page-BZQpTpU3.cjs → unpublish-page-uIYo5nwG.cjs} +1 -1
  81. package/dist/{web-preview-C5QTX7bS.cjs → web-preview-BvfhE4ij.cjs} +1 -1
  82. package/dist/{web-preview-jo8lnpEx.js → web-preview-DYbA7jro.js} +1 -1
  83. package/package.json +3 -3
  84. package/dist/delete-page-C8Nt7IYF.cjs +0 -1
  85. package/dist/delete-page-_96Di9yN.js +0 -40
  86. package/dist/index-Pdb5tSRL.cjs +0 -5
  87. package/dist/index-e9WlBH0R.js +0 -4960
  88. package/dist/page-lock-request-BoYzkcyt.cjs +0 -1
  89. package/dist/page-lock-request-WzpcD2ZN.js +0 -75
  90. package/dist/page-locked-by-dialog-Djvjp2Hx.js +0 -68
  91. package/dist/page-locked-by-dialog-bvI27OZ6.cjs +0 -1
  92. package/dist/page-manager-new-CMfGorRQ.cjs +0 -1
  93. package/dist/page-manager-new-DmVX0qLk.js +0 -354
  94. package/dist/publish-pages-content-BRu7qwAo.cjs +0 -1
@@ -0,0 +1,5 @@
1
+ "use strict";var Ss=e=>{throw TypeError(e)};var Ps=(e,t,s)=>t.has(e)||Ss("Cannot "+s);var x=(e,t,s)=>(Ps(e,t,"read from private field"),s?s.call(e):t.get(e)),R=(e,t,s)=>t.has(e)?Ss("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,s),k=(e,t,s,n)=>(Ps(e,t,"write to private field"),n?n.call(e,s):t.set(e,s),s);const o=require("react/jsx-runtime"),p=require("lodash-es"),h=require("react"),H=require("jotai"),S=require("@tanstack/react-query"),P=require("@chaibuilder/sdk"),g=require("@chaibuilder/sdk/ui"),_=require("lucide-react"),M=require("sonner"),Rs=require("@chaibuilder/runtime"),tr=require("@chaibuilder/sdk/web-blocks");function sr(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const s in e)if(s!=="default"){const n=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,n.get?n:{enumerable:!0,get:()=>e[s]})}}return t.default=e,Object.freeze(t)}const z=sr(h),$e={ab:"Abkhazian",aa:"Afar",af:"Afrikaans",ak:"Akan",sq:"Albanian",am:"Amharic",ar:"Arabic",an:"Aragonese",hy:"Armenian",as:"Assamese",av:"Avaric",ae:"Avestan",ay:"Aymara",az:"Azerbaijani",bm:"Bambara",ba:"Bashkir",eu:"Basque",be:"Belarusian",bn:"Bengali",bh:"Bihari",bi:"Bislama",bs:"Bosnian",br:"Breton",bg:"Bulgarian",my:"Burmese",ca:"Catalan",ch:"Chamorro",ce:"Chechen",ny:"Chichewa",zh:"Chinese","zh-Hans":"Chinese (Simplified)","zh-Hant":"Chinese (Traditional)",cv:"Chuvash",kw:"Cornish",co:"Corsican",cr:"Cree",hr:"Croatian",cs:"Czech",da:"Danish",dv:"Maldivian",nl:"Dutch",dz:"Dzongkha",en:"English",eo:"Esperanto",et:"Estonian",ee:"Ewe",fo:"Faroese",fj:"Fijian",fi:"Finnish",fr:"French",ff:"Fula, Pular",gl:"Galician",gd:"Gaelic (Scottish)",gv:"Manx",ka:"Georgian",de:"German",el:"Greek",kl:"Kalaallisut",gn:"Guarani",gu:"Gujarati",ht:"Haitian Creole",ha:"Hausa",he:"Hebrew",hz:"Herero",hi:"Hindi",ho:"Hiri Motu",hu:"Hungarian",is:"Icelandic",io:"Ido",ig:"Igbo",id:"Indonesian",ia:"Interlingua",ie:"Interlingue",iu:"Inuktitut",ik:"Inupiak",ga:"Irish",it:"Italian",ja:"Japanese",jv:"Javanese",kn:"Kannada",kr:"Kanuri",ks:"Kashmiri",kk:"Kazakh",km:"Khmer",ki:"Kikuyu",rw:"Kinyarwanda",rn:"Kirundi",ky:"Kyrgyz",kv:"Komi",kg:"Kongo",ko:"Korean",ku:"Kurdish",kj:"Kwanyama",lo:"Lao",la:"Latin",lv:"Latvian",li:"Limburgish",ln:"Lingala",lt:"Lithuanian",lu:"Luga-Katanga",lg:"Luganda, Ganda",lb:"Luxembourgish",mk:"Macedonian",mg:"Malagasy",ms:"Malay",ml:"Malayalam",mt:"Maltese",mi:"Maori",mr:"Marathi",mh:"Marshallese",mo:"Moldavian",mn:"Mongolian",na:"Nauru",nv:"Navajo",ng:"Ndonga",nd:"Northern Ndebele",ne:"Nepali",no:"Norwegian",nb:"Norwegian bokmål",nn:"Norwegian nynorsk",ii:"Sichuan Yi",oc:"Occitan",oj:"Ojibwe",cu:"Old Church Slavonic",or:"Oriya",om:"Oromo",os:"Ossetian",pi:"Pāli",ps:"Pashto, Pushto",fa:"Persian (Farsi)",pl:"Polish",pt:"Portuguese",pa:"Punjabi (Eastern)",qu:"Quechua",rm:"Romansh",ro:"Romanian",ru:"Russian",se:"Sami",sm:"Samoan",sg:"Sango",sa:"Sanskrit",sr:"Serbian",sh:"Serbo-Croatian",st:"Sesotho",tn:"Setswana",sn:"Shona",sd:"Sindhi",si:"Sinhalese",ss:"Swati",sk:"Slovak",sl:"Slovenian",so:"Somali",nr:"Southern Ndebele",es:"Spanish",su:"Sundanese",sw:"Swahili (Kiswahili)",sv:"Swedish",tl:"Tagalog",ty:"Tahitian",tg:"Tajik",ta:"Tamil",tt:"Tatar",te:"Telugu",th:"Thai",bo:"Tibetan",ti:"Tigrinya",to:"Tonga",ts:"Tsonga",tr:"Turkish",tk:"Turkmen",tw:"Twi",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",ve:"Venda",vi:"Vietnamese",vo:"Volapük",wa:"Wallon",cy:"Welsh",wo:"Wolof",fy:"Western Frisian",xh:"Xhosa",yi:"Yiddish",yo:"Yoruba",za:"Zhuang, Chuang",zu:"Zulu"},y={GET_GLOBAL_JSONLD_ITEMS:"GET_GLOBAL_JSONLD_ITEMS",GENERATE_SEO_FIELD:"GENERATE_SEO_FIELD",UPDATE_PAGE_METADATA:"UPDATE_PAGE_METADATA",GET_BLOCK_ASYNC_PROPS:"GET_BLOCK_ASYNC_PROPS",ASK_AI:"ASK_AI",GET_DRAFT_PAGE:"GET_DRAFT_PAGE",CREATE_PAGE:"CREATE_PAGE",UPDATE_PAGE:"UPDATE_PAGE",DELETE_PAGE:"DELETE_PAGE",DUPLICATE_PAGE:"DUPLICATE_PAGE",CHANGE_SLUG:"CHANGE_SLUG",TAKE_OFFLINE:"TAKE_OFFLINE",PUBLISH_PAGE:"PUBLISH_PAGE",PUBLISH_CHANGES:"PUBLISH_CHANGES",ADD_NEW_LANGUAGE:"ADD_NEW_LANGUAGE",EDIT_LANGUAGE:"EDIT_LANGUAGE",DELETE_LANGUAGE:"DELETE_LANGUAGE",GET_CHANGES:"GET_CHANGES",GET_SERVER_BLOCK:"GET_SERVER_BLOCK",GET_LANGUAGE_PAGES:"GET_LANGUAGE_PAGES",GET_PROJECT_PAGES:"GET_PROJECT_PAGES",GET_WEBSITE_PAGES:"GET_WEBSITE_PAGES",UPDATE_WEBSITE_SETTINGS:"UPDATE_WEBSITE_SETTINGS",GET_COLLECTIONS:"GET_COLLECTIONS",GET_PAGE_TYPES:"GET_PAGE_TYPES",SEARCH_PAGES:"SEARCH_PAGES",GET_WEBSITE_DRAFT_SETTINGS:"GET_WEBSITE_DRAFT_SETTINGS",AI_CONTEXT:"AI_CONTEXT",GET_WEBSITE_DATA:"GET_WEBSITE_DATA",UPDATE_WEBSITE_DATA:"UPDATE_WEBSITE_DATA",GET_CHAI_USER:"GET_CHAI_USER",GET_SEO_FIELDS:"GET_SEO_FIELDS",GET_BUILDER_PAGE_DATA:"GET_BUILDER_PAGE_DATA",GET_PAGE_REVISIONS:"GET_PAGE_REVISIONS",DELETE_PAGE_REVISION:"DELETE_PAGE_REVISION",RESTORE_PAGE_REVISION:"RESTORE_PAGE_REVISION",GET_REVISION_DATA:"GET_REVISION_DATA",GET_PAGE_DATA:"GET_PAGE_DATA",GET_COMPARE_DATA:"GET_COMPARE_DATA",GET_ROLE_AND_PERMISSIONS:"GET_ROLE_AND_PERMISSIONS",UPSERT_LIBRARY_ITEM:"UPSERT_LIBRARY_ITEM",GET_LIBRARIES:"GET_LIBRARIES",GET_LIBRARY_ITEM:"GET_LIBRARY_ITEM",GET_LIBRARY_ITEMS:"GET_LIBRARY_ITEMS",DELETE_LIBRARY_ITEM:"DELETE_LIBRARY_ITEM",MARK_AS_TEMPLATE:"MARK_AS_TEMPLATE",UNMARK_AS_TEMPLATE:"UNMARK_AS_TEMPLATE",GET_TEMPLATES_BY_TYPE:"GET_TEMPLATES_BY_TYPE",GET_DYNAMIC_PAGES:"GET_DYNAMIC_PAGES",GET_APP_SHARED_JSONLD:"GET_APP_SHARED_JSONLD",UPDATE_APP_SHARED_JSONLD:"UPDATE_APP_SHARED_JSONLD",ADD_GLOBAL_SCHEMA:"ADD_GLOBAL_SCHEMA",UPDATE_GLOBAL_SCHEMA:"UPDATE_GLOBAL_SCHEMA",DELETE_GLOBAL_SCHEMA:"DELETE_GLOBAL_SCHEMA",TOGGLE_PAGE_GLOBAL_SCHEMA:"TOGGLE_PAGE_GLOBAL_SCHEMA",APPLY_SCHEMA_TO_ALL_PAGES:"APPLY_SCHEMA_TO_ALL_PAGES",REMOVE_SCHEMA_FROM_ALL_PAGES:"REMOVE_SCHEMA_FROM_ALL_PAGES",UPLOAD_ASSET:"UPLOAD_ASSET",DELETE_ASSET:"DELETE_ASSET",UPDATE_ASSET:"UPDATE_ASSET",GET_ASSETS:"GET_ASSETS",GET_ASSET:"GET_ASSET"},nr=H.atom({}),Ot=()=>H.useAtom(nr),ne=(e,t)=>{const[s]=Ot();return h.useMemo(()=>p.get(s,e,t),[s,e,t])},G=()=>ne("apiUrl","/chai/api"),Ms=()=>ne("usersApiUrl","/chai/users"),rr=()=>ne("assetsApiUrl","/chai/assets"),Us=()=>ne("websocket",null),ar=async(e,t,s={})=>await fetch(e,{method:"POST",headers:{"Content-Type":"application/json",...s},body:JSON.stringify(t)}),ir=()=>{const e=N(),t=G();return h.useCallback(async({body:s,headers:n={},url:r=t,streamResponse:a=!1})=>e(r,s,n,a),[e])},N=()=>{const e=ne("onLogout"),t=ne("getAccessToken"),s=G();return h.useCallback(async(n=s,r,a={},i=!1)=>{const l=await t();try{const c=p.get(r,"action","").toLowerCase(),d=await ar(n+(c?`?action=${c}`:""),r,{...a,Authorization:`Bearer ${l}`});if(i)return d;if(d.status===401)return console.log("401 Response",d),e(),window.location.reload(),null;if(!d.ok){const u=await d.json();throw console.error(`API Error (${d.status}):`,u),{status:d.status,statusText:d.statusText,...u,message:u.error||u.message||`Server error: ${d.status}`}}return await d.json()}catch(c){throw console.error("API request failed:",r,c),c}},[e,t])};function le(){const[e,t]=h.useState(new URLSearchParams(window.location.search));return h.useEffect(()=>{const s=()=>{t(new URLSearchParams(window.location.search))};return window.addEventListener("popstate",s),()=>{window.removeEventListener("popstate",s)}},[]),[e,t]}const Ae=e=>{const t=G(),[s]=le(),n=e??s.get("page"),r=N();return S.useQuery({queryKey:[y.GET_LANGUAGE_PAGES,n],staleTime:1/0,gcTime:0,placeholderData:[],queryFn:async()=>{if(!n)return null;const a=await r(t,{action:y.GET_LANGUAGE_PAGES,data:{id:n}});return p.reverse(p.sortBy(a,"primaryPage"))},enabled:!!n})},or=H.atom(null),Bs=()=>H.useAtom(or),rs=()=>{const[e]=Bs();return(e==null?void 0:e.slug)||""};function lr(e,t){const[s,n]=h.useState(e);return h.useEffect(()=>{const r=setTimeout(()=>n(e),t);return()=>clearTimeout(r)},[e,t]),s}const cr=({query:e,uuid:t})=>{const{selectedLang:s,fallbackLang:n}=P.useLanguages(),{data:r}=te(),a=r==null?void 0:r.pageType,i=G(),l=N(),{data:c,isFetching:d}=S.useQuery({queryKey:[y.GET_DYNAMIC_PAGES,e,a,t],staleTime:60*60*1e3,placeholderData:[],queryFn:async()=>await l(i,{action:y.GET_DYNAMIC_PAGES,data:{query:e,pageType:a,uuid:t}})||[],enabled:!!a}),u=h.useMemo(()=>s===""?c.filter(f=>f.lang===""||f.lang===n):c.filter(f=>f.lang===s),[s,n,c]);return{allLangPages:c,data:u,isFetching:d}},Fs=()=>{const{selectedLang:e,fallbackLang:t}=P.useLanguages(),[s,n]=Bs(),[r,a]=h.useState(""),i=lr(r,500),{allLangPages:l,data:c,isFetching:d}=cr({query:i}),u=h.useCallback(m=>n(m),[n]),f=h.useCallback(m=>a(m),[a]),E=h.useCallback(()=>{if(!s)return;const m=!(s!=null&&s.primaryPage),A=e.length===0,w=m?s==null?void 0:s.id:s==null?void 0:s.primaryPage,U=l.filter(T=>(T==null?void 0:T.primaryPage)===w||T.id===w).find(T=>A?T.lang===e||T.lang===t:T.lang===e);n(U||s)},[s,e,l,n,t]);return{isFetching:d,dynamicPage:s,searchQuery:r,selectedLang:e,dynamicPages:c,allLangPages:l,updateDynamicPage:u,updateSearchQuery:f,onChangeLanguage:E}},ur=H.atom({lastSaved:void 0}),as=()=>H.useAtom(ur),te=()=>{const[e]=le(),t=e.get("page"),{data:s,isFetching:n}=Ae();return{data:h.useMemo(()=>({...p.find(s,{id:t})||{}}),[s,t]),isFetching:n}},fe=()=>{const[e]=le(),t=e.get("lang")??"",{data:s,isFetching:n}=Ae();return{data:h.useMemo(()=>p.find(s,{lang:t})||{},[s,t]),isFetching:n}},dr=H.atom({}),fr=()=>H.useAtom(dr),hr=()=>{const{data:e}=fe(),t=rs(),s=ne("getLiveUrl",p.noop),n=e==null?void 0:e.slug,r=s(n||"/");return t?r+t:r},Te=()=>{const e=G(),t=N();return S.useQuery({queryKey:[y.GET_WEBSITE_DRAFT_SETTINGS],staleTime:5*60*1e3,placeholderData:{languages:[],theme:{fontFamily:"",borderRadius:"",colors:{}},appKey:"",fallbackLang:""},queryFn:async()=>t(e,{action:y.GET_WEBSITE_DRAFT_SETTINGS,data:{draft:!0}})})};function is(e,t,s=!1){const n=e.toString()?`?${e.toString()}`:"/";s?window.history.replaceState(null,"",n):window.history.pushState({},"",n),t(e),window.dispatchEvent(new PopStateEvent("popstate"))}const kt=H.atom(null),Rt=()=>{const e=ne("currentUser"),t=ne("onLogout");return{isLoggedIn:!!e,user:e,logout:t}},J={LOCKED:"LOCKED",EDITING:"EDITING",CHECKING:"CHECKING",TAKE_OVER_REQUESTED:"TAKE_OVER_REQUESTED",ACTIVE_IN_ANOTHER_TAB:"ACTIVE_IN_ANOTHER_TAB",FORCE_TAKE_OVER:"FORCE_TAKE_OVER",CONNECTION_LOST:"CONNECTION_LOST"},X={FORCE_TAKE_OVER:"FORCE_TAKE_OVER",TAKE_OVER_REQUEST:"TAKE_OVER_REQUEST",TAKE_OVER_APPROVED:"TAKE_OVER_APPROVED",TAKE_OVER_REJECTED:"TAKE_OVER_REJECTED",FORCE_TAKE_OVER_REQUEST:"FORCE_TAKE_OVER_REQUEST",CONTINUE_EDITING_IN_THIS_CLIENT:"CONTINUE_EDITING_IN_THIS_CLIENT",CONTINUE_EDITING_IN_THIS_TAB_REQUEST:"CONTINUE_EDITING_IN_THIS_TAB_REQUEST"},gr=["sync","join","leave"],mr=[X.FORCE_TAKE_OVER,X.TAKE_OVER_REQUEST,X.TAKE_OVER_APPROVED,X.TAKE_OVER_REJECTED,X.FORCE_TAKE_OVER_REQUEST,X.CONTINUE_EDITING_IN_THIS_CLIENT,X.CONTINUE_EDITING_IN_THIS_TAB_REQUEST],Er=H.atom({}),qs=H.atom(null),pr=H.atom(J.CHECKING),yr=H.atom({}),Ar=e=>{const t={},s=p.groupBy(p.values(e).map(p.first).filter(Boolean),"pageId");return Object.entries(s).forEach(([n,r])=>t[n]=p.minBy(r,"onlineAt")),t},Tr=e=>{const t=p.minBy(p.values(e).map(p.first).filter(Boolean),"onlineAt"),s=t==null?void 0:t.onlineAt;return s?s-100:+new Date-1e3*60*60*4},pt=()=>{const{user:e}=Rt();return e==null?void 0:e.id},Sr=()=>{const{data:e}=Te();return`WEBSITE:${e==null?void 0:e.appKey}`},yt=()=>{const{data:e}=te();return e==null?void 0:e.id},_e=crypto.randomUUID();let Kt=null;const os=()=>{const[e,t]=H.useAtom(Er);return{pageToUser:e,setPageToUser:t}},re=()=>{const[e,t]=H.useAtom(pr),s=[J.LOCKED,J.ACTIVE_IN_ANOTHER_TAB].includes(e),n=[J.EDITING].includes(e);return{pageStatus:e,setPageStatus:t,isLocked:s,isEditing:n}},ls=()=>{const[e,t]=H.useAtom(yr);return{pageLockMeta:e,setPageLockMeta:t}},Ks=()=>{const e=yt(),{pageToUser:t}=os();return h.useMemo(()=>t[e],[t,e])},cs=()=>{const e=Us(),{setPageStatus:t}=re(),[s]=H.useAtom(qs);return h.useEffect(()=>{if(clearTimeout(Kt),!e)return Kt=setTimeout(()=>{e||t(J.EDITING)},500),()=>clearTimeout(Kt)},[e,t]),s},Pr=()=>{const e=yt(),t=pt(),s=cs(),{setPageToUser:n}=os(),{setPageStatus:r,pageStatus:a}=re(),i=h.useRef(e);return i.current=e,h.useCallback(l=>{const c=l||s;if(!c)return[];const d=c==null?void 0:c.presenceState(),u=Ar(d);n(u);const f=u[i.current];if(!f)r(J.CHECKING);else if(!t)r(J.CHECKING);else if(f.userId===t&&f.clientId===_e){if(a===J.TAKE_OVER_REQUESTED)return;r(J.EDITING)}else f.userId===t&&f.clientId!==_e?r(J.ACTIVE_IN_ANOTHER_TAB):r(J.LOCKED)},[s,n,r,t,a])},Vs=()=>{const e=pt(),t=yt(),s=cs(),n=Ks(),{setPageLockMeta:r}=ls(),a=h.useRef(t);return a.current=t,h.useCallback(async(i,l)=>{if(!s)return;const c=l||{};c.userId=e,c.pageId=a.current,c.senderClientId=_e,c.receiverClientId=(l==null?void 0:l.requestingClientId)||(n==null?void 0:n.clientId),await s.send({event:i,payload:c,type:"broadcast"}),r({})},[s,e,n,r])},xr=()=>{const e=pt(),t=yt(),s=cs(),{setPageStatus:n}=re(),{setPageLockMeta:r}=ls(),a=Vs(),i=h.useRef(t),{savePageAsync:l}=P.useSavePage();return i.current=t,h.useCallback(c=>async({payload:d})=>{const u=d||{};if(!(!(u!=null&&u.pageId)||(u==null?void 0:u.pageId)!==i.current||(u==null?void 0:u.receiverClientId)!==_e))switch(r({}),c){case X.FORCE_TAKE_OVER_REQUEST:case X.CONTINUE_EDITING_IN_THIS_TAB_REQUEST:{try{await l(!0)}catch(f){console.error("Failed to save page before releasing lock:",f)}await a(X.CONTINUE_EDITING_IN_THIS_CLIENT,{requestingClientId:u==null?void 0:u.senderClientId}),setTimeout(()=>r({type:c}),0);break}case X.TAKE_OVER_REQUEST:{r({requestingUserId:u==null?void 0:u.userId,requestingClientId:u==null?void 0:u.senderClientId}),n(J.TAKE_OVER_REQUESTED);break}case X.CONTINUE_EDITING_IN_THIS_CLIENT:{const f=Tr(s==null?void 0:s.presenceState());n(J.CHECKING),await(s==null?void 0:s.track({onlineAt:f,pageId:i.current,userId:e,clientId:_e}));break}case X.TAKE_OVER_REJECTED:{r({type:X.TAKE_OVER_REJECTED});break}}},[a,r,n,s,e,l])},_r=()=>{const e=Us(),t=pt(),s=yt(),n=Sr(),[r,a]=H.useAtom(qs),{setPageStatus:i}=re(),l=xr(),c=Pr(),d=h.useRef(l),u=h.useRef(c);h.useEffect(()=>{d.current=l,u.current=c},[l,c]),h.useEffect(()=>{if(!e||!t||!n||r&&r.topic===n)return;const f=e.channel(n,{config:{presence:{key:_e}}});return mr.forEach(E=>{f.on("broadcast",{event:E},m=>{d.current(E)(m)})}),gr.forEach(E=>{f.on("presence",{event:E},()=>{u.current(f)})}),f.subscribe(async E=>{E==="SUBSCRIBED"?(M.toast.dismiss("realtime-connection-error"),a(f)):(E==="CHANNEL_ERROR"||E==="TIMED_OUT")&&(console.log("Realtime connection failed",E),M.toast.error("Realtime connection failed. Please reload the page.",{id:"realtime-connection-error",duration:1/0,action:{label:"Reload",onClick:()=>window.location.reload()},position:"bottom-center"}),a(null),i(J.CONNECTION_LOST))}),()=>{f.unsubscribe(),a(null)}},[e,t,n,a]),h.useEffect(()=>(r&&s&&t&&r.track({pageId:s,userId:t,clientId:_e,onlineAt:+new Date}),()=>{r&&s&&r.untrack()}),[r,s,t])},Mt=()=>{const{data:e}=Te();return h.useMemo(()=>(e==null?void 0:e.fallbackLang)||"en",[e])},us=()=>{const e=N(),t=G();return S.useQuery({queryKey:[y.GET_WEBSITE_PAGES],staleTime:1e3*60*5,queryFn:async()=>e(t,{action:y.GET_WEBSITE_PAGES})||[],placeholderData:s=>s||[]})},wr=e=>{const t=N(),s=G(),n=Mt();return S.useQuery({queryKey:[y.GET_WEBSITE_PAGES,e,n],staleTime:1e3*60*5,enabled:!!e,queryFn:async()=>{if(n===e)return{};const r=await t(s,{action:y.GET_WEBSITE_PAGES,data:{lang:e}})||[];return p.keyBy(p.map(r,a=>({...a,lang:e})),"primaryPage")},placeholderData:r=>r||{}})},vr=h.lazy(()=>Promise.resolve().then(()=>require("./page-manager-new-D44_zdpQ.cjs"))),Hs=({children:e})=>{const{t}=P.useTranslation(),[s,n]=le(),r=s.get("page"),{data:a,isFetching:i}=te(),{data:l,isFetching:c}=us(),[d,u]=h.useState(!1),[f,E]=h.useState(!0),{savePage:m}=P.useSavePage(),A=!!r&&!p.isEmpty(a),{isLocked:w}=re(),v=h.useMemo(()=>{if(!l||c)return!1;const L=l.find(q=>q.slug==="/");return L==null?void 0:L.id},[l,c]);h.useEffect(()=>{if(c||!v||l.some(j=>j.id===r))return;const q=new URLSearchParams({page:v});is(q,n),!c&&l&&E(!1)},[r,c,l,v,n]);const U=!f&&!r,T=!f&&!i&&p.isEmpty(a),C=d||U||T;return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"flex items-center gap-x-1",children:o.jsx("div",{className:"relative",children:o.jsxs(g.Tooltip,{children:[o.jsx(g.TooltipTrigger,{asChild:!0,onClick:()=>{w||m(),u(!0)},children:e||o.jsx(g.Button,{variant:"outline",className:"flex w-full items-center space-x-2 py-1",children:o.jsx(_.LogsIcon,{className:"h-4 w-4"})},"template-viewer")}),o.jsx(g.TooltipContent,{side:"right",children:o.jsx("p",{children:t("Open pages manager")})})]})})}),o.jsx(g.Sheet,{open:C,onOpenChange:L=>!L&&A&&u(!1),children:o.jsxs(g.SheetContent,{side:"left","aria-describedby":"pages-manager-description",className:`z-50 !min-w-[50vh] !max-w-[800px] border-border p-0 ${A?"":"sheet-hide-close-btn"}`,children:[o.jsxs(g.SheetHeader,{className:"mb-3 px-4 pt-4",children:[o.jsxs(g.SheetTitle,{className:"flex items-center gap-2 text-sm font-semibold",children:[o.jsx("div",{className:"flex h-9 w-9 items-center justify-center rounded-lg bg-primary text-primary-foreground",children:o.jsx(_.Folder,{className:"h-4 w-4"})}),o.jsxs("div",{className:"flex flex-col",children:[o.jsx("span",{className:"text-sm font-semibold",children:t("Pages")}),o.jsx("span",{id:"pages-manager-description",className:"text-xs font-normal text-muted-foreground",children:t("Manage your site structure")})]})]}),o.jsx(g.SheetDescription,{className:"sr-only",children:t("Manage your site structure")})]}),o.jsx("div",{className:"h-[calc(100vh-80px)] overflow-y-auto",children:C&&o.jsx(h.Suspense,{children:o.jsx(vr,{close:()=>u(!1)})})})]})})]})},br=h.lazy(()=>Promise.resolve().then(()=>require("./add-new-language-page-DmQ_eB85.cjs"))),Ir=()=>{const e=ne("topLeftCorner",null);return e?o.jsx("div",{className:"max-h-9 w-full overflow-hidden pr-2",children:h.createElement(e,{})}):null},Qs=({showAdd:e=!0,variant:t="ghost",goToDefaultLang:s=!1})=>{const{fallbackLang:n,languages:r,selectedLang:a,setSelectedLang:i}=P.useLanguages(),l=p.isEmpty(a)?n:a,[,c]=le(),{isLocked:d}=re(),{t:u}=P.useTranslation();h.useEffect(()=>{const T=new URLSearchParams(window.location.search),C=T.get("lang");C&&(r.includes(C)?i(C):(T.delete("lang"),c(T),i("")))},[r,c,i]);const[,f]=H.useAtom(kt),{data:E}=te(),{data:m}=Te(),{data:A}=Ae(),w=h.useMemo(()=>{const T=p.compact(p.map(p.get(m,"languages"),C=>{const L=p.find(A,{lang:C});return{key:C,value:p.get($e,C,C),isLangPageAdded:!!L}})).filter(Boolean);return[{key:n,value:p.get($e,n),isLangPageAdded:!0},...T]},[n,A,m]),v=T=>{if(document.querySelector('[data-panel-id="seo"]')){const L=new CustomEvent("seo-language-switch-check",{detail:{fromLang:l,toLang:T,switchHandler:()=>U(T)}});window.dispatchEvent(L);return}U(T)},U=T=>{i(T);const C=new URLSearchParams(window.location.search);T===n?C.delete("lang"):C.set("lang",T),is(C,c)};return p.isEmpty(r)?null:d?o.jsxs(g.Button,{variant:"ghost",size:"sm",className:"ml-px h-max cursor-not-allowed gap-2 py-1.5 opacity-50",children:[o.jsx(_.Languages,{className:"h-4 w-4"}),p.get($e,l,l),o.jsx(_.ChevronDown,{className:"h-4 w-4"})]}):s?o.jsx(g.Button,{onClick:()=>U(n),variant:"link",size:"sm",children:u("Switch to default language")}):o.jsx(o.Fragment,{children:o.jsxs(g.DropdownMenu,{children:[o.jsx(g.DropdownMenuTrigger,{asChild:!0,className:"focus:outline-none",children:o.jsxs(g.Button,{disabled:!!d,variant:t,size:"sm",className:"ml-px h-max gap-2 py-1.5",children:[o.jsx(_.Languages,{className:"h-4 w-4"}),p.get($e,l,l),o.jsx(_.ChevronDown,{className:"h-4 w-4"})]})}),o.jsxs(g.DropdownMenuContent,{className:"space-y-1 border-border",children:[p.map(w.filter(T=>T.isLangPageAdded),T=>o.jsxs(g.DropdownMenuItem,{className:P.mergeClasses("flex cursor-pointer items-center justify-between text-xs font-medium text-gray-800",T.key===l&&"!bg-gray-200 text-gray-700"),onClick:()=>v(T.key),children:[o.jsx("div",{className:"text-slate-600",children:T.value}),T.key===n&&o.jsxs("small",{className:"flex items-center gap-x-1 text-[9px] leading-none text-orange-500",children:[o.jsx(_.Star,{fill:"orange",className:"h-2 w-2"}),"Primary"]})]},T.value)),e&&!p.isEmpty(w.filter(T=>!T.isLangPageAdded))&&o.jsxs(o.Fragment,{children:[o.jsx(g.Separator,{}),o.jsxs(g.Button,{size:"sm",variant:"ghost",onClick:()=>{E&&f({edit:!1,primaryPage:E.id})},className:"text-xs font-normal duration-200 hover:bg-slate-300 hover:text-slate-800",children:[o.jsx(_.Plus,{className:"mr-1 h-3 w-3"})," Add Langauge"]})]})]})]})})};function Cr(){const[e,t]=H.useAtom(kt);return o.jsxs("div",{className:"relative z-10 flex items-center justify-end gap-1",children:[o.jsx(Ir,{}),o.jsx(Hs,{}),e&&o.jsx(h.Suspense,{children:o.jsx(br,{isOpen:!0,id:e==null?void 0:e.id,edit:!!(e!=null&&e.id),primaryPage:e==null?void 0:e.primaryPage,preselectedLang:e==null?void 0:e.preselectedLang,onClose:()=>t(null)})})]})}function Lr(){return o.jsx("div",{className:"mt-2 space-y-2",children:Array.from({length:5}).map((e,t)=>o.jsxs("div",{className:"flex items-start gap-3 rounded-md border p-2",children:[o.jsxs("div",{className:"flex-1 space-y-1",children:[o.jsx(g.Skeleton,{className:"h-4 w-3/4"}),o.jsx(g.Skeleton,{className:"h-3 w-1/2"}),o.jsx(g.Skeleton,{className:"mt-1 h-5 w-20"})]}),o.jsx(g.Skeleton,{className:"h-8 w-8 rounded-full"})]},t))})}const Nr=z.lazy(()=>Promise.resolve().then(()=>require("./page-revisions-content-CsxGDRzT.cjs")));function jr(){const[e,t]=z.useState(!1);return o.jsx(g.TooltipProvider,{children:o.jsxs(g.Tooltip,{delayDuration:0,children:[o.jsxs(g.Sheet,{open:e,onOpenChange:t,children:[o.jsx(g.SheetTrigger,{asChild:!0,children:o.jsx(g.TooltipTrigger,{asChild:!0,children:o.jsxs("span",{className:"flex items-center gap-2",children:[o.jsxs(g.Button,{variant:"ghost",size:"icon",className:"h-8 w-8",children:[o.jsx(_.History,{className:"h-4 w-4"}),o.jsx("span",{className:"sr-only",children:"View revision history"})]}),o.jsx("div",{className:"h-4 w-px bg-gray-200 dark:bg-gray-700"})]})})}),o.jsx(g.SheetContent,{className:"flex h-[100vh] flex-col",children:e&&o.jsx(h.Suspense,{fallback:o.jsx(Lr,{}),children:o.jsx(Nr,{isOpen:e})})})]}),o.jsx(g.TooltipContent,{side:"bottom",children:o.jsx("p",{children:"Revision history"})})]})})}const xt=({permission:e,permissions:t,children:s,fallback:n=null})=>{const{hasPermission:r}=P.usePermissions();return e&&!r(e)||t&&!t.some(a=>r(a))?n:s},Dr={SLUG_ALREADY_USED:"This slug is already in use. Please choose a different one."},he=()=>{const e=G(),t=N();return S.useQuery({queryKey:[y.GET_PAGE_TYPES],staleTime:1/0,placeholderData:[],queryFn:async()=>t(e,{action:y.GET_PAGE_TYPES})})},zs=e=>{const{data:t}=he();return h.useMemo(()=>t==null?void 0:t.find(s=>s.key===e),[t,e])},Gr=()=>{const e=G(),t=N();return S.useMutation({mutationFn:async({pageType:s,query:n})=>{try{return t(e,{action:y.SEARCH_PAGES,data:{pageType:s,query:Array.isArray(n)&&n.length>0?n[0]:n}})||[]}catch(r){return console.error(r),[]}}})},Or=()=>{const e=G(),t=S.useQueryClient(),s=N(),{data:n}=he();return S.useMutation({mutationFn:async r=>await s(e,{action:y.CREATE_PAGE,data:r}),onSuccess:(r,a)=>{var l;a&&(a!=null&&a.primaryPage)?(t.invalidateQueries({queryKey:[y.GET_LANGUAGE_PAGES,a==null?void 0:a.primaryPage]}),t.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES,a==null?void 0:a.lang]})):t.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]});const i=a.template?`Page created from "${a.template.name}" template`:a.hasSlug===!1?"New "+((l=p.find(n,{key:a.pageType}))==null?void 0:l.name)+" added successfully":"New page added successfully";M.toast.success(i)},onError:(r,a)=>{const i=p.find(n,{key:a.pageType});M.toast.error(`Failed to add new ${i!=null&&i.hasSlug?"page":i.name}.`,{description:p.get(Dr,r.message,r.message)})}})},kr=()=>{const e=G(),t=S.useQueryClient(),s=N(),{data:n}=fe(),{data:r}=he();return S.useMutation({mutationFn:async a=>await s(e,{action:y.UPDATE_PAGE,data:a}),onSuccess:(a,i)=>{(n==null?void 0:n.id)===(i==null?void 0:i.id)&&t.invalidateQueries({queryKey:[y.GET_LANGUAGE_PAGES]}),i&&(i!=null&&i.primaryPage||i!=null&&i.seo)?(t.invalidateQueries({queryKey:[y.GET_LANGUAGE_PAGES,i==null?void 0:i.primaryPage]}),t.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]})):t.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]})},onError:(a,i)=>{const l=p.find(r,{key:i.pageType});M.toast.error(`Failed to update ${l!=null&&l.hasSlug?"page":l.name}.`,{description:a.message})}})},Rr=()=>{const e=G(),t=S.useQueryClient(),s=N(),{data:n}=he();return S.useMutation({mutationFn:async r=>s(e,{action:y.DELETE_PAGE,data:{id:r==null?void 0:r.id}}),onSuccess:(r,a)=>{if(r.code==="PAGE_LOCKED"){M.toast.error("Delete not allowed",{description:"Page is currently being edited by another user."});return}a&&(a!=null&&a.primaryPage)?(t.invalidateQueries({queryKey:[y.GET_LANGUAGE_PAGES,a==null?void 0:a.primaryPage]}),t.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]})):t.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]})},onError:(r,a)=>{const i=p.find(n,{key:a.pageType});M.toast.error(`Failed to delete ${i!=null&&i.hasSlug?"page":i.name}.`,{description:r.message})}})},Mr=()=>{const e=G(),t=S.useQueryClient(),s=N(),{data:n}=he();return S.useMutation({mutationFn:async r=>s(e,{action:y.TAKE_OFFLINE,data:{id:r==null?void 0:r.id}}),onSuccess:(r,a)=>{a&&(a!=null&&a.primaryPage)?t.invalidateQueries({queryKey:[y.GET_LANGUAGE_PAGES,a==null?void 0:a.primaryPage]}):t.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]});const i=p.find(n,{key:a.pageType});M.toast.success(i!=null&&i.hasSlug?"Page unpublished successfully.":"New "+i.name+" added successfully.")},onError:(r,a)=>{const i=p.find(n,{key:a.pageType});M.toast.error(`Failed to take offline ${i!=null&&i.hasSlug?"page":i.name}.`,{description:r.message})}})},ds=()=>{const e=G(),t=N(),s=S.useQueryClient(),{data:n}=te(),{savePageAsync:r}=P.useSavePage();return S.useMutation({mutationFn:async({ids:a})=>(await r(),t(e,{action:y.PUBLISH_CHANGES,data:{ids:a}})),onSuccess:()=>{s.invalidateQueries({queryKey:[y.GET_CHANGES]}),s.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]}),s.invalidateQueries({queryKey:[y.GET_LANGUAGE_PAGES,n==null?void 0:n.id]})},onError:a=>{console.log("##",a),M.toast.error("Failed to publish pages.")}})},Ur=()=>{const e=G(),t=N(),s=S.useQueryClient();return S.useMutation({mutationFn:async n=>{var r;return t(e,{action:y.MARK_AS_TEMPLATE,data:{id:(r=n.page)==null?void 0:r.id,name:n.name,description:n.description,pageType:n.pageType,previewImage:n.previewImage}})},onSuccess:()=>{s.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]}),M.toast.success("Page marked as template successfully.")},onError:()=>{M.toast.error("Failed to mark page as template.")}})},Br=()=>{const e=G(),t=N(),s=S.useQueryClient();return S.useMutation({mutationFn:async n=>t(e,{action:y.UNMARK_AS_TEMPLATE,data:{id:n==null?void 0:n.id}}),onSuccess:()=>{s.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]}),M.toast.success("Page unmarked as template successfully.")},onError:()=>{M.toast.error("Failed to unmark page as template.")}})},Fr=()=>{const e=G(),t=N(),s=S.useQueryClient();return S.useMutation({mutationFn:async({id:n,slug:r})=>t(e,{action:y.CHANGE_SLUG,data:{id:n,slug:r}}),onSuccess:(n,{primaryPage:r})=>{M.toast.success("Slug changed successfully."),r?s.invalidateQueries({queryKey:[y.GET_LANGUAGE_PAGES,r]}):s.invalidateQueries({queryKey:[y.GET_WEBSITE_PAGES]})},onError:()=>{M.toast.error("Failed to change slug")}})},qr=h.lazy(()=>Promise.resolve().then(()=>require("./publish-pages-content-CdwZOxtG.cjs")));function Kr({showModal:e=!1,onClose:t=()=>console.log("Cancelled")}){const{mutate:s,isPending:n}=ds();return o.jsx(g.Dialog,{open:e,onOpenChange:n?()=>{}:t,children:e&&o.jsx(h.Suspense,{fallback:o.jsx("div",{className:"h-96 w-96 animate-pulse bg-gray-100"}),children:o.jsx(qr,{onClose:t,isPending:n,publishPage:s})})})}const se={...P.PERMISSIONS,ADD_PAGE:"add_page",EDIT_PAGE:"edit_page",EDIT_SLUG:"edit_slug",DELETE_PAGE:"delete_page",CHANGE_PAGE_TYPE:"change_page_type",PUBLISH_PAGE:"publish_page",UNPUBLISH_PAGE:"unpublish_page",MARK_AS_TEMPLATE:"mark_as_template",UNMARK_AS_TEMPLATE:"unmark_as_template",ADD_PARTIAL:"add_partial",EDIT_PARTIAL:"edit_partial",DELETE_PARTIAL:"delete_partial",PUBLISH_PARTIAL:"publish_partial",UNPUBLISH_PARTIAL:"unpublish_partial",EDIT_SEO:"edit_seo",RESTORE_REVISION:"restore_revision",DELETE_REVISION:"delete_revision",PUBLISH_THEME:"publish_theme",EDIT_SETTINGS:"edit_settings",ADD_LIBRARY_BLOCK:"create_library_block",ADD_LIBRARY_TEMPLATE:"add_library_template",EDIT_LIBRARY_BLOCK:"edit_library_block",EDIT_LIBRARY_TEMPLATE:"edit_library_template",DELETE_LIBRARY_BLOCK:"delete_library_block",DELETE_LIBRARY_TEMPLATE:"delete_library_template",ADD_MEDIA:"add_media",EDIT_MEDIA:"edit_media",DELETE_MEDIA:"delete_media"},$s=e=>{const{fallbackLang:t}=P.useLanguages(),{data:s}=Te(),{data:n,isFetching:r}=Ae(),a=h.useMemo(()=>{const i={[t]:!0};return p.each(p.get(s,"languages"),l=>{const c=p.find(n,{lang:l});i[l]=!!c}),i},[t,n,s]);return r||p.isEmpty(e)||e&&a[e]},Vr={particleCount:350,spread:120,origin:{y:.6},angle:90},Hr={TOP_RIGHT:{angle:225,origin:{x:.9,y:0}},BOTTOM_RIGHT:{angle:100,origin:{x:.9,y:.9}}},Qr=async()=>{const{default:e}=await Promise.resolve().then(()=>require("./confetti.module-BuUnQuWk.cjs"));return e},_t=e=>{let t=Hr[e];t||(t={});const s={...Vr,...t};Qr().then(n=>n(s))};function Ut({children:e,content:t,side:s="bottom",delayDuration:n=700,showTooltip:r=!0}){return r?o.jsx(g.TooltipProvider,{children:o.jsxs(g.Tooltip,{delayDuration:n,children:[o.jsx(g.TooltipTrigger,{asChild:!0,children:e}),o.jsx(g.TooltipContent,{side:s,sideOffset:10,children:o.jsx("p",{children:t})})]})}):e}const zr=h.lazy(()=>Promise.resolve().then(()=>require("./unpublish-page-uIYo5nwG.cjs"))),$r=h.lazy(()=>Promise.resolve().then(()=>require("./translation-warning-modal-Kctu12rQ.cjs"))),Wr=()=>{const{t:e}=P.useTranslation(),{selectedLang:t,fallbackLang:s}=P.useLanguages(),n=ne("getPreviewUrl",async E=>E),[r,a]=h.useState(""),{data:i}=te(),{data:l}=Ae(),{data:c}=he(),d=h.useMemo(()=>{var E;return(E=l==null?void 0:l.find(m=>(m==null?void 0:m.lang)===t))==null?void 0:E.slug},[t,l]),u=h.useCallback(E=>{var m;return(m=p.find(c,{key:E}))==null?void 0:m.hasSlug},[c]),f=t===s?"":t;return h.useEffect(()=>{(async()=>{if(typeof n=="function"){const E=!u(i==null?void 0:i.pageType),m=await n(E?`${f!==""?f+"/":""}${i==null?void 0:i.id}`:d||"");a(m)}else a("")})()},[n,d,i==null?void 0:i.pageType,u,i==null?void 0:i.id,f]),o.jsx(o.Fragment,{children:o.jsx(Ut,{content:e("Open preview in new tab"),delayDuration:0,children:o.jsx("a",{href:r,target:"_blank",rel:"noopener noreferrer",children:o.jsx(g.Button,{variant:"ghost",size:"sm",className:"gap-2",children:o.jsx(_.Play,{className:"h-4 w-4"})})})})})},Yr=()=>{const{t:e}=P.useTranslation(),[t,s]=P.useRightPanel();return o.jsxs(o.Fragment,{children:[o.jsx(Ut,{content:e("Theme"),delayDuration:0,children:o.jsx(g.Button,{variant:t==="theme"?"outline":"ghost",size:"icon",className:"gap-2",onClick:()=>s(t==="theme"?"block":"theme"),children:o.jsx(_.Palette,{className:"h-4 w-4"})})}),o.jsx("div",{className:"h-4 w-px bg-gray-200 dark:bg-gray-700"})]})},Jr=()=>{const{t:e}=P.useTranslation(),[t,s]=h.useState(!1),{isLocked:n}=re(),{savePageAsync:r,saveState:a}=P.useSavePage();h.useEffect(()=>{const u=f=>{a==="UNSAVED"&&(f.preventDefault(),f.returnValue=!1)};return a==="UNSAVED"&&window.addEventListener("beforeunload",u),()=>{window.removeEventListener("beforeunload",u)}},[a]);const i=h.useCallback(async()=>{t||(s(!0),await r(),s(!1))},[r,t]),{buttonIcon:l,buttonClass:c,tooltipContent:d}=h.useMemo(()=>{switch(a){case"UNSAVED":return{tooltipContent:e("Save draft"),buttonIcon:o.jsx(_.Save,{className:"h-4 w-4"}),buttonClass:"gap-x-1"};case"SAVING":return{tooltipContent:e("Saving"),buttonIcon:o.jsx(_.Loader,{className:"h-4 w-4 animate-spin text-sky-700"}),buttonClass:"gap-x-1"};case"SAVED":return{tooltipContent:e("Saved"),buttonIcon:o.jsx(_.CheckCircle,{className:"h-4 w-4"}),buttonClass:"text-green-500 gap-x-1"}}},[a,e]);return n?null:o.jsxs(g.Button,{size:"sm",variant:"ghost",onClick:i,className:`${c} w-24 max-w-24`,children:[l," ",d]})},Zr=()=>{const{t:e}=P.useTranslation(),{selectedLang:t}=P.useLanguages(),{data:s}=fe(),{data:n}=Ae(),[r,a]=h.useState(!1),[i,l]=h.useState(!1),[c,d]=h.useState(null),{savePageAsync:u}=P.useSavePage(),[f,E]=h.useState(!1),{data:m}=te(),{mutate:A,isPending:w}=ds(),{needTranslations:v}=P.useSavePage(),U=v(),{buttonText:T,buttonClassName:C,isPublished:L}=h.useMemo(()=>{const I=m&&(m==null?void 0:m.online);return{buttonClassName:I?"hover:bg-green-600 bg-green-500":"",isPublished:I,buttonText:e(I?"Published":"Publish")}},[m,e]),q=async()=>{if(U){E(!0);return}j()},j=()=>{const I=[s==null?void 0:s.id,s==null?void 0:s.primaryPage];A({ids:p.compact(I)},{onSuccess:()=>_t("TOP_RIGHT")})},ce=()=>{E(!1),j()},ue=async()=>{E(!1),await u()},K=h.useMemo(()=>p.map(n??[],"id"),[n]);return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"flex",children:[o.jsxs(g.Button,{size:"sm",onClick:q,disabled:w||!(m!=null&&m.id),className:`relative flex items-center gap-1 overflow-hidden rounded-r-none text-white transition-all duration-300 ease-in-out ${C}`,onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),children:[o.jsx("span",{className:`flex items-center transition-transform duration-300 ease-in-out ${i?"-translate-y-10":""}`,children:L?o.jsx(_.Send,{className:"h-4 w-4"}):o.jsx(_.Rocket,{className:"h-4 w-4"})}),o.jsx("span",{className:`absolute inset-0 left-3 flex items-center transition-transform duration-300 ease-in-out ${i?"":"translate-y-10"}`,children:L?o.jsx(_.Rocket,{className:"h-4 w-4"}):o.jsx(_.Send,{className:"h-4 w-4"})}),o.jsx("span",{children:T}),t?`(${p.upperCase(t)})`:""]}),o.jsxs(g.DropdownMenu,{children:[o.jsx(g.DropdownMenuTrigger,{asChild:!0,children:o.jsx(g.Button,{size:"sm",disabled:w||!(m!=null&&m.id),className:`rounded-l-none border-l border-white/50 px-2 text-white ${C}`,children:o.jsx(_.ChevronDown,{className:"h-4 w-4"})})}),o.jsxs(g.DropdownMenuContent,{align:"end",className:"w-52",children:[o.jsxs(g.DropdownMenuItem,{disabled:w,className:"cursor-pointer text-xs",onClick:()=>A({ids:K},{onSuccess:()=>_t("TOP_RIGHT")}),children:[e("Publish")," with translation pages"]}),!L&&o.jsxs(g.DropdownMenuItem,{disabled:w,className:"cursor-pointer text-xs",onClick:()=>A({ids:[m==null?void 0:m.id]},{onSuccess:()=>_t("TOP_RIGHT")}),children:[e("Publish")," page"]}),o.jsxs(g.DropdownMenuItem,{onClick:()=>a(!0),className:"cursor-pointer text-xs",children:[e("Open")," publish menu"]}),L&&o.jsxs(g.DropdownMenuItem,{onClick:()=>d(s),className:"cursor-pointer text-xs",children:[e("Unpublish")," page ",t?`(${p.upperCase(t)})`:""]})]})]})]}),o.jsx(Kr,{showModal:r,onClose:()=>a(!1)}),c&&o.jsx(h.Suspense,{children:o.jsx(zr,{page:c,onClose:()=>d(null)})}),f&&o.jsx(h.Suspense,{children:o.jsx($r,{isOpen:f,onClose:ue,onContinue:ce,isPending:w})})]})};function Xr(){const{isLocked:e}=re(),[t]=le(),s=t.get("lang"),n=$s(s);return e||!n?o.jsx("div",{}):o.jsxs("div",{className:"flex items-center justify-end gap-1",children:[o.jsx(jr,{}),o.jsx(xt,{permission:se.EDIT_THEME,children:o.jsx(Yr,{})}),o.jsx(Wr,{}),o.jsx(xt,{permission:se.SAVE_PAGE,children:o.jsx(Jr,{})}),o.jsx(xt,{permission:se.PUBLISH_PAGE,children:o.jsx(Zr,{})})]})}const Ws=({page:e,setDuplicatePage:t,setAddEditPage:s,setUnpublishPage:n,setDeletePage:r,setMarkAsTemplate:a,setUnmarkAsTemplate:i,children:l,isLanguagePage:c})=>{const{t:d}=P.useTranslation(),{hasPermission:u}=P.usePermissions(),{data:f}=he(),E=h.useMemo(()=>p.find(f,{key:e.pageType}),[f,e.pageType]),m=h.useMemo(()=>!!e.isTemplate,[e.isTemplate]),A=h.useMemo(()=>!!(E!=null&&E.hasSlug),[E==null?void 0:E.hasSlug]);return!u(se.EDIT_PAGE)&&!u(se.DELETE_PAGE)&&!u(se.UNPUBLISH_PAGE)||!e?null:o.jsxs(g.DropdownMenu,{children:[o.jsx(g.DropdownMenuTrigger,{asChild:!0,onClick:v=>v.stopPropagation(),children:l}),o.jsxs(g.DropdownMenuContent,{align:"center",className:"text-sm",children:[u(se.ADD_PAGE)&&!c&&o.jsxs(g.DropdownMenuItem,{className:"flex cursor-pointer items-center gap-2",onClick:v=>{v.stopPropagation(),t(e)},children:[o.jsx(_.CopyPlusIcon,{className:"size-3"}),"Duplicate page"]}),u(se.EDIT_PAGE)&&o.jsxs(g.DropdownMenuItem,{className:"flex cursor-pointer items-center gap-2",onClick:v=>{v.stopPropagation(),s({...e,global:!(E!=null&&E.hasSlug)})},children:[o.jsx(_.Pencil,{className:"size-3"}),"Edit"]}),(e==null?void 0:e.online)&&u(se.UNPUBLISH_PAGE)&&o.jsxs(g.DropdownMenuItem,{className:"flex cursor-pointer items-center gap-2",onClick:v=>{v.stopPropagation(),n(e)},children:[o.jsx(_.Power,{className:"size-3"}),d("Unpublish")]}),u(se.DELETE_PAGE)&&o.jsxs(g.DropdownMenuItem,{className:"flex cursor-pointer items-center gap-2",onClick:v=>{v.stopPropagation(),r(e)},children:[o.jsx(_.Trash,{className:"size-3"}),d("Delete")]}),u(se.MARK_AS_TEMPLATE)&&A&&!c&&o.jsx(o.Fragment,{children:m?o.jsxs(g.DropdownMenuItem,{className:"flex cursor-pointer items-center gap-2",onClick:v=>{v.stopPropagation(),i(e)},children:[o.jsx(_.SquareLibrary,{className:"size-3"}),d("Unmark as template")]}):o.jsxs(g.DropdownMenuItem,{className:"flex cursor-pointer items-center gap-2",onClick:v=>{v.stopPropagation(),a(e)},children:[o.jsx(_.SquareLibrary,{className:"size-3"}),d("Mark as template")]})})]})]})},ea=h.lazy(()=>Promise.resolve().then(()=>require("./add-new-page-BImvK_fV.cjs"))),ta=h.lazy(()=>Promise.resolve().then(()=>require("./delete-page-OGCRZzrG.cjs"))),sa=h.lazy(()=>Promise.resolve().then(()=>require("./duplicate-page-Co3QgE3M.cjs"))),na=h.lazy(()=>Promise.resolve().then(()=>require("./mark-as-template-Br9qxjbc.cjs"))),ra=h.lazy(()=>Promise.resolve().then(()=>require("./unmark-as-template-4A6kxi6r.cjs"))),aa=h.lazy(()=>Promise.resolve().then(()=>require("./unpublish-page-uIYo5nwG.cjs"))),ia=()=>{const[e,t]=h.useState(null),[s,n]=h.useState(null),[r,a]=h.useState(null),[i,l]=h.useState(null),[c,d]=h.useState(null),[u,f]=h.useState(null),{data:E,isFetching:m}=fe(),{selectedLang:A,fallbackLang:w}=P.useLanguages(),{data:v}=Ae(),U=v==null?void 0:v.find(j=>j.lang===A),{isLocked:T}=re(),C=!(E!=null&&E.slug),[,L]=H.useAtom(kt);if(!E)return null;const q=j=>{A.length>0&&A!==w?L({edit:!0,id:j==null?void 0:j.id,primaryPage:j==null?void 0:j.primaryPage}):f(j)};return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"flex items-center justify-between rounded px-[2px] transition-colors duration-200",children:[o.jsx(Hs,{children:o.jsx(g.Button,{className:"flex h-7 max-w-[200px] cursor-pointer items-center truncate rounded px-1 text-xs font-medium",variant:"ghost",children:m?o.jsx(_.Loader,{className:"h-4 w-4 animate-spin text-slate-400"}):o.jsxs("span",{className:"flex w-full cursor-pointer items-end overflow-hidden text-ellipsis whitespace-nowrap rounded-sm text-xs font-medium",children:[C?o.jsx(_.Hash,{className:"mr-1 h-4 w-4"}):o.jsx(_.File,{className:"mr-1 h-4 w-4"}),p.get(U||E,"name")??""]})})}),T?o.jsx(g.Button,{variant:"ghost",size:"icon",className:"h-7 w-7 cursor-not-allowed rounded opacity-50 hover:bg-transparent",children:o.jsx(_.MoreHorizontal,{className:"h-4 w-4"})}):o.jsx(Ws,{page:E,setDuplicatePage:j=>d(j),setAddEditPage:j=>q(j),setUnpublishPage:j=>n(j),setDeletePage:j=>t(j),setMarkAsTemplate:j=>a(j),setUnmarkAsTemplate:j=>l(j),isLanguagePage:A.length>0&&A!==w,children:o.jsx(g.Button,{variant:"ghost",size:"icon",className:"h-7 w-7 rounded",children:o.jsx(_.MoreHorizontal,{className:"h-4 w-4"})})})]}),u&&o.jsx(h.Suspense,{children:o.jsx(ea,{closePanel:()=>f(null),editPage:()=>{},addEditPage:u,setAddEditPage:f})}),e&&o.jsx(h.Suspense,{children:o.jsx(ta,{page:e,onClose:()=>t(null)})}),s&&o.jsx(h.Suspense,{children:o.jsx(aa,{page:s,onClose:()=>n(null)})}),r&&o.jsx(h.Suspense,{children:o.jsx(na,{page:r,onClose:()=>a(null)})}),i&&o.jsx(h.Suspense,{children:o.jsx(ra,{page:i,onClose:()=>l(null)})}),c&&o.jsx(h.Suspense,{children:o.jsx(sa,{page:c,onClose:()=>d(null),closePanel:()=>f(null)})})]})},fs=({children:e,className:t=""})=>o.jsx("div",{className:P.mergeClasses("fixed bottom-0 left-0 right-0 top-[50px] z-[20] flex w-screen flex-col items-center justify-center bg-black/40 transition-all",t),children:e}),oa=({hasDynamicPage:e})=>o.jsx(fs,{children:o.jsxs("div",{className:"flex min-w-[300px] max-w-[400px] flex-col items-center justify-center rounded-lg border bg-white p-4 shadow-lg",children:[o.jsx("h1",{className:"text-lg font-medium",children:e?"Select a page":"No pages found"}),o.jsx("p",{className:"pt-2 text-center text-sm font-light text-gray-600",children:e?"Please select a page from the list in the top header. This will enable you to edit the page.":"Please add a new page"})]})}),la=h.lazy(()=>Promise.resolve().then(()=>require("./dynamic-page-selector-CL-sCDkO.cjs"))),ca=()=>{const{dynamicPage:e,allLangPages:t,isFetching:s}=Fs(),n=t.length>0;return s?null:o.jsxs("div",{className:"relative",children:[!e&&o.jsx(oa,{hasDynamicPage:n}),o.jsx(h.Suspense,{children:o.jsx(la,{})})]})},ua=()=>{const{data:e,isFetching:t}=fe(),{data:s,isFetching:n}=te(),r=p.get(s,"dynamic",!1),a=rs(),i=P.useChaiFeatureFlag("dynamic-page-selector"),l=e==null?void 0:e.slug,c=!l,d=hr(),u=t||n,E=(c?`Partial: ${e==null?void 0:e.name} `:`${l}${a}`).replace(window.location.host,"");return o.jsxs("div",{className:"relative flex items-center gap-x-1",children:[o.jsx("div",{className:P.mergeClasses("flex h-8 w-auto max-w-[600px] items-center rounded-md border border-gray-200 bg-white shadow-sm dark:border-gray-700 dark:bg-gray-800",u&&"max-w-0 overflow-hidden opacity-0"),children:o.jsx(ia,{})}),o.jsxs("div",{className:P.mergeClasses("flex h-8 w-auto max-w-[600px] items-center rounded-md border border-gray-200 bg-white shadow-sm dark:border-gray-700 dark:bg-gray-800"+(c?" pr-2":""),u&&"max-w-0 overflow-hidden opacity-0"),children:[o.jsx(Qs,{}),o.jsxs("div",{className:"flex w-full items-center overflow-hidden",children:[o.jsx("div",{className:`w-full max-w-[200px] overflow-hidden overflow-ellipsis whitespace-nowrap pl-1 text-xs ${c?"italic text-gray-400":"font-mono text-gray-500"}`,children:E==="/"?o.jsxs("span",{className:"text-gray-900",children:["/",o.jsx("span",{className:"text-[11px] font-light italic text-gray-400",children:"(Homepage)"})]}):E}),!c&&o.jsx("a",{href:d,target:"_blank",rel:"noopener noreferrer",children:o.jsx("div",{className:"ml-2 mr-px flex-shrink-0 rounded-sm p-1.5 text-gray-500 hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300",children:o.jsx(_.ExternalLink,{className:"h-4 w-4",strokeWidth:1})})})]})]}),r&&i&&o.jsx(ca,{})]})},da=()=>o.jsxs("div",{className:"flex h-full w-full items-center justify-between px-2",children:[o.jsx(Cr,{}),o.jsx(ua,{}),o.jsx(Xr,{})]}),Ys=()=>{const e=S.useQueryClient(),{data:t}=S.useQuery({queryKey:[y.AI_CONTEXT],initialData:"",queryFn:()=>"",staleTime:0});return{setAiContext:h.useCallback(n=>{e.setQueryData([y.AI_CONTEXT],n)},[e]),aiContext:t}},fa=()=>{const e=G(),{aiContext:t}=Ys(),s=N();return h.useCallback(async(n,r,a,i)=>s(e,{action:y.ASK_AI,data:{type:n,prompt:r,blocks:a,context:t,lang:i}}),[e,t,s])},ha=(e,t)=>t.map(s=>{if(p.has(e,s._type)){const n=Rs.getDefaultBlockProps(s._type);return{...n,...p.pick(s,[...p.keys(n),"_type","_id","_name","_parent","_bindings"]),...p.pickBy(s,(r,a)=>p.endsWith(a,"_attrs")),...s}}return s}),ga=e=>{const t=Rs.useRegisteredChaiBlocks();return h.useMemo(()=>{if(!e||p.isEmpty(e))return{blocks:[]};const s=p.filter(e,n=>!p.includes(n==null?void 0:n._type,"@chai/"));return{blocks:ha(t,s)}},[e,t])},ma=()=>{const[e]=le(),t=e.get("page"),s=G(),{setAiContext:n}=Ys(),[,r]=as(),[,a]=fr(),[,i]=P.useIsPageLoaded(),l=N();return S.useQuery({queryKey:[y.GET_DRAFT_PAGE,t],staleTime:1/0,gcTime:0,queryFn:async()=>{i(!1);const c=await l(s,{action:y.GET_DRAFT_PAGE,data:{id:t,draft:!0}}),d=c.blocks??[],u=p.find(d,{_type:"@chai/ai-context"});return n(p.get(u,"_value","")||""),r(f=>({...f,lastSaved:c.lastSaved})),a(p.get(c,"metadata",{})),setTimeout(()=>i(!0),500),d},enabled:!!t})},Js=()=>{const{data:e}=te(),{data:t}=fe(),s=G(),n=N(),r=Mt(),a=rs();return S.useQuery({queryKey:[y.GET_BUILDER_PAGE_DATA,t==null?void 0:t.id,a],staleTime:1/0,gcTime:0,queryFn:async()=>n(s,{action:y.GET_BUILDER_PAGE_DATA,data:{pageType:e==null?void 0:e.pageType,lang:(t==null?void 0:t.lang)||r,dynamic:e==null?void 0:e.dynamic,pageProps:{slug:(t==null?void 0:t.slug)+a,searchParams:{},pageType:t==null?void 0:t.pageType,fallbackLang:r,lastSaved:t.lastSaved,pageId:e.id,primaryPageId:t.primaryPage||e.id,pageBaseSlug:t==null?void 0:t.slug,dynamic:e==null?void 0:e.dynamic,languagePageId:t.id,metadata:e.metadata||{}}}}),enabled:!!(e!=null&&e.pageType)&&!!t.id})},Zs=()=>{const e=G(),t=S.useQueryClient(),s=N();return S.useMutation({mutationFn:async n=>s(e,{action:y.UPDATE_WEBSITE_SETTINGS,data:n}),onSuccess:(n,r)=>{var a;t.invalidateQueries({queryKey:[y.GET_WEBSITE_DRAFT_SETTINGS]}),(a=r==null?void 0:r.settings)!=null&&a.theme||M.toast.success("Website settings updated successfully.")},onError:n=>{M.toast.error("Failed to update website settings",{description:n.message})}})},Ea=()=>{const e=G(),t=S.useQueryClient(),s=N(),{selectedLang:n}=P.useLanguages();return S.useMutation({mutationFn:async r=>s(e,{action:y.ADD_GLOBAL_SCHEMA,data:{...r,lang:n}}),onSuccess:()=>{t.invalidateQueries({queryKey:[y.GET_GLOBAL_JSONLD_ITEMS]}),M.toast.success("Schema added successfully.")},onError:r=>{M.toast.error("Failed to add schema",{description:r.message})}})},pa=()=>{const e=G(),t=S.useQueryClient(),s=N(),{selectedLang:n}=P.useLanguages();return S.useMutation({mutationFn:async r=>s(e,{action:y.UPDATE_GLOBAL_SCHEMA,data:{...r,lang:n}}),onSuccess:()=>{t.invalidateQueries({queryKey:[y.GET_GLOBAL_JSONLD_ITEMS]}),M.toast.success("Schema updated successfully.")},onError:r=>{M.toast.error("Failed to update schema",{description:r.message})}})},ya=()=>{const e=G(),t=S.useQueryClient(),s=N();return S.useMutation({mutationFn:async n=>s(e,{action:y.DELETE_GLOBAL_SCHEMA,data:{id:n}}),onSuccess:()=>{t.invalidateQueries({queryKey:[y.GET_GLOBAL_JSONLD_ITEMS]}),M.toast.success("Schema deleted successfully.")},onError:n=>{M.toast.error("Failed to delete schema",{description:n.message})}})},Aa=()=>{const e=G(),t=N();return S.useMutation({mutationFn:async s=>t(e,{action:y.TOGGLE_PAGE_GLOBAL_SCHEMA,data:s}),onError:s=>{M.toast.error("Failed to toggle schema",{description:s.message})}})},Ta=()=>{const e=G(),t=N();return S.useMutation({mutationFn:async s=>t(e,{action:y.APPLY_SCHEMA_TO_ALL_PAGES,data:{schemaId:s}}),onSuccess:s=>{M.toast.success(`Schema applied to ${s.count} page(s)`)},onError:s=>{M.toast.error("Failed to apply schema to all pages",{description:s.message})}})},Sa=()=>{const e=G(),t=N();return S.useMutation({mutationFn:async s=>t(e,{action:y.REMOVE_SCHEMA_FROM_ALL_PAGES,data:{schemaId:s}}),onSuccess:s=>{M.toast.success(`Schema removed from ${s.count} page(s)`)},onError:s=>{M.toast.error("Failed to remove schema from all pages",{description:s.message})}})},xs={async getUILibraryBlock(e,t,s){const n=await t(s,{action:"GET_LIBRARY_ITEM",data:{id:e.id}}),r=p.get(n,"html",""),a=p.get(n,"blocks",[]);return p.isArray(a)?a:P.getBlocksFromHTML(r)},async getUILibraryBlocks(e,t,s){try{return(await t(s,{action:"GET_LIBRARY_ITEMS",data:{id:e.id}})).map(r=>({...r}))}catch(n){return console.error(n),[]}}},Pa=()=>{const e=G(),t=N();return S.useQuery({queryKey:["uiLibraries"],staleTime:"static",queryFn:async()=>{const n=(await t(e,{action:"GET_LIBRARIES"})).map(r=>({...r}));return n.forEach(r=>{P.registerChaiLibrary(r.id,{name:r.isSiteLibrary?r.name+" (Current Site) ":r.name,description:r.description,getBlocksList:a=>xs.getUILibraryBlocks(a,t,e),getBlock:({block:a})=>xs.getUILibraryBlock(a,t,e)})}),n}})},Xs=()=>{const e=Ms(),t=N(),{user:s}=Rt(),n=s==null?void 0:s.id;return S.useQuery({queryKey:[y.GET_ROLE_AND_PERMISSIONS,n],queryFn:()=>t(e,{action:y.GET_ROLE_AND_PERMISSIONS,data:{userId:n}}),enabled:!!n,staleTime:1/0})},xa=()=>{const e=G(),t=N(),[,s]=as();return{onSave:async({page:r,blocks:a,needTranslations:i})=>{try{const l=await t(e,{action:"UPDATE_PAGE",data:{id:r,blocks:a,needTranslations:i}});return l.code==="PAGE_LOCKED"?!0:(s(c=>({...c,lastSaved:new Date().toISOString()})),l)}catch(l){return console.error(l),new Error("Failed to save blocks")}}}},_a=()=>{const{data:e}=us(),t=G(),s=N();return{getPartialBlocks:h.useCallback(async()=>{const n={};for(const r of e??[])p.isEmpty(r==null?void 0:r.slug)&&(n[r.id]={type:r.pageType,name:p.startCase(r.name??r.slug),description:""});return n},[e]),getPartialBlockBlocks:h.useCallback(async n=>{if(!n)return[];try{const r=await s(t,{action:"GET_DRAFT_PAGE",data:{id:n,draft:!0,editor:!1}});return p.filter(r.blocks,a=>p.has(a,"_id"))}catch(r){return console.error(r),[]}},[s,t])}},wa=h.lazy(()=>Promise.resolve().then(()=>require("./ai-panel-content-BGMRcgkl.cjs")).then(e=>e.aiPanelContent)),en="chai-chat-panel",va=({className:e="h-full w-full"})=>o.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",version:"1.1",className:e,children:[o.jsx("title",{children:"ai"}),o.jsx("g",{id:"Page-1",stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd",children:o.jsx("g",{id:"icon",fill:"currentColor",transform:"translate(64.000000, 64.000000)",children:o.jsx("path",{d:"M320,64 L320,320 L64,320 L64,64 L320,64 Z M171.749388,128 L146.817842,128 L99.4840387,256 L121.976629,256 L130.913039,230.977 L187.575039,230.977 L196.319607,256 L220.167172,256 L171.749388,128 Z M260.093778,128 L237.691519,128 L237.691519,256 L260.093778,256 L260.093778,128 Z M159.094727,149.47526 L181.409039,213.333 L137.135039,213.333 L159.094727,149.47526 Z M341.333333,256 L384,256 L384,298.666667 L341.333333,298.666667 L341.333333,256 Z M85.3333333,341.333333 L128,341.333333 L128,384 L85.3333333,384 L85.3333333,341.333333 Z M170.666667,341.333333 L213.333333,341.333333 L213.333333,384 L170.666667,384 L170.666667,341.333333 Z M85.3333333,0 L128,0 L128,42.6666667 L85.3333333,42.6666667 L85.3333333,0 Z M256,341.333333 L298.666667,341.333333 L298.666667,384 L256,384 L256,341.333333 Z M170.666667,0 L213.333333,0 L213.333333,42.6666667 L170.666667,42.6666667 L170.666667,0 Z M256,0 L298.666667,0 L298.666667,42.6666667 L256,42.6666667 L256,0 Z M341.333333,170.666667 L384,170.666667 L384,213.333333 L341.333333,213.333333 L341.333333,170.666667 Z M0,256 L42.6666667,256 L42.6666667,298.666667 L0,298.666667 L0,256 Z M341.333333,85.3333333 L384,85.3333333 L384,128 L341.333333,128 L341.333333,85.3333333 Z M0,170.666667 L42.6666667,170.666667 L42.6666667,213.333333 L0,213.333333 L0,170.666667 Z M0,85.3333333 L42.6666667,85.3333333 L42.6666667,128 L0,128 L0,85.3333333 Z",id:"Combined-Shape"})})})]}),ba=({isActive:e,show:t})=>o.jsx(g.Button,{size:"icon",className:"p-0 [&_svg]:size-6",onClick:t,variant:e?"default":"ghost",children:o.jsx(va,{className:e?"h-5 w-5 text-white":"h-5 w-5 text-primary"})}),Ia={id:en,label:"AI Assistant",button:ba,panel:wa,position:"top"},Ca=h.lazy(()=>Promise.resolve().then(()=>require("./lang-panel-DWj5wlfo.cjs"))),La=({isActive:e,show:t})=>{const{data:s}=Te();return!p.has(s,"languages")||!p.get(s,"languages",[]).length?null:o.jsx(g.Button,{size:"sm",onClick:t,variant:e?"default":"ghost",children:o.jsx(_.LanguagesIcon,{className:"h-4 w-4"})})},tn="lang",Na={id:tn,label:"Languages",position:"top",panel:Ca,button:La,view:"modal",width:400},ja=h.lazy(()=>Promise.resolve().then(()=>require("./seo-panel-CaXQTicZ.cjs"))),sn="seo",Da=({isActive:e,show:t})=>{const{data:s}=te(),n=zs(s==null?void 0:s.pageType);return!p.has(n,"hasSlug")||!n.hasSlug?null:o.jsx(g.Button,{size:"icon",className:"my-1 p-0",onClick:t,variant:e?"default":"ghost",children:o.jsxs("svg",{stroke:"currentColor",fill:"none",style:{height:"20px",width:"20px"},strokeWidth:"2",viewBox:"0 0 24 24",strokeLinecap:"round",strokeLinejoin:"round",children:[o.jsx("path",{d:"M7 8h-3a1 1 0 0 0 -1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-3"}),o.jsx("path",{d:"M14 16h-4v-8h4"}),o.jsx("path",{d:"M11 12h2"}),o.jsx("path",{d:"M17 8m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z"})]})})},Ga={id:sn,label:"SEO",panel:ja,button:Da,position:"top",width:600,view:"modal"},nn="user-info",Oa=()=>{const{t:e}=P.useTranslation(),{user:t,logout:s}=Rt(),n=ne("onLogout",p.noop);return t?o.jsxs(g.HoverCard,{children:[o.jsx(g.HoverCardTrigger,{asChild:!0,children:o.jsx(g.Button,{variant:"ghost",className:"text-sm font-medium",children:o.jsx(_.User,{className:"h-4 w-4"})})}),o.jsxs(g.HoverCardContent,{className:"w-auto space-y-2 p-4",children:[o.jsx("div",{className:"text-sm font-medium",children:t.name??t.email}),o.jsx("div",{className:"text-xs text-muted-foreground",children:t.email}),o.jsxs(g.AlertDialog,{children:[o.jsx(g.AlertDialogTrigger,{asChild:!0,children:o.jsx(g.Button,{variant:"outline",size:"sm",className:"w-full",children:e("Logout")})}),o.jsxs(g.AlertDialogContent,{children:[o.jsxs(g.AlertDialogHeader,{children:[o.jsx(g.AlertDialogTitle,{children:e("Are you sure you want to logout?")}),o.jsx(g.AlertDialogDescription,{children:e("You will be redirected to the login page.")})]}),o.jsxs(g.AlertDialogFooter,{children:[o.jsx(g.AlertDialogCancel,{children:e("Cancel")}),o.jsx(g.AlertDialogAction,{onClick:()=>{s(),p.isFunction(n)&&n()},children:e("Logout")})]})]})]})]})]}):null},ka={id:nn,label:"User Info",button:Oa,position:"bottom"},Ra=()=>{P.registerChaiSidebarPanel(sn,Ga),P.registerChaiSidebarPanel(tn,Na),P.registerChaiSidebarPanel(nn,ka),(localStorage.getItem("chai-feature-flags")??"").includes("enable-ai-chat-panel")&&P.registerChaiSidebarPanel(en,Ia)};var b={context:void 0,registry:void 0,effects:void 0,done:!1,getContextId(){return _s(this.context.count)},getNextContextId(){return _s(this.context.count++)}};function _s(e){const t=String(e),s=t.length-1;return b.context.id+(s?String.fromCharCode(96+s):"")+t}function We(e){b.context=e}var rn=!1,Ma=(e,t)=>e===t,bt=Symbol("solid-proxy"),an=typeof Proxy=="function",hs=Symbol("solid-track"),It={equals:Ma},on=mn,ge=1,Ct=2,ln={owned:null,cleanups:null,context:null,owner:null},Vt={},O=null,Ht=null,Ua=null,B=null,Z=null,de=null,Bt=0;function Ee(e,t){const s=B,n=O,r=e.length===0,a=t===void 0?n:t,i=r?ln:{owned:null,cleanups:null,context:a?a.context:null,owner:a},l=r?e:()=>e(()=>Y(()=>et(i)));O=i,B=null;try{return oe(l,!0)}finally{B=s,O=n}}function V(e,t){t=t?Object.assign({},It,t):It;const s={value:e,observers:null,observerSlots:null,comparator:t.equals||void 0},n=r=>(typeof r=="function"&&(r=r(s.value)),gn(s,r));return[hn.bind(s),n]}function cn(e,t,s){const n=Ft(e,t,!0,ge);He(n)}function pe(e,t,s){const n=Ft(e,t,!1,ge);He(n)}function gs(e,t,s){on=Za;const n=Ft(e,t,!1,ge);(!s||!s.render)&&(n.user=!0),de?de.push(n):He(n)}function $(e,t,s){s=s?Object.assign({},It,s):It;const n=Ft(e,t,!0,0);return n.observers=null,n.observerSlots=null,n.comparator=s.equals||void 0,He(n),hn.bind(n)}function Ba(e){return e&&typeof e=="object"&&"then"in e}function Fa(e,t,s){let n,r,a;n=!0,r=e,a={};let i=null,l=Vt,c=null,d=!1,u="initialValue"in a,f=typeof n=="function"&&$(n);const E=new Set,[m,A]=(a.storage||V)(a.initialValue),[w,v]=V(void 0),[U,T]=V(void 0,{equals:!1}),[C,L]=V(u?"ready":"unresolved");b.context&&(c=b.getNextContextId(),a.ssrLoadFrom==="initial"?l=a.initialValue:b.load&&b.has(c)&&(l=b.load(c)));function q(I,D,W,Q){return i===I&&(i=null,Q!==void 0&&(u=!0),(I===l||D===l)&&a.onHydrated&&queueMicrotask(()=>a.onHydrated(Q,{value:D})),l=Vt,j(D,W)),D}function j(I,D){oe(()=>{D===void 0&&A(()=>I),L(D!==void 0?"errored":u?"ready":"unresolved"),v(D);for(const W of E.keys())W.decrement();E.clear()},!1)}function ce(){const I=Wa,D=m(),W=w();if(W!==void 0&&!i)throw W;return B&&B.user,D}function ue(I=!0){if(I!==!1&&d)return;d=!1;const D=f?f():n;if(D==null||D===!1){q(i,Y(m));return}let W;const Q=l!==Vt?l:Y(()=>{try{return r(D,{value:m(),refetching:I})}catch(ae){W=ae}});if(W!==void 0){q(i,void 0,wt(W),D);return}else if(!Ba(Q))return q(i,Q,void 0,D),Q;return i=Q,"v"in Q?(Q.s===1?q(i,Q.v,void 0,D):q(i,void 0,wt(Q.v),D),Q):(d=!0,queueMicrotask(()=>d=!1),oe(()=>{L(u?"refreshing":"pending"),T()},!1),Q.then(ae=>q(Q,ae,void 0,D),ae=>q(Q,void 0,wt(ae),D)))}Object.defineProperties(ce,{state:{get:()=>C()},error:{get:()=>w()},loading:{get(){const I=C();return I==="pending"||I==="refreshing"}},latest:{get(){if(!u)return ce();const I=w();if(I&&!i)throw I;return m()}}});let K=O;return f?cn(()=>(K=O,ue(!1))):ue(!1),[ce,{refetch:I=>dn(K,()=>ue(I)),mutate:A}]}function qa(e){return oe(e,!1)}function Y(e){if(B===null)return e();const t=B;B=null;try{return e()}finally{B=t}}function Ka(e,t,s){const n=Array.isArray(e);let r,a=s&&s.defer;return i=>{let l;if(n){l=Array(e.length);for(let d=0;d<e.length;d++)l[d]=e[d]()}else l=e();if(a)return a=!1,i;const c=Y(()=>t(l,r,i));return r=l,c}}function un(e){gs(()=>Y(e))}function Ke(e){return O===null||(O.cleanups===null?O.cleanups=[e]:O.cleanups.push(e)),e}function ws(){return O}function dn(e,t){const s=O,n=B;O=e,B=null;try{return oe(t,!0)}catch(r){ms(r)}finally{O=s,B=n}}function Va(e){const t=B,s=O;return Promise.resolve().then(()=>{B=t,O=s;let n;return oe(e,!1),B=O=null,n?n.done:void 0})}var[Ha,sl]=V(!1);function Qa(){return[Ha,Va]}function za(e,t){const s=Symbol("context");return{id:s,Provider:Xa(s),defaultValue:e}}function $a(e){let t;return O&&O.context&&(t=O.context[e.id])!==void 0?t:e.defaultValue}function fn(e){const t=$(e),s=$(()=>Wt(t()));return s.toArray=()=>{const n=s();return Array.isArray(n)?n:n!=null?[n]:[]},s}var Wa;function hn(){if(this.sources&&this.state)if(this.state===ge)He(this);else{const e=Z;Z=null,oe(()=>Nt(this),!1),Z=e}if(B){const e=this.observers?this.observers.length:0;B.sources?(B.sources.push(this),B.sourceSlots.push(e)):(B.sources=[this],B.sourceSlots=[e]),this.observers?(this.observers.push(B),this.observerSlots.push(B.sources.length-1)):(this.observers=[B],this.observerSlots=[B.sources.length-1])}return this.value}function gn(e,t,s){let n=e.value;return(!e.comparator||!e.comparator(n,t))&&(e.value=t,e.observers&&e.observers.length&&oe(()=>{for(let r=0;r<e.observers.length;r+=1){const a=e.observers[r],i=Ht&&Ht.running;i&&Ht.disposed.has(a),(i?!a.tState:!a.state)&&(a.pure?Z.push(a):de.push(a),a.observers&&En(a)),i||(a.state=ge)}if(Z.length>1e6)throw Z=[],new Error},!1)),t}function He(e){if(!e.fn)return;et(e);const t=Bt;Ya(e,e.value,t)}function Ya(e,t,s){let n;const r=O,a=B;B=O=e;try{n=e.fn(t)}catch(i){return e.pure&&(e.state=ge,e.owned&&e.owned.forEach(et),e.owned=null),e.updatedAt=s+1,ms(i)}finally{B=a,O=r}(!e.updatedAt||e.updatedAt<=s)&&(e.updatedAt!=null&&"observers"in e?gn(e,n):e.value=n,e.updatedAt=s)}function Ft(e,t,s,n=ge,r){const a={fn:e,state:n,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:t,owner:O,context:O?O.context:null,pure:s};return O===null||O!==ln&&(O.owned?O.owned.push(a):O.owned=[a]),a}function Lt(e){if(e.state===0)return;if(e.state===Ct)return Nt(e);if(e.suspense&&Y(e.suspense.inFallback))return e.suspense.effects.push(e);const t=[e];for(;(e=e.owner)&&(!e.updatedAt||e.updatedAt<Bt);)e.state&&t.push(e);for(let s=t.length-1;s>=0;s--)if(e=t[s],e.state===ge)He(e);else if(e.state===Ct){const n=Z;Z=null,oe(()=>Nt(e,t[0]),!1),Z=n}}function oe(e,t){if(Z)return e();let s=!1;t||(Z=[]),de?s=!0:de=[],Bt++;try{const n=e();return Ja(s),n}catch(n){s||(de=null),Z=null,ms(n)}}function Ja(e){if(Z&&(mn(Z),Z=null),e)return;const t=de;de=null,t.length&&oe(()=>on(t),!1)}function mn(e){for(let t=0;t<e.length;t++)Lt(e[t])}function Za(e){let t,s=0;for(t=0;t<e.length;t++){const n=e[t];n.user?e[s++]=n:Lt(n)}if(b.context){if(b.count){b.effects||(b.effects=[]),b.effects.push(...e.slice(0,s));return}We()}for(b.effects&&(b.done||!b.count)&&(e=[...b.effects,...e],s+=b.effects.length,delete b.effects),t=0;t<s;t++)Lt(e[t])}function Nt(e,t){e.state=0;for(let s=0;s<e.sources.length;s+=1){const n=e.sources[s];if(n.sources){const r=n.state;r===ge?n!==t&&(!n.updatedAt||n.updatedAt<Bt)&&Lt(n):r===Ct&&Nt(n,t)}}}function En(e){for(let t=0;t<e.observers.length;t+=1){const s=e.observers[t];s.state||(s.state=Ct,s.pure?Z.push(s):de.push(s),s.observers&&En(s))}}function et(e){let t;if(e.sources)for(;e.sources.length;){const s=e.sources.pop(),n=e.sourceSlots.pop(),r=s.observers;if(r&&r.length){const a=r.pop(),i=s.observerSlots.pop();n<r.length&&(a.sourceSlots[i]=n,r[n]=a,s.observerSlots[n]=i)}}if(e.tOwned){for(t=e.tOwned.length-1;t>=0;t--)et(e.tOwned[t]);delete e.tOwned}if(e.owned){for(t=e.owned.length-1;t>=0;t--)et(e.owned[t]);e.owned=null}if(e.cleanups){for(t=e.cleanups.length-1;t>=0;t--)e.cleanups[t]();e.cleanups=null}e.state=0}function wt(e){return e instanceof Error?e:new Error(typeof e=="string"?e:"Unknown error",{cause:e})}function ms(e,t=O){throw wt(e)}function Wt(e){if(typeof e=="function"&&!e.length)return Wt(e());if(Array.isArray(e)){const t=[];for(let s=0;s<e.length;s++){const n=Wt(e[s]);Array.isArray(n)?t.push.apply(t,n):t.push(n)}return t}return e}function Xa(e,t){return function(n){let r;return pe(()=>r=Y(()=>(O.context={...O.context,[e]:n.value},fn(()=>n.children))),void 0),r}}var Yt=Symbol("fallback");function jt(e){for(let t=0;t<e.length;t++)e[t]()}function ei(e,t,s={}){let n=[],r=[],a=[],i=0,l=t.length>1?[]:null;return Ke(()=>jt(a)),()=>{let c=e()||[],d=c.length,u,f;return c[hs],Y(()=>{let m,A,w,v,U,T,C,L,q;if(d===0)i!==0&&(jt(a),a=[],n=[],r=[],i=0,l&&(l=[])),s.fallback&&(n=[Yt],r[0]=Ee(j=>(a[0]=j,s.fallback())),i=1);else if(i===0){for(r=new Array(d),f=0;f<d;f++)n[f]=c[f],r[f]=Ee(E);i=d}else{for(w=new Array(d),v=new Array(d),l&&(U=new Array(d)),T=0,C=Math.min(i,d);T<C&&n[T]===c[T];T++);for(C=i-1,L=d-1;C>=T&&L>=T&&n[C]===c[L];C--,L--)w[L]=r[C],v[L]=a[C],l&&(U[L]=l[C]);for(m=new Map,A=new Array(L+1),f=L;f>=T;f--)q=c[f],u=m.get(q),A[f]=u===void 0?-1:u,m.set(q,f);for(u=T;u<=C;u++)q=n[u],f=m.get(q),f!==void 0&&f!==-1?(w[f]=r[u],v[f]=a[u],l&&(U[f]=l[u]),f=A[f],m.set(q,f)):a[u]();for(f=T;f<d;f++)f in w?(r[f]=w[f],a[f]=v[f],l&&(l[f]=U[f],l[f](f))):r[f]=Ee(E);r=r.slice(0,i=d),n=c.slice(0)}return r});function E(m){if(a[f]=m,l){const[A,w]=V(f);return l[f]=w,t(c[f],A)}return t(c[f])}}}function ti(e,t,s={}){let n=[],r=[],a=[],i=[],l=0,c;return Ke(()=>jt(a)),()=>{const d=e()||[],u=d.length;return d[hs],Y(()=>{if(u===0)return l!==0&&(jt(a),a=[],n=[],r=[],l=0,i=[]),s.fallback&&(n=[Yt],r[0]=Ee(E=>(a[0]=E,s.fallback())),l=1),r;for(n[0]===Yt&&(a[0](),a=[],n=[],r=[],l=0),c=0;c<u;c++)c<n.length&&n[c]!==d[c]?i[c](()=>d[c]):c>=n.length&&(r[c]=Ee(f));for(;c<n.length;c++)a[c]();return l=i.length=a.length=u,n=d.slice(0),r=r.slice(0,l)});function f(E){a[c]=E;const[m,A]=V(d[c]);return i[c]=A,t(m,c)}}}function Es(e,t){return Y(()=>e(t||{}))}function Tt(){return!0}var Jt={get(e,t,s){return t===bt?s:e.get(t)},has(e,t){return t===bt?!0:e.has(t)},set:Tt,deleteProperty:Tt,getOwnPropertyDescriptor(e,t){return{configurable:!0,enumerable:!0,get(){return e.get(t)},set:Tt,deleteProperty:Tt}},ownKeys(e){return e.keys()}};function Qt(e){return(e=typeof e=="function"?e():e)?e:{}}function si(){for(let e=0,t=this.length;e<t;++e){const s=this[e]();if(s!==void 0)return s}}function ps(...e){let t=!1;for(let i=0;i<e.length;i++){const l=e[i];t=t||!!l&&bt in l,e[i]=typeof l=="function"?(t=!0,$(l)):l}if(an&&t)return new Proxy({get(i){for(let l=e.length-1;l>=0;l--){const c=Qt(e[l])[i];if(c!==void 0)return c}},has(i){for(let l=e.length-1;l>=0;l--)if(i in Qt(e[l]))return!0;return!1},keys(){const i=[];for(let l=0;l<e.length;l++)i.push(...Object.keys(Qt(e[l])));return[...new Set(i)]}},Jt);const s={},n=Object.create(null);for(let i=e.length-1;i>=0;i--){const l=e[i];if(!l)continue;const c=Object.getOwnPropertyNames(l);for(let d=c.length-1;d>=0;d--){const u=c[d];if(u==="__proto__"||u==="constructor")continue;const f=Object.getOwnPropertyDescriptor(l,u);if(!n[u])n[u]=f.get?{enumerable:!0,configurable:!0,get:si.bind(s[u]=[f.get.bind(l)])}:f.value!==void 0?f:void 0;else{const E=s[u];E&&(f.get?E.push(f.get.bind(l)):f.value!==void 0&&E.push(()=>f.value))}}}const r={},a=Object.keys(n);for(let i=a.length-1;i>=0;i--){const l=a[i],c=n[l];c&&c.get?Object.defineProperty(r,l,c):r[l]=c?c.value:void 0}return r}function pn(e,...t){if(an&&bt in e){const r=new Set(t.length>1?t.flat():t[0]),a=t.map(i=>new Proxy({get(l){return i.includes(l)?e[l]:void 0},has(l){return i.includes(l)&&l in e},keys(){return i.filter(l=>l in e)}},Jt));return a.push(new Proxy({get(i){return r.has(i)?void 0:e[i]},has(i){return r.has(i)?!1:i in e},keys(){return Object.keys(e).filter(i=>!r.has(i))}},Jt)),a}const s={},n=t.map(()=>({}));for(const r of Object.getOwnPropertyNames(e)){const a=Object.getOwnPropertyDescriptor(e,r),i=!a.get&&!a.set&&a.enumerable&&a.writable&&a.configurable;let l=!1,c=0;for(const d of t)d.includes(r)&&(l=!0,i?n[c][r]=a.value:Object.defineProperty(n[c],r,a)),++c;l||(i?s[r]=a.value:Object.defineProperty(s,r,a))}return[...n,s]}function yn(e){let t,s;const n=r=>{const a=b.context;if(a){const[l,c]=V();b.count||(b.count=0),b.count++,(s||(s=e())).then(d=>{!b.done&&We(a),b.count--,c(()=>d.default),We()}),t=l}else if(!t){const[l]=Fa(()=>(s||(s=e())).then(c=>c.default));t=l}let i;return $(()=>(i=t())?Y(()=>{if(!a||b.done)return i(r);const l=b.context;We(a);const c=i(r);return We(l),c}):"")};return n.preload=()=>s||((s=e()).then(r=>t=()=>r.default),s),n}var ni=0;function ri(){return b.context?b.getNextContextId():`cl-${ni++}`}var An=e=>`Stale read from <${e}>.`;function ai(e){const t="fallback"in e&&{fallback:()=>e.fallback};return $(ei(()=>e.each,e.children,t||void 0))}function ii(e){const t="fallback"in e&&{fallback:()=>e.fallback};return $(ti(()=>e.each,e.children,t||void 0))}function oi(e){const t=e.keyed,s=$(()=>e.when,void 0,void 0),n=t?s:$(s,void 0,{equals:(r,a)=>!r==!a});return $(()=>{const r=n();if(r){const a=e.children;return typeof a=="function"&&a.length>0?Y(()=>a(t?r:()=>{if(!Y(n))throw An("Show");return s()})):a}return e.fallback},void 0,void 0)}function li(e){const t=fn(()=>e.children),s=$(()=>{const n=t(),r=Array.isArray(n)?n:[n];let a=()=>{};for(let i=0;i<r.length;i++){const l=i,c=r[i],d=a,u=$(()=>d()?void 0:c.when,void 0,void 0),f=c.keyed?u:$(u,void 0,{equals:(E,m)=>!E==!m});a=()=>d()||(f()?[l,u,c]:void 0)}return a});return $(()=>{const n=s()();if(!n)return e.fallback;const[r,a,i]=n,l=i.children;return typeof l=="function"&&l.length>0?Y(()=>l(i.keyed?a():()=>{var d;if(((d=Y(s)())==null?void 0:d[0])!==r)throw An("Match");return a()})):l},void 0,void 0)}function ci(e){return e}var ui=["allowfullscreen","async","autofocus","autoplay","checked","controls","default","disabled","formnovalidate","hidden","indeterminate","inert","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","seamless","selected"],di=new Set(["className","value","readOnly","noValidate","formNoValidate","isMap","noModule","playsInline",...ui]),fi=new Set(["innerHTML","textContent","innerText","children"]),hi=Object.assign(Object.create(null),{className:"class",htmlFor:"for"}),gi=Object.assign(Object.create(null),{class:"className",novalidate:{$:"noValidate",FORM:1},formnovalidate:{$:"formNoValidate",BUTTON:1,INPUT:1},ismap:{$:"isMap",IMG:1},nomodule:{$:"noModule",SCRIPT:1},playsinline:{$:"playsInline",VIDEO:1},readonly:{$:"readOnly",INPUT:1,TEXTAREA:1}});function mi(e,t){const s=gi[e];return typeof s=="object"?s[t]?s.$:void 0:s}var Ei=new Set(["beforeinput","click","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"]),pi=new Set(["altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","color-profile","cursor","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","font","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignObject","g","glyph","glyphRef","hkern","image","line","linearGradient","marker","mask","metadata","missing-glyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","set","stop","svg","switch","symbol","text","textPath","tref","tspan","use","view","vkern"]),yi={xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace"},Ai=e=>$(()=>e());function Ti(e,t,s){let n=s.length,r=t.length,a=n,i=0,l=0,c=t[r-1].nextSibling,d=null;for(;i<r||l<a;){if(t[i]===s[l]){i++,l++;continue}for(;t[r-1]===s[a-1];)r--,a--;if(r===i){const u=a<n?l?s[l-1].nextSibling:s[a-l]:c;for(;l<a;)e.insertBefore(s[l++],u)}else if(a===l)for(;i<r;)(!d||!d.has(t[i]))&&t[i].remove(),i++;else if(t[i]===s[a-1]&&s[l]===t[r-1]){const u=t[--r].nextSibling;e.insertBefore(s[l++],t[i++].nextSibling),e.insertBefore(s[--a],u),t[r]=s[a]}else{if(!d){d=new Map;let f=l;for(;f<a;)d.set(s[f],f++)}const u=d.get(t[i]);if(u!=null)if(l<u&&u<a){let f=i,E=1,m;for(;++f<r&&f<a&&!((m=d.get(t[f]))==null||m!==u+E);)E++;if(E>u-l){const A=t[i];for(;l<u;)e.insertBefore(s[l++],A)}else e.replaceChild(s[l++],t[i++])}else i++;else t[i++].remove()}}}var Ze="_$DX_DELEGATE";function Tn(e,t,s,n={}){let r;return Ee(a=>{r=a,t===document?e():Gt(t,e(),t.firstChild?null:void 0,s)},n.owner),()=>{r(),t.textContent=""}}function Si(e,t,s,n){let r;const a=()=>{const l=document.createElement("template");return l.innerHTML=e,l.content.firstChild},i=()=>(r||(r=a())).cloneNode(!0);return i.cloneNode=i,i}function Sn(e,t=window.document){const s=t[Ze]||(t[Ze]=new Set);for(let n=0,r=e.length;n<r;n++){const a=e[n];s.has(a)||(s.add(a),t.addEventListener(a,vn))}}function Pi(e=window.document){if(e[Ze]){for(let t of e[Ze].keys())e.removeEventListener(t,vn);delete e[Ze]}}function Dt(e,t,s){we(e)||(s==null?e.removeAttribute(t):e.setAttribute(t,s))}function xi(e,t,s,n){we(e)||(n==null?e.removeAttributeNS(t,s):e.setAttributeNS(t,s,n))}function _i(e,t,s){we(e)||(s?e.setAttribute(t,""):e.removeAttribute(t))}function Pn(e,t){we(e)||(t==null?e.removeAttribute("class"):e.className=t)}function xn(e,t,s,n){if(n)Array.isArray(s)?(e[`$$${t}`]=s[0],e[`$$${t}Data`]=s[1]):e[`$$${t}`]=s;else if(Array.isArray(s)){const r=s[0];e.addEventListener(t,s[0]=a=>r.call(e,s[1],a))}else e.addEventListener(t,s,typeof s!="function"&&s)}function wi(e,t,s={}){const n=Object.keys(t||{}),r=Object.keys(s);let a,i;for(a=0,i=r.length;a<i;a++){const l=r[a];!l||l==="undefined"||t[l]||(vs(e,l,!1),delete s[l])}for(a=0,i=n.length;a<i;a++){const l=n[a],c=!!t[l];!l||l==="undefined"||s[l]===c||!c||(vs(e,l,!0),s[l]=c)}return s}function vi(e,t,s){if(!t)return s?Dt(e,"style"):t;const n=e.style;if(typeof t=="string")return n.cssText=t;typeof s=="string"&&(n.cssText=s=void 0),s||(s={}),t||(t={});let r,a;for(a in s)t[a]==null&&n.removeProperty(a),delete s[a];for(a in t)r=t[a],r!==s[a]&&(n.setProperty(a,r),s[a]=r);return s}function _n(e,t={},s,n){const r={};return n||pe(()=>r.children=tt(e,t.children,r.children)),pe(()=>typeof t.ref=="function"&&wn(t.ref,e)),pe(()=>bi(e,t,s,!0,r,!0)),r}function wn(e,t,s){return Y(()=>e(t,s))}function Gt(e,t,s,n){if(s!==void 0&&!n&&(n=[]),typeof t!="function")return tt(e,t,n,s);pe(r=>tt(e,t(),r,s),n)}function bi(e,t,s,n,r={},a=!1){t||(t={});for(const i in r)if(!(i in t)){if(i==="children")continue;r[i]=bs(e,i,null,r[i],s,a,t)}for(const i in t){if(i==="children")continue;const l=t[i];r[i]=bs(e,i,l,r[i],s,a,t)}}function Ii(e){let t,s;return!we()||!(t=b.registry.get(s=Li()))?e():(b.completed&&b.completed.add(t),b.registry.delete(s),t)}function we(e){return!!b.context&&!b.done&&(!e||e.isConnected)}function Ci(e){return e.toLowerCase().replace(/-([a-z])/g,(t,s)=>s.toUpperCase())}function vs(e,t,s){const n=t.trim().split(/\s+/);for(let r=0,a=n.length;r<a;r++)e.classList.toggle(n[r],s)}function bs(e,t,s,n,r,a,i){let l,c,d,u,f;if(t==="style")return vi(e,s,n);if(t==="classList")return wi(e,s,n);if(s===n)return n;if(t==="ref")a||s(e);else if(t.slice(0,3)==="on:"){const E=t.slice(3);n&&e.removeEventListener(E,n,typeof n!="function"&&n),s&&e.addEventListener(E,s,typeof s!="function"&&s)}else if(t.slice(0,10)==="oncapture:"){const E=t.slice(10);n&&e.removeEventListener(E,n,!0),s&&e.addEventListener(E,s,!0)}else if(t.slice(0,2)==="on"){const E=t.slice(2).toLowerCase(),m=Ei.has(E);if(!m&&n){const A=Array.isArray(n)?n[0]:n;e.removeEventListener(E,A)}(m||s)&&(xn(e,E,s,m),m&&Sn([E]))}else if(t.slice(0,5)==="attr:")Dt(e,t.slice(5),s);else if(t.slice(0,5)==="bool:")_i(e,t.slice(5),s);else if((f=t.slice(0,5)==="prop:")||(d=fi.has(t))||!r&&((u=mi(t,e.tagName))||(c=di.has(t)))||(l=e.nodeName.includes("-")||"is"in i)){if(f)t=t.slice(5),c=!0;else if(we(e))return s;t==="class"||t==="className"?Pn(e,s):l&&!c&&!d?e[Ci(t)]=s:e[u||t]=s}else{const E=r&&t.indexOf(":")>-1&&yi[t.split(":")[0]];E?xi(e,E,t,s):Dt(e,hi[t]||t,s)}return s}function vn(e){if(b.registry&&b.events&&b.events.find(([c,d])=>d===e))return;let t=e.target;const s=`$$${e.type}`,n=e.target,r=e.currentTarget,a=c=>Object.defineProperty(e,"target",{configurable:!0,value:c}),i=()=>{const c=t[s];if(c&&!t.disabled){const d=t[`${s}Data`];if(d!==void 0?c.call(t,d,e):c.call(t,e),e.cancelBubble)return}return t.host&&typeof t.host!="string"&&!t.host._$host&&t.contains(e.target)&&a(t.host),!0},l=()=>{for(;i()&&(t=t._$host||t.parentNode||t.host););};if(Object.defineProperty(e,"currentTarget",{configurable:!0,get(){return t||document}}),b.registry&&!b.done&&(b.done=_$HY.done=!0),e.composedPath){const c=e.composedPath();a(c[0]);for(let d=0;d<c.length-2&&(t=c[d],!!i());d++){if(t._$host){t=t._$host,l();break}if(t.parentNode===r)break}}else l();a(n)}function tt(e,t,s,n,r){const a=we(e);if(a){!s&&(s=[...e.childNodes]);let c=[];for(let d=0;d<s.length;d++){const u=s[d];u.nodeType===8&&u.data.slice(0,2)==="!$"?u.remove():c.push(u)}s=c}for(;typeof s=="function";)s=s();if(t===s)return s;const i=typeof t,l=n!==void 0;if(e=l&&s[0]&&s[0].parentNode||e,i==="string"||i==="number"){if(a||i==="number"&&(t=t.toString(),t===s))return s;if(l){let c=s[0];c&&c.nodeType===3?c.data!==t&&(c.data=t):c=document.createTextNode(t),s=ve(e,s,n,c)}else s!==""&&typeof s=="string"?s=e.firstChild.data=t:s=e.textContent=t}else if(t==null||i==="boolean"){if(a)return s;s=ve(e,s,n)}else{if(i==="function")return pe(()=>{let c=t();for(;typeof c=="function";)c=c();s=tt(e,c,s,n)}),()=>s;if(Array.isArray(t)){const c=[],d=s&&Array.isArray(s);if(Zt(c,t,s,r))return pe(()=>s=tt(e,c,s,n,!0)),()=>s;if(a){if(!c.length)return s;if(n===void 0)return s=[...e.childNodes];let u=c[0];if(u.parentNode!==e)return s;const f=[u];for(;(u=u.nextSibling)!==n;)f.push(u);return s=f}if(c.length===0){if(s=ve(e,s,n),l)return s}else d?s.length===0?Is(e,c,n):Ti(e,s,c):(s&&ve(e),Is(e,c));s=c}else if(t.nodeType){if(a&&t.parentNode)return s=l?[t]:t;if(Array.isArray(s)){if(l)return s=ve(e,s,n,t);ve(e,s,null,t)}else s==null||s===""||!e.firstChild?e.appendChild(t):e.replaceChild(t,e.firstChild);s=t}}return s}function Zt(e,t,s,n){let r=!1;for(let a=0,i=t.length;a<i;a++){let l=t[a],c=s&&s[e.length],d;if(!(l==null||l===!0||l===!1))if((d=typeof l)=="object"&&l.nodeType)e.push(l);else if(Array.isArray(l))r=Zt(e,l,c)||r;else if(d==="function")if(n){for(;typeof l=="function";)l=l();r=Zt(e,Array.isArray(l)?l:[l],Array.isArray(c)?c:[c])||r}else e.push(l),r=!0;else{const u=String(l);c&&c.nodeType===3&&c.data===u?e.push(c):e.push(document.createTextNode(u))}}return r}function Is(e,t,s=null){for(let n=0,r=t.length;n<r;n++)e.insertBefore(t[n],s)}function ve(e,t,s,n){if(s===void 0)return e.textContent="";const r=n||document.createTextNode("");if(t.length){let a=!1;for(let i=t.length-1;i>=0;i--){const l=t[i];if(r!==l){const c=l.parentNode===e;!a&&!i?c?e.replaceChild(r,l):e.insertBefore(r,s):c&&l.remove()}else a=!0}}else e.insertBefore(r,s);return[r]}function Li(){return b.getNextContextId()}var Ni="http://www.w3.org/2000/svg";function bn(e,t=!1){return t?document.createElementNS(Ni,e):document.createElement(e)}function ji(e){const{useShadow:t}=e,s=document.createTextNode(""),n=()=>e.mount||document.body,r=ws();let a,i=!!b.context;return gs(()=>{i&&(ws().user=i=!1),a||(a=dn(r,()=>$(()=>e.children)));const l=n();if(l instanceof HTMLHeadElement){const[c,d]=V(!1),u=()=>d(!0);Ee(f=>Gt(l,()=>c()?f():a(),null)),Ke(u)}else{const c=bn(e.isSVG?"g":"div",e.isSVG),d=t&&c.attachShadow?c.attachShadow({mode:"open"}):c;Object.defineProperty(c,"_$host",{get(){return s.parentNode},configurable:!0}),Gt(d,a),l.appendChild(c),e.ref&&e.ref(c),Ke(()=>l.removeChild(c))}},void 0,{render:!i}),s}function Di(e,t){const s=$(e);return $(()=>{const n=s();switch(typeof n){case"function":return Y(()=>n(t));case"string":const r=pi.has(n),a=b.context?Ii():bn(n,r);return _n(a,t,r),a}})}function Gi(e){const[,t]=pn(e,["component"]);return Di(()=>e.component,t)}var Oi=class{constructor(){this.keyToValue=new Map,this.valueToKey=new Map}set(e,t){this.keyToValue.set(e,t),this.valueToKey.set(t,e)}getByKey(e){return this.keyToValue.get(e)}getByValue(e){return this.valueToKey.get(e)}clear(){this.keyToValue.clear(),this.valueToKey.clear()}},In=class{constructor(e){this.generateIdentifier=e,this.kv=new Oi}register(e,t){this.kv.getByValue(e)||(t||(t=this.generateIdentifier(e)),this.kv.set(t,e))}clear(){this.kv.clear()}getIdentifier(e){return this.kv.getByValue(e)}getValue(e){return this.kv.getByKey(e)}},ki=class extends In{constructor(){super(e=>e.name),this.classToAllowedProps=new Map}register(e,t){typeof t=="object"?(t.allowProps&&this.classToAllowedProps.set(e,t.allowProps),super.register(e,t.identifier)):super.register(e,t)}getAllowedProps(e){return this.classToAllowedProps.get(e)}};function Ri(e){if("values"in Object)return Object.values(e);const t=[];for(const s in e)e.hasOwnProperty(s)&&t.push(e[s]);return t}function Mi(e,t){const s=Ri(e);if("find"in s)return s.find(t);const n=s;for(let r=0;r<n.length;r++){const a=n[r];if(t(a))return a}}function Ve(e,t){Object.entries(e).forEach(([s,n])=>t(n,s))}function vt(e,t){return e.indexOf(t)!==-1}function Cs(e,t){for(let s=0;s<e.length;s++){const n=e[s];if(t(n))return n}}var Ui=class{constructor(){this.transfomers={}}register(e){this.transfomers[e.name]=e}findApplicable(e){return Mi(this.transfomers,t=>t.isApplicable(e))}findByName(e){return this.transfomers[e]}},Bi=e=>Object.prototype.toString.call(e).slice(8,-1),Cn=e=>typeof e>"u",Fi=e=>e===null,st=e=>typeof e!="object"||e===null||e===Object.prototype?!1:Object.getPrototypeOf(e)===null?!0:Object.getPrototypeOf(e)===Object.prototype,Xt=e=>st(e)&&Object.keys(e).length===0,ye=e=>Array.isArray(e),qi=e=>typeof e=="string",Ki=e=>typeof e=="number"&&!isNaN(e),Vi=e=>typeof e=="boolean",Hi=e=>e instanceof RegExp,nt=e=>e instanceof Map,rt=e=>e instanceof Set,Ln=e=>Bi(e)==="Symbol",Qi=e=>e instanceof Date&&!isNaN(e.valueOf()),zi=e=>e instanceof Error,Ls=e=>typeof e=="number"&&isNaN(e),$i=e=>Vi(e)||Fi(e)||Cn(e)||Ki(e)||qi(e)||Ln(e),Wi=e=>typeof e=="bigint",Yi=e=>e===1/0||e===-1/0,Ji=e=>ArrayBuffer.isView(e)&&!(e instanceof DataView),Zi=e=>e instanceof URL,Nn=e=>e.replace(/\./g,"\\."),zt=e=>e.map(String).map(Nn).join("."),Xe=e=>{const t=[];let s="";for(let r=0;r<e.length;r++){let a=e.charAt(r);if(a==="\\"&&e.charAt(r+1)==="."){s+=".",r++;continue}if(a==="."){t.push(s),s="";continue}s+=a}const n=s;return t.push(n),t};function ie(e,t,s,n){return{isApplicable:e,annotation:t,transform:s,untransform:n}}var jn=[ie(Cn,"undefined",()=>null,()=>{}),ie(Wi,"bigint",e=>e.toString(),e=>typeof BigInt<"u"?BigInt(e):e),ie(Qi,"Date",e=>e.toISOString(),e=>new Date(e)),ie(zi,"Error",(e,t)=>{const s={name:e.name,message:e.message};return t.allowedErrorProps.forEach(n=>{s[n]=e[n]}),s},(e,t)=>{const s=new Error(e.message);return s.name=e.name,s.stack=e.stack,t.allowedErrorProps.forEach(n=>{s[n]=e[n]}),s}),ie(Hi,"regexp",e=>""+e,e=>{const t=e.slice(1,e.lastIndexOf("/")),s=e.slice(e.lastIndexOf("/")+1);return new RegExp(t,s)}),ie(rt,"set",e=>[...e.values()],e=>new Set(e)),ie(nt,"map",e=>[...e.entries()],e=>new Map(e)),ie(e=>Ls(e)||Yi(e),"number",e=>Ls(e)?"NaN":e>0?"Infinity":"-Infinity",Number),ie(e=>e===0&&1/e===-1/0,"number",()=>"-0",Number),ie(Zi,"URL",e=>e.toString(),e=>new URL(e))];function qt(e,t,s,n){return{isApplicable:e,annotation:t,transform:s,untransform:n}}var Dn=qt((e,t)=>Ln(e)?!!t.symbolRegistry.getIdentifier(e):!1,(e,t)=>["symbol",t.symbolRegistry.getIdentifier(e)],e=>e.description,(e,t,s)=>{const n=s.symbolRegistry.getValue(t[1]);if(!n)throw new Error("Trying to deserialize unknown symbol");return n}),Xi=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,Uint8ClampedArray].reduce((e,t)=>(e[t.name]=t,e),{}),Gn=qt(Ji,e=>["typed-array",e.constructor.name],e=>[...e],(e,t)=>{const s=Xi[t[1]];if(!s)throw new Error("Trying to deserialize unknown typed array");return new s(e)});function On(e,t){return e!=null&&e.constructor?!!t.classRegistry.getIdentifier(e.constructor):!1}var kn=qt(On,(e,t)=>["class",t.classRegistry.getIdentifier(e.constructor)],(e,t)=>{const s=t.classRegistry.getAllowedProps(e.constructor);if(!s)return{...e};const n={};return s.forEach(r=>{n[r]=e[r]}),n},(e,t,s)=>{const n=s.classRegistry.getValue(t[1]);if(!n)throw new Error(`Trying to deserialize unknown class '${t[1]}' - check https://github.com/blitz-js/superjson/issues/116#issuecomment-773996564`);return Object.assign(Object.create(n.prototype),e)}),Rn=qt((e,t)=>!!t.customTransformerRegistry.findApplicable(e),(e,t)=>["custom",t.customTransformerRegistry.findApplicable(e).name],(e,t)=>t.customTransformerRegistry.findApplicable(e).serialize(e),(e,t,s)=>{const n=s.customTransformerRegistry.findByName(t[1]);if(!n)throw new Error("Trying to deserialize unknown custom value");return n.deserialize(e)}),eo=[kn,Dn,Rn,Gn],Ns=(e,t)=>{const s=Cs(eo,r=>r.isApplicable(e,t));if(s)return{value:s.transform(e,t),type:s.annotation(e,t)};const n=Cs(jn,r=>r.isApplicable(e,t));if(n)return{value:n.transform(e,t),type:n.annotation}},Mn={};jn.forEach(e=>{Mn[e.annotation]=e});var to=(e,t,s)=>{if(ye(t))switch(t[0]){case"symbol":return Dn.untransform(e,t,s);case"class":return kn.untransform(e,t,s);case"custom":return Rn.untransform(e,t,s);case"typed-array":return Gn.untransform(e,t,s);default:throw new Error("Unknown transformation: "+t)}else{const n=Mn[t];if(!n)throw new Error("Unknown transformation: "+t);return n.untransform(e,s)}},be=(e,t)=>{if(t>e.size)throw new Error("index out of bounds");const s=e.keys();for(;t>0;)s.next(),t--;return s.next().value};function Un(e){if(vt(e,"__proto__"))throw new Error("__proto__ is not allowed as a property");if(vt(e,"prototype"))throw new Error("prototype is not allowed as a property");if(vt(e,"constructor"))throw new Error("constructor is not allowed as a property")}var so=(e,t)=>{Un(t);for(let s=0;s<t.length;s++){const n=t[s];if(rt(e))e=be(e,+n);else if(nt(e)){const r=+n,a=+t[++s]==0?"key":"value",i=be(e,r);switch(a){case"key":e=i;break;case"value":e=e.get(i);break}}else e=e[n]}return e},es=(e,t,s)=>{if(Un(t),t.length===0)return s(e);let n=e;for(let a=0;a<t.length-1;a++){const i=t[a];if(ye(n)){const l=+i;n=n[l]}else if(st(n))n=n[i];else if(rt(n)){const l=+i;n=be(n,l)}else if(nt(n)){if(a===t.length-2)break;const c=+i,d=+t[++a]==0?"key":"value",u=be(n,c);switch(d){case"key":n=u;break;case"value":n=n.get(u);break}}}const r=t[t.length-1];if(ye(n)?n[+r]=s(n[+r]):st(n)&&(n[r]=s(n[r])),rt(n)){const a=be(n,+r),i=s(a);a!==i&&(n.delete(a),n.add(i))}if(nt(n)){const a=+t[t.length-2],i=be(n,a);switch(+r==0?"key":"value"){case"key":{const c=s(i);n.set(c,n.get(i)),c!==i&&n.delete(i);break}case"value":{n.set(i,s(n.get(i)));break}}}return e};function ts(e,t,s=[]){if(!e)return;if(!ye(e)){Ve(e,(a,i)=>ts(a,t,[...s,...Xe(i)]));return}const[n,r]=e;r&&Ve(r,(a,i)=>{ts(a,t,[...s,...Xe(i)])}),t(n,s)}function no(e,t,s){return ts(t,(n,r)=>{e=es(e,r,a=>to(a,n,s))}),e}function ro(e,t){function s(n,r){const a=so(e,Xe(r));n.map(Xe).forEach(i=>{e=es(e,i,()=>a)})}if(ye(t)){const[n,r]=t;n.forEach(a=>{e=es(e,Xe(a),()=>e)}),r&&Ve(r,s)}else Ve(t,s);return e}var ao=(e,t)=>st(e)||ye(e)||nt(e)||rt(e)||On(e,t);function io(e,t,s){const n=s.get(e);n?n.push(t):s.set(e,[t])}function oo(e,t){const s={};let n;return e.forEach(r=>{if(r.length<=1)return;t||(r=r.map(l=>l.map(String)).sort((l,c)=>l.length-c.length));const[a,...i]=r;a.length===0?n=i.map(zt):s[zt(a)]=i.map(zt)}),n?Xt(s)?[n]:[n,s]:Xt(s)?void 0:s}var Bn=(e,t,s,n,r=[],a=[],i=new Map)=>{const l=$i(e);if(!l){io(e,r,t);const m=i.get(e);if(m)return n?{transformedValue:null}:m}if(!ao(e,s)){const m=Ns(e,s),A=m?{transformedValue:m.value,annotations:[m.type]}:{transformedValue:e};return l||i.set(e,A),A}if(vt(a,e))return{transformedValue:null};const c=Ns(e,s),d=(c==null?void 0:c.value)??e,u=ye(d)?[]:{},f={};Ve(d,(m,A)=>{if(A==="__proto__"||A==="constructor"||A==="prototype")throw new Error(`Detected property ${A}. This is a prototype pollution risk, please remove it from your object.`);const w=Bn(m,t,s,n,[...r,A],[...a,e],i);u[A]=w.transformedValue,ye(w.annotations)?f[A]=w.annotations:st(w.annotations)&&Ve(w.annotations,(v,U)=>{f[Nn(A)+"."+U]=v})});const E=Xt(f)?{transformedValue:u,annotations:c?[c.type]:void 0}:{transformedValue:u,annotations:c?[c.type,f]:f};return l||i.set(e,E),E};function Fn(e){return Object.prototype.toString.call(e).slice(8,-1)}function js(e){return Fn(e)==="Array"}function lo(e){if(Fn(e)!=="Object")return!1;const t=Object.getPrototypeOf(e);return!!t&&t.constructor===Object&&t===Object.prototype}function co(e,t,s,n,r){const a={}.propertyIsEnumerable.call(n,t)?"enumerable":"nonenumerable";a==="enumerable"&&(e[t]=s),r&&a==="nonenumerable"&&Object.defineProperty(e,t,{value:s,enumerable:!1,writable:!0,configurable:!0})}function ss(e,t={}){if(js(e))return e.map(r=>ss(r,t));if(!lo(e))return e;const s=Object.getOwnPropertyNames(e),n=Object.getOwnPropertySymbols(e);return[...s,...n].reduce((r,a)=>{if(js(t.props)&&!t.props.includes(a))return r;const i=e[a],l=ss(i,t);return co(r,a,l,e,t.nonenumerable),r},{})}var F=class{constructor({dedupe:e=!1}={}){this.classRegistry=new ki,this.symbolRegistry=new In(t=>t.description??""),this.customTransformerRegistry=new Ui,this.allowedErrorProps=[],this.dedupe=e}serialize(e){const t=new Map,s=Bn(e,t,this,this.dedupe),n={json:s.transformedValue};s.annotations&&(n.meta={...n.meta,values:s.annotations});const r=oo(t,this.dedupe);return r&&(n.meta={...n.meta,referentialEqualities:r}),n}deserialize(e){const{json:t,meta:s}=e;let n=ss(t);return s!=null&&s.values&&(n=no(n,s.values,this)),s!=null&&s.referentialEqualities&&(n=ro(n,s.referentialEqualities)),n}stringify(e){return JSON.stringify(this.serialize(e))}parse(e){return this.deserialize(JSON.parse(e))}registerClass(e,t){this.classRegistry.register(e,t)}registerSymbol(e,t){this.symbolRegistry.register(e,t)}registerCustom(e,t){this.customTransformerRegistry.register({name:t,...e})}allowErrorProps(...e){this.allowedErrorProps.push(...e)}};F.defaultInstance=new F;F.serialize=F.defaultInstance.serialize.bind(F.defaultInstance);F.deserialize=F.defaultInstance.deserialize.bind(F.defaultInstance);F.stringify=F.defaultInstance.stringify.bind(F.defaultInstance);F.parse=F.defaultInstance.parse.bind(F.defaultInstance);F.registerClass=F.defaultInstance.registerClass.bind(F.defaultInstance);F.registerSymbol=F.defaultInstance.registerSymbol.bind(F.defaultInstance);F.registerCustom=F.defaultInstance.registerCustom.bind(F.defaultInstance);F.allowErrorProps=F.defaultInstance.allowErrorProps.bind(F.defaultInstance);var qn=F.serialize,uo=F.stringify;function fo(e){return e.state.fetchStatus==="fetching"?"fetching":e.getObserversCount()?e.state.fetchStatus==="paused"?"paused":e.isStale()?"stale":"fresh":"inactive"}function ho(e,t){return`${e}${t.charAt(0).toUpperCase()+t.slice(1)}`}function go({queryState:e,observerCount:t,isStale:s}){return e.fetchStatus==="fetching"?"blue":t?e.fetchStatus==="paused"?"purple":s?"yellow":"green":"gray"}function mo({status:e,isPaused:t}){return t?"purple":e==="error"?"red":e==="pending"?"yellow":e==="success"?"green":"gray"}function Eo(e){return e==="fresh"?"green":e==="stale"?"yellow":e==="paused"?"purple":e==="inactive"?"gray":"blue"}var po=(e,t=!1)=>{const{json:s}=qn(e);return JSON.stringify(s,null,t?2:void 0)},St=e=>e.state.fetchStatus!=="idle"?0:e.getObserversCount()?e.isStale()?2:1:3,yo=(e,t)=>e.queryHash.localeCompare(t.queryHash),Kn=(e,t)=>e.state.dataUpdatedAt<t.state.dataUpdatedAt?1:-1,Ao=(e,t)=>St(e)===St(t)?Kn(e,t):St(e)>St(t)?1:-1,To={status:Ao,"query hash":yo,"last updated":Kn},Pt=e=>e.state.isPaused?0:e.state.status==="error"?2:e.state.status==="pending"?1:3,Vn=(e,t)=>e.state.submittedAt<t.state.submittedAt?1:-1,So=(e,t)=>Pt(e)===Pt(t)?Vn(e,t):Pt(e)>Pt(t)?1:-1,Po={status:So,"last updated":Vn},xo=e=>e*parseFloat(getComputedStyle(document.documentElement).fontSize),_o=()=>{const[e,t]=V("dark");return un(()=>{const s=window.matchMedia("(prefers-color-scheme: dark)");t(s.matches?"dark":"light");const n=r=>{t(r.matches?"dark":"light")};s.addEventListener("change",n),Ke(()=>s.removeEventListener("change",n))}),e},Ye=(e,t,s)=>{if(t.length===0)return s;if(e instanceof Map){const n=new Map(e);if(t.length===1)return n.set(t[0],s),n;const[r,...a]=t;return n.set(r,Ye(n.get(r),a,s)),n}if(e instanceof Set){const n=Ye(Array.from(e),t,s);return new Set(n)}if(Array.isArray(e)){const n=[...e];if(t.length===1)return n[t[0]]=s,n;const[r,...a]=t;return n[r]=Ye(n[r],a,s),n}if(e instanceof Object){const n={...e};if(t.length===1)return n[t[0]]=s,n;const[r,...a]=t;return n[r]=Ye(n[r],a,s),n}return e},Je=(e,t)=>{if(e instanceof Map){const s=new Map(e);if(t.length===1)return s.delete(t[0]),s;const[n,...r]=t;return s.set(n,Je(s.get(n),r)),s}if(e instanceof Set){const s=Je(Array.from(e),t);return new Set(s)}if(Array.isArray(e)){const s=[...e];if(t.length===1)return s.filter((a,i)=>i.toString()!==t[0]);const[n,...r]=t;return s[n]=Je(s[n],r),s}if(e instanceof Object){const s={...e};if(t.length===1)return delete s[t[0]],s;const[n,...r]=t;return s[n]=Je(s[n],r),s}return e},Hn=(e,t)=>{if(!e||document.querySelector("#_goober")||(t==null?void 0:t.querySelector("#_goober")))return;const n=document.createElement("style"),r=document.createTextNode("");n.appendChild(r),n.id="_goober",n.setAttribute("nonce",e),t?t.appendChild(n):document.head.appendChild(n)},Ie,at,it,ot,Pe,lt,Ce,Le,Ne,je,De,ct,Ge,ut,Os,wo=(Os=class{constructor(e){R(this,Ie);R(this,at);R(this,it);R(this,ot);R(this,Pe,!1);R(this,lt);R(this,Ce);R(this,Le);R(this,Ne);R(this,je);R(this,De);R(this,ct);R(this,Ge);R(this,ut);const{client:t,queryFlavor:s,version:n,onlineManager:r,buttonPosition:a,position:i,initialIsOpen:l,errorTypes:c,styleNonce:d,shadowDOMTarget:u,hideDisabledQueries:f}=e;k(this,Ie,V(t)),k(this,it,s),k(this,ot,n),k(this,at,r),k(this,lt,d),k(this,Ce,u),k(this,Le,V(a)),k(this,Ne,V(i)),k(this,je,V(l)),k(this,De,V(c)),k(this,ct,V(f))}setButtonPosition(e){x(this,Le)[1](e)}setPosition(e){x(this,Ne)[1](e)}setInitialIsOpen(e){x(this,je)[1](e)}setErrorTypes(e){x(this,De)[1](e)}setClient(e){x(this,Ie)[1](e)}mount(e){if(x(this,Pe))throw new Error("Devtools is already mounted");const t=Tn(()=>{const s=this,[n]=x(this,Le),[r]=x(this,Ne),[a]=x(this,je),[i]=x(this,De),[l]=x(this,ct),[c]=x(this,Ie);let d;return x(this,Ge)?d=x(this,Ge):(d=yn(()=>Promise.resolve().then(()=>require("./NCMVHL6D-B_AZmaGG.cjs"))),k(this,Ge,d)),Hn(x(this,lt),x(this,Ce)),Es(d,ps({get queryFlavor(){return x(s,it)},get version(){return x(s,ot)},get onlineManager(){return x(s,at)},get shadowDOMTarget(){return x(s,Ce)}},{get client(){return c()},get buttonPosition(){return n()},get position(){return r()},get initialIsOpen(){return a()},get errorTypes(){return i()},get hideDisabledQueries(){return l()}}))},e);k(this,Pe,!0),k(this,ut,t)}unmount(){var e;if(!x(this,Pe))throw new Error("Devtools is not mounted");(e=x(this,ut))==null||e.call(this),k(this,Pe,!1)}},Ie=new WeakMap,at=new WeakMap,it=new WeakMap,ot=new WeakMap,Pe=new WeakMap,lt=new WeakMap,Ce=new WeakMap,Le=new WeakMap,Ne=new WeakMap,je=new WeakMap,De=new WeakMap,ct=new WeakMap,Ge=new WeakMap,ut=new WeakMap,Os),Oe,dt,ft,ht,xe,gt,ke,Re,Me,Ue,Be,mt,Fe,qe,Et,ks,vo=(ks=class{constructor(e){R(this,Oe);R(this,dt);R(this,ft);R(this,ht);R(this,xe,!1);R(this,gt);R(this,ke);R(this,Re);R(this,Me);R(this,Ue);R(this,Be);R(this,mt);R(this,Fe);R(this,qe);R(this,Et);const{client:t,queryFlavor:s,version:n,onlineManager:r,buttonPosition:a,position:i,initialIsOpen:l,errorTypes:c,styleNonce:d,shadowDOMTarget:u,onClose:f,hideDisabledQueries:E}=e;k(this,Oe,V(t)),k(this,ft,s),k(this,ht,n),k(this,dt,r),k(this,gt,d),k(this,ke,u),k(this,Re,V(a)),k(this,Me,V(i)),k(this,Ue,V(l)),k(this,Be,V(c)),k(this,mt,V(E)),k(this,Fe,V(f))}setButtonPosition(e){x(this,Re)[1](e)}setPosition(e){x(this,Me)[1](e)}setInitialIsOpen(e){x(this,Ue)[1](e)}setErrorTypes(e){x(this,Be)[1](e)}setClient(e){x(this,Oe)[1](e)}setOnClose(e){x(this,Fe)[1](()=>e)}mount(e){if(x(this,xe))throw new Error("Devtools is already mounted");const t=Tn(()=>{const s=this,[n]=x(this,Re),[r]=x(this,Me),[a]=x(this,Ue),[i]=x(this,Be),[l]=x(this,mt),[c]=x(this,Oe),[d]=x(this,Fe);let u;return x(this,qe)?u=x(this,qe):(u=yn(()=>Promise.resolve().then(()=>require("./2AITGKQY-BV6JxIio.cjs"))),k(this,qe,u)),Hn(x(this,gt),x(this,ke)),Es(u,ps({get queryFlavor(){return x(s,ft)},get version(){return x(s,ht)},get onlineManager(){return x(s,dt)},get shadowDOMTarget(){return x(s,ke)}},{get client(){return c()},get buttonPosition(){return n()},get position(){return r()},get initialIsOpen(){return a()},get errorTypes(){return i()},get hideDisabledQueries(){return l()},get onClose(){return d()}}))},e);k(this,xe,!0),k(this,Et,t)}unmount(){var e;if(!x(this,xe))throw new Error("Devtools is not mounted");(e=x(this,Et))==null||e.call(this),k(this,xe,!1)}},Oe=new WeakMap,dt=new WeakMap,ft=new WeakMap,ht=new WeakMap,xe=new WeakMap,gt=new WeakMap,ke=new WeakMap,Re=new WeakMap,Me=new WeakMap,Ue=new WeakMap,Be=new WeakMap,mt=new WeakMap,Fe=new WeakMap,qe=new WeakMap,Et=new WeakMap,ks);function bo(e){const t=S.useQueryClient(e.client),s=z.useRef(null),{buttonPosition:n,position:r,initialIsOpen:a,errorTypes:i,styleNonce:l,shadowDOMTarget:c,hideDisabledQueries:d}=e,[u]=z.useState(new wo({client:t,queryFlavor:"React Query",version:"5",onlineManager:S.onlineManager,buttonPosition:n,position:r,initialIsOpen:a,errorTypes:i,styleNonce:l,shadowDOMTarget:c,hideDisabledQueries:d}));return z.useEffect(()=>{u.setClient(t)},[t,u]),z.useEffect(()=>{n&&u.setButtonPosition(n)},[n,u]),z.useEffect(()=>{r&&u.setPosition(r)},[r,u]),z.useEffect(()=>{u.setInitialIsOpen(a||!1)},[a,u]),z.useEffect(()=>{u.setErrorTypes(i||[])},[i,u]),z.useEffect(()=>(s.current&&u.mount(s.current),()=>{u.unmount()}),[u]),o.jsx("div",{dir:"ltr",className:"tsqd-parent-container",ref:s})}function Io(e){const t=S.useQueryClient(e.client),s=z.useRef(null),{errorTypes:n,styleNonce:r,shadowDOMTarget:a,hideDisabledQueries:i}=e,[l]=z.useState(new vo({client:t,queryFlavor:"React Query",version:"5",onlineManager:S.onlineManager,buttonPosition:"bottom-left",position:"bottom",initialIsOpen:!0,errorTypes:n,styleNonce:r,shadowDOMTarget:a,onClose:e.onClose,hideDisabledQueries:i}));return z.useEffect(()=>{l.setClient(t)},[t,l]),z.useEffect(()=>{l.setOnClose(e.onClose??(()=>{}))},[e.onClose,l]),z.useEffect(()=>{l.setErrorTypes(n||[])},[n,l]),z.useEffect(()=>(s.current&&l.mount(s.current),()=>{l.unmount()}),[l]),o.jsx("div",{style:{height:"500px",...e.style},className:"tsqd-parent-container",ref:s})}var Ds=process.env.NODE_ENV!=="development"?function(){return null}:bo;process.env.NODE_ENV;const Qn=H.atom(""),Co=()=>{P.registerChaiFeatureFlag("dynamic-page-selector",{description:"Dynamic page selector"}),P.registerChaiFeatureFlag("enable-add-page-dropdown",{description:"Enable add page dropdown"}),P.registerChaiFeatureFlag("enable-ai-chat-panel",{description:"Enable AI chat panel"})},Lo=()=>{const e=G(),t=N();return S.useQuery({queryKey:[y.GET_COLLECTIONS],staleTime:1/0,queryFn:async()=>t(e,{action:y.GET_COLLECTIONS})})},No=()=>{const{data:e}=te(),{data:t}=fe(),{data:s}=Te(),n=G(),r=N(),a=h.useMemo(()=>(s==null?void 0:s.fallbackLang)||"en",[s==null?void 0:s.fallbackLang]),i=h.useRef(new Map);return S.useMutation({mutationFn:async({block:l})=>{const c=l._id,d=(t==null?void 0:t.lang)||a,u=`${c}:${d}`;if(i.current.has(u))return i.current.get(u);const f=r(n,{action:y.GET_BLOCK_ASYNC_PROPS,data:{block:l,lang:d,pageProps:{slug:t==null?void 0:t.slug,searchParams:{},pageType:t==null?void 0:t.pageType,fallbackLang:a,lastSaved:t.lastSaved,pageId:e.id,primaryPageId:t.primaryPage||e.id,pageBaseSlug:t==null?void 0:t.slug,dynamic:e==null?void 0:e.dynamic,languagePageId:t.id}}});return i.current.set(u,f),f.finally(()=>{i.current.delete(u)}),f}})},zn=()=>{const[,e]=le();return h.useCallback((t,s)=>{const r=new URLSearchParams(window.location.search).get("lang"),a=new URLSearchParams({page:t});r&&a.set("lang",r),window.history.pushState({},"",`?${a.toString()}`),e(a),window.dispatchEvent(new PopStateEvent("popstate")),s==null||s()},[e])},$n=()=>{const e=zn();return h.useCallback(({pageId:t})=>{e(t)},[e])},jo=h.lazy(()=>Promise.resolve().then(()=>require("./page-lock-BGnEhXCW.cjs"))),Do=h.lazy(()=>Promise.resolve().then(()=>require("./no-language-page-dialog-BqrxzBfj.cjs"))),Go=h.lazy(()=>Promise.resolve().then(()=>require("./digital-asset-manager-CaF6tRHd.cjs"))),Oo=h.lazy(()=>Promise.resolve().then(()=>require("./save-to-lib-BjfzVByH.cjs"))),ko=h.lazy(()=>Promise.resolve().then(()=>require("./theme-panel-footer-DoFYuPy1.cjs"))),Ro=h.lazy(()=>Promise.resolve().then(()=>require("./web-preview-BvfhE4ij.cjs")));Co();tr.loadWebBlocks();P.registerChaiTopBar(da);Ra();P.registerChaiMediaManager(Go);P.registerChaiSaveToLibrary(Oo);const Mo={role:"",permissions:null},Gs=e=>{const{data:t}=Pa(),s=Mt(),{data:n=Mo,isFetching:r}=Xs(),{data:a,isFetching:i}=he(),{data:l,isFetching:c}=Lo(),{data:d,isFetching:u}=Te(),f=r||i||c||u,[E]=le(),m=E.get("page"),{data:A}=te(),{data:w,isFetching:v}=ma(),{blocks:U}=ga(w),{data:T,isFetching:C}=Js(),{pageStatus:L}=re(),q=fa(),{onSave:j}=xa(),{mutateAsync:ce}=No(),{getPartialBlocks:ue,getPartialBlockBlocks:K}=_a(),{mutateAsync:I}=Gr(),{mutateAsync:D}=Zs(),W=$n(),[Q,ae]=h.useState(!1),Qe=h.useRef([]),me=h.useMemo(()=>p.get(d,"theme",{})||{},[d]),ze=L===J.EDITING,Se=L===J.CHECKING,ys=v||Se||C;Qe.current=U;const[Jn]=H.useAtom(Qn);h.useEffect(()=>{const ee=()=>{document.hidden?ae(!0):ae(!1)};return window.addEventListener("visibilitychange",ee),()=>window.removeEventListener("visibilitychange",ee)},[]);const Zn=h.useMemo(()=>{const ee={};return n&&(ee.permissions=p.get(n,"permissions",null),ee.role=p.get(n,"role","user")),ee},[n]),As=h.useMemo(()=>t==null?void 0:t.some(ee=>ee.isSiteLibrary),[t]),Xn=h.useCallback(async(ee,At)=>await I({pageType:ee,query:At}),[I]);return o.jsxs(o.Fragment,{children:[ys&&o.jsx(fs,{className:f?"fixed inset-0 bg-white":"bg-white/75",children:o.jsx(_.Loader,{className:`animate-spin text-primary ${f?"h-6 w-6":"h-5 w-5"}`})}),Jn&&o.jsx(h.Suspense,{fallback:o.jsx("div",{className:"absolute inset-0 z-[999999] flex min-h-screen w-screen items-center justify-center bg-gray-100",children:o.jsx(_.Loader,{className:"h-6 w-6 animate-spin text-primary"})}),children:o.jsx(Ro,{})}),o.jsx(P.ChaiBuilderEditor,{flags:e.flags?{...e.flags,librarySite:As}:{librarySite:As},gotoPage:W,collections:l??[],getBlockAsyncProps:ce,pageExternalData:T,themePresets:e.themePresets??[],pageId:A==null?void 0:A.id,loading:v,fallbackLang:s,languages:(d==null?void 0:d.languages)||[],brandingOptions:(d==null?void 0:d.theme)||{},translations:e.translations||{},locale:e.locale||"en",htmlDir:e.htmlDir||"ltr",autoSave:!Q&&ze&&(e.autoSave??!0),autoSaveInterval:e.autoSaveInterval??15,onError:e.onError||console.error,getPartialBlockBlocks:K,getPartialBlocks:ue,blocks:v?[]:U,theme:p.cloneDeep(me),pageTypes:a,searchPageTypeItems:Xn,askAiCallBack:q,onSave:async({blocks:ee,theme:At,needTranslations:er})=>{if(!m)return!0;Qe.current=ee;const Ts=[...ee];return await j({page:m,blocks:Ts,needTranslations:er}),Qe.current=Ts,p.isEqual(At,me)||await D({settings:{theme:At}}),!0},themePanelComponent:ko,...Zn,children:o.jsx(jo,{isFetchingPageData:ys})}),o.jsx("div",{children:o.jsx(Do,{})})]})},Uo=new S.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchOnMount:!1}}}),Bo=e=>{const[,t]=Ot(),[s,n]=h.useState(!1);return h.useEffect(()=>(t(p.pick(e,["apiUrl","usersApiUrl","assetsApiUrl","getPreviewUrl","getLiveUrl","topLeftCorner","onLogout","getAccessToken","websocket","getLoggedInUser","features","currentUser"])),setTimeout(()=>{n(!0)},200),()=>{n(!1),t({})}),[e,t]),s?p.get(e,"hasReactQueryProvider",!1)===!0?o.jsxs(o.Fragment,{children:[o.jsx(Gs,{...e}),o.jsx(Ds,{})]}):o.jsxs(S.QueryClientProvider,{client:Uo,children:[o.jsx(Gs,{...e}),o.jsx(Ds,{})]}):o.jsx("div",{})},Fo=z.lazy(()=>Promise.resolve().then(()=>require("./nested-path-selector-content-D_iF9Sm3.cjs")));function Wn({data:e,onSelect:t,dataType:s="value",disabled:n=!1}){const[r,a]=z.useState(!1);return o.jsxs(g.Popover,{open:r,onOpenChange:a,children:[o.jsxs(g.Tooltip,{children:[o.jsx(g.TooltipTrigger,{asChild:!0,children:o.jsx(g.PopoverTrigger,{asChild:!0,children:o.jsx(g.Button,{size:"sm",variant:"outline",className:"h-6 w-6 px-1 py-0 text-[9px] text-muted-foreground",role:"combobox","aria-expanded":r,disabled:n,children:o.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24px",height:"24px",viewBox:"0 0 24 24",fill:"none",children:o.jsx("path",{d:"M9.5 5H9C7.89543 5 7 5.89543 7 7V9C7 10 6.4 12 4 12C5 12 7 12.6 7 15V17.0002C7 18.1048 7.89543 19 9 19H9.5M14.5 5H15C16.1046 5 17 5.89543 17 7V9C17 10 17.6 12 20 12C19 12 17 12.6 17 15V17.0002C17 18.1048 16.1046 19 15 19H14.5",stroke:"#000000",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2"})})})})}),o.jsx(g.TooltipContent,{children:"Add field"})]}),r&&o.jsx(z.Suspense,{children:o.jsx(Fo,{data:e,onSelect:t,dataType:s,open:r,setOpen:a})})]})}const qo=()=>{const{savePageAsync:e}=P.useSavePage(),t=S.useQueryClient(),{isLocked:s}=re();return h.useCallback(async()=>{s||await e(),t.invalidateQueries({queryKey:[y.GET_DRAFT_PAGE]}),t.invalidateQueries({queryKey:[y.GET_BUILDER_PAGE_DATA]})},[e,t,s])},Ko=()=>{const e=S.useQueryClient();return h.useCallback(()=>{e.clear()},[e])},Vo=()=>{const e=G(),t=N(),{data:s}=fe(),n=S.useQueryClient();return S.useMutation({mutationFn:async r=>{if(!(s!=null&&s.id))throw new Error("No active page found");return await t(`${e}`,{action:y.UPDATE_PAGE_METADATA,data:{id:s.id,metadata:r}})},onSuccess:()=>{n.invalidateQueries({queryKey:[y.GET_BUILDER_PAGE_DATA]}),n.invalidateQueries({queryKey:[y.GET_LANGUAGE_PAGES]})},onError:()=>{console.error("Failed to update metadata")}})},Ho=h.lazy(()=>Promise.resolve().then(()=>require("./digital-asset-manager-CaF6tRHd.cjs"))),Qo=({assetId:e,assetUrl:t,onChange:s,className:n="",placeholder:r="Select an image",disabled:a=!1})=>{const{t:i}=P.useTranslation(),[l,c]=h.useState(!1),d=()=>{a||c(!0)},u=()=>{c(!1)},f=A=>{const w=Array.isArray(A)?A[0]:A;w!=null&&w.url&&s(p.pick(w,["url","id"])),c(!1)},E=()=>{s({url:"",id:""})},m=(t==null?void 0:t.startsWith("{{"))&&(t==null?void 0:t.endsWith("}}"));return o.jsxs("div",{className:`w-full ${n}`,children:[t?o.jsxs("div",{className:"relative overflow-hidden rounded-md border",children:[m?o.jsx("div",{className:"flex h-12 items-center bg-gray-100 px-4",children:o.jsx("p",{className:"text-xs text-gray-500",children:t})}):o.jsx("img",{onClick:d,src:t,alt:i("Selected image"),className:"h-auto max-h-[100px] w-full bg-gray-100 object-contain"}),o.jsxs("div",{className:"absolute right-2 top-2 flex gap-2",children:[o.jsx(g.Button,{type:"button",variant:"outline",size:"icon",className:"h-8 w-8 rounded-full bg-white text-red-500",onClick:E,disabled:a,children:m?o.jsx(_.X,{className:"h-4 w-4"}):o.jsx(_.Trash2,{className:"h-4 w-4"})}),!m&&o.jsx(g.Button,{type:"button",variant:"outline",size:"icon",className:"h-8 w-8 rounded-full bg-white/80 hover:bg-white/90",onClick:d,disabled:a,children:o.jsx(_.ImageIcon,{className:"h-4 w-4"})})]})]}):o.jsx("div",{className:`flex cursor-pointer items-center justify-center rounded-md border border-dashed p-6 ${a?"cursor-not-allowed opacity-50":"hover:border-gray-400"}`,onClick:d,children:o.jsxs("div",{className:"flex flex-col items-center gap-2",children:[o.jsx(_.ImageIcon,{className:"h-10 w-10 text-gray-400"}),o.jsx("p",{className:"text-sm text-gray-500",children:r})]})}),o.jsx(g.Dialog,{open:l,onOpenChange:c,children:o.jsxs(g.DialogContent,{className:"h-fit w-full max-w-7xl overflow-hidden p-0",children:[o.jsxs(g.DialogHeader,{className:"hidden border-b px-4 py-2",children:[o.jsx(g.DialogTitle,{children:i("Select Image")}),o.jsx(g.Button,{type:"button",variant:"ghost",size:"icon",className:"absolute right-4 top-2",onClick:u,children:o.jsx(_.X,{className:"h-4 w-4"})})]}),o.jsx("div",{className:"h-full flex-1 p-4",children:o.jsx(h.Suspense,{children:o.jsx(Ho,{close:u,onSelect:f,mode:"image",assetId:e})})})]})})]})},zo=h.createContext(null),$t={didCatch:!1,error:null};class Yn extends h.Component{constructor(t){super(t),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=$t}static getDerivedStateFromError(t){return{didCatch:!0,error:t}}resetErrorBoundary(){const{error:t}=this.state;if(t!==null){for(var s,n,r=arguments.length,a=new Array(r),i=0;i<r;i++)a[i]=arguments[i];(s=(n=this.props).onReset)===null||s===void 0||s.call(n,{args:a,reason:"imperative-api"}),this.setState($t)}}componentDidCatch(t,s){var n,r;(n=(r=this.props).onError)===null||n===void 0||n.call(r,t,s)}componentDidUpdate(t,s){const{didCatch:n}=this.state,{resetKeys:r}=this.props;if(n&&s.error!==null&&$o(t.resetKeys,r)){var a,i;(a=(i=this.props).onReset)===null||a===void 0||a.call(i,{next:r,prev:t.resetKeys,reason:"keys"}),this.setState($t)}}render(){const{children:t,fallbackRender:s,FallbackComponent:n,fallback:r}=this.props,{didCatch:a,error:i}=this.state;let l=t;if(a){const c={error:i,resetErrorBoundary:this.resetErrorBoundary};if(typeof s=="function")l=s(c);else if(n)l=h.createElement(n,c);else if(r!==void 0)l=r;else throw i}return h.createElement(zo.Provider,{value:{didCatch:a,error:i,resetErrorBoundary:this.resetErrorBoundary}},l)}}function $o(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return e.length!==t.length||e.some((s,n)=>!Object.is(s,t[n]))}const Wo=e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),ns=e=>{if(!e.trim())return{isValid:!1,parsed:null,placeholders:[],error:{message:"JSON is empty"}};try{return{isValid:!0,parsed:JSON.parse(e),error:null,placeholders:[]}}catch{}const t=/{{([^{}]+)}}/g,s=[];let n=e,r;for(;(r=t.exec(e))!==null;){const a=r[0],i=r.index,l=`"__placeholder_${s.length}__"`;s.push({original:a,replaced:l,position:i}),n=n.replace(a,l)}try{return{isValid:!0,parsed:JSON.parse(n),error:null,placeholders:s}}catch(a){const i=a,l=i.message.match(/position (\d+)/),c=l?parseInt(l[1]):void 0;let d,u;if(c!==void 0){const f=n.substring(0,c).split(`
2
+ `);d=f.length,u=f[f.length-1].length+1}return{isValid:!1,parsed:null,placeholders:s,error:{message:i.message,line:d,column:u,position:c}}}},Yo=(e,t)=>{let n=JSON.stringify(e,null,2);return t.forEach(({original:r},a)=>{const i=`"__placeholder_${a}__"`,l=new RegExp(Wo(i),"g");n=n.replace(l,r)}),n},Jo=(e,t)=>{if(!e)return"";let s=JSON.stringify(e,null,2);const n=/{{([^{}]+)}}/g;let r;for(;(r=n.exec(s))!==null;){const a=r[1],i=p.get(t,a,null);s=s.replace(r[0],i)}return s},Zo=h.lazy(()=>Promise.resolve().then(()=>require("./shared-json-ld-DcYfd7Sl.cjs"))),Xo=({value:e,onChange:t,disabled:s=!1,readOnly:n=!1,placeholder:r="Enter JSON",rows:a=6,id:i="json-input",pageData:l={},handleFieldInsert:c,hasJsonLdForSelectedLang:d,copyJsonLDFromDefaultPage:u})=>{const[f,E]=h.useState("edit"),[m,A]=h.useState(null),[w,v]=h.useState(""),U=h.useRef(null),[T]=Ot(),C=i==="jsonLD"&&p.get(T,"features.sharedJsonLD",!1),L=i==="jsonLD"&&!d&&!!u;h.useEffect(()=>{e.trim()===""&&t("{}")},[e,t]);const q=K=>{if(n)return;const I=K.target.value;t(I)},j=K=>{if(K.key==="Tab"){K.preventDefault();const I=K.currentTarget,D=I.selectionStart,W=I.selectionEnd;if(D!==W){const ae=e.substring(D,W).split(`
3
+ `);if(K.shiftKey){const me=ae.map(Se=>Se.startsWith(" ")?Se.substring(2):Se).join(`
4
+ `),ze=e.substring(0,D)+me+e.substring(W);t(ze),setTimeout(()=>{I.selectionStart=D,I.selectionEnd=D+me.length},0)}else{const me=ae.map(Se=>` ${Se}`).join(`
5
+ `),ze=e.substring(0,D)+me+e.substring(W);t(ze),setTimeout(()=>{I.selectionStart=D,I.selectionEnd=D+me.length},0)}}else{const Q=e.substring(0,D)+" "+e.substring(W);t(Q),setTimeout(()=>{I.selectionStart=I.selectionEnd=D+2},0)}}};h.useEffect(()=>{const K=ns(e);if(K.isValid)if(A(null),K.parsed){const I=Jo(K.parsed,l);v(I)}else v("");else A(K.error),v("")},[e,l]);const ce=()=>{const K=ns(e);if(K.isValid&&K.parsed){const I=Yo(K.parsed,K.placeholders);t(I)}},ue=()=>{m!=null&&m.position&&U.current&&(U.current.focus(),U.current.setSelectionRange(m.position,m.position+1))};return o.jsx(Yn,{fallback:o.jsx("div",{children:"Some error"}),children:o.jsx("div",{className:"space-y-2",children:o.jsxs(g.Tabs,{value:f,onValueChange:E,className:"w-full",children:[o.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[o.jsxs(g.TabsList,{className:"w-max",children:[o.jsxs(g.TabsTrigger,{value:"edit",className:"flex items-center gap-1",children:[o.jsx(_.Code,{className:"h-4 w-4"}),o.jsx("span",{children:"Edit"})]}),o.jsxs(g.TabsTrigger,{value:"preview",className:"flex items-center gap-1",disabled:!e.trim()||m!==null||L,children:[o.jsx(_.Eye,{className:"h-4 w-4"}),o.jsx("span",{children:"Preview"})]}),C&&o.jsxs(g.TabsTrigger,{value:"shared",className:"flex items-center gap-1",disabled:!e.trim()||m!==null,children:[o.jsx(_.Share2,{className:"h-4 w-4"}),o.jsx("span",{children:"Shared"})]})]}),L?null:f==="edit"&&!n&&o.jsx("div",{className:"flex items-center gap-2",children:o.jsx(Wn,{dataType:"value",data:l??{},onSelect:K=>c&&c(K,i)})})]}),o.jsxs(g.TabsContent,{value:"edit",className:"relative mt-0",children:[!L&&f==="edit"&&o.jsx(Ut,{content:"Format JSON",side:"right",showTooltip:!s&&!m,children:o.jsx(g.Button,{type:"button",variant:"outline",size:"icon",onClick:ce,className:"absolute right-1 top-1 h-6 w-6 p-1",disabled:!e.trim()||s||m!==null,children:o.jsx(_.FileCode2,{})})}),L?o.jsx("div",{className:"flex h-40 items-center justify-center rounded-md bg-black/20",children:o.jsxs("div",{className:"flex max-w-[400px] flex-col items-center gap-2 rounded-md bg-white p-4 shadow-lg",children:[o.jsx("div",{className:"max-w-xl text-center text-xs text-gray-500",children:"JSON-LD for is not added for selected language. JSON LD will be used from default language."}),o.jsxs(g.Button,{type:"button",variant:"default",size:"sm",onClick:u,children:[o.jsx(_.Plus,{}),"Copy & Edit from default language"]})]})}):o.jsx(g.Textarea,{ref:U,id:i,name:i,className:`rounded-md border border-input text-xs ${m?"border-red-500":""}`,onChange:q,onKeyDown:j,value:e,placeholder:r,rows:a,disabled:s,readOnly:n}),m&&o.jsxs(g.Alert,{variant:"destructive",className:"mt-2",children:[o.jsx(_.AlertTriangle,{className:"h-4 w-4"}),o.jsxs(g.AlertDescription,{className:"flex flex-col",children:[o.jsx("span",{className:"font-medium",children:"Invalid JSON"}),o.jsx("span",{className:"text-sm",children:m.message}),m.line&&m.column&&o.jsxs("span",{className:"text-sm",children:["Error at line ",m.line,", column ",m.column]}),o.jsx(g.Button,{type:"button",variant:"link",size:"sm",className:"mt-1 h-auto self-start p-0 text-sm",onClick:ue,children:"Show position"})]})]})]}),o.jsxs(g.TabsContent,{value:"preview",className:"mt-0",children:[o.jsx(g.Textarea,{rows:a,value:w,readOnly:!0,className:"cursor-default bg-muted font-mono text-sm"}),o.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:"This is how the JSON will look after placeholder substitution."})]}),C&&o.jsx(g.TabsContent,{value:"shared",className:"mt-0",children:o.jsx(h.Suspense,{children:o.jsx(Zo,{})})})]})})})},el=e=>{const t=Ms(),s=N();return S.useQuery({queryKey:[y.GET_CHAI_USER,e],queryFn:async()=>{const r=await s(t,{action:y.GET_CHAI_USER,data:{userId:e}});return{...r,name:r.name||r.email}},enabled:!p.isEmpty(e),staleTime:"static"})};if(typeof window>"u")throw new Error("@chaibuilder/pages is not available on the server");exports.$TRACK=hs;exports.ACTIONS=y;exports.BlurContainer=fs;exports.ChaiBuilderPages=Bo;exports.Dynamic=Gi;exports.EVENT=X;exports.ErrorBoundary=Yn;exports.For=ai;exports.ImagePicker=Qo;exports.Index=ii;exports.LANGUAGES=$e;exports.LanguageSwitcher=Qs;exports.Match=ci;exports.NestedPathSelector=Wn;exports.PAGES_PERMISSIONS=se;exports.PAGE_STATUS=J;exports.PageActionsDropdown=Ws;exports.PermissionChecker=xt;exports.Portal=ji;exports.Show=oi;exports.SmartJsonInput=Xo;exports.Switch=li;exports.Tooltip=Ut;exports.addEventListener=xn;exports.addNewLangAtom=kt;exports.batch=qa;exports.className=Pn;exports.clearDelegatedEvents=Pi;exports.convertRemToPixels=xo;exports.createComponent=Es;exports.createComputed=cn;exports.createContext=za;exports.createEffect=gs;exports.createMemo=$;exports.createRenderEffect=pe;exports.createRoot=Ee;exports.createSignal=V;exports.createUniqueId=ri;exports.delegateEvents=Sn;exports.deleteNestedDataByPath=Je;exports.displayValue=po;exports.getMutationStatusColor=mo;exports.getPreferredColorScheme=_o;exports.getQueryStatusColor=go;exports.getQueryStatusColorByLabel=Eo;exports.getQueryStatusLabel=fo;exports.getSidedProp=ho;exports.insert=Gt;exports.memo=Ai;exports.mergeProps=ps;exports.mutationSortFns=Po;exports.navigateToPage=is;exports.on=Ka;exports.onCleanup=Ke;exports.onMount=un;exports.parseJSONWithPlaceholders=ns;exports.previewUrlAtom=Qn;exports.serialize=qn;exports.setAttribute=Dt;exports.sortFns=To;exports.splitProps=pn;exports.spread=_n;exports.stringify=uo;exports.template=Si;exports.throwConfetti=_t;exports.untrack=Y;exports.updateNestedDataByPath=Ye;exports.use=wn;exports.useActivePage=fe;exports.useAddGlobalSchema=Ea;exports.useApiUrl=G;exports.useApplySchemaToAllPages=Ta;exports.useAssetsApiUrl=rr;exports.useBuilderFetch=ir;exports.useBuilderPageData=Js;exports.useChaiAuth=Rt;exports.useChaiUserInfo=el;exports.useChaibuilderRealtime=_r;exports.useChangePage=zn;exports.useChangeSlug=Fr;exports.useClearAll=Ko;exports.useContext=$a;exports.useCreatePage=Or;exports.useCurrentPage=te;exports.useCurrentPageOwner=Ks;exports.useDeleteGlobalSchema=ya;exports.useDeletePage=Rr;exports.useDynamicPageSelector=Fs;exports.useFallbackLang=Mt;exports.useFetch=N;exports.useGotoPage=$n;exports.useIsLanguagePageCreated=$s;exports.useLanguagePages=Ae;exports.useMarkAsTemplate=Ur;exports.usePageEditInfo=as;exports.usePageLockMeta=ls;exports.usePageLockStatus=re;exports.usePageToUser=os;exports.usePageType=zs;exports.usePageTypes=he;exports.usePagesProps=Ot;exports.usePublishPages=ds;exports.useReloadPage=qo;exports.useRemoveSchemaFromAllPages=Sa;exports.useSearchParams=le;exports.useSendRealtimeEvent=Vs;exports.useTogglePageGlobalSchema=Aa;exports.useTransition=Qa;exports.useUnmarkAsTemplate=Br;exports.useUnpublishPage=Mr;exports.useUpdateActivePageMetadata=Vo;exports.useUpdateGlobalSchema=pa;exports.useUpdatePage=kr;exports.useUpdateWebsiteSettings=Zs;exports.useUserId=pt;exports.useUserRoleAndPermissions=Xs;exports.useWebsiteLanguagePages=wr;exports.useWebsitePages=us;exports.useWebsiteSetting=Te;
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./index-Pdb5tSRL.cjs"),s=require("@chaibuilder/sdk");exports.ChaiBuilderPagesRealtime=e.ChaiBuilderPagesRealtime;exports.ChaiJsonInput=e.SmartJsonInput;exports.ImagePicker=e.ImagePicker;exports.LanguageSwitcher=e.LanguageSwitcher;exports.NestedPathSelector=e.NestedPathSelector;exports.PermissionChecker=e.PermissionChecker;exports.default=e.ChaiBuilderPages;exports.useActivePage=e.useActivePage;exports.useApiUrl=e.useApiUrl;exports.useBuilderFetch=e.useBuilderFetch;exports.useBuilderPageData=e.useBuilderPageData;exports.useChaiAuth=e.useChaiAuth;exports.useChaiCurrentPage=e.useCurrentPage;exports.useChaiUserInfo=e.useChaiUserInfo;exports.useClearAll=e.useClearAll;exports.useFallbackLang=e.useFallbackLang;exports.useFetch=e.useFetch;exports.useGotoPage=e.useGotoPage;exports.useLanguagePages=e.useLanguagePages;exports.usePageTypes=e.usePageTypes;exports.useReloadPage=e.useReloadPage;exports.useUpdateActivePageMetadata=e.useUpdateActivePageMetadata;exports.useUserPermissions=e.useUserRoleAndPermissions;exports.useWebsitePages=e.useWebsitePages;exports.useWebsiteSetting=e.useWebsiteSetting;Object.keys(s).forEach(a=>{a!=="default"&&!Object.prototype.hasOwnProperty.call(exports,a)&&Object.defineProperty(exports,a,{enumerable:!0,get:()=>s[a]})});
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./index-MzR4MaVE.cjs"),a=require("@chaibuilder/sdk");exports.ChaiJsonInput=e.SmartJsonInput;exports.ImagePicker=e.ImagePicker;exports.LanguageSwitcher=e.LanguageSwitcher;exports.NestedPathSelector=e.NestedPathSelector;exports.PermissionChecker=e.PermissionChecker;exports.default=e.ChaiBuilderPages;exports.useActivePage=e.useActivePage;exports.useApiUrl=e.useApiUrl;exports.useBuilderFetch=e.useBuilderFetch;exports.useBuilderPageData=e.useBuilderPageData;exports.useChaiAuth=e.useChaiAuth;exports.useChaiCurrentPage=e.useCurrentPage;exports.useChaiUserInfo=e.useChaiUserInfo;exports.useClearAll=e.useClearAll;exports.useFallbackLang=e.useFallbackLang;exports.useFetch=e.useFetch;exports.useGotoPage=e.useGotoPage;exports.useLanguagePages=e.useLanguagePages;exports.usePageTypes=e.usePageTypes;exports.useReloadPage=e.useReloadPage;exports.useUpdateActivePageMetadata=e.useUpdateActivePageMetadata;exports.useUserPermissions=e.useUserRoleAndPermissions;exports.useWebsitePages=e.useWebsitePages;exports.useWebsiteSetting=e.useWebsiteSetting;Object.keys(a).forEach(s=>{s!=="default"&&!Object.prototype.hasOwnProperty.call(exports,s)&&Object.defineProperty(exports,s,{enumerable:!0,get:()=>a[s]})});
package/dist/index.d.ts CHANGED
@@ -18,7 +18,7 @@ declare type ChaiBuilderPagesProps = {
18
18
  getPreviewUrl?: (slug: string) => string;
19
19
  getLiveUrl?: (slug: string) => string;
20
20
  onLogout?: () => void;
21
- getAccessToken: () => Promise<string>;
21
+ getAccessToken?: () => Promise<string>;
22
22
  currentUser: LoggedInUser | null;
23
23
  websocket?: ChaiWebSocketClient;
24
24
  features?: {
@@ -27,31 +27,6 @@ declare type ChaiBuilderPagesProps = {
27
27
  } & Record<string, boolean>;
28
28
  } & Pick<ChaiBuilderEditorProps, "onError" | "translations" | "locale" | "htmlDir" | "autoSave" | "autoSaveInterval" | "fallbackLang" | "languages" | "themePresets" | "flags">;
29
29
 
30
- export declare class ChaiBuilderPagesRealtime implements ChaiBuilderPagesRealtimeInterface {
31
- private channelId;
32
- private websocket;
33
- private channel;
34
- private userId;
35
- private clientId;
36
- private pageId;
37
- private callback;
38
- constructor(websocket: SupabaseClient, websiteId: string, userId: string, cb: (event: string, payload?: any) => void);
39
- private getClientId;
40
- private getOnlineUsers;
41
- private getPageOwner;
42
- private getPageUserMapping;
43
- private onReceiveEvent;
44
- joinPage(pageId: string): Promise<void>;
45
- leavePage(): Promise<void>;
46
- sendEvent(event: LISTEN_EVENTS, eventPayload?: any): Promise<void>;
47
- }
48
-
49
- declare interface ChaiBuilderPagesRealtimeInterface {
50
- leavePage: () => Promise<void>;
51
- joinPage: (pageId: string) => Promise<void>;
52
- sendEvent: (event: LISTEN_EVENTS, payload?: EVENT_PAYLOAD) => Promise<void>;
53
- }
54
-
55
30
  export declare const ChaiJsonInput: React.FC<SmartJsonInputProps>;
56
31
 
57
32
  declare type ChaiWebsiteSetting = {
@@ -63,12 +38,6 @@ declare type ChaiWebsiteSetting = {
63
38
 
64
39
  declare type ChaiWebSocketClient = SupabaseClient;
65
40
 
66
- declare type EVENT_PAYLOAD = {
67
- senderClientId?: string;
68
- targetClientId?: string;
69
- requestingClientId?: string;
70
- } & Record<string, any>;
71
-
72
41
  export declare const ImagePicker: default_2.FC<ImagePickerProps>;
73
42
 
74
43
  declare interface ImagePickerProps {
@@ -89,8 +58,6 @@ export declare const LanguageSwitcher: ({ showAdd, variant, goToDefaultLang, }:
89
58
  goToDefaultLang?: boolean;
90
59
  }) => JSX.Element | null;
91
60
 
92
- declare type LISTEN_EVENTS = "PAGE_LOCKED" | "USER_JOINED" | "TAKE_OVER_REQUESTED" | "UPDATE_ONLINE_USERS" | "TAKE_OVER_REQUEST_ACCEPTED" | "TAKE_OVER_REQUEST_REJECTED";
93
-
94
61
  declare type LoggedInUser = {
95
62
  id: string;
96
63
  email: string;
package/dist/index.js CHANGED
@@ -1,29 +1,28 @@
1
- import { aW as s, ax as u, aL as t, aJ as i, aK as r, ar as g, aO as P, aP as l, ak as h, an as o, aG as n, aU as c, aq as d, ai as C, aQ as m, f as p, al as f, aR as A, g as U, h as b, aS as k, aT as L, aV as S, b as x, e as B } from "./index-e9WlBH0R.js";
1
+ import { aE as s, aS as u, aQ as t, aR as r, ax as i, aV as g, aW as o, aq as P, at as l, aN as h, a$ as n, aw as c, ao as d, aX as C, k as m, ar as p, aY as A, l as b, m as f, aZ as k, a_ as S, b0 as U, g as x, j as F } from "./index-DOH-lluK.js";
2
2
  export * from "@chaibuilder/sdk";
3
3
  export {
4
- s as ChaiBuilderPagesRealtime,
5
- u as ChaiJsonInput,
6
- t as ImagePicker,
7
- i as LanguageSwitcher,
4
+ s as ChaiJsonInput,
5
+ u as ImagePicker,
6
+ t as LanguageSwitcher,
8
7
  r as NestedPathSelector,
9
- g as PermissionChecker,
10
- P as default,
11
- l as useActivePage,
12
- h as useApiUrl,
13
- o as useBuilderFetch,
14
- n as useBuilderPageData,
15
- c as useChaiAuth,
16
- d as useChaiCurrentPage,
17
- C as useChaiUserInfo,
18
- m as useClearAll,
19
- p as useFallbackLang,
20
- f as useFetch,
8
+ i as PermissionChecker,
9
+ g as default,
10
+ o as useActivePage,
11
+ P as useApiUrl,
12
+ l as useBuilderFetch,
13
+ h as useBuilderPageData,
14
+ n as useChaiAuth,
15
+ c as useChaiCurrentPage,
16
+ d as useChaiUserInfo,
17
+ C as useClearAll,
18
+ m as useFallbackLang,
19
+ p as useFetch,
21
20
  A as useGotoPage,
22
- U as useLanguagePages,
23
- b as usePageTypes,
21
+ b as useLanguagePages,
22
+ f as usePageTypes,
24
23
  k as useReloadPage,
25
- L as useUpdateActivePageMetadata,
26
- S as useUserPermissions,
24
+ S as useUpdateActivePageMetadata,
25
+ U as useUserPermissions,
27
26
  x as useWebsitePages,
28
- B as useWebsiteSetting
27
+ F as useWebsiteSetting
29
28
  };
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),x=require("@chaibuilder/sdk/ui"),z=require("date-fns"),p=require("lodash-es"),N=require("lucide-react"),b=require("react"),M=require("react-diff-view"),O=require("./index-Pdb5tSRL.cjs"),B=require("@tanstack/react-query");function H(t,r){const o=O.useApiUrl(),n=O.useFetch(),f=p.startsWith(t.uid,"draft:")||p.startsWith(r.uid,"live:");return B.useQuery({queryKey:["revision-comparison",t.uid,r.uid],queryFn:async()=>{if(!t.uid||!r.uid)throw new Error("Both revision IDs are required for comparison");const l=u=>u==="draft"||u==="live"?u:"revision",s=u=>p.replace(u.uid,`${u.label}:`,"");return await n(o,{action:O.ACTIONS.GET_COMPARE_DATA,data:{versions:{version1:{type:l(t.label),id:s(t)},version2:{type:l(r.label),id:s(r)}}}})},enabled:!!t.uid&&!!r.uid,staleTime:f?0:1/0})}const K=({version:t})=>{const r=t==null?void 0:t.item,{data:o}=O.useChaiUserInfo(r==null?void 0:r.currentEditor),n=t.label==="live",f=t.label==="draft";return e.jsxs("span",{className:`flex items-center gap-x-2 rounded border bg-white px-2 text-xs shadow-lg ${n?"border-green-500/30":f?"border-amber-500/30":"border-purple-500/30"}`,children:[e.jsx("div",{className:"h-full items-center rounded px-1.5 py-0.5 font-medium capitalize"+(n?" bg-green-500 text-green-50":f?" bg-amber-500 text-amber-50":" bg-purple-500 text-purple-50"),children:t.label}),e.jsxs("div",{className:"py-1 text-xs font-light leading-none text-gray-800",children:[e.jsxs("div",{children:[e.jsx("span",{className:"font-light opacity-90",children:f?"Currently editing":"Published by"}),!f&&e.jsx("span",{className:"pl-1 font-medium",children:(o==null?void 0:o.name)||"Unknown"})]}),e.jsx("div",{className:"text-[10px] leading-tight",children:z.formatDate(r.createdAt,"dd MMM yyyy, h:mm a")})]})]})},L=({version:t})=>e.jsx(K,{version:t});function V(t,r,o="data.json"){const n=JSON.stringify(t,null,2),f=JSON.stringify(r,null,2),l=n.split(`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),x=require("@chaibuilder/sdk/ui"),z=require("date-fns"),p=require("lodash-es"),N=require("lucide-react"),b=require("react"),M=require("react-diff-view"),O=require("./index-MzR4MaVE.cjs"),B=require("@tanstack/react-query");function H(t,r){const o=O.useApiUrl(),n=O.useFetch(),f=p.startsWith(t.uid,"draft:")||p.startsWith(r.uid,"live:");return B.useQuery({queryKey:["revision-comparison",t.uid,r.uid],queryFn:async()=>{if(!t.uid||!r.uid)throw new Error("Both revision IDs are required for comparison");const l=u=>u==="draft"||u==="live"?u:"revision",s=u=>p.replace(u.uid,`${u.label}:`,"");return await n(o,{action:O.ACTIONS.GET_COMPARE_DATA,data:{versions:{version1:{type:l(t.label),id:s(t)},version2:{type:l(r.label),id:s(r)}}}})},enabled:!!t.uid&&!!r.uid,staleTime:f?0:1/0})}const K=({version:t})=>{const r=t==null?void 0:t.item,{data:o}=O.useChaiUserInfo(r==null?void 0:r.currentEditor),n=t.label==="live",f=t.label==="draft";return e.jsxs("span",{className:`flex items-center gap-x-2 rounded border bg-white px-2 text-xs shadow-lg ${n?"border-green-500/30":f?"border-amber-500/30":"border-purple-500/30"}`,children:[e.jsx("div",{className:"h-full items-center rounded px-1.5 py-0.5 font-medium capitalize"+(n?" bg-green-500 text-green-50":f?" bg-amber-500 text-amber-50":" bg-purple-500 text-purple-50"),children:t.label}),e.jsxs("div",{className:"py-1 text-xs font-light leading-none text-gray-800",children:[e.jsxs("div",{children:[e.jsx("span",{className:"font-light opacity-90",children:f?"Currently editing":"Published by"}),!f&&e.jsx("span",{className:"pl-1 font-medium",children:(o==null?void 0:o.name)||"Unknown"})]}),e.jsx("div",{className:"text-[10px] leading-tight",children:z.formatDate(r.createdAt,"dd MMM yyyy, h:mm a")})]})]})},L=({version:t})=>e.jsx(K,{version:t});function V(t,r,o="data.json"){const n=JSON.stringify(t,null,2),f=JSON.stringify(r,null,2),l=n.split(`
2
2
  `),s=f.split(`
3
3
  `);let d=`--- a/${o}
4
4
  `;d+=`+++ b/${o}
@@ -1,11 +1,11 @@
1
1
  import { jsx as e, jsxs as h } from "react/jsx-runtime";
2
- import { Dialog as V, DialogContent as _, DialogHeader as q, DialogTitle as G, Switch as $, ScrollArea as I, Button as z, Badge as P } from "@chaibuilder/sdk/ui";
2
+ import { Dialog as U, DialogContent as V, DialogHeader as _, DialogTitle as G, Switch as $, ScrollArea as I, Button as z, Badge as P } from "@chaibuilder/sdk/ui";
3
3
  import { formatDate as Q } from "date-fns";
4
4
  import { startsWith as T, replace as W, isString as X, trim as Y, isArray as Z, map as ee, isPlainObject as te, mapValues as re } from "lodash-es";
5
5
  import { FileJson as F, Loader as ne, Check as B, Copy as H } from "lucide-react";
6
6
  import { useState as D, useMemo as A } from "react";
7
7
  import { parseDiff as se, Diff as le, Hunk as ae } from "react-diff-view";
8
- import { ak as ie, al as oe, A as ce, ai as de } from "./index-e9WlBH0R.js";
8
+ import { aq as ie, ar as oe, A as ce, ao as de } from "./index-DOH-lluK.js";
9
9
  import { useQuery as fe } from "@tanstack/react-query";
10
10
  function me(t, n) {
11
11
  const o = ie(), s = oe(), u = T(t.uid, "draft:") || T(n.uid, "live:");
@@ -157,7 +157,7 @@ const pe = (t) => {
157
157
  }), u;
158
158
  };
159
159
  function Te({ open: t, compare: n, onOpenChange: o }) {
160
- const s = n[0], u = n[1], [l, r] = D(null), [d, f] = D("split"), [c, p] = D(!1), [y, j] = D(!0), [g, N] = D("blocks"), { data: m, isLoading: x } = me(s, u), { leftData: a, rightData: w, options: U } = A(() => {
160
+ const s = n[0], u = n[1], [l, r] = D(null), [d, f] = D("split"), [c, p] = D(!1), [y, j] = D(!0), [g, N] = D("blocks"), { data: m, isLoading: x } = me(s, u), { leftData: a, rightData: w, options: q } = A(() => {
161
161
  var b, R;
162
162
  const i = (b = m == null ? void 0 : m.version1) == null ? void 0 : b[g], v = (R = m == null ? void 0 : m.version2) == null ? void 0 : R[g], k = S(i), C = S(v), J = ge(m == null ? void 0 : m.version1, m == null ? void 0 : m.version2);
163
163
  return { leftData: k, rightData: C, options: J };
@@ -175,13 +175,13 @@ function Te({ open: t, compare: n, onOpenChange: o }) {
175
175
  console.error("Failed to copy:", k);
176
176
  }
177
177
  }, M = (i) => JSON.stringify(i, null, 2);
178
- return /* @__PURE__ */ e(V, { open: t, onOpenChange: o, children: /* @__PURE__ */ h(_, { className: "flex h-[90vh] w-[95vw] max-w-[1900px] flex-col p-6", children: [
179
- /* @__PURE__ */ e(q, { className: "pb-4 pt-0", children: /* @__PURE__ */ h(G, { className: "flex items-center justify-between gap-2 leading-none", children: [
178
+ return /* @__PURE__ */ e(U, { open: t, onOpenChange: o, children: /* @__PURE__ */ h(V, { className: "flex h-[90vh] w-[95vw] max-w-[1900px] flex-col p-6", children: [
179
+ /* @__PURE__ */ e(_, { className: "pb-4 pt-0", children: /* @__PURE__ */ h(G, { className: "flex items-center justify-between gap-2 leading-none", children: [
180
180
  /* @__PURE__ */ h("div", { className: "flex items-center gap-2", children: [
181
181
  /* @__PURE__ */ e(F, { className: "h-5 w-5" }),
182
182
  "Compare",
183
183
  "",
184
- U.map((i) => /* @__PURE__ */ e(
184
+ q.map((i) => /* @__PURE__ */ e(
185
185
  "div",
186
186
  {
187
187
  className: `cursor-pointer rounded-full border px-2.5 py-1 text-xs leading-none ${g === i.key ? "border-blue-500 bg-blue-500 text-white" : "border-gray-600 text-gray-600 hover:bg-gray-200"}`,