@tarojs/taro-rn 4.0.0-beta.7 → 4.0.0-beta.9

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.
@@ -1,43 +1,5 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { chooseMedia, MEDIA_TYPE } from '../media';
11
- import { showActionSheet } from '../showActionSheet';
12
2
  export function chooseImage(opts) {
13
- const { sourceType = ['album', 'camera'], } = opts;
14
- if ((sourceType === null || sourceType === void 0 ? void 0 : sourceType.includes('camera')) && (sourceType === null || sourceType === void 0 ? void 0 : sourceType.includes('album'))) {
15
- return showImagePicker(opts);
16
- }
17
- else if (sourceType === null || sourceType === void 0 ? void 0 : sourceType.includes('camera')) {
18
- return chooseMedia(Object.assign(Object.assign({}, opts), { sourceType: ['camera'] }), MEDIA_TYPE.IMAGES);
19
- }
20
- return chooseMedia(Object.assign(Object.assign({}, opts), { sourceType: ['album'] }), MEDIA_TYPE.IMAGES);
21
- }
22
- function showImagePicker(options) {
23
- return __awaiter(this, void 0, void 0, function* () {
24
- const { fail, complete } = options;
25
- try {
26
- const res = yield showActionSheet({
27
- itemList: ['拍照', '从手机相册选择'],
28
- });
29
- if (res.tapIndex === 0) {
30
- return chooseMedia(Object.assign(Object.assign({}, options), { sourceType: ['camera'] }), MEDIA_TYPE.IMAGES);
31
- }
32
- if (res.tapIndex === 1) {
33
- return chooseMedia(Object.assign(Object.assign({}, options), { sourceType: ['album'] }), MEDIA_TYPE.IMAGES);
34
- }
35
- }
36
- catch (err) {
37
- const res = { errMsg: 'chooseImage: fail' };
38
- fail === null || fail === void 0 ? void 0 : fail(res);
39
- complete === null || complete === void 0 ? void 0 : complete(res);
40
- }
41
- });
3
+ return chooseMedia(opts, MEDIA_TYPE.Images);
42
4
  }
