@hw-component/form 1.6.2 → 1.6.4

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.
Files changed (33) hide show
  1. package/.eslintcache +1 -1
  2. package/es/Select/hooks/changeHooks.js +34 -143
  3. package/es/Select/hooks/norHooks.d.ts +6 -4
  4. package/es/Select/hooks/norHooks.js +137 -29
  5. package/es/Select/hooks/util.d.ts +10 -0
  6. package/es/Select/hooks/util.js +138 -0
  7. package/es/Select/index.js +17 -12
  8. package/es/Select/modal.d.ts +11 -2
  9. package/lib/Select/hooks/changeHooks.js +35 -144
  10. package/lib/Select/hooks/norHooks.d.ts +6 -4
  11. package/lib/Select/hooks/norHooks.js +136 -28
  12. package/lib/Select/hooks/util.d.ts +10 -0
  13. package/lib/Select/hooks/util.js +139 -0
  14. package/lib/Select/index.js +16 -11
  15. package/lib/Select/modal.d.ts +11 -2
  16. package/package.json +1 -1
  17. package/src/components/DialogForm/DrawerForm/index.tsx +1 -1
  18. package/src/components/DialogForm/ModalForm.tsx +1 -1
  19. package/src/components/Form/hooks/useDefaultRender.tsx +1 -1
  20. package/src/components/Form/hooks/useHForm.ts +1 -1
  21. package/src/components/Form/index.tsx +4 -4
  22. package/src/components/Input/ButtonInput.tsx +2 -2
  23. package/src/components/Select/hooks/changeHooks.tsx +30 -107
  24. package/src/components/Select/hooks/norHooks.ts +107 -17
  25. package/src/components/Select/hooks/util.ts +109 -0
  26. package/src/components/Select/index.tsx +7 -2
  27. package/src/components/Select/modal.ts +14 -2
  28. package/src/components/Submit/components.tsx +7 -3
  29. package/src/components/Upload/hooks/customRequest.ts +6 -6
  30. package/src/pages/DrawerForm/index.tsx +9 -9
  31. package/src/pages/Form/index.tsx +22 -29
  32. package/src/pages/Select/index.tsx +25 -3
  33. package/src/pages/Upload/index.tsx +16 -13
@@ -3,7 +3,6 @@ import type React from "react";
3
3
  import type { PromiseFnResult } from "../modal";
4
4
  import type { addFormatItemModal, argsFn, DispatchModal } from "../Form/modal";
5
5
  export type OptionType = Record<string, any>;
6
- export type PartialHSelectProps = Partial<HSelectProps>;
7
6
  export type RenderFn = (data: OptionType) => React.ReactNode;
