@hw-component/table 1.9.38 → 1.9.39

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.
@@ -0,0 +1,37 @@
1
+ import { HFormInstance, HItemProps } from "@hw-component/form/es/Form/modal";
2
+ import React from "react";
3
+ export declare const sizeObj: {
4
+ xl: {
5
+ min: number;
6
+ max: number;
7
+ };
8
+ xxl: {
9
+ min: number;
10
+ };
11
+ lg: {
12
+ min: number;
13
+ max: number;
14
+ };
15
+ md: {
16
+ min: number;
17
+ max: number;
18
+ };
19
+ sm: {
20
+ min: number;
21
+ max: number;
22
+ };
23
+ xs: {
24
+ max: number;
25
+ };
26
+ };
27
+ export declare const defaultSubItem: {
28
+ type: string;
29
+ itemProps: {
30
+ position: string;
31
+ };
32
+ style: {
33
+ padding: number;
34
+ marginLeft: number;
35
+ };
36
+ render: (item: HItemProps, node: React.ReactNode, form: HFormInstance) => JSX.Element;
37
+ };
@@ -0,0 +1,46 @@
1
+ // welcome to hoo hoo hoo
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { DefaultSubComponent } from '../defaultSubComponent.js';
4
+
5
+ var sizeObj = {
6
+ xl: {
7
+ min: 1200,
8
+ max: 1600
9
+ },
10
+ xxl: {
11
+ min: 1600
12
+ },
13
+ lg: {
14
+ min: 992,
15
+ max: 1200
16
+ },
17
+ md: {
18
+ min: 768,
19
+ max: 992
20
+ },
21
+ sm: {
22
+ min: 576,
23
+ max: 768
24
+ },
25
+ xs: {
26
+ max: 576
27
+ }
28
+ };
29
+ var defaultSubItem = {
30
+ type: "submit",
31
+ itemProps: {
32
+ position: "end"
33
+ },
34
+ style: {
35
+ padding: 0,
36
+ marginLeft: -20
37
+ },
38
+ render: function render(item, node, form) {
39
+ return jsx(DefaultSubComponent, {
40
+ form: form
41
+ });
42
+ }
43
+ };
44
+
45
+ export { defaultSubItem, sizeObj };
46
+ // powered by hdj
@@ -0,0 +1,10 @@
1
+ import type { IHeaderProps } from "../modal";
2
+ declare const _default: ({ configData, loading, onFinish, hideLabel, labelWidth, table }: IHeaderProps) => {
3
+ tableInstance: import("../../modal").HTableInstance;
4
+ tableLabelWidth: number | undefined;
5
+ tableHideLabel: boolean | undefined;
6
+ subOnFinish: (value: Record<string, any>) => Promise<any>;
7
+ submitLoading: boolean | undefined;
8
+ headerConfigData: import("../../modal").ConfigDataModal;
9
+ };
10
+ export default _default;
@@ -0,0 +1,37 @@
1
+ // welcome to hoo hoo hoo
2
+ import { useHTableContext } from '../../context.js';
3
+ import useHTable from '../../hooks/useHTable.js';
4
+
5
+ var useHeaderDefaultProps = (function (_ref) {
6
+ var configData = _ref.configData,
7
+ loading = _ref.loading,
8
+ onFinish = _ref.onFinish,
9
+ hideLabel = _ref.hideLabel,
10
+ labelWidth = _ref.labelWidth,
11
+ table = _ref.table;
12
+ var _useHTableContext = useHTableContext(),
13
+ contextTableInstance = _useHTableContext.tableInstance,
14
+ contextLoading = _useHTableContext.loading,
15
+ contextOnFinish = _useHTableContext.onFinish,
16
+ contextConfigData = _useHTableContext.configData,
17
+ contextHideLabel = _useHTableContext.hideLabel,
18
+ contextLabelWidth = _useHTableContext.labelWidth;
19
+ var defaultTable = useHTable();
20
+ var headerConfigData = configData || contextConfigData;
21
+ var submitLoading = contextLoading || loading;
22
+ var subOnFinish = onFinish || contextOnFinish;
23
+ var tableHideLabel = typeof hideLabel === "undefined" ? contextHideLabel : hideLabel;
24
+ var tableLabelWidth = labelWidth || contextLabelWidth;
25
+ var tableInstance = table || contextTableInstance;
26
+ return {
27
+ tableInstance: tableInstance || defaultTable,
28
+ tableLabelWidth: tableLabelWidth,
29
+ tableHideLabel: tableHideLabel,
30
+ subOnFinish: subOnFinish,
31
+ submitLoading: submitLoading,
32
+ headerConfigData: headerConfigData
33
+ };
34
+ });
35
+
36
+ export { useHeaderDefaultProps as default };
37
+ // powered by hdj
@@ -0,0 +1,4 @@
1
+ import { IHeaderProps } from "../modal";
2
+ import { HItemProps } from "@hw-component/form/es/Form/modal";
3
+ declare const _default: ({ searchSpan, configData, table, }: IHeaderProps) => HItemProps[];
4
+ export default _default;
@@ -1,4 +1,10 @@
1
1
  // welcome to hoo hoo hoo
2
+ import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols';
3
+ import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
4
+ import _Object$getOwnPropertyDescriptor from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor';
5
+ import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors';
6
+ import _Object$defineProperties from '@babel/runtime-corejs3/core-js-stable/object/define-properties';
7
+ import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object/define-property';
2
8
  import _toConsumableArray from '@babel/runtime-corejs3/helpers/toConsumableArray';
3
9
  import _slicedToArray from '@babel/runtime-corejs3/helpers/slicedToArray';
4
10
  import _defineProperty from '@babel/runtime-corejs3/helpers/defineProperty';
@@ -9,80 +15,15 @@ import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js-stable/inst
9
15
  import _sliceInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/slice';
10
16
  import _mapInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/map';
11
17
  import _concatInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/concat';
12
- import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols';
13
- import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
14
- import _Object$getOwnPropertyDescriptor from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor';
15
- import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors';
16
- import _Object$defineProperties from '@babel/runtime-corejs3/core-js-stable/object/define-properties';
17
- import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object/define-property';
18
- import { jsx } from 'react/jsx-runtime';
19
18
  import { useState, useEffect } from 'react';
20
- import { useClassName } from '../hooks/index.js';
21
- import { DefaultSubComponent } from './defaultSubComponent.js';
22
- import { useHTableContext } from '../context.js';
23
- import { renderData } from './defaultFormRender.js';
24
- import useHTable from '../hooks/useHTable.js';
19
+ import { defaultSubItem, sizeObj } from './config.js';
20
+ import { useHTableContext } from '../../context.js';
21
+ import { useClassName } from '../../hooks/index.js';
22
+ import { renderData } from '../defaultFormRender.js';
25
23
 
