@vtx/components 4.0.0-beta.7 → 4.0.0-beta.70

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 (161) hide show
  1. package/es/index.js +3 -0
  2. package/es/utils/filterSpecialCharacters.js +47 -46
  3. package/es/utils/index.js +1 -2
  4. package/es/vtx-color-picker/index.js +138 -33
  5. package/es/vtx-color-picker/style/index.js +36 -12
  6. package/es/vtx-combogrid/Combogrid.js +16 -10
  7. package/es/vtx-combogrid/index.js +7 -4
  8. package/es/vtx-combogrid/style/index.js +4 -4
  9. package/es/vtx-datagrid/Store/Provide.js +109 -132
  10. package/es/vtx-datagrid/ToolBar/components/ColumnSetting/index.js +11 -5
  11. package/es/vtx-datagrid/ToolBar/components/ColumnSetting/style.js +5 -2
  12. package/es/vtx-datagrid/ToolBar/components/Density/index.js +3 -0
  13. package/es/vtx-datagrid/ToolBar/components/TableStyle/index.js +3 -0
  14. package/es/vtx-datagrid/ToolBar/index.js +2 -2
  15. package/es/vtx-datagrid/columnState.js +64 -0
  16. package/es/vtx-datagrid/index.js +114 -35
  17. package/es/vtx-datagrid/mergeComponents.js +15 -0
  18. package/es/vtx-datagrid/renderColumnButtons.js +30 -11
  19. package/es/vtx-datagrid/style/index.js +102 -20
  20. package/es/vtx-date-picker/QdatePicker.js +1 -1
  21. package/es/vtx-descriptions/Descriptions.js +29 -0
  22. package/es/vtx-descriptions/index.js +3 -0
  23. package/es/vtx-descriptions/style/index.js +19 -0
  24. package/es/vtx-ellipsis-text/index.js +7 -2
  25. package/es/vtx-ellipsis-text/style/index.js +3 -1
  26. package/es/vtx-export/index.js +25 -25
  27. package/es/vtx-export-async/History.js +7 -3
  28. package/es/vtx-export-async/index.js +42 -14
  29. package/es/vtx-form-layout/Card.js +10 -10
  30. package/es/vtx-form-layout/Divider.js +1 -1
  31. package/es/vtx-form-layout/FormItem.js +18 -17
  32. package/es/vtx-form-layout/Pane.js +23 -12
  33. package/es/vtx-icon/index.js +54 -45
  34. package/es/vtx-icon/index.js1 +90 -0
  35. package/es/vtx-image/Preview.js +11 -6
  36. package/es/vtx-image/style/index.js +0 -1
  37. package/es/vtx-import/index.js +155 -43
  38. package/es/vtx-import/result.js +6 -2
  39. package/es/vtx-import/style/index.js +16 -1
  40. package/es/vtx-import2/Content.js +2 -1
  41. package/es/vtx-import2/index.js +31 -20
  42. package/es/vtx-import2/style/index.js +60 -9
  43. package/es/vtx-input/TextArea/index.js +11 -6
  44. package/es/vtx-modal/index.js +9 -4
  45. package/es/vtx-modal/style/index.js +5 -3
  46. package/es/vtx-page-layout/Content.js +1 -1
  47. package/es/vtx-page-layout/TabLayout.js +1 -7
  48. package/es/vtx-page-layout/TableLayout.js +14 -4
  49. package/es/vtx-page-layout/TableWrap.js +3 -2
  50. package/es/vtx-page-layout/TreeLayout.js +2 -8
  51. package/es/vtx-page-layout/container.js +6 -5
  52. package/es/vtx-page-layout/style/index.js +4 -2
  53. package/es/vtx-provider/index.js +20 -10
  54. package/es/vtx-provider/locale/en_US.js +65 -5
  55. package/es/vtx-provider/locale/zh_CN.js +75 -5
  56. package/es/vtx-provider/useStyle/index.js +8 -4
  57. package/es/vtx-scrollable-row/index.js +38 -28
  58. package/es/vtx-search/index.js +18 -13
  59. package/es/vtx-search/style/index.js +2 -1
  60. package/es/vtx-select/index.js +132 -46
  61. package/es/vtx-select/style/index.js +11 -56
  62. package/es/vtx-signature/index.js +5 -4
  63. package/es/vtx-signature/style/index.js +1 -1
  64. package/es/vtx-split-pane/Resizer.js +0 -1
  65. package/es/vtx-split-pane/SplitPane.js +34 -25
  66. package/es/vtx-split-pane/style/index.js +8 -112
  67. package/es/vtx-time-picker/index.js +27 -1
  68. package/es/vtx-transfer/Transfer.js +29 -0
  69. package/es/vtx-transfer/index.js +3 -0
  70. package/es/vtx-transfer/style/index.js +19 -0
  71. package/es/vtx-transfer-select/TransferSelect.js +143 -0
  72. package/es/vtx-transfer-select/index.js +3 -0
  73. package/es/vtx-transfer-select/style/index.js +19 -0
  74. package/es/vtx-tree/index.js +104 -40
  75. package/es/vtx-tree-select/index.js +75 -105
  76. package/es/vtx-tree-select/style/index.js +9 -3
  77. package/es/vtx-upload/FilePreview.js +2 -1
  78. package/es/vtx-wang-editor/index.js +291 -113
  79. package/es/vtx-wang-editor/wangEditorUtil.js +59 -9
  80. package/lib/index.js +36 -0
  81. package/lib/utils/filterSpecialCharacters.js +48 -46
  82. package/lib/utils/index.js +0 -7
  83. package/lib/vtx-color-picker/index.js +139 -34
  84. package/lib/vtx-color-picker/style/index.js +36 -12
  85. package/lib/vtx-combogrid/Combogrid.js +16 -10
  86. package/lib/vtx-combogrid/index.js +7 -4
  87. package/lib/vtx-combogrid/style/index.js +4 -4
  88. package/lib/vtx-datagrid/Store/Provide.js +116 -138
  89. package/lib/vtx-datagrid/ToolBar/components/ColumnSetting/index.js +11 -6
  90. package/lib/vtx-datagrid/ToolBar/components/ColumnSetting/style.js +5 -2
  91. package/lib/vtx-datagrid/ToolBar/components/Density/index.js +3 -0
  92. package/lib/vtx-datagrid/ToolBar/components/TableStyle/index.js +3 -0
  93. package/lib/vtx-datagrid/ToolBar/index.js +2 -2
  94. package/lib/vtx-datagrid/columnState.js +73 -0
  95. package/lib/vtx-datagrid/index.js +115 -35
  96. package/lib/vtx-datagrid/mergeComponents.js +21 -0
  97. package/lib/vtx-datagrid/renderColumnButtons.js +30 -11
  98. package/lib/vtx-datagrid/style/index.js +102 -20
  99. package/lib/vtx-date-picker/QdatePicker.js +1 -1
  100. package/lib/vtx-descriptions/Descriptions.js +38 -0
  101. package/lib/vtx-descriptions/index.js +15 -0
  102. package/lib/vtx-descriptions/style/index.js +25 -0
  103. package/lib/vtx-ellipsis-text/index.js +7 -2
  104. package/lib/vtx-ellipsis-text/style/index.js +3 -1
  105. package/lib/vtx-export/index.js +26 -26
  106. package/lib/vtx-export-async/History.js +7 -3
  107. package/lib/vtx-export-async/index.js +40 -12
  108. package/lib/vtx-form-layout/Card.js +9 -9
  109. package/lib/vtx-form-layout/Divider.js +1 -1
  110. package/lib/vtx-form-layout/FormItem.js +18 -17
  111. package/lib/vtx-form-layout/Pane.js +22 -11
  112. package/lib/vtx-icon/index.js +54 -52
  113. package/lib/vtx-icon/index.js1 +90 -0
  114. package/lib/vtx-image/Preview.js +11 -6
  115. package/lib/vtx-image/style/index.js +0 -1
  116. package/lib/vtx-import/index.js +154 -42
  117. package/lib/vtx-import/result.js +6 -2
  118. package/lib/vtx-import/style/index.js +16 -1
  119. package/lib/vtx-import2/Content.js +2 -1
  120. package/lib/vtx-import2/index.js +30 -19
  121. package/lib/vtx-import2/style/index.js +60 -9
  122. package/lib/vtx-input/TextArea/index.js +11 -6
  123. package/lib/vtx-modal/index.js +9 -4
  124. package/lib/vtx-modal/style/index.js +5 -3
  125. package/lib/vtx-page-layout/Content.js +1 -1
  126. package/lib/vtx-page-layout/TabLayout.js +3 -9
  127. package/lib/vtx-page-layout/TableLayout.js +14 -4
  128. package/lib/vtx-page-layout/TableWrap.js +3 -2
  129. package/lib/vtx-page-layout/TreeLayout.js +4 -10
  130. package/lib/vtx-page-layout/container.js +6 -5
  131. package/lib/vtx-page-layout/style/index.js +4 -2
  132. package/lib/vtx-provider/index.js +19 -10
  133. package/lib/vtx-provider/locale/en_US.js +65 -5
  134. package/lib/vtx-provider/locale/zh_CN.js +75 -5
  135. package/lib/vtx-provider/useStyle/index.js +8 -4
  136. package/lib/vtx-scrollable-row/index.js +38 -28
  137. package/lib/vtx-search/index.js +18 -13
  138. package/lib/vtx-search/style/index.js +2 -1
  139. package/lib/vtx-select/index.js +134 -48
  140. package/lib/vtx-select/style/index.js +11 -56
  141. package/lib/vtx-signature/index.js +4 -3
  142. package/lib/vtx-signature/style/index.js +1 -1
  143. package/lib/vtx-split-pane/Resizer.js +0 -1
  144. package/lib/vtx-split-pane/SplitPane.js +32 -23
  145. package/lib/vtx-split-pane/style/index.js +8 -112
  146. package/lib/vtx-time-picker/index.js +27 -1
  147. package/lib/vtx-transfer/Transfer.js +38 -0
  148. package/lib/vtx-transfer/index.js +15 -0
  149. package/lib/vtx-transfer/style/index.js +25 -0
  150. package/lib/vtx-transfer-select/TransferSelect.js +151 -0
  151. package/lib/vtx-transfer-select/index.js +15 -0
  152. package/lib/vtx-transfer-select/style/index.js +25 -0
  153. package/lib/vtx-tree/index.js +102 -38
  154. package/lib/vtx-tree-select/index.js +75 -105
  155. package/lib/vtx-tree-select/style/index.js +9 -3
  156. package/lib/vtx-upload/FilePreview.js +2 -1
  157. package/lib/vtx-wang-editor/index.js +289 -113
  158. package/lib/vtx-wang-editor/wangEditorUtil.js +59 -10
  159. package/package.json +44 -28
  160. package/es/utils/hooks/useFetchData/index.js +0 -82
  161. package/lib/utils/hooks/useFetchData/index.js +0 -89
