@teamix/pro 1.4.24 → 1.4.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/pro.css +1 -1
- package/dist/pro.js +46014 -34835
- package/dist/pro.min.css +1 -1
- package/dist/pro.min.js +1 -1
- package/dist/pro.min.js.LICENSE.txt +11 -0
- package/es/actions/dialog.d.ts +2 -0
- package/es/actions/dialog.js +3 -2
- package/es/card/index.js +2 -2
- package/es/form/Filter/AdvancedFilter.js +8 -2
- package/es/form/Filter/layout.scss +1 -1
- package/es/form/ProForm/addCascadeEffect.d.ts +2 -0
- package/es/form/ProForm/addCascadeEffect.js +225 -0
- package/es/form/ProForm/index.js +8 -5
- package/es/form/ProForm/index.scss +33 -0
- package/es/form/index.d.ts +3 -0
- package/es/form/typing.d.ts +20 -0
- package/es/index.d.ts +1 -1
- package/es/index.js +2 -1
- package/es/info/components/InfoValueItem/index.js +15 -4
- package/es/info/typing.d.ts +4 -1
- package/es/sidebar/components/sidebar-container/index.js +18 -2
- package/es/sidebar/components/sidebar-container/index.scss +21 -14
- package/es/sidebar/components/tree/index.js +24 -6
- package/es/sidebar/components/tree-node/index.js +1 -1
- package/es/sidebar/components/tree-node/index.scss +6 -0
- package/es/sidebar/typing.d.ts +4 -0
- package/es/table/components/Layout/index.scss +1 -1
- package/es/table/components/Pagination/index.js +1 -2
- package/es/table/components/ToolBar/DensityIcon.js +1 -0
- package/es/table/components/ToolBar/FilterColumnIcon.js +2 -0
- package/es/table/components/ToolBar/FullScreenIcon.js +6 -57
- package/es/table/components/ToolBar/index.d.ts +1 -1
- package/es/table/components/ToolBar/index.js +99 -16
- package/es/table/components/ToolBar/index.scss +22 -2
- package/es/table/index.js +20 -4
- package/es/table/index.scss +1 -1
- package/es/table/typing.d.ts +4 -1
- package/lib/actions/dialog.d.ts +2 -0
- package/lib/actions/dialog.js +3 -2
- package/lib/card/index.js +2 -2
- package/lib/form/Filter/AdvancedFilter.js +7 -1
- package/lib/form/Filter/layout.scss +1 -1
- package/lib/form/ProForm/addCascadeEffect.d.ts +2 -0
- package/lib/form/ProForm/addCascadeEffect.js +235 -0
- package/lib/form/ProForm/index.js +9 -5
- package/lib/form/ProForm/index.scss +33 -0
- package/lib/form/index.d.ts +3 -0
- package/lib/form/typing.d.ts +20 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +2 -1
- package/lib/info/components/InfoValueItem/index.js +15 -4
- package/lib/info/typing.d.ts +4 -1
- package/lib/sidebar/components/sidebar-container/index.js +18 -2
- package/lib/sidebar/components/sidebar-container/index.scss +21 -14
- package/lib/sidebar/components/tree/index.js +24 -6
- package/lib/sidebar/components/tree-node/index.js +1 -1
- package/lib/sidebar/components/tree-node/index.scss +6 -0
- package/lib/sidebar/typing.d.ts +4 -0
- package/lib/table/components/Layout/index.scss +1 -1
- package/lib/table/components/Pagination/index.js +1 -2
- package/lib/table/components/ToolBar/DensityIcon.js +1 -0
- package/lib/table/components/ToolBar/FilterColumnIcon.js +2 -0
- package/lib/table/components/ToolBar/FullScreenIcon.js +9 -63
- package/lib/table/components/ToolBar/index.d.ts +1 -1
- package/lib/table/components/ToolBar/index.js +109 -16
- package/lib/table/components/ToolBar/index.scss +22 -2
- package/lib/table/index.js +20 -4
- package/lib/table/index.scss +1 -1
- package/lib/table/typing.d.ts +4 -1
- package/package.json +2 -2
@@ -0,0 +1,235 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _core = require("@formily/core");
|
9
|
+
|
10
|
+
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; }
|
11
|
+
|
12
|
+
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; }
|
13
|
+
|
14
|
+
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; }
|
15
|
+
|
16
|
+
var OP_MAPS = {
|
17
|
+
'*': function _() {
|
18
|
+
return true;
|
19
|
+
},
|
20
|
+
'=': function _(l, r) {
|
21
|
+
return l === r;
|
22
|
+
},
|
23
|
+
'==': function _(l, r) {
|
24
|
+
return l === r;
|
25
|
+
},
|
26
|
+
'!': function _(l, r) {
|
27
|
+
return l !== r;
|
28
|
+
},
|
29
|
+
'!=': function _(l, r) {
|
30
|
+
return l != r;
|
31
|
+
},
|
32
|
+
'>': function _(l, r) {
|
33
|
+
return l > r;
|
34
|
+
},
|
35
|
+
'<': function _(l, r) {
|
36
|
+
return l < r;
|
37
|
+
},
|
38
|
+
'>=': function _(l, r) {
|
39
|
+
return l >= r;
|
40
|
+
},
|
41
|
+
'<=': function _(l, r) {
|
42
|
+
return l <= r;
|
43
|
+
},
|
44
|
+
ied: function ied(l, r) {
|
45
|
+
if (Array.isArray(l) || typeof l === 'string' && r) {
|
46
|
+
return l.includes(r);
|
47
|
+
} else {
|
48
|
+
return false;
|
49
|
+
}
|
50
|
+
},
|
51
|
+
eed: function eed(l, r) {
|
52
|
+
if (Array.isArray(l) || typeof l === 'string' && r) {
|
53
|
+
return !l.includes(r);
|
54
|
+
} else {
|
55
|
+
return true;
|
56
|
+
}
|
57
|
+
},
|
58
|
+
i: function i(l, r) {
|
59
|
+
if (Array.isArray(r) || typeof r === 'string' && l) {
|
60
|
+
return r.includes(l);
|
61
|
+
} else {
|
62
|
+
return false;
|
63
|
+
}
|
64
|
+
},
|
65
|
+
e: function e(l, r) {
|
66
|
+
if (Array.isArray(r) || typeof r === 'string' && l) {
|
67
|
+
return !r.includes(l);
|
68
|
+
} else {
|
69
|
+
return true;
|
70
|
+
}
|
71
|
+
},
|
72
|
+
isEmpty: function isEmpty(l, r) {
|
73
|
+
return l === null || l === undefined || l === '' || Array.isArray(l) && l.length === 0;
|
74
|
+
},
|
75
|
+
notEmpty: function notEmpty(l, r) {
|
76
|
+
return l !== null && l !== undefined && l !== '' && (!Array.isArray(l) || l.length !== 0);
|
77
|
+
}
|
78
|
+
};
|
79
|
+
|
80
|
+
var getParsedValue = function getParsedValue(value, scope) {
|
81
|
+
if (typeof value === 'string' && value.startsWith('${') && value.endsWith('}')) {
|
82
|
+
return scope.$form.getValuesIn(value.slice(2, value.length - 1));
|
83
|
+
} else if (typeof value === 'string' && value.startsWith('{{') && value.endsWith('}}')) {
|
84
|
+
var code = value.slice(2, value.length - 2);
|
85
|
+
|
86
|
+
try {
|
87
|
+
return new Function("with(this){ return ".concat(code, " }")).call(scope);
|
88
|
+
} catch (e) {
|
89
|
+
return undefined;
|
90
|
+
}
|
91
|
+
} else {
|
92
|
+
return value;
|
93
|
+
}
|
94
|
+
};
|
95
|
+
|
96
|
+
var bingo = function bingo(bingoItem, scope) {
|
97
|
+
var _bingoItem$when = bingoItem.when,
|
98
|
+
when = _bingoItem$when === void 0 ? [] : _bingoItem$when,
|
99
|
+
_bingoItem$logic = bingoItem.logic,
|
100
|
+
logic = _bingoItem$logic === void 0 ? '&&' : _bingoItem$logic;
|
101
|
+
var result = logic === '&&';
|
102
|
+
when.forEach(function (_ref) {
|
103
|
+
var left = _ref.left,
|
104
|
+
op = _ref.op,
|
105
|
+
right = _ref.right;
|
106
|
+
var leftValue = scope.$form.getValuesIn(left);
|
107
|
+
var rightValue = getParsedValue(right, scope);
|
108
|
+
var itemResult = OP_MAPS[op](leftValue, rightValue);
|
109
|
+
|
110
|
+
if (logic === '&&') {
|
111
|
+
result = result && itemResult;
|
112
|
+
} else {
|
113
|
+
result = result || itemResult;
|
114
|
+
}
|
115
|
+
});
|
116
|
+
return result;
|
117
|
+
};
|
118
|
+
|
119
|
+
var loopAddFieldEffect = function loopAddFieldEffect(schema, form, scope) {
|
120
|
+
if (Array.isArray(schema)) {
|
121
|
+
schema === null || schema === void 0 ? void 0 : schema.forEach(function (item) {
|
122
|
+
if (item.name) {
|
123
|
+
var _item$cascade, _item$onChange;
|
124
|
+
|
125
|
+
(_item$cascade = item.cascade) === null || _item$cascade === void 0 ? void 0 : _item$cascade.forEach(function (cascade) {
|
126
|
+
(0, _core.onFieldReact)(item.name, function (field) {
|
127
|
+
var contextScope = _objectSpread(_objectSpread({}, scope), {}, {
|
128
|
+
$form: form,
|
129
|
+
$self: field,
|
130
|
+
$values: form.values
|
131
|
+
});
|
132
|
+
|
133
|
+
var _cascade$state = cascade.state,
|
134
|
+
state = _cascade$state === void 0 ? {} : _cascade$state,
|
135
|
+
_cascade$props = cascade.props,
|
136
|
+
props = _cascade$props === void 0 ? {} : _cascade$props,
|
137
|
+
dataSourceFilter = cascade.dataSourceFilter,
|
138
|
+
dataSourceHide = cascade.dataSourceHide;
|
139
|
+
|
140
|
+
if (bingo(cascade, contextScope)) {
|
141
|
+
if (dataSourceFilter || dataSourceHide) {
|
142
|
+
var sourceDataSource = field.getState()._sourceDataSource;
|
143
|
+
|
144
|
+
if (!sourceDataSource) {
|
145
|
+
var dataSource = field.getState().dataSource;
|
146
|
+
field.setState({
|
147
|
+
_sourceDataSource: dataSource
|
148
|
+
});
|
149
|
+
sourceDataSource = dataSource;
|
150
|
+
}
|
151
|
+
|
152
|
+
if (sourceDataSource) {
|
153
|
+
var nextDataSource = sourceDataSource.filter(function (item) {
|
154
|
+
if (Array.isArray(dataSourceFilter)) {
|
155
|
+
return dataSourceFilter.includes(item.value);
|
156
|
+
}
|
157
|
+
|
158
|
+
if (Array.isArray(dataSourceHide)) {
|
159
|
+
return !dataSourceFilter.includes(item.value);
|
160
|
+
}
|
161
|
+
});
|
162
|
+
field.setDataSource(nextDataSource);
|
163
|
+
var value = field.getState().value;
|
164
|
+
|
165
|
+
if (!nextDataSource.some(function (item) {
|
166
|
+
return item.value === value;
|
167
|
+
})) {
|
168
|
+
field.setValue(undefined);
|
169
|
+
}
|
170
|
+
}
|
171
|
+
}
|
172
|
+
|
173
|
+
var nextState = {};
|
174
|
+
Object.keys(state).forEach(function (stateKey) {
|
175
|
+
nextState[stateKey] = getParsedValue(state[stateKey], contextScope);
|
176
|
+
});
|
177
|
+
field.setState(nextState);
|
178
|
+
var nextProps = {};
|
179
|
+
Object.keys(props).forEach(function (propsKey) {
|
180
|
+
nextProps[propsKey] = getParsedValue(props[propsKey], contextScope);
|
181
|
+
});
|
182
|
+
field.setComponentProps(nextProps);
|
183
|
+
} else {
|
184
|
+
var formState = form.getState();
|
185
|
+
|
186
|
+
if (dataSourceFilter || dataSourceHide) {
|
187
|
+
var _sourceDataSource = field.getState()._sourceDataSource;
|
188
|
+
|
189
|
+
_sourceDataSource && field.setDataSource(_sourceDataSource);
|
190
|
+
}
|
191
|
+
|
192
|
+
var _nextState = {};
|
193
|
+
Object.keys(state).forEach(function (stateKey) {
|
194
|
+
_nextState[stateKey] = stateKey in item ? item[stateKey] : formState[stateKey];
|
195
|
+
});
|
196
|
+
field.setState(_nextState);
|
197
|
+
var _nextProps = {};
|
198
|
+
Object.keys(props).forEach(function (propsKey) {
|
199
|
+
_nextProps[propsKey] = item.props ? item.props[propsKey] : undefined;
|
200
|
+
});
|
201
|
+
field.setComponentProps(_nextProps);
|
202
|
+
}
|
203
|
+
});
|
204
|
+
});
|
205
|
+
(_item$onChange = item.onChange) === null || _item$onChange === void 0 ? void 0 : _item$onChange.forEach(function (onChange) {
|
206
|
+
(0, _core.onFieldValueChange)(item.name, function (field) {
|
207
|
+
var contextScope = _objectSpread(_objectSpread({}, scope), {}, {
|
208
|
+
$form: form,
|
209
|
+
$self: field,
|
210
|
+
$values: form.values
|
211
|
+
});
|
212
|
+
|
213
|
+
var values = onChange.values;
|
214
|
+
|
215
|
+
if (bingo(onChange, contextScope)) {
|
216
|
+
Object.keys(values).forEach(function (valuesKey) {
|
217
|
+
form.setValuesIn(valuesKey, getParsedValue(values[valuesKey], contextScope));
|
218
|
+
});
|
219
|
+
}
|
220
|
+
});
|
221
|
+
});
|
222
|
+
} else if (item.children) {
|
223
|
+
loopAddFieldEffect(item.children, form, scope);
|
224
|
+
}
|
225
|
+
});
|
226
|
+
}
|
227
|
+
};
|
228
|
+
|
229
|
+
var _default = function _default(form, schema, scope) {
|
230
|
+
form.addEffects('cascade', function () {
|
231
|
+
loopAddFieldEffect(schema, form, scope);
|
232
|
+
});
|
233
|
+
};
|
234
|
+
|
235
|
+
exports.default = _default;
|
@@ -21,6 +21,8 @@ var _components = require("@alicloudfe/components");
|
|
21
21
|
|
22
22
|
var _ProField = _interopRequireDefault(require("../Components/ProField"));
|
23
23
|
|
24
|
+
var _addCascadeEffect = _interopRequireDefault(require("./addCascadeEffect"));
|
25
|
+
|
24
26
|
var _Editable = require("../Components/Editable");
|
25
27
|
|
26
28
|
var _FormGroup = _interopRequireDefault(require("../Components/FormGroup"));
|
@@ -112,17 +114,19 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
112
114
|
globalComponents = _ref2.components,
|
113
115
|
globalScope = _ref2.scope;
|
114
116
|
|
117
|
+
var mergedScope = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, context), globalScope), scope), {}, {
|
118
|
+
context: context
|
119
|
+
});
|
120
|
+
|
115
121
|
var form = (0, _react.useMemo)(function () {
|
116
|
-
|
122
|
+
var nextForm = outerForm || (0, _core.createForm)({
|
117
123
|
validateFirst: validateFirst
|
118
124
|
});
|
125
|
+
(0, _addCascadeEffect.default)(nextForm, schema, mergedScope);
|
126
|
+
return nextForm;
|
119
127
|
}, [outerForm]);
|
120
128
|
var prefixCls = (0, _utils.usePrefixCls)('teamix-pro-form'); // 由于Actions需要,解构context供使用。原context键名的上下文继续保留。
|
121
129
|
|
122
|
-
var mergedScope = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, context), globalScope), scope), {}, {
|
123
|
-
context: context
|
124
|
-
});
|
125
|
-
|
126
130
|
var mergedComponents = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, globalComponents), components), formilyComponents), _ProField.default);
|
127
131
|
|
128
132
|
var onAutoSubmit = (0, _useAutoSubmit.default)(onSubmit, context);
|
@@ -376,3 +376,36 @@
|
|
376
376
|
}
|
377
377
|
}
|
378
378
|
}
|
379
|
+
|
380
|
+
// inset 内嵌模式描述文案和校验样式修改
|
381
|
+
.#{$form-item-cls}-inset {
|
382
|
+
// 描述+校验
|
383
|
+
&.#{$form-item-cls}-feedback-has-text.#{$form-item-cls}-extra-wrap {
|
384
|
+
margin-bottom: 42px;
|
385
|
+
.#{$form-item-cls}-error-help {
|
386
|
+
position: absolute;
|
387
|
+
left: 0px;
|
388
|
+
}
|
389
|
+
.#{$form-item-cls}-extra {
|
390
|
+
position: absolute;
|
391
|
+
bottom: -40px;
|
392
|
+
left: 0px;
|
393
|
+
}
|
394
|
+
}
|
395
|
+
// 描述
|
396
|
+
&.#{$form-item-cls}-extra-wrap {
|
397
|
+
margin-bottom: 40px;
|
398
|
+
.#{$form-item-cls}-extra {
|
399
|
+
position: absolute;
|
400
|
+
left: 0px;
|
401
|
+
}
|
402
|
+
}
|
403
|
+
// 校验
|
404
|
+
&.#{$form-item-cls}-feedback-has-text {
|
405
|
+
margin-bottom: 40px;
|
406
|
+
.#{$form-item-cls}-error-help {
|
407
|
+
position: absolute;
|
408
|
+
left: 0px;
|
409
|
+
}
|
410
|
+
}
|
411
|
+
}
|
package/lib/form/index.d.ts
CHANGED
@@ -32,6 +32,8 @@ declare const formilyReact: {
|
|
32
32
|
};
|
33
33
|
RecursionField: originalFormilyReact.ReactFC<originalFormilyReact.IRecursionFieldProps>;
|
34
34
|
ExpressionScope: originalFormilyReact.ReactFC<originalFormilyReact.IExpressionScopeProps>;
|
35
|
+
RecordsScope: originalFormilyReact.ReactFC<originalFormilyReact.IRecordsScopeProps>;
|
36
|
+
RecordScope: originalFormilyReact.ReactFC<originalFormilyReact.IRecordScopeProps>;
|
35
37
|
createSchemaField<Components extends originalFormilyReact.SchemaReactComponents>(options?: originalFormilyReact.ISchemaFieldReactFactoryOptions<Components> | undefined): {
|
36
38
|
<Decorator extends originalFormilyReact.JSXComponent, Component extends originalFormilyReact.JSXComponent>(props: originalFormilyReact.ISchemaFieldProps<Decorator, Component, import("@formily/core").ObjectField<Decorator, Component>>): JSX.Element;
|
37
39
|
displayName: string;
|
@@ -98,6 +100,7 @@ declare const formilyReact: {
|
|
98
100
|
useParentForm: () => import("@formily/core").Form<any> | import("@formily/core").ObjectField<any, any>;
|
99
101
|
useFieldSchema: () => originalFormilyReact.Schema<any, any, any, any, any, any, any, any, any>;
|
100
102
|
useFormEffects: (effects?: ((form: import("@formily/core").Form<any>) => void) | undefined) => void;
|
103
|
+
useExpressionScope: () => any;
|
101
104
|
};
|
102
105
|
import { customComponent } from './ProForm/customComponent';
|
103
106
|
export { formilyReact, customComponent };
|
package/lib/form/typing.d.ts
CHANGED
@@ -34,6 +34,24 @@ export interface ProFormRequestConfig extends Omit<ProFormCommonRequestConfig, '
|
|
34
34
|
extraConfig?: AnyObject;
|
35
35
|
onComplete?: (res?: any, field?: any, context?: any) => any;
|
36
36
|
}
|
37
|
+
export interface CascadeWhen {
|
38
|
+
left: string;
|
39
|
+
op: string;
|
40
|
+
right: any;
|
41
|
+
}
|
42
|
+
export interface Cascade {
|
43
|
+
when: CascadeWhen[];
|
44
|
+
logic?: '||' | '&&';
|
45
|
+
props?: any;
|
46
|
+
state?: any;
|
47
|
+
dataSourceFilter?: any[];
|
48
|
+
dataSourceHide?: any[];
|
49
|
+
}
|
50
|
+
export interface OnChange {
|
51
|
+
when: CascadeWhen[];
|
52
|
+
logic?: '||' | '&&';
|
53
|
+
values: any;
|
54
|
+
}
|
37
55
|
export interface ProFormSchemaItem {
|
38
56
|
type?: string;
|
39
57
|
name?: string;
|
@@ -61,6 +79,8 @@ export interface ProFormSchemaItem {
|
|
61
79
|
default?: any;
|
62
80
|
request?: ProFormRequestConfig | ProFormRequestConfig[];
|
63
81
|
data?: AnyObject;
|
82
|
+
cascade?: Cascade[];
|
83
|
+
onChange?: OnChange[];
|
64
84
|
}
|
65
85
|
export declare type ProFormSchema = ProFormSchemaItem[];
|
66
86
|
interface AutoLayout {
|
package/lib/index.d.ts
CHANGED
@@ -28,5 +28,5 @@ export * from './table';
|
|
28
28
|
export * from './sidebar';
|
29
29
|
export * from './utils';
|
30
30
|
export * from './timeline';
|
31
|
-
declare const version = "1.4.
|
31
|
+
declare const version = "1.4.27";
|
32
32
|
export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, TeamixIcon, hooks, nocode, templates, utils, };
|
package/lib/index.js
CHANGED
@@ -313,9 +313,10 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
313
313
|
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; }
|
314
314
|
|
315
315
|
// 设置图标源
|
316
|
+
// @ts-ignore
|
316
317
|
if (!((_window = window) === null || _window === void 0 ? void 0 : _window.TEAMIXPRO_WITHOUT_ICON)) {
|
317
318
|
_icon.default.setConfig(_utils.default.getTeamixIconConfig());
|
318
319
|
}
|
319
320
|
|
320
|
-
var version = '1.4.
|
321
|
+
var version = '1.4.27';
|
321
322
|
exports.version = version;
|
@@ -91,7 +91,18 @@ var InfoValueItem = function InfoValueItem(props) {
|
|
91
91
|
successMessage = _infoItem$successMess === void 0 ? 'success' : _infoItem$successMess,
|
92
92
|
actions = infoItem.actions,
|
93
93
|
extra = infoItem.extra,
|
94
|
-
valueType = infoItem.valueType
|
94
|
+
valueType = infoItem.valueType,
|
95
|
+
_infoItem$editProForm = infoItem.editProFormProps,
|
96
|
+
editProFormProps = _infoItem$editProForm === void 0 ? {} : _infoItem$editProForm; // 获取配置
|
97
|
+
|
98
|
+
var getInfoItemProps = function getInfoItemProps(prop) {
|
99
|
+
if (typeof prop === 'function') {
|
100
|
+
return prop === null || prop === void 0 ? void 0 : prop(value, record);
|
101
|
+
}
|
102
|
+
|
103
|
+
return prop;
|
104
|
+
}; // 获取处理过的 render
|
105
|
+
|
95
106
|
|
96
107
|
var getRender = function getRender() {
|
97
108
|
var _processRenderFunctio;
|
@@ -249,10 +260,10 @@ var InfoValueItem = function InfoValueItem(props) {
|
|
249
260
|
}; // 重写编辑逻辑替代field原有逻辑
|
250
261
|
|
251
262
|
|
252
|
-
if (isEdit) {
|
263
|
+
if (getInfoItemProps(isEdit)) {
|
253
264
|
// 渲染表单
|
254
265
|
var renderContent = function renderContent() {
|
255
|
-
return /*#__PURE__*/_react.default.createElement(_form.default, {
|
266
|
+
return /*#__PURE__*/_react.default.createElement(_form.default, _objectSpread({
|
256
267
|
schema: [{
|
257
268
|
name: dataIndex,
|
258
269
|
component: 'Input',
|
@@ -260,7 +271,7 @@ var InfoValueItem = function InfoValueItem(props) {
|
|
260
271
|
default: value
|
261
272
|
}],
|
262
273
|
form: dataFilterForm
|
263
|
-
});
|
274
|
+
}, getInfoItemProps(editProFormProps)));
|
264
275
|
}; // 表单提交
|
265
276
|
|
266
277
|
|
package/lib/info/typing.d.ts
CHANGED
@@ -4,6 +4,7 @@ import { Method } from 'axios';
|
|
4
4
|
import React from 'react';
|
5
5
|
import { CommonRequestConfig } from '@teamix/utils';
|
6
6
|
import { ProCardProps } from '../card';
|
7
|
+
import { ProFormProps } from '../form';
|
7
8
|
/** 列record函数 */
|
8
9
|
declare type ProInfoCellFunProp = (value: any, record: any) => any;
|
9
10
|
declare type FieldRenderProps = keyof ProFieldRenderProps;
|
@@ -77,7 +78,7 @@ export interface ProInfoColumnsProps {
|
|
77
78
|
/** 合并行 */
|
78
79
|
colSpan?: number;
|
79
80
|
/** 是否可被编辑 */
|
80
|
-
isEdit?: boolean;
|
81
|
+
isEdit?: boolean | ProInfoCellFunProp;
|
81
82
|
/** 点击确定的回调函数 */
|
82
83
|
editOnOk?: (form: any, e: React.MouseEvent) => void | Promise<any>;
|
83
84
|
/** 点击取消的回调函数 */
|
@@ -88,6 +89,8 @@ export interface ProInfoColumnsProps {
|
|
88
89
|
editMethod?: Method;
|
89
90
|
/** 如需自定义调用参数格式,则可以设定此值在请求前对 params 进行自定义,如果返回false则可以阻止请求 */
|
90
91
|
editFormatParams?: (params: any, record: any) => typeof params;
|
92
|
+
/** edit ProForm 配置 */
|
93
|
+
editProFormProps?: ProFormProps | ProInfoCellFunProp;
|
91
94
|
/** 编辑请求成功提示文案 */
|
92
95
|
successMessage?: string;
|
93
96
|
/** 列 actions 配置 */
|
@@ -21,7 +21,7 @@ require("./index.scss");
|
|
21
21
|
|
22
22
|
var _icon = _interopRequireDefault(require("@teamix/icon"));
|
23
23
|
|
24
|
-
var _excluded = ["children", "searchPlaceholder", "showSearch", "searchProps", "customSearch", "searchOnChange", "message", "messageProps", "customMessage", "scrollArea", "showExpandAll", "showExpandLevel", "onExpandAllChange", "onExpandLevelChange", "expandLevel", "isTree"];
|
24
|
+
var _excluded = ["children", "searchPlaceholder", "showSearch", "searchProps", "customSearch", "searchOnChange", "message", "messageProps", "customMessage", "scrollArea", "showExpandAll", "showExpandLevel", "onExpandAllChange", "onExpandLevelChange", "expandLevel", "expandLevelState", "expandAllState", "isTree"];
|
25
25
|
|
26
26
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
27
27
|
|
@@ -81,6 +81,10 @@ var ProSidebarContainer = function ProSidebarContainer(props) {
|
|
81
81
|
onExpandLevelChange = props.onExpandLevelChange,
|
82
82
|
_props$expandLevel = props.expandLevel,
|
83
83
|
expandLevel = _props$expandLevel === void 0 ? 1 : _props$expandLevel,
|
84
|
+
_props$expandLevelSta = props.expandLevelState,
|
85
|
+
expandLevelStateProp = _props$expandLevelSta === void 0 ? 1 : _props$expandLevelSta,
|
86
|
+
_props$expandAllState = props.expandAllState,
|
87
|
+
expandAllStateProp = _props$expandAllState === void 0 ? false : _props$expandAllState,
|
84
88
|
isTree = props.isTree,
|
85
89
|
others = _objectWithoutProperties(props, _excluded);
|
86
90
|
|
@@ -114,7 +118,19 @@ var ProSidebarContainer = function ProSidebarContainer(props) {
|
|
114
118
|
setTreeHeight("calc(100% - ".concat(remainHeight, "px + 16px)"));
|
115
119
|
}
|
116
120
|
}
|
117
|
-
}, []);
|
121
|
+
}, []);
|
122
|
+
(0, _react.useEffect)(function () {
|
123
|
+
setExpandLevelState(expandLevelStateProp);
|
124
|
+
setTimeout(function () {
|
125
|
+
onExpandLevelChange === null || onExpandLevelChange === void 0 ? void 0 : onExpandLevelChange(expandLevelStateProp);
|
126
|
+
});
|
127
|
+
}, [expandLevelStateProp]);
|
128
|
+
(0, _react.useEffect)(function () {
|
129
|
+
setExpandAllState(expandAllStateProp);
|
130
|
+
setTimeout(function () {
|
131
|
+
onExpandAllChange === null || onExpandAllChange === void 0 ? void 0 : onExpandAllChange(expandAllStateProp);
|
132
|
+
});
|
133
|
+
}, [expandAllStateProp]); // 渲染搜索区域
|
118
134
|
|
119
135
|
var renderSearch = function renderSearch() {
|
120
136
|
if (customSearch || showSearch) {
|
@@ -1,12 +1,13 @@
|
|
1
1
|
.teamix-pro-sidebar-container {
|
2
2
|
min-width: 180px;
|
3
|
-
|
3
|
+
|
4
|
+
.teamix-pro-card.compacted > .next-card-header {
|
4
5
|
padding: 16px 0px;
|
5
6
|
margin: 0;
|
6
|
-
|
7
|
+
|
7
8
|
}
|
8
9
|
|
9
|
-
.next-card .next-card-header-extra{
|
10
|
+
.next-card .next-card-header-extra {
|
10
11
|
margin-top: 2px;
|
11
12
|
}
|
12
13
|
|
@@ -27,38 +28,44 @@
|
|
27
28
|
}
|
28
29
|
|
29
30
|
|
30
|
-
&.teamix-pro-sidebar-container &-context{
|
31
|
-
overflow-y: hidden;
|
32
|
-
|
33
|
-
&:hover{
|
31
|
+
&.teamix-pro-sidebar-container &-context {
|
32
|
+
//overflow-y: hidden;
|
33
|
+
|
34
|
+
&:hover {
|
34
35
|
overflow-y: auto;
|
35
36
|
}
|
37
|
+
|
38
|
+
.next-tree-switcher.next-noop-line.next-noop-line-noroot {
|
39
|
+
flex-shrink: 0;
|
40
|
+
}
|
41
|
+
|
36
42
|
}
|
37
43
|
|
38
44
|
|
39
|
-
&-not-is-tree{
|
45
|
+
&-not-is-tree {
|
40
46
|
|
41
|
-
.teamix-pro-card.compacted
|
47
|
+
.teamix-pro-card.compacted > .next-card-header {
|
42
48
|
padding: 16px 8px;
|
43
49
|
margin: 0;
|
44
50
|
}
|
45
|
-
|
51
|
+
|
52
|
+
.teamix-pro-sidebar-container-context {
|
46
53
|
padding: 0;
|
47
54
|
}
|
48
55
|
|
49
|
-
.teamix-pro-sidebar-container-search{
|
56
|
+
.teamix-pro-sidebar-container-search {
|
50
57
|
padding: 0 8px;
|
51
58
|
}
|
52
59
|
|
53
|
-
.teamix-pro-sidebar-container-search-has-message{
|
60
|
+
.teamix-pro-sidebar-container-search-has-message {
|
54
61
|
padding: 0 8px;
|
55
62
|
}
|
56
63
|
|
57
|
-
.teamix-pro-sidebar-container-notice{
|
64
|
+
.teamix-pro-sidebar-container-notice {
|
58
65
|
padding: 0 8px;
|
59
66
|
}
|
60
67
|
|
61
|
-
.teamix-pro-sidebar-container-fold{
|
68
|
+
.teamix-pro-sidebar-container-fold {
|
62
69
|
padding: 0 8px;
|
63
70
|
}
|
64
71
|
|
@@ -154,21 +154,39 @@ var ProSidebarTree = function ProSidebarTree(props) {
|
|
154
154
|
}, [dataSourceProp]); // 监听展开全部事件
|
155
155
|
|
156
156
|
(0, _hooks.useUpdateEffect)(function () {
|
157
|
+
onChangeExpandAll();
|
158
|
+
}, [expandAll]); // 监听展开层级事件
|
159
|
+
|
160
|
+
(0, _hooks.useUpdateEffect)(function () {
|
161
|
+
onChangeExpandLevel();
|
162
|
+
}, [expandLevel]); // 监听 DataSource 变化事件
|
163
|
+
|
164
|
+
(0, _react.useEffect)(function () {
|
165
|
+
onDataSourceChange === null || onDataSourceChange === void 0 ? void 0 : onDataSourceChange(dataSource); // 更新层级状态
|
166
|
+
|
167
|
+
if (expandAll) {
|
168
|
+
onChangeExpandAll();
|
169
|
+
}
|
170
|
+
|
171
|
+
if (expandLevel > 1) {
|
172
|
+
onChangeExpandLevel();
|
173
|
+
}
|
174
|
+
}, [dataSource]); // 展开全部事件
|
175
|
+
|
176
|
+
var onChangeExpandAll = function onChangeExpandAll() {
|
157
177
|
if (expandAll) {
|
158
178
|
setExpandedKeys((0, _utils2.getAllNodeKey)(dataSource));
|
159
179
|
} else {
|
160
180
|
setExpandedKeys([]);
|
161
181
|
}
|
162
|
-
}
|
182
|
+
}; // 展开层级事件
|
163
183
|
|
164
|
-
|
184
|
+
|
185
|
+
var onChangeExpandLevel = function onChangeExpandLevel() {
|
165
186
|
var keys = (0, _utils2.getTreeLevelKey)(dataSource, expandLevel - 1);
|
166
187
|
setExpandedKeys(keys);
|
167
|
-
}
|
188
|
+
}; // 绑定actionRef
|
168
189
|
|
169
|
-
(0, _react.useEffect)(function () {
|
170
|
-
onDataSourceChange === null || onDataSourceChange === void 0 ? void 0 : onDataSourceChange(dataSource);
|
171
|
-
}, [dataSource]); // 绑定actionRef
|
172
190
|
|
173
191
|
(0, _actionRef.useActionType)(actionRef, {
|
174
192
|
setTreeNode: function setTreeNode(treeNode) {
|
@@ -247,7 +247,7 @@ function renderTreeNodeDependenceValue(data, onBeforeRenderNodeEvent, checkedKey
|
|
247
247
|
newProps = onBeforeRenderNodeEvent(item, checkedKeys, selectedKeys, allData !== null && allData !== void 0 ? allData : data);
|
248
248
|
}
|
249
249
|
|
250
|
-
var _getTreeNodeProps2 = (0, _.getTreeNodeProps)(
|
250
|
+
var _getTreeNodeProps2 = (0, _.getTreeNodeProps)(newProps),
|
251
251
|
nodeProps = _getTreeNodeProps2.nodeProps,
|
252
252
|
labelProps = _getTreeNodeProps2.labelProps;
|
253
253
|
|
@@ -50,6 +50,12 @@
|
|
50
50
|
font-weight: unset;
|
51
51
|
}
|
52
52
|
}
|
53
|
+
// 选中图标变色
|
54
|
+
.next-tree-node-inner.next-selected {
|
55
|
+
.teamix-icon.teamix-pro-filed-output-prefix-icon {
|
56
|
+
color: var(--color-brand1-6) !important;
|
57
|
+
}
|
58
|
+
}
|
53
59
|
}
|
54
60
|
.teamix-pro-sidebar-deep-1 {
|
55
61
|
.teamix-pro-sidebar-tree {
|
package/lib/sidebar/typing.d.ts
CHANGED
@@ -88,6 +88,8 @@ export declare type ProSidebarContainerProps = {
|
|
88
88
|
scrollArea?: 'all' | 'tree';
|
89
89
|
/** 是否显示展开全部 */
|
90
90
|
showExpandAll?: boolean;
|
91
|
+
/** 展开全部 状态 */
|
92
|
+
expandAllState?: boolean;
|
91
93
|
/** 是否显示展开层级 */
|
92
94
|
showExpandLevel?: boolean;
|
93
95
|
/** 展开全部变化回调 */
|
@@ -96,6 +98,8 @@ export declare type ProSidebarContainerProps = {
|
|
96
98
|
onExpandLevelChange?: (state: number) => void;
|
97
99
|
/** 展开层级 层级 */
|
98
100
|
expandLevel?: number;
|
101
|
+
/** 展开层级 当前所展示层级 */
|
102
|
+
expandLevelState?: number;
|
99
103
|
/** 列表 or tree */
|
100
104
|
isTree?: boolean;
|
101
105
|
} & ProCardProps;
|