aboutsummaryrefslogtreecommitdiff
path: root/src/routes/updates
diff options
context:
space:
mode:
authorFuwn <[email protected]>2026-03-01 16:04:11 -0800
committerFuwn <[email protected]>2026-03-01 16:04:11 -0800
commit48f0c30d47d62e4f35706edb93a1bb2f97eba14c (patch)
tree44866d7a61adfdf01a780e0108c370294d3db78b /src/routes/updates
parentchore(biome): re-enable useAltText rule (diff)
downloaddue.moe-48f0c30d47d62e4f35706edb93a1bb2f97eba14c.tar.xz
due.moe-48f0c30d47d62e4f35706edb93a1bb2f97eba14c.zip
chore(biome): enable svelte formatting
Diffstat (limited to 'src/routes/updates')
-rw-r--r--src/routes/updates/+page.svelte110
1 files changed, 55 insertions, 55 deletions
diff --git a/src/routes/updates/+page.svelte b/src/routes/updates/+page.svelte
index a08e4966..ca13ee35 100644
--- a/src/routes/updates/+page.svelte
+++ b/src/routes/updates/+page.svelte
@@ -1,59 +1,59 @@
<script lang="ts">
- /* eslint svelte/no-at-html-tags: "off" */
-
- import { browser } from '$app/environment';
- import HeadTitle from '$lib/Home/HeadTitle.svelte';
- import Skeleton from '$lib/Loading/Skeleton.svelte';
- import { createHeightObserver } from '$lib/Utility/html';
- import root from '$lib/Utility/root';
- import { onDestroy, onMount } from 'svelte';
-
- let feed: { items: { title: string; link: string; content: string }[] } | null | undefined =
- undefined;
- let novelFeed:
- | {
- data: {
- items: { srcurl: string; postfix?: string; chapter: number; series: { name: string } }[];
- };
- }
- | undefined = undefined;
- let startTime: number;
- let mangaEndTime: number;
- let novelEndTime: number;
- let directLink = browser ? new URLSearchParams(window.location.search).has('d') : false;
- let removeHeightObserver: (() => void) | undefined;
-
- onMount(async () => {
- removeHeightObserver = createHeightObserver(false);
-
- startTime = performance.now();
- novelFeed = await (await fetch(root('/api/updates/all-novels'))).json();
- novelEndTime = performance.now() - startTime;
- startTime = performance.now();
- feed = await (await fetch(root('/api/updates/manga'))).json();
- mangaEndTime = performance.now() - startTime;
- });
-
- onDestroy(() => removeHeightObserver?.());
-
- const reformatChapter = (title: string) =>
- title
- .replace(/\[.*?\]\s/, '')
- .replace(/c\.Oneshot/, 'Oneshot')
- .replace(/c\.(\d+-\d+)/, 'Ch. $1')
- .replace(/v\.(\d+)\s/, 'Vol. $1 ')
- .replace(/c\.(\d+)/, 'Ch. $1');
-
- const clipTitle = (title: string) =>
- title
- .replace(/(Vol\. \d+ )?Ch\. \d+(-\d+(\.\d+)?)?$/, '')
- .replace(/\? ~.*$/, '')
- .trim();
-
- // const italicTitle = (title: string) =>
- // title.replace(/^(.*?) (Vol\.|Ch\.|\bOneshot\b)/, '<i>$1</i> $2');
-
- const chapterTitle = (title: string) => title.replace(/^(.*?) (Vol\.|Ch\.|\bOneshot\b)/, '$2');
+/* eslint svelte/no-at-html-tags: "off" */
+
+import { browser } from '$app/environment';
+import HeadTitle from '$lib/Home/HeadTitle.svelte';
+import Skeleton from '$lib/Loading/Skeleton.svelte';
+import { createHeightObserver } from '$lib/Utility/html';
+import root from '$lib/Utility/root';
+import { onDestroy, onMount } from 'svelte';
+
+let feed: { items: { title: string; link: string; content: string }[] } | null | undefined =
+ undefined;
+let novelFeed:
+ | {
+ data: {
+ items: { srcurl: string; postfix?: string; chapter: number; series: { name: string } }[];
+ };
+ }
+ | undefined = undefined;
+let startTime: number;
+let mangaEndTime: number;
+let novelEndTime: number;
+let directLink = browser ? new URLSearchParams(window.location.search).has('d') : false;
+let removeHeightObserver: (() => void) | undefined;
+
+onMount(async () => {
+ removeHeightObserver = createHeightObserver(false);
+
+ startTime = performance.now();
+ novelFeed = await (await fetch(root('/api/updates/all-novels'))).json();
+ novelEndTime = performance.now() - startTime;
+ startTime = performance.now();
+ feed = await (await fetch(root('/api/updates/manga'))).json();
+ mangaEndTime = performance.now() - startTime;
+});
+
+onDestroy(() => removeHeightObserver?.());
+
+const reformatChapter = (title: string) =>
+ title
+ .replace(/\[.*?\]\s/, '')
+ .replace(/c\.Oneshot/, 'Oneshot')
+ .replace(/c\.(\d+-\d+)/, 'Ch. $1')
+ .replace(/v\.(\d+)\s/, 'Vol. $1 ')
+ .replace(/c\.(\d+)/, 'Ch. $1');
+
+const clipTitle = (title: string) =>
+ title
+ .replace(/(Vol\. \d+ )?Ch\. \d+(-\d+(\.\d+)?)?$/, '')
+ .replace(/\? ~.*$/, '')
+ .trim();
+
+// const italicTitle = (title: string) =>
+// title.replace(/^(.*?) (Vol\.|Ch\.|\bOneshot\b)/, '<i>$1</i> $2');
+
+const chapterTitle = (title: string) => title.replace(/^(.*?) (Vol\.|Ch\.|\bOneshot\b)/, '$2');
</script>
<HeadTitle route="Updates" path="/updates" />