@datawheel/bespoke 0.8.0-rc.9 → 0.8.0

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,32 @@
1
1
  import { createSlice, configureStore } from '@reduxjs/toolkit';
2
2
  import { HYDRATE, createWrapper } from 'next-redux-wrapper';
3
- import Ye from 'axios';
3
+ import nt from 'axios';
4
4
  import { schema, normalize } from 'normalizr';
5
- import { assign, closest, merge } from 'd3plus-common';
6
- import * as Zr from 'd3-array';
7
- import * as Jr from 'd3-collection';
8
- import * as Xr from 'd3-format';
9
- import * as eo from 'd3-time-format';
5
+ import { assign, closest, merge, isObject } from 'd3plus-common';
6
+ import * as mo from 'd3-array';
7
+ import * as yo from 'd3-collection';
8
+ import * as Ro from 'd3-format';
9
+ import * as go 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 nr from 'axios-retry';
14
- import Io from 'yn';
13
+ import xo from 'jsonwebtoken';
14
+ import gr from 'axios-retry';
15
+ import Zo from 'yn';
15
16
  import { format } from 'pretty-format';
16
- import jo from 'toposort';
17
+ import yn from 'toposort';
17
18
  import { csvParse } from 'd3-dsv';
18
- import tn from 'next/config';
19
+ import dn from 'next/config';
19
20
  import { notifications } from '@mantine/notifications';
20
21
  import { createContext } from 'react';
21
22
  import { useDispatch, useSelector } from 'react-redux';
22
23
  import 'react/jsx-runtime';
23
24
  import '@mantine/core';
24
25
 
