@teamix/pro 1.2.14 → 1.2.15

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 (43) hide show
  1. package/dist/pro.css +1 -1
  2. package/dist/pro.js +439 -213
  3. package/dist/pro.min.css +1 -1
  4. package/dist/pro.min.js +1 -1
  5. package/es/actions/dialog.js +3 -1
  6. package/es/card/index.d.ts +4 -1
  7. package/es/card/index.js +8 -2
  8. package/es/card/index.scss +4 -0
  9. package/es/form/Filter/index2.js +124 -128
  10. package/es/form/Filter/index2.scss +1 -1
  11. package/es/form/SchemaForm/reactions.js +2 -6
  12. package/es/form/typing.d.ts +6 -0
  13. package/es/index.d.ts +1 -1
  14. package/es/index.js +1 -1
  15. package/es/page-header/index.js +2 -11
  16. package/es/table/components/ToolBar/FilterColumnIcon.js +52 -17
  17. package/es/table/components/ToolBar/index.scss +1 -0
  18. package/es/table/index.js +7 -1
  19. package/es/table/typing.d.ts +4 -2
  20. package/es/table/utils/columnRender.js +27 -6
  21. package/es/table/utils/index.js +7 -1
  22. package/es/utils/message.d.ts +1 -1
  23. package/es/utils/message.js +7 -7
  24. package/lib/actions/dialog.js +3 -1
  25. package/lib/card/index.d.ts +4 -1
  26. package/lib/card/index.js +9 -2
  27. package/lib/card/index.scss +4 -0
  28. package/lib/form/Filter/index2.js +124 -128
  29. package/lib/form/Filter/index2.scss +1 -1
  30. package/lib/form/SchemaForm/reactions.js +1 -5
  31. package/lib/form/typing.d.ts +6 -0
  32. package/lib/index.d.ts +1 -1
  33. package/lib/index.js +1 -1
  34. package/lib/page-header/index.js +3 -12
  35. package/lib/table/components/ToolBar/FilterColumnIcon.js +52 -17
  36. package/lib/table/components/ToolBar/index.scss +1 -0
  37. package/lib/table/index.js +7 -1
  38. package/lib/table/typing.d.ts +4 -2
  39. package/lib/table/utils/columnRender.js +27 -6
  40. package/lib/table/utils/index.js +7 -1
  41. package/lib/utils/message.d.ts +1 -1
  42. package/lib/utils/message.js +7 -7
  43. package/package.json +1 -1
@@ -31,9 +31,10 @@ var _utils2 = require("../utils");
31
31
 
32
32
  require("./index2.scss");
33
33
 
34
- var _excluded = ["schema", "triggerType", "onFilter"],
35
- _excluded2 = ["schema", "triggerType", "onFilter"],
36
- _excluded3 = ["form", "addonAfter", "addonBefore", "onFilter"];
34
+ var _excluded = ["schema", "onChange", "onSubmit"],
35
+ _excluded2 = ["form", "schema", "onSubmit", "onChange"],
36
+ _excluded3 = ["schema", "onSubmit", "onChange", "onReset", "layout", "labelAlign", "wrapperAlign", "labelCol", "wrapperCol"],
37
+ _excluded4 = ["addonAfter", "addonBefore", "onFilter", "mode", "expand"];
37
38
 
38
39
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
39
40
 
@@ -61,51 +62,23 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
61
62
 
62
63
  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; }
63
64
 
64
- 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; }
65
-
66
- 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; }
67
-
68
65
  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; }
69
66
 
70
67
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
71
68
 
72
69
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
73
70
 
74
- var getEventProps = function getEventProps(triggerType, onFilter) {
75
- var keydownEvent = {
76
- onSubmit: onFilter
77
- };
78
- var changeEvent = {
79
- onChange: onFilter
80
- };
81
- var eventMap = {
82
- keydown: keydownEvent,
83
- change: _objectSpread(_objectSpread({}, keydownEvent), changeEvent),
84
- submit: keydownEvent
85
- };
86
- return eventMap[triggerType];
87
- };
71
+ 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; }
72
+
73
+ 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; }
88
74
 
