backend-management-ui 1.2.3 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/backend-management-ui.common.js +696 -5
- package/backend-management-ui.common.js.map +1 -1
- package/backend-management-ui.umd.js +696 -5
- package/backend-management-ui.umd.js.map +1 -1
- package/backend-management-ui.umd.min.js +2 -2
- package/backend-management-ui.umd.min.js.map +1 -1
- package/package.json +2 -3
- package/README.md +0 -221
|
@@ -979,6 +979,46 @@ module.exports = function difference(other) {
|
|
|
979
979
|
};
|
|
980
980
|
|
|
981
981
|
|
|
982
|
+
/***/ }),
|
|
983
|
+
|
|
984
|
+
/***/ 3579:
|
|
985
|
+
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
|
|
986
|
+
|
|
987
|
+
"use strict";
|
|
988
|
+
|
|
989
|
+
var $ = __webpack_require__(6518);
|
|
990
|
+
var call = __webpack_require__(9565);
|
|
991
|
+
var iterate = __webpack_require__(2652);
|
|
992
|
+
var aCallable = __webpack_require__(9306);
|
|
993
|
+
var anObject = __webpack_require__(8551);
|
|
994
|
+
var getIteratorDirect = __webpack_require__(1767);
|
|
995
|
+
var iteratorClose = __webpack_require__(9539);
|
|
996
|
+
var iteratorHelperWithoutClosingOnEarlyError = __webpack_require__(4549);
|
|
997
|
+
|
|
998
|
+
var someWithoutClosingOnEarlyError = iteratorHelperWithoutClosingOnEarlyError('some', TypeError);
|
|
999
|
+
|
|
1000
|
+
// `Iterator.prototype.some` method
|
|
1001
|
+
// https://tc39.es/ecma262/#sec-iterator.prototype.some
|
|
1002
|
+
$({ target: 'Iterator', proto: true, real: true, forced: someWithoutClosingOnEarlyError }, {
|
|
1003
|
+
some: function some(predicate) {
|
|
1004
|
+
anObject(this);
|
|
1005
|
+
try {
|
|
1006
|
+
aCallable(predicate);
|
|
1007
|
+
} catch (error) {
|
|
1008
|
+
iteratorClose(this, 'throw', error);
|
|
1009
|
+
}
|
|
1010
|
+
|
|
1011
|
+
if (someWithoutClosingOnEarlyError) return call(someWithoutClosingOnEarlyError, this, predicate);
|
|
1012
|
+
|
|
1013
|
+
var record = getIteratorDirect(this);
|
|
1014
|
+
var counter = 0;
|
|
1015
|
+
return iterate(record, function (value, stop) {
|
|
1016
|
+
if (predicate(value, counter++)) return stop();
|
|
1017
|
+
}, { IS_RECORD: true, INTERRUPTED: true }).stopped;
|
|
1018
|
+
}
|
|
1019
|
+
});
|
|
1020
|
+
|
|
1021
|
+
|
|
982
1022
|
/***/ }),
|
|
983
1023
|
|
|
984
1024
|
/***/ 3650:
|
|
@@ -4375,6 +4415,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
4375
4415
|
|
|
4376
4416
|
// EXPORTS
|
|
4377
4417
|
__webpack_require__.d(__webpack_exports__, {
|
|
4418
|
+
Status: function() { return /* reexport */ business_status; },
|
|
4419
|
+
UiBtns: function() { return /* reexport */ ui_btns; },
|
|
4420
|
+
UiDialog: function() { return /* reexport */ ui_dialog; },
|
|
4421
|
+
UiForm: function() { return /* reexport */ ui_form; },
|
|
4422
|
+
UiTable: function() { return /* reexport */ ui_table; },
|
|
4378
4423
|
"default": function() { return /* binding */ entry_lib; }
|
|
4379
4424
|
});
|
|
4380
4425
|
|
|
@@ -4396,7 +4441,7 @@ if (typeof window !== 'undefined') {
|
|
|
4396
4441
|
// Indicate to webpack that this file can be concatenated
|
|
4397
4442
|
/* harmony default export */ var setPublicPath = (null);
|
|
4398
4443
|
|
|
4399
|
-
;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-form/index.vue?vue&type=template&id=
|
|
4444
|
+
;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-form/index.vue?vue&type=template&id=2113491c
|
|
4400
4445
|
var render = function render() {
|
|
4401
4446
|
var _vm = this,
|
|
4402
4447
|
_c = _vm._self._c;
|
|
@@ -4519,13 +4564,13 @@ const componentMap = {
|
|
|
4519
4564
|
type: Boolean,
|
|
4520
4565
|
default: true
|
|
4521
4566
|
},
|
|
4522
|
-
|
|
4567
|
+
resetBtnText: {
|
|
4523
4568
|
type: String,
|
|
4524
4569
|
default: '重置'
|
|
4525
4570
|
},
|
|
4526
|
-
|
|
4571
|
+
searchBtnText: {
|
|
4527
4572
|
type: String,
|
|
4528
|
-
default: '
|
|
4573
|
+
default: '查询'
|
|
4529
4574
|
},
|
|
4530
4575
|
apiMapConfig: {
|
|
4531
4576
|
// { [prop]: [api] } 或 {[prop]: {url: [api], params: [params]}}
|
|
@@ -4744,15 +4789,661 @@ var component = normalizeComponent(
|
|
|
4744
4789
|
)
|
|
4745
4790
|
|
|
4746
4791
|
/* harmony default export */ var ui_form = (component.exports);
|
|
4792
|
+
;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-table/index.vue?vue&type=template&id=c568d39c&scoped=true
|
|
4793
|
+
var ui_tablevue_type_template_id_c568d39c_scoped_true_render = function render() {
|
|
4794
|
+
var _vm = this,
|
|
4795
|
+
_c = _vm._self._c;
|
|
4796
|
+
return _c('div', {
|
|
4797
|
+
staticClass: "bm-table-container"
|
|
4798
|
+
}, [_c('el-table', _vm._g(_vm._b({
|
|
4799
|
+
directives: [{
|
|
4800
|
+
name: "loading",
|
|
4801
|
+
rawName: "v-loading",
|
|
4802
|
+
value: _vm.loading,
|
|
4803
|
+
expression: "loading"
|
|
4804
|
+
}],
|
|
4805
|
+
ref: "table",
|
|
4806
|
+
staticClass: "bm-table",
|
|
4807
|
+
attrs: {
|
|
4808
|
+
"data": _vm.data
|
|
4809
|
+
}
|
|
4810
|
+
}, 'el-table', {
|
|
4811
|
+
border: true,
|
|
4812
|
+
..._vm.$attrs
|
|
4813
|
+
}, false), _vm.$listeners), [_vm.showSelection ? _c('el-table-column', {
|
|
4814
|
+
attrs: {
|
|
4815
|
+
"type": "selection",
|
|
4816
|
+
"width": "55",
|
|
4817
|
+
"align": "center",
|
|
4818
|
+
"fixed": "left"
|
|
4819
|
+
}
|
|
4820
|
+
}) : _vm._e(), _vm.showIndex ? _c('el-table-column', _vm._b({}, 'el-table-column', _vm.indexConfig, false)) : _vm._e(), _vm._l(_vm.tableColumns, function (col, index) {
|
|
4821
|
+
return _c('el-table-column', _vm._b({
|
|
4822
|
+
key: `${col.prop}-col-${index}`,
|
|
4823
|
+
scopedSlots: _vm._u([col.headerSlot ? {
|
|
4824
|
+
key: "header",
|
|
4825
|
+
fn: function ({
|
|
4826
|
+
column,
|
|
4827
|
+
$index
|
|
4828
|
+
}) {
|
|
4829
|
+
return [_vm._t(`header-${col.prop}`, function () {
|
|
4830
|
+
return [_vm._v(" " + _vm._s(column.label) + " ")];
|
|
4831
|
+
}, {
|
|
4832
|
+
"column": column,
|
|
4833
|
+
"index": $index
|
|
4834
|
+
})];
|
|
4835
|
+
}
|
|
4836
|
+
} : null, {
|
|
4837
|
+
key: "default",
|
|
4838
|
+
fn: function (scope) {
|
|
4839
|
+
return [typeof col.render === 'function' ? [_c('render-node', {
|
|
4840
|
+
attrs: {
|
|
4841
|
+
"render": col.render,
|
|
4842
|
+
"params": _vm.getRenderParams(scope)
|
|
4843
|
+
}
|
|
4844
|
+
})] : col.component ? [_c(col.component, _vm._g(_vm._b({
|
|
4845
|
+
tag: "component",
|
|
4846
|
+
attrs: {
|
|
4847
|
+
"row": scope.row,
|
|
4848
|
+
"column": scope.column,
|
|
4849
|
+
"index": scope.$index
|
|
4850
|
+
}
|
|
4851
|
+
}, 'component', col.componentProps || {}, false), col.componentEvents || {}))] : col.slot ? [_vm._t(col.prop, null, null, scope)] : [_c('div', {
|
|
4852
|
+
staticClass: "bm-table-cell",
|
|
4853
|
+
class: {
|
|
4854
|
+
'bm-cell-active': _vm.getCellActiveClass(scope, col)
|
|
4855
|
+
},
|
|
4856
|
+
on: {
|
|
4857
|
+
"click": function ($event) {
|
|
4858
|
+
return _vm.handleCellClick(scope, col);
|
|
4859
|
+
}
|
|
4860
|
+
}
|
|
4861
|
+
}, [_vm._v(" " + _vm._s(_vm.getTableColumnValue(col, scope)) + " ")])]];
|
|
4862
|
+
}
|
|
4863
|
+
}], null, true)
|
|
4864
|
+
}, 'el-table-column', _vm.getColumnProps(col), false));
|
|
4865
|
+
}), _vm.showOperation ? _c('el-table-column', _vm._b({
|
|
4866
|
+
scopedSlots: _vm._u([{
|
|
4867
|
+
key: "default",
|
|
4868
|
+
fn: function (scope) {
|
|
4869
|
+
return [_vm._t("operation", null, null, scope)];
|
|
4870
|
+
}
|
|
4871
|
+
}], null, true)
|
|
4872
|
+
}, 'el-table-column', _vm.mergeOperation, false)) : _vm._e()], 2), _vm.showPagination ? _c('el-pagination', {
|
|
4873
|
+
staticClass: "bm-pagination",
|
|
4874
|
+
attrs: {
|
|
4875
|
+
"current-page": _vm.paginationConfig.pageNum,
|
|
4876
|
+
"page-sizes": _vm.paginationConfig.pageSizes || [10, 20, 50, 100],
|
|
4877
|
+
"page-size": _vm.paginationConfig.pageSize,
|
|
4878
|
+
"layout": "total, sizes, prev, pager, next, jumper",
|
|
4879
|
+
"total": _vm.total
|
|
4880
|
+
},
|
|
4881
|
+
on: {
|
|
4882
|
+
"size-change": _vm.handleSizeChange,
|
|
4883
|
+
"current-change": _vm.handleCurrentChange
|
|
4884
|
+
}
|
|
4885
|
+
}) : _vm._e()], 1);
|
|
4886
|
+
};
|
|
4887
|
+
var ui_tablevue_type_template_id_c568d39c_scoped_true_staticRenderFns = [];
|
|
4888
|
+
|
|
4889
|
+
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.some.js
|
|
4890
|
+
var es_iterator_some = __webpack_require__(3579);
|
|
4891
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-table/index.vue?vue&type=script&lang=js
|
|
4892
|
+
|
|
4893
|
+
|
|
4894
|
+
|
|
4895
|
+
/**
|
|
4896
|
+
* @desc 基础表格: 多选列、序号和操作列分开配置,也可以在tableColumns配置,这时需要插槽
|
|
4897
|
+
* @params
|
|
4898
|
+
*/
|
|
4899
|
+
const renderNode = {
|
|
4900
|
+
functional: true,
|
|
4901
|
+
props: {
|
|
4902
|
+
render: {
|
|
4903
|
+
type: Function,
|
|
4904
|
+
required: true
|
|
4905
|
+
},
|
|
4906
|
+
params: {
|
|
4907
|
+
type: Object,
|
|
4908
|
+
default: () => ({})
|
|
4909
|
+
}
|
|
4910
|
+
},
|
|
4911
|
+
render: (h, ctx) => {
|
|
4912
|
+
return ctx.props.render(ctx.props.params);
|
|
4913
|
+
}
|
|
4914
|
+
};
|
|
4915
|
+
/* harmony default export */ var ui_tablevue_type_script_lang_js = ({
|
|
4916
|
+
name: "UiTable",
|
|
4917
|
+
components: {
|
|
4918
|
+
renderNode
|
|
4919
|
+
},
|
|
4920
|
+
props: {
|
|
4921
|
+
data: {
|
|
4922
|
+
type: Array,
|
|
4923
|
+
required: true,
|
|
4924
|
+
default: () => []
|
|
4925
|
+
},
|
|
4926
|
+
loading: {
|
|
4927
|
+
type: Boolean,
|
|
4928
|
+
default: false
|
|
4929
|
+
},
|
|
4930
|
+
showSelection: {
|
|
4931
|
+
type: Boolean,
|
|
4932
|
+
default: false
|
|
4933
|
+
},
|
|
4934
|
+
showIndex: {
|
|
4935
|
+
type: Boolean,
|
|
4936
|
+
default: false
|
|
4937
|
+
},
|
|
4938
|
+
indexConfig: {
|
|
4939
|
+
type: Object,
|
|
4940
|
+
default: () => ({
|
|
4941
|
+
type: "index",
|
|
4942
|
+
label: "序号",
|
|
4943
|
+
width: 55,
|
|
4944
|
+
fixed: "left",
|
|
4945
|
+
align: "center"
|
|
4946
|
+
})
|
|
4947
|
+
},
|
|
4948
|
+
tableColumns: {
|
|
4949
|
+
type: Array,
|
|
4950
|
+
required: true,
|
|
4951
|
+
default: () => []
|
|
4952
|
+
},
|
|
4953
|
+
showOperation: {
|
|
4954
|
+
type: Boolean,
|
|
4955
|
+
default: false
|
|
4956
|
+
},
|
|
4957
|
+
operationConfig: {
|
|
4958
|
+
type: Object,
|
|
4959
|
+
default: () => ({})
|
|
4960
|
+
},
|
|
4961
|
+
showPagination: {
|
|
4962
|
+
type: Boolean,
|
|
4963
|
+
default: true
|
|
4964
|
+
},
|
|
4965
|
+
paginationConfig: {
|
|
4966
|
+
type: Object,
|
|
4967
|
+
default: () => ({
|
|
4968
|
+
pageNum: 1,
|
|
4969
|
+
pageSize: 10
|
|
4970
|
+
})
|
|
4971
|
+
},
|
|
4972
|
+
total: {
|
|
4973
|
+
type: Number,
|
|
4974
|
+
default: 0
|
|
4975
|
+
}
|
|
4976
|
+
},
|
|
4977
|
+
mounted() {
|
|
4978
|
+
const bool = this.tableColumns.some(row => {
|
|
4979
|
+
const hasIndex = row.type === "index" && this.showIndex;
|
|
4980
|
+
const hasSelection = row.type === "selection" && this.showSelection;
|
|
4981
|
+
const hasOperate = (row.label === "操作" || row.prop === "operation") && this.showOperation;
|
|
4982
|
+
return hasIndex || hasSelection || hasOperate;
|
|
4983
|
+
});
|
|
4984
|
+
if (bool) {
|
|
4985
|
+
console.warn("序号列、多选列、操作列的一项或者多项存在重复配置,请检查传入的props和tableColumns");
|
|
4986
|
+
}
|
|
4987
|
+
},
|
|
4988
|
+
computed: {
|
|
4989
|
+
mergeOperation() {
|
|
4990
|
+
const defaultConfig = {
|
|
4991
|
+
label: "操作",
|
|
4992
|
+
prop: "operation",
|
|
4993
|
+
width: 180,
|
|
4994
|
+
fixed: "right",
|
|
4995
|
+
align: "center"
|
|
4996
|
+
};
|
|
4997
|
+
return {
|
|
4998
|
+
...defaultConfig,
|
|
4999
|
+
...this.operationConfig
|
|
5000
|
+
};
|
|
5001
|
+
}
|
|
5002
|
+
},
|
|
5003
|
+
methods: {
|
|
5004
|
+
getColumnProps(col) {
|
|
5005
|
+
// 可以配置列属性允许白名单,避免污染,这里是抽离自定义的属性
|
|
5006
|
+
const obj = {};
|
|
5007
|
+
const exclusion = ["headerSlot", "render", "component", "componentProps", "componentEvents", "slot", "clickable", "clickableClass", "onCellClick"];
|
|
5008
|
+
Object.keys(col).forEach(key => {
|
|
5009
|
+
if (!exclusion.includes(key)) {
|
|
5010
|
+
obj[key] = col[key];
|
|
5011
|
+
}
|
|
5012
|
+
});
|
|
5013
|
+
return {
|
|
5014
|
+
align: "center",
|
|
5015
|
+
...obj
|
|
5016
|
+
};
|
|
5017
|
+
},
|
|
5018
|
+
getRenderParams(scope) {
|
|
5019
|
+
return {
|
|
5020
|
+
row: scope.row,
|
|
5021
|
+
column: scope.column,
|
|
5022
|
+
$h: this.$createElement,
|
|
5023
|
+
index: scope.$index
|
|
5024
|
+
};
|
|
5025
|
+
},
|
|
5026
|
+
getCellActiveClass(scope, col) {
|
|
5027
|
+
if (typeof col.clickableClass === "function") {
|
|
5028
|
+
return col.clickableClass(scope, col);
|
|
5029
|
+
}
|
|
5030
|
+
if (typeof col.clickableClass === "boolean") return col.clickableClass;
|
|
5031
|
+
return false;
|
|
5032
|
+
},
|
|
5033
|
+
handleCellClick(scope, col) {
|
|
5034
|
+
const {
|
|
5035
|
+
row,
|
|
5036
|
+
$index
|
|
5037
|
+
} = scope;
|
|
5038
|
+
const canClick = col.clickable || this.getCellActiveClass(scope, col);
|
|
5039
|
+
if (!canClick) return;
|
|
5040
|
+
if (typeof col.onCellClick === "function") {
|
|
5041
|
+
col.onCellClick({
|
|
5042
|
+
row,
|
|
5043
|
+
column: col,
|
|
5044
|
+
index: $index
|
|
5045
|
+
});
|
|
5046
|
+
}
|
|
5047
|
+
},
|
|
5048
|
+
getTableColumnValue(col, scope) {
|
|
5049
|
+
const {
|
|
5050
|
+
row,
|
|
5051
|
+
$index
|
|
5052
|
+
} = scope;
|
|
5053
|
+
if (typeof col.formatter === "function") {
|
|
5054
|
+
// formatter重写了,和el-table-column的属性参数有所不同
|
|
5055
|
+
return col.formatter(row[col.prop], row, $index);
|
|
5056
|
+
}
|
|
5057
|
+
return row[col.prop];
|
|
5058
|
+
},
|
|
5059
|
+
// 对外暴露的表格实例
|
|
5060
|
+
getTableEl() {
|
|
5061
|
+
return this.$refs.table;
|
|
5062
|
+
},
|
|
5063
|
+
handleSizeChange(pageSize) {
|
|
5064
|
+
this.$emit("change-size", pageSize);
|
|
5065
|
+
this.$emit("change-pagination", {
|
|
5066
|
+
...this.paginationConfig,
|
|
5067
|
+
pageSize,
|
|
5068
|
+
pageNum: 1
|
|
5069
|
+
});
|
|
5070
|
+
},
|
|
5071
|
+
handleCurrentChange(pageNum) {
|
|
5072
|
+
this.$emit("change-page", pageNum);
|
|
5073
|
+
this.$emit("change-pagination", {
|
|
5074
|
+
...this.paginationConfig,
|
|
5075
|
+
pageNum
|
|
5076
|
+
});
|
|
5077
|
+
}
|
|
5078
|
+
}
|
|
5079
|
+
});
|
|
5080
|
+
;// ./src/elementConfig/ui-table/index.vue?vue&type=script&lang=js
|
|
5081
|
+
/* harmony default export */ var elementConfig_ui_tablevue_type_script_lang_js = (ui_tablevue_type_script_lang_js);
|
|
5082
|
+
;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-64.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-64.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-64.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-64.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-table/index.vue?vue&type=style&index=0&id=c568d39c&prod&lang=scss&scoped=true
|
|
5083
|
+
// extracted by mini-css-extract-plugin
|
|
5084
|
+
|
|
5085
|
+
;// ./src/elementConfig/ui-table/index.vue?vue&type=style&index=0&id=c568d39c&prod&lang=scss&scoped=true
|
|
5086
|
+
|
|
5087
|
+
;// ./src/elementConfig/ui-table/index.vue
|
|
5088
|
+
|
|
5089
|
+
|
|
5090
|
+
|
|
5091
|
+
;
|
|
5092
|
+
|
|
5093
|
+
|
|
5094
|
+
/* normalize component */
|
|
5095
|
+
|
|
5096
|
+
var ui_table_component = normalizeComponent(
|
|
5097
|
+
elementConfig_ui_tablevue_type_script_lang_js,
|
|
5098
|
+
ui_tablevue_type_template_id_c568d39c_scoped_true_render,
|
|
5099
|
+
ui_tablevue_type_template_id_c568d39c_scoped_true_staticRenderFns,
|
|
5100
|
+
false,
|
|
5101
|
+
null,
|
|
5102
|
+
"c568d39c",
|
|
5103
|
+
null
|
|
5104
|
+
|
|
5105
|
+
)
|
|
5106
|
+
|
|
5107
|
+
/* harmony default export */ var ui_table = (ui_table_component.exports);
|
|
5108
|
+
;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-btns/index.vue?vue&type=template&id=286aab47&scoped=true
|
|
5109
|
+
var ui_btnsvue_type_template_id_286aab47_scoped_true_render = function render() {
|
|
5110
|
+
var _vm = this,
|
|
5111
|
+
_c = _vm._self._c;
|
|
5112
|
+
return _c('div', {
|
|
5113
|
+
staticClass: "bm-btns"
|
|
5114
|
+
}, _vm._l(_vm.btns, function (btn, index) {
|
|
5115
|
+
return _c('el-button', _vm._b({
|
|
5116
|
+
key: `${btn.label}${index}`,
|
|
5117
|
+
attrs: {
|
|
5118
|
+
"type": btn.type || 'primary',
|
|
5119
|
+
"disabled": _vm.handleDisabled(btn)
|
|
5120
|
+
},
|
|
5121
|
+
on: {
|
|
5122
|
+
"click": function ($event) {
|
|
5123
|
+
return _vm.handleClick(btn, $event);
|
|
5124
|
+
}
|
|
5125
|
+
}
|
|
5126
|
+
}, 'el-button', btn.attrs, false), [_vm._v(" " + _vm._s(btn.label) + " ")]);
|
|
5127
|
+
}), 1);
|
|
5128
|
+
};
|
|
5129
|
+
var ui_btnsvue_type_template_id_286aab47_scoped_true_staticRenderFns = [];
|
|
5130
|
+
|
|
5131
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-btns/index.vue?vue&type=script&lang=js
|
|
5132
|
+
// 权限扩展,遇到再考虑
|
|
5133
|
+
/**
|
|
5134
|
+
* @desc 按钮组
|
|
5135
|
+
* @params btns 按钮配置数组,支持按钮的所有属性(通过attrs配置)
|
|
5136
|
+
* @params disabledAll 禁用所有按钮组
|
|
5137
|
+
*/
|
|
5138
|
+
/* harmony default export */ var ui_btnsvue_type_script_lang_js = ({
|
|
5139
|
+
name: "UiBtns",
|
|
5140
|
+
props: {
|
|
5141
|
+
btns: {
|
|
5142
|
+
type: Array,
|
|
5143
|
+
default: () => []
|
|
5144
|
+
},
|
|
5145
|
+
disabledAll: {
|
|
5146
|
+
type: Boolean,
|
|
5147
|
+
default: false
|
|
5148
|
+
},
|
|
5149
|
+
context: {
|
|
5150
|
+
// 上下文,
|
|
5151
|
+
type: [Object, Array, String, Number, Boolean],
|
|
5152
|
+
default: null
|
|
5153
|
+
}
|
|
5154
|
+
},
|
|
5155
|
+
methods: {
|
|
5156
|
+
handleDisabled(btn) {
|
|
5157
|
+
if (this.disabledAll) return true;
|
|
5158
|
+
if (typeof btn.disabled === "boolean") return btn.disabled;
|
|
5159
|
+
if (typeof btn.disabled === "function") return btn.disabled(this.context);
|
|
5160
|
+
return false;
|
|
5161
|
+
},
|
|
5162
|
+
handleClick(btn, event) {
|
|
5163
|
+
const actionFn = typeof btn.action === "function";
|
|
5164
|
+
if (actionFn && btn.eventName) {
|
|
5165
|
+
console.warn(`按钮【${btn.label}】同时配置了action和eventName,可能导致重复执行`);
|
|
5166
|
+
}
|
|
5167
|
+
if (actionFn) {
|
|
5168
|
+
btn.action.call(this, {
|
|
5169
|
+
btn,
|
|
5170
|
+
event,
|
|
5171
|
+
context: this.context
|
|
5172
|
+
});
|
|
5173
|
+
}
|
|
5174
|
+
if (btn.eventName) {
|
|
5175
|
+
this.$emit(btn.eventName, {
|
|
5176
|
+
btn,
|
|
5177
|
+
event,
|
|
5178
|
+
context: this.context
|
|
5179
|
+
});
|
|
5180
|
+
}
|
|
5181
|
+
}
|
|
5182
|
+
}
|
|
5183
|
+
});
|
|
5184
|
+
;// ./src/elementConfig/ui-btns/index.vue?vue&type=script&lang=js
|
|
5185
|
+
/* harmony default export */ var elementConfig_ui_btnsvue_type_script_lang_js = (ui_btnsvue_type_script_lang_js);
|
|
5186
|
+
;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-64.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-64.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-64.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-64.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-btns/index.vue?vue&type=style&index=0&id=286aab47&prod&lang=scss&scoped=true
|
|
5187
|
+
// extracted by mini-css-extract-plugin
|
|
5188
|
+
|
|
5189
|
+
;// ./src/elementConfig/ui-btns/index.vue?vue&type=style&index=0&id=286aab47&prod&lang=scss&scoped=true
|
|
5190
|
+
|
|
5191
|
+
;// ./src/elementConfig/ui-btns/index.vue
|
|
5192
|
+
|
|
5193
|
+
|
|
5194
|
+
|
|
5195
|
+
;
|
|
5196
|
+
|
|
5197
|
+
|
|
5198
|
+
/* normalize component */
|
|
5199
|
+
|
|
5200
|
+
var ui_btns_component = normalizeComponent(
|
|
5201
|
+
elementConfig_ui_btnsvue_type_script_lang_js,
|
|
5202
|
+
ui_btnsvue_type_template_id_286aab47_scoped_true_render,
|
|
5203
|
+
ui_btnsvue_type_template_id_286aab47_scoped_true_staticRenderFns,
|
|
5204
|
+
false,
|
|
5205
|
+
null,
|
|
5206
|
+
"286aab47",
|
|
5207
|
+
null
|
|
5208
|
+
|
|
5209
|
+
)
|
|
5210
|
+
|
|
5211
|
+
/* harmony default export */ var ui_btns = (ui_btns_component.exports);
|
|
5212
|
+
;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/business/status/index.vue?vue&type=template&id=14e2fce9&scoped=true
|
|
5213
|
+
var statusvue_type_template_id_14e2fce9_scoped_true_render = function render() {
|
|
5214
|
+
var _vm = this,
|
|
5215
|
+
_c = _vm._self._c;
|
|
5216
|
+
return _c('div', {
|
|
5217
|
+
staticClass: "status-tag",
|
|
5218
|
+
class: _vm.className
|
|
5219
|
+
}, [_vm._v(" " + _vm._s(_vm.currentStatusName ? _vm.currentStatusName || "未知状态" : "-") + " ")]);
|
|
5220
|
+
};
|
|
5221
|
+
var statusvue_type_template_id_14e2fce9_scoped_true_staticRenderFns = [];
|
|
5222
|
+
|
|
5223
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/business/status/index.vue?vue&type=script&lang=js
|
|
5224
|
+
const defaultEmptyObject = {};
|
|
5225
|
+
/* harmony default export */ var statusvue_type_script_lang_js = ({
|
|
5226
|
+
name: "Status",
|
|
5227
|
+
props: {
|
|
5228
|
+
row: {
|
|
5229
|
+
type: Object,
|
|
5230
|
+
default: () => defaultEmptyObject
|
|
5231
|
+
},
|
|
5232
|
+
// row 有传值时statusName将会当做字段名
|
|
5233
|
+
statusName: {
|
|
5234
|
+
type: String,
|
|
5235
|
+
required: true
|
|
5236
|
+
}
|
|
5237
|
+
},
|
|
5238
|
+
computed: {
|
|
5239
|
+
isDefaultEmptyRow() {
|
|
5240
|
+
return this.row === defaultEmptyObject;
|
|
5241
|
+
},
|
|
5242
|
+
currentStatusName() {
|
|
5243
|
+
// row是默认值的空对象
|
|
5244
|
+
if (this.isDefaultEmptyRow) {
|
|
5245
|
+
return this.statusName;
|
|
5246
|
+
} else {
|
|
5247
|
+
if (!this.statusName) return "";
|
|
5248
|
+
return this.row[this.statusName];
|
|
5249
|
+
}
|
|
5250
|
+
},
|
|
5251
|
+
className() {
|
|
5252
|
+
if (!this.currentStatusName) return "";
|
|
5253
|
+
const basic = this.currentStatusName ? "status-basic" : "";
|
|
5254
|
+
if (this.currentStatusName.startsWith("待")) {
|
|
5255
|
+
return `status-tag--info ${basic}`;
|
|
5256
|
+
}
|
|
5257
|
+
if (this.currentStatusName.endsWith("中")) {
|
|
5258
|
+
return `status-tag--primary ${basic}`;
|
|
5259
|
+
}
|
|
5260
|
+
if (this.currentStatusName.endsWith("成功")) {
|
|
5261
|
+
return `status-tag--success ${basic}`;
|
|
5262
|
+
}
|
|
5263
|
+
if (this.currentStatusName.endsWith("失败")) {
|
|
5264
|
+
return `status-tag--error ${basic}`;
|
|
5265
|
+
}
|
|
5266
|
+
return basic;
|
|
5267
|
+
}
|
|
5268
|
+
}
|
|
5269
|
+
});
|
|
5270
|
+
;// ./src/elementConfig/business/status/index.vue?vue&type=script&lang=js
|
|
5271
|
+
/* harmony default export */ var business_statusvue_type_script_lang_js = (statusvue_type_script_lang_js);
|
|
5272
|
+
;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-64.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-64.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-64.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-64.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/business/status/index.vue?vue&type=style&index=0&id=14e2fce9&prod&lang=scss&scoped=true
|
|
5273
|
+
// extracted by mini-css-extract-plugin
|
|
5274
|
+
|
|
5275
|
+
;// ./src/elementConfig/business/status/index.vue?vue&type=style&index=0&id=14e2fce9&prod&lang=scss&scoped=true
|
|
5276
|
+
|
|
5277
|
+
;// ./src/elementConfig/business/status/index.vue
|
|
5278
|
+
|
|
5279
|
+
|
|
5280
|
+
|
|
5281
|
+
;
|
|
5282
|
+
|
|
5283
|
+
|
|
5284
|
+
/* normalize component */
|
|
5285
|
+
|
|
5286
|
+
var status_component = normalizeComponent(
|
|
5287
|
+
business_statusvue_type_script_lang_js,
|
|
5288
|
+
statusvue_type_template_id_14e2fce9_scoped_true_render,
|
|
5289
|
+
statusvue_type_template_id_14e2fce9_scoped_true_staticRenderFns,
|
|
5290
|
+
false,
|
|
5291
|
+
null,
|
|
5292
|
+
"14e2fce9",
|
|
5293
|
+
null
|
|
5294
|
+
|
|
5295
|
+
)
|
|
5296
|
+
|
|
5297
|
+
/* harmony default export */ var business_status = (status_component.exports);
|
|
5298
|
+
;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-dialog/index.vue?vue&type=template&id=534064f6&scoped=true
|
|
5299
|
+
var ui_dialogvue_type_template_id_534064f6_scoped_true_render = function render() {
|
|
5300
|
+
var _vm = this,
|
|
5301
|
+
_c = _vm._self._c;
|
|
5302
|
+
return _c('el-dialog', _vm._g(_vm._b({
|
|
5303
|
+
staticClass: "bm-dialog",
|
|
5304
|
+
attrs: {
|
|
5305
|
+
"visible": _vm.show,
|
|
5306
|
+
"width": _vm.width || _vm.$attrs.width,
|
|
5307
|
+
"close-on-click-modal": _vm.closeOnClickModal,
|
|
5308
|
+
"close-on-press-escape": _vm.closeOnPressEscape
|
|
5309
|
+
},
|
|
5310
|
+
on: {
|
|
5311
|
+
"update:visible": function ($event) {
|
|
5312
|
+
_vm.show = $event;
|
|
5313
|
+
}
|
|
5314
|
+
},
|
|
5315
|
+
scopedSlots: _vm._u([{
|
|
5316
|
+
key: "title",
|
|
5317
|
+
fn: function () {
|
|
5318
|
+
return [_vm._t("headerPrefix"), _c('div', {
|
|
5319
|
+
staticClass: "header-title"
|
|
5320
|
+
}, [_vm._v(_vm._s(_vm.title))]), _vm._t("headerSuffix")];
|
|
5321
|
+
},
|
|
5322
|
+
proxy: true
|
|
5323
|
+
}, {
|
|
5324
|
+
key: "footer",
|
|
5325
|
+
fn: function () {
|
|
5326
|
+
return [_vm.defaultFooter ? [_vm.showCancel ? _c('el-button', {
|
|
5327
|
+
on: {
|
|
5328
|
+
"click": function ($event) {
|
|
5329
|
+
return _vm.$emit('cancel');
|
|
5330
|
+
}
|
|
5331
|
+
}
|
|
5332
|
+
}, [_vm._v(_vm._s(_vm.cancelText))]) : _vm._e(), _vm.showConfirm ? _c('el-button', {
|
|
5333
|
+
attrs: {
|
|
5334
|
+
"type": "primary"
|
|
5335
|
+
},
|
|
5336
|
+
on: {
|
|
5337
|
+
"click": function ($event) {
|
|
5338
|
+
return _vm.$emit('confirm');
|
|
5339
|
+
}
|
|
5340
|
+
}
|
|
5341
|
+
}, [_vm._v(" " + _vm._s(_vm.confirmText))]) : _vm._e()] : _vm._e(), _vm.customFooter ? void 0 : _vm._e()];
|
|
5342
|
+
},
|
|
5343
|
+
proxy: true
|
|
5344
|
+
}], null, true)
|
|
5345
|
+
}, 'el-dialog', _vm.$attrs, false), _vm.$listeners), [_vm._t("default")], 2);
|
|
5346
|
+
};
|
|
5347
|
+
var ui_dialogvue_type_template_id_534064f6_scoped_true_staticRenderFns = [];
|
|
5348
|
+
|
|
5349
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/elementConfig/ui-dialog/index.vue?vue&type=script&lang=js
|
|
5350
|
+
/* harmony default export */ var ui_dialogvue_type_script_lang_js = ({
|
|
5351
|
+
name: 'UiDialog',
|
|
5352
|
+
props: {
|
|
5353
|
+
visible: {
|
|
5354
|
+
type: Boolean,
|
|
5355
|
+
default: false
|
|
5356
|
+
},
|
|
5357
|
+
width: {
|
|
5358
|
+
type: String,
|
|
5359
|
+
default: '50%'
|
|
5360
|
+
},
|
|
5361
|
+
closeOnClickModal: {
|
|
5362
|
+
type: Boolean,
|
|
5363
|
+
default: false
|
|
5364
|
+
},
|
|
5365
|
+
closeOnPressEscape: {
|
|
5366
|
+
type: Boolean,
|
|
5367
|
+
default: false
|
|
5368
|
+
},
|
|
5369
|
+
title: {
|
|
5370
|
+
type: String,
|
|
5371
|
+
default: '弹框标题'
|
|
5372
|
+
},
|
|
5373
|
+
defaultFooter: {
|
|
5374
|
+
type: Boolean,
|
|
5375
|
+
default: true
|
|
5376
|
+
},
|
|
5377
|
+
showCancel: {
|
|
5378
|
+
type: Boolean,
|
|
5379
|
+
default: false
|
|
5380
|
+
},
|
|
5381
|
+
cancelText: {
|
|
5382
|
+
type: String,
|
|
5383
|
+
default: '取消'
|
|
5384
|
+
},
|
|
5385
|
+
showConfirm: {
|
|
5386
|
+
type: Boolean,
|
|
5387
|
+
default: true
|
|
5388
|
+
},
|
|
5389
|
+
confirmText: {
|
|
5390
|
+
type: String,
|
|
5391
|
+
default: '确定'
|
|
5392
|
+
},
|
|
5393
|
+
customFooter: {
|
|
5394
|
+
type: Boolean,
|
|
5395
|
+
default: false
|
|
5396
|
+
}
|
|
5397
|
+
},
|
|
5398
|
+
computed: {
|
|
5399
|
+
show: {
|
|
5400
|
+
get() {
|
|
5401
|
+
return this.visible;
|
|
5402
|
+
},
|
|
5403
|
+
set(val) {
|
|
5404
|
+
this.$emit('update:visible', val);
|
|
5405
|
+
if (!val) this.$emit('close');
|
|
5406
|
+
}
|
|
5407
|
+
}
|
|
5408
|
+
},
|
|
5409
|
+
methods: {}
|
|
5410
|
+
});
|
|
5411
|
+
;// ./src/elementConfig/ui-dialog/index.vue?vue&type=script&lang=js
|
|
5412
|
+
/* harmony default export */ var elementConfig_ui_dialogvue_type_script_lang_js = (ui_dialogvue_type_script_lang_js);
|
|
5413
|
+
;// ./src/elementConfig/ui-dialog/index.vue
|
|
5414
|
+
|
|
5415
|
+
|
|
5416
|
+
|
|
5417
|
+
|
|
5418
|
+
|
|
5419
|
+
/* normalize component */
|
|
5420
|
+
;
|
|
5421
|
+
var ui_dialog_component = normalizeComponent(
|
|
5422
|
+
elementConfig_ui_dialogvue_type_script_lang_js,
|
|
5423
|
+
ui_dialogvue_type_template_id_534064f6_scoped_true_render,
|
|
5424
|
+
ui_dialogvue_type_template_id_534064f6_scoped_true_staticRenderFns,
|
|
5425
|
+
false,
|
|
5426
|
+
null,
|
|
5427
|
+
"534064f6",
|
|
5428
|
+
null
|
|
5429
|
+
|
|
5430
|
+
)
|
|
5431
|
+
|
|
5432
|
+
/* harmony default export */ var ui_dialog = (ui_dialog_component.exports);
|
|
4747
5433
|
;// ./src/elementConfig/index.js
|
|
4748
5434
|
|
|
4749
|
-
|
|
5435
|
+
|
|
5436
|
+
|
|
5437
|
+
|
|
5438
|
+
|
|
5439
|
+
const components = [ui_form, ui_table, ui_btns, business_status, ui_dialog];
|
|
4750
5440
|
const install = function (Vue) {
|
|
4751
5441
|
components.forEach(component => {
|
|
4752
5442
|
Vue.component(component.name, component);
|
|
4753
5443
|
});
|
|
4754
5444
|
};
|
|
4755
5445
|
/* harmony default export */ var elementConfig = (install);
|
|
5446
|
+
|
|
4756
5447
|
;// ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js
|
|
4757
5448
|
|
|
4758
5449
|
|