nexo/apps/mattermost/app/hooks/props_from_params.ts

19 lines
577 B
TypeScript

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import {useLocalSearchParams} from 'expo-router';
import {safeParseJSON} from '@utils/helpers';
export function usePropsFromParams<T>(): T {
const params = useLocalSearchParams();
// Convert URL params to props format that existing screen expects
const props = {} as T;
Object.keys(params).forEach((key) => {
const value = safeParseJSON(params[key]);
(props as Record<string, unknown>)[key] = value;
});
return props;
}