26
24
  var _excluded = ["searchType", "title", "name", "dataIndex", "itemProps", "searchRender", "childrenDataIndex", "showSearch", "hideInTable", "align", "searchLabel", "titleStr"];
27
25
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
26
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context3, _context4; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context3 = ownKeys(Object(t), !0)).call(_context3, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context4 = ownKeys(Object(t))).call(_context4, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
29
- var sizeObj = {
30
- xl: {
31
- min: 1200,
32
- max: 1600
33
- },
34
- xxl: {
35
- min: 1600
36
- },
37
- lg: {
38
- min: 992,
39
- max: 1200
40
- },
41
- md: {
42
- min: 768,
43
- max: 992
44
- },
45
- sm: {
46
- min: 576,
47
- max: 768
48
- },
49
- xs: {
50
- max: 576
51
- }
52
- };
53
- var defaultSubItem = {
54
- type: "submit",
55
- itemProps: {
56
- position: "end"
57
- },
58
- style: {
59
- padding: 0,
60
- marginLeft: -20
61
- },
62
- render: function render(item, node, form) {
63
- return jsx(DefaultSubComponent, {
64
- form: form
65
- });
66
- }
67
- };
68
- var getCuSpanMaxNum = function getCuSpanMaxNum() {
69
- var searchSpan = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
70
- span: 6
71
- };
72
- var clientWidth = document.documentElement.clientWidth;
73
- var keys = _Object$keys(sizeObj);
74
- var index = _findIndexInstanceProperty(keys).call(keys, function (value) {
75
- var _sizeObj$value = sizeObj[value],
76
- _sizeObj$value$min = _sizeObj$value.min,
77
- min = _sizeObj$value$min === void 0 ? 0 : _sizeObj$value$min,
78
- _sizeObj$value$max = _sizeObj$value.max,
79
- max = _sizeObj$value$max === void 0 ? Number.MAX_VALUE : _sizeObj$value$max;
80
- return clientWidth >= min && clientWidth < max;
81
- });
82
- var cuKey = keys[index];
83
- var cuSpan = searchSpan[cuKey] || searchSpan.span;
84
- return 24 / cuSpan;
85
- };
86
27
  var formConfigDataItemProvider = function formConfigDataItemProvider(_ref, table) {
87
28
  var searchType = _ref.searchType,
88
29
  title = _ref.title,
@@ -116,6 +57,24 @@ var formConfigDataItemProvider = function formConfigDataItemProvider(_ref, table
116
57
  }
117
58
  });
118
59
  };
60
+ var getCuSpanMaxNum = function getCuSpanMaxNum() {
61
+ var searchSpan = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
62
+ span: 6
63
+ };
64
+ var clientWidth = document.documentElement.clientWidth;
65
+ var keys = _Object$keys(sizeObj);
66
+ var index = _findIndexInstanceProperty(keys).call(keys, function (value) {
67
+ var _sizeObj$value = sizeObj[value],
68
+ _sizeObj$value$min = _sizeObj$value.min,
69
+ min = _sizeObj$value$min === void 0 ? 0 : _sizeObj$value$min,
70
+ _sizeObj$value$max = _sizeObj$value.max,
71
+ max = _sizeObj$value$max === void 0 ? Number.MAX_VALUE : _sizeObj$value$max;
72
+ return clientWidth >= min && clientWidth < max;
73
+ });
74
+ var cuKey = keys[index];
75
+ var cuSpan = searchSpan[cuKey] || searchSpan.span;
76
+ return 24 / cuSpan;
77
+ };
119
78
  var mkNewConfig = function mkNewConfig(_ref2) {
120
79
  var _ref2$configData = _ref2.configData,
121
80
  configData = _ref2$configData === void 0 ? [] : _ref2$configData,
@@ -162,22 +121,37 @@ var filterHideFormItem = function filterHideFormItem(configData, className, sear
162
121
  hideData: hideData
163
122
  };
164
123
  };
165
- var useHideMoreTitle = function useHideMoreTitle(_ref3) {
124
+ var useDefaultOpen = function useDefaultOpen() {
125
+ var _useState = useState(false),
126
+ _useState2 = _slicedToArray(_useState, 2),
127
+ open = _useState2[0],
128
+ setOpen = _useState2[1];
129
+ var _useHTableContext = useHTableContext(),
130
+ _useHTableContext$hea = _useHTableContext.headerOpen,
131
+ headerOpen = _useHTableContext$hea === void 0 ? open : _useHTableContext$hea,
132
+ _useHTableContext$set = _useHTableContext.setHeaderOpen,
133
+ setHeaderOpen = _useHTableContext$set === void 0 ? setOpen : _useHTableContext$set;
134
+ return {
135
+ headerOpen: headerOpen,
136
+ setHeaderOpen: setHeaderOpen
137
+ };
138
+ };
139
+ var useHideMoreTitle = (function (_ref3) {
166
140
  var _context2;
167
141
  var searchSpan = _ref3.searchSpan,
168
142
  configData = _ref3.configData,
169
143
  table = _ref3.table;
170
- var _useState = useState([]),
171
- _useState2 = _slicedToArray(_useState, 2),
172
- formConfigData = _useState2[0],
173
- setFormConfigData = _useState2[1];
174
- var _useState3 = useState(defaultSubItem),
144
+ var _useState3 = useState([]),
175
145
  _useState4 = _slicedToArray(_useState3, 2),
176
- subData = _useState4[0],
177
- setSubData = _useState4[1];
178
- var _useHTableContext = useHTableContext(),
179
- headerOpen = _useHTableContext.headerOpen,
180
- setHeaderOpen = _useHTableContext.setHeaderOpen;
146
+ formConfigData = _useState4[0],
147
+ setFormConfigData = _useState4[1];
148
+ var _useState5 = useState(defaultSubItem),
149
+ _useState6 = _slicedToArray(_useState5, 2),
150
+ subData = _useState6[0],
151
+ setSubData = _useState6[1];
152
+ var _useDefaultOpen = useDefaultOpen(),
153
+ headerOpen = _useDefaultOpen.headerOpen,
154
+ setHeaderOpen = _useDefaultOpen.setHeaderOpen;
181
155
  var className = useClassName("hw-table-header-item-hide");
182
156
  var mkNewFn = function mkNewFn() {
183
157
  var _context;
@@ -216,37 +190,7 @@ var useHideMoreTitle = function useHideMoreTitle(_ref3) {
216
190
  };
217
191
  }, [configData, searchSpan, headerOpen]);
218
192
  return _concatInstanceProperty(_context2 = []).call(_context2, _toConsumableArray(formConfigData), [subData]);
219
- };
220
- var useHeaderDefaultProps = function useHeaderDefaultProps(_ref4) {
221
- var configData = _ref4.configData,
222
- loading = _ref4.loading,
223
- onFinish = _ref4.onFinish,
224
- hideLabel = _ref4.hideLabel,
225
- labelWidth = _ref4.labelWidth,
226
- table = _ref4.table;
227
- var _useHTableContext2 = useHTableContext(),
228
- contextTableInstance = _useHTableContext2.tableInstance,
229
- contextLoading = _useHTableContext2.loading,
230
- contextOnFinish = _useHTableContext2.onFinish,
231
- contextConfigData = _useHTableContext2.configData,
232
- contextHideLabel = _useHTableContext2.hideLabel,
233
- contextLabelWidth = _useHTableContext2.labelWidth;
234
- var defaultTable = useHTable();
235
- var headerConfigData = configData || contextConfigData;
236
- var submitLoading = contextLoading || loading;
237
- var subOnFinish = onFinish || contextOnFinish;
238
- var tableHideLabel = typeof hideLabel === "undefined" ? contextHideLabel : hideLabel;
239
- var tableLabelWidth = labelWidth || contextLabelWidth;
240
- var tableInstance = table || contextTableInstance;
241
- return {
242
- tableInstance: tableInstance || defaultTable,
243
- tableLabelWidth: tableLabelWidth,
244
- tableHideLabel: tableHideLabel,
245
- subOnFinish: subOnFinish,
246
- submitLoading: submitLoading,
247
- headerConfigData: headerConfigData
248
- };
249
- };
193
+ });
250
194
 
