@byteluck-fe/model-driven-engine 2.22.2-beta.3 → 2.22.2-beta.6
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/common/ActionManager.js +3 -3
- package/dist/esm/common/DataManager.js +2 -2
- package/dist/esm/common/Engine.js +54 -54
- package/dist/esm/common/OkWorker.js +8 -8
- package/dist/esm/common/Runtime.js +15 -15
- package/dist/esm/common/Store.js +9 -9
- package/dist/esm/common/checkerValue.js +22 -22
- package/dist/esm/common/index.js +2 -2
- package/dist/esm/common/proxyState.js +38 -34
- package/dist/esm/index.js +3 -3
- package/dist/esm/plugins/CalcPlugin.js +18 -14
- package/dist/esm/plugins/ControlsEventPlugin.js +4 -4
- package/dist/esm/plugins/ES6ModulePlugin.js +6 -6
- package/dist/esm/plugins/LifecycleEventPlugin.js +5 -5
- package/dist/esm/plugins/StylePlugin.js +4 -4
- package/dist/esm/plugins/index.js +5 -5
- package/dist/esm/utils/index.js +1 -1
- package/dist/esm/utils/runtimeUtils.js +3 -3
- package/dist/index.umd.js +25 -25
- package/package.json +4 -4
|
@@ -157,9 +157,9 @@ function _create_super(Derived) {
|
|
|
157
157
|
return _possible_constructor_return(this, result);
|
|
158
158
|
};
|
|
159
159
|
}
|
|
160
|
-
import { isArray, isFunction, isString, isJSONArray, isJSONObject, isNumber, isNumberAndEmptyStringArray, isPlainObject, isStringArray, FieldTypes, isObject } from
|
|
161
|
-
import { AddressValue, AmountValue, CalcValue, RangeDateValue } from
|
|
162
|
-
import { camelizeKeys } from
|
|
160
|
+
import { isArray, isFunction, isString, isJSONArray, isJSONObject, isNumber, isNumberAndEmptyStringArray, isPlainObject, isStringArray, FieldTypes, isObject } from '@byteluck-fe/model-driven-shared';
|
|
161
|
+
import { AddressValue, AmountValue, CalcValue, RangeDateValue } from '@byteluck-fe/model-driven-core';
|
|
162
|
+
import { camelizeKeys } from 'humps';
|
|
163
163
|
var ValueChecker = function ValueChecker() {
|
|
164
164
|
"use strict";
|
|
165
165
|
_class_call_check(this, ValueChecker);
|
|
@@ -183,7 +183,7 @@ var StringValueChecker = /*#__PURE__*/ function(ValueChecker) {
|
|
|
183
183
|
key: "transform",
|
|
184
184
|
value: function transform(value) {
|
|
185
185
|
if (value === null || value === undefined) {
|
|
186
|
-
return
|
|
186
|
+
return '';
|
|
187
187
|
}
|
|
188
188
|
if (!isPlainObject(value) && !isFunction(value)) {
|
|
189
189
|
return String(value);
|
|
@@ -210,14 +210,14 @@ var NumberValueChecker = /*#__PURE__*/ function(ValueChecker) {
|
|
|
210
210
|
// 数字类型允许是空字符串,用于置空数据
|
|
211
211
|
key: "validate",
|
|
212
212
|
value: function validate(value) {
|
|
213
|
-
return isNumber(value) || value ===
|
|
213
|
+
return isNumber(value) || value === '';
|
|
214
214
|
}
|
|
215
215
|
},
|
|
216
216
|
{
|
|
217
217
|
key: "transform",
|
|
218
218
|
value: function transform(value) {
|
|
219
219
|
if (value === null || value === undefined) {
|
|
220
|
-
return
|
|
220
|
+
return '';
|
|
221
221
|
}
|
|
222
222
|
var newValue = !isPlainObject(value) && !isFunction(value) ? Number(value) : undefined;
|
|
223
223
|
if (!Number.isNaN(newValue) && newValue !== undefined) {
|
|
@@ -252,7 +252,7 @@ var StringArrayValueChecker = /*#__PURE__*/ function(ValueChecker) {
|
|
|
252
252
|
}
|
|
253
253
|
function getStringValueArray(value) {
|
|
254
254
|
return value.map(function(item) {
|
|
255
|
-
return !item ?
|
|
255
|
+
return !item ? '' : String(item);
|
|
256
256
|
});
|
|
257
257
|
}
|
|
258
258
|
if (isArray(value)) {
|
|
@@ -297,9 +297,9 @@ var NumberArrayValueChecker = /*#__PURE__*/ function(ValueChecker) {
|
|
|
297
297
|
}
|
|
298
298
|
function getNumberValueArray(value) {
|
|
299
299
|
return value.map(function(item) {
|
|
300
|
-
return !item && item !== 0 ?
|
|
300
|
+
return !item && item !== 0 ? '' : Number(item);
|
|
301
301
|
}).filter(function(item) {
|
|
302
|
-
return item ===
|
|
302
|
+
return item === '' || !Number.isNaN(item);
|
|
303
303
|
});
|
|
304
304
|
}
|
|
305
305
|
if (isArray(value)) {
|
|
@@ -338,13 +338,13 @@ var MoneyValueChecker = /*#__PURE__*/ function(ValueChecker) {
|
|
|
338
338
|
key: "validate",
|
|
339
339
|
value: function validate(value) {
|
|
340
340
|
return(// value instanceof AmountValue ||
|
|
341
|
-
isPlainObject(value) &&
|
|
341
|
+
isPlainObject(value) && 'amount' in value && isNumber(value.amount) && 'currency' in value && isString(value.currency));
|
|
342
342
|
}
|
|
343
343
|
},
|
|
344
344
|
{
|
|
345
345
|
key: "transform",
|
|
346
346
|
value: function transform(value, oldValue) {
|
|
347
|
-
if (value === undefined || value === null || value ===
|
|
347
|
+
if (value === undefined || value === null || value === '') {
|
|
348
348
|
return new AmountValue({
|
|
349
349
|
currency: oldValue === null || oldValue === void 0 ? void 0 : oldValue.currency
|
|
350
350
|
});
|
|
@@ -389,13 +389,13 @@ var TimeScopeValueChecker = /*#__PURE__*/ function(ValueChecker) {
|
|
|
389
389
|
key: "validate",
|
|
390
390
|
value: function validate(value) {
|
|
391
391
|
return(// value instanceof RangeDateValue ||
|
|
392
|
-
isPlainObject(value) &&
|
|
392
|
+
isPlainObject(value) && 'min' in value && isString(value.min) && 'max' in value && isString(value.max));
|
|
393
393
|
}
|
|
394
394
|
},
|
|
395
395
|
{
|
|
396
396
|
key: "transform",
|
|
397
397
|
value: function transform(value, oldValue) {
|
|
398
|
-
if (value === undefined || value === null || value ===
|
|
398
|
+
if (value === undefined || value === null || value === '') {
|
|
399
399
|
return new RangeDateValue();
|
|
400
400
|
}
|
|
401
401
|
var result;
|
|
@@ -437,13 +437,13 @@ var CalcValueChecker = /*#__PURE__*/ function(ValueChecker) {
|
|
|
437
437
|
key: "validate",
|
|
438
438
|
value: function validate(value) {
|
|
439
439
|
return(// value instanceof CalcValue ||
|
|
440
|
-
isPlainObject(value) &&
|
|
440
|
+
isPlainObject(value) && 'result' in value && isNumber(value.result) && 'unit' in value && isString(value.unit));
|
|
441
441
|
}
|
|
442
442
|
},
|
|
443
443
|
{
|
|
444
444
|
key: "transform",
|
|
445
445
|
value: function transform(value, oldValue) {
|
|
446
|
-
if (value === undefined || value === null || value ===
|
|
446
|
+
if (value === undefined || value === null || value === '') {
|
|
447
447
|
return new CalcValue({
|
|
448
448
|
unit: oldValue === null || oldValue === void 0 ? void 0 : oldValue.unit
|
|
449
449
|
});
|
|
@@ -504,7 +504,7 @@ var AddressValueChecker = /*#__PURE__*/ function(ValueChecker) {
|
|
|
504
504
|
{
|
|
505
505
|
key: "transform",
|
|
506
506
|
value: function transform(value, oldValue) {
|
|
507
|
-
if (value === undefined || value === null || value ===
|
|
507
|
+
if (value === undefined || value === null || value === '') {
|
|
508
508
|
return new AddressValue();
|
|
509
509
|
}
|
|
510
510
|
var result;
|
|
@@ -588,15 +588,15 @@ var ValueCheckerFactory = /*#__PURE__*/ function() {
|
|
|
588
588
|
}();
|
|
589
589
|
function getFieldTypeFromKey(key) {
|
|
590
590
|
if ([
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
591
|
+
'min',
|
|
592
|
+
'max',
|
|
593
|
+
'currency',
|
|
594
|
+
'unit'
|
|
595
595
|
].includes(key)) {
|
|
596
596
|
return FieldTypes.VARCHAR;
|
|
597
597
|
} else if ([
|
|
598
|
-
|
|
599
|
-
|
|
598
|
+
'result',
|
|
599
|
+
'amount'
|
|
600
600
|
].includes(key)) {
|
|
601
601
|
return FieldTypes.DECIMAL;
|
|
602
602
|
}
|
package/dist/esm/common/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
1
|
+
export * from './Engine';
|
|
2
|
+
export * from './Plugin';
|
|
@@ -15,6 +15,10 @@ function _non_iterable_spread() {
|
|
|
15
15
|
function _to_consumable_array(arr) {
|
|
16
16
|
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
17
17
|
}
|
|
18
|
+
function _type_of(obj) {
|
|
19
|
+
"@swc/helpers - typeof";
|
|
20
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
21
|
+
}
|
|
18
22
|
function _unsupported_iterable_to_array(o, minLen) {
|
|
19
23
|
if (!o) return;
|
|
20
24
|
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
@@ -24,21 +28,21 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
24
28
|
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
25
29
|
}
|
|
26
30
|
var cc = console;
|
|
27
|
-
import { CONTROL_BASE_TYPE, error, logerror, JSONCopy } from
|
|
31
|
+
import { CONTROL_BASE_TYPE, error, logerror, JSONCopy } from '@byteluck-fe/model-driven-shared';
|
|
28
32
|
var proxyArrayApi = [
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
'splice',
|
|
34
|
+
'push',
|
|
35
|
+
'shift',
|
|
36
|
+
'pop',
|
|
37
|
+
'unshift',
|
|
38
|
+
'reverse'
|
|
35
39
|
];
|
|
36
|
-
export var engineProxyFlag = Symbol(
|
|
37
|
-
export var engineTargetKey = Symbol(
|
|
38
|
-
export var engineArrayBeforeSetCallbackFlag = Symbol(
|
|
39
|
-
export var engineProxyThisKey = Symbol(
|
|
40
|
+
export var engineProxyFlag = Symbol('__engineProxy__');
|
|
41
|
+
export var engineTargetKey = Symbol('__engineTarget__');
|
|
42
|
+
export var engineArrayBeforeSetCallbackFlag = Symbol('__engineArrayBeforeSetCallbackFlag__');
|
|
43
|
+
export var engineProxyThisKey = Symbol('__engineProxyThisKey__');
|
|
40
44
|
var currentHandlerState = {
|
|
41
|
-
type:
|
|
45
|
+
type: '',
|
|
42
46
|
args: [],
|
|
43
47
|
callback: emptyFn
|
|
44
48
|
};
|
|
@@ -55,16 +59,16 @@ function ArrayHandler(target, propertyKey, value, thisKey, callback) {
|
|
|
55
59
|
// 操作下标
|
|
56
60
|
// Number(propertyKey) > target.length 说明当前操作的下标已经超过了安全范围(数组的运行长度,比如[1,2,3],它的长度为3,可操作的下标为0,1,2,3,如果操作4将会产生一个empty index)
|
|
57
61
|
if (index > target.length) {
|
|
58
|
-
error("Wrong array operations may cause unknown errors. It is recommended to use APIs such as ".concat(proxyArrayApi.join(
|
|
62
|
+
error("Wrong array operations may cause unknown errors. It is recommended to use APIs such as ".concat(proxyArrayApi.join(','), " for array operations"));
|
|
59
63
|
return;
|
|
60
64
|
}
|
|
61
65
|
// 不是操作下标,而是直接操作length或者自定义属性等
|
|
62
66
|
var isNotHandlerIndex = Number.isNaN(index);
|
|
63
|
-
if (isNotHandlerIndex && propertyKey !==
|
|
67
|
+
if (isNotHandlerIndex && propertyKey !== 'length') {
|
|
64
68
|
return;
|
|
65
69
|
}
|
|
66
70
|
// 直接操作length
|
|
67
|
-
if (propertyKey ===
|
|
71
|
+
if (propertyKey === 'length') {
|
|
68
72
|
var newLength = value;
|
|
69
73
|
var oldLength = target.length;
|
|
70
74
|
if (newLength > target.length) {
|
|
@@ -76,7 +80,7 @@ function ArrayHandler(target, propertyKey, value, thisKey, callback) {
|
|
|
76
80
|
}
|
|
77
81
|
// 通过操作length删除旧的行
|
|
78
82
|
return function() {
|
|
79
|
-
return callback.call(null, target, thisKey,
|
|
83
|
+
return callback.call(null, target, thisKey, 'splice', [
|
|
80
84
|
newLength,
|
|
81
85
|
oldLength - newLength
|
|
82
86
|
]);
|
|
@@ -86,13 +90,13 @@ function ArrayHandler(target, propertyKey, value, thisKey, callback) {
|
|
|
86
90
|
// 正常操作
|
|
87
91
|
if (index === target.length) {
|
|
88
92
|
return function() {
|
|
89
|
-
return callback.call(null, target, thisKey,
|
|
93
|
+
return callback.call(null, target, thisKey, 'push', [
|
|
90
94
|
value
|
|
91
95
|
]);
|
|
92
96
|
};
|
|
93
97
|
} else {
|
|
94
98
|
return function() {
|
|
95
|
-
return callback.call(null, target, thisKey,
|
|
99
|
+
return callback.call(null, target, thisKey, 'splice', [
|
|
96
100
|
index,
|
|
97
101
|
1,
|
|
98
102
|
value
|
|
@@ -128,9 +132,9 @@ function ArrayHandler(target, propertyKey, value, thisKey, callback) {
|
|
|
128
132
|
var newValue = JSONCopy(value);
|
|
129
133
|
// @ts-ignore
|
|
130
134
|
var oldValue = target[propertyKey];
|
|
131
|
-
var concatKey = thisKey ===
|
|
135
|
+
var concatKey = thisKey === '' ? propertyKey : thisKey + '.' + propertyKey;
|
|
132
136
|
function reProxyState(value) {
|
|
133
|
-
if (typeof value === "
|
|
137
|
+
if ((typeof value === "undefined" ? "undefined" : _type_of(value)) === 'object' && value !== null) {
|
|
134
138
|
// @ts-ignore
|
|
135
139
|
if (value[engineProxyFlag] !== true) {
|
|
136
140
|
return proxyState(value, callback, beforeSetCallback, concatKey);
|
|
@@ -186,15 +190,15 @@ function ArrayHandler(target, propertyKey, value, thisKey, callback) {
|
|
|
186
190
|
* @param beforeSetCallback
|
|
187
191
|
* @param prevKey 递归对象的key
|
|
188
192
|
* */ export function proxyState(state, callback, beforeSetCallback) {
|
|
189
|
-
var prevKey = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] :
|
|
193
|
+
var prevKey = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : '';
|
|
190
194
|
// 冻结的对象不需要再执行proxy,否则会报错
|
|
191
195
|
if (Object.isFrozen(state)) {
|
|
192
196
|
return state;
|
|
193
197
|
}
|
|
194
198
|
for(var key in state){
|
|
195
|
-
var concatKey = prevKey ===
|
|
199
|
+
var concatKey = prevKey === '' ? key : prevKey + '.' + key;
|
|
196
200
|
var obj = state[key];
|
|
197
|
-
if (typeof obj === "
|
|
201
|
+
if ((typeof obj === "undefined" ? "undefined" : _type_of(obj)) === 'object' && obj !== null) {
|
|
198
202
|
// @ts-ignore
|
|
199
203
|
state[key] = proxyState(obj, callback, beforeSetCallback, concatKey);
|
|
200
204
|
}
|
|
@@ -205,7 +209,7 @@ function flatInstanceForChildren(controls) {
|
|
|
205
209
|
var result = [];
|
|
206
210
|
controls.forEach(function(item) {
|
|
207
211
|
result.push(item);
|
|
208
|
-
if (item.controlType ===
|
|
212
|
+
if (item.controlType === 'layout' || item.controlType === 'wrap') {
|
|
209
213
|
var _result;
|
|
210
214
|
(_result = result).push.apply(_result, _to_consumable_array(flatInstanceForChildren(item.children)));
|
|
211
215
|
}
|
|
@@ -217,8 +221,8 @@ function flatInstanceForChildren(controls) {
|
|
|
217
221
|
* @param flatInstance 拍平的instance数组
|
|
218
222
|
* @param key 操作的数据在state的key - 可以是深层次的 subtable.0.input等
|
|
219
223
|
* */ export function findItem(flatInstance, key, instanceMap) {
|
|
220
|
-
if (key ===
|
|
221
|
-
var keys = key.split(
|
|
224
|
+
if (key === '') return undefined;
|
|
225
|
+
var keys = key.split('.');
|
|
222
226
|
if (keys.length === 0) return undefined;
|
|
223
227
|
var oneKey = keys[0];
|
|
224
228
|
var otherKeys = keys.slice(1);
|
|
@@ -253,22 +257,22 @@ function flatInstanceForChildren(controls) {
|
|
|
253
257
|
}
|
|
254
258
|
function getArrayNewValue(type, args) {
|
|
255
259
|
if ([
|
|
256
|
-
|
|
257
|
-
|
|
260
|
+
'push',
|
|
261
|
+
'unshift'
|
|
258
262
|
].includes(type)) {
|
|
259
263
|
return args;
|
|
260
|
-
} else if (type ===
|
|
264
|
+
} else if (type === 'splice') {
|
|
261
265
|
return args.slice(2);
|
|
262
266
|
}
|
|
263
267
|
return [];
|
|
264
268
|
}
|
|
265
269
|
function getArrayNewArgs(type, args, value) {
|
|
266
270
|
if ([
|
|
267
|
-
|
|
268
|
-
|
|
271
|
+
'push',
|
|
272
|
+
'unshift'
|
|
269
273
|
].includes(type)) {
|
|
270
274
|
return value;
|
|
271
|
-
} else if (type ===
|
|
275
|
+
} else if (type === 'splice') {
|
|
272
276
|
return args.slice(0, 2).concat(value);
|
|
273
277
|
}
|
|
274
278
|
}
|
|
@@ -303,8 +307,8 @@ function getArrayNewArgs(type, args, value) {
|
|
|
303
307
|
// @ts-ignore
|
|
304
308
|
result = oldApiHandler.apply(this, args);
|
|
305
309
|
}
|
|
306
|
-
typeof currentHandlerState.callback ===
|
|
307
|
-
currentHandlerState.type =
|
|
310
|
+
typeof currentHandlerState.callback === 'function' && currentHandlerState.callback(key, args, result);
|
|
311
|
+
currentHandlerState.type = '';
|
|
308
312
|
currentHandlerState.args = [];
|
|
309
313
|
currentHandlerState.callback = emptyFn;
|
|
310
314
|
return result;
|
package/dist/esm/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
1
|
+
export * from './common';
|
|
2
|
+
export * from './plugins';
|
|
3
|
+
export * from './utils';
|
|
@@ -47,6 +47,10 @@ function _non_iterable_spread() {
|
|
|
47
47
|
function _to_consumable_array(arr) {
|
|
48
48
|
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
49
49
|
}
|
|
50
|
+
function _type_of(obj) {
|
|
51
|
+
"@swc/helpers - typeof";
|
|
52
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
53
|
+
}
|
|
50
54
|
function _unsupported_iterable_to_array(o, minLen) {
|
|
51
55
|
if (!o) return;
|
|
52
56
|
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
@@ -55,8 +59,8 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
55
59
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
56
60
|
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
57
61
|
}
|
|
58
|
-
import { CONTROL_TYPE, CALC_TOKEN_TYPE, CALC_AGGREGATE_TYPE } from
|
|
59
|
-
import { format } from
|
|
62
|
+
import { CONTROL_TYPE, CALC_TOKEN_TYPE, CALC_AGGREGATE_TYPE } from '@byteluck-fe/model-driven-shared';
|
|
63
|
+
import { format } from 'mathjs';
|
|
60
64
|
var DisplayType;
|
|
61
65
|
(function(DisplayType) {
|
|
62
66
|
/**
|
|
@@ -170,7 +174,7 @@ export var CalcPlugin = /*#__PURE__*/ function() {
|
|
|
170
174
|
this.watchControlChange();
|
|
171
175
|
this.watchSubtableChange();
|
|
172
176
|
this.watchSchemaHideChange();
|
|
173
|
-
this.engine.on(
|
|
177
|
+
this.engine.on('engine-mounted', function() {
|
|
174
178
|
requestAnimationFrame(function() {
|
|
175
179
|
_this.resetDependencies();
|
|
176
180
|
_this.allCalcControlComputed();
|
|
@@ -274,8 +278,8 @@ export var CalcPlugin = /*#__PURE__*/ function() {
|
|
|
274
278
|
* @description 监听控件的显隐事件,把显隐会影响的控件触发一遍计算
|
|
275
279
|
* */ function watchSchemaHideChange() {
|
|
276
280
|
var _this = this;
|
|
277
|
-
this.engine.on(
|
|
278
|
-
if (payload.props ===
|
|
281
|
+
this.engine.on('schema-change', function(payload) {
|
|
282
|
+
if (payload.props === 'isHide') {
|
|
279
283
|
var _this_dependenciesTriggerMap_get;
|
|
280
284
|
var calcControls = (_this_dependenciesTriggerMap_get = _this.dependenciesTriggerMap.get(payload.instance.id)) !== null && _this_dependenciesTriggerMap_get !== void 0 ? _this_dependenciesTriggerMap_get : [];
|
|
281
285
|
calcControls.forEach(function(calc) {
|
|
@@ -291,7 +295,7 @@ export var CalcPlugin = /*#__PURE__*/ function() {
|
|
|
291
295
|
* @description 监听明细子表的change事件,把明细表会影响的控件触发一遍计算
|
|
292
296
|
* */ function watchSubtableChange() {
|
|
293
297
|
var _this = this;
|
|
294
|
-
this.engine.on(
|
|
298
|
+
this.engine.on('list-change', function(payload) {
|
|
295
299
|
var _payload_options;
|
|
296
300
|
// 初始化前是批量操作。不做处理
|
|
297
301
|
if (_this.engine.isMounted === false) return;
|
|
@@ -319,7 +323,7 @@ export var CalcPlugin = /*#__PURE__*/ function() {
|
|
|
319
323
|
* @description 监听控件的change事件,当控件change的时候,取到控件会影响的计算公式,然后执行对应的计算
|
|
320
324
|
* */ function watchControlChange() {
|
|
321
325
|
var _this = this;
|
|
322
|
-
this.engine.on(
|
|
326
|
+
this.engine.on('change', function(payload) {
|
|
323
327
|
// 初始化前是批量操作。不做处理
|
|
324
328
|
if (_this.engine.isMounted === false) return;
|
|
325
329
|
var instance = payload.instance;
|
|
@@ -416,7 +420,7 @@ export var CalcPlugin = /*#__PURE__*/ function() {
|
|
|
416
420
|
result += 0;
|
|
417
421
|
}
|
|
418
422
|
return result;
|
|
419
|
-
},
|
|
423
|
+
}, '');
|
|
420
424
|
var value;
|
|
421
425
|
// 有缓存的话取缓存,没有缓存再执行eval
|
|
422
426
|
if (this.cacheComputedResult[scriptText] !== undefined) {
|
|
@@ -437,7 +441,7 @@ export var CalcPlugin = /*#__PURE__*/ function() {
|
|
|
437
441
|
}
|
|
438
442
|
}
|
|
439
443
|
var oldValue = this.engine.getState(control.id, rowIndex);
|
|
440
|
-
var result = !value || value === Infinity || value === -Infinity ? 0 : control.props.precision ===
|
|
444
|
+
var result = !value || value === Infinity || value === -Infinity ? 0 : control.props.precision === '' ? value : Number(value.toFixed(control.props.precision));
|
|
441
445
|
// 如果值没变的话,不触发修改
|
|
442
446
|
if (result === (oldValue === null || oldValue === void 0 ? void 0 : oldValue.result)) {
|
|
443
447
|
return;
|
|
@@ -445,7 +449,7 @@ export var CalcPlugin = /*#__PURE__*/ function() {
|
|
|
445
449
|
var _oldValue_unit;
|
|
446
450
|
this.engine.setState(control.id, {
|
|
447
451
|
result: result,
|
|
448
|
-
unit: (_oldValue_unit = oldValue === null || oldValue === void 0 ? void 0 : oldValue.unit) !== null && _oldValue_unit !== void 0 ? _oldValue_unit :
|
|
452
|
+
unit: (_oldValue_unit = oldValue === null || oldValue === void 0 ? void 0 : oldValue.unit) !== null && _oldValue_unit !== void 0 ? _oldValue_unit : ''
|
|
449
453
|
}, rowIndex);
|
|
450
454
|
}
|
|
451
455
|
},
|
|
@@ -454,14 +458,14 @@ export var CalcPlugin = /*#__PURE__*/ function() {
|
|
|
454
458
|
value: /**
|
|
455
459
|
* @description 获取数字值,因为计算公式可以依赖计算公式和金额,所以需要从value中取到对应的值
|
|
456
460
|
* */ function getNumberValue(value) {
|
|
457
|
-
if (typeof value === "
|
|
458
|
-
if (
|
|
461
|
+
if ((typeof value === "undefined" ? "undefined" : _type_of(value)) === 'object' && value) {
|
|
462
|
+
if ('result' in value) {
|
|
459
463
|
return value.result;
|
|
460
|
-
} else if (
|
|
464
|
+
} else if ('amount' in value) {
|
|
461
465
|
return value.amount;
|
|
462
466
|
}
|
|
463
467
|
}
|
|
464
|
-
if (typeof value ===
|
|
468
|
+
if (typeof value === 'number') {
|
|
465
469
|
return value;
|
|
466
470
|
}
|
|
467
471
|
return 0;
|
|
@@ -154,7 +154,7 @@ function _ts_generator(thisArg, body) {
|
|
|
154
154
|
};
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
|
-
import { EventLogic } from
|
|
157
|
+
import { EventLogic } from '@byteluck-fe/model-driven-shared';
|
|
158
158
|
// type EventKeyMap = {
|
|
159
159
|
// [eventKey in EventKeys]?: string
|
|
160
160
|
// }
|
|
@@ -206,8 +206,8 @@ export var ControlsEventPlugin = /*#__PURE__*/ function() {
|
|
|
206
206
|
//注册自定义组件事件
|
|
207
207
|
this.customEvents.map(function(item) {
|
|
208
208
|
var key = item.key;
|
|
209
|
-
if (item.namespace !== undefined && item.namespace !== null && item.namespace !==
|
|
210
|
-
key = item.namespace +
|
|
209
|
+
if (item.namespace !== undefined && item.namespace !== null && item.namespace !== '') {
|
|
210
|
+
key = item.namespace + ':' + item.key;
|
|
211
211
|
}
|
|
212
212
|
_this.engineAddEventListener(key, key);
|
|
213
213
|
});
|
|
@@ -223,7 +223,7 @@ export var ControlsEventPlugin = /*#__PURE__*/ function() {
|
|
|
223
223
|
switch(_state.label){
|
|
224
224
|
case 0:
|
|
225
225
|
// 初始化state的时候不触发change事件,必须在engine mounted以后才触发
|
|
226
|
-
if ((eventKey ===
|
|
226
|
+
if ((eventKey === 'change' || eventKey === 'list-change') && !_this.engine.isMounted) {
|
|
227
227
|
return [
|
|
228
228
|
2
|
|
229
229
|
];
|
|
@@ -76,7 +76,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
76
76
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
77
77
|
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
78
78
|
}
|
|
79
|
-
import { error } from
|
|
79
|
+
import { error } from '@byteluck-fe/model-driven-shared';
|
|
80
80
|
export var ES6ModulePlugin = /*#__PURE__*/ function() {
|
|
81
81
|
"use strict";
|
|
82
82
|
function ES6ModulePlugin(config, env, eventJs) {
|
|
@@ -170,11 +170,11 @@ export function parseModule(action, engine, env) {
|
|
|
170
170
|
}
|
|
171
171
|
};
|
|
172
172
|
try {
|
|
173
|
-
new Function(
|
|
173
|
+
new Function('module', 'exports', compiled).call(module, module, module.exports);
|
|
174
174
|
} catch (e) {
|
|
175
|
-
error(e.message +
|
|
176
|
-
if (process.env.NODE_ENV !==
|
|
177
|
-
error(
|
|
175
|
+
error(e.message + '. fail to parse the module');
|
|
176
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
177
|
+
error('fail to parse the module');
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
180
|
var funcMap = {};
|
|
@@ -183,7 +183,7 @@ export function parseModule(action, engine, env) {
|
|
|
183
183
|
try {
|
|
184
184
|
for(var _iterator = Object.entries(module.exports)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
185
185
|
var _step_value = _sliced_to_array(_step.value, 2), key = _step_value[0], value = _step_value[1];
|
|
186
|
-
if (typeof value ===
|
|
186
|
+
if (typeof value === 'function') {
|
|
187
187
|
funcMap[key] = value;
|
|
188
188
|
} else {
|
|
189
189
|
variables[key] = value;
|
|
@@ -201,11 +201,11 @@ function _ts_generator(thisArg, body) {
|
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
203
|
var LifecycleEventKeyMap = {
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
204
|
+
'engine-initialized': 'did_init',
|
|
205
|
+
'engine-mounted': 'did_mount',
|
|
206
|
+
'engine-submit': 'will_submit',
|
|
207
|
+
'engine-submit-params': 'do_submit',
|
|
208
|
+
'engine-submitted': 'did_submit'
|
|
209
209
|
};
|
|
210
210
|
export var LifecycleEventPlugin = /*#__PURE__*/ function() {
|
|
211
211
|
"use strict";
|
|
@@ -54,10 +54,10 @@ export var StylePlugin = /*#__PURE__*/ function() {
|
|
|
54
54
|
var _this_config;
|
|
55
55
|
this.engine = engine;
|
|
56
56
|
var _this_config_source;
|
|
57
|
-
var compiledStyle = (_this_config_source = (_this_config = this.config) === null || _this_config === void 0 ? void 0 : _this_config.source) !== null && _this_config_source !== void 0 ? _this_config_source :
|
|
58
|
-
var style = document.createElement(
|
|
59
|
-
style.className =
|
|
60
|
-
var dom = document.querySelector(
|
|
57
|
+
var compiledStyle = (_this_config_source = (_this_config = this.config) === null || _this_config === void 0 ? void 0 : _this_config.source) !== null && _this_config_source !== void 0 ? _this_config_source : '';
|
|
58
|
+
var style = document.createElement('style');
|
|
59
|
+
style.className = 'edit-css-' + engine.id;
|
|
60
|
+
var dom = document.querySelector('head');
|
|
61
61
|
dom === null || dom === void 0 ? void 0 : dom.appendChild(style);
|
|
62
62
|
var cssStyleText;
|
|
63
63
|
if (this.isPc) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
4
|
-
export * from
|
|
5
|
-
export * from
|
|
1
|
+
export * from './ES6ModulePlugin';
|
|
2
|
+
export * from './LifecycleEventPlugin';
|
|
3
|
+
export * from './ControlsEventPlugin';
|
|
4
|
+
export * from './CalcPlugin';
|
|
5
|
+
export * from './StylePlugin';
|
package/dist/esm/utils/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from
|
|
1
|
+
export * from './runtimeUtils';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CONTROL_BASE_TYPE, CONTROL_TYPE } from
|
|
1
|
+
import { CONTROL_BASE_TYPE, CONTROL_TYPE } from '@byteluck-fe/model-driven-shared';
|
|
2
2
|
export function hasChildrenControl(instance) {
|
|
3
3
|
return instance.controlType === CONTROL_BASE_TYPE.LAYOUT || instance.controlType === CONTROL_BASE_TYPE.WRAP || instance.controlType === CONTROL_BASE_TYPE.LIST || instance.controlType === CONTROL_BASE_TYPE.SEARCH || instance.controlType === CONTROL_BASE_TYPE.COLUMN && instance.type !== CONTROL_TYPE.OPERATION_COLUMN;
|
|
4
4
|
}
|
|
@@ -37,9 +37,9 @@ callback) {
|
|
|
37
37
|
var unique = 0;
|
|
38
38
|
// uuid生成
|
|
39
39
|
export function buildUUID() {
|
|
40
|
-
var prefix = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] :
|
|
40
|
+
var prefix = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : '';
|
|
41
41
|
var time = Date.now();
|
|
42
42
|
var random = Math.floor(Math.random() * 1000000000);
|
|
43
43
|
unique++;
|
|
44
|
-
return prefix +
|
|
44
|
+
return prefix + '_' + random + unique + String(time);
|
|
45
45
|
}
|