diff --git a/materialious/src/lib/components/ComboBox.svelte b/materialious/src/lib/components/ComboBox.svelte index 0cd920a5..bb55b58a 100644 --- a/materialious/src/lib/components/ComboBox.svelte +++ b/materialious/src/lib/components/ComboBox.svelte @@ -3,7 +3,7 @@ import { mergeAttrs } from 'melt'; import { Combobox } from 'melt/builders'; - type ComboOption = { label: string; value: string }; + type ComboOption = { label: string; value: any }; let { options, diff --git a/materialious/src/lib/components/settings/Interface.svelte b/materialious/src/lib/components/settings/Interface.svelte index e0e9d0e5..9d6a14ea 100644 --- a/materialious/src/lib/components/settings/Interface.svelte +++ b/materialious/src/lib/components/settings/Interface.svelte @@ -408,12 +408,14 @@ { - return { - label: letterCase(`${caseType}`, caseType), - value: caseType as string - }; - })} + options={[ + ...titleCases.map((caseType) => { + return { + label: letterCase(`${caseType}`, caseType), + value: caseType as string + }; + }) + ]} onChange={(value) => interfaceForceCase.set(value as TitleCase)} /> diff --git a/materialious/src/lib/components/thumbnail/PlaylistThumbnail.svelte b/materialious/src/lib/components/thumbnail/PlaylistThumbnail.svelte index 0e70d92c..dcd80d6d 100644 --- a/materialious/src/lib/components/thumbnail/PlaylistThumbnail.svelte +++ b/materialious/src/lib/components/thumbnail/PlaylistThumbnail.svelte @@ -10,10 +10,9 @@ interface Props { playlist: Playlist | PlaylistPage; - disabled?: boolean; } - let { playlist, disabled = false }: Props = $props(); + let { playlist }: Props = $props(); const playlistLink = resolve('/playlist/[playlistId]', { playlistId: playlist.playlistId }); @@ -27,12 +26,7 @@ const thumbnail = new Avatar({ src: thumbnailSrc }); - + - - diff --git a/materialious/src/lib/letterCasing.ts b/materialious/src/lib/letterCasing.ts index 4031acd0..def900ba 100644 --- a/materialious/src/lib/letterCasing.ts +++ b/materialious/src/lib/letterCasing.ts @@ -1,8 +1,20 @@ import { get } from 'svelte/store'; import { interfaceForceCase } from './store'; -export type TitleCase = 'uppercase' | 'lowercase' | 'sentence case' | 'title case' | null; -export const titleCases: TitleCase[] = ['lowercase', 'uppercase', 'title case', 'sentence case']; +export type TitleCase = + | 'uppercase' + | 'lowercase' + | 'sentence case' + | 'title case' + | 'original' + | null; +export const titleCases: TitleCase[] = [ + 'original', + 'lowercase', + 'uppercase', + 'title case', + 'sentence case' +]; export function letterCase(text: string, caseTypeOverwrite?: TitleCase): string { const casing = caseTypeOverwrite ? caseTypeOverwrite : get(interfaceForceCase); diff --git a/materialious/src/lib/store.ts b/materialious/src/lib/store.ts index 28f2b4a3..075f43d2 100644 --- a/materialious/src/lib/store.ts +++ b/materialious/src/lib/store.ts @@ -214,7 +214,7 @@ export const interfaceSearchSuggestionsStore = persist( 'searchSuggestions' ); export const interfaceForceCase: Writable = persist( - writable(null), + writable('original'), createStorage(), 'forceCase' ); diff --git a/materialious/src/routes/(app)/playlists/+page.svelte b/materialious/src/routes/(app)/playlists/+page.svelte index cc02f99a..05f4970d 100644 --- a/materialious/src/routes/(app)/playlists/+page.svelte +++ b/materialious/src/routes/(app)/playlists/+page.svelte @@ -43,7 +43,7 @@
{#key playlist.playlistId} - + {/key}