vxe-table 3.5.9 → 3.6.0-beta.10

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 (142) hide show
  1. package/helper/vetur/attributes.json +17 -5
  2. package/helper/vetur/tags.json +10 -2
  3. package/lib/button/style/style.css +15 -63
  4. package/lib/button/style/style.min.css +1 -1
  5. package/lib/checkbox/src/checkbox.js +22 -9
  6. package/lib/checkbox/src/checkbox.min.js +1 -1
  7. package/lib/checkbox/src/group.js +13 -0
  8. package/lib/checkbox/src/group.min.js +1 -1
  9. package/lib/checkbox/style/style.css +37 -60
  10. package/lib/checkbox/style/style.min.css +1 -1
  11. package/lib/edit/src/mixin.js +10 -10
  12. package/lib/edit/src/mixin.min.js +1 -1
  13. package/lib/export/src/export-panel.js +10 -16
  14. package/lib/export/src/export-panel.min.js +1 -1
  15. package/lib/export/style/style.css +23 -92
  16. package/lib/export/style/style.min.css +1 -1
  17. package/lib/filter/src/panel.js +11 -15
  18. package/lib/filter/src/panel.min.js +1 -1
  19. package/lib/filter/style/style.css +24 -90
  20. package/lib/filter/style/style.min.css +1 -1
  21. package/lib/form/src/form.js +2 -2
  22. package/lib/form/src/form.min.js +1 -1
  23. package/lib/form/style/style.css +0 -3
  24. package/lib/form/style/style.min.css +1 -1
  25. package/lib/grid/style/style.css +1 -1
  26. package/lib/grid/style/style.min.css +1 -1
  27. package/lib/icon/index.js +10 -4
  28. package/lib/icon/index.min.js +1 -1
  29. package/lib/icon/src/icon.js +29 -0
  30. package/lib/icon/src/icon.min.js +1 -0
  31. package/lib/icon/style/style.css +453 -518
  32. package/lib/icon/style/style.min.css +1 -1
  33. package/lib/index.css +1 -1
  34. package/lib/index.umd.js +552 -445
  35. package/lib/index.umd.min.js +1 -1
  36. package/lib/input/src/input.js +3 -3
  37. package/lib/input/src/input.min.js +1 -1
  38. package/lib/input/style/style.css +18 -9
  39. package/lib/input/style/style.min.css +1 -1
  40. package/lib/list/src/list.js +1 -1
  41. package/lib/list/src/list.min.js +1 -1
  42. package/lib/loading/src/loading.js +19 -9
  43. package/lib/loading/src/loading.min.js +1 -1
  44. package/lib/locale/lang/en-US.js +1 -1
  45. package/lib/locale/lang/en-US.min.js +1 -1
  46. package/lib/locale/lang/en-US.umd.js +1 -1
  47. package/lib/locale/lang/ja-JP.js +1 -1
  48. package/lib/locale/lang/ja-JP.min.js +1 -1
  49. package/lib/locale/lang/ja-JP.umd.js +1 -1
  50. package/lib/locale/lang/zh-CN.js +1 -1
  51. package/lib/locale/lang/zh-CN.min.js +1 -1
  52. package/lib/locale/lang/zh-CN.umd.js +1 -1
  53. package/lib/locale/lang/zh-HK.min.js +1 -1
  54. package/lib/locale/lang/zh-HK.umd.js +1 -1
  55. package/lib/locale/lang/zh-MO.min.js +1 -1
  56. package/lib/locale/lang/zh-MO.umd.js +1 -1
  57. package/lib/locale/lang/zh-TC.js +1 -1
  58. package/lib/locale/lang/zh-TC.min.js +1 -1
  59. package/lib/locale/lang/zh-TC.umd.js +1 -1
  60. package/lib/locale/lang/zh-TW.min.js +1 -1
  61. package/lib/locale/lang/zh-TW.umd.js +1 -1
  62. package/lib/modal/src/modal.js +13 -6
  63. package/lib/modal/src/modal.min.js +1 -1
  64. package/lib/modal/style/style.css +22 -14
  65. package/lib/modal/style/style.min.css +1 -1
  66. package/lib/pager/style/style.css +4 -2
  67. package/lib/pager/style/style.min.css +1 -1
  68. package/lib/radio/src/radio.js +7 -5
  69. package/lib/radio/src/radio.min.js +1 -1
  70. package/lib/radio/style/style.css +32 -57
  71. package/lib/radio/style/style.min.css +1 -1
  72. package/lib/select/src/select.js +32 -3
  73. package/lib/select/src/select.min.js +1 -1
  74. package/lib/select/style/style.css +1 -0
  75. package/lib/select/style/style.min.css +1 -1
  76. package/lib/style.css +1 -1
  77. package/lib/style.min.css +1 -1
  78. package/lib/table/src/body.js +15 -7
  79. package/lib/table/src/body.min.js +1 -1
  80. package/lib/table/src/cell.js +13 -26
  81. package/lib/table/src/cell.min.js +1 -1
  82. package/lib/table/src/methods.js +281 -270
  83. package/lib/table/src/methods.min.js +1 -1
  84. package/lib/table/src/table.js +10 -2
  85. package/lib/table/src/table.min.js +1 -1
  86. package/lib/table/style/style.css +69 -146
  87. package/lib/table/style/style.min.css +1 -1
  88. package/lib/toolbar/src/toolbar.js +11 -15
  89. package/lib/toolbar/src/toolbar.min.js +1 -1
  90. package/lib/toolbar/style/style.css +24 -86
  91. package/lib/toolbar/style/style.min.css +1 -1
  92. package/lib/tools/log.js +1 -1
  93. package/lib/tools/log.min.js +1 -1
  94. package/lib/v-x-e-table/index.js +1 -1
  95. package/lib/v-x-e-table/index.min.js +1 -1
  96. package/lib/v-x-e-table/src/conf.js +43 -39
  97. package/lib/v-x-e-table/src/conf.min.js +1 -1
  98. package/lib/v-x-e-table/style/style.css +443 -484
  99. package/lib/v-x-e-table/style/style.min.css +1 -1
  100. package/package.json +4 -4
  101. package/packages/checkbox/src/checkbox.js +19 -5
  102. package/packages/checkbox/src/group.js +9 -0
  103. package/packages/edit/src/mixin.js +10 -10
  104. package/packages/export/src/export-panel.js +9 -19
  105. package/packages/filter/src/panel.js +9 -17
  106. package/packages/form/src/form.js +2 -2
  107. package/packages/icon/index.js +7 -4
  108. package/packages/icon/src/icon.js +20 -0
  109. package/packages/input/src/input.js +3 -3
  110. package/packages/list/src/list.js +1 -1
  111. package/packages/loading/src/loading.js +18 -9
  112. package/packages/locale/lang/en-US.js +1 -1
  113. package/packages/locale/lang/ja-JP.js +1 -1
  114. package/packages/locale/lang/zh-CN.js +1 -1
  115. package/packages/locale/lang/zh-TC.js +1 -1
  116. package/packages/modal/src/modal.js +30 -22
  117. package/packages/radio/src/radio.js +7 -3
  118. package/packages/select/src/select.js +25 -3
  119. package/packages/table/src/body.js +14 -7
  120. package/packages/table/src/cell.js +12 -33
  121. package/packages/table/src/methods.js +50 -42
  122. package/packages/table/src/table.js +10 -2
  123. package/packages/toolbar/src/toolbar.js +11 -19
  124. package/packages/v-x-e-table/src/conf.js +43 -38
  125. package/styles/base/checked.scss +44 -148
  126. package/styles/button.scss +5 -45
  127. package/styles/checkbox.scss +6 -65
  128. package/styles/export.scss +2 -38
  129. package/styles/filter.scss +3 -36
  130. package/styles/form.scss +0 -3
  131. package/styles/icon.scss +509 -616
  132. package/styles/input.scss +8 -0
  133. package/styles/loading.scss +2 -2
  134. package/styles/modal.scss +19 -17
  135. package/styles/old-icon.scss +713 -0
  136. package/styles/pager.scss +2 -0
  137. package/styles/radio.scss +9 -77
  138. package/styles/select.scss +1 -0
  139. package/styles/table.scss +17 -28
  140. package/styles/toolbar.scss +2 -26
  141. package/styles/variable.scss +11 -10
  142. package/types/table.d.ts +57 -18