251
- export { useHeaderDefaultProps, useHideMoreTitle };
195
+ export { useHideMoreTitle as default };
252
196
  // powered by hdj
@@ -4,9 +4,10 @@ import { jsx } from 'react/jsx-runtime';
4
4
  import { Card } from 'antd';
5
5
  import { HForm } from '@hw-component/form';
6
6
  import { useClassName } from '../hooks/index.js';
7
- import { useHeaderDefaultProps, useHideMoreTitle } from './hooks.js';
7
+ import useHeaderDefaultProps from './hooks/useHeaderDefaultProps.js';
8
8
  import { HeaderProvider } from './Context.js';
9
9
  import { useHTableConfigContext } from '../TableConfig.js';
10
+ import useHideMoreTitle from './hooks/useHideMoreTitle.js';
10
11
 
11
12
  var _excluded = ["searchSpan", "headerStyle", "initValues", "onReset"];
12
13
  var defaultSearchSpan = {
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  declare const _default: () => JSX.Element;
3
2
  export default _default;
@@ -0,0 +1,37 @@
1
+ import { HFormInstance, HItemProps } from "@hw-component/form/es/Form/modal";
2
+ import React from "react";
3
+ export declare const sizeObj: {
4
+ xl: {
5
+ min: number;
6
+ max: number;
7
+ };
8
+ xxl: {
9
+ min: number;
10
+ };
11
+ lg: {
12
+ min: number;
13
+ max: number;
14
+ };
15
+ md: {
16
+ min: number;
17
+ max: number;
18
+ };
19
+ sm: {
20
+ min: number;
21
+ max: number;
22
+ };
23
+ xs: {
24
+ max: number;
25
+ };
26
+ };
27
+ export declare const defaultSubItem: {
28
+ type: string;
29
+ itemProps: {
30
+ position: string;
31
+ };
32
+ style: {
33
+ padding: number;
34
+ marginLeft: number;
35
+ };
36
+ render: (item: HItemProps, node: React.ReactNode, form: HFormInstance) => JSX.Element;
37
+ };
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var defaultSubComponent = require('../defaultSubComponent.js');
5
+
6
+ var sizeObj = {
7
+ xl: {
8
+ min: 1200,
9
+ max: 1600
10
+ },
11
+ xxl: {
12
+ min: 1600
13
+ },
14
+ lg: {
15
+ min: 992,
16
+ max: 1200
17
+ },
18
+ md: {
19
+ min: 768,
20
+ max: 992
21
+ },
22
+ sm: {
23
+ min: 576,
24
+ max: 768
25
+ },
26
+ xs: {
27
+ max: 576
28
+ }
29
+ };
30
+ var defaultSubItem = {
31
+ type: "submit",
32
+ itemProps: {
33
+ position: "end"
34
+ },
35
+ style: {
36
+ padding: 0,
37
+ marginLeft: -20
38
+ },
39
+ render: function render(item, node, form) {
40
+ return jsxRuntime.jsx(defaultSubComponent.DefaultSubComponent, {
41
+ form: form
42
+ });
43
+ }
44
+ };
45
+
46
+ exports.defaultSubItem = defaultSubItem;
47
+ exports.sizeObj = sizeObj;
48
+ // powered by h
@@ -0,0 +1,10 @@
1
+ import type { IHeaderProps } from "../modal";
2
+ declare const _default: ({ configData, loading, onFinish, hideLabel, labelWidth, table }: IHeaderProps) => {
3
+ tableInstance: import("../../modal").HTableInstance;
4
+ tableLabelWidth: number | undefined;
5
+ tableHideLabel: boolean | undefined;
6
+ subOnFinish: (value: Record<string, any>) => Promise<any>;
7
+ submitLoading: boolean | undefined;
8
+ headerConfigData: import("../../modal").ConfigDataModal;
9
+ };
10
+ export default _default;
@@ -0,0 +1,40 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var context = require('../../context.js');
6
+ var useHTable = require('../../hooks/useHTable.js');
7
+
8
+ var useHeaderDefaultProps = (function (_ref) {
9
+ var configData = _ref.configData,
10
+ loading = _ref.loading,
11
+ onFinish = _ref.onFinish,
12
+ hideLabel = _ref.hideLabel,
13
+ labelWidth = _ref.labelWidth,
14
+ table = _ref.table;
15
+ var _useHTableContext = context.useHTableContext(),
16
+ contextTableInstance = _useHTableContext.tableInstance,
17
+ contextLoading = _useHTableContext.loading,
18
+ contextOnFinish = _useHTableContext.onFinish,
19
+ contextConfigData = _useHTableContext.configData,
20
+ contextHideLabel = _useHTableContext.hideLabel,
21
+ contextLabelWidth = _useHTableContext.labelWidth;
22
+ var defaultTable = useHTable.default();
23
+ var headerConfigData = configData || contextConfigData;
24
+ var submitLoading = contextLoading || loading;
25
+ var subOnFinish = onFinish || contextOnFinish;
26
+ var tableHideLabel = typeof hideLabel === "undefined" ? contextHideLabel : hideLabel;
27
+ var tableLabelWidth = labelWidth || contextLabelWidth;
28
+ var tableInstance = table || contextTableInstance;
29
+ return {
30
+ tableInstance: tableInstance || defaultTable,
31
+ tableLabelWidth: tableLabelWidth,
32
+ tableHideLabel: tableHideLabel,
33
+ subOnFinish: subOnFinish,
34
+ submitLoading: submitLoading,
35
+ headerConfigData: headerConfigData
36
+ };
37
+ });
38
+
39
+ exports.default = useHeaderDefaultProps;
40
+ // powered by h
@@ -0,0 +1,4 @@
1
+ import { IHeaderProps } from "../modal";
2
+ import { HItemProps } from "@hw-component/form/es/Form/modal";
3
+ declare const _default: ({ searchSpan, configData, table, }: IHeaderProps) => HItemProps[];
4
+ export default _default;
@@ -1,5 +1,13 @@
1
1
  'use strict';
2
2
 
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
6
+ var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
7
+ var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
8
+ var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
9
+ var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
10
+ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
3
11
  var _toConsumableArray = require('@babel/runtime-corejs3/helpers/toConsumableArray');
4
12
  var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
5
13
  var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
@@ -10,80 +18,15 @@ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/in
10
18
  var _sliceInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/slice');
11
19
  var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
12
20
  var _concatInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/concat');
13
- var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
14
- var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
15
- var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
16
- var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
17
- var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
18
- var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
19
- var jsxRuntime = require('react/jsx-runtime');
20
21
  var React = require('react');
21
- var index = require('../hooks/index.js');
22
- var defaultSubComponent = require('./defaultSubComponent.js');
23
- var context = require('../context.js');
24
- var defaultFormRender = require('./defaultFormRender.js');
25
- var useHTable = require('../hooks/useHTable.js');
22
+ var config = require('./config.js');
23
+ var context = require('../../context.js');
24
+ var index = require('../../hooks/index.js');
25
+ var defaultFormRender = require('../defaultFormRender.js');
26
26
 
27
27
  var _excluded = ["searchType", "title", "name", "dataIndex", "itemProps", "searchRender", "childrenDataIndex", "showSearch", "hideInTable", "align", "searchLabel", "titleStr"];
28
28
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
29
29
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context3, _context4; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context3 = ownKeys(Object(t), !0)).call(_context3, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context4 = ownKeys(Object(t))).call(_context4, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
30
- var sizeObj = {
31
- xl: {
32
- min: 1200,
33
- max: 1600
34
- },
35
- xxl: {
36
- min: 1600
37
- },
38
- lg: {
39
- min: 992,
40
- max: 1200
41
- },
42
- md: {
43
- min: 768,
44
- max: 992
45
- },
46
- sm: {
47
- min: 576,
48
- max: 768
49
- },
50
- xs: {
51
- max: 576
52
- }
53
- };
54
- var defaultSubItem = {
55
- type: "submit",
56
- itemProps: {
57
- position: "end"
58
- },
59
- style: {
60
- padding: 0,
61
- marginLeft: -20
62
- },
63
- render: function render(item, node, form) {
64
- return jsxRuntime.jsx(defaultSubComponent.DefaultSubComponent, {
65
- form: form
66
- });
67
- }
68
- };
69
- var getCuSpanMaxNum = function getCuSpanMaxNum() {
70
- var searchSpan = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
71
- span: 6
72
- };
73
- var clientWidth = document.documentElement.clientWidth;
74
- var keys = _Object$keys(sizeObj);
75
- var index = _findIndexInstanceProperty(keys).call(keys, function (value) {
76
- var _sizeObj$value = sizeObj[value],
77
- _sizeObj$value$min = _sizeObj$value.min,
78
- min = _sizeObj$value$min === void 0 ? 0 : _sizeObj$value$min,
79
- _sizeObj$value$max = _sizeObj$value.max,
80
- max = _sizeObj$value$max === void 0 ? Number.MAX_VALUE : _sizeObj$value$max;
81
- return clientWidth >= min && clientWidth < max;
82
- });
83
- var cuKey = keys[index];
84
- var cuSpan = searchSpan[cuKey] || searchSpan.span;
85
- return 24 / cuSpan;
86
- };
87
30
  var formConfigDataItemProvider = function formConfigDataItemProvider(_ref, table) {
88
31
  var searchType = _ref.searchType,
89
32
  title = _ref.title,
@@ -117,6 +60,24 @@ var formConfigDataItemProvider = function formConfigDataItemProvider(_ref, table
117
60
  }
118
61
  });