@@ -1,5 +1,6 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- var _excluded = ["value", "format"];
2
+ var _excluded = ["value", "format"],
3
+ _excluded2 = ["value", "format"];
3
4
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
5
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5
6
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -12,6 +13,7 @@ import { TimePicker } from 'antd';
12
13
  import dayjs from 'dayjs';
13
14
  import PropTypes from 'prop-types';
14
15
  import { jsx as _jsx } from "react/jsx-runtime";
16
+ var RangePicker = TimePicker.RangePicker;
15
17
  var VtxTimePicker = /*#__PURE__*/forwardRef(function (props, ref) {
16
18
  var value = props.value,
17
19
  _props$format = props.format,
@@ -28,7 +30,31 @@ var VtxTimePicker = /*#__PURE__*/forwardRef(function (props, ref) {
28
30
  }
29
31
  }));
30
32
  });
33
+
34
+ // 时间范围选择器
35
+ var VtxTimeRangePicker = /*#__PURE__*/forwardRef(function (props, ref) {
36
+ var value = props.value,
37
+ _props$format2 = props.format,
38
+ format = _props$format2 === void 0 ? 'HH:mm:ss' : _props$format2,
39
+ rest = _objectWithoutProperties(props, _excluded2);
40
+ var newValue = value && Array.isArray(value) ? value.map(function (item) {
41
+ return item ? dayjs.isDayjs(item) ? item : dayjs(item, format) : null;
42
+ }) : null;
43
+ return /*#__PURE__*/_jsx(RangePicker, _objectSpread(_objectSpread({
44
+ value: newValue,
45
+ format: format
46
+ }, rest), {}, {
47
+ ref: ref,
48
+ style: {
49
+ width: '100%'
50
+ }
51
+ }));
52
+ });
31
53
  VtxTimePicker.displayName = 'VtxTimePicker';
