import{d as G,af as C,c as d,e as a,f as l,g as s,m as y,a8 as u,ag as L,p as b,t as c,F as _,l as P,j as A}from"./NkN6QURX.js";import{u as H}from"./DzxYJzkk.js";import{d as j}from"./CGR-T3Ho.js";const J={class:"flex justify-between items-center mb-8"},O=["data-content-key"],Q=["data-content-key","aria-busy"],U=["onClick"],W={key:0,class:"text-lg font-semibold mb-3 line-clamp-2"},X={key:1,class:"text-sm opacity-75 mb-4 line-clamp-5 flex-1"},Z={class:"mt-auto"},ee={key:0,class:"text-sm opacity-65 mb-2"},te={class:"flex items-center justify-between"},ne={key:0,class:"text-3xl font-bold"},ae=["onClick"],le={key:1,class:"col-span-full text-center text-gray-400 py-10 border border-dashed border-slate-200 rounded-lg bg-slate-50"},oe={key:0,class:"mt-8 flex justify-center sm:justify-end pt-2"},se={class:"isolate inline-flex -space-x-px rounded-md gap-2!","aria-label":"Pagination"},ie=["disabled"],re=["onClick"],ue={key:1,class:"relative inline-flex items-center px-3 py-0 text-sm text-gray-500 select-none"},ce=["disabled"],ye=G({__name:"LatestNewsLayout2",props:{content:{default:()=>[]},editable:{type:Boolean,default:!1},activeKey:{default:null},onContentClick:{},onButtonClick:{},textStyle:{},className:{},newsItems:{default:()=>[]},loading:{type:Boolean,default:!1},emptyText:{default:"暂无数据"},onItemClick:{}},emits:["handle-item-click","on-page-change"],setup(m,{emit:S}){const o=m,k=S,{pick:K,resolveKey:w,interactive:Y,isActive:N,resolveTextStyle:D,handleClick:B}=H({content:C(o,"content"),activeKey:C(o,"activeKey"),editable:C(o,"editable"),onContentClick:o.onContentClick,textStyle:o.textStyle}),p=d(()=>K("latestNewsLayout2Title")),i=d(()=>{const e=o.content||[];return e.find(t=>t.key==="newsList")||e.find(t=>t.type==="table"||t.type==="list")}),I=d(()=>{const e=i.value;if(!e)return[];const t=Number(e.dataSource),n=Array.isArray(e.data)?e.data:[],v=Array.isArray(e.customData?.data)?e.customData.data:[];return t===3?v:n}),f=d(()=>i.value?.config?.pagination||null),F=d(()=>f.value?.showPagination?Number(f.value.total||0)>Number(f.value.limit||0):!1),g=d(()=>{const e=Number(f.value?.total||0),t=Number(f.value?.limit||0);return t?Math.max(1,Math.ceil(e/t)):1}),r=d(()=>Number(f.value?.page||1)),R=d(()=>{const e=g.value,t=r.value;return e?e<=7?Array.from({length:e},(n,v)=>v+1):t<=4?[1,2,3,4,5,"...",e]:t>=e-3?[1,"...",e-4,e-3,e-2,e-1,e]:[1,"...",t-1,t,t+1,"...",e]:[]});function V(e){return e?.attribute?.value??""}function M(e){return e?.title||e?.nameDisplay||e?.name||""}function T(e){return e?.descriptionDisplay||e?.description||""}function x(e){return e?.date||e?.createdAt||e?.created_at||""}function $(e){return e?{yearMonth:j(e).format("YYYY-MM"),day:j(e).format("DD")}:{yearMonth:"",day:""}}function E(e){k("handle-item-click",e),o.onItemClick&&o.onItemClick(e)}function q(e){const t=(e.buttonTarget||e.target||e.link||"").toString().trim();if(t&&o.onButtonClick){o.onButtonClick(t);return}o.onItemClick&&o.onItemClick(e),k("handle-item-click",e)}function h(e){const t=Number(f.value?.limit||0);k("on-page-change",{page:e,limit:t})}return(e,t)=>(l(),a("section",{class:b(["py-12 md:py-16 lg:py-20 px-4 md:px-8 lg:px-[12%] bg-[#f6f6f6] font-sans",m.className])},[s("div",J,[p.value?(l(),a("div",{key:0,class:b(["whitespace-pre-wrap text-2xl md:text-3xl lg:text-4xl font-semibold",[{"cursor-pointer":u(Y),mark:m.editable&&u(N)(p.value)}]]),"data-content-key":u(w)(p.value)||void 0,style:L(u(D)(p.value)),onClick:t[0]||(t[0]=n=>u(B)(p.value))},c(V(p.value)),15,O)):y("",!0)]),s("div",{class:b(["grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6",[{mark:m.editable&&u(N)(i.value)}]]),"data-content-key":i.value&&u(w)(i.value)||void 0,"aria-busy":m.loading,onClick:t[1]||(t[1]=n=>i.value&&u(B)(i.value))},[I.value.length?(l(!0),a(_,{key:0},P(I.value,(n,v)=>(l(),a("div",{key:n.id||n.key||v,class:"bg-white rounded-lg p-5 flex flex-col h-full cursor-pointer",onClick:A(z=>E(n),["stop"])},[M(n)?(l(),a("div",W,c(M(n)),1)):y("",!0),T(n)?(l(),a("div",X,c(T(n)),1)):y("",!0),s("div",Z,[x(n)?(l(),a("div",ee,c($(x(n)).yearMonth),1)):y("",!0),s("div",te,[x(n)?(l(),a("div",ne,c($(x(n)).day),1)):y("",!0),i.value?.config?.button?.attribute?.value?(l(),a("button",{key:1,type:"button",class:"text-xl cursor-pointer hover:scale-110 transition-transform",style:L(u(D)(i.value.config.button)),onClick:A(z=>q(n),["stop"])},c(i.value.config.button.attribute.value||"→"),13,ae)):y("",!0)])])],8,U))),128)):(l(),a("div",le,c(m.emptyText),1))],10,Q),F.value?(l(),a("div",oe,[s("div",se,[s("button",{type:"button",class:b(["relative inline-flex items-center rounded-l-md px-3 py-2 text-sm font-medium hover:bg-gray-50 focus:z-20 focus:outline-offset-0",{"pointer-events-none opacity-50":r.value===1}]),disabled:r.value===1,"aria-label":"Previous",onClick:t[2]||(t[2]=n=>r.value>1&&h(r.value-1))},[...t[4]||(t[4]=[s("svg",{class:"h-5 w-5",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},[s("path",{"fill-rule":"evenodd",d:"M12.79 5.23a.75.75 0 01-.02 1.06L8.832 10l3.938 3.71a.75.75 0 11-1.04 1.08l-4.5-4.25a.75.75 0 010-1.08l4.5-4.25a.75.75 0 011.06.02z","clip-rule":"evenodd"})],-1)])],10,ie),(l(!0),a(_,null,P(R.value,(n,v)=>(l(),a(_,{key:`page-${n}-${v}`},[typeof n=="number"?(l(),a("button",{key:0,type:"button",class:b(["relative inline-flex rounded items-center px-3 py-0 text-sm ring-1 ring-inset focus:z-20 focus:outline-offset-0",[n===r.value?"z-10 bg-[var(--theme-primary-color)] text-white ring-[#ffffff] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-600":"ring-gray-300"]]),onClick:z=>h(n)},c(n),11,re)):(l(),a("span",ue,c(n),1))],64))),128)),s("button",{type:"button",class:b(["relative inline-flex items-center rounded-r-md px-3 py-2 text-sm font-medium hover:bg-gray-50 focus:z-20 focus:outline-offset-0",{"pointer-events-none opacity-50":r.value===g.value}]),disabled:r.value===g.value,"aria-label":"Next",onClick:t[3]||(t[3]=n=>r.value<g.value&&h(r.value+1))},[...t[5]||(t[5]=[s("svg",{class:"h-5 w-5",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},[s("path",{"fill-rule":"evenodd",d:"M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z","clip-rule":"evenodd"})],-1)])],10,ce)])])):y("",!0)],2))}});export{ye as default};
