@chaibuilder/pages 0.5.16-beta.1 → 0.6.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/server.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var I=Object.defineProperty;var M=(i,a,e)=>a in i?I(i,a,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[a]=e;var p=(i,a,e)=>M(i,typeof a!="symbol"?a+"":a,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("lodash-es"),O=require("@chaibuilder/runtime");let y=async i=>({...i});const R=i=>{y=i},_=async i=>{try{return await y(i)}catch(a){return console.error(a),{}}},P={},T=()=>Object.values(P),A=i=>P[i],b=(i,a)=>{P[i]={key:i,...a,hasSlug:!0}},v=(i,a)=>{P[i]={key:i,...a,hasSlug:!1}},C={};function H(i,a){c.has(C,i)&&console.warn(`Collection ${i} already registered`),C[i]={...a,id:i}}const G=()=>Object.values(C),L=i=>c.get(C,i),U={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"};class K{constructor(a){this.backend=a}async upload({file:a,folderId:e,name:n},t){var o,l;return await((l=(o=this.backend).handleAssetsAction)==null?void 0:l.call(o,{action:"UPLOAD_ASSET",data:{name:n,file:a,folderId:e}},t))}async getAsset({id:a},e){var n,t;return(t=(n=this.backend).handleAssetsAction)==null?void 0:t.call(n,{action:"GET_ASSET",data:{id:a}},e)}async getAssets(a,e){var n,t;return(t=(n=this.backend).handleAssetsAction)==null?void 0:t.call(n,{action:"GET_ASSETS",data:a},e)}async deleteAsset({id:a},e){var n,t;return(t=(n=this.backend).handleAssetsAction)==null?void 0:t.call(n,{action:"DELETE_ASSET",data:{id:a}},e)}async updateAsset({id:a,file:e,description:n},t){var r,o;return(o=(r=this.backend).handleAssetsAction)==null?void 0:o.call(r,{action:"UPDATE_ASSET",data:{id:a,file:e,description:n}},t)}}class D{constructor(a){this.backend=a}async refreshToken(a){var n,t;const e=await((t=(n=this.backend).handleUsersAction)==null?void 0:t.call(n,{action:"REFRESH_TOKEN",data:a}));return e.error?{error:e.error}:e}async login({email:a,password:e}){var t,r;const n=await((r=(t=this.backend).handleUsersAction)==null?void 0:r.call(t,{action:"LOGIN",data:{email:a,password:e}}));return n.error?{error:n.error}:n}async logout(){var a,e;await((e=(a=this.backend).handleUsersAction)==null?void 0:e.call(a,{action:"LOGOUT"}))}async isUserActive(a){var n,t;return(await((t=(n=this.backend).handleUsersAction)==null?void 0:t.call(n,{action:"CHECK_USER_STATUS"},a))).success}async getUserRoleAndPermissions(a){var n,t;return await((t=(n=this.backend).handleUsersAction)==null?void 0:t.call(n,{action:"GET_ROLE_AND_PERMISSIONS"},a))}async getUserInfo(a,e){var t,r;return await((r=(t=this.backend).handleUsersAction)==null?void 0:r.call(t,{action:"GET_CHAI_USER",data:e},a))}}class N{constructor(a,e,n){p(this,"fallbackLang","");p(this,"currentLang","");p(this,"draftMode",!1);this.backend=a,this.chaiUsers=e,this.chaiAssets=n,this._registerDefaultPageTypes(),this.chaiUsers=e??new D(this.backend),this.chaiAssets=n??new K(this.backend)}_registerDefaultPageTypes(){b("page",{name:"Static Page",icon:'<svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 24 24" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M5 8V20H19V8H5ZM5 6H19V4H5V6ZM20 22H4C3.44772 22 3 21.5523 3 21V3C3 2.44772 3.44772 2 4 2H20C20.5523 2 21 2.44772 21 3V21C21 21.5523 20.5523 22 20 22ZM7 10H11V14H7V10ZM7 16H17V18H7V16ZM13 11H17V13H13V11Z"></path></svg>'}),v("global",{name:"Global Block",helpText:"A global block can be reused in multiple pages.",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-globe w-4 h-4 text-slate-500 stroke-[1]"><circle cx="12" cy="12" r="10"></circle><path d="M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"></path><path d="M2 12h20"></path></svg>'})}setFallbackLang(a){c.isEmpty(a)&&console.warn("Fallback language cannot be empty"),this.fallbackLang=a}getFallbackLang(){return this.fallbackLang}setCurrentLang(a){c.isEmpty(a)&&console.warn("Current language cannot be empty"),console.info("Setting current language to",a),this.currentLang=a}getCurrentLang(){return this.currentLang}setDraftMode(a){this.draftMode=a}isDraftMode(){return this.draftMode}async handle(a,e){var t,r,o,l,f,m,E,S,g,w,h;switch(a.action){case"UPLOAD_ASSET":return(t=this.chaiAssets)==null?void 0:t.upload({file:a.data.file,name:a.data.name,folderId:a.data.folderId??null,optimize:a.data.optimize??!0},e);case"GET_ASSET":return(r=this.chaiAssets)==null?void 0:r.getAsset(a.data,e);case"GET_ASSETS":return(o=this.chaiAssets)==null?void 0:o.getAssets(a.data,e);case"DELETE_ASSET":return(l=this.chaiAssets)==null?void 0:l.deleteAsset(a.data,e);case"UPDATE_ASSET":return(f=this.chaiAssets)==null?void 0:f.updateAsset(a.data,e);case"REFRESH_TOKEN":return(m=this.chaiUsers)==null?void 0:m.refreshToken(a.data);case"LOGIN":return(E=this.chaiUsers)==null?void 0:E.login(a.data);case"LOGOUT":return(S=this.chaiUsers)==null?void 0:S.logout();case"CHECK_USER_STATUS":return(g=this.chaiUsers)==null?void 0:g.isUserActive(e);case"GET_ROLE_AND_PERMISSIONS":return(w=this.chaiUsers)==null?void 0:w.getUserRoleAndPermissions(e);case"GET_CHAI_USER":return(h=this.chaiUsers)==null?void 0:h.getUserInfo(e,a.data)}if(a.action==="GET_BUILDER_PAGE_DATA"){const s=await _({lang:a.data.lang,draft:!0,inBuilder:!0}),u=A(a.data.pageType);return u?{...u.dataProvider?await u.dataProvider({lang:a.data.lang,draft:!0,inBuilder:!0,pageProps:a.data.pageProps??{}}):{},global:s}:{global:s}}if(a.action==="GET_PAGE_TYPES")return Promise.all(T().map(async s=>({key:s.key,helpText:s.helpText??"",icon:s.icon??"",dynamicSegments:s.dynamicSegments??"",dynamicSlug:s.dynamicSlug??"",hasSlug:s.hasSlug??!0,name:typeof s.name=="function"?await s.name():s.name,...c.isFunction(s.defaultTrackingInfo)?{trackingDefault:s.defaultTrackingInfo()}:{}})));if(a.action==="SEARCH_PAGE_TYPE_ITEMS"){const s=A(a.data.pageType);return s?s.search?await s.search(a.data.query):this.backend.handleAction(a,e):{error:"Page type not found"}}if(a.action==="GET_COLLECTIONS")return G().map(s=>c.omit(s,"fetch"));if(a.action==="GET_BLOCK_ASYNC_PROPS"){const s=a.data.block,u=s._type;if(u==="Repeater"&&(s!=null&&s.repeaterItems.includes("{{#"))){const d=s.repeaterItems.replace("{{#","").replace("}}",""),k=L(d);return k?await(k==null?void 0:k.fetch({block:s,pageProps:a.data.pageProps,lang:a.data.lang,draft:!0,inBuilder:!0}))??[]:[]}else{const d=O.getRegisteredChaiBlock(u);return!d||!c.isFunction(d.dataProvider)?{}:await d.dataProvider({block:s,pageProps:a.data.pageProps,lang:a.data.lang,draft:!0,inBuilder:!0})??{}}}const n=await this.backend.handleAction(a,e);return this.emit(a.action,n),n}emit(a,e){var r,o,l;if(!["CREATE_PAGE","UPDATE_PAGE","DELETE_PAGE"].includes(a))return;const n=c.get(e,"page");if(!n)return;const t=A(n.pageType);if(t)switch(a){case"CREATE_PAGE":return(r=t.onCreate)==null?void 0:r.call(t,n);case"UPDATE_PAGE":return(o=t.onUpdate)==null?void 0:o.call(t,n);case"DELETE_PAGE":return(l=t.onDelete)==null?void 0:l.call(t,n)}}setLanguageFromSlug(a){if(!this.getFallbackLang())throw new Error("Please set a fallback language using setFallbackLang(lang: string)");const e=c.first(a||[""]);Object.keys(U).includes(e)?this.setCurrentLang(e):this.setCurrentLang(this.getFallbackLang())}async resolvePageLink(a){if(!c.startsWith(a,"pageType:"))return a;const e=a.split(":")[1],n=a.split(":")[2],t=A(e);return t?await this.resolveLink(t.key,n):a}async resolveLink(a,e){const n=A(a);if(!n)return"/not-found";const t=this.isDraftMode(),r=this.getCurrentLang()===this.getFallbackLang()?"":this.getCurrentLang();return n.resolveLink?await n.resolveLink(e,t,r):await this.backend.handleAction({action:"GET_LINK",data:{pageType:a,id:e,draft:t,lang:r}})}async getPageBySlug(a){const e=this.isDraftMode(),n={};return T().forEach(t=>{c.has(t,"dynamicSegments")&&t.dynamicSegments&&(n[t.key]=t.dynamicSegments)}),await this.backend.handleAction({action:"GET_PAGE_META",data:{slug:a,draft:e,dynamicSegments:n}})}async getFullPage(a){const e=this.isDraftMode(),n=this.getCurrentLang(),t=this.getFallbackLang();return await this.backend.handleAction({action:"GET_PAGE",data:{id:a,lang:t===n?void 0:n,draft:e,mergePartials:!0}})}async getSiteSettings(){const a=this.isDraftMode();return await this.backend.handleAction({action:"GET_WEBSITE_SETTINGS",data:{draft:a}})}async getPageData(a,e,n){var S;const t=this.isDraftMode(),r=this.getCurrentLang(),o=A(e),l=a.filter(g=>g._type==="Repeater"&&(g==null?void 0:g.repeaterItems.includes("{{#")));let f={};if(l.length>0){const g=l.map(h=>({collectionId:h.repeaterItems.replace("{{#","").replace("}}",""),block:h}));f=(await Promise.all(g.map(async({collectionId:h,block:s})=>{const u=L(h);try{const d=await(u==null?void 0:u.fetch({lang:r,draft:t,inBuilder:!1,pageProps:n,block:s}));return Promise.resolve({[`#${h}/${s._id}`]:c.get(d,"items",[])??[]})}catch{return Promise.resolve({[`#${h}/${s._id}`]:[]})}}))).reduce((h,s)=>({...h,...s}),{})}const[m,E]=await Promise.all([this.getGlobalData(),((S=o==null?void 0:o.dataProvider)==null?void 0:S.call(o,{lang:r,draft:t,inBuilder:!1,pageProps:n}))||Promise.resolve({})]);return o?{...E,global:m,...f}:{global:m,...f}}async getGlobalData(){const a=this.getCurrentLang();return await _({lang:a,draft:this.isDraftMode(),inBuilder:!1})}async request(a){return await this.backend.handleAction(a)}}class j{constructor(a="",e=B){this.apiKey=a,this.apiUrl=e}async handleUsersAction(a,e){const n=await fetch(`${this.apiUrl}/v1/api/users`,{method:"POST",body:JSON.stringify(a),headers:{"x-chai-api-key":this.apiKey,"x-chai-auth-token":e}}),t=await n.json();return c.has(t,"error")?{...t,status:n.status}:t}async handleAction(a,e){const n=await fetch(`${this.apiUrl}/v1/api/chai`,{method:"POST",body:JSON.stringify(a),headers:{"x-chai-api-key":this.apiKey,"x-chai-auth-token":e}}),t=await n.json();return c.has(t,"error")?{...t,status:n.status}:t}async handleAssetsAction(a,e){return await(await fetch(`${this.apiUrl}/v1/api/assets`,{method:"POST",body:JSON.stringify(a),headers:{"x-chai-api-key":this.apiKey,"x-chai-auth-token":e}})).json()}}const B="https://api.chaibuilder.com";exports.API_URL=B;exports.ChaiBuilderPages=N;exports.ChaiBuilderPagesBackend=j;exports.ChaiBuilderPagesUserManagement=D;exports.LANGUAGES=U;exports.getChaiCollection=L;exports.getChaiCollections=G;exports.getChaiPageType=A;exports.getChaiPageTypes=T;exports.registerChaiCollection=H;exports.registerChaiGlobalDataProvider=R;exports.registerChaiPageType=b;exports.registerChaiPartialType=v;
1
+ "use strict";var B=Object.defineProperty;var I=(i,a,t)=>a in i?B(i,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[a]=t;var C=(i,a,t)=>I(i,typeof a!="symbol"?a+"":a,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("lodash-es"),M=require("@chaibuilder/runtime");let v=async i=>({...i});const O=i=>{v=i},y=async i=>{try{return await v(i)}catch(a){return console.error(a),{}}},P={},T=()=>Object.values(P),A=i=>P[i],b=(i,a)=>{P[i]={key:i,...a,hasSlug:!0}},G=(i,a)=>{P[i]={key:i,...a,hasSlug:!1}},p={};function R(i,a){c.has(p,i)&&console.warn(`Collection ${i} already registered`),p[i]={...a,id:i}}const U=()=>Object.values(p),_=i=>c.get(p,i);class H{constructor(a){this.backend=a}async upload({file:a,folderId:t,name:s},e){var o,l;return await((l=(o=this.backend).handleAssetsAction)==null?void 0:l.call(o,{action:"UPLOAD_ASSET",data:{name:s,file:a,folderId:t}},e))}async getAsset({id:a},t){var s,e;return(e=(s=this.backend).handleAssetsAction)==null?void 0:e.call(s,{action:"GET_ASSET",data:{id:a}},t)}async getAssets(a,t){var s,e;return(e=(s=this.backend).handleAssetsAction)==null?void 0:e.call(s,{action:"GET_ASSETS",data:a},t)}async deleteAsset({id:a},t){var s,e;return(e=(s=this.backend).handleAssetsAction)==null?void 0:e.call(s,{action:"DELETE_ASSET",data:{id:a}},t)}async updateAsset({id:a,file:t,description:s},e){var r,o;return(o=(r=this.backend).handleAssetsAction)==null?void 0:o.call(r,{action:"UPDATE_ASSET",data:{id:a,file:t,description:s}},e)}}class L{constructor(a){this.backend=a}async refreshToken(a){var s,e;const t=await((e=(s=this.backend).handleUsersAction)==null?void 0:e.call(s,{action:"REFRESH_TOKEN",data:a}));return t.error?{error:t.error}:t}async login({email:a,password:t}){var e,r;const s=await((r=(e=this.backend).handleUsersAction)==null?void 0:r.call(e,{action:"LOGIN",data:{email:a,password:t}}));return s.error?{error:s.error}:s}async logout(){var a,t;await((t=(a=this.backend).handleUsersAction)==null?void 0:t.call(a,{action:"LOGOUT"}))}async isUserActive(a){var s,e;return(await((e=(s=this.backend).handleUsersAction)==null?void 0:e.call(s,{action:"CHECK_USER_STATUS"},a))).success}async getUserRoleAndPermissions(a){var s,e;return await((e=(s=this.backend).handleUsersAction)==null?void 0:e.call(s,{action:"GET_ROLE_AND_PERMISSIONS"},a))}async getUserInfo(a,t){var e,r;return await((r=(e=this.backend).handleUsersAction)==null?void 0:r.call(e,{action:"GET_CHAI_USER",data:t},a))}}class K{constructor(a,t,s){C(this,"fallbackLang","");C(this,"draftMode",!1);this.backend=a,this.chaiUsers=t,this.chaiAssets=s,this._registerDefaultPageTypes(),this.chaiUsers=t??new L(this.backend),this.chaiAssets=s??new H(this.backend)}_registerDefaultPageTypes(){b("page",{name:"Static Page",icon:'<svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 24 24" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M5 8V20H19V8H5ZM5 6H19V4H5V6ZM20 22H4C3.44772 22 3 21.5523 3 21V3C3 2.44772 3.44772 2 4 2H20C20.5523 2 21 2.44772 21 3V21C21 21.5523 20.5523 22 20 22ZM7 10H11V14H7V10ZM7 16H17V18H7V16ZM13 11H17V13H13V11Z"></path></svg>'}),G("global",{name:"Global Block",helpText:"A global block can be reused in multiple pages.",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-globe w-4 h-4 text-slate-500 stroke-[1]"><circle cx="12" cy="12" r="10"></circle><path d="M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"></path><path d="M2 12h20"></path></svg>'})}setFallbackLang(a){c.isEmpty(a)&&console.warn("Fallback language cannot be empty"),this.fallbackLang=a}getFallbackLang(){return this.fallbackLang}setDraftMode(a){this.draftMode=a}isDraftMode(){return this.draftMode}async handle(a,t){var e,r,o,l,m,f,E,S,d,w,h;switch(a.action){case"UPLOAD_ASSET":return(e=this.chaiAssets)==null?void 0:e.upload({file:a.data.file,name:a.data.name,folderId:a.data.folderId??null,optimize:a.data.optimize??!0},t);case"GET_ASSET":return(r=this.chaiAssets)==null?void 0:r.getAsset(a.data,t);case"GET_ASSETS":return(o=this.chaiAssets)==null?void 0:o.getAssets(a.data,t);case"DELETE_ASSET":return(l=this.chaiAssets)==null?void 0:l.deleteAsset(a.data,t);case"UPDATE_ASSET":return(m=this.chaiAssets)==null?void 0:m.updateAsset(a.data,t);case"REFRESH_TOKEN":return(f=this.chaiUsers)==null?void 0:f.refreshToken(a.data);case"LOGIN":return(E=this.chaiUsers)==null?void 0:E.login(a.data);case"LOGOUT":return(S=this.chaiUsers)==null?void 0:S.logout();case"CHECK_USER_STATUS":return(d=this.chaiUsers)==null?void 0:d.isUserActive(t);case"GET_ROLE_AND_PERMISSIONS":return(w=this.chaiUsers)==null?void 0:w.getUserRoleAndPermissions(t);case"GET_CHAI_USER":return(h=this.chaiUsers)==null?void 0:h.getUserInfo(t,a.data)}if(a.action==="GET_BUILDER_PAGE_DATA"){const n=await y({lang:a.data.lang,draft:!0,inBuilder:!0}),u=A(a.data.pageType);return u?{...u.dataProvider?await u.dataProvider({lang:a.data.lang,draft:!0,inBuilder:!0,pageProps:a.data.pageProps??{}}):{},global:n}:{global:n}}if(a.action==="GET_PAGE_TYPES")return Promise.all(T().map(async n=>({key:n.key,helpText:n.helpText??"",icon:n.icon??"",dynamicSegments:n.dynamicSegments??"",dynamicSlug:n.dynamicSlug??"",hasSlug:n.hasSlug??!0,name:typeof n.name=="function"?await n.name():n.name,...c.isFunction(n.defaultTrackingInfo)?{trackingDefault:n.defaultTrackingInfo()}:{}})));if(a.action==="SEARCH_PAGE_TYPE_ITEMS"){const n=A(a.data.pageType);return n?n.search?await n.search(a.data.query):this.backend.handleAction(a,t):{error:"Page type not found"}}if(a.action==="GET_COLLECTIONS")return U().map(n=>c.omit(n,"fetch"));if(a.action==="GET_BLOCK_ASYNC_PROPS"){const n=a.data.block,u=n._type;if(u==="Repeater"&&(n!=null&&n.repeaterItems.includes("{{#"))){const g=n.repeaterItems.replace("{{#","").replace("}}",""),k=_(g);return k?await(k==null?void 0:k.fetch({block:n,pageProps:a.data.pageProps,lang:a.data.lang,draft:!0,inBuilder:!0}))??[]:[]}else{const g=M.getRegisteredChaiBlock(u);return!g||!c.isFunction(g.dataProvider)?{}:await g.dataProvider({block:n,pageProps:a.data.pageProps,lang:a.data.lang,draft:!0,inBuilder:!0})??{}}}const s=await this.backend.handleAction(a,t);return this.emit(a.action,s),s}emit(a,t){var r,o,l;if(!["CREATE_PAGE","UPDATE_PAGE","DELETE_PAGE"].includes(a))return;const s=c.get(t,"page");if(!s)return;const e=A(s.pageType);if(e)switch(a){case"CREATE_PAGE":return(r=e.onCreate)==null?void 0:r.call(e,s);case"UPDATE_PAGE":return(o=e.onUpdate)==null?void 0:o.call(e,s);case"DELETE_PAGE":return(l=e.onDelete)==null?void 0:l.call(e,s)}}async resolvePageLink(a,t){if(!c.startsWith(a,"pageType:"))return a;const s=a.split(":")[1],e=a.split(":")[2],r=A(s);return r?await this.resolveLink(r.key,e,t):a}async resolveLink(a,t,s){const e=A(a);if(!e)return"/not-found";const r=this.isDraftMode();return e.resolveLink&&c.isFunction(e.resolveLink)?await e.resolveLink(t,r,s):await this.backend.handleAction({action:"GET_LINK",data:{pageType:a,id:t,draft:r,lang:s===this.getFallbackLang()?"":s}})}async getPageBySlug(a){const t=this.isDraftMode(),s={};return T().forEach(e=>{c.has(e,"dynamicSegments")&&e.dynamicSegments&&(s[e.key]=e.dynamicSegments)}),await this.backend.handleAction({action:"GET_PAGE_META",data:{slug:a,draft:t,dynamicSegments:s}})}async getFullPage(a){const t=this.isDraftMode();return await this.backend.handleAction({action:"GET_PAGE",data:{id:a,draft:t,mergePartials:!0}})}async getSiteSettings(){const a=this.isDraftMode();return await this.backend.handleAction({action:"GET_WEBSITE_SETTINGS",data:{draft:a}})}async getPageData({blocks:a=[],pageType:t,pageProps:s,lang:e}){var S;const r=this.isDraftMode(),o=A(t),l=a.filter(d=>d._type==="Repeater"&&(d==null?void 0:d.repeaterItems.includes("{{#")));let m={};if(l.length>0){const d=l.map(h=>({collectionId:h.repeaterItems.replace("{{#","").replace("}}",""),block:h}));m=(await Promise.all(d.map(async({collectionId:h,block:n})=>{const u=_(h);try{const g=await(u==null?void 0:u.fetch({lang:e,draft:r,inBuilder:!1,pageProps:s,block:n}));return Promise.resolve({[`#${h}/${n._id}`]:c.get(g,"items",[])??[]})}catch{return Promise.resolve({[`#${h}/${n._id}`]:[]})}}))).reduce((h,n)=>({...h,...n}),{})}const[f,E]=await Promise.all([this.getGlobalData(e),((S=o==null?void 0:o.dataProvider)==null?void 0:S.call(o,{lang:e,draft:r,inBuilder:!1,pageProps:s}))||Promise.resolve({})]);return o?{...E,global:f,...m}:{global:f,...m}}async getGlobalData(a){return await y({lang:a,draft:this.isDraftMode(),inBuilder:!1})}async request(a){return await this.backend.handleAction(a)}}class N{constructor(a="",t=D){this.apiKey=a,this.apiUrl=t}async handleUsersAction(a,t){const s=await fetch(`${this.apiUrl}/v1/api/users`,{method:"POST",body:JSON.stringify(a),headers:{"x-chai-api-key":this.apiKey,"x-chai-auth-token":t}}),e=await s.json();return c.has(e,"error")?{...e,status:s.status}:e}async handleAction(a,t){const s=await fetch(`${this.apiUrl}/v1/api/chai`,{method:"POST",body:JSON.stringify(a),headers:{"x-chai-api-key":this.apiKey,"x-chai-auth-token":t}}),e=await s.json();return c.has(e,"error")?{...e,status:s.status}:e}async handleAssetsAction(a,t){return await(await fetch(`${this.apiUrl}/v1/api/assets`,{method:"POST",body:JSON.stringify(a),headers:{"x-chai-api-key":this.apiKey,"x-chai-auth-token":t}})).json()}}const j={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"},D="https://api.chaibuilder.com";exports.API_URL=D;exports.ChaiBuilderPages=K;exports.ChaiBuilderPagesBackend=N;exports.ChaiBuilderPagesUserManagement=L;exports.LANGUAGES=j;exports.getChaiCollection=_;exports.getChaiCollections=U;exports.getChaiPageType=A;exports.getChaiPageTypes=T;exports.registerChaiCollection=R;exports.registerChaiGlobalDataProvider=O;exports.registerChaiPageType=b;exports.registerChaiPartialType=G;
package/dist/server.d.ts CHANGED
@@ -41,14 +41,11 @@ export declare class ChaiBuilderPages implements ChaiBuilderPagesInterface {
41
41
  protected chaiUsers?: ChaiBuilderPagesUsersInterface | undefined;
42
42
  protected chaiAssets?: ChaiBuilderPagesAssetsInterface | undefined;
43
43
  private fallbackLang;
44
- private currentLang;
45
44
  private draftMode;
46
45
  constructor(backend: ChaiBuilderPagesBackendInterface, chaiUsers?: ChaiBuilderPagesUsersInterface | undefined, chaiAssets?: ChaiBuilderPagesAssetsInterface | undefined);
47
46
  private _registerDefaultPageTypes;
48
47
  setFallbackLang(lang: string): void;
49
48
  getFallbackLang(): string;
50
- setCurrentLang(lang: string): void;
51
- getCurrentLang(): string;
52
49
  setDraftMode(draft: boolean): void;
53
50
  isDraftMode(): boolean;
54
51
  handle(body: {
@@ -56,25 +53,29 @@ export declare class ChaiBuilderPages implements ChaiBuilderPagesInterface {
56
53
  data: Record<string, any>;
57
54
  }, authToken: string): Promise<any>;
58
55
  emit(action: string, data: any): Promise<void> | undefined;
59
- setLanguageFromSlug(slug: string[]): void;
60
56
  /**
61
57
  * Resolve a page link
62
58
  * @param href - The href to resolve
63
59
  * @returns The resolved link
64
60
  */
65
- resolvePageLink(href: string): Promise<any>;
66
- resolveLink(pageTypeKey: string, id: string): Promise<any>;
61
+ resolvePageLink(href: string, lang: string): Promise<any>;
62
+ resolveLink(pageTypeKey: string, id: string, lang: string): Promise<any>;
67
63
  getPageBySlug(slug: string): Promise<any>;
68
64
  getFullPage(id: string): Promise<any>;
69
65
  getSiteSettings(): Promise<any>;
70
- getPageData(blocks: ChaiBlock[], pageType: string, pageProps: {
71
- slug: string;
72
- params?: Record<string, string>;
73
- [key: string]: any;
66
+ getPageData({ blocks, pageType, pageProps, lang, }: {
67
+ blocks?: ChaiBlock[];
68
+ pageType: string;
69
+ pageProps: {
70
+ slug: string;
71
+ params?: Record<string, string>;
72
+ [key: string]: any;
73
+ };
74
+ lang: string;
74
75
  }): Promise<{
75
76
  global: any;
76
77
  }>;
77
- getGlobalData(): Promise<any>;
78
+ getGlobalData(lang: string): Promise<any>;
78
79
  request(body: any): Promise<any>;
79
80
  }
80
81
 
@@ -134,19 +135,21 @@ export declare interface ChaiBuilderPagesBackendInterface {
134
135
  export declare interface ChaiBuilderPagesInterface {
135
136
  setFallbackLang(lang: string): void;
136
137
  getFallbackLang(): string;
137
- setCurrentLang(lang: string): void;
138
- getCurrentLang(): string;
139
138
  setDraftMode(draft: boolean): void;
140
139
  isDraftMode(): boolean;
141
140
  handle(body: any, authToken: string): Promise<any>;
142
141
  emit(action: string, data: any): void;
143
- setLanguageFromSlug(slug: string[]): void;
144
- resolveLink(pageTypeKey: string, id: string): Promise<string>;
145
142
  getPageBySlug(slug: string): Promise<any>;
146
143
  getFullPage(id: string): Promise<any>;
147
144
  getSiteSettings(): Promise<any>;
148
- getPageData(blocks: ChaiBlock[], pageType: string, props: any): Promise<any>;
149
- getGlobalData(): Promise<any>;
145
+ resolveLink(pageTypeKey: string, id: string, lang: string): Promise<string>;
146
+ getPageData({ blocks, pageType, pageProps, lang, }: {
147
+ blocks?: ChaiBlock[];
148
+ pageType: string;
149
+ pageProps: any;
150
+ lang: string;
151
+ }): Promise<any>;
152
+ getGlobalData(lang: string): Promise<any>;
150
153
  }
151
154
 
152
155
  export declare class ChaiBuilderPagesUserManagement implements ChaiBuilderPagesUsersInterface {
package/dist/server.js CHANGED
@@ -1,318 +1,130 @@
1
1
  var U = Object.defineProperty;
2
- var D = (i, a, e) => a in i ? U(i, a, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[a] = e;
3
- var E = (i, a, e) => D(i, typeof a != "symbol" ? a + "" : a, e);
4
- import { has as p, get as T, isEmpty as L, isFunction as _, omit as I, first as M, startsWith as O } from "lodash-es";
2
+ var L = (i, a, t) => a in i ? U(i, a, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[a] = t;
3
+ var T = (i, a, t) => L(i, typeof a != "symbol" ? a + "" : a, t);
4
+ import { has as k, get as C, isEmpty as D, isFunction as _, omit as I, startsWith as M } from "lodash-es";
5
5
  import { getRegisteredChaiBlock as B } from "@chaibuilder/runtime";
6
6
  let G = async (i) => ({
7
7
  ...i
8
8
  });
9
- const $ = (i) => {
9
+ const F = (i) => {
10
10
  G = i;
11
- }, b = async (i) => {
11
+ }, v = async (i) => {
12
12
  try {
13
13
  return await G(i);
14
14
  } catch (a) {
15
15
  return console.error(a), {};
16
16
  }
17
- }, P = {}, y = () => Object.values(P), f = (i) => P[i], H = (i, a) => {
18
- P[i] = { key: i, ...a, hasSlug: !0 };
19
- }, K = (i, a) => {
20
- P[i] = { key: i, ...a, hasSlug: !1 };
21
- }, w = {};
22
- function Y(i, a) {
23
- p(w, i) && console.warn(`Collection ${i} already registered`), w[i] = { ...a, id: i };
17
+ }, w = {}, y = () => Object.values(w), A = (i) => w[i], O = (i, a) => {
18
+ w[i] = { key: i, ...a, hasSlug: !0 };
19
+ }, H = (i, a) => {
20
+ w[i] = { key: i, ...a, hasSlug: !1 };
21
+ }, p = {};
22
+ function Z(i, a) {
23
+ k(p, i) && console.warn(`Collection ${i} already registered`), p[i] = { ...a, id: i };
24
24
  }
25
- const R = () => Object.values(w), v = (i) => T(w, i), N = {
26
- ab: "Abkhazian",
27
- aa: "Afar",
28
- af: "Afrikaans",
29
- ak: "Akan",
30
- sq: "Albanian",
31
- am: "Amharic",
32
- ar: "Arabic",
33
- an: "Aragonese",
34
- hy: "Armenian",
35
- as: "Assamese",
36
- av: "Avaric",
37
- ae: "Avestan",
38
- ay: "Aymara",
39
- az: "Azerbaijani",
40
- bm: "Bambara",
41
- ba: "Bashkir",
42
- eu: "Basque",
43
- be: "Belarusian",
44
- bn: "Bengali",
45
- bh: "Bihari",
46
- bi: "Bislama",
47
- bs: "Bosnian",
48
- br: "Breton",
49
- bg: "Bulgarian",
50
- my: "Burmese",
51
- ca: "Catalan",
52
- ch: "Chamorro",
53
- ce: "Chechen",
54
- ny: "Chichewa",
55
- zh: "Chinese",
56
- "zh-Hans": "Chinese (Simplified)",
57
- "zh-Hant": "Chinese (Traditional)",
58
- cv: "Chuvash",
59
- kw: "Cornish",
60
- co: "Corsican",
61
- cr: "Cree",
62
- hr: "Croatian",
63
- cs: "Czech",
64
- da: "Danish",
65
- dv: "Maldivian",
66
- nl: "Dutch",
67
- dz: "Dzongkha",
68
- en: "English",
69
- eo: "Esperanto",
70
- et: "Estonian",
71
- ee: "Ewe",
72
- fo: "Faroese",
73
- fj: "Fijian",
74
- fi: "Finnish",
75
- fr: "French",
76
- ff: "Fula, Pular",
77
- gl: "Galician",
78
- gd: "Gaelic (Scottish)",
79
- gv: "Manx",
80
- ka: "Georgian",
81
- de: "German",
82
- el: "Greek",
83
- kl: "Kalaallisut",
84
- gn: "Guarani",
85
- gu: "Gujarati",
86
- ht: "Haitian Creole",
87
- ha: "Hausa",
88
- he: "Hebrew",
89
- hz: "Herero",
90
- hi: "Hindi",
91
- ho: "Hiri Motu",
92
- hu: "Hungarian",
93
- is: "Icelandic",
94
- io: "Ido",
95
- ig: "Igbo",
96
- id: "Indonesian",
97
- ia: "Interlingua",
98
- ie: "Interlingue",
99
- iu: "Inuktitut",
100
- ik: "Inupiak",
101
- ga: "Irish",
102
- it: "Italian",
103
- ja: "Japanese",
104
- jv: "Javanese",
105
- kn: "Kannada",
106
- kr: "Kanuri",
107
- ks: "Kashmiri",
108
- kk: "Kazakh",
109
- km: "Khmer",
110
- ki: "Kikuyu",
111
- rw: "Kinyarwanda",
112
- rn: "Kirundi",
113
- ky: "Kyrgyz",
114
- kv: "Komi",
115
- kg: "Kongo",
116
- ko: "Korean",
117
- ku: "Kurdish",
118
- kj: "Kwanyama",
119
- lo: "Lao",
120
- la: "Latin",
121
- lv: "Latvian",
122
- li: "Limburgish",
123
- ln: "Lingala",
124
- lt: "Lithuanian",
125
- lu: "Luga-Katanga",
126
- lg: "Luganda, Ganda",
127
- lb: "Luxembourgish",
128
- mk: "Macedonian",
129
- mg: "Malagasy",
130
- ms: "Malay",
131
- ml: "Malayalam",
132
- mt: "Maltese",
133
- mi: "Maori",
134
- mr: "Marathi",
135
- mh: "Marshallese",
136
- mo: "Moldavian",
137
- mn: "Mongolian",
138
- na: "Nauru",
139
- nv: "Navajo",
140
- ng: "Ndonga",
141
- nd: "Northern Ndebele",
142
- ne: "Nepali",
143
- no: "Norwegian",
144
- nb: "Norwegian bokmål",
145
- nn: "Norwegian nynorsk",
146
- ii: "Sichuan Yi",
147
- oc: "Occitan",
148
- oj: "Ojibwe",
149
- cu: "Old Church Slavonic",
150
- or: "Oriya",
151
- om: "Oromo",
152
- os: "Ossetian",
153
- pi: "Pāli",
154
- ps: "Pashto, Pushto",
155
- fa: "Persian (Farsi)",
156
- pl: "Polish",
157
- pt: "Portuguese",
158
- pa: "Punjabi (Eastern)",
159
- qu: "Quechua",
160
- rm: "Romansh",
161
- ro: "Romanian",
162
- ru: "Russian",
163
- se: "Sami",
164
- sm: "Samoan",
165
- sg: "Sango",
166
- sa: "Sanskrit",
167
- sr: "Serbian",
168
- sh: "Serbo-Croatian",
169
- st: "Sesotho",
170
- tn: "Setswana",
171
- sn: "Shona",
172
- sd: "Sindhi",
173
- si: "Sinhalese",
174
- ss: "Swati",
175
- sk: "Slovak",
176
- sl: "Slovenian",
177
- so: "Somali",
178
- nr: "Southern Ndebele",
179
- es: "Spanish",
180
- su: "Sundanese",
181
- sw: "Swahili (Kiswahili)",
182
- sv: "Swedish",
183
- tl: "Tagalog",
184
- ty: "Tahitian",
185
- tg: "Tajik",
186
- ta: "Tamil",
187
- tt: "Tatar",
188
- te: "Telugu",
189
- th: "Thai",
190
- bo: "Tibetan",
191
- ti: "Tigrinya",
192
- to: "Tonga",
193
- ts: "Tsonga",
194
- tr: "Turkish",
195
- tk: "Turkmen",
196
- tw: "Twi",
197
- ug: "Uyghur",
198
- uk: "Ukrainian",
199
- ur: "Urdu",
200
- uz: "Uzbek",
201
- ve: "Venda",
202
- vi: "Vietnamese",
203
- vo: "Volapük",
204
- wa: "Wallon",
205
- cy: "Welsh",
206
- wo: "Wolof",
207
- fy: "Western Frisian",
208
- xh: "Xhosa",
209
- yi: "Yiddish",
210
- yo: "Yoruba",
211
- za: "Zhuang, Chuang",
212
- zu: "Zulu"
213
- };
214
- class j {
25
+ const K = () => Object.values(p), b = (i) => C(p, i);
26
+ class R {
215
27
  constructor(a) {
216
28
  this.backend = a;
217
29
  }
218
30
  async upload({
219
31
  file: a,
220
- folderId: e,
221
- name: n
222
- }, t) {
32
+ folderId: t,
33
+ name: s
34
+ }, e) {
223
35
  var o, c;
224
36
  return await ((c = (o = this.backend).handleAssetsAction) == null ? void 0 : c.call(
225
37
  o,
226
38
  {
227
39
  action: "UPLOAD_ASSET",
228
40
  data: {
229
- name: n,
41
+ name: s,
230
42
  file: a,
231
- folderId: e
43
+ folderId: t
232
44
  }
233
45
  },
234
- t
46
+ e
235
47
  ));
236
48
  }
237
- async getAsset({ id: a }, e) {
238
- var n, t;
239
- return (t = (n = this.backend).handleAssetsAction) == null ? void 0 : t.call(
240
- n,
49
+ async getAsset({ id: a }, t) {
50
+ var s, e;
51
+ return (e = (s = this.backend).handleAssetsAction) == null ? void 0 : e.call(
52
+ s,
241
53
  { action: "GET_ASSET", data: { id: a } },
242
- e
54
+ t
243
55
  );
244
56
  }
245
- async getAssets(a, e) {
246
- var n, t;
247
- return (t = (n = this.backend).handleAssetsAction) == null ? void 0 : t.call(
248
- n,
57
+ async getAssets(a, t) {
58
+ var s, e;
59
+ return (e = (s = this.backend).handleAssetsAction) == null ? void 0 : e.call(
60
+ s,
249
61
  {
250
62
  action: "GET_ASSETS",
251
63
  data: a
252
64
  },
253
- e
65
+ t
254
66
  );
255
67
  }
256
- async deleteAsset({ id: a }, e) {
257
- var n, t;
258
- return (t = (n = this.backend).handleAssetsAction) == null ? void 0 : t.call(
259
- n,
68
+ async deleteAsset({ id: a }, t) {
69
+ var s, e;
70
+ return (e = (s = this.backend).handleAssetsAction) == null ? void 0 : e.call(
71
+ s,
260
72
  {
261
73
  action: "DELETE_ASSET",
262
74
  data: { id: a }
263
75
  },
264
- e
76
+ t
265
77
  );
266
78
  }
267
79
  async updateAsset({
268
80
  id: a,
269
- file: e,
270
- description: n
271
- }, t) {
81
+ file: t,
82
+ description: s
83
+ }, e) {
272
84
  var r, o;
273
85
  return (o = (r = this.backend).handleAssetsAction) == null ? void 0 : o.call(
274
86
  r,
275
87
  {
276
88
  action: "UPDATE_ASSET",
277
- data: { id: a, file: e, description: n }
89
+ data: { id: a, file: t, description: s }
278
90
  },
279
- t
91
+ e
280
92
  );
281
93
  }
282
94
  }
283
- class F {
95
+ class N {
284
96
  constructor(a) {
285
97
  this.backend = a;
286
98
  }
287
99
  async refreshToken(a) {
288
- var n, t;
289
- const e = await ((t = (n = this.backend).handleUsersAction) == null ? void 0 : t.call(n, {
100
+ var s, e;
101
+ const t = await ((e = (s = this.backend).handleUsersAction) == null ? void 0 : e.call(s, {
290
102
  action: "REFRESH_TOKEN",
291
103
  data: a
292
104
  }));
293
- return e.error ? { error: e.error } : e;
105
+ return t.error ? { error: t.error } : t;
294
106
  }
295
107
  async login({
296
108
  email: a,
297
- password: e
109
+ password: t
298
110
  }) {
299
- var t, r;
300
- const n = await ((r = (t = this.backend).handleUsersAction) == null ? void 0 : r.call(t, {
111
+ var e, r;
112
+ const s = await ((r = (e = this.backend).handleUsersAction) == null ? void 0 : r.call(e, {
301
113
  action: "LOGIN",
302
- data: { email: a, password: e }
114
+ data: { email: a, password: t }
303
115
  }));
304
- return n.error ? { error: n.error } : n;
116
+ return s.error ? { error: s.error } : s;
305
117
  }
306
118
  async logout() {
307
- var a, e;
308
- await ((e = (a = this.backend).handleUsersAction) == null ? void 0 : e.call(a, {
119
+ var a, t;
120
+ await ((t = (a = this.backend).handleUsersAction) == null ? void 0 : t.call(a, {
309
121
  action: "LOGOUT"
310
122
  }));
311
123
  }
312
124
  async isUserActive(a) {
313
- var n, t;
314
- return (await ((t = (n = this.backend).handleUsersAction) == null ? void 0 : t.call(
315
- n,
125
+ var s, e;
126
+ return (await ((e = (s = this.backend).handleUsersAction) == null ? void 0 : e.call(
127
+ s,
316
128
  {
317
129
  action: "CHECK_USER_STATUS"
318
130
  },
@@ -320,90 +132,83 @@ class F {
320
132
  ))).success;
321
133
  }
322
134
  async getUserRoleAndPermissions(a) {
323
- var n, t;
324
- return await ((t = (n = this.backend).handleUsersAction) == null ? void 0 : t.call(
325
- n,
135
+ var s, e;
136
+ return await ((e = (s = this.backend).handleUsersAction) == null ? void 0 : e.call(
137
+ s,
326
138
  {
327
139
  action: "GET_ROLE_AND_PERMISSIONS"
328
140
  },
329
141
  a
330
142
  ));
331
143
  }
332
- async getUserInfo(a, e) {
333
- var t, r;
334
- return await ((r = (t = this.backend).handleUsersAction) == null ? void 0 : r.call(
335
- t,
144
+ async getUserInfo(a, t) {
145
+ var e, r;
146
+ return await ((r = (e = this.backend).handleUsersAction) == null ? void 0 : r.call(
147
+ e,
336
148
  {
337
149
  action: "GET_CHAI_USER",
338
- data: e
150
+ data: t
339
151
  },
340
152
  a
341
153
  ));
342
154
  }
343
155
  }
344
- class W {
345
- constructor(a, e, n) {
346
- E(this, "fallbackLang", "");
347
- E(this, "currentLang", "");
348
- E(this, "draftMode", !1);
349
- this.backend = a, this.chaiUsers = e, this.chaiAssets = n, this._registerDefaultPageTypes(), this.chaiUsers = e ?? new F(this.backend), this.chaiAssets = n ?? new j(this.backend);
156
+ class $ {
157
+ constructor(a, t, s) {
158
+ T(this, "fallbackLang", "");
159
+ T(this, "draftMode", !1);
160
+ this.backend = a, this.chaiUsers = t, this.chaiAssets = s, this._registerDefaultPageTypes(), this.chaiUsers = t ?? new N(this.backend), this.chaiAssets = s ?? new R(this.backend);
350
161
  }
351
162
  _registerDefaultPageTypes() {
352
- H("page", {
163
+ O("page", {
353
164
  name: "Static Page",
354
165
  icon: '<svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 24 24" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M5 8V20H19V8H5ZM5 6H19V4H5V6ZM20 22H4C3.44772 22 3 21.5523 3 21V3C3 2.44772 3.44772 2 4 2H20C20.5523 2 21 2.44772 21 3V21C21 21.5523 20.5523 22 20 22ZM7 10H11V14H7V10ZM7 16H17V18H7V16ZM13 11H17V13H13V11Z"></path></svg>'
355
- }), K("global", {
166
+ }), H("global", {
356
167
  name: "Global Block",
357
168
  helpText: "A global block can be reused in multiple pages.",
358
169
  icon: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-globe w-4 h-4 text-slate-500 stroke-[1]"><circle cx="12" cy="12" r="10"></circle><path d="M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"></path><path d="M2 12h20"></path></svg>'
359
170
  });
360
171
  }
361
172
  setFallbackLang(a) {
362
- L(a) && console.warn("Fallback language cannot be empty"), this.fallbackLang = a;
173
+ D(a) && console.warn("Fallback language cannot be empty"), this.fallbackLang = a;
363
174
  }
364
175
  getFallbackLang() {
365
176
  return this.fallbackLang;
366
177
  }
367
- setCurrentLang(a) {
368
- L(a) && console.warn("Current language cannot be empty"), console.info("Setting current language to", a), this.currentLang = a;
369
- }
370
- getCurrentLang() {
371
- return this.currentLang;
372
- }
373
178
  setDraftMode(a) {
374
179
  this.draftMode = a;
375
180
  }
376
181
  isDraftMode() {
377
182
  return this.draftMode;
378
183
  }
379
- async handle(a, e) {
380
- var t, r, o, c, d, m, S, A, u, C, l;
184
+ async handle(a, t) {
185
+ var e, r, o, c, g, m, S, f, u, P, l;
381
186
  switch (a.action) {
382
187
  // Media
383
188
  case "UPLOAD_ASSET":
384
- return (t = this.chaiAssets) == null ? void 0 : t.upload(
189
+ return (e = this.chaiAssets) == null ? void 0 : e.upload(
385
190
  {
386
191
  file: a.data.file,
387
192
  name: a.data.name,
388
193
  folderId: a.data.folderId ?? null,
389
194
  optimize: a.data.optimize ?? !0
390
195
  },
391
- e
196
+ t
392
197
  );
393
198
  case "GET_ASSET":
394
199
  return (r = this.chaiAssets) == null ? void 0 : r.getAsset(
395
200
  a.data,
396
- e
201
+ t
397
202
  );
398
203
  case "GET_ASSETS":
399
- return (o = this.chaiAssets) == null ? void 0 : o.getAssets(a.data, e);
204
+ return (o = this.chaiAssets) == null ? void 0 : o.getAssets(a.data, t);
400
205
  case "DELETE_ASSET":
401
206
  return (c = this.chaiAssets) == null ? void 0 : c.deleteAsset(
402
207
  a.data,
403
- e
208
+ t
404
209
  );
405
210
  case "UPDATE_ASSET":
406
- return (d = this.chaiAssets) == null ? void 0 : d.updateAsset(a.data, e);
211
+ return (g = this.chaiAssets) == null ? void 0 : g.updateAsset(a.data, t);
407
212
  // Users
408
213
  case "REFRESH_TOKEN":
409
214
  return (m = this.chaiUsers) == null ? void 0 : m.refreshToken(
@@ -414,23 +219,23 @@ class W {
414
219
  a.data
415
220
  );
416
221
  case "LOGOUT":
417
- return (A = this.chaiUsers) == null ? void 0 : A.logout();
222
+ return (f = this.chaiUsers) == null ? void 0 : f.logout();
418
223
  case "CHECK_USER_STATUS":
419
- return (u = this.chaiUsers) == null ? void 0 : u.isUserActive(e);
224
+ return (u = this.chaiUsers) == null ? void 0 : u.isUserActive(t);
420
225
  case "GET_ROLE_AND_PERMISSIONS":
421
- return (C = this.chaiUsers) == null ? void 0 : C.getUserRoleAndPermissions(e);
226
+ return (P = this.chaiUsers) == null ? void 0 : P.getUserRoleAndPermissions(t);
422
227
  case "GET_CHAI_USER":
423
228
  return (l = this.chaiUsers) == null ? void 0 : l.getUserInfo(
424
- e,
229
+ t,
425
230
  a.data
426
231
  );
427
232
  }
428
233
  if (a.action === "GET_BUILDER_PAGE_DATA") {
429
- const s = await b({
234
+ const n = await v({
430
235
  lang: a.data.lang,
431
236
  draft: !0,
432
237
  inBuilder: !0
433
- }), h = f(
238
+ }), h = A(
434
239
  a.data.pageType
435
240
  );
436
241
  return h ? {
@@ -440,47 +245,47 @@ class W {
440
245
  inBuilder: !0,
441
246
  pageProps: a.data.pageProps ?? {}
442
247
  }) : {},
443
- global: s
444
- } : { global: s };
248
+ global: n
249
+ } : { global: n };
445
250
  }
446
251
  if (a.action === "GET_PAGE_TYPES")
447
252
  return Promise.all(
448
- y().map(async (s) => ({
449
- key: s.key,
450
- helpText: s.helpText ?? "",
451
- icon: s.icon ?? "",
452
- dynamicSegments: s.dynamicSegments ?? "",
453
- dynamicSlug: s.dynamicSlug ?? "",
454
- hasSlug: s.hasSlug ?? !0,
455
- name: typeof s.name == "function" ? await s.name() : s.name,
456
- ..._(s.defaultTrackingInfo) ? { trackingDefault: s.defaultTrackingInfo() } : {}
253
+ y().map(async (n) => ({
254
+ key: n.key,
255
+ helpText: n.helpText ?? "",
256
+ icon: n.icon ?? "",
257
+ dynamicSegments: n.dynamicSegments ?? "",
258
+ dynamicSlug: n.dynamicSlug ?? "",
259
+ hasSlug: n.hasSlug ?? !0,
260
+ name: typeof n.name == "function" ? await n.name() : n.name,
261
+ ..._(n.defaultTrackingInfo) ? { trackingDefault: n.defaultTrackingInfo() } : {}
457
262
  }))
458
263
  );
459
264
  if (a.action === "SEARCH_PAGE_TYPE_ITEMS") {
460
- const s = f(
265
+ const n = A(
461
266
  a.data.pageType
462
267
  );
463
- return s ? s.search ? await s.search(a.data.query) : this.backend.handleAction(a, e) : { error: "Page type not found" };
268
+ return n ? n.search ? await n.search(a.data.query) : this.backend.handleAction(a, t) : { error: "Page type not found" };
464
269
  }
465
270
  if (a.action === "GET_COLLECTIONS")
466
- return R().map(
467
- (s) => I(s, "fetch")
271
+ return K().map(
272
+ (n) => I(n, "fetch")
468
273
  );
469
274
  if (a.action === "GET_BLOCK_ASYNC_PROPS") {
470
- const s = a.data.block, h = s._type;
471
- if (h === "Repeater" && (s != null && s.repeaterItems.includes("{{#"))) {
472
- const g = s.repeaterItems.replace("{{#", "").replace("}}", ""), k = v(g);
473
- return k ? await (k == null ? void 0 : k.fetch({
474
- block: s,
275
+ const n = a.data.block, h = n._type;
276
+ if (h === "Repeater" && (n != null && n.repeaterItems.includes("{{#"))) {
277
+ const d = n.repeaterItems.replace("{{#", "").replace("}}", ""), E = b(d);
278
+ return E ? await (E == null ? void 0 : E.fetch({
279
+ block: n,
475
280
  pageProps: a.data.pageProps,
476
281
  lang: a.data.lang,
477
282
  draft: !0,
478
283
  inBuilder: !0
479
284
  })) ?? [] : [];
480
285
  } else {
481
- const g = B(h);
482
- return !g || !_(g.dataProvider) ? {} : await g.dataProvider({
483
- block: s,
286
+ const d = B(h);
287
+ return !d || !_(d.dataProvider) ? {} : await d.dataProvider({
288
+ block: n,
484
289
  pageProps: a.data.pageProps,
485
290
  lang: a.data.lang,
486
291
  draft: !0,
@@ -488,77 +293,68 @@ class W {
488
293
  }) ?? {};
489
294
  }
490
295
  }
491
- const n = await this.backend.handleAction(a, e);
492
- return this.emit(a.action, n), n;
296
+ const s = await this.backend.handleAction(a, t);
297
+ return this.emit(a.action, s), s;
493
298
  }
494
- emit(a, e) {
299
+ emit(a, t) {
495
300
  var r, o, c;
496
301
  if (!["CREATE_PAGE", "UPDATE_PAGE", "DELETE_PAGE"].includes(a)) return;
497
- const n = T(e, "page");
498
- if (!n) return;
499
- const t = f(n.pageType);
500
- if (t)
302
+ const s = C(t, "page");
303
+ if (!s) return;
304
+ const e = A(s.pageType);
305
+ if (e)
501
306
  switch (a) {
502
307
  case "CREATE_PAGE":
503
- return (r = t.onCreate) == null ? void 0 : r.call(t, n);
308
+ return (r = e.onCreate) == null ? void 0 : r.call(e, s);
504
309
  case "UPDATE_PAGE":
505
- return (o = t.onUpdate) == null ? void 0 : o.call(t, n);
310
+ return (o = e.onUpdate) == null ? void 0 : o.call(e, s);
506
311
  case "DELETE_PAGE":
507
- return (c = t.onDelete) == null ? void 0 : c.call(t, n);
312
+ return (c = e.onDelete) == null ? void 0 : c.call(e, s);
508
313
  }
509
314
  }
510
- // APIS
511
- setLanguageFromSlug(a) {
512
- if (!this.getFallbackLang())
513
- throw new Error(
514
- "Please set a fallback language using setFallbackLang(lang: string)"
515
- );
516
- const e = M(a || [""]);
517
- Object.keys(N).includes(e) ? this.setCurrentLang(e) : this.setCurrentLang(this.getFallbackLang());
518
- }
519
315
  /**
520
316
  * Resolve a page link
521
317
  * @param href - The href to resolve
522
318
  * @returns The resolved link
523
319
  */
524
- async resolvePageLink(a) {
525
- if (!O(a, "pageType:"))
320
+ async resolvePageLink(a, t) {
321
+ if (!M(a, "pageType:"))
526
322
  return a;
527
- const e = a.split(":")[1], n = a.split(":")[2], t = f(e);
528
- return t ? await this.resolveLink(t.key, n) : a;
323
+ const s = a.split(":")[1], e = a.split(":")[2], r = A(s);
324
+ return r ? await this.resolveLink(r.key, e, t) : a;
529
325
  }
530
- async resolveLink(a, e) {
531
- const n = f(a);
532
- if (!n)
326
+ async resolveLink(a, t, s) {
327
+ const e = A(a);
328
+ if (!e)
533
329
  return "/not-found";
534
- const t = this.isDraftMode(), r = this.getCurrentLang() === this.getFallbackLang() ? "" : this.getCurrentLang();
535
- return n.resolveLink ? await n.resolveLink(e, t, r) : await this.backend.handleAction({
330
+ const r = this.isDraftMode();
331
+ return e.resolveLink && _(e.resolveLink) ? await e.resolveLink(t, r, s) : await this.backend.handleAction({
536
332
  action: "GET_LINK",
537
333
  data: {
538
334
  pageType: a,
539
- id: e,
540
- draft: t,
541
- lang: r
335
+ id: t,
336
+ draft: r,
337
+ lang: s === this.getFallbackLang() ? "" : s
338
+ //empty string for fallback lang. due to DB schema
542
339
  }
543
340
  });
544
341
  }
545
342
  async getPageBySlug(a) {
546
- const e = this.isDraftMode(), n = {};
547
- return y().forEach((t) => {
548
- p(t, "dynamicSegments") && t.dynamicSegments && (n[t.key] = t.dynamicSegments);
343
+ const t = this.isDraftMode(), s = {};
344
+ return y().forEach((e) => {
345
+ k(e, "dynamicSegments") && e.dynamicSegments && (s[e.key] = e.dynamicSegments);
549
346
  }), await this.backend.handleAction({
550
347
  action: "GET_PAGE_META",
551
- data: { slug: a, draft: e, dynamicSegments: n }
348
+ data: { slug: a, draft: t, dynamicSegments: s }
552
349
  });
553
350
  }
554
351
  async getFullPage(a) {
555
- const e = this.isDraftMode(), n = this.getCurrentLang(), t = this.getFallbackLang();
352
+ const t = this.isDraftMode();
556
353
  return await this.backend.handleAction({
557
354
  action: "GET_PAGE",
558
355
  data: {
559
356
  id: a,
560
- lang: t === n ? void 0 : n,
561
- draft: e,
357
+ draft: t,
562
358
  mergePartials: !0
563
359
  }
564
360
  });
@@ -570,54 +366,58 @@ class W {
570
366
  data: { draft: a }
571
367
  });
572
368
  }
573
- async getPageData(a, e, n) {
574
- var A;
575
- const t = this.isDraftMode(), r = this.getCurrentLang(), o = f(e), c = a.filter(
369
+ async getPageData({
370
+ blocks: a = [],
371
+ pageType: t,
372
+ pageProps: s,
373
+ lang: e
374
+ }) {
375
+ var f;
376
+ const r = this.isDraftMode(), o = A(t), c = a.filter(
576
377
  (u) => u._type === "Repeater" && (u == null ? void 0 : u.repeaterItems.includes("{{#"))
577
378
  );
578
- let d = {};
379
+ let g = {};
579
380
  if (c.length > 0) {
580
381
  const u = c.map((l) => ({ collectionId: l.repeaterItems.replace("{{#", "").replace("}}", ""), block: l }));
581
- d = (await Promise.all(
582
- u.map(async ({ collectionId: l, block: s }) => {
583
- const h = v(l);
382
+ g = (await Promise.all(
383
+ u.map(async ({ collectionId: l, block: n }) => {
384
+ const h = b(l);
584
385
  try {
585
- const g = await (h == null ? void 0 : h.fetch({
586
- lang: r,
587
- draft: t,
386
+ const d = await (h == null ? void 0 : h.fetch({
387
+ lang: e,
388
+ draft: r,
588
389
  inBuilder: !1,
589
- pageProps: n,
590
- block: s
390
+ pageProps: s,
391
+ block: n
591
392
  }));
592
393
  return Promise.resolve({
593
- [`#${l}/${s._id}`]: T(g, "items", []) ?? []
394
+ [`#${l}/${n._id}`]: C(d, "items", []) ?? []
594
395
  });
595
396
  } catch {
596
397
  return Promise.resolve({
597
- [`#${l}/${s._id}`]: []
398
+ [`#${l}/${n._id}`]: []
598
399
  });
599
400
  }
600
401
  })
601
- )).reduce((l, s) => ({ ...l, ...s }), {});
402
+ )).reduce((l, n) => ({ ...l, ...n }), {});
602
403
  }
603
404
  const [m, S] = await Promise.all([
604
- this.getGlobalData(),
605
- ((A = o == null ? void 0 : o.dataProvider) == null ? void 0 : A.call(o, {
606
- lang: r,
607
- draft: t,
405
+ this.getGlobalData(e),
406
+ ((f = o == null ? void 0 : o.dataProvider) == null ? void 0 : f.call(o, {
407
+ lang: e,
408
+ draft: r,
608
409
  inBuilder: !1,
609
- pageProps: n
410
+ pageProps: s
610
411
  })) || Promise.resolve({})
611
412
  ]);
612
413
  return o ? {
613
414
  ...S,
614
415
  global: m,
615
- ...d
616
- } : { global: m, ...d };
416
+ ...g
417
+ } : { global: m, ...g };
617
418
  }
618
- async getGlobalData() {
619
- const a = this.getCurrentLang();
620
- return await b({
419
+ async getGlobalData(a) {
420
+ return await v({
621
421
  lang: a,
622
422
  draft: this.isDraftMode(),
623
423
  inBuilder: !1
@@ -627,56 +427,244 @@ class W {
627
427
  return await this.backend.handleAction(a);
628
428
  }
629
429
  }
630
- class q {
631
- constructor(a = "", e = x) {
632
- this.apiKey = a, this.apiUrl = e;
430
+ class Y {
431
+ constructor(a = "", t = j) {
432
+ this.apiKey = a, this.apiUrl = t;
633
433
  }
634
- async handleUsersAction(a, e) {
635
- const n = await fetch(`${this.apiUrl}/v1/api/users`, {
434
+ async handleUsersAction(a, t) {
435
+ const s = await fetch(`${this.apiUrl}/v1/api/users`, {
636
436
  method: "POST",
637
437
  body: JSON.stringify(a),
638
438
  headers: {
639
439
  "x-chai-api-key": this.apiKey,
640
- "x-chai-auth-token": e
440
+ "x-chai-auth-token": t
641
441
  }
642
- }), t = await n.json();
643
- return p(t, "error") ? { ...t, status: n.status } : t;
442
+ }), e = await s.json();
443
+ return k(e, "error") ? { ...e, status: s.status } : e;
644
444
  }
645
- async handleAction(a, e) {
646
- const n = await fetch(`${this.apiUrl}/v1/api/chai`, {
445
+ async handleAction(a, t) {
446
+ const s = await fetch(`${this.apiUrl}/v1/api/chai`, {
647
447
  method: "POST",
648
448
  body: JSON.stringify(a),
649
449
  headers: {
650
450
  "x-chai-api-key": this.apiKey,
651
- "x-chai-auth-token": e
451
+ "x-chai-auth-token": t
652
452
  }
653
- }), t = await n.json();
654
- return p(t, "error") ? { ...t, status: n.status } : t;
453
+ }), e = await s.json();
454
+ return k(e, "error") ? { ...e, status: s.status } : e;
655
455
  }
656
- async handleAssetsAction(a, e) {
456
+ async handleAssetsAction(a, t) {
657
457
  return await (await fetch(`${this.apiUrl}/v1/api/assets`, {
658
458
  method: "POST",
659
459
  body: JSON.stringify(a),
660
460
  headers: {
661
461
  "x-chai-api-key": this.apiKey,
662
- "x-chai-auth-token": e
462
+ "x-chai-auth-token": t
663
463
  }
664
464
  })).json();
665
465
  }
666
466
  }
667
- const x = "https://api.chaibuilder.com";
467
+ const W = {
468
+ ab: "Abkhazian",
469
+ aa: "Afar",
470
+ af: "Afrikaans",
471
+ ak: "Akan",
472
+ sq: "Albanian",
473
+ am: "Amharic",
474
+ ar: "Arabic",
475
+ an: "Aragonese",
476
+ hy: "Armenian",
477
+ as: "Assamese",
478
+ av: "Avaric",
479
+ ae: "Avestan",
480
+ ay: "Aymara",
481
+ az: "Azerbaijani",
482
+ bm: "Bambara",
483
+ ba: "Bashkir",
484
+ eu: "Basque",
485
+ be: "Belarusian",
486
+ bn: "Bengali",
487
+ bh: "Bihari",
488
+ bi: "Bislama",
489
+ bs: "Bosnian",
490
+ br: "Breton",
491
+ bg: "Bulgarian",
492
+ my: "Burmese",
493
+ ca: "Catalan",
494
+ ch: "Chamorro",
495
+ ce: "Chechen",
496
+ ny: "Chichewa",
497
+ zh: "Chinese",
498
+ "zh-Hans": "Chinese (Simplified)",
499
+ "zh-Hant": "Chinese (Traditional)",
500
+ cv: "Chuvash",
501
+ kw: "Cornish",
502
+ co: "Corsican",
503
+ cr: "Cree",
504
+ hr: "Croatian",
505
+ cs: "Czech",
506
+ da: "Danish",
507
+ dv: "Maldivian",
508
+ nl: "Dutch",
509
+ dz: "Dzongkha",
510
+ en: "English",
511
+ eo: "Esperanto",
512
+ et: "Estonian",
513
+ ee: "Ewe",
514
+ fo: "Faroese",
515
+ fj: "Fijian",
516
+ fi: "Finnish",
517
+ fr: "French",
518
+ ff: "Fula, Pular",
519
+ gl: "Galician",
520
+ gd: "Gaelic (Scottish)",
521
+ gv: "Manx",
522
+ ka: "Georgian",
523
+ de: "German",
524
+ el: "Greek",
525
+ kl: "Kalaallisut",
526
+ gn: "Guarani",
527
+ gu: "Gujarati",
528
+ ht: "Haitian Creole",
529
+ ha: "Hausa",
530
+ he: "Hebrew",
531
+ hz: "Herero",
532
+ hi: "Hindi",
533
+ ho: "Hiri Motu",
534
+ hu: "Hungarian",
535
+ is: "Icelandic",
536
+ io: "Ido",
537
+ ig: "Igbo",
538
+ id: "Indonesian",
539
+ ia: "Interlingua",
540
+ ie: "Interlingue",
541
+ iu: "Inuktitut",
542
+ ik: "Inupiak",
543
+ ga: "Irish",
544
+ it: "Italian",
545
+ ja: "Japanese",
546
+ jv: "Javanese",
547
+ kn: "Kannada",
548
+ kr: "Kanuri",
549
+ ks: "Kashmiri",
550
+ kk: "Kazakh",
551
+ km: "Khmer",
552
+ ki: "Kikuyu",
553
+ rw: "Kinyarwanda",
554
+ rn: "Kirundi",
555
+ ky: "Kyrgyz",
556
+ kv: "Komi",
557
+ kg: "Kongo",
558
+ ko: "Korean",
559
+ ku: "Kurdish",
560
+ kj: "Kwanyama",
561
+ lo: "Lao",
562
+ la: "Latin",
563
+ lv: "Latvian",
564
+ li: "Limburgish",
565
+ ln: "Lingala",
566
+ lt: "Lithuanian",
567
+ lu: "Luga-Katanga",
568
+ lg: "Luganda, Ganda",
569
+ lb: "Luxembourgish",
570
+ mk: "Macedonian",
571
+ mg: "Malagasy",
572
+ ms: "Malay",
573
+ ml: "Malayalam",
574
+ mt: "Maltese",
575
+ mi: "Maori",
576
+ mr: "Marathi",
577
+ mh: "Marshallese",
578
+ mo: "Moldavian",
579
+ mn: "Mongolian",
580
+ na: "Nauru",
581
+ nv: "Navajo",
582
+ ng: "Ndonga",
583
+ nd: "Northern Ndebele",
584
+ ne: "Nepali",
585
+ no: "Norwegian",
586
+ nb: "Norwegian bokmål",
587
+ nn: "Norwegian nynorsk",
588
+ ii: "Sichuan Yi",
589
+ oc: "Occitan",
590
+ oj: "Ojibwe",
591
+ cu: "Old Church Slavonic",
592
+ or: "Oriya",
593
+ om: "Oromo",
594
+ os: "Ossetian",
595
+ pi: "Pāli",
596
+ ps: "Pashto, Pushto",
597
+ fa: "Persian (Farsi)",
598
+ pl: "Polish",
599
+ pt: "Portuguese",
600
+ pa: "Punjabi (Eastern)",
601
+ qu: "Quechua",
602
+ rm: "Romansh",
603
+ ro: "Romanian",
604
+ ru: "Russian",
605
+ se: "Sami",
606
+ sm: "Samoan",
607
+ sg: "Sango",
608
+ sa: "Sanskrit",
609
+ sr: "Serbian",
610
+ sh: "Serbo-Croatian",
611
+ st: "Sesotho",
612
+ tn: "Setswana",
613
+ sn: "Shona",
614
+ sd: "Sindhi",
615
+ si: "Sinhalese",
616
+ ss: "Swati",
617
+ sk: "Slovak",
618
+ sl: "Slovenian",
619
+ so: "Somali",
620
+ nr: "Southern Ndebele",
621
+ es: "Spanish",
622
+ su: "Sundanese",
623
+ sw: "Swahili (Kiswahili)",
624
+ sv: "Swedish",
625
+ tl: "Tagalog",
626
+ ty: "Tahitian",
627
+ tg: "Tajik",
628
+ ta: "Tamil",
629
+ tt: "Tatar",
630
+ te: "Telugu",
631
+ th: "Thai",
632
+ bo: "Tibetan",
633
+ ti: "Tigrinya",
634
+ to: "Tonga",
635
+ ts: "Tsonga",
636
+ tr: "Turkish",
637
+ tk: "Turkmen",
638
+ tw: "Twi",
639
+ ug: "Uyghur",
640
+ uk: "Ukrainian",
641
+ ur: "Urdu",
642
+ uz: "Uzbek",
643
+ ve: "Venda",
644
+ vi: "Vietnamese",
645
+ vo: "Volapük",
646
+ wa: "Wallon",
647
+ cy: "Welsh",
648
+ wo: "Wolof",
649
+ fy: "Western Frisian",
650
+ xh: "Xhosa",
651
+ yi: "Yiddish",
652
+ yo: "Yoruba",
653
+ za: "Zhuang, Chuang",
654
+ zu: "Zulu"
655
+ }, j = "https://api.chaibuilder.com";
668
656
  export {
669
- x as API_URL,
670
- W as ChaiBuilderPages,
671
- q as ChaiBuilderPagesBackend,
672
- F as ChaiBuilderPagesUserManagement,
673
- N as LANGUAGES,
674
- v as getChaiCollection,
675
- R as getChaiCollections,
676
- f as getChaiPageType,
657
+ j as API_URL,
658
+ $ as ChaiBuilderPages,
659
+ Y as ChaiBuilderPagesBackend,
660
+ N as ChaiBuilderPagesUserManagement,
661
+ W as LANGUAGES,
662
+ b as getChaiCollection,
663
+ K as getChaiCollections,
664
+ A as getChaiPageType,
677
665
  y as getChaiPageTypes,
678
- Y as registerChaiCollection,
679
- $ as registerChaiGlobalDataProvider,
680
- H as registerChaiPageType,
681
- K as registerChaiPartialType
666
+ Z as registerChaiCollection,
667
+ F as registerChaiGlobalDataProvider,
668
+ O as registerChaiPageType,
669
+ H as registerChaiPartialType
682
670
  };
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "author": "Suraj Air",
4
4
  "license": "Private",
5
5
  "homepage": "https://chaibuilder.com",
6
- "version": "0.5.16-beta.1",
6
+ "version": "0.6.0-beta.1",
7
7
  "type": "module",
8
8
  "files": [
9
9
  "dist"