@datawheel/bespoke 0.8.0-rc.7 → 0.8.0-rc.9

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/report.js CHANGED
@@ -55,7 +55,7 @@ var hm=Object.defineProperty;var S=(e,r)=>()=>(e&&(r=e(e=0)),r);var as=(e,r)=>{f
55
55
  dignissim interdum eros. Curabitur non tincidunt libero.
56
56
  Suspendisse quis nibh in massa tincidunt feugiat sit amet vitae nisl.
57
57
  In pulvinar sapien ut tincidunt volutpat. Donec auctor tellus eu augue feugiat,
58
- a viverra sapien pulvinar.`,style:t,append:r?jsx(Ae,{content:r,style:{display:"inline-block",verticalAlign:"bottom"}}):jsx(Fragment,{}),isPreview:!0})}var vp=S(()=>{u();Bt();Ee();});function qi({subtitle:e,title:r,value:t,tooltip:o,settings:n,_iconType:s,_iconVariant:i,_icon:a,_iconRadius:l,_iconSize:c,_iconPadding:d}){let p=r||"<span class='cr-block-placeholder'>Title</span>",m=t||"<span class='cr-block-placeholder'>Big Stat</span>",y=e||"<span class='cr-block-placeholder'>Subtitle</span>",b=n&&n.align||"left";return jsx("div",{className:"bespoke-Stat-root",children:jsxs(Group,{className:"bespoke-StatGroup-wrapper",position:Xe(b),children:[s!=="none"&&s&&jsx(Pe,{blockType:"stat",iconType:s,iconVariant:i,iconRadius:l,iconSize:c,icon:a,iconPadding:d}),jsxs("div",{className:"bespoke-Stat-wrapper",children:[jsx(ee,{component:"div",size:"md",html:p,style:n,isPreview:!0}),jsx(ee,{component:"div",size:"xl",html:m,style:n,isPreview:!0}),jsx(ee,{component:"div",size:"sm",html:y,style:n,isPreview:!0})]},"stat"),o&&jsx(Ae,{content:o})]})})}var Tp=S(()=>{u();Bt();vr();Ee();_e();});function Hi({subtitle:e,tooltip:r,settings:t}){let o=Be(e)||"<span class='cr-block-placeholder'>Small subtitle.</span>",n=t&&t.align?t.align:"left";return jsxs(Group,{spacing:"sm",position:Xe(n),children:[jsx(ee,{size:"sm",html:o,isPreview:!0}),r&&jsx(Ae,{content:r,style:{display:"inline-flex"}})]})}var xp=S(()=>{u();Bt();yr();Ee();_e();});function ji({title:e,tooltip:r,_iconType:t,_iconVariant:o,_icon:n,settings:s,_iconRadius:i,_iconSize:a,_iconPadding:l}){let c=Be(e)||"Title",d=s&&s.order?parseInt(s.order,10):1,p=d<=6?d:1,m=!!(s&&s.search&&s.search!=="off"),y=s&&s.search?s.search:"",b=s&&s.align?s.align:"left";return jsxs(Group,{spacing:"sm",position:Xe(b),children:[t!=="none"&&t&&jsx(Pe,{blockType:"title",iconType:t,iconVariant:o,iconRadius:i,iconSize:a,icon:n,iconPadding:l}),jsx(ee,{component:"h",order:p,style:s,html:c,isPreview:!0}),m&&jsx(Tooltip,{label:`Click will open '${y}' report search`,children:jsx(ActionIcon,{variant:"light",children:jsx(IconSearch,{size:20})})}),r&&jsx(Ae,{content:r})]})}var Ep=S(()=>{u();Bt();yr();vr();Ee();_e();});function Yi(e){let{id:r,type:t,defaultValue:o,options:n,name:s,settings:i,hideLabel:a,component:l,resetSectionVars:c,section:d}=e,p=useDispatch(),m=useContext(Lt),y=H(w=>w.status.query),{sectionVariables:b,resetSectionVariables:h}=Re(d),g=Nv(r),L=useMemo(()=>y[g]||o,[y[g],t,o]),O=useMemo(()=>Dv(y[g],o),[y[g],t,o]),[I,x]=useState(n?.map(w=>({value:w.id,label:w.label,imageUrl:w.imageUrl}))||[]),[k,N]=useState((n||[]).map(w=>w.id).join("-"));useEffect(()=>{let w=n.map(C=>`${C.label}|${C.id}`).join("-");if(k===w)return;N(w);let $=n.map(C=>({value:C.id,label:C.label}));x($);let G=t===Te.SINGLE?L:O;ar(t,G,n)||p(Ws(m,g));},[JSON.stringify(n),r]);let A=()=>{c==="true"&&b&&h();},E=w=>{p(hr(m,g,w)),A();},v=w=>{p(hr(m,g,w.join())),A();},M=a==="true"?jsx(Fragment,{}):jsx(ee,{component:"div",html:s,size:"sm",style:i,isPreview:!0});return I.length===0?jsx(Text,{c:"dimmed",size:"xs",children:"No options defined yet. Selector hidden in report."}):I.length===1?jsxs(Text,{c:"dimmed",size:"xs",children:["Only one option defined. Selector hidden in report. ",JSON.stringify(I)]}):{[Te.SINGLE]:l===Zo.SEGMENTED_CONTROL?jsxs("div",{children:[M,jsx(SegmentedControl,{data:I,value:I.map(w=>w.value).includes(L)?L:"",onChange:E,fullWidth:!0})]}):jsx(Select,{label:M,data:I,value:L,onChange:E,itemComponent:Fv,styles:{label:{display:a==="true"?"none":"block"}}}),[Te.MULTI]:jsx(MultiSelect,{label:M,data:I,value:O,onChange:v,styles:{label:{display:a==="true"?"none":"block"}}})}[t]}var Nv,Dv,Fv,Ap=S(()=>{u();Ro();Xo();me();pe();Ht();Ee();xe();Nv=e=>`selector${e}id`,Dv=(e,r)=>e&&typeof e=="string"?e.split(","):r,Fv=forwardRef(function({imageUrl:r,label:t,...o},n){return jsx("div",{ref:n,...o,children:jsxs(Group,{noWrap:!0,children:[r&&jsx(Box,{component:"img",w:25,h:25,src:r}),jsx("div",{children:jsx(Text,{size:"sm",children:t})})]})})});});var Pp=S(()=>{});function Xi({dimmed:e=!1,label:r,root:t=!0,value:o,parentIsArray:n=!1,level:s=0}){let i=useMantineTheme();if(s===Ji)return null;let a=jsx(Text,{lineClamp:1,size:"xs",variant:"dimmed",p:5,children:"[Max depth hitted for preview]"}),l=Zi(o),c=o,d=JSON.stringify(o),p=!!(d&&d.length>50),m=!!(d&&d.length>1e3),y=10,b={control:{padding:"5px 0px 5px 5px"},label:{padding:"5px 0px"},content:{paddingTop:0,paddingBottom:0,paddingRight:0}};if(l==="object")return jsx(Accordion,{className:"cr-variable-accordion",variant:"contained",styles:b,children:jsxs(Accordion.Item,{value:"label",children:[jsx(Accordion.Control,{children:jsx(Text,{lineClamp:1,size:"xs",weight:700,color:e?"dimmed":i.primaryColor,children:t?`{{${r}}}`:n?`[${r}]`:r})}),jsx(Accordion.Panel,{children:s+1<Ji?Object.keys(o).sort((h,g)=>{let L=Zi(o[h]),O=Zi(o[g]);return L!==O?Ip.indexOf(L)-Ip.indexOf(O):h.localeCompare(g)}).map(h=>jsx(Xi,{root:!1,label:h,value:o[h],level:s+1},h)):a})]})});if(l==="array"){let h=o.length>y,g=h?o.slice(0,y):o,L=h?o.length-y:0;return jsx(Accordion,{className:"cr-variable-accordion",variant:"contained",styles:b,children:jsxs(Accordion.Item,{value:"label",children:[jsx(Accordion.Control,{children:jsx(Text,{lineClamp:1,size:"xs",weight:700,p:0,color:e?"dimmed":i.primaryColor,children:t?`{{${r}}}`:n?`[${r}]`:r})}),jsxs(Accordion.Panel,{children:[s+1<Ji?g.map((O,I)=>jsx(Xi,{root:!1,label:I,value:O,level:s+1,parentIsArray:!0},I)):a,h&&jsxs(Text,{lineClamp:1,size:"xs",variant:"dimmed",p:5,children:["[+ ",L," other elements]"]})]})]})})}return l==="string"?c=m?`"${c.substring(0,1e3)} ... "`:`"${c}"`:l==="error"?c=`Error: ${c.message}`:l==="undefined"?c=l:c.toString&&(c=c.toString()),jsxs(Group,{noWrap:!0,spacing:0,children:[jsx(Text,{color:e?"dimmed":i.primaryColor,lineClamp:1,size:"xs",pl:5,style:{overflow:"visible",wordBreak:"keep-all",whiteSpace:"nowrap"},weight:700,children:t?`{{${r}}}`:n?`[${r}]`:r}),jsx(Prism,{className:"cr-variable",language:"jsx",noCopy:!0,scrollAreaComponent:"div",styles:{root:{flex:"1 1 100%",textAlign:"right",overflow:"hidden"},code:{padding:"5px 0 5px 5px"},scrollArea:{marginLeft:"5px"},line:{paddingRight:"5px"}},children:c}),p&&jsxs(HoverCard,{width:400,shadow:"md",withinPortal:!0,children:[jsx(HoverCard.Target,{children:jsx(ActionIcon,{children:jsx(IconCodePlus,{})})}),jsx(HoverCard.Dropdown,{children:jsx(Text,{size:"sm",children:JSON.stringify(o).substring(0,5e3)})})]})]})}var Zi,Ip,Ji,wp,Lp=S(()=>{u();Pp();Zi=e=>{let r=typeof e;if(r==="object"){if(e===null)return "undefined";Array.isArray(e)?r="array":["Error","EvalError","ReferenceError","SyntaxError"].includes(e.constructor.name)&&(r="error");}return r},Ip=["object","array","string","number"],Ji=5;wp=Xi;});var Op,Bp=S(()=>{u();Op=e=>r=>r.replace(new RegExp(`^${e}`),"").startsWith("_");});function Wv({reserved:e=[],id:r,variables:t={},showInternal:o=!1}){let s=it(r==="attributes"?null:r).data,i=s?s.type:"block",a=s?.type&&s?.id?`${s.type}${s.id}`:"",l=Object.keys(t).filter(o?()=>!0:c=>!Op(a)(c));return jsx(Stack,{spacing:0,children:l.length?l.map(c=>jsx(wp,{dimmed:e.includes(c),label:c,value:t[c]},c)):jsx(Text,{color:"dimmed",size:"xs",children:jsx("i",{children:`empty ${i}`})})})}var _p,Mp=S(()=>{u();Lp();pe();Bp();_p=Wv;});function rS({outputVariables:e,status:r,hasAPI:t=!1,debug:o,type:n}){let[s,i]=useState(!1),a=t&&!Object.keys(e).length&&!r.error,l=Object.keys(e).some(d=>d.startsWith("_"));return o?a?jsxs(Stack,{align:"center",children:[jsx(Loader,{}),jsxs(Text,{size:"sm",children:["Loading ",{type:n}]})]}):jsxs(Fragment,{children:[jsx(Divider,{label:"Output Variables",labelPosition:"center"}),l&&jsx(Switch,{label:"Show internal variables",mb:"xs",size:"xs",checked:s,onChange:d=>i(d.currentTarget.checked)}),jsx(_p,{variables:e,showInternal:s})]}):jsx(Center,{children:jsx(Badge,{color:"gray",variant:"outline",children:n.toUpperCase()},"type")})}var ta,Np=S(()=>{u();Mp();ta=rS;});function ra(e){let{alt:r,src:t,desc:o,title:n,settings:s,...i}=e,a=Be(r),l=Be(t),c=Be(o),d=jsx("img",{src:l,alt:a,style:i}),p=s&&s.align?String(s.align):"left";return (c&&c.length||n&&n.length)&&(d=jsxs(Stack,{className:"bespoke-Image-wrapper",align:yt(p),spacing:"sm",children:[n&&jsx(ee,{component:"p",html:n,style:s,isPreview:!0}),d,o&&jsx(ee,{component:"p",size:"sm",html:o,style:s,isPreview:!0})]})),l&&a?d:jsx(Center,{mih:100,bg:"white",children:jsx(Badge,{color:"gray",variant:"outline",children:"IMAGE"},"type")})}var Dp=S(()=>{u();yr();Ee();_e();});var oa=S(()=>{u();Ht();});var Fp=S(()=>{u();pe();oa();});var zp=S(()=>{u();oa();Fp();Ai();});function ia({headings:e,settings:r}){let{min:t="1",max:o="6",icons:n="yes"}=r||{},s=Xr(parseInt(t,10),parseInt(o,10),e),i=n==="yes",a=Yr(r&&r.align?String(r.align):"left"),l=c=>!c||!c?.length?null:jsx(Fragment,{children:c.map(d=>jsxs(Fragment$1,{children:[jsx(Menu.Item,{children:jsx(Anchor,{href:`#bespoke-title-${d.id}`,children:jsxs(Group,{spacing:"sm",children:[i&&jsx(Pe,{...d.iconProps,iconSize:"sm"}),jsx(Text,{dangerouslySetInnerHTML:{__html:d.label}})]})})},d.id),jsx(Box,{pl:"xs",children:l(d.children)})]},d.id))});return jsx(Box,{pos:"relative",children:jsxs(List,{sx:c=>({display:"flex",gap:c.spacing.md,justifyContent:a,listStyleType:"none"}),children:[s?.map(c=>jsx(List.Item,{children:jsxs(Menu,{trigger:"hover",openDelay:100,closeDelay:400,children:[jsx(Menu.Target,{children:jsx(Anchor,{href:`#bespoke-title-${c.id}`,children:jsxs(Group,{spacing:"sm",noWrap:!0,children:[i&&jsx(Pe,{blockType:"nav",...c.iconProps,iconSize:"sm",iconPadding:"2"}),jsx(Text,{dangerouslySetInnerHTML:{__html:c.label}})]})})}),c?.children?.length?jsx(Menu.Dropdown,{children:l(c.children)}):null]})},c.id)),!s||s.length===0&&jsx(List.Item,{children:jsx(Text,{color:"dimmed",children:"- Include some titles as inputs to see the Nav component -"})})]})})}var Gp=S(()=>{u();zp();vr();_e();});function la(e){let{related_reports:r,settings:t}=e;if(!r?.length)return jsx(Text,{children:"There are no available members related to your current selection and report."});let o=Yr(t&&t.align?String(t.align):"left");return jsx(List,{sx:()=>({display:"flex",justifyContent:o}),children:r.map(n=>jsx(List.Item,{children:n.name},n.content_id))})}var Hp=S(()=>{u();_e();});function ua({id:e,label:r,settings:t,showIcon:o,fullWidth:n,showWhenDisabled:s}){let i=it(e).data,{sectionVariables:a,resetSectionVariables:l}=Re(i?.section_id),c=!!Object.keys(a).length,d=yt(t&&t.align?t.align:"left");return jsxs(Stack,{align:d,children:[!c&&!s&&jsx(Text,{size:"xs",ta:t?.align||"left",children:"Reset button will not be shown on its disabled state"}),jsx(Button,{onClick:()=>l(),disabled:!c,fullWidth:n,children:jsxs(Group,{align:"center",children:[r,o&&jsx(IconRefresh,{})]})})]})}var Wp=S(()=>{u();xe();xe();_e();});function pa({settings:e,label:r,showIcon:t,position:o="center"}){let n=e&&e.search?e.search:"";return jsxs(Group,{position:o,children:[jsx(Tooltip,{label:`Click will open '${n}' report search`,children:jsx(Button,{children:jsxs(Group,{align:"center",children:[r||"Comparison Button",t&&jsx(IconPlus,{})]})})}),jsx(ActionIcon,{variant:"light",children:jsx(IconSearch,{size:20})})]})}var Qp=S(()=>{u();});function ma({columns:e=[],id:r,data:t=[],tableProps:o={}}){let[n,s]=useState({}),{initialState:i}=o,a=i?.pagination?.pageIndex,l=i?.pagination?.pageSize,c=`table-${[r,a,l].filter(b=>b).join("-")}`,d=useMemo(()=>e.map(b=>b.accessorKey),[e]),p=useMemo(()=>t.filter(b=>typeof b=="object"&&b!==null&&!Array.isArray(b)&&Object.keys(b).some(h=>d.includes(h))),[d,t]),m=useMemo(()=>e.map(b=>({...b,Cell:({renderedCellValue:h})=>jsx(ee,{html:`${h}`,isPreview:!0}),filterFn:"contains"})),[e]),y=Jl();return useEffect(()=>{(async()=>{try{let h=y||"en",g=`${h.toUpperCase()}`,L=await import(`mantine-react-table/locales/${h}.js`);s(L[`MRT_Localization_${g}`]);}catch(h){console.error("Error loading translations:",h);}})();},[y]),createElement(MantineReactTable,{...o,autoResetPageIndex:!1,columns:m,data:p,enableColumnFilterModes:!0,enableFilterMatchHighlighting:!1,globalFilterFn:"contains",key:c,layoutMode:"grid",localization:n,state:{...o.state,isFullScreen:!1}})}var Zp=S(()=>{u();Ee();xe();});function fa({label:e,url:r,settings:t}){let{align:o}=t;return jsx(Group,{position:o,grow:o==="justify",children:jsx(Button,{component:"a",target:"_blank",href:r||"",children:e||"Button"})})}var Xp=S(()=>{u();});function ha(e){let r=useDispatch(),t=useContext(Lt),o=H(z=>z.status.query),n=qS(e.id),s=useMantineTheme(),{allLabel:i,colorKey:a,data:l,defaultValue:c,defaultValueType:d,iconKey:p,levels:m,limit:y,placeholder:b,searchIndexKey:h,searchIndexSeparator:g,resetSectionVars:L,section:O}=e,[I,x]=useState(!1),[k,N]=useState(!0),[A,E]=useState(""),[v,M]=useState(!1),[w,$]=useState([""].slice(1)),{sectionVariables:G,resetSectionVariables:C}=Re(O),B=useMemo(()=>HS(o[`${n}-value`],c),[o,c,n]),W=useMemo(()=>o[`${n}-type`]||d,[o,d,n]),K=useCallback(()=>{L==="true"&&G&&C();},[L,G,C]),V=useCallback(z=>{K(),r(hr(t,`${n}-value`,z.join()));},[r,t,n,K]),re=useCallback(z=>{K(),r(hr(t,`${n}-type`,z));},[r,t,n,K]),te=useRef(null),j=useRef(!1),D=useRef(!!y&&y<B.length),Y=w.length,U=m[Y],q=w.filter(Boolean);w.length>0&&q.length===0&&q.push(`${i} ${U?.label}`),useEffect(()=>{let z=()=>{N(!0);};return window.addEventListener("touchmove",z),()=>{window.removeEventListener("touchmove",z);}},[]);let F=useMemo(()=>$S(l,m,a,p,h,g),[a,l,p,m,h,g]),_=useMemo(()=>{let z=US(A),se=Array.from(GS(F,z)).reverse();return v?se:w.reduce((P,J)=>P.filter(Q=>!J||Q.searchindex.indexOf(J)>-1),se.filter(P=>P.type===U?.value))},[U,F,A,v,w]),[X,Z]=useState(-1),ce=Math.min(X,_.length-1),oe=useCallback(z=>{let se=w.concat(z);v&&M(!1),$(se);},[v,w]),Oe=useCallback(()=>{let z=w.slice(0,Y-1);v&&M(!1),$(z);},[v,w,Y]),fe=useCallback(z=>{E(z.currentTarget.value),!D.current&&l.length>0&&x(!0);},[l,E,D,x]),Fe=useCallback(()=>{E(""),V([]),te.current?.focus(),y&&(D.current=!1);},[E,V,te,y,D]),ye=useCallback(z=>{let se=B.filter(P=>P!==z);V(se),y&&se.length<y&&(D.current=!1);},[B,V,y,D]),ct=useCallback(z=>{W||re(z.type),W!==z.type?(re(z.type),V([z.value])):B.includes(z.value)?ye(z.value):y?(B.length<y&&V([...B,z.value]),B.length===y&&V([...B.slice(1),z.value])):V([...B,z.value]);},[W,re,V,B,ye,y]),co=useCallback(()=>{B.length>0&&A.length===0&&(V(B.slice(0,-1)),x(!0),y&&(D.current=!1)),A.length>0&&E(A.slice(0,-1));},[B,A,V,E,x,y,D]),ut=useCallback(()=>{N(z=>z&&(j.current=z,!z)),Z(z=>z+1>=_.length?z:z+1);},[Z,_]),rr=useCallback(()=>{let z=_[ce];z&&ct(z);},[_,ce,ct]),or=useCallback(()=>{x(!1);},[x]),uo=useCallback(()=>{Z(()=>(Oe(),0));},[Z,Oe]),ts=useCallback(()=>{let z=_[ce];!v&&z&&z.type!==m[m.length-1]?.value&&Z(()=>(oe(z.name),0));},[_,ce,v,m,Z,oe]),rs=useCallback(()=>{N(z=>z&&(j.current=z,!z)),Z(z=>z-1<0?0:z-1);},[Z]),qo=useRef(null),At=Pn({count:_.length,estimateSize:()=>30,getScrollElement:useCallback(()=>qo.current,[]),overscan:10,rangeExtractor:useCallback(z=>Oo(z),[])}),os=({label:z,onRemove:se,...P})=>jsxs("div",{style:{alignItems:"center",backgroundColor:s.colorScheme==="dark"?s.colors.dark[7]:s.colors.gray[1],borderRadius:s.radius.sm,cursor:"default",color:s.colorScheme==="dark"?s.colors.dark[0]:s.colors.gray[7],display:"flex",fontSize:rem(12),fontWeight:500,height:rem(22),margin:`calc(${s.spacing.xs} / 2 - ${rem(2)}) calc(${s.spacing.xs} / 2)`,maxWidth:`calc(100% - ${rem(10)})`,paddingLeft:`calc(${s.spacing.sm} / 1.5)`,paddingRight:0,userSelect:"none"},...P,children:[jsx("span",{style:{display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:z}),jsx(CloseButton,{"aria-hidden":!0,iconSize:"70%",onMouseDown:se,radius:2,size:"sm",sx:{color:s.colorScheme==="dark"?s.colors.dark[0]:s.colors.gray[7],marginLeft:`calc(${s.spacing.sm} / 6)`},tabIndex:-1})]}),ns=useMemo(()=>B.map(z=>F.find(se=>se.value===z)).filter(z=>!!z).map((z,se)=>createElement(os,{...z,index:se,key:z.value,onRemove:P=>{P.preventDefault(),P.stopPropagation(),ye(z.value);}})),[B]),Ho=forwardRef(function({color:se,icon:P,label:J,value:Q,...ze},de){return jsx("div",{ref:de,style:{cursor:"pointer",width:"100%"},...ze,children:jsxs(Group,{align:"center",noWrap:!0,spacing:"xs",w:"100%",children:[P&&jsx(Box,{bg:se??"transparent",component:"img",w:20,h:20,src:P}),jsx(Text,{lineClamp:1,size:"sm",children:J||Q})]})})}),{settings:Pt}=e,ss=e.hideLabel==="true"||!e.label?jsx(Fragment,{}):jsx(ee,{component:"div",html:e.label,size:"sm",style:Pt,isPreview:!0});return jsx(Input.Wrapper,{label:ss,children:jsxs(Popover,{closeOnClickOutside:!0,keepMounted:!0,opened:I,onChange:x,onClose:()=>{Z(0),E("");},onOpen:()=>{At.scrollToIndex(0);},shadow:"sm",width:"target",withinPortal:!0,children:[jsx(Popover.Target,{children:jsxs(Box,{"aria-haspopup":"listbox",component:"div",onMouseLeave:()=>Z(0),sx:{position:"relative","& .defaultValue":{backgroundColor:s.colorScheme==="dark"?s.colors.dark[5]:s.colors.gray[3],color:s.colorScheme==="dark"?s.colors.dark[1]:s.colors.gray[7]}},tabIndex:-1,children:[jsx("input",{type:"hidden",value:B.join(",")}),jsx(Input,{component:"div",multiline:!0,onMouseDown:z=>{z.preventDefault(),!D.current&&l.length>0&&x(!I),te.current?.focus();},rightSection:B.length>0?jsx(CloseButton,{onClick:Fe,onMouseDown:z=>z.preventDefault(),variant:"transparent"}):jsx(IconSelector,{color:s.colors.gray[6],size:18,stroke:1.5}),style:{overflow:"hidden"},w:"100%",children:jsxs(Box,{component:"div","data-clearable":!0,sx:{alignItems:"center",boxSizing:"border-box",display:"flex",flexWrap:"wrap",marginLeft:`calc(-${s.spacing.xs} / 2)`,minHeight:`calc(${rem(36)} - ${rem(2)})`,"&[data-clearable]":{marginRight:rem(36)},"&::placeholder":{color:s.colorScheme==="dark"?s.colors.dark[3]:s.colors.gray[5],opacity:1}},children:[ns,jsx("input",{autoComplete:"off","data-mantine-stop-propagation":I,onChange:fe,onKeyDown:getHotkeyHandler([["ArrowDown",ut],["ArrowLeft",uo],["ArrowRight",ts],["ArrowUp",rs],["Backspace",co],["Enter",rr],["Escape",or]]),placeholder:B.length===0?b:void 0,ref:te,readOnly:D.current,style:{appearance:"none",backgroundColor:"transparent",border:0,color:"inherit",flex:1,fontSize:s.fontSizes.sm,marginLeft:`calc(${s.spacing.xs} / 2)`,maxHeight:rem(22),minWidth:rem(60),outline:0,padding:0},type:"search",value:A})]})})]})}),jsx(Popover.Dropdown,{onMouseDown:z=>z.preventDefault(),p:0,children:jsx("div",{style:{display:"flex",maxHeight:rem(300)},children:jsx(Box,{component:"div","data-combobox-popover":!0,onMouseDown:z=>z.preventDefault(),role:"listbox",sx:{width:"100%"},tabIndex:-1,children:jsxs(Stack,{h:"100%",py:"xs",spacing:"xs",w:"100%",children:[m.length>1&&jsxs(Stack,{spacing:"xs",children:[jsxs(Group,{onClick:z=>{z.stopPropagation();},px:"xs",position:"center",spacing:"xs",children:[jsx(Button,{onClick:()=>{Z(0),M(!0),$([]),_.length>0&&At.scrollToIndex(0);},size:"xs",variant:v?"filled":"outline",children:i}),m.map((z,se)=>jsx(Button,{onClick:()=>{v&&M(!1);let P=[""].slice(1),J=se;for(;J--;)P[J]=w[J]||"";Z(0),$(P),_.length>0&&At.scrollToIndex(0);},size:"xs",variant:!v&&w.length===m.findIndex(P=>P.value===z?.value)?"filled":"outline",children:z?.label},z?.value))]}),jsx(Divider,{})]}),Y>0&&jsxs(Group,{align:"center",noWrap:!0,px:"xs",children:[jsx(ActionIcon,{onClick:Oe,size:"sm",children:jsx(IconChevronLeft,{})}),jsx("div",{children:q.map(z=>jsx(Text,{lineClamp:1,size:"xs",children:z},`${z}`))})]}),jsx(ScrollArea,{mah:250,onWheel:()=>N(!0),px:"xs",style:{overflow:"auto",width:"100%"},viewportRef:qo,viewportProps:{tabIndex:-1},w:"100%",children:jsx("div",{style:{height:`${At.getTotalSize()}px`,position:"relative",width:"100%"},children:At.getVirtualItems().map(z=>{let se=_[z.index],P=ce===z.index,J=B.includes(se.value);return _.length>0&&P&&!k&&At.scrollToIndex(ce),jsxs(Group,{"aria-selected":P,align:"center","data-hovered":P||void 0,"data-index":z.index,"data-selected":J,id:se.vale,noWrap:!0,onMouseEnter:Q=>{Q.preventDefault(),Q.stopPropagation(),k&&(Z(z.index),N(!1));},onMouseMove:Q=>{Q.preventDefault(),Q.stopPropagation(),N(!0);},onMouseDown:Q=>{Q.preventDefault(),ct(se);},position:"apart",ref:At.measureElement,role:"option",spacing:"xs",sx:Q=>({borderRadius:Q.radius.xs,padding:"15px 5px 15px",paddingLeft:v&&10*m.findIndex(ze=>ze?.value===se.type)||5,position:"absolute",top:0,left:0,height:`${z.size}px`,transform:`translateY(${z.start}px)`,width:"100%","&[data-hovered]":{backgroundColor:Q.colorScheme==="dark"?Q.colors.dark[4]:Q.colors.gray[1]},"&:hover":{backgroundColor:Q.colorScheme==="dark"?Q.colors.dark[4]:Q.colors.gray[1]}}),tabIndex:-1,children:[jsx(Ho,{index:z.index,...se}),!v&&se.type!==m[m.length-1]?.value&&jsx(ActionIcon,{onMouseDown:Q=>{Q.preventDefault(),Q.stopPropagation(),oe(se.name);},size:"sm",tabIndex:-1,children:jsx(IconChevronRight,{})})]},se.value)})})})]})})})})]})})}var $S,US,GS,qS,HS,id=S(()=>{u();Ti();Ee();Ht();pe();xe();Ro();$S=(e=[],r=[],t="",o="",n="",s="|")=>{let i=r.map(h=>h.value).slice(),a=`${i.pop()}`,l=h=>h[t],c=h=>h[o],d=h=>{if(h[n])return typeof h[n]=="string"?h[n].split(s):h[n]},p=new Set,m=[],y=[],b=nest().rollup(h=>{let g=h[0],L=v=>v&&v.value&&!p.has(v.value),O=i.map(v=>g[`${v} ID`]),I=i.map(v=>g[v]),x=i.map((v,M)=>{if(y[M]!==I[M]){y[M]=I[M];let w=l[M]||l[l.length-1]||l,$=c[M]||c[c.length-1]||c,G=d[M]||d[d.length-1]||d;return {color:w(g,v)||void 0,icon:$(g,v)||void 0,value:`${O[M]}`,label:I[M],name:I[M],type:v,searchindex:I.slice(0,M+1).concat(G(g,v)).join("|")}}return {}}).filter(L);x.forEach(v=>p.add(v.value));let k=l[l.length-1]||l,N=c[c.length-1]||c,A=d[d.length-1]||d,E=h.map(v=>({color:k(v,a)||void 0,icon:N(v,a)||void 0,value:`${v[`${a} ID`]}`,label:v[a],name:v[a],type:a,searchindex:I.concat(v[a]).concat(A(v,a)).join("|")}));m.push(...x.concat(E));});return i.forEach(h=>{b.key(g=>`${g[`${h} ID`]}|${g[h]}`);}),b.entries(e),m},US=e=>{if(!e)return /./i;let r=e.normalize("NFD").replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/[\u0300-\u036f]/g,"").replace(/\s+/g,"[^|]+");return RegExp(r,"i")},GS=(e,r)=>{let t=e.length,o,n=a=>o&&o.searchindex.includes(a.searchindex),i={next:()=>{for(let a=t-1;a>-1;a--){let l=e[a];if(r.test(`${l.value} ${l.label} ${l.searchindex}`)||n(l))return o=l,t=a,{done:!1,value:l}}return {done:!0,value:void 0}},[Symbol.iterator]:()=>i};return i},qS=e=>`multihierarchySelector${e}`,HS=(e,r)=>e&&typeof e=="string"?e.split(","):r;});var ld={};as(ld,{default:()=>rT});function tT({block:e,active:r,locale:t,variables:o,debug:n,configOverride:s={}}){let i=XS(),a=Ve(e),l=qt(t),c={variables:o},d=useRouter(),{sectionVariables:p,setSectionVariables:m,resetSectionVariables:y}=Re(e.section_id),b=useMemo(()=>{if(!r)return {error:"Activate to View"};if(!a?.logic)return {error:"Add a Configuration"};let v=mt({logic:a.logic},l,c).logic,M={router:d,section:{variables:p,setVariables:m,resetVariables:y}};return eo(v,l,o,t,e.id,{},M)},[a?.logic,r,o,p]);useMemo(()=>{if(!r||!a?.logic)return {};let{logic:v}=a,{vars:M}=Qe("variables",o,v,l,void 0,c);return M},[e,r]);let {type:g}=b.config||{},L=g&&ya[g]?g:"Treemap";g||(b.config={error:'Visualization missing "type"'}),ya[g]||(b.config={error:`"${g}" is not a valid Visualization Type`});let O=ya[L],I=b.error||b.config?.error||!1;if(I)return jsx(Center,{style:{height:"100%"},children:jsx(Badge,{color:"gray",variant:"outline",children:I},"type")});let{_data:x,...k}=b.config,N={locale:t,variables:o,...k,...s};i.print&&(N.detectVisible=!1);!i.print&&g!=="Graphic"&&g!=="HTML";return jsx("div",{style:{display:"flex",flex:"1 1 100%"},children:jsx(Er,{fallback:jsx("p",{children:"Error in d3plus viz config."}),children:jsx(O,{style:{flex:1},dataFormat:v=>{b.data&&Array.isArray(b.data)&&b.data.length>1&&b.data.some(G=>typeof G=="string")?v:[v];let $;try{$=b.dataFormat(v);}catch(G){console.log("Error in dataFormat: ",G),$=[];}return $},linksFormat:b.linksFormat,nodesFormat:b.nodesFormat,topojsonFormat:b.topojsonFormat,config:{...N}},"viz-key")})})}var XS,eT,ya,rT,cd=S(()=>{u();Mr();_r();Vi();Dn();Fr();xe();zi();XS=()=>({}),eT={},ya={HTML:Mo,...lv,...eT};rT=memo(tT,(e,r)=>e.block.contentByLocale.logic.content===r.block.contentByLocale.logic.content&&e.active===r.active&&e.locale===r.locale&&JSON.stringify(e.variables)===JSON.stringify(r.variables)&&JSON.stringify(e.configOverride)===JSON.stringify(r.configOverride));});var nT,we,ud=S(()=>{u();me();vp();Tp();xp();Ep();Ap();Np();Dp();Gp();Hp();Wp();Qp();Zp();Xp();id();nT=pv(()=>Promise.resolve().then(()=>(cd(),ld)),{ssr:!1}),we={[f.PARAGRAPH]:Gi,[f.STAT]:qi,[f.SUBTITLE]:Hi,[f.TITLE]:ji,[f.SELECTOR]:Yi,[f.VIZ]:nT,[f.GENERATOR]:ta,[f.SECTION_FLAG]:ta,[f.IMAGE]:ra,[f.NAV]:ia,[f.RELATED]:la,[f.RESET_BUTTON]:ua,[f.COMPARISON_BUTTON]:pa,[f.TABLE]:ma,[f.BUTTON]:fa,[f.MULTIHIERARCHY_SELECTOR]:ha};});var pd=S(()=>{u();me();({[f.TITLE]:IconHeading,[f.GENERATOR]:IconApi,[f.SECTION_FLAG]:IconFlag,[f.STAT]:IconPercentage,[f.VIZ]:IconChartBar,[f.PARAGRAPH]:IconAlignLeft,[f.SELECTOR]:IconSelector,[f.IMAGE]:IconPhoto,[f.TABLE]:IconTable,[f.MULTIHIERARCHY_SELECTOR]:IconListTree});});var dd=S(()=>{u();me();({[f.TITLE]:"Title",[f.GENERATOR]:"Data",[f.STAT]:"Stat",[f.VIZ]:"Visualization",[f.PARAGRAPH]:"Paragraph",[f.SELECTOR]:"Selector",[f.SUBTITLE]:"Subtitle",[f.RESET_BUTTON]:"Reset Button",[f.COMPARISON_BUTTON]:"Comparison Button",[f.RELATED]:"Related Reports",[f.NAV]:"Navigation",[f.IMAGE]:"Image",[f.TABLE]:"Table",[f.BUTTON]:"Button",[f.FALLBACK]:"Fallback",[f.SECTION_FLAG]:"Section Flag",[f.MULTIHIERARCHY_SELECTOR]:"Multihierarchy Selector"});});var gT,ba,md=S(()=>{u();me();bp();ud();pd();dd();gT={[f.GENERATOR]:{type:f.GENERATOR,renderer:we[f.GENERATOR],renderPreviewOnEdit:!1},[f.SECTION_FLAG]:{type:f.SECTION_FLAG,renderer:we[f.SECTION_FLAG],renderPreviewOnEdit:!1},[f.IMAGE]:{type:f.IMAGE,renderer:we[f.IMAGE],renderPreviewOnEdit:!1},[f.PARAGRAPH]:{type:f.PARAGRAPH,renderer:we[f.PARAGRAPH],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.RELATED]:{type:f.RELATED,renderer:we[f.RELATED],renderPreviewOnEdit:!1,evalWhenNonActive:!0},[f.SELECTOR]:{type:f.SELECTOR,renderer:we[f.SELECTOR],adapter:Do[f.SELECTOR],nonActiveAdapter:()=>Do[f.SELECTOR]({name:"Selector Preview"}),renderPreviewOnEdit:!1},[f.STAT]:{type:f.STAT,renderer:we[f.STAT],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.SUBTITLE]:{type:f.SUBTITLE,renderer:we[f.SUBTITLE],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.TITLE]:{type:f.TITLE,renderer:we[f.TITLE],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.VIZ]:{type:f.VIZ,renderer:we[f.VIZ],renderPreviewOnEdit:!1},[f.NAV]:{type:f.NAV,renderer:we[f.NAV],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.RESET_BUTTON]:{type:f.RESET_BUTTON,renderer:we[f.RESET_BUTTON],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.COMPARISON_BUTTON]:{type:f.COMPARISON_BUTTON,renderer:we[f.COMPARISON_BUTTON],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.TABLE]:{type:f.TABLE,renderer:we[f.TABLE],renderPreviewOnEdit:!1,evalWhenNonActive:!1},[f.BUTTON]:{type:f.BUTTON,renderer:we[f.BUTTON],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.MULTIHIERARCHY_SELECTOR]:{type:f.MULTIHIERARCHY_SELECTOR,renderer:we[f.MULTIHIERARCHY_SELECTOR],adapter:Do[f.MULTIHIERARCHY_SELECTOR],nonActiveAdapter:()=>Do[f.MULTIHIERARCHY_SELECTOR]({label:"Multihierarchy Selector Preview"}),renderPreviewOnEdit:!1}},ba=gT;});function Gn({blockId:e,active:r=!0,asComparison:t=!1}){let{query:o,locale:n=nt}=useRouter(),s=Ge(),i=it(e).data,a=Hr(e,t&&s.active?s?.variables.variables:void 0,t&&s.active?s?.variables.attributes:void 0),l=Ve(i,n),c=qt(n),d={variables:a,query:o,locale:n},p=H(L=>L.variables.variables[i.id]||{}),m=H(L=>L.variables.status[i.id]||{}),[y,b]=useState(()=>{if(![f.GENERATOR,f.VIZ,f.NAV].includes(i.type)){if(i?.type===f.SELECTOR){let I=Ve(i,n),{config:x}=Nr(i.id,I?.logic,c,d);return {...x,id:i.id,section:i.section_id}}if(i?.type===f.MULTIHIERARCHY_SELECTOR){let I=Ve(i,n),{config:x}=Dr(i.id,I.logic,c,d);return {...x,id:i.id,section:i.section_id}}if(i?.type===f.RESET_BUTTON)return {...l.simple,id:i.id,section:i.section_id};if(i?.type===f.COMPARISON_BUTTON)return {...l.simple,id:i.id,section:i.section_id};let L=It(l?.logic,c,d),{vars:O}=Qe("variables",a,L,c,void 0,d);return O}return null});useEffect(()=>{(async()=>{if(!i||i.type===f.GENERATOR)return;if(i.type===f.VIZ){b({block:i,locale:n,variables:a,active:r});return}if(!r&&!ba[i.type].evalWhenNonActive){let{nonActiveAdapter:x}=ba[i.type],k=x&&typeof x=="function"?x():{};b(k);return}if(i.type===f.GENERATOR){b({outputVariables:p});return}if(f.SELECTOR===i.type){let x=Ve(i,n),{config:k}=Nr(i.id,x.logic,c,d);b({...k,id:i.id,section:i.section_id});return}if(f.MULTIHIERARCHY_SELECTOR===i.type){let x=Ve(i,n),{config:k}=Dr(i.id,x.logic,c,d);b({...k,id:i.id,section:i.section_id});return}if(i.type===f.NAV){b({id:i.id,headings:i.inputs,section:i.section_id,settings:i.settings});return}if(i.type===f.RELATED){let{related_reports:x}=p;b({related_reports:x});return}if(i.type===f.RESET_BUTTON){b({id:i.id,...l.simple});return}if(i.type===f.COMPARISON_BUTTON){b({id:i.id,...l.simple});return}if(i.type===f.FALLBACK){b({id:i.id,...l});return}let O=It(l?.logic,c,d),{vars:I}=Qe("variables",a,O,c,void 0,d);if(i.type===f.TABLE){b({sectionId:i.section_id,...I});return}b(I);})();},[l,a]);let h=m.allowed||i?.type===f.NAV;if(!i||!y||!h)return null;let g=pp[i.type];return jsx("div",{id:`bespoke-${i.type}-${i.id}`,className:`cms-block-wrapper bespoke-block-area cms-block-${e}`,children:jsx(g,{...y,settings:i.settings,asComparison:t})})}var gd=S(()=>{u();me();dp();md();Fr();xe();Jo();_r();an();ys();vs();Nt();});var hd,vT,yd,qn,Hn=S(()=>{u();hd={margin:{label:"Content Margin",defaultValue:"md",options:[{label:"None",value:"0px"},{label:"Small",value:"sm"},{label:"Medium",value:"md"},{label:"Large",value:"lg"}]},columnGutter:{label:"Column Gutter",defaultValue:"md",options:[{label:"None",value:"0px"},{label:"Small",value:"sm"},{label:"Medium",value:"md"},{label:"Large",value:"lg"}]},width:{label:"Width",defaultValue:"full",options:[{label:"Full Width",value:"full"},{label:"Center",value:"center"}]},position:{label:"Position",defaultValue:"normal",options:[{label:"Normal",value:"normal"},{label:"Sticky",value:"sticky"}]},style:{label:"Style",defaultValue:"none",options:[{label:"None",value:"none"},{label:"Card",value:"card"}]}},vT=Object.keys(hd).reduce((e,r)=>(e[r]=hd[r].defaultValue,e),{}),yd={memberImageBg:!1,optionsMenu:!1,optionData:!0,optionImage:!0,optionShare:!0,...vT},qn=e=>({data:typeof e.optionData=="boolean"?e.optionData:!0,image:typeof e.optionImage=="boolean"?e.optionImage:!0,share:typeof e.optionShare=="boolean"?e.optionShare:!0});});function bd({previews:e}){let r=e.map((t,o)=>({key:t?`bg-${t.content_id}`:`bg-${o}`,src:t?`/api/cms/member/image?member=${t.content_id}&size=splash`:""}));return jsxs(Fragment,{children:[jsx(Group,{className:"cms-section-bg",grow:!0,spacing:0,style:{position:"absolute",width:"100%",height:"100%"},children:r.map(t=>jsx("div",{className:"cms-section-member-bg",style:{backgroundImage:`url(${t.src})`,backgroundSize:"cover",backgroundPosition:"center center",height:"100%",width:"100%"}},t.key))}),jsx("div",{className:"cms-section-gradient-bg",style:{background:"white",position:"absolute",width:"100%",height:"100%",opacity:.33}})]})}var vd=S(()=>{u();});function Sd({data:e}){let o=(e&&Array.isArray(e)&&e[0]?Object.keys(e[0]):[]).filter(n=>!n.startsWith("_")).map(n=>({accessorKey:n,header:n,enableSorting:!0,mantineTableBodyCellProps:{sx:{textWrap:"wrap"}}}));return jsx(MantineReactTable,{columns:o,data:e,enableBottomToolbar:!1,enableColumnActions:!1,enablePagination:!1,enableSorting:!0,enableTopToolbar:!1,initialState:{density:"xs"},layoutMode:"grid",mantineTableContainerProps:{sx:{minHeight:100,maxHeight:350}}})}var Td=S(()=>{u();});function lo(e){let r={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#x27;":"'","&#x60;":"`","&nbsp;":""},t=`(?:${Object.keys(r).join("|")})`,o=RegExp(t),n=RegExp(t,"g"),s=String(e).replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim();return o.test(s)?s.replace(n,i=>r[i]):s}var Sa=S(()=>{u();});function Ta(e){return typeof e=="string"?String(e).replace(/&([a-z0-9]+|#[0-9]{1,6}|#x[0-9a-f]{1,6});/ig," "):e}var Rd=S(()=>{u();});function CT(e){return e?kT(Ta(lo(e)),{replacement:"-",remove:/[*+~.()'"!:@]/g,lower:!0,strict:!0,trim:!0}):""}var jn,Ra=S(()=>{u();Sa();Rd();jn=CT;});function Ad(e){let{section:r}=e,t=St(),o=useRouter(),n=H(F=>F.status.isCMS),s=H(F=>F.status.currentLocale),i=o.locale,a=n?s:i,l=50,c=qt(a),d=Ue("options"),p={...WT,...d.data_tab},[m,y]=useState([]),[b,h]=useState([]),[g,L]=useState(),[O,I]=useState(),[x,k]=useState(!1),[N,A]=useState({}),[E,v]=useState(!0),[M,w]=useState(!0),{sectionVariables:$,setSectionVariables:G,resetSectionVariables:C}=Re(r.id),B=r.blocks||[],W=H(F=>F),K=useMemo(()=>B.reduce((F,_)=>{let X=W.records.entities.block[_],Z=W.variables.variables[_],ce=W.variables.status[_];return (f.GENERATOR===X.type&&Z._downloadEnabled===!0&&ce.allowed||f.VIZ===X.type&&ce.allowed)&&(F[_]={entity:X,variables:W.variables.variables[_],status:W.variables.status[_],inputVariablesFlat:X.inputs.reduce((oe,Oe)=>({...oe,...W.variables.variables[Oe]}),W.variables.attributes)}),F},{}),[B]),V=F=>{h(_=>_.includes(F)?_:[..._,F]);},re=F=>{y(_=>(_.find(Z=>Z.ix===F.ix)?_:[..._,F]).sort((Z,ce)=>Z.ix>ce.ix?1:-1));};function te(F){!g&&F[0]&&j(F[0]);}function j(F){L(F),I("0");}useEffect(()=>{let F=async(_,X,Z)=>{let ce=dataLoad.bind({});return new Promise((oe,Oe)=>{ce(X,null,null,(fe,Fe)=>{if(fe)Oe(fe);else {let ye=Z instanceof Function?Z(Fe):Fe;_.data.unshift(ye),re(_),oe(Fe);}});})};if(m.length===0&&b.length===0){let _=0;for(let X of Object.values(K)){let Z=X.entity;if([f.GENERATOR,f.SECTION_FLAG].includes(Z.type)){let ce=X.variables._downloadData||X.variables._downloadUrl||X.status.api;if(ce){let oe=[];typeof ce=="string"?oe=ce.split(en):oe=[ce];let Oe=X.variables._downloadTitle||`${p.data_source} ${_+1}`,fe=X.variables._downloadFileName||Oe;re({ix:_,id:Z.id,title:lo(Oe),fileName:fe,data:Array.isArray(oe)?oe:[oe],loading:!1,type:f.GENERATOR}),V(_),_++;}}else if(Z.type===f.VIZ){let ce=Ve(Z),oe=X.inputVariablesFlat,Oe={variables:oe},fe=mt({logic:ce.logic},c,Oe).logic,Fe={router:o,section:{variables:$,setVariables:G,resetVariables:C}},ye=eo(fe,c,oe,a,Z.id,{},Fe),ct=ye.config._downloadTitle||ye.config.title||`${p.viz_source} ${_+1}`,co=ye.config._downloadFileName||ct;if(ye.config._downloadEnabled!==!1)try{let ut=ye.config._downloadUrl||ye.config.data,rr=typeof ut=="string"?[ut]:ut,or=ye.dataFormat instanceof Function?ye.dataFormat:!1,uo=ye.config._downloadDataFormat instanceof Function?ye.config._downloadDataFormat:!1;F({ix:_,id:Z.id,title:lo(ct),fileName:co,data:rr,loading:!1,type:f.VIZ},ut,uo||or),V(_),_++;}catch(ut){console.error("DataLoad catch",ut);}}}w(!1);}},[K]),useEffect(()=>{m.length===b.length&&te(m);},[m]),useEffect(()=>{if(g&&O){let F=parseInt(O,10);if(g.data[F]&&(!N[g.ix]||!N[g.ix][O])){v(!0);let _=g.data[O];typeof _=="string"?xs(_,t,a).then(X=>{let Z=KT(X);A({...N,[g.ix]:{...N[g.ix],[F]:Z}});}).catch(X=>{console.error(X);}).finally(()=>{v(!1);}):(A({...N,[g.ix]:{...N[g.ix],[F]:_}}),v(!1));}}},[O,g]);let D=(F,_)=>{let X=F===_?"":`-${F}`.toLowerCase();if(g){let Z=g.data.length>1&&O?`-${parseInt(O,10)+1}`:"";return `${jn(g.fileName)}${X}${Z}.${_.toLowerCase()}`}return `${X}.${_}`},Y=async F=>{if(g){k(!0);let _=new BT,X=D(F,F);try{switch(F){case Kn.json.extension:_.file(X,JSON.stringify(U));break;case Kn.csv.extension:_.file(X,csvFormat(U));break;case Kn.xlsx.extension:let{utils:Z,write:ce}=await import('xlsx'),oe=Z.book_new();Z.book_append_sheet(oe,Z.json_to_sheet(U),X.substring(0,30));let Oe=ce(oe,{bookType:"xlsx",bookSST:!0,type:"binary"});_.file(X,Oe,{binary:!0});break;default:break}_.generateAsync({type:"blob",compression:"DEFLATE",compressionOptions:{level:9}}).then(Z=>{k(!1),saveAs(Z,D(F,"zip"));});}catch(Z){console.error(p.error_generating,Z),k(!1);}}},U=useMemo(()=>g&&N[g.ix]&&N[g.ix][O]?N[g.ix][O]:[],[N,g,O]),q=useMemo(()=>m&&m.length>0&&m.length===b.length&&m.map((F,_)=>jsx(Button,{leftIcon:jsx(IconDatabase,{size:16}),onClick:()=>j(F),variant:g?.ix===_?"filled":"default",loading:F.loading,disabled:F.loading,children:F.title},`source-${F.id}-${_}`)),[m,g,b]);return jsxs(Stack,{className:"cms-section-options-data",children:[jsx(Space,{h:"xs"}),jsx(LoadingOverlay,{visible:M,overlayBlur:2}),m.length===0&&!M&&jsx(Alert,{icon:jsx(IconAlertCircle,{size:"1rem"}),title:"Oops!",children:p.no_data_src}),m.length>1&&m.length===b.length&&!M&&jsx(Input.Wrapper,{label:`${p.choose_data_src}:`,children:jsx(Group,{spacing:"xs",children:q})}),g&&O&&jsx(Stack,{spacing:"xs",children:jsx(Input.Wrapper,{label:`${p.preview}
58
+ a viverra sapien pulvinar.`,style:t,append:r?jsx(Ae,{content:r,style:{display:"inline-block",verticalAlign:"bottom"}}):jsx(Fragment,{}),isPreview:!0})}var vp=S(()=>{u();Bt();Ee();});function qi({subtitle:e,title:r,value:t,tooltip:o,settings:n,_iconType:s,_iconVariant:i,_icon:a,_iconRadius:l,_iconSize:c,_iconPadding:d}){let p=r||"<span class='cr-block-placeholder'>Title</span>",m=t||"<span class='cr-block-placeholder'>Big Stat</span>",y=e||"<span class='cr-block-placeholder'>Subtitle</span>",b=n&&n.align||"left";return jsx("div",{className:"bespoke-Stat-root",children:jsxs(Group,{className:"bespoke-StatGroup-wrapper",position:Xe(b),children:[s!=="none"&&s&&jsx(Pe,{blockType:"stat",iconType:s,iconVariant:i,iconRadius:l,iconSize:c,icon:a,iconPadding:d}),jsxs("div",{className:"bespoke-Stat-wrapper",children:[jsx(ee,{component:"div",size:"md",html:p,style:n,isPreview:!0}),jsx(ee,{component:"div",size:"xl",html:m,style:n,isPreview:!0}),jsx(ee,{component:"div",size:"sm",html:y,style:n,isPreview:!0})]},"stat"),o&&jsx(Ae,{content:o})]})})}var Tp=S(()=>{u();Bt();vr();Ee();_e();});function Hi({subtitle:e,tooltip:r,settings:t}){let o=Be(e)||"<span class='cr-block-placeholder'>Small subtitle.</span>",n=t&&t.align?t.align:"left";return jsxs(Group,{spacing:"sm",position:Xe(n),children:[jsx(ee,{size:"sm",html:o,isPreview:!0}),r&&jsx(Ae,{content:r,style:{display:"inline-flex"}})]})}var xp=S(()=>{u();Bt();yr();Ee();_e();});function ji({title:e,tooltip:r,_iconType:t,_iconVariant:o,_icon:n,settings:s,_iconRadius:i,_iconSize:a,_iconPadding:l}){let c=Be(e)||"Title",d=s&&s.order?parseInt(s.order,10):1,p=d<=6?d:1,m=!!(s&&s.search&&s.search!=="off"),y=s&&s.search?s.search:"",b=s&&s.align?s.align:"left";return jsxs(Group,{spacing:"sm",position:Xe(b),children:[t!=="none"&&t&&jsx(Pe,{blockType:"title",iconType:t,iconVariant:o,iconRadius:i,iconSize:a,icon:n,iconPadding:l}),jsx(ee,{component:"h",order:p,style:s,html:c,isPreview:!0}),m&&jsx(Tooltip,{label:`Click will open '${y}' report search`,children:jsx(ActionIcon,{variant:"light",children:jsx(IconSearch,{size:20})})}),r&&jsx(Ae,{content:r})]})}var Ep=S(()=>{u();Bt();yr();vr();Ee();_e();});function Yi(e){let{id:r,type:t,defaultValue:o,options:n,name:s,settings:i,hideLabel:a,component:l,resetSectionVars:c,section:d}=e,p=useDispatch(),m=useContext(Lt),y=H(w=>w.status.query),{sectionVariables:b,resetSectionVariables:h}=Re(d),g=Nv(r),L=useMemo(()=>y[g]||o,[y[g],t,o]),O=useMemo(()=>Dv(y[g],o),[y[g],t,o]),[I,x]=useState(n?.map(w=>({value:w.id,label:w.label,imageUrl:w.imageUrl}))||[]),[k,N]=useState((n||[]).map(w=>w.id).join("-"));useEffect(()=>{let w=n.map(C=>`${C.label}|${C.id}`).join("-");if(k===w)return;N(w);let $=n.map(C=>({value:C.id,label:C.label}));x($);let G=t===Te.SINGLE?L:O;ar(t,G,n)||p(Ws(m,g));},[JSON.stringify(n),r]);let A=()=>{c==="true"&&b&&h();},E=w=>{p(hr(m,g,w)),A();},v=w=>{p(hr(m,g,w.join())),A();},M=a==="true"?jsx(Fragment,{}):jsx(ee,{component:"div",html:s,size:"sm",style:i,isPreview:!0});return I.length===0?jsx(Text,{c:"dimmed",size:"xs",children:"No options defined yet. Selector hidden in report."}):I.length===1?jsxs(Text,{c:"dimmed",size:"xs",children:["Only one option defined. Selector hidden in report. ",JSON.stringify(I)]}):{[Te.SINGLE]:l===Zo.SEGMENTED_CONTROL?jsxs("div",{children:[M,jsx(SegmentedControl,{data:I,value:I.map(w=>w.value).includes(L)?L:"",onChange:E,fullWidth:!0})]}):jsx(Select,{label:M,data:I,value:L,onChange:E,itemComponent:Fv,styles:{label:{display:a==="true"?"none":"block"}}}),[Te.MULTI]:jsx(MultiSelect,{label:M,data:I,value:O,onChange:v,styles:{label:{display:a==="true"?"none":"block"}}})}[t]}var Nv,Dv,Fv,Ap=S(()=>{u();Ro();Xo();me();pe();Ht();Ee();xe();Nv=e=>`selector${e}id`,Dv=(e,r)=>e&&typeof e=="string"?e.split(","):r,Fv=forwardRef(function({imageUrl:r,label:t,...o},n){return jsx("div",{ref:n,...o,children:jsxs(Group,{noWrap:!0,children:[r&&jsx(Box,{component:"img",w:25,h:25,src:r}),jsx("div",{children:jsx(Text,{size:"sm",children:t})})]})})});});var Pp=S(()=>{});function Xi({dimmed:e=!1,label:r,root:t=!0,value:o,parentIsArray:n=!1,level:s=0}){let i=useMantineTheme();if(s===Ji)return null;let a=jsx(Text,{lineClamp:1,size:"xs",variant:"dimmed",p:5,children:"[Max depth hitted for preview]"}),l=Zi(o),c=o,d=JSON.stringify(o),p=!!(d&&d.length>50),m=!!(d&&d.length>1e3),y=10,b={control:{padding:"5px 0px 5px 5px"},label:{padding:"5px 0px"},content:{paddingTop:0,paddingBottom:0,paddingRight:0}};if(l==="object")return jsx(Accordion,{className:"cr-variable-accordion",variant:"contained",styles:b,children:jsxs(Accordion.Item,{value:"label",children:[jsx(Accordion.Control,{children:jsx(Text,{lineClamp:1,size:"xs",weight:700,color:e?"dimmed":i.primaryColor,children:t?`{{${r}}}`:n?`[${r}]`:r})}),jsx(Accordion.Panel,{children:s+1<Ji?Object.keys(o).sort((h,g)=>{let L=Zi(o[h]),O=Zi(o[g]);return L!==O?Ip.indexOf(L)-Ip.indexOf(O):h.localeCompare(g)}).map(h=>jsx(Xi,{root:!1,label:h,value:o[h],level:s+1},h)):a})]})});if(l==="array"){let h=o.length>y,g=h?o.slice(0,y):o,L=h?o.length-y:0;return jsx(Accordion,{className:"cr-variable-accordion",variant:"contained",styles:b,children:jsxs(Accordion.Item,{value:"label",children:[jsx(Accordion.Control,{children:jsx(Text,{lineClamp:1,size:"xs",weight:700,p:0,color:e?"dimmed":i.primaryColor,children:t?`{{${r}}}`:n?`[${r}]`:r})}),jsxs(Accordion.Panel,{children:[s+1<Ji?g.map((O,I)=>jsx(Xi,{root:!1,label:I,value:O,level:s+1,parentIsArray:!0},I)):a,h&&jsxs(Text,{lineClamp:1,size:"xs",variant:"dimmed",p:5,children:["[+ ",L," other elements]"]})]})]})})}return l==="string"?c=m?`"${c.substring(0,1e3)} ... "`:`"${c}"`:l==="error"?c=`Error: ${c.message}`:l==="undefined"?c=l:c.toString&&(c=c.toString()),jsxs(Group,{noWrap:!0,spacing:0,children:[jsx(Text,{color:e?"dimmed":i.primaryColor,lineClamp:1,size:"xs",pl:5,style:{overflow:"visible",wordBreak:"keep-all",whiteSpace:"nowrap"},weight:700,children:t?`{{${r}}}`:n?`[${r}]`:r}),jsx(Prism,{className:"cr-variable",language:"jsx",noCopy:!0,scrollAreaComponent:"div",styles:{root:{flex:"1 1 100%",textAlign:"right",overflow:"hidden"},code:{padding:"5px 0 5px 5px"},scrollArea:{marginLeft:"5px"},line:{paddingRight:"5px"}},children:c}),p&&jsxs(HoverCard,{width:400,shadow:"md",withinPortal:!0,children:[jsx(HoverCard.Target,{children:jsx(ActionIcon,{children:jsx(IconCodePlus,{})})}),jsx(HoverCard.Dropdown,{children:jsx(Text,{size:"sm",children:JSON.stringify(o).substring(0,5e3)})})]})]})}var Zi,Ip,Ji,wp,Lp=S(()=>{u();Pp();Zi=e=>{let r=typeof e;if(r==="object"){if(e===null)return "undefined";Array.isArray(e)?r="array":["Error","EvalError","ReferenceError","SyntaxError"].includes(e.constructor.name)&&(r="error");}return r},Ip=["object","array","string","number"],Ji=5;wp=Xi;});var Op,Bp=S(()=>{u();Op=e=>r=>r.replace(new RegExp(`^${e}`),"").startsWith("_");});function Wv({reserved:e=[],id:r,variables:t={},showInternal:o=!1}){let s=it(r==="attributes"?null:r).data,i=s?s.type:"block",a=s?.type&&s?.id?`${s.type}${s.id}`:"",l=Object.keys(t).filter(o?()=>!0:c=>!Op(a)(c));return jsx(Stack,{spacing:0,children:l.length?l.map(c=>jsx(wp,{dimmed:e.includes(c),label:c,value:t[c]},c)):jsx(Text,{color:"dimmed",size:"xs",children:jsx("i",{children:`empty ${i}`})})})}var _p,Mp=S(()=>{u();Lp();pe();Bp();_p=Wv;});function rS({outputVariables:e,status:r,hasAPI:t=!1,debug:o,type:n}){let[s,i]=useState(!1),a=t&&!Object.keys(e).length&&!r.error,l=Object.keys(e).some(d=>d.startsWith("_"));return o?a?jsxs(Stack,{align:"center",children:[jsx(Loader,{}),jsxs(Text,{size:"sm",children:["Loading ",n]})]}):jsxs(Fragment,{children:[jsx(Divider,{label:"Output Variables",labelPosition:"center"}),l&&jsx(Switch,{label:"Show internal variables",mb:"xs",size:"xs",checked:s,onChange:d=>i(d.currentTarget.checked)}),jsx(_p,{variables:e,showInternal:s})]}):jsx(Center,{children:jsx(Badge,{color:"gray",variant:"outline",children:n.toUpperCase()},"type")})}var ta,Np=S(()=>{u();Mp();ta=rS;});function ra(e){let{alt:r,src:t,desc:o,title:n,settings:s,...i}=e,a=Be(r),l=Be(t),c=Be(o),d=jsx("img",{src:l,alt:a,style:i}),p=s&&s.align?String(s.align):"left";return (c&&c.length||n&&n.length)&&(d=jsxs(Stack,{className:"bespoke-Image-wrapper",align:yt(p),spacing:"sm",children:[n&&jsx(ee,{component:"p",html:n,style:s,isPreview:!0}),d,o&&jsx(ee,{component:"p",size:"sm",html:o,style:s,isPreview:!0})]})),l&&a?d:jsx(Center,{mih:100,bg:"white",children:jsx(Badge,{color:"gray",variant:"outline",children:"IMAGE"},"type")})}var Dp=S(()=>{u();yr();Ee();_e();});var oa=S(()=>{u();Ht();});var Fp=S(()=>{u();pe();oa();});var zp=S(()=>{u();oa();Fp();Ai();});function ia({headings:e,settings:r}){let{min:t="1",max:o="6",icons:n="yes"}=r||{},s=Xr(parseInt(t,10),parseInt(o,10),e),i=n==="yes",a=Yr(r&&r.align?String(r.align):"left"),l=c=>!c||!c?.length?null:jsx(Fragment,{children:c.map(d=>jsxs(Fragment$1,{children:[jsx(Menu.Item,{children:jsx(Anchor,{href:`#bespoke-title-${d.id}`,children:jsxs(Group,{spacing:"sm",children:[i&&jsx(Pe,{...d.iconProps,iconSize:"sm"}),jsx(Text,{dangerouslySetInnerHTML:{__html:d.label}})]})})},d.id),jsx(Box,{pl:"xs",children:l(d.children)})]},d.id))});return jsx(Box,{pos:"relative",children:jsxs(List,{sx:c=>({display:"flex",gap:c.spacing.md,justifyContent:a,listStyleType:"none"}),children:[s?.map(c=>jsx(List.Item,{children:jsxs(Menu,{trigger:"hover",openDelay:100,closeDelay:400,children:[jsx(Menu.Target,{children:jsx(Anchor,{href:`#bespoke-title-${c.id}`,children:jsxs(Group,{spacing:"sm",noWrap:!0,children:[i&&jsx(Pe,{blockType:"nav",...c.iconProps,iconSize:"sm",iconPadding:"2"}),jsx(Text,{dangerouslySetInnerHTML:{__html:c.label}})]})})}),c?.children?.length?jsx(Menu.Dropdown,{children:l(c.children)}):null]})},c.id)),!s||s.length===0&&jsx(List.Item,{children:jsx(Text,{color:"dimmed",children:"- Include some titles as inputs to see the Nav component -"})})]})})}var Gp=S(()=>{u();zp();vr();_e();});function la(e){let{related_reports:r,settings:t}=e;if(!r?.length)return jsx(Text,{children:"There are no available members related to your current selection and report."});let o=Yr(t&&t.align?String(t.align):"left");return jsx(List,{sx:()=>({display:"flex",justifyContent:o}),children:r.map(n=>jsx(List.Item,{children:n.name},n.content_id))})}var Hp=S(()=>{u();_e();});function ua({id:e,label:r,settings:t,showIcon:o,fullWidth:n,showWhenDisabled:s}){let i=it(e).data,{sectionVariables:a,resetSectionVariables:l}=Re(i?.section_id),c=!!Object.keys(a).length,d=yt(t&&t.align?t.align:"left");return jsxs(Stack,{align:d,children:[!c&&!s&&jsx(Text,{size:"xs",ta:t?.align||"left",children:"Reset button will not be shown on its disabled state"}),jsx(Button,{onClick:()=>l(),disabled:!c,fullWidth:n,children:jsxs(Group,{align:"center",children:[r,o&&jsx(IconRefresh,{})]})})]})}var Wp=S(()=>{u();xe();xe();_e();});function pa({settings:e,label:r,showIcon:t,position:o="center"}){let n=e&&e.search?e.search:"";return jsxs(Group,{position:o,children:[jsx(Tooltip,{label:`Click will open '${n}' report search`,children:jsx(Button,{children:jsxs(Group,{align:"center",children:[r||"Comparison Button",t&&jsx(IconPlus,{})]})})}),jsx(ActionIcon,{variant:"light",children:jsx(IconSearch,{size:20})})]})}var Qp=S(()=>{u();});function ma({columns:e=[],id:r,data:t=[],tableProps:o={}}){let[n,s]=useState({}),{initialState:i}=o,a=i?.pagination?.pageIndex,l=i?.pagination?.pageSize,c=`table-${[r,a,l].filter(b=>b).join("-")}`,d=useMemo(()=>e.map(b=>b.accessorKey),[e]),p=useMemo(()=>t.filter(b=>typeof b=="object"&&b!==null&&!Array.isArray(b)&&Object.keys(b).some(h=>d.includes(h))),[d,t]),m=useMemo(()=>e.map(b=>({...b,Cell:({renderedCellValue:h})=>jsx(ee,{html:`${h}`,isPreview:!0}),filterFn:"contains"})),[e]),y=Jl();return useEffect(()=>{(async()=>{try{let h=y||"en",g=`${h.toUpperCase()}`,L=await import(`mantine-react-table/locales/${h}.js`);s(L[`MRT_Localization_${g}`]);}catch(h){console.error("Error loading translations:",h);}})();},[y]),createElement(MantineReactTable,{...o,autoResetPageIndex:!1,columns:m,data:p,enableColumnFilterModes:!0,enableFilterMatchHighlighting:!1,globalFilterFn:"contains",key:c,layoutMode:"grid",localization:n,state:{...o.state,isFullScreen:!1}})}var Zp=S(()=>{u();Ee();xe();});function fa({label:e,url:r,settings:t}){let{align:o}=t;return jsx(Group,{position:o,grow:o==="justify",children:jsx(Button,{component:"a",target:"_blank",href:r||"",children:e||"Button"})})}var Xp=S(()=>{u();});function ha(e){let r=useDispatch(),t=useContext(Lt),o=H(z=>z.status.query),n=qS(e.id),s=useMantineTheme(),{allLabel:i,colorKey:a,data:l,defaultValue:c,defaultValueType:d,iconKey:p,levels:m,limit:y,placeholder:b,searchIndexKey:h,searchIndexSeparator:g,resetSectionVars:L,section:O}=e,[I,x]=useState(!1),[k,N]=useState(!0),[A,E]=useState(""),[v,M]=useState(!1),[w,$]=useState([""].slice(1)),{sectionVariables:G,resetSectionVariables:C}=Re(O),B=useMemo(()=>HS(o[`${n}-value`],c),[o,c,n]),W=useMemo(()=>o[`${n}-type`]||d,[o,d,n]),K=useCallback(()=>{L==="true"&&G&&C();},[L,G,C]),V=useCallback(z=>{K(),r(hr(t,`${n}-value`,z.join()));},[r,t,n,K]),re=useCallback(z=>{K(),r(hr(t,`${n}-type`,z));},[r,t,n,K]),te=useRef(null),j=useRef(!1),D=useRef(!!y&&y<B.length),Y=w.length,U=m[Y],q=w.filter(Boolean);w.length>0&&q.length===0&&q.push(`${i} ${U?.label}`),useEffect(()=>{let z=()=>{N(!0);};return window.addEventListener("touchmove",z),()=>{window.removeEventListener("touchmove",z);}},[]);let F=useMemo(()=>$S(l,m,a,p,h,g),[a,l,p,m,h,g]),_=useMemo(()=>{let z=US(A),se=Array.from(GS(F,z)).reverse();return v?se:w.reduce((P,J)=>P.filter(Q=>!J||Q.searchindex.indexOf(J)>-1),se.filter(P=>P.type===U?.value))},[U,F,A,v,w]),[X,Z]=useState(-1),ce=Math.min(X,_.length-1),oe=useCallback(z=>{let se=w.concat(z);v&&M(!1),$(se);},[v,w]),Oe=useCallback(()=>{let z=w.slice(0,Y-1);v&&M(!1),$(z);},[v,w,Y]),fe=useCallback(z=>{E(z.currentTarget.value),!D.current&&l.length>0&&x(!0);},[l,E,D,x]),Fe=useCallback(()=>{E(""),V([]),te.current?.focus(),y&&(D.current=!1);},[E,V,te,y,D]),ye=useCallback(z=>{let se=B.filter(P=>P!==z);V(se),y&&se.length<y&&(D.current=!1);},[B,V,y,D]),ct=useCallback(z=>{W||re(z.type),W!==z.type?(re(z.type),V([z.value])):B.includes(z.value)?ye(z.value):y?(B.length<y&&V([...B,z.value]),B.length===y&&V([...B.slice(1),z.value])):V([...B,z.value]);},[W,re,V,B,ye,y]),co=useCallback(()=>{B.length>0&&A.length===0&&(V(B.slice(0,-1)),x(!0),y&&(D.current=!1)),A.length>0&&E(A.slice(0,-1));},[B,A,V,E,x,y,D]),ut=useCallback(()=>{N(z=>z&&(j.current=z,!z)),Z(z=>z+1>=_.length?z:z+1);},[Z,_]),rr=useCallback(()=>{let z=_[ce];z&&ct(z);},[_,ce,ct]),or=useCallback(()=>{x(!1);},[x]),uo=useCallback(()=>{Z(()=>(Oe(),0));},[Z,Oe]),ts=useCallback(()=>{let z=_[ce];!v&&z&&z.type!==m[m.length-1]?.value&&Z(()=>(oe(z.name),0));},[_,ce,v,m,Z,oe]),rs=useCallback(()=>{N(z=>z&&(j.current=z,!z)),Z(z=>z-1<0?0:z-1);},[Z]),qo=useRef(null),At=Pn({count:_.length,estimateSize:()=>30,getScrollElement:useCallback(()=>qo.current,[]),overscan:10,rangeExtractor:useCallback(z=>Oo(z),[])}),os=({label:z,onRemove:se,...P})=>jsxs("div",{style:{alignItems:"center",backgroundColor:s.colorScheme==="dark"?s.colors.dark[7]:s.colors.gray[1],borderRadius:s.radius.sm,cursor:"default",color:s.colorScheme==="dark"?s.colors.dark[0]:s.colors.gray[7],display:"flex",fontSize:rem(12),fontWeight:500,height:rem(22),margin:`calc(${s.spacing.xs} / 2 - ${rem(2)}) calc(${s.spacing.xs} / 2)`,maxWidth:`calc(100% - ${rem(10)})`,paddingLeft:`calc(${s.spacing.sm} / 1.5)`,paddingRight:0,userSelect:"none"},...P,children:[jsx("span",{style:{display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:z}),jsx(CloseButton,{"aria-hidden":!0,iconSize:"70%",onMouseDown:se,radius:2,size:"sm",sx:{color:s.colorScheme==="dark"?s.colors.dark[0]:s.colors.gray[7],marginLeft:`calc(${s.spacing.sm} / 6)`},tabIndex:-1})]}),ns=useMemo(()=>B.map(z=>F.find(se=>se.value===z)).filter(z=>!!z).map((z,se)=>createElement(os,{...z,index:se,key:z.value,onRemove:P=>{P.preventDefault(),P.stopPropagation(),ye(z.value);}})),[B]),Ho=forwardRef(function({color:se,icon:P,label:J,value:Q,...ze},de){return jsx("div",{ref:de,style:{cursor:"pointer",width:"100%"},...ze,children:jsxs(Group,{align:"center",noWrap:!0,spacing:"xs",w:"100%",children:[P&&jsx(Box,{bg:se??"transparent",component:"img",w:20,h:20,src:P}),jsx(Text,{lineClamp:1,size:"sm",children:J||Q})]})})}),{settings:Pt}=e,ss=e.hideLabel==="true"||!e.label?jsx(Fragment,{}):jsx(ee,{component:"div",html:e.label,size:"sm",style:Pt,isPreview:!0});return jsx(Input.Wrapper,{label:ss,children:jsxs(Popover,{closeOnClickOutside:!0,keepMounted:!0,opened:I,onChange:x,onClose:()=>{Z(0),E("");},onOpen:()=>{At.scrollToIndex(0);},shadow:"sm",width:"target",withinPortal:!0,children:[jsx(Popover.Target,{children:jsxs(Box,{"aria-haspopup":"listbox",component:"div",onMouseLeave:()=>Z(0),sx:{position:"relative","& .defaultValue":{backgroundColor:s.colorScheme==="dark"?s.colors.dark[5]:s.colors.gray[3],color:s.colorScheme==="dark"?s.colors.dark[1]:s.colors.gray[7]}},tabIndex:-1,children:[jsx("input",{type:"hidden",value:B.join(",")}),jsx(Input,{component:"div",multiline:!0,onMouseDown:z=>{z.preventDefault(),!D.current&&l.length>0&&x(!I),te.current?.focus();},rightSection:B.length>0?jsx(CloseButton,{onClick:Fe,onMouseDown:z=>z.preventDefault(),variant:"transparent"}):jsx(IconSelector,{color:s.colors.gray[6],size:18,stroke:1.5}),style:{overflow:"hidden"},w:"100%",children:jsxs(Box,{component:"div","data-clearable":!0,sx:{alignItems:"center",boxSizing:"border-box",display:"flex",flexWrap:"wrap",marginLeft:`calc(-${s.spacing.xs} / 2)`,minHeight:`calc(${rem(36)} - ${rem(2)})`,"&[data-clearable]":{marginRight:rem(36)},"&::placeholder":{color:s.colorScheme==="dark"?s.colors.dark[3]:s.colors.gray[5],opacity:1}},children:[ns,jsx("input",{autoComplete:"off","data-mantine-stop-propagation":I,onChange:fe,onKeyDown:getHotkeyHandler([["ArrowDown",ut],["ArrowLeft",uo],["ArrowRight",ts],["ArrowUp",rs],["Backspace",co],["Enter",rr],["Escape",or]]),placeholder:B.length===0?b:void 0,ref:te,readOnly:D.current,style:{appearance:"none",backgroundColor:"transparent",border:0,color:"inherit",flex:1,fontSize:s.fontSizes.sm,marginLeft:`calc(${s.spacing.xs} / 2)`,maxHeight:rem(22),minWidth:rem(60),outline:0,padding:0},type:"search",value:A})]})})]})}),jsx(Popover.Dropdown,{onMouseDown:z=>z.preventDefault(),p:0,children:jsx("div",{style:{display:"flex",maxHeight:rem(300)},children:jsx(Box,{component:"div","data-combobox-popover":!0,onMouseDown:z=>z.preventDefault(),role:"listbox",sx:{width:"100%"},tabIndex:-1,children:jsxs(Stack,{h:"100%",py:"xs",spacing:"xs",w:"100%",children:[m.length>1&&jsxs(Stack,{spacing:"xs",children:[jsxs(Group,{onClick:z=>{z.stopPropagation();},px:"xs",position:"center",spacing:"xs",children:[jsx(Button,{onClick:()=>{Z(0),M(!0),$([]),_.length>0&&At.scrollToIndex(0);},size:"xs",variant:v?"filled":"outline",children:i}),m.map((z,se)=>jsx(Button,{onClick:()=>{v&&M(!1);let P=[""].slice(1),J=se;for(;J--;)P[J]=w[J]||"";Z(0),$(P),_.length>0&&At.scrollToIndex(0);},size:"xs",variant:!v&&w.length===m.findIndex(P=>P.value===z?.value)?"filled":"outline",children:z?.label},z?.value))]}),jsx(Divider,{})]}),Y>0&&jsxs(Group,{align:"center",noWrap:!0,px:"xs",children:[jsx(ActionIcon,{onClick:Oe,size:"sm",children:jsx(IconChevronLeft,{})}),jsx("div",{children:q.map(z=>jsx(Text,{lineClamp:1,size:"xs",children:z},`${z}`))})]}),jsx(ScrollArea,{mah:250,onWheel:()=>N(!0),px:"xs",style:{overflow:"auto",width:"100%"},viewportRef:qo,viewportProps:{tabIndex:-1},w:"100%",children:jsx("div",{style:{height:`${At.getTotalSize()}px`,position:"relative",width:"100%"},children:At.getVirtualItems().map(z=>{let se=_[z.index],P=ce===z.index,J=B.includes(se.value);return _.length>0&&P&&!k&&At.scrollToIndex(ce),jsxs(Group,{"aria-selected":P,align:"center","data-hovered":P||void 0,"data-index":z.index,"data-selected":J,id:se.vale,noWrap:!0,onMouseEnter:Q=>{Q.preventDefault(),Q.stopPropagation(),k&&(Z(z.index),N(!1));},onMouseMove:Q=>{Q.preventDefault(),Q.stopPropagation(),N(!0);},onMouseDown:Q=>{Q.preventDefault(),ct(se);},position:"apart",ref:At.measureElement,role:"option",spacing:"xs",sx:Q=>({borderRadius:Q.radius.xs,padding:"15px 5px 15px",paddingLeft:v&&10*m.findIndex(ze=>ze?.value===se.type)||5,position:"absolute",top:0,left:0,height:`${z.size}px`,transform:`translateY(${z.start}px)`,width:"100%","&[data-hovered]":{backgroundColor:Q.colorScheme==="dark"?Q.colors.dark[4]:Q.colors.gray[1]},"&:hover":{backgroundColor:Q.colorScheme==="dark"?Q.colors.dark[4]:Q.colors.gray[1]}}),tabIndex:-1,children:[jsx(Ho,{index:z.index,...se}),!v&&se.type!==m[m.length-1]?.value&&jsx(ActionIcon,{onMouseDown:Q=>{Q.preventDefault(),Q.stopPropagation(),oe(se.name);},size:"sm",tabIndex:-1,children:jsx(IconChevronRight,{})})]},se.value)})})})]})})})})]})})}var $S,US,GS,qS,HS,id=S(()=>{u();Ti();Ee();Ht();pe();xe();Ro();$S=(e=[],r=[],t="",o="",n="",s="|")=>{let i=r.map(h=>h.value).slice(),a=`${i.pop()}`,l=h=>h[t],c=h=>h[o],d=h=>{if(h[n])return typeof h[n]=="string"?h[n].split(s):h[n]},p=new Set,m=[],y=[],b=nest().rollup(h=>{let g=h[0],L=v=>v&&v.value&&!p.has(v.value),O=i.map(v=>g[`${v} ID`]),I=i.map(v=>g[v]),x=i.map((v,M)=>{if(y[M]!==I[M]){y[M]=I[M];let w=l[M]||l[l.length-1]||l,$=c[M]||c[c.length-1]||c,G=d[M]||d[d.length-1]||d;return {color:w(g,v)||void 0,icon:$(g,v)||void 0,value:`${O[M]}`,label:I[M],name:I[M],type:v,searchindex:I.slice(0,M+1).concat(G(g,v)).join("|")}}return {}}).filter(L);x.forEach(v=>p.add(v.value));let k=l[l.length-1]||l,N=c[c.length-1]||c,A=d[d.length-1]||d,E=h.map(v=>({color:k(v,a)||void 0,icon:N(v,a)||void 0,value:`${v[`${a} ID`]}`,label:v[a],name:v[a],type:a,searchindex:I.concat(v[a]).concat(A(v,a)).join("|")}));m.push(...x.concat(E));});return i.forEach(h=>{b.key(g=>`${g[`${h} ID`]}|${g[h]}`);}),b.entries(e),m},US=e=>{if(!e)return /./i;let r=e.normalize("NFD").replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/[\u0300-\u036f]/g,"").replace(/\s+/g,"[^|]+");return RegExp(r,"i")},GS=(e,r)=>{let t=e.length,o,n=a=>o&&o.searchindex.includes(a.searchindex),i={next:()=>{for(let a=t-1;a>-1;a--){let l=e[a];if(r.test(`${l.value} ${l.label} ${l.searchindex}`)||n(l))return o=l,t=a,{done:!1,value:l}}return {done:!0,value:void 0}},[Symbol.iterator]:()=>i};return i},qS=e=>`multihierarchySelector${e}`,HS=(e,r)=>e&&typeof e=="string"?e.split(","):r;});var ld={};as(ld,{default:()=>rT});function tT({block:e,active:r,locale:t,variables:o,debug:n,configOverride:s={}}){let i=XS(),a=Ve(e),l=qt(t),c={variables:o},d=useRouter(),{sectionVariables:p,setSectionVariables:m,resetSectionVariables:y}=Re(e.section_id),b=useMemo(()=>{if(!r)return {error:"Activate to View"};if(!a?.logic)return {error:"Add a Configuration"};let v=mt({logic:a.logic},l,c).logic,M={router:d,section:{variables:p,setVariables:m,resetVariables:y}};return eo(v,l,o,t,e.id,{},M)},[a?.logic,r,o,p]);useMemo(()=>{if(!r||!a?.logic)return {};let{logic:v}=a,{vars:M}=Qe("variables",o,v,l,void 0,c);return M},[e,r]);let {type:g}=b.config||{},L=g&&ya[g]?g:"Treemap";g||(b.config={error:'Visualization missing "type"'}),ya[g]||(b.config={error:`"${g}" is not a valid Visualization Type`});let O=ya[L],I=b.error||b.config?.error||!1;if(I)return jsx(Center,{style:{height:"100%"},children:jsx(Badge,{color:"gray",variant:"outline",children:I},"type")});let{_data:x,...k}=b.config,N={locale:t,variables:o,...k,...s};i.print&&(N.detectVisible=!1);!i.print&&g!=="Graphic"&&g!=="HTML";return jsx("div",{style:{display:"flex",flex:"1 1 100%"},children:jsx(Er,{fallback:jsx("p",{children:"Error in d3plus viz config."}),children:jsx(O,{style:{flex:1},dataFormat:v=>{b.data&&Array.isArray(b.data)&&b.data.length>1&&b.data.some(G=>typeof G=="string")?v:[v];let $;try{$=b.dataFormat(v);}catch(G){console.log("Error in dataFormat: ",G),$=[];}return $},linksFormat:b.linksFormat,nodesFormat:b.nodesFormat,topojsonFormat:b.topojsonFormat,config:{...N}},"viz-key")})})}var XS,eT,ya,rT,cd=S(()=>{u();Mr();_r();Vi();Dn();Fr();xe();zi();XS=()=>({}),eT={},ya={HTML:Mo,...lv,...eT};rT=memo(tT,(e,r)=>e.block.contentByLocale.logic.content===r.block.contentByLocale.logic.content&&e.active===r.active&&e.locale===r.locale&&JSON.stringify(e.variables)===JSON.stringify(r.variables)&&JSON.stringify(e.configOverride)===JSON.stringify(r.configOverride));});var nT,we,ud=S(()=>{u();me();vp();Tp();xp();Ep();Ap();Np();Dp();Gp();Hp();Wp();Qp();Zp();Xp();id();nT=pv(()=>Promise.resolve().then(()=>(cd(),ld)),{ssr:!1}),we={[f.PARAGRAPH]:Gi,[f.STAT]:qi,[f.SUBTITLE]:Hi,[f.TITLE]:ji,[f.SELECTOR]:Yi,[f.VIZ]:nT,[f.GENERATOR]:ta,[f.SECTION_FLAG]:ta,[f.IMAGE]:ra,[f.NAV]:ia,[f.RELATED]:la,[f.RESET_BUTTON]:ua,[f.COMPARISON_BUTTON]:pa,[f.TABLE]:ma,[f.BUTTON]:fa,[f.MULTIHIERARCHY_SELECTOR]:ha};});var pd=S(()=>{u();me();({[f.TITLE]:IconHeading,[f.GENERATOR]:IconApi,[f.SECTION_FLAG]:IconFlag,[f.STAT]:IconPercentage,[f.VIZ]:IconChartBar,[f.PARAGRAPH]:IconAlignLeft,[f.SELECTOR]:IconSelector,[f.IMAGE]:IconPhoto,[f.TABLE]:IconTable,[f.MULTIHIERARCHY_SELECTOR]:IconListTree});});var dd=S(()=>{u();me();({[f.TITLE]:"Title",[f.GENERATOR]:"Data",[f.STAT]:"Stat",[f.VIZ]:"Visualization",[f.PARAGRAPH]:"Paragraph",[f.SELECTOR]:"Selector",[f.SUBTITLE]:"Subtitle",[f.RESET_BUTTON]:"Reset Button",[f.COMPARISON_BUTTON]:"Comparison Button",[f.RELATED]:"Related Reports",[f.NAV]:"Navigation",[f.IMAGE]:"Image",[f.TABLE]:"Table",[f.BUTTON]:"Button",[f.FALLBACK]:"Fallback",[f.SECTION_FLAG]:"Section Flag",[f.MULTIHIERARCHY_SELECTOR]:"Multihierarchy Selector"});});var gT,ba,md=S(()=>{u();me();bp();ud();pd();dd();gT={[f.GENERATOR]:{type:f.GENERATOR,renderer:we[f.GENERATOR],renderPreviewOnEdit:!1},[f.SECTION_FLAG]:{type:f.SECTION_FLAG,renderer:we[f.SECTION_FLAG],renderPreviewOnEdit:!1},[f.IMAGE]:{type:f.IMAGE,renderer:we[f.IMAGE],renderPreviewOnEdit:!1},[f.PARAGRAPH]:{type:f.PARAGRAPH,renderer:we[f.PARAGRAPH],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.RELATED]:{type:f.RELATED,renderer:we[f.RELATED],renderPreviewOnEdit:!1,evalWhenNonActive:!0},[f.SELECTOR]:{type:f.SELECTOR,renderer:we[f.SELECTOR],adapter:Do[f.SELECTOR],nonActiveAdapter:()=>Do[f.SELECTOR]({name:"Selector Preview"}),renderPreviewOnEdit:!1},[f.STAT]:{type:f.STAT,renderer:we[f.STAT],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.SUBTITLE]:{type:f.SUBTITLE,renderer:we[f.SUBTITLE],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.TITLE]:{type:f.TITLE,renderer:we[f.TITLE],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.VIZ]:{type:f.VIZ,renderer:we[f.VIZ],renderPreviewOnEdit:!1},[f.NAV]:{type:f.NAV,renderer:we[f.NAV],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.RESET_BUTTON]:{type:f.RESET_BUTTON,renderer:we[f.RESET_BUTTON],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.COMPARISON_BUTTON]:{type:f.COMPARISON_BUTTON,renderer:we[f.COMPARISON_BUTTON],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.TABLE]:{type:f.TABLE,renderer:we[f.TABLE],renderPreviewOnEdit:!1,evalWhenNonActive:!1},[f.BUTTON]:{type:f.BUTTON,renderer:we[f.BUTTON],renderPreviewOnEdit:!0,evalWhenNonActive:!0},[f.MULTIHIERARCHY_SELECTOR]:{type:f.MULTIHIERARCHY_SELECTOR,renderer:we[f.MULTIHIERARCHY_SELECTOR],adapter:Do[f.MULTIHIERARCHY_SELECTOR],nonActiveAdapter:()=>Do[f.MULTIHIERARCHY_SELECTOR]({label:"Multihierarchy Selector Preview"}),renderPreviewOnEdit:!1}},ba=gT;});function Gn({blockId:e,active:r=!0,asComparison:t=!1}){let{query:o,locale:n=nt}=useRouter(),s=Ge(),i=it(e).data,a=Hr(e,t&&s.active?s?.variables.variables:void 0,t&&s.active?s?.variables.attributes:void 0),l=Ve(i,n),c=qt(n),d={variables:a,query:o,locale:n},p=H(L=>L.variables.variables[i.id]||{}),m=H(L=>L.variables.status[i.id]||{}),[y,b]=useState(()=>{if(![f.GENERATOR,f.VIZ,f.NAV].includes(i.type)){if(i?.type===f.SELECTOR){let I=Ve(i,n),{config:x}=Nr(i.id,I?.logic,c,d);return {...x,id:i.id,section:i.section_id}}if(i?.type===f.MULTIHIERARCHY_SELECTOR){let I=Ve(i,n),{config:x}=Dr(i.id,I.logic,c,d);return {...x,id:i.id,section:i.section_id}}if(i?.type===f.RESET_BUTTON)return {...l.simple,id:i.id,section:i.section_id};if(i?.type===f.COMPARISON_BUTTON)return {...l.simple,id:i.id,section:i.section_id};let L=It(l?.logic,c,d),{vars:O}=Qe("variables",a,L,c,void 0,d);return O}return null});useEffect(()=>{(async()=>{if(!i||i.type===f.GENERATOR)return;if(i.type===f.VIZ){b({block:i,locale:n,variables:a,active:r});return}if(!r&&!ba[i.type].evalWhenNonActive){let{nonActiveAdapter:x}=ba[i.type],k=x&&typeof x=="function"?x():{};b(k);return}if(i.type===f.GENERATOR){b({outputVariables:p});return}if(f.SELECTOR===i.type){let x=Ve(i,n),{config:k}=Nr(i.id,x.logic,c,d);b({...k,id:i.id,section:i.section_id});return}if(f.MULTIHIERARCHY_SELECTOR===i.type){let x=Ve(i,n),{config:k}=Dr(i.id,x.logic,c,d);b({...k,id:i.id,section:i.section_id});return}if(i.type===f.NAV){b({id:i.id,headings:i.inputs,section:i.section_id,settings:i.settings});return}if(i.type===f.RELATED){let{related_reports:x}=p;b({related_reports:x});return}if(i.type===f.RESET_BUTTON){b({id:i.id,...l.simple});return}if(i.type===f.COMPARISON_BUTTON){b({id:i.id,...l.simple});return}if(i.type===f.FALLBACK){b({id:i.id,...l});return}let O=It(l?.logic,c,d),{vars:I}=Qe("variables",a,O,c,void 0,d);if(i.type===f.TABLE){b({sectionId:i.section_id,...I});return}b(I);})();},[l,a]);let h=m.allowed||i?.type===f.NAV;if(!i||!y||!h)return null;let g=pp[i.type];return jsx("div",{id:`bespoke-${i.type}-${i.id}`,className:`cms-block-wrapper bespoke-block-area cms-block-${e}`,children:jsx(g,{...y,settings:i.settings,asComparison:t})})}var gd=S(()=>{u();me();dp();md();Fr();xe();Jo();_r();an();ys();vs();Nt();});var hd,vT,yd,qn,Hn=S(()=>{u();hd={margin:{label:"Content Margin",defaultValue:"md",options:[{label:"None",value:"0px"},{label:"Small",value:"sm"},{label:"Medium",value:"md"},{label:"Large",value:"lg"}]},columnGutter:{label:"Column Gutter",defaultValue:"md",options:[{label:"None",value:"0px"},{label:"Small",value:"sm"},{label:"Medium",value:"md"},{label:"Large",value:"lg"}]},width:{label:"Width",defaultValue:"full",options:[{label:"Full Width",value:"full"},{label:"Center",value:"center"}]},position:{label:"Position",defaultValue:"normal",options:[{label:"Normal",value:"normal"},{label:"Sticky",value:"sticky"}]},style:{label:"Style",defaultValue:"none",options:[{label:"None",value:"none"},{label:"Card",value:"card"}]}},vT=Object.keys(hd).reduce((e,r)=>(e[r]=hd[r].defaultValue,e),{}),yd={memberImageBg:!1,optionsMenu:!1,optionData:!0,optionImage:!0,optionShare:!0,...vT},qn=e=>({data:typeof e.optionData=="boolean"?e.optionData:!0,image:typeof e.optionImage=="boolean"?e.optionImage:!0,share:typeof e.optionShare=="boolean"?e.optionShare:!0});});function bd({previews:e}){let r=e.map((t,o)=>({key:t?`bg-${t.content_id}`:`bg-${o}`,src:t?`/api/cms/member/image?member=${t.content_id}&size=splash`:""}));return jsxs(Fragment,{children:[jsx(Group,{className:"cms-section-bg",grow:!0,spacing:0,style:{position:"absolute",width:"100%",height:"100%"},children:r.map(t=>jsx("div",{className:"cms-section-member-bg",style:{backgroundImage:`url(${t.src})`,backgroundSize:"cover",backgroundPosition:"center center",height:"100%",width:"100%"}},t.key))}),jsx("div",{className:"cms-section-gradient-bg",style:{background:"white",position:"absolute",width:"100%",height:"100%",opacity:.33}})]})}var vd=S(()=>{u();});function Sd({data:e}){let o=(e&&Array.isArray(e)&&e[0]?Object.keys(e[0]):[]).filter(n=>!n.startsWith("_")).map(n=>({accessorKey:n,header:n,enableSorting:!0,mantineTableBodyCellProps:{sx:{textWrap:"wrap"}}}));return jsx(MantineReactTable,{columns:o,data:e,enableBottomToolbar:!1,enableColumnActions:!1,enablePagination:!1,enableSorting:!0,enableTopToolbar:!1,initialState:{density:"xs"},layoutMode:"grid",mantineTableContainerProps:{sx:{minHeight:100,maxHeight:350}}})}var Td=S(()=>{u();});function lo(e){let r={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#x27;":"'","&#x60;":"`","&nbsp;":""},t=`(?:${Object.keys(r).join("|")})`,o=RegExp(t),n=RegExp(t,"g"),s=String(e).replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim();return o.test(s)?s.replace(n,i=>r[i]):s}var Sa=S(()=>{u();});function Ta(e){return typeof e=="string"?String(e).replace(/&([a-z0-9]+|#[0-9]{1,6}|#x[0-9a-f]{1,6});/ig," "):e}var Rd=S(()=>{u();});function CT(e){return e?kT(Ta(lo(e)),{replacement:"-",remove:/[*+~.()'"!:@]/g,lower:!0,strict:!0,trim:!0}):""}var jn,Ra=S(()=>{u();Sa();Rd();jn=CT;});function Ad(e){let{section:r}=e,t=St(),o=useRouter(),n=H(F=>F.status.isCMS),s=H(F=>F.status.currentLocale),i=o.locale,a=n?s:i,l=50,c=qt(a),d=Ue("options"),p={...WT,...d.data_tab},[m,y]=useState([]),[b,h]=useState([]),[g,L]=useState(),[O,I]=useState(),[x,k]=useState(!1),[N,A]=useState({}),[E,v]=useState(!0),[M,w]=useState(!0),{sectionVariables:$,setSectionVariables:G,resetSectionVariables:C}=Re(r.id),B=r.blocks||[],W=H(F=>F),K=useMemo(()=>B.reduce((F,_)=>{let X=W.records.entities.block[_],Z=W.variables.variables[_],ce=W.variables.status[_];return (f.GENERATOR===X.type&&Z._downloadEnabled===!0&&ce.allowed||f.VIZ===X.type&&ce.allowed)&&(F[_]={entity:X,variables:W.variables.variables[_],status:W.variables.status[_],inputVariablesFlat:X.inputs.reduce((oe,Oe)=>({...oe,...W.variables.variables[Oe]}),W.variables.attributes)}),F},{}),[B]),V=F=>{h(_=>_.includes(F)?_:[..._,F]);},re=F=>{y(_=>(_.find(Z=>Z.ix===F.ix)?_:[..._,F]).sort((Z,ce)=>Z.ix>ce.ix?1:-1));};function te(F){!g&&F[0]&&j(F[0]);}function j(F){L(F),I("0");}useEffect(()=>{let F=async(_,X,Z)=>{let ce=dataLoad.bind({});return new Promise((oe,Oe)=>{ce(X,null,null,(fe,Fe)=>{if(fe)Oe(fe);else {let ye=Z instanceof Function?Z(Fe):Fe;_.data.unshift(ye),re(_),oe(Fe);}});})};if(m.length===0&&b.length===0){let _=0;for(let X of Object.values(K)){let Z=X.entity;if([f.GENERATOR,f.SECTION_FLAG].includes(Z.type)){let ce=X.variables._downloadData||X.variables._downloadUrl||X.status.api;if(ce){let oe=[];typeof ce=="string"?oe=ce.split(en):oe=[ce];let Oe=X.variables._downloadTitle||`${p.data_source} ${_+1}`,fe=X.variables._downloadFileName||Oe;re({ix:_,id:Z.id,title:lo(Oe),fileName:fe,data:Array.isArray(oe)?oe:[oe],loading:!1,type:f.GENERATOR}),V(_),_++;}}else if(Z.type===f.VIZ){let ce=Ve(Z),oe=X.inputVariablesFlat,Oe={variables:oe},fe=mt({logic:ce.logic},c,Oe).logic,Fe={router:o,section:{variables:$,setVariables:G,resetVariables:C}},ye=eo(fe,c,oe,a,Z.id,{},Fe),ct=ye.config._downloadTitle||ye.config.title||`${p.viz_source} ${_+1}`,co=ye.config._downloadFileName||ct;if(ye.config._downloadEnabled!==!1)try{let ut=ye.config._downloadUrl||ye.config.data,rr=typeof ut=="string"?[ut]:ut,or=ye.dataFormat instanceof Function?ye.dataFormat:!1,uo=ye.config._downloadDataFormat instanceof Function?ye.config._downloadDataFormat:!1;F({ix:_,id:Z.id,title:lo(ct),fileName:co,data:rr,loading:!1,type:f.VIZ},ut,uo||or),V(_),_++;}catch(ut){console.error("DataLoad catch",ut);}}}w(!1);}},[K]),useEffect(()=>{m.length===b.length&&te(m);},[m]),useEffect(()=>{if(g&&O){let F=parseInt(O,10);if(g.data[F]&&(!N[g.ix]||!N[g.ix][O])){v(!0);let _=g.data[O];typeof _=="string"?xs(_,t,a).then(X=>{let Z=KT(X);A({...N,[g.ix]:{...N[g.ix],[F]:Z}});}).catch(X=>{console.error(X);}).finally(()=>{v(!1);}):(A({...N,[g.ix]:{...N[g.ix],[F]:_}}),v(!1));}}},[O,g]);let D=(F,_)=>{let X=F===_?"":`-${F}`.toLowerCase();if(g){let Z=g.data.length>1&&O?`-${parseInt(O,10)+1}`:"";return `${jn(g.fileName)}${X}${Z}.${_.toLowerCase()}`}return `${X}.${_}`},Y=async F=>{if(g){k(!0);let _=new BT,X=D(F,F);try{switch(F){case Kn.json.extension:_.file(X,JSON.stringify(U));break;case Kn.csv.extension:_.file(X,csvFormat(U));break;case Kn.xlsx.extension:let{utils:Z,write:ce}=await import('xlsx'),oe=Z.book_new();Z.book_append_sheet(oe,Z.json_to_sheet(U),X.substring(0,30));let Oe=ce(oe,{bookType:"xlsx",bookSST:!0,type:"binary"});_.file(X,Oe,{binary:!0});break;default:break}_.generateAsync({type:"blob",compression:"DEFLATE",compressionOptions:{level:9}}).then(Z=>{k(!1),saveAs(Z,D(F,"zip"));});}catch(Z){console.error(p.error_generating,Z),k(!1);}}},U=useMemo(()=>g&&N[g.ix]&&N[g.ix][O]?N[g.ix][O]:[],[N,g,O]),q=useMemo(()=>m&&m.length>0&&m.length===b.length&&m.map((F,_)=>jsx(Button,{leftIcon:jsx(IconDatabase,{size:16}),onClick:()=>j(F),variant:g?.ix===_?"filled":"default",loading:F.loading,disabled:F.loading,children:F.title},`source-${F.id}-${_}`)),[m,g,b]);return jsxs(Stack,{className:"cms-section-options-data",children:[jsx(Space,{h:"xs"}),jsx(LoadingOverlay,{visible:M,overlayBlur:2}),m.length===0&&!M&&jsx(Alert,{icon:jsx(IconAlertCircle,{size:"1rem"}),title:"Oops!",children:p.no_data_src}),m.length>1&&m.length===b.length&&!M&&jsx(Input.Wrapper,{label:`${p.choose_data_src}:`,children:jsx(Group,{spacing:"xs",children:q})}),g&&O&&jsx(Stack,{spacing:"xs",children:jsx(Input.Wrapper,{label:`${p.preview}
59
59
  ${U.length>l?p.rows_preview.replace("{nrows}",l):""}:`,children:jsxs(Group,{spacing:"xs",children:[jsx(Select,{disabled:!(g.data.length>1),style:{flex:"1"},value:O,onChange:F=>I(F),data:g.data.map((F,_)=>({value:`${_}`,group:typeof F=="string"?p.raw_group:p.formatted_group,label:typeof F=="string"?F:p.formatted_src.replace("{src}",g.title)})),icon:typeof g.data[O]=="string"?jsx(IconLink,{}):jsx(IconSparkles,{})}),jsx(CopyButton,{value:typeof g.data[O]=="string"?g.data[O]:"",timeout:2e3,children:({copied:F,copy:_})=>jsx(Tooltip,{label:F?p.copied:p.copy,withArrow:!0,position:"top",children:jsx(ActionIcon,{variant:F?"filled":"subtle",onClick:_,disabled:typeof g.data[O]!="string",children:F?jsx(IconClipboardCheck,{size:16}):jsx(IconClipboardCopy,{size:16})})})})]})})}),g&&!E&&U.length===0&&jsx(Alert,{icon:jsx(IconAlertCircle,{size:"1rem"}),title:"Oops!",children:p.error_preview}),g&&O&&!E&&U.length===0&&jsx("a",{href:g.data[O],target:"_blank",rel:"noreferrer",children:jsx(Button,{leftIcon:jsx(IconExternalLink,{size:16}),fullWidth:!0,children:p.open_in_window.replace("{src}",g.title)})}),jsxs(Stack,{pos:"relative",mih:"430px",children:[jsx(LoadingOverlay,{visible:E&&m.length>0,overlayBlur:2}),g&&!E&&U.length>0&&jsxs(Fragment,{children:[jsx(Box,{h:"350px",children:jsx(Sd,{data:U.slice(0,l)})}),jsx(Input.Wrapper,{label:`${p.download}:`,children:jsx(Button.Group,{children:Object.values(Kn).map(F=>jsx(Button,{leftIcon:jsx(F.icon,{size:24}),onClick:()=>Y(F.extension),loading:x,fullWidth:!0,children:F.extension},`format-${F.extension}`))})})]})]})]})}var Kn,WT,KT,Pd=S(()=>{u();pe();Td();me();Dn();Ra();Sa();Fr();xe();Mr();cr();Jr();rn();Mt();Kn={csv:{extension:"CSV",icon:IconFileTypeCsv},json:{extension:"JSON",icon:IconFileTypeJs},xlsx:{extension:"XLSX",icon:IconFileTypeXls}},WT={data_source:"Data Source",no_data_src:"No data sources defined",viz_source:"Visualization Source",error_generating:"Error generating file.",choose_data_src:"Choose data source",original_src:"Original {src}",loading:"Loading...",error_preview:`Sorry. We could not generate the data preview as a table.
60
60
  Try to open the source and check the data directly.`,open_in_window:"Open {src} response in a new window",formatted_src:"Formatted {src}",formatted_group:"Formatted Data",raw_group:"Raw Data",rows_preview:"(First {nrows} rows as preview)",choose_format:"Choose format",processing_file:"Processing file...",download:"Download data as",preview:"Preview",copy:"Click to copy",copied:"Copied!"},KT=e=>{let r=[];return e&&e.data&&(e.data&&Array.isArray(e.data)?r=e.data:e.data&&e.data.data&&Array.isArray(e.data.data)?r=e.data.data:e.data&&e.data.data&&e.data.data.results&&Array.isArray(e.data.data.results)?r=e.data.data.results:e.data&&e.data.results&&Array.isArray(e.data.results)&&(r=e.data.results)),r};});function Od(e){let{section:r}=e,t=r.blocks||[],o=H(j=>t.map(D=>j.records.entities.block[D]).filter(D=>D.type===f.VIZ&&j.variables.status[D.id].allowed)),[n,s]=useState(kt.section),[i,a]=useState(Ct.png),[l,c]=useState(!1),[d,p]=useState(!1),[m,y]=useState([]),[b,h]=useState(o.length>0?o[0].id:null),[g,L]=useState(!0),[O,I]=useState(!1),x=Ue("options"),k={...mR,...x.image_tab},{siteProps:N}=Eo(),A=N?.logoSrc&&typeof N.logoSrc=="string",E=r?.settings?.name||`section-${r.id}`,v=`#${E}`,M=useMantineTheme(),w=()=>{let j=C(b);return select(j).select("svg").size()===1},$=()=>`${jn(E)}`,G=()=>{let j=document.getElementById(E);return select(j).select(".bespoke-section-content").node()},C=j=>{let D=G();return select(D).select(`#bespoke-visualization-${j}.bespoke-block-area`).node()},B=()=>new Promise(j=>{let D;n===kt.section?D=G():n===kt.viz&&(D=C(b));let Y=document.createElement("div");Y.style.display="flex",Y.style.justifyContent="space-between",Y.classList.add("bespoke-Viz-source"),Y.style.padding=M.spacing.xs,Y.style.width="100%";let U=document.createElement("div");if(U.innerText=k.source.replace("{src}",`${window.location}${v}`),U.style.fontSize=M.fontSizes.xs,Y.appendChild(U),A){let q=document.createElement("img");q.src=N.logoSrc,q.style.height="30px",q.onload=()=>j(D),q.onerror=()=>{q.remove(),j(D);},Y.appendChild(q),D.appendChild(Y);}else D.appendChild(Y),j(D);}),W=j=>{if(g)return "transparent";let D=select(j).style("background-color");return D!=="rgba(0, 0, 0, 0)"&&D!=="transparent"?D:j===document.body?"white":W(j.parentNode)},K=async(j,D)=>{let{toPng:Y}=await import('html-to-image');Y(j,{backgroundColor:D.background,cacheBust:!0,filter:U=>U&&U.classList?!D.exclusionClasses.some(q=>U.classList.contains(q)):!0}).then(U=>{let q=document.createElement("a");q.download=`${D.filename}.png`,q.href=U,q.click(),dR(),c(!1);}).catch(U=>{console.log(U);});},V=(j,D)=>{saveElement(j,{filename:D.filename,type:"svg",callback:()=>c(!1)},{background:D.background});},re=async()=>{c(!0);let j=await B(),D={background:W(j),exclusionClasses:["export-hidden"],filename:$()},Y=i===Ct.png?K:V;try{if(j)Y(j,D);else throw new Error(k.wrong_node)}catch{c(!1);}},te=async()=>{let{toCanvas:j}=await import('html-to-image');Promise.all(o.map(D=>j(C(D.id)))).then(D=>{y(D.map(Y=>Y.toDataURL())),I(!1);});};return useEffect(()=>{n===kt.viz&&o.length>0?(h(o[0].id),I(!0),te()):n===kt.section&&y([]);},[n]),useEffect(()=>{b&&(w()?p(!0):(p(!1),a(Ct.png)));},[b]),jsxs(Stack,{className:"cms-section-options-image",children:[jsx(Space,{h:"xs"}),o.length>0?jsx(Input.Wrapper,{label:`${k.choose_area}:`,children:jsx(SegmentedControl,{fullWidth:!0,value:n,data:[{value:kt.section,label:jsxs(Center,{children:[jsx(IconTemplate,{size:"1rem"}),jsx(Box,{ml:10,children:k.entire_section})]})},{value:kt.viz,label:jsxs(Center,{children:[jsx(IconChartBar,{size:"1rem"}),jsx(Box,{ml:10,children:k.viz_only})]})}],onChange:j=>{s(j),j===kt.section&&a(Ct.png);}})}):jsx(Text,{fw:"700",color:"gray.7",children:`${k.entire_section}:`}),n===kt.viz&&o.length>0&&jsxs(Input.Wrapper,{label:`${k.choose_viz}:`,style:{minHeight:"161px",position:"relative"},children:[!O&&m.length>0&&jsx(ScrollArea,{style:{height:250},children:jsx(SimpleGrid,{cols:3,children:o.map((j,D)=>jsx(Image,{alt:`Viz ${j.id}`,onClick:()=>{h(j.id);},style:{cursor:"pointer",border:b===j.id?"4px solid #228be6":"4px solid #eee"},radius:0,src:m[D],withPlaceholder:!0},`viz-option-${j.id}`))})}),jsx(LoadingOverlay,{visible:O})]}),d&&n!==kt.section&&jsx(Input.Wrapper,{label:`${k.choose_format}:`,children:jsxs(Button.Group,{children:[jsx(Button,{leftIcon:jsx(IconPolaroid,{size:16}),onClick:()=>a(Ct.png),variant:i===Ct.png?"filled":"default",fullWidth:!0,children:Ct.png}),jsx(Button,{leftIcon:jsx(IconCode,{size:16}),onClick:()=>a(Ct.svg),variant:i===Ct.svg?"filled":"default",fullWidth:!0,children:Ct.svg})]})}),jsx(Checkbox,{checked:g,label:`${k.transparent_bg}`,onChange:()=>L(!g),radius:"xl"}),jsx(Button,{leftIcon:jsx(IconDownload,{size:16}),loading:l,onClick:re,fullWidth:!0,children:jsx("span",{children:l?k.processing:k.download.replace("{imageFormat}",i)})})]})}var kt,Ct,dR,mR,Bd=S(()=>{u();Ra();pe();Mt();Ht();me();kt={viz:"viz",section:"section"},Ct={png:"PNG",svg:"SVG"},dR=()=>{let e=document.getElementsByClassName("bespoke-Viz-source");Array.from(e).forEach(r=>r.remove());},mR={wrong_node:"Wrong node in export",choose_area:"Choose image area",choose_viz:"Choose visualization",choose_format:"Choose format",transparent_bg:"Transparent background",processing:"Processing image...",download:"Download {imageFormat}",entire_section:"Entire section",viz_only:"Visualization only",source:"Source: {src}"};});function Md(e){let{title:r,url:t,disabled:o=!1}=e,n=o?IconCode:IconLink;return jsx(Input.Wrapper,{label:r,children:jsx(Input,{icon:jsx(n,{}),value:t,disabled:o,readOnly:!0,rightSection:jsx(CopyButton,{value:t,timeout:2e3,children:({copied:s,copy:i})=>jsx(Tooltip,{label:s?"Copied":"Copy",withArrow:!0,position:"right",children:jsx(ActionIcon,{variant:s?"filled":"subtle",onClick:i,disabled:o,children:s?jsx(IconClipboardCheck,{size:16}):jsx(IconClipboardCopy,{size:16})})})})})})}var Nd=S(()=>{u();});function Fd(e){let{section:r}=e,[t,o]=useState(""),[n,s]=useState(""),[i,a]=useState(!0),l=Ue("options"),c={...VR,...l.share_tab};return useEffect(()=>{s(document.title);let{origin:d,pathname:p}=window.location,m=`${d}${p}`,y=i?`#section-${r.id}`:"";o(`${m}${y}`);},[i]),jsxs(Stack,{className:"cms-section-options-share",children:[jsx(Space,{h:"xs"}),jsx(Md,{title:`${c.title}: ${n}`,url:t}),jsx(Checkbox,{checked:i,label:c.include_section,onChange:()=>a(!i),radius:"xl"}),jsxs(Group,{position:"center",children:[jsx(FacebookShareButton,{url:t,quote:n,children:jsx(FacebookIcon,{size:32,round:!0})}),jsx(TwitterShareButton,{url:t,title:n,children:jsx(TwitterIcon,{size:32,round:!0})}),jsx(TelegramShareButton,{url:t,title:n,children:jsx(TelegramIcon,{size:32,round:!0})}),jsx(WhatsappShareButton,{url:t,title:n,separator:":: ",children:jsx(WhatsappIcon,{size:32,round:!0})}),jsx(LinkedinShareButton,{url:t,children:jsx(LinkedinIcon,{size:32,round:!0})}),jsx(RedditShareButton,{url:t,title:n,windowWidth:660,windowHeight:460,children:jsx(RedditIcon,{size:32,round:!0})}),jsx(EmailShareButton,{url:t,subject:n,children:jsx(EmailIcon,{size:32,round:!0})})]})]})}var VR,zd=S(()=>{u();Nd();Mt();VR={title:"Title",include_section:"Include Section"};});function Ud(e){let{section:r,initialMode:t,onEnds:o,open:n,title:s}=e,i=qn(r.settings),a=useMemo(()=>qR.filter(y=>i[y]),[i]),[l,c]=useState(t||a[0]||"data"),d=Ue("options");useEffect(()=>{t!==l&&c(t);},[t]);let p={...Ia,...d},m=useMemo(()=>jsxs(Fragment,{children:[jsxs(Tabs.List,{children:[i.data&&jsx(Tabs.Tab,{value:"data",children:p.download_title}),i.image&&jsx(Tabs.Tab,{value:"image",children:p.image_title}),i.share&&jsx(Tabs.Tab,{value:"share",children:p.share_title})]}),i.data&&jsx(Tabs.Panel,{value:"data",children:jsx(Ad,{section:r})}),i.image&&jsx(Tabs.Panel,{value:"image",children:jsx(Od,{section:r})}),i.share&&jsx(Tabs.Panel,{value:"share",children:jsx(Fd,{section:r})})]}),[i,r,p]);return jsx("div",{className:"cms-section-options-modal",children:n&&jsx(Modal,{className:"bespoke-options-modal",opened:!0,onClose:()=>o(),size:"xl",title:s,children:jsx(Tabs,{onTabChange:c,value:l,keepMounted:!1,children:m})})})}var Ia,qR,Gd=S(()=>{u();Pd();Bd();zd();Mt();Hn();Ia={download_title:"Download Data",image_title:"Save Image",share_title:"Share Link"},qR=["data","image","share"];});function jd(e){let{sectionId:r,disabled:t=!1}=e,[o,n]=useState(!1),[s,i]=useState("data"),a=bn(r),l=Ue("options"),c={...Ia,...l},d=qn(a.isSuccess?a.data.settings:{}),p=y=>{i(y),n(!0);},m=()=>{n(!1);};return jsxs("div",{className:"cms-section-options",children:[jsxs(Button.Group,{children:[d.data&&jsx(Button,{variant:"default",size:"xs",compact:!0,onClick:()=>p("data"),"aria-label":c.download_title,disabled:t,children:jsx(IconTable,{size:16})}),d.image&&jsx(Button,{variant:"default",size:"xs",compact:!0,onClick:()=>p("image"),"aria-label":c.image_title,disabled:t,children:jsx(IconCamera,{size:16})}),d.share&&jsx(Button,{variant:"default",size:"xs",compact:!0,onClick:()=>p("share"),"aria-label":c.share_title,disabled:t,children:jsx(IconShare,{size:16})})]}),a.isSuccess&&jsx(Ud,{section:a.data,initialMode:s,open:o,onEnds:m})]})}var Wd=S(()=>{u();Gd();pe();Mt();Hn();});var Kd=S(()=>{u();pe();});function QR({children:e,containerProps:r},t){return jsx(Flex,{ref:t,className:"bespoke-section-content",pos:"relative",align:"stretch",p:0,direction:{base:"column",md:"row"},wrap:"wrap",...r,children:e})}var Xn,Zd,Xd=S(()=>{u();pe();Kd();Xn=Dt__default.forwardRef(function({children:r,column:t,basis:o,columnSettings:n={},sx:s={},...i},a){let l=Object.values(t).some(m=>m.settings?.display==="inline"),c=n?.width?`${n.width}px`:o,d=n?.width?`${n?.width}px`:"100&",p=n?.full?"100%":d;return jsx(Flex,{ref:a,className:"bespoke-section-col",align:"flex-start",direction:l?"row":"column",wrap:l?"wrap":"nowrap",maw:{base:"100%",md:p},miw:{base:"none",md:300},p:0,pos:"relative",sx:[{flexGrow:1,flexShrink:n?.full?0:1,flexBasis:n?.full?"100%":c},...packSx(s)],...i,children:r})}),Zd=Dt__default.forwardRef(QR);});var em=S(()=>{u();});var Go,tm=S(()=>{u();_e();pe();em();me();Go={px:e=>Number.isNaN(parseFloat(e))?"px":`${e}px`.replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,"),"%":e=>Number.isNaN(parseFloat(e))?"%":`${e}%`.replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")},{px:{defaultValue:400,min:25,step:5,formatter:Go.px},"%":{defaultValue:50,min:20,max:100,step:5,formatter:Go["%"]}};});var wa,rm=S(()=>{u();wa={backgroundColor:"#fafafa",block:{padding:10},column:{padding:12},section:{backgroundColor:"white",borderRadius:10,boxShadow:"0px 6px 10px rgba(12, 32, 50, 0.14), 0px 1px 15px rgba(12, 32, 50, 0.12), 0px 3px 5px rgba(12, 32, 50, 0.15)",margin:8,padding:32}};});function Oa({previews:e,translations:r}){let t=$e(),o=useMemo(()=>e.map(({image:n,name:s},i)=>(n?.author||n?.url)&&jsxs(Stack,{spacing:0,children:[n.author&&jsxs(Text,{size:"xs",children:[s," ",r.image_by," ",jsx("strong",{children:n.author})]}),n.url&&jsxs(Text,{size:"xs",children:["URL: "," ",jsx(Anchor,{href:n.url,target:"_blank",children:n.url})]}),i+1<e.length&&jsx(Divider,{})]},n.id)),[e]);return jsx(Fragment,{children:t?jsx(Fragment,{children:o}):jsxs(Popover,{position:"right",children:[jsx(Popover.Target,{children:jsx(ActionIcon,{variant:"light",radius:"xl",children:jsx(IconPhoto,{size:20})})}),jsx(Popover.Dropdown,{children:o})]})})}var sm=S(()=>{u();_t();});function cx({name:e,children:r,id:t,sectionSettings:o,sectionStyles:n,previews:s,translations:i}){let a=$e(),l=o.memberImageBg&&s.some(({image:c})=>c&&(c.url||c.author));return jsxs(ix,{className:`bespoke-Section-${t} bespoke-Section-root `,settings:o,styles:n?.root||void 0,children:[o.memberImageBg&&jsx(bd,{previews:s}),jsxs(ax,{className:`bespoke-Section-${t} bespoke-Section-container `,settings:o,styles:n?.container,id:e||`section-${t}`,pos:"relative",children:[!a&&jsx(Group,{position:"right",mb:"xs",children:o.optionsMenu&&jsx(jd,{sectionId:t,disabled:!1})}),jsxs(lx,{className:`bespoke-Section-${t} bespoke-Section-container`,settings:o,styles:n?.content,children:[r,l&&jsx(Oa,{previews:s,translations:i})]})]})]})}function ux({section:e}){let{id:r,settings:t}=e,o={...yd,...t},n=Ge(),s=H(x=>x),i=H(x=>x.variables.status),a=H(x=>x.status.previews),l=n.active&&n.status?a.concat(n.status?.previews||[]):a,c=We().Section,d=ht(s),p=Object.values(d||{}).filter(x=>x.section_id===r),m=Ue("sections"),y={...sx,...m},b=p.some(x=>{try{return i[x.id].allowed&&![f.GENERATOR,f.SECTION_FLAG].includes(x.type)||x.type===f.NAV}catch{return x.settings.allowed==="always"}}),h=p.filter(x=>![f.GENERATOR,f.SECTION_FLAG].includes(x.type)).reduce((x,k)=>(x[k.blockcol]?x[k.blockcol][k.blockrow]=k:x[k.blockcol]={[k.blockrow]:k},x),{}),g=Object.keys(p).length>0&&!t.hidden&&b,L=Object.keys(h).length;if(!g||n.active&&t.comparisonHide)return null;let O=(x,k=!1)=>{let N=Array.from(new Set(x.map(E=>E.blockcol))).map(E=>({blockcol:E})).sort((E,v)=>qe(E,v,"blockcol")),A=[];return N.forEach(({blockcol:E})=>{let v=x.filter(M=>M.blockcol===E).sort((M,w)=>qe(M,w,"blockrow")).map(M=>{if(!M.id||!i[M.id]?.allowed&&M.type!==f.NAV)return null;let{settings:w,type:$}=d[M.id],G=w.width&&!w.width.stretch&&w.width.unit?Go[w.width.unit](w.width.value):w.display==="inline"?"auto":"100%",C={alignSelf:$===f.VIZ?"stretch":"flex-start",flexGrow:0,margin:"0",width:G,minWidth:300};return jsx(Box,{className:"bespoke-Block-wrapper",id:`bespoke-Block-${M.id}`,sx:C,py:wa.block.padding,children:jsx(Gn,{blockId:M.id,asComparison:k},M.id)},M.id)});A.push(v);}),A.flat()},I=[];if(n.active&&!t.comparisonMerge){let x=p.filter(k=>![f.GENERATOR,f.SECTION_FLAG].includes(k.type)).reduce((k,N)=>({...k,[N.id]:N}),{});I=[jsx(Xn,{column:x,basis:"50%",children:O(Object.values(p.filter(k=>![f.GENERATOR,f.SECTION_FLAG].includes(k.type))))},"original"),jsx(Xn,{column:x,basis:"50%",children:O(Object.values(p.filter(k=>![f.GENERATOR,f.SECTION_FLAG].includes(k.type))),!0)},"comparison")];}else I=Object.keys(h).sort((x,k)=>-ls(x,k)).map(x=>{let k=h[x],N=t.columnSettings?t.columnSettings[x]:{},A=Object.values(k).sort((E,v)=>qe(E,v,"blockrow"));return A.some(E=>!i[E.id]||i[E.id].allowed||E.type===f.NAV)?jsx(Xn,{column:k,columnSettings:N,basis:`calc(${100/L}% - (10px * ${L}))`,children:A.map(E=>{if(!E.id||!i[E.id]?.allowed&&E.type!==f.NAV)return null;let{settings:v,type:M}=d[E.id],w=v.width&&!v.width.stretch&&v.width.unit?Go[v.width.unit](v.width.value):v.display==="inline"?"auto":"100%",$={alignSelf:M===f.VIZ?"stretch":"flex-start",flexGrow:0,margin:"0",width:w,minWidth:300};return jsx(Box,{className:`bespoke-Block-wrapper bespoke-${E.type}-wrapper`,id:`bespoke-Block-${E.id}`,sx:$,py:wa.block.padding,children:jsx(Gn,{blockId:E.id},E.id)},E.id)})},x):null});return jsx(cx,{id:r,name:e?.settings?.name,previews:l,sectionSettings:o,sectionStyles:c,translations:y,children:jsx(Zd,{containerProps:{gap:o.columnGutter||"md",wrap:n.active?"nowrap":"wrap",sx:{zIndex:20}},children:I})})}var sx,_a,ix,ax,lx,lm,cm=S(()=>{u();pe();Wt();gd();Hn();Ar();vd();Wd();Sr();me();Xd();tm();rm();_t();Mt();sm();Nt();sx={image_by:"image by"},_a=(e,r)=>t=>e?e(t,r):{},ix=({settings:e,styles:r,children:t,...o})=>{let{position:n}=e,s={normal:{position:"relative",backgroundColor:"transparent",borderRadius:0},sticky:{position:"sticky",zIndex:2,top:0,borderRadius:0,borderTop:"none",borderLeft:"none",borderRight:"none"}},i={normal:{radius:0},sticky:{radius:0,withBorder:!0}},a=[s[n],_a(r,e)];return jsx(Paper,{component:"section",sx:a,...i[n],...o,children:t})},ax=({settings:e,styles:r,children:t,...o})=>{let{width:n}=e,s={center:{zIndex:1},full:{zIndex:1}},i={center:{size:"lg",p:"sm",fluid:!1},full:{fluid:!0,p:"md"}},a=[s[n],_a(r,e)];return jsx(Container,{sx:a,...i[n],...o,children:t})},lx=({settings:e,styles:r,children:t,...o})=>{let{style:n}=e,s={none:{},card:{}},i={none:{bg:"transparent"},card:{shadow:"lg",p:"md",radius:"md"}},a=[s[n],_a(r,e)];return jsx(Paper,{sx:a,...i[n],...o,children:t})};lm=ux;});function $e(){return useContext(mm)}function Ex({pathSegmentsKey:e="bespoke"}){let{asPath:r,query:t}=useRouter(),o=xo(),n=Ge(),s=pm(t.print)??!1,i=pm(t.printBtn)??!1,[a,l]=useState(!1),c=()=>{l(!0),on.post("/api/cms/pdf",{path:r,slugs:t[e]}).then(d=>{let p=Buffer.from(d.data.data,"base64"),m=new Blob([p],{type:"application/pdf"});saveAs(m,"test.pdf"),l(!1);});};return _n(),jsxs(mm.Provider,{value:s,children:[s&&jsx(MediaQuery,{query:"print",styles:{display:"block"},children:jsx(Title,{display:"none",children:"This is the report header"})}),jsxs(Container,{id:"bespoke-report",className:n.comparisonLoaded?"compare":"",p:0,pos:"relative",fluid:!0,children:[o.isSuccess&&o.data.sort(qe).map(d=>jsx(lm,{section:d},d.id)),i&&!s&&jsx(Affix,{position:{bottom:rem(20),right:rem(20)},children:jsx(ActionIcon,{variant:"filled",radius:"xl",color:"blue",onClick:c,children:a?jsx(Loader,{size:"1.125rem",color:"white"}):jsx(IconDownload,{size:"1.125rem"})})})]})]})}var mm,fm,_t=S(()=>{u();pe();Ar();cm();Nt();Ci();mm=createContext(!1);fm=Ex;});u();u();Ht();_t();Pi();Mt();Nt();u();pe();var Cx=createContext({active:!1});function Ma({children:e}){let t=H(o=>Object.values(o.records.entities.report)[0]).settings;return jsx(Cx.Provider,{value:{active:t.pdf||!1},children:e})}Qr();function wx({pathSegmentsKey:e="bespoke",translations:r,bespokeStyles:t,buildTime:o,siteProps:n,profilePrefix:s="/defaultPath",loader:i=jsx(LoadingOverlay,{visible:!0}),mantineProviderProps:a={}}){return Bn(e)?jsx(Fragment,{children:i}):jsx(MantineProvider,{...a,theme:{other:{bespokeStyles:t}},inherit:!0,children:jsxs(nc,{pathSegment:"bespoke",profilePrefix:s,siteProps:n,children:[jsx(ri,{translations:r,children:jsx(di,{children:jsx(Ma,{children:jsx(xc,{pageSize:12,children:jsx(fm,{})})})})}),jsx("small",{className:"bespoke-timestamp",children:o})]})})}/*! Bundled license information:
61
61
 
package/dist/server.js CHANGED
@@ -60,6 +60,6 @@ Error initializing sequelize connection:
60
60
  `,`Error message: ${d.message}`),"N/A"}})}var jr=(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]=pt(a[s],t,r):Array.isArray(a[s])?a[s]=a[s].filter(n).map(i=>typeof i=="object"?jr(i,t,r):typeof i=="string"?pt(i,t,r):i):typeof a[s]=="object"&&a[s]!==null&&!(a[s]instanceof Date)&&(a[s]=jr(a[s],t,r));}),a},dr=jr;var ga=e=>Array.isArray(e)?e.map(t=>typeof t=="string"?{allowed:"always",label:t,id:t}:{allowed:"always",label:t.id,...t}):[];var Hr=(e,t,r)=>{if(!r)return !1;if(e===Be.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 Wr(e,t,r,o,n=!1){let{variables:a}=ce(o),s=dr({logic:t},r,o).logic,i=Ve("variables",a,s,r,void 0,o),{vars:c,log:l,error:p}=i,u=c.type||Be.SINGLE,d=c.component||"Selector",m=c.hideLabel||"false",y=c.resetSectionVars||"false",h=c.name||"Unlabeled Selector",R=ga(c.options||[]),T=A=>u===Be.MULTI&&!Array.isArray(A)?[A]:A,k=c.defaultValue,w;if(k&&(k=T(k),Hr(u,k,R)&&(w=k)),!w){let A=R&&R[0]&&R[0].id||R[0]||"";w=T(A);}if(n&&typeof window<"u"){let A=`selector${e}id`,C=new URLSearchParams(window.location.search),F=Object.fromEntries(C)[A];F&&!Hr(u,F,R)&&F!==void 0&&(C.delete(A),window.history.replaceState(null,null,`?${C.toString()}`));}return {config:{name:h,type:u,options:R,defaultValue:w,component:d,hideLabel:m,resetSectionVars:y},log:l,error:p}}function Jr(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 Yr(e,t,r,o,n=!1){let{variables:a}=ce(o),s=dr({logic:t},r,o).logic,i=Ve("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&&!Jr(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 Zc=(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===Be.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}},ya=Zc;var Xc=(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}},ha=Xc;var{localeDefault:Ra,locales:el}=z(),tl=Object.values(Mr),rl=(e,t=Ra)=>e&&tl.includes(e.type)?{locale:Nr,locales:[Nr]}:{locale:t,locales:el},ba=(e,t=Ra)=>{if(!e)return {};let{locale:r}=rl(e,t);return e.contentByLocale?.[r]?.content};function ol(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 Sa=ol;function Qr(e){return e.type===x.SECTION_FLAG&&e.inputs.length===0&&e.consumers.length===0?!!e.contentByLocale?.logic?.content?.logic?.includes(cr):!1}var ze=lr(process.env.NEXT_PUBLIC_REPORTS_DEBUG),il=process.env.REPORTS_ORIGIN||"";Ea(mr,{retries:3,retryDelay:Ea.exponentialDelay,onRetry:(e,t,r)=>{console.log("Generator request failed. Retrying... Count: ",e),console.log("URL: ",r.url),console.log(t.message);}});mr.interceptors.request.use(e=>({...e,requestStart:Date.now()}));mr.interceptors.response.use(e=>({...e,requestDuration:new Date().getTime()-e.config.requestStart}),e=>Promise.reject(e));var cl=(e,t,r)=>{let o=pt(e,t,r);return o.startsWith("http")||(o=`${il}${o.startsWith("/")?"":"/"}${o}`),o},{urlProxy:ll}=Vt("/api/cms");function Xr(e){return e.ok!==void 0}function Zr(e){this.message=e,this.name="ApiFetchException";}var Aa=process.env.NEXT_PUBLIC_REPORTS_API_FETCH_TIMEOUT||0;async function ul(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 ll({url:a,timeout:Aa});if(u.ok===!0)s=u.data;else throw new Zr(u?.error)}else try{let u=await mr({url:a,timeout:Aa});if(u.status===200)u.headers["content-type"]==="text/csv"?s=csvParse(u.data):s=u.data;else throw new Zr("No response")}catch(u){throw new Zr(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=At(s,h);if(R&&Array.isArray(R)){let T=Array.from(new Set(R.map(E=>`${E[y]}`).filter(E=>!["","undefined"].includes(E)))),k=T.join("").length>2e3,w=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(E=>{let A=[];return Xr(E)?E.ok&&(A=E.data.results):A=E.results,A&&Array.isArray(A)?A:[]}).catch(E=>(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(E),[]));if(w){let E=Object.fromEntries(w.map(A=>[A.id,`/${A.variant_slug}/${A.slug}`]));R.map(A=>(A.bespoke_slug=E[A[y]]?E[A[y]]:null,A));}}}}}return {data:s,requestDuration:Date.now()-n}}function pl(e){this.name="BlockException",this.message=e;}async function Ta(e,t,r,o){let{locale:n,variables:a,query:s}=ce(r),i=ml(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===x.FALLBACK)return {outputVariables:{},renderVariables:{},status:{allowed:i,hiddenByCascade:e.id}};if(l){d=cl(l,t,r);let E=d.split(Pn).filter(M=>M!==""),A=[];for(let M=0;M<E.length;M++){let F=E[M];new RegExp("^(?:[a-z+]+:)?//","i").test(d)||(F=`${process.env.NEXT_PUBLIC_REPORTS_BASE_URL}/${F}`.replace(/([^:]\/)\/+/g,"$1")),A.push(ul(F,o,n,e).catch(j=>{throw new pl(` Excecution of ${e.type}-${e.id} in section ${e.section_id} in report ${a.report_name} (${a.report_id}) failed.
61
61
  Error fetching ${F}.
62
62
  Message: ${j.message}.
63
- `)}));}let C=await Promise.all(A).catch(M=>M.message);if(typeof C=="string"&&C)return {outputVariables:{},renderVariables:{},status:{error:C}};c=C.length===1?C[0].data:C.map(M=>M.data),u=C.reduce((M,F)=>M+JSON.stringify(F.data).length/1024,0),p=Math.max(...C.map(M=>M.requestDuration));}if(e.type===x.SELECTOR){let{config:E,log:A,error:C}=Wr(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:ya(e.id,s,E),renderVariables:E,status:{log:A,error:C,allowed:i}}}if(e.type===x.MULTIHIERARCHY_SELECTOR){let{config:E,log:A,error:C}=Yr(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:ha(e.id,s,E),renderVariables:E,status:{log:A,error:C,allowed:i}}}if(e.type===x.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:i}};if(e.type===x.RELATED){let E=e.contentByLocale?.logic?.content?.simple?.compare||"variant",A=e.contentByLocale?.logic?.content?.simple?.limit||4,C=Object.keys(a).filter(b=>b.startsWith("report_id")).map(b=>a[b]),M=Object.keys(a).filter(b=>b.startsWith("dimension_id")).map(b=>a[b]),F=Object.keys(a).filter(b=>b.startsWith("variant_id")).map(b=>a[b]),W=Object.keys(a).filter(b=>b.startsWith("id")).map(b=>a[b]);if(!W.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:!1}};let O=(await o({mode:"ids",locale:n,ids:W,output:"lite"}).then(b=>{let L=[];return Xr(b)?b.ok&&(L=b.data.results):L=b.results,L&&Array.isArray(L)?L:[]}).catch(b=>(console.log("Error getting related members",b),[]))).map(b=>b.content_id),N={mode:"related",locale:n,related:A??4,current_ids:O,output:"full"};E&&(E==="report"?N.report_ids=C:E==="dimension"?N.dimension_ids=M:N.variant_ids=F);let q=await o(N).then(b=>{let L=[];return Xr(b)?b.ok&&(L=b.data.results):L=b.results,L&&Array.isArray(L)?L:[]}).catch(b=>(console.log("Error getting related members",b),[]));return {outputVariables:{related_reports:q},renderVariables:{},status:{log:[],allowed:q.length>0}}}let{logic:m}=ba(e,n),y=pt(m,t,r),h=Ve("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 w=Object.keys(R).reduce((E,A)=>({...E,[`${e.type}${e.id}${A}`]:R[A]}),{});return {renderVariables:R,outputVariables:[x.GENERATOR,x.SECTION_FLAG].includes(e.type)?R:w,status:{log:k,error:T,duration:p,responseSize:u,resp:c,api:d,allowed:i}}}function dl(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=>eo(l,t,o,!1,a,n,s));}})}var eo=(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=>eo(p,t,r,o,!1,a,s));}),i&&i.consumers.length&&n&&dl(i,t,e,r,a,n,s),r},ml=(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=ce(t),{error:s,output:i}=Ve("variables",r,e.settings.allowedLogic||"return false;",o,void 0,a);s||(n=!!i);}return n},fr=async(e,t,r,o,n,a={},s,i="section")=>{let c=i==="section",l=ce(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((O,{id:N})=>({...O,...Sa(N,e)}),{}):h=Object.values(e).filter(O=>Qr(O)).reduce((O,N)=>({...O,[N.id]:N}),{});let R=Object.values(h).filter(O=>Qr(O));if(R.length>0){ze&&console.log("%crunConsumers: calculating section flags","color:purple",R.map(b=>b.id).join(", "));let O=Object.fromEntries(await Promise.all(R.map(async b=>[b.id,await Ta(b,o,{...l,variables:p,locale:p.locale},s).then(L=>{let{outputVariables:G,status:v}=L;if(v.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${b.id}, Section ${b.section_id}) failed with message: ${v.error}. `);d[b.id]={allowed:!1,error:v.error},u[b.id]={};}return (b.consumers.length>0||[x.GENERATOR,x.SECTION_FLAG,x.RELATED].includes(b.type))&&v.allowed&&Object.keys(G).length>0?u[b.id]=G:u[b.id]={},i==="report"?(d[b.id]={allowed:v.allowed},[x.GENERATOR,x.SECTION_FLAG].includes(b.type)&&v.api&&(d[b.id].api=v.api)):d[b.id]=v,L})]))),q=Object.entries(O).filter(([b,L])=>!L.outputVariables[cr]).map(([b])=>Number(b));m=new Set(q.map(b=>e[b].section_id)),Object.values(h).filter(b=>m.has(b.section_id)).forEach(b=>{y.push(b.id),delete h[b.id];}),ze&&console.log("%crunConsumers: removing sections","color:purple",m.keys());}let T=m.size>0?Object.fromEntries(Object.entries(e).filter(([O,N])=>m?.has(N.section_id)?(y.push(N.id),!1):!0)):e;if(y.length>0&&(T=Object.fromEntries(Object.entries(T).map(([O,N])=>{let q={...N,inputs:N.inputs.filter(b=>!y.includes(b)),consumers:N.consumers.filter(b=>!y.includes(b))};return [O,q]}))),!r&&!t)return {variables:{...a.variables??{},...u},status:{...a.status??{},...d}};ze&&console.log("%crunConsumers: running root blocks","color:purple",Object.keys(h));let k=Object.keys(h).reduce((O,N)=>{let q=new Date,b=eo(Number(N),T,[],!r,!0,c).map(v=>v.split("-")),G=(new Date().getTime()-q.getTime())/1e3;return ze&&console.log(`%cResolved dependencies for ${N} (${G.toFixed(2)}s)`,"color:blue"),[...O,...b]},[]),w=new Date,E=Object.keys(h).reduce((O,N)=>O.includes(N)?[...O]:[N,...O],nl(k)),C=(new Date().getTime()-w.getTime())/1e3;ze&&console.log(`%cResolved DAG (${C.toFixed(2)}s): `,"color:green",E);async function M(O,N){let q=new Map;for(let b of O){let L=N[b],v=Promise.all(L.inputs.filter(P=>O.includes(String(P))).map(P=>q.get(Number(P)))).then(async()=>{let P=L.inputs.reduce((J,Y)=>({...J,...u[Y]}),p),U=L.inputs.find(J=>(L.settings?.ignoreCascade?L.settings?.ignoreCascade:[]).includes(J)?!1:!d[J].allowed||d[J].hiddenByCascade);if(U){d[b]={allowed:!1,hiddenByCascade:d[U].hiddenByCascade||U},u[b]={};return}let ee=new Date,B=await Ta(L,o,{...l,variables:P,locale:P.locale},s).then(({outputVariables:J,status:Y})=>{if(Y.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${b}, Section ${L.section_id}) failed with message: ${Y.error}. `);d[b]={allowed:!1,error:Y.error},u[b]={};}(L.consumers.length>0||[x.GENERATOR,x.SECTION_FLAG,x.RELATED].includes(L.type))&&Y.allowed&&Object.keys(J).length>0?u[b]=J:u[b]={},i==="report"?(d[b]={allowed:Y.allowed},[x.GENERATOR,x.SECTION_FLAG].includes(L.type)&&Y.api&&(d[b].api=Y.api)):d[b]=Y;}),oe=(new Date().getTime()-ee.getTime())/1e3;return ze&&console.log(`%cBlock ${L.id} resolved in ${oe.toFixed(3)}s`,oe>500?"color:red":"color:green"),B});q.set(Number(b),v);}await Promise.all(Array.from(q.values()));}let F=new Date;await M(E,T);let j=(new Date().getTime()-F.getTime())/1e3;return ze&&console.log(`%cResolved Variables (${j.toFixed(2)}s): `,"color:green"),{variables:{...a.variables??{},...u},status:{...a.status??{},...d}}};function fl(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 gr=fl;function yl(){let{publicRuntimeConfig:e}=gl(),t=e.bespoke_report_env_vars||{};return {...Object.keys(t).reduce((r,o)=>(r[`ENV_${o}`]=t[o]||"N/A",r),{})}}var yr=yl;function hl(e,t){return +(e<t)-+(e>t)}function hr(e,t,r="ordering"){return hl(t[r],e[r])}var _a=(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:xe,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:bl}=z();var zt=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});zt.define({consumers:[zt],inputs:[zt]});var ka=new schema.Entity("variant"),Pa=new schema.Entity("dimension",{variants:[ka]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),wa=new schema.Entity("section",{blocks:[zt]}),Sl=new schema.Entity("report",{dimensions:[Pa],sections:[wa]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(hr):[]}}}),El=new schema.Entity("formatter"),Al={report:Sl,section:wa,block:zt,dimension:Pa,variant:ka,formatter:El};function Rr(e,t){let r=Al[e];if(!r)throw new Error(`Invalid entity type: ${e}`);let{entities:o}=normalize(t,[r]);return {report:dt(o,"report"),dimension:dt(o,"dimension"),section:dt(o,"section"),block:dt(o,"block"),variant:dt(o,"variant"),formatter:dt(o,"formatter")}}function dt(e,t){return e.hasOwnProperty(t)?e[t]:{}}var xa=(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}},to=(e=[],t=bl)=>e.reduce((r,o)=>{let n=_a({vars:["n"],logic:o.content.logic},{},t,{});return r[o.name]=n,r},{});var ue=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",br=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[ue];br.includes(ue)||br.push(ue);var _l={localeDefault:ue,locales:br,currentLocale:ue,preferredLocale:ue,showToolbar:!1,activeSection:null,previews:[],query:{},sectionState:{},activeEntity:{type:null,id:null},sidebarStatus:{tools:!0,settings:!1,reportEditor:!1},isCMS:!1},Sr=createSlice({name:"status",initialState:_l,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]};}},extraReducers:{[HYDRATE]:(e,t)=>({...e,previews:t.payload.status.previews})}}),qe=Sr.actions;var wl={attributes:{},variables:{},status:{}},Er=createSlice({name:"variables",initialState:wl,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}})}}),Ar=Er.actions;var Bl={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}}},Te=createSlice({name:"records",initialState:Bl,reducers:{set:(e,t)=>{let r=t.payload;return {entities:qt(e.entities,r.entities||{}),requests:qt(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=Rr(r.type,o),a=qt(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=Tr(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=Tr(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=Rr(r.type,r.data),n=qt(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=Rr(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=qt(e.entities,n);if(e.entities=c,r.type==="dimension"){let l=r.data;e.entities.report[l.report_id].dimensions=Tr(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=Tr(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`;Cl(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 qt(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function Tr(e,t){return e.map(n=>t[n]).sort(hr).map(n=>n.id)}function Cl(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=Vl[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 ft(e){return !!e&&!!e[se]}function Ge(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)===zl}(e)||Array.isArray(e)||!!e[Da]||!!(!((t=e.constructor)===null||t===void 0)&&t[Da])||po(e)||mo(e))}function Gt(e,t,r){r===void 0&&(r=!1),yt(e)===0?(r?Object.keys:Ro)(e).forEach(function(o){r&&typeof o=="symbol"||t(o,e[o],e);}):e.forEach(function(o,n){return t(n,o,e)});}function yt(e){var t=e[se];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:po(e)?2:mo(e)?3:0}function so(e,t){return yt(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Ll(e,t){return yt(e)===2?e.get(t):e[t]}function Ua(e,t,r){var o=yt(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r;}function Ol(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function po(e){return Ul&&e instanceof Map}function mo(e){return Fl&&e instanceof Set}function $e(e){return e.o||e.t}function fo(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=ql(e);delete t[se];for(var r=Ro(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 go(e,t){return t===void 0&&(t=!1),yo(e)||ft(e)||!Ge(e)||(yt(e)>1&&(e.set=e.add=e.clear=e.delete=Ml),Object.freeze(e),t&&Gt(e,function(r,o){return go(o,!0)},!0)),e}function Ml(){re(2);}function yo(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function ge(e){var t=$l[e];return t||re(18,e),t}function Ia(){return process.env.NODE_ENV==="production"||gt||re(0),gt}function ro(e,t){t&&(ge("Patches"),e.u=[],e.s=[],e.v=t);}function vr(e){io(e),e.p.forEach(Nl),e.p=null;}function io(e){e===gt&&(gt=e.l);}function Ba(e){return gt={p:[],l:gt,h:e,m:!0,_:0}}function Nl(e){var t=e[se];t.i===0||t.i===1?t.j():t.g=!0;}function oo(e,t){t._=t.p.length;var r=t.p[0],o=e!==void 0&&e!==r;return t.h.O||ge("ES5").S(t,e,o),o?(r[se].P&&(vr(t),re(4)),Ge(e)&&(e=_r(t,e),t.l||kr(t,e)),t.u&&ge("Patches").M(r[se].t,e,t.u,t.s)):e=_r(t,r,[]),vr(t),t.u&&t.v(t.u,t.s),e!==Fa?e:void 0}function _r(e,t,r){if(yo(t))return t;var o=t[se];if(!o)return Gt(t,function(i,c){return Ca(e,o,t,i,c,r)},!0),t;if(o.A!==e)return t;if(!o.P)return kr(e,o.t,!0),o.t;if(!o.I){o.I=!0,o.A._--;var n=o.i===4||o.i===5?o.o=fo(o.k):o.o,a=n,s=!1;o.i===3&&(a=new Set(n),n.clear(),s=!0),Gt(a,function(i,c){return Ca(e,o,n,i,c,r,s)}),kr(e,n,!1),r&&e.u&&ge("Patches").N(o,r,e.u,e.s);}return o.o}function Ca(e,t,r,o,n,a,s){if(process.env.NODE_ENV!=="production"&&n===r&&re(5),ft(n)){var i=_r(e,n,a&&t&&t.i!==3&&!so(t.R,o)?a.concat(o):void 0);if(Ua(r,o,i),!ft(i))return;e.m=!1;}else s&&r.add(n);if(Ge(n)&&!yo(n)){if(!e.h.D&&e._<1)return;_r(e,n),t&&t.A.l||kr(e,n);}}function kr(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&go(t,r);}function no(e,t){var r=e[se];return (r?$e(r):e)[t]}function La(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 co(e){e.P||(e.P=!0,e.l&&co(e.l));}function ao(e){e.o||(e.o=fo(e.t));}function lo(e,t,r){var o=po(t)?ge("MapSet").F(t,r):mo(t)?ge("MapSet").T(t,r):e.O?function(n,a){var s=Array.isArray(n),i={i:s?1:0,A:a?a.A:Ia(),P:!1,I:!1,R:{},l:a,t:n,k:null,o:null,j:null,C:!1},c=i,l=uo;s&&(c=[i],l=$t);var p=Proxy.revocable(c,l),u=p.revoke,d=p.proxy;return i.k=d,i.j=u,d}(t,r):ge("ES5").J(t,r);return (r?r.A:Ia()).p.push(o),o}function Dl(e){return ft(e)||re(22,e),function t(r){if(!Ge(r))return r;var o,n=r[se],a=yt(r);if(n){if(!n.P&&(n.i<4||!ge("ES5").K(n)))return n.t;n.I=!0,o=Oa(r,a),n.I=!1;}else o=Oa(r,a);return Gt(o,function(s,i){n&&Ll(n.t,s)===i||Ua(o,s,t(i));}),a===3?new Set(o):o}(e)}function Oa(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return fo(e)}var Ma,gt,ho=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",Ul=typeof Map<"u",Fl=typeof Set<"u",Na=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Fa=ho?Symbol.for("immer-nothing"):((Ma={})["immer-nothing"]=!0,Ma),Da=ho?Symbol.for("immer-draftable"):"__$immer_draftable",se=ho?Symbol.for("immer-state"):"__$immer_state";var Vl={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"},zl=""+Object.prototype.constructor,Ro=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,ql=Object.getOwnPropertyDescriptors||function(e){var t={};return Ro(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r);}),t},$l={},uo={get:function(e,t){if(t===se)return e;var r=$e(e);if(!so(r,t))return function(n,a,s){var i,c=La(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||!Ge(o)?o:o===no(e.t,t)?(ao(e),e.o[t]=lo(e.A.h,o,e)):o},has:function(e,t){return t in $e(e)},ownKeys:function(e){return Reflect.ownKeys($e(e))},set:function(e,t,r){var o=La($e(e),t);if(o?.set)return o.set.call(e.k,r),!0;if(!e.P){var n=no($e(e),t),a=n?.[se];if(a&&a.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(Ol(r,n)&&(r!==void 0||so(e.t,t)))return !0;ao(e),co(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 no(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,ao(e),co(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=$e(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);}},$t={};Gt(uo,function(e,t){$t[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)};}),$t.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&re(13),$t.set.call(this,e,t,void 0)},$t.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&re(14),uo.set.call(this,e[0],t,r,e[0])};var Gl=function(){function e(r){var o=this;this.O=Na,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),w=1;w<T;w++)k[w-1]=arguments[w];return c.produce(h,function(E){var A;return (A=a).call.apply(A,[R,E].concat(k))})}}var l;if(typeof a!="function"&&re(6),s!==void 0&&typeof s!="function"&&re(7),Ge(n)){var p=Ba(o),u=lo(o,n,void 0),d=!0;try{l=a(u),d=!1;}finally{d?vr(p):io(p);}return typeof Promise<"u"&&l instanceof Promise?l.then(function(h){return ro(p,s),oo(h,p)},function(h){throw vr(p),h}):(ro(p,s),oo(l,p))}if(!n||typeof n!="object"){if((l=a(n))===void 0&&(l=n),l===Fa&&(l=void 0),o.D&&go(l,!0),s){var m=[],y=[];ge("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){Ge(r)||re(8),ft(r)&&(r=Dl(r));var o=Ba(this),n=lo(this,r,void 0);return n[se].C=!0,io(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 ro(a,o),oo(void 0,a)},t.setAutoFreeze=function(r){this.D=r;},t.setUseProxies=function(r){r&&!Na&&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=ge("Patches").$;return ft(r)?s(r,o):this.produce(r,function(i){return s(i,o)})},e}(),ie=new Gl,Kl=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 Pr=Kl;var pe=Te.actions,$a=Kt({block:Ke("block"),dimension:Ke("dimension"),formatter:Ke("formatter"),report:Ke("report"),section:Ke("section"),variant:Ke("variant")}),ne=Kt({block:je("block"),dimension:je("dimension"),formatter:je("formatter"),report:je("report"),section:je("section"),variant:je("variant")}),Ga=Kt({block:Re("block"),dimension:Re("dimension"),formatter:Re("formatter"),report:Re("report"),section:Re("section"),variant:Re("variant")}),Ka=Kt({block:ht("block"),dimension:ht("dimension"),formatter:ht("formatter"),report:ht("report"),section:ht("section"),variant:ht("variant")}),ja=Kt({block:za("block"),section:za("section")});function Kt(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 He(e,t){return (r,o)=>{let a=o().records.requests[e][t],s=!a||a.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(pe.setRequest({key:t,type:e,status:s}));}}function Rt(e,t,r,o){return n=>{typeof window=="object"&&notifications.show({autoClose:3e3,color:"red",id:t,message:o,title:"Error"}),n(pe.setRequest({key:t,type:e,status:"FAILURE",error:{code:r,message:o}}));}}function Ke(e){return t=>{let r=So(e,t);return (o,n,a)=>(o(He(e,r)),ae(a,"create",e)(t).then(i=>(i.ok===!0?o(pe.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function Wl(e){return t=>{let r=So(e,t[0]);return (o,n,a)=>(o(He(e,r)),ae(a,"createBulk",e)(t).then(i=>(i.ok===!0?o(pe.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function Va(e,t,r){return r.replace(new RegExp(e,"g"),t)}function Jl(e){return e.section_id!==void 0}function Yl(e){return e.report_id!==void 0}function za(e){return t=>{let{create:r}=t;return (o,n,a)=>Ke(e)(r)(o,n,a).then(async i=>{if(i.ok){let{data:c}=i,{id:l}=c,{update:p}=t,u=Ja(e,{id:l});if(o(He(e,`${u}`)),e==="block"&&Jl(r)){let d=Pr(p,R=>{R.id=l;}),{contentByLocale:m}=d;m&&(d=Pr(d,R=>{R.id=l,R.contentByLocale=Object.keys(m).reduce((T,k)=>{let w=m?m[k]:{};return T[k]={...w,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(()=>je("section")({id:d.section_id,include:!0})(o,n,a).then(R=>(R.ok&&o(pe.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))),Re(e)(d)(o,n,a).then(R=>(R.ok&&o(pe.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))}if(e==="section"&&Yl(r)){let{id:d}=c,m=Pr(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 Wl("block")(h)(o,n,a).then(R=>{if(R.ok){let T=R.data,k=[],w=T.map((E,A)=>{let M={...E},F=M.id,W=y[A];W.contentByLocale&&(M.contentByLocale=Object.keys(W.contentByLocale).reduce((v,P)=>{let U=W.contentByLocale[P];return v[P]={...U,content:{...U.content},id:M.id},v},{}));let{settings:j}=W,{contentByLocale:O,id:N}=M;M.settings=j;let q={id:N,contentByLocale:O,settings:j};return W.inputs.map(v=>v.id).reduce((v,P)=>{let U=y.findIndex(ee=>ee.id===P);return [...v,U]},[]).map(v=>({...T[v],originalBlock:y[v]})).forEach(v=>{let{id:P,type:U,originalBlock:ee}=v;if([x.SELECTOR,x.VIZ].includes(U)){if(q.contentByLocale?.logic?.content?.api){let B=q.contentByLocale?.logic.content.api;q.contentByLocale.logic.content.api=Va(`(selector${ee.id}id)`,`selector${P}id`,B);}if(q.contentByLocale?.logic?.content?.logic){let B=q.contentByLocale.logic.content.logic;q.contentByLocale.logic.content.logic=Va(`(selector${ee.id}id)`,`selector${P}id`,B);}}k.push({id:P,inputAction:{operation:"create",input:{input_id:P,block_id:F}}});}),q});return qa("block")([...w,...k])(o,n,a)}}),Re(e)(m)(o,n,a).then(R=>(R.ok&&o(pe.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))}return Re(e)({...p,id:c.id})(o,n,a)}})}}function je(e){return t=>{let r=Ha(e,t);return (o,n,a)=>(o(He(e,r)),ae(a,"read",e)(t).then(i=>(i.ok===!0?o(pe.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function Re(e){return t=>{let r=Eo(e,t);return (o,n,a)=>(o(He(e,r)),ae(a,"update",e)(t).then(i=>(i.ok===!0?o(pe.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function qa(e){return t=>{let r=Eo(e,t[0]);return (o,n,a)=>(o(He(e,r)),ae(a,"updateBulk",e)(t).then(i=>(i.ok===!0?o(pe.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function ht(e){return t=>{let r=Wa(e,t);return (o,n,a)=>(o(He(e,r)),ae(a,"delete",e)(t).then(i=>{i.ok===!0?o(pe.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error));}))}}function So(e,t){if(e==="variant"){let r=t;return `create(variant, [${r.dimension_id}, ${r.name}])`}return `create(${e}, [${Object.keys(t)}])`}function Ha(e,t={}){let r=t.id==null?null:`'${t.id}'`;return `read(${e}, ${r}, ${!!t.include})`}function Eo(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function Wa(e,t){return `delete(${e}, ${t})`}function Ja(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:Ya,setPreviews:Ql,setSectionState:Qa,resetSectionState:Za,setCurrentLocale:Zl,setPreferredLocale:Xl}=qe;function eu(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 tu(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 jt(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 ou(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 Xa(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(Ya(i)),n.activeSection&&t(es(e,{query:s}));}function nu(e,t){return async(r,o)=>Xa(e,r,o,{query:{[t]:void 0}})}function au(e,t,r){return async(o,n)=>Xa(e,o,n,{query:{[t]:r}})}function es(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}=xa(n.status,t),{sid:p,bid:u,previews:d,query:m}=c;Object.keys(l).length&&r(qe.setStatus(l));let y={...gr(d),locale:a,...yr()},h={variables:y,query:m,locale:a},R=n.records.entities.section[p],T=async k=>r(jt(k));try{let k=await fr(s,R&&[R],u,i,h,void 0,T),{variables:w,status:E}=k;r(Ar.setVariableChange({attributes:y,variables:w,status:E}));}catch(k){console.log("Error in runConsumers client side: recalculateVariables",k);}}}function su(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 iu(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 cu(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function lu(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 uu(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 du(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 Ao(e){let{removeBlocks:t}=Te.actions;return async r=>{await r(t(e));}}function To(e){let{addBlocks:t}=Te.actions;return async r=>{await r(t(e));}}function mu(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 fu(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 gu(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 ts=e=>configureStore({reducer:{[Te.name]:Te.reducer,[Sr.name]:Sr.reducer,[Er.name]:Er.reducer},middleware(t){return t({thunk:{extraArgument:Vt("/api/cms/")}})}}),Wt=createWrapper(ts);function Su(e){let t=process.cwd(),r=bu.resolve(t.endsWith("/example")?t.replace("/example",""):t,"package-lock.json"),o;try{let n=JSON.parse(nc.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 Eu(e){let t=()=>Promise.resolve({}),{pathSegmentsKey:r="bespoke",preResolve:o=t,postResolve:n=t,authOptions:a={providers:[]}}=e||{};return Wt.getServerSideProps(s=>{let{dispatch:i}=s;return async c=>{if(!await de(c.req,c.res,a))return {redirect:{destination:"/api/auth/signin?callbackUrl=/cms",permanent:!1}};let p=c.query[r],[u]=Array.isArray(p)?p:[p];await i(Dt);let d=await Su("@datawheel/bespoke"),m=await o(s,c);if("redirect"in m)return {props:m};u==="reports"&&(rs(c.query[r])?await Promise.all([i(ne("formatter",{})),i(ne("report",{id:rs(c.query[r]),include:!0})),qe.setStatus({isCMS:!0})]):await Promise.all([i(ne("report",{include:"dimensions"})),qe.setStatus({isCMS:!0})])),u==="metadata"&&await i(ne("report",{include:"dimensions"})),u==="formatters"&&await i(ne("formatter",{}));let y=await n(s,c);return {props:{...m,...y,bespokeVersion:d}}}})}function rs(e){if(e==null||e==="")return;let[,t]=Array.isArray(e)?e:[e];return Number.parseInt(t)||void 0}var {locales:Tu}=z(),vu={pathSegment:"path",formatterFunctions:Tu.reduce((e,t)=>({...e,[t]:{}}),{}),profilePrefix:"path",siteProps:{}};createContext(vu);z();var cs=e=>e.records.entities.block;function Et(e){return t=>Object.values(t.records.entities[e])}var ls=Et("section"),us=Et("formatter");function Fu(e){let{fallback:t=!0,limit:r=50}=e||{};return async o=>{let{defaultLocale:n=ue,locales:a=[]}=o,s=[];if(r>0){let i=a.find(p=>p===n),{searchMember:c}=await Me().then(it),l=await c({query:"",limit:r,format:"plain",locale:i||ue,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 Vu(e){let{pathSegmentsKey:t="bespoke"}=e||{};try{return Wt.getStaticProps(r=>{let{dispatch:o}=r;return async n=>{await o(Dt);let a=new Date().toISOString(),{locale:s=ue,params:i={}}=n,c=Array.from(zu(i[t]));if(c.length===0)return await Promise.all([o(ne("formatter",{})),o(ne("report",{include:!0}))]),{props:{buildTime:a}};let l=await o(jt({mode:"slugs",locale:s,slugs:c,output:"full"}));o(Ht.setPreviews(l.results)),await Promise.all([o(ne("formatter",{})),o(ne("report",{id:l.results.map(A=>A.report_id),include:!0,locales:[s]}))]);let p=r.getState(),u=us(p),d=to(u,s),m=ls(p),y=cs(p),h={...y},R={},T=Object.values(y).reduce((A,C)=>("access"in C.settings&&!["public","guest"].some(M=>!C.settings.access||C.settings.access.includes(M))&&A.push(C.id),A),[]);T=T.concat(Nt(T,Object.values(h)));let k=T.filter(A=>h[A].settings[Wo.FALLBACK]);T.forEach(A=>{k.includes(A)&&(R[A]={...h[A],type:x.FALLBACK}),delete h[A];}),await o(Ao(T)),await o(To(R));let w={...gr(l.results),locale:s,...yr()},E=async A=>await o(jt(A));return await fr({...h,...R},m,void 0,d,{locale:s,query:i,variables:w},void 0,E,"report").then(A=>{o(Ar.setVariableChange({...A,attributes:w}));}),{props:{buildTime:a}}}})}catch(r){console.log("ERROR SSR",r);}}function zu(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}}}
63
+ `)}));}let C=await Promise.all(A).catch(M=>M.message);if(typeof C=="string"&&C)return {outputVariables:{},renderVariables:{},status:{error:C}};c=C.length===1?C[0].data:C.map(M=>M.data),u=C.reduce((M,F)=>M+JSON.stringify(F.data).length/1024,0),p=Math.max(...C.map(M=>M.requestDuration));}if(e.type===x.SELECTOR){let{config:E,log:A,error:C}=Wr(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:ya(e.id,s,E),renderVariables:E,status:{log:A,error:C,allowed:i}}}if(e.type===x.MULTIHIERARCHY_SELECTOR){let{config:E,log:A,error:C}=Yr(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:ha(e.id,s,E),renderVariables:E,status:{log:A,error:C,allowed:i}}}if(e.type===x.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:i}};if(e.type===x.RELATED){let E=e.contentByLocale?.logic?.content?.simple?.compare||"variant",A=e.contentByLocale?.logic?.content?.simple?.limit||4,C=Object.keys(a).filter(b=>b.startsWith("report_id")).map(b=>a[b]),M=Object.keys(a).filter(b=>b.startsWith("dimension_id")).map(b=>a[b]),F=Object.keys(a).filter(b=>b.startsWith("variant_id")).map(b=>a[b]),W=Object.keys(a).filter(b=>b.startsWith("id")).map(b=>a[b]);if(!W.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:!1}};let O=(await o({mode:"ids",locale:n,ids:W,output:"lite"}).then(b=>{let L=[];return Xr(b)?b.ok&&(L=b.data.results):L=b.results,L&&Array.isArray(L)?L:[]}).catch(b=>(console.log("Error getting related members",b),[]))).map(b=>b.content_id),N={mode:"related",locale:n,related:A??4,current_ids:O,output:"full"};E&&(E==="report"?N.report_ids=C:E==="dimension"?N.dimension_ids=M:N.variant_ids=F);let q=await o(N).then(b=>{let L=[];return Xr(b)?b.ok&&(L=b.data.results):L=b.results,L&&Array.isArray(L)?L:[]}).catch(b=>(console.log("Error getting related members",b),[]));return {outputVariables:{related_reports:q},renderVariables:{},status:{log:[],allowed:q.length>0}}}let{logic:m}=ba(e,n),y=pt(m,t,r),h=Ve("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 w=Object.keys(R).reduce((E,A)=>({...E,[`${e.type}${e.id}${A}`]:R[A]}),{});return {renderVariables:R,outputVariables:[x.GENERATOR,x.SECTION_FLAG].includes(e.type)?R:w,status:{log:k,error:T,duration:p,responseSize:u,resp:c,api:d,allowed:i}}}function dl(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=>eo(l,t,o,!1,a,n,s));}})}var eo=(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=>eo(p,t,r,o,!1,a,s));}),i&&i.consumers.length&&n&&dl(i,t,e,r,a,n,s),r},ml=(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=ce(t),{error:s,output:i}=Ve("variables",r,e.settings.allowedLogic||"return false;",o,void 0,a);s||(n=!!i);}return n},fr=async(e,t,r,o,n,a={},s,i="section")=>{let c=i==="section",l=ce(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((O,{id:N})=>({...O,...Sa(N,e)}),{}):h=Object.values(e).filter(O=>Qr(O)).reduce((O,N)=>({...O,[N.id]:N}),{});let R=Object.values(h).filter(O=>Qr(O));if(R.length>0){ze&&console.log("%crunConsumers: calculating section flags","color:purple",R.map(b=>b.id).join(", "));let O=Object.fromEntries(await Promise.all(R.map(async b=>[b.id,await Ta(b,o,{...l,variables:p,locale:p.locale},s).then(L=>{let{outputVariables:G,status:v}=L;if(v.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${b.id}, Section ${b.section_id}) failed with message: ${v.error}. `);d[b.id]={allowed:!1,error:v.error},u[b.id]={};}return (b.consumers.length>0||[x.GENERATOR,x.SECTION_FLAG,x.RELATED].includes(b.type))&&v.allowed&&Object.keys(G).length>0?u[b.id]=G:u[b.id]={},i==="report"?(d[b.id]={allowed:v.allowed},[x.GENERATOR,x.SECTION_FLAG].includes(b.type)&&v.api&&(d[b.id].api=v.api)):d[b.id]=v,L})]))),q=Object.entries(O).filter(([b,L])=>!L.outputVariables[cr]).map(([b])=>Number(b));m=new Set(q.map(b=>e[b].section_id)),Object.values(h).filter(b=>m.has(b.section_id)).forEach(b=>{y.push(b.id),delete h[b.id];}),ze&&console.log("%crunConsumers: removing sections","color:purple",m.keys());}let T=m.size>0?Object.fromEntries(Object.entries(e).filter(([O,N])=>m?.has(N.section_id)?(y.push(N.id),!1):!0)):e;if(y.length>0&&(T=Object.fromEntries(Object.entries(T).map(([O,N])=>{let q={...N,inputs:N.inputs.filter(b=>!y.includes(b)),consumers:N.consumers.filter(b=>!y.includes(b))};return [O,q]}))),!r&&!t)return {variables:{...a.variables??{},...u},status:{...a.status??{},...d}};ze&&console.log("%crunConsumers: running root blocks","color:purple",Object.keys(h));let k=Object.keys(h).reduce((O,N)=>{let q=new Date,b=eo(Number(N),T,[],!r,!0,c).map(v=>v.split("-")),G=(new Date().getTime()-q.getTime())/1e3;return ze&&console.log(`%cResolved dependencies for ${N} (${G.toFixed(2)}s)`,"color:blue"),[...O,...b]},[]),w=new Date,E=Object.keys(h).reduce((O,N)=>O.includes(N)?[...O]:[N,...O],nl(k)),C=(new Date().getTime()-w.getTime())/1e3;ze&&console.log(`%cResolved DAG (${C.toFixed(2)}s): `,"color:green",E);async function M(O,N){let q=new Map;for(let b of O){let L=N[b],v=Promise.all(L.inputs.filter(P=>O.includes(String(P))).map(P=>q.get(Number(P)))).then(async()=>{let P=L.inputs.reduce((J,Y)=>({...J,...u[Y]}),p),U=L.inputs.find(J=>(L.settings?.ignoreCascade?L.settings?.ignoreCascade:[]).includes(J)?!1:!d[J].allowed||d[J].hiddenByCascade);if(U){d[b]={allowed:!1,hiddenByCascade:d[U].hiddenByCascade||U},u[b]={};return}let ee=new Date,B=await Ta(L,o,{...l,variables:P,locale:P.locale},s).then(({outputVariables:J,status:Y})=>{if(Y.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${b}, Section ${L.section_id}) failed with message: ${Y.error}. `);d[b]={allowed:!1,error:Y.error},u[b]={};}(L.consumers.length>0||[x.GENERATOR,x.SECTION_FLAG,x.RELATED].includes(L.type))&&Y.allowed&&Object.keys(J).length>0?u[b]=J:u[b]={},i==="report"?(d[b]={allowed:Y.allowed},[x.GENERATOR,x.SECTION_FLAG].includes(L.type)&&Y.api&&(d[b].api=Y.api)):d[b]=Y;}),oe=(new Date().getTime()-ee.getTime())/1e3;return ze&&console.log(`%cBlock ${L.id} resolved in ${oe.toFixed(3)}s`,oe>500?"color:red":"color:green"),B});q.set(Number(b),v);}await Promise.all(Array.from(q.values()));}let F=new Date;await M(E,T);let j=(new Date().getTime()-F.getTime())/1e3;return ze&&console.log(`%cResolved Variables (${j.toFixed(2)}s): `,"color:green"),{variables:{...a.variables??{},...u},status:{...a.status??{},...d}}};function fl(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 gr=fl;function yl(){let{publicRuntimeConfig:e}=gl(),t=e.bespoke_report_env_vars||{};return {...Object.keys(t).reduce((r,o)=>(r[`ENV_${o}`]=t[o]||"N/A",r),{})}}var yr=yl;function hl(e,t){return +(e<t)-+(e>t)}function hr(e,t,r="ordering"){return hl(t[r],e[r])}var _a=(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:xe,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:bl}=z();var zt=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});zt.define({consumers:[zt],inputs:[zt]});var ka=new schema.Entity("variant"),Pa=new schema.Entity("dimension",{variants:[ka]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),wa=new schema.Entity("section",{blocks:[zt]}),Sl=new schema.Entity("report",{dimensions:[Pa],sections:[wa]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(hr):[]}}}),El=new schema.Entity("formatter"),Al={report:Sl,section:wa,block:zt,dimension:Pa,variant:ka,formatter:El};function Rr(e,t){let r=Al[e];if(!r)throw new Error(`Invalid entity type: ${e}`);let{entities:o}=normalize(t,[r]);return {report:dt(o,"report"),dimension:dt(o,"dimension"),section:dt(o,"section"),block:dt(o,"block"),variant:dt(o,"variant"),formatter:dt(o,"formatter")}}function dt(e,t){return e.hasOwnProperty(t)?e[t]:{}}var xa=(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}},to=(e=[],t=bl)=>e.reduce((r,o)=>{let n=_a({vars:["n"],logic:o.content.logic},{},t,{});return r[o.name]=n,r},{});var ue=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",br=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[ue];br.includes(ue)||br.push(ue);var _l={localeDefault:ue,locales:br,currentLocale:ue,preferredLocale:ue,showToolbar:!1,activeSection:null,previews:[],query:{},sectionState:{},activeEntity:{type:null,id:null},sidebarStatus:{tools:!0,settings:!1,reportEditor:!1},isCMS:!1},Sr=createSlice({name:"status",initialState:_l,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]};}},extraReducers:{[HYDRATE]:(e,t)=>({...e,previews:t.payload.status.previews})}}),qe=Sr.actions;var wl={attributes:{},variables:{},status:{}},Er=createSlice({name:"variables",initialState:wl,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}})}}),Ar=Er.actions;var Bl={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}}},Te=createSlice({name:"records",initialState:Bl,reducers:{set:(e,t)=>{let r=t.payload;return {entities:qt(e.entities,r.entities||{}),requests:qt(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=Rr(r.type,o),a=qt(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=Tr(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=Tr(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=Rr(r.type,r.data),n=qt(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=Rr(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=qt(e.entities,n);if(e.entities=c,r.type==="dimension"){let l=r.data;e.entities.report[l.report_id].dimensions=Tr(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=Tr(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`;Cl(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 qt(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function Tr(e,t){return e.map(n=>t[n]).sort(hr).map(n=>n.id)}function Cl(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=Vl[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 ft(e){return !!e&&!!e[se]}function Ge(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)===zl}(e)||Array.isArray(e)||!!e[Da]||!!(!((t=e.constructor)===null||t===void 0)&&t[Da])||po(e)||mo(e))}function Gt(e,t,r){r===void 0&&(r=!1),yt(e)===0?(r?Object.keys:Ro)(e).forEach(function(o){r&&typeof o=="symbol"||t(o,e[o],e);}):e.forEach(function(o,n){return t(n,o,e)});}function yt(e){var t=e[se];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:po(e)?2:mo(e)?3:0}function so(e,t){return yt(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Ll(e,t){return yt(e)===2?e.get(t):e[t]}function Ua(e,t,r){var o=yt(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r;}function Ol(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function po(e){return Ul&&e instanceof Map}function mo(e){return Fl&&e instanceof Set}function $e(e){return e.o||e.t}function fo(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=ql(e);delete t[se];for(var r=Ro(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 go(e,t){return t===void 0&&(t=!1),yo(e)||ft(e)||!Ge(e)||(yt(e)>1&&(e.set=e.add=e.clear=e.delete=Ml),Object.freeze(e),t&&Gt(e,function(r,o){return go(o,!0)},!0)),e}function Ml(){re(2);}function yo(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function ge(e){var t=$l[e];return t||re(18,e),t}function Ia(){return process.env.NODE_ENV==="production"||gt||re(0),gt}function ro(e,t){t&&(ge("Patches"),e.u=[],e.s=[],e.v=t);}function vr(e){io(e),e.p.forEach(Nl),e.p=null;}function io(e){e===gt&&(gt=e.l);}function Ba(e){return gt={p:[],l:gt,h:e,m:!0,_:0}}function Nl(e){var t=e[se];t.i===0||t.i===1?t.j():t.g=!0;}function oo(e,t){t._=t.p.length;var r=t.p[0],o=e!==void 0&&e!==r;return t.h.O||ge("ES5").S(t,e,o),o?(r[se].P&&(vr(t),re(4)),Ge(e)&&(e=_r(t,e),t.l||kr(t,e)),t.u&&ge("Patches").M(r[se].t,e,t.u,t.s)):e=_r(t,r,[]),vr(t),t.u&&t.v(t.u,t.s),e!==Fa?e:void 0}function _r(e,t,r){if(yo(t))return t;var o=t[se];if(!o)return Gt(t,function(i,c){return Ca(e,o,t,i,c,r)},!0),t;if(o.A!==e)return t;if(!o.P)return kr(e,o.t,!0),o.t;if(!o.I){o.I=!0,o.A._--;var n=o.i===4||o.i===5?o.o=fo(o.k):o.o,a=n,s=!1;o.i===3&&(a=new Set(n),n.clear(),s=!0),Gt(a,function(i,c){return Ca(e,o,n,i,c,r,s)}),kr(e,n,!1),r&&e.u&&ge("Patches").N(o,r,e.u,e.s);}return o.o}function Ca(e,t,r,o,n,a,s){if(process.env.NODE_ENV!=="production"&&n===r&&re(5),ft(n)){var i=_r(e,n,a&&t&&t.i!==3&&!so(t.R,o)?a.concat(o):void 0);if(Ua(r,o,i),!ft(i))return;e.m=!1;}else s&&r.add(n);if(Ge(n)&&!yo(n)){if(!e.h.D&&e._<1)return;_r(e,n),t&&t.A.l||kr(e,n);}}function kr(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&go(t,r);}function no(e,t){var r=e[se];return (r?$e(r):e)[t]}function La(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 co(e){e.P||(e.P=!0,e.l&&co(e.l));}function ao(e){e.o||(e.o=fo(e.t));}function lo(e,t,r){var o=po(t)?ge("MapSet").F(t,r):mo(t)?ge("MapSet").T(t,r):e.O?function(n,a){var s=Array.isArray(n),i={i:s?1:0,A:a?a.A:Ia(),P:!1,I:!1,R:{},l:a,t:n,k:null,o:null,j:null,C:!1},c=i,l=uo;s&&(c=[i],l=$t);var p=Proxy.revocable(c,l),u=p.revoke,d=p.proxy;return i.k=d,i.j=u,d}(t,r):ge("ES5").J(t,r);return (r?r.A:Ia()).p.push(o),o}function Dl(e){return ft(e)||re(22,e),function t(r){if(!Ge(r))return r;var o,n=r[se],a=yt(r);if(n){if(!n.P&&(n.i<4||!ge("ES5").K(n)))return n.t;n.I=!0,o=Oa(r,a),n.I=!1;}else o=Oa(r,a);return Gt(o,function(s,i){n&&Ll(n.t,s)===i||Ua(o,s,t(i));}),a===3?new Set(o):o}(e)}function Oa(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return fo(e)}var Ma,gt,ho=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",Ul=typeof Map<"u",Fl=typeof Set<"u",Na=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Fa=ho?Symbol.for("immer-nothing"):((Ma={})["immer-nothing"]=!0,Ma),Da=ho?Symbol.for("immer-draftable"):"__$immer_draftable",se=ho?Symbol.for("immer-state"):"__$immer_state";var Vl={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"},zl=""+Object.prototype.constructor,Ro=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,ql=Object.getOwnPropertyDescriptors||function(e){var t={};return Ro(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r);}),t},$l={},uo={get:function(e,t){if(t===se)return e;var r=$e(e);if(!so(r,t))return function(n,a,s){var i,c=La(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||!Ge(o)?o:o===no(e.t,t)?(ao(e),e.o[t]=lo(e.A.h,o,e)):o},has:function(e,t){return t in $e(e)},ownKeys:function(e){return Reflect.ownKeys($e(e))},set:function(e,t,r){var o=La($e(e),t);if(o?.set)return o.set.call(e.k,r),!0;if(!e.P){var n=no($e(e),t),a=n?.[se];if(a&&a.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(Ol(r,n)&&(r!==void 0||so(e.t,t)))return !0;ao(e),co(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 no(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,ao(e),co(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=$e(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);}},$t={};Gt(uo,function(e,t){$t[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)};}),$t.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&re(13),$t.set.call(this,e,t,void 0)},$t.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&re(14),uo.set.call(this,e[0],t,r,e[0])};var Gl=function(){function e(r){var o=this;this.O=Na,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),w=1;w<T;w++)k[w-1]=arguments[w];return c.produce(h,function(E){var A;return (A=a).call.apply(A,[R,E].concat(k))})}}var l;if(typeof a!="function"&&re(6),s!==void 0&&typeof s!="function"&&re(7),Ge(n)){var p=Ba(o),u=lo(o,n,void 0),d=!0;try{l=a(u),d=!1;}finally{d?vr(p):io(p);}return typeof Promise<"u"&&l instanceof Promise?l.then(function(h){return ro(p,s),oo(h,p)},function(h){throw vr(p),h}):(ro(p,s),oo(l,p))}if(!n||typeof n!="object"){if((l=a(n))===void 0&&(l=n),l===Fa&&(l=void 0),o.D&&go(l,!0),s){var m=[],y=[];ge("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){Ge(r)||re(8),ft(r)&&(r=Dl(r));var o=Ba(this),n=lo(this,r,void 0);return n[se].C=!0,io(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 ro(a,o),oo(void 0,a)},t.setAutoFreeze=function(r){this.D=r;},t.setUseProxies=function(r){r&&!Na&&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=ge("Patches").$;return ft(r)?s(r,o):this.produce(r,function(i){return s(i,o)})},e}(),ie=new Gl,Kl=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 Pr=Kl;var pe=Te.actions,$a=Kt({block:Ke("block"),dimension:Ke("dimension"),formatter:Ke("formatter"),report:Ke("report"),section:Ke("section"),variant:Ke("variant")}),ne=Kt({block:je("block"),dimension:je("dimension"),formatter:je("formatter"),report:je("report"),section:je("section"),variant:je("variant")}),Ga=Kt({block:Re("block"),dimension:Re("dimension"),formatter:Re("formatter"),report:Re("report"),section:Re("section"),variant:Re("variant")}),Ka=Kt({block:ht("block"),dimension:ht("dimension"),formatter:ht("formatter"),report:ht("report"),section:ht("section"),variant:ht("variant")}),ja=Kt({block:za("block"),section:za("section")});function Kt(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 He(e,t){return (r,o)=>{let a=o().records.requests[e][t],s=!a||a.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(pe.setRequest({key:t,type:e,status:s}));}}function Rt(e,t,r,o){return n=>{typeof window=="object"&&notifications.show({autoClose:3e3,color:"red",id:t,message:o,title:"Error"}),n(pe.setRequest({key:t,type:e,status:"FAILURE",error:{code:r,message:o}}));}}function Ke(e){return t=>{let r=So(e,t);return (o,n,a)=>(o(He(e,r)),ae(a,"create",e)(t).then(i=>(i.ok===!0?o(pe.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function Wl(e){return t=>{let r=So(e,t[0]);return (o,n,a)=>(o(He(e,r)),ae(a,"createBulk",e)(t).then(i=>(i.ok===!0?o(pe.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function Va(e,t,r){return r.replace(new RegExp(e,"g"),t)}function Jl(e){return e.section_id!==void 0}function Yl(e){return e.report_id!==void 0}function za(e){return t=>{let{create:r}=t;return (o,n,a)=>Ke(e)(r)(o,n,a).then(async i=>{if(i.ok){let{data:c}=i,{id:l}=c,{update:p}=t,u=Ja(e,{id:l});if(o(He(e,`${u}`)),e==="block"&&Jl(r)){let d=Pr(p,R=>{R.id=l;}),{contentByLocale:m}=d;m&&(d=Pr(d,R=>{R.id=l,R.contentByLocale=Object.keys(m).reduce((T,k)=>{let w=m?m[k]:{};return T[k]={...w,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(()=>je("section")({id:d.section_id,include:!0})(o,n,a).then(R=>(R.ok&&o(pe.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))),Re(e)(d)(o,n,a).then(R=>(R.ok&&o(pe.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))}if(e==="section"&&Yl(r)){let{id:d}=c,m=Pr(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 Wl("block")(h)(o,n,a).then(R=>{if(R.ok){let T=R.data,k=[],w=T.map((E,A)=>{let M={...E},F=M.id,W=y[A];W.contentByLocale&&(M.contentByLocale=Object.keys(W.contentByLocale).reduce((v,P)=>{let U=W.contentByLocale[P];return v[P]={...U,content:{...U.content},id:M.id},v},{}));let{settings:j}=W,{contentByLocale:O,id:N}=M;M.settings=j;let q={id:N,contentByLocale:O,settings:j};return W.inputs.map(v=>v.id).reduce((v,P)=>{let U=y.findIndex(ee=>ee.id===P);return [...v,U]},[]).map(v=>({...T[v],originalBlock:y[v]})).forEach(v=>{let{id:P,type:U,originalBlock:ee}=v;if([x.SELECTOR,x.VIZ].includes(U)){if(q.contentByLocale?.logic?.content?.api){let B=q.contentByLocale?.logic.content.api;q.contentByLocale.logic.content.api=Va(`(selector${ee.id}id)`,`selector${P}id`,B);}if(q.contentByLocale?.logic?.content?.logic){let B=q.contentByLocale.logic.content.logic;q.contentByLocale.logic.content.logic=Va(`(selector${ee.id}id)`,`selector${P}id`,B);}}k.push({id:P,inputAction:{operation:"create",input:{input_id:P,block_id:F}}});}),q});return qa("block")([...w,...k])(o,n,a)}}),Re(e)(m)(o,n,a).then(R=>(R.ok&&o(pe.setRequest({key:u,type:e,status:"SUCCESS",data:R.data})),R))}return Re(e)({...p,id:c.id})(o,n,a)}})}}function je(e){return t=>{let r=Ha(e,t);return (o,n,a)=>(o(He(e,r)),ae(a,"read",e)(t).then(i=>(i.ok===!0?o(pe.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function Re(e){return t=>{let r=Eo(e,t);return (o,n,a)=>(o(He(e,r)),ae(a,"update",e)(t).then(i=>(i.ok===!0?o(pe.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function qa(e){return t=>{let r=Eo(e,t[0]);return (o,n,a)=>(o(He(e,r)),ae(a,"updateBulk",e)(t).then(i=>(i.ok===!0?o(pe.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error)),i)))}}function ht(e){return t=>{let r=Wa(e,t);return (o,n,a)=>(o(He(e,r)),ae(a,"delete",e)(t).then(i=>{i.ok===!0?o(pe.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:i.data})):o(Rt(e,r,i.status,i.error));}))}}function So(e,t){if(e==="variant"){let r=t;return `create(variant, [${r.dimension_id}, ${r.name}])`}return `create(${e}, [${Object.keys(t)}])`}function Ha(e,t={}){let r=t.id==null?null:`'${t.id}'`;return `read(${e}, ${r}, ${!!t.include})`}function Eo(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function Wa(e,t){return `delete(${e}, ${t})`}function Ja(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:Ya,setPreviews:Ql,setSectionState:Qa,resetSectionState:Za,setCurrentLocale:Zl,setPreferredLocale:Xl}=qe;function eu(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 tu(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 jt(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 ou(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 Xa(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(Ya(i)),n.activeSection&&t(es(e,{query:s}));}function nu(e,t){return async(r,o)=>Xa(e,r,o,{query:{[t]:void 0}})}function au(e,t,r){return async(o,n)=>Xa(e,o,n,{query:{[t]:r}})}function es(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}=xa(n.status,t),{sid:p,bid:u,previews:d,query:m}=c;Object.keys(l).length&&r(qe.setStatus(l));let y={...gr(d),locale:a,...yr()},h={variables:y,query:m,locale:a},R=n.records.entities.section[p],T=async k=>r(jt(k));try{let k=await fr(s,R&&[R],u,i,h,void 0,T),{variables:w,status:E}=k;r(Ar.setVariableChange({attributes:y,variables:w,status:E}));}catch(k){console.log("Error in runConsumers client side: recalculateVariables",k);}}}function su(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 iu(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 cu(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function lu(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 uu(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 du(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 Ao(e){let{removeBlocks:t}=Te.actions;return async r=>{await r(t(e));}}function To(e){let{addBlocks:t}=Te.actions;return async r=>{await r(t(e));}}function mu(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 fu(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 gu(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 ts=e=>configureStore({reducer:{[Te.name]:Te.reducer,[Sr.name]:Sr.reducer,[Er.name]:Er.reducer},middleware(t){return t({thunk:{extraArgument:Vt("/api/cms/")}})}}),Wt=createWrapper(ts);function Su(e){let t=process.cwd(),r=bu.resolve(t.endsWith("/example")?t.replace("/example",""):t,"package-lock.json"),o;try{let n=JSON.parse(nc.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 Eu(e){let t=()=>Promise.resolve({}),{pathSegmentsKey:r="bespoke",preResolve:o=t,postResolve:n=t,authOptions:a={providers:[]}}=e||{};return Wt.getServerSideProps(s=>{let{dispatch:i}=s;return async c=>{let l=await de(c.req,c.res,a);if(!l)return {redirect:{destination:"/api/auth/signin?callbackUrl=/cms",permanent:!1}};let p=c.query[r],[u]=Array.isArray(p)?p:[p];await i(Dt);let d=await Su("@datawheel/bespoke"),m=await o(s,c);if("redirect"in m)return {props:m};u==="reports"&&(rs(c.query[r])?await Promise.all([i(ne("formatter",{})),i(ne("report",{id:rs(c.query[r]),include:!0})),qe.setStatus({isCMS:!0})]):await Promise.all([i(ne("report",{include:"dimensions"})),qe.setStatus({isCMS:!0})])),u==="metadata"&&await i(ne("report",{include:"dimensions"})),u==="formatters"&&await i(ne("formatter",{}));let y=await n(s,c);return {props:{...m,...y,bespokeVersion:d,session:l}}}})}function rs(e){if(e==null||e==="")return;let[,t]=Array.isArray(e)?e:[e];return Number.parseInt(t)||void 0}var {locales:Tu}=z(),vu={pathSegment:"path",formatterFunctions:Tu.reduce((e,t)=>({...e,[t]:{}}),{}),profilePrefix:"path",siteProps:{}};createContext(vu);z();var cs=e=>e.records.entities.block;function Et(e){return t=>Object.values(t.records.entities[e])}var ls=Et("section"),us=Et("formatter");function Fu(e){let{fallback:t=!0,limit:r=50}=e||{};return async o=>{let{defaultLocale:n=ue,locales:a=[]}=o,s=[];if(r>0){let i=a.find(p=>p===n),{searchMember:c}=await Me().then(it),l=await c({query:"",limit:r,format:"plain",locale:i||ue,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 Vu(e){let{pathSegmentsKey:t="bespoke"}=e||{};try{return Wt.getStaticProps(r=>{let{dispatch:o}=r;return async n=>{await o(Dt);let a=new Date().toISOString(),{locale:s=ue,params:i={}}=n,c=Array.from(zu(i[t]));if(c.length===0)return await Promise.all([o(ne("formatter",{})),o(ne("report",{include:!0}))]),{props:{buildTime:a}};let l=await o(jt({mode:"slugs",locale:s,slugs:c,output:"full"}));o(Ht.setPreviews(l.results)),await Promise.all([o(ne("formatter",{})),o(ne("report",{id:l.results.map(A=>A.report_id),include:!0,locales:[s]}))]);let p=r.getState(),u=us(p),d=to(u,s),m=ls(p),y=cs(p),h={...y},R={},T=Object.values(y).reduce((A,C)=>("access"in C.settings&&!["public","guest"].some(M=>!C.settings.access||C.settings.access.includes(M))&&A.push(C.id),A),[]);T=T.concat(Nt(T,Object.values(h)));let k=T.filter(A=>h[A].settings[Wo.FALLBACK]);T.forEach(A=>{k.includes(A)&&(R[A]={...h[A],type:x.FALLBACK}),delete h[A];}),await o(Ao(T)),await o(To(R));let w={...gr(l.results),locale:s,...yr()},E=async A=>await o(jt(A));return await fr({...h,...R},m,void 0,d,{locale:s,query:i,variables:w},void 0,E,"report").then(A=>{o(Ar.setVariableChange({...A,attributes:w}));}),{props:{buildTime:a}}}})}catch(r){console.log("ERROR SSR",r);}}function zu(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}}}
64
64
 
65
65
  export { Uc as BespokeEndpointNextJsHandlerFactory, de as BespokeGetSession, hs as BespokeHandleAuth, Eu as BespokeManagerServerSideProps, Fu as BespokeRendererStaticPaths, Vu as BespokeRendererStaticProps, ws as BespokeSearchUsersByMetadata, Es as BespokeUpdateCurrentUserAppMetadata, vs as BespokeUpdateCurrentUserMetadata, ks as BespokeWithApiRoleAuthRequired, Vc as ReportCrosswalkHandler, it as dbApiFactory, Gr as endpointKey, Me as getDB, Dt as useDatabaseApi };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datawheel/bespoke",
3
- "version": "0.8.0-rc.7",
3
+ "version": "0.8.0-rc.9",
4
4
  "description": "Content management system for creating automated data reports",
5
5
  "exports": {
6
6
  ".": {