@teamix/pro 1.2.18 → 1.2.19
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.
- package/dist/pro.css +1 -1
- package/dist/pro.js +733 -273
- package/dist/pro.min.css +1 -1
- package/dist/pro.min.js +1 -1
- package/es/actions/base.d.ts +2 -1
- package/es/actions/base.js +1 -1
- package/es/actions/danger-pop-confirm.d.ts +5 -0
- package/es/actions/danger-pop-confirm.js +10 -0
- package/es/actions/dialog.d.ts +1 -1
- package/es/actions/dialog.js +32 -31
- package/es/actions/index.d.ts +3 -0
- package/es/actions/index.js +10 -0
- package/es/actions/pop-confirm.d.ts +9 -0
- package/es/actions/pop-confirm.js +9 -0
- package/es/form/Components/LightFilter/componentMap.d.ts +2 -1
- package/es/form/Components/LightFilter/componentMap.js +2 -1
- package/es/form/Components/LightFilter/index.d.ts +1 -0
- package/es/form/Components/LightFilter/index.js +19 -13
- package/es/form/Components/LightFilter/index.scss +13 -3
- package/es/form/Filter/index2.js +157 -50
- package/es/form/Filter/index2.scss +3 -0
- package/es/form/ProForm/index.js +3 -2
- package/es/form/typing.d.ts +5 -0
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/table/components/ToolBar/FilterColumnIcon.js +1 -1
- package/es/table/index.js +39 -12
- package/lib/actions/base.d.ts +2 -1
- package/lib/actions/base.js +1 -1
- package/lib/actions/danger-pop-confirm.d.ts +5 -0
- package/lib/actions/danger-pop-confirm.js +22 -0
- package/lib/actions/dialog.d.ts +1 -1
- package/lib/actions/dialog.js +33 -31
- package/lib/actions/index.d.ts +3 -0
- package/lib/actions/index.js +12 -0
- package/lib/actions/pop-confirm.d.ts +9 -0
- package/lib/actions/pop-confirm.js +23 -0
- package/lib/form/Components/LightFilter/componentMap.d.ts +2 -1
- package/lib/form/Components/LightFilter/componentMap.js +4 -3
- package/lib/form/Components/LightFilter/index.d.ts +1 -0
- package/lib/form/Components/LightFilter/index.js +18 -12
- package/lib/form/Components/LightFilter/index.scss +13 -3
- package/lib/form/Filter/index2.js +157 -49
- package/lib/form/Filter/index2.scss +3 -0
- package/lib/form/ProForm/index.js +4 -2
- package/lib/form/typing.d.ts +5 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/table/components/ToolBar/FilterColumnIcon.js +1 -1
- package/lib/table/index.js +39 -12
- package/package.json +2 -2
@@ -17,6 +17,8 @@ var _icon = _interopRequireDefault(require("@teamix/icon"));
|
|
17
17
|
|
18
18
|
var _core = require("@formily/core");
|
19
19
|
|
20
|
+
var _reactive = require("@formily/reactive");
|
21
|
+
|
20
22
|
var _utils = require("@teamix/utils");
|
21
23
|
|
22
24
|
var _index = _interopRequireDefault(require("../../field/index"));
|
@@ -33,8 +35,8 @@ require("./index2.scss");
|
|
33
35
|
|
34
36
|
var _excluded = ["schema", "onChange", "onSubmit"],
|
35
37
|
_excluded2 = ["form", "schema", "onSubmit", "onChange"],
|
36
|
-
_excluded3 = ["schema", "onSubmit", "
|
37
|
-
_excluded4 = ["addonAfter", "addonBefore", "onFilter", "mode", "expand"];
|
38
|
+
_excluded3 = ["schema", "onSubmit", "onReset", "layout", "labelAlign", "wrapperAlign", "labelCol", "wrapperCol"],
|
39
|
+
_excluded4 = ["addonAfter", "addonBefore", "onFilter", "onInit", "onReset", "mode", "expand"];
|
38
40
|
|
39
41
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
40
42
|
|
@@ -42,6 +44,10 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
42
44
|
|
43
45
|
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; }
|
44
46
|
|
47
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
48
|
+
|
49
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
50
|
+
|
45
51
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
46
52
|
|
47
53
|
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."); }
|
@@ -124,9 +130,17 @@ var LightFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
124
130
|
var prefixCls = (0, _utils.usePrefixCls)('', {
|
125
131
|
prefix: 'teamix-pro-form-query-filter-light'
|
126
132
|
});
|
133
|
+
var onBtnClick = (0, _react.useCallback)(function () {
|
134
|
+
onChange && onChange((0, _reactive.toJS)(form.values));
|
135
|
+
}, [form]);
|
127
136
|
var LightSchema = (0, _react.useMemo)(function () {
|
128
137
|
return [{
|
129
138
|
component: 'LightFilter',
|
139
|
+
props: {
|
140
|
+
buttonProps: {
|
141
|
+
onClick: onBtnClick
|
142
|
+
}
|
143
|
+
},
|
130
144
|
children: schema
|
131
145
|
}, {
|
132
146
|
component: 'Submit',
|
@@ -136,19 +150,12 @@ var LightFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
136
150
|
}
|
137
151
|
}
|
138
152
|
}];
|
139
|
-
}, [schema]);
|
140
|
-
// form.addEffects('onChange', () => {
|
141
|
-
// onFieldValueChange('',(field:any) => {
|
142
|
-
// console.log(field.value);
|
143
|
-
// });
|
144
|
-
// });
|
145
|
-
// }, [form, onChange]);
|
146
|
-
|
153
|
+
}, [schema, onBtnClick]);
|
147
154
|
return /*#__PURE__*/_react.default.createElement(_ProForm.default, _objectSpread(_objectSpread({}, otherProps), {}, {
|
148
155
|
form: form,
|
149
156
|
className: (0, _classnames.default)(prefixCls, props.className),
|
150
157
|
schema: LightSchema,
|
151
|
-
feedbackLayout: "
|
158
|
+
feedbackLayout: "none",
|
152
159
|
breakpoints: [],
|
153
160
|
bordered: false,
|
154
161
|
onSubmit: onSubmit,
|
@@ -162,7 +169,6 @@ var LightFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
162
169
|
var AdvancedFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
163
170
|
var schema = props.schema,
|
164
171
|
onSubmit = props.onSubmit,
|
165
|
-
onChange = props.onChange,
|
166
172
|
onReset = props.onReset,
|
167
173
|
layout = props.layout,
|
168
174
|
labelAlign = props.labelAlign,
|
@@ -237,25 +243,79 @@ AdvancedFilter.defaultProps = {
|
|
237
243
|
labelCol: 6,
|
238
244
|
wrapperCol: 18
|
239
245
|
};
|
246
|
+
|
247
|
+
var getSpecialProps = function getSpecialProps(props) {
|
248
|
+
var initialValues = props.initialValues,
|
249
|
+
initialRequest = props.initialRequest;
|
250
|
+
var hasDefault = !!initialValues;
|
251
|
+
var hasAsyncDefault = !!initialRequest;
|
252
|
+
var hasRequired = false;
|
253
|
+
|
254
|
+
var hasDefaultOrRule = function hasDefaultOrRule(schema) {
|
255
|
+
schema.forEach(function (item) {
|
256
|
+
var value = item.default,
|
257
|
+
required = item.required,
|
258
|
+
rules = item.rules,
|
259
|
+
request = item.request,
|
260
|
+
dataSource = item.dataSource,
|
261
|
+
children = item.children;
|
262
|
+
hasDefault = hasDefault || (0, _utils.isSignificative)(value);
|
263
|
+
hasRequired = hasRequired || required || !!rules;
|
264
|
+
hasAsyncDefault = hasAsyncDefault || !!request || // 如果dataSource是异步且default取自dataSource
|
265
|
+
!!((0, _utils.isPlainObj)(dataSource) && (0, _utils.isStr)(value) && value.indexOf('.dataSource'));
|
266
|
+
|
267
|
+
if (children === null || children === void 0 ? void 0 : children.length) {
|
268
|
+
hasDefaultOrRule(children);
|
269
|
+
}
|
270
|
+
});
|
271
|
+
};
|
272
|
+
|
273
|
+
hasDefaultOrRule(props.schema);
|
274
|
+
return {
|
275
|
+
hasDefault: hasDefault,
|
276
|
+
hasAsyncDefault: hasAsyncDefault,
|
277
|
+
hasRequired: hasRequired
|
278
|
+
};
|
279
|
+
};
|
240
280
|
/**
|
241
281
|
* 查询筛选
|
242
282
|
*/
|
243
283
|
|
284
|
+
|
244
285
|
var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
245
286
|
var addonAfter = props.addonAfter,
|
246
287
|
addonBefore = props.addonBefore,
|
247
288
|
onFilter = props.onFilter,
|
289
|
+
onInit = props.onInit,
|
290
|
+
onReset = props.onReset,
|
248
291
|
mode = props.mode,
|
249
292
|
expand = props.expand,
|
250
293
|
otherProps = _objectWithoutProperties(props, _excluded4);
|
251
294
|
|
252
|
-
var
|
253
|
-
return
|
295
|
+
var simpleForm = (0, _react.useMemo)(function () {
|
296
|
+
return (0, _core.createForm)({
|
297
|
+
validateFirst: true
|
298
|
+
});
|
299
|
+
}, []);
|
300
|
+
var lightForm = (0, _react.useMemo)(function () {
|
301
|
+
return (0, _core.createForm)({
|
302
|
+
validateFirst: true
|
303
|
+
});
|
304
|
+
}, []);
|
305
|
+
var advancedForm = (0, _react.useMemo)(function () {
|
306
|
+
return (0, _core.createForm)({
|
254
307
|
validateFirst: true
|
255
308
|
});
|
256
309
|
}, []);
|
257
310
|
|
258
|
-
var
|
311
|
+
var _getSpecialProps = getSpecialProps(props),
|
312
|
+
hasDefault = _getSpecialProps.hasDefault,
|
313
|
+
hasAsyncDefault = _getSpecialProps.hasAsyncDefault,
|
314
|
+
hasRequired = _getSpecialProps.hasRequired;
|
315
|
+
|
316
|
+
var hasDefaultOrRequired = hasDefault || hasAsyncDefault || hasRequired;
|
317
|
+
|
318
|
+
var _useState = (0, _react.useState)(!!expand || hasDefaultOrRequired),
|
259
319
|
_useState2 = _slicedToArray(_useState, 2),
|
260
320
|
advancedFilterVisible = _useState2[0],
|
261
321
|
setAdvancedFilterVisible = _useState2[1];
|
@@ -267,7 +327,8 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
267
327
|
|
268
328
|
var prefixCls = (0, _utils.usePrefixCls)('', {
|
269
329
|
prefix: 'teamix-pro-form-query-filter'
|
270
|
-
});
|
330
|
+
});
|
331
|
+
var currentForm = mode === 'panel' ? advancedFilterVisible ? 'advanced' : 'light' : 'simple'; // 展开收起高级筛选
|
271
332
|
|
272
333
|
var toggleAdvancedFilter = (0, _react.useCallback)(function () {
|
273
334
|
setAdvancedFilterVisible(function (visible) {
|
@@ -293,31 +354,78 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
293
354
|
}).filter(function (item) {
|
294
355
|
return (0, _utils.isSignificative)(item.value);
|
295
356
|
});
|
296
|
-
}, []); //
|
297
|
-
|
298
|
-
var
|
299
|
-
setTagDataSource(getTagDataSource(
|
300
|
-
|
301
|
-
|
357
|
+
}, []); // 设置标签数据
|
358
|
+
|
359
|
+
var configTag = (0, _react.useCallback)(function () {
|
360
|
+
setTagDataSource(getTagDataSource(advancedForm));
|
361
|
+
}, []); // 简单搜索Filter
|
362
|
+
|
363
|
+
var onSimpleFilter = (0, _react.useCallback)(function (values) {
|
364
|
+
if (currentForm === 'simple') {
|
365
|
+
onFilter && onFilter(values);
|
366
|
+
}
|
367
|
+
}, [onFilter, currentForm]); // 轻量搜索Filter
|
368
|
+
|
369
|
+
var onLightFilter = (0, _react.useCallback)( /*#__PURE__*/function () {
|
370
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(values) {
|
371
|
+
return regeneratorRuntime.wrap(function _callee$(_context) {
|
372
|
+
while (1) {
|
373
|
+
switch (_context.prev = _context.next) {
|
374
|
+
case 0:
|
375
|
+
if (!(currentForm === 'light')) {
|
376
|
+
_context.next = 5;
|
377
|
+
break;
|
378
|
+
}
|
379
|
+
|
380
|
+
onFilter && onFilter(values);
|
381
|
+
_context.next = 4;
|
382
|
+
return advancedForm.reset();
|
383
|
+
|
384
|
+
case 4:
|
385
|
+
configTag();
|
386
|
+
|
387
|
+
case 5:
|
388
|
+
case "end":
|
389
|
+
return _context.stop();
|
390
|
+
}
|
391
|
+
}
|
392
|
+
}, _callee);
|
393
|
+
}));
|
302
394
|
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
}, [form]); // 简单表单onChange
|
395
|
+
return function (_x) {
|
396
|
+
return _ref3.apply(this, arguments);
|
397
|
+
};
|
398
|
+
}(), [onFilter, currentForm]); // 高级搜索Filter
|
308
399
|
|
309
|
-
var
|
310
|
-
|
311
|
-
|
312
|
-
|
400
|
+
var onAdvancedFilter = (0, _react.useCallback)(function (values) {
|
401
|
+
if (currentForm === 'advanced') {
|
402
|
+
onFilter && onFilter(values);
|
403
|
+
configTag();
|
404
|
+
lightForm.reset();
|
405
|
+
}
|
406
|
+
}, [onFilter, currentForm]); // 关闭标签清空表单字段值
|
313
407
|
|
314
408
|
var onTagClose = (0, _react.useCallback)(function (key) {
|
315
|
-
|
316
|
-
|
409
|
+
advancedForm.setValuesIn(key, undefined);
|
410
|
+
setTagDataSource(getTagDataSource(advancedForm));
|
411
|
+
}, []); // 判断表单是否有校验和默认值
|
317
412
|
|
318
413
|
(0, _react.useEffect)(function () {
|
319
|
-
|
320
|
-
}, []);
|
414
|
+
if (hasDefault || hasAsyncDefault || hasRequired) {}
|
415
|
+
}, [hasDefault, hasAsyncDefault, hasRequired]); // 设置默认值标签数据
|
416
|
+
|
417
|
+
(0, _react.useEffect)(function () {// onInit
|
418
|
+
// if (mode === 'panel') {
|
419
|
+
// if (expand) {
|
420
|
+
// onInit && onInit(toJS(advancedForm.values));
|
421
|
+
// } else {
|
422
|
+
// onInit && onInit(toJS(lightForm.values));
|
423
|
+
// }
|
424
|
+
// configTag();
|
425
|
+
// } else {
|
426
|
+
// onInit && onInit(toJS(simpleForm.values));
|
427
|
+
// }
|
428
|
+
}, [mode]);
|
321
429
|
return /*#__PURE__*/_react.default.createElement("div", {
|
322
430
|
className: (0, _classnames.default)(prefixCls, props.className)
|
323
431
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
@@ -327,11 +435,11 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
327
435
|
}, addonBefore ? /*#__PURE__*/_react.default.createElement("div", {
|
328
436
|
className: "".concat(prefixCls, "-addonBefore")
|
329
437
|
}, addonBefore) : null, mode === 'panel' ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
330
|
-
className: "".concat(prefixCls, "-inline-form")
|
438
|
+
className: (0, _classnames.default)("".concat(prefixCls, "-inline-form"), hasAsyncDefault ? "".concat(prefixCls, "-inline-form-hidden") : '')
|
331
439
|
}, /*#__PURE__*/_react.default.createElement(LightFilter, _objectSpread(_objectSpread({}, otherProps), {}, {
|
332
|
-
form:
|
333
|
-
|
334
|
-
onSubmit:
|
440
|
+
form: lightForm,
|
441
|
+
onChange: onLightFilter,
|
442
|
+
onSubmit: onLightFilter
|
335
443
|
}))), /*#__PURE__*/_react.default.createElement("div", {
|
336
444
|
className: "".concat(prefixCls, "-toggle")
|
337
445
|
}, /*#__PURE__*/_react.default.createElement(_components.Badge, {
|
@@ -351,20 +459,20 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
351
459
|
}), (0, _utils.getMessage)('advancedFilter'))))) : /*#__PURE__*/_react.default.createElement("div", {
|
352
460
|
className: "".concat(prefixCls, "-inline-form")
|
353
461
|
}, /*#__PURE__*/_react.default.createElement(SimpleFilter, _objectSpread(_objectSpread({}, otherProps), {}, {
|
354
|
-
form:
|
355
|
-
|
356
|
-
onSubmit:
|
462
|
+
form: simpleForm,
|
463
|
+
onChange: onSimpleFilter,
|
464
|
+
onSubmit: onSimpleFilter
|
357
465
|
})))), addonAfter ? /*#__PURE__*/_react.default.createElement("div", {
|
358
466
|
className: "".concat(prefixCls, "-addonAfter")
|
359
467
|
}, addonAfter) : null), mode === 'panel' ? /*#__PURE__*/_react.default.createElement("div", {
|
360
468
|
className: "".concat(prefixCls, "-panel")
|
361
469
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
362
470
|
className: (0, _classnames.default)("".concat(prefixCls, "-tag"), advancedFilterVisible ? "".concat(prefixCls, "-tag-hidden") : '')
|
363
|
-
}, /*#__PURE__*/_react.default.createElement(_components.Tag.Group, null, tagDataSource.map(function (
|
364
|
-
var key =
|
365
|
-
label =
|
366
|
-
value =
|
367
|
-
type =
|
471
|
+
}, /*#__PURE__*/_react.default.createElement(_components.Tag.Group, null, tagDataSource.map(function (_ref4) {
|
472
|
+
var key = _ref4.key,
|
473
|
+
label = _ref4.label,
|
474
|
+
value = _ref4.value,
|
475
|
+
type = _ref4.type;
|
368
476
|
return /*#__PURE__*/_react.default.createElement(_components.Tag.Closeable, {
|
369
477
|
key: key,
|
370
478
|
afterClose: function afterClose() {
|
@@ -381,8 +489,8 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
381
489
|
}))), /*#__PURE__*/_react.default.createElement("div", {
|
382
490
|
className: (0, _classnames.default)("".concat(prefixCls, "-advanced-wrap"), !advancedFilterVisible ? "".concat(prefixCls, "-advanced-wrap-hidden") : '')
|
383
491
|
}, /*#__PURE__*/_react.default.createElement(AdvancedFilter, _objectSpread(_objectSpread({}, otherProps), {}, {
|
384
|
-
form:
|
385
|
-
onSubmit:
|
492
|
+
form: advancedForm,
|
493
|
+
onSubmit: onAdvancedFilter
|
386
494
|
})))) : null);
|
387
495
|
});
|
388
496
|
exports.QueryFilter = QueryFilter;
|
@@ -29,6 +29,8 @@ var _useInitialRequest = _interopRequireDefault(require("./useInitialRequest"));
|
|
29
29
|
|
30
30
|
var _validate = _interopRequireDefault(require("../locales/validate"));
|
31
31
|
|
32
|
+
var _lodash = _interopRequireDefault(require("lodash.debounce"));
|
33
|
+
|
32
34
|
require("./index.scss");
|
33
35
|
|
34
36
|
var _excluded = ["form", "initialValues", "initialRequest", "schema", "scope", "context", "components", "children", "layout", "labelAlign", "wrapperAlign", "labelCol", "wrapperCol", "breakpoints", "onChange", "onSubmit", "onSubmitFailed", "className"];
|
@@ -107,11 +109,11 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
107
109
|
(0, _react.useEffect)(function () {
|
108
110
|
form.removeEffects('onChange');
|
109
111
|
form.addEffects('onChange', function () {
|
110
|
-
(0, _core.onFormValuesChange)(function (form) {
|
112
|
+
(0, _core.onFormValuesChange)((0, _lodash.default)(function (form) {
|
111
113
|
if (onChange) {
|
112
114
|
onChange((0, _reactive.toJS)(form.values));
|
113
115
|
}
|
114
|
-
});
|
116
|
+
}, 300));
|
115
117
|
});
|
116
118
|
}, [form, onChange]); // 配置表单默认值
|
117
119
|
|
package/lib/form/typing.d.ts
CHANGED
@@ -64,6 +64,10 @@ export interface ProFormProps extends IFormLayoutProps {
|
|
64
64
|
onSubmit?: ((values: any) => any) | CommonRequestConfig;
|
65
65
|
onSubmitFailed?: (feedbacks: IFormFeedback[]) => void;
|
66
66
|
}
|
67
|
+
export interface FilterProps extends ProFormProps {
|
68
|
+
form: FormType;
|
69
|
+
onReset?: (payload?: any) => void;
|
70
|
+
}
|
67
71
|
export interface QueryFilterProps extends ProFormProps {
|
68
72
|
/**
|
69
73
|
* @deprecated triggerType已弃用
|
@@ -73,6 +77,7 @@ export interface QueryFilterProps extends ProFormProps {
|
|
73
77
|
expand?: boolean;
|
74
78
|
addonBefore?: ReactNode;
|
75
79
|
addonAfter?: ReactNode;
|
80
|
+
onInit?: (values: any) => void;
|
76
81
|
onFilter?: (values: any) => void;
|
77
82
|
onReset?: (payload?: any) => void;
|
78
83
|
}
|
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.
|
24
|
+
declare const version = "1.2.18";
|
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.
|
256
|
+
var version = '1.2.18';
|
257
257
|
exports.version = version;
|
package/lib/table/index.js
CHANGED
@@ -103,10 +103,34 @@ var toJS = _form.formilyReactive.toJS;
|
|
103
103
|
* @returns
|
104
104
|
*/
|
105
105
|
|
106
|
-
var processColumns = function processColumns(columns) {
|
107
|
-
|
106
|
+
var processColumns = function processColumns(columns, initialColumns) {
|
107
|
+
var filterColumns = columns.filter(function (item) {
|
108
108
|
return item.columnFilters !== false;
|
109
|
-
});
|
109
|
+
}); // 处理只剩一列批量选择的情况下宽度错乱问题
|
110
|
+
|
111
|
+
if ((filterColumns === null || filterColumns === void 0 ? void 0 : filterColumns.length) && (filterColumns === null || filterColumns === void 0 ? void 0 : filterColumns.length) === 1) {
|
112
|
+
var _filterColumns$, _filterColumns$2;
|
113
|
+
|
114
|
+
if ((_filterColumns$ = filterColumns[0]) === null || _filterColumns$ === void 0 ? void 0 : _filterColumns$.width) {
|
115
|
+
delete filterColumns[0].width;
|
116
|
+
}
|
117
|
+
|
118
|
+
if ((_filterColumns$2 = filterColumns[0]) === null || _filterColumns$2 === void 0 ? void 0 : _filterColumns$2.lock) {
|
119
|
+
filterColumns[0].lock = false;
|
120
|
+
}
|
121
|
+
} else {
|
122
|
+
var _initialColumns$, _initialColumns$2;
|
123
|
+
|
124
|
+
if ((_initialColumns$ = initialColumns[0]) === null || _initialColumns$ === void 0 ? void 0 : _initialColumns$.width) {
|
125
|
+
filterColumns[0].width = initialColumns[0].width;
|
126
|
+
}
|
127
|
+
|
128
|
+
if ((_initialColumns$2 = initialColumns[0]) === null || _initialColumns$2 === void 0 ? void 0 : _initialColumns$2.lock) {
|
129
|
+
filterColumns[0].lock = initialColumns[0].lock;
|
130
|
+
}
|
131
|
+
}
|
132
|
+
|
133
|
+
return filterColumns;
|
110
134
|
};
|
111
135
|
/** 默认请求翻页参数 */
|
112
136
|
|
@@ -207,7 +231,7 @@ var ProTable = function ProTable(props) {
|
|
207
231
|
sort = _useState10[0],
|
208
232
|
setSort = _useState10[1];
|
209
233
|
|
210
|
-
var _useState11 = (0, _react.useState)(requestWhenMount && propsShowSkeleton),
|
234
|
+
var _useState11 = (0, _react.useState)(!propsDataSource && requestWhenMount && propsShowSkeleton),
|
211
235
|
_useState12 = _slicedToArray(_useState11, 2),
|
212
236
|
showSkeleton = _useState12[0],
|
213
237
|
setShowSkeleton = _useState12[1]; // 首次加载,渲染骨架屏
|
@@ -224,7 +248,7 @@ var ProTable = function ProTable(props) {
|
|
224
248
|
var tableRef = (0, _react.useRef)(null);
|
225
249
|
var actionRef = (0, _react.useRef)(); // 传给 table 的过滤后的 columns
|
226
250
|
|
227
|
-
var _useState15 = (0, _react.useState)(processColumns(propsColumns !== null && propsColumns !== void 0 ? propsColumns : [])),
|
251
|
+
var _useState15 = (0, _react.useState)(processColumns(propsColumns !== null && propsColumns !== void 0 ? propsColumns : [], propsColumns)),
|
228
252
|
_useState16 = _slicedToArray(_useState15, 2),
|
229
253
|
filteredColumns = _useState16[0],
|
230
254
|
setFilteredColumns = _useState16[1];
|
@@ -395,10 +419,16 @@ var ProTable = function ProTable(props) {
|
|
395
419
|
(0, _react.useEffect)(function () {
|
396
420
|
var _actionRef$current, _actionRef$current$se;
|
397
421
|
|
398
|
-
var columns = processColumns(propsColumns !== null && propsColumns !== void 0 ? propsColumns : []);
|
422
|
+
var columns = processColumns(propsColumns !== null && propsColumns !== void 0 ? propsColumns : [], propsColumns);
|
399
423
|
setFilteredColumns(columns);
|
400
424
|
(_actionRef$current = actionRef.current) === null || _actionRef$current === void 0 ? void 0 : (_actionRef$current$se = _actionRef$current.setState) === null || _actionRef$current$se === void 0 ? void 0 : _actionRef$current$se.call(_actionRef$current, 'filterColumns', columns);
|
401
|
-
}, [propsColumns]); //
|
425
|
+
}, [propsColumns]); // dataSource 受控
|
426
|
+
|
427
|
+
(0, _react.useEffect)(function () {
|
428
|
+
if (propsDataSource) {
|
429
|
+
setData(propsDataSource);
|
430
|
+
}
|
431
|
+
}, [propsDataSource]); // 绑定 Actions
|
402
432
|
|
403
433
|
(0, _utils2.useActionType)(actionRef, {
|
404
434
|
fullScreen: function fullScreen() {
|
@@ -413,7 +443,7 @@ var ProTable = function ProTable(props) {
|
|
413
443
|
setColumn: function setColumn(newColumns) {
|
414
444
|
var _actionRef$current2, _actionRef$current2$s;
|
415
445
|
|
416
|
-
var columns = processColumns(newColumns);
|
446
|
+
var columns = processColumns(newColumns, propsColumns);
|
417
447
|
setFilteredColumns(columns);
|
418
448
|
(_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, 'filterColumns', columns);
|
419
449
|
},
|
@@ -667,10 +697,7 @@ var ProTable = function ProTable(props) {
|
|
667
697
|
|
668
698
|
// 搜索变化时,暂时先清空选择
|
669
699
|
(_actionRef$current6 = actionRef.current) === null || _actionRef$current6 === void 0 ? void 0 : (_actionRef$current6$c = _actionRef$current6.clearRowSelection) === null || _actionRef$current6$c === void 0 ? void 0 : _actionRef$current6$c.call(_actionRef$current6);
|
670
|
-
setCurrentPage(1);
|
671
|
-
// TODO: 针对 inline 模式下的 search 组件做一下处理,如果空值切换下拉的时候不触发请求
|
672
|
-
// if (mode === 'inline') {
|
673
|
-
// }
|
700
|
+
setCurrentPage(1);
|
674
701
|
|
675
702
|
_request(_defineProperty({}, targetPageKey, 1));
|
676
703
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@teamix/pro",
|
3
|
-
"version": "1.2.
|
3
|
+
"version": "1.2.19",
|
4
4
|
"description": "TeamixPro大包",
|
5
5
|
"repository": "http://gitlab.alibaba-inc.com/teamix/pro",
|
6
6
|
"author": "Velociraptor(迅猛龙)",
|
@@ -26,7 +26,7 @@
|
|
26
26
|
"@formily/react": "2.0.5",
|
27
27
|
"@teamix/formily": "2.0.5-1",
|
28
28
|
"@teamix/hooks": "^0.1.0",
|
29
|
-
"@teamix/pop-confirm": "^1.2.
|
29
|
+
"@teamix/pop-confirm": "^1.2.4",
|
30
30
|
"@teamix/pro-field": "^1.0.0",
|
31
31
|
"@teamix/pro-page-container": "^1.0.0",
|
32
32
|
"@teamix/pro-skeleton": "^1.0.0",
|