import * as Linking from 'expo-linking' import { SocialButton } from '@/components' import { FieldRadioGroup } from '@/components/molecules/Field/FieldRadioGroup' import { Loader, Box, Text, Button, ScrollView, CheckboxButton, RenderComponentWithExample, } from '@/design-system' import { useBoolean, useCallback, useScreenOptions, useState, useTranslation } from '@/hooks' import { noop, showInformationToast } from '@/utils' const loaderVariants = [ { type: 'circle', headerText: 'components_screen.loader_variants.circle', }, { type: 'bubbles', headerText: 'components_screen.loader_variants.bubbles', }, { type: 'bricks', headerText: 'components_screen.loader_variants.bricks', }, { type: 'disk', headerText: 'components_screen.loader_variants.disk', }, { type: 'default', headerText: 'components_screen.loader_variants.default', }, ] as const const TestCheckbox = () => { const { t } = useTranslation() const [isChecked, setIsChecked] = useBoolean() return ( } /> ) } const AGES = ['18-30', '31-40', '41-50'] const agesMap = AGES.map((age) => ({ label: age, value: age, })) const TextRadioButtons = () => { const { t } = useTranslation() const [selectedRadio, setSelectedRadio] = useState() return ( } /> ) } export const ComponentsScreen = (): JSX.Element => { const { t } = useTranslation() useScreenOptions({ title: t('navigation.screen_titles.components'), }) const testNotification = useCallback(() => { showInformationToast({ title: t('components_screen.notification.title'), description: t('components_screen.notification.description'), onPress: () => { Linking.openURL('https://thewidlarzgroup.github.io/react-native-notificated/') }, }) }, [t]) return ( Toast: {t('components_screen.test_notification')} } /> {t('components_screen.button_variants.header')}: } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> {t('components_screen.button_variants.disabled')} } /> } /> } /> } /> } /> {t('components_screen.loader_variants.header')} {loaderVariants?.map((loader) => ( } /> ))} ) }