linkmore-design
Version:
🌈 🚀lm组件库。🚀
62 lines • 2.27 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
var _excluded = ["searchConfig", "localization"];
import React, { forwardRef, useRef } from 'react';
import LocaleReceiver from "../locale-provider/LocaleReceiver";
import Controls from "./controls";
import { DefaultLocalization } from "./localization";
import ComplexFilterRoot from "./wrapper/Root";
var ComplexFilter = /*#__PURE__*/forwardRef(function (_ref, ref) {
var _ref$searchConfig = _ref.searchConfig,
searchConfig = _ref$searchConfig === void 0 ? {} : _ref$searchConfig,
_ref$localization = _ref.localization,
localization = _ref$localization === void 0 ? {} : _ref$localization,
resetProps = _objectWithoutProperties(_ref, _excluded);
var defaultRef = useRef(null);
var defaultProps = {
dataSource: [],
// 数据源
enableSearch: true,
// 是否启用模糊查询
enableBaisc: true,
// 是否启用基础筛选
enableComplex: false,
// 是否启用高级筛选
enableCustom: false,
// 是否启用自定义筛选
enableClear: true,
// 是否展示一件清空
enableAutoString: true,
// 是否自动将筛选结构值转换为字符串
enableUnLimitedPlaceholder: true,
// 默认展示不限自定义筛选选项
size: 'middle',
// 尺寸
searchKey: 'search',
// 搜索的key值
searchConfig: _objectSpread({
relation: 'or',
fieldType: 'string',
operator: 'contains'
}, searchConfig || {}),
// 模糊搜索配置
placeholder: '',
// 搜索占位符
customRender: null,
// 自定义一级筛选Dom
localization: _objectSpread(_objectSpread({}, DefaultLocalization), localization || {})
};
return /*#__PURE__*/React.createElement(LocaleReceiver, {
componentName: "ComplexFilter"
}, function (contextLocale) {
return /*#__PURE__*/React.createElement(ComplexFilterRoot, _extends({
ref: ref || defaultRef
}, defaultProps, resetProps, {
locale: contextLocale
}));
});
});
// @ts-ignore
ComplexFilter.FilterControl = Controls;
export default ComplexFilter;