89
- var schemaTemp = [{
90
- name: 'taskName',
91
- title: '实例名称',
92
- component: 'Input',
93
- required: true,
94
- props: {
95
- style: {
96
- width: 180
97
- },
98
- placeholder: '请输入'
99
- }
100
- }];
101
75
  /**
102
76
  * 简单筛选
103
77
  */
104
-
105
78
  var SimpleFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
106
79
  var schema = props.schema,
107
- triggerType = props.triggerType,
108
- onFilter = props.onFilter,
80
+ onChange = props.onChange,
81
+ onSubmit = props.onSubmit,
109
82
  otherProps = _objectWithoutProperties(props, _excluded);
110
83
 
111
84
  var prefixCls = (0, _utils.usePrefixCls)('', {
@@ -117,48 +90,87 @@ var SimpleFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
117
90
  props: {
118
91
  size: 8
119
92
  },
120
- children: [].concat(_toConsumableArray(schema), [{
121
- type: 'void',
122
- decorator: null,
123
- component: 'Submit',
124
- props: {
125
- style: _objectSpread({}, triggerType === 'submit' ? {} : {
126
- display: 'none'
127
- })
93
+ children: schema
94
+ }, {
95
+ component: 'Submit',
96
+ props: {
97
+ style: {
98
+ display: 'none'
128
99
  }
129
- }])
100
+ }
130
101
  }];
131
- }, []);
132
- var eventProps = getEventProps(triggerType, onFilter);
133
- return /*#__PURE__*/_react.default.createElement(_ProForm.default, _objectSpread(_objectSpread(_objectSpread({
102
+ }, [schema]);
103
+ return /*#__PURE__*/_react.default.createElement(_ProForm.default, _objectSpread(_objectSpread({}, otherProps), {}, {
104
+ className: (0, _classnames.default)(prefixCls, props.className),
105
+ schema: simpleSchema,
134
106
  feedbackLayout: "popover",
135
107
  breakpoints: [],
136
- inset: true
137
- }, otherProps), eventProps), {}, {
108
+ inset: true,
109
+ onSubmit: onSubmit,
110
+ onChange: onChange
111
+ }));
112
+ });
113
+ /**
114
+ * 轻量筛选
115
+ */
116
+
117
+ var LightFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
118
+ var form = props.form,
119
+ schema = props.schema,
120
+ onSubmit = props.onSubmit,
121
+ onChange = props.onChange,
122
+ otherProps = _objectWithoutProperties(props, _excluded2);
123
+
124
+ var prefixCls = (0, _utils.usePrefixCls)('', {
125
+ prefix: 'teamix-pro-form-query-filter-light'
126
+ });
127
+ var LightSchema = (0, _react.useMemo)(function () {
128
+ return [{
129
+ component: 'LightFilter',
130
+ children: schema
131
+ }, {
132
+ component: 'Submit',
133
+ props: {
134
+ style: {
135
+ display: 'none'
136
+ }
137
+ }
138
+ }];
139
+ }, [schema]); // useEffect(() => {
140
+ // form.addEffects('onChange', () => {
141
+ // onFieldValueChange('',(field:any) => {
142
+ // console.log(field.value);
143
+ // });
144
+ // });
145
+ // }, [form, onChange]);
146
+
147
+ return /*#__PURE__*/_react.default.createElement(_ProForm.default, _objectSpread(_objectSpread({}, otherProps), {}, {
148
+ form: form,
138
149
  className: (0, _classnames.default)(prefixCls, props.className),
139
- schema: simpleSchema
150
+ schema: LightSchema,
151
+ feedbackLayout: "popover",
152
+ breakpoints: [],
153
+ bordered: false,
154
+ onSubmit: onSubmit,
155
+ onChange: onChange
140
156
  }));
