Refactor useSettings hook, parse with zod schema

This commit is contained in:
Alex Gleason
2024-02-13 23:20:18 -06:00
parent b0a82a23d0
commit ffdb744d16
40 changed files with 108 additions and 92 deletions

View File

@ -10,9 +10,9 @@ interface IPinnedHostsPicker {
const PinnedHostsPicker: React.FC<IPinnedHostsPicker> = ({ host: activeHost }) => {
const settings = useSettings();
const pinnedHosts = settings.getIn(['remote_timeline', 'pinnedHosts']) as any;
const pinnedHosts = settings.remote_timeline.pinnedHosts;
if (!pinnedHosts || pinnedHosts.isEmpty()) return null;
if (!pinnedHosts.length) return null;
return (
<HStack className='mb-4' space={2}>

View File

@ -27,10 +27,10 @@ const RemoteTimeline: React.FC<IRemoteTimeline> = ({ params }) => {
const settings = useSettings();
const timelineId = 'remote';
const onlyMedia = !!settings.getIn(['remote', 'other', 'onlyMedia']);
const onlyMedia = settings.remote.other.onlyMedia;
const next = useAppSelector(state => state.timelines.get('remote')?.next);
const pinned: boolean = (settings.getIn(['remote_timeline', 'pinnedHosts']) as any).includes(instance);
const pinned = settings.remote_timeline.pinnedHosts.includes(instance);
const handleCloseClick: React.MouseEventHandler = () => {
history.push('/timeline/fediverse');