diff options
Diffstat (limited to 'src/routes/updates')
| -rw-r--r-- | src/routes/updates/+page.svelte | 110 |
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" /> |