PageSourceSearch

https://europe.analysisgroup.com/scripts/index-9be690d9.js

js analysisgroup.com collected 2026-10-01 10:14:08 UTC 7,905 bytes, 2 lines download raw bytes

1import{r as o,R as t}from"./vendor-a6c4fc13.js";import{P as B}from"./PeopleResultCard-5b1197cc.js";import{u as G,g as H,a as V,S as $,b as K,c as Q,P as W,C as Y,F as J,d as X,e as Z}from"./structuredData-878b5f53.js";import{d as ee}from"./utils-3a9d2551.js";const P="MMM d, yyyy",ne=()=>{const f="People Listing",[h,L]=o.useState(P),[g,A]=o.useState("en"),[b,C]=o.useState(999);o.useEffect(()=>{const e=document.querySelector(`[aria-label="${f}"]`);if(e){const a=e.getAttribute("data-date-format"),l=e.getAttribute("data-language"),s=e.getAttribute("data-facet-options-number");L(a||P),A(l?l.split("-")[0]:"en"),C(s?Number(s):999)}},[]);const y=o.useCallback((e,a,l="en")=>{if(!e)return"";try{let s;if(typeof e=="number"||typeof e=="string"&&!isNaN(Number(e)))s=new Date(Number(e));else if(typeof e=="string")s=new Date(e);else return"";if(isNaN(s.getTime()))return"";const c=s.getDate(),F=s.getMonth(),M=s.getFullYear();let r=a;return r.includes("yyyy")?r=r.replace("yyyy",String(M)):r.includes("yy")&&(r=r.replace("yy",String(M).slice(-2))),r.includes("MMMM")?r=r.replace("MMMM",new Intl.DateTimeFormat(l,{month:"long"}).format(s)):r.includes("MMM")?r=r.replace("MMM",new Intl.DateTimeFormat(l,{month:"short"}).format(s)):r.includes("MM")?r=r.replace("MM",String(F+1).padStart(2,"0")):r.includes("M")&&(r=r.replace("M",String(F+1))),r.includes("dd")?r=r.replace("dd",String(c).padStart(2,"0")):r.includes("d")&&(r=r.replace("d",String(c))),r}catch(s){return console.warn("Error formatting date:",e,s),""}},[]),R=o.useCallback(e=>{const a=e,l=a.raw||{},s=l.expertimage?String(l.expertimage).startsWith("http")?l.expertimage:`https://inteurope.analysisgroup.com${l.expertimage}`:"https://via.placeholder.com/150x150/cccccc/666666?text=No+Image";return{id:a.uniqueId||a.id||String(Math.random()),name:l.pagename||l.expertname||a.title||"Unknown Person",title:ee(l.expertfulltitle||l.experttitle||""),organization:a.organization||a.company||"Analysis Group",phone:l.expertphone||"",email:l.expertemail||"",image:s,contentType:Array.isArray(a.contenttype)?a.contenttype:[],practice:Array.isArray(a.practice)?a.practice:[],role:Array.isArray(a.role)?a.role:[],location:Array.isArray(l.expertlocations)?l.expertlocations:l.expertlocations?[l.expertlocations]:[],url:a.clickUri||a.uri||"#",date:l.date||l.publishdate?y(l.date||l.publishdate,h,g):"",originalResult:e}},[y,h,g]),w={organizationId:"analysisgroupnonproduction13h6gxjnn",searchHub:"euro-people",pipeline:"euro-people",apiKey:"xxff7ec9ea-d4ae-45c4-9406-dbf13f6bc336",fieldsToInclude:["title","expertname","experttitle","expertfulltitle","expertlocations","expertphone","expertemail","expertimage","pagerelatedpractices"],facetFields:["expertlocations","pagerelatedpractices","experttitle"],numberOfResults:12},{listingSectionRef:D,isMobile:p,isFilterDialogOpen:T,setIsFilterDialogOpen:E,labels:n,searchLabels:m,coveoState:i,sortFields:I,displayedFacets:u,selectedFilterValues:v,transformedResults:d,numberOfResults:k,handleSearchSubmit:S,handleSortChange:z,handlePageChange:O,handleFacetChange:_,handleRemoveSelectedFilter:U,handleClearAllFilters:x}=G({listingAriaLabel:f,transformCoveoResult:R,fallbackConfig:w,language:g}),N=o.useMemo(()=>({listName:"People Listing",description:"At Analysis Group's European branch, our team of exceptional consultants and distinguished experts from academia, industry, and government collaborate to deliver innovative solutions and drive impactful results.",url:typeof window<"u"?window.location.href:void 0}),[]),q=o.useMemo(()=>{if(!d.length||i.loading)return null;const e=d.map(a=>({id:a.id,name:a.name,jobTitle:a.title||void 0,affiliation:a.organization!=="Analysis Group"?a.organization:void 0,email:a.email||void 0,telephone:a.phone||void 0,url:a.url||void 0}));return H(N,e)},[d,i.loading,N]);V(q,!i.loading&&!i.error);const j=()=>t.createElement(t.Fragment,null,t.createElement("div",{className:"listing__search-wrapper"},t.createElement(X,{onSearch:S,initialValue:i.query||"",labels:{searchLabel:m.searchLabel,searchPlaceholder:m.searchPlaceholder,clearLabel:m.clearLabel,submitLabel:m.submitLabel}}
1)),t.createElement("div",{className:"listing__facets-wrapper"},t.createElement("h2",{className:"listing__filter-title"},n.filterResultsTitle||"FILTER RESULTS"),u.length>0?u.map(e=>e.values.length===0?null:t.createElement(Z,{key:e.field,facetData:e,onFilterChange:_,showMoreLabel:n.showMoreLabel,showLessLabel:n.showLessLabel,initialItemsToShow:b})):t.createElement("div",{className:"listing__no-facets"},t.createElement("p",null,n.noFacets||"No filters available for this search."))));return t.createElement("section",{className:"listing container","aria-label":"People Listing",ref:D},t.createElement("div",{className:"listing__container"},t.createElement("div",{className:"listing__content"},!p&&t.createElement("div",{className:"listing__left-wrapper col-12 col-md-4"},t.createElement(j,null)),t.createElement("div",{className:"listing__right-wrapper col-12 col-md-8"},t.createElement("div",{className:"listing__actions"},t.createElement("div",{className:"listing__actions-top"},t.createElement("div",{className:"listing__summary people-listing__summary"},t.createElement($,{totalResults:i.totalResults,labels:{showingResults:n.showingResults,ofResults:n.ofResults,results:n.results,forTerm:n.forTerm,noResults:n.noResults,loading:n.loading},currentPage:i.currentPage,resultsPerPage:k,searchQuery:i.query,firstSearchExecuted:i.firstSearchExecuted,isLoading:i.loading,hasResults:i.hasResults})),t.createElement("div",{className:"listing__sort people-listing__sort"},t.createElement(K,{sortBy:i.currentSort||"relevance",sortFields:I,labels:{sortLabel:n.sortLabel,relevanceSort:n.relevanceSort},onSortChange:z}))),v.length>0&&t.createElement("div",{className:"listing__actions-bottom"},t.createElement(Q,{filters:v,onRemoveFilter:U,onClearAll:x,labels:{clearAll:n.clearAll,removeFilter:n.removeFilter}}))),t.createElement("div",{className:"listing__results"},i.loading?t.createElement("div",{className:"listing__loading"},t.createElement("p",null,n.loading||"Loading...")):i.error?t.createElement("div",{className:"listing__error"},t.createElement("p",null,n.error||"Error:"," ",i.error),t.createElement("p",null,n.errorMessage||"Please make sure your Coveo API key is configured.")):d.length>0?d.map(e=>t.createElement(B,{key:e.id,result:e.originalResult||{raw:{}},id:e.id,name:e.name,title:e.title,organization:e.organization,phone:e.phone,email:e.email,image:e.image,url:e.url||""})):i.firstSearchExecuted&&t.createElement("div",{className:"listing__no-results"},t.createElement("p",null,n.noResults||"No content found. Please try a different search."))),t.createElement("div",{className:"listing__pagination-container"},i.totalPages>1&&t.createElement(W,{currentPage:i.currentPage,totalPages:i.totalPages,onPageChange:O,labels:{next:n.paginationNext||"Next",previous:n.paginationPrevious||"Previous",page:n.paginationPage||"Page",ellipsis:n.paginationEllipsis||"..."}}))))),p&&u.length>0&&t.createElement("button",{className:"listing__filter-search-button",onClick:()=>E(!0)},n.filterAndSearchButton||"Filter & Search",t.createElement(Y,null)),p&&u.length>0&&t.createElement(J,{isOpen:T,onClose:()=>E(!1),onSearch:S,initialSearchTerm:i.query||"",facets:u.filter(e=>e.values.length>0).map(e=>({label:e.title,field:e.field,expanded:e.expanded})),generateFacetData:(e,a,l)=>{const s=u.find(c=>c.field===e.field);return s?{...s,title:e.label,expanded:!0,values:s.values.map(c=>({...c,selected:(l[e.field]??[]).includes(c.label)}))}:{title:e.label,field:e.field,expanded:!0,values:[]}},results:d,selectedFacets:Object.fromEntries(Object.entries(i.facets).map(([e,a])=>[e,a.filter(l=>l.state==="selected").map(l=>l.value)]).filter(([,e])=>e.length>0)),onFilterChange:_,onClearAllFilters:x,labels:n,searchLabels:m,facetOptionsNumber:b}))};export{ne as default};
2//# sourceMappingURL=index-9be690d9.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.