@teamix/pro 1.6.0-beta.7 → 1.6.1-beta

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. package/dist/pro.all.min.css +1 -1
  2. package/dist/pro.css +1 -1
  3. package/dist/pro.js +1662 -619
  4. package/dist/pro.min.css +1 -1
  5. package/dist/pro.min.js +1 -1
  6. package/dist/pro.xconsole.min.css +1 -1
  7. package/es/actions/index.d.ts +6 -6
  8. package/es/actions/index.js +13 -13
  9. package/es/form/Components/FormItem2/index.js +5 -5
  10. package/es/form/Components/__builtins__/hooks/useClickAway.js +1 -1
  11. package/es/form/Components/__builtins__/icons.js +2 -2
  12. package/es/form/Components/__builtins__/index.d.ts +5 -5
  13. package/es/form/Components/__builtins__/index.js +6 -6
  14. package/es/form/Components/form-layout/index.js +2 -2
  15. package/es/form/Components/form-layout/useResponsiveFormLayout.js +1 -1
  16. package/es/form/Filter/AdvancedFilter.js +1 -1
  17. package/es/form/Filter/index2.js +2 -2
  18. package/es/form/ProForm/index.d.ts +2 -2
  19. package/es/form/ProForm/index.js +12 -17
  20. package/es/index.d.ts +1 -1
  21. package/es/index.js +1 -1
  22. package/es/info/index.d.ts +6 -2
  23. package/es/info/index.js +1 -2
  24. package/es/info/utils/utils.d.ts +1 -1
  25. package/es/sidebar/utils/index.d.ts +2 -2
  26. package/es/table/components/Filter/index.js +3 -3
  27. package/es/table/index.d.ts +3 -4
  28. package/es/table/index.js +105 -44
  29. package/es/table/index.scss +26 -0
  30. package/es/table/typing.d.ts +7 -1
  31. package/es/table/utils/columnRender.d.ts +1 -0
  32. package/es/table/utils/columnRender.js +41 -1
  33. package/es/table/utils/genAutoWidthColumns.d.ts +30 -0
  34. package/es/table/utils/genAutoWidthColumns.js +327 -0
  35. package/lib/actions/index.d.ts +6 -6
  36. package/lib/actions/index.js +11 -11
  37. package/lib/form/Components/FormItem2/index.js +39 -39
  38. package/lib/form/Components/__builtins__/icons.js +2 -2
  39. package/lib/form/Components/__builtins__/index.d.ts +5 -5
  40. package/lib/form/Components/__builtins__/index.js +27 -27
  41. package/lib/form/Components/form-layout/index.js +3 -3
  42. package/lib/form/Components/form-layout/useResponsiveFormLayout.js +1 -1
  43. package/lib/form/Filter/AdvancedFilter.js +1 -1
  44. package/lib/form/Filter/index2.js +2 -2
  45. package/lib/form/ProForm/index.d.ts +2 -2
  46. package/lib/form/ProForm/index.js +11 -16
  47. package/lib/index.d.ts +1 -1
  48. package/lib/index.js +1 -1
  49. package/lib/info/index.d.ts +6 -2
  50. package/lib/info/index.js +1 -2
  51. package/lib/info/utils/utils.d.ts +1 -1
  52. package/lib/sidebar/utils/index.d.ts +2 -2
  53. package/lib/table/components/Filter/index.js +3 -3
  54. package/lib/table/index.d.ts +3 -4
  55. package/lib/table/index.js +104 -43
  56. package/lib/table/index.scss +26 -0
  57. package/lib/table/typing.d.ts +7 -1
  58. package/lib/table/utils/columnRender.d.ts +1 -0
  59. package/lib/table/utils/columnRender.js +44 -3
  60. package/lib/table/utils/genAutoWidthColumns.d.ts +30 -0
  61. package/lib/table/utils/genAutoWidthColumns.js +342 -0
  62. package/package.json +1 -1
  63. package/es/form/utils/parseSchema.d.ts +0 -3
  64. package/es/form/utils/parseSchema.js +0 -38
  65. package/es/utils/aspect.d.ts +0 -2
  66. package/es/utils/aspect.js +0 -60
  67. package/lib/form/utils/parseSchema.d.ts +0 -3
  68. package/lib/form/utils/parseSchema.js +0 -45
  69. package/lib/utils/aspect.d.ts +0 -2
  70. package/lib/utils/aspect.js +0 -67
@@ -3,14 +3,14 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- var _empty = require("./empty");
7
- Object.keys(_empty).forEach(function (key) {
6
+ var _moment = require("./moment");
7
+ Object.keys(_moment).forEach(function (key) {
8
8
  if (key === "default" || key === "__esModule") return;
9
- if (key in exports && exports[key] === _empty[key]) return;
9
+ if (key in exports && exports[key] === _moment[key]) return;
10
10
  Object.defineProperty(exports, key, {
11
11
  enumerable: true,
12
12
  get: function get() {
13
- return _empty[key];
13
+ return _moment[key];
14
14
  }
15
15
  });
16
16
  });
@@ -25,25 +25,14 @@ Object.keys(_hooks).forEach(function (key) {
25
25
  }
26
26
  });
27
27
  });
