PageSourceSearch

https://www.utchinese.org/static/js/368.4e77b911.chunk.js

js utchinese.org collected 2026-10-04 10:07:36 UTC 59,104 bytes, 1,232 lines download raw bytes

1"use strict";(self.webpackChunkutchinese_network_frontend=self.webpackChunkutchinese_network_frontend||[]).push([[368],{2605:(e,r,i)=>{i.d(r,{A:()=>v});var a=i(5043),t=i(5464),s=i(995),n=i(4117),o=i(5200),l=i(6720),d=i(184),c=i(8180),p=i(3245),m=i(579);const h=(0,t.Ay)(s.P.div)`
2  border-radius: 24px;
3  background: var(--card-bg);
4  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
5  border: 1px solid var(--border);
6  position: relative;
7  overflow: hidden;
8  padding: 2.5rem;
9  width: 100%;
10  margin: 0 auto;
11  
12  @media (max-width: 768px) {
13    padding: 1.5rem;
14    border-radius: 20px;
15  }
16  
17  .card-bg {
18    position: absolute;
19    top: 0;
20    left: 0;
21    width: 100%;
22    height: 100%;
23    background-image: url('/logo.png');
24    background-repeat: no-repeat;
25    background-position: 80% 5%;
26    background-size: 200px;
27    opacity: 0.05;
28    transition: all 0.5s ease;
29    
30    @media (max-width: 768px) {
31      background-position: 105% 95%;
32      background-size: 150px;
33      transform: rotate(15deg);
34    }
35  }
36  
37  &:hover .card-bg {
38    opacity: 0.1;
39    transform: scale(1.1) rotate(-5deg);
40  }
41  
42  [data-theme="dark"] & {
43    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.3);
44    
45    .card-bg {
46      opacity: 0.08;
47    }
48    
49    &:hover .card-bg {
50      opacity: 0.15;
51    }
52  }
53`,x=t.Ay.div`
54  position: relative;
55  z-index: 2;
56  display: flex;
57  flex-direction: column;
58  gap: 2rem;
59`,u=t.Ay.div`
60  display: flex;
61  align-items: center;
62  gap: 2rem;
63  @media (max-width: 768px) {
64    flex-direction: column;
65    gap: 1.2rem;
66    text-align: center;
67  }
68  
69  .avatar-section {
70    display: flex;
71    flex-direction: column;
72    align-items: center;
73    gap: 4rem;
74    flex-shrink: 0;
75    
76    @media (max-width: 768px) {
77      flex-direction: row;
78      gap: 1.5rem;
79      justify-content: center;
80    }
81  }
82  
83  .avatar {
84    width: 100px;
85    height: 100px;
86    border-radius: 50%;
87    object-fit: cover;
88    border: 4px solid var(--primary);
89    box-shadow: 0 8px 25px rgba(224, 43, 32, 0.2);
90    flex-shrink: 0;
91  }
92
93  .placeholder {
94    width: 100px;
95    height: 100px;
96    border-radius: 50%;
97    background: linear-gradient(135deg, var(--primary), var(--accent));
98    display: flex;
99    align-items: center;
100    justify-content: center;
101    color: white;
102    font-size: 2.5rem;
103    font-weight: bold;
104    border: 4px solid rgba(255,255,255,0.3);
105    box-shadow: 0 8px 25px rgba(224, 43, 32, 0.2);
106    flex-shrink: 0;
107  }
108
109  .qr-code {
110    background: white;
111    padding: 8px;
112    border-radius: 12px;
113    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
114    display: flex;
115    align-items: center;
116    justify-content: center;
117    width: 100px;
118    height: 100px;
119  }
120
121  .identity {
122    flex: 1;
123    display: flex;
124    flex-direction: column;
125    gap: 1rem;
126    margin-top: -0.5rem;
127    align-items: flex-start;
128    text-align: left;
129    
130    @media (max-width: 768px) {
131      align-items: center;
132      text-align: center;
133    }
134    
135    .name-section {
136      h2 {
137        margin: 0 0 0.25rem 0;
138        color: var(--text);
139        font-size: 2rem;
140        font-weight: 700;
141        display: flex;
142        align-items: center;
143        gap: 0.5rem;
144        
145        @media (max-width: 768px) {
146          font-size: 1.7rem;
147          justify-content: center;
148        }
149        
150        .verification-icon {
151          font-size: 1.3rem;
152          position: relative;
153          top: 2px;
154          transition: all 0.3s ease;
155          margin-left: 0.3rem;
156          
157          &.verified {
158            color: #1DA1F2; /* Twitter blue */
159            filter: drop-shadow(0 1px 3px rgba(29, 161, 242, 0.4));
160          }
161          
162          &.unverified {
163            color: #9CA3AF; /* Gray */
164            opacity: 0.5;
165          }
166          
167          &:hover {
168            transform: scale(1.05);
169            filter: brightness(1.1);
170          }
171        }
172      }
173      
174      .alt-name {
175        color: var(--text-light);
176        font-size: 1.1rem;
177        font-weight: 500;
178        opacity: 0.8;
179      }
180    }
181    
182    .position-section {
183      .position {
184        margin: 0 0 0.5rem 0;
185        color: var(--primary);
186        font-size: 1.1rem;
187        font-weight: 600;
188      }
189      
190      .department-tag {
191        display: inline-flex;
192        align-items: center;
193        gap: 0.5rem;
194        background: linear-gradient(135deg, rgba(224, 43, 32, 0.1), rgba(252, 185, 0, 0.1));
195        color: var(--primary);
196        padding: 0.5rem 1rem;
197        border-radius: 20px;
198        font-size: 0.9rem;
199        font-weight: 500;
200        border: 1px solid rgba(224, 43, 32, 0.2);
201        
202        .dept-icon {
203          font-size: 1rem;
204        }
205      }
206    }
207  }
208`,g=t.Ay.div`
209  margin-top: 1rem;
210  
211  .bio {
212    color: var(--text);
213    font-size: 0.95rem;
214    line-height: 1.5;
215    margin: 0;
216    max-width: 100%;
217    white-space: pre-wrap;
218    
219    &.no-bio {
220      color: var(--text-light);
221      font-style: italic;
222    }
223  }
224`,f=t.Ay.div`
225  border-top: 2px solid var(--border);
226  padding-top: 1.5rem;
227  
228  .contact-info {
229    display: flex;
230    align-items: center;
231    flex-wrap: wrap;
232    gap: 1.5rem;
233    
234          .contact-item {
235        display: flex;
236        align-items: center;
237        gap: 0.5rem;
238        color: var(--text-light);
239        font-size: 0.9rem;
240        min-width: 0; // 允许 flex 项目收缩
241        
242        .icon {
243          color: var(--primary);
244          font-size: 1rem;
245          flex-shrink: 0;
246        }
247        
248        span, a {
249          overflow: hidden;
250          text-overflow: ellipsis;
251          white-space: nowrap;
252          max-width: 280px; // 增加最大宽度,为英文内容提供更多空间
253          color: inherit; // 保持继承的颜色
254          text-decoration: none; // 移除下划线
255          transition: opacity 0.2s ease;
256          
257          @media (max-width: 768px) {
258            max-width: 250px;
259          }
260          
261          &:hover {
262            opacity: 0.8;
263          }
264        }
265      }
266  }
267  
268  @media (max-width: 768px) {
269    .contact-info {
270      flex-direction: column;
271      gap: 1rem;
272    }
273  }
274`,v=e=>{var r;let{staff:i}=e;const{t:t,i18n:s}=(0,n.Bd)(),[v,b]=(0,a.useState)(!1),{name_en:j,name_zh:w,position_en:y,position_zh:N,department:T,bio_en:P,bio_zh:k,avatarUrl:A,email:z,linkedin:E,github:S,wechat:_,phone:F,mbti:C,status:I,username:J}=i,R="zh"===s.language?w:j,$="zh"===s.language?N:y,U="zh"===s.language?k:P,q="zh"===s.language?j:w,O=(0,c.u0)(A),B=J?`${window.location.origin}/team/${J}`:window.location.href;(0,a.useEffect)((()=>{b(!1)}),[O]);return(0,m.jsxs)(h,{initial:{opacity:0,scale:.98}
274,animate:{opacity:1,scale:1},transition:{duration:.2,ease:"easeOut"},children:[(0,m.jsx)("div",{className:"card-bg"}),(0,m.jsxs)(x,{children:[(0,m.jsxs)(u,{children:[(0,m.jsxs)("div",{className:"avatar-section",children:[O&&!v?(0,m.jsx)("img",{src:O,alt:"Avatar",className:"avatar",onError:()=>{b(!0)}}):(0,m.jsx)("div",{className:"placeholder",children:null===(r=R||t("staff.profile.permissions.noName"))||void 0===r?void 0:r.charAt(0).toUpperCase()}),J&&(0,m.jsx)("div",{className:"qr-code",title:"Scan to view profile",children:(0,m.jsx)(p.Ay,{value:B,size:84,fgColor:"#e02b20",bgColor:"transparent",level:"H"})})]}),(0,m.jsxs)("div",{className:"identity",children:[(0,m.jsxs)("div",{className:"name-section",children:[(0,m.jsxs)("h2",{children:[R||t("staff.profile.permissions.noName"),(0,m.jsx)(l._IM,{className:"verification-icon "+("approved"===I?"verified":"unverified"),title:t("approved"===I?"staff.profile.verified":"staff.profile.unverified")})]}),q&&q!==R?(0,m.jsx)("span",{className:"alt-name",children:q}):(0,m.jsx)("span",{className:"alt-name",children:t("staff.profile.permissions.noAltName")})]}),(0,m.jsxs)("div",{className:"position-section",children:[(0,m.jsx)("p",{className:"position",children:$}),T&&(0,m.jsxs)("div",{className:"department-tag",children:[(0,m.jsx)(o.cfS,{className:"dept-icon"}),(0,m.jsx)("span",{children:T})]})]}),(0,m.jsx)(g,{children:U?(0,m.jsx)("p",{className:"bio",children:U.length>800?U.substring(0,800)+"...":U}):(0,m.jsx)("p",{className:"bio no-bio",children:t("staff.profile.permissions.noBio")})})]})]}),(0,m.jsx)(f,{children:(0,m.jsxs)("div",{className:"contact-info",children:[z&&(0,m.jsxs)("div",{className:"contact-item",children:[(0,m.jsx)(o.pHD,{className:"icon"}),(0,m.jsx)("span",{children:z})]}),F&&(0,m.jsxs)("div",{className:"contact-item",children:[(0,m.jsx)(o.QFc,{className:"icon"}),(0,m.jsx)("span",{children:F})]}),E&&(0,m.jsxs)("div",{className:"contact-item",children:[(0,m.jsx)(o.Wjy,{className:"icon"}),(0,m.jsx)("a",{href:E,target:"_blank",rel:"noopener noreferrer",children:"LinkedIn"})]}),S&&(0,m.jsxs)("div",{className:"contact-item",children:[(0,m.jsx)(o.BR8,{className:"icon"}),(0,m.jsx)("a",{href:S,target:"_blank",rel:"noopener noreferrer",children:"GitHub"})]}),_&&(0,m.jsxs)("div",{className:"contact-item",children:[(0,m.jsx)(d.mpG,{className:"icon"}),(0,m.jsxs)("span",{children:["WeChat: ",_]})]}),C&&(0,m.jsxs)("div",{className:"contact-item",children:[(0,m.jsx)(o.JXP,{className:"icon"}),(0,m.jsxs)("a",{href:(e=>{if(!e)return null;return`https://www.16personalities.com/ch/${e.split("-")[0].toLowerCase()}-\u4eba\u683c`})(C),target:"_blank",rel:"noopener noreferrer",children:["MBTI: ",C]})]})]})})]})]})}},4695:(e,r,i)=>{i.d(r,{A:()=>g});i(5043);var a=i(5464),t=i(579);const s=a.i7`
275  0%, 80%, 100% {
276    transform: scale(0.8);
277    opacity: 0.5;
278  }
279  40% {
280    transform: scale(1.2);
281    opacity: 1;
282  }
283`,n=a.i7`
284  0%, 60%, 100% {
285    transform: initial;
286  }
287  30% {
288    transform: translateY(-10px);
289  }
290`,o=a.i7`
291  0%, 80%, 100% {
292    opacity: 0.3;
293  }
294  40% {
295    opacity: 1;
296  }
297`,l=a.i7`
298  0% {
299    transform: rotate(0deg);
300  }
301  100% {
302    transform: rotate(360deg);
303  }
304`,d=a.i7`
305  0% {
306    background-position: -468px 0;
307  }
308  100% {
309    background-position: 468px 0;
310  }
311`,c=a.Ay.div`
312  display: inline-flex;
313  align-items: center;
314  justify-content: center;
315  gap: 0.25rem;
316`,p=a.Ay.div`
317  width: 8px;
318  height: 8px;
319  border-radius: 50%;
320  background: var(--primary);
321  animation: ${s} 1.4s ease-in-out infinite both;
322  animation-delay: ${e=>e.delay}s;
323`,m=a.Ay.div`
324  width: 6px;
325  height: 20px;
326  border-radius: 3px;
327  background: linear-gradient(45deg, var(--primary), var(--accent));
328  animation: ${n} 1.2s ease-in-out infinite;
329  animation-delay: ${e=>e.delay}s;
330`,h=a.Ay.div`
331  width: 10px;
332  height: 10px;
333  border-radius: 50%;
334  background: var(--primary);
335  animation: ${o} 1.4s linear infinite;
336  animation-delay: ${e=>e.delay}s;
337`,x=a.Ay.div`
338  width: ${e=>e.size||20}px;
339  height: ${e=>e.size||20}px;
340  border: 2px solid rgba(224, 43, 32, 0.1);
341  border-top: 2px solid var(--primary);
342  border-radius: 50%;
343  animation: ${l} 0.8s linear infinite;
344`,u=a.Ay.div`
345  width: ${e=>e.width||"100px"};
346  height: ${e=>e.height||"20px"};
347  border-radius: 4px;
348  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
349  background-size: 400% 100%;
350  animation: ${d} 1.2s ease-in-out infinite;
351  
352  [data-theme="dark"] & {
353    background: linear-gradient(90deg, #2a2a2a 25%, #3a3a3a 50%, #2a2a2a 75%);
354    background-size: 400% 100%;
355  }
356`,g=e=>{let{type:r="pulse",size:i,color:a,className:s,...n}=e;switch(r){case"pulse":default:return(0,t.jsxs)(c,{className:s,...n,children:[(0,t.jsx)(p,{delay:0}),(0,t.jsx)(p,{delay:.2}),(0,t.jsx)(p,{delay:.4})]});case"wave":return(0,t.jsxs)(c,{className:s,...n,children:[(0,t.jsx)(m,{delay:0}),(0,t.jsx)(m,{delay:.1}),(0,t.jsx)(m,{delay:.2}),(0,t.jsx)(m,{delay:.3}),(0,t.jsx)(m,{delay:.4})]});case"fade":return(0,t.jsxs)(c,{className:s,...n,children:[(0,t.jsx)(h,{delay:0}),(0,t.jsx)(h,{delay:.5}),(0,t.jsx)(h,{delay:1})]});case"ring":return(0,t.jsx)(x,{size:i,className:s,...n});case"skeleton":return(0,t.jsx)(u,{width:n.width,height:n.height,className:s})}}}
356,9368:(e,r,i)=>{i.r(r),i.d(r,{default:()=>S});var a=i(5043),t=i(4117),s=i(3216),n=i(5464),o=i(995),l=i(3546),d=i(5200),c=i(184),p=i(5016),m=i(8180),h=i(2605),x=i(2979),u=i(4695),g=i(579);const f=(0,n.Ay)(o.P.div)`
357  position: fixed;
358  top: 0;
359  left: 0;
360  right: 0;
361  bottom: 0;
362  width: 100vw;
363  height: 100vh;
364  background: rgba(0, 0, 0, 0.7);
365  backdrop-filter: blur(10px);
366  display: flex;
367  align-items: center;
368  justify-content: center;
369  z-index: 10000;
370  padding: 1rem;
371  box-sizing: border-box;
372  pointer-events: auto;
373  margin: 0;
374  overflow: hidden;
375`,v=(0,n.Ay)(o.P.div)`
376  background: white;
377  border-radius: 20px;
378  padding: 2rem;
379  width: 100%;
380  max-width: 450px;
381  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.25);
382  position: relative;
383  max-height: 90vh;
384  overflow-y: auto;
385
386  .close-button {
387    position: absolute;
388    top: 1rem;
389    right: 1rem;
390    background: none;
391    border: none;
392    font-size: 1.5rem;
393    cursor: pointer;
394    color: #6b7280;
395    transition: color 0.3s ease;
396    padding: 0.5rem;
397    border-radius: 50%;
398    display: flex;
399    align-items: center;
400    justify-content: center;
401    width: 40px;
402    height: 40px;
403    
404    &:hover {
405      color: #374151;
406      background: #f3f4f6;
407    }
408  }
409
410  .modal-header {
411    margin-bottom: 2rem;
412    text-align: center;
413    
414    h2 {
415      color: #1f2937;
416      margin-bottom: 0.5rem;
417      font-size: 1.8rem;
418      font-weight: 700;
419    }
420    
421    p {
422      color: #6b7280;
423      margin: 0;
424      font-size: 1rem;
425    }
426  }
427
428  @media (max-width: 480px) {
429    margin: 1rem;
430    padding: 1.5rem;
431    
432    .modal-header h2 {
433      font-size: 1.5rem;
434    }
435  }
436`,b=n.Ay.form`
437  .form-group {
438    margin-bottom: 1.5rem;
439    
440    label {
441      display: block;
442      margin-bottom: 0.5rem;
443      color: var(--text);
444      font-weight: 500;
445      font-size: 0.9rem;
446    }
447    
448    .input-wrapper {
449      position: relative;
450      
451      .input-icon {
452        position: absolute;
453        left: 1rem;
454        top: 50%;
455        transform: translateY(-50%);
456        color: var(--text-light);
457        font-size: 1.1rem;
458        z-index: 1;
459      }
460      
461      .toggle-password {
462        position: absolute;
463        right: 1rem;
464        top: 50%;
465        transform: translateY(-50%);
466        background: none;
467        border: none;
468        color: var(--text-light);
469        cursor: pointer;
470        font-size: 1.1rem;
471        transition: color 0.3s ease;
472        
473        &:hover {
474          color: var(--primary);
475        }
476      }
477    }
478    
479    input {
480      width: 100%;
481      padding: 1rem 1rem 1rem 3rem;
482      border: 2px solid #e5e7eb;
483      border-radius: 12px;
484      font-size: 1rem;
485      transition: all 0.3s ease;
486      background: #f9fafb;
487      
488      &:focus {
489        outline: none;
490        border-color: var(--primary);
491        background: white;
492        box-shadow: 0 0 0 3px rgba(224, 43, 32, 0.1);
493      }
494      
495      &::placeholder {
496        color: #9ca3af;
497      }
498    }
499    
500    .error-message {
501      margin-top: 0.5rem;
502      color: #ef4444;
503      font-size: 0.85rem;
504      display: flex;
505      align-items: center;
506      gap: 0.25rem;
507    }
508  }
509  
510  .password-requirements {
511    margin-top: 0.5rem;
512    color: #6b7280;
513    font-size: 0.85rem;
514    line-height: 1.4;
515  }
516  
517  .submit-button {
518    width: 100%;
519    background: linear-gradient(135deg, var(--primary), var(--accent));
520    color: white;
521    border: none;
522    padding: 1rem 2rem;
523    border-radius: 12px;
524    font-size: 1rem;
525    font-weight: 600;
526    cursor: pointer;
527    transition: all 0.3s ease;
528    position: relative;
529    overflow: hidden;
530    display: flex;
531    align-items: center;
532    justify-content: center;
533    gap: 0.5rem;
534    
535    &:hover:not(:disabled) {
536      transform: translateY(-2px);
537      box-shadow: 0 10px 25px rgba(224, 43, 32, 0.3);
538    }
539    
540    &:disabled {
541      opacity: 0.7;
542      cursor: not-allowed;
543      transform: none;
544    }
545    
546    .loading-spinner {
547      width: 20px;
548      height: 20px;
549      border: 2px solid rgba(255, 255, 255, 0.3);
550      border-top: 2px solid white;
551      border-radius: 50%;
552      animation: spin 1s linear infinite;
553    }
554    
555    @keyframes spin {
556      0% { transform: rotate(0deg); }
557      100% { transform: rotate(360deg); }
558    }
559  }
560  
561  .success-message {
562    margin-bottom: 1rem;
563    color: #10b981;
564    font-size: 0.9rem;
565    text-align: center;
566    background: #ecfdf5;
567    padding: 0.75rem;
568    border-radius: 8px;
569    border: 1px solid #a7f3d0;
570  }
571`,j=e=>{let{isOpen:r,onClose:i,onSuccess:s}=e;const{t:n}=(0,t.Bd)(),[o,c]=(0,a.useState)({currentPassword:"",newPassword:"",confirmPassword:""}),[p,h]=(0,a.useState)({current:!1,new:!1,confirm:!1}),[j,w]=(0,a.useState)(!1),[y,N]=(0,a.useState)(""),[T,P]=(0,a.useState)(""),k=e=>{const{name:r,value:i}=e.target;c((e=>({...e,[r]:i}))),y&&N(""),T&&P("")},A=e=>{h((r=>({...r,[e]:!r[e]})))},z=()=>{j||(c({currentPassword:"",newPassword:"",confirmPassword:""}),N(""),P(""),h({current:!1,new:!1,confirm:!1}),i())};return(0,g.jsx)(x.A,{children:(0,g.jsx)(l.N,{children:r&&(0,g.jsx)(f,{initial:{opacity:0}
571,animate:{opacity:1},exit:{opacity:0},onClick:z,children:(0,g.jsxs)(v,{initial:{opacity:0,scale:.9,y:20},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.9,y:20},onClick:e=>e.stopPropagation(),children:[(0,g.jsx)("button",{className:"close-button",onClick:z,type:"button",disabled:j,children:(0,g.jsx)(d.yGN,{})}),(0,g.jsxs)("div",{className:"modal-header",children:[(0,g.jsx)("h2",{children:n("changePassword.title")}),(0,g.jsx)("p",{children:n("changePassword.subtitle")})]}),(0,g.jsxs)(b,{onSubmit:async e=>{if(e.preventDefault(),o.currentPassword.trim()?o.newPassword.trim()?o.newPassword.trim().length<6?(N(n("changePassword.error.passwordTooShort")),0):o.confirmPassword.trim()?o.newPassword.trim()!==o.confirmPassword.trim()?(N(n("changePassword.error.passwordsDoNotMatch")),0):o.currentPassword.trim()!==o.newPassword.trim()||(N(n("changePassword.error.samePassword")),0):(N(n("changePassword.error.confirmPasswordRequired")),0):(N(n("changePassword.error.newPasswordRequired")),0):(N(n("changePassword.error.currentPasswordRequired")),0)){w(!0),N(""),P("");try{const e=await(0,m.ec)(o.currentPassword.trim(),o.newPassword.trim());P(n("changePassword.success")),c({currentPassword:"",newPassword:"",confirmPassword:""}),setTimeout((()=>{s&&s(e),i()}),2e3)}catch(y){var r,a;console.error("Change password error:",y),N((null===(r=y.response)||void 0===r||null===(a=r.data)||void 0===a?void 0:a.error)||n("changePassword.error.failed"))}finally{w(!1)}}},children:[T&&(0,g.jsx)("div",{className:"success-message",children:T}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsx)("label",{htmlFor:"currentPassword",children:n("changePassword.currentPassword")}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.F5$,{className:"input-icon"}),(0,g.jsx)("input",{type:p.current?"text":"password",id:"currentPassword",name:"currentPassword",value:o.currentPassword,onChange:k,placeholder:n("changePassword.currentPasswordPlaceholder"),disabled:j}),(0,g.jsx)("button",{type:"button",className:"toggle-password",onClick:()=>A("current"),disabled:j,children:p.current?(0,g.jsx)(d.Vap,{}):(0,g.jsx)(d._NO,{})})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsx)("label",{htmlFor:"newPassword",children:n("changePassword.newPassword")}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.Fv0,{className:"input-icon"}),(0,g.jsx)("input",{type:p.new?"text":"password",id:"newPassword",name:"newPassword",value:o.newPassword,onChange:k,placeholder:n("changePassword.newPasswordPlaceholder"),disabled:j}),(0,g.jsx)("button",{type:"button",className:"toggle-password",onClick:()=>A("new"),disabled:j,children:p.new?(0,g.jsx)(d.Vap,{}):(0,g.jsx)(d._NO,{})})]}),(0,g.jsx)("div",{className:"password-requirements",children:n("changePassword.passwordRequirements")})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsx)("label",{htmlFor:"confirmPassword",children:n("changePassword.confirmPassword")}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.F5$,{className:"input-icon"}),(0,g.jsx)("input",{type:p.confirm?"text":"password",id:"confirmPassword",name:"confirmPassword",value:o.confirmPassword,onChange:k,placeholder:n("changePassword.confirmPasswordPlaceholder"),disabled:j}),(0,g.jsx)("button",{type:"button",className:"toggle-password",onClick:()=>A("confirm"),disabled:j,children:p.confirm?(0,g.jsx)(d.Vap,{}):(0,g.jsx)(d._NO,{})})]}),y&&(0,g.jsx)("div",{className:"error-message",children:y})]}),(0,g.jsx)("button",{type:"submit",className:"submit-button",disabled:j,children:j?(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(u.A,{type:"ring",size:16}),n("changePassword.changing")]}):(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(d.Fv0,{}),n("changePassword.changeButton")]})})]})]})})})})},w=n.Ay.div`
572  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
573  background-size: 400% 100%;
574  animation: shimmer 1.2s ease-in-out infinite;
575  animation-delay: ${e=>e.delay||"0s"};
576  border-radius: ${e=>e.borderRadius||"4px"};
577  width: ${e=>e.width||"100px"};
578  height: ${e=>e.height||"20px"};
579  
580  [data-theme="dark"] & {
581    background: linear-gradient(90deg, #2a2a2a 25%, #3a3a3a 50%, #2a2a2a 75%);
582    background-size: 400% 100%;
583  }
584  
585  @keyframes shimmer {
586    0% {
587      background-position: -200px 0;
588    }
589    100% {
590      background-position: calc(200px + 100%) 0;
591    }
592  }
593`,y=n.Ay.div`
594  display: flex;
595  flex-direction: column;
596  gap: 0.5rem;
597  margin-bottom: 1.5rem;
598`,N=n.Ay.div`
599  display: grid;
600  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
601  gap: 1.5rem;
602  margin-bottom: 2rem;
603  
604  @media (max-width: 768px) {
605    grid-template-columns: 1fr;
606    gap: 1rem;
607    margin-bottom: 1.5rem;
608  }
609`,T=n.Ay.div`
610  min-height: 100vh;
611  background: linear-gradient(135deg, rgba(224, 43, 32, 0.03) 0%, rgba(252, 185, 0, 0.05) 100%);
612  padding-top: 5rem;
613  
614  @media (max-width: 768px) {
615    padding-top: 8rem;
616  }
617  
618  @media (max-width: 768px) {
619    padding-top: 8rem;
620  }
621  
622  @media (max-width: 768px) {
623    padding-top: 8rem;
624  }
625  
626  [data-theme="dark"] & {
627    background: linear-gradient(135deg, rgba(224, 43, 32, 0.08) 0%, rgba(252, 185, 0, 0.08) 100%);
628  }
629  
630  .container {
631    max-width: 1000px;
632    margin: 0 auto;
633    padding: 2rem;
634    
635    @media (max-width: 768px) {
636      padding: 1rem;
637    }
638  }
639  
640  .page-header {
641    text-align: center;
642    margin-bottom: 3rem;
643    
644    h1 {
645      font-size: clamp(2.5rem, 5vw, 3.5rem);
646      margin-bottom: 1rem;
647      background: linear-gradient(135deg, var(--primary), var(--accent));
648      -webkit-background-clip: text;
649      -webkit-text-fill-color: transparent;
650      background-clip: text;
651    }
652    
653    p {
654      color: var(--text-light);
655      font-size: 1.1rem;
656      max-width: 600px;
657      margin: 0 auto;
658    }
659  }
660  
661  .profile-header {
662    display: flex;
663    justify-content: space-between;
664    align-items: center;
665    margin-bottom: 2rem;
666    flex-wrap: wrap;
667    gap: 1rem;
668    
669    @media (max-width: 768px) {
670      flex-direction: column;
671      align-items: stretch;
672      text-align: center;
673    }
674    
675    .user-info {
676      display: flex;
677      align-items: center;
678      gap: 1rem;
679      
680      @media (max-width: 768px) {
681        flex-direction: column;
682        gap: 0.75rem;
683      }
684      
685      .avatar {
686        width: 60px;
687        height: 60px;
688        border-radius: 50%;
689        background: linear-gradient(135deg, var(--primary), var(--accent));
690        display: flex;
691        align-items: center;
692        justify-content: center;
693        color: white;
694        font-size: 1.5rem;
695        font-weight: bold;
696      }
697      
698      .details {
699        h3 {
700          color: var(--text);
701          margin-bottom: 0.25rem;
702        }
703        
704        p {
705          color: var(--text-light);
706          font-size: 0.9rem;
707          margin-bottom: 0.5rem;
708        }
709        
710        .permissions-tags {
711          display: flex;
712          flex-wrap: wrap;
713          gap: 0.5rem;
714          
715          .permission-tag {
716            padding: 0.25rem 0.75rem;
717            border-radius: 16px;
718            font-size: 0.8rem;
719            font-weight: 500;
720            
721            &.events {
722              background: #dbeafe;
723              color: #1e40af;
724            }
725            &.reviews {
726              background: #d1fae5;
727              color: #065f46;
728            }
729            &.staff {
730              background: #fef3c7;
731              color: #92400e;
732            }
733          }
734        }
735      }
736    }
737    
738    .actions {
739      display: flex;
740      gap: 1rem;
741      
742      @media (max-width: 768px) {
743        justify-content: center;
744        flex-wrap: nowrap;
745        gap: 0.5rem;
746      }
747      
748      .permission-dropdown {
749        position: relative;
750        
751        .permission-menu {
752          position: absolute;
753          top: 100%;
754          left: 0;
755          background: white;
756          border-radius: 12px;
757          padding: 0.5rem 0;
758          box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
759          border: 1px solid rgba(224, 43, 32, 0.1);
760          min-width: 320px;
761          max-width: 400px;
762          z-index: 10;
763          margin-top: 0.5rem;
764          
765          [data-theme="dark"] & {
766            background: var(--card-bg);
767            border: 1px solid rgba(224, 43, 32, 0.2);
768            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
769          }
770          
771          .permission-item {
772            display: block;
773            padding: 1rem 1.25rem;
774            color: var(--text);
775            font-size: 0.9rem;
776            transition: background-color 0.2s ease;
777            
778            &:hover {
779              background: rgba(224, 43, 32, 0.05);
780            }
781            
782            &.events svg {
783              color: #1e40af;
784            }
785            
786            &.reviews svg {
787              color: #065f46;
788            }
789            
790            &.staff svg {
791              color: #92400e;
792            }
793            
794            &.no-permissions {
795              color: var(--text-light);
796              font-style: italic;
797              justify-content: center;
798            }
799          }
800        }
801      }
802      
803      .action-button {
804        padding: 0.75rem 1.5rem;
805        border: none;
806        border-radius: 10px;
807        cursor: pointer;
808        transition: all 0.3s ease;
809        display: flex;
810        align-items: center;
811        gap: 0.5rem;
812        font-weight: 500;
813        white-space: nowrap;
814        
815        @media (max-width: 768px) {
816          padding: 0.5rem 0.75rem;
817          font-size: 0.85rem;
818          gap: 0.25rem;
819        }
820        
821        &.primary {
822          background: linear-gradient(135deg, var(--primary), var(--accent));
823          color: white;
824          
825          &:hover {
826            transform: translateY(-2px);
827            box-shadow: 0 8px 20px rgba(224, 43, 32, 0.3);
828          }
829        }
830        
831        &.secondary {
832          background: rgba(224, 43, 32, 0.1);
833          color: var(--primary);
834          
835          &:hover {
836            background: rgba(224, 43, 32, 0.2);
837          }
838        }
839        
840        &.danger {
841          background: #ef4444;
842          color: white;
843          
844          &:hover {
845            background: #dc2626;
846          }
847        }
848      }
849    }
850  }
851`,P=(0,n.Ay)(o.P.div)`
852  background: ${e=>{switch(e.status){case"approved":return"linear-gradient(135deg, #10b981, #059669)";
852case"pending":return"linear-gradient(135deg, #f59e0b, #d97706)";case"rejected":return"linear-gradient(135deg, #ef4444, #dc2626)";default:return"linear-gradient(135deg, #6b7280, #4b5563)"}}};
853  color: white;
854  padding: 1rem 1.5rem;
855  border-radius: 12px;
856  margin-bottom: 2rem;
857  display: flex;
858  align-items: center;
859  justify-content: center;
860  gap: 0.75rem;
861  text-align: center;
862  
863  .status-icon {
864    font-size: 1.2rem;
865    flex-shrink: 0;
866  }
867  
868  .status-content {
869    flex: 1;
870    
871    h4 {
872      font-weight: 600;
873      margin: 0 0 0.25rem 0;
874    }
875    
876    p {
877      opacity: 0.9;
878      font-size: 0.9rem;
879      margin: 0;
880    }
881  }
882`,k=(0,n.Ay)(o.P.div)`
883  background: white;
884  border-radius: 20px;
885  padding: 2rem;
886  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
887  border: 1px solid rgba(224, 43, 32, 0.1);
888  margin-top: 3rem;
889  margin-bottom: 2rem;
890  
891  [data-theme="dark"] & {
892    background: var(--card-bg);
893    border: 1px solid rgba(224, 43, 32, 0.2);
894    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
895  }
896`,A=n.Ay.div`
897  text-align: center;
898  margin-bottom: 2rem;
899  
900  .avatar-container {
901    position: relative;
902    display: inline-block;
903    margin-bottom: 1rem;
904    
905    .avatar {
906      width: 150px;
907      height: 150px;
908      border-radius: 50%;
909      object-fit: cover;
910      border: 4px solid white;
911      box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
912      
913      [data-theme="dark"] & {
914        border-color: var(--card-bg);
915        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4);
916      }
917    }
918    
919    .avatar-placeholder {
920      width: 150px;
921      height: 150px;
922      border-radius: 50%;
923      background: linear-gradient(135deg, var(--primary), var(--accent));
924      display: flex;
925      align-items: center;
926      justify-content: center;
927      color: white;
928      font-size: 3rem;
929      font-weight: bold;
930      border: 4px solid white;
931      box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
932      
933      [data-theme="dark"] & {
934        border-color: var(--card-bg);
935        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4);
936      }
937    }
938    
939    .upload-overlay {
940      position: absolute;
941      bottom: 5px;
942      right: 5px;
943      background: linear-gradient(135deg, var(--primary), var(--accent));
944      color: white;
945      border: none;
946      border-radius: 12px;
947      padding: 0.5rem 0.75rem;
948      display: flex;
949      align-items: center;
950      justify-content: center;
951      gap: 0.25rem;
952      cursor: pointer;
953      transition: all 0.3s ease;
954      box-shadow: 0 4px 15px rgba(224, 43, 32, 0.3);
955      font-size: 0.8rem;
956      font-weight: 500;
957      
958      &:hover {
959        transform: translateY(-2px);
960        box-shadow: 0 6px 20px rgba(224, 43, 32, 0.4);
961      }
962      
963      &:disabled {
964        opacity: 0.7;
965        cursor: not-allowed;
966        transform: none;
967      }
968      
969      .loading-spinner {
970        width: 16px !important;
971        height: 16px !important;
972        min-height: auto !important;
973        border: 2px solid rgba(255, 255, 255, 0.3);
974        border-top: 2px solid white;
975        border-radius: 50%;
976        animation: spin 1s linear infinite;
977        display: inline-block !important;
978        flex-shrink: 0;
979      }
980      
981      .saving-icon {
982        animation: pulse 1.5s ease-in-out infinite;
983        flex-shrink: 0;
984      }
985      
986      .success-icon {
987        animation: successPop 0.6s ease-out;
988        flex-shrink: 0;
989        color: #10b981;
990      }
991      
992      @keyframes spin {
993        0% { transform: rotate(0deg); }
994        100% { transform: rotate(360deg); }
995      }
996      
997      @keyframes pulse {
998        0%, 100% { opacity: 1; transform: scale(1); }
999        50% { opacity: 0.7; transform: scale(1.1); }
1000      }
1001      
1002      @keyframes successPop {
1003        0% { transform: scale(0.8); opacity: 0; }
1004        50% { transform: scale(1.2); opacity: 1; }
1005        100% { transform: scale(1); opacity: 1; }
1006      }
1007    }
1008  }
1009  
1010  .hidden-input {
1011    display: none;
1012  }
1013`,z=n.Ay.div`
1014  display: grid;
1015  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
1016  gap: 1.5rem;
1017  margin-bottom: 2rem;
1018  
1019  @media (max-width: 768px) {
1020    grid-template-columns: 1fr;
1021    gap: 1rem;
1022    margin-bottom: 1.5rem;
1023  }
1024  
1025  .form-group {
1026    .label {
1027      display: block;
1028      margin-bottom: 0.5rem;
1029      color: var(--text);
1030      font-weight: 500;
1031      font-size: 0.9rem;
1032    }
1033    
1034    .input-wrapper {
1035      position: relative;
1036      
1037      .input-icon {
1038        position: absolute;
1039        left: 1rem;
1040        top: 50%;
1041        transform: translateY(-50%);
1042        color: var(--text-light);
1043        font-size: 1.1rem;
1044      }
1045    }
1046    
1047    input, textarea, select {
1048      width: 100%;
1049      padding: 1rem 1rem 1rem 3rem;
1050      border: 2px solid #e5e7eb;
1051      border-radius: 12px;
1052      font-size: 1rem;
1053      transition: all 0.3s ease;
1054      background: #f9fafb;
1055      color: var(--text);
1056      
1057      @media (max-width: 768px) {
1058        font-size: 16px; /* Prevent zoom on iOS */
1059        padding: 0.875rem 0.875rem 0.875rem 2.75rem;
1060      }
1061      
1062      [data-theme="dark"] & {
1063        background: var(--input-bg);
1064        border-color: var(--border);
1065        color: var(--text);
1066        
1067        &:focus {
1068          background: var(--card-bg);
1069          border-color: var(--primary);
1070        }
1071        
1072        &::placeholder {
1073          color: var(--text-light);
1074        }
1075      }
1076      
1077      &:focus {
1078        outline: none;
1079        border-color: var(--primary);
1080        background: white;
1081        box-shadow: 0 0 0 3px rgba(224, 43, 32, 0.1);
1082      }
1083      
1084      &::placeholder {
1085        color: #9ca3af;
1086      }
1087    }
1088    
1089    textarea {
1090      min-height: 120px;
1091      resize: vertical;
1092      padding: 1rem;
1093    }
1094    
1095    .required {
1096      color: #ef4444;
1097    }
1098  }
1099  
1100  .full-width {
1101    grid-column: 1 / -1;
1102  }
1103`,E=n.Ay.div`
1104  text-align: center;
1105  padding-top: 1rem;
1106  border-top: 1px solid #e5e7eb;
1107  
1108  @media (max-width: 768px) {
1109    padding-top: 1.5rem;
1110  }
1111  
1112  [data-theme="dark"] & {
1113    border-top-color: var(--border);
1114  }
1115  
1116  .submit-button {
1117    background: linear-gradient(135deg, var(--primary), var(--accent));
1118    color: white;
1119    border: none;
1120    padding: 1rem 2rem;
1121    border-radius: 12px;
1122    font-size: 1rem;
1123    font-weight: 600;
1124    cursor: pointer;
1125    transition: all 0.3s ease;
1126    display: inline-flex;
1127    align-items: center;
1128    justify-content: center;
1129    gap: 0.5rem;
1130    min-width: 200px;
1131    height: 56px; /* 固定高度 */
1132    position: relative;
1133    
1134    @media (max-width: 768px) {
1135      width: 100%;
1136      max-width: 300px;
1137      padding: 1rem 1.5rem;
1138      font-size: 1rem;
1139    }
1140    
1141    &:hover:not(:disabled) {
1142      transform: translateY(-2px);
1143      box-shadow: 0 10px 25px rgba(224, 43, 32, 0.3);
1144    }
1145    
1146    &:disabled {
1147      opacity: 0.7;
1148      cursor: not-allowed;
1149      transform: none;
1150    }
1151    
1152    .loading-spinner {
1153      width: 20px;
1154      height: 20px;
1155      border: 2px solid rgba(255, 255, 255, 0.3);
1156      border-top: 2px solid white;
1157      border-radius: 50%;
1158      animation: spin 1s linear infinite;
1159      flex-shrink: 0; /* 防止压缩 */
1160    }
1161    
1162    /* 确保文本不换行 */
1163    white-space: nowrap;
1164    
1165    @keyframes spin {
1166      0% { transform: rotate(0deg); }
1167      100% { transform: rotate(360deg); }
1168    }
1169  }
1170`,S=(n.Ay.div`
1171  .title {
1172    display: flex;
1173    align-items: center;
1174    gap: 0.5rem;
1175    color: var(--primary);
1176    font-size: 1.2rem;
1177    font-weight: 600;
1178    margin-bottom: 1rem;
1179    border-bottom: 2px solid var(--border);
1180    padding-bottom: 0.75rem;
1181  }
1182  
1183  .grid {
1184    display: grid;
1185    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
1186    gap: 1rem;
1187  }
1188  
1189  .permission-item {
1190    background: var(--background);
1191    border-radius: 12px;
1192    padding: 1rem;
1193    display: flex;
1194    align-items: center;
1195    gap: 1rem;
1196    border: 1px solid var(--border);
1197    
1198    .icon {
1199      font-size: 1.5rem;
1200      color: ${e=>e.hasPermission?"var(--primary)":"var(--text-light)"};
1201    }
1202    
1203    .text {
1204      h4 {
1205        margin: 0 0 0.25rem 0;
1206        color: var(--text);
1207        font-size: 1rem;
1208      }
1209      p {
1210        margin: 0;
1211        font-size: 0.85rem;
1212        color: var(--text-light);
1213      }
1214    }
1215  }
1216  
1217  .admin-note {
1218    margin-top: 1rem;
1219    padding: 0.75rem 1rem;
1220    background: rgba(245, 158, 11, 0.1);
1221    border-radius: 8px;
1222    text-align: center;
1223    color: #d97706;
1224    font-size: 0.9rem;
1225    font-weight: 500;
1226
1227    [data-theme="dark"] & {
1228      color: #f59e0b;
1229    }
1230  }
1231`,()=>{var e,r,i,n,x,u,f,v;const{t:b,i18n:S}=(0,t.Bd)(),_=(0,s.Zp)(),{isAuthenticated:F,user:C,logout:I,loading:J}=(0,p.As)(),R=(0,a.useRef)(null),[$,U]=(0,a.useState)(null),[q,O]=(0,a.useState)({name_en:"",name_zh:"",position_en:"",position_zh:"",department:"",bio_en:"",bio_zh:"",avatarUrl:"",email:"",linkedin:"",github:"",wechat:"",phone:"",mbti:""}),[B,D]=(0,a.useState)(!0),[M,G]=(0,a.useState)(!1),[W,X]=(0,a.useState)(!1),[Y,L]=(0,a.useState)(!1),[V,Z]=(0,a.useState)(""),[H,Q]=(0,a.useState)(""),[K,ee]=(0,a.useState)(!1),[re,ie]=(0,a.useState)(!1),[ae,te]=(0,a.useState)(!1);(0,a.useEffect)((()=>{J||F||_("/")}),[J,F,_]),(0,a.useEffect)((()=>{const e=e=>{re&&!e.target.closest(".permission-dropdown")&&ie(!1)};return document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}}),[re]),(0,a.useEffect)((()=>{F&&(async()=>{try{const e=await(0,m.cR)();U(e),e?O({name_en:e.name_en||"",name_zh:e.name_zh||"",position_en:e.position_en||"",position_zh:e.position_zh||"",department:e.department||"",bio_en:e.bio_en||"",bio_zh:e.bio_zh||"",avatarUrl:e.avatarUrl||"",email:e.email||"",linkedin:e.linkedin||"",github:e.github||"",wechat:e.wechat||"",phone:e.phone||"",mbti:e.mbti||""}):C&&O((e=>({...e,email:C.email||""})))}catch(e){console.error("Error loading profile:",e)}finally{D(!1)}})()}),[F]);const se=e=>{const{name:r,value:i}=e.target;O((e=>({...e,[r]:i})))};(0,a.useEffect)((()=>{ee(!1)}),[q.avatarUrl]);if(J||B)return(0,g.jsx)(T,{children:(0,g.jsxs)("div",{className:"container",children:[(0,g.jsxs)("div",{className:"page-header",children:[(0,g.jsx)(w,{width:"200px",height:"3.5rem",borderRadius:"8px",style:{margin:"0 auto"}}),(0,g.jsx)("div",{style:{marginTop:"1rem",display:"flex",justifyContent:"center"},children:(0,g.jsx)(w,{width:"min(400px, 90%)",height:"1.1rem",borderRadius:"4px",delay:"0.1s"})})]}),(0,g.jsxs)("div",{className:"profile-header",children:[(0,g.jsxs)("div",{className:"user-info",children:[(0,g.jsx)(w,{width:"60px",height:"60px",borderRadius:"50%",delay:"0.2s"}),(0,g.jsxs)("div",{className:"details",children:[(0,g.jsx)(w,{width:"120px",height:"1.5rem",borderRadius:"4px",delay:"0.3s"}),(0,g.jsx)("div",{style:{marginTop:"0.5rem"},children:(0,g.jsx)(w,{width:"180px",height:"1rem",borderRadius:"4px",delay:"0.4s"})})]})]}),(0,g.jsxs)("div",{className:"actions",style:{display:"flex",gap:"1rem",flexWrap:"wrap",justifyContent:"center"},children:[(0,g.jsx)(w,{width:"120px",height:"40px",borderRadius:"10px",delay:"0.5s"}),(0,g.jsx)(w,{width:"100px",height:"40px",borderRadius:"10px",delay:"0.6s"}),(0,g.jsx)(w,{width:"80px",height:"40px",borderRadius:"10px",delay:"0.7s"})]})]}),(0,g.jsx)(w,{width:"100%",height:"80px",borderRadius:"12px",style:{marginBottom:"2rem"},delay:"0.8s"}),(0,g.jsxs)("div",{style:{background:"white",borderRadius:"20px",padding:"2rem",marginBottom:"2rem",boxShadow:"0 10px 30px rgba(0, 0, 0, 0.1)",border:"1px solid rgba(224, 43, 32, 0.1)"},children:[(0,g.jsxs)("div",{style:{textAlign:"center",marginBottom:"2rem"},children:[(0,g.jsx)(w,{width:"120px",height:"120px",borderRadius:"50%",style:{margin:"0 auto 1rem"},delay:"0.9s"}),(0,g.jsx)(w,{width:"200px",height:"1.5rem",borderRadius:"4px",style:{margin:"0 auto 0.5rem"},delay:"1.0s"}),(0,g.jsx)(w,{width:"150px",height:"1rem",borderRadius:"4px",style:{margin:"0 auto"},delay:"1.1s"})]}),(0,g.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(150px, 1fr))",gap:"1rem"},children:[...Array(6)].map(((e,r)=>(0,g.jsxs)("div",{style:{textAlign:"center"},children:[(0,g.jsx)(w,{width:"100%",height:"1rem",borderRadius:"4px",style:{marginBottom:"0.5rem"},delay:1.2+.1*r+"s"}),(0,g.jsx)(w,{width:"80%",height:"0.875rem",borderRadius:"4px",style:{margin:"0 auto"},delay:1.3+.1*r+"s"})]},r)))})]}),(0,g.jsxs)(k,{initial:{opacity:0,y:20}
1231,animate:{opacity:1,y:0},children:[(0,g.jsx)("div",{style:{textAlign:"center",marginBottom:"2rem"},children:(0,g.jsx)(w,{width:"150px",height:"150px",borderRadius:"50%",style:{margin:"0 auto 1rem"},delay:"1.8s"})}),(0,g.jsxs)(N,{children:[[...Array(12)].map(((e,r)=>(0,g.jsxs)(y,{children:[(0,g.jsx)(w,{width:"100px",height:"16px",borderRadius:"4px",delay:1.9+.05*r+"s"}),(0,g.jsx)(w,{width:"100%",height:"52px",borderRadius:"12px",delay:2+.05*r+"s"})]},r))),(0,g.jsx)("div",{style:{gridColumn:"1 / -1"},children:(0,g.jsxs)(y,{children:[(0,g.jsx)(w,{width:"120px",height:"16px",borderRadius:"4px",delay:"2.5s"}),(0,g.jsx)(w,{width:"100%",height:"120px",borderRadius:"12px",delay:"2.6s"})]})}),(0,g.jsx)("div",{style:{gridColumn:"1 / -1"},children:(0,g.jsxs)(y,{children:[(0,g.jsx)(w,{width:"120px",height:"16px",borderRadius:"4px",delay:"2.7s"}),(0,g.jsx)(w,{width:"100%",height:"120px",borderRadius:"12px",delay:"2.8s"})]})})]}),(0,g.jsx)("div",{style:{textAlign:"center",paddingTop:"1rem",borderTop:"1px solid #e5e7eb"},children:(0,g.jsx)(w,{width:"200px",height:"56px",borderRadius:"12px",style:{margin:"0 auto"},delay:"2.9s"})})]})]})});if(!F)return null;const ne="admin"===(null===C||void 0===C?void 0:C.role)||(null===C||void 0===C||null===(e=C.permissions)||void 0===e?void 0:e.canManageEvents)||(null===C||void 0===C||null===(r=C.permissions)||void 0===r?void 0:r.canReviewProfiles)||(null===C||void 0===C||null===(i=C.permissions)||void 0===i?void 0:i.canManageStaff),oe=(e=>{switch(null===e||void 0===e?void 0:e.status){case"approved":return{icon:(0,g.jsx)(d.YrT,{className:"status-icon"}),title:b("staff.profile.status.approved.title"),message:b("staff.profile.status.approved.message")};case"pending":const r=b("staff.profile.status.pending.message"),i=null!==e&&void 0!==e&&e.reviewNote?`${b("staff.profile.status.pending.lastRejectionReason")} ${e.reviewNote}`:"";return{icon:(0,g.jsx)(d.Ohp,{className:"status-icon"}),title:b("staff.profile.status.pending.title"),message:i?`${r}\n\n${i}`:r};case"rejected":const a=b("staff.profile.status.rejected.message"),t=null!==e&&void 0!==e&&e.reviewNote?`${b("staff.profile.status.rejected.reason")}${e.reviewNote}`:"";return{icon:(0,g.jsx)(d.yGN,{className:"status-icon"}),title:b("staff.profile.status.rejected.title"),message:t?`${a}\n\n${t}`:a};default:return{icon:(0,g.jsx)(d.JXP,{className:"status-icon"}),title:b("staff.profile.status.new.title"),message:b("staff.profile.status.new.message")}}})($);return(0,g.jsxs)(T,{children:[(0,g.jsxs)("div",{className:"container",children:[(0,g.jsxs)("div",{className:"page-header",children:[(0,g.jsx)("h1",{children:b("staff.profile.title")}),(0,g.jsx)("p",{children:b("staff.profile.subtitle")})]}),(0,g.jsxs)("div",{className:"profile-header",children:[(0,g.jsxs)("div",{className:"user-info",children:[(0,g.jsx)("div",{className:"avatar",children:null===C||void 0===C||null===(n=C.username)||void 0===n?void 0:n.charAt(0).toUpperCase()}),(0,g.jsxs)("div",{className:"details",children:[(0,g.jsx)("h3",{children:null===C||void 0===C?void 0:C.username}),(0,g.jsx)("p",{children:null===C||void 0===C?void 0:C.email})]})]}),(0,g.jsxs)("div",{className:"actions",children:[ne&&(0,g.jsxs)("div",{className:"permission-dropdown",children:[(0,g.jsxs)("button",{className:"action-button secondary",onClick:()=>ie(!re),children:[(0,g.jsx)(d.Vap,{}),b("staff.profile.viewPermission")]}),(0,g.jsx)(l.N,{children:re&&(0,g.jsxs)(o.P.div,{className:"permission-menu",initial:{opacity:0,y:-10},animate:{opacity:1,y:0},exit:{opacity:0,y:-10},transition:{duration:.2},children:[(null===C||void 0===C||null===(x=C.permissions)||void 0===x?void 0:x.canManageEvents)&&(0,g.jsx)("div",{className:"permission-item events",children:(0,g.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.75rem"},children:[(0,g.jsx)(d.VSk,{}),(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{style:{fontWeight:"600"},children:b("staff.profile.permissions.manageEvents")}),(0,g.jsx)("div",{style:{fontSize:"0.8rem",color:"var(--text-light)",marginTop:"0.25rem"},children:b("staff.profile.permissions.manageEventsDesc")})]})]})}),(null===C||void 0===C||null===(u=C.permissions)||void 0===u?void 0:u.canReviewProfiles)&&(0,g.jsx)("div",{className:"permission-item reviews",children:(0,g.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.75rem"},children:[(0,g.jsx)(d.jH2,{}),(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{style:{fontWeight:"600"},children:b("staff.profile.permissions.reviewProfiles")}),(0,g.jsx)("div",{style:{fontSize:"0.8rem",color:"var(--text-light)",marginTop:"0.25rem"},children:b("staff.profile.permissions.reviewProfilesDesc")})]})]})}),(null===C||void 0===C||null===(f=C.permissions)||void 0===f?void 0:f.canManageStaff)&&(0,g.jsx)("div",{className:"permission-item staff",children:(0,g.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.75rem"},children:[(0,g.jsx)(d.cfS,{}),(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{style:{fontWeight:"600"},children:b("staff.profile.permissions.manageStaff")}),(0,g.jsx)("div",{style:{fontSize:"0.8rem",color:"var(--text-light)",marginTop:"0.25rem"},children:b("staff.profile.permissions.manageStaffDesc")})]})]})})]})})]}),(0,g.jsxs)("button",{className:"action-button primary",onClick:()=>te(!0),children:[(0,g.jsx)(d.F5$,{}),b("changePassword.title")]}),(0,g.jsxs)("button",{className:"action-button danger",onClick:I,children:[(0,g.jsx)(d.QeK,{}),b("staff.profile.logout")]})]})]}),$&&(0,g.jsxs)(P,{status:$.status,initial:{opacity:0,y:-20}
1231,animate:{opacity:1,y:0},children:[oe.icon,(0,g.jsxs)("div",{className:"status-content",children:[(0,g.jsx)("h4",{children:oe.title}),(0,g.jsx)("p",{style:{whiteSpace:"pre-line"},children:oe.message})]})]}),(0,g.jsx)(o.P.div,{initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},transition:{duration:.5,delay:.1},children:(0,g.jsx)(h.A,{staff:{name_en:(null===$||void 0===$?void 0:$.name_en)||"",name_zh:(null===$||void 0===$?void 0:$.name_zh)||"",position_en:(null===$||void 0===$?void 0:$.position_en)||b("staff.profile.permissions.defaultPosition"),position_zh:(null===$||void 0===$?void 0:$.position_zh)||b("staff.profile.permissions.defaultPosition"),department:null===$||void 0===$?void 0:$.department,bio_en:null===$||void 0===$?void 0:$.bio_en,bio_zh:null===$||void 0===$?void 0:$.bio_zh,avatarUrl:null===$||void 0===$?void 0:$.avatarUrl,email:null===C||void 0===C?void 0:C.email,phone:null===$||void 0===$?void 0:$.phone,linkedin:null===$||void 0===$?void 0:$.linkedin,github:null===$||void 0===$?void 0:$.github,wechat:null===$||void 0===$?void 0:$.wechat,mbti:null===$||void 0===$?void 0:$.mbti,status:null===$||void 0===$?void 0:$.status,username:null===C||void 0===C?void 0:C.username}})}),(0,g.jsx)(k,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},children:(0,g.jsxs)("form",{onSubmit:async e=>{if(e.preventDefault(),!q.name_en.trim()||!q.name_zh.trim()||!q.position_en.trim()||!q.position_zh.trim()||!q.department.trim())return Z(b("staff.profile.error.required")),void setTimeout((()=>Z("")),5e3);G(!0);try{const e={...q,name_en:q.name_en.trim(),name_zh:q.name_zh.trim(),position_en:q.position_en.trim(),position_zh:q.position_zh.trim(),department:q.department.trim(),bio_en:q.bio_en.trim(),bio_zh:q.bio_zh.trim(),email:q.email.trim(),linkedin:q.linkedin.trim(),github:q.github.trim(),wechat:q.wechat.trim(),phone:q.phone.trim(),mbti:q.mbti.trim()};await(0,m.Fd)(e),O(e),Z(b("staff.profile.saved")),L(!0),setTimeout((()=>Z("")),3e3),setTimeout((()=>L(!1)),2e3);const r=await(0,m.cR)();U(r)}catch(a){var r,i;console.error("Error saving profile:",a),Z((null===(r=a.response)||void 0===r||null===(i=r.data)||void 0===i?void 0:i.error)||b("staff.profile.error.saveFailed")),setTimeout((()=>Z("")),5e3)}finally{G(!1),Y&&L(!1)}},children:[(0,g.jsxs)(A,{children:[(0,g.jsxs)("div",{className:"avatar-container",children:[q.avatarUrl&&!K?(0,g.jsx)("img",{src:(0,m.u0)(q.avatarUrl),alt:"Avatar",className:"avatar",onError:()=>{ee(!0)}}):(0,g.jsx)("div",{className:"avatar-placeholder",children:null===C||void 0===C||null===(v=C.username)||void 0===v?void 0:v.charAt(0).toUpperCase()}),(0,g.jsx)("button",{type:"button",className:"upload-overlay",onClick:()=>{var e;return null===(e=R.current)||void 0===e?void 0:e.click()},disabled:W,children:W?(0,g.jsx)(d.Ohp,{className:"saving-icon"}):(0,g.jsx)(d.PoE,{})})]}),(0,g.jsx)("input",{ref:R,type:"file",accept:"image/*",onChange:async e=>{const r=e.target.files[0];if(r){if(Q(""),ee(!1),!r.type.startsWith("image/"))return Q(b("staff.profile.error.invalidFile")),void setTimeout((()=>Q("")),5e3);if(r.size>5242880)return Q(b("staff.profile.error.fileTooLarge")),void setTimeout((()=>Q("")),5e3);X(!0);try{const e=await(0,m.X)(r);O((r=>({...r,avatarUrl:e.avatarUrl})));const i=await(0,m.cR)();U(i),Z(b("staff.profile.avatarUploaded")),setTimeout((()=>Z("")),3e3)}catch(t){var i,a;console.error("Error uploading avatar:",t),Q((null===(i=t.response)||void 0===i||null===(a=i.data)||void 0===a?void 0:a.error)||b("staff.profile.error.uploadFailed")),setTimeout((()=>Q("")),5e3)}finally{X(!1)}}},className:"hidden-input"}),H&&(0,g.jsx)(o.P.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},exit:{opacity:0,y:-10},style:{background:"#fee2e2",color:"#dc2626",padding:"0.5rem 0.75rem",borderRadius:"8px",marginTop:"0.5rem",textAlign:"center",fontSize:"0.85rem",fontWeight:"500",border:"1px solid #fecaca"},children:H})]}),(0,g.jsxs)(z,{children:[(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsxs)("label",{className:"label",children:[b("staff.profile.nameEn")," ",(0,g.jsx)("span",{className:"required",children:"*"})]}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.JXP,{className:"input-icon"}),(0,g.jsx)("input",{type:"text",name:"name_en",value:q.name_en,onChange:se,placeholder:b("staff.profile.nameEnPlaceholder"),required:!0})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsxs)("label",{className:"label",children:[b("staff.profile.nameZh")," ",(0,g.jsx)("span",{className:"required",children:"*"})]}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.JXP,{className:"input-icon"}),(0,g.jsx)("input",{type:"text",name:"name_zh",value:q.name_zh,onChange:se,placeholder:b("staff.profile.nameZhPlaceholder"),required:!0})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsxs)("label",{className:"label",children:[b("staff.profile.positionEn")," ",(0,g.jsx)("span",{className:"required",children:"*"})]}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.JXP,{className:"input-icon"}),(0,g.jsx)("input",{type:"text",name:"position_en",value:q.position_en,onChange:se,placeholder:b("staff.profile.positionEnPlaceholder"),required:!0})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsxs)("label",{className:"label",children:[b("staff.profile.positionZh")," ",(0,g.jsx)("span",{className:"required",children:"*"})]}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.JXP,{className:"input-icon"}),(0,g.jsx)("input",{type:"text",name:"position_zh",value:q.position_zh,onChange:se,placeholder:b("staff.profile.positionZhPlaceholder"),required:!0})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsxs)("label",{className:"label",children:[b("staff.profile.department")," ",(0,g.jsx)("span",{className:"required",children:"*"})]}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.JXP,{className:"input-icon"}),(0,g.jsxs)("select",{name:"department",value:q.department,onChange:se,required:!0,children:[(0,g.jsx)("option",{value:"",children:b("staff.profile.selectDepartment")}
1231),(0,g.jsx)("option",{value:"EXECUTIVE COMMITTEE",children:b("staff.profile.departments.executive_committee")}),(0,g.jsx)("option",{value:"ARTS & CULTURE GROUP",children:b("staff.profile.departments.arts")}),(0,g.jsx)("option",{value:"CAREER & ACADEMIC GROUP",children:b("staff.profile.departments.career")}),(0,g.jsx)("option",{value:"OPERATION GROUP",children:b("staff.profile.departments.operation")}),(0,g.jsx)("option",{value:"SUPPORT GROUP",children:b("staff.profile.departments.support")}),(0,g.jsx)("option",{value:"ENGAGEMENT",children:b("staff.profile.departments.engagement")})]})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsx)("label",{className:"label",children:b("staff.profile.email")}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.pHD,{className:"input-icon"}),(0,g.jsx)("input",{type:"email",name:"email",value:q.email,onChange:se,placeholder:b("staff.profile.emailPlaceholder")})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsx)("label",{className:"label",children:b("staff.profile.phone")}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.QFc,{className:"input-icon"}),(0,g.jsx)("input",{type:"tel",name:"phone",value:q.phone,onChange:se,placeholder:b("staff.profile.phonePlaceholder")})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsx)("label",{className:"label",children:b("staff.profile.linkedin")}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.Wjy,{className:"input-icon"}),(0,g.jsx)("input",{type:"url",name:"linkedin",value:q.linkedin,onChange:se,placeholder:b("staff.profile.linkedinPlaceholder")})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsx)("label",{className:"label",children:b("staff.profile.github")}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.BR8,{className:"input-icon"}),(0,g.jsx)("input",{type:"url",name:"github",value:q.github,onChange:se,placeholder:b("staff.profile.githubPlaceholder")})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsx)("label",{className:"label",children:b("staff.profile.wechat")}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(c.mpG,{className:"input-icon"}),(0,g.jsx)("input",{type:"text",name:"wechat",value:q.wechat,onChange:se,placeholder:b("staff.profile.wechatPlaceholder")})]})]}),(0,g.jsxs)("div",{className:"form-group",children:[(0,g.jsx)("label",{className:"label",children:b("staff.profile.mbti")}),(0,g.jsxs)("div",{className:"input-wrapper",children:[(0,g.jsx)(d.JXP,{className:"input-icon"}),(0,g.jsxs)("select",{name:"mbti",value:q.mbti,onChange:se,children:[(0,g.jsx)("option",{value:"",children:b("staff.profile.mbtiPlaceholder")}),(0,g.jsx)("option",{value:"INTJ",children:"INTJ - The Architect"}),(0,g.jsx)("option",{value:"INTP",children:"INTP - The Thinker"}),(0,g.jsx)("option",{value:"ENTJ",children:"ENTJ - The Commander"}),(0,g.jsx)("option",{value:"ENTP",children:"ENTP - The Debater"}),(0,g.jsx)("option",{value:"INFJ",children:"INFJ - The Advocate"}),(0,g.jsx)("option",{value:"INFP",children:"INFP - The Mediator"}),(0,g.jsx)("option",{value:"ENFJ",children:"ENFJ - The Protagonist"}),(0,g.jsx)("option",{value:"ENFP",children:"ENFP - The Campaigner"}),(0,g.jsx)("option",{value:"ISTJ",children:"ISTJ - The Logistician"}),(0,g.jsx)("option",{value:"ISFJ",children:"ISFJ - The Protector"}),(0,g.jsx)("option",{value:"ESTJ",children:"ESTJ - The Executive"}),(0,g.jsx)("option",{value:"ESFJ",children:"ESFJ - The Consul"}),(0,g.jsx)("option",{value:"ISTP",children:"ISTP - The Virtuoso"}),(0,g.jsx)("option",{value:"ISFP",children:"ISFP - The Adventurer"}),(0,g.jsx)("option",{value:"ESTP",children:"ESTP - The Entrepreneur"}),(0,g.jsx)("option",{value:"ESFP",children:"ESFP - The Entertainer"}),(0,g.jsx)("option",{value:"INFJ-T",children:"INFJ-T - The Advocate (Turbulent)"}),(0,g.jsx)("option",{value:"INFJ-A",children:"INFJ-A - The Advocate (Assertive)"}),(0,g.jsx)("option",{value:"INTJ-T",children:"INTJ-T - The Architect (Turbulent)"}),(0,g.jsx)("option",{value:"INTJ-A",children:"INTJ-A - The Architect (Assertive)"}),(0,g.jsx)("option",{value:"INTP-T",children:"INTP-T - The Thinker (Turbulent)"}),(0,g.jsx)("option",{value:"INTP-A",children:"INTP-A - The Thinker (Assertive)"}),(0,g.jsx)("option",{value:"ENTJ-T",children:"ENTJ-T - The Commander (Turbulent)"}),(0,g.jsx)("option",{value:"ENTJ-A",children:"ENTJ-A - The Commander (Assertive)"}),(0,g.jsx)("option",{value:"ENTP-T",children:"ENTP-T - The Debater 
1231(Turbulent)"}),(0,g.jsx)("option",{value:"ENTP-A",children:"ENTP-A - The Debater (Assertive)"}),(0,g.jsx)("option",{value:"INFP-T",children:"INFP-T - The Mediator (Turbulent)"}),(0,g.jsx)("option",{value:"INFP-A",children:"INFP-A - The Mediator (Assertive)"}),(0,g.jsx)("option",{value:"ENFJ-T",children:"ENFJ-T - The Protagonist (Turbulent)"}),(0,g.jsx)("option",{value:"ENFJ-A",children:"ENFJ-A - The Protagonist (Assertive)"}),(0,g.jsx)("option",{value:"ENFP-T",children:"ENFP-T - The Campaigner (Turbulent)"}),(0,g.jsx)("option",{value:"ENFP-A",children:"ENFP-A - The Campaigner (Assertive)"}),(0,g.jsx)("option",{value:"ISTJ-T",children:"ISTJ-T - The Logistician (Turbulent)"}),(0,g.jsx)("option",{value:"ISTJ-A",children:"ISTJ-A - The Logistician (Assertive)"}),(0,g.jsx)("option",{value:"ISFJ-T",children:"ISFJ-T - The Protector (Turbulent)"}),(0,g.jsx)("option",{value:"ISFJ-A",children:"ISFJ-A - The Protector (Assertive)"}),(0,g.jsx)("option",{value:"ESTJ-T",children:"ESTJ-T - The Executive (Turbulent)"}),(0,g.jsx)("option",{value:"ESTJ-A",children:"ESTJ-A - The Executive (Assertive)"}),(0,g.jsx)("option",{value:"ESFJ-T",children:"ESFJ-T - The Consul (Turbulent)"}),(0,g.jsx)("option",{value:"ESFJ-A",children:"ESFJ-A - The Consul (Assertive)"}),(0,g.jsx)("option",{value:"ISTP-T",children:"ISTP-T - The Virtuoso (Turbulent)"}),(0,g.jsx)("option",{value:"ISTP-A",children:"ISTP-A - The Virtuoso (Assertive)"}),(0,g.jsx)("option",{value:"ISFP-T",children:"ISFP-T - The Adventurer (Turbulent)"}),(0,g.jsx)("option",{value:"ISFP-A",children:"ISFP-A - The Adventurer (Assertive)"}),(0,g.jsx)("option",{value:"ESTP-T",children:"ESTP-T - The Entrepreneur (Turbulent)"}),(0,g.jsx)("option",{value:"ESTP-A",children:"ESTP-A - The Entrepreneur (Assertive)"}),(0,g.jsx)("option",{value:"ESFP-T",children:"ESFP-T - The Entertainer (Turbulent)"}),(0,g.jsx)("option",{value:"ESFP-A",children:"ESFP-A - The Entertainer (Assertive)"})]})]})]}),(0,g.jsxs)("div",{className:"form-group full-width",children:[(0,g.jsx)("label",{className:"label",children:b("staff.profile.bioEn")}),(0,g.jsx)("textarea",{name:"bio_en",value:q.bio_en,onChange:se,placeholder:b("staff.profile.bioEnPlaceholder")})]}),(0,g.jsxs)("div",{className:"form-group full-width",children:[(0,g.jsx)("label",{className:"label",children:b("staff.profile.bioZh")}),(0,g.jsx)("textarea",{name:"bio_zh",value:q.bio_zh,onChange:se,placeholder:b("staff.profile.bioZhPlaceholder")})]})]}),(0,g.jsxs)(E,{children:[V&&(0,g.jsx)(o.P.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},style:{background:V.includes("error")||V.includes("Error")||V.includes("failed")||V.includes("Failed")?"#fee2e2":"#dcfce7",color:V.includes("error")||V.includes("Error")||V.includes("failed")||V.includes("Failed")?"#dc2626":"#166534",padding:"0.75rem 1rem",borderRadius:"10px",marginBottom:"1rem",textAlign:"center",fontSize:"0.9rem",fontWeight:"500"},children:V}),(0,g.jsx)("button",{type:"submit",className:"submit-button",disabled:M,children:M?(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(d.Ohp,{className:"saving-icon"}),b("staff.profile.saving")]}):Y?(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(d.YrT,{className:"success-icon"}),b("staff.profile.saved")]}):(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(d.Bc_,{}),b("staff.profile.save")]})})]})]})})]}),(0,g.jsx)(j,{isOpen:ae,onClose:()=>te(!1),onSuccess:()=>{te(!1)}})]})})}}]);
1232//# sourceMappingURL=368.4e77b911.chunk.js.map

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.