{"version":3,"sources":["jsdelivr-header.js","/npm/react-native-wechat-new@2.0.1/index.js"],"names":[],"mappings":"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","file":"/npm/react-native-wechat-new@2.0.1/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/react-native-wechat-new@2.0.1/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\n\nimport { DeviceEventEmitter, NativeModules, Platform } from 'react-native';\nimport { EventEmitter } from 'events';\n\nlet isAppRegistered = false;\nconst { WeChat } = NativeModules;\n\n// Event emitter to dispatch request and response from WeChat.\nconst emitter = new EventEmitter();\n\nDeviceEventEmitter.addListener('WeChat_Resp', resp => {\n  emitter.emit(resp.type, resp);\n});\n\nDeviceEventEmitter.addListener('WeChat_Req', resp => {\n  emitter.emit(resp.type, resp);\n});\n\nfunction wrapRegisterApp(nativeFunc) {\n  if (!nativeFunc) {\n    return undefined;\n  }\n  return (...args) => {\n    if (isAppRegistered) {\n      return Promise.resolve(true);\n    }\n    isAppRegistered = true;\n    return new Promise((resolve, reject) => {\n      nativeFunc.apply(null, [\n        ...args,\n        (error, result) => {\n          if (!error) {\n            return resolve(result);\n          }\n          if (typeof error === 'string') {\n            return reject(new Error(error));\n          }\n          reject(error);\n        },\n      ]);\n    });\n  };\n}\n\nfunction wrapApi(nativeFunc) {\n  if (!nativeFunc) {\n    return undefined;\n  }\n  return (...args) => {\n    if (!isAppRegistered) {\n      return Promise.reject(new Error('registerApp required.'));\n    }\n    return new Promise((resolve, reject) => {\n      nativeFunc.apply(null, [\n        ...args,\n        (error, result) => {\n          if (!error) {\n            return resolve(result);\n          }\n          if (typeof error === 'string') {\n            return reject(new Error(error));\n          }\n          reject(error);\n        },\n      ]);\n    });\n  };\n}\n\n/**\n * `addListener` inherits from `events` module\n * @method addListener\n * @param {String} eventName - the event name\n * @param {Function} trigger - the function when event is fired\n */\nexport const addListener = emitter.addListener.bind(emitter);\n\n/**\n * `once` inherits from `events` module\n * @method once\n * @param {String} eventName - the event name\n * @param {Function} trigger - the function when event is fired\n */\nexport const once = emitter.once.bind(emitter);\n\n/**\n * `removeAllListeners` inherits from `events` module\n * @method removeAllListeners\n * @param {String} eventName - the event name\n */\nexport const removeAllListeners = emitter.removeAllListeners.bind(emitter);\n\n/**\n * @method registerApp\n * @param {String} appid - the app id\n * @return {Promise}\n */\nexport const registerApp = wrapRegisterApp(WeChat.registerApp);\n\n// /**\n//  * @method registerAppWithDescription\n//  * @param {String} appid - the app id\n//  * @param {String} appdesc - the app description\n//  * @return {Promise}\n//  */\n// export const registerAppWithDescription = wrapRegisterApp(\n//   WeChat.registerAppWithDescription,\n// );\n\n/**\n * Return if the wechat app is installed in the device.\n * @method isWXAppInstalled\n * @return {Promise}\n */\nexport const isWXAppInstalled = wrapApi(WeChat.isWXAppInstalled);\n\n/**\n * Return if the wechat application supports the api\n * @method isWXAppSupportApi\n * @return {Promise}\n */\nexport const isWXAppSupportApi = wrapApi(WeChat.isWXAppSupportApi);\n\n/**\n * Get the wechat app installed url\n * @method getWXAppInstallUrl\n * @return {String} the wechat app installed url\n */\nexport const getWXAppInstallUrl = wrapApi(WeChat.getWXAppInstallUrl);\n\n/**\n * Get the wechat api version\n * @method getApiVersion\n * @return {String} the api version string\n */\nexport const getApiVersion = wrapApi(WeChat.getApiVersion);\n\n/**\n * Open wechat app\n * @method openWXApp\n * @return {Promise}\n */\nexport const openWXApp = wrapApi(WeChat.openWXApp);\n\n// wrap the APIs\nconst nativeShareToTimeline = wrapApi(WeChat.shareToTimeline);\nconst nativeLaunchMiniProgram = wrapApi(WeChat.launchMiniProgram);\nconst nativeShareToSession = wrapApi(WeChat.shareToSession);\nconst nativeShareToFavorite = wrapApi(WeChat.shareToFavorite);\nconst nativeSendAuthRequest = wrapApi(WeChat.sendAuthRequest);\nconst nativeShareText = wrapApi(WeChat.shareText);\nconst nativeShareImage = wrapApi(WeChat.shareImage);\nconst nativeShareLocalImage = wrapApi(WeChat.shareLocalImage);\nconst nativeShareMusic = wrapApi(WeChat.shareMusic);\nconst nativeShareVideo = wrapApi(WeChat.shareVideo);\nconst nativeShareWebpage = wrapApi(WeChat.shareWebpage);\nconst nativeShareMiniProgram = wrapApi(WeChat.shareMiniProgram);\nconst nativeSubscribeMessage = wrapApi(WeChat.subscribeMessage);\n\n\n/**\n * @method sendAuthRequest\n * @param {Array} scopes - the scopes for authentication.\n * @return {Promise}\n */\nexport function sendAuthRequest(scopes, state) {\n  console.warn('sendAuthRequest')\n  return new Promise((resolve, reject) => {\n    WeChat.sendAuthRequest(scopes, state, () => {});\n    emitter.once('SendAuth.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * Share text\n * @method shareText\n * @param {Object} data\n */\nexport function shareText(data) {\n  if (data && data.scene == null) {\n    data.scene = 0\n  }\n  return new Promise((resolve, reject) => {\n    nativeShareText(data);\n    emitter.once('SendMessageToWX.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * Share image\n * @method shareImage\n * @param {Object} data\n */\nexport function shareImage(data) {\n  if (data && data.scene == null) {\n    data.scene = 0\n  }\n  return new Promise((resolve, reject) => {\n    nativeShareImage(data);\n    emitter.once('SendMessageToWX.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * Share local image\n * @method shareLocalImage\n * @param {Object} data\n */\nexport function shareLocalImage(data) {\n  if (data && data.scene == null) {\n    data.scene = 0\n  }\n  return new Promise((resolve, reject) => {\n    nativeShareLocalImage(data);\n    emitter.once('SendMessageToWX.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * Share music\n * @method shareMusic\n * @param {Object} data\n */\nexport function shareMusic(data) {\n  if (data && data.scene == null) {\n    data.scene = 0\n  }\n  return new Promise((resolve, reject) => {\n    nativeShareMusic(data);\n    emitter.once('SendMessageToWX.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * Share video\n * @method shareVideo\n * @param {Object} data\n */\nexport function shareVideo(data) {\n  if (data && data.scene == null) {\n    data.scene = 0\n  }\n  return new Promise((resolve, reject) => {\n    nativeShareVideo(data);\n    emitter.once('SendMessageToWX.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * Share webpage\n * @method shareWebpage\n * @param {Object} data\n */\nexport function shareWebpage(data) {\n  if (data && data.scene == null) {\n    data.scene = 0\n  }\n  return new Promise((resolve, reject) => {\n    nativeShareWebpage(data);\n    emitter.once('SendMessageToWX.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n/**\n * Share miniProgram\n * @method shareMiniProgram\n * @param {Object} data\n */\nexport function shareMiniProgram(data) {\n  if (data && data.scene == null) {\n    data.scene = 0\n  }\n  if (data && data.miniProgramType == null) {\n    data.miniProgramType = 0\n  }\n  return new Promise((resolve, reject) => {\n    nativeShareMiniProgram(data);\n    emitter.once('SendMessageToWX.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * 打开小程序\n * @method launchMini\n * @param\n * @param {String} userName - 拉起的小程序的username\n * @param {Integer} miniProgramType - 拉起小程序的类型. 0-正式版 1-开发版 2-体验版\n * @param {String} path - 拉起小程序页面的可带参路径，不填默认拉起小程序首页\n */\nexport function launchMiniProgram({userName, miniProgramType = 0, path = ''}) {\n  return new Promise((resolve, reject) => {\n      if (miniProgramType !== 0 && miniProgramType !== 1 && miniProgramType !== 2) {\n          reject(new WechatError({errStr: '拉起小程序的类型不对，0-正式版 1-开发版 2-体验版', errCode: -1}))\n          return\n      }\n      nativeLaunchMiniProgram({userName, miniProgramType, path});\n      emitter.once('WXLaunchMiniProgramReq.Resp', resp => {\n          if (resp.errCode === 0) {\n              resolve(resp);\n          } else {\n              reject(new WechatError(resp));\n          }\n      });\n  });\n}\n\n/**\n * 一次性订阅消息\n * @method shareVideo\n * @param {Object} data\n */\nexport function subscribeMessage(data) {\n  if (data && data.scene == null) {\n    data.scene = 0\n  }\n  return new Promise((resolve, reject) => {\n    nativeSubscribeMessage(data);\n    emitter.once('WXSubscribeMsgReq.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * Share something to favorite\n * @method shareToFavorite\n * @param {Object} data\n * @param {String} data.thumbImage - Thumb image of the message, which can be a uri or a resource id.\n * @param {String} data.type - Type of this message. Could be {news|text|imageUrl|imageFile|imageResource|video|audio|file}\n * @param {String} data.webpageUrl - Required if type equals news. The webpage link to share.\n * @param {String} data.imageUrl - Provide a remote image if type equals image.\n * @param {String} data.videoUrl - Provide a remote video if type equals video.\n * @param {String} data.musicUrl - Provide a remote music if type equals audio.\n * @param {String} data.filePath - Provide a local file if type equals file.\n * @param {String} data.fileExtension - Provide the file type if type equals file.\n */\nexport function shareToFavorite(data) {\n  return new Promise((resolve, reject) => {\n    nativeShareToFavorite(data);\n    emitter.once('SendMessageToWX.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * wechat pay\n * @param {Object} data\n * @param {String} data.partnerId\n * @param {String} data.prepayId\n * @param {String} data.nonceStr\n * @param {String} data.timeStamp\n * @param {String} data.package\n * @param {String} data.sign\n * @returns {Promise}\n */\nexport function pay(data) {\n  function correct(actual, fixed) {\n    if (!data[fixed] && data[actual]) {\n      data[fixed] = data[actual];\n      delete data[actual];\n    }\n  }\n  correct('prepayid', 'prepayId');\n  correct('noncestr', 'nonceStr');\n  correct('partnerid', 'partnerId');\n  correct('timestamp', 'timeStamp');\n  \n  // FIXME(94cstyles)\n  // Android requires the type of the timeStamp field to be a string\n  if (Platform.OS === 'android') data.timeStamp = String(data.timeStamp)\n\n  return new Promise((resolve, reject) => {\n    WeChat.pay(data, result => {\n      if (result) reject(result);\n    });\n    emitter.once('PayReq.Resp', resp => {\n      if (resp.errCode === 0) {\n        resolve(resp);\n      } else {\n        reject(new WechatError(resp));\n      }\n    });\n  });\n}\n\n/**\n * promises will reject with this error when API call finish with an errCode other than zero.\n */\nexport class WechatError extends Error {\n  constructor(resp) {\n    const message = resp.errStr || resp.errCode.toString();\n    super(message);\n    this.name = 'WechatError';\n    this.code = resp.errCode;\n\n    // avoid babel's limition about extending Error class\n    // https://github.com/babel/babel/issues/3083\n    if (typeof Object.setPrototypeOf === 'function') {\n      Object.setPrototypeOf(this, WechatError.prototype);\n    } else {\n      this.__proto__ = WechatError.prototype;\n    }\n  }\n}\n\n"]}