141
157
  });
142
- SimpleFilter.defaultProps = {
143
- triggerType: 'change'
144
- };
145
158
  /**
146
159
  * 高级筛选
147
160
  */
148
161
 
149
162
  var AdvancedFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
150
- var form = (0, _react.useMemo)(function () {
151
- return (props === null || props === void 0 ? void 0 : props.form) || (0, _core.createForm)();
152
- }, []);
153
163
  var schema = props.schema,
154
- triggerType = props.triggerType,
155
- onFilter = props.onFilter,
164
+ onSubmit = props.onSubmit,
165
+ onChange = props.onChange,
156
166
  onReset = props.onReset,
157
167
  layout = props.layout,
158
168
  labelAlign = props.labelAlign,
159
169
  wrapperAlign = props.wrapperAlign,
160
170
  labelCol = props.labelCol,
161
- wrapperCol = props.wrapperCol;
171
+ wrapperCol = props.wrapperCol,
172
+ otherProps = _objectWithoutProperties(props, _excluded3);
173
+
162
174
  var prefixCls = (0, _utils.usePrefixCls)('', {
163
175
  prefix: 'teamix-pro-form-query-filter-advanced'
164
176
  });
@@ -186,26 +198,21 @@ var AdvancedFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
186
198
  component: 'Reset',
187
199
  props: {
188
200
  onResetValidateSuccess: onReset,
189
- style: _objectSpread({}, triggerType === 'submit' ? {} : {
190
- marginRight: -16
191
- }),
192
201
  children: (0, _utils.getMessage)('reset')
193
202
  }
194
203
  }, {
195
204
  component: 'Submit',
196
205
  props: {
197
- style: _objectSpread({}, triggerType === 'submit' ? {
206
+ style: {
198
207
  marginRight: -8
199
- } : {
200
- display: 'none'
201
- }),
208
+ },
202
209
  children: (0, _utils.getMessage)('search')
203
210
  }
204
211
  }]
205
212
  }]
206
213
  }])
207
214
  }];
208
- }, []);
215
+ }, [schema, onReset]);
209
216
  var getTeamixLayout = (0, _react.useMemo)(function () {
210
217
  return {
211
218
  breakpoints: [990],
@@ -216,61 +223,39 @@ var AdvancedFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
216
223
  wrapperCol: (0, _utils2.mergeArrayValue)([24], wrapperCol)
217
224
  };
218
225
  }, [layout, labelAlign, wrapperAlign, labelCol, wrapperCol]);
219
- var eventProps = getEventProps(triggerType, onFilter);
220
- return /*#__PURE__*/_react.default.createElement(_ProForm.default, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
221
- feedbackLayout: "popover"
222
- }, props), eventProps), getTeamixLayout), {}, {
223
- form: form,
226
+ return /*#__PURE__*/_react.default.createElement(_ProForm.default, _objectSpread(_objectSpread(_objectSpread({
224
227
  className: (0, _classnames.default)(prefixCls, props.className),
225
228
  schema: gridSchema,
226
- onSubmit: onFilter
229
+ feedbackLayout: "popover"
230
+ }, otherProps), getTeamixLayout), {}, {
231
+ onSubmit: onSubmit
227
232
  }));
228
233
  });
229
234
  AdvancedFilter.defaultProps = {
230
- triggerType: 'change',
231
235
  layout: 'horizontal',
232
236
  labelAlign: 'right',
233
237
  labelCol: 6,
234
238
  wrapperCol: 18
235
239
  };
236
240
  /**
237
- * 聚合筛选
241
+ * 查询筛选
238
242
  */
239
243
 
240
- var LightFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
241
- var schema = props.schema,
242
- triggerType = props.triggerType,
244
+ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
245
+ var addonAfter = props.addonAfter,
246
+ addonBefore = props.addonBefore,
243
247
  onFilter = props.onFilter,
