PageSourceSearch

https://www.mirantis.com/blog/_nuxt/BiKFh8kb.js

js mirantis.com collected 2026-09-24 08:40:43 UTC 7,614 bytes, 1 lines download raw bytes

1try{let e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},a=(new e.Error).stack;a&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[a]="2eaf0de4-62bf-4414-a2f5-733867b1cf3d",e._sentryDebugIdIdentifier="sentry-dbid-2eaf0de4-62bf-4414-a2f5-733867b1cf3d")}catch(V){}import{aG as e,aL as a,aO as t,aY as s,aW as l,aZ as o,aH as r,aI as n,aU as u,aV as d,aT as c,a_ as i,aM as p,aN as f,a$ as _,b0 as g,aE as h,aX as b,b1 as v,aJ as y,aK as m,aP as k,aR as w}from"./C0qW7vjy.js";import{_ as P,a as x}from"./C-f0EMxe.js";import{u as I,P as j,a as S}from"./CBJeOKo7.js";import{u as A}from"./UYsvpIop.js";import"./CYIcaAOv.js";import"./CWMXuzI5.js";const H=["href","target"],T={key:0,class:"featured-asset-card__image"},q=["src","alt"],O={class:"featured-asset-card__body"},Y={class:"featured-asset-card__title"},B={key:0,class:"featured-asset-card__desc"},F={key:1,class:"featured-asset-card__cta blue-green-button-dark-background"},M={__name:"FeaturedAssetCard",props:{blok:{type:Object,required:!0}},setup:o=>(r,n)=>{var u,d,c;return a(),e("a",{class:"featured-asset-card",href:null==(u=o.blok.cta_link)?void 0:u.url,target:null==(d=o.blok.cta_link)?void 0:d.target},[n[0]||(n[0]=t("span",{class:"featured-asset-card__flag"},"Featured asset",-1)),(null==(c=o.blok.image)?void 0:c.filename)?(a(),e("span",T,[t("img",{src:o.blok.image.filename+"/m/",class:"featured-asset-card__img",alt:o.blok.image.alt||o.blok.title,loading:"lazy"},null,8,q)])):s("",!0),t("span",O,[t("span",Y,l(o.blok.title),1),o.blok.copy_text?(a(),e("span",B,l(o.blok.copy_text),1)):s("",!0),o.blok.cta_text?(a(),e("span",F,l(o.blok.cta_text),1)):s("",!0)])],8,H)}},R={class:"posts-list"},D={__name:"PostsListHeroSection",props:{authors:{type:Array,required:!1,default:()=>[]},posts:{type:Array,required:!1,default:()=>[]},featured_post:{type:Object,required:!1,default:null},other_featured_posts:{type:Array,required:!1,default:()=>[]},featured_asset:{type:Object,required:!1,default:null}},setup(l){const _=l,g=e=>e&&e.content&&Object.keys(e.content).length>0,h=o((()=>g(_.featured_post)?[_.featured_post]:_.posts.slice(0,1))),b=o((()=>{const e=_.other_featured_posts.filter(g),a=3-e.length,t=g(_.featured_post)?0:1,s=a>0?_.posts.slice(t,t+a):[];return[...e,...s]}));return(o,_)=>{const g=p,v=f;return a(),e("div",R,[r(g,null,{default:n((()=>[(a(!0),e(u,null,d(c(h),(e=>(a(),i(P,{key:e.id,post:e,cols:12,layout:"hero",authors:l.authors},null,8,["post","authors"])))),128))])),_:1}),r(g,{class:"posts-list-hero-secondary"},{default:n((()=>[r(v,{cols:"12",lg:"9",class:"posts-list-hero-secondary-col"},{default:n((()=>[_[0]||(_[0]=t("h2",{class:"mb-4"},"Featured posts",-1)),r(g,null,{default:n((()=>[(a(!0),e(u,null,d(c(b),(e=>(a(),i(P,{key:e.id,post:e,cols:12,cols_lg:4,layout:"stacked",authors:l.authors},null,8,["post","authors"])))),128))])),_:1})])),_:1}),l.featured_asset?(a(),i(v,{key:0,cols:"12",lg:"3",class:"posts-list-asset-col"},{default:n((()=>[r(M,{blok:l.featured_asset},null,8,["blok"])])),_:1})):s("",!0)])),_:1})])}}},E={class:"blog-home blog-light"},K={class:"blog-header-section"},L={class:"blog-catalog-section"},U={__name:"index",async setup(s){let l,u;const d=_(),{$seoHead:i}=g(),{fetchHomeBundle:P,fetchRecentPosts:H,computeHeroFillerCount:T}=I(),q=h(1),O={chunk:5,chunksNavigation:"fixed",texts:{count:""}},{data:Y}=([l,u]=b((()=>A("home",P,{server:!0}))),l=await l,u(),l),B=o((()=>{var e;return(null==(e=Y.value)?void 0:e.story)??null})),F=o((()=>{var e;return(null==(e=Y.value)?void 0:e.featuredPost)??null})),M=o((()=>{var e;return(null==(e=Y.value)?void 0:e.otherFeaturedPosts)??[]})),R=o((()=>{var e;return(null==(e=Y.value)?void 0:e.featuredAsset)??null})),U=o((()=>{var e;return(null==(e=Y.value)?void 0:e.authors)??[]})),V=o((()=>{var e,a;return[null==(a=null==(e=F.value)?void 0:e.content)?void 0:a._uid,...M.value.map((e=>{var a;return null==(a=null==e?void 0:e.content)?void 0:a._uid}))].filter(Boolean)})),W=o((()=>T(F.value,M.value))),{data:C}=([l,u]=b((async()=>A("posts",(async()=>{const e=W.value,a=j+e,{stories:t,total:s}=await H({page:1,perPage:a,excludedUids:V.value});return{heroPosts:t.slice(0,e),listPosts:t.slice(e),totalPosts:s}}),{server:!0}
1))),l=await l,u(),l),$=o((()=>{var e;return(null==(e=C.value)?void 0:e.heroPosts)??[]})),z=o((()=>{var e;return(null==(e=C.value)?void 0:e.listPosts)??[]})),G=o((()=>{var e;return(null==(e=C.value)?void 0:e.totalPosts)??0})),J=o((()=>G.value+j)),N=e=>{window.location.href=1===e?"/blog/":`/blog/page/${e}/`},X=i({...B.value??{},name:"Blog"},d.path);return X.script=[...X.script??[],{children:"\n    try {\n        const key = 'scrollY_' + location.pathname.replace(/\\//g, '');\n        const savedY = parseInt(sessionStorage.getItem(key) || '0');\n        const margin = 50;\n        const maxAttempts = 50;\n        let attempts = 0;\n        let userScrolled = false;\n\n        window.addEventListener('scroll', () => {\n            if (window.scrollY > 10) userScrolled = true;\n        }, { once: true });\n\n        function restoreWhenReady() {\n            if (userScrolled) return;\n            const ready = (document.body.scrollHeight - window.innerHeight) > (savedY - margin);\n            if (ready || attempts >= maxAttempts) {\n                window.scrollTo({ top: savedY, behavior: 'instant' });\n            } else {\n                attempts++;\n                setTimeout(restoreWhenReady, 50);\n            }\n        }\n\n        window.addEventListener('load', () => setTimeout(restoreWhenReady, 100));\n    } catch (e) {\n        console.warn('Scroll restore failed:', e);\n    }\n"}],v(X),(s,l)=>{const o=y,u=D,d=f,i=p,_=x,g=m("pagination");return a(),e("div",E,[r(o,null,{default:n((()=>l[1]||(l[1]=[t("header",{class:"blog-head"},[t("div",{class:"blog-head__text"},[t("p",{class:"blog-head__eyebrow"},"The Mirantis Blog"),t("h1",{class:"blog-head__title"},[t("a",{href:"/blog/"},[k("Stories from "),t("span",{class:"blog-head__grad"},"Metal‑to‑Model"),t("sup",null,"™"),k(".")])])]),t("nav",{class:"blog-head__pills","aria-label":"Blog topics"},[t("a",{class:"blog-head__pill",href:"/blog/tag/kubernetes"},"Kubernetes"),t("a",{class:"blog-head__pill",href:"/blog/tag/ai-infrastructure"},"AI Infrastructure"),t("a",{class:"blog-head__pill",href:"/blog/tag/k0rdent"},"k0rdent"),t("a",{class:"blog-head__pill",href:"/blog/tag/security"},"Security"),t("a",{class:"blog-head__pill",href:"/blog/tag/mcp"},"MCP"),t("a",{class:"blog-head__pill",href:"/blog/tag/gpu"},"GPU"),t("a",{class:"blog-head__pill",href:"/blog/tag/openstack/"},"OpenStack")])],-1)]))),_:1}),t("section",K,[r(o,null,{default:n((()=>[r(i,null,{default:n((()=>[r(d,{cols:"12",class:"blog-posts-wrapper"},{default:n((()=>[r(u,{posts:c($),featured_post:c(F),other_featured_posts:c(M),authors:c(U),featured_asset:c(R)},null,8,["posts","featured_post","other_featured_posts","authors","featured_asset"])])),_:1})])),_:1})])),_:1})]),t("section",L,[r(o,null,{default:n((()=>[r(i,null,{default:n((()=>[r(d,{cols:"12",lg:"9"},{default:n((()=>l[2]||(l[2]=[t("h2",{class:"mb-4"},"Keep reading",-1)]))),_:1}),r(d,{cols:"12",lg:"12",class:"blog-posts-wrapper"},{default:n((()=>[r(_,{posts:c(z),authors:c(U),layout:"horizontal"},null,8,["posts","authors"])])),_:1})])),_:1}),r(i,null,{default:n((()=>[r(d,{cols:"12"},{default:n((()=>[r(g,{modelValue:c(q),"onUpdate:modelValue":l[0]||(l[0]=e=>w(q)?q.value=e:null),records:c(J),"per-page":c(S),options:O,onPaginate:N},null,8,["modelValue","records","per-page"])])),_:1})])),_:1})])),_:1})])])}}};export{U 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.