UNPKG

zmp-sdk

Version:

Zalo Mini App SDK

2 lines (1 loc) 3.09 kB
import e from'./../external/@swc/helpers/src/_class_call_check.mjs.js';import t from'./../external/@swc/helpers/src/_get.mjs.js';import n from'./../external/@swc/helpers/src/_get_prototype_of.mjs.js';import a from'./../external/@swc/helpers/src/_inherits.mjs.js';import r from'./../external/@swc/helpers/src/_create_super.mjs.js';import o from'./../external/eventemitter3/index.js';import c from"../utils/debug.js";import{stringToData as s,postMessageToWidget as i}from"../utils/common.js";import{CHECKOUT_KIT_WIDGET_ID as l,APP_ID as m}from"../constants.js";import{transformPaymentDataFromOnDataCallback as u,transformPaymentDataFromPath as p,PaymentConfig as d}from"./apis/general/payment/utils.js";import{Events as v}from"../types/enum.js";var f="ACTION_CALLBACK";var h=function(o){a(i,o);var s=r(i);function i(){var t;return e(this,i),(t=s.apply(this,arguments)).debug=c("zmp:event-emitter"),t}var l=i.prototype;return l.h5ConfirmHandleEvent=function(e,t,n){ZaloJavaScriptInterface.jsH5EventCallback(e,t,n||"")},l.on=function(e,a,r){var o=this;if(e===f||e===v.PaymentCallback)return t(n(i.prototype),"on",this).call(this,e,a,r);this.debug("register ".concat(String(e),": ").concat(r));return t(n(i.prototype),"on",this).call(this,e,(function(t,n){o.h5ConfirmHandleEvent(t,e,r),a(n)}),r)},l.once=function(e,a,r){var o=this;if(e===f)return t(n(i.prototype),"once",this).call(this,e,a,r);this.debug("register once ".concat(String(e),": ").concat(r));return t(n(i.prototype),"once",this).call(this,e,(function(t,n){o.h5ConfirmHandleEvent(t,e,r),a(n)}),r)},i.getInstance=function(){return i.instance||(i.instance=new i),i.instance},i}(o);function _(e){h.getInstance().on(f,e)}function g(e){h.getInstance().emit(f,e)}window.onNativeMessage=function(e,t){return function(n){g({serialId:e,actionName:t,result:n})}},window.zaloJSV2={zalo_h5_event_handler:function(e,t,n){var a=c("zmp:zalo_h5_event_handler");a("eventId: ".concat(e,", eventName: ").concat(t,", eventData: ").concat(n));var r=s(n);a("stringToData",r);var o=function(e,t){if(!t||"string"==typeof t)return t;try{if(e===v.OpenApp){var n=t.url,a=new URL(n),r=a.pathname.split("/zapps/".concat(m))[1];return{path:"".concat(r||"/").concat(a.search)}}return t}catch(e){return t}}(t,r),f=function(e,t,n,a){switch(!0){case"string"==typeof n||null===n:return[{eventName:e,eventId:t,data:n}];case e===v.OpenApp&&(null==a?void 0:a.enablePaymentDone):var r=p(n.path);return[{eventName:v.PaymentDone,eventId:t,data:r}];case e===v.OnDataCallback:if(["PAY_BY_BANK","PAY_BY_CUSTOM_METHOD"].includes(null==n?void 0:n.eventType))return[{eventName:v.OnDataCallback,eventId:t,data:n},{eventName:v.PaymentDone,eventId:t,data:u(n)}];break;default:return[{eventName:e,eventId:t,data:n}]}}(t,e,o,d);null==f||f.forEach((function(e){h.getInstance().emit(e.eventName,e.eventId,e.data);var t=document.getElementById(l);t&&i(t,"appEvent",{eventName:e.eventName,eventId:e.eventId,data:e.data})}))}},window.zaloNative2JS={nativeCall:function(e,t,n){h.getInstance().emit(v.PaymentCallback,e,t,n)}};export{h as MPEEmitter,g as fireActionMessage,_ as onActionMessage};