@4399ywkf/design 1.3.12 → 2.1.0

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 (114) hide show
  1. package/dist/MaxTokenSlider/index.d.ts +25 -0
  2. package/dist/MaxTokenSlider/index.js +148 -0
  3. package/dist/MaxTokenSlider/style.d.ts +6 -0
  4. package/dist/MaxTokenSlider/style.js +14 -0
  5. package/dist/Table/components/ColumnSetting/index.js +25 -35
  6. package/dist/Table/components/ColumnSetting/style.d.ts +16 -0
  7. package/dist/Table/components/ColumnSetting/style.js +19 -0
  8. package/dist/Table/components/EnumFilter/index.d.ts +8 -8
  9. package/dist/Table/components/EnumFilter/index.js +34 -36
  10. package/dist/Table/components/EnumFilter/style.d.ts +54 -0
  11. package/dist/Table/components/EnumFilter/style.js +58 -0
  12. package/dist/Table/components/Export/RadioMode.d.ts +1 -5
  13. package/dist/Table/components/Export/RadioMode.js +10 -11
  14. package/dist/Table/components/Export/index.js +160 -207
  15. package/dist/Table/components/Export/style.d.ts +15 -0
  16. package/dist/Table/components/Export/style.js +19 -0
  17. package/dist/Table/components/FilterDropdown/index.d.ts +7 -7
  18. package/dist/Table/components/FilterDropdown/index.js +6 -7
  19. package/dist/Table/components/FilterDropdown/style.d.ts +13 -0
  20. package/dist/Table/components/FilterDropdown/style.js +17 -0
  21. package/dist/Table/components/FilterKeys/index.d.ts +2 -2
  22. package/dist/Table/components/FilterKeys/index.js +51 -69
  23. package/dist/Table/components/FilterKeys/style.d.ts +29 -0
  24. package/dist/Table/components/FilterKeys/style.js +33 -0
  25. package/dist/Table/components/Reload/index.js +8 -21
  26. package/dist/Table/components/SearchInput/index.d.ts +3 -4
  27. package/dist/Table/components/SearchInput/index.js +50 -38
  28. package/dist/Table/components/SearchInput/style.d.ts +11 -0
  29. package/dist/Table/components/SearchInput/style.js +15 -0
  30. package/dist/Table/components/TableSize/index.js +7 -10
  31. package/dist/Table/components/TableTitle/index.d.ts +1 -1
  32. package/dist/Table/components/TableTitle/index.js +36 -38
  33. package/dist/Table/components/TableTitle/style.d.ts +25 -0
  34. package/dist/Table/components/TableTitle/style.js +29 -0
  35. package/dist/Table/context.d.ts +32 -0
  36. package/dist/Table/context.js +31 -0
  37. package/dist/Table/hooks/index.d.ts +8 -0
  38. package/dist/Table/hooks/index.js +8 -0
  39. package/dist/Table/hooks/useColumnsInit.d.ts +6 -0
  40. package/dist/Table/hooks/useColumnsInit.js +44 -0
  41. package/dist/Table/hooks/useEmptyText.d.ts +11 -0
  42. package/dist/Table/hooks/useEmptyText.js +34 -0
  43. package/dist/Table/hooks/usePagination.d.ts +9 -0
  44. package/dist/Table/hooks/usePagination.js +50 -0
  45. package/dist/Table/hooks/useQuerySnapshot.d.ts +6 -0
  46. package/dist/Table/hooks/useQuerySnapshot.js +63 -0
  47. package/dist/Table/hooks/useRowSelection.d.ts +11 -0
  48. package/dist/Table/hooks/useRowSelection.js +34 -0
  49. package/dist/Table/hooks/useSearchEffect.d.ts +9 -0
  50. package/dist/Table/hooks/useSearchEffect.js +48 -0
  51. package/dist/Table/hooks/useTableChange.d.ts +10 -0
  52. package/dist/Table/hooks/useTableChange.js +56 -0
  53. package/dist/Table/hooks/useTriggerSearch.d.ts +22 -0
  54. package/dist/Table/hooks/useTriggerSearch.js +130 -0
  55. package/dist/Table/index.d.ts +1 -1
  56. package/dist/Table/index.js +25 -1
  57. package/dist/Table/store/createStore.d.ts +2 -0
  58. package/dist/Table/store/createStore.js +30 -0
  59. package/dist/Table/store/hooks.d.ts +33 -0
  60. package/dist/Table/store/hooks.js +98 -0
  61. package/dist/Table/store/slices/column/actions.d.ts +9 -0
  62. package/dist/Table/store/slices/column/actions.js +10 -0
  63. package/dist/Table/store/slices/column/initialState.d.ts +2 -0
  64. package/dist/Table/store/slices/column/initialState.js +3 -0
  65. package/dist/Table/store/slices/persist/actions.d.ts +10 -0
  66. package/dist/Table/store/slices/persist/actions.js +28 -0
  67. package/dist/Table/store/slices/persist/api.d.ts +8 -0
  68. package/dist/Table/store/slices/persist/api.js +40 -0
  69. package/dist/Table/store/slices/query/actions.d.ts +32 -0
  70. package/dist/Table/store/slices/query/actions.js +129 -0
  71. package/dist/Table/store/slices/query/initialState.d.ts +2 -0
  72. package/dist/Table/store/slices/query/initialState.js +5 -0
  73. package/dist/Table/store/slices/request/actions.d.ts +8 -0
  74. package/dist/Table/store/slices/request/actions.js +14 -0
  75. package/dist/Table/store/slices/request/initialState.d.ts +2 -0
  76. package/dist/Table/store/slices/request/initialState.js +7 -0
  77. package/dist/Table/store/slices/ui/actions.d.ts +11 -0
  78. package/dist/Table/store/slices/ui/actions.js +15 -0
  79. package/dist/Table/store/slices/ui/initialState.d.ts +2 -0
  80. package/dist/Table/store/slices/ui/initialState.js +4 -0
  81. package/dist/Table/store/types.d.ts +79 -0
  82. package/dist/Table/store/types.js +1 -0
  83. package/dist/Table/style.d.ts +3 -0
  84. package/dist/Table/style.js +10 -0
  85. package/dist/Table/table.d.ts +2 -8
  86. package/dist/Table/table.js +160 -185
  87. package/dist/Table/type.d.ts +50 -64
  88. package/dist/Table/type.js +1 -3
  89. package/dist/Table/utils/Provide.d.ts +6 -9
  90. package/dist/Table/utils/Provide.js +4 -258
  91. package/dist/Table/utils/columnKey.d.ts +2 -0
  92. package/dist/Table/utils/columnKey.js +6 -0
  93. package/dist/Table/utils/getColumn.d.ts +7 -7
  94. package/dist/Table/utils/getColumnEnumProps.d.ts +4 -2
  95. package/dist/Table/utils/getColumnEnumProps.js +8 -6
  96. package/dist/Table/utils/getColumnMerge.d.ts +7 -2
  97. package/dist/Table/utils/getColumnMerge.js +3 -2
  98. package/dist/Table/utils/getDateColumn.d.ts +8 -7
  99. package/dist/Table/utils/getDateColumn.js +22 -68
  100. package/dist/Table/utils/getInputColumn.d.ts +2 -1
  101. package/dist/Table/utils/getInputColumn.js +2 -6
  102. package/dist/Table/utils/getSort.d.ts +4 -2
  103. package/dist/Table/utils/getSort.js +15 -12
  104. package/dist/Table/utils/index.d.ts +5 -20
  105. package/dist/Table/utils/index.js +16 -136
  106. package/dist/index.d.ts +2 -0
  107. package/dist/index.js +3 -0
  108. package/package.json +34 -25
  109. package/dist/Table/components/ColumnSetting/index.css +0 -4
  110. package/dist/Table/components/EnumFilter/index.css +0 -57
  111. package/dist/Table/components/FilterDropdown/index.css +0 -11
  112. package/dist/Table/components/FilterKeys/index.css +0 -19
  113. package/dist/Table/components/SearchInput/style.css +0 -10
  114. package/dist/Table/style.css +0 -42
