import{r as h,b as K,j as a,u as F,L as se,c as te}from"./vendor-react-C630P38J.js";import{d as I}from"./vendor-utils-Cb1MAKRV.js";import{P as re,a as ne,u as oe}from"./index.css.ts.vanilla-CskxOPcC.js";import{aO as ie,bQ as ce,c as N,a2 as R,k as E,Q as le,bR as me,bS as de,bT as he,u as ue,aa as ve,d as L,bU as ge,bV as pe,L as Ne,T as xe,N as je,bD as Ce}from"./feature-order-C2we0F5o.js";import{P as ye}from"./event-B2tWEq9c.js";import{S as Se,b as U}from"./vendor-swiper-CwUwDtZu.js";import{a as _e}from"./product-a1hBxOTz.js";import{B as O}from"./useMyReviewableList-DavuWkI1.js";import{a as Pe,d as we}from"./vendor-query-BjC2S-sR.js";import{f as be,i as Te}from"./useBrandInfoByBrandNo-DQa2NbIq.js";import{h as qe}from"./index-DOpJRihs.js";import{q as Le}from"./vendor-fxts-IS4CCBC4.js";import{P as Be}from"./vendor-overlay-B61Jbn6n.js";import{u as A}from"./vendor-i18n-D_F5k183.js";import{L as fe}from"./index-DzLEDbEg.js";import"./index-BuHG-EMz.js";import"./vendor-rhf-CXRF5ML7.js";import"./vendor-zod-BNDLCzeL.js";import"./vendor-runtime-BrGgGswE.js";import"./vendor-hooks-D-WB61cZ.js";import"./vendor-cookie-BFUm5jHE.js";import"./vendor-state-BxLZOG0B.js";import"./vendor-form-ui-C6F7344s.js";import"./vendor-date-XKm2J5pk.js";import"./vendor-meta-D6H5T8-B.js";const ke=e=>({articleNo:e.postNo,attached:e.attached,categoryLabel:e.categoryLabel??"",displayStatusType:e.displayStatusType,imageUrl:e.imageUrl??"",notice:e.noticed,recommendCount:e.recommendedCnt,registerDisplayName:qe({registerName:e.registerName}),registerYmdt:e.registerYmdt??"",repliedCnt:e.repliedCnt,secreted:e.secreted,title:e.title??"",viewCnt:e.viewCnt}),Ie=({boardNo:e,isMobile:t,listSearchData:o,listSearchParams:i})=>{var j;const r=h.useMemo(()=>({...o,boardNoOrId:e}),[e,o]),{data:s,isLoading:c}=Pe(be({searchParams:i,data:r,options:{enabled:!!e&&!t}})),{data:n,hasNextPage:d,fetchNextPage:l,isLoading:g}=we(Te({searchParams:i,data:r,options:{enabled:!!e&&t}})),x=h.useMemo(()=>(t?(n==null?void 0:n.pages.flatMap(u=>u.items))??[]:(s==null?void 0:s.items)??[]).map(ke),[s==null?void 0:s.items,n==null?void 0:n.pages,t]),y=t?((j=n==null?void 0:n.pages[0])==null?void 0:j.totalCount)??0:(s==null?void 0:s.totalCount)??0;return{articles:x,fetchNextPage:l,hasNextPage:d,isLoading:t?g:c,totalCount:y}},Re=[{label:"제목",value:"TITLE"},{label:"내용",value:"CONTENT"},{label:"작성자",value:"WRITER"}],Ee=e=>{const[t,o]=K(),i=t.get("keyword")??"",r=t.get("categoryNo"),s=t.get("searchType"),c=s==="CONTENT"||s==="WRITER"?s:"TITLE",n=t.get("direction"),d=n==="ASC"||n==="RECOMMEND_COUNT"||n==="READ_COUNT"?n:"DESC",l=Number(t.get("pageNumber")??1),g=Number(t.get("pageSize")??(e?8:12)),x=t.get("isNoticed")==="true"?!0:void 0,y=h.useMemo(()=>({page:l,pageSize:g}),[l,g]),j=h.useMemo(()=>({keyword:i||void 0,categoryNo:r?Number(r):void 0,direction:d,isNoticed:x,searchType:c}),[r,d,x,i,c]),S=h.useCallback(v=>{o(p=>{const m=new URLSearchParams(p);return v?m.set("categoryNo",v.toString()):m.delete("categoryNo"),m})},[o]),u=h.useCallback(({searchType:v,searchKeyword:p})=>{o(m=>{const _=new URLSearchParams(m);return _.set("keyword",p),_.set("searchType",v),_})},[o]),w=h.useCallback(v=>{o(p=>{const m=new URLSearchParams(p);return m.set("pageNumber",v.toString()),m})},[o]),b=h.useCallback(v=>{o(p=>{const m=new URLSearchParams(p);return m.set("direction",v),m.set("pageNumber","1"),m})},[o]);return{categoryNo:r,direction:d,handleCategoryChange:S,handleDirectionChange:b,handlePageChange:w,handleSearchChange:u,keyword:i,listSearchData:j,listSearchParams:y,pageNumber:l,pageSize:g,searchType:c,searchTypeList:Re}},Ue=e=>{const[t,o]=K(),i=t.get("view"),r=e===!0,s=r&&i!=="list"?"card":"list";h.useEffect(()=>{i!==s&&o(n=>{const d=new URLSearchParams(n);return d.set("view",s),d},{replace:!0})},[s,o,i]);const c=h.useCallback(n=>{o(d=>{const l=new URLSearchParams(d);return l.set("view",n),l})},[o]);return{boardView:s,handleViewChange:c,isCardLayout:s==="card",isViewChangeable:r}},Oe=(e,t)=>{var r,s;const o=t&&((s=(r=e==null?void 0:e.authorityConfig)==null?void 0:r.postWriteConfig)==null?void 0:s.type)==="SPECIFIC_MEMBERS",{data:i}=ie({options:{select:c=>({memberGroups:c.memberGroups??[],memberGradeNo:c.memberGradeNo??null}),enabled:o}});return h.useMemo(()=>ce(e,{isLoggedIn:t,profile:i}),[e,t,i])},M=[{id:"DESC",name:"최신순"},{id:"ASC",name:"오래된순"},{id:"RECOMMEND_COUNT",name:"추천순"},{id:"READ_COUNT",name:"조회순"}];var Me="uj42xw0",Y="uj42xw1",V="uj42xw2",z="uj42xw3",W="uj42xw4";const Ye=({categories:e,selectedCategoryNo:t,isAllButtonVisible:o,allButtonLabel:i,onCategoryClick:r})=>{const s={slidesPerView:"auto",spaceBetween:10,watchOverflow:!0};return Le(e)?null:a.jsxs(Se,{className:Me,...s,children:[o&&a.jsx(U,{className:Y,children:a.jsx("button",{className:N(R,V,t?W:z),onClick:()=>r(),children:i})}),e.map(c=>a.jsx(U,{className:Y,children:a.jsx("button",{className:N(R,V,t===c.categoryNo.toString()?z:W),onClick:()=>r(c.categoryNo),children:c.label})},c.categoryNo))]})},Ve=({categories:e,isAllButtonVisible:t=!0,allButtonLabel:o="전체",selectedCategoryNo:i,onClickCategory:r})=>a.jsx(Ye,{categories:e,selectedCategoryNo:i,isAllButtonVisible:t,allButtonLabel:o,onCategoryClick:r});var ze="_1mv822q0",We="_1mv822q1",De="_1mv822q2",$e="_1mv822q4",Ge="_1mv822q5",Qe="_1mv822q6",He="_1mv822q7",Ke="_1mv822q8",Fe="_1mv822q9",Ae="_1mv822qa",Je="_1mv822qb",D="_1mv822qc",Xe="_1mv822qd",Ze="_1mv822qe",ea="_1mv822qf",aa="_1mv822qg",sa="_1mv822qh",ta="_1mv822qi",ra="_1mv822qj",na="_1mv822qk",oa="_1mv822ql",ia="_1mv822qm",ca="_1mv822qn",la="_1mv822qo",ma="_1mv822qp",da="_1mv822qq",ha="_1mv822qr",ua="_1mv822qs",va="_1mv822qt",ga="_1mv822qu",pa="_1mv822qv",Na="_1mv822qw",$="_1mv822qx",xa="_1mv822qy",ja="_1mv822qz",Ca="_1mv822q10",ya="_1mv822q11",G="_1mv822q12",Q="_1mv822q13",Sa="_1mv822q14",H="_1mv822q15",_a="_1mv822q16",Pa="_1mv822q17";const wa=({article:e,attachmentUsed:t,boardId:o,boardNo:i,isCardLayout:r,isMobile:s,replyUsed:c})=>{const{t:n}=A(),d=F(),l=e.displayStatusType==="BLIND",g=t&&e.attached,x=c&&e.repliedCnt>(l?1:0),y=j=>{j.preventDefault();const S=u=>{d(`/boards/${o}/${e.articleNo}`,{state:{password:u}})};Be.open(u=>s?a.jsx(re,{...u,boardData:{boardNo:i,articleNo:e.articleNo},onConfirm:S}):a.jsx(ne,{...u,boardData:{boardNo:i,articleNo:e.articleNo},onConfirm:S}))};return a.jsxs(se,{className:N(aa,r?ta:sa),"data-blind":l?"true":"false",to:e.secreted?"#":`/boards/${o}/${e.articleNo}`,onClick:e.secreted?y:void 0,children:[r&&a.jsx("div",{className:ra,children:e.secreted?a.jsx("div",{"aria-label":n("비밀글"),className:na,role:"img",children:a.jsx(E,{"aria-hidden":"true",size:28})}):a.jsx(le,{alt:l?n("블라인드 처리된 게시글"):n("{{title}} 대표 이미지",{title:e.title}),src:l?"":e.imageUrl})}),a.jsxs("div",{className:N(oa,r&&ia),children:[a.jsxs("div",{className:N(ca,r?ma:la),children:[!l&&(e.notice||e.categoryLabel)&&a.jsxs("div",{className:da,children:[e.notice&&a.jsx(O,{size:"sm",tone:"orange",variant:"soft",children:n("공지")}),e.categoryLabel&&a.jsx(O,{size:"sm",tone:"gray",variant:"soft",children:e.categoryLabel})]}),a.jsxs("div",{className:ua,children:[a.jsx("span",{className:N(ha,r?ga:va),children:l?n("블라인드 처리된 게시글 입니다."):e.title}),a.jsxs("span",{className:pa,children:[e.secreted&&a.jsx(E,{"aria-hidden":"true",size:16,className:$}),g&&a.jsx(me,{"aria-label":n("첨부파일 있음"),className:$,role:"img",size:16}),x&&a.jsxs("span",{className:Na,children:["[",e.repliedCnt??0,"]"]})]})]})]}),a.jsx("div",{className:N(xa,r?Ca:ja),children:a.jsxs("div",{className:ya,children:[a.jsxs("div",{className:G,children:[a.jsx("span",{className:Sa,children:e.registerDisplayName||"-"}),(!r||!s)&&a.jsx("span",{className:H,children:I(e.registerYmdt).format("YYYY.MM.DD")})]}),a.jsxs("div",{className:G,children:[r&&s&&a.jsx("span",{className:H,children:I(e.registerYmdt).format("YYYY.MM.DD")}),a.jsxs("span",{"aria-label":n("조회수 {{count}}",{count:e.viewCnt??0}),className:Q,children:[a.jsx(de,{"aria-hidden":!0,size:14,strokeWidth:1.8}),a.jsx("span",{children:e.viewCnt??0})]}),a.jsxs("span",{"aria-label":n("추천 수 {{count}}",{count:e.recommendCount??0}),className:Q,children:[a.jsx(he,{"aria-hidden":!0,size:13,strokeWidth:1.8}),a.jsx("span",{children:e.recommendCount??0})]})]})]})})]})]})},ba=()=>{var k;const{t:e}=A(),{isMobile:t}=ue(),o=ve(),i=F(),{boardId:r}=te(),{data:s}=oe({options:{select:C=>Ce(C,r)}}),c=((k=s==null?void 0:s.boardNo)==null?void 0:k.toString())??"",{categoryNo:n,direction:d,handleCategoryChange:l,handleDirectionChange:g,handlePageChange:x,handleSearchChange:y,keyword:j,listSearchData:S,listSearchParams:u,pageNumber:w,pageSize:b,searchType:v,searchTypeList:p}=Ee(t),{articles:m,fetchNextPage:_,hasNextPage:J,isLoading:X,totalCount:T}=Ie({boardNo:c,isMobile:t,listSearchData:S,listSearchParams:u}),{boardView:P,handleViewChange:B,isCardLayout:q,isViewChangeable:Z}=Ue(s==null?void 0:s.thumbnailUsed),ee=Oe(s??null,o),f=s!=null&&s.categoryUsed?s.categories:[],ae=h.useCallback(()=>{i({pathname:`/boards/${r}/write`},{state:{categoryNo:n}})},[r,n,i]);return a.jsxs("article",{className:ze,children:[!t&&a.jsx("header",{className:We,children:a.jsx("h1",{className:De,children:(s==null?void 0:s.name)||e("게시판")})}),!!f.length&&a.jsx(Ve,{allButtonLabel:"전체",categories:f,selectedCategoryNo:n??"",onClickCategory:l}),a.jsxs("div",{className:Qe,children:[a.jsx(fe,{currentSearchKeywordValue:j,currentSearchTypeValue:v,customKeyInfo:{searchKeyword:"keyword"},isMobile:t,placeholder:"궁금하신 내용을 입력해 보세요.",searchTypeList:p,onSearchChange:y}),ee&&a.jsx("div",{className:Pa,children:a.jsx(L,{tone:"light",variant:"outline",onClick:ae,children:e("게시글 작성")})})]}),a.jsx("section",{className:N($e,q&&Ge),children:a.jsxs("div",{className:He,children:[a.jsxs("div",{className:Ke,children:[a.jsx("span",{className:Fe,dangerouslySetInnerHTML:{__html:e("총 {{count}}건",{count:T})}}),a.jsxs("div",{className:Ae,children:[a.jsx(_e,{ariaLabel:e("게시판 정렬"),desktopVariant:"expanded",options:M,selectedOption:M.find(C=>C.id===d),type:"query",onChange:C=>g(C.id)}),Z&&a.jsxs("div",{"aria-label":e("게시판 보기 방식"),className:Je,role:"group",children:[a.jsx(L,{"aria-label":e("카드형"),"aria-pressed":P==="card",className:D,"data-selected":P==="card",tone:"light",variant:"soft",onClick:()=>B("card"),children:a.jsx(ge,{"aria-hidden":"true"})}),a.jsx(L,{"aria-label":e("리스트형"),"aria-pressed":P==="list",className:D,"data-selected":P==="list",tone:"light",variant:"soft",onClick:()=>B("list"),children:a.jsx(pe,{"aria-hidden":"true"})})]})]})]}),a.jsx(Ne,{isLoading:X,children:m.length>0?a.jsxs(a.Fragment,{children:[a.jsx("div",{className:N(Xe,q?ea:Ze),children:m.map(C=>a.jsx(wa,{article:C,attachmentUsed:(s==null?void 0:s.attachmentUsed)===!0,boardId:r,boardNo:c,isCardLayout:q,isMobile:t,replyUsed:(s==null?void 0:s.replyUsed)===!0},C.articleNo))}),t?a.jsx(xe,{handleChange:_,hasNextPage:J,totalCount:T}):a.jsx("div",{className:_a,children:a.jsx(ye,{currentPage:w,pageSize:b,totalCount:T,onPageClick:x})})]}):a.jsx(je,{text:e("등록된 게시글이 없습니다.")})})]})})]})},Xa=()=>a.jsx(ba,{});export{Xa as default};