@10yun/cv-mobile-ui 0.4.1 → 0.4.2

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 (112) hide show
  1. package/package.json +1 -1
  2. package/ui-cv/cv-badge/{uni-badge.vue → cv-badge.vue} +2 -2
  3. package/ui-cv/cv-calendar/calendar.js +762 -345
  4. package/ui-cv/cv-calendar/cv-calendar-item.vue +198 -0
  5. package/ui-cv/cv-calendar/cv-calendar.vue +508 -0
  6. package/ui-cv/cv-card/cv-card.vue +427 -0
  7. package/ui-cv/cv-col/cv-col.vue +2965 -0
  8. package/ui-cv/cv-collapse/cv-collapse.vue +146 -0
  9. package/ui-cv/cv-collapse-item/cv-collapse-item.vue +395 -0
  10. package/ui-cv/cv-combox/cv-combox.vue +250 -0
  11. package/ui-cv/cv-countdown/cv-countdown.vue +245 -0
  12. package/ui-cv/cv-data-checkbox/cv-data-checkbox.vue +841 -0
  13. package/ui-cv/cv-data-indexed-list/cv-data-indexed-list-item.vue +154 -0
  14. package/ui-cv/cv-data-indexed-list/cv-data-indexed-list.vue +376 -0
  15. package/ui-cv/cv-data-picker/cv-data-picker.vue +486 -0
  16. package/ui-cv/cv-data-pickerview/{uni-data-picker.js → cv-data-picker.js} +0 -0
  17. package/ui-cv/cv-data-pickerview/cv-data-pickerview.vue +304 -0
  18. package/ui-cv/cv-dateformat/cv-dateformat.vue +86 -0
  19. package/ui-cv/cv-datetime-picker/calendar.vue +752 -738
  20. package/ui-cv/cv-datetime-picker/cv-datetime-picker.vue +958 -0
  21. package/ui-cv/cv-datetime-picker/time-picker.vue +900 -892
  22. package/ui-cv/cv-easyinput/cv-easyinput.vue +514 -0
  23. package/ui-cv/cv-fab/cv-fab.vue +465 -0
  24. package/ui-cv/cv-fab/{uni-fab.vue.bak → cv-fab.vue.bak} +2 -2
  25. package/ui-cv/cv-fav/cv-fav.vue +150 -0
  26. package/ui-cv/cv-file-picker/cv-file-picker.vue +619 -0
  27. package/ui-cv/cv-form-item/cv-form-item.vue +1 -1
  28. package/ui-cv/cv-goods-nav/{uni-goods-nav.vue → cv-goods-nav.vue} +1 -1
  29. package/ui-cv/{cv-icons2/cv-icons2.vue → cv-icon2/cv-icon2.vue} +3 -3
  30. package/ui-cv/{cv-icons2 → cv-icon2}/icons.js +0 -0
  31. package/ui-cv/{cv-icons2 → cv-icon2}/uni.ttf +0 -0
  32. package/ui-cv/cv-indexed-list/cv-indexed-list-item.vue +154 -0
  33. package/ui-cv/cv-indexed-list/cv-indexed-list.vue +371 -0
  34. package/ui-cv/cv-input-password/cv-input-password.vue +2 -2
  35. package/ui-cv/{cv-link/uni-link.vue → cv-link2/cv-link2.vue} +1 -1
  36. package/ui-cv/cv-list/cv-list.vue +107 -0
  37. package/ui-cv/cv-list/cv-refresh.vue +65 -0
  38. package/ui-cv/cv-list-ad/cv-list-ad.vue +113 -0
  39. package/ui-cv/cv-list-chat/{uni-list-chat.scss → cv-list-chat.scss} +0 -0
  40. package/ui-cv/cv-list-chat/{uni-list-chat.vue → cv-list-chat.vue} +0 -0
  41. package/ui-cv/cv-list-item/cv-list-item.vue +449 -0
  42. package/ui-cv/cv-nav-bar/cv-nav-bar.vue +256 -0
  43. package/ui-cv/cv-nav-bar/{uni-status-bar.vue → cv-status-bar.vue} +0 -0
  44. package/ui-cv/cv-notice-bar/cv-notice-bar.vue +453 -0
  45. package/ui-cv/cv-number-box/cv-number-box.vue +223 -0
  46. package/ui-cv/cv-pagination/cv-pagination.vue +397 -0
  47. package/ui-cv/cv-popup/cv-popup.vue +429 -0
  48. package/ui-cv/cv-popup-dialog/{uni-popup-dialog.vue → cv-popup-dialog.vue} +0 -0
  49. package/ui-cv/cv-popup-message/cv-popup-message.vue +143 -0
  50. package/ui-cv/cv-popup-share/{uni-popup-share.vue → cv-popup-share.vue} +0 -0
  51. package/ui-cv/cv-row/{uni-row.vue → cv-row.vue} +1 -1
  52. package/ui-cv/cv-search-bar/cv-search-bar.vue +280 -0
  53. package/ui-cv/cv-section/{uni-section.vue → cv-section.vue} +0 -0
  54. package/ui-cv/cv-segmented-control/{uni-segmented-control.vue → cv-segmented-control.vue} +0 -0
  55. package/ui-cv/cv-status-bar/{uni-status-bar.vue → cv-status-bar.vue} +0 -0
  56. package/ui-cv/cv-steps/cv-steps.vue +293 -0
  57. package/ui-cv/cv-swipe-action/{uni-swipe-action.vue → cv-swipe-action.vue} +0 -0
  58. package/ui-cv/cv-swipe-action-item/{uni-swipe-action-item.vue → cv-swipe-action-item.vue} +0 -0
  59. package/ui-cv/cv-swiper-dot/cv-swiper-dot.vue +255 -0
  60. package/ui-cv/cv-table/cv-table.vue +460 -0
  61. package/ui-cv/cv-tag/cv-tag.vue +276 -0
  62. package/ui-cv/cv-tbody/cv-tbody.vue +28 -0
  63. package/ui-cv/cv-td/cv-td.vue +93 -0
  64. package/ui-cv/cv-test/{uni-test.vue → cv-test.vue} +0 -0
  65. package/ui-cv/cv-th/cv-th.vue +270 -0
  66. package/ui-cv/cv-thead/cv-thead.vue +114 -0
  67. package/ui-cv/cv-title/cv-title.vue +168 -0
  68. package/ui-cv/cv-tr/cv-tr.vue +166 -0
  69. package/ui-cv/cv-transition/cv-transition.vue +279 -0
  70. package/ui-cv/cv-calendar/uni-calendar-item.vue +0 -171
  71. package/ui-cv/cv-calendar/uni-calendar.vue +0 -504
  72. package/ui-cv/cv-card/uni-card.vue +0 -420
  73. package/ui-cv/cv-col/uni-col.vue +0 -2968
  74. package/ui-cv/cv-collapse/uni-collapse.vue +0 -146
  75. package/ui-cv/cv-collapse-item/uni-collapse-item.vue +0 -378
  76. package/ui-cv/cv-combox/uni-combox.vue +0 -237
  77. package/ui-cv/cv-countdown/uni-countdown.vue +0 -234
  78. package/ui-cv/cv-data-checkbox/uni-data-checkbox.vue +0 -792
  79. package/ui-cv/cv-data-indexed-list/uni-data-indexed-list-item.vue +0 -142
  80. package/ui-cv/cv-data-indexed-list/uni-data-indexed-list.vue +0 -364
  81. package/ui-cv/cv-data-picker/uni-data-picker.vue +0 -468
  82. package/ui-cv/cv-data-pickerview/uni-data-pickerview.vue +0 -298
  83. package/ui-cv/cv-dateformat/uni-dateformat.vue +0 -88
  84. package/ui-cv/cv-datetime-picker/uni-datetime-picker.vue +0 -874
  85. package/ui-cv/cv-easyinput/uni-easyinput.vue +0 -438
  86. package/ui-cv/cv-fab/uni-fab.vue +0 -443
  87. package/ui-cv/cv-fav/uni-fav.vue +0 -136
  88. package/ui-cv/cv-file-picker/uni-file-picker.vue +0 -614
  89. package/ui-cv/cv-indexed-list/uni-indexed-list-item.vue +0 -142
  90. package/ui-cv/cv-indexed-list/uni-indexed-list.vue +0 -357
  91. package/ui-cv/cv-list/uni-list.vue +0 -107
  92. package/ui-cv/cv-list/uni-refresh.vue +0 -65
  93. package/ui-cv/cv-list-ad/uni-list-ad.vue +0 -106
  94. package/ui-cv/cv-list-item/uni-list-item.vue +0 -428
  95. package/ui-cv/cv-nav-bar/uni-nav-bar.vue +0 -244
  96. package/ui-cv/cv-notice-bar/uni-notice-bar.vue +0 -394
  97. package/ui-cv/cv-number-box/uni-number-box.vue +0 -224
  98. package/ui-cv/cv-pagination/uni-pagination.vue +0 -376
  99. package/ui-cv/cv-popup/uni-popup.vue +0 -412
  100. package/ui-cv/cv-popup-message/uni-popup-message.vue +0 -143
  101. package/ui-cv/cv-search-bar/uni-search-bar.vue +0 -262
  102. package/ui-cv/cv-steps/uni-steps.vue +0 -250
  103. package/ui-cv/cv-swiper-dot/uni-swiper-dot.vue +0 -205
  104. package/ui-cv/cv-table/uni-table.vue +0 -455
  105. package/ui-cv/cv-tag/uni-tag.vue +0 -283
  106. package/ui-cv/cv-tbody/uni-tbody.vue +0 -30
  107. package/ui-cv/cv-td/uni-td.vue +0 -88
  108. package/ui-cv/cv-th/uni-th.vue +0 -259
  109. package/ui-cv/cv-thead/uni-thead.vue +0 -114
  110. package/ui-cv/cv-title/uni-title.vue +0 -171
  111. package/ui-cv/cv-tr/uni-tr.vue +0 -156
  112. package/ui-cv/cv-transition/uni-transition.vue +0 -287
