@byteluck-fe/model-driven-core 2.7.0-alpha.0 → 2.7.0-alpha.1
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/esm/api-doc-index.js +4 -4
- package/dist/esm/common/BaseControl/designer.js +305 -225
- package/dist/esm/common/BaseControl/index.js +7 -7
- package/dist/esm/common/BaseControl/property.js +13 -10
- package/dist/esm/common/BaseControl/runtime.js +16 -16
- package/dist/esm/common/ColumnControl/designer.js +5 -5
- package/dist/esm/common/ColumnControl/index.js +6 -6
- package/dist/esm/common/ColumnControl/property.js +36 -36
- package/dist/esm/common/ColumnControl/runtime.js +5 -5
- package/dist/esm/common/ControlArray.js +8 -8
- package/dist/esm/common/FormControl/designer.js +8 -8
- package/dist/esm/common/FormControl/index.js +6 -6
- package/dist/esm/common/FormControl/property.js +66 -66
- package/dist/esm/common/FormControl/runtime.js +5 -5
- package/dist/esm/common/LayoutControl/designer.js +196 -102
- package/dist/esm/common/LayoutControl/index.js +6 -6
- package/dist/esm/common/LayoutControl/property.js +3 -3
- package/dist/esm/common/LayoutControl/runtime.js +7 -7
- package/dist/esm/common/ListControl/designer.js +184 -84
- package/dist/esm/common/ListControl/index.js +6 -6
- package/dist/esm/common/ListControl/property.js +5 -5
- package/dist/esm/common/ListControl/runtime.js +7 -7
- package/dist/esm/common/SearchViewControl/designer.js +5 -5
- package/dist/esm/common/SearchViewControl/index.js +6 -6
- package/dist/esm/common/SearchViewControl/property.js +4 -4
- package/dist/esm/common/SearchViewControl/runtime.js +5 -5
- package/dist/esm/common/Validator.js +5 -5
- package/dist/esm/common/WrapControl/designer.js +5 -5
- package/dist/esm/common/WrapControl/index.js +6 -6
- package/dist/esm/common/WrapControl/property.js +3 -3
- package/dist/esm/common/WrapControl/runtime.js +5 -5
- package/dist/esm/common/controlHooksEmitter.js +1 -1
- package/dist/esm/common/index.js +12 -12
- package/dist/esm/common/initLinkOperationRules.js +6 -6
- package/dist/esm/common/initOptionAndDataSourceRules.js +82 -82
- package/dist/esm/framework/RegisterControls.js +122 -179
- package/dist/esm/framework/index.js +336 -333
- package/dist/esm/index.js +3 -3
- package/dist/index.umd.js +1 -1
- package/dist/types/common/Validator.d.ts +1 -1
- package/dist/types/common/controlHooksEmitter.d.ts +1 -1
- package/dist/types/type.d.ts +23 -23
- package/package.json +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export { default as BaseControlProperty } from
|
|
3
|
-
export { default as ColumnControlProperty } from
|
|
4
|
-
export { default as FormControlProperty } from
|
|
1
|
+
export * from "./framework/index";
|
|
2
|
+
export { default as BaseControlProperty } from "./common/BaseControl/property";
|
|
3
|
+
export { default as ColumnControlProperty } from "./common/ColumnControl/property";
|
|
4
|
+
export { default as FormControlProperty } from "./common/FormControl/property";
|
|
@@ -72,7 +72,7 @@ function _defineProperty(obj, key, value) {
|
|
|
72
72
|
}
|
|
73
73
|
function _instanceof(left, right) {
|
|
74
74
|
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
75
|
-
return right[Symbol.hasInstance](left);
|
|
75
|
+
return !!right[Symbol.hasInstance](left);
|
|
76
76
|
} else {
|
|
77
77
|
return left instanceof right;
|
|
78
78
|
}
|
|
@@ -102,7 +102,7 @@ function _objectSpread(target) {
|
|
|
102
102
|
return target;
|
|
103
103
|
}
|
|
104
104
|
function _toArray(arr) {
|
|
105
|
-
return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr
|
|
105
|
+
return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest();
|
|
106
106
|
}
|
|
107
107
|
function _toConsumableArray(arr) {
|
|
108
108
|
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
|
|
@@ -115,11 +115,105 @@ function _unsupportedIterableToArray(o, minLen) {
|
|
|
115
115
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
116
116
|
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
|
117
117
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
118
|
+
var __generator = this && this.__generator || function(thisArg, body) {
|
|
119
|
+
var f, y, t, g, _ = {
|
|
120
|
+
label: 0,
|
|
121
|
+
sent: function() {
|
|
122
|
+
if (t[0] & 1) throw t[1];
|
|
123
|
+
return t[1];
|
|
124
|
+
},
|
|
125
|
+
trys: [],
|
|
126
|
+
ops: []
|
|
127
|
+
};
|
|
128
|
+
return g = {
|
|
129
|
+
next: verb(0),
|
|
130
|
+
"throw": verb(1),
|
|
131
|
+
"return": verb(2)
|
|
132
|
+
}, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
133
|
+
return this;
|
|
134
|
+
}), g;
|
|
135
|
+
function verb(n) {
|
|
136
|
+
return function(v) {
|
|
137
|
+
return step([
|
|
138
|
+
n,
|
|
139
|
+
v
|
|
140
|
+
]);
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
function step(op) {
|
|
144
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
145
|
+
while(_)try {
|
|
146
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
147
|
+
if (y = 0, t) op = [
|
|
148
|
+
op[0] & 2,
|
|
149
|
+
t.value
|
|
150
|
+
];
|
|
151
|
+
switch(op[0]){
|
|
152
|
+
case 0:
|
|
153
|
+
case 1:
|
|
154
|
+
t = op;
|
|
155
|
+
break;
|
|
156
|
+
case 4:
|
|
157
|
+
_.label++;
|
|
158
|
+
return {
|
|
159
|
+
value: op[1],
|
|
160
|
+
done: false
|
|
161
|
+
};
|
|
162
|
+
case 5:
|
|
163
|
+
_.label++;
|
|
164
|
+
y = op[1];
|
|
165
|
+
op = [
|
|
166
|
+
0
|
|
167
|
+
];
|
|
168
|
+
continue;
|
|
169
|
+
case 7:
|
|
170
|
+
op = _.ops.pop();
|
|
171
|
+
_.trys.pop();
|
|
172
|
+
continue;
|
|
173
|
+
default:
|
|
174
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
175
|
+
_ = 0;
|
|
176
|
+
continue;
|
|
177
|
+
}
|
|
178
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
179
|
+
_.label = op[1];
|
|
180
|
+
break;
|
|
181
|
+
}
|
|
182
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
183
|
+
_.label = t[1];
|
|
184
|
+
t = op;
|
|
185
|
+
break;
|
|
186
|
+
}
|
|
187
|
+
if (t && _.label < t[2]) {
|
|
188
|
+
_.label = t[2];
|
|
189
|
+
_.ops.push(op);
|
|
190
|
+
break;
|
|
191
|
+
}
|
|
192
|
+
if (t[2]) _.ops.pop();
|
|
193
|
+
_.trys.pop();
|
|
194
|
+
continue;
|
|
195
|
+
}
|
|
196
|
+
op = body.call(thisArg, _);
|
|
197
|
+
} catch (e) {
|
|
198
|
+
op = [
|
|
199
|
+
6,
|
|
200
|
+
e
|
|
201
|
+
];
|
|
202
|
+
y = 0;
|
|
203
|
+
} finally{
|
|
204
|
+
f = t = 0;
|
|
205
|
+
}
|
|
206
|
+
if (op[0] & 5) throw op[1];
|
|
207
|
+
return {
|
|
208
|
+
value: op[0] ? op[1] : void 0,
|
|
209
|
+
done: true
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
};
|
|
213
|
+
import Property from "./property";
|
|
214
|
+
import { genNonDuplicateId, JSONCopy, referenceError, updateValueFromKeys } from "@byteluck-fe/model-driven-shared";
|
|
215
|
+
import { createValidator } from "../Validator";
|
|
216
|
+
import { controlHooksEmitter } from "../controlHooksEmitter";
|
|
123
217
|
var Control = /*#__PURE__*/ function _target() {
|
|
124
218
|
"use strict";
|
|
125
219
|
function Control(props) {
|
|
@@ -131,243 +225,229 @@ var Control = /*#__PURE__*/ function _target() {
|
|
|
131
225
|
this.parent = null;
|
|
132
226
|
this.updateSetting = updateSetting;
|
|
133
227
|
this.removeSetting = removeSetting;
|
|
134
|
-
this._callControlHooks(
|
|
135
|
-
var
|
|
228
|
+
this._callControlHooks("preInstance", props);
|
|
229
|
+
var _ref = _instanceof(this, Control) ? this.constructor : void 0, controlName = _ref.controlName, controlIcon = _ref.controlIcon, controlType = _ref.controlType, controlFieldType = _ref.controlFieldType, controlEventKeys = _ref.controlEventKeys, controlCustomEvents = _ref.controlCustomEvents, name = _ref.name, setting = _ref.setting;
|
|
136
230
|
if (!(controlName && controlIcon && controlType)) {
|
|
137
231
|
referenceError("The ".concat(name, " controlName,controlIcon,controlType is not define"));
|
|
138
232
|
}
|
|
139
|
-
var
|
|
140
|
-
this.id = (
|
|
233
|
+
var _props_id;
|
|
234
|
+
this.id = (_props_id = props === null || props === void 0 ? void 0 : props.id) !== null && _props_id !== void 0 ? _props_id : genNonDuplicateId(10);
|
|
141
235
|
this.name = controlName;
|
|
142
236
|
this.icon = controlIcon;
|
|
143
|
-
var
|
|
144
|
-
this.type = (
|
|
237
|
+
var _props_type;
|
|
238
|
+
this.type = (_props_type = props === null || props === void 0 ? void 0 : props.type) !== null && _props_type !== void 0 ? _props_type : controlType;
|
|
145
239
|
this.props = new Property(props === null || props === void 0 ? void 0 : props.props, (_instanceof(this, Control) ? this.constructor : void 0).controlName);
|
|
146
|
-
var
|
|
147
|
-
this.controlType = (
|
|
240
|
+
var _props_controlType;
|
|
241
|
+
this.controlType = (_props_controlType = props === null || props === void 0 ? void 0 : props.controlType) !== null && _props_controlType !== void 0 ? _props_controlType : "base";
|
|
148
242
|
this.setting = JSONCopy(setting);
|
|
149
|
-
var
|
|
150
|
-
this.fieldType = (
|
|
243
|
+
var _props_fieldType;
|
|
244
|
+
this.fieldType = (_props_fieldType = props === null || props === void 0 ? void 0 : props.fieldType) !== null && _props_fieldType !== void 0 ? _props_fieldType : controlFieldType;
|
|
151
245
|
this.eventKeys = JSONCopy(controlEventKeys);
|
|
152
246
|
this.customEvents = JSONCopy(controlCustomEvents);
|
|
153
247
|
Promise.resolve().then(function() {
|
|
154
|
-
_this._callControlHooks(
|
|
248
|
+
_this._callControlHooks("postInstance", props);
|
|
155
249
|
});
|
|
156
250
|
}
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
251
|
+
var _proto = Control.prototype;
|
|
252
|
+
_proto._callControlHooks = function _callControlHooks() {
|
|
253
|
+
for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
254
|
+
args[_key] = arguments[_key];
|
|
255
|
+
}
|
|
256
|
+
var _controlHooksEmitter;
|
|
257
|
+
var _args = _toArray(args), key = _args[0], arg = _args.slice(1);
|
|
258
|
+
return (_controlHooksEmitter = controlHooksEmitter).emit.apply(_controlHooksEmitter, [
|
|
259
|
+
key,
|
|
260
|
+
this
|
|
261
|
+
].concat(_toConsumableArray(arg)));
|
|
262
|
+
};
|
|
263
|
+
_proto.preUpdate = function preUpdate(key, value) {
|
|
264
|
+
// 在修改props之前
|
|
265
|
+
this._callControlHooks("preUpdateProps", key, value);
|
|
266
|
+
};
|
|
267
|
+
_proto.postUpdate = function postUpdate(key, value) {
|
|
268
|
+
// 在修改props之后
|
|
269
|
+
this._callControlHooks("postUpdateProps", key, value);
|
|
270
|
+
};
|
|
271
|
+
// 修改实例上的props,key可以是caption,caption.zh...
|
|
272
|
+
_proto.updateProps = function updateProps(key, value) {
|
|
273
|
+
this.preUpdate(key, value);
|
|
274
|
+
updateValueFromKeys(this.props, key, value);
|
|
275
|
+
this.postUpdate(key, value);
|
|
276
|
+
};
|
|
277
|
+
_proto.preValidate = function preValidate() {
|
|
278
|
+
var _this = this;
|
|
279
|
+
return _asyncToGenerator(function() {
|
|
280
|
+
var rules, results, result;
|
|
281
|
+
return __generator(this, function(_state) {
|
|
282
|
+
switch(_state.label){
|
|
283
|
+
case 0:
|
|
284
|
+
rules = _objectSpread({}, _this.rules);
|
|
285
|
+
return [
|
|
286
|
+
4,
|
|
287
|
+
_this._callControlHooks("preValidate", rules)
|
|
288
|
+
];
|
|
289
|
+
case 1:
|
|
290
|
+
results = _state.sent();
|
|
291
|
+
result = results[results.length - 1];
|
|
292
|
+
return [
|
|
293
|
+
2,
|
|
294
|
+
result === false ? undefined : result
|
|
295
|
+
];
|
|
173
296
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
{
|
|
197
|
-
key: "updateProps",
|
|
198
|
-
value: // 修改实例上的props,key可以是caption,caption.zh...
|
|
199
|
-
function updateProps(key, value) {
|
|
200
|
-
this.preUpdate(key, value);
|
|
201
|
-
updateValueFromKeys(this.props, key, value);
|
|
202
|
-
this.postUpdate(key, value);
|
|
203
|
-
}
|
|
204
|
-
},
|
|
205
|
-
{
|
|
206
|
-
key: "preValidate",
|
|
207
|
-
value: function preValidate() {
|
|
208
|
-
var _this = this;
|
|
209
|
-
return _asyncToGenerator(regeneratorRuntime.mark(function _callee() {
|
|
210
|
-
var rules, results, result;
|
|
211
|
-
return regeneratorRuntime.wrap(function _callee$(_ctx) {
|
|
212
|
-
while(1)switch(_ctx.prev = _ctx.next){
|
|
213
|
-
case 0:
|
|
214
|
-
rules = _objectSpread({}, _this.rules);
|
|
215
|
-
_ctx.next = 3;
|
|
216
|
-
return _this._callControlHooks('preValidate', rules);
|
|
217
|
-
case 3:
|
|
218
|
-
results = _ctx.sent;
|
|
219
|
-
result = results[results.length - 1];
|
|
220
|
-
return _ctx.abrupt("return", result === false ? undefined : result);
|
|
221
|
-
case 6:
|
|
222
|
-
case "end":
|
|
223
|
-
return _ctx.stop();
|
|
224
|
-
}
|
|
225
|
-
}, _callee);
|
|
226
|
-
}))();
|
|
227
|
-
}
|
|
228
|
-
},
|
|
229
|
-
{
|
|
230
|
-
key: "validate",
|
|
231
|
-
value: // property校验
|
|
232
|
-
function validate(messages, ignore) {
|
|
233
|
-
var _this = this;
|
|
234
|
-
return _asyncToGenerator(regeneratorRuntime.mark(function _callee() {
|
|
235
|
-
var result, rules, validator;
|
|
236
|
-
return regeneratorRuntime.wrap(function _callee$(_ctx) {
|
|
237
|
-
while(1)switch(_ctx.prev = _ctx.next){
|
|
238
|
-
case 0:
|
|
239
|
-
_ctx.next = 2;
|
|
240
|
-
return _this.preValidate();
|
|
241
|
-
case 2:
|
|
242
|
-
result = _ctx.sent;
|
|
243
|
-
rules = result !== undefined ? result : _objectSpread({}, _this.rules);
|
|
244
|
-
if (Array.isArray(ignore)) {
|
|
245
|
-
ignore.forEach(function(key) {
|
|
246
|
-
if (rules.hasOwnProperty(key)) {
|
|
247
|
-
delete rules[key];
|
|
248
|
-
}
|
|
249
|
-
});
|
|
250
|
-
}
|
|
251
|
-
validator = createValidator(rules, messages);
|
|
252
|
-
_ctx.prev = 6;
|
|
253
|
-
_ctx.next = 9;
|
|
254
|
-
return validator.validate(_this.props);
|
|
255
|
-
case 9:
|
|
256
|
-
return _ctx.abrupt("return", true);
|
|
257
|
-
case 12:
|
|
258
|
-
_ctx.prev = 12;
|
|
259
|
-
_ctx.t0 = _ctx["catch"](6);
|
|
260
|
-
if (!_ctx.t0.control) {
|
|
261
|
-
_ctx.t0.control = _this;
|
|
297
|
+
});
|
|
298
|
+
})();
|
|
299
|
+
};
|
|
300
|
+
// property校验
|
|
301
|
+
_proto.validate = function validate(messages, ignore) {
|
|
302
|
+
var _this = this;
|
|
303
|
+
return _asyncToGenerator(function() {
|
|
304
|
+
var result, rules, validator, err;
|
|
305
|
+
return __generator(this, function(_state) {
|
|
306
|
+
switch(_state.label){
|
|
307
|
+
case 0:
|
|
308
|
+
return [
|
|
309
|
+
4,
|
|
310
|
+
_this.preValidate()
|
|
311
|
+
];
|
|
312
|
+
case 1:
|
|
313
|
+
result = _state.sent();
|
|
314
|
+
rules = result !== undefined ? result : _objectSpread({}, _this.rules);
|
|
315
|
+
if (Array.isArray(ignore)) {
|
|
316
|
+
ignore.forEach(function(key) {
|
|
317
|
+
if (rules.hasOwnProperty(key)) {
|
|
318
|
+
delete rules[key];
|
|
262
319
|
}
|
|
263
|
-
|
|
264
|
-
case 16:
|
|
265
|
-
case "end":
|
|
266
|
-
return _ctx.stop();
|
|
320
|
+
});
|
|
267
321
|
}
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
type: type,
|
|
292
|
-
props: {}
|
|
293
|
-
};
|
|
294
|
-
if (dataBind) {
|
|
295
|
-
dataBindModelType.dataBind = dataBind;
|
|
296
|
-
}
|
|
297
|
-
switch(optionConfig){
|
|
298
|
-
case 'datasource':
|
|
299
|
-
case undefined:
|
|
300
|
-
if (datasourceBind) {
|
|
301
|
-
dataBindModelType.datasourceBind = datasourceBind;
|
|
322
|
+
validator = createValidator(rules, messages);
|
|
323
|
+
_state.label = 2;
|
|
324
|
+
case 2:
|
|
325
|
+
_state.trys.push([
|
|
326
|
+
2,
|
|
327
|
+
4,
|
|
328
|
+
,
|
|
329
|
+
5
|
|
330
|
+
]);
|
|
331
|
+
return [
|
|
332
|
+
4,
|
|
333
|
+
validator.validate(_this.props)
|
|
334
|
+
];
|
|
335
|
+
case 3:
|
|
336
|
+
_state.sent();
|
|
337
|
+
return [
|
|
338
|
+
2,
|
|
339
|
+
true
|
|
340
|
+
];
|
|
341
|
+
case 4:
|
|
342
|
+
err = _state.sent();
|
|
343
|
+
if (!err.control) {
|
|
344
|
+
err.control = _this;
|
|
302
345
|
}
|
|
303
|
-
|
|
304
|
-
case
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
if (required !== undefined) {
|
|
309
|
-
dataBindModelType.required = required;
|
|
346
|
+
throw err;
|
|
347
|
+
case 5:
|
|
348
|
+
return [
|
|
349
|
+
2
|
|
350
|
+
];
|
|
310
351
|
}
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
352
|
+
});
|
|
353
|
+
})();
|
|
354
|
+
};
|
|
355
|
+
_proto.toDataBindModel = function toDataBindModel() {
|
|
356
|
+
var parentId = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
|
|
357
|
+
var fieldType = this.fieldType;
|
|
358
|
+
var controlId = this.id;
|
|
359
|
+
var type = this.type;
|
|
360
|
+
var _this_props = this.props, dataBind = _this_props.dataBind, datasourceBind = _this_props.datasourceBind, optionConfig = _this_props.optionConfig, caption = _this_props.caption, required = _this_props.required, maxLength = _this_props.maxLength, options = _this_props.options, encrypted = _this_props.encrypted, encryptedMode = _this_props.encryptedMode;
|
|
361
|
+
if (!fieldType && !dataBind && !datasourceBind) return;
|
|
362
|
+
var dataBindModelType = {
|
|
363
|
+
parentId: parentId,
|
|
364
|
+
fieldType: fieldType,
|
|
365
|
+
controlId: controlId,
|
|
366
|
+
caption: caption,
|
|
367
|
+
type: type,
|
|
368
|
+
props: {}
|
|
369
|
+
};
|
|
370
|
+
if (dataBind) {
|
|
371
|
+
dataBindModelType.dataBind = dataBind;
|
|
372
|
+
}
|
|
373
|
+
switch(optionConfig){
|
|
374
|
+
case "datasource":
|
|
375
|
+
case undefined:
|
|
376
|
+
if (datasourceBind) {
|
|
377
|
+
dataBindModelType.datasourceBind = datasourceBind;
|
|
319
378
|
}
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
379
|
+
break;
|
|
380
|
+
case "custom":
|
|
381
|
+
dataBindModelType.props.options = options;
|
|
382
|
+
break;
|
|
383
|
+
}
|
|
384
|
+
if (required !== undefined) {
|
|
385
|
+
dataBindModelType.required = required;
|
|
386
|
+
}
|
|
387
|
+
if (maxLength !== undefined) {
|
|
388
|
+
dataBindModelType.maxLength = maxLength;
|
|
389
|
+
}
|
|
390
|
+
if (encrypted !== undefined) {
|
|
391
|
+
dataBindModelType.encrypted = encrypted;
|
|
392
|
+
}
|
|
393
|
+
if (encryptedMode !== undefined) {
|
|
394
|
+
dataBindModelType.encryptedMode = encryptedMode;
|
|
395
|
+
}
|
|
396
|
+
return dataBindModelType;
|
|
397
|
+
};
|
|
398
|
+
_proto.preToSchema = function preToSchema() {
|
|
399
|
+
// 在处理Schema之前,预留的钩子函数,允许在toSchema之前处理一些数据
|
|
400
|
+
this._callControlHooks("preToSchema", this);
|
|
401
|
+
};
|
|
402
|
+
_proto.toSchema = function toSchema() {
|
|
403
|
+
this.preToSchema();
|
|
404
|
+
return {
|
|
405
|
+
id: this.id,
|
|
406
|
+
type: this.type,
|
|
407
|
+
props: JSONCopy(this.props),
|
|
408
|
+
fieldType: this.fieldType,
|
|
409
|
+
controlType: this.controlType
|
|
410
|
+
};
|
|
411
|
+
};
|
|
412
|
+
Control.updateBasicControl = function updateBasicControl(key, setting) {
|
|
413
|
+
if (key !== "setting") return;
|
|
414
|
+
if (setting.add) {
|
|
415
|
+
var _this_setting;
|
|
416
|
+
(_this_setting = this.setting).push.apply(_this_setting, _toConsumableArray(setting.add));
|
|
417
|
+
}
|
|
418
|
+
if (setting.remove) {
|
|
419
|
+
this.removeSettingItem(setting.remove);
|
|
420
|
+
}
|
|
421
|
+
if (setting.update) {
|
|
422
|
+
// this.updateSettingItem(setting.update, false)
|
|
342
423
|
}
|
|
343
|
-
|
|
424
|
+
};
|
|
425
|
+
_createClass(Control, [
|
|
344
426
|
{
|
|
345
|
-
key: "
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
if (
|
|
349
|
-
|
|
350
|
-
(_setting = this.setting).push.apply(_setting, _toConsumableArray(setting.add));
|
|
351
|
-
}
|
|
352
|
-
if (setting.remove) {
|
|
353
|
-
this.removeSettingItem(setting.remove);
|
|
354
|
-
}
|
|
355
|
-
if (setting.update) {
|
|
356
|
-
// this.updateSettingItem(setting.update, false)
|
|
427
|
+
key: "rules",
|
|
428
|
+
get: function get() {
|
|
429
|
+
var Rules = this.props.constructor.Rules;
|
|
430
|
+
if (Rules) {
|
|
431
|
+
return new Rules(this.props);
|
|
357
432
|
}
|
|
433
|
+
return {};
|
|
358
434
|
}
|
|
359
435
|
}
|
|
360
436
|
]);
|
|
361
437
|
return Control;
|
|
362
438
|
}();
|
|
363
|
-
Control.controlName =
|
|
364
|
-
Control.controlIcon =
|
|
365
|
-
Control.controlType =
|
|
439
|
+
Control.controlName = "控件";
|
|
440
|
+
Control.controlIcon = "icon";
|
|
441
|
+
Control.controlType = "control";
|
|
442
|
+
// 控件可以触发的事件key
|
|
366
443
|
Control.controlEventKeys = [];
|
|
367
444
|
Control.controlCustomEvents = [];
|
|
445
|
+
// setting应该是全量的设置项,外部控制,在初始化的时候会deepCopy一份
|
|
368
446
|
Control.setting = [];
|
|
369
447
|
Control.__is_control__ = true;
|
|
448
|
+
// 删除指定的settingItem
|
|
370
449
|
Control.removeSettingItem = removeSetting;
|
|
450
|
+
// 修改指定的settingItem的visible
|
|
371
451
|
Control.updateSettingItem = updateSetting;
|
|
372
452
|
export default Control;
|
|
373
453
|
export { Control as DesignerControl };
|
|
@@ -382,20 +462,20 @@ export { Control as DesignerControl };
|
|
|
382
462
|
];
|
|
383
463
|
deleteKeys.forEach(function(deleteKey) {
|
|
384
464
|
// 是否存在子项
|
|
385
|
-
var isHasItem = typeof deleteKey !==
|
|
465
|
+
var isHasItem = typeof deleteKey !== "string";
|
|
386
466
|
// @ts-ignore
|
|
387
467
|
var settingIndex = _this.setting.findIndex(function(option) {
|
|
388
468
|
return option.key === (isHasItem ? deleteKey.key : deleteKey);
|
|
389
469
|
});
|
|
390
470
|
// 移除对应选项
|
|
391
471
|
if (settingIndex !== -1) {
|
|
392
|
-
var
|
|
393
|
-
isHasItem ? _this.setting[settingIndex].showItems = (
|
|
472
|
+
var _this_setting_settingIndex_showItems, _this_setting_settingIndex_showItems1;
|
|
473
|
+
isHasItem ? _this.setting[settingIndex].showItems = (_this_setting_settingIndex_showItems = _this.setting[settingIndex].showItems) === null || _this_setting_settingIndex_showItems === void 0 ? void 0 : _this_setting_settingIndex_showItems.filter(function(item) {
|
|
394
474
|
return !deleteKey.hideItems.includes(item);
|
|
395
475
|
}) : _this.setting.splice(settingIndex, 1);
|
|
396
476
|
// 子项长度为0,自动移除当前设置项
|
|
397
477
|
isHasItem && // @ts-ignore
|
|
398
|
-
!((
|
|
478
|
+
!((_this_setting_settingIndex_showItems1 = _this.setting[settingIndex].showItems) === null || _this_setting_settingIndex_showItems1 === void 0 ? void 0 : _this_setting_settingIndex_showItems1.length) && // @ts-ignore
|
|
399
479
|
_this.setting.splice(settingIndex, 1);
|
|
400
480
|
}
|
|
401
481
|
});
|
|
@@ -409,7 +489,7 @@ export { Control as DesignerControl };
|
|
|
409
489
|
* @param value.type 默认是replace替换,可以更改为push新增
|
|
410
490
|
* */ function updateSetting(settingKey, value) {
|
|
411
491
|
var _this = this;
|
|
412
|
-
var keys = typeof settingKey ===
|
|
492
|
+
var keys = typeof settingKey === "string" ? [
|
|
413
493
|
settingKey
|
|
414
494
|
] : settingKey;
|
|
415
495
|
keys.forEach(function(key) {
|
|
@@ -418,16 +498,16 @@ export { Control as DesignerControl };
|
|
|
418
498
|
return item.key === key;
|
|
419
499
|
});
|
|
420
500
|
if (settingItem) {
|
|
421
|
-
if (typeof value ===
|
|
501
|
+
if (typeof value === "boolean") {
|
|
422
502
|
settingItem.visible = value;
|
|
423
|
-
} else if (typeof value ===
|
|
424
|
-
var
|
|
425
|
-
var type = (
|
|
426
|
-
if (type ===
|
|
503
|
+
} else if (typeof value === "object") {
|
|
504
|
+
var _value_type;
|
|
505
|
+
var type = (_value_type = value.type) !== null && _value_type !== void 0 ? _value_type : "replace";
|
|
506
|
+
if (type === "replace") {
|
|
427
507
|
settingItem.showItems = value.showItems;
|
|
428
508
|
} else {
|
|
429
|
-
var
|
|
430
|
-
(
|
|
509
|
+
var _settingItem_showItems;
|
|
510
|
+
(_settingItem_showItems = settingItem.showItems).push.apply(_settingItem_showItems, _toConsumableArray(value.showItems));
|
|
431
511
|
}
|
|
432
512
|
}
|
|
433
513
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import Designer from
|
|
2
|
-
import Runtime from
|
|
3
|
-
import Property from
|
|
1
|
+
import Designer from "./designer";
|
|
2
|
+
import Runtime from "./runtime";
|
|
3
|
+
import Property from "./property";
|
|
4
4
|
export default {
|
|
5
5
|
Designer: Designer,
|
|
6
6
|
Runtime: Runtime,
|
|
7
7
|
Property: Property
|
|
8
8
|
};
|
|
9
|
-
export * from
|
|
10
|
-
export * from
|
|
11
|
-
export * from
|
|
12
|
-
export * from
|
|
9
|
+
export * from "./designer";
|
|
10
|
+
export * from "./runtime";
|
|
11
|
+
export * from "./property";
|
|
12
|
+
export * from "./types";
|