@lemon-fe/components 1.4.9 → 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.
@@ -120,22 +120,24 @@ export default function CustomColumnPanel(params) {
120
120
  path.unshift(node);
121
121
  parent = parent.getOriginalParent();
122
122
  }
123
- for (var i = 0; i < path.length; i++) {
123
+ var mergeFlag = false;
124
+ for (var i = path.length - 1; i >= 0; i--) {
124
125
  var node1 = prevPath[i];
125
126
  var node2 = path[i];
126
127
  if (node1 !== undefined && node2 !== undefined && node1.id === node2.id) {
127
- node1.children = [].concat(_toConsumableArray(node1.children), _toConsumableArray(node2.children));
128
+ if (!mergeFlag) {
129
+ node1.children = [].concat(_toConsumableArray(node1.children), _toConsumableArray(node2.children));
130
+ mergeFlag = true;
131
+ }
128
132
  node1.leaf = [].concat(_toConsumableArray(node1.leaf), _toConsumableArray(node2.leaf));
129
133
  node1.disabled = node1.disabled && node2.disabled;
130
134
  node1.visible = node1.visible === 1 && node2.visible === 1 ? 1 : node1.visible === 1 || node2.visible === 1 ? 2 : 0;
131
135
  path[i] = node1;
132
- continue;
133
- }
134
- if (i === 0) {
135
- items.push(path[0]);
136
- break;
137
136
  }
138
137
  }
138
+ if (!mergeFlag) {
139
+ items.push(path[0]);
140
+ }
139
141
  prevPath = path;
140
142
  });
141
143
  return items;
@@ -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;
@@ -20,14 +20,9 @@
20
20
  padding: 1px;
21
21
  background-color: #fff;
22
22
  transform: translateY(-50%);
23
- opacity: 0;
24
23
  transition: opacity 0.3s, color 0.3s !important;
25
24
  }
26
25
 
27
- &-wrapper:hover &-input-clear {
28
- opacity: 1;
29
- }
30
-
31
26
  &-input input {
32
27
  cursor: pointer;
33
28
  }
@@ -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
  }));
@@ -222,6 +222,10 @@ a[title='站长统计'] {
222
222
  align-items: center;
223
223
  line-height: 1 !important;
224
224
  }
225
+
226
+ &-clear {
227
+ opacity: 1;
228
+ }
225
229
  }
226
230
 
227
231
  /** tree */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lemon-fe/components",
3
- "version": "1.4.9",
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": "cdb79845cb423e932516831f73a9f77ebbc95d30"
61
+ "gitHead": "f95a565edfdb1d9c4937e75ab4c13fca67af3244"
62
62
  }