@10yun/cv-mobile-ui 0.4.1 → 0.4.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 (122) hide show
  1. package/package.json +1 -1
  2. package/ui-cv/cv-form-item/cv-form-item.vue +1 -1
  3. package/ui-cv/cv-input-password/cv-input-password.vue +2 -2
  4. package/ui-uni/amap-wx/js/util.js +166 -158
  5. package/ui-uni/page-foot/page-foot.vue +38 -0
  6. package/ui-uni/page-head/page-head.vue +16 -0
  7. package/ui-uni/product.vue +52 -52
  8. package/ui-uni/u-charts/u-charts.js +743 -1092
  9. package/ui-uni/u-link/u-link.vue +59 -0
  10. package/ui-uni/uni-badge/uni-badge.vue +250 -0
  11. package/{ui-cv/cv-calendar → ui-uni/uni-calendar}/calendar.js +0 -0
  12. package/{ui-cv/cv-calendar → ui-uni/uni-calendar}/uni-calendar-item.vue +0 -0
  13. package/{ui-cv/cv-calendar → ui-uni/uni-calendar}/uni-calendar.vue +0 -0
  14. package/{ui-cv/cv-calendar → ui-uni/uni-calendar}/util.js +0 -0
  15. package/{ui-cv/cv-card → ui-uni/uni-card}/uni-card.vue +0 -0
  16. package/{ui-cv/cv-col → ui-uni/uni-col}/uni-col.vue +0 -0
  17. package/{ui-cv/cv-collapse → ui-uni/uni-collapse}/uni-collapse.vue +0 -0
  18. package/{ui-cv/cv-collapse-item → ui-uni/uni-collapse-item}/uni-collapse-item.vue +0 -0
  19. package/{ui-cv/cv-combox → ui-uni/uni-combox}/uni-combox.vue +0 -0
  20. package/{ui-cv/cv-countdown → ui-uni/uni-countdown}/uni-countdown.vue +0 -0
  21. package/{ui-cv/cv-data-checkbox → ui-uni/uni-data-checkbox}/uni-data-checkbox.vue +0 -0
  22. package/{ui-cv/cv-data-indexed-list → ui-uni/uni-data-indexed-list}/clientdb.js +0 -0
  23. package/{ui-cv/cv-data-indexed-list → ui-uni/uni-data-indexed-list}/uni-data-indexed-list-item.vue +0 -0
  24. package/{ui-cv/cv-data-indexed-list → ui-uni/uni-data-indexed-list}/uni-data-indexed-list.vue +0 -0
  25. package/{ui-cv/cv-data-picker → ui-uni/uni-data-picker}/keypress.js +0 -0
  26. package/{ui-cv/cv-data-picker → ui-uni/uni-data-picker}/uni-data-picker.vue +0 -0
  27. package/{ui-cv/cv-data-pickerview → ui-uni/uni-data-pickerview}/uni-data-picker.js +0 -0
  28. package/{ui-cv/cv-data-pickerview → ui-uni/uni-data-pickerview}/uni-data-pickerview.vue +0 -0
  29. package/{ui-cv/cv-dateformat → ui-uni/uni-dateformat}/date-format.js +0 -0
  30. package/{ui-cv/cv-dateformat → ui-uni/uni-dateformat}/uni-dateformat.vue +0 -0
  31. package/{ui-cv/cv-datetime-picker → ui-uni/uni-datetime-picker}/calendar-item.vue +0 -0
  32. package/{ui-cv/cv-datetime-picker → ui-uni/uni-datetime-picker}/calendar.js +0 -0
  33. package/{ui-cv/cv-datetime-picker → ui-uni/uni-datetime-picker}/calendar.vue +0 -0
  34. package/{ui-cv/cv-datetime-picker → ui-uni/uni-datetime-picker}/keypress.js +0 -0
  35. package/{ui-cv/cv-datetime-picker → ui-uni/uni-datetime-picker}/time-picker.vue +0 -0
  36. package/{ui-cv/cv-datetime-picker → ui-uni/uni-datetime-picker}/uni-datetime-picker.vue +0 -0
  37. package/{ui-cv/cv-datetime-picker → ui-uni/uni-datetime-picker}/util.js +0 -0
  38. package/ui-uni/uni-drawer/keypress.js +45 -0
  39. package/ui-uni/uni-drawer/uni-drawer.vue +178 -0
  40. package/{ui-cv/cv-easyinput → ui-uni/uni-easyinput}/common.js +0 -0
  41. package/{ui-cv/cv-easyinput → ui-uni/uni-easyinput}/uni-easyinput.vue +0 -0
  42. package/{ui-cv/cv-fab → ui-uni/uni-fab}/uni-fab.vue +0 -0
  43. package/{ui-cv/cv-fab → ui-uni/uni-fab}/uni-fab.vue.bak +0 -0
  44. package/{ui-cv/cv-fav → ui-uni/uni-fav}/uni-fav.vue +0 -0
  45. package/{ui-cv/cv-file-picker → ui-uni/uni-file-picker}/choose-and-upload-file.js +0 -0
  46. package/{ui-cv/cv-file-picker → ui-uni/uni-file-picker}/uni-file-picker.vue +0 -0
  47. package/{ui-cv/cv-file-picker → ui-uni/uni-file-picker}/upload-file.vue +0 -0
  48. package/{ui-cv/cv-file-picker → ui-uni/uni-file-picker}/upload-image.vue +0 -0
  49. package/{ui-cv/cv-file-picker → ui-uni/uni-file-picker}/utils.js +0 -0
  50. package/ui-uni/uni-forms/uni-forms.vue +467 -0
  51. package/ui-uni/uni-forms/validate.js +486 -0
  52. package/ui-uni/uni-forms-item/uni-forms-item.vue +500 -0
  53. package/{ui-cv/cv-goods-nav → ui-uni/uni-goods-nav}/uni-goods-nav.vue +0 -0
  54. package/ui-uni/uni-grid/uni-grid.vue +141 -0
  55. package/ui-uni/uni-grid-item/uni-grid-item.vue +123 -0
  56. package/ui-uni/uni-group/uni-group.vue +123 -0
  57. package/ui-uni/uni-icons/icons.js +132 -0
  58. package/ui-uni/uni-icons/uni-icons.vue +72 -0
  59. package/{ui-cv/cv-icons2 → ui-uni/uni-icons}/uni.ttf +0 -0
  60. package/{ui-cv/cv-indexed-list → ui-uni/uni-indexed-list}/uni-indexed-list-item.vue +0 -0
  61. package/{ui-cv/cv-indexed-list → ui-uni/uni-indexed-list}/uni-indexed-list.vue +0 -0
  62. package/ui-uni/uni-link/uni-link.vue +117 -0
  63. package/{ui-cv/cv-list → ui-uni/uni-list}/uni-list.vue +0 -0
  64. package/{ui-cv/cv-list → ui-uni/uni-list}/uni-refresh.vue +0 -0
  65. package/{ui-cv/cv-list → ui-uni/uni-list}/uni-refresh.wxs +0 -0
  66. package/{ui-cv/cv-list-ad → ui-uni/uni-list-ad}/uni-list-ad.vue +0 -0
  67. package/{ui-cv/cv-list-chat → ui-uni/uni-list-chat}/uni-list-chat.scss +0 -0
  68. package/{ui-cv/cv-list-chat → ui-uni/uni-list-chat}/uni-list-chat.vue +0 -0
  69. package/{ui-cv/cv-list-item → ui-uni/uni-list-item}/uni-list-item.vue +0 -0
  70. package/ui-uni/uni-load-more/uni-load-more.vue +366 -0
  71. package/{ui-cv/cv-nav-bar → ui-uni/uni-nav-bar}/uni-nav-bar.vue +0 -0
  72. package/{ui-cv/cv-nav-bar → ui-uni/uni-nav-bar}/uni-status-bar.vue +0 -0
  73. package/{ui-cv/cv-notice-bar → ui-uni/uni-notice-bar}/uni-notice-bar.vue +0 -0
  74. package/{ui-cv/cv-number-box → ui-uni/uni-number-box}/uni-number-box.vue +0 -0
  75. package/{ui-cv/cv-pagination → ui-uni/uni-pagination}/uni-pagination.vue +0 -0
  76. package/{ui-cv/cv-popup → ui-uni/uni-popup}/keypress.js +0 -0
  77. package/{ui-cv/cv-popup → ui-uni/uni-popup}/popup.js +0 -0
  78. package/{ui-cv/cv-popup → ui-uni/uni-popup}/uni-popup.vue +0 -0
  79. package/{ui-cv/cv-popup-dialog → ui-uni/uni-popup-dialog}/keypress.js +0 -0
  80. package/{ui-cv/cv-popup-dialog → ui-uni/uni-popup-dialog}/uni-popup-dialog.vue +0 -0
  81. package/{ui-cv/cv-popup-message → ui-uni/uni-popup-message}/uni-popup-message.vue +0 -0
  82. package/{ui-cv/cv-popup-share → ui-uni/uni-popup-share}/uni-popup-share.vue +0 -0
  83. package/ui-uni/uni-rate/uni-rate.vue +357 -0
  84. package/ui-uni/uni-row/uni-row.vue +155 -0
  85. package/{ui-cv/cv-search-bar → ui-uni/uni-search-bar}/uni-search-bar.vue +0 -0
  86. package/{ui-cv/cv-section → ui-uni/uni-section}/uni-section.vue +0 -0
  87. package/{ui-cv/cv-segmented-control → ui-uni/uni-segmented-control}/uni-segmented-control.vue +0 -0
  88. package/{ui-cv/cv-status-bar → ui-uni/uni-status-bar}/uni-status-bar.vue +0 -0
  89. package/{ui-cv/cv-steps → ui-uni/uni-steps}/uni-steps.vue +0 -0
  90. package/{ui-cv/cv-swipe-action → ui-uni/uni-swipe-action}/uni-swipe-action.vue +0 -0
  91. package/{ui-cv/cv-swipe-action-item → ui-uni/uni-swipe-action-item}/bindingx.js +0 -0
  92. package/{ui-cv/cv-swipe-action-item → ui-uni/uni-swipe-action-item}/index.wxs +0 -0
  93. package/{ui-cv/cv-swipe-action-item → ui-uni/uni-swipe-action-item}/isPC.js +0 -0
  94. package/{ui-cv/cv-swipe-action-item → ui-uni/uni-swipe-action-item}/mpalipay.js +0 -0
  95. package/{ui-cv/cv-swipe-action-item → ui-uni/uni-swipe-action-item}/mpother.js +0 -0
  96. package/{ui-cv/cv-swipe-action-item → ui-uni/uni-swipe-action-item}/mpwxs.js +0 -0
  97. package/{ui-cv/cv-swipe-action-item → ui-uni/uni-swipe-action-item}/uni-swipe-action-item.vue +0 -0
  98. package/{ui-cv/cv-swiper-dot → ui-uni/uni-swiper-dot}/uni-swiper-dot.vue +0 -0
  99. package/{ui-cv/cv-table → ui-uni/uni-table}/uni-table.vue +0 -0
  100. package/{ui-cv/cv-tag → ui-uni/uni-tag}/uni-tag.vue +0 -0
  101. package/{ui-cv/cv-tbody → ui-uni/uni-tbody}/uni-tbody.vue +0 -0
  102. package/{ui-cv/cv-td → ui-uni/uni-td}/uni-td.vue +0 -0
  103. package/{ui-cv/cv-test → ui-uni/uni-test}/uni-test.vue +0 -0
  104. package/{ui-cv/cv-th → ui-uni/uni-th}/filter-dropdown.vue +0 -0
  105. package/{ui-cv/cv-th → ui-uni/uni-th}/uni-th.vue +0 -0
  106. package/{ui-cv/cv-thead → ui-uni/uni-thead}/uni-thead.vue +0 -0
  107. package/{ui-cv/cv-title → ui-uni/uni-title}/uni-title.vue +0 -0
  108. package/{ui-cv/cv-tr → ui-uni/uni-tr}/table-checkbox.vue +0 -0
  109. package/{ui-cv/cv-tr → ui-uni/uni-tr}/uni-tr.vue +0 -0
  110. package/{ui-cv/cv-transition → ui-uni/uni-transition}/createAnimation.js +0 -0
  111. package/{ui-cv/cv-transition → ui-uni/uni-transition}/uni-transition.vue +0 -0
  112. package/ui-cv/cv-badge/uni-badge.vue +0 -249
  113. package/ui-cv/cv-drawer/cv-drawer.vue +0 -185
  114. package/ui-cv/cv-drawer/keypress.js +0 -45
  115. package/ui-cv/cv-form-base/cv-form-base.vue +0 -470
  116. package/ui-cv/cv-form-base/validate.js +0 -477
  117. package/ui-cv/cv-grid-group/cv-grid-group.vue +0 -148
  118. package/ui-cv/cv-grid-item/cv-grid-item.vue +0 -132
  119. package/ui-cv/cv-icons2/cv-icons2.vue +0 -78
  120. package/ui-cv/cv-icons2/icons.js +0 -132
  121. package/ui-cv/cv-link/uni-link.vue +0 -130
  122. package/ui-cv/cv-row/uni-row.vue +0 -157
