PageSourceSearch

https://spec.digital/assets/FaqPage-CCbqWgWw.js

js spec.digital collected 2026-10-04 07:04:01 UTC 2,933 bytes, 6 lines download raw bytes

1import{j as e}from"./motion-nnh33rCm.js";import{r as n}from"./react-vendor-D3d2xEsH.js";import{c as u,b}from"./index-CQ2hDP-r.js";import"./charts-NoTjsO46.js";/**
2 * @license lucide-react v0.475.0 - ISC
3 *
4 * This source code is licensed under the ISC license.
5 * See the LICENSE file in the root directory of this source tree.
6 */const y=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],f=u("ChevronDown",y),p={"/":"Home","/seo-agency-surrey":"SEO Agency","/ppc-agency-surrey":"PPC Agency","/meta-ads-surrey":"Meta Ads","/who-we-are":"Our Team","/clients":"Clients","/partners":"Partners","/contact":"Contact","/shopify-plus-seo-agency":"Shopify Plus SEO","/magento-seo-agency":"Magento SEO","/wordpress-seo-agency":"WordPress SEO","/hybris-seo-agency":"Hybris SEO","/google-shopping-ads":"Google Shopping Ads","/paid-search-ads":"Paid Search Ads","/display-ads":"Display Ads","/social-ads":"Social Ads"},i=Object.keys(p);function S(){const[x,m]=n.useState([]),[h,o]=n.useState(!0),[r,g]=n.useState(null);n.useEffect(()=>{b.entities.FaqItem.filter({active:!0},"sort_order").then(s=>{m(s),o(!1)}).catch(()=>o(!1))},[]);const t={};x.forEach(s=>{t[s.page_path]||(t[s.page_path]=[]),t[s.page_path].push(s)});const l=Object.keys(t).sort((s,a)=>i.indexOf(s)-i.indexOf(a));return e.jsxs(e.Fragment,{children:[e.jsx("section",{className:"bg-spec-black text-spec-grey py-20 md:py-32 text-center",children:e.jsxs("div",{className:"max-w-7xl mx-auto px-6",children:[e.jsx("h1",{className:"font-heading font-bold uppercase text-4xl md:text-6xl mb-4",children:"FAQs"}),e.jsx("h2",{className:"font-body text-lg text-spec-grey/60 max-w-2xl mx-auto",children:"Answers to the most common questions about our PPC, SEO and Meta Ads services."})]})}),e.jsx("section",{className:"bg-spec-grey py-16 md:py-24",children:e.jsx("div",{className:"max-w-3xl mx-auto px-6",children:h?e.jsx("div",{className:"text-center text-spec-black/40 py-8",children:"Loading..."}):l.length===0?e.jsx("div",{className:"text-center text-spec-black/40 py-8",children:"No FAQs found. FAQs will appear here once they are added in the CMS."}):l.map(s=>e.jsxs("div",{className:"mb-12",children:[e.jsx("h3",{className:"font-heading font-bold uppercase text-xl md:text-2xl text-spec-black mb-6 border-b border-spec-black/10 pb-2",children:p[s]||s}),e.jsx("div",{className:"space-y-3",children:t[s].map((a,d)=>{const c=`${s}-${d}`;return e.jsxs("div",{className:"border-b border-spec-black/10 pb-3",children:[e.jsxs("button",{onClick:()=>g(r===c?null:c),className:"flex items-center justify-between w-full text-left",children:[e.jsx("span",{className:"font-heading uppercase text-sm text-spec-black",children:a.question}),e.jsx(f,{className:`w-4 h-4 text-spec-red flex-shrink-0 transition-transform ${r===c?"rotate-180":""}`})]}),r===c&&e.jsx("p",{className:"font-body text-spec-black/70 mt-2 leading-relaxed text-sm",children:a.answer})]},a.id||d)})})]},s))})})]})}export{S as default};

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.