@teamix/pro 1.2.26 → 1.2.27

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 (69) hide show
  1. package/dist/212.js +129 -129
  2. package/dist/pro.css +1 -1
  3. package/dist/pro.js +18371 -16873
  4. package/dist/pro.min.css +1 -1
  5. package/dist/pro.min.js +1 -1
  6. package/dist/pro.min.js.LICENSE.txt +2 -0
  7. package/es/form/Filter/AdvancedFilter.js +1 -1
  8. package/es/form/Filter/Layout.d.ts +5 -0
  9. package/es/form/Filter/Layout.js +82 -0
  10. package/es/form/Filter/SimpleFilter.js +30 -6
  11. package/es/form/Filter/index2.d.ts +2 -1
  12. package/es/form/Filter/index2.js +97 -116
  13. package/es/form/Filter/index2.scss +16 -45
  14. package/es/form/Filter/layout.scss +36 -0
  15. package/es/form/Filter/useSpecialProps.d.ts +6 -0
  16. package/es/form/Filter/useSpecialProps.js +37 -0
  17. package/es/form/ProForm/customComponent.d.ts +3 -0
  18. package/es/form/ProForm/customComponent.js +20 -0
  19. package/es/form/ProForm/index.scss +5 -6
  20. package/es/form/ProForm/useFormDisplayValues.js +14 -24
  21. package/es/form/SchemaForm/adapterType.js +1 -0
  22. package/es/form/fieldTypeMap.js +2 -1
  23. package/es/form/index.d.ts +4 -2
  24. package/es/form/index.js +4 -2
  25. package/es/form/typing.d.ts +25 -1
  26. package/es/index.d.ts +1 -1
  27. package/es/index.js +1 -1
  28. package/es/info/index.scss +1 -1
  29. package/es/nocode/pages/renderer.js +1 -1
  30. package/es/table/components/Layout/index.js +63 -167
  31. package/es/table/components/Layout/index.scss +4 -3
  32. package/es/table/components/Pagination/index.js +1 -0
  33. package/es/table/components/ToolBar/FullScreenIcon.js +4 -9
  34. package/es/table/components/ToolBar/Fullscreen.js +21 -11
  35. package/es/table/index.js +64 -95
  36. package/es/table/typing.d.ts +12 -10
  37. package/es/table/utils/columnRender.js +21 -3
  38. package/lib/form/Filter/AdvancedFilter.js +1 -1
  39. package/lib/form/Filter/Layout.d.ts +5 -0
  40. package/lib/form/Filter/Layout.js +102 -0
  41. package/lib/form/Filter/SimpleFilter.js +29 -4
  42. package/lib/form/Filter/index2.d.ts +2 -1
  43. package/lib/form/Filter/index2.js +101 -114
  44. package/lib/form/Filter/index2.scss +16 -45
  45. package/lib/form/Filter/layout.scss +36 -0
  46. package/lib/form/Filter/useSpecialProps.d.ts +6 -0
  47. package/lib/form/Filter/useSpecialProps.js +46 -0
  48. package/lib/form/ProForm/customComponent.d.ts +3 -0
  49. package/lib/form/ProForm/customComponent.js +28 -0
  50. package/lib/form/ProForm/index.scss +5 -6
  51. package/lib/form/ProForm/useFormDisplayValues.js +17 -24
  52. package/lib/form/SchemaForm/adapterType.js +1 -0
  53. package/lib/form/fieldTypeMap.js +2 -1
  54. package/lib/form/index.d.ts +4 -2
  55. package/lib/form/index.js +19 -1
  56. package/lib/form/typing.d.ts +25 -1
  57. package/lib/index.d.ts +1 -1
  58. package/lib/index.js +1 -1
  59. package/lib/info/index.scss +1 -1
  60. package/lib/nocode/pages/renderer.js +1 -1
  61. package/lib/table/components/Layout/index.js +61 -167
  62. package/lib/table/components/Layout/index.scss +4 -3
  63. package/lib/table/components/Pagination/index.js +1 -0
  64. package/lib/table/components/ToolBar/FullScreenIcon.js +4 -9
  65. package/lib/table/components/ToolBar/Fullscreen.js +22 -11
  66. package/lib/table/index.js +61 -93
  67. package/lib/table/typing.d.ts +12 -10
  68. package/lib/table/utils/columnRender.js +21 -3
  69. package/package.json +4 -4
@@ -11,6 +11,10 @@ var _reactive = require("@formily/reactive");
11
11
 
12
12
  var _utils = require("@teamix/utils");
13
13
 
