UNPKG

@antmjs/vantui

Version:

一套适用于Taro3及React的vantui组件库

144 lines (143 loc) 5.06 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.formComponents = void 0; exports.resiterComponent = resiterComponent; exports.showComponents = showComponents; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _components = require("@tarojs/components"); var _switch = require("../switch"); var _radio = require("../radio"); var _radioGroup = require("../radio-group"); var _checkbox = require("../checkbox"); var _checkboxGroup = require("../checkbox-group"); var _slider = require("../slider"); var _rate = require("../rate"); var _stepper = require("../stepper"); var _jsxRuntime = require("react/jsx-runtime"); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } var formComponents = {}; exports.formComponents = formComponents; var defaultCompItems = [{ type: 'input', component: _components.Input, trigger: 'onInput', valueFormat: function valueFormat(e) { return e.detail.value; }, transformProps: function transformProps(props, formItemProps) { return _objectSpread({ type: 'text', placeholder: "\u8BF7\u8F93\u5165".concat(formItemProps['label']) }, props); } }, { type: 'inputNumber', component: _components.Input, trigger: 'onInput', valueFormat: function valueFormat(e) { return e.detail.value; }, transformProps: function transformProps(props, formItemProps) { return _objectSpread({ type: 'number', placeholder: "\u8BF7\u8F93\u5165".concat(formItemProps['label']) }, props); } }, { type: 'inputPrice', trigger: 'onInput', valueFormat: function valueFormat(e) { return e.detail.value; }, component: _components.Input, transformProps: function transformProps(props, formItemProps) { return _objectSpread({ type: 'number', placeholder: "\u8BF7\u8F93\u5165".concat(formItemProps['label']) }, props); }, rules: [{ rule: function rule(val, call) { var rtNumber = String(val).split('.')[1]; if (val < 0) { return call('金额必须大于0'); } else if (rtNumber && rtNumber.length > 2) { return call('小数点位数不能大于2位'); } else { return call(''); } } }] }, { type: 'switch', component: _switch.Switch, valueKey: 'checked' }, { type: 'radio', component: _radioGroup.RadioGroup, valueKey: 'value', transformProps: function transformProps(props, formItemProps) { var _formItemProps$option; return _objectSpread({ children: (_formItemProps$option = formItemProps['options']) === null || _formItemProps$option === void 0 ? void 0 : _formItemProps$option.map(function (item, index) { return /*#__PURE__*/(0, _jsxRuntime.jsx)(_radio.Radio, { name: item.value, children: item.name }, "RadioGroup_".concat(formItemProps['key'], "_").concat(index)); }) }, props); } }, { type: 'checkbox', component: _checkboxGroup.CheckboxGroup, transformProps: function transformProps(props, formItemProps) { return _objectSpread({ direction: 'horizontal', shape: 'square', children: formItemProps['options'].map(function (item, index) { return ( /*#__PURE__*/ // @ts-ignore (0, _jsxRuntime.jsx)(_checkbox.Checkbox, { name: item.value, children: item.name }, "RadioGroup_".concat(formItemProps['key'], "_").concat(index)) ); }) }, props); } }, { type: 'slider', component: _slider.Slider, transformProps: function transformProps(props) { return _objectSpread({ style: { width: '200px', marginTop: '10px' } }, props); } }, { type: 'rate', component: _rate.Rate }, { type: 'stepper', component: _stepper.Stepper }]; defaultCompItems.forEach(function (item) { resiterComponent(item); }); function resiterComponent(params) { var type = params.type; if (formComponents[type]) { console.warn("FormRender: Overwrite existing component ".concat(type)); } formComponents[type] = params; } function showComponents() { return formComponents; }