haiwei-ui 1.0.3 → 1.0.4

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 (109) hide show
  1. package/README.md +10 -0
  2. package/package.json +1 -1
  3. package/packages/components/box/index.vue +116 -125
  4. package/packages/components/box-col/index.vue +30 -33
  5. package/packages/components/box-row/index.vue +17 -17
  6. package/packages/components/box-small/index.vue +38 -38
  7. package/packages/components/button/index.vue +29 -42
  8. package/packages/components/button-copy/index.vue +46 -62
  9. package/packages/components/button-delete/index.vue +64 -77
  10. package/packages/components/button-delete-batch/index.vue +82 -95
  11. package/packages/components/button-has/index.vue +29 -42
  12. package/packages/components/checkbox-group/index.vue +85 -85
  13. package/packages/components/color-picker/index.vue +41 -50
  14. package/packages/components/container/index.vue +8 -8
  15. package/packages/components/date-range-picker/index.vue +92 -103
  16. package/packages/components/details/index.vue +72 -79
  17. package/packages/components/dialog/index.vue +281 -294
  18. package/packages/components/drag-sort/index.vue +36 -36
  19. package/packages/components/drag-sort-dialog/index.vue +58 -58
  20. package/packages/components/drawer/index.vue +157 -166
  21. package/packages/components/enums/sex/index.vue +1 -1
  22. package/packages/components/flex/index.vue +33 -33
  23. package/packages/components/form/index.vue +123 -138
  24. package/packages/components/form-dialog/index.vue +184 -217
  25. package/packages/components/form-page/index.vue +134 -151
  26. package/packages/components/icon/index.vue +6 -6
  27. package/packages/components/icon-picker/index.vue +30 -30
  28. package/packages/components/icon-picker/panel.vue +58 -58
  29. package/packages/components/label/index.vue +22 -30
  30. package/packages/components/list/components/export/index.vue +101 -99
  31. package/packages/components/list/components/footer/index.vue +42 -51
  32. package/packages/components/list/components/header/index.vue +34 -34
  33. package/packages/components/list/components/querybar/index.vue +144 -144
  34. package/packages/components/list/components/select-column/index.vue +30 -30
  35. package/packages/components/list/components/table/index.vue +169 -188
  36. package/packages/components/list/index.vue +337 -391
  37. package/packages/components/list-agile/index.vue +145 -145
  38. package/packages/components/list-dialog/index.vue +70 -84
  39. package/packages/components/listbox/index.vue +48 -48
  40. package/packages/components/login-default/index.vue +107 -107
  41. package/packages/components/login-neon/index.vue +104 -104
  42. package/packages/components/map/index.vue +229 -229
  43. package/packages/components/map-coord-picking/index.vue +220 -219
  44. package/packages/components/map-search/index.vue +75 -72
  45. package/packages/components/scrollbar/index.vue +11 -11
  46. package/packages/components/select-whether/index.vue +30 -30
  47. package/packages/components/split/index.vue +141 -141
  48. package/packages/components/split/trigger.vue +15 -15
  49. package/packages/components/tabnav/index.vue +125 -89
  50. package/packages/components/tabs/index.vue +31 -31
  51. package/packages/components/toolbar/components/fullscreen/index.vue +10 -10
  52. package/packages/components/toolbar/components/logout/index.vue +13 -13
  53. package/packages/components/toolbar/components/skin-toggle/form.vue +59 -59
  54. package/packages/components/toolbar/components/skin-toggle/index.vue +12 -12
  55. package/packages/components/toolbar/components/userInfo/index.vue +18 -18
  56. package/packages/components/toolbar/index.vue +12 -12
  57. package/packages/components/tree-select/mixins.vue +261 -270
  58. package/packages/components/txt/index.vue +17 -17
  59. package/packages/components/update-password/index.vue +45 -57
  60. package/packages/layout.vue +18 -18
  61. package/packages/mixins/components/checkbox.vue +71 -82
  62. package/packages/mixins/components/radio.vue +69 -69
  63. package/packages/page/403/index.vue +32 -28
  64. package/packages/page/404/index.vue +32 -28
  65. package/packages/page/default/index.vue +17 -13
  66. package/packages/page/iframe/index.vue +6 -6
  67. package/packages/page/login/index.vue +9 -9
  68. package/packages/page/userInfo/index.vue +5 -5
  69. package/packages/router/index.js +1 -9
  70. package/packages/skins/pretty/components/header/components/breadcrumb/index.vue +29 -29
  71. package/packages/skins/pretty/components/header/components/theme/index.vue +22 -21
  72. package/packages/skins/pretty/components/header/index.vue +12 -12
  73. package/packages/skins/pretty/components/main/index.vue +27 -27
  74. package/packages/skins/pretty/components/menus/index.vue +28 -28
  75. package/packages/skins/pretty/components/menus/item.vue +23 -23
  76. package/packages/skins/pretty/components/sidebar/index.vue +7 -7
  77. package/packages/skins/pretty/index.vue +6 -6
  78. package/packages/skins/pretty/styles/themes/blue-light/_index.scss +2 -2
  79. package/packages/skins/pretty/styles/themes/default/_index.scss +1 -1
  80. package/packages/skins/pretty/styles/themes/green/_index.scss +2 -2
  81. package/packages/skins/pretty/styles/themes/green-light/_index.scss +2 -2
  82. package/packages/styles/_mixins.scss +24 -25
  83. package/packages/styles/animation/_index.scss +22 -23
  84. package/packages/styles/animation/breadcrumb.scss +6 -6
  85. package/packages/styles/animation/fade.scss +11 -11
  86. package/packages/styles/animation/move.scss +98 -98
  87. package/packages/styles/components/box-small/_index.scss +58 -58
  88. package/packages/styles/components/button/_index.scss +7 -7
  89. package/packages/styles/components/container/_index.scss +26 -26
  90. package/packages/styles/components/date-range-picker/_index.scss +4 -4
  91. package/packages/styles/components/details/_index.scss +66 -67
  92. package/packages/styles/components/details-dialog/_index.scss +13 -13
  93. package/packages/styles/components/drag-sort/_index.scss +20 -20
  94. package/packages/styles/components/drag-sort-dialog/_index.scss +7 -7
  95. package/packages/styles/components/flex/_index.scss +56 -56
  96. package/packages/styles/components/form-dialog/_index.scss +11 -11
  97. package/packages/styles/components/icon/_index.scss +6 -6
  98. package/packages/styles/components/label/_index.scss +245 -245
  99. package/packages/styles/components/listbox/_index.scss +47 -47
  100. package/packages/styles/components/split/_index.scss +102 -102
  101. package/packages/styles/components/toolbar/_index.scss +98 -98
  102. package/packages/styles/components/txt/_index.scss +13 -13
  103. package/packages/styles/components/upload-dialog/_index.scss +44 -44
  104. package/packages/styles/components/upload-multiple/_index.scss +19 -19
  105. package/packages/styles/components/upload-single/_index.scss +16 -16
  106. package/packages/utils/resize-event.js +3 -3
  107. package/packages/vuter/attributes.json +30 -40
  108. package/packages/vuter/tags.json +11 -27
  109. package/public/lib/font/iconfont.js +47 -1