43
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/chooseImage/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEpD,MAAM,UAAU,WAAW,CAAC,IAA6B;IACvD,MAAM,EACJ,UAAU,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,GACjC,GAAG,IAAI,CAAA;IACR,IAAG,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,QAAQ,CAAC,MAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,OAAO,CAAC,CAAA,EAAE;QAClE,OAAO,eAAe,CAAC,IAAI,CAAC,CAAA;KAC7B;SAAM,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACzC,OAAO,WAAW,iCAAK,IAAI,KAAE,UAAU,EAAE,CAAC,QAAQ,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC,CAAA;KACzE;IACD,OAAO,WAAW,iCAAK,IAAI,KAAE,UAAU,EAAE,CAAC,OAAO,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC,CAAA;AACzE,CAAC;AAED,SAAe,eAAe,CAAC,OAAgC;;QAC7D,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;QAClC,IAAI;YACF,MAAM,GAAG,GAAG,MAAM,eAAe,CAAC;gBAChC,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;aAC5B,CAAC,CAAA;YACF,IAAI,GAAG,CAAC,QAAQ,KAAK,CAAC,EAAE;gBACtB,OAAO,WAAW,iCAAK,OAAO,KAAE,UAAU,EAAE,CAAC,QAAQ,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC,CAAA;aAC5E;YACD,IAAI,GAAG,CAAC,QAAQ,KAAK,CAAC,EAAE;gBACtB,OAAO,WAAW,iCAAK,OAAO,KAAE,UAAU,EAAE,CAAC,OAAO,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC,CAAA;aAC3E;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAA;YAC3C,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,GAAG,CAAC,CAAA;YACX,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,GAAG,CAAC,CAAA;SAChB;IACH,CAAC;CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/chooseImage/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAElD,MAAM,UAAU,WAAW,CAAC,IAA6B;IACvD,OAAO,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;AAC7C,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { chooseMedia as _chooseMedia, MEDIA_TYPE } from '../media';
2
+ export function chooseMedia(opts) {
3
+ var _a;
4
+ if (((_a = opts.mediaType) === null || _a === void 0 ? void 0 : _a.length) === 1) {
5
+ if (opts.mediaType[0] === 'video') {
6
+ return _chooseMedia(opts, MEDIA_TYPE.Videos);
7
+ }
8
+ else if (opts.mediaType[0] === 'image') {
9
+ return _chooseMedia(opts, MEDIA_TYPE.Images);
10
+ }
11
+ else {
12
+ return _chooseMedia(opts, MEDIA_TYPE.All);
13
+ }
14
+ }
15
+ else {
16
+ return _chooseMedia(opts, MEDIA_TYPE.All);
17
+ }
18
+ }
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/chooseMedia/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAElE,MAAM,UAAU,WAAW,CAAE,IAA6B;;IACxD,IAAI,CAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,MAAM,MAAK,CAAC,EAAE;QAChC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE;YACjC,OAAO,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;SAC7C;aAAM,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE;YACxC,OAAO,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;SAC7C;aAAM;YACL,OAAO,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,CAAA;SAC1C;KACF;SAAM;QACL,OAAO,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,CAAA;KAC1C;AACH,CAAC"}
@@ -1,44 +1,5 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { chooseMedia, MEDIA_TYPE } from '../media';
11
- import { showActionSheet } from '../showActionSheet';
12
2
  export function chooseVideo(opts) {
13
- const { sourceType = ['album', 'camera'], compressed } = opts;
14
- opts = Object.assign(opts, { sizeType: compressed ? ['compressed'] : [] });
15
- if ((sourceType === null || sourceType === void 0 ? void 0 : sourceType.includes('camera')) && (sourceType === null || sourceType === void 0 ? void 0 : sourceType.includes('album'))) {
16
- return showVideoPicker(opts);
17
- }
18
- else if (sourceType === null || sourceType === void 0 ? void 0 : sourceType.includes('camera')) {
19
- return chooseMedia(Object.assign(Object.assign({}, opts), { sourceType: ['camera'] }), MEDIA_TYPE.VIDEOS);
20
- }
21
- return chooseMedia(Object.assign(Object.assign({}, opts), { sourceType: ['album'] }), MEDIA_TYPE.VIDEOS);
22
- }
23
- function showVideoPicker(options) {
24
- return __awaiter(this, void 0, void 0, function* () {
25
- const { fail, complete } = options;
26
- try {
27
- const res = yield showActionSheet({
28
- itemList: ['拍摄', '从手机相册选择'],
29
- });
30
- if (res.tapIndex === 0) {
31
- return chooseMedia(Object.assign(Object.assign({}, options), { sourceType: ['camera'] }), MEDIA_TYPE.VIDEOS);
32
- }
33
- if (res.tapIndex === 1) {
34
- return chooseMedia(Object.assign(Object.assign({}, options), { sourceType: ['album'] }), MEDIA_TYPE.VIDEOS);
35
- }
36
- }
37
- catch (err) {
38
- const res = { errMsg: 'chooseVideo: fail' };
39
- fail === null || fail === void 0 ? void 0 : fail(res);
40
- complete === null || complete === void 0 ? void 0 : complete(res);
41
- }
42
- });
3
+ return chooseMedia(opts, MEDIA_TYPE.Videos);
43
4
  }
44
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/chooseVideo/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEpD,MAAM,UAAU,WAAW,CAAC,IAA6B;IACvD,MAAM,EACJ,UAAU,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,EAChC,UAAU,EACX,GAAG,IAAI,CAAA;IACR,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC1E,IAAG,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,QAAQ,CAAC,MAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,OAAO,CAAC,CAAA,EAAE;QAClE,OAAO,eAAe,CAAC,IAAI,CAAC,CAAA;KAC7B;SAAM,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACzC,OAAO,WAAW,iCAAK,IAAI,KAAE,UAAU,EAAE,CAAC,QAAQ,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC,CAAA;KACzE;IACD,OAAO,WAAW,iCAAK,IAAI,KAAE,UAAU,EAAE,CAAC,OAAO,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC,CAAA;AACzE,CAAC;AAED,SAAe,eAAe,CAAC,OAAgC;;QAC7D,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;QAClC,IAAI;YACF,MAAM,GAAG,GAAG,MAAM,eAAe,CAAC;gBAChC,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;aAC5B,CAAC,CAAA;YACF,IAAI,GAAG,CAAC,QAAQ,KAAK,CAAC,EAAE;gBACtB,OAAO,WAAW,iCAAK,OAAO,KAAE,UAAU,EAAE,CAAC,QAAQ,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC,CAAA;aAC5E;YACD,IAAI,GAAG,CAAC,QAAQ,KAAK,CAAC,EAAE;gBACtB,OAAO,WAAW,iCAAK,OAAO,KAAE,UAAU,EAAE,CAAC,OAAO,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC,CAAA;aAC3E;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAA;YAC3C,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,GAAG,CAAC,CAAA;YACX,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,GAAG,CAAC,CAAA;SAChB;IACH,CAAC;CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/chooseVideo/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAElD,MAAM,UAAU,WAAW,CAAC,IAA6B;IACvD,OAAO,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;AAC7C,CAAC"}
package/dist/lib/index.js CHANGED
@@ -5,6 +5,7 @@ export * from './authorize';
5
5
  export * from './base64ToArrayBuffer';
