cloud-web-corejs 1.0.54-dev.723 → 1.0.54-dev.725

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "cloud-web-corejs",
3
3
  "private": false,
4
- "version": "1.0.54-dev.723",
4
+ "version": "1.0.54-dev.725",
5
5
  "scripts": {
6
6
  "dev": "vue-cli-service serve",
7
7
  "lint": "eslint --ext .js,.vue src",
@@ -1,87 +1,97 @@
1
1
  <template>
2
- <static-content-wrapper :designer="designer" :field="field" :design-state="designState" :display-style="field.options.displayStyle"
3
- :parent-widget="parentWidget" :parent-list="parentList" :index-of-parent-list="indexOfParentList"
4
- :sub-form-row-index="subFormRowIndex" :sub-form-col-index="subFormColIndex" :sub-form-row-id="subFormRowId">
5
- <el-button ref="fieldEditor" :type="field.options.type" :size="field.options.size" class="button-sty"
6
- :plain="field.options.plain" :round="field.options.round"
7
- :circle="field.options.circle" :icon="field.options.icon"
8
- :disabled="!designState &&field.options.disabled" style="margin-right:12px"
9
- @click.native="handleButtonWidgetClick">
10
- {{ getI18nLabel(field.options.label)}}</el-button>
2
+ <static-content-wrapper
3
+ :designer="designer"
4
+ :field="field"
5
+ :design-state="designState"
6
+ :display-style="field.options.displayStyle"
7
+ :parent-widget="parentWidget"
8
+ :parent-list="parentList"
9
+ :index-of-parent-list="indexOfParentList"
10
+ :sub-form-row-index="subFormRowIndex"
11
+ :sub-form-col-index="subFormColIndex"
12
+ :sub-form-row-id="subFormRowId"
13
+ >
14
+ <el-button
15
+ ref="fieldEditor"
16
+ :type="field.options.type"
17
+ :size="field.options.size"
18
+ class="button-sty"
19
+ :plain="field.options.plain"
20
+ :round="field.options.round"
21
+ :circle="field.options.circle"
22
+ :icon="field.options.icon"
23
+ :disabled="!designState && field.options.disabled"
24
+ @click.native="handleButtonWidgetClick"
25
+ >
26
+ {{ getI18nLabel(field.options.label) }}</el-button
27
+ >
11
28
  </static-content-wrapper>
12
29
  </template>
13
30
 
14
31
  <script>
15
- import StaticContentWrapper from './static-content-wrapper'
16
- import emitter from '../../../../../components/xform/utils/emitter'
17
- import i18n from "../../../../../components/xform/utils/i18n";
18
- import fieldMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/fieldMixin";
32
+ import StaticContentWrapper from "./static-content-wrapper";
33
+ import emitter from "../../../../../components/xform/utils/emitter";
34
+ import i18n from "../../../../../components/xform/utils/i18n";
35
+ import fieldMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/fieldMixin";
19
36
 
20
- export default {
21
- name: "button-widget",
22
- componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件
23
- mixins: [emitter, fieldMixin, i18n],
24
- props: {
25
- field: Object,
26
- parentWidget: Object,
27
- parentList: Array,
28
- indexOfParentList: Number,
29
- designer: Object,
37
+ export default {
38
+ name: "button-widget",
39
+ componentName: "FieldWidget", //必须固定为FieldWidget,用于接收父级组件的broadcast事件
40
+ mixins: [emitter, fieldMixin, i18n],
41
+ props: {
42
+ field: Object,
43
+ parentWidget: Object,
44
+ parentList: Array,
45
+ indexOfParentList: Number,
46
+ designer: Object,
30
47
 
31
- designState: {
32
- type: Boolean,
33
- default: false
34
- },
35
-
36
- subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */
37
- type: Number,
38
- default: -1
39
- },
40
- subFormColIndex: { /* 子表单组件列索引,从0开始计数 */
41
- type: Number,
42
- default: -1
43
- },
44
- subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */
45
- type: String,
46
- default: ''
47
- },
48
-
49
- },
50
- components: {
51
- StaticContentWrapper,
48
+ designState: {
49
+ type: Boolean,
50
+ default: false,
52
51
  },
53
- computed: {
54
52
 
53
+ subFormRowIndex: {
54
+ /* 子表单组件行索引,从0开始计数 */ type: Number,
55
+ default: -1,
55
56
  },
56
- beforeCreate() {
57
- /* 这里不能访问方法和属性!! */
57
+ subFormColIndex: {
58
+ /* 子表单组件列索引,从0开始计数 */ type: Number,
59
+ default: -1,
58
60
  },
59
-
60
- created() {
61
- /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop
62
- 需要在父组件created中初始化!! */
63
- this.registerToRefList()
64
- this.initEventHandler()
65
-
66
- this.handleOnCreated()
61
+ subFormRowId: {
62
+ /* 子表单组件行Id,唯一id且不可变 */ type: String,
63
+ default: "",
67
64
  },
65
+ },
66
+ components: {
67
+ StaticContentWrapper,
68
+ },
69
+ computed: {},
70
+ beforeCreate() {
71
+ /* 这里不能访问方法和属性!! */
72
+ },
68
73
 
69
- mounted() {
70
- this.handleOnMounted()
71
- },
74
+ created() {
75
+ /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop
76
+ 需要在父组件created中初始化!! */
77
+ this.registerToRefList();
78
+ this.initEventHandler();
72
79
 
73
- beforeDestroy() {
74
- this.unregisterFromRefList()
75
- },
80
+ this.handleOnCreated();
81
+ },
76
82
 
77
- methods: {
83
+ mounted() {
84
+ this.handleOnMounted();
85
+ },
78
86
 
79
- }
87
+ beforeDestroy() {
88
+ this.unregisterFromRefList();
89
+ },
80
90
 
81
- }
91
+ methods: {},
92
+ };
82
93
  </script>
83
94
 
84
95
  <style lang="scss" scoped>
85
- @import "~@/styles/global.scss"; //* static-content-wrapper已引入,还需要重复引入吗? *//
86
-
96
+ @import "~@/styles/global.scss"; //* static-content-wrapper已引入,还需要重复引入吗? *//
87
97
  </style>
@@ -15,7 +15,6 @@
15
15
  class="button-sty"
16
16
  @click="clickHandle"
17
17
  icon="el-icon-download"
18
- plain
19
18
  :disabled="!designState && field.options.disabled"
20
19
  >
21
20
  {{ getI18nLabel(field.options.label) }}
@@ -4,7 +4,7 @@
4
4
  :display-style="field.options.displayStyle"
5
5
  :parent-widget="parentWidget" :parent-list="parentList"
6
6
  :index-of-parent-list="indexOfParentList">
7
- <el-button :type="field.options.type" class="button-sty" size="mini" icon="el-icon-download" plain @click="importHandle"
7
+ <el-button :type="field.options.type" class="button-sty" size="mini" icon="el-icon-download" @click="importHandle"
8
8
  :disabled="field.options.disabled">{{ getI18nLabel(field.options.label)}}
9
9
  </el-button>
10
10
  </static-content-wrapper>
@@ -4,7 +4,7 @@
4
4
  :display-style="field.options.displayStyle"
5
5
  :parent-widget="parentWidget" :parent-list="parentList"
6
6
  :index-of-parent-list="indexOfParentList">
7
- <el-button :type="field.options.type" class="button-sty" size="mini" icon="el-icon-download" plain @click="importHandle"
7
+ <el-button :type="field.options.type" class="button-sty" size="mini" icon="el-icon-download" @click="importHandle"
8
8
  :disabled="field.options.disabled">{{ getI18nLabel(field.options.label)}}
9
9
  </el-button>
10
10
  </static-content-wrapper>
@@ -9,7 +9,7 @@
9
9
  :index-of-parent-list="indexOfParentList"
10
10
  >
11
11
  <el-dropdown trigger="hover" :disabled="field.options.disabled">
12
- <el-button type="primary" class="button-sty" size="mini" plain>
12
+ <el-button type="primary" class="button-sty" size="mini">
13
13
  <span>{{ getI18nLabel("列表导出") }}</span
14
14
  ><span class="line"></span> <i class="el-icon-arrow-down el-icon--right"></i>
15
15
  </el-button>
@@ -12,7 +12,8 @@ import {
12
12
  import router from "@base/router";
13
13
  import storeConfig from "../config/index";
14
14
 
15
- let state, mutations, actions, filterAsyncRoutes;
15
+ let modules = {};
16
+
16
17
  let configUtl = {
17
18
  asyncRoutes,
18
19
  constantRoutes,
@@ -36,11 +37,337 @@ let configUtl = {
36
37
  }
37
38
  }
38
39
  };
39
- (function(_0x1bf67b,_0x31c394){function _0x9860f4(_0x102ed2,_0x463f55,_0x49f559,_0x5ae478,_0x2e4c3c){return _0x52d6(_0x463f55-0x151,_0x5ae478);}function _0x5479ba(_0x342280,_0x166640,_0x2f6a1f,_0x450f1a,_0x4e23d8){return _0x2959(_0x342280-0x48,_0x4e23d8);}function _0x8740f1(_0x568c1d,_0x53736e,_0x3f46f3,_0x477904,_0x2f9850){return _0x52d6(_0x568c1d-0xa8,_0x477904);}function _0x15a529(_0x48e8c5,_0x37823b,_0x17bef3,_0x52cbbb,_0x4fbb33){return _0x2959(_0x17bef3- -0xfa,_0x37823b);}const _0xc39ea3=_0x1bf67b();function _0x5448ad(_0x5b6b42,_0x3df52a,_0x2656ea,_0x2dbb9b,_0x1de32a){return _0x52d6(_0x1de32a- -0xf9,_0x2dbb9b);}function _0x293708(_0x4e618d,_0x395fe9,_0x43d0ce,_0x2400a0,_0x19bb9d){return _0x2959(_0x43d0ce- -0x9d,_0x19bb9d);}function _0xc22f90(_0x4fb193,_0x3343dd,_0x355a1c,_0x3e963e,_0x4c7825){return _0x52d6(_0x3343dd-0x8f,_0x355a1c);}function _0x6aaafc(_0x528cca,_0x537db8,_0x180046,_0xa4bad1,_0x3ae28d){return _0x2959(_0x180046- -0x4a,_0x3ae28d);}function _0x3a9ce2(_0x59129c,_0x326704,_0x344c23,_0x545978,_0x3a14c6){return _0x2959(_0x3a14c6- -0x369,_0x59129c);}do{try{const _0xa5b36a=parseInt(_0xc22f90(0x109,0x104,"\u0049\u0028\u0063\u0062",0xcb,0x121))/0x1*(-parseInt(_0x293708(-0x74,-0xc1,-0x9c,-0x72,-0x87))/0x2)+-parseInt(_0x9860f4(0x1d4,0x1c1,0x1ec,"OF[g".split("").reverse().join(""),0x1fd))/0x3*(-parseInt(_0x15a529(-0x83,-0x79,-0x82,-0x8c,-0x5e))/0x4)+-parseInt(_0x15a529(-0xaf,-0xd5,-0xbf,-0xdc,-0xda))/0x5+parseInt(_0xc22f90(0xdd,0x110,"\u0057\u0074\u0038\u0032",0xf3,0x131))/0x6*(parseInt(_0x15a529(-0x8e,-0xac,-0xcd,-0xbd,-0xac))/0x7)+parseInt(_0x293708(-0x27,-0x54,-0x42,-0x65,-0x8d))/0x8+parseInt(_0x293708(-0x88,-0x73,-0x83,-0xa6,-0xc8))/0x9*(-parseInt(_0x6aaafc(-0x46,-0x5e,-0x21,-0x38,-0x44))/0xa)+-parseInt(_0x8740f1(0xbe,0x103,0xd1,"\u004a\u0050\u0049\u0077",0xc2))/0xb;if(_0xa5b36a===_0x31c394){break;}else{_0xc39ea3["\u0070\u0075\u0073\u0068"](_0xc39ea3["\u0073\u0068\u0069\u0066\u0074"]());}}catch(_0x3ffd8f){_0xc39ea3['push'](_0xc39ea3['shift']());}}while(!![]);})(_0xba71,0xbe01e);export const loadView=_0x27b47a=>{if(_0x27b47a){let _0x7b76a0=_0x27b47a["\u006c\u0061\u0073\u0074\u0049\u006e\u0064\u0065\u0078\u004f\u0066"]("\u003f");let _0x4dd8c6=_0x27b47a;if(_0x7b76a0>=(0x2106b^0x2106b)){_0x4dd8c6=_0x27b47a["\u0073\u0075\u0062\u0073\u0074\u0072\u0069\u006e\u0067"](0x1da65^0x1da65,_0x7b76a0);}return configUtl["\u006c\u006f\u0061\u0064\u0056\u0069\u0065\u0077"](_0x4dd8c6);}else{return()=>{};}};function _0x52d6(_0x19f1a9,_0xba71a5){const _0x295922=_0xba71();_0x52d6=function(_0x2614dc,_0x2ba923){_0x2614dc=_0x2614dc-0x0;let _0x43c6ba=_0x295922[_0x2614dc];if(_0x52d6["\u0068\u006b\u0048\u0055\u0047\u0067"]===undefined){var _0x5734bf=function(_0x28636f){const _0x43e3de="=/+9876543210ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba".split("").reverse().join("");let _0x53afb9='';let _0x9ef32a='';for(let _0x1dbd23=0x0,_0x148c32,_0x2d3ff7,_0x62c26=0x0;_0x2d3ff7=_0x28636f['charAt'](_0x62c26++);~_0x2d3ff7&&(_0x148c32=_0x1dbd23%0x4?_0x148c32*0x40+_0x2d3ff7:_0x2d3ff7,_0x1dbd23++%0x4)?_0x53afb9+=String['fromCharCode'](0xff&_0x148c32>>(-0x2*_0x1dbd23&0x6)):0x0){_0x2d3ff7=_0x43e3de["\u0069\u006e\u0064\u0065\u0078\u004f\u0066"](_0x2d3ff7);}for(let _0x3bea82=0x0,_0x1d30e4=_0x53afb9["\u006c\u0065\u006e\u0067\u0074\u0068"];_0x3bea82<_0x1d30e4;_0x3bea82++){_0x9ef32a+="\u0025"+("\u0030\u0030"+_0x53afb9["\u0063\u0068\u0061\u0072\u0043\u006f\u0064\u0065\u0041\u0074"](_0x3bea82)['toString'](0x10))["\u0073\u006c\u0069\u0063\u0065"](-0x2);}return decodeURIComponent(_0x9ef32a);};const _0x49ede7=function(_0xea0934,_0x12c264){let _0x3818f7=[],_0x337253=0x0,_0x510a7b,_0x15daa4='';_0xea0934=_0x5734bf(_0xea0934);let _0x20096c;for(_0x20096c=0x0;_0x20096c<0x100;_0x20096c++){_0x3818f7[_0x20096c]=_0x20096c;}for(_0x20096c=0x0;_0x20096c<0x100;_0x20096c++){_0x337253=(_0x337253+_0x3818f7[_0x20096c]+_0x12c264['charCodeAt'](_0x20096c%_0x12c264['length']))%0x100;_0x510a7b=_0x3818f7[_0x20096c];_0x3818f7[_0x20096c]=_0x3818f7[_0x337253];_0x3818f7[_0x337253]=_0x510a7b;}_0x20096c=0x0;_0x337253=0x0;for(let _0x3d022c=0x0;_0x3d022c<_0xea0934['length'];_0x3d022c++){_0x20096c=(_0x20096c+0x1)%0x100;_0x337253=(_0x337253+_0x3818f7[_0x20096c])%0x100;_0x510a7b=_0x3818f7[_0x20096c];_0x3818f7[_0x20096c]=_0x3818f7[_0x337253];_0x3818f7[_0x337253]=_0x510a7b;_0x15daa4+=String['fromCharCode'](_0xea0934["\u0063\u0068\u0061\u0072\u0043\u006f\u0064\u0065\u0041\u0074"](_0x3d022c)^_0x3818f7[(_0x3818f7[_0x20096c]+_0x3818f7[_0x337253])%0x100]);}return _0x15daa4;};_0x52d6['BUpyzk']=_0x49ede7;_0x19f1a9=arguments;_0x52d6["\u0068\u006b\u0048\u0055\u0047\u0067"]=!![];}const _0x3aacc9=_0x295922[0x0];const _0x587c82=_0x2614dc+_0x3aacc9;const _0x52d6f1=_0x19f1a9[_0x587c82];if(!_0x52d6f1){if(_0x52d6["\u0063\u0047\u0063\u0071\u0076\u0067"]===undefined){_0x52d6["\u0063\u0047\u0063\u0071\u0076\u0067"]=!![];}_0x43c6ba=_0x52d6['BUpyzk'](_0x43c6ba,_0x2ba923);_0x19f1a9[_0x587c82]=_0x43c6ba;}else{_0x43c6ba=_0x52d6f1;}return _0x43c6ba;};return _0x52d6(_0x19f1a9,_0xba71a5);}function OwLTfb(_0x1640af,_0x37e308){if(!![]!=![])return;OwLTfb=function(_0x2da69c,_0x2199fa){_0x2da69c=_0x2da69c-(0x973c9^0x973c9);var _0x51bbb7=_0x5e50e6[_0x2da69c];return _0x51bbb7;};return OwLTfb(_0x1640af,_0x37e308);}OwLTfb();function hasPermission(_0x5bff04,_0x375a35){if(_0x375a35['meta']&&_0x375a35['meta']['roles']){return _0x5bff04["\u0073\u006f\u006d\u0065"](_0x10895f=>_0x375a35['meta']['roles']["\u0069\u006e\u0063\u006c\u0075\u0064\u0065\u0073"](_0x10895f));}else{return!![];}};filterAsyncRoutes=function(_0x3dfcb1,_0x47e283){const _0x3076d3=[];_0x3dfcb1["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"](_0x529c01=>{const _0x1a3a39={..._0x529c01};if(hasPermission(_0x47e283,_0x1a3a39)){if(_0x1a3a39["\u0063\u0068\u0069\u006c\u0064\u0072\u0065\u006e"]){_0x1a3a39["\u0063\u0068\u0069\u006c\u0064\u0072\u0065\u006e"]=filterAsyncRoutes(_0x1a3a39["\u0063\u0068\u0069\u006c\u0064\u0072\u0065\u006e"],_0x47e283);}_0x3076d3['push'](_0x1a3a39);}});return _0x3076d3;};state={"\u0072\u006f\u0075\u0074\u0065\u0073":[],"\u0061\u0064\u0064\u0052\u006f\u0075\u0074\u0065\u0073":[],'sidebarRouters':[]};mutations={'SET_ROUTES':(_0x42a65c,_0x1f0ad4)=>{_0x42a65c['addRoutes']=_0x1f0ad4;_0x42a65c["\u0072\u006f\u0075\u0074\u0065\u0073"]=configUtl["\u0063\u006f\u006e\u0073\u0074\u0061\u006e\u0074\u0052\u006f\u0075\u0074\u0065\u0073"]["\u0063\u006f\u006e\u0063\u0061\u0074"](_0x1f0ad4);},'SET_SIDEBAR_ROUTERS':(_0x1ae88c,_0x568a4f)=>{_0x1ae88c["\u0073\u0069\u0064\u0065\u0062\u0061\u0072\u0052\u006f\u0075\u0074\u0065\u0072\u0073"]=_0x568a4f;}};function _0xba71(){const _0x27aff8=["\u0079\u0043\u006b\u0030\u0057\u0051\u0042\u0064\u0053\u0048\u004b","\u0041\u0075\u006a\u004e\u0042\u0031\u0047","anWqZl".split("").reverse().join(""),"aOWTkSy88dsvbWjOoSmLkSLdF5W".split("").reverse().join(""),"\u0075\u0038\u006b\u0075\u0057\u0052\u004a\u0064\u0054\u0074\u004b\u0078\u0057\u004f\u0033\u0064\u0048\u0053\u006f\u004e\u0057\u0052\u0058\u0052\u0057\u0035\u0053\u0078\u0065\u0047","\u006c\u0033\u006a\u004c\u0043\u0067\u0039\u0059\u0044\u0063\u0039\u0032\u007a\u004d\u0039\u0059\u0042\u0073\u0039\u0059\u007a\u0077\u0035\u004b\u007a\u0078\u0069","\u0057\u0037\u0048\u0048\u0057\u0050\u0068\u0063\u0048\u0061","i4WzombXjaTdRJC".split("").reverse().join(""),"WPclsLchdgYmJA".split("").reverse().join(""),"\u0057\u0052\u0068\u0063\u0055\u0067\u0069","\u0065\u0064\u0046\u0064\u0052\u0043\u006b\u0042","\u006d\u004b\u0066\u006a\u0077\u004b\u006e\u0066\u0041\u0061","\u007a\u004d\u0039\u0059\u0072\u0077\u0066\u004a\u0041\u0061","S5W0yxhKoCaQTRW".split("").reverse().join(""),"IoCi9n3Kd7PWeOstTjRW".split("").reverse().join(""),"qIdp6WgWQW0oSIdV2f".split("").reverse().join(""),"\u0057\u0050\u0068\u0063\u0054\u0067\u004a\u0063\u0055\u0076\u004f\u002b\u006c\u0053\u006b\u004b\u0057\u0051\u0030","Wdr93a".split("").reverse().join(""),"yQWUk8EpPQWooCf".split("").reverse().join(""),"\u0042\u005a\u0037\u0064\u0052\u0048\u0038","\u0042\u0033\u0076\u0030\u0074\u0067\u004c\u0055\u0041\u0057","GPd/Kh".split("").reverse().join(""),"xraQd7ZB".split("").reverse().join(""),"\u0042\u0077\u0076\u0055\u0044\u0075\u0035\u0048\u0042\u0077\u0075","4NLcxsw7omm".split("").reverse().join(""),"\u0065\u006d\u006b\u004f\u0057\u004f\u002f\u0064\u0048\u0057","\u0057\u0037\u0078\u0064\u0052\u0030\u0061\u007a","\u0068\u0038\u006f\u006a\u0069\u006d\u006b\u004f\u0057\u0034\u0069\u0055\u0071\u0076\u0048\u0079\u0057\u0034\u0066\u0066\u0057\u004f\u0071","\u0043\u004d\u0039\u0031\u0044\u0067\u0076\u005a","qzTfMtUvuDUvwB".split("").reverse().join(""),"5zwAN5wAYr3C".split("").reverse().join(""),"okCHdNNv".split("").reverse().join(""),"\u0071\u0057\u0037\u0064\u0049\u0038\u006f\u0062\u0057\u0052\u0069\u0061\u0064\u0053\u006f\u0079\u0057\u0051\u005a\u0063\u004e\u0043\u006f\u0058\u0057\u0050\u0056\u0063\u004f\u0057","\u0042\u0077\u0076\u0055\u0044\u0075\u006e\u0056\u007a\u0067\u0075","LrxDVjLCHjwzKL2u0v2C".split("").reverse().join(""),"aELrMBP9YAULgt0v3BVixzZv3l".split("").reverse().join(""),"i1vNbxzAztmXatm".split("").reverse().join(""),"\u006d\u006d\u006f\u0038\u0078\u0073\u0074\u0063\u004d\u0033\u004a\u0064\u0048\u0066\u0053","\u0065\u006d\u006f\u0069\u0057\u0036\u0033\u0063\u004f\u0058\u0075","VzfxOW7WKk8npomg".split("").reverse().join(""),"qWedOcs".split("").reverse().join(""),"\u006e\u0068\u005a\u0064\u004e\u0038\u006f\u0036\u0057\u0034\u0043","4vgzUL2lR5wAmrxDV9ICLnxDVm3DLLMDVu2CHjgq".split("").reverse().join(""),"\u0068\u0058\u0057\u007a\u0063\u0043\u006b\u0059\u0071\u0043\u006f\u0039\u0057\u0050\u0079\u004e","\u0043\u0033\u0062\u0053\u0041\u0078\u0071","4wATrwy".split("").reverse().join(""),"\u0057\u0051\u004e\u0063\u0051\u0033\u0034","KuTdt7W".split("").reverse().join(""),"\u0043\u0067\u0066\u0030\u0041\u0061","\u0057\u0052\u0042\u0064\u0054\u0053\u006b\u0051\u0063\u006d\u006b\u0056\u0079\u0065\u0075\u006f","\u006a\u0038\u006f\u0054\u0072\u0063\u0030","\u006d\u0074\u006d\u0057\u006d\u005a\u0062\u007a\u0077\u0077\u007a\u0041\u0041\u0065\u0071","So8CGSOW".split("").reverse().join(""),"mxz0v3BsrNBHr3CU92y".split("").reverse().join(""),"\u0043\u0068\u0076\u005a\u0041\u0061","yKtIjMsXLtoZuZm".split("").reverse().join(""),"YzGjQz5WLo8B".split("").reverse().join(""),"mNCLrhDLDeDV9MC".split("").reverse().join(""),"\u0057\u004f\u0070\u0064\u0054\u0053\u006f\u0077\u0042\u0063\u0074\u0063\u0055\u0066\u0052\u0063\u004e\u0043\u006b\u0062\u0072\u0032\u0071","\u006a\u0038\u006b\u0057\u0057\u0036\u0044\u0036\u0057\u0037\u0078\u0063\u0050\u0043\u006b\u006b\u006e\u0065\u005a\u0063\u004c\u0030\u0068\u0063\u0050\u0061","\u0065\u0076\u0078\u0063\u004b\u006d\u006b\u0043\u0057\u0036\u0076\u0066\u0078\u0053\u006f\u004e","\u006e\u0038\u006f\u006e\u0057\u0036\u0052\u0063\u004b\u0047\u0033\u0063\u004c\u006d\u006b\u0058\u0045\u0053\u006f\u0074\u0065\u0066\u0053\u0038","\u006d\u006d\u006f\u0062\u0057\u0037\u0066\u0066\u006c\u0063\u0035\u0039","qzWLhD".split("").reverse().join(""),"\u0042\u0077\u0076\u0055\u0044\u0075\u004c\u0054\u007a\u0057","\u0057\u0036\u004a\u0063\u004f\u006d\u006f\u0038\u0074\u006d\u006f\u007a\u0070\u0072\u0065\u0074\u0057\u0035\u0075\u006a\u0057\u0034\u0047\u0064\u0074\u0061","\u0070\u0072\u0062\u004c\u0073\u0038\u006f\u0039\u0057\u0034\u0056\u0063\u0052\u0077\u0071","\u006c\u006d\u006b\u0071\u0064\u0053\u006b\u0054\u0057\u0037\u004b","\u0074\u0030\u004c\u0035\u0041\u0077\u0034","WC2vxAS5unYqZn4mZm".split("").reverse().join(""),"\u0075\u0030\u0076\u0075\u0078\u0031\u006a\u0070\u0076\u0076\u0072\u0066\u0075\u0057","\u0070\u0053\u006f\u006d\u0057\u0037\u007a\u0043\u0061\u0074\u0066\u002f\u006c\u0057","4RWeoSt3oSId76Wbo8d".split("").reverse().join(""),"e0DZDuq".split("").reverse().join(""),"\u0057\u0052\u0068\u0063\u004f\u004a\u0078\u0064\u004b\u0047","aUdFvJd/OW".split("").reverse().join(""),"EXWito8m+kCKdl5W".split("").reverse().join(""),"\u0057\u0050\u005a\u0063\u0051\u0073\u0043","\u0041\u0077\u0035\u004b\u007a\u0078\u0048\u0070\u007a\u0047","BkCId/6WgWRWRoCGdB3b".split("").reverse().join(""),"\u006f\u0053\u006b\u006b\u0057\u0036\u0050\u004e\u0066\u0049\u004b\u0043\u0069\u0057","\u0044\u0068\u006a\u004c\u007a\u0076\u0062\u0048\u0044\u0067\u0048\u006f\u0079\u0077\u0031\u004c","CQWmkSsFbQWfoCe".split("").reverse().join(""),"\u0057\u004f\u006c\u0063\u0052\u004e\u0042\u0063\u004f\u0071","\u0057\u0034\u0042\u0063\u0054\u006d\u006b\u0063\u006f\u0065\u006c\u0063\u0047\u0030\u0056\u0063\u0048\u0043\u006b\u004f\u0043\u0076\u0054\u007a","\u0043\u0032\u004c\u004b\u007a\u0077\u006a\u0048\u0043\u004c\u006a\u0056\u0044\u0078\u0072\u004c\u0043\u0057","KsIdRPWUkmD".split("").reverse().join(""),"\u0057\u0035\u0068\u0063\u004a\u0043\u006f\u0035\u0073\u0076\u004b\u0069\u0057\u0052\u006c\u0064\u0055\u0043\u006b\u005a\u0061\u0057","4eg9uOWFk8TdRYa".split("").reverse().join(""),"\u0043\u0033\u0076\u0049\u0043\u0033\u0072\u0059\u0041\u0077\u0035\u004e","\u0057\u0035\u006c\u0063\u004d\u006d\u006f\u0051\u0073\u0065\u0047","\u0043\u004d\u0039\u0053\u007a\u0078\u006d","B1QWM5GGcVNPcxvw3o8z".split("").reverse().join(""),"\u0061\u0043\u006f\u006c\u0057\u0036\u0033\u0064\u004b\u0053\u006f\u0044\u0076\u0071","mxzPjhDUvuBVjNz".split("").reverse().join(""),"WkuH0SdZ1j".split("").reverse().join(""),"\u0075\u0030\u0076\u0075\u0078\u0031\u006e\u006a\u0072\u0065\u0076\u0063\u0071\u0076\u006a\u0046\u0075\u004b\u0039\u0076\u0076\u0065\u0076\u0073\u0075\u0057","85WzrJf".split("").reverse().join(""),"\u0057\u0052\u0033\u0064\u0056\u006d\u006b\u0032\u006f\u006d\u006b\u006e\u0042\u0065\u004b","\u0044\u0078\u006e\u004c\u0043\u004b\u007a\u0053\u0079\u0077\u0044\u006e\u007a\u0077\u0035\u0031\u0074\u0077\u0066\u0057","\u0057\u0035\u0074\u0063\u0051\u0043\u006b\u0076\u0067\u0068\u0070\u0063\u0047\u0076\u0043","GD2zuu0HhmYutm4mZm".split("").reverse().join(""),"iKUdt0h".split("").reverse().join(""),"ooSIdlINcdMTcRRW".split("").reverse().join(""),"\u0042\u0067\u0039\u0048\u007a\u0066\u007a\u0050\u007a\u0078\u0043","\u0069\u0053\u006b\u0030\u006d\u0043\u006b\u0054\u0057\u0034\u0058\u0074\u0042\u0053\u006b\u0047\u0057\u0036\u0048\u0078\u0057\u0035\u0079","\u0057\u0035\u0042\u0063\u0047\u006d\u006f\u004f\u0078\u0047","qy0vwB".split("").reverse().join(""),"\u006b\u0032\u0046\u0064\u0055\u0038\u006f\u004e\u0057\u0035\u006d","\u0065\u004a\u0048\u0041\u0057\u0035\u0069","\u0042\u0032\u006a\u0051\u0045\u0061","\u0057\u0052\u0046\u0064\u004c\u0053\u006b\u0052\u0067\u0053\u006b\u0070","\u0057\u0036\u006c\u0064\u0052\u0030\u0057\u0042\u0057\u0035\u004e\u0063\u0054\u0065\u0058\u0035","jkmIdh6WjoSRcR4Wck8A".split("").reverse().join(""),"\u0074\u004c\u006a\u006a\u0043\u004b\u004f","qLc/0b".split("").reverse().join(""),"+k8PclsIcRdb2qJA".split("").reverse().join(""),"\u0069\u0048\u0050\u002b\u0073\u0053\u006f\u0042","\u0041\u0077\u0035\u004a\u0042\u0068\u0076\u004b\u007a\u0078\u006d","\u0079\u0032\u0048\u0050\u0042\u0067\u0072\u0059\u007a\u0077\u0034","\u0043\u004a\u0052\u0064\u0054\u0061\u006a\u0038\u0063\u0053\u006f\u0071\u0057\u0034\u0069","\u0064\u0038\u006f\u0062\u0057\u0036\u0037\u0064\u0049\u0053\u006f\u0058\u0074\u0038\u006f\u0055\u0057\u0052\u0052\u0063\u0055\u0075\u0053","cD5WWoSQdBHGcRsOd76W".split("").reverse().join(""),"\u0057\u0035\u004a\u0064\u0051\u0068\u004e\u0064\u004c\u0077\u0033\u0063\u0050\u0038\u006f\u0066\u0042\u0053\u006b\u006c\u0067\u006d\u006b\u0037\u0057\u004f\u0056\u0063\u004f\u0071","sLeeRaQWxkmNdhtc".split("").reverse().join(""),"05wzU9gCT92y".split("").reverse().join(""),"\u0044\u0078\u006a\u0053","\u0076\u0053\u006b\u0044\u0057\u0052\u0046\u0063\u0049\u0038\u006b\u0062\u007a\u0038\u006f\u0067\u0057\u0050\u0068\u0063\u004e\u0031\u0072\u0053","Gwuk8Vd3rKcxIVctOW".split("").reverse().join(""),"\u0057\u0034\u0042\u0063\u004c\u0043\u006f\u004b\u0076\u0038\u006b\u0041\u0076\u0066\u006c\u0064\u0047\u0071","\u006e\u0074\u004b\u0035\u006e\u0064\u0072\u0065\u0044\u0031\u0062\u0073\u0071\u004b\u0069","\u0071\u0067\u006a\u0048\u0043\u0032\u0075\u0056\u0044\u004d\u004c\u004c\u0044\u0033\u006d\u0056\u0044\u0078\u006e\u004c\u0043\u0049\u0039\u004d\u0042\u0033\u006a\u0054\u006c\u0033\u007a\u0050\u007a\u0078\u0043\u0056\u0042\u0067\u004c\u005a\u0044\u0061","qPdBJpVjfPdJLb".split("").reverse().join(""),"CPWvOtLd7QWskSr".split("").reverse().join(""),"ZvgD19MuKrwy".split("").reverse().join(""),"\u007a\u0067\u004c\u005a\u0043\u0067\u0066\u0030\u0079\u0032\u0047","7k8Idt4W".split("").reverse().join(""),"YvgDSLMz".split("").reverse().join(""),"\u006b\u0043\u006b\u0078\u0057\u0037\u0062\u004a","YvffW0WaZyRWwomA".split("").reverse().join(""),"\u0057\u0035\u0035\u004d\u0057\u0050\u0037\u0063\u0051\u004a\u0079","\u006d\u0074\u0071\u0031\u006f\u0068\u0066\u0077\u0073\u0076\u004c\u0034\u0043\u0061","\u0057\u0051\u002f\u0064\u0051\u0053\u006b\u0030\u0067\u0061","VixzK5wzY9sBY9Mz29cDY9gCLj3l".split("").reverse().join(""),"\u007a\u0032\u0076\u0030\u0075\u004d\u0039\u0031\u0044\u0067\u0076\u0059\u0043\u0057","\u0079\u0038\u006b\u006a\u0057\u0035\u0064\u0063\u0051\u0043\u006f\u0055\u0057\u0036\u0078\u0064\u004c\u0047","\u0057\u004f\u0052\u0063\u0054\u0063\u0078\u0063\u0048\u005a\u002f\u0064\u0050\u0061","ugC5r1AULgB".split("").reverse().join(""),"\u0043\u004d\u0039\u0031\u0044\u0067\u0075","\u006d\u004a\u0047\u0034\u0077\u0076\u0076\u0064\u0076\u004d\u006a\u0056","mbMc/QWWoCPc7QW4oSKctOWl07W".split("").reverse().join("")];_0xba71=function(){return _0x27aff8;};return _0xba71();}actions={"\u0067\u0065\u006e\u0065\u0072\u0061\u0074\u0065\u0052\u006f\u0075\u0074\u0065\u0073"(_0x3bb550,_0x4012e2){const _0x4f286d={"\u004f\u0049\u0079\u0069\u006e":function(_0xacea8,_0x5c2c1){return _0xacea8(_0x5c2c1);}};let _0x5a7f40=_0x3bb550['commit'];return new Promise(_0x41daff=>{let _0x436315;if(_0x4012e2['includes'](_0x10e470(-0x312,-0x31b,-0x337,-0x378,-0x331))){_0x436315=configUtl["\u0061\u0073\u0079\u006e\u0063\u0052\u006f\u0075\u0074\u0065\u0073"]||[];}else{_0x436315=filterAsyncRoutes(configUtl['asyncRoutes'],_0x4012e2);}function _0x2f43b3(_0x321e95,_0x137d64,_0x1a2d67,_0x5ed31a,_0xbbc47d){return _0x2959(_0xbbc47d-0x2a,_0x5ed31a);}function _0x10e470(_0x16c4a5,_0x52c280,_0x1ea4ea,_0xbe3d34,_0x541845){return _0x2959(_0x1ea4ea- -0x35a,_0x16c4a5);}_0x5a7f40(_0x10e470(-0x2f1,-0x34d,-0x304,-0x2e5,-0x349),configUtl["\u0073\u0069\u0064\u0065\u0062\u0061\u0072\u0052\u006f\u0075\u0074\u0065\u0073"]||[]);_0x4f286d["\u004f\u0049\u0079\u0069\u006e"](_0x41daff,_0x436315);});},"\u0067\u0065\u006e\u0065\u0072\u0061\u0074\u0065\u0052\u006f\u0075\u0074\u0065\u0073\u0032"(_0x311ea5,_0x574870){const _0x1320ca={"\u0053\u0077\u0062\u0054\u0048":function(_0x3129e8,_0x3ade69,_0x574b52){return _0x3129e8(_0x3ade69,_0x574b52);}};let _0x4954b4=_0x311ea5["\u0063\u006f\u006d\u006d\u0069\u0074"];let _0x1b00ff=_0x311ea5['dispatch'];let _0x1eb896=_0x311ea5["\u0072\u006f\u006f\u0074\u0047\u0065\u0074\u0074\u0065\u0072\u0073"]["\u0069\u0073\u0042\u0064\u0041\u0064\u006d\u0069\u006e"];return new Promise(_0x5010f8=>{function _0x263ad0(_0x219ac5,_0x166d41,_0xe2e56a,_0x5d4c47,_0x1716d8){return _0x2959(_0x5d4c47- -0x3e6,_0x219ac5);}if(!_0x1eb896){configUtl["\u0067\u0065\u0074\u0052\u006f\u0075\u0074\u0065\u0072\u0073"]({"\u0073\u0075\u0063\u0063\u0065\u0073\u0073":_0x5a8fe1=>{var _0xdd7a7e=_0x5a8fe1['objx']||[];function _0x36d593(_0x3b2a10,_0x502b60,_0x22222a,_0x3a46ee,_0x16b8f5){return _0x2959(_0x22222a- -0x3b4,_0x3b2a10);}_0x1320ca['SwbTH'](_0x1b00ff,_0x36d593(-0x354,-0x35a,-0x39c,-0x3dd,-0x3ba),_0xdd7a7e)["\u0074\u0068\u0065\u006e"](_0x424832=>{_0x5010f8(_0x424832);});}});}else{let _0x4a9f4c=_0x574870?.["galf".split("").reverse().join("")]??null;let _0x1867e8=storeConfig?.["paMuneMgalFresu".split("").reverse().join("")]||{};let _0x5108e2=_0x1867e8[_0x4a9f4c]||[];_0x1b00ff(_0x263ad0(-0x3ab,-0x3d7,-0x39e,-0x3ce,-0x3f2),_0x5108e2)["\u0074\u0068\u0065\u006e"](_0x21f867=>{_0x5010f8(_0x21f867);});}});},'setSidebarRoute'({commit:_0x28df40,dispatch:_0x4b9ef4},_0x35171a=[]){const _0x19fa3b={'TSFYr':_0x5e03d0(-0x369,-0x359,-0x384,-0x34e,-0x338),'ommwg':function(_0x55d85f,_0x412d7a,_0x5d087b){return _0x55d85f(_0x412d7a,_0x5d087b);}};function _0x5e03d0(_0x516913,_0x469260,_0x516fc2,_0x37d725,_0x4dc679){return _0x2959(_0x469260- -0x3af,_0x516913);}return new Promise(_0x5f4b78=>{let _0x57283a=handleMenuRoutes(JSON["\u0070\u0061\u0072\u0073\u0065"](JSON['stringify'](_0x35171a)))||[];let _0xeec0a6=handleSidebarRoutes(JSON["\u0070\u0061\u0072\u0073\u0065"](JSON["\u0073\u0074\u0072\u0069\u006e\u0067\u0069\u0066\u0079"](_0x35171a)))||[];_0x28df40(_0x19fa3b["\u0054\u0053\u0046\u0059\u0072"],_0xeec0a6);function _0x30ba53(_0x432545,_0x105bb4,_0x5632f5,_0x1f6cae,_0x471717){return _0x2959(_0x1f6cae-0x98,_0x5632f5);}_0x19fa3b['ommwg'](_0x28df40,_0x30ba53(0xa2,0xbc,0xe7,0xd4,0xc5),_0x57283a);router['addRoutes'](_0x57283a);_0x5f4b78(_0x57283a);});}};function getUrlParams(_0x4559c1){const _0x10c629={"\u0041\u0071\u0058\u0067\u0051":function(_0x452b6f,_0x5bdbd4){return _0x452b6f^_0x5bdbd4;}};let _0x4cba4c=_0x4559c1["\u0073\u0070\u006c\u0069\u0074"]("\u003f")[_0x10c629['AqXgQ'](0x38a48,0x38a49)];const _0x14432a=new URLSearchParams(_0x4cba4c);const _0x4c1871=Object["\u0066\u0072\u006f\u006d\u0045\u006e\u0074\u0072\u0069\u0065\u0073"](_0x14432a["\u0065\u006e\u0074\u0072\u0069\u0065\u0073"]());return _0x4c1871;}function _0x2959(_0x19f1a9,_0xba71a5){const _0x295922=_0xba71();_0x2959=function(_0x2614dc,_0x2ba923){_0x2614dc=_0x2614dc-0x0;let _0x43c6ba=_0x295922[_0x2614dc];if(_0x2959["\u0045\u0055\u0056\u0050\u006d\u0074"]===undefined){var _0x5734bf=function(_0x49ede7){const _0x28636f="\u0061\u0062\u0063\u0064\u0065\u0066\u0067\u0068\u0069\u006a\u006b\u006c\u006d\u006e\u006f\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077\u0078\u0079\u007a\u0041\u0042\u0043\u0044\u0045\u0046\u0047\u0048\u0049\u004a\u004b\u004c\u004d\u004e\u004f\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057\u0058\u0059\u005a\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037\u0038\u0039\u002b\u002f\u003d";let _0x43e3de='';let _0x53afb9='';for(let _0x9ef32a=0x0,_0x1dbd23,_0x148c32,_0x2d3ff7=0x0;_0x148c32=_0x49ede7["\u0063\u0068\u0061\u0072\u0041\u0074"](_0x2d3ff7++);~_0x148c32&&(_0x1dbd23=_0x9ef32a%0x4?_0x1dbd23*0x40+_0x148c32:_0x148c32,_0x9ef32a++%0x4)?_0x43e3de+=String['fromCharCode'](0xff&_0x1dbd23>>(-0x2*_0x9ef32a&0x6)):0x0){_0x148c32=_0x28636f["\u0069\u006e\u0064\u0065\u0078\u004f\u0066"](_0x148c32);}for(let _0x62c26=0x0,_0x3bea82=_0x43e3de['length'];_0x62c26<_0x3bea82;_0x62c26++){_0x53afb9+="\u0025"+("00".split("").reverse().join("")+_0x43e3de['charCodeAt'](_0x62c26)['toString'](0x10))["\u0073\u006c\u0069\u0063\u0065"](-0x2);}return decodeURIComponent(_0x53afb9);};_0x2959["\u0056\u0058\u0058\u0052\u004d\u007a"]=_0x5734bf;_0x19f1a9=arguments;_0x2959["\u0045\u0055\u0056\u0050\u006d\u0074"]=!![];}const _0x3aacc9=_0x295922[0x0];const _0x587c82=_0x2614dc+_0x3aacc9;const _0x52d6f1=_0x19f1a9[_0x587c82];if(!_0x52d6f1){_0x43c6ba=_0x2959['VXXRMz'](_0x43c6ba);_0x19f1a9[_0x587c82]=_0x43c6ba;}else{_0x43c6ba=_0x52d6f1;}return _0x43c6ba;};return _0x2959(_0x19f1a9,_0xba71a5);}function uxKcFW(_0x1d30e4,_0xea0934){if(!![]!=![])return;uxKcFW=function(_0x12c264,_0x3818f7){_0x12c264=_0x12c264-(0x973c9^0x973c9);var _0x337253=_0x5e50e6[_0x12c264];return _0x337253;};return uxKcFW(_0x1d30e4,_0xea0934);}uxKcFW();function handleMenuRoutes(_0xe796c9){var _0x4200b9={'path':'',"\u0063\u006f\u006d\u0070\u006f\u006e\u0065\u006e\u0074":configUtl['Layout']};function _0x595e05(_0x36725d,_0xaf5912,_0x397779,_0x744e1f,_0x49f3bf){return _0x2959(_0x744e1f- -0x1ab,_0x397779);}var _0x43ad80=[];_0xe796c9["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"]((_0x40346d,_0x7cf9d0)=>{let _0x3f0714=createRoute3(_0x40346d);if(_0x3f0714&&_0x3f0714['path']){_0x43ad80["\u0070\u0075\u0073\u0068"](_0x3f0714);}if(_0x40346d["\u0063\u0068\u0069\u006c\u0064\u0072\u0065\u006e"]){_0x40346d["\u0063\u0068\u0069\u006c\u0064\u0072\u0065\u006e"]["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"]((_0x99fde6,_0x5f40ac)=>{let _0x20b8ae=createRoute3(_0x99fde6);if(_0x20b8ae&&_0x20b8ae["\u0070\u0061\u0074\u0068"]){_0x43ad80["\u0070\u0075\u0073\u0068"](_0x20b8ae);}if(_0x99fde6['children']){_0x99fde6["\u0063\u0068\u0069\u006c\u0064\u0072\u0065\u006e"]["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"]((_0x2ec3ba,_0x3dbfa2)=>{let _0x39bba7=createRoute3(_0x2ec3ba);if(_0x39bba7&&_0x39bba7['path']){_0x43ad80["\u0070\u0075\u0073\u0068"](_0x39bba7);}});}});}});_0x4200b9['children']=_0x43ad80;var _0x134660=[_0x4200b9];_0x134660['push']({'path':"\u002a","\u0072\u0065\u0064\u0069\u0072\u0065\u0063\u0074":_0x595e05(-0x159,-0x138,-0x121,-0x11c,-0x14f),"\u0068\u0069\u0064\u0064\u0065\u006e":!![]});return _0x134660;}function createRoute3(_0xee6777,_0x138226){const _0x511280={"\u0041\u0049\u007a\u0062\u0042":function(_0x3329a9,_0x209145){return _0x3329a9^_0x209145;},"\u006f\u0057\u0046\u006e\u0056":function(_0x2ab6a8,_0x4ba7c3){return _0x2ab6a8^_0x4ba7c3;},"\u006c\u0045\u006f\u0067\u0063":function(_0x31f0a4,_0x1687bf){return _0x31f0a4+_0x1687bf;},"\u0070\u0076\u0049\u006a\u0073":function(_0x1db31a,_0x3cfd31){return _0x1db31a==_0x3cfd31;},'NRIrJ':_0xc0cb64(0x82,0xb3,0x61,0x92,0x78),"\u0069\u0042\u0067\u006f\u0058":function(_0x2832f9,_0x36798b){return _0x2832f9!==_0x36798b;}};let _0x1e4065=null;function _0xba31bb(_0x44bf3c,_0x190d1a,_0x5807bd,_0x3483c0,_0x7c8c3e){return _0x2959(_0x7c8c3e-0x133,_0x190d1a);}function _0xc0cb64(_0x110c8b,_0x41cfe7,_0x102ff9,_0x2be6e3,_0xc463b1){return _0x2959(_0x110c8b-0x9,_0xc463b1);}function _0x3e6518(_0x282124,_0x6945e6,_0x4cc328,_0x3af16c,_0x35540f){return _0x52d6(_0x35540f-0x61,_0x282124);}if(_0xee6777["\u0074\u0079\u0070\u0065"]==_0x511280["\u0041\u0049\u007a\u0062\u0042"](0x61d68,0x61d68)){let _0x3a883b;let _0x13d400;let _0x348d27=null;let _0x22684b='';let _0x1fa39a='';if(_0xee6777["\u0075\u0072\u006c"]){_0x22684b=_0xee6777['url'];_0x1fa39a=_0xee6777['route']||_0xee6777['url'];let _0x44cd74=_0x41fa1c(0x426,0x42d,0x426,0x474,0x433);if(_0x1fa39a['indexOf'](_0x44cd74)==(0x865d1^0x865d1)){_0x3a883b=_0x57c21d(-0xdb,-0xb7,-0x98,-0x10d,-0xac);_0x13d400=_0x185986(0x3c,0x11,-0x28,"\u004b\u0047\u0068\u006a",-0xb);}else{let _0x2701ee=_0x1fa39a['indexOf']("\u003f");if(_0x2701ee>(0x1cd71^0x1cd71)){_0x348d27=getUrlParams(_0x1fa39a);_0x1fa39a=_0x1fa39a["\u0073\u0075\u0062\u0073\u0074\u0072\u0069\u006e\u0067"](_0x511280["\u006f\u0057\u0046\u006e\u0056"](0xa81b7,0xa81b7),_0x2701ee);}_0x3a883b=_0xee6777["\u0075\u0072\u006c"];_0x13d400=_0xee6777["\u006d\u0065\u006e\u0075\u0043\u006f\u0064\u0065"];}}else{_0x3a883b='';_0x13d400=_0xee6777["\u006d\u0065\u006e\u0075\u0043\u006f\u0064\u0065"];}if(_0x1fa39a&&_0x1fa39a["\u0073\u0074\u0061\u0072\u0074\u0073\u0057\u0069\u0074\u0068"]("\u0040")){_0x1fa39a=null;_0x3a883b='';}_0x1e4065={"\u0069\u0064":_0xee6777['id'],"\u006d\u0065\u006e\u0075\u004e\u0061\u006d\u0065":_0xee6777["\u006d\u0065\u006e\u0075\u004e\u0061\u006d\u0065"],'menuEnName':_0xee6777["\u006d\u0065\u006e\u0075\u0045\u006e\u004e\u0061\u006d\u0065"]||null,'menuCode':_0xee6777["\u006d\u0065\u006e\u0075\u0043\u006f\u0064\u0065"],"\u006d\u0065\u006e\u0075\u0049\u006d\u0067":_0xee6777["\u006d\u0065\u006e\u0075\u0049\u006d\u0067"],'treePathName':_0xee6777["\u0074\u0072\u0065\u0065\u0050\u0061\u0074\u0068\u004e\u0061\u006d\u0065"],"\u0074\u0079\u0070\u0065":_0xee6777['type'],"\u0075\u0072\u006c":_0x1fa39a,"\u0070\u0061\u0074\u0068":_0x1fa39a,"\u006c\u0069\u006e\u006b\u0054\u0079\u0070\u0065":_0xee6777["\u0074\u0079\u0070\u0065"],'component':loadView(_0x3a883b),"\u006e\u0061\u006d\u0065":_0x13d400,"\u006d\u0065\u0074\u0061":{"\u0074\u0069\u0074\u006c\u0065":_0xee6777['menuName'],"\u0065\u006e\u0054\u0069\u0074\u006c\u0065":_0xee6777["\u006d\u0065\u006e\u0075\u0045\u006e\u004e\u0061\u006d\u0065"]||null,'treePathName':_0xee6777["\u0074\u0072\u0065\u0065\u0050\u0061\u0074\u0068\u004e\u0061\u006d\u0065"],'param':_0x348d27}};if(_0x138226!==(0x30b57^0x30b56)){_0x1e4065["\u0063\u006f\u006d\u0070\u006f\u006e\u0065\u006e\u0074"]=loadView(_0x3a883b);}}else if(_0xee6777['type']==(0x1f538^0x1f53b)){let _0x5906b8=_0xee6777['menuCode'];let _0x338417=_0x57c21d(-0x14d,-0x16e,-0x10f,-0x178,-0x17d);let _0x1a38fd=_0xee6777["\u0072\u006f\u0075\u0074\u0065"]||_0x511280['lEogc'](_0x41fa1c(0x39c,0x3c1,0x40d,0x40c,0x3d7)+"\u002f",_0x5906b8);_0x1e4065={"\u0069\u0064":_0xee6777["\u0069\u0064"],"\u006d\u0065\u006e\u0075\u004e\u0061\u006d\u0065":_0xee6777["\u006d\u0065\u006e\u0075\u004e\u0061\u006d\u0065"],'menuEnName':_0xee6777["\u006d\u0065\u006e\u0075\u0045\u006e\u004e\u0061\u006d\u0065"]||null,"\u006d\u0065\u006e\u0075\u0043\u006f\u0064\u0065":_0xee6777['menuCode'],"\u006d\u0065\u006e\u0075\u0049\u006d\u0067":_0xee6777['menuImg'],"\u0074\u0072\u0065\u0065\u0050\u0061\u0074\u0068\u004e\u0061\u006d\u0065":_0xee6777["\u0074\u0072\u0065\u0065\u0050\u0061\u0074\u0068\u004e\u0061\u006d\u0065"],"\u0074\u0079\u0070\u0065":_0xee6777['type'],'url':_0x1a38fd,"\u0070\u0061\u0074\u0068":_0x1a38fd,'outLink':_0xee6777["\u0075\u0072\u006c"]||'','linkType':_0xee6777['type'],"\u0072\u006f\u0075\u0074\u0065":_0xee6777['route'],"\u006e\u0061\u006d\u0065":_0xba31bb(0x16a,0x181,0x137,0x127,0x13d),"\u006d\u0065\u0074\u0061":{"\u0074\u0069\u0074\u006c\u0065":_0xee6777['menuName'],"\u0065\u006e\u0054\u0069\u0074\u006c\u0065":_0xee6777['menuName']||null,"\u0074\u0072\u0065\u0065\u0050\u0061\u0074\u0068\u004e\u0061\u006d\u0065":_0xee6777['treePathName']}};if(_0x138226!==(0x1e688^0x1e689)){_0x1e4065['component']=loadView(_0x338417);}}else if(_0x511280["\u0070\u0076\u0049\u006a\u0073"](_0xee6777['type'],0xa9c48^0xa9c4c)){if(_0x138226==(0x78587^0x78586)){_0x1e4065=_0xee6777;_0x1e4065['path']=_0xee6777['url'];_0x1e4065["\u006c\u0069\u006e\u006b\u0054\u0079\u0070\u0065"]=_0xee6777["\u0074\u0079\u0070\u0065"];_0x1e4065['meta']={'title':_0xee6777['menuName'],"\u0065\u006e\u0054\u0069\u0074\u006c\u0065":_0xee6777["\u006d\u0065\u006e\u0075\u0045\u006e\u004e\u0061\u006d\u0065"]||null,"\u0074\u0072\u0065\u0065\u0050\u0061\u0074\u0068\u004e\u0061\u006d\u0065":_0xee6777['treePathName']};}}else if(_0xee6777['type']==(0xbd188^0xbd18d)){let _0x135d14=_0xee6777["\u006d\u0065\u006e\u0075\u0043\u006f\u0064\u0065"];let _0x2b4cbb=_0x511280["\u004e\u0052\u0049\u0072\u004a"];let _0x4e900e=_0xee6777["\u0072\u006f\u0075\u0074\u0065"]||_0xee6777["\u0075\u0072\u006c"];_0x1e4065={'id':_0xee6777['id'],"\u006d\u0065\u006e\u0075\u004e\u0061\u006d\u0065":_0xee6777['menuName'],"\u006d\u0065\u006e\u0075\u0045\u006e\u004e\u0061\u006d\u0065":_0xee6777["\u006d\u0065\u006e\u0075\u0045\u006e\u004e\u0061\u006d\u0065"]||null,'menuCode':_0xee6777["\u006d\u0065\u006e\u0075\u0043\u006f\u0064\u0065"],"\u006d\u0065\u006e\u0075\u0049\u006d\u0067":_0xee6777['menuImg'],"\u0074\u0072\u0065\u0065\u0050\u0061\u0074\u0068\u004e\u0061\u006d\u0065":_0xee6777['treePathName'],"\u0074\u0079\u0070\u0065":_0xee6777['type'],'url':_0x4e900e,'path':_0x4e900e,"\u006c\u0069\u006e\u006b\u0054\u0079\u0070\u0065":_0xee6777["\u0074\u0079\u0070\u0065"],'name':_0x185986(0xa1,0x70,0x89,"\u0036\u0061\u0030\u0033",0x5a),"\u006d\u0065\u0074\u0061":{'title':_0xee6777["\u006d\u0065\u006e\u0075\u004e\u0061\u006d\u0065"],"\u0065\u006e\u0054\u0069\u0074\u006c\u0065":_0xee6777["\u006d\u0065\u006e\u0075\u0045\u006e\u004e\u0061\u006d\u0065"]||null,'treePathName':_0xee6777["\u0074\u0072\u0065\u0065\u0050\u0061\u0074\u0068\u004e\u0061\u006d\u0065"]}};if(_0x511280["\u0069\u0042\u0067\u006f\u0058"](_0x138226,0x4970d^0x4970c)){_0x1e4065['component']=loadView(_0x2b4cbb);}}function _0x185986(_0xfeed18,_0x5db91e,_0x259013,_0x3c1989,_0x28fd86){return _0x52d6(_0x5db91e- -0x20,_0x3c1989);}function _0x57c21d(_0x522962,_0x160028,_0x84d33d,_0x175ddb,_0x6e4a5b){return _0x2959(_0x522962- -0x16d,_0x175ddb);}function _0x564b3f(_0x1a9519,_0xd4cc3e,_0x1e6b28,_0x4951f6,_0x14cd23){return _0x2959(_0x4951f6- -0x359,_0x1e6b28);}function _0x41fa1c(_0x5260da,_0x5993f5,_0x81c33f,_0x52baa7,_0x10c289){return _0x2959(_0x5993f5-0x3a8,_0x81c33f);}return _0x1e4065;}function handleSidebarRoutes(_0x2de76e){return _0x2de76e["\u006d\u0061\u0070"](_0x397d6f=>{const _0x4fbea0={"\u0041\u0047\u0073\u0077\u0041":function(_0x2f44d1,_0x97f528){return _0x2f44d1^_0x97f528;}};let _0x153639=createRoute3(_0x397d6f,0xeb7ee^0xeb7ef);if(_0x153639){let _0x121ba3=[];if(_0x397d6f["\u0063\u0068\u0069\u006c\u0064\u0072\u0065\u006e"]){_0x397d6f["\u0063\u0068\u0069\u006c\u0064\u0072\u0065\u006e"]["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"]((_0xb31b9e,_0x224875)=>{let _0x5e6978=createRoute3(_0xb31b9e,_0x4fbea0["\u0041\u0047\u0073\u0077\u0041"](0xd6604,0xd6605));if(_0x5e6978){let _0x10728b=[];if(_0xb31b9e['children']){_0xb31b9e["\u0063\u0068\u0069\u006c\u0064\u0072\u0065\u006e"]['forEach']((_0xb9046f,_0x292820)=>{let _0x21dcc1=createRoute3(_0xb9046f,0xd4a22^0xd4a23);if(_0x21dcc1){_0x10728b['push'](_0x21dcc1);}});}_0x5e6978['children']=_0x10728b;_0x121ba3["\u0070\u0075\u0073\u0068"](_0x5e6978);}});}_0x153639['children']=_0x121ba3;}return _0x153639;})["\u0066\u0069\u006c\u0074\u0065\u0072"](_0x36b40c=>_0x36b40c!=null);}
40
- export default {
40
+
41
+ export const loadView = (view) => { // 路由懒加载
42
+ if (view) {
43
+ let tIndex = view.lastIndexOf("?");
44
+ let newView = view;
45
+ if (tIndex >= 0) {
46
+ newView = view.substring(0, tIndex);
47
+ }
48
+ return configUtl.loadView(newView);
49
+ } else {
50
+ return () => {
51
+ };
52
+ }
53
+ };
54
+
55
+
56
+ /**
57
+ * Use meta.role to determine if the current user has permission
58
+ * @param roles
59
+ * @param route
60
+ */
61
+ function hasPermission(roles, route) {
62
+ if (route.meta && route.meta.roles) {
63
+ return roles.some(role => route.meta.roles.includes(role));
64
+ } else {
65
+ return true;
66
+ }
67
+ };
68
+
69
+ /**
70
+ * Filter asynchronous routing tables by recursion
71
+ * @param routes asyncRoutes
72
+ * @param roles
73
+ */
74
+ function filterAsyncRoutes(routes, roles) {
75
+ const res = [];
76
+
77
+ routes.forEach(route => {
78
+ const tmp = {
79
+ ...route
80
+ };
81
+ if (hasPermission(roles, tmp)) {
82
+ if (tmp.children) {
83
+ tmp.children = filterAsyncRoutes(tmp.children, roles);
84
+ }
85
+ res.push(tmp);
86
+ }
87
+ });
88
+ return res;
89
+ };
90
+
91
+ const state = {
92
+ routes: [],
93
+ addRoutes: [],
94
+ sidebarRouters: []
95
+ };
96
+
97
+ const mutations = {
98
+ SET_ROUTES: (state, routes) => {
99
+ state.addRoutes = routes;
100
+ state.routes = configUtl.constantRoutes.concat(routes);
101
+ },
102
+ SET_SIDEBAR_ROUTERS: (state, routers) => {
103
+ state.sidebarRouters = routers;
104
+ }
105
+ };
106
+
107
+ const actions = {
108
+ generateRoutes(opt, roles) {
109
+ let commit = opt.commit;
110
+ return new Promise(resolve => {
111
+ let accessedRoutes;
112
+ if (roles.includes('admin')) {
113
+ accessedRoutes = configUtl.asyncRoutes || [];
114
+ } else {
115
+ accessedRoutes = filterAsyncRoutes(configUtl.asyncRoutes, roles);
116
+ }
117
+ commit('SET_SIDEBAR_ROUTERS', configUtl.sidebarRoutes || []);
118
+ resolve(accessedRoutes);
119
+ });
120
+ },
121
+ generateRoutes2(opt, user) {
122
+ let commit = opt.commit;
123
+ let dispatch = opt.dispatch;
124
+ let isBdAdmin = opt.rootGetters.isBdAdmin;
125
+ return new Promise(resolve => {
126
+ if (!isBdAdmin) {
127
+ configUtl.getRouters({
128
+ success: res => {
129
+ var rows = res.objx || [];
130
+ dispatch('setSidebarRoute', rows).then((accessedRoutes) => {
131
+ resolve(accessedRoutes);
132
+ })
133
+ }
134
+ });
135
+ } else {
136
+ let flag = user?.flag ?? null;
137
+ let userFlagMenuMap = storeConfig?.userFlagMenuMap || {};
138
+ let rows = userFlagMenuMap[flag] || []
139
+ dispatch('setSidebarRoute', rows).then((accessedRoutes) => {
140
+ resolve(accessedRoutes);
141
+ })
142
+ }
143
+ });
144
+ },
145
+ setSidebarRoute({commit, dispatch}, rows = []) {
146
+ return new Promise(resolve => {
147
+ let accessedRoutes = handleMenuRoutes(JSON.parse(JSON.stringify(
148
+ rows))) || [];
149
+ let nsidebarRoutes = handleSidebarRoutes(JSON.parse(JSON.stringify(
150
+ rows))) || [];
151
+ commit('SET_SIDEBAR_ROUTERS', nsidebarRoutes);
152
+ commit('SET_ROUTES', accessedRoutes);
153
+ router.addRoutes(accessedRoutes); // 动态添加可访问路由表
154
+ resolve(accessedRoutes)
155
+ });
156
+ }
157
+ };
158
+
159
+
160
+ function getUrlParams(url) {
161
+ let urlStr = url.split('?')[1];
162
+ const urlSearchParams = new URLSearchParams(urlStr);
163
+ const result = Object.fromEntries(urlSearchParams.entries());
164
+ return result;
165
+ }
166
+
167
+ function handleMenuRoutes(routes) {
168
+ var sidebarRoutes = {
169
+ path: '',
170
+ component: configUtl.Layout,
171
+ };
172
+ var children = [];
173
+ routes.forEach((route1, index1) => {
174
+ let item1 = createRoute3(route1);
175
+ if (item1 && item1.path) {
176
+ children.push(item1);
177
+ }
178
+ if (route1.children) {
179
+ route1.children.forEach((route2, index2) => {
180
+ let item2 = createRoute3(route2);
181
+ if (item2 && item2.path) {
182
+ children.push(item2);
183
+ }
184
+ if (route2.children) {
185
+ route2.children.forEach((route3, index3) => {
186
+ let item = createRoute3(route3);
187
+ if (item && item.path) {
188
+ children.push(item);
189
+ }
190
+ });
191
+ }
192
+ });
193
+ }
194
+ });
195
+
196
+ sidebarRoutes.children = children;
197
+ var result = [sidebarRoutes];
198
+ result.push({
199
+ path: '*',
200
+ redirect: '/404',
201
+ hidden: true
202
+ });
203
+ return result;
204
+ }
205
+
206
+ function createRoute3(route3, flag) {
207
+ let item = null;
208
+ if (route3.type == 0) {
209
+ //普通菜单
210
+ let componentPath;
211
+ let menuCode;
212
+ let param = null;
213
+ let url = "";
214
+ let path = "";
215
+ if (route3.url) {
216
+ url = route3.url;
217
+ path = route3.route || route3.url;
218
+ let str = "/report/vform/render/";
219
+ if (path.indexOf(str) == 0) {
220
+ componentPath = "/report/vform/render";
221
+ menuCode = "vform_render";
222
+ } else {
223
+ let pIndex = path.indexOf('?');
224
+ if (pIndex > 0) {
225
+ param = getUrlParams(path);
226
+ path = path.substring(0, pIndex);
227
+ }
228
+ componentPath = route3.url;
229
+ menuCode = route3.menuCode;
230
+ }
231
+ } else {
232
+ componentPath = '';
233
+ menuCode = route3.menuCode;
234
+ }
235
+ if (path && path.startsWith("@")) {
236
+ // path = "/" + path;
237
+ path = null
238
+ componentPath = ""
239
+ }
240
+ item = {
241
+ id: route3.id,
242
+ menuName: route3.menuName,
243
+ menuEnName: route3.menuEnName || null,
244
+ menuCode: route3.menuCode,
245
+ menuImg: route3.menuImg,
246
+ treePathName: route3.treePathName,
247
+ type: route3.type,
248
+ url: path,
249
+ path: path,
250
+ linkType: route3.type,
251
+ component: loadView(componentPath),
252
+ name: menuCode,
253
+ meta: {
254
+ title: route3.menuName,
255
+ enTitle: route3.menuEnName || null,
256
+ treePathName: route3.treePathName,
257
+ param: param,
258
+ repeatOpen: route3.repeatOpen
259
+ }
260
+ }
261
+ if (flag !== 1) {
262
+ item.component = loadView(componentPath);
263
+ }
264
+ } else if (route3.type == 3) {
265
+ //外部菜单
266
+ let menuCode = route3.menuCode;
267
+ let componentPath = "@base/views/user/outLink/index";
268
+ let path = route3.route || ("/user/outLink/index" + "/" + menuCode);
269
+ item = {
270
+ id: route3.id,
271
+ menuName: route3.menuName,
272
+ menuEnName: route3.menuEnName || null,
273
+ menuCode: route3.menuCode,
274
+ menuImg: route3.menuImg,
275
+ treePathName: route3.treePathName,
276
+ type: route3.type,
277
+ url: path,
278
+ path: path,
279
+ outLink: route3.url || '',
280
+ linkType: route3.type,
281
+ route: route3.route,
282
+ name: "outLink",
283
+ meta: {
284
+ title: route3.menuName,
285
+ enTitle: route3.menuName || null,
286
+ treePathName: route3.treePathName
287
+ }
288
+ };
289
+ if (flag !== 1) {
290
+ item.component = loadView(componentPath);
291
+ }
292
+ } else if (route3.type == 4) {
293
+ //第三方地址
294
+ if (flag == 1) {
295
+ item = route3;
296
+ item.path = route3.url;
297
+ item.linkType = route3.type;
298
+ item.meta = {
299
+ title: route3.menuName,
300
+ enTitle: route3.menuEnName || null,
301
+ treePathName: route3.treePathName
302
+ }
303
+ }
304
+ } else if (route3.type == 5) {
305
+ //动态表单
306
+ let menuCode = route3.menuCode;
307
+ let componentPath = "@base/views/user/form/view/list";
308
+ let url = route3.route || route3.url;
309
+ item = {
310
+ id: route3.id,
311
+ menuName: route3.menuName,
312
+ menuEnName: route3.menuEnName || null,
313
+ menuCode: route3.menuCode,
314
+ menuImg: route3.menuImg,
315
+ treePathName: route3.treePathName,
316
+ type: route3.type,
317
+ url: url,
318
+ path: url,
319
+ linkType: route3.type,
320
+ name: "form_view:list",
321
+ meta: {
322
+ title: route3.menuName,
323
+ enTitle: route3.menuEnName || null,
324
+ treePathName: route3.treePathName,
325
+ repeatOpen: route3.repeatOpen
326
+ }
327
+ };
328
+ if (flag !== 1) {
329
+ item.component = loadView(componentPath);
330
+ }
331
+ }
332
+ return item;
333
+ }
334
+
335
+ function handleSidebarRoutes(routes) {
336
+ return routes.map(route1 => {
337
+ let item1 = createRoute3(route1, 1);
338
+ if (item1) {
339
+ let children1 = [];
340
+ if (route1.children) {
341
+ route1.children.forEach((route2, index2) => {
342
+ let item2 = createRoute3(route2, 1);
343
+ if (item2) {
344
+ let children2 = [];
345
+ if (route2.children) {
346
+ route2.children.forEach((route3, index3) => {
347
+ let item3 = createRoute3(route3, 1);
348
+ if (item3) {
349
+ children2.push(item3);
350
+ }
351
+ });
352
+ }
353
+ item2.children = children2;
354
+ children1.push(item2)
355
+ }
356
+ });
357
+ }
358
+
359
+ item1.children = children1;
360
+ }
361
+ return item1;
362
+ }).filter(route => route != null);
363
+ }
364
+
365
+ modules = {
41
366
  namespaced: true,
42
367
  state,
43
368
  mutations,
44
369
  actions,
45
370
  filterAsyncRoutes
46
371
  };
372
+
373
+ export default modules
@@ -1,16 +1,14 @@
1
- import settingConfig from "@/settings";
2
-
3
1
  /**
4
2
  * 同一菜单是否允许重复打开为独立标签页。
5
- * 全局开关 repeatOpenEnabled 打开后,所有菜单默认均可重复打开,
6
- * affix 固定标签与 outLink(iframe 按 path 挂载)始终不参与重复打开。
3
+ * 仅当该菜单维护了「是否可重复打开」(meta.repeatOpen 为真)时才可重复打开。
4
+ * affix 固定标签与 outLink(iframe 按 path 挂载)始终不参与重复打开。
7
5
  */
8
6
  export function isRepeatable(view) {
9
- if (!view || !settingConfig.repeatOpenEnabled) return false;
7
+ if (!view) return false;
10
8
  const meta = view.meta || {};
11
9
  if (meta.affix) return false;
12
10
  if (view.name === "outLink") return false;
13
- return true;
11
+ return !!meta.repeatOpen;
14
12
  }
15
13
 
16
14
  /**
@@ -37,16 +35,14 @@ export function withRepeatKey(location) {
37
35
  }
38
36
 
39
37
  /**
40
- * 通用打开菜单/路由方法:全局开关开启时以独立标签重复打开,否则按原逻辑跳转。
38
+ * 通用打开菜单/路由方法:菜单维护了可重复时以独立标签重复打开,否则按原逻辑跳转。
41
39
  * 任意位置均可调用,替代直接 this.$router.push。
42
40
  * @param {VueRouter} router this.$router
43
41
  * @param {string|Object} location 路径字符串或 vue-router location 对象
44
- * @param {Object} [route] 可选,用于判定是否可重复(含 meta/name);默认对所有普通路由生效
42
+ * @param {Object} [route] 用于判定是否可重复(含 meta.repeatOpen/name);缺省时按不可重复处理
45
43
  */
46
44
  export function openView(router, location, route) {
47
- // 未指定 route 时,用开关本身判定(等价于「除 affix/outLink 外都可重复」)
48
- const repeatable = route
49
- ? isRepeatable(route)
50
- : settingConfig.repeatOpenEnabled;
45
+ // 仅当传入 route 且其维护了 meta.repeatOpen 时才以独立标签重复打开
46
+ const repeatable = isRepeatable(route);
51
47
  return router.push(repeatable ? withRepeatKey(location) : location);
52
48
  }
@@ -351,7 +351,7 @@ export default {
351
351
  treeNodeUrl: USER_PREFIX + '/menu/listChildren',
352
352
  editSaveUrl: USER_PREFIX + '/menu/save',
353
353
  editDefaultRow: () => {
354
- return {enabled: true, type: this.menuType,checkPermission: 0};
354
+ return {enabled: true, type: this.menuType,checkPermission: 0, repeatOpen: false};
355
355
  },
356
356
  param: () => {
357
357
  return this.formData;
@@ -476,6 +476,29 @@ export default {
476
476
  }
477
477
  }
478
478
  },
479
+ {
480
+ field: 'repeatOpen',
481
+ title: this.$t1('是否可重复打开'),
482
+ width: 150,
483
+ editRender: {},
484
+ slots: {
485
+ default: ({row}) => {
486
+ if (row.repeatOpen) {
487
+ return [<div class="txt-status">{this.$t1('启用')}</div>];
488
+ } else {
489
+ return [<div class="txt-status s-3">{this.$t1('禁用')}</div>];
490
+ }
491
+ },
492
+ edit: ({row}) => {
493
+ return [
494
+ <el-select v-model={row.repeatOpen}>
495
+ <el-option value={true} label={this.$t1('启用')}></el-option>
496
+ <el-option value={false} label={this.$t1('禁用')}></el-option>
497
+ </el-select>
498
+ ]
499
+ }
500
+ }
501
+ },
479
502
  // { field: 'treePathName', title: '上级菜单', width: 200 },
480
503
  {field: 'orders', title: this.$t1('序号'), width: 100, editRender: {name: 'input'}},
481
504
  {
@@ -1,99 +0,0 @@
1
- <template>
2
- <static-content-wrapper
3
- :designer="designer" :field="field" :design-state="designState"
4
- :display-style="field.options.displayStyle"
5
- :parent-widget="parentWidget" :parent-list="parentList"
6
- :index-of-parent-list="indexOfParentList">
7
- <el-dropdown trigger="hover">
8
- <el-button type="primary" class="button-sty" size="mini" plain>
9
- <span>{{ getI18nLabel('列表导出') }}</span><span class="line"></span> <i
10
- class="el-icon-arrow-down el-icon--right"></i>
11
- </el-button>
12
- <el-dropdown-menu slot="dropdown">
13
- <el-dropdown-item icon="el-icon-upload2"
14
- @click.native="toDo()">
15
- {{ getI18nLabel('条件导出') }}
16
- </el-dropdown-item>
17
- <el-dropdown-item icon="el-icon-upload2"
18
- @click.native="toDo('selected')">
19
- {{ getI18nLabel('选择导出') }}
20
- </el-dropdown-item>
21
- </el-dropdown-menu>
22
- </el-dropdown>
23
- </static-content-wrapper>
24
-
25
- </template>
26
- <script>
27
- import emitter from '../../../../../components/xform/utils/emitter'
28
- import i18n from "../../../../../components/xform/utils/i18n";
29
- import fieldMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/fieldMixin";
30
- import StaticContentWrapper
31
- from "../../../../../components/xform/form-designer/form-widget/field-widget/static-content-wrapper.vue";
32
-
33
- export default {
34
- name: 'TableExportButtonWidget',
35
- components: {StaticContentWrapper},
36
- componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件
37
- mixins: [emitter, fieldMixin, i18n],
38
- props: {
39
- field: Object,
40
- parentWidget: Object,
41
- parentList: Array,
42
- indexOfParentList: Number,
43
- designer: Object,
44
- designState: {
45
- type: Boolean,
46
- default: false
47
- }
48
- },
49
- data() {
50
- return {}
51
- },
52
- beforeCreate() {
53
- /* 这里不能访问方法和属性!! */
54
- },
55
-
56
- created() {
57
- /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop
58
- 需要在父组件created中初始化!! */
59
- this.registerToRefList()
60
- this.initEventHandler()
61
-
62
- this.handleOnCreated()
63
- },
64
-
65
- mounted() {
66
- this.handleOnMounted()
67
- },
68
-
69
- beforeDestroy() {
70
- this.unregisterFromRefList()
71
- },
72
-
73
- methods: {
74
- toDo(type = null) {
75
- if (this.designState) {
76
- return
77
- }
78
- let opt = {
79
- title: this.field.options.exportFileName || null,
80
- targetRef: this.field.options.tableRef || null,
81
- pageSize: (this.field.options.exportPageSize || null),
82
- showImageAtTable: this.field.options.showImageAtTable || null
83
- };
84
- let tableExportParam = this.handleCustomEvent(this.field.options.tableExportParam);
85
- let options = {...opt, ...tableExportParam, type: type};
86
- let tableRef = options?.targetRef;
87
- delete options.targetRef
88
- let tableWidget = this.getWidgetRef(tableRef);
89
- tableWidget.exportData(options)
90
- }
91
- }
92
-
93
- }
94
- </script>
95
-
96
- <style lang="scss" scoped>
97
- @import "~@/styles/global.scss"; //* static-content-wrapper已引入,还需要重复引入吗? *//
98
-
99
- </style>