54
+ VtxTimeRangePicker.displayName = 'VtxTimeRangePicker';
55
+
56
+ // 将范围选择器作为 VtxTimePicker 的属性
57
+ VtxTimePicker.VtxTimeRangePicker = VtxTimeRangePicker;
32
58
  export { VtxTimePicker };
33
59
  export default VtxTimePicker;
34
60
  VtxTimePicker.propTypes = {
@@ -0,0 +1,29 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _objectDestructuringEmpty(obj) { if (obj == null) throw new TypeError("Cannot destructure " + obj); }
8
+ import classnames from 'classnames';
9
+ import React, { useContext } from 'react';
10
+ import { Transfer } from 'antd';
11
+ import { useStyle } from "./style";
12
+ import { VtxProvider } from "../vtx-provider";
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ function VtxTransfer(props) {
15
+ var _useContext = useContext(VtxProvider),
16
+ getPrefixCls = _useContext.getPrefixCls;
17
+ var prefixCls = getPrefixCls('VtxTransfer', props.prefixCls);
18
+ var _useStyle = useStyle(prefixCls),
19
+ wrapSSR = _useStyle.wrapSSR,
20
+ hashId = _useStyle.hashId;
21
+ var rest = Object.assign({}, (_objectDestructuringEmpty(props), props));
22
+ return wrapSSR( /*#__PURE__*/_jsx(Transfer, _objectSpread({
23
+ classNames: {
24
+ root: classnames(hashId, prefixCls)
25
+ }
26
+ }, rest)));
27
+ }
28
+ VtxTransfer.propTypes = {};
29
+ export default VtxTransfer;
@@ -0,0 +1,3 @@
1
+ import VtxTransfer from "./Transfer";
2
+ export default VtxTransfer;
3
+ export { VtxTransfer };
@@ -0,0 +1,19 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ import { useStyle as useAntdStyle } from "../../vtx-provider";
8
+ var genStyle = function genStyle(token) {
9
+ var componentCls = token.componentCls;
10
+ return _defineProperty({}, componentCls, {});
11
+ };
12
+ export function useStyle(prefixCls) {
13
+ return useAntdStyle('', function (token) {
14
+ var _token = _objectSpread(_objectSpread({}, token), {}, {
15
+ componentCls: ".".concat(prefixCls)
16
+ });
17
+ return [genStyle(_token)];
18
+ });
19
+ }
@@ -0,0 +1,143 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ var _excluded = ["leftColumns", "rightColumns"],
3
+ _excluded2 = ["popoverProps", "disabled", "leftColumns", "rightColumns", "styles"];
4
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
5
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
6
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
7
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
8
+ 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; } }
9
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
10
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
14
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
15
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
16
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
17
+ import classnames from 'classnames';
18
+ import React, { useState, useContext } from 'react';
19
+ import { Transfer } from 'antd';
20
+ import { useStyle } from "./style";
21
+ import { VtxProvider } from "../vtx-provider";
22
+ import { Select, Popover, Table } from 'antd';
23
+ import VtxIcon from "../vtx-icon";
24
+ import VtxDatagrid from "../vtx-datagrid";
25
+ import { jsx as _jsx } from "react/jsx-runtime";
26
+ var mockTags = ['cat', 'dog', 'bird'];
27
+ var mockData = Array.from({
28
+ length: 20
29
+ }).map(function (_, i) {
30
+ return {
31
+ key: i.toString(),
32
+ title: "content".concat(i + 1),
33
+ description: "description of content".concat(i + 1),
34
+ tag: mockTags[i % 3]
35
+ };
36
+ });
37
+ var TableTransfer = function TableTransfer(props) {
38
+ var leftColumns = props.leftColumns,
39
+ rightColumns = props.rightColumns,
40
+ restProps = _objectWithoutProperties(props, _excluded);
41
+ return /*#__PURE__*/_jsx(Transfer, _objectSpread(_objectSpread({
42
+ style: {
43
+ width: '100%'
44
+ }
45
+ }, restProps), {}, {
46
+ children: function children(_ref) {
47
+ var direction = _ref.direction,
48
+ filteredItems = _ref.filteredItems,
49
+ onItemSelect = _ref.onItemSelect,
50
+ onItemSelectAll = _ref.onItemSelectAll,
51
+ listSelectedKeys = _ref.selectedKeys,
52
+ listDisabled = _ref.disabled;
53
+ var columns = direction === 'left' ? leftColumns : rightColumns;
54
+ var rowSelection = {
55
+ getCheckboxProps: function getCheckboxProps() {
56
+ return {
57
+ disabled: listDisabled
58
+ };
59
+ },
60
+ onChange: function onChange(selectedRowKeys) {
61
+ onItemSelectAll(selectedRowKeys, 'replace');
62
+ },
63
+ selectedRowKeys: listSelectedKeys,
64
+ selections: [Table.SELECTION_ALL, Table.SELECTION_INVERT, Table.SELECTION_NONE]
65
+ };
66
+ return /*#__PURE__*/_jsx(Table, {
67
+ rowSelection: rowSelection,
68
+ columns: columns,
69
+ dataSource: filteredItems,
70
+ size: "small",
71
+ style: {
72
+ pointerEvents: listDisabled ? 'none' : undefined
73
+ },
74
+ onRow: function onRow(_ref2) {
75
+ var key = _ref2.key,
76
+ itemDisabled = _ref2.disabled;
77
+ return {
78
+ onClick: function onClick() {
79
+ if (itemDisabled || listDisabled) {
80
+ return;
81
+ }
82
+ onItemSelect(key, !listSelectedKeys.includes(key));
83
+ }
84
+ };
85
+ }
86
+ });
87
+ }
88
+ }));
89
+ };
90
+ function TransferSelect(props) {
91
+ var _useState = useState(function () {
92
+ return [];
93
+ }),
94
+ _useState2 = _slicedToArray(_useState, 2),
95
+ selectedRowKeys = _useState2[0],
96
+ setSelectedRowKeys = _useState2[1];
97
+ var _useState3 = useState([]),
98
+ _useState4 = _slicedToArray(_useState3, 2),
99
+ targetKeys = _useState4[0],
100
+ setTargetKeys = _useState4[1];
101
+ var onChange = function onChange(nextTargetKeys) {
102
+ setTargetKeys(nextTargetKeys);
103
+ };
104
+ var _useState5 = useState(false),
105
+ _useState6 = _slicedToArray(_useState5, 2),
106
+ visible = _useState6[0],
107
+ setVisible = _useState6[1];
108
+ var _useContext = useContext(VtxProvider),
109
+ getPrefixCls = _useContext.getPrefixCls;
110
+ var prefixCls = getPrefixCls('VtxTransferSelect', props.prefixCls);
111
+ var _useStyle = useStyle(prefixCls),
112
+ wrapSSR = _useStyle.wrapSSR,
113
+ hashId = _useStyle.hashId;
114
+ var _props$popoverProps = props.popoverProps,
115
+ popoverProps = _props$popoverProps === void 0 ? {} : _props$popoverProps,
116
+ _props$disabled = props.disabled,
117
+ disabled = _props$disabled === void 0 ? false : _props$disabled,
118
+ leftColumns = props.leftColumns,
119
+ rightColumns = props.rightColumns,
120
+ styles = props.styles,
121
+ rest = _objectWithoutProperties(props, _excluded2);
122
+ return wrapSSR( /*#__PURE__*/_jsx(Select, {
123
+ suffixIcon: /*#__PURE__*/_jsx(VtxIcon, {
124
+ type: "downOutlined",
125
+ fileType: "svg"
126
+ }),
127
+ styles: _objectSpread({}, styles),
128
+ popupRender: function popupRender(node) {
129
+ return /*#__PURE__*/_jsx(TableTransfer, {
130
+ classNames: {
131
+ root: classnames(hashId, prefixCls)
132
+ },
133
+ dataSource: mockData,
134
+ onChange: onChange,
135
+ leftColumns: leftColumns,
136
+ rightColumns: rightColumns,
137
+ targetKeys: targetKeys
138
+ });
139
+ }
140
+ }));
141
+ }
142
+ TransferSelect.propTypes = {};
143
+ export default TransferSelect;
@@ -0,0 +1,3 @@
1
+ import VtxTransferSelect from "./TransferSelect";
2
+ export default VtxTransferSelect;
3
+ export { VtxTransferSelect };
@@ -0,0 +1,19 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ import { useStyle as useAntdStyle } from "../../vtx-provider";
8
+ var genStyle = function genStyle(token) {
9
+ var componentCls = token.componentCls;
10
+ return _defineProperty({}, componentCls, {});
11
+ };
12
+ export function useStyle(prefixCls) {
13
+ return useAntdStyle('', function (token) {
14
+ var _token = _objectSpread(_objectSpread({}, token), {}, {
15
+ componentCls: ".".concat(prefixCls)
16
+ });
17
+ return [genStyle(_token)];
18
+ });
19
+ }
@@ -1,5 +1,5 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- var _excluded = ["showSearch", "treeData", "searchPlaceholder", "renderMenuList", "fieldNames", "titleClassName", "expandAction"];
2
+ var _excluded = ["showSearch", "treeData", "searchPlaceholder", "renderMenuList", "fieldNames", "titleClassName", "expandAction", "maxButtonCount"];
3
3
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
4
4
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
5
5
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
@@ -20,26 +20,27 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
20
20
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
21
21
  import React, { forwardRef, useEffect, useImperativeHandle, useMemo, useRef, useState, useContext } from 'react';