25
- var Vr=Object.defineProperty;var zr=(e,t)=>{for(var r in t)Vr(e,r,{get:t[r],enumerable:!0});};function j(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 N(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>j(e,{...o,method:"GET",params:r?r(n):n})}function M(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>j(e,{...o,method:"POST",data:r?r(n):n})}function ee(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>j(e,{...o,method:"DELETE",params:r?r(n):n})}function me(e,t){return r=>j(e,{method:"POST",url:`images/save/${t}`,params:{prompt:r.prompt,provider:t}})}function Pe(e,t){return r=>j(e,{method:"GET",url:`images/search/${t}`,params:{prompt:r.prompt,page:r.page,provider:t}})}function Mt(e,t){return ()=>j(e,{method:"GET",url:`list/icons/${t}`,params:{provider:t}})}function Dt(e,t){return r=>j(e,{method:"GET",url:`read/icons/${t}/icon.svg`,params:{name:r.name}})}var ye=e=>({id:e}),Gr=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 Le(e){let t=Ye.create({baseURL:e});return {createBulkBlock:M(t,"create/bulk/block"),createBlock:M(t,"create/block"),createDimension:M(t,"create/dimension"),createFormatter:M(t,"create/formatter"),createReport:M(t,"create/report"),createSection:M(t,"create/section"),createVariant:M(t,"create/variant"),deleteBlock:ee(t,"delete/block",ye),deleteDimension:ee(t,"delete/dimension",ye),deleteFormatter:ee(t,"delete/formatter",ye),deleteReport:ee(t,"delete/report",ye),deleteSection:ee(t,"delete/section",ye),deleteVariant:ee(t,"delete/variant",ye),readBlock:N(t,"read/block"),readDimension:N(t,"read/dimension"),readFormatter:N(t,"read/formatter"),readReport:N(t,"read/report"),readSection:N(t,"read/section"),readVariant:N(t,"read/variant"),updateBulkBlock:M(t,"update/bulk/block"),updateBlock:M(t,"update/block"),updateDimension:M(t,"update/dimension"),updateFormatter:M(t,"update/formatter"),updateReport:M(t,"update/report"),updateSection:M(t,"update/section"),updateVariant:M(t,"update/variant"),searchReport:N(t,"search/reports"),validateVariantSlug:N(t,"validate/variant"),readMember:N(t,"read/members",Gr),readMemberImage:N(t,{url:"member/image",responseType:"blob"}),searchMember:N(t,"search/members"),updateMember:N(t,"update/members"),imageLocalSearch:Pe(t,"local"),imageLocalSave:me(t,"local"),imageFlickrSearch:Pe(t,"flickr"),imageFlickrSave:me(t,"flickr"),imageUnsplashSearch:Pe(t,"unsplash"),imageUnsplashSave:me(t,"unsplash"),imageUploadSave:me(t,"upload"),imageAdobeSearch:Pe(t,"adobe"),imageAdobeSave:me(t,"adobe"),readMetadata:N(t,"read/metadata"),regenerateSearch:M(t,"search/regenerate"),urlProxy:N(t,"url/proxy"),searchRole:N(t,"auth/search/roles"),searchUser:N(t,"auth/search/users"),readUser:N(t,"auth/read/user"),updateUser:M(t,"auth/update/user"),updateMyData:M(t,"auth/update/me"),revalidateReport:N(t,"revalidate/report"),revalidateUrl:N(t,"revalidate/url"),readPrivateBlocks:M(t,"read/blocks/private"),listTablerIcons:Mt(t,"tabler"),readTablerIcon:Dt(t,"tabler")}}function Hr(e,t){return +(e<t)-+(e>t)}function De(e,t,r="ordering"){return Hr(t[r],e[r])}function rt(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,l;for(;Math.abs((s-c)/s)>1e-5;)c=s,l=-(t+a)*(t+r+a)*e/(t+2*a)/(t+2*a+1),o=s+l*o,n=i+l*n,a+=1,l=a*(r-a)*e/(t+2*a-1)/(t+2*a),s=o+l*s,i=n+l*i,o/=i,n/=i,s/=i,i=1;return s/t}function Kr(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,l=Math.exp(rt(c)-rt(a)-rt(i)+i*Math.log(s)+a*Math.log(1-s));s<(i+1)/(c+2)?o=l*Ut(s,i,a):o=1-l*Ut(1-s,a,i),n=1-o;}return Math.round(n*1e5)/1e5}function Yr(e){return {.99999:15.137,.99:6.635,.95:3.841,.9:2.706}[e]}function Oe(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 Wr(e,t,r){let o=e/t,s=(100-r*100)/2,i,a;if(e===0)i=0;else {let c=o/2,l=0,d=o,u=s/100;for(;d-l>1e-5;)Oe(t,c,e,e)*.5+Oe(t,c,e+1,t)>u?(d=c,c=(l+c)/2):(l=c,c=(d+c)/2);i=c;}if(e===t)a=0;else {let c=(1+o)/2,l=o,d=1,u=s/100;for(;d-l>1e-5;)Oe(t,c,e,e)*.5+Oe(t,c,0,e-1)<u?(d=c,c=(l+c)/2):(l=c,c=(d+c)/2);a=c;}return {lci:i,uci:a}}function Qr(e,t){let r=e,o=t,n=r,s=o,i=95,a=.5,c=.5,d=(100-i)/2/100,u=n;for(;c>1e-5;)c/=2,Ue((1+u)*a/(1-a),u+1,1e10)+.5*Ue((1+u)*a/(1-a),u,u)>d?a-=c:a+=c;let f=(1+u)*a/(1-a)/s;for(a=.5,c=.5,d=(100-i)/2/100;c>1e-5;)c/=2,Ue((1+u)*a/(1-a),0,u-1)+.5*Ue((1+u)*a/(1-a),u,u)<d?a-=c:a+=c;let T=(1+u)*a/(1-a)/s;return {lci:f,uci:T}}function Ue(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:Kr,binP:Oe,computeMidP:Wr,criticalValue:Yr,smr:Qr};var Re={d3:{...Zr,...Jr,...Xr,...eo},d3plus:{assign:assign,closest:closest,date:date,formatAbbreviate:formatAbbreviate,merge:merge,strip:strip,titleCase:titleCase},stats:Ft};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 _e=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});_e.define({consumers:[_e],inputs:[_e]});var qt=new schema.Entity("variant"),$t=new schema.Entity("dimension",{variants:[qt]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),Vt=new schema.Entity("section",{blocks:[_e]}),lo=new schema.Entity("report",{dimensions:[$t],sections:[Vt]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(De):[]}}}),uo=new schema.Entity("formatter"),po={report:lo,section:Vt,block:_e,dimension:$t,variant:qt,formatter:uo};function Fe(e,t){let r=po[e];if(!r)throw new Error(`Invalid entity type: ${e}`);let{entities:o}=normalize(t,[r]);return {report:ge(o,"report"),dimension:ge(o,"dimension"),section:ge(o,"section"),block:ge(o,"block"),variant:ge(o,"variant"),formatter:ge(o,"formatter")}}function ge(e,t){return e.hasOwnProperty(t)?e[t]:{}}var zt=(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 yo={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{}}},J=createSlice({name:"records",initialState:yo,reducers:{set:(e,t)=>{let r=t.payload;return {entities:Ie(e.entities,r.entities||{}),requests:Ie(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=Fe(r.type,o),s=Ie(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=qe(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=qe(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(l=>l.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=Fe(r.type,r.data),n=Ie(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=Fe(r.type,o),s,i,a;if(r.type==="block"&&!Array.isArray(r.data)){let l=e.entities.block[r.data.id].inputs,d=n.block[r.data.id].inputs;s=l.length!==d.length,s&&(a=l.length>d.length,i=a?l.filter(u=>!d.includes(u))[0]:d.filter(u=>!l.includes(u))[0]),Object.values(n.block).forEach(u=>{u.block_input&&delete n.block[u.id];});}let c=Ie(e.entities,n);if(e.entities=c,r.type==="dimension"){let l=r.data;e.entities.report[l.report_id].dimensions=qe(c.report[l.report_id].dimensions,c.dimension);}else if(r.type==="section"&&!Array.isArray(r.data)){let l=r.data;e.entities.report[l.report_id].sections=qe(c.report[l.report_id].sections,c.section);}else if(r.type==="block"&&!Array.isArray(r.data)){let l=r.data;s&&(a?e.entities.block[i].consumers=e.entities.block[i].consumers.filter(d=>d!==l.id):e.entities.block[i].consumers.push(l.id));}}},setDeleteRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let{id:o,parentId:n,parentType:s}=r.data;if(delete e.entities[r.type][o],s&&n!=null){let i=`${r.type}s`;Ro(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 Ie(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function qe(e,t){return e.map(n=>t[n]).sort(De).map(n=>n.id)}function Ro(e,t){let r=e.indexOf(t);r>-1&&e.splice(r,1);}var te=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",$e=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[te];$e.includes(te)||$e.push(te);var Eo={localeDefault:te,locales:$e,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},Ve=createSlice({name:"status",initialState:Eo,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})}}),ze=Ve.actions;var bo={attributes:{},variables:{},status:{}},je=createSlice({name:"variables",initialState:bo,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}})}}),jt=je.actions;var Gt=e=>configureStore({reducer:{[J.name]:J.reducer,[Ve.name]:Ve.reducer,[je.name]:je.reducer},middleware(t){return t({thunk:{extraArgument:Le("/api/cms/")}})}}),Ht=createWrapper(Gt);var Xe={};zr(Xe,{addBlockToState:()=>Fn,cloneEntity:()=>Cr,createEntity:()=>vr,deleteEntity:()=>xr,deleteQueryParam:()=>Ln,readEntity:()=>Ne,readMember:()=>wr,readMetadata:()=>_n,readPrivateBlocks:()=>qn,readUser:()=>Nn,recalculateVariables:()=>Mr,removeBlocksFromState:()=>Un,reportSearch:()=>xn,resetSectionState:()=>Br,revalidateReport:()=>Vn,revalidateUrl:()=>$n,searchMember:()=>Pn,searchRegenerate:()=>Cn,searchRole:()=>Bn,searchUser:()=>wn,setCurrentLocale:()=>An,setPreferredLocale:()=>vn,setPreviews:()=>bn,setQueryParam:()=>On,setSectionState:()=>Ir,setStatus:()=>_r,updateEntity:()=>kr,updateMyData:()=>Dn,updateUser:()=>Mn,urlProxy:()=>In,variantValidateSlug:()=>kn});var{localeDefault:Co}=Y();function V(e){return {variables:e.variables||{},query:e.query||{},locale:e.locale||Co}}var oe={SINGLE:"single",MULTI:"multi"};var Oo={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"},nt={GENERATOR:"generator",RELATED:"related",VIZ:"visualization",SECTION_FLAG:"section_flag"},st="logic",g={...Oo,...nt};var wo=Io(process.env.REPORTS_LOGGING),ne=No;function No(e,t,r,o,n=void 0,s){let i={},a=[],{locale:c}=V(s);try{if(t){let l=new Proxy(console,{get(u,f){return Mo(f,"log","debug","info","warn","error")?(...E)=>{a.push(`${f} ${Date.now()} - ${E.map(T=>format(T)).join(" ")}`),wo&&u[f](...E);}:u[f]}}),d;return n?d=new Function(e,"console","libs","formatters","locale","variables",r)(t,l,Re,o,c,n):d=new Function(e,"console","libs","formatters","locale",r)(t,l,Re,o,c),typeof d=="object"&&Object.keys(d).length>0&&Object.assign(i,d),{vars:i,error:null,log:a,output:d}}return {vars:i,error:"Invalid API Link",log:a}}catch(l){return {vars:i,error:l.message,log:a}}}function Mo(e,...t){return t.includes(e)}function at(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 Ee=Do;function Do(e,t,r,o=!1){let{variables:n}=V(r);if(!e)return e;let s=/([A-z0-9]*)\{\{([^\}]+)\}\}/g;return e.replace(s,(a,c,l)=>{let d=f=>f;if(c){let f=c.replace(/^\w/g,E=>E.toLowerCase());f in t?d=t[f]:d=E=>`${c}${E}`;}let u=Array.isArray(n[l])?at(n[l]):n[l];if(u===void 0)return o?a:"N/A";try{return d(u,Re,t)}catch(f){return console.error(`Error using formatter ${d.name}
26
- `,`Error message: ${f.message}`),"N/A"}})}var it=(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]=Ee(s[i],t,r):Array.isArray(s[i])?s[i]=s[i].filter(n).map(a=>typeof a=="object"?it(a,t,r):typeof a=="string"?Ee(a,t,r):a):typeof s[i]=="object"&&s[i]!==null&&!(s[i]instanceof Date)&&(s[i]=it(s[i],t,r));}),s},He=it;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 ct=(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 lt(e,t,r,o,n=!1){let{variables:s}=V(o),i=He({logic:t},r,o).logic,a=ne("variables",s,i,r,void 0,o),{vars:c,log:l,error:d}=a,u=c.type||oe.SINGLE,f=c.component||"Selector",E=c.hideLabel||"false",T=c.resetSectionVars||"false",b=c.name||"Unlabeled Selector",m=Qt(c.options||[]),A=h=>u===oe.MULTI&&!Array.isArray(h)?[h]:h,k=c.defaultValue,_;if(k&&(k=A(k),ct(u,k,m)&&(_=k)),!_){let h=m&&m[0]&&m[0].id||m[0]||"";_=A(h);}if(n&&typeof window<"u"){let h=`selector${e}id`,I=new URLSearchParams(window.location.search),U=Object.fromEntries(I)[h];U&&!ct(u,U,m)&&U!==void 0&&(I.delete(h),window.history.replaceState(null,null,`?${I.toString()}`));}return {config:{name:b,type:u,options:m,defaultValue:_,component:f,hideLabel:E,resetSectionVars:T},log:l,error:d}}function ut(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 pt(e,t,r,o,n=!1){let{variables:s}=V(o),i=He({logic:t},r,o).logic,a=ne("variables",s,i,r,void 0,o),{vars:c,log:l,error:d}=a;if(n&&typeof window<"u"){let f=`multihierarchySelector${e}-value`,E=`multihierarchySelector${e}-type`,T=new URLSearchParams(window.location.search),b=Object.fromEntries(T),m=b[f],A=b[E];m&&m!==void 0&&A&&A!==void 0&&!ut(c.data,A,m)&&(T.delete(f),T.delete(E),window.history.replaceState(null,null,`?${T.toString()}`));}return {config:c,log:l,error:d}}var Uo=(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===oe.MULTI){let l=i?i.split(","):r.defaultValue,d=r.options.filter(u=>l.includes(u.id));return {[`selector${e}id`]:l,[`selector${e}label`]:(d||[]).map(u=>u.label)}}let a=i&&r.options.find(l=>l.id===i)?i:r.defaultValue,c=r.options.find(l=>l.id===a);return {[`selector${e}id`]:a,[`selector${e}label`]:c&&c.label||void 0}},Zt=Uo;var Fo=(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),l=s||a,d=i||c,u=l?l.split(","):r.defaultValue||[],f=d||r.defaultValueType||"",E=r.data?.filter(T=>u.includes(`${T[`${f} ID`]}`))||[];return {[`multihierarchySelector${e}id`]:u,[`multihierarchySelector${e}label`]:[...new Set((E||[]).map(T=>T[f]))],[`multihierarchySelector${e}type`]:f}},Jt=Fo;var{localeDefault:Xt,locales:qo}=Y(),$o=Object.values(nt),Vo=(e,t=Xt)=>e&&$o.includes(e.type)?{locale:st,locales:[st]}:{locale:t,locales:qo},er=(e,t=Xt)=>{if(!e)return {};let{locale:r}=Vo(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 Ke="SECTION_ALLOWED";function dt(e){return e.type===g.SECTION_FLAG&&e.inputs.length===0&&e.consumers.length===0?!!e.contentByLocale?.logic?.content?.logic?.includes(Ke):!1}var se=Io(process.env.NEXT_PUBLIC_REPORTS_DEBUG),Ko=process.env.REPORTS_ORIGIN||"";nr(Ye,{retries:3,retryDelay:nr.exponentialDelay,onRetry:(e,t,r)=>{console.log("Generator request failed. Retrying... Count: ",e),console.log("URL: ",r.url),console.log(t.message);}});Ye.interceptors.request.use(e=>({...e,requestStart:Date.now()}));Ye.interceptors.response.use(e=>({...e,requestDuration:new Date().getTime()-e.config.requestStart}),e=>Promise.reject(e));var Yo=(e,t,r)=>{let o=Ee(e,t,r);return o.startsWith("http")||(o=`${Ko}${o.startsWith("/")?"":"/"}${o}`),o},{urlProxy:Wo}=Le("/api/cms");function mt(e){return e.ok!==void 0}function ft(e){this.message=e,this.name="ApiFetchException";}var sr=process.env.NEXT_PUBLIC_REPORTS_API_FETCH_TIMEOUT||0;async function Qo(e,t,r="en",o){let n=Date.now(),s=e,i,c=new URL(e).searchParams;if(c.has("bespoke_slugs")){let u=new RegExp(`[?&]bespoke_slugs=${c.get("bespoke_slugs")}`,"g");s=s.replace(u,"");}let l=o?o.settings:{},d=!!(l&&l.useProxy&&l.useProxy==="true");if(typeof window=="object"&&d){let u=await Wo({url:s,timeout:sr});if(u.ok===!0)i=u.data;else throw new ft(u?.error)}else try{let u=await Ye({url:s,timeout:sr});if(u.status===200)u.headers["content-type"]==="text/csv"?i=csvParse(u.data):i=u.data;else throw new ft("No response")}catch(u){throw new ft(u.message)}if(c.has("bespoke_slugs")){let u=c.get("bespoke_slugs");if(u){let f=u.split(",");if(f.length===3){let[E,T,b]=f,m=rr(i,b);if(m&&Array.isArray(m)){let A=Array.from(new Set(m.map(S=>`${S[T]}`).filter(S=>!["","undefined"].includes(S)))),k=A.join("").length>2e3,_=await t({mode:k?"whole":"ids",ids:k?void 0:A,all:!1,locale:r,variant:[parseInt(E,10)],output:"lite",limit:A.length+1}).then(S=>{let h=[];return mt(S)?S.ok&&(h=S.data.results):h=S.results,h&&Array.isArray(h)?h:[]}).catch(S=>(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(S),[]));if(_){let S=Object.fromEntries(_.map(h=>[h.id,`/${h.variant_slug}/${h.slug}`]));m.map(h=>(h.bespoke_slug=S[h[T]]?S[h[T]]:null,h));}}}}}return {data:i,requestDuration:Date.now()-n}}function Zo(e){this.name="BlockException",this.message=e;}async function ar(e,t,r,o){let{locale:n,variables:s,query:i}=V(r),a=Xo(e,r,s,t),c=null,l=e.contentByLocale?.logic?.content?.api,d=null,u=null,f=null;if(!a)return {outputVariables:{},renderVariables:{},status:{allowed:!1,hiddenByCascade:e.id}};if(e.type===g.FALLBACK)return {outputVariables:{},renderVariables:{},status:{allowed:a,hiddenByCascade:e.id}};if(l){f=Yo(l,t,r);let S=f.split(or).filter(L=>L!==""),h=[];for(let L=0;L<S.length;L++){let U=S[L];new RegExp("^(?:[a-z+]+:)?//","i").test(f)||(U=`${process.env.NEXT_PUBLIC_REPORTS_BASE_URL}/${U}`.replace(/([^:]\/)\/+/g,"$1")),h.push(Qo(U,o,n,e).catch(X=>{throw new Zo(` Excecution of ${e.type}-${e.id} in section ${e.section_id} in report ${s.report_name} (${s.report_id}) failed.
27
- Error fetching ${U}.
28
- Message: ${X.message}.
29
- `)}));}let I=await Promise.all(h).catch(L=>L.message);if(typeof I=="string"&&I)return {outputVariables:{},renderVariables:{},status:{error:I}};c=I.length===1?I[0].data:I.map(L=>L.data),u=I.reduce((L,U)=>L+JSON.stringify(U.data).length/1024,0),d=Math.max(...I.map(L=>L.requestDuration));}if(e.type===g.SELECTOR){let{config:S,log:h,error:I}=lt(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:Zt(e.id,i,S),renderVariables:S,status:{log:h,error:I,allowed:a}}}if(e.type===g.MULTIHIERARCHY_SELECTOR){let{config:S,log:h,error:I}=pt(e.id,e.contentByLocale[n].content.logic,t,r,!0);return {outputVariables:Jt(e.id,i,S),renderVariables:S,status:{log:h,error:I,allowed:a}}}if(e.type===g.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:a}};if(e.type===g.RELATED){let S=e.contentByLocale?.logic?.content?.simple?.compare||"variant",h=e.contentByLocale?.logic?.content?.simple?.limit||4,I=Object.keys(s).filter(p=>p.startsWith("report_id")).map(p=>s[p]),L=Object.keys(s).filter(p=>p.startsWith("dimension_id")).map(p=>s[p]),U=Object.keys(s).filter(p=>p.startsWith("variant_id")).map(p=>s[p]),H=Object.keys(s).filter(p=>p.startsWith("id")).map(p=>s[p]);if(!H.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:!1}};let P=(await o({mode:"ids",locale:n,ids:H,output:"lite"}).then(p=>{let v=[];return mt(p)?p.ok&&(v=p.data.results):v=p.results,v&&Array.isArray(v)?v:[]}).catch(p=>(console.log("Error getting related members",p),[]))).map(p=>p.content_id),x={mode:"related",locale:n,related:h??4,current_ids:P,output:"full"};S&&(S==="report"?x.report_ids=I:S==="dimension"?x.dimension_ids=L:x.variant_ids=U);let w=await o(x).then(p=>{let v=[];return mt(p)?p.ok&&(v=p.data.results):v=p.results,v&&Array.isArray(v)?v:[]}).catch(p=>(console.log("Error getting related members",p),[]));return {outputVariables:{related_reports:w},renderVariables:{},status:{log:[],allowed:w.length>0}}}let{logic:E}=er(e,n),T=Ee(E,t,r),b=ne("resp",c||{},T,t,s,r),{vars:m,error:A,log:k}=b;if(typeof m!="object")return {outputVariables:{},renderVariables:{},status:{error:"Configuration did not return an object",log:k,duration:d,responseSize:u,resp:c,api:f,allowed:a}};let _=Object.keys(m).reduce((S,h)=>({...S,[`${e.type}${e.id}${h}`]:m[h]}),{});return {renderVariables:m,outputVariables:[g.GENERATOR,g.SECTION_FLAG].includes(e.type)?m:_,status:{log:k,error:A,duration:d,responseSize:u,resp:c,api:f,allowed:a}}}function Jo(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(l=>t[l].section_id===t[r].section_id||!n).forEach(l=>yt(l,t,o,!1,s,n,i));}})}var yt=(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 l=`${c}-${e}`;r.includes(l)||r.push(l),a.inputs.forEach(d=>yt(d,t,r,o,!1,s,i));}),a&&a.consumers.length&&n&&Jo(a,t,e,r,s,n,i),r},Xo=(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=V(t),{error:i,output:a}=ne("variables",r,e.settings.allowedLogic||"return false;",o,void 0,s);i||(n=!!a);}return n},ir=async(e,t,r,o,n,s={},i,a="section")=>{let c=a==="section",l=V(n),d=l.variables,u={...s.variables??{}},f={...s.status??{}},E=new Set,T=[],b={};r?b={...b,[r]:e[r]}:t?b=(t??[]).reduce((P,{id:x})=>({...P,...tr(x,e)}),{}):b=Object.values(e).filter(P=>dt(P)).reduce((P,x)=>({...P,[x.id]:x}),{});let m=Object.values(b).filter(P=>dt(P));if(m.length>0){se&&console.log("%crunConsumers: calculating section flags","color:purple",m.map(p=>p.id).join(", "));let P=Object.fromEntries(await Promise.all(m.map(async p=>[p.id,await ar(p,o,{...l,variables:d,locale:d.locale},i).then(v=>{let{outputVariables:de,status:O}=v;if(O.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${p.id}, Section ${p.section_id}) failed with message: ${O.error}. `);f[p.id]={allowed:!1,error:O.error},u[p.id]={};}return (p.consumers.length>0||[g.GENERATOR,g.SECTION_FLAG,g.RELATED].includes(p.type))&&O.allowed&&Object.keys(de).length>0?u[p.id]=de:u[p.id]={},a==="report"?(f[p.id]={allowed:O.allowed},[g.GENERATOR,g.SECTION_FLAG].includes(p.type)&&O.api&&(f[p.id].api=O.api)):f[p.id]=O,v})]))),w=Object.entries(P).filter(([p,v])=>!v.outputVariables[Ke]).map(([p])=>Number(p));E=new Set(w.map(p=>e[p].section_id)),Object.values(b).filter(p=>E.has(p.section_id)).forEach(p=>{T.push(p.id),delete b[p.id];}),se&&console.log("%crunConsumers: removing sections","color:purple",E.keys());}let A=E.size>0?Object.fromEntries(Object.entries(e).filter(([P,x])=>E?.has(x.section_id)?(T.push(x.id),!1):!0)):e;if(T.length>0&&(A=Object.fromEntries(Object.entries(A).map(([P,x])=>{let w={...x,inputs:x.inputs.filter(p=>!T.includes(p)),consumers:x.consumers.filter(p=>!T.includes(p))};return [P,w]}))),!r&&!t)return {variables:{...s.variables??{},...u},status:{...s.status??{},...f}};se&&console.log("%crunConsumers: running root blocks","color:purple",Object.keys(b));let k=Object.keys(b).reduce((P,x)=>{let w=new Date,p=yt(Number(x),A,[],!r,!0,c).map(O=>O.split("-")),de=(new Date().getTime()-w.getTime())/1e3;return se&&console.log(`%cResolved dependencies for ${x} (${de.toFixed(2)}s)`,"color:blue"),[...P,...p]},[]),_=new Date,S=Object.keys(b).reduce((P,x)=>P.includes(x)?[...P]:[x,...P],jo(k)),I=(new Date().getTime()-_.getTime())/1e3;se&&console.log(`%cResolved DAG (${I.toFixed(2)}s): `,"color:green",S);async function L(P,x){let w=new Map;for(let p of P){let v=x[p],O=Promise.all(v.inputs.filter(F=>P.includes(String(F))).map(F=>w.get(Number(F)))).then(async()=>{let F=v.inputs.reduce((Z,z)=>({...Z,...u[z]}),d),K=v.inputs.find(Z=>(v.settings?.ignoreCascade?v.settings?.ignoreCascade:[]).includes(Z)?!1:!f[Z].allowed||f[Z].hiddenByCascade);if(K){f[p]={allowed:!1,hiddenByCascade:f[K].hiddenByCascade||K},u[p]={};return}let fe=new Date,Ce=await ar(v,o,{...l,variables:F,locale:F.locale},i).then(({outputVariables:Z,status:z})=>{if(z.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${p}, Section ${v.section_id}) failed with message: ${z.error}. `);f[p]={allowed:!1,error:z.error},u[p]={};}(v.consumers.length>0||[g.GENERATOR,g.SECTION_FLAG,g.RELATED].includes(v.type))&&z.allowed&&Object.keys(Z).length>0?u[p]=Z:u[p]={},a==="report"?(f[p]={allowed:z.allowed},[g.GENERATOR,g.SECTION_FLAG].includes(v.type)&&z.api&&(f[p].api=z.api)):f[p]=z;}),Nt=(new Date().getTime()-fe.getTime())/1e3;return se&&console.log(`%cBlock ${v.id} resolved in ${Nt.toFixed(3)}s`,Nt>500?"color:red":"color:green"),Ce});w.set(Number(p),O);}await Promise.all(Array.from(w.values()));}let U=new Date;await L(S,A);let X=(new Date().getTime()-U.getTime())/1e3;return se&&console.log(`%cResolved Variables (${X.toFixed(2)}s): `,"color:green"),{variables:{...s.variables??{},...u},status:{...s.status??{},...f}}};function en(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 cr=en;function rn(){let{publicRuntimeConfig:e}=tn(),t=e.bespoke_report_env_vars||{};return {...Object.keys(t).reduce((r,o)=>(r[`ENV_${o}`]=t[o]||"N/A",r),{})}}var lr=rn;function ae(e,t,r){if(t==="createBulk"||t==="updateBulk"){let n=`${t}${ur(r)}`;return e[n]}let o=`${t}${ur(r)}`;return e[o]}function ur(e){return e[0].toUpperCase()+e.slice(1)}function D(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=pn[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 Te(e){return !!e&&!!e[q]}function ce(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)===dn}(e)||Array.isArray(e)||!!e[hr]||!!(!((t=e.constructor)===null||t===void 0)&&t[hr])||kt(e)||xt(e))}function we(e,t,r){r===void 0&&(r=!1),be(e)===0?(r?Object.keys:_t)(e).forEach(function(o){r&&typeof o=="symbol"||t(o,e[o],e);}):e.forEach(function(o,n){return t(n,o,e)});}function be(e){var t=e[q];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:kt(e)?2:xt(e)?3:0}function Tt(e,t){return be(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function on(e,t){return be(e)===2?e.get(t):e[t]}function Er(e,t,r){var o=be(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r;}function nn(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function kt(e){return ln&&e instanceof Map}function xt(e){return un&&e instanceof Set}function ie(e){return e.o||e.t}function Ct(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=fn(e);delete t[q];for(var r=_t(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),Lt(e)||Te(e)||!ce(e)||(be(e)>1&&(e.set=e.add=e.clear=e.delete=sn),Object.freeze(e),t&&we(e,function(r,o){return Pt(o,!0)},!0)),e}function sn(){D(2);}function Lt(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function W(e){var t=mn[e];return t||D(18,e),t}function pr(){return process.env.NODE_ENV==="production"||Se||D(0),Se}function Rt(e,t){t&&(W("Patches"),e.u=[],e.s=[],e.v=t);}function We(e){St(e),e.p.forEach(an),e.p=null;}function St(e){e===Se&&(Se=e.l);}function dr(e){return Se={p:[],l:Se,h:e,m:!0,_:0}}function an(e){var t=e[q];t.i===0||t.i===1?t.j():t.g=!0;}function gt(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[q].P&&(We(t),D(4)),ce(e)&&(e=Qe(t,e),t.l||Ze(t,e)),t.u&&W("Patches").M(r[q].t,e,t.u,t.s)):e=Qe(t,r,[]),We(t),t.u&&t.v(t.u,t.s),e!==Tr?e:void 0}function Qe(e,t,r){if(Lt(t))return t;var o=t[q];if(!o)return we(t,function(a,c){return fr(e,o,t,a,c,r)},!0),t;if(o.A!==e)return t;if(!o.P)return Ze(e,o.t,!0),o.t;if(!o.I){o.I=!0,o.A._--;var n=o.i===4||o.i===5?o.o=Ct(o.k):o.o,s=n,i=!1;o.i===3&&(s=new Set(n),n.clear(),i=!0),we(s,function(a,c){return fr(e,o,n,a,c,r,i)}),Ze(e,n,!1),r&&e.u&&W("Patches").N(o,r,e.u,e.s);}return o.o}function fr(e,t,r,o,n,s,i){if(process.env.NODE_ENV!=="production"&&n===r&&D(5),Te(n)){var a=Qe(e,n,s&&t&&t.i!==3&&!Tt(t.R,o)?s.concat(o):void 0);if(Er(r,o,a),!Te(a))return;e.m=!1;}else i&&r.add(n);if(ce(n)&&!Lt(n)){if(!e.h.D&&e._<1)return;Qe(e,n),t&&t.A.l||Ze(e,n);}}function Ze(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&Pt(t,r);}function ht(e,t){var r=e[q];return (r?ie(r):e)[t]}function mr(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 bt(e){e.P||(e.P=!0,e.l&&bt(e.l));}function Et(e){e.o||(e.o=Ct(e.t));}function At(e,t,r){var o=kt(t)?W("MapSet").F(t,r):xt(t)?W("MapSet").T(t,r):e.O?function(n,s){var i=Array.isArray(n),a={i:i?1:0,A:s?s.A:pr(),P:!1,I:!1,R:{},l:s,t:n,k:null,o:null,j:null,C:!1},c=a,l=vt;i&&(c=[a],l=Be);var d=Proxy.revocable(c,l),u=d.revoke,f=d.proxy;return a.k=f,a.j=u,f}(t,r):W("ES5").J(t,r);return (r?r.A:pr()).p.push(o),o}function cn(e){return Te(e)||D(22,e),function t(r){if(!ce(r))return r;var o,n=r[q],s=be(r);if(n){if(!n.P&&(n.i<4||!W("ES5").K(n)))return n.t;n.I=!0,o=yr(r,s),n.I=!1;}else o=yr(r,s);return we(o,function(i,a){n&&on(n.t,i)===a||Er(o,i,t(a));}),s===3?new Set(o):o}(e)}function yr(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return Ct(e)}var Rr,Se,Ot=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",ln=typeof Map<"u",un=typeof Set<"u",gr=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Tr=Ot?Symbol.for("immer-nothing"):((Rr={})["immer-nothing"]=!0,Rr),hr=Ot?Symbol.for("immer-draftable"):"__$immer_draftable",q=Ot?Symbol.for("immer-state"):"__$immer_state";var pn={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"},dn=""+Object.prototype.constructor,_t=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,fn=Object.getOwnPropertyDescriptors||function(e){var t={};return _t(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r);}),t},mn={},vt={get:function(e,t){if(t===q)return e;var r=ie(e);if(!Tt(r,t))return function(n,s,i){var a,c=mr(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||!ce(o)?o:o===ht(e.t,t)?(Et(e),e.o[t]=At(e.A.h,o,e)):o},has:function(e,t){return t in ie(e)},ownKeys:function(e){return Reflect.ownKeys(ie(e))},set:function(e,t,r){var o=mr(ie(e),t);if(o?.set)return o.set.call(e.k,r),!0;if(!e.P){var n=ht(ie(e),t),s=n?.[q];if(s&&s.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(nn(r,n)&&(r!==void 0||Tt(e.t,t)))return !0;Et(e),bt(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 ht(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,Et(e),bt(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=ie(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{writable:!0,configurable:e.i!==1||t!=="length",enumerable:o.enumerable,value:r[t]}},defineProperty:function(){D(11);},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){D(12);}},Be={};we(vt,function(e,t){Be[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)};}),Be.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&D(13),Be.set.call(this,e,t,void 0)},Be.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&D(14),vt.set.call(this,e[0],t,r,e[0])};var yn=function(){function e(r){var o=this;this.O=gr,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(b){var m=this;b===void 0&&(b=a);for(var A=arguments.length,k=Array(A>1?A-1:0),_=1;_<A;_++)k[_-1]=arguments[_];return c.produce(b,function(S){var h;return (h=s).call.apply(h,[m,S].concat(k))})}}var l;if(typeof s!="function"&&D(6),i!==void 0&&typeof i!="function"&&D(7),ce(n)){var d=dr(o),u=At(o,n,void 0),f=!0;try{l=s(u),f=!1;}finally{f?We(d):St(d);}return typeof Promise<"u"&&l instanceof Promise?l.then(function(b){return Rt(d,i),gt(b,d)},function(b){throw We(d),b}):(Rt(d,i),gt(l,d))}if(!n||typeof n!="object"){if((l=s(n))===void 0&&(l=n),l===Tr&&(l=void 0),o.D&&Pt(l,!0),i){var E=[],T=[];W("Patches").M(n,l,E,T),i(E,T);}return l}D(21,n);},this.produceWithPatches=function(n,s){if(typeof n=="function")return function(l){for(var d=arguments.length,u=Array(d>1?d-1:0),f=1;f<d;f++)u[f-1]=arguments[f];return o.produceWithPatches(l,function(E){return n.apply(void 0,[E].concat(u))})};var i,a,c=o.produce(n,s,function(l,d){i=l,a=d;});return typeof Promise<"u"&&c instanceof Promise?c.then(function(l){return [l,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){ce(r)||D(8),Te(r)&&(r=cn(r));var o=dr(this),n=At(this,r,void 0);return n[q].C=!0,St(o),n},t.finishDraft=function(r,o){var n=r&&r[q];process.env.NODE_ENV!=="production"&&(n&&n.C||D(9),n.I&&D(10));var s=n.A;return Rt(s,o),gt(void 0,s)},t.setAutoFreeze=function(r){this.D=r;},t.setUseProxies=function(r){r&&!gr&&D(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=W("Patches").$;return Te(r)?i(r,o):this.produce(r,function(a){return i(a,o)})},e}(),$=new yn,Rn=$.produce;$.produceWithPatches.bind($);$.setAutoFreeze.bind($);$.setUseProxies.bind($);$.applyPatches.bind($);$.createDraft.bind($);$.finishDraft.bind($);var Je=Rn;var G=J.actions,vr=Me({block:le("block"),dimension:le("dimension"),formatter:le("formatter"),report:le("report"),section:le("section"),variant:le("variant")}),Ne=Me({block:ue("block"),dimension:ue("dimension"),formatter:ue("formatter"),report:ue("report"),section:ue("section"),variant:ue("variant")}),kr=Me({block:Q("block"),dimension:Q("dimension"),formatter:Q("formatter"),report:Q("report"),section:Q("section"),variant:Q("variant")}),xr=Me({block:Ae("block"),dimension:Ae("dimension"),formatter:Ae("formatter"),report:Ae("report"),section:Ae("section"),variant:Ae("variant")}),Cr=Me({block:br("block"),section:br("section")});function Me(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 pe(e,t){return (r,o)=>{let s=o().records.requests[e][t],i=!s||s.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(G.setRequest({key:t,type:e,status:i}));}}function ve(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 le(e){return t=>{let r=Bt(e,t);return (o,n,s)=>(o(pe(e,r)),ae(s,"create",e)(t).then(a=>(a.ok===!0?o(G.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:a.data})):o(ve(e,r,a.status,a.error)),a)))}}function En(e){return t=>{let r=Bt(e,t[0]);return (o,n,s)=>(o(pe(e,r)),ae(s,"createBulk",e)(t).then(a=>(a.ok===!0?o(G.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:a.data})):o(ve(e,r,a.status,a.error)),a)))}}function Sr(e,t,r){return r.replace(new RegExp(e,"g"),t)}function Tn(e){return e.section_id!==void 0}function Sn(e){return e.report_id!==void 0}function br(e){return t=>{let{create:r}=t;return (o,n,s)=>le(e)(r)(o,n,s).then(async a=>{if(a.ok){let{data:c}=a,{id:l}=c,{update:d}=t,u=Or(e,{id:l});if(o(pe(e,`${u}`)),e==="block"&&Tn(r)){let f=Je(d,m=>{m.id=l;}),{contentByLocale:E}=f;E&&(f=Je(f,m=>{m.id=l,m.contentByLocale=Object.keys(E).reduce((A,k)=>{let _=E?E[k]:{};return A[k]={..._,id:l},A},{});}));let b=f.inputs?.map(m=>({type:m.type,id:m.id,inputAction:{operation:"create",input:{input_id:m.id,block_id:f.id}}}));return b&&b.length>0&&Ar(e)([f,...b])(o,n,s).then(()=>ue("section")({id:f.section_id,include:!0})(o,n,s).then(m=>(m.ok&&o(G.setRequest({key:u,type:e,status:"SUCCESS",data:m.data})),m))),Q(e)(f)(o,n,s).then(m=>(m.ok&&o(G.setRequest({key:u,type:e,status:"SUCCESS",data:m.data})),m))}if(e==="section"&&Sn(r)){let{id:f}=c,E=Je(d,m=>{m.id=f;}),{blocks:T}=E,b=T?.map(m=>({type:m.type,blockcol:m.blockcol,blockrow:m.blockrow,section_id:f,locales:Object.keys(m.contentByLocale).map(A=>A)}));return b&&T&&await En("block")(b)(o,n,s).then(m=>{if(m.ok){let A=m.data,k=[],_=A.map((S,h)=>{let L={...S},U=L.id,H=T[h];H.contentByLocale&&(L.contentByLocale=Object.keys(H.contentByLocale).reduce((O,F)=>{let K=H.contentByLocale[F];return O[F]={...K,content:{...K.content},id:L.id},O},{}));let{settings:X}=H,{contentByLocale:P,id:x}=L;L.settings=X;let w={id:x,contentByLocale:P,settings:X};return H.inputs.map(O=>O.id).reduce((O,F)=>{let K=T.findIndex(fe=>fe.id===F);return [...O,K]},[]).map(O=>({...A[O],originalBlock:T[O]})).forEach(O=>{let{id:F,type:K,originalBlock:fe}=O;if([g.SELECTOR,g.VIZ].includes(K)){if(w.contentByLocale?.logic?.content?.api){let Ce=w.contentByLocale?.logic.content.api;w.contentByLocale.logic.content.api=Sr(`(selector${fe.id}id)`,`selector${F}id`,Ce);}if(w.contentByLocale?.logic?.content?.logic){let Ce=w.contentByLocale.logic.content.logic;w.contentByLocale.logic.content.logic=Sr(`(selector${fe.id}id)`,`selector${F}id`,Ce);}}k.push({id:F,inputAction:{operation:"create",input:{input_id:F,block_id:U}}});}),w});return Ar("block")([..._,...k])(o,n,s)}}),Q(e)(E)(o,n,s).then(m=>(m.ok&&o(G.setRequest({key:u,type:e,status:"SUCCESS",data:m.data})),m))}return Q(e)({...d,id:c.id})(o,n,s)}})}}function ue(e){return t=>{let r=Pr(e,t);return (o,n,s)=>(o(pe(e,r)),ae(s,"read",e)(t).then(a=>(a.ok===!0?o(G.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:a.data})):o(ve(e,r,a.status,a.error)),a)))}}function Q(e){return t=>{let r=wt(e,t);return (o,n,s)=>(o(pe(e,r)),ae(s,"update",e)(t).then(a=>(a.ok===!0?o(G.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:a.data})):o(ve(e,r,a.status,a.error)),a)))}}function Ar(e){return t=>{let r=wt(e,t[0]);return (o,n,s)=>(o(pe(e,r)),ae(s,"updateBulk",e)(t).then(a=>(a.ok===!0?o(G.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:a.data})):o(ve(e,r,a.status,a.error)),a)))}}function Ae(e){return t=>{let r=Lr(e,t);return (o,n,s)=>(o(pe(e,r)),ae(s,"delete",e)(t).then(a=>{a.ok===!0?o(G.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:a.data})):o(ve(e,r,a.status,a.error));}))}}function Bt(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 wt(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function Lr(e,t){return `delete(${e}, ${t})`}function Or(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:_r,setPreviews:bn,setSectionState:Ir,resetSectionState:Br,setCurrentLocale:An,setPreferredLocale:vn}=ze;function kn(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 xn(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 Cn(){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 wr(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 Pn(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 Nr(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(_r(a)),n.activeSection&&t(Mr(e,{query:i}));}function Ln(e,t){return async(r,o)=>Nr(e,r,o,{query:{[t]:void 0}})}function On(e,t,r){return async(o,n)=>Nr(e,o,n,{query:{[t]:r}})}function Mr(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:l}=zt(n.status,t),{sid:d,bid:u,previews:f,query:E}=c;Object.keys(l).length&&r(ze.setStatus(l));let T={...cr(f),locale:s,...lr()},b={variables:T,query:E,locale:s},m=n.records.entities.section[d],A=async k=>r(wr(k));try{let k=await ir(i,m&&[m],u,a,b,void 0,A),{variables:_,status:S}=k;r(jt.setVariableChange({attributes:T,variables:_,status:S}));}catch(k){console.log("Error in runConsumers client side: recalculateVariables",k);}}}function _n(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 In(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 Bn(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function wn(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 Nn(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 Mn({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 Dn(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 Un(e){let{removeBlocks:t}=J.actions;return async r=>{await r(t(e));}}function Fn(e){let{addBlocks:t}=J.actions;return async r=>{await r(t(e));}}function qn(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 $n(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 Vn(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}=Y(),Gn={pathSegment:"path",formatterFunctions:jn.reduce((e,t)=>({...e,[t]:{}}),{}),profilePrefix:"path",siteProps:{}};createContext(Gn);Y();var et=useDispatch,tt=useSelector;
26
+ var no=Object.defineProperty;var so=(e,t)=>{for(var r in t)no(e,r,{get:t[r],enumerable:!0});};function ee(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,wrapper:n.wrapper,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 U(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>ee(e,{...o,method:"GET",params:r?r(n):n})}function V(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>ee(e,{...o,method:"POST",data:r?r(n):n})}function ie(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>ee(e,{...o,method:"DELETE",params:r?r(n):n})}function Le(e,t){return r=>ee(e,{method:"POST",url:`images/save/${t}`,params:{prompt:r.prompt,provider:t}})}function Ne(e,t){return r=>ee(e,{method:"GET",url:`images/search/${t}`,params:{prompt:r.prompt,page:r.page,provider:t}})}function zt(e,t){return ()=>ee(e,{method:"GET",url:`list/icons/${t}`,params:{provider:t}})}function jt(e,t){return r=>ee(e,{method:"GET",url:`read/icons/${t}/icon.svg`,params:{name:r.name}})}var fe=e=>({id:e}),io=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 Me(e){let t=nt.create({baseURL:e});return {createBulkBlock:V(t,"create/bulk/block"),createBlock:V(t,"create/block"),createDimension:V(t,"create/dimension"),createFormatter:V(t,"create/formatter"),createReport:V(t,"create/report"),createSection:V(t,"create/section"),createVariant:V(t,"create/variant"),createDatasource:V(t,"create/datasource"),deleteBlock:ie(t,"delete/block",fe),deleteDimension:ie(t,"delete/dimension",fe),deleteFormatter:ie(t,"delete/formatter",fe),deleteReport:ie(t,"delete/report",fe),deleteSection:ie(t,"delete/section",fe),deleteVariant:ie(t,"delete/variant",fe),deleteDatasource:ie(t,"delete/datasource",fe),readBlock:U(t,"read/block"),readDimension:U(t,"read/dimension"),readFormatter:U(t,"read/formatter"),readReport:U(t,"read/report"),readSection:U(t,"read/section"),readVariant:U(t,"read/variant"),readDatasource:U(t,"read/datasource"),updateBulkBlock:V(t,"update/bulk/block"),updateBlock:V(t,"update/block"),updateDimension:V(t,"update/dimension"),updateFormatter:V(t,"update/formatter"),updateReport:V(t,"update/report"),updateSection:V(t,"update/section"),updateVariant:V(t,"update/variant"),updateDatasource:V(t,"update/datasource"),searchReport:U(t,"search/reports"),validateVariantSlug:U(t,"validate/variant"),readMember:U(t,"read/members",io),readMemberImage:U(t,{url:"member/image",responseType:"blob"}),searchMember:U(t,"search/members"),updateMember:U(t,"update/members"),imageLocalSearch:Ne(t,"local"),imageLocalSave:Le(t,"local"),imageFlickrSearch:Ne(t,"flickr"),imageFlickrSave:Le(t,"flickr"),imageUnsplashSearch:Ne(t,"unsplash"),imageUnsplashSave:Le(t,"unsplash"),imageUploadSave:Le(t,"upload"),imageAdobeSearch:Ne(t,"adobe"),imageAdobeSave:Le(t,"adobe"),readMetadata:U(t,"read/metadata"),regenerateSearch:V(t,"search/regenerate"),urlProxy:U(t,"url/proxy"),searchRole:U(t,"auth/search/roles"),searchUser:U(t,"auth/search/users"),readUser:U(t,"auth/read/user"),updateUser:V(t,"auth/update/user"),updateMyData:V(t,"auth/update/me"),revalidateReport:U(t,"revalidate/report"),revalidateUrl:U(t,"revalidate/url"),readPrivateBlocks:V(t,"read/blocks/private"),listTablerIcons:zt(t,"tabler"),readTablerIcon:jt(t,"tabler"),readEnvSecrets:U(t,"read/secrets")}}function co(e,t){return +(e<t)-+(e>t)}function Ke(e,t,r="ordering"){return co(t[r],e[r])}function pt(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 Gt(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 uo(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(pt(c)-pt(i)-pt(a)+a*Math.log(s)+i*Math.log(1-s));s<(a+1)/(c+2)?o=u*Gt(s,a,i):o=1-u*Gt(1-s,i,a),n=1-o;}return Math.round(n*1e5)/1e5}function lo(e){return {.99999:15.137,.99:6.635,.95:3.841,.9:2.706}[e]}function De(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 po(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,l=o,p=s/100;for(;l-u>1e-5;)De(t,c,e,e)*.5+De(t,c,e+1,t)>p?(l=c,c=(u+c)/2):(u=c,c=(l+c)/2);a=c;}if(e===t)i=0;else {let c=(1+o)/2,u=o,l=1,p=s/100;for(;l-u>1e-5;)De(t,c,e,e)*.5+De(t,c,0,e-1)<p?(l=c,c=(u+c)/2):(u=c,c=(l+c)/2);i=c;}return {lci:a,uci:i}}function fo(e,t){let r=e,o=t,n=r,s=o,a=95,i=.5,c=.5,l=(100-a)/2/100,p=n;for(;c>1e-5;)c/=2,Ye((1+p)*i/(1-i),p+1,1e10)+.5*Ye((1+p)*i/(1-i),p,p)>l?i-=c:i+=c;let d=(1+p)*i/(1-i)/s;for(i=.5,c=.5,l=(100-a)/2/100;c>1e-5;)c/=2,Ye((1+p)*i/(1-i),0,p-1)+.5*Ye((1+p)*i/(1-i),p,p)<l?i-=c:i+=c;let b=(1+p)*i/(1-i)/s;return {lci:d,uci:b}}function Ye(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 Ht={binomialCdf:uo,binP:De,computeMidP:po,criticalValue:lo,smr:fo};var _e={d3:{...mo,...yo,...Ro,...go},d3plus:{assign:assign,closest:closest,date:date,formatAbbreviate:formatAbbreviate,merge:merge,strip:strip,titleCase:titleCase},stats:Ht};var Kt={jwt:xo};var Wt=(e,t={})=>{let r={libs:Kt,...t};function o(s){return Function("globals",...s.vars,`with (globals) { ${s.logic} }`).bind(r,r)}function n(s){if(s.vars&&s.logic)return o(s);for(let a in s)Array.isArray(s[a])?s[a]=s[a].map(i=>isObject(i)?n(i):i):isObject(s[a])&&(s[a]=n(s[a]));return s}return n(e)};var Co=()=>{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}},re=Co;re();var Ue=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});Ue.define({consumers:[Ue],inputs:[Ue]});var Qt=new schema.Entity("variant"),Xt=new schema.Entity("dimension",{variants:[Qt]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),Zt=new schema.Entity("section",{blocks:[Ue]}),Po=new schema.Entity("report",{dimensions:[Xt],sections:[Zt]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(Ke):[]}}}),Lo=new schema.Entity("formatter"),_o=new schema.Entity("datasource"),Oo={report:Po,section:Zt,block:Ue,dimension:Xt,variant:Qt,formatter:Lo,datasource:_o};function We(e,t){let r=Oo[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"),datasource:me(o,"datasource")}}function me(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||{},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 wo={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{},datasource:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{},datasource:{}}},ae=createSlice({name:"records",initialState:wo,reducers:{set:(e,t)=>{let r=t.payload;return {entities:Fe(e.entities,r.entities||{}),requests:Fe(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=We(r.type,o),s=Fe(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=Qe(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=Qe(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=We(r.type,r.data),n=Fe(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=We(r.type,o),s,a,i;if(r.type==="block"&&!Array.isArray(r.data)){let u=e.entities.block[r.data.id].inputs,l=n.block[r.data.id].inputs;s=u.length!==l.length,s&&(i=u.length>l.length,a=i?u.filter(p=>!l.includes(p))[0]:l.filter(p=>!u.includes(p))[0]),Object.values(n.block).forEach(p=>{p.block_input&&delete n.block[p.id];});}let c=Fe(e.entities,n);if(e.entities=c,r.type==="dimension"){let u=r.data;e.entities.report[u.report_id].dimensions=Qe(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=Qe(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(l=>l!==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`;No(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}}}},removeDataSourceLogic:e=>{let t={...e.entities.datasource};Object.keys(t).forEach(r=>{e.entities.datasource[r].content.useProxy&&(delete e.entities.datasource[r].content.logic,delete e.entities.datasource[r].content.testUrl,delete e.entities.datasource[r].content.access);});}},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:{},datasource:{}},tree:r.tree}}}});function Fe(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function Qe(e,t){return e.map(n=>t[n]).sort(Ke).map(n=>n.id)}function No(e,t){let r=e.indexOf(t);r>-1&&e.splice(r,1);}var Re=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",Xe=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[Re];Xe.includes(Re)||Xe.push(Re);var Uo={localeDefault:Re,locales:Xe,currentLocale:Re,preferredLocale:Re,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:Uo,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})}}),Oe=Ze.actions;var qo={attributes:{},variables:{},status:{}},Je=createSlice({name:"variables",initialState:qo,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}})}}),er=Je.actions;var tr=()=>configureStore({reducer:{[ae.name]:ae.reducer,[Ze.name]:Ze.reducer,[Je.name]:Je.reducer},middleware(e){return e({thunk:{extraArgument:Me("/api/cms/")}})}}),rr=createWrapper(tr);var ut={};so(ut,{addBlockToState:()=>cs,addRunConsumersRunning:()=>Kr,cloneEntity:()=>Vr,createEntity:()=>Dr,deleteEntity:()=>Fr,deleteQueryParam:()=>Zn,readEntity:()=>ze,readEnvSecrets:()=>ds,readMember:()=>Wr,readMetadata:()=>es,readPrivateBlocks:()=>us,readUser:()=>ns,recalculateVariables:()=>Xr,removeBlocksFromState:()=>is,removeDataSourceLogic:()=>fs,removeRunConsumersRunning:()=>Yr,reportSearch:()=>Wn,resetSectionState:()=>Hr,revalidateReport:()=>ps,revalidateUrl:()=>ls,searchMember:()=>Xn,searchRegenerate:()=>Qn,searchRole:()=>rs,searchUser:()=>os,setCurrentLocale:()=>Hn,setPreferredLocale:()=>Kn,setPreviews:()=>Gn,setQueryParam:()=>Jn,setSectionState:()=>Gr,setStatus:()=>jr,updateEntity:()=>Ur,updateMyData:()=>as,updateUser:()=>ss,urlProxy:()=>ts,variantValidateSlug:()=>Yn});var{localeDefault:Ho}=re();function J(e){return {variables:e.variables||{},query:e.query||{},locale:e.locale||Ho}}var Ee={SINGLE:"single",MULTI:"multi"};var dt={ALLOWED:"allowed",ALLOWED_LOGIC:"allowedLogic",IGNORE_CASCADE:"ignoreCascade"},Ko={ACCESS:"access",ACCESS_LOGIC:"accessLogic"},Yo={DISABLED:"disabled"},Wo={FALLBACK:"fallback"};var Qo={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"},ft={GENERATOR:"generator",RELATED:"related",VIZ:"visualization",SECTION_FLAG:"section_flag"},mt="logic",S={...Qo,...ft},ar={NAME:"name",DESCRIPTION:"description",...dt,...Ko,...Wo,...Yo};var en=Zo(process.env.REPORTS_LOGGING),he=tn;function tn(e,t,r,o,n=void 0,s){let a={},i=[],{locale:c}=J(s);try{if(t){let u=new Proxy(console,{get(p,d){return rn(d,"log","debug","info","warn","error")?(...f)=>{i.push(`${d} ${Date.now()} - ${f.map(b=>format(b)).join(" ")}`),en&&p[d](...f);}:p[d]}}),l;return n?l=new Function(e,"console","libs","formatters","locale","variables",r)(t,u,_e,o,c,n):l=new Function(e,"console","libs","formatters","locale",r)(t,u,_e,o,c),typeof l=="object"&&Object.keys(l).length>0&&Object.assign(a,l),{vars:a,error:null,log:i,output:l}}return {vars:a,error:"Invalid API Link",log:i}}catch(u){return {vars:a,error:u.message,log:i}}}function rn(e,...t){return t.includes(e)}function yt(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 Se=on;function on(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 l=d=>d;if(c){let d=c.replace(/^\w/g,f=>f.toLowerCase());d in t?l=t[d]:l=f=>`${c}${f}`;}let p=Array.isArray(n[u])?yt(n[u]):n[u];if(p===void 0)return o?i:"N/A";try{return l(p,_e,t)}catch(d){return console.error(`Error using formatter ${l.name}
27
+ `,`Error message: ${d.message}`),"N/A"}})}var Rt=(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]=Se(s[a],t,r):Array.isArray(s[a])?s[a]=s[a].filter(n).map(i=>typeof i=="object"?Rt(i,t,r):typeof i=="string"?Se(i,t,r):i):typeof s[a]=="object"&&s[a]!==null&&!(s[a]instanceof Date)&&(s[a]=Rt(s[a],t,r));}),s},tt=Rt;var ir=e=>Array.isArray(e)?e.map(t=>typeof t=="string"?{allowed:"always",label:t,id:t}:{allowed:"always",label:t.id,...t}):[];var nn=(e,t,r)=>{if(!r)return !1;if(e===Ee.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))},gt=nn;function Et(e,t,r,o,n=!1){let{variables:s}=J(o),a=tt({logic:t},r,o).logic,i=he("variables",s,a,r,void 0,o),{vars:c,log:u,error:l}=i,p=c.type||Ee.SINGLE,d=c.component||"Selector",f=c.hideLabel||"false",b=c.resetSectionVars||"false",T=c.name||"Unlabeled Selector",m=ir(c.options||[]),L=_=>p===Ee.MULTI&&!Array.isArray(_)?[_]:_,v=c.defaultValue,x;if(v&&(v=L(v),gt(p,v,m)&&(x=v)),!x){let _=m&&m[0]&&m[0].id||m[0]||"";x=L(_);}if(n&&typeof window<"u"){let _=`selector${e}id`,K=new URLSearchParams(window.location.search),w=Object.fromEntries(K)[_];w&&!gt(p,w,m)&&w!==void 0&&(K.delete(_),window.history.replaceState(null,null,`?${K.toString()}`));}return {config:{name:T,type:p,options:m,defaultValue:x,component:d,hideLabel:f,resetSectionVars:b},log:u,error:l}}function ht(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 St(e,t,r,o,n=!1){let{variables:s}=J(o),a=tt({logic:t},r,o).logic,i=he("variables",s,a,r,void 0,o),{vars:c,log:u,error:l}=i;if(n&&typeof window<"u"){let d=`multihierarchySelector${e}-value`,f=`multihierarchySelector${e}-type`,b=new URLSearchParams(window.location.search),T=Object.fromEntries(b),m=T[d],L=T[f];m&&m!==void 0&&L&&L!==void 0&&!ht(c.data,L,m)&&(b.delete(d),b.delete(f),window.history.replaceState(null,null,`?${b.toString()}`));}return {config:c,log:u,error:l}}var sn=(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===Ee.MULTI){let u=a?a.split(","):r.defaultValue,l=r.options.filter(p=>u.includes(p.id));return {[`selector${e}id`]:u,[`selector${e}label`]:(l||[]).map(p=>p.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}},cr=sn;var an=(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,l=a||c,p=u?u.split(","):r.defaultValue||[],d=l||r.defaultValueType||"",f=r.data?.filter(b=>p.includes(`${b[`${d} ID`]}`))||[];return {[`multihierarchySelector${e}id`]:p,[`multihierarchySelector${e}label`]:[...new Set((f||[]).map(b=>b[d]))],[`multihierarchySelector${e}type`]:d}},ur=an;var{localeDefault:lr,locales:cn}=re(),un=Object.values(ft),ln=(e,t=lr)=>e&&un.includes(e.type)?{locale:mt,locales:[mt]}:{locale:t,locales:cn},pr=(e,t=lr)=>{if(!e)return {};let{locale:r}=ln(e,t);return e.contentByLocale?.[r]?.content};function pn(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 dr=pn;var fr=(e,t)=>t&&typeof t=="string"?t.split(".").reduce((r,o)=>r[o],e):e;var mr="|||";var yr="SECTION_ALLOWED";function bt(e){return e.type===S.SECTION_FLAG&&e.inputs.length===0&&e.consumers.length===0}function fn(){let{publicRuntimeConfig:e}=dn(),t=e.bespoke_report_env_vars||{};return {...Object.keys(t).reduce((r,o)=>(r[`ENV_${o}`]=t[o]||"N/A",r),{})}}var Ve=fn;function mn(){return typeof process>"u"?{}:Object.entries(process.env).filter(([e])=>e.startsWith("BESPOKE_SECRET_")).reduce((e,[t,r])=>({...e,[t.replace("BESPOKE_SECRET_","ENV_SECRET_")]:r}),{})}var Rr=mn;var ce=Zo(process.env.NEXT_PUBLIC_REPORTS_DEBUG),En=process.env.REPORTS_ORIGIN||"",hn=process.env.NEXT_PUBLIC_REPORTS_AXIOS_RETRIES,Sr=5;try{Sr=parseInt(`${hn||5}`,10);}catch(e){console.error("Error setting axios retries NEXT_PUBLIC_REPORTS_AXIOS_RETRIES defaults to 5",e);}gr(nt,{retries:Sr,retryDelay:gr.exponentialDelay,onRetry:(e,t,r)=>{console.error("Generator request failed. Retrying... Count: ",e),console.error("URL: ",r.url),console.error(t.message);}});nt.interceptors.request.use(e=>({...e,requestStart:Date.now()}));nt.interceptors.response.use(e=>({...e,requestDuration:new Date().getTime()-e.config.requestStart}),e=>Promise.reject(e));var Sn=(e,t,r)=>{let o=Se(e,t,r);return o.startsWith("http")||(o=`${En}${o.startsWith("/")?"":"/"}${o}`),o},{urlProxy:bn}=Me("/api/cms");function ot(e){return e.ok!==void 0}function rt(e){this.message=e,this.name="ApiFetchException";}var Er=process.env.NEXT_PUBLIC_REPORTS_API_FETCH_TIMEOUT||0;async function Tn(e,t,r="en",o,n){let s=Date.now(),a=e,i,c=Ve(),u=Rr(),l={envs:{...c,...u}},p=new URL(e),d=new URLSearchParams(p.searchParams.toString());d.has("bespoke_slugs")&&(p.searchParams.delete("bespoke_slugs"),a=p.toString());let f={datasource:void 0};o.find(v=>{if(!v.content?.pattern)return !1;try{let x=new RegExp(v.content.pattern,"gm");return x.test(a)?(f.datasource=v,!0):x.test(a)}catch{return !1}});let b=n?n.settings:{},T=!!(b&&b.useProxy&&b.useProxy==="true"),m=f.datasource&&typeof f.datasource.content.useProxy=="boolean"?f.datasource.content.useProxy:!1,L=`${process.env.NEXT_PUBLIC_REPORTS_BASE_URL}/api/cms/url/proxy?url=${encodeURIComponent(a)}`;if(typeof window=="object"&&(T||m)){let v=await bn({url:a,timeout:Er});if(v.ok===!0)i=v.data;else throw new rt(v?.error)}else try{let x={url:a,timeout:Er};if(f.datasource){let K=await Wt({vars:["url","libs"],logic:f.datasource.content.logic},l)(a);if(K.axiosConfig)x=K.axiosConfig;else throw new rt(`AxiosConfig is missing in Data Source ${f.datasource.name} (ID: ${f.datasource.id}).`)}let $=await nt(x);if($.status===200)$.headers["content-type"]==="text/csv"?i=csvParse($.data):i=$.data;else throw new rt("No response for: "+a)}catch(v){throw new rt(v.message)}if(d.has("bespoke_slugs")){let v=d.get("bespoke_slugs");if(v){let x=v.split(",");if(x.length===3){let[$,_,K]=x,O=fr(i,K);if(O&&Array.isArray(O)){let w=Array.from(new Set(O.map(C=>`${C[_]}`).filter(C=>!["","undefined"].includes(C))));if(w.length>0){let C=w.join("").length>2e3,P=await t({mode:C?"whole":"ids",ids:C?void 0:w,all:!1,locale:r,variant:[parseInt($,10)],output:"lite",limit:w.length+1,allowNulls:!0}).then(N=>{let F=[];return ot(N)?N.ok&&(F=N.data.results):F=N.results,F&&Array.isArray(F)?F:[]}).catch(N=>(console.error(`Error hydrating slugs for Variant: ${$}, Key: ${_}, Accessor: ${K}`),console.error(` Url ${e}`),n&&console.error(` From Section ${n.section_id} and Block ${n.id}`),console.error(N),[]));if(P){let N=Object.fromEntries(P.map(F=>[F.id,`/${F.variant_slug}/${F.slug}`]));O.map(F=>(F.bespoke_slug=N[F[_]]?N[F[_]]:null,F));}}}}}}return {data:i,requestDuration:Date.now()-s,finalUrl:m||T?L:a,apiDataSource:f.datasource?f.datasource:!1}}function An(e){this.name="BlockException",this.message=e;}async function hr(e,t,r,o,n){let{locale:s,variables:a,query:i}=J(r),c=xn(e,r,a,t),u=null,l=e.contentByLocale?.logic?.content?.api,p=null,d=null,f=null,b=null,T=null;if(!c)return {outputVariables:{},renderVariables:{},status:{allowed:!1,hiddenByCascade:e.id}};if(e.type===S.FALLBACK)return {outputVariables:{},renderVariables:{},status:{allowed:c,hiddenByCascade:e.id}};if(l){f=Sn(l,t,r);let O=f.split(mr).filter(P=>P!==""),w=[];for(let P=0;P<O.length;P++){let N=O[P];new RegExp("^(?:[a-z+]+:)?//","i").test(f)||(N=`${process.env.NEXT_PUBLIC_REPORTS_BASE_URL}/${N}`.replace(/([^:]\/)\/+/g,"$1")),w.push(Tn(N,o,s,n,e).catch(H=>{throw new An(` Excecution of ${e.type}-${e.id} in section ${e.section_id} in report ${a.report_name} (${a.report_id}) failed.
28
+ Error fetching ${N}.
29
+ Message: ${H.message}.
30
+ `)}));}let C=await Promise.all(w).catch(P=>P.message);if(typeof C=="string"&&C)return {outputVariables:{},renderVariables:{},status:{error:C}};u=C.length===1?C[0].data:C.map(P=>P.data),d=C.reduce((P,N)=>P+JSON.stringify(N.data).length/1024,0),p=Math.max(...C.map(P=>P.requestDuration)),b=C.map(P=>P.apiDataSource?`${P.apiDataSource.name} (${P.apiDataSource.id})`:!1),T=C.map(P=>P.finalUrl);}if(e.type===S.SELECTOR){let{config:O,log:w,error:C}=Et(e.id,e.contentByLocale[s].content.logic,t,r,!0);return {outputVariables:cr(e.id,i,O),renderVariables:O,status:{log:w,error:C,allowed:c}}}if(e.type===S.MULTIHIERARCHY_SELECTOR){let{config:O,log:w,error:C}=St(e.id,e.contentByLocale[s].content.logic,t,r,!0);return {outputVariables:ur(e.id,i,O),renderVariables:O,status:{log:w,error:C,allowed:c}}}if(e.type===S.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:c}};if(e.type===S.RELATED){let O=e.contentByLocale?.logic?.content?.simple?.compare||"variant",w=e.contentByLocale?.logic?.content?.simple?.limit||4,C=Object.keys(a).filter(R=>R.startsWith("report_id")).map(R=>a[R]),P=Object.keys(a).filter(R=>R.startsWith("dimension_id")).map(R=>a[R]),N=Object.keys(a).filter(R=>R.startsWith("variant_id")).map(R=>a[R]),F=Object.keys(a).filter(R=>R.startsWith("id")).map(R=>a[R]);if(!F.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:!1}};let H=await Promise.all(F.map((R,h)=>o({mode:"ids",locale:s,ids:[R],output:"lite",variant:[N[h]]}))).then(R=>R.flatMap(h=>{let A=[];return ot(h)?h.ok&&(A=h.data.results):A=h.results,A&&Array.isArray(A)?A:[]})).catch(R=>(console.error("Error getting related members",R),[]));if(P.length>1){let R=Object.keys(a).filter(I=>I.startsWith("variant_slug")).map(I=>a[I]),h=H.map((I,z)=>{let D={mode:"related",locale:s,related:w??4,current_ids:[I.content_id],output:"full",variant_ids:[I.variant_id]};return z===0&&(D.include_ids=[I.content_id]),D}),A=await Promise.all(h.map(I=>o(I))).then(I=>I.flatMap(z=>{let D=[];return ot(z)?z.ok&&(D=z.data.results):D=z.results,D&&Array.isArray(D)?D:[]})).catch(I=>(console.error("Error getting related members",I),[])),pe=A.reduce((I,z)=>{let D=z.variant_slug;return I[D]||(I[D]=[]),I[D].push(z),I},{}),He=[],G=Object.keys(pe),se=[{combination:[],index:0}];for(;se.length>0;){let I=se.pop();if(!I)continue;let{combination:z,index:D}=I;if(D===G.length){He.push(z);continue}let de=G[D],W=pe[de];for(let Q of W)se.push({combination:[...z,Q],index:D+1});}return {outputVariables:{related_reports:He.map(I=>{let z=I.sort((D,de)=>R.indexOf(D.variant_slug)-R.indexOf(de.variant_slug));return {entities:z,link:"/"+z.map(D=>`${D.variant_slug}/${D.slug}`).join("/")}})},renderVariables:{},status:{log:[],allowed:A.length>0}}}let k=H.map(R=>R.content_id),M={mode:"related",locale:s,related:w??4,current_ids:k,output:"full"};O&&(O==="report"?M.report_ids=C:O==="dimension"?M.dimension_ids=P:M.variant_ids=N);let Y=await o(M).then(R=>{let h=[];return ot(R)?R.ok&&(h=R.data.results):h=R.results,h&&Array.isArray(h)?h:[]}).catch(R=>(console.error("Error getting related members",R),[]));return {outputVariables:{related_reports:Y.map(R=>({entities:[R],link:`/${R.variant_slug}/${R.slug}`}))},renderVariables:{},status:{log:[],allowed:Y.length>0}}}let{logic:m}=pr(e,s),L=Se(m,t,r),v=he("resp",u||{},L,t,a,r),{vars:x,error:$,log:_}=v;if(typeof x!="object")return {outputVariables:{},renderVariables:{},status:{error:"Configuration did not return an object",log:_,duration:p,responseSize:d,resp:u,api:f,allowed:c,apiFinalUrls:T,apiDataSources:b}};let K=Object.keys(x).reduce((O,w)=>({...O,[`${e.type}${e.id}${w}`]:x[w]}),{});return {renderVariables:x,outputVariables:[S.GENERATOR,S.SECTION_FLAG].includes(e.type)?x:K,status:{log:_,error:$,duration:p,responseSize:d,resp:u,api:f,allowed:c,apiFinalUrls:T,apiDataSources:b}}}function vn(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]&&t[u].section_id===t[r].section_id||!n).forEach(u=>Tt(u,t,o,!1,s,n,a));}})}var Tt=(e,t,r=[],o=!0,n=!0,s=!0,a=[])=>{if(a.includes(e))return [];a.push(e);let i=t[e];return i&&i.inputs.length&&o&&i.inputs.forEach(c=>{let u=`${c}-${e}`;r.includes(u)||r.push(u),i.inputs.forEach(l=>Tt(l,t,r,o,!1,s,a));}),i&&i.consumers.length&&n&&vn(i,t,e,r,s,n,a),r},xn=(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}=he("variables",r,e.settings.allowedLogic||"return false;",o,void 0,s);a||(n=!!i);}return n},br=async(e,t,r,o,n,s={},a,i="section",c)=>{let u=i==="section",l=J(n),p=l.variables,d={...s.variables??{}},f={...s.status??{}},b=new Set,T=[],m={};r?m={...m,[r]:e[r]}:t?m=(t??[]).reduce((k,{id:M})=>({...k,...dr(M,e)}),{}):m=Object.values(e).filter(k=>bt(k)).reduce((k,M)=>({...k,[M.id]:M}),{});let L=Object.values(m).filter(k=>bt(k));if(L.length>0){ce&&console.info("%crunConsumers: calculating section flags","color:purple",L.map(y=>y.id).join(", "));let k=Object.fromEntries(await Promise.all(L.map(async y=>[y.id,await hr(y,o,{...l,variables:p,locale:p.locale},a,c).then(R=>{let{outputVariables:h,status:A}=R;if(A.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${y.id}, Section ${y.section_id}) failed with message: ${A.error}. `);f[y.id]={allowed:!1,error:A.error},d[y.id]={};}return (y.consumers.length>0||[S.GENERATOR,S.SECTION_FLAG,S.RELATED].includes(y.type))&&A.allowed&&Object.keys(h).length>0?d[y.id]=h:d[y.id]={},i==="report"?(f[y.id]={allowed:A.allowed},[S.GENERATOR,S.SECTION_FLAG].includes(y.type)&&A.api&&(f[y.id].api=A.api)):f[y.id]=A,R})]))),Y=Object.entries(k).filter(([,y])=>!y.outputVariables[yr]).map(([y])=>Number(y));b=new Set(Y.map(y=>e[y].section_id)),Object.values(m).filter(y=>b.has(y.section_id)).forEach(y=>{T.push(y.id),delete m[y.id];}),ce&&console.info("%crunConsumers: removing sections","color:purple",b.keys());}let v=b.size>0?Object.fromEntries(Object.entries(e).filter(([,k])=>b?.has(k.section_id)?(T.includes(k.id)||T.push(k.id),!1):!0)):e;if(T.length>0&&(v=Object.fromEntries(Object.entries(v).map(([k,M])=>{let Y={...M,inputs:M.inputs.filter(y=>!T.includes(y)),consumers:M.consumers.filter(y=>!T.includes(y))};return [k,Y]}))),!r&&!t)return {variables:{...s.variables??{},...d},status:{...s.status??{},...f}};i==="report"&&T.length>0&&T.forEach(k=>{delete d[k],delete f[k],delete e[k];}),ce&&console.info("%crunConsumers: running root blocks","color:purple",Object.keys(m));let x=Object.keys(m).reduce((k,M)=>{let Y=new Date,y=Tt(Number(M),v,[],!r,!0,u).map(A=>A.split("-")),h=(new Date().getTime()-Y.getTime())/1e3;return ce&&console.info(`%cResolved dependencies for ${M} (${h.toFixed(2)}s)`,"color:blue"),[...k,...y]},[]),$=new Date,_=Object.keys(m).reduce((k,M)=>k.includes(M)?[...k]:[M,...k],yn(x)),O=(new Date().getTime()-$.getTime())/1e3;ce&&console.info(`%cResolved DAG (${O.toFixed(2)}s): `,"color:green",_);let w=process.env.NEXT_PUBLIC_REPORTS_MAX_CONCURRENT_QUERIES_PER_REPORT,C=parseInt(`${w||0}`,10);async function P(k,M){let Y=new Map,y=[],R=async()=>y.length;for(let h of k){if(C!==0){let G=await R();for(;G>=C;)ce&&console.info("Too many pending promises, waiting...",G,y),await new Promise(se=>setTimeout(se,500)),G=await R();}let A=M[h],He=Promise.all(A.inputs.filter(G=>k.includes(String(G))).map(G=>Y.get(Number(G)))).then(async()=>{let G=A.inputs.reduce((W,Q)=>({...W,...d[Q]}),p),se=A.inputs.find(W=>(A.settings?.ignoreCascade?A.settings?.ignoreCascade:[]).includes(W)||!f[W]?!1:!f[W].allowed||f[W].hiddenByCascade);if(se){f[h]={allowed:!1,hiddenByCascade:f[se].hiddenByCascade||se},d[h]={},y.splice(y.indexOf(Number(h)),1);return}let $t=new Date,I;typeof window<"u"&&[S.SELECTOR,S.MULTIHIERARCHY_SELECTOR].includes(A.type)&&A.settings[ar.DISABLED]?I=new Promise(W=>{W({outputVariables:d[h],status:f[h]});}):I=hr(A,o,{...l,variables:G,locale:G.locale},a,c);let z=await I.then(({outputVariables:W,status:Q})=>{if(Q.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${h}, Section ${A.section_id}) failed with message: ${Q.error}.`);f[h]={allowed:!1,error:Q.error},d[h]={};}(A.consumers.length>0||[S.GENERATOR,S.SECTION_FLAG,S.RELATED].includes(A.type))&&Q.allowed&&Object.keys(W).length>0?d[h]=W:d[h]={},i==="report"?(f[h]={allowed:Q.allowed},[S.GENERATOR,S.SECTION_FLAG].includes(A.type)&&Q.api&&(f[h].api=Q.api)):f[h]=Q;}),de=(new Date().getTime()-$t.getTime())/1e3;return ce&&console.info(`%cBlock ${A.id} resolved in ${de.toFixed(3)}s`,de>500?"color:red":"color:green"),f[h].duration=f[h].duration?f[h].duration:de,y.splice(y.indexOf(Number(h)),1),z}).catch(G=>{throw y.splice(y.indexOf(Number(h)),1),G});y.push(Number(h)),Y.set(Number(h),He);}await Promise.all(Array.from(Y.values()));}let N=new Date;await P(_,v);let H=(new Date().getTime()-N.getTime())/1e3;return ce&&console.info(`%cResolved Variables (${H.toFixed(2)}s), ${_.length} blocks`,"color:green"),{variables:{...s.variables??{},...d},status:{...s.status??{},...f}}};function Cn(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 Tr=Cn;function be(e,t,r){if(t==="createBulk"||t==="updateBulk"){let n=`${t}${Ar(r)}`;return e[n]}let o=`${t}${Ar(r)}`;return e[o]}function Ar(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=wn[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 Ie(e){return !!e&&!!e[X]}function Ae(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)===Nn}(e)||Array.isArray(e)||!!e[Or]||!!(!((t=e.constructor)===null||t===void 0)&&t[Or])||It(e)||Bt(e))}function $e(e,t,r){r===void 0&&(r=!1),we(e)===0?(r?Object.keys:Ut)(e).forEach(function(o){r&&typeof o=="symbol"||t(o,e[o],e);}):e.forEach(function(o,n){return t(n,o,e)});}function we(e){var t=e[X];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:It(e)?2:Bt(e)?3:0}function kt(e,t){return we(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function kn(e,t){return we(e)===2?e.get(t):e[t]}function Ir(e,t,r){var o=we(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r;}function Pn(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function It(e){return In&&e instanceof Map}function Bt(e){return Bn&&e instanceof Set}function Te(e){return e.o||e.t}function wt(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Mn(e);delete t[X];for(var r=Ut(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 Nt(e,t){return t===void 0&&(t=!1),Mt(e)||Ie(e)||!Ae(e)||(we(e)>1&&(e.set=e.add=e.clear=e.delete=Ln),Object.freeze(e),t&&$e(e,function(r,o){return Nt(o,!0)},!0)),e}function Ln(){j(2);}function Mt(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function oe(e){var t=Dn[e];return t||j(18,e),t}function vr(){return process.env.NODE_ENV==="production"||Be||j(0),Be}function At(e,t){t&&(oe("Patches"),e.u=[],e.s=[],e.v=t);}function st(e){Pt(e),e.p.forEach(_n),e.p=null;}function Pt(e){e===Be&&(Be=e.l);}function xr(e){return Be={p:[],l:Be,h:e,m:!0,_:0}}function _n(e){var t=e[X];t.i===0||t.i===1?t.j():t.g=!0;}function vt(e,t){t._=t.p.length;var r=t.p[0],o=e!==void 0&&e!==r;return t.h.O||oe("ES5").S(t,e,o),o?(r[X].P&&(st(t),j(4)),Ae(e)&&(e=at(t,e),t.l||it(t,e)),t.u&&oe("Patches").M(r[X].t,e,t.u,t.s)):e=at(t,r,[]),st(t),t.u&&t.v(t.u,t.s),e!==Br?e:void 0}function at(e,t,r){if(Mt(t))return t;var o=t[X];if(!o)return $e(t,function(i,c){return Cr(e,o,t,i,c,r)},!0),t;if(o.A!==e)return t;if(!o.P)return it(e,o.t,!0),o.t;if(!o.I){o.I=!0,o.A._--;var n=o.i===4||o.i===5?o.o=wt(o.k):o.o,s=n,a=!1;o.i===3&&(s=new Set(n),n.clear(),a=!0),$e(s,function(i,c){return Cr(e,o,n,i,c,r,a)}),it(e,n,!1),r&&e.u&&oe("Patches").N(o,r,e.u,e.s);}return o.o}function Cr(e,t,r,o,n,s,a){if(process.env.NODE_ENV!=="production"&&n===r&&j(5),Ie(n)){var i=at(e,n,s&&t&&t.i!==3&&!kt(t.R,o)?s.concat(o):void 0);if(Ir(r,o,i),!Ie(i))return;e.m=!1;}else a&&r.add(n);if(Ae(n)&&!Mt(n)){if(!e.h.D&&e._<1)return;at(e,n),t&&t.A.l||it(e,n);}}function it(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&Nt(t,r);}function xt(e,t){var r=e[X];return (r?Te(r):e)[t]}function kr(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 Lt(e){e.P||(e.P=!0,e.l&&Lt(e.l));}function Ct(e){e.o||(e.o=wt(e.t));}function _t(e,t,r){var o=It(t)?oe("MapSet").F(t,r):Bt(t)?oe("MapSet").T(t,r):e.O?function(n,s){var a=Array.isArray(n),i={i:a?1:0,A:s?s.A:vr(),P:!1,I:!1,R:{},l:s,t:n,k:null,o:null,j:null,C:!1},c=i,u=Ot;a&&(c=[i],u=qe);var l=Proxy.revocable(c,u),p=l.revoke,d=l.proxy;return i.k=d,i.j=p,d}(t,r):oe("ES5").J(t,r);return (r?r.A:vr()).p.push(o),o}function On(e){return Ie(e)||j(22,e),function t(r){if(!Ae(r))return r;var o,n=r[X],s=we(r);if(n){if(!n.P&&(n.i<4||!oe("ES5").K(n)))return n.t;n.I=!0,o=Pr(r,s),n.I=!1;}else o=Pr(r,s);return $e(o,function(a,i){n&&kn(n.t,a)===i||Ir(o,a,t(i));}),s===3?new Set(o):o}(e)}function Pr(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return wt(e)}var Lr,Be,Dt=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",In=typeof Map<"u",Bn=typeof Set<"u",_r=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Br=Dt?Symbol.for("immer-nothing"):((Lr={})["immer-nothing"]=!0,Lr),Or=Dt?Symbol.for("immer-draftable"):"__$immer_draftable",X=Dt?Symbol.for("immer-state"):"__$immer_state";var wn={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"},Nn=""+Object.prototype.constructor,Ut=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,Mn=Object.getOwnPropertyDescriptors||function(e){var t={};return Ut(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r);}),t},Dn={},Ot={get:function(e,t){if(t===X)return e;var r=Te(e);if(!kt(r,t))return function(n,s,a){var i,c=kr(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||!Ae(o)?o:o===xt(e.t,t)?(Ct(e),e.o[t]=_t(e.A.h,o,e)):o},has:function(e,t){return t in Te(e)},ownKeys:function(e){return Reflect.ownKeys(Te(e))},set:function(e,t,r){var o=kr(Te(e),t);if(o?.set)return o.set.call(e.k,r),!0;if(!e.P){var n=xt(Te(e),t),s=n?.[X];if(s&&s.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(Pn(r,n)&&(r!==void 0||kt(e.t,t)))return !0;Ct(e),Lt(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 xt(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,Ct(e),Lt(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=Te(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);}},qe={};$e(Ot,function(e,t){qe[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)};}),qe.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&j(13),qe.set.call(this,e,t,void 0)},qe.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&j(14),Ot.set.call(this,e[0],t,r,e[0])};var Un=function(){function e(r){var o=this;this.O=_r,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(T){var m=this;T===void 0&&(T=i);for(var L=arguments.length,v=Array(L>1?L-1:0),x=1;x<L;x++)v[x-1]=arguments[x];return c.produce(T,function($){var _;return (_=s).call.apply(_,[m,$].concat(v))})}}var u;if(typeof s!="function"&&j(6),a!==void 0&&typeof a!="function"&&j(7),Ae(n)){var l=xr(o),p=_t(o,n,void 0),d=!0;try{u=s(p),d=!1;}finally{d?st(l):Pt(l);}return typeof Promise<"u"&&u instanceof Promise?u.then(function(T){return At(l,a),vt(T,l)},function(T){throw st(l),T}):(At(l,a),vt(u,l))}if(!n||typeof n!="object"){if((u=s(n))===void 0&&(u=n),u===Br&&(u=void 0),o.D&&Nt(u,!0),a){var f=[],b=[];oe("Patches").M(n,u,f,b),a(f,b);}return u}j(21,n);},this.produceWithPatches=function(n,s){if(typeof n=="function")return function(u){for(var l=arguments.length,p=Array(l>1?l-1:0),d=1;d<l;d++)p[d-1]=arguments[d];return o.produceWithPatches(u,function(f){return n.apply(void 0,[f].concat(p))})};var a,i,c=o.produce(n,s,function(u,l){a=u,i=l;});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){Ae(r)||j(8),Ie(r)&&(r=On(r));var o=xr(this),n=_t(this,r,void 0);return n[X].C=!0,Pt(o),n},t.finishDraft=function(r,o){var n=r&&r[X];process.env.NODE_ENV!=="production"&&(n&&n.C||j(9),n.I&&j(10));var s=n.A;return At(s,o),vt(void 0,s)},t.setAutoFreeze=function(r){this.D=r;},t.setUseProxies=function(r){r&&!_r&&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 a=oe("Patches").$;return Ie(r)?a(r,o):this.produce(r,function(i){return a(i,o)})},e}(),Z=new Un,Fn=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 ct=Fn;var te=ae.actions,Dr=je({block:ue("block"),dimension:ue("dimension"),formatter:ue("formatter"),report:ue("report"),section:ue("section"),variant:ue("variant"),datasource:ue("datasource")}),ze=je({block:le("block"),dimension:le("dimension"),formatter:le("formatter"),report:le("report"),section:le("section"),variant:le("variant"),datasource:le("datasource")}),Ur=je({block:ne("block"),dimension:ne("dimension"),formatter:ne("formatter"),report:ne("report"),section:ne("section"),variant:ne("variant"),datasource:ne("datasource")}),Fr=je({block:ve("block"),dimension:ve("dimension"),formatter:ve("formatter"),report:ve("report"),section:ve("section"),variant:ve("variant"),datasource:ve("datasource")}),Vr=je({block:Nr("block"),section:Nr("section")});function je(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 Ce(e,t){return (r,o)=>{let s=o().records.requests[e][t],a=!s||s.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(te.setRequest({key:t,type:e,status:a}));}}function xe(e,t,r,o){return n=>{typeof window=="object"&&notifications.show({autoClose:3e3,color:"red",id:t,message:o,title:"Error"}),n(te.setRequest({key:t,type:e,status:"FAILURE",error:{code:r,message:o}}));}}function ue(e){return t=>{let r=Vt(e,t);return (o,n,s)=>(o(Ce(e,r)),be(s,"create",e)(t).then(i=>(i.ok===!0?o(te.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:i.data})):o(xe(e,r,i.status,i.error)),i)))}}function $n(e){return t=>{let r=Vt(e,t[0]);return (o,n,s)=>(o(Ce(e,r)),be(s,"createBulk",e)(t).then(i=>(i.ok===!0?o(te.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:i.data})):o(xe(e,r,i.status,i.error)),i)))}}function wr(e,t,r){return r.replace(new RegExp(e,"g"),t)}function zn(e){return e.section_id!==void 0}function jn(e){return e.report_id!==void 0}function Nr(e){return t=>{let{create:r}=t;return (o,n,s)=>ue(e)(r)(o,n,s).then(async i=>{if(i.ok){let{data:c}=i,{id:u}=c,{update:l}=t,p=zr(e,{id:u});if(o(Ce(e,`${p}`)),e==="block"&&zn(r)){let d=ct(l,m=>{m.id=u;}),{contentByLocale:f}=d;f&&(d=ct(d,m=>{m.id=u,m.contentByLocale=Object.keys(f).reduce((L,v)=>{let x=f?f[v]:{};return L[v]={...x,id:u},L},{});}));let T=d.inputs?.map(m=>({type:m.type,id:m.id,inputAction:{operation:"create",input:{input_id:m.id,block_id:d.id}}}));return T&&T.length>0&&Mr(e)([d,...T])(o,n,s).then(()=>le("section")({id:d.section_id,include:!0})(o,n,s).then(m=>(m.ok&&o(te.setRequest({key:p,type:e,status:"SUCCESS",data:m.data})),m))),ne(e)(d)(o,n,s).then(m=>(m.ok&&o(te.setRequest({key:p,type:e,status:"SUCCESS",data:m.data})),m))}if(e==="section"&&jn(r)){let{id:d}=c,f=ct(l,m=>{m.id=d;}),{blocks:b}=f,T=b?.map(m=>({type:m.type,blockcol:m.blockcol,blockrow:m.blockrow,section_id:d,locales:Object.keys(m.contentByLocale).map(L=>L)}));return T&&b&&await $n("block")(T)(o,n,s).then(m=>{if(m.ok){let L=m.data,v=[],x=L.map(($,_)=>{let O={...$},w=O.id,C=b[_];C.contentByLocale&&(O.contentByLocale=Object.keys(C.contentByLocale).reduce((y,R)=>{let h=C.contentByLocale[R];return y[R]={...h,content:{...h.content},id:O.id},y},{}));let{settings:P}=C,{contentByLocale:N,id:F}=O;O.settings=P;let H={id:F,contentByLocale:N,settings:P};return C.inputs.map(y=>y.id).reduce((y,R)=>{let h=b.findIndex(A=>A.id===R);return [...y,h]},[]).map(y=>({...L[y],originalBlock:b[y]})).forEach(y=>{let{id:R,type:h,originalBlock:A}=y;if([S.SELECTOR,S.VIZ].includes(h)){if(H.contentByLocale?.logic?.content?.api){let pe=H.contentByLocale?.logic.content.api;H.contentByLocale.logic.content.api=wr(`(selector${A.id}id)`,`selector${R}id`,pe);}if(H.contentByLocale?.logic?.content?.logic){let pe=H.contentByLocale.logic.content.logic;H.contentByLocale.logic.content.logic=wr(`(selector${A.id}id)`,`selector${R}id`,pe);}}v.push({id:R,inputAction:{operation:"create",input:{input_id:R,block_id:w}}});}),H});return Mr("block")([...x,...v])(o,n,s)}}),ne(e)(f)(o,n,s).then(m=>(m.ok&&o(te.setRequest({key:p,type:e,status:"SUCCESS",data:m.data})),m))}return ne(e)({...l,id:c.id})(o,n,s)}})}}function le(e){return t=>{let r=qr(e,t);return (o,n,s)=>{o(Ce(e,r));let a=be(s,"read",e);if(typeof a!="function"){let i=`Failed to get valid RPC method for entity "${e}"`;return o(xe(e,r,500,i)),Promise.reject(new Error(i))}return a(t).then(i=>(i.ok===!0?o(te.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:i.data})):o(xe(e,r,i.status,i.error)),i))}}}function ne(e){return t=>{let r=qt(e,t);return (o,n,s)=>(o(Ce(e,r)),be(s,"update",e)(t).then(i=>(i.ok===!0?o(te.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:i.data})):o(xe(e,r,i.status,i.error)),i)))}}function Mr(e){return t=>{let r=qt(e,t[0]);return (o,n,s)=>(o(Ce(e,r)),be(s,"updateBulk",e)(t).then(i=>(i.ok===!0?o(te.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:i.data})):o(xe(e,r,i.status,i.error)),i)))}}function ve(e){return t=>{let r=$r(e,t);return (o,n,s)=>(o(Ce(e,r)),be(s,"delete",e)(t).then(i=>{i.ok===!0?o(te.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:i.data})):o(xe(e,r,i.status,i.error));}))}}function Vt(e,t){if(e==="variant"){let r=t;return `create(variant, [${r.dimension_id}, ${r.name}])`}return `create(${e}, [${Object.keys(t)}])`}function qr(e,t={}){let r=t.id==null?null:`'${t.id}'`;return `read(${e}, ${r}, ${!!t.include})`}function qt(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function $r(e,t){return `delete(${e}, ${t})`}function zr(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:jr,setPreviews:Gn,setSectionState:Gr,resetSectionState:Hr,setCurrentLocale:Hn,setPreferredLocale:Kn,addRunConsumersRunning:Kr,removeRunConsumersRunning:Yr}=Oe;function Yn(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 Qn(){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 Wr(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 Xn(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 Qr(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(jr(i)),n.activeSection&&t(Xr(e,{query:a}));}function Zn(e,t){return async(r,o)=>Qr(e,r,o,{query:{[t]:void 0}})}function Jn(e,t,r){return async(o,n)=>Qr(e,o,n,{query:{[t]:r}})}function Xr(e,t){return async(r,o)=>{let n=o(),{currentLocale:s}=n.status,a=n.records.entities.block,i=e.formatterFunctions[s],c=e.datasourceFunctions,{parsedParams:u,statusPayload:l}=Jt(n.status,t),{sid:p,bid:d,previews:f,query:b}=u;Object.keys(l).length&&r(Oe.setStatus(l));let T={...Tr(f),locale:s,...Ve()},m={variables:T,query:b,locale:s};r(Oe.addRunConsumersRunning([p]));let L=n.records.entities.section[p],v=async x=>r(Wr(x));try{let x=await br(a,L&&[L],d,i,m,void 0,v,"section",c),{variables:$,status:_}=x;r(er.setVariableChange({attributes:T,variables:$,status:_})),r(Oe.removeRunConsumersRunning([p]));}catch(x){console.error("Error in runConsumers client side: recalculateVariables",x);}}}function es(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 ts(e){return async(t,r,o)=>{let n=await o.urlProxy(e);if("error"in n)throw new Error(n.error);return n.data}}function rs(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function os(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 ns(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 ss({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 as(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 is(e){let{removeBlocks:t}=ae.actions;return async r=>{await r(t(e));}}function cs(e){let{addBlocks:t}=ae.actions;return async r=>{await r(t(e));}}function us(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 ls(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 ps(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}}function ds(){return async(e,t,r)=>{let o=await r.readEnvSecrets({});if("error"in o)throw new Error(o.error);return o.data}}function fs(){let{removeDataSourceLogic:e}=ae.actions;return async t=>{await t(e());}}var {locales:ys}=re(),Rs={pathSegment:"path",formatterFunctions:ys.reduce((e,t)=>({...e,[t]:{}}),{}),datasourceFunctions:[],profilePrefix:"path",siteProps:{}};createContext(Rs);re();var lt=useDispatch,Ge=useSelector;
30
31
 
31
- export { Xe as actions, Ht as storeWrapper, et as useBespokeDispatch, tt as useBespokeSelector };
32
+ export { ut as actions, rr as storeWrapper, lt as useBespokeDispatch, Ge as useBespokeSelector };