nsc-react-component 3.2.21 → 3.3.0
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/lib/base/form/Form.js +1 -1
- package/lib/base/form/Form.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -1
- package/lib/page/BasePage/index.d.ts +1 -1
- package/lib/page/BasePage/index.js +6 -5
- package/lib/page/BasePage/index.js.map +1 -1
- package/lib/page/FormPage/index.d.ts +48 -0
- package/lib/page/FormPage/index.js +478 -0
- package/lib/page/FormPage/index.js.map +1 -0
- package/lib/page/FormPage/index.module.less +42 -0
- package/package.json +1 -1
- package/lib/page/BasePage/Form.d.ts +0 -29
- package/lib/page/BasePage/Form.js +0 -333
- package/lib/page/BasePage/Form.js.map +0 -1
- package/lib/page/BasePage/index copy.d.ts +0 -107
- package/lib/page/BasePage/index copy.js +0 -857
- package/lib/page/BasePage/index copy.js.map +0 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
.nsc-form-page {
|
|
2
|
+
:gloabl {
|
|
3
|
+
.ant-picker {
|
|
4
|
+
width: 100%;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
.nsc-form-pane {
|
|
8
|
+
margin-bottom: 20px;
|
|
9
|
+
background: #fff;
|
|
10
|
+
padding: 20px;
|
|
11
|
+
border-radius: 8px;
|
|
12
|
+
.nsc-form-title {
|
|
13
|
+
font-size: 22px;
|
|
14
|
+
font-weight: 600;
|
|
15
|
+
color: #333;
|
|
16
|
+
position: relative;
|
|
17
|
+
}
|
|
18
|
+
.nsc-form-content{
|
|
19
|
+
margin-top: 16px;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
.nsc-form-page-footer{
|
|
23
|
+
height: 45px;
|
|
24
|
+
background: #fff;
|
|
25
|
+
padding: 0px 20px;
|
|
26
|
+
align-items: center;
|
|
27
|
+
position: fixed;
|
|
28
|
+
width: calc(100% - 220px);
|
|
29
|
+
left: 220px;
|
|
30
|
+
bottom: 0;
|
|
31
|
+
display: flex;
|
|
32
|
+
align-items: center;
|
|
33
|
+
box-shadow: 0px -1px 20px 0px rgba(0, 0, 0, 0.06);
|
|
34
|
+
transition: all 0.2s;
|
|
35
|
+
z-index: 99;
|
|
36
|
+
justify-content: end;
|
|
37
|
+
.nsc-form-page-footer-btn{
|
|
38
|
+
margin-left: 20px;
|
|
39
|
+
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
package/package.json
CHANGED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import React, { PureComponent } from "react";
|
|
2
|
-
declare class EditorForm extends PureComponent<any> {
|
|
3
|
-
formRef: React.RefObject<any>;
|
|
4
|
-
state: {
|
|
5
|
-
loading: boolean;
|
|
6
|
-
label: string;
|
|
7
|
-
editorFlag: boolean;
|
|
8
|
-
value: any;
|
|
9
|
-
dictNames: any;
|
|
10
|
-
fileList: any;
|
|
11
|
-
};
|
|
12
|
-
valid: any;
|
|
13
|
-
dateValueFormat: any;
|
|
14
|
-
dateFormat: any;
|
|
15
|
-
show(orgValue?: any, editorflag?: string): void;
|
|
16
|
-
hide(hide?: boolean): void;
|
|
17
|
-
hideForm(): void;
|
|
18
|
-
setLoading(loading: boolean): void;
|
|
19
|
-
setFieldsValue(values: any): void;
|
|
20
|
-
getFieldsValue(): any;
|
|
21
|
-
doSubmit(formdata: any, label: any): void;
|
|
22
|
-
onSubmit(): void;
|
|
23
|
-
valueChange({ type, dictName }: {
|
|
24
|
-
type: any;
|
|
25
|
-
dictName: any;
|
|
26
|
-
}, props: any, value: any, valueOption: any, data: any): void;
|
|
27
|
-
render(): React.JSX.Element;
|
|
28
|
-
}
|
|
29
|
-
export default EditorForm;
|
|
@@ -1,333 +0,0 @@
|
|
|
1
|
-
const _excluded = ["data"];
|
|
2
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
3
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
|
-
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
6
|
-
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; }
|
|
7
|
-
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
8
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
|
|
9
|
-
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
10
|
-
import React, { PureComponent } from "react";
|
|
11
|
-
import Form from "../../base/form";
|
|
12
|
-
import { getLess, getNode } from "../../utils";
|
|
13
|
-
import message from "../../base/message";
|
|
14
|
-
import Col from "../../base/grid/Col";
|
|
15
|
-
import Row from "../../base/grid/Row";
|
|
16
|
-
import { isEmptyObj } from "@bj-nsc/functions";
|
|
17
|
-
import dayjs from "dayjs";
|
|
18
|
-
import styles from "./index.module.less";
|
|
19
|
-
import lodash from "lodash";
|
|
20
|
-
import Button from "../../base/button";
|
|
21
|
-
import Upload from '../../base/upload';
|
|
22
|
-
class EditorForm extends PureComponent {
|
|
23
|
-
constructor() {
|
|
24
|
-
super(...arguments);
|
|
25
|
-
_defineProperty(this, "formRef", /*#__PURE__*/React.createRef());
|
|
26
|
-
_defineProperty(this, "state", {
|
|
27
|
-
loading: false,
|
|
28
|
-
label: "",
|
|
29
|
-
editorFlag: true,
|
|
30
|
-
value: {},
|
|
31
|
-
dictNames: {},
|
|
32
|
-
fileList: {}
|
|
33
|
-
});
|
|
34
|
-
_defineProperty(this, "valid", []);
|
|
35
|
-
_defineProperty(this, "dateValueFormat", {});
|
|
36
|
-
_defineProperty(this, "dateFormat", {});
|
|
37
|
-
}
|
|
38
|
-
//表单显示
|
|
39
|
-
show(orgValue) {
|
|
40
|
-
let editorflag = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "add";
|
|
41
|
-
let label = "新增";
|
|
42
|
-
if (orgValue && editorflag == "editor") {
|
|
43
|
-
label = "编辑";
|
|
44
|
-
} else if (orgValue && editorflag == "detail") {
|
|
45
|
-
label = "查看";
|
|
46
|
-
}
|
|
47
|
-
if (orgValue) {
|
|
48
|
-
this.setState({
|
|
49
|
-
label: label,
|
|
50
|
-
value: orgValue
|
|
51
|
-
}, () => {
|
|
52
|
-
var _this$formRef$current;
|
|
53
|
-
let value = lodash.cloneDeep(orgValue);
|
|
54
|
-
if (!isEmptyObj(this.dateFormat)) {
|
|
55
|
-
for (let key in this.dateFormat) {
|
|
56
|
-
let olddata = value[key];
|
|
57
|
-
if (olddata) {
|
|
58
|
-
if (Array.isArray(olddata)) {
|
|
59
|
-
value[key] = [dayjs(olddata[0], this.dateFormat[key]), dayjs(olddata[1], this.dateFormat[key])];
|
|
60
|
-
} else {
|
|
61
|
-
value[key] = dayjs(olddata, this.dateFormat[key]);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
// console.log("value", value);
|
|
67
|
-
(_this$formRef$current = this.formRef.current) === null || _this$formRef$current === void 0 || _this$formRef$current.showForm(value);
|
|
68
|
-
});
|
|
69
|
-
} else {
|
|
70
|
-
this.setState({
|
|
71
|
-
label: label
|
|
72
|
-
}, () => {
|
|
73
|
-
var _this$formRef$current2;
|
|
74
|
-
(_this$formRef$current2 = this.formRef.current) === null || _this$formRef$current2 === void 0 || _this$formRef$current2.showForm(this.props.defaultValue);
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
hide() {
|
|
79
|
-
var _this$formRef$current3;
|
|
80
|
-
let hide = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
81
|
-
const {
|
|
82
|
-
onHideForm
|
|
83
|
-
} = this.props;
|
|
84
|
-
if (onHideForm) {
|
|
85
|
-
onHideForm && onHideForm();
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
88
|
-
this.setState({
|
|
89
|
-
loading: false
|
|
90
|
-
});
|
|
91
|
-
hide && ((_this$formRef$current3 = this.formRef.current) === null || _this$formRef$current3 === void 0 ? void 0 : _this$formRef$current3.hideForm());
|
|
92
|
-
}
|
|
93
|
-
hideForm() {
|
|
94
|
-
var _this$formRef$current4;
|
|
95
|
-
this.setState({
|
|
96
|
-
loading: false
|
|
97
|
-
});
|
|
98
|
-
(_this$formRef$current4 = this.formRef.current) === null || _this$formRef$current4 === void 0 || _this$formRef$current4.hideForm();
|
|
99
|
-
}
|
|
100
|
-
setLoading(loading) {
|
|
101
|
-
this.setState({
|
|
102
|
-
loading: loading
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
setFieldsValue(values) {
|
|
106
|
-
var _this$formRef$current5;
|
|
107
|
-
(_this$formRef$current5 = this.formRef.current) === null || _this$formRef$current5 === void 0 || _this$formRef$current5.setFieldsValue(values);
|
|
108
|
-
}
|
|
109
|
-
getFieldsValue() {
|
|
110
|
-
var _this$formRef$current6;
|
|
111
|
-
return (_this$formRef$current6 = this.formRef.current) === null || _this$formRef$current6 === void 0 ? void 0 : _this$formRef$current6.getFieldsValue();
|
|
112
|
-
}
|
|
113
|
-
doSubmit(formdata, label) {
|
|
114
|
-
var _this$formRef$current7;
|
|
115
|
-
const {
|
|
116
|
-
submitUrl,
|
|
117
|
-
submitParams,
|
|
118
|
-
callBack
|
|
119
|
-
} = this.props;
|
|
120
|
-
if (!submitUrl) {
|
|
121
|
-
throw new Error("url不能为空!");
|
|
122
|
-
}
|
|
123
|
-
const {
|
|
124
|
-
data = {}
|
|
125
|
-
} = submitParams,
|
|
126
|
-
otherParams = _objectWithoutProperties(submitParams, _excluded);
|
|
127
|
-
(_this$formRef$current7 = this.formRef.current) === null || _this$formRef$current7 === void 0 || _this$formRef$current7.onSubmit(submitUrl, _objectSpread({
|
|
128
|
-
data: _objectSpread(_objectSpread({}, formdata), data),
|
|
129
|
-
noUndefined: label == "编辑"
|
|
130
|
-
}, otherParams), res => {
|
|
131
|
-
const {
|
|
132
|
-
code
|
|
133
|
-
} = res;
|
|
134
|
-
this.setState({
|
|
135
|
-
loading: false
|
|
136
|
-
});
|
|
137
|
-
if (code === 200) {
|
|
138
|
-
message.success(label + "成功");
|
|
139
|
-
this.hide(true);
|
|
140
|
-
callBack && callBack();
|
|
141
|
-
return;
|
|
142
|
-
}
|
|
143
|
-
this.hide(false);
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
onSubmit() {
|
|
147
|
-
var _this$formRef$current8, _this$formRef$current9;
|
|
148
|
-
const {
|
|
149
|
-
onSubmit
|
|
150
|
-
} = this.props;
|
|
151
|
-
const {
|
|
152
|
-
label,
|
|
153
|
-
value,
|
|
154
|
-
dictNames
|
|
155
|
-
} = this.state;
|
|
156
|
-
const formValue = (_this$formRef$current8 = this.formRef.current) === null || _this$formRef$current8 === void 0 ? void 0 : _this$formRef$current8.getFieldsValue();
|
|
157
|
-
let valid = this.valid;
|
|
158
|
-
(_this$formRef$current9 = this.formRef.current) === null || _this$formRef$current9 === void 0 || _this$formRef$current9.validateFields(valid).then(() => {
|
|
159
|
-
this.setState({
|
|
160
|
-
loading: true
|
|
161
|
-
});
|
|
162
|
-
let data = _objectSpread(_objectSpread({}, formValue), dictNames);
|
|
163
|
-
if (!isEmptyObj(this.dateValueFormat)) {
|
|
164
|
-
for (let key in this.dateValueFormat) {
|
|
165
|
-
let olddata = data[key];
|
|
166
|
-
if (olddata) {
|
|
167
|
-
if (Array.isArray(olddata)) {
|
|
168
|
-
data[key] = [dayjs(olddata[0]).format(this.dateValueFormat[key]), dayjs(olddata[1]).format(this.dateValueFormat[key])];
|
|
169
|
-
} else {
|
|
170
|
-
data[key] = dayjs(olddata).format(this.dateValueFormat[key]);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
if (label == "编辑") {
|
|
176
|
-
data = _objectSpread(_objectSpread({}, data), {}, {
|
|
177
|
-
id: value === null || value === void 0 ? void 0 : value.id
|
|
178
|
-
});
|
|
179
|
-
}
|
|
180
|
-
if (onSubmit) {
|
|
181
|
-
onSubmit && onSubmit(data, label);
|
|
182
|
-
return;
|
|
183
|
-
}
|
|
184
|
-
this.doSubmit(data, label);
|
|
185
|
-
}).catch(errorInfo => {});
|
|
186
|
-
}
|
|
187
|
-
valueChange(_ref, props, value, valueOption, data) {
|
|
188
|
-
let {
|
|
189
|
-
type,
|
|
190
|
-
dictName
|
|
191
|
-
} = _ref;
|
|
192
|
-
if (valueOption) {
|
|
193
|
-
if (dictName) {
|
|
194
|
-
const {
|
|
195
|
-
dictNames
|
|
196
|
-
} = this.state;
|
|
197
|
-
const newNames = _objectSpread({}, dictNames);
|
|
198
|
-
newNames[dictName] = valueOption.label;
|
|
199
|
-
this.setState({
|
|
200
|
-
dictNames: newNames
|
|
201
|
-
});
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
if (props.onChange) {
|
|
205
|
-
props.onChange(value, valueOption, data);
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
render() {
|
|
209
|
-
const {
|
|
210
|
-
formProps = [],
|
|
211
|
-
otherProps = {}
|
|
212
|
-
} = this.props;
|
|
213
|
-
const {
|
|
214
|
-
loading,
|
|
215
|
-
label
|
|
216
|
-
} = this.state;
|
|
217
|
-
let modalProps = {
|
|
218
|
-
title: label,
|
|
219
|
-
onOk: this.onSubmit.bind(this),
|
|
220
|
-
onCancel: this.hide.bind(this),
|
|
221
|
-
okButtonProps: {
|
|
222
|
-
loading: loading
|
|
223
|
-
},
|
|
224
|
-
centered: true,
|
|
225
|
-
width: "50vw"
|
|
226
|
-
};
|
|
227
|
-
const newValid = [];
|
|
228
|
-
let drawerProps = {
|
|
229
|
-
title: label,
|
|
230
|
-
onOk: this.onSubmit.bind(this),
|
|
231
|
-
onClose: this.hide.bind(this),
|
|
232
|
-
width: "50vw"
|
|
233
|
-
};
|
|
234
|
-
if (label == "查看") {
|
|
235
|
-
modalProps.footer = null;
|
|
236
|
-
drawerProps.footer = null;
|
|
237
|
-
}
|
|
238
|
-
this.dateValueFormat = {};
|
|
239
|
-
this.dateFormat = {};
|
|
240
|
-
return /*#__PURE__*/React.createElement(Form, _extends({
|
|
241
|
-
ref: this.formRef,
|
|
242
|
-
showModel: this.props.formType,
|
|
243
|
-
modalProps: _objectSpread({}, modalProps),
|
|
244
|
-
drawerProps: _objectSpread({}, drawerProps),
|
|
245
|
-
labelCol: {
|
|
246
|
-
flex: "100px"
|
|
247
|
-
},
|
|
248
|
-
wrapperCol: {
|
|
249
|
-
flex: "15vw"
|
|
250
|
-
},
|
|
251
|
-
onValuesChange: (changedValues, allValues) => {
|
|
252
|
-
const {
|
|
253
|
-
onFormChange
|
|
254
|
-
} = this.props;
|
|
255
|
-
onFormChange && onFormChange(changedValues, allValues);
|
|
256
|
-
},
|
|
257
|
-
changeValid: this.props.changeValid
|
|
258
|
-
}, otherProps), /*#__PURE__*/React.createElement("div", {
|
|
259
|
-
className: getLess(styles, "form")
|
|
260
|
-
}, /*#__PURE__*/React.createElement(Row, {
|
|
261
|
-
gutter: 24
|
|
262
|
-
}, formProps.map((item, index) => {
|
|
263
|
-
const itemProps = item.props || {};
|
|
264
|
-
if (itemProps.format || itemProps.valueFormat) {
|
|
265
|
-
this.dateValueFormat[item.name] = itemProps.format || itemProps.valueFormat;
|
|
266
|
-
}
|
|
267
|
-
if (itemProps.format) {
|
|
268
|
-
this.dateFormat[item.name] = itemProps.format;
|
|
269
|
-
}
|
|
270
|
-
let allowChars = item.props.allowChars || false;
|
|
271
|
-
let props = _objectSpread(_objectSpread({
|
|
272
|
-
placeholder: "\u8BF7\u8F93\u5165".concat(item.label)
|
|
273
|
-
}, item.props), {}, {
|
|
274
|
-
onChange: this.valueChange.bind(this, {
|
|
275
|
-
type: item.type,
|
|
276
|
-
dictName: item.dictName
|
|
277
|
-
}, _objectSpread({}, item.props))
|
|
278
|
-
});
|
|
279
|
-
if (!item.type || item.type == "Input") {
|
|
280
|
-
props.allowChars = true;
|
|
281
|
-
props.showCount = true;
|
|
282
|
-
}
|
|
283
|
-
delete props.valueFormat;
|
|
284
|
-
delete props.format;
|
|
285
|
-
if (label == "查看") {
|
|
286
|
-
props.disabled = true;
|
|
287
|
-
}
|
|
288
|
-
if (item.rules && item.rules.length > 0) {
|
|
289
|
-
newValid.push(item.name);
|
|
290
|
-
}
|
|
291
|
-
if (index + 1 === formProps.length) {
|
|
292
|
-
this.valid = newValid;
|
|
293
|
-
}
|
|
294
|
-
if (item.type !== 'Upload') {
|
|
295
|
-
return /*#__PURE__*/React.createElement(Col, {
|
|
296
|
-
span: item.span || 12,
|
|
297
|
-
key: index
|
|
298
|
-
}, /*#__PURE__*/React.createElement(Form.Item, {
|
|
299
|
-
label: item.label,
|
|
300
|
-
name: item.name,
|
|
301
|
-
rules: item.rules,
|
|
302
|
-
allowChars: allowChars,
|
|
303
|
-
componentName: item.type ? item.type : "Input"
|
|
304
|
-
}, getNode(item.type, _objectSpread({}, props))));
|
|
305
|
-
} else {
|
|
306
|
-
return /*#__PURE__*/React.createElement(Col, {
|
|
307
|
-
span: item.span || 12,
|
|
308
|
-
key: index
|
|
309
|
-
}, /*#__PURE__*/React.createElement(Form.Item, {
|
|
310
|
-
label: item.label,
|
|
311
|
-
name: item.name,
|
|
312
|
-
rules: item.rules,
|
|
313
|
-
allowChars: allowChars,
|
|
314
|
-
componentName: item.type ? item.type : "Input"
|
|
315
|
-
}, /*#__PURE__*/React.createElement(Upload, _extends({
|
|
316
|
-
fileList: this.state.fileList[item.name] || [],
|
|
317
|
-
onListChange: list => {
|
|
318
|
-
const {
|
|
319
|
-
fileList
|
|
320
|
-
} = this.state;
|
|
321
|
-
this.setState({
|
|
322
|
-
fileList: _objectSpread(_objectSpread({}, fileList), {}, {
|
|
323
|
-
[item.name]: list
|
|
324
|
-
})
|
|
325
|
-
});
|
|
326
|
-
}
|
|
327
|
-
}, props), /*#__PURE__*/React.createElement(Button, null, "\u4E0A\u4F20\u6587\u4EF6"))));
|
|
328
|
-
}
|
|
329
|
-
}))));
|
|
330
|
-
}
|
|
331
|
-
}
|
|
332
|
-
export default EditorForm;
|
|
333
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJGb3JtIiwiZ2V0TGVzcyIsImdldE5vZGUiLCJtZXNzYWdlIiwiQ29sIiwiUm93IiwiaXNFbXB0eU9iaiIsImRheWpzIiwic3R5bGVzIiwibG9kYXNoIiwiQnV0dG9uIiwiVXBsb2FkIiwiRWRpdG9yRm9ybSIsImNvbnN0cnVjdG9yIiwiYXJndW1lbnRzIiwiX2RlZmluZVByb3BlcnR5IiwiY3JlYXRlUmVmIiwibG9hZGluZyIsImxhYmVsIiwiZWRpdG9yRmxhZyIsInZhbHVlIiwiZGljdE5hbWVzIiwiZmlsZUxpc3QiLCJzaG93Iiwib3JnVmFsdWUiLCJlZGl0b3JmbGFnIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwic2V0U3RhdGUiLCJfdGhpcyRmb3JtUmVmJGN1cnJlbnQiLCJjbG9uZURlZXAiLCJkYXRlRm9ybWF0Iiwia2V5Iiwib2xkZGF0YSIsIkFycmF5IiwiaXNBcnJheSIsImZvcm1SZWYiLCJjdXJyZW50Iiwic2hvd0Zvcm0iLCJfdGhpcyRmb3JtUmVmJGN1cnJlbnQyIiwicHJvcHMiLCJkZWZhdWx0VmFsdWUiLCJoaWRlIiwiX3RoaXMkZm9ybVJlZiRjdXJyZW50MyIsIm9uSGlkZUZvcm0iLCJoaWRlRm9ybSIsIl90aGlzJGZvcm1SZWYkY3VycmVudDQiLCJzZXRMb2FkaW5nIiwic2V0RmllbGRzVmFsdWUiLCJ2YWx1ZXMiLCJfdGhpcyRmb3JtUmVmJGN1cnJlbnQ1IiwiZ2V0RmllbGRzVmFsdWUiLCJfdGhpcyRmb3JtUmVmJGN1cnJlbnQ2IiwiZG9TdWJtaXQiLCJmb3JtZGF0YSIsIl90aGlzJGZvcm1SZWYkY3VycmVudDciLCJzdWJtaXRVcmwiLCJzdWJtaXRQYXJhbXMiLCJjYWxsQmFjayIsIkVycm9yIiwiZGF0YSIsIm90aGVyUGFyYW1zIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX2V4Y2x1ZGVkIiwib25TdWJtaXQiLCJfb2JqZWN0U3ByZWFkIiwibm9VbmRlZmluZWQiLCJyZXMiLCJjb2RlIiwic3VjY2VzcyIsIl90aGlzJGZvcm1SZWYkY3VycmVudDgiLCJfdGhpcyRmb3JtUmVmJGN1cnJlbnQ5Iiwic3RhdGUiLCJmb3JtVmFsdWUiLCJ2YWxpZCIsInZhbGlkYXRlRmllbGRzIiwidGhlbiIsImRhdGVWYWx1ZUZvcm1hdCIsImZvcm1hdCIsImlkIiwiY2F0Y2giLCJlcnJvckluZm8iLCJ2YWx1ZUNoYW5nZSIsIl9yZWYiLCJ2YWx1ZU9wdGlvbiIsInR5cGUiLCJkaWN0TmFtZSIsIm5ld05hbWVzIiwib25DaGFuZ2UiLCJyZW5kZXIiLCJmb3JtUHJvcHMiLCJvdGhlclByb3BzIiwibW9kYWxQcm9wcyIsInRpdGxlIiwib25PayIsImJpbmQiLCJvbkNhbmNlbCIsIm9rQnV0dG9uUHJvcHMiLCJjZW50ZXJlZCIsIndpZHRoIiwibmV3VmFsaWQiLCJkcmF3ZXJQcm9wcyIsIm9uQ2xvc2UiLCJmb290ZXIiLCJjcmVhdGVFbGVtZW50IiwiX2V4dGVuZHMiLCJyZWYiLCJzaG93TW9kZWwiLCJmb3JtVHlwZSIsImxhYmVsQ29sIiwiZmxleCIsIndyYXBwZXJDb2wiLCJvblZhbHVlc0NoYW5nZSIsImNoYW5nZWRWYWx1ZXMiLCJhbGxWYWx1ZXMiLCJvbkZvcm1DaGFuZ2UiLCJjaGFuZ2VWYWxpZCIsImNsYXNzTmFtZSIsImd1dHRlciIsIm1hcCIsIml0ZW0iLCJpbmRleCIsIml0ZW1Qcm9wcyIsInZhbHVlRm9ybWF0IiwibmFtZSIsImFsbG93Q2hhcnMiLCJwbGFjZWhvbGRlciIsImNvbmNhdCIsInNob3dDb3VudCIsImRpc2FibGVkIiwicnVsZXMiLCJwdXNoIiwic3BhbiIsIkl0ZW0iLCJjb21wb25lbnROYW1lIiwib25MaXN0Q2hhbmdlIiwibGlzdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2UvQmFzZVBhZ2UvRm9ybS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IEZvcm0gZnJvbSBcIi4uLy4uL2Jhc2UvZm9ybVwiO1xyXG5pbXBvcnQgeyBnZXRMZXNzLCBnZXROb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCBtZXNzYWdlIGZyb20gXCIuLi8uLi9iYXNlL21lc3NhZ2VcIjtcclxuaW1wb3J0IENvbCBmcm9tIFwiLi4vLi4vYmFzZS9ncmlkL0NvbFwiO1xyXG5pbXBvcnQgUm93IGZyb20gXCIuLi8uLi9iYXNlL2dyaWQvUm93XCI7XHJcbmltcG9ydCB7IGlzRW1wdHlPYmogfSBmcm9tIFwiQGJqLW5zYy9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IG1vbWVudCBmcm9tIFwibW9tZW50XCI7XHJcbmltcG9ydCBkYXlqcyBmcm9tIFwiZGF5anNcIjtcclxuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9pbmRleC5tb2R1bGUubGVzc1wiO1xyXG5pbXBvcnQgdXRpbHMgZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCBsb2Rhc2ggZnJvbSBcImxvZGFzaFwiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi8uLi9iYXNlL2J1dHRvblwiO1xyXG5pbXBvcnQgVXBsb2FkIGZyb20gJy4uLy4uL2Jhc2UvdXBsb2FkJ1xyXG5jbGFzcyBFZGl0b3JGb3JtIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxhbnk+IHtcclxuICBmb3JtUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuICBzdGF0ZSA9IHtcclxuICAgIGxvYWRpbmc6IGZhbHNlLFxyXG4gICAgbGFiZWw6IFwiXCIsXHJcbiAgICBlZGl0b3JGbGFnOiB0cnVlLFxyXG4gICAgdmFsdWU6IHt9IGFzIGFueSxcclxuICAgIGRpY3ROYW1lczoge30gYXMgYW55LFxyXG4gICAgZmlsZUxpc3Q6IHt9IGFzIGFueVxyXG4gIH07XHJcbiAgdmFsaWQ6IGFueSA9IFtdO1xyXG4gIGRhdGVWYWx1ZUZvcm1hdCA9IHt9IGFzIGFueTtcclxuICBkYXRlRm9ybWF0ID0ge30gYXMgYW55O1xyXG4gIC8v6KGo5Y2V5pi+56S6XHJcbiAgc2hvdyhvcmdWYWx1ZT86IGFueSwgZWRpdG9yZmxhZyA9IFwiYWRkXCIpIHtcclxuICAgIGxldCBsYWJlbCA9IFwi5paw5aKeXCI7XHJcbiAgICBpZiAob3JnVmFsdWUgJiYgZWRpdG9yZmxhZyA9PSBcImVkaXRvclwiKSB7XHJcbiAgICAgIGxhYmVsID0gXCLnvJbovpFcIjtcclxuICAgIH0gZWxzZSBpZiAob3JnVmFsdWUgJiYgZWRpdG9yZmxhZyA9PSBcImRldGFpbFwiKSB7XHJcbiAgICAgIGxhYmVsID0gXCLmn6XnnItcIjtcclxuICAgIH1cclxuICAgIGlmIChvcmdWYWx1ZSkge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiBsYWJlbCxcclxuICAgICAgICAgIHZhbHVlOiBvcmdWYWx1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgICgpID0+IHtcclxuICAgICAgICAgIGxldCB2YWx1ZSA9IGxvZGFzaC5jbG9uZURlZXAob3JnVmFsdWUpO1xyXG4gICAgICAgICAgaWYgKCFpc0VtcHR5T2JqKHRoaXMuZGF0ZUZvcm1hdCkpIHtcclxuICAgICAgICAgICAgZm9yIChsZXQga2V5IGluIHRoaXMuZGF0ZUZvcm1hdCkge1xyXG4gICAgICAgICAgICAgIGxldCBvbGRkYXRhID0gdmFsdWVba2V5XTtcclxuICAgICAgICAgICAgICBpZiAob2xkZGF0YSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkob2xkZGF0YSkpIHtcclxuICAgICAgICAgICAgICAgICAgdmFsdWVba2V5XSA9IFtcclxuICAgICAgICAgICAgICAgICAgICBkYXlqcyhvbGRkYXRhWzBdLCB0aGlzLmRhdGVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgICAgICAgICAgZGF5anMob2xkZGF0YVsxXSwgdGhpcy5kYXRlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgdmFsdWVba2V5XSA9IGRheWpzKG9sZGRhdGEsIHRoaXMuZGF0ZUZvcm1hdFtrZXldKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKFwidmFsdWVcIiwgdmFsdWUpO1xyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNob3dGb3JtKHZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiBsYWJlbCxcclxuICAgICAgICB9LFxyXG4gICAgICAgICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zaG93Rm9ybSh0aGlzLnByb3BzLmRlZmF1bHRWYWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICBoaWRlKGhpZGUgPSB0cnVlKSB7XHJcbiAgICBjb25zdCB7IG9uSGlkZUZvcm0gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAob25IaWRlRm9ybSkge1xyXG4gICAgICBvbkhpZGVGb3JtICYmIG9uSGlkZUZvcm0oKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IGZhbHNlIH0pO1xyXG4gICAgaGlkZSAmJiB0aGlzLmZvcm1SZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcbiAgaGlkZUZvcm0oKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHsgbG9hZGluZzogZmFsc2UgfSk7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcbiAgc2V0TG9hZGluZyhsb2FkaW5nOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHsgbG9hZGluZzogbG9hZGluZyB9KTtcclxuICB9XHJcbiAgc2V0RmllbGRzVmFsdWUodmFsdWVzKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2V0RmllbGRzVmFsdWUodmFsdWVzKTtcclxuICB9XHJcbiAgZ2V0RmllbGRzVmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICBkb1N1Ym1pdChmb3JtZGF0YSwgbGFiZWwpIHtcclxuICAgIGNvbnN0IHsgc3VibWl0VXJsLCBzdWJtaXRQYXJhbXMsIGNhbGxCYWNrIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKCFzdWJtaXRVcmwpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwidXJs5LiN6IO95Li656m677yBXCIpO1xyXG4gICAgfVxyXG4gICAgY29uc3QgeyBkYXRhID0ge30sIC4uLm90aGVyUGFyYW1zIH0gPSBzdWJtaXRQYXJhbXNcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5vblN1Ym1pdChcclxuICAgICAgc3VibWl0VXJsLFxyXG4gICAgICB7XHJcbiAgICAgICAgZGF0YTogeyAuLi5mb3JtZGF0YSwuLi5kYXRhIH0sXHJcbiAgICAgICAgbm9VbmRlZmluZWQ6IGxhYmVsID09IFwi57yW6L6RXCIsXHJcbiAgICAgICAgLi4ub3RoZXJQYXJhbXMsXHJcbiAgICAgIH0sXHJcbiAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHsgY29kZSB9ID0gcmVzO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoeyBsb2FkaW5nOiBmYWxzZSB9KTtcclxuICAgICAgICBpZiAoY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICBtZXNzYWdlLnN1Y2Nlc3MobGFiZWwgKyBcIuaIkOWKn1wiKTtcclxuICAgICAgICAgIHRoaXMuaGlkZSh0cnVlKTtcclxuICAgICAgICAgIGNhbGxCYWNrICYmIGNhbGxCYWNrKCk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaGlkZShmYWxzZSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgY29uc3QgeyBvblN1Ym1pdCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgbGFiZWwsIHZhbHVlLCBkaWN0TmFtZXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIGxldCB2YWxpZCA9IHRoaXMudmFsaWQ7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudFxyXG4gICAgICA/LnZhbGlkYXRlRmllbGRzKHZhbGlkKVxyXG4gICAgICAudGhlbigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IHRydWUgfSk7XHJcbiAgICAgICAgbGV0IGRhdGEgPSB7IC4uLmZvcm1WYWx1ZSwgLi4uZGljdE5hbWVzIH07XHJcbiAgICAgICAgaWYgKCFpc0VtcHR5T2JqKHRoaXMuZGF0ZVZhbHVlRm9ybWF0KSkgeyAgICAgICAgXHJcbiAgICAgICAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5kYXRlVmFsdWVGb3JtYXQpIHtcclxuICAgICAgICAgICAgbGV0IG9sZGRhdGEgPSBkYXRhW2tleV07XHJcbiAgICAgICAgICAgIGlmIChvbGRkYXRhKSB7XHJcbiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkob2xkZGF0YSkpIHtcclxuICAgICAgICAgICAgICAgIGRhdGFba2V5XSA9IFtcclxuICAgICAgICAgICAgICAgICAgZGF5anMob2xkZGF0YVswXSkuZm9ybWF0KHRoaXMuZGF0ZVZhbHVlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgICAgICBkYXlqcyhvbGRkYXRhWzFdKS5mb3JtYXQodGhpcy5kYXRlVmFsdWVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBkYXRhW2tleV0gPSBkYXlqcyhvbGRkYXRhKS5mb3JtYXQodGhpcy5kYXRlVmFsdWVGb3JtYXRba2V5XSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChsYWJlbCA9PSBcIue8lui+kVwiKSB7XHJcbiAgICAgICAgICBkYXRhID0geyAuLi5kYXRhLCBpZDogdmFsdWU/LmlkIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChvblN1Ym1pdCkge1xyXG4gICAgICAgICAgb25TdWJtaXQgJiYgb25TdWJtaXQoZGF0YSwgbGFiZWwpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmRvU3VibWl0KGRhdGEsIGxhYmVsKTtcclxuICAgICAgfSlcclxuICAgICAgLmNhdGNoKChlcnJvckluZm86IGFueSkgPT4geyB9KTtcclxuICB9XHJcbiAgdmFsdWVDaGFuZ2UoeyB0eXBlLCBkaWN0TmFtZSB9LCBwcm9wcywgdmFsdWUsIHZhbHVlT3B0aW9uLCBkYXRhKSB7XHJcbiAgICBpZiAodmFsdWVPcHRpb24pIHtcclxuICAgICAgaWYgKGRpY3ROYW1lKSB7XHJcbiAgICAgICAgY29uc3QgeyBkaWN0TmFtZXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICAgICAgY29uc3QgbmV3TmFtZXMgPSB7IC4uLmRpY3ROYW1lcyB9IGFzIGFueTtcclxuICAgICAgICBuZXdOYW1lc1tkaWN0TmFtZV0gPSB2YWx1ZU9wdGlvbi5sYWJlbDtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGRpY3ROYW1lczogbmV3TmFtZXMsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5vbkNoYW5nZSkge1xyXG4gICAgICBwcm9wcy5vbkNoYW5nZSh2YWx1ZSwgdmFsdWVPcHRpb24sIGRhdGEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBmb3JtUHJvcHMgPSBbXSwgb3RoZXJQcm9wcyA9IHt9IH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBsb2FkaW5nLCBsYWJlbCB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGxldCBtb2RhbFByb3BzID0ge1xyXG4gICAgICB0aXRsZTogbGFiZWwsXHJcbiAgICAgIG9uT2s6IHRoaXMub25TdWJtaXQuYmluZCh0aGlzKSxcclxuICAgICAgb25DYW5jZWw6IHRoaXMuaGlkZS5iaW5kKHRoaXMpLFxyXG4gICAgICBva0J1dHRvblByb3BzOiB7IGxvYWRpbmc6IGxvYWRpbmcgfSxcclxuICAgICAgY2VudGVyZWQ6IHRydWUsXHJcbiAgICAgIHdpZHRoOiBcIjUwdndcIixcclxuICAgIH0gYXMgYW55O1xyXG5cclxuICAgIGNvbnN0IG5ld1ZhbGlkOiBhbnlbXSA9IFtdO1xyXG4gICAgbGV0IGRyYXdlclByb3BzID0ge1xyXG4gICAgICB0aXRsZTogbGFiZWwsXHJcbiAgICAgIG9uT2s6IHRoaXMub25TdWJtaXQuYmluZCh0aGlzKSxcclxuICAgICAgb25DbG9zZTogdGhpcy5oaWRlLmJpbmQodGhpcyksXHJcbiAgICAgIHdpZHRoOiBcIjUwdndcIixcclxuICAgIH0gYXMgYW55O1xyXG4gICAgaWYgKGxhYmVsID09IFwi5p+l55yLXCIpIHtcclxuICAgICAgbW9kYWxQcm9wcy5mb290ZXIgPSBudWxsO1xyXG4gICAgICBkcmF3ZXJQcm9wcy5mb290ZXIgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5kYXRlVmFsdWVGb3JtYXQgPSB7fTtcclxuICAgIHRoaXMuZGF0ZUZvcm1hdCA9IHt9O1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxGb3JtXHJcbiAgICAgICAgcmVmPXt0aGlzLmZvcm1SZWZ9XHJcbiAgICAgICAgc2hvd01vZGVsPXt0aGlzLnByb3BzLmZvcm1UeXBlfVxyXG4gICAgICAgIG1vZGFsUHJvcHM9e3sgLi4ubW9kYWxQcm9wcyB9fVxyXG4gICAgICAgIGRyYXdlclByb3BzPXt7IC4uLmRyYXdlclByb3BzIH19XHJcbiAgICAgICAgbGFiZWxDb2w9e3sgZmxleDogXCIxMDBweFwiIH19XHJcbiAgICAgICAgd3JhcHBlckNvbD17eyBmbGV4OiBcIjE1dndcIiB9fVxyXG4gICAgICAgIG9uVmFsdWVzQ2hhbmdlPXsoY2hhbmdlZFZhbHVlcywgYWxsVmFsdWVzKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCB7IG9uRm9ybUNoYW5nZSB9ID0gdGhpcy5wcm9wcztcclxuICAgICAgICAgIG9uRm9ybUNoYW5nZSAmJiBvbkZvcm1DaGFuZ2UoY2hhbmdlZFZhbHVlcywgYWxsVmFsdWVzKTtcclxuICAgICAgICB9fVxyXG4gICAgICAgIGNoYW5nZVZhbGlkPXt0aGlzLnByb3BzLmNoYW5nZVZhbGlkfVxyXG4gICAgICAgIHsuLi5vdGhlclByb3BzfVxyXG4gICAgICA+XHJcbiAgICAgICAgey8qIDxkaXY+ICovfVxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJmb3JtXCIpfT5cclxuICAgICAgICAgIDxSb3cgZ3V0dGVyPXsyNH0+XHJcbiAgICAgICAgICAgIHtmb3JtUHJvcHMubWFwKChpdGVtOiBhbnksIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCBpdGVtUHJvcHMgPSBpdGVtLnByb3BzIHx8IHt9O1xyXG4gICAgICAgICAgICAgIGlmIChpdGVtUHJvcHMuZm9ybWF0IHx8IGl0ZW1Qcm9wcy52YWx1ZUZvcm1hdCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRlVmFsdWVGb3JtYXRbaXRlbS5uYW1lXSA9XHJcbiAgICAgICAgICAgICAgICAgIGl0ZW1Qcm9wcy5mb3JtYXQgfHwgaXRlbVByb3BzLnZhbHVlRm9ybWF0O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAoaXRlbVByb3BzLmZvcm1hdCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0W2l0ZW0ubmFtZV0gPSBpdGVtUHJvcHMuZm9ybWF0O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBsZXQgYWxsb3dDaGFycyA9IGl0ZW0ucHJvcHMuYWxsb3dDaGFycyB8fCBmYWxzZTtcclxuICAgICAgICAgICAgICBsZXQgcHJvcHMgPSB7XHJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogYOivt+i+k+WFpSR7aXRlbS5sYWJlbH1gLFxyXG5cclxuICAgICAgICAgICAgICAgIC4uLml0ZW0ucHJvcHMsXHJcbiAgICAgICAgICAgICAgICBvbkNoYW5nZTogdGhpcy52YWx1ZUNoYW5nZS5iaW5kKFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLFxyXG4gICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogaXRlbS50eXBlLFxyXG4gICAgICAgICAgICAgICAgICAgIGRpY3ROYW1lOiBpdGVtLmRpY3ROYW1lLFxyXG4gICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICB7IC4uLml0ZW0ucHJvcHMgfVxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgIGlmICghaXRlbS50eXBlIHx8IGl0ZW0udHlwZSA9PSBcIklucHV0XCIpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLmFsbG93Q2hhcnMgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgcHJvcHMuc2hvd0NvdW50ID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgZGVsZXRlIHByb3BzLnZhbHVlRm9ybWF0O1xyXG4gICAgICAgICAgICAgIGRlbGV0ZSBwcm9wcy5mb3JtYXQ7XHJcbiAgICAgICAgICAgICAgaWYgKGxhYmVsID09IFwi5p+l55yLXCIpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLmRpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIGlmIChpdGVtLnJ1bGVzICYmIGl0ZW0ucnVsZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgbmV3VmFsaWQucHVzaChpdGVtLm5hbWUpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAoaW5kZXggKyAxID09PSBmb3JtUHJvcHMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnZhbGlkID0gbmV3VmFsaWQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGlmIChpdGVtLnR5cGUgIT09ICdVcGxvYWQnKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgICA8Q29sIHNwYW49e2l0ZW0uc3BhbiB8fCAxMn0ga2V5PXtpbmRleH0+XHJcbiAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbVxyXG4gICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2l0ZW0ubGFiZWx9XHJcbiAgICAgICAgICAgICAgICAgICAgICBuYW1lPXtpdGVtLm5hbWV9XHJcbiAgICAgICAgICAgICAgICAgICAgICBydWxlcz17aXRlbS5ydWxlc31cclxuICAgICAgICAgICAgICAgICAgICAgIGFsbG93Q2hhcnM9e2FsbG93Q2hhcnN9XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnROYW1lPXtpdGVtLnR5cGUgPyBpdGVtLnR5cGUgOiBcIklucHV0XCJ9XHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAge2dldE5vZGUoaXRlbS50eXBlLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLnByb3BzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgIDwvQ29sPlxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgICAgPENvbCBzcGFuPXtpdGVtLnNwYW4gfHwgMTJ9IGtleT17aW5kZXh9PlxyXG4gICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW1cclxuICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpdGVtLmxhYmVsfVxyXG4gICAgICAgICAgICAgICAgICAgICAgbmFtZT17aXRlbS5uYW1lfVxyXG4gICAgICAgICAgICAgICAgICAgICAgcnVsZXM9e2l0ZW0ucnVsZXN9XHJcbiAgICAgICAgICAgICAgICAgICAgICBhbGxvd0NoYXJzPXthbGxvd0NoYXJzfVxyXG4gICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50TmFtZT17aXRlbS50eXBlID8gaXRlbS50eXBlIDogXCJJbnB1dFwifVxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgIDxVcGxvYWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsZUxpc3Q9e3RoaXMuc3RhdGUuZmlsZUxpc3RbaXRlbS5uYW1lXSB8fCBbXX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgb25MaXN0Q2hhbmdlPXsobGlzdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZmlsZUxpc3QgfSA9IHRoaXMuc3RhdGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVMaXN0OiB7IC4uLmZpbGVMaXN0LCBbaXRlbS5uYW1lXTogbGlzdCB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgey4uLnByb3BzfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbj7kuIrkvKDmlofku7Y8L0J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvVXBsb2FkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxyXG4gICAgICAgICAgICAgICAgICA8L0NvbD5cclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KX1cclxuICAgICAgICAgIDwvUm93PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L0Zvcm0+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgRWRpdG9yRm9ybTtcclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPQSxLQUFLLElBQUlDLGFBQWEsUUFBUSxPQUFPO0FBQzVDLE9BQU9DLElBQUksTUFBTSxpQkFBaUI7QUFDbEMsU0FBU0MsT0FBTyxFQUFFQyxPQUFPLFFBQVEsYUFBYTtBQUM5QyxPQUFPQyxPQUFPLE1BQU0sb0JBQW9CO0FBQ3hDLE9BQU9DLEdBQUcsTUFBTSxxQkFBcUI7QUFDckMsT0FBT0MsR0FBRyxNQUFNLHFCQUFxQjtBQUNyQyxTQUFTQyxVQUFVLFFBQVEsbUJBQW1CO0FBRTlDLE9BQU9DLEtBQUssTUFBTSxPQUFPO0FBQ3pCLE9BQU9DLE1BQU0sTUFBTSxxQkFBcUI7QUFFeEMsT0FBT0MsTUFBTSxNQUFNLFFBQVE7QUFDM0IsT0FBT0MsTUFBTSxNQUFNLG1CQUFtQjtBQUN0QyxPQUFPQyxNQUFNLE1BQU0sbUJBQW1CO0FBQ3RDLE1BQU1DLFVBQVUsU0FBU2IsYUFBYSxDQUFNO0VBQUFjLFlBQUE7SUFBQSxTQUFBQyxTQUFBO0lBQUFDLGVBQUEsK0JBQ2hDakIsS0FBSyxDQUFDa0IsU0FBUyxDQUFNLENBQUM7SUFBQUQsZUFBQSxnQkFDeEI7TUFD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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Form.js","names":["React","PureComponent","Form","getLess","getNode","message","Col","Row","isEmptyObj","dayjs","styles","lodash","Button","Upload","EditorForm","constructor","arguments","_defineProperty","createRef","loading","label","editorFlag","value","dictNames","fileList","show","orgValue","editorflag","length","undefined","setState","_this$formRef$current","cloneDeep","dateFormat","key","olddata","Array","isArray","formRef","current","showForm","_this$formRef$current2","props","defaultValue","hide","_this$formRef$current3","onHideForm","hideForm","_this$formRef$current4","setLoading","setFieldsValue","values","_this$formRef$current5","getFieldsValue","_this$formRef$current6","doSubmit","formdata","_this$formRef$current7","submitUrl","submitParams","callBack","Error","data","otherParams","_objectWithoutProperties","_excluded","onSubmit","_objectSpread","noUndefined","res","code","success","_this$formRef$current8","_this$formRef$current9","state","formValue","valid","validateFields","then","dateValueFormat","format","id","catch","errorInfo","valueChange","_ref","valueOption","type","dictName","newNames","onChange","render","formProps","otherProps","modalProps","title","onOk","bind","onCancel","okButtonProps","centered","width","newValid","drawerProps","onClose","footer","createElement","_extends","ref","showModel","formType","labelCol","flex","wrapperCol","onValuesChange","changedValues","allValues","onFormChange","changeValid","className","gutter","map","item","index","itemProps","valueFormat","name","allowChars","placeholder","concat","showCount","disabled","rules","push","span","Item","componentName","onListChange","list"],"sources":["../../../src/components/page/BasePage/Form.tsx"],"sourcesContent":["import React, { PureComponent } from \"react\";\r\nimport Form from \"../../base/form\";\r\nimport { getLess, getNode } from \"../../utils\";\r\nimport message from \"../../base/message\";\r\nimport Col from \"../../base/grid/Col\";\r\nimport Row from \"../../base/grid/Row\";\r\nimport { isEmptyObj } from \"@bj-nsc/functions\";\r\nimport moment from \"moment\";\r\nimport dayjs from \"dayjs\";\r\nimport styles from \"./index.module.less\";\r\nimport utils from \"../../utils\";\r\nimport lodash from \"lodash\";\r\nimport Button from \"../../base/button\";\r\nimport Upload from '../../base/upload'\r\nclass EditorForm extends PureComponent<any> {\r\n formRef = React.createRef<any>();\r\n state = {\r\n loading: false,\r\n label: \"\",\r\n editorFlag: true,\r\n value: {} as any,\r\n dictNames: {} as any,\r\n fileList: {} as any\r\n };\r\n valid: any = [];\r\n dateValueFormat = {} as any;\r\n dateFormat = {} as any;\r\n //表单显示\r\n show(orgValue?: any, editorflag = \"add\") {\r\n let label = \"新增\";\r\n if (orgValue && editorflag == \"editor\") {\r\n label = \"编辑\";\r\n } else if (orgValue && editorflag == \"detail\") {\r\n label = \"查看\";\r\n }\r\n if (orgValue) {\r\n this.setState(\r\n {\r\n label: label,\r\n value: orgValue,\r\n },\r\n () => {\r\n let value = lodash.cloneDeep(orgValue);\r\n if (!isEmptyObj(this.dateFormat)) {\r\n for (let key in this.dateFormat) {\r\n let olddata = value[key];\r\n if (olddata) {\r\n if (Array.isArray(olddata)) {\r\n value[key] = [\r\n dayjs(olddata[0], this.dateFormat[key]),\r\n dayjs(olddata[1], this.dateFormat[key]),\r\n ];\r\n } else {\r\n value[key] = dayjs(olddata, this.dateFormat[key]);\r\n }\r\n }\r\n }\r\n }\r\n // console.log(\"value\", value);\r\n this.formRef.current?.showForm(value);\r\n }\r\n );\r\n } else {\r\n this.setState(\r\n {\r\n label: label,\r\n },\r\n () => {\r\n this.formRef.current?.showForm(this.props.defaultValue);\r\n }\r\n );\r\n }\r\n }\r\n hide(hide = true) {\r\n const { onHideForm } = this.props;\r\n if (onHideForm) {\r\n onHideForm && onHideForm();\r\n return;\r\n }\r\n this.setState({ loading: false });\r\n hide && this.formRef.current?.hideForm();\r\n }\r\n hideForm() {\r\n this.setState({ loading: false });\r\n this.formRef.current?.hideForm();\r\n }\r\n setLoading(loading: boolean) {\r\n this.setState({ loading: loading });\r\n }\r\n setFieldsValue(values) {\r\n this.formRef.current?.setFieldsValue(values);\r\n }\r\n getFieldsValue() {\r\n return this.formRef.current?.getFieldsValue();\r\n }\r\n\r\n doSubmit(formdata, label) {\r\n const { submitUrl, submitParams, callBack } = this.props;\r\n if (!submitUrl) {\r\n throw new Error(\"url不能为空!\");\r\n }\r\n const { data = {}, ...otherParams } = submitParams\r\n this.formRef.current?.onSubmit(\r\n submitUrl,\r\n {\r\n data: { ...formdata,...data },\r\n noUndefined: label == \"编辑\",\r\n ...otherParams,\r\n },\r\n (res: any) => {\r\n const { code } = res;\r\n this.setState({ loading: false });\r\n if (code === 200) {\r\n message.success(label + \"成功\");\r\n this.hide(true);\r\n callBack && callBack();\r\n return;\r\n }\r\n this.hide(false);\r\n }\r\n );\r\n }\r\n onSubmit() {\r\n const { onSubmit } = this.props;\r\n const { label, value, dictNames } = this.state;\r\n const formValue = this.formRef.current?.getFieldsValue();\r\n let valid = this.valid;\r\n this.formRef.current\r\n ?.validateFields(valid)\r\n .then(() => {\r\n this.setState({ loading: true });\r\n let data = { ...formValue, ...dictNames };\r\n if (!isEmptyObj(this.dateValueFormat)) { \r\n for (let key in this.dateValueFormat) {\r\n let olddata = data[key];\r\n if (olddata) {\r\n if (Array.isArray(olddata)) {\r\n data[key] = [\r\n dayjs(olddata[0]).format(this.dateValueFormat[key]),\r\n dayjs(olddata[1]).format(this.dateValueFormat[key]),\r\n ];\r\n } else {\r\n data[key] = dayjs(olddata).format(this.dateValueFormat[key]);\r\n }\r\n }\r\n }\r\n }\r\n if (label == \"编辑\") {\r\n data = { ...data, id: value?.id };\r\n }\r\n if (onSubmit) {\r\n onSubmit && onSubmit(data, label);\r\n return;\r\n }\r\n this.doSubmit(data, label);\r\n })\r\n .catch((errorInfo: any) => { });\r\n }\r\n valueChange({ type, dictName }, props, value, valueOption, data) {\r\n if (valueOption) {\r\n if (dictName) {\r\n const { dictNames } = this.state;\r\n const newNames = { ...dictNames } as any;\r\n newNames[dictName] = valueOption.label;\r\n this.setState({\r\n dictNames: newNames,\r\n });\r\n }\r\n }\r\n if (props.onChange) {\r\n props.onChange(value, valueOption, data);\r\n }\r\n }\r\n\r\n render() {\r\n const { formProps = [], otherProps = {} } = this.props;\r\n const { loading, label } = this.state;\r\n let modalProps = {\r\n title: label,\r\n onOk: this.onSubmit.bind(this),\r\n onCancel: this.hide.bind(this),\r\n okButtonProps: { loading: loading },\r\n centered: true,\r\n width: \"50vw\",\r\n } as any;\r\n\r\n const newValid: any[] = [];\r\n let drawerProps = {\r\n title: label,\r\n onOk: this.onSubmit.bind(this),\r\n onClose: this.hide.bind(this),\r\n width: \"50vw\",\r\n } as any;\r\n if (label == \"查看\") {\r\n modalProps.footer = null;\r\n drawerProps.footer = null;\r\n }\r\n this.dateValueFormat = {};\r\n this.dateFormat = {};\r\n\r\n return (\r\n <Form\r\n ref={this.formRef}\r\n showModel={this.props.formType}\r\n modalProps={{ ...modalProps }}\r\n drawerProps={{ ...drawerProps }}\r\n labelCol={{ flex: \"100px\" }}\r\n wrapperCol={{ flex: \"15vw\" }}\r\n onValuesChange={(changedValues, allValues) => {\r\n const { onFormChange } = this.props;\r\n onFormChange && onFormChange(changedValues, allValues);\r\n }}\r\n changeValid={this.props.changeValid}\r\n {...otherProps}\r\n >\r\n {/* <div> */}\r\n <div className={getLess(styles, \"form\")}>\r\n <Row gutter={24}>\r\n {formProps.map((item: any, index: number) => {\r\n const itemProps = item.props || {};\r\n if (itemProps.format || itemProps.valueFormat) {\r\n this.dateValueFormat[item.name] =\r\n itemProps.format || itemProps.valueFormat;\r\n }\r\n if (itemProps.format) {\r\n this.dateFormat[item.name] = itemProps.format;\r\n }\r\n let allowChars = item.props.allowChars || false;\r\n let props = {\r\n placeholder: `请输入${item.label}`,\r\n\r\n ...item.props,\r\n onChange: this.valueChange.bind(\r\n this,\r\n {\r\n type: item.type,\r\n dictName: item.dictName,\r\n },\r\n { ...item.props }\r\n ),\r\n };\r\n if (!item.type || item.type == \"Input\") {\r\n props.allowChars = true;\r\n props.showCount = true;\r\n }\r\n delete props.valueFormat;\r\n delete props.format;\r\n if (label == \"查看\") {\r\n props.disabled = true;\r\n }\r\n\r\n if (item.rules && item.rules.length > 0) {\r\n newValid.push(item.name);\r\n }\r\n if (index + 1 === formProps.length) {\r\n this.valid = newValid;\r\n }\r\n if (item.type !== 'Upload') {\r\n return (\r\n <Col span={item.span || 12} key={index}>\r\n <Form.Item\r\n label={item.label}\r\n name={item.name}\r\n rules={item.rules}\r\n allowChars={allowChars}\r\n componentName={item.type ? item.type : \"Input\"}\r\n >\r\n {getNode(item.type, {\r\n ...props,\r\n })}\r\n </Form.Item>\r\n </Col>\r\n );\r\n } else {\r\n return (\r\n <Col span={item.span || 12} key={index}>\r\n <Form.Item\r\n label={item.label}\r\n name={item.name}\r\n rules={item.rules}\r\n allowChars={allowChars}\r\n componentName={item.type ? item.type : \"Input\"}\r\n >\r\n <Upload\r\n fileList={this.state.fileList[item.name] || []}\r\n onListChange={(list) => {\r\n const { fileList } = this.state\r\n this.setState({\r\n fileList: { ...fileList, [item.name]: list }\r\n })\r\n }}\r\n {...props}>\r\n <Button>上传文件</Button>\r\n </Upload>\r\n </Form.Item>\r\n </Col>\r\n );\r\n }\r\n })}\r\n </Row>\r\n </div>\r\n </Form>\r\n );\r\n }\r\n}\r\n\r\nexport default EditorForm;\r\n"],"mappings":";;;;;;;;;AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,OAAOC,IAAI,MAAM,iBAAiB;AAClC,SAASC,OAAO,EAAEC,OAAO,QAAQ,aAAa;AAC9C,OAAOC,OAAO,MAAM,oBAAoB;AACxC,OAAOC,GAAG,MAAM,qBAAqB;AACrC,OAAOC,GAAG,MAAM,qBAAqB;AACrC,SAASC,UAAU,QAAQ,mBAAmB;AAE9C,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAOC,MAAM,MAAM,qBAAqB;AAExC,OAAOC,MAAM,MAAM,QAAQ;AAC3B,OAAOC,MAAM,MAAM,mBAAmB;AACtC,OAAOC,MAAM,MAAM,mBAAmB;AACtC,MAAMC,UAAU,SAASb,aAAa,CAAM;EAAAc,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,+BAChCjB,KAAK,CAACkB,SAAS,CAAM,CAAC;IAAAD,eAAA,gBACxB;MACNE,OAAO,EAAE,KAAK;MACdC,KAAK,EAAE,EAAE;MACTC,UAAU,EAAE,IAAI;MAChBC,KAAK,EAAE,CAAC,CAAQ;MAChBC,SAAS,EAAE,CAAC,CAAQ;MACpBC,QAAQ,EAAE,CAAC;IACb,CAAC;IAAAP,eAAA,gBACY,EAAE;IAAAA,eAAA,0BACG,CAAC,CAAC;IAAAA,eAAA,qBACP,CAAC,CAAC;EAAA;EACf;EACAQ,IAAIA,CAACC,QAAc,EAAsB;IAAA,IAApBC,UAAU,GAAAX,SAAA,CAAAY,MAAA,QAAAZ,SAAA,QAAAa,SAAA,GAAAb,SAAA,MAAG,KAAK;IACrC,IAAII,KAAK,GAAG,IAAI;IAChB,IAAIM,QAAQ,IAAIC,UAAU,IAAI,QAAQ,EAAE;MACtCP,KAAK,GAAG,IAAI;IACd,CAAC,MAAM,IAAIM,QAAQ,IAAIC,UAAU,IAAI,QAAQ,EAAE;MAC7CP,KAAK,GAAG,IAAI;IACd;IACA,IAAIM,QAAQ,EAAE;MACZ,IAAI,CAACI,QAAQ,CACX;QACEV,KAAK,EAAEA,KAAK;QACZE,KAAK,EAAEI;MACT,CAAC,EACD,MAAM;QAAA,IAAAK,qBAAA;QACJ,IAAIT,KAAK,GAAGX,MAAM,CAACqB,SAAS,CAACN,QAAQ,CAAC;QACtC,IAAI,CAAClB,UAAU,CAAC,IAAI,CAACyB,UAAU,CAAC,EAAE;UAChC,KAAK,IAAIC,GAAG,IAAI,IAAI,CAACD,UAAU,EAAE;YAC/B,IAAIE,OAAO,GAAGb,KAAK,CAACY,GAAG,CAAC;YACxB,IAAIC,OAAO,EAAE;cACX,IAAIC,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,EAAE;gBAC1Bb,KAAK,CAACY,GAAG,CAAC,GAAG,CACXzB,KAAK,CAAC0B,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAACF,UAAU,CAACC,GAAG,CAAC,CAAC,EACvCzB,KAAK,CAAC0B,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAACF,UAAU,CAACC,GAAG,CAAC,CAAC,CACxC;cACH,CAAC,MAAM;gBACLZ,KAAK,CAACY,GAAG,CAAC,GAAGzB,KAAK,CAAC0B,OAAO,EAAE,IAAI,CAACF,UAAU,CAACC,GAAG,CAAC,CAAC;cACnD;YACF;UACF;QACF;QACA;QACA,CAAAH,qBAAA,OAAI,CAACO,OAAO,CAACC,OAAO,cAAAR,qBAAA,eAApBA,qBAAA,CAAsBS,QAAQ,CAAClB,KAAK,CAAC;MACvC,CACF,CAAC;IACH,CAAC,MAAM;MACL,IAAI,CAACQ,QAAQ,CACX;QACEV,KAAK,EAAEA;MACT,CAAC,EACD,MAAM;QAAA,IAAAqB,sBAAA;QACJ,CAAAA,sBAAA,OAAI,CAACH,OAAO,CAACC,OAAO,cAAAE,sBAAA,eAApBA,sBAAA,CAAsBD,QAAQ,CAAC,IAAI,CAACE,KAAK,CAACC,YAAY,CAAC;MACzD,CACF,CAAC;IACH;EACF;EACAC,IAAIA,CAAA,EAAc;IAAA,IAAAC,sBAAA;IAAA,IAAbD,IAAI,GAAA5B,SAAA,CAAAY,MAAA,QAAAZ,SAAA,QAAAa,SAAA,GAAAb,SAAA,MAAG,IAAI;IACd,MAAM;MAAE8B;IAAW,CAAC,GAAG,IAAI,CAACJ,KAAK;IACjC,IAAII,UAAU,EAAE;MACdA,UAAU,IAAIA,UAAU,CAAC,CAAC;MAC1B;IACF;IACA,IAAI,CAAChB,QAAQ,CAAC;MAAEX,OAAO,EAAE;IAAM,CAAC,CAAC;IACjCyB,IAAI,MAAAC,sBAAA,GAAI,IAAI,CAACP,OAAO,CAACC,OAAO,cAAAM,sBAAA,uBAApBA,sBAAA,CAAsBE,QAAQ,CAAC,CAAC;EAC1C;EACAA,QAAQA,CAAA,EAAG;IAAA,IAAAC,sBAAA;IACT,IAAI,CAAClB,QAAQ,CAAC;MAAEX,OAAO,EAAE;IAAM,CAAC,CAAC;IACjC,CAAA6B,sBAAA,OAAI,CAACV,OAAO,CAACC,OAAO,cAAAS,sBAAA,eAApBA,sBAAA,CAAsBD,QAAQ,CAAC,CAAC;EAClC;EACAE,UAAUA,CAAC9B,OAAgB,EAAE;IAC3B,IAAI,CAACW,QAAQ,CAAC;MAAEX,OAAO,EAAEA;IAAQ,CAAC,CAAC;EACrC;EACA+B,cAAcA,CAACC,MAAM,EAAE;IAAA,IAAAC,sBAAA;IACrB,CAAAA,sBAAA,OAAI,CAACd,OAAO,CAACC,OAAO,cAAAa,sBAAA,eAApBA,sBAAA,CAAsBF,cAAc,CAACC,MAAM,CAAC;EAC9C;EACAE,cAAcA,CAAA,EAAG;IAAA,IAAAC,sBAAA;IACf,QAAAA,sBAAA,GAAO,IAAI,CAAChB,OAAO,CAACC,OAAO,cAAAe,sBAAA,uBAApBA,sBAAA,CAAsBD,cAAc,CAAC,CAAC;EAC/C;EAEAE,QAAQA,CAACC,QAAQ,EAAEpC,KAAK,EAAE;IAAA,IAAAqC,sBAAA;IACxB,MAAM;MAAEC,SAAS;MAAEC,YAAY;MAAEC;IAAS,CAAC,GAAG,IAAI,CAAClB,KAAK;IACxD,IAAI,CAACgB,SAAS,EAAE;MACd,MAAM,IAAIG,KAAK,CAAC,UAAU,CAAC;IAC7B;IACA,MAAM;QAAEC,IAAI,GAAG,CAAC;MAAkB,CAAC,GAAGH,YAAY;MAA5BI,WAAW,GAAAC,wBAAA,CAAKL,YAAY,EAAAM,SAAA;IAClD,CAAAR,sBAAA,OAAI,CAACnB,OAAO,CAACC,OAAO,cAAAkB,sBAAA,eAApBA,sBAAA,CAAsBS,QAAQ,CAC5BR,SAAS,EAAAS,aAAA;MAEPL,IAAI,EAAAK,aAAA,CAAAA,aAAA,KAAOX,QAAQ,GAAIM,IAAI,CAAE;MAC7BM,WAAW,EAAEhD,KAAK,IAAI;IAAI,GACvB2C,WAAW,GAEfM,GAAQ,IAAK;MACZ,MAAM;QAAEC;MAAK,CAAC,GAAGD,GAAG;MACpB,IAAI,CAACvC,QAAQ,CAAC;QAAEX,OAAO,EAAE;MAAM,CAAC,CAAC;MACjC,IAAImD,IAAI,KAAK,GAAG,EAAE;QAChBjE,OAAO,CAACkE,OAAO,CAACnD,KAAK,GAAG,IAAI,CAAC;QAC7B,IAAI,CAACwB,IAAI,CAAC,IAAI,CAAC;QACfgB,QAAQ,IAAIA,QAAQ,CAAC,CAAC;QACtB;MACF;MACA,IAAI,CAAChB,IAAI,CAAC,KAAK,CAAC;IAClB,CACF,CAAC;EACH;EACAsB,QAAQA,CAAA,EAAG;IAAA,IAAAM,sBAAA,EAAAC,sBAAA;IACT,MAAM;MAAEP;IAAS,CAAC,GAAG,IAAI,CAACxB,KAAK;IAC/B,MAAM;MAAEtB,KAAK;MAAEE,KAAK;MAAEC;IAAU,CAAC,GAAG,IAAI,CAACmD,KAAK;IAC9C,MAAMC,SAAS,IAAAH,sBAAA,GAAG,IAAI,CAAClC,OAAO,CAACC,OAAO,cAAAiC,sBAAA,uBAApBA,sBAAA,CAAsBnB,cAAc,CAAC,CAAC;IACxD,IAAIuB,KAAK,GAAG,IAAI,CAACA,KAAK;IACtB,CAAAH,sBAAA,OAAI,CAACnC,OAAO,CAACC,OAAO,cAAAkC,sBAAA,eAApBA,sBAAA,CACII,cAAc,CAACD,KAAK,CAAC,CACtBE,IAAI,CAAC,MAAM;MACV,IAAI,CAAChD,QAAQ,CAAC;QAAEX,OAAO,EAAE;MAAK,CAAC,CAAC;MAChC,IAAI2C,IAAI,GAAAK,aAAA,CAAAA,aAAA,KAAQQ,SAAS,GAAKpD,SAAS,CAAE;MACzC,IAAI,CAACf,UAAU,CAAC,IAAI,CAACuE,eAAe,CAAC,EAAE;QACrC,KAAK,IAAI7C,GAAG,IAAI,IAAI,CAAC6C,eAAe,EAAE;UACpC,IAAI5C,OAAO,GAAG2B,IAAI,CAAC5B,GAAG,CAAC;UACvB,IAAIC,OAAO,EAAE;YACX,IAAIC,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,EAAE;cAC1B2B,IAAI,CAAC5B,GAAG,CAAC,GAAG,CACVzB,KAAK,CAAC0B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC6C,MAAM,CAAC,IAAI,CAACD,eAAe,CAAC7C,GAAG,CAAC,CAAC,EACnDzB,KAAK,CAAC0B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC6C,MAAM,CAAC,IAAI,CAACD,eAAe,CAAC7C,GAAG,CAAC,CAAC,CACpD;YACH,CAAC,MAAM;cACL4B,IAAI,CAAC5B,GAAG,CAAC,GAAGzB,KAAK,CAAC0B,OAAO,CAAC,CAAC6C,MAAM,CAAC,IAAI,CAACD,eAAe,CAAC7C,GAAG,CAAC,CAAC;YAC9D;UACF;QACF;MACF;MACA,IAAId,KAAK,IAAI,IAAI,EAAE;QACjB0C,IAAI,GAAAK,aAAA,CAAAA,aAAA,KAAQL,IAAI;UAAEmB,EAAE,EAAE3D,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAE2D;QAAE,EAAE;MACnC;MACA,IAAIf,QAAQ,EAAE;QACZA,QAAQ,IAAIA,QAAQ,CAACJ,IAAI,EAAE1C,KAAK,CAAC;QACjC;MACF;MACA,IAAI,CAACmC,QAAQ,CAACO,IAAI,EAAE1C,KAAK,CAAC;IAC5B,CAAC,CAAC,CACD8D,KAAK,CAAEC,SAAc,IAAK,CAAE,CAAC,CAAC;EACnC;EACAC,WAAWA,CAAAC,IAAA,EAAqB3C,KAAK,EAAEpB,KAAK,EAAEgE,WAAW,EAAExB,IAAI,EAAE;IAAA,IAArD;MAAEyB,IAAI;MAAEC;IAAS,CAAC,GAAAH,IAAA;IAC5B,IAAIC,WAAW,EAAE;MACf,IAAIE,QAAQ,EAAE;QACZ,MAAM;UAAEjE;QAAU,CAAC,GAAG,IAAI,CAACmD,KAAK;QAChC,MAAMe,QAAQ,GAAAtB,aAAA,KAAQ5C,SAAS,CAAS;QACxCkE,QAAQ,CAACD,QAAQ,CAAC,GAAGF,WAAW,CAAClE,KAAK;QACtC,IAAI,CAACU,QAAQ,CAAC;UACZP,SAAS,EAAEkE;QACb,CAAC,CAAC;MACJ;IACF;IACA,IAAI/C,KAAK,CAACgD,QAAQ,EAAE;MAClBhD,KAAK,CAACgD,QAAQ,CAACpE,KAAK,EAAEgE,WAAW,EAAExB,IAAI,CAAC;IAC1C;EACF;EAEA6B,MAAMA,CAAA,EAAG;IACP,MAAM;MAAEC,SAAS,GAAG,EAAE;MAAEC,UAAU,GAAG,CAAC;IAAE,CAAC,GAAG,IAAI,CAACnD,KAAK;IACtD,MAAM;MAAEvB,OAAO;MAAEC;IAAM,CAAC,GAAG,IAAI,CAACsD,KAAK;IACrC,IAAIoB,UAAU,GAAG;MACfC,KAAK,EAAE3E,KAAK;MACZ4E,IAAI,EAAE,IAAI,CAAC9B,QAAQ,CAAC+B,IAAI,CAAC,IAAI,CAAC;MAC9BC,QAAQ,EAAE,IAAI,CAACtD,IAAI,CAACqD,IAAI,CAAC,IAAI,CAAC;MAC9BE,aAAa,EAAE;QAAEhF,OAAO,EAAEA;MAAQ,CAAC;MACnCiF,QAAQ,EAAE,IAAI;MACdC,KAAK,EAAE;IACT,CAAQ;IAER,MAAMC,QAAe,GAAG,EAAE;IAC1B,IAAIC,WAAW,GAAG;MAChBR,KAAK,EAAE3E,KAAK;MACZ4E,IAAI,EAAE,IAAI,CAAC9B,QAAQ,CAAC+B,IAAI,CAAC,IAAI,CAAC;MAC9BO,OAAO,EAAE,IAAI,CAAC5D,IAAI,CAACqD,IAAI,CAAC,IAAI,CAAC;MAC7BI,KAAK,EAAE;IACT,CAAQ;IACR,IAAIjF,KAAK,IAAI,IAAI,EAAE;MACjB0E,UAAU,CAACW,MAAM,GAAG,IAAI;MACxBF,WAAW,CAACE,MAAM,GAAG,IAAI;IAC3B;IACA,IAAI,CAAC1B,eAAe,GAAG,CAAC,CAAC;IACzB,IAAI,CAAC9C,UAAU,GAAG,CAAC,CAAC;IAEpB,oBACEjC,KAAA,CAAA0G,aAAA,CAACxG,IAAI,EAAAyG,QAAA;MACHC,GAAG,EAAE,IAAI,CAACtE,OAAQ;MAClBuE,SAAS,EAAE,IAAI,CAACnE,KAAK,CAACoE,QAAS;MAC/BhB,UAAU,EAAA3B,aAAA,KAAO2B,UAAU,CAAG;MAC9BS,WAAW,EAAApC,aAAA,KAAOoC,WAAW,CAAG;MAChCQ,QAAQ,EAAE;QAAEC,IAAI,EAAE;MAAQ,CAAE;MAC5BC,UAAU,EAAE;QAAED,IAAI,EAAE;MAAO,CAAE;MAC7BE,cAAc,EAAEA,CAACC,aAAa,EAAEC,SAAS,KAAK;QAC5C,MAAM;UAAEC;QAAa,CAAC,GAAG,IAAI,CAAC3E,KAAK;QACnC2E,YAAY,IAAIA,YAAY,CAACF,aAAa,EAAEC,SAAS,CAAC;MACxD,CAAE;MACFE,WAAW,EAAE,IAAI,CAAC5E,KAAK,CAAC4E;IAAY,GAChCzB,UAAU,gBAGd7F,KAAA,CAAA0G,aAAA;MAAKa,SAAS,EAAEpH,OAAO,CAACO,MAAM,EAAE,MAAM;IAAE,gBACtCV,KAAA,CAAA0G,aAAA,CAACnG,GAAG;MAACiH,MAAM,EAAE;IAAG,GACb5B,SAAS,CAAC6B,GAAG,CAAC,CAACC,IAAS,EAAEC,KAAa,KAAK;MAC3C,MAAMC,SAAS,GAAGF,IAAI,CAAChF,KAAK,IAAI,CAAC,CAAC;MAClC,IAAIkF,SAAS,CAAC5C,MAAM,IAAI4C,SAAS,CAACC,WAAW,EAAE;QAC7C,IAAI,CAAC9C,eAAe,CAAC2C,IAAI,CAACI,IAAI,CAAC,GAC7BF,SAAS,CAAC5C,MAAM,IAAI4C,SAAS,CAACC,WAAW;MAC7C;MACA,IAAID,SAAS,CAAC5C,MAAM,EAAE;QACpB,IAAI,CAAC/C,UAAU,CAACyF,IAAI,CAACI,IAAI,CAAC,GAAGF,SAAS,CAAC5C,MAAM;MAC/C;MACA,IAAI+C,UAAU,GAAGL,IAAI,CAAChF,KAAK,CAACqF,UAAU,IAAI,KAAK;MAC/C,IAAIrF,KAAK,GAAAyB,aAAA,CAAAA,aAAA;QACP6D,WAAW,uBAAAC,MAAA,CAAQP,IAAI,CAACtG,KAAK;MAAE,GAE5BsG,IAAI,CAAChF,KAAK;QACbgD,QAAQ,EAAE,IAAI,CAACN,WAAW,CAACa,IAAI,CAC7B,IAAI,EACJ;UACEV,IAAI,EAAEmC,IAAI,CAACnC,IAAI;UACfC,QAAQ,EAAEkC,IAAI,CAAClC;QACjB,CAAC,EAAArB,aAAA,KACIuD,IAAI,CAAChF,KAAK,CACjB;MAAC,EACF;MACD,IAAI,CAACgF,IAAI,CAACnC,IAAI,IAAImC,IAAI,CAACnC,IAAI,IAAI,OAAO,EAAE;QACtC7C,KAAK,CAACqF,UAAU,GAAG,IAAI;QACvBrF,KAAK,CAACwF,SAAS,GAAG,IAAI;MACxB;MACA,OAAOxF,KAAK,CAACmF,WAAW;MACxB,OAAOnF,KAAK,CAACsC,MAAM;MACnB,IAAI5D,KAAK,IAAI,IAAI,EAAE;QACjBsB,KAAK,CAACyF,QAAQ,GAAG,IAAI;MACvB;MAEA,IAAIT,IAAI,CAACU,KAAK,IAAIV,IAAI,CAACU,KAAK,CAACxG,MAAM,GAAG,CAAC,EAAE;QACvC0E,QAAQ,CAAC+B,IAAI,CAACX,IAAI,CAACI,IAAI,CAAC;MAC1B;MACA,IAAIH,KAAK,GAAG,CAAC,KAAK/B,SAAS,CAAChE,MAAM,EAAE;QAClC,IAAI,CAACgD,KAAK,GAAG0B,QAAQ;MACvB;MACA,IAAIoB,IAAI,CAACnC,IAAI,KAAK,QAAQ,EAAE;QAC1B,oBACEvF,KAAA,CAAA0G,aAAA,CAACpG,GAAG;UAACgI,IAAI,EAAEZ,IAAI,CAACY,IAAI,IAAI,EAAG;UAACpG,GAAG,EAAEyF;QAAM,gBACrC3H,KAAA,CAAA0G,aAAA,CAACxG,IAAI,CAACqI,IAAI;UACRnH,KAAK,EAAEsG,IAAI,CAACtG,KAAM;UAClB0G,IAAI,EAAEJ,IAAI,CAACI,IAAK;UAChBM,KAAK,EAAEV,IAAI,CAACU,KAAM;UAClBL,UAAU,EAAEA,UAAW;UACvBS,aAAa,EAAEd,IAAI,CAACnC,IAAI,GAAGmC,IAAI,CAACnC,IAAI,GAAG;QAAQ,GAE9CnF,OAAO,CAACsH,IAAI,CAACnC,IAAI,EAAApB,aAAA,KACbzB,KAAK,CACT,CACQ,CACR,CAAC;MAEV,CAAC,MAAM;QACL,oBACE1C,KAAA,CAAA0G,aAAA,CAACpG,GAAG;UAACgI,IAAI,EAAEZ,IAAI,CAACY,IAAI,IAAI,EAAG;UAACpG,GAAG,EAAEyF;QAAM,gBACrC3H,KAAA,CAAA0G,aAAA,CAACxG,IAAI,CAACqI,IAAI;UACRnH,KAAK,EAAEsG,IAAI,CAACtG,KAAM;UAClB0G,IAAI,EAAEJ,IAAI,CAACI,IAAK;UAChBM,KAAK,EAAEV,IAAI,CAACU,KAAM;UAClBL,UAAU,EAAEA,UAAW;UACvBS,aAAa,EAAEd,IAAI,CAACnC,IAAI,GAAGmC,IAAI,CAACnC,IAAI,GAAG;QAAQ,gBAE/CvF,KAAA,CAAA0G,aAAA,CAAC7F,MAAM,EAAA8F,QAAA;UACLnF,QAAQ,EAAE,IAAI,CAACkD,KAAK,CAAClD,QAAQ,CAACkG,IAAI,CAACI,IAAI,CAAC,IAAI,EAAG;UAC/CW,YAAY,EAAGC,IAAI,IAAK;YACtB,MAAM;cAAElH;YAAS,CAAC,GAAG,IAAI,CAACkD,KAAK;YAC/B,IAAI,CAAC5C,QAAQ,CAAC;cACZN,QAAQ,EAAA2C,aAAA,CAAAA,aAAA,KAAO3C,QAAQ;gBAAE,CAACkG,IAAI,CAACI,IAAI,GAAGY;cAAI;YAC5C,CAAC,CAAC;UACJ;QAAE,GACEhG,KAAK,gBACT1C,KAAA,CAAA0G,aAAA,CAAC9F,MAAM,QAAC,0BAAY,CACd,CACC,CACR,CAAC;MAEV;IACF,CAAC,CACE,CACF,CACD,CAAC;EAEX;AACF;AAEA,eAAeE,UAAU"}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
import React, { PureComponent, ReactNode } from "react";
|
|
2
|
-
import "./index.module.less";
|
|
3
|
-
import { StoreProps } from "@bj-nsc/msn";
|
|
4
|
-
import { IFormProps } from "../../base/form/Form";
|
|
5
|
-
import { PaginationProps } from "antd";
|
|
6
|
-
interface TableProps {
|
|
7
|
-
actionColumn?: boolean;
|
|
8
|
-
store?: StoreProps;
|
|
9
|
-
filterColumn?: boolean;
|
|
10
|
-
showRowSelection?: boolean;
|
|
11
|
-
pagination?: boolean | PaginationProps;
|
|
12
|
-
columnOrder?: boolean;
|
|
13
|
-
[propsName: string]: any;
|
|
14
|
-
}
|
|
15
|
-
interface TreeProps {
|
|
16
|
-
store?: StoreProps;
|
|
17
|
-
showSearch?: boolean;
|
|
18
|
-
searchKey?: string;
|
|
19
|
-
searchField?: string;
|
|
20
|
-
titleAlias?: string;
|
|
21
|
-
nodePorps?: object;
|
|
22
|
-
parantSelect?: boolean;
|
|
23
|
-
[propsName: string]: any;
|
|
24
|
-
}
|
|
25
|
-
interface FormProps extends IFormProps {
|
|
26
|
-
}
|
|
27
|
-
interface NSCBaseBageProps {
|
|
28
|
-
showSearch?: boolean;
|
|
29
|
-
tableProps?: TableProps;
|
|
30
|
-
treeProps?: TreeProps;
|
|
31
|
-
submitParams?: Object;
|
|
32
|
-
submitUrl?: string;
|
|
33
|
-
onSubmit?: (value?: any, label?: any) => void;
|
|
34
|
-
columns: Array<Object>;
|
|
35
|
-
showLeft?: boolean;
|
|
36
|
-
showToolButton?: boolean;
|
|
37
|
-
editorForm?: boolean;
|
|
38
|
-
deleteUrl?: string;
|
|
39
|
-
onDelete?: (selectedKeys?: Array<string>) => void;
|
|
40
|
-
deletePosition?: "toolbar" | "row";
|
|
41
|
-
deleteParams?: Object;
|
|
42
|
-
children?: React.ReactNode;
|
|
43
|
-
onSearch?: (value?: any) => void;
|
|
44
|
-
onReset?: () => void;
|
|
45
|
-
initData?: any;
|
|
46
|
-
buttons?: Array<string>;
|
|
47
|
-
onShowForm?: (value?: any, editorFlag?: string) => void;
|
|
48
|
-
onHideForm?: () => void;
|
|
49
|
-
onFormChange?: (changedValues?: any, allValues?: any) => void;
|
|
50
|
-
formType?: "modal" | "drawer";
|
|
51
|
-
formChangeValid?: boolean;
|
|
52
|
-
className?: any;
|
|
53
|
-
toolButtonPosition?: "right" | "buttom";
|
|
54
|
-
pageTitle?: string | ReactNode;
|
|
55
|
-
formProps?: FormProps;
|
|
56
|
-
actionPorps?: {
|
|
57
|
-
textAlign?: string;
|
|
58
|
-
showIcon?: boolean;
|
|
59
|
-
width?: number;
|
|
60
|
-
};
|
|
61
|
-
searchFormProps?: {
|
|
62
|
-
wrapperCol?: any;
|
|
63
|
-
labelCol?: any;
|
|
64
|
-
};
|
|
65
|
-
onTreeSelect?: (value?: any, editorFlag?: string) => void;
|
|
66
|
-
onCallBacks?: {
|
|
67
|
-
treeSelectCallBack?: any;
|
|
68
|
-
onSearchCallBack?: any;
|
|
69
|
-
onSumbitCallBack?: any;
|
|
70
|
-
onDeleteCallBack?: any;
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
declare class BasePage extends PureComponent<NSCBaseBageProps, any> {
|
|
74
|
-
tableRef: React.RefObject<any>;
|
|
75
|
-
treeRef: React.RefObject<any>;
|
|
76
|
-
searchRef: React.RefObject<any>;
|
|
77
|
-
editorRef: React.RefObject<any>;
|
|
78
|
-
dateFormat: any;
|
|
79
|
-
constructor(props: any);
|
|
80
|
-
componentDidMount(): void;
|
|
81
|
-
setSearchParams(params: any, callBack: any): void;
|
|
82
|
-
onSelect: (checkedTreeKeys: any) => void;
|
|
83
|
-
showForm(value?: any, editorflag?: string): void;
|
|
84
|
-
hideForm(): void;
|
|
85
|
-
setLoading(loading: boolean): void;
|
|
86
|
-
setEditFormValues(value: any): void;
|
|
87
|
-
getEditFormValues(): any;
|
|
88
|
-
onDelete(data?: any): void;
|
|
89
|
-
tableLoad(params: any, requestConfig?: {}): void;
|
|
90
|
-
onSearch(params: any): void;
|
|
91
|
-
tableReload(params?: {}, autoLoad?: boolean): void;
|
|
92
|
-
getSelectedRowKeys(): any;
|
|
93
|
-
getSelectedRowDatas(): any;
|
|
94
|
-
resetSelectedRowKeys(): any;
|
|
95
|
-
getSearchValues(): any;
|
|
96
|
-
getChildrenData(data: any, keys?: any[]): any[];
|
|
97
|
-
renderToolButtons(toolbuttons: any, marginflag?: boolean): React.JSX.Element;
|
|
98
|
-
renderCloumnButton(columnButtons: any, record: any): React.JSX.Element[];
|
|
99
|
-
treeSelect(selectedKeys: any, obj: any): void;
|
|
100
|
-
resetSearch(): void;
|
|
101
|
-
getText(props: any, text: any): any;
|
|
102
|
-
setTableData(data: any): void;
|
|
103
|
-
setTreeData(data: any): void;
|
|
104
|
-
getSelectedKey: (selected: any) => any[];
|
|
105
|
-
render(): React.JSX.Element;
|
|
106
|
-
}
|
|
107
|
-
export default BasePage;
|