import React, { FC, useCallback, useMemo, useState } from "react"; import OrderPreferenceConfirm from "@components/OrderPreferenceConfirm"; import { SelectButton } from "@components/PlaceOrder/PlaceSelect/SelectButton"; import { TradeUnitEnum } from "@shared/types"; import clsx from "clsx"; export interface SuffixQuantityProps { base: string; settleCurrency: string; baseOn: boolean; onChangeBaseQuantity: (bool: boolean) => void; /** 仅仅使用base, 不支持value/cost切换 */ disableCost?: boolean; /** 禁止下拉手势 */ disable?: boolean; } export const SuffixQuantity: FC = props => { const { settleCurrency = "", onChangeBaseQuantity, base = "", baseOn, disableCost } = props; const [open, setOpen] = useState(false); const onClose = useCallback(() => { setOpen(false); }, []); const onOk = useCallback( (value?: string | number) => { setOpen(false); onChangeBaseQuantity?.(value === 1); }, [onChangeBaseQuantity, base] ); const _value = useMemo(() => { return baseOn ? base : settleCurrency; }, [base, settleCurrency, baseOn]); const dropCursor = useMemo(() => { return !_value || props.disable; }, [_value, props.disable]); return (
{disableCost ? ( {base} ) : ( setOpen(true)} className="flex items-center text-[14px] font-normal pr-[12px]" > {_value} )}
); };