@vtj/materials 0.10.1-alpha.6 → 0.10.1-alpha.7

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 (89) hide show
  1. package/dist/assets/antdv/index.umd.js +2 -2
  2. package/dist/assets/charts/index.umd.js +2 -2
  3. package/dist/assets/element/index.umd.js +2 -2
  4. package/dist/assets/ui/index.umd.js +2 -2
  5. package/dist/assets/uni-h5/index.umd.js +2 -2
  6. package/dist/assets/uni-ui/index.umd.js +3 -3
  7. package/dist/assets/vant/index.umd.js +2 -2
  8. package/dist/deps/@vtj/charts/index.umd.js +2 -2
  9. package/dist/deps/@vtj/icons/index.umd.js +2 -2
  10. package/dist/deps/@vtj/ui/index.umd.js +2 -2
  11. package/dist/deps/@vtj/utils/index.umd.js +2 -2
  12. package/dist/deps/uni-ui/index.umd.js +1 -1
  13. package/dist/deps/uni-ui/style.css +1 -1
  14. package/package.json +5 -5
  15. package/src/uni-ui/components/badge.ts +5 -1
  16. package/src/uni-ui/components/breadcrumb.ts +76 -0
  17. package/src/uni-ui/components/calendar.ts +63 -0
  18. package/src/uni-ui/components/card.ts +113 -0
  19. package/src/uni-ui/components/collapse.ts +118 -0
  20. package/src/uni-ui/components/combox.ts +51 -0
  21. package/src/uni-ui/components/countdown.ts +92 -0
  22. package/src/uni-ui/components/dataCheckbox.ts +104 -0
  23. package/src/uni-ui/components/dataPicker.ts +146 -0
  24. package/src/uni-ui/components/dataSelect.ts +68 -0
  25. package/src/uni-ui/components/dateformat.ts +42 -0
  26. package/src/uni-ui/components/datetimePicker.ts +103 -0
  27. package/src/uni-ui/components/drawer.ts +38 -0
  28. package/src/uni-ui/components/easyinput.ts +159 -0
  29. package/src/uni-ui/components/fab.ts +89 -0
  30. package/src/uni-ui/components/fav.ts +65 -0
  31. package/src/uni-ui/components/filePicker.ts +127 -0
  32. package/src/uni-ui/components/forms.ts +209 -0
  33. package/src/uni-ui/components/goodsNav.ts +31 -0
  34. package/src/uni-ui/components/grid.ts +104 -0
  35. package/src/uni-ui/components/group.ts +50 -0
  36. package/src/uni-ui/components/icons.ts +47 -0
  37. package/src/uni-ui/components/index.ts +89 -1
  38. package/src/uni-ui/components/indexedList.ts +51 -0
  39. package/src/uni-ui/components/link.ts +60 -0
  40. package/src/uni-ui/components/list.ts +259 -0
  41. package/src/uni-ui/components/loadMore.ts +61 -0
  42. package/src/uni-ui/components/navbar.ts +121 -0
  43. package/src/uni-ui/components/noticeBar.ts +83 -0
  44. package/src/uni-ui/components/numberbox.ts +49 -0
  45. package/src/uni-ui/components/pagination.ts +59 -0
  46. package/src/uni-ui/components/popup.ts +206 -0
  47. package/src/uni-ui/components/rate.ts +89 -0
  48. package/src/uni-ui/components/row.ts +126 -0
  49. package/src/uni-ui/components/searchBar.ts +84 -0
  50. package/src/uni-ui/components/section.ts +68 -0
  51. package/src/uni-ui/components/segmentedControl.ts +48 -0
  52. package/src/uni-ui/components/steps.ts +55 -0
  53. package/src/uni-ui/components/swipeAction.ts +133 -0
  54. package/src/uni-ui/components/swiperDot.ts +114 -0
  55. package/src/uni-ui/components/table.ts +132 -0
  56. package/src/uni-ui/components/tag.ts +56 -0
  57. package/src/uni-ui/components/title.ts +49 -0
  58. package/src/uni-ui/components/tooltip.ts +32 -0
  59. package/src/uni-ui/components/transition.ts +49 -0
  60. package/src/uni-ui/index.ts +30 -13
  61. package/src/uni-ui/lib/uni-col/uni-col.vue +324 -0
  62. package/src/uni-ui/lib/uni-data-select/uni-data-select.vue +590 -0
  63. package/src/uni-ui/lib/uni-easyinput/common.js +54 -0
  64. package/src/uni-ui/lib/uni-easyinput/uni-easyinput.vue +790 -0
  65. package/src/uni-ui/lib/uni-forms-item/uni-forms-item.vue +630 -0
  66. package/src/uni-ui/lib/uni-goods-nav/i18n/en.json +6 -0
  67. package/src/uni-ui/lib/uni-goods-nav/i18n/index.js +8 -0
  68. package/src/uni-ui/lib/uni-goods-nav/i18n/zh-Hans.json +6 -0
  69. package/src/uni-ui/lib/uni-goods-nav/i18n/zh-Hant.json +6 -0
  70. package/src/uni-ui/lib/uni-goods-nav/uni-goods-nav.vue +231 -0
  71. package/src/uni-ui/lib/uni-icons/uni-icons.uvue +91 -0
  72. package/src/uni-ui/lib/uni-icons/uni-icons.vue +114 -0
  73. package/src/uni-ui/lib/uni-icons/uniicons.css +664 -0
  74. package/src/uni-ui/lib/uni-icons/uniicons.ttf +0 -0
  75. package/src/uni-ui/lib/uni-icons/uniicons_file.ts +664 -0
  76. package/src/uni-ui/lib/uni-icons/uniicons_file_vue.js +649 -0
  77. package/src/uni-ui/lib/uni-indexed-list/uni-indexed-list-item.vue +144 -0
  78. package/src/uni-ui/lib/uni-indexed-list/uni-indexed-list.vue +404 -0
  79. package/src/uni-ui/lib/uni-list/uni-list.vue +123 -0
  80. package/src/uni-ui/lib/uni-list/uni-refresh.vue +65 -0
  81. package/src/uni-ui/lib/uni-list/uni-refresh.wxs +87 -0
  82. package/src/uni-ui/lib/uni-popup-dialog/keypress.js +45 -0
  83. package/src/uni-ui/lib/uni-popup-dialog/uni-popup-dialog.vue +324 -0
  84. package/src/uni-ui/lib/uni-rate/uni-rate.vue +361 -0
  85. package/src/uni-ui/lib/uni-table/uni-table.vue +496 -0
  86. package/src/uni-ui/lib/uni-td/uni-td.vue +99 -0
  87. package/src/uni-ui/lib/uni-th/uni-th.vue +310 -283
  88. package/src/uni-ui/lib/uni-tr/uni-tr.vue +194 -170
  89. package/src/version.ts +2 -2