@@ -1,20 +1,19 @@
1
1
  import React from 'react';
2
2
  import { Button } from 'antd';
3
- import classNames from 'classnames';
4
- import "./index.css";
3
+ import { useStyles } from "./style";
5
4
  var FilterDropdown = function FilterDropdown(_ref) {
6
5
  var children = _ref.children,
7
6
  disabled = _ref.disabled,
8
7
  onReset = _ref.onReset,
9
8
  onOk = _ref.onOk;
10
- var filterDropdownMainClassNames = classNames('table-filter-dropdown-main');
11
- var filterDropdownBtnClassNames = classNames('table-filter-dropdown-btns');
9
+ var _useStyles = useStyles(),
10
+ styles = _useStyles.styles;
12
11
  return /*#__PURE__*/React.createElement("div", {
13
- className: 'table-filter-dropdown'
12
+ className: styles.root
14
13
  }, /*#__PURE__*/React.createElement("div", {
15
- className: filterDropdownMainClassNames
14
+ className: styles.main
16
15
  }, children), /*#__PURE__*/React.createElement("div", {
17
- className: filterDropdownBtnClassNames
16
+ className: styles.btns
18
17
  }, /*#__PURE__*/React.createElement(Button, {
19
18
  size: 'small',
20
19
  type: 'link',
@@ -0,0 +1,13 @@
1
+ export declare const useStyles: (props?: unknown) => import("antd-style").ReturnStyles<{
2
+ root: {};
3
+ main: {
4
+ padding: number;
5
+ };
6
+ btns: {
7
+ padding: string;
8
+ display: "flex";
9
+ justifyContent: "space-between";
10
+ overflow: "hidden";
11
+ borderTop: string;
12
+ };
13
+ }>;
@@ -0,0 +1,17 @@
1
+ import { createStyles } from 'antd-style';
2
+ export var useStyles = createStyles(function (_ref) {
3
+ var token = _ref.token;
4
+ return {
5
+ root: {},
6
+ main: {
7
+ padding: 4
8
+ },
9
+ btns: {
10
+ padding: '7px 8px',
11
+ display: 'flex',
12
+ justifyContent: 'space-between',
13
+ overflow: 'hidden',
14
+ borderTop: "1px solid ".concat(token.colorBorderSecondary)
15
+ }
16
+ };
17
+ });
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
- import './index.css';
2
+ import type { FilterInputValue } from '../../store/types';
3
3
  declare const FilterKeys: ({ data }: {
4
4
  data: {
5
5
  key: string;
6
- value: string[];
6
+ value: FilterInputValue;
7
7
  }[];
8
8
  }) => React.JSX.Element;
9
9
  export default FilterKeys;
@@ -1,64 +1,56 @@
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); }
1
7
  import { Popover, Tag, Typography } from 'antd';
2
8
  import _ from 'lodash-es';
3
9
  import Overflow from 'rc-overflow';
4
- import React, { useContext, useMemo } from 'react';
5
- import { useStore } from 'zustand';
10
+ import React, { useMemo } from 'react';
11
+ import { useColumns, useFilter } from "../../store/hooks";
6
12
  import { genColumnKey } from "../../utils";
7
- import { StoreContext, TableContext } from "../../utils/Provide";
8
- import "./index.css";
9
-
10
- // Update the interface to match the actual structure being used
11
-
13
+ import { useStyles } from "./style";
12
14
  var Text = Typography.Text;
13
15
  var FilterKeys = function FilterKeys(_ref) {
14
16
  var data = _ref.data;
15
- var _useContext = useContext(TableContext),
16
- propsColumns = _useContext.columns;
17
- var store = useContext(StoreContext);
18
- var _useStore = useStore(store),
19
- setFilter = _useStore.setFilter;
17
+ var _useStyles = useStyles(),
18
+ styles = _useStyles.styles;
19
+ var _useColumns = useColumns(),
20
+ columns = _useColumns.columns;
21
+ var _useFilter = useFilter(),
22
+ setFilter = _useFilter.setFilter;
20
23
  var renderKeyName = function renderKeyName(key) {
21
- var _propsColumns$find;
22
- return (_propsColumns$find = propsColumns.find(function (column, index) {
24
+ var _find;
25
+ var title = (_find = columns.find(function (column, index) {
23
26
  var _column$dataIndex;
24
27
  var columnKey = genColumnKey(column.key || (Array.isArray(column.dataIndex) ? column.dataIndex.join('.') : (_column$dataIndex = column.dataIndex) === null || _column$dataIndex === void 0 ? void 0 : _column$dataIndex.toString()), index);
25
28
  return key === columnKey;
26
- })) === null || _propsColumns$find === void 0 ? void 0 : _propsColumns$find.title;
29
+ })) === null || _find === void 0 ? void 0 : _find.title;
30
+ return typeof title === 'function' ? key : title;
27
31
  };
28
32
  var handleOnCloseTag = function handleOnCloseTag(key) {
29
33
  setFilter(key, undefined);
30
34
  };
31
35
  var renderItem = function renderItem(item) {
32
36
  var _obj$fullFilter, _obj$fullFilter3;
33
- // 查找此过滤器的列配置
34
- var obj = propsColumns.find(function (column, index) {
37
+ var obj = columns.find(function (column, index) {
35
38
  var _column$dataIndex2;
36
39
  var columnKey = genColumnKey(column.key || (Array.isArray(column.dataIndex) ? column.dataIndex.join('.') : (_column$dataIndex2 = column.dataIndex) === null || _column$dataIndex2 === void 0 ? void 0 : _column$dataIndex2.toString()), index);
37
40
  return item.key === columnKey;
38
41
  });
39
-
40
- // 确定如何显示值
42
+ var normalizedValues = item.value.filter(function (value) {
43
+ return typeof value === 'string' || typeof value === 'number';
44
+ });
41
45
  var displayValue;
42
46
  if (obj && (_obj$fullFilter = obj.fullFilter) !== null && _obj$fullFilter !== void 0 && _obj$fullFilter.valueRenderer) {
43
- // 使用自定义渲染器(现在可以返回React.ReactNode)
44
- displayValue = obj.fullFilter.valueRenderer(item.value);
47
+ displayValue = obj.fullFilter.valueRenderer(normalizedValues);
45
48
  } else {
46
49
  var _obj$fullFilter2;
47
- // 使用默认连接方法
48
50
  var separator = (obj === null || obj === void 0 || (_obj$fullFilter2 = obj.fullFilter) === null || _obj$fullFilter2 === void 0 ? void 0 : _obj$fullFilter2.valueSeparator) || ' | ';
49
- displayValue = item.value.join(separator);
50
- }
51
-
52
- // 为了tooltip,我们需要一个字符串版本
53
- var tooltipValue;
54
- if ( /*#__PURE__*/React.isValidElement(displayValue)) {
55
- // 如果是React元素,对tooltip使用简单的文本表示
56
- tooltipValue = "".concat(item.label, " : ").concat(item.value.join(' | '));
57
- } else {
58
- tooltipValue = "".concat(item.label, " : ").concat(displayValue);
51
+ displayValue = normalizedValues.join(separator);
59
52
  }
60
-
61
- // 获取用户自定义的Tag className
53
+ var tooltipValue = /*#__PURE__*/React.isValidElement(displayValue) ? "".concat(String(item.label), " : ").concat(normalizedValues.join(' | ')) : "".concat(String(item.label), " : ").concat(displayValue);
62
54
  var customTagClassName = obj === null || obj === void 0 || (_obj$fullFilter3 = obj.fullFilter) === null || _obj$fullFilter3 === void 0 ? void 0 : _obj$fullFilter3.tagClassName;
63
55
  return /*#__PURE__*/React.createElement(Tag, {
64
56
  key: item.key,
@@ -78,12 +70,12 @@ var FilterKeys = function FilterKeys(_ref) {
78
70
  }, item.label, " : ", displayValue));
79
71
  };
80
72
  var renderRest = function renderRest(omittedItems) {
81
- if (!omittedItems || _.isEmpty(omittedItems)) return;
73
+ if (!omittedItems || _.isEmpty(omittedItems)) return undefined;
82
74
  return /*#__PURE__*/React.createElement(Popover, {
83
75
  overlayInnerStyle: {
84
76
  padding: 6
85
77
  },
86
- className: 'overflow-button',
78
+ className: styles.overflowButton,
87
79
  content: omittedItems.map(function (item) {
88
80
  return renderItem(item);
89
81
  })
@@ -91,62 +83,52 @@ var FilterKeys = function FilterKeys(_ref) {
91
83
  };
92
84
  var dataSource = useMemo(function () {
93
85
  return data.map(function (item) {
94
- var obj = propsColumns.find(function (column, index) {
86
+ var _renderKeyName, _obj$fullFilter4, _obj$fullFilter5;
87
+ var obj = columns.find(function (column, index) {
95
88
  var _column$dataIndex3;
96
89
  var columnKey = genColumnKey(column.key || (Array.isArray(column.dataIndex) ? column.dataIndex.join('.') : (_column$dataIndex3 = column.dataIndex) === null || _column$dataIndex3 === void 0 ? void 0 : _column$dataIndex3.toString()), index);
97
90
  return item.key === columnKey;
98
91
  });
99
92
  var dataObj = {
100
- label: renderKeyName(item.key),
93
+ label: (_renderKeyName = renderKeyName(item.key)) !== null && _renderKeyName !== void 0 ? _renderKeyName : item.key,
101
94
  value: item.value,
102
95
  key: item.key
103
96
  };
104
- if (obj && obj.fullFilter && obj.fullFilter.type === 'enum') {
105
- var _obj$fullFilter4;
106
- if (((_obj$fullFilter4 = obj.fullFilter) === null || _obj$fullFilter4 === void 0 ? void 0 : _obj$fullFilter4.optionLabelProp) === 'text') {
107
- // 回填到选择框的 Option 的属性值,默认是 value。比如在子元素需要高亮效果时,此值可以设为 text
108
- // 通过value 找到 text的值
109
- var options = obj.fullFilter.options;
110
- var labelPropValue = item.value.map(function (i) {
111
- var itemObj = options.find(function (option) {
112
- return option.value === i;
113
- });
114
- if (itemObj && itemObj.text) {
115
- return itemObj.text;
116
- }
117
- return i; // Return original value if not found
97
+ if ((obj === null || obj === void 0 || (_obj$fullFilter4 = obj.fullFilter) === null || _obj$fullFilter4 === void 0 ? void 0 : _obj$fullFilter4.type) === 'enum' && ((_obj$fullFilter5 = obj.fullFilter) === null || _obj$fullFilter5 === void 0 ? void 0 : _obj$fullFilter5.optionLabelProp) === 'text') {
98
+ var _obj$fullFilter$optio;
99
+ var options = (_obj$fullFilter$optio = obj.fullFilter.options) !== null && _obj$fullFilter$optio !== void 0 ? _obj$fullFilter$optio : [];
100
+ var labelPropValue = item.value.map(function (i) {
101
+ var itemObj = options.find(function (option) {
102
+ return option.value === i;
118
103
  });
119
- if (labelPropValue) {
120
- dataObj.value = labelPropValue;
104
+ if (itemObj && itemObj.text) {
105
+ return itemObj.text;
121
106
  }
122
- }
107
+ return i;
108
+ });
109
+ return _objectSpread(_objectSpread({}, dataObj), {}, {
110
+ value: labelPropValue
111
+ });
123
112
  }
124
113
  return dataObj;
125
114
  });
126
- }, [data, propsColumns]);
115
+ }, [data, columns]);
127
116
  var patchClose = function patchClose() {
128
- dataSource.map(function (o) {
117
+ dataSource.forEach(function (o) {
129
118
  return handleOnCloseTag(o.key);
130
119
  });
131
120
  };
132
121
  return /*#__PURE__*/React.createElement("div", {
133
- style: {
134
- display: 'flex',
135
- flex: 1,
136
- alignItems: 'center',
137
- gap: 4
138
- }
122
+ className: styles.root
139
123
  }, /*#__PURE__*/React.createElement(Overflow, {
140
124
  maxCount: 'responsive',
141
125
  renderRest: renderRest,
142
- className: 'custom-overflow',
126
+ className: styles.overflow,
143
127
  data: dataSource,
144
128
  renderItem: renderItem
145
- }), /*#__PURE__*/React.createElement("span", {
146
- style: {
147
- cursor: 'pointer',
148
- fontWeight: 'bold'
149
- },
129
+ }), /*#__PURE__*/React.createElement("button", {
130
+ type: 'button',
131
+ className: styles.clearButton,
150
132
  onClick: patchClose
151
133
  }, "\u6E05\u9664"));
152
134
  };
@@ -0,0 +1,29 @@
1
+ export declare const useStyles: (props?: unknown) => import("antd-style").ReturnStyles<{
2
+ root: {
3
+ display: "flex";
4
+ flex: number;
5
+ alignItems: "center";
6
+ gap: number;
7
+ };
8
+ overflow: {
9
+ display: "flex";
10
+ flexWrap: "wrap";
11
+ maxWidth: string;
12
+ position: "relative";
13
+ flex: number;
14
+ justifyContent: "flex-end";
15
+ alignItems: "center";
16
+ marginRight: number;
17
+ };
18
+ overflowButton: {
19
+ cursor: "pointer";
20
+ };
21
+ clearButton: {
22
+ border: number;
23
+ background: string;
24
+ cursor: "pointer";
25
+ fontWeight: number;
26
+ color: string;
27
+ padding: number;
28
+ };
29
+ }>;
@@ -0,0 +1,33 @@
1
+ import { createStyles } from 'antd-style';
2
+ export var useStyles = createStyles(function (_ref) {
3
+ var token = _ref.token;
4
+ return {
5
+ root: {
6
+ display: 'flex',
7
+ flex: 1,
8
+ alignItems: 'center',
9
+ gap: token.marginXXS
10
+ },
11
+ overflow: {
12
+ display: 'flex',
13
+ flexWrap: 'wrap',
14
+ maxWidth: '100%',
15
+ position: 'relative',
16
+ flex: 1,
17
+ justifyContent: 'flex-end',
18
+ alignItems: 'center',
19
+ marginRight: token.marginXS
20
+ },
21
+ overflowButton: {
22
+ cursor: 'pointer'
23
+ },
24
+ clearButton: {
25
+ border: 0,
26
+ background: 'transparent',
27
+ cursor: 'pointer',
28
+ fontWeight: token.fontWeightStrong,
29
+ color: token.colorText,
30
+ padding: 0
31
+ }
32
+ };
33
+ });
@@ -1,29 +1,16 @@
1
- import React, { useContext, useEffect, useRef } from 'react';
2
- import { Tooltip } from 'antd';
3
1
  import { ReloadOutlined } from '@ant-design/icons';
4
- import { StoreContext, TableContext } from "../../utils/Provide";
5
- import { useStore } from 'zustand';
2
+ import { Tooltip } from 'antd';
3
+ import React from 'react';
4
+ import { useTableContext } from "../../context";
6
5
  var Reload = function Reload() {
7
- var store = useContext(StoreContext);
8
- var _useContext = useContext(TableContext),
9
- onSearch = _useContext.onSearch;
10
- var _useStore = useStore(store),
11
- queryData = _useStore.queryData;
12
- var queryDataRef = useRef(store.getState().queryData);
13
- useEffect(function () {
14
- return store.subscribe(function (state) {
15
- return queryDataRef.current = state.queryData;
16
- });
17
- }, []);
18
- var reloadData = function reloadData() {
19
- if (onSearch) {
20
- onSearch(queryDataRef.current);
21
- }
22
- };
6
+ var _useTableContext = useTableContext(),
7
+ reload = _useTableContext.reload;
23
8
  return /*#__PURE__*/React.createElement(Tooltip, {
24
9
  title: '重载'
25
10
  }, /*#__PURE__*/React.createElement(ReloadOutlined, {
26
- onClick: reloadData
11
+ onClick: function onClick() {
12
+ return reload();
13
+ }
27
14
  }));
28
15
  };
29
16
  export default Reload;
@@ -1,12 +1,11 @@
1
1
  import React from 'react';
2
- import './style.css';
3
2
  interface SearchInputProps {
4
3
  data?: {
5
4
  key: string;
6
- title: any;
5
+ title: React.ReactNode;
7
6
  }[];
8
- quickInputToolTipRender?: (v: any[]) => React.ReactNode;
9
- quickInputPlaceholder?: (v: any[]) => string;
7
+ quickInputToolTipRender?: (v: React.ReactNode[]) => React.ReactNode;
8
+ quickInputPlaceholder?: (v: React.ReactNode[]) => string;
10
9
  }
11
10
  declare const SearchInput: (props: SearchInputProps) => React.JSX.Element;
12
11
  export default SearchInput;
@@ -1,84 +1,96 @@
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 _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
3
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
4
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
1
5
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
6
  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."); }
3
7
  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); }
4
8
  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; }
5
9
  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; } }
6
10
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
- import React, { useContext, useState } from 'react';
8
- import { Input, Tooltip, Space } from 'antd';
9
11
  import { QuestionCircleOutlined } from '@ant-design/icons';
10
- import "./style.css";
11
12
  import { useRequest } from 'ahooks';
12
- import { StoreContext } from "../../utils/Provide";
13
- import { useStore } from 'zustand';
13
+ import { Input, Space, Tooltip } from 'antd';
14
+ import React, { useState } from 'react';
15
+ import { useTableStore } from "../../store/hooks";
16
+ import { useStyles } from "./style";
14
17
  var SearchInput = function SearchInput(props) {
18
+ var _useStyles = useStyles(),
19
+ styles = _useStyles.styles;
15
20
  var data = props.data,
16
21
  quickInputToolTipRender = props.quickInputToolTipRender,
17
22
  quickInputPlaceholder = props.quickInputPlaceholder;
18
- var store = useContext(StoreContext);
19
- var _useStore = useStore(store),
20
- setSearch = _useStore.setSearch,
21
- queryData = _useStore.queryData;
22
- var _useState = useState(queryData.search),
23
+ var search = useTableStore(function (s) {
24
+ return s.search;
25
+ });
26
+ var setSearch = useTableStore(function (s) {
27
+ return s.setSearch;
28
+ });
29
+ var _useState = useState(search),
23
30
  _useState2 = _slicedToArray(_useState, 2),
24
31
  inputValue = _useState2[0],
25
32
  setInputValue = _useState2[1];
26
- var handleChangeStore = function handleChangeStore(v) {
27
- var value = v.target.value;
28
- setSearch(value);
29
- };
30
-
31
- // @ts-ignore
33
+ var handleChangeStore = /*#__PURE__*/function () {
34
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(v) {
35
+ var value;
36
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
37
+ while (1) switch (_context.prev = _context.next) {
38
+ case 0:
39
+ value = v.target.value;
40
+ setSearch(value);
41
+ case 2:
42
+ case "end":
43
+ return _context.stop();
44
+ }
45
+ }, _callee);
46
+ }));
47
+ return function handleChangeStore(_x) {
48
+ return _ref.apply(this, arguments);
49
+ };
50
+ }();
32
51
  var _useRequest = useRequest(handleChangeStore, {
33
52
  debounceWait: 300,
34
53
  manual: true
35
54
  }),
36
- _ = _useRequest._,
37
55
  run = _useRequest.run;
38
56
  var handleChangeInput = function handleChangeInput(v) {
39
57
  setInputValue(v.target.value);
40
58
  run(v);
41
59
  };
42
-
43
- // 自定义选择 input 的渲染逻辑
44
60
  var renderToolTipTitle = function renderToolTipTitle() {
45
61
  if (quickInputToolTipRender) {
46
62
  var _data$map;
47
- var customElement = quickInputToolTipRender((_data$map = data === null || data === void 0 ? void 0 : data.map(function (o) {
63
+ return quickInputToolTipRender((_data$map = data === null || data === void 0 ? void 0 : data.map(function (o) {
48
64
  return o.title;
49
65
  })) !== null && _data$map !== void 0 ? _data$map : []);
50
- return customElement;
51
- } else {
52
- return /*#__PURE__*/React.createElement(Tooltip, {
53
- title: /*#__PURE__*/React.createElement("div", {
54
- className: 'richTableSearchInputTooltip'
55
- }, "\u652F\u6301\u5FEB\u901F\u641C\u7D22\u7684\u5B57\u6BB5\uFF1A", /*#__PURE__*/React.createElement(Space, {
56
- wrap: true
57
- }, data === null || data === void 0 ? void 0 : data.map(function (o) {
58
- return o.title;
59
- })))
60
- }, /*#__PURE__*/React.createElement(QuestionCircleOutlined, null));
61
66
  }
67
+ return /*#__PURE__*/React.createElement(Tooltip, {
68
+ title: /*#__PURE__*/React.createElement("div", {
69
+ className: styles.tooltip
70
+ }, "\u652F\u6301\u5FEB\u901F\u641C\u7D22\u7684\u5B57\u6BB5\uFF1A", /*#__PURE__*/React.createElement(Space, {
71
+ wrap: true
72
+ }, data === null || data === void 0 ? void 0 : data.map(function (o) {
73
+ return o.title;
74
+ })))
75
+ }, /*#__PURE__*/React.createElement(QuestionCircleOutlined, null));
62
76
  };
63
77
  var inputPlaceholderRender = function inputPlaceholderRender() {
64
78
  if (quickInputPlaceholder) {
65
79
  var _data$map2;
66
- var placeholder = quickInputPlaceholder((_data$map2 = data === null || data === void 0 ? void 0 : data.map(function (o) {
80
+ return quickInputPlaceholder((_data$map2 = data === null || data === void 0 ? void 0 : data.map(function (o) {
67
81
  return o.title;
68
82
  })) !== null && _data$map2 !== void 0 ? _data$map2 : []);
69
- return placeholder;
70
- } else {
71
- return "\u5FEB\u901F\u641C\u7D22: ".concat(data === null || data === void 0 ? void 0 : data.map(function (o) {
72
- return o.title;
73
- }).join(','));
74
83
  }
84
+ return "\u5FEB\u901F\u641C\u7D22: ".concat(data === null || data === void 0 ? void 0 : data.map(function (o) {
85
+ return o.title;
86
+ }).join(','));
75
87
  };
76
88
  return /*#__PURE__*/React.createElement(Input, {
77
89
  onChange: handleChangeInput,
78
90
  value: inputValue,
79
91
  placeholder: inputPlaceholderRender(),
80
92
  prefix: renderToolTipTitle(),
81
- className: 'filterInput',
93
+ className: styles.input,
82
94
  allowClear: true
83
95
  });
84
96
  };
@@ -0,0 +1,11 @@
1
+ export declare const useStyles: (props?: unknown) => import("antd-style").ReturnStyles<{
2
+ tooltip: {
3
+ display: "flex";
4
+ flexDirection: "row";
5
+ flexWrap: "wrap";
6
+ };
7
+ input: {
8
+ flex: string;
9
+ marginRight: number;
10
+ };
11
+ }>;
@@ -0,0 +1,15 @@
1
+ import { createStyles } from 'antd-style';
2
+ export var useStyles = createStyles(function (_ref) {
3
+ var token = _ref.token;
4
+ return {
5
+ tooltip: {
6
+ display: 'flex',
7
+ flexDirection: 'row',
8
+ flexWrap: 'wrap'
9
+ },
10
+ input: {
11
+ flex: '0 0 200px',
12
+ marginRight: token.marginXS
13
+ }
14
+ };
15
+ });
@@ -1,8 +1,7 @@
1
- import React, { useContext } from 'react';
2
- import { Tooltip, Dropdown } from 'antd';
3
1
  import { ColumnHeightOutlined } from '@ant-design/icons';
4
- import { StoreContext } from "../../utils/Provide";
5
- import { useStore } from 'zustand';
2
+ import { Dropdown, Tooltip } from 'antd';
3
+ import React from 'react';
4
+ import { useTableSize } from "../../store/hooks";
6
5
  var items = [{
7
6
  key: 'large',
8
7
  label: '默认'
@@ -14,11 +13,9 @@ var items = [{
14
13
  label: '紧凑'
15
14
  }];
16
15
  var TableSize = function TableSize() {
17
- var _queryData$size;
18
- var store = useContext(StoreContext);
19
- var _useStore = useStore(store),
20
- queryData = _useStore.queryData,
21
- setSize = _useStore.setSize;
16
+ var _useTableSize = useTableSize(),
17
+ size = _useTableSize.size,
18
+ setSize = _useTableSize.setSize;
22
19
  var onClick = function onClick(_ref) {
23
20
  var key = _ref.key;
24
21
  setSize(key);
@@ -29,7 +26,7 @@ var TableSize = function TableSize() {
29
26
  },
30
27
  menu: {
31
28
  items: items,
32
- selectedKeys: [(_queryData$size = queryData.size) !== null && _queryData$size !== void 0 ? _queryData$size : 'large'],
29
+ selectedKeys: [size !== null && size !== void 0 ? size : 'large'],
33
30
  onClick: onClick
34
31
  },
35
32
  arrow: true,
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  interface TableTitleProps {
3
- currentPageData?: readonly any[];
3
+ currentPageData?: readonly unknown[];
4
4
  }
5
5
  declare const TableTitle: (props: TableTitleProps) => React.JSX.Element | undefined;
6
6
  export default TableTitle;