vxe-table 3.5.9-beta.0 → 3.5.9-beta.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 (73) hide show
  1. package/lib/form/src/form.js +12 -7
  2. package/lib/form/src/form.min.js +1 -1
  3. package/lib/form/style/style.css +2 -1
  4. package/lib/form/style/style.min.css +1 -1
  5. package/lib/grid/src/grid.js +1 -1
  6. package/lib/grid/src/grid.min.js +1 -1
  7. package/lib/index.css +1 -1
  8. package/lib/index.umd.js +102 -36
  9. package/lib/index.umd.min.js +1 -1
  10. package/lib/list/src/list.js +12 -7
  11. package/lib/list/src/list.min.js +1 -1
  12. package/lib/loading/index.js +19 -0
  13. package/lib/loading/index.min.js +1 -0
  14. package/lib/loading/src/loading.js +36 -0
  15. package/lib/loading/src/loading.min.js +1 -0
  16. package/lib/locale/lang/en-US.js +3 -0
  17. package/lib/locale/lang/en-US.min.js +1 -1
  18. package/lib/locale/lang/en-US.umd.js +3 -0
  19. package/lib/locale/lang/ja-JP.js +3 -0
  20. package/lib/locale/lang/ja-JP.min.js +1 -1
  21. package/lib/locale/lang/ja-JP.umd.js +3 -0
  22. package/lib/locale/lang/zh-CN.js +3 -0
  23. package/lib/locale/lang/zh-CN.min.js +1 -1
  24. package/lib/locale/lang/zh-CN.umd.js +3 -0
  25. package/lib/locale/lang/zh-HK.min.js +1 -1
  26. package/lib/locale/lang/zh-HK.umd.js +3 -0
  27. package/lib/locale/lang/zh-MO.min.js +1 -1
  28. package/lib/locale/lang/zh-MO.umd.js +3 -0
  29. package/lib/locale/lang/zh-TC.js +3 -0
  30. package/lib/locale/lang/zh-TC.min.js +1 -1
  31. package/lib/locale/lang/zh-TC.umd.js +3 -0
  32. package/lib/locale/lang/zh-TW.min.js +1 -1
  33. package/lib/locale/lang/zh-TW.umd.js +3 -0
  34. package/lib/modal/src/modal.js +28 -12
  35. package/lib/modal/src/modal.min.js +1 -1
  36. package/lib/modal/style/style.css +1 -1
  37. package/lib/modal/style/style.min.css +1 -1
  38. package/lib/select/style/style.css +0 -69
  39. package/lib/select/style/style.min.css +1 -1
  40. package/lib/style.css +1 -1
  41. package/lib/style.min.css +1 -1
  42. package/lib/table/src/table.js +8 -7
  43. package/lib/table/src/table.min.js +1 -1
  44. package/lib/table/style/style.css +0 -68
  45. package/lib/table/style/style.min.css +1 -1
  46. package/lib/tools/log.js +1 -1
  47. package/lib/tools/log.min.js +1 -1
  48. package/lib/v-x-e-table/index.js +1 -1
  49. package/lib/v-x-e-table/index.min.js +1 -1
  50. package/lib/v-x-e-table/src/conf.js +4 -0
  51. package/lib/v-x-e-table/src/conf.min.js +1 -1
  52. package/lib/v-x-e-table/style/style.css +590 -0
  53. package/lib/v-x-e-table/style/style.min.css +1 -0
  54. package/package.json +1 -1
  55. package/packages/form/src/form.js +10 -9
  56. package/packages/grid/src/grid.js +1 -1
  57. package/packages/list/src/list.js +10 -9
  58. package/packages/loading/index.js +9 -0
  59. package/packages/loading/src/loading.js +31 -0
  60. package/packages/locale/lang/en-US.js +3 -0
  61. package/packages/locale/lang/ja-JP.js +3 -0
  62. package/packages/locale/lang/zh-CN.js +3 -0
  63. package/packages/locale/lang/zh-TC.js +3 -0
  64. package/packages/modal/src/modal.js +23 -14
  65. package/packages/table/src/table.js +7 -9
  66. package/packages/v-x-e-table/src/conf.js +4 -0
  67. package/styles/form.scss +1 -0
  68. package/styles/{base/loading.scss → loading.scss} +17 -4
  69. package/styles/modal.scss +1 -1
  70. package/styles/modules.scss +1 -0
  71. package/styles/select.scss +0 -1
  72. package/styles/table.scss +0 -1
  73. package/styles/v-x-e-table.scss +2 -0
