@10yun/cv-mobile-ui 0.5.9 → 0.5.11

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 (46) hide show
  1. package/extend/permission.js +1 -2
  2. package/package.json +1 -1
  3. package/plugins/uni-richText.js +1 -1
  4. package/plugins/uni-socket.js +6 -8
  5. package/ui-cv/cv-base-audio/cv-base-audio.vue +278 -0
  6. package/ui-cv/cv-editor-parse/components/wxParseAudio.vue +2 -4
  7. package/ui-cv/cv-geo-local/cv-geo-local.vue +0 -1
  8. package/ui-cv/cv-layout-topbar/cv-layout-topbar.vue +238 -0
  9. package/ui-cv/cv-markdown-show/lib/highlight/uni-highlight.min.js +9001 -5133
  10. package/ui-sdks/sdk-app-update/img/logo.png +0 -0
  11. package/ui-sdks/sdk-app-update/img/update_bg.png +0 -0
  12. package/ui-sdks/sdk-app-update/img/update_bg_top.png +0 -0
  13. package/{ui-cv/cv-update-app/cv-update-app.vue → ui-sdks/sdk-app-update/sdk-app-update.vue} +2 -2
  14. package/ui-sdks/sdk-app-update/xxxx +62 -0
  15. package/ui-sdks/sdk-privacy-policy/sdk-privacy-policy.vue +113 -0
  16. package/ui-sdks/sdk-u-charts/app-echarts.min.js +23 -0
  17. package/ui-sdks/sdk-u-charts/config-echarts.js +420 -0
  18. package/ui-sdks/sdk-u-charts/config-ucharts.js +630 -0
  19. package/ui-sdks/sdk-u-charts/h5-echarts.min.js +23 -0
  20. package/ui-sdks/sdk-u-charts/u-charts.js +7398 -0
  21. package/ui-sdks/sdk-u-charts/u-charts.min.js +1 -0
  22. package/ui-sdks/sdk-webview-main/WebViewMain.vue +1 -0
  23. package/ui-sdks/sdk-webview-main/main.js +0 -0
  24. package/ui-sdks/sdk-webview-main/mixin.js +0 -0
  25. package/ui-uni/uParse/src/components/wxParseAudio.vue +26 -0
  26. package/ui-uni/uParse/src/components/wxParseImg.vue +94 -0
  27. package/ui-uni/uParse/src/components/wxParseTable.vue +55 -0
  28. package/ui-uni/uParse/src/components/wxParseTemplate0.vue +103 -0
  29. package/ui-uni/uParse/src/components/wxParseTemplate1.vue +88 -0
  30. package/ui-uni/uParse/src/components/wxParseTemplate10.vue +88 -0
  31. package/ui-uni/uParse/src/components/wxParseTemplate11.vue +86 -0
  32. package/ui-uni/uParse/src/components/wxParseTemplate2.vue +88 -0
  33. package/ui-uni/uParse/src/components/wxParseTemplate3.vue +88 -0
  34. package/ui-uni/uParse/src/components/wxParseTemplate4.vue +88 -0
  35. package/ui-uni/uParse/src/components/wxParseTemplate5.vue +88 -0
  36. package/ui-uni/uParse/src/components/wxParseTemplate6.vue +88 -0
  37. package/ui-uni/uParse/src/components/wxParseTemplate7.vue +88 -0
  38. package/ui-uni/uParse/src/components/wxParseTemplate8.vue +88 -0
  39. package/ui-uni/uParse/src/components/wxParseTemplate9.vue +88 -0
  40. package/ui-uni/uParse/src/components/wxParseVideo.vue +15 -0
  41. package/ui-uni/uParse/src/editor.css +495 -0
  42. package/ui-uni/uParse/src/libs/html2json.js +261 -0
  43. package/ui-uni/uParse/src/libs/htmlparser.js +156 -0
  44. package/ui-uni/uParse/src/libs/wxDiscode.js +195 -0
  45. package/ui-uni/uParse/src/wxParse.css +270 -0
  46. package/ui-uni/uParse/src/wxParse.vue +206 -0
@@ -253,5 +253,4 @@ const permission = {
253
253
  gotoAppSetting: gotoAppPermissionSetting,
254
254
  gotoiOSSetting: gotoiOSPermissionSetting
255
255
  };
256
-
257
- module.exports = permission;
256
+ export default permission;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@10yun/cv-mobile-ui",
3
- "version": "0.5.9",
3
+ "version": "0.5.11",
4
4
  "description": "十云cvjs移动端ui,适用uniapp",
