PageSourceSearch

https://omnisocials.com/assets/BlogGrid-DfiyND4w.js

js omnisocials.com collected 2026-10-04 18:36:53 UTC 2,224 bytes, 1 lines download raw bytes

1import{j as t}from"./jsx-runtime-BjG_zV1W.js";import{c as l}from"./utils-4perknFd.js";import{L as o}from"./chunk-WWGJGFF6-qnS7T1AN.js";import{a as c}from"./index-CpxDuR87.js";import"./config-D8ijCqo_.js";function d(e){return e.tags.filter(r=>r.visibility==="public")}function m(e,r=160){const a=e.excerpt||"";return a.length<=r?a:a.slice(0,r).trim()+"..."}function g(e,r){return`${e} ${{en:"min read"}[r]}`}function x(e,r){const a=new Date(e);return new Intl.DateTimeFormat(r,{year:"numeric",month:"long",day:"numeric"}).format(a)}function u({post:e,locale:r,featured:a=!1}){const i=c(`/blog/${e.slug}`),n=m(e,140),s=d(e)[0];return t.jsxs(o,{to:i,className:l("group flex flex-col","bg-white rounded-2xl overflow-hidden","border border-black/8","transition-all duration-300","hover:shadow-lg hover:shadow-black/5 hover:border-black/12","hover:-translate-y-1"),children:[e.feature_image&&t.jsxs("div",{className:l("relative overflow-hidden",a?"aspect-[16/9]":"aspect-[16/10]"),children:[t.jsx("img",{src:e.feature_image,alt:e.feature_image_alt||e.title,className:l("w-full h-full object-cover","transition-transform duration-500","group-hover:scale-105"),loading:"lazy"}),s&&t.jsx("span",{className:l("absolute top-3 left-3","px-2.5 py-1 text-xs font-medium","bg-white/90 backdrop-blur-sm rounded-full","text-black/70"),children:s.name.replace("category-","").replace(/-/g," ")})]}),t.jsxs("div",{className:"flex flex-col flex-1 p-5",children:[t.jsx("h3",{className:l(a?"text-xl":"text-lg","font-semibold text-black leading-snug","line-clamp-2 mb-2","group-hover:text-[#86C139] transition-colors duration-200"),children:e.title}),t.jsx("p",{className:l("text-sm text-black/60 leading-relaxed","line-clamp-3 mb-4 flex-1"),children:n}),t.jsxs("div",{className:l("flex items-center justify-between","text-xs text-black/50 pt-3","border-t border-black/5"),children:[t.jsx("span",{children:x(e.published_at,r)}),t.jsx("span",{children:g(e.reading_time||3,r)})]})]})]})}function y({posts:e,locale:r,className:a}){return e.length===0?null:t.jsx("div",{className:l("grid gap-6","grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",a),children:e.map((i,n)=>t.jsx(u,{post:i,locale:r,featured:n===0},i.id))})}export{y as B,g as a,x as f,d as g};

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.