diff options
| author | Fuwn <[email protected]> | 2024-01-08 15:27:28 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-01-08 15:27:28 -0800 |
| commit | 6620bc00fdf5173ffb20a9057a4580b59410dbd7 (patch) | |
| tree | 57f149d20ce28960909bda1bba1d6fcbbd0ef515 /src/lib/Tools | |
| parent | fix(badges): loading order (diff) | |
| download | due.moe-6620bc00fdf5173ffb20a9057a4580b59410dbd7.tar.xz due.moe-6620bc00fdf5173ffb20a9057a4580b59410dbd7.zip | |
feat(tools): new tools url method
Diffstat (limited to 'src/lib/Tools')
| -rw-r--r-- | src/lib/Tools/Picker.svelte | 24 | ||||
| -rw-r--r-- | src/lib/Tools/tools.ts | 43 |
2 files changed, 67 insertions, 0 deletions
diff --git a/src/lib/Tools/Picker.svelte b/src/lib/Tools/Picker.svelte new file mode 100644 index 00000000..6ead9624 --- /dev/null +++ b/src/lib/Tools/Picker.svelte @@ -0,0 +1,24 @@ +<script lang="ts"> + import { browser } from '$app/environment'; + import { goto } from '$app/navigation'; + + export let tool: string; +</script> + +<blockquote> + <select + bind:value={tool} + on:change={() => { + if (browser) goto(`/tools/${tool}`); + }} + > + <option value="default" selected disabled hidden>Select a tool to continue</option> + <option value="wrapped">AniList Wrapped</option> + <option value="birthdays">Today's Character Birthdays</option> + <option value="sequel_spy">Sequel Spy</option> + <option value="discussions">Episode Discussion Collector</option> + <option value="random_follower">Random Follower Finder</option> + <option value="dump_profile">Dump Profile</option> + <option value="activity_history">Activity History Analyser</option> + </select> +</blockquote> diff --git a/src/lib/Tools/tools.ts b/src/lib/Tools/tools.ts new file mode 100644 index 00000000..c0e499b2 --- /dev/null +++ b/src/lib/Tools/tools.ts @@ -0,0 +1,43 @@ +export const tools: { [key: string]: { name: string; description?: string; id: string } } = { + default: { + name: 'Tools', + description: 'A collection of tools to help you get the most out of AniList.', + id: 'default' + }, + wrapped: { + name: 'AniList Wrapped & Statistics Panel', + description: + 'Instantly generate an AniList themed Wrapped for your profile, doubling as a statistics panel for your bio', + id: 'wrapped' + }, + birthdays: { + name: "Today's Character Birthdays", + description: + 'Find and display the birthdays of all characters for today, or any other day of the year', + id: 'birthdays' + }, + sequel_spy: { + name: 'Sequel Spy (Missing Prequel Finder)', + description: "Find media with prequels you haven't seen yet for any given simulcast season", + id: 'sequel_spy' + }, + discussions: { + name: 'Episode Discussion Collector', + description: 'Find and display all episode discussions for a given user', + id: 'discussions' + }, + random_follower: { + name: 'Random Follower Finder', + description: 'Find a random follower of any given user', + id: 'random_follower' + }, + dump_profile: { + name: 'Dump Profile', + description: "Dump a user's profile to JSON", + id: 'dump_profile' + }, + activity_history: { + name: 'Activity History Analyser', + id: 'activity_history' + } +}; |