vue2-client 1.5.21 → 1.5.22

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.
Files changed (100) hide show
  1. package/CHANGELOG.md +522 -519
  2. package/index.js +30 -30
  3. package/package.json +78 -78
  4. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +225 -225
  5. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +667 -667
  6. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +508 -508
  7. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +140 -140
  8. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +165 -165
  9. package/src/base-client/components/common/JSONToTree/jsontotree.vue +275 -275
  10. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  11. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +109 -109
  12. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  13. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +807 -807
  14. package/src/base-client/components/ticket/TicketDetailsView/index.md +29 -29
  15. package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +260 -260
  16. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
  17. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.md +29 -29
  18. package/src/base-client/plugins/GetLoginInfoService.js +179 -179
  19. package/src/base-client/plugins/PagedList.js +177 -177
  20. package/src/base-client/plugins/compatible/LoginServiceOA.js +20 -20
  21. package/src/base-client/plugins/i18n-extend.js +32 -32
  22. package/src/components/Ellipsis/Ellipsis.vue +65 -65
  23. package/src/components/Ellipsis/index.md +38 -38
  24. package/src/components/NumberInfo/index.md +43 -43
  25. package/src/components/STable/README.md +341 -341
  26. package/src/components/STable/index.js +318 -318
  27. package/src/components/Trend/index.md +45 -45
  28. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  29. package/src/components/checkbox/ImgCheckbox.vue +163 -163
  30. package/src/components/exception/ExceptionPage.vue +70 -70
  31. package/src/components/form/FormRow.vue +52 -52
  32. package/src/components/index.js +36 -36
  33. package/src/components/menu/SideMenu.vue +62 -62
  34. package/src/components/menu/menu.js +273 -273
  35. package/src/components/page/header/index.less +40 -40
  36. package/src/components/setting/Setting.vue +235 -235
  37. package/src/components/table/StandardTable.vue +141 -141
  38. package/src/components/table/advance/ActionColumns.vue +158 -158
  39. package/src/components/table/advance/SearchArea.vue +355 -355
  40. package/src/components/tool/AStepItem.vue +60 -60
  41. package/src/components/tool/AvatarList.vue +68 -68
  42. package/src/components/tool/Drawer.vue +142 -142
  43. package/src/components/tool/TagSelect.vue +83 -83
  44. package/src/components/transition/PageToggleTransition.vue +97 -97
  45. package/src/config/default/admin.config.js +18 -18
  46. package/src/config/default/setting.config.js +44 -44
  47. package/src/config/replacer/resolve.config.js +67 -67
  48. package/src/layouts/AdminLayout.vue +174 -174
  49. package/src/layouts/CommonLayout.vue +42 -42
  50. package/src/layouts/ComponentLayoutOne.vue +47 -47
  51. package/src/layouts/PageLayout.vue +151 -151
  52. package/src/layouts/SinglePageView.vue +111 -111
  53. package/src/layouts/footer/PageFooter.vue +49 -49
  54. package/src/layouts/header/AdminHeader.vue +104 -104
  55. package/src/layouts/header/HeaderAvatar.vue +64 -61
  56. package/src/layouts/header/HeaderNotice.vue +176 -176
  57. package/src/layouts/header/HeaderSearch.vue +67 -67
  58. package/src/layouts/header/InstitutionDetail.vue +181 -181
  59. package/src/layouts/header/index.less +92 -92
  60. package/src/layouts/tabs/TabsHead.vue +190 -190
  61. package/src/layouts/tabs/TabsView.vue +379 -379
  62. package/src/mock/goods/index.js +108 -108
  63. package/src/pages/exception/404.vue +25 -25
  64. package/src/pages/login/Login.vue +363 -363
  65. package/src/pages/report/ReportTable.js +124 -124
  66. package/src/pages/report/ReportTableHome.vue +28 -28
  67. package/src/pages/resourceManage/orgListManage.vue +98 -98
  68. package/src/pages/system/dictionary/index.vue +43 -43
  69. package/src/pages/system/file/index.vue +317 -317
  70. package/src/pages/system/monitor/loginInfor/index.vue +36 -36
  71. package/src/pages/system/monitor/operLog/index.vue +36 -36
  72. package/src/pages/system/queryParams/index.vue +43 -43
  73. package/src/pages/system/settings/index.vue +126 -0
  74. package/src/pages/system/settings/modifyPassword.vue +109 -0
  75. package/src/router/async/config.async.js +28 -27
  76. package/src/router/async/router.map.js +68 -68
  77. package/src/router/index.js +27 -27
  78. package/src/services/api/DictionaryDetailsViewApi.js +6 -6
  79. package/src/services/api/LogDetailsViewApi.js +10 -10
  80. package/src/services/api/QueryParamsDetailsViewApi.js +6 -6
  81. package/src/services/api/TicketDetailsViewApi.js +34 -34
  82. package/src/services/api/cas.js +79 -79
  83. package/src/services/api/commonTempTable.js +10 -10
  84. package/src/services/api/index.js +17 -17
  85. package/src/services/api/logininfor/index.js +6 -6
  86. package/src/services/api/manage.js +8 -8
  87. package/src/services/apiService.js +14 -13
  88. package/src/services/user.js +64 -53
  89. package/src/store/modules/index.js +4 -4
  90. package/src/theme/default/nprogress.less +76 -76
  91. package/src/theme/default/style.less +47 -47
  92. package/src/utils/colors.js +107 -107
  93. package/src/utils/excel/Blob.js +180 -180
  94. package/src/utils/excel/Export2Excel.js +141 -141
  95. package/src/utils/formatter.js +68 -68
  96. package/src/utils/i18n.js +80 -80
  97. package/src/utils/theme-color-replacer-extend.js +91 -91
  98. package/src/utils/themeUtil.js +100 -100
  99. package/src/utils/util.js +230 -230
  100. package/vue.config.js +106 -106
