جهت

برای مقدمه‌سازی جهت برنامه، به سادگی فیلد direction را به عنوان'ltr' یا 'rtl' در src/configs/theme.config.ts تنظیم کنید. به عنوان مثال:

export const themeConfig = {
	...
	direction: 'rtl'
}
هوک

شما می‌توانید از هوک آماده‌سازی شده ما برای دسترسی یا به‌روزرسانی جهت در یک کامپوننت استفاده کنید.

'use client'

import Button from '@/components/ui/Button'
import InputGroup from '@/components/ui/InputGroup'
import useTheme from '@/utils/hooks/useTheme'
import { THEME_ENUM } from '@/constants/theme.constant'
import type { Direction } from '@/@types/theme'

const dirList = [
    { value: THEME_ENUM.DIR_LTR, label: 'LTR' },
    { value: THEME_ENUM.DIR_RTL, label: 'RTL' },
]

const DirectionSwitcher = (props: {
    callBackClose?: () => void
}) => {

    const setDirection = useTheme((state) => state.setDirection)
    const direction = useTheme((state) => state.direction)

    const onDirChange = (val: Direction) => {
        setDirection(val)
    }

    return (
        <InputGroup size="sm">
            {dirList.map((dir) => (
                <Button
                    key={dir.value}
                    active={direction === dir.value}
                    onClick={() => onDirChange(dir.value)}
                >
                    {dir.label}
                </Button>
            ))}
        </InputGroup>
    )
}

export default DirectionSwitcher