@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.
- package/dist/212.js +129 -129
- package/dist/pro.css +1 -1
- package/dist/pro.js +18371 -16873
- package/dist/pro.min.css +1 -1
- package/dist/pro.min.js +1 -1
- package/dist/pro.min.js.LICENSE.txt +2 -0
- package/es/form/Filter/AdvancedFilter.js +1 -1
- package/es/form/Filter/Layout.d.ts +5 -0
- package/es/form/Filter/Layout.js +82 -0
- package/es/form/Filter/SimpleFilter.js +30 -6
- package/es/form/Filter/index2.d.ts +2 -1
- package/es/form/Filter/index2.js +97 -116
- package/es/form/Filter/index2.scss +16 -45
- package/es/form/Filter/layout.scss +36 -0
- package/es/form/Filter/useSpecialProps.d.ts +6 -0
- package/es/form/Filter/useSpecialProps.js +37 -0
- package/es/form/ProForm/customComponent.d.ts +3 -0
- package/es/form/ProForm/customComponent.js +20 -0
- package/es/form/ProForm/index.scss +5 -6
- package/es/form/ProForm/useFormDisplayValues.js +14 -24
- package/es/form/SchemaForm/adapterType.js +1 -0
- package/es/form/fieldTypeMap.js +2 -1
- package/es/form/index.d.ts +4 -2
- package/es/form/index.js +4 -2
- package/es/form/typing.d.ts +25 -1
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/info/index.scss +1 -1
- package/es/nocode/pages/renderer.js +1 -1
- package/es/table/components/Layout/index.js +63 -167
- package/es/table/components/Layout/index.scss +4 -3
- package/es/table/components/Pagination/index.js +1 -0
- package/es/table/components/ToolBar/FullScreenIcon.js +4 -9
- package/es/table/components/ToolBar/Fullscreen.js +21 -11
- package/es/table/index.js +64 -95
- package/es/table/typing.d.ts +12 -10
- package/es/table/utils/columnRender.js +21 -3
- package/lib/form/Filter/AdvancedFilter.js +1 -1
- package/lib/form/Filter/Layout.d.ts +5 -0
- package/lib/form/Filter/Layout.js +102 -0
- package/lib/form/Filter/SimpleFilter.js +29 -4
- package/lib/form/Filter/index2.d.ts +2 -1
- package/lib/form/Filter/index2.js +101 -114
- package/lib/form/Filter/index2.scss +16 -45
- package/lib/form/Filter/layout.scss +36 -0
- package/lib/form/Filter/useSpecialProps.d.ts +6 -0
- package/lib/form/Filter/useSpecialProps.js +46 -0
- package/lib/form/ProForm/customComponent.d.ts +3 -0
- package/lib/form/ProForm/customComponent.js +28 -0
- package/lib/form/ProForm/index.scss +5 -6
- package/lib/form/ProForm/useFormDisplayValues.js +17 -24
- package/lib/form/SchemaForm/adapterType.js +1 -0
- package/lib/form/fieldTypeMap.js +2 -1
- package/lib/form/index.d.ts +4 -2
- package/lib/form/index.js +19 -1
- package/lib/form/typing.d.ts +25 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/info/index.scss +1 -1
- package/lib/nocode/pages/renderer.js +1 -1
- package/lib/table/components/Layout/index.js +61 -167
- package/lib/table/components/Layout/index.scss +4 -3
- package/lib/table/components/Pagination/index.js +1 -0
- package/lib/table/components/ToolBar/FullScreenIcon.js +4 -9
- package/lib/table/components/ToolBar/Fullscreen.js +22 -11
- package/lib/table/index.js +61 -93
- package/lib/table/typing.d.ts +12 -10
- package/lib/table/utils/columnRender.js +21 -3
- package/package.json +4 -4
@@ -33,9 +33,12 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
33
33
|
|
34
34
|
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; }
|
35
35
|
|
36
|
+
// 初始化Search组件,内置部分属性
|
36
37
|
var initializeSearch = function initializeSearch(schema) {
|
37
|
-
|
38
|
+
var searchName;
|
39
|
+
var initializedSchema = schema.map(function (item) {
|
38
40
|
if (item.component === 'Search') {
|
41
|
+
searchName = item.name;
|
39
42
|
return _objectSpread(_objectSpread({}, item), {}, {
|
40
43
|
decoratorProps: _objectSpread(_objectSpread({}, item.decoratorProps), {}, {
|
41
44
|
inset: false
|
@@ -48,6 +51,10 @@ var initializeSearch = function initializeSearch(schema) {
|
|
48
51
|
|
49
52
|
return item;
|
50
53
|
});
|
54
|
+
return {
|
55
|
+
searchName: searchName,
|
56
|
+
initializedSchema: initializedSchema
|
57
|
+
};
|
51
58
|
};
|
52
59
|
/**
|
53
60
|
* 简单筛选
|
@@ -55,6 +62,8 @@ var initializeSearch = function initializeSearch(schema) {
|
|
55
62
|
|
56
63
|
|
57
64
|
var SimpleFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
65
|
+
var searchValue = (0, _react.useRef)(undefined);
|
66
|
+
|
58
67
|
var schema = props.schema,
|
59
68
|
onChange = props.onChange,
|
60
69
|
onSubmit = props.onSubmit,
|
@@ -63,13 +72,18 @@ var SimpleFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
63
72
|
var prefixCls = (0, _utils.usePrefixCls)('', {
|
64
73
|
prefix: 'teamix-pro-form-query-filter-simple'
|
65
74
|
});
|
75
|
+
|
76
|
+
var _initializeSearch = initializeSearch(schema),
|
77
|
+
searchName = _initializeSearch.searchName,
|
78
|
+
initializedSchema = _initializeSearch.initializedSchema;
|
79
|
+
|
66
80
|
var simpleSchema = (0, _react.useMemo)(function () {
|
67
81
|
return [{
|
68
82
|
component: 'FormFlex',
|
69
83
|
props: {
|
70
84
|
size: 8
|
71
85
|
},
|
72
|
-
children:
|
86
|
+
children: initializedSchema
|
73
87
|
}, {
|
74
88
|
component: 'Submit',
|
75
89
|
props: {
|
@@ -78,7 +92,18 @@ var SimpleFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
78
92
|
}
|
79
93
|
}
|
80
94
|
}];
|
81
|
-
}, [
|
95
|
+
}, [initializedSchema]);
|
96
|
+
var onInnerChange = (0, _react.useCallback)(function (values, value, name) {
|
97
|
+
// 处理Search组件,Select切换时不触发onChange
|
98
|
+
if (searchName === name) {
|
99
|
+
if (searchValue.current !== value[1]) {
|
100
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(values, name, value);
|
101
|
+
searchValue.current = value[1];
|
102
|
+
}
|
103
|
+
} else {
|
104
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(values, name, value);
|
105
|
+
}
|
106
|
+
}, [searchName, searchValue.current]);
|
82
107
|
return /*#__PURE__*/_react.default.createElement(_ProForm.default, _objectSpread(_objectSpread({}, otherProps), {}, {
|
83
108
|
className: (0, _classnames.default)(prefixCls, props.className),
|
84
109
|
schema: simpleSchema,
|
@@ -86,7 +111,7 @@ var SimpleFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
86
111
|
breakpoints: [],
|
87
112
|
inset: true,
|
88
113
|
onSubmit: onSubmit,
|
89
|
-
onChange:
|
114
|
+
onChange: onInnerChange
|
90
115
|
}));
|
91
116
|
});
|
92
117
|
var _default = SimpleFilter;
|
@@ -1,8 +1,9 @@
|
|
1
1
|
import React from 'react';
|
2
|
+
import { QueryFilterLayout } from './Layout';
|
2
3
|
import type { QueryFilterProps } from '../typing';
|
3
4
|
import './index2.scss';
|
4
5
|
/**
|
5
6
|
* 查询筛选
|
6
7
|
*/
|
7
8
|
declare const QueryFilter: React.FC<QueryFilterProps>;
|
8
|
-
export { QueryFilter };
|
9
|
+
export { QueryFilter, QueryFilterLayout };
|
@@ -6,14 +6,20 @@ Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
7
7
|
});
|
8
8
|
exports.QueryFilter = void 0;
|
9
|
+
Object.defineProperty(exports, "QueryFilterLayout", {
|
10
|
+
enumerable: true,
|
11
|
+
get: function get() {
|
12
|
+
return _Layout.QueryFilterLayout;
|
13
|
+
}
|
14
|
+
});
|
9
15
|
|
10
16
|
var _react = _interopRequireWildcard(require("react"));
|
11
17
|
|
12
18
|
var _classnames = _interopRequireDefault(require("classnames"));
|
13
19
|
|
14
|
-
var
|
20
|
+
var _lodash = _interopRequireDefault(require("lodash.debounce"));
|
15
21
|
|
16
|
-
var
|
22
|
+
var _components = require("@alicloudfe/components");
|
17
23
|
|
18
24
|
var _core = require("@formily/core");
|
19
25
|
|
@@ -33,11 +39,13 @@ var _LightFilter = _interopRequireDefault(require("./LightFilter"));
|
|
33
39
|
|
34
40
|
var _AdvancedFilter = _interopRequireDefault(require("./AdvancedFilter"));
|
35
41
|
|
36
|
-
var
|
42
|
+
var _Layout = require("./Layout");
|
43
|
+
|
44
|
+
var _useSpecialProps2 = _interopRequireDefault(require("./useSpecialProps"));
|
37
45
|
|
38
46
|
require("./index2.scss");
|
39
47
|
|
40
|
-
var _excluded = ["addonAfter", "addonBefore", "
|
48
|
+
var _excluded = ["addonAfter", "addonBefore", "mode", "expand", "formRef", "defaultFilterValue", "filterDebounce", "onFilter", "onInit", "onReset", "onExpand"];
|
41
49
|
|
42
50
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
43
51
|
|
@@ -51,6 +59,14 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
51
59
|
|
52
60
|
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; }
|
53
61
|
|
62
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
63
|
+
|
64
|
+
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."); }
|
65
|
+
|
66
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
67
|
+
|
68
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
69
|
+
|
54
70
|
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); } }
|
55
71
|
|
56
72
|
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); }); }; }
|
@@ -71,55 +87,21 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
71
87
|
|
72
88
|
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; }
|
73
89
|
|
74
|
-
// 获取Schema是否包含默认值、异步默认值、必选校验等
|
75
|
-
var getSpecialProps = function getSpecialProps(props) {
|
76
|
-
var initialValues = props.initialValues,
|
77
|
-
initialRequest = props.initialRequest;
|
78
|
-
var hasDefault = !!initialValues;
|
79
|
-
var hasAsyncDefault = !!initialRequest;
|
80
|
-
var hasRequired = false;
|
81
|
-
|
82
|
-
var hasDefaultOrRule = function hasDefaultOrRule(schema) {
|
83
|
-
schema.forEach(function (item) {
|
84
|
-
var value = item.default,
|
85
|
-
required = item.required,
|
86
|
-
rules = item.rules,
|
87
|
-
request = item.request,
|
88
|
-
dataSource = item.dataSource,
|
89
|
-
children = item.children;
|
90
|
-
hasDefault = hasDefault || (0, _utils.isSignificative)(value);
|
91
|
-
hasRequired = hasRequired || required || !!rules;
|
92
|
-
hasAsyncDefault = hasAsyncDefault || !!request || // 如果dataSource是异步且default取自dataSource
|
93
|
-
!!((0, _utils.isPlainObj)(dataSource) && (0, _utils.isStr)(value) && value.indexOf('.dataSource'));
|
94
|
-
|
95
|
-
if (children === null || children === void 0 ? void 0 : children.length) {
|
96
|
-
hasDefaultOrRule(children);
|
97
|
-
}
|
98
|
-
});
|
99
|
-
};
|
100
|
-
|
101
|
-
hasDefaultOrRule(props.schema);
|
102
|
-
return {
|
103
|
-
hasDefault: hasDefault,
|
104
|
-
hasAsyncDefault: hasAsyncDefault,
|
105
|
-
hasRequired: hasRequired
|
106
|
-
};
|
107
|
-
};
|
108
90
|
/**
|
109
91
|
* 查询筛选
|
110
92
|
*/
|
111
|
-
|
112
|
-
|
113
93
|
var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
114
94
|
var addonAfter = props.addonAfter,
|
115
95
|
addonBefore = props.addonBefore,
|
116
|
-
onFilter = props.onFilter,
|
117
|
-
onInit = props.onInit,
|
118
|
-
onReset = props.onReset,
|
119
96
|
mode = props.mode,
|
120
97
|
expand = props.expand,
|
121
98
|
formRef = props.formRef,
|
122
99
|
defaultFilterValue = props.defaultFilterValue,
|
100
|
+
filterDebounce = props.filterDebounce,
|
101
|
+
onFilter = props.onFilter,
|
102
|
+
onInit = props.onInit,
|
103
|
+
onReset = props.onReset,
|
104
|
+
onExpand = props.onExpand,
|
123
105
|
otherProps = _objectWithoutProperties(props, _excluded); // 表单默认值初始化回调
|
124
106
|
|
125
107
|
|
@@ -206,10 +188,10 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
206
188
|
advanced: advancedForm
|
207
189
|
};
|
208
190
|
|
209
|
-
var
|
210
|
-
hasDefault =
|
211
|
-
hasAsyncDefault =
|
212
|
-
hasRequired =
|
191
|
+
var _useSpecialProps = (0, _useSpecialProps2.default)(props),
|
192
|
+
hasDefault = _useSpecialProps.hasDefault,
|
193
|
+
hasAsyncDefault = _useSpecialProps.hasAsyncDefault,
|
194
|
+
hasRequired = _useSpecialProps.hasRequired;
|
213
195
|
|
214
196
|
var hasDefaultOrRequired = hasDefault || hasAsyncDefault || hasRequired;
|
215
197
|
|
@@ -235,22 +217,40 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
235
217
|
|
236
218
|
var getFilterDisplayValues = (0, _react.useCallback)(function (form) {
|
237
219
|
var displayValues = (0, _useFormDisplayValues.getFormDisplayValues)(form);
|
238
|
-
|
220
|
+
var originalData = Object.entries(displayValues);
|
221
|
+
var filterData = [];
|
222
|
+
originalData.forEach(function (_ref2) {
|
239
223
|
var _data$displayValue;
|
240
224
|
|
241
225
|
var _ref3 = _slicedToArray(_ref2, 2),
|
242
226
|
key = _ref3[0],
|
243
227
|
data = _ref3[1];
|
244
228
|
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
229
|
+
var value = (_data$displayValue = data.displayValue) !== null && _data$displayValue !== void 0 ? _data$displayValue : data.value;
|
230
|
+
var component = data.component;
|
231
|
+
|
232
|
+
if (component === 'SelectGroup') {
|
233
|
+
var _data$value;
|
234
|
+
|
235
|
+
(_data$value = data.value) === null || _data$value === void 0 ? void 0 : _data$value.forEach(function (item, index) {
|
236
|
+
filterData.push({
|
237
|
+
key: key,
|
238
|
+
type: _fieldTypeMap.default['MultipleSelect'],
|
239
|
+
label: item.key,
|
240
|
+
value: item.value,
|
241
|
+
index: index
|
242
|
+
});
|
243
|
+
});
|
244
|
+
} else if ((0, _utils.isSignificative)(value)) {
|
245
|
+
filterData.push({
|
246
|
+
key: key,
|
247
|
+
type: _fieldTypeMap.default[component] || 'text',
|
248
|
+
label: data.title,
|
249
|
+
value: value
|
250
|
+
});
|
251
|
+
}
|
253
252
|
});
|
253
|
+
return filterData;
|
254
254
|
}, []); // 设置标签数据
|
255
255
|
|
256
256
|
var configTag = (0, _react.useCallback)(function () {
|
@@ -271,6 +271,7 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
271
271
|
}
|
272
272
|
|
273
273
|
setAdvancedFilterVisible(result);
|
274
|
+
onExpand === null || onExpand === void 0 ? void 0 : onExpand(result);
|
274
275
|
}, [advancedFilterVisible, configTag, currentForm.current]); // 简单搜索Filter
|
275
276
|
|
276
277
|
var onSimpleFilter = (0, _react.useCallback)( /*#__PURE__*/function () {
|
@@ -355,8 +356,15 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
355
356
|
lightForm.reset();
|
356
357
|
}, [onReset]); // 关闭标签清空表单字段值
|
357
358
|
|
358
|
-
var onTagClose = (0, _react.useCallback)(function (key) {
|
359
|
-
|
359
|
+
var onTagClose = (0, _react.useCallback)(function (key, index) {
|
360
|
+
var newValue = undefined;
|
361
|
+
|
362
|
+
if ((0, _utils.isNum)(index)) {
|
363
|
+
newValue = _toConsumableArray(advancedForm.getValuesIn(key));
|
364
|
+
newValue.splice(index, 1);
|
365
|
+
}
|
366
|
+
|
367
|
+
advancedForm.setValuesIn(key, newValue);
|
360
368
|
configFilterItem(advancedForm);
|
361
369
|
configTag();
|
362
370
|
onFilter && onFilter((0, _reactive.toJS)(advancedForm.values));
|
@@ -371,57 +379,44 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
371
379
|
(0, _react.useEffect)(function () {
|
372
380
|
setCurrentForm(currentForm.current);
|
373
381
|
}, []);
|
374
|
-
return /*#__PURE__*/_react.default.createElement(
|
375
|
-
className: (0, _classnames.default)(prefixCls, props.className)
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
}, addonBefore ? /*#__PURE__*/_react.default.createElement("div", {
|
381
|
-
className: "".concat(prefixCls, "-addonBefore")
|
382
|
-
}, addonBefore) : null, mode === 'panel' ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
383
|
-
className: (0, _classnames.default)("".concat(prefixCls, "-inline-form"), hasDefaultOrRequired ? "".concat(prefixCls, "-inline-form-hidden") : '')
|
384
|
-
}, /*#__PURE__*/_react.default.createElement(_LightFilter.default, _objectSpread(_objectSpread({}, otherProps), {}, {
|
385
|
-
defaultFilterValue: defaultFilterValue,
|
386
|
-
form: lightForm,
|
387
|
-
onChange: (0, _lodash.default)(onLightFilter, 300)
|
388
|
-
}))), /*#__PURE__*/_react.default.createElement("div", {
|
389
|
-
className: "".concat(prefixCls, "-toggle")
|
390
|
-
}, /*#__PURE__*/_react.default.createElement(_components.Badge, {
|
382
|
+
return /*#__PURE__*/_react.default.createElement(_Layout.QueryFilterLayout, {
|
383
|
+
className: (0, _classnames.default)(prefixCls, props.className),
|
384
|
+
addonBefore: addonBefore,
|
385
|
+
addonAfter: addonAfter,
|
386
|
+
expand: advancedFilterVisible,
|
387
|
+
onExpand: toggleAdvancedFilter,
|
391
388
|
count: tagDataSource.length,
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
}, /*#__PURE__*/_react.default.createElement("div", {
|
415
|
-
className: (0, _classnames.default)("".concat(prefixCls, "-tag"), advancedFilterVisible ? "".concat(prefixCls, "-tag-hidden") : '')
|
416
|
-
}, /*#__PURE__*/_react.default.createElement(_components.Tag.Group, null, tagDataSource.map(function (_ref7) {
|
389
|
+
inlineContent: mode === 'panel' ? /*#__PURE__*/_react.default.createElement("div", {
|
390
|
+
className: (0, _classnames.default)("".concat(prefixCls, "-inline"), hasDefaultOrRequired ? "".concat(prefixCls, "-inline-hidden") : '')
|
391
|
+
}, /*#__PURE__*/_react.default.createElement(_LightFilter.default, _objectSpread(_objectSpread({}, otherProps), {}, {
|
392
|
+
defaultFilterValue: defaultFilterValue,
|
393
|
+
form: lightForm,
|
394
|
+
onChange: (0, _lodash.default)(onLightFilter, filterDebounce)
|
395
|
+
}))) : /*#__PURE__*/_react.default.createElement("div", {
|
396
|
+
className: "".concat(prefixCls, "-inline")
|
397
|
+
}, /*#__PURE__*/_react.default.createElement(_SimpleFilter.default, _objectSpread(_objectSpread({}, otherProps), {}, {
|
398
|
+
form: simpleForm,
|
399
|
+
onChange: (0, _lodash.default)(onSimpleFilter, filterDebounce),
|
400
|
+
onSubmit: onSimpleFilter
|
401
|
+
}))),
|
402
|
+
panelContent: mode === 'panel' ? /*#__PURE__*/_react.default.createElement(_AdvancedFilter.default, _objectSpread(_objectSpread({}, otherProps), {}, {
|
403
|
+
initialRequest: otherProps.initialRequest ? _objectSpread(_objectSpread({}, otherProps.initialRequest), {}, {
|
404
|
+
onComplete: onInitialRequestComplete
|
405
|
+
}) : undefined,
|
406
|
+
form: advancedForm,
|
407
|
+
onSubmit: onAdvancedFilter,
|
408
|
+
onReset: onAdvancedReset
|
409
|
+
})) : null
|
410
|
+
}, mode === 'panel' && !advancedFilterVisible ? /*#__PURE__*/_react.default.createElement(_components.Tag.Group, null, tagDataSource.map(function (_ref7) {
|
417
411
|
var key = _ref7.key,
|
418
412
|
label = _ref7.label,
|
419
413
|
value = _ref7.value,
|
420
|
-
type = _ref7.type
|
414
|
+
type = _ref7.type,
|
415
|
+
index = _ref7.index;
|
421
416
|
return /*#__PURE__*/_react.default.createElement(_components.Tag.Closeable, {
|
422
|
-
key: key,
|
417
|
+
key: (0, _utils.isNum)(index) ? key + label : key,
|
423
418
|
afterClose: function afterClose() {
|
424
|
-
return onTagClose(key);
|
419
|
+
return onTagClose(key, index);
|
425
420
|
}
|
426
421
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
427
422
|
className: "".concat(prefixCls, "-tag-title")
|
@@ -431,19 +426,11 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
431
426
|
type: type,
|
432
427
|
value: value
|
433
428
|
})));
|
434
|
-
}))
|
435
|
-
className: (0, _classnames.default)("".concat(prefixCls, "-advanced-wrap"), !advancedFilterVisible ? "".concat(prefixCls, "-advanced-wrap-hidden") : '')
|
436
|
-
}, /*#__PURE__*/_react.default.createElement(_AdvancedFilter.default, _objectSpread(_objectSpread({}, otherProps), {}, {
|
437
|
-
initialRequest: otherProps.initialRequest ? _objectSpread(_objectSpread({}, otherProps.initialRequest), {}, {
|
438
|
-
onComplete: onInitialRequestComplete
|
439
|
-
}) : undefined,
|
440
|
-
form: advancedForm,
|
441
|
-
onSubmit: onAdvancedFilter,
|
442
|
-
onReset: onAdvancedReset
|
443
|
-
})))) : null);
|
429
|
+
})) : null);
|
444
430
|
});
|
445
431
|
exports.QueryFilter = QueryFilter;
|
446
432
|
QueryFilter.defaultProps = {
|
447
433
|
mode: 'inline',
|
448
|
-
expand: false
|
434
|
+
expand: false,
|
435
|
+
filterDebounce: 300
|
449
436
|
};
|
@@ -4,31 +4,12 @@ $query-filter: #{$teamix-pro-form}-query-filter;
|
|
4
4
|
|
5
5
|
.#{$query-filter} {
|
6
6
|
.#{$query-filter}-inline {
|
7
|
-
display: flex;
|
8
|
-
justify-content: space-between;
|
9
|
-
}
|
10
|
-
.#{$query-filter}-left {
|
11
|
-
display: flex;
|
12
|
-
}
|
13
|
-
.#{$query-filter}-addonBefore {
|
14
|
-
flex: 0 1 auto;
|
15
|
-
margin-right: 8px;
|
16
|
-
}
|
17
|
-
.#{$query-filter}-inline-form {
|
18
|
-
flex: 0 0 auto;
|
19
7
|
margin-right: 8px;
|
20
8
|
margin-bottom: 8px;
|
21
9
|
}
|
22
|
-
.#{$query-filter}-inline-
|
10
|
+
.#{$query-filter}-inline-hidden {
|
23
11
|
display: none;
|
24
12
|
}
|
25
|
-
.#{$query-filter}-toggle {
|
26
|
-
margin-bottom: 8px;
|
27
|
-
}
|
28
|
-
.#{$query-filter}-addonAfter {
|
29
|
-
flex: 0 1 auto;
|
30
|
-
margin-left: 8px;
|
31
|
-
}
|
32
13
|
.#{$query-filter}-tag-title {
|
33
14
|
margin-right: 12px;
|
34
15
|
color: var(--color-text1-8, #848484);
|
@@ -42,34 +23,24 @@ $query-filter: #{$teamix-pro-form}-query-filter;
|
|
42
23
|
}
|
43
24
|
}
|
44
25
|
}
|
45
|
-
|
46
|
-
display: none;
|
47
|
-
}
|
48
|
-
.#{$query-filter}-advanced-wrap {
|
49
|
-
padding: 16px;
|
50
|
-
background-color: var(--color-fill1-2, #f7f7f7);
|
51
|
-
}
|
52
|
-
.#{$query-filter}-advanced-wrap-hidden {
|
53
|
-
display: none;
|
54
|
-
}
|
26
|
+
}
|
55
27
|
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
}
|
28
|
+
.#{$query-filter}-advanced {
|
29
|
+
.#{$css-prefix}formily-button-group {
|
30
|
+
margin-top: 0;
|
60
31
|
}
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
32
|
+
}
|
33
|
+
.#{$query-filter}-advanced,
|
34
|
+
.#{$query-filter}-simple,
|
35
|
+
.#{$query-filter}-light {
|
36
|
+
.#{$form-item-cls}-feedback-layout-popover {
|
37
|
+
margin-bottom: 0;
|
38
|
+
}
|
39
|
+
.#{$css-prefix}date-picker2-input {
|
40
|
+
.#{$css-prefix}input {
|
41
|
+
width: inherit;
|
42
|
+
input {
|
69
43
|
width: inherit;
|
70
|
-
input {
|
71
|
-
width: inherit;
|
72
|
-
}
|
73
44
|
}
|
74
45
|
}
|
75
46
|
}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
@import '../global.scss';
|
2
|
+
|
3
|
+
$query-filter-layout: #{$teamix-pro-form}-query-filter-layout;
|
4
|
+
|
5
|
+
.theme-hybridcloud-dark {
|
6
|
+
--panel-filter-bg: #1f1f1f;
|
7
|
+
}
|
8
|
+
|
9
|
+
.#{$query-filter-layout} {
|
10
|
+
.#{$query-filter-layout}-inline {
|
11
|
+
display: flex;
|
12
|
+
justify-content: space-between;
|
13
|
+
}
|
14
|
+
.#{$query-filter-layout}-left {
|
15
|
+
display: flex;
|
16
|
+
}
|
17
|
+
.#{$query-filter-layout}-addonBefore {
|
18
|
+
flex: 0 1 auto;
|
19
|
+
margin-right: 8px;
|
20
|
+
}
|
21
|
+
.#{$query-filter-layout}-toggle {
|
22
|
+
margin-bottom: 8px;
|
23
|
+
}
|
24
|
+
.#{$query-filter-layout}-addonAfter {
|
25
|
+
flex: 0 1 auto;
|
26
|
+
margin-left: 8px;
|
27
|
+
}
|
28
|
+
.#{$query-filter-layout}-panel {
|
29
|
+
margin-bottom: 8px;
|
30
|
+
padding: 16px;
|
31
|
+
background-color: var(--panel-filter-bg, var(--color-fill1-2));
|
32
|
+
}
|
33
|
+
.#{$query-filter-layout}-panel-hidden {
|
34
|
+
display: none;
|
35
|
+
}
|
36
|
+
}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _utils = require("@teamix/utils");
|
9
|
+
|
10
|
+
// 获取Schema是否包含默认值、异步默认值、必选校验等
|
11
|
+
var useSpecialProps = function useSpecialProps(props) {
|
12
|
+
var initialValues = props.initialValues,
|
13
|
+
initialRequest = props.initialRequest;
|
14
|
+
var hasDefault = !!initialValues;
|
15
|
+
var hasAsyncDefault = !!initialRequest;
|
16
|
+
var hasRequired = false;
|
17
|
+
|
18
|
+
var hasDefaultOrRule = function hasDefaultOrRule(schema) {
|
19
|
+
schema.forEach(function (item) {
|
20
|
+
var value = item.default,
|
21
|
+
required = item.required,
|
22
|
+
rules = item.rules,
|
23
|
+
request = item.request,
|
24
|
+
dataSource = item.dataSource,
|
25
|
+
children = item.children;
|
26
|
+
hasDefault = hasDefault || (0, _utils.isSignificative)(value);
|
27
|
+
hasRequired = hasRequired || required || !!rules;
|
28
|
+
hasAsyncDefault = hasAsyncDefault || !!request || // 如果dataSource是异步且default取自dataSource
|
29
|
+
!!((0, _utils.isPlainObj)(dataSource) && (0, _utils.isStr)(value) && value.indexOf('.dataSource'));
|
30
|
+
|
31
|
+
if (children === null || children === void 0 ? void 0 : children.length) {
|
32
|
+
hasDefaultOrRule(children);
|
33
|
+
}
|
34
|
+
});
|
35
|
+
};
|
36
|
+
|
37
|
+
hasDefaultOrRule(props.schema);
|
38
|
+
return {
|
39
|
+
hasDefault: hasDefault,
|
40
|
+
hasAsyncDefault: hasAsyncDefault,
|
41
|
+
hasRequired: hasRequired
|
42
|
+
};
|
43
|
+
};
|
44
|
+
|
45
|
+
var _default = useSpecialProps;
|
46
|
+
exports.default = _default;
|
@@ -0,0 +1,28 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.customComponent = void 0;
|
7
|
+
|
8
|
+
var _react = require("@formily/react");
|
9
|
+
|
10
|
+
var _reactive = require("@formily/reactive");
|
11
|
+
|
12
|
+
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; }
|
13
|
+
|
14
|
+
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; }
|
15
|
+
|
16
|
+
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; }
|
17
|
+
|
18
|
+
var customComponent = function customComponent(component) {
|
19
|
+
return (0, _react.connect)(component, (0, _react.mapProps)(function (props, field) {
|
20
|
+
return _objectSpread(_objectSpread({}, props), {}, {
|
21
|
+
field: field,
|
22
|
+
form: field.form,
|
23
|
+
values: (0, _reactive.toJS)(field.form.values)
|
24
|
+
});
|
25
|
+
}));
|
26
|
+
};
|
27
|
+
|
28
|
+
exports.customComponent = customComponent;
|
@@ -186,18 +186,17 @@
|
|
186
186
|
}
|
187
187
|
|
188
188
|
// 数组类组件添加按钮
|
189
|
-
.#{$form-array}-base-addition {
|
189
|
+
.#{$css-prefix}btn.#{$form-array}-base-addition {
|
190
|
+
border-style: dashed;
|
190
191
|
.#{$css-prefix}formily-icon {
|
191
192
|
margin-right: 4px;
|
192
193
|
}
|
193
194
|
}
|
194
195
|
// 数组类ArrayItem Icon 居中
|
195
196
|
.#{$form-array}-items-item-inner {
|
196
|
-
|
197
|
-
> .#{$css-prefix}
|
198
|
-
|
199
|
-
margin-top: 9px;
|
200
|
-
}
|
197
|
+
.#{$css-prefix}space-item {
|
198
|
+
> .#{$css-prefix}formily-icon {
|
199
|
+
margin-top: 9px;
|
201
200
|
}
|
202
201
|
}
|
203
202
|
}
|