@lemon-fe/components 1.4.10 → 1.4.11

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.
@@ -11,7 +11,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
11
11
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
12
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
13
  import { Button, Input, Space } from 'antd';
14
- import React, { forwardRef, memo, useState, useImperativeHandle, useMemo } from 'react';
14
+ import React, { forwardRef, memo, useState, useImperativeHandle, useMemo, useRef } from 'react';
15
15
  import { useLocaleReceiver } from "../../locale-receiver";
16
16
  import { useGridStore } from "../hooks";
17
17
  import { useDebounce } from '@lemon-fe/hooks';
@@ -38,11 +38,18 @@ export default /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Search(props,
38
38
  var _useLocaleReceiver = useLocaleReceiver('DataGrid'),
39
39
  _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1),
40
40
  dataGridLocale = _useLocaleReceiver2[0];
41
+ var searching = useRef(false);
41
42
  var handleSearch = useDebounce(function (str) {
42
43
  var keywords = str.trim();
44
+ var finish = function finish(newState) {
45
+ searching.current = false;
46
+ setState(function (pre) {
47
+ return _objectSpread(_objectSpread({}, pre), newState);
48
+ });
49
+ return newState;
50
+ };
43
51
  if (keywords.length <= 0) {
44
- setState(defaultState);
45
- return;
52
+ return finish(defaultState);
46
53
  }
47
54
  var cols = [];
48
55
  if (searchFields) {
@@ -78,11 +85,9 @@ export default /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Search(props,
78
85
  }
79
86
  }
80
87
  });
81
- setState(function (prev) {
82
- return _objectSpread(_objectSpread({}, prev), {}, {
83
- nodes: nodes,
84
- index: -1
85
- });
88
+ return finish({
89
+ nodes: nodes,
90
+ index: -1
86
91
  });
87
92
  }, 300);
88
93
  var focusCell = function focusCell(index) {
@@ -119,12 +124,13 @@ export default /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Search(props,
119
124
  });
120
125
  });
121
126
  };
122
- var handleNext = function handleNext() {
123
- if (state.nodes.length <= 0) {
127
+ var handleNext = function handleNext(value) {
128
+ var data = value;
129
+ if (data.nodes.length <= 0) {
124
130
  return;
125
131
  }
126
- var idx = (state.index + 1) % state.nodes.length;
127
- focusCell(state.nodes[idx].index);
132
+ var idx = (data.index + 1) % data.nodes.length;
133
+ focusCell(data.nodes[idx].index);
128
134
  setState(function (prev) {
129
135
  return _objectSpread(_objectSpread({}, prev), {}, {
130
136
  index: idx
@@ -148,12 +154,13 @@ export default /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Search(props,
148
154
  keywords: e.target.value
149
155
  });
150
156
  });
157
+ searching.current = true;
151
158
  handleSearch(e.target.value);
152
159
  },
153
160
  suffix: /*#__PURE__*/React.createElement("span", null, "".concat(state.index + 1, "/").concat(state.nodes.length)),
154
- onKeyUp: function onKeyUp(e) {
161
+ onKeyDown: function onKeyDown(e) {
155
162
  if (e.key === 'Enter') {
156
- handleNext();
163
+ handleNext(searching.current ? handleSearch.flush() : state);
157
164
  }
158
165
  }
159
166
  }), /*#__PURE__*/React.createElement(Button, {
@@ -161,6 +168,8 @@ export default /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Search(props,
161
168
  onClick: handlePrev
162
169
  }, dataGridLocale.searchPrevText), /*#__PURE__*/React.createElement(Button, {
163
170
  size: "small",
164
- onClick: handleNext
171
+ onClick: function onClick() {
172
+ return handleNext(state);
173
+ }
165
174
  }, dataGridLocale.searchNextText));
166
175
  }));
@@ -17,7 +17,7 @@ declare const Editors: {
17
17
  Text: React.ForwardRefExoticComponent<import("ag-grid-community").ICellEditorParams<any, any, any> & import("./typings").TextEditorParams<any> & React.RefAttributes<import("ag-grid-react").ICellEditorReactComp>>;
18
18
  Date: React.ForwardRefExoticComponent<import("ag-grid-community").ICellEditorParams<any, any, any> & import("./typings").DateEditorParams<any> & React.RefAttributes<import("ag-grid-react").ICellEditorReactComp>>;
19
19
  Number: React.ForwardRefExoticComponent<import("ag-grid-community").ICellEditorParams<any, any, any> & import("./typings").NumberEditorParams<any> & React.RefAttributes<import("ag-grid-react").ICellEditorReactComp>>;
20
- Select: React.ForwardRefExoticComponent<import("ag-grid-community").ICellEditorParams<any, any, any> & Pick<import("antd").SelectProps<any, import("antd/lib/select").BaseOptionType>, "disabled" | "allowClear" | "mode" | "showSearch" | "optionFilterProp" | "options" | "virtual" | "listHeight"> & {
20
+ Select: React.ForwardRefExoticComponent<import("ag-grid-community").ICellEditorParams<any, any, any> & Pick<import("antd").SelectProps<any, import("antd/lib/select").BaseOptionType>, "disabled" | "mode" | "allowClear" | "showSearch" | "optionFilterProp" | "options" | "virtual" | "listHeight"> & {
21
21
  fieldNames?: {
22
22
  label: string;
23
23
  value: string;
@@ -16,15 +16,21 @@ import Empty from "../empty";
16
16
  import Icons from "../icons";
17
17
  import { useLocaleReceiver } from "../locale-receiver";
18
18
  import { mergeDefaultProps } from "../utils";
19
+ import { LoadingOutlined } from '@ant-design/icons';
19
20
 
20
21
  // 这个必须加,否则部分select的样式会有问题
21
22
  mergeDefaultProps(AntdSelect, {
22
- clearIcon: Icons.Clear,
23
23
  notFoundContent: /*#__PURE__*/React.createElement(Empty, {
24
24
  imageStyle: {
25
25
  height: 60
26
26
  }
27
- })
27
+ }),
28
+ suffixIcon: /*#__PURE__*/React.createElement(Icons.Down, {
29
+ style: {
30
+ pointerEvents: 'none'
31
+ }
32
+ }),
33
+ clearIcon: /*#__PURE__*/React.createElement(Icons.Clear, null)
28
34
  });
29
35
  function InternalSelect(props, ref) {
30
36
  var wrapper = useRef(null);
@@ -38,7 +44,7 @@ function InternalSelect(props, ref) {
38
44
  style: {
39
45
  pointerEvents: 'none'
40
46
  }
41
- }) : undefined
47
+ }) : /*#__PURE__*/React.createElement(LoadingOutlined, null)
42
48
  }, props, {
43
49
  ref: ref
44
50
  }));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lemon-fe/components",
3
- "version": "1.4.10",
3
+ "version": "1.4.11",
4
4
  "description": "> TODO: description",
5
5
  "homepage": "",
6
6
  "license": "MIT",
@@ -58,5 +58,5 @@
58
58
  "publishConfig": {
59
59
  "registry": "https://registry.npmjs.org"
60
60
  },
61
- "gitHead": "caf104b75fecab8a24a2a193ab1f4c088aa688ae"
61
+ "gitHead": "f95a565edfdb1d9c4937e75ab4c13fca67af3244"
62
62
  }