'use client' import type { FC } from 'react' import React, { useCallback, useMemo } from 'react' import { AUTO_UPDATE_STRATEGY, type AutoUpdateConfig } from './types' import Label from '../label' import StrategyPicker from './strategy-picker' import { useTranslation } from 'react-i18next' const i18nPrefix = 'plugin.autoUpdate' type Props = { payload: AutoUpdateConfig onChange: (payload: AutoUpdateConfig) => void } const AutoUpdateSetting: FC = ({ payload, onChange, }) => { const { t } = useTranslation() const { strategy_setting } = payload const strategyDescription = useMemo(() => { switch (strategy_setting) { case AUTO_UPDATE_STRATEGY.fixOnly: return t(`${i18nPrefix}.strategy.fixOnly.selectedDescription`) case AUTO_UPDATE_STRATEGY.latest: return t(`${i18nPrefix}.strategy.latest.selectedDescription`) default: return '' } }, [strategy_setting, t]) const handleChange = useCallback((key: keyof AutoUpdateConfig) => { return (value: AutoUpdateConfig[keyof AutoUpdateConfig]) => { onChange({ ...payload, [key]: value, }) } }, [payload, onChange]) return (
Updates Settings
{strategy_setting !== AUTO_UPDATE_STRATEGY.disabled && ( <>
)}
) } export default React.memo(AutoUpdateSetting)