@aliretail/react-materials-components
Version:
121 lines (102 loc) • 4.85 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports["default"] = void 0;
var _select = _interopRequireDefault(require("@alifd/next/lib/select"));
var _radio = _interopRequireDefault(require("@alifd/next/lib/radio"));
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _numberPicker = _interopRequireDefault(require("@alifd/next/lib/number-picker"));
var React = _interopRequireWildcard(require("react"));
var _FormError = require("../FormError");
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
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 = (0, _FormError.withFormError)(_numberPicker["default"], '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((0, _extends2["default"])({}, value, {
time: t
}));
};
var handleUnitChange = function handleUnitChange(u) {
onChange === null || onChange === void 0 ? void 0 : onChange((0, _extends2["default"])({}, 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["default"].Group, {
value: type,
onChange: handleTypeChange
}, /*#__PURE__*/React.createElement(_radio["default"], {
value: 1
}, getStrategyItem(1).description), /*#__PURE__*/React.createElement(_radio["default"], {
value: 2
}, getStrategyItem(2).description), /*#__PURE__*/React.createElement(_radio["default"], {
value: 3
}, getStrategyItem(3).description), /*#__PURE__*/React.createElement(_radio["default"], {
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["default"], {
value: unit,
onChange: handleUnitChange,
style: {
width: 100,
marginRight: 8
}
}, /*#__PURE__*/React.createElement(_select["default"].Option, {
value: "day"
}, "\u5929")), strategy.suffix));
});
var _default = TimeoutType;
exports["default"] = _default;