28
- var _icons = require("./icons");
29
- Object.keys(_icons).forEach(function (key) {
30
- if (key === "default" || key === "__esModule") return;
31
- if (key in exports && exports[key] === _icons[key]) return;
32
- Object.defineProperty(exports, key, {
33
- enumerable: true,
34
- get: function get() {
35
- return _icons[key];
36
- }
37
- });
38
- });
39
- var _loading = require("./loading");
40
- Object.keys(_loading).forEach(function (key) {
28
+ var _mapStatus = require("./mapStatus");
29
+ Object.keys(_mapStatus).forEach(function (key) {
41
30
  if (key === "default" || key === "__esModule") return;
42
- if (key in exports && exports[key] === _loading[key]) return;
31
+ if (key in exports && exports[key] === _mapStatus[key]) return;
43
32
  Object.defineProperty(exports, key, {
44
33
  enumerable: true,
45
34
  get: function get() {
46
- return _loading[key];
35
+ return _mapStatus[key];
47
36
  }
48
37
  });
49
38
  });
@@ -58,25 +47,25 @@ Object.keys(_mapSize).forEach(function (key) {
58
47
  }
59
48
  });
60
49
  });
61
- var _mapStatus = require("./mapStatus");
62
- Object.keys(_mapStatus).forEach(function (key) {
50
+ var _empty = require("./empty");
51
+ Object.keys(_empty).forEach(function (key) {
63
52
  if (key === "default" || key === "__esModule") return;
64
- if (key in exports && exports[key] === _mapStatus[key]) return;
53
+ if (key in exports && exports[key] === _empty[key]) return;
65
54
  Object.defineProperty(exports, key, {
66
55
  enumerable: true,
67
56
  get: function get() {
68
- return _mapStatus[key];
57
+ return _empty[key];
69
58
  }
70
59
  });
71
60
  });
72
- var _moment = require("./moment");
73
- Object.keys(_moment).forEach(function (key) {
61
+ var _loading = require("./loading");
62
+ Object.keys(_loading).forEach(function (key) {
74
63
  if (key === "default" || key === "__esModule") return;
75
- if (key in exports && exports[key] === _moment[key]) return;
64
+ if (key in exports && exports[key] === _loading[key]) return;
76
65
  Object.defineProperty(exports, key, {
77
66
  enumerable: true,
78
67
  get: function get() {
79
- return _moment[key];
68
+ return _loading[key];
80
69
  }
81
70
  });
82
71
  });
@@ -90,4 +79,15 @@ Object.keys(_pickDataProps).forEach(function (key) {
90
79
  return _pickDataProps[key];
91
80
  }
92
81
  });
82
+ });
83
+ var _icons = require("./icons");
84
+ Object.keys(_icons).forEach(function (key) {
85
+ if (key === "default" || key === "__esModule") return;
86
+ if (key in exports && exports[key] === _icons[key]) return;
87
+ Object.defineProperty(exports, key, {
88
+ enumerable: true,
89
+ get: function get() {
90
+ return _icons[key];
91
+ }
92
+ });
93
93
  });
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.useFormShallowLayout = exports.useFormLayout = exports.useFormDeepLayout = exports.default = exports.FormLayoutShallowContext = exports.FormLayoutDeepContext = exports.FormLayout = void 0;
8
- var _classnames = _interopRequireDefault(require("classnames"));
9
8
  var _react = _interopRequireWildcard(require("react"));
10
- var _builtins__ = require("../__builtins__");
11
9
  var _useResponsiveFormLayout = require("./useResponsiveFormLayout");
10
+ var _builtins__ = require("../__builtins__");
11
+ var _classnames = _interopRequireDefault(require("classnames"));
12
12
  var _excluded = ["shallow", "children", "prefix", "className", "style"];
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
16
  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; }
17
17
  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; }
18
18
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useResponsiveFormLayout = void 0;
7
- var _shared = require("@formily/shared");
8
7
  var _react = require("react");
8
+ var _shared = require("@formily/shared");
9
9
  var _excluded = ["breakpoints", "layout", "labelAlign", "wrapperAlign", "labelCol", "wrapperCol"];
10
10
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11
11
  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."); }
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
- var _utils = require("@teamix/utils");
9
8
  var _react = _interopRequireWildcard(require("react"));
9
+ var _utils = require("@teamix/utils");
10
10
  var _ProForm = _interopRequireDefault(require("../ProForm"));
11
11
  var _utils2 = require("../utils");
12
12
  var _excluded = ["schema", "onSubmit", "onReset", "layout", "labelAlign", "wrapperAlign", "labelCol", "wrapperCol", "breakpoints", "gridProps", "forceClear"];
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = exports.SimpleFilter = exports.AdvancedFilter = void 0;
8
- var _core = require("@formily/core");
9
- var _utils = require("@teamix/utils");
10
8
  var _react = _interopRequireWildcard(require("react"));
