vue2-client 1.6.35 → 1.6.37

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 (107) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/index.js +30 -30
  3. package/package.json +1 -1
  4. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +317 -317
  5. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  6. package/src/base-client/components/common/AmapMarker/index.js +3 -3
  7. package/src/base-client/components/common/CitySelect/CitySelect.vue +247 -247
  8. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +733 -733
  9. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +508 -508
  10. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +140 -140
  11. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +165 -165
  12. package/src/base-client/components/common/JSONToTree/jsontotree.vue +275 -275
  13. package/src/base-client/components/common/Upload/Upload.vue +168 -168
  14. package/src/base-client/components/common/XAddForm/XAddForm.vue +326 -326
  15. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  16. package/src/base-client/components/common/XForm/XForm.vue +180 -180
  17. package/src/base-client/components/common/XForm/XFormItem.vue +473 -591
  18. package/src/base-client/components/common/XForm/XTreeSelect.vue +184 -0
  19. package/src/base-client/components/common/XFormTable/XFormTable.vue +336 -336
  20. package/src/base-client/components/common/XFormTable/index.md +97 -97
  21. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +111 -111
  22. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  23. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +807 -807
  24. package/src/base-client/components/ticket/TicketDetailsView/index.md +29 -29
  25. package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +260 -260
  26. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
  27. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.md +29 -29
  28. package/src/base-client/plugins/AppData.js +76 -76
  29. package/src/base-client/plugins/GetLoginInfoService.js +179 -179
  30. package/src/base-client/plugins/PagedList.js +177 -177
  31. package/src/base-client/plugins/compatible/LoginServiceOA.js +20 -20
  32. package/src/base-client/plugins/i18n-extend.js +32 -32
  33. package/src/components/Ellipsis/Ellipsis.vue +65 -65
  34. package/src/components/Ellipsis/index.md +38 -38
  35. package/src/components/NumberInfo/index.md +43 -43
  36. package/src/components/STable/README.md +341 -341
  37. package/src/components/STable/index.js +318 -318
  38. package/src/components/Trend/index.md +45 -45
  39. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  40. package/src/components/checkbox/ImgCheckbox.vue +163 -163
  41. package/src/components/exception/ExceptionPage.vue +70 -70
  42. package/src/components/form/FormRow.vue +52 -52
  43. package/src/components/index.js +36 -36
  44. package/src/components/menu/SideMenu.vue +62 -62
  45. package/src/components/menu/menu.js +273 -273
  46. package/src/components/page/header/index.less +40 -40
  47. package/src/components/setting/Setting.vue +235 -235
  48. package/src/components/table/StandardTable.vue +141 -141
  49. package/src/components/table/advance/ActionColumns.vue +158 -158
  50. package/src/components/table/advance/SearchArea.vue +355 -355
  51. package/src/components/tool/AStepItem.vue +60 -60
  52. package/src/components/tool/AvatarList.vue +68 -68
  53. package/src/components/tool/Drawer.vue +142 -142
  54. package/src/components/tool/TagSelect.vue +83 -83
  55. package/src/components/transition/PageToggleTransition.vue +97 -97
  56. package/src/config/default/admin.config.js +18 -18
  57. package/src/config/default/setting.config.js +46 -46
  58. package/src/config/replacer/resolve.config.js +67 -67
  59. package/src/layouts/CommonLayout.vue +42 -42
  60. package/src/layouts/ComponentLayoutOne.vue +47 -47
  61. package/src/layouts/PageLayout.vue +151 -151
  62. package/src/layouts/SinglePageView.vue +116 -116
  63. package/src/layouts/footer/PageFooter.vue +49 -49
  64. package/src/layouts/header/AdminHeader.vue +134 -134
  65. package/src/layouts/header/HeaderAvatar.vue +64 -64
  66. package/src/layouts/header/HeaderNotice.vue +176 -176
  67. package/src/layouts/header/HeaderSearch.vue +67 -67
  68. package/src/layouts/header/InstitutionDetail.vue +181 -181
  69. package/src/layouts/header/index.less +92 -92
  70. package/src/layouts/tabs/TabsHead.vue +190 -190
  71. package/src/layouts/tabs/TabsView.vue +379 -379
  72. package/src/mock/goods/index.js +108 -108
  73. package/src/pages/login/Login.vue +365 -365
  74. package/src/pages/report/ReportTable.js +124 -124
  75. package/src/pages/report/ReportTableHome.vue +28 -28
  76. package/src/pages/resourceManage/orgListManage.vue +98 -98
  77. package/src/pages/system/file/index.vue +317 -317
  78. package/src/pages/system/settings/index.vue +126 -126
  79. package/src/pages/system/settings/modifyPassword.vue +109 -109
  80. package/src/router/async/config.async.js +28 -28
  81. package/src/router/async/router.map.js +68 -68
  82. package/src/router/index.js +27 -27
  83. package/src/services/api/DictionaryDetailsViewApi.js +6 -6
  84. package/src/services/api/LogDetailsViewApi.js +10 -10
  85. package/src/services/api/QueryParamsDetailsViewApi.js +6 -6
  86. package/src/services/api/TicketDetailsViewApi.js +34 -34
  87. package/src/services/api/cas.js +79 -79
  88. package/src/services/api/commonTempTable.js +10 -10
  89. package/src/services/api/index.js +17 -17
  90. package/src/services/api/logininfor/index.js +6 -6
  91. package/src/services/api/manage.js +8 -8
  92. package/src/services/apiService.js +14 -14
  93. package/src/services/user.js +64 -64
  94. package/src/store/modules/index.js +4 -4
  95. package/src/theme/default/nprogress.less +76 -76
  96. package/src/theme/default/style.less +58 -58
  97. package/src/utils/colors.js +107 -107
  98. package/src/utils/excel/Blob.js +180 -180
  99. package/src/utils/excel/Export2Excel.js +141 -141
  100. package/src/utils/formatter.js +68 -68
  101. package/src/utils/i18n.js +80 -80
  102. package/src/utils/map-utils.js +37 -37
  103. package/src/utils/request.js +311 -311
  104. package/src/utils/theme-color-replacer-extend.js +91 -91
  105. package/src/utils/themeUtil.js +100 -100
  106. package/src/utils/util.js +230 -230
  107. 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,46 +1,46 @@
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
- // 自定义组件集合 格式为组件名: 组件路径(不需要带@/)
45
- customizeComponent: {}
46
- }
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
+ // 自定义组件集合 格式为组件名: 组件路径(不需要带@/)
45
+ customizeComponent: {}
46
+ }
@@ -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