244
- otherProps = _objectWithoutProperties(props, _excluded2);
248
+ mode = props.mode,
249
+ expand = props.expand,
250
+ otherProps = _objectWithoutProperties(props, _excluded4);
245
251
 
246
- var prefixCls = (0, _utils.usePrefixCls)('', {
247
- prefix: 'teamix-pro-form-query-filter-light'
248
- });
249
- var LightSchema = (0, _react.useMemo)(function () {
250
- return [{
251
- component: 'LightFilter',
252
- children: schema
253
- }];
254
- }, [schema]);
255
- var eventProps = getEventProps(triggerType, onFilter);
256
- return /*#__PURE__*/_react.default.createElement(_ProForm.default, _objectSpread(_objectSpread(_objectSpread({
257
- feedbackLayout: "popover",
258
- breakpoints: [],
259
- bordered: false
260
- }, otherProps), eventProps), {}, {
261
- className: (0, _classnames.default)(prefixCls, props.className),
262
- schema: LightSchema
263
- }));
264
- });
265
- LightFilter.defaultProps = {
266
- triggerType: 'change'
267
- };
268
- /**
269
- * 查询筛选
270
- */
252
+ var form = (0, _react.useMemo)(function () {
253
+ return props.form || (0, _core.createForm)({
254
+ validateFirst: true
255
+ });
256
+ }, []);
271
257
 
272
- var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
273
- var _useState = (0, _react.useState)(true),
258
+ var _useState = (0, _react.useState)(expand),
274
259
  _useState2 = _slicedToArray(_useState, 2),
275
260
  advancedFilterVisible = _useState2[0],
276
261
  setAdvancedFilterVisible = _useState2[1];
@@ -280,17 +265,6 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
280
265
  tagDataSource = _useState4[0],
281
266
  setTagDataSource = _useState4[1];
282
267
 
283
- var outerForm = props.form,
284
- addonAfter = props.addonAfter,
285
- addonBefore = props.addonBefore,
286
- onFilter = props.onFilter,
287
- otherProps = _objectWithoutProperties(props, _excluded3);
288
-
289
- var form = (0, _react.useMemo)(function () {
290
- return outerForm || (0, _core.createForm)({
291
- validateFirst: true
292
- });
293
- }, []);
294
268
  var prefixCls = (0, _utils.usePrefixCls)('', {
295
269
  prefix: 'teamix-pro-form-query-filter'
296
270
  }); // 展开收起高级筛选
@@ -319,9 +293,20 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
319
293
  }).filter(function (item) {
320
294
  return (0, _utils.isSignificative)(item.value);
321
295
  });
322
- }, []); // 表单值变化
296
+ }, []); // 表单值提交
297
+
298
+ var onFormSubmit = (0, _react.useCallback)(function (values) {
299
+ setTagDataSource(getTagDataSource(form));
300
+ onFilter && onFilter(values);
301
+ }, []); // 轻量表单onChange
302
+
303
+ var onLightValueChange = (0, _react.useCallback)(function (values) {
304
+ form.reset();
305
+ setTagDataSource(getTagDataSource(form));
306
+ onFilter && onFilter(values);
307
+ }, [form]); // 简单表单onChange
323
308
 
