@tarojs/taro-h5 3.7.0-alpha.7 → 3.7.0-alpha.8
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.
- package/dist/api/media/audio/InnerAudioContext.js +1 -1
- package/dist/api/media/audio/InnerAudioContext.js.map +1 -1
- package/dist/api/media/background-audio/BackgroundAudioManager.js +1 -0
- package/dist/api/media/background-audio/BackgroundAudioManager.js.map +1 -1
- package/dist/api/media/image/previewImage.js +8 -3
- package/dist/api/media/image/previewImage.js.map +1 -1
- package/dist/api/network/request/index.js +30 -29
- package/dist/api/network/request/index.js.map +1 -1
- package/dist/api/network/websocket/index.js +2 -2
- package/dist/api/network/websocket/index.js.map +1 -1
- package/dist/index.cjs.js +41 -35
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +42 -36
- package/dist/index.esm.js.map +1 -1
- package/package.json +7 -6
|
@@ -24,7 +24,6 @@ class InnerAudioContext {
|
|
|
24
24
|
this.destroy = () => {
|
|
25
25
|
this.stop();
|
|
26
26
|
if (this.Instance) {
|
|
27
|
-
document.body.removeChild(this.Instance);
|
|
28
27
|
this.Instance = undefined;
|
|
29
28
|
}
|
|
30
29
|
};
|
|
@@ -51,6 +50,7 @@ class InnerAudioContext {
|
|
|
51
50
|
this.Instance = new Audio();
|
|
52
51
|
this.errorStack = new CallbackManager();
|
|
53
52
|
this.stopStack = new CallbackManager();
|
|
53
|
+
this.Instance.onerror = this.errorStack.trigger;
|
|
54
54
|
Taro.eventCenter.on('__taroRouterChange', () => { this.stop(); });
|
|
55
55
|
this.onPlay(() => {
|
|
56
56
|
if (this.__isFirstPlay) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InnerAudioContext.js","sources":["../../../../src/api/media/audio/InnerAudioContext.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { permanentlyNotSupport } from '../../../utils'\nimport { CallbackManager } from '../../../utils/handler'\n\nexport class InnerAudioContext implements Taro.InnerAudioContext {\n Instance?: HTMLAudioElement\n errorStack: CallbackManager\n stopStack: CallbackManager\n __startTime = 0\n __isFirstPlay = true\n\n constructor () {\n this.Instance = new Audio()\n this.errorStack = new CallbackManager()\n this.stopStack = new CallbackManager()\n\n Taro.eventCenter.on('__taroRouterChange', () => { this.stop() })\n this.onPlay(() => {\n if (this.__isFirstPlay) {\n this.__isFirstPlay = false\n this.seek(this.startTime)\n }\n })\n }\n\n set autoplay (e) { this.setProperty('autoplay', e) }\n get autoplay () { return this.Instance?.autoplay || false }\n get buffered () { return this.Instance?.buffered.length || 0 }\n get currentTime () { return this.Instance?.currentTime || 0 }\n set currentTime (e) { this.seek(e) }\n get duration () { return this.Instance?.duration || 0 }\n set loop (e) { this.setProperty('loop', e) }\n get loop () { return this.Instance?.loop || false }\n get paused () { return this.Instance?.paused ?? true }\n set src (e) { this.setProperty('src', e) }\n get src () { return this.Instance?.src || '' }\n set volume (e) { this.setProperty('volume', e) }\n get volume () { return this.Instance?.volume || 0 }\n set playbackRate (e) { this.setProperty('playbackRate', e) }\n get playbackRate () { return this.Instance?.playbackRate || 0 }\n set obeyMuteSwitch (_e) { permanentlyNotSupport('InnerAudioContext.obeyMuteSwitch')() }\n get obeyMuteSwitch () { return true }\n set startTime (e) { this.__startTime = e }\n get startTime () { return this.__startTime || 0 }\n set referrerPolicy (e) { this.Instance?.setAttribute('referrerpolicy', e) }\n get referrerPolicy () { return this.Instance?.getAttribute('referrerpolicy') || 'origin' }\n\n private setProperty (key: string, value: unknown) {\n if (this.Instance) {\n this.Instance[key] = value\n }\n }\n\n play = () => this.Instance?.play()\n\n pause = () => this.Instance?.pause()\n\n stop = () => {\n this.pause()\n this.seek(0)\n this.stopStack.trigger()\n }\n\n seek = (position: number) => {\n if (this.Instance) {\n this.Instance.currentTime = position\n }\n }\n\n /**\n * @TODO destroy得并不干净\n */\n destroy = () => {\n this.stop()\n if (this.Instance) {\n document.body.removeChild(this.Instance)\n this.Instance = undefined\n }\n }\n\n onCanplay = (callback = () => {}) => this.Instance?.addEventListener('canplay', callback)\n onPlay = (callback = () => {}) => this.Instance?.addEventListener('play', callback)\n onPause = (callback = () => {}) => this.Instance?.addEventListener('pause', callback)\n onStop = (callback = () => {}) => this.stopStack.add(callback)\n onEnded = (callback = () => {}) => this.Instance?.addEventListener('ended', callback)\n onTimeUpdate = (callback = () => {}) => this.Instance?.addEventListener('timeupdate', callback)\n onError = (callback?: ((res: Taro.InnerAudioContext.onErrorDetail) => void)) => this.errorStack.add(callback)\n onWaiting = (callback = () => {}) => this.Instance?.addEventListener('waiting', callback)\n onSeeking = (callback = () => {}) => this.Instance?.addEventListener('seeking', callback)\n onSeeked = (callback = () => {}) => this.Instance?.addEventListener('seeked', callback)\n offCanplay = (callback = () => {}) => this.Instance?.removeEventListener('canplay', callback)\n offPlay = (callback = () => {}) => this.Instance?.removeEventListener('play', callback)\n offPause = (callback = () => {}) => this.Instance?.removeEventListener('pause', callback)\n offStop = (callback = () => {}) => this.stopStack.remove(callback)\n offEnded = (callback = () => {}) => this.Instance?.removeEventListener('ended', callback)\n offTimeUpdate = (callback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback)\n offError = (callback = () => {}) => this.errorStack.remove(callback)\n offWaiting = (callback = () => {}) => this.Instance?.removeEventListener('waiting', callback)\n offSeeking = (callback = () => {}) => this.Instance?.removeEventListener('seeking', callback)\n offSeeked = (callback = () => {}) => this.Instance?.removeEventListener('seeked', callback)\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InnerAudioContext.js","sources":["../../../../src/api/media/audio/InnerAudioContext.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { permanentlyNotSupport } from '../../../utils'\nimport { CallbackManager } from '../../../utils/handler'\n\nexport class InnerAudioContext implements Taro.InnerAudioContext {\n Instance?: HTMLAudioElement\n errorStack: CallbackManager\n stopStack: CallbackManager\n __startTime = 0\n __isFirstPlay = true\n\n constructor () {\n this.Instance = new Audio()\n this.errorStack = new CallbackManager()\n this.stopStack = new CallbackManager()\n this.Instance.onerror = this.errorStack.trigger\n\n Taro.eventCenter.on('__taroRouterChange', () => { this.stop() })\n this.onPlay(() => {\n if (this.__isFirstPlay) {\n this.__isFirstPlay = false\n this.seek(this.startTime)\n }\n })\n }\n\n set autoplay (e) { this.setProperty('autoplay', e) }\n get autoplay () { return this.Instance?.autoplay || false }\n get buffered () { return this.Instance?.buffered.length || 0 }\n get currentTime () { return this.Instance?.currentTime || 0 }\n set currentTime (e) { this.seek(e) }\n get duration () { return this.Instance?.duration || 0 }\n set loop (e) { this.setProperty('loop', e) }\n get loop () { return this.Instance?.loop || false }\n get paused () { return this.Instance?.paused ?? true }\n set src (e) { this.setProperty('src', e) }\n get src () { return this.Instance?.src || '' }\n set volume (e) { this.setProperty('volume', e) }\n get volume () { return this.Instance?.volume || 0 }\n set playbackRate (e) { this.setProperty('playbackRate', e) }\n get playbackRate () { return this.Instance?.playbackRate || 0 }\n set obeyMuteSwitch (_e) { permanentlyNotSupport('InnerAudioContext.obeyMuteSwitch')() }\n get obeyMuteSwitch () { return true }\n set startTime (e) { this.__startTime = e }\n get startTime () { return this.__startTime || 0 }\n set referrerPolicy (e) { this.Instance?.setAttribute('referrerpolicy', e) }\n get referrerPolicy () { return this.Instance?.getAttribute('referrerpolicy') || 'origin' }\n\n private setProperty (key: string, value: unknown) {\n if (this.Instance) {\n this.Instance[key] = value\n }\n }\n\n play = () => this.Instance?.play()\n\n pause = () => this.Instance?.pause()\n\n stop = () => {\n this.pause()\n this.seek(0)\n this.stopStack.trigger()\n }\n\n seek = (position: number) => {\n if (this.Instance) {\n this.Instance.currentTime = position\n }\n }\n\n /**\n * @TODO destroy得并不干净\n */\n destroy = () => {\n this.stop()\n if (this.Instance) {\n this.Instance = undefined\n }\n }\n\n onCanplay = (callback = () => {}) => this.Instance?.addEventListener('canplay', callback)\n onPlay = (callback = () => {}) => this.Instance?.addEventListener('play', callback)\n onPause = (callback = () => {}) => this.Instance?.addEventListener('pause', callback)\n onStop = (callback = () => {}) => this.stopStack.add(callback)\n onEnded = (callback = () => {}) => this.Instance?.addEventListener('ended', callback)\n onTimeUpdate = (callback = () => {}) => this.Instance?.addEventListener('timeupdate', callback)\n onError = (callback?: ((res: Taro.InnerAudioContext.onErrorDetail) => void)) => this.errorStack.add(callback)\n onWaiting = (callback = () => {}) => this.Instance?.addEventListener('waiting', callback)\n onSeeking = (callback = () => {}) => this.Instance?.addEventListener('seeking', callback)\n onSeeked = (callback = () => {}) => this.Instance?.addEventListener('seeked', callback)\n offCanplay = (callback = () => {}) => this.Instance?.removeEventListener('canplay', callback)\n offPlay = (callback = () => {}) => this.Instance?.removeEventListener('play', callback)\n offPause = (callback = () => {}) => this.Instance?.removeEventListener('pause', callback)\n offStop = (callback = () => {}) => this.stopStack.remove(callback)\n offEnded = (callback = () => {}) => this.Instance?.removeEventListener('ended', callback)\n offTimeUpdate = (callback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback)\n offError = (callback = () => {}) => this.errorStack.remove(callback)\n offWaiting = (callback = () => {}) => this.Instance?.removeEventListener('waiting', callback)\n offSeeking = (callback = () => {}) => this.Instance?.removeEventListener('seeking', callback)\n offSeeked = (callback = () => {}) => this.Instance?.removeEventListener('seeked', callback)\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -43,6 +43,7 @@ class BackgroundAudioManager {
|
|
|
43
43
|
this.Instance = new Audio();
|
|
44
44
|
this.errorStack = new CallbackManager();
|
|
45
45
|
this.stopStack = new CallbackManager();
|
|
46
|
+
this.Instance.onerror = this.errorStack.trigger;
|
|
46
47
|
this.Instance.autoplay = true;
|
|
47
48
|
this.onPlay(() => {
|
|
48
49
|
if (this.currentTime !== this.startTime) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackgroundAudioManager.js","sources":["../../../../src/api/media/background-audio/BackgroundAudioManager.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { permanentlyNotSupport } from '../../../utils'\nimport { CallbackManager } from '../../../utils/handler'\n\nexport class BackgroundAudioManager implements Taro.BackgroundAudioManager {\n Instance?: HTMLAudioElement\n errorStack: CallbackManager\n stopStack: CallbackManager\n __startTime = 0\n\n constructor () {\n this.Instance = new Audio()\n this.errorStack = new CallbackManager()\n this.stopStack = new CallbackManager()\n this.Instance.autoplay = true\n this.onPlay(() => {\n if (this.currentTime !== this.startTime) {\n this.seek(this.startTime)\n }\n })\n }\n\n set src (e) { this.setProperty('src', e) }\n get src () { return this.Instance?.src || '' }\n set startTime (e) { this.__startTime = e }\n get startTime () { return this.__startTime || 0 }\n set title (e) { this.dataset('title', e) }\n get title () { return this.Instance?.dataset.title || '' }\n set epname (e) { this.dataset('epname', e) }\n get epname () { return this.Instance?.dataset.epname || '' }\n set singer (e) { this.dataset('singer', e) }\n get singer () { return this.Instance?.dataset.singer || '' }\n set coverImgUrl (e) { this.dataset('coverImgUrl', e) }\n get coverImgUrl () { return this.Instance?.dataset.coverImgUrl || '' }\n set webUrl (e) { this.dataset('webUrl', e) }\n get webUrl () { return this.Instance?.dataset.webUrl || '' }\n set protocol (e) { this.dataset('protocol', e) }\n get protocol () { return this.Instance?.dataset.protocol || '' }\n set playbackRate (e) { this.setProperty('playbackRate', e) }\n get playbackRate () { return this.Instance?.playbackRate || 0 }\n get duration () { return this.Instance?.duration || 0 }\n get currentTime () { return this.Instance?.currentTime || 0 }\n get paused () { return this.Instance?.paused || false }\n get buffered () { return this.Instance?.buffered.length || 0 }\n set referrerPolicy (e) { this.Instance?.setAttribute('referrerpolicy', e) }\n get referrerPolicy () { return this.Instance?.getAttribute('referrerpolicy') || 'origin' }\n\n private setProperty (key: string, value: unknown) {\n if (this.Instance) {\n this.Instance[key] = value\n }\n }\n\n private dataset (key: string, value: string) {\n if (this.Instance) {\n this.Instance.dataset[key] = value\n }\n }\n\n play = () => this.Instance?.play()\n\n pause = () => this.Instance?.pause()\n\n seek = (position: number) => {\n if (this.Instance) {\n this.Instance.currentTime = position\n }\n }\n\n stop = () => {\n this.pause()\n this.seek(0)\n this.stopStack.trigger()\n }\n\n onCanplay = (callback = () => {}) => this.Instance?.addEventListener('canplay', callback)\n onWaiting = (callback = () => {}) => this.Instance?.addEventListener('waiting', callback)\n onError = (callback?: ((res: Taro.InnerAudioContext.onErrorDetail) => void)) => this.errorStack.add(callback)\n onPlay = (callback = () => {}) => this.Instance?.addEventListener('play', callback)\n onPause = (callback = () => {}) => this.Instance?.addEventListener('pause', callback)\n onSeeking = (callback = () => {}) => this.Instance?.addEventListener('seeking', callback)\n onSeeked = (callback = () => {}) => this.Instance?.addEventListener('seeked', callback)\n\n onEnded = (callback = () => {}) => this.Instance?.addEventListener('ended', callback)\n onStop = (callback = () => {}) => this.stopStack.add(callback)\n onTimeUpdate = (callback = () => {}) => this.Instance?.addEventListener('timeupdate', callback)\n onPrev = permanentlyNotSupport('BackgroundAudioManager.onPrev')\n onNext = permanentlyNotSupport('BackgroundAudioManager.onNext')\n\n offCanplay = (callback = () => {}) => this.Instance?.removeEventListener('canplay', callback)\n offWaiting = (callback = () => {}) => this.Instance?.removeEventListener('waiting', callback)\n offError = (callback = () => {}) => this.errorStack.remove(callback)\n offPlay = (callback = () => {}) => this.Instance?.removeEventListener('play', callback)\n offPause = (callback = () => {}) => this.Instance?.removeEventListener('pause', callback)\n offSeeking = (callback = () => {}) => this.Instance?.removeEventListener('seeking', callback)\n offSeeked = (callback = () => {}) => this.Instance?.removeEventListener('seeked', callback)\n\n offEnded = (callback = () => {}) => this.Instance?.removeEventListener('ended', callback)\n offStop = (callback = () => {}) => this.stopStack.remove(callback)\n offTimeUpdate = (callback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback)\n offPrev = permanentlyNotSupport('BackgroundAudioManager.offPrev')\n offNext = permanentlyNotSupport('BackgroundAudioManager.offNext')\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BackgroundAudioManager.js","sources":["../../../../src/api/media/background-audio/BackgroundAudioManager.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { permanentlyNotSupport } from '../../../utils'\nimport { CallbackManager } from '../../../utils/handler'\n\nexport class BackgroundAudioManager implements Taro.BackgroundAudioManager {\n Instance?: HTMLAudioElement\n errorStack: CallbackManager\n stopStack: CallbackManager\n __startTime = 0\n\n constructor () {\n this.Instance = new Audio()\n this.errorStack = new CallbackManager()\n this.stopStack = new CallbackManager()\n this.Instance.onerror = this.errorStack.trigger\n this.Instance.autoplay = true\n this.onPlay(() => {\n if (this.currentTime !== this.startTime) {\n this.seek(this.startTime)\n }\n })\n }\n\n set src (e) { this.setProperty('src', e) }\n get src () { return this.Instance?.src || '' }\n set startTime (e) { this.__startTime = e }\n get startTime () { return this.__startTime || 0 }\n set title (e) { this.dataset('title', e) }\n get title () { return this.Instance?.dataset.title || '' }\n set epname (e) { this.dataset('epname', e) }\n get epname () { return this.Instance?.dataset.epname || '' }\n set singer (e) { this.dataset('singer', e) }\n get singer () { return this.Instance?.dataset.singer || '' }\n set coverImgUrl (e) { this.dataset('coverImgUrl', e) }\n get coverImgUrl () { return this.Instance?.dataset.coverImgUrl || '' }\n set webUrl (e) { this.dataset('webUrl', e) }\n get webUrl () { return this.Instance?.dataset.webUrl || '' }\n set protocol (e) { this.dataset('protocol', e) }\n get protocol () { return this.Instance?.dataset.protocol || '' }\n set playbackRate (e) { this.setProperty('playbackRate', e) }\n get playbackRate () { return this.Instance?.playbackRate || 0 }\n get duration () { return this.Instance?.duration || 0 }\n get currentTime () { return this.Instance?.currentTime || 0 }\n get paused () { return this.Instance?.paused || false }\n get buffered () { return this.Instance?.buffered.length || 0 }\n set referrerPolicy (e) { this.Instance?.setAttribute('referrerpolicy', e) }\n get referrerPolicy () { return this.Instance?.getAttribute('referrerpolicy') || 'origin' }\n\n private setProperty (key: string, value: unknown) {\n if (this.Instance) {\n this.Instance[key] = value\n }\n }\n\n private dataset (key: string, value: string) {\n if (this.Instance) {\n this.Instance.dataset[key] = value\n }\n }\n\n play = () => this.Instance?.play()\n\n pause = () => this.Instance?.pause()\n\n seek = (position: number) => {\n if (this.Instance) {\n this.Instance.currentTime = position\n }\n }\n\n stop = () => {\n this.pause()\n this.seek(0)\n this.stopStack.trigger()\n }\n\n onCanplay = (callback = () => {}) => this.Instance?.addEventListener('canplay', callback)\n onWaiting = (callback = () => {}) => this.Instance?.addEventListener('waiting', callback)\n onError = (callback?: ((res: Taro.InnerAudioContext.onErrorDetail) => void)) => this.errorStack.add(callback)\n onPlay = (callback = () => {}) => this.Instance?.addEventListener('play', callback)\n onPause = (callback = () => {}) => this.Instance?.addEventListener('pause', callback)\n onSeeking = (callback = () => {}) => this.Instance?.addEventListener('seeking', callback)\n onSeeked = (callback = () => {}) => this.Instance?.addEventListener('seeked', callback)\n\n onEnded = (callback = () => {}) => this.Instance?.addEventListener('ended', callback)\n onStop = (callback = () => {}) => this.stopStack.add(callback)\n onTimeUpdate = (callback = () => {}) => this.Instance?.addEventListener('timeupdate', callback)\n onPrev = permanentlyNotSupport('BackgroundAudioManager.onPrev')\n onNext = permanentlyNotSupport('BackgroundAudioManager.onNext')\n\n offCanplay = (callback = () => {}) => this.Instance?.removeEventListener('canplay', callback)\n offWaiting = (callback = () => {}) => this.Instance?.removeEventListener('waiting', callback)\n offError = (callback = () => {}) => this.errorStack.remove(callback)\n offPlay = (callback = () => {}) => this.Instance?.removeEventListener('play', callback)\n offPause = (callback = () => {}) => this.Instance?.removeEventListener('pause', callback)\n offSeeking = (callback = () => {}) => this.Instance?.removeEventListener('seeking', callback)\n offSeeked = (callback = () => {}) => this.Instance?.removeEventListener('seeked', callback)\n\n offEnded = (callback = () => {}) => this.Instance?.removeEventListener('ended', callback)\n offStop = (callback = () => {}) => this.stopStack.remove(callback)\n offTimeUpdate = (callback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback)\n offPrev = permanentlyNotSupport('BackgroundAudioManager.offPrev')\n offNext = permanentlyNotSupport('BackgroundAudioManager.offNext')\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { __awaiter } from '../../../node_modules/.pnpm/registry.npmjs.org_tslib@2.5.0/node_modules/tslib/tslib.es6.js';
|
|
2
2
|
import { defineCustomElementTaroSwiperCore, defineCustomElementTaroSwiperItemCore } from '@tarojs/components/dist/components';
|
|
3
|
+
import { eventCenter } from '@tarojs/runtime';
|
|
3
4
|
import { isFunction } from '@tarojs/shared';
|
|
4
5
|
import { shouldBeObject } from '../../../utils/index.js';
|
|
5
6
|
import { MethodHandler } from '../../../utils/handler.js';
|
|
@@ -45,12 +46,16 @@ const previewImage = (options) => __awaiter(void 0, void 0, void 0, function* ()
|
|
|
45
46
|
const { urls = [], current = '', success, fail, complete } = options;
|
|
46
47
|
const handle = new MethodHandler({ name: 'previewImage', success, fail, complete });
|
|
47
48
|
const container = document.createElement('div');
|
|
49
|
+
const removeHandler = () => {
|
|
50
|
+
eventCenter.off('__taroRouterChange', removeHandler);
|
|
51
|
+
container.remove();
|
|
52
|
+
};
|
|
53
|
+
// 路由改变后应该关闭预览框
|
|
54
|
+
eventCenter.on('__taroRouterChange', removeHandler);
|
|
48
55
|
container.classList.add('preview-image');
|
|
49
56
|
container.style.cssText =
|
|
50
57
|
'position:fixed;top:0;left:0;z-index:1050;width:100%;height:100%;overflow:hidden;outline:0;background-color:#111;';
|
|
51
|
-
container.addEventListener('click',
|
|
52
|
-
container.remove();
|
|
53
|
-
});
|
|
58
|
+
container.addEventListener('click', removeHandler);
|
|
54
59
|
const swiper = document.createElement('taro-swiper-core');
|
|
55
60
|
// @ts-ignore
|
|
56
61
|
swiper.full = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"previewImage.js","sources":["../../../../src/api/media/image/previewImage.ts"],"sourcesContent":["import Taro from '@tarojs/api'\nimport { SwiperProps } from '@tarojs/components'\nimport {\n defineCustomElementTaroSwiperCore,\n defineCustomElementTaroSwiperItemCore,\n} from '@tarojs/components/dist/components'\nimport { isFunction } from '@tarojs/shared'\n\nimport { shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\n/**\n * previewImage api基于开源的React组件[react-wx-images-viewer](https://github.com/react-ld/react-wx-images-viewer)开发,感谢!\n */\n\n/**\n * 在新页面中全屏预览图片。预览的过程中用户可以进行保存图片、发送给朋友等操作。\n */\nexport const previewImage: typeof Taro.previewImage = async (options) => {\n // TODO 改为通过 window.__taroAppConfig 获取配置的 Swiper 插件创建节点\n defineCustomElementTaroSwiperCore()\n defineCustomElementTaroSwiperItemCore()\n\n function loadImage (url: string, loadFail: typeof fail): Promise<Node> {\n return new Promise((resolve) => {\n const item = document.createElement('taro-swiper-item-core')\n item.style.cssText = 'display:flex;align-items:start;justify-content:center;overflow-y:scroll;'\n const image = new Image()\n image.style.maxWidth = '100%'\n image.src = url\n const div = document.createElement('div')\n div.classList.add('swiper-zoom-container')\n div.style.cssText = 'display:flex;align-items:center;justify-content:center;max-width:100%;min-height:100%;'\n div.appendChild(image)\n item.appendChild(div)\n // Note: 等待图片加载完后返回,会导致轮播被卡住\n resolve(item)\n if (isFunction(loadFail)) {\n image.addEventListener('error', (err) => {\n loadFail({ errMsg: err.message })\n })\n }\n })\n }\n\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `previewImage:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const { urls = [], current = '', success, fail, complete } = options\n const handle = new MethodHandler({ name: 'previewImage', success, fail, complete })\n const container = document.createElement('div')\n container.classList.add('preview-image')\n container.style.cssText =\n 'position:fixed;top:0;left:0;z-index:1050;width:100%;height:100%;overflow:hidden;outline:0;background-color:#111;'\n container.addEventListener('click',
|
|
1
|
+
{"version":3,"file":"previewImage.js","sources":["../../../../src/api/media/image/previewImage.ts"],"sourcesContent":["import Taro from '@tarojs/api'\nimport { SwiperProps } from '@tarojs/components'\nimport {\n defineCustomElementTaroSwiperCore,\n defineCustomElementTaroSwiperItemCore,\n} from '@tarojs/components/dist/components'\nimport { eventCenter } from '@tarojs/runtime'\nimport { isFunction } from '@tarojs/shared'\n\nimport { shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\n/**\n * previewImage api基于开源的React组件[react-wx-images-viewer](https://github.com/react-ld/react-wx-images-viewer)开发,感谢!\n */\n\n/**\n * 在新页面中全屏预览图片。预览的过程中用户可以进行保存图片、发送给朋友等操作。\n */\nexport const previewImage: typeof Taro.previewImage = async (options) => {\n // TODO 改为通过 window.__taroAppConfig 获取配置的 Swiper 插件创建节点\n defineCustomElementTaroSwiperCore()\n defineCustomElementTaroSwiperItemCore()\n\n function loadImage (url: string, loadFail: typeof fail): Promise<Node> {\n return new Promise((resolve) => {\n const item = document.createElement('taro-swiper-item-core')\n item.style.cssText = 'display:flex;align-items:start;justify-content:center;overflow-y:scroll;'\n const image = new Image()\n image.style.maxWidth = '100%'\n image.src = url\n const div = document.createElement('div')\n div.classList.add('swiper-zoom-container')\n div.style.cssText = 'display:flex;align-items:center;justify-content:center;max-width:100%;min-height:100%;'\n div.appendChild(image)\n item.appendChild(div)\n // Note: 等待图片加载完后返回,会导致轮播被卡住\n resolve(item)\n if (isFunction(loadFail)) {\n image.addEventListener('error', (err) => {\n loadFail({ errMsg: err.message })\n })\n }\n })\n }\n\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `previewImage:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const { urls = [], current = '', success, fail, complete } = options\n const handle = new MethodHandler({ name: 'previewImage', success, fail, complete })\n const container = document.createElement('div')\n const removeHandler = () => {\n eventCenter.off('__taroRouterChange', removeHandler)\n container.remove()\n }\n // 路由改变后应该关闭预览框\n eventCenter.on('__taroRouterChange', removeHandler)\n\n container.classList.add('preview-image')\n container.style.cssText =\n 'position:fixed;top:0;left:0;z-index:1050;width:100%;height:100%;overflow:hidden;outline:0;background-color:#111;'\n container.addEventListener('click', removeHandler)\n\n const swiper: HTMLElement & Omit<SwiperProps, 'style' | 'children'> = document.createElement('taro-swiper-core')\n // @ts-ignore\n swiper.full = true\n // @ts-ignore\n swiper.zoom = true\n\n let children: Node[] = []\n try {\n children = await Promise.all(urls.map((e) => loadImage(e, fail)))\n } catch (error) {\n return handle.fail({\n errMsg: error,\n })\n }\n\n for (let i = 0; i < children.length; i++) {\n const child = children[i]\n swiper.appendChild(child)\n }\n\n const currentIndex = typeof current === 'number' ? current : urls.indexOf(current)\n\n swiper.current = currentIndex\n\n container.appendChild(swiper)\n document.body.appendChild(container)\n\n return handle.success()\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -18,19 +18,21 @@ function generateRequestUrlWithParams(url = '', params) {
|
|
|
18
18
|
}
|
|
19
19
|
function _request(options = {}) {
|
|
20
20
|
const { success, complete, fail } = options;
|
|
21
|
-
let url = options.url || '';
|
|
22
21
|
const params = {};
|
|
23
22
|
const res = {};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
let { cache = 'default', credentials, data, dataType, header = {}, jsonp, method = 'GET', mode, responseType, signal, timeout = 2000, url = '' } = options, opts = __rest(options, ["cache", "credentials", "data", "dataType", "header", "jsonp", "method", "mode", "responseType", "signal", "timeout", "url"]);
|
|
24
|
+
Object.assign(params, opts);
|
|
25
|
+
if (jsonp) {
|
|
27
26
|
// @ts-ignore
|
|
28
|
-
params.params =
|
|
27
|
+
params.params = data;
|
|
29
28
|
params.cache = opts.jsonpCache;
|
|
29
|
+
// @ts-ignore
|
|
30
|
+
params.timeout = timeout;
|
|
30
31
|
if (typeof jsonp === 'string') {
|
|
31
32
|
// @ts-ignore
|
|
32
33
|
params.name = jsonp;
|
|
33
34
|
}
|
|
35
|
+
// Note: https://github.com/luckyadam/jsonp-retry
|
|
34
36
|
return jsonpRetry(url, params)
|
|
35
37
|
.then(data => {
|
|
36
38
|
res.statusCode = 200;
|
|
@@ -45,50 +47,49 @@ function _request(options = {}) {
|
|
|
45
47
|
return Promise.reject(err);
|
|
46
48
|
});
|
|
47
49
|
}
|
|
48
|
-
params.method =
|
|
50
|
+
params.method = method;
|
|
49
51
|
const methodUpper = params.method.toUpperCase();
|
|
50
|
-
params.cache =
|
|
52
|
+
params.cache = cache;
|
|
51
53
|
if (methodUpper === 'GET' || methodUpper === 'HEAD') {
|
|
52
|
-
url = generateRequestUrlWithParams(url,
|
|
54
|
+
url = generateRequestUrlWithParams(url, data);
|
|
53
55
|
}
|
|
54
|
-
else if (['[object Array]', '[object Object]'].indexOf(Object.prototype.toString.call(
|
|
55
|
-
|
|
56
|
-
const keyOfContentType = Object.keys(options.header).find(item => item.toLowerCase() === 'content-type');
|
|
56
|
+
else if (['[object Array]', '[object Object]'].indexOf(Object.prototype.toString.call(data)) >= 0) {
|
|
57
|
+
const keyOfContentType = Object.keys(header).find(item => item.toLowerCase() === 'content-type');
|
|
57
58
|
if (!keyOfContentType) {
|
|
58
|
-
|
|
59
|
+
header['Content-Type'] = 'application/json';
|
|
59
60
|
}
|
|
60
|
-
const contentType =
|
|
61
|
+
const contentType = header[keyOfContentType || 'Content-Type'];
|
|
61
62
|
if (contentType.indexOf('application/json') >= 0) {
|
|
62
|
-
params.body = JSON.stringify(
|
|
63
|
+
params.body = JSON.stringify(data);
|
|
63
64
|
}
|
|
64
65
|
else if (contentType.indexOf('application/x-www-form-urlencoded') >= 0) {
|
|
65
|
-
params.body = serializeParams(
|
|
66
|
+
params.body = serializeParams(data);
|
|
66
67
|
}
|
|
67
68
|
else {
|
|
68
|
-
params.body =
|
|
69
|
+
params.body = data;
|
|
69
70
|
}
|
|
70
71
|
}
|
|
71
72
|
else {
|
|
72
|
-
params.body =
|
|
73
|
+
params.body = data;
|
|
73
74
|
}
|
|
74
|
-
if (
|
|
75
|
-
params.headers =
|
|
75
|
+
if (header) {
|
|
76
|
+
params.headers = header;
|
|
76
77
|
}
|
|
77
|
-
if (
|
|
78
|
-
params.mode =
|
|
78
|
+
if (mode) {
|
|
79
|
+
params.mode = mode;
|
|
79
80
|
}
|
|
80
81
|
let timeoutTimer = null;
|
|
81
|
-
if (
|
|
82
|
-
params.signal =
|
|
82
|
+
if (signal) {
|
|
83
|
+
params.signal = signal;
|
|
83
84
|
}
|
|
84
|
-
else if (typeof
|
|
85
|
+
else if (typeof timeout === 'number') {
|
|
85
86
|
const controller = new window.AbortController();
|
|
86
87
|
params.signal = controller.signal;
|
|
87
88
|
timeoutTimer = setTimeout(function () {
|
|
88
89
|
controller.abort();
|
|
89
|
-
},
|
|
90
|
+
}, timeout);
|
|
90
91
|
}
|
|
91
|
-
params.credentials =
|
|
92
|
+
params.credentials = credentials;
|
|
92
93
|
return fetch(url, params)
|
|
93
94
|
.then(response => {
|
|
94
95
|
if (timeoutTimer) {
|
|
@@ -104,17 +105,17 @@ function _request(options = {}) {
|
|
|
104
105
|
for (const key of response.headers.keys()) {
|
|
105
106
|
res.header[key] = response.headers.get(key);
|
|
106
107
|
}
|
|
107
|
-
if (
|
|
108
|
+
if (responseType === 'arraybuffer') {
|
|
108
109
|
return response.arrayBuffer();
|
|
109
110
|
}
|
|
110
111
|
if (res.statusCode !== 204) {
|
|
111
|
-
if (
|
|
112
|
+
if (dataType === 'json' || typeof dataType === 'undefined') {
|
|
112
113
|
return response.json().catch(() => {
|
|
113
114
|
return null;
|
|
114
115
|
});
|
|
115
116
|
}
|
|
116
117
|
}
|
|
117
|
-
if (
|
|
118
|
+
if (responseType === 'text' || dataType === 'text') {
|
|
118
119
|
return response.text();
|
|
119
120
|
}
|
|
120
121
|
return Promise.resolve(null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/api/network/request/index.ts"],"sourcesContent":["import 'whatwg-fetch'\nimport 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'\n\nimport Taro from '@tarojs/api'\nimport { isFunction } from '@tarojs/shared'\nimport jsonpRetry from 'jsonp-retry'\n\nimport { serializeParams } from '../../../utils'\n\n// @ts-ignore\nconst { Link } = Taro\n\nfunction generateRequestUrlWithParams (url = '', params?: unknown) {\n params = typeof params === 'string' ? params : serializeParams(params)\n if (params) {\n url += (~url.indexOf('?') ? '&' : '?') + params\n }\n url = url.replace('?&', '?')\n return url\n}\n\nfunction _request (options: Partial<Taro.request.Option> = {}) {\n const { success, complete, fail } = options\n let url = options.url || ''\n const params: RequestInit = {}\n const res: any = {}\n if (options.jsonp) {\n const { jsonp, ...opts } = options\n Object.assign(params, opts)\n // @ts-ignore\n params.params = opts.data\n params.cache = opts.jsonpCache\n if (typeof jsonp === 'string') {\n // @ts-ignore\n params.name = jsonp\n }\n return jsonpRetry(url, params)\n .then(data => {\n res.statusCode = 200\n res.data = data\n isFunction(success) && success(res)\n isFunction(complete) && complete(res)\n return res\n })\n .catch(err => {\n isFunction(fail) && fail(err)\n isFunction(complete) && complete(res)\n return Promise.reject(err)\n })\n }\n params.method = options.method || 'GET'\n const methodUpper = params.method.toUpperCase()\n params.cache = options.cache || 'default'\n if (methodUpper === 'GET' || methodUpper === 'HEAD') {\n url = generateRequestUrlWithParams(url, options.data)\n } else if (['[object Array]', '[object Object]'].indexOf(Object.prototype.toString.call(options.data)) >= 0) {\n options.header = options.header || {}\n\n const keyOfContentType = Object.keys(options.header).find(item => item.toLowerCase() === 'content-type')\n if (!keyOfContentType) {\n options.header['Content-Type'] = 'application/json'\n }\n const contentType = options.header[keyOfContentType || 'Content-Type']\n\n if (contentType.indexOf('application/json') >= 0) {\n params.body = JSON.stringify(options.data)\n } else if (contentType.indexOf('application/x-www-form-urlencoded') >= 0) {\n params.body = serializeParams(options.data)\n } else {\n params.body = options.data\n }\n } else {\n params.body = options.data\n }\n if (options.header) {\n params.headers = options.header\n }\n if (options.mode) {\n params.mode = options.mode\n }\n let timeoutTimer: ReturnType<typeof setTimeout> | null = null\n if (options.signal) {\n params.signal = options.signal\n } else if (typeof options.timeout === 'number') {\n const controller = new window.AbortController()\n params.signal = controller.signal\n timeoutTimer = setTimeout(function () {\n controller.abort()\n }, options.timeout)\n }\n params.credentials = options.credentials\n return fetch(url, params)\n .then(response => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n timeoutTimer = null\n }\n if (!response) {\n const errorResponse = { ok: false }\n throw errorResponse\n }\n res.statusCode = response.status\n res.header = {}\n for (const key of response.headers.keys()) {\n res.header[key] = response.headers.get(key)\n }\n if (options.responseType === 'arraybuffer') {\n return response.arrayBuffer()\n }\n if (res.statusCode !== 204) {\n if (options.dataType === 'json' || typeof options.dataType === 'undefined') {\n return response.json().catch(() => {\n return null\n })\n }\n }\n if (options.responseType === 'text' || options.dataType === 'text') {\n return response.text()\n }\n return Promise.resolve(null)\n })\n .then(data => {\n res.data = data\n isFunction(success) && success(res)\n isFunction(complete) && complete(res)\n return res\n })\n .catch(err => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n timeoutTimer = null\n }\n isFunction(fail) && fail(err)\n isFunction(complete) && complete(res)\n err.statusCode = res.statusCode\n err.errMsg = err.message\n return Promise.reject(err)\n })\n}\n\nfunction taroInterceptor (chain) {\n return _request(chain.requestParams)\n}\n\nconst link = new Link(taroInterceptor)\n\nexport const request = (<T extends Partial<Taro.request.Option> = TaroGeneral.IAnyObject>(...args: [string | T, T]) => {\n const [url = '', options = {} as T] = args\n if (typeof url === 'string') {\n options.url = url\n } else {\n Object.assign(options, url)\n }\n return link.request(options)\n}) as typeof Taro.request\nexport const addInterceptor = link.addInterceptor.bind(link)\nexport const cleanInterceptors = link.cleanInterceptors.bind(link)\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/api/network/request/index.ts"],"sourcesContent":["import 'whatwg-fetch'\nimport 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'\n\nimport Taro from '@tarojs/api'\nimport { isFunction } from '@tarojs/shared'\nimport jsonpRetry from 'jsonp-retry'\n\nimport { serializeParams } from '../../../utils'\n\n// @ts-ignore\nconst { Link } = Taro\n\nfunction generateRequestUrlWithParams (url = '', params?: unknown) {\n params = typeof params === 'string' ? params : serializeParams(params)\n if (params) {\n url += (~url.indexOf('?') ? '&' : '?') + params\n }\n url = url.replace('?&', '?')\n return url\n}\n\nfunction _request (options: Partial<Taro.request.Option> = {}) {\n const { success, complete, fail } = options\n const params: RequestInit = {}\n const res: any = {}\n let {\n cache = 'default',\n credentials,\n data, dataType,\n header = {},\n jsonp,\n method = 'GET',\n mode,\n responseType,\n signal,\n timeout = 2000,\n url = '',\n ...opts\n } = options\n Object.assign(params, opts)\n if (jsonp) {\n // @ts-ignore\n params.params = data\n params.cache = opts.jsonpCache\n // @ts-ignore\n params.timeout = timeout\n if (typeof jsonp === 'string') {\n // @ts-ignore\n params.name = jsonp\n }\n // Note: https://github.com/luckyadam/jsonp-retry\n return jsonpRetry(url, params)\n .then(data => {\n res.statusCode = 200\n res.data = data\n isFunction(success) && success(res)\n isFunction(complete) && complete(res)\n return res\n })\n .catch(err => {\n isFunction(fail) && fail(err)\n isFunction(complete) && complete(res)\n return Promise.reject(err)\n })\n }\n params.method = method\n const methodUpper = params.method.toUpperCase()\n params.cache = cache\n if (methodUpper === 'GET' || methodUpper === 'HEAD') {\n url = generateRequestUrlWithParams(url, data)\n } else if (['[object Array]', '[object Object]'].indexOf(Object.prototype.toString.call(data)) >= 0) {\n const keyOfContentType = Object.keys(header).find(item => item.toLowerCase() === 'content-type')\n if (!keyOfContentType) {\n header['Content-Type'] = 'application/json'\n }\n const contentType = header[keyOfContentType || 'Content-Type']\n\n if (contentType.indexOf('application/json') >= 0) {\n params.body = JSON.stringify(data)\n } else if (contentType.indexOf('application/x-www-form-urlencoded') >= 0) {\n params.body = serializeParams(data)\n } else {\n params.body = data\n }\n } else {\n params.body = data\n }\n if (header) {\n params.headers = header\n }\n if (mode) {\n params.mode = mode\n }\n let timeoutTimer: ReturnType<typeof setTimeout> | null = null\n if (signal) {\n params.signal = signal\n } else if (typeof timeout === 'number') {\n const controller = new window.AbortController()\n params.signal = controller.signal\n timeoutTimer = setTimeout(function () {\n controller.abort()\n }, timeout)\n }\n params.credentials = credentials\n return fetch(url, params)\n .then(response => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n timeoutTimer = null\n }\n if (!response) {\n const errorResponse = { ok: false }\n throw errorResponse\n }\n res.statusCode = response.status\n res.header = {}\n for (const key of response.headers.keys()) {\n res.header[key] = response.headers.get(key)\n }\n if (responseType === 'arraybuffer') {\n return response.arrayBuffer()\n }\n if (res.statusCode !== 204) {\n if (dataType === 'json' || typeof dataType === 'undefined') {\n return response.json().catch(() => {\n return null\n })\n }\n }\n if (responseType === 'text' || dataType === 'text') {\n return response.text()\n }\n return Promise.resolve(null)\n })\n .then(data => {\n res.data = data\n isFunction(success) && success(res)\n isFunction(complete) && complete(res)\n return res\n })\n .catch(err => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n timeoutTimer = null\n }\n isFunction(fail) && fail(err)\n isFunction(complete) && complete(res)\n err.statusCode = res.statusCode\n err.errMsg = err.message\n return Promise.reject(err)\n })\n}\n\nfunction taroInterceptor (chain) {\n return _request(chain.requestParams)\n}\n\nconst link = new Link(taroInterceptor)\n\nexport const request = (<T extends Partial<Taro.request.Option> = TaroGeneral.IAnyObject>(...args: [string | T, T]) => {\n const [url = '', options = {} as T] = args\n if (typeof url === 'string') {\n options.url = url\n } else {\n Object.assign(options, url)\n }\n return link.request(options)\n}) as typeof Taro.request\nexport const addInterceptor = link.addInterceptor.bind(link)\nexport const cleanInterceptors = link.cleanInterceptors.bind(link)\n"],"names":[],"mappings":"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"}
|
|
@@ -50,9 +50,9 @@ function connectSocket(options) {
|
|
|
50
50
|
// protocols must be array
|
|
51
51
|
const _protocols = Array.isArray(protocols) ? protocols : null;
|
|
52
52
|
// 2 connection at most
|
|
53
|
-
if (socketTasks.length
|
|
53
|
+
if (socketTasks.length >= 5) {
|
|
54
54
|
return handle.fail({
|
|
55
|
-
errMsg: '同时最多发起
|
|
55
|
+
errMsg: '同时最多发起 5 个 socket 请求,更多请参考文档。'
|
|
56
56
|
}, { resolve, reject });
|
|
57
57
|
}
|
|
58
58
|
const task = new SocketTask(url, _protocols);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/api/network/websocket/index.ts"],"sourcesContent":["import { getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\nimport { SocketTask } from './socketTask'\n\nlet socketTasks: SocketTask[] = []\nlet socketsCounter = 1\n\nexport function sendSocketMessage () {\n console.warn('Deprecated.Please use socketTask.send instead.')\n}\n\nexport function onSocketOpen () {\n console.warn('Deprecated.Please use socketTask.onOpen instead.')\n}\n\nexport function onSocketMessage () {\n console.warn('Deprecated.Please use socketTask.onMessage instead.')\n}\n\nexport function onSocketError () {\n console.warn('Deprecated.Please use socketTask.onError instead.')\n}\n\nexport function onSocketClose () {\n console.warn('Deprecated.Please use socketTask.onClose instead.')\n}\n\nexport function connectSocket (options?: Taro.connectSocket.Option) {\n const name = 'connectSocket'\n\n return new Promise((resolve, reject) => {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${name}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return reject(res)\n }\n const { url, protocols, success, fail, complete } = options as Exclude<typeof options, undefined>\n const handle = new MethodHandler<{\n socketTaskId?: number\n }>({ name, success, fail, complete })\n\n // options.url must be String\n if (typeof url !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'url',\n correct: 'String',\n wrong: url\n })\n }, { resolve, reject })\n }\n\n // options.url must be invalid\n if (!url.startsWith('ws://') && !url.startsWith('wss://')) {\n return handle.fail({\n errMsg: `request:fail invalid url \"${url}\"`\n }, { resolve, reject })\n }\n\n // protocols must be array\n const _protocols = Array.isArray(protocols) ? protocols : null\n\n // 2 connection at most\n if (socketTasks.length
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/api/network/websocket/index.ts"],"sourcesContent":["import { getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\nimport { SocketTask } from './socketTask'\n\nlet socketTasks: SocketTask[] = []\nlet socketsCounter = 1\n\nexport function sendSocketMessage () {\n console.warn('Deprecated.Please use socketTask.send instead.')\n}\n\nexport function onSocketOpen () {\n console.warn('Deprecated.Please use socketTask.onOpen instead.')\n}\n\nexport function onSocketMessage () {\n console.warn('Deprecated.Please use socketTask.onMessage instead.')\n}\n\nexport function onSocketError () {\n console.warn('Deprecated.Please use socketTask.onError instead.')\n}\n\nexport function onSocketClose () {\n console.warn('Deprecated.Please use socketTask.onClose instead.')\n}\n\nexport function connectSocket (options?: Taro.connectSocket.Option) {\n const name = 'connectSocket'\n\n return new Promise((resolve, reject) => {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${name}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return reject(res)\n }\n const { url, protocols, success, fail, complete } = options as Exclude<typeof options, undefined>\n const handle = new MethodHandler<{\n socketTaskId?: number\n }>({ name, success, fail, complete })\n\n // options.url must be String\n if (typeof url !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'url',\n correct: 'String',\n wrong: url\n })\n }, { resolve, reject })\n }\n\n // options.url must be invalid\n if (!url.startsWith('ws://') && !url.startsWith('wss://')) {\n return handle.fail({\n errMsg: `request:fail invalid url \"${url}\"`\n }, { resolve, reject })\n }\n\n // protocols must be array\n const _protocols = Array.isArray(protocols) ? protocols : null\n\n // 2 connection at most\n if (socketTasks.length >= 5) {\n return handle.fail({\n errMsg: '同时最多发起 5 个 socket 请求,更多请参考文档。'\n }, { resolve, reject })\n }\n\n const task = new SocketTask(url, _protocols)\n task._destroyWhenClose = function () {\n socketTasks = socketTasks.filter(socketTask => socketTask !== this)\n }\n socketTasks.push(task)\n\n handle.success({\n socketTaskId: socketsCounter++\n })\n\n return resolve(task)\n })\n}\n\nexport function closeSocket () {\n console.warn('Deprecated.Please use socketTask.close instead.')\n}\n"],"names":[],"mappings":"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"}
|
package/dist/index.cjs.js
CHANGED
|
@@ -2418,7 +2418,6 @@ class InnerAudioContext {
|
|
|
2418
2418
|
this.destroy = () => {
|
|
2419
2419
|
this.stop();
|
|
2420
2420
|
if (this.Instance) {
|
|
2421
|
-
document.body.removeChild(this.Instance);
|
|
2422
2421
|
this.Instance = undefined;
|
|
2423
2422
|
}
|
|
2424
2423
|
};
|
|
@@ -2445,6 +2444,7 @@ class InnerAudioContext {
|
|
|
2445
2444
|
this.Instance = new Audio();
|
|
2446
2445
|
this.errorStack = new CallbackManager();
|
|
2447
2446
|
this.stopStack = new CallbackManager();
|
|
2447
|
+
this.Instance.onerror = this.errorStack.trigger;
|
|
2448
2448
|
Taro.eventCenter.on('__taroRouterChange', () => { this.stop(); });
|
|
2449
2449
|
this.onPlay(() => {
|
|
2450
2450
|
if (this.__isFirstPlay) {
|
|
@@ -2537,6 +2537,7 @@ class BackgroundAudioManager {
|
|
|
2537
2537
|
this.Instance = new Audio();
|
|
2538
2538
|
this.errorStack = new CallbackManager();
|
|
2539
2539
|
this.stopStack = new CallbackManager();
|
|
2540
|
+
this.Instance.onerror = this.errorStack.trigger;
|
|
2540
2541
|
this.Instance.autoplay = true;
|
|
2541
2542
|
this.onPlay(() => {
|
|
2542
2543
|
if (this.currentTime !== this.startTime) {
|
|
@@ -2707,12 +2708,16 @@ const previewImage = (options) => __awaiter(void 0, void 0, void 0, function* ()
|
|
|
2707
2708
|
const { urls = [], current = '', success, fail, complete } = options;
|
|
2708
2709
|
const handle = new MethodHandler({ name: 'previewImage', success, fail, complete });
|
|
2709
2710
|
const container = document.createElement('div');
|
|
2711
|
+
const removeHandler = () => {
|
|
2712
|
+
runtime.eventCenter.off('__taroRouterChange', removeHandler);
|
|
2713
|
+
container.remove();
|
|
2714
|
+
};
|
|
2715
|
+
// 路由改变后应该关闭预览框
|
|
2716
|
+
runtime.eventCenter.on('__taroRouterChange', removeHandler);
|
|
2710
2717
|
container.classList.add('preview-image');
|
|
2711
2718
|
container.style.cssText =
|
|
2712
2719
|
'position:fixed;top:0;left:0;z-index:1050;width:100%;height:100%;overflow:hidden;outline:0;background-color:#111;';
|
|
2713
|
-
container.addEventListener('click',
|
|
2714
|
-
container.remove();
|
|
2715
|
-
});
|
|
2720
|
+
container.addEventListener('click', removeHandler);
|
|
2716
2721
|
const swiper = document.createElement('taro-swiper-core');
|
|
2717
2722
|
// @ts-ignore
|
|
2718
2723
|
swiper.full = true;
|
|
@@ -5024,19 +5029,21 @@ function generateRequestUrlWithParams(url = '', params) {
|
|
|
5024
5029
|
}
|
|
5025
5030
|
function _request(options = {}) {
|
|
5026
5031
|
const { success, complete, fail } = options;
|
|
5027
|
-
let url = options.url || '';
|
|
5028
5032
|
const params = {};
|
|
5029
5033
|
const res = {};
|
|
5030
|
-
|
|
5031
|
-
|
|
5032
|
-
|
|
5034
|
+
let { cache = 'default', credentials, data, dataType, header = {}, jsonp, method = 'GET', mode, responseType, signal, timeout = 2000, url = '' } = options, opts = __rest(options, ["cache", "credentials", "data", "dataType", "header", "jsonp", "method", "mode", "responseType", "signal", "timeout", "url"]);
|
|
5035
|
+
Object.assign(params, opts);
|
|
5036
|
+
if (jsonp) {
|
|
5033
5037
|
// @ts-ignore
|
|
5034
|
-
params.params =
|
|
5038
|
+
params.params = data;
|
|
5035
5039
|
params.cache = opts.jsonpCache;
|
|
5040
|
+
// @ts-ignore
|
|
5041
|
+
params.timeout = timeout;
|
|
5036
5042
|
if (typeof jsonp === 'string') {
|
|
5037
5043
|
// @ts-ignore
|
|
5038
5044
|
params.name = jsonp;
|
|
5039
5045
|
}
|
|
5046
|
+
// Note: https://github.com/luckyadam/jsonp-retry
|
|
5040
5047
|
return jsonpRetry(url, params)
|
|
5041
5048
|
.then(data => {
|
|
5042
5049
|
res.statusCode = 200;
|
|
@@ -5051,50 +5058,49 @@ function _request(options = {}) {
|
|
|
5051
5058
|
return Promise.reject(err);
|
|
5052
5059
|
});
|
|
5053
5060
|
}
|
|
5054
|
-
params.method =
|
|
5061
|
+
params.method = method;
|
|
5055
5062
|
const methodUpper = params.method.toUpperCase();
|
|
5056
|
-
params.cache =
|
|
5063
|
+
params.cache = cache;
|
|
5057
5064
|
if (methodUpper === 'GET' || methodUpper === 'HEAD') {
|
|
5058
|
-
url = generateRequestUrlWithParams(url,
|
|
5065
|
+
url = generateRequestUrlWithParams(url, data);
|
|
5059
5066
|
}
|
|
5060
|
-
else if (['[object Array]', '[object Object]'].indexOf(Object.prototype.toString.call(
|
|
5061
|
-
|
|
5062
|
-
const keyOfContentType = Object.keys(options.header).find(item => item.toLowerCase() === 'content-type');
|
|
5067
|
+
else if (['[object Array]', '[object Object]'].indexOf(Object.prototype.toString.call(data)) >= 0) {
|
|
5068
|
+
const keyOfContentType = Object.keys(header).find(item => item.toLowerCase() === 'content-type');
|
|
5063
5069
|
if (!keyOfContentType) {
|
|
5064
|
-
|
|
5070
|
+
header['Content-Type'] = 'application/json';
|
|
5065
5071
|
}
|
|
5066
|
-
const contentType =
|
|
5072
|
+
const contentType = header[keyOfContentType || 'Content-Type'];
|
|
5067
5073
|
if (contentType.indexOf('application/json') >= 0) {
|
|
5068
|
-
params.body = JSON.stringify(
|
|
5074
|
+
params.body = JSON.stringify(data);
|
|
5069
5075
|
}
|
|
5070
5076
|
else if (contentType.indexOf('application/x-www-form-urlencoded') >= 0) {
|
|
5071
|
-
params.body = serializeParams(
|
|
5077
|
+
params.body = serializeParams(data);
|
|
5072
5078
|
}
|
|
5073
5079
|
else {
|
|
5074
|
-
params.body =
|
|
5080
|
+
params.body = data;
|
|
5075
5081
|
}
|
|
5076
5082
|
}
|
|
5077
5083
|
else {
|
|
5078
|
-
params.body =
|
|
5084
|
+
params.body = data;
|
|
5079
5085
|
}
|
|
5080
|
-
if (
|
|
5081
|
-
params.headers =
|
|
5086
|
+
if (header) {
|
|
5087
|
+
params.headers = header;
|
|
5082
5088
|
}
|
|
5083
|
-
if (
|
|
5084
|
-
params.mode =
|
|
5089
|
+
if (mode) {
|
|
5090
|
+
params.mode = mode;
|
|
5085
5091
|
}
|
|
5086
5092
|
let timeoutTimer = null;
|
|
5087
|
-
if (
|
|
5088
|
-
params.signal =
|
|
5093
|
+
if (signal) {
|
|
5094
|
+
params.signal = signal;
|
|
5089
5095
|
}
|
|
5090
|
-
else if (typeof
|
|
5096
|
+
else if (typeof timeout === 'number') {
|
|
5091
5097
|
const controller = new window.AbortController();
|
|
5092
5098
|
params.signal = controller.signal;
|
|
5093
5099
|
timeoutTimer = setTimeout(function () {
|
|
5094
5100
|
controller.abort();
|
|
5095
|
-
},
|
|
5101
|
+
}, timeout);
|
|
5096
5102
|
}
|
|
5097
|
-
params.credentials =
|
|
5103
|
+
params.credentials = credentials;
|
|
5098
5104
|
return fetch(url, params)
|
|
5099
5105
|
.then(response => {
|
|
5100
5106
|
if (timeoutTimer) {
|
|
@@ -5110,17 +5116,17 @@ function _request(options = {}) {
|
|
|
5110
5116
|
for (const key of response.headers.keys()) {
|
|
5111
5117
|
res.header[key] = response.headers.get(key);
|
|
5112
5118
|
}
|
|
5113
|
-
if (
|
|
5119
|
+
if (responseType === 'arraybuffer') {
|
|
5114
5120
|
return response.arrayBuffer();
|
|
5115
5121
|
}
|
|
5116
5122
|
if (res.statusCode !== 204) {
|
|
5117
|
-
if (
|
|
5123
|
+
if (dataType === 'json' || typeof dataType === 'undefined') {
|
|
5118
5124
|
return response.json().catch(() => {
|
|
5119
5125
|
return null;
|
|
5120
5126
|
});
|
|
5121
5127
|
}
|
|
5122
5128
|
}
|
|
5123
|
-
if (
|
|
5129
|
+
if (responseType === 'text' || dataType === 'text') {
|
|
5124
5130
|
return response.text();
|
|
5125
5131
|
}
|
|
5126
5132
|
return Promise.resolve(null);
|
|
@@ -5430,9 +5436,9 @@ function connectSocket(options) {
|
|
|
5430
5436
|
// protocols must be array
|
|
5431
5437
|
const _protocols = Array.isArray(protocols) ? protocols : null;
|
|
5432
5438
|
// 2 connection at most
|
|
5433
|
-
if (socketTasks.length
|
|
5439
|
+
if (socketTasks.length >= 5) {
|
|
5434
5440
|
return handle.fail({
|
|
5435
|
-
errMsg: '同时最多发起
|
|
5441
|
+
errMsg: '同时最多发起 5 个 socket 请求,更多请参考文档。'
|
|
5436
5442
|
}, { resolve, reject });
|
|
5437
5443
|
}
|
|
5438
5444
|
const task = new SocketTask(url, _protocols);
|