@@ -0,0 +1,9 @@
1
+ import VxeLoading from './src/loading'
2
+
3
+ export const Loading = Object.assign(VxeLoading, {
4
+ install (Vue) {
5
+ Vue.component(VxeLoading.name, VxeLoading)
6
+ }
7
+ })
8
+
9
+ export default VxeLoading
@@ -0,0 +1,31 @@
1
+ import GlobalConfig from '../../v-x-e-table/src/conf'
2
+
3
+ export default {
4
+ name: 'VxeLoading',
5
+ props: {
6
+ loading: Boolean
7
+ },
8
+ render (h) {
9
+ const icon = GlobalConfig.icon.LOADING
10
+ const loadingText = GlobalConfig.loadingText
11
+ const text = loadingText === null ? loadingText : GlobalConfig.i18n('vxe.loading.text')
12
+ return h('div', {
13
+ class: ['vxe-loading', {
14
+ 'is--visible': this.loading
15
+ }]
16
+ }, [
17
+ h('div', {
18
+ class: 'vxe-loading--chunk'
19
+ }, [
20
+ icon ? h('i', {
21
+ class: icon
22
+ }) : h('div', {
23
+ class: 'vxe-loading--spinner'
24
+ }),
25
+ text ? h('div', {
26
+ class: 'vxe-loading--text'
27
+ }, `${text}`) : null
28
+ ])
29
+ ])
30
+ }
31
+ }
@@ -1,5 +1,8 @@
1
1
  export default {
2
2
  vxe: {
3
+ loading: {
4
+ text: 'Loading'
5
+ },
3
6
  error: {
4
7
  groupFixed: 'If you use group headers, the fixed columns must be set by group.',
5
8
  groupMouseRange: 'Grouping headers and "{0}" cannot be used at the same time, which may cause errors.',
@@ -1,5 +1,8 @@
1
1
  export default {
2
2
  vxe: {
3
+ loading: {
4
+ text: 'Loading'
5
+ },
3
6
  error: {
4
7
  groupFixed: 'グループのヘッダを使用すると、固定列はグループで設定しなければなりません',
5
8
  groupMouseRange: 'グループ化ヘッダーと「{0}」は同時に使用できません。これによりエラーが発生する可能性があります',
@@ -1,5 +1,8 @@
1
1
  export default {
2
2
  vxe: {
3
+ loading: {
4
+ text: '加载中'
5
+ },
3
6
  error: {
4
7
  groupFixed: '如果使用分组表头,固定列必须按组设置',
5
8
  groupMouseRange: '分组表头与 "{0}" 不能同时使用,这可能会出现错误',
@@ -1,5 +1,8 @@
1
1
  export default {
2
2
  vxe: {
3
+ loading: {
4
+ text: '加載中'
5
+ },
3
6
  error: {
4
7
  groupFixed: '如果使用分組表頭,固定列必須按組設定',
5
8
  groupMouseRange: '分组表頭與 "{0}" 不能同時使用,這可能會出現錯誤',
@@ -5,6 +5,7 @@ import UtilTools, { getFuncText } from '../../tools/utils'
5
5
  import DomTools from '../../tools/dom'
6
6
  import { GlobalEvent } from '../../tools/event'
7
7
  import { errLog } from '../../tools/log'
8
+ import VxeLoading from '../../loading/index'
8
9
 
9
10
  export const allActivedModals = []
10
11
  export const msgQueue = []
@@ -68,7 +69,7 @@ export default {
68
69
  modalTop: 0,
69
70
  modalZindex: 0,
70
71
  zoomLocat: null,
71
- firstOpen: false
72
+ firstOpen: true
72
73
  }
73
74
  },
74
75
  computed: {
@@ -163,7 +164,7 @@ export default {
163
164
  }, [
164
165
  this.showHeader ? h('div', {
165
166
  class: ['vxe-modal--header', {
166
- 'is--drag': draggable,
167
+ 'is--draggable': draggable,
167
168
  'is--ellipsis': !isMsg && showTitleOverflow
168
169
  }],
169
170
  on: headerOns
@@ -203,15 +204,15 @@ export default {
203
204
  h('div', {
204
205
  class: 'vxe-modal--content'
205
206
  }, defaultSlot ? (!inited || (destroyOnClose && !visible) ? [] : defaultSlot.call(this, { $modal: this }, h)) : getFuncText(content)),
206
- !isMsg ? h('div', {
207
- class: ['vxe-loading', {
208
- 'is--visible': loading
209
- }]
210
- }, [
211
- h('div', {
212
- class: 'vxe-loading--spinner'
213
- })
214
- ]) : null
207
+ /**
208
+ * 加载中
209
+ */
210
+ !isMsg ? h(VxeLoading, {
211
+ class: 'vxe-modal--loading',
212
+ props: {
213
+ loading
214
+ }
215
+ }) : null
215
216
  ]),
216
217
  showFooter ? h('div', {
217
218
  class: 'vxe-modal--footer'
@@ -346,18 +347,22 @@ export default {
346
347
  } else {
347
348
  this.$nextTick(() => {
348
349
  const { firstOpen, fullscreen } = this
349
- if (!remember || !firstOpen) {
350
+ if (!remember || firstOpen) {
350
351
  this.updatePosition().then(() => {
351
352
  setTimeout(() => this.updatePosition(), 20)
352
353
  })
353
354
  }
354
- if (!firstOpen) {
355
- this.firstOpen = true
355
+ if (firstOpen) {
356
+ this.firstOpen = false
356
357
  if (this.hasPosStorage()) {
357
358
  this.restorePosStorage()
358
359
  } else if (fullscreen) {
359
360
  this.$nextTick(() => this.maximize())
360
361
  }
362
+ } else {
363
+ if (fullscreen) {
364
+ this.$nextTick(() => this.maximize())
365
+ }
361
366
  }
362
367
  })
363
368
  }
@@ -575,6 +580,7 @@ export default {
575
580
  }
576
581
  modalBoxElem.style.left = `${left}px`
577
582
  modalBoxElem.style.top = `${top}px`
583
+ modalBoxElem.className = modalBoxElem.className.replace(/\s?is--drag/, '') + ' is--drag'
578
584
  }
579
585
  document.onmouseup = () => {
580
586
  document.onmousemove = domMousemove
@@ -584,6 +590,9 @@ export default {
584
590
  this.savePosStorage()
585
591
  })
586
592
  }
593
+ setTimeout(() => {
594
+ modalBoxElem.className = modalBoxElem.className.replace(/\s?is--drag/, '')
595
+ }, 50)
587
596
  }
588
597
  }
589
598
  },
@@ -9,6 +9,7 @@ import { createResizeEvent } from '../../tools/resize'
9
9
  import { GlobalEvent } from '../../tools/event'
10
10
  import methods from './methods'
11
11
  import { warnLog, errLog } from '../../tools/log'
12
+ import VxeLoading from '../../loading/index'
12
13
 
13
14
  /**
14
15
  * 渲染浮固定列
@@ -1083,15 +1084,12 @@ export default {
1083
1084
  /**
1084
1085
  * 加载中
1085
1086
  */
1086
- h('div', {
1087
- class: ['vxe-table--loading vxe-loading', {
1088
- 'is--visible': loading
1089
- }]
1090
- }, [
1091
- h('div', {
1092
- class: 'vxe-loading--spinner'
1093
- })
1094
- ]),
1087
+ h(VxeLoading, {
1088
+ class: 'vxe-table--loading',
1089
+ props: {
1090
+ loading
1091
+ }
1092
+ }),
1095
1093
  /**
1096
1094
  * 筛选
1097
1095
  */
@@ -6,6 +6,7 @@ export default {
6
6
  version: 0, // 版本号,对于某些带数据缓存的功能有用到,上升版本号可以用于重置数据
7
7
  // resizeInterval: 500,
8
8
  emptyCell: ' ',
9
+ loadingText: null, // 自定义loading提示内容,如果为null则不显示文本
9
10
  table: {
10
11
  fit: true,
11
12
  showHeader: true,
@@ -123,6 +124,9 @@ export default {
123
124
  types: {}
124
125
  },
125
126
  icon: {
127
+ // loading
128
+ // LOADING: iconPrefix + 'refresh roll vxe-loading--default-icon',
129
+
126
130
  // table
127
131
  TABLE_SORT_ASC: iconPrefix + 'caret-top',
128
132
  TABLE_SORT_DESC: iconPrefix + 'caret-bottom',
package/styles/form.scss CHANGED
@@ -177,6 +177,7 @@
177
177
  .vxe-form--item-content {
178
178
  position: relative;
179
179
  flex-grow: 1;
180
+ word-break: break-all;
180
181
  }
181
182
  }
182
183
  .vxe-default-input,
@@ -12,13 +12,26 @@
12
12
  &.is--visible {
13
13
  display: block;
14
14
  }
15
+ & > .vxe-loading--chunk {
16
+ width: 100%;
17
+ position: absolute;
18
+ top: 50%;
19
+ left: 0;
20
+ transform: translateY(-50%);
21
+ text-align: center;
22
+ color: $vxe-primary-color;
23
+ }
24
+ .vxe-loading--default-icon {
25
+ font-size: 1.2em;
26
+ }
27
+ .vxe-loading--text {
28
+ padding: 0.4em 0;
29
+ }
15
30
  .vxe-loading--spinner {
31
+ display: inline-block;
32
+ position: relative;
16
33
  width: 56px;
17
34
  height: 56px;
18
- position: absolute;
19
- top: 50%;
20
- left: 50%;
21
- transform: translate(-50%, -50%);
22
35
  &:before,
23
36
  &:after {
24
37
  content: "";
package/styles/modal.scss CHANGED
@@ -246,7 +246,7 @@
246
246
  background-color: $vxe-modal-header-background-color;
247
247
  border-radius: $vxe-border-radius $vxe-border-radius 0 0;
248
248
  user-select: none;
249
- &.is--drag {
249
+ &.is--draggable {
250
250
  cursor: move;
251
251
  }
252
252
  &.is--ellipsis {
@@ -1,4 +1,5 @@
1
1
  @import './icon.scss';
2
+ @import './loading.scss';
2
3
  @import './table.scss';
3
4
  @import './column.scss';
4
5
  @import './colgroup.scss';
@@ -1,6 +1,5 @@
1
1
  /**Variable**/
2
2
  @import './helpers/mixin.scss';
3
- @import './base/loading.scss';
4
3
 
5
4
  .vxe-select {
6
5
  position: relative;
package/styles/table.scss CHANGED
@@ -2,7 +2,6 @@
2
2
  @import './helpers/mixin.scss';
3
3
  @import './base/checked.scss';
4
4
  @import './base/common.scss';
5
- @import './base/loading.scss';
6
5
 
7
6
  %DefaultColumnHeight {
8
7
  height: $vxe-table-row-height-default;
@@ -1 +1,3 @@
1
1
  /**Variable**/
2
+ @import './icon.scss';
3
+ @import './loading.scss';