iov-pro-components 0.0.3

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 (133) hide show
  1. package/.eslintignore +5 -0
  2. package/.eslintrc.js +192 -0
  3. package/.gitignore +3 -0
  4. package/README.md +4 -0
  5. package/babel.config.js +5 -0
  6. package/docs/.vuepress/config.js +169 -0
  7. package/docs/.vuepress/styles/index.styl +62 -0
  8. package/docs/.vuepress/styles/palette.styl +20 -0
  9. package/docs/.vuepress/theme/enhanceApp.js +100 -0
  10. package/docs/.vuepress/theme/index.js +3 -0
  11. package/docs/README.md +13 -0
  12. package/docs/components/description.md +519 -0
  13. package/docs/components/dialog-select.md +91 -0
  14. package/docs/components/display.md +36 -0
  15. package/docs/components/enums.md +33 -0
  16. package/docs/components/icon.md +406 -0
  17. package/docs/components/link-group.md +39 -0
  18. package/docs/components/page-detail.md +48 -0
  19. package/docs/components/page-module.md +51 -0
  20. package/docs/components/pro-form.md +958 -0
  21. package/docs/components/pro-table.md +683 -0
  22. package/docs/components/request.md +44 -0
  23. package/docs/components/search-table.md +963 -0
  24. package/docs/components/space.md +35 -0
  25. package/docs/components/sub-title.md +24 -0
  26. package/docs/components/submit-module.md +24 -0
  27. package/docs/template/add.md +124 -0
  28. package/docs/template/confirm.md +28 -0
  29. package/docs/template/detail.md +240 -0
  30. package/docs/template/dialog.md +339 -0
  31. package/docs/template/list.md +464 -0
  32. package/docs/template/tabs-mini.md +32 -0
  33. package/docs/template/tabs.md +32 -0
  34. package/jsconfig.json +19 -0
  35. package/lib/iov-pro-components.css +1 -0
  36. package/lib/iov-pro-components.min.js +7 -0
  37. package/lib/postcss.config.js +8 -0
  38. package/package.json +75 -0
  39. package/patches/vue-server-renderer+2.7.16.patch +13 -0
  40. package/rollup.config.mjs +79 -0
  41. package/src/App.vue +103 -0
  42. package/src/main.js +33 -0
  43. package/src/packages/column-tooltip/index.js +7 -0
  44. package/src/packages/column-tooltip/src/main.vue +127 -0
  45. package/src/packages/description/index.js +7 -0
  46. package/src/packages/description/src/main.vue +375 -0
  47. package/src/packages/description/src/text.vue +103 -0
  48. package/src/packages/dialog-select/index.js +7 -0
  49. package/src/packages/dialog-select/src/main.vue +308 -0
  50. package/src/packages/display/index.js +7 -0
  51. package/src/packages/display/src/main.vue +44 -0
  52. package/src/packages/enums/index.js +7 -0
  53. package/src/packages/enums/src/main.vue +23 -0
  54. package/src/packages/export/index.js +7 -0
  55. package/src/packages/export/src/main.vue +316 -0
  56. package/src/packages/fixed-button-group/index.js +7 -0
  57. package/src/packages/fixed-button-group/src/main.vue +104 -0
  58. package/src/packages/form/index.js +7 -0
  59. package/src/packages/form/src/collapse.vue +149 -0
  60. package/src/packages/form/src/main.vue +1190 -0
  61. package/src/packages/form-collapse/index.js +7 -0
  62. package/src/packages/index.js +86 -0
  63. package/src/packages/link-group/index.js +7 -0
  64. package/src/packages/link-group/src/main.vue +52 -0
  65. package/src/packages/page-detail/index.js +7 -0
  66. package/src/packages/page-detail/src/main.vue +123 -0
  67. package/src/packages/page-module/index.js +7 -0
  68. package/src/packages/page-module/src/main.vue +56 -0
  69. package/src/packages/preview/index.js +7 -0
  70. package/src/packages/preview/src/eval-image-viewer.js +50 -0
  71. package/src/packages/preview/src/image-viewer.vue +366 -0
  72. package/src/packages/preview/src/main.vue +97 -0
  73. package/src/packages/request/index.js +7 -0
  74. package/src/packages/request/src/main.vue +125 -0
  75. package/src/packages/search-table/index.js +7 -0
  76. package/src/packages/search-table/src/inner-tabs.vue +237 -0
  77. package/src/packages/search-table/src/main.vue +472 -0
  78. package/src/packages/search-table/src/outer-tabs.vue +45 -0
  79. package/src/packages/search-table-inner-tabs/index.js +7 -0
  80. package/src/packages/search-table-outer-tabs/index.js +7 -0
  81. package/src/packages/space/index.js +7 -0
  82. package/src/packages/space/src/main.vue +74 -0
  83. package/src/packages/sub-title/index.js +7 -0
  84. package/src/packages/sub-title/src/main.vue +70 -0
  85. package/src/packages/submit-module/index.js +7 -0
  86. package/src/packages/submit-module/src/main.vue +67 -0
  87. package/src/packages/table/index.js +7 -0
  88. package/src/packages/table/src/filter.vue +89 -0
  89. package/src/packages/table/src/main.vue +668 -0
  90. package/src/packages/table/src/search.vue +90 -0
  91. package/src/packages/table/src/sort.vue +118 -0
  92. package/src/packages/theme/index.scss +15 -0
  93. package/src/packages/theme/src/column-tooltip.scss +23 -0
  94. package/src/packages/theme/src/common/color.scss +134 -0
  95. package/src/packages/theme/src/description.scss +56 -0
  96. package/src/packages/theme/src/dialog-select.scss +32 -0
  97. package/src/packages/theme/src/fixed-button-group.scss +25 -0
  98. package/src/packages/theme/src/form.scss +11 -0
  99. package/src/packages/theme/src/link-group.scss +43 -0
  100. package/src/packages/theme/src/page-detail.scss +61 -0
  101. package/src/packages/theme/src/page-module.scss +46 -0
  102. package/src/packages/theme/src/preview.scss +67 -0
  103. package/src/packages/theme/src/search-table.scss +185 -0
  104. package/src/packages/theme/src/space.scss +12 -0
  105. package/src/packages/theme/src/sub-title.scss +47 -0
  106. package/src/packages/theme/src/submit-module.scss +13 -0
  107. package/src/packages/theme/src/table.scss +129 -0
  108. package/src/packages/theme/src/toolbar.scss +109 -0
  109. package/src/packages/toolbar/index.js +7 -0
  110. package/src/packages/toolbar/src/main.vue +126 -0
  111. package/src/packages/toolbar/src/setting.vue +217 -0
  112. package/src/packages/toolbar/src/style.vue +68 -0
  113. package/src/packages/toolbar/src/zoom.vue +65 -0
  114. package/src/router.js +83 -0
  115. package/src/utils/config-center.js +218 -0
  116. package/src/utils/function-eval.js +84 -0
  117. package/src/utils/index.js +104 -0
  118. package/src/views/column-tooltip.vue +37 -0
  119. package/src/views/components/OtherSelect.vue +18 -0
  120. package/src/views/description.vue +60 -0
  121. package/src/views/detail.vue +146 -0
  122. package/src/views/directive/number.js +82 -0
  123. package/src/views/enums.vue +22 -0
  124. package/src/views/export.vue +9 -0
  125. package/src/views/form-collapse.vue +185 -0
  126. package/src/views/form.vue +402 -0
  127. package/src/views/link-group.vue +16 -0
  128. package/src/views/preview.vue +33 -0
  129. package/src/views/request.vue +56 -0
  130. package/src/views/search-table.vue +297 -0
  131. package/src/views/table.vue +145 -0
  132. package/src/views/toolbar.vue +30 -0
  133. package/vue.config.js +22 -0