119
62
  };
63
+ var getCuSpanMaxNum = function getCuSpanMaxNum() {
64
+ var searchSpan = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
65
+ span: 6
66
+ };
67
+ var clientWidth = document.documentElement.clientWidth;
68
+ var keys = _Object$keys(config.sizeObj);
69
+ var index = _findIndexInstanceProperty(keys).call(keys, function (value) {
70
+ var _sizeObj$value = config.sizeObj[value],
71
+ _sizeObj$value$min = _sizeObj$value.min,
72
+ min = _sizeObj$value$min === void 0 ? 0 : _sizeObj$value$min,
73
+ _sizeObj$value$max = _sizeObj$value.max,
74
+ max = _sizeObj$value$max === void 0 ? Number.MAX_VALUE : _sizeObj$value$max;
75
+ return clientWidth >= min && clientWidth < max;
76
+ });
77
+ var cuKey = keys[index];
78
+ var cuSpan = searchSpan[cuKey] || searchSpan.span;
79
+ return 24 / cuSpan;
80
+ };
120
81
  var mkNewConfig = function mkNewConfig(_ref2) {
121
82
  var _ref2$configData = _ref2.configData,
122
83
  configData = _ref2$configData === void 0 ? [] : _ref2$configData,
@@ -163,22 +124,37 @@ var filterHideFormItem = function filterHideFormItem(configData, className, sear
163
124
  hideData: hideData
164
125
  };
165
126
  };