@@ -1,83 +1,83 @@
1
- <template>
2
- <div class="tag-select">
3
- <tag-select-option @click="toggleCheck">全部</tag-select-option>
4
- <slot></slot>
5
- <a v-show="showTrigger" ref="trigger" class="trigger" @click="toggle">展开<a-icon :type="collapsed ? 'down' : 'up'" style="margin-left: 5px"/></a>
6
- </div>
7
- </template>
8
-
9
- <script>
10
- import TagSelectOption from './TagSelectOption'
11
-
12
- export default {
13
- name: 'TagSelect',
14
- Option: TagSelectOption,
15
- components: { TagSelectOption },
16
- data () {
17
- return {
18
- showTrigger: false,
19
- collapsed: true,
20
- screenWidth: document.body.clientWidth,
21
- checkAll: false
22
- }
23
- },
24
- watch: {
25
- screenWidth: function () {
26
- this.showTrigger = this.needTrigger()
27
- },
28
- collapsed: function (val) {
29
- this.$el.style.maxHeight = val ? '39px' : '78px'
30
- }
31
- },
32
- mounted () {
33
- const _this = this
34
- // 此处延迟执行,是为解决mouted未完全完成情况下引发的trigger显示bug
35
- setTimeout(() => {
36
- _this.showTrigger = _this.needTrigger()
37
- _this.$refs.trigger.style.display = _this.showTrigger ? 'inline' : 'none'
38
- }, 1)
39
- window.onresize = () => {
40
- return (() => {
41
- window.screenWidth = document.body.clientWidth
42
- _this.screenWidth = window.screenWidth
43
- })()
44
- }
45
- },
46
- methods: {
47
- needTrigger () {
48
- return this.$el.clientHeight < this.$el.scrollHeight || this.$el.scrollHeight > 39
49
- },
50
- toggle () {
51
- this.collapsed = !this.collapsed
52
- },
53
- getAllTags () {
54
- return this.$children.filter((item) => {
55
- return item.isTagSelectOption
56
- })
57
- },
58
- toggleCheck () {
59
- this.checkAll = !this.checkAll
60
- const tagList = this.getAllTags()
61
- tagList.forEach((item) => {
62
- item.checked = this.checkAll
63
- })
64
- }
65
- }
66
- }
67
- </script>
68
-
69
- <style lang="less" scoped>
70
- .tag-select{
71
- user-select: none;
72
- position: relative;
73
- overflow: hidden;
74
- max-height: 39px;
75
- padding-right: 50px;
76
- display: inline-block;
77
- }
78
- .trigger{
79
- position: absolute;
80
- top: 0;
81
- right: 0;
82
- }
83
- </style>
1
+ <template>
2
+ <div class="tag-select">
3
+ <tag-select-option @click="toggleCheck">全部</tag-select-option>
4
+ <slot></slot>
5
+ <a v-show="showTrigger" ref="trigger" class="trigger" @click="toggle">展开<a-icon :type="collapsed ? 'down' : 'up'" style="margin-left: 5px"/></a>
6
+ </div>
7
+ </template>
8
+
9
+ <script>
10
+ import TagSelectOption from './TagSelectOption'
11
+
12
+ export default {
13
+ name: 'TagSelect',
14
+ Option: TagSelectOption,
15
+ components: { TagSelectOption },
16
+ data () {
17
+ return {
18
+ showTrigger: false,
19
+ collapsed: true,
20
+ screenWidth: document.body.clientWidth,
21
+ checkAll: false
22
+ }
23
+ },
24
+ watch: {
25
+ screenWidth: function () {
26
+ this.showTrigger = this.needTrigger()
27
+ },
28
+ collapsed: function (val) {
29
+ this.$el.style.maxHeight = val ? '39px' : '78px'
30
+ }
31
+ },
32
+ mounted () {
33
+ const _this = this
34
+ // 此处延迟执行,是为解决mouted未完全完成情况下引发的trigger显示bug
35
+ setTimeout(() => {
36
+ _this.showTrigger = _this.needTrigger()
37
+ _this.$refs.trigger.style.display = _this.showTrigger ? 'inline' : 'none'
38
+ }, 1)
39
+ window.onresize = () => {
40
+ return (() => {
41
+ window.screenWidth = document.body.clientWidth
42
+ _this.screenWidth = window.screenWidth
43
+ })()
44
+ }
45
+ },
46
+ methods: {
47
+ needTrigger () {
48
+ return this.$el.clientHeight < this.$el.scrollHeight || this.$el.scrollHeight > 39
49
+ },
50
+ toggle () {
51
+ this.collapsed = !this.collapsed
52
+ },
53
+ getAllTags () {
54
+ return this.$children.filter((item) => {
55
+ return item.isTagSelectOption
56
+ })
57
+ },
58
+ toggleCheck () {
59
+ this.checkAll = !this.checkAll
60
+ const tagList = this.getAllTags()
61
+ tagList.forEach((item) => {
62
+ item.checked = this.checkAll
63
+ })
64
+ }
65
+ }
66
+ }
67
+ </script>
68
+
69
+ <style lang="less" scoped>
70
+ .tag-select{
71
+ user-select: none;
72
+ position: relative;
73
+ overflow: hidden;
74
+ max-height: 39px;
75
+ padding-right: 50px;
76
+ display: inline-block;
77
+ }
78
+ .trigger{
79
+ position: absolute;
80
+ top: 0;
81
+ right: 0;
82
+ }
83
+ </style>
@@ -1,97 +1,97 @@
1
- <template>
2
- <transition
3
- v-if="!disabled"
4
- :enter-active-class="`animated ${enterAnimate} page-toggle-enter-active`"
5
- :leave-active-class="`animated ${leaveAnimate} page-toggle-leave-active`"
6
- >
7
- <slot></slot>
8
- </transition>
9
- <div v-else><slot></slot></div>
10
- </template>
11
-
12
- <script>
13
- import { preset as animates } from '@vue2-client/config/default/animate.config'
14
-
15
- export default {
16
- name: 'PageToggleTransition',
17
- props: {
18
- disabled: {
19
- type: Boolean,
20
- default: false
21
- },
22
- animate: {
23
- type: String,
24
- validator (value) {
25
- return animates.findIndex(item => item.name === value) !== -1
26
- },
27
- default: 'bounce'
28
- },
29
- // eslint-disable-next-line vue/require-default-prop
30
- direction: {
31
- type: String,
32
- validator (value) {
33
- return ['x', 'y', 'left', 'right', 'up', 'down', 'downLeft', 'upRight', 'downRight', 'upLeft', 'downBig',
34
- 'upBig', 'downLeft', 'downRight', 'topRight', 'bottomLeft', 'topLeft', 'bottomRight', 'default'].indexOf(value) > -1
35
- }
36
- },
37
- reverse: {
38
- type: Boolean,
39
- default: true
40
- }
41
- },
42
- computed: {
43
- enterAnimate () {
44
- return this.activeClass(false)
45
- },
46
- leaveAnimate () {
47
- return this.activeClass(true)
48
- }
49
- },
50
- methods: {
51
- activeClass (isLeave) {
52
- const animate = animates.find(item => this.animate === item.name)
53
- if (animate === undefined) {
54
- return ''
55
- }
56
- let direction = ''
57
- if (this.direction === undefined) {
58
- direction = animate.directions[0]
59
- } else {
60
- direction = animate.directions.find(item => item === this.direction)
61
- }
62
- direction = (direction === undefined || direction === 'default') ? '' : direction
63
- if (direction !== '') {
64
- direction = isLeave && this.reverse ? this.reversePosition(direction, animate.directions) : direction
65
- direction = direction[0].toUpperCase() + direction.substring(1)
66
- }
67
- const t = isLeave ? 'Out' : 'In'
68
- return animate.name + t + direction
69
- },
70
- reversePosition (direction, directions) {
71
- if (direction.length === 0 || direction === 'x' || direction === 'y') {
72
- return direction
73
- }
74
- let index = directions.indexOf(direction)
75
- index = (index % 2 === 1) ? index - 1 : index + 1
76
- return directions[index]
77
- }
78
- }
79
- }
80
- </script>
81
-
82
- <style lang="less">
83
- .page-toggle-enter-active{
84
- position: absolute !important;
85
- animation-duration: 0.8s !important;
86
- width: calc(100%) !important;
87
- }
88
- .page-toggle-leave-active{
89
- position: absolute !important;
90
- animation-duration: 0.8s !important;
91
- width: calc(100%) !important;
92
- }
93
- .page-toggle-enter{
94
- }
95
- .page-toggle-leave-to{
96
- }
97
- </style>
1
+ <template>
2
+ <transition
3
+ v-if="!disabled"
4
+ :enter-active-class="`animated ${enterAnimate} page-toggle-enter-active`"
5
+ :leave-active-class="`animated ${leaveAnimate} page-toggle-leave-active`"
6
+ >
7
+ <slot></slot>
8
+ </transition>
9
+ <div v-else><slot></slot></div>
10
+ </template>
11
+
12
+ <script>
13
+ import { preset as animates } from '@vue2-client/config/default/animate.config'
14
+
15
+ export default {
16
+ name: 'PageToggleTransition',
17
+ props: {
18
+ disabled: {
19
+ type: Boolean,
20
+ default: false
21
+ },
22
+ animate: {
23
+ type: String,
24
+ validator (value) {
25
+ return animates.findIndex(item => item.name === value) !== -1
26
+ },
27
+ default: 'bounce'
28
+ },
29
+ // eslint-disable-next-line vue/require-default-prop
30
+ direction: {
31
+ type: String,
32
+ validator (value) {
33
+ return ['x', 'y', 'left', 'right', 'up', 'down', 'downLeft', 'upRight', 'downRight', 'upLeft', 'downBig',
34
+ 'upBig', 'downLeft', 'downRight', 'topRight', 'bottomLeft', 'topLeft', 'bottomRight', 'default'].indexOf(value) > -1
35
+ }
36
+ },
37
+ reverse: {
38
+ type: Boolean,
39
+ default: true
40
+ }
41
+ },
42
+ computed: {
43
+ enterAnimate () {
44
+ return this.activeClass(false)
45
+ },
46
+ leaveAnimate () {
47
+ return this.activeClass(true)
48
+ }
49
+ },
50
+ methods: {
51
+ activeClass (isLeave) {
52
+ const animate = animates.find(item => this.animate === item.name)
53
+ if (animate === undefined) {
54
+ return ''
55
+ }
56
+ let direction = ''
57
+ if (this.direction === undefined) {
58
+ direction = animate.directions[0]
59
+ } else {
60
+ direction = animate.directions.find(item => item === this.direction)
61
+ }
62
+ direction = (direction === undefined || direction === 'default') ? '' : direction
63
+ if (direction !== '') {
64
+ direction = isLeave && this.reverse ? this.reversePosition(direction, animate.directions) : direction
65
+ direction = direction[0].toUpperCase() + direction.substring(1)
66
+ }
67
+ const t = isLeave ? 'Out' : 'In'
68
+ return animate.name + t + direction
69
+ },
70
+ reversePosition (direction, directions) {
71
+ if (direction.length === 0 || direction === 'x' || direction === 'y') {
72
+ return direction
73
+ }
74
+ let index = directions.indexOf(direction)
75
+ index = (index % 2 === 1) ? index - 1 : index + 1
76
+ return directions[index]
77
+ }
78
+ }
79
+ }
80
+ </script>
81
+
82
+ <style lang="less">
83
+ .page-toggle-enter-active{
84
+ position: absolute !important;
85
+ animation-duration: 0.8s !important;
86
+ width: calc(100%) !important;
87
+ }
88
+ .page-toggle-leave-active{
89
+ position: absolute !important;
90
+ animation-duration: 0.8s !important;
91
+ width: calc(100%) !important;
92
+ }
93
+ .page-toggle-enter{
94
+ }
95
+ .page-toggle-leave-to{
96
+ }
97
+ </style>
@@ -1,18 +1,18 @@
1
- // admin 配置
2
- const ADMIN = {
3
- palettes: ['#f5222d', '#fa541c', '#fadb14', '#3eaf7c', '#13c2c2', '#1890ff', '#722ed1', '#eb2f96', '#507CAD'],
4
- animates: require('./animate.config').preset,
5
- theme: {
6
- mode: {
7
- DARK: 'dark',
8
- LIGHT: 'light',
9
- NIGHT: 'night'
10
- }
11
- },
12
- layout: {
13
- SIDE: 'side',
14
- HEAD: 'head'
15
- }
16
- }
17
-
18
- module.exports = ADMIN
1
+ // admin 配置
2
+ const ADMIN = {
3
+ palettes: ['#f5222d', '#fa541c', '#fadb14', '#3eaf7c', '#13c2c2', '#1890ff', '#722ed1', '#eb2f96', '#507CAD'],
4
+ animates: require('./animate.config').preset,
5
+ theme: {
6
+ mode: {
7
+ DARK: 'dark',
8
+ LIGHT: 'light',
9
+ NIGHT: 'night'
10
+ }
11
+ },
12
+ layout: {
13
+ SIDE: 'side',
14
+ HEAD: 'head'
15
+ }
16
+ }
17
+
18
+ module.exports = ADMIN
@@ -1,44 +1,44 @@
1
- // 此配置为系统默认设置
2
- module.exports = {
3
- lang: 'CN', // 语言,可选 CN(简体)、HK(繁体)、US(英语),也可扩展其它语言
4
- theme: { // 主题
5
- color: '#1890ff', // 主题色
6
- mode: 'dark', // 主题模式 可选 dark、 light 和 night
7
- success: '#52c41a', // 成功色
8
- warning: '#faad14', // 警告色
9
- error: '#f5222f' // 错误色
10
- },
11
- layout: 'side', // 导航布局,可选 side 和 head,分别为侧边导航和顶部导航
12
- fixedHeader: true, // 固定头部状态栏,true:固定,false:不固定
13
- fixedSideBar: true, // 固定侧边栏,true:固定,false:不固定
14
- fixedTabs: true, // 固定页签头,true:固定,false:不固定
15
- pageWidth: 'fixed', // 内容区域宽度,fixed:固定宽度,fluid:流式宽度
16
- weekMode: false, // 色弱模式,true:开启,false:不开启
17
- multiPage: true, // 多页签模式,true:开启,false:不开启
18
- cachePage: true, // 是否缓存页面数据,仅多页签模式下生效,true 缓存, false 不缓存
19
- hideSetting: false, // 隐藏设置抽屉,true:隐藏,false:不隐藏
20
- homePage: '/dashboard/workplace', // 首页路由, 登陆后默认打开
21
- ticketPage: '/submitTicket', // 提交工单路由
22
- systemName: 'V4基础组件平台', // 系统名称
23
- logoSrc: '/defaultLogo.png', // LOGO路径
24
- systemNameFontSize: '20px', // 系统名称字体大小
25
- systemDesc: '为PC端中、后台系统业务开发提供支持', // 系统描述
26
- copyright: '2022 AoFengSoft', // copyright
27
- copyrightStyle: undefined,
28
- asyncRoutes: true, // 异步加载路由,true:开启,false:不开启
29
- showPageTitle: true, // 是否显示页面标题(PageLayout 布局中的页面标题),true:显示,false:不显示
30
- filterMenu: true, // 根据权限过滤菜单,true:过滤,false:不过滤
31
- animate: { // 动画设置
32
- disabled: true, // 禁用动画,true:禁用,false:启用
33
- name: 'lightSpeed', // 动画效果,支持的动画效果可参考 ./animate.config.js
34
- direction: 'left' // 动画方向,切换页面时动画的方向,参考 ./animate.config.js
35
- },
36
- footerLinks: [ // 页面底部链接,{link: '链接地址', name: '名称/显示文字', icon: '图标,支持 ant design vue 图标库'}
37
- ],
38
- // 旧系统路径
39
- iframeSrc: '../singlepage/page.html',
40
- // 兼容旧版本 V3(最新V3产品) OA(公司OA)
41
- compatible: 'V3',
42
- // 路由资源名称
43
- routeName: '智慧燃气'
44
- }
1
+ // 此配置为系统默认设置
2
+ module.exports = {
3
+ lang: 'CN', // 语言,可选 CN(简体)、HK(繁体)、US(英语),也可扩展其它语言
4
+ theme: { // 主题
5
+ color: '#1890ff', // 主题色
6
+ mode: 'dark', // 主题模式 可选 dark、 light 和 night
7
+ success: '#52c41a', // 成功色
8
+ warning: '#faad14', // 警告色
9
+ error: '#f5222f' // 错误色
10
+ },
11
+ layout: 'side', // 导航布局,可选 side 和 head,分别为侧边导航和顶部导航
12
+ fixedHeader: true, // 固定头部状态栏,true:固定,false:不固定
13
+ fixedSideBar: true, // 固定侧边栏,true:固定,false:不固定
14
+ fixedTabs: true, // 固定页签头,true:固定,false:不固定
15
+ pageWidth: 'fixed', // 内容区域宽度,fixed:固定宽度,fluid:流式宽度
16
+ weekMode: false, // 色弱模式,true:开启,false:不开启
17
+ multiPage: true, // 多页签模式,true:开启,false:不开启
18
+ cachePage: true, // 是否缓存页面数据,仅多页签模式下生效,true 缓存, false 不缓存
19
+ hideSetting: false, // 隐藏设置抽屉,true:隐藏,false:不隐藏
20
+ homePage: '/dashboard/workplace', // 首页路由, 登陆后默认打开
21
+ ticketPage: '/submitTicket', // 提交工单路由
22
+ systemName: 'V4基础组件平台', // 系统名称
23
+ logoSrc: '/defaultLogo.png', // LOGO路径
24
+ systemNameFontSize: '20px', // 系统名称字体大小
25
+ systemDesc: '为PC端中、后台系统业务开发提供支持', // 系统描述
26
+ copyright: '2022 AoFengSoft', // copyright
27
+ copyrightStyle: undefined,
28
+ asyncRoutes: true, // 异步加载路由,true:开启,false:不开启
29
+ showPageTitle: true, // 是否显示页面标题(PageLayout 布局中的页面标题),true:显示,false:不显示
30
+ filterMenu: true, // 根据权限过滤菜单,true:过滤,false:不过滤
31
+ animate: { // 动画设置
32
+ disabled: true, // 禁用动画,true:禁用,false:启用
33
+ name: 'lightSpeed', // 动画效果,支持的动画效果可参考 ./animate.config.js
34
+ direction: 'left' // 动画方向,切换页面时动画的方向,参考 ./animate.config.js
35
+ },
36
+ footerLinks: [ // 页面底部链接,{link: '链接地址', name: '名称/显示文字', icon: '图标,支持 ant design vue 图标库'}
37
+ ],
38
+ // 旧系统路径
39
+ iframeSrc: '../singlepage/page.html',
40
+ // 兼容旧版本 V3(最新V3产品) OA(公司OA)
41
+ compatible: 'V3',
42
+ // 路由资源名称
43
+ routeName: '智慧燃气'
44
+ }
@@ -1,67 +1,67 @@
1
- /**
2
- * webpack-theme-color-replacer 插件的 resolve 配置
3
- * 为特定的 css 选择器(selector)配置 resolve 规则。
4
- *
5
- * key 为 css selector 值或合法的正则表达式字符串
6
- * 当 key 设置 css selector 值时,会匹配对应的 css
7
- * 当 key 设置为正则表达式时,会匹配所有满足此正则表达式的的 css
8
- *
9
- * value 可以设置为 boolean 值 false 或 一个对象
10
- * 当 value 为 false 时,则会忽略此 css,即此 css 不纳入 webpack-theme-color-replacer 管理
11
- * 当 value 为 对象时,会调用该对象的 resolve 函数,并传入 cssText(原始的 css文本) 和 cssObj(css对象)参数; resolve函数应该返
12
- * 回一个处理后的、合法的 css字符串(包含 selector)
13
- * 注意: value 不能设置为 true
14
- */
15
- const cssResolve = {
16
- '.ant-checkbox-checked .ant-checkbox-inner::after': {
17
- resolve (cssText, cssObj) {
18
- cssObj.rules.push('border-top:0', 'border-left:0')
19
- return cssObj.toText()
20
- }
21
- },
22
- '.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after': {
23
- resolve (cssText, cssObj) {
24
- cssObj.rules.push('border-top:0', 'border-left:0')
25
- return cssObj.toText()
26
- }
27
- },
28
- '.ant-checkbox-checked .ant-checkbox-inner:after': {
29
- resolve (cssText, cssObj) {
30
- cssObj.rules.push('border-top:0', 'border-left:0')
31
- return cssObj.toText()
32
- }
33
- },
34
- '.ant-tree-checkbox-checked .ant-tree-checkbox-inner:after': {
35
- resolve (cssText, cssObj) {
36
- cssObj.rules.push('border-top:0', 'border-left:0')
37
- return cssObj.toText()
38
- }
39
- },
40
- '.ant-menu-dark .ant-menu-inline.ant-menu-sub': {
41
- resolve (cssText, cssObj) {
42
- cssObj.rules = cssObj.rules.filter(rule => rule.indexOf('box-shadow') === -1)
43
- return cssObj.toText()
44
- }
45
- },
46
- '.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu:hover,.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-submenu-active,.ant-menu-horizontal>.ant-menu-item-open,.ant-menu-horizontal>.ant-menu-submenu-open,.ant-menu-horizontal>.ant-menu-item-selected,.ant-menu-horizontal>.ant-menu-submenu-selected': {
47
- resolve (cssText, cssObj) {
48
- cssObj.selector = cssObj.selector.replace(/.ant-menu-horizontal/g, '.ant-menu-horizontal:not(.ant-menu-dark)')
49
- return cssObj.toText()
50
- }
51
- },
52
- '.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-item-open,.ant-menu-horizontal>.ant-menu-item-selected,.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu-active,.ant-menu-horizontal>.ant-menu-submenu-open,.ant-menu-horizontal>.ant-menu-submenu-selected,.ant-menu-horizontal>.ant-menu-submenu:hover': {
53
- resolve (cssText, cssObj) {
54
- cssObj.selector = cssObj.selector.replace(/.ant-menu-horizontal/g, '.ant-menu-horizontal:not(.ant-menu-dark)')
55
- return cssObj.toText()
56
- }
57
- },
58
- '.ant-layout-sider': {
59
- resolve (cssText, cssObj) {
60
- cssObj.selector = '.ant-layout-sider-dark'
61
- return cssObj.toText()
62
- }
63
- },
64
- '/keyframes/': false
65
- }
66
-
67
- module.exports = cssResolve
1
+ /**
2
+ * webpack-theme-color-replacer 插件的 resolve 配置
3
+ * 为特定的 css 选择器(selector)配置 resolve 规则。
4
+ *
5
+ * key 为 css selector 值或合法的正则表达式字符串
6
+ * 当 key 设置 css selector 值时,会匹配对应的 css
7
+ * 当 key 设置为正则表达式时,会匹配所有满足此正则表达式的的 css
8
+ *
9
+ * value 可以设置为 boolean 值 false 或 一个对象
10
+ * 当 value 为 false 时,则会忽略此 css,即此 css 不纳入 webpack-theme-color-replacer 管理
11
+ * 当 value 为 对象时,会调用该对象的 resolve 函数,并传入 cssText(原始的 css文本) 和 cssObj(css对象)参数; resolve函数应该返
12
+ * 回一个处理后的、合法的 css字符串(包含 selector)
13
+ * 注意: value 不能设置为 true
14
+ */
15
+ const cssResolve = {
16
+ '.ant-checkbox-checked .ant-checkbox-inner::after': {
17
+ resolve (cssText, cssObj) {
18
+ cssObj.rules.push('border-top:0', 'border-left:0')
19
+ return cssObj.toText()
20
+ }
21
+ },
22
+ '.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after': {
23
+ resolve (cssText, cssObj) {
24
+ cssObj.rules.push('border-top:0', 'border-left:0')
25
+ return cssObj.toText()
26
+ }
27
+ },
28
+ '.ant-checkbox-checked .ant-checkbox-inner:after': {
29
+ resolve (cssText, cssObj) {
30
+ cssObj.rules.push('border-top:0', 'border-left:0')
31
+ return cssObj.toText()
32
+ }
33
+ },
34
+ '.ant-tree-checkbox-checked .ant-tree-checkbox-inner:after': {
35
+ resolve (cssText, cssObj) {
36
+ cssObj.rules.push('border-top:0', 'border-left:0')
37
+ return cssObj.toText()
38
+ }
39
+ },
40
+ '.ant-menu-dark .ant-menu-inline.ant-menu-sub': {
41
+ resolve (cssText, cssObj) {
42
+ cssObj.rules = cssObj.rules.filter(rule => rule.indexOf('box-shadow') === -1)
43
+ return cssObj.toText()
44
+ }
45
+ },
46
+ '.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu:hover,.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-submenu-active,.ant-menu-horizontal>.ant-menu-item-open,.ant-menu-horizontal>.ant-menu-submenu-open,.ant-menu-horizontal>.ant-menu-item-selected,.ant-menu-horizontal>.ant-menu-submenu-selected': {
47
+ resolve (cssText, cssObj) {
48
+ cssObj.selector = cssObj.selector.replace(/.ant-menu-horizontal/g, '.ant-menu-horizontal:not(.ant-menu-dark)')
49
+ return cssObj.toText()
50
+ }
51
+ },
52
+ '.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-item-open,.ant-menu-horizontal>.ant-menu-item-selected,.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu-active,.ant-menu-horizontal>.ant-menu-submenu-open,.ant-menu-horizontal>.ant-menu-submenu-selected,.ant-menu-horizontal>.ant-menu-submenu:hover': {
53
+ resolve (cssText, cssObj) {
54
+ cssObj.selector = cssObj.selector.replace(/.ant-menu-horizontal/g, '.ant-menu-horizontal:not(.ant-menu-dark)')
55
+ return cssObj.toText()
56
+ }
57
+ },
58
+ '.ant-layout-sider': {
59
+ resolve (cssText, cssObj) {
60
+ cssObj.selector = '.ant-layout-sider-dark'
61
+ return cssObj.toText()
62
+ }
63
+ },
64
+ '/keyframes/': false
65
+ }
66
+
67
+ module.exports = cssResolve