@rtstic.dev/pulse 0.0.80 → 0.0.81
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/promptbar/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{document.addEventListener("DOMContentLoaded",()=>{console.log("[promptbar] DOMContentLoaded fired");let n=window.gsap,p=document.querySelectorAll("[prompt-slide-image-inner]");console.log("[float] elements found:",p.length),p.forEach(e=>{n.set(e,{x:0,y:0});function t(){n.to(e,{x:n.utils.random(-20,20),y:n.utils.random(-20,20),duration:n.utils.random(2,3),ease:"sine.inOut",onComplete:t})}n.delayedCall(n.utils.random(0,4),t)});let g=[{prompt:"Build a list of country music dancers that wear cowboy hats",slide:0},{prompt:"Build a list of grandma creators who do hip hop lip sync content",slide:1},{prompt:"Build a list of meme pages that are perfect for an EDM launch",slide:2}],s=document.querySelector("[promptbar=word-count]"),d=document.querySelector("[promptbar=submit]"),a=document.querySelector("[promptbar=border]"),m=document.querySelector("[promptbar=text-slot]"),c=document.querySelector("[promptbar=submit-loader]"),L=!1,l=new window.Swiper("[promptbar-slider]",{loop:!0,speed:0,effect:"fade",fadeEffect:{crossFade:!1},pagination:{el:".swiper-pagination",clickable:!0},keyboard:{enabled:!0},mousewheel:{enabled:!0},autoplay:!1});if(console.log("[slider] imageSlider instance:",l??"NOT FOUND \u274C"),console.log("[slider] Swiper available on window:",window.Swiper?"\u2705":"NOT FOUND \u274C"),console.log("[slider] .swiper element exists:",document.querySelector(".swiper")??"NOT FOUND \u274C"),console.log("[slider] slide count:",l?.slides?.length??"unknown"),console.log("[slider] active index:",l?.activeIndex??"unknown"),console.log("[promptbar] wordCount: ",s??"NOT FOUND \u274C"),console.log("[promptbar] sendBtn: ",d??"NOT FOUND \u274C"),console.log("[promptbar] barBorder: ",a??"NOT FOUND \u274C"),console.log("[promptbar] textSlot: ",m??"NOT FOUND \u274C"),console.log("[promptbar] gsap: ",n?"\u2705":"NOT FOUND \u274C"),!s||!d||!a||!m||!n){console.error("[promptbar] One or more dependencies missing. Aborting.");return}console.log("[promptbar] All elements found \u2705 Starting loop...");let b=0,y=!1;function u(e){return new Promise(t=>setTimeout(t,e))}function N(e){let t=e.trim().split(/\s+/).filter(Boolean).length;s.textContent=`${t||0}/300 words`}function v(e){let t=document.createElement("div");return t.className="chroma-text",t.setAttribute("data-animate","false"),t.textContent=e,t}function S(e){return console.log(`[promptbar] textIn \u2192 "${e}"`),new Promise(t=>{let o=n.timeline({defaults:{ease:"power1.out"}}),r=m.querySelector(".chroma-text");r&&(o.to(r,{duration:.4,autoAlpha:0,ease:"power1.in"}),o.add(()=>r.remove()));let i;o.add(()=>{i=v(e),m.appendChild(i),i.setAttribute("data-animate","true"),x(e),console.log("[promptbar] chroma element appended")}),o.to(()=>i,{duration:.6,autoAlpha:1}),o.add(()=>{console.log("[promptbar] textIn done \u2705"),t()})})}function T(){return console.log("[promptbar] triggerSendClick"),new Promise(e=>{d.setAttribute("is-clicked","true"),O(),setTimeout(()=>{d.setAttribute("is-clicked","false"),setTimeout(e,250)},120)})}function h(e,t){return console.log("[promptbar] triggerBorderAnimation started, going to slide:",t),new Promise(o=>{a.removeAttribute("is-animating"),setTimeout(()=>{a.setAttribute("is-animating","true");let r=window.getComputedStyle(a);console.log("[promptbar] animation-name:",r.animationName),console.log("[promptbar] animation-duration:",r.animationDuration);let i=setTimeout(()=>{console.warn("[promptbar] animationend never fired \u2014 fallback \u26A0\uFE0F"),a.removeAttribute("is-animating"),o()},4500);a.addEventListener("animationend",()=>{clearTimeout(i),a.removeAttribute("is-animating"),console.log("[promptbar] triggerBorderAnimation done \u2705"),o()},{once:!0})},50)})}function x(e){let t=e.trim().split(/\s+/).filter(Boolean).length,o={value:0};n.to(o,{value:t,duration:.8,ease:"power2.out",onUpdate:()=>{s.textContent=`${Math.round(o.value)}/300 words`},onComplete:()=>{s.textContent=`${t}/300 words`}})}function A(e,t){return new Promise(o=>{let i=e.slides[e.activeIndex].querySelectorAll("[prompt-slide-image]");n.timeline({onComplete:o}).to(i,{scale:1.5,opacity:0,filter:"blur(16px)",duration:1,ease:"power2.in",stagger:.05}).add(()=>{e.slideToLoop(t),requestAnimationFrame(()=>{let f=e.slides[e.activeIndex],D=f.querySelectorAll("[prompt-slide-image]");e.slides.forEach(w=>{w!==f&&n.set(w.querySelectorAll("[prompt-slide-image]"),{scale:.8,opacity:0,filter:"blur(12px)"})}),n.fromTo(D,{scale:.8,opacity:0,filter:"blur(12px)"},{scale:1,opacity:1,filter:"blur(0px)",duration:1,ease:"power3.out",stagger:.07,onComplete:o})})},"-=0.25")})}function E(e){setTimeout(()=>{e.slides[e.activeIndex]?.querySelectorAll("[prompt-skeleton]")?.forEach(r=>{let i=Math.random()*1500;r.style.transition="opacity 0.5s ease",r.style.opacity="1",setTimeout(()=>{r.style.opacity="0"},i)})},50)}function O(){c&&(c.style.opacity="1",setTimeout(()=>{c.style.opacity="0"},2500))}async function C(){for(;;){if(y)return;let e=g[b%g.length];await S(e.prompt),b++,await u(100),T(),h(l,e.slide),await u(1500),await A(l,e.slide),E(l),await u(
|
|
1
|
+
"use strict";(()=>{document.addEventListener("DOMContentLoaded",()=>{console.log("[promptbar] DOMContentLoaded fired");let n=window.gsap,p=document.querySelectorAll("[prompt-slide-image-inner]");console.log("[float] elements found:",p.length),p.forEach(e=>{n.set(e,{x:0,y:0});function t(){n.to(e,{x:n.utils.random(-20,20),y:n.utils.random(-20,20),duration:n.utils.random(2,3),ease:"sine.inOut",onComplete:t})}n.delayedCall(n.utils.random(0,4),t)});let g=[{prompt:"Build a list of country music dancers that wear cowboy hats",slide:0},{prompt:"Build a list of grandma creators who do hip hop lip sync content",slide:1},{prompt:"Build a list of meme pages that are perfect for an EDM launch",slide:2}],s=document.querySelector("[promptbar=word-count]"),d=document.querySelector("[promptbar=submit]"),a=document.querySelector("[promptbar=border]"),m=document.querySelector("[promptbar=text-slot]"),c=document.querySelector("[promptbar=submit-loader]"),L=!1,l=new window.Swiper("[promptbar-slider]",{loop:!0,speed:0,effect:"fade",fadeEffect:{crossFade:!1},pagination:{el:".swiper-pagination",clickable:!0},keyboard:{enabled:!0},mousewheel:{enabled:!0},autoplay:!1});if(console.log("[slider] imageSlider instance:",l??"NOT FOUND \u274C"),console.log("[slider] Swiper available on window:",window.Swiper?"\u2705":"NOT FOUND \u274C"),console.log("[slider] .swiper element exists:",document.querySelector(".swiper")??"NOT FOUND \u274C"),console.log("[slider] slide count:",l?.slides?.length??"unknown"),console.log("[slider] active index:",l?.activeIndex??"unknown"),console.log("[promptbar] wordCount: ",s??"NOT FOUND \u274C"),console.log("[promptbar] sendBtn: ",d??"NOT FOUND \u274C"),console.log("[promptbar] barBorder: ",a??"NOT FOUND \u274C"),console.log("[promptbar] textSlot: ",m??"NOT FOUND \u274C"),console.log("[promptbar] gsap: ",n?"\u2705":"NOT FOUND \u274C"),!s||!d||!a||!m||!n){console.error("[promptbar] One or more dependencies missing. Aborting.");return}console.log("[promptbar] All elements found \u2705 Starting loop...");let b=0,y=!1;function u(e){return new Promise(t=>setTimeout(t,e))}function N(e){let t=e.trim().split(/\s+/).filter(Boolean).length;s.textContent=`${t||0}/300 words`}function v(e){let t=document.createElement("div");return t.className="chroma-text",t.setAttribute("data-animate","false"),t.textContent=e,t}function S(e){return console.log(`[promptbar] textIn \u2192 "${e}"`),new Promise(t=>{let o=n.timeline({defaults:{ease:"power1.out"}}),r=m.querySelector(".chroma-text");r&&(o.to(r,{duration:.4,autoAlpha:0,ease:"power1.in"}),o.add(()=>r.remove()));let i;o.add(()=>{i=v(e),m.appendChild(i),i.setAttribute("data-animate","true"),x(e),console.log("[promptbar] chroma element appended")}),o.to(()=>i,{duration:.6,autoAlpha:1}),o.add(()=>{console.log("[promptbar] textIn done \u2705"),t()})})}function T(){return console.log("[promptbar] triggerSendClick"),new Promise(e=>{d.setAttribute("is-clicked","true"),O(),setTimeout(()=>{d.setAttribute("is-clicked","false"),setTimeout(e,250)},120)})}function h(e,t){return console.log("[promptbar] triggerBorderAnimation started, going to slide:",t),new Promise(o=>{a.removeAttribute("is-animating"),setTimeout(()=>{a.setAttribute("is-animating","true");let r=window.getComputedStyle(a);console.log("[promptbar] animation-name:",r.animationName),console.log("[promptbar] animation-duration:",r.animationDuration);let i=setTimeout(()=>{console.warn("[promptbar] animationend never fired \u2014 fallback \u26A0\uFE0F"),a.removeAttribute("is-animating"),o()},4500);a.addEventListener("animationend",()=>{clearTimeout(i),a.removeAttribute("is-animating"),console.log("[promptbar] triggerBorderAnimation done \u2705"),o()},{once:!0})},50)})}function x(e){let t=e.trim().split(/\s+/).filter(Boolean).length,o={value:0};n.to(o,{value:t,duration:.8,ease:"power2.out",onUpdate:()=>{s.textContent=`${Math.round(o.value)}/300 words`},onComplete:()=>{s.textContent=`${t}/300 words`}})}function A(e,t){return new Promise(o=>{let i=e.slides[e.activeIndex].querySelectorAll("[prompt-slide-image]");n.timeline({onComplete:o}).to(i,{scale:1.5,opacity:0,filter:"blur(16px)",duration:1,ease:"power2.in",stagger:.05}).add(()=>{e.slideToLoop(t),requestAnimationFrame(()=>{let f=e.slides[e.activeIndex],D=f.querySelectorAll("[prompt-slide-image]");e.slides.forEach(w=>{w!==f&&n.set(w.querySelectorAll("[prompt-slide-image]"),{scale:.8,opacity:0,filter:"blur(12px)"})}),n.fromTo(D,{scale:.8,opacity:0,filter:"blur(12px)"},{scale:1,opacity:1,filter:"blur(0px)",duration:1,ease:"power3.out",stagger:.07,onComplete:o})})},"-=0.25")})}function E(e){setTimeout(()=>{e.slides[e.activeIndex]?.querySelectorAll("[prompt-skeleton]")?.forEach(r=>{let i=Math.random()*1500;r.style.transition="opacity 0.5s ease",r.style.opacity="1",setTimeout(()=>{r.style.opacity="0"},i)})},50)}function O(){c&&(c.style.opacity="1",setTimeout(()=>{c.style.opacity="0"},2500))}async function C(){for(;;){if(y)return;let e=g[b%g.length];await S(e.prompt),b++,await u(100),T(),h(l,e.slide),await u(1500),await A(l,e.slide),E(l),await u(2e3)}}C()});})();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/promptbar/index.ts"],
|
|
4
|
-
"sourcesContent": ["document.addEventListener('DOMContentLoaded', () => {\n\n console.log('[promptbar] DOMContentLoaded fired');\n\n const gsap = (window as any).gsap;\n\n const floatEls = document.querySelectorAll('[prompt-slide-image-inner]');\n console.log('[float] elements found:', floatEls.length);\n\n floatEls.forEach((el) => {\n gsap.set(el, { x: 0, y: 0 });\n\n function drift() {\n gsap.to(el, {\n x: gsap.utils.random(-20, 20),\n y: gsap.utils.random(-20, 20),\n duration: gsap.utils.random(2, 3),\n ease: 'sine.inOut',\n onComplete: drift,\n });\n }\n\n gsap.delayedCall(gsap.utils.random(0, 4), drift);\n });\n\n const slides: { prompt: string; slide: number }[] = [\n { prompt: \"Build a list of country music dancers that wear cowboy hats\", slide: 0 },\n { prompt: \"Build a list of grandma creators who do hip hop lip sync content\", slide: 1 },\n { prompt: \"Build a list of meme pages that are perfect for an EDM launch\", slide: 2 },\n ];\n\n const wordCount = document.querySelector('[promptbar=word-count]') as HTMLSpanElement;\n const sendBtn = document.querySelector('[promptbar=submit]') as HTMLDivElement;\n const barBorder = document.querySelector('[promptbar=border]') as HTMLDivElement;\n const textSlot = document.querySelector('[promptbar=text-slot]') as HTMLDivElement;\n const submitButtonLoading = document.querySelector('[promptbar=submit-loader]') as HTMLDivElement;\n\n let sliderRevealed = false;\n\n const imageSlider = new (window as any).Swiper('[promptbar-slider]', {\n loop: true,\n speed: 0, // disable swiper's own transition\n effect: 'fade',\n fadeEffect: { crossFade: false },\n pagination: { el: '.swiper-pagination', clickable: true },\n keyboard: { enabled: true },\n mousewheel: { enabled: true },\n autoplay: false,\n });\n\n // fadeOutSkeletons(imageSlider);\n\n console.log('[slider] imageSlider instance:', imageSlider ?? 'NOT FOUND \u274C');\n console.log('[slider] Swiper available on window:', (window as any).Swiper ? '\u2705' : 'NOT FOUND \u274C');\n console.log('[slider] .swiper element exists:', document.querySelector('.swiper') ?? 'NOT FOUND \u274C');\n console.log('[slider] slide count:', imageSlider?.slides?.length ?? 'unknown');\n console.log('[slider] active index:', imageSlider?.activeIndex ?? 'unknown');\n\n console.log('[promptbar] wordCount: ', wordCount ?? 'NOT FOUND \u274C');\n console.log('[promptbar] sendBtn: ', sendBtn ?? 'NOT FOUND \u274C');\n console.log('[promptbar] barBorder: ', barBorder ?? 'NOT FOUND \u274C');\n console.log('[promptbar] textSlot: ', textSlot ?? 'NOT FOUND \u274C');\n console.log('[promptbar] gsap: ', gsap ? '\u2705' : 'NOT FOUND \u274C');\n\n if (!wordCount || !sendBtn || !barBorder || !textSlot || !gsap) {\n console.error('[promptbar] One or more dependencies missing. Aborting.');\n return;\n }\n\n console.log('[promptbar] All elements found \u2705 Starting loop...');\n\n let currentIndex: number = 0;\n let cancelled: boolean = false;\n\n // \u2500\u2500 Utilities \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n function sleep(ms: number): Promise<void> {\n return new Promise(resolve => setTimeout(resolve, ms));\n }\n\n function updateWordCount(text: string): void {\n const words = text.trim().split(/\\s+/).filter(Boolean).length;\n wordCount.textContent = `${words || 0}/300 words`;\n }\n\n // \u2500\u2500 chroma element factory \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n function makeChromaElement(text: string): HTMLDivElement {\n const div = document.createElement('div');\n div.className = 'chroma-text';\n div.setAttribute('data-animate', 'false');\n div.textContent = text;\n return div;\n }\n\n // \u2500\u2500 textIn \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n function textIn(text: string): Promise<void> {\n console.log(`[promptbar] textIn \u2192 \"${text}\"`);\n return new Promise(resolve => {\n const tl = gsap.timeline({ defaults: { ease: 'power1.out' } });\n\n const existing = textSlot.querySelector('.chroma-text') as HTMLDivElement | null;\n if (existing) {\n tl.to(existing, {\n duration: 0.4,\n autoAlpha: 0,\n ease: 'power1.in',\n });\n tl.add(() => existing.remove());\n }\n\n let newEl: HTMLDivElement;\n\n tl.add(() => {\n newEl = makeChromaElement(text);\n textSlot.appendChild(newEl);\n newEl.setAttribute('data-animate', 'true');\n animateWordCount(text);\n console.log('[promptbar] chroma element appended');\n });\n\n tl.to(() => newEl, {\n duration: 0.6,\n autoAlpha: 1,\n });\n\n tl.add(() => {\n console.log('[promptbar] textIn done \u2705');\n resolve();\n });\n });\n }\n\n // \u2500\u2500 Animation steps \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n function triggerSendClick(): Promise<void> {\n console.log('[promptbar] triggerSendClick');\n return new Promise(resolve => {\n sendBtn.setAttribute('is-clicked', 'true');\n triggerSubmitLoader();\n setTimeout(() => {\n sendBtn.setAttribute('is-clicked', 'false');\n setTimeout(resolve, 250);\n }, 120);\n });\n }\n\n function triggerBorderAnimation(slider: any, slideIndex: number): Promise<void> {\n console.log('[promptbar] triggerBorderAnimation started, going to slide:', slideIndex);\n return new Promise(resolve => {\n barBorder.removeAttribute('is-animating');\n\n setTimeout(() => {\n barBorder.setAttribute('is-animating', 'true');\n\n // go to specific slide instead of slideNext\n // slider.slideToLoop(slideIndex - 1);\n\n // fadeOutSkeletons(slider);\n\n const computedStyle = window.getComputedStyle(barBorder);\n console.log('[promptbar] animation-name:', computedStyle.animationName);\n console.log('[promptbar] animation-duration:', computedStyle.animationDuration);\n\n const fallback = setTimeout(() => {\n console.warn('[promptbar] animationend never fired \u2014 fallback \u26A0\uFE0F');\n barBorder.removeAttribute('is-animating');\n resolve();\n }, 4500);\n\n barBorder.addEventListener('animationend', () => {\n clearTimeout(fallback);\n barBorder.removeAttribute('is-animating');\n console.log('[promptbar] triggerBorderAnimation done \u2705');\n resolve();\n }, { once: true });\n\n }, 50);\n });\n }\n\n function animateWordCount(text: string): void {\n const target = text.trim().split(/\\s+/).filter(Boolean).length;\n const counter = { value: 0 };\n\n gsap.to(counter, {\n value: target,\n duration: 0.8,\n ease: 'power2.out',\n onUpdate: () => {\n wordCount.textContent = `${Math.round(counter.value)}/${300} words`;\n },\n onComplete: () => {\n wordCount.textContent = `${target}/300 words`;\n }\n });\n }\n\n\n function transitionSlides(slider: any, nextIndex: number): Promise<void> {\n return new Promise(resolve => {\n const currentSlide = slider.slides[slider.activeIndex];\n const currentImages = currentSlide.querySelectorAll('[prompt-slide-image]');\n\n const tl = gsap.timeline({ onComplete: resolve });\n\n // slide out current\n tl.to(currentImages, {\n scale: 1.5,\n opacity: 0,\n filter: 'blur(16px)',\n duration: 1,\n ease: 'power2.in',\n stagger: 0.05,\n })\n\n // swap slide + reset others + slide in \u2014 all inside .add() so it runs at the right time\n .add(() => {\n slider.slideToLoop(nextIndex);\n\n // wait a tick for Swiper to settle before grabbing activeIndex\n requestAnimationFrame(() => {\n const newSlide = slider.slides[slider.activeIndex];\n const newImages = newSlide.querySelectorAll('[prompt-slide-image]');\n\n slider.slides.forEach((slide: HTMLElement) => {\n if (slide !== newSlide) {\n gsap.set(slide.querySelectorAll('[prompt-slide-image]'), {\n scale: 0.8, opacity: 0, filter: 'blur(12px)'\n });\n }\n });\n\n gsap.fromTo(newImages,\n { scale: 0.8, opacity: 0, filter: 'blur(12px)' },\n {\n scale: 1,\n opacity: 1,\n filter: 'blur(0px)',\n duration: 1,\n ease: 'power3.out',\n stagger: 0.07,\n onComplete: resolve\n }\n );\n });\n\n }, '-=0.25');\n });\n }\n\n // \u2500\u2500 Skeleton fade out \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n function fadeOutSkeletons(slider: any): void {\n setTimeout(() => {\n const activeSlide = slider.slides[slider.activeIndex];\n const skeletons = activeSlide?.querySelectorAll('[prompt-skeleton]');\n skeletons?.forEach((skeleton: HTMLElement) => {\n const randomDelay = Math.random() * 1500; // 0\u20131500ms random per skeleton\n skeleton.style.transition = 'opacity 0.5s ease';\n skeleton.style.opacity = '1';\n setTimeout(() => {\n skeleton.style.opacity = '0';\n }, randomDelay);\n });\n }, 50);\n }\n\n // \u2500\u2500 Submit loader \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n function triggerSubmitLoader(): void {\n if (!submitButtonLoading) return;\n submitButtonLoading.style.opacity = '1';\n setTimeout(() => {\n submitButtonLoading.style.opacity = '0';\n }, 2500);\n }\n\n // \u2500\u2500 Main loop \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n async function runLoop(): Promise<void> {\n while (true) {\n if (cancelled) return;\n\n const item = slides[currentIndex % slides.length];\n\n await textIn(item.prompt);\n\n currentIndex++;\n\n await sleep(100);\n triggerSendClick();\n triggerBorderAnimation(imageSlider, item.slide);\n\n await sleep(1500);\n await transitionSlides(imageSlider, item.slide);\n fadeOutSkeletons(imageSlider);\n\n await sleep(500);\n }\n }\n\n runLoop();\n\n});"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["document.addEventListener('DOMContentLoaded', () => {\n\n console.log('[promptbar] DOMContentLoaded fired');\n\n const gsap = (window as any).gsap;\n\n const floatEls = document.querySelectorAll('[prompt-slide-image-inner]');\n console.log('[float] elements found:', floatEls.length);\n\n floatEls.forEach((el) => {\n gsap.set(el, { x: 0, y: 0 });\n\n function drift() {\n gsap.to(el, {\n x: gsap.utils.random(-20, 20),\n y: gsap.utils.random(-20, 20),\n duration: gsap.utils.random(2, 3),\n ease: 'sine.inOut',\n onComplete: drift,\n });\n }\n\n gsap.delayedCall(gsap.utils.random(0, 4), drift);\n });\n\n const slides: { prompt: string; slide: number }[] = [\n { prompt: \"Build a list of country music dancers that wear cowboy hats\", slide: 0 },\n { prompt: \"Build a list of grandma creators who do hip hop lip sync content\", slide: 1 },\n { prompt: \"Build a list of meme pages that are perfect for an EDM launch\", slide: 2 },\n ];\n\n const wordCount = document.querySelector('[promptbar=word-count]') as HTMLSpanElement;\n const sendBtn = document.querySelector('[promptbar=submit]') as HTMLDivElement;\n const barBorder = document.querySelector('[promptbar=border]') as HTMLDivElement;\n const textSlot = document.querySelector('[promptbar=text-slot]') as HTMLDivElement;\n const submitButtonLoading = document.querySelector('[promptbar=submit-loader]') as HTMLDivElement;\n\n let sliderRevealed = false;\n\n const imageSlider = new (window as any).Swiper('[promptbar-slider]', {\n loop: true,\n speed: 0, // disable swiper's own transition\n effect: 'fade',\n fadeEffect: { crossFade: false },\n pagination: { el: '.swiper-pagination', clickable: true },\n keyboard: { enabled: true },\n mousewheel: { enabled: true },\n autoplay: false,\n });\n\n // fadeOutSkeletons(imageSlider);\n\n console.log('[slider] imageSlider instance:', imageSlider ?? 'NOT FOUND \u274C');\n console.log('[slider] Swiper available on window:', (window as any).Swiper ? '\u2705' : 'NOT FOUND \u274C');\n console.log('[slider] .swiper element exists:', document.querySelector('.swiper') ?? 'NOT FOUND \u274C');\n console.log('[slider] slide count:', imageSlider?.slides?.length ?? 'unknown');\n console.log('[slider] active index:', imageSlider?.activeIndex ?? 'unknown');\n\n console.log('[promptbar] wordCount: ', wordCount ?? 'NOT FOUND \u274C');\n console.log('[promptbar] sendBtn: ', sendBtn ?? 'NOT FOUND \u274C');\n console.log('[promptbar] barBorder: ', barBorder ?? 'NOT FOUND \u274C');\n console.log('[promptbar] textSlot: ', textSlot ?? 'NOT FOUND \u274C');\n console.log('[promptbar] gsap: ', gsap ? '\u2705' : 'NOT FOUND \u274C');\n\n if (!wordCount || !sendBtn || !barBorder || !textSlot || !gsap) {\n console.error('[promptbar] One or more dependencies missing. Aborting.');\n return;\n }\n\n console.log('[promptbar] All elements found \u2705 Starting loop...');\n\n let currentIndex: number = 0;\n let cancelled: boolean = false;\n\n // \u2500\u2500 Utilities \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n function sleep(ms: number): Promise<void> {\n return new Promise(resolve => setTimeout(resolve, ms));\n }\n\n function updateWordCount(text: string): void {\n const words = text.trim().split(/\\s+/).filter(Boolean).length;\n wordCount.textContent = `${words || 0}/300 words`;\n }\n\n // \u2500\u2500 chroma element factory \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n function makeChromaElement(text: string): HTMLDivElement {\n const div = document.createElement('div');\n div.className = 'chroma-text';\n div.setAttribute('data-animate', 'false');\n div.textContent = text;\n return div;\n }\n\n // \u2500\u2500 textIn \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n function textIn(text: string): Promise<void> {\n console.log(`[promptbar] textIn \u2192 \"${text}\"`);\n return new Promise(resolve => {\n const tl = gsap.timeline({ defaults: { ease: 'power1.out' } });\n\n const existing = textSlot.querySelector('.chroma-text') as HTMLDivElement | null;\n if (existing) {\n tl.to(existing, {\n duration: 0.4,\n autoAlpha: 0,\n ease: 'power1.in',\n });\n tl.add(() => existing.remove());\n }\n\n let newEl: HTMLDivElement;\n\n tl.add(() => {\n newEl = makeChromaElement(text);\n textSlot.appendChild(newEl);\n newEl.setAttribute('data-animate', 'true');\n animateWordCount(text);\n console.log('[promptbar] chroma element appended');\n });\n\n tl.to(() => newEl, {\n duration: 0.6,\n autoAlpha: 1,\n });\n\n tl.add(() => {\n console.log('[promptbar] textIn done \u2705');\n resolve();\n });\n });\n }\n\n // \u2500\u2500 Animation steps \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n function triggerSendClick(): Promise<void> {\n console.log('[promptbar] triggerSendClick');\n return new Promise(resolve => {\n sendBtn.setAttribute('is-clicked', 'true');\n triggerSubmitLoader();\n setTimeout(() => {\n sendBtn.setAttribute('is-clicked', 'false');\n setTimeout(resolve, 250);\n }, 120);\n });\n }\n\n function triggerBorderAnimation(slider: any, slideIndex: number): Promise<void> {\n console.log('[promptbar] triggerBorderAnimation started, going to slide:', slideIndex);\n return new Promise(resolve => {\n barBorder.removeAttribute('is-animating');\n\n setTimeout(() => {\n barBorder.setAttribute('is-animating', 'true');\n\n // go to specific slide instead of slideNext\n // slider.slideToLoop(slideIndex - 1);\n\n // fadeOutSkeletons(slider);\n\n const computedStyle = window.getComputedStyle(barBorder);\n console.log('[promptbar] animation-name:', computedStyle.animationName);\n console.log('[promptbar] animation-duration:', computedStyle.animationDuration);\n\n const fallback = setTimeout(() => {\n console.warn('[promptbar] animationend never fired \u2014 fallback \u26A0\uFE0F');\n barBorder.removeAttribute('is-animating');\n resolve();\n }, 4500);\n\n barBorder.addEventListener('animationend', () => {\n clearTimeout(fallback);\n barBorder.removeAttribute('is-animating');\n console.log('[promptbar] triggerBorderAnimation done \u2705');\n resolve();\n }, { once: true });\n\n }, 50);\n });\n }\n\n function animateWordCount(text: string): void {\n const target = text.trim().split(/\\s+/).filter(Boolean).length;\n const counter = { value: 0 };\n\n gsap.to(counter, {\n value: target,\n duration: 0.8,\n ease: 'power2.out',\n onUpdate: () => {\n wordCount.textContent = `${Math.round(counter.value)}/${300} words`;\n },\n onComplete: () => {\n wordCount.textContent = `${target}/300 words`;\n }\n });\n }\n\n\n function transitionSlides(slider: any, nextIndex: number): Promise<void> {\n return new Promise(resolve => {\n const currentSlide = slider.slides[slider.activeIndex];\n const currentImages = currentSlide.querySelectorAll('[prompt-slide-image]');\n\n const tl = gsap.timeline({ onComplete: resolve });\n\n // slide out current\n tl.to(currentImages, {\n scale: 1.5,\n opacity: 0,\n filter: 'blur(16px)',\n duration: 1,\n ease: 'power2.in',\n stagger: 0.05,\n })\n\n // swap slide + reset others + slide in \u2014 all inside .add() so it runs at the right time\n .add(() => {\n slider.slideToLoop(nextIndex);\n\n // wait a tick for Swiper to settle before grabbing activeIndex\n requestAnimationFrame(() => {\n const newSlide = slider.slides[slider.activeIndex];\n const newImages = newSlide.querySelectorAll('[prompt-slide-image]');\n\n slider.slides.forEach((slide: HTMLElement) => {\n if (slide !== newSlide) {\n gsap.set(slide.querySelectorAll('[prompt-slide-image]'), {\n scale: 0.8, opacity: 0, filter: 'blur(12px)'\n });\n }\n });\n\n gsap.fromTo(newImages,\n { scale: 0.8, opacity: 0, filter: 'blur(12px)' },\n {\n scale: 1,\n opacity: 1,\n filter: 'blur(0px)',\n duration: 1,\n ease: 'power3.out',\n stagger: 0.07,\n onComplete: resolve\n }\n );\n });\n\n }, '-=0.25');\n });\n }\n\n // \u2500\u2500 Skeleton fade out \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n function fadeOutSkeletons(slider: any): void {\n setTimeout(() => {\n const activeSlide = slider.slides[slider.activeIndex];\n const skeletons = activeSlide?.querySelectorAll('[prompt-skeleton]');\n skeletons?.forEach((skeleton: HTMLElement) => {\n const randomDelay = Math.random() * 1500; // 0\u20131500ms random per skeleton\n skeleton.style.transition = 'opacity 0.5s ease';\n skeleton.style.opacity = '1';\n setTimeout(() => {\n skeleton.style.opacity = '0';\n }, randomDelay);\n });\n }, 50);\n }\n\n // \u2500\u2500 Submit loader \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n function triggerSubmitLoader(): void {\n if (!submitButtonLoading) return;\n submitButtonLoading.style.opacity = '1';\n setTimeout(() => {\n submitButtonLoading.style.opacity = '0';\n }, 2500);\n }\n\n // \u2500\u2500 Main loop \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n async function runLoop(): Promise<void> {\n while (true) {\n if (cancelled) return;\n\n const item = slides[currentIndex % slides.length];\n\n await textIn(item.prompt);\n\n currentIndex++;\n\n await sleep(100);\n triggerSendClick();\n triggerBorderAnimation(imageSlider, item.slide);\n\n await sleep(1500);\n await transitionSlides(imageSlider, item.slide);\n fadeOutSkeletons(imageSlider);\n\n await sleep(2000);\n }\n }\n\n runLoop();\n\n});"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/promptbar/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[promptbar=border]{position:absolute;inset:0;border-radius:18px;padding:2px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;background:conic-gradient(from var(--angle, 0deg),transparent 0%,transparent 40%,#e8603c 50%,#f0a070 55%,transparent 65%,transparent 100%);opacity:0;transition:opacity .3s ease}[promptbar=border][is-animating=true]{animation:spin 3.5s linear forwards;opacity:1}@keyframes spin{0%{--angle: 0deg;opacity:1}85%{--angle: 360deg;opacity:1}to{--angle: 360deg;opacity:0}}[promptbar=submit][is-clicked=true]{transform:scale(.8);transition:transform .12s cubic-bezier(.34,1.56,.64,1),background-color .15s ease}[promptbar=submit][is-clicked=false]{transform:scale(1);transition:transform .4s cubic-bezier(.34,1.56,.64,1),background-color .5s ease}.chroma-text{background-image:linear-gradient(90deg,#ffffff 0,#ffffff 33.33%,#e8603c 40%,#f0845a 45%,#ffc4a8 50%,#f07050 55%,#c94020 60%,transparent 66.67%,transparent);background-size:300% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-fill-color:transparent;color:transparent;font-size:var(--_text-size---body--l);line-height:var(--_line-height---line-height-body--l);font-weight:var(--_font-weight---font-weight-body--l)}.chroma-text[data-animate=true]{animation:chroma-sweep 1.5s ease-in-out forwards;filter:blur(1px)}@keyframes chroma-sweep{0%{background-position:100% 0;filter:blur(1px)}to{background-position:0 0;filter:blur(0)}}.promptbar-text-item{display:none;opacity:0!important}[prompt-slide-image]{position:absolute;border-radius:18px;opacity:0;transform:scale(0);filter:blur(16px);transition:none}[prompt-slide-image="1"]{--i: 1}[prompt-slide-image="2"]{--i: 2}[prompt-slide-image="3"]{--i: 3}[prompt-slide-image="4"]{--i: 4}[prompt-slide-image="5"]{--i: 5}[prompt-slide-image="6"]{--i: 6}[prompt-slide-image="7"]{--i: 7}[prompt-slide-image="8"]{--i: 8}[prompt-slide-image="1"]{top:
|
|
1
|
+
[promptbar=border]{position:absolute;inset:0;border-radius:18px;padding:2px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;background:conic-gradient(from var(--angle, 0deg),transparent 0%,transparent 40%,#e8603c 50%,#f0a070 55%,transparent 65%,transparent 100%);opacity:0;transition:opacity .3s ease}[promptbar=border][is-animating=true]{animation:spin 3.5s linear forwards;opacity:1}@keyframes spin{0%{--angle: 0deg;opacity:1}85%{--angle: 360deg;opacity:1}to{--angle: 360deg;opacity:0}}[promptbar=submit][is-clicked=true]{transform:scale(.8);transition:transform .12s cubic-bezier(.34,1.56,.64,1),background-color .15s ease}[promptbar=submit][is-clicked=false]{transform:scale(1);transition:transform .4s cubic-bezier(.34,1.56,.64,1),background-color .5s ease}.chroma-text{background-image:linear-gradient(90deg,#ffffff 0,#ffffff 33.33%,#e8603c 40%,#f0845a 45%,#ffc4a8 50%,#f07050 55%,#c94020 60%,transparent 66.67%,transparent);background-size:300% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-fill-color:transparent;color:transparent;font-size:var(--_text-size---body--l);line-height:var(--_line-height---line-height-body--l);font-weight:var(--_font-weight---font-weight-body--l)}.chroma-text[data-animate=true]{animation:chroma-sweep 1.5s ease-in-out forwards;filter:blur(1px)}@keyframes chroma-sweep{0%{background-position:100% 0;filter:blur(1px)}to{background-position:0 0;filter:blur(0)}}.promptbar-text-item{display:none;opacity:0!important}[prompt-slide-image]{position:absolute;border-radius:18px;opacity:0;transform:scale(0);filter:blur(16px);transition:none}[prompt-slide-image="1"]{--i: 1}[prompt-slide-image="2"]{--i: 2}[prompt-slide-image="3"]{--i: 3}[prompt-slide-image="4"]{--i: 4}[prompt-slide-image="5"]{--i: 5}[prompt-slide-image="6"]{--i: 6}[prompt-slide-image="7"]{--i: 7}[prompt-slide-image="8"]{--i: 8}[prompt-slide-image="1"]{top:52vh;left:1vw;width:10vw;aspect-ratio:3/4}[prompt-slide-image="2"]{bottom:-5vh;left:16vw;width:18vw;aspect-ratio:3/4}[prompt-slide-image="3"]{top:28vh;right:-4vw;width:16vw;aspect-ratio:4/5}[prompt-slide-image="4"]{bottom:5vh;right:-4vw;width:calc(6vw + 100px);aspect-ratio:12/16;display:none}[prompt-slide-image="5"]{top:-18vh;left:4vw;width:18vw;aspect-ratio:2/3}[prompt-slide-image="6"]{top:6vh;right:14vw;width:12vw;aspect-ratio:3/4}[prompt-slide-image="7"]{bottom:-24vh;left:42vw;width:18vw;aspect-ratio:4/5}[prompt-slide-image="8"]{bottom:-20vh;right:10vw;width:20vw;aspect-ratio:2/3}@media (max-width: 800px){[prompt-slide-image="5"],[prompt-slide-image="6"],[prompt-slide-image="7"],[prompt-slide-image="8"]{display:none}[prompt-slide-image="1"]{top:6vh;left:6vw;width:calc(10vw + 100px);aspect-ratio:3/4}[prompt-slide-image="2"]{bottom:12vh;left:8vw;width:calc(6vw + 100px);aspect-ratio:2/3}[prompt-slide-image="3"]{top:4vh;right:8vw;width:calc(10vw + 100px);aspect-ratio:4/5}[prompt-slide-image="4"]{bottom:10vh;right:6vw;width:calc(6vw + 100px);aspect-ratio:12/16}[prompt-slide-image="4"]{display:block}}@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait){[prompt-slide-image="1"]{top:-1vh;left:2vw;width:20vw}[prompt-slide-image="6"]{top:3vh;right:2vw;width:20vw}[prompt-slide-image="2"]{bottom:10vh;left:1vw;width:18vw}[prompt-slide-image="3"]{top:40vh;right:3vw;width:16vw}[prompt-slide-image="8"]{bottom:-2vh;right:40vw;width:24vw;aspect-ratio:1/1.2}.prompt-hero_wrapper{max-height:600px}}@media (min-width: 1025px) and (max-width: 1366px) and (orientation: portrait){.prompt-hero_wrapper{max-height:800px}[prompt-slide-image="5"]{top:-100vh}}.swiper-pagination-bullet{background:#ffffff59;opacity:1;transition:background .3s,transform .3s}.swiper-pagination-bullet-active{background:#fff;transform:scale(1.4)}[prompt-skeleton]{position:absolute;inset:0;border-radius:18px;background:#1a1a1a;animation:skeleton-pulse 1.6s ease-in-out infinite;opacity:1;transition:opacity .4s ease;z-index:2}@keyframes skeleton-pulse{0%{background:#1a1a1a}50%{background:#2e2e2e}to{background:#1a1a1a}}@property --angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.submit_button_loading{position:absolute;inset:0;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center}.submit_button_loading:before{content:"";position:absolute;inset:-6px;background:conic-gradient(from var(--angle),#e8603c,#f0a070,#ffd27a,#ff8fa3,#e8603c);animation:spin 2s linear infinite;z-index:-2;border-radius:12px;filter:blur(10px);opacity:.85}.submit_button_loading:after{content:"";position:absolute;inset:0;background:#fff;border-radius:8px;z-index:-1}@keyframes spin{to{--angle: 360deg}}[prompt-skeleton]{display:none}[prompt-slide-image-inner]{border-radius:10px;overflow:hidden}@media screen and (max-width: 479px){[custom-style-identifier=prompt-title]{font-size:40px;max-width:264px;margin:auto;text-align:center}}.prompt-wrapper{pointer-events:none}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/promptbar/style.css"],
|
|
4
|
-
"sourcesContent": [" [promptbar=\"border\"] {\n position: absolute;\n inset: 0;\n border-radius: 18px;\n padding: 2px;\n -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n -webkit-mask-composite: xor;\n mask-composite: exclude;\n pointer-events: none;\n background: conic-gradient(from var(--angle, 0deg),\n transparent 0%,\n transparent 40%,\n #e8603c 50%,\n #f0a070 55%,\n transparent 65%,\n transparent 100%);\n opacity: 0;\n transition: opacity 0.3s ease;\n }\n\n @property --angle {\n syntax: '<angle>';\n initial-value: 0deg;\n inherits: false;\n }\n\n [promptbar=\"border\"][is-animating=\"true\"] {\n animation: spin 3.5s linear forwards;\n opacity: 1;\n }\n\n @keyframes spin {\n from {\n --angle: 0deg;\n opacity: 1;\n }\n\n 85% {\n --angle: 360deg;\n opacity: 1;\n }\n\n 100% {\n --angle: 360deg;\n opacity: 0;\n }\n }\n\n [promptbar=\"submit\"][is-clicked=\"true\"] {\n transform: scale(0.80);\n transition: transform 0.12s cubic-bezier(0.34, 1.56, 0.64, 1),\n background-color 0.15s ease;\n }\n\n [promptbar=\"submit\"][is-clicked=\"false\"] {\n transform: scale(1);\n transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1),\n background-color 0.5s ease;\n }\n\n\n /* .chroma-text {\n background-image: linear-gradient(90deg,\n #000000 0,\n #000000 33.33%,\n #4E52F2 40%,\n #DD9DFF 45%,\n #E3A4A8 50%,\n #50C0FE 55%,\n #1E31FC 60%,\n transparent 66.67%,\n transparent);\n background-size: 300% 100%;\n background-position: 100% 0;\n -webkit-background-clip: text;\n background-clip: text;\n -webkit-text-fill-color: transparent;\n text-fill-color: transparent;\n color: transparent;\n\n\n font-size: var(--_text-size---body--l);\n line-height: var(--_line-height---line-height-body--l);\n font-weight: var(--_font-weight---font-weight-body--l);\n} */\n .chroma-text {\n background-image: linear-gradient(90deg,\n #ffffff 0,\n #ffffff 33.33%,\n #e8603c 40%,\n #f0845a 45%,\n #ffc4a8 50%,\n #f07050 55%,\n #c94020 60%,\n transparent 66.67%,\n transparent);\n background-size: 300% 100%;\n background-position: 100% 0;\n -webkit-background-clip: text;\n background-clip: text;\n -webkit-text-fill-color: transparent;\n text-fill-color: transparent;\n color: transparent;\n\n font-size: var(--_text-size---body--l);\n line-height: var(--_line-height---line-height-body--l);\n font-weight: var(--_font-weight---font-weight-body--l);\n }\n\n /* Only animate when explicitly true */\n .chroma-text[data-animate=\"true\"] {\n animation: chroma-sweep 1.5s ease-in-out forwards;\n filter: blur(1px);\n }\n\n @keyframes chroma-sweep {\n 0% {\n background-position: 100% 0;\n filter: blur(1px);\n }\n\n to {\n background-position: 0 0;\n filter: blur(0);\n }\n }\n\n .promptbar-text-item {\n display: none;\n opacity: 0 !important;\n }\n\n\n\n [prompt-slide-image] {\n position: absolute;\n border-radius: 18px;\n opacity: 0;\n transform: scale(0);\n filter: blur(16px);\n transition: none;\n /* let GSAP handle it */\n }\n\n\n\n /* stagger delays\n .block:nth-child(1) { transition-delay: 0.00s; }\n .block:nth-child(2) { transition-delay: 0.07s; }\n .block:nth-child(3) { transition-delay: 0.14s; }\n .block:nth-child(4) { transition-delay: 0.21s; }\n .block:nth-child(5) { transition-delay: 0.28s; }\n .block:nth-child(6) { transition-delay: 0.35s; }\n .block:nth-child(7) { transition-delay: 0.42s; }\n .block:nth-child(8) { transition-delay: 0.49s; } */\n\n [prompt-slide-image=\"1\"] {\n --i: 1;\n }\n\n [prompt-slide-image=\"2\"] {\n --i: 2;\n }\n\n [prompt-slide-image=\"3\"] {\n --i: 3;\n }\n\n [prompt-slide-image=\"4\"] {\n --i: 4;\n }\n\n [prompt-slide-image=\"5\"] {\n --i: 5;\n }\n\n [prompt-slide-image=\"6\"] {\n --i: 6;\n }\n\n [prompt-slide-image=\"7\"] {\n --i: 7;\n }\n\n [prompt-slide-image=\"8\"] {\n --i: 8;\n }\n\n /*\n 8 ZONES (never touch center keep-out ~26%\u201374% x, 28%\u201372% y):\n 1 \u2192 far-left-top\n 2 \u2192 far-left-bottom\n 3 \u2192 far-right-top\n 4 \u2192 far-right-bottom\n 5 \u2192 top-inner-left (above center, left half)\n 6 \u2192 top-inner-right (above center, right half)\n 7 \u2192 bottom-inner-left\n 8 \u2192 bottom-inner-right\n\n Each [prompt-slide-image=\"N\"] maps to zone N.\n Each slide has different sizes + slight position variation per zone.\n */\n\n /* ===================== ZONE POSITIONS (shared across slides, overridden per slide for size variety) ===================== */\n /* Zone 1 \u2013 far left top */\n [prompt-slide-image=\"1\"] {\n top: 6vh;\n left: 2vw;\n width: calc(10vw + 100px);\n aspect-ratio: 3/4;\n }\n\n /* Zone 2 \u2013 far left bottom */\n [prompt-slide-image=\"2\"] {\n bottom: 14vh;\n left: 5vw;\n width: calc(4vw + 100px);\n aspect-ratio: 3/4;\n }\n\n /* Zone 3 \u2013 far right top */\n [prompt-slide-image=\"3\"] {\n top: 4vh;\n right: 3vw;\n width: calc(8vw + 100px);\n aspect-ratio: 4/5;\n }\n\n /* Zone 4 \u2013 far right bottom */\n [prompt-slide-image=\"4\"] {\n bottom: 16vh;\n right: 2vw;\n width: calc(6vw + 100px);\n aspect-ratio: 12/16;\n }\n\n /* Zone 5 \u2013 top inner left */\n [prompt-slide-image=\"5\"] {\n top: 4vh;\n left: 32vw;\n width: calc(1vw + 100px);\n aspect-ratio: 2/3;\n }\n\n /* Zone 6 \u2013 top inner right */\n [prompt-slide-image=\"6\"] {\n top: 6vh;\n right: 30vw;\n width: calc(8vw + 100px);\n aspect-ratio: 3/2.5;\n }\n\n /* Zone 7 \u2013 bottom inner left */\n [prompt-slide-image=\"7\"] {\n bottom: 11vh;\n left: 28vw;\n width: calc(3vw + 100px);\n aspect-ratio: 4/5;\n }\n\n /* Zone 8 \u2013 bottom inner right */\n [prompt-slide-image=\"8\"] {\n bottom: 10vh;\n right: 24vw;\n width: calc(7vw + 100px);\n aspect-ratio: 5/4;\n }\n\n @media (max-width: 800px) {\n\n [prompt-slide-image=\"5\"],\n [prompt-slide-image=\"6\"],\n [prompt-slide-image=\"7\"],\n [prompt-slide-image=\"8\"] {\n display: none;\n }\n\n /* Zone 1 \u2013 far left top */\n [prompt-slide-image=\"1\"] {\n top: 6vh;\n left: 6vw;\n width: calc(10vw + 100px);\n aspect-ratio: 3/4;\n }\n\n /* Zone 2 \u2013 far left bottom */\n [prompt-slide-image=\"2\"] {\n bottom: 12vh;\n left: 8vw;\n width: calc(6vw + 100px);\n aspect-ratio: 4/4;\n }\n\n /* Zone 3 \u2013 far right top */\n [prompt-slide-image=\"3\"] {\n top: 4vh;\n right: 8vw;\n width: calc(10vw + 100px);\n aspect-ratio: 4/5;\n }\n\n /* Zone 4 \u2013 far right bottom */\n [prompt-slide-image=\"4\"] {\n bottom: 10vh;\n right: 6vw;\n width: calc(6vw + 100px);\n aspect-ratio: 12/16;\n }\n }\n\n\n /* ===================== SLIDE COLORS ===================== */\n\n /* Slide 1 \u2013 Terracotta */\n /* [prompt-slide=\"1\"] [prompt-slide-image=\"1\"] { background: #C1440E; }\n [prompt-slide=\"1\"] [prompt-slide-image=\"2\"] { background: #8B2500; }\n [prompt-slide=\"1\"] [prompt-slide-image=\"3\"] { background: #E8A87C; }\n [prompt-slide=\"1\"] [prompt-slide-image=\"4\"] { background: #F2C9A0; }\n [prompt-slide=\"1\"] [prompt-slide-image=\"5\"] { background: #D4622A; }\n [prompt-slide=\"1\"] [prompt-slide-image=\"6\"] { background: #FF8C5A; }\n [prompt-slide=\"1\"] [prompt-slide-image=\"7\"] { background: #FFD4B8; }\n [prompt-slide=\"1\"] [prompt-slide-image=\"8\"] { background: #7A1E00; } */\n\n /* Slide 2 \u2013 Ocean */\n /* [prompt-slide=\"2\"] [prompt-slide-image=\"1\"] { background: #003F5C; }\n [prompt-slide=\"2\"] [prompt-slide-image=\"2\"] { background: #2F9BB5; }\n [prompt-slide=\"2\"] [prompt-slide-image=\"3\"] { background: #7EC8E3; }\n [prompt-slide=\"2\"] [prompt-slide-image=\"4\"] { background: #00263A; }\n [prompt-slide=\"2\"] [prompt-slide-image=\"5\"] { background: #1A7A99; }\n [prompt-slide=\"2\"] [prompt-slide-image=\"6\"] { background: #A8DFF0; }\n [prompt-slide=\"2\"] [prompt-slide-image=\"7\"] { background: #E0F5FC; }\n [prompt-slide=\"2\"] [prompt-slide-image=\"8\"] { background: #005073; } */\n\n /* Slide 3 \u2013 Violet */\n /* [prompt-slide=\"3\"] [prompt-slide-image=\"1\"] { background: #2D0057; }\n [prompt-slide=\"3\"] [prompt-slide-image=\"2\"] { background: #7B00D4; }\n [prompt-slide=\"3\"] [prompt-slide-image=\"3\"] { background: #BF5FFF; }\n [prompt-slide=\"3\"] [prompt-slide-image=\"4\"] { background: #1A0033; }\n [prompt-slide=\"3\"] [prompt-slide-image=\"5\"] { background: #9B30FF; }\n [prompt-slide=\"3\"] [prompt-slide-image=\"6\"] { background: #D48FFF; }\n [prompt-slide=\"3\"] [prompt-slide-image=\"7\"] { background: #F3D4FF; }\n [prompt-slide=\"3\"] [prompt-slide-image=\"8\"] { background: #4B0099; } */\n\n /* Slide 4 \u2013 Lime */\n /* [prompt-slide=\"4\"] [prompt-slide-image=\"1\"] { background: #1A3300; }\n [prompt-slide=\"4\"] [prompt-slide-image=\"2\"] { background: #5C9E00; }\n [prompt-slide=\"4\"] [prompt-slide-image=\"3\"] { background: #AADD00; }\n [prompt-slide=\"4\"] [prompt-slide-image=\"4\"] { background: #0D1A00; }\n [prompt-slide=\"4\"] [prompt-slide-image=\"5\"] { background: #7DC200; }\n [prompt-slide=\"4\"] [prompt-slide-image=\"6\"] { background: #D4FF4D; }\n [prompt-slide=\"4\"] [prompt-slide-image=\"7\"] { background: #EEFFAA; }\n [prompt-slide=\"4\"] [prompt-slide-image=\"8\"] { background: #3A6600; }\n\n /* Slide 5 \u2013 Rose gold */\n /* [prompt-slide=\"5\"] [prompt-slide-image=\"1\"] { background: #5C1A2E; }\n [prompt-slide=\"5\"] [prompt-slide-image=\"2\"] { background: #B5485A; }\n [prompt-slide=\"5\"] [prompt-slide-image=\"3\"] { background: #E8899A; }\n [prompt-slide=\"5\"] [prompt-slide-image=\"4\"] { background: #2E0A15; }\n [prompt-slide=\"5\"] [prompt-slide-image=\"5\"] { background: #D4607A; }\n [prompt-slide=\"5\"] [prompt-slide-image=\"6\"] { background: #F2B8C6; }\n [prompt-slide=\"5\"] [prompt-slide-image=\"7\"] { background: #FFE0EA; }\n [prompt-slide=\"5\"] [prompt-slide-image=\"8\"] { background: #8C2A3E; }\n\n /* Slide 6 \u2013 Amber */\n /* [prompt-slide=\"6\"] [prompt-slide-image=\"1\"] { background: #3D1C00; }\n [prompt-slide=\"6\"] [prompt-slide-image=\"2\"] { background: #B85C00; }\n [prompt-slide=\"6\"] [prompt-slide-image=\"3\"] { background: #FFAA33; }\n [prompt-slide=\"6\"] [prompt-slide-image=\"4\"] { background: #1F0E00; }\n [prompt-slide=\"6\"] [prompt-slide-image=\"5\"] { background: #E07800; }\n [prompt-slide=\"6\"] [prompt-slide-image=\"6\"] { background: #FFCC80; }\n [prompt-slide=\"6\"] [prompt-slide-image=\"7\"] { background: #FFF0CC; }\n [prompt-slide=\"6\"] [prompt-slide-image=\"8\"] { background: #7A3800; }\n\n /* Slide 7 \u2013 Ice */\n /* [prompt-slide=\"7\"] [prompt-slide-image=\"1\"] { background: #0A1A2E; }\n [prompt-slide=\"7\"] [prompt-slide-image=\"2\"] { background: #1E4D78; }\n [prompt-slide=\"7\"] [prompt-slide-image=\"3\"] { background: #6EB5E0; }\n [prompt-slide=\"7\"] [prompt-slide-image=\"4\"] { background: #050D1A; }\n [prompt-slide=\"7\"] [prompt-slide-image=\"5\"] { background: #3A80B8; }\n [prompt-slide=\"7\"] [prompt-slide-image=\"6\"] { background: #B8DCF5; }\n [prompt-slide=\"7\"] [prompt-slide-image=\"7\"] { background: #E8F5FF; }\n [prompt-slide=\"7\"] [prompt-slide-image=\"8\"] { background: #0D3057; }\n\n /* Slide 8 \u2013 Mint */\n /* [prompt-slide=\"8\"] [prompt-slide-image=\"1\"] { background: #002E1F; }\n [prompt-slide=\"8\"] [prompt-slide-image=\"2\"] { background: #00875A; }\n [prompt-slide=\"8\"] [prompt-slide-image=\"3\"] { background: #4DCCAA; }\n [prompt-slide=\"8\"] [prompt-slide-image=\"4\"] { background: #001710; }\n [prompt-slide=\"8\"] [prompt-slide-image=\"5\"] { background: #00AA77; }\n [prompt-slide=\"8\"] [prompt-slide-image=\"6\"] { background: #99EED8; }\n [prompt-slide=\"8\"] [prompt-slide-image=\"7\"] { background: #DDFFF5; }\n [prompt-slide=\"8\"] [prompt-slide-image=\"8\"] { background: #005C3D; }\n\n /* ===================== PER-SLIDE SIZE + POSITION OVERRIDES ===================== */\n /* Each slide shifts zone positions slightly so no two slides look identical */\n /* [prompt-slide=\"2\"] [prompt-slide-image=\"1\"] { top: 5vh; left: 2vw; width: calc(13vw + 100px); }\n[prompt-slide=\"2\"] [prompt-slide-image=\"2\"] { bottom: 5vh; left: 2vw; width: calc(10vw + 100px); }\n[prompt-slide=\"2\"] [prompt-slide-image=\"3\"] { top: 2vh; right: 2vw; width: calc(12vw + 100px); }\n[prompt-slide=\"2\"] [prompt-slide-image=\"4\"] { bottom: 2vh; right: 2vw; width: calc(11vw + 100px); }\n[prompt-slide=\"2\"] [prompt-slide-image=\"5\"] { top: 8vh; left: 20vw; width: calc(9vw + 100px); }\n[prompt-slide=\"2\"] [prompt-slide-image=\"6\"] { top: 3vh; right: 20vw; width: calc(10vw + 100px); }\n[prompt-slide=\"2\"] [prompt-slide-image=\"7\"] { bottom: 6vh; left: 20vw; width: calc(8vw + 100px); }\n[prompt-slide=\"2\"] [prompt-slide-image=\"8\"] { bottom: 3vh; right: 20vw; width: calc(9vw + 100px); }\n\n[prompt-slide=\"3\"] [prompt-slide-image=\"1\"] { top: 2vh; left: 12vw; width: calc(13vw + 100px); }\n[prompt-slide=\"3\"] [prompt-slide-image=\"2\"] { bottom: 4vh; left: 1vw; width: calc(10vw + 100px); }\n[prompt-slide=\"3\"] [prompt-slide-image=\"3\"] { top: 6vh; right: 1vw; width: calc(12vw + 100px); }\n[prompt-slide=\"3\"] [prompt-slide-image=\"4\"] { bottom: 2vh; right: 2vw; width: calc(11vw + 100px); }\n[prompt-slide=\"3\"] [prompt-slide-image=\"5\"] { top: 4vh; left: 21vw; width: calc(9vw + 100px); }\n[prompt-slide=\"3\"] [prompt-slide-image=\"6\"] { top: 7vh; right: 21vw; width: calc(10vw + 100px); }\n[prompt-slide=\"3\"] [prompt-slide-image=\"7\"] { bottom: 5vh; left: 18vw; width: calc(8vw + 100px); }\n[prompt-slide=\"3\"] [prompt-slide-image=\"8\"] { bottom: 4vh; right: 18vw; width: calc(9vw + 100px); }\n\n[prompt-slide=\"4\"] [prompt-slide-image=\"1\"] { top: 4vh; left: 1vw; width: calc(13vw + 100px); }\n[prompt-slide=\"4\"] [prompt-slide-image=\"2\"] { bottom: 2vh; left: 2vw; width: calc(10vw + 100px); }\n[prompt-slide=\"4\"] [prompt-slide-image=\"3\"] { top: 3vh; right: 2vw; width: calc(12vw + 100px); }\n[prompt-slide=\"4\"] [prompt-slide-image=\"4\"] { bottom: 4vh; right: 1vw; width: calc(11vw + 100px); }\n[prompt-slide=\"4\"] [prompt-slide-image=\"5\"] { top: 6vh; left: 18vw; width: calc(9vw + 100px); }\n[prompt-slide=\"4\"] [prompt-slide-image=\"6\"] { top: 5vh; right: 18vw; width: calc(10vw + 100px); }\n[prompt-slide=\"4\"] [prompt-slide-image=\"7\"] { bottom: 3vh; left: 21vw; width: calc(8vw + 100px); }\n[prompt-slide=\"4\"] [prompt-slide-image=\"8\"] { bottom: 6vh; right: 21vw; width: calc(9vw + 100px); }\n\n[prompt-slide=\"5\"] [prompt-slide-image=\"1\"] { top: 3vh; left: 2vw; width: calc(13vw + 100px); }\n[prompt-slide=\"5\"] [prompt-slide-image=\"2\"] { bottom: 5vh; left: 1vw; width: calc(10vw + 100px); }\n[prompt-slide=\"5\"] [prompt-slide-image=\"3\"] { top: 5vh; right: 2vw; width: calc(12vw + 100px); }\n[prompt-slide=\"5\"] [prompt-slide-image=\"4\"] { bottom: 3vh; right: 1vw; width: calc(11vw + 100px); }\n[prompt-slide=\"5\"] [prompt-slide-image=\"5\"] { top: 7vh; left: 20vw; width: calc(9vw + 100px); }\n[prompt-slide=\"5\"] [prompt-slide-image=\"6\"] { top: 4vh; right: 20vw; width: calc(10vw + 100px); }\n[prompt-slide=\"5\"] [prompt-slide-image=\"7\"] { bottom: 4vh; left: 19vw; width: calc(8vw + 100px); }\n[prompt-slide=\"5\"] [prompt-slide-image=\"8\"] { bottom: 2vh; right: 19vw; width: calc(9vw + 100px); }\n\n[prompt-slide=\"6\"] [prompt-slide-image=\"1\"] { top: 2vh; left: 1vw; width: calc(13vw + 100px); }\n[prompt-slide=\"6\"] [prompt-slide-image=\"2\"] { bottom: 3vh; left: 2vw; width: calc(10vw + 100px); }\n[prompt-slide=\"6\"] [prompt-slide-image=\"3\"] { top: 4vh; right: 1vw; width: calc(12vw + 100px); }\n[prompt-slide=\"6\"] [prompt-slide-image=\"4\"] { bottom: 5vh; right: 2vw; width: calc(11vw + 100px); }\n[prompt-slide=\"6\"] [prompt-slide-image=\"5\"] { top: 5vh; left: 22vw; width: calc(9vw + 100px); }\n[prompt-slide=\"6\"] [prompt-slide-image=\"6\"] { top: 8vh; right: 22vw; width: calc(10vw + 100px); }\n[prompt-slide=\"6\"] [prompt-slide-image=\"7\"] { bottom: 6vh; left: 20vw; width: calc(8vw + 100px); }\n[prompt-slide=\"6\"] [prompt-slide-image=\"8\"] { bottom: 4vh; right: 20vw; width: calc(9vw + 100px); }\n\n[prompt-slide=\"7\"] [prompt-slide-image=\"1\"] { top: 5vh; left: 2vw; width: calc(13vw + 100px); }\n[prompt-slide=\"7\"] [prompt-slide-image=\"2\"] { bottom: 4vh; left: 1vw; width: calc(10vw + 100px); }\n[prompt-slide=\"7\"] [prompt-slide-image=\"3\"] { top: 3vh; right: 2vw; width: calc(12vw + 100px); }\n[prompt-slide=\"7\"] [prompt-slide-image=\"4\"] { bottom: 2vh; right: 1vw; width: calc(11vw + 100px); }\n[prompt-slide=\"7\"] [prompt-slide-image=\"5\"] { top: 6vh; left: 19vw; width: calc(9vw + 100px); }\n[prompt-slide=\"7\"] [prompt-slide-image=\"6\"] { top: 5vh; right: 19vw; width: calc(10vw + 100px); }\n[prompt-slide=\"7\"] [prompt-slide-image=\"7\"] { bottom: 3vh; left: 22vw; width: calc(8vw + 100px); }\n[prompt-slide=\"7\"] [prompt-slide-image=\"8\"] { bottom: 5vh; right: 22vw; width: calc(9vw + 100px); }\n\n[prompt-slide=\"8\"] [prompt-slide-image=\"1\"] { top: 4vh; left: 2vw; width: calc(13vw + 100px); }\n[prompt-slide=\"8\"] [prompt-slide-image=\"2\"] { bottom: 2vh; left: 1vw; width: calc(10vw + 100px); }\n[prompt-slide=\"8\"] [prompt-slide-image=\"3\"] { top: 2vh; right: 1vw; width: calc(12vw + 100px); }\n[prompt-slide=\"8\"] [prompt-slide-image=\"4\"] { bottom: 4vh; right: 2vw; width: calc(11vw + 100px); }\n[prompt-slide=\"8\"] [prompt-slide-image=\"5\"] { top: 7vh; left: 21vw; width: calc(9vw + 100px); }\n[prompt-slide=\"8\"] [prompt-slide-image=\"6\"] { top: 4vh; right: 21vw; width: calc(10vw + 100px); }\n[prompt-slide=\"8\"] [prompt-slide-image=\"7\"] { bottom: 5vh; left: 19vw; width: calc(8vw + 100px); }\n[prompt-slide=\"8\"] [prompt-slide-image=\"8\"] { bottom: 3vh; right: 19vw; width: calc(9vw + 100px); } */\n /* pagination */\n .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.35);\n opacity: 1;\n transition: background 0.3s, transform 0.3s;\n }\n\n .swiper-pagination-bullet-active {\n background: #fff;\n transform: scale(1.4);\n }\n\n [prompt-skeleton] {\n position: absolute;\n inset: 0;\n border-radius: 18px;\n background: #1a1a1a;\n animation: skeleton-pulse 1.6s ease-in-out infinite;\n opacity: 1;\n transition: opacity 0.4s ease;\n z-index: 2;\n }\n\n @keyframes skeleton-pulse {\n 0% {\n background: #1a1a1a;\n }\n\n 50% {\n background: #2e2e2e;\n }\n\n 100% {\n background: #1a1a1a;\n }\n }\n\n\n /* [promptbar-slider] {\n opacity: 0;\n transition: opacity 1s ease;\n} */\n\n @property --angle {\n syntax: \"<angle>\";\n initial-value: 0deg;\n inherits: false;\n }\n\n @keyframes spin {\n to {\n --angle: 360deg;\n }\n }\n\n .submit_button_loading {\n position: absolute;\n inset: 0;\n background: white;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n /* Glowing shadow behind */\n .submit_button_loading::before {\n content: \"\";\n position: absolute;\n inset: -6px;\n background: conic-gradient(from var(--angle),\n #e8603c,\n #f0a070,\n #ffd27a,\n #ff8fa3,\n #e8603c);\n animation: spin 2s linear infinite;\n z-index: -2;\n border-radius: 12px;\n filter: blur(10px);\n opacity: 0.85;\n }\n\n /* White mask covers center, lets glow peek out at edges */\n .submit_button_loading::after {\n content: \"\";\n position: absolute;\n inset: 0;\n background: white;\n border-radius: 8px;\n z-index: -1;\n }\n\n /* Remove the ::after \u2014 no more white mask needed */\n\n @keyframes spin {\n to {\n --angle: 360deg;\n }\n }\n\n\n [prompt-skeleton] {\n display: none;\n }\n\n [prompt-slide-image-inner] {\n border-radius: 10px;\n overflow: hidden;\n }\n\n\n @media screen and (max-width: 479px) {\n [custom-style-identifier=\"prompt-title\"] {\n font-size: 40px;\n max-width: 264px;\n margin: auto;\n text-align: center;\n }\n }"],
|
|
5
|
-
"mappings": ";AAAE,CAAC;AACC,YAAU;AACV,SAAO;AACP,iBAAe;AACf,WAAS;AACT,gBAAc,gBAAgB,KAAK,EAAE,GAAG,WAAW,EAAE,gBAAgB,KAAK,EAAE;AAC5E,QAAM,gBAAgB,KAAK,EAAE,GAAG,WAAW,EAAE,gBAAgB,KAAK,EAAE;AACpE,0BAAwB;AACxB,kBAAgB;AAChB,kBAAgB;AAChB;AAAA,IAAY;AAAA,MAAe,KAAK,IAAI,OAAO,EAAE,KAAK;AAAA,MAC9C,YAAY,EAAE;AAAA,MACd,YAAY,GAAG;AAAA,MACf,QAAQ,GAAG;AAAA,MACX,QAAQ,GAAG;AAAA,MACX,YAAY,GAAG;AAAA,MACf,YAAY;AAChB,WAAS;AACT,cAAY,QAAQ,KAAK;AAC3B;AAEA,UAAU,QAAQ,EAChB,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,IAAI,EACnB,QAAQ,EAAE,KAAK;AAGjB,CAAC,iBAAmB,CAAC;AACnB,aAAW,KAAK,KAAK,OAAO;AAC5B,WAAS;AACX;AAEA,WAJa;AAKX;AACE,aAAS;AACT,aAAS;AACX;AAEA;AACE,aAAS;AACT,aAAS;AACX;AAEA;AACE,aAAS;AACT,aAAS;AACX;AACF;AAEA,CAAC,iBAAmB,CAAC;AACnB,aAAW,MAAM;AACjB,cAAY,UAAU,MAAM,aAAa,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAC3D,iBAAiB,MAAM;AAC3B;AAEA,CAAC,iBAAmB,CAAC;AACnB,aAAW,MAAM;AACjB,cAAY,UAAU,KAAK,aAAa,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAC1D,iBAAiB,KAAK;AAC1B;AA2BA,CAAC;AACC;AAAA,IAAkB;AAAA,MAAgB,KAAK;AAAA,MACnC,QAAQ,CAAC;AAAA,MACT,QAAQ,MAAM;AAAA,MACd,QAAQ,GAAG;AAAA,MACX,QAAQ,GAAG;AAAA,MACX,QAAQ,GAAG;AAAA,MACX,QAAQ,GAAG;AAAA,MACX,QAAQ,GAAG;AAAA,MACX,YAAY,MAAM;AAAA,MAClB;AACJ,mBAAiB,KAAK;AACtB,uBAAqB,KAAK;AAC1B,2BAAyB;AACzB,mBAAiB;AACjB,2BAAyB;AACzB,mBAAiB;AACjB,SAAO;AAEP,aAAW,IAAI;AACf,eAAa,IAAI;AACjB,eAAa,IAAI;AACnB;AAGA,CAzBC,WAyBW,CAAC;AACX,aAAW,aAAa,KAAK,YAAY;AACzC,UAAQ,KAAK;AACf;AAEA,WAJa;AAKX;AACE,yBAAqB,KAAK;AAC1B,YAAQ,KAAK;AACf;AAEA;AACE,yBAAqB,EAAE;AACvB,YAAQ,KAAK;AACf;AACF;AAEA,CAAC;AACC,WAAS;AACT,WAAS;AACX;AAIA,CAAC;AACC,YAAU;AACV,iBAAe;AACf,WAAS;AACT,aAAW,MAAM;AACjB,UAAQ,KAAK;AACb,cAAY;AAEd;AAcA,CAAC;AACC,OAAK;AACP;AAEA,CAAC;AACC,OAAK;AACP;AAEA,CAAC;AACC,OAAK;AACP;AAEA,CAAC;AACC,OAAK;AACP;AAEA,CAAC;AACC,OAAK;AACP;AAEA,CAAC;AACC,OAAK;AACP;AAEA,CAAC;AACC,OAAK;AACP;AAEA,CAAC;AACC,OAAK;AACP;AAmBA,CAAC;AACC,OAAK;AACL,QAAM;AACN,SAAO
|
|
4
|
+
"sourcesContent": [" [promptbar=\"border\"] {\n position: absolute;\n inset: 0;\n border-radius: 18px;\n padding: 2px;\n -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n -webkit-mask-composite: xor;\n mask-composite: exclude;\n pointer-events: none;\n background: conic-gradient(from var(--angle, 0deg),\n transparent 0%,\n transparent 40%,\n #e8603c 50%,\n #f0a070 55%,\n transparent 65%,\n transparent 100%);\n opacity: 0;\n transition: opacity 0.3s ease;\n }\n\n @property --angle {\n syntax: '<angle>';\n initial-value: 0deg;\n inherits: false;\n }\n\n [promptbar=\"border\"][is-animating=\"true\"] {\n animation: spin 3.5s linear forwards;\n opacity: 1;\n }\n\n @keyframes spin {\n from {\n --angle: 0deg;\n opacity: 1;\n }\n\n 85% {\n --angle: 360deg;\n opacity: 1;\n }\n\n 100% {\n --angle: 360deg;\n opacity: 0;\n }\n }\n\n [promptbar=\"submit\"][is-clicked=\"true\"] {\n transform: scale(0.80);\n transition: transform 0.12s cubic-bezier(0.34, 1.56, 0.64, 1),\n background-color 0.15s ease;\n }\n\n [promptbar=\"submit\"][is-clicked=\"false\"] {\n transform: scale(1);\n transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1),\n background-color 0.5s ease;\n }\n\n\n /* .chroma-text {\n background-image: linear-gradient(90deg,\n #000000 0,\n #000000 33.33%,\n #4E52F2 40%,\n #DD9DFF 45%,\n #E3A4A8 50%,\n #50C0FE 55%,\n #1E31FC 60%,\n transparent 66.67%,\n transparent);\n background-size: 300% 100%;\n background-position: 100% 0;\n -webkit-background-clip: text;\n background-clip: text;\n -webkit-text-fill-color: transparent;\n text-fill-color: transparent;\n color: transparent;\n\n\n font-size: var(--_text-size---body--l);\n line-height: var(--_line-height---line-height-body--l);\n font-weight: var(--_font-weight---font-weight-body--l);\n} */\n .chroma-text {\n background-image: linear-gradient(90deg,\n #ffffff 0,\n #ffffff 33.33%,\n #e8603c 40%,\n #f0845a 45%,\n #ffc4a8 50%,\n #f07050 55%,\n #c94020 60%,\n transparent 66.67%,\n transparent);\n background-size: 300% 100%;\n background-position: 100% 0;\n -webkit-background-clip: text;\n background-clip: text;\n -webkit-text-fill-color: transparent;\n text-fill-color: transparent;\n color: transparent;\n\n font-size: var(--_text-size---body--l);\n line-height: var(--_line-height---line-height-body--l);\n font-weight: var(--_font-weight---font-weight-body--l);\n }\n\n /* Only animate when explicitly true */\n .chroma-text[data-animate=\"true\"] {\n animation: chroma-sweep 1.5s ease-in-out forwards;\n filter: blur(1px);\n }\n\n @keyframes chroma-sweep {\n 0% {\n background-position: 100% 0;\n filter: blur(1px);\n }\n\n to {\n background-position: 0 0;\n filter: blur(0);\n }\n }\n\n .promptbar-text-item {\n display: none;\n opacity: 0 !important;\n }\n\n\n\n [prompt-slide-image] {\n position: absolute;\n border-radius: 18px;\n opacity: 0;\n transform: scale(0);\n filter: blur(16px);\n transition: none;\n /* let GSAP handle it */\n }\n\n\n\n /* stagger delays\n .block:nth-child(1) { transition-delay: 0.00s; }\n .block:nth-child(2) { transition-delay: 0.07s; }\n .block:nth-child(3) { transition-delay: 0.14s; }\n .block:nth-child(4) { transition-delay: 0.21s; }\n .block:nth-child(5) { transition-delay: 0.28s; }\n .block:nth-child(6) { transition-delay: 0.35s; }\n .block:nth-child(7) { transition-delay: 0.42s; }\n .block:nth-child(8) { transition-delay: 0.49s; } */\n\n [prompt-slide-image=\"1\"] {\n --i: 1;\n }\n\n [prompt-slide-image=\"2\"] {\n --i: 2;\n }\n\n [prompt-slide-image=\"3\"] {\n --i: 3;\n }\n\n [prompt-slide-image=\"4\"] {\n --i: 4;\n }\n\n [prompt-slide-image=\"5\"] {\n --i: 5;\n }\n\n [prompt-slide-image=\"6\"] {\n --i: 6;\n }\n\n [prompt-slide-image=\"7\"] {\n --i: 7;\n }\n\n [prompt-slide-image=\"8\"] {\n --i: 8;\n }\n\n /*\n 8 ZONES (never touch center keep-out ~26%\u201374% x, 28%\u201372% y):\n 1 \u2192 far-left-top\n 2 \u2192 far-left-bottom\n 3 \u2192 far-right-top\n 4 \u2192 far-right-bottom\n 5 \u2192 top-inner-left (above center, left half)\n 6 \u2192 top-inner-right (above center, right half)\n 7 \u2192 bottom-inner-left\n 8 \u2192 bottom-inner-right\n\n Each [prompt-slide-image=\"N\"] maps to zone N.\n Each slide has different sizes + slight position variation per zone.\n */\n\n /* ===================== ZONE POSITIONS (shared across slides, overridden per slide for size variety) ===================== */\n /* Zone 1 \u2013 far left top */\n [prompt-slide-image=\"1\"] {\n top: 52vh;\n left: 1vw;\n width: 10vw;\n aspect-ratio: 3/4;\n }\n\n /* Zone 2 \u2013 far left bottom */\n [prompt-slide-image=\"2\"] {\n bottom: -5vh;\n left: 16vw;\n width: 18vw;\n aspect-ratio: 3/4;\n }\n\n /* Zone 3 \u2013 far right top */\n [prompt-slide-image=\"3\"] {\n top: 28vh;\n right: -4vw;\n width: 16vw;\n aspect-ratio: 4/5;\n }\n\n /* Zone 4 \u2013 far right bottom */\n [prompt-slide-image=\"4\"] {\n bottom: 5vh;\n right: -4vw;\n width: calc(6vw + 100px);\n aspect-ratio: 12/16;\n display: none;\n }\n\n /* Zone 5 \u2013 top inner left */\n [prompt-slide-image=\"5\"] {\n top: -18vh;\n left: 4vw;\n width: 18vw;\n aspect-ratio: 2/3;\n }\n\n /* Zone 6 \u2013 top inner right */\n [prompt-slide-image=\"6\"] {\n top: 6vh;\n right: 14vw;\n width: 12vw;\n aspect-ratio: 3/4;\n }\n\n /* Zone 7 \u2013 bottom inner left */\n [prompt-slide-image=\"7\"] {\n bottom: -24vh;\n left: 42vw;\n width: 18vw;\n aspect-ratio: 4/5;\n }\n\n /* Zone 8 \u2013 bottom inner right */\n [prompt-slide-image=\"8\"] {\n bottom: -20vh;\n right: 10vw;\n width: 20vw;\n aspect-ratio: 2/3;\n }\n\n /* \n @media (min-width: 990px) and (min-height: 801px) {\n [prompt-slide-image=\"5\"] {\n top: -2vh;\n }\n\n [prompt-slide-image=\"1\"] {\n top: 52vh;\n }\n\n [prompt-slide-image=\"7\"] {\n bottom: -10vh;\n }\n } */\n\n /*mobile styles */\n @media (max-width: 800px) {\n\n [prompt-slide-image=\"5\"],\n [prompt-slide-image=\"6\"],\n [prompt-slide-image=\"7\"],\n [prompt-slide-image=\"8\"] {\n display: none;\n }\n\n /* Zone 1 \u2013 far left top */\n [prompt-slide-image=\"1\"] {\n top: 6vh;\n left: 6vw;\n width: calc(10vw + 100px);\n aspect-ratio: 3/4;\n }\n\n /* Zone 2 \u2013 far left bottom */\n [prompt-slide-image=\"2\"] {\n bottom: 12vh;\n left: 8vw;\n width: calc(6vw + 100px);\n aspect-ratio: 2/3;\n }\n\n /* Zone 3 \u2013 far right top */\n [prompt-slide-image=\"3\"] {\n top: 4vh;\n right: 8vw;\n width: calc(10vw + 100px);\n aspect-ratio: 4/5;\n }\n\n /* Zone 4 \u2013 far right bottom */\n [prompt-slide-image=\"4\"] {\n bottom: 10vh;\n right: 6vw;\n width: calc(6vw + 100px);\n aspect-ratio: 12/16;\n }\n\n [prompt-slide-image=\"4\"] {\n display: block;\n }\n }\n\n /*Tablet styles */\n @media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {\n\n [prompt-slide-image=\"1\"] {\n top: -1vh;\n left: 2vw;\n width: 20vw;\n }\n\n [prompt-slide-image=\"6\"] {\n top: 3vh;\n right: 2vw;\n width: 20vw;\n }\n\n [prompt-slide-image=\"2\"] {\n bottom: 10vh;\n left: 1vw;\n width: 18vw;\n }\n\n [prompt-slide-image=\"3\"] {\n top: 40vh;\n right: 3vw;\n width: 16vw;\n }\n\n [prompt-slide-image=\"8\"] {\n bottom: -2vh;\n right: 40vw;\n width: 24vw;\n aspect-ratio: 1/1.2;\n }\n\n .prompt-hero_wrapper {\n max-height: 600px;\n }\n }\n\n @media (min-width: 1025px) and (max-width: 1366px) and (orientation: portrait) {\n .prompt-hero_wrapper {\n max-height: 800px;\n }\n\n [prompt-slide-image=\"5\"] {\n top: -100vh;\n }\n }\n\n /* pagination */\n .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.35);\n opacity: 1;\n transition: background 0.3s, transform 0.3s;\n }\n\n .swiper-pagination-bullet-active {\n background: #fff;\n transform: scale(1.4);\n }\n\n [prompt-skeleton] {\n position: absolute;\n inset: 0;\n border-radius: 18px;\n background: #1a1a1a;\n animation: skeleton-pulse 1.6s ease-in-out infinite;\n opacity: 1;\n transition: opacity 0.4s ease;\n z-index: 2;\n }\n\n @keyframes skeleton-pulse {\n 0% {\n background: #1a1a1a;\n }\n\n 50% {\n background: #2e2e2e;\n }\n\n 100% {\n background: #1a1a1a;\n }\n }\n\n\n /* [promptbar-slider] {\n opacity: 0;\n transition: opacity 1s ease;\n} */\n\n @property --angle {\n syntax: \"<angle>\";\n initial-value: 0deg;\n inherits: false;\n }\n\n @keyframes spin {\n to {\n --angle: 360deg;\n }\n }\n\n .submit_button_loading {\n position: absolute;\n inset: 0;\n background: white;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n /* Glowing shadow behind */\n .submit_button_loading::before {\n content: \"\";\n position: absolute;\n inset: -6px;\n background: conic-gradient(from var(--angle),\n #e8603c,\n #f0a070,\n #ffd27a,\n #ff8fa3,\n #e8603c);\n animation: spin 2s linear infinite;\n z-index: -2;\n border-radius: 12px;\n filter: blur(10px);\n opacity: 0.85;\n }\n\n /* White mask covers center, lets glow peek out at edges */\n .submit_button_loading::after {\n content: \"\";\n position: absolute;\n inset: 0;\n background: white;\n border-radius: 8px;\n z-index: -1;\n }\n\n /* Remove the ::after \u2014 no more white mask needed */\n\n @keyframes spin {\n to {\n --angle: 360deg;\n }\n }\n\n\n [prompt-skeleton] {\n display: none;\n }\n\n [prompt-slide-image-inner] {\n border-radius: 10px;\n overflow: hidden;\n }\n\n\n @media screen and (max-width: 479px) {\n [custom-style-identifier=\"prompt-title\"] {\n font-size: 40px;\n max-width: 264px;\n margin: auto;\n text-align: center;\n }\n }\n\n\n .prompt-wrapper {\n pointer-events: none;\n }"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/slider/freescroll-cards.ts"],
|
|
4
|
-
"sourcesContent": ["document.addEventListener('DOMContentLoaded', () => {\n if (typeof window === 'undefined' || typeof (window as any).Swiper === 'undefined') {\n return;\n }\n\n const enableFreeMode = window.innerWidth >= 992;\n\n const
|
|
5
|
-
"mappings": ";;;AAAA,WAAS,iBAAiB,oBAAoB,MAAM;AAChD,QAAI,OAAO,WAAW,eAAe,OAAQ,OAAe,WAAW,aAAa;AAChF;AAAA,IACJ;AAEA,UAAM,iBAAiB,OAAO,cAAc;AAE5C,UAAM,
|
|
4
|
+
"sourcesContent": ["document.addEventListener('DOMContentLoaded', () => {\n if (typeof window === 'undefined' || typeof (window as any).Swiper === 'undefined') {\n return;\n }\n\n const enableFreeMode = window.innerWidth >= 992;\n\n const initSliders = (\n selector: string,\n breakpoints: Record<number, { slidesPerView: number }>\n ) => {\n const sliderEls = document.querySelectorAll(selector);\n if (!sliderEls.length) return;\n\n sliderEls.forEach((sliderEl) => {\n new (window as any).Swiper(sliderEl, {\n spaceBetween: 20,\n loop: false,\n freeMode: enableFreeMode,\n mousewheel: enableFreeMode\n ? { forceToAxis: true, sensitivity: 1 }\n : false,\n breakpoints,\n });\n });\n };\n\n initSliders(\"[pulse-slider='scrolling-cards']\", {\n 992: { slidesPerView: 2.5 },\n 768: { slidesPerView: 1.5 },\n 0: { slidesPerView: 1.2 },\n });\n\n initSliders(\"[pulse-slider='scrolling-cards-2']\", {\n 992: { slidesPerView: 3 },\n 768: { slidesPerView: 2.5 },\n 0: { slidesPerView: 1.2 },\n });\n\n initSliders(\"[pulse-slider='scrolling-cards-3']\", {\n 992: { slidesPerView: 4 },\n 768: { slidesPerView: 3 },\n 0: { slidesPerView: 2.1 },\n });\n});"],
|
|
5
|
+
"mappings": ";;;AAAA,WAAS,iBAAiB,oBAAoB,MAAM;AAChD,QAAI,OAAO,WAAW,eAAe,OAAQ,OAAe,WAAW,aAAa;AAChF;AAAA,IACJ;AAEA,UAAM,iBAAiB,OAAO,cAAc;AAE5C,UAAM,cAAc,CAChB,UACA,gBACC;AACD,YAAM,YAAY,SAAS,iBAAiB,QAAQ;AACpD,UAAI,CAAC,UAAU,OAAQ;AAEvB,gBAAU,QAAQ,CAAC,aAAa;AAC5B,YAAK,OAAe,OAAO,UAAU;AAAA,UACjC,cAAc;AAAA,UACd,MAAM;AAAA,UACN,UAAU;AAAA,UACV,YAAY,iBACN,EAAE,aAAa,MAAM,aAAa,EAAE,IACpC;AAAA,UACN;AAAA,QACJ,CAAC;AAAA,MACL,CAAC;AAAA,IACL;AAEA,gBAAY,oCAAoC;AAAA,MAC5C,KAAK,EAAE,eAAe,IAAI;AAAA,MAC1B,KAAK,EAAE,eAAe,IAAI;AAAA,MAC1B,GAAK,EAAE,eAAe,IAAI;AAAA,IAC9B,CAAC;AAED,gBAAY,sCAAsC;AAAA,MAC9C,KAAK,EAAE,eAAe,EAAE;AAAA,MACxB,KAAK,EAAE,eAAe,IAAI;AAAA,MAC1B,GAAK,EAAE,eAAe,IAAI;AAAA,IAC9B,CAAC;AAED,gBAAY,sCAAsC;AAAA,MAC9C,KAAK,EAAE,eAAe,EAAE;AAAA,MACxB,KAAK,EAAE,eAAe,EAAE;AAAA,MACxB,GAAK,EAAE,eAAe,IAAI;AAAA,IAC9B,CAAC;AAAA,EACL,CAAC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|