eoss-ui 0.6.50 → 0.6.52

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 (218) hide show
  1. package/lib/eoss-ui.common.js +577 -530
  2. package/lib/flow-list.js +110 -87
  3. package/lib/flow.js +306 -282
  4. package/lib/index.js +1 -1
  5. package/lib/main.js +132 -132
  6. package/lib/qr-code.js +13 -13
  7. package/lib/upload.js +6 -6
  8. package/package.json +159 -159
  9. package/packages/button/index.js +5 -5
  10. package/packages/button/src/main.vue +418 -418
  11. package/packages/button-group/index.js +5 -5
  12. package/packages/button-group/src/main.vue +298 -298
  13. package/packages/calendar/index.js +5 -5
  14. package/packages/card/index.js +5 -5
  15. package/packages/card/src/main.vue +156 -156
  16. package/packages/cascader/index.js +5 -5
  17. package/packages/cascader/src/main.vue +168 -168
  18. package/packages/checkbox-group/index.js +5 -5
  19. package/packages/checkbox-group/src/main.vue +333 -333
  20. package/packages/clients/index.js +5 -5
  21. package/packages/clients/src/main.vue +144 -144
  22. package/packages/data-table/index.js +5 -5
  23. package/packages/data-table/src/children.vue +39 -39
  24. package/packages/data-table/src/column.vue +989 -989
  25. package/packages/data-table/src/main.vue +1822 -1822
  26. package/packages/data-table/src/sizer.vue +195 -195
  27. package/packages/data-table-form/index.js +5 -5
  28. package/packages/data-table-form/src/checkbox.vue +101 -101
  29. package/packages/data-table-form/src/colgroup.vue +17 -17
  30. package/packages/data-table-form/src/main.vue +181 -181
  31. package/packages/data-table-form/src/radio.vue +65 -65
  32. package/packages/data-table-form/src/table.vue +233 -233
  33. package/packages/data-table-form/src/tbody.vue +336 -336
  34. package/packages/data-table-form/src/thead.vue +68 -68
  35. package/packages/date-picker/index.js +5 -5
  36. package/packages/date-picker/src/main.vue +236 -236
  37. package/packages/dialog/index.js +5 -5
  38. package/packages/enable-drag/index.js +5 -5
  39. package/packages/enterprise/index.js +5 -5
  40. package/packages/enterprise/src/main.vue +66 -66
  41. package/packages/error-page/index.js +5 -5
  42. package/packages/error-page/src/main.vue +44 -44
  43. package/packages/flow/index.js +5 -5
  44. package/packages/flow/src/component/CommonOpinions.vue +345 -345
  45. package/packages/flow/src/component/CustomPreset.vue +322 -322
  46. package/packages/flow/src/component/FileList.vue +99 -99
  47. package/packages/flow/src/component/Preset.vue +255 -255
  48. package/packages/flow/src/component/SendMsg.vue +229 -229
  49. package/packages/flow/src/component/TimeLimit.vue +190 -190
  50. package/packages/flow/src/component/taskUnionExamine.vue +611 -611
  51. package/packages/flow/src/form.vue +121 -121
  52. package/packages/flow/src/freeStartFlow.vue +2843 -2843
  53. package/packages/flow/src/main.vue +3131 -3108
  54. package/packages/flow/src/processForm.vue +1031 -1031
  55. package/packages/flow/src/processReject.vue +293 -293
  56. package/packages/flow/src/reset.vue +902 -902
  57. package/packages/flow/src/startTaskRead.vue +597 -597
  58. package/packages/flow/src/supervise.vue +138 -138
  59. package/packages/flow/src/table.vue +58 -58
  60. package/packages/flow-group/index.js +5 -5
  61. package/packages/flow-group/src/main.vue +688 -688
  62. package/packages/flow-list/index.js +5 -5
  63. package/packages/flow-list/src/main.vue +1434 -1411
  64. package/packages/form/index.js +5 -5
  65. package/packages/form/src/main.vue +3583 -3583
  66. package/packages/form/src/table.vue +1426 -1426
  67. package/packages/handle-user/index.js +5 -5
  68. package/packages/handle-user/src/main.vue +138 -138
  69. package/packages/handler/index.js +5 -5
  70. package/packages/handler/src/main.vue +493 -493
  71. package/packages/icon/index.js +5 -5
  72. package/packages/icon/src/main.vue +101 -101
  73. package/packages/icons/index.js +5 -5
  74. package/packages/icons/src/main.vue +81 -81
  75. package/packages/input/index.js +5 -5
  76. package/packages/input/src/main.vue +356 -356
  77. package/packages/input-number/index.js +5 -5
  78. package/packages/input-number/src/main.vue +106 -106
  79. package/packages/label/index.js +5 -5
  80. package/packages/label/src/main.vue +457 -457
  81. package/packages/layout/index.js +5 -5
  82. package/packages/layout/src/item.vue +152 -152
  83. package/packages/layout/src/main.vue +31 -31
  84. package/packages/login/index.js +5 -5
  85. package/packages/login/src/main.vue +1935 -1935
  86. package/packages/login/src/resetPassword.vue +562 -562
  87. package/packages/main/index.js +5 -5
  88. package/packages/main/src/default/message.vue +249 -249
  89. package/packages/main/src/default/notice.vue +157 -157
  90. package/packages/main/src/default/userinfo.vue +503 -503
  91. package/packages/main/src/public/online.vue +89 -89
  92. package/packages/main/src/public/search.vue +461 -461
  93. package/packages/main/src/public/settings.vue +221 -221
  94. package/packages/main/src/simplicity/apps.vue +388 -388
  95. package/packages/main/src/simplicity/avatar.vue +82 -82
  96. package/packages/main/src/simplicity/handler.vue +259 -259
  97. package/packages/main/src/simplicity/index.vue +2064 -2064
  98. package/packages/main/src/simplicity/lists.vue +84 -84
  99. package/packages/main/src/simplicity/menu-list.vue +128 -128
  100. package/packages/main/src/simplicity/message.vue +259 -259
  101. package/packages/main/src/simplicity/notice.vue +190 -190
  102. package/packages/main/src/simplicity/router-page.vue +45 -45
  103. package/packages/main/src/simplicity/sub-menu.vue +241 -241
  104. package/packages/main/src/simplicity/user.vue +257 -257
  105. package/packages/main/src/simplicity/userinfo.vue +312 -312
  106. package/packages/menu/index.js +5 -5
  107. package/packages/menu/src/main.vue +536 -536
  108. package/packages/nav/index.js +5 -5
  109. package/packages/nav/src/main.vue +351 -351
  110. package/packages/notify/index.js +5 -5
  111. package/packages/notify/src/main.vue +538 -538
  112. package/packages/page/index.js +5 -5
  113. package/packages/page/src/main.vue +167 -167
  114. package/packages/pagination/index.js +5 -5
  115. package/packages/pagination/src/main.vue +96 -96
  116. package/packages/player/index.js +5 -5
  117. package/packages/player/src/main.vue +194 -194
  118. package/packages/qr-code/index.js +5 -5
  119. package/packages/qr-code/src/main.vue +170 -170
  120. package/packages/radio-group/index.js +6 -6
  121. package/packages/radio-group/src/main.vue +319 -319
  122. package/packages/retrial-auth/index.js +5 -5
  123. package/packages/retrial-auth/src/main.vue +280 -280
  124. package/packages/select/index.js +5 -5
  125. package/packages/select/src/main.vue +775 -775
  126. package/packages/select-ganged/index.js +5 -5
  127. package/packages/select-ganged/src/main.vue +724 -724
  128. package/packages/selector/index.js +5 -5
  129. package/packages/selector/src/main.vue +687 -687
  130. package/packages/selector-panel/index.js +5 -5
  131. package/packages/selector-panel/src/main.vue +1027 -1027
  132. package/packages/selector-panel/src/selection.vue +177 -177
  133. package/packages/selector-panel/src/tree.vue +129 -129
  134. package/packages/sizer/index.js +5 -5
  135. package/packages/sizer/src/main.vue +254 -254
  136. package/packages/steps/index.js +5 -5
  137. package/packages/steps/src/main.vue +181 -181
  138. package/packages/switch/index.js +5 -5
  139. package/packages/switch/src/main.vue +154 -154
  140. package/packages/table-form/index.js +5 -5
  141. package/packages/tabs/index.js +5 -5
  142. package/packages/tabs/src/main.vue +788 -788
  143. package/packages/tabs-panel/index.js +5 -5
  144. package/packages/tabs-panel/src/main.vue +29 -29
  145. package/packages/theme-chalk/src/base.scss +260 -260
  146. package/packages/theme-chalk/src/button-group.scss +175 -175
  147. package/packages/theme-chalk/src/button.scss +24 -24
  148. package/packages/theme-chalk/src/calendar.scss +113 -113
  149. package/packages/theme-chalk/src/card.scss +99 -99
  150. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  151. package/packages/theme-chalk/src/clients.scss +87 -87
  152. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  153. package/packages/theme-chalk/src/data-table.scss +293 -293
  154. package/packages/theme-chalk/src/date-picker.scss +7 -7
  155. package/packages/theme-chalk/src/dialog.scss +77 -77
  156. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  157. package/packages/theme-chalk/src/enterprise.scss +5 -5
  158. package/packages/theme-chalk/src/error-page.scss +18 -18
  159. package/packages/theme-chalk/src/flow-group.scss +110 -110
  160. package/packages/theme-chalk/src/flow-list.scss +36 -36
  161. package/packages/theme-chalk/src/flow.scss +335 -335
  162. package/packages/theme-chalk/src/form.scss +496 -496
  163. package/packages/theme-chalk/src/handle-user.scss +40 -40
  164. package/packages/theme-chalk/src/handler.scss +143 -143
  165. package/packages/theme-chalk/src/icon.scss +1789 -1789
  166. package/packages/theme-chalk/src/icons.scss +99 -99
  167. package/packages/theme-chalk/src/input.scss +9 -9
  168. package/packages/theme-chalk/src/label.scss +24 -24
  169. package/packages/theme-chalk/src/layout.scss +46 -46
  170. package/packages/theme-chalk/src/login.scss +969 -969
  171. package/packages/theme-chalk/src/main.scss +663 -663
  172. package/packages/theme-chalk/src/menu.scss +222 -222
  173. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  174. package/packages/theme-chalk/src/nav.scss +111 -111
  175. package/packages/theme-chalk/src/page.scss +3 -3
  176. package/packages/theme-chalk/src/pagination.scss +29 -29
  177. package/packages/theme-chalk/src/player.scss +9 -9
  178. package/packages/theme-chalk/src/qr-code.scss +17 -17
  179. package/packages/theme-chalk/src/radio-group.scss +9 -9
  180. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  181. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  182. package/packages/theme-chalk/src/select.scss +8 -8
  183. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  184. package/packages/theme-chalk/src/selector.scss +91 -91
  185. package/packages/theme-chalk/src/simplicity.scss +1265 -1265
  186. package/packages/theme-chalk/src/sizer.scss +36 -36
  187. package/packages/theme-chalk/src/steps.scss +88 -88
  188. package/packages/theme-chalk/src/switch.scss +3 -3
  189. package/packages/theme-chalk/src/table-form.scss +1 -1
  190. package/packages/theme-chalk/src/tabs.scss +87 -87
  191. package/packages/theme-chalk/src/tips.scss +7 -7
  192. package/packages/theme-chalk/src/toolbar.scss +179 -179
  193. package/packages/theme-chalk/src/tree-group.scss +72 -72
  194. package/packages/theme-chalk/src/tree.scss +165 -165
  195. package/packages/theme-chalk/src/upload.scss +167 -167
  196. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  197. package/packages/tips/index.js +5 -5
  198. package/packages/tips/src/main.vue +141 -141
  199. package/packages/toolbar/index.js +5 -5
  200. package/packages/toolbar/src/main.vue +430 -430
  201. package/packages/tree/index.js +5 -5
  202. package/packages/tree-group/index.js +5 -5
  203. package/packages/upload/index.js +5 -5
  204. package/packages/upload/src/main.vue +1339 -1335
  205. package/packages/upload/src/picture.js +15 -15
  206. package/packages/wujie/index.js +5 -5
  207. package/packages/wujie/src/main.vue +145 -145
  208. package/packages/wxlogin/index.js +5 -5
  209. package/packages/wxlogin/src/main.vue +128 -128
  210. package/src/config/api.js +281 -281
  211. package/src/config/image.js +2 -2
  212. package/src/index.js +1 -1
  213. package/src/utils/bus.js +3 -3
  214. package/src/utils/date-util.js +312 -312
  215. package/src/utils/http.js +50 -50
  216. package/src/utils/rules.js +18 -18
  217. package/src/utils/store.js +21 -21
  218. package/src/utils/webSocket.js +107 -107
