PageSourceSearch

https://ncrponline.org/assets/index-C44YogY8.js

js ncrponline.org collected 2026-10-02 03:43:18 UTC 6,224 bytes, 141 lines download raw bytes

1import{d as i,j as t,R as M,e as R,c as L}from"./index-CL5CXY0i.js";import{r as y}from"./react-CryvJVFI.js";import{a as S}from"./heroSectionData-BW6B5Abm.js";import{H as A}from"./index-m2R28i_a.js";import{_ as B}from"./lodash-Bqp7oCxX.js";import{P as c}from"./index-DBTgMqXe.js";import{d as a}from"./index-DngTBLDh.js";import{M as F}from"./index-CdOaRW5M.js";import{B as H,F as I}from"./index-Ckvylm4c.js";import{u as N}from"./index-DydYCy08.js";import{u as z}from"./useFetchPacMembers-CAT8XWbK.js";import{F as T}from"./index-C3vpPgak.js";import"./lodashUtils-EZhUIFFV.js";import"./index-DNaSW-Dx.js";import"./react-toastify.esm-BcQ5eTVB.js";import"./react-content-loader.es-9HMRlSLY.js";const D=i.div`
2  display: flex;
3  align-items: center;
4  width: 100%;
5  min-height: 88px;
6  padding: 16px 20px;
7  background: #fff;
8  border-radius: 8px;
9  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
10  gap: 20px;
11  cursor: ${r=>r.onClick?"pointer":"default"};
12  transition: box-shadow 0.2s ease;
13
14  &:hover {
15    box-shadow: ${r=>r.onClick?"0 4px 12px rgba(0, 0, 0, 0.12)":"0 2px 8px rgba(0, 0, 0, 0.08)"};
16  }
17`,q=i.div`
18  flex-shrink: 0;
19  width: 56px;
20  height: 70px;
21  border-radius: 8px;
22  background: ${r=>`url(${r.src}) no-repeat center`};
23  background-size: cover;
24  background-color: #e8e8e8;
25`,E=i.div`
26  flex: 1;
27  min-width: 0;
28  display: flex;
29  align-items: center;
30  justify-content: space-between;
31  gap: 16px;
32  @media ${a.lg} {
33    flex-wrap: wrap;
34  }
35`,V=i.div`
36  min-width: 0;
37`,W=i.h3`
38  margin: 0;
39  color: #1a1a1a;
40  font-family: Montserrat, sans-serif;
41  font-size: 18px;
42  font-weight: 600;
43  line-height: 1.4;
44  letter-spacing: -0.3px;
45`,O=i.p`
46  margin: 0;
47  color: #6b6b6b;
48  font-family: Montserrat, sans-serif;
49  font-size: 14px;
50  font-weight: 400;
51  line-height: 1.4;
52  text-align: right;
53  max-width: 220px;
54
55  @media ${a.lg} {
56    width: 100%;
57    text-align: left;
58    margin-top: 4px;
59  }
60`;i.div``;i.div``;i.div``;i.p``;i.button``;i.div``;i.h2``;i.hr``;const j=({member:r,onButtonClick:g})=>{const{name:u,title:h,secondary_title:d,image:o,pac_role:m}=r,l=o?`${M}/member_images/${o}`:"/AdminPanel/MemberDetails/placeholder-100.png",p=[m].filter(Boolean),x=p.length>0?p.join(", "):"";return t.jsxs(D,{onClick:g,children:[t.jsx(q,{src:l}),t.jsxs(E,{children:[t.jsx(V,{children:t.jsx(W,{children:u})}),x?t.jsx(O,{children:x}):null]})]})};j.propTypes={member:c.shape({name:c.string.isRequired,title:c.string,
60secondary_title:c.string,image:c.string,pac_role:c.string}).isRequired,onButtonClick:c.func.isRequired};const U=i.div`
61  display: flex;
62  flex-direction: column;
63  align-items: center;
64  padding: 5rem 0;
65  background: #fff;
66  gap: 32px;
67  position: relative;
68
69  @media ${a.xl} {
70    padding: 5rem 0 10rem;
71  }
72
73  @media ${a.lg} {
74    padding: 5rem 0;
75  }
76`,G=i.div`
77  width: 95%;
78  max-width: 1400px;
79  margin: 0 auto;
80`;i.h1`
81  color: #282938;
82  font-family: Montserrat, sans-serif;
83  font-size: 36px;
84  font-weight: 700;
85  line-height: 1.3;
86  margin: 0 0 12px 0;
87  text-align: center;
88  @media ${a.lg} {
89    font-size: 28px;
90  }
91`;i.p`
92  color: #6b6b6b;
93  font-family: Montserrat, sans-serif;
94  font-size: 16px;
95  font-weight: 400;
96  line-height: 1.6;
97  margin: 0 0 32px 0;
98  text-align: center;
99  max-width: 720px;
100  @media ${a.lg} {
101    font-size: 15px;
102    margin-bottom: 24px;
103  }
104`;const Q=i.div`
105  display: flex;
106  flex-direction: column;
107  gap: 48px;
108  width: 100%;
109
110  .role-section,
111  .no-role-section {
112    column-count: 3;
113    column-gap: 24px;
114  }
115
116  @media ${a.lg} {
117    .role-section,
118    .no-role-section {
119      column-count: 2;
120    }
121  }
122
123  @media ${a.sm} {
124    .role-section,
125    .no-role-section {
126      column-count: 1;
127    }
128  }
129`,$=i.div`
130  break-inside: avoid;
131  margin-bottom: 24px;
132  width: 100%;
133`,J=i.div`
134  display: none;
135
136  @media ${a.lg} {
137    display: flex;
138    justify-content: center;
139    margin-top: 24px;
140  }
141`;function K({selectedPacId:r,headingOverride:g}){const{members:u,loading:h,error:d}=z(r),[o,m]=y.useState(!1),[l,p]=y.useState(null),x=N({query:"(max-width: 1079px)"});if(h)return t.jsx(T,{});if(d)return t.jsxs("div",{children:["Error: ",d]});const P=(e="")=>{if(!e)return"";const n=["jr","jr.","sr","sr.","ii","iii","iv","v"],s=e.replace(/,/g,"").trim().split(/\s+/),b=s[s.length-1].toLowerCase();return n.includes(b)&&s.length>1?s[s.length-2].toLowerCase():b},w={President:1,"Senior Vice President":2,Secretary:3,Treasurer:4,Chair:5,"Vice President":6,"Vice-President":6,Chairman:7,"Co-Chair":8,"Vice Chair":9,Director:10},C=B.orderBy(u,[e=>e.pac_role&&w[e.pac_role]?0:1,e=>P(e.name)],["asc","asc"]),v=C.filter(e=>e.pac_role&&w[e.pac_role]),f=C.filter(e=>!e.pac_role||!w[e.pac_role]),k=x&&!o?f.slice(0,4):f;g||(e=>{if(!e)return"Membership";const n=String(e).trim().toLowerCase(),s=parseInt(n,10);return Number.isNaN(s)?n==="sc"?"SC":n==="ac"?"AC":n.charAt(0).toUpperCase()+n.slice(1):`PAC ${s}`})(r);const _=e=>{if(!e)return"";const n=[e.pac_role,e.title,e.secondary_title].filter(Boolean),s=n.length?`<p><strong>${n.join(", ")}</strong></p>`:"",b=e.bio||"";return`${s}${b}`};return t.jsxs(U,{children:[t.jsx(G,{children:t.jsxs(Q,{children:[v.length>0&&t.jsx("div",{className:"role-section",children:v.map(e=>t.jsx($,{children:t.jsx(j,{member:e,onButtonClick:()=>p(e)})},e.id))}),f.length>0&&t.jsx("div",{className:"no-role-section",children:k.map(e=>t.jsx($,{children:t.jsx(j,{member:e,onButtonClick:()=>p(e)})},e.id))})]})}),x&&f.length>4&&t.jsx(J,{children:t.jsx(H,{onClick:()=>m(e=>!e),children:o?"Show Less":"Load More"})}),l&&t.jsx(F,{title:l.name,content:_(l),imageSrc:l.image?`${M}/member_images/${l.image}`:"/AdminPanel/MemberDetails/placeholder-100.png",onClose:()=>p(null)})]})}function he(){const{id:r}=R(),{pathname:g}=L();y.useEffect(()=>{"scrollRestoration"in window.history&&(window.history.scrollRestoration="manual"),window.scrollTo(0,0)},[g]);const h=`${(d=>{if(!d)return S.mainHeading;const o=String(d).trim().toLowerCase(),m=parseInt(o,10);return Number.isNaN(m)?o==="sc"?"SC":o==="ac"?"AC":o.charAt(0).toUpperCase()+o.slice(1):`PAC ${m}`})(r)} Members`;return t.jsxs("div",{children:[t.jsx(A,{mainHeading:h,backgroundImage:S.backgroundImage}),t.jsx(K,{selectedPacId:r,headingOverride:h}),t.jsx(I,{})]})}export{he 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.