import classNames from 'classnames' import Segment from '@/components/ui/Segment' import SegmentItemOption from '@/components/shared/SegmentItemOption' import DoubleSidedImage from '@/components/shared/DoubleSidedImage' import { FaCheckCircle } from 'react-icons/fa' import useThemeClass from '@/utils/hooks/useThemeClass' import { useStoreState, useStoreActions } from '@/store' import { LAYOUT_TYPE_CLASSIC, LAYOUT_TYPE_MODERN, LAYOUT_TYPE_STACKED_SIDE, LAYOUT_TYPE_SIMPLE, LAYOUT_TYPE_DECKED, LAYOUT_TYPE_BLANK, } from '@/constants/theme.constant' import type { LayoutType } from '@/@types/theme' import { useLocalization } from '@/utils/hooks/useLocalization' const layouts = [ { value: LAYOUT_TYPE_CLASSIC, label: 'Classic', src: '/img/thumbs/layouts/classic.jpg', srcDark: '/img/thumbs/layouts/classic-dark.jpg', }, { value: LAYOUT_TYPE_MODERN, label: 'Modern', src: '/img/thumbs/layouts/modern.jpg', srcDark: '/img/thumbs/layouts/modern-dark.jpg', }, { value: LAYOUT_TYPE_STACKED_SIDE, label: 'Stacked Side', src: '/img/thumbs/layouts/stackedSide.jpg', srcDark: '/img/thumbs/layouts/stackedSide-dark.jpg', }, { value: LAYOUT_TYPE_SIMPLE, label: 'Simple', src: '/img/thumbs/layouts/simple.jpg', srcDark: '/img/thumbs/layouts/simple-dark.jpg', }, { value: LAYOUT_TYPE_DECKED, label: 'Decked', src: '/img/thumbs/layouts/decked.jpg', srcDark: '/img/thumbs/layouts/decked-dark.jpg', }, { value: LAYOUT_TYPE_BLANK, label: 'Blank', src: '/img/thumbs/layouts/blank.jpg', srcDark: '/img/thumbs/layouts/blank-dark.jpg', }, ] const LayoutSwitcher = () => { const type = useStoreState((state) => state.theme.layout.type) const { setLayout } = useStoreActions((actions) => actions.theme) const onLayoutSelect = (val: LayoutType) => { setLayout(val) } const { textTheme } = useThemeClass() const { translate } = useLocalization() return (