166
- var useHideMoreTitle = function useHideMoreTitle(_ref3) {
127
+ var useDefaultOpen = function useDefaultOpen() {
128
+ var _useState = React.useState(false),
129
+ _useState2 = _slicedToArray(_useState, 2),
130
+ open = _useState2[0],
131
+ setOpen = _useState2[1];
132
+ var _useHTableContext = context.useHTableContext(),
133
+ _useHTableContext$hea = _useHTableContext.headerOpen,
134
+ headerOpen = _useHTableContext$hea === void 0 ? open : _useHTableContext$hea,
135
+ _useHTableContext$set = _useHTableContext.setHeaderOpen,
136
+ setHeaderOpen = _useHTableContext$set === void 0 ? setOpen : _useHTableContext$set;
137
+ return {
138
+ headerOpen: headerOpen,
139
+ setHeaderOpen: setHeaderOpen
140
+ };
141
+ };
142
+ var useHideMoreTitle = (function (_ref3) {
167
143
  var _context2;
168
144
  var searchSpan = _ref3.searchSpan,
169
145
  configData = _ref3.configData,
170
146
  table = _ref3.table;
171
- var _useState = React.useState([]),
172
- _useState2 = _slicedToArray(_useState, 2),
173
- formConfigData = _useState2[0],
174
- setFormConfigData = _useState2[1];
175
- var _useState3 = React.useState(defaultSubItem),
147
+ var _useState3 = React.useState([]),
176
148
  _useState4 = _slicedToArray(_useState3, 2),
177
- subData = _useState4[0],
178
- setSubData = _useState4[1];
179
- var _useHTableContext = context.useHTableContext(),
180
- headerOpen = _useHTableContext.headerOpen,
181
- setHeaderOpen = _useHTableContext.setHeaderOpen;
149
+ formConfigData = _useState4[0],
150
+ setFormConfigData = _useState4[1];
151
+ var _useState5 = React.useState(config.defaultSubItem),
152
+ _useState6 = _slicedToArray(_useState5, 2),
153
+ subData = _useState6[0],
154
+ setSubData = _useState6[1];
155
+ var _useDefaultOpen = useDefaultOpen(),
156
+ headerOpen = _useDefaultOpen.headerOpen,
157
+ setHeaderOpen = _useDefaultOpen.setHeaderOpen;
182
158
  var className = index.useClassName("hw-table-header-item-hide");
183
159
  var mkNewFn = function mkNewFn() {
184
160
  var _context;
@@ -217,38 +193,7 @@ var useHideMoreTitle = function useHideMoreTitle(_ref3) {
217
193
  };
218
194
  }, [configData, searchSpan, headerOpen]);
219
195
  return _concatInstanceProperty(_context2 = []).call(_context2, _toConsumableArray(formConfigData), [subData]);
220
- };
221
- var useHeaderDefaultProps = function useHeaderDefaultProps(_ref4) {
222
- var configData = _ref4.configData,
223
- loading = _ref4.loading,
224
- onFinish = _ref4.onFinish,
225
- hideLabel = _ref4.hideLabel,
226
- labelWidth = _ref4.labelWidth,
227
- table = _ref4.table;
228
- var _useHTableContext2 = context.useHTableContext(),
229
- contextTableInstance = _useHTableContext2.tableInstance,
230
- contextLoading = _useHTableContext2.loading,
231
- contextOnFinish = _useHTableContext2.onFinish,
232
- contextConfigData = _useHTableContext2.configData,
233
- contextHideLabel = _useHTableContext2.hideLabel,
234
- contextLabelWidth = _useHTableContext2.labelWidth;
235
- var defaultTable = useHTable.default();
236
- var headerConfigData = configData || contextConfigData;
237
- var submitLoading = contextLoading || loading;
238
- var subOnFinish = onFinish || contextOnFinish;
239
- var tableHideLabel = typeof hideLabel === "undefined" ? contextHideLabel : hideLabel;
240
- var tableLabelWidth = labelWidth || contextLabelWidth;
241
- var tableInstance = table || contextTableInstance;
242
- return {
243
- tableInstance: tableInstance || defaultTable,
244
- tableLabelWidth: tableLabelWidth,
245
- tableHideLabel: tableHideLabel,
246
- subOnFinish: subOnFinish,
247
- submitLoading: submitLoading,
248
- headerConfigData: headerConfigData
249
- };
250
- };
196
+ });
251
197
 
252
- exports.useHeaderDefaultProps = useHeaderDefaultProps;
253
- exports.useHideMoreTitle = useHideMoreTitle;
198
+ exports.default = useHideMoreTitle;
254
199
  // powered by h
@@ -7,9 +7,10 @@ var jsxRuntime = require('react/jsx-runtime');
7
7
  var antd = require('antd');
8
8
  var form = require('@hw-component/form');
9
9
  var index = require('../hooks/index.js');
10
- var hooks = require('./hooks.js');
10
+ var useHeaderDefaultProps = require('./hooks/useHeaderDefaultProps.js');
11
11
  var Context = require('./Context.js');
12
12
  var TableConfig = require('../TableConfig.js');
13
+ var useHideMoreTitle = require('./hooks/useHideMoreTitle.js');
13
14
 
14
15
  var _excluded = ["searchSpan", "headerStyle", "initValues", "onReset"];
