aboutsummaryrefslogtreecommitdiffstats
path: root/app/src
diff options
context:
space:
mode:
authorMatt Strapp <matt@mattstrapp.net>2023-09-29 10:11:33 -0500
committerMatt Strapp <matt@mattstrapp.net>2023-09-29 10:11:33 -0500
commit11ece69e006b446b9ca4e06eb5af5662bc811469 (patch)
tree29dbb0b4b88aa9eae29d80f5ebc08b8f710f51f8 /app/src
parentUpdate dep + fix build (diff)
downloadtrinkets-11ece69e006b446b9ca4e06eb5af5662bc811469.tar
trinkets-11ece69e006b446b9ca4e06eb5af5662bc811469.tar.gz
trinkets-11ece69e006b446b9ca4e06eb5af5662bc811469.tar.bz2
trinkets-11ece69e006b446b9ca4e06eb5af5662bc811469.tar.lz
trinkets-11ece69e006b446b9ca4e06eb5af5662bc811469.tar.xz
trinkets-11ece69e006b446b9ca4e06eb5af5662bc811469.tar.zst
trinkets-11ece69e006b446b9ca4e06eb5af5662bc811469.zip
Formatting
Signed-off-by: Matt Strapp <matt@mattstrapp.net>
Diffstat (limited to 'app/src')
-rw-r--r--app/src/app.d.ts2
-rw-r--r--app/src/app.html1
-rw-r--r--app/src/hooks.server.ts18
-rw-r--r--app/src/lib/svelte/Navigation.svelte20
-rw-r--r--app/src/lib/svelte/ReloadPrompt.svelte60
-rw-r--r--app/src/lib/ts/download.ts32
-rw-r--r--app/src/lib/ts/truncate.worker.ts14
-rw-r--r--app/src/lib/types/truncate-worker.ts10
-rw-r--r--app/src/routes/+layout.svelte24
-rw-r--r--app/src/routes/+layout.ts2
-rw-r--r--app/src/routes/+page.svelte9
-rw-r--r--app/src/routes/truncate/+page.svelte48
12 files changed, 119 insertions, 121 deletions
diff --git a/app/src/app.d.ts b/app/src/app.d.ts
index bf2855f..bbacd79 100644
--- a/app/src/app.d.ts
+++ b/app/src/app.d.ts
@@ -2,7 +2,7 @@
// for information about these interfaces
// and what to do when importing types
-import 'vite-plugin-pwa/info';
+import 'vite-plugin-pwa/info'
declare namespace App {
// interface Locals {}
diff --git a/app/src/app.html b/app/src/app.html
index 4950b86..2ce4c3b 100644
--- a/app/src/app.html
+++ b/app/src/app.html
@@ -7,6 +7,7 @@
<meta name="viewport" content="width=device-width" />
%sveltekit.head%
</head>
+
<body data-sveltekit-preload-data="hover" data-theme="wintry">
<div style="display: contents" class="h-full overflow-hidden">%sveltekit.body%</div>
</body>
diff --git a/app/src/hooks.server.ts b/app/src/hooks.server.ts
index bf7121a..3abdfb3 100644
--- a/app/src/hooks.server.ts
+++ b/app/src/hooks.server.ts
@@ -1,5 +1,5 @@
-import { minify } from 'html-minifier-terser';
-import { building } from '$app/environment';
+import { minify } from 'html-minifier-terser'
+import { building } from '$app/environment'
const minification_options = {
collapseBooleanAttributes: true,
@@ -18,19 +18,19 @@ const minification_options = {
removeScriptTypeAttributes: true,
removeStyleLinkTypeAttributes: true,
sortAttributes: true,
- sortClassName: true
-};
+ sortClassName: true,
+}
/** @type {import('@sveltejs/kit').Handle} */
export async function handle({ event, resolve }) {
- let page = '';
+ let page = ''
return resolve(event, {
transformPageChunk: ({ html, done }) => {
- page += html;
+ page += html
if (done) {
- return building ? minify(page, minification_options) : page;
+ return building ? minify(page, minification_options) : page
}
- }
- });
+ },
+ })
}
diff --git a/app/src/lib/svelte/Navigation.svelte b/app/src/lib/svelte/Navigation.svelte
index 9246c28..fa9182f 100644
--- a/app/src/lib/svelte/Navigation.svelte
+++ b/app/src/lib/svelte/Navigation.svelte
@@ -1,22 +1,22 @@
<script lang="ts">
- import { page } from '$app/stores';
+ import { page } from '$app/stores'
- import Icon from '@iconify/svelte';
- import homeIcon from '@iconify/icons-carbon/home';
- import logoGithub from '@iconify/icons-carbon/logo-github';
- import menuIcon from '@iconify/icons-carbon/menu';
- import pageBreak from '@iconify/icons-carbon/page-break';
+ import Icon from '@iconify/svelte'
+ import homeIcon from '@iconify/icons-carbon/home'
+ import logoGithub from '@iconify/icons-carbon/logo-github'
+ import menuIcon from '@iconify/icons-carbon/menu'
+ import pageBreak from '@iconify/icons-carbon/page-break'
- import { AppRail, AppRailAnchor, getDrawerStore } from '@skeletonlabs/skeleton';
+ import { AppRail, AppRailAnchor, getDrawerStore } from '@skeletonlabs/skeleton'
- const drawerStore = getDrawerStore();
+ const drawerStore = getDrawerStore()
function drawerClose(): void {
- drawerStore.close();
+ drawerStore.close()
}
// Hamburgers
- export let menu = false;
+ export let menu = false
</script>
<AppRail>
diff --git a/app/src/lib/svelte/ReloadPrompt.svelte b/app/src/lib/svelte/ReloadPrompt.svelte
index d54a202..e6effbb 100644
--- a/app/src/lib/svelte/ReloadPrompt.svelte
+++ b/app/src/lib/svelte/ReloadPrompt.svelte
@@ -1,34 +1,32 @@
<script lang="ts">
- import { getToastStore } from "@skeletonlabs/skeleton";
- import { useRegisterSW } from "virtual:pwa-register/svelte";
+ import { getToastStore } from '@skeletonlabs/skeleton'
+ import { useRegisterSW } from 'virtual:pwa-register/svelte'
- const toastStore = getToastStore();
+ const toastStore = getToastStore()
- const {
- updateServiceWorker,
- } = useRegisterSW({
- onRegisteredSW(r) {
- console.log("SW Registered: ", r)
- },
- onNeedRefresh() {
- toastStore.trigger({
- message: 'A new version of the application is available.',
- autohide: false,
- action: {
- label: 'Refresh',
- response: updateServiceWorker
- }
- });
- },
- onOfflineReady() {
- toastStore.trigger({
- background: 'variant-filled-success',
- message: 'Now ready for offline use!',
- timeout: 5000
- });
- },
- onRegisterError(err) {
- console.error("SW Registration Error: ", err)
- }
- })
-</script> \ No newline at end of file
+ const { updateServiceWorker } = useRegisterSW({
+ onRegisteredSW(r) {
+ console.log('SW Registered: ', r)
+ },
+ onNeedRefresh() {
+ toastStore.trigger({
+ message: 'A new version of the application is available.',
+ autohide: false,
+ action: {
+ label: 'Refresh',
+ response: updateServiceWorker,
+ },
+ })
+ },
+ onOfflineReady() {
+ toastStore.trigger({
+ background: 'variant-filled-success',
+ message: 'Now ready for offline use!',
+ timeout: 5000,
+ })
+ },
+ onRegisterError(err) {
+ console.error('SW Registration Error: ', err)
+ },
+ })
+</script>
diff --git a/app/src/lib/ts/download.ts b/app/src/lib/ts/download.ts
index c3e98b0..48debec 100644
--- a/app/src/lib/ts/download.ts
+++ b/app/src/lib/ts/download.ts
@@ -5,33 +5,33 @@ export default async function saveFile(blob: ArrayBuffer, suggestedName: string
'showSaveFilePicker' in window &&
(() => {
try {
- return window.self === window.top;
+ return window.self === window.top
} catch {
- return false;
+ return false
}
- })();
+ })()
if (supportsFSAccess) {
try {
const handle = await window.showSaveFilePicker({
- suggestedName: suggestedName
- });
- const writable = await handle.createWritable();
- await writable.write(blob);
- await writable.close();
- return;
+ suggestedName: suggestedName,
+ })
+ const writable = await handle.createWritable()
+ await writable.write(blob)
+ await writable.close()
+ return
} catch (err: unknown) {
// TypeScript
if ((err as Error)?.name !== 'AbortError') {
- return Promise.reject(err);
+ return Promise.reject(err)
}
}
} else {
- const anchor = document.createElement('a');
- anchor.download = suggestedName ?? 'truncated';
- anchor.href = URL.createObjectURL(new Blob([blob]));
- anchor.click();
- URL.revokeObjectURL(anchor.href);
- document.body.removeChild(anchor);
+ const anchor = document.createElement('a')
+ anchor.download = suggestedName ?? 'truncated'
+ anchor.href = URL.createObjectURL(new Blob([blob]))
+ anchor.click()
+ URL.revokeObjectURL(anchor.href)
+ document.body.removeChild(anchor)
}
}
diff --git a/app/src/lib/ts/truncate.worker.ts b/app/src/lib/ts/truncate.worker.ts
index 9ddf63c..da75041 100644
--- a/app/src/lib/ts/truncate.worker.ts
+++ b/app/src/lib/ts/truncate.worker.ts
@@ -1,9 +1,9 @@
-import type { TruncateRequest, TruncateResponse } from '../types/truncate-worker';
+import type { TruncateRequest, TruncateResponse } from '../types/truncate-worker'
onmessage = async (message: MessageEvent<TruncateRequest>) => {
- console.log('File received. Truncating...');
- const file = message.data.file;
- const buffer = await file.arrayBuffer();
- const truncated = buffer.slice(0, message.data.size);
- postMessage({ file: truncated } as TruncateResponse);
-};
+ console.log('File received. Truncating...')
+ const file = message.data.file
+ const buffer = await file.arrayBuffer()
+ const truncated = buffer.slice(0, message.data.size)
+ postMessage({ file: truncated } as TruncateResponse)
+}
diff --git a/app/src/lib/types/truncate-worker.ts b/app/src/lib/types/truncate-worker.ts
index 7052d17..2691ccb 100644
--- a/app/src/lib/types/truncate-worker.ts
+++ b/app/src/lib/types/truncate-worker.ts
@@ -1,8 +1,8 @@
export type TruncateRequest = {
- file: File;
- size: number;
-};
+ file: File
+ size: number
+}
export type TruncateResponse = {
- file: ArrayBuffer;
-};
+ file: ArrayBuffer
+}
diff --git a/app/src/routes/+layout.svelte b/app/src/routes/+layout.svelte
index 087465b..df0f707 100644
--- a/app/src/routes/+layout.svelte
+++ b/app/src/routes/+layout.svelte
@@ -1,34 +1,34 @@
<script lang="ts">
- import Navigation from '$lib/svelte/Navigation.svelte';
- import Icon from '@iconify/svelte';
- import menuIcon from '@iconify/icons-carbon/menu';
+ import Navigation from '$lib/svelte/Navigation.svelte'
+ import Icon from '@iconify/svelte'
+ import menuIcon from '@iconify/icons-carbon/menu'
import {
AppBar,
AppShell,
Drawer,
Toast,
getDrawerStore,
- initializeStores
- } from '@skeletonlabs/skeleton';
- import { pwaInfo } from 'virtual:pwa-info';
- import '../app.postcss';
+ initializeStores,
+ } from '@skeletonlabs/skeleton'
+ import { pwaInfo } from 'virtual:pwa-info'
+ import '../app.postcss'
// Floating UI for Popups
// import { computePosition, autoUpdate, flip, shift, offset, arrow } from '@floating-ui/dom';
// import { storePopup } from '@skeletonlabs/skeleton';
// storePopup.set({ computePosition, autoUpdate, flip, shift, offset, arrow });
- initializeStores();
+ initializeStores()
- const drawerStore = getDrawerStore();
+ const drawerStore = getDrawerStore()
function drawerOpen() {
drawerStore.open({
- width: 'w-[80px]'
- });
+ width: 'w-[80px]',
+ })
}
- $: webManifestLink = pwaInfo ? pwaInfo.webManifest.linkTag : '';
+ $: webManifestLink = pwaInfo ? pwaInfo.webManifest.linkTag : ''
</script>
<svelte:head>
diff --git a/app/src/routes/+layout.ts b/app/src/routes/+layout.ts
index 189f71e..176ae64 100644
--- a/app/src/routes/+layout.ts
+++ b/app/src/routes/+layout.ts
@@ -1 +1 @@
-export const prerender = true;
+export const prerender = true
diff --git a/app/src/routes/+page.svelte b/app/src/routes/+page.svelte
index e34c31e..123282c 100644
--- a/app/src/routes/+page.svelte
+++ b/app/src/routes/+page.svelte
@@ -1,15 +1,14 @@
<svelte:head>
- <title>Coming Soon(TM)</title>
+ <title>Coming Soon(TM)</title>
</svelte:head>
<!-- YOU CAN DELETE EVERYTHING IN THIS PAGE -->
<div class="container h-full mx-auto flex justify-center items-center">
- <div class="space-y-10 text-center flex flex-col items-center">
- <h2 class="h2">Welcome to a placeholder.</h2>
- </div>
+ <div class="space-y-10 text-center flex flex-col items-center">
+ <h2 class="h2">Welcome to a placeholder.</h2>
+ </div>
</div>
<style lang="postcss">
-
</style>
diff --git a/app/src/routes/truncate/+page.svelte b/app/src/routes/truncate/+page.svelte
index 635b6bc..6db6d25 100644
--- a/app/src/routes/truncate/+page.svelte
+++ b/app/src/routes/truncate/+page.svelte
@@ -1,36 +1,36 @@
<script lang="ts">
- import saveFile from '$lib/ts/download';
- import type { TruncateRequest, TruncateResponse } from '$lib/types/truncate-worker';
- import Icon from '@iconify/svelte';
- import fileStorage from '@iconify/icons-carbon/file-storage';
- import { FileDropzone, ProgressBar } from '@skeletonlabs/skeleton';
- import { onDestroy, onMount } from 'svelte';
+ import saveFile from '$lib/ts/download'
+ import type { TruncateRequest, TruncateResponse } from '$lib/types/truncate-worker'
+ import Icon from '@iconify/svelte'
+ import fileStorage from '@iconify/icons-carbon/file-storage'
+ import { FileDropzone, ProgressBar } from '@skeletonlabs/skeleton'
+ import { onDestroy, onMount } from 'svelte'
- let disableInput = false;
- let files: FileList;
- let form: HTMLFormElement;
- let worker: Worker;
- $: truncateTo = 1;
- let originalName: string;
+ let disableInput = false
+ let files: FileList
+ let form: HTMLFormElement
+ let worker: Worker
+ $: truncateTo = 1
+ let originalName: string
function onUpload() {
- disableInput = true;
- originalName = files[0].name;
+ disableInput = true
+ originalName = files[0].name
worker.postMessage({
file: files[0],
- size: truncateTo
- } as TruncateRequest);
+ size: truncateTo,
+ } as TruncateRequest)
}
onMount(async () => {
- worker = new Worker(new URL('$lib/ts/truncate.worker.ts', import.meta.url), { type: 'module' });
+ worker = new Worker(new URL('$lib/ts/truncate.worker.ts', import.meta.url), { type: 'module' })
worker.onmessage = async (e: MessageEvent<TruncateResponse>) => {
- await saveFile(e.data.file, `trunc-${originalName}`).catch((e) => console.error(e));
- disableInput = false;
- form.reset();
- truncateTo = 1;
- };
- });
+ await saveFile(e.data.file, `trunc-${originalName}`).catch((e) => console.error(e))
+ disableInput = false
+ form.reset()
+ truncateTo = 1
+ }
+ })
onDestroy(() => {
worker?.terminate()
@@ -60,7 +60,7 @@
>
<svelte:fragment slot="lead">
<div class="flex justify-center items-center">
- <Icon icon={fileStorage} width="50" />
+ <Icon icon={fileStorage} width="50" />
</div>
</svelte:fragment>
<svelte:fragment slot="meta">Drop a file here to truncate it.</svelte:fragment>