@chaibuilder/sdk 2.2.9 → 2.2.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core.cjs +3 -3
- package/dist/core.js +163 -148
- package/dist/{new-blocks-render-helpers-BrYtxlrw.js → new-blocks-render-helpers-DIG03xaR.js} +17 -23
- package/dist/new-blocks-render-helpers-NXqcMiBw.cjs +1 -0
- package/dist/render.cjs +1 -1
- package/dist/render.js +1 -1
- package/package.json +1 -1
- package/dist/new-blocks-render-helpers-DxkhHL0n.cjs +0 -1
package/dist/{new-blocks-render-helpers-BrYtxlrw.js → new-blocks-render-helpers-DIG03xaR.js}
RENAMED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { getRegisteredChaiBlock as B } from "@chaibuilder/runtime";
|
|
2
|
-
import { memoize as f, get as i, isEmpty as
|
|
2
|
+
import { memoize as f, get as i, isEmpty as o, cloneDeep as u, forEach as C, keys as _, includes as O, isString as h, startsWith as m, isArray as E } from "lodash-es";
|
|
3
3
|
import { twMerge as R } from "tailwind-merge";
|
|
4
|
-
const
|
|
5
|
-
if (s = s.replace(
|
|
4
|
+
const b = "#styles:", N = "__ADD_BLOCK_INTERNAL_ROOT", $ = (s) => {
|
|
5
|
+
if (s = s.replace(b, ""), !s) return { baseClasses: "", classes: "" };
|
|
6
6
|
const e = s.split(/,(?![^\[]*\])/);
|
|
7
7
|
if (e.length === 1)
|
|
8
8
|
return { baseClasses: "", classes: e[0].trim() };
|
|
@@ -39,17 +39,17 @@ import.meta.vitest && describe("getSplitChaiClasses", () => {
|
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
41
|
for (let e in s) {
|
|
42
|
-
const t =
|
|
42
|
+
const t = $(`${b}${e}`);
|
|
43
43
|
expect(t).toEqual(s[e]);
|
|
44
44
|
}
|
|
45
45
|
});
|
|
46
46
|
});
|
|
47
47
|
function P(s, e, t) {
|
|
48
48
|
const a = i(t, "i18nProps", []);
|
|
49
|
-
if (
|
|
49
|
+
if (o(e) || o(a)) return s;
|
|
50
50
|
const r = u(s);
|
|
51
51
|
return C(_(r), (n) => {
|
|
52
|
-
O(a, n) && !
|
|
52
|
+
O(a, n) && !o(e) && (r[n] = i(r, `${n}-${e}`, r[n]));
|
|
53
53
|
}), r;
|
|
54
54
|
}
|
|
55
55
|
const D = (s, e, { index: t, key: a }) => {
|
|
@@ -58,17 +58,17 @@ const D = (s, e, { index: t, key: a }) => {
|
|
|
58
58
|
if (h(r[n]) && !m(n, "_")) {
|
|
59
59
|
let l = r[n];
|
|
60
60
|
n === "repeaterItems" && (r.repeaterItemsBinding = l);
|
|
61
|
-
const y = /\{\{(.*?)\}\}/g,
|
|
62
|
-
|
|
63
|
-
let c =
|
|
61
|
+
const y = /\{\{(.*?)\}\}/g, d = l.match(y);
|
|
62
|
+
d && d.forEach((g) => {
|
|
63
|
+
let c = g.slice(2, -2);
|
|
64
64
|
t !== -1 && a !== "" && m(c, "$index.") && (c = `${a.replace(/\{\{(.*)\}\}/g, "$1")}.${c.replace("$index", `${t}`)}`);
|
|
65
|
-
const
|
|
66
|
-
l =
|
|
65
|
+
const p = i(e, c, g);
|
|
66
|
+
l = E(p) ? p : l.replace(g, p);
|
|
67
67
|
}), r[n] = l;
|
|
68
68
|
}
|
|
69
69
|
}), r;
|
|
70
70
|
}, x = f((s) => {
|
|
71
|
-
const { baseClasses: e, classes: t } =
|
|
71
|
+
const { baseClasses: e, classes: t } = $(s);
|
|
72
72
|
return R(e, t);
|
|
73
73
|
});
|
|
74
74
|
function T(s, e) {
|
|
@@ -77,15 +77,9 @@ function T(s, e) {
|
|
|
77
77
|
function I(s) {
|
|
78
78
|
const e = {};
|
|
79
79
|
return Object.keys(s).forEach((t) => {
|
|
80
|
-
if (h(s[t]) && s[t].startsWith(
|
|
80
|
+
if (h(s[t]) && s[t].startsWith(b)) {
|
|
81
81
|
const a = x(s[t]), r = T(s, t);
|
|
82
|
-
e[t] = {
|
|
83
|
-
className: a,
|
|
84
|
-
"data-style-prop": t,
|
|
85
|
-
"data-block-parent": s._id,
|
|
86
|
-
"data-style-id": `${t}-${s._id}`,
|
|
87
|
-
...r
|
|
88
|
-
};
|
|
82
|
+
e[t] = { ...!o(a) && { className: a }, ...r };
|
|
89
83
|
}
|
|
90
84
|
}), e;
|
|
91
85
|
}
|
|
@@ -93,17 +87,17 @@ const L = f((s) => {
|
|
|
93
87
|
const e = B(s), t = i(e, "schema.properties", {});
|
|
94
88
|
return Object.fromEntries(Object.entries(t).filter(([, a]) => i(a, "runtime", !1)));
|
|
95
89
|
}), M = (s, e) => {
|
|
96
|
-
if (
|
|
90
|
+
if (!E(s)) return s;
|
|
97
91
|
let t = s, a;
|
|
98
92
|
return typeof e.limit == "number" && e.limit > 0 && (a = e.limit), a !== void 0 && (t = t.slice(0, a)), t;
|
|
99
93
|
};
|
|
100
94
|
export {
|
|
101
95
|
N as R,
|
|
102
|
-
|
|
96
|
+
b as S,
|
|
103
97
|
D as a,
|
|
104
98
|
P as b,
|
|
105
99
|
L as c,
|
|
106
100
|
M as d,
|
|
107
|
-
|
|
101
|
+
$ as e,
|
|
108
102
|
I as g
|
|
109
103
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const m=require("@chaibuilder/runtime"),e=require("lodash-es"),f=require("tailwind-merge"),p="#styles:",C="__ADD_BLOCK_INTERNAL_ROOT",b=s=>{if(s=s.replace(p,""),!s)return{baseClasses:"",classes:""};const t=s.split(/,(?![^\[]*\])/);if(t.length===1)return{baseClasses:"",classes:t[0].trim()};const[a,...r]=t;return{baseClasses:a.trim(),classes:r.join(",").trim().replace(/ +(?= )/g,"")}};function E(s,t,a){const r=e.get(a,"i18nProps",[]);if(e.isEmpty(t)||e.isEmpty(r))return s;const n=e.cloneDeep(s);return e.forEach(e.keys(n),i=>{e.includes(r,i)&&!e.isEmpty(t)&&(n[i]=e.get(n,`${i}-${t}`,n[i]))}),n}const _=(s,t,{index:a,key:r})=>{const n=e.cloneDeep(s);return e.forEach(e.keys(n),i=>{if(e.isString(n[i])&&!e.startsWith(i,"_")){let l=n[i];i==="repeaterItems"&&(n.repeaterItemsBinding=l);const d=/\{\{(.*?)\}\}/g,u=l.match(d);u&&u.forEach(g=>{let c=g.slice(2,-2);a!==-1&&r!==""&&e.startsWith(c,"$index.")&&(c=`${r.replace(/\{\{(.*)\}\}/g,"$1")}.${c.replace("$index",`${a}`)}`);const o=e.get(t,c,g);l=e.isArray(o)?o:l.replace(g,o)}),n[i]=l}}),n},h=e.memoize(s=>{const{baseClasses:t,classes:a}=b(s);return f.twMerge(t,a)});function y(s,t){return e.get(s,`${t}_attrs`,{})}function B(s){const t={};return Object.keys(s).forEach(a=>{if(e.isString(s[a])&&s[a].startsWith(p)){const r=h(s[a]),n=y(s,a);t[a]={...!e.isEmpty(r)&&{className:r},...n}}}),t}const T=e.memoize(s=>{const t=m.getRegisteredChaiBlock(s),a=e.get(t,"schema.properties",{});return Object.fromEntries(Object.entries(a).filter(([,r])=>e.get(r,"runtime",!1)))}),$=(s,t)=>{if(!e.isArray(s))return s;let a=s,r;return typeof t.limit=="number"&&t.limit>0&&(r=t.limit),r!==void 0&&(a=a.slice(0,r)),a};exports.ROOT_TEMP_KEY=C;exports.STYLES_KEY=p;exports.applyBinding=_;exports.applyLanguage=E;exports.applyLimit=$;exports.getBlockRuntimeProps=T;exports.getBlockTagAttributes=B;exports.getSplitChaiClasses=b;
|
package/dist/render.cjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("./plugin-C01tjI6V.cjs"),p=require("./new-blocks-render-helpers-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("./plugin-C01tjI6V.cjs"),p=require("./new-blocks-render-helpers-NXqcMiBw.cjs"),r=require("lodash-es"),x=require("@tailwindcss/aspect-ratio"),q=require("@tailwindcss/forms"),I=require("@tailwindcss/typography");require("tailwindcss-animate");const R=require("./get-chai-builder-theme-CeaKvOZ8.cjs"),j=require("@mhsdesign/jit-browser-tailwindcss"),F=require("@tailwindcss/container-queries"),u=require("react/jsx-runtime"),m=require("react"),L=require("@chaibuilder/runtime"),E=e=>{if(!e)return[];try{return JSON.parse(O(e)).filter(n=>!n._type.startsWith("@chai"))}catch{return[{_type:"Paragraph",_id:"error",content:"Invalid JSON. Please check the JSON string."}]}};function O(e){const t=/(asset:\/\/|https:\/\/asset\.localhost\/)(?:localhost\/)?[^"']+/g;return e.replace(t,n=>{const a=decodeURIComponent(n),s=a.indexOf("public");return s!==-1?a.substring(s+6):a})}async function A(e,t,n=[],a="",s){return await j.createTailwindcss({tailwindConfig:{darkMode:"class",safelist:n,theme:{extend:R.getChaiBuilderTheme(e)},plugins:[q,I,x,F,h.chaiBuilderPlugin],corePlugins:{preflight:s},...a?{prefix:`${a}`}:{}}}).generateStylesFromContent(` ${s?"@tailwind base;":""}
|
|
2
2
|
@tailwind components;
|
|
3
3
|
@tailwind utilities;`,t)}const D=(e,t,n)=>{const a=JSON.stringify(e).replace(/#styles:([^"]*)/g,(s,o)=>`#styles:${o.replace(/,/g," ")}`.replace(/#styles:/g,""));return A(t,[a],[],"",n)},M=async(e,t=h.defaultThemeOptions,n=!1)=>await D(e,t,n);async function $(e){const t=await e.dataProvider({pageProps:e.pageProps,block:e.block,lang:e.lang,draft:e.draft,inBuilder:!1});return r.has(t,"$metadata")&&e.dataProviderMetadataCallback(e.block,t.$metadata),e.children({...r.omit(t,"$metadata")})}const N=()=>u.jsx("div",{}),J=e=>{const{block:t,lang:n,fallbackLang:a,children:s,externalData:o,blocks:i,draft:l,pageProps:g,dataProviderMetadataCallback:k}=e,c=L.getRegisteredChaiBlock(t._type),f=r.get(c,"component",null),y=r.get(e.repeaterData,"index",-1),P=r.get(e.repeaterData,"dataKey",""),_=n===a?"":n,d=p.applyBinding(p.applyLanguage(t,_,c),o,{index:y,key:P}),w=p.getBlockTagAttributes(t),C=K(i,t._id,p.getBlockRuntimeProps(t._type)),S=r.has(c,"dataProvider")&&r.isFunction(c.dataProvider),B={blockProps:{},inBuilder:!1,lang:n||a,...d,...w,...C};if(r.isNull(f))return null;if(S){const v=r.get(c,"suspenseFallback",N);return u.jsx(m.Suspense,{fallback:m.createElement(v),children:u.jsx($,{lang:n,pageProps:g,block:t,dataProvider:c.dataProvider,dataProviderMetadataCallback:k,draft:l,children:T=>m.createElement(f,{...B,...T,children:s({_id:t._id,_type:t._type,...r.isArray(d.repeaterItems)?{repeaterItems:p.applyLimit(d.repeaterItems,t),repeaterItemsBinding:d.repeaterItemsBinding}:{}})})})})}return u.jsx(m.Suspense,{children:m.createElement(f,{...B,children:s({_id:t._id,_type:t._type,...r.isArray(d.repeaterItems)?{repeaterItems:p.applyLimit(d.repeaterItems,t),repeaterItemsBinding:d.repeaterItemsBinding}:{}})})})},b=e=>{const{blocks:t,parent:n,repeaterData:a}=e,s=r.filter(t,i=>r.has(i,"_id")&&(r.isEmpty(n)?!i._parent:i._parent===n)),o=i=>r.filter(t,l=>l._parent===i).length>0;return r.map(s,i=>i?m.createElement(J,{...e,key:i._id,block:i},({_id:l,_type:g,repeaterItems:k,repeaterItemsBinding:c})=>g==="Repeater"?r.isArray(k)&&k.map((f,y)=>u.jsx(b,{...e,parent:i._id,repeaterData:{index:y,dataKey:c}})):o(l)?u.jsx(b,{...e,parent:i._id,repeaterData:a}):null):null)},K=(e,t,n)=>r.isEmpty(n)?{}:Object.entries(n).reduce((a,[s,o])=>{const i=[];let l=r.find(e,{_id:t});for(;l;)i.push(l),l=r.find(e,{_id:l._parent});const g=r.find(i,{_type:o.block});return g&&(a[s]=r.get(g,r.get(o,"prop"),null)),a},{});function V(e){if(r.has(e,"metadata")&&console.warn(" metadata is deprecated and will be removed in upcoming version, use pageProps instead"),r.isEmpty(e.lang)&&!r.isEmpty(e.fallbackLang))throw new Error("lang prop is required when fallbackLang is provided");const t=e.lang??"en",n=e.fallbackLang??t;return u.jsx(b,{...e,lang:t,fallbackLang:n})}exports.getChaiThemeCssVariables=h.getChaiThemeCssVariables;exports.getThemeFontsCSSImport=h.getThemeFontsCSSImport;exports.getThemeFontsLinkMarkup=h.getThemeFontsLinkMarkup;exports.RenderChaiBlocks=V;exports.convertToBlocks=E;exports.getStylesForBlocks=M;
|
package/dist/render.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { d as F, c as D } from "./plugin-fnBB3TCm.js";
|
|
2
2
|
import { a as Pe, b as we, e as Be } from "./plugin-fnBB3TCm.js";
|
|
3
|
-
import { a as O, b as $, g as A, c as N, d as B } from "./new-blocks-render-helpers-
|
|
3
|
+
import { a as O, b as $, g as A, c as N, d as B } from "./new-blocks-render-helpers-DIG03xaR.js";
|
|
4
4
|
import { has as k, omit as J, get as g, isFunction as M, isNull as E, isArray as _, filter as v, isEmpty as h, map as K, find as y } from "lodash-es";
|
|
5
5
|
import j from "@tailwindcss/aspect-ratio";
|
|
6
6
|
import U from "@tailwindcss/forms";
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const m=require("@chaibuilder/runtime"),e=require("lodash-es"),f=require("tailwind-merge"),p="#styles:",C="__ADD_BLOCK_INTERNAL_ROOT",u=s=>{if(s=s.replace(p,""),!s)return{baseClasses:"",classes:""};const t=s.split(/,(?![^\[]*\])/);if(t.length===1)return{baseClasses:"",classes:t[0].trim()};const[a,...r]=t;return{baseClasses:a.trim(),classes:r.join(",").trim().replace(/ +(?= )/g,"")}};function _(s,t,a){const r=e.get(a,"i18nProps",[]);if(e.isEmpty(t)||e.isEmpty(r))return s;const n=e.cloneDeep(s);return e.forEach(e.keys(n),i=>{e.includes(r,i)&&!e.isEmpty(t)&&(n[i]=e.get(n,`${i}-${t}`,n[i]))}),n}const E=(s,t,{index:a,key:r})=>{const n=e.cloneDeep(s);return e.forEach(e.keys(n),i=>{if(e.isString(n[i])&&!e.startsWith(i,"_")){let l=n[i];i==="repeaterItems"&&(n.repeaterItemsBinding=l);const b=/\{\{(.*?)\}\}/g,d=l.match(b);d&&d.forEach(g=>{let c=g.slice(2,-2);a!==-1&&r!==""&&e.startsWith(c,"$index.")&&(c=`${r.replace(/\{\{(.*)\}\}/g,"$1")}.${c.replace("$index",`${a}`)}`);const o=e.get(t,c,g);l=e.isArray(o)?o:l.replace(g,o)}),n[i]=l}}),n},h=e.memoize(s=>{const{baseClasses:t,classes:a}=u(s);return f.twMerge(t,a)});function y(s,t){return e.get(s,`${t}_attrs`,{})}function $(s){const t={};return Object.keys(s).forEach(a=>{if(e.isString(s[a])&&s[a].startsWith(p)){const r=h(s[a]),n=y(s,a);t[a]={className:r,"data-style-prop":a,"data-block-parent":s._id,"data-style-id":`${a}-${s._id}`,...n}}}),t}const B=e.memoize(s=>{const t=m.getRegisteredChaiBlock(s),a=e.get(t,"schema.properties",{});return Object.fromEntries(Object.entries(a).filter(([,r])=>e.get(r,"runtime",!1)))}),T=(s,t)=>{if(!e.isArray(s))return s;let a=s,r;return typeof t.limit=="number"&&t.limit>0&&(r=t.limit),r!==void 0&&(a=a.slice(0,r)),a};exports.ROOT_TEMP_KEY=C;exports.STYLES_KEY=p;exports.applyBinding=E;exports.applyLanguage=_;exports.applyLimit=T;exports.getBlockRuntimeProps=B;exports.getBlockTagAttributes=$;exports.getSplitChaiClasses=u;
|