eoss-ui 0.5.68 → 0.5.70
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 +929 -0
- package/lib/button-group.js +34 -36
- package/lib/button.js +34 -36
- package/lib/checkbox-group.js +70 -56
- package/lib/data-table-form.js +37 -39
- package/lib/data-table.js +73 -64
- package/lib/date-picker.js +34 -36
- package/lib/dialog.js +49 -51
- package/lib/eoss-ui.common.js +944 -728
- package/lib/flow-group.js +34 -36
- package/lib/flow-list.js +36 -38
- package/lib/flow.js +40 -42
- package/lib/form.js +410 -376
- package/lib/handle-user.js +36 -38
- package/lib/handler.js +34 -36
- package/lib/icon.js +12 -3593
- package/lib/icons.js +1 -1
- package/lib/index.js +1 -1
- package/lib/input-number.js +34 -36
- package/lib/input.js +65 -48
- package/lib/layout.js +2 -2
- package/lib/login.js +131 -114
- package/lib/main.js +80 -50
- package/lib/menu.js +91 -55
- package/lib/nav.js +66 -41
- package/lib/page.js +34 -36
- package/lib/player.js +36 -38
- package/lib/qr-code.js +34 -36
- package/lib/radio-group.js +69 -53
- package/lib/retrial-auth.js +34 -36
- package/lib/select-ganged.js +122 -106
- package/lib/select.js +112 -96
- package/lib/selector-panel.js +90 -76
- package/lib/selector.js +34 -36
- package/lib/sizer.js +36 -38
- package/lib/steps.js +60 -44
- package/lib/switch.js +34 -36
- package/lib/table-form.js +36 -38
- package/lib/tabs.js +34 -36
- package/lib/theme-chalk/base.css +1 -1
- package/lib/theme-chalk/fonts/iconfont.ttf +0 -0
- package/lib/theme-chalk/fonts/iconfont.woff +0 -0
- package/lib/theme-chalk/icon.css +1 -1
- package/lib/theme-chalk/index.css +1 -1
- package/lib/theme-chalk/login.css +1 -1
- package/lib/theme-chalk/main.css +1 -1
- package/lib/theme-chalk/menu.css +1 -1
- package/lib/theme-chalk/sizer.css +1 -1
- package/lib/theme-chalk/upload.css +1 -1
- package/lib/tips.js +59 -42
- package/lib/tree-group.js +34 -36
- package/lib/tree.js +93 -77
- package/lib/upload.js +111 -94
- package/lib/utils/util.js +34 -36
- package/lib/wujie.js +34 -36
- package/lib/wxlogin.js +34 -36
- package/package.json +2 -2
- package/packages/checkbox-group/src/main.vue +7 -1
- package/packages/data-table/src/main.vue +13 -6
- package/packages/dialog/src/main.vue +2 -3
- package/packages/form/src/main.vue +11 -2
- package/packages/icon/src/main.vue +10 -3
- package/packages/icons/src/icon.json +1 -1
- package/packages/input/src/main.vue +8 -1
- package/packages/login/src/main.vue +36 -24
- package/packages/main/src/main.vue +28 -6
- package/packages/menu/src/main.vue +76 -65
- package/packages/nav/src/main.vue +23 -4
- package/packages/radio-group/src/main.vue +7 -1
- package/packages/select/src/main.vue +7 -1
- package/packages/select-ganged/src/main.vue +7 -1
- package/packages/selector-panel/src/main.vue +7 -1
- package/packages/steps/src/main.vue +9 -3
- package/packages/theme-chalk/lib/base.css +1 -1
- package/packages/theme-chalk/lib/fonts/iconfont.ttf +0 -0
- package/packages/theme-chalk/lib/fonts/iconfont.woff +0 -0
- package/packages/theme-chalk/lib/icon.css +1 -1
- package/packages/theme-chalk/lib/index.css +1 -1
- package/packages/theme-chalk/lib/login.css +1 -1
- package/packages/theme-chalk/lib/main.css +1 -1
- package/packages/theme-chalk/lib/menu.css +1 -1
- package/packages/theme-chalk/lib/sizer.css +1 -1
- package/packages/theme-chalk/lib/upload.css +1 -1
- package/packages/theme-chalk/src/common/var.scss +2 -0
- package/packages/theme-chalk/src/fonts/iconfont.ttf +0 -0
- package/packages/theme-chalk/src/fonts/iconfont.woff +0 -0
- package/packages/theme-chalk/src/icon.scss +430 -426
- package/packages/theme-chalk/src/login.scss +2 -3
- package/packages/theme-chalk/src/main.scss +14 -5
- package/packages/theme-chalk/src/menu.scss +1 -1
- package/packages/theme-chalk/src/nav.scss +2 -2
- package/packages/tips/src/main.vue +8 -1
- package/packages/tree/src/main.vue +8 -2
- package/packages/upload/src/main.vue +11 -2
- package/src/index.js +1 -1
- package/src/utils/util.js +34 -34
package/lib/main.js
CHANGED
|
@@ -153,21 +153,17 @@ var JSONbigToString = json_bigint__WEBPACK_IMPORTED_MODULE_3___default()({ store
|
|
|
153
153
|
* @param {Array} [encodes] - 需要对参数值进行encodeURIComponent编码的参数值名称
|
|
154
154
|
**/
|
|
155
155
|
// 请求
|
|
156
|
-
|
|
157
|
-
function getRequestKey(config) {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
if (pendingRequest.has(requestKey)) {
|
|
168
|
-
pendingRequest.delete(requestKey);
|
|
169
|
-
}
|
|
170
|
-
}
|
|
156
|
+
// const pendingRequest = new Map();
|
|
157
|
+
// function getRequestKey(config) {
|
|
158
|
+
// const { method, url, params, data } = config;
|
|
159
|
+
// return [method, url, qs.stringify(params), qs.stringify(data)].join('&');
|
|
160
|
+
// };
|
|
161
|
+
// function delPendingRequest(config) {
|
|
162
|
+
// let requestKey = getRequestKey(config);
|
|
163
|
+
// if (pendingRequest.has(requestKey)) {
|
|
164
|
+
// pendingRequest.delete(requestKey);
|
|
165
|
+
// }
|
|
166
|
+
// }
|
|
171
167
|
var ajax = function ajax(_ref) {
|
|
172
168
|
var headers = _ref.headers,
|
|
173
169
|
method = _ref.method,
|
|
@@ -216,30 +212,32 @@ var ajax = function ajax(_ref) {
|
|
|
216
212
|
http.interceptors.request.use(function (config) {
|
|
217
213
|
config.headers.common = getStorage();
|
|
218
214
|
// 根据请求的信息(请求方式,url,请求get/post数据),产生map的key
|
|
219
|
-
|
|
220
|
-
// 判断请求是否重复
|
|
221
|
-
if (pendingRequest.has(requestKey)) {
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
}
|
|
228
|
-
// 把请求信息,添加请求到map当中
|
|
229
|
-
// 生成取消方法
|
|
230
|
-
config.cancelToken =
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
215
|
+
// let requestKey = getRequestKey(config);
|
|
216
|
+
// // 判断请求是否重复
|
|
217
|
+
// if (pendingRequest.has(requestKey)) {
|
|
218
|
+
// // 取消上次请求
|
|
219
|
+
// let cancel = pendingRequest.get(requestKey);
|
|
220
|
+
// cancel();
|
|
221
|
+
// // 删除请求信息
|
|
222
|
+
// pendingRequest.delete(requestKey);
|
|
223
|
+
// }
|
|
224
|
+
// // 把请求信息,添加请求到map当中
|
|
225
|
+
// // 生成取消方法
|
|
226
|
+
// config.cancelToken =
|
|
227
|
+
// config.cancelToken ||
|
|
228
|
+
// new axios.CancelToken(cancel => {
|
|
229
|
+
// // 把取消方法添加到map
|
|
230
|
+
// if (!pendingRequest.has(requestKey)) {
|
|
231
|
+
// pendingRequest.set(requestKey, cancel);
|
|
232
|
+
// }
|
|
233
|
+
// });
|
|
236
234
|
return config;
|
|
237
235
|
}, function (err) {
|
|
238
236
|
return err;
|
|
239
237
|
});
|
|
240
238
|
// 响应拦截
|
|
241
239
|
http.interceptors.response.use(function (response) {
|
|
242
|
-
delPendingRequest(response.config);
|
|
240
|
+
// delPendingRequest(response.config);
|
|
243
241
|
loading && loading.close();
|
|
244
242
|
if (response.headers.authorization && response.headers.authorization !== getStorage('token')) {
|
|
245
243
|
if (localStorage.getItem('storage') === 'localStorage' || localStorage.getItem('token') || localStorage.getItem('Authorization')) {
|
|
@@ -356,9 +354,9 @@ var ajax = function ajax(_ref) {
|
|
|
356
354
|
}
|
|
357
355
|
}, function (error) {
|
|
358
356
|
loading && loading.close();
|
|
359
|
-
if (!
|
|
360
|
-
|
|
361
|
-
}
|
|
357
|
+
// if (!axios.isCancel(error)) {
|
|
358
|
+
// delPendingRequest(error.config || {});
|
|
359
|
+
// }
|
|
362
360
|
if (error && error.response) {
|
|
363
361
|
if (error.response.status) {
|
|
364
362
|
switch (error.response.status) {
|
|
@@ -3765,7 +3763,8 @@ module.exports = require("stompjs");
|
|
|
3765
3763
|
module.exports = require("sm-crypto");
|
|
3766
3764
|
|
|
3767
3765
|
/***/ }),
|
|
3768
|
-
/* 11
|
|
3766
|
+
/* 11 */,
|
|
3767
|
+
/* 12 */
|
|
3769
3768
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
3770
3769
|
|
|
3771
3770
|
"use strict";
|
|
@@ -3792,13 +3791,12 @@ window.__store = store;
|
|
|
3792
3791
|
/* harmony default export */ __webpack_exports__["a"] = (store);
|
|
3793
3792
|
|
|
3794
3793
|
/***/ }),
|
|
3795
|
-
/*
|
|
3794
|
+
/* 13 */
|
|
3796
3795
|
/***/ (function(module, exports) {
|
|
3797
3796
|
|
|
3798
3797
|
module.exports = require("babel-runtime/regenerator");
|
|
3799
3798
|
|
|
3800
3799
|
/***/ }),
|
|
3801
|
-
/* 13 */,
|
|
3802
3800
|
/* 14 */,
|
|
3803
3801
|
/* 15 */,
|
|
3804
3802
|
/* 16 */,
|
|
@@ -3828,7 +3826,7 @@ module.exports = require("runtime-import");
|
|
|
3828
3826
|
// ESM COMPAT FLAG
|
|
3829
3827
|
__webpack_require__.r(__webpack_exports__);
|
|
3830
3828
|
|
|
3831
|
-
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/main/src/main.vue?vue&type=template&id=
|
|
3829
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/main/src/main.vue?vue&type=template&id=098112dd&
|
|
3832
3830
|
var render = function () {
|
|
3833
3831
|
var _vm = this
|
|
3834
3832
|
var _h = _vm.$createElement
|
|
@@ -3883,6 +3881,8 @@ var render = function () {
|
|
|
3883
3881
|
attrs: {
|
|
3884
3882
|
mode: "horizontal",
|
|
3885
3883
|
icons: _vm.icons,
|
|
3884
|
+
"menu-icon": _vm.menuIcon,
|
|
3885
|
+
"sub-icon": _vm.subIcon,
|
|
3886
3886
|
popperClass: "el-menu--popup-" + _vm.layout,
|
|
3887
3887
|
data: _vm.navs,
|
|
3888
3888
|
deep: _vm.layout === "topnav",
|
|
@@ -3975,7 +3975,10 @@ var render = function () {
|
|
|
3975
3975
|
: _vm._e(),
|
|
3976
3976
|
]),
|
|
3977
3977
|
_c("es-handle-user", {
|
|
3978
|
-
attrs: {
|
|
3978
|
+
attrs: {
|
|
3979
|
+
data: { type: "user" },
|
|
3980
|
+
userModel: _vm.userModel,
|
|
3981
|
+
},
|
|
3979
3982
|
on: { click: _vm.handleClick },
|
|
3980
3983
|
}),
|
|
3981
3984
|
],
|
|
@@ -4021,13 +4024,17 @@ var render = function () {
|
|
|
4021
4024
|
"is-top": _vm.layout == "topside",
|
|
4022
4025
|
data: _vm.menu,
|
|
4023
4026
|
"default-active": _vm.active,
|
|
4024
|
-
width: _vm.
|
|
4027
|
+
width: _vm.navsWidth,
|
|
4028
|
+
"nav-width": _vm.navWidth,
|
|
4025
4029
|
icons: _vm.icons,
|
|
4030
|
+
"menu-icon": _vm.menuIcon,
|
|
4031
|
+
"sub-icon": _vm.subIcon,
|
|
4026
4032
|
biserial: _vm.biserial,
|
|
4027
4033
|
title: _vm.showNavTitle ? _vm.title : false,
|
|
4028
4034
|
showCollapse: _vm.showNavTitle,
|
|
4029
4035
|
"menu-tips": _vm.menuTips,
|
|
4030
4036
|
"is-default": _vm.isDefault,
|
|
4037
|
+
paddingLeft: _vm.navPaddingLeft,
|
|
4031
4038
|
},
|
|
4032
4039
|
on: {
|
|
4033
4040
|
open: function (res) {
|
|
@@ -4058,6 +4065,7 @@ var render = function () {
|
|
|
4058
4065
|
data: _vm.tabs,
|
|
4059
4066
|
titleIcons: false,
|
|
4060
4067
|
"default-active": _vm.tabsId,
|
|
4068
|
+
"menu-icon": _vm.menuIcon,
|
|
4061
4069
|
"menu-tips": _vm.menuTips,
|
|
4062
4070
|
},
|
|
4063
4071
|
on: {
|
|
@@ -4260,7 +4268,7 @@ var staticRenderFns = []
|
|
|
4260
4268
|
render._withStripped = true
|
|
4261
4269
|
|
|
4262
4270
|
|
|
4263
|
-
// CONCATENATED MODULE: ./packages/main/src/main.vue?vue&type=template&id=
|
|
4271
|
+
// CONCATENATED MODULE: ./packages/main/src/main.vue?vue&type=template&id=098112dd&
|
|
4264
4272
|
|
|
4265
4273
|
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/main/src/userinfo.vue?vue&type=template&id=75d533de&
|
|
4266
4274
|
var userinfovue_type_template_id_75d533de_render = function () {
|
|
@@ -4289,7 +4297,7 @@ userinfovue_type_template_id_75d533de_render._withStripped = true
|
|
|
4289
4297
|
var api = __webpack_require__(1);
|
|
4290
4298
|
|
|
4291
4299
|
// EXTERNAL MODULE: ./src/utils/store.js
|
|
4292
|
-
var store = __webpack_require__(
|
|
4300
|
+
var store = __webpack_require__(12);
|
|
4293
4301
|
|
|
4294
4302
|
// EXTERNAL MODULE: ./src/utils/util.js
|
|
4295
4303
|
var util = __webpack_require__(0);
|
|
@@ -5939,7 +5947,7 @@ async_componentvue_type_template_id_8b78c8b6_scoped_true_render._withStripped =
|
|
|
5939
5947
|
// CONCATENATED MODULE: ./packages/main/src/async-component/index.vue?vue&type=template&id=8b78c8b6&scoped=true&
|
|
5940
5948
|
|
|
5941
5949
|
// EXTERNAL MODULE: external "babel-runtime/regenerator"
|
|
5942
|
-
var regenerator_ = __webpack_require__(
|
|
5950
|
+
var regenerator_ = __webpack_require__(13);
|
|
5943
5951
|
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator_);
|
|
5944
5952
|
|
|
5945
5953
|
// EXTERNAL MODULE: external "runtime-import"
|
|
@@ -6349,6 +6357,14 @@ var mainvue_type_script_lang_js_extends = Object.assign || function (target) { f
|
|
|
6349
6357
|
//
|
|
6350
6358
|
//
|
|
6351
6359
|
//
|
|
6360
|
+
//
|
|
6361
|
+
//
|
|
6362
|
+
//
|
|
6363
|
+
//
|
|
6364
|
+
//
|
|
6365
|
+
//
|
|
6366
|
+
//
|
|
6367
|
+
//
|
|
6352
6368
|
|
|
6353
6369
|
|
|
6354
6370
|
|
|
@@ -6381,8 +6397,15 @@ var appCode = util["a" /* default */].getParams('appCode') || util["a" /* defaul
|
|
|
6381
6397
|
maxHeight: String,
|
|
6382
6398
|
//菜单导航地址
|
|
6383
6399
|
menuUrl: String,
|
|
6384
|
-
|
|
6400
|
+
//菜单展开关闭图标
|
|
6385
6401
|
icons: Object,
|
|
6402
|
+
//菜单前置默认图标
|
|
6403
|
+
menuIcon: String,
|
|
6404
|
+
//子菜单是否显示前置图标
|
|
6405
|
+
subIcon: {
|
|
6406
|
+
type: Boolean,
|
|
6407
|
+
default: true
|
|
6408
|
+
},
|
|
6386
6409
|
//logo
|
|
6387
6410
|
logo: String,
|
|
6388
6411
|
//菜单显示类型
|
|
@@ -6506,7 +6529,10 @@ var appCode = util["a" /* default */].getParams('appCode') || util["a" /* defaul
|
|
|
6506
6529
|
type: [Boolean, String],
|
|
6507
6530
|
default: true
|
|
6508
6531
|
},
|
|
6509
|
-
appCode: String
|
|
6532
|
+
appCode: String,
|
|
6533
|
+
//菜单左边距
|
|
6534
|
+
navPaddingLeft: Number,
|
|
6535
|
+
navWidth: String
|
|
6510
6536
|
},
|
|
6511
6537
|
computed: {
|
|
6512
6538
|
showHeader: function showHeader() {
|
|
@@ -6533,7 +6559,7 @@ var appCode = util["a" /* default */].getParams('appCode') || util["a" /* defaul
|
|
|
6533
6559
|
}
|
|
6534
6560
|
return true;
|
|
6535
6561
|
},
|
|
6536
|
-
|
|
6562
|
+
navsWidth: function navsWidth() {
|
|
6537
6563
|
return this.layout === 'topside' ? '230px' : undefined;
|
|
6538
6564
|
},
|
|
6539
6565
|
showNavTitle: function showNavTitle() {
|
|
@@ -7853,8 +7879,12 @@ var appCode = util["a" /* default */].getParams('appCode') || util["a" /* defaul
|
|
|
7853
7879
|
}
|
|
7854
7880
|
}
|
|
7855
7881
|
} else {
|
|
7856
|
-
|
|
7857
|
-
|
|
7882
|
+
this.method = 'iframe';
|
|
7883
|
+
this.refresh = false;
|
|
7884
|
+
this.page = util["a" /* default */].handlerUrl(page, param);
|
|
7885
|
+
this.$nextTick(function () {
|
|
7886
|
+
_this10.refresh = true;
|
|
7887
|
+
});
|
|
7858
7888
|
}
|
|
7859
7889
|
}
|
|
7860
7890
|
}
|
package/lib/menu.js
CHANGED
|
@@ -87,6 +87,13 @@ module.exports =
|
|
|
87
87
|
/************************************************************************/
|
|
88
88
|
/******/ ({
|
|
89
89
|
|
|
90
|
+
/***/ 11:
|
|
91
|
+
/***/ (function(module, exports) {
|
|
92
|
+
|
|
93
|
+
module.exports = require("throttle-debounce");
|
|
94
|
+
|
|
95
|
+
/***/ }),
|
|
96
|
+
|
|
90
97
|
/***/ 3:
|
|
91
98
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
92
99
|
|
|
@@ -199,9 +206,13 @@ function normalizeComponent(
|
|
|
199
206
|
// ESM COMPAT FLAG
|
|
200
207
|
__webpack_require__.r(__webpack_exports__);
|
|
201
208
|
|
|
209
|
+
// EXTERNAL MODULE: external "throttle-debounce"
|
|
210
|
+
var external_throttle_debounce_ = __webpack_require__(11);
|
|
211
|
+
|
|
202
212
|
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/main.vue?vue&type=script&lang=js&
|
|
203
213
|
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
|
|
204
214
|
|
|
215
|
+
|
|
205
216
|
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
|
|
206
217
|
name: 'EsMenu',
|
|
207
218
|
inheritAttrs: false,
|
|
@@ -241,6 +252,15 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
241
252
|
paddingLeft: {
|
|
242
253
|
type: Number,
|
|
243
254
|
default: 14
|
|
255
|
+
},
|
|
256
|
+
menuIcon: {
|
|
257
|
+
type: String,
|
|
258
|
+
default: 'es-icon-application'
|
|
259
|
+
},
|
|
260
|
+
icons: Object,
|
|
261
|
+
subIcon: {
|
|
262
|
+
type: Boolean,
|
|
263
|
+
default: true
|
|
244
264
|
}
|
|
245
265
|
},
|
|
246
266
|
computed: {
|
|
@@ -248,37 +268,18 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
248
268
|
return this.height === undefined ? this.maxH : this.height;
|
|
249
269
|
},
|
|
250
270
|
maxWidth: function maxWidth() {
|
|
251
|
-
if (this.mode === 'vertical') {
|
|
252
|
-
return this.width;
|
|
253
|
-
}
|
|
254
271
|
return this.maxW;
|
|
255
272
|
}
|
|
256
273
|
},
|
|
257
274
|
watch: {
|
|
258
275
|
data: {
|
|
259
|
-
immediate: true,
|
|
260
276
|
deep: true,
|
|
261
277
|
handler: function handler() {
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
if (this.mode === 'vertical') {
|
|
265
|
-
this.$nextTick(function () {
|
|
266
|
-
_this.maxH = _this.$refs.esMenu.$el.getBoundingClientRect().height + 'px';
|
|
267
|
-
});
|
|
268
|
-
} else {
|
|
269
|
-
this.$nextTick(function () {
|
|
270
|
-
var w = 0;
|
|
271
|
-
Array.from(_this.$refs.menu.$el.children).forEach(function (item) {
|
|
272
|
-
w += item.getBoundingClientRect().width;
|
|
273
|
-
});
|
|
274
|
-
var styles = window.getComputedStyle(_this.$refs.menu.$el);
|
|
275
|
-
w += parseFloat(styles.paddingLeft) + parseFloat(styles.paddingRight);
|
|
276
|
-
if (w > _this.$refs.esMenu.$el.getBoundingClientRect().width) {
|
|
277
|
-
_this.maxW = w + 'px';
|
|
278
|
-
}
|
|
279
|
-
});
|
|
280
|
-
}
|
|
278
|
+
this.getMaxWidth();
|
|
281
279
|
}
|
|
280
|
+
},
|
|
281
|
+
width: function width() {
|
|
282
|
+
this.getMaxWidth();
|
|
282
283
|
}
|
|
283
284
|
},
|
|
284
285
|
data: function data() {
|
|
@@ -290,19 +291,52 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
290
291
|
isChange: false
|
|
291
292
|
};
|
|
292
293
|
},
|
|
293
|
-
|
|
294
|
+
beforeCreate: function beforeCreate() {
|
|
295
|
+
var _this = this;
|
|
296
|
+
|
|
297
|
+
this.getMaxWidth = Object(external_throttle_debounce_["debounce"])(300, function () {
|
|
298
|
+
_this.getWidth();
|
|
299
|
+
});
|
|
300
|
+
},
|
|
301
|
+
created: function created() {},
|
|
302
|
+
mounted: function mounted() {
|
|
303
|
+
this.getMaxWidth();
|
|
304
|
+
},
|
|
294
305
|
|
|
295
306
|
methods: {
|
|
296
|
-
|
|
307
|
+
getWidth: function getWidth() {
|
|
297
308
|
var _this2 = this;
|
|
298
309
|
|
|
310
|
+
if (this.mode === 'vertical') {
|
|
311
|
+
this.$nextTick(function () {
|
|
312
|
+
_this2.maxH = _this2.$refs.esMenu.$el.getBoundingClientRect().height + 'px';
|
|
313
|
+
var styles = window.getComputedStyle(_this2.$refs.menu.$el.parentNode);
|
|
314
|
+
_this2.maxW = _this2.width ? parseInt(_this2.width, 10) - parseInt(styles.marginLeft, 10) - parseInt(styles.marginRight, 10) + 'px' : '';
|
|
315
|
+
});
|
|
316
|
+
} else {
|
|
317
|
+
this.$nextTick(function () {
|
|
318
|
+
var w = 0;
|
|
319
|
+
Array.from(_this2.$refs.menu.$el.children).forEach(function (item) {
|
|
320
|
+
w += item.getBoundingClientRect().width;
|
|
321
|
+
});
|
|
322
|
+
var styles = window.getComputedStyle(_this2.$refs.menu.$el);
|
|
323
|
+
w += parseFloat(styles.paddingLeft) + parseFloat(styles.paddingRight);
|
|
324
|
+
if (w > _this2.$refs.esMenu.$el.getBoundingClientRect().width) {
|
|
325
|
+
_this2.maxW = w + 'px';
|
|
326
|
+
}
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
},
|
|
330
|
+
handleReady: function handleReady() {
|
|
331
|
+
var _this3 = this;
|
|
332
|
+
|
|
299
333
|
if (this.mode === 'horizontal') {
|
|
300
334
|
this.$refs.esMenu.wrap.onmouseover = function (e) {
|
|
301
|
-
|
|
335
|
+
_this3.$refs.esMenu.wrap.addEventListener('mousewheel', _this3.handleWheel, { passive: false }) || _this3.$refs.esMenu.wrap.addEventListener('DOMMouseScroll', _this3.handleWheel, false);
|
|
302
336
|
e.preventDefault();
|
|
303
337
|
};
|
|
304
338
|
this.$refs.esMenu.wrap.onmouseout = function (e) {
|
|
305
|
-
|
|
339
|
+
_this3.$refs.esMenu.wrap.removeEventListener('mousewheel', _this3.handleWheel, { passive: false }) || _this3.$refs.esMenu.wrap.removeEventListener('DOMMouseScroll', _this3.handleWheel, false);
|
|
306
340
|
e.preventDefault();
|
|
307
341
|
};
|
|
308
342
|
}
|
|
@@ -360,7 +394,7 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
360
394
|
}
|
|
361
395
|
},
|
|
362
396
|
handleSelect: function handleSelect(key, keyPath, item) {
|
|
363
|
-
var
|
|
397
|
+
var _this4 = this;
|
|
364
398
|
|
|
365
399
|
this.isChange = true;
|
|
366
400
|
if (this.menuId !== null && keyPath.indexOf(this.menuId) == -1) {
|
|
@@ -369,7 +403,7 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
369
403
|
var openedMenus = item.rootMenu.openedMenus;
|
|
370
404
|
openedMenus.forEach(function (item) {
|
|
371
405
|
if (keyPath.indexOf(item) == -1) {
|
|
372
|
-
|
|
406
|
+
_this4.$refs.menu.close(item);
|
|
373
407
|
}
|
|
374
408
|
});
|
|
375
409
|
}
|
|
@@ -402,18 +436,24 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
402
436
|
mode: this.mode
|
|
403
437
|
});
|
|
404
438
|
},
|
|
405
|
-
getSub: function getSub(item, h, popper, fourthTabs) {
|
|
406
|
-
var
|
|
439
|
+
getSub: function getSub(item, h, popper, fourthTabs, subIcon) {
|
|
440
|
+
var _this5 = this;
|
|
407
441
|
|
|
408
442
|
if (popper) {
|
|
409
443
|
popper += this.popperClass !== undefined ? ' ' + this.popperClass : ' es-menu-popper-' + this.mode;
|
|
410
444
|
} else {
|
|
411
445
|
popper = this.popperClass !== undefined ? this.popperClass : ' es-menu-popper-' + this.mode;
|
|
412
446
|
}
|
|
413
|
-
var title = [
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
447
|
+
var title = [];
|
|
448
|
+
if (subIcon) {
|
|
449
|
+
title.push(h('es-icon', {
|
|
450
|
+
props: {
|
|
451
|
+
contents: item.icons || this.menuIcon
|
|
452
|
+
},
|
|
453
|
+
class: ['es-menu-item-icon']
|
|
454
|
+
}));
|
|
455
|
+
}
|
|
456
|
+
title.push(h('div', {
|
|
417
457
|
class: ['es-menu-title-text es-menu-title-' + this.mode]
|
|
418
458
|
}, [h('el-badge', {
|
|
419
459
|
class: ['es-badge', {
|
|
@@ -431,14 +471,14 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
431
471
|
max: 99,
|
|
432
472
|
hidden: !item.tips
|
|
433
473
|
}
|
|
434
|
-
}, [item.text])])
|
|
474
|
+
}, [item.text])]));
|
|
435
475
|
var doms = [h('template', { slot: 'title' }, this.titleIcons ? title : [title[1]])];
|
|
436
476
|
if (this.deep && item.children && item.children.length && (!item.extendData || item.extendData.businessStatus != 0)) {
|
|
437
477
|
doms = doms.concat(item.children.map(function (ele, index) {
|
|
438
478
|
if (!ele) {
|
|
439
479
|
console.error('\u5BF9\u8C61\u5B50\u6570\u636E\u4E2D\u7B2C[' + index + ']\u6761\u6570\u636E\u9519\u8BEF', item);
|
|
440
480
|
} else {
|
|
441
|
-
return
|
|
481
|
+
return _this5.getSub(ele, h, popper, false, _this5.subIcon);
|
|
442
482
|
}
|
|
443
483
|
}));
|
|
444
484
|
return [h('el-submenu', {
|
|
@@ -456,7 +496,7 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
456
496
|
if (!ele) {
|
|
457
497
|
console.error('\u5BF9\u8C61\u5B50\u6570\u636E\u4E2D\u7B2C[' + index + ']\u6761\u6570\u636E\u9519\u8BEF', item);
|
|
458
498
|
} else {
|
|
459
|
-
return
|
|
499
|
+
return _this5.getSub(ele, h, popper, true, _this5.subIcon);
|
|
460
500
|
}
|
|
461
501
|
}));
|
|
462
502
|
return [h('el-submenu', {
|
|
@@ -484,28 +524,23 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
484
524
|
}
|
|
485
525
|
}, this.titleIcons ? title : [title[1]])];
|
|
486
526
|
}
|
|
487
|
-
},
|
|
488
|
-
unicode: function unicode(res) {
|
|
489
|
-
if (!res) {
|
|
490
|
-
return false;
|
|
491
|
-
}
|
|
492
|
-
var reg = new RegExp(/^es-\S+/, 'g');
|
|
493
|
-
return res.match(reg) ? res.match(reg).length : 0;
|
|
494
527
|
}
|
|
495
528
|
},
|
|
496
529
|
render: function render(h) {
|
|
497
|
-
var
|
|
530
|
+
var _this6 = this;
|
|
498
531
|
|
|
499
532
|
var doms = [];
|
|
500
533
|
this.data.forEach(function (item) {
|
|
501
534
|
if (item.children && item.children.length && (!item.extendData || item.extendData.businessStatus != 0)) {
|
|
502
|
-
doms = doms.concat(
|
|
535
|
+
doms = doms.concat(_this6.getSub(item, h, 'es-sub-menu', false, true));
|
|
503
536
|
} else {
|
|
504
|
-
var title = [h('
|
|
505
|
-
|
|
506
|
-
|
|
537
|
+
var title = [h('es-icon', {
|
|
538
|
+
props: {
|
|
539
|
+
contents: item.icons || _this6.menuIcon
|
|
540
|
+
},
|
|
541
|
+
class: ['es-menu-item-icon']
|
|
507
542
|
}), h('div', {
|
|
508
|
-
class: ['es-menu-title-text es-menu-title-' +
|
|
543
|
+
class: ['es-menu-title-text es-menu-title-' + _this6.mode]
|
|
509
544
|
}, [h('el-badge', {
|
|
510
545
|
class: ['es-badge', {
|
|
511
546
|
'es-badge-right': item.tips && typeof item.tips !== 'boolean',
|
|
@@ -521,9 +556,9 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
521
556
|
}
|
|
522
557
|
}, [item.text])])];
|
|
523
558
|
doms.push(h('el-menu-item', {
|
|
524
|
-
class: ['es-menu-item-' +
|
|
559
|
+
class: ['es-menu-item-' + _this6.mode],
|
|
525
560
|
props: {
|
|
526
|
-
paddingLeft:
|
|
561
|
+
paddingLeft: _this6.paddingLeft,
|
|
527
562
|
disabled: item.extendData && item.extendData.businessStatus == 0
|
|
528
563
|
},
|
|
529
564
|
attrs: {
|
|
@@ -531,7 +566,7 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
531
566
|
index: item.id,
|
|
532
567
|
key: item.id
|
|
533
568
|
}
|
|
534
|
-
},
|
|
569
|
+
}, _this6.titleIcons ? title : [title[1]]));
|
|
535
570
|
}
|
|
536
571
|
});
|
|
537
572
|
return h('el-scrollbar', {
|
|
@@ -549,7 +584,8 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
549
584
|
defaultActive: this.defaultActive,
|
|
550
585
|
collapse: this.collapse,
|
|
551
586
|
mode: this.mode,
|
|
552
|
-
uniqueOpened: this.uniqueOpened
|
|
587
|
+
uniqueOpened: this.uniqueOpened,
|
|
588
|
+
icons: this.icons
|
|
553
589
|
},
|
|
554
590
|
style: { width: this.maxWidth },
|
|
555
591
|
attrs: _extends({}, this.$attrs),
|