324
- var onFormValueChange = (0, _react.useCallback)(function (values) {
309
+ var onSimpleValueChange = (0, _react.useCallback)(function (values) {
325
310
  setTagDataSource(getTagDataSource(form));
326
311
  onFilter && onFilter(values);
327
312
  }, []); // 关闭标签清空表单字段值
@@ -341,11 +326,12 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
341
326
  className: "".concat(prefixCls, "-left")
342
327
  }, addonBefore ? /*#__PURE__*/_react.default.createElement("div", {
343
328
  className: "".concat(prefixCls, "-addonBefore")
344
- }, addonBefore) : null, /*#__PURE__*/_react.default.createElement("div", {
345
- className: "".concat(prefixCls, "-light-wrap")
329
+ }, addonBefore) : null, mode === 'panel' ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
330
+ className: "".concat(prefixCls, "-inline-form")
346
331
  }, /*#__PURE__*/_react.default.createElement(LightFilter, _objectSpread(_objectSpread({}, otherProps), {}, {
347
332
  form: form,
348
- onFilter: onFormValueChange
333
+ onFilter: onLightValueChange,
334
+ onSubmit: onFormSubmit
349
335
  }))), /*#__PURE__*/_react.default.createElement("div", {
350
336
  className: "".concat(prefixCls, "-toggle")
351
337
  }, /*#__PURE__*/_react.default.createElement(_components.Badge, {
@@ -362,9 +348,15 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
362
348
  type: "up-line"
363
349
  }) : /*#__PURE__*/_react.default.createElement(_icon.default, {
364
350
  type: "filter-line"
365
- }), (0, _utils.getMessage)('advancedFilter'))))), addonAfter ? /*#__PURE__*/_react.default.createElement("div", {
351
+ }), (0, _utils.getMessage)('advancedFilter'))))) : /*#__PURE__*/_react.default.createElement("div", {
352
+ className: "".concat(prefixCls, "-inline-form")
353
+ }, /*#__PURE__*/_react.default.createElement(SimpleFilter, _objectSpread(_objectSpread({}, otherProps), {}, {
354
+ form: form,
355
+ onFilter: onSimpleValueChange,
356
+ onSubmit: onFormSubmit
357
+ })))), addonAfter ? /*#__PURE__*/_react.default.createElement("div", {
366
358
  className: "".concat(prefixCls, "-addonAfter")
367
- }, addonAfter) : null), /*#__PURE__*/_react.default.createElement("div", {
359
+ }, addonAfter) : null), mode === 'panel' ? /*#__PURE__*/_react.default.createElement("div", {
368
360
  className: "".concat(prefixCls, "-panel")
369
361
  }, /*#__PURE__*/_react.default.createElement("div", {
370
362
  className: (0, _classnames.default)("".concat(prefixCls, "-tag"), advancedFilterVisible ? "".concat(prefixCls, "-tag-hidden") : '')
@@ -390,7 +382,11 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
390
382
  className: (0, _classnames.default)("".concat(prefixCls, "-advanced-wrap"), !advancedFilterVisible ? "".concat(prefixCls, "-advanced-wrap-hidden") : '')
391
383
  }, /*#__PURE__*/_react.default.createElement(AdvancedFilter, _objectSpread(_objectSpread({}, otherProps), {}, {
392
384
  form: form,
393
- onFilter: onFormValueChange
394
- })))));
385
+ onSubmit: onFormSubmit
386
+ })))) : null);
395
387
  });
396
- exports.QueryFilter = QueryFilter;
388
+ exports.QueryFilter = QueryFilter;
389
+ QueryFilter.defaultProps = {
390
+ mode: 'inline',
391
+ expand: false
392
+ };
@@ -14,7 +14,7 @@ $query-filter: #{$teamix-pro-form}-query-filter;
14
14
  flex: 0 1 auto;
15
15
  margin-right: 8px;
16
16
  }
17
- .#{$query-filter}-light-wrap {
17
+ .#{$query-filter}-inline-form {
18
18
  flex: 0 0 auto;
19
19
  margin-right: 8px;
20
20
  margin-bottom: 8px;
@@ -68,11 +68,7 @@ var $dataSource = function $dataSource(services, onComplete, context) {
68
68
  readOnly: true
69
69
  });
