1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2452],{12452:(e,t,r)=>{r.r(t),r.d(t,{SearchPalette:()=>g});var n=r(95155),s=r(12115),a=r(86651),l=r(65229);let i=(0,r(71847).A)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);var c=r(7013),o=r(52619),d=r.n(o),u=r(20063),p=r(22027);let x={service:"Service",domain:"Discipline",sector:"Sector",faq:"FAQ",location:"Location",partner:"Brand",project:"Project",insight:"Insight"},h=[{label:"Solutions",href:"/solutions"},{label:"Sectors",href:"/sectors"},{label:"Projects",href:"/projects"},{label:"Insights",href:"/insights"},{label:"Tools",href:"/tools"},{label:"About",href:"/about"},{label:"Credentials",href:"/credentials"},{label:"Contact",href:"/contact"}],m="tg-search-recent";function f(){try{let e=window.localStorage.getItem(m);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>"string"==typeof e).slice(0,5):[]}catch(e){return[]}}function b(e){try{let t=f().filter(t=>t.toLowerCase()!==e.toLowerCase()),r=[e,...t].slice(0,5);window.localStorage.setItem(m,JSON.stringify(r))}catch(e){}}
1function g(){let[e,t]=(0,s.useState)(!1),[r,o]=(0,s.useState)(""),[m,g]=(0,s.useState)([]),[k,y]=(0,s.useState)(0),[v,j]=(0,s.useState)(!1),[N,w]=(0,s.useState)([]),C=(0,s.useRef)(null),S=(0,s.useRef)(null),A=(0,s.useRef)(null),_=(0,s.useRef)(""),E=(0,u.useRouter)();(0,s.useEffect)(()=>{e&&w(f())},[e]);let R=(0,s.useCallback)(()=>{t(!1),o(""),g([]),y(0);let e=A.current;e&&requestAnimationFrame(()=>e.focus())},[]);function q(e){R(),E.push(e)}function D(e,t){(0,p.u4)("search_result_click",{result_kind:e.type,result_slug:e.href,result_rank:t+1,origin_path:window.location.pathname}),q(e.href)}return(0,s.useEffect)(()=>{function r(r){if((r.metaKey||r.ctrlKey)&&"k"===r.key.toLowerCase()){if(r.preventDefault(),!e){let e=document.activeElement;e&&e!==document.body&&(A.current=e)}t(e=>!e);return}"Escape"===r.key&&e&&(r.preventDefault(),R())}return document.addEventListener("keydown",r),()=>document.removeEventListener("keydown",r)},[e,R]),(0,s.useEffect)(()=>{if(e){let e=setTimeout(()=>{var e;return null==(e=C.current)?void 0:e.focus()},30);return()=>clearTimeout(e)}},[e]),(0,s.useEffect)(()=>{if(e)return document.addEventListener("keydown",t),()=>document.removeEventListener("keydown",t);function t(e){if("Tab"!==e.key)return;let t=S.current;if(!t)return;let r=t.querySelectorAll('button:not([disabled]), [href], input:not([disabled]), textarea:not([disabled]), select:not([disabled]), [tabindex]:not([tabindex="-1"])');if(0===r.length)return;let n=r[0],s=r[r.length-1],a=document.activeElement;e.shiftKey&&a===n?(e.preventDefault(),s.focus()):e.shiftKey||a!==s||(e.preventDefault(),n.focus())}},[e]),(0,s.useEffect)(()=>{if(!e)return;let t=r.trim();if(!t){g([]),y(0);return}j(!0);let n=setTimeout(async()=>{try{let e=await fetch("/api/search?q=".concat(encodeURIComponent(t))),r=await e.json();(g(Array.isArray(null==r?void 0:r.results)?r.results:[]),y(0),t!==_.current)&&(_.current=t,(0,p.u4)("search_query",{query_token_count:t.trim()?t.trim().split(/\s+/).length:0,origin_path:window.location.pathname}))}catch(e){g([])}finally{j(!1)}},140);return()=>clearTimeout(n)},[r,e]),(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("button",{type:"button",onClick:e=>{A.current=e.currentTarget,t(!0)},"aria-label":"Search the site (Cmd K)",className:"flex items-center gap-2 rounded-[3px] border border-sc-stone-300 px-2.5 py-1.5 text-sc-ink-600 transition hover:border-sc-gold-500/60 hover:text-sc-ink-900 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sc-gold-500/80 focus-visible:ring-offset-2 focus-visible:ring-offset-sc-paper-50",children:[(0,n.jsx)(a.A,{className:"h-4 w-4","aria-hidden":!0}),(0,n.jsx)("span",{className:"hidden font-mono-tight text-[11px] uppercase tracking-[0.22em] xl:inline",children:"â K"})]}),e&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{"aria-hidden":!0,onClick:R,className:"fixed inset-0 z-[70] bg-paper-0/70 backdrop-blur-sm"}),(0,n.jsxs)("div",{ref:S,role:"dialog","aria-modal":"true","aria-label":"Search the TechnoGuru site",className:"fixed left-1/2 top-[12dvh] z-[71] w-[calc(100vw-2rem)] max-w-xl -translate-x-1/2 border border-gold-400/30 bg-paper-0 shadow-[0_30px_60px_-12px_rgba(0,0,0,0.6)]",children:[(0,n.jsxs)("div",{className:"flex items-center gap-3 border-b border-ink-300/15 px-4 py-3",children:[(0,n.jsx)(a.A,{className:"h-4 w-4 text-gold-300","aria-hidden":!0}),(0,n.jsx)("input",{ref:C,value:r,onChange:e=>o(e.target.value),onKeyDown:function(e){"ArrowDown"===e.key?(e.preventDefault(),y(e=>Math.min(m.length-1,e+1))):"ArrowUp"===e.key?(e.preventDefault(),y(e=>Math.max(0,e-1))):"Enter"===e.key&&(e.preventDefault(),m[k]?(r.trim()&&b(r.trim()),D(m[k],k)):r.trim()&&function(e){let t=e.trim();t&&b(t),q("/search?q=".concat(encodeURIComponent(t)))}(r))},type:"text",placeholder:"Search services, projects, FAQs, brandsâ¦","aria-label":"Search query","aria-controls":"palette-listbox","aria-activedescendant":m[k]?"palette-r-".concat(k):void 0,className:"flex-1 bg-transparent text-base text-ink-bright placeholder:text-ink-200/40 focus:outline-none"}),(0,n.jsx)("button",{type:"button",onClick:R,"aria-label":"Close search",className:"text-ink-200 transition hover:text-gold-300",children:(0,n.jsx)(l.A,{className:"h-4 w-4"})})]}),(0,n.jsxs)("div",{id:"palette-listbox",role:"listbox","aria-label":"Search results",className:"max-h-[55dvh] overflow-y-auto",children:[!r.trim()&&(0,n.jsxs)("div",{className:"px-4 py-4",children:[N.length>0&&(0,n.jsxs)("div",{className:"mb-4",children:[(0,n.jsxs)("p",{className:"mb-2 flex items-center gap-1.5 text-[11px] font-medium uppercase tracking-[0.22em] text-ink-200/70",children:[(0,n.jsx)(i,{className:"h-3 w-3","aria-hidden":!0})," Recent"]}),(0,n.jsx)("ul",{className:"space-y-1",children:N.map(e=>(0,n.jsx)("li",{children:(0,n.jsxs)("button",{type:"button",onClick:()=>o(e),className:"flex w-full items-center justify-between gap-2 rounded-[2px] px-2 py-1.5 text-left text-sm text-ink-bright transition hover:bg-paper-section",children:[(0,n.jsx)("span",{className:"truncate",children:e}),(0,n.jsx)(c.A,{className:"h-3.5 w-3.5 shrink-0 text-ink-200/40"})]})},e))})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("p",{className:"mb-2 text-[11px] font-medium uppercase tracking-[0.22em] text-ink-200/70",children:"Jump to"}),(0,n.jsx)("div",{className:"flex flex-wrap gap-1.5",children:h.map(e=>(0,n.jsx)("button",{type:"button",onClick:()=>q(e.href),className:"border border-ink-300/15 px-2.5 py-1 text-[12px] uppercase tracking-[0.18em] text-ink-bright transition hover:border-gold-400/60 hover:text-gold-300",children:e.label},e.href))})]}),(0,n.jsxs)("p",{className:"mt-4 text-[12px] italic text-ink-200/70",children:["Try ",(0,n.jsx)("button",{type:"button",onClick:()=>o("Rako"),className:"text-gold-300 underline",children:"Rako"}),","," ",(0,n.jsx)("button",{type:"button",onClick:()=>o("fire alarm"),className:"text-gold-300 underline",children:"fire alarm"})," ","or ",(0,n.jsx)("button",{type:"button",onClick:()=>
1o("ROI"),className:"text-gold-300 underline",children:"ROI"}),"."]})]}),r.trim()&&v&&0===m.length&&(0,n.jsx)("div",{className:"px-4 py-6 text-sm text-ink-200",children:"Searchingâ¦"}),r.trim()&&!v&&0===m.length&&(0,n.jsxs)("div",{className:"px-4 py-6 text-sm text-ink-200",children:["No matches."," ",(0,n.jsx)(d(),{href:"/search?q=".concat(encodeURIComponent(r)),onClick:R,className:"text-gold-300 underline",children:"Open full search â"})]}),m.map((e,t)=>(0,n.jsxs)("button",{type:"button",id:"palette-r-".concat(t),role:"option","aria-selected":t===k,onMouseEnter:()=>y(t),onClick:()=>D(e,t),className:"block w-full border-l-2 px-4 py-3 text-left transition ".concat(t===k?"border-gold-400/60 bg-paper-section":"border-transparent hover:bg-paper-section/60"),children:[(0,n.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,n.jsx)("span",{className:"border border-gold-400/40 px-1.5 py-0.5 text-[11px] uppercase tracking-[0.22em] text-gold-300",children:x[e.type]||e.type}),(0,n.jsx)("span",{className:"font-mono-tight truncate text-[11px] uppercase tracking-[0.22em] text-ink-200/70",children:e.breadcrumb})]}),(0,n.jsx)("div",{className:"font-geist font-medium mt-1 text-base leading-tight text-ink-bright",children:e.title}),(0,n.jsx)("div",{className:"mt-1 line-clamp-2 text-[12.5px] text-ink-200",children:e.snippet})]},"search-result-".concat(t))),m.length>0&&(0,n.jsx)("div",{className:"border-t border-ink-300/10 px-4 py-3",children:(0,n.jsx)(d(),{href:"/search?q=".concat(encodeURIComponent(r)),onClick:R,className:"text-[11px] uppercase tracking-[0.22em] text-gold-300 transition hover:text-gold-200",children:"Open full search results â"})})]}),(0,n.jsxs)("div",{className:"flex items-center justify-between border-t border-ink-300/10 px-4 py-2 text-[11px] uppercase tracking-[0.22em] text-ink-200/60",children:[(0,n.jsx)("span",{children:"â â navigate \xb7 âµ open \xb7 esc close"}),(0,n.jsx)("span",{children:"â K"})]})]})]})]})}},86651:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(71847).A)("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]])}}]);
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.