eoss-ui 0.6.20 → 0.6.21

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 (100) hide show
  1. package/lib/eoss-ui.common.js +362 -355
  2. package/lib/flow.js +118 -118
  3. package/lib/form.js +3 -3
  4. package/lib/index.js +1 -1
  5. package/lib/login.js +2 -3
  6. package/lib/main.js +210 -202
  7. package/lib/qr-code.js +13 -13
  8. package/lib/theme-chalk/index.css +1 -1
  9. package/lib/theme-chalk/login.css +1 -1
  10. package/lib/theme-chalk/selector.css +1 -1
  11. package/package.json +157 -157
  12. package/packages/.DS_Store +0 -0
  13. package/packages/button/src/main.vue +418 -418
  14. package/packages/button-group/src/main.vue +298 -298
  15. package/packages/checkbox-group/.DS_Store +0 -0
  16. package/packages/checkbox-group/src/main.vue +333 -333
  17. package/packages/clients/src/main.vue +144 -144
  18. package/packages/data-table/.DS_Store +0 -0
  19. package/packages/data-table/src/children.vue +39 -39
  20. package/packages/data-table/src/column.vue +983 -983
  21. package/packages/data-table/src/main.vue +1812 -1812
  22. package/packages/data-table/src/sizer.vue +195 -195
  23. package/packages/date-picker/src/main.vue +236 -236
  24. package/packages/dialog/.DS_Store +0 -0
  25. package/packages/flow/src/main.vue +2731 -2731
  26. package/packages/flow-group/src/main.vue +684 -684
  27. package/packages/form/src/main.vue +3582 -3582
  28. package/packages/form/src/table.vue +1420 -1420
  29. package/packages/handle-user/src/main.vue +134 -134
  30. package/packages/handler/.DS_Store +0 -0
  31. package/packages/handler/src/main.vue +374 -374
  32. package/packages/icon/src/main.vue +101 -101
  33. package/packages/input/src/main.vue +356 -356
  34. package/packages/login/.DS_Store +0 -0
  35. package/packages/login/src/main.vue +1850 -1851
  36. package/packages/login/src/resetPassword.vue +557 -557
  37. package/packages/main/.DS_Store +0 -0
  38. package/packages/main/src/.DS_Store +0 -0
  39. package/packages/main/src/default/message.vue +249 -249
  40. package/packages/main/src/default/notice.vue +157 -157
  41. package/packages/main/src/default/userinfo.vue +494 -494
  42. package/packages/main/src/main.vue +65 -57
  43. package/packages/main/src/public/online.vue +89 -89
  44. package/packages/main/src/public/search.vue +454 -454
  45. package/packages/main/src/public/settings.vue +221 -221
  46. package/packages/main/src/simplicity/apps.vue +388 -388
  47. package/packages/main/src/simplicity/avatar.vue +82 -82
  48. package/packages/main/src/simplicity/handler.vue +183 -183
  49. package/packages/main/src/simplicity/index.vue +1931 -1930
  50. package/packages/main/src/simplicity/lists.vue +84 -84
  51. package/packages/main/src/simplicity/menu-list.vue +128 -128
  52. package/packages/main/src/simplicity/message.vue +259 -259
  53. package/packages/main/src/simplicity/notice.vue +190 -190
  54. package/packages/main/src/simplicity/router-page.vue +45 -45
  55. package/packages/main/src/simplicity/sub-menu.vue +241 -241
  56. package/packages/main/src/simplicity/user.vue +248 -248
  57. package/packages/main/src/simplicity/userinfo.vue +304 -304
  58. package/packages/menu/src/main.vue +536 -536
  59. package/packages/pagination/src/main.vue +96 -96
  60. package/packages/qr-code/src/main.vue +170 -170
  61. package/packages/radio-group/src/main.vue +319 -319
  62. package/packages/select/src/main.vue +761 -761
  63. package/packages/selector/src/main.vue +677 -677
  64. package/packages/selector-panel/src/main.vue +1020 -1020
  65. package/packages/selector-panel/src/selection.vue +160 -160
  66. package/packages/tabs/src/main.vue +788 -788
  67. package/packages/theme-chalk/lib/index.css +1 -1
  68. package/packages/theme-chalk/lib/login.css +1 -1
  69. package/packages/theme-chalk/lib/selector.css +1 -1
  70. package/packages/theme-chalk/src/.DS_Store +0 -0
  71. package/packages/theme-chalk/src/base.scss +260 -260
  72. package/packages/theme-chalk/src/button-group.scss +175 -175
  73. package/packages/theme-chalk/src/calendar.scss +113 -113
  74. package/packages/theme-chalk/src/clients.scss +87 -87
  75. package/packages/theme-chalk/src/common/var.scss +4 -1
  76. package/packages/theme-chalk/src/data-table.scss +276 -276
  77. package/packages/theme-chalk/src/dialog.scss +77 -77
  78. package/packages/theme-chalk/src/flow-group.scss +110 -110
  79. package/packages/theme-chalk/src/form.scss +496 -496
  80. package/packages/theme-chalk/src/handler.scss +133 -133
  81. package/packages/theme-chalk/src/icon.scss +1745 -1745
  82. package/packages/theme-chalk/src/icons.scss +99 -99
  83. package/packages/theme-chalk/src/login.scss +926 -917
  84. package/packages/theme-chalk/src/main.scss +632 -632
  85. package/packages/theme-chalk/src/menu.scss +222 -222
  86. package/packages/theme-chalk/src/nav.scss +125 -125
  87. package/packages/theme-chalk/src/pagination.scss +29 -29
  88. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  89. package/packages/theme-chalk/src/selector.scss +1 -1
  90. package/packages/theme-chalk/src/simplicity.scss +1246 -1246
  91. package/packages/theme-chalk/src/tabs.scss +87 -87
  92. package/packages/theme-chalk/src/toolbar.scss +179 -179
  93. package/packages/theme-chalk/src/tree-group.scss +72 -72
  94. package/packages/theme-chalk/src/tree.scss +165 -165
  95. package/packages/upload/src/main.vue +1313 -1313
  96. package/packages/wujie/src/main.vue +145 -145
  97. package/src/.DS_Store +0 -0
  98. package/src/config/api.js +236 -236
  99. package/src/config/image.js +2 -2
  100. package/src/index.js +157 -157
