UNPKG

@aliretail/react-materials-components

Version:
103 lines (95 loc) 3.24 kB
import _Select from "@alifd/next/es/select"; import _Radio from "@alifd/next/es/radio"; import _extends from "@babel/runtime/helpers/extends"; import _NumberPicker from "@alifd/next/es/number-picker"; import * as React from 'react'; import { withFormError } from "../FormError"; var StrategyMap = new Map([[1, { description: '允许申请售后时长', prefix: '订单签收', suffix: '内允许售后' }], [2, { description: '售后审核时长', prefix: '申请售后', suffix: '内未审核,售后单自动审核通过' }], [3, { description: '审核后发起退货时长', prefix: '退货审核通过后,买家', suffix: '内未发起退货,售后单自动关闭' }], [4, { description: '售后自动收货时长', prefix: '补寄/换货商家发货', suffix: '售后单自动收货' }]]); var getStrategyItem = function getStrategyItem(key) { return StrategyMap.get(key); }; /** 错误提示增强过后的NumberPicker */ var NumberPickerWithError = withFormError(_NumberPicker, 'TimeoutType'); var TimeoutType = /*#__PURE__*/React.forwardRef(function (props) { // eslint-disable-next-line react/prop-types var value = props.value, onChange = props.onChange; var _ref = value || {}, type = _ref.type, time = _ref.time, unit = _ref.unit; var handleTypeChange = function handleTypeChange(t) { onChange === null || onChange === void 0 ? void 0 : onChange({ time: undefined, type: t, unit: unit || 'day' }); }; var handleTimeChange = function handleTimeChange(t) { onChange === null || onChange === void 0 ? void 0 : onChange(_extends({}, value, { time: t })); }; var handleUnitChange = function handleUnitChange(u) { onChange === null || onChange === void 0 ? void 0 : onChange(_extends({}, value, { unit: u })); }; var strategy = getStrategyItem(type); return /*#__PURE__*/React.createElement("div", { className: "aliretail-timeout-type" }, /*#__PURE__*/React.createElement("div", { className: "aliretail-timeout-type-radio" }, /*#__PURE__*/React.createElement(_Radio.Group, { value: type, onChange: handleTypeChange }, /*#__PURE__*/React.createElement(_Radio, { value: 1 }, getStrategyItem(1).description), /*#__PURE__*/React.createElement(_Radio, { value: 2 }, getStrategyItem(2).description), /*#__PURE__*/React.createElement(_Radio, { value: 3 }, getStrategyItem(3).description), /*#__PURE__*/React.createElement(_Radio, { value: 4 }, getStrategyItem(4).description))), strategy && /*#__PURE__*/React.createElement("div", { className: "aliretail-timeout-type-inputs" }, strategy.prefix, /*#__PURE__*/React.createElement(NumberPickerWithError, { rules: [{ max: 100, min: 50 }], value: time, onChange: handleTimeChange, placeholder: "\u8BF7\u8F93\u5165", style: { width: 120, margin: '0 8px' } }), /*#__PURE__*/React.createElement(_Select, { value: unit, onChange: handleUnitChange, style: { width: 100, marginRight: 8 } }, /*#__PURE__*/React.createElement(_Select.Option, { value: "day" }, "\u5929")), strategy.suffix)); }); export default TimeoutType;