22
22
  import PropTypes from 'prop-types';
23
- import { ConfigProvider, Input, Tooltip, Tree } from 'antd';
24
- import { DownOutlined } from '@ant-design/icons';
23
+ import { Dropdown, ConfigProvider, Input, Menu, Tooltip, Tree } from 'antd';
24
+ import { DownOutlined, EllipsisOutlined } from '@ant-design/icons';
25
25
  import { calcRangeKeys, convertDirectoryKeysToNodes } from "./utils";
26
26
  import { useDebounceFn, useMemoizedFn } from 'ahooks';
27
27
  import { parseTreeData } from '@vtx/utils';
28
28
  import classnames from 'classnames';
29
29
  import { useStyle } from "./style/index";
30
30
  import { VtxProvider, useIntl } from "../vtx-provider";
31
+ import VtxIcon from "../vtx-icon";
31
32
  import { jsx as _jsx } from "react/jsx-runtime";
32
33
  import { jsxs as _jsxs } from "react/jsx-runtime";
33
- var getParentKey = function getParentKey(key, tree) {
34
- var parentKey = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
34
+ var getParentKey = function getParentKey(keyValue, key, tree) {
35
+ var parentKey = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
35
36
  var _iterator = _createForOfIteratorHelper(tree),
36
37
  _step;
37
38
  try {
38
39
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
39
40
  var node = _step.value;
40
- if (node.key === key) return parentKey;
41
+ if (node[keyValue] === key) return parentKey;
41
42
  if (node.children) {
42
- var found = getParentKey(key, node.children, node.key);
43
+ var found = getParentKey(keyValue, key, node.children, node[keyValue]);
43
44
  if (found !== undefined) return found;
44
45
  }
45
46
  }
@@ -63,6 +64,8 @@ var VtxTree = /*#__PURE__*/forwardRef(function (propsAll, ref) {
63
64
  titleClassName = propsAll.titleClassName,
64
65
  _propsAll$expandActio = propsAll.expandAction,
65
66
  expandAction = _propsAll$expandActio === void 0 ? 'click' : _propsAll$expandActio,
67
+ _propsAll$maxButtonCo = propsAll.maxButtonCount,
68
+ maxButtonCount = _propsAll$maxButtonCo === void 0 ? 3 : _propsAll$maxButtonCo,
66
69
  props = _objectWithoutProperties(propsAll, _excluded);
67
70
  var _useContext = useContext(VtxProvider),
68
71
  getPrefixCls = _useContext.getPrefixCls;
@@ -93,12 +96,12 @@ var VtxTree = /*#__PURE__*/forwardRef(function (propsAll, ref) {
93
96
  var dataList = useMemo(function () {
94
97
  var dataList = [];
95
98
  var titleKey = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.title) || 'title';
99
+ var keyName = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.key) || 'key';
96
100
  var generateList = function generateList(data) {
97
101
  for (var i = 0; i < data.length; i++) {
98
102
  var node = data[i];
99
- var key = node.key;
100
103
  dataList.push({
101
- key: key,
104
+ key: node[keyName],
102
105
  title: node[titleKey]
103
106
  });
104
107
  if (node.children) {
@@ -141,6 +144,7 @@ var VtxTree = /*#__PURE__*/forwardRef(function (propsAll, ref) {
141
144
  var newTreeData = parseTreeData(treeData, {
142
145
  renderNode: function renderNode(item) {
143
146
  var titleKey = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.title) || 'title';
147
+ var keyName = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.key) || 'key';
144
148
  var strTitle = item[titleKey] || '';
145
149
  var index = strTitle.indexOf(searchValue);
146
150
  var beforeStr = strTitle.substring(0, index);
@@ -156,7 +160,7 @@ var VtxTree = /*#__PURE__*/forwardRef(function (propsAll, ref) {
156
160
  className: className,
157
161
  children: strTitle
158
162
  });
159
- return _objectSpread(_objectSpread({}, item), {}, _defineProperty(_defineProperty(_defineProperty({}, titleKey, title), "key", item.key), "strTitle", strTitle));
163
+ return _objectSpread(_objectSpread({}, item), {}, _defineProperty(_defineProperty(_defineProperty({}, titleKey, title), keyName, item[keyName]), "strTitle", strTitle));
160
164
  },
161
165
  filterNode: function filterNode(item) {
162
166
  return item.strTitle.indexOf(searchValue) > -1;
@@ -168,7 +172,7 @@ var VtxTree = /*#__PURE__*/forwardRef(function (propsAll, ref) {
168
172
  var _props$onExpand2;
169
173
  var newExpandedKeys = dataList.map(function (item) {
170
174
  if (item.title.indexOf(value) > -1) {
171
- return getParentKey(item.key, treeData);
175
+ return getParentKey((fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.key) || 'key', item.key, treeData);
172
176
  }
173
177
  return null;
174
178
  }).filter(function (item, i, self) {
@@ -190,17 +194,29 @@ var VtxTree = /*#__PURE__*/forwardRef(function (propsAll, ref) {
190
194
  };
191
195
  });
192
196
  useEffect(function () {
193
- var _treeRef$current2;
194
- var resizeObserver = new ResizeObserver(function () {
195
- var _treeRef$current;
196
- setHeight(treeRef === null || treeRef === void 0 || (_treeRef$current = treeRef.current) === null || _treeRef$current === void 0 ? void 0 : _treeRef$current.offsetHeight);
197
+ var element = treeRef.current;
198
+ if (!element) return; // 提前返回,避免后续问题
199
+
200
+ var resizeObserver = new ResizeObserver(function (entries) {
201
+ var _iterator2 = _createForOfIteratorHelper(entries),
202
+ _step2;
203
+ try {
204
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
205
+ var entry = _step2.value;
206
+ setHeight(entry.contentRect.height);
207
+ }
208
+ } catch (err) {
209
+ _iterator2.e(err);
210
+ } finally {
211
+ _iterator2.f();
212
+ }
197
213
  });
198
- if (treeRef.current) {
199
- resizeObserver.observe(treeRef === null || treeRef === void 0 ? void 0 : treeRef.current, {
200
- box: 'border-box'
201
- });
202
- }
203
- setHeight(treeRef === null || treeRef === void 0 || (_treeRef$current2 = treeRef.current) === null || _treeRef$current2 === void 0 ? void 0 : _treeRef$current2.offsetHeight);
214
+ resizeObserver.observe(element, {
215
+ box: 'border-box'
216
+ });
217
+
218
+ // 初始化高度
219
+ setHeight(element.offsetHeight);
204
220
  return function () {
205
221
  resizeObserver.disconnect();
206
222
  };
@@ -252,6 +268,21 @@ var VtxTree = /*#__PURE__*/forwardRef(function (propsAll, ref) {
252
268
  setSelectedKeys(newSelectedKeys);
253
269
  }
254
270
  };
271
+ var renderMenuIcon = function renderMenuIcon(arr, nodeData) {
272
+ return arr.map(function (item) {
273
+ return /*#__PURE__*/_jsx(Tooltip, {
274
+ title: item.label,
275
+ children: /*#__PURE__*/_jsx("span", {
276
+ className: "".concat(prefixCls, "-menu-item-icon"),
277
+ onClick: function onClick(e) {
278
+ e.stopPropagation();
279
+ item.onClick && item.onClick(nodeData);
280
+ },
281
+ children: item.icon
282
+ })
283
+ }, item.label);
284
+ });
285
+ };
255
286
  return wrapSSR( /*#__PURE__*/_jsxs("div", {
256
287
  className: classnames("".concat(prefixCls, "-wraaper"), hashId),
257
288
  children: [showSearch && /*#__PURE__*/_jsx(Input, {
@@ -268,7 +299,10 @@ var VtxTree = /*#__PURE__*/forwardRef(function (propsAll, ref) {
268
299
  ref: treeRef,
269
300
  children: /*#__PURE__*/_jsx(Tree, _objectSpread(_objectSpread(_objectSpread({}, props), {}, {
270
301
  height: height,
271
- switcherIcon: /*#__PURE__*/_jsx(DownOutlined, {}),
302
+ switcherIcon: /*#__PURE__*/_jsx(VtxIcon, {
303
+ type: "downOutlined",
304
+ fileType: "svg"
305
+ }),
272
306
  showLine: {
273
307
  showLeafIcon: false
274
308
  },
@@ -287,28 +321,54 @@ var VtxTree = /*#__PURE__*/forwardRef(function (propsAll, ref) {
287
321
  var titleKey = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.title) || 'title';
288
322
  var title = nodeData[titleKey];
289
323
  if (renderMenuList) {
290
- var menuList = renderMenuList(nodeData);
324
+ var menuList = renderMenuList(nodeData).filter(function (item) {
325
+ return item.visible;
326
+ });
327
+ var arr = [];
328
+ if (menuList.length > maxButtonCount) {
329
+ arr = arr.concat(renderMenuIcon(menuList.slice(0, maxButtonCount - 1), nodeData));
330
+ arr.push( /*#__PURE__*/_jsx(Dropdown, {
331
+ placement: "bottom",
332
+ menu: {
333
+ items: menuList.slice(maxButtonCount - 1).map(function (item) {
334
+ return {
335
+ key: item.label,
336
+ label: /*#__PURE__*/_jsxs("div", {
337
+ className: "".concat(prefixCls, "-menu-item-label"),
338
+ children: [item.icon, item.label]
339
+ })
340
+ };
341
+ }),
342
+ onClick: function onClick(obj) {
343
+ var key = obj.key,
344
+ domEvent = obj.domEvent;
345
+ domEvent.stopPropagation();
346
+ var temp = menuList.find(function (v) {
347
+ return v.label == key;
348
+ });
349
+ (temp === null || temp === void 0 ? void 0 : temp.onClick) && temp.onClick(nodeData);
350
+ }
351
+ },
352
+ trigger: ['click'],
353
+ children: /*#__PURE__*/_jsx("span", {
354
+ className: "".concat(prefixCls, "-menu-item-icon"),
355
+ onClick: function onClick(e) {
356
+ e.stopPropagation();
357
+ },
358
+ children: /*#__PURE__*/_jsx(EllipsisOutlined, {})
359
+ })
360
+ }));
361
+ } else {
362
+ arr = arr.concat(renderMenuIcon(menuList, nodeData));
363
+ }
291
364
  return /*#__PURE__*/_jsxs("div", {
292
365
  className: classnames("".concat(prefixCls, "-menu-wrap"), hashId),
293
366
  children: [/*#__PURE__*/_jsx("span", {
294
367
  children: title
295
368
  }), /*#__PURE__*/_jsx("div", {
296
369
  className: classnames("".concat(prefixCls, "-menu-list"), hashId),
297
- children: menuList.filter(function (item) {
298
- return item.visible;
299
- }).map(function (item) {
300
- return /*#__PURE__*/_jsx(Tooltip, {
301
- title: item.label,
302
- children: /*#__PURE__*/_jsx("span", {
303
- className: classnames("".concat(prefixCls, "-menu-item-icon"), hashId),
304
- onClick: function onClick(e) {
305
- e.stopPropagation();
306
- // eslint-disable-next-line @typescript-eslint/no-unused-expressions
307
- item.onClick && item.onClick(nodeData);
308
- },
309
- children: item.icon
310
- })
311
- }, item.label);
370
+ children: /*#__PURE__*/_jsxs("div", {
371
+ children: [arr, " "]
312
372
  })
313
373
  })]
314
374
  });
@@ -325,7 +385,7 @@ VtxTree.propTypes = {
325
385
  treeData: PropTypes.array,
326
386
  selectedKeys: PropTypes.array,
327
387
  defaultSelectedKeys: PropTypes.array,
328
- expandedKeys: PropTypes.bool,
388
+ expandedKeys: PropTypes.array,
329
389
  onExpand: PropTypes.func,
330
390
  multiple: PropTypes.bool,
331
391
  autoExpandParent: PropTypes.bool,
@@ -333,7 +393,11 @@ VtxTree.propTypes = {
333
393
  searchPlaceholder: PropTypes.string,
334
394
  renderMenuList: PropTypes.func,
335
395
  titleClassName: PropTypes.func,
336
- fieldNames: PropTypes.array,
396
+ fieldNames: PropTypes.shape({
397
+ title: PropTypes.string,
398
+ key: PropTypes.string,
399
+ children: PropTypes.string
400
+ }),
337
401
  defaultExpandAll: PropTypes.bool,
338
402
  expandAction: PropTypes.oneOfType([PropTypes.string, PropTypes.bool])
339
403
  };