8
7
  interface ModeConfigItem {
9
8
  icon?: React.ReactNode | null;
@@ -14,9 +13,17 @@ export interface ModeConfig {
14
13
  tags?: ModeConfigItem;
15
14
  }
16
15
  type FilterProviderFn = (item: any) => string;
16
+ type OptionsListType = OptionType[];
17
+ export interface OptionsPageResultModal {
18
+ page: number;
19
+ size: number;
20
+ data: OptionsListType;
21
+ total: number;
22
+ }
23
+ export type OptionsDataType = OptionsListType | OptionsPageResultModal;
17
24
  export interface HSelectProps extends Omit<SelectProps, "options" | "placeholder"> {
18
25
  style?: React.CSSProperties;
19
- request?: PromiseFnResult<any, OptionType[]>;
26
+ request?: PromiseFnResult<any, OptionsDataType>;
20
27
  manual?: boolean;
21
28
  modeConfig?: ModeConfig;
22
29
  filterProvider?: FilterProviderFn | string;
@@ -28,9 +35,11 @@ export interface HSelectProps extends Omit<SelectProps, "options" | "placeholder
28
35
  addFormat?: (format: Record<string, addFormatItemModal>) => void;
29
36
  placeholder?: string;
30
37
  dispatch?: DispatchModal;
38
+ isList?: boolean;
31
39
  }
32
40
  export interface FilterDataModal {
33
41
  value: any;
34
42
  index: number;
35
43
  }
44
+ export type PartialHSelectProps = Partial<HSelectProps>;
36
45
  export {};
@@ -1,151 +1,11 @@
1
1
  'use strict';
2
2
 
3
- require('core-js/modules/es.object.keys.js');
4
- require('core-js/modules/es.symbol.js');
5
- require('core-js/modules/es.array.filter.js');
6
- require('core-js/modules/es.object.get-own-property-descriptor.js');
7
- require('core-js/modules/es.object.get-own-property-descriptors.js');
8
3
  var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
9
- var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
10
- var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
11
- require('core-js/modules/es.array.find-index.js');
12
- require('core-js/modules/es.object.to-string.js');
13
- require('core-js/modules/web.dom-collections.for-each.js');
14
4
  require('core-js/modules/es.array.map.js');
15
5
  var React = require('react');
16
6
  var utils = require('../utils.js');
7
+ var util = require('./util.js');
17
8
 
18
- var _excluded = ["index"],
19
- _excluded2 = ["index"];
20
- 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; }
21
- 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) { _defineProperty(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; }
22
- var single = function single(_ref) {
23
- var options = _ref.options,
24
- value = _ref.value,
25
- noMatchItemRender = _ref.noMatchItemRender;
26
- var newOptions = options || [];
27
- var index = newOptions.findIndex(function (item) {
28
- return item.value === value;
29
- });
30
- if (index !== -1) {
31
- var label = newOptions[index].label;
32
- return {
33
- value: value,
34
- label: label
35
- };
36
- }
37
- return {
38
- value: value,
39
- label: (noMatchItemRender === null || noMatchItemRender === void 0 ? void 0 : noMatchItemRender({
40
- value: value
41
- })) || value
42
- };
43
- };
44
- var findNewValInOldVal = function findNewValInOldVal(val, oldVal) {
45
- if (!oldVal) {
46
- return -1;
47
- }
48
- return oldVal.findIndex(function (item) {
49
- return item.value === val;
50
- });
51
- };
52
- var sourceDataProvider = function sourceDataProvider(_ref2, oldVal) {
53
- _ref2.options;
54
- var value = _ref2.value;
55
- var oldData = [];
56
- var newData = [];
57
- value.forEach(function (item, i) {
58
- var index = findNewValInOldVal(item, oldVal);
59
- if (index === -1) {
60
- newData.push({
61
- value: item,
62
- index: i
63
- });
64
- return;
65
- }
66
- var newVal = oldVal === null || oldVal === void 0 ? void 0 : oldVal[index];
67
- oldData.push(_objectSpread(_objectSpread({}, newVal), {}, {
68
- index: i
69
- }));
70
- });
71
- return {
72
- oldData: oldData,
73
- newData: newData
74
- };
75
- };
76
- var resultProvider = function resultProvider(newData, oldData, value) {
77
- var newResult = new Array(value.length);
78
- oldData.forEach(function (item) {
79
- var index = item.index,
80
- val = _objectWithoutProperties(item, _excluded);
81
- newResult[index] = _objectSpread({}, val);
82
- });
83
- newData.forEach(function (item) {
84
- var index = item.index,
85
- val = _objectWithoutProperties(item, _excluded2);
86
- newResult[index] = _objectSpread({}, val);
87
- });
88
- return newResult;
89
- };
90
- var multiple = function multiple(_ref3, oldVal) {
91
- var options = _ref3.options,
92
- value = _ref3.value,
93
- noMatchItemRender = _ref3.noMatchItemRender;
94
- var _sourceDataProvider = sourceDataProvider({
95
- options: options,
96
- value: value
97
- }, oldVal),
98
- newData = _sourceDataProvider.newData,
99
- oldData = _sourceDataProvider.oldData;
100
- var newMatchVal = newData.map(function (item) {
101
- var itemVal = item.value,
102
- index = item.index;
103
- var newItem = single({
104
- options: options,
105
- value: itemVal,
106
- noMatchItemRender: noMatchItemRender
107
- });
108
- return _objectSpread(_objectSpread({}, newItem), {}, {
109
- index: index
110
- });
111
- });
112
- return resultProvider(newMatchVal, oldData, value);
113
- };
114
- var tag = function tag(_ref4, oldVal) {
115
- var options = _ref4.options,
116
- value = _ref4.value;
117
- var _sourceDataProvider2 = sourceDataProvider({
118
- options: options,
119
- value: value
120
- }, oldVal),
121
- newData = _sourceDataProvider2.newData,
122
- oldData = _sourceDataProvider2.oldData;
123
- return resultProvider(newData, oldData, value);
124
- };
125
- var matchNotFind = function matchNotFind(_ref5, oldVale) {
126
- var options = _ref5.options,
127
- value = _ref5.value,
128
- mode = _ref5.mode,
129
- noMatchItemRender = _ref5.noMatchItemRender;
130
- if (!mode) {
131
- return single({
132
- options: options,
133
- value: value,
134
- noMatchItemRender: noMatchItemRender
135
- });
136
- }
137
- if (mode === "multiple") {
138
- return multiple({
139
- options: options,
140
- value: value,
141
- noMatchItemRender: noMatchItemRender
142
- }, oldVale) || [];
143
- }
144
- return tag({
145
- options: options,
146
- value: value
147
- }, oldVale);
148
- };
149
9
  var useValueChange = function useValueChange(params) {
150
10
  var labelInValue = params.labelInValue,
151
11
  onChange = params.onChange,
@@ -191,12 +51,43 @@ var useValueChange = function useValueChange(params) {
191
51
  }
192
52
  if (options) {
193
53
  setVal(function (oldVale) {
194
- return matchNotFind(params, oldVale);
54
+ return util.matchNotFind(params, oldVale);
55
+ });
56
+ }
57
+ }, [value, options, mode]);
58
+ var itemMaker = function itemMaker(item) {
59
+ var itemVal = item.value,
60
+ label = item.label,
61
+ noMatch = item.noMatch;
62
+ if (noMatch) {
63
+ return {
64
+ value: itemVal,
65
+ label: (noMatchItemRender === null || noMatchItemRender === void 0 ? void 0 : noMatchItemRender({
66
+ value: value
67
+ })) || value
68
+ };
69
+ }
70
+ return {
71
+ value: itemVal,
72
+ label: label
73
+ };
74
+ };
75
+ var valuesMaker = function valuesMaker() {
76
+ if (labelInValue) {
77
+ return val;
78
+ }
79
+ if (!val) {
80
+ return val;
81
+ }
82
+ if (Array.isArray(val)) {
83
+ return val.map(function (item) {
84
+ return itemMaker(item);
195
85
  });
196
86
  }
197
- }, [value, options, mode, noMatchItemRender]);
87
+ return itemMaker(val);
88
+ };
198
89
  return {
199
- val: val,
90
+ val: valuesMaker(),
200
91
  change: change
201
92
  };
