PageSourceSearch

https://www.abbeytheatre.co.uk/assets/PoliciesProcedures-ThQQQ65V.js

js abbeytheatre.co.uk collected 2026-10-02 21:27:38 UTC 3,784 bytes, 1 lines download raw bytes

1import{u,j as e,S as h,H as p,C as l,c as n,a6 as i,e as o,d,n as x,B as m,F as j,r as f,s as g}from"./index-D6S94l3r.js";import{F as N}from"./file-text-CYTKc2yI.js";import{D as b}from"./download-CcVfMAvh.js";import{M as w}from"./mail-DIzBIgeW.js";function y(a){const t=/(https?:\/\/[^\s]+)/g;return a.split(t).map((r,c)=>t.test(r)?(t.lastIndex=0,e.jsx("a",{href:r,target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:r},c)):e.jsx(f.Fragment,{children:r},c))}function P(){const{data:a,isLoading:t}=u({queryKey:["policy-documents"],queryFn:async()=>{const{data:s,error:r}=await g.from("policy_documents").select("*").order("display_order",{ascending:!0});if(r)throw r;return s}});return e.jsxs("div",{className:"min-h-screen flex flex-col bg-background",children:[e.jsx(h,{title:"Policies & Procedures",description:"Public access to The Abbey Theatre policies, procedures and risk assessments."}),e.jsx(p,{}),e.jsxs("main",{className:"flex-1",children:[e.jsx("section",{className:"bg-gradient-to-b from-primary/10 to-background py-16",children:e.jsxs("div",{className:"container mx-auto px-4 text-center",children:[e.jsx("h1",{className:"text-4xl md:text-5xl font-bold text-foreground mb-4",children:"Policies, Procedures & Risk Assessments"}),e.jsx("p",{className:"text-lg text-muted-foreground max-w-2xl mx-auto",children:"View and download our policies, procedures and risk assessments. Please contact us if anything is required that is not listed here."})]})}),e.jsx("section",{className:"py-12",children:e.jsx("div",{className:"container mx-auto px-4",children:t?e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",children:[...Array(6)].map((s,r)=>e.jsxs(l,{children:[e.jsxs(n,{children:[e.jsx(i,{className:"h-6 w-3/4"}),e.jsx(i,{className:"h-4 w-full mt-2"})]}),e.jsx(o,{children:e.jsx(i,{className:"h-10 w-full"})})]},r))}):a&&a.length>0?e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",children:a.map(s=>e.jsxs(l,{className:"flex flex-col",children:[e.jsxs(n,{children:[e.jsxs(d,{className:"flex items-center gap-2 text-lg",children:[e.jsx(N,{className:"h-5 w-5 text-primary flex-shrink-0"}),e.jsx("span",{children:s.title})]}),s.description&&e.jsx(x,{className:"whitespace-pre-wrap",children:y(s.description)}),(s.version_number||s.relevance_date)&&e.jsxs("div",{className:"flex flex-wrap gap-2 text-xs text-muted-foreground mt-2",children:[s.version_number&&e.jsxs("span",{className:"bg-muted px-2 py-0.5 rounded",children:["v",s.version_number]}),s.relevance_date&&e.jsxs("span",{children:["Effective: ",new Date(s.relevance_date).toLocaleDateString("en-GB")]})]})]}),e.jsx(o,{className:"mt-auto",children:e.jsx(m,{asChild:!0,className:"w-full",children:e.jsxs("a",{href:s.file_url,target:"_blank",rel:"noopener noreferrer",download:s.file_name,children:[e.jsx(b,{className:"h-4 w-4 mr-2"}),"Download PDF"]})})})]},s.id))}):e.jsx(l,{className:"max-w-md mx-auto text-center",children:e.jsxs(n,{children:[e.jsx(d,{children:"No Documents Available"}),e.jsx(x,{children:"Policy documents will appear here once they have been uploaded."})]})})})}),e.jsx("section",{className:"py-12 bg-muted/30",children:e.jsxs("div",{className:"container mx-auto px-4 text-center",children:[e.jsx("h2",{className:"text-2xl font-semibold text-foreground mb-4",children:"Need a Document Not Listed?"}),e.jsx("p",{className:"text-muted-foreground mb-6 max-w-xl mx-auto",children:"If you require a policy, procedure or risk assessment that is not available above, please get in touch with us."}),e.jsx(m,{asChild:!0,variant:"outline",children:e.jsxs("a",{href:"mailto:[email protected]",children:[e.jsx(w,{className:"h-4 w-4 mr-2"}),"Contact Us"]})})]})})]}),e.jsx(j,{})]})}export{P 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.