@@ -1,210 +1,191 @@
1
1
  <template>
2
2
  <section class="nm-list-body-table">
3
- <el-table
4
- ref="table"
5
- headerRowClassName="nm-list-body-table-header"
6
- border
7
- stripe
8
- highlight-current-row
9
- :show-summary="showSummary"
10
- :sum-text="sumText"
11
- :summary-method="summaryMethod"
12
- :size="fontSize"
13
- :height="height"
14
- :span-method="spanMethod"
15
- :data="rows"
16
- :tree-props="treeProps"
17
- :row-key="rowKey"
18
- :lazy="lazy"
19
- :load="load"
20
- :default-expand-all="defaultExpandAll"
21
- v-on="on"
22
- >
3
+ <el-table ref="table" headerRowClassName="nm-list-body-table-header" border stripe highlight-current-row :show-summary="showSummary" :sum-text="sumText" :summary-method="summaryMethod" :size="fontSize" :height="height" :span-method="spanMethod" :data="rows" :tree-props="treeProps" :row-key="rowKey" :lazy="lazy" :load="load" :default-expand-all="defaultExpandAll" v-on="on">
23
4
  <slot />
24
5
  </el-table>
25
6
  </section>
26
7
  </template>
27
8
  <script>
28
- export default {
29
- data() {
30
- return {
31
- on: {
32
- select: this.onSelect,
33
- 'select-all': this.onSelectAll,
34
- 'selection-change': this.onSelectionChange,
35
- 'cell-mouse-enter': this.onCellMouseEnter,
36
- 'cell-mouse-leave': this.onCellMouseLeave,
37
- 'cell-click': this.onCellClick,
38
- 'cell-dblclick': this.onCellDblclick,
39
- 'row-click': this.onRowClick,
40
- 'row-contextmenu': this.onRowContextmenu,
41
- 'row-dblclick': this.onRowDblclick,
42
- 'header-click': this.onHeaderClick,
43
- 'header-contextmenu': this.onHeaderContextmenu,
44
- 'sort-change': this.onSortChange,
45
- 'current-change': this.onCurrentChange,
46
- 'expand-change': this.onExpandChange
9
+ export default {
10
+ data() {
11
+ return {
12
+ on: {
13
+ select: this.onSelect,
14
+ 'select-all': this.onSelectAll,
15
+ 'selection-change': this.onSelectionChange,
16
+ 'cell-mouse-enter': this.onCellMouseEnter,
17
+ 'cell-mouse-leave': this.onCellMouseLeave,
18
+ 'cell-click': this.onCellClick,
19
+ 'cell-dblclick': this.onCellDblclick,
20
+ 'row-click': this.onRowClick,
21
+ 'row-contextmenu': this.onRowContextmenu,
22
+ 'row-dblclick': this.onRowDblclick,
23
+ 'header-click': this.onHeaderClick,
24
+ 'header-contextmenu': this.onHeaderContextmenu,
25
+ 'sort-change': this.onSortChange,
26
+ 'current-change': this.onCurrentChange,
27
+ 'expand-change': this.onExpandChange
28
+ }
47
29
  }
48
- }
49
- },
50
- props: {
51
- /** 高度 */
52
- height: {
53
- type: String,
54
- default: '100%'
55
30
  },
56
- /** 数据 */
57
- rows: Array,
58
- /** 合并行列方法 */
59
- spanMethod: Function,
60
- /**渲染嵌套数据的配置选项 */
61
- treeProps: Object,
62
- /*行数据的 Key,用来优化 Table 的渲染;
31
+ props: {
32
+ /** 高度 */
33
+ height: {
34
+ type: String,
35
+ default: '100%'
36
+ },
37
+ /** 数据 */
38
+ rows: Array,
39
+ /** 合并行列方法 */
40
+ spanMethod: Function,
41
+ /**渲染嵌套数据的配置选项 */
42
+ treeProps: Object,
43
+ /*行数据的 Key,用来优化 Table 的渲染;
63
44
  在使用 reserve-selection 功能与显示树形数据时,该属性是必填的。
64
45
  类型为 String 时,支持多层访问:user.info.id,但不支持 user.info[0].id,此种情况请使用 Function。*/
65
- rowKey: [Function, String],
66
- /*是否懒加载子节点数据*/
67
- lazy: Boolean,
68
- /**加载子节点数据的函数,lazy 为 true 时生效,函数第二个参数包含了节点的层级信息 */
69
- load: Function,
70
- /**是否默认展开所有行,当 Table 包含展开行存在或者为树形表格时有效 */
71
- defaultExpandAll: Boolean,
72
- /**当刷新时不清空已选择数据 */
73
- noClearSelection: Boolean,
74
- /**是否显示合计行 */
75
- showSummary: Boolean,
76
- /**合计行文本 */
77
- sumText: String,
78
- /**合计行自定义逻辑方法 */
79
- summaryMethod: Function
80
- },
81
- methods: {
82
- /** 清除排序 */
83
- clearSort() {
84
- this.$refs.table.clearSort()
85
- },
86
- /** 滚动到顶部 */
87
- scrollTop() {
88
- this.$nextTick(() => {
89
- this.$el.querySelector('.el-table__body-wrapper').scrollTop = 0
90
- })
91
- },
92
- /** 重绘布局 */
93
- doLayout() {
94
- this.$nextTick(() => {
95
- this.$refs.table.doLayout()
96
- })
97
- },
98
- /** 用于多选表格,切换某一行的选中状态,如果使用了第二个参数,则是设置这一行选中与否(selected 为 true 则选中) */
99
- toggleRowSelection(row, selected) {
100
- this.$refs.table.toggleRowSelection(row, selected)
101
- },
102
- /** 当用户手动勾选数据行的 Checkbox 时触发的事件 */
103
- onSelect(selection, row) {
104
- if (this.noClearSelection) {
105
- let hasSelection = this.$parent.selection
106
- if (!selection.every(m => m.id !== row.id)) {
107
- //添加
108
- hasSelection.push(row)
109
- } else {
110
- //移除
111
- for (let i = 0; i < hasSelection.length; i++) {
112
- if (hasSelection[i].id == row.id) {
113
- hasSelection.splice(i, 1)
114
- break
115
- }
116
- }
117
- }
118
- }
119
- this.$parent.$emit('select', selection, row)
120
- },
121
- /** 当用户手动勾选全选 Checkbox 时触发的事件 */
122
- onSelectAll(selection) {
123
- if (this.noClearSelection) {
124
- let hasSelection = this.$parent.selection
125
- if (selection.length > 0) {
126
- this.rows.forEach(m => {
127
- if (!hasSelection.every(n => n.id !== m.id)) {
128
- hasSelection.push(m)
129
- }
130
- })
131
- } else {
132
- //移除
133
- this.rows.forEach(m => {
46
+ rowKey: [Function, String],
47
+ /*是否懒加载子节点数据*/
48
+ lazy: Boolean,
49
+ /**加载子节点数据的函数,lazy 为 true 时生效,函数第二个参数包含了节点的层级信息 */
50
+ load: Function,
51
+ /**是否默认展开所有行,当 Table 包含展开行存在或者为树形表格时有效 */
52
+ defaultExpandAll: Boolean,
53
+ /**当刷新时不清空已选择数据 */
54
+ noClearSelection: Boolean,
55
+ /**是否显示合计行 */
56
+ showSummary: Boolean,
57
+ /**合计行文本 */
58
+ sumText: String,
59
+ /**合计行自定义逻辑方法 */
60
+ summaryMethod: Function
61
+ },
62
+ methods: {
63
+ /** 清除排序 */
64
+ clearSort() {
65
+ this.$refs.table.clearSort()
66
+ },
67
+ /** 滚动到顶部 */
68
+ scrollTop() {
69
+ this.$nextTick(() => {
70
+ this.$el.querySelector('.el-table__body-wrapper').scrollTop = 0
71
+ })
72
+ },
73
+ /** 重绘布局 */
74
+ doLayout() {
75
+ this.$nextTick(() => {
76
+ this.$refs.table.doLayout()
77
+ })
78
+ },
79
+ /** 用于多选表格,切换某一行的选中状态,如果使用了第二个参数,则是设置这一行选中与否(selected 为 true 则选中) */
80
+ toggleRowSelection(row, selected) {
81
+ this.$refs.table.toggleRowSelection(row, selected)
82
+ },
83
+ /** 当用户手动勾选数据行的 Checkbox 时触发的事件 */
84
+ onSelect(selection, row) {
85
+ if (this.noClearSelection) {
86
+ let hasSelection = this.$parent.selection
87
+ if (!selection.every(m => m.id !== row.id)) {
88
+ //添加
89
+ hasSelection.push(row)
90
+ } else {
91
+ //移除
134
92
  for (let i = 0; i < hasSelection.length; i++) {
135
- if (hasSelection[i].id == m.id) {
93
+ if (hasSelection[i].id == row.id) {
136
94
  hasSelection.splice(i, 1)
137
95
  break
138
96
  }
139
97
  }
140
- })
98
+ }
99
+ }
100
+ this.$parent.$emit('select', selection, row)
101
+ },
102
+ /** 当用户手动勾选全选 Checkbox 时触发的事件 */
103
+ onSelectAll(selection) {
104
+ if (this.noClearSelection) {
105
+ let hasSelection = this.$parent.selection
106
+ if (selection.length > 0) {
107
+ this.rows.forEach(m => {
108
+ if (!hasSelection.every(n => n.id !== m.id)) {
109
+ hasSelection.push(m)
110
+ }
111
+ })
112
+ } else {
113
+ //移除
114
+ this.rows.forEach(m => {
115
+ for (let i = 0; i < hasSelection.length; i++) {
116
+ if (hasSelection[i].id == m.id) {
117
+ hasSelection.splice(i, 1)
118
+ break
119
+ }
120
+ }
121
+ })
122
+ }
123
+ }
124
+ this.$parent.$emit('select-all', this.$parent.selection)
125
+ },
126
+ /** 当选择项发生变化时会触发该事件 */
127
+ onSelectionChange(selection) {
128
+ if (!this.noClearSelection) {
129
+ this.$parent.selection = selection
130
+ }
131
+ this.$parent.$emit('selection-change', this.$parent.selection)
132
+ },
133
+ /** 当单元格 hover 进入时会触发该事件 */
134
+ onCellMouseEnter(row, column, cell, event) {
135
+ this.$parent.$emit('cell-mouse-enter', row, column, cell, event)
136
+ },
137
+ /** 当单元格 hover 退出时会触发该事件 */
138
+ onCellMouseLeave(row, column, cell, event) {
139
+ this.$parent.$emit('cell-mouse-leave', row, column, cell, event)
140
+ },
141
+ /** 当某个单元格被点击时会触发该事件 */
142
+ onCellClick(row, column, cell, event) {
143
+ this.$parent.$emit('cell-click', row, column, cell, event)
144
+ },
145
+ /** 当某个单元格被双击击时会触发该事件 */
146
+ onCellDblclick(row, column, cell, event) {
147
+ this.$parent.$emit('cell-dblclick', row, column, cell, event)
148
+ },
149
+ /** 当某一行被点击时会触发该事件 */
150
+ onRowClick(row, event, column) {
151
+ this.$parent.$emit('row-click', row, event, column)
152
+ },
153
+ /** 当某一行被鼠标右键点击时会触发该事件 */
154
+ onRowContextmenu(row, event) {
155
+ this.$parent.$emit('row-contextmenu', row, event)
156
+ },
157
+ /** 当某一行被双击时会触发该事件 */
158
+ onRowDblclick(row, event) {
159
+ this.$parent.$emit('row-dblclick', row, event)
160
+ },
161
+ /** 当某一列的表头被点击时会触发该事件 */
162
+ onHeaderClick(column, event) {
163
+ this.$parent.$emit('header-click', column, event)
164
+ },
165
+ /** 当某一列的表头被鼠标右键点击时触发该事件 */
166
+ onHeaderContextmenu(column, event) {
167
+ this.$parent.$emit('header-contextmenu', column, event)
168
+ },
169
+ /** 当表格的排序条件发生变化的时候会触发该事件 */
170
+ onSortChange(val) {
171
+ this.$parent.page.sort = []
172
+ // 将排序信息转化成后端的格式
173
+ if (val.prop !== null) {
174
+ this.$parent.page.sort.push({ field: val.prop, type: val.order === 'ascending' ? 0 : 1 })
141
175
  }
142
- }
143
- this.$parent.$emit('select-all', this.$parent.selection)
144
- },
145
- /** 当选择项发生变化时会触发该事件 */
146
- onSelectionChange(selection) {
147
- if (!this.noClearSelection) {
148
- this.$parent.selection = selection
149
- }
150
- this.$parent.$emit('selection-change', this.$parent.selection)
151
- },
152
- /** 当单元格 hover 进入时会触发该事件 */
153
- onCellMouseEnter(row, column, cell, event) {
154
- this.$parent.$emit('cell-mouse-enter', row, column, cell, event)
155
- },
156
- /** 当单元格 hover 退出时会触发该事件 */
157
- onCellMouseLeave(row, column, cell, event) {
158
- this.$parent.$emit('cell-mouse-leave', row, column, cell, event)
159
- },
160
- /** 当某个单元格被点击时会触发该事件 */
161
- onCellClick(row, column, cell, event) {
162
- this.$parent.$emit('cell-click', row, column, cell, event)
163
- },
164
- /** 当某个单元格被双击击时会触发该事件 */
165
- onCellDblclick(row, column, cell, event) {
166
- this.$parent.$emit('cell-dblclick', row, column, cell, event)
167
- },
168
- /** 当某一行被点击时会触发该事件 */
169
- onRowClick(row, event, column) {
170
- this.$parent.$emit('row-click', row, event, column)
171
- },
172
- /** 当某一行被鼠标右键点击时会触发该事件 */
173
- onRowContextmenu(row, event) {
174
- this.$parent.$emit('row-contextmenu', row, event)
175
- },
176
- /** 当某一行被双击时会触发该事件 */
177
- onRowDblclick(row, event) {
178
- this.$parent.$emit('row-dblclick', row, event)
179
- },
180
- /** 当某一列的表头被点击时会触发该事件 */
181
- onHeaderClick(column, event) {
182
- this.$parent.$emit('header-click', column, event)
183
- },
184
- /** 当某一列的表头被鼠标右键点击时触发该事件 */
185
- onHeaderContextmenu(column, event) {
186
- this.$parent.$emit('header-contextmenu', column, event)
187
- },
188
- /** 当表格的排序条件发生变化的时候会触发该事件 */
189
- onSortChange(val) {
190
- this.$parent.page.sort = []
191
- // 将排序信息转化成后端的格式
192
- if (val.prop !== null) {
193
- this.$parent.page.sort.push({ field: val.prop, type: val.order === 'ascending' ? 0 : 1 })
194
- }
195
176
 
196
- this.$parent.refresh()
177
+ this.$parent.refresh()
197
178
 
198
- this.$parent.$emit('sort-change', this.$parent.page.sort, val)
199
- },
200
- /** 当表格的当前行发生变化的时候会触发该事件,如果要高亮当前行,请打开表格的 highlight-current-row 属性 */
201
- onCurrentChange(currentRow, oldCurrentRow) {
202
- this.$parent.$emit('current-change', currentRow, oldCurrentRow)
203
- },
204
- /**当用户对某一行展开或者关闭的时候会触发该事件(展开行时,回调的第二个参数为 expandedRows;树形表格时第二参数为 expanded) */
205
- onExpandChange(currentRow, expandedRows) {
206
- this.$parent.$emit('expand-change', currentRow, expandedRows)
179
+ this.$parent.$emit('sort-change', this.$parent.page.sort, val)
180
+ },
181
+ /** 当表格的当前行发生变化的时候会触发该事件,如果要高亮当前行,请打开表格的 highlight-current-row 属性 */
182
+ onCurrentChange(currentRow, oldCurrentRow) {
183
+ this.$parent.$emit('current-change', currentRow, oldCurrentRow)
184
+ },
185
+ /**当用户对某一行展开或者关闭的时候会触发该事件(展开行时,回调的第二个参数为 expandedRows;树形表格时第二参数为 expanded) */
186
+ onExpandChange(currentRow, expandedRows) {
187
+ this.$parent.$emit('expand-change', currentRow, expandedRows)
188
+ }
207
189
  }
208
190
  }
209
- }
210
191
  </script>