1import{M as C,N as P,h as n,k as e,p as d,a2 as I,o as T,K as u,C as x}from"./indexhtml-CRmPj3fm.js";import{S as H}from"./seo-Cr2hitEq.js";import{H as L}from"./header-BVfe_XtN.js";import{R as a}from"./reveal-BSCYXK55.js";import{S as O}from"./section-heading-kTFKdsfU.js";import{C as A,a as Z,b as E,c as B,d as D,e as V,f as W}from"./command-DYPv3fl5.js";import{P as R,a as F,b as G}from"./popover-yzbz52QD.js";import"./commonjsHelpers-Cpj98o6Y.js";import"./chevron-right-BsiW1jwk.js";import"./search-J8PR0bLp.js";import"./index-DJ6Wf0Yc.js";async function M(g){return C.call("SafetyClubEndPoint","getSafetyClubs",{},g)}function _(){var g=P(1);try{const[o,S]=n.useState([]),[f,b]=n.useState(0),[c,y]=n.useState(!0),[m,j]=n.useState(null),[v,N]=n.useState(!1);n.useEffect(()=>{(async()=>{y(!0),j(null);try{const r=await M()??[];S(r),b(0)}catch(t){console.error(t),j("Failed to load safety clubs")}finally{y(!1)}})()},[]);const p=o.length>0,i=n.useMemo(()=>p?o[f]??null:null,[p,o,f]),h=i?.clubs??[],z=h.length>5?"grid gap-4 sm:grid-cols-2 lg:grid-cols-3":"space-y-4",k=s=>{const t=o.findIndex(r=>r.province===s);t>=0&&b(t)},K=14,X="max-h-56 md:max-h-64",$=()=>{const s=i?.province??"",t=!!s;return e.jsxs(R,{open:v,onOpenChange:N,children:[e.jsx(F,{asChild:!0,children:e.jsxs("button",{type:"button",role:"combobox","aria-expanded":v,className:d("w-full sm:w-72 flex items-center justify-between rounded-full border px-4 py-2 text-sm font-semibold transition-colors bg-transparent",t?"border-primary bg-primary/10 text-primary hover:bg-primary/15":"border-muted-foreground/20 bg-background text-foreground hover:bg-muted/60"),disabled:!p||c,children:[e.jsx("span",{className:"truncate",children:s||"Select Province"}),e.jsx(A,{className:d("h-4 w-4",t?"text-primary":"opacity-50")})]})}),e.jsx(G,{className:"w-[min(92vw,22rem)] p-0",align:"start",children:e.jsxs(Z,{children:[e.jsx(E,{placeholder:"Search province...",className:"h-9"}),e.jsxs(B,{children:[e.jsx(D,{children:"No province found."}),e.jsx(V,{children:o.map(r=>{const l=r.province??"",w=l===s;return e.jsxs(W,{value:l,onSelect:()=>{k(l),N(!1)},className:d("mx-2 my-1 rounded-full border px-4 py-2 text-sm font-semibold transition-colors","data-[selected=true]:bg-transparent data-[selected=true]:text-inherit",w?"border-primary bg-primary/10 text-primary":"border-transparent hover:border-muted-foreground/20 hover:bg-muted/60"),children:[e.jsx("span",{className:"truncate",children:l}),e.jsx(I,{className:d("ml-auto h-4 w-4",w?"opacity-100 text-primary":"opacity-0")})]},l)})})]})]})})]})};return e.jsxs("div",{className:"bg-muted/30 mb-0",children:[e.jsx(H,{title:"Occupational Safety and Health",description:"How the Workers' Compensation Fund Control Board prevents accidents and occupational disease through inspections, training, the Vision Zero campaign and the Safe Workers of Tomorrow programme.",path:"/safetyhealth"}),e.jsx(L,{eyebrow:"Prevention",label:"Occupational Safety and Health",description:`The Board, under the Department of Occupational Health and Safety, draws its mandate from Part III, Section 11, subsection 3 (a) and (b) of the ${T} Act No. 10 of 1999, namely: the prevention of accidents or occupational diseases, and the promotion of the health and safety of workers.`,descriptionSize:"lg"}),e.jsx(u,{className:"!pt-0 !py-16 md:!py-24",children:e.jsxs(x,{children:[e.jsx(a,{children:e.jsx(O,{eyebrow:"Accident prevention",title:"The accident prevention strategies the Board carries out",description:"A layered approach that combines inspections, training and national campaigns to keep Zambian workplaces free of accidents and occupational disease.",className:"mb-12"})}),e.jsxs("div",{className:"grid gap-10 md:grid-cols-2 items-center",children:[e.jsx(a,{className:"relative h-auto md:h-full",children:e.jsxs("div",{className:"relative h-full w-full overflow-hidden rounded-2xl border border-muted bg-background shadow-sm",children:[e.jsx("img",{className:"h-full w-full object-cover",src:"/images/risk.png",alt:"Site safety inspections and risk assessments"}),e.jsx("div",{className:"pointer-events-none absolute bottom-4 left-4 rounded-full bg-primary/80 px-4 py-1 text-xs font-medium text-white backdrop-blur",children:"Site inspections. Risk asse
1ssments."})]})}),e.jsxs(a,{delay:.08,className:"space-y-5",children:[e.jsx("span",{className:"inline-flex items-center rounded-full bg-primary/10 px-3 py-1 text-xs font-semibold uppercase tracking-[0.18em] text-primary",children:"01"}),e.jsx("h2",{className:"text-2xl md:text-3xl font-semibold tracking-tight text-foreground",children:"Site Safety Inspections and Risk Assessments at Workplaces"}),e.jsx("p",{className:"text-sm md:text-base text-muted-foreground leading-relaxed",children:"These are inspections conducted by the Department to avert accidents and occupational diseases in workplaces. They are guided by the departmental annual work plan and include both inspections carried out solely by the Department and joint inspections undertaken with the Ministry of Labour and Social Security."})]})]})]})}),e.jsx(u,{className:"!py-16 md:!py-24 bg-background",children:e.jsx(x,{children:e.jsxs("div",{className:"grid gap-10 md:grid-cols-2 items-center",children:[e.jsxs(a,{className:"space-y-5 order-2 md:order-1",children:[e.jsx("span",{className:"inline-flex items-center rounded-full bg-primary/10 px-3 py-1 text-xs font-semibold uppercase tracking-[0.18em] text-primary",children:"02"}),e.jsx("h2",{className:"text-2xl md:text-3xl font-semibold tracking-tight text-foreground",children:"Health and Safety Training"}),e.jsx("p",{className:"text-sm md:text-base text-muted-foreground leading-relaxed",children:"The Department conducts occupational safety and health training programmes aimed at equipping employers, workers and safety representatives with practical knowledge on hazard identification, risk assessment, safe work procedures and compliance with relevant legislation. Trainings are informed by the annual work plan and may be delivered in-house, onsite at workplaces or in collaboration with strategic partners."})]}),e.jsx(a,{delay:.08,className:"relative h-auto md:h-full order-1 md:order-2",children:e.jsxs("div",{className:"relative h-full w-full overflow-hidden rounded-2xl border border-muted bg-background shadow-sm",children:[e.jsx("img",{className:"h-full w-full object-cover",src:"/images/saftetytrainning.png",alt:"Health and safety training session"}),e.jsx("div",{className:"pointer-events-none absolute bottom-4 left-4 rounded-full bg-primary/80 px-4 py-1 text-xs font-medium text-white backdrop-blur",children:"Training. Safe work practices."})]})})]})})}),e.jsx(u,{className:"!py-16 md:!py-24",children:e.jsx(x,{children:e.jsxs("div",{className:"grid gap-10 md:grid-cols-2 items-center",children:[e.jsx(a,{className:"relative h-auto md:h-full",children:e.jsxs("div",{className:"relative h-full w-full overflow-hidden rounded-2xl border border-muted bg-background shadow-sm",children:[e.jsx("img",{className:"h-full w-full object-cover",src:"/images/vision2.png",alt:"Vision Zero campaign workers"}),e.jsx("div",{className:"pointer-events-none absolute bottom-4 left-4 rounded-full bg-primary/80 px-4 py-1 text-xs font-medium text-white backdrop-blur",children:"Vision Zero. Safe and healthy workplaces."})]})}),e.jsxs(a,{delay:.08,className:"space-y-5",children:[e.jsx("span",{className:"inline-flex items-center rounded-full bg-secondary/10 px-3 py-1 text-xs font-semibold uppercase tracking-[0.18em] text-secondary",children:"03"}),e.jsx("h2",{className:"text-2xl md:text-3xl font-semibold tracking-tight text-foreground",children:"Vision Zero Global Campaign"}),e.jsx("p",{className:"text-sm md:text-base text-muted-foreground leading-relaxed",children:"The Vision Zero Campaign is a global accident prevention initiative developed by the International Social Security Association (ISSA) in conjunction with the International Labour Organization (ILO). It provides a global platform and strategy for accident prevention and for promoting workers' safety, health and wellbeing. The main aim is to achieve a world of work free of occupational accidents and diseases. Workers' Compensation Fund Control Board (WCFCB) has aligned the Vision Zero Campaign to the National Vision 2030."}),e.jsxs("div",{className:"rounded-2xl border border-muted bg-background p-6 space-y-3 shadow-sm",children:[e.jsx("p",{className:"text-xs font-semibold tracking-[0.18em] text-primary uppercase",children:"Key Milestones"}),e.jsxs("ul",{className:"space-y-2 text-sm text-muted-foreground",children:[e.jsxs("li",{children:[e.jsx("span",{className:"font-semibold text-foreground",children:"2017. Global launch:"})," ","XXI World Congress on Safety and Health at Work, Singapore (3 to 6 September 2017)."]}),e.jsxs("li",{children:[e.jsx("span",{className:"font-semibold text-foreground",children:"2018. African launches:"})," ","Ivory Coast (April), Lagos, Nigeria (June) and Ghana (October)."]}),e.jsxs("li",{children:[e.jsx("span",{className:"font-semibold text-foreground",children:"14 December 2018. Zambia:"})," ","WCFCB, in collaboration with ISSA and the Ministry of Labour and Social Security, held the National Launch of the Vision Zero Campaign."]})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Zambia became the fourth African country, and the first in the Southern African Development Community (SADC), to successfully launch the Vision Zero Campaign."})]})]})]})})}),e.jsx(u,{className:"!py-16 md:!py-24 bg-background",children:e.jsx(x,{children:e.jsxs("div",{className:"grid gap-10 md:grid-cols-1 items-center",children:[e.jsxs(a,{className:"space-y-5",children:[e.jsx("span",{className:"inline-flex items-center rounded-full bg-primary/10 px-3 py-1 text-xs font-semibold uppercase tracking-[0.18em] text-primary",children:"04"}),e.jsx("h2",{className:"text-2xl md:text-3xl font-semibold tracking-tight text-foreground",children:"Safe Workers of Tomorrow Campaign"}),e.jsx("p",{className:"text-sm md:text-base text-muted-foreground leading-relaxed",children:"This is a campaign aimed at promoting and developing a future cadre of safety-conscious workers among school going learners. This is promoted through the formation of Safety Clubs in Schools. So far, sixty nine (69) safety clubs have been formed in sixty nine (69) schools in nine
1(9) branches."})]}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsx("h3",{className:"text-lg font-semibold tracking-tight text-foreground",children:"Provinces"}),c&&e.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading safety clubs..."}),m&&e.jsx("p",{className:"text-sm text-destructive",children:m}),!c&&!m&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"-mx-1 overflow-x-auto",children:e.jsx("div",{className:"flex w-max gap-2 px-1 pb-1",children:o.map((s,t)=>{const r=s.clubs?.length??0;return e.jsxs("button",{type:"button",onClick:()=>b(t),className:d("whitespace-nowrap rounded-full border px-4 py-2 text-sm font-semibold transition-colors",t===f?"border-primary bg-primary/10 text-primary":"border-muted-foreground/20 bg-background hover:bg-muted/60 text-foreground"),children:[e.jsx("span",{children:s.province}),e.jsx("span",{className:"ml-2 text-xs font-normal text-muted-foreground",children:r})]},s.province)})})}),!p&&e.jsx("p",{className:"text-sm text-muted-foreground",children:"No safety clubs available yet."})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-lg font-semibold tracking-tight text-foreground",children:i?`Schools in ${i.province} Province`:"Schools"}),!c&&!m&&i&&e.jsxs("div",{className:h.length>5?"grid gap-4 sm:grid-cols-2 lg:grid-cols-4":"space-y-4",children:[h.map(s=>e.jsxs("div",{className:"rounded-2xl border border-muted bg-background p-6 shadow-sm",children:[e.jsx("p",{className:"text-xs font-semibold uppercase tracking-wide text-primary mb-2",children:s.town}),e.jsx("ul",{className:(s.schools?.length??0)>5?"grid grid-cols-2 gap-x-6 gap-y-1 text-sm text-muted-foreground sm:grid-cols-3 lg:grid-cols-4":"space-y-1 text-sm text-muted-foreground",children:s.schools?.map(t=>e.jsxs("li",{className:"flex items-start gap-2 text-muted-foreground",children:[e.jsx("span",{className:"mt-2 h-1.5 w-1.5 shrink-0 rounded-full bg-muted-foreground"}),e.jsx("span",{className:"text-sm leading-relaxed",children:t})]},t))})]},s.town)),h.length===0&&e.jsx("p",{className:"text-sm text-muted-foreground",children:"No schools registered under this province yet."})]})]})]})]})})})]})}finally{g.f()}}Object.defineProperty(_,"name",{value:"SafetyHealth"});export{_ 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.