<script lang="ts"> import { browser } from "$app/environment"; import Button from "$lib/components/Button.svelte"; import AuthTokenStore from "$lib/stores/AuthTokenStore"; import { getModalStore } from "@skeletonlabs/skeleton"; import { fade, slide } from "svelte/transition"; const modalStore = getModalStore(); let showAuthSaved = false; let showPlaceholder = true; const saveAuth = () => { showAuthSaved = true; showPlaceholder = false; setTimeout(function() { showAuthSaved = false; setTimeout(function() { showPlaceholder = true; }, 195); }, 1000); document.cookie = "authToken=" + authToken; $AuthTokenStore = authToken; } let authToken: string; if (browser) { authToken = document.cookie.split("=")[document.cookie.split("=").length - 1]; $AuthTokenStore = authToken; } const handleSubmit = () => { console.log("submitted ", gameGroupSettings); document.cookie = "authToken=" + authToken; modalStore.close(); } let gameGroupSettings: [] = []; const formInput = "bg-surface-200-700-token focus:brightness-105 hover:brightness-105 border-token border-surface-400-500-token rounded-token px-3 w-[6rem]" </script> <div class="card p-4 w-modal-slim shadow-xl space-y-4 text-center rounded-xl"> <h2>Settings</h2> <div class="p-4 space-y-4"> <form on:submit|preventDefault={handleSubmit} class="modal-form"> <label for="authTokenInput" class="label my-2 gap-1 grid grid-cols-[20%,30%,30%,10%,10%]"> <span></span> <span>Auth Token:</span> <input class={formInput} id="authTokenInput" bind:value={authToken} on:input={saveAuth} type="text"> {#if showAuthSaved} <span transition:fade={{duration: 200}}>Saved!</span> {/if} </label> <br> <br> <!-- <b>Show Game Groups:</b><br> <input type="checkbox" bind:group={gameGroupSettings} value="b">Group B<br> <input type="checkbox" bind:group={gameGroupSettings} value="-">Ungrouped<br> --> <Button text="Save"/> </form> </div> </div>