14
+ var _fieldTypeMap = _interopRequireDefault(require("../fieldTypeMap"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
14
18
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
15
19
 
16
20
  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."); }
@@ -45,30 +49,17 @@ var getDisplayValues = function getDisplayValues(form, values) {
45
49
 
46
50
  var getAddress = function getAddress(path) {
47
51
  return form.indexes[path];
48
- }; // 判断布局、自增的值还是字段的值(字段值是对象、数组,内部的值特点为非数组、对象的叶子值,并且在form没有路径)
52
+ }; // 当前field
49
53
 
50
54
 
51
- var isFieldValue = function isFieldValue(value, path) {
52
- return !(0, _utils.isPlainObj)(value) && !(0, _utils.isArr)(value) && !getAddress(connectPath(path));
53
- };
54
-
55
- var isLayoutValue = function isLayoutValue(object) {
56
- var _Object$entries$ = _slicedToArray(Object.entries(object)[0], 2),
57
- key = _Object$entries$[0],
58
- value = _Object$entries$[1];
59
-
60
- return !isFieldValue(value, key);
61
- };
62
-
63
- var isArrayValue = function isArrayValue(array) {
64
- return !isFieldValue(array[0], 0);
65
- }; // 判断值的类型,递归获取每个值在该结构中的完整路径
55
+ var field = form.query(getAddress(prefix)).take(); // 是否真实字段值(自定义组件、布局组件、自增数组组件为非真实字段)
66
56
 
57
+ var isFieldValue = Object.keys(_fieldTypeMap.default).includes(field === null || field === void 0 ? void 0 : field.component[0]); // 判断值的类型,递归获取每个值在该结构中的完整路径
67
58
 
68
59
  if (!(0, _utils.isSignificative)(values)) {
69
60
  displayValues = {};
70
- } else if ((0, _utils.isPlainObj)(values) && isLayoutValue(values)) {
71
- // 如果值是对象且是布局对象的值
61
+ } else if ((0, _utils.isPlainObj)(values) && !isFieldValue) {
62
+ // 如果值是布局对象的值
72
63
  displayValues = {};
73
64
  Object.entries(values).forEach(function (_ref) {
74
65
  var _ref2 = _slicedToArray(_ref, 2),
@@ -77,8 +68,10 @@ var getDisplayValues = function getDisplayValues(form, values) {
77
68
 
78
69
  displayValues[key] = getDisplayValues(form, value, connectPath(key));
79
70
  });
80
- } else if ((0, _utils.isArr)(values) && isArrayValue(values)) {
81
- // 如果值是数组且是自增数组的值
71
+ } else if ((0, _utils.isArr)(values) && !isFieldValue) {
72
+ // 如果值是自增数组的值
73
+ // ArrayItems为字符串数组时,由于form.indexes中对应address为最后一个组件,无法正常获取displayName
74
+ // 例如:arrayItemsString.0: "arrayItemsString.0.ArrayItemsRemove"
82
75
  displayValues = [];
83
76
  values.map(function (value, index) {
84
77
  displayValues[index] = getDisplayValues(form, value, connectPath(index));
@@ -87,14 +80,14 @@ var getDisplayValues = function getDisplayValues(form, values) {
87
80
  var _values$value;
88
81
 
89
82
  // 通过值的完整路径获取字段address(从form实例的indexes中),然后获取该字段的value在该字段dataSource中对应的label
90
- var field = form.query(getAddress(prefix)).take();
91
- var realValue = (_values$value = values === null || values === void 0 ? void 0 : values.value) !== null && _values$value !== void 0 ? _values$value : values; // 针对单个字段的值是对象
83
+ var realValue = (_values$value = values === null || values === void 0 ? void 0 : values.value) !== null && _values$value !== void 0 ? _values$value : values; // 针对单个字段的值是对象,例如Select的useDetailValue
92
84
 
85
+ var displayValue = (0, _utils.getValueByValue)(field === null || field === void 0 ? void 0 : field.dataSource, realValue);
93
86
  displayValues = {
94
87
  title: field === null || field === void 0 ? void 0 : field.title,
95
88
  component: field === null || field === void 0 ? void 0 : field.component[0],
96
- value: realValue,
97
- displayValue: (0, _utils.getValueByValue)(field === null || field === void 0 ? void 0 : field.dataSource, realValue)
89
+ value: values,
90
+ displayValue: displayValue
98
91
  };
99
92
  }
100
93
 
@@ -53,6 +53,7 @@ var typeMap = (_typeMap = {
53
53
  MultipleTagPicker: 'array',
54
54
  Range: 'string',
55
55
  Search: 'array',
56
+ SelectGroup: 'array',
56
57
  ArrayCollapse: 'array',
57
58
  ArrayCards: 'array',
58
59
  ArrayTable: 'array',
@@ -43,7 +43,8 @@ var fieldTypeMap = {
43
43
  TagPicker: 'tagPicker',
44
44
  MultipleTagPicker: 'multipleTagPicker',
45
45
  Range: 'range',
46
- Search: 'search'
46
+ Search: 'search',
47
+ SelectGroup: 'selectGroup'
47
48
  };
48
49
  var _default = fieldTypeMap;
49
50
  exports.default = _default;
@@ -97,7 +97,8 @@ declare const formilyReact: {
97
97
  useFieldSchema: () => originalFormilyReact.Schema<any, any, any, any, any, any, any, any, any>;
98
98
  useFormEffects: (effects?: ((form: import("@formily/core").Form<any>) => void) | undefined) => void;
99
99
  };
100
- export { formilyReact };
100
+ import { customComponent } from './ProForm/customComponent';
101
+ export { formilyReact, customComponent };
101
102
  /**
102
103
  * 导出常用formily内容
103
104
  */
@@ -110,7 +111,8 @@ export { createForm, FormConsumer, FormDialog, FormDrawer, FormStep, FormTab, Fo
110
111
  */
111
112
  import { AdvancedFilter, SimpleFilter } from './Filter';
112
113
  import { QueryFilter } from './Filter/index2';
113
- export { AdvancedFilter, SimpleFilter, QueryFilter };
114
+ import { QueryFilterLayout } from './Filter/Layout';
115
+ export { AdvancedFilter, SimpleFilter, QueryFilter, QueryFilterLayout };
114
116
  /**
115
117
  * 导出 ProForm 组件,支持快速搭建表单
116
118
  */
package/lib/form/index.js CHANGED
@@ -22,9 +22,11 @@ var _exportNames = {
22
22
  formilyTeamix: true,
23
23
  FormConsumer: true,
24
24
  useForm: true,
25
+ customComponent: true,
25
26
  AdvancedFilter: true,
26
27
  SimpleFilter: true,
27
- QueryFilter: true
28
+ QueryFilter: true,
29
+ QueryFilterLayout: true
28
30
  };
29
31
  Object.defineProperty(exports, "AdvancedFilter", {
30
32
  enumerable: true,
@@ -74,6 +76,12 @@ Object.defineProperty(exports, "QueryFilter", {
74
76
  return _index.QueryFilter;
75
77
  }
76
78
  });
79
+ Object.defineProperty(exports, "QueryFilterLayout", {
80
+ enumerable: true,
81
+ get: function get() {
82
+ return _Layout.QueryFilterLayout;
83
+ }
84
+ });
77
85
  Object.defineProperty(exports, "SimpleFilter", {
78
86
  enumerable: true,
79
87
  get: function get() {
@@ -86,6 +94,12 @@ Object.defineProperty(exports, "createForm", {
86
94
  return _formilyCore.createForm;
87
95
  }
88
96
  });
97
+ Object.defineProperty(exports, "customComponent", {
98
+ enumerable: true,
99
+ get: function get() {
100
+ return _customComponent.customComponent;
101
+ }
102
+ });
89
103
  exports.formilyTeamix = exports.formilyReactive = exports.formilyReact = exports.formilyCore = exports.default = void 0;
90
104
  Object.defineProperty(exports, "registerFormats", {
91
105
  enumerable: true,
@@ -150,10 +164,14 @@ var _useFormDisplayValues = require("./ProForm/useFormDisplayValues");
150
164
 
151
165
  var _useFieldRequest = _interopRequireDefault(require("./ProForm/useFieldRequest"));
152
166
 
167
+ var _customComponent = require("./ProForm/customComponent");
168
+
153
169
  var _Filter = require("./Filter");
154
170
 
155
171
  var _index = require("./Filter/index2");
156
172
 
173
+ var _Layout = require("./Filter/Layout");
174
+
157
175
  var _ProForm = _interopRequireDefault(require("./ProForm"));
158
176
 
159
177
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -10,7 +10,7 @@ declare type FieldDisplayTypes = 'none' | 'hidden' | 'visible';
10
10
  export interface ProFormInitializeItem {
11
11
  (item: ProFormSchemaItem, props?: any): ProFormSchemaItem;
12
12
  }
13
- declare type IBaseComponent = 'Input' | 'Password' | 'TextArea' | 'NumberPicker' | 'Percent' | 'Money' | 'Select' | 'MultipleSelect' | 'TreeSelect' | 'Cascader' | 'MultipleCascader' | 'ArbitraryCascader' | 'Radio' | 'Checkbox' | 'Switch' | 'DatePicker' | 'TimePicker' | 'DateTimePicker' | 'WeekPicker' | 'MonthPicker' | 'YearPicker' | 'QuarterPicker' | 'DateRangePicker' | 'TimeRangePicker' | 'DateTimeRangePicker' | 'WeekRangePicker' | 'MonthRangePicker' | 'YearRangePicker' | 'QuarterRangePicker' | 'Transfer' | 'Upload' | 'ColorPicker' | 'ColorRadio' | 'IconPicker' | 'JsonInput' | 'TagPicker' | 'MultipleTagPicker' | 'Range' | 'Search';
13
+ declare type IBaseComponent = 'Input' | 'Password' | 'TextArea' | 'NumberPicker' | 'Percent' | 'Money' | 'Select' | 'MultipleSelect' | 'TreeSelect' | 'Cascader' | 'MultipleCascader' | 'ArbitraryCascader' | 'Radio' | 'Checkbox' | 'Switch' | 'DatePicker' | 'TimePicker' | 'DateTimePicker' | 'WeekPicker' | 'MonthPicker' | 'YearPicker' | 'QuarterPicker' | 'DateRangePicker' | 'TimeRangePicker' | 'DateTimeRangePicker' | 'WeekRangePicker' | 'MonthRangePicker' | 'YearRangePicker' | 'QuarterRangePicker' | 'Transfer' | 'Upload' | 'ColorPicker' | 'ColorRadio' | 'IconPicker' | 'JsonInput' | 'TagPicker' | 'MultipleTagPicker' | 'Range' | 'Search' | 'SelectGroup';
14
14
  declare type IButtonComponent = 'Submit' | 'Reset';
15
15
  declare type IComboComponent = 'ArrayCards' | 'ArrayCards.Addition' | 'ArrayCards.Remove' | 'ArrayCards.MoveUp' | 'ArrayCards.MoveDown' | 'ArrayCards.Index' | 'ArrayCollapse' | 'ArrayCollapse.CollapsePanel' | 'ArrayCollapse.Addition' | 'ArrayCollapse.Remove' | 'ArrayCollapse.MoveUp' | 'ArrayCollapse.MoveDown' | 'ArrayCollapse.Index' | 'ArrayTable' | 'ArrayTable.Column' | 'ArrayTable.SortHandle' | 'ArrayTable.Addition' | 'ArrayTable.Remove' | 'ArrayTable.MoveDown' | 'ArrayTable.MoveUp' | 'ArrayTable.Index' | 'ArrayItems' | 'ArrayItems.Item' | 'ArrayItems.SortHandle' | 'ArrayItems.Addition' | 'ArrayItems.Remove' | 'ArrayItems.MoveDown' | 'ArrayItems.MoveUp' | 'ArrayItems.Index' | 'Editable' | 'Editable.Popover' | 'Editable.Dialog' | 'Editable.Drawer';
16
16
  declare type ILayoutComponent = 'FormFlex' | 'FormGrid' | 'FormGroup' | 'FormGroup.GroupPanel' | 'Search' | 'Search.SearchPanel' | 'FormTab' | 'FormTab.TabPane' | 'FormStep' | 'FormStep.StepPane' | 'FormCollapse' | 'FormCollapse.CollapsePanel' | 'FormButtonGroup' | 'FormDialog' | 'FormDrawer' | 'FormDialog.Footer' | 'FormDrawer.Footer';
@@ -70,20 +70,44 @@ export interface FilterProps extends ProFormProps {
70
70
  onReset?: (payload?: any) => void;
71
71
  onResetClick?: () => void;
72
72
  }
73
+ export interface QueryFilterLayoutProps {
74
+ prefixCls?: string;
75
+ className?: string;
76
+ addonBefore?: ReactNode;
77
+ addonAfter?: ReactNode;
78
+ inlineContent?: ReactNode;
79
+ panelContent?: ReactNode;
80
+ count?: number;
81
+ expand?: boolean;
82
+ onExpand?: (expand: boolean) => void;
83
+ }
73
84
  export interface QueryFilterProps extends ProFormProps {
74
85
  /**
75
86
  * @deprecated triggerType已弃用
76
87
  */
77
88
  triggerType?: 'keydown' | 'change' | 'submit';
89
+ /** 表单展示形式 */
78
90
  mode?: 'inline' | 'panel';
91
+ /** 面板是否默认展开,仅在 mode='panel' 时生效 */
79
92
  expand?: boolean;
93
+ /** 顶部筛选区前缀 */
80
94
  addonBefore?: ReactNode;
95
+ /** 顶部筛选区后缀 */
81
96
  addonAfter?: ReactNode;
97
+ /** 顶部筛选区默认筛选项 */
82
98
  defaultFilterValue?: string;
99
+ /** 透出内部表单实例 */
83
100
  formRef?: React.MutableRefObject<any>;
101
+ /** onChange事件的防抖时间 */
102
+ filterDebounce?: number;
103
+ /** 表单初始化(含异步默认值)后回调函数 */
84
104
  onInit?: (values: any) => boolean;
105
+ /** 表单筛选回调函数 */
85
106
  onFilter?: (values: any) => void;
107
+ /** 表单重置回调函数 */
86
108
  onReset?: (payload?: any) => void;
109
+ /** 高级筛选按钮切换 */
110
+ onExpand?: (expand: boolean) => void;
87
111
  }
88
112
  /**
89
113
  * 兼容性导出
package/lib/index.d.ts CHANGED
@@ -24,5 +24,5 @@ export * from './skeleton';
24
24
  export * from './table';
25
25
  export * from './utils';
26
26
  export * from './step';
27
- declare const version = "1.2.26";
27
+ declare const version = "1.2.27";
28
28
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProStep, hooks, nocode, templates, utils, };
package/lib/index.js CHANGED
@@ -285,5 +285,5 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
285
285
  // 设置图标源
286
286
  _icon.default.setConfig(_utils.default.getTeamixIconConfig());
287
287
 
288
- var version = '1.2.26';
288
+ var version = '1.2.27';
289
289
  exports.version = version;
@@ -1,6 +1,6 @@
1
1
  .teamix-pro-info {
2
2
  color: var(--color-brand1-6);
3
-
3
+
4
4
  .teamix-pro-info-content-row {
5
5
  width: 100%;
6
6
  }
@@ -37,7 +37,7 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
37
37
 
38
38
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
39
39
 
40
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } Object.defineProperty(subClass, "prototype", { value: Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }), writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
40
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
41
41
 
42
42
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
43
43
 
@@ -9,10 +9,6 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _utils = require("@teamix/utils");
11
11
 
12
- var _components = require("@alicloudfe/components");
13
-
14
- var _icon = _interopRequireDefault(require("@teamix/icon"));
15
-
16
12
  var _actions = require("../../../actions");
17
13
 
18
14
  var _form = require("../../../form");
@@ -21,11 +17,9 @@ var _ToolBar = _interopRequireDefault(require("../ToolBar"));
21
17
 
22
18
  var _QuickAction = _interopRequireDefault(require("../QuickAction"));
23
19
 
24
- var _lodash = _interopRequireDefault(require("lodash.isempty"));
25
-
26
20
  require("./index.scss");
27
21
 
28
- var _excluded = ["header", "mainAction", "extra", "actionRef", "dataFilter", "dataFilterForm", "rowSelection"];
22
+ var _excluded = ["header", "mainAction", "extra", "actionRef", "dataFilter", "dataFilterFormRef", "rowSelection"];
29
23
 
30
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
25
 
@@ -41,24 +35,11 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
41
35
 
42
36
  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); }
43
37
 
44
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
45
-
46
- 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."); }
47
-
48
- 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); }
49
-
50
- 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; }
51
-
52
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
53
-
54
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
55
-
56
38
  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; }
57
39
 
58
40
  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; }
59
41
 
60
42
  var cls = (0, _utils.baseClass)('teamix-pro-table-layout');
61
- var toJS = _form.formilyReactive.toJS;
62
43
 
63
44
  var Layout = function Layout(props) {
64
45
  var header = props.header,
@@ -66,27 +47,10 @@ var Layout = function Layout(props) {
66
47
  extra = props.extra,
67
48
  actionRef = props.actionRef,
68
49
  dataFilter = props.dataFilter,
69
- dataFilterForm = props.dataFilterForm,
50
+ dataFilterFormRef = props.dataFilterFormRef,
70
51
  rowSelection = props.rowSelection,
71
- otherProps = _objectWithoutProperties(props, _excluded);
72
-
73
- var mode = dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.mode;
74
-
75
- var _useState = (0, _react.useState)((dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.expand) || false),
76
- _useState2 = _slicedToArray(_useState, 2),
77
- expand = _useState2[0],
78
- setExpand = _useState2[1];
52
+ otherProps = _objectWithoutProperties(props, _excluded); // 渲染主操作区
79
53
 
80
- var _useState3 = (0, _react.useState)(false),
81
- _useState4 = _slicedToArray(_useState3, 2),
82
- hasDot = _useState4[0],
83
- setHasDot = _useState4[1];
84
-
85
- (0, _react.useEffect)(function () {
86
- if (dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.expand) {
87
- setExpand(dataFilter.expand);
88
- }
89
- }, [dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.expand]); // 渲染主操作区
90
54
 
91
55
  var renderMainAction = function renderMainAction() {
92
56
  var _mainAction$actions;
@@ -112,96 +76,66 @@ var Layout = function Layout(props) {
112
76
  context: _objectSpread(_objectSpread({}, defaultContext), mainAction.context)
113
77
  })));
114
78
  } else return mainAction;
115
- }; // 渲染 mode='inline' 数据过滤区
116
-
79
+ }; // 渲染新版 QueryFilter
117
80
 
118
- var renderInlineFilter = function renderInlineFilter() {
119
- var _dataFilter$schema;
120
81
 
121
- if (dataFilter && (dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema = dataFilter.schema) === null || _dataFilter$schema === void 0 ? void 0 : _dataFilter$schema.length) > 0) {
122
- return /*#__PURE__*/_react.default.createElement("div", {
123
- className: cls('inline-filter')
124
- }, /*#__PURE__*/_react.default.createElement(_form.SimpleFilter, _objectSpread({
125
- form: dataFilterForm
126
- }, dataFilter)));
127
- }
128
- }; // 渲染 mode='panel' 数据过滤区
129
-
130
-
131
- var renderPanelFilter = function renderPanelFilter() {
82
+ var renderQueryFilter = function renderQueryFilter() {
132
83
  if (dataFilter) {
133
- var _dataFilter$schema2;
84
+ var _dataFilter$schema;
134
85
 
135
86
  if ( /*#__PURE__*/(0, _react.isValidElement)(dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.content)) {
136
- // 自定义渲染内容,当 `schema=[]` 时生效
137
- return /*#__PURE__*/_react.default.createElement("div", {
138
- className: cls('panel-filter'),
139
- style: {
140
- display: expand ? 'block' : 'none'
141
- }
142
- }, dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.content);
143
- } else if ((dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema2 = dataFilter.schema) === null || _dataFilter$schema2 === void 0 ? void 0 : _dataFilter$schema2.length) >= 0) {
144
- return /*#__PURE__*/_react.default.createElement("div", {
145
- className: cls('panel-filter'),
146
- style: {
147
- display: expand ? 'block' : 'none'
148
- }
149
- }, /*#__PURE__*/_react.default.createElement(_form.AdvancedFilter, _objectSpread({
150
- form: dataFilterForm
151
- }, dataFilter)));
87
+ // 自定义渲染内容
88
+ return /*#__PURE__*/_react.default.createElement(_form.QueryFilterLayout, _objectSpread({
89
+ onExpand: function onExpand(expand) {
90
+ // 全屏模式下展开收起过滤器需要重新计算tableMaxHeight
91
+ setTimeout(function () {
92
+ var _actionRef$current, _actionRef$current$ge;
93
+
94
+ if ((_actionRef$current = actionRef.current) === null || _actionRef$current === void 0 ? void 0 : (_actionRef$current$ge = _actionRef$current.getState) === null || _actionRef$current$ge === void 0 ? void 0 : _actionRef$current$ge.call(_actionRef$current).fullScreenState) {
95
+ var _actionRef$current2, _actionRef$current2$r;
96
+
97
+ (_actionRef$current2 = actionRef.current) === null || _actionRef$current2 === void 0 ? void 0 : (_actionRef$current2$r = _actionRef$current2.resetTableMaxBodyHeight) === null || _actionRef$current2$r === void 0 ? void 0 : _actionRef$current2$r.call(_actionRef$current2);
98
+ }
99
+ });
100
+ (dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.onExpand) && (dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.onExpand(expand));
101
+ },
102
+ panelContent: dataFilter.content,
103
+ addonBefore: renderMainAction(),
104
+ addonAfter: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, extra && !header && /*#__PURE__*/_react.default.createElement(_QuickAction.default, {
105
+ actionRef: actionRef,
106
+ quickAction: extra,
107
+ rowSelection: rowSelection
108
+ }), /*#__PURE__*/_react.default.createElement(_ToolBar.default, _objectSpread({
109
+ actionRef: actionRef
110
+ }, otherProps)))
111
+ }, dataFilter));
112
+ } else if ((dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema = dataFilter.schema) === null || _dataFilter$schema === void 0 ? void 0 : _dataFilter$schema.length) >= 0) {
113
+ return /*#__PURE__*/_react.default.createElement(_form.QueryFilter, _objectSpread({
114
+ formRef: dataFilterFormRef,
115
+ onExpand: function onExpand(expand) {
116
+ // 全屏模式下展开收起过滤器需要重新计算tableMaxHeight
117
+ setTimeout(function () {
118
+ var _actionRef$current3, _actionRef$current3$g;
119
+
120
+ if ((_actionRef$current3 = actionRef.current) === null || _actionRef$current3 === void 0 ? void 0 : (_actionRef$current3$g = _actionRef$current3.getState) === null || _actionRef$current3$g === void 0 ? void 0 : _actionRef$current3$g.call(_actionRef$current3).fullScreenState) {
121
+ var _actionRef$current4, _actionRef$current4$r;
122
+
123
+ (_actionRef$current4 = actionRef.current) === null || _actionRef$current4 === void 0 ? void 0 : (_actionRef$current4$r = _actionRef$current4.resetTableMaxBodyHeight) === null || _actionRef$current4$r === void 0 ? void 0 : _actionRef$current4$r.call(_actionRef$current4);
124
+ }
125
+ });
126
+ (dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.onExpand) && (dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.onExpand(expand));
127
+ },
128
+ addonBefore: renderMainAction(),
129
+ addonAfter: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, extra && !header && /*#__PURE__*/_react.default.createElement(_QuickAction.default, {
130
+ actionRef: actionRef,
131
+ quickAction: extra,
132
+ rowSelection: rowSelection
133
+ }), /*#__PURE__*/_react.default.createElement(_ToolBar.default, _objectSpread({
134
+ actionRef: actionRef
135
+ }, otherProps)))
136
+ }, dataFilter));
152
137
  }
153
138
  }
154
- }; // 渲染过滤器按钮
155
-
156
-
157
- var renderFilterBtn = function renderFilterBtn() {
158
- var handleBtnClick = function handleBtnClick() {
159
- setExpand(!expand);
160
- var filterValues = Object.values(toJS(dataFilterForm === null || dataFilterForm === void 0 ? void 0 : dataFilterForm.values)).filter(function (v) {
161
- return !(0, _lodash.default)(v);
162
- }); // console.log('filterValues', filterValues);
163
-
164
- if (filterValues && (filterValues === null || filterValues === void 0 ? void 0 : filterValues.length) > 0) {
165
- setHasDot(true);
166
- } else {
167
- setHasDot(false);
168
- } // 全屏模式下展开收起过滤器需要重新计算tableMaxHeight
169
-
170
-
171
- setTimeout(function () {
172
- var _actionRef$current, _actionRef$current$ge;
173
-
174
- if ((_actionRef$current = actionRef.current) === null || _actionRef$current === void 0 ? void 0 : (_actionRef$current$ge = _actionRef$current.getState) === null || _actionRef$current$ge === void 0 ? void 0 : _actionRef$current$ge.call(_actionRef$current).fullScreenState) {
175
- var _actionRef$current2, _actionRef$current2$r;
176
-
177
- (_actionRef$current2 = actionRef.current) === null || _actionRef$current2 === void 0 ? void 0 : (_actionRef$current2$r = _actionRef$current2.resetTableMaxBodyHeight) === null || _actionRef$current2$r === void 0 ? void 0 : _actionRef$current2$r.call(_actionRef$current2);
178
- }
179
- });
180
- };
181
-
182
- if (mode === 'panel') {
183
- if (expand === false && hasDot) {
184
- return /*#__PURE__*/_react.default.createElement(_components.Badge, {
185
- dot: true,
186
- className: cls('filter-btn')
187
- }, /*#__PURE__*/_react.default.createElement(_components.Button, {
188
- onClick: handleBtnClick,
189
- style: {
190
- minWidth: 'unset'
191
- }
192
- }, /*#__PURE__*/_react.default.createElement(_icon.default, {
193
- type: expand ? 'up-line' : 'filter-line'
194
- }), (0, _utils.getMessage)('filter')));
195
- } else return /*#__PURE__*/_react.default.createElement(_components.Button, {
196
- onClick: handleBtnClick,
197
- className: cls('filter-btn'),
198
- style: {
199
- minWidth: 'unset'
200
- }
201
- }, /*#__PURE__*/_react.default.createElement(_icon.default, {
202
- type: expand ? 'up-line' : 'filter-line'
203
- }), (0, _utils.getMessage)('filter'));
204
- }
205
139
  }; // 区域组合渲染
206
140
 
207
141
 
@@ -217,61 +151,21 @@ var Layout = function Layout(props) {
217
151
  actionRef: actionRef,
218
152
  quickAction: extra,
219
153
  rowSelection: rowSelection
220
- }))), /*#__PURE__*/_react.default.createElement("div", {
221
- className: cls('wrapper')
222
- }, /*#__PURE__*/_react.default.createElement("div", {
223
- className: cls('left')
224
- }, mainAction && renderMainAction(), mode === 'panel' && renderFilterBtn(), mode === 'inline' && renderInlineFilter()), /*#__PURE__*/_react.default.createElement("div", {
225
- className: cls('right')
226
- }, /*#__PURE__*/_react.default.createElement(_ToolBar.default, _objectSpread({
227
- actionRef: actionRef
228
- }, otherProps)))), mode === 'panel' && renderPanelFilter());
154
+ }))), renderQueryFilter());
229
155
  } else if (header && !mainAction) {
230
156
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
231
157
  className: cls('wrapper')
232
158
  }, /*#__PURE__*/_react.default.createElement("div", {
233
159
  className: cls('left')
234
- }, header && /*#__PURE__*/_react.default.createElement(_utils.Header, _objectSpread({}, header)), mode === 'panel' && renderFilterBtn(), mode === 'inline' && renderInlineFilter()), /*#__PURE__*/_react.default.createElement("div", {
235
- className: cls('right')
236
- }, extra && /*#__PURE__*/_react.default.createElement(_QuickAction.default, {
237
- actionRef: actionRef,
238
- quickAction: extra,
239
- rowSelection: rowSelection
240
- }), /*#__PURE__*/_react.default.createElement(_ToolBar.default, _objectSpread({
241
- actionRef: actionRef
242
- }, otherProps)))), mode === 'panel' && renderPanelFilter());
160
+ }, header && /*#__PURE__*/_react.default.createElement(_utils.Header, _objectSpread({}, header)), renderQueryFilter())));
243
161
  } else if (!header && mainAction) {
244
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
245
- className: cls('wrapper')
246
- }, /*#__PURE__*/_react.default.createElement("div", {
247
- className: cls('left')
248
- }, mainAction && renderMainAction(), mode === 'panel' && renderFilterBtn(), mode === 'inline' && renderInlineFilter()), /*#__PURE__*/_react.default.createElement("div", {
249
- className: cls('right')
250
- }, extra && /*#__PURE__*/_react.default.createElement(_QuickAction.default, {
251
- actionRef: actionRef,
252
- quickAction: extra,
253
- rowSelection: rowSelection
254
- }), /*#__PURE__*/_react.default.createElement(_ToolBar.default, _objectSpread({
255
- actionRef: actionRef
256
- }, otherProps)))), mode === 'panel' && renderPanelFilter());
162
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderQueryFilter());
257
163
  } else if (!header && !mainAction) {
258
- if (!dataFilterForm && !extra) {
164
+ if (!dataFilterFormRef && !extra) {
259
165
  return null;
260
166
  }
261
167
 
262
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
263
- className: cls('wrapper')
264
- }, /*#__PURE__*/_react.default.createElement("div", {
265
- className: cls('left')
266
- }, mode === 'panel' && renderFilterBtn(), mode === 'inline' && renderInlineFilter()), /*#__PURE__*/_react.default.createElement("div", {
267
- className: cls('right')
268
- }, extra && /*#__PURE__*/_react.default.createElement(_QuickAction.default, {
269
- actionRef: actionRef,
270
- quickAction: extra,
271
- rowSelection: rowSelection
272
- }), /*#__PURE__*/_react.default.createElement(_ToolBar.default, _objectSpread({
273
- actionRef: actionRef
274
- }, otherProps)))), mode === 'panel' && renderPanelFilter());
168
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderQueryFilter());
275
169
  }
