feat: create dedicated settings page instead of creating many modals

This commit is contained in:
Sonny
2025-08-21 15:59:03 +02:00
parent c2a1d06008
commit 376e9e32c3
16 changed files with 219 additions and 71 deletions

View File

@@ -1,34 +0,0 @@
import {
COLLECTION_LIST_DISPLAYS,
LINK_LIST_DISPLAYS,
} from '#shared/lib/display_preferences';
import { AiOutlineFolder } from 'react-icons/ai';
import { IoGridOutline } from 'react-icons/io5';
import { TbList } from 'react-icons/tb';
import { ValueWithIcon } from '~/components/common/combo_list/combo_list';
const collectionListDisplayIcons = {
list: <TbList size={20} />,
inline: <AiOutlineFolder size={20} />,
} as const;
export function getCollectionListDisplayOptions(): ValueWithIcon[] {
return COLLECTION_LIST_DISPLAYS.map((display) => ({
label: display,
value: display,
icon: collectionListDisplayIcons[display],
}));
}
const linkListDisplayIcons = {
list: <TbList size={20} />,
grid: <IoGridOutline size={20} />,
} as const;
export function getLinkListDisplayOptions(): ValueWithIcon[] {
return LINK_LIST_DISPLAYS.map((display) => ({
label: display,
value: display,
icon: linkListDisplayIcons[display],
}));
}