6
6
  export * from './canIUse';
7
7
  export * from './chooseImage';
8
+ export * from './chooseMedia';
8
9
  export * from './chooseVideo';
9
10
  export * from './clearStorage';
10
11
  export * from './clearStorageSync';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,cAAc,YAAY,CAAA;AAC1B,cAAc,uBAAuB,CAAA;AACrC,cAAc,aAAa,CAAA;AAC3B,cAAc,uBAAuB,CAAA;AACrC,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AACrC,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,wBAAwB,CAAA;AACtC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,0BAA0B,CAAA;AACxC,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,sBAAsB,CAAA;AACpC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,cAAc,YAAY,CAAA;AAC1B,cAAc,uBAAuB,CAAA;AACrC,cAAc,aAAa,CAAA;AAC3B,cAAc,uBAAuB,CAAA;AACrC,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AACrC,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,wBAAwB,CAAA;AACtC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,0BAA0B,CAAA;AACxC,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,sBAAsB,CAAA;AACpC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA"}
package/dist/lib/media.js CHANGED
@@ -9,16 +9,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { CameraRoll } from "@react-native-camera-roll/camera-roll";
11
11
  import { requestCameraPermissionsAsync } from 'expo-camera';
12
- import * as ImagePicker from 'expo-image-picker';
12
+ import { requestMediaLibraryPermissionsAsync, launchImageLibraryAsync, launchCameraAsync, MediaTypeOptions, } from 'expo-image-picker';
13
13
  import { successHandler, errorHandler } from '../utils';