5
5
  "author": "",
6
6
  "license": "Apache-2.0",
@@ -47,7 +47,7 @@ var GRT = [
47
47
  ['td', 'border-right:1px solid #F2F3F4; border-bottom:1px solid #F2F3F4; padding-left:5px;']
48
48
  ];
49
49
 
50
- module.exports = {
50
+ export default {
51
51
  format: function (html) {
52
52
  html = html || '';
53
53
  if (html == '') {
@@ -17,7 +17,7 @@ var pagelist = [];
17
17
  //pagetype = ''; //msglist , chat
18
18
  //chat_id = ''; //when chat
19
19
 
20
- const ctoSocketClass = {
20
+ const SocketClass = {
21
21
  /**
22
22
  * 主动关闭,监听端口
23
23
  */
@@ -49,8 +49,8 @@ const ctoSocketClass = {
49
49
  console.log('尝试断线重连');
50
50
  clearInterval(timer);
51
51
  if (s_data.reconnet_times <= s_data.limit_times) {
52
- ctoSocketClass.close_socket();
53
- ctoSocketClass.init();
52
+ SocketClass.close_socket();
53
+ SocketClass.init();
54
54
  s_data.reconnet_times++;
55
55
  }
56
56
  return;
@@ -81,7 +81,7 @@ const ctoSocketClass = {
81
81
  s_data.reconnet_times = 0;
82
82
  console.log('WebSocket已打开!');
83
83
  console.log('connect success', successRes);
84
- ctoSocketClass.xintiaoFunc();
84
+ SocketClass.xintiaoFunc();
85
85
  }
86
86
  });
87
87
  });
@@ -103,7 +103,7 @@ const ctoSocketClass = {
103
103
  setTimeout(function () {
104
104
  console.log('监听socket失败 尝试重新连接');
105
105
  if (s_data.reconnet_times <= s_data.limit_times) {
106
- ctoSocketClass.init();
106
+ SocketClass.init();
107
107
  s_data.reconnet_times++;
108
108
  }
109
109
  return;
@@ -171,6 +171,4 @@ function receive_data(data) {
171
171
  }
172
172
  }
173
173
 
174
- module.exports = {
175
- ctoSocketClass: ctoSocketClass
176
- };
174
+ export default SocketClass;
@@ -0,0 +1,278 @@
1
+ <template>
2
+ <view class="cv-base-audio__warp">
3
+ <view class="cv-base-audio__cover" :class="{ 'cv-base-audio--cover-bg': !poster }">
4
+ <image :src="poster" v-if="poster" class="cv-base-audio__cover-img"></image>
5
+ <view class="cv-base-audio__play-btn" :class="{ 'cv-base-audio--btn-pause': videoIsPlay }" @click="handleBtnClick"></view>
6
+ </view>
7
+ <view class="cv-base-audio__audio-con">
8
+ <view class="cv-base-audio__audio-info">
9
+ <text class="cv-base-audio__audio-title cv-base-audio--text-eill">{{ name }}</text>
10
+ <text class="cv-base-audio__audio-author cv-base-audio--text-eill">{{ author }}</text>
11
+ </view>
12
+ <view class="cv-base-audio__audio-time">{{ audioTimeUpdate }}</view>
13
+ </view>
14
+ </view>
15
+ </template>
16
+
17
+ <script>
18
+ /**
19
+ * cv-base-audio
20
+ * @module cv-base-audio
21
+ * @Author lu-ch
22
+ * @Date 2022-07-14
23
+ * @Email webwork.s@qq.com
24
+ * @description 音频播放组件,使用了createInnerAudioContext
25
+ */
26
+ /**
27
+ * Props itemsProps
28
+ * @prop {Boolean} play - 是否播放,双向绑定,绑定时需使用.sync 如果为true 则播放,为false 则暂停
29
+ * ... 其他api同文档 (https://uniapp.dcloud.io/api/media/audio-context?id=createinneraudiocontext)
30
+ */
31
+ /**
32
+ * 将秒转换为 分:秒
33
+ * @param {Number} s - 秒数
34
+ */
35
+ function sToHs(s) {
36
+ //计算分钟
37
+ //算法:将秒数除以60,然后下舍入,既得到分钟数
38
+ let h;
39
+ h = Math.floor(s / 60);
40
+ //计算秒
41
+ //算法:取得秒%60的余数,既得到秒数
42
+ s = s % 60;
43
+ //将变量转换为字符串
44
+ h += '';
45
+ s += '';
46
+ //如果只有一位数,前面增加一个0
47
+ h = h.length === 1 ? '0' + h : h;
48
+ s = s.length === 1 ? '0' + s : s;
49
+ return h + ':' + s;
50
+ }
51
+ export default {
52
+ name: 'ComAudio',
53
+ props: {
54
+ // 是否播放或暂停
55
+ play: {
56
+ type: Boolean,
57
+ default: false
58
+ },
59
+ // 播放src
60
+ src: {
61
+ type: String
62
+ },
63
+ poster: {
64
+ type: String,
65
+ default: ''
66
+ },
67
+ name: {
68
+ type: String,
69
+ default: '未知音频'
70
+ },
71
+ author: {
72
+ type: String,
73
+ default: '未知作者'
74
+ },
75
+ autoplay: {
76
+ type: Boolean
77
+ // default: false
78
+ },
79
+ loop: {
80
+ type: Boolean
81
+ // default: false
82
+ },
83
+ obeyMuteSwitch: {
84
+ type: Boolean
85
+ // default: true
86
+ },
87
+ // 初始化回调
88
+ initAudio: {
89
+ type: Function
90
+ },
91
+ // 自定义组件标识
92
+ index: {
93
+ type: [String, Number]
94
+ }
95
+ },
96
+ data() {
97
+ return {
98
+ audioTimeUpdate: '00:00',
99
+ videoIsPlay: false
100
+ // innerAudioContext: ''
101
+ };
102
+ },
103
+ watch: {
104
+ play(n) {
105
+ // this.videoIsPlay = play
106
+ if (n) {
107
+ !this.videoIsPlay && this.audioPlay();
108
+ } else {
109
+ this.videoIsPlay && this.audioPause();
110
+ }
111
+ },
112
+ src() {
113
+ this.audioDestroy();
114
+ this.contextInit();
115
+ }
116
+ },
117
+ created() {
118
+ this.contextInit();
119
+ },
120
+ beforeDestroy() {
121
+ this.audioDestroy();
122
+ },
123
+ methods: {
124
+ audioPlay() {
125
+ this.innerAudioContext && this.innerAudioContext.play();
126
+ },
127
+ audioPause() {
128
+ this.innerAudioContext && this.innerAudioContext.pause();
129
+ },
130
+ audioOnPlay() {
131
+ this.videoIsPlay = true;
132
+ this.$emit('update:play', true);
133
+ },
134
+ audioOnPause() {
135
+ this.videoIsPlay = false;
136
+ this.$emit('update:play', false);
137
+ },
138
+ audioDestroy() {
139
+ this.innerAudioContext && this.innerAudioContext.destroy && this.innerAudioContext.destroy();
140
+ this.audioPropInit();
141
+ },
142
+ audioControls() {
143
+ if (this.videoIsPlay) {
144
+ this.audioPause();
145
+ } else {
146
+ this.audioPlay();
147
+ }
148
+ },
149
+ handleBtnClick() {
150
+ // this.videoIsPlay = !this.videoIsPlay
151
+ this.audioControls();
152
+ this.$emit('update:play', this.videoIsPlay);
153
+ },
154
+ contextInit() {
155
+ console.log('创建');
156
+ let that = this;
157
+ that.$emit('update:play', false);
158
+ if (!that.src) {
159
+ if (process.env.NODE_ENV !== 'production') {
160
+ console.warn(`[cv-base-audio warn]: 'src' 为空`);
161
+ }
162
+ return;
163
+ }
164
+ console.log(this.$props);
165
+ let innerAudioContext = uni.createInnerAudioContext();
166
+ innerAudioContext.autoplay = that.autoplay;
167
+ innerAudioContext.loop = that.loop;
168
+ innerAudioContext.obeyMuteSwitch = that.obeyMuteSwitch;
169
+ innerAudioContext.onPlay((...arg) => {
170
+ that.audioTimeUpdate = sToHs(Math.floor(innerAudioContext.currentTime));
171
+ that.audioOnPlay();
172
+ that.$emit('onPlay', ...arg);
173
+ });
174
+ innerAudioContext.onPause((...arg) => {
175
+ that.audioOnPause();
176
+ that.$emit('onPause', ...arg);
177
+ });
178
+ innerAudioContext.onEnded((...arg) => {
179
+ that.audioOnPause();
180
+ that.$emit('onEnded', ...arg);
181
+ });
182
+ innerAudioContext.onTimeUpdate((...arg) => {
183
+ that.audioTimeUpdate = sToHs(Math.floor(innerAudioContext.currentTime));
184
+ that.$emit('onPause', ...arg);
185
+ });
186
+ innerAudioContext.onError((...arg) => {
187
+ console.log(...arg);
188
+ that.$emit('onError', ...arg);
189
+ });
190
+ innerAudioContext.src = that.src;
191
+ if (that.initAudio) {
192
+ that.initAudio(innerAudioContext, { src: that.src, index: that.index });
193
+ }
194
+ this.innerAudioContext = innerAudioContext;
195
+ },
196
+ audioPropInit() {
197
+ this.audioTimeUpdate = '00:00';
198
+ this.videoIsPlay = false;
199
+ }
200
+ }
201
+ };
202
+ </script>
203
+ <style>
204
+ .cv-base-audio--text-eill {
205
+ /*超出省略号*/
206
+ overflow: hidden;
207
+ text-overflow: ellipsis;
208
+ white-space: nowrap;
209
+ }
210
+
211
+ .cv-base-audio__warp {
212
+ display: flex;
213
+ overflow: hidden;
214
+ height: 67px;
215
+ border-radius: 3px;
216
+ border: 1px solid #e0e0e0;
217
+ }
218
+
219
+ .cv-base-audio__cover {
220
+ position: relative;
221
+ flex-shrink: 0;
222
+ width: 65px;
223
+ height: 100%;
224
+ }
225
+ .cv-base-audio__cover.cv-base-audio--cover-bg {
226
+ background-color: #e6e6e6;
227
+ }
228
+ .cv-base-audio__cover .cv-base-audio__cover-img {
229
+ width: 100%;
230
+ height: 100%;
231
+ }
232
+ .cv-base-audio__cover .cv-base-audio__play-btn {
233
+ position: absolute;
234
+ left: 50%;
235
+ top: 50%;
236
+ width: 24px;
237
+ height: 24px;
238
+ transform: translateX(-50%) translateY(-50%);
239
+ border-radius: 50%;
240
+ background-size: 100% 100%;
241
+ background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAGymlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTA2LTA0VDE3OjU1OjA3KzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE5LTA2LTA1VDA5OjUwOjUwKzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0wNi0wNVQwOTo1MDo1MCswODowMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4OWI0YTlkMi02ZWIzLTUyNDQtYjM4OS03MzdmYTA1OTM1ZWEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDoyODIyOGJlOC0zZDgxLTlhNDMtOGJjMy02NDA2NTQzYWIwMzQiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0YjA1NDBlYy1mMjE1LWU4NDEtYjkwYy0xZjBiNGQ3OGJkODkiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjRiMDU0MGVjLWYyMTUtZTg0MS1iOTBjLTFmMGI0ZDc4YmQ4OSIgc3RFdnQ6d2hlbj0iMjAxOS0wNi0wNFQxNzo1NTowNyswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpiNzc4YjE2NC1mODFhLWU5NDktOThmMC00OGQ0MDZlNmU3ZjYiIHN0RXZ0OndoZW49IjIwMTktMDYtMDRUMTc6NTU6MDcrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ODliNGE5ZDItNmViMy01MjQ0LWIzODktNzM3ZmEwNTkzNWVhIiBzdEV2dDp3aGVuPSIyMDE5LTA2LTA1VDA5OjUwOjUwKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+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');
242
+ }
243
+ .cv-base-audio__cover .cv-base-audio__play-btn.cv-base-audio--btn-pause {
244
+ background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAGymlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTA2LTA0VDE3OjU0OjM1KzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE5LTA2LTA1VDA5OjUwOjI0KzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0wNi0wNVQwOTo1MDoyNCswODowMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyZGU0NjY1NS05N2I2LTBjNGMtYTQ4NS0wN2E1ZjY5ZjU1YjciIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDpiYTUxOWZkZi0xYWQwLTYwNDUtOGIyNS1hNTZlOGM0YzhkZmQiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpiZjRlOTFiYS1iYTBjLWVkNDMtOTc1Yi01YTcwODhmNzdiMWUiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmJmNGU5MWJhLWJhMGMtZWQ0My05NzViLTVhNzA4OGY3N2IxZSIgc3RFdnQ6d2hlbj0iMjAxOS0wNi0wNFQxNzo1NDozNSswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxY2U4ZTUwMi1iYzUwLThkNDktYTU0ZC04OWVjOGUzMDI5ZTIiIHN0RXZ0OndoZW49IjIwMTktMDYtMDRUMTc6NTQ6MzUrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MmRlNDY2NTUtOTdiNi0wYzRjLWE0ODUtMDdhNWY2OWY1NWI3IiBzdEV2dDp3aGVuPSIyMDE5LTA2LTA1VDA5OjUwOjI0KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Zo2JjAAACj1JREFUeJztnFlsXFcZgL97Z/NsdsZO7PGCYzsY23UapqWRnZYqQmyCB4QQUHYJigoVPEBbQDwUAQVBeWCtKqCAqFjKIhZRhFDLolBS7IBqy3KbNHaSacax49hx7LE9q2eGh+NpxnfOnbmz2mPne4l9/7P5zz3nnvOf//+VVCrFNmMGDgI9gB1wAR6gefO5CiwBq8AasAAsAlHgHDBd/SFfx7wNfdqB1wFvAg4A3cCrgKYi2loC/g1cBJ4EnirTGA2jVOkN3A/cCtyPUFZXBfpIIt7IvwE/AiaBWAX62UKlFTgIvB24G/GmVZMTwK+BnyGmfkWolAKPAJ8H3gI0VKKDAjgD/AH4NnCl3I2XW4FtwBeAjwCWQivHYjHC4TCJRIJkMkl6bKqqoigKFosFp9OJqqrFjG0N+ArwCLBeTAMyyqnAu4BvAJ1GKywtLbGwsEA4HCYej3Pt2jXW1tbQG5PZbKa+vp59+/ahqioulwuv14vT6SxknGPAQ4i3smTKocAm4FvAB/MVDIVCBINBpqamCIfDhEIhEolESZ3bbDZsNhtNTU309PTgcDiwWq1Gqj4KPACES+m/VAW+cXMgr8xV6OrVq8zMzOD3+9nY2Cilv7y4XC66u7vp7Oykrq4uX/ERxHJzutj+SlHgl4EHcxVYXl7m9OnTzM3N6U7LSuFwOGhvb6e/vz/fG3kN+CTwy2L6KVaBjwL36gljsRhTU1O8+OKLVVecFrvdzuDgIAcPHsxX9B7gsULbL0aBjwMf0hNevnyZiYkJVldXC223orS0tODz+XC5XLmKfRqx3TFMoQr8CfBhmSCVSjE5OcnZs2cLaa+qWK1Wjhw5ku9tvB/4ptE2C1Hg9xBrRRbRaJTR0VEWFhaMtrWtHDp0CJ/Pl6vIexCnmLwYVaDuByMYDDIyMrLjpmw+Ojo6GBoa0hPHgTcD/8zXjhEF3gX8SiYIBoOcPHmSUCiUr40didfr5fbbb08piqJIxBcBH+IrrUs+BR5E7Nw9WsHq6ionTpwgGo0aH/EOxOv1cscdd+iJ/wMcR7yRUnIdKm3Ab5EoLxaLMTIyUvPKA7FrGBsb0xMfQyxfuuRS4GeBozLBs88+SzAYNDTAWuD8+fOcO3dOT/wZYFhPqKfAHsQ5MYvnnnuOq1evFjTAWmBiYoJr16TLnQlhJJGip8AvAvXah4FAgAsXLhQzvh1PMplkdHSUeDwus27cCbxPVk+mwGEklpVIJML4+HhJg9zprK+vMz4+btIRPwxkHaplCvySrPbk5CSxWMWvGLadixcvsri4KNuadCDOy1vQKnAIcWO2hYWFBV566aXyjLAGGB8fl+0LQZyVHZkPtAq8D4kp/oUXXijPyGqElZUV/H6/TNQDvCvzQea9cDfwbm2NxcVFFhcXSxqQyWSirq6uZOuzERRFQVEUIpEIyWSy6Hampqbo7OxMqKqqXRM/CjzB5pVppgLfqm0klUrl2h8ZprW1FZ/PVzUFqqpasnEjGAwyNzdnam9v14pei7jbnoStCvyYtmQ0GmVmZqboQaSxWq3YbLaS2ykEs7l0p4sLFy7Q3t6eArRr4l1sKjC9Bg4gtLqFS5culTwIoKSptJ19zs/PEw6HZZc470//kFbgexFn3y3oLKR7Cr/fL7vf3g/0w3UF9mhLrK+vs75etvvnmkVnFrqBd4BQoAs4rC0xOztLPK5rxdkzhMNhotGo7AQxCEKBrwFerZXeePsEsViMmZkZ2b3oQcCkAo1aSTKZZHl5udJjqxnW1qTOXTcDXSqwTysJhUKsrKxUeFi1g87+tR7oUYFerSQSiVTcBaOWWFlZIZVKybRYryL2gFuoxomhlggGg4TDYdn9hVtF+CnfIAcbGxtsbGzITH9OFbEp3MJ2+7PsRBKJhOxs6FSBFu3T3XDbVm4SiYTsDWxQkZipb6yB2aRSKZkCrSqSm3cDjol7DpPJJLNOLKvArKRw5UdUYyiKIlPgWjqM6gY5UFUVs9ksW9dCKpB1W1RkGMGuxel0YrfbZdMyqAJZN0ZWqxW5w9LexOPxYJabuEMqMKd96nA48rnC7il0nNQjQEDd/GELFouFxsYsI82eRWdXcgY4owJTQJarlcPhyKqxFzGbzbS1tclEZ4GIiggy+ZdWun///hvrICJMwu12y0SX4PqdSNaXuLm5udAYtF1Jc3Oz7HEcEeD9sgKfQgQsb6G1tbViA6sVurulYc4LbM7atAKfBOYNVt4zuN1uXC6X7ATyXyAB1xWYAv6oLeV0OjlwoHRzYTm8BAqlHMfRrq4uTCaT7FTxSPqHzL/sMTTxb6qq0tvbW3IAzezsLJFIpGp2RkVRWFoq7YRqs9n0IprOA6PpXzIVeAb4H3BbZunW1lYaGhpKumQKhUI1F0vS0dGh58/zG0QKFmCrf2CYjFczk/7+/rIObqdjNpv1/uYV4MeZD7Tz+wnEBnELHR0dZVkLa4XDhw/rnT5+hybRj1aBMUT4fha33HLLnrDSuN1uurq69MQPaR/INPJ9JBYat9u966eyoigcPXpU7wv+HcCvfaj3Sn1K9nBgYICWlqw7qF3D4OAgHk9WZBuIte9hmUBPgU8Df5IJhoaGduURr62tjb6+Pj3x55CY/SB3rNx9wLL2ocViYWhoaFfdmxw4cIBjx47piUeBH+gJcynwHDpT2ePxMDysG39XU7jd7lyB11eAd+aqn++z+jgi1D8Lr9ebq+OaoKGhgePHj+dygP84kNPL3mjI/9PAG2SCubk5Tp06VXPeXI2NjQwPD2O32/WKfB2RQC0nRhXYCPwdEQKfxfLyMqOjo3qOiDuO9OzJYeT4IZKwDxmFZO3oAZ5BZGjLIhaLMTY2Vpa4kkqhKAr9/f3cdNNNuYr9AviA4TYLtJDchrAdevUKTE9PMzk5ueP8a9xuNz6fT8/CnObPCO97w971xWQu6gV+j8SzP00wGOT5559ndjbLa6TqKIpCX18fvb29+XJo/RQRB1fQ/3yxubM6Efn3bs1VKBAIMD09XbJtrli8Xi8DAwNGrmgfBT5RTB+lZG9r2OxYGgqfSSAQwO/3c+VK2TNwSunq6qKzs9OIBSmKSK7x3WL7KkcCxgeAryLxM8wklUqxurpKIBB42UJdrgh4u91OXV0dhw4doqmpyahXxTOIVFYTpfRdrhSgdyJMPceNVlhdXWV+fp719XWi0ShLS0uGgntUVaW+vh6Px4PFYqG+vp7W1lajWStBrHEPAl8zWiEX5U5Cey8i40fOT52MaDRKKBQiHo+/fHeS/jd9wa+qKlarFafTWexF1T8Q2dnGi6ksoxJpkD2ITL5vQxLEuE2cAn6OzrG0FCqZiLsJsSG9B8i5c60gf0Ek4pYmTysH1UgFvw/xJt4NvB6Rm8HwglUEU8BfEcexyQr2A1Qvl34mdyJ2++2IaV5qLoAriC/qZeAk4mKsamyHAjO5GXgFIma5HehDJLjZhzBgtCCOVfMIX+5lxMX2FEJxYYR3mb+qo87g/97eR8Rd9X+zAAAAAElFTkSuQmCC');
245
+ }
246
+
247
+ .cv-base-audio__audio-con {
248
+ position: relative;
249
+ flex: 1;
250
+ display: flex;
251
+ width: 0;
252
+ padding: 0 15px;
253
+ align-items: center;
254
+ background-color: #fcfcfc;
255
+ }
256
+ .cv-base-audio__audio-con .cv-base-audio__audio-info {
257
+ width: 100%;
258
+ }
259
+ .cv-base-audio__audio-con .cv-base-audio__audio-title {
260
+ display: block;
261
+ padding-bottom: 7px;
262
+ padding-right: 25px;
263
+ font-size: 14px;
264
+ color: #353535;
265
+ }
266
+ .cv-base-audio__audio-con .cv-base-audio__audio-author {
267
+ display: block;
268
+ font-size: 12px;
269
+ color: #888888;
270
+ }
271
+ .cv-base-audio__audio-con .cv-base-audio__audio-time {
272
+ position: absolute;
273
+ right: 15px;
274
+ top: 6px;
275
+ font-size: 13px;
276
+ color: #9d9d9d;
277
+ }
278
+ </style>
@@ -1,7 +1,5 @@
1
1
  <template>
2
- <!-- '<audio/>' 组件不再维护,建议使用能力更强的 'uni.createInnerAudioContext' 接口 有时间再改-->
3
- <!--增加audio标签支持-->
4
- <audio
2
+ <cv-base-audio
5
3
  :id="node.attr.id"
6
4
  :class="node.classStr"
7
5
  :style="node.styleStr"
@@ -11,7 +9,7 @@
11
9
  :name="node.attr.name"
12
10
  :author="node.attr.author"
13
11
  controls
14
- ></audio>
12
+ />
15
13
  </template>
16
14
 
17
15
  <script>
@@ -4,7 +4,6 @@
4
4
  <textarea
5
5
  class="cv-geo-local-content"
6
6
  v-model="localVal"
7
- :value="localVal"
8
7
  :maxlength="maxlength"
9
8
  :placeholder="placeholder"
10
9
  placeholder-class="cv-geo-local-placeholder"
@@ -0,0 +1,238 @@
1
+ <template>
2
+ <view>
3
+ <view class="cv-topbar-wrap">
4
+ <text class="cv-topbar-bg"></text>
5
+ <view class="cv-topbar-main">
6
+ <view class="cv-topbar-lt" @tap="bindLeftFunc">
7
+ <text v-if="leftText">{{ leftText }}</text>
8
+ <cv-icons v-if="leftIcon" :type="leftIcon" size="18" color="#fff" />
9
+ </view>
10
+ <view class="cv-topbar-center">
11
+ <view class="cv-topbar-title">{{ centerText }}</view>
12
+ </view>
13
+ <view class="cv-topbar-rt" @tap="bindRightFunc">
14
+ <cv-icons v-if="rightIcon" :type="rightIcon" size="18" color="#fff" />
15
+ <text v-if="rightText">{{ rightText }}</text>
16
+ </view>
17
+ </view>
18
+ </view>
19
+ <view class="cv-topbar-fixhold">
20
+ <view></view>
21
+ <view></view>
22
+ </view>
23
+ </view>
24
+ </template>
25
+ <script>
26
+ export default {
27
+ // emits: {
28
+ // leftFunc: (value) => {
29
+ // if (typeof value === 'string') {
30
+ // return true;
31
+ // } else {
32
+ // return false;
33
+ // }
34
+ // },
35
+ // rightFunc: (value) => {
36
+ // console.log('value---', value);
37
+ // if (typeof value === 'string') {
38
+ // return true;
39
+ // } else {
40
+ // return false;
41
+ // }
42
+ // }
43
+ // },
44
+ emits: ['leftFunc', 'rightFunc'],
45
+ props: {
46
+ leftText: '',
47
+ leftIcon: '',
48
+ centerText: '',
49
+ rightText: '',
50
+ rightIcon: ''
51
+ // rightFunc: {
52
+ // type: Function,
53
+ // default: () => {}
54
+ // }
55
+ },
56
+ data() {
57
+ return {};
58
+ },
59
+ created() {
60
+ console.log('----onRightFunc----', this.$attrs.onRightFunc);
61
+ },
62
+ methods: {
63
+ bindLeftFunc() {
64
+ const result = this.$emit('leftFunc');
65
+ // if (!result) {
66
+ // uni.navigateBack({
67
+ // // 返回
68
+ // delta: 1
69
+ // });
70
+ // }
71
+ },
72
+ bindRightFunc() {
73
+ try {
74
+ this.$emit('rightFunc');
75
+ } catch (e) {
76
+ console.log('--222--');
77
+ }
78
+ }
79
+ }
80
+ };
81
+ </script>
82
+ <style>
83
+ .cv-topbar-wrap {
84
+ width: 100%;
85
+ top: -1px;
86
+ right: 0px;
87
+ display: flex;
88
+ flex-direction: column;
89
+ position: fixed;
90
+ height: auto;
91
+ z-index: 20;
92
+ /* #ifdef H5 */
93
+ margin-top: 44px;
94
+ /* #endif */
95
+ margin-top: 0 !important;
96
+ }
97
+ .cv-topbar-bg {
98
+ display: block;
99
+ width: 100%;
100
+ height: var(--status-bar-height);
101
+ background: #409eff;
102
+ }
103
+ .cv-topbar-main {
104
+ box-sizing: border-box;
105
+ width: 100%;
106
+ height: 44px;
107
+ padding-right: 16rpx;
108
+ display: flex;
109
+ align-items: center;
110
+ background: #409eff;
111
+ }
112
+ .cv-topbar-main > image {
113
+ width: 25px;
114
+ height: 25px;
115
+ margin-left: 16rpx;
116
+ }
117
+ .cv-topbar-main > text {
118
+ width: 35px;
119
+ height: 35px;
120
+ margin-left: 16rpx;
121
+ color: #f6f6f6;
122
+ font-size: 56rpx;
123
+ display: flex;
124
+ align-items: center;
125
+ justify-content: center;
126
+ }
127
+ .cv-topbar-main > view.item {
128
+ margin: 0;
129
+ margin-left: 16rpx;
130
+ height: 35px;
131
+ width: 35px;
132
+ display: flex;
133
+ flex-direction: column;
134
+ align-items: center;
135
+ justify-content: center;
136
+ color: #f1f1f1;
137
+ }
138
+ .cv-topbar-main > view.item > text {
139
+ display: block;
140
+ font-size: 12px;
141
+ line-height: 100%;
142
+ color: #ececec;
143
+ }
144
+ .cv-topbar-main > view.search-input {
145
+ height: 30px;
146
+ flex: 1;
147
+ background-color: rgba(255, 255, 255, 0.5);
148
+ border-radius: 12rpx;
149
+ font-size: 28rpx;
150
+ margin: 0;
151
+ margin-left: 16rpx;
152
+ padding-right: 16rpx;
153
+ padding-left: 16rpx;
154
+ display: flex;
155
+ flex-direction: row;
156
+ align-items: center;
157
+ }
158
+ .cv-topbar-main > view.search-input > input {
159
+ flex: 1;
160
+ border: none;
161
+ min-height: auto;
162
+ display: inline-block;
163
+ color: #fff;
164
+ font-size: 15px;
165
+ }
166
+ .cv-topbar-main > view.search-input > image {
167
+ width: 16px;
168
+ height: 16px;
169
+ margin-right: 5px;
170
+ }
171
+ .cv-topbar-main > view.item > image {
172
+ width: 25px;
173
+ height: 25px;
174
+ }
175
+
176
+ /* 占位 */
177
+ .cv-topbar-fixhold {
178
+ width: 100%;
179
+ display: flex;
180
+ flex-direction: column;
181
+ }
182
+ .cv-topbar-fixhold > view:nth-of-type(1) {
183
+ width: 100%;
184
+ height: var(--status-bar-height);
185
+ }
186
+ .cv-topbar-fixhold > view:nth-of-type(2) {
187
+ width: 100%;
188
+ height: 44px;
189
+ }
190
+
191
+ .cv-topbar-center {
192
+ color: #fff;
193
+ font-weight: 700;
194
+ font-size: 16px;
195
+ text-align: center;
196
+ height: 20px;
197
+ }
198
+
199
+ .cv-topbar-title {
200
+ position: absolute;
201
+ left: 70px;
202
+ right: 70px;
203
+ min-width: 0;
204
+ user-select: auto;
205
+ }
206
+ .cv-topbar-lt {
207
+ position: absolute;
208
+ left: 10px;
209
+ flex-direction: row-reverse;
210
+ font-size: 28rpx;
211
+ color: #fff;
212
+ font-weight: normal;
213
+ display: flex;
214
+ }
215
+
216
+ .cv-topbar-lt text {
217
+ flex: 1;
218
+ font-size: 15px;
219
+ text-align: center;
220
+ height: 20px;
221
+ }
222
+ .cv-topbar-rt {
223
+ position: absolute;
224
+ right: 10px;
225
+ flex-direction: row-reverse;
226
+ font-size: 28rpx;
227
+ color: #fff;
228
+ font-weight: normal;
229
+ display: flex;
230
+ }
231
+
232
+ .cv-topbar-rt text {
233
+ flex: 1;
234
+ font-size: 15px;
235
+ text-align: center;
236
+ height: 20px;
237
+ }
238
+ </style>