@tarojs/taro-h5 4.0.1-alpha.1 → 4.0.1
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/base/index.js +1 -1
- package/dist/api/base/index.js.map +1 -1
- package/dist/api/base/system.js +2 -2
- package/dist/api/base/system.js.map +1 -1
- package/dist/api/base/weapp/app-event.js +2 -2
- package/dist/api/base/weapp/app-event.js.map +1 -1
- package/dist/api/canvas/CanvasContext.d.ts +1 -1
- package/dist/api/canvas/CanvasContext.js.map +1 -1
- package/dist/api/canvas/canvasGetImageData.js.map +1 -1
- package/dist/api/canvas/canvasPutImageData.js.map +1 -1
- package/dist/api/canvas/canvasToTempFilePath.js.map +1 -1
- package/dist/api/device/accelerometer.js.map +1 -1
- package/dist/api/device/battery.js +1 -1
- package/dist/api/device/battery.js.map +1 -1
- package/dist/api/device/calendar.js.map +1 -1
- package/dist/api/device/clipboard.js +2 -2
- package/dist/api/device/clipboard.js.map +1 -1
- package/dist/api/device/compass.js.map +1 -1
- package/dist/api/device/motion.js.map +1 -1
- package/dist/api/device/network.js.map +1 -1
- package/dist/api/device/phone.js.map +1 -1
- package/dist/api/device/sms.js.map +1 -1
- package/dist/api/device/vibrate.js.map +1 -1
- package/dist/api/location/chooseLocation.js +2 -2
- package/dist/api/location/chooseLocation.js.map +1 -1
- package/dist/api/location/getLocation.js +1 -1
- package/dist/api/location/getLocation.js.map +1 -1
- package/dist/api/location/locationChange.js.map +1 -1
- package/dist/api/location/style.scss.js +1 -1
- package/dist/api/media/audio/InnerAudioContext.js.map +1 -1
- package/dist/api/media/background-audio/BackgroundAudioManager.d.ts +1 -1
- package/dist/api/media/background-audio/BackgroundAudioManager.js.map +1 -1
- package/dist/api/media/image/chooseImage.js.map +1 -1
- package/dist/api/media/image/getImageInfo.js.map +1 -1
- package/dist/api/media/image/previewImage.js.map +1 -1
- package/dist/api/media/image/saveImageToPhotosAlbum.js.map +1 -1
- package/dist/api/media/video/chooseMedia.js +3 -3
- package/dist/api/media/video/chooseMedia.js.map +1 -1
- package/dist/api/media/video/chooseVideo.js.map +1 -1
- package/dist/api/media/video/getVideoInfo.js.map +1 -1
- package/dist/api/media/video/saveVideoToPhotosAlbum.js.map +1 -1
- package/dist/api/network/request/index.js.map +1 -1
- package/dist/api/network/upload.js.map +1 -1
- package/dist/api/network/utils.js +4 -4
- package/dist/api/network/utils.js.map +1 -1
- package/dist/api/network/websocket/index.js.map +1 -1
- package/dist/api/network/websocket/socketTask.js.map +1 -1
- package/dist/api/storage/index.js.map +1 -1
- package/dist/api/taro.js +0 -1
- package/dist/api/taro.js.map +1 -1
- package/dist/api/ui/animation/index.js.map +1 -1
- package/dist/api/ui/fonts.js.map +1 -1
- package/dist/api/ui/interaction/actionSheet.js.map +1 -1
- package/dist/api/ui/interaction/index.js +2 -2
- package/dist/api/ui/interaction/index.js.map +1 -1
- package/dist/api/ui/interaction/modal.js.map +1 -1
- package/dist/api/ui/interaction/toast.js.map +1 -1
- package/dist/api/ui/navigation-bar/index.js.map +1 -1
- package/dist/api/ui/scroll/index.js.map +1 -1
- package/dist/api/ui/tab-bar.js.map +1 -1
- package/dist/api/ui/window.js.map +1 -1
- package/dist/api/wxml/IntersectionObserver.js.map +1 -1
- package/dist/api/wxml/MediaQueryObserver.js.map +1 -1
- package/dist/api/wxml/selectorQuery.js.map +1 -1
- package/dist/index.cjs.d.ts +1 -1
- package/dist/index.cjs.js +16 -17
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.d.ts +1 -1
- package/dist/index.esm.js +19 -20
- package/dist/index.esm.js.map +1 -1
- package/dist/utils/animation.js.map +1 -1
- package/dist/utils/handler.js.map +1 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +28 -19
- /package/dist/node_modules/.pnpm/{style-inject@0.3.0 → registry.npmjs.org_style-inject@0.3.0}/node_modules/style-inject/dist/style-inject.es.js +0 -0
- /package/dist/node_modules/.pnpm/{style-inject@0.3.0 → registry.npmjs.org_style-inject@0.3.0}/node_modules/style-inject/dist/style-inject.es.js.map +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phone.js","sources":["../../../src/api/device/phone.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { getParameterError, shouldBeObject } from '../../utils'\nimport { MethodHandler } from '../../utils/handler'\n\nexport const makePhoneCall: typeof Taro.makePhoneCall = (options) => {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `makePhoneCall:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const { phoneNumber, success, fail, complete } = options\n const handle = new MethodHandler({ name: 'makePhoneCall', success, fail, complete })\n\n if (typeof phoneNumber !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'phoneNumber',\n correct: 'String',\n wrong: phoneNumber\n })\n })\n }\n\n window.location.href = `tel:${phoneNumber}`\n\n return handle.success()\n}\n"],"names":[],"mappings":";;;AAKa,MAAA,aAAa,GAA8B,CAAC,OAAO,KAAI;;AAElE,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAsB,mBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC5D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"phone.js","sources":["../../../src/api/device/phone.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { getParameterError, shouldBeObject } from '../../utils'\nimport { MethodHandler } from '../../utils/handler'\n\nexport const makePhoneCall: typeof Taro.makePhoneCall = (options) => {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `makePhoneCall:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const { phoneNumber, success, fail, complete } = options\n const handle = new MethodHandler({ name: 'makePhoneCall', success, fail, complete })\n\n if (typeof phoneNumber !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'phoneNumber',\n correct: 'String',\n wrong: phoneNumber\n })\n })\n }\n\n window.location.href = `tel:${phoneNumber}`\n\n return handle.success()\n}\n"],"names":[],"mappings":";;;AAKa,MAAA,aAAa,GAA8B,CAAC,OAAO,KAAI;;AAElE,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAsB,mBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC5D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAC3B,KAAA;IAED,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;AACxD,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;AAEpF,IAAA,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;QACnC,OAAO,MAAM,CAAC,IAAI,CAAC;YACjB,MAAM,EAAE,iBAAiB,CAAC;AACxB,gBAAA,IAAI,EAAE,aAAa;AACnB,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,KAAK,EAAE,WAAW;aACnB,CAAC;AACH,SAAA,CAAC,CAAA;AACH,KAAA;IAED,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAO,IAAA,EAAA,WAAW,EAAE,CAAA;AAE3C,IAAA,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;AACzB;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sms.js","sources":["../../../src/api/device/sms.ts"],"sourcesContent":["import { temporarilyNotSupport } from '../../utils'\n\n// 短信\nexport const sendSms = /* @__PURE__ */ temporarilyNotSupport('sendSms')
|
|
1
|
+
{"version":3,"file":"sms.js","sources":["../../../src/api/device/sms.ts"],"sourcesContent":["import { temporarilyNotSupport } from '../../utils'\n\n// 短信\nexport const sendSms = /* @__PURE__ */ temporarilyNotSupport('sendSms')"],"names":[],"mappings":";;AAEA;AACa,MAAA,OAAO,mBAAmB,qBAAqB,CAAC,SAAS;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vibrate.js","sources":["../../../src/api/device/vibrate.ts"],"sourcesContent":["import Taro from '@tarojs/api'\r\n\r\nimport { MethodHandler } from '../../utils/handler'\r\n\r\nconst vibrator = function vibrator (mm: number | number[]) {\r\n try {\r\n return window.navigator.vibrate(mm)\r\n } catch (e) {\r\n console.warn('当前浏览器不支持 vibrate。')\r\n }\r\n}\r\n\r\n/**\r\n * 使手机发生较短时间的振动(15 ms)。仅在 iPhone 7 / 7 Plus 以上及 Android 机型生效\r\n */\r\nexport const vibrateShort: typeof Taro.vibrateShort = ({ success, fail, complete } = {}) => {\r\n const handle = new MethodHandler({ name: 'vibrateShort', success, fail, complete })\r\n if (vibrator(15)) {\r\n return handle.success()\r\n } else {\r\n return handle.fail({ errMsg: 'style is not support' })\r\n }\r\n}\r\n\r\n/**\r\n * 使手机发生较长时间的振动(400 ms)\r\n */\r\nexport const vibrateLong: typeof Taro.vibrateLong = ({ success, fail, complete } = {}) => {\r\n const handle = new MethodHandler({ name: 'vibrateLong', success, fail, complete })\r\n if (vibrator(400)) {\r\n return handle.success()\r\n } else {\r\n return handle.fail({ errMsg: 'style is not support' })\r\n }\r\n}\r\n"],"names":[],"mappings":";;AAIA,MAAM,QAAQ,GAAG,SAAS,QAAQ,CAAE,EAAqB,EAAA;
|
|
1
|
+
{"version":3,"file":"vibrate.js","sources":["../../../src/api/device/vibrate.ts"],"sourcesContent":["import Taro from '@tarojs/api'\r\n\r\nimport { MethodHandler } from '../../utils/handler'\r\n\r\nconst vibrator = function vibrator (mm: number | number[]) {\r\n try {\r\n return window.navigator.vibrate(mm)\r\n } catch (e) {\r\n console.warn('当前浏览器不支持 vibrate。')\r\n }\r\n}\r\n\r\n/**\r\n * 使手机发生较短时间的振动(15 ms)。仅在 iPhone 7 / 7 Plus 以上及 Android 机型生效\r\n */\r\nexport const vibrateShort: typeof Taro.vibrateShort = ({ success, fail, complete } = {}) => {\r\n const handle = new MethodHandler({ name: 'vibrateShort', success, fail, complete })\r\n if (vibrator(15)) {\r\n return handle.success()\r\n } else {\r\n return handle.fail({ errMsg: 'style is not support' })\r\n }\r\n}\r\n\r\n/**\r\n * 使手机发生较长时间的振动(400 ms)\r\n */\r\nexport const vibrateLong: typeof Taro.vibrateLong = ({ success, fail, complete } = {}) => {\r\n const handle = new MethodHandler({ name: 'vibrateLong', success, fail, complete })\r\n if (vibrator(400)) {\r\n return handle.success()\r\n } else {\r\n return handle.fail({ errMsg: 'style is not support' })\r\n }\r\n}\r\n"],"names":[],"mappings":";;AAIA,MAAM,QAAQ,GAAG,SAAS,QAAQ,CAAE,EAAqB,EAAA;IACvD,IAAI;QACF,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACpC,KAAA;AAAC,IAAA,OAAO,CAAC,EAAE;AACV,QAAA,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;AAClC,KAAA;AACH,CAAC,CAAA;AAED;;AAEG;AACI,MAAM,YAAY,GAA6B,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAI;AACzF,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;AACnF,IAAA,IAAI,QAAQ,CAAC,EAAE,CAAC,EAAE;AAChB,QAAA,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;AACxB,KAAA;AAAM,SAAA;QACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAA;AACvD,KAAA;AACH,EAAC;AAED;;AAEG;AACI,MAAM,WAAW,GAA4B,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAI;AACvF,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;AAClF,IAAA,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE;AACjB,QAAA,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;AACxB,KAAA;AAAM,SAAA;QACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAA;AACvD,KAAA;AACH;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __rest } from 'tslib';
|
|
2
2
|
import './style.scss.js';
|
|
3
|
-
import
|
|
3
|
+
import { stringify } from 'query-string';
|
|
4
4
|
import { MethodHandler } from '../../utils/handler.js';
|
|
5
5
|
|
|
6
6
|
let container = null;
|
|
@@ -16,7 +16,7 @@ function createLocationChooser(handler, key = LOCATION_APIKEY, mapOpt = {}) {
|
|
|
16
16
|
<p class='taro_choose_location_title'>位置</p>
|
|
17
17
|
<button class='taro_choose_location_submit'>完成</button>
|
|
18
18
|
</div>
|
|
19
|
-
<iframe class='taro_choose_location_frame' frameborder='0' src="https://apis.map.qq.com/tools/locpicker?${
|
|
19
|
+
<iframe class='taro_choose_location_frame' frameborder='0' src="https://apis.map.qq.com/tools/locpicker?${stringify(query, { arrayFormat: 'comma', skipNull: true })}" />
|
|
20
20
|
</div>
|
|
21
21
|
`;
|
|
22
22
|
container = document.createElement('div');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chooseLocation.js","sources":["../../../src/api/location/chooseLocation.ts"],"sourcesContent":["import './style.scss'\r\n\r\nimport Taro from '@tarojs/api'\r\nimport
|
|
1
|
+
{"version":3,"file":"chooseLocation.js","sources":["../../../src/api/location/chooseLocation.ts"],"sourcesContent":["import './style.scss'\r\n\r\nimport Taro from '@tarojs/api'\r\nimport { stringify } from 'query-string'\r\n\r\nimport { MethodHandler } from '../../utils/handler'\r\n\r\nlet container: HTMLDivElement | null = null\r\nfunction createLocationChooser (handler, key = LOCATION_APIKEY, mapOpt: Taro.chooseLocation.Option['mapOpts'] = {}) {\r\n const { latitude, longitude, ...opts } = mapOpt\r\n const query = {\r\n key,\r\n type: 1,\r\n coord: mapOpt.coord ?? [latitude, longitude].every(e => Number(e) >= 0) ? `${latitude},${longitude}` : undefined,\r\n referer: 'myapp',\r\n ...opts\r\n }\r\n if (!container) {\r\n const html = `\r\n<div class='taro_choose_location'>\r\n <div class='taro_choose_location_bar'>\r\n <div class='taro_choose_location_back'></div>\r\n <p class='taro_choose_location_title'>位置</p>\r\n <button class='taro_choose_location_submit'>完成</button>\r\n </div>\r\n <iframe class='taro_choose_location_frame' frameborder='0' src=\"https://apis.map.qq.com/tools/locpicker?${stringify(query, { arrayFormat: 'comma', skipNull: true })}\" />\r\n</div>\r\n`\r\n container = document.createElement('div')\r\n container.innerHTML = html\r\n }\r\n const main: HTMLDivElement = container.querySelector('.taro_choose_location') as HTMLDivElement\r\n\r\n function show () {\r\n setTimeout(() => {\r\n main.style.top = '0'\r\n })\r\n }\r\n\r\n function hide () {\r\n main.style.top = '100%'\r\n }\r\n\r\n function back () {\r\n hide()\r\n handler({ errMsg: 'cancel' })\r\n }\r\n\r\n function submit () {\r\n hide()\r\n handler()\r\n }\r\n\r\n function remove () {\r\n container?.remove()\r\n container = null\r\n window.removeEventListener('popstate', back)\r\n }\r\n\r\n container.querySelector('.taro_choose_location_back')?.addEventListener('click', back)\r\n container.querySelector('.taro_choose_location_submit')?.addEventListener('click', submit)\r\n\r\n window.addEventListener('popstate', back)\r\n\r\n return {\r\n show,\r\n remove,\r\n container,\r\n }\r\n}\r\n\r\n/**\r\n * 打开地图选择位置。\r\n */\r\nexport const chooseLocation: typeof Taro.chooseLocation = ({ success, fail, complete, mapOpts } = {}) => {\r\n const handle = new MethodHandler({ name: 'chooseLocation', success, fail, complete })\r\n return new Promise((resolve, reject) => {\r\n const chooseLocation: Partial<Taro.chooseLocation.SuccessCallbackResult> = {}\r\n if (typeof LOCATION_APIKEY === 'undefined') {\r\n console.warn('chooseLocation api 依赖腾讯地图定位api,需要在 defineConstants 中配置 LOCATION_APIKEY')\r\n return handle.fail({\r\n errMsg: 'LOCATION_APIKEY needed'\r\n }, { resolve, reject })\r\n }\r\n\r\n const key = LOCATION_APIKEY\r\n\r\n const onMessage = event => {\r\n // 接收位置信息,用户选择确认位置点后选点组件会触发该事件,回传用户的位置信息\r\n const loc = event.data\r\n\r\n // 防止其他应用也会向该页面 post 信息,需判断 module 是否为'locationPicker'\r\n if (!loc || loc.module !== 'locationPicker') return\r\n\r\n chooseLocation.name = loc.poiname\r\n chooseLocation.address = loc.poiaddress\r\n chooseLocation.latitude = loc.latlng.lat\r\n chooseLocation.longitude = loc.latlng.lng\r\n }\r\n\r\n const chooser = createLocationChooser(res => {\r\n window.removeEventListener('message', onMessage, false)\r\n setTimeout(() => {\r\n chooser.remove()\r\n }, 300)\r\n if (res) {\r\n return handle.fail(res, { resolve, reject })\r\n } else {\r\n if (chooseLocation.latitude && chooseLocation.longitude) {\r\n return handle.success(chooseLocation, { resolve, reject })\r\n } else {\r\n return handle.fail({}, { resolve, reject })\r\n }\r\n }\r\n }, key, mapOpts)\r\n\r\n document.body.appendChild(chooser.container)\r\n\r\n window.addEventListener('message', onMessage, false)\r\n chooser.show()\r\n })\r\n}\r\n"],"names":[],"mappings":";;;;;AAOA,IAAI,SAAS,GAA0B,IAAI,CAAA;AAC3C,SAAS,qBAAqB,CAAE,OAAO,EAAE,GAAG,GAAG,eAAe,EAAE,MAAA,GAAgD,EAAE,EAAA;;AAChH,IAAA,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAc,GAAA,MAAM,EAAf,IAAI,GAAK,MAAA,CAAA,MAAM,EAAzC,CAAA,UAAA,EAAA,WAAA,CAAgC,CAAS,CAAA;IAC/C,MAAM,KAAK,GACT,MAAA,CAAA,MAAA,CAAA,EAAA,GAAG,EACH,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,CAAA,CAAA,EAAA,GAAA,MAAM,CAAC,KAAK,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAG,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,SAAS,CAAE,CAAA,GAAG,SAAS,EAChH,OAAO,EAAE,OAAO,EAAA,EACb,IAAI,CACR,CAAA;IACD,IAAI,CAAC,SAAS,EAAE;AACd,QAAA,MAAM,IAAI,GAAG,CAAA;;;;;;;AAO2F,0GAAA,EAAA,SAAS,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;;CAErK,CAAA;AACG,QAAA,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;AACzC,QAAA,SAAS,CAAC,SAAS,GAAG,IAAI,CAAA;AAC3B,KAAA;IACD,MAAM,IAAI,GAAmB,SAAS,CAAC,aAAa,CAAC,uBAAuB,CAAmB,CAAA;AAE/F,IAAA,SAAS,IAAI,GAAA;QACX,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;AACtB,SAAC,CAAC,CAAA;KACH;AAED,IAAA,SAAS,IAAI,GAAA;AACX,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAA;KACxB;AAED,IAAA,SAAS,IAAI,GAAA;AACX,QAAA,IAAI,EAAE,CAAA;AACN,QAAA,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;KAC9B;AAED,IAAA,SAAS,MAAM,GAAA;AACb,QAAA,IAAI,EAAE,CAAA;AACN,QAAA,OAAO,EAAE,CAAA;KACV;AAED,IAAA,SAAS,MAAM,GAAA;AACb,QAAA,SAAS,aAAT,SAAS,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAT,SAAS,CAAE,MAAM,EAAE,CAAA;QACnB,SAAS,GAAG,IAAI,CAAA;AAChB,QAAA,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;KAC7C;AAED,IAAA,CAAA,EAAA,GAAA,SAAS,CAAC,aAAa,CAAC,4BAA4B,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AACtF,IAAA,CAAA,EAAA,GAAA,SAAS,CAAC,aAAa,CAAC,8BAA8B,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;AAE1F,IAAA,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAEzC,OAAO;QACL,IAAI;QACJ,MAAM;QACN,SAAS;KACV,CAAA;AACH,CAAC;AAED;;AAEG;AACU,MAAA,cAAc,GAA+B,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,KAAI;AACtG,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;IACrF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;QACrC,MAAM,cAAc,GAAuD,EAAE,CAAA;AAC7E,QAAA,IAAI,OAAO,eAAe,KAAK,WAAW,EAAE;AAC1C,YAAA,OAAO,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAA;YACtF,OAAO,MAAM,CAAC,IAAI,CAAC;AACjB,gBAAA,MAAM,EAAE,wBAAwB;AACjC,aAAA,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;AACxB,SAAA;QAED,MAAM,GAAG,GAAG,eAAe,CAAA;AAE3B,QAAA,MAAM,SAAS,GAAG,KAAK,IAAG;;AAExB,YAAA,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAA;;AAGtB,YAAA,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,gBAAgB;gBAAE,OAAM;AAEnD,YAAA,cAAc,CAAC,IAAI,GAAG,GAAG,CAAC,OAAO,CAAA;AACjC,YAAA,cAAc,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU,CAAA;YACvC,cAAc,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAA;YACxC,cAAc,CAAC,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAA;AAC3C,SAAC,CAAA;AAED,QAAA,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,IAAG;YAC1C,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;YACvD,UAAU,CAAC,MAAK;gBACd,OAAO,CAAC,MAAM,EAAE,CAAA;aACjB,EAAE,GAAG,CAAC,CAAA;AACP,YAAA,IAAI,GAAG,EAAE;AACP,gBAAA,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;AAC7C,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,SAAS,EAAE;AACvD,oBAAA,OAAO,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;AAC3D,iBAAA;AAAM,qBAAA;AACL,oBAAA,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;AAC5C,iBAAA;AACF,aAAA;AACH,SAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;QAEhB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAE5C,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;QACpD,OAAO,CAAC,IAAI,EAAE,CAAA;AAChB,KAAC,CAAC,CAAA;AACJ;;;;"}
|
|
@@ -16,7 +16,7 @@ const getLocationByW3CApi = (options) => {
|
|
|
16
16
|
const handle = new MethodHandler({ name: 'getLocation', success, fail, complete });
|
|
17
17
|
// const defaultMaximumAge = 5 * 1000
|
|
18
18
|
const positionOptions = {
|
|
19
|
-
enableHighAccuracy: options.isHighAccuracy || (options.altitude != null),
|
|
19
|
+
enableHighAccuracy: options.isHighAccuracy || (options.altitude != null),
|
|
20
20
|
// maximumAge: defaultMaximumAge, // 允许取多久以内的缓存位置
|
|
21
21
|
timeout: options.highAccuracyExpireTime // 高精度定位超时时间
|
|
22
22
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLocation.js","sources":["../../../src/api/location/getLocation.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { processOpenApi, shouldBeObject } from '../../utils'\nimport { MethodHandler } from '../../utils/handler'\nimport { isGeolocationSupported } from './utils'\n\nconst getLocationByW3CApi: (options: Taro.getLocation.Option) => Promise<Taro.getLocation.SuccessCallbackResult> = (options: Taro.getLocation.Option): Promise<Taro.getLocation.SuccessCallbackResult> => {\n // 断言 options 必须是 Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `getLocation:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n // 解构回调函数\n const { success, fail, complete } = options\n\n const handle = new MethodHandler({ name: 'getLocation', success, fail, complete })\n\n // const defaultMaximumAge = 5 * 1000\n\n const positionOptions: PositionOptions = {\n enableHighAccuracy: options.isHighAccuracy || (options.altitude != null), // 海拔定位需要高精度\n // maximumAge: defaultMaximumAge, // 允许取多久以内的缓存位置\n timeout: options.highAccuracyExpireTime // 高精度定位超时时间\n }\n\n // Web端API实现暂时仅支持GPS坐标系\n if (options.type?.toUpperCase() !== 'WGS84') {\n return handle.fail({\n errMsg: 'This coordinate system type is not temporarily supported'\n })\n }\n\n // 判断当前浏览器是否支持位置API\n if (!isGeolocationSupported()) {\n return handle.fail({\n errMsg: 'The current browser does not support this feature'\n })\n }\n\n // 开始获取位置\n return new Promise<Taro.getLocation.SuccessCallbackResult>(\n (resolve, reject) => {\n navigator.geolocation.getCurrentPosition(\n (position) => {\n const result: Taro.getLocation.SuccessCallbackResult = {\n /** 位置的精确度 */\n accuracy: position.coords.accuracy,\n /** 高度,单位 m */\n altitude: position.coords.altitude!,\n /** 水平精度,单位 m */\n horizontalAccuracy: position.coords.accuracy,\n /** 纬度,范围为 -90~90,负数表示南纬 */\n latitude: position.coords.latitude,\n /** 经度,范围为 -180~180,负数表示西经 */\n longitude: position.coords.longitude,\n /** 速度,单位 m/s */\n speed: position.coords.speed!,\n /** 垂直精度,单位 m(Android 无法获取,返回 0) */\n verticalAccuracy: position.coords.altitudeAccuracy || 0,\n /** 调用结果,自动补充 */\n errMsg: ''\n }\n handle.success(result, { resolve, reject })\n },\n (error) => {\n handle.fail({ errMsg: error.message }, { resolve, reject })\n },\n positionOptions\n )\n }\n )\n}\n\nexport const getLocation = /* @__PURE__ */ processOpenApi({\n name: 'getLocation',\n standardMethod: getLocationByW3CApi\n})\n"],"names":[],"mappings":";;;;AAMA,MAAM,mBAAmB,GAA0F,CAAC,OAAgC,KAAqD;;;AAEvM,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAoB,iBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC1D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"getLocation.js","sources":["../../../src/api/location/getLocation.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { processOpenApi, shouldBeObject } from '../../utils'\nimport { MethodHandler } from '../../utils/handler'\nimport { isGeolocationSupported } from './utils'\n\nconst getLocationByW3CApi: (options: Taro.getLocation.Option) => Promise<Taro.getLocation.SuccessCallbackResult> = (options: Taro.getLocation.Option): Promise<Taro.getLocation.SuccessCallbackResult> => {\n // 断言 options 必须是 Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `getLocation:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n // 解构回调函数\n const { success, fail, complete } = options\n\n const handle = new MethodHandler({ name: 'getLocation', success, fail, complete })\n\n // const defaultMaximumAge = 5 * 1000\n\n const positionOptions: PositionOptions = {\n enableHighAccuracy: options.isHighAccuracy || (options.altitude != null), // 海拔定位需要高精度\n // maximumAge: defaultMaximumAge, // 允许取多久以内的缓存位置\n timeout: options.highAccuracyExpireTime // 高精度定位超时时间\n }\n\n // Web端API实现暂时仅支持GPS坐标系\n if (options.type?.toUpperCase() !== 'WGS84') {\n return handle.fail({\n errMsg: 'This coordinate system type is not temporarily supported'\n })\n }\n\n // 判断当前浏览器是否支持位置API\n if (!isGeolocationSupported()) {\n return handle.fail({\n errMsg: 'The current browser does not support this feature'\n })\n }\n\n // 开始获取位置\n return new Promise<Taro.getLocation.SuccessCallbackResult>(\n (resolve, reject) => {\n navigator.geolocation.getCurrentPosition(\n (position) => {\n const result: Taro.getLocation.SuccessCallbackResult = {\n /** 位置的精确度 */\n accuracy: position.coords.accuracy,\n /** 高度,单位 m */\n altitude: position.coords.altitude!,\n /** 水平精度,单位 m */\n horizontalAccuracy: position.coords.accuracy,\n /** 纬度,范围为 -90~90,负数表示南纬 */\n latitude: position.coords.latitude,\n /** 经度,范围为 -180~180,负数表示西经 */\n longitude: position.coords.longitude,\n /** 速度,单位 m/s */\n speed: position.coords.speed!,\n /** 垂直精度,单位 m(Android 无法获取,返回 0) */\n verticalAccuracy: position.coords.altitudeAccuracy || 0,\n /** 调用结果,自动补充 */\n errMsg: ''\n }\n handle.success(result, { resolve, reject })\n },\n (error) => {\n handle.fail({ errMsg: error.message }, { resolve, reject })\n },\n positionOptions\n )\n }\n )\n}\n\nexport const getLocation = /* @__PURE__ */ processOpenApi({\n name: 'getLocation',\n standardMethod: getLocationByW3CApi\n})\n"],"names":[],"mappings":";;;;AAMA,MAAM,mBAAmB,GAA0F,CAAC,OAAgC,KAAqD;;;AAEvM,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAoB,iBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC1D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAC3B,KAAA;;IAGD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;AAE3C,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;;AAIlF,IAAA,MAAM,eAAe,GAAoB;QACvC,kBAAkB,EAAE,OAAO,CAAC,cAAc,KAAK,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;;AAExE,QAAA,OAAO,EAAE,OAAO,CAAC,sBAAsB;KACxC,CAAA;;IAGD,IAAI,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,IAAI,0CAAE,WAAW,EAAE,MAAK,OAAO,EAAE;QAC3C,OAAO,MAAM,CAAC,IAAI,CAAC;AACjB,YAAA,MAAM,EAAE,0DAA0D;AACnE,SAAA,CAAC,CAAA;AACH,KAAA;;IAGD,IAAI,CAAC,sBAAsB,EAAE,EAAE;QAC7B,OAAO,MAAM,CAAC,IAAI,CAAC;AACjB,YAAA,MAAM,EAAE,mDAAmD;AAC5D,SAAA,CAAC,CAAA;AACH,KAAA;;IAGD,OAAO,IAAI,OAAO,CAChB,CAAC,OAAO,EAAE,MAAM,KAAI;QAClB,SAAS,CAAC,WAAW,CAAC,kBAAkB,CACtC,CAAC,QAAQ,KAAI;AACX,YAAA,MAAM,MAAM,GAA2C;;AAErD,gBAAA,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;;AAElC,gBAAA,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAS;;AAEnC,gBAAA,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;;AAE5C,gBAAA,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;;AAElC,gBAAA,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;;AAEpC,gBAAA,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAM;;AAE7B,gBAAA,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,gBAAgB,IAAI,CAAC;;AAEvD,gBAAA,MAAM,EAAE,EAAE;aACX,CAAA;YACD,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;AAC7C,SAAC,EACD,CAAC,KAAK,KAAI;AACR,YAAA,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;SAC5D,EACD,eAAe,CAChB,CAAA;AACH,KAAC,CACF,CAAA;AACH,CAAC,CAAA;AAEY,MAAA,WAAW,mBAAmB,cAAc,CAAC;AACxD,IAAA,IAAI,EAAE,aAAa;AACnB,IAAA,cAAc,EAAE,mBAAmB;AACpC,CAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locationChange.js","sources":["../../../src/api/location/locationChange.ts"],"sourcesContent":["import { processOpenApi, shouldBeObject } from '../../utils'\nimport { CallbackManager, MethodHandler } from '../../utils/handler'\nimport { isGeolocationSupported } from './utils'\n\nconst _successCbManager = new CallbackManager()\nconst _errorCbManager = new CallbackManager()\nlet _watchID = -1\n\nexport function onLocationChange (callback: Taro.onLocationChange.Callback): void {\n _successCbManager.add(callback)\n}\n\nexport function offLocationChange (callback: Taro.onLocationChange.Callback): void {\n if (callback && typeof callback === 'function') {\n _successCbManager.remove(callback)\n } else if (callback === undefined) {\n _successCbManager.clear()\n } else {\n console.warn('offLocationChange failed')\n }\n}\n\nexport function onLocationChangeError (callback: Taro.onLocationChange.Callback): void {\n _errorCbManager.add(callback)\n}\n\nexport function offLocationChangeError (callback: Taro.onLocationChange.Callback): void {\n if (callback && typeof callback === 'function') {\n _errorCbManager.remove(callback)\n } else if (callback === undefined) {\n _errorCbManager.clear()\n } else {\n console.warn('offLocationChangeError failed')\n }\n}\n\n/**\n * 开始监听位置信息\n * @param opts\n * @returns\n */\nfunction startLocationUpdateByW3CApi (opts: Taro.startLocationUpdate.Option): Promise<TaroGeneral.CallbackResult> {\n// 断言 options 必须是 Object\n const isObject = shouldBeObject(opts)\n if (!isObject.flag) {\n const res = { errMsg: `startLocationUpdate:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const { success, fail, complete } = opts\n const handle = new MethodHandler({ name: 'startLocationUpdate', success, fail, complete })\n\n // 判断当前浏览器是否支持位置API\n if (!isGeolocationSupported()) {\n return handle.fail({\n errMsg: 'The current browser does not support this feature'\n })\n }\n\n try {\n if (_watchID > -1) {\n console.error('startLocationUpdate:fail')\n return handle.fail()\n } else {\n _watchID = navigator.geolocation.watchPosition(({ coords }) => {\n const { latitude, longitude, altitude, accuracy, speed } = coords\n _successCbManager.trigger({\n accuracy,\n altitude,\n horizontalAccuracy: 0,\n verticalAccuracy: 0,\n latitude,\n longitude,\n speed,\n })\n }, err => {\n _errorCbManager.trigger({\n errMsg: 'Watch Position error',\n err\n })\n }, {\n timeout: 10,\n maximumAge: 0,\n enableHighAccuracy: true,\n })\n return handle.success()\n }\n } catch (error) {\n return handle.fail()\n }\n}\n\n/**\n * 停止监听位置信息\n * @param opts\n * @returns\n */\nfunction stopLocationUpdateByW3CApi (opts: Taro.stopLocationUpdate.Option): Promise<TaroGeneral.CallbackResult> {\n const isObject = shouldBeObject(opts)\n if (!isObject.flag) {\n const res = { errMsg: `stopLocationUpdate:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const { success, fail, complete } = opts\n const handle = new MethodHandler({ name: 'stopLocationUpdate', success, fail, complete })\n\n // 判断当前浏览器是否支持位置API\n if (!isGeolocationSupported()) {\n return handle.fail({\n errMsg: 'The current browser does not support this feature'\n })\n }\n\n try {\n navigator.geolocation.clearWatch(_watchID)\n _watchID = -1\n return handle.success()\n } catch (error) {\n return handle.fail()\n }\n}\n\nexport const stopLocationUpdate = /* @__PURE__ */ processOpenApi({\n name: 'stopLocationUpdate',\n standardMethod: stopLocationUpdateByW3CApi\n})\n\nexport const startLocationUpdate = /* @__PURE__ */ processOpenApi({\n name: 'startLocationUpdate',\n standardMethod: startLocationUpdateByW3CApi\n})\n"],"names":[],"mappings":";;;;AAIA,MAAM,iBAAiB,GAAG,IAAI,eAAe,EAAE,CAAA;AAC/C,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;AAC7C,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAA;AAEX,SAAU,gBAAgB,CAAE,QAAwC,EAAA;AACxE,IAAA,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;AACjC,CAAC;AAEK,SAAU,iBAAiB,CAAE,QAAwC,EAAA;AACzE,IAAA,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;AAC9C,QAAA,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"locationChange.js","sources":["../../../src/api/location/locationChange.ts"],"sourcesContent":["import { processOpenApi, shouldBeObject } from '../../utils'\nimport { CallbackManager, MethodHandler } from '../../utils/handler'\nimport { isGeolocationSupported } from './utils'\n\nconst _successCbManager = new CallbackManager()\nconst _errorCbManager = new CallbackManager()\nlet _watchID = -1\n\nexport function onLocationChange (callback: Taro.onLocationChange.Callback): void {\n _successCbManager.add(callback)\n}\n\nexport function offLocationChange (callback: Taro.onLocationChange.Callback): void {\n if (callback && typeof callback === 'function') {\n _successCbManager.remove(callback)\n } else if (callback === undefined) {\n _successCbManager.clear()\n } else {\n console.warn('offLocationChange failed')\n }\n}\n\nexport function onLocationChangeError (callback: Taro.onLocationChange.Callback): void {\n _errorCbManager.add(callback)\n}\n\nexport function offLocationChangeError (callback: Taro.onLocationChange.Callback): void {\n if (callback && typeof callback === 'function') {\n _errorCbManager.remove(callback)\n } else if (callback === undefined) {\n _errorCbManager.clear()\n } else {\n console.warn('offLocationChangeError failed')\n }\n}\n\n/**\n * 开始监听位置信息\n * @param opts\n * @returns\n */\nfunction startLocationUpdateByW3CApi (opts: Taro.startLocationUpdate.Option): Promise<TaroGeneral.CallbackResult> {\n// 断言 options 必须是 Object\n const isObject = shouldBeObject(opts)\n if (!isObject.flag) {\n const res = { errMsg: `startLocationUpdate:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const { success, fail, complete } = opts\n const handle = new MethodHandler({ name: 'startLocationUpdate', success, fail, complete })\n\n // 判断当前浏览器是否支持位置API\n if (!isGeolocationSupported()) {\n return handle.fail({\n errMsg: 'The current browser does not support this feature'\n })\n }\n\n try {\n if (_watchID > -1) {\n console.error('startLocationUpdate:fail')\n return handle.fail()\n } else {\n _watchID = navigator.geolocation.watchPosition(({ coords }) => {\n const { latitude, longitude, altitude, accuracy, speed } = coords\n _successCbManager.trigger({\n accuracy,\n altitude,\n horizontalAccuracy: 0,\n verticalAccuracy: 0,\n latitude,\n longitude,\n speed,\n })\n }, err => {\n _errorCbManager.trigger({\n errMsg: 'Watch Position error',\n err\n })\n }, {\n timeout: 10,\n maximumAge: 0,\n enableHighAccuracy: true,\n })\n return handle.success()\n }\n } catch (error) {\n return handle.fail()\n }\n}\n\n/**\n * 停止监听位置信息\n * @param opts\n * @returns\n */\nfunction stopLocationUpdateByW3CApi (opts: Taro.stopLocationUpdate.Option): Promise<TaroGeneral.CallbackResult> {\n const isObject = shouldBeObject(opts)\n if (!isObject.flag) {\n const res = { errMsg: `stopLocationUpdate:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const { success, fail, complete } = opts\n const handle = new MethodHandler({ name: 'stopLocationUpdate', success, fail, complete })\n\n // 判断当前浏览器是否支持位置API\n if (!isGeolocationSupported()) {\n return handle.fail({\n errMsg: 'The current browser does not support this feature'\n })\n }\n\n try {\n navigator.geolocation.clearWatch(_watchID)\n _watchID = -1\n return handle.success()\n } catch (error) {\n return handle.fail()\n }\n}\n\nexport const stopLocationUpdate = /* @__PURE__ */ processOpenApi({\n name: 'stopLocationUpdate',\n standardMethod: stopLocationUpdateByW3CApi\n})\n\nexport const startLocationUpdate = /* @__PURE__ */ processOpenApi({\n name: 'startLocationUpdate',\n standardMethod: startLocationUpdateByW3CApi\n})\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import styleInject from '../../node_modules/.pnpm/
|
|
1
|
+
import styleInject from '../../node_modules/.pnpm/registry.npmjs.org_style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.js';
|
|
2
2
|
|
|
3
3
|
var css_248z = ".taro_choose_location{background-color:#fff;display:flex;flex-direction:column;height:100%;position:fixed;top:100%;transition:top .3s ease;width:100%;z-index:1}.taro_choose_location_bar{background-color:#ededed;color:#090909;display:flex;flex:0 95px;height:95px}.taro_choose_location_back{flex:0 45px;height:30px;margin-top:30px;position:relative;width:33px}.taro_choose_location_back:before{border:15px solid transparent;border-right-color:#090909;content:\"\";display:block;height:0;left:0;position:absolute;top:0;width:0}.taro_choose_location_back:after{border:15px solid transparent;border-right-color:#ededed;content:\"\";display:block;height:0;left:3px;position:absolute;top:0;width:0}.taro_choose_location_title{flex:1;line-height:95px;padding-left:30px}.taro_choose_location_submit{background-color:#08bf62;border:none;color:#fff;font-size:28px;height:60px;line-height:60px;margin:18px 30px 0 0;padding:0;width:110px}.taro_choose_location_frame{flex:1}";
|
|
4
4
|
var stylesheet=".taro_choose_location{background-color:#fff;display:flex;flex-direction:column;height:100%;position:fixed;top:100%;transition:top .3s ease;width:100%;z-index:1}.taro_choose_location_bar{background-color:#ededed;color:#090909;display:flex;flex:0 95px;height:95px}.taro_choose_location_back{flex:0 45px;height:30px;margin-top:30px;position:relative;width:33px}.taro_choose_location_back:before{border:15px solid transparent;border-right-color:#090909;content:\"\";display:block;height:0;left:0;position:absolute;top:0;width:0}.taro_choose_location_back:after{border:15px solid transparent;border-right-color:#ededed;content:\"\";display:block;height:0;left:3px;position:absolute;top:0;width:0}.taro_choose_location_title{flex:1;line-height:95px;padding-left:30px}.taro_choose_location_submit{background-color:#08bf62;border:none;color:#fff;font-size:28px;height:60px;line-height:60px;margin:18px 30px 0 0;padding:0;width:110px}.taro_choose_location_frame{flex:1}";
|
|
@@ -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 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 () {\n const { currentTime = 0, buffered: timeRange } = this.Instance || {}\n if (timeRange) {\n for (let i = 0; i < timeRange.length; i++) {\n if (timeRange.start(i) <= currentTime && timeRange.end(i) >= currentTime) {\n return timeRange.end(i)\n }\n }\n }\n return 0\n }\n\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: Taro.InnerAudioContext.OnCanplayCallback = () => {}) => this.Instance?.addEventListener('canplay', callback as any)\n onPlay = (callback: Taro.InnerAudioContext.OnPlayCallback = () => {}) => this.Instance?.addEventListener('play', callback as any)\n onPause = (callback: Taro.InnerAudioContext.OnPauseCallback = () => {}) => this.Instance?.addEventListener('pause', callback as any)\n onStop = (callback: Taro.InnerAudioContext.OnStopCallback = () => {}) => this.stopStack.add(callback)\n onEnded = (callback: Taro.InnerAudioContext.OnEndedCallback = () => {}) => this.Instance?.addEventListener('ended', callback as any)\n onTimeUpdate = (callback: Taro.InnerAudioContext.OnTimeUpdateCallback = () => {}) => this.Instance?.addEventListener('timeupdate', callback as any)\n onError = (callback: Taro.InnerAudioContext.OnErrorCallback) => this.errorStack.add(callback)\n onWaiting = (callback: Taro.InnerAudioContext.OnWaitingCallback = () => {}) => this.Instance?.addEventListener('waiting', callback as any)\n onSeeking = (callback: Taro.InnerAudioContext.OnSeekingCallback = () => {}) => this.Instance?.addEventListener('seeking', callback as any)\n onSeeked = (callback: Taro.InnerAudioContext.OnSeekedCallback = () => {}) => this.Instance?.addEventListener('seeked', callback as any)\n offCanplay = (callback: Taro.InnerAudioContext.OnCanplayCallback = () => {}) => this.Instance?.removeEventListener('canplay', callback as any)\n offPlay = (callback: Taro.InnerAudioContext.OnPlayCallback = () => {}) => this.Instance?.removeEventListener('play', callback as any)\n offPause = (callback: Taro.InnerAudioContext.OnPauseCallback = () => {}) => this.Instance?.removeEventListener('pause', callback as any)\n offStop = (callback: Taro.InnerAudioContext.OnStopCallback = () => {}) => this.stopStack.remove(callback)\n offEnded = (callback: Taro.InnerAudioContext.OnEndedCallback = () => {}) => this.Instance?.removeEventListener('ended', callback as any)\n offTimeUpdate = (callback: Taro.InnerAudioContext.OnTimeUpdateCallback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback as any)\n offError = (callback: Taro.InnerAudioContext.OnErrorCallback = () => {}) => this.errorStack.remove(callback)\n offWaiting = (callback: Taro.InnerAudioContext.OnWaitingCallback = () => {}) => this.Instance?.removeEventListener('waiting', callback as any)\n offSeeking = (callback: Taro.InnerAudioContext.OnSeekingCallback = () => {}) => this.Instance?.removeEventListener('seeking', callback as any)\n offSeeked = (callback: Taro.InnerAudioContext.OnSeekedCallback = () => {}) => this.Instance?.removeEventListener('seeked', callback as any)\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 () {\n const { currentTime = 0, buffered: timeRange } = this.Instance || {}\n if (timeRange) {\n for (let i = 0; i < timeRange.length; i++) {\n if (timeRange.start(i) <= currentTime && timeRange.end(i) >= currentTime) {\n return timeRange.end(i)\n }\n }\n }\n return 0\n }\n\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: Taro.InnerAudioContext.OnCanplayCallback = () => {}) => this.Instance?.addEventListener('canplay', callback as any)\n onPlay = (callback: Taro.InnerAudioContext.OnPlayCallback = () => {}) => this.Instance?.addEventListener('play', callback as any)\n onPause = (callback: Taro.InnerAudioContext.OnPauseCallback = () => {}) => this.Instance?.addEventListener('pause', callback as any)\n onStop = (callback: Taro.InnerAudioContext.OnStopCallback = () => {}) => this.stopStack.add(callback)\n onEnded = (callback: Taro.InnerAudioContext.OnEndedCallback = () => {}) => this.Instance?.addEventListener('ended', callback as any)\n onTimeUpdate = (callback: Taro.InnerAudioContext.OnTimeUpdateCallback = () => {}) => this.Instance?.addEventListener('timeupdate', callback as any)\n onError = (callback: Taro.InnerAudioContext.OnErrorCallback) => this.errorStack.add(callback)\n onWaiting = (callback: Taro.InnerAudioContext.OnWaitingCallback = () => {}) => this.Instance?.addEventListener('waiting', callback as any)\n onSeeking = (callback: Taro.InnerAudioContext.OnSeekingCallback = () => {}) => this.Instance?.addEventListener('seeking', callback as any)\n onSeeked = (callback: Taro.InnerAudioContext.OnSeekedCallback = () => {}) => this.Instance?.addEventListener('seeked', callback as any)\n offCanplay = (callback: Taro.InnerAudioContext.OnCanplayCallback = () => {}) => this.Instance?.removeEventListener('canplay', callback as any)\n offPlay = (callback: Taro.InnerAudioContext.OnPlayCallback = () => {}) => this.Instance?.removeEventListener('play', callback as any)\n offPause = (callback: Taro.InnerAudioContext.OnPauseCallback = () => {}) => this.Instance?.removeEventListener('pause', callback as any)\n offStop = (callback: Taro.InnerAudioContext.OnStopCallback = () => {}) => this.stopStack.remove(callback)\n offEnded = (callback: Taro.InnerAudioContext.OnEndedCallback = () => {}) => this.Instance?.removeEventListener('ended', callback as any)\n offTimeUpdate = (callback: Taro.InnerAudioContext.OnTimeUpdateCallback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback as any)\n offError = (callback: Taro.InnerAudioContext.OnErrorCallback = () => {}) => this.errorStack.remove(callback)\n offWaiting = (callback: Taro.InnerAudioContext.OnWaitingCallback = () => {}) => this.Instance?.removeEventListener('waiting', callback as any)\n offSeeking = (callback: Taro.InnerAudioContext.OnSeekingCallback = () => {}) => this.Instance?.removeEventListener('seeking', callback as any)\n offSeeked = (callback: Taro.InnerAudioContext.OnSeekedCallback = () => {}) => this.Instance?.removeEventListener('seeked', callback as any)\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -38,7 +38,7 @@ declare class BackgroundAudioManager implements Taro.BackgroundAudioManager {
|
|
|
38
38
|
stop: () => void;
|
|
39
39
|
onCanplay: (callback?: () => void) => void | undefined;
|
|
40
40
|
onWaiting: (callback?: () => void) => void | undefined;
|
|
41
|
-
onError: (callback?: ((res: Taro.InnerAudioContext.onErrorDetail) => void)) => void;
|
|
41
|
+
onError: (callback?: ((res: Taro.InnerAudioContext.onErrorDetail) => void) | undefined) => void;
|
|
42
42
|
onPlay: (callback?: () => void) => void | undefined;
|
|
43
43
|
onPause: (callback?: () => void) => void | undefined;
|
|
44
44
|
onSeeking: (callback?: () => void) => void | undefined;
|
|
@@ -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.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 () {\n const { currentTime = 0, buffered: timeRange } = this.Instance || {}\n if (timeRange) {\n for (let i = 0; i < timeRange.length; i++) {\n if (timeRange.start(i) <= currentTime && timeRange.end(i) >= currentTime) {\n return timeRange.end(i)\n }\n }\n }\n return 0\n }\n\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 () {\n const { currentTime = 0, buffered: timeRange } = this.Instance || {}\n if (timeRange) {\n for (let i = 0; i < timeRange.length; i++) {\n if (timeRange.start(i) <= currentTime && timeRange.end(i) >= currentTime) {\n return timeRange.end(i)\n }\n }\n }\n return 0\n }\n\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":";;;MAKa,sBAAsB,CAAA;AAMjC,IAAA,WAAA,GAAA;QAFA,IAAW,CAAA,WAAA,GAAG,CAAC,CAAA;AA+Df,QAAA,IAAA,CAAA,IAAI,GAAG,MAAK,EAAA,IAAA,EAAA,CAAA,CAAC,OAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAI,EAAE,CAAA,EAAA,CAAA;AAElC,QAAA,IAAA,CAAA,KAAK,GAAG,MAAK,EAAA,IAAA,EAAA,CAAA,CAAC,OAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,EAAE,CAAA,EAAA,CAAA;AAEpC,QAAA,IAAA,CAAA,IAAI,GAAG,CAAC,QAAgB,KAAI;YAC1B,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAA;AACrC,aAAA;AACH,SAAC,CAAA;QAED,IAAI,CAAA,IAAA,GAAG,MAAK;YACV,IAAI,CAAC,KAAK,EAAE,CAAA;AACZ,YAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACZ,YAAA,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAA;AAC1B,SAAC,CAAA;QAED,IAAS,CAAA,SAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QACzF,IAAS,CAAA,SAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;AACzF,QAAA,IAAA,CAAA,OAAO,GAAG,CAAC,QAAgE,KAAK,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC7G,IAAM,CAAA,MAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QACnF,IAAO,CAAA,OAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QACrF,IAAS,CAAA,SAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QACzF,IAAQ,CAAA,QAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QAEvF,IAAO,CAAA,OAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;AACrF,QAAA,IAAA,CAAA,MAAM,GAAG,CAAC,QAAQ,GAAG,SAAQ,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC9D,IAAY,CAAA,YAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;AAC/F,QAAA,IAAA,CAAA,MAAM,GAAG,qBAAqB,CAAC,+BAA+B,CAAC,CAAA;AAC/D,QAAA,IAAA,CAAA,MAAM,GAAG,qBAAqB,CAAC,+BAA+B,CAAC,CAAA;QAE/D,IAAU,CAAA,UAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QAC7F,IAAU,CAAA,UAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;AAC7F,QAAA,IAAA,CAAA,QAAQ,GAAG,CAAC,QAAQ,GAAG,SAAQ,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACpE,IAAO,CAAA,OAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QACvF,IAAQ,CAAA,QAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QACzF,IAAU,CAAA,UAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QAC7F,IAAS,CAAA,SAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;QAE3F,IAAQ,CAAA,QAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;AACzF,QAAA,IAAA,CAAA,OAAO,GAAG,CAAC,QAAQ,GAAG,SAAQ,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAClE,IAAa,CAAA,aAAA,GAAG,CAAC,QAAQ,GAAG,MAAO,GAAC,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA;AACnG,QAAA,IAAA,CAAA,OAAO,GAAG,qBAAqB,CAAC,gCAAgC,CAAC,CAAA;AACjE,QAAA,IAAA,CAAA,OAAO,GAAG,qBAAqB,CAAC,gCAAgC,CAAC,CAAA;AAtG/D,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,KAAK,EAAE,CAAA;AAC3B,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;AACvC,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,EAAE,CAAA;QACtC,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAA;AAC/C,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAA;AAC7B,QAAA,IAAI,CAAC,MAAM,CAAC,MAAK;AACf,YAAA,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,SAAS,EAAE;AACvC,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AAC1B,aAAA;AACH,SAAC,CAAC,CAAA;KACH;AAED,IAAA,IAAI,GAAG,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA,EAAE;AAC1C,IAAA,IAAI,GAAG,GAAA,EAAA,IAAA,EAAA,CAAA,CAAM,OAAO,CAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,GAAG,KAAI,EAAE,CAAA,EAAE;IAC9C,IAAI,SAAS,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAA,EAAE;IAC1C,IAAI,SAAS,GAAM,EAAA,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,CAAA,EAAE;AACjD,IAAA,IAAI,KAAK,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA,EAAE;AAC1C,IAAA,IAAI,KAAK,GAAM,EAAA,IAAA,EAAA,CAAA,CAAA,OAAO,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC,KAAK,KAAI,EAAE,CAAA,EAAE;AAC1D,IAAA,IAAI,MAAM,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA,EAAE;AAC5C,IAAA,IAAI,MAAM,GAAM,EAAA,IAAA,EAAA,CAAA,CAAA,OAAO,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC,MAAM,KAAI,EAAE,CAAA,EAAE;AAC5D,IAAA,IAAI,MAAM,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA,EAAE;AAC5C,IAAA,IAAI,MAAM,GAAM,EAAA,IAAA,EAAA,CAAA,CAAA,OAAO,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC,MAAM,KAAI,EAAE,CAAA,EAAE;AAC5D,IAAA,IAAI,WAAW,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAA,EAAE;AACtD,IAAA,IAAI,WAAW,GAAM,EAAA,IAAA,EAAA,CAAA,CAAA,OAAO,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC,WAAW,KAAI,EAAE,CAAA,EAAE;AACtE,IAAA,IAAI,MAAM,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA,EAAE;AAC5C,IAAA,IAAI,MAAM,GAAM,EAAA,IAAA,EAAA,CAAA,CAAA,OAAO,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC,MAAM,KAAI,EAAE,CAAA,EAAE;AAC5D,IAAA,IAAI,QAAQ,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA,EAAE;AAChD,IAAA,IAAI,QAAQ,GAAM,EAAA,IAAA,EAAA,CAAA,CAAA,OAAO,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC,QAAQ,KAAI,EAAE,CAAA,EAAE;AAChE,IAAA,IAAI,YAAY,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA,EAAE;AAC5D,IAAA,IAAI,YAAY,GAAA,EAAA,IAAA,EAAA,CAAA,CAAM,OAAO,CAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,YAAY,KAAI,CAAC,CAAA,EAAE;AAC/D,IAAA,IAAI,QAAQ,GAAA,EAAA,IAAA,EAAA,CAAA,CAAM,OAAO,CAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,QAAQ,KAAI,CAAC,CAAA,EAAE;AACvD,IAAA,IAAI,WAAW,GAAA,EAAA,IAAA,EAAA,CAAA,CAAM,OAAO,CAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,WAAW,KAAI,CAAC,CAAA,EAAE;AAC7D,IAAA,IAAI,MAAM,GAAA,EAAA,IAAA,EAAA,CAAA,CAAM,OAAO,CAAA,MAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,KAAI,KAAK,CAAA,EAAE;AACvD,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,MAAM,EAAE,WAAW,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAA;AACpE,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACzC,gBAAA,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,WAAW,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE;AACxE,oBAAA,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AACxB,iBAAA;AACF,aAAA;AACF,SAAA;AACD,QAAA,OAAO,CAAC,CAAA;KACT;AAED,IAAA,IAAI,cAAc,CAAE,CAAC,EAAI,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAY,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAA,EAAE;AAC3E,IAAA,IAAI,cAAc,GAAM,EAAA,IAAA,EAAA,CAAA,CAAA,OAAO,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAY,CAAC,gBAAgB,CAAC,KAAI,QAAQ,CAAA,EAAE;IAElF,WAAW,CAAE,GAAW,EAAE,KAAc,EAAA;QAC9C,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAC3B,SAAA;KACF;IAEO,OAAO,CAAE,GAAW,EAAE,KAAa,EAAA;QACzC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AACnC,SAAA;KACF;AA6CF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chooseImage.js","sources":["../../../../src/api/media/image/chooseImage.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { shouldBeObject } from '../../../utils'\nimport { chooseMedia } from '../video/chooseMedia'\n\n/**\n * 从本地相册选择图片或使用相机拍照。\n * @deprecated 请使用 chooseMedia 接口\n */\nexport const chooseImage: typeof Taro.chooseImage = function (options) {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `chooseImage:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n let camera = 'back'\n const {\n sourceType = ['album', 'camera'],\n success,\n complete,\n fail,\n ...args\n } = options\n if (sourceType.includes('camera') && sourceType.indexOf('user') > -1) {\n camera = 'front'\n }\n\n function parseRes (res: Taro.chooseMedia.SuccessCallbackResult): Taro.chooseImage.SuccessCallbackResult {\n const { tempFiles = [], errMsg } = res\n return {\n tempFilePaths: tempFiles.map(item => item.tempFilePath),\n tempFiles: tempFiles.map(item => ({\n path: item.tempFilePath,\n size: item.size,\n type: item.fileType,\n originalFileObj: item.originalFileObj,\n })),\n errMsg,\n }\n }\n\n return chooseMedia({\n mediaId: 'taroChooseImage',\n ...args,\n sourceType: sourceType as Taro.chooseMedia.Option['sourceType'],\n mediaType: ['image'],\n camera,\n success: (res) => {\n const param = parseRes(res)\n success?.(param)\n complete?.(param)\n },\n fail: (err) => {\n fail?.(err)\n complete?.(err)\n },\n }, 'chooseImage').then(parseRes)\n}\n"],"names":[],"mappings":";;;;AAKA;;;AAGG;AACI,MAAM,WAAW,GAA4B,UAAU,OAAO,EAAA;;AAEnE,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAoB,iBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC1D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"chooseImage.js","sources":["../../../../src/api/media/image/chooseImage.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { shouldBeObject } from '../../../utils'\nimport { chooseMedia } from '../video/chooseMedia'\n\n/**\n * 从本地相册选择图片或使用相机拍照。\n * @deprecated 请使用 chooseMedia 接口\n */\nexport const chooseImage: typeof Taro.chooseImage = function (options) {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `chooseImage:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n let camera = 'back'\n const {\n sourceType = ['album', 'camera'],\n success,\n complete,\n fail,\n ...args\n } = options\n if (sourceType.includes('camera') && sourceType.indexOf('user') > -1) {\n camera = 'front'\n }\n\n function parseRes (res: Taro.chooseMedia.SuccessCallbackResult): Taro.chooseImage.SuccessCallbackResult {\n const { tempFiles = [], errMsg } = res\n return {\n tempFilePaths: tempFiles.map(item => item.tempFilePath),\n tempFiles: tempFiles.map(item => ({\n path: item.tempFilePath,\n size: item.size,\n type: item.fileType,\n originalFileObj: item.originalFileObj,\n })),\n errMsg,\n }\n }\n\n return chooseMedia({\n mediaId: 'taroChooseImage',\n ...args,\n sourceType: sourceType as Taro.chooseMedia.Option['sourceType'],\n mediaType: ['image'],\n camera,\n success: (res) => {\n const param = parseRes(res)\n success?.(param)\n complete?.(param)\n },\n fail: (err) => {\n fail?.(err)\n complete?.(err)\n },\n }, 'chooseImage').then(parseRes)\n}\n"],"names":[],"mappings":";;;;AAKA;;;AAGG;AACI,MAAM,WAAW,GAA4B,UAAU,OAAO,EAAA;;AAEnE,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAoB,iBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC1D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAC3B,KAAA;IAED,IAAI,MAAM,GAAG,MAAM,CAAA;IACnB,MAAM,EACJ,UAAU,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,EAChC,OAAO,EACP,QAAQ,EACR,IAAI,EAEF,GAAA,OAAO,EADN,IAAI,UACL,OAAO,EANL,CAML,YAAA,EAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA,CAAU,CAAA;AACX,IAAA,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;QACpE,MAAM,GAAG,OAAO,CAAA;AACjB,KAAA;IAED,SAAS,QAAQ,CAAE,GAA2C,EAAA;QAC5D,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,GAAG,CAAA;QACtC,OAAO;AACL,YAAA,aAAa,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC;YACvD,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,KAAK;gBAChC,IAAI,EAAE,IAAI,CAAC,YAAY;gBACvB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,QAAQ;gBACnB,eAAe,EAAE,IAAI,CAAC,eAAe;AACtC,aAAA,CAAC,CAAC;YACH,MAAM;SACP,CAAA;KACF;IAED,OAAO,WAAW,CAChB,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,OAAO,EAAE,iBAAiB,IACvB,IAAI,CAAA,EAAA,EACP,UAAU,EAAE,UAAmD,EAC/D,SAAS,EAAE,CAAC,OAAO,CAAC,EACpB,MAAM,EACN,OAAO,EAAE,CAAC,GAAG,KAAI;AACf,YAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;AAC3B,YAAA,OAAO,aAAP,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAP,OAAO,CAAG,KAAK,CAAC,CAAA;AAChB,YAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,KAAK,CAAC,CAAA;AACnB,SAAC,EACD,IAAI,EAAE,CAAC,GAAG,KAAI;AACZ,YAAA,IAAI,aAAJ,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJ,IAAI,CAAG,GAAG,CAAC,CAAA;AACX,YAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,GAAG,CAAC,CAAA;SAChB,EAAA,CAAA,EACA,aAAa,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAClC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getImageInfo.js","sources":["../../../../src/api/media/image/getImageInfo.ts"],"sourcesContent":["import Taro from '@tarojs/api'\r\n\r\nimport { shouldBeObject } from '../../../utils'\r\nimport { MethodHandler } from '../../../utils/handler'\r\n\r\n/**\r\n * 获取图片信息。网络图片需先配置download域名才能生效。\r\n */\r\nexport const getImageInfo: typeof Taro.getImageInfo = (options) => {\r\n // options must be an Object\r\n const isObject = shouldBeObject(options)\r\n if (!isObject.flag) {\r\n const res = { errMsg: `getImageInfo:fail ${isObject.msg}` }\r\n console.error(res.errMsg)\r\n return Promise.reject(res)\r\n }\r\n\r\n const getBase64Image = (image: HTMLImageElement) => {\r\n try {\r\n const canvas = document.createElement('canvas')\r\n canvas.width = image.width\r\n canvas.height = image.height\r\n const ctx = canvas.getContext('2d')\r\n ctx?.drawImage(image, 0, 0, image.width, image.height)\r\n return canvas.toDataURL('image/png')\r\n } catch (e) {\r\n console.error('getImageInfo:get base64 fail', e)\r\n }\r\n }\r\n\r\n const { src, success, fail, complete } = options\r\n const handle = new MethodHandler({ name: 'getImageInfo', success, fail, complete })\r\n return new Promise((resolve, reject) => {\r\n const image = new Image()\r\n image.crossOrigin = ''\r\n image.onload = () => {\r\n handle.success({\r\n width: image.naturalWidth,\r\n height: image.naturalHeight,\r\n path: getBase64Image(image) || src\r\n }, { resolve, reject })\r\n }\r\n image.onerror = (e: any) => {\r\n handle.fail({\r\n errMsg: e.message\r\n }, { resolve, reject })\r\n }\r\n image.src = src\r\n })\r\n}\r\n"],"names":[],"mappings":";;;AAKA;;AAEG;AACU,MAAA,YAAY,GAA6B,CAAC,OAAO,KAAI;;AAEhE,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAqB,kBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC3D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"getImageInfo.js","sources":["../../../../src/api/media/image/getImageInfo.ts"],"sourcesContent":["import Taro from '@tarojs/api'\r\n\r\nimport { shouldBeObject } from '../../../utils'\r\nimport { MethodHandler } from '../../../utils/handler'\r\n\r\n/**\r\n * 获取图片信息。网络图片需先配置download域名才能生效。\r\n */\r\nexport const getImageInfo: typeof Taro.getImageInfo = (options) => {\r\n // options must be an Object\r\n const isObject = shouldBeObject(options)\r\n if (!isObject.flag) {\r\n const res = { errMsg: `getImageInfo:fail ${isObject.msg}` }\r\n console.error(res.errMsg)\r\n return Promise.reject(res)\r\n }\r\n\r\n const getBase64Image = (image: HTMLImageElement) => {\r\n try {\r\n const canvas = document.createElement('canvas')\r\n canvas.width = image.width\r\n canvas.height = image.height\r\n const ctx = canvas.getContext('2d')\r\n ctx?.drawImage(image, 0, 0, image.width, image.height)\r\n return canvas.toDataURL('image/png')\r\n } catch (e) {\r\n console.error('getImageInfo:get base64 fail', e)\r\n }\r\n }\r\n\r\n const { src, success, fail, complete } = options\r\n const handle = new MethodHandler({ name: 'getImageInfo', success, fail, complete })\r\n return new Promise((resolve, reject) => {\r\n const image = new Image()\r\n image.crossOrigin = ''\r\n image.onload = () => {\r\n handle.success({\r\n width: image.naturalWidth,\r\n height: image.naturalHeight,\r\n path: getBase64Image(image) || src\r\n }, { resolve, reject })\r\n }\r\n image.onerror = (e: any) => {\r\n handle.fail({\r\n errMsg: e.message\r\n }, { resolve, reject })\r\n }\r\n image.src = src\r\n })\r\n}\r\n"],"names":[],"mappings":";;;AAKA;;AAEG;AACU,MAAA,YAAY,GAA6B,CAAC,OAAO,KAAI;;AAEhE,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAqB,kBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC3D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAC3B,KAAA;AAED,IAAA,MAAM,cAAc,GAAG,CAAC,KAAuB,KAAI;QACjD,IAAI;YACF,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;AAC/C,YAAA,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;AAC1B,YAAA,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;YAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YACnC,GAAG,KAAA,IAAA,IAAH,GAAG,KAAH,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,GAAG,CAAE,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;AACtD,YAAA,OAAO,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;AACrC,SAAA;AAAC,QAAA,OAAO,CAAC,EAAE;AACV,YAAA,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,CAAC,CAAC,CAAA;AACjD,SAAA;AACH,KAAC,CAAA;IAED,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;AAChD,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;IACnF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,QAAA,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAA;AACzB,QAAA,KAAK,CAAC,WAAW,GAAG,EAAE,CAAA;AACtB,QAAA,KAAK,CAAC,MAAM,GAAG,MAAK;YAClB,MAAM,CAAC,OAAO,CAAC;gBACb,KAAK,EAAE,KAAK,CAAC,YAAY;gBACzB,MAAM,EAAE,KAAK,CAAC,aAAa;AAC3B,gBAAA,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,IAAI,GAAG;AACnC,aAAA,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;AACzB,SAAC,CAAA;AACD,QAAA,KAAK,CAAC,OAAO,GAAG,CAAC,CAAM,KAAI;YACzB,MAAM,CAAC,IAAI,CAAC;gBACV,MAAM,EAAE,CAAC,CAAC,OAAO;AAClB,aAAA,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;AACzB,SAAC,CAAA;AACD,QAAA,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;AACjB,KAAC,CAAC,CAAA;AACJ;;;;"}
|
|
@@ -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 { 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":";;;;;;;AAYA;;AAEG;AAEH;;AAEG;AACU,MAAA,YAAY,GAA6B,CAAO,OAAO,KAAI,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;;AAEtE,IAAA,iCAAiC,EAAE,CAAA;AACnC,IAAA,qCAAqC,EAAE,CAAA;AAEvC,IAAA,SAAS,SAAS,CAAE,GAAW,EAAE,QAAqB,EAAA;AACpD,QAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAI;YAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAA;AAC5D,YAAA,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,0EAA0E,CAAA;AAC/F,YAAA,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAA;AACzB,YAAA,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAA;AAC7B,YAAA,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;YACf,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;AACzC,YAAA,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;AAC1C,YAAA,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,wFAAwF,CAAA;AAC5G,YAAA,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;AACtB,YAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;;YAErB,OAAO,CAAC,IAAI,CAAC,CAAA;AACb,YAAA,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;gBACxB,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,GAAG,KAAI;oBACtC,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;AACnC,iBAAC,CAAC,CAAA;
|
|
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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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saveImageToPhotosAlbum.js","sources":["../../../../src/api/media/image/saveImageToPhotosAlbum.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { createDownload, getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\nexport const saveImageToPhotosAlbum: typeof Taro.saveImageToPhotosAlbum = (options) => {\n const methodName = 'saveImageToPhotosAlbum'\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${methodName}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const {\n filePath,\n success,\n fail,\n complete,\n } = options\n const handle = new MethodHandler({ name: methodName, success, fail, complete })\n if (typeof filePath !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'filePath',\n correct: 'String',\n wrong: filePath\n })\n })\n }\n\n createDownload(filePath)\n return handle.success()\n}\n"],"names":[],"mappings":";;;;AAKa,MAAA,sBAAsB,GAAuC,CAAC,OAAO,KAAI;IACpF,MAAM,UAAU,GAAG,wBAAwB,CAAA;;AAE3C,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AAClB,QAAA,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAA,EAAG,UAAU,CAAA,MAAA,EAAS,QAAQ,CAAC,GAAG,CAAA,CAAE,EAAE,CAAA;AAC5D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"saveImageToPhotosAlbum.js","sources":["../../../../src/api/media/image/saveImageToPhotosAlbum.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { createDownload, getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\nexport const saveImageToPhotosAlbum: typeof Taro.saveImageToPhotosAlbum = (options) => {\n const methodName = 'saveImageToPhotosAlbum'\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${methodName}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const {\n filePath,\n success,\n fail,\n complete,\n } = options\n const handle = new MethodHandler({ name: methodName, success, fail, complete })\n if (typeof filePath !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'filePath',\n correct: 'String',\n wrong: filePath\n })\n })\n }\n\n createDownload(filePath)\n return handle.success()\n}\n"],"names":[],"mappings":";;;;AAKa,MAAA,sBAAsB,GAAuC,CAAC,OAAO,KAAI;IACpF,MAAM,UAAU,GAAG,wBAAwB,CAAA;;AAE3C,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AAClB,QAAA,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAA,EAAG,UAAU,CAAA,MAAA,EAAS,QAAQ,CAAC,GAAG,CAAA,CAAE,EAAE,CAAA;AAC5D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAC3B,KAAA;IAED,MAAM,EACJ,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,QAAQ,GACT,GAAG,OAAO,CAAA;AACX,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;AAC/E,IAAA,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAChC,OAAO,MAAM,CAAC,IAAI,CAAC;YACjB,MAAM,EAAE,iBAAiB,CAAC;AACxB,gBAAA,IAAI,EAAE,UAAU;AAChB,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,KAAK,EAAE,QAAQ;aAChB,CAAC;AACH,SAAA,CAAC,CAAA;AACH,KAAA;IAED,cAAc,CAAC,QAAQ,CAAC,CAAA;AACxB,IAAA,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;AACzB;;;;"}
|
|
@@ -8,9 +8,9 @@ import { showActionSheet } from '../../ui/interaction/index.js';
|
|
|
8
8
|
/**
|
|
9
9
|
* 拍摄或从手机相册中选择图片或视频。
|
|
10
10
|
*/
|
|
11
|
-
const chooseMedia = function (
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
const chooseMedia = function (options, methodName = 'chooseMedia') {
|
|
12
|
+
var _a;
|
|
13
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
14
14
|
// options must be an Object
|
|
15
15
|
const isObject = shouldBeObject(options);
|
|
16
16
|
if (!isObject.flag) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chooseMedia.js","sources":["../../../../src/api/media/video/chooseMedia.ts"],"sourcesContent":["import Taro from '@tarojs/api'\nimport { isMobile } from 'is-mobile'\n\nimport { showActionSheet } from '../../../api/ui'\nimport { getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\n/**\n * 拍摄或从手机相册中选择图片或视频。\n */\nexport const chooseMedia = async function (\n options: Taro.chooseMedia.Option,\n methodName = 'chooseMedia',\n): Promise<Taro.chooseMedia.SuccessCallbackResult> {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${methodName}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const {\n count = 9,\n mediaId = 'taroChooseMedia',\n mediaType = ['image', 'video'],\n sourceType = ['album', 'camera'],\n // sizeType = ['original', 'compressed'], // TODO 考虑通过 ffmpeg 支持压缩\n // maxDuration = 10, // TODO 考虑通过 ffmpeg 剪裁视频\n camera = 'back',\n success,\n fail,\n complete,\n } = options\n const handle = new MethodHandler({ name: methodName, success, fail, complete })\n const withImage = mediaType.length < 1 || mediaType.indexOf('image') > -1\n const withVideo = mediaType.length < 1 || mediaType.indexOf('video') > -1\n const res: Partial<Taro.chooseMedia.SuccessCallbackResult> = {\n tempFiles: [],\n type: withImage && withVideo ? 'mix' : withImage ? 'image' : 'video',\n }\n\n if (count && typeof count !== 'number') {\n res.errMsg = getParameterError({\n para: 'count',\n correct: 'Number',\n wrong: count\n })\n return handle.fail(res)\n }\n\n let el = document.getElementById(mediaId)\n if (!el) {\n el = document.createElement('input')\n el.setAttribute('type', 'file')\n el.setAttribute('id', mediaId)\n el.setAttribute('style', 'position: fixed; top: -4000px; left: -3000px; z-index: -300;')\n }\n\n if (count > 1) {\n el.setAttribute('multiple', 'multiple')\n } else {\n el.removeAttribute('multiple')\n }\n\n // Note: Input 仅在移动端支持 capture 属性,可以使用 getUserMedia 替代(暂不考虑)\n if (isMobile()) {\n if (sourceType.length > 1 || sourceType.length < 1) {\n try {\n const { tapIndex } = await showActionSheet({\n itemList: ['拍摄', '从相册选择'],\n }, methodName)\n sourceType.splice(0, sourceType.length, tapIndex === 0 ? 'camera' : 'album')\n } catch (e) {\n return handle.fail({\n errMsg: e.errMsg?.replace('^.*:fail ', '')\n })\n }\n }\n }\n if (sourceType.includes('camera')) {\n el.setAttribute('capture', camera === 'front' ? 'user' : 'environment')\n } else {\n el.removeAttribute('capture')\n }\n\n if (res.type === 'image') {\n el.setAttribute('accept', 'image/*')\n } else if (res.type === 'video') {\n el.setAttribute('accept', 'video/*')\n } else {\n el.setAttribute('accept', 'image/*, video/*')\n }\n return new Promise<Taro.chooseMedia.SuccessCallbackResult>((resolve, reject) => {\n if (!el) return\n document.body.appendChild(el)\n el.onchange = async function (e) {\n const target = e.target as HTMLInputElement\n if (target) {\n const files = target.files || []\n const arr = [...files]\n await Promise.all(\n arr.map(async item => {\n try {\n res.tempFiles?.push(await loadMedia(item))\n } catch (error) {\n console.error(error)\n }\n })\n )\n }\n handle.success(res, { resolve, reject })\n target.value = ''\n }\n el.onabort = () => handle.fail({ errMsg: 'abort' }, { resolve, reject })\n el.oncancel = () => handle.fail({ errMsg: 'cancel' }, { resolve, reject })\n el.onerror = e => handle.fail({ errMsg: e.toString() }, { resolve, reject })\n el.click()\n }).finally(() => {\n if (!el) return\n document.body.removeChild(el)\n })\n\n function loadMedia (file: File): Promise<Taro.chooseMedia.ChooseMedia> {\n const dataUrl = URL.createObjectURL(file)\n const res = {\n tempFilePath: dataUrl,\n size: file.size,\n duration: 0,\n height: 0,\n width: 0,\n thumbTempFilePath: '',\n fileType: file.type,\n originalFileObj: file\n }\n\n if (/^video\\//.test(res.fileType)) {\n // Video\n const video = document.createElement('video')\n const reader = new FileReader()\n video.crossOrigin = 'Anonymous'\n video.preload = 'metadata'\n video.src = res.tempFilePath\n\n return new Promise((resolve, reject) => {\n // 对齐旧版本实现\n reader.onload = (event) => {\n res.tempFilePath = event.target?.result as string\n }\n reader.onerror = e => reject(e)\n reader.readAsDataURL(res.originalFileObj)\n\n video.onloadedmetadata = () => {\n res.duration = video.duration\n res.height = video.videoHeight\n res.width = video.videoWidth\n }\n video.oncanplay = () => {\n res.thumbTempFilePath = getThumbTempFilePath(video, res.height, res.width, 0.8)\n resolve(res)\n }\n video.onerror = e => reject(e)\n })\n } else {\n // Image\n const img = new Image()\n /** 允许图片和 canvas 跨源使用\n * https://developer.mozilla.org/zh-CN/docs/Web/HTML/CORS_enabled_image\n */\n img.crossOrigin = 'Anonymous'\n img.src = res.tempFilePath\n\n return new Promise((resolve, reject) => {\n if (img.complete) {\n res.height = img.height\n res.width = img.width\n res.thumbTempFilePath = getThumbTempFilePath(img, res.height, res.width, 0.8)\n resolve(res)\n } else {\n img.onload = () => {\n res.height = img.height\n res.width = img.width\n res.thumbTempFilePath = getThumbTempFilePath(img, res.height, res.width, 0.8)\n resolve(res)\n }\n img.onerror = e => reject(e)\n }\n })\n }\n }\n\n function getThumbTempFilePath (el: CanvasImageSource, height = 0, width = height, quality = 0.8) {\n const max = 256\n const canvas = document.createElement('canvas')\n if (height > max || width > max) {\n const radio = height / width\n if (radio > 1) {\n height = max\n width = height / radio\n } else {\n width = max\n height = width * radio\n }\n }\n canvas.height = height\n canvas.width = width\n\n const ctx = canvas.getContext('2d')\n ctx?.drawImage(el, 0, 0, canvas.width, canvas.height)\n return canvas.toDataURL('image/jpeg', quality)\n }\n}\n"],"names":[],"mappings":";;;;;;;AAOA;;AAEG;AACU,MAAA,WAAW,GAAG,UAAA,SAAA,EAAA;yDACzB,OAAgC,EAChC,UAAU,GAAG,aAAa,EAAA;;;AAG1B,QAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AAClB,YAAA,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAA,EAAG,UAAU,CAAA,MAAA,EAAS,QAAQ,CAAC,GAAG,CAAA,CAAE,EAAE,CAAA;AAC5D,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,YAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;SAC3B;QAED,MAAM,EACJ,KAAK,GAAG,CAAC,EACT,OAAO,GAAG,iBAAiB,EAC3B,SAAS,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,EAC9B,UAAU,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC;;;QAGhC,MAAM,GAAG,MAAM,EACf,OAAO,EACP,IAAI,EACJ,QAAQ,GACT,GAAG,OAAO,CAAA;AACX,QAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;AAC/E,QAAA,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;AACzE,QAAA,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;AACzE,QAAA,MAAM,GAAG,GAAoD;AAC3D,YAAA,SAAS,EAAE,EAAE;AACb,YAAA,IAAI,EAAE,SAAS,IAAI,SAAS,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO;SACrE,CAAA;AAED,QAAA,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AACtC,YAAA,GAAG,CAAC,MAAM,GAAG,iBAAiB,CAAC;AAC7B,gBAAA,IAAI,EAAE,OAAO;AACb,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,KAAK,EAAE,KAAK;AACb,aAAA,CAAC,CAAA;AACF,YAAA,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;SACxB;QAED,IAAI,EAAE,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;QACzC,IAAI,CAAC,EAAE,EAAE;AACP,YAAA,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;AACpC,YAAA,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC/B,YAAA,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AAC9B,YAAA,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,8DAA8D,CAAC,CAAA;SACzF;AAED,QAAA,IAAI,KAAK,GAAG,CAAC,EAAE;AACb,YAAA,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;SACxC;aAAM;AACL,YAAA,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAA;SAC/B;;QAGD,IAAI,QAAQ,EAAE,EAAE;AACd,YAAA,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AAClD,gBAAA,IAAI;AACF,oBAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,eAAe,CAAC;AACzC,wBAAA,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;qBAC1B,EAAE,UAAU,CAAC,CAAA;oBACd,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,QAAQ,KAAK,CAAC,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAA;iBAC7E;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO,MAAM,CAAC,IAAI,CAAC;wBACjB,MAAM,EAAE,CAAA,EAAA,GAAA,CAAC,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;AAC3C,qBAAA,CAAC,CAAA;iBACH;aACF;SACF;AACD,QAAA,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;AACjC,YAAA,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,GAAG,MAAM,GAAG,aAAa,CAAC,CAAA;SACxE;aAAM;AACL,YAAA,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;SAC9B;AAED,QAAA,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;AACxB,YAAA,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;SACrC;AAAM,aAAA,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;AAC/B,YAAA,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;SACrC;aAAM;AACL,YAAA,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAA;SAC9C;QACD,OAAO,IAAI,OAAO,CAAyC,CAAC,OAAO,EAAE,MAAM,KAAI;AAC7E,YAAA,IAAI,CAAC,EAAE;gBAAE,OAAM;AACf,YAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;AAC7B,YAAA,EAAE,CAAC,QAAQ,GAAG,UAAgB,CAAC,EAAA;;AAC7B,oBAAA,MAAM,MAAM,GAAG,CAAC,CAAC,MAA0B,CAAA;oBAC3C,IAAI,MAAM,EAAE;AACV,wBAAA,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAA;AAChC,wBAAA,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,CAAA;wBACtB,MAAM,OAAO,CAAC,GAAG,CACf,GAAG,CAAC,GAAG,CAAC,CAAM,IAAI,KAAG,SAAA,CAAA,IAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;;AACnB,4BAAA,IAAI;AACF,gCAAA,CAAA,EAAA,GAAA,GAAG,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;6BAC3C;4BAAC,OAAO,KAAK,EAAE;AACd,gCAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;6BACrB;yBACF,CAAA,CAAC,CACH,CAAA;qBACF;oBACD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;AACxC,oBAAA,MAAM,CAAC,KAAK,GAAG,EAAE,CAAA;iBAClB,CAAA,CAAA;aAAA,CAAA;YACD,EAAE,CAAC,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YACxE,EAAE,CAAC,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YAC1E,EAAE,CAAC,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YAC5E,EAAE,CAAC,KAAK,EAAE,CAAA;AACZ,SAAC,CAAC,CAAC,OAAO,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,EAAE;gBAAE,OAAM;AACf,YAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;AAC/B,SAAC,CAAC,CAAA;QAEF,SAAS,SAAS,CAAE,IAAU,EAAA;YAC5B,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;AACzC,YAAA,MAAM,GAAG,GAAG;AACV,gBAAA,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,gBAAA,QAAQ,EAAE,CAAC;AACX,gBAAA,MAAM,EAAE,CAAC;AACT,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,iBAAiB,EAAE,EAAE;gBACrB,QAAQ,EAAE,IAAI,CAAC,IAAI;AACnB,gBAAA,eAAe,EAAE,IAAI;aACtB,CAAA;YAED,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;;gBAEjC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;AAC7C,gBAAA,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAA;AAC/B,gBAAA,KAAK,CAAC,WAAW,GAAG,WAAW,CAAA;AAC/B,gBAAA,KAAK,CAAC,OAAO,GAAG,UAAU,CAAA;AAC1B,gBAAA,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,YAAY,CAAA;gBAE5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;;AAErC,oBAAA,MAAM,CAAC,MAAM,GAAG,CAAC,KAAK,KAAI;;wBACxB,GAAG,CAAC,YAAY,GAAG,CAAA,EAAA,GAAA,KAAK,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAgB,CAAA;AACnD,qBAAC,CAAA;oBACD,MAAM,CAAC,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAA;AAC/B,oBAAA,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;AAEzC,oBAAA,KAAK,CAAC,gBAAgB,GAAG,MAAK;AAC5B,wBAAA,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;AAC7B,wBAAA,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,WAAW,CAAA;AAC9B,wBAAA,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,UAAU,CAAA;AAC9B,qBAAC,CAAA;AACD,oBAAA,KAAK,CAAC,SAAS,GAAG,MAAK;AACrB,wBAAA,GAAG,CAAC,iBAAiB,GAAG,oBAAoB,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;wBAC/E,OAAO,CAAC,GAAG,CAAC,CAAA;AACd,qBAAC,CAAA;oBACD,KAAK,CAAC,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAA;AAChC,iBAAC,CAAC,CAAA;aACH;iBAAM;;AAEL,gBAAA,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAA;AACvB;;AAEG;AACH,gBAAA,GAAG,CAAC,WAAW,GAAG,WAAW,CAAA;AAC7B,gBAAA,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,YAAY,CAAA;gBAE1B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,oBAAA,IAAI,GAAG,CAAC,QAAQ,EAAE;AAChB,wBAAA,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;AACvB,wBAAA,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;AACrB,wBAAA,GAAG,CAAC,iBAAiB,GAAG,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;wBAC7E,OAAO,CAAC,GAAG,CAAC,CAAA;qBACb;yBAAM;AACL,wBAAA,GAAG,CAAC,MAAM,GAAG,MAAK;AAChB,4BAAA,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;AACvB,4BAAA,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;AACrB,4BAAA,GAAG,CAAC,iBAAiB,GAAG,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;4BAC7E,OAAO,CAAC,GAAG,CAAC,CAAA;AACd,yBAAC,CAAA;wBACD,GAAG,CAAC,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAA;qBAC7B;AACH,iBAAC,CAAC,CAAA;aACH;SACF;AAED,QAAA,SAAS,oBAAoB,CAAE,EAAqB,EAAE,MAAM,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,OAAO,GAAG,GAAG,EAAA;YAC7F,MAAM,GAAG,GAAG,GAAG,CAAA;YACf,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;YAC/C,IAAI,MAAM,GAAG,GAAG,IAAI,KAAK,GAAG,GAAG,EAAE;AAC/B,gBAAA,MAAM,KAAK,GAAG,MAAM,GAAG,KAAK,CAAA;AAC5B,gBAAA,IAAI,KAAK,GAAG,CAAC,EAAE;oBACb,MAAM,GAAG,GAAG,CAAA;AACZ,oBAAA,KAAK,GAAG,MAAM,GAAG,KAAK,CAAA;iBACvB;qBAAM;oBACL,KAAK,GAAG,GAAG,CAAA;AACX,oBAAA,MAAM,GAAG,KAAK,GAAG,KAAK,CAAA;iBACvB;aACF;AACD,YAAA,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;AACtB,YAAA,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;YAEpB,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YACnC,GAAG,KAAA,IAAA,IAAH,GAAG,KAAH,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,GAAG,CAAE,SAAS,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;YACrD,OAAO,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;SAC/C;KACF,CAAA,CAAA;;;;;"}
|
|
1
|
+
{"version":3,"file":"chooseMedia.js","sources":["../../../../src/api/media/video/chooseMedia.ts"],"sourcesContent":["import Taro from '@tarojs/api'\nimport { isMobile } from 'is-mobile'\n\nimport { showActionSheet } from '../../../api/ui'\nimport { getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\n/**\n * 拍摄或从手机相册中选择图片或视频。\n */\nexport const chooseMedia = async function (\n options: Taro.chooseMedia.Option,\n methodName = 'chooseMedia',\n): Promise<Taro.chooseMedia.SuccessCallbackResult> {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${methodName}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const {\n count = 9,\n mediaId = 'taroChooseMedia',\n mediaType = ['image', 'video'],\n sourceType = ['album', 'camera'],\n // sizeType = ['original', 'compressed'], // TODO 考虑通过 ffmpeg 支持压缩\n // maxDuration = 10, // TODO 考虑通过 ffmpeg 剪裁视频\n camera = 'back',\n success,\n fail,\n complete,\n } = options\n const handle = new MethodHandler({ name: methodName, success, fail, complete })\n const withImage = mediaType.length < 1 || mediaType.indexOf('image') > -1\n const withVideo = mediaType.length < 1 || mediaType.indexOf('video') > -1\n const res: Partial<Taro.chooseMedia.SuccessCallbackResult> = {\n tempFiles: [],\n type: withImage && withVideo ? 'mix' : withImage ? 'image' : 'video',\n }\n\n if (count && typeof count !== 'number') {\n res.errMsg = getParameterError({\n para: 'count',\n correct: 'Number',\n wrong: count\n })\n return handle.fail(res)\n }\n\n let el = document.getElementById(mediaId)\n if (!el) {\n el = document.createElement('input')\n el.setAttribute('type', 'file')\n el.setAttribute('id', mediaId)\n el.setAttribute('style', 'position: fixed; top: -4000px; left: -3000px; z-index: -300;')\n }\n\n if (count > 1) {\n el.setAttribute('multiple', 'multiple')\n } else {\n el.removeAttribute('multiple')\n }\n\n // Note: Input 仅在移动端支持 capture 属性,可以使用 getUserMedia 替代(暂不考虑)\n if (isMobile()) {\n if (sourceType.length > 1 || sourceType.length < 1) {\n try {\n const { tapIndex } = await showActionSheet({\n itemList: ['拍摄', '从相册选择'],\n }, methodName)\n sourceType.splice(0, sourceType.length, tapIndex === 0 ? 'camera' : 'album')\n } catch (e) {\n return handle.fail({\n errMsg: e.errMsg?.replace('^.*:fail ', '')\n })\n }\n }\n }\n if (sourceType.includes('camera')) {\n el.setAttribute('capture', camera === 'front' ? 'user' : 'environment')\n } else {\n el.removeAttribute('capture')\n }\n\n if (res.type === 'image') {\n el.setAttribute('accept', 'image/*')\n } else if (res.type === 'video') {\n el.setAttribute('accept', 'video/*')\n } else {\n el.setAttribute('accept', 'image/*, video/*')\n }\n return new Promise<Taro.chooseMedia.SuccessCallbackResult>((resolve, reject) => {\n if (!el) return\n document.body.appendChild(el)\n el.onchange = async function (e) {\n const target = e.target as HTMLInputElement\n if (target) {\n const files = target.files || []\n const arr = [...files]\n await Promise.all(\n arr.map(async item => {\n try {\n res.tempFiles?.push(await loadMedia(item))\n } catch (error) {\n console.error(error)\n }\n })\n )\n }\n handle.success(res, { resolve, reject })\n target.value = ''\n }\n el.onabort = () => handle.fail({ errMsg: 'abort' }, { resolve, reject })\n el.oncancel = () => handle.fail({ errMsg: 'cancel' }, { resolve, reject })\n el.onerror = e => handle.fail({ errMsg: e.toString() }, { resolve, reject })\n el.click()\n }).finally(() => {\n if (!el) return\n document.body.removeChild(el)\n })\n\n function loadMedia (file: File): Promise<Taro.chooseMedia.ChooseMedia> {\n const dataUrl = URL.createObjectURL(file)\n const res = {\n tempFilePath: dataUrl,\n size: file.size,\n duration: 0,\n height: 0,\n width: 0,\n thumbTempFilePath: '',\n fileType: file.type,\n originalFileObj: file\n }\n\n if (/^video\\//.test(res.fileType)) {\n // Video\n const video = document.createElement('video')\n const reader = new FileReader()\n video.crossOrigin = 'Anonymous'\n video.preload = 'metadata'\n video.src = res.tempFilePath\n\n return new Promise((resolve, reject) => {\n // 对齐旧版本实现\n reader.onload = (event) => {\n res.tempFilePath = event.target?.result as string\n }\n reader.onerror = e => reject(e)\n reader.readAsDataURL(res.originalFileObj)\n\n video.onloadedmetadata = () => {\n res.duration = video.duration\n res.height = video.videoHeight\n res.width = video.videoWidth\n }\n video.oncanplay = () => {\n res.thumbTempFilePath = getThumbTempFilePath(video, res.height, res.width, 0.8)\n resolve(res)\n }\n video.onerror = e => reject(e)\n })\n } else {\n // Image\n const img = new Image()\n /** 允许图片和 canvas 跨源使用\n * https://developer.mozilla.org/zh-CN/docs/Web/HTML/CORS_enabled_image\n */\n img.crossOrigin = 'Anonymous'\n img.src = res.tempFilePath\n\n return new Promise((resolve, reject) => {\n if (img.complete) {\n res.height = img.height\n res.width = img.width\n res.thumbTempFilePath = getThumbTempFilePath(img, res.height, res.width, 0.8)\n resolve(res)\n } else {\n img.onload = () => {\n res.height = img.height\n res.width = img.width\n res.thumbTempFilePath = getThumbTempFilePath(img, res.height, res.width, 0.8)\n resolve(res)\n }\n img.onerror = e => reject(e)\n }\n })\n }\n }\n\n function getThumbTempFilePath (el: CanvasImageSource, height = 0, width = height, quality = 0.8) {\n const max = 256\n const canvas = document.createElement('canvas')\n if (height > max || width > max) {\n const radio = height / width\n if (radio > 1) {\n height = max\n width = height / radio\n } else {\n width = max\n height = width * radio\n }\n }\n canvas.height = height\n canvas.width = width\n\n const ctx = canvas.getContext('2d')\n ctx?.drawImage(el, 0, 0, canvas.width, canvas.height)\n return canvas.toDataURL('image/jpeg', quality)\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chooseVideo.js","sources":["../../../../src/api/media/video/chooseVideo.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { shouldBeObject } from '../../../utils'\nimport { chooseMedia } from './chooseMedia'\n\n/**\n * 拍摄视频或从手机相册中选视频。\n * @deprecated 请使用 chooseMedia 接口\n */\nexport const chooseVideo: typeof Taro.chooseVideo = (options) => {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `chooseVideo:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const {\n sourceType = ['album', 'camera'],\n // TODO 考虑通过 ffmpeg 支持压缩\n // compressed = true,\n maxDuration = 60,\n camera = 'back',\n success,\n fail,\n complete,\n } = options\n\n function parseRes (res: Taro.chooseMedia.SuccessCallbackResult): Taro.chooseVideo.SuccessCallbackResult {\n const { tempFiles = [], errMsg } = res\n const [video] = tempFiles\n return { ...video, errMsg }\n }\n\n return chooseMedia({\n mediaId: 'taroChooseVideo',\n sourceType,\n mediaType: ['video'],\n maxDuration,\n camera,\n success: (res) => {\n const param = parseRes(res)\n success?.(param)\n complete?.(param)\n },\n fail: (err) => {\n fail?.(err)\n complete?.(err)\n },\n }, 'chooseVideo').then(parseRes)\n}\n"],"names":[],"mappings":";;;AAKA;;;AAGG;AACU,MAAA,WAAW,GAA4B,CAAC,OAAO,KAAI;;AAE9D,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAoB,iBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC1D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"chooseVideo.js","sources":["../../../../src/api/media/video/chooseVideo.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { shouldBeObject } from '../../../utils'\nimport { chooseMedia } from './chooseMedia'\n\n/**\n * 拍摄视频或从手机相册中选视频。\n * @deprecated 请使用 chooseMedia 接口\n */\nexport const chooseVideo: typeof Taro.chooseVideo = (options) => {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `chooseVideo:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const {\n sourceType = ['album', 'camera'],\n // TODO 考虑通过 ffmpeg 支持压缩\n // compressed = true,\n maxDuration = 60,\n camera = 'back',\n success,\n fail,\n complete,\n } = options\n\n function parseRes (res: Taro.chooseMedia.SuccessCallbackResult): Taro.chooseVideo.SuccessCallbackResult {\n const { tempFiles = [], errMsg } = res\n const [video] = tempFiles\n return { ...video, errMsg }\n }\n\n return chooseMedia({\n mediaId: 'taroChooseVideo',\n sourceType,\n mediaType: ['video'],\n maxDuration,\n camera,\n success: (res) => {\n const param = parseRes(res)\n success?.(param)\n complete?.(param)\n },\n fail: (err) => {\n fail?.(err)\n complete?.(err)\n },\n }, 'chooseVideo').then(parseRes)\n}\n"],"names":[],"mappings":";;;AAKA;;;AAGG;AACU,MAAA,WAAW,GAA4B,CAAC,OAAO,KAAI;;AAE9D,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAoB,iBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC1D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAC3B,KAAA;AAED,IAAA,MAAM,EACJ,UAAU,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC;;;AAGhC,IAAA,WAAW,GAAG,EAAE,EAChB,MAAM,GAAG,MAAM,EACf,OAAO,EACP,IAAI,EACJ,QAAQ,GACT,GAAG,OAAO,CAAA;IAEX,SAAS,QAAQ,CAAE,GAA2C,EAAA;QAC5D,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,GAAG,CAAA;AACtC,QAAA,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,CAAA;QACzB,OAAY,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,CAAE,EAAA,EAAA,MAAM,EAAE,CAAA,CAAA;KAC5B;AAED,IAAA,OAAO,WAAW,CAAC;AACjB,QAAA,OAAO,EAAE,iBAAiB;QAC1B,UAAU;QACV,SAAS,EAAE,CAAC,OAAO,CAAC;QACpB,WAAW;QACX,MAAM;AACN,QAAA,OAAO,EAAE,CAAC,GAAG,KAAI;AACf,YAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;AAC3B,YAAA,OAAO,aAAP,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAP,OAAO,CAAG,KAAK,CAAC,CAAA;AAChB,YAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,KAAK,CAAC,CAAA;SAClB;AACD,QAAA,IAAI,EAAE,CAAC,GAAG,KAAI;AACZ,YAAA,IAAI,aAAJ,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJ,IAAI,CAAG,GAAG,CAAC,CAAA;AACX,YAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,GAAG,CAAC,CAAA;SAChB;AACF,KAAA,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAClC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getVideoInfo.js","sources":["../../../../src/api/media/video/getVideoInfo.ts"],"sourcesContent":["import 'whatwg-fetch'\n\nimport Taro from '@tarojs/api'\n\nimport { getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\nexport const getVideoInfo: typeof Taro.getVideoInfo = async function (options) {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `getVideoInfo:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n const res: Partial<Taro.getVideoInfo.SuccessCallbackResult> = {\n orientation: 'up',\n type: '',\n duration: 0,\n size: 0,\n height: 0,\n width: 0,\n fps: 30,\n bitrate: 0,\n }\n const {\n src,\n success,\n fail,\n complete,\n } = options\n const handle = new MethodHandler({ name: 'getVideoInfo', success, fail, complete })\n\n if (typeof src !== 'string') {\n res.errMsg = getParameterError({\n para: 'src',\n correct: 'String',\n wrong: src\n })\n return handle.fail(res)\n }\n\n const video = document.createElement('video')\n video.crossOrigin = 'Anonymous'\n video.preload = 'metadata'\n video.src = src\n\n return new Promise((resolve, reject) => {\n video.onloadedmetadata = () => {\n res.duration = video.duration\n res.height = video.videoHeight\n res.width = video.videoWidth\n\n fetch(src)\n .then(async e => {\n const blob = await e.blob()\n res.type = blob.type\n res.size = blob.size\n res.bitrate = blob.size / video.duration\n\n handle.success(res, { resolve, reject })\n })\n .catch(e => {\n handle.fail({\n errMsg: e.toString()\n }, { resolve, reject })\n })\n }\n })\n}\n"],"names":[],"mappings":";;;;;AAOO,MAAM,YAAY,GAA6B,UAAgB,OAAO,EAAA;;;AAE3E,QAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YAClB,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAqB,kBAAA,EAAA,QAAQ,CAAC,GAAG,CAAE,CAAA,EAAE,CAAA;AAC3D,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,YAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"getVideoInfo.js","sources":["../../../../src/api/media/video/getVideoInfo.ts"],"sourcesContent":["import 'whatwg-fetch'\n\nimport Taro from '@tarojs/api'\n\nimport { getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\nexport const getVideoInfo: typeof Taro.getVideoInfo = async function (options) {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `getVideoInfo:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n const res: Partial<Taro.getVideoInfo.SuccessCallbackResult> = {\n orientation: 'up',\n type: '',\n duration: 0,\n size: 0,\n height: 0,\n width: 0,\n fps: 30,\n bitrate: 0,\n }\n const {\n src,\n success,\n fail,\n complete,\n } = options\n const handle = new MethodHandler({ name: 'getVideoInfo', success, fail, complete })\n\n if (typeof src !== 'string') {\n res.errMsg = getParameterError({\n para: 'src',\n correct: 'String',\n wrong: src\n })\n return handle.fail(res)\n }\n\n const video = document.createElement('video')\n video.crossOrigin = 'Anonymous'\n video.preload = 'metadata'\n video.src = src\n\n return new Promise((resolve, reject) => {\n video.onloadedmetadata = () => {\n res.duration = video.duration\n res.height = video.videoHeight\n res.width = video.videoWidth\n\n fetch(src)\n .then(async e => {\n const blob = await e.blob()\n res.type = blob.type\n res.size = blob.size\n res.bitrate = blob.size / video.duration\n\n handle.success(res, { resolve, reject })\n })\n .catch(e => {\n handle.fail({\n errMsg: e.toString()\n }, { resolve, reject })\n })\n }\n })\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saveVideoToPhotosAlbum.js","sources":["../../../../src/api/media/video/saveVideoToPhotosAlbum.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { createDownload, getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\nexport const saveVideoToPhotosAlbum: typeof Taro.saveVideoToPhotosAlbum = (options) => {\n const methodName = 'saveVideoToPhotosAlbum'\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${methodName}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const {\n filePath,\n success,\n fail,\n complete,\n } = options\n const handle = new MethodHandler({ name: methodName, success, fail, complete })\n if (typeof filePath !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'filePath',\n correct: 'String',\n wrong: filePath\n })\n })\n }\n\n createDownload(filePath)\n return handle.success()\n}\n"],"names":[],"mappings":";;;;AAKa,MAAA,sBAAsB,GAAuC,CAAC,OAAO,KAAI;IACpF,MAAM,UAAU,GAAG,wBAAwB,CAAA;;AAE3C,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AAClB,QAAA,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAA,EAAG,UAAU,CAAA,MAAA,EAAS,QAAQ,CAAC,GAAG,CAAA,CAAE,EAAE,CAAA;AAC5D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"saveVideoToPhotosAlbum.js","sources":["../../../../src/api/media/video/saveVideoToPhotosAlbum.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { createDownload, getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\n\nexport const saveVideoToPhotosAlbum: typeof Taro.saveVideoToPhotosAlbum = (options) => {\n const methodName = 'saveVideoToPhotosAlbum'\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${methodName}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return Promise.reject(res)\n }\n\n const {\n filePath,\n success,\n fail,\n complete,\n } = options\n const handle = new MethodHandler({ name: methodName, success, fail, complete })\n if (typeof filePath !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'filePath',\n correct: 'String',\n wrong: filePath\n })\n })\n }\n\n createDownload(filePath)\n return handle.success()\n}\n"],"names":[],"mappings":";;;;AAKa,MAAA,sBAAsB,GAAuC,CAAC,OAAO,KAAI;IACpF,MAAM,UAAU,GAAG,wBAAwB,CAAA;;AAE3C,IAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;AACxC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AAClB,QAAA,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAA,EAAG,UAAU,CAAA,MAAA,EAAS,QAAQ,CAAC,GAAG,CAAA,CAAE,EAAE,CAAA;AAC5D,QAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAC3B,KAAA;IAED,MAAM,EACJ,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,QAAQ,GACT,GAAG,OAAO,CAAA;AACX,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;AAC/E,IAAA,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAChC,OAAO,MAAM,CAAC,IAAI,CAAC;YACjB,MAAM,EAAE,iBAAiB,CAAC;AACxB,gBAAA,IAAI,EAAE,UAAU;AAChB,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,KAAK,EAAE,QAAQ;aAChB,CAAC;AACH,SAAA,CAAC,CAAA;AACH,KAAA;IAED,cAAc,CAAC,QAAQ,CAAC,CAAA;AACxB,IAAA,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;AACzB;;;;"}
|