15
16
  var defaultSearchSpan = {
@@ -26,7 +27,7 @@ var Header = (function (_ref) {
26
27
  initValues = _ref.initValues,
27
28
  onReset = _ref.onReset,
28
29
  props = _objectWithoutProperties(_ref, _excluded);
29
- var _useHeaderDefaultProp = hooks.useHeaderDefaultProps(props),
30
+ var _useHeaderDefaultProp = useHeaderDefaultProps.default(props),
30
31
  tableLabelWidth = _useHeaderDefaultProp.tableLabelWidth,
31
32
  tableInstance = _useHeaderDefaultProp.tableInstance,
32
33
  subOnFinish = _useHeaderDefaultProp.subOnFinish,
@@ -34,7 +35,7 @@ var Header = (function (_ref) {
34
35
  tableHideLabel = _useHeaderDefaultProp.tableHideLabel,
35
36
  headerConfigData = _useHeaderDefaultProp.headerConfigData;
36
37
  var form$1 = tableInstance.form;
37
- var nConfigData = hooks.useHideMoreTitle({
38
+ var nConfigData = useHideMoreTitle.default({
38
39
  searchSpan: searchSpan,
39
40
  configData: headerConfigData,
40
41
  table: tableInstance
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  declare const _default: () => JSX.Element;
3
2
  export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hw-component/table",
3
- "version": "1.9.38",
3
+ "version": "1.9.39",
4
4
  "description": "基于antd二次开发table组件",
5
5
  "keywords": [
6
6
  "table"
@@ -0,0 +1,42 @@
1
+ import {HFormInstance, HItemProps} from "@hw-component/form/es/Form/modal";
2
+ import React from "react";
3
+ import {DefaultSubComponent} from "../defaultSubComponent";
4
+
5
+ export const sizeObj = {
6
+ xl: {
7
+ min: 1200,
8
+ max: 1600,
9
+ },
10
+ xxl: {
11
+ min: 1600,
12
+ },
13
+ lg: {
14
+ min: 992,
15
+ max: 1200,
16
+ },
17
+ md: {
18
+ min: 768,
19
+ max: 992,
20
+ },
21
+ sm: {
22
+ min: 576,
23
+ max: 768,
24
+ },
25
+ xs: {
26
+ max: 576,
27
+ },
28
+ };
29
+
30
+ export const defaultSubItem = {
31
+ type: "submit",
32
+ itemProps: {
33
+ position: "end",
34
+ },
35
+ style: {
36
+ padding: 0,
37
+ marginLeft: -20,
38
+ },
39
+ render: (item: HItemProps, node: React.ReactNode, form: HFormInstance) => {
40
+ return <DefaultSubComponent form={form} />;
41
+ },
42
+ };
@@ -0,0 +1,29 @@
1
+ import type { IHeaderProps } from "../modal";
2
+ import { useHTableContext } from "../../context";
3
+ import useHTable from "../../hooks/useHTable";
4
+
5
+ export default ({configData,loading,onFinish,hideLabel,labelWidth,table}:IHeaderProps)=>{
6
+ const {
7
+ tableInstance: contextTableInstance,
8
+ loading: contextLoading,
9
+ onFinish: contextOnFinish,
10
+ configData: contextConfigData,
11
+ hideLabel: contextHideLabel,
12
+ labelWidth: contextLabelWidth,
13
+ } = useHTableContext();
14
+ const defaultTable=useHTable();
15
+ const headerConfigData = configData || contextConfigData;
16
+ const submitLoading=contextLoading || loading;
17
+ const subOnFinish = onFinish || contextOnFinish;
18
+ const tableHideLabel = typeof hideLabel === "undefined" ? contextHideLabel : hideLabel;
19
+ const tableLabelWidth = labelWidth || contextLabelWidth;
20
+ const tableInstance = table || contextTableInstance;
21
+ return {
22
+ tableInstance:tableInstance||defaultTable,
23
+ tableLabelWidth,
24
+ tableHideLabel,
25
+ subOnFinish,
26
+ submitLoading,
27
+ headerConfigData
28
+ }
29
+ }
@@ -0,0 +1,174 @@
1
+ import {FormConfigDataItemProviderModal, IHeaderProps} from "../modal";
2
+ import {useEffect, useState} from "react";
3
+ import {HItemProps} from "@hw-component/form/es/Form/modal";
4
+ import {defaultSubItem, sizeObj} from "./config";
5
+ import {useHTableContext} from "../../context";
6
+ import {useClassName} from "../../hooks";
7
+ import {HTableInstance} from "../../modal";
8
+ import {ColProps} from "antd";
9
+ import {renderData} from "../defaultFormRender";
10
+
11
+ const formConfigDataItemProvider = (
12
+ {
13
+ searchType,
14
+ title,
15
+ name,
16
+ dataIndex,
17
+ itemProps = {},
18
+ searchRender,
19
+ childrenDataIndex,
20
+ showSearch,
21
+ hideInTable,
22
+ align,
23
+ searchLabel,
24
+ titleStr,
25
+ ...props
26
+ }: FormConfigDataItemProviderModal,
27
+ table: HTableInstance
28
+ ): HItemProps => {
29
+ const { allowClear = true } = itemProps as any;
30
+
31
+ return {
32
+ ...props,
33
+ itemProps: {
34
+ ...itemProps,
35
+ allowClear,
36
+ },
37
+ label: searchLabel || titleStr || title,
38
+ type: searchType,
39
+ name: name || (dataIndex as string),
40
+ render: (item, node, form) => {
41
+ if (searchRender) {
42
+ return searchRender(item, node, form, table);
43
+ }
44
+ const defaultRender = renderData[searchType || ""];
45
+
46
+ return defaultRender ? defaultRender(item) : node;
47
+ },
48
+ };
49
+ };
50
+
51
+ const getCuSpanMaxNum = (searchSpan: ColProps = { span: 6 }) => {
52
+ const clientWidth = document.documentElement.clientWidth;
53
+ const keys = Object.keys(sizeObj);
54
+ const index = keys.findIndex((value) => {
55
+ const { min = 0, max = Number.MAX_VALUE } = sizeObj[value];
56
+ return clientWidth >= min && clientWidth < max;
57
+ });
58
+ const cuKey = keys[index];
59
+ const cuSpan = searchSpan[cuKey] || searchSpan.span;
60
+ return 24 / cuSpan;
61
+ };
62
+
63
+
64
+ const mkNewConfig = ({ configData = [], table }: IHeaderProps) => {
65
+ let subConfigData: HItemProps | undefined;
66
+ const realConfigData: HItemProps[] = [];
67
+ configData.forEach((value) => {
68
+ const { searchType, showSearch } = value;
69
+ if (!showSearch) {
70
+ return false;
71
+ }
72
+ if (searchType === "submit") {
73
+ subConfigData = formConfigDataItemProvider(
74
+ value,
75
+ table as HTableInstance
76
+ );
77
+ return false;
78
+ }
79
+ realConfigData.push(
80
+ formConfigDataItemProvider(value, table as HTableInstance)
81
+ );
82
+ });
83
+ return {
84
+ realConfigData,
85
+ subConfigData,
86
+ };
87
+ };
88
+
89
+ const filterHideFormItem = (
90
+ configData: HItemProps[],
91
+ className: string,
92
+ searchSpan?: ColProps
93
+ ) => {
94
+ const maxNum = getCuSpanMaxNum(searchSpan);
95
+ const len = configData.length;
96
+ const startIndex = maxNum - 1;
97
+ if (len <= startIndex) {
98
+ return {
99
+ lessData: configData,
100
+ hideData: [],
101
+ };
102
+ }
103
+ const index = startIndex === 0 ? 1 : startIndex;
104
+ const lessData = configData.slice(0, index);
105
+ const bigData = configData.slice(index);
106
+ const hideData = bigData.map((value) => {
107
+ return {
108
+ ...value,
109
+ className,
110
+ };
111
+ });
112
+ return {
113
+ lessData,
114
+ hideData,
115
+ };
116
+ };
117
+
118
+ const useDefaultOpen=()=>{
119
+ const [open,setOpen]=useState(false);
120
+ const { headerOpen=open, setHeaderOpen=setOpen } = useHTableContext();
121
+
122
+ return {
123
+ headerOpen,
124
+ setHeaderOpen
125
+ }
126
+ }
127
+ export default ({
128
+ searchSpan,
129
+ configData,
130
+ table,
131
+ }: IHeaderProps) => {
132
+
133
+ const [formConfigData, setFormConfigData] = useState<HItemProps[]>([]);
134
+ const [subData, setSubData] = useState<HItemProps>(defaultSubItem as any);
135
+
136
+ const { headerOpen, setHeaderOpen } = useDefaultOpen();
137
+ const className = useClassName("hw-table-header-item-hide");
138
+ const mkNewFn = () => {
139
+ const { realConfigData, subConfigData } = mkNewConfig({
140
+ searchSpan,
141
+ configData,
142
+ table,
143
+ });
144
+ const changeClassName = headerOpen ? "" : className;
145
+ const { lessData, hideData } = filterHideFormItem(
146
+ realConfigData,
147
+ changeClassName,
148
+ searchSpan
149
+ );
150
+ if (subConfigData) {
151
+ setSubData(subConfigData);
152
+ }
153
+ setHeaderOpen((oldVal) => {
154
+ if (hideData.length === 0) {
155
+ return undefined;
156
+ }
157
+ if (typeof oldVal === "undefined") {
158
+ return false;
159
+ }
160
+ return oldVal;
161
+ });
162
+ setFormConfigData([...lessData, ...hideData]);
163
+ };
164
+ useEffect(() => {
165
+ mkNewFn();
166
+ }, [configData, searchSpan, headerOpen]);
167
+ useEffect(() => {
168
+ window.addEventListener("resize", mkNewFn);
169
+ return () => {
170
+ window.removeEventListener("resize", mkNewFn);
171
+ };
172
+ }, [configData, searchSpan, headerOpen]);
173
+ return [...formConfigData, subData];
174
+ };
@@ -3,9 +3,11 @@ import { HForm } from "@hw-component/form";
3
3
  import React from "react";
4
4
  import { useClassName } from "../hooks";
5
5
  import type { IHeaderProps } from "./modal";
6
- import {useHeaderDefaultProps, useHideMoreTitle} from "./hooks";
6
+ import useHeaderDefaultProps from "./hooks/useHeaderDefaultProps";
7
7
  import { HeaderProvider } from "./Context";
8
8
  import { useHTableConfigContext } from "../TableConfig";
9
+ import useHideMoreTitle from './hooks/useHideMoreTitle'
10
+
9
11
 
10
12
  const defaultSearchSpan = {
11
13
  xxl: 4,
@@ -10,7 +10,6 @@ import type { ModalProps } from "antd";
10
10
  import type { TableProps } from "antd/lib/table";
11
11
  import type { AffixProps } from "antd/lib/affix";
12
12
  import type { OptionModal } from "./HTableBody";
13
- import { GetRowKey } from "rc-table/lib/interface";
14
13
  import type { DrawerProps } from "antd";
15
14
  import type { IPaginationProps } from "@/components/HTablePagination";
16
15
 
@@ -2,7 +2,7 @@ import {
2
2
  HTable,
3
3
  useHTable,
4
4
  HTableConfig,
5
- HTableHeaderSubBtn,
5
+ HTableHeaderSubBtn, HTableHeader,
6
6
  } from "@/components";
7
7
  import { Button, Card, Tooltip, Typography, Tag, Row } from "antd";
8
8
  import { HFormConfigProvider } from "@hw-component/form";
@@ -158,6 +158,7 @@ export default () => {
158
158
  return (
159
159
  <HFormConfigProvider>
160
160
  <div>
161
+ <HTableHeader configData={[]}/>
161
162
  <div
162
163
  onClick={() => {
163
164
  console.log(hTable.table.getTableSourceData());
@@ -173,9 +174,6 @@ export default () => {
173
174
  />
174
175
  <HTable
175
176
  configData={configData}
176
- searchSpan={{
177
- span: 24,
178
- }}
179
177
  rowKey={(rowData, index) => {
180
178
  return index;
181
179
  }}
@@ -1,12 +0,0 @@
1
- import type { IHeaderProps } from "./modal";
2
- import type { HItemProps } from "@hw-component/form/es/Form/modal";
3
- import type { HTableInstance } from "../modal";
4
- export declare const useHideMoreTitle: ({ searchSpan, configData, table, }: IHeaderProps) => HItemProps[];
5
- export declare const useHeaderDefaultProps: ({ configData, loading, onFinish, hideLabel, labelWidth, table }: IHeaderProps) => {
6
- tableInstance: HTableInstance;
7
- tableLabelWidth: number | undefined;
8
- tableHideLabel: boolean | undefined;
9
- subOnFinish: (value: Record<string, any>) => Promise<any>;
10
- submitLoading: boolean | undefined;
11
- headerConfigData: import("../modal").ConfigDataModal;
12
- };
@@ -1,12 +0,0 @@
1
- import type { IHeaderProps } from "./modal";
2
- import type { HItemProps } from "@hw-component/form/es/Form/modal";
3
- import type { HTableInstance } from "../modal";
4
- export declare const useHideMoreTitle: ({ searchSpan, configData, table, }: IHeaderProps) => HItemProps[];
5
- export declare const useHeaderDefaultProps: ({ configData, loading, onFinish, hideLabel, labelWidth, table }: IHeaderProps) => {
6
- tableInstance: HTableInstance;
7
- tableLabelWidth: number | undefined;
8
- tableHideLabel: boolean | undefined;
9
- subOnFinish: (value: Record<string, any>) => Promise<any>;
10
- submitLoading: boolean | undefined;
11
- headerConfigData: import("../modal").ConfigDataModal;
12
- };
@@ -1,223 +0,0 @@
1
- import type { FormConfigDataItemProviderModal, IHeaderProps } from "./modal";
2
- import React, { useEffect, useState } from "react";
3
- import type { HItemProps } from "@hw-component/form/es/Form/modal";
4
- import type { ColProps } from "antd";
5
- import { useClassName } from "../hooks";
6
- import type { HFormInstance } from "@hw-component/form/es/Form/modal";
7
- import { DefaultSubComponent } from "../HTableHeader/defaultSubComponent";
8
- import { useHTableContext } from "../context";
9
- import type { HTableInstance } from "../modal";
10
- import { renderData } from "./defaultFormRender";
11
- import useHTable from "../hooks/useHTable";
12
- const sizeObj = {
13
- xl: {
14
- min: 1200,
15
- max: 1600,
16
- },
17
- xxl: {
18
- min: 1600,
19
- },
20
- lg: {
21
- min: 992,
22
- max: 1200,
23
- },
24
- md: {
25
- min: 768,
26
- max: 992,
27
- },
28
- sm: {
29
- min: 576,
30
- max: 768,
31
- },
32
- xs: {
33
- max: 576,
34
- },
35
- };
36
- const defaultSubItem = {
37
- type: "submit",
38
- itemProps: {
39
- position: "end",
40
- },
41
- style: {
42
- padding: 0,
43
- marginLeft: -20,
44
- },
45
- render: (item: HItemProps, node: React.ReactNode, form: HFormInstance) => {
46
- return <DefaultSubComponent form={form} />;
47
- },
48
- };
49
-
50
- const getCuSpanMaxNum = (searchSpan: ColProps = { span: 6 }) => {
51
- const clientWidth = document.documentElement.clientWidth;
52
- const keys = Object.keys(sizeObj);
53
- const index = keys.findIndex((value) => {
54
- const { min = 0, max = Number.MAX_VALUE } = sizeObj[value];
55
- return clientWidth >= min && clientWidth < max;
56
- });
57
- const cuKey = keys[index];
58
- const cuSpan = searchSpan[cuKey] || searchSpan.span;
59
- return 24 / cuSpan;
60
- };
61
- const formConfigDataItemProvider = (
62
- {
63
- searchType,
64
- title,
65
- name,
66
- dataIndex,
67
- itemProps = {},
68
- searchRender,
69
- childrenDataIndex,
70
- showSearch,
71
- hideInTable,
72
- align,
73
- searchLabel,
74
- titleStr,
75
- ...props
76
- }: FormConfigDataItemProviderModal,
77
- table: HTableInstance
78
- ): HItemProps => {
79
- const { allowClear = true } = itemProps as any;
80
-
81
- return {
82
- ...props,
83
- itemProps: {
84
- ...itemProps,
85
- allowClear,
86
- },
87
- label: searchLabel || titleStr || title,
88
- type: searchType,
89
- name: name || (dataIndex as string),
90
- render: (item, node, form) => {
91
- if (searchRender) {
92
- return searchRender(item, node, form, table);
93
- }
94
- const defaultRender = renderData[searchType || ""];
95
-
96
- return defaultRender ? defaultRender(item) : node;
97
- },
98
- };
99
- };
100
- const mkNewConfig = ({ configData = [], table }: IHeaderProps) => {
101
- let subConfigData: HItemProps | undefined;
102
- const realConfigData: HItemProps[] = [];
103
- configData.forEach((value) => {
104
- const { searchType, showSearch } = value;
105
- if (!showSearch) {
106
- return false;
107
- }
108
- if (searchType === "submit") {
109
- subConfigData = formConfigDataItemProvider(
110
- value,
111
- table as HTableInstance
112
- );
113
- return false;
114
- }
115
- realConfigData.push(
116
- formConfigDataItemProvider(value, table as HTableInstance)
117
- );
118
- });
119
- return {
120
- realConfigData,
121
- subConfigData,
122
- };
123
- };
124
- const filterHideFormItem = (
125
- configData: HItemProps[],
126
- className: string,
127
- searchSpan?: ColProps
128
- ) => {
129
- const maxNum = getCuSpanMaxNum(searchSpan);
130
- const len = configData.length;
131
- const startIndex = maxNum - 1;
132
- if (len <= startIndex) {
133
- return {
134
- lessData: configData,
135
- hideData: [],
136
- };
137
- }
138
- const index = startIndex === 0 ? 1 : startIndex;
139
- const lessData = configData.slice(0, index);
140
- const bigData = configData.slice(index);
141
- const hideData = bigData.map((value) => {
142
- return {
143
- ...value,
144
- className,
145
- };
146
- });
147
- return {
148
- lessData,
149
- hideData,
150
- };
151
- };
152
- export const useHideMoreTitle = ({
153
- searchSpan,
154
- configData,
155
- table,
156
- }: IHeaderProps) => {
157
- const [formConfigData, setFormConfigData] = useState<HItemProps[]>([]);
158
- const [subData, setSubData] = useState<HItemProps>(defaultSubItem as any);
159
- const { headerOpen, setHeaderOpen } = useHTableContext();
160
- const className = useClassName("hw-table-header-item-hide");
161
- const mkNewFn = () => {
162
- const { realConfigData, subConfigData } = mkNewConfig({
163
- searchSpan,
164
- configData,
165
- table,
166
- });
167
- const changeClassName = headerOpen ? "" : className;
168
- const { lessData, hideData } = filterHideFormItem(
169
- realConfigData,
170
- changeClassName,
171
- searchSpan
172
- );
173
- if (subConfigData) {
174
- setSubData(subConfigData);
175
- }
176
- setHeaderOpen((oldVal) => {
177
- if (hideData.length === 0) {
178
- return undefined;
179
- }
180
- if (typeof oldVal === "undefined") {
181
- return false;
182
- }
183
- return oldVal;
184
- });
185
- setFormConfigData([...lessData, ...hideData]);
186
- };
187
- useEffect(() => {
188
- mkNewFn();
189
- }, [configData, searchSpan, headerOpen]);
190
- useEffect(() => {
191
- window.addEventListener("resize", mkNewFn);
192
- return () => {
193
- window.removeEventListener("resize", mkNewFn);
194
- };
195
- }, [configData, searchSpan, headerOpen]);
196
- return [...formConfigData, subData];
197
- };
198
-
199
- export const useHeaderDefaultProps=({configData,loading,onFinish,hideLabel,labelWidth,table}:IHeaderProps)=>{
200
- const {
201
- tableInstance: contextTableInstance,
202
- loading: contextLoading,
203
- onFinish: contextOnFinish,
204
- configData: contextConfigData,
205
- hideLabel: contextHideLabel,
206
- labelWidth: contextLabelWidth,
207
- } = useHTableContext();
208
- const defaultTable=useHTable();
209
- const headerConfigData = configData || contextConfigData;
210
- const submitLoading=contextLoading || loading;
211
- const subOnFinish = onFinish || contextOnFinish;
212
- const tableHideLabel = typeof hideLabel === "undefined" ? contextHideLabel : hideLabel;
213
- const tableLabelWidth = labelWidth || contextLabelWidth;
214
- const tableInstance = table || contextTableInstance;
215
- return {
216
- tableInstance:tableInstance||defaultTable,
217
- tableLabelWidth,
218
- tableHideLabel,
219
- subOnFinish,
220
- submitLoading,
221
- headerConfigData
222
- }
223
- }