UNPKG

@form-component/common-antd-vue

Version:
139 lines (112 loc) 3.79 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); var _exportNames = { useFormSearch: true, useFormParams: true, useForm: true, setUseForm: true }; exports.setUseForm = exports.useForm = exports.useFormParams = exports.useFormSearch = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _vue = require("vue"); var _lodash = _interopRequireDefault(require("lodash")); var _base = require("./base"); Object.keys(_base).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _base[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _base[key]; } }); }); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (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 = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /*** * *搜索form表单参数逻辑 * * ***/ const useFormSearch = ({ formParams, col = 3, formState, formConfig, formItemConfig }) => { const formRef = (0, _vue.ref)(); const state = (0, _vue.reactive)({ formParams: [], formState: formState, formConfig, formItemConfig, col }); const _target = (0, _vue.reactive)({ isFlagLimit: formParams.length < 3 ? false : true }); const v = { filed: 'button', isSlotFlag: 1, id: 'btn' }; const expandFn = () => { state.formParams = _lodash.default.chunk([...formParams, v], col); }; const noExpandFn = () => { state.formParams = _lodash.default.chunk([...formParams.slice(0, 2), v], col); }; (0, _vue.provide)('formParams', _objectSpread(_objectSpread({}, (0, _vue.toRefs)(state)), {}, { noExpandFn, expandFn, formRef }, _target)); }; exports.useFormSearch = useFormSearch; const useFormParams = () => { return (0, _vue.inject)('formParams'); }; /** * 校验form表单参数逻辑设置 * **/ exports.useFormParams = useFormParams; const useForm = () => { return (0, _vue.inject)('form'); }; exports.useForm = useForm; const setUseForm = ({ formParams, col = 1, formState, formConfig, formItemConfig }) => { const formRef = (0, _vue.ref)(); // const [rules, setRules] = useState(formConfig.rules) const rules = (0, _vue.ref)(formConfig.rules); const setRules = value => { rules.value = value; }; const state = (0, _vue.reactive)({ formParams: _lodash.default.chunk([...formParams], col), formState: formState, formConfig: _objectSpread(_objectSpread({}, formConfig), {}, { rules }), formItemConfig, col // value, // setValue }); (0, _vue.provide)('form', _objectSpread(_objectSpread({}, (0, _vue.toRefs)(state)), {}, { formRef })); return { setRules, rules: rules.value }; }; exports.setUseForm = setUseForm;