@@ -1,221 +1,221 @@
1
- <template>
2
- <el-drawer
3
- title="设置"
4
- custom-class="es-sets-drawer"
5
- size="280px"
6
- :visible.sync="show"
7
- :append-to-body="true"
8
- >
9
- <div class="es-setting-item">
10
- <div class="es-setting-title">主题色</div>
11
- <el-radio-group
12
- v-if="themes"
13
- v-model="color"
14
- size="mini"
15
- class="es-setting-theme"
16
- @change="handleTheme"
17
- >
18
- <el-radio-button
19
- v-for="(item, index) in themes"
20
- :key="index"
21
- :label="index"
22
- :style="{ backgroundColor: item }"
23
- >
24
- <i class="el-icon-check"></i>
25
- </el-radio-button>
26
- </el-radio-group>
27
- <div class="es-color-picker" v-else>
28
- <el-color-picker
29
- v-model="color"
30
- :predefine="predefineColor"
31
- @change="handleTheme"
32
- ></el-color-picker>
33
- <div class="el-color-picker-tip">请不要选择偏白或者偏黑的颜色</div>
34
- </div>
35
- </div>
36
- <div class="es-setting-item">
37
- <div class="es-setting-title">菜单风格</div>
38
- <div class="es-setting-navs-box">
39
- <el-tooltip
40
- class="es-setting-navs-item"
41
- effect="dark"
42
- content="顶部菜单布局"
43
- placement="bottom"
44
- >
45
- <div
46
- class="es-setting-navs es-setting-top-nav"
47
- @click.stop="handleLayout('default', 'topnav')"
48
- >
49
- <i
50
- class="es-icon-gou"
51
- v-show="layoutType == 'default' && activeName == 'topnav'"
52
- ></i>
53
- </div>
54
- </el-tooltip>
55
- <el-tooltip
56
- class="es-setting-navs-item"
57
- effect="dark"
58
- content="侧边双列菜单布局"
59
- placement="bottom"
60
- >
61
- <div
62
- class="es-setting-navs es-setting-side-nav"
63
- @click.stop="handleLayout('default', 'default')"
64
- >
65
- <div class="es-setting-side-sub-nav"></div>
66
- <i
67
- class="es-icon-gou"
68
- v-show="layoutType == 'default' && activeName == 'default'"
69
- ></i>
70
- </div>
71
- </el-tooltip>
72
- <el-tooltip
73
- class="es-setting-navs-item"
74
- effect="dark"
75
- content="子系统+侧边菜单布局"
76
- placement="bottom"
77
- >
78
- <div
79
- class="es-setting-navs es-setting-subsystem-nav"
80
- @click.stop="handleLayout('default', 'subsystem')"
81
- >
82
- <i
83
- class="es-icon-gou"
84
- v-show="layoutType == 'default' && activeName == 'subsystem'"
85
- ></i>
86
- </div>
87
- </el-tooltip>
88
- <el-tooltip
89
- class="es-setting-navs-item"
90
- effect="dark"
91
- content="顶部+侧边菜单布局"
92
- placement="bottom"
93
- >
94
- <div
95
- class="es-setting-navs es-setting-top-side-nav"
96
- @click.stop="handleLayout('default', 'topside')"
97
- >
98
- <i
99
- class="es-icon-gou"
100
- v-show="layoutType == 'default' && activeName == 'topside'"
101
- ></i>
102
- </div>
103
- </el-tooltip>
104
- <el-tooltip
105
- class="es-setting-navs-item"
106
- effect="dark"
107
- content="侧边+按钮菜单布局"
108
- placement="bottom"
109
- >
110
- <div
111
- class="es-setting-navs es-setting-side-navs"
112
- @click.stop="handleLayout('default', 'side')"
113
- >
114
- <i
115
- class="es-icon-gou"
116
- v-show="layoutType == 'default' && activeName == 'side'"
117
- ></i>
118
- </div>
119
- </el-tooltip>
120
- <el-tooltip
121
- class="es-setting-navs-item"
122
- effect="dark"
123
- content="(新)应用菜单布局"
124
- placement="bottom"
125
- >
126
- <div
127
- class="es-setting-navs es-setting-app-nav"
128
- @click.stop="handleLayout('simplicity')"
129
- >
130
- <div class="es-setting-side-sub-nav"></div>
131
- <i
132
- class="es-icon-gou"
133
- v-show="layoutType == 'simplicity' && activeName == 'simplicity'"
134
- ></i>
135
- </div>
136
- </el-tooltip>
137
- </div>
138
- </div>
139
- </el-drawer>
140
- </template>
141
- <script>
142
- import util from 'eoss-ui/src/utils/util';
143
- export default {
144
- name: 'message',
145
- props: {
146
- visible: Boolean,
147
- //主题颜色选择颜色集合
148
- themes: Array,
149
- //默认主题色
150
- theme: String,
151
- //颜色板预设颜色
152
- predefine: {
153
- type: Array,
154
- default() {
155
- return ['#a60006', '#409eff'];
156
- }
157
- },
158
- active: String,
159
- layoutType: String
160
- },
161
- computed: {
162
- show: {
163
- get() {
164
- return this.visible;
165
- },
166
- set(val) {
167
- this.$emit('update:visible', val);
168
- }
169
- },
170
- //颜色板预设颜色
171
- predefineColor() {
172
- if (
173
- this.theme &&
174
- this.predefine.indexOf(this.theme.toLowerCase()) === -1
175
- ) {
176
- let arry = this.predefine;
177
- arry.push(this.theme);
178
- return arry;
179
- }
180
- return this.predefine;
181
- }
182
- },
183
- watch: {
184
- theme: {
185
- immediate: true,
186
- handler(val) {
187
- if (val) {
188
- this.color = val;
189
- }
190
- }
191
- }
192
- },
193
- data() {
194
- return {
195
- color: '',
196
- layoutName: this.layoutType,
197
- activeName: this.active
198
- };
199
- },
200
- mounted() {},
201
- methods: {
202
- //选择主题颜色
203
- handleTheme(res) {
204
- res = res.toLowerCase();
205
- // const rgb = util.getRgb(res);
206
- // const luma = 0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2];
207
- util.updateTheme(res);
208
- this.color = res;
209
- this.$emit('change', { type: 'theme', value: res });
210
- //this.setTheme(res);
211
- },
212
- //选择菜单布局
213
- handleLayout(res, active) {
214
- let old = this.activeName;
215
- this.layoutName = res;
216
- this.activeName = active;
217
- this.$emit('layout', res, active, old);
218
- }
219
- }
220
- };
221
- </script>
1
+ <template>
2
+ <el-drawer
3
+ title="设置"
4
+ custom-class="es-sets-drawer"
5
+ size="280px"
6
+ :visible.sync="show"
7
+ :append-to-body="true"
8
+ >
9
+ <div class="es-setting-item">
10
+ <div class="es-setting-title">主题色</div>
11
+ <el-radio-group
12
+ v-if="themes"
13
+ v-model="color"
14
+ size="mini"
15
+ class="es-setting-theme"
16
+ @change="handleTheme"
17
+ >
18
+ <el-radio-button
19
+ v-for="(item, index) in themes"
20
+ :key="index"
21
+ :label="index"
22
+ :style="{ backgroundColor: item }"
23
+ >
24
+ <i class="el-icon-check"></i>
25
+ </el-radio-button>
26
+ </el-radio-group>
27
+ <div class="es-color-picker" v-else>
28
+ <el-color-picker
29
+ v-model="color"
30
+ :predefine="predefineColor"
31
+ @change="handleTheme"
32
+ ></el-color-picker>
33
+ <div class="el-color-picker-tip">请不要选择偏白或者偏黑的颜色</div>
34
+ </div>
35
+ </div>
36
+ <div class="es-setting-item">
37
+ <div class="es-setting-title">菜单风格</div>
38
+ <div class="es-setting-navs-box">
39
+ <el-tooltip
40
+ class="es-setting-navs-item"
41
+ effect="dark"
42
+ content="顶部菜单布局"
43
+ placement="bottom"
44
+ >
45
+ <div
46
+ class="es-setting-navs es-setting-top-nav"
47
+ @click.stop="handleLayout('default', 'topnav')"
48
+ >
49
+ <i
50
+ class="es-icon-gou"
51
+ v-show="layoutType == 'default' && activeName == 'topnav'"
52
+ ></i>
53
+ </div>
54
+ </el-tooltip>
55
+ <el-tooltip
56
+ class="es-setting-navs-item"
57
+ effect="dark"
58
+ content="侧边双列菜单布局"
59
+ placement="bottom"
60
+ >
61
+ <div
62
+ class="es-setting-navs es-setting-side-nav"
63
+ @click.stop="handleLayout('default', 'default')"
64
+ >
65
+ <div class="es-setting-side-sub-nav"></div>
66
+ <i
67
+ class="es-icon-gou"
68
+ v-show="layoutType == 'default' && activeName == 'default'"
69
+ ></i>
70
+ </div>
71
+ </el-tooltip>
72
+ <el-tooltip
73
+ class="es-setting-navs-item"
74
+ effect="dark"
75
+ content="子系统+侧边菜单布局"
76
+ placement="bottom"
77
+ >
78
+ <div
79
+ class="es-setting-navs es-setting-subsystem-nav"
80
+ @click.stop="handleLayout('default', 'subsystem')"
81
+ >
82
+ <i
83
+ class="es-icon-gou"
84
+ v-show="layoutType == 'default' && activeName == 'subsystem'"
85
+ ></i>
86
+ </div>
87
+ </el-tooltip>
88
+ <el-tooltip
89
+ class="es-setting-navs-item"
90
+ effect="dark"
91
+ content="顶部+侧边菜单布局"
92
+ placement="bottom"
93
+ >
94
+ <div
95
+ class="es-setting-navs es-setting-top-side-nav"
96
+ @click.stop="handleLayout('default', 'topside')"
97
+ >
98
+ <i
99
+ class="es-icon-gou"
100
+ v-show="layoutType == 'default' && activeName == 'topside'"
101
+ ></i>
102
+ </div>
103
+ </el-tooltip>
104
+ <el-tooltip
105
+ class="es-setting-navs-item"
106
+ effect="dark"
107
+ content="侧边+按钮菜单布局"
108
+ placement="bottom"
109
+ >
110
+ <div
111
+ class="es-setting-navs es-setting-side-navs"
112
+ @click.stop="handleLayout('default', 'side')"
113
+ >
114
+ <i
115
+ class="es-icon-gou"
116
+ v-show="layoutType == 'default' && activeName == 'side'"
117
+ ></i>
118
+ </div>
119
+ </el-tooltip>
120
+ <el-tooltip
121
+ class="es-setting-navs-item"
122
+ effect="dark"
123
+ content="(新)应用菜单布局"
124
+ placement="bottom"
125
+ >
126
+ <div
127
+ class="es-setting-navs es-setting-app-nav"
128
+ @click.stop="handleLayout('simplicity')"
129
+ >
130
+ <div class="es-setting-side-sub-nav"></div>
131
+ <i
132
+ class="es-icon-gou"
133
+ v-show="layoutType == 'simplicity' && activeName == 'simplicity'"
134
+ ></i>
135
+ </div>
136
+ </el-tooltip>
137
+ </div>
138
+ </div>
139
+ </el-drawer>
140
+ </template>
141
+ <script>
142
+ import util from 'eoss-ui/src/utils/util';
143
+ export default {
144
+ name: 'message',
145
+ props: {
146
+ visible: Boolean,
147
+ //主题颜色选择颜色集合
148
+ themes: Array,
149
+ //默认主题色
150
+ theme: String,
151
+ //颜色板预设颜色
152
+ predefine: {
153
+ type: Array,
154
+ default() {
155
+ return ['#a60006', '#409eff'];
156
+ }
157
+ },
158
+ active: String,
159
+ layoutType: String
160
+ },
161
+ computed: {
162
+ show: {
163
+ get() {
164
+ return this.visible;
165
+ },
166
+ set(val) {
167
+ this.$emit('update:visible', val);
168
+ }
169
+ },
170
+ //颜色板预设颜色
171
+ predefineColor() {
172
+ if (
173
+ this.theme &&
174
+ this.predefine.indexOf(this.theme.toLowerCase()) === -1
175
+ ) {
176
+ let arry = this.predefine;
177
+ arry.push(this.theme);
178
+ return arry;
179
+ }
180
+ return this.predefine;
181
+ }
182
+ },
183
+ watch: {
184
+ theme: {
185
+ immediate: true,
186
+ handler(val) {
187
+ if (val) {
188
+ this.color = val;
189
+ }
190
+ }
191
+ }
192
+ },
193
+ data() {
194
+ return {
195
+ color: '',
196
+ layoutName: this.layoutType,
197
+ activeName: this.active
198
+ };
199
+ },
200
+ mounted() {},
201
+ methods: {
202
+ //选择主题颜色
203
+ handleTheme(res) {
204
+ res = res.toLowerCase();
205
+ // const rgb = util.getRgb(res);
206
+ // const luma = 0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2];
207
+ util.updateTheme(res);
208
+ this.color = res;
209
+ this.$emit('change', { type: 'theme', value: res });
210
+ //this.setTheme(res);
211
+ },
212
+ //选择菜单布局
213
+ handleLayout(res, active) {
214
+ let old = this.activeName;
215
+ this.layoutName = res;
216
+ this.activeName = active;
217
+ this.$emit('layout', res, active, old);
218
+ }
219
+ }
220
+ };
221
+ </script>