@@ -0,0 +1,65 @@
1
+ <template>
2
+ <!-- #ifdef APP-NVUE -->
3
+ <refresh :display="display" @refresh="onrefresh" @pullingdown="onpullingdown">
4
+ <slot />
5
+ </refresh>
6
+ <!-- #endif -->
7
+ <!-- #ifndef APP-NVUE -->
8
+ <view ref="uni-refresh" class="uni-refresh" v-show="isShow">
9
+ <slot />
10
+ </view>
11
+ <!-- #endif -->
12
+ </template>
13
+
14
+ <script>
15
+ export default {
16
+ name: 'UniRefresh',
17
+ props: {
18
+ display: {
19
+ type: [String],
20
+ default: "hide"
21
+ }
22
+ },
23
+ data() {
24
+ return {
25
+ pulling: false
26
+ }
27
+ },
28
+ computed: {
29
+ isShow() {
30
+ if (this.display === "show" || this.pulling === true) {
31
+ return true;
32
+ }
33
+ return false;
34
+ }
35
+ },
36
+ created() {},
37
+ methods: {
38
+ onchange(value) {
39
+ this.pulling = value;
40
+ },
41
+ onrefresh(e) {
42
+ this.$emit("refresh", e);
43
+ },
44
+ onpullingdown(e) {
45
+ // #ifdef APP-NVUE
46
+ this.$emit("pullingdown", e);
47
+ // #endif
48
+ // #ifndef APP-NVUE
49
+ var detail = {
50
+ viewHeight: 90,
51
+ pullingDistance: e.height
52
+ }
53
+ this.$emit("pullingdown", detail);
54
+ // #endif
55
+ }
56
+ }
57
+ }
58
+ </script>
59
+
60
+ <style>
61
+ .uni-refresh {
62
+ height: 0;
63
+ overflow: hidden;
64
+ }
65
+ </style>
@@ -0,0 +1,87 @@
1
+ var pullDown = {
2
+ threshold: 95,
3
+ maxHeight: 200,
4
+ callRefresh: 'onrefresh',
5
+ callPullingDown: 'onpullingdown',
6
+ refreshSelector: '.uni-refresh'
7
+ };
8
+
9
+ function ready(newValue, oldValue, ownerInstance, instance) {
10
+ var state = instance.getState()
11
+ state.canPullDown = newValue;
12
+ // console.log(newValue);
13
+ }
14
+
15
+ function touchStart(e, instance) {
16
+ var state = instance.getState();
17
+ state.refreshInstance = instance.selectComponent(pullDown.refreshSelector);
18
+ state.canPullDown = (state.refreshInstance != null && state.refreshInstance != undefined);
19
+ if (!state.canPullDown) {
20
+ return
21
+ }
22
+
23
+ // console.log("touchStart");
24
+
25
+ state.height = 0;
26
+ state.touchStartY = e.touches[0].pageY || e.changedTouches[0].pageY;
27
+ state.refreshInstance.setStyle({
28
+ 'height': 0
29
+ });
30
+ state.refreshInstance.callMethod("onchange", true);
31
+ }
32
+
33
+ function touchMove(e, ownerInstance) {
34
+ var instance = e.instance;
35
+ var state = instance.getState();
36
+ if (!state.canPullDown) {
37
+ return
38
+ }
39
+
40
+ var oldHeight = state.height;
41
+ var endY = e.touches[0].pageY || e.changedTouches[0].pageY;
42
+ var height = endY - state.touchStartY;
43
+ if (height > pullDown.maxHeight) {
44
+ return;
45
+ }
46
+
47
+ var refreshInstance = state.refreshInstance;
48
+ refreshInstance.setStyle({
49
+ 'height': height + 'px'
50
+ });
51
+
52
+ height = height < pullDown.maxHeight ? height : pullDown.maxHeight;
53
+ state.height = height;
54
+ refreshInstance.callMethod(pullDown.callPullingDown, {
55
+ height: height
56
+ });
57
+ }
58
+
59
+ function touchEnd(e, ownerInstance) {
60
+ var state = e.instance.getState();
61
+ if (!state.canPullDown) {
62
+ return
63
+ }
64
+
65
+ state.refreshInstance.callMethod("onchange", false);
66
+
67
+ var refreshInstance = state.refreshInstance;
68
+ if (state.height > pullDown.threshold) {
69
+ refreshInstance.callMethod(pullDown.callRefresh);
70
+ return;
71
+ }
72
+
73
+ refreshInstance.setStyle({
74
+ 'height': 0
75
+ });
76
+ }
77
+
78
+ function propObserver(newValue, oldValue, instance) {
79
+ pullDown = newValue;
80
+ }
81
+
82
+ module.exports = {
83
+ touchmove: touchMove,
84
+ touchstart: touchStart,
85
+ touchend: touchEnd,
86
+ propObserver: propObserver
87
+ }
@@ -0,0 +1,45 @@
1
+ // #ifdef H5
2
+ export default {
3
+ name: 'Keypress',
4
+ props: {
5
+ disable: {
6
+ type: Boolean,
7
+ default: false
8
+ }
9
+ },
10
+ mounted () {
11
+ const keyNames = {
12
+ esc: ['Esc', 'Escape'],
13
+ tab: 'Tab',
14
+ enter: 'Enter',
15
+ space: [' ', 'Spacebar'],
16
+ up: ['Up', 'ArrowUp'],
17
+ left: ['Left', 'ArrowLeft'],
18
+ right: ['Right', 'ArrowRight'],
19
+ down: ['Down', 'ArrowDown'],
20
+ delete: ['Backspace', 'Delete', 'Del']
21
+ }
22
+ const listener = ($event) => {
23
+ if (this.disable) {
24
+ return
25
+ }
26
+ const keyName = Object.keys(keyNames).find(key => {
27
+ const keyName = $event.key
28
+ const value = keyNames[key]
29
+ return value === keyName || (Array.isArray(value) && value.includes(keyName))
30
+ })
31
+ if (keyName) {
32
+ // 避免和其他按键事件冲突
33
+ setTimeout(() => {
34
+ this.$emit(keyName, {})
35
+ }, 0)
36
+ }
37
+ }
38
+ document.addEventListener('keyup', listener)
39
+ this.$once('hook:beforeDestroy', () => {
40
+ document.removeEventListener('keyup', listener)
41
+ })
42
+ },
43
+ render: () => {}
44
+ }
45
+ // #endif
@@ -0,0 +1,324 @@
1
+ <template>
2
+ <view class="uni-popup-dialog">
3
+ <view class="uni-dialog-title">
4
+ <text
5
+ class="uni-dialog-title-text"
6
+ :class="['uni-popup__' + dialogType]"
7
+ >{{ titleText }}</text
8
+ >
9
+ </view>
10
+ <view v-if="mode === 'base'" class="uni-dialog-content">
11
+ <slot>
12
+ <text class="uni-dialog-content-text">{{ content }}</text>
13
+ </slot>
14
+ </view>
15
+ <view v-else class="uni-dialog-content">
16
+ <slot>
17
+ <input
18
+ class="uni-dialog-input"
19
+ :maxlength="maxlength"
20
+ v-model="val"
21
+ :type="inputType"
22
+ :placeholder="placeholderText"
23
+ :focus="focus" />
24
+ </slot>
25
+ </view>
26
+ <view class="uni-dialog-button-group">
27
+ <view class="uni-dialog-button" v-if="showClose" @click="closeDialog">
28
+ <text class="uni-dialog-button-text">{{ closeText }}</text>
29
+ </view>
30
+ <view
31
+ class="uni-dialog-button"
32
+ :class="showClose ? 'uni-border-left' : ''"
33
+ @click="onOk">
34
+ <text class="uni-dialog-button-text uni-button-color">{{
35
+ okText
36
+ }}</text>
37
+ </view>
38
+ </view>
39
+ </view>
40
+ </template>
41
+
42
+ <script>
43
+ import popup from '../uni-popup/popup.js';
44
+ import { initVueI18n } from '@dcloudio/uni-i18n';
45
+ import messages from '../uni-popup/i18n/index.js';
46
+ const { t } = initVueI18n(messages);
47
+ /**
48
+ * PopUp 弹出层-对话框样式
49
+ * @description 弹出层-对话框样式
50
+ * @tutorial https://ext.dcloud.net.cn/plugin?id=329
51
+ * @property {String} value input 模式下的默认值
52
+ * @property {String} placeholder input 模式下输入提示
53
+ * @property {Boolean} focus input模式下是否自动聚焦,默认为true
54
+ * @property {String} type = [success|warning|info|error] 主题样式
55
+ * @value success 成功
56
+ * @value warning 提示
57
+ * @value info 消息
58
+ * @value error 错误
59
+ * @property {String} mode = [base|input] 模式、
60
+ * @value base 基础对话框
61
+ * @value input 可输入对话框
62
+ * @showClose {Boolean} 是否显示关闭按钮
63
+ * @property {String} content 对话框内容
64
+ * @property {Boolean} beforeClose 是否拦截取消事件
65
+ * @property {Number} maxlength 输入
66
+ * @event {Function} confirm 点击确认按钮触发
67
+ * @event {Function} close 点击取消按钮触发
68
+ */
69
+
70
+ export default {
71
+ name: 'uniPopupDialog',
72
+ mixins: [popup],
73
+ emits: ['confirm', 'close', 'update:modelValue', 'input'],
74
+ props: {
75
+ inputType: {
76
+ type: String,
77
+ default: 'text'
78
+ },
79
+ showClose: {
80
+ type: Boolean,
81
+ default: true
82
+ },
83
+ // #ifdef VUE2
84
+ value: {
85
+ type: [String, Number],
86
+ default: ''
87
+ },
88
+ // #endif
89
+ // #ifdef VUE3
90
+ modelValue: {
91
+ type: [Number, String],
92
+ default: ''
93
+ },
94
+ // #endif
95
+
96
+ placeholder: {
97
+ type: [String, Number],
98
+ default: ''
99
+ },
100
+ type: {
101
+ type: String,
102
+ default: 'error'
103
+ },
104
+ mode: {
105
+ type: String,
106
+ default: 'base'
107
+ },
108
+ title: {
109
+ type: String,
110
+ default: ''
111
+ },
112
+ content: {
113
+ type: String,
114
+ default: ''
115
+ },
116
+ beforeClose: {
117
+ type: Boolean,
118
+ default: false
119
+ },
120
+ cancelText: {
121
+ type: String,
122
+ default: ''
123
+ },
124
+ confirmText: {
125
+ type: String,
126
+ default: ''
127
+ },
128
+ maxlength: {
129
+ type: Number,
130
+ default: -1
131
+ },
132
+ focus: {
133
+ type: Boolean,
134
+ default: true
135
+ }
136
+ },
137
+ data() {
138
+ return {
139
+ dialogType: 'error',
140
+ val: ''
141
+ };
142
+ },
143
+ computed: {
144
+ okText() {
145
+ return this.confirmText || t('uni-popup.ok');
146
+ },
147
+ closeText() {
148
+ return this.cancelText || t('uni-popup.cancel');
149
+ },
150
+ placeholderText() {
151
+ return this.placeholder || t('uni-popup.placeholder');
152
+ },
153
+ titleText() {
154
+ return this.title || t('uni-popup.title');
155
+ }
156
+ },
157
+ watch: {
158
+ type(val) {
159
+ this.dialogType = val;
160
+ },
161
+ mode(val) {
162
+ if (val === 'input') {
163
+ this.dialogType = 'info';
164
+ }
165
+ },
166
+ value(val) {
167
+ if (this.maxlength != -1 && this.mode === 'input') {
168
+ this.val = val.slice(0, this.maxlength);
169
+ } else {
170
+ this.val = val;
171
+ }
172
+ },
173
+ val(val) {
174
+ // #ifdef VUE2
175
+ // TODO 兼容 vue2
176
+ this.$emit('input', val);
177
+ // #endif
178
+ // #ifdef VUE3
179
+ // TODO 兼容 vue3
180
+ this.$emit('update:modelValue', val);
181
+ // #endif
182
+ }
183
+ },
184
+ created() {
185
+ // 对话框遮罩不可点击
186
+ this.popup.disableMask();
187
+ // this.popup.closeMask()
188
+ if (this.mode === 'input') {
189
+ this.dialogType = 'info';
190
+ this.val = this.value;
191
+ // #ifdef VUE3
192
+ this.val = this.modelValue;
193
+ // #endif
194
+ } else {
195
+ this.dialogType = this.type;
196
+ }
197
+ },
198
+ methods: {
199
+ /**
200
+ * 点击确认按钮
201
+ */
202
+ onOk() {
203
+ if (this.mode === 'input') {
204
+ this.$emit('confirm', this.val);
205
+ } else {
206
+ this.$emit('confirm');
207
+ }
208
+ if (this.beforeClose) return;
209
+ this.popup.close();
210
+ },
211
+ /**
212
+ * 点击取消按钮
213
+ */
214
+ closeDialog() {
215
+ this.$emit('close');
216
+ if (this.beforeClose) return;
217
+ this.popup.close();
218
+ },
219
+ close() {
220
+ this.popup.close();
221
+ }
222
+ }
223
+ };
224
+ </script>
225
+
226
+ <style lang="scss">
227
+ .uni-popup-dialog {
228
+ width: 300px;
229
+ border-radius: 11px;
230
+ background-color: #fff;
231
+ }
232
+
233
+ .uni-dialog-title {
234
+ /* #ifndef APP-NVUE */
235
+ display: flex;
236
+ /* #endif */
237
+ flex-direction: row;
238
+ justify-content: center;
239
+ padding-top: 25px;
240
+ }
241
+
242
+ .uni-dialog-title-text {
243
+ font-size: 16px;
244
+ font-weight: 500;
245
+ }
246
+
247
+ .uni-dialog-content {
248
+ /* #ifndef APP-NVUE */
249
+ display: flex;
250
+ /* #endif */
251
+ flex-direction: row;
252
+ justify-content: center;
253
+ align-items: center;
254
+ padding: 20px;
255
+ }
256
+
257
+ .uni-dialog-content-text {
258
+ font-size: 14px;
259
+ color: #6c6c6c;
260
+ }
261
+
262
+ .uni-dialog-button-group {
263
+ /* #ifndef APP-NVUE */
264
+ display: flex;
265
+ /* #endif */
266
+ flex-direction: row;
267
+ border-top-color: #f5f5f5;
268
+ border-top-style: solid;
269
+ border-top-width: 1px;
270
+ }
271
+
272
+ .uni-dialog-button {
273
+ /* #ifndef APP-NVUE */
274
+ display: flex;
275
+ /* #endif */
276
+
277
+ flex: 1;
278
+ flex-direction: row;
279
+ justify-content: center;
280
+ align-items: center;
281
+ height: 45px;
282
+ }
283
+
284
+ .uni-border-left {
285
+ border-left-color: #f0f0f0;
286
+ border-left-style: solid;
287
+ border-left-width: 1px;
288
+ }
289
+
290
+ .uni-dialog-button-text {
291
+ font-size: 16px;
292
+ color: #333;
293
+ }
294
+
295
+ .uni-button-color {
296
+ color: #007aff;
297
+ }
298
+
299
+ .uni-dialog-input {
300
+ flex: 1;
301
+ font-size: 14px;
302
+ border: 1px #eee solid;
303
+ height: 40px;
304
+ padding: 0 10px;
305
+ border-radius: 5px;
306
+ color: #555;
307
+ }
308
+
309
+ .uni-popup__success {
310
+ color: #4cd964;
311
+ }
312
+
313
+ .uni-popup__warn {
314
+ color: #f0ad4e;
315
+ }
316
+
317
+ .uni-popup__error {
318
+ color: #dd524d;
319
+ }
320
+
321
+ .uni-popup__info {
322
+ color: #909399;
323
+ }
324
+ </style>