14
- export const MEDIA_TYPE = {
15
- VIDEOS: 'Videos',
16
- IMAGES: 'Images'
17
- };
14
+ import { showActionSheet } from "./showActionSheet";
15
+ export const MEDIA_TYPE = MediaTypeOptions;
18
16
  export function saveMedia(opts, type, API) {
19
17
  return __awaiter(this, void 0, void 0, function* () {
20
18
  const { filePath, success, fail, complete } = opts;
21
- const { granted } = yield ImagePicker.requestMediaLibraryPermissionsAsync();
19
+ const { granted } = yield requestMediaLibraryPermissionsAsync();
22
20
  if (!granted) {
23
21
  const res = { errMsg: 'Permissions denied!' };
24
22
  return errorHandler(fail, complete)(res);
@@ -36,38 +34,72 @@ export function saveMedia(opts, type, API) {
36
34
  }
37
35
  });
38
36
  }
39
- export function chooseMedia(opts, mediaTypes) {
40
- var _a, _b, _c;
37
+ function showPicker(opts, mediaTypes) {
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ const { fail, complete } = opts;
40
+ try {
41
+ const res = yield showActionSheet({
42
+ itemList: ['拍摄', '从手机相册选择'],
43
+ });
44
+ if (res.tapIndex === 0) {
45
+ return _chooseMedia(Object.assign(Object.assign({}, opts), { sourceType: ['camera'] }), mediaTypes);
46
+ }
47
+ if (res.tapIndex === 1) {
48
+ return _chooseMedia(Object.assign(Object.assign({}, opts), { sourceType: ['album'] }), mediaTypes);
49
+ }
50
+ }
51
+ catch (err) {
52
+ const res = { errMsg: `choose${mediaTypes === MediaTypeOptions.Images ? 'Image' : mediaTypes === MediaTypeOptions.Videos ? 'Video' : 'Media'} fail` };
53
+ fail === null || fail === void 0 ? void 0 : fail(res);
54
+ complete === null || complete === void 0 ? void 0 : complete(res);
55
+ }
56
+ });
57
+ }
58
+ export function chooseMedia(opts = {}, mediaTypes) {
41
59
  return __awaiter(this, void 0, void 0, function* () {
42
- if (!opts || typeof opts !== 'object') {
43
- opts = {};
60
+ const { sourceType = ['album', 'camera'], } = opts;
61
+ if ((sourceType === null || sourceType === void 0 ? void 0 : sourceType.includes('camera')) && (sourceType === null || sourceType === void 0 ? void 0 : sourceType.includes('album'))) {
62
+ return showPicker(opts, mediaTypes);
63
+ }
64
+ else if (sourceType === null || sourceType === void 0 ? void 0 : sourceType.includes('camera')) {
65
+ return _chooseMedia(Object.assign(Object.assign({}, opts), { sourceType: ['camera'] }), mediaTypes);
44
66
  }
45
- const { sizeType = [], sourceType = [], success, fail, complete, maxDuration, count } = opts;
67
+ return _chooseMedia(Object.assign(Object.assign({}, opts), { sourceType: ['album'] }), mediaTypes);
68
+ });
69
+ }
70
+ export function _chooseMedia(opts = {}, mediaTypes) {
71
+ var _a, _b, _c;
72
+ return __awaiter(this, void 0, void 0, function* () {
73
+ const { sizeType = [], sourceType = [], success, fail, complete, maxDuration, count = (mediaTypes === MEDIA_TYPE.Videos ? 1 : 9), compressed } = opts;
46
74
  const options = {
47
75
  mediaTypes,
48
- quality: sizeType[0] === 'compressed' ? 0.7 : 1,
76
+ quality: (sizeType[0] === 'compressed' || compressed) ? 0.7 : 1,
49
77
  videoMaxDuration: maxDuration,
50
- allowsMultipleSelection: (mediaTypes === MEDIA_TYPE.IMAGES && count > 1) ? true : false,
51
- selectionLimit: mediaTypes === MEDIA_TYPE.VIDEOS ? 1 : (count || 9),
78
+ allowsMultipleSelection: count > 1,
79
+ selectionLimit: count,
52
80
  };
81
+ const messString = mediaTypes === MediaTypeOptions.Images ? 'Image' : mediaTypes === MediaTypeOptions.Videos ? 'Video' : 'Media';
53
82
  const isCamera = sourceType[0] === 'camera';
54
- const { granted } = isCamera ? yield requestCameraPermissionsAsync() : yield ImagePicker.requestMediaLibraryPermissionsAsync();
83
+ const { granted } = isCamera ? yield requestCameraPermissionsAsync() : yield requestMediaLibraryPermissionsAsync();
55
84
  if (!granted) {
56
85
  const res = { errMsg: 'Permissions denied!' };
57
86
  return errorHandler(fail, complete)(res);
58
87
  }
59
- let launchMediaAsync = isCamera ? ImagePicker.launchCameraAsync : ImagePicker.launchImageLibraryAsync;
88
+ let launchMediaAsync = isCamera ? launchCameraAsync : launchImageLibraryAsync;
60
89
  try {
61
90
  const resp = yield launchMediaAsync(options);
62
91
  let res = {};
63
- if (mediaTypes === MEDIA_TYPE.VIDEOS) {
92
+ if (mediaTypes === MEDIA_TYPE.Videos) {
64
93
  const asset = (_a = resp.assets) === null || _a === void 0 ? void 0 : _a[0];
65
94
  res = Object.assign(Object.assign({}, asset), { tempFilePath: asset === null || asset === void 0 ? void 0 : asset.uri, size: asset === null || asset === void 0 ? void 0 : asset.fileSize });
66
95
  }
67
96
  else {
68
97
  res = {
69
98
  tempFilePaths: (_b = resp.assets) === null || _b === void 0 ? void 0 : _b.map((item) => item.uri),
70
- tempFiles: (_c = resp.assets) === null || _c === void 0 ? void 0 : _c.map((item) => (Object.assign(Object.assign({}, item), { path: item.uri, size: item.fileSize, type: item.mimeType })))
99
+ tempFiles: (_c = resp.assets) === null || _c === void 0 ? void 0 : _c.map((item) => {
100
+ var _a;
101
+ return (Object.assign(Object.assign({}, item), { path: item.uri, size: item.fileSize, type: item.mimeType, fileType: ((_a = item.mimeType) === null || _a === void 0 ? void 0 : _a.startsWith('video')) ? 'video' : 'image' }));
102
+ })
71
103
  };
72
104
  }
73
105
  if (res.tempFilePath || (!!res.tempFilePaths && res.tempFilePaths.length > 0)) {
@@ -75,14 +107,14 @@ export function chooseMedia(opts, mediaTypes) {
75
107
  }
76
108
  else {
77
109
  const res = {
78
- errMsg: mediaTypes === MEDIA_TYPE.VIDEOS ? 'chooseVideo:fail cancel' : 'chooseImage:fail cancel',
110
+ errMsg: `choose${messString}:fail cancel`
79
111
  };
80
112
  return errorHandler(fail, complete)(res);
81
113
  }
82
114
  }
83
115
  catch (err) {
84
116
  const res = {
85
- errMsg: mediaTypes === MEDIA_TYPE.VIDEOS ? 'chooseVideo fail' : 'chooseImage fail',
117
+ errMsg: `choose${messString}:fail`,
86
118
  err
87
119
  };
88
120
  return errorHandler(fail, complete)(res);
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/lib/media.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/lib/media.ts"],"names":[],"mappings":"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"}
@@ -77,7 +77,7 @@ function _request(options) {
77
77
  controller === null || controller === void 0 ? void 0 : controller.abort();
78
78
  reject(Error('request:fail timeout'));
79
79
  clearTimeout === null || clearTimeout === void 0 ? void 0 : clearTimeout(timer);
80
- }, (_a = options.timeout) !== null && _a !== void 0 ? _a : 2000);
80
+ }, (_a = options.timeout) !== null && _a !== void 0 ? _a : 60000);
81
81
  });
82
82
  const p = Promise.race([fetchPromise, timeoutPromise]).then(resData => {
83
83
  res.data = resData;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/request/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/request/index.ts"],"names":[],"mappings":"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"}
@@ -138,7 +138,7 @@ function scanFromPhoto(callback, errorCallBack) {
138
138
  });
139
139
  }
140
140
  }
141
- }, MEDIA_TYPE.IMAGES).catch(errorCallBack);
141
+ }, MEDIA_TYPE.Images).catch(errorCallBack);
142
142
  }
