util.js 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.isItem = isItem;
  6. exports.getItemConfig = getItemConfig;
  7. exports.createItem = createItem;
  8. exports.destroyItem = destroyItem;
  9. exports.assemItem = assemItem;
  10. var _xeUtils = _interopRequireDefault(require("xe-utils"));
  11. var _vXETable = _interopRequireDefault(require("../../v-x-e-table"));
  12. var _tools = require("../../tools");
  13. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  14. function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
  15. function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
  16. function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
  17. var ItemConfig = /*#__PURE__*/function () {
  18. function ItemConfig($xeform, item) {
  19. _classCallCheck(this, ItemConfig);
  20. Object.assign(this, {
  21. id: _xeUtils.default.uniqueId('item_'),
  22. title: item.title,
  23. field: item.field,
  24. span: item.span,
  25. align: item.align,
  26. titleAlign: item.titleAlign,
  27. titleWidth: item.titleWidth,
  28. titlePrefix: item.titlePrefix,
  29. titleSuffix: item.titleSuffix,
  30. titleOverflow: item.titleOverflow,
  31. resetValue: item.resetValue,
  32. visible: item.visible,
  33. visibleMethod: item.visibleMethod,
  34. folding: item.folding,
  35. collapseNode: item.collapseNode,
  36. className: item.className,
  37. itemRender: item.itemRender,
  38. // 渲染属性
  39. showError: false,
  40. errRule: null,
  41. slots: item.slots,
  42. children: []
  43. });
  44. if (process.env.NODE_ENV === 'development') {
  45. var compConf = item.itemRender ? _vXETable.default.renderer.get(item.itemRender.name) : null;
  46. if (compConf && !compConf.renderItemContent && compConf.renderItem) {
  47. _tools.UtilTools.warn('vxe.error.delProp', ['item-render.renderItem', 'item-render.renderItemContent']);
  48. }
  49. }
  50. }
  51. _createClass(ItemConfig, [{
  52. key: "update",
  53. value: function update(name, value) {
  54. this[name] = value;
  55. }
  56. }]);
  57. return ItemConfig;
  58. }();
  59. function isItem(option) {
  60. return option instanceof ItemConfig;
  61. }
  62. function getItemConfig($xeform, _vm, options) {
  63. return isItem(_vm) ? _vm : new ItemConfig($xeform, _vm, options);
  64. }
  65. function createItem($xeform, _vm) {
  66. return getItemConfig($xeform, _vm);
  67. }
  68. function destroyItem(_vm) {
  69. var $xeform = _vm.$xeform,
  70. itemConfig = _vm.itemConfig;
  71. var matchObj = _xeUtils.default.findTree($xeform.staticItems, function (option) {
  72. return option === itemConfig;
  73. });
  74. if (matchObj) {
  75. matchObj.items.splice(matchObj.index, 1);
  76. }
  77. }
  78. function assemItem(_vm) {
  79. var $el = _vm.$el,
  80. $xeform = _vm.$xeform,
  81. xeformgather = _vm.xeformgather,
  82. itemConfig = _vm.itemConfig;
  83. var itemGather = xeformgather ? xeformgather.itemConfig : null;
  84. itemConfig.slots = _vm.$scopedSlots;
  85. if (itemGather) {
  86. if (!itemGather.children) {
  87. itemGather.children = [];
  88. }
  89. itemGather.children.splice([].indexOf.call(xeformgather.$el.children, $el), 0, itemConfig);
  90. } else {
  91. $xeform.staticItems.splice([].indexOf.call($xeform.$refs.hideItem.children, $el), 0, itemConfig);
  92. }
  93. }