@vue-start/pro 0.3.2 → 0.4.2
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/CHANGELOG.md +15 -0
- package/dist/index.d.ts +106 -71
- package/dist/index.es.js +693 -437
- package/dist/index.js +695 -434
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -199,186 +199,12 @@ var useComposeRequestActor = function useComposeRequestActor(actors, options, ca
|
|
|
199
199
|
}, []);
|
|
200
200
|
};
|
|
201
201
|
|
|
202
|
-
|
|
203
|
-
children: "children",
|
|
204
|
-
label: "label",
|
|
205
|
-
value: "value"
|
|
206
|
-
};
|
|
207
|
-
/**
|
|
208
|
-
* 根据value从treeData中找到对象
|
|
209
|
-
* @param data
|
|
210
|
-
* @param value
|
|
211
|
-
* @param fieldNames
|
|
212
|
-
* @param cb 对象:同步 方法:回调,可以理解为异步
|
|
213
|
-
*/
|
|
214
|
-
|
|
215
|
-
var findTargetInTree = function findTargetInTree(data, value, fieldNames, cb) {
|
|
216
|
-
var index = lodash.findIndex(data, function (item) {
|
|
217
|
-
return lodash.get(item, (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value) || treeDefaultNames.value) === value;
|
|
218
|
-
});
|
|
219
|
-
|
|
220
|
-
if (index > -1) {
|
|
221
|
-
if (lodash.isFunction(cb)) {
|
|
222
|
-
cb(index, data[index], data);
|
|
223
|
-
} else {
|
|
224
|
-
cb.index = index;
|
|
225
|
-
cb.target = data[index];
|
|
226
|
-
cb.list = data;
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
return;
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
lodash.forEach(data, function (item) {
|
|
233
|
-
var children = lodash.get(item, (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.children) || treeDefaultNames.children);
|
|
234
|
-
|
|
235
|
-
if (lodash.size(children) > 0) {
|
|
236
|
-
findTargetInTree(children, value, fieldNames, cb);
|
|
237
|
-
}
|
|
238
|
-
});
|
|
239
|
-
};
|
|
240
|
-
/**
|
|
241
|
-
* 根据value从treeData中找出对象及父列表
|
|
242
|
-
* @param data
|
|
243
|
-
* @param value
|
|
244
|
-
* @param fieldNames
|
|
245
|
-
* @param cb
|
|
246
|
-
* @param parent
|
|
247
|
-
*/
|
|
248
|
-
|
|
249
|
-
var findTargetListInTree = function findTargetListInTree(data, value, fieldNames, cb) {
|
|
250
|
-
var parent = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
|
|
251
|
-
var target = lodash.find(data, function (item) {
|
|
252
|
-
return lodash.get(item, (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value) || treeDefaultNames.value) === value;
|
|
253
|
-
});
|
|
254
|
-
|
|
255
|
-
if (target) {
|
|
256
|
-
if (lodash.isFunction(cb)) {
|
|
257
|
-
cb([].concat(_toConsumableArray(parent), [target]));
|
|
258
|
-
} else {
|
|
259
|
-
cb.list = [].concat(_toConsumableArray(parent), [target]);
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
return;
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
lodash.forEach(data, function (item) {
|
|
266
|
-
var children = lodash.get(item, (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.children) || treeDefaultNames.children);
|
|
267
|
-
|
|
268
|
-
if (lodash.size(children) > 0) {
|
|
269
|
-
findTargetListInTree(children, value, fieldNames, cb, [].concat(_toConsumableArray(parent), [item]));
|
|
270
|
-
}
|
|
271
|
-
});
|
|
272
|
-
};
|
|
273
|
-
|
|
274
|
-
/**
|
|
275
|
-
* 剔除showState或showStateRules规则为!true的值
|
|
276
|
-
* @param values
|
|
277
|
-
* @param showState
|
|
278
|
-
* @param showStateRules
|
|
279
|
-
*/
|
|
280
|
-
|
|
281
|
-
var getValidValues = function getValidValues(values, showState, showStateRules) {
|
|
282
|
-
if (showState) {
|
|
283
|
-
var invalidKeys = lodash.filter(lodash.keys(showState), function (key) {
|
|
284
|
-
return !showState[key];
|
|
285
|
-
});
|
|
286
|
-
return lodash.omit(values, invalidKeys);
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
if (showStateRules) {
|
|
290
|
-
var _invalidKeys = lodash.filter(lodash.keys(showStateRules), function (key) {
|
|
291
|
-
return !showStateRules[key](values);
|
|
292
|
-
});
|
|
293
|
-
|
|
294
|
-
return lodash.omit(values, _invalidKeys);
|
|
295
|
-
}
|
|
296
|
-
|
|
297
|
-
return values;
|
|
298
|
-
};
|
|
299
|
-
/**
|
|
300
|
-
* string类型的path转为arr
|
|
301
|
-
* @param path
|
|
302
|
-
*/
|
|
303
|
-
|
|
304
|
-
var convertPathToList = function convertPathToList(path) {
|
|
305
|
-
if (!path) {
|
|
306
|
-
return undefined;
|
|
307
|
-
}
|
|
308
|
-
|
|
309
|
-
if (lodash.isArray(path)) {
|
|
310
|
-
return path;
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
if (path && lodash.isString(path) && path.indexOf(".") > 0) {
|
|
314
|
-
return lodash.split(path, ".");
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
return [path];
|
|
318
|
-
};
|
|
319
|
-
/**
|
|
320
|
-
* 将listState 中的数据通过id merge到 list item中
|
|
321
|
-
* ps:数组会替换
|
|
322
|
-
* 注意:mergeWith 会改变原始对象
|
|
323
|
-
* @param list
|
|
324
|
-
* @param listState
|
|
325
|
-
* @param id
|
|
326
|
-
*/
|
|
327
|
-
|
|
328
|
-
var mergeStateToList = function mergeStateToList(list, listState, id) {
|
|
329
|
-
if (!listState || !id) {
|
|
330
|
-
return list;
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
return lodash.map(list, function (item) {
|
|
334
|
-
var idName = lodash.isFunction(id) ? id(item) : id; //如果listState中有值,merge处理
|
|
335
|
-
|
|
336
|
-
var stateData = lodash.get(listState, idName);
|
|
337
|
-
|
|
338
|
-
if (!stateData || lodash.isEmpty(stateData) || lodash.isFunction(stateData) || !lodash.isObject(stateData)) {
|
|
339
|
-
return item;
|
|
340
|
-
} //只有是对象(键值对)才合并
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
return lodash.mergeWith(item, stateData, function (objValue, srcValue) {
|
|
344
|
-
//如果是数组,替换
|
|
345
|
-
if (lodash.isArray(objValue) || lodash.isArray(srcValue)) {
|
|
346
|
-
return srcValue;
|
|
347
|
-
}
|
|
348
|
-
});
|
|
349
|
-
});
|
|
350
|
-
};
|
|
351
|
-
|
|
352
|
-
/**
|
|
353
|
-
* 唯一id
|
|
354
|
-
*/
|
|
355
|
-
|
|
356
|
-
var generateId = function generateId() {
|
|
357
|
-
return Number(Math.random().toString().substr(3, 3) + Date.now()).toString(36);
|
|
358
|
-
};
|
|
359
|
-
/**
|
|
360
|
-
* ref 传递
|
|
361
|
-
*/
|
|
362
|
-
|
|
363
|
-
var createExpose = function createExpose(methods, targetRef) {
|
|
364
|
-
return lodash.reduce(methods, function (pair, method) {
|
|
365
|
-
return _objectSpread2(_objectSpread2({}, pair), {}, _defineProperty({}, method, function () {
|
|
366
|
-
var _targetRef$value, _targetRef$value$meth;
|
|
367
|
-
|
|
368
|
-
for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
369
|
-
params[_key] = arguments[_key];
|
|
370
|
-
}
|
|
371
|
-
|
|
372
|
-
return (_targetRef$value = targetRef.value) === null || _targetRef$value === void 0 ? void 0 : (_targetRef$value$meth = _targetRef$value[method]) === null || _targetRef$value$meth === void 0 ? void 0 : _targetRef$value$meth.call.apply(_targetRef$value$meth, [_targetRef$value].concat(params));
|
|
373
|
-
}));
|
|
374
|
-
}, {});
|
|
375
|
-
};
|
|
202
|
+
/***************************************** curd模式 *****************************************/
|
|
376
203
|
|
|
377
204
|
/**
|
|
378
205
|
* 获取Column的valueType,默认"text"
|
|
379
206
|
* @param column
|
|
380
207
|
*/
|
|
381
|
-
|
|
382
208
|
var getColumnValueType = function getColumnValueType(column) {
|
|
383
209
|
return column.formValueType || column.valueType || "text";
|
|
384
210
|
};
|
|
@@ -444,6 +270,213 @@ var getItemEl = function getItemEl(elementMap, column, value) {
|
|
|
444
270
|
value: value
|
|
445
271
|
}), (_column$formFieldProp2 = column.formFieldProps) === null || _column$formFieldProp2 === void 0 ? void 0 : _column$formFieldProp2.slots);
|
|
446
272
|
};
|
|
273
|
+
/***************************************** 通用模式 *****************************************/
|
|
274
|
+
|
|
275
|
+
var renderElements = function renderElements(elementMap, elementConfigs) {
|
|
276
|
+
return lodash.map(elementConfigs, function (elementConfig) {
|
|
277
|
+
return renderElement(elementMap, elementConfig);
|
|
278
|
+
});
|
|
279
|
+
};
|
|
280
|
+
/**
|
|
281
|
+
* props转换
|
|
282
|
+
*/
|
|
283
|
+
|
|
284
|
+
var convertPropsEl = function convertPropsEl(elementMap, elementConfig) {
|
|
285
|
+
var _elementConfig$highCo;
|
|
286
|
+
|
|
287
|
+
var elementProps = elementConfig.elementProps;
|
|
288
|
+
|
|
289
|
+
var nextProps = _objectSpread2({}, elementConfig.elementProps);
|
|
290
|
+
|
|
291
|
+
lodash.forEach((_elementConfig$highCo = elementConfig.highConfig$) === null || _elementConfig$highCo === void 0 ? void 0 : _elementConfig$highCo.registerPropsTrans, function (item) {
|
|
292
|
+
var target = lodash.get(elementProps, item.name);
|
|
293
|
+
|
|
294
|
+
if (!target || vue.isVNode(target)) {
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
if (lodash.isArray(target)) {
|
|
299
|
+
//如果list中存在VNode,不转换
|
|
300
|
+
if (lodash.some(target, function (sub) {
|
|
301
|
+
return vue.isVNode(sub);
|
|
302
|
+
})) {
|
|
303
|
+
return;
|
|
304
|
+
} //如果碰到特殊场景,可以替换成单个渲染模式
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
lodash.set(nextProps, item.name, renderElements(elementMap, target));
|
|
308
|
+
return;
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
if (!target.elementType) {
|
|
312
|
+
return;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
if (item.isFun) {
|
|
316
|
+
lodash.set(nextProps, item.name, function () {
|
|
317
|
+
for (var _len = arguments.length, params$ = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
318
|
+
params$[_key] = arguments[_key];
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
var ep = item.needParams ? _objectSpread2(_objectSpread2({}, target.elementProps), {}, {
|
|
322
|
+
params$: params$
|
|
323
|
+
}) : target.elementProps;
|
|
324
|
+
return renderElement(elementMap, _objectSpread2(_objectSpread2({}, target), {}, {
|
|
325
|
+
elementProps: ep
|
|
326
|
+
}));
|
|
327
|
+
});
|
|
328
|
+
} else {
|
|
329
|
+
lodash.set(nextProps, item.name, renderElement(elementMap, target));
|
|
330
|
+
}
|
|
331
|
+
});
|
|
332
|
+
return nextProps;
|
|
333
|
+
};
|
|
334
|
+
/**
|
|
335
|
+
* slots转换
|
|
336
|
+
*/
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
var convertSlots = function convertSlots(elementMap, elementConfig) {
|
|
340
|
+
var children = lodash.size(elementConfig.children) > 0 ? renderElements(elementMap, elementConfig.children) : undefined; //children插槽名称
|
|
341
|
+
|
|
342
|
+
var childrenSlotName = elementConfig.childrenSlotName || "default";
|
|
343
|
+
var validSlots = lodash.omit(elementConfig.slots, children ? childrenSlotName : ""); //如果slots注册的是 IElementConfig ,进行转换
|
|
344
|
+
|
|
345
|
+
lodash.forEach(lodash.keys(validSlots), function (k) {
|
|
346
|
+
var v = validSlots[k]; //IElementConfig
|
|
347
|
+
|
|
348
|
+
if (v && !lodash.isFunction(v) && v.elementType) {
|
|
349
|
+
validSlots[k] = function () {
|
|
350
|
+
for (var _len2 = arguments.length, params$ = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
351
|
+
params$[_key2] = arguments[_key2];
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
//如果需要params,在props中注入 params$
|
|
355
|
+
var elementProps = v.needParams ? _objectSpread2(_objectSpread2({}, v.elementProps), {}, {
|
|
356
|
+
params$: params$
|
|
357
|
+
}) : v.elementProps;
|
|
358
|
+
return renderElement(elementMap, _objectSpread2(_objectSpread2({}, v), {}, {
|
|
359
|
+
elementProps: elementProps
|
|
360
|
+
}));
|
|
361
|
+
};
|
|
362
|
+
}
|
|
363
|
+
});
|
|
364
|
+
return _objectSpread2(_defineProperty({}, childrenSlotName, children ? function () {
|
|
365
|
+
return children;
|
|
366
|
+
} : undefined), validSlots);
|
|
367
|
+
};
|
|
368
|
+
/**
|
|
369
|
+
*
|
|
370
|
+
* @param elementMap
|
|
371
|
+
* @param elementConfig
|
|
372
|
+
*/
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
var renderElement = function renderElement(elementMap, elementConfig) {
|
|
376
|
+
var El = lodash.get(elementMap, elementConfig.elementType) || elementConfig.elementType; //如果有highConfig$,包裹一层Wrapper
|
|
377
|
+
|
|
378
|
+
if (elementConfig.highConfig$) {
|
|
379
|
+
return vue.h(Wrapper, {
|
|
380
|
+
key: elementConfig.elementId,
|
|
381
|
+
elementMap: elementMap,
|
|
382
|
+
elementConfig: elementConfig
|
|
383
|
+
});
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
var slots = convertSlots(elementMap, elementConfig);
|
|
387
|
+
var elementProps = convertPropsEl(elementMap, elementConfig);
|
|
388
|
+
return vue.h(El, _objectSpread2({
|
|
389
|
+
key: elementConfig.elementId
|
|
390
|
+
}, elementProps), slots);
|
|
391
|
+
};
|
|
392
|
+
/**
|
|
393
|
+
* 获取第一层级属性名
|
|
394
|
+
* 如:['aaa','bbb',...] 中的 'aaa'
|
|
395
|
+
* 如:"aaa.bbb.ccc..." 中的 'aaa'
|
|
396
|
+
*/
|
|
397
|
+
|
|
398
|
+
var getFirstPropName = function getFirstPropName(name) {
|
|
399
|
+
if (lodash.isArray(name)) {
|
|
400
|
+
return lodash.head(name);
|
|
401
|
+
} else if (lodash.isString(name) && name.indexOf(".") > 0) {
|
|
402
|
+
return name.substring(0, name.indexOf("."));
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
return name;
|
|
406
|
+
};
|
|
407
|
+
/**
|
|
408
|
+
* 处理highConfig$
|
|
409
|
+
*/
|
|
410
|
+
|
|
411
|
+
var Wrapper = vue.defineComponent({
|
|
412
|
+
props: {
|
|
413
|
+
elementMap: {
|
|
414
|
+
type: Object
|
|
415
|
+
},
|
|
416
|
+
elementConfig: {
|
|
417
|
+
type: Object
|
|
418
|
+
}
|
|
419
|
+
},
|
|
420
|
+
setup: function setup(props) {
|
|
421
|
+
var _useProModule = useProModule(),
|
|
422
|
+
state = _useProModule.state,
|
|
423
|
+
sendEvent = _useProModule.sendEvent;
|
|
424
|
+
|
|
425
|
+
var elementMap = props.elementMap,
|
|
426
|
+
elementConfig = props.elementConfig;
|
|
427
|
+
var highConfig$ = elementConfig.highConfig$; //转换props
|
|
428
|
+
|
|
429
|
+
var elementProps = convertPropsEl(elementMap, elementConfig); //事件订阅
|
|
430
|
+
|
|
431
|
+
var events = lodash.reduce(highConfig$.registerEventList, function (pair, item) {
|
|
432
|
+
return _objectSpread2(_objectSpread2({}, pair), {}, _defineProperty({}, item.name, function () {
|
|
433
|
+
for (var _len3 = arguments.length, params = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
|
434
|
+
params[_key3] = arguments[_key3];
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
sendEvent({
|
|
438
|
+
type: item.sendEventName || elementConfig.elementId,
|
|
439
|
+
payload: params
|
|
440
|
+
});
|
|
441
|
+
}));
|
|
442
|
+
}, {}); //receiveStateList 订阅
|
|
443
|
+
|
|
444
|
+
var receiveStates = vue.computed(function () {
|
|
445
|
+
if (!highConfig$.registerStateList || lodash.size(highConfig$.registerStateList) <= 0) {
|
|
446
|
+
return undefined;
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
var changeProps = _objectSpread2({}, elementProps); //赋值 && 返回一级属性名称
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
var firstPropNameList = lodash.map(highConfig$.registerStateList, function (item) {
|
|
453
|
+
var targetName = item.mapName || item.name; //从state中取值
|
|
454
|
+
|
|
455
|
+
var value = lodash.get(state, item.name); //赋值
|
|
456
|
+
|
|
457
|
+
lodash.set(changeProps, targetName, value); //返回一级属性名称
|
|
458
|
+
|
|
459
|
+
return getFirstPropName(targetName);
|
|
460
|
+
});
|
|
461
|
+
return lodash.pick(changeProps, firstPropNameList);
|
|
462
|
+
});
|
|
463
|
+
var El = lodash.get(elementMap, elementConfig.elementType) || elementConfig.elementType;
|
|
464
|
+
var slots = convertSlots(elementMap, elementConfig);
|
|
465
|
+
return function () {
|
|
466
|
+
//如果标记show$值为false,不渲染组件
|
|
467
|
+
var show$ = lodash.get(receiveStates.value, "show$");
|
|
468
|
+
|
|
469
|
+
if (show$ === false) {
|
|
470
|
+
return null;
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
return vue.h(El, _objectSpread2(_objectSpread2(_objectSpread2({
|
|
474
|
+
key: elementConfig.elementId
|
|
475
|
+
}, elementProps), lodash.omit(receiveStates.value, "show$")), events), slots);
|
|
476
|
+
};
|
|
477
|
+
}
|
|
478
|
+
});
|
|
479
|
+
|
|
447
480
|
var ProModuleKey = Symbol("pro-module");
|
|
448
481
|
var useProModule = function useProModule() {
|
|
449
482
|
return vue.inject(ProModuleKey);
|
|
@@ -466,32 +499,17 @@ var proModuleProps = function proModuleProps() {
|
|
|
466
499
|
},
|
|
467
500
|
|
|
468
501
|
/**
|
|
469
|
-
*
|
|
470
|
-
*/
|
|
471
|
-
columns: {
|
|
472
|
-
type: Array
|
|
473
|
-
},
|
|
474
|
-
|
|
475
|
-
/**
|
|
476
|
-
* 配置(动态)
|
|
477
|
-
* columns动态属性兼容
|
|
478
|
-
*/
|
|
479
|
-
columnState: {
|
|
480
|
-
type: Object
|
|
481
|
-
},
|
|
482
|
-
|
|
483
|
-
/**
|
|
484
|
-
* 展示组件集
|
|
502
|
+
* 组件集
|
|
485
503
|
*/
|
|
486
504
|
elementMap: {
|
|
487
505
|
type: Object
|
|
488
506
|
},
|
|
489
507
|
|
|
490
508
|
/**
|
|
491
|
-
*
|
|
509
|
+
* 组件描述(树)
|
|
492
510
|
*/
|
|
493
|
-
|
|
494
|
-
type:
|
|
511
|
+
elementConfigs: {
|
|
512
|
+
type: Array
|
|
495
513
|
},
|
|
496
514
|
|
|
497
515
|
/**
|
|
@@ -500,34 +518,22 @@ var proModuleProps = function proModuleProps() {
|
|
|
500
518
|
requests: {
|
|
501
519
|
type: Array
|
|
502
520
|
}
|
|
503
|
-
};
|
|
504
|
-
};
|
|
505
|
-
|
|
506
|
-
var ProModule = vue.defineComponent({
|
|
507
|
-
props: _objectSpread2({}, proModuleProps()),
|
|
508
|
-
setup: function setup(props, _ref) {
|
|
509
|
-
var slots = _ref.slots,
|
|
510
|
-
expose = _ref.expose;
|
|
511
|
-
|
|
512
|
-
/**
|
|
513
|
-
* columns columnState 合并
|
|
514
|
-
*/
|
|
515
|
-
var columns = vue.computed(function () {
|
|
516
|
-
return mergeStateToList(props.columns, props.columnState, function (item) {
|
|
517
|
-
return getColumnFormItemName(item);
|
|
518
|
-
});
|
|
519
|
-
});
|
|
520
|
-
/*********************************** 渲染组件 ***************************************/
|
|
521
|
-
// 获取FormItem VNode
|
|
522
|
-
|
|
523
|
-
var getFormItemVNode = function getFormItemVNode(column) {
|
|
524
|
-
var needRules = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
525
|
-
return getFormItemEl(props.formElementMap, column, needRules);
|
|
526
|
-
}; // 获取Item VNode
|
|
521
|
+
};
|
|
522
|
+
};
|
|
527
523
|
|
|
524
|
+
var ProModule = vue.defineComponent({
|
|
525
|
+
props: _objectSpread2({}, proModuleProps()),
|
|
526
|
+
setup: function setup(props, _ref) {
|
|
527
|
+
var slots = _ref.slots,
|
|
528
|
+
expose = _ref.expose;
|
|
528
529
|
|
|
529
|
-
|
|
530
|
-
|
|
530
|
+
/*********************************** render ***************************************/
|
|
531
|
+
var render = function render(elementConfig) {
|
|
532
|
+
if (lodash.isArray(elementConfig)) {
|
|
533
|
+
return renderElements(props.elementMap, elementConfig);
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
return renderElement(props.elementMap, elementConfig);
|
|
531
537
|
};
|
|
532
538
|
/*********************************** 事件处理 ***************************************/
|
|
533
539
|
|
|
@@ -543,13 +549,15 @@ var ProModule = vue.defineComponent({
|
|
|
543
549
|
var state = props.state || vue.reactive({});
|
|
544
550
|
|
|
545
551
|
var dispatch = function dispatch(action) {
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
552
|
+
var prev = state[action.type];
|
|
553
|
+
var data = lodash.isFunction(action.payload) ? action.payload(prev) : action.payload; //如果要更新的属性值是 object ,执行覆盖操作
|
|
554
|
+
|
|
555
|
+
if (lodash.isObject(prev)) {
|
|
556
|
+
hooks.setReactiveValue(state[action.type], data);
|
|
549
557
|
return;
|
|
550
558
|
}
|
|
551
559
|
|
|
552
|
-
state[action.type] =
|
|
560
|
+
state[action.type] = data;
|
|
553
561
|
};
|
|
554
562
|
/*********************************** request ***************************************/
|
|
555
563
|
|
|
@@ -653,11 +661,7 @@ var ProModule = vue.defineComponent({
|
|
|
653
661
|
}
|
|
654
662
|
}, true);
|
|
655
663
|
provideProModule({
|
|
656
|
-
columns: columns,
|
|
657
|
-
getFormItemVNode: getFormItemVNode,
|
|
658
|
-
getItemVNode: getItemVNode,
|
|
659
664
|
elementMap: props.elementMap,
|
|
660
|
-
formElementMap: props.formElementMap,
|
|
661
665
|
//
|
|
662
666
|
subject$: subject$,
|
|
663
667
|
sendEvent: sendEvent,
|
|
@@ -675,7 +679,7 @@ var ProModule = vue.defineComponent({
|
|
|
675
679
|
return function () {
|
|
676
680
|
var _slots$default;
|
|
677
681
|
|
|
678
|
-
return (_slots$default = slots["default"]) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots);
|
|
682
|
+
return vue.createVNode(vue.Fragment, null, [lodash.size(props.elementConfigs) > 0 && render(props.elementConfigs), (_slots$default = slots["default"]) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots)]);
|
|
679
683
|
};
|
|
680
684
|
}
|
|
681
685
|
});
|
|
@@ -754,6 +758,181 @@ exports.CurdAddAction = void 0;
|
|
|
754
758
|
CurdAddAction["CONTINUE"] = "CONTINUE";
|
|
755
759
|
})(exports.CurdAddAction || (exports.CurdAddAction = {}));
|
|
756
760
|
|
|
761
|
+
var treeDefaultNames = {
|
|
762
|
+
children: "children",
|
|
763
|
+
label: "label",
|
|
764
|
+
value: "value"
|
|
765
|
+
};
|
|
766
|
+
/**
|
|
767
|
+
* 根据value从treeData中找到对象
|
|
768
|
+
* @param data
|
|
769
|
+
* @param value
|
|
770
|
+
* @param fieldNames
|
|
771
|
+
* @param cb 对象:同步 方法:回调,可以理解为异步
|
|
772
|
+
*/
|
|
773
|
+
|
|
774
|
+
var findTargetInTree = function findTargetInTree(data, value, fieldNames, cb) {
|
|
775
|
+
var index = lodash.findIndex(data, function (item) {
|
|
776
|
+
return lodash.get(item, (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value) || treeDefaultNames.value) === value;
|
|
777
|
+
});
|
|
778
|
+
|
|
779
|
+
if (index > -1) {
|
|
780
|
+
if (lodash.isFunction(cb)) {
|
|
781
|
+
cb(index, data[index], data);
|
|
782
|
+
} else {
|
|
783
|
+
cb.index = index;
|
|
784
|
+
cb.target = data[index];
|
|
785
|
+
cb.list = data;
|
|
786
|
+
}
|
|
787
|
+
|
|
788
|
+
return;
|
|
789
|
+
}
|
|
790
|
+
|
|
791
|
+
lodash.forEach(data, function (item) {
|
|
792
|
+
var children = lodash.get(item, (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.children) || treeDefaultNames.children);
|
|
793
|
+
|
|
794
|
+
if (lodash.size(children) > 0) {
|
|
795
|
+
findTargetInTree(children, value, fieldNames, cb);
|
|
796
|
+
}
|
|
797
|
+
});
|
|
798
|
+
};
|
|
799
|
+
/**
|
|
800
|
+
* 根据value从treeData中找出对象及父列表
|
|
801
|
+
* @param data
|
|
802
|
+
* @param value
|
|
803
|
+
* @param fieldNames
|
|
804
|
+
* @param cb
|
|
805
|
+
* @param parent
|
|
806
|
+
*/
|
|
807
|
+
|
|
808
|
+
var findTargetListInTree = function findTargetListInTree(data, value, fieldNames, cb) {
|
|
809
|
+
var parent = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
|
|
810
|
+
var target = lodash.find(data, function (item) {
|
|
811
|
+
return lodash.get(item, (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value) || treeDefaultNames.value) === value;
|
|
812
|
+
});
|
|
813
|
+
|
|
814
|
+
if (target) {
|
|
815
|
+
if (lodash.isFunction(cb)) {
|
|
816
|
+
cb([].concat(_toConsumableArray(parent), [target]));
|
|
817
|
+
} else {
|
|
818
|
+
cb.list = [].concat(_toConsumableArray(parent), [target]);
|
|
819
|
+
}
|
|
820
|
+
|
|
821
|
+
return;
|
|
822
|
+
}
|
|
823
|
+
|
|
824
|
+
lodash.forEach(data, function (item) {
|
|
825
|
+
var children = lodash.get(item, (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.children) || treeDefaultNames.children);
|
|
826
|
+
|
|
827
|
+
if (lodash.size(children) > 0) {
|
|
828
|
+
findTargetListInTree(children, value, fieldNames, cb, [].concat(_toConsumableArray(parent), [item]));
|
|
829
|
+
}
|
|
830
|
+
});
|
|
831
|
+
};
|
|
832
|
+
|
|
833
|
+
/**
|
|
834
|
+
* 剔除showState或showStateRules规则为!true的值
|
|
835
|
+
* @param values
|
|
836
|
+
* @param showState
|
|
837
|
+
* @param showStateRules
|
|
838
|
+
*/
|
|
839
|
+
|
|
840
|
+
var getValidValues = function getValidValues(values, showState, showStateRules) {
|
|
841
|
+
if (showState) {
|
|
842
|
+
var invalidKeys = lodash.filter(lodash.keys(showState), function (key) {
|
|
843
|
+
return !showState[key];
|
|
844
|
+
});
|
|
845
|
+
return lodash.omit(values, invalidKeys);
|
|
846
|
+
}
|
|
847
|
+
|
|
848
|
+
if (showStateRules) {
|
|
849
|
+
var _invalidKeys = lodash.filter(lodash.keys(showStateRules), function (key) {
|
|
850
|
+
return !showStateRules[key](values);
|
|
851
|
+
});
|
|
852
|
+
|
|
853
|
+
return lodash.omit(values, _invalidKeys);
|
|
854
|
+
}
|
|
855
|
+
|
|
856
|
+
return values;
|
|
857
|
+
};
|
|
858
|
+
/**
|
|
859
|
+
* string类型的path转为arr
|
|
860
|
+
* @param path
|
|
861
|
+
*/
|
|
862
|
+
|
|
863
|
+
var convertPathToList = function convertPathToList(path) {
|
|
864
|
+
if (!path) {
|
|
865
|
+
return undefined;
|
|
866
|
+
}
|
|
867
|
+
|
|
868
|
+
if (lodash.isArray(path)) {
|
|
869
|
+
return path;
|
|
870
|
+
}
|
|
871
|
+
|
|
872
|
+
if (path && lodash.isString(path) && path.indexOf(".") > 0) {
|
|
873
|
+
return lodash.split(path, ".");
|
|
874
|
+
}
|
|
875
|
+
|
|
876
|
+
return [path];
|
|
877
|
+
};
|
|
878
|
+
/**
|
|
879
|
+
* 将listState 中的数据通过id merge到 list item中
|
|
880
|
+
* ps:数组会替换
|
|
881
|
+
* 注意:mergeWith 会改变原始对象
|
|
882
|
+
* @param list
|
|
883
|
+
* @param listState
|
|
884
|
+
* @param id
|
|
885
|
+
*/
|
|
886
|
+
|
|
887
|
+
var mergeStateToList = function mergeStateToList(list, listState, id) {
|
|
888
|
+
if (!listState || !id) {
|
|
889
|
+
return list;
|
|
890
|
+
}
|
|
891
|
+
|
|
892
|
+
return lodash.map(list, function (item) {
|
|
893
|
+
var idName = lodash.isFunction(id) ? id(item) : id; //如果listState中有值,merge处理
|
|
894
|
+
|
|
895
|
+
var stateData = lodash.get(listState, idName);
|
|
896
|
+
|
|
897
|
+
if (!stateData || lodash.isEmpty(stateData) || lodash.isFunction(stateData) || !lodash.isObject(stateData)) {
|
|
898
|
+
return item;
|
|
899
|
+
} //只有是对象(键值对)才合并
|
|
900
|
+
|
|
901
|
+
|
|
902
|
+
return lodash.mergeWith(item, stateData, function (objValue, srcValue) {
|
|
903
|
+
//如果是数组,替换
|
|
904
|
+
if (lodash.isArray(objValue) || lodash.isArray(srcValue)) {
|
|
905
|
+
return srcValue;
|
|
906
|
+
}
|
|
907
|
+
});
|
|
908
|
+
});
|
|
909
|
+
};
|
|
910
|
+
|
|
911
|
+
/**
|
|
912
|
+
* 唯一id
|
|
913
|
+
*/
|
|
914
|
+
|
|
915
|
+
var generateId = function generateId() {
|
|
916
|
+
return Number(Math.random().toString().substr(3, 3) + Date.now()).toString(36);
|
|
917
|
+
};
|
|
918
|
+
/**
|
|
919
|
+
* ref 传递
|
|
920
|
+
*/
|
|
921
|
+
|
|
922
|
+
var createExpose = function createExpose(methods, targetRef) {
|
|
923
|
+
return lodash.reduce(methods, function (pair, method) {
|
|
924
|
+
return _objectSpread2(_objectSpread2({}, pair), {}, _defineProperty({}, method, function () {
|
|
925
|
+
var _targetRef$value, _targetRef$value$meth;
|
|
926
|
+
|
|
927
|
+
for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
928
|
+
params[_key] = arguments[_key];
|
|
929
|
+
}
|
|
930
|
+
|
|
931
|
+
return (_targetRef$value = targetRef.value) === null || _targetRef$value === void 0 ? void 0 : (_targetRef$value$meth = _targetRef$value[method]) === null || _targetRef$value$meth === void 0 ? void 0 : _targetRef$value$meth.call.apply(_targetRef$value$meth, [_targetRef$value].concat(params));
|
|
932
|
+
}));
|
|
933
|
+
}, {});
|
|
934
|
+
};
|
|
935
|
+
|
|
757
936
|
var defaultPage = {
|
|
758
937
|
page: 1,
|
|
759
938
|
pageSize: 10
|
|
@@ -761,16 +940,38 @@ var defaultPage = {
|
|
|
761
940
|
|
|
762
941
|
var proCurdProps = function proCurdProps() {
|
|
763
942
|
return {
|
|
764
|
-
/**
|
|
765
|
-
*
|
|
943
|
+
/**
|
|
944
|
+
* 配置(静态)
|
|
945
|
+
*/
|
|
946
|
+
columns: {
|
|
947
|
+
type: Array
|
|
948
|
+
},
|
|
949
|
+
|
|
950
|
+
/**
|
|
951
|
+
* 配置(动态)
|
|
952
|
+
* columns动态属性兼容
|
|
953
|
+
*/
|
|
954
|
+
columnState: {
|
|
955
|
+
type: Object
|
|
956
|
+
},
|
|
957
|
+
|
|
958
|
+
/**
|
|
959
|
+
* 录入组件集
|
|
960
|
+
*/
|
|
961
|
+
formElementMap: {
|
|
962
|
+
type: Object
|
|
963
|
+
},
|
|
964
|
+
|
|
965
|
+
/**
|
|
966
|
+
* 列表 或 详情 的唯一标识
|
|
766
967
|
*/
|
|
767
968
|
rowKey: {
|
|
768
969
|
type: String,
|
|
769
970
|
"default": "id"
|
|
770
971
|
},
|
|
771
972
|
|
|
772
|
-
/**
|
|
773
|
-
* operates
|
|
973
|
+
/**
|
|
974
|
+
* operates
|
|
774
975
|
*/
|
|
775
976
|
operates: {
|
|
776
977
|
type: Array
|
|
@@ -799,58 +1000,67 @@ var Curd = vue.defineComponent({
|
|
|
799
1000
|
expose = _ref.expose;
|
|
800
1001
|
|
|
801
1002
|
var _ref2 = useProModule(),
|
|
802
|
-
|
|
1003
|
+
elementMap = _ref2.elementMap,
|
|
803
1004
|
state = _ref2.state,
|
|
804
1005
|
sendEvent = _ref2.sendEvent,
|
|
805
1006
|
sendRequest = _ref2.sendRequest;
|
|
806
|
-
/**
|
|
807
|
-
*
|
|
808
|
-
* @param list
|
|
809
|
-
* @param propName
|
|
1007
|
+
/**
|
|
1008
|
+
* columns columnState 合并
|
|
810
1009
|
*/
|
|
811
1010
|
|
|
812
1011
|
|
|
813
|
-
var
|
|
814
|
-
return
|
|
815
|
-
return
|
|
1012
|
+
var columns = vue.computed(function () {
|
|
1013
|
+
return mergeStateToList(props.columns, props.columnState, function (item) {
|
|
1014
|
+
return getColumnFormItemName(item);
|
|
816
1015
|
});
|
|
1016
|
+
});
|
|
1017
|
+
/*********************************** 渲染组件 ***************************************/
|
|
1018
|
+
// 获取FormItem VNode
|
|
1019
|
+
|
|
1020
|
+
var getFormItemVNode = function getFormItemVNode(column) {
|
|
1021
|
+
var needRules = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
1022
|
+
return getFormItemEl(props.formElementMap, column, needRules);
|
|
1023
|
+
}; // 获取Item VNode
|
|
1024
|
+
|
|
1025
|
+
|
|
1026
|
+
var getItemVNode = function getItemVNode(column, value) {
|
|
1027
|
+
return getItemEl(elementMap, column, value);
|
|
817
1028
|
};
|
|
818
|
-
/**
|
|
819
|
-
*
|
|
1029
|
+
/**
|
|
1030
|
+
* ${signName} 配置为true 会被选择
|
|
1031
|
+
* @param signName
|
|
1032
|
+
* @param opposite 如果为true,未配置(undefined)会被选择
|
|
820
1033
|
*/
|
|
821
1034
|
|
|
822
1035
|
|
|
1036
|
+
var getSignColumns = function getSignColumns(signName, opposite) {
|
|
1037
|
+
var signColumns = lodash.filter(columns.value, function (item) {
|
|
1038
|
+
var sign = lodash.get(item, ["extra", signName]) || lodash.get(item, signName);
|
|
1039
|
+
|
|
1040
|
+
if (opposite) {
|
|
1041
|
+
//不为false 即为选中
|
|
1042
|
+
return sign !== false;
|
|
1043
|
+
} //只有true 才为选中
|
|
1044
|
+
|
|
1045
|
+
|
|
1046
|
+
return sign;
|
|
1047
|
+
});
|
|
1048
|
+
return lodash.sortBy(signColumns, function (item) {
|
|
1049
|
+
return lodash.get(item, ["extra", "".concat(signName, "Sort")]) || lodash.get(item, "".concat(signName, "Sort"));
|
|
1050
|
+
});
|
|
1051
|
+
};
|
|
1052
|
+
|
|
823
1053
|
var formColumns = vue.computed(function () {
|
|
824
|
-
return
|
|
825
|
-
return !item.hideInForm;
|
|
826
|
-
}), "formSort");
|
|
1054
|
+
return getSignColumns("form", true);
|
|
827
1055
|
});
|
|
828
|
-
/**
|
|
829
|
-
* 非 hideInDetail columns
|
|
830
|
-
*/
|
|
831
|
-
|
|
832
1056
|
var descColumns = vue.computed(function () {
|
|
833
|
-
return
|
|
834
|
-
return !item.hideInDetail;
|
|
835
|
-
}), "descSort");
|
|
1057
|
+
return getSignColumns("detail", true);
|
|
836
1058
|
});
|
|
837
|
-
/**
|
|
838
|
-
* 非 hideInTable columns
|
|
839
|
-
*/
|
|
840
|
-
|
|
841
1059
|
var tableColumns = vue.computed(function () {
|
|
842
|
-
return
|
|
843
|
-
return !item.hideInTable;
|
|
844
|
-
}), "tableSort");
|
|
1060
|
+
return getSignColumns("table", true);
|
|
845
1061
|
});
|
|
846
|
-
/**
|
|
847
|
-
* search columns
|
|
848
|
-
*/
|
|
849
|
-
|
|
850
1062
|
var searchColumns = vue.computed(function () {
|
|
851
|
-
return
|
|
852
|
-
return !!item.search;
|
|
853
|
-
}), "searchSort");
|
|
1063
|
+
return getSignColumns("search");
|
|
854
1064
|
});
|
|
855
1065
|
/******************************** 逻辑 *************************************/
|
|
856
1066
|
//上一次发起列表请求的参数
|
|
@@ -935,6 +1145,13 @@ var Curd = vue.defineComponent({
|
|
|
935
1145
|
return props.modalProps;
|
|
936
1146
|
});
|
|
937
1147
|
provideProCurd({
|
|
1148
|
+
columns: columns,
|
|
1149
|
+
getSignColumns: getSignColumns,
|
|
1150
|
+
getFormItemVNode: getFormItemVNode,
|
|
1151
|
+
getItemVNode: getItemVNode,
|
|
1152
|
+
elementMap: elementMap,
|
|
1153
|
+
formElementMap: props.formElementMap,
|
|
1154
|
+
//
|
|
938
1155
|
rowKey: props.rowKey,
|
|
939
1156
|
curdState: state,
|
|
940
1157
|
formColumns: formColumns,
|
|
@@ -1416,21 +1633,38 @@ function _isSlot(s) {
|
|
|
1416
1633
|
|
|
1417
1634
|
var createCurdDesc = function createCurdDesc(Descriptions, DescriptionsItem) {
|
|
1418
1635
|
return vue.defineComponent({
|
|
1419
|
-
props: _objectSpread2({}, Descriptions.props),
|
|
1636
|
+
props: _objectSpread2(_objectSpread2({}, Descriptions.props), {}, {
|
|
1637
|
+
//重写Item content
|
|
1638
|
+
renderItem: {
|
|
1639
|
+
type: Function
|
|
1640
|
+
},
|
|
1641
|
+
//标记名称
|
|
1642
|
+
signName: {
|
|
1643
|
+
type: String
|
|
1644
|
+
}
|
|
1645
|
+
}),
|
|
1420
1646
|
setup: function setup(props, _ref) {
|
|
1421
1647
|
var slots = _ref.slots;
|
|
1422
1648
|
|
|
1423
|
-
var _useProModule = useProModule(),
|
|
1424
|
-
getItemVNode = _useProModule.getItemVNode;
|
|
1425
|
-
|
|
1426
1649
|
var _useProCurd = useProCurd(),
|
|
1650
|
+
getItemVNode = _useProCurd.getItemVNode,
|
|
1427
1651
|
curdState = _useProCurd.curdState,
|
|
1428
|
-
descColumns = _useProCurd.descColumns
|
|
1652
|
+
descColumns = _useProCurd.descColumns,
|
|
1653
|
+
getSignColumns = _useProCurd.getSignColumns;
|
|
1429
1654
|
|
|
1430
1655
|
var descVNodes = vue.computed(function () {
|
|
1431
|
-
|
|
1656
|
+
var columns = props.signName ? getSignColumns(props.signName) : descColumns.value;
|
|
1657
|
+
return lodash.map(columns, function (item) {
|
|
1432
1658
|
var _slot;
|
|
1433
1659
|
|
|
1660
|
+
var _props$renderItem;
|
|
1661
|
+
|
|
1662
|
+
var vn = (_props$renderItem = props.renderItem) === null || _props$renderItem === void 0 ? void 0 : _props$renderItem.call(props, item);
|
|
1663
|
+
|
|
1664
|
+
if (vn) {
|
|
1665
|
+
return vn;
|
|
1666
|
+
}
|
|
1667
|
+
|
|
1434
1668
|
var value = lodash.get(curdState.detailData, item.dataIndex);
|
|
1435
1669
|
return vue.createVNode(DescriptionsItem, vue.mergeProps({
|
|
1436
1670
|
"key": item.dataIndex,
|
|
@@ -1447,7 +1681,7 @@ var createCurdDesc = function createCurdDesc(Descriptions, DescriptionsItem) {
|
|
|
1447
1681
|
|
|
1448
1682
|
return vue.createVNode(Descriptions, props, _objectSpread2({
|
|
1449
1683
|
"default": function _default() {
|
|
1450
|
-
return [(_slots$start = slots.start) === null || _slots$start === void 0 ? void 0 : _slots$start.call(slots), descVNodes, (_slots$default = slots["default"]) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots)];
|
|
1684
|
+
return [(_slots$start = slots.start) === null || _slots$start === void 0 ? void 0 : _slots$start.call(slots), descVNodes.value, (_slots$default = slots["default"]) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots)];
|
|
1451
1685
|
}
|
|
1452
1686
|
}, lodash.omit(slots, "default", "start")));
|
|
1453
1687
|
};
|
|
@@ -1457,6 +1691,10 @@ var createCurdDesc = function createCurdDesc(Descriptions, DescriptionsItem) {
|
|
|
1457
1691
|
|
|
1458
1692
|
var proCurdAddOrEditProps = function proCurdAddOrEditProps() {
|
|
1459
1693
|
return {
|
|
1694
|
+
//标记名称
|
|
1695
|
+
signName: {
|
|
1696
|
+
type: String
|
|
1697
|
+
},
|
|
1460
1698
|
//是否使用operate bar
|
|
1461
1699
|
operateBar: {
|
|
1462
1700
|
type: Boolean,
|
|
@@ -1488,22 +1726,36 @@ var proCurdAddOrEditProps = function proCurdAddOrEditProps() {
|
|
|
1488
1726
|
|
|
1489
1727
|
var createCurdForm = function createCurdForm(Form, Button, convertFormProps) {
|
|
1490
1728
|
return vue.defineComponent({
|
|
1729
|
+
inheritAttrs: false,
|
|
1491
1730
|
props: _objectSpread2(_objectSpread2({}, Form.props), proCurdAddOrEditProps()),
|
|
1492
1731
|
setup: function setup(props, _ref) {
|
|
1493
|
-
var slots = _ref.slots
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
elementMap = _useProModule.elementMap,
|
|
1497
|
-
formElementMap = _useProModule.formElementMap;
|
|
1732
|
+
var slots = _ref.slots,
|
|
1733
|
+
attrs = _ref.attrs,
|
|
1734
|
+
expose = _ref.expose;
|
|
1498
1735
|
|
|
1499
1736
|
var _useProCurd = useProCurd(),
|
|
1737
|
+
elementMap = _useProCurd.elementMap,
|
|
1738
|
+
formElementMap = _useProCurd.formElementMap,
|
|
1500
1739
|
curdState = _useProCurd.curdState,
|
|
1501
1740
|
formColumns = _useProCurd.formColumns,
|
|
1741
|
+
getSignColumns = _useProCurd.getSignColumns,
|
|
1502
1742
|
sendCurdEvent = _useProCurd.sendCurdEvent;
|
|
1503
1743
|
|
|
1504
1744
|
var formRef = vue.ref();
|
|
1745
|
+
var columns = vue.computed(function () {
|
|
1746
|
+
if (props.signName) {
|
|
1747
|
+
return getSignColumns(props.signName);
|
|
1748
|
+
}
|
|
1749
|
+
|
|
1750
|
+
return formColumns.value;
|
|
1751
|
+
});
|
|
1752
|
+
|
|
1753
|
+
var handleFinish = function handleFinish(values, originValues) {
|
|
1754
|
+
if (attrs.onFinish) {
|
|
1755
|
+
attrs.onFinish(values, originValues);
|
|
1756
|
+
return;
|
|
1757
|
+
}
|
|
1505
1758
|
|
|
1506
|
-
var handleFinish = function handleFinish(values) {
|
|
1507
1759
|
if (curdState.mode === exports.CurdCurrentMode.EDIT) {
|
|
1508
1760
|
//edit
|
|
1509
1761
|
sendCurdEvent({
|
|
@@ -1535,15 +1787,22 @@ var createCurdForm = function createCurdForm(Form, Button, convertFormProps) {
|
|
|
1535
1787
|
(_formRef$value2 = formRef.value) === null || _formRef$value2 === void 0 ? void 0 : _formRef$value2.submit();
|
|
1536
1788
|
};
|
|
1537
1789
|
|
|
1790
|
+
expose({
|
|
1791
|
+
submit: function submit() {
|
|
1792
|
+
var _formRef$value3;
|
|
1793
|
+
|
|
1794
|
+
(_formRef$value3 = formRef.value) === null || _formRef$value3 === void 0 ? void 0 : _formRef$value3.submit();
|
|
1795
|
+
}
|
|
1796
|
+
});
|
|
1538
1797
|
return function () {
|
|
1539
1798
|
var _slots$divide, _slots$operateStart, _slots$operateCenter, _slots$operateEnd, _slots$default;
|
|
1540
1799
|
|
|
1541
1800
|
return vue.createVNode(Form, vue.mergeProps({
|
|
1542
1801
|
"ref": formRef
|
|
1543
|
-
}, props, {
|
|
1802
|
+
}, lodash.omit(attrs, "onFinish"), props, {
|
|
1544
1803
|
"elementMap": props.elementMap || elementMap,
|
|
1545
1804
|
"formElementMap": props.formElementMap || formElementMap,
|
|
1546
|
-
"columns":
|
|
1805
|
+
"columns": columns.value,
|
|
1547
1806
|
"model": curdState.detailData,
|
|
1548
1807
|
"readonly": curdState.mode === exports.CurdCurrentMode.DETAIL,
|
|
1549
1808
|
"onFinish": handleFinish
|
|
@@ -1605,11 +1864,9 @@ var createCurdList = function createCurdList(SearchForm, Table) {
|
|
|
1605
1864
|
setup: function setup(props, _ref) {
|
|
1606
1865
|
var slots = _ref.slots;
|
|
1607
1866
|
|
|
1608
|
-
var _useProModule = useProModule(),
|
|
1609
|
-
elementMap = _useProModule.elementMap,
|
|
1610
|
-
formElementMap = _useProModule.formElementMap;
|
|
1611
|
-
|
|
1612
1867
|
var _useProCurd = useProCurd(),
|
|
1868
|
+
elementMap = _useProCurd.elementMap,
|
|
1869
|
+
formElementMap = _useProCurd.formElementMap,
|
|
1613
1870
|
curdState = _useProCurd.curdState,
|
|
1614
1871
|
searchColumns = _useProCurd.searchColumns,
|
|
1615
1872
|
tableColumns = _useProCurd.tableColumns,
|
|
@@ -1723,6 +1980,114 @@ var createCurdList = function createCurdList(SearchForm, Table) {
|
|
|
1723
1980
|
});
|
|
1724
1981
|
};
|
|
1725
1982
|
|
|
1983
|
+
/**
|
|
1984
|
+
* ProFormList ctx
|
|
1985
|
+
*/
|
|
1986
|
+
|
|
1987
|
+
var ProFormListKey = Symbol("pro-form-list");
|
|
1988
|
+
var useProFormList = function useProFormList() {
|
|
1989
|
+
return vue.inject(ProFormListKey);
|
|
1990
|
+
};
|
|
1991
|
+
var provideProFormList = function provideProFormList(ctx) {
|
|
1992
|
+
vue.provide(ProFormListKey, ctx);
|
|
1993
|
+
};
|
|
1994
|
+
var FormListProvider = vue.defineComponent({
|
|
1995
|
+
props: {
|
|
1996
|
+
pathList: {
|
|
1997
|
+
type: Array
|
|
1998
|
+
}
|
|
1999
|
+
},
|
|
2000
|
+
setup: function setup(props, _ref) {
|
|
2001
|
+
var slots = _ref.slots;
|
|
2002
|
+
provideProFormList({
|
|
2003
|
+
pathList: props.pathList
|
|
2004
|
+
});
|
|
2005
|
+
return function () {
|
|
2006
|
+
var _slots$default;
|
|
2007
|
+
|
|
2008
|
+
return (_slots$default = slots["default"]) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots);
|
|
2009
|
+
};
|
|
2010
|
+
}
|
|
2011
|
+
});
|
|
2012
|
+
|
|
2013
|
+
var createFormList = function createFormList(FormItem) {
|
|
2014
|
+
return vue.defineComponent({
|
|
2015
|
+
props: _objectSpread2(_objectSpread2({}, FormItem.props), {}, {
|
|
2016
|
+
//每行默认id
|
|
2017
|
+
rowKey: {
|
|
2018
|
+
type: String,
|
|
2019
|
+
"default": "id"
|
|
2020
|
+
}
|
|
2021
|
+
}),
|
|
2022
|
+
setup: function setup(props, _ref2) {
|
|
2023
|
+
var slots = _ref2.slots;
|
|
2024
|
+
|
|
2025
|
+
var _useProForm = useProForm(),
|
|
2026
|
+
formState = _useProForm.formState,
|
|
2027
|
+
readonly = _useProForm.readonly;
|
|
2028
|
+
|
|
2029
|
+
var formListCtx = useProFormList();
|
|
2030
|
+
var nameList = convertPathToList(props.name);
|
|
2031
|
+
var path = formListCtx !== null && formListCtx !== void 0 && formListCtx.pathList ? [].concat(_toConsumableArray(formListCtx.pathList), _toConsumableArray(nameList)) : nameList;
|
|
2032
|
+
|
|
2033
|
+
var handleAdd = function handleAdd() {
|
|
2034
|
+
var targetList = lodash.get(formState, path);
|
|
2035
|
+
|
|
2036
|
+
if (!lodash.isArray(targetList)) {
|
|
2037
|
+
targetList = [];
|
|
2038
|
+
}
|
|
2039
|
+
|
|
2040
|
+
targetList.push(_defineProperty({}, props.rowKey, new Date().valueOf()));
|
|
2041
|
+
lodash.set(formState, path, targetList);
|
|
2042
|
+
};
|
|
2043
|
+
|
|
2044
|
+
var handleRemove = function handleRemove(index) {
|
|
2045
|
+
var targetList = lodash.get(formState, path);
|
|
2046
|
+
|
|
2047
|
+
if (lodash.size(targetList) <= 0) {
|
|
2048
|
+
return;
|
|
2049
|
+
}
|
|
2050
|
+
|
|
2051
|
+
targetList.splice(index, 1);
|
|
2052
|
+
};
|
|
2053
|
+
|
|
2054
|
+
return function () {
|
|
2055
|
+
var _slots$add;
|
|
2056
|
+
|
|
2057
|
+
return vue.createVNode(FormItem, lodash.omit(props, "rowKey"), {
|
|
2058
|
+
"default": function _default() {
|
|
2059
|
+
return [lodash.map(lodash.get(formState, path), function (item, index) {
|
|
2060
|
+
var _slots$default2, _slots$itemAdd, _slots$itemMinus;
|
|
2061
|
+
|
|
2062
|
+
return vue.createVNode(FormListProvider, {
|
|
2063
|
+
"key": item[props.rowKey] || index,
|
|
2064
|
+
"pathList": [].concat(_toConsumableArray(path), [index])
|
|
2065
|
+
}, {
|
|
2066
|
+
"default": function _default() {
|
|
2067
|
+
return [vue.createVNode("div", {
|
|
2068
|
+
"class": "pro-form-list-item"
|
|
2069
|
+
}, [(_slots$default2 = slots["default"]) === null || _slots$default2 === void 0 ? void 0 : _slots$default2.call(slots), !readonly.value && vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
|
|
2070
|
+
"class": "pro-form-list-item-add",
|
|
2071
|
+
"onClick": handleAdd
|
|
2072
|
+
}, [(_slots$itemAdd = slots.itemAdd) === null || _slots$itemAdd === void 0 ? void 0 : _slots$itemAdd.call(slots)]), vue.createVNode("div", {
|
|
2073
|
+
"class": "pro-form-list-item-minus",
|
|
2074
|
+
"onClick": function onClick() {
|
|
2075
|
+
return handleRemove(index);
|
|
2076
|
+
}
|
|
2077
|
+
}, [(_slots$itemMinus = slots.itemMinus) === null || _slots$itemMinus === void 0 ? void 0 : _slots$itemMinus.call(slots)])])])];
|
|
2078
|
+
}
|
|
2079
|
+
});
|
|
2080
|
+
}), !readonly.value && vue.createVNode("div", {
|
|
2081
|
+
"class": "pro-form-list-add",
|
|
2082
|
+
"onClick": handleAdd
|
|
2083
|
+
}, [(_slots$add = slots.add) === null || _slots$add === void 0 ? void 0 : _slots$add.call(slots)])];
|
|
2084
|
+
}
|
|
2085
|
+
});
|
|
2086
|
+
};
|
|
2087
|
+
}
|
|
2088
|
+
});
|
|
2089
|
+
};
|
|
2090
|
+
|
|
1726
2091
|
var ProFormKey = Symbol("pro-form");
|
|
1727
2092
|
var useProForm = function useProForm() {
|
|
1728
2093
|
return vue.inject(ProFormKey);
|
|
@@ -1734,24 +2099,24 @@ var provideProForm = function provideProForm(ctx) {
|
|
|
1734
2099
|
|
|
1735
2100
|
var proFormProps = function proFormProps() {
|
|
1736
2101
|
return {
|
|
1737
|
-
/**
|
|
1738
|
-
* 同 antd 或 element form中的model
|
|
2102
|
+
/**
|
|
2103
|
+
* 同 antd 或 element form中的model
|
|
1739
2104
|
*/
|
|
1740
2105
|
model: {
|
|
1741
2106
|
type: Object
|
|
1742
2107
|
},
|
|
1743
2108
|
|
|
1744
|
-
/**
|
|
1745
|
-
* 子组件是否只读样式
|
|
2109
|
+
/**
|
|
2110
|
+
* 子组件是否只读样式
|
|
1746
2111
|
*/
|
|
1747
2112
|
readonly: {
|
|
1748
2113
|
type: Boolean,
|
|
1749
2114
|
"default": undefined
|
|
1750
2115
|
},
|
|
1751
2116
|
|
|
1752
|
-
/**
|
|
1753
|
-
* FormComponent 根据此项来确定组件是否显示
|
|
1754
|
-
* rules 根据rules中方法生成showState对象
|
|
2117
|
+
/**
|
|
2118
|
+
* FormComponent 根据此项来确定组件是否显示
|
|
2119
|
+
* rules 根据rules中方法生成showState对象
|
|
1755
2120
|
*/
|
|
1756
2121
|
showState: {
|
|
1757
2122
|
type: Object
|
|
@@ -1760,8 +2125,8 @@ var proFormProps = function proFormProps() {
|
|
|
1760
2125
|
type: Object
|
|
1761
2126
|
},
|
|
1762
2127
|
|
|
1763
|
-
/**
|
|
1764
|
-
* 是否只读
|
|
2128
|
+
/**
|
|
2129
|
+
* 是否只读
|
|
1765
2130
|
*/
|
|
1766
2131
|
readonlyState: {
|
|
1767
2132
|
type: Object
|
|
@@ -1770,8 +2135,8 @@ var proFormProps = function proFormProps() {
|
|
|
1770
2135
|
type: Object
|
|
1771
2136
|
},
|
|
1772
2137
|
|
|
1773
|
-
/**
|
|
1774
|
-
* 是否disabled
|
|
2138
|
+
/**
|
|
2139
|
+
* 是否disabled
|
|
1775
2140
|
*/
|
|
1776
2141
|
disableState: {
|
|
1777
2142
|
type: Object
|
|
@@ -1780,8 +2145,8 @@ var proFormProps = function proFormProps() {
|
|
|
1780
2145
|
type: Object
|
|
1781
2146
|
},
|
|
1782
2147
|
|
|
1783
|
-
/**
|
|
1784
|
-
*
|
|
2148
|
+
/**
|
|
2149
|
+
*
|
|
1785
2150
|
*/
|
|
1786
2151
|
columns: {
|
|
1787
2152
|
type: Array
|
|
@@ -1790,30 +2155,30 @@ var proFormProps = function proFormProps() {
|
|
|
1790
2155
|
type: Object
|
|
1791
2156
|
},
|
|
1792
2157
|
|
|
1793
|
-
/**
|
|
1794
|
-
* 展示控件集合,readonly模式下使用这些组件渲染
|
|
2158
|
+
/**
|
|
2159
|
+
* 展示控件集合,readonly模式下使用这些组件渲染
|
|
1795
2160
|
*/
|
|
1796
2161
|
elementMap: {
|
|
1797
2162
|
type: Object
|
|
1798
2163
|
},
|
|
1799
2164
|
|
|
1800
|
-
/**
|
|
1801
|
-
* 录入控件集合
|
|
2165
|
+
/**
|
|
2166
|
+
* 录入控件集合
|
|
1802
2167
|
*/
|
|
1803
2168
|
formElementMap: {
|
|
1804
2169
|
type: Object
|
|
1805
2170
|
},
|
|
1806
2171
|
|
|
1807
|
-
/**
|
|
1808
|
-
* 是否启用rules验证
|
|
2172
|
+
/**
|
|
2173
|
+
* 是否启用rules验证
|
|
1809
2174
|
*/
|
|
1810
2175
|
needRules: {
|
|
1811
2176
|
type: Boolean,
|
|
1812
2177
|
"default": true
|
|
1813
2178
|
},
|
|
1814
2179
|
|
|
1815
|
-
/**
|
|
1816
|
-
* provide传递
|
|
2180
|
+
/**
|
|
2181
|
+
* provide传递
|
|
1817
2182
|
*/
|
|
1818
2183
|
provideExtra: {
|
|
1819
2184
|
type: Object
|
|
@@ -1903,7 +2268,9 @@ var createForm = function createForm(Form, Grid) {
|
|
|
1903
2268
|
columns: columns,
|
|
1904
2269
|
//
|
|
1905
2270
|
formRef: formRef
|
|
1906
|
-
}, props.provideExtra));
|
|
2271
|
+
}, props.provideExtra)); //为了不warning ...
|
|
2272
|
+
|
|
2273
|
+
provideProFormList({});
|
|
1907
2274
|
var invalidKeys = lodash.keys(proFormProps());
|
|
1908
2275
|
var gridKeys = lodash.keys(lodash.omit(Grid.props, "items"));
|
|
1909
2276
|
return function () {
|
|
@@ -1945,40 +2312,39 @@ exports.SearchMode = void 0;
|
|
|
1945
2312
|
|
|
1946
2313
|
var proSearchFormProps = function proSearchFormProps() {
|
|
1947
2314
|
return {
|
|
1948
|
-
/**
|
|
1949
|
-
* 需要监听的对象
|
|
2315
|
+
/**
|
|
2316
|
+
* 需要监听的对象
|
|
1950
2317
|
*/
|
|
1951
2318
|
model: {
|
|
1952
|
-
type: Object
|
|
1953
|
-
required: true
|
|
2319
|
+
type: Object
|
|
1954
2320
|
},
|
|
1955
2321
|
|
|
1956
|
-
/**
|
|
1957
|
-
* 初始化触发 onFinish
|
|
2322
|
+
/**
|
|
2323
|
+
* 初始化触发 onFinish
|
|
1958
2324
|
*/
|
|
1959
2325
|
initEmit: {
|
|
1960
2326
|
type: Boolean,
|
|
1961
2327
|
"default": true
|
|
1962
2328
|
},
|
|
1963
2329
|
|
|
1964
|
-
/**
|
|
1965
|
-
* 模式 自动触发或者手动触发 onFinish
|
|
2330
|
+
/**
|
|
2331
|
+
* 模式 自动触发或者手动触发 onFinish
|
|
1966
2332
|
*/
|
|
1967
2333
|
searchMode: {
|
|
1968
2334
|
type: String,
|
|
1969
2335
|
"default": exports.SearchMode.AUTO
|
|
1970
2336
|
},
|
|
1971
2337
|
|
|
1972
|
-
/**
|
|
1973
|
-
* 配置 同ProForm中的columns
|
|
1974
|
-
* 可以根据column中valueType计算出默认的debounceKeys
|
|
2338
|
+
/**
|
|
2339
|
+
* 配置 同ProForm中的columns
|
|
2340
|
+
* 可以根据column中valueType计算出默认的debounceKeys
|
|
1975
2341
|
*/
|
|
1976
2342
|
columns: {
|
|
1977
2343
|
type: Array
|
|
1978
2344
|
},
|
|
1979
2345
|
|
|
1980
|
-
/**
|
|
1981
|
-
* 需要debounce处理的字段
|
|
2346
|
+
/**
|
|
2347
|
+
* 需要debounce处理的字段
|
|
1982
2348
|
*/
|
|
1983
2349
|
debounceKeys: {
|
|
1984
2350
|
type: Array
|
|
@@ -1995,9 +2361,9 @@ var proSearchFormProps = function proSearchFormProps() {
|
|
|
1995
2361
|
};
|
|
1996
2362
|
};
|
|
1997
2363
|
|
|
1998
|
-
/**
|
|
1999
|
-
* 该组件只是个模式,最终返回null,不做任何渲染,应配合着ProForm的包装类一起使用
|
|
2000
|
-
* 针对传入的model(监听对象)做相应的finish(回调)处理
|
|
2364
|
+
/**
|
|
2365
|
+
* 该组件只是个模式,最终返回null,不做任何渲染,应配合着ProForm的包装类一起使用
|
|
2366
|
+
* 针对传入的model(监听对象)做相应的finish(回调)处理
|
|
2001
2367
|
*/
|
|
2002
2368
|
var createSearchForm = function createSearchForm(Form, Props) {
|
|
2003
2369
|
return vue.defineComponent({
|
|
@@ -2068,116 +2434,6 @@ var createSearchForm = function createSearchForm(Form, Props) {
|
|
|
2068
2434
|
});
|
|
2069
2435
|
};
|
|
2070
2436
|
|
|
2071
|
-
/**
|
|
2072
|
-
* ProFormList ctx
|
|
2073
|
-
*/
|
|
2074
|
-
|
|
2075
|
-
var ProFormListKey = Symbol("pro-form-list");
|
|
2076
|
-
var useProFormList = function useProFormList() {
|
|
2077
|
-
return vue.inject(ProFormListKey);
|
|
2078
|
-
};
|
|
2079
|
-
|
|
2080
|
-
var provideProFormList = function provideProFormList(ctx) {
|
|
2081
|
-
vue.provide(ProFormListKey, ctx);
|
|
2082
|
-
};
|
|
2083
|
-
|
|
2084
|
-
var FormListProvider = vue.defineComponent({
|
|
2085
|
-
props: {
|
|
2086
|
-
pathList: {
|
|
2087
|
-
type: Array
|
|
2088
|
-
}
|
|
2089
|
-
},
|
|
2090
|
-
setup: function setup(props, _ref) {
|
|
2091
|
-
var slots = _ref.slots;
|
|
2092
|
-
provideProFormList({
|
|
2093
|
-
pathList: props.pathList
|
|
2094
|
-
});
|
|
2095
|
-
return function () {
|
|
2096
|
-
var _slots$default;
|
|
2097
|
-
|
|
2098
|
-
return (_slots$default = slots["default"]) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots);
|
|
2099
|
-
};
|
|
2100
|
-
}
|
|
2101
|
-
});
|
|
2102
|
-
|
|
2103
|
-
var createFormList = function createFormList(FormItem) {
|
|
2104
|
-
return vue.defineComponent({
|
|
2105
|
-
props: _objectSpread2(_objectSpread2({}, FormItem.props), {}, {
|
|
2106
|
-
//每行默认id
|
|
2107
|
-
rowKey: {
|
|
2108
|
-
type: String,
|
|
2109
|
-
"default": "id"
|
|
2110
|
-
}
|
|
2111
|
-
}),
|
|
2112
|
-
setup: function setup(props, _ref2) {
|
|
2113
|
-
var slots = _ref2.slots;
|
|
2114
|
-
|
|
2115
|
-
var _useProForm = useProForm(),
|
|
2116
|
-
formState = _useProForm.formState,
|
|
2117
|
-
readonly = _useProForm.readonly;
|
|
2118
|
-
|
|
2119
|
-
var formListCtx = useProFormList();
|
|
2120
|
-
var nameList = convertPathToList(props.name);
|
|
2121
|
-
var path = formListCtx !== null && formListCtx !== void 0 && formListCtx.pathList ? [].concat(_toConsumableArray(formListCtx.pathList), _toConsumableArray(nameList)) : nameList;
|
|
2122
|
-
|
|
2123
|
-
var handleAdd = function handleAdd() {
|
|
2124
|
-
var targetList = lodash.get(formState, path);
|
|
2125
|
-
|
|
2126
|
-
if (!lodash.isArray(targetList)) {
|
|
2127
|
-
targetList = [];
|
|
2128
|
-
}
|
|
2129
|
-
|
|
2130
|
-
targetList.push(_defineProperty({}, props.rowKey, new Date().valueOf()));
|
|
2131
|
-
lodash.set(formState, path, targetList);
|
|
2132
|
-
};
|
|
2133
|
-
|
|
2134
|
-
var handleRemove = function handleRemove(index) {
|
|
2135
|
-
var targetList = lodash.get(formState, path);
|
|
2136
|
-
|
|
2137
|
-
if (lodash.size(targetList) <= 0) {
|
|
2138
|
-
return;
|
|
2139
|
-
}
|
|
2140
|
-
|
|
2141
|
-
targetList.splice(index, 1);
|
|
2142
|
-
};
|
|
2143
|
-
|
|
2144
|
-
return function () {
|
|
2145
|
-
var _slots$add;
|
|
2146
|
-
|
|
2147
|
-
return vue.createVNode(FormItem, lodash.omit(props, "rowKey"), {
|
|
2148
|
-
"default": function _default() {
|
|
2149
|
-
return [lodash.map(lodash.get(formState, path), function (item, index) {
|
|
2150
|
-
var _slots$default2, _slots$itemAdd, _slots$itemMinus;
|
|
2151
|
-
|
|
2152
|
-
return vue.createVNode(FormListProvider, {
|
|
2153
|
-
"key": item[props.rowKey] || index,
|
|
2154
|
-
"pathList": [].concat(_toConsumableArray(path), [index])
|
|
2155
|
-
}, {
|
|
2156
|
-
"default": function _default() {
|
|
2157
|
-
return [vue.createVNode("div", {
|
|
2158
|
-
"class": "pro-form-list-item"
|
|
2159
|
-
}, [(_slots$default2 = slots["default"]) === null || _slots$default2 === void 0 ? void 0 : _slots$default2.call(slots), !readonly.value && vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
|
|
2160
|
-
"class": "pro-form-list-item-add",
|
|
2161
|
-
"onClick": handleAdd
|
|
2162
|
-
}, [(_slots$itemAdd = slots.itemAdd) === null || _slots$itemAdd === void 0 ? void 0 : _slots$itemAdd.call(slots)]), vue.createVNode("div", {
|
|
2163
|
-
"class": "pro-form-list-item-minus",
|
|
2164
|
-
"onClick": function onClick() {
|
|
2165
|
-
return handleRemove(index);
|
|
2166
|
-
}
|
|
2167
|
-
}, [(_slots$itemMinus = slots.itemMinus) === null || _slots$itemMinus === void 0 ? void 0 : _slots$itemMinus.call(slots)])])])];
|
|
2168
|
-
}
|
|
2169
|
-
});
|
|
2170
|
-
}), !readonly.value && vue.createVNode("div", {
|
|
2171
|
-
"class": "pro-form-list-add",
|
|
2172
|
-
"onClick": handleAdd
|
|
2173
|
-
}, [(_slots$add = slots.add) === null || _slots$add === void 0 ? void 0 : _slots$add.call(slots)])];
|
|
2174
|
-
}
|
|
2175
|
-
});
|
|
2176
|
-
};
|
|
2177
|
-
}
|
|
2178
|
-
});
|
|
2179
|
-
};
|
|
2180
|
-
|
|
2181
2437
|
var proFormItemProps = function proFormItemProps() {
|
|
2182
2438
|
return {
|
|
2183
2439
|
readonly: {
|
|
@@ -2461,6 +2717,7 @@ exports.ProModalCurd = ProModalCurd;
|
|
|
2461
2717
|
exports.ProModule = ProModule;
|
|
2462
2718
|
exports.ProPageCurd = ProPageCurd;
|
|
2463
2719
|
exports.RequestAction = RequestAction;
|
|
2720
|
+
exports.Wrapper = Wrapper;
|
|
2464
2721
|
exports.convertPathToList = convertPathToList;
|
|
2465
2722
|
exports.createCurdDesc = createCurdDesc;
|
|
2466
2723
|
exports.createCurdForm = createCurdForm;
|
|
@@ -2478,12 +2735,16 @@ exports.findTargetListInTree = findTargetListInTree;
|
|
|
2478
2735
|
exports.generateId = generateId;
|
|
2479
2736
|
exports.getColumnFormItemName = getColumnFormItemName;
|
|
2480
2737
|
exports.getColumnValueType = getColumnValueType;
|
|
2738
|
+
exports.getFirstPropName = getFirstPropName;
|
|
2481
2739
|
exports.getFormItemEl = getFormItemEl;
|
|
2482
2740
|
exports.getItemEl = getItemEl;
|
|
2483
2741
|
exports.getValidValues = getValidValues;
|
|
2484
2742
|
exports.mergeStateToList = mergeStateToList;
|
|
2485
2743
|
exports.provideProCurd = provideProCurd;
|
|
2744
|
+
exports.provideProFormList = provideProFormList;
|
|
2486
2745
|
exports.provideProModule = provideProModule;
|
|
2746
|
+
exports.renderElement = renderElement;
|
|
2747
|
+
exports.renderElements = renderElements;
|
|
2487
2748
|
exports.useComposeRequestActor = useComposeRequestActor;
|
|
2488
2749
|
exports.useDoneRequestActor = useDoneRequestActor;
|
|
2489
2750
|
exports.useFailedRequestActor = useFailedRequestActor;
|