Compare commits

..

4 commits

Author SHA1 Message Date
451bc19283 update lock file(s) 2026-07-18 23:00:13 +07:00
43ad65eeeb improve button label
All checks were successful
Build and Deploy / deploy (push) Successful in 1m4s
2026-07-18 22:17:22 +07:00
7deb88c404 fix branch name
All checks were successful
Build and Deploy / deploy (push) Successful in 1m5s
2026-07-18 22:10:14 +07:00
8e82038dbb click to copy 2026-07-18 22:03:12 +07:00
2 changed files with 22 additions and 6 deletions

View file

@ -3,7 +3,7 @@ name: Build and Deploy
on: on:
workflow_dispatch: workflow_dispatch:
push: push:
branches: [ main ] branches: [ master ]
jobs: jobs:
deploy: deploy:

View file

@ -21,6 +21,14 @@
let audio: HTMLAudioElement; let audio: HTMLAudioElement;
let showNotification = $state(false); let showNotification = $state(false);
let showCopyNotification = $state(false);
function copyCurlCommand() {
navigator.clipboard.writeText("curl https://satr14.my.id").then(() => {
showCopyNotification = true;
setTimeout(() => showCopyNotification = false, 3000);
}).catch(() => {});
}
function playAudio() { function playAudio() {
if (audio.paused) { if (audio.paused) {
@ -61,6 +69,14 @@
</div> </div>
{/if} {/if}
{#if showCopyNotification}
<div class="z-50 fixed top-6 right-6 left-6 flex justify-center items-center">
<div class="flex items-center gap-3 bg-ctp-surface0 text-ctp-text px-4 py-3 rounded-xl shadow-lg border border-ctp-sky" transition:fly={{ y: 20, duration: 300, easing: cubicOut }}>
<p class="m-0 font-medium">Copied to clipboard</p>
</div>
</div>
{/if}
<div class="fixed top-0 left-0 w-full h-full animate-[rainbow_20s_linear_infinite,breathing_8s_ease-in-out_infinite]" style="background: linear-gradient(-6deg, hsl(var(--rainbow-hue-bottom), 70%, 60%), transparent, hsl(var(--rainbow-hue-top), 70%, 60%));" transition:fade={{ <div class="fixed top-0 left-0 w-full h-full animate-[rainbow_20s_linear_infinite,breathing_8s_ease-in-out_infinite]" style="background: linear-gradient(-6deg, hsl(var(--rainbow-hue-bottom), 70%, 60%), transparent, hsl(var(--rainbow-hue-top), 70%, 60%));" transition:fade={{
duration: 1500, easing: cubicOut duration: 1500, easing: cubicOut
}}></div> }}></div>
@ -117,7 +133,7 @@
{/each} {/each}
</div> </div>
<a href="/#abt" id="abt" class="text-center no-underline text-xl font-extrabold" onclick={playAudio}>&uarr;</a> <a href="/#abt" id="abt" class="text-center no-underline text-xl font-extrabold" onclick={playAudio}>&uarr;</a>
<p class="text-center m-0 font-mono italic hidden md:block">curl https://satr14.my.id</p> <p onclick={copyCurlCommand} class="text-center m-0 font-mono italic hidden md:block cursor-pointer hover:text-ctp-sky">curl https://satr14.my.id</p>
</nav> </nav>
</header> </header>
@ -159,11 +175,11 @@
</div> </div>
</article> </article>
<div class="opacity-75 hover:opacity-100 flex justify-center gap-6 font-extrabold pb-6 no-underline text-ctp-text"> <div class="opacity-75 hover:opacity-100 flex justify-center gap-6 pb-6 no-underline text-ctp-text">
<a href="https://nixwebr.ing/prev/satr14">&lt;</a> <a href="https://nixwebr.ing/prev/satr14">&lt;prev</a>
<a href="https://nixwebr.ing" class="italic font-">nix-webring</a> <a href="https://nixwebr.ing">nix-webring</a>
<a href="https://nixwebr.ing/rand">&#9858;</a> <a href="https://nixwebr.ing/rand">&#9858;</a>
<a href="https://nixwebr.ing/next/satr14">&gt;</a> <a href="https://nixwebr.ing/next/satr14">next&gt;</a>
</div> </div>
</main> </main>
</div> </div>