@hw-component/form 1.3.8 → 1.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -134,7 +134,8 @@ var Index = function Index(_ref) {
134
134
  var optionValue = item.value,
135
135
  label = item.label,
136
136
  oItem = _objectWithoutProperties(item, _excluded2);
137
- var result = (filterProvider === null || filterProvider === void 0 ? void 0 : filterProvider(item)) || label;
137
+ var filterKey = filterProvider || "label";
138
+ var result = typeof filterProvider === "function" ? filterProvider === null || filterProvider === void 0 ? void 0 : filterProvider(item) : item[filterKey];
138
139
  var filter = _defineProperty({}, optionFilterProp, result);
139
140
  return /*#__PURE__*/createElement(Option, _objectSpread(_objectSpread({}, oItem), {}, {
140
141
  value: optionValue,
@@ -13,12 +13,13 @@ export interface ModeConfig {
13
13
  multiple?: ModeConfigItem;
14
14
  tags?: ModeConfigItem;
15
15
  }
16
+ type FilterProviderFn = (item: any) => string;
16
17
  export interface HSelectProps extends Omit<SelectProps, "options" | "placeholder"> {
17
18
  style?: React.CSSProperties;
18
19
  request?: PromiseFnResult<any, OptionType[]>;
19
20
  manual?: boolean;
20
21
  modeConfig?: ModeConfig;
21
- filterProvider?: (item: any) => string;
22
+ filterProvider?: FilterProviderFn | string;
22
23
  serviceSearch?: boolean;
23
24
  options?: OptionType[];
24
25
  noMatchItemRender?: RenderFn;
@@ -137,7 +137,8 @@ var Index = function Index(_ref) {
137
137
  var optionValue = item.value,
138
138
  label = item.label,
139
139
  oItem = _objectWithoutProperties(item, _excluded2);
140
- var result = (filterProvider === null || filterProvider === void 0 ? void 0 : filterProvider(item)) || label;
140
+ var filterKey = filterProvider || "label";
141
+ var result = typeof filterProvider === "function" ? filterProvider === null || filterProvider === void 0 ? void 0 : filterProvider(item) : item[filterKey];
141
142
  var filter = _defineProperty({}, optionFilterProp, result);
142
143
  return /*#__PURE__*/React.createElement(Option, _objectSpread(_objectSpread({}, oItem), {}, {
143
144
  value: optionValue,
@@ -13,12 +13,13 @@ export interface ModeConfig {
13
13
  multiple?: ModeConfigItem;
14
14
  tags?: ModeConfigItem;
15
15
  }
16
+ type FilterProviderFn = (item: any) => string;
16
17
  export interface HSelectProps extends Omit<SelectProps, "options" | "placeholder"> {
17
18
  style?: React.CSSProperties;
18
19
  request?: PromiseFnResult<any, OptionType[]>;
19
20
  manual?: boolean;
20
21
  modeConfig?: ModeConfig;
21
- filterProvider?: (item: any) => string;
22
+ filterProvider?: FilterProviderFn | string;
22
23
  serviceSearch?: boolean;
23
24
  options?: OptionType[];
24
25
  noMatchItemRender?: RenderFn;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hw-component/form",
3
- "version": "1.3.8",
3
+ "version": "1.3.9",
4
4
  "description": "基于antd二次开发",
5
5
  "repository": {
6
6
  "type": "git",
@@ -106,7 +106,8 @@ const Index: React.FC<HSelectProps> = ({
106
106
  >
107
107
  {data?.map((item) => {
108
108
  const { value: optionValue, label, ...oItem } = item;
109
- const result = filterProvider?.(item) || label;
109
+ const filterKey=filterProvider||"label";
110
+ const result = typeof filterProvider==="function"?filterProvider?.(item):item[(filterKey as string)];
110
111
  const filter = { [optionFilterProp]: result };
111
112
  return (
112
113
  <Option
@@ -14,13 +14,14 @@ export interface ModeConfig {
14
14
  multiple?: ModeConfigItem;
15
15
  tags?: ModeConfigItem;
16
16
  }
17
+ type FilterProviderFn=(item: any) => string;
17
18
  export interface HSelectProps
18
19
  extends Omit<SelectProps, "options" | "placeholder"> {
19
20
  style?: React.CSSProperties;
20
21
  request?: PromiseFnResult<any, OptionType[]>;
21
22
  manual?: boolean;
22
23
  modeConfig?: ModeConfig;
23
- filterProvider?: (item: any) => string; //筛选字段默认为label
24
+ filterProvider?:FilterProviderFn|string; //筛选字段默认为label
24
25
  serviceSearch?: boolean; //服务端搜索
25
26
  options?: OptionType[];
26
27
  noMatchItemRender?: RenderFn; //没有数据