@@ -1,298 +1,298 @@
1
- <template>
2
- <el-button-group class="es-button-group">
3
- <template v-if="length > 1">
4
- <template v-for="(item, index) in showBtns">
5
- <template v-if="item && !item.hide">
6
- <es-upload
7
- v-if="item.upload || (item.code && item.ownId)"
8
- v-bind="{
9
- ...exclAttribute({
10
- data: item,
11
- attrs: ['events']
12
- }),
13
- ...parseProps(),
14
- method: 'post',
15
- btnSize: size,
16
- showFileList: false,
17
- selectType: mode == 'plus' ? 'text' : item.type
18
- }"
19
- v-on="item.events"
20
- ></es-upload>
21
- <es-button
22
- v-else
23
- :stop="stop"
24
- :data="data"
25
- :outside="outside"
26
- v-bind="
27
- exclAttribute({
28
- data: item,
29
- attrs: ['events']
30
- })
31
- "
32
- :key="index"
33
- :size="size"
34
- :type="mode == 'plus' ? 'text' : item.type"
35
- v-on="item.events"
36
- @click="handleClick({ ...data, handle: item })"
37
- >
38
- {{
39
- item.template
40
- ? item.template({ ...data, config: item })
41
- : item.text
42
- }}
43
- </es-button>
44
- </template>
45
- </template>
46
- </template>
47
- <el-dropdown
48
- v-if="other.length > 0"
49
- ref="dropdown"
50
- @command="handleCommand"
51
- @visible-change="handleChange"
52
- :trigger="trigger"
53
- >
54
- <el-button :size="size" :type="mode == 'plus' ? 'text' : ''">
55
- <el-badge v-bind="badges">
56
- <template v-if="mode == 'plus'">更多</template>
57
- <template v-else-if="moreText">
58
- {{ moreText }}
59
- <i
60
- :class="{
61
- 'el-icon-arrow-down': !show,
62
- 'el-icon-arrow-up': show
63
- }"
64
- ></i>
65
- </template>
66
- <i v-else class="es-icon-omit"></i>
67
- </el-badge>
68
- </el-button>
69
- <el-dropdown-menu slot="dropdown">
70
- <el-dropdown-item
71
- v-for="(item, index) in other"
72
- :key="index"
73
- :command="item"
74
- :class="{ 'es-dropdown-padding': item.upload || item.selector }"
75
- v-show="!item.hide"
76
- >
77
- <es-upload
78
- v-if="item.upload || (item.code && item.ownId)"
79
- class="es-dropdown-upload"
80
- v-bind="{
81
- ...exclAttribute({
82
- data: item,
83
- attrs: ['events']
84
- }),
85
- ...parseProps(),
86
- method: 'post',
87
- showFileList: false,
88
- selectType: 'text'
89
- }"
90
- v-on="item.events"
91
- ></es-upload>
92
- <es-selector
93
- v-else-if="item.selector"
94
- class="es-dropdown-selector"
95
- v-bind="{
96
- reset: true,
97
- ...exclAttribute({
98
- data: item,
99
- attrs: ['events', 'type', 'value']
100
- }),
101
- businessData: data
102
- }"
103
- v-on="item.events"
104
- :button="{ size: 'medium', type: 'text' }"
105
- >
106
- <i :class="item.icon" v-if="item.icon"></i
107
- >{{
108
- item.template
109
- ? item.template({ ...data, config: item })
110
- : item.text
111
- }}
112
- </es-selector>
113
- <template v-else>
114
- <i :class="item.icon" v-if="item.icon"></i
115
- >{{
116
- item.template
117
- ? item.template({ ...data, config: item })
118
- : item.text
119
- }}
120
- </template>
121
- <el-badge
122
- v-if="item.badge"
123
- v-bind="
124
- typeof item.badge === 'number'
125
- ? { value: item.badge }
126
- : item.badge
127
- "
128
- ></el-badge>
129
- </el-dropdown-item>
130
- </el-dropdown-menu>
131
- </el-dropdown>
132
- </el-button-group>
133
- </template>
134
- <script>
135
- import util from 'eoss-ui/src/utils/util';
136
- export default {
137
- name: 'EsButtonGroup',
138
- provide() {
139
- return {
140
- btnGroup: this
141
- };
142
- },
143
- props: {
144
- mode: String,
145
- value: String,
146
- data: Object,
147
- contents: { type: Array, default: [] },
148
- length: {
149
- type: Number,
150
- default: 3
151
- },
152
- rules: Function,
153
- stop: Boolean,
154
- trigger: {
155
- type: String,
156
- default: 'hover'
157
- },
158
- useCaseCodeKey: String,
159
- moreText: String,
160
- size: {
161
- type: String,
162
- default: 'mini'
163
- },
164
- placement: {
165
- type: String,
166
- default: 'bottom'
167
- },
168
- parseData: Function,
169
- badge: Object,
170
- sort: Boolean,
171
- outside: {
172
- type: Boolean,
173
- default: true
174
- }
175
- },
176
- computed: {
177
- btns() {
178
- return this.getBtns();
179
- },
180
- showBtns() {
181
- return this.btns.length > this.length
182
- ? this.btns.slice(0, this.length - 1)
183
- : this.btns;
184
- },
185
- other() {
186
- let btns =
187
- this.length > 0 && (this.btns.length > this.length || this.length == 1)
188
- ? this.btns.slice(this.length - 1, this.btns.length)
189
- : [];
190
- return btns;
191
- },
192
- badges() {
193
- if (
194
- this.other.length &&
195
- this.other.filter((item) => {
196
- return item.badge;
197
- }).length
198
- ) {
199
- return this.badge ? { isDot: true, ...this.badge } : { isDot: true };
200
- }
201
- return this.badge
202
- ? { isDot: true, hidden: true, ...this.badge }
203
- : { isDot: true, hidden: true };
204
- }
205
- },
206
- watch: {},
207
- data() {
208
- return {
209
- show: false
210
- };
211
- },
212
- mounted() {
213
- this.resetWidth();
214
- },
215
- methods: {
216
- exclAttribute({ data, attrs }) {
217
- return util.exclAttribute({ data, attrs });
218
- },
219
- getBtns() {
220
- let useCaseCodes = util.getStorage('useCaseCodes');
221
- let keyword =
222
- this.data && this.useCaseCodeKey
223
- ? this.data.row[this.useCaseCodeKey]
224
- : null;
225
- let arry = this.contents.filter((item) => {
226
- if (Object.prototype.hasOwnProperty.call(item, 'rules')) {
227
- if (useCaseCodes && (item.useCaseCode || keyword)) {
228
- return (
229
- item.rules(this.data.row) &&
230
- useCaseCodes.indexOf(item.useCaseCode || keyword) > -1
231
- );
232
- }
233
- return item.rules(this.data.row);
234
- }
235
- if (this.rules !== undefined) {
236
- if (useCaseCodes && (item.useCaseCode || keyword)) {
237
- return (
238
- this.rules(this.data.row) &&
239
- useCaseCodes.indexOf(item.useCaseCode || keyword) > -1
240
- );
241
- }
242
- return this.rules(this.data.row);
243
- }
244
- if (useCaseCodes && (item.useCaseCode || keyword)) {
245
- return useCaseCodes.indexOf(item.useCaseCode || keyword) > -1;
246
- }
247
- return true;
248
- });
249
- let newBtns = arry.map((item) => {
250
- let badge;
251
- if (item.badge && typeof item.badge === 'function') {
252
- badge = item.badge(this.data.row);
253
- }
254
- return badge ? { ...item, badge: badge } : { ...item };
255
- });
256
- if (this.sort) {
257
- newBtns = newBtns.sort((a, b) => {
258
- return (b.badge ? 1 : 0) - (a.badge ? 1 : 0);
259
- });
260
- }
261
- return newBtns;
262
- },
263
- handleChange(res) {
264
- this.show = res;
265
- },
266
- handleClick(obj) {
267
- this.$emit('handleClick', obj);
268
- this.$emit('handle-click', obj);
269
- },
270
- handleCommand(res) {
271
- if (res.upload || res.selector) {
272
- this.$refs.dropdown.hide();
273
- return false;
274
- }
275
- this.$emit('handleClick', { ...this.data, handle: res });
276
- this.$emit('handle-click', { ...this.data, handle: res });
277
- },
278
- resetWidth() {
279
- this.$nextTick(() => {
280
- let childNodes = this.$el.childNodes;
281
- let width = parseInt(this.value, 10);
282
- let w = 0;
283
- for (let i = 0; i < childNodes.length; i++) {
284
- let item = childNodes[i];
285
- w += item.clientWidth ? item.clientWidth : 0;
286
- }
287
- w += 20 + childNodes.length + 10;
288
- if (w > width) {
289
- this.$emit('input', w + 'px');
290
- }
291
- });
292
- },
293
- parseProps() {
294
- return this.parseData && this.data ? this.parseData(this.data) : {};
295
- }
296
- }
297
- };
298
- </script>
1
+ <template>
2
+ <el-button-group class="es-button-group">
3
+ <template v-if="length > 1">
4
+ <template v-for="(item, index) in showBtns">
5
+ <template v-if="item && !item.hide">
6
+ <es-upload
7
+ v-if="item.upload || (item.code && item.ownId)"
8
+ v-bind="{
9
+ ...exclAttribute({
10
+ data: item,
11
+ attrs: ['events']
12
+ }),
13
+ ...parseProps(),
14
+ method: 'post',
15
+ btnSize: size,
16
+ showFileList: false,
17
+ selectType: mode == 'plus' ? 'text' : item.type
18
+ }"
19
+ v-on="item.events"
20
+ ></es-upload>
21
+ <es-button
22
+ v-else
23
+ :stop="stop"
24
+ :data="data"
25
+ :outside="outside"
26
+ v-bind="
27
+ exclAttribute({
28
+ data: item,
29
+ attrs: ['events']
30
+ })
31
+ "
32
+ :key="index"
33
+ :size="size"
34
+ :type="mode == 'plus' ? 'text' : item.type"
35
+ v-on="item.events"
36
+ @click="handleClick({ ...data, handle: item })"
37
+ >
38
+ {{
39
+ item.template
40
+ ? item.template({ ...data, config: item })
41
+ : item.text
42
+ }}
43
+ </es-button>
44
+ </template>
45
+ </template>
46
+ </template>
47
+ <el-dropdown
48
+ v-if="other.length > 0"
49
+ ref="dropdown"
50
+ @command="handleCommand"
51
+ @visible-change="handleChange"
52
+ :trigger="trigger"
53
+ >
54
+ <el-button :size="size" :type="mode == 'plus' ? 'text' : ''">
55
+ <el-badge v-bind="badges">
56
+ <template v-if="mode == 'plus'">更多</template>
57
+ <template v-else-if="moreText">
58
+ {{ moreText }}
59
+ <i
60
+ :class="{
61
+ 'el-icon-arrow-down': !show,
62
+ 'el-icon-arrow-up': show
63
+ }"
64
+ ></i>
65
+ </template>
66
+ <i v-else class="es-icon-omit"></i>
67
+ </el-badge>
68
+ </el-button>
69
+ <el-dropdown-menu slot="dropdown">
70
+ <el-dropdown-item
71
+ v-for="(item, index) in other"
72
+ :key="index"
73
+ :command="item"
74
+ :class="{ 'es-dropdown-padding': item.upload || item.selector }"
75
+ v-show="!item.hide"
76
+ >
77
+ <es-upload
78
+ v-if="item.upload || (item.code && item.ownId)"
79
+ class="es-dropdown-upload"
80
+ v-bind="{
81
+ ...exclAttribute({
82
+ data: item,
83
+ attrs: ['events']
84
+ }),
85
+ ...parseProps(),
86
+ method: 'post',
87
+ showFileList: false,
88
+ selectType: 'text'
89
+ }"
90
+ v-on="item.events"
91
+ ></es-upload>
92
+ <es-selector
93
+ v-else-if="item.selector"
94
+ class="es-dropdown-selector"
95
+ v-bind="{
96
+ reset: true,
97
+ ...exclAttribute({
98
+ data: item,
99
+ attrs: ['events', 'type', 'value']
100
+ }),
101
+ businessData: data
102
+ }"
103
+ v-on="item.events"
104
+ :button="{ size: 'medium', type: 'text' }"
105
+ >
106
+ <i :class="item.icon" v-if="item.icon"></i
107
+ >{{
108
+ item.template
109
+ ? item.template({ ...data, config: item })
110
+ : item.text
111
+ }}
112
+ </es-selector>
113
+ <template v-else>
114
+ <i :class="item.icon" v-if="item.icon"></i
115
+ >{{
116
+ item.template
117
+ ? item.template({ ...data, config: item })
118
+ : item.text
119
+ }}
120
+ </template>
121
+ <el-badge
122
+ v-if="item.badge"
123
+ v-bind="
124
+ typeof item.badge === 'number'
125
+ ? { value: item.badge }
126
+ : item.badge
127
+ "
128
+ ></el-badge>
129
+ </el-dropdown-item>
130
+ </el-dropdown-menu>
131
+ </el-dropdown>
132
+ </el-button-group>
133
+ </template>
134
+ <script>
135
+ import util from 'eoss-ui/src/utils/util';
136
+ export default {
137
+ name: 'EsButtonGroup',
138
+ provide() {
139
+ return {
140
+ btnGroup: this
141
+ };
142
+ },
143
+ props: {
144
+ mode: String,
145
+ value: String,
146
+ data: Object,
147
+ contents: { type: Array, default: [] },
148
+ length: {
149
+ type: Number,
150
+ default: 3
151
+ },
152
+ rules: Function,
153
+ stop: Boolean,
154
+ trigger: {
155
+ type: String,
156
+ default: 'hover'
157
+ },
158
+ useCaseCodeKey: String,
159
+ moreText: String,
160
+ size: {
161
+ type: String,
162
+ default: 'mini'
163
+ },
164
+ placement: {
165
+ type: String,
166
+ default: 'bottom'
167
+ },
168
+ parseData: Function,
169
+ badge: Object,
170
+ sort: Boolean,
171
+ outside: {
172
+ type: Boolean,
173
+ default: true
174
+ }
175
+ },
176
+ computed: {
177
+ btns() {
178
+ return this.getBtns();
179
+ },
180
+ showBtns() {
181
+ return this.btns.length > this.length
182
+ ? this.btns.slice(0, this.length - 1)
183
+ : this.btns;
184
+ },
185
+ other() {
186
+ let btns =
187
+ this.length > 0 && (this.btns.length > this.length || this.length == 1)
188
+ ? this.btns.slice(this.length - 1, this.btns.length)
189
+ : [];
190
+ return btns;
191
+ },
192
+ badges() {
193
+ if (
194
+ this.other.length &&
195
+ this.other.filter((item) => {
196
+ return item.badge;
197
+ }).length
198
+ ) {
199
+ return this.badge ? { isDot: true, ...this.badge } : { isDot: true };
200
+ }
201
+ return this.badge
202
+ ? { isDot: true, hidden: true, ...this.badge }
203
+ : { isDot: true, hidden: true };
204
+ }
205
+ },
206
+ watch: {},
207
+ data() {
208
+ return {
209
+ show: false
210
+ };
211
+ },
212
+ mounted() {
213
+ this.resetWidth();
214
+ },
215
+ methods: {
216
+ exclAttribute({ data, attrs }) {
217
+ return util.exclAttribute({ data, attrs });
218
+ },
219
+ getBtns() {
220
+ let useCaseCodes = util.getStorage('useCaseCodes');
221
+ let keyword =
222
+ this.data && this.useCaseCodeKey
223
+ ? this.data.row[this.useCaseCodeKey]
224
+ : null;
225
+ let arry = this.contents.filter((item) => {
226
+ if (Object.prototype.hasOwnProperty.call(item, 'rules')) {
227
+ if (useCaseCodes && (item.useCaseCode || keyword)) {
228
+ return (
229
+ item.rules(this.data.row) &&
230
+ useCaseCodes.indexOf(item.useCaseCode || keyword) > -1
231
+ );
232
+ }
233
+ return item.rules(this.data.row);
234
+ }
235
+ if (this.rules !== undefined) {
236
+ if (useCaseCodes && (item.useCaseCode || keyword)) {
237
+ return (
238
+ this.rules(this.data.row) &&
239
+ useCaseCodes.indexOf(item.useCaseCode || keyword) > -1
240
+ );
241
+ }
242
+ return this.rules(this.data.row);
243
+ }
244
+ if (useCaseCodes && (item.useCaseCode || keyword)) {
245
+ return useCaseCodes.indexOf(item.useCaseCode || keyword) > -1;
246
+ }
247
+ return true;
248
+ });
249
+ let newBtns = arry.map((item) => {
250
+ let badge;
251
+ if (item.badge && typeof item.badge === 'function') {
252
+ badge = item.badge(this.data.row);
253
+ }
254
+ return badge ? { ...item, badge: badge } : { ...item };
255
+ });
256
+ if (this.sort) {
257
+ newBtns = newBtns.sort((a, b) => {
258
+ return (b.badge ? 1 : 0) - (a.badge ? 1 : 0);
259
+ });
260
+ }
261
+ return newBtns;
262
+ },
263
+ handleChange(res) {
264
+ this.show = res;
265
+ },
266
+ handleClick(obj) {
267
+ this.$emit('handleClick', obj);
268
+ this.$emit('handle-click', obj);
269
+ },
270
+ handleCommand(res) {
271
+ if (res.upload || res.selector) {
272
+ this.$refs.dropdown.hide();
273
+ return false;
274
+ }
275
+ this.$emit('handleClick', { ...this.data, handle: res });
276
+ this.$emit('handle-click', { ...this.data, handle: res });
277
+ },
278
+ resetWidth() {
279
+ this.$nextTick(() => {
280
+ let childNodes = this.$el.childNodes;
281
+ let width = parseInt(this.value, 10);
282
+ let w = 0;
283
+ for (let i = 0; i < childNodes.length; i++) {
284
+ let item = childNodes[i];
285
+ w += item.clientWidth ? item.clientWidth : 0;
286
+ }
287
+ w += 20 + childNodes.length + 10;
288
+ if (w > width) {
289
+ this.$emit('input', w + 'px');
290
+ }
291
+ });
292
+ },
293
+ parseProps() {
294
+ return this.parseData && this.data ? this.parseData(this.data) : {};
295
+ }
296
+ }
297
+ };
298
+ </script>