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