eoss 0.1.0-alpha.41 → 0.1.0-alpha.43

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 (358) hide show
  1. package/lib/0.js +1 -1
  2. package/lib/1.js +1 -1
  3. package/lib/10.js +1 -1
  4. package/lib/11.js +1 -1
  5. package/lib/12.js +1 -1
  6. package/lib/13.js +1 -1
  7. package/lib/14.js +1 -1
  8. package/lib/15.js +1 -1
  9. package/lib/16.js +1 -1
  10. package/lib/17.js +1 -1
  11. package/lib/18.js +1 -1
  12. package/lib/19.js +1 -1
  13. package/lib/20.js +1 -1
  14. package/lib/21.js +1 -1
  15. package/lib/22.js +1 -1
  16. package/lib/23.js +1 -1
  17. package/lib/24.js +1 -1
  18. package/lib/25.js +1 -1
  19. package/lib/26.js +1 -1
  20. package/lib/27.js +1 -1
  21. package/lib/28.js +1 -1
  22. package/lib/29.js +1 -1
  23. package/lib/3.js +1 -1
  24. package/lib/30.js +1 -1
  25. package/lib/31.js +1 -1
  26. package/lib/32.js +1 -1
  27. package/lib/33.js +1 -1
  28. package/lib/34.js +1 -1
  29. package/lib/35.js +1 -1
  30. package/lib/36.js +1 -1
  31. package/lib/37.js +1 -1
  32. package/lib/38.js +1 -1
  33. package/lib/39.js +1 -1
  34. package/lib/4.js +1 -1
  35. package/lib/40.js +1 -1
  36. package/lib/41.js +1 -1
  37. package/lib/42.js +1 -1
  38. package/lib/43.js +1 -1
  39. package/lib/44.js +1 -1
  40. package/lib/45.js +1 -1
  41. package/lib/46.js +1 -1
  42. package/lib/47.js +1 -1
  43. package/lib/48.js +1 -1
  44. package/lib/49.js +1 -1
  45. package/lib/5.js +1 -1
  46. package/lib/50.js +1 -1
  47. package/lib/51.js +1 -1
  48. package/lib/52.js +1 -1
  49. package/lib/53.js +1 -1
  50. package/lib/54.js +1 -1
  51. package/lib/55.js +1 -1
  52. package/lib/56.js +1 -1
  53. package/lib/57.js +1 -1
  54. package/lib/58.js +1 -1
  55. package/lib/59.js +1 -1
  56. package/lib/6.js +1 -1
  57. package/lib/60.js +1 -1
  58. package/lib/61.js +1 -1
  59. package/lib/62.js +1 -1
  60. package/lib/63.js +1 -1
  61. package/lib/64.js +1 -1
  62. package/lib/65.js +1 -1
  63. package/lib/66.js +1 -1
  64. package/lib/67.js +1 -1
  65. package/lib/68.js +1 -1
  66. package/lib/69.js +1 -1
  67. package/lib/7.js +1 -1
  68. package/lib/70.js +1 -1
  69. package/lib/71.js +1 -1
  70. package/lib/72.js +1 -1
  71. package/lib/73.js +1 -1
  72. package/lib/74.js +1 -1
  73. package/lib/75.js +1 -1
  74. package/lib/76.js +1 -1
  75. package/lib/77.js +1 -1
  76. package/lib/78.js +1 -1
  77. package/lib/79.js +1 -1
  78. package/lib/8.js +1 -1
  79. package/lib/80.js +1 -1
  80. package/lib/81.js +1 -1
  81. package/lib/9.js +1 -1
  82. package/lib/account-login.js +1446 -1354
  83. package/lib/alert.js +2 -2
  84. package/lib/aside.js +2 -2
  85. package/lib/audit-trajectory.js +183 -160
  86. package/lib/autocomplete.js +2852 -2583
  87. package/lib/avatar.js +2 -2
  88. package/lib/backtop.js +4 -4
  89. package/lib/badge.js +2 -2
  90. package/lib/breadcrumb-item.js +4 -4
  91. package/lib/breadcrumb.js +4 -4
  92. package/lib/button-group.js +4 -4
  93. package/lib/button.js +2 -2
  94. package/lib/ca-login.js +1216 -1147
  95. package/lib/calendar.js +864 -839
  96. package/lib/card.js +2 -2
  97. package/lib/carousel-item.js +1199 -1130
  98. package/lib/carousel.js +1201 -1132
  99. package/lib/cascader-panel.js +1286 -1170
  100. package/lib/cascader.js +3309 -2976
  101. package/lib/checkbox-button.js +4 -4
  102. package/lib/checkbox-group.js +1670 -1388
  103. package/lib/checkbox.js +9 -7
  104. package/lib/code-editor.js +4 -4
  105. package/lib/col.js +2 -2
  106. package/lib/collapse-item.js +1258 -1191
  107. package/lib/collapse.js +1251 -1184
  108. package/lib/color-picker.js +1506 -1329
  109. package/lib/config/api.js +17 -1
  110. package/lib/container.js +2 -2
  111. package/lib/cron.js +22 -22
  112. package/lib/data-table.js +1677 -1359
  113. package/lib/date-picker.js +2707 -2466
  114. package/lib/descriptions-item.js +4 -4
  115. package/lib/descriptions.js +4 -4
  116. package/lib/dialog.js +1213 -1144
  117. package/lib/divider.js +2 -2
  118. package/lib/drawer.js +9 -9
  119. package/lib/dropdown-item.js +6 -6
  120. package/lib/dropdown-menu.js +1415 -1265
  121. package/lib/dropdown.js +1219 -1150
  122. package/lib/email-login.js +1446 -1354
  123. package/lib/empty.js +2 -2
  124. package/lib/eoss.common.js +31462 -18205
  125. package/lib/flip.js +2 -2
  126. package/lib/flow-group.js +4578 -3381
  127. package/lib/flow-list.js +9566 -0
  128. package/lib/flow.js +19284 -10275
  129. package/lib/flows.js +1483 -1391
  130. package/lib/footer.js +2 -2
  131. package/lib/form-editor.js +2825 -2035
  132. package/lib/form-item.js +1368 -1192
  133. package/lib/form.js +2297 -2036
  134. package/lib/guide.js +2 -2
  135. package/lib/header.js +2 -2
  136. package/lib/icon.js +1384 -1292
  137. package/lib/icons.js +145 -99
  138. package/lib/image-viewer.js +1204 -1135
  139. package/lib/image.js +6 -6
  140. package/lib/index.js +1 -1
  141. package/lib/infinite-scroll.js +4 -4
  142. package/lib/input-number.js +169 -122
  143. package/lib/input.js +1399 -1325
  144. package/lib/link.js +2 -2
  145. package/lib/loading.js +11 -11
  146. package/lib/login.js +1486 -1389
  147. package/lib/lowcode-view.js +1618 -1526
  148. package/lib/lowcode.js +1620 -1586
  149. package/lib/main.js +2062 -1982
  150. package/lib/marquee.js +1202 -1133
  151. package/lib/menu-item-group.js +8 -8
  152. package/lib/menu-item.js +6 -6
  153. package/lib/menu.js +2698 -2479
  154. package/lib/message-box.js +1893 -1824
  155. package/lib/message.js +1782 -1713
  156. package/lib/notification.js +1783 -1714
  157. package/lib/option-group.js +16 -7
  158. package/lib/option.js +1223 -1146
  159. package/lib/page-header.js +2 -2
  160. package/lib/pagination.js +1207 -1138
  161. package/lib/phone-login.js +1441 -1352
  162. package/lib/popconfirm.js +7 -7
  163. package/lib/popover.js +2668 -2449
  164. package/lib/process-config.js +1508 -1416
  165. package/lib/process-module.js +1453 -1361
  166. package/lib/process-rule.js +1473 -1381
  167. package/lib/progress.js +2 -2
  168. package/lib/qr-code.js +4 -4
  169. package/lib/qrcode-login.js +1434 -1342
  170. package/lib/radio-button.js +14 -7
  171. package/lib/radio-group.js +1696 -1383
  172. package/lib/radio.js +31 -9
  173. package/lib/rate.js +1286 -1182
  174. package/lib/retrial-auth.js +1444 -1352
  175. package/lib/row.js +2 -2
  176. package/lib/scrollbar.js +1205 -1136
  177. package/lib/select.js +4176 -3717
  178. package/lib/selector-panel.js +2081 -1623
  179. package/lib/selector.js +2582 -2468
  180. package/lib/slider.js +149 -109
  181. package/lib/step.js +28 -30
  182. package/lib/steps.js +2353 -2278
  183. package/lib/submenu.js +1399 -1249
  184. package/lib/switch.js +1337 -1217
  185. package/lib/tab-pane.js +4 -4
  186. package/lib/table-column.js +1208 -1139
  187. package/lib/table.js +3791 -3476
  188. package/lib/tabs.js +1202 -1133
  189. package/lib/tag.js +2 -2
  190. package/lib/theme-chalk/autocomplete.css +1 -1
  191. package/lib/theme-chalk/base.css +1 -1
  192. package/lib/theme-chalk/cascader.css +1 -1
  193. package/lib/theme-chalk/checkbox-group.css +1 -1
  194. package/lib/theme-chalk/collapse.css +1 -1
  195. package/lib/theme-chalk/date-picker.css +1 -1
  196. package/lib/theme-chalk/flow copy.css +1 -0
  197. package/lib/theme-chalk/flow-group.css +1 -1
  198. package/lib/theme-chalk/flow-list.css +1 -0
  199. package/lib/theme-chalk/flow.css +1 -1
  200. package/lib/theme-chalk/form-editor.css +1 -1
  201. package/lib/theme-chalk/form.css +1 -1
  202. package/lib/theme-chalk/icons.css +1 -1
  203. package/lib/theme-chalk/index.css +1 -1
  204. package/lib/theme-chalk/input-number.css +1 -1
  205. package/lib/theme-chalk/input.css +1 -1
  206. package/lib/theme-chalk/login.css +1 -1
  207. package/lib/theme-chalk/main.css +1 -1
  208. package/lib/theme-chalk/message-box.css +1 -1
  209. package/lib/theme-chalk/pagination.css +1 -1
  210. package/lib/theme-chalk/radio-group.css +1 -1
  211. package/lib/theme-chalk/retrial-auth.css +1 -1
  212. package/lib/theme-chalk/select.css +1 -1
  213. package/lib/theme-chalk/selector.css +1 -1
  214. package/lib/theme-chalk/slider.css +1 -1
  215. package/lib/theme-chalk/switch.css +1 -1
  216. package/lib/theme-chalk/tabs.css +1 -1
  217. package/lib/theme-chalk/time-picker.css +1 -1
  218. package/lib/theme-chalk/transfer.css +1 -1
  219. package/lib/time-picker.js +2294 -2097
  220. package/lib/time-select.js +2286 -2089
  221. package/lib/timeline-item.js +2 -2
  222. package/lib/timeline.js +2 -2
  223. package/lib/tips.js +1429 -1337
  224. package/lib/toolbar.js +71 -48
  225. package/lib/tooltip.js +3277 -3058
  226. package/lib/transfer.js +1351 -1230
  227. package/lib/tree-group.js +1405 -1313
  228. package/lib/tree.js +2214 -2122
  229. package/lib/update-history.js +184 -161
  230. package/lib/upload.js +2432 -2384
  231. package/lib/utils/label.js +56 -0
  232. package/lib/utils/util.js +43 -1
  233. package/lib/wujie.js +1204 -1135
  234. package/package.json +5 -1
  235. package/packages/autocomplete/src/autocomplete.vue +88 -55
  236. package/packages/cascader/src/cascader.vue +166 -99
  237. package/packages/cascader-panel/src/node.js +31 -16
  238. package/packages/cascader-panel/src/store.js +26 -12
  239. package/packages/checkbox/src/checkbox-group.vue +93 -1
  240. package/packages/checkbox/src/checkbox.vue +4 -1
  241. package/packages/color-picker/src/color-picker.vue +279 -261
  242. package/packages/data-table/src/data-table.vue +104 -12
  243. package/packages/data-table/src/mixins/table-methods.js +118 -0
  244. package/packages/date-picker/src/picker.vue +17 -1
  245. package/packages/dialog/src/dialog.vue +2 -2
  246. package/packages/flow/src/component/Circulate.vue +59 -93
  247. package/packages/flow/src/component/CommonOpinions.vue +390 -0
  248. package/packages/flow/src/component/CustomPreset.vue +18 -25
  249. package/packages/flow/src/component/FileList.vue +11 -28
  250. package/packages/flow/src/component/FreeCirculation.vue +48 -59
  251. package/packages/flow/src/component/Preset.vue +10 -25
  252. package/packages/flow/src/component/SendMsg.vue +22 -71
  253. package/packages/flow/src/component/SortFlow.vue +115 -0
  254. package/packages/flow/src/component/TimeLimit.vue +20 -36
  255. package/packages/flow/src/component/opinions.vue +160 -108
  256. package/packages/flow/src/component/taskUnionExamine.vue +143 -145
  257. package/packages/flow/src/flow.vue +4598 -0
  258. package/packages/flow/src/form.vue +14 -20
  259. package/packages/flow/src/freeStartFlow.vue +196 -222
  260. package/packages/flow/src/main.vue +877 -618
  261. package/packages/flow/src/processForm.vue +789 -177
  262. package/packages/flow/src/processReject.vue +87 -83
  263. package/packages/flow/src/reset.vue +71 -70
  264. package/packages/flow/src/selectUser.vue +94 -85
  265. package/packages/flow/src/startTaskRead.vue +150 -156
  266. package/packages/flow/src/supervise.vue +44 -64
  267. package/packages/flow/src/table.vue +2 -10
  268. package/packages/flow-group/src/attachment.js +78 -0
  269. package/packages/flow-group/src/flow-item.vue +250 -0
  270. package/packages/flow-group/src/main.vue +151 -416
  271. package/packages/flow-list/index.js +5 -0
  272. package/packages/flow-list/src/main.vue +2432 -0
  273. package/packages/flowOld/index.js +7 -0
  274. package/packages/flowOld/src/component/Circulate.vue +464 -0
  275. package/packages/flowOld/src/component/CustomPreset.vue +343 -0
  276. package/packages/flowOld/src/component/FileList.vue +117 -0
  277. package/packages/flowOld/src/component/FreeCirculation.vue +278 -0
  278. package/packages/flowOld/src/component/Preset.vue +283 -0
  279. package/packages/flowOld/src/component/SendMsg.vue +309 -0
  280. package/packages/flowOld/src/component/TimeLimit.vue +223 -0
  281. package/packages/flowOld/src/component/opinions-file.vue +126 -0
  282. package/packages/flowOld/src/component/opinions.vue +429 -0
  283. package/packages/flowOld/src/component/taskUnionExamine.vue +832 -0
  284. package/packages/flowOld/src/form.vue +134 -0
  285. package/packages/flowOld/src/freeStartFlow.vue +2945 -0
  286. package/packages/flowOld/src/main.vue +4141 -0
  287. package/packages/flowOld/src/processForm.vue +1431 -0
  288. package/packages/flowOld/src/processReject.vue +338 -0
  289. package/packages/flowOld/src/reset.vue +964 -0
  290. package/packages/flowOld/src/selectUser.vue +520 -0
  291. package/packages/flowOld/src/startTaskRead.vue +737 -0
  292. package/packages/flowOld/src/supervise.vue +197 -0
  293. package/packages/flowOld/src/table.vue +71 -0
  294. package/packages/form/src/collapse.vue +40 -59
  295. package/packages/form/src/form-item-render.vue +117 -13
  296. package/packages/form/src/form-item.vue +121 -22
  297. package/packages/form/src/form.vue +62 -59
  298. package/packages/form/src/label-wrap.vue +5 -4
  299. package/packages/form/src/steps.vue +5 -8
  300. package/packages/form-editor/src/components.js +1077 -145
  301. package/packages/form-editor/src/form-editor.vue +94 -80
  302. package/packages/form-editor/src/props-panel.vue +59 -12
  303. package/packages/icons/src/icons.vue +91 -51
  304. package/packages/input/src/input.vue +787 -783
  305. package/packages/input-number/src/input-number.vue +58 -39
  306. package/packages/login/src/login.vue +9 -1
  307. package/packages/lowcode/src/util/components.js +64 -149
  308. package/packages/main/src/components/pages.vue +6 -42
  309. package/packages/main/src/minxs.js +26 -14
  310. package/packages/pagination/src/pagination.js +4 -4
  311. package/packages/phone-login/src/phone-login.vue +1 -4
  312. package/packages/process-rule/src/main.vue +10 -10
  313. package/packages/radio/src/radio-button.vue +10 -1
  314. package/packages/radio/src/radio-group.vue +110 -1
  315. package/packages/radio/src/radio.vue +32 -4
  316. package/packages/rate/src/rate.vue +49 -26
  317. package/packages/retrial-auth/src/main.vue +12 -12
  318. package/packages/select/src/option-group.vue +9 -1
  319. package/packages/select/src/option.vue +9 -1
  320. package/packages/select/src/select.vue +286 -224
  321. package/packages/selector/src/selector.vue +93 -85
  322. package/packages/selector-panel/src/mixin.js +0 -1
  323. package/packages/selector-panel/src/selection.vue +16 -8
  324. package/packages/selector-panel/src/selector-panel.vue +30 -19
  325. package/packages/slider/src/slider.vue +90 -64
  326. package/packages/steps/src/steps.vue +8 -6
  327. package/packages/switch/src/switch.vue +81 -56
  328. package/packages/table/src/store/index.js +3 -3
  329. package/packages/table/src/table.vue +69 -6
  330. package/packages/theme-chalk/src/autocomplete.scss +1 -1
  331. package/packages/theme-chalk/src/base.scss +16 -0
  332. package/packages/theme-chalk/src/cascader.scss +2 -0
  333. package/packages/theme-chalk/src/checkbox-group.scss +2 -0
  334. package/packages/theme-chalk/src/collapse.scss +2 -6
  335. package/packages/theme-chalk/src/common/var.scss +2 -2
  336. package/packages/theme-chalk/src/flow copy.scss +664 -0
  337. package/packages/theme-chalk/src/flow-group.scss +9 -14
  338. package/packages/theme-chalk/src/flow-list.scss +61 -0
  339. package/packages/theme-chalk/src/flow.scss +244 -360
  340. package/packages/theme-chalk/src/form-editor.scss +14 -5
  341. package/packages/theme-chalk/src/form.scss +26 -2
  342. package/packages/theme-chalk/src/icons.scss +30 -24
  343. package/packages/theme-chalk/src/index.scss +1 -0
  344. package/packages/theme-chalk/src/input.scss +6 -0
  345. package/packages/theme-chalk/src/radio-group.scss +3 -2
  346. package/packages/theme-chalk/src/retrial-auth.scss +3 -3
  347. package/packages/theme-chalk/src/selector.scss +14 -1
  348. package/packages/theme-chalk/src/switch.scss +1 -1
  349. package/packages/theme-chalk/src/tabs.scss +2 -5
  350. package/packages/toolbar/src/toolbar.vue +51 -18
  351. package/packages/transfer/src/transfer.vue +79 -40
  352. package/packages/upload/src/index.vue +1531 -1572
  353. package/packages/upload/src/upload.vue +0 -1
  354. package/src/components/field-render.vue +10 -7
  355. package/src/config/api.js +19 -0
  356. package/src/index.js +345 -342
  357. package/src/utils/label.js +53 -0
  358. package/src/utils/util.js +39 -0
