@teamix/pro 1.4.1 → 1.4.4
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 +2529 -604
- package/dist/pro.min.css +1 -1
- package/dist/pro.min.js +1 -1
- package/es/actions/dialog-form.js +1 -1
- package/es/actions/dialog.js +2 -1
- package/es/card/index.d.ts +2 -0
- package/es/card/index.js +4 -3
- package/es/form/ProForm/index.js +9 -9
- package/es/form/ProForm/index.scss +42 -19
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/table/components/Layout/index.js +6 -3
- package/es/table/index.js +3 -1
- package/es/table/index.scss +2 -9
- package/es/table/typing.d.ts +2 -0
- package/lib/actions/dialog-form.js +1 -1
- package/lib/actions/dialog.js +2 -1
- package/lib/card/index.d.ts +2 -0
- package/lib/card/index.js +4 -3
- package/lib/form/ProForm/index.js +8 -8
- package/lib/form/ProForm/index.scss +42 -19
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/table/components/Layout/index.js +6 -3
- package/lib/table/index.js +3 -1
- package/lib/table/index.scss +2 -9
- package/lib/table/typing.d.ts +2 -0
- package/package.json +1 -1
@@ -133,7 +133,7 @@ var DialogForm = function DialogForm(props) {
|
|
133
133
|
}
|
134
134
|
}, /*#__PURE__*/React.createElement(ProForm, _objectSpread(_objectSpread({
|
135
135
|
form: form,
|
136
|
-
schema:
|
136
|
+
schema: formSchema
|
137
137
|
}, getDefaultFormPropsByDialogSize(size)), addContext(getTargetValue(others, context), context))));
|
138
138
|
};
|
139
139
|
|
package/es/actions/dialog.js
CHANGED
package/es/card/index.d.ts
CHANGED
package/es/card/index.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
var _excluded = ["context"],
|
2
|
-
_excluded2 = ["children", "title", "subTitle", "tooltip", "tooltipIcon", "tags", "description", "extra", "actions", "message", "style", "className", "image", "hoveredShadow", "divider", "bordered", "compacted", "centered", "loading", "empty", "borderColor", "backgroundColor", "contentClassName", "contentStyle", "direction", "wrap", "spacing", "split", "collapsible", "defaultCollapsed", "collapsed", "onCollapse", "context"];
|
2
|
+
_excluded2 = ["children", "title", "subTitle", "tooltip", "tooltipIcon", "tags", "description", "extra", "actions", "message", "style", "className", "image", "hoveredShadow", "divider", "bordered", "compacted", "centered", "loading", "contentLoading", "empty", "borderColor", "backgroundColor", "contentClassName", "contentStyle", "direction", "wrap", "spacing", "split", "collapsible", "defaultCollapsed", "collapsed", "onCollapse", "context"];
|
3
3
|
|
4
4
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
5
5
|
|
@@ -93,6 +93,7 @@ export var ProCard = function ProCard(props) {
|
|
93
93
|
compacted = props.compacted,
|
94
94
|
centered = props.centered,
|
95
95
|
loading = props.loading,
|
96
|
+
contentLoading = props.contentLoading,
|
96
97
|
empty = props.empty,
|
97
98
|
borderColor = props.borderColor,
|
98
99
|
backgroundColor = props.backgroundColor,
|
@@ -240,7 +241,7 @@ export var ProCard = function ProCard(props) {
|
|
240
241
|
component: "img",
|
241
242
|
src: image
|
242
243
|
}), (title || extra) && /*#__PURE__*/React.createElement(BasicCard.Header, {
|
243
|
-
title: loading ? /*#__PURE__*/React.createElement(ProSkeletonRaw.Card.Title, null) : renderTitle(),
|
244
|
+
title: loading && !contentLoading ? /*#__PURE__*/React.createElement(ProSkeletonRaw.Card.Title, null) : renderTitle(),
|
244
245
|
subTitle: !loading && subTitle,
|
245
246
|
extra: !loading && renderActionGroup(extra, context)
|
246
247
|
}), hasDivider && /*#__PURE__*/React.createElement(BasicCard.Divider, null), showContent && /*#__PURE__*/React.createElement(BasicCard.Content, {
|
@@ -248,7 +249,7 @@ export var ProCard = function ProCard(props) {
|
|
248
249
|
padding: 0,
|
249
250
|
margin: 0
|
250
251
|
} : {}
|
251
|
-
}, loading && /*#__PURE__*/React.createElement(ProSkeletonRaw.Card.Content, null), !loading && /*#__PURE__*/React.createElement("div", {
|
252
|
+
}, (loading || contentLoading) && /*#__PURE__*/React.createElement(ProSkeletonRaw.Card.Content, null), !loading && /*#__PURE__*/React.createElement("div", {
|
252
253
|
className: cardContentClassName,
|
253
254
|
style: cardContentStyle
|
254
255
|
}, empty && /*#__PURE__*/React.createElement("div", {
|
package/es/form/ProForm/index.js
CHANGED
@@ -10,7 +10,7 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
10
10
|
|
11
11
|
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; }
|
12
12
|
|
13
|
-
import React, { memo, useMemo } from 'react';
|
13
|
+
import React, { memo, useEffect, useMemo } from 'react';
|
14
14
|
import { usePrefixCls, cls, getLanguage, getGlobalConfig } from '@teamix/utils';
|
15
15
|
import { createForm, onFieldValueChange, onFormValuesChange, registerValidateLocale, setValidateLanguage } from '@formily/core';
|
16
16
|
import { toJS } from '@formily/reactive';
|
@@ -90,12 +90,11 @@ var ProForm = /*#__PURE__*/memo(function (_ref) {
|
|
90
90
|
validateFirst: validateFirst
|
91
91
|
});
|
92
92
|
}, []);
|
93
|
-
var prefixCls = usePrefixCls('teamix-pro-form');
|
93
|
+
var prefixCls = usePrefixCls('teamix-pro-form'); // 由于Actions需要,解构context供使用。原context键名的上下文继续保留。
|
94
94
|
|
95
|
-
var mergedScope = _objectSpread(_objectSpread(_objectSpread({}, globalScope), scope), {}, {
|
95
|
+
var mergedScope = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, context), globalScope), scope), {}, {
|
96
96
|
context: context
|
97
|
-
});
|
98
|
-
|
97
|
+
});
|
99
98
|
|
100
99
|
var mergedComponents = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, globalComponents), components), formilyComponents), ProFieldComponents);
|
101
100
|
|
@@ -128,10 +127,7 @@ var ProForm = /*#__PURE__*/memo(function (_ref) {
|
|
128
127
|
}).finally(function () {
|
129
128
|
onInitialComplete === null || onInitialComplete === void 0 ? void 0 : onInitialComplete(form);
|
130
129
|
});
|
131
|
-
}
|
132
|
-
|
133
|
-
|
134
|
-
setValidateLanguage(getLanguage() || 'zh-cn');
|
130
|
+
}
|
135
131
|
}, []); // 添加 onChange 事件
|
136
132
|
|
137
133
|
useMemo(function () {
|
@@ -155,6 +151,10 @@ var ProForm = /*#__PURE__*/memo(function (_ref) {
|
|
155
151
|
});
|
156
152
|
}
|
157
153
|
}, [onChange]);
|
154
|
+
useEffect(function () {
|
155
|
+
// 配置国际化
|
156
|
+
setValidateLanguage(getLanguage() || 'zh-cn');
|
157
|
+
}, []);
|
158
158
|
return /*#__PURE__*/React.createElement(Form, _objectSpread(_objectSpread(_objectSpread({
|
159
159
|
className: cls(prefixCls(), className)
|
160
160
|
}, otherProps), getTeamixLayout), {}, {
|
@@ -36,8 +36,7 @@
|
|
36
36
|
.#{$teamix-pro-field}-radio,
|
37
37
|
.#{$teamix-pro-field}-switch,
|
38
38
|
.#{$teamix-pro-field}-colorradio,
|
39
|
-
.#{$teamix-pro-field}-range
|
40
|
-
.#{$css-prefix}btn-text {
|
39
|
+
.#{$teamix-pro-field}-range {
|
41
40
|
line-height: var(--form-element-medium-height, 32px);
|
42
41
|
}
|
43
42
|
> .#{$css-prefix}btn-text {
|
@@ -109,6 +108,21 @@
|
|
109
108
|
}
|
110
109
|
}
|
111
110
|
|
111
|
+
// 尺寸 - small
|
112
|
+
.#{$form-item-cls}-size-small {
|
113
|
+
// 预览态行高
|
114
|
+
.#{$css-prefix}form-preview {
|
115
|
+
line-height: var(--form-element-small-height, 24px);
|
116
|
+
}
|
117
|
+
}
|
118
|
+
// 尺寸 - large
|
119
|
+
.#{$form-item-cls}-size-large {
|
120
|
+
// 预览态行高
|
121
|
+
.#{$css-prefix}form-preview {
|
122
|
+
line-height: var(--form-element-large-height, 36px);
|
123
|
+
}
|
124
|
+
}
|
125
|
+
|
112
126
|
// Icon
|
113
127
|
.#{$css-prefix}formily-icon {
|
114
128
|
transform: translate(0, -1px);
|
@@ -190,23 +204,6 @@
|
|
190
204
|
}
|
191
205
|
}
|
192
206
|
|
193
|
-
// 数组类组件添加按钮
|
194
|
-
.#{$css-prefix}btn.#{$form-array}-base-addition {
|
195
|
-
border-style: dashed;
|
196
|
-
.#{$css-prefix}formily-icon {
|
197
|
-
margin-right: 4px;
|
198
|
-
}
|
199
|
-
}
|
200
|
-
// 数组类ArrayItem Icon text 居中
|
201
|
-
.#{$form-array}-items-item-inner {
|
202
|
-
.#{$css-prefix}space-item {
|
203
|
-
> .#{$css-prefix}formily-icon.#{$css-prefix}btn-text {
|
204
|
-
line-height: inherit !important;
|
205
|
-
margin-right: 0;
|
206
|
-
}
|
207
|
-
}
|
208
|
-
}
|
209
|
-
|
210
207
|
// Editable预览态行高
|
211
208
|
.#{$css-prefix}formily-editable-content {
|
212
209
|
line-height: var(--form-element-medium-height, 32px);
|
@@ -296,6 +293,20 @@
|
|
296
293
|
.form-array-base-icon {
|
297
294
|
cursor: pointer;
|
298
295
|
}
|
296
|
+
// 数组类组件添加按钮
|
297
|
+
.#{$css-prefix}btn.#{$form-array}-base-addition {
|
298
|
+
border-style: dashed;
|
299
|
+
.#{$css-prefix}formily-icon {
|
300
|
+
margin-right: 4px;
|
301
|
+
}
|
302
|
+
}
|
303
|
+
.#{$form-array}-items {
|
304
|
+
.#{$form-item-cls}-control-content-component {
|
305
|
+
> .#{$css-prefix}btn-text.#{$form-array}-base-addition {
|
306
|
+
line-height: var(--form-element-medium-height, 32px);
|
307
|
+
}
|
308
|
+
}
|
309
|
+
}
|
299
310
|
|
300
311
|
// ArrayCard
|
301
312
|
.#{$form-array}-cards-item {
|
@@ -324,6 +335,18 @@
|
|
324
335
|
align-items: center;
|
325
336
|
}
|
326
337
|
|
338
|
+
// todo 此处做覆盖,formily改为变量后可移除
|
339
|
+
.#{$form-array}-items-card {
|
340
|
+
border-color: var(--card-border-color, #eaeaea);
|
341
|
+
background: var(--card-background, #ffffff);
|
342
|
+
.#{$css-prefix}formily-item:not(.#{$css-prefix}formily-item-feedback-layout-popover) {
|
343
|
+
.#{$css-prefix}formily-item-help {
|
344
|
+
background: var(--card-background, #ffffff);
|
345
|
+
box-shadow: 0 0 10px var(--card-border-color, #eaeaea);
|
346
|
+
}
|
347
|
+
}
|
348
|
+
}
|
349
|
+
|
327
350
|
/* hack todo remove */
|
328
351
|
.#{$form-item-cls}-control-content-component {
|
329
352
|
.#{$teamix-pro-field}-tooltip.#{$teamix-pro-field}-checkbox {
|
package/es/index.d.ts
CHANGED
@@ -27,5 +27,5 @@ export * from './table';
|
|
27
27
|
export * from './sidebar';
|
28
28
|
export * from './utils';
|
29
29
|
export * from './timeline';
|
30
|
-
declare const version = "1.4.
|
30
|
+
declare const version = "1.4.4";
|
31
31
|
export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, hooks, nocode, templates, utils, };
|
package/es/index.js
CHANGED
@@ -31,6 +31,6 @@ export * from './table';
|
|
31
31
|
export * from './sidebar';
|
32
32
|
export * from './utils';
|
33
33
|
export * from './timeline';
|
34
|
-
var version = '1.4.
|
34
|
+
var version = '1.4.4';
|
35
35
|
export { version, ProAction, ProCard, ProField, ProForm, ProInfo, // ProLayout,
|
36
36
|
ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, hooks, nocode, templates, utils };
|
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["header", "mainAction", "extra", "actionRef", "dataFilter", "dataFilterFormRef", "rowSelection"];
|
1
|
+
var _excluded = ["header", "mainAction", "extra", "actionRef", "dataFilter", "dataFilterFormRef", "afterDataFilter", "rowSelection"];
|
2
2
|
|
3
3
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
4
4
|
|
@@ -29,6 +29,7 @@ var Layout = function Layout(props) {
|
|
29
29
|
actionRef = props.actionRef,
|
30
30
|
dataFilter = props.dataFilter,
|
31
31
|
dataFilterFormRef = props.dataFilterFormRef,
|
32
|
+
afterDataFilter = props.afterDataFilter,
|
32
33
|
rowSelection = props.rowSelection,
|
33
34
|
otherProps = _objectWithoutProperties(props, _excluded); // 渲染主操作区
|
34
35
|
|
@@ -100,7 +101,7 @@ var Layout = function Layout(props) {
|
|
100
101
|
addonAfter: renderAddonAfter()
|
101
102
|
}, dataFilter));
|
102
103
|
} else if ((dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema2 = dataFilter.schema) === null || _dataFilter$schema2 === void 0 ? void 0 : _dataFilter$schema2.length) >= 0) {
|
103
|
-
return /*#__PURE__*/React.createElement(QueryFilter, _objectSpread({
|
104
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(QueryFilter, _objectSpread({
|
104
105
|
formRef: dataFilterFormRef,
|
105
106
|
onExpand: function onExpand(expand) {
|
106
107
|
// 全屏模式下展开收起过滤器需要重新计算tableMaxHeight
|
@@ -117,7 +118,9 @@ var Layout = function Layout(props) {
|
|
117
118
|
},
|
118
119
|
addonBefore: renderMainAction(),
|
119
120
|
addonAfter: renderAddonAfter()
|
120
|
-
}, dataFilter))
|
121
|
+
}, dataFilter)), afterDataFilter && /*#__PURE__*/React.createElement("div", {
|
122
|
+
className: "mb8 ".concat(cls('after-data-filter-wrapper'))
|
123
|
+
}, afterDataFilter));
|
121
124
|
}
|
122
125
|
} else if (mainAction) {
|
123
126
|
// 没传 dataFilter 但是传了 mainAction
|
package/es/table/index.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["header", "className", "tableClassName", "mainAction", "extra", "dataFilter", "toolBar", "columns", "useRowSelection", "rowSelection", "onChangeRowSelection", "getRowSelection", "primaryKey", "footerAction", "footer", "url", "pageKey", "pageSizeKey", "method", "params", "formatSort", "formatParams", "formatResult", "requestWhenMount", "showPagination", "pageSizeList", "responsivePaginationType", "showSkeleton", "skeletonSize", "actionRef", "dataSource", "filterDebounce", "footerSuction", "autoRefresh", "customRequest", "filterColumnType", "defaultFilterParams", "reserveSelectedRecords", "size", "disableSelectAll", "context"];
|
1
|
+
var _excluded = ["header", "className", "tableClassName", "mainAction", "extra", "dataFilter", "afterDataFilter", "toolBar", "columns", "useRowSelection", "rowSelection", "onChangeRowSelection", "getRowSelection", "primaryKey", "footerAction", "footer", "url", "pageKey", "pageSizeKey", "method", "params", "formatSort", "formatParams", "formatResult", "requestWhenMount", "showPagination", "pageSizeList", "responsivePaginationType", "showSkeleton", "skeletonSize", "actionRef", "dataSource", "filterDebounce", "footerSuction", "autoRefresh", "customRequest", "filterColumnType", "defaultFilterParams", "reserveSelectedRecords", "size", "disableSelectAll", "context"];
|
2
2
|
|
3
3
|
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); }
|
4
4
|
|
@@ -118,6 +118,7 @@ var ProTable = function ProTable(props) {
|
|
118
118
|
mainAction = props.mainAction,
|
119
119
|
extra = props.extra,
|
120
120
|
propsDataFilter = props.dataFilter,
|
121
|
+
afterDataFilter = props.afterDataFilter,
|
121
122
|
toolBar = props.toolBar,
|
122
123
|
propsColumns = props.columns,
|
123
124
|
useRowSelection = props.useRowSelection,
|
@@ -806,6 +807,7 @@ var ProTable = function ProTable(props) {
|
|
806
807
|
actionRef: actionRef,
|
807
808
|
columns: propsColumns,
|
808
809
|
dataFilter: dataFilter,
|
810
|
+
afterDataFilter: afterDataFilter,
|
809
811
|
dataFilterFormRef: isFullScreen ? fullscreenDataFilterFormRef : normalDataFilterFormRef,
|
810
812
|
rowSelection: rowSelection,
|
811
813
|
filterColumnType: filterColumnType
|
package/es/table/index.scss
CHANGED
@@ -1,16 +1,9 @@
|
|
1
1
|
$prefix: 'teamix-pro-table';
|
2
2
|
$fullscreenPadding: 24px;
|
3
3
|
|
4
|
-
.next-overlay-wrapper {
|
5
|
-
--checkbox-select-icon-content: '\ead7';
|
6
|
-
--checkbox-semi-select-icon-content: '\ead5';
|
7
|
-
}
|
8
|
-
|
9
4
|
.#{$prefix} {
|
10
5
|
background: var(--table-row-bg, #ffffff);
|
11
6
|
position: relative;
|
12
|
-
--checkbox-select-icon-content: '\ead7';
|
13
|
-
--checkbox-semi-select-icon-content: '\ead5';
|
14
7
|
&-footer {
|
15
8
|
padding: 8px 0;
|
16
9
|
width: 100%;
|
@@ -121,7 +114,7 @@ $fullscreenPadding: 24px;
|
|
121
114
|
}
|
122
115
|
|
123
116
|
.next-table {
|
124
|
-
.next-form-preview
|
117
|
+
.next-form-preview {
|
125
118
|
line-height: unset;
|
126
119
|
}
|
127
120
|
&-row {
|
@@ -141,4 +134,4 @@ $fullscreenPadding: 24px;
|
|
141
134
|
a:hover {
|
142
135
|
color: var(--color-brand1-5);
|
143
136
|
}
|
144
|
-
}
|
137
|
+
}
|
package/es/table/typing.d.ts
CHANGED
@@ -256,6 +256,8 @@ export declare type ProTableTopAreaProps = {
|
|
256
256
|
extra?: ProActionButtonProps | React.ReactNode | React.ReactNode[];
|
257
257
|
/** 数据过滤区 */
|
258
258
|
dataFilter?: ProTableDataFilterProps;
|
259
|
+
/** 数据过滤区下方自定义区域 */
|
260
|
+
afterDataFilter?: React.ReactNode;
|
259
261
|
/** 传给 QueryFilter 的 formRef */
|
260
262
|
dataFilterFormRef?: any;
|
261
263
|
/** 排序、筛选列展示状态 */
|
@@ -154,7 +154,7 @@ var DialogForm = function DialogForm(props) {
|
|
154
154
|
}
|
155
155
|
}, /*#__PURE__*/_react.default.createElement(_form.default, _objectSpread(_objectSpread({
|
156
156
|
form: form,
|
157
|
-
schema:
|
157
|
+
schema: formSchema
|
158
158
|
}, getDefaultFormPropsByDialogSize(size)), (0, _utils2.addContext)((0, _utils.getTargetValue)(others, context), context))));
|
159
159
|
};
|
160
160
|
|
package/lib/actions/dialog.js
CHANGED
package/lib/card/index.d.ts
CHANGED
package/lib/card/index.js
CHANGED
@@ -54,7 +54,7 @@ Object.keys(_cardContainer).forEach(function (key) {
|
|
54
54
|
});
|
55
55
|
});
|
56
56
|
var _excluded = ["context"],
|
57
|
-
_excluded2 = ["children", "title", "subTitle", "tooltip", "tooltipIcon", "tags", "description", "extra", "actions", "message", "style", "className", "image", "hoveredShadow", "divider", "bordered", "compacted", "centered", "loading", "empty", "borderColor", "backgroundColor", "contentClassName", "contentStyle", "direction", "wrap", "spacing", "split", "collapsible", "defaultCollapsed", "collapsed", "onCollapse", "context"];
|
57
|
+
_excluded2 = ["children", "title", "subTitle", "tooltip", "tooltipIcon", "tags", "description", "extra", "actions", "message", "style", "className", "image", "hoveredShadow", "divider", "bordered", "compacted", "centered", "loading", "contentLoading", "empty", "borderColor", "backgroundColor", "contentClassName", "contentStyle", "direction", "wrap", "spacing", "split", "collapsible", "defaultCollapsed", "collapsed", "onCollapse", "context"];
|
58
58
|
|
59
59
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
60
60
|
|
@@ -133,6 +133,7 @@ var ProCard = function ProCard(props) {
|
|
133
133
|
compacted = props.compacted,
|
134
134
|
centered = props.centered,
|
135
135
|
loading = props.loading,
|
136
|
+
contentLoading = props.contentLoading,
|
136
137
|
empty = props.empty,
|
137
138
|
borderColor = props.borderColor,
|
138
139
|
backgroundColor = props.backgroundColor,
|
@@ -281,7 +282,7 @@ var ProCard = function ProCard(props) {
|
|
281
282
|
component: "img",
|
282
283
|
src: image
|
283
284
|
}), (title || extra) && /*#__PURE__*/_react.default.createElement(_components.Card.Header, {
|
284
|
-
title: loading ? /*#__PURE__*/_react.default.createElement(_skeleton.ProSkeletonRaw.Card.Title, null) : renderTitle(),
|
285
|
+
title: loading && !contentLoading ? /*#__PURE__*/_react.default.createElement(_skeleton.ProSkeletonRaw.Card.Title, null) : renderTitle(),
|
285
286
|
subTitle: !loading && subTitle,
|
286
287
|
extra: !loading && renderActionGroup(extra, context)
|
287
288
|
}), hasDivider && /*#__PURE__*/_react.default.createElement(_components.Card.Divider, null), showContent && /*#__PURE__*/_react.default.createElement(_components.Card.Content, {
|
@@ -289,7 +290,7 @@ var ProCard = function ProCard(props) {
|
|
289
290
|
padding: 0,
|
290
291
|
margin: 0
|
291
292
|
} : {}
|
292
|
-
}, loading && /*#__PURE__*/_react.default.createElement(_skeleton.ProSkeletonRaw.Card.Content, null), !loading && /*#__PURE__*/_react.default.createElement("div", {
|
293
|
+
}, (loading || contentLoading) && /*#__PURE__*/_react.default.createElement(_skeleton.ProSkeletonRaw.Card.Content, null), !loading && /*#__PURE__*/_react.default.createElement("div", {
|
293
294
|
className: cardContentClassName,
|
294
295
|
style: cardContentStyle
|
295
296
|
}, empty && /*#__PURE__*/_react.default.createElement("div", {
|
@@ -122,12 +122,11 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
122
122
|
validateFirst: validateFirst
|
123
123
|
});
|
124
124
|
}, []);
|
125
|
-
var prefixCls = (0, _utils.usePrefixCls)('teamix-pro-form');
|
125
|
+
var prefixCls = (0, _utils.usePrefixCls)('teamix-pro-form'); // 由于Actions需要,解构context供使用。原context键名的上下文继续保留。
|
126
126
|
|
127
|
-
var mergedScope = _objectSpread(_objectSpread(_objectSpread({}, globalScope), scope), {}, {
|
127
|
+
var mergedScope = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, context), globalScope), scope), {}, {
|
128
128
|
context: context
|
129
|
-
});
|
130
|
-
|
129
|
+
});
|
131
130
|
|
132
131
|
var mergedComponents = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, globalComponents), components), formilyComponents), _ProField.default);
|
133
132
|
|
@@ -160,10 +159,7 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
160
159
|
}).finally(function () {
|
161
160
|
onInitialComplete === null || onInitialComplete === void 0 ? void 0 : onInitialComplete(form);
|
162
161
|
});
|
163
|
-
}
|
164
|
-
|
165
|
-
|
166
|
-
(0, _core.setValidateLanguage)((0, _utils.getLanguage)() || 'zh-cn');
|
162
|
+
}
|
167
163
|
}, []); // 添加 onChange 事件
|
168
164
|
|
169
165
|
(0, _react.useMemo)(function () {
|
@@ -187,6 +183,10 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
187
183
|
});
|
188
184
|
}
|
189
185
|
}, [onChange]);
|
186
|
+
(0, _react.useEffect)(function () {
|
187
|
+
// 配置国际化
|
188
|
+
(0, _core.setValidateLanguage)((0, _utils.getLanguage)() || 'zh-cn');
|
189
|
+
}, []);
|
190
190
|
return /*#__PURE__*/_react.default.createElement(_formily.Form, _objectSpread(_objectSpread(_objectSpread({
|
191
191
|
className: (0, _utils.cls)(prefixCls(), className)
|
192
192
|
}, otherProps), getTeamixLayout), {}, {
|
@@ -36,8 +36,7 @@
|
|
36
36
|
.#{$teamix-pro-field}-radio,
|
37
37
|
.#{$teamix-pro-field}-switch,
|
38
38
|
.#{$teamix-pro-field}-colorradio,
|
39
|
-
.#{$teamix-pro-field}-range
|
40
|
-
.#{$css-prefix}btn-text {
|
39
|
+
.#{$teamix-pro-field}-range {
|
41
40
|
line-height: var(--form-element-medium-height, 32px);
|
42
41
|
}
|
43
42
|
> .#{$css-prefix}btn-text {
|
@@ -109,6 +108,21 @@
|
|
109
108
|
}
|
110
109
|
}
|
111
110
|
|
111
|
+
// 尺寸 - small
|
112
|
+
.#{$form-item-cls}-size-small {
|
113
|
+
// 预览态行高
|
114
|
+
.#{$css-prefix}form-preview {
|
115
|
+
line-height: var(--form-element-small-height, 24px);
|
116
|
+
}
|
117
|
+
}
|
118
|
+
// 尺寸 - large
|
119
|
+
.#{$form-item-cls}-size-large {
|
120
|
+
// 预览态行高
|
121
|
+
.#{$css-prefix}form-preview {
|
122
|
+
line-height: var(--form-element-large-height, 36px);
|
123
|
+
}
|
124
|
+
}
|
125
|
+
|
112
126
|
// Icon
|
113
127
|
.#{$css-prefix}formily-icon {
|
114
128
|
transform: translate(0, -1px);
|
@@ -190,23 +204,6 @@
|
|
190
204
|
}
|
191
205
|
}
|
192
206
|
|
193
|
-
// 数组类组件添加按钮
|
194
|
-
.#{$css-prefix}btn.#{$form-array}-base-addition {
|
195
|
-
border-style: dashed;
|
196
|
-
.#{$css-prefix}formily-icon {
|
197
|
-
margin-right: 4px;
|
198
|
-
}
|
199
|
-
}
|
200
|
-
// 数组类ArrayItem Icon text 居中
|
201
|
-
.#{$form-array}-items-item-inner {
|
202
|
-
.#{$css-prefix}space-item {
|
203
|
-
> .#{$css-prefix}formily-icon.#{$css-prefix}btn-text {
|
204
|
-
line-height: inherit !important;
|
205
|
-
margin-right: 0;
|
206
|
-
}
|
207
|
-
}
|
208
|
-
}
|
209
|
-
|
210
207
|
// Editable预览态行高
|
211
208
|
.#{$css-prefix}formily-editable-content {
|
212
209
|
line-height: var(--form-element-medium-height, 32px);
|
@@ -296,6 +293,20 @@
|
|
296
293
|
.form-array-base-icon {
|
297
294
|
cursor: pointer;
|
298
295
|
}
|
296
|
+
// 数组类组件添加按钮
|
297
|
+
.#{$css-prefix}btn.#{$form-array}-base-addition {
|
298
|
+
border-style: dashed;
|
299
|
+
.#{$css-prefix}formily-icon {
|
300
|
+
margin-right: 4px;
|
301
|
+
}
|
302
|
+
}
|
303
|
+
.#{$form-array}-items {
|
304
|
+
.#{$form-item-cls}-control-content-component {
|
305
|
+
> .#{$css-prefix}btn-text.#{$form-array}-base-addition {
|
306
|
+
line-height: var(--form-element-medium-height, 32px);
|
307
|
+
}
|
308
|
+
}
|
309
|
+
}
|
299
310
|
|
300
311
|
// ArrayCard
|
301
312
|
.#{$form-array}-cards-item {
|
@@ -324,6 +335,18 @@
|
|
324
335
|
align-items: center;
|
325
336
|
}
|
326
337
|
|
338
|
+
// todo 此处做覆盖,formily改为变量后可移除
|
339
|
+
.#{$form-array}-items-card {
|
340
|
+
border-color: var(--card-border-color, #eaeaea);
|
341
|
+
background: var(--card-background, #ffffff);
|
342
|
+
.#{$css-prefix}formily-item:not(.#{$css-prefix}formily-item-feedback-layout-popover) {
|
343
|
+
.#{$css-prefix}formily-item-help {
|
344
|
+
background: var(--card-background, #ffffff);
|
345
|
+
box-shadow: 0 0 10px var(--card-border-color, #eaeaea);
|
346
|
+
}
|
347
|
+
}
|
348
|
+
}
|
349
|
+
|
327
350
|
/* hack todo remove */
|
328
351
|
.#{$form-item-cls}-control-content-component {
|
329
352
|
.#{$teamix-pro-field}-tooltip.#{$teamix-pro-field}-checkbox {
|
package/lib/index.d.ts
CHANGED
@@ -27,5 +27,5 @@ export * from './table';
|
|
27
27
|
export * from './sidebar';
|
28
28
|
export * from './utils';
|
29
29
|
export * from './timeline';
|
30
|
-
declare const version = "1.4.
|
30
|
+
declare const version = "1.4.4";
|
31
31
|
export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, hooks, nocode, templates, utils, };
|
package/lib/index.js
CHANGED
@@ -21,7 +21,7 @@ var _QuickAction = _interopRequireDefault(require("../QuickAction"));
|
|
21
21
|
|
22
22
|
require("./index.scss");
|
23
23
|
|
24
|
-
var _excluded = ["header", "mainAction", "extra", "actionRef", "dataFilter", "dataFilterFormRef", "rowSelection"];
|
24
|
+
var _excluded = ["header", "mainAction", "extra", "actionRef", "dataFilter", "dataFilterFormRef", "afterDataFilter", "rowSelection"];
|
25
25
|
|
26
26
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
27
27
|
|
@@ -50,6 +50,7 @@ var Layout = function Layout(props) {
|
|
50
50
|
actionRef = props.actionRef,
|
51
51
|
dataFilter = props.dataFilter,
|
52
52
|
dataFilterFormRef = props.dataFilterFormRef,
|
53
|
+
afterDataFilter = props.afterDataFilter,
|
53
54
|
rowSelection = props.rowSelection,
|
54
55
|
otherProps = _objectWithoutProperties(props, _excluded); // 渲染主操作区
|
55
56
|
|
@@ -121,7 +122,7 @@ var Layout = function Layout(props) {
|
|
121
122
|
addonAfter: renderAddonAfter()
|
122
123
|
}, dataFilter));
|
123
124
|
} else if ((dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema2 = dataFilter.schema) === null || _dataFilter$schema2 === void 0 ? void 0 : _dataFilter$schema2.length) >= 0) {
|
124
|
-
return /*#__PURE__*/_react.default.createElement(_form.QueryFilter, _objectSpread({
|
125
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_form.QueryFilter, _objectSpread({
|
125
126
|
formRef: dataFilterFormRef,
|
126
127
|
onExpand: function onExpand(expand) {
|
127
128
|
// 全屏模式下展开收起过滤器需要重新计算tableMaxHeight
|
@@ -138,7 +139,9 @@ var Layout = function Layout(props) {
|
|
138
139
|
},
|
139
140
|
addonBefore: renderMainAction(),
|
140
141
|
addonAfter: renderAddonAfter()
|
141
|
-
}, dataFilter))
|
142
|
+
}, dataFilter)), afterDataFilter && /*#__PURE__*/_react.default.createElement("div", {
|
143
|
+
className: "mb8 ".concat(cls('after-data-filter-wrapper'))
|
144
|
+
}, afterDataFilter));
|
142
145
|
}
|
143
146
|
} else if (mainAction) {
|
144
147
|
// 没传 dataFilter 但是传了 mainAction
|
package/lib/table/index.js
CHANGED
@@ -53,7 +53,7 @@ Object.keys(_typing).forEach(function (key) {
|
|
53
53
|
}
|
54
54
|
});
|
55
55
|
});
|
56
|
-
var _excluded = ["header", "className", "tableClassName", "mainAction", "extra", "dataFilter", "toolBar", "columns", "useRowSelection", "rowSelection", "onChangeRowSelection", "getRowSelection", "primaryKey", "footerAction", "footer", "url", "pageKey", "pageSizeKey", "method", "params", "formatSort", "formatParams", "formatResult", "requestWhenMount", "showPagination", "pageSizeList", "responsivePaginationType", "showSkeleton", "skeletonSize", "actionRef", "dataSource", "filterDebounce", "footerSuction", "autoRefresh", "customRequest", "filterColumnType", "defaultFilterParams", "reserveSelectedRecords", "size", "disableSelectAll", "context"];
|
56
|
+
var _excluded = ["header", "className", "tableClassName", "mainAction", "extra", "dataFilter", "afterDataFilter", "toolBar", "columns", "useRowSelection", "rowSelection", "onChangeRowSelection", "getRowSelection", "primaryKey", "footerAction", "footer", "url", "pageKey", "pageSizeKey", "method", "params", "formatSort", "formatParams", "formatResult", "requestWhenMount", "showPagination", "pageSizeList", "responsivePaginationType", "showSkeleton", "skeletonSize", "actionRef", "dataSource", "filterDebounce", "footerSuction", "autoRefresh", "customRequest", "filterColumnType", "defaultFilterParams", "reserveSelectedRecords", "size", "disableSelectAll", "context"];
|
57
57
|
|
58
58
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
59
59
|
|
@@ -161,6 +161,7 @@ var ProTable = function ProTable(props) {
|
|
161
161
|
mainAction = props.mainAction,
|
162
162
|
extra = props.extra,
|
163
163
|
propsDataFilter = props.dataFilter,
|
164
|
+
afterDataFilter = props.afterDataFilter,
|
164
165
|
toolBar = props.toolBar,
|
165
166
|
propsColumns = props.columns,
|
166
167
|
useRowSelection = props.useRowSelection,
|
@@ -849,6 +850,7 @@ var ProTable = function ProTable(props) {
|
|
849
850
|
actionRef: actionRef,
|
850
851
|
columns: propsColumns,
|
851
852
|
dataFilter: dataFilter,
|
853
|
+
afterDataFilter: afterDataFilter,
|
852
854
|
dataFilterFormRef: isFullScreen ? fullscreenDataFilterFormRef : normalDataFilterFormRef,
|
853
855
|
rowSelection: rowSelection,
|
854
856
|
filterColumnType: filterColumnType
|
package/lib/table/index.scss
CHANGED
@@ -1,16 +1,9 @@
|
|
1
1
|
$prefix: 'teamix-pro-table';
|
2
2
|
$fullscreenPadding: 24px;
|
3
3
|
|
4
|
-
.next-overlay-wrapper {
|
5
|
-
--checkbox-select-icon-content: '\ead7';
|
6
|
-
--checkbox-semi-select-icon-content: '\ead5';
|
7
|
-
}
|
8
|
-
|
9
4
|
.#{$prefix} {
|
10
5
|
background: var(--table-row-bg, #ffffff);
|
11
6
|
position: relative;
|
12
|
-
--checkbox-select-icon-content: '\ead7';
|
13
|
-
--checkbox-semi-select-icon-content: '\ead5';
|
14
7
|
&-footer {
|
15
8
|
padding: 8px 0;
|
16
9
|
width: 100%;
|
@@ -121,7 +114,7 @@ $fullscreenPadding: 24px;
|
|
121
114
|
}
|
122
115
|
|
123
116
|
.next-table {
|
124
|
-
.next-form-preview
|
117
|
+
.next-form-preview {
|
125
118
|
line-height: unset;
|
126
119
|
}
|
127
120
|
&-row {
|
@@ -141,4 +134,4 @@ $fullscreenPadding: 24px;
|
|
141
134
|
a:hover {
|
142
135
|
color: var(--color-brand1-5);
|
143
136
|
}
|
144
|
-
}
|
137
|
+
}
|
package/lib/table/typing.d.ts
CHANGED
@@ -256,6 +256,8 @@ export declare type ProTableTopAreaProps = {
|
|
256
256
|
extra?: ProActionButtonProps | React.ReactNode | React.ReactNode[];
|
257
257
|
/** 数据过滤区 */
|
258
258
|
dataFilter?: ProTableDataFilterProps;
|
259
|
+
/** 数据过滤区下方自定义区域 */
|
260
|
+
afterDataFilter?: React.ReactNode;
|
259
261
|
/** 传给 QueryFilter 的 formRef */
|
260
262
|
dataFilterFormRef?: any;
|
261
263
|
/** 排序、筛选列展示状态 */
|