PageSourceSearch

https://frontends-extended-starter-template.vercel.app/_nuxt/DeOoI4rD.js

js frontends-extended-starter-template.vercel.app collected 2026-10-03 07:00:41 UTC 3,630 bytes, 1 lines download raw bytes

1import{Ht as e,On as t,Rt as n,b as r,bt as i,g as a,k as o,mt as s,nr as c,o as l,v as u,vn as d,y as f}from"./CrzdsfCC.js";import{m as p,p as m}from"./DGIOz4Aw.js";import{n as h}from"./BujKp7DX.js";import{v as g}from"./xxLAYiRf.js";import{t as _}from"./DgmsSXMM.js";import"./50s3XuM6.js";import{t as v}from"./DG1KLCKn.js";import{n as y}from"./DxiBwjul.js";import{t as b}from"./DImBEsft.js";import{n as x,t as S}from"./9KidwEki.js";import{t as C}from"./B_wFnZF2.js";import{t as w}from"./nQsqp9ip.js";var T={class:`max-w-2xl mx-auto lg:max-w-full`},E={key:0,class:`text-center text-xl py-16 text-surface-on-surface-variant`},D={key:2,"data-testid":`loading`,class:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 2xl:grid-cols-4 auto-rows-fr gap-x-4 sm:gap-x-6 lg:gap-x-8 gap-y-8 sm:gap-y-12 lg:gap-y-16`},O=15,k=1,A=`name-asc`,j=Object.assign(o({__name:`CmsElementProductListing`,props:{content:{}},setup(o){let j=o,{getConfigValue:M}=_(j.content),N=n(`productListElement`),P={listing:{noProducts:`No products found 😔`,perPage:`Per Page:`,product:`Product`,products:`Products`}};P=h(v(),P);let{changeCurrentPage:F,getCurrentPage:I,getElements:L,getTotalPagesCount:R,loading:z,setInitialListing:B}=y(),V=m(),H=p(),U=d(V.query.limit?Number(V.query.limit):j.content?.data?.listing?.limit?Number(j.content?.data?.listing?.limit):O),W=V.path;function G(e){let t={limit:x(S(e.limit))??O,p:x(S(e.p))??k,order:S(e.order)??A},n=S(e.manufacturer);n&&(t.manufacturer=n);let r=S(e.properties);r&&(t.properties=r);let i=x(S(e[`min-price`]));i!==void 0&&(t[`min-price`]=i);let a=x(S(e[`max-price`]));a!==void 0&&(t[`max-price`]=a);let o=x(S(e.rating));return o!==void 0&&(t.rating=o),e[`shipping-free`]&&(t[`shipping-free`]=S(e[`shipping-free`])===`true`),t}e(()=>V.query,e=>{V.path===W&&(U.value=x(S(e.limit))??O,F(x(S(e.p))??k,G(e)).catch(e=>{console.error(`Listing update failed:`,e)}))},{deep:!0});async function K(){await g(z).toBe(!1),N.value?.scrollIntoView({behavior:`smooth`})}let q=async e=>{await H.push({query:{...V.query,p:e,limit:U.value}}),await K()},J=async e=>{await H.push({query:{...V.query,limit:e,p:k}}),await K()},Y=a(()=>j.content?.type===`product-listing`);return B(j?.content?.data?.listing),(async()=>{let e=j?.content?.data?.listing.limit??O,t=j?.content?.data?.listing.page??k,n=j?.content?.data?.listing.sorting??A;if(V.query.limit&&U.value!==e||V.query.p&&Number(V.query.p)!==t||V.query.order&&V.query.order!==n){let e=V.query.limit?Number(V.query.limit):O,t=V.query.p?Number(V.query.p):k,n={limit:e,p:t,order:V.query.order?V.query.order:A};console.warn(`The current route does not match the initial listing. Changing the route to match the initial listing.`),U.value=e,await F(t,n)}})(),(e,n)=>{let a=b,o=C,d=w;return s(),r(`div`,T,[!t(z)&&t(L).length<1?(s(),r(`div`,E,c(t(P).listing.noProducts),1)):f(``,!0),t(z)?f(``,!0):(s(),r(`div`,{key:1,ref_key:`productListElement`,ref:N,class:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 2xl:grid-cols-4 auto-rows-fr gap-x-4 sm:gap-x-6 lg:gap-x-8 gap-y-8 sm:gap-y-12 lg:gap-y-16`},[(s(!0),r(l,null,i(t(L),e=>(s(),u(a,{key:e.id,product:e,"is-product-listing":Y.value,"layout-type":t(M)(`boxLayout`),class:`w-full`},null,8,[`product`,`is-product-listing`,`layout-type`]))),128))],512)),t(z)?(s(),r(`div`,D,[(s(!0),r(l,null,i(U.value,e=>(s(),u(o,{key:e,class:`w-full`}))),128))])):f(``,!0),t(z)?f(``,!0):(s(),u(d,{key:3,limit:U.value,"onUpdate:limit":n[0]||=e=>U.value=e,total:t(R),current:Number(t(I)),translations:t(P),onChangePage:q,onChangeLimit:J},null,8,[`limit`,`total`,`current`,`translations`]))])}}}),{__name:`CmsElementProductListing`});export{j 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.