143
143
  export function scanCode(option = {}) {
144
144
  return __awaiter(this, void 0, void 0, function* () {
package/libList.js CHANGED
@@ -6,6 +6,7 @@ module.exports = [
6
6
  'base64ToArrayBuffer',
7
7
  'canIUse',
8
8
  'chooseImage',
9
+ 'chooseMedia',
9
10
  'chooseVideo',
10
11
  'clearStorage',
11
12
  'clearStorageSync',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tarojs/taro-rn",
3
- "version": "4.0.0-beta.7",
3
+ "version": "4.0.0-beta.9",
4
4
  "description": "Taro RN framework",
5
5
  "main": "dist/index.js",
6
6
  "typings": "types/index.d.ts",
@@ -47,7 +47,7 @@
47
47
  "react-native-root-toast": "^3.5.1",
48
48
  "react-native-safe-area-context": "~4.8.0",
49
49
  "react-native-stylekit": "^1.0.0",
50
- "@tarojs/runtime-rn": "4.0.0-beta.7"
50
+ "@tarojs/runtime-rn": "4.0.0-beta.9"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@babel/core": "^7.14.5",
@@ -1,33 +1,5 @@
1
1
  import { chooseMedia, MEDIA_TYPE } from '../media'
2
- import { showActionSheet } from '../showActionSheet'
3
2
 
4
3
  export function chooseImage(opts: Taro.chooseImage.Option): Promise<any> {
5
- const {
6
- sourceType = ['album', 'camera'],
7
- } = opts
8
- if(sourceType?.includes('camera') && sourceType?.includes('album')) {
9
- return showImagePicker(opts)
10
- } else if (sourceType?.includes('camera')) {
11
- return chooseMedia({...opts, sourceType: ['camera']}, MEDIA_TYPE.IMAGES)
12
- }
13
- return chooseMedia({...opts, sourceType: ['album']}, MEDIA_TYPE.IMAGES)
14
- }
15
-
16
- async function showImagePicker(options: Taro.chooseImage.Option):Promise<any> {
17
- const { fail, complete } = options
18
- try {
19
- const res = await showActionSheet({
20
- itemList: ['拍照', '从手机相册选择'],
21
- })
22
- if (res.tapIndex === 0) {
23
- return chooseMedia({...options, sourceType: ['camera']}, MEDIA_TYPE.IMAGES)
24
- }
25
- if (res.tapIndex === 1) {
26
- return chooseMedia({...options, sourceType: ['album']}, MEDIA_TYPE.IMAGES)
27
- }
28
- } catch (err) {
29
- const res = { errMsg: 'chooseImage: fail' }
30
- fail?.(res)
31
- complete?.(res)
32
- }
4
+ return chooseMedia(opts, MEDIA_TYPE.Images)
33
5
  }
@@ -0,0 +1,15 @@
1
+ import { chooseMedia as _chooseMedia, MEDIA_TYPE } from '../media'
2
+
3
+ export function chooseMedia (opts: Taro.chooseMedia.Option): Promise<any> {
4
+ if (opts.mediaType?.length === 1) {
5
+ if (opts.mediaType[0] === 'video') {
6
+ return _chooseMedia(opts, MEDIA_TYPE.Videos)
7
+ } else if (opts.mediaType[0] === 'image') {
8
+ return _chooseMedia(opts, MEDIA_TYPE.Images)
9
+ } else {
10
+ return _chooseMedia(opts, MEDIA_TYPE.All)
11
+ }
12
+ } else {
13
+ return _chooseMedia(opts, MEDIA_TYPE.All)
14
+ }
15
+ }
@@ -1,35 +1,5 @@
1
1
  import { chooseMedia, MEDIA_TYPE } from '../media'
2
- import { showActionSheet } from '../showActionSheet'
3
2
 
4
3
  export function chooseVideo(opts: Taro.chooseVideo.Option): Promise<any> {
5
- const {
6
- sourceType = ['album', 'camera'],
7
- compressed
8
- } = opts
9
- opts = Object.assign(opts, { sizeType: compressed ? ['compressed'] : [] })
10
- if(sourceType?.includes('camera') && sourceType?.includes('album')) {
11
- return showVideoPicker(opts)
12
- } else if (sourceType?.includes('camera')) {
13
- return chooseMedia({...opts, sourceType: ['camera']}, MEDIA_TYPE.VIDEOS)
14
- }
15
- return chooseMedia({...opts, sourceType: ['album']}, MEDIA_TYPE.VIDEOS)
16
- }
17
-
18
- async function showVideoPicker(options: Taro.chooseVideo.Option):Promise<any> {
19
- const { fail, complete } = options
20
- try {
21
- const res = await showActionSheet({
22
- itemList: ['拍摄', '从手机相册选择'],
23
- })
24
- if (res.tapIndex === 0) {
25
- return chooseMedia({...options, sourceType: ['camera']}, MEDIA_TYPE.VIDEOS)
26
- }
27
- if (res.tapIndex === 1) {
28
- return chooseMedia({...options, sourceType: ['album']}, MEDIA_TYPE.VIDEOS)
29
- }
30
- } catch (err) {
31
- const res = { errMsg: 'chooseVideo: fail' }
32
- fail?.(res)
33
- complete?.(res)
34
- }
4
+ return chooseMedia(opts, MEDIA_TYPE.Videos)
35
5
  }
package/src/lib/index.ts CHANGED
@@ -5,6 +5,7 @@ export * from './authorize'
5
5
  export * from './base64ToArrayBuffer'
6
6
  export * from './canIUse'
7
7
  export * from './chooseImage'
8
+ export * from './chooseMedia'
8
9
  export * from './chooseVideo'
9
10
  export * from './clearStorage'
10
11
  export * from './clearStorageSync'
package/src/lib/media.ts CHANGED
@@ -1,16 +1,20 @@
1
1
  import { CameraRoll } from "@react-native-camera-roll/camera-roll"
2
2
  import { requestCameraPermissionsAsync } from 'expo-camera'
3
- import * as ImagePicker from 'expo-image-picker'
3
+ import {
4
+ requestMediaLibraryPermissionsAsync,
5
+ launchImageLibraryAsync,
6
+ launchCameraAsync,
7
+ MediaTypeOptions,
8
+ ImagePickerAsset,
9
+ } from 'expo-image-picker'
4
10
  import { successHandler, errorHandler } from '../utils'
11
+ import { showActionSheet } from "./showActionSheet"
5
12
 
6
- export const MEDIA_TYPE = {
7
- VIDEOS: 'Videos',
8
- IMAGES: 'Images'
9
- }
13
+ export const MEDIA_TYPE = MediaTypeOptions
10
14
 
11
15
  export async function saveMedia(opts: Taro.saveImageToPhotosAlbum.Option | Taro.saveVideoToPhotosAlbum.Option, type:string, API:string):Promise<TaroGeneral.CallbackResult> {
12
16
  const { filePath, success, fail, complete } = opts
13
- const { granted } = await ImagePicker.requestMediaLibraryPermissionsAsync()
17
+ const { granted } = await requestMediaLibraryPermissionsAsync()
14
18
  if (!granted) {
15
19
  const res = { errMsg: 'Permissions denied!' }
16
20
  return errorHandler(fail, complete)(res)
@@ -28,30 +32,70 @@ export async function saveMedia(opts: Taro.saveImageToPhotosAlbum.Option | Taro.
28
32
  }
29
33
  }
30
34
 
31
- export async function chooseMedia(opts: Taro.chooseImage.Option | Taro.chooseVideo.Option, mediaTypes: any): Promise<TaroGeneral.CallbackResult> {
32
- if (!opts || typeof opts !== 'object') {
33
- opts = {}
35
+ async function showPicker(opts: Taro.chooseImage.Option | Taro.chooseVideo.Option | Taro.chooseMedia.Option, mediaTypes: MediaTypeOptions):Promise<any> {
36
+ const { fail, complete } = opts
37
+ try {
38
+ const res = await showActionSheet({
39
+ itemList: ['拍摄', '从手机相册选择'],
40
+ })
41
+ if (res.tapIndex === 0) {
42
+ return _chooseMedia({...opts, sourceType: ['camera']}, mediaTypes)
43
+ }
44
+ if (res.tapIndex === 1) {
45
+ return _chooseMedia({...opts, sourceType: ['album']}, mediaTypes)
46
+ }
47
+ } catch (err) {
48
+ const res = { errMsg: `choose${
49
+ mediaTypes === MediaTypeOptions.Images ? 'Image' : mediaTypes === MediaTypeOptions.Videos ? 'Video' : 'Media'
50
+ } fail` }
51
+ fail?.(res)
52
+ complete?.(res)
53
+ }
54
+ }
55
+
56
+ export async function chooseMedia(opts: Taro.chooseImage.Option | Taro.chooseVideo.Option | Taro.chooseMedia.Option = {}, mediaTypes: MediaTypeOptions): Promise<TaroGeneral.CallbackResult> {
57
+ const {
58
+ sourceType = ['album', 'camera'],
59
+ } = opts
60
+ if(sourceType?.includes('camera') && sourceType?.includes('album')) {
61
+ return showPicker(opts, mediaTypes)
62
+ } else if (sourceType?.includes('camera')) {
63
+ return _chooseMedia({...opts, sourceType: ['camera']}, mediaTypes)
34
64
  }
35
- const { sizeType = [], sourceType = [], success, fail, complete, maxDuration, count } = opts as any
65
+ return _chooseMedia({...opts, sourceType: ['album']}, mediaTypes)
66
+ }
67
+
68
+ export async function _chooseMedia(opts: Taro.chooseImage.Option | Taro.chooseVideo.Option | Taro.chooseMedia.Option = {}, mediaTypes: MediaTypeOptions): Promise<TaroGeneral.CallbackResult> {
69
+ const {
70
+ sizeType = [],
71
+ sourceType = [],
72
+ success,
73
+ fail,
74
+ complete,
75
+ maxDuration,
76
+ count = (mediaTypes === MEDIA_TYPE.Videos ? 1 : 9),
77
+ compressed
78
+ } = opts as any
36
79
  const options = {
37
80
  mediaTypes,
38
- quality: sizeType[0] === 'compressed' ? 0.7 : 1,
81
+ quality: (sizeType[0] === 'compressed' || compressed) ? 0.7 : 1,
39
82
  videoMaxDuration: maxDuration,
40
- allowsMultipleSelection: (mediaTypes === MEDIA_TYPE.IMAGES && count > 1) ? true : false,
41
- selectionLimit: mediaTypes === MEDIA_TYPE.VIDEOS ? 1 : (count || 9),
83
+ allowsMultipleSelection: count > 1,
84
+ selectionLimit: count,
42
85
  }
86
+ const messString = mediaTypes === MediaTypeOptions.Images ? 'Image' : mediaTypes === MediaTypeOptions.Videos ? 'Video' : 'Media'
43
87
  const isCamera = sourceType[0] === 'camera'
44
- const { granted } = isCamera ? await requestCameraPermissionsAsync() : await ImagePicker.requestMediaLibraryPermissionsAsync()
88
+ const { granted } = isCamera ? await requestCameraPermissionsAsync() : await requestMediaLibraryPermissionsAsync()
45
89
  if (!granted) {
46
90
  const res = { errMsg: 'Permissions denied!' }
47
91
  return errorHandler(fail, complete)(res)
48
92
  }
49
93
 
50
- let launchMediaAsync = isCamera ? ImagePicker.launchCameraAsync : ImagePicker.launchImageLibraryAsync
94
+ let launchMediaAsync = isCamera ? launchCameraAsync : launchImageLibraryAsync
51
95
  try {
52
96
  const resp = await launchMediaAsync(options)
53
97
  let res: any = {}
54
- if (mediaTypes === MEDIA_TYPE.VIDEOS) {
98
+ if (mediaTypes === MEDIA_TYPE.Videos) {
55
99
  const asset = resp.assets?.[0]
56
100
  res = {
57
101
  ...asset,
@@ -61,11 +105,12 @@ export async function chooseMedia(opts: Taro.chooseImage.Option | Taro.chooseVid
61
105
  } else {
62
106
  res = {
63
107
  tempFilePaths: resp.assets?.map((item) => item.uri),
64
- tempFiles: resp.assets?.map((item) => ({
108
+ tempFiles: resp.assets?.map((item: ImagePickerAsset) => ({
65
109
  ...item,
66
110
  path: item.uri,
67
111
  size: item.fileSize,
68
112
  type: item.mimeType,
113
+ fileType: item.mimeType?.startsWith('video') ? 'video' : 'image',
69
114
  }))
70
115
  }
71
116
  }
@@ -73,13 +118,13 @@ export async function chooseMedia(opts: Taro.chooseImage.Option | Taro.chooseVid
73
118
  return successHandler(success, complete)(res)
74
119
  } else {
75
120
  const res = {
76
- errMsg: mediaTypes === MEDIA_TYPE.VIDEOS ? 'chooseVideo:fail cancel' : 'chooseImage:fail cancel',
121
+ errMsg: `choose${messString}:fail cancel`
77
122
  }
78
123
  return errorHandler(fail, complete)(res)
79
124
  }
80
125
  } catch (err) {
81
126
  const res = {
82
- errMsg: mediaTypes === MEDIA_TYPE.VIDEOS ? 'chooseVideo fail' : 'chooseImage fail',
127
+ errMsg: `choose${messString}:fail`,
83
128
  err
84
129
  }
85
130
  return errorHandler(fail, complete)(res)
@@ -83,7 +83,7 @@ function _request<T = any>(options: Taro.request.Option): Taro.RequestTask<T> {
83
83
  controller?.abort()
84
84
  reject(Error('request:fail timeout'))
85
85
  clearTimeout?.(timer)
86
- }, options.timeout ?? 2000)
86
+ }, options.timeout ?? 60000)
87
87
  })
88
88
 
89
89
  const p: any = Promise.race([fetchPromise, timeoutPromise]).then(resData => {
@@ -143,7 +143,7 @@ function scanFromPhoto(callback, errorCallBack) {
143
143
  })
144
144
  }
145
145
  }
146
- }, MEDIA_TYPE.IMAGES).catch(errorCallBack)
146
+ }, MEDIA_TYPE.Images).catch(errorCallBack)
147
147
  }
148
148
 
149
149
  export async function scanCode(option: Taro.scanCode.Option = {}): Promise<Taro.scanCode.SuccessCallbackResult> {
@@ -0,0 +1,3 @@
1
+ declare module '@tarojs/runtime' {
2
+ export * from '@tarojs/runtime-rn'
3
+ }