@@ -234,6 +234,8 @@ export default {
234
234
  validConfig: Object,
235
235
  // 校验规则配置项
236
236
  editRules: Object,
237
+ // 加载中配置项
238
+ loadingConfig: Object,
237
239
  // 空内容渲染配置项
238
240
  emptyRender: [Boolean, Object],
239
241
  // 自定义列配置项
@@ -569,6 +571,9 @@ export default {
569
571
  emptyOpts () {
570
572
  return Object.assign({}, GlobalConfig.table.emptyRender, this.emptyRender)
571
573
  },
574
+ loadingOpts () {
575
+ return Object.assign({}, GlobalConfig.table.loadingConfig, this.loadingConfig)
576
+ },
572
577
  cellOffsetWidth () {
573
578
  return this.border ? Math.max(2, Math.ceil(this.scrollbarWidth / this.tableColumn.length)) : 1
574
579
  },
@@ -965,7 +970,8 @@ export default {
965
970
  footerTableData,
966
971
  hasTip,
967
972
  columnOpts,
968
- rowOpts
973
+ rowOpts,
974
+ loadingOpts
969
975
  } = this
970
976
  const { leftList, rightList } = columnStore
971
977
  return h('div', {
@@ -1090,7 +1096,9 @@ export default {
1090
1096
  h(VxeLoading, {
1091
1097
  class: 'vxe-table--loading',
1092
1098
  props: {
1093
- loading
1099
+ value: loading,
1100
+ icon: loadingOpts.icon,
1101
+ text: loadingOpts.text
1094
1102
  }
1095
1103
  }),
1096
1104
  /**
@@ -150,12 +150,14 @@ function renderCustoms (h, _vm) {
150
150
  const isColGroup = column.children && column.children.length
151
151
  const isDisabled = checkMethod ? !checkMethod({ column }) : false
152
152
  if (isColGroup || colKey) {
153
+ const isChecked = column.visible
154
+ const isIndeterminate = column.halfVisible
153
155
  cols.push(
154
156
  h('li', {
155
157
  class: ['vxe-custom--option', `level--${column.level}`, {
156
158
  'is--group': isColGroup,
157
- 'is--checked': column.visible,
158
- 'is--indeterminate': column.halfVisible,
159
+ 'is--checked': isChecked,
160
+ 'is--indeterminate': isIndeterminate,
159
161
  'is--disabled': isDisabled
160
162
  }],
161
163
  attrs: {
@@ -170,13 +172,7 @@ function renderCustoms (h, _vm) {
170
172
  }
171
173
  }, [
172
174
  h('span', {
173
- class: 'vxe-checkbox--icon vxe-checkbox--checked-icon'
174
- }),
175
- h('span', {
176
- class: 'vxe-checkbox--icon vxe-checkbox--unchecked-icon'
177
- }),
178
- h('span', {
179
- class: 'vxe-checkbox--icon vxe-checkbox--indeterminate-icon'
175
+ class: ['vxe-checkbox--icon', isIndeterminate ? GlobalConfig.icon.TABLE_CHECKBOX_INDETERMINATE : (isChecked ? GlobalConfig.icon.TABLE_CHECKBOX_CHECKED : GlobalConfig.icon.TABLE_CHECKBOX_UNCHECKED)]
180
176
  }),
181
177
  h('span', {
182
178
  class: 'vxe-checkbox--label'
@@ -185,6 +181,8 @@ function renderCustoms (h, _vm) {
185
181
  )
186
182
  }
187
183
  })
184
+ const isAllChecked = customStore.isAll
185
+ const isAllIndeterminate = customStore.isIndeterminate
188
186
  return h('div', {
189
187
  class: ['vxe-custom--wrapper', {
190
188
  'is--active': customStore.visible
@@ -209,8 +207,8 @@ function renderCustoms (h, _vm) {
209
207
  }, [
210
208
  h('li', {
211
209
  class: ['vxe-custom--option', {
212
- 'is--checked': customStore.isAll,
213
- 'is--indeterminate': customStore.isIndeterminate
210
+ 'is--checked': isAllChecked,
211
+ 'is--indeterminate': isAllIndeterminate
214
212
  }],
215
213
  attrs: {
216
214
  title: GlobalConfig.i18n('vxe.table.allTitle')
@@ -220,13 +218,7 @@ function renderCustoms (h, _vm) {
220
218
  }
221
219
  }, [
222
220
  h('span', {
223
- class: 'vxe-checkbox--icon vxe-checkbox--checked-icon'
224
- }),
225
- h('span', {
226
- class: 'vxe-checkbox--icon vxe-checkbox--unchecked-icon'
227
- }),
228
- h('span', {
229
- class: 'vxe-checkbox--icon vxe-checkbox--indeterminate-icon'
221
+ class: ['vxe-checkbox--icon', isAllIndeterminate ? GlobalConfig.icon.TABLE_CHECKBOX_INDETERMINATE : (isAllChecked ? GlobalConfig.icon.TABLE_CHECKBOX_CHECKED : GlobalConfig.icon.TABLE_CHECKBOX_UNCHECKED)]
230
222
  }),
231
223
  h('span', {
232
224
  class: 'vxe-checkbox--label'
@@ -409,7 +401,7 @@ export default {
409
401
  zoom && $xegrid ? h('vxe-button', {
410
402
  props: {
411
403
  circle: true,
412
- icon: $xegrid.isMaximized() ? (zoomOpts.iconOut || GlobalConfig.icon.TOOLBAR_TOOLS_ZOOM_OUT) : (zoomOpts.iconIn || GlobalConfig.icon.TOOLBAR_TOOLS_ZOOM_IN)
404
+ icon: $xegrid.isMaximized() ? (zoomOpts.iconOut || GlobalConfig.icon.TOOLBAR_TOOLS_MINIMIZE) : (zoomOpts.iconIn || GlobalConfig.icon.TOOLBAR_TOOLS_FULLSCREEN)
413
405
  },
414
406
  attrs: {
415
407
  title: GlobalConfig.i18n(`vxe.toolbar.zoom${$xegrid.isMaximized() ? 'Out' : 'In'}`)
@@ -1,4 +1,4 @@
1
- const iconPrefix = 'vxe-icon--'
1
+ const iconPrefix = 'vxe-icon-'
2
2
 
3
3
  export default {
4
4
  size: null, // 全局尺寸
@@ -6,7 +6,7 @@ export default {
6
6
  version: 0, // 版本号,对于某些带数据缓存的功能有用到,上升版本号可以用于重置数据
7
7
  // resizeInterval: 500,
8
8
  emptyCell: ' ',
9
- loadingText: null, // 自定义loading提示内容,如果为null则不显示文本
9
+ // loadingText: null, // 自定义loading提示内容,如果为null则不显示文本
10
10
  table: {
11
11
  fit: true,
12
12
  showHeader: true,
@@ -125,73 +125,78 @@ export default {
125
125
  },
126
126
  icon: {
127
127
  // loading
128
- // LOADING: iconPrefix + 'refresh roll vxe-loading--default-icon',
128
+ LOADING: iconPrefix + 'spinner roll vxe-loading--default-icon',
129
129
 
130
130
  // table
131
- TABLE_SORT_ASC: iconPrefix + 'caret-top',
132
- TABLE_SORT_DESC: iconPrefix + 'caret-bottom',
131
+ TABLE_SORT_ASC: iconPrefix + 'caret-up',
132
+ TABLE_SORT_DESC: iconPrefix + 'caret-down',
133
133
  TABLE_FILTER_NONE: iconPrefix + 'funnel',
134
134
  TABLE_FILTER_MATCH: iconPrefix + 'funnel',
135
- TABLE_EDIT: iconPrefix + 'edit-outline',
136
- TABLE_HELP: iconPrefix + 'question',
137
- TABLE_TREE_LOADED: iconPrefix + 'refresh roll',
135
+ TABLE_EDIT: iconPrefix + 'edit',
136
+ TABLE_HELP: iconPrefix + 'question-circle-fill',
137
+ TABLE_TREE_LOADED: iconPrefix + 'spinner roll',
138
138
  TABLE_TREE_OPEN: iconPrefix + 'caret-right rotate90',
139
139
  TABLE_TREE_CLOSE: iconPrefix + 'caret-right',
140
- TABLE_EXPAND_LOADED: iconPrefix + 'refresh roll',
140
+ TABLE_EXPAND_LOADED: iconPrefix + 'spinner roll',
141
141
  TABLE_EXPAND_OPEN: iconPrefix + 'arrow-right rotate90',
142
142
  TABLE_EXPAND_CLOSE: iconPrefix + 'arrow-right',
143
+ TABLE_CHECKBOX_CHECKED: iconPrefix + 'checkbox-checked',
144
+ TABLE_CHECKBOX_UNCHECKED: iconPrefix + 'checkbox-unchecked',
145
+ TABLE_CHECKBOX_INDETERMINATE: iconPrefix + 'checkbox-indeterminate',
146
+ TABLE_RADIO_CHECKED: iconPrefix + 'radio-checked',
147
+ TABLE_RADIO_UNCHECKED: iconPrefix + 'radio-unchecked',
143
148
 
144
149
  // button
145
- BUTTON_DROPDOWN: iconPrefix + 'arrow-bottom',
146
- BUTTON_LOADING: iconPrefix + 'refresh roll',
150
+ BUTTON_DROPDOWN: iconPrefix + 'arrow-down',
151
+ BUTTON_LOADING: iconPrefix + 'spinner roll',
147
152
 
148
153
  // select
149
- SELECT_LOADED: iconPrefix + 'refresh roll',
150
- SELECT_OPEN: iconPrefix + 'caret-bottom rotate180',
151
- SELECT_CLOSE: iconPrefix + 'caret-bottom',
154
+ SELECT_LOADED: iconPrefix + 'spinner roll',
155
+ SELECT_OPEN: iconPrefix + 'caret-down rotate180',
156
+ SELECT_CLOSE: iconPrefix + 'caret-down',
152
157
 
153
158
  // pager
154
- PAGER_JUMP_PREV: iconPrefix + 'd-arrow-left',
155
- PAGER_JUMP_NEXT: iconPrefix + 'd-arrow-right',
159
+ PAGER_JUMP_PREV: iconPrefix + 'arrow-double-left',
160
+ PAGER_JUMP_NEXT: iconPrefix + 'arrow-double-right',
156
161
  PAGER_PREV_PAGE: iconPrefix + 'arrow-left',
157
162
  PAGER_NEXT_PAGE: iconPrefix + 'arrow-right',
158
- PAGER_JUMP_MORE: iconPrefix + 'more',
163
+ PAGER_JUMP_MORE: iconPrefix + 'ellipsis-h',
159
164
 
160
165
  // input
161
- INPUT_CLEAR: iconPrefix + 'close',
162
- INPUT_PWD: iconPrefix + 'eye-slash',
163
- INPUT_SHOW_PWD: iconPrefix + 'eye',
164
- INPUT_PREV_NUM: iconPrefix + 'caret-top',
165
- INPUT_NEXT_NUM: iconPrefix + 'caret-bottom',
166
+ INPUT_CLEAR: iconPrefix + 'error-circle-fill',
167
+ INPUT_PWD: iconPrefix + 'eye-fill',
168
+ INPUT_SHOW_PWD: iconPrefix + 'eye-fill-close',
169
+ INPUT_PREV_NUM: iconPrefix + 'caret-up',
170
+ INPUT_NEXT_NUM: iconPrefix + 'caret-down',
166
171
  INPUT_DATE: iconPrefix + 'calendar',
167
172
  INPUT_SEARCH: iconPrefix + 'search',
168
173
 
169
174
  // modal
170
175
  MODAL_ZOOM_IN: iconPrefix + 'square',
171
- MODAL_ZOOM_OUT: iconPrefix + 'zoomout',
176
+ MODAL_ZOOM_OUT: iconPrefix + 'maximize',
172
177
  MODAL_CLOSE: iconPrefix + 'close',
173
- MODAL_INFO: iconPrefix + 'info',
174
- MODAL_SUCCESS: iconPrefix + 'success',
175
- MODAL_WARNING: iconPrefix + 'warning',
176
- MODAL_ERROR: iconPrefix + 'error',
177
- MODAL_QUESTION: iconPrefix + 'question',
178
- MODAL_LOADING: iconPrefix + 'refresh roll',
178
+ MODAL_INFO: iconPrefix + 'info-circle-fill',
179
+ MODAL_SUCCESS: iconPrefix + 'success-circle-fill',
180
+ MODAL_WARNING: iconPrefix + 'warnion-circle-fill',
181
+ MODAL_ERROR: iconPrefix + 'error-circle-fill',
182
+ MODAL_QUESTION: iconPrefix + 'question-circle-fill',
183
+ MODAL_LOADING: iconPrefix + 'spinner roll',
179
184
 
180
185
  // toolbar
181
- TOOLBAR_TOOLS_REFRESH: iconPrefix + 'refresh',
182
- TOOLBAR_TOOLS_REFRESH_LOADING: iconPrefix + 'refresh roll',
186
+ TOOLBAR_TOOLS_REFRESH: iconPrefix + 'repeat',
187
+ TOOLBAR_TOOLS_REFRESH_LOADING: iconPrefix + 'repeat roll',
183
188
  TOOLBAR_TOOLS_IMPORT: iconPrefix + 'upload',
184
189
  TOOLBAR_TOOLS_EXPORT: iconPrefix + 'download',
185
190
  TOOLBAR_TOOLS_PRINT: iconPrefix + 'print',
186
- TOOLBAR_TOOLS_ZOOM_IN: iconPrefix + 'zoomin',
187
- TOOLBAR_TOOLS_ZOOM_OUT: iconPrefix + 'zoomout',
188
- TOOLBAR_TOOLS_CUSTOM: iconPrefix + 'menu',
191
+ TOOLBAR_TOOLS_FULLSCREEN: iconPrefix + 'fullscreen',
192
+ TOOLBAR_TOOLS_MINIMIZE: iconPrefix + 'minimize',
193
+ TOOLBAR_TOOLS_CUSTOM: iconPrefix + 'custom-column',
189
194
 
190
195
  // form
191
- FORM_PREFIX: iconPrefix + 'question',
192
- FORM_SUFFIX: iconPrefix + 'question',
193
- FORM_FOLDING: iconPrefix + 'arrow-top rotate180',
194
- FORM_UNFOLDING: iconPrefix + 'arrow-top'
196
+ FORM_PREFIX: iconPrefix + 'question-circle-fill',
197
+ FORM_SUFFIX: iconPrefix + 'question-circle-fill',
198
+ FORM_FOLDING: iconPrefix + 'arrow-up rotate180',
199
+ FORM_UNFOLDING: iconPrefix + 'arrow-up'
195
200
  },
196
201
  grid: {
197
202
  // size: null,
@@ -1,179 +1,75 @@
1
- // 单选框和复选框
2
- %RadioAndCheckboxSpan {
3
- position: relative;
4
- user-select: none;
5
- cursor: pointer;
6
- }
7
- %RadioAndCheckboxIcon {
8
- display: none;
9
- position: absolute;
10
- height: 1em;
11
- width: 1em;
12
- }
13
-
14
- %XERadio {
15
- @extend %RadioAndCheckboxSpan;
16
- .vxe-radio--icon {
17
- @extend %RadioAndCheckboxIcon;
18
- font-size: $vxe-radio-font-size-default;
19
- &:before {
20
- content: "";
21
- position: absolute;
22
- height: 1em;
23
- width: 1em;
24
- top: 0;
25
- left: 0;
26
- border: $vxe-radio-border-width solid $vxe-input-border-color;
27
- background-color: $vxe-radio-icon-background-color;
28
- border-radius: 50%;
29
- }
30
- }
31
- .vxe-radio--unchecked-icon {
32
- display: inline-block;
1
+ %XECheckboxIcon {
2
+ .vxe-checkbox--icon {
3
+ font-size: 1.34em;
33
4
  }
34
- .vxe-radio--checked-icon {
35
- &:after {
36
- content: "";
37
- position: absolute;
38
- height: 0.25em;
39
- width: 0.25em;
40
- top: 0.4em;
41
- left: 0.4em;
42
- border-radius: 50%;
43
- background-color: $vxe-radio-checked-icon-background-color;
44
- }
5
+ .vxe-checkbox--icon {
6
+ color: $vxe-input-border-color;
7
+ vertical-align: middle;
8
+ font-weight: 700;
9
+ user-select: none;
45
10
  }
46
- &.is--checked {
11
+ &.is--checked,
12
+ &.is--indeterminate {
47
13
  color: $vxe-primary-color;
48
- .vxe-radio--unchecked-icon {
49
- display: none;
50
- }
51
- .vxe-radio--checked-icon {
52
- display: inline-block;
53
- &:before {
54
- border-color: $vxe-primary-color;
55
- background-color: $vxe-primary-color;
56
- }
14
+ .vxe-checkbox--icon {
15
+ color: $vxe-primary-color;
57
16
  }
58
17
  }
59
18
  &:not(.is--disabled) {
19
+ cursor: pointer;
60
20
  &:hover {
61
- .vxe-radio--icon {
62
- &:before {
63
- border-color: $vxe-primary-color;
64
- }
21
+ .vxe-checkbox--icon {
22
+ color: $vxe-primary-color;
65
23
  }
66
24
  }
67
25
  }
68
26
  &.is--disabled {
69
- cursor: not-allowed;
70
27
  color: $vxe-disabled-color;
71
- .vxe-radio--icon {
72
- &:before {
73
- border-color: $vxe-input-disabled-color;
74
- background-color: $vxe-input-disabled-background-color;
75
- }
76
- &:after {
77
- background-color: $vxe-primary-disabled-color;
78
- }
28
+ cursor: not-allowed;
29
+ .vxe-checkbox--icon {
30
+ color: $vxe-input-disabled-color;
79
31
  }
80
32
  }
33
+ .vxe-checkbox--label {
34
+ padding-left: 0.5em;
35
+ vertical-align: middle;
36
+ }
81
37
  }
82
38
 
83
- %XECheckbox {
84
- @extend %RadioAndCheckboxSpan;
85
- .vxe-checkbox--icon {
86
- @extend %RadioAndCheckboxIcon;
87
- font-size: $vxe-checkbox-font-size-default;
88
- &:before {
89
- content: "";
90
- position: absolute;
91
- height: 1em;
92
- width: 1em;
93
- top: 0;
94
- left: 0;
95
- background-color: $vxe-checkbox-icon-background-color;
96
- border-radius: $vxe-checkbox-border-radius;
97
- border: $vxe-checkbox-border-width solid $vxe-input-border-color;
98
- }
99
- }
100
- .vxe-checkbox--unchecked-icon {
101
- display: inline-block;
102
- }
103
- .vxe-checkbox--checked-icon {
104
- &:after {
105
- content: "";
106
- position: absolute;
107
- height: $vxe-checkbox-checked-height;
108
- width: $vxe-checkbox-checked-width;
109
- top: 50%;
110
- left: 50%;
111
- border: $vxe-checkbox-border-width solid $vxe-checkbox-checked-icon-border-color;
112
- border-left: 0;
113
- border-top: 0;
114
- transform: translate(-50%, -50%) rotate(45deg);
115
- }
116
- }
117
- .vxe-checkbox--indeterminate-icon {
118
- &:after {
119
- content: "";
120
- position: absolute;
121
- top: 50%;
122
- left: 50%;
123
- height: $vxe-checkbox-indeterminate-height;
124
- width: $vxe-checkbox-indeterminate-width;
125
- background-color: $vxe-checkbox-indeterminate-icon-background-color;
126
- transform: translate(-50%, -50%);
127
- }
39
+ %XERadioIcon {
40
+ cursor: pointer;
41
+ .vxe-radio--icon {
42
+ font-size: 1.4em;
128
43
  }
129
- &.is--checked,
130
- &.is--indeterminate {
131
- color: $vxe-primary-color;
132
- .vxe-checkbox--unchecked-icon {
133
- display: none;
134
- }
135
- .vxe-checkbox--icon {
136
- &:before {
137
- border-color: $vxe-primary-color;
138
- background-color: $vxe-primary-color;
139
- }
140
- }
44
+ .vxe-radio--icon {
45
+ color: $vxe-input-border-color;
46
+ vertical-align: middle;
47
+ font-weight: 700;
48
+ user-select: none;
141
49
  }
142
50
  &.is--checked {
143
- .vxe-checkbox--checked-icon {
144
- display: inline-block;
145
- }
146
- }
147
- &.is--indeterminate {
148
- .vxe-checkbox--indeterminate-icon {
149
- display: inline-block;
51
+ color: $vxe-primary-color;
52
+ .vxe-radio--icon {
53
+ color: $vxe-primary-color;
150
54
  }
151
55
  }
152
56
  &:not(.is--disabled) {
57
+ cursor: pointer;
153
58
  &:hover {
154
- .vxe-checkbox--icon {
155
- &:before {
156
- border-color: $vxe-primary-color;
157
- }
59
+ .vxe-radio--icon {
60
+ color: $vxe-primary-color;
158
61
  }
159
62
  }
160
63
  }
161
64
  &.is--disabled {
162
- cursor: not-allowed;
163
65
  color: $vxe-disabled-color;
164
- .vxe-checkbox--icon {
165
- &:before {
166
- border-color: $vxe-input-disabled-color;
167
- background-color: $vxe-input-disabled-background-color;
168
- }
169
- &:after {
170
- border-color: $vxe-primary-disabled-color;
171
- }
172
- }
173
- .vxe-checkbox--indeterminate-icon {
174
- &:after {
175
- background-color: $vxe-primary-disabled-color;
176
- }
66
+ cursor: not-allowed;
67
+ .vxe-radio--icon {
68
+ color: $vxe-input-disabled-color;
177
69
  }
178
70
  }
71
+ .vxe-radio--label {
72
+ padding-left: 0.5em;
73
+ vertical-align: middle;
74
+ }
179
75
  }
@@ -58,11 +58,6 @@ $btnThemeList: (
58
58
  &:not(.is--disabled) {
59
59
  color: $vxe-font-color;
60
60
  cursor: pointer;
61
- .vxe-button--icon {
62
- &.vxe-icon--zoomin {
63
- border-color: $vxe-font-color;
64
- }
65
- }
66
61
  }
67
62
  &.is--loading {
68
63
  cursor: progress;
@@ -80,11 +75,6 @@ $btnThemeList: (
80
75
  }
81
76
  &.is--disabled {
82
77
  color: $vxe-disabled-color;
83
- .vxe-button--icon {
84
- &.vxe-icon--zoomin {
85
- border-color: $vxe-disabled-color;
86
- }
87
- }
88
78
  &:not(.is--loading) {
89
79
  cursor: no-drop;
90
80
  }
@@ -96,7 +86,7 @@ $btnThemeList: (
96
86
  background-color: transparent;
97
87
  &:not(.is--disabled) {
98
88
  &:focus {
99
- box-shadow: 0 0 0.25em 0 $vxe-primary-color;
89
+ color: darken($vxe-font-color, 20%);
100
90
  }
101
91
  &:hover {
102
92
  color: lighten($vxe-primary-color, 10%);
@@ -108,6 +98,9 @@ $btnThemeList: (
108
98
  &.theme--#{map-get($item, name)} {
109
99
  color: $textColor;
110
100
  &:not(.is--disabled) {
101
+ &:focus {
102
+ color: darken($textColor, 10%);
103
+ }
111
104
  &:hover {
112
105
  color: lighten($textColor, 10%);
113
106
  }
@@ -140,30 +133,14 @@ $btnThemeList: (
140
133
  &:not(.is--disabled) {
141
134
  &:hover {
142
135
  color: lighten($vxe-primary-color, 6%);
143
- .vxe-button--icon {
144
- &.vxe-icon--zoomin {
145
- border-color: lighten($vxe-primary-color, 6%);
146
- }
147
- }
148
136
  }
149
137
  &:focus {
150
138
  border-color: $vxe-primary-color;
151
- box-shadow: 0 0 0.25em 0 $vxe-primary-color;
152
139
  }
153
140
  &:active {
154
141
  color: darken($vxe-primary-color, 3%);
155
142
  border-color: darken($vxe-primary-color, 3%);
156
143
  background-color: darken($vxe-button-default-background-color, 3%);
157
- .vxe-button--icon {
158
- &.vxe-icon--zoomin {
159
- background-color: darken($vxe-button-default-background-color, 3%);
160
- }
161
- &.vxe-icon--zoomout {
162
- &:after {
163
- background-color: darken($vxe-button-default-background-color, 3%);
164
- }
165
- }
166
- }
167
144
  }
168
145
  }
169
146
  @for $index from 0 to length($btnThemeList) {
@@ -172,11 +149,6 @@ $btnThemeList: (
172
149
  $btnBackground: map-get($item, btnBackground);
173
150
  &.theme--#{map-get($item, name)} {
174
151
  color: $btnColor;
175
- .vxe-button--icon {
176
- &.vxe-icon--zoomin {
177
- border-color: $btnColor;
178
- }
179
- }
180
152
  &:not(.is--disabled) {
181
153
  border-color: $btnBackground;
182
154
  background-color: $btnBackground;
@@ -184,24 +156,11 @@ $btnThemeList: (
184
156
  color: $btnColor;
185
157
  background-color: lighten($btnBackground, 6%);
186
158
  border-color: lighten($btnBackground, 6%);
187
- .vxe-button--icon {
188
- &.vxe-icon--zoomin {
189
- border-color: lighten($btnBackground, 6%);
190
- }
191
- }
192
159
  }
193
160
  &:active {
194
161
  color: $btnColor;
195
162
  background-color: darken($btnBackground, 3%);
196
163
  border-color: darken($btnBackground, 3%);
197
- &.vxe-icon--zoomin {
198
- background-color: darken($btnBackground, 3%);
199
- }
200
- &.vxe-icon--zoomout {
201
- &:after {
202
- background-color: darken($btnBackground, 3%);
203
- }
204
- }
205
164
  }
206
165
  }
207
166
  &.is--disabled {
@@ -333,6 +292,7 @@ $btnThemeList: (
333
292
  }
334
293
 
335
294
  .vxe-button--dropdown-arrow {
295
+ display: inline-block;
336
296
  font-size: 12px;
337
297
  margin-left: 4px;
338
298
  @include animatTransition(transform, .2s);