linkmore-design 1.1.11 → 1.1.13

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.
@@ -38,13 +38,49 @@ var CLMSelect = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
38
38
  className = props.className,
39
39
  customizeSize = props.size,
40
40
  dropdownClassName = props.dropdownClassName,
41
- others = __rest(props, ["children", "className", "size", "dropdownClassName"]);
41
+ options = props.options,
42
+ value = props.value,
43
+ defaultLabel = props.defaultLabel,
44
+ others = __rest(props, ["children", "className", "size", "dropdownClassName", "options", "value", "defaultLabel"]);
42
45
 
43
- var size = customizeSize || _react.default.useContext(_SizeContext.default) || 'middle';
46
+ var size = customizeSize || _react.default.useContext(_SizeContext.default) || 'middle'; // 当前值是否存于选项中
47
+
48
+ var hasOption = (0, _react.useMemo)(function () {
49
+ var flag = false;
50
+
51
+ if (children) {
52
+ _react.default.Children.forEach(children, function (child) {
53
+ if ( /*#__PURE__*/_react.default.isValidElement(child)) {
54
+ var childValue = child.props.value;
55
+
56
+ if (!flag) {
57
+ flag = childValue === value;
58
+ }
59
+ }
60
+ });
61
+ }
62
+
63
+ if (options) {
64
+ flag = !!options.some(function (v) {
65
+ var _a, _b;
66
+
67
+ return v[(_b = (_a = props.fieldNames) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : 'value'] === value;
68
+ });
69
+ }
70
+
71
+ return flag;
72
+ }, [children, value, options, props.fieldNames]); // 重组value: 传入value但找不到options项时,展示默认label
73
+
74
+ var resetValue = (0, _react.useMemo)(function () {
75
+ if (value && !hasOption) return defaultLabel !== null && defaultLabel !== void 0 ? defaultLabel : value;
76
+ return value;
77
+ }, [value, defaultLabel, hasOption]);
44
78
  return /*#__PURE__*/_react.default.createElement(_select.default, Object.assign({
45
79
  className: (0, _classnames.default)(className, prefixCls),
46
80
  size: size,
47
- ref: ref
81
+ ref: ref,
82
+ value: resetValue,
83
+ options: options
48
84
  }, others, {
49
85
  dropdownClassName: (0, _classnames.default)('lm_select_dropdown', dropdownClassName)
50
86
  }), children);
@@ -1,3 +1,8 @@
1
- import { TreeSelect } from 'antd';
2
- export type { TreeSelectProps } from 'antd';
3
- export default TreeSelect;
1
+ import { TreeSelect, TreeSelectProps as OriginTreeSelectProps } from 'antd';
2
+ export interface TreeSelectProps extends OriginTreeSelectProps {
3
+ defaultLabel?: string;
4
+ children?: any;
5
+ }
6
+ declare type TreeSelectType = typeof TreeSelect & typeof TreeSelect.TreeNode;
7
+ declare const LMTreeSelect: TreeSelectType;
8
+ export default LMTreeSelect;
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
3
5
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
6
 
5
7
  Object.defineProperty(exports, "__esModule", {
@@ -11,5 +13,80 @@ require("antd/es/tree-select/style");
11
13
 
12
14
  var _treeSelect = _interopRequireDefault(require("antd/es/tree-select"));
13
15
 
14
- var _default = _treeSelect.default;
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
19
+ var t = {};
20
+
21
+ for (var p in s) {
22
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23
+ }
24
+
25
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
26
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
27
+ }
28
+ return t;
29
+ };
30
+
31
+ var CLMTreeSelect = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
32
+ var children = props.children,
33
+ treeData = props.treeData,
34
+ value = props.value,
35
+ defaultLabel = props.defaultLabel,
36
+ resetProps = __rest(props, ["children", "treeData", "value", "defaultLabel"]);
37
+
38
+ var deepChildren = (0, _react.useCallback)(function (arr) {
39
+ var flag = false;
40
+
41
+ _react.default.Children.forEach(arr, function (child) {
42
+ if ( /*#__PURE__*/_react.default.isValidElement(child)) {
43
+ var _child$props = child.props,
44
+ childValue = _child$props.value,
45
+ childChildren = _child$props.children;
46
+
47
+ if (!flag) {
48
+ if (childValue === value) {
49
+ flag = true;
50
+ } else if (childChildren) {
51
+ flag = deepChildren(childChildren);
52
+ }
53
+ }
54
+ }
55
+ });
56
+
57
+ return flag;
58
+ }, [value]);
59
+ var hasOption = (0, _react.useMemo)(function () {
60
+ var flag = false;
61
+
62
+ if (children) {
63
+ flag = deepChildren(children);
64
+ }
65
+
66
+ if (treeData) {
67
+ var deepFind = function deepFind(arr) {
68
+ return arr.some(function (v) {
69
+ if (v.value === value) return true;
70
+ return v.children && deepFind(v.children);
71
+ });
72
+ };
73
+
74
+ flag = deepFind(treeData);
75
+ }
76
+
77
+ return flag;
78
+ }, [children, value, deepChildren]); // 重组value: 传入value但找不到options项时,展示默认label
79
+
80
+ var resetValue = (0, _react.useMemo)(function () {
81
+ if (value && !hasOption) return defaultLabel !== null && defaultLabel !== void 0 ? defaultLabel : value;
82
+ return value;
83
+ }, [value, hasOption]);
84
+ return /*#__PURE__*/_react.default.createElement(_treeSelect.default, Object.assign({
85
+ ref: ref,
86
+ value: resetValue
87
+ }, resetProps), children);
88
+ });
89
+ var LMTreeSelect = CLMTreeSelect;
90
+ LMTreeSelect.TreeNode = _treeSelect.default.TreeNode;
91
+ var _default = LMTreeSelect;
15
92
  exports.default = _default;
@@ -9802,6 +9802,24 @@ p {
9802
9802
  color: var(--color-85);
9803
9803
  margin-left: 0 !important;
9804
9804
  }
9805
+ .lm_table_append_add_popover .ant-popover-inner-content {
9806
+ padding: 0px;
9807
+ }
9808
+ .lm_table_append_add_popover .ant-popover-inner-content ul {
9809
+ margin: 0;
9810
+ }
9811
+ .lm_table_append_add_popover .ant-popover-inner-content ul li {
9812
+ font-size: 12px;
9813
+ padding: 4px 8px;
9814
+ height: 24px;
9815
+ display: flex;
9816
+ align-items: center;
9817
+ justify-content: center;
9818
+ cursor: pointer;
9819
+ }
9820
+ .lm_table_append_add_popover .ant-popover-inner-content ul li:hover {
9821
+ background-color: var(--color-15);
9822
+ }
9805
9823
  .lm_filter_wrapper .lm_filter_container .lm_filter {
9806
9824
  display: flex;
9807
9825
  flex-wrap: wrap;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linkmore-design",
3
- "version": "1.1.11",
3
+ "version": "1.1.13",
4
4
  "author": {
5
5
  "name": "nowthen",
6
6
  "email": "rnlvwyx@gmail.com"