202
93
  };
@@ -1,16 +1,18 @@
1
- import type { OptionType, PartialHSelectProps } from "@/components/Select/modal";
1
+ import type { OptionType, PartialHSelectProps } from "../modal";
2
+ import { OptionsPageResultModal } from "../modal";
2
3
  interface ParamsModal {
3
4
  options?: OptionType[];
4
5
  params?: any;
5
6
  }
6
- export declare const useOptionReq: ({ manual, request, options, serviceSearch, showSearch, onSearch: propsOnSearch, dispatch, }: PartialHSelectProps) => {
7
- run: (requestParams?: any) => Promise<OptionType[] | undefined>;
7
+ export declare const useSelectReq: ({ manual, request, options, serviceSearch, showSearch, onSearch: propsOnSearch, dispatch, isList, }: PartialHSelectProps) => {
8
+ run: (requestParams?: any, type?: any) => Promise<OptionType[] | OptionsPageResultModal | undefined>;
8
9
  loading: boolean;
9
10
  error: Error | undefined;
10
11
  data: OptionType[] | undefined;
11
12
  onSearch: ((value: string) => void) | undefined;
12
13
  mathShowSearch: boolean | undefined;
13
- reload: (reloadParams?: ParamsModal) => void | Promise<OptionType[] | undefined>;
14
+ reload: (reloadParams?: ParamsModal) => void | Promise<OptionType[] | OptionsPageResultModal | undefined>;
15
+ onPopupScroll: ((e: any) => void) | undefined;
14
16
  };
15
17
  export declare const useFilterOption: ({ filterOption, serviceSearch, }: PartialHSelectProps) => boolean | import("rc-select/lib/Select").FilterFunc<import("rc-select/lib/Select").DefaultOptionType> | undefined;
16
18
  export {};
@@ -1,58 +1,123 @@
1
1
  'use strict';
2
2
 
3
+ require('core-js/modules/es.object.keys.js');
4
+ require('core-js/modules/es.symbol.js');
5
+ require('core-js/modules/es.array.filter.js');
6
+ require('core-js/modules/es.object.get-own-property-descriptor.js');
7
+ require('core-js/modules/web.dom-collections.for-each.js');
8
+ require('core-js/modules/es.object.get-own-property-descriptors.js');
9
+ var _toConsumableArray = require('@babel/runtime-corejs3/helpers/toConsumableArray');
3
10
  var _asyncToGenerator = require('@babel/runtime-corejs3/helpers/asyncToGenerator');
11
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
4
12
  var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
5
13
  var _regeneratorRuntime = require('@babel/runtime-corejs3/regenerator');
6
14
  require('core-js/modules/es.array.iterator.js');
7
15
  require('core-js/modules/es.object.to-string.js');
8
16
  require('core-js/modules/web.dom-collections.iterator.js');
9
17
  require('core-js/modules/es.promise.js');
18
+ require('core-js/modules/es.array.concat.js');
10
19
  var React = require('react');
11
20
  var ahooks = require('ahooks');
12
21
  var index = require('../../Form/Context/index.js');
13
22
 
14
- var useOptionReq = function useOptionReq(_ref) {
15
- var manual = _ref.manual,
16
- request = _ref.request,
17
- options = _ref.options,
18
- serviceSearch = _ref.serviceSearch,
19
- showSearch = _ref.showSearch,
20
- propsOnSearch = _ref.onSearch,
23
+ 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; }
24
+ 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) { _defineProperty(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; }
25
+ var useSaveParams = function useSaveParams() {
26
+ var saveParams = React.useMemo(function () {
27
+ return {
28
+ listParams: {
29
+ isEnd: false,
30
+ page: 1,
31
+ size: 100,
32
+ reqParams: {}
33
+ }
34
+ };
35
+ }, []);
36
+ var resetSaveParams = function resetSaveParams() {
37
+ saveParams.listParams = {
38
+ isEnd: false,
39
+ page: 1,
40
+ size: 100,
41
+ reqParams: {}
42
+ };
43
+ };
44
+ var nextPage = function nextPage(data) {
45
+ var size = data.size,
46
+ total = data.total,
47
+ page = data.page;
48
+ saveParams.listParams.size = size;
49
+ saveParams.listParams.page = page + 1;
50
+ saveParams.listParams.isEnd = size * page >= total;
51
+ };
52
+ return {
53
+ saveParams: saveParams,
54
+ resetSaveParams: resetSaveParams,
55
+ nextPage: nextPage
56
+ };
57
+ };
58
+ var useOptionsRequest = function useOptionsRequest(_ref) {
59
+ var request = _ref.request,
21
60
  _ref$dispatch = _ref.dispatch,
22
- dispatch = _ref$dispatch === void 0 ? {} : _ref$dispatch;
23
- var dispatchManual = dispatch.manual;
61
+ dispatch = _ref$dispatch === void 0 ? {} : _ref$dispatch,
62
+ manual = _ref.manual,
63
+ options = _ref.options,
64
+ isList = _ref.isList;
65
+ var _useSaveParams = useSaveParams(),
66
+ saveParams = _useSaveParams.saveParams,
67
+ resetSaveParams = _useSaveParams.resetSaveParams,
68
+ nextPage = _useSaveParams.nextPage;
24
69
  var _useFormContext = index.useFormContext(),
25
70
  form = _useFormContext.form;
71
+ var dispatchManual = dispatch.manual;
26
72
  var _useState = React.useState(),
27
73
  _useState2 = _slicedToArray(_useState, 2),
28
74
  data = _useState2[0],
29
75
  setData = _useState2[1];
76
+ var paramsProvider = function paramsProvider(params) {
77
+ if (isList) {
78
+ var page = saveParams.listParams.page;
79
+ var size = saveParams.listParams.size;
80
+ return _objectSpread(_objectSpread({}, params), {}, {
81
+ page: page,
82
+ size: size
83
+ });
84
+ }
85
+ return params;
86
+ };
30
87
  var _useRequest = ahooks.useRequest( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
31
88
  var requestParams,
89
+ type,
32
90
  _requestParams$params,
33
91
  params,
34
92
  values,
35
- _requestParams$type,
36
- type,
37
93
  formData,
38
94
  _args = arguments;
39
95
  return _regeneratorRuntime.wrap(function _callee$(_context) {
40
96
  while (1) switch (_context.prev = _context.next) {
41
97
  case 0:
42
98
  requestParams = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
43
- _requestParams$params = requestParams.params, params = _requestParams$params === void 0 ? {} : _requestParams$params, values = requestParams.values, _requestParams$type = requestParams.type, type = _requestParams$type === void 0 ? "init" : _requestParams$type;
99
+ type = _args.length > 1 && _args[1] !== undefined ? _args[1] : "init";
100
+ _requestParams$params = requestParams.params, params = _requestParams$params === void 0 ? saveParams.listParams.reqParams : _requestParams$params, values = requestParams.values;
44
101
  formData = values || (form === null || form === void 0 ? void 0 : form.getFieldsValue());
45
102
  if (type === "init") {
103
+ resetSaveParams();
46
104
  setData(undefined);
47
105
  }
106
+ saveParams.listParams.reqParams = params;
107
+ if (!(isList && saveParams.listParams.isEnd)) {
108
+ _context.next = 8;
109
+ break;
110
+ }
111
+ return _context.abrupt("return", data);
112
+ case 8:
48
113
  if (!request) {
49
- _context.next = 6;
114
+ _context.next = 10;
50
115
  break;
51
116
  }
52
- return _context.abrupt("return", request(params, formData));
53
- case 6:
117
+ return _context.abrupt("return", request(paramsProvider(params), formData));
118
+ case 10:
54
119
  return _context.abrupt("return", Promise.resolve(options));
55
- case 7:
120
+ case 11:
56
121
  case "end":
57
122
  return _context.stop();
58
123
  }
@@ -61,16 +126,53 @@ var useOptionReq = function useOptionReq(_ref) {
61
126
  manual: dispatchManual === false ? true : manual,
62
127
  debounceInterval: 300,
63
128
  onSuccess: function onSuccess(resultData) {
64
- setData(resultData);
129
+ if (Array.isArray(resultData) || !resultData) {
130
+ return setData(resultData);
131
+ }
132
+ var oldData = data || [];
133
+ var resultOption = resultData.data;
134
+ var op = resultOption || [];
135
+ nextPage(resultData);
136
+ setData([].concat(_toConsumableArray(oldData), _toConsumableArray(op)));
65
137
  }
66
138
  }),
67
139
  run = _useRequest.run,
68
140
  loading = _useRequest.loading,
69
141
  error = _useRequest.error;
142
+ return {
143
+ loading: loading,
144
+ run: run,
145
+ error: error,
146
+ data: data,
147
+ setData: setData
148
+ };
149
+ };
150
+ var useSelectReq = function useSelectReq(_ref3) {
151
+ var manual = _ref3.manual,
152
+ request = _ref3.request,
153
+ options = _ref3.options,
154
+ serviceSearch = _ref3.serviceSearch,
155
+ showSearch = _ref3.showSearch,
156
+ propsOnSearch = _ref3.onSearch,
157
+ _ref3$dispatch = _ref3.dispatch,
158
+ dispatch = _ref3$dispatch === void 0 ? {} : _ref3$dispatch,
159
+ isList = _ref3.isList;
160
+ var _useOptionsRequest = useOptionsRequest({
161
+ request: request,
162
+ dispatch: dispatch,
163
+ manual: manual,
164
+ options: options,
165
+ isList: isList
166
+ }),
167
+ run = _useOptionsRequest.run,
168
+ loading = _useOptionsRequest.loading,
169
+ error = _useOptionsRequest.error,
170
+ data = _useOptionsRequest.data,
171
+ setData = _useOptionsRequest.setData;
70
172
  var reload = function reload(reloadParams) {
71
- var _ref3 = reloadParams || {},
72
- changeOpts = _ref3.options,
73
- params = _ref3.params;
173
+ var _ref4 = reloadParams || {},
174
+ changeOpts = _ref4.options,
175
+ params = _ref4.params;
74
176
  if (changeOpts) {
75
177
  return setData(changeOpts);
76
178
  }
@@ -94,6 +196,13 @@ var useOptionReq = function useOptionReq(_ref) {
94
196
  setData(options);
95
197
  }
96
198
  }, [options]);
199
+ var onPopupScroll = function onPopupScroll(e) {
200
+ var target = e.target;
201
+ var changeTarget = target;
202
+ if (changeTarget.scrollTop + changeTarget.offsetHeight === changeTarget.scrollHeight) {
203
+ run({}, "page");
204
+ }
205
+ };
97
206
  var mathShowSearch = showSearch || serviceSearch;
98
207
  return {
99
208
  run: run,
@@ -102,20 +211,19 @@ var useOptionReq = function useOptionReq(_ref) {
102
211
  data: data,
103
212
  onSearch: mathShowSearch ? onSearch : propsOnSearch,
104
213
  mathShowSearch: showSearch || serviceSearch,
105
- reload: reload
214
+ reload: reload,
215
+ onPopupScroll: isList ? onPopupScroll : undefined
106
216
  };
107
217
  };
108
- var useFilterOption = function useFilterOption(_ref4) {
109
- var filterOption = _ref4.filterOption,
110
- serviceSearch = _ref4.serviceSearch;
218
+ var useFilterOption = function useFilterOption(_ref5) {
219
+ var filterOption = _ref5.filterOption,
220
+ serviceSearch = _ref5.serviceSearch;
111
221
  if (serviceSearch) {
112
- return function () {
113
- return true;
114
- };
222
+ return false;
115
223
  }
116
224
  return filterOption;
117
225
  };
118
226
 
119
227
  exports.useFilterOption = useFilterOption;
120
- exports.useOptionReq = useOptionReq;
228
+ exports.useSelectReq = useSelectReq;
121
229
  // powered by h
@@ -0,0 +1,10 @@
1
+ import { OptionType, PartialHSelectProps } from "@/components/Select/modal";
2
+ export declare const matchNotFind: ({ options, value, mode }: PartialHSelectProps, oldVale?: OptionType[]) => any[] | {
3
+ value: any;
4
+ label: any;
5
+ noMatch?: undefined;
6
+ } | {
7
+ value: any;
8
+ label: any;
9
+ noMatch: boolean;
10
+ };
@@ -0,0 +1,139 @@
1
+ 'use strict';
2
+
3
+ require('core-js/modules/es.object.keys.js');
4
+ require('core-js/modules/es.symbol.js');
5
+ require('core-js/modules/es.array.filter.js');
6
+ require('core-js/modules/es.object.get-own-property-descriptor.js');
7
+ require('core-js/modules/es.object.get-own-property-descriptors.js');
8
+ var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
9
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
10
+ require('core-js/modules/es.array.find-index.js');
11
+ require('core-js/modules/es.object.to-string.js');
12
+ require('core-js/modules/web.dom-collections.for-each.js');
13
+ require('core-js/modules/es.array.map.js');
14
+
15
+ var _excluded = ["index"],
16
+ _excluded2 = ["index"];
17
+ 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; }
18
+ 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) { _defineProperty(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; }
19
+ var findNewValInOldVal = function findNewValInOldVal(val, oldVal) {
20
+ if (!oldVal) {
21
+ return -1;
22
+ }
23
+ return oldVal.findIndex(function (item) {
24
+ return item.value === val;
25
+ });
26
+ };
27
+ var sourceDataProvider = function sourceDataProvider(_ref, oldVal) {
28
+ var value = _ref.value;
29
+ var oldData = [];
30
+ var newData = [];
31
+ value.forEach(function (item, i) {
32
+ var index = findNewValInOldVal(item, oldVal);
33
+ if (index === -1) {
34
+ newData.push({
35
+ value: item,
36
+ index: i
37
+ });
38
+ return;
39
+ }
40
+ var newVal = oldVal === null || oldVal === void 0 ? void 0 : oldVal[index];
41
+ oldData.push(_objectSpread(_objectSpread({}, newVal), {}, {
42
+ index: i
43
+ }));
44
+ });
45
+ return {
46
+ oldData: oldData,
47
+ newData: newData
48
+ };
49
+ };
50
+ var single = function single(_ref2) {
51
+ var options = _ref2.options,
52
+ value = _ref2.value;
53
+ var newOptions = options || [];
54
+ var index = newOptions.findIndex(function (item) {
55
+ return item.value === value;
56
+ });
57
+ if (index !== -1) {
58
+ var label = newOptions[index].label;
59
+ return {
60
+ value: value,
61
+ label: label
62
+ };
63
+ }
64
+ return {
65
+ value: value,
66
+ label: value,
67
+ noMatch: true
68
+ };
69
+ };
70
+ var resultProvider = function resultProvider(newData, oldData, value) {
71
+ var newResult = new Array(value.length);
72
+ oldData.forEach(function (item) {
73
+ var index = item.index,
74
+ val = _objectWithoutProperties(item, _excluded);
75
+ newResult[index] = _objectSpread({}, val);
76
+ });
77
+ newData.forEach(function (item) {
78
+ var index = item.index,
79
+ val = _objectWithoutProperties(item, _excluded2);
80
+ newResult[index] = _objectSpread({}, val);
81
+ });
82
+ return newResult;
83
+ };
84
+ var multiple = function multiple(_ref3, oldVal) {
85
+ var options = _ref3.options,
86
+ value = _ref3.value;
87
+ var _sourceDataProvider = sourceDataProvider({
88
+ value: value
89
+ }, oldVal),
90
+ newData = _sourceDataProvider.newData,
91
+ oldData = _sourceDataProvider.oldData;
92
+ var newMatchVal = newData.map(function (item) {
93
+ var itemVal = item.value,
94
+ index = item.index;
95
+ var newItem = single({
96
+ options: options,
97
+ value: itemVal
98
+ });
99
+ return _objectSpread(_objectSpread({}, newItem), {}, {
100
+ index: index
101
+ });
102
+ });
103
+ return resultProvider(newMatchVal, oldData, value);
104
+ };
105
+ var tag = function tag(_ref4, oldVal) {
106
+ var options = _ref4.options,
107
+ value = _ref4.value;
108
+ var _sourceDataProvider2 = sourceDataProvider({
109
+ options: options,
110
+ value: value
111
+ }, oldVal),
112
+ newData = _sourceDataProvider2.newData,
113
+ oldData = _sourceDataProvider2.oldData;
114
+ return resultProvider(newData, oldData, value);
115
+ };
116
+ var matchNotFind = function matchNotFind(_ref5, oldVale) {
117
+ var options = _ref5.options,
118
+ value = _ref5.value,
119
+ mode = _ref5.mode;
120
+ if (!mode) {
121
+ return single({
122
+ options: options,
123
+ value: value
124
+ });
125
+ }
126
+ if (mode === "multiple") {
127
+ return multiple({
128
+ options: options,
129
+ value: value
130
+ }, oldVale) || [];
131
+ }
132
+ return tag({
133
+ options: options,
134
+ value: value
135
+ }, oldVale);
136
+ };
137
+
138
+ exports.matchNotFind = matchNotFind;
139
+ // powered by h