9
+ var _utils = require("@teamix/utils");
10
+ var _core = require("@formily/core");
11
11
  var _ProForm = _interopRequireDefault(require("../ProForm"));
12
12
  var _utils2 = require("../utils");
13
13
  require("./index2.scss");
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
2
  import type { ProFormProps } from '../typing';
3
3
  import './index.scss';
4
- declare const _default: React.FC<ProFormProps>;
5
- export default _default;
4
+ declare const ProForm: React.FC<ProFormProps>;
5
+ export default ProForm;
@@ -5,27 +5,25 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
- var _components = require("@alicloudfe/components");
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _utils = require("@teamix/utils");
9
10
  var _core = require("@formily/core");
10
11
  var _reactive = require("@formily/reactive");
11
12
  var _formily = require("@teamix/formily");
12
- var _utils = require("@teamix/utils");
13
- var _react = _interopRequireWildcard(require("react"));
14
- var _aspect = require("../../utils/aspect");
13
+ var _components = require("@alicloudfe/components");
14
+ var _ProField = _interopRequireDefault(require("../Components/ProField"));
15
+ var _addCascadeEffect = _interopRequireDefault(require("./addCascadeEffect"));
15
16
  var _Editable = require("../Components/Editable");
16
17
  var _FormGroup = _interopRequireDefault(require("../Components/FormGroup"));
17
- var _FormItem = _interopRequireDefault(require("../Components/FormItem2"));
18
18
  var _LightFilter = _interopRequireDefault(require("../Components/LightFilter"));
19
- var _ProField = _interopRequireDefault(require("../Components/ProField"));
20
19
  var _index = _interopRequireDefault(require("../Components/Text/index"));
21
- var _validate = _interopRequireDefault(require("../locales/validate"));
22
20
  var _SchemaForm = _interopRequireDefault(require("../SchemaForm"));
23
- var _parseSchema = require("../utils/parseSchema");
24
- var _addCascadeEffect = _interopRequireDefault(require("./addCascadeEffect"));
25
- require("./index.scss");
26
- var _useAutoLayout = _interopRequireDefault(require("./useAutoLayout"));
27
21
  var _useAutoSubmit = _interopRequireDefault(require("./useAutoSubmit"));
22
+ var _useAutoLayout = _interopRequireDefault(require("./useAutoLayout"));
28
23
  var _useInitialRequest = _interopRequireDefault(require("./useInitialRequest"));
24
+ var _validate = _interopRequireDefault(require("../locales/validate"));
25
+ require("./index.scss");
26
+ var _FormItem = _interopRequireDefault(require("../Components/FormItem2"));
29
27
  var _excluded = ["form", "initialValues", "initialRequest", "scope", "context", "components", "onChange", "onChangeType", "onSubmit", "onSubmitFailed", "onInitialComplete", "className", "validateFirst", "schema", "children"];
30
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
29
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -79,7 +77,7 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
79
77
  onInitialComplete = _ref.onInitialComplete,
80
78
  className = _ref.className,
81
79
  validateFirst = _ref.validateFirst,
82
- schemaProps = _ref.schema,
80
+ schema = _ref.schema,
83
81
  children = _ref.children,
84
82
  otherProps = _objectWithoutProperties(_ref, _excluded);
85
83
  var formRef = (0, _react.useRef)();
@@ -90,9 +88,6 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
90
88
  var mergedScope = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, context), globalScope), scope), {}, {
91
89
  context: context
92
90
  });