@@ -57,6 +57,14 @@
57
57
  }
58
58
  }
59
59
 
60
+ @include e(palette-empty) {
61
+ padding: 16px 4px;
62
+ font-size: 12px;
63
+ color: #909399;
64
+ text-align: center;
65
+ user-select: none;
66
+ }
67
+
60
68
  @include e(main) {
61
69
  flex: 1;
62
70
  display: flex;
@@ -110,6 +118,7 @@
110
118
  @include e(field) {
111
119
  position: relative;
112
120
  cursor: move;
121
+ border-radius: $--border-radius-base;
113
122
  &::before {
114
123
  display: block;
115
124
  position: absolute;
@@ -151,11 +160,11 @@
151
160
 
152
161
  @include e(field-remove) {
153
162
  position: absolute !important;
154
- top: 2px;
163
+ top: 0;
155
164
  right: 4px;
156
165
  display: none;
157
166
  z-index: 2;
158
- color: #f56c6c;
167
+ color: #f56c6c !important;
159
168
  }
160
169
 
161
170
  /* 列宽拖拽手柄:贴字段左右缘,向对应方向拖动按列取整改 span */
@@ -167,7 +176,6 @@
167
176
  display: none;
168
177
  z-index: 2;
169
178
  cursor: col-resize;
170
- color: $--color-primary;
171
179
  text-align: center;
172
180
 
173
181
  &::before {
@@ -179,7 +187,7 @@
179
187
  }
180
188
 
181
189
  &.is-right {
182
- right: -5px;
190
+ right: 0;
183
191
  }
184
192
  }
185
193
 
@@ -209,6 +217,7 @@
209
217
  @include e(panel-title) {
210
218
  padding: 12px;
211
219
  font-size: 13px;
220
+ line-height: 20px;
212
221
  color: #303133;
213
222
  border-bottom: 1px solid #e4e7ed;
214
223
  }
@@ -228,7 +237,7 @@
228
237
  }
229
238
  /* JSON 编辑弹窗内的 monaco 编辑器:EsCodeEditor 根容器需外层撑高 */
230
239
  @include e(json-editor) {
231
- height: calc(100vh - 220px);
240
+ height: 100%;
232
241
  display: flex;
233
242
  flex-direction: column;
234
243
 
@@ -10,7 +10,7 @@
10
10
  }
11
11
  }