@@ -0,0 +1,90 @@
1
+ <script>
2
+ import { getComponentNames } from '@/utils/config-center'
3
+
4
+ export default {
5
+ name: 'IovProTableSearch',
6
+ props: {
7
+ column: {
8
+ type: Object,
9
+ default: () => ({})
10
+ },
11
+ placement: {
12
+ type: String,
13
+ default: 'bottom-start'
14
+ }
15
+ },
16
+ data() {
17
+ return {
18
+ visible: false,
19
+ value: '',
20
+ isActived: false
21
+ }
22
+ },
23
+ methods: {
24
+ /**
25
+ * 点击重置方法
26
+ * @time 2024-11-21 20:17:46
27
+ */
28
+ onReset() {
29
+ // 先清空数据
30
+ this.value = ''
31
+ // 标记当前不需要激活状态
32
+ this.isActived = false
33
+ // 抛出去重置方法
34
+ this.$emit('reset')
35
+ // 关闭popover
36
+ this.visible = false
37
+ },
38
+
39
+ /**
40
+ * 点击搜索方法
41
+ * @time 2024-11-21 20:18:49
42
+ */
43
+ onConfirm() {
44
+ // 如果啥都没输入,就不搜索
45
+ if (!this.value) return
46
+ // 标记当前需要激活状态
47
+ this.isActived = true
48
+ // 抛出去搜索方法
49
+ this.$emit('confirm', this.value)
50
+ // 关闭popover
51
+ this.visible = false
52
+ }
53
+ },
54
+ render() {
55
+ const [Popover, Input, Button] = getComponentNames(['popover', 'input', 'button'])
56
+ return (
57
+ <Popover
58
+ value={this.visible}
59
+ placement={this.placement}
60
+ width='256'
61
+ trigger='click'
62
+ popper-class='iov-pro-table-search__popper'
63
+ onInput={val => (this.visible = val)}
64
+ >
65
+ <i
66
+ slot='reference'
67
+ class={{
68
+ 'iov-pro-table-search__icon': true,
69
+ 'is-actived': this.isActived,
70
+ 'iov-icon-fill-search': true
71
+ }}
72
+ />
73
+ <div class='iov-pro-table-search__input-wrapper'>
74
+ <Input
75
+ value={this.value}
76
+ placeholder='请输入查询内容'
77
+ size='mini'
78
+ class='iov-pro-table-search__input'
79
+ onInput={val => (this.value = val)}
80
+ />
81
+ </div>
82
+ <div class='iov-pro-table-search__operation'>
83
+ <Button size='mini' onClick={this.onReset}>重置</Button>
84
+ <Button type='info' size='mini' icon='iov-icon-search' onClick={this.onConfirm}>搜索</Button>
85
+ </div>
86
+ </Popover>
87
+ )
88
+ }
89
+ }
90
+ </script>
@@ -0,0 +1,118 @@
1
+ <script>
2
+ import isNil from 'lodash/isNil'
3
+ import { getComponentNames } from '@/utils/config-center'
4
+
5
+ // 排序枚举
6
+ export const SORT_ORDER = {
7
+ ASCENDING: 'ascending',
8
+ DESCENDING: 'descending'
9
+ }
10
+
11
+ // 默认排序顺序
12
+ const DEFAULT_SORT_ORDERS = [SORT_ORDER.ASCENDING, SORT_ORDER.DESCENDING, null]
13
+
14
+ export default {
15
+ name: 'IovProTableSort',
16
+ props: {
17
+ column: {
18
+ type: Object,
19
+ default: () => ({})
20
+ }
21
+ },
22
+ data() {
23
+ return {
24
+ value: [],
25
+ sortOrder: null
26
+ }
27
+ },
28
+ computed: {
29
+ /**
30
+ * 下一步排序的方式
31
+ * @time 2024-11-22 10:58:59
32
+ */
33
+ nextSortOrder() {
34
+ // 当前需要排序的顺序
35
+ const sortOrders = this.column.sortOrders || DEFAULT_SORT_ORDERS
36
+ // 取出当前下一步排序的所
37
+ let nextSortOrderIndex = sortOrders.findIndex(order => order === this.sortOrder) + 1
38
+ // 如果超出了排序数组的顺序
39
+ if (nextSortOrderIndex >= sortOrders.length) {
40
+ nextSortOrderIndex = 0
41
+ }
42
+ return sortOrders[nextSortOrderIndex]
43
+ },
44
+
45
+ /**
46
+ * tooltip的内容
47
+ * @time 2024-11-22 10:53:54
48
+ */
49
+ tooltipContent() {
50
+ // 当前需要排序的顺序
51
+ let content = ''
52
+ // 下一步需要排序的方式
53
+ switch (this.nextSortOrder) {
54
+ case SORT_ORDER.ASCENDING: // 如果下一步需要升序
55
+ content = '点击升序'
56
+ break
57
+ case SORT_ORDER.DESCENDING: // 如果下一步需要降序
58
+ content = '点击降序'
59
+ break
60
+ default:
61
+ content = `取消${this.sortOrder === SORT_ORDER.ASCENDING ? '升序' : '降序'}`
62
+ break
63
+ }
64
+ return content
65
+ }
66
+ },
67
+ created() {
68
+ // 默认排序方式
69
+ const { defaultSort } = this.column
70
+ // 如果当前设置了默认排序
71
+ if (!isNil(defaultSort)) {
72
+ // 记录当前默认排序
73
+ this.sortOrder = defaultSort
74
+ // 开始派发事件
75
+ this.$emit('sort', defaultSort)
76
+ }
77
+ },
78
+ methods: {
79
+ /**
80
+ * 点击排序方法
81
+ * @time 2024-11-21 20:17:46
82
+ */
83
+ onSort() {
84
+ // 当前需要排序的顺序
85
+ this.sortOrder = this.nextSortOrder
86
+ // 抛出去重置方法
87
+ this.$emit('sort', this.sortOrder)
88
+ },
89
+
90
+ /**
91
+ * 重置排序方法
92
+ * @time 2024-11-22 14:24:09
93
+ */
94
+ onReset() {
95
+ // 当前需要排序的顺序
96
+ this.sortOrder = null
97
+ }
98
+ },
99
+ render() {
100
+ const [Tooltip] = getComponentNames(['tooltip'])
101
+ return (
102
+ <Tooltip
103
+ effect='dark'
104
+ content={this.tooltipContent}
105
+ placement='top'
106
+ >
107
+ <div
108
+ class={['iov-pro-table-sort', this.sortOrder].join(' ')}
109
+ onClick={this.onSort}
110
+ >
111
+ <i class='iovprofont iov-icon-sort-up' />
112
+ <i class='iovprofont iov-icon-sort-down' />
113
+ </div>
114
+ </Tooltip>
115
+ )
116
+ }
117
+ }
118
+ </script>
@@ -0,0 +1,15 @@
1
+ @import "./src/column-tooltip.scss";
2
+ @import "./src/description.scss";
3
+ @import "./src/dialog-select.scss";
4
+ @import "./src/fixed-button-group.scss";
5
+ @import "./src/form.scss";
6
+ @import "./src/link-group.scss";
7
+ @import "./src/page-detail.scss";
8
+ @import "./src/page-module.scss";
9
+ @import "./src/preview.scss";
10
+ @import "./src/search-table.scss";
11
+ @import "./src/space.scss";
12
+ @import "./src/sub-title.scss";
13
+ @import "./src/submit-module.scss";
14
+ @import "./src/table.scss";
15
+ @import "./src/toolbar.scss";
@@ -0,0 +1,23 @@
1
+ .iov-pro-column-tooltip {
2
+ &__container {
3
+ line-height: 17px;
4
+ padding: 2px;
5
+ overflow-x: hidden;
6
+ position: relative;
7
+ &.ellipsis {
8
+ &:after {
9
+ bottom: 0;
10
+ content: "...";
11
+ display: block;
12
+ position: absolute;
13
+ right: -1px;
14
+ }
15
+ }
16
+ }
17
+ &__text {
18
+ height: 23px;
19
+ overflow: hidden;
20
+ white-space: nowrap;
21
+ text-overflow:ellipsis;
22
+ }
23
+ }
@@ -0,0 +1,134 @@
1
+ // --color-primary
2
+ $--color-primary-1: #F0F4FD !default;
3
+ $--color-primary-2: #E3EBFF !default;
4
+ $--color-primary-3: #9EB3FF !default;
5
+ $--color-primary-4: #7992FF !default;
6
+ $--color-primary-5: #546EFF !default;
7
+ $--color-primary-6: #2F48FF !default;
8
+ $--color-primary-7: #1D2CD2 !default;
9
+ $--color-primary-8: #0F17A6 !default;
10
+ $--color-primary-9: #060879 !default;
11
+ $--color-primary-10: #01004D !default;
12
+
13
+ // --color-success
14
+ $--color-success-1: #EFF9F3 !default;
15
+ $--color-success-2: #B8F0C7 !default;
16
+ $--color-success-3: #8CE0A5 !default;
17
+ $--color-success-4: #65D189 !default;
18
+ $--color-success-5: #42C170 !default;
19
+ $--color-success-6: #23B25D !default;
20
+ $--color-success-7: #17994F !default;
21
+ $--color-success-8: #0D7F42 !default;
22
+ $--color-success-9: #056635 !default;
23
+ $--color-success-10: #004D29 !default;
24
+
25
+ // --color-warning
26
+ $--color-warning-1: #FFF7E8 !default;
27
+ $--color-warning-2: #FFE4BA !default;
28
+ $--color-warning-3: #FFCF8B !default;
29
+ $--color-warning-4: #FFB65D !default;
30
+ $--color-warning-5: #FF9A2E !default;
31
+ $--color-warning-6: #FF7D00 !default;
32
+ $--color-warning-7: #D25F00 !default;
33
+ $--color-warning-8: #A64500 !default;
34
+ $--color-warning-9: #792E00 !default;
35
+ $--color-warning-10: #4D1B00 !default;
36
+
37
+ // --color-danger
38
+ $--color-danger-1: #FFF1F1 !default;
39
+ $--color-danger-2: #FDCDC5 !default;
40
+ $--color-danger-3: #FBACA3 !default;
41
+ $--color-danger-4: #F98981 !default;
42
+ $--color-danger-5: #F76560 !default;
43
+ $--color-danger-6: #F53F3F !default;
44
+ $--color-danger-7: #CB272D !default;
45
+ $--color-danger-8: #A1151E !default;
46
+ $--color-danger-9: #770813 !default;
47
+ $--color-danger-10: #4D000A !default;
48
+
49
+ // --color-gold
50
+ $--color-gold-1: #FFFCE8 !default;
51
+ $--color-gold-2: #FDF4BF !default;
52
+ $--color-gold-3: #FCE996 !default;
53
+ $--color-gold-4: #FADC6D !default;
54
+ $--color-gold-5: #F9CC45 !default;
55
+ $--color-gold-6: #F7BA1E !default;
56
+ $--color-gold-7: #CC9213 !default;
57
+ $--color-gold-8: #A26D0A !default;
58
+ $--color-gold-9: #774B04 !default;
59
+ $--color-gold-10: #4D2D00 !default;
60
+
61
+ // --color-blue
62
+ $--color-blue-1: #E8F7FF !default;
63
+ $--color-blue-2: #BEE7FF !default;
64
+ $--color-blue-3: #94D4FF !default;
65
+ $--color-blue-4: #6ABEFF !default;
66
+ $--color-blue-5: #40A6FF !default;
67
+ $--color-blue-6: #168CFF !default;
68
+ $--color-blue-7: #0E69D2 !default;
69
+ $--color-blue-8: #074CA6 !default;
70
+ $--color-blue-9: #033279 !default;
71
+ $--color-blue-10: #001C4D !default;
72
+
73
+ // --color-purple
74
+ $--color-purple-1: #F5E8FF !default;
75
+ $--color-purple-2: #DDBEF6 !default;
76
+ $--color-purple-3: #C396ED !default;
77
+ $--color-purple-4: #A871E3 !default;
78
+ $--color-purple-5: #8D4EDA !default;
79
+ $--color-purple-6: #722ED1 !default;
80
+ $--color-purple-7: #551DB0 !default;
81
+ $--color-purple-8: #3C108F !default;
82
+ $--color-purple-9: #27066E !default;
83
+ $--color-purple-10: #16004D !default;
84
+
85
+ // --color-pink
86
+ $--color-pink-1: #FFE8FB !default;
87
+ $--color-pink-2: #F7BAEF !default;
88
+ $--color-pink-3: #F08EE6 !default;
89
+ $--color-pink-4: #E865DF !default;
90
+ $--color-pink-5: #E13EDB !default;
91
+ $--color-pink-6: #D91AD9 !default;
92
+ $--color-pink-7: #B010B6 !default;
93
+ $--color-pink-8: #8A0993 !default;
94
+ $--color-pink-9: #650370 !default;
95
+ $--color-pink-10: #42004D !default;
96
+
97
+ // --color-gray
98
+ $--color-gray-1: #E8F4FF !default;
99
+ $--color-gray-2: #CED9E4 !default;
100
+ $--color-gray-3: #B5BECA !default;
101
+ $--color-gray-4: #9CA4AF !default;
102
+ $--color-gray-5: #838A95 !default;
103
+ $--color-gray-6: #6B707A !default;
104
+ $--color-gray-7: #49546F !default;
105
+ $--color-gray-8: #2C3A63 !default;
106
+ $--color-gray-9: #132358 !default;
107
+ $--color-gray-10: #000F4D !default;
108
+
109
+ // --color-line
110
+ $--color-line-1: #EDEFF3 !default;
111
+ $--color-line-2: #DCDFE6 !default;
112
+ $--color-line-3: #D2D5DF !default;
113
+ $--color-line-4: #C3C7D1 !default;
114
+ $--color-line-5: #E9EBF0 !default;
115
+
116
+ // --color-fill
117
+ $--color-fill-1: #F6F7F8 !default;
118
+ $--color-fill-2: #F2F3F5 !default;
119
+ $--color-fill-3: #E5E6EB !default;
120
+ $--color-fill-4: #ABAFB5 !default;
121
+ $--color-fill-5: #777D87 !default;
122
+ $--color-fill-6: #494B53 !default;
123
+ $--color-fill-7: #212026 !default;
124
+ $--color-fill-8: #0D1722 !default;
125
+
126
+ // --color-text
127
+ $--color-text-1: #C6C7CA !default;
128
+ $--color-text-2: #A2A3AA !default;
129
+ $--color-text-3: #6B707A !default;
130
+ $--color-text-4: #65677A !default;
131
+ $--color-text-5: #3D4158 !default;
132
+ $--color-text-6: #212026 !default;
133
+ $--color-text-7: #0D1722 !default;
134
+
@@ -0,0 +1,56 @@
1
+ @import "./common/color.scss";
2
+
3
+ .iov-pro-description {
4
+ &__col {
5
+ display: flex;
6
+ font-family: PingFangSC, PingFang SC;
7
+ font-size: 13px;
8
+ line-height: 18px;
9
+ }
10
+ &__label {
11
+ color: $--color-text-4;
12
+ flex-shrink: 0;
13
+ width: 144px;
14
+ white-space: nowrap;
15
+ overflow: hidden;
16
+ }
17
+ &__value {
18
+ color: $--color-text-6;
19
+ flex: 1;
20
+ width: 0;
21
+ word-break: break-all;
22
+ }
23
+ &__link.el-link.el-link--primary {
24
+ border-bottom: 1px dashed $--color-text-6;
25
+ color: $--color-text-6;
26
+ margin-left: 24px;
27
+ &:hover {
28
+ border-color: $--color-primary-6;
29
+ color: $--color-primary-6;
30
+ }
31
+ &.has-icon {
32
+ margin-left: 24px;
33
+ }
34
+ }
35
+ &__link-icon {
36
+ font-size: 20px;
37
+ width: 20px;
38
+ height: 20px;
39
+ margin-right: 4px;
40
+ margin-left: -24px;
41
+ vertical-align: bottom;
42
+ }
43
+ &__link-group {
44
+ .iov-pro-space {
45
+ flex-wrap: wrap;
46
+ }
47
+ }
48
+ }
49
+
50
+ .iov-pro-text__content {
51
+ display: -webkit-box;
52
+ overflow: hidden;
53
+ text-overflow: ellipsis;
54
+ -webkit-box-orient: vertical;
55
+ word-break: break-all;
56
+ }
@@ -0,0 +1,32 @@
1
+ @import "./common/color.scss";
2
+
3
+ .iov-pro-dialog-select {
4
+ .el-dialog__body {
5
+ padding: 16px 24px;
6
+ overflow: auto;
7
+ max-height: 488px;
8
+ box-sizing: content-box;
9
+ }
10
+ .el-dialog__footer {
11
+ padding: 16px 24px 20px;
12
+ text-align: center;
13
+ }
14
+ &__table {
15
+ min-height: 212px;
16
+ }
17
+ &__filter {
18
+ margin-bottom: 12px;
19
+ width: 40%;
20
+ }
21
+ .el-tabs {
22
+ width: 100%;
23
+ }
24
+ .el-tabs--card .el-tabs__item {
25
+ box-sizing: content-box;
26
+ &.is-active {
27
+ border-top: 2px solid $--color-primary-6;
28
+ color: $--color-primary-6;
29
+ background: linear-gradient( 180deg, #F0F4FD 0%, #fff 10%);
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,25 @@
1
+ .iov-pro-fixed-button-group {
2
+ height: 68px;
3
+ &__content {
4
+ align-items: center;
5
+ background-color: #ffffff;
6
+ box-shadow: 0px 0px 12px 0px rgba(196, 198, 207, 0.21);
7
+ bottom: 0;
8
+ border-radius: 0px 0px 8px 8px;
9
+ display: flex;
10
+ position: fixed;
11
+ height: 68px;
12
+ left: 204px;
13
+ right: 16px;
14
+ z-index: 1000;
15
+ &.center {
16
+ justify-content: center;
17
+ }
18
+ &.left {
19
+ justify-content: flex-start;
20
+ }
21
+ &.right {
22
+ justify-content: flex-end;
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,11 @@
1
+ .iov-pro-form {
2
+ &__form-item {
3
+ &.override.important {
4
+ margin-bottom: 0;
5
+ }
6
+ }
7
+
8
+ .iov-pro-form__form-item.important.override {
9
+ margin-bottom: 0;
10
+ }
11
+ }
@@ -0,0 +1,43 @@
1
+ @import "./common/color.scss";
2
+
3
+ .iov-pro-link-group {
4
+ .el-link, .el-dropdown {
5
+ display: block;
6
+ }
7
+ &__more {
8
+ color: $--color-primary-6;
9
+ cursor: pointer;
10
+ width: 14px;
11
+ height: 14px;
12
+ display: block;
13
+ }
14
+
15
+ &__dropdown-menu {
16
+ padding: 4px;
17
+ .el-dropdown-menu__item {
18
+ font-size: 13px;
19
+ line-height: 32px;
20
+ padding: 0 12px;
21
+ &:hover {
22
+ background-color: #F6F7F8;
23
+ }
24
+ }
25
+ }
26
+ .iov-pro-space__item {
27
+ position: relative;
28
+ &:after {
29
+ background: #DCDFE6;
30
+ content: "";
31
+ display: block;
32
+ top: 50%;
33
+ right: 0;
34
+ transform: translateY(-50%);
35
+ width: 1px;
36
+ height: 12px;
37
+ position: absolute;
38
+ }
39
+ &:last-child:after {
40
+ display: none;
41
+ }
42
+ }
43
+ }
@@ -0,0 +1,61 @@
1
+ @import "./common/color.scss";
2
+
3
+ .iov-pro-page-detail {
4
+ padding: 16px;
5
+ background: #fff;
6
+ border-radius: 8px;
7
+ font-family: PingFangSC, PingFang SC;
8
+ position: relative;
9
+ }
10
+ .iov-pro-page-detail__head {
11
+ margin-bottom: 16px;
12
+ display: flex;
13
+ align-items: center;
14
+ }
15
+ .iov-pro-page-detail__icon {
16
+ margin-right: 12px;
17
+ width: 44px;
18
+ height: 44px;
19
+ background-position: 0 0;
20
+ background-repeat: no-repeat;
21
+ background-size: contain;
22
+ font-style: normal;
23
+ }
24
+ .iov-pro-page-detail__head-info {
25
+ display: flex;
26
+ align-items: flex-start;
27
+ flex-direction: column;
28
+ justify-content: space-between;
29
+ }
30
+ .iov-pro-page-detail__name {
31
+ margin-bottom: 4px;
32
+ height: 22px;
33
+ line-height: 22px;
34
+ .name {
35
+ margin-right: 8px;
36
+ font-weight: 600;
37
+ font-size: 16px;
38
+ color: $--color-text-6;
39
+ }
40
+ }
41
+ .iov-pro-page-detail__desc {
42
+ height: 18px;
43
+ line-height: 18px;
44
+ font-weight: 400;
45
+ font-size: 12px;
46
+ color: $--color-text-4;
47
+ .desc-item {
48
+ margin-right: 16px;
49
+ }
50
+ }
51
+ .iov-pro-page-detail__help {
52
+ position: absolute;
53
+ top: 16px;
54
+ right: 16px;
55
+ .help-item {
56
+ margin-left: 16px;
57
+ font-weight: 400;
58
+ font-size: 12px;
59
+ color: $--color-text-2;
60
+ }
61
+ }
@@ -0,0 +1,46 @@
1
+ @import "./common/color.scss";
2
+
3
+ .iov-pro-page-module {
4
+ padding: 16px;
5
+ background: #fff;
6
+ border-radius: 8px;
7
+ &.is-sub {
8
+ .iov-pro-page-module__name-text {
9
+ font-size: 14px;
10
+ }
11
+ }
12
+ &__back {
13
+ border-radius: 4px;
14
+ cursor: pointer;
15
+ font-size: 18px;
16
+ color: $--color-fill-6;
17
+ width: 22px;
18
+ height: 22px;
19
+ margin-right: 8px;
20
+ text-align: center;
21
+ line-height: 22px;
22
+ transition: background-color .3s cubic-bezier(.645, .045, .355, 1);
23
+ &:hover {
24
+ background-color: $--color-fill-1;
25
+ }
26
+ }
27
+ &__head {
28
+ margin-bottom: 12px;
29
+ display: flex;
30
+ align-items: center;
31
+ justify-content: space-between;
32
+ }
33
+ &__suffix {
34
+ margin-left: 10px;
35
+ }
36
+ &__name {
37
+ display: flex;
38
+ align-items: center;
39
+ &-text {
40
+ font-family: PingFangSC, PingFang SC;
41
+ font-weight: 600;
42
+ font-size: 16px;
43
+ color: #0D1722;
44
+ }
45
+ }
46
+ }