93
- var schema = (0, _react.useMemo)(function () {
94
- return (0, _parseSchema.parseSchema)(schemaProps !== null && schemaProps !== void 0 ? schemaProps : []);
95
- }, [schemaProps]);
96
91
  var form = (0, _react.useMemo)(function () {
97
92
  var nextForm = outerForm || (0, _core.createForm)({
98
93
  validateFirst: validateFirst
@@ -164,5 +159,5 @@ ProForm.defaultProps = {
164
159
  breakpoints: true,
165
160
  labelAlign: 'left'
166
161
  };
167
- var _default = (0, _aspect.ProComponentAspect)(ProForm, 'ProForm');
162
+ var _default = ProForm;
168
163
  exports.default = _default;
package/lib/index.d.ts CHANGED
@@ -30,5 +30,5 @@ export * from './sidebar';
30
30
  export * from './utils';
31
31
  export * from './timeline';
32
32
  export * from './image';
33
- declare const version = "1.6.0-beta.7";
33
+ declare const version = "1.6.1-beta";
34
34
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, TeamixIcon, ProImage, hooks, nocode, templates, utils, };
package/lib/index.js CHANGED
@@ -299,7 +299,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
299
299
  if (!((_window = window) === null || _window === void 0 ? void 0 : _window.TEAMIXPRO_WITHOUT_ICON)) {
300
300
  _icon.default.setConfig(_utils.default.getTeamixIconConfig());
301
301
  }
302
- var version = '1.6.0-beta.7';
302
+ var version = '1.6.1-beta';
303
303
  // By TeamixTest
304
304
  exports.version = version;
305
305
  window.postMessage({
@@ -2,5 +2,9 @@ import React from 'react';
2
2
  import './index.scss';
3
3
  import { ProInfoProps } from './typing';
4
4
  export * from './typing';
5
- declare const _default: React.FC<ProInfoProps>;
6
- export default _default;
5
+ declare const ProInfo: {
6
+ (props: ProInfoProps): JSX.Element;
7
+ Group: React.FC<import("./typing").ProInfoGroupProps>;
8
+ ProInfoGroup: React.FC<import("./typing").ProInfoGroupProps>;
9
+ };
10
+ export default ProInfo;
package/lib/info/index.js CHANGED
@@ -16,7 +16,6 @@ var _utils = require("./utils");
16
16
  var _utils2 = require("@teamix/utils");
17
17
  var _hooks = require("@teamix/hooks");
18
18
  var _ = require("..");
19
- var _aspect = require("../utils/aspect");
20
19
  var _typing = require("./typing");
21
20
  Object.keys(_typing).forEach(function (key) {
22
21
  if (key === "default" || key === "__esModule") return;
@@ -201,5 +200,5 @@ var ProInfo = function ProInfo(props) {
201
200
  };
202
201
  ProInfo.Group = _InfoGroup.default;
203
202
  ProInfo.ProInfoGroup = _InfoGroup.default;
204
- var _default = (0, _aspect.ProComponentAspect)(ProInfo, 'ProInfo');
203
+ var _default = ProInfo;
205
204
  exports.default = _default;
@@ -1 +1 @@
1
- export declare function getLayout(width: number): "l" | "xs" | "xl" | "s" | "m";
1
+ export declare function getLayout(width: number): "xs" | "xl" | "l" | "s" | "m";
@@ -141,7 +141,7 @@ export declare function getTreeNodeProps(item: ProSidebarDataSourceItem): {
141
141
  results?: number | undefined;
142
142
  security?: string | undefined;
143
143
  unselectable?: "on" | "off" | undefined;
144
- inputMode?: "none" | "url" | "text" | "search" | "tel" | "email" | "numeric" | "decimal" | undefined;
144
+ inputMode?: "url" | "none" | "text" | "search" | "tel" | "email" | "numeric" | "decimal" | undefined;
145
145
  is?: string | undefined;
146
146
  'aria-activedescendant'?: string | undefined;
147
147
  'aria-atomic'?: (boolean | "false" | "true") | undefined;
@@ -156,7 +156,7 @@ export declare function getTreeNodeProps(item: ProSidebarDataSourceItem): {
156
156
  'aria-describedby'?: string | undefined;
157
157
  'aria-details'?: string | undefined;
158
158
  'aria-disabled'?: (boolean | "false" | "true") | undefined;
159
- 'aria-dropeffect'?: "none" | "link" | "copy" | "move" | "execute" | "popup" | undefined;
159
+ 'aria-dropeffect'?: "link" | "none" | "copy" | "move" | "execute" | "popup" | undefined;
160
160
  'aria-errormessage'?: string | undefined;
161
161
  'aria-expanded'?: (boolean | "false" | "true") | undefined;
162
162
  'aria-flowto'?: string | undefined;
@@ -86,7 +86,7 @@ var Filter = function Filter(props) {
86
86
  }
87
87
  // console.log(filters);
88
88
  return filters;
89
- }, []);
89
+ }, [column]);
90
90
  // 点击确定回调
91
91
  var onFilterOk = function onFilterOk() {
92
92
  var _actionRef$current2, _actionRef$current2$f, _actionRef$current$ge6, _actionRef$current3, _actionRef$current3$g, _actionRef$current3$g2, _actionRef$current4, _actionRef$current4$s, _actionRef$current5, _actionRef$current7, _actionRef$current7$r, _actionRef$current8, _actionRef$current8$r, _actionRef$current9, _actionRef$current9$c;
@@ -168,7 +168,7 @@ var Filter = function Filter(props) {
168
168
  setSelected([valueStr]);
169
169
  }
170
170
  }, /*#__PURE__*/_react.default.createElement(_field.default, {
171
- type: 'text',
171
+ type: "text",
172
172
  value: label,
173
173
  render: {
174
174
  ellipsis: true
@@ -196,7 +196,7 @@ var Filter = function Filter(props) {
196
196
  }
197
197
  }
198
198
  }, /*#__PURE__*/_react.default.createElement(_field.default, {
199
- type: 'text',
199
+ type: "text",
200
200
  value: label,
201
201
  render: {
202
202
  ellipsis: true
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
- import './index.scss';
3
1
  import { ProTableProps } from './typing';
2
+ import './index.scss';
4
3
  export * from './typing';
5
- declare const _default: React.FC<ProTableProps>;
6
- export default _default;
4
+ declare const ProTable: (props: ProTableProps) => JSX.Element;
5
+ export default ProTable;
@@ -5,27 +5,27 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  var _exportNames = {};
7
7
  exports.default = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
8
9
  var _components = require("@alicloudfe/components");
9
- var _hooks = require("@teamix/hooks");
10
- var _proField = require("@teamix/pro-field");
10
+ var _Pagination = _interopRequireDefault(require("./components/Pagination"));
11
+ var _genProColumnToColumn = _interopRequireDefault(require("./utils/genProColumnToColumn"));
11
12
  var _utils = require("@teamix/utils");
12
- var _classnames = _interopRequireDefault(require("classnames"));
13
- var _lodash = _interopRequireDefault(require("lodash.debounce"));
14
- var _react = _interopRequireWildcard(require("react"));
15
- var _actions = require("../actions");
16
- var _pageContainer = _interopRequireDefault(require("../page-container"));
17
13
  var _skeleton = require("../skeleton");
18
- var _aspect = require("../utils/aspect");
19
- var _CardView = _interopRequireDefault(require("./components/CardView"));
20
- var _Layout = _interopRequireDefault(require("./components/Layout"));
21
- var _Pagination = _interopRequireDefault(require("./components/Pagination"));
22
- var _Fullscreen = _interopRequireDefault(require("./components/ToolBar/Fullscreen"));
23
14
  require("./index.scss");
15
+ var _Layout = _interopRequireDefault(require("./components/Layout"));
24
16
  var _utils2 = require("./utils");
25
- var _genProColumnToColumn = _interopRequireDefault(require("./utils/genProColumnToColumn"));
26
17
  var _getTableProps = _interopRequireDefault(require("./utils/getTableProps"));
27
18
  var _getTableSortIcons = _interopRequireDefault(require("./utils/getTableSortIcons"));
28
19
  var _useTableSelection = _interopRequireDefault(require("./utils/useTableSelection"));
20
+ var _Fullscreen = _interopRequireDefault(require("./components/ToolBar/Fullscreen"));
21
+ var _proField = require("@teamix/pro-field");
22
+ var _actions = require("../actions");
23
+ var _classnames = _interopRequireDefault(require("classnames"));
24
+ var _pageContainer = _interopRequireDefault(require("../page-container"));
25
+ var _genAutoWidthColumns = require("./utils/genAutoWidthColumns");
26
+ var _lodash = _interopRequireDefault(require("lodash.debounce"));
27
+ var _CardView = _interopRequireDefault(require("./components/CardView"));
28
+ var _hooks = require("@teamix/hooks");
29
29
  var _util = require("./utils/util");
30
30
  var _typing = require("./typing");
31
31
  Object.keys(_typing).forEach(function (key) {
@@ -39,11 +39,11 @@ Object.keys(_typing).forEach(function (key) {
39
39
  }
40
40
  });
41
41
  });
42
- var _excluded = ["header", "className", "tableClassName", "mainAction", "extra", "dataFilter", "afterDataFilter", "toolBar", "columns", "useRowSelection", "rowSelection", "onChangeRowSelection", "getRowSelection", "primaryKey", "footerAction", "footer", "url", "pageKey", "pageSizeKey", "method", "params", "formatSort", "formatParams", "formatResult", "requestConfig", "requestWhenMount", "showPagination", "pageSizeList", "responsivePaginationType", "showSkeleton", "skeletonSize", "actionRef", "dataSource", "filterDebounce", "footerSuction", "autoRefresh", "autoRefreshProps", "customRequest", "filterColumnType", "defaultFilterParams", "reserveSelectedRecords", "size", "disableSelectAll", "context", "fixedTableBody", "isTree", "toolBarAutoWidth", "data-teamix-spm", "switchCardView", "cardViewProps", "defaultView", "emptyProps", "bindUrlProps", "bindUrl", "autoRedirect", "useMaxData"],
43
- _excluded2 = ["onChange"];
42
+ var _excluded = ["header", "className", "tableClassName", "mainAction", "extra", "dataFilter", "afterDataFilter", "toolBar", "columns", "useRowSelection", "rowSelection", "onChangeRowSelection", "getRowSelection", "primaryKey", "footerAction", "footer", "url", "pageKey", "pageSizeKey", "method", "params", "formatSort", "formatParams", "formatResult", "requestConfig", "requestWhenMount", "showPagination", "pageSizeList", "responsivePaginationType", "showSkeleton", "skeletonSize", "actionRef", "dataSource", "filterDebounce", "footerSuction", "autoRefresh", "autoRefreshProps", "customRequest", "filterColumnType", "defaultFilterParams", "reserveSelectedRecords", "size", "disableSelectAll", "context", "autoWidth", "fixedTableBody", "isTree", "toolBarAutoWidth", "data-teamix-spm", "switchCardView", "cardViewProps", "defaultView", "emptyProps", "bindUrlProps", "bindUrl", "autoRedirect", "useMaxData"],
43
+ _excluded2 = ["onChange", "onPageSizeChange"];
44
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
44
45
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
45
46
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
46
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
47
47
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
48
48
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
49
49
  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."); }
@@ -168,6 +168,8 @@ var ProTable = function ProTable(props) {
168
168
  propsSize = _props$size === void 0 ? 'medium' : _props$size,
169
169
  disableSelectAll = props.disableSelectAll,
170
170
  context = props.context,
171
+ _props$autoWidth = props.autoWidth,
172
+ autoWidthProp = _props$autoWidth === void 0 ? false : _props$autoWidth,
171
173
  _props$fixedTableBody = props.fixedTableBody,
172
174
  fixedTableBody = _props$fixedTableBody === void 0 ? false : _props$fixedTableBody,
173
175
  isTree = props.isTree,
@@ -231,6 +233,19 @@ var ProTable = function ProTable(props) {
231
233
  _useState16 = _slicedToArray(_useState15, 2),
232
234
  filteredColumns = _useState16[0],
233
235
  setFilteredColumns = _useState16[1];
236
+ // 全局状态 : 自适应表格
237
+ var autoWidth = (0, _react.useMemo)(function () {
238
+ var _getGlobalConfig2;
239
+ return ((_getGlobalConfig2 = (0, _utils.getGlobalConfig)('ProTable')) === null || _getGlobalConfig2 === void 0 ? void 0 : _getGlobalConfig2.autoWidth) || autoWidthProp;
240
+ }, [autoWidthProp]);
241
+ // 判断是否有操作列,有的话则渲染一个 shadow dom
242
+ var hasActionColumn = false;
243
+ if (autoWidth) {
244
+ hasActionColumn = filteredColumns.some(function (column) {
245
+ var _column$actionSchema, _column$actionSchema$;
246
+ return (column === null || column === void 0 ? void 0 : column.actionSchema) && ((_column$actionSchema = column.actionSchema) === null || _column$actionSchema === void 0 ? void 0 : (_column$actionSchema$ = _column$actionSchema.actions) === null || _column$actionSchema$ === void 0 ? void 0 : _column$actionSchema$.length) > 0;
247
+ });
248
+ }
234
249
  var _useState17 = (0, _react.useState)(propsSize),
235
250
  _useState18 = _slicedToArray(_useState17, 2),
236
251
  size = _useState18[0],
@@ -239,6 +254,13 @@ var ProTable = function ProTable(props) {
239
254
  _useState20 = _slicedToArray(_useState19, 2),
240
255
  showLoading = _useState20[0],
241
256
  setShowLoading = _useState20[1];
257
+ // 自动计算列宽需要的一些hook
258
+ var _useState21 = (0, _react.useState)(false),
259
+ _useState22 = _slicedToArray(_useState21, 2),
260
+ showShadowContainer = _useState22[0],
261
+ setShowShadowContainer = _useState22[1];
262
+ var shadowContainerRef = (0, _react.useRef)(null);
263
+ var shadowActionColumnContainerRef = (0, _react.useRef)(null);
242
264
  // 表格内部用作存储的 Ref,标识 Table 组件是否被第一次渲染。用作 useUrlState filter 第一次渲染时使用 state 数据请求
243
265
  var dataRef = (0, _react.useRef)({
244
266
  flag: true
@@ -259,19 +281,19 @@ var ProTable = function ProTable(props) {
259
281
  }, [currentPage, pageSize, urlState]);
260
282
  // 存储能够被 on 监听到的 ProTable 状态
261
283
  // 因为只做存储用。不需要更新视图以及需要同步更改。所以不使用 setState 更新
262
- var _useState21 = (0, _react.useState)({
284
+ var _useState23 = (0, _react.useState)({
263
285
  fullScreenState: false,
264
286
  filterRules: {},
265
287
  filterColumns: []
266
288
  }),
267
- _useState22 = _slicedToArray(_useState21, 1),
268
- actionRefState = _useState22[0];
289
+ _useState24 = _slicedToArray(_useState23, 1),
290
+ actionRefState = _useState24[0];
269
291
  // 存储 on 监听事件
270
- var _useState23 = (0, _react.useState)({
292
+ var _useState25 = (0, _react.useState)({
271
293
  fullScreenState: {}
272
294
  }),
273
- _useState24 = _slicedToArray(_useState23, 1),
274
- actionRefCallback = _useState24[0];
295
+ _useState26 = _slicedToArray(_useState25, 1),
296
+ actionRefCallback = _useState26[0];
275
297
  // 存储定时器 id
276
298
  var autoRefreshTimerRef = (0, _react.useRef)();
277
299
  var onResize = null;
@@ -383,20 +405,20 @@ var ProTable = function ProTable(props) {
383
405
  }, 50);
384
406
  };
385
407
  // header 区域高度。用作全屏计算吸顶吸底高度。默认不做计算
386
- var _useState25 = (0, _react.useState)(0),
387
- _useState26 = _slicedToArray(_useState25, 2),
388
- headerHeight = _useState26[0],
389
- setHeaderHeight = _useState26[1];
390
- // 全屏显示 className
391
- var _useState27 = (0, _react.useState)(false),
408
+ var _useState27 = (0, _react.useState)(0),
392
409
  _useState28 = _slicedToArray(_useState27, 2),
393
- fullscreenState = _useState28[0],
394
- setFullscreenState = _useState28[1];
395
- // 切换视角
396
- var _useState29 = (0, _react.useState)(defaultView !== null && defaultView !== void 0 ? defaultView : 'table'),
410
+ headerHeight = _useState28[0],
411
+ setHeaderHeight = _useState28[1];
412
+ // 全屏显示 className
413
+ var _useState29 = (0, _react.useState)(false),
397
414
  _useState30 = _slicedToArray(_useState29, 2),
398
- switchViewState = _useState30[0],
399
- setSwitchViewState = _useState30[1];
415
+ fullscreenState = _useState30[0],
416
+ setFullscreenState = _useState30[1];
417
+ // 切换视角
418
+ var _useState31 = (0, _react.useState)(defaultView !== null && defaultView !== void 0 ? defaultView : 'table'),
419
+ _useState32 = _slicedToArray(_useState31, 2),
420
+ switchViewState = _useState32[0],
421
+ setSwitchViewState = _useState32[1];
400
422
  // 切换全屏搜索开关
401
423
  var filterEnableRef = (0, _react.useRef)({
402
424
  fullscreen: false,
@@ -404,8 +426,8 @@ var ProTable = function ProTable(props) {
404
426
  });
405
427
  // 全局状态 : 大数据截断
406
428
  var globalUseMaxData = (0, _react.useMemo)(function () {
407
- var _getGlobalConfig2;
408
- return (_getGlobalConfig2 = (0, _utils.getGlobalConfig)('ProTable')) === null || _getGlobalConfig2 === void 0 ? void 0 : _getGlobalConfig2.useMaxData;
429
+ var _getGlobalConfig3;
430
+ return (_getGlobalConfig3 = (0, _utils.getGlobalConfig)('ProTable')) === null || _getGlobalConfig3 === void 0 ? void 0 : _getGlobalConfig3.useMaxData;
409
431
  }, []);
410
432
  // 非全屏状态下的
411
433
  var normalDataFilterFormRef = (0, _react.useRef)();
@@ -416,10 +438,10 @@ var ProTable = function ProTable(props) {
416
438
  var dataFilterFormRef = !fullscreenState ? normalDataFilterFormRef : fullscreenDataFilterFormRef;
417
439
  // let dataFilterForm = dataFilterFormRef.current;
418
440
  // 整个内容区是否超过一屏。用于表格在非全屏模式下的吸底
419
- var _useState31 = (0, _react.useState)(false),
420
- _useState32 = _slicedToArray(_useState31, 2),
421
- footerSuctionState = _useState32[0],
422
- setFooterSuctionState = _useState32[1];
441
+ var _useState33 = (0, _react.useState)(false),
442
+ _useState34 = _slicedToArray(_useState33, 2),
443
+ footerSuctionState = _useState34[0],
444
+ setFooterSuctionState = _useState34[1];
423
445
  // TODO 获取内容区是否超出一屏(暂时仅支持全家桶)
424
446
  var getFooterSuctionState = function getFooterSuctionState() {
425
447
  if (!footerSuction) {
@@ -570,6 +592,9 @@ var ProTable = function ProTable(props) {
570
592
  setFullscreenState(state);
571
593
  getHeaderHeight(state);
572
594
  actionRef === null || actionRef === void 0 ? void 0 : (_actionRef$current2 = actionRef.current) === null || _actionRef$current2 === void 0 ? void 0 : (_actionRef$current2$s = _actionRef$current2.setState) === null || _actionRef$current2$s === void 0 ? void 0 : _actionRef$current2$s.call(_actionRef$current2, 'fullScreenState', state);
595
+ if (autoWidth) {
596
+ reGenFilteredColumnsByAutoWidth();
597
+ }
573
598
  return state;
574
599
  },
575
600
  setColumn: function setColumn(newColumns) {
@@ -581,10 +606,16 @@ var ProTable = function ProTable(props) {
581
606
  if (update) {
582
607
  (0, _utils2.emit)('refreshFilterState', newColumns);
583
608
  }
609
+ if (autoWidth) {
610
+ reGenFilteredColumnsByAutoWidth(columns);
611
+ }
584
612
  },
585
613
  size: size,
586
614
  setSize: function setSize(mode) {
587
615
  _setSize(mode);
616
+ if (autoWidth) {
617
+ reGenFilteredColumnsByAutoWidth();
618
+ }
588
619
  },
589
620
  refresh: function refresh(params) {
590
621
  // card视角的刷新等于重新请求
@@ -648,6 +679,9 @@ var ProTable = function ProTable(props) {
648
679
  filterEnableRef: filterEnableRef,
649
680
  setData: function setData(data) {
650
681
  _setData(data);
682
+ if (autoWidth) {
683
+ reGenFilteredColumnsByAutoWidth();
684
+ }
651
685
  },
652
686
  resetTableMaxBodyHeight: function resetTableMaxBodyHeight(offset) {
653
687
  getHeaderHeight(fullscreenState, offset);
@@ -694,6 +728,21 @@ var ProTable = function ProTable(props) {
694
728
  if (propsActionRef) {
695
729
  propsActionRef.current = actionRef.current;
696
730
  }
731
+ function reGenFilteredColumnsByAutoWidth(columns) {
732
+ if (!autoWidth) {
733
+ return;
734
+ }
735
+ setShowShadowContainer(true);
736
+ var authWidthedColumns = (0, _genAutoWidthColumns.genAutoWidthColumns)(columns !== null && columns !== void 0 ? columns : filteredColumns, shadowContainerRef, data, size, useRowSelection, shadowActionColumnContainerRef);
737
+ setFilteredColumns(authWidthedColumns);
738
+ // 移除 shadow dom
739
+ // setTimeout(() => {
740
+ // if (document.querySelector('.teamix-pro-table-shadow-container')) {
741
+ // document.querySelector('.teamix-pro-table-shadow-container')?.remove();
742
+ // }
743
+ // }, 0);
744
+ }
745
+
697
746
  function onFormatResult(next) {
698
747
  props.onFormatResult && props.onFormatResult(next);
699
748
  // 如果开启了 autoRedirect 当当前页数不为1,并且data为空的时候,重定向到第一页
@@ -733,6 +782,9 @@ var ProTable = function ProTable(props) {
733
782
  setTotal(total + (next.total || ((_next$data3 = next.data) === null || _next$data3 === void 0 ? void 0 : _next$data3.length)));
734
783
  }
735
784
  setShowSkeleton(false);
785
+ if (autoWidth) {
786
+ reGenFilteredColumnsByAutoWidth();
787
+ }
736
788
  }
737
789
  // 请求表格数据工具函数
738
790
  var getData = (0, _utils.useRequest)(function (params) {
@@ -879,6 +931,9 @@ var ProTable = function ProTable(props) {
879
931
  _setData([].concat(_toConsumableArray(data), _toConsumableArray(dataRes || [])));
880
932
  setTotal(total + (totalRes || (dataRes === null || dataRes === void 0 ? void 0 : dataRes.length)));
881
933
  }
934
+ if (autoWidth) {
935
+ reGenFilteredColumnsByAutoWidth();
936
+ }
882
937
  setShowSkeleton(false);
883
938
  setCustomTableLoading(false);
884
939
  }
@@ -1107,6 +1162,7 @@ var ProTable = function ProTable(props) {
1107
1162
  var _props$paginationProp3;
1108
1163
  var _ref8 = (_props$paginationProp3 = props === null || props === void 0 ? void 0 : props.paginationProps) !== null && _props$paginationProp3 !== void 0 ? _props$paginationProp3 : {},
1109
1164
  onPaginationPropsChange = _ref8.onChange,
1165
+ onPageSizeChangeProp = _ref8.onPageSizeChange,
1110
1166
  othersPaginationProps = _objectWithoutProperties(_ref8, _excluded2);
1111
1167
  return /*#__PURE__*/_react.default.createElement("div", {
1112
1168
  className: cls('footer', {
@@ -1131,7 +1187,8 @@ var ProTable = function ProTable(props) {
1131
1187
  pageSizeSelector: total > (props.pageSize || 10) * 2 ? 'dropdown' : false,
1132
1188
  type: total / pageSize <= 2 ? 'simple' : 'normal',
1133
1189
  onPageSizeChange: function onPageSizeChange(number) {
1134
- return onChangePaginationSize(number);
1190
+ onChangePaginationSize(number);
1191
+ onPageSizeChangeProp === null || onPageSizeChangeProp === void 0 ? void 0 : onPageSizeChangeProp(number);
1135
1192
  },
1136
1193
  useMaxData: globalUseMaxData !== null && globalUseMaxData !== void 0 ? globalUseMaxData : useMaxData
1137
1194
  }, othersPaginationProps)))));
@@ -1169,8 +1226,12 @@ var ProTable = function ProTable(props) {
1169
1226
  // 'footer-suction': footerSuctionState && footerSuction,
1170
1227
  }),
1171
1228
  ref: tableRef
1172
- }, renderTable(isFullScreen), fixFooterState && /*#__PURE__*/_react.default.createElement(_pageContainer.default.FixedFooter, null, renderFooter()), !fixFooterState && renderFooter());
1229
+ }, showShadowContainer && (0, _genAutoWidthColumns.shadowContainer)({
1230
+ columns: filteredColumns,
1231
+ data: data,
1232
+ shadowContainerRef: shadowContainerRef
1233
+ }), hasActionColumn && (0, _genAutoWidthColumns.shadowActionColumnContainer)(filteredColumns, shadowActionColumnContainerRef), renderTable(isFullScreen), fixFooterState && /*#__PURE__*/_react.default.createElement(_pageContainer.default.FixedFooter, null, renderFooter()), !fixFooterState && renderFooter());
1173
1234
  });
1174
1235
  };
1175
- var _default = (0, _aspect.ProComponentAspect)(ProTable, 'ProTable');
1236
+ var _default = ProTable;
1176
1237
  exports.default = _default;