12
12
  @include m(label-top) {
13
- & .es-form-item__label {
13
+ & .es-form-item__label:not(.is-left) {
14
14
  float: none;
15
15
  display: inline-block;
16
16
  text-align: left;
@@ -51,6 +51,7 @@
51
51
  @include b(form-scroll) {
52
52
  width: 100%;
53
53
  height: 100%;
54
+ overflow-x: hidden;
54
55
  }
55
56
 
56
57
  @include b(form-content) {
@@ -90,6 +91,28 @@
90
91
  opacity: 1;
91
92
  }
92
93
  }
94
+ .es-collapse-item__header {
95
+ color: $--color-primary;
96
+ position: relative;
97
+ padding-left: 10px;
98
+ &::before {
99
+ content: '';
100
+ position: absolute;
101
+ left: 0;
102
+ top: 50%;
103
+ margin-top: -9px;
104
+ width: 2px;
105
+ height: 16px;
106
+ background-color: $--color-primary;
107
+ }
108
+ }
109
+ .es-collapse-item__content {
110
+ padding-bottom: 0;
111
+ padding-right: 20px;
112
+ }
113
+ .es-collapse-item__wrap {
114
+ border: 0;
115
+ }
93
116
  }
94
117
  @include b(form-item) {
95
118
  margin-bottom: 22px;
@@ -214,6 +237,7 @@
214
237
 
215
238
  @include when(error) {
216
239
  & .es-input__inner,
240
+ & .es-selector,
217
241
  & .es-textarea__inner {
218
242
  &,
219
243
  &:focus {
@@ -239,7 +263,7 @@
239
263
  }
240
264
  @include b(form-buttons) {
241
265
  display: flex;
242
- align-items: center;
266
+ align-items: right;
243
267
  padding: 0 10px 16px 10px;
244
268
  @include m(inline) {
245
269
  height: auto;
@@ -1,41 +1,39 @@
1
1
  @import 'mixins/mixins.scss';
2
2
  @import 'common/var.scss';
3
3
  @include b(icons) {
4
- display: inline-block;
5
- position: relative;
6
- @include e(font) {
7
- color: #606266;
8
- font-size: 20px;
9
- position: absolute;
10
- top: 50%;
11
- left: 8px;
12
- transform: translateY(-50%);
4
+ .es-input__inner {
5
+ color: transparent;
6
+ }
7
+ @include when(readonly) {
8
+ .es-input__inner {
9
+ z-index: -1;
10
+ }
13
11
  }
14
- @include e(input) {
15
- z-index: -1;
12
+ @include when(focused) {
16
13
  .es-input__inner {
17
- color: transparent;
14
+ color: #333333;
18
15
  }
19
16
  }
20
- @include e(button) {
21
- position: absolute !important;
17
+ @include e(font) {
18
+ color: #606266;
19
+ font-size: 18px;
20
+ position: absolute;
22
21
  top: 50%;
23
- right: 6px;
22
+ left: 8px;
24
23
  transform: translateY(-50%);
24
+ font-style: normal;
25
25
  }
26
26
  @include e(scrollbar) {
27
- height: calc(100% - 50px);
27
+ height: calc(100% - 50px) !important;
28
28
  margin-top: 10px;
29
29
  }
30
30
  @include e(list) {
31
- clear: both;
32
- overflow: hidden;
33
- list-style: none;
34
- padding: 0 !important;
31
+ display: flex;
32
+ flex-wrap: wrap;
35
33
  border: 1px solid #eaeefb;
36
34
  border-radius: 4px;
37
- li {
38
- float: left;
35
+ min-height: 378px;
36
+ .es-icons__item {
39
37
  width: 20%;
40
38
  text-align: center;
41
39
  height: 120px;
@@ -44,9 +42,10 @@
44
42
  font-size: 13px;
45
43
  border-right: 1px solid #eee;
46
44
  border-bottom: 1px solid #eee;
47
- margin-right: -1px;
48
- margin-bottom: -1px;
49
45
  box-sizing: border-box;
46
+ &:nth-child(5n) {
47
+ border-right: 0;
48
+ }
50
49
  span {
51
50
  display: inline-block;
52
51
  line-height: normal;
@@ -75,5 +74,12 @@
75
74
  }
76
75
  }
77
76
  }
77
+ .no-result {
78
+ width: 100%;
79
+ text-align: center;
80
+ color: #99a9bf;
81
+ font-size: 14px;
82
+ margin-top: 20px;
83
+ }
78
84
  }
79
85
  }
@@ -43,6 +43,7 @@
43
43
  @import "./flow.scss";
44
44
  @import "./flows.scss";
45
45
  @import "./flow-group.scss";
46
+ @import "./flow-list.scss";
46
47
  @import "./form.scss";
47
48
  @import "./form-editor.scss";
48
49
  @import "./form-item.scss";
@@ -159,6 +159,9 @@
159
159
  transition: all 0.3s;
160
160
  pointer-events: none;
161
161
  z-index: 2;
162
+ display: flex;
163
+ align-items: center;
164
+ justify-content: center;
162
165
  }
163
166
 
164
167
  @include e(suffix-inner) {
@@ -179,6 +182,9 @@
179
182
  color: $--input-icon-color;
180
183
  transition: all 0.3s;
181
184
  z-index: 2;
185
+ display: flex;
186
+ align-items: center;
187
+ justify-content: center;
182
188
  }
183
189
 
184
190
  @include e(icon) {
@@ -3,10 +3,11 @@
3
3
 
4
4
  @include b(radio-group) {
5
5
  text-align: left;
6
- display: inline-block;
6
+ display: block;
7
7
  line-height: 1;
8
8
  vertical-align: middle;
9
- font-size: 0;
9
+ font-size: unset;
10
+ width: 100%;
10
11
  @include when(separate) {
11
12
  @include b(radio-button) {
12
13
  & + .es-radio-button {
@@ -1,10 +1,10 @@
1
1
  @import './common/var.scss';
2
2
  .es-retrial-auth-msg {
3
- .el-message-box__header {
3
+ .es-message-box__header {
4
4
  background-color: #eee;
5
5
  font-size: 14px !important;
6
6
  border-bottom: $--border-base;
7
- .el-message-box__title {
7
+ .es-message-box__title {
8
8
  font-size: 14px;
9
9
  line-height: 18px;
10
10
  }
@@ -14,7 +14,7 @@
14
14
  .es-retrial-auth-form {
15
15
  padding: 24px 12px 12px 12px;
16
16
  }
17
- .el-input__suffix {
17
+ .es-input__suffix {
18
18
  right: 0;
19
19
  }
20
20
  .es-button-submit {
@@ -9,6 +9,9 @@
9
9
  border-radius: $--border-radius-base;
10
10
  @include when(button) {
11
11
  border: 0;
12
+ .es-button {
13
+ padding: 6px 18px;
14
+ }
12
15
  }
13
16
  @include e(input) {
14
17
  position: absolute !important;
@@ -53,7 +56,7 @@
53
56
  @include e(tags) {
54
57
  max-width: 100%;
55
58
  position: relative;
56
- &::before {
59
+ &:not(.is-readonly)::before {
57
60
  content: '';
58
61
  display: block;
59
62
  height: 1px;
@@ -78,6 +81,16 @@
78
81
  .es-tag {
79
82
  margin-right: 4px;
80
83
  margin-bottom: 4px;
84
+ line-height: 26px;
85
+ }
86
+ @include when(readonly) {
87
+ @include m(wrapper) {
88
+ padding: 8px 12px;
89
+ line-height: 22px;
90
+ }
81
91
  }
82
92
  }
93
+ .es-field-readonly {
94
+ border: 0;
95
+ }
83
96
  }
@@ -2,7 +2,7 @@
2
2
  @import 'common/var.scss';
3
3
 
4
4
  @include b(switch) {
5
- display: inline-flex;
5
+ display: flex;
6
6
  align-items: center;
7
7
  position: relative;
8
8
  font-size: $--switch-font-size;
@@ -100,7 +100,7 @@
100
100
  position: absolute;
101
101
  cursor: pointer;
102
102
  line-height: 42px;
103
- font-size: 12px;
103
+ font-size: 14px;
104
104
  padding: 0 4px;
105
105
  color: $--color-text-secondary;
106
106
  }
@@ -187,7 +187,7 @@
187
187
  @include e(content) {
188
188
  overflow: hidden;
189
189
  position: relative;
190
- height: calc(100% - 48px);
190
+ height: calc(100% - 50px);
191
191
  }
192
192
  @include m(card) {
193
193
  > .es-tabs__header {
@@ -254,9 +254,6 @@
254
254
  border: 1px solid $--border-color-base;
255
255
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);
256
256
 
257
- > .es-tabs__content {
258
- padding: 12px;
259
- }
260
257
  > .es-tabs__header {
261
258
  background-color: $--background-color-base;
262
259
  border-bottom: 1px solid #fff;
@@ -63,7 +63,7 @@
63
63
  :item-class="itemClass"
64
64
  :inline="true"
65
65
  v-bind="searchs"
66
- v-model="model"
66
+ :model="model"
67
67
  @submit="handleSearch"
68
68
  @reset="handleReset"
69
69
  />
@@ -110,7 +110,7 @@
110
110
  :size="'medium'"
111
111
  :close-dialog="false"
112
112
  v-bind="filters"
113
- v-model="model"
113
+ :model="model"
114
114
  @submit="handleSubmit"
115
115
  @reset="handleCancel"
116
116
  ></es-form>
@@ -124,6 +124,19 @@ import Clickoutside from 'eoss/src/utils/clickoutside';
124
124
  import EsButton from 'eoss/packages/button';
125
125
  import EsButtonGroup from 'eoss/packages/button-group';
126
126
  import EsForm from 'eoss/packages/form';
127
+
128
+ /**
129
+ * 浅比较两份取值:键数相同且逐键 === 视为一致
130
+ * (判断本地副本是否已回写到父级,避免 input 与 value 同步成环)
131
+ */
132
+ function isSameValues(a, b) {
133
+ const source = a || {};
134
+ const target = b || {};
135
+ const sourceKeys = Object.keys(source);
136
+ if (sourceKeys.length !== Object.keys(target).length) return false;
137
+ return sourceKeys.every((key) => target[key] === source[key]);
138
+ }
139
+
127
140
  /**
128
141
  * Toolbar 工具栏组件
129
142
  * 用于构建包含按钮组、搜索表单、高级过滤和信息显示的工具栏
@@ -200,17 +213,6 @@ export default {
200
213
  }
201
214
  return '0';
202
215
  },
203
- /**
204
- * 绑定值的双向绑定
205
- */
206
- model: {
207
- get() {
208
- return this.value;
209
- },
210
- set(val) {
211
- return val;
212
- }
213
- },
214
216
  /**
215
217
  * 标签页菜单内容
216
218
  * @returns {Object} 标签页配置
@@ -274,7 +276,28 @@ export default {
274
276
  };
275
277
  }
276
278
  },
277
- watch: {},
279
+ watch: {
280
+ // 父级下发(含 v-model 回传)的取值变化时同步本地副本
281
+ value: {
282
+ immediate: true,
283
+ deep: true,
284
+ handler(val) {
285
+ const next = val || {};
286
+ // 自己回写引发的回流不同步:消费端(如 data-table)会把取值就地写进
287
+ // param/value,逐键同步会重建 model 并覆盖重置快照
288
+ if (isSameValues(next, this.model)) return;
289
+ this.initialValue = { ...next };
290
+ this.model = { ...next };
291
+ }
292
+ },
293
+ // 本地副本改动回写 v-model;已与父级取值一致时不发,避免两边同步成环
294
+ model: {
295
+ deep: true,
296
+ handler(val) {
297
+ if (!isSameValues(val, this.value)) this.$emit('input', { ...val });
298
+ }
299
+ }
300
+ },
278
301
  data() {
279
302
  return {
280
303
  /**
@@ -284,7 +307,17 @@ export default {
284
307
  /**
285
308
  * 工具栏高度,用于定位高级搜索面板
286
309
  */
287
- height: ''
310
+ height: '',
311
+ /**
312
+ * 搜索/高级搜索取值本地副本(响应式):es-form 只写这份,不直改父级传入的 value。
313
+ * 父级常用 computed 现建对象下发 param,Vue 不会 observe prop 对象(initProps 期间
314
+ * toggleObserving(false)),直接写入既不触发更新,父级重渲染还会把输入框打回原值
315
+ */
316
+ model: {},
317
+ /**
318
+ * value 最近一次同步的快照,重置时回落到这份
319
+ */
320
+ initialValue: {}
288
321
  };
289
322
  },
290
323
  /**
@@ -355,7 +388,7 @@ export default {
355
388
  */
356
389
  handleReset() {
357
390
  this.reset();
358
- this.$emit('reset', this.searchData);
391
+ this.$emit('reset', this.model);
359
392
  },
360
393
 
361
394
  /**
@@ -378,10 +411,10 @@ export default {
378
411
  this.show = !this.show;
379
412
  },
380
413
  /**
381
- * 重置表单
414
+ * 重置表单:回落到父级最近一次下发的取值快照
382
415
  */
383
416
  reset() {
384
- // 重置表单逻辑
417
+ this.model = { ...this.initialValue };
385
418
  }
386
419
  }
387
420
  };
@@ -1,47 +1,58 @@
1
1
  <template>
2
2
  <div class="es-transfer">
3
- <transfer-panel
4
- v-bind="$props"
5
- ref="leftPanel"
6
- :data="sourceData"
7
- :title="titles[0]"
8
- :default-checked="leftDefaultChecked"
9
- :placeholder="filterPlaceholder || '请输入搜索内容'"
10
- @checked-change="onSourceCheckedChange"
11
- >
12
- <slot name="left-footer"></slot>
13
- </transfer-panel>
14
- <div class="es-transfer__buttons">
15
- <es-button
16
- type="primary"
17
- :class="['es-transfer__button', hasButtonTexts ? 'is-with-texts' : '']"
18
- @click.native="addToLeft"
19
- :disabled="rightChecked.length === 0"
3
+ <div class="es-field-readonly" v-if="formReadonly">
4
+ {{ readonlyText }}
5
+ </div>
6
+ <template v-if="!formReadonly">
7
+ <transfer-panel
8
+ v-bind="$props"
9
+ ref="leftPanel"
10
+ :data="sourceData"
11
+ :title="titles[0]"
12
+ :default-checked="leftDefaultChecked"
13
+ :placeholder="filterPlaceholder || '请输入搜索内容'"
14
+ @checked-change="onSourceCheckedChange"
20
15
  >
21
- <i class="es-icon-zuo"></i>
22
- <span v-if="buttonTexts[0] !== undefined">{{ buttonTexts[0] }}</span>
23
- </es-button>
24
- <es-button
25
- type="primary"
26
- :class="['es-transfer__button', hasButtonTexts ? 'is-with-texts' : '']"
27
- @click.native="addToRight"
28
- :disabled="leftChecked.length === 0"
16
+ <slot name="left-footer"></slot>
17
+ </transfer-panel>
18
+ <div class="es-transfer__buttons">
19
+ <es-button
20
+ type="primary"
21
+ :class="[
22
+ 'es-transfer__button',
23
+ hasButtonTexts ? 'is-with-texts' : ''
24
+ ]"
25
+ @click.native="addToLeft"
26
+ :disabled="rightChecked.length === 0"
27
+ >
28
+ <i class="es-icon-zuo"></i>
29
+ <span v-if="buttonTexts[0] !== undefined">{{ buttonTexts[0] }}</span>
30
+ </es-button>
31
+ <es-button
32
+ type="primary"
33
+ :class="[
34
+ 'es-transfer__button',
35
+ hasButtonTexts ? 'is-with-texts' : ''
36
+ ]"
37
+ @click.native="addToRight"
38
+ :disabled="leftChecked.length === 0"
39
+ >
40
+ <span v-if="buttonTexts[1] !== undefined">{{ buttonTexts[1] }}</span>
41
+ <i class="es-icon-you"></i>
42
+ </es-button>
43
+ </div>
44
+ <transfer-panel
45
+ v-bind="$props"
46
+ ref="rightPanel"
47
+ :data="targetData"
48
+ :title="titles[1]"
49
+ :default-checked="rightDefaultChecked"
50
+ :placeholder="filterPlaceholder || '请输入搜索内容'"
51
+ @checked-change="onTargetCheckedChange"
29
52
  >
30
- <span v-if="buttonTexts[1] !== undefined">{{ buttonTexts[1] }}</span>
31
- <i class="es-icon-you"></i>
32
- </es-button>
33
- </div>
34
- <transfer-panel
35
- v-bind="$props"
36
- ref="rightPanel"
37
- :data="targetData"
38
- :title="titles[1]"
39
- :default-checked="rightDefaultChecked"
40
- :placeholder="filterPlaceholder || '请输入搜索内容'"
41
- @checked-change="onTargetCheckedChange"
42
- >
43
- <slot name="right-footer"></slot>
44
- </transfer-panel>
53
+ <slot name="right-footer"></slot>
54
+ </transfer-panel>
55
+ </template>
45
56
  </div>
46
57
  </template>
47
58
 
@@ -60,12 +71,25 @@ export default {
60
71
 
61
72
  mixins: [Emitter, Migrating],
62
73
 
74
+ inject: {
75
+ esForm: {
76
+ default: ''
77
+ }
78
+ },
79
+
63
80
  components: {
64
81
  TransferPanel,
65
82
  EsButton
66
83
  },
67
84
 
68
85
  props: {
86
+ /**
87
+ * 是否只读(渲染为只读文本,区别于 disabled 的禁用控件)
88
+ */
89
+ readonly: {
90
+ type: Boolean,
91
+ default: false
92
+ },
69
93
  /**
70
94
  * Transfer 的数据源
71
95
  */
@@ -184,6 +208,19 @@ export default {
184
208
  },
185
209
 
186
210
  computed: {
211
+ // 只读态:控件自身 readonly prop(field-render 原样下传)或 es-form readonly
212
+ formReadonly() {
213
+ return this.readonly || !!(this.esForm || {}).readonly;
214
+ },
215
+ /**
216
+ * 只读态展示文本:显示右侧(已选中)列表项的 label
217
+ * @returns {string} 以逗号拼接的选项文本
218
+ */
219
+ readonlyText() {
220
+ const label = this.props.label;
221
+ return this.targetData.map((item) => item[label]).join(', ');
222
+ },
223
+
187
224
  /**
188
225
  * 将数据源转换为对象,方便通过key查找
189
226
  * @returns {Object} 转换后的对象
@@ -280,6 +317,7 @@ export default {
280
317
  * 将右侧面板的项移到左侧
281
318
  */
282
319
  addToLeft() {
320
+ if (this.formReadonly) return;
283
321
  let currentValue = this.value.slice();
284
322
  this.rightChecked.forEach((item) => {
285
323
  const index = currentValue.indexOf(item);
@@ -295,6 +333,7 @@ export default {
295
333
  * 将左侧面板的项移到右侧
296
334
  */
297
335
  addToRight() {
336
+ if (this.formReadonly) return;
298
337
  let currentValue = this.value.slice();
299
338
  const itemsToBeMoved = [];
300
339
  const key = this.props.key;