@datawheel/bespoke 0.8.0-rc.17 → 0.8.0-rc.18
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/cms.js +1 -1
- package/dist/redux-store.js +3 -3
- package/dist/report.js +1 -1
- package/dist/server.js +1 -1
- package/package.json +1 -1
package/dist/server.js
CHANGED
|
@@ -64,6 +64,6 @@ Error initializing sequelize connection:
|
|
|
64
64
|
`,`Error message: ${d.message}`),"N/A"}})}var ro=(e,t,r)=>{let{variables:o}=r,n=s=>s.allowed==="never"?!1:!s.allowed||s.allowed==="always"||o[s.allowed],a={...e};return Object.keys(a).forEach(s=>{typeof a[s]=="string"?a[s]=Rt(a[s],t,r):Array.isArray(a[s])?a[s]=a[s].filter(n).map(i=>typeof i=="object"?ro(i,t,r):typeof i=="string"?Rt(i,t,r):i):typeof a[s]=="object"&&a[s]!==null&&!(a[s]instanceof Date)&&(a[s]=ro(a[s],t,r));}),a},hr=ro;var va=e=>Array.isArray(e)?e.map(t=>typeof t=="string"?{allowed:"always",label:t,id:t}:{allowed:"always",label:t.id,...t}):[];var oo=(e,t,r)=>{if(!r)return !1;if(e===Ne.SINGLE)return r.find(n=>n.id===t);let o=Array.isArray(t)?t:t.split(",");return Array.isArray(o)&&o.every(n=>r.map(a=>a.id).includes(n))};function no(e,t,r,o,n=!1){let{variables:a}=le(o),s=hr({logic:t},r,o).logic,i=He("variables",a,s,r,void 0,o),{vars:c,log:l,error:p}=i,u=c.type||Ne.SINGLE,d=c.component||"Selector",m=c.hideLabel||"false",y=c.resetSectionVars||"false",h=c.name||"Unlabeled Selector",R=va(c.options||[]),T=b=>u===Ne.MULTI&&!Array.isArray(b)?[b]:b,k=c.defaultValue,B;if(k&&(k=T(k),oo(u,k,R)&&(B=k)),!B){let b=R&&R[0]&&R[0].id||R[0]||"";B=T(b);}if(n&&typeof window<"u"){let b=`selector${e}id`,N=new URLSearchParams(window.location.search),j=Object.fromEntries(N)[b];j&&!oo(u,j,R)&&j!==void 0&&(N.delete(b),window.history.replaceState(null,null,`?${N.toString()}`));}return {config:{name:h,type:u,options:R,defaultValue:B,component:d,hideLabel:m,resetSectionVars:y},log:l,error:p}}function ao(e,t,r){if(!e)return !1;let o=Array.isArray(r)?r:r.split(",");return Array.isArray(o)&&o.every(n=>e.map(a=>`${a[`${t} ID`]}`).includes(n))}function so(e,t,r,o,n=!1){let{variables:a}=le(o),s=hr({logic:t},r,o).logic,i=He("variables",a,s,r,void 0,o),{vars:c,log:l,error:p}=i;if(n&&typeof window<"u"){let d=`multihierarchySelector${e}-value`,m=`multihierarchySelector${e}-type`,y=new URLSearchParams(window.location.search),h=Object.fromEntries(y),R=h[d],T=h[m];R&&R!==void 0&&T&&T!==void 0&&!ao(c.data,T,R)&&(y.delete(d),y.delete(m),window.history.replaceState(null,null,`?${y.toString()}`));}return {config:c,log:l,error:p}}var fl=(e,t,r)=>{let o=`selector${e}id`,n=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(o),a=new URLSearchParams(t).get(o),s=n||a;if(r.type===Ne.MULTI){let l=s?s.split(","):r.defaultValue,p=r.options.filter(u=>l.includes(u.id));return {[`selector${e}id`]:l,[`selector${e}label`]:(p||[]).map(u=>u.label)}}let i=s&&r.options.find(l=>l.id===s)?s:r.defaultValue,c=r.options.find(l=>l.id===i);return {[`selector${e}id`]:i,[`selector${e}label`]:c&&c.label||void 0}},_a=fl;var gl=(e,t,r)=>{let o=`multihierarchySelector${e}-value`,n=`multihierarchySelector${e}-type`,a=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(o),s=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(n),i=new URLSearchParams(t).get(o),c=new URLSearchParams(t).get(n),l=a||i,p=s||c,u=l?l.split(","):r.defaultValue||[],d=p||r.defaultValueType||"",m=r.data?.filter(y=>u.includes(`${y[`${d} ID`]}`))||[];return {[`multihierarchySelector${e}id`]:u,[`multihierarchySelector${e}label`]:[...new Set((m||[]).map(y=>y[d]))],[`multihierarchySelector${e}type`]:d}},ka=gl;var{localeDefault:Pa,locales:yl}=q(),hl=Object.values($r),Rl=(e,t=Pa)=>e&&hl.includes(e.type)?{locale:qr,locales:[qr]}:{locale:t,locales:yl},wa=(e,t=Pa)=>{if(!e)return {};let{locale:r}=Rl(e,t);return e.contentByLocale?.[r]?.content};function bl(e,t){let r=Object.values(t),o=r.filter(n=>n.shared&&n.section_id!==e).map(n=>n.id);return Object.fromEntries(r.filter(n=>n.section_id===e&&(n.inputs.length===0||n.inputs.some(a=>o.includes(a)))).map(n=>[n.id,n]))}var xa=bl;function io(e){return e.type===M.SECTION_FLAG&&e.inputs.length===0&&e.consumers.length===0}var We=fr(process.env.NEXT_PUBLIC_REPORTS_DEBUG),Tl=process.env.REPORTS_ORIGIN||"";Ia(br,{retries:3,retryDelay:Ia.exponentialDelay,onRetry:(e,t,r)=>{console.log("Generator request failed. Retrying... Count: ",e),console.log("URL: ",r.url),console.log(t.message);}});br.interceptors.request.use(e=>({...e,requestStart:Date.now()}));br.interceptors.response.use(e=>({...e,requestDuration:new Date().getTime()-e.config.requestStart}),e=>Promise.reject(e));var vl=(e,t,r)=>{let o=Rt(e,t,r);return o.startsWith("http")||(o=`${Tl}${o.startsWith("/")?"":"/"}${o}`),o},{urlProxy:_l}=Ht("/api/cms");function Rr(e){return e.ok!==void 0}function co(e){this.message=e,this.name="ApiFetchException";}var Ca=process.env.NEXT_PUBLIC_REPORTS_API_FETCH_TIMEOUT||0;async function kl(e,t,r="en",o){let n=Date.now(),a=e,s,c=new URL(e).searchParams;if(c.has("bespoke_slugs")){let u=new RegExp(`[?&]bespoke_slugs=${c.get("bespoke_slugs")}`,"g");a=a.replace(u,"");}let l=o?o.settings:{},p=!!(l&&l.useProxy&&l.useProxy==="true");if(typeof window=="object"&&p){let u=await _l({url:a,timeout:Ca});if(u.ok===!0)s=u.data;else throw new co(u?.error)}else try{let u=await br({url:a,timeout:Ca});if(u.status===200)u.headers["content-type"]==="text/csv"?s=csvParse(u.data):s=u.data;else throw new co("No response")}catch(u){throw new co(u.message)}if(c.has("bespoke_slugs")){let u=c.get("bespoke_slugs");if(u){let d=u.split(",");if(d.length===3){let[m,y,h]=d,R=xt(s,h);if(R&&Array.isArray(R)){let T=Array.from(new Set(R.map(k=>`${k[y]}`).filter(k=>!["","undefined"].includes(k))));if(T.length>0){let k=T.join("").length>2e3,B=await t({mode:k?"whole":"ids",ids:k?void 0:T,all:!1,locale:r,variant:[parseInt(m,10)],output:"lite",limit:T.length+1}).then(A=>{let b=[];return Rr(A)?A.ok&&(b=A.data.results):b=A.results,b&&Array.isArray(b)?b:[]}).catch(A=>(console.error(`Error hydrating slugs for Variant: ${m}, Key: ${y}, Accessor: ${h}`),console.error(` Url ${e}`),o&&console.error(` From Section ${o.section_id} and Block ${o.id}`),console.error(A),[]));if(B){let A=Object.fromEntries(B.map(b=>[b.id,`/${b.variant_slug}/${b.slug}`]));R.map(b=>(b.bespoke_slug=A[b[y]]?A[b[y]]:null,b));}}}}}}return {data:s,requestDuration:Date.now()-n}}function Pl(e){this.name="BlockException",this.message=e;}async function Ba(e,t,r,o){let{locale:n,variables:a,query:s}=le(r),i=xl(e,r,a,t),c=null,l=e.contentByLocale?.logic?.content?.api,p=null,u=null,d=null;if(!i)return {outputVariables:{},renderVariables:{},status:{allowed:!1,hiddenByCascade:e.id}};if(e.type===M.FALLBACK)return {outputVariables:{},renderVariables:{},status:{allowed:i,hiddenByCascade:e.id}};if(l){d=vl(l,t,r);let A=d.split(On).filter(D=>D!==""),b=[];for(let D=0;D<A.length;D++){let j=A[D];new RegExp("^(?:[a-z+]+:)?//","i").test(d)||(j=`${process.env.NEXT_PUBLIC_REPORTS_BASE_URL}/${j}`.replace(/([^:]\/)\/+/g,"$1")),b.push(kl(j,o,n,e).catch(H=>{throw new Pl(` Excecution of ${e.type}-${e.id} in section ${e.section_id} in report ${a.report_name} (${a.report_id}) failed.
|
|
65
65
|
Error fetching ${j}.
|
|
66
66
|
Message: ${H.message}.
|
|
67
|
-
`)}));}let N=await Promise.all(b).catch(D=>D.message);if(typeof N=="string"&&N)return {outputVariables:{},renderVariables:{},status:{error:N}};c=N.length===1?N[0].data:N.map(D=>D.data),u=N.reduce((D,j)=>D+JSON.stringify(j.data).length/1024,0),p=Math.max(...N.map(D=>D.requestDuration));}if(e.type===M.SELECTOR){let{config:A,log:b,error:N}=no(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:_a(e.id,s,A),renderVariables:A,status:{log:b,error:N,allowed:i}}}if(e.type===M.MULTIHIERARCHY_SELECTOR){let{config:A,log:b,error:N}=so(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:ka(e.id,s,A),renderVariables:A,status:{log:b,error:N,allowed:i}}}if(e.type===M.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:i}};if(e.type===M.RELATED){let A=e.contentByLocale?.logic?.content?.simple?.compare||"variant",b=e.contentByLocale?.logic?.content?.simple?.limit||4,N=Object.keys(a).filter(_=>_.startsWith("report_id")).map(_=>a[_]),D=Object.keys(a).filter(_=>_.startsWith("dimension_id")).map(_=>a[_]),j=Object.keys(a).filter(_=>_.startsWith("variant_id")).map(_=>a[_]),Y=Object.keys(a).filter(_=>_.startsWith("id")).map(_=>a[_]);if(!Y.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:!1}};let H=await Promise.all(Y.map((_,L)=>o({mode:"ids",locale:n,ids:[_],output:"lite",variant:[j[L]]}))).then(_=>_.flatMap(L=>{let E=[];return Rr(L)?L.ok&&(E=L.data.results):E=L.results,E&&Array.isArray(E)?E:[]})).catch(_=>(console.log("Error getting related members",_),[]));if(D.length>1){let _=Object.keys(a).filter(K=>K.startsWith("variant_slug")).map(K=>a[K]),L=H.map((K,C)=>{let I={mode:"related",locale:n,related:b??4,current_ids:[K.content_id],output:"full",variant_ids:[K.variant_id]};return C===0&&(I.include_ids=[K.content_id]),I}),E=await Promise.all(L.map(K=>o(K))).then(K=>K.flatMap(C=>{let I=[];return Rr(C)?C.ok&&(I=C.data.results):I=C.results,I&&Array.isArray(I)?I:[]})).catch(K=>(console.log("Error getting related members",K),[])),x=E.reduce((K,C)=>{let I=C.variant_slug;return K[I]||(K[I]=[]),K[I].push(C),K},{}),F=[],Q=Object.keys(x),J=[{combination:[],index:0}];for(;J.length>0;){let K=J.pop();if(!K)continue;let{combination:C,index:I}=K;if(I===Q.length){F.push(C);continue}let ae=Q[I],ue=x[ae];for(let ce of ue)J.push({combination:[...C,ce],index:I+1});}return {outputVariables:{related_reports:F.map(K=>{let C=K.sort((I,ae)=>_.indexOf(I.variant_slug)-_.indexOf(ae.variant_slug));return {entities:C,link:"/"+C.map(I=>`${I.variant_slug}/${I.slug}`).join("/")}})},renderVariables:{},status:{log:[],allowed:E.length>0}}}let U=H.map(_=>_.content_id),w={mode:"related",locale:n,related:b??4,current_ids:U,output:"full"};A&&(A==="report"?w.report_ids=N:A==="dimension"?w.dimension_ids=D:w.variant_ids=j);let V=await o(w).then(_=>{let L=[];return Rr(_)?_.ok&&(L=_.data.results):L=_.results,L&&Array.isArray(L)?L:[]}).catch(_=>(console.log("Error getting related members",_),[]));return {outputVariables:{related_reports:V.map(_=>({entities:[_],link:`/${_.variant_slug}/${_.slug}`}))},renderVariables:{},status:{log:[],allowed:V.length>0}}}let{logic:m}=wa(e,n),y=Rt(m,t,r),h=He("resp",c||{},y,t,a,r),{vars:R,error:T,log:k}=h;if(typeof R!="object")return {outputVariables:{},renderVariables:{},status:{error:"Configuration did not return an object",log:k,duration:p,responseSize:u,resp:c,api:d,allowed:i}};let B=Object.keys(R).reduce((A,b)=>({...A,[`${e.type}${e.id}${b}`]:R[b]}),{});return {renderVariables:R,outputVariables:[M.GENERATOR,M.SECTION_FLAG].includes(e.type)?R:B,status:{log:k,error:T,duration:p,responseSize:u,resp:c,api:d,allowed:i}}}function wl(e,t,r,o,n,a,s){return e.consumers.forEach(i=>{if(t[i]){let c=`${r}-${i}`;!o.includes(c)&&(t[i].section_id===t[r].section_id||!n)&&o.push(c),e.consumers.filter(l=>t[l].section_id===t[r].section_id||!n).forEach(l=>lo(l,t,o,!1,a,n,s));}})}var lo=(e,t,r=[],o=!0,n=!0,a=!0,s=[])=>{if(s.includes(e))return [];s.push(e);let i=t[e];return i&&i.inputs.length&&o&&i.inputs.forEach(c=>{let l=`${c}-${e}`;r.includes(l)||r.push(l),i.inputs.forEach(p=>lo(p,t,r,o,!1,a,s));}),i&&i.consumers.length&&n&&wl(i,t,e,r,a,n,s),r},xl=(e,t,r,o)=>{let n=!0;if(e&&"allowed"in e.settings&&e.settings.allowed!=="always")if(e.settings.allowed==="never")n=!1;else {let a=le(t),{error:s,output:i}=He("variables",r,e.settings.allowedLogic||"return false;",o,void 0,a);s||(n=!!i);}return n},Sr=async(e,t,r,o,n,a={},s,i="section")=>{let c=i==="section",l=le(n),p=l.variables,u={...a.variables??{}},d={...a.status??{}},m=new Set,y=[],h={};r?h={...h,[r]:e[r]}:t?h=(t??[]).reduce((U,{id:w})=>({...U,...xa(w,e)}),{}):h=Object.values(e).filter(U=>io(U)).reduce((U,w)=>({...U,[w.id]:w}),{});let R=Object.values(h).filter(U=>io(U));if(R.length>0){We&&console.log("%crunConsumers: calculating section flags","color:purple",R.map(v=>v.id).join(", "));let U=Object.fromEntries(await Promise.all(R.map(async v=>[v.id,await Ba(v,o,{...l,variables:p,locale:p.locale},s).then(_=>{let{outputVariables:L,status:E}=_;if(E.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${v.id}, Section ${v.section_id}) failed with message: ${E.error}. `);d[v.id]={allowed:!1,error:E.error},u[v.id]={};}return (v.consumers.length>0||[M.GENERATOR,M.SECTION_FLAG,M.RELATED].includes(v.type))&&E.allowed&&Object.keys(L).length>0?u[v.id]=L:u[v.id]={},i==="report"?(d[v.id]={allowed:E.allowed},[M.GENERATOR,M.SECTION_FLAG].includes(v.type)&&E.api&&(d[v.id].api=E.api)):d[v.id]=E,_})]))),V=Object.entries(U).filter(([v,_])=>!_.outputVariables[Nn]).map(([v])=>Number(v));m=new Set(V.map(v=>e[v].section_id)),Object.values(h).filter(v=>m.has(v.section_id)).forEach(v=>{y.push(v.id),delete h[v.id];}),We&&console.log("%crunConsumers: removing sections","color:purple",m.keys());}let T=m.size>0?Object.fromEntries(Object.entries(e).filter(([U,w])=>m?.has(w.section_id)?(y.includes(w.id)||y.push(w.id),!1):!0)):e;if(y.length>0&&(T=Object.fromEntries(Object.entries(T).map(([U,w])=>{let V={...w,inputs:w.inputs.filter(v=>!y.includes(v)),consumers:w.consumers.filter(v=>!y.includes(v))};return [U,V]}))),!r&&!t)return {variables:{...a.variables??{},...u},status:{...a.status??{},...d}};i==="report"&&y.length>0&&y.forEach(U=>{delete u[U],delete d[U],delete e[U];}),We&&console.log("%crunConsumers: running root blocks","color:purple",Object.keys(h));let k=Object.keys(h).reduce((U,w)=>{let V=new Date,v=lo(Number(w),T,[],!r,!0,c).map(E=>E.split("-")),L=(new Date().getTime()-V.getTime())/1e3;return We&&console.log(`%cResolved dependencies for ${w} (${L.toFixed(2)}s)`,"color:blue"),[...U,...v]},[]),B=new Date,A=Object.keys(h).reduce((U,w)=>U.includes(w)?[...U]:[w,...U],Sl(k)),N=(new Date().getTime()-B.getTime())/1e3;We&&console.log(`%cResolved DAG (${N.toFixed(2)}s): `,"color:green",A);async function D(U,w){let V=new Map;for(let v of U){let _=w[v],E=Promise.all(_.inputs.filter(x=>U.includes(String(x))).map(x=>V.get(Number(x)))).then(async()=>{let x=_.inputs.reduce((C,I)=>({...C,...u[I]}),p),F=_.inputs.find(C=>(_.settings?.ignoreCascade?_.settings?.ignoreCascade:[]).includes(C)||!d[C]?!1:!d[C].allowed||d[C].hiddenByCascade);if(F){d[v]={allowed:!1,hiddenByCascade:d[F].hiddenByCascade||F},u[v]={};return}let Q=new Date,J=await Ba(_,o,{...l,variables:x,locale:x.locale},s).then(({outputVariables:C,status:I})=>{if(I.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${v}, Section ${_.section_id}) failed with message: ${I.error}. `);d[v]={allowed:!1,error:I.error},u[v]={};}(_.consumers.length>0||[M.GENERATOR,M.SECTION_FLAG,M.RELATED].includes(_.type))&&I.allowed&&Object.keys(C).length>0?u[v]=C:u[v]={},i==="report"?(d[v]={allowed:I.allowed},[M.GENERATOR,M.SECTION_FLAG].includes(_.type)&&I.api&&(d[v].api=I.api)):d[v]=I;}),K=(new Date().getTime()-Q.getTime())/1e3;return We&&console.log(`%cBlock ${_.id} resolved in ${K.toFixed(3)}s`,K>500?"color:red":"color:green"),J});V.set(Number(v),E);}await Promise.all(Array.from(V.values()));}let j=new Date;await D(A,T);let H=(new Date().getTime()-j.getTime())/1e3;return We&&console.log(`%cResolved Variables (${H.toFixed(2)}s): `,"color:green"),{variables:{...a.variables??{},...u},status:{...a.status??{},...d}}};function Il(e=[]){return e.reduce((t,r,o)=>{if(r){let n=o+1;t[`id${n}`]=r.id,t[`name${n}`]=r.name,t[`slug${n}`]=r.slug,"attributes"in r&&Object.keys(r.attributes).forEach(a=>{t[`attr_${a}${n}`]=r.attributes[a];}),t[`variant_id${n}`]=r.variant_id,t[`variant_name${n}`]=r.variant_name,t[`variant_slug${n}`]=r.variant_slug,t[`dimension_id${n}`]=r.dimension_id,t[`dimension_name${n}`]=r.dimension_name,t.report_id=r.report_id,t.report_name=r.report_name;}return t},{})}var Er=Il;function Bl(){let{publicRuntimeConfig:e}=Cl(),t=e.bespoke_report_env_vars||{};return {...Object.keys(t).reduce((r,o)=>(r[`ENV_${o}`]=t[o]||"N/A",r),{})}}var Ar=Bl;function Ll(e,t){return +(e<t)-+(e>t)}function Tr(e,t,r="ordering"){return Ll(t[r],e[r])}var Ma=(e,t={},r="en",o={},n={})=>{let a={setVariables:o.onSetVariables?o.onSetVariables:c=>c,openModal:o.onOpenModal?o.onOpenModal:c=>c,formatters:t,libs:Me,locale:r,...n};function s(c){return Function("globals",...c.vars,`with (globals) { ${c.logic} }`).bind(a,a)}function i(c){if(c.vars&&c.logic)return s(c);for(let l in c)Array.isArray(c[l])?c[l]=c[l].map(p=>isObject(p)?i(p):p):isObject(c[l])&&(c[l]=i(c[l]));return c}return i(e)};var{localeDefault:Ol}=q();var Wt=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});Wt.define({consumers:[Wt],inputs:[Wt]});var Oa=new schema.Entity("variant"),Na=new schema.Entity("dimension",{variants:[Oa]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),Da=new schema.Entity("section",{blocks:[Wt]}),Nl=new schema.Entity("report",{dimensions:[Na],sections:[Da]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(Tr):[]}}}),Dl=new schema.Entity("formatter"),Ul={report:Nl,section:Da,block:Wt,dimension:Na,variant:Oa,formatter:Dl};function vr(e,t){let r=Ul[e];if(!r)throw new Error(`Invalid entity type: ${e}`);let{entities:o}=normalize(t,[r]);return {report:bt(o,"report"),dimension:bt(o,"dimension"),section:bt(o,"section"),block:bt(o,"block"),variant:bt(o,"variant"),formatter:bt(o,"formatter")}}function bt(e,t){return e.hasOwnProperty(t)?e[t]:{}}var Ua=(e,t=void 0)=>{let{sid:r,bid:o,previews:n=[],query:a={}}=t||{},s,i,c={};return r?(s=r,c.activeSection=s):s=e.activeSection,n.length>0?(i=n,c.previews=i.filter(Boolean)):i=e.previews,{parsedParams:{sid:s,bid:o,previews:i,query:a},statusPayload:c}},uo=(e=[],t=Ol)=>e.reduce((r,o)=>{let n=Ma({vars:["n"],logic:o.content.logic},{},t,{});return r[o.name]=n,r},{});var de=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",_r=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[de];_r.includes(de)||_r.push(de);var zl={localeDefault:de,locales:_r,currentLocale:de,preferredLocale:de,showToolbar:!1,activeSection:null,previews:[],query:{},sectionState:{},activeEntity:{type:null,id:null},sidebarStatus:{tools:!0,settings:!1,reportEditor:!1},isCMS:!1,isRunConsumersRunning:[]},kr=createSlice({name:"status",initialState:zl,reducers:{setStatus:(e,t)=>{Object.assign(e,t.payload);},setPreviews(e,t){e.previews=t.payload;},setCurrentLocale(e,t){e.currentLocale=t.payload;},setPreferredLocale(e,t){e.preferredLocale=t.payload;},setSectionState(e,t){e.sectionState={...e.sectionState,...t.payload};},resetSectionState(e,t){e.sectionState={...e.sectionState,[t.payload]:{}};},setActiveEntity(e,t){e.activeEntity=t.payload;},openSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!0};},closeSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!1};},toggleSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!e.sidebarStatus[t.payload]};},addRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.concat(t.payload);},removeRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.filter(r=>!t.payload.includes(r));}},extraReducers:{[HYDRATE]:(e,t)=>({...e,previews:t.payload.status.previews})}}),Ee=kr.actions;var Gl={attributes:{},variables:{},status:{}},Pr=createSlice({name:"variables",initialState:Gl,reducers:{setVariableChange:(e,t)=>{e.attributes={...e.attributes,...t.payload.attributes},e.variables={...e.variables,...t.payload.variables},e.status={...e.status,...t.payload.status};}},extraReducers:{[HYDRATE]:(e,t)=>({attributes:{...e.attributes,...t.payload.variables.attributes},status:{...e.status,...t.payload.variables.status},variables:{...e.variables,...t.payload.variables.variables}})}}),wr=Pr.actions;var Hl={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}}},we=createSlice({name:"records",initialState:Hl,reducers:{set:(e,t)=>{let r=t.payload;return {entities:Jt(e.entities,r.entities||{}),requests:Jt(e.requests,r.requests||{}),reports:r.reports||e.reports,tree:r.tree||e.tree}},setRequest:(e,t)=>{let r=t.payload;e.requests[r.type][r.key]=r;},setCreateRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let o=Array.isArray(r.data)?r.data:[r.data],n=vr(r.type,o),a=Jt(e.entities,n);if(e.entities=a,r.type==="report"){let s=r.data;e.reports?e.reports.indexOf(s.id)===-1&&(e.reports=[...e.reports,s.id]):e.reports=[s.id];}else if(r.type==="dimension"){let s=r.data;e.entities.report[s.report_id].dimensions.push(s.id),e.entities.report[s.report_id].dimensions=xr(a.report[s.report_id].dimensions,a.dimension);}else if(r.type==="variant"){let s=r.data;e.entities.dimension[s.dimension_id].variants.push(s.id);}else if(r.type==="section"&&!Array.isArray(r.data)){let s=r.data;e.entities.report[s.report_id].sections.push(s.id),e.entities.report[s.report_id].sections=xr(a.report[s.report_id].sections,a.section);}else if(r.type==="block")if(Array.isArray(r.data)){let s=r.data,i=s[0],c=s.map(l=>l.id);e.entities.section[i.section_id].blocks.concat(c);}else {let s=r.data;e.entities.section[s.section_id].blocks.push(s.id);}}},setReadRequest(e,t){let r=t.payload;if(r.type!=="report"&&(e.requests[r.type][r.key]=r),r.status==="SUCCESS"){let o=vr(r.type,r.data),n=Jt(e.entities,o);e.entities=n;}},setUpdateRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let o=Array.isArray(r.data)?r.data:[r.data],n=vr(r.type,o),a,s,i;if(r.type==="block"&&!Array.isArray(r.data)){let l=e.entities.block[r.data.id].inputs,p=n.block[r.data.id].inputs;a=l.length!==p.length,a&&(i=l.length>p.length,s=i?l.filter(u=>!p.includes(u))[0]:p.filter(u=>!l.includes(u))[0]),Object.values(n.block).forEach(u=>{u.block_input&&delete n.block[u.id];});}let c=Jt(e.entities,n);if(e.entities=c,r.type==="dimension"){let l=r.data;e.entities.report[l.report_id].dimensions=xr(c.report[l.report_id].dimensions,c.dimension);}else if(r.type==="section"&&!Array.isArray(r.data)){let l=r.data;e.entities.report[l.report_id].sections=xr(c.report[l.report_id].sections,c.section);}else if(r.type==="block"&&!Array.isArray(r.data)){let l=r.data;a&&(i?e.entities.block[s].consumers=e.entities.block[s].consumers.filter(p=>p!==l.id):e.entities.block[s].consumers.push(l.id));}}},setDeleteRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let{id:o,parentId:n,parentType:a}=r.data;if(delete e.entities[r.type][o],a&&n!=null){let s=`${r.type}s`;Wl(e.entities[a][n][s],o);}}},removeBlocks:(e,t)=>{let r=t.payload,o={...e.entities.block};return r.forEach(n=>{delete o[n];}),{...e,entities:{...e.entities,block:o}}},addBlocks:(e,t)=>{let r=t.payload;return {...e,entities:{...e.entities,block:{...e.entities.block,...r}}}}},extraReducers:{[HYDRATE]:(e,t)=>{let r=t.payload.records,o=r.entities;return {entities:o,reports:Object.values(o.report).map(n=>n.id),requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}},tree:r.tree}}}});function Jt(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function xr(e,t){return e.map(n=>t[n]).sort(Tr).map(n=>n.id)}function Wl(e,t){let r=e.indexOf(t);r>-1&&e.splice(r,1);}function re(e){for(var t=arguments.length,r=Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];if(process.env.NODE_ENV!=="production"){var n=ru[e],a=n?typeof n=="function"?n.apply(null,r):n:"unknown error nr: "+e;throw Error("[Immer] "+a)}throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map(function(s){return "'"+s+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function Et(e){return !!e&&!!e[se]}function Ye(e){var t;return !!e&&(function(r){if(!r||typeof r!="object")return !1;var o=Object.getPrototypeOf(r);if(o===null)return !0;var n=Object.hasOwnProperty.call(o,"constructor")&&o.constructor;return n===Object||typeof n=="function"&&Function.toString.call(n)===ou}(e)||Array.isArray(e)||!!e[ja]||!!(!((t=e.constructor)===null||t===void 0)&&t[ja])||Eo(e)||Ao(e))}function Qt(e,t,r){r===void 0&&(r=!1),Tt(e)===0?(r?Object.keys:Po)(e).forEach(function(o){r&&typeof o=="symbol"||t(o,e[o],e);}):e.forEach(function(o,n){return t(n,o,e)});}function Tt(e){var t=e[se];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:Eo(e)?2:Ao(e)?3:0}function yo(e,t){return Tt(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Jl(e,t){return Tt(e)===2?e.get(t):e[t]}function Ha(e,t,r){var o=Tt(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r;}function Yl(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function Eo(e){return eu&&e instanceof Map}function Ao(e){return tu&&e instanceof Set}function Je(e){return e.o||e.t}function To(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=nu(e);delete t[se];for(var r=Po(t),o=0;o<r.length;o++){var n=r[o],a=t[n];a.writable===!1&&(a.writable=!0,a.configurable=!0),(a.get||a.set)&&(t[n]={configurable:!0,writable:!0,enumerable:a.enumerable,value:e[n]});}return Object.create(Object.getPrototypeOf(e),t)}function vo(e,t){return t===void 0&&(t=!1),_o(e)||Et(e)||!Ye(e)||(Tt(e)>1&&(e.set=e.add=e.clear=e.delete=Ql),Object.freeze(e),t&&Qt(e,function(r,o){return vo(o,!0)},!0)),e}function Ql(){re(2);}function _o(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function he(e){var t=au[e];return t||re(18,e),t}function Fa(){return process.env.NODE_ENV==="production"||At||re(0),At}function po(e,t){t&&(he("Patches"),e.u=[],e.s=[],e.v=t);}function Ir(e){ho(e),e.p.forEach(Zl),e.p=null;}function ho(e){e===At&&(At=e.l);}function Va(e){return At={p:[],l:At,h:e,m:!0,_:0}}function Zl(e){var t=e[se];t.i===0||t.i===1?t.j():t.g=!0;}function mo(e,t){t._=t.p.length;var r=t.p[0],o=e!==void 0&&e!==r;return t.h.O||he("ES5").S(t,e,o),o?(r[se].P&&(Ir(t),re(4)),Ye(e)&&(e=Cr(t,e),t.l||Br(t,e)),t.u&&he("Patches").M(r[se].t,e,t.u,t.s)):e=Cr(t,r,[]),Ir(t),t.u&&t.v(t.u,t.s),e!==Wa?e:void 0}function Cr(e,t,r){if(_o(t))return t;var o=t[se];if(!o)return Qt(t,function(i,c){return za(e,o,t,i,c,r)},!0),t;if(o.A!==e)return t;if(!o.P)return Br(e,o.t,!0),o.t;if(!o.I){o.I=!0,o.A._--;var n=o.i===4||o.i===5?o.o=To(o.k):o.o,a=n,s=!1;o.i===3&&(a=new Set(n),n.clear(),s=!0),Qt(a,function(i,c){return za(e,o,n,i,c,r,s)}),Br(e,n,!1),r&&e.u&&he("Patches").N(o,r,e.u,e.s);}return o.o}function za(e,t,r,o,n,a,s){if(process.env.NODE_ENV!=="production"&&n===r&&re(5),Et(n)){var i=Cr(e,n,a&&t&&t.i!==3&&!yo(t.R,o)?a.concat(o):void 0);if(Ha(r,o,i),!Et(i))return;e.m=!1;}else s&&r.add(n);if(Ye(n)&&!_o(n)){if(!e.h.D&&e._<1)return;Cr(e,n),t&&t.A.l||Br(e,n);}}function Br(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&vo(t,r);}function fo(e,t){var r=e[se];return (r?Je(r):e)[t]}function $a(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=Object.getPrototypeOf(r);}}function Ro(e){e.P||(e.P=!0,e.l&&Ro(e.l));}function go(e){e.o||(e.o=To(e.t));}function bo(e,t,r){var o=Eo(t)?he("MapSet").F(t,r):Ao(t)?he("MapSet").T(t,r):e.O?function(n,a){var s=Array.isArray(n),i={i:s?1:0,A:a?a.A:Fa(),P:!1,I:!1,R:{},l:a,t:n,k:null,o:null,j:null,C:!1},c=i,l=So;s&&(c=[i],l=Yt);var p=Proxy.revocable(c,l),u=p.revoke,d=p.proxy;return i.k=d,i.j=u,d}(t,r):he("ES5").J(t,r);return (r?r.A:Fa()).p.push(o),o}function Xl(e){return Et(e)||re(22,e),function t(r){if(!Ye(r))return r;var o,n=r[se],a=Tt(r);if(n){if(!n.P&&(n.i<4||!he("ES5").K(n)))return n.t;n.I=!0,o=qa(r,a),n.I=!1;}else o=qa(r,a);return Qt(o,function(s,i){n&&Jl(n.t,s)===i||Ha(o,s,t(i));}),a===3?new Set(o):o}(e)}function qa(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return To(e)}var Ga,At,ko=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",eu=typeof Map<"u",tu=typeof Set<"u",Ka=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Wa=ko?Symbol.for("immer-nothing"):((Ga={})["immer-nothing"]=!0,Ga),ja=ko?Symbol.for("immer-draftable"):"__$immer_draftable",se=ko?Symbol.for("immer-state"):"__$immer_state";var ru={0:"Illegal state",1:"Immer drafts cannot have computed properties",2:"This object has been frozen and should not be mutated",3:function(e){return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+e},4:"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",5:"Immer forbids circular references",6:"The first or second argument to `produce` must be a function",7:"The third argument to `produce` must be a function or undefined",8:"First argument to `createDraft` must be a plain object, an array, or an immerable object",9:"First argument to `finishDraft` must be a draft returned by `createDraft`",10:"The given draft is already finalized",11:"Object.defineProperty() cannot be used on an Immer draft",12:"Object.setPrototypeOf() cannot be used on an Immer draft",13:"Immer only supports deleting array indices",14:"Immer only supports setting array indices and the 'length' property",15:function(e){return "Cannot apply patch, path doesn't resolve: "+e},16:'Sets cannot have "replace" patches.',17:function(e){return "Unsupported patch operation: "+e},18:function(e){return "The plugin for '"+e+"' has not been loaded into Immer. To enable the plugin, import and call `enable"+e+"()` when initializing your application."},20:"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",21:function(e){return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '"+e+"'"},22:function(e){return "'current' expects a draft, got: "+e},23:function(e){return "'original' expects a draft, got: "+e},24:"Patching reserved attributes like __proto__, prototype and constructor is not allowed"},ou=""+Object.prototype.constructor,Po=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,nu=Object.getOwnPropertyDescriptors||function(e){var t={};return Po(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r);}),t},au={},So={get:function(e,t){if(t===se)return e;var r=Je(e);if(!yo(r,t))return function(n,a,s){var i,c=$a(a,s);return c?"value"in c?c.value:(i=c.get)===null||i===void 0?void 0:i.call(n.k):void 0}(e,r,t);var o=r[t];return e.I||!Ye(o)?o:o===fo(e.t,t)?(go(e),e.o[t]=bo(e.A.h,o,e)):o},has:function(e,t){return t in Je(e)},ownKeys:function(e){return Reflect.ownKeys(Je(e))},set:function(e,t,r){var o=$a(Je(e),t);if(o?.set)return o.set.call(e.k,r),!0;if(!e.P){var n=fo(Je(e),t),a=n?.[se];if(a&&a.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(Yl(r,n)&&(r!==void 0||yo(e.t,t)))return !0;go(e),Ro(e);}return e.o[t]===r&&(r!==void 0||t in e.o)||Number.isNaN(r)&&Number.isNaN(e.o[t])||(e.o[t]=r,e.R[t]=!0),!0},deleteProperty:function(e,t){return fo(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,go(e),Ro(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=Je(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{writable:!0,configurable:e.i!==1||t!=="length",enumerable:o.enumerable,value:r[t]}},defineProperty:function(){re(11);},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){re(12);}},Yt={};Qt(So,function(e,t){Yt[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)};}),Yt.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&re(13),Yt.set.call(this,e,t,void 0)},Yt.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&re(14),So.set.call(this,e[0],t,r,e[0])};var su=function(){function e(r){var o=this;this.O=Ka,this.D=!0,this.produce=function(n,a,s){if(typeof n=="function"&&typeof a!="function"){var i=a;a=n;var c=o;return function(h){var R=this;h===void 0&&(h=i);for(var T=arguments.length,k=Array(T>1?T-1:0),B=1;B<T;B++)k[B-1]=arguments[B];return c.produce(h,function(A){var b;return (b=a).call.apply(b,[R,A].concat(k))})}}var l;if(typeof a!="function"&&re(6),s!==void 0&&typeof s!="function"&&re(7),Ye(n)){var p=Va(o),u=bo(o,n,void 0),d=!0;try{l=a(u),d=!1;}finally{d?Ir(p):ho(p);}return typeof Promise<"u"&&l instanceof Promise?l.then(function(h){return po(p,s),mo(h,p)},function(h){throw Ir(p),h}):(po(p,s),mo(l,p))}if(!n||typeof n!="object"){if((l=a(n))===void 0&&(l=n),l===Wa&&(l=void 0),o.D&&vo(l,!0),s){var m=[],y=[];he("Patches").M(n,l,m,y),s(m,y);}return l}re(21,n);},this.produceWithPatches=function(n,a){if(typeof n=="function")return function(l){for(var p=arguments.length,u=Array(p>1?p-1:0),d=1;d<p;d++)u[d-1]=arguments[d];return o.produceWithPatches(l,function(m){return n.apply(void 0,[m].concat(u))})};var s,i,c=o.produce(n,a,function(l,p){s=l,i=p;});return typeof Promise<"u"&&c instanceof Promise?c.then(function(l){return [l,s,i]}):[c,s,i]},typeof r?.useProxies=="boolean"&&this.setUseProxies(r.useProxies),typeof r?.autoFreeze=="boolean"&&this.setAutoFreeze(r.autoFreeze);}var t=e.prototype;return t.createDraft=function(r){Ye(r)||re(8),Et(r)&&(r=Xl(r));var o=Va(this),n=bo(this,r,void 0);return n[se].C=!0,ho(o),n},t.finishDraft=function(r,o){var n=r&&r[se];process.env.NODE_ENV!=="production"&&(n&&n.C||re(9),n.I&&re(10));var a=n.A;return po(a,o),mo(void 0,a)},t.setAutoFreeze=function(r){this.D=r;},t.setUseProxies=function(r){r&&!Ka&&re(20),this.O=r;},t.applyPatches=function(r,o){var n;for(n=o.length-1;n>=0;n--){var a=o[n];if(a.path.length===0&&a.op==="replace"){r=a.value;break}}n>-1&&(o=o.slice(n+1));var s=he("Patches").$;return Et(r)?s(r,o):this.produce(r,function(i){return s(i,o)})},e}(),ie=new su,iu=ie.produce;ie.produceWithPatches.bind(ie);ie.setAutoFreeze.bind(ie);ie.setUseProxies.bind(ie);ie.applyPatches.bind(ie);ie.createDraft.bind(ie);ie.finishDraft.bind(ie);var Lr=iu;var me=we.actions,Za=Zt({block:Qe("block"),dimension:Qe("dimension"),formatter:Qe("formatter"),report:Qe("report"),section:Qe("section"),variant:Qe("variant")}),oe=Zt({block:Ze("block"),dimension:Ze("dimension"),formatter:Ze("formatter"),report:Ze("report"),section:Ze("section"),variant:Ze("variant")}),Xa=Zt({block:Ae("block"),dimension:Ae("dimension"),formatter:Ae("formatter"),report:Ae("report"),section:Ae("section"),variant:Ae("variant")}),es=Zt({block:vt("block"),dimension:vt("dimension"),formatter:vt("formatter"),report:vt("report"),section:vt("section"),variant:vt("variant")}),ts=Zt({block:Ya("block"),section:Ya("section")});function Zt(e){return (t,r)=>{let o=e[t];if(!o)throw new Error(`Attempting to dispatch action for invalid entity type '${t}'`);return o(r)}}function Xe(e,t){return (r,o)=>{let a=o().records.requests[e][t],s=!a||a.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(me.setRequest({key:t,type:e,status:s}));}}function _t(e,t,r,o){return n=>{typeof window=="object"&¬ifications.show({autoClose:3e3,color:"red",id:t,message:o,title:"Error"}),n(me.setRequest({key:t,type:e,status:"FAILURE",error:{code:r,message:o}}));}}function Qe(e){return t=>{let r=xo(e,t);return (o,n,a)=>(o(Xe(e,r)),ne(a,"create",e)(t).then(i=>(i.ok===!0?o(me.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function uu(e){return t=>{let r=xo(e,t[0]);return (o,n,a)=>(o(Xe(e,r)),ne(a,"createBulk",e)(t).then(i=>(i.ok===!0?o(me.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function Ja(e,t,r){return r.replace(new RegExp(e,"g"),t)}function pu(e){return e.section_id!==void 0}function du(e){return e.report_id!==void 0}function Ya(e){return t=>{let{create:r}=t;return (o,n,a)=>Qe(e)(r)(o,n,a).then(async i=>{if(i.ok){let{data:c}=i,{id:l}=c,{update:p}=t,u=ns(e,{id:l});if(o(Xe(e,`${u}`)),e==="block"&&pu(r)){let d=Lr(p,R=>{R.id=l;}),{contentByLocale:m}=d;m&&(d=Lr(d,R=>{R.id=l,R.contentByLocale=Object.keys(m).reduce((T,k)=>{let B=m?m[k]:{};return T[k]={...B,id:l},T},{});}));let h=d.inputs?.map(R=>({type:R.type,id:R.id,inputAction:{operation:"create",input:{input_id:R.id,block_id:d.id}}}));return h&&h.length>0&&Qa(e)([d,...h])(o,n,a).then(()=>Ze("section")({id:d.section_id,include:!0})(o,n,a).then(R=>(R.ok&&o(me.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))),Ae(e)(d)(o,n,a).then(R=>(R.ok&&o(me.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))}if(e==="section"&&du(r)){let{id:d}=c,m=Lr(p,R=>{R.id=d;}),{blocks:y}=m,h=y?.map(R=>({type:R.type,blockcol:R.blockcol,blockrow:R.blockrow,section_id:d,locales:Object.keys(R.contentByLocale).map(T=>T)}));return h&&y&&await uu("block")(h)(o,n,a).then(R=>{if(R.ok){let T=R.data,k=[],B=T.map((A,b)=>{let D={...A},j=D.id,Y=y[b];Y.contentByLocale&&(D.contentByLocale=Object.keys(Y.contentByLocale).reduce((E,x)=>{let F=Y.contentByLocale[x];return E[x]={...F,content:{...F.content},id:D.id},E},{}));let{settings:H}=Y,{contentByLocale:U,id:w}=D;D.settings=H;let V={id:w,contentByLocale:U,settings:H};return Y.inputs.map(E=>E.id).reduce((E,x)=>{let F=y.findIndex(Q=>Q.id===x);return [...E,F]},[]).map(E=>({...T[E],originalBlock:y[E]})).forEach(E=>{let{id:x,type:F,originalBlock:Q}=E;if([M.SELECTOR,M.VIZ].includes(F)){if(V.contentByLocale?.logic?.content?.api){let J=V.contentByLocale?.logic.content.api;V.contentByLocale.logic.content.api=Ja(`(selector${Q.id}id)`,`selector${x}id`,J);}if(V.contentByLocale?.logic?.content?.logic){let J=V.contentByLocale.logic.content.logic;V.contentByLocale.logic.content.logic=Ja(`(selector${Q.id}id)`,`selector${x}id`,J);}}k.push({id:x,inputAction:{operation:"create",input:{input_id:x,block_id:j}}});}),V});return Qa("block")([...B,...k])(o,n,a)}}),Ae(e)(m)(o,n,a).then(R=>(R.ok&&o(me.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))}return Ae(e)({...p,id:c.id})(o,n,a)}})}}function Ze(e){return t=>{let r=rs(e,t);return (o,n,a)=>(o(Xe(e,r)),ne(a,"read",e)(t).then(i=>(i.ok===!0?o(me.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function Ae(e){return t=>{let r=Io(e,t);return (o,n,a)=>(o(Xe(e,r)),ne(a,"update",e)(t).then(i=>(i.ok===!0?o(me.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function Qa(e){return t=>{let r=Io(e,t[0]);return (o,n,a)=>(o(Xe(e,r)),ne(a,"updateBulk",e)(t).then(i=>(i.ok===!0?o(me.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function vt(e){return t=>{let r=os(e,t);return (o,n,a)=>(o(Xe(e,r)),ne(a,"delete",e)(t).then(i=>{i.ok===!0?o(me.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error));}))}}function xo(e,t){if(e==="variant"){let r=t;return `create(variant, [${r.dimension_id}, ${r.name}])`}return `create(${e}, [${Object.keys(t)}])`}function rs(e,t={}){let r=t.id==null?null:`'${t.id}'`;return `read(${e}, ${r}, ${!!t.include})`}function Io(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function os(e,t){return `delete(${e}, ${t})`}function ns(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:as,setPreviews:mu,setSectionState:ss,resetSectionState:is,setCurrentLocale:fu,setPreferredLocale:gu,addRunConsumersRunning:cs,removeRunConsumersRunning:ls}=Ee;function yu(e,t){return async(r,o,n)=>{let a=await n.validateVariantSlug({dimension:e,slug:t});if("error"in a)throw new Error(a.error);return a.data}}function hu(e){return async(t,r,o)=>{let n=await o.searchReport(e);if("error"in n)throw new Error(n.error);return n.data}}function Ru(){return async(e,t,r)=>{let o=await r.regenerateSearch(void 0);if("error"in o)throw new Error(o.error);return o.data}}function Xt(e){return async(t,r,o)=>{let n=await o.readMember(e);if("error"in n)throw new Error(n.error);return n.data}}function bu(e){return async(t,r,o)=>{let n=await o.searchMember(e);if(n.ok===!0)return n.data;throw new Error(n.error)}}async function us(e,t,r,o){let n=r().status,a={...n,...o},s={...n.query,...o.query};Object.keys(s).forEach(c=>s[c]===void 0&&delete s[c]);let i={...a,query:s};t(as(i)),n.activeSection&&t(ps(e,{query:s}));}function Su(e,t){return async(r,o)=>us(e,r,o,{query:{[t]:void 0}})}function Eu(e,t,r){return async(o,n)=>us(e,o,n,{query:{[t]:r}})}function ps(e,t){return async(r,o)=>{let n=o(),{currentLocale:a}=n.status,s=n.records.entities.block,i=e.formatterFunctions[a],{parsedParams:c,statusPayload:l}=Ua(n.status,t),{sid:p,bid:u,previews:d,query:m}=c;Object.keys(l).length&&r(Ee.setStatus(l));let y={...Er(d),locale:a,...Ar()},h={variables:y,query:m,locale:a};r(Ee.addRunConsumersRunning([p]));let R=n.records.entities.section[p],T=async k=>r(Xt(k));try{let k=await Sr(s,R&&[R],u,i,h,void 0,T),{variables:B,status:A}=k;r(wr.setVariableChange({attributes:y,variables:B,status:A})),r(Ee.removeRunConsumersRunning([p]));}catch(k){console.log("Error in runConsumers client side: recalculateVariables",k);}}}function Au(e){return async(t,r,o)=>{let n=await o.readMetadata(e);if("error"in n)throw new Error(n.error);return n.data}}function Tu(e){return async(t,r,o)=>{let n=await o.urlProxy({url:e});if("error"in n)throw new Error(n.error);return n.data}}function vu(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function _u(e){return async(t,r,o)=>{let n=await o.searchUser(e);if("error"in n)throw new Error(n.error);return n.data}}function ku(e){return async(t,r,o)=>{let n=await o.readUser({user_id:e});if("error"in n)throw new Error(n.error);return n.data}}function Pu({user:e}){return async(t,r,o)=>{let n=await o.updateUser(e);if("error"in n)throw new Error(n.error);return n.data}}function wu(e){return async(t,r,o)=>{let n=await o.updateMyData(e);if("error"in n)throw new Error(n.error);return n.data}}function Mr(e){let{removeBlocks:t}=we.actions;return async r=>{await r(t(e));}}function Co(e){let{addBlocks:t}=we.actions;return async r=>{await r(t(e));}}function xu(e){return async(t,r,o)=>{let n=await o.readPrivateBlocks({...e,roles:[]});if("error"in n)throw new Error(n.error);return n.data}}function Iu(e){return async(t,r,o)=>{let n=await o.revalidateUrl({target:e.target});if("error"in n)throw new Error(n.error);return n.data}}function Cu(e){return async(t,r,o)=>{let n=await o.revalidateReport({reportId:e.reportId,profilePrefix:e.profilePrefix});if("error"in n)throw new Error(n.error);return n.data}}var ds=e=>configureStore({reducer:{[we.name]:we.reducer,[kr.name]:kr.reducer,[Pr.name]:Pr.reducer},middleware(t){return t({thunk:{extraArgument:Ht("/api/cms/")}})}}),tr=createWrapper(ds);function Nu(e){let t=process.cwd(),r=Ou.resolve(t.endsWith("/example")?t.replace("/example",""):t,"package-lock.json"),o;try{let n=JSON.parse(Sc.readFileSync(r,"utf-8"));o=n.dependencies&&n.dependencies[e]&&n.dependencies[e].version!=="file:packages/reports"?n.dependencies[e].version:"0.dev";}catch{o="0.vercel";}return o||"Version not found"}function Du(e){let t=()=>Promise.resolve({}),{pathSegmentsKey:r="bespoke",preResolve:o=t,postResolve:n=t,authOptions:a={providers:[]}}=e||{};return tr.getServerSideProps(s=>{let{dispatch:i}=s;return async c=>{let l=await fe(c.req,c.res,a);if(!l)return {redirect:{destination:"/api/auth/signin?callbackUrl=/cms",permanent:!1}};let p=new Set([$.ADMIN,$.EDITOR,$.WRITER]);if(!(l?.user?.bespoke_roles||[]).some(T=>p.has(T)))return {redirect:{destination:"/",permanent:!1}};let d=c.query[r],[m]=Array.isArray(d)?d:[d];await i(Gt);let y=await Nu("@datawheel/bespoke"),h=await o(s,c);if("redirect"in h)return {props:h};m==="reports"&&(ms(c.query[r])?await Promise.all([i(oe("formatter",{})),i(oe("report",{id:ms(c.query[r]),include:!0})),Ee.setStatus({isCMS:!0})]):await Promise.all([i(oe("report",{include:"dimensions"})),Ee.setStatus({isCMS:!0})])),m==="metadata"&&await i(oe("report",{include:"dimensions"})),m==="formatters"&&await i(oe("formatter",{}));let R=await n(s,c);return {props:{...h,...R,bespokeVersion:y,session:l}}}})}function ms(e){if(e==null||e==="")return;let[,t]=Array.isArray(e)?e:[e];return Number.parseInt(t)||void 0}var {locales:Fu}=q(),Vu={pathSegment:"path",formatterFunctions:Fu.reduce((e,t)=>({...e,[t]:{}}),{}),profilePrefix:"path",siteProps:{}};createContext(Vu);q();var bs=e=>e.records.entities.block;function wt(e){return t=>Object.values(t.records.entities[e])}var Ss=wt("section"),Es=wt("formatter");function tp(e){let{fallback:t=!0,limit:r=50}=e||{};return async o=>{let{defaultLocale:n=de,locales:a=[]}=o,s=[];if(r>0){let i=a.find(p=>p===n),{searchMember:c}=await Ve().then(ft),l=await c({query:"",limit:r,format:"plain",locale:i||de,noImage:!1,visible:!0,report:[],dimension:[],variant:[],includes:!0});l.ok===!0&&(s=l.data.results.map(p=>({locale:a.find(u=>u===p.locale),params:{bespoke:[p.variant.slug,p.slug]}})));}return {fallback:t,paths:s}}}function rp(e){let{pathSegmentsKey:t="bespoke"}=e||{};try{return tr.getStaticProps(r=>{let{dispatch:o}=r;return async n=>{await o(Gt);let a=new Date().toISOString(),{locale:s=de,params:i={}}=n,c=Array.from(op(i[t]));if(c.length===0)return await Promise.all([o(oe("formatter",{})),o(oe("report",{include:!0}))]),{props:{buildTime:a}};let l=await o(Xt({mode:"slugs",locale:s,slugs:c,output:"full"}));o(er.setPreviews(l.results)),await Promise.all([o(oe("formatter",{})),o(oe("report",{id:l.results.map(b=>b.report_id),include:!0,locales:[s]}))]);let p=r.getState(),u=Es(p),d=uo(u,s),m=Ss(p),y=bs(p),h={...y},R={},T=Object.values(y).reduce((b,N)=>("access"in N.settings&&!["public","guest"].some(D=>!N.settings.access||N.settings.access.includes(D))&&b.push(N.id),b),[]);T=T.concat(qt(T,Object.values(h)));let k=T.filter(b=>h[b].settings[rn.FALLBACK]);T.forEach(b=>{k.includes(b)&&(R[b]={...h[b],type:M.FALLBACK,original_type:h[b].type}),delete h[b];}),await o(Mr(T)),await o(Co(R));let B={...Er(l.results),locale:s,...Ar()},A=async b=>await o(Xt(b));return await Sr({...h,...R},m,void 0,d,{locale:s,query:i,variables:B},void 0,A,"report").then(async b=>{let N=Object.keys({...h,...R}).reduce((D,j)=>(b.variables[j]&&b.status[j]||D.push(j),D),[]);await o(Mr(N)),await o(wr.setVariableChange({...b,attributes:B}));}),{props:{buildTime:a}}}})}catch(r){console.log("ERROR SSR",r);}}function op(e=[]){let t=[].concat(e),r=0;return {next(){return {value:{variantSlug:t[r++],memberSlug:t[r++]},done:r>t.length}},[Symbol.iterator](){return this}}}
|
|
67
|
+
`)}));}let N=await Promise.all(b).catch(D=>D.message);if(typeof N=="string"&&N)return {outputVariables:{},renderVariables:{},status:{error:N}};c=N.length===1?N[0].data:N.map(D=>D.data),u=N.reduce((D,j)=>D+JSON.stringify(j.data).length/1024,0),p=Math.max(...N.map(D=>D.requestDuration));}if(e.type===M.SELECTOR){let{config:A,log:b,error:N}=no(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:_a(e.id,s,A),renderVariables:A,status:{log:b,error:N,allowed:i}}}if(e.type===M.MULTIHIERARCHY_SELECTOR){let{config:A,log:b,error:N}=so(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:ka(e.id,s,A),renderVariables:A,status:{log:b,error:N,allowed:i}}}if(e.type===M.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:i}};if(e.type===M.RELATED){let A=e.contentByLocale?.logic?.content?.simple?.compare||"variant",b=e.contentByLocale?.logic?.content?.simple?.limit||4,N=Object.keys(a).filter(_=>_.startsWith("report_id")).map(_=>a[_]),D=Object.keys(a).filter(_=>_.startsWith("dimension_id")).map(_=>a[_]),j=Object.keys(a).filter(_=>_.startsWith("variant_id")).map(_=>a[_]),Y=Object.keys(a).filter(_=>_.startsWith("id")).map(_=>a[_]);if(!Y.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:!1}};let H=await Promise.all(Y.map((_,L)=>o({mode:"ids",locale:n,ids:[_],output:"lite",variant:[j[L]]}))).then(_=>_.flatMap(L=>{let E=[];return Rr(L)?L.ok&&(E=L.data.results):E=L.results,E&&Array.isArray(E)?E:[]})).catch(_=>(console.log("Error getting related members",_),[]));if(D.length>1){let _=Object.keys(a).filter(K=>K.startsWith("variant_slug")).map(K=>a[K]),L=H.map((K,C)=>{let I={mode:"related",locale:n,related:b??4,current_ids:[K.content_id],output:"full",variant_ids:[K.variant_id]};return C===0&&(I.include_ids=[K.content_id]),I}),E=await Promise.all(L.map(K=>o(K))).then(K=>K.flatMap(C=>{let I=[];return Rr(C)?C.ok&&(I=C.data.results):I=C.results,I&&Array.isArray(I)?I:[]})).catch(K=>(console.log("Error getting related members",K),[])),x=E.reduce((K,C)=>{let I=C.variant_slug;return K[I]||(K[I]=[]),K[I].push(C),K},{}),F=[],Q=Object.keys(x),J=[{combination:[],index:0}];for(;J.length>0;){let K=J.pop();if(!K)continue;let{combination:C,index:I}=K;if(I===Q.length){F.push(C);continue}let ae=Q[I],ue=x[ae];for(let ce of ue)J.push({combination:[...C,ce],index:I+1});}return {outputVariables:{related_reports:F.map(K=>{let C=K.sort((I,ae)=>_.indexOf(I.variant_slug)-_.indexOf(ae.variant_slug));return {entities:C,link:"/"+C.map(I=>`${I.variant_slug}/${I.slug}`).join("/")}})},renderVariables:{},status:{log:[],allowed:E.length>0}}}let U=H.map(_=>_.content_id),w={mode:"related",locale:n,related:b??4,current_ids:U,output:"full"};A&&(A==="report"?w.report_ids=N:A==="dimension"?w.dimension_ids=D:w.variant_ids=j);let V=await o(w).then(_=>{let L=[];return Rr(_)?_.ok&&(L=_.data.results):L=_.results,L&&Array.isArray(L)?L:[]}).catch(_=>(console.log("Error getting related members",_),[]));return {outputVariables:{related_reports:V.map(_=>({entities:[_],link:`/${_.variant_slug}/${_.slug}`}))},renderVariables:{},status:{log:[],allowed:V.length>0}}}let{logic:m}=wa(e,n),y=Rt(m,t,r),h=He("resp",c||{},y,t,a,r),{vars:R,error:T,log:k}=h;if(typeof R!="object")return {outputVariables:{},renderVariables:{},status:{error:"Configuration did not return an object",log:k,duration:p,responseSize:u,resp:c,api:d,allowed:i}};let B=Object.keys(R).reduce((A,b)=>({...A,[`${e.type}${e.id}${b}`]:R[b]}),{});return {renderVariables:R,outputVariables:[M.GENERATOR,M.SECTION_FLAG].includes(e.type)?R:B,status:{log:k,error:T,duration:p,responseSize:u,resp:c,api:d,allowed:i}}}function wl(e,t,r,o,n,a,s){return e.consumers.forEach(i=>{if(t[i]){let c=`${r}-${i}`;!o.includes(c)&&(t[i].section_id===t[r].section_id||!n)&&o.push(c),e.consumers.filter(l=>t[l]&&t[l].section_id===t[r].section_id||!n).forEach(l=>lo(l,t,o,!1,a,n,s));}})}var lo=(e,t,r=[],o=!0,n=!0,a=!0,s=[])=>{if(s.includes(e))return [];s.push(e);let i=t[e];return i&&i.inputs.length&&o&&i.inputs.forEach(c=>{let l=`${c}-${e}`;r.includes(l)||r.push(l),i.inputs.forEach(p=>lo(p,t,r,o,!1,a,s));}),i&&i.consumers.length&&n&&wl(i,t,e,r,a,n,s),r},xl=(e,t,r,o)=>{let n=!0;if(e&&"allowed"in e.settings&&e.settings.allowed!=="always")if(e.settings.allowed==="never")n=!1;else {let a=le(t),{error:s,output:i}=He("variables",r,e.settings.allowedLogic||"return false;",o,void 0,a);s||(n=!!i);}return n},Sr=async(e,t,r,o,n,a={},s,i="section")=>{let c=i==="section",l=le(n),p=l.variables,u={...a.variables??{}},d={...a.status??{}},m=new Set,y=[],h={};r?h={...h,[r]:e[r]}:t?h=(t??[]).reduce((U,{id:w})=>({...U,...xa(w,e)}),{}):h=Object.values(e).filter(U=>io(U)).reduce((U,w)=>({...U,[w.id]:w}),{});let R=Object.values(h).filter(U=>io(U));if(R.length>0){We&&console.log("%crunConsumers: calculating section flags","color:purple",R.map(v=>v.id).join(", "));let U=Object.fromEntries(await Promise.all(R.map(async v=>[v.id,await Ba(v,o,{...l,variables:p,locale:p.locale},s).then(_=>{let{outputVariables:L,status:E}=_;if(E.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${v.id}, Section ${v.section_id}) failed with message: ${E.error}. `);d[v.id]={allowed:!1,error:E.error},u[v.id]={};}return (v.consumers.length>0||[M.GENERATOR,M.SECTION_FLAG,M.RELATED].includes(v.type))&&E.allowed&&Object.keys(L).length>0?u[v.id]=L:u[v.id]={},i==="report"?(d[v.id]={allowed:E.allowed},[M.GENERATOR,M.SECTION_FLAG].includes(v.type)&&E.api&&(d[v.id].api=E.api)):d[v.id]=E,_})]))),V=Object.entries(U).filter(([v,_])=>!_.outputVariables[Nn]).map(([v])=>Number(v));m=new Set(V.map(v=>e[v].section_id)),Object.values(h).filter(v=>m.has(v.section_id)).forEach(v=>{y.push(v.id),delete h[v.id];}),We&&console.log("%crunConsumers: removing sections","color:purple",m.keys());}let T=m.size>0?Object.fromEntries(Object.entries(e).filter(([U,w])=>m?.has(w.section_id)?(y.includes(w.id)||y.push(w.id),!1):!0)):e;if(y.length>0&&(T=Object.fromEntries(Object.entries(T).map(([U,w])=>{let V={...w,inputs:w.inputs.filter(v=>!y.includes(v)),consumers:w.consumers.filter(v=>!y.includes(v))};return [U,V]}))),!r&&!t)return {variables:{...a.variables??{},...u},status:{...a.status??{},...d}};i==="report"&&y.length>0&&y.forEach(U=>{delete u[U],delete d[U],delete e[U];}),We&&console.log("%crunConsumers: running root blocks","color:purple",Object.keys(h));let k=Object.keys(h).reduce((U,w)=>{let V=new Date,v=lo(Number(w),T,[],!r,!0,c).map(E=>E.split("-")),L=(new Date().getTime()-V.getTime())/1e3;return We&&console.log(`%cResolved dependencies for ${w} (${L.toFixed(2)}s)`,"color:blue"),[...U,...v]},[]),B=new Date,A=Object.keys(h).reduce((U,w)=>U.includes(w)?[...U]:[w,...U],Sl(k)),N=(new Date().getTime()-B.getTime())/1e3;We&&console.log(`%cResolved DAG (${N.toFixed(2)}s): `,"color:green",A);async function D(U,w){let V=new Map;for(let v of U){let _=w[v],E=Promise.all(_.inputs.filter(x=>U.includes(String(x))).map(x=>V.get(Number(x)))).then(async()=>{let x=_.inputs.reduce((C,I)=>({...C,...u[I]}),p),F=_.inputs.find(C=>(_.settings?.ignoreCascade?_.settings?.ignoreCascade:[]).includes(C)||!d[C]?!1:!d[C].allowed||d[C].hiddenByCascade);if(F){d[v]={allowed:!1,hiddenByCascade:d[F].hiddenByCascade||F},u[v]={};return}let Q=new Date,J=await Ba(_,o,{...l,variables:x,locale:x.locale},s).then(({outputVariables:C,status:I})=>{if(I.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${v}, Section ${_.section_id}) failed with message: ${I.error}. `);d[v]={allowed:!1,error:I.error},u[v]={};}(_.consumers.length>0||[M.GENERATOR,M.SECTION_FLAG,M.RELATED].includes(_.type))&&I.allowed&&Object.keys(C).length>0?u[v]=C:u[v]={},i==="report"?(d[v]={allowed:I.allowed},[M.GENERATOR,M.SECTION_FLAG].includes(_.type)&&I.api&&(d[v].api=I.api)):d[v]=I;}),K=(new Date().getTime()-Q.getTime())/1e3;return We&&console.log(`%cBlock ${_.id} resolved in ${K.toFixed(3)}s`,K>500?"color:red":"color:green"),J});V.set(Number(v),E);}await Promise.all(Array.from(V.values()));}let j=new Date;await D(A,T);let H=(new Date().getTime()-j.getTime())/1e3;return We&&console.log(`%cResolved Variables (${H.toFixed(2)}s): `,"color:green"),{variables:{...a.variables??{},...u},status:{...a.status??{},...d}}};function Il(e=[]){return e.reduce((t,r,o)=>{if(r){let n=o+1;t[`id${n}`]=r.id,t[`name${n}`]=r.name,t[`slug${n}`]=r.slug,"attributes"in r&&Object.keys(r.attributes).forEach(a=>{t[`attr_${a}${n}`]=r.attributes[a];}),t[`variant_id${n}`]=r.variant_id,t[`variant_name${n}`]=r.variant_name,t[`variant_slug${n}`]=r.variant_slug,t[`dimension_id${n}`]=r.dimension_id,t[`dimension_name${n}`]=r.dimension_name,t.report_id=r.report_id,t.report_name=r.report_name;}return t},{})}var Er=Il;function Bl(){let{publicRuntimeConfig:e}=Cl(),t=e.bespoke_report_env_vars||{};return {...Object.keys(t).reduce((r,o)=>(r[`ENV_${o}`]=t[o]||"N/A",r),{})}}var Ar=Bl;function Ll(e,t){return +(e<t)-+(e>t)}function Tr(e,t,r="ordering"){return Ll(t[r],e[r])}var Ma=(e,t={},r="en",o={},n={})=>{let a={setVariables:o.onSetVariables?o.onSetVariables:c=>c,openModal:o.onOpenModal?o.onOpenModal:c=>c,formatters:t,libs:Me,locale:r,...n};function s(c){return Function("globals",...c.vars,`with (globals) { ${c.logic} }`).bind(a,a)}function i(c){if(c.vars&&c.logic)return s(c);for(let l in c)Array.isArray(c[l])?c[l]=c[l].map(p=>isObject(p)?i(p):p):isObject(c[l])&&(c[l]=i(c[l]));return c}return i(e)};var{localeDefault:Ol}=q();var Wt=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});Wt.define({consumers:[Wt],inputs:[Wt]});var Oa=new schema.Entity("variant"),Na=new schema.Entity("dimension",{variants:[Oa]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),Da=new schema.Entity("section",{blocks:[Wt]}),Nl=new schema.Entity("report",{dimensions:[Na],sections:[Da]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(Tr):[]}}}),Dl=new schema.Entity("formatter"),Ul={report:Nl,section:Da,block:Wt,dimension:Na,variant:Oa,formatter:Dl};function vr(e,t){let r=Ul[e];if(!r)throw new Error(`Invalid entity type: ${e}`);let{entities:o}=normalize(t,[r]);return {report:bt(o,"report"),dimension:bt(o,"dimension"),section:bt(o,"section"),block:bt(o,"block"),variant:bt(o,"variant"),formatter:bt(o,"formatter")}}function bt(e,t){return e.hasOwnProperty(t)?e[t]:{}}var Ua=(e,t=void 0)=>{let{sid:r,bid:o,previews:n=[],query:a={}}=t||{},s,i,c={};return r?(s=r,c.activeSection=s):s=e.activeSection,n.length>0?(i=n,c.previews=i.filter(Boolean)):i=e.previews,{parsedParams:{sid:s,bid:o,previews:i,query:a},statusPayload:c}},uo=(e=[],t=Ol)=>e.reduce((r,o)=>{let n=Ma({vars:["n"],logic:o.content.logic},{},t,{});return r[o.name]=n,r},{});var de=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",_r=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[de];_r.includes(de)||_r.push(de);var zl={localeDefault:de,locales:_r,currentLocale:de,preferredLocale:de,showToolbar:!1,activeSection:null,previews:[],query:{},sectionState:{},activeEntity:{type:null,id:null},sidebarStatus:{tools:!0,settings:!1,reportEditor:!1},isCMS:!1,isRunConsumersRunning:[]},kr=createSlice({name:"status",initialState:zl,reducers:{setStatus:(e,t)=>{Object.assign(e,t.payload);},setPreviews(e,t){e.previews=t.payload;},setCurrentLocale(e,t){e.currentLocale=t.payload;},setPreferredLocale(e,t){e.preferredLocale=t.payload;},setSectionState(e,t){e.sectionState={...e.sectionState,...t.payload};},resetSectionState(e,t){e.sectionState={...e.sectionState,[t.payload]:{}};},setActiveEntity(e,t){e.activeEntity=t.payload;},openSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!0};},closeSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!1};},toggleSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!e.sidebarStatus[t.payload]};},addRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.concat(t.payload);},removeRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.filter(r=>!t.payload.includes(r));}},extraReducers:{[HYDRATE]:(e,t)=>({...e,previews:t.payload.status.previews})}}),Ee=kr.actions;var Gl={attributes:{},variables:{},status:{}},Pr=createSlice({name:"variables",initialState:Gl,reducers:{setVariableChange:(e,t)=>{e.attributes={...e.attributes,...t.payload.attributes},e.variables={...e.variables,...t.payload.variables},e.status={...e.status,...t.payload.status};}},extraReducers:{[HYDRATE]:(e,t)=>({attributes:{...e.attributes,...t.payload.variables.attributes},status:{...e.status,...t.payload.variables.status},variables:{...e.variables,...t.payload.variables.variables}})}}),wr=Pr.actions;var Hl={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}}},we=createSlice({name:"records",initialState:Hl,reducers:{set:(e,t)=>{let r=t.payload;return {entities:Jt(e.entities,r.entities||{}),requests:Jt(e.requests,r.requests||{}),reports:r.reports||e.reports,tree:r.tree||e.tree}},setRequest:(e,t)=>{let r=t.payload;e.requests[r.type][r.key]=r;},setCreateRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let o=Array.isArray(r.data)?r.data:[r.data],n=vr(r.type,o),a=Jt(e.entities,n);if(e.entities=a,r.type==="report"){let s=r.data;e.reports?e.reports.indexOf(s.id)===-1&&(e.reports=[...e.reports,s.id]):e.reports=[s.id];}else if(r.type==="dimension"){let s=r.data;e.entities.report[s.report_id].dimensions.push(s.id),e.entities.report[s.report_id].dimensions=xr(a.report[s.report_id].dimensions,a.dimension);}else if(r.type==="variant"){let s=r.data;e.entities.dimension[s.dimension_id].variants.push(s.id);}else if(r.type==="section"&&!Array.isArray(r.data)){let s=r.data;e.entities.report[s.report_id].sections.push(s.id),e.entities.report[s.report_id].sections=xr(a.report[s.report_id].sections,a.section);}else if(r.type==="block")if(Array.isArray(r.data)){let s=r.data,i=s[0],c=s.map(l=>l.id);e.entities.section[i.section_id].blocks.concat(c);}else {let s=r.data;e.entities.section[s.section_id].blocks.push(s.id);}}},setReadRequest(e,t){let r=t.payload;if(r.type!=="report"&&(e.requests[r.type][r.key]=r),r.status==="SUCCESS"){let o=vr(r.type,r.data),n=Jt(e.entities,o);e.entities=n;}},setUpdateRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let o=Array.isArray(r.data)?r.data:[r.data],n=vr(r.type,o),a,s,i;if(r.type==="block"&&!Array.isArray(r.data)){let l=e.entities.block[r.data.id].inputs,p=n.block[r.data.id].inputs;a=l.length!==p.length,a&&(i=l.length>p.length,s=i?l.filter(u=>!p.includes(u))[0]:p.filter(u=>!l.includes(u))[0]),Object.values(n.block).forEach(u=>{u.block_input&&delete n.block[u.id];});}let c=Jt(e.entities,n);if(e.entities=c,r.type==="dimension"){let l=r.data;e.entities.report[l.report_id].dimensions=xr(c.report[l.report_id].dimensions,c.dimension);}else if(r.type==="section"&&!Array.isArray(r.data)){let l=r.data;e.entities.report[l.report_id].sections=xr(c.report[l.report_id].sections,c.section);}else if(r.type==="block"&&!Array.isArray(r.data)){let l=r.data;a&&(i?e.entities.block[s].consumers=e.entities.block[s].consumers.filter(p=>p!==l.id):e.entities.block[s].consumers.push(l.id));}}},setDeleteRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let{id:o,parentId:n,parentType:a}=r.data;if(delete e.entities[r.type][o],a&&n!=null){let s=`${r.type}s`;Wl(e.entities[a][n][s],o);}}},removeBlocks:(e,t)=>{let r=t.payload,o={...e.entities.block};return r.forEach(n=>{delete o[n];}),{...e,entities:{...e.entities,block:o}}},addBlocks:(e,t)=>{let r=t.payload;return {...e,entities:{...e.entities,block:{...e.entities.block,...r}}}}},extraReducers:{[HYDRATE]:(e,t)=>{let r=t.payload.records,o=r.entities;return {entities:o,reports:Object.values(o.report).map(n=>n.id),requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}},tree:r.tree}}}});function Jt(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function xr(e,t){return e.map(n=>t[n]).sort(Tr).map(n=>n.id)}function Wl(e,t){let r=e.indexOf(t);r>-1&&e.splice(r,1);}function re(e){for(var t=arguments.length,r=Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];if(process.env.NODE_ENV!=="production"){var n=ru[e],a=n?typeof n=="function"?n.apply(null,r):n:"unknown error nr: "+e;throw Error("[Immer] "+a)}throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map(function(s){return "'"+s+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function Et(e){return !!e&&!!e[se]}function Ye(e){var t;return !!e&&(function(r){if(!r||typeof r!="object")return !1;var o=Object.getPrototypeOf(r);if(o===null)return !0;var n=Object.hasOwnProperty.call(o,"constructor")&&o.constructor;return n===Object||typeof n=="function"&&Function.toString.call(n)===ou}(e)||Array.isArray(e)||!!e[ja]||!!(!((t=e.constructor)===null||t===void 0)&&t[ja])||Eo(e)||Ao(e))}function Qt(e,t,r){r===void 0&&(r=!1),Tt(e)===0?(r?Object.keys:Po)(e).forEach(function(o){r&&typeof o=="symbol"||t(o,e[o],e);}):e.forEach(function(o,n){return t(n,o,e)});}function Tt(e){var t=e[se];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:Eo(e)?2:Ao(e)?3:0}function yo(e,t){return Tt(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Jl(e,t){return Tt(e)===2?e.get(t):e[t]}function Ha(e,t,r){var o=Tt(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r;}function Yl(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function Eo(e){return eu&&e instanceof Map}function Ao(e){return tu&&e instanceof Set}function Je(e){return e.o||e.t}function To(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=nu(e);delete t[se];for(var r=Po(t),o=0;o<r.length;o++){var n=r[o],a=t[n];a.writable===!1&&(a.writable=!0,a.configurable=!0),(a.get||a.set)&&(t[n]={configurable:!0,writable:!0,enumerable:a.enumerable,value:e[n]});}return Object.create(Object.getPrototypeOf(e),t)}function vo(e,t){return t===void 0&&(t=!1),_o(e)||Et(e)||!Ye(e)||(Tt(e)>1&&(e.set=e.add=e.clear=e.delete=Ql),Object.freeze(e),t&&Qt(e,function(r,o){return vo(o,!0)},!0)),e}function Ql(){re(2);}function _o(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function he(e){var t=au[e];return t||re(18,e),t}function Fa(){return process.env.NODE_ENV==="production"||At||re(0),At}function po(e,t){t&&(he("Patches"),e.u=[],e.s=[],e.v=t);}function Ir(e){ho(e),e.p.forEach(Zl),e.p=null;}function ho(e){e===At&&(At=e.l);}function Va(e){return At={p:[],l:At,h:e,m:!0,_:0}}function Zl(e){var t=e[se];t.i===0||t.i===1?t.j():t.g=!0;}function mo(e,t){t._=t.p.length;var r=t.p[0],o=e!==void 0&&e!==r;return t.h.O||he("ES5").S(t,e,o),o?(r[se].P&&(Ir(t),re(4)),Ye(e)&&(e=Cr(t,e),t.l||Br(t,e)),t.u&&he("Patches").M(r[se].t,e,t.u,t.s)):e=Cr(t,r,[]),Ir(t),t.u&&t.v(t.u,t.s),e!==Wa?e:void 0}function Cr(e,t,r){if(_o(t))return t;var o=t[se];if(!o)return Qt(t,function(i,c){return za(e,o,t,i,c,r)},!0),t;if(o.A!==e)return t;if(!o.P)return Br(e,o.t,!0),o.t;if(!o.I){o.I=!0,o.A._--;var n=o.i===4||o.i===5?o.o=To(o.k):o.o,a=n,s=!1;o.i===3&&(a=new Set(n),n.clear(),s=!0),Qt(a,function(i,c){return za(e,o,n,i,c,r,s)}),Br(e,n,!1),r&&e.u&&he("Patches").N(o,r,e.u,e.s);}return o.o}function za(e,t,r,o,n,a,s){if(process.env.NODE_ENV!=="production"&&n===r&&re(5),Et(n)){var i=Cr(e,n,a&&t&&t.i!==3&&!yo(t.R,o)?a.concat(o):void 0);if(Ha(r,o,i),!Et(i))return;e.m=!1;}else s&&r.add(n);if(Ye(n)&&!_o(n)){if(!e.h.D&&e._<1)return;Cr(e,n),t&&t.A.l||Br(e,n);}}function Br(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&vo(t,r);}function fo(e,t){var r=e[se];return (r?Je(r):e)[t]}function $a(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=Object.getPrototypeOf(r);}}function Ro(e){e.P||(e.P=!0,e.l&&Ro(e.l));}function go(e){e.o||(e.o=To(e.t));}function bo(e,t,r){var o=Eo(t)?he("MapSet").F(t,r):Ao(t)?he("MapSet").T(t,r):e.O?function(n,a){var s=Array.isArray(n),i={i:s?1:0,A:a?a.A:Fa(),P:!1,I:!1,R:{},l:a,t:n,k:null,o:null,j:null,C:!1},c=i,l=So;s&&(c=[i],l=Yt);var p=Proxy.revocable(c,l),u=p.revoke,d=p.proxy;return i.k=d,i.j=u,d}(t,r):he("ES5").J(t,r);return (r?r.A:Fa()).p.push(o),o}function Xl(e){return Et(e)||re(22,e),function t(r){if(!Ye(r))return r;var o,n=r[se],a=Tt(r);if(n){if(!n.P&&(n.i<4||!he("ES5").K(n)))return n.t;n.I=!0,o=qa(r,a),n.I=!1;}else o=qa(r,a);return Qt(o,function(s,i){n&&Jl(n.t,s)===i||Ha(o,s,t(i));}),a===3?new Set(o):o}(e)}function qa(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return To(e)}var Ga,At,ko=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",eu=typeof Map<"u",tu=typeof Set<"u",Ka=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Wa=ko?Symbol.for("immer-nothing"):((Ga={})["immer-nothing"]=!0,Ga),ja=ko?Symbol.for("immer-draftable"):"__$immer_draftable",se=ko?Symbol.for("immer-state"):"__$immer_state";var ru={0:"Illegal state",1:"Immer drafts cannot have computed properties",2:"This object has been frozen and should not be mutated",3:function(e){return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+e},4:"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",5:"Immer forbids circular references",6:"The first or second argument to `produce` must be a function",7:"The third argument to `produce` must be a function or undefined",8:"First argument to `createDraft` must be a plain object, an array, or an immerable object",9:"First argument to `finishDraft` must be a draft returned by `createDraft`",10:"The given draft is already finalized",11:"Object.defineProperty() cannot be used on an Immer draft",12:"Object.setPrototypeOf() cannot be used on an Immer draft",13:"Immer only supports deleting array indices",14:"Immer only supports setting array indices and the 'length' property",15:function(e){return "Cannot apply patch, path doesn't resolve: "+e},16:'Sets cannot have "replace" patches.',17:function(e){return "Unsupported patch operation: "+e},18:function(e){return "The plugin for '"+e+"' has not been loaded into Immer. To enable the plugin, import and call `enable"+e+"()` when initializing your application."},20:"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",21:function(e){return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '"+e+"'"},22:function(e){return "'current' expects a draft, got: "+e},23:function(e){return "'original' expects a draft, got: "+e},24:"Patching reserved attributes like __proto__, prototype and constructor is not allowed"},ou=""+Object.prototype.constructor,Po=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,nu=Object.getOwnPropertyDescriptors||function(e){var t={};return Po(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r);}),t},au={},So={get:function(e,t){if(t===se)return e;var r=Je(e);if(!yo(r,t))return function(n,a,s){var i,c=$a(a,s);return c?"value"in c?c.value:(i=c.get)===null||i===void 0?void 0:i.call(n.k):void 0}(e,r,t);var o=r[t];return e.I||!Ye(o)?o:o===fo(e.t,t)?(go(e),e.o[t]=bo(e.A.h,o,e)):o},has:function(e,t){return t in Je(e)},ownKeys:function(e){return Reflect.ownKeys(Je(e))},set:function(e,t,r){var o=$a(Je(e),t);if(o?.set)return o.set.call(e.k,r),!0;if(!e.P){var n=fo(Je(e),t),a=n?.[se];if(a&&a.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(Yl(r,n)&&(r!==void 0||yo(e.t,t)))return !0;go(e),Ro(e);}return e.o[t]===r&&(r!==void 0||t in e.o)||Number.isNaN(r)&&Number.isNaN(e.o[t])||(e.o[t]=r,e.R[t]=!0),!0},deleteProperty:function(e,t){return fo(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,go(e),Ro(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=Je(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{writable:!0,configurable:e.i!==1||t!=="length",enumerable:o.enumerable,value:r[t]}},defineProperty:function(){re(11);},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){re(12);}},Yt={};Qt(So,function(e,t){Yt[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)};}),Yt.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&re(13),Yt.set.call(this,e,t,void 0)},Yt.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&re(14),So.set.call(this,e[0],t,r,e[0])};var su=function(){function e(r){var o=this;this.O=Ka,this.D=!0,this.produce=function(n,a,s){if(typeof n=="function"&&typeof a!="function"){var i=a;a=n;var c=o;return function(h){var R=this;h===void 0&&(h=i);for(var T=arguments.length,k=Array(T>1?T-1:0),B=1;B<T;B++)k[B-1]=arguments[B];return c.produce(h,function(A){var b;return (b=a).call.apply(b,[R,A].concat(k))})}}var l;if(typeof a!="function"&&re(6),s!==void 0&&typeof s!="function"&&re(7),Ye(n)){var p=Va(o),u=bo(o,n,void 0),d=!0;try{l=a(u),d=!1;}finally{d?Ir(p):ho(p);}return typeof Promise<"u"&&l instanceof Promise?l.then(function(h){return po(p,s),mo(h,p)},function(h){throw Ir(p),h}):(po(p,s),mo(l,p))}if(!n||typeof n!="object"){if((l=a(n))===void 0&&(l=n),l===Wa&&(l=void 0),o.D&&vo(l,!0),s){var m=[],y=[];he("Patches").M(n,l,m,y),s(m,y);}return l}re(21,n);},this.produceWithPatches=function(n,a){if(typeof n=="function")return function(l){for(var p=arguments.length,u=Array(p>1?p-1:0),d=1;d<p;d++)u[d-1]=arguments[d];return o.produceWithPatches(l,function(m){return n.apply(void 0,[m].concat(u))})};var s,i,c=o.produce(n,a,function(l,p){s=l,i=p;});return typeof Promise<"u"&&c instanceof Promise?c.then(function(l){return [l,s,i]}):[c,s,i]},typeof r?.useProxies=="boolean"&&this.setUseProxies(r.useProxies),typeof r?.autoFreeze=="boolean"&&this.setAutoFreeze(r.autoFreeze);}var t=e.prototype;return t.createDraft=function(r){Ye(r)||re(8),Et(r)&&(r=Xl(r));var o=Va(this),n=bo(this,r,void 0);return n[se].C=!0,ho(o),n},t.finishDraft=function(r,o){var n=r&&r[se];process.env.NODE_ENV!=="production"&&(n&&n.C||re(9),n.I&&re(10));var a=n.A;return po(a,o),mo(void 0,a)},t.setAutoFreeze=function(r){this.D=r;},t.setUseProxies=function(r){r&&!Ka&&re(20),this.O=r;},t.applyPatches=function(r,o){var n;for(n=o.length-1;n>=0;n--){var a=o[n];if(a.path.length===0&&a.op==="replace"){r=a.value;break}}n>-1&&(o=o.slice(n+1));var s=he("Patches").$;return Et(r)?s(r,o):this.produce(r,function(i){return s(i,o)})},e}(),ie=new su,iu=ie.produce;ie.produceWithPatches.bind(ie);ie.setAutoFreeze.bind(ie);ie.setUseProxies.bind(ie);ie.applyPatches.bind(ie);ie.createDraft.bind(ie);ie.finishDraft.bind(ie);var Lr=iu;var me=we.actions,Za=Zt({block:Qe("block"),dimension:Qe("dimension"),formatter:Qe("formatter"),report:Qe("report"),section:Qe("section"),variant:Qe("variant")}),oe=Zt({block:Ze("block"),dimension:Ze("dimension"),formatter:Ze("formatter"),report:Ze("report"),section:Ze("section"),variant:Ze("variant")}),Xa=Zt({block:Ae("block"),dimension:Ae("dimension"),formatter:Ae("formatter"),report:Ae("report"),section:Ae("section"),variant:Ae("variant")}),es=Zt({block:vt("block"),dimension:vt("dimension"),formatter:vt("formatter"),report:vt("report"),section:vt("section"),variant:vt("variant")}),ts=Zt({block:Ya("block"),section:Ya("section")});function Zt(e){return (t,r)=>{let o=e[t];if(!o)throw new Error(`Attempting to dispatch action for invalid entity type '${t}'`);return o(r)}}function Xe(e,t){return (r,o)=>{let a=o().records.requests[e][t],s=!a||a.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(me.setRequest({key:t,type:e,status:s}));}}function _t(e,t,r,o){return n=>{typeof window=="object"&¬ifications.show({autoClose:3e3,color:"red",id:t,message:o,title:"Error"}),n(me.setRequest({key:t,type:e,status:"FAILURE",error:{code:r,message:o}}));}}function Qe(e){return t=>{let r=xo(e,t);return (o,n,a)=>(o(Xe(e,r)),ne(a,"create",e)(t).then(i=>(i.ok===!0?o(me.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function uu(e){return t=>{let r=xo(e,t[0]);return (o,n,a)=>(o(Xe(e,r)),ne(a,"createBulk",e)(t).then(i=>(i.ok===!0?o(me.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function Ja(e,t,r){return r.replace(new RegExp(e,"g"),t)}function pu(e){return e.section_id!==void 0}function du(e){return e.report_id!==void 0}function Ya(e){return t=>{let{create:r}=t;return (o,n,a)=>Qe(e)(r)(o,n,a).then(async i=>{if(i.ok){let{data:c}=i,{id:l}=c,{update:p}=t,u=ns(e,{id:l});if(o(Xe(e,`${u}`)),e==="block"&&pu(r)){let d=Lr(p,R=>{R.id=l;}),{contentByLocale:m}=d;m&&(d=Lr(d,R=>{R.id=l,R.contentByLocale=Object.keys(m).reduce((T,k)=>{let B=m?m[k]:{};return T[k]={...B,id:l},T},{});}));let h=d.inputs?.map(R=>({type:R.type,id:R.id,inputAction:{operation:"create",input:{input_id:R.id,block_id:d.id}}}));return h&&h.length>0&&Qa(e)([d,...h])(o,n,a).then(()=>Ze("section")({id:d.section_id,include:!0})(o,n,a).then(R=>(R.ok&&o(me.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))),Ae(e)(d)(o,n,a).then(R=>(R.ok&&o(me.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))}if(e==="section"&&du(r)){let{id:d}=c,m=Lr(p,R=>{R.id=d;}),{blocks:y}=m,h=y?.map(R=>({type:R.type,blockcol:R.blockcol,blockrow:R.blockrow,section_id:d,locales:Object.keys(R.contentByLocale).map(T=>T)}));return h&&y&&await uu("block")(h)(o,n,a).then(R=>{if(R.ok){let T=R.data,k=[],B=T.map((A,b)=>{let D={...A},j=D.id,Y=y[b];Y.contentByLocale&&(D.contentByLocale=Object.keys(Y.contentByLocale).reduce((E,x)=>{let F=Y.contentByLocale[x];return E[x]={...F,content:{...F.content},id:D.id},E},{}));let{settings:H}=Y,{contentByLocale:U,id:w}=D;D.settings=H;let V={id:w,contentByLocale:U,settings:H};return Y.inputs.map(E=>E.id).reduce((E,x)=>{let F=y.findIndex(Q=>Q.id===x);return [...E,F]},[]).map(E=>({...T[E],originalBlock:y[E]})).forEach(E=>{let{id:x,type:F,originalBlock:Q}=E;if([M.SELECTOR,M.VIZ].includes(F)){if(V.contentByLocale?.logic?.content?.api){let J=V.contentByLocale?.logic.content.api;V.contentByLocale.logic.content.api=Ja(`(selector${Q.id}id)`,`selector${x}id`,J);}if(V.contentByLocale?.logic?.content?.logic){let J=V.contentByLocale.logic.content.logic;V.contentByLocale.logic.content.logic=Ja(`(selector${Q.id}id)`,`selector${x}id`,J);}}k.push({id:x,inputAction:{operation:"create",input:{input_id:x,block_id:j}}});}),V});return Qa("block")([...B,...k])(o,n,a)}}),Ae(e)(m)(o,n,a).then(R=>(R.ok&&o(me.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))}return Ae(e)({...p,id:c.id})(o,n,a)}})}}function Ze(e){return t=>{let r=rs(e,t);return (o,n,a)=>(o(Xe(e,r)),ne(a,"read",e)(t).then(i=>(i.ok===!0?o(me.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function Ae(e){return t=>{let r=Io(e,t);return (o,n,a)=>(o(Xe(e,r)),ne(a,"update",e)(t).then(i=>(i.ok===!0?o(me.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function Qa(e){return t=>{let r=Io(e,t[0]);return (o,n,a)=>(o(Xe(e,r)),ne(a,"updateBulk",e)(t).then(i=>(i.ok===!0?o(me.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error)),i)))}}function vt(e){return t=>{let r=os(e,t);return (o,n,a)=>(o(Xe(e,r)),ne(a,"delete",e)(t).then(i=>{i.ok===!0?o(me.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:i.data})):o(_t(e,r,i.status,i.error));}))}}function xo(e,t){if(e==="variant"){let r=t;return `create(variant, [${r.dimension_id}, ${r.name}])`}return `create(${e}, [${Object.keys(t)}])`}function rs(e,t={}){let r=t.id==null?null:`'${t.id}'`;return `read(${e}, ${r}, ${!!t.include})`}function Io(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function os(e,t){return `delete(${e}, ${t})`}function ns(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:as,setPreviews:mu,setSectionState:ss,resetSectionState:is,setCurrentLocale:fu,setPreferredLocale:gu,addRunConsumersRunning:cs,removeRunConsumersRunning:ls}=Ee;function yu(e,t){return async(r,o,n)=>{let a=await n.validateVariantSlug({dimension:e,slug:t});if("error"in a)throw new Error(a.error);return a.data}}function hu(e){return async(t,r,o)=>{let n=await o.searchReport(e);if("error"in n)throw new Error(n.error);return n.data}}function Ru(){return async(e,t,r)=>{let o=await r.regenerateSearch(void 0);if("error"in o)throw new Error(o.error);return o.data}}function Xt(e){return async(t,r,o)=>{let n=await o.readMember(e);if("error"in n)throw new Error(n.error);return n.data}}function bu(e){return async(t,r,o)=>{let n=await o.searchMember(e);if(n.ok===!0)return n.data;throw new Error(n.error)}}async function us(e,t,r,o){let n=r().status,a={...n,...o},s={...n.query,...o.query};Object.keys(s).forEach(c=>s[c]===void 0&&delete s[c]);let i={...a,query:s};t(as(i)),n.activeSection&&t(ps(e,{query:s}));}function Su(e,t){return async(r,o)=>us(e,r,o,{query:{[t]:void 0}})}function Eu(e,t,r){return async(o,n)=>us(e,o,n,{query:{[t]:r}})}function ps(e,t){return async(r,o)=>{let n=o(),{currentLocale:a}=n.status,s=n.records.entities.block,i=e.formatterFunctions[a],{parsedParams:c,statusPayload:l}=Ua(n.status,t),{sid:p,bid:u,previews:d,query:m}=c;Object.keys(l).length&&r(Ee.setStatus(l));let y={...Er(d),locale:a,...Ar()},h={variables:y,query:m,locale:a};r(Ee.addRunConsumersRunning([p]));let R=n.records.entities.section[p],T=async k=>r(Xt(k));try{let k=await Sr(s,R&&[R],u,i,h,void 0,T),{variables:B,status:A}=k;r(wr.setVariableChange({attributes:y,variables:B,status:A})),r(Ee.removeRunConsumersRunning([p]));}catch(k){console.log("Error in runConsumers client side: recalculateVariables",k);}}}function Au(e){return async(t,r,o)=>{let n=await o.readMetadata(e);if("error"in n)throw new Error(n.error);return n.data}}function Tu(e){return async(t,r,o)=>{let n=await o.urlProxy({url:e});if("error"in n)throw new Error(n.error);return n.data}}function vu(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function _u(e){return async(t,r,o)=>{let n=await o.searchUser(e);if("error"in n)throw new Error(n.error);return n.data}}function ku(e){return async(t,r,o)=>{let n=await o.readUser({user_id:e});if("error"in n)throw new Error(n.error);return n.data}}function Pu({user:e}){return async(t,r,o)=>{let n=await o.updateUser(e);if("error"in n)throw new Error(n.error);return n.data}}function wu(e){return async(t,r,o)=>{let n=await o.updateMyData(e);if("error"in n)throw new Error(n.error);return n.data}}function Mr(e){let{removeBlocks:t}=we.actions;return async r=>{await r(t(e));}}function Co(e){let{addBlocks:t}=we.actions;return async r=>{await r(t(e));}}function xu(e){return async(t,r,o)=>{let n=await o.readPrivateBlocks({...e,roles:[]});if("error"in n)throw new Error(n.error);return n.data}}function Iu(e){return async(t,r,o)=>{let n=await o.revalidateUrl({target:e.target});if("error"in n)throw new Error(n.error);return n.data}}function Cu(e){return async(t,r,o)=>{let n=await o.revalidateReport({reportId:e.reportId,profilePrefix:e.profilePrefix});if("error"in n)throw new Error(n.error);return n.data}}var ds=e=>configureStore({reducer:{[we.name]:we.reducer,[kr.name]:kr.reducer,[Pr.name]:Pr.reducer},middleware(t){return t({thunk:{extraArgument:Ht("/api/cms/")}})}}),tr=createWrapper(ds);function Nu(e){let t=process.cwd(),r=Ou.resolve(t.endsWith("/example")?t.replace("/example",""):t,"package-lock.json"),o;try{let n=JSON.parse(Sc.readFileSync(r,"utf-8"));o=n.dependencies&&n.dependencies[e]&&n.dependencies[e].version!=="file:packages/reports"?n.dependencies[e].version:"0.dev";}catch{o="0.vercel";}return o||"Version not found"}function Du(e){let t=()=>Promise.resolve({}),{pathSegmentsKey:r="bespoke",preResolve:o=t,postResolve:n=t,authOptions:a={providers:[]}}=e||{};return tr.getServerSideProps(s=>{let{dispatch:i}=s;return async c=>{let l=await fe(c.req,c.res,a);if(!l)return {redirect:{destination:"/api/auth/signin?callbackUrl=/cms",permanent:!1}};let p=new Set([$.ADMIN,$.EDITOR,$.WRITER]);if(!(l?.user?.bespoke_roles||[]).some(T=>p.has(T)))return {redirect:{destination:"/",permanent:!1}};let d=c.query[r],[m]=Array.isArray(d)?d:[d];await i(Gt);let y=await Nu("@datawheel/bespoke"),h=await o(s,c);if("redirect"in h)return {props:h};m==="reports"&&(ms(c.query[r])?await Promise.all([i(oe("formatter",{})),i(oe("report",{id:ms(c.query[r]),include:!0})),Ee.setStatus({isCMS:!0})]):await Promise.all([i(oe("report",{include:"dimensions"})),Ee.setStatus({isCMS:!0})])),m==="metadata"&&await i(oe("report",{include:"dimensions"})),m==="formatters"&&await i(oe("formatter",{}));let R=await n(s,c);return {props:{...h,...R,bespokeVersion:y,session:l}}}})}function ms(e){if(e==null||e==="")return;let[,t]=Array.isArray(e)?e:[e];return Number.parseInt(t)||void 0}var {locales:Fu}=q(),Vu={pathSegment:"path",formatterFunctions:Fu.reduce((e,t)=>({...e,[t]:{}}),{}),profilePrefix:"path",siteProps:{}};createContext(Vu);q();var bs=e=>e.records.entities.block;function wt(e){return t=>Object.values(t.records.entities[e])}var Ss=wt("section"),Es=wt("formatter");function tp(e){let{fallback:t=!0,limit:r=50}=e||{};return async o=>{let{defaultLocale:n=de,locales:a=[]}=o,s=[];if(r>0){let i=a.find(p=>p===n),{searchMember:c}=await Ve().then(ft),l=await c({query:"",limit:r,format:"plain",locale:i||de,noImage:!1,visible:!0,report:[],dimension:[],variant:[],includes:!0});l.ok===!0&&(s=l.data.results.map(p=>({locale:a.find(u=>u===p.locale),params:{bespoke:[p.variant.slug,p.slug]}})));}return {fallback:t,paths:s}}}function rp(e){let{pathSegmentsKey:t="bespoke"}=e||{};try{return tr.getStaticProps(r=>{let{dispatch:o}=r;return async n=>{await o(Gt);let a=new Date().toISOString(),{locale:s=de,params:i={}}=n,c=Array.from(op(i[t]));if(c.length===0)return await Promise.all([o(oe("formatter",{})),o(oe("report",{include:!0}))]),{props:{buildTime:a}};let l=await o(Xt({mode:"slugs",locale:s,slugs:c,output:"full"}));o(er.setPreviews(l.results)),await Promise.all([o(oe("formatter",{})),o(oe("report",{id:l.results.map(b=>b.report_id),include:!0,locales:[s]}))]);let p=r.getState(),u=Es(p),d=uo(u,s),m=Ss(p),y=bs(p),h={...y},R={},T=Object.values(y).reduce((b,N)=>("access"in N.settings&&!["public","guest"].some(D=>!N.settings.access||N.settings.access.includes(D))&&b.push(N.id),b),[]);T=T.concat(qt(T,Object.values(h)));let k=T.filter(b=>h[b].settings[rn.FALLBACK]);T.forEach(b=>{k.includes(b)&&(R[b]={...h[b],type:M.FALLBACK,original_type:h[b].type}),delete h[b];}),await o(Mr(T)),await o(Co(R));let B={...Er(l.results),locale:s,...Ar()},A=async b=>await o(Xt(b));return await Sr({...h,...R},m,void 0,d,{locale:s,query:i,variables:B},void 0,A,"report").then(async b=>{let N=Object.keys({...h,...R}).reduce((D,j)=>(b.variables[j]&&b.status[j]||D.push(j),D),[]);await o(Mr(N)),await o(wr.setVariableChange({...b,attributes:B}));}),{props:{buildTime:a}}}})}catch(r){console.log("ERROR SSR",r);}}function op(e=[]){let t=[].concat(e),r=0;return {next(){return {value:{variantSlug:t[r++],memberSlug:t[r++]},done:r>t.length}},[Symbol.iterator](){return this}}}
|
|
68
68
|
|
|
69
69
|
export { el as BespokeEndpointNextJsHandlerFactory, fe as BespokeGetSession, ws as BespokeHandleAuth, Du as BespokeManagerServerSideProps, tp as BespokeRendererStaticPaths, rp as BespokeRendererStaticProps, Fs as BespokeSearchUsersByMetadata, Bs as BespokeUpdateCurrentUserAppMetadata, Os as BespokeUpdateCurrentUserMetadata, Ds as BespokeWithApiRoleAuthRequired, rl as ReportCrosswalkHandler, ft as dbApiFactory, eo as endpointKey, Ve as getDB, Gt as useDatabaseApi };
|