@builder.io/sdk-react 2.0.24 → 2.0.26
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/lib/browser/blocks-exports.cjs +5 -5
- package/lib/browser/blocks-exports.mjs +47 -41
- package/lib/browser/index.cjs +1 -1
- package/lib/browser/index.mjs +1 -1
- package/lib/browser/server-entry-720336f2.js +704 -0
- package/lib/browser/server-entry-f2c8ba91.cjs +2 -0
- package/lib/browser/server-entry.cjs +1 -1
- package/lib/browser/server-entry.mjs +1 -1
- package/lib/edge/{accordion-5b929fba.js → accordion-0a97d42c.js} +1 -1
- package/lib/edge/{accordion-bb9fa8d9.cjs → accordion-e8975004.cjs} +1 -1
- package/lib/edge/{blocks-cff95ab8.cjs → blocks-13ac260d.cjs} +1 -1
- package/lib/edge/{blocks-e8701f70.js → blocks-79d4ca8d.js} +3 -3
- package/lib/edge/blocks-exports.cjs +1 -1
- package/lib/edge/blocks-exports.mjs +2 -2
- package/lib/edge/{button-dd9c397c.js → button-17d873fa.js} +2 -2
- package/lib/edge/{button-89adbac2.cjs → button-a01a8a04.cjs} +1 -1
- package/lib/edge/{columns-acd49f06.js → columns-b8bb106c.js} +4 -4
- package/lib/edge/{columns-b0cfdce7.cjs → columns-c4c26bf0.cjs} +1 -1
- package/lib/edge/{content-variants-56c457f6.cjs → content-variants-32296e48.cjs} +8 -8
- package/lib/edge/{content-variants-2cbf3c83.js → content-variants-6560c3c8.js} +51 -45
- package/lib/edge/{evaluate-68711886.js → evaluate-1c58cb0f.js} +1 -1
- package/lib/edge/{evaluate-efa88e4b.cjs → evaluate-92fb6615.cjs} +1 -1
- package/lib/edge/{form-85e86f80.cjs → form-11832191.cjs} +1 -1
- package/lib/edge/{form-060579d1.js → form-d8609725.js} +4 -4
- package/lib/edge/{get-class-prop-name-bb0664a1.js → get-class-prop-name-1dd91564.js} +1 -1
- package/lib/edge/{get-class-prop-name-d6d04e54.cjs → get-class-prop-name-e5b5610b.cjs} +1 -1
- package/lib/edge/{img-cb9a2e73.js → img-bf66df07.js} +1 -1
- package/lib/edge/{img-7267e34a.cjs → img-d044ae25.cjs} +1 -1
- package/lib/edge/index.cjs +1 -1
- package/lib/edge/index.mjs +1 -1
- package/lib/edge/{input-0a7941d1.cjs → input-9340f0ba.cjs} +1 -1
- package/lib/edge/{input-99f775bd.js → input-ab613ef1.js} +1 -1
- package/lib/edge/{select-88a74342.js → select-c9f8f72d.js} +1 -1
- package/lib/edge/{select-9791ad44.cjs → select-cda5352c.cjs} +1 -1
- package/lib/edge/server-entry-4d4f2c4b.cjs +2 -0
- package/lib/edge/server-entry-c809a8ff.js +702 -0
- package/lib/edge/server-entry.cjs +1 -1
- package/lib/edge/server-entry.mjs +1 -1
- package/lib/edge/{slot-28b25c84.js → slot-69765c02.js} +4 -4
- package/lib/edge/{slot-d3b5cdb8.cjs → slot-b66c52dc.cjs} +1 -1
- package/lib/edge/{symbol-f0ba82bf.cjs → symbol-1b3f8d1f.cjs} +1 -1
- package/lib/edge/{symbol-1ab0fb76.js → symbol-335cfb65.js} +2 -2
- package/lib/edge/{tabs-a04af934.js → tabs-629e6a1f.js} +4 -4
- package/lib/edge/{tabs-fad92db1.cjs → tabs-bf6cc6f2.cjs} +1 -1
- package/lib/edge/{text-3c4c2e24.js → text-2d218073.js} +2 -2
- package/lib/edge/{text-ee3d6be2.cjs → text-ff5a8f9b.cjs} +1 -1
- package/lib/node/blocks-exports.cjs +7 -7
- package/lib/node/blocks-exports.mjs +49 -43
- package/lib/node/index.cjs +1 -1
- package/lib/node/index.mjs +2 -2
- package/lib/node/init.cjs +1 -1
- package/lib/node/init.mjs +2 -2
- package/lib/node/server-entry-12c82a21.js +705 -0
- package/lib/node/server-entry-ac34c1ae.cjs +2 -0
- package/lib/node/server-entry.cjs +1 -1
- package/lib/node/server-entry.mjs +1 -1
- package/lib/node/{should-force-browser-runtime-in-node-411c24f8.cjs → should-force-browser-runtime-in-node-1e38f5d9.cjs} +1 -1
- package/lib/node/{should-force-browser-runtime-in-node-2251f2e6.js → should-force-browser-runtime-in-node-94a10439.js} +1 -1
- package/package.json +1 -1
- package/types/components/content/components/enable-editor.d.ts +1 -1
- package/types/components/content-variants/content-variants.types.d.ts +4 -0
- package/types/constants/sdk-version.d.ts +1 -1
- package/types/functions/get-content/types.d.ts +4 -0
- package/types/functions/track/index.d.ts +3 -1
- package/types/helpers/sdk-headers.d.ts +5 -0
- package/lib/browser/server-entry-0dfca5e0.cjs +0 -2
- package/lib/browser/server-entry-578cd6e2.js +0 -690
- package/lib/edge/server-entry-a7db0ef9.js +0 -688
- package/lib/edge/server-entry-cb6fb618.cjs +0 -2
- package/lib/node/server-entry-2ce603a9.cjs +0 -2
- package/lib/node/server-entry-bf8bf121.js +0 -691
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const I="react",b="[Builder.io]: ",d={log:(...e)=>console.log(b,...e),error:(...e)=>console.error(b,...e),warn:(...e)=>console.warn(b,...e),debug:(...e)=>console.debug(b,...e)};function c(){return typeof window!="undefined"&&typeof document!="undefined"}const ae=e=>{const t={};return e.forEach((n,r)=>{t[r]=n}),t},M=e=>e instanceof URLSearchParams?ae(e):e,U=e=>typeof e=="string"?e:e instanceof URLSearchParams?e.toString():new URLSearchParams(e).toString();function ce(){return c()&&window.self!==window.top}function F(e){return ce()&&U(e||window.location.search).indexOf("builder.frameEditing=")!==-1}const ue=()=>{if(c()){const e=new URL(location.href);return e.pathname===""&&(e.pathname="/"),e}else return console.warn("Cannot get location for tracking in non-browser environment"),null},de=()=>typeof navigator=="object"&&navigator.userAgent||"",N=()=>{const e=de(),t={Android(){return e.match(/Android/i)},BlackBerry(){return e.match(/BlackBerry/i)},iOS(){return e.match(/iPhone|iPod/i)},Opera(){return e.match(/Opera Mini/i)},Windows(){return e.match(/IEMobile/i)||e.match(/WPDesktop/i)},any(){return t.Android()||t.BlackBerry()||t.iOS()||t.Opera()||t.Windows()||I==="reactNative"}},n=e.match(/Tablet|iPad/i),r=ue();return{urlPath:r==null?void 0:r.pathname,host:(r==null?void 0:r.host)||(r==null?void 0:r.hostname),device:n?"tablet":t.any()?"mobile":"desktop"}},p=e=>e!=null;function le(e){const t=e||(c()?window.location.search:void 0);return t?U(t).indexOf("builder.preview=")!==-1:!1}const fe=e=>({type:"builder.registerComponent",data:k(e)}),ge=e=>{const t=e.toString().trim();return`return (${!t.startsWith("function")&&!t.startsWith("(")?"function ":""}${t}).apply(this, arguments)`};function k(e){return JSON.parse(JSON.stringify(e,(t,n)=>typeof n=="function"?ge(n):n))}const x={};function D(e,t){e==="plugin"&&(t=k(t));let n=x[e];if(n||(n=x[e]=[]),n.push(t),c()){const r={type:"builder.register",data:{type:e,info:t}};try{parent.postMessage(r,"*"),parent!==window&&window.postMessage(r,"*")}catch(o){console.debug("Could not postmessage",o)}}}const R={};function he(e){if(c()){Object.assign(R,e);const t={type:"builder.settingsChange",data:R};parent.postMessage(t,"*")}}const B="builder.",pe="options.",P=e=>{if(!e)return{};const t=M(e),n={};return Object.keys(t).forEach(r=>{if(r.startsWith(B)){const o=r.replace(B,"").replace(pe,"");n[o]=t[r]}}),n},me=()=>{if(!c())return{};const e=new URLSearchParams(window.location.search);return P(e)},ye=e=>{if(e==="localhost"||e==="127.0.0.1")return e;const t=e.split(".");return t.length>2?t.slice(1).join("."):e},j=({name:e,canTrack:t})=>{var n;try{return t?(n=document.cookie.split("; ").find(r=>r.startsWith(`${e}=`)))==null?void 0:n.split("=")[1]:void 0}catch(r){d.warn("[COOKIE] GET error: ",(r==null?void 0:r.message)||r);return}},K=async e=>j(e),Se=e=>e.map(([t,n])=>n?`${t}=${n}`:t).filter(p).join("; "),we=[["secure",""],["SameSite","None"]],be=({name:e,value:t,expires:n})=>{const o=(c()?location.protocol==="https:":!0)?we:[[]],s=n?[["expires",n.toUTCString()]]:[[]],a=[[e,t],...s,["path","/"],["domain",ye(window.location.hostname)],...o];return Se(a)},_=async({name:e,value:t,expires:n,canTrack:r})=>{try{if(!r)return;const o=be({name:e,value:t,expires:n});document.cookie=o}catch(o){d.warn("[COOKIE] SET error: ",(o==null?void 0:o.message)||o)}};function Ie(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)})}function W(){return Ie().replace(/-/g,"")}const $="builderSessionId",ve=async({canTrack:e})=>{if(!e)return;const t=await K({name:$,canTrack:e});if(p(t))return t;{const n=Ee();return ke({id:n,canTrack:e}),n}},Ee=()=>W(),ke=({id:e,canTrack:t})=>_({name:$,value:e,canTrack:t}),G=()=>c()&&typeof localStorage!="undefined"?localStorage:void 0,Pe=({key:e,canTrack:t})=>{var n;try{return t?(n=G())==null?void 0:n.getItem(e):void 0}catch(r){console.debug("[LocalStorage] GET error: ",r);return}},Ce=({key:e,canTrack:t,value:n})=>{var r;try{t&&((r=G())==null||r.setItem(e,n))}catch(o){console.debug("[LocalStorage] SET error: ",o)}},z="builderVisitorId",Oe=({canTrack:e})=>{if(!e)return;const t=Pe({key:z,canTrack:e});if(p(t))return t;{const n=Ae();return Te({id:n,canTrack:e}),n}},Ae=()=>W(),Te=({id:e,canTrack:t})=>Ce({key:z,value:e,canTrack:t}),xe=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await ve({canTrack:e}),n=Oe({canTrack:e});return{sessionId:t,visitorId:n}},Re=async({type:e,canTrack:t,apiKey:n,metadata:r,...o})=>({type:e,data:{...o,metadata:{url:location.href,...r},...await xe({canTrack:t}),userAttributes:N(),ownerId:n}});async function J(e){if(!e.apiKey){d.error("Missing API key for track call. Please provide your API key.");return}if(e.canTrack&&!F()&&(c()||I==="reactNative"))return fetch("https://cdn.builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await Re(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(t=>{console.error("Failed to track: ",t)})}const Be=e=>J({...e,canTrack:!0}),Le=["*.beta.builder.io","beta.builder.io","builder.io","localhost","qa.builder.io"];function H(e,t){if(!t.origin.startsWith("http")&&!t.origin.startsWith("https"))return!1;const n=new URL(t.origin),r=n.hostname;return(e||Le).findIndex(o=>o.startsWith("*.")?r.endsWith(o.slice(1)):o===r)>-1}const Ve="2.0.24",Me=()=>{D("insertMenu",{name:"_default",default:!0,items:[{name:"Box"},{name:"Text"},{name:"Image"},{name:"Columns"},{name:"Core:Section"},{name:"Core:Button"},{name:"Embed"},{name:"Custom Code"}]})};let L=!1;const X=(e={})=>{var t,n;L||(L=!0,c()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:I,version:Ve,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",r=>{var s,a;if(!H(e.trustedHosts,r))return;const{data:o}=r;if(o!=null&&o.type)switch(o.type){case"builder.evaluate":{const l=o.data.text,y=o.data.arguments||[],m=o.data.id,v=new Function(l);let u,g=null;try{u=v.apply(null,y)}catch(h){g=h}g?(s=window.parent)==null||s.postMessage({type:"builder.evaluateError",data:{id:m,error:g.message}},"*"):u&&typeof u.then=="function"?u.then(h=>{var S;(S=window.parent)==null||S.postMessage({type:"builder.evaluateResult",data:{id:m,result:h}},"*")}).catch(console.error):(a=window.parent)==null||a.postMessage({type:"builder.evaluateResult",data:{result:u,id:m}},"*");break}}})))},q=({model:e,trustedHosts:t,callbacks:n})=>r=>{if(!H(t,r))return;const{data:o}=r;if(o)switch(o.type){case"builder.configureSdk":{n.configureSdk(o.data);break}case"builder.triggerAnimation":{n.animation(o.data);break}case"builder.contentUpdate":{const s=o.data,a=s.key||s.alias||s.entry||s.modelName,l=s.data;a===e&&n.contentUpdate(l);break}}},Ue=(e,t,n)=>{if(!c)return d.warn("`subscribeToEditor` only works in the browser. It currently seems to be running on the server."),()=>{};X();const r=q({callbacks:{contentUpdate:t,animation:()=>{},configureSdk:()=>{}},model:e,trustedHosts:n==null?void 0:n.trustedHosts});return window.addEventListener("message",r),()=>{window.removeEventListener("message",r)}},Fe="builder.tests",C=e=>`${Fe}.${e}`,Ne=({contentId:e})=>K({name:C(e),canTrack:!0}),De=({contentId:e})=>j({name:C(e),canTrack:!0}),je=({contentId:e,value:t})=>_({name:C(e),value:t,canTrack:!0}),Q=e=>p(e.id)&&p(e.variations)&&Object.keys(e.variations).length>0,Ke=({id:e,variations:t})=>{var o;let n=0;const r=Math.random();for(const s in t){const a=(o=t[s])==null?void 0:o.testRatio;if(n+=a,r<n)return s}return e},Y=e=>{const t=Ke(e);return je({contentId:e.id,value:t}).catch(n=>{d.error("could not store A/B test variation: ",n)}),t},Z=({item:e,testGroupId:t})=>{const n=e.variations[t];return t===e.id||!n?{testVariationId:e.id,testVariationName:"Default"}:{data:n.data,testVariationId:n.id,testVariationName:n.name||(n.id===e.id?"Default":"")}},_e=({item:e,canTrack:t})=>{if(!t)return e;if(!e)return;if(!Q(e))return e;const n=De({contentId:e.id})||Y({variations:e.variations,id:e.id}),r=Z({item:e,testGroupId:n});return{...e,...r}},We=async({item:e,canTrack:t})=>{if(!t||!Q(e))return e;const r=await Ne({contentId:e.id})||Y({variations:e.variations,id:e.id}),o=Z({item:e,testGroupId:r});return{...e,...o}},ee=e=>p(e)?e:!0;function $e(){return typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:globalThis}function Ge(){const e=$e().fetch;if(typeof e=="undefined")throw console.warn(`Builder SDK could not find a global fetch function. Make sure you have a polyfill for fetch in your project.
|
|
2
|
-
For more information, read https://github.com/BuilderIO/this-package-uses-fetch`),new Error("Builder SDK could not find a global `fetch` function");return e}const ze=Ge();function E(e,t=null,n="."){return Object.keys(e).reduce((r,o)=>{const s=e[o],a=[t,o].filter(Boolean).join(n);return[typeof s=="object",s!==null,!(Array.isArray(s)&&s.length===0)].every(Boolean)?{...r,...E(s,a,n)}:{...r,[a]:s}},{})}function te(e,t,n={}){for(const r in e){const o=e[r],s=t?t+"."+r:r;o&&typeof o=="object"&&!Array.isArray(o)&&!Object.keys(o).find(a=>a.startsWith("$"))?te(o,s,n):n[s]=o}return n}const Je="v3",V=e=>typeof e=="number"&&!isNaN(e)&&e>=0,O=e=>{const{limit:t=30,userAttributes:n,query:r,model:o,apiKey:s,enrich:a,locale:l,apiVersion:y=Je,fields:m,omit:v,offset:u,cacheSeconds:g,staleCacheSeconds:h,sort:S,includeUnpublished:A}=e;if(!s)throw new Error("Missing API key");if(!["v3"].includes(y))throw new Error(`Invalid apiVersion: expected 'v3', received '${y}'`);const se=t!==1,i=new URL(`https://cdn.builder.io/api/${y}/content/${o}`);if(i.searchParams.set("apiKey",s),i.searchParams.set("limit",String(t)),i.searchParams.set("noTraverse",String(se)),i.searchParams.set("includeRefs",String(!0)),l&&i.searchParams.set("locale",l),a&&i.searchParams.set("enrich",String(a)),i.searchParams.set("omit",v||"meta.componentsUsed"),m&&i.searchParams.set("fields",m),Number.isFinite(u)&&u>-1&&i.searchParams.set("offset",String(Math.floor(u))),typeof A=="boolean"&&i.searchParams.set("includeUnpublished",String(A)),g&&V(g)&&i.searchParams.set("cacheSeconds",String(g)),h&&V(h)&&i.searchParams.set("staleCacheSeconds",String(h)),S){const f=E({sort:S});for(const w in f)i.searchParams.set(w,JSON.stringify(f[w]))}const ie={...me(),...M(e.options||{})},T=E(ie);for(const f in T)i.searchParams.set(f,String(T[f]));if(n&&i.searchParams.set("userAttributes",JSON.stringify(n)),r){const f=te({query:r});for(const w in f)i.searchParams.set(w,JSON.stringify(f[w]))}return i},He=e=>"results"in e;async function ne(e){const t=await oe({...e,limit:1});return t&&t[0]||null}const Xe=async e=>{var s;const t=O(e);return await(await((s=e.fetch)!=null?s:ze)(t.href,e.fetchOptions)).json()},re=async(e,t,n=O(e))=>{const r=ee(e.canTrack);if(n.search.includes("preview="),!r||!(c()||I==="reactNative"))return t.results;try{const o=[];for(const s of t.results)o.push(await We({item:s,canTrack:r}));t.results=o}catch(o){d.error("Could not process A/B tests. ",o)}return t.results};async function oe(e){try{const t=O(e),n=await Xe(e);return He(n)?re(e,n):(d.error("Error fetching data. ",{url:t,content:n,options:e}),null)}catch(t){return d.error("Error fetching data. ",t),null}}const qe=async e=>{var r,o,s;const t=e.path||((r=e.url)==null?void 0:r.pathname)||((o=e.userAttributes)==null?void 0:o.urlPath),n={...e,apiKey:e.apiKey,model:e.model||"page",userAttributes:{...e.userAttributes,...t?{urlPath:t}:{}},options:P(e.searchParams||((s=e.url)==null?void 0:s.searchParams)||e.options)};return{apiKey:n.apiKey,model:n.model,content:await ne(n)}};exports.MSG_PREFIX=b;exports.TARGET=I;exports._processContentResult=re;exports._track=J;exports.checkIsDefined=p;exports.createEditorListener=q;exports.createRegisterComponentMessage=fe;exports.fetchBuilderProps=qe;exports.fetchEntries=oe;exports.fetchOneEntry=ne;exports.getBuilderSearchParams=P;exports.getDefaultCanTrack=ee;exports.getUserAttributes=N;exports.handleABTestingSync=_e;exports.isBrowser=c;exports.isEditing=F;exports.isPreviewing=le;exports.logger=d;exports.register=D;exports.registerInsertMenu=Me;exports.serializeIncludingFunctions=k;exports.setEditorSettings=he;exports.setupBrowserForEditing=X;exports.subscribeToEditor=Ue;exports.track=Be;
|