PageSourceSearch

https://cling-ai.com/assets/PresetGrid-Cy-A3XFY.js

js cling-ai.com collected 2026-10-07 03:31:55 UTC 10,060 bytes, 1 lines download raw bytes

1import{a as e}from"./rolldown-runtime-BEU_UCik.js";import{et as t,j as r,o as s,rt as i}from"./app-bootstrap-2kFCW_6Z.js";import{Y as n,u as o}from"./vendor-react-JhNq9muS.js";import{t as a}from"./proeaiDesktopWorkspace-Do6_sNHz.js";import{Gt as l,Qt as c,t as d,wt as u}from"./vendor-ui-CFmqwDoN.js";import{t as p}from"./performanceProfile-CNlTKG32.js";import{t as m}from"./templateI18n-BV-eYqEy.js";import{r as f}from"./imageUrl-IG2JbANk.js";import"./video-qxfnPbyQ.js";/* empty css                      */var v=e(n(),1);function g(){const e=t();return"web"===e.platform&&"product"!==e.uiConfig?.surface&&!i()&&"undefined"!=typeof document&&!document.documentElement.dataset.partnerSite}var b=o(),w=new WeakMap,h=null;function x(e,t){const[r,s]=(0,v.useState)(!1);return(0,v.useEffect)(()=>{const r=e.current;if(!r||!t)return;const i=(h||(h=new IntersectionObserver(e=>{for(const t of e)w.get(t.target)?.(t.isIntersecting)},{threshold:.3,rootMargin:"80px 0px"})),h);return w.set(r,s),i.observe(r),()=>{i.unobserve(r),w.delete(r)}},[e,t]),r}function j(e=!0){const[t,r]=(0,v.useState)(!1);return(0,v.useEffect)(()=>{if(t||!e)return;const s=()=>r(!0),i={passive:!0};return window.addEventListener("pointerdown",s,i),window.addEventListener("touchstart",s,i),window.addEventListener("scroll",s,i),window.addEventListener("keydown",s),()=>{window.removeEventListener("pointerdown",s),window.removeEventListener("touchstart",s),window.removeEventListener("scroll",s),window.removeEventListener("keydown",s)}},[e,t]),t}var y=new Set,N=new Set,L=!1,k=0,E=null,S=null;function C(){if(L||"hidden"===document.visibilityState){for(const e of N)e.pause();return void N.clear()}const e=p().previewVideoLimit;let t=0;for(const r of N)y.has(r)&&t<e?t+=1:(r.pause(),N.delete(r));for(const r of y){if(N.size>=e)break;N.has(r)||(N.add(r),r.play().catch(()=>{N.delete(r),y.delete(r),C()}))}}function U(e){L=e,C()}function $(e=!0){(0,v.useEffect)(()=>{if(e)return function(){if(1===(k+=1)){const e=()=>{U(!0),null!==E&&window.clearTimeout(E),E=window.setTimeout(()=>{E=null,"hidden"!==document.visibilityState&&U(!1)},160)},t=()=>U("hidden"===document.visibilityState),r=()=>U(!0),s=()=>U(!1);window.addEventListener("scroll",e,{passive:!0}),window.addEventListener("pagehide",r),window.addEventListener("pageshow",s),document.addEventListener("visibilitychange",t),S=()=>{window.removeEventListener("scroll",e),window.removeEventListener("pagehide",r),window.removeEventListener("pageshow",s),document.removeEventListener("visibilitychange",t)}}return()=>{(k=Math.max(0,k-1))>0||(S?.(),S=null,null!==E&&window.clearTimeout(E),E=null,U(!1))}}()},[e])}function z(e){y.add(e),C()}function P(e){y.delete(e),e.pause(),N.delete(e),C()}function T(e){const t=e.previewVideoUrl?.trim();if(t&&!(e.videoUrl&&t===e.videoUrl.trim()||t.includes("/templates/video/")))return t}function I({imageUrls:e,title:t,isPriority:r,onLoaded:s}){const i=e.slice(0,4);return(0,b.jsxs)("div",{className:"absolute inset-0 grid grid-cols-2 grid-rows-2 gap-px bg-black pointer-events-none",children:[i.map((e,t)=>(0,b.jsx)("img",{src:e,alt:"",loading:r?"eager":"lazy",decoding:"async",fetchPriority:r&&0===t?"high":"low",className:"preset-card-media w-full h-full object-cover",onLoad:s},`${e}-${t}`)),0===i.length&&(0,b.jsx)("div",{className:"col-span-2 row-span-2 flex items-center justify-center bg-surface-card text-text-tertiary text-xs",children:t})]})}var M=(0,v.memo)(function({item:e,displayTitle:t,onItemClick:r,onItemPreview:s,isPriority:i,previewLabel:n,actionLabel:o,desktopWorkspace:a,previewActivationReady:l,compactLayout:p}){const m=()=>r(e),g=s?()=>s(e):void 0,[w,h]=(0,v.useState)(!1),[j,y]=(0,v.useState)(null),[N,L]=(0,v.useState)(!1),[k,E]=(0,v.useState)(null),S=(0,v.useRef)(null),C=(0,v.useRef)(null),U=T(e),$=function(e){const t=e.replace(/\s*\([^)]*\)\s*/g," ").replace(/\s+/g," ").trim();for(const[s,i]of[[/^cinematic\s+low[- ]angle\s+reveal$/i,"Low-Angle Reveal"],[/^pov\s+mouthfull\s+cumshot$/i,"POV Mouthful"],[/^black lace,\s*sheer cutouts$/i,"Black Lace"],[/^water splashes body$/i,"Water Splash"],[/^overhead boom reveal$/i,"Overhead Reveal"],[/^frozen bullet time$/i,"Bullet Time"]])if(s.test(t))return i;if(t.length<=24)return t;const r=t.split(",")[0]?.trim();return r&&r.length>=8&&r.length<=24?r:t.replace(/^cinematic\s+/i,"").replace(/\s+reveal$/i," Reveal").slice(0,28).replace(/\s+\S*$/,"").trim()||t}
1(t),M=x(C,!!U&&l),R=(e.imageUrls||[]).filter(Boolean),V=!U&&R.length>1;(0,v.useEffect)(()=>{if(!l)return;if(M)return void L(!0);const e=window.setTimeout(()=>L(!1),5e3);return()=>window.clearTimeout(e)},[M,l,U]),(0,v.useEffect)(()=>{const e=S.current;if(e&&N)return()=>{P(e),e.removeAttribute("src"),e.load()}},[N,U]),(0,v.useEffect)(()=>{const e=S.current;if(e&&N)return M?z(e):P(e),()=>{e&&P(e)}},[M,N]);const A=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"preset-card-wash absolute inset-0"}),!w&&(0,b.jsx)("div",{className:"preset-card-skeleton absolute inset-0"}),U&&N?(0,b.jsx)("video",{ref:S,src:k===U?U:f(U),poster:e.imageUrl,muted:!0,loop:!0,playsInline:!0,preload:"none",onError:()=>E(U),className:"preset-card-media absolute inset-0 w-full h-full object-cover pointer-events-none",onLoadedData:e=>{h(!0),M&&z(e.currentTarget)}},U):V?(0,b.jsx)(I,{imageUrls:R,title:e.title,isPriority:i,onLoaded:()=>h(!0)}):e.imageUrl?(0,b.jsx)("img",{src:j===e.imageUrl?e.coverUrl:e.imageUrl,srcSet:j===e.imageUrl?void 0:e.imageSrcSet,sizes:e.imageSizes,alt:e.title,loading:i?"eager":"lazy",decoding:"async",fetchPriority:i?"high":"low",className:"preset-card-media absolute inset-0 w-full h-full object-cover pointer-events-none",onLoad:()=>h(!0),onError:()=>{e.coverUrl&&j!==e.imageUrl&&y(e.imageUrl)}}):(0,b.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-surface-card text-text-tertiary text-xs px-3 text-center",children:$})]});return a?(0,b.jsxs)("article",{className:"preset-card proeai-desktop-preset-card group",children:[(0,b.jsxs)("div",{className:"proeai-preset-media-shell",children:[(0,b.jsx)("button",{ref:C,type:"button",onClick:m,"aria-label":t,className:"proeai-preset-media-button focus-visible:outline-none",children:A}),"number"==typeof e.creditCost&&e.creditCost>0&&(0,b.jsxs)("span",{className:"proeai-preset-credit",children:[(0,b.jsx)(d,{size:9,fill:"currentColor","aria-hidden":"true"}),e.creditCost]}),g&&(0,b.jsx)("button",{type:"button",onClick:g,className:"preset-preview-button proeai-preset-preview-button","aria-label":n,children:(0,b.jsx)(u,{size:14,"aria-hidden":"true"})}),e.badge&&(0,b.jsx)("div",{className:"preset-badge proeai-preset-badge",children:e.badge})]}),(0,b.jsxs)("div",{className:"proeai-preset-card-body",children:[(0,b.jsx)("h3",{className:"preset-card-title",title:t,children:$}),(0,b.jsxs)("button",{type:"button",onClick:m,className:"proeai-preset-use-button","aria-label":`${o}: ${t}`,children:[(0,b.jsx)("span",{children:o}),(0,b.jsx)(c,{size:13,"aria-hidden":"true"})]})]})]}):(0,b.jsxs)("button",{ref:C,onClick:m,"aria-label":t,className:`preset-card ${p?"preset-card--compact":""} group relative rounded-2xl overflow-hidden border border-brand/20\n        active:scale-[0.97] transition-transform duration-150 w-full\n        focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-accent)]/70 focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--surface-base)]`,style:{aspectRatio:p?"4/5":"3/4"},children:[A,(0,b.jsx)("div",{className:"absolute top-2 right-2 z-20 flex flex-col items-center gap-1",children:g&&(0,b.jsx)("button",{type:"button",onClick:e=>{e.stopPropagation(),g()},className:"preset-preview-button w-7 h-7 rounded-full bg-black/40 backdrop-blur-sm flex items-center justify-center\n              active:scale-90 transition-transform","aria-label":n,children:(0,b.jsx)(u,{size:14,className:"text-white/80"})})}),e.badge&&(0,b.jsx)("div",{className:"preset-badge absolute top-2 left-2 z-20 rounded-full px-2 py-1 text-[11px] font-bold leading-none",children:e.badge}),(0,b.jsx)("div",{className:"preset-card-title-wash absolute inset-x-0 bottom-0 h-[46%] pointer-events-none"}),(0,b.jsx)("div",{className:"absolute inset-x-0 bottom-0 z-10 px-2.5 pb-2.5 pt-8 pointer-events-none",children:(0,b.jsx)("h3",{className:"preset-card-title text-white text-[12.5px] leading-[1.08] line-clamp-2",children:$})})]})});var R=(0,v.memo)(function({items:e,onItemClick:t,onPreviewClick:i,priorityCount:n=4,initialVisible:o=8}){const{t:c}=r(),d=(0,v.useMemo)(()=>e,[e]),u=a(),p=s(),f=g(),w=f?"preset-grid-wrap--compact":"",[h,x]=(0,v.useState)(8===o&&p?16:o),y=j();$();const N=(0,v.useCallback)(()=>{const e=p?16:8;(0,v.startTransition)(()=>{x(t=>Math.min(t+e,d.length))})},[d.length,p]),L=(0,v.useMemo)(()=>u?d:d.slice(0,h),[u,d,h]),k=!u&&h<d.length,E=d.length-h;return d.length?(0,b.jsxs)("div",{className:`preset-grid-wrap ${w} px-4`,children:[(0,b.jsx)("div",{className:"preset-grid grid grid-cols-2 gap-3",children:L.map((e,r)=>(0,b.jsx)(M,{item:e,displayTitle:m(c,e.title),onItemClick:t,onItemPreview:i,isPriority:r<n,previewLabel:c("common.preview","Preview"),actionLabel:u?c("proeai.template.tryNow","Try Now"):c("video.useTemplate",{defaultValue:"Use template"}),desktopWorkspace:u,previewActivationReady:y,compactLayout:f},e.id))}),k&&(0,b.jsxs)("button",{type:"button",onClick:N,className:"preset-show-more w-full mt-4 py-3 flex items-center justify-center gap-2\n            rounded-xl bg-surface-card border border-divider\n            text-text-secondary text-sm font-medium\n            hover:bg-surface-strong hover:text-text-primary\n            active:scale-[0.98] transition-all",children:[(0,b.jsx)("span",{children:c("common.showMore",{count:E,defaultValue:"Show More ({{count}})"})}),(0,b.jsx)(l,{size:16})]})]}):(0,b.jsx)("div",{className:`preset-grid-wrap ${w} preset-grid grid grid-cols-2 gap-3 px-4`,children:Array.from({length:4}).map((e,t)=>(0,b.jsx)("div",{className:"preset-skeleton-card rounded-2xl",style:{aspectRatio:f?"4/5":"3/4"}},t))})});export{j as a,g as c,P as i,T as n,$ as o,z as r,x as s,R as t};

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.