70
70
  return services(field, context).then(function (res) {
71
- var _res$map;
72
-
73
- var isValueInDataSource = res === null || res === void 0 ? void 0 : (_res$map = res.map(function (v) {
74
- return v.value;
75
- })) === null || _res$map === void 0 ? void 0 : _res$map.includes(field.value);
71
+ var isValueInDataSource = (0, _utils.getValueByValue)(res, field.value);
76
72
  var clearValue = isValueInDataSource ? {} : {
77
73
  value: undefined
78
74
  };
@@ -65,6 +65,12 @@ export interface ProFormProps extends IFormLayoutProps {
65
65
  onSubmitFailed?: (feedbacks: IFormFeedback[]) => void;
66
66
  }
67
67
  export interface QueryFilterProps extends ProFormProps {
68
+ /**
69
+ * @deprecated triggerType已弃用
70
+ */
71
+ triggerType?: 'keydown' | 'change' | 'submit';
72
+ mode?: 'inline' | 'panel';
73
+ expand?: boolean;
68
74
  addonBefore?: ReactNode;
69
75
  addonAfter?: ReactNode;
70
76
  onFilter?: (values: any) => void;
package/lib/index.d.ts CHANGED
@@ -21,5 +21,5 @@ export * from './page-container';
21
21
  export * from './page-header';
22
22
  export * from './skeleton';
23
23
  export * from './table';
24
- declare const version = "1.2.13";
24
+ declare const version = "1.2.14";
25
25
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, hooks, nocode, templates, utils, };
package/lib/index.js CHANGED
@@ -253,5 +253,5 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
253
253
  _icon.default.setConfig(_utils.default.getTeamixIconConfig());
254
254
 
255
255
  // export * from './sidebar';
256
- var version = '1.2.13';
256
+ var version = '1.2.14';
257
257
  exports.version = version;
@@ -82,21 +82,12 @@ var renderActionGroup = function renderActionGroup(group, defaultProps) {
82
82
  return group;
83
83
  };
84
84
 
85
- var isPresetColor = function isPresetColor(color) {
86
- if (!color) {
87
- return false;
88
- }
89
-
90
- var PRESET_COLOR_REG = /blue|green|orange|red|yellow/;
91
- return PRESET_COLOR_REG.test(color);
92
- };
93
-
94
85
  var getColorAndStyle = function getColorAndStyle(color, backgroundColor, backgroundType) {
95
86
  var _classnames;
96
87
 
97
- var isColorPresetColor = isPresetColor(color);
98
- var isBgColorPresetColor = isPresetColor(backgroundColor);
99
- var className = (0, _classnames2.default)((_classnames = {}, _defineProperty(_classnames, "".concat(cls("color-".concat(color))), isColorPresetColor), _defineProperty(_classnames, "".concat(cls("bg-color-".concat(backgroundColor))), isBgColorPresetColor), _defineProperty(_classnames, "".concat(cls("bg-type-".concat(backgroundType))), !!backgroundType), _classnames));
88
+ var isColorPresetColor = (0, _utils.isPresetColor)(color);
89
+ var isBgColorPresetColor = (0, _utils.isPresetColor)(backgroundColor);
90
+ var className = (0, _classnames2.default)((_classnames = {}, _defineProperty(_classnames, "".concat((0, _utils.getColorClassName)(color)), isColorPresetColor), _defineProperty(_classnames, "".concat((0, _utils.getBackgroundColorClassName)(backgroundColor)), isBgColorPresetColor), _defineProperty(_classnames, "".concat(cls("bg-type-".concat(backgroundType))), !!backgroundType), _classnames));
100
91
  var styleColor = isColorPresetColor ? undefined : color;
101
92
  var styleBgColor = isBgColorPresetColor ? undefined : backgroundColor;
102
93
  var style = {
@@ -25,6 +25,14 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
25
25
 
26
26
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
27
 
28
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
29
+
30
+ 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."); }
31
+
32
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
33
+
34
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
35
+
28
36
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
29
37
 
30
38
  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."); }
@@ -138,10 +146,23 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
138
146
 
139
147
 
140
148
  var moveUp = function moveUp(e, dataIndex) {
149
+ var _newColumns$filter, _newColumns$filter2;
150
+
141
151
  e.stopPropagation();
142
- var keyNewColumns = (0, _utils2.cloneDeep)(newColumns);
143
- var index = keyNewColumns.findIndex(function (_ref) {
144
- var index = _ref.dataIndex;
152
+ var keyNewColumns = (0, _utils2.cloneDeep)(newColumns).filter(function (_ref) {
153
+ var lock = _ref.lock;
154
+ return !lock;
155
+ });
156
+ var headLock = (0, _utils2.cloneDeep)((_newColumns$filter = newColumns.filter(function (_ref2) {
157
+ var lock = _ref2.lock;
158
+ return lock === true || lock === 'left';
159
+ })) !== null && _newColumns$filter !== void 0 ? _newColumns$filter : []);
160
+ var tailLock = (0, _utils2.cloneDeep)((_newColumns$filter2 = newColumns.filter(function (_ref3) {
161
+ var lock = _ref3.lock;
162
+ return lock === 'right';
163
+ })) !== null && _newColumns$filter2 !== void 0 ? _newColumns$filter2 : []);
164
+ var index = keyNewColumns.findIndex(function (_ref4) {
165
+ var index = _ref4.dataIndex;
145
166
  return index === dataIndex;
146
167
  });
147
168
 
@@ -151,15 +172,28 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
151
172
  keyNewColumns.push(keyNewColumns.shift());
152
173
  }
153
174
 
154
- notifyTableRender(keyNewColumns);
175
+ notifyTableRender([].concat(_toConsumableArray(headLock), _toConsumableArray(keyNewColumns), _toConsumableArray(tailLock)));
155
176
  }; // 向下
156
177
 
157
178
 
158
179
  var moveDown = function moveDown(e, dataIndex) {
180
+ var _newColumns$filter3, _newColumns$filter4;
181
+
159
182
  e.stopPropagation();
160
- var keyNewColumns = (0, _utils2.cloneDeep)(newColumns);
161
- var index = keyNewColumns.findIndex(function (_ref2) {
162
- var index = _ref2.dataIndex;
183
+ var keyNewColumns = (0, _utils2.cloneDeep)(newColumns).filter(function (_ref5) {
184
+ var lock = _ref5.lock;
185
+ return !lock;
186
+ });
187
+ var headLock = (0, _utils2.cloneDeep)((_newColumns$filter3 = newColumns.filter(function (_ref6) {
188
+ var lock = _ref6.lock;
189
+ return lock === true || lock === 'left';
190
+ })) !== null && _newColumns$filter3 !== void 0 ? _newColumns$filter3 : []);
191
+ var tailLock = (0, _utils2.cloneDeep)((_newColumns$filter4 = newColumns.filter(function (_ref7) {
192
+ var lock = _ref7.lock;
193
+ return lock === 'right';
194
+ })) !== null && _newColumns$filter4 !== void 0 ? _newColumns$filter4 : []);
195
+ var index = keyNewColumns.findIndex(function (_ref8) {
196
+ var index = _ref8.dataIndex;
163
197
  return index === dataIndex;
164
198
  });
165
199
 
@@ -169,7 +203,7 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
169
203
  keyNewColumns.unshift(keyNewColumns.splice(index, 1)[0]);
170
204
  }
171
205
 
172
- notifyTableRender(keyNewColumns);
206
+ notifyTableRender([].concat(_toConsumableArray(headLock), _toConsumableArray(keyNewColumns), _toConsumableArray(tailLock)));
173
207
  }; // 通知表格渲染
174
208
 
175
209
 
@@ -237,23 +271,24 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
237
271
  type: "primary"
238
272
  }, (0, _utils.getMessage)('reset'))), /*#__PURE__*/_react.default.createElement(_components.Menu.Divider, {
239
273
  key: "divider"
240
- }), newColumns.map(function (_ref3, index) {
274
+ }), newColumns.map(function (_ref9, index) {
241
275
  var _newColumns$find;
242
276
 
243
- var dataIndex = _ref3.dataIndex,
244
- title = _ref3.title,
245
- columnFiltersDisabled = _ref3.columnFiltersDisabled;
277
+ var dataIndex = _ref9.dataIndex,
278
+ title = _ref9.title,
279
+ columnFiltersDisabled = _ref9.columnFiltersDisabled,
280
+ lock = _ref9.lock;
246
281
  return /*#__PURE__*/_react.default.createElement(CheckboxItem, {
247
282
  key: index,
248
- checked: (_newColumns$find = newColumns.find(function (_ref4) {
249
- var key = _ref4.dataIndex;
283
+ checked: (_newColumns$find = newColumns.find(function (_ref10) {
284
+ var key = _ref10.dataIndex;
250
285
  return key === dataIndex;
251
286
  })) === null || _newColumns$find === void 0 ? void 0 : _newColumns$find.columnFilters,
252
287
  onChange: function onChange(check) {
253
288
  return onChangeColumns(check, dataIndex);
254
289
  },
255
290
  disabled: columnFiltersDisabled
256
- }, title, /*#__PURE__*/_react.default.createElement("div", {
291
+ }, title, !lock && /*#__PURE__*/_react.default.createElement("div", {
257
292
  className: cls({
258
293
  sort: true
259
294
  })
@@ -310,8 +345,8 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
310
345
  key: index,
311
346
  className: cls('col')
312
347
  }, /*#__PURE__*/_react.default.createElement(_components.Checkbox, {
313
- checked: (_newColumns$find2 = newColumns.find(function (_ref5) {
314
- var key = _ref5.dataIndex;
348
+ checked: (_newColumns$find2 = newColumns.find(function (_ref11) {
349
+ var key = _ref11.dataIndex;
315
350
  return key === dataIndex;
316
351
  })) === null || _newColumns$find2 === void 0 ? void 0 : _newColumns$find2.columnFilters,
317
352
  onChange: function onChange(check) {
@@ -40,6 +40,7 @@
40
40
  visibility: visible;
41
41
  cursor: pointer;
42
42
  }
43
+
43
44
  }
44
45
  }
45
46
  .next-menu-item-text {
@@ -608,7 +608,11 @@ var ProTable = function ProTable(props) {
608
608
  }
609
609
 
610
610
  (0, _react.useEffect)(function () {
611
- // 监听 浏览器变化 更吸底状态
611
+ var _actionRef$current5, _actionRef$current5$i;
612
+
613
+ // 初始化 state 状态
614
+ actionRef === null || actionRef === void 0 ? void 0 : (_actionRef$current5 = actionRef.current) === null || _actionRef$current5 === void 0 ? void 0 : (_actionRef$current5$i = _actionRef$current5.initState) === null || _actionRef$current5$i === void 0 ? void 0 : _actionRef$current5$i.call(_actionRef$current5); // 监听 浏览器变化 更吸底状态
615
+
612
616
  if (footerSuction) {
613
617
  getFooterSuctionState();
614
618
 
@@ -629,6 +633,8 @@ var ProTable = function ProTable(props) {
629
633
  if (window.onresize) {
630
634
  window.onresize = null;
631
635
  }
636
+
637
+ actionRef.current = undefined;
632
638
  };
633
639
  }, []);
634
640
 
@@ -178,10 +178,12 @@ export declare type ProTableActionType = {
178
178
  } & ProTableActionTypeMutations;
179
179
  /** action State 定义 */
180
180
  export declare type ProTableActionTypeMutations = {
181
- /** 获取state状态 */
181
+ /** 获取state 状态 */
182
182
  getState?: () => ProTableActionTypeState;
183
- /** 设置state状态 */
183
+ /** 设置state 状态 */
184
184
  setState?: (key: string, value: any) => void;
185
+ /** 初始化 state 状态 */
186
+ initState?: () => void;
185
187
  /** 设置全屏状态 */
186
188
  setFullScreenState?: (state: boolean) => void;
187
189
  /** 绑定state监听事件 */