276
170
  };
277
171
 
@@ -9,9 +9,10 @@ $prefix: 'teamix-pro-table-layout';
9
9
  display: flex;
10
10
  justify-content: space-between;
11
11
  margin-bottom: 8px;
12
- &:not(:first-child) {
13
- margin-top: 8px;
14
- }
12
+ // margin-bottom: 8px;
13
+ // &:not(:first-child) {
14
+ // margin-top: 8px;
15
+ // }
15
16
  }
16
17
  &-left {
17
18
  display: flex;
@@ -79,6 +79,7 @@ var _default = function _default(props) {
79
79
  onChange: propsOnChange,
80
80
  total: total,
81
81
  pageSize: pageSize,
82
+ current: current,
82
83
  shape: 'arrow-only',
83
84
  pageSizeList: pageSizeList,
84
85
  pageSizeSelector: pageSizeSelector,
@@ -44,17 +44,11 @@ var FullScreenIcon = function FullScreenIcon(props) {
44
44
 
45
45
  var _useState = (0, _react.useState)(false),
46
46
  _useState2 = _slicedToArray(_useState, 2),
47
- visible = _useState2[0],
48
- setVisible = _useState2[1];
49
-
50
- var _useState3 = (0, _react.useState)(false),
51
- _useState4 = _slicedToArray(_useState3, 2),
52
- fullscreen = _useState4[0],
53
- setFullscreen = _useState4[1]; // 点击全屏
47
+ fullscreen = _useState2[0],
48
+ setFullscreen = _useState2[1]; // 点击全屏
54
49
 
55
50
 
56
51
  var allScreenHandle = function allScreenHandle() {
57
- setVisible(false);
58
52
  setTimeout(function () {
59
53
  var _actionRef$current, _actionRef$current$fu;
60
54
 
@@ -72,7 +66,8 @@ var FullScreenIcon = function FullScreenIcon(props) {
72
66
  }, []); // 监听全屏变化
73
67
 
74
68
  (_actionRef$current3 = actionRef.current) === null || _actionRef$current3 === void 0 ? void 0 : (_actionRef$current3$o = _actionRef$current3.on) === null || _actionRef$current3$o === void 0 ? void 0 : _actionRef$current3$o.call(_actionRef$current3, function (state) {
75
- setFullscreen(state);
69
+ // console.log('dataFilterForm', actionRef.current?.dataFilterForm);
70
+ setFullscreen(state); // actionRef.current?.dataFilterForm?.setValues(formValues);
76
71
  }, 'fullScreenState', 'fullscreenIcon');
77
72
  return /*#__PURE__*/_react.default.createElement(_components.Button, {
78
73
  iconSize: "small",