@@ -0,0 +1,366 @@
1
+ <template>
2
+ <view class="uni-load-more" @click="onClick">
3
+ <!-- #ifdef APP-NVUE -->
4
+ <loading-indicator v-if="!webviewHide && status === 'loading' && showIcon" :style="{color: color,width:iconSize+'px',height:iconSize+'px'}" :animating="true" class="uni-load-more__img uni-load-more__img--nvue"></loading-indicator>
5
+ <!-- #endif -->
6
+ <!-- #ifdef H5 -->
7
+ <svg width="24" height="24" viewBox="25 25 50 50" v-if="!webviewHide && (iconType==='circle' || iconType==='auto' && platform === 'android') && status === 'loading' && showIcon" :style="{width:iconSize+'px',height:iconSize+'px'}" class="uni-load-more__img uni-load-more__img--android-H5">
8
+ <circle cx="50" cy="50" r="20" fill="none" :style="{color:color}" :stroke-width="3"></circle>
9
+ </svg>
10
+ <!-- #endif -->
11
+ <!-- #ifndef APP-NVUE || H5 -->
12
+ <view v-if="!webviewHide && (iconType==='circle' || iconType==='auto' && platform === 'android') && status === 'loading' && showIcon" :style="{width:iconSize+'px',height:iconSize+'px'}" class="uni-load-more__img uni-load-more__img--android-MP">
13
+ <view :style="{borderTopColor:color,borderTopWidth:iconSize/12}"></view>
14
+ <view :style="{borderTopColor:color,borderTopWidth:iconSize/12}"></view>
15
+ <view :style="{borderTopColor:color,borderTopWidth:iconSize/12}"></view>
16
+ </view>
17
+ <!-- #endif -->
18
+ <!-- #ifndef APP-NVUE -->
19
+ <view v-else-if="!webviewHide && status === 'loading' && showIcon" :style="{width:iconSize+'px',height:iconSize+'px'}" class="uni-load-more__img uni-load-more__img--ios-H5">
20
+ <image src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QzlBMzU3OTlEOUM0MTFFOUI0NTZDNERBQURBQzI4RkUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QzlBMzU3OUFEOUM0MTFFOUI0NTZDNERBQURBQzI4RkUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDOUEzNTc5N0Q5QzQxMUU5QjQ1NkM0REFBREFDMjhGRSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDOUEzNTc5OEQ5QzQxMUU5QjQ1NkM0REFBREFDMjhGRSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pt+ALSwAAA6CSURBVHja1FsLkFZV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" mode="widthFix"></image>
21
+ </view>
22
+ <!-- #endif -->
23
+ <text class="uni-load-more__text" :style="{color: color}">{{ status === 'more' ? contentText.contentdown : status === 'loading' ? contentText.contentrefresh : contentText.contentnomore }}</text>
24
+ </view>
25
+ </template>
26
+
27
+ <script>
28
+ let platform
29
+ setTimeout(() => {
30
+ platform = uni.getSystemInfoSync().platform
31
+ }, 16)
32
+
33
+ /**
34
+ * LoadMore 加载更多
35
+ * @description 用于列表中,做滚动加载使用,展示 loading 的各种状态
36
+ * @tutorial https://ext.dcloud.net.cn/plugin?id=29
37
+ * @property {String} status = [more|loading|noMore] loading 的状态
38
+ * @value more loading前
39
+ * @value loading loading中
40
+ * @value noMore 没有更多了
41
+ * @property {Number} iconSize 指定图标大小
42
+ * @property {Boolean} iconSize = [true|false] 是否显示 loading 图标
43
+ * @property {String} iconType = [snow|circle|auto] 指定图标样式
44
+ * @value snow ios雪花加载样式
45
+ * @value circle 安卓唤醒加载样式
46
+ * @value auto 根据平台自动选择加载样式
47
+ * @property {String} color 图标和文字颜色
48
+ * @property {Object} contentText 各状态文字说明,值为:{contentdown: "上拉显示更多",contentrefresh: "正在加载...",contentnomore: "没有更多数据了"}
49
+ * @event {Function} clickLoadMore 点击加载更多时触发
50
+ */
51
+ export default {
52
+ name: 'UniLoadMore',
53
+ emits: ['clickLoadMore'],
54
+ props: {
55
+ status: {
56
+ // 上拉的状态:more-loading前;loading-loading中;noMore-没有更多了
57
+ type: String,
58
+ default: 'more'
59
+ },
60
+ showIcon: {
61
+ type: Boolean,
62
+ default: true
63
+ },
64
+ iconType: {
65
+ type: String,
66
+ default: 'auto'
67
+ },
68
+ iconSize: {
69
+ type: Number,
70
+ default: 24
71
+ },
72
+ color: {
73
+ type: String,
74
+ default: '#777777'
75
+ },
76
+ contentText: {
77
+ type: Object,
78
+ default () {
79
+ return {
80
+ contentdown: '上拉显示更多',
81
+ contentrefresh: '正在加载...',
82
+ contentnomore: '没有更多数据了'
83
+ }
84
+ }
85
+ }
86
+ },
87
+ data() {
88
+ return {
89
+ webviewHide: false,
90
+ platform: platform
91
+ }
92
+ },
93
+ // #ifndef APP-NVUE
94
+ computed: {
95
+ iconSnowWidth() {
96
+ return (Math.floor(this.iconSize / 24) || 1) * 2
97
+ }
98
+ },
99
+ // #endif
100
+ mounted() {
101
+ // #ifdef APP-PLUS
102
+ var pages = getCurrentPages();
103
+ var page = pages[pages.length - 1];
104
+ var currentWebview = page.$getAppWebview();
105
+ currentWebview.addEventListener('hide', () => {
106
+ this.webviewHide = true
107
+ })
108
+ currentWebview.addEventListener('show', () => {
109
+ this.webviewHide = false
110
+ })
111
+ // #endif
112
+ },
113
+ methods: {
114
+ onClick() {
115
+ this.$emit('clickLoadMore', {
116
+ detail: {
117
+ status: this.status,
118
+ }
119
+ })
120
+ }
121
+ }
122
+ }
123
+ </script>
124
+
125
+ <style scoped>
126
+ .uni-load-more {
127
+ /* #ifndef APP-NVUE */
128
+ display: flex;
129
+ /* #endif */
130
+ flex-direction: row;
131
+ height: 40px;
132
+ align-items: center;
133
+ justify-content: center;
134
+ }
135
+
136
+ .uni-load-more__text {
137
+ font-size: 15px;
138
+ }
139
+
140
+ .uni-load-more__img {
141
+ width: 24px;
142
+ height: 24px;
143
+ margin-right: 8px;
144
+ }
145
+
146
+ .uni-load-more__img--nvue {
147
+ color: #666666;
148
+ }
149
+
150
+ .uni-load-more__img--android,
151
+ .uni-load-more__img--ios {
152
+ width: 24px;
153
+ height: 24px;
154
+ transform: rotate(0deg);
155
+ }
156
+
157
+ /* #ifndef APP-NVUE */
158
+ .uni-load-more__img--android {
159
+ animation: loading-ios 1s 0s linear infinite;
160
+ }
161
+
162
+ @keyframes loading-android {
163
+ 0% {
164
+ transform: rotate(0deg);
165
+ }
166
+
167
+ 100% {
168
+ transform: rotate(360deg);
169
+ }
170
+ }
171
+
172
+ .uni-load-more__img--ios-H5 {
173
+ position: relative;
174
+ animation: loading-ios-H5 1s 0s step-end infinite;
175
+ }
176
+
177
+ .uni-load-more__img--ios-H5>image {
178
+ position: absolute;
179
+ width: 100%;
180
+ height: 100%;
181
+ left: 0;
182
+ top: 0;
183
+ }
184
+
185
+ @keyframes loading-ios-H5 {
186
+ 0% {
187
+ transform: rotate(0deg);
188
+ }
189
+
190
+ 8% {
191
+ transform: rotate(30deg);
192
+ }
193
+
194
+ 16% {
195
+ transform: rotate(60deg);
196
+ }
197
+
198
+ 24% {
199
+ transform: rotate(90deg);
200
+ }
201
+
202
+ 32% {
203
+ transform: rotate(120deg);
204
+ }
205
+
206
+ 40% {
207
+ transform: rotate(150deg);
208
+ }
209
+
210
+ 48% {
211
+ transform: rotate(180deg);
212
+ }
213
+
214
+ 56% {
215
+ transform: rotate(210deg);
216
+ }
217
+
218
+ 64% {
219
+ transform: rotate(240deg);
220
+ }
221
+
222
+ 73% {
223
+ transform: rotate(270deg);
224
+ }
225
+
226
+ 82% {
227
+ transform: rotate(300deg);
228
+ }
229
+
230
+ 91% {
231
+ transform: rotate(330deg);
232
+ }
233
+
234
+ 100% {
235
+ transform: rotate(360deg);
236
+ }
237
+ }
238
+
239
+ /* #endif */
240
+ /* #ifdef H5 */
241
+ .uni-load-more__img--android-H5 {
242
+ animation: loading-android-H5-rotate 2s linear infinite;
243
+ transform-origin: center center;
244
+ }
245
+
246
+ .uni-load-more__img--android-H5>circle {
247
+ display: inline-block;
248
+ animation: loading-android-H5-dash 1.5s ease-in-out infinite;
249
+ stroke: currentColor;
250
+ stroke-linecap: round;
251
+ }
252
+
253
+ @keyframes loading-android-H5-rotate {
254
+ 0% {
255
+ transform: rotate(0deg);
256
+ }
257
+
258
+ 100% {
259
+ transform: rotate(360deg);
260
+ }
261
+ }
262
+
263
+ @keyframes loading-android-H5-dash {
264
+ 0% {
265
+ stroke-dasharray: 1, 200;
266
+ stroke-dashoffset: 0;
267
+ }
268
+
269
+ 50% {
270
+ stroke-dasharray: 90, 150;
271
+ stroke-dashoffset: -40;
272
+ }
273
+
274
+ 100% {
275
+ stroke-dasharray: 90, 150;
276
+ stroke-dashoffset: -120;
277
+ }
278
+ }
279
+
280
+ /* #endif */
281
+ /* #ifndef APP-NVUE || H5 */
282
+ .uni-load-more__img--android-MP {
283
+ position: relative;
284
+ width: 24px;
285
+ height: 24px;
286
+ transform: rotate(0deg);
287
+ animation: loading-ios 1s 0s ease infinite;
288
+ }
289
+
290
+ .uni-load-more__img--android-MP>view {
291
+ position: absolute;
292
+ box-sizing: border-box;
293
+ width: 100%;
294
+ height: 100%;
295
+ border-radius: 50%;
296
+ border: solid 2px transparent;
297
+ border-top: solid 2px #777777;
298
+ transform-origin: center;
299
+ }
300
+
301
+ .uni-load-more__img--android-MP>view:nth-child(1) {
302
+ animation: loading-android-MP-1 1s 0s linear infinite;
303
+ }
304
+
305
+ .uni-load-more__img--android-MP>view:nth-child(2) {
306
+ animation: loading-android-MP-2 1s 0s linear infinite;
307
+ }
308
+
309
+ .uni-load-more__img--android-MP>view:nth-child(3) {
310
+ animation: loading-android-MP-3 1s 0s linear infinite;
311
+ }
312
+
313
+ @keyframes loading-android {
314
+ 0% {
315
+ transform: rotate(0deg);
316
+ }
317
+
318
+ 100% {
319
+ transform: rotate(360deg);
320
+ }
321
+ }
322
+
323
+ @keyframes loading-android-MP-1 {
324
+ 0% {
325
+ transform: rotate(0deg);
326
+ }
327
+
328
+ 50% {
329
+ transform: rotate(90deg);
330
+ }
331
+
332
+ 100% {
333
+ transform: rotate(360deg);
334
+ }
335
+ }
336
+
337
+ @keyframes loading-android-MP-2 {
338
+ 0% {
339
+ transform: rotate(0deg);
340
+ }
341
+
342
+ 50% {
343
+ transform: rotate(180deg);
344
+ }
345
+
346
+ 100% {
347
+ transform: rotate(360deg);
348
+ }
349
+ }
350
+
351
+ @keyframes loading-android-MP-3 {
352
+ 0% {
353
+ transform: rotate(0deg);
354
+ }
355
+
356
+ 50% {
357
+ transform: rotate(270deg);
358
+ }
359
+
360
+ 100% {
361
+ transform: rotate(360deg);
362
+ }
363
+ }
364
+
365
+ /* #endif */
366
+ </style>
File without changes
File without changes