@@ -1,468 +0,0 @@
1
- <template>
2
- <view class="uni-data-tree">
3
- <view class="uni-data-tree-input" @click="handleInput">
4
- <slot :options="options" :data="inputSelected" :error="errorMessage">
5
- <view class="input-value" :class="{'input-value-border': border}">
6
- <text v-if="errorMessage" class="selected-area error-text">{{errorMessage}}</text>
7
- <view v-else-if="loading && !isOpened" class="selected-area">
8
- <uni-load-more class="load-more" :contentText="loadMore" status="loading"></uni-load-more>
9
- </view>
10
- <scroll-view v-else-if="inputSelected.length" class="selected-area" scroll-x="true">
11
- <view class="selected-list">
12
- <view class="selected-item" v-for="(item,index) in inputSelected" :key="index">
13
- <text>{{item.text}}</text><text v-if="index<inputSelected.length-1" class="input-split-line">{{split}}</text>
14
- </view>
15
- </view>
16
- </scroll-view>
17
- <text v-else class="selected-area placeholder">{{placeholder}}</text>
18
- <view class="arrow-area" v-if="!readonly">
19
- <view class="input-arrow"></view>
20
- </view>
21
- </view>
22
- </slot>
23
- </view>
24
- <view class="uni-data-tree-cover" v-if="isOpened" @click="handleClose"></view>
25
- <view class="uni-data-tree-dialog" v-if="isOpened">
26
- <view class="dialog-caption">
27
- <view class="title-area">
28
- <text class="dialog-title">{{popupTitle}}</text>
29
- </view>
30
- <view class="dialog-close" @click="handleClose">
31
- <view class="dialog-close-plus" data-id="close"></view>
32
- <view class="dialog-close-plus dialog-close-rotate" data-id="close"></view>
33
- </view>
34
- </view>
35
- <data-picker-view class="picker-view" ref="pickerView" v-model="dataValue" :localdata="localdata" :preload="preload" :collection="collection" :field="field" :orderby="orderby" :where="where" :step-searh="stepSearh" :self-field="selfField" :parent-field="parentField" :managed-mode="true" @change="onchange" @datachange="ondatachange" @nodeclick="onnodeclick"></data-picker-view>
36
- </view>
37
- </view>
38
- </template>
39
-
40
- <script>
41
- import dataPicker from "../uni-data-pickerview/uni-data-picker.js"
42
- import DataPickerView from "../uni-data-pickerview/uni-data-pickerview.vue"
43
-
44
- /**
45
- * DataPicker 级联选择
46
- * @description 支持单列、和多列级联选择。列数没有限制,如果屏幕显示不全,顶部tab区域会左右滚动。
47
- * @tutorial https://ext.dcloud.net.cn/plugin?id=3796
48
- * @property {String} popup-title 弹出窗口标题
49
- * @property {Array} localdata 本地数据,参考
50
- * @property {Boolean} border = [true|false] 是否有边框
51
- * @property {Boolean} readonly = [true|false] 是否仅读
52
- * @property {Boolean} preload = [true|false] 是否预加载数据
53
- * @value true 开启预加载数据,点击弹出窗口后显示已加载数据
54
- * @value false 关闭预加载数据,点击弹出窗口后开始加载数据
55
- * @property {Boolean} step-searh = [true|false] 是否分布查询
56
- * @value true 启用分布查询,仅查询当前选中节点
57
- * @value false 关闭分布查询,一次查询出所有数据
58
- * @property {String|DBFieldString} self-field 分布查询当前字段名称
59
- * @property {String|DBFieldString} parent-field 分布查询父字段名称
60
- * @property {String|DBCollectionString} collection 表名
61
- * @property {String|DBFieldString} field 查询字段,多个字段用 `,` 分割
62
- * @property {String} orderby 排序字段及正序倒叙设置
63
- * @property {String|JQLString} where 查询条件
64
- * @event {Function} popupshow 弹出的选择窗口打开时触发此事件
65
- * @event {Function} popuphide 弹出的选择窗口关闭时触发此事件
66
- */
67
- export default {
68
- name: 'UniDataPicker',
69
- emits: ['popupopened', 'popupclosed', 'nodeclick', 'input', 'change', 'update:modelValue'],
70
- mixins: [dataPicker],
71
- components: {
72
- DataPickerView
73
- },
74
- props: {
75
- options: {
76
- type: [Object, Array],
77
- default () {
78
- return {}
79
- }
80
- },
81
- popupTitle: {
82
- type: String,
83
- default: '请选择'
84
- },
85
- placeholder: {
86
- type: String,
87
- default: '请选择'
88
- },
89
- heightMobile: {
90
- type: String,
91
- default: ''
92
- },
93
- readonly: {
94
- type: Boolean,
95
- default: false
96
- },
97
- border: {
98
- type: Boolean,
99
- default: true
100
- },
101
- split: {
102
- type: String,
103
- default: '/'
104
- }
105
- },
106
- data() {
107
- return {
108
- isOpened: false,
109
- inputSelected: []
110
- }
111
- },
112
- created() {
113
- this.form = this.getForm('uniForms')
114
- this.formItem = this.getForm('uniFormsItem')
115
- if (this.formItem) {
116
- if (this.formItem.name) {
117
- this.rename = this.formItem.name
118
- this.form.inputChildrens.push(this)
119
- }
120
- }
121
-
122
- this.$nextTick(() => {
123
- this.load()
124
- })
125
- },
126
- methods: {
127
- onPropsChange() {
128
- this._treeData = []
129
- this.selectedIndex = 0
130
- this.load()
131
- },
132
- load() {
133
- if (this.readonly) {
134
- this._processReadonly(this.localdata, this.dataValue)
135
- return
136
- }
137
-
138
- if (this.isLocaldata) {
139
- this.loadData()
140
- this.inputSelected = this.selected.slice(0)
141
- } else if (!this.parentField && !this.selfField && this.dataValue) {
142
- this.getNodeData(() => {
143
- this.inputSelected = this.selected.slice(0)
144
- })
145
- } else if (this.dataValue.length) {
146
- this.getTreePath(() => {
147
- this.inputSelected = this.selected.slice(0)
148
- })
149
- }
150
- },
151
- getForm(name = 'uniForms') {
152
- let parent = this.$parent;
153
- let parentName = parent.$options.name;
154
- while (parentName !== name) {
155
- parent = parent.$parent;
156
- if (!parent) return false;
157
- parentName = parent.$options.name;
158
- }
159
- return parent;
160
- },
161
- show() {
162
- this.isOpened = true
163
- this.$nextTick(() => {
164
- this.$refs.pickerView.updateData({
165
- treeData: this._treeData,
166
- selected: this.selected,
167
- selectedIndex: this.selectedIndex
168
- })
169
- })
170
- this.$emit('popupopened')
171
- },
172
- hide() {
173
- this.isOpened = false
174
- this.$emit('popupclosed')
175
- },
176
- handleInput() {
177
- if (this.readonly) {
178
- return
179
- }
180
- this.show()
181
- },
182
- handleClose(e) {
183
- this.hide()
184
- },
185
- onnodeclick(e) {
186
- this.$emit('nodeclick', e)
187
- },
188
- ondatachange(e) {
189
- this._treeData = this.$refs.pickerView._treeData
190
- },
191
- onchange(e) {
192
- this.hide()
193
- this.inputSelected = e
194
- this._dispatchEvent(e)
195
- },
196
- _processReadonly(dataList, valueArray) {
197
- var isTree = dataList.findIndex((item) => {
198
- return item.children
199
- })
200
- if (isTree > -1) {
201
- if (Array.isArray(valueArray)) {
202
- let inputValue = valueArray[valueArray.length - 1]
203
- if (typeof inputValue === 'object' && inputValue.value) {
204
- inputValue = inputValue.value
205
- }
206
- }
207
- this.inputSelected = this._findNodePath(inputValue, this.localdata)
208
- return
209
- }
210
-
211
- let result = []
212
- for (let i = 0; i < valueArray.length; i++) {
213
- var value = valueArray[i]
214
- var item = dataList.find((v) => {
215
- return v.value == value
216
- })
217
- if (item) {
218
- result.push(item)
219
- }
220
- }
221
- if (result.length) {
222
- this.inputSelected = result
223
- }
224
- },
225
- _filterForArray(data, valueArray) {
226
- var result = []
227
- for (let i = 0; i < valueArray.length; i++) {
228
- var value = valueArray[i]
229
- var found = data.find((item) => {
230
- return item.value == value
231
- })
232
- if (found) {
233
- result.push(found)
234
- }
235
- }
236
- return result
237
- },
238
- _dispatchEvent(selected) {
239
- var value = new Array(selected.length)
240
- for (var i = 0; i < selected.length; i++) {
241
- value[i] = selected[i].value
242
- }
243
-
244
- const item = selected[selected.length - 1]
245
-
246
- if (this.formItem) {
247
- this.formItem.setValue(item.value)
248
- }
249
-
250
- this.$emit('input', item.value)
251
- this.$emit('update:modelValue', item.value)
252
- this.$emit('change', {
253
- detail: {
254
- value: selected
255
- }
256
- })
257
- }
258
- }
259
- }
260
- </script>
261
-
262
- <style scoped>
263
- .uni-data-tree {
264
- position: relative;
265
- font-size: 14px;
266
- }
267
-
268
- .error-text {
269
- color: #DD524D;
270
- }
271
-
272
- .input-value {
273
- /* #ifndef APP-NVUE */
274
- display: flex;
275
- /* #endif */
276
- flex-direction: row;
277
- align-items: center;
278
- flex-wrap: nowrap;
279
- font-size: 14px;
280
- line-height: 38px;
281
- padding: 0 5px;
282
- overflow: hidden;
283
- /* #ifdef APP-NVUE */
284
- height: 40px;
285
- /* #endif */
286
- }
287
-
288
- .input-value-border {
289
- border: 1px solid #e5e5e5;
290
- border-radius: 5px;
291
- }
292
-
293
- .selected-area {
294
- flex: 1;
295
- overflow: hidden;
296
- /* #ifndef APP-NVUE */
297
- display: flex;
298
- /* #endif */
299
- flex-direction: row;
300
- }
301
-
302
- .load-more {
303
- /* #ifndef APP-NVUE */
304
- margin-right: auto;
305
- /* #endif */
306
- /* #ifdef APP-NVUE */
307
- width: 40px;
308
- /* #endif */
309
- }
310
-
311
- .selected-list {
312
- /* #ifndef APP-NVUE */
313
- display: flex;
314
- /* #endif */
315
- flex-direction: row;
316
- flex-wrap: nowrap;
317
- padding: 0 5px;
318
- }
319
-
320
- .selected-item {
321
- flex-direction: row;
322
- padding: 0 1px;
323
- /* #ifndef APP-NVUE */
324
- white-space: nowrap;
325
- /* #endif */
326
- }
327
-
328
- .placeholder {
329
- color: grey;
330
- }
331
-
332
- .input-split-line {
333
- opacity: 0.5;
334
- }
335
-
336
- .arrow-area {
337
- position: relative;
338
- width: 20px;
339
- /* #ifndef APP-NVUE */
340
- margin-left: auto;
341
- display: flex;
342
- /* #endif */
343
- justify-content: center;
344
- transform: rotate(-45deg);
345
- transform-origin: center;
346
- }
347
-
348
- .input-arrow {
349
- width: 7px;
350
- height: 7px;
351
- border-left: 1px solid #999;
352
- border-bottom: 1px solid #999;
353
- }
354
-
355
- .uni-data-tree-cover {
356
- position: fixed;
357
- left: 0;
358
- top: 0;
359
- right: 0;
360
- bottom: 0;
361
- background-color: rgba(0, 0, 0, 0.4);
362
- /* #ifndef APP-NVUE */
363
- display: flex;
364
- /* #endif */
365
- flex-direction: column;
366
- z-index: 100;
367
- }
368
-
369
- .uni-data-tree-dialog {
370
- position: fixed;
371
- left: 0;
372
- top: 20%;
373
- right: 0;
374
- bottom: 0;
375
- background-color: #FFFFFF;
376
- border-top-left-radius: 10px;
377
- border-top-right-radius: 10px;
378
- /* #ifndef APP-NVUE */
379
- display: flex;
380
- /* #endif */
381
- flex-direction: column;
382
- z-index: 102;
383
- overflow: hidden;
384
- /* #ifdef APP-NVUE */
385
- width: 750rpx;
386
- /* #endif */
387
- }
388
-
389
- .dialog-caption {
390
- position: relative;
391
- /* #ifndef APP-NVUE */
392
- display: flex;
393
- /* #endif */
394
- flex-direction: row;
395
- border-bottom: 1px solid #f0f0f0;
396
- }
397
-
398
- .title-area {
399
- /* #ifndef APP-NVUE */
400
- display: flex;
401
- /* #endif */
402
- align-items: center;
403
- /* #ifndef APP-NVUE */
404
- margin: auto;
405
- /* #endif */
406
- padding: 0 10px;
407
- }
408
-
409
- .dialog-title {
410
- font-weight: bold;
411
- line-height: 44px;
412
- }
413
-
414
- .dialog-close {
415
- position: absolute;
416
- top: 0;
417
- right: 0;
418
- bottom: 0;
419
- /* #ifndef APP-NVUE */
420
- display: flex;
421
- /* #endif */
422
- flex-direction: row;
423
- align-items: center;
424
- padding: 0 15px;
425
- }
426
-
427
- .dialog-close-plus {
428
- width: 16px;
429
- height: 2px;
430
- background-color: #666;
431
- border-radius: 2px;
432
- transform: rotate(45deg);
433
- }
434
-
435
- .dialog-close-rotate {
436
- position: absolute;
437
- transform: rotate(-45deg);
438
- }
439
-
440
- .picker-view {
441
- flex: 1;
442
- overflow: hidden;
443
- }
444
-
445
- /* #ifdef H5 */
446
- @media all and (min-width: 768px) {
447
- .uni-data-tree-cover {
448
- background-color: transparent;
449
- }
450
-
451
- .uni-data-tree-dialog {
452
- position: absolute;
453
- top: 100%;
454
- height: auto;
455
- min-height: 400px;
456
- max-height: 50vh;
457
- background-color: #fff;
458
- border-radius: 5px;
459
- box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.3);
460
- }
461
-
462
- .dialog-caption {
463
- display: none;
464
- }
465
- }
466
-
467
- /* #endif */
468
- </style>