@datawheel/bespoke 0.8.0-rc.2 → 0.8.0-rc.20

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/explore.js CHANGED
@@ -1,11 +1,12 @@
1
- import { Stack, Text, Badge, Group, Container, TextInput, Loader, ActionIcon, LoadingOverlay, Alert, Tooltip, Modal, Autocomplete, Button, useMantineTheme, ScrollArea, Grid, Pagination, Image, Card } from '@mantine/core';
1
+ import { Stack, Text, Badge, Group, Container, TextInput, Loader, ActionIcon, LoadingOverlay, Alert, Tooltip, Modal, Autocomplete, MediaQuery, Select, Button, useMantineTheme, ScrollArea, Grid, Pagination, Image, Card } from '@mantine/core';
2
2
  import { createContext, forwardRef, useContext, useState, useCallback, useEffect, useMemo, useRef } from 'react';
3
3
  import { IconSearch, IconTrash, IconX } from '@tabler/icons-react';
4
4
  import { useDebouncedValue, useClickOutside } from '@mantine/hooks';
5
5
  import { useRouter } from 'next/router';
6
- import ue from 'axios';
6
+ import fe from 'axios';
7
7
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
8
+ import { format } from 'd3-format';
8
9
 
9
- var ae={try_another:"Try another search or filter.",search:"Search",filters_all:"All",no_results:"No Results",load_more:"Load more",report:{},dimension:{},variant:{}},de=createContext({metadata:[],loadingItems:!1,setLoadingItems:()=>null,loadingMetadata:!1,setLoadingMetadata:()=>null,resultCount:{},totalCount:{},setResultCount:()=>null,activePage:1,setActivePage:()=>null,pageSize:10,results:[],filters:{},doQuery:()=>null,setFilters:()=>null,query:"",setQuery:()=>null,debouncedQuery:"",currentPageTotal:10,selectorStructure:[],translations:ae,setTranslations:()=>null,showSelectors:!0}),A=()=>useContext(de);function $e({children:o,pageSize:r=10}){let n={profile:void 0,variant:void 0},[l,u]=useState([]),[h,i]=useState(!1),[x,p]=useState(!1),[c,y]=useState({}),[e,b]=useState({}),[m,C]=useState(1),[f,L]=useState(n),[M,J]=useState(""),[N]=useDebouncedValue(M,500),[Q,Y]=useState([]),[W,V]=useState(ae),[B,k]=useState(!1),{locale:G}=useRouter(),X=async()=>{try{p(!0),ue.get("/api/cms/read/metadata").then(t=>{if(t&&t.data&&t.data.data&&t.data.data.data){let R=t.data.data.data.reduce((g,s)=>(s.dimensions&&s.dimensions.forEach(d=>{d.variants&&d.variants.forEach(a=>{g[a.id]=a.members_count||0;});}),g),{});u(t.data.data.data),y(R),b(R);}p(!1),k(!0);}).catch(t=>{console.error(t);});}catch(t){console.error("Error fetching metadata:",t),u([]),p(!1),y({}),b({});}},Z=t=>{y(t||e);},O=useCallback(async(t,R)=>{!B&&l.length===0&&await X(),L({profile:t,variant:R});},[]);useEffect(()=>{let t=!1;return B&&(i(!0),C(1),H(t,0)),()=>{t=!1;}},[N,f,B]),useEffect(()=>{if(B){i(!0);let t=(m-1)*r;H(!1,t);}},[m]);let H=async(t,R)=>{let g=f.profile&&!Number.isNaN(f.profile)?[f.profile]:[],s=f.variant&&!Number.isNaN(f.variant)?[f.variant]:[],d={query:N,format:"profiles",locale:G,limit:r,offset:R,visible:!0,includes:!0,noImage:!1,variant:s,dimension:[],report:g,all:!1};ue.get("/api/cms/search/reports",{params:d}).then(a=>{if(a&&a.data&&a.data.data&&a.data.data.results&&!t){let w=a.data.data.results;Y(w),y(M===""?!1:a.data.data.meta.variantCount);}i(!1);}).catch(a=>{console.error(a),i(!1);});},_=c||e,$={id:void 0,name:W.filters_all||"ALL"},ee=t=>{let R=t.reduce((s,d)=>s.reduce((a,w)=>a.concat(d.map(Be=>[].concat(w,Be))),[])).map(s=>{let d;return Array.isArray(s)?d={id:s.map(a=>a.id).join(","),name:s.map(a=>a.name).join(" / "),members_count:s.reduce((a,w)=>a*(_[w.id]||1),0)}:(s.members_count=_[s.id]||0,d={...s,members_count:_[s.id]||0}),d}),g=R.reduce((s,d)=>s+(d.members_count||0),0);return [{...$,members_count:g},...R]},te=l.length>1,F=useMemo(()=>{let t=[];if(!x&&l.length>0&&_){let R=l.filter(g=>g.dimensions.length>0).map(g=>{let s=!1,d=ee(g.dimensions.map(a=>a.variants));return d&&d.length>2&&(s=!0),{id:g.id,name:g.dimensions.map(a=>a.name).join(" / "),variants:d,members_count:d.filter(a=>a.id).reduce((a,w)=>a+(w.members_count||0),0),show:s}});t=[{...$,members_count:R.reduce((g,s)=>g+(s.members_count||0),0)},...R];}return t},[x,_,l,$]),oe=useMemo(()=>{let t;return F&&(f.profile?f.profile&&(t=F.find(R=>R.id===f.profile),t&&f.variant&&t.variants&&(t=t.variants.find(R=>R.id===f.variant))):t=F.find(R=>!R.id)),t?t.members_count:r},[f,F]),re={metadata:l,loadingMetadata:x,setLoadingMetadata:p,loadingItems:h,setLoadingItems:i,resultCount:c,totalCount:e,setResultCount:Z,activePage:m,setActivePage:C,pageSize:r,filters:f,setFilters:L,doQuery:H,query:M,setQuery:J,debouncedQuery:N,results:Q,currentPageTotal:oe,selectorStructure:F,translations:W,setTranslations:t=>V({...ae,...t}),showSelectors:te,initExplore:O};return jsx(de.Provider,{value:re,children:o})}function qe({translations:o}){let{loadingItems:r,setFilters:n,selectorStructure:l,filters:u,showSelectors:h}=A(),i=e=>{e!==u.profile&&n({profile:e,variant:void 0});},x=e=>{e!==u.variant&&n({...u,variant:e});},p=l.length===2?l[1].id:u.profile,c=p?l.find(e=>e.id===p):void 0,y=c&&c.variants&&u.variant?c.variants.find(e=>e.id===u.variant):void 0;return jsxs(Fragment,{children:[h&&jsx(Group,{position:"center",className:"bespoke-explore-reports-selector",mb:"md",children:l.map(e=>jsxs(Button,{"data-selected":e.id===c?.id?"true":"false","data-report-name":e.name,variant:e.id===c?.id?"outline":"subtle",onClick:()=>i(e.id),children:[o?.dimension[e.name]??e.name,!r&&jsx(Text,{span:!0,size:"xs",ml:"0.2rem",children:`(${e.members_count})`})]},`p-${e.id}`))}),c&&c.variants&&c.variants.length>2&&jsx(Group,{position:"center",style:{minHeight:"36px"},className:"bespoke-explore-variant-selector",mb:"md",children:c.variants.map(e=>jsxs(Button,{"data-selected":e.id===y?.id?"true":"false","data-variant-name":e.name,variant:e.id===y?.id?"outline":"subtle",onClick:()=>x(e.id),children:[o?.dimension[e.name]??e.name,!r&&jsx(Text,{span:!0,size:"xs",ml:"0.2rem",children:`(${e.members_count})`})]},`v-${e.id}`))})]})}var xe=qe;function U(){return useMantineTheme().other.bespokeStyles??{}}var q=()=>{let o=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",r=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[o];return r.includes(o)||r.push(o),{localeDefault:o,locales:r}};function Je({reportName:o,members:r,href:n,onClick:l}){let u=r.map(i=>jsx(Image,{src:i.image.src,height:160,imageProps:{loading:"lazy"},alt:i.name},i.id)),h=r.map(i=>jsxs(Stack,{children:[jsx(Text,{weight:500,children:i.name}),jsx(Badge,{color:"green",variant:"light",children:i.variant})]},i.id));return jsxs(Card,{shadow:"sm",p:"lg",radius:"md",withBorder:!0,children:[jsx(Card.Section,{children:jsx(Group,{grow:!0,spacing:0,children:u})}),jsx(Group,{position:"apart",mt:"md",mb:"xs",children:h}),jsx("a",{href:n,onClick:l,children:jsx(Button,{variant:"light",color:"blue",fullWidth:!0,mt:"md",radius:"md",children:`See ${o} Report`})})]})}var Ye=o=>{let{components:r}=U(),n=Je;return r?.ReportTile&&(n=r?.ReportTile),o&&(n=o),n};function Ze({profile:o,profilePrefix:r,onSelect:n,reportTile:l}){let u=useRouter(),h=u.locale,{localeDefault:i}=q(),p=`${h===i?"":`/${h}`}${r}${o.path}`,c=o.members.map(m=>({original_id:m.metadata.id,name:m.name,id:m.id,variant:m.metadata.variant.name,image:{src:`/api/cms/member/image?member=${m.id}&size=thumb`,alt:m.name}})),y=m=>{u.push(`${m}`),n&&n();},e=m=>{m.preventDefault(),y(p);},b=Ye(l);return jsx(Grid.Col,{xs:12,sm:6,md:4,lg:4,xl:3,children:jsx(b,{reportName:o.report.name,members:c,href:p,onClick:e})},o.id)}var Pe=Ze;function nt({profilePrefix:o,onSelect:r=()=>{},reportTile:n}){let[l,u]=useState(500),h=useRef(null),{results:i}=A(),x=h.current?.offsetTop||0,p=50;return useEffect(()=>{let{innerHeight:c}=window;u(c-x-p);},[x]),jsx(ScrollArea,{offsetScrollbars:!0,type:"always",h:l,ref:h,children:jsx(Grid,{align:"stretch",children:i.map(c=>jsx(Pe,{profile:c,profilePrefix:o,reportTile:n,onSelect:r},c.id))})})}var ve=nt;function lt(){let{activePage:o,setActivePage:r,pageSize:n,currentPageTotal:l}=A();return jsx(Group,{position:"center",children:jsx(Pagination,{value:o,onChange:h=>{r(h);},total:Math.ceil(l/n),size:"sm",py:"xs"})})}var Se=lt;function Rt({profilePrefix:o,initialReportId:r,initialVariantId:n,translations:l,onSelect:u,reportTile:h}){let i=useRef(),x=A(),{query:p,setQuery:c,results:y,loadingItems:e,loadingMetadata:b,translations:m,setTranslations:C,initExplore:f}=x;useEffect(()=>{f&&f(r,n);},[f]),useEffect(()=>{e||i.current?.focus();},[e]),useEffect(()=>{l&&C(l);},[l]);let L=()=>{c("");};return jsxs(Container,{fluid:!0,pt:"1em",children:[jsx(TextInput,{placeholder:m.search,mb:"md",size:"xl",onChange:M=>c(M.target.value),readOnly:b||e,icon:jsx(IconSearch,{size:24}),value:p,rightSectionWidth:100,rightSectionProps:{style:{justifyContent:"flex-end",padding:"0 15px 0 0"}},rightSection:jsxs(Group,{align:"center",children:[(b||e)&&jsx(Loader,{size:28}),p!==""&&jsx(ActionIcon,{onClick:L,children:jsx(IconTrash,{size:24})})]}),ref:i}),jsx(xe,{translations:m}),jsx(LoadingOverlay,{visible:b||e}),!e&&y.length===0&&jsx(Alert,{title:m.no_results,color:"blue",children:m.try_another}),jsx(ve,{profilePrefix:o,onSelect:u,reportTile:h}),jsx(Se,{})]})}var le=Rt;var{localeDefault:Et}=q();function It({exploreProps:o={profilePrefix:"/",locale:Et},icon:r=jsx(IconSearch,{size:20}),actionIconProps:n={},modalProps:l={},tooltipProps:u={},tooltipText:h="Click to Explore",showIcon:i=!0,showTooltip:x=!1,children:p}){let[c,y]=useState(!1),e={variant:"light",size:"md",radius:"md",...n},b={fullScreen:!0,opened:c,onClose:()=>y(!1)},m=jsx(ActionIcon,{...e,onClick:()=>y(!0),children:r}),C=i?jsxs(Group,{spacing:"sm",style:{cursor:"pointer"},children:[p,m]}):p;return x&&(C=jsx(Tooltip,{label:h,...u,children:C})),jsxs(Fragment,{children:[jsx(Modal,{...b,...l,children:c&&jsx(le,{...o,onSelect:()=>y(!1)})}),jsx("div",{onClick:()=>y(!0),children:p?C:jsx(Fragment,{children:m})})]})}var kt=It;var wt=forwardRef(({id:o,members:r,profilePrefix:n,reportName:l,reportPath:u,...h},i)=>{let x=r.map(p=>jsxs(Stack,{align:"center",children:[jsx(Text,{weight:500,children:p.name}),jsx(Badge,{color:"green",variant:"light",children:p.variant})]},p.id));return jsx("div",{ref:i,children:jsx(Group,{position:"apart",grow:!0,...h,children:x})},o)}),ke=wt;var Ht=o=>{let{components:r}=U(),n=ke;return r?.ReportItem&&(n=r?.ReportItem),o&&(n=o),n};function Ut({locale:o,profilePrefix:r="/report",autocompleteProps:n={},tooltipProps:l={},tooltipText:u="Click to search",searchReportParams:h={},callback:i,children:x}){let p=useRouter(),c=p.locale,{localeDefault:y}=q(),e=c===y?"":`/${c}`,b=Ht(n?n.itemComponent:null),[m,C]=useState(""),[f,L]=useDebouncedValue(m,500),[M,J]=useState([]),[N,Q]=useState(!1),[Y,W]=useState(!1),[V,B]=useState(!1),[k,G]=useState(!x),X=()=>{G(!1);},Z=()=>{G(!0),$();},O=useRef(),H=useClickOutside(X),_=n?.searchConfig?.searchLimit??10,$=()=>{Q(!0);let g={query:f,format:"profiles",locale:o,limit:_,visible:!0,includes:!0,noImage:!1,variant:[],dimension:[],report:[],all:!1,...h};ue.get("/api/cms/search/reports",{params:g}).then(s=>{s&&s.data&&s.data.data&&s.data.data.results&&J(s.data.data.results.map(d=>({id:d.id,reportName:d.report.name,href:`${e}${r}${d.path}`,reportPath:`${d.path}`,profilePrefix:r,value:`VALUE: ${d.id}`,members:d.members.map(a=>({original_id:a.metadata.id,name:a.name,id:a.id,variant:a.metadata.variant.name,image:{src:`/api/cms/member/image?member=${a.id}&size=thumb`,alt:a.name}}))}))),Q(!1),O.current?.focus();}).catch(s=>{console.error(s),Q(!1);});};useEffect(()=>{V&&f.length>=(n.searchConfig?.queryThreshold??0)&&$();},[V,f,n.searchConfig?.queryThreshold]),useEffect(()=>{L(),O.current&&k&&B(!0);},[]),useEffect(()=>{L(),O.current&&k&&B(!0);},[k]);let ee=g=>{G(!1),i?i(g):(p.push(g.href),W(!0));},te=g=>{g.includes("VALUE:")||C(g);},{searchConfig:F,...oe}=n,re={placeholder:"Search",size:"md",icon:jsx(IconSearch,{}),...oe,data:M},t=jsx(Autocomplete,{value:m,itemComponent:b,onItemSubmit:ee,onChange:te,filter:()=>!0,disabled:(N||Y)&&!V,limit:_,maxDropdownHeight:250,rightSection:jsx(Group,{spacing:0,position:"right",children:N?jsx(Loader,{size:20}):jsx(Fragment,{})}),rightSectionWidth:50,ref:O,...re});return x?jsx(Tooltip,{label:u,disabled:k,...l,children:jsxs(Group,{ref:H,spacing:"sm",align:"center",style:{cursor:"pointer"},children:[!k&&jsx("div",{onClick:()=>G(!0),children:x}),k&&jsx(Fragment,{children:t}),k?jsx(ActionIcon,{variant:"light",onClick:X,children:jsx(IconX,{size:20})}):jsx(ActionIcon,{variant:"light",onClick:Z,children:jsx(IconSearch,{size:20})})]})}):t}var Wt=Ut;
10
+ var ie={try_another:"Try another search or filter.",search:"Search",filters_all:"All",no_results:"No Results",load_more:"Load more",select_report:"Select Report",select_variant:"Select Variant",count_format:".2s",report:{},dimension:{},variant:{}},ge=createContext({metadata:[],loadingItems:!1,setLoadingItems:()=>null,loadingMetadata:!1,setLoadingMetadata:()=>null,resultCount:{},totalCount:{},setResultCount:()=>null,activePage:1,setActivePage:()=>null,pageSize:10,results:[],filters:{},doQuery:()=>null,setFilters:()=>null,query:"",setQuery:()=>null,debouncedQuery:"",currentPageTotal:10,selectorStructure:[],translations:ie,setTranslations:()=>null,showSelectors:!0}),L=()=>useContext(ge);function Ve({children:t,pageSize:i=10}){let a={profile:void 0,variant:void 0},[s,d]=useState([]),[g,b]=useState(!1),[m,h]=useState(!1),[x,o]=useState({}),[y,R]=useState({}),[p,e]=useState(1),[c,_]=useState(a),[B,$]=useState(""),[G]=useDebouncedValue(B,750),[H,ee]=useState([]),[Z,U]=useState(ie),[w,A]=useState(!1),{locale:O}=useRouter(),J=async()=>{try{h(!0),fe.get("/api/cms/read/metadata").then(r=>{if(r&&r.data&&r.data.data&&r.data.data.data){let v=r.data.data.data.reduce((u,l)=>(l.dimensions&&l.dimensions.forEach(f=>{f.variants&&f.variants.forEach(n=>{u[n.id]=n.members_count||0;});}),u),{});d(r.data.data.data),o(v),R(v);}h(!1),A(!0);}).catch(r=>{console.error(r);});}catch(r){console.error("Error fetching metadata:",r),d([]),h(!1),o({}),R({});}},te=r=>{o(r||y);},F=useCallback(async(r,v,u)=>{!w&&s.length===0&&await J(),_({profile:r,variant:v}),u!==""&&$(u);},[]);useEffect(()=>{let r=!1;return w&&(b(!0),e(1),X(r,0)),()=>{r=!1;}},[G,c,w]),useEffect(()=>{if(w){b(!0);let r=(p-1)*i;X(!1,r);}},[p]);let X=async(r,v)=>{let u=c.profile&&!Number.isNaN(c.profile)?[c.profile]:[],l=c.variant?typeof c.variant=="string"&&c.variant.includes(",")?c.variant.split(",").map(n=>parseInt(n,10)):[parseInt(c.variant,10)]:[],f={query:G,format:"profiles",locale:O,limit:i,offset:v,visible:!0,includes:!0,noImage:!1,variant:l,dimension:[],report:u,all:!1,origin:"typesense"};fe.get("/api/cms/search/reports",{params:f}).then(n=>{if(n&&n.data&&n.data.data&&n.data.data.results&&!r){let M=n.data.data.results;ee(M),o(!B||B===""?!1:n.data.data.meta.variantCount);}b(!1);}).catch(n=>{console.error(n),b(!1);});},N=x||y,D={id:void 0,name:Z.filters_all||"ALL"},re=r=>{let v=r.reduce((l,f)=>l.reduce((n,M)=>n.concat(f.map(Ge=>[].concat(M,Ge))),[])).map(l=>{let f;return Array.isArray(l)?f={id:l.map(n=>n.id).join(","),name:l.map(n=>n.name).join(" / "),members_count:l.reduce((n,M)=>n*(N[M.id]||1),1),ordering:l.reduce((n,M)=>n+M.ordering,0)}:(l.members_count=N[l.id]||0,f={...l,members_count:N[l.id]||0}),f}),u=v.reduce((l,f)=>l+(f.members_count||0),0);return [{...D,members_count:u},...v]},oe=s.length>1,Q=useMemo(()=>{let r=[];if(!m&&s.length>0&&N){let v=s.filter(u=>u.dimensions.length>0).map(u=>{let l=!1,f=re(u.dimensions.map(n=>n.variants));return f&&f.length>2&&(l=!0),{id:u.id,name:u.dimensions.map(n=>n.name).join(" / "),variants:f,members_count:f.filter(n=>n.id).reduce((n,M)=>n+(M.members_count||0),0),show:l}});r=[{...D,members_count:v.reduce((u,l)=>u+(l.members_count||0),0)},...v];}return r},[m,N,s,D]),ne=useMemo(()=>{let r;return Q&&(c.profile?c.profile&&(r=Q.find(v=>v.id===c.profile),r&&c.variant&&r.variants&&(r=r.variants.find(v=>v.id===c.variant))):r=Q.find(v=>!v.id)),r?r.members_count:i},[c,Q]),ae={metadata:s,loadingMetadata:m,setLoadingMetadata:h,loadingItems:g,setLoadingItems:b,resultCount:x,totalCount:y,setResultCount:te,activePage:p,setActivePage:e,pageSize:i,filters:c,setFilters:_,doQuery:X,query:B,setQuery:$,debouncedQuery:G,results:H,currentPageTotal:ne,selectorStructure:Q,translations:Z,setTranslations:r=>U({...ie,...r}),showSelectors:oe,initExplore:F};return jsx(ge.Provider,{value:ae,children:t})}function Xe({translations:t}){let{loadingItems:i,setFilters:a,selectorStructure:s,filters:d,showSelectors:g}=L(),b=e=>{let c=e===null||Number.isNaN(e)?void 0:parseInt(e,10);c!==d.profile?a({profile:c,variant:void 0}):c&&a({profile:void 0,variant:void 0});},m=e=>{let c=e===null?void 0:typeof e=="string"&&e.includes(",")?e:parseInt(e,10);c!==d.variant?a({...d,variant:c}):c&&a({...d,variant:void 0});},h=e=>e<1e3?e:format(t.count_format)(e).replace(/\.0+([a-zA-Z]*)$/,"$1"),x=s.length===2?s[1].id:d.profile,o=x?s.find(e=>e.id===x):void 0,y=o&&o.variants&&d.variant?o.variants.find(e=>e.id===d.variant):void 0,R=useMemo(()=>s.map(e=>({value:String(e.id||""),label:(t?.dimensionIcon?.[e.name]?`${t?.dimensionIcon?.[e.name]} `:"")+(t?.dimension[e.name]||e.name)+(!i&&(!o||e.id===o?.id)?` (${h(e.members_count)})`:"")})),[t,o,s]),p=useMemo(()=>o?.variants?.map(e=>({value:String(e.id||""),label:(t?.variantIcon?.[e.name]?`${t?.variantIcon?.[e.name]} `:"")+(t?.variant[e.name]||e.name)+(!i&&(!y||e.id===y?.id)?` (${h(e.members_count)})`:"")}))??[],[t,y,s]);return jsx(Fragment,{children:g&&jsxs(Fragment,{children:[jsx(MediaQuery,{largerThan:1e3,styles:{display:"none"},children:jsxs(Group,{className:"bespoke-explore-reports-select-container",position:"center",mb:"md",children:[jsx(Select,{className:"bespoke-explore-reports-select",data:R,value:String(o?.id||""),onChange:e=>b(e),label:t.select_report||"Select Report",placeholder:t.select_report||"Select Report",clearable:typeof o?.id<"u",style:{width:"450px"}}),o?.variants&&o.variants.length>2&&jsx(Select,{className:"bespoke-explore-variant-select",data:p,value:String(y?.id||""),onChange:e=>m(e),label:t.select_variant||"Select Variant",placeholder:t.select_variant||"Select Variant",clearable:typeof y?.id<"u",style:{width:"450px"}})]})}),jsx(MediaQuery,{smallerThan:1e3,styles:{display:"none"},children:jsxs("div",{children:[jsx(Group,{position:"center",className:"bespoke-explore-reports-selector",mb:"md",children:s.map(e=>jsxs(Button,{"data-selected":e.id===o?.id?"true":"false","data-report-name":e.name,variant:e.id===o?.id?"outline":"subtle",onClick:()=>b(e.id),rightIcon:e.id&&e.id===o?.id?jsx(IconX,{size:"1rem"}):void 0,leftIcon:t?.dimensionIcon?.[e.name]??void 0,children:[jsx(Text,{span:!0,className:"bespoke-explore-reports-name",dangerouslySetInnerHTML:{__html:t?.dimension[e.name]??e.name}}),!i&&(!o||e.id===o?.id)&&jsx(Text,{span:!0,size:"xs",ml:"0.2rem",className:"bespoke-explore-reports-count",children:`(${h(e.members_count)})`})]},`p-${e.id}`))}),o&&o.variants&&o.variants.length>2&&jsx(Group,{position:"center",style:{minHeight:"36px"},className:"bespoke-explore-variant-selector",mb:"md",children:o.variants.map(e=>jsxs(Button,{"data-selected":e.id===y?.id?"true":"false","data-variant-name":e.name,variant:e.id===y?.id?"outline":"subtle",onClick:()=>m(e.id),rightIcon:e.id&&e.id===y?.id?jsx(IconX,{size:"1rem"}):void 0,leftIcon:t?.variantIcon?.[e.name]?jsx(Text,{span:!0,dangerouslySetInnerHTML:{__html:t.variantIcon[e.name]}}):void 0,children:[jsx(Text,{span:!0,className:"bespoke-explore-variant-name",dangerouslySetInnerHTML:{__html:t?.variant[e.name]??e.name}}),!i&&(!y||e.id===y?.id)&&jsx(Text,{span:!0,size:"xs",ml:"0.2rem",className:"bespoke-explore-variant-count",children:`(${h(e.members_count)})`})]},`v-${e.id}`))})]})})]})})}var Se=Xe;function K(){return useMantineTheme().other.bespokeStyles??{}}var je=()=>{let t=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",i=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[t];return i.includes(t)||i.push(t),{localeDefault:t,locales:i}},q=je;function ot({reportId:t,reportName:i,members:a,href:s,onClick:d}){let g=a.map(m=>jsx(Image,{src:m.image.src,height:160,imageProps:{loading:"lazy"},alt:m.name},m.id)),b=a.map(m=>jsxs(Stack,{children:[jsx(Text,{weight:500,children:m.name}),jsx(Badge,{color:"green",variant:"light",w:"fit-content",children:m.variant})]},m.id));return jsxs(Card,{className:`report-${t}-tile`,shadow:"sm",p:"lg",radius:"md",withBorder:!0,children:[jsx(Card.Section,{children:jsx(Group,{grow:!0,spacing:0,children:g})}),jsx(Group,{position:"apart",mt:"md",mb:"xs",children:b}),jsx("a",{href:s,onClick:d,children:jsx(Button,{variant:"light",color:"blue",fullWidth:!0,mt:"md",radius:"md",children:`See ${i} Report`})})]})}var nt=t=>{let{components:i}=K(),a=ot;return i?.ReportTile&&(a=i?.ReportTile),t&&(a=t),a};function at({profile:t,profilePrefix:i,onSelect:a,reportTile:s}){let d=useRouter(),g=d.locale,{localeDefault:b}=q(),h=`${g===b?"":`/${g}`}${i}${t.path}`,x=t.members.map(p=>({original_id:p.metadata.id,name:p.name,id:p.id,dimension_id:p.metadata.dimension.id,dimension:p.metadata.dimension.name,variant_id:p.metadata.variant.id,variant:p.metadata.variant.name,image:{src:`/api/cms/member/image?member=${p.id}&size=thumb`,alt:p.name}})),o=p=>{d.push(`${p}`),a&&a();},y=p=>{p.preventDefault(),o(h);},R=nt(s);return jsx(Grid.Col,{xs:12,sm:6,md:4,lg:4,xl:3,children:jsx(R,{reportId:t.report.id,reportName:t.report.name,members:x,href:h,onClick:y})},t.id)}var Ie=at;function mt({profilePrefix:t,onSelect:i=()=>{},reportTile:a}){let[s,d]=useState(500),g=useRef(null),{results:b}=L(),m=g.current?.offsetTop||0,h=50;return useEffect(()=>{let{innerHeight:x}=window;d(x-m-h);},[m]),jsx(ScrollArea,{offsetScrollbars:!0,type:"always",h:s,ref:g,children:jsx(Grid,{align:"stretch",children:b.map(x=>jsx(Ie,{profile:x,profilePrefix:t,reportTile:a,onSelect:i},x.id))})})}var Ee=mt;function ft(){let{activePage:t,setActivePage:i,pageSize:a,currentPageTotal:s}=L();return jsx(Group,{position:"center",children:jsx(Pagination,{value:t,onChange:g=>{i(g);},total:Math.ceil(s/a),size:"sm",py:"xs"})})}var _e=ft;function Ct({profilePrefix:t,initialReportId:i,initialVariantId:a,translations:s,onSelect:d,reportTile:g,initialQuery:b}){let m=useRef(),h=L(),{query:x,setQuery:o,results:y,loadingItems:R,loadingMetadata:p,translations:e,setTranslations:c,initExplore:_}=h;useEffect(()=>{_&&_(i,a,b);},[_]),useEffect(()=>{R||m.current?.focus();},[R]),useEffect(()=>{s&&c(s);},[s]);let B=()=>{o("");};return jsxs(Container,{fluid:!0,pt:"1em",children:[jsx(TextInput,{placeholder:e.search,mb:"md",size:"xl",onChange:$=>o($.target.value),readOnly:p||R,icon:jsx(IconSearch,{size:24}),value:x,rightSectionWidth:100,rightSectionProps:{style:{justifyContent:"flex-end",padding:"0 15px 0 0"}},rightSection:jsxs(Group,{align:"center",children:[(p||R)&&jsx(Loader,{size:28}),x&&x!==""&&jsx(ActionIcon,{onClick:B,children:jsx(IconTrash,{size:24})})]}),ref:m}),jsx(Se,{translations:e}),jsx(LoadingOverlay,{visible:p||R}),!R&&y.length===0&&jsx(Alert,{title:e.no_results,color:"blue",children:e.try_another}),jsx(Ee,{profilePrefix:t,onSelect:d,reportTile:g}),jsx(_e,{})]})}var pe=Ct;var{localeDefault:Lt}=q();function Bt({exploreProps:t={profilePrefix:"/",locale:Lt},icon:i=jsx(IconSearch,{size:20}),actionIconProps:a={},modalProps:s={},tooltipProps:d={},tooltipText:g="Click to Explore",showIcon:b=!0,showTooltip:m=!1,children:h}){let[x,o]=useState(!1),y={variant:"light",size:"md",radius:"md",...a},R={fullScreen:!0,opened:x,onClose:()=>o(!1)},p=jsx(ActionIcon,{...y,onClick:()=>o(!0),children:i}),e=b?jsxs(Group,{spacing:"sm",style:{cursor:"pointer"},children:[h,p]}):h;return m&&(e=jsx(Tooltip,{label:g,...d,children:e})),jsxs(Fragment,{children:[jsx(Modal,{...R,...s,children:x&&jsx(pe,{...t,onSelect:()=>o(!1)})}),jsx("div",{onClick:()=>o(!0),children:h?e:jsx(Fragment,{children:p})})]})}var Nt=Bt;var Ft=forwardRef(({id:t,members:i,...a},s)=>{let d=i.map(g=>jsxs(Stack,{align:"center",children:[jsx(Text,{weight:500,children:g.name}),jsx(Badge,{color:"green",variant:"light",children:g.variant})]},g.id));return jsx("div",{ref:s,children:jsx(Group,{position:"apart",grow:!0,...a,children:d})},t)}),Be=Ft;var Zt=t=>{let{components:i}=K(),a=Be;return i?.ReportItem&&(a=i?.ReportItem),t&&(a=t),a};function Jt({locale:t,profilePrefix:i="/report",autocompleteProps:a={},tooltipProps:s={},tooltipText:d="Click to search",searchReportParams:g={},callback:b,children:m}){let h=useRouter(),x=h.locale,{localeDefault:o}=q(),y=x===o?"":`/${x}`,R=Zt(a?a.itemComponent:null),[p,e]=useState(""),[c,_]=useDebouncedValue(p,500),[B,$]=useState([]),[G,H]=useState(!1),[ee,Z]=useState(!1),[U,w]=useState(!1),[A,O]=useState(!m),J=()=>{O(!1);},te=()=>{O(!0),D();},F=useRef(),X=useClickOutside(J),N=a?.searchConfig?.searchLimit??10,D=()=>{H(!0);let u={query:c,format:"profiles",locale:t,limit:N,visible:!0,includes:!0,noImage:!1,variant:[],dimension:[],report:[],all:!1,...g};fe.get("/api/cms/search/reports",{params:u}).then(l=>{l&&l.data&&l.data.data&&l.data.data.results&&$(l.data.data.results.map(f=>({id:f.id,reportName:f.report.name,href:`${y}${i}${f.path}`,reportPath:`${f.path}`,profilePrefix:i,value:`VALUE: ${f.id}`,members:f.members.map(n=>({original_id:n.metadata.id,name:n.name,id:n.id,variant:n.metadata.variant.name,image:{src:`/api/cms/member/image?member=${n.id}&size=thumb`,alt:n.name}}))}))),H(!1),F.current?.focus();}).catch(l=>{console.error(l),H(!1);});};useEffect(()=>{U&&c.length>=(a.searchConfig?.queryThreshold??0)&&D();},[U,c,a.searchConfig?.queryThreshold]),useEffect(()=>{_(),F.current&&A&&w(!0);},[]),useEffect(()=>{_(),F.current&&A&&w(!0);},[A]);let re=u=>{O(!1),b?b(u):(h.push(u.href),Z(!0));},oe=u=>{u.includes("VALUE:")||e(u);},{searchConfig:Q,...ne}=a,ae={placeholder:"Search",size:"md",icon:jsx(IconSearch,{}),...ne,data:B},r=jsx(Autocomplete,{value:p,itemComponent:R,onItemSubmit:re,onChange:oe,filter:()=>!0,disabled:(G||ee)&&!U,limit:N,maxDropdownHeight:250,rightSection:jsx(Group,{spacing:0,position:"right",children:G?jsx(Loader,{size:20}):jsx(Fragment,{})}),rightSectionWidth:50,ref:F,...ae});return m?jsx(Tooltip,{label:d,disabled:A,...s,children:jsxs(Group,{ref:X,spacing:"sm",align:"center",style:{cursor:"pointer"},children:[!A&&jsx("div",{onClick:()=>O(!0),children:m}),A&&jsx(Fragment,{children:r}),A?jsx(ActionIcon,{variant:"light",onClick:J,children:jsx(IconX,{size:20})}):jsx(ActionIcon,{variant:"light",onClick:te,children:jsx(IconSearch,{size:20})})]})}):r}var Yt=Jt;
10
11
 
11
- export { le as BespokeExplore, kt as BespokeExploreModal, $e as BespokeExploreProvider, Wt as BespokeSearch, A as useBespokeExplore };
12
+ export { pe as BespokeExplore, Nt as BespokeExploreModal, Ve as BespokeExploreProvider, Yt as BespokeSearch, L as useBespokeExplore };
package/dist/index.js CHANGED
@@ -2,6 +2,6 @@ import { useMantineTheme, Modal, Group, Button } from '@mantine/core';
2
2
  import p, { useState, useCallback, useContext } from 'react';
3
3
  import { jsxs, jsx } from 'react/jsx-runtime';
4
4
 
5
- var C=p.createContext(void 0);function b(n){let[o,r]=useState(!1),[e,i]=useState(null),s=p.useMemo(()=>{function t(d,v){return v?{show:()=>t(d)}:new Promise((D,x)=>{i({request:d,onResolve:D,onReject:x}),r(!0);})}return {newConfirmation:t}},[]),u=()=>{r(!1),setTimeout(()=>i(null),200);},P=useCallback(t=>{!o||!e||(e.onResolve(t),u());},[o,e]),g=useCallback(t=>{!o||!e||(e.onReject(t),u());},[o,e]);return jsxs(C.Provider,{value:s,children:[e&&jsx(M,{opened:o,request:e.request,onConfirm:P,onCancel:g}),n.children]})}function M(n){let{request:o,opened:r,onCancel:e,onConfirm:i}=n,s=useMantineTheme();return jsxs(Modal,{centered:!0,zIndex:1002,opened:r,title:o.title,onClose:e,children:[o.message,jsxs(Group,{position:"right",style:{marginTop:s.spacing.sm},children:[jsx(Button,{onClick:e,children:o.cancelText||"Cancel"}),jsx(Button,{color:"red",onClick:i,children:o.confirmText||"Confirm"})]})]})}function k(){let n=useContext(C);if(n===void 0)throw new Error("useConfirmationDialog must be used within ConfirmationDialogProvider.");return n}
5
+ var C=p.createContext(void 0);function b(n){let[o,r]=useState(!1),[e,i]=useState(null),s=p.useMemo(()=>{function t(d,v){return v?{show:()=>t(d)}:new Promise((D,x)=>{i({request:d,onResolve:D,onReject:x}),r(!0);})}return {newConfirmation:t}},[]),u=()=>{r(!1),setTimeout(()=>i(null),200);},P=useCallback(t=>{!o||!e||(e.onResolve(t),u());},[o,e]),g=useCallback(t=>{!o||!e||(e.onReject(t),u());},[o,e]);return jsxs(C.Provider,{value:s,children:[e&&jsx(k,{opened:o,request:e.request,onConfirm:P,onCancel:g}),n.children]})}function k(n){let{request:o,opened:r,onCancel:e,onConfirm:i}=n,s=useMantineTheme();return jsxs(Modal,{centered:!0,zIndex:1002,opened:r,title:o.title,onClose:e,children:[o.message,jsxs(Group,{position:"right",style:{marginTop:s.spacing.sm},children:[jsx(Button,{onClick:e,children:o.cancelText||"Cancel"}),jsx(Button,{color:"red",onClick:i,children:o.confirmText||"Confirm"})]})]})}function M(){let n=useContext(C);if(n===void 0)throw new Error("useConfirmationDialog must be used within ConfirmationDialogProvider.");return n}
6
6
 
7
- export { b as DialogProvider, k as useDialog };
7
+ export { b as DialogProvider, M as useDialog };
@@ -1,31 +1,31 @@
1
1
  import { createSlice, configureStore } from '@reduxjs/toolkit';
2
2
  import { HYDRATE, createWrapper } from 'next-redux-wrapper';
3
- import je from 'axios';
3
+ import We from 'axios';
4
4
  import { schema, normalize } from 'normalizr';
5
5
  import { assign, closest, merge } from 'd3plus-common';
6
- import * as Hr from 'd3-array';
7
- import * as Gr from 'd3-collection';
8
- import * as Kr from 'd3-format';
9
- import * as Yr from 'd3-time-format';
6
+ import * as oo from 'd3-array';
7
+ import * as no from 'd3-collection';
8
+ import * as so from 'd3-format';
9
+ import * as ao from 'd3-time-format';
10
10
  import { formatAbbreviate } from 'd3plus-format';
11
11
  import { date } from 'd3plus-axis';
12
12
  import { strip, titleCase } from 'd3plus-text';
13
- import Xt from 'axios-retry';
14
- import ko from 'yn';
13
+ import sr from 'axios-retry';
14
+ import Fo from 'yn';
15
15
  import { format } from 'pretty-format';
16
- import Uo from 'toposort';
16
+ import Jo from 'toposort';
17
17
  import { csvParse } from 'd3-dsv';
18
- import Qo from 'next/config';
18
+ import ln from 'next/config';
19
19
  import { notifications } from '@mantine/notifications';
20
20
  import { createContext } from 'react';
21
21
  import { useDispatch, useSelector } from 'react-redux';
22
22
  import 'react/jsx-runtime';
23
23
  import '@mantine/core';
24
24
 
25
- var Nr=Object.defineProperty;var Dr=(e,t)=>{for(var r in t)Nr(e,r,{get:t[r],enumerable:!0});};function H(e,t){return e.request(t).then(r=>{let{status:o,data:n}=r;return "error"in n?{ok:!1,status:o,error:n.error}:{ok:!0,status:o,data:n.data}},r=>{if("isAxiosError"in r){let{status:o,data:n}=r.response||{status:500};return {ok:!1,status:o,error:n?.error??r.message}}return {ok:!1,status:500,error:r.message}})}function _(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>H(e,{...o,method:"GET",params:r?r(n):n})}function B(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>H(e,{...o,method:"POST",data:r?r(n):n})}function ee(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>H(e,{...o,method:"DELETE",params:r?r(n):n})}function pe(e,t){return r=>H(e,{method:"POST",url:`images/save/${t}`,params:{prompt:r.prompt,provider:t}})}function ve(e,t){return r=>H(e,{method:"GET",url:`images/search/${t}`,params:{prompt:r.prompt,page:r.page,provider:t}})}function It(e,t){return ()=>H(e,{method:"GET",url:`list/icons/${t}`,params:{provider:t}})}function _t(e,t){return r=>H(e,{method:"GET",url:`read/icons/${t}/icon.svg`,params:{name:r.name}})}var de=e=>({id:e}),Fr=e=>{if(e.mode==="slugs"){let t=e.slugs.map(r=>[r.variantSlug,r.memberSlug].join("/")).join(",");return {...e,slugs:t}}return ["related","whole"].includes(e.mode)?{...e}:{...e,[e.mode]:e[e.mode].join(",")}};function xe(e){let t=je.create({baseURL:e});return {createBulkBlock:B(t,"create/bulk/block"),createBlock:B(t,"create/block"),createDimension:B(t,"create/dimension"),createFormatter:B(t,"create/formatter"),createReport:B(t,"create/report"),createSection:B(t,"create/section"),createVariant:B(t,"create/variant"),deleteBlock:ee(t,"delete/block",de),deleteDimension:ee(t,"delete/dimension",de),deleteFormatter:ee(t,"delete/formatter",de),deleteReport:ee(t,"delete/report",de),deleteSection:ee(t,"delete/section",de),deleteVariant:ee(t,"delete/variant",de),readBlock:_(t,"read/block"),readDimension:_(t,"read/dimension"),readFormatter:_(t,"read/formatter"),readReport:_(t,"read/report"),readSection:_(t,"read/section"),readVariant:_(t,"read/variant"),updateBulkBlock:B(t,"update/bulk/block"),updateBlock:B(t,"update/block"),updateDimension:B(t,"update/dimension"),updateFormatter:B(t,"update/formatter"),updateReport:B(t,"update/report"),updateSection:B(t,"update/section"),updateVariant:B(t,"update/variant"),searchReport:_(t,"search/reports"),validateVariantSlug:_(t,"validate/variant"),readMember:_(t,"read/members",Fr),readMemberImage:_(t,{url:"member/image",responseType:"blob"}),searchMember:_(t,"search/members"),updateMember:_(t,"update/members"),imageLocalSearch:ve(t,"local"),imageLocalSave:pe(t,"local"),imageFlickrSearch:ve(t,"flickr"),imageFlickrSave:pe(t,"flickr"),imageUnsplashSearch:ve(t,"unsplash"),imageUnsplashSave:pe(t,"unsplash"),imageUploadSave:pe(t,"upload"),imageAdobeSearch:ve(t,"adobe"),imageAdobeSave:pe(t,"adobe"),readMetadata:_(t,"read/metadata"),regenerateSearch:B(t,"search/regenerate"),urlProxy:_(t,"url/proxy"),searchRole:_(t,"auth/search/roles"),searchUser:_(t,"auth/search/users"),readUser:_(t,"auth/read/user"),updateUser:B(t,"auth/update/user"),updateMyData:B(t,"auth/update/me"),revalidateReport:_(t,"revalidate/report"),revalidateUrl:_(t,"revalidate/url"),readPrivateBlocks:B(t,"read/blocks/private"),listTablerIcons:It(t,"tabler"),readTablerIcon:_t(t,"tabler")}}function qr(e,t){return +(e<t)-+(e>t)}function we(e,t,r="ordering"){return qr(t[r],e[r])}function Je(e){let t=1+76.18009173/e-86.50532033/(e+1)+24.01409822/(e+2)-1.231739516/(e+3)+.00120858003/(e+4)-536382e-11/(e+5);return (e-.5)*Math.log(e+4.5)-(e+4.5)+Math.log(t*2.50662827465)}function Bt(e,t,r){let o=0,n=1,s=1,a=1,i=0,c=0,u;for(;Math.abs((s-c)/s)>1e-5;)c=s,u=-(t+i)*(t+r+i)*e/(t+2*i)/(t+2*i+1),o=s+u*o,n=a+u*n,i+=1,u=i*(r-i)*e/(t+2*i-1)/(t+2*i),s=o+u*s,a=n+u*a,o/=a,n/=a,s/=a,a=1;return s/t}function $r(e,t,r){let o,n;if(e<0)n=0;else if(e>=t)n=1;else {e=Math.floor(e);let s=r,a=e+1,i=t-e,c=a+i,u=Math.exp(Je(c)-Je(i)-Je(a)+a*Math.log(s)+i*Math.log(1-s));s<(a+1)/(c+2)?o=u*Bt(s,a,i):o=1-u*Bt(1-s,i,a),n=1-o;}return Math.round(n*1e5)/1e5}function Vr(e){return {.99999:15.137,.99:6.635,.95:3.841,.9:2.706}[e]}function ke(e,t,r,o){let n=t/(1-t),s=0,a=1,i=0,c=0;for(;s<=e;)c+=a,s>=r&s<=o&&(i+=a),c>1e30&&(i/=1e30,c/=1e30,a/=1e30),s+=1,a=a*n*(e+1-s)/s;return i/c}function zr(e,t,r){let o=e/t,s=(100-r*100)/2,a,i;if(e===0)a=0;else {let c=o/2,u=0,p=o,l=s/100;for(;p-u>1e-5;)ke(t,c,e,e)*.5+ke(t,c,e+1,t)>l?(p=c,c=(u+c)/2):(u=c,c=(p+c)/2);a=c;}if(e===t)i=0;else {let c=(1+o)/2,u=o,p=1,l=s/100;for(;p-u>1e-5;)ke(t,c,e,e)*.5+ke(t,c,0,e-1)<l?(p=c,c=(u+c)/2):(u=c,c=(p+c)/2);i=c;}return {lci:a,uci:i}}function jr(e,t){let r=e,o=t,n=r,s=o,a=95,i=.5,c=.5,p=(100-a)/2/100,l=n;for(;c>1e-5;)c/=2,Me((1+l)*i/(1-i),l+1,1e10)+.5*Me((1+l)*i/(1-i),l,l)>p?i-=c:i+=c;let f=(1+l)*i/(1-i)/s;for(i=.5,c=.5,p=(100-a)/2/100;c>1e-5;)c/=2,Me((1+l)*i/(1-i),0,l-1)+.5*Me((1+l)*i/(1-i),l,l)<p?i-=c:i+=c;let T=(1+l)*i/(1-i)/s;return {lci:f,uci:T}}function Me(e,t,r){let o=1,n=0,s=0,a=0;for(;a<e||o>n*1e-10;)n+=o,a>=t&a<=r&&(s+=o),n>1e30&&(s/=1e30,n/=1e30,o/=1e30),a+=1,o=o*e/a;return s/n}var wt={binomialCdf:$r,binP:ke,computeMidP:zr,criticalValue:Vr,smr:jr};var fe={d3:{...Hr,...Gr,...Kr,...Yr},d3plus:{assign:assign,closest:closest,date:date,formatAbbreviate:formatAbbreviate,merge:merge,strip:strip,titleCase:titleCase},stats:wt};var Y=()=>{let e=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",t=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[e];return t.includes(e)||t.push(e),{localeDefault:e,locales:t}};Y();var Ce=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});Ce.define({consumers:[Ce],inputs:[Ce]});var Mt=new schema.Entity("variant"),Nt=new schema.Entity("dimension",{variants:[Mt]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),Dt=new schema.Entity("section",{blocks:[Ce]}),oo=new schema.Entity("report",{dimensions:[Nt],sections:[Dt]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(we):[]}}}),no=new schema.Entity("formatter"),so={report:oo,section:Dt,block:Ce,dimension:Nt,variant:Mt,formatter:no};function Ne(e,t){let r=so[e];if(!r)throw new Error(`Invalid entity type: ${e}`);let{entities:o}=normalize(t,[r]);return {report:me(o,"report"),dimension:me(o,"dimension"),section:me(o,"section"),block:me(o,"block"),variant:me(o,"variant"),formatter:me(o,"formatter")}}function me(e,t){return e.hasOwnProperty(t)?e[t]:{}}var Ut=(e,t=void 0)=>{let{sid:r,bid:o,previews:n=[],query:s={}}=t||{},a,i,c={};return r?(a=r,c.activeSection=a):a=e.activeSection,n.length>0?(i=n,c.previews=i.filter(Boolean)):i=e.previews,{parsedParams:{sid:a,bid:o,previews:i,query:s},statusPayload:c}};var co={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}}},X=createSlice({name:"records",initialState:co,reducers:{set:(e,t)=>{let r=t.payload;return {entities:Pe(e.entities,r.entities||{}),requests:Pe(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=Ne(r.type,o),s=Pe(e.entities,n);if(e.entities=s,r.type==="report"){let a=r.data;e.reports?e.reports.indexOf(a.id)===-1&&(e.reports=[...e.reports,a.id]):e.reports=[a.id];}else if(r.type==="dimension"){let a=r.data;e.entities.report[a.report_id].dimensions.push(a.id),e.entities.report[a.report_id].dimensions=De(s.report[a.report_id].dimensions,s.dimension);}else if(r.type==="variant"){let a=r.data;e.entities.dimension[a.dimension_id].variants.push(a.id);}else if(r.type==="section"&&!Array.isArray(r.data)){let a=r.data;e.entities.report[a.report_id].sections.push(a.id),e.entities.report[a.report_id].sections=De(s.report[a.report_id].sections,s.section);}else if(r.type==="block")if(Array.isArray(r.data)){let a=r.data,i=a[0],c=a.map(u=>u.id);e.entities.section[i.section_id].blocks.concat(c);}else {let a=r.data;e.entities.section[a.section_id].blocks.push(a.id);}}},setReadRequest(e,t){let r=t.payload;if(r.type!=="report"&&(e.requests[r.type][r.key]=r),r.status==="SUCCESS"){let o=Ne(r.type,r.data),n=Pe(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=Ne(r.type,o),s,a,i;if(r.type==="block"&&!Array.isArray(r.data)){let u=e.entities.block[r.data.id].inputs,p=n.block[r.data.id].inputs;s=u.length!==p.length,s&&(i=u.length>p.length,a=i?u.filter(l=>!p.includes(l))[0]:p.filter(l=>!u.includes(l))[0]),Object.values(n.block).forEach(l=>{l.block_input&&delete n.block[l.id];});}let c=Pe(e.entities,n);if(e.entities=c,r.type==="dimension"){let u=r.data;e.entities.report[u.report_id].dimensions=De(c.report[u.report_id].dimensions,c.dimension);}else if(r.type==="section"&&!Array.isArray(r.data)){let u=r.data;e.entities.report[u.report_id].sections=De(c.report[u.report_id].sections,c.section);}else if(r.type==="block"&&!Array.isArray(r.data)){let u=r.data;s&&(i?e.entities.block[a].consumers=e.entities.block[a].consumers.filter(p=>p!==u.id):e.entities.block[a].consumers.push(u.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:s}=r.data;if(delete e.entities[r.type][o],s&&n!=null){let a=`${r.type}s`;uo(e.entities[s][n][a],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 Pe(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function De(e,t){return e.map(n=>t[n]).sort(we).map(n=>n.id)}function uo(e,t){let r=e.indexOf(t);r>-1&&e.splice(r,1);}var te=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",Ue=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[te];Ue.includes(te)||Ue.push(te);var fo={localeDefault:te,locales:Ue,currentLocale:te,preferredLocale:te,showToolbar:!1,activeSection:null,previews:[],query:{},sectionState:{},activeEntity:{type:null,id:null},sidebarStatus:{tools:!0,settings:!1,reportEditor:!1},isCMS:!1},Fe=createSlice({name:"status",initialState:fo,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=Fe.actions;var Ro={attributes:{},variables:{},status:{}},$e=createSlice({name:"variables",initialState:Ro,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}})}}),Ft=$e.actions;var qt=e=>configureStore({reducer:{[X.name]:X.reducer,[Fe.name]:Fe.reducer,[$e.name]:$e.reducer},middleware(t){return t({thunk:{extraArgument:xe("/api/cms/")}})}}),$t=createWrapper(qt);var We={};Dr(We,{addBlockToState:()=>wn,cloneEntity:()=>Sr,createEntity:()=>hr,deleteEntity:()=>Tr,deleteQueryParam:()=>vn,readEntity:()=>_e,readMember:()=>Pr,readMetadata:()=>kn,readPrivateBlocks:()=>Mn,readUser:()=>On,recalculateVariables:()=>Or,removeBlocksFromState:()=>Bn,reportSearch:()=>Sn,resetSectionState:()=>Cr,revalidateReport:()=>Dn,revalidateUrl:()=>Nn,searchMember:()=>An,searchRegenerate:()=>bn,searchRole:()=>Pn,searchUser:()=>Ln,setCurrentLocale:()=>hn,setPreferredLocale:()=>En,setPreviews:()=>gn,setQueryParam:()=>xn,setSectionState:()=>kr,setStatus:()=>xr,updateEntity:()=>Er,updateMyData:()=>_n,updateUser:()=>In,urlProxy:()=>Cn,variantValidateSlug:()=>Tn});var{localeDefault:So}=Y();function j(e){return {variables:e.variables||{},query:e.query||{},locale:e.locale||So}}var oe={SINGLE:"single",MULTI:"multi"};var vo={IMAGE:"image",PARAGRAPH:"paragraph",SELECTOR:"selector",STAT:"stat",SUBTITLE:"subtitle",TITLE:"title",NAV:"nav",RESET_BUTTON:"reset_button",COMPARISON_BUTTON:"comparison_button",TABLE:"table",BUTTON:"button",MULTIHIERARCHY_SELECTOR:"multihierarchy_selector",FALLBACK:"fallback"},et={GENERATOR:"generator",RELATED:"related",VIZ:"visualization"},tt="logic",v={...vo,...et};var Po=ko(process.env.REPORTS_LOGGING),ne=Lo;function Lo(e,t,r,o,n=void 0,s){let a={},i=[],{locale:c}=j(s);try{if(t){let u=new Proxy(console,{get(l,f){return Oo(f,"log","debug","info","warn","error")?(...E)=>{i.push(`${f} ${Date.now()} - ${E.map(T=>format(T)).join(" ")}`),Po&&l[f](...E);}:l[f]}}),p;return n?p=new Function(e,"console","libs","formatters","locale","variables",r)(t,u,fe,o,c,n):p=new Function(e,"console","libs","formatters","locale",r)(t,u,fe,o,c),typeof p=="object"&&Object.keys(p).length>0&&Object.assign(a,p),{vars:a,error:null,log:i,output:p}}return {vars:a,error:"Invalid API Link",log:i}}catch(u){return {vars:a,error:u.message,log:i}}}function Oo(e,...t){return t.includes(e)}function rt(e){return e.reduce((t,r,o)=>(o?o===e.length-1&&o===1?t+=` and ${r}`:o===e.length-1?t+=`, and ${r}`:t+=`, ${r}`:t+=r,t),"")}var Re=Io;function Io(e,t,r,o=!1){let{variables:n}=j(r);if(!e)return e;let s=/([A-z0-9]*)\{\{([^\}]+)\}\}/g;return e.replace(s,(i,c,u)=>{let p=f=>f;if(c){let f=c.replace(/^\w/g,E=>E.toLowerCase());f in t?p=t[f]:p=E=>`${c}${E}`;}let l=Array.isArray(n[u])?rt(n[u]):n[u];if(l===void 0)return o?i:"N/A";try{return p(l,fe,t)}catch(f){return console.error(`Error using formatter ${p.name}
26
- `,`Error message: ${f.message}`),"N/A"}})}var ot=(e,t,r)=>{let{variables:o}=r,n=a=>a.allowed==="never"?!1:!a.allowed||a.allowed==="always"||o[a.allowed],s={...e};return Object.keys(s).forEach(a=>{typeof s[a]=="string"?s[a]=Re(s[a],t,r):Array.isArray(s[a])?s[a]=s[a].filter(n).map(i=>typeof i=="object"?ot(i,t,r):typeof i=="string"?Re(i,t,r):i):typeof s[a]=="object"&&s[a]!==null&&!(s[a]instanceof Date)&&(s[a]=ot(s[a],t,r));}),s},ze=ot;var Ht=e=>Array.isArray(e)?e.map(t=>typeof t=="string"?{allowed:"always",label:t,id:t}:{allowed:"always",label:t.id,...t}):[];var nt=(e,t,r)=>{if(!r)return !1;if(e===oe.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(s=>s.id).includes(n))};function st(e,t,r,o,n=!1){let{variables:s}=j(o),a=ze({logic:t},r,o).logic,i=ne("variables",s,a,r,void 0,o),{vars:c,log:u,error:p}=i,l=c.type||oe.SINGLE,f=c.component||"Selector",E=c.hideLabel||"false",T=c.resetSectionVars||"false",b=c.name||"Unlabeled Selector",d=Ht(c.options||[]),x=R=>l===oe.MULTI&&!Array.isArray(R)?[R]:R,A=c.defaultValue,P;if(A&&(A=x(A),nt(l,A,d)&&(P=A)),!P){let R=d&&d[0]&&d[0].id||d[0]||"";P=x(R);}if(n&&typeof window<"u"){let R=`selector${e}id`,L=new URLSearchParams(window.location.search),C=Object.fromEntries(L)[R];C&&!nt(l,C,d)&&C!==void 0&&(L.delete(R),window.history.replaceState(null,null,`?${L.toString()}`));}return {config:{name:b,type:l,options:d,defaultValue:P,component:f,hideLabel:E,resetSectionVars:T},log:u,error:p}}function at(e,t,r){if(!e)return !1;let o=Array.isArray(r)?r:r.split(",");return Array.isArray(o)&&o.every(n=>e.map(s=>`${s[`${t} ID`]}`).includes(n))}function it(e,t,r,o,n=!1){let{variables:s}=j(o),a=ze({logic:t},r,o).logic,i=ne("variables",s,a,r,void 0,o),{vars:c,log:u,error:p}=i;if(n&&typeof window<"u"){let f=`multihierarchySelector${e}-value`,E=`multihierarchySelector${e}-type`,T=new URLSearchParams(window.location.search),b=Object.fromEntries(T),d=b[f],x=b[E];d&&d!==void 0&&x&&x!==void 0&&!at(c.data,x,d)&&(T.delete(f),T.delete(E),window.history.replaceState(null,null,`?${T.toString()}`));}return {config:c,log:u,error:p}}var _o=(e,t,r)=>{let o=`selector${e}id`,n=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(o),s=new URLSearchParams(t).get(o),a=n||s;if(r.type===oe.MULTI){let u=a?a.split(","):r.defaultValue,p=r.options.filter(l=>u.includes(l.id));return {[`selector${e}id`]:u,[`selector${e}label`]:(p||[]).map(l=>l.label)}}let i=a&&r.options.find(u=>u.id===a)?a:r.defaultValue,c=r.options.find(u=>u.id===i);return {[`selector${e}id`]:i,[`selector${e}label`]:c&&c.label||void 0}},Gt=_o;var Bo=(e,t,r)=>{let o=`multihierarchySelector${e}-value`,n=`multihierarchySelector${e}-type`,s=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(o),a=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(n),i=new URLSearchParams(t).get(o),c=new URLSearchParams(t).get(n),u=s||i,p=a||c,l=u?u.split(","):r.defaultValue||[],f=p||r.defaultValueType||"",E=r.data?.filter(T=>l.includes(`${T[`${f} ID`]}`))||[];return {[`multihierarchySelector${e}id`]:l,[`multihierarchySelector${e}label`]:[...new Set((E||[]).map(T=>T[f]))],[`multihierarchySelector${e}type`]:f}},Kt=Bo;var{localeDefault:Yt,locales:wo}=Y(),Mo=Object.values(et),No=(e,t=Yt)=>e&&Mo.includes(e.type)?{locale:tt,locales:[tt]}:{locale:t,locales:wo},Wt=(e,t=Yt)=>{if(!e)return {};let{locale:r}=No(e,t);return e.contentByLocale?.[r]?.content};function Do(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(s=>o.includes(s)))).map(n=>[n.id,n]))}var Qt=Do;var Zt=(e,t)=>t&&typeof t=="string"?t.split(".").reduce((r,o)=>r[o],e):e;var Jt="|||";var Le=ko(process.env.NEXT_PUBLIC_REPORTS_DEBUG),$o=process.env.REPORTS_ORIGIN||"";Xt(je,{retries:3,retryDelay:Xt.exponentialDelay,onRetry:(e,t,r)=>{console.log("Generator request failed. Retrying... Count: ",e),console.log("URL: ",r.url),console.log(t.message);}});je.interceptors.request.use(e=>({...e,requestStart:Date.now()}));je.interceptors.response.use(e=>({...e,requestDuration:new Date().getTime()-e.config.requestStart}),e=>Promise.reject(e));var Vo=(e,t,r)=>{let o=Re(e,t,r);return o.startsWith("http")||(o=`${$o}${o.startsWith("/")?"":"/"}${o}`),o},{urlProxy:zo}=xe("/api/cms");function ut(e){return e.ok!==void 0}function ct(e){this.message=e,this.name="ApiFetchException";}var er=process.env.NEXT_PUBLIC_REPORTS_API_FETCH_TIMEOUT||0;async function jo(e,t,r="en",o){let n=Date.now(),s=e,a,c=new URL(e).searchParams;if(c.has("bespoke_slugs")){let l=new RegExp(`[?&]bespoke_slugs=${c.get("bespoke_slugs")}`,"g");s=s.replace(l,"");}let u=o?o.settings:{},p=!!(u&&u.useProxy&&u.useProxy==="true");if(typeof window=="object"&&p){let l=await zo({url:s,timeout:er});if(l.ok===!0)a=l.data;else throw new ct(l?.error)}else try{let l=await je({url:s,timeout:er});if(l.status===200)l.headers["content-type"]==="text/csv"?a=csvParse(l.data):a=l.data;else throw new ct("No response")}catch(l){throw new ct(l.message)}if(c.has("bespoke_slugs")){let l=c.get("bespoke_slugs");if(l){let f=l.split(",");if(f.length===3){let[E,T,b]=f,d=Zt(a,b);if(d&&Array.isArray(d)){let x=Array.from(new Set(d.map(h=>`${h[T]}`).filter(h=>!["","undefined"].includes(h)))),A=x.join("").length>2e3,P=await t({mode:A?"whole":"ids",ids:A?void 0:x,all:!1,locale:r,variant:[parseInt(E,10)],output:"lite",limit:x.length+1}).then(h=>{let R=[];return ut(h)?h.ok&&(R=h.data.results):R=h.results,R&&Array.isArray(R)?R:[]}).catch(h=>(console.error(`Error hydrating slugs for Variant: ${E}, Key: ${T}, Accessor: ${b}`),console.error(` Url ${e}`),o&&console.error(` From Section ${o.section_id} and Block ${o.id}`),console.error(h),[]));if(P){let h=Object.fromEntries(P.map(R=>[R.id,`/${R.variant_slug}/${R.slug}`]));d.map(R=>(R.bespoke_slug=h[R[T]]?h[R[T]]:null,R));}}}}}return {data:a,requestDuration:Date.now()-n}}function Ho(e){this.name="BlockException",this.message=e;}async function Go(e,t,r,o){let{locale:n,variables:s,query:a}=j(r),i=Yo(e,r,s,t),c=null,u=e.contentByLocale?.logic?.content?.api,p=null,l=null,f=null;if(!i)return {outputVariables:{},renderVariables:{},status:{allowed:!1,hiddenByCascade:e.id}};if(e.type===v.FALLBACK)return {outputVariables:{},renderVariables:{},status:{allowed:i,hiddenByCascade:e.id}};if(u){f=Vo(u,t,r);let h=f.split(Jt).filter(S=>S!==""),R=[];for(let S=0;S<h.length;S++){let C=h[S];new RegExp("^(?:[a-z+]+:)?//","i").test(f)||(C=`${process.env.NEXT_PUBLIC_REPORTS_BASE_URL}/${C}`.replace(/([^:]\/)\/+/g,"$1")),R.push(jo(C,o,n,e).catch(I=>{throw new Ho(` Excecution of ${e.type}-${e.id} in section ${e.section_id} in report ${s.report_name} (${s.report_id}) failed.
27
- Error fetching ${C}.
28
- Message: ${I.message}.
29
- `)}));}let L=await Promise.all(R).catch(S=>S.message);if(typeof L=="string"&&L)return {outputVariables:{},renderVariables:{},status:{error:L}};c=L.length===1?L[0].data:L.map(S=>S.data),l=L.reduce((S,C)=>S+JSON.stringify(C.data).length/1024,0),p=Math.max(...L.map(S=>S.requestDuration));}if(e.type===v.SELECTOR){let{config:h,log:R,error:L}=st(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:Gt(e.id,a,h),renderVariables:h,status:{log:R,error:L,allowed:i}}}if(e.type===v.MULTIHIERARCHY_SELECTOR){let{config:h,log:R,error:L}=it(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:Kt(e.id,a,h),renderVariables:h,status:{log:R,error:L,allowed:i}}}if(e.type===v.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:i}};if(e.type===v.RELATED){let h=e.contentByLocale?.logic?.content?.simple?.compare||"variant",R=e.contentByLocale?.logic?.content?.simple?.limit||4,L=Object.keys(s).filter(g=>g.startsWith("report_id")).map(g=>s[g]),S=Object.keys(s).filter(g=>g.startsWith("dimension_id")).map(g=>s[g]),C=Object.keys(s).filter(g=>g.startsWith("variant_id")).map(g=>s[g]),D=Object.keys(s).filter(g=>g.startsWith("id")).map(g=>s[g]);if(!D.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:!1}};let M=(await o({mode:"ids",locale:n,ids:D,output:"lite"}).then(g=>{let N=[];return ut(g)?g.ok&&(N=g.data.results):N=g.results,N&&Array.isArray(N)?N:[]}).catch(g=>(console.log("Error getting related members",g),[]))).map(g=>g.content_id),Q={mode:"related",locale:n,related:R??4,current_ids:M,output:"full"};h&&(h==="report"?Q.report_ids=L:h==="dimension"?Q.dimension_ids=S:Q.variant_ids=C);let F=await o(Q).then(g=>{let N=[];return ut(g)?g.ok&&(N=g.data.results):N=g.results,N&&Array.isArray(N)?N:[]}).catch(g=>(console.log("Error getting related members",g),[]));return {outputVariables:{related_reports:F},renderVariables:{},status:{log:[],allowed:F.length>0}}}let{logic:E}=Wt(e,n),T=Re(E,t,r),b=ne("resp",c||{},T,t,s,r),{vars:d,error:x,log:A}=b;if(typeof d!="object")return {outputVariables:{},renderVariables:{},status:{error:"Configuration did not return an object",log:A,duration:p,responseSize:l,resp:c,api:f,allowed:i}};let P=Object.keys(d).reduce((h,R)=>({...h,[`${e.type}${e.id}${R}`]:d[R]}),{});return {renderVariables:d,outputVariables:e.type===v.GENERATOR?d:P,status:{log:A,error:x,duration:p,responseSize:l,resp:c,api:f,allowed:i}}}function Ko(e,t,r,o,n,s,a){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(u=>t[u].section_id===t[r].section_id||!n).forEach(u=>lt(u,t,o,!1,s,n,a));}})}var lt=(e,t,r=[],o=!0,n=!0,s=!0,a=[])=>{if(a.includes(e))return [];a.push(e);let i=t[e];return i.inputs.length&&o&&i.inputs.forEach(c=>{let u=`${c}-${e}`;r.includes(u)||r.push(u),i.inputs.forEach(p=>lt(p,t,r,o,!1,s,a));}),i.consumers.length&&n&&Ko(i,t,e,r,s,n,a),r},Yo=(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 s=j(t),{error:a,output:i}=ne("variables",r,e.settings.allowedLogic||"return false;",o,void 0,s);a||(n=!!i);}return n},tr=async(e,t,r,o,n,s={},a,i="section")=>{if(!r&&!t)return {...s};let c={...s.variables??{}},u={...s.status??{}},p=j(n),l=p.variables,f=r?{[r]:e[r]}:(t??[]).reduce((S,{id:C})=>({...S,...Qt(C,e)}),{});Le&&console.log("%crunConsumers: running root blocks","color:purple",Object.keys(f));let E=i==="section",T=Object.keys(f).reduce((S,C)=>{let D=new Date,I=lt(Number(C),e,[],!r,!0,E).map(F=>F.split("-")),Q=(new Date().getTime()-D.getTime())/1e3;return Le&&console.log(`%cResolved dependencies for ${C} (${Q.toFixed(2)}s)`,"color:blue"),[...S,...I]},[]),b=new Date,d=Object.keys(f).reduce((S,C)=>S.includes(C)?[...S]:[C,...S],Uo(T)),A=(new Date().getTime()-b.getTime())/1e3;Le&&console.log(`%cResolved DAG (${A.toFixed(2)}s): `,"color:green",d);async function P(S,C){let D=new Map;for(let I of S){let M=C[I],F=Promise.all(M.inputs.filter(g=>S.includes(String(g))).map(g=>D.get(Number(g)))).then(async()=>{let g=M.inputs.reduce(($,U)=>({...$,...c[U]}),l),N=M.inputs.find($=>(M.settings?.ignoreCascade?M.settings?.ignoreCascade:[]).includes($)?!1:!u[$].allowed||u[$].hiddenByCascade);if(N){u[I]={allowed:!1,hiddenByCascade:u[N].hiddenByCascade||N},c[I]={};return}let Ot=new Date,q=await Go(M,o,{...p,variables:g,locale:g.locale},a).then(({outputVariables:$,status:U})=>{if(U.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${I}, Section ${M.section_id}) failed with message: ${U.error}. `);u[I]={allowed:!1,error:U.error},c[I]={};}(M.consumers.length>0||[v.GENERATOR,v.RELATED].includes(M.type))&&U.allowed&&Object.keys($).length>0?c[I]=$:c[I]={},i==="report"?(u[I]={allowed:U.allowed},M.type===v.GENERATOR&&U.api&&(u[I].api=U.api)):u[I]=U;}),Z=(new Date().getTime()-Ot.getTime())/1e3;return Le&&console.log(`%cBlock ${M.id} resolved in ${Z.toFixed(3)}s`,Z>500?"color:red":"color:green"),q});D.set(Number(I),F);}await Promise.all(Array.from(D.values()));}let h=new Date;await P(d,e);let L=(new Date().getTime()-h.getTime())/1e3;return Le&&console.log(`%cResolved Variables (${L.toFixed(2)}s): `,"color:green"),{variables:{...s.variables??{},...c},status:{...s.status??{},...u}}};function Wo(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(s=>{t[`attr_${s}${n}`]=r.attributes[s];}),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 rr=Wo;function Zo(){let{publicRuntimeConfig:e}=Qo(),t=e.bespoke_report_env_vars||{};return {...Object.keys(t).reduce((r,o)=>(r[`ENV_${o}`]=t[o]||"N/A",r),{})}}var or=Zo;function se(e,t,r){if(t==="createBulk"||t==="updateBulk"){let n=`${t}${nr(r)}`;return e[n]}let o=`${t}${nr(r)}`;return e[o]}function nr(e){return e[0].toUpperCase()+e.slice(1)}function w(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=sn[e],s=n?typeof n=="function"?n.apply(null,r):n:"unknown error nr: "+e;throw Error("[Immer] "+s)}throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map(function(a){return "'"+a+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function ge(e){return !!e&&!!e[V]}function ie(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)===an}(e)||Array.isArray(e)||!!e[dr]||!!(!((t=e.constructor)===null||t===void 0)&&t[dr])||Tt(e)||St(e))}function Ie(e,t,r){r===void 0&&(r=!1),Ee(e)===0?(r?Object.keys:kt)(e).forEach(function(o){r&&typeof o=="symbol"||t(o,e[o],e);}):e.forEach(function(o,n){return t(n,o,e)});}function Ee(e){var t=e[V];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:Tt(e)?2:St(e)?3:0}function yt(e,t){return Ee(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Jo(e,t){return Ee(e)===2?e.get(t):e[t]}function fr(e,t,r){var o=Ee(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r;}function Xo(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function Tt(e){return on&&e instanceof Map}function St(e){return nn&&e instanceof Set}function ae(e){return e.o||e.t}function bt(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=cn(e);delete t[V];for(var r=kt(t),o=0;o<r.length;o++){var n=r[o],s=t[n];s.writable===!1&&(s.writable=!0,s.configurable=!0),(s.get||s.set)&&(t[n]={configurable:!0,writable:!0,enumerable:s.enumerable,value:e[n]});}return Object.create(Object.getPrototypeOf(e),t)}function At(e,t){return t===void 0&&(t=!1),vt(e)||ge(e)||!ie(e)||(Ee(e)>1&&(e.set=e.add=e.clear=e.delete=en),Object.freeze(e),t&&Ie(e,function(r,o){return At(o,!0)},!0)),e}function en(){w(2);}function vt(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function W(e){var t=un[e];return t||w(18,e),t}function sr(){return process.env.NODE_ENV==="production"||he||w(0),he}function pt(e,t){t&&(W("Patches"),e.u=[],e.s=[],e.v=t);}function He(e){Rt(e),e.p.forEach(tn),e.p=null;}function Rt(e){e===he&&(he=e.l);}function ar(e){return he={p:[],l:he,h:e,m:!0,_:0}}function tn(e){var t=e[V];t.i===0||t.i===1?t.j():t.g=!0;}function dt(e,t){t._=t.p.length;var r=t.p[0],o=e!==void 0&&e!==r;return t.h.O||W("ES5").S(t,e,o),o?(r[V].P&&(He(t),w(4)),ie(e)&&(e=Ge(t,e),t.l||Ke(t,e)),t.u&&W("Patches").M(r[V].t,e,t.u,t.s)):e=Ge(t,r,[]),He(t),t.u&&t.v(t.u,t.s),e!==mr?e:void 0}function Ge(e,t,r){if(vt(t))return t;var o=t[V];if(!o)return Ie(t,function(i,c){return ir(e,o,t,i,c,r)},!0),t;if(o.A!==e)return t;if(!o.P)return Ke(e,o.t,!0),o.t;if(!o.I){o.I=!0,o.A._--;var n=o.i===4||o.i===5?o.o=bt(o.k):o.o,s=n,a=!1;o.i===3&&(s=new Set(n),n.clear(),a=!0),Ie(s,function(i,c){return ir(e,o,n,i,c,r,a)}),Ke(e,n,!1),r&&e.u&&W("Patches").N(o,r,e.u,e.s);}return o.o}function ir(e,t,r,o,n,s,a){if(process.env.NODE_ENV!=="production"&&n===r&&w(5),ge(n)){var i=Ge(e,n,s&&t&&t.i!==3&&!yt(t.R,o)?s.concat(o):void 0);if(fr(r,o,i),!ge(i))return;e.m=!1;}else a&&r.add(n);if(ie(n)&&!vt(n)){if(!e.h.D&&e._<1)return;Ge(e,n),t&&t.A.l||Ke(e,n);}}function Ke(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&At(t,r);}function ft(e,t){var r=e[V];return (r?ae(r):e)[t]}function cr(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 gt(e){e.P||(e.P=!0,e.l&&gt(e.l));}function mt(e){e.o||(e.o=bt(e.t));}function ht(e,t,r){var o=Tt(t)?W("MapSet").F(t,r):St(t)?W("MapSet").T(t,r):e.O?function(n,s){var a=Array.isArray(n),i={i:a?1:0,A:s?s.A:sr(),P:!1,I:!1,R:{},l:s,t:n,k:null,o:null,j:null,C:!1},c=i,u=Et;a&&(c=[i],u=Oe);var p=Proxy.revocable(c,u),l=p.revoke,f=p.proxy;return i.k=f,i.j=l,f}(t,r):W("ES5").J(t,r);return (r?r.A:sr()).p.push(o),o}function rn(e){return ge(e)||w(22,e),function t(r){if(!ie(r))return r;var o,n=r[V],s=Ee(r);if(n){if(!n.P&&(n.i<4||!W("ES5").K(n)))return n.t;n.I=!0,o=ur(r,s),n.I=!1;}else o=ur(r,s);return Ie(o,function(a,i){n&&Jo(n.t,a)===i||fr(o,a,t(i));}),s===3?new Set(o):o}(e)}function ur(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return bt(e)}var lr,he,xt=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",on=typeof Map<"u",nn=typeof Set<"u",pr=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",mr=xt?Symbol.for("immer-nothing"):((lr={})["immer-nothing"]=!0,lr),dr=xt?Symbol.for("immer-draftable"):"__$immer_draftable",V=xt?Symbol.for("immer-state"):"__$immer_state";var sn={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"},an=""+Object.prototype.constructor,kt=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,cn=Object.getOwnPropertyDescriptors||function(e){var t={};return kt(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r);}),t},un={},Et={get:function(e,t){if(t===V)return e;var r=ae(e);if(!yt(r,t))return function(n,s,a){var i,c=cr(s,a);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||!ie(o)?o:o===ft(e.t,t)?(mt(e),e.o[t]=ht(e.A.h,o,e)):o},has:function(e,t){return t in ae(e)},ownKeys:function(e){return Reflect.ownKeys(ae(e))},set:function(e,t,r){var o=cr(ae(e),t);if(o?.set)return o.set.call(e.k,r),!0;if(!e.P){var n=ft(ae(e),t),s=n?.[V];if(s&&s.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(Xo(r,n)&&(r!==void 0||yt(e.t,t)))return !0;mt(e),gt(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 ft(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,mt(e),gt(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=ae(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{writable:!0,configurable:e.i!==1||t!=="length",enumerable:o.enumerable,value:r[t]}},defineProperty:function(){w(11);},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){w(12);}},Oe={};Ie(Et,function(e,t){Oe[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)};}),Oe.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&w(13),Oe.set.call(this,e,t,void 0)},Oe.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&w(14),Et.set.call(this,e[0],t,r,e[0])};var ln=function(){function e(r){var o=this;this.O=pr,this.D=!0,this.produce=function(n,s,a){if(typeof n=="function"&&typeof s!="function"){var i=s;s=n;var c=o;return function(b){var d=this;b===void 0&&(b=i);for(var x=arguments.length,A=Array(x>1?x-1:0),P=1;P<x;P++)A[P-1]=arguments[P];return c.produce(b,function(h){var R;return (R=s).call.apply(R,[d,h].concat(A))})}}var u;if(typeof s!="function"&&w(6),a!==void 0&&typeof a!="function"&&w(7),ie(n)){var p=ar(o),l=ht(o,n,void 0),f=!0;try{u=s(l),f=!1;}finally{f?He(p):Rt(p);}return typeof Promise<"u"&&u instanceof Promise?u.then(function(b){return pt(p,a),dt(b,p)},function(b){throw He(p),b}):(pt(p,a),dt(u,p))}if(!n||typeof n!="object"){if((u=s(n))===void 0&&(u=n),u===mr&&(u=void 0),o.D&&At(u,!0),a){var E=[],T=[];W("Patches").M(n,u,E,T),a(E,T);}return u}w(21,n);},this.produceWithPatches=function(n,s){if(typeof n=="function")return function(u){for(var p=arguments.length,l=Array(p>1?p-1:0),f=1;f<p;f++)l[f-1]=arguments[f];return o.produceWithPatches(u,function(E){return n.apply(void 0,[E].concat(l))})};var a,i,c=o.produce(n,s,function(u,p){a=u,i=p;});return typeof Promise<"u"&&c instanceof Promise?c.then(function(u){return [u,a,i]}):[c,a,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){ie(r)||w(8),ge(r)&&(r=rn(r));var o=ar(this),n=ht(this,r,void 0);return n[V].C=!0,Rt(o),n},t.finishDraft=function(r,o){var n=r&&r[V];process.env.NODE_ENV!=="production"&&(n&&n.C||w(9),n.I&&w(10));var s=n.A;return pt(s,o),dt(void 0,s)},t.setAutoFreeze=function(r){this.D=r;},t.setUseProxies=function(r){r&&!pr&&w(20),this.O=r;},t.applyPatches=function(r,o){var n;for(n=o.length-1;n>=0;n--){var s=o[n];if(s.path.length===0&&s.op==="replace"){r=s.value;break}}n>-1&&(o=o.slice(n+1));var a=W("Patches").$;return ge(r)?a(r,o):this.produce(r,function(i){return a(i,o)})},e}(),z=new ln,pn=z.produce;z.produceWithPatches.bind(z);z.setAutoFreeze.bind(z);z.setUseProxies.bind(z);z.applyPatches.bind(z);z.createDraft.bind(z);z.finishDraft.bind(z);var Ye=pn;var G=X.actions,hr=Be({block:ce("block"),dimension:ce("dimension"),formatter:ce("formatter"),report:ce("report"),section:ce("section"),variant:ce("variant")}),_e=Be({block:ue("block"),dimension:ue("dimension"),formatter:ue("formatter"),report:ue("report"),section:ue("section"),variant:ue("variant")}),Er=Be({block:J("block"),dimension:J("dimension"),formatter:J("formatter"),report:J("report"),section:J("section"),variant:J("variant")}),Tr=Be({block:Te("block"),dimension:Te("dimension"),formatter:Te("formatter"),report:Te("report"),section:Te("section"),variant:Te("variant")}),Sr=Be({block:Rr("block"),section:Rr("section")});function Be(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 le(e,t){return (r,o)=>{let s=o().records.requests[e][t],a=!s||s.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(G.setRequest({key:t,type:e,status:a}));}}function Se(e,t,r,o){return n=>{typeof window=="object"&&notifications.show({autoClose:3e3,color:"red",id:t,message:o,title:"Error"}),n(G.setRequest({key:t,type:e,status:"FAILURE",error:{code:r,message:o}}));}}function ce(e){return t=>{let r=Pt(e,t);return (o,n,s)=>(o(le(e,r)),se(s,"create",e)(t).then(i=>(i.ok===!0?o(G.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:i.data})):o(Se(e,r,i.status,i.error)),i)))}}function mn(e){return t=>{let r=Pt(e,t[0]);return (o,n,s)=>(o(le(e,r)),se(s,"createBulk",e)(t).then(i=>(i.ok===!0?o(G.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:i.data})):o(Se(e,r,i.status,i.error)),i)))}}function yr(e,t,r){return r.replace(new RegExp(e,"g"),t)}function yn(e){return e.section_id!==void 0}function Rn(e){return e.report_id!==void 0}function Rr(e){return t=>{let{create:r}=t;return (o,n,s)=>ce(e)(r)(o,n,s).then(async i=>{if(i.ok){let{data:c}=i,{id:u}=c,{update:p}=t,l=vr(e,{id:u});if(o(le(e,`${l}`)),e==="block"&&yn(r)){let f=Ye(p,d=>{d.id=u;}),{contentByLocale:E}=f;E&&(f=Ye(f,d=>{d.id=u,d.contentByLocale=Object.keys(E).reduce((x,A)=>{let P=E?E[A]:{};return x[A]={...P,id:u},x},{});}));let b=f.inputs?.map(d=>({type:d.type,id:d.id,inputAction:{operation:"create",input:{input_id:d.id,block_id:f.id}}}));return b&&b.length>0&&gr(e)([f,...b])(o,n,s).then(()=>ue("section")({id:f.section_id,include:!0})(o,n,s).then(d=>(d.ok&&o(G.setRequest({key:l,type:e,status:"SUCCESS",data:d.data})),d))),J(e)(f)(o,n,s).then(d=>(d.ok&&o(G.setRequest({key:l,type:e,status:"SUCCESS",data:d.data})),d))}if(e==="section"&&Rn(r)){let{id:f}=c,E=Ye(p,d=>{d.id=f;}),{blocks:T}=E,b=T?.map(d=>({type:d.type,blockcol:d.blockcol,blockrow:d.blockrow,section_id:f,locales:Object.keys(d.contentByLocale).map(x=>x)}));return b&&T&&await mn("block")(b)(o,n,s).then(d=>{if(d.ok){let x=d.data,A=[],P=x.map((h,R)=>{let S={...h},C=S.id,D=T[R];D.contentByLocale&&(S.contentByLocale=Object.keys(D.contentByLocale).reduce((q,K)=>{let Z=D.contentByLocale[K];return q[K]={...Z,content:{...Z.content},id:S.id},q},{}));let{settings:I}=D,{contentByLocale:M,id:Q}=S;S.settings=I;let F={id:Q,contentByLocale:M,settings:I};return D.inputs.map(q=>q.id).reduce((q,K)=>{let Z=T.findIndex($=>$.id===K);return [...q,Z]},[]).map(q=>({...x[q],originalBlock:T[q]})).forEach(q=>{let{id:K,type:Z,originalBlock:$}=q;if(["selector","visualization"].includes(Z)){if(F.contentByLocale?.logic?.content?.api){let U=F.contentByLocale?.logic.content.api;F.contentByLocale.logic.content.api=yr(`(selector${$.id}id)`,`selector${K}id`,U);}if(F.contentByLocale?.logic?.content?.logic){let U=F.contentByLocale.logic.content.logic;F.contentByLocale.logic.content.logic=yr(`(selector${$.id}id)`,`selector${K}id`,U);}}A.push({id:K,inputAction:{operation:"create",input:{input_id:K,block_id:C}}});}),F});return gr("block")([...P,...A])(o,n,s)}}),J(e)(E)(o,n,s).then(d=>(d.ok&&o(G.setRequest({key:l,type:e,status:"SUCCESS",data:d.data})),d))}return J(e)({...p,id:c.id})(o,n,s)}})}}function ue(e){return t=>{let r=br(e,t);return (o,n,s)=>(o(le(e,r)),se(s,"read",e)(t).then(i=>(i.ok===!0?o(G.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:i.data})):o(Se(e,r,i.status,i.error)),i)))}}function J(e){return t=>{let r=Lt(e,t);return (o,n,s)=>(o(le(e,r)),se(s,"update",e)(t).then(i=>(i.ok===!0?o(G.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:i.data})):o(Se(e,r,i.status,i.error)),i)))}}function gr(e){return t=>{let r=Lt(e,t[0]);return (o,n,s)=>(o(le(e,r)),se(s,"updateBulk",e)(t).then(i=>(i.ok===!0?o(G.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:i.data})):o(Se(e,r,i.status,i.error)),i)))}}function Te(e){return t=>{let r=Ar(e,t);return (o,n,s)=>(o(le(e,r)),se(s,"delete",e)(t).then(i=>{i.ok===!0?o(G.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:i.data})):o(Se(e,r,i.status,i.error));}))}}function Pt(e,t){if(e==="variant"){let r=t;return `create(variant, [${r.dimension_id}, ${r.name}])`}return `create(${e}, [${Object.keys(t)}])`}function br(e,t={}){let r=t.id==null?null:`'${t.id}'`;return `read(${e}, ${r}, ${!!t.include})`}function Lt(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function Ar(e,t){return `delete(${e}, ${t})`}function vr(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:xr,setPreviews:gn,setSectionState:kr,resetSectionState:Cr,setCurrentLocale:hn,setPreferredLocale:En}=qe;function Tn(e,t){return async(r,o,n)=>{let s=await n.validateVariantSlug({dimension:e,slug:t});if("error"in s)throw new Error(s.error);return s.data}}function Sn(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 bn(){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 Pr(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 An(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 Lr(e,t,r,o){let n=r().status,s={...n,...o},a={...n.query,...o.query};Object.keys(a).forEach(c=>a[c]===void 0&&delete a[c]);let i={...s,query:a};t(xr(i)),n.activeSection&&t(Or(e,{query:a}));}function vn(e,t){return async(r,o)=>Lr(e,r,o,{query:{[t]:void 0}})}function xn(e,t,r){return async(o,n)=>Lr(e,o,n,{query:{[t]:r}})}function Or(e,t){return async(r,o)=>{let n=o(),{currentLocale:s}=n.status,a=n.records.entities.block,i=e.formatterFunctions[s],{parsedParams:c,statusPayload:u}=Ut(n.status,t),{sid:p,bid:l,previews:f,query:E}=c;Object.keys(u).length&&r(qe.setStatus(u));let T={...rr(f),locale:s,...or()},b={variables:T,query:E,locale:s},d=n.records.entities.section[p],x=async A=>r(Pr(A));try{let A=await tr(a,d&&[d],l,i,b,void 0,x),{variables:P,status:h}=A;r(Ft.setVariableChange({attributes:T,variables:P,status:h}));}catch(A){console.log("Error in runConsumers client side: recalculateVariables",A);}}}function kn(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 Cn(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 Pn(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function Ln(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 On(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 In({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 _n(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 Bn(e){let{removeBlocks:t}=X.actions;return async r=>{await r(t(e));}}function wn(e){let{addBlocks:t}=X.actions;return async r=>{await r(t(e));}}function Mn(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 Nn(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 Dn(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 {locales:Fn}=Y(),qn={pathSegment:"path",formatterFunctions:Fn.reduce((e,t)=>({...e,[t]:{}}),{}),profilePrefix:"path",siteProps:{}};createContext(qn);Y();var Qe=useDispatch,Ze=useSelector;
25
+ var Yr=Object.defineProperty;var Wr=(e,t)=>{for(var r in t)Yr(e,r,{get:t[r],enumerable:!0});};function Y(e,t){return e.request(t).then(r=>{let{status:o,data:n}=r;return "error"in n?{ok:!1,status:o,error:n.error}:{ok:!0,status:o,data:n.data}},r=>{if("isAxiosError"in r){let{status:o,data:n}=r.response||{status:500};return {ok:!1,status:o,error:n?.error??r.message}}return {ok:!1,status:500,error:r.message}})}function F(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>Y(e,{...o,method:"GET",params:r?r(n):n})}function q(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>Y(e,{...o,method:"POST",data:r?r(n):n})}function ne(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>Y(e,{...o,method:"DELETE",params:r?r(n):n})}function Re(e,t){return r=>Y(e,{method:"POST",url:`images/save/${t}`,params:{prompt:r.prompt,provider:t}})}function Oe(e,t){return r=>Y(e,{method:"GET",url:`images/search/${t}`,params:{prompt:r.prompt,page:r.page,provider:t}})}function Mt(e,t){return ()=>Y(e,{method:"GET",url:`list/icons/${t}`,params:{provider:t}})}function Dt(e,t){return r=>Y(e,{method:"GET",url:`read/icons/${t}/icon.svg`,params:{name:r.name}})}var ge=e=>({id:e}),Zr=e=>{if(e.mode==="slugs"){let t=e.slugs.map(r=>[r.variantSlug,r.memberSlug].join("/")).join(",");return {...e,slugs:t}}return ["related","whole"].includes(e.mode)?{...e}:{...e,[e.mode]:e[e.mode].join(",")}};function _e(e){let t=We.create({baseURL:e});return {createBulkBlock:q(t,"create/bulk/block"),createBlock:q(t,"create/block"),createDimension:q(t,"create/dimension"),createFormatter:q(t,"create/formatter"),createReport:q(t,"create/report"),createSection:q(t,"create/section"),createVariant:q(t,"create/variant"),deleteBlock:ne(t,"delete/block",ge),deleteDimension:ne(t,"delete/dimension",ge),deleteFormatter:ne(t,"delete/formatter",ge),deleteReport:ne(t,"delete/report",ge),deleteSection:ne(t,"delete/section",ge),deleteVariant:ne(t,"delete/variant",ge),readBlock:F(t,"read/block"),readDimension:F(t,"read/dimension"),readFormatter:F(t,"read/formatter"),readReport:F(t,"read/report"),readSection:F(t,"read/section"),readVariant:F(t,"read/variant"),updateBulkBlock:q(t,"update/bulk/block"),updateBlock:q(t,"update/block"),updateDimension:q(t,"update/dimension"),updateFormatter:q(t,"update/formatter"),updateReport:q(t,"update/report"),updateSection:q(t,"update/section"),updateVariant:q(t,"update/variant"),searchReport:F(t,"search/reports"),validateVariantSlug:F(t,"validate/variant"),readMember:F(t,"read/members",Zr),readMemberImage:F(t,{url:"member/image",responseType:"blob"}),searchMember:F(t,"search/members"),updateMember:F(t,"update/members"),imageLocalSearch:Oe(t,"local"),imageLocalSave:Re(t,"local"),imageFlickrSearch:Oe(t,"flickr"),imageFlickrSave:Re(t,"flickr"),imageUnsplashSearch:Oe(t,"unsplash"),imageUnsplashSave:Re(t,"unsplash"),imageUploadSave:Re(t,"upload"),imageAdobeSearch:Oe(t,"adobe"),imageAdobeSave:Re(t,"adobe"),readMetadata:F(t,"read/metadata"),regenerateSearch:q(t,"search/regenerate"),urlProxy:F(t,"url/proxy"),searchRole:F(t,"auth/search/roles"),searchUser:F(t,"auth/search/users"),readUser:F(t,"auth/read/user"),updateUser:q(t,"auth/update/user"),updateMyData:q(t,"auth/update/me"),revalidateReport:F(t,"revalidate/report"),revalidateUrl:F(t,"revalidate/url"),readPrivateBlocks:q(t,"read/blocks/private"),listTablerIcons:Mt(t,"tabler"),readTablerIcon:Dt(t,"tabler")}}function Jr(e,t){return +(e<t)-+(e>t)}function Fe(e,t,r="ordering"){return Jr(t[r],e[r])}function nt(e){let t=1+76.18009173/e-86.50532033/(e+1)+24.01409822/(e+2)-1.231739516/(e+3)+.00120858003/(e+4)-536382e-11/(e+5);return (e-.5)*Math.log(e+4.5)-(e+4.5)+Math.log(t*2.50662827465)}function Ut(e,t,r){let o=0,n=1,s=1,i=1,a=0,c=0,u;for(;Math.abs((s-c)/s)>1e-5;)c=s,u=-(t+a)*(t+r+a)*e/(t+2*a)/(t+2*a+1),o=s+u*o,n=i+u*n,a+=1,u=a*(r-a)*e/(t+2*a-1)/(t+2*a),s=o+u*s,i=n+u*i,o/=i,n/=i,s/=i,i=1;return s/t}function Xr(e,t,r){let o,n;if(e<0)n=0;else if(e>=t)n=1;else {e=Math.floor(e);let s=r,i=e+1,a=t-e,c=i+a,u=Math.exp(nt(c)-nt(a)-nt(i)+i*Math.log(s)+a*Math.log(1-s));s<(i+1)/(c+2)?o=u*Ut(s,i,a):o=1-u*Ut(1-s,a,i),n=1-o;}return Math.round(n*1e5)/1e5}function eo(e){return {.99999:15.137,.99:6.635,.95:3.841,.9:2.706}[e]}function Ie(e,t,r,o){let n=t/(1-t),s=0,i=1,a=0,c=0;for(;s<=e;)c+=i,s>=r&s<=o&&(a+=i),c>1e30&&(a/=1e30,c/=1e30,i/=1e30),s+=1,i=i*n*(e+1-s)/s;return a/c}function to(e,t,r){let o=e/t,s=(100-r*100)/2,i,a;if(e===0)i=0;else {let c=o/2,u=0,p=o,l=s/100;for(;p-u>1e-5;)Ie(t,c,e,e)*.5+Ie(t,c,e+1,t)>l?(p=c,c=(u+c)/2):(u=c,c=(p+c)/2);i=c;}if(e===t)a=0;else {let c=(1+o)/2,u=o,p=1,l=s/100;for(;p-u>1e-5;)Ie(t,c,e,e)*.5+Ie(t,c,0,e-1)<l?(p=c,c=(u+c)/2):(u=c,c=(p+c)/2);a=c;}return {lci:i,uci:a}}function ro(e,t){let r=e,o=t,n=r,s=o,i=95,a=.5,c=.5,p=(100-i)/2/100,l=n;for(;c>1e-5;)c/=2,Ve((1+l)*a/(1-a),l+1,1e10)+.5*Ve((1+l)*a/(1-a),l,l)>p?a-=c:a+=c;let d=(1+l)*a/(1-a)/s;for(a=.5,c=.5,p=(100-i)/2/100;c>1e-5;)c/=2,Ve((1+l)*a/(1-a),0,l-1)+.5*Ve((1+l)*a/(1-a),l,l)<p?a-=c:a+=c;let h=(1+l)*a/(1-a)/s;return {lci:d,uci:h}}function Ve(e,t,r){let o=1,n=0,s=0,i=0;for(;i<e||o>n*1e-10;)n+=o,i>=t&i<=r&&(s+=o),n>1e30&&(s/=1e30,n/=1e30,o/=1e30),i+=1,o=o*e/i;return s/n}var Ft={binomialCdf:Xr,binP:Ie,computeMidP:to,criticalValue:eo,smr:ro};var he={d3:{...oo,...no,...so,...ao},d3plus:{assign:assign,closest:closest,date:date,formatAbbreviate:formatAbbreviate,merge:merge,strip:strip,titleCase:titleCase},stats:Ft};var yo=()=>{let e=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",t=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[e];return t.includes(e)||t.push(e),{localeDefault:e,locales:t}},Z=yo;Z();var Be=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});Be.define({consumers:[Be],inputs:[Be]});var Vt=new schema.Entity("variant"),qt=new schema.Entity("dimension",{variants:[Vt]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),$t=new schema.Entity("section",{blocks:[Be]}),go=new schema.Entity("report",{dimensions:[qt],sections:[$t]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(Fe):[]}}}),ho=new schema.Entity("formatter"),Eo={report:go,section:$t,block:Be,dimension:qt,variant:Vt,formatter:ho};function qe(e,t){let r=Eo[e];if(!r)throw new Error(`Invalid entity type: ${e}`);let{entities:o}=normalize(t,[r]);return {report:Ee(o,"report"),dimension:Ee(o,"dimension"),section:Ee(o,"section"),block:Ee(o,"block"),variant:Ee(o,"variant"),formatter:Ee(o,"formatter")}}function Ee(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:{}}var jt=(e,t=void 0)=>{let{sid:r,bid:o,previews:n=[],query:s={}}=t||{},i,a,c={};return r?(i=r,c.activeSection=i):i=e.activeSection,n.length>0?(a=n,c.previews=a.filter(Boolean)):a=e.previews,{parsedParams:{sid:i,bid:o,previews:a,query:s},statusPayload:c}};var To={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}}},oe=createSlice({name:"records",initialState:To,reducers:{set:(e,t)=>{let r=t.payload;return {entities:we(e.entities,r.entities||{}),requests:we(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=qe(r.type,o),s=we(e.entities,n);if(e.entities=s,r.type==="report"){let i=r.data;e.reports?e.reports.indexOf(i.id)===-1&&(e.reports=[...e.reports,i.id]):e.reports=[i.id];}else if(r.type==="dimension"){let i=r.data;e.entities.report[i.report_id].dimensions.push(i.id),e.entities.report[i.report_id].dimensions=$e(s.report[i.report_id].dimensions,s.dimension);}else if(r.type==="variant"){let i=r.data;e.entities.dimension[i.dimension_id].variants.push(i.id);}else if(r.type==="section"&&!Array.isArray(r.data)){let i=r.data;e.entities.report[i.report_id].sections.push(i.id),e.entities.report[i.report_id].sections=$e(s.report[i.report_id].sections,s.section);}else if(r.type==="block")if(Array.isArray(r.data)){let i=r.data,a=i[0],c=i.map(u=>u.id);e.entities.section[a.section_id].blocks.concat(c);}else {let i=r.data;e.entities.section[i.section_id].blocks.push(i.id);}}},setReadRequest(e,t){let r=t.payload;if(r.type!=="report"&&(e.requests[r.type][r.key]=r),r.status==="SUCCESS"){let o=qe(r.type,r.data),n=we(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=qe(r.type,o),s,i,a;if(r.type==="block"&&!Array.isArray(r.data)){let u=e.entities.block[r.data.id].inputs,p=n.block[r.data.id].inputs;s=u.length!==p.length,s&&(a=u.length>p.length,i=a?u.filter(l=>!p.includes(l))[0]:p.filter(l=>!u.includes(l))[0]),Object.values(n.block).forEach(l=>{l.block_input&&delete n.block[l.id];});}let c=we(e.entities,n);if(e.entities=c,r.type==="dimension"){let u=r.data;e.entities.report[u.report_id].dimensions=$e(c.report[u.report_id].dimensions,c.dimension);}else if(r.type==="section"&&!Array.isArray(r.data)){let u=r.data;e.entities.report[u.report_id].sections=$e(c.report[u.report_id].sections,c.section);}else if(r.type==="block"&&!Array.isArray(r.data)){let u=r.data;s&&(a?e.entities.block[i].consumers=e.entities.block[i].consumers.filter(p=>p!==u.id):e.entities.block[i].consumers.push(u.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:s}=r.data;if(delete e.entities[r.type][o],s&&n!=null){let i=`${r.type}s`;Ao(e.entities[s][n][i],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 we(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function $e(e,t){return e.map(n=>t[n]).sort(Fe).map(n=>n.id)}function Ao(e,t){let r=e.indexOf(t);r>-1&&e.splice(r,1);}var se=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",je=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[se];je.includes(se)||je.push(se);var ko={localeDefault:se,locales:je,currentLocale:se,preferredLocale:se,showToolbar:!1,activeSection:null,previews:[],query:{},sectionState:{},activeEntity:{type:null,id:null},sidebarStatus:{tools:!0,settings:!1,reportEditor:!1},isCMS:!1,isRunConsumersRunning:[]},ze=createSlice({name:"status",initialState:ko,reducers:{setStatus:(e,t)=>{Object.assign(e,t.payload);},setPreviews(e,t){e.previews=t.payload;},setCurrentLocale(e,t){e.currentLocale=t.payload;},setPreferredLocale(e,t){e.preferredLocale=t.payload;},setSectionState(e,t){e.sectionState={...e.sectionState,...t.payload};},resetSectionState(e,t){e.sectionState={...e.sectionState,[t.payload]:{}};},setActiveEntity(e,t){e.activeEntity=t.payload;},openSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!0};},closeSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!1};},toggleSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!e.sidebarStatus[t.payload]};},addRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.concat(t.payload);},removeRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.filter(r=>!t.payload.includes(r));}},extraReducers:{[HYDRATE]:(e,t)=>({...e,previews:t.payload.status.previews})}}),Se=ze.actions;var Po={attributes:{},variables:{},status:{}},Ge=createSlice({name:"variables",initialState:Po,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}})}}),zt=Ge.actions;var Gt=()=>configureStore({reducer:{[oe.name]:oe.reducer,[ze.name]:ze.reducer,[Ge.name]:Ge.reducer},middleware(e){return e({thunk:{extraArgument:_e("/api/cms/")}})}}),Ht=createWrapper(Gt);var et={};Wr(et,{addBlockToState:()=>Kn,addRunConsumersRunning:()=>Nr,cloneEntity:()=>Lr,createEntity:()=>xr,deleteEntity:()=>Cr,deleteQueryParam:()=>Dn,readEntity:()=>De,readMember:()=>Dr,readMetadata:()=>Fn,readPrivateBlocks:()=>Yn,readUser:()=>jn,recalculateVariables:()=>Fr,removeBlocksFromState:()=>Hn,removeRunConsumersRunning:()=>Mr,reportSearch:()=>wn,resetSectionState:()=>wr,revalidateReport:()=>Qn,revalidateUrl:()=>Wn,searchMember:()=>Mn,searchRegenerate:()=>Nn,searchRole:()=>qn,searchUser:()=>$n,setCurrentLocale:()=>_n,setPreferredLocale:()=>In,setPreviews:()=>On,setQueryParam:()=>Un,setSectionState:()=>Br,setStatus:()=>Ir,updateEntity:()=>kr,updateMyData:()=>Gn,updateUser:()=>zn,urlProxy:()=>Vn,variantValidateSlug:()=>Bn});var{localeDefault:wo}=Z();function K(e){return {variables:e.variables||{},query:e.query||{},locale:e.locale||wo}}var ie={SINGLE:"single",MULTI:"multi"};var Do={IMAGE:"image",PARAGRAPH:"paragraph",SELECTOR:"selector",STAT:"stat",SUBTITLE:"subtitle",TITLE:"title",NAV:"nav",RESET_BUTTON:"reset_button",COMPARISON_BUTTON:"comparison_button",TABLE:"table",BUTTON:"button",MULTIHIERARCHY_SELECTOR:"multihierarchy_selector",FALLBACK:"fallback"},at={GENERATOR:"generator",RELATED:"related",VIZ:"visualization",SECTION_FLAG:"section_flag"},it="logic",E={...Do,...at};var qo=Fo(process.env.REPORTS_LOGGING),ce=$o;function $o(e,t,r,o,n=void 0,s){let i={},a=[],{locale:c}=K(s);try{if(t){let u=new Proxy(console,{get(l,d){return jo(d,"log","debug","info","warn","error")?(...S)=>{a.push(`${d} ${Date.now()} - ${S.map(h=>format(h)).join(" ")}`),qo&&l[d](...S);}:l[d]}}),p;return n?p=new Function(e,"console","libs","formatters","locale","variables",r)(t,u,he,o,c,n):p=new Function(e,"console","libs","formatters","locale",r)(t,u,he,o,c),typeof p=="object"&&Object.keys(p).length>0&&Object.assign(i,p),{vars:i,error:null,log:a,output:p}}return {vars:i,error:"Invalid API Link",log:a}}catch(u){return {vars:i,error:u.message,log:a}}}function jo(e,...t){return t.includes(e)}function ct(e){return e.reduce((t,r,o)=>(o?o===e.length-1&&o===1?t+=` and ${r}`:o===e.length-1?t+=`, and ${r}`:t+=`, ${r}`:t+=r,t),"")}var Te=zo;function zo(e,t,r,o=!1){let{variables:n}=K(r);if(!e)return e;let s=/([A-z0-9]*)\{\{([^\}]+)\}\}/g;return e.replace(s,(a,c,u)=>{let p=d=>d;if(c){let d=c.replace(/^\w/g,S=>S.toLowerCase());d in t?p=t[d]:p=S=>`${c}${S}`;}let l=Array.isArray(n[u])?ct(n[u]):n[u];if(l===void 0)return o?a:"N/A";try{return p(l,he,t)}catch(d){return console.error(`Error using formatter ${p.name}
26
+ `,`Error message: ${d.message}`),"N/A"}})}var ut=(e,t,r)=>{let{variables:o}=r,n=i=>i.allowed==="never"?!1:!i.allowed||i.allowed==="always"||o[i.allowed],s={...e};return Object.keys(s).forEach(i=>{typeof s[i]=="string"?s[i]=Te(s[i],t,r):Array.isArray(s[i])?s[i]=s[i].filter(n).map(a=>typeof a=="object"?ut(a,t,r):typeof a=="string"?Te(a,t,r):a):typeof s[i]=="object"&&s[i]!==null&&!(s[i]instanceof Date)&&(s[i]=ut(s[i],t,r));}),s},Ke=ut;var Qt=e=>Array.isArray(e)?e.map(t=>typeof t=="string"?{allowed:"always",label:t,id:t}:{allowed:"always",label:t.id,...t}):[];var Go=(e,t,r)=>{if(!r)return !1;if(e===ie.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(s=>s.id).includes(n))},lt=Go;function pt(e,t,r,o,n=!1){let{variables:s}=K(o),i=Ke({logic:t},r,o).logic,a=ce("variables",s,i,r,void 0,o),{vars:c,log:u,error:p}=a,l=c.type||ie.SINGLE,d=c.component||"Selector",S=c.hideLabel||"false",h=c.resetSectionVars||"false",T=c.name||"Unlabeled Selector",f=Qt(c.options||[]),k=b=>l===ie.MULTI&&!Array.isArray(b)?[b]:b,C=c.defaultValue,w;if(C&&(C=k(C),lt(l,C,f)&&(w=C)),!w){let b=f&&f[0]&&f[0].id||f[0]||"";w=k(b);}if(n&&typeof window<"u"){let b=`selector${e}id`,N=new URLSearchParams(window.location.search),$=Object.fromEntries(N)[b];$&&!lt(l,$,f)&&$!==void 0&&(N.delete(b),window.history.replaceState(null,null,`?${N.toString()}`));}return {config:{name:T,type:l,options:f,defaultValue:w,component:d,hideLabel:S,resetSectionVars:h},log:u,error:p}}function dt(e,t,r){if(!e)return !1;let o=Array.isArray(r)?r:r.split(",");return Array.isArray(o)&&o.every(n=>e.map(s=>`${s[`${t} ID`]}`).includes(n))}function ft(e,t,r,o,n=!1){let{variables:s}=K(o),i=Ke({logic:t},r,o).logic,a=ce("variables",s,i,r,void 0,o),{vars:c,log:u,error:p}=a;if(n&&typeof window<"u"){let d=`multihierarchySelector${e}-value`,S=`multihierarchySelector${e}-type`,h=new URLSearchParams(window.location.search),T=Object.fromEntries(h),f=T[d],k=T[S];f&&f!==void 0&&k&&k!==void 0&&!dt(c.data,k,f)&&(h.delete(d),h.delete(S),window.history.replaceState(null,null,`?${h.toString()}`));}return {config:c,log:u,error:p}}var Ho=(e,t,r)=>{let o=`selector${e}id`,n=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(o),s=new URLSearchParams(t).get(o),i=n||s;if(r.type===ie.MULTI){let u=i?i.split(","):r.defaultValue,p=r.options.filter(l=>u.includes(l.id));return {[`selector${e}id`]:u,[`selector${e}label`]:(p||[]).map(l=>l.label)}}let a=i&&r.options.find(u=>u.id===i)?i:r.defaultValue,c=r.options.find(u=>u.id===a);return {[`selector${e}id`]:a,[`selector${e}label`]:c&&c.label||void 0}},Zt=Ho;var Ko=(e,t,r)=>{let o=`multihierarchySelector${e}-value`,n=`multihierarchySelector${e}-type`,s=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(o),i=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(n),a=new URLSearchParams(t).get(o),c=new URLSearchParams(t).get(n),u=s||a,p=i||c,l=u?u.split(","):r.defaultValue||[],d=p||r.defaultValueType||"",S=r.data?.filter(h=>l.includes(`${h[`${d} ID`]}`))||[];return {[`multihierarchySelector${e}id`]:l,[`multihierarchySelector${e}label`]:[...new Set((S||[]).map(h=>h[d]))],[`multihierarchySelector${e}type`]:d}},Jt=Ko;var{localeDefault:Xt,locales:Yo}=Z(),Wo=Object.values(at),Qo=(e,t=Xt)=>e&&Wo.includes(e.type)?{locale:it,locales:[it]}:{locale:t,locales:Yo},er=(e,t=Xt)=>{if(!e)return {};let{locale:r}=Qo(e,t);return e.contentByLocale?.[r]?.content};function Zo(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(s=>o.includes(s)))).map(n=>[n.id,n]))}var tr=Zo;var rr=(e,t)=>t&&typeof t=="string"?t.split(".").reduce((r,o)=>r[o],e):e;var or="|||";var nr="SECTION_ALLOWED";function mt(e){return e.type===E.SECTION_FLAG&&e.inputs.length===0&&e.consumers.length===0}var ue=Fo(process.env.NEXT_PUBLIC_REPORTS_DEBUG),tn=process.env.REPORTS_ORIGIN||"";sr(We,{retries:5,retryDelay:sr.exponentialDelay,onRetry:(e,t,r)=>{console.error("Generator request failed. Retrying... Count: ",e),console.error("URL: ",r.url),console.error(t.message);}});We.interceptors.request.use(e=>({...e,requestStart:Date.now()}));We.interceptors.response.use(e=>({...e,requestDuration:new Date().getTime()-e.config.requestStart}),e=>Promise.reject(e));var rn=(e,t,r)=>{let o=Te(e,t,r);return o.startsWith("http")||(o=`${tn}${o.startsWith("/")?"":"/"}${o}`),o},{urlProxy:on}=_e("/api/cms");function Ye(e){return e.ok!==void 0}function yt(e){this.message=e,this.name="ApiFetchException";}var ar=process.env.NEXT_PUBLIC_REPORTS_API_FETCH_TIMEOUT||0;async function nn(e,t,r="en",o){let n=Date.now(),s=e,i,c=new URL(e).searchParams;if(c.has("bespoke_slugs")){let l=new RegExp(`[?&]bespoke_slugs=${c.get("bespoke_slugs")}`,"g");s=s.replace(l,"");}let u=o?o.settings:{},p=!!(u&&u.useProxy&&u.useProxy==="true");if(typeof window=="object"&&p){let l=await on({url:s,timeout:ar});if(l.ok===!0)i=l.data;else throw new yt(l?.error)}else try{let l=await We({url:s,timeout:ar});if(l.status===200)l.headers["content-type"]==="text/csv"?i=csvParse(l.data):i=l.data;else throw new yt("No response")}catch(l){throw new yt(l.message)}if(c.has("bespoke_slugs")){let l=c.get("bespoke_slugs");if(l){let d=l.split(",");if(d.length===3){let[S,h,T]=d,f=rr(i,T);if(f&&Array.isArray(f)){let k=Array.from(new Set(f.map(C=>`${C[h]}`).filter(C=>!["","undefined"].includes(C))));if(k.length>0){let C=k.join("").length>2e3,w=await t({mode:C?"whole":"ids",ids:C?void 0:k,all:!1,locale:r,variant:[parseInt(S,10)],output:"lite",limit:k.length+1}).then(A=>{let b=[];return Ye(A)?A.ok&&(b=A.data.results):b=A.results,b&&Array.isArray(b)?b:[]}).catch(A=>(console.error(`Error hydrating slugs for Variant: ${S}, Key: ${h}, Accessor: ${T}`),console.error(` Url ${e}`),o&&console.error(` From Section ${o.section_id} and Block ${o.id}`),console.error(A),[]));if(w){let A=Object.fromEntries(w.map(b=>[b.id,`/${b.variant_slug}/${b.slug}`]));f.map(b=>(b.bespoke_slug=A[b[h]]?A[b[h]]:null,b));}}}}}}return {data:i,requestDuration:Date.now()-n}}function sn(e){this.name="BlockException",this.message=e;}async function ir(e,t,r,o){let{locale:n,variables:s,query:i}=K(r),a=cn(e,r,s,t),c=null,u=e.contentByLocale?.logic?.content?.api,p=null,l=null,d=null;if(!a)return {outputVariables:{},renderVariables:{},status:{allowed:!1,hiddenByCascade:e.id}};if(e.type===E.FALLBACK)return {outputVariables:{},renderVariables:{},status:{allowed:a,hiddenByCascade:e.id}};if(u){d=rn(u,t,r);let A=d.split(or).filter(_=>_!==""),b=[];for(let _=0;_<A.length;_++){let $=A[_];new RegExp("^(?:[a-z+]+:)?//","i").test(d)||($=`${process.env.NEXT_PUBLIC_REPORTS_BASE_URL}/${$}`.replace(/([^:]\/)\/+/g,"$1")),b.push(nn($,o,n,e).catch(X=>{throw new sn(` Excecution of ${e.type}-${e.id} in section ${e.section_id} in report ${s.report_name} (${s.report_id}) failed.
27
+ Error fetching ${$}.
28
+ Message: ${X.message}.
29
+ `)}));}let N=await Promise.all(b).catch(_=>_.message);if(typeof N=="string"&&N)return {outputVariables:{},renderVariables:{},status:{error:N}};c=N.length===1?N[0].data:N.map(_=>_.data),l=N.reduce((_,$)=>_+JSON.stringify($.data).length/1024,0),p=Math.max(...N.map(_=>_.requestDuration));}if(e.type===E.SELECTOR){let{config:A,log:b,error:N}=pt(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:Zt(e.id,i,A),renderVariables:A,status:{log:b,error:N,allowed:a}}}if(e.type===E.MULTIHIERARCHY_SELECTOR){let{config:A,log:b,error:N}=ft(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:Jt(e.id,i,A),renderVariables:A,status:{log:b,error:N,allowed:a}}}if(e.type===E.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:a}};if(e.type===E.RELATED){let A=e.contentByLocale?.logic?.content?.simple?.compare||"variant",b=e.contentByLocale?.logic?.content?.simple?.limit||4,N=Object.keys(s).filter(m=>m.startsWith("report_id")).map(m=>s[m]),_=Object.keys(s).filter(m=>m.startsWith("dimension_id")).map(m=>s[m]),$=Object.keys(s).filter(m=>m.startsWith("variant_id")).map(m=>s[m]),Q=Object.keys(s).filter(m=>m.startsWith("id")).map(m=>s[m]);if(!Q.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:!1}};let X=await Promise.all(Q.map((m,M)=>o({mode:"ids",locale:n,ids:[m],output:"lite",variant:[$[M]]}))).then(m=>m.flatMap(M=>{let v=[];return Ye(M)?M.ok&&(v=M.data.results):v=M.results,v&&Array.isArray(v)?v:[]})).catch(m=>(console.error("Error getting related members",m),[]));if(_.length>1){let m=Object.keys(s).filter(P=>P.startsWith("variant_slug")).map(P=>s[P]),M=X.map((P,I)=>{let x={mode:"related",locale:n,related:b??4,current_ids:[P.content_id],output:"full",variant_ids:[P.variant_id]};return I===0&&(x.include_ids=[P.content_id]),x}),v=await Promise.all(M.map(P=>o(P))).then(P=>P.flatMap(I=>{let x=[];return Ye(I)?I.ok&&(x=I.data.results):x=I.results,x&&Array.isArray(x)?x:[]})).catch(P=>(console.error("Error getting related members",P),[])),V=v.reduce((P,I)=>{let x=I.variant_slug;return P[x]||(P[x]=[]),P[x].push(I),P},{}),z=[],ee=Object.keys(V),te=[{combination:[],index:0}];for(;te.length>0;){let P=te.pop();if(!P)continue;let{combination:I,index:x}=P;if(x===ee.length){z.push(I);continue}let ot=ee[x],Hr=V[ot];for(let Kr of Hr)te.push({combination:[...I,Kr],index:x+1});}return {outputVariables:{related_reports:z.map(P=>{let I=P.sort((x,ot)=>m.indexOf(x.variant_slug)-m.indexOf(ot.variant_slug));return {entities:I,link:"/"+I.map(x=>`${x.variant_slug}/${x.slug}`).join("/")}})},renderVariables:{},status:{log:[],allowed:v.length>0}}}let L=X.map(m=>m.content_id),B={mode:"related",locale:n,related:b??4,current_ids:L,output:"full"};A&&(A==="report"?B.report_ids=N:A==="dimension"?B.dimension_ids=_:B.variant_ids=$);let U=await o(B).then(m=>{let M=[];return Ye(m)?m.ok&&(M=m.data.results):M=m.results,M&&Array.isArray(M)?M:[]}).catch(m=>(console.error("Error getting related members",m),[]));return {outputVariables:{related_reports:U.map(m=>({entities:[m],link:`/${m.variant_slug}/${m.slug}`}))},renderVariables:{},status:{log:[],allowed:U.length>0}}}let{logic:S}=er(e,n),h=Te(S,t,r),T=ce("resp",c||{},h,t,s,r),{vars:f,error:k,log:C}=T;if(typeof f!="object")return {outputVariables:{},renderVariables:{},status:{error:"Configuration did not return an object",log:C,duration:p,responseSize:l,resp:c,api:d,allowed:a}};let w=Object.keys(f).reduce((A,b)=>({...A,[`${e.type}${e.id}${b}`]:f[b]}),{});return {renderVariables:f,outputVariables:[E.GENERATOR,E.SECTION_FLAG].includes(e.type)?f:w,status:{log:C,error:k,duration:p,responseSize:l,resp:c,api:d,allowed:a}}}function an(e,t,r,o,n,s,i){return e.consumers.forEach(a=>{if(t[a]){let c=`${r}-${a}`;!o.includes(c)&&(t[a].section_id===t[r].section_id||!n)&&o.push(c),e.consumers.filter(u=>t[u]&&t[u].section_id===t[r].section_id||!n).forEach(u=>Rt(u,t,o,!1,s,n,i));}})}var Rt=(e,t,r=[],o=!0,n=!0,s=!0,i=[])=>{if(i.includes(e))return [];i.push(e);let a=t[e];return a&&a.inputs.length&&o&&a.inputs.forEach(c=>{let u=`${c}-${e}`;r.includes(u)||r.push(u),a.inputs.forEach(p=>Rt(p,t,r,o,!1,s,i));}),a&&a.consumers.length&&n&&an(a,t,e,r,s,n,i),r},cn=(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 s=K(t),{error:i,output:a}=ce("variables",r,e.settings.allowedLogic||"return false;",o,void 0,s);i||(n=!!a);}return n},cr=async(e,t,r,o,n,s={},i,a="section")=>{let c=a==="section",u=K(n),p=u.variables,l={...s.variables??{}},d={...s.status??{}},S=new Set,h=[],T={};r?T={...T,[r]:e[r]}:t?T=(t??[]).reduce((L,{id:B})=>({...L,...tr(B,e)}),{}):T=Object.values(e).filter(L=>mt(L)).reduce((L,B)=>({...L,[B.id]:B}),{});let f=Object.values(T).filter(L=>mt(L));if(f.length>0){ue&&console.info("%crunConsumers: calculating section flags","color:purple",f.map(g=>g.id).join(", "));let L=Object.fromEntries(await Promise.all(f.map(async g=>[g.id,await ir(g,o,{...u,variables:p,locale:p.locale},i).then(m=>{let{outputVariables:M,status:v}=m;if(v.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${g.id}, Section ${g.section_id}) failed with message: ${v.error}. `);d[g.id]={allowed:!1,error:v.error},l[g.id]={};}return (g.consumers.length>0||[E.GENERATOR,E.SECTION_FLAG,E.RELATED].includes(g.type))&&v.allowed&&Object.keys(M).length>0?l[g.id]=M:l[g.id]={},a==="report"?(d[g.id]={allowed:v.allowed},[E.GENERATOR,E.SECTION_FLAG].includes(g.type)&&v.api&&(d[g.id].api=v.api)):d[g.id]=v,m})]))),U=Object.entries(L).filter(([,g])=>!g.outputVariables[nr]).map(([g])=>Number(g));S=new Set(U.map(g=>e[g].section_id)),Object.values(T).filter(g=>S.has(g.section_id)).forEach(g=>{h.push(g.id),delete T[g.id];}),ue&&console.info("%crunConsumers: removing sections","color:purple",S.keys());}let k=S.size>0?Object.fromEntries(Object.entries(e).filter(([,L])=>S?.has(L.section_id)?(h.includes(L.id)||h.push(L.id),!1):!0)):e;if(h.length>0&&(k=Object.fromEntries(Object.entries(k).map(([L,B])=>{let U={...B,inputs:B.inputs.filter(g=>!h.includes(g)),consumers:B.consumers.filter(g=>!h.includes(g))};return [L,U]}))),!r&&!t)return {variables:{...s.variables??{},...l},status:{...s.status??{},...d}};a==="report"&&h.length>0&&h.forEach(L=>{delete l[L],delete d[L],delete e[L];}),ue&&console.info("%crunConsumers: running root blocks","color:purple",Object.keys(T));let C=Object.keys(T).reduce((L,B)=>{let U=new Date,g=Rt(Number(B),k,[],!r,!0,c).map(v=>v.split("-")),M=(new Date().getTime()-U.getTime())/1e3;return ue&&console.info(`%cResolved dependencies for ${B} (${M.toFixed(2)}s)`,"color:blue"),[...L,...g]},[]),w=new Date,A=Object.keys(T).reduce((L,B)=>L.includes(B)?[...L]:[B,...L],Jo(C)),N=(new Date().getTime()-w.getTime())/1e3;ue&&console.info(`%cResolved DAG (${N.toFixed(2)}s): `,"color:green",A);async function _(L,B){let U=new Map;for(let g of L){let m=B[g],v=Promise.all(m.inputs.filter(V=>L.includes(String(V))).map(V=>U.get(Number(V)))).then(async()=>{let V=m.inputs.reduce((I,x)=>({...I,...l[x]}),p),z=m.inputs.find(I=>(m.settings?.ignoreCascade?m.settings?.ignoreCascade:[]).includes(I)||!d[I]?!1:!d[I].allowed||d[I].hiddenByCascade);if(z){d[g]={allowed:!1,hiddenByCascade:d[z].hiddenByCascade||z},l[g]={};return}let ee=new Date,te=await ir(m,o,{...u,variables:V,locale:V.locale},i).then(({outputVariables:I,status:x})=>{if(x.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${g}, Section ${m.section_id}) failed with message: ${x.error}. `);d[g]={allowed:!1,error:x.error},l[g]={};}(m.consumers.length>0||[E.GENERATOR,E.SECTION_FLAG,E.RELATED].includes(m.type))&&x.allowed&&Object.keys(I).length>0?l[g]=I:l[g]={},a==="report"?(d[g]={allowed:x.allowed},[E.GENERATOR,E.SECTION_FLAG].includes(m.type)&&x.api&&(d[g].api=x.api)):d[g]=x;}),P=(new Date().getTime()-ee.getTime())/1e3;return ue&&console.info(`%cBlock ${m.id} resolved in ${P.toFixed(3)}s`,P>500?"color:red":"color:green"),te});U.set(Number(g),v);}await Promise.all(Array.from(U.values()));}let $=new Date;await _(A,k);let X=(new Date().getTime()-$.getTime())/1e3;return ue&&console.info(`%cResolved Variables (${X.toFixed(2)}s): `,"color:green"),{variables:{...s.variables??{},...l},status:{...s.status??{},...d}}};function un(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(s=>{t[`attr_${s}${n}`]=r.attributes[s];}),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 ur=un;function pn(){let{publicRuntimeConfig:e}=ln(),t=e.bespoke_report_env_vars||{};return {...Object.keys(t).reduce((r,o)=>(r[`ENV_${o}`]=t[o]||"N/A",r),{})}}var lr=pn;function le(e,t,r){if(t==="createBulk"||t==="updateBulk"){let n=`${t}${pr(r)}`;return e[n]}let o=`${t}${pr(r)}`;return e[o]}function pr(e){return e[0].toUpperCase()+e.slice(1)}function j(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=En[e],s=n?typeof n=="function"?n.apply(null,r):n:"unknown error nr: "+e;throw Error("[Immer] "+s)}throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map(function(i){return "'"+i+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function Ae(e){return !!e&&!!e[G]}function de(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)===bn}(e)||Array.isArray(e)||!!e[Er]||!!(!((t=e.constructor)===null||t===void 0)&&t[Er])||kt(e)||Ct(e))}function Me(e,t,r){r===void 0&&(r=!1),xe(e)===0?(r?Object.keys:It)(e).forEach(function(o){r&&typeof o=="symbol"||t(o,e[o],e);}):e.forEach(function(o,n){return t(n,o,e)});}function xe(e){var t=e[G];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:kt(e)?2:Ct(e)?3:0}function St(e,t){return xe(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function dn(e,t){return xe(e)===2?e.get(t):e[t]}function br(e,t,r){var o=xe(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r;}function fn(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function kt(e){return gn&&e instanceof Map}function Ct(e){return hn&&e instanceof Set}function pe(e){return e.o||e.t}function Lt(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Sn(e);delete t[G];for(var r=It(t),o=0;o<r.length;o++){var n=r[o],s=t[n];s.writable===!1&&(s.writable=!0,s.configurable=!0),(s.get||s.set)&&(t[n]={configurable:!0,writable:!0,enumerable:s.enumerable,value:e[n]});}return Object.create(Object.getPrototypeOf(e),t)}function Pt(e,t){return t===void 0&&(t=!1),Ot(e)||Ae(e)||!de(e)||(xe(e)>1&&(e.set=e.add=e.clear=e.delete=mn),Object.freeze(e),t&&Me(e,function(r,o){return Pt(o,!0)},!0)),e}function mn(){j(2);}function Ot(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function J(e){var t=Tn[e];return t||j(18,e),t}function dr(){return process.env.NODE_ENV==="production"||ve||j(0),ve}function gt(e,t){t&&(J("Patches"),e.u=[],e.s=[],e.v=t);}function Qe(e){Tt(e),e.p.forEach(yn),e.p=null;}function Tt(e){e===ve&&(ve=e.l);}function fr(e){return ve={p:[],l:ve,h:e,m:!0,_:0}}function yn(e){var t=e[G];t.i===0||t.i===1?t.j():t.g=!0;}function ht(e,t){t._=t.p.length;var r=t.p[0],o=e!==void 0&&e!==r;return t.h.O||J("ES5").S(t,e,o),o?(r[G].P&&(Qe(t),j(4)),de(e)&&(e=Ze(t,e),t.l||Je(t,e)),t.u&&J("Patches").M(r[G].t,e,t.u,t.s)):e=Ze(t,r,[]),Qe(t),t.u&&t.v(t.u,t.s),e!==Sr?e:void 0}function Ze(e,t,r){if(Ot(t))return t;var o=t[G];if(!o)return Me(t,function(a,c){return mr(e,o,t,a,c,r)},!0),t;if(o.A!==e)return t;if(!o.P)return Je(e,o.t,!0),o.t;if(!o.I){o.I=!0,o.A._--;var n=o.i===4||o.i===5?o.o=Lt(o.k):o.o,s=n,i=!1;o.i===3&&(s=new Set(n),n.clear(),i=!0),Me(s,function(a,c){return mr(e,o,n,a,c,r,i)}),Je(e,n,!1),r&&e.u&&J("Patches").N(o,r,e.u,e.s);}return o.o}function mr(e,t,r,o,n,s,i){if(process.env.NODE_ENV!=="production"&&n===r&&j(5),Ae(n)){var a=Ze(e,n,s&&t&&t.i!==3&&!St(t.R,o)?s.concat(o):void 0);if(br(r,o,a),!Ae(a))return;e.m=!1;}else i&&r.add(n);if(de(n)&&!Ot(n)){if(!e.h.D&&e._<1)return;Ze(e,n),t&&t.A.l||Je(e,n);}}function Je(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&Pt(t,r);}function Et(e,t){var r=e[G];return (r?pe(r):e)[t]}function yr(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 At(e){e.P||(e.P=!0,e.l&&At(e.l));}function bt(e){e.o||(e.o=Lt(e.t));}function vt(e,t,r){var o=kt(t)?J("MapSet").F(t,r):Ct(t)?J("MapSet").T(t,r):e.O?function(n,s){var i=Array.isArray(n),a={i:i?1:0,A:s?s.A:dr(),P:!1,I:!1,R:{},l:s,t:n,k:null,o:null,j:null,C:!1},c=a,u=xt;i&&(c=[a],u=Ne);var p=Proxy.revocable(c,u),l=p.revoke,d=p.proxy;return a.k=d,a.j=l,d}(t,r):J("ES5").J(t,r);return (r?r.A:dr()).p.push(o),o}function Rn(e){return Ae(e)||j(22,e),function t(r){if(!de(r))return r;var o,n=r[G],s=xe(r);if(n){if(!n.P&&(n.i<4||!J("ES5").K(n)))return n.t;n.I=!0,o=Rr(r,s),n.I=!1;}else o=Rr(r,s);return Me(o,function(i,a){n&&dn(n.t,i)===a||br(o,i,t(a));}),s===3?new Set(o):o}(e)}function Rr(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return Lt(e)}var gr,ve,_t=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",gn=typeof Map<"u",hn=typeof Set<"u",hr=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Sr=_t?Symbol.for("immer-nothing"):((gr={})["immer-nothing"]=!0,gr),Er=_t?Symbol.for("immer-draftable"):"__$immer_draftable",G=_t?Symbol.for("immer-state"):"__$immer_state";var En={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"},bn=""+Object.prototype.constructor,It=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,Sn=Object.getOwnPropertyDescriptors||function(e){var t={};return It(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r);}),t},Tn={},xt={get:function(e,t){if(t===G)return e;var r=pe(e);if(!St(r,t))return function(n,s,i){var a,c=yr(s,i);return c?"value"in c?c.value:(a=c.get)===null||a===void 0?void 0:a.call(n.k):void 0}(e,r,t);var o=r[t];return e.I||!de(o)?o:o===Et(e.t,t)?(bt(e),e.o[t]=vt(e.A.h,o,e)):o},has:function(e,t){return t in pe(e)},ownKeys:function(e){return Reflect.ownKeys(pe(e))},set:function(e,t,r){var o=yr(pe(e),t);if(o?.set)return o.set.call(e.k,r),!0;if(!e.P){var n=Et(pe(e),t),s=n?.[G];if(s&&s.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(fn(r,n)&&(r!==void 0||St(e.t,t)))return !0;bt(e),At(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 Et(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,bt(e),At(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=pe(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{writable:!0,configurable:e.i!==1||t!=="length",enumerable:o.enumerable,value:r[t]}},defineProperty:function(){j(11);},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){j(12);}},Ne={};Me(xt,function(e,t){Ne[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)};}),Ne.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&j(13),Ne.set.call(this,e,t,void 0)},Ne.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&j(14),xt.set.call(this,e[0],t,r,e[0])};var An=function(){function e(r){var o=this;this.O=hr,this.D=!0,this.produce=function(n,s,i){if(typeof n=="function"&&typeof s!="function"){var a=s;s=n;var c=o;return function(T){var f=this;T===void 0&&(T=a);for(var k=arguments.length,C=Array(k>1?k-1:0),w=1;w<k;w++)C[w-1]=arguments[w];return c.produce(T,function(A){var b;return (b=s).call.apply(b,[f,A].concat(C))})}}var u;if(typeof s!="function"&&j(6),i!==void 0&&typeof i!="function"&&j(7),de(n)){var p=fr(o),l=vt(o,n,void 0),d=!0;try{u=s(l),d=!1;}finally{d?Qe(p):Tt(p);}return typeof Promise<"u"&&u instanceof Promise?u.then(function(T){return gt(p,i),ht(T,p)},function(T){throw Qe(p),T}):(gt(p,i),ht(u,p))}if(!n||typeof n!="object"){if((u=s(n))===void 0&&(u=n),u===Sr&&(u=void 0),o.D&&Pt(u,!0),i){var S=[],h=[];J("Patches").M(n,u,S,h),i(S,h);}return u}j(21,n);},this.produceWithPatches=function(n,s){if(typeof n=="function")return function(u){for(var p=arguments.length,l=Array(p>1?p-1:0),d=1;d<p;d++)l[d-1]=arguments[d];return o.produceWithPatches(u,function(S){return n.apply(void 0,[S].concat(l))})};var i,a,c=o.produce(n,s,function(u,p){i=u,a=p;});return typeof Promise<"u"&&c instanceof Promise?c.then(function(u){return [u,i,a]}):[c,i,a]},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){de(r)||j(8),Ae(r)&&(r=Rn(r));var o=fr(this),n=vt(this,r,void 0);return n[G].C=!0,Tt(o),n},t.finishDraft=function(r,o){var n=r&&r[G];process.env.NODE_ENV!=="production"&&(n&&n.C||j(9),n.I&&j(10));var s=n.A;return gt(s,o),ht(void 0,s)},t.setAutoFreeze=function(r){this.D=r;},t.setUseProxies=function(r){r&&!hr&&j(20),this.O=r;},t.applyPatches=function(r,o){var n;for(n=o.length-1;n>=0;n--){var s=o[n];if(s.path.length===0&&s.op==="replace"){r=s.value;break}}n>-1&&(o=o.slice(n+1));var i=J("Patches").$;return Ae(r)?i(r,o):this.produce(r,function(a){return i(a,o)})},e}(),H=new An,vn=H.produce;H.produceWithPatches.bind(H);H.setAutoFreeze.bind(H);H.setUseProxies.bind(H);H.applyPatches.bind(H);H.createDraft.bind(H);H.finishDraft.bind(H);var Xe=vn;var W=oe.actions,xr=Ue({block:fe("block"),dimension:fe("dimension"),formatter:fe("formatter"),report:fe("report"),section:fe("section"),variant:fe("variant")}),De=Ue({block:me("block"),dimension:me("dimension"),formatter:me("formatter"),report:me("report"),section:me("section"),variant:me("variant")}),kr=Ue({block:re("block"),dimension:re("dimension"),formatter:re("formatter"),report:re("report"),section:re("section"),variant:re("variant")}),Cr=Ue({block:ke("block"),dimension:ke("dimension"),formatter:ke("formatter"),report:ke("report"),section:ke("section"),variant:ke("variant")}),Lr=Ue({block:Ar("block"),section:Ar("section")});function Ue(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 ye(e,t){return (r,o)=>{let s=o().records.requests[e][t],i=!s||s.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(W.setRequest({key:t,type:e,status:i}));}}function Ce(e,t,r,o){return n=>{typeof window=="object"&&notifications.show({autoClose:3e3,color:"red",id:t,message:o,title:"Error"}),n(W.setRequest({key:t,type:e,status:"FAILURE",error:{code:r,message:o}}));}}function fe(e){return t=>{let r=wt(e,t);return (o,n,s)=>(o(ye(e,r)),le(s,"create",e)(t).then(a=>(a.ok===!0?o(W.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:a.data})):o(Ce(e,r,a.status,a.error)),a)))}}function Cn(e){return t=>{let r=wt(e,t[0]);return (o,n,s)=>(o(ye(e,r)),le(s,"createBulk",e)(t).then(a=>(a.ok===!0?o(W.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:a.data})):o(Ce(e,r,a.status,a.error)),a)))}}function Tr(e,t,r){return r.replace(new RegExp(e,"g"),t)}function Ln(e){return e.section_id!==void 0}function Pn(e){return e.report_id!==void 0}function Ar(e){return t=>{let{create:r}=t;return (o,n,s)=>fe(e)(r)(o,n,s).then(async a=>{if(a.ok){let{data:c}=a,{id:u}=c,{update:p}=t,l=_r(e,{id:u});if(o(ye(e,`${l}`)),e==="block"&&Ln(r)){let d=Xe(p,f=>{f.id=u;}),{contentByLocale:S}=d;S&&(d=Xe(d,f=>{f.id=u,f.contentByLocale=Object.keys(S).reduce((k,C)=>{let w=S?S[C]:{};return k[C]={...w,id:u},k},{});}));let T=d.inputs?.map(f=>({type:f.type,id:f.id,inputAction:{operation:"create",input:{input_id:f.id,block_id:d.id}}}));return T&&T.length>0&&vr(e)([d,...T])(o,n,s).then(()=>me("section")({id:d.section_id,include:!0})(o,n,s).then(f=>(f.ok&&o(W.setRequest({key:l,type:e,status:"SUCCESS",data:f.data})),f))),re(e)(d)(o,n,s).then(f=>(f.ok&&o(W.setRequest({key:l,type:e,status:"SUCCESS",data:f.data})),f))}if(e==="section"&&Pn(r)){let{id:d}=c,S=Xe(p,f=>{f.id=d;}),{blocks:h}=S,T=h?.map(f=>({type:f.type,blockcol:f.blockcol,blockrow:f.blockrow,section_id:d,locales:Object.keys(f.contentByLocale).map(k=>k)}));return T&&h&&await Cn("block")(T)(o,n,s).then(f=>{if(f.ok){let k=f.data,C=[],w=k.map((A,b)=>{let _={...A},$=_.id,Q=h[b];Q.contentByLocale&&(_.contentByLocale=Object.keys(Q.contentByLocale).reduce((v,V)=>{let z=Q.contentByLocale[V];return v[V]={...z,content:{...z.content},id:_.id},v},{}));let{settings:X}=Q,{contentByLocale:L,id:B}=_;_.settings=X;let U={id:B,contentByLocale:L,settings:X};return Q.inputs.map(v=>v.id).reduce((v,V)=>{let z=h.findIndex(ee=>ee.id===V);return [...v,z]},[]).map(v=>({...k[v],originalBlock:h[v]})).forEach(v=>{let{id:V,type:z,originalBlock:ee}=v;if([E.SELECTOR,E.VIZ].includes(z)){if(U.contentByLocale?.logic?.content?.api){let te=U.contentByLocale?.logic.content.api;U.contentByLocale.logic.content.api=Tr(`(selector${ee.id}id)`,`selector${V}id`,te);}if(U.contentByLocale?.logic?.content?.logic){let te=U.contentByLocale.logic.content.logic;U.contentByLocale.logic.content.logic=Tr(`(selector${ee.id}id)`,`selector${V}id`,te);}}C.push({id:V,inputAction:{operation:"create",input:{input_id:V,block_id:$}}});}),U});return vr("block")([...w,...C])(o,n,s)}}),re(e)(S)(o,n,s).then(f=>(f.ok&&o(W.setRequest({key:l,type:e,status:"SUCCESS",data:f.data})),f))}return re(e)({...p,id:c.id})(o,n,s)}})}}function me(e){return t=>{let r=Pr(e,t);return (o,n,s)=>(o(ye(e,r)),le(s,"read",e)(t).then(a=>(a.ok===!0?o(W.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:a.data})):o(Ce(e,r,a.status,a.error)),a)))}}function re(e){return t=>{let r=Nt(e,t);return (o,n,s)=>(o(ye(e,r)),le(s,"update",e)(t).then(a=>(a.ok===!0?o(W.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:a.data})):o(Ce(e,r,a.status,a.error)),a)))}}function vr(e){return t=>{let r=Nt(e,t[0]);return (o,n,s)=>(o(ye(e,r)),le(s,"updateBulk",e)(t).then(a=>(a.ok===!0?o(W.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:a.data})):o(Ce(e,r,a.status,a.error)),a)))}}function ke(e){return t=>{let r=Or(e,t);return (o,n,s)=>(o(ye(e,r)),le(s,"delete",e)(t).then(a=>{a.ok===!0?o(W.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:a.data})):o(Ce(e,r,a.status,a.error));}))}}function wt(e,t){if(e==="variant"){let r=t;return `create(variant, [${r.dimension_id}, ${r.name}])`}return `create(${e}, [${Object.keys(t)}])`}function Pr(e,t={}){let r=t.id==null?null:`'${t.id}'`;return `read(${e}, ${r}, ${!!t.include})`}function Nt(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function Or(e,t){return `delete(${e}, ${t})`}function _r(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:Ir,setPreviews:On,setSectionState:Br,resetSectionState:wr,setCurrentLocale:_n,setPreferredLocale:In,addRunConsumersRunning:Nr,removeRunConsumersRunning:Mr}=Se;function Bn(e,t){return async(r,o,n)=>{let s=await n.validateVariantSlug({dimension:e,slug:t});if("error"in s)throw new Error(s.error);return s.data}}function wn(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 Nn(){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 Dr(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 Mn(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 Ur(e,t,r,o){let n=r().status,s={...n,...o},i={...n.query,...o.query};Object.keys(i).forEach(c=>i[c]===void 0&&delete i[c]);let a={...s,query:i};t(Ir(a)),n.activeSection&&t(Fr(e,{query:i}));}function Dn(e,t){return async(r,o)=>Ur(e,r,o,{query:{[t]:void 0}})}function Un(e,t,r){return async(o,n)=>Ur(e,o,n,{query:{[t]:r}})}function Fr(e,t){return async(r,o)=>{let n=o(),{currentLocale:s}=n.status,i=n.records.entities.block,a=e.formatterFunctions[s],{parsedParams:c,statusPayload:u}=jt(n.status,t),{sid:p,bid:l,previews:d,query:S}=c;Object.keys(u).length&&r(Se.setStatus(u));let h={...ur(d),locale:s,...lr()},T={variables:h,query:S,locale:s};r(Se.addRunConsumersRunning([p]));let f=n.records.entities.section[p],k=async C=>r(Dr(C));try{let C=await cr(i,f&&[f],l,a,T,void 0,k),{variables:w,status:A}=C;r(zt.setVariableChange({attributes:h,variables:w,status:A})),r(Se.removeRunConsumersRunning([p]));}catch(C){console.error("Error in runConsumers client side: recalculateVariables",C);}}}function Fn(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 Vn(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 qn(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function $n(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 jn(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 zn({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 Gn(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 Hn(e){let{removeBlocks:t}=oe.actions;return async r=>{await r(t(e));}}function Kn(e){let{addBlocks:t}=oe.actions;return async r=>{await r(t(e));}}function Yn(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 Wn(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 Qn(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 {locales:Jn}=Z(),Xn={pathSegment:"path",formatterFunctions:Jn.reduce((e,t)=>({...e,[t]:{}}),{}),profilePrefix:"path",siteProps:{}};createContext(Xn);Z();var tt=useDispatch,rt=useSelector;
30
30
 
31
- export { We as actions, $t as storeWrapper, Qe as useBespokeDispatch, Ze as useBespokeSelector };
31
+ export { et as actions, Ht as storeWrapper, tt as useBespokeDispatch, rt as useBespokeSelector };