zmp-sdk 2.19.2 → 2.21.0
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/browser.min.js +1370 -1346
- package/dist/index.es.js +1371 -1347
- package/dist/index.js +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/types/src/apis/index.d.ts +3 -0
- package/dist/types/src/apis/payment.d.ts +14 -14
- package/dist/types/src/constants.d.ts +90 -20
- package/dist/types/src/decorator.d.ts +22 -0
- package/dist/types/src/errorHandler.d.ts +12 -0
- package/dist/types/src/services/mock-mp-service.d.ts +2 -1
- package/dist/types/src/services/navigationBar.d.ts +2 -37
- package/dist/types/src/services/zalo-mp-service.d.ts +4 -2
- package/dist/types/src/storage/nativeStorage.d.ts +1 -2
- package/dist/types/src/types/enum.d.ts +2 -7
- package/dist/types/src/types/inputData.d.ts +5 -0
- package/dist/types/src/types/interface.d.ts +2 -1
- package/dist/types/src/utils/lodash.d.ts +1 -0
- package/dist/types/src/utils/response.d.ts +8 -8
- package/dist/types/src/zaloJsBridge.d.ts +16 -2
- package/package.json +1 -1
- package/dist/types/src/bridgeProvider.d.ts +0 -19
- package/dist/types/src/middleware/error.middleware.d.ts +0 -18
- package/dist/types/src/middleware/validate.middleware.d.ts +0 -9
package/dist/index.umd.js
CHANGED
|
@@ -12,4 +12,4 @@
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */function t(e,t,n,i){var o,r=arguments.length,a=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(r<3?o(a):r>3?o(t,n,a):o(t,n))||a);return r>3&&a&&Object.defineProperty(t,n,a),a}function n(e,t){return function(n,i){t(n,i,e)}}function i(e,t,n,i){return new(n||(n=Promise))((function(o,r){function a(e){try{l(i.next(e))}catch(e){r(e)}}function s(e){try{l(i.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((i=i.apply(e,t||[])).next())}))}function o(e,t,n,i){if("a"===n&&!i)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?i:"a"===n?i.call(e):i?i.value:t.get(e)}function r(e,t,n,i,o){if("m"===i)throw new TypeError("Private method is not writable");if("a"===i&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===i?o.call(e,n):o?o.value=n:t.set(e,n),n}var a=Object.prototype;var s=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||a)};var l=function(e,t){return function(n){return e(t(n))}}(Object.keys,Object),c=Object.prototype.hasOwnProperty;var u=function(e){if(!s(e))return l(e);var t=[];for(var n in Object(e))c.call(e,n)&&"constructor"!=n&&t.push(n);return t},d="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function p(e,t){return e(t={exports:{}},t.exports),t.exports}var h="object"==typeof d&&d&&d.Object===Object&&d,v="object"==typeof self&&self&&self.Object===Object&&self,f=h||v||Function("return this")(),m=f.Symbol,g=Object.prototype,y=g.hasOwnProperty,_=g.toString,E=m?m.toStringTag:void 0;var S=function(e){var t=y.call(e,E),n=e[E];try{e[E]=void 0;var i=!0}catch(e){}var o=_.call(e);return i&&(t?e[E]=n:delete e[E]),o},A=Object.prototype.toString;var O=function(e){return A.call(e)},T=m?m.toStringTag:void 0;var b=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":T&&T in Object(e)?S(e):O(e)};var w=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)};var N,P=function(e){if(!w(e))return!1;var t=b(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},I=f["__core-js_shared__"],C=(N=/[^.]+$/.exec(I&&I.keys&&I.keys.IE_PROTO||""))?"Symbol(src)_1."+N:"";var k=function(e){return!!C&&C in e},R=Function.prototype.toString;var B=function(e){if(null!=e){try{return R.call(e)}catch(e){}try{return e+""}catch(e){}}return""},D=/^\[object .+?Constructor\]$/,j=Function.prototype,M=Object.prototype,L=j.toString,U=M.hasOwnProperty,W=RegExp("^"+L.call(U).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var x=function(e){return!(!w(e)||k(e))&&(P(e)?W:D).test(B(e))};var z=function(e,t){return null==e?void 0:e[t]};var F=function(e,t){var n=z(e,t);return x(n)?n:void 0},G=F(f,"DataView"),H=F(f,"Map"),$=F(f,"Promise"),V=F(f,"Set"),Z=F(f,"WeakMap"),J="[object Map]",K="[object Promise]",q="[object Set]",Q="[object WeakMap]",Y="[object DataView]",X=B(G),ee=B(H),te=B($),ne=B(V),ie=B(Z),oe=b;(G&&oe(new G(new ArrayBuffer(1)))!=Y||H&&oe(new H)!=J||$&&oe($.resolve())!=K||V&&oe(new V)!=q||Z&&oe(new Z)!=Q)&&(oe=function(e){var t=b(e),n="[object Object]"==t?e.constructor:void 0,i=n?B(n):"";if(i)switch(i){case X:return Y;case ee:return J;case te:return K;case ne:return q;case ie:return Q}return t});var re=oe;var ae=function(e){return null!=e&&"object"==typeof e};var se=function(e){return ae(e)&&"[object Arguments]"==b(e)},le=Object.prototype,ce=le.hasOwnProperty,ue=le.propertyIsEnumerable,de=se(function(){return arguments}())?se:function(e){return ae(e)&&ce.call(e,"callee")&&!ue.call(e,"callee")},pe=Array.isArray;var he=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var ve=function(e){return null!=e&&he(e.length)&&!P(e)};var fe=function(){return!1},me=p((function(e,t){var n=t&&!t.nodeType&&t,i=n&&e&&!e.nodeType&&e,o=i&&i.exports===n?f.Buffer:void 0,r=(o?o.isBuffer:void 0)||fe;e.exports=r})),ge={};ge["[object Float32Array]"]=ge["[object Float64Array]"]=ge["[object Int8Array]"]=ge["[object Int16Array]"]=ge["[object Int32Array]"]=ge["[object Uint8Array]"]=ge["[object Uint8ClampedArray]"]=ge["[object Uint16Array]"]=ge["[object Uint32Array]"]=!0,ge["[object Arguments]"]=ge["[object Array]"]=ge["[object ArrayBuffer]"]=ge["[object Boolean]"]=ge["[object DataView]"]=ge["[object Date]"]=ge["[object Error]"]=ge["[object Function]"]=ge["[object Map]"]=ge["[object Number]"]=ge["[object Object]"]=ge["[object RegExp]"]=ge["[object Set]"]=ge["[object String]"]=ge["[object WeakMap]"]=!1;var ye=function(e){return ae(e)&&he(e.length)&&!!ge[b(e)]};var _e=function(e){return function(t){return e(t)}},Ee=p((function(e,t){var n=t&&!t.nodeType&&t,i=n&&e&&!e.nodeType&&e,o=i&&i.exports===n&&h.process,r=function(){try{var e=i&&i.require&&i.require("util").types;return e||o&&o.binding&&o.binding("util")}catch(e){}}();e.exports=r})),Se=Ee&&Ee.isTypedArray,Ae=Se?_e(Se):ye,Oe=Object.prototype.hasOwnProperty;var Te=function(e){if(null==e)return!0;if(ve(e)&&(pe(e)||"string"==typeof e||"function"==typeof e.splice||me(e)||Ae(e)||de(e)))return!e.length;var t=re(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(s(e))return!u(e).length;for(var n in e)if(Oe.call(e,n))return!1;return!0};var be=function(e){return void 0===e};var we=function(e){return null===e};var Ne=function(e){return"string"==typeof e||!pe(e)&&ae(e)&&"[object String]"==b(e)};var Pe=function(e){return"number"==typeof e||ae(e)&&"[object Number]"==b(e)};var Ie=function(e){return ae(e)&&"[object RegExp]"==b(e)},Ce=Ee&&Ee.isRegExp,ke=Ce?_e(Ce):Ie;var Re=function(e){return"symbol"==typeof e||ae(e)&&"[object Symbol]"==b(e)},Be=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,De=/^\w*$/;var je=function(e,t){if(pe(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!Re(e))||(De.test(e)||!Be.test(e)||null!=t&&e in Object(t))},Me=F(Object,"create");var Le=function(){this.__data__=Me?Me(null):{},this.size=0};var Ue=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},We=Object.prototype.hasOwnProperty;var xe=function(e){var t=this.__data__;if(Me){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return We.call(t,e)?t[e]:void 0},ze=Object.prototype.hasOwnProperty;var Fe=function(e){var t=this.__data__;return Me?void 0!==t[e]:ze.call(t,e)};var Ge=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Me&&void 0===t?"__lodash_hash_undefined__":t,this};function He(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}He.prototype.clear=Le,He.prototype.delete=Ue,He.prototype.get=xe,He.prototype.has=Fe,He.prototype.set=Ge;var $e=He;var Ve=function(){this.__data__=[],this.size=0};var Ze=function(e,t){return e===t||e!=e&&t!=t};var Je=function(e,t){for(var n=e.length;n--;)if(Ze(e[n][0],t))return n;return-1},Ke=Array.prototype.splice;var qe=function(e){var t=this.__data__,n=Je(t,e);return!(n<0)&&(n==t.length-1?t.pop():Ke.call(t,n,1),--this.size,!0)};var Qe=function(e){var t=this.__data__,n=Je(t,e);return n<0?void 0:t[n][1]};var Ye=function(e){return Je(this.__data__,e)>-1};var Xe=function(e,t){var n=this.__data__,i=Je(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this};function et(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}et.prototype.clear=Ve,et.prototype.delete=qe,et.prototype.get=Qe,et.prototype.has=Ye,et.prototype.set=Xe;var tt=et;var nt=function(){this.size=0,this.__data__={hash:new $e,map:new(H||tt),string:new $e}};var it=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e};var ot=function(e,t){var n=e.__data__;return it(t)?n["string"==typeof t?"string":"hash"]:n.map};var rt=function(e){var t=ot(this,e).delete(e);return this.size-=t?1:0,t};var at=function(e){return ot(this,e).get(e)};var st=function(e){return ot(this,e).has(e)};var lt=function(e,t){var n=ot(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this};function ct(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}ct.prototype.clear=nt,ct.prototype.delete=rt,ct.prototype.get=at,ct.prototype.has=st,ct.prototype.set=lt;var ut=ct;function dt(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var i=arguments,o=t?t.apply(this,i):i[0],r=n.cache;if(r.has(o))return r.get(o);var a=e.apply(this,i);return n.cache=r.set(o,a)||r,a};return n.cache=new(dt.Cache||ut),n}dt.Cache=ut;var pt=dt;var ht=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,vt=/\\(\\)?/g,ft=function(e){var t=pt(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ht,(function(e,n,i,o){t.push(i?o.replace(vt,"$1"):n||e)})),t}));var mt=function(e,t){for(var n=-1,i=null==e?0:e.length,o=Array(i);++n<i;)o[n]=t(e[n],n,e);return o},gt=m?m.prototype:void 0,yt=gt?gt.toString:void 0;var _t=function e(t){if("string"==typeof t)return t;if(pe(t))return mt(t,e)+"";if(Re(t))return yt?yt.call(t):"";var n=t+"";return"0"==n&&1/t==-Infinity?"-0":n};var Et=function(e){return null==e?"":_t(e)};var St=function(e,t){return pe(e)?e:je(e,t)?[e]:ft(Et(e))};var At=function(e){if("string"==typeof e||Re(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t};var Ot=function(e,t){for(var n=0,i=(t=St(t,e)).length;null!=e&&n<i;)e=e[At(t[n++])];return n&&n==i?e:void 0};var Tt=function(e,t,n){var i=null==e?void 0:Ot(e,t);return void 0===i?n:i},bt=function(){try{var e=F(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();var wt=function(e,t,n){"__proto__"==t&&bt?bt(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n},Nt=Object.prototype.hasOwnProperty;var Pt=function(e,t,n){var i=e[t];Nt.call(e,t)&&Ze(i,n)&&(void 0!==n||t in e)||wt(e,t,n)},It=/^(?:0|[1-9]\d*)$/;var Ct=function(e,t){var n=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==n||"symbol"!=n&&It.test(e))&&e>-1&&e%1==0&&e<t};var kt=function(e,t,n,i){if(!w(e))return e;for(var o=-1,r=(t=St(t,e)).length,a=r-1,s=e;null!=s&&++o<r;){var l=At(t[o]),c=n;if("__proto__"===l||"constructor"===l||"prototype"===l)return e;if(o!=a){var u=s[l];void 0===(c=i?i(u,l,s):void 0)&&(c=w(u)?u:Ct(t[o+1])?[]:{})}Pt(s,l,c),s=s[l]}return e};var Rt,Bt,Dt,jt,Mt,Lt,Ut,Wt,xt,zt,Ft,Gt={isEmpty:Te,isNull:we,isUndefined:be,isFunction:P,isObject:w,isString:Ne,isNumber:Pe,isArray:pe,isRegExp:ke,get:Tt,set:function(e,t,n){return null==e?e:kt(e,t,n)}};function Ht(e){return"function"==typeof window.Debug?window.Debug(e):function(...e){process.env.NODE_ENV}}e.NetworkType=void 0,(Rt=e.NetworkType||(e.NetworkType={})).none="none",Rt.wifi="wifi",Rt.cellular="cellular",Rt.unknown="unknown",e.PlatformType=void 0,(Bt=e.PlatformType||(e.PlatformType={})).wp="wp",Bt.android="android",Bt.iOS="iOS",Bt.unknown="unknown",e.ProfileType=void 0,(Dt=e.ProfileType||(e.ProfileType={}))[Dt.user=1]="user",Dt[Dt.oa=0]="oa",Dt[Dt.aliasOA=2]="aliasOA",e.ChatType=void 0,(jt=e.ChatType||(e.ChatType={}))[jt.user=1]="user",jt[jt.oa=0]="oa",e.PostFeedType=void 0,(Mt=e.PostFeedType||(e.PostFeedType={}))[Mt.image=1]="image",Mt[Mt.link=4]="link",Mt[Mt.profile=5]="profile",e.ShareSheetType=void 0,(Lt=e.ShareSheetType||(e.ShareSheetType={}))[Lt.image=1]="image",Lt[Lt.gif=11]="gif",Lt[Lt.video=12]="video",Lt[Lt.link=4]="link",Lt[Lt.oa=5]="oa",Lt[Lt.zmp=20]="zmp",e.OrientationType=void 0,(Ut=e.OrientationType||(e.OrientationType={}))[Ut.auto=1]="auto",Ut[Ut.portrait=2]="portrait",Ut[Ut.landscape=3]="landscape",e.VibrateType=void 0,(Wt=e.VibrateType||(e.VibrateType={}))[Wt.oneShot=0]="oneShot",e.NativeCode=void 0,(xt=e.NativeCode||(e.NativeCode={}))[xt.token_invalid=-2]="token_invalid",xt[xt.not_permission=-1]="not_permission",xt[xt.client_not_support=-5]="client_not_support",xt[xt.decode_failed=-4]="decode_failed",e.Events=void 0,(zt=e.Events||(e.Events={})).AppPaused="h5.event.paused",zt.AppResumed="h5.event.resumed",zt.NetworkChanged="h5.event.connection.changed",zt.OnDataCallback="h5.event.webview.result",zt.OpenApp="h5.event.open.mp",e.MediaPickerType=void 0,(Ft=e.MediaPickerType||(e.MediaPickerType={}))[Ft.photo=4]="photo",Ft[Ft.video=5]="video",Ft[Ft.file=6]="file";const $t=e=>{const t=document.cookie;if(t){const o=t.split("; ");if(o&&o.length>0)for(var n=e.length+1,i=o.length-1;i>=0;i--){let t=o[i];if(t&&0===t.indexOf(e)&&(t=t.substring(n,t.length),t))return t=t.replace(/["']/g,""),t}}return null},Vt=e=>$t(`${window.location.host}_`+e),Zt=e=>$t((()=>{const e=window.location.host;if(e){if(e.indexOf("zalo.me")>=0)return"zalo.me_";if(e.indexOf("baomoi.com")>=0)return"baomoi.com_";if(e.indexOf("mp3.zing.vn")>=0)return"mp3.zing.vn_";if(e.indexOf("zaloapp.com")>=0)return"zaloapp.com_"}return""})()+e),Jt=1048576,Kt=window.zAppID,qt=window.APP_ID,Qt=window.APP_CONFIG||{},Yt="h5.zdn.vn_zoauth",Xt="h5.zdn.vn_zlink3rd",en="h5.zdn.vn_zoauth_vrf",tn="https://graph.zalo.me/v2.0/me",nn="https://h5.zalo.me/openapi/access_token",on="https://oauth.zaloapp.com/v3/access_token",rn="https://graph.zalo.me/v2.0/me/friends/list",an=5*Jt,sn=e=>({NONE:e?-2:0,WIFI:e?0:1,"2G":2,"3G":e?15:2,"4G":e?13:2}),ln={GET_DOWNLOADED_STICKER:{name:"action.get.downloaded.sticker",have_callback:!0},OPEN_SHARE_STICKER:{name:"action.open.share.sticker"},OPEN_PROFILE:{name:"action.open.profile"},OPEN_FEED_DETAIL:{name:"action.open.feeddetail"},OPEN_FRIEND_RADA:{name:"action.open.friendrada"},OPEN_INAPP:{name:"action.open.inapp"},OPEN_OUTAPP:{name:"action.open.outapp"},OPEN_PAGE:{name:"action.open.page"},OPEN_PHOTODETAIL:{name:"action.open.photodetail"},OPEN_GALARY:{name:"action.open.galary"},OPEN_GAMECENTER:{name:"action.open.gamecenter"},OPEN_GAMENEWS:{name:"action.open.gamenews"},OPEN_TAB_CONTACT:{name:"action.open.tab.contact"},OPEN_TAB_SOCIAL:{name:"action.open.tab.social"},OPEN_FRIENDSUGGEST:{name:"action.open.friendsuggest"},OPEN_GROUPLIST:{name:"action.open.grouplist"},OPEN_NEARBY:{name:"action.open.nearby"},OPEN_ROOM:{name:"action.open.room"},OPEN_STICKERSTORE:{name:"action.open.stickerstore"},OPEN_CREATECHAT:{name:"action.open.createchat"},COPY_LINK_CATESTICKER:{name:"action.copy.link.catesticker"},REQUEST_BUY_STICKER:{name:"action.request.buy.sticker"},OPEN_CHAT:{name:"action.open.chat"},OPEN_TAB_CHAT:{name:"action.open.tab.chat"},OPEN_CHATGROUP:{name:"action.open.chatgroup"},OPEN_ADDFRIEND:{name:"action.open.addfriend"},OPEN_TAB_MORE:{name:"action.open.tab.more"},OPEN_POSTFEED:{name:"action.open.postfeed"},OPEN_LOGINDEVICES:{name:"action.open.logindevices"},OPEN_SENDSTICKER:{name:"action.open.sendsticker"},REPORT_ABUSE:{name:"action.report.abuse",have_callback:!0},FOLLOW_OA:{name:"action.follow.oa",have_callback:!0},UNFOLLOW_OA:{name:"action.unfollow.oa",have_callback:!0},OPEN_GAMEDETAIL:{name:"action.open.gamedetail"},OPEN_SHARESHEET:{name:"action.open.sharesheet",have_callback:!0},REQUEST_PERMISSION_CAMERA:{name:"action.request.permission.camera"},CHANGE_TITLE_HEADER:{name:"action.change.title.header",skip_jump:!0},WEBVIEW_CLEARCACHE:{name:"action.webview.clearcache"},WEBVIEW_CONFIRMCACHE:{name:"action.webview.confirmcache"},WEBVIEW_ISVISIBLE:{name:"action.webview.isvisible"},WEBVIEW_NETWORKTYPE:{name:"action.webview.networktype",skip_jump:!0},CHANGE_BUTTON_HEADER:{name:"action.change.button.header"},CREATE_OPTIONS_MENU:{name:"action.create.options.menu",skip_jump:!0,have_callback:!0},CREATE_SHORTCUT:{name:"action.create.shortcut"},CHANGE_ACTIONBAR_LEFTBUTTON_TYPE:{name:"action.change.actionbar.leftbutton.type",skip_jump:!0,have_callback:!0},WINDOW_CLOSE:{name:"action.window.close",skip_jump:!0,have_callback:!0},WEBVIEW_CHECKRESERROR:{name:"action.webview.checkResError"},IAP_REQUESTPAYMENT:{name:"action.iap.requestpayment"},ZBROWSER_GETSTATS:{name:"action.zbrowser.getstats"},ZBROWSER_JSBRIDGE:{name:"action.zbrowser.jsbridge",skip_jump:!0,have_callback:!0},PROMPT_AUTHENTICATION:{name:"action.prompt.authentication"},CHANGE_ACTIONBAR_COLOR:{name:"action.change.actionbar.color",skip_jump:!0},PROMPT_AUTHENTICATION_CHECK_STATE:{name:"action.prompt.authentication.check_state"},OPEN_APPSTORE:{name:"action.open.appstore"},GET_LOCATION:{name:"action.get.location",have_callback:!0},QUERY_LOCATION_HIDE:{name:"action.query.location.hide",have_callback:!0},SHOW_TOAST:{name:"action.show.toast",have_callback:!0},OPEN_APP:{name:"action.open.app"},HIDE_KEYBOARD:{name:"action.hide.keyboard"},OPEN_PHONE:{name:"action.open.phone"},OPEN_QR:{name:"action.open.qr"},OPEN_SMS:{name:"action.open.sms"},VIEW_MYQR:{name:"action.view.myqr",have_callback:!0},KEEP_SCREEN:{name:"action.keep.screen",have_callback:!0},CHANGE_AUTOROTATE:{name:"action.change.autorotate",skip_jump:!0},CHECK_APP_INSTALLED:{name:"action.check.app.installed"},QUERY_SHOW:{name:"action.query.show"},QUERY_HIDE:{name:"action.query.hide"},OPEN_INAPPRW:{name:"action.open.inapprw"},ZALORUN_GETTRACKINGSTATUS:{name:"action.zalorun.getTrackingStatus",have_callback:!0},ZALORUN_SETTRACKINGSTATUS:{name:"action.zalorun.setTrackingStatus",have_callback:!0},ZALORUN_GETDAYSTEP:{name:"action.zalorun.getDayStep",have_callback:!0},ZALORUN_FORCESUBMITDATA:{name:"action.zalorun.forceSubmitData",have_callback:!0},ZALORUN_SETWEIGHT:{name:"action.zalorun.setWeight",have_callback:!0},OPEN_PROFILE_EXT:{name:"action.open.profile.ext"},DOWNLOAD_CATE:{name:"action.download.cate",have_callback:!0},JUMP_LOGIN:{name:"action.jump.login",skip_jump:!0,white_list:!0},OPEN_ADTIMA_ADS_INTERSTITIAL:{name:"action.open.adtima.ads.interstitial"},OPEN_ADTIMA_ADS:{name:"action.open.adtima.ads"},GET_ADIDCLIENT:{name:"action.get.adidclient"},SCAN_IBEACON:{name:"action.scan.ibeacon"},INTERACTIVE_VIBRATION:{name:"action.interactive.vibration"},SAVE_IMAGE_GALLERY:{name:"action.save.image.gallery",version_live:{iOS:408}},OPEN_MP:{name:"action.open.mp",version_live:{iOS:402}},CHANGE_ACTIONBAR:{name:"action.change.actionbar",version_live:{iOS:402},skip_jump:!0},ZBROWSER_MPDS:{name:"action.zbrowser.mpds",version_live:{iOS:402}},WEBVIEW_SET_RESULT:{name:"action.webview.set.result",version_live:{iOS:416}},MP_GET_NUMBER:{name:"action.mp.get.number",version_live:{iOS:416}},MP_OPEN_PROFILE_PICKER:{name:"action.mp.open.profile.picker",version_live:{iOS:432}},GET_SUPPORTED_ACTIONS:{name:"action.get.supported.actions",white_list:!0},MP_JOIN_WIFI:{name:"action.mp.join.wifi",version_live:{android:0,iOS:999},have_permission:!1,white_list:!1},PICK_MEDIA:{name:"action.pick.media",version_live:{iOS:440}},MP_CLOSE_LOADINGVIEW:{name:"action.mp.close.loadingview"}},cn=0,un=-1400,dn=-1500,pn=-1401,hn=-1403,vn=-1404,fn={SUCCESS:"Success",READ_MORE:"Read more at: https://miniapp.zalo.me/docs/api",LOGIN_REQUIRED:"Please login before to call this api. Read more at: https://miniapp.zalo.me/docs/api/login",LOGIN_FAILED:"Login failed.",NOT_PERMISSION:"You don't have permission to call this api",CLIENT_NOT_SUPPORT:"This API is not supported in this Zalo version",DECODE_FAILED:"Can not decode your data. Read more at: https://miniapp.zalo.me/docs/api/error"},mn="apps/get-info",gn={android:12100571,iOS:400,wp:0,unknown:0},yn=[ln.GET_DOWNLOADED_STICKER.name,ln.OPEN_SHARE_STICKER.name,ln.OPEN_PROFILE.name,ln.OPEN_FEED_DETAIL.name,ln.OPEN_FRIEND_RADA.name,ln.OPEN_INAPP.name,ln.OPEN_OUTAPP.name,ln.OPEN_PAGE.name,ln.OPEN_PHOTODETAIL.name,ln.OPEN_GALARY.name,ln.OPEN_GAMECENTER.name,ln.OPEN_GAMENEWS.name,ln.OPEN_TAB_CONTACT.name,ln.OPEN_TAB_SOCIAL.name,ln.OPEN_FRIENDSUGGEST.name,ln.OPEN_GROUPLIST.name,ln.OPEN_NEARBY.name,ln.OPEN_ROOM.name,ln.OPEN_STICKERSTORE.name,ln.OPEN_CREATECHAT.name,ln.COPY_LINK_CATESTICKER.name,ln.REQUEST_BUY_STICKER.name,ln.OPEN_CHAT.name,ln.OPEN_TAB_CHAT.name,ln.OPEN_CHATGROUP.name,ln.OPEN_ADDFRIEND.name,ln.OPEN_TAB_MORE.name,ln.OPEN_POSTFEED.name,ln.OPEN_LOGINDEVICES.name,ln.OPEN_SENDSTICKER.name,ln.REPORT_ABUSE.name,ln.FOLLOW_OA.name,ln.UNFOLLOW_OA.name,ln.OPEN_GAMEDETAIL.name,ln.OPEN_SHARESHEET.name,ln.REQUEST_PERMISSION_CAMERA.name,ln.CHANGE_TITLE_HEADER.name,ln.WEBVIEW_CLEARCACHE.name,ln.WEBVIEW_CONFIRMCACHE.name,ln.WEBVIEW_ISVISIBLE.name,ln.WEBVIEW_NETWORKTYPE.name,ln.CHANGE_BUTTON_HEADER.name,ln.CREATE_OPTIONS_MENU.name,ln.CREATE_SHORTCUT.name,ln.CHANGE_ACTIONBAR_LEFTBUTTON_TYPE.name,ln.WINDOW_CLOSE.name,ln.WEBVIEW_CHECKRESERROR.name,ln.IAP_REQUESTPAYMENT.name,ln.ZBROWSER_GETSTATS.name,ln.ZBROWSER_JSBRIDGE.name,ln.PROMPT_AUTHENTICATION.name,ln.CHANGE_ACTIONBAR_COLOR.name,ln.PROMPT_AUTHENTICATION_CHECK_STATE.name,ln.OPEN_APPSTORE.name,ln.GET_LOCATION.name,ln.QUERY_LOCATION_HIDE.name,ln.SHOW_TOAST.name,ln.OPEN_APP.name,ln.HIDE_KEYBOARD.name,ln.OPEN_PHONE.name,ln.OPEN_QR.name,ln.OPEN_SMS.name,ln.VIEW_MYQR.name,ln.KEEP_SCREEN.name,ln.CHANGE_AUTOROTATE.name,ln.CHECK_APP_INSTALLED.name,ln.QUERY_SHOW.name,ln.QUERY_HIDE.name,ln.OPEN_INAPPRW.name,ln.ZALORUN_GETTRACKINGSTATUS.name,ln.ZALORUN_SETTRACKINGSTATUS.name,ln.ZALORUN_GETDAYSTEP.name,ln.ZALORUN_FORCESUBMITDATA.name,ln.ZALORUN_SETWEIGHT.name,ln.OPEN_PROFILE_EXT.name,ln.DOWNLOAD_CATE.name,ln.JUMP_LOGIN.name,ln.OPEN_ADTIMA_ADS_INTERSTITIAL.name,ln.OPEN_ADTIMA_ADS.name,ln.GET_ADIDCLIENT.name,ln.SCAN_IBEACON.name,ln.SAVE_IMAGE_GALLERY.name,ln.OPEN_MP.name,ln.CHANGE_ACTIONBAR.name,ln.INTERACTIVE_VIBRATION.name,ln.ZBROWSER_MPDS.name],_n=0,En=3,Sn=1,An=0,On="https://payment-mini.zalo.me/api/order/create",Tn="https://payment-mini.zalo.me/api/transaction";class bn{constructor(e,t,n){this.code=e,this.message=t,this.api=n}toString(){return`api: ${this.api}; code: ${this.code}; message: ${this.message}`}}class wn extends bn{constructor(e,t){super(e,t),this.message=`${t}. ${fn.READ_MORE}`,this.handler()}handler(){switch(this.code){case e.NativeCode.token_invalid:this.code=pn,this.message=fn.LOGIN_REQUIRED;break;case e.NativeCode.not_permission:this.code=hn,this.message=fn.NOT_PERMISSION;break;case e.NativeCode.client_not_support:this.code=vn,this.message=fn.CLIENT_NOT_SUPPORT;break;case e.NativeCode.decode_failed:this.message=fn.DECODE_FAILED}}}const Nn={handler:null,setHandler(e){this.handler=e}};Nn.setHandler(((e,t)=>t instanceof bn?(t.api=e,t):new bn(-2001,Gt.isNull(t.message)?"Unknown Error":t.message,e)));const Pn=(e,t,n)=>{const o=n.value;return n.value=function(...e){return i(this,void 0,void 0,(function*(){const{success:n,fail:r}=Array.isArray(e)&&e.length>0&&e[0];return new Promise(((a,s)=>i(this,void 0,void 0,(function*(){try{const t=yield o.apply(this,e);!Gt.isNull(n)&&Gt.isFunction(n)?n.call(null,t,this):a(t)}catch(e){if("login"!==(null==e?void 0:e.api)&&((null==e?void 0:e.code)===pn||(null==e?void 0:e.code)===hn)){let t=!1;this instanceof Eo&&(t=this.getLoginStatus()),t||(e=new bn(pn,fn.LOGIN_REQUIRED))}const{handler:n}=Nn,i=n.call(null,t,e,this);window.zmpSentry&&window.zmpSentry.throwError(i.toString()),!Gt.isNull(r)&&Gt.isFunction(r)?r.call(null,i,this):s(i)}}))))}))},n},In=(e,t,n)=>{const i=n.value;return n.value=function(...e){try{return i.apply(this,e)}catch(e){if("login"!==(null==e?void 0:e.api)&&((null==e?void 0:e.code)===pn||(null==e?void 0:e.code)===hn)){let t=!1;this instanceof Eo&&(t=this.getLoginStatus()),t||(e=new bn(pn,fn.LOGIN_REQUIRED))}const{handler:n}=Nn,i=n.call(null,t,e,this);throw window.zmpSentry&&window.zmpSentry.throwError(i.toString()),i}},n},Cn=(e,t)=>({code:cn,message:t||fn.SUCCESS,data:e||{}}),kn={badRequest:e=>new bn(un,e),loginFailed:()=>new bn(un,fn.LOGIN_FAILED),loginRequired:()=>new bn(pn,fn.LOGIN_REQUIRED),missingParam:e=>new bn(un,`Missing required argument: ${e}`),wrongTypeParam:(e,t,n)=>new bn(un,`Wrong type of parameter '${e}'. Expected ${t}, but got ${n}`),cannotGetShareInfo:()=>new bn(dn,"Can not get app info to share"),lengthInvalid:e=>new bn(un,`${e} length is invalid.`)};const Rn={encode:function(e){var t=[];for(var n in e)if(e.hasOwnProperty(n)){var i=e[n];if(void 0===i)return;if(null===i)return void t.push(n);t.push(encodeURIComponent(n)+"="+encodeURIComponent(i))}return t.join("&")},decode:function(e,t){var n={};if(""===e)return n;for(var i=e.split("&"),o=0;o<i.length;o++){var r=i[o].split("=",2),a=decodeURIComponent(r[0]);if(t&&Object.prototype.hasOwnProperty.call(n,a))throw new URIError("Duplicate key: "+a);n[a]=2===r.length?decodeURIComponent(r[1]):null}return n},appendToUrl:function(e,t){return e+(-1!==e.indexOf("?")?"&":"?")+("string"==typeof t?t:Rn.encode(t))},getParameterByName:function(e,t){t||(t=window.location.href),e=e.replace(/[\[\]]/g,"\\$&");var n=new RegExp("[?&]"+e+"(=([^&#]*)|&|#|$)").exec(t);return n?n[2]?decodeURIComponent(n[2].replace(/\+/g," ")):"":null},getParamsAsObject:function(e){var t={};return e?(e.split("&").map((function(e){var n=e.split("=");n&&2==n.length&&(t[n[0]]=decodeURIComponent(n[1].replace(/\+/g," ")))})),t):t},toQueryString:function(e){if(!e)return"";if("object"!=(void 0===e?"undefined":typeof e))return e;var t=Object.keys(e),n=[];return t.map((function(t){var i=e[t],o=[t,i="object"==(void 0===i?"undefined":typeof i)?JSON.stringify(i):encodeURIComponent(i)].join("=");n.push(o)})),n.join("&")}},Bn=new RegExp("[\\u0300-\\u036f]","g"),Dn=new RegExp("[đ|Đ]","g"),jn=new RegExp("\\s","g"),Mn=Ht("zmp:utils:common"),Ln=e=>{try{new URL(e)}catch(e){return!1}return!0},Un=()=>navigator.userAgent||navigator.vendor||window.opera,Wn=()=>{const e=Un().toLowerCase();return{isWP:/iemobile/.test(e),isAndroid:/android/i.test(e)&&!/iemobile/.test(e),isIOS:/iphone|ios|ipad|ipod/.test(e)&&!/iemobile/.test(e),isMobile:/android|iphone|ios|ipad|ipod|iemobile/.test(e),isZalo:/zalo/.test(e)}},xn=e=>{const t=document.getElementsByTagName("meta");for(let n=0;n<t.length;n++)if(t[n].getAttribute("name")===e||t[n].getAttribute("property")===e)return t[n].getAttribute("content");return""},zn=()=>{const e=Un().toLowerCase().split("zalo")[1];if(e){return e.replace(" ","").split("/")[1]||""}return""},Fn=()=>{let t=Wn();return t.isWP?e.PlatformType.wp:t.isAndroid?e.PlatformType.android:t.isIOS?e.PlatformType.iOS:e.PlatformType.unknown},Gn=(e,t)=>{const n=t.toLowerCase(),i=n.split(/[<>]/i),o="array"===i[0];return!!("url"===n&&Ln(e)||o&&("array"===n&&Array.isArray(e)||((e,t)=>Array.isArray(t)&&!t.some((t=>"url"===e?!Ln(t):typeof t!==e)))(i[1],e))||!Array.isArray(e)&&typeof e===t)},Hn=e=>(e=>{let t=Vt(e);return t||(t=Zt(e),t)?t:$t(e)})(e),$n=e=>{if(Gt.isObject(JSON)&&JSON.parse&&Gt.isString(e)){const t=e.replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\x00/g,"");return JSON.parse(t,((e,t)=>t))}return Gt.isObject(e)?e:new Function("return "+e)()},Vn=e=>{if(Gt.isObject(JSON)&&JSON.stringify)return JSON.stringify(e);if(void 0===e)return"undefined";if(null===e)return"null";try{if("string"==typeof e||null!==e.constructor.toString().match(/string/i))return'"'+e.replace(/"/g,'\\"')+'"'}catch(e){console.log(e)}var t;if(null!==Object.prototype.toString.call(e).match(/array/i)){t=new Array;for(var n=e.length,i=0;i<n;i++)t.push(Vn(e[i]));return"["+t.join(",")+"]"}if("object"==typeof e){for(var o in t=new Array,e)t.push('"'+o+'":'+Vn(e[o]));return"{"+t.join(",")+"}"}return e.toString()},Zn=()=>{try{const e=Number(zn()),t=Fn();return e>=gn[t]}catch(e){return!0}},Jn=e=>JSON.stringify(e).replace(/"/g,'\\"').replace(/'/g,"'"),Kn=e=>{try{if(e){Mn(e);const t=e.replace(/\\/g,"").replace(/'/g,"'");return Mn("formattedValue",t,JSON.parse(t),typeof JSON.parse(t)),JSON.parse(t)}return null}catch(t){return Mn("parse json error:",t),e}},qn=(e,t,n,o,r,a)=>i(void 0,void 0,void 0,(function*(){const i=new URL(location.href),s=new URLSearchParams;let l=`${i.pathname}${i.search}`;a&&(l=`/zapps/${e}${"/"===a[0]?"":"/"}${a}`);const c=new URL(`https://zalo.me/app/link${l}`);s.append("title",n),s.append("description",o||""),s.append("thumbnail",r),s.append("url",c.href),s.append("accessToken",t||"");const u=yield fetch("https://h5.zalo.me/openapi/create-sharelink",Object.assign({method:"POST",body:s},{headers:{"Content-Type":"application/x-www-form-urlencoded"}})),d=yield u.json();if(!d||0!==d.err)throw kn.cannotGetShareInfo();return c.search=`${c.search}&zshareId=${d.data.shareId}`,Object.assign(Object.assign({},d.data),{shareableLink:c.href})})),Qn=(e,t)=>n=>{if(!(Array.isArray(e)?e.some((e=>Gn(n,e))):Gn(n,e)))return{error:!0,errorMessage:e};if(t){if(Array.isArray(null==t?void 0:t.values))return{error:!(null==t?void 0:t.values.includes(n)),errorMessage:null==t?void 0:t.values.toString()};if(Gt.isNumber(null==t?void 0:t.maxLength))return{error:Gt.isString(n)&&n.length>(null==t?void 0:t.maxLength),errorMessage:`data length must <= ${null==t?void 0:t.maxLength}`};if(Gt.isNumber(null==t?void 0:t.min)&&Gt.isNumber(null==t?void 0:t.max))return{error:n<(null==t?void 0:t.min)||n>(null==t?void 0:t.max),errorMessage:`data must be in between ${null==t?void 0:t.min} and ${null==t?void 0:t.max}`};if(Gt.isNumber(null==t?void 0:t.min))return{error:n<(null==t?void 0:t.min),errorMessage:`data must >= ${null==t?void 0:t.min}`};if(Gt.isNumber(null==t?void 0:t.max))return{error:n>(null==t?void 0:t.max),errorMessage:`data must <= ${null==t?void 0:t.max}`};if(Gt.isRegExp(null==t?void 0:t.regex))return{error:!t.regex.test(n),errorMessage:"data must valid"}}return{error:!1}},Yn=(e,t,n)=>i(void 0,void 0,void 0,(function*(){const i={appId:e,versionStatus:t};Gt.isUndefined(n)||(i.currentVersion=n);const o=Rn.appendToUrl(`https://h5.zalo.me/${mn}`,i),r=yield fetch(o,{credentials:"include"});if(r.ok){const e=yield r.json();if(e.err<0||!e.data)throw new Error(e);return{name:e.data.name,version:e.data.version,description:e.data.description,appUrl:e.data.appUrl,qrCodeUrl:e.data.qrCodeUrl,logoUrl:e.data.logoUrl}}throw new Error("Can't get app info")}));var Xn=p((function(e){var t=Object.prototype.hasOwnProperty,n="~";function i(){}function o(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function r(e,t,i,r,a){if("function"!=typeof i)throw new TypeError("The listener must be a function");var s=new o(i,r||e,a),l=n?n+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],s]:e._events[l].push(s):(e._events[l]=s,e._eventsCount++),e}function a(e,t){0==--e._eventsCount?e._events=new i:delete e._events[t]}function s(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(n=!1)),s.prototype.eventNames=function(){var e,i,o=[];if(0===this._eventsCount)return o;for(i in e=this._events)t.call(e,i)&&o.push(n?i.slice(1):i);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(e)):o},s.prototype.listeners=function(e){var t=n?n+e:e,i=this._events[t];if(!i)return[];if(i.fn)return[i.fn];for(var o=0,r=i.length,a=new Array(r);o<r;o++)a[o]=i[o].fn;return a},s.prototype.listenerCount=function(e){var t=n?n+e:e,i=this._events[t];return i?i.fn?1:i.length:0},s.prototype.emit=function(e,t,i,o,r,a){var s=n?n+e:e;if(!this._events[s])return!1;var l,c,u=this._events[s],d=arguments.length;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),d){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,t),!0;case 3:return u.fn.call(u.context,t,i),!0;case 4:return u.fn.call(u.context,t,i,o),!0;case 5:return u.fn.call(u.context,t,i,o,r),!0;case 6:return u.fn.call(u.context,t,i,o,r,a),!0}for(c=1,l=new Array(d-1);c<d;c++)l[c-1]=arguments[c];u.fn.apply(u.context,l)}else{var p,h=u.length;for(c=0;c<h;c++)switch(u[c].once&&this.removeListener(e,u[c].fn,void 0,!0),d){case 1:u[c].fn.call(u[c].context);break;case 2:u[c].fn.call(u[c].context,t);break;case 3:u[c].fn.call(u[c].context,t,i);break;case 4:u[c].fn.call(u[c].context,t,i,o);break;default:if(!l)for(p=1,l=new Array(d-1);p<d;p++)l[p-1]=arguments[p];u[c].fn.apply(u[c].context,l)}}return!0},s.prototype.on=function(e,t,n){return r(this,e,t,n,!1)},s.prototype.once=function(e,t,n){return r(this,e,t,n,!0)},s.prototype.removeListener=function(e,t,i,o){var r=n?n+e:e;if(!this._events[r])return this;if(!t)return a(this,r),this;var s=this._events[r];if(s.fn)s.fn!==t||o&&!s.once||i&&s.context!==i||a(this,r);else{for(var l=0,c=[],u=s.length;l<u;l++)(s[l].fn!==t||o&&!s[l].once||i&&s[l].context!==i)&&c.push(s[l]);c.length?this._events[r]=1===c.length?c[0]:c:a(this,r)}return this},s.prototype.removeAllListeners=function(e){var t;return e?(t=n?n+e:e,this._events[t]&&a(this,t)):(this._events=new i,this._eventsCount=0),this},s.prototype.off=s.prototype.removeListener,s.prototype.addListener=s.prototype.on,s.prefixed=n,s.EventEmitter=s,e.exports=s}));class ei extends Xn{constructor(){super(),this.debug=Ht("zmp:event-emitter")}static getInstance(){return ei.instance||(ei.instance=new ei),ei.instance}h5ConfirmHandleEvent(e,t,n){ZaloJavaScriptInterface.jsH5EventCallback(e,t,n||"")}on(e,t,n){this.debug(`register ${e}: ${n}`);return super.on(e,((i,o)=>{this.h5ConfirmHandleEvent(i,e,n),t(o)}),n)}once(e,t,n){this.debug(`register once ${e}: ${n}`);return super.once(e,((i,o)=>{this.h5ConfirmHandleEvent(i,e,n),t(o)}),n)}}var ti={},ni=function(e,t,n){var i=t||"default";return function(){var t=i in ti?ti[i](e,n):e;return t.apply(this,arguments)}};ni.setWrapper=function(e){var t=arguments.length<=1||void 0===arguments[1]?"default":arguments[1];ti[t]=e};var ii={error:{code:1,error_subcode:1357046,message:"Received Invalid JSON reply.",type:"http"}};function oi(e){try{return null===e?ii:JSON.parse(e)}catch(e){return ii}}var ri,ai={execute:function(e,t,n,i){n.suppress_http_code=1;var o=Rn.encode(n);"post"!=t&&(e=Rn.appendToUrl(e,o),o="");var r=function(e,t){if(!self.XMLHttpRequest)return null;var n=new XMLHttpRequest,i=function(){};if(!("withCredentials"in n))return null;n.open(e,t,!0),n.setRequestHeader("Content-type","application/x-www-form-urlencoded");var o={send:function(e){n.send(e)}},r=ni((function(){r=i,"onload"in o&&o.onload(n)}),"entry","XMLHttpRequest:load"),a=ni((function(){a=i,"onerror"in o&&o.onerror(n)}),"entry","XMLHttpRequest:error");return n.onload=function(){r()},n.onerror=function(){a()},n.onreadystatechange=function(){4==n.readyState&&(200==n.status?r():a())},o}(t,e);return!!r&&(r.onload=function(e){i(oi(e.responseText))},r.onerror=function(e){e.responseText?i(oi(e.responseText)):i({error:{code:1,error_subcode:1357045,message:"unknown error (empty response)",status:e.status,type:"http"}})},r.send(o),!0)}};class si extends Xn{constructor(){super(),this.debug=Ht("zmp:ZaloJSBridge"),this.events=ei.getInstance(),this._accessTk=Hn("zacc_session")||"DEFAULT_ACCESS_TOKEN",this._jsAccessTk=Hn("zlink3rd")||"DEFAULT_JS_TOKEN",this.results=[],this._userAgent=Un(),this._device=Wn(),this._jsCallFuncCallbacks={},this.events.on(e.Events.AppPaused,(()=>{if(this.results.length>0){let e=this.results;this.results=[];try{this.sendLogData(e)}catch(e){}}})),this.sendLogTimer?clearInterval(this.sendLogTimer):this.sendLogTimer=setInterval((()=>{if(this.results.length>0){let e=this.results;this.results=[];try{this.sendLogData(e)}catch(e){}}}),5e3)}static getInstance(){return si.instance||(si.instance=new si),si.instance}set accessTk(e){this._accessTk=e}set jsAccessTk(e){this._jsAccessTk=e}sendLogData(e){try{ai.execute("https://h5.zalo.me/log/async","post",{appId:window.APP_ID,data:JSON.stringify(e)},(e=>{}))}catch(e){}}onJSCall(e,t){try{this.debug("onJSCall",e,t);const n=$n(t);if(this._jsCallFuncCallbacks[e]){const t=this._jsCallFuncCallbacks[e].callback,i=this._jsCallFuncCallbacks[e].timeout;if(t){try{t.call(this,n)}catch(e){console.error("Call callback error",e)}i&&clearTimeout(i),this._jsCallFuncCallbacks[e]=null,delete this._jsCallFuncCallbacks[e]}}this.results.push({action:n.action,error:n.error_code})}catch(e){console.log("onJSCall","error",e)}}onMultiJSCall(e,t){try{this.debug("onMultiJSCall",e,t);const n=$n(t);if(this._jsCallFuncCallbacks[e]){const t=this._jsCallFuncCallbacks[e].callback,i=this._jsCallFuncCallbacks[e].timeout;if(t){try{t.call(this,n)}catch(e){console.error("Call callback error",e)}i&&clearTimeout(i)}}this.results.push({action:n.action,error:n.error_code})}catch(e){console.log("onMultiJSCall","error",e)}}nativeEventHandler(e,t,n){this.debug(`eventId: ${e}, eventName: ${t}, eventData: ${n}`);const i=Kn(n);this.debug(i);const o=this.handleEventData(t,i);this.events.emit(t,e,o)}handleEventData(t,n){try{switch(t){case e.Events.OpenApp:const{url:t}=n,i=new URL(t),o=i.pathname.split(`/zapps/${qt}`)[1];return{path:`${o||"/"}${i.search}`};default:return n}}catch(e){return n}}defaultCallback(e){null!=e&&(e=$n(e))}jsCall(e,t,n,i=!1,o=3,r=!0){try{const a=e.name,s=((e="")=>`${e.normalize("NFD").replace(Bn,"").replace(Dn,"d").replace(jn,"").toLowerCase()}_${Math.random().toString(36).substr(2,4)}`)(a);if(!this._device.isMobile||Gt.isEmpty(a))return this.onJSCall(s,{error_code:-13,error_message:"params invalid!",data:{device:this._device.isMobile,jsToken:this._jsAccessTk,access_token:this._accessTk},action:a}),!1;null==t&&(t={}),n||(n=this.defaultCallback);const l={error_code:-14,error_message:"Request Timeout!",data:{},action:a};this._jsCallFuncCallbacks[s]={timeout:r&&e.have_callback&&setTimeout((()=>{this.onJSCall(s,l)}),8e3),callback:n};try{return t=Vn(t),i?this._device.isIOS?ZaloJavaScriptInterface.jsCall(this._jsAccessTk,a,this._accessTk,t,window.onMultiJSCall(s)):ZaloJavaScriptInterface.jsCall(this._jsAccessTk,a,this._accessTk,t,`window.onMultiJSCall('${s}')`):this._device.isIOS?ZaloJavaScriptInterface.jsCall(this._jsAccessTk,a,this._accessTk,t,window.onJSCall(s)):ZaloJavaScriptInterface.jsCall(this._jsAccessTk,a,this._accessTk,t,`window.onJSCall('${s}')`)}catch(r){if(!(o-- >0)){const e={error_code:-5,error_message:"Not ready!",data:{userAgent:this._userAgent,options:t,jsToken:this._jsAccessTk,access_token:this._accessTk},action:a,js_error:r};return this.onJSCall(s,e),!1}setTimeout((()=>{this.jsCall(e,t,n,i,o)}),500)}}catch(e){console.log("jsCall","error",e)}return!1}}class li{constructor(){this.debug=Ht("zmp:ZJSBridgeProvider"),ri.set(this,void 0),r(this,ri,si.getInstance(),"f")}setZAccSession(e){o(this,ri,"f").accessTk=e}setJSToken(e){o(this,ri,"f").jsAccessTk=e}callNative(e,t,n){return this.debug(e.name,t),new Promise(((r,a)=>{const s=o=>i(this,void 0,void 0,(function*(){try{const i=new wn(o.error_code,`${o.action}: ${o.error_message}`);if(null==n?void 0:n.callback){const e=yield n.callback(o,i);return r(e)}if(o&&o.error_code>=0)r(o.data||{});else if(o&&o.error_code<0){try{window.zmpSentry&&window.zmpSentry.captureMessage(`${e.name}: call native fail`,{extra:{data:t,rs:o}})}catch(e){}return a(i)}}catch(e){return a(e)}})),l=Wn().isIOS,c=(e=>{var t;const n=zn(),i=(null===(t=null==e?void 0:e.version_live)||void 0===t?void 0:t.iOS)||0;return!!(Array.isArray(window.ignoreCheckSupport)&&window.ignoreCheckSupport.length>0&&window.ignoreCheckSupport.includes(e.name))||n>=i})(e);if(l&&!c){const t=new wn(-5,`${e}: Client isn't support this action`);return a(t)}(null==n?void 0:n.delay)?setTimeout((()=>{o(this,ri,"f").jsCall(e,t,s,null==n?void 0:n.isMultiCallback,null==n?void 0:n.nRetry,null==n?void 0:n.haveTimeout)}),n.delay):o(this,ri,"f").jsCall(e,t,s,null==n?void 0:n.isMultiCallback,null==n?void 0:n.nRetry,null==n?void 0:n.haveTimeout)}))}}ri=new WeakMap;var ci,ui,di,pi,hi,vi="2.19.2";class fi{static getVersion(){return vi}static getSystemInfo(){return{version:xn("version-id")||"",apiVersion:vi,zaloVersion:zn(),platform:Fn(),language:navigator.language,zaloLanguage:window.zLanguage||"vi",zaloTheme:window.zTheme||"light"}}static getAppInfo(){return i(this,void 0,void 0,(function*(){const e=this.getAppId(),t=this.getSystemInfo();return yield Yn(e,0,t.version)}))}}class mi{static setNavigationBarTitle(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.CHANGE_TITLE_HEADER,{title:e.title},{haveTimeout:!1})}))}static setNavigationBarColor(e){return i(this,void 0,void 0,(function*(){const t={};let n;Gt.isEmpty(e.textColor)||(t.textColor=e.textColor),Gt.isString(e.color)&&e.color.length>0?(Gt.isEmpty(e.color)||(t.backgroundColor=e.color),n=5):(Gt.isEmpty(e.statusBarColor)||(t.backgroundColor=e.statusBarColor),n=6),this.setActionBarConfig((e=>Object.assign(Object.assign({},e),{actionbarType:n,dataConfig:Object.assign(Object.assign({},e.dataConfig),t)}))),yield this.callNative(ln.CHANGE_ACTIONBAR,Object.assign({},this.getActionBarConfig()),{haveTimeout:!1})}))}static setNavigationBarLeftButton(e){return i(this,void 0,void 0,(function*(){const t="none"===e.type||"home"===e.type?En:_n,n="home"===e.type||"both"===e.type?Sn:An;this.setActionBarConfig((e=>Object.assign(Object.assign({},e),{buttonType:t,dataConfig:Object.assign(Object.assign({},e.dataConfig),{viewInLeftType:t}),homeConfig:Object.assign(Object.assign({},e.homeConfig),{enable:n})}))),yield this.callNative(ln.CHANGE_ACTIONBAR_LEFTBUTTON_TYPE,Object.assign({},this.getActionBarConfig()),{haveTimeout:!1})}))}static setNavigationBarRightButton(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.CREATE_OPTIONS_MENU,{supportToolBar:e.supportToolBar,reset:e.reset,menuListItems:e.menuListItems,zapp:this.getAppId()})}))}}class gi{static setBackgroundColor(e){return i(this,void 0,void 0,(function*(){Gt.isString(e.backgroundColor)&&e.backgroundColor.length>0&&(yield this.callNative(ln.CHANGE_ACTIONBAR,{actionbarType:this.isShowNavBar?5:6,dataConfig:{backgroundColor:e.backgroundColor,textColor:e.textColor}}))}))}}class yi{constructor(e,t,n,i){this.title=i,this.severity=t;const o=new Date;if(this.time=o.toLocaleTimeString(),this.content=e,n>0){const e=(new Error).stack;this.stack=e?e.replace("Error\n",""):""}}toString(){return(this.content.stack?[this.title,this.severity.toUpperCase(),this.time,this.content,this.content.stack.replace("Error:","")]:[this.title,this.severity.toUpperCase(),this.time,JSON.stringify(this.content),this.stack]).join(" ")}}ci=new WeakMap,ui=new WeakMap,di=new WeakMap,pi=new WeakMap,hi=new WeakMap;const _i=new class{constructor(){ci.set(this,3),ui.set(this,["none","error","warn","info"]),di.set(this,"[zmp] > "),pi.set(this,{error:0,warn:0,info:0,firstError:null,lastError:null}),hi.set(this,((e,t,n)=>{o(this,pi,"f")[o(this,ui,"f")[e]]++;const i=o(this,ui,"f")[e];if(r(this,di,o(this,di,"f")+("string"!=typeof t?new yi(t,i,e,n).toString():t),"f"),!(e>o(this,ci,"f")))switch(e){case 1:console.error(o(this,di,"f"));break;case 2:console.warn(o(this,di,"f"));break;case 3:console.info(o(this,di,"f"));break;default:throw new Error("internal")}}))}setLogLevel(e){r(this,ci,e,"f")}info(e){o(this,hi,"f").call(this,3,e)}warn(e,t){o(this,hi,"f").call(this,2,e,t)}error(e,t){o(this,hi,"f").call(this,1,e,t)}getMetrics(){return o(this,pi,"f")}};class Ei{static setDeviceOrientation(t){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.CHANGE_AUTOROTATE,{autoRotate:e.OrientationType[t.rotate]})}))}static getNetworkType(t){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.WEBVIEW_NETWORKTYPE,{url:window.location.href,featureId:""}).then((t=>{const n=t.network;let i;const o=Wn().isAndroid;switch(n){case sn(o).NONE:i=e.NetworkType.none;break;case sn(o).WIFI:i=e.NetworkType.wifi;break;case sn(o)["2G"]:case sn(o)["3G"]:case sn(o)["4G"]:i=e.NetworkType.cellular;break;default:i=e.NetworkType.unknown}return{networkType:i}}))}))}static onNetworkStatusChange(t){return i(this,void 0,void 0,(function*(){yield this.events.on(e.Events.NetworkChanged,(e=>{const n=e&&e.state;this.getNetworkType().then((e=>{const i={isConnected:"CONNECTED"===n,networkType:e&&e.networkType};t(i)})).catch((e=>{_i.error(e,"onNetworkStatusChange")}))}))}))}static startBeaconDiscovery(e){var t,n,o,r,a;return i(this,void 0,void 0,(function*(){const i={subaction:0,scanning_type:Gt.isNumber(null==e?void 0:e.scanningType)?e.scanningType:0,data:{scan_from_source:Gt.isString(null==e?void 0:e.scanFromSource)?e.scanFromSource:"",expire:Gt.isNumber(null==e?void 0:e.expire)?e.expire:3e3,monitor_interval:Gt.isNumber(null==e?void 0:e.monitorInterval)?e.monitorInterval:60,domain:Gt.isString(null==e?void 0:e.domain)?e.domain:"",scan_config:{scan_time:Gt.isNumber(null===(t=null==e?void 0:e.scanConfig)||void 0===t?void 0:t.scanTime)?e.scanConfig.scanTime:15e3,time_between_scan:Gt.isNumber(null===(n=null==e?void 0:e.scanConfig)||void 0===n?void 0:n.timeBetweenScan)?e.scanConfig.timeBetweenScan:1e4,beacon_timeout:Gt.isNumber(null===(o=null==e?void 0:e.scanConfig)||void 0===o?void 0:o.beaconTimeout)?e.scanConfig.beaconTimeout:3e4,delayCheckConnectedTimeout:Gt.isNumber(null===(r=null==e?void 0:e.scanConfig)||void 0===r?void 0:r.delayCheckConnectedTimeout)?e.scanConfig.delayCheckConnectedTimeout:5e3,beaconConnectedTimeout:Gt.isNumber(null===(a=null==e?void 0:e.scanConfig)||void 0===a?void 0:a.beaconConnectedTimeout)?e.scanConfig.beaconConnectedTimeout:6e5},items:Array.isArray(null==e?void 0:e.items)?null==e?void 0:e.items:[]}};return yield this.callNative(ln.SCAN_IBEACON,Object.assign({},i)),!0}))}static stopBeaconDiscovery(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.SCAN_IBEACON,Object.assign({},{subaction:2})),!0}))}static getBeacons(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.SCAN_IBEACON,Object.assign({},{subaction:1}),{isMultiCallback:!0}).then((e=>{const t={beacons:[]};return Array.isArray(e)&&e.forEach((e=>{const n={uuid:e.uuid,major:e.major,minor:e.minor,distance:e.distance,rssi:e.rssi};t.beacons.push(n)})),t}))}))}static stopBluetoothDevicesDiscovery(){return i(this,void 0,void 0,(function*(){return this.callNative({name:""},{})}))}static startBluetoothDevicesDiscovery(e){return i(this,void 0,void 0,(function*(){return this.callNative({name:""},Object.assign({},e))}))}static openBluetoothAdapter(){return i(this,void 0,void 0,(function*(){return this.callNative({name:""},{})}))}static onBluetoothDeviceFound(){return i(this,void 0,void 0,(function*(){return this.callNative({name:""},{})}))}static onBluetoothAdapterStateChange(){return i(this,void 0,void 0,(function*(){return Promise.resolve()}))}static getConnectedBluetoothDevices(e){return i(this,void 0,void 0,(function*(){const t={services:e.services||[]};return this.callNative({name:""},t)}))}static getBluetoothDevices(){return i(this,void 0,void 0,(function*(){return this.callNative({name:""},{})}))}static getBluetoothAdapterState(){return i(this,void 0,void 0,(function*(){return this.callNative({name:""},{})}))}static closeBluetoothAdapter(){return i(this,void 0,void 0,(function*(){return this.callNative({name:""},{})}))}static scanQRCode(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.OPEN_QR,{skipOpenLink:!0})}))}static showToast(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.SHOW_TOAST,{toast:e.message})}))}static hideKeyboard(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.HIDE_KEYBOARD,{})}))}static openPhone(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.OPEN_PHONE,{phoneNum:e.phoneNumber,phoneCode:e.phoneNumber})}))}static openSMS(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.OPEN_SMS,{content:e.content,phoneCode:e.phoneNumber})}))}static keepScreen(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.KEEP_SCREEN,{data:{keep_screen_on:e.keepScreenOn?1:0}})}))}static openBioAuthentication(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.PROMPT_AUTHENTICATION,{secret_data:e.secretData,app_id:this.getZAppId(),ui:{title:e.ui.title,sub_title:e.ui.subTitle,negative_text:e.ui.negativeButtonText},require_fingerprint:e.requireFingerprint?1:0}).then((e=>{var t,n,i,o;return{code:null==e?void 0:e.error_code,message:null==e?void 0:e.error_message,data:{domain:null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.domain,code:null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.error_code,message:null===(i=null==e?void 0:e.data)||void 0===i?void 0:i.error_message,payToken:null===(o=null==e?void 0:e.data)||void 0===o?void 0:o.pay_token}}}))}))}static checkStateBioAuthentication(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.PROMPT_AUTHENTICATION_CHECK_STATE,{}).then((e=>({bioState:null==e?void 0:e.bio_state})))}))}static vibrate(t){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.INTERACTIVE_VIBRATION,{type:e.VibrateType[t.type],vibrate_time:t.milliseconds})}))}static connectWifi(e){return i(this,void 0,void 0,(function*(){let t="open";return Gt.isString(e.password)&&e.password.length>0&&(t="wpa_wpa2"),yield this.callNative(ln.MP_JOIN_WIFI,{ssid:e.SSID,securityType:t,password:e.password,hiddenSsid:e.hiddenSSID})}))}static openAppStore(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.OPEN_APPSTORE,e)}))}}var Si,Ai,Oi,Ti,bi,wi,Ni,Pi,Ii,Ci,ki,Ri,Bi,Di,ji,Mi,Li,Ui,Wi,xi,zi,Fi,Gi,Hi,$i,Vi,Zi,Ji;class Ki{constructor(e){Si.set(this,localStorage),Ai.set(this,void 0),Oi.set(this,void 0),Wn(),r(this,Oi,{keys:new Set,currentSize:0,limitSize:an},"f"),r(this,Ai,e,"f"),this.findAllCurrentDataByApp(e)}findAllCurrentDataByApp(e){try{let t;for(t in o(this,Si,"f")){if(e){if(t.split("_")[0]!==e)continue}o(this,Oi,"f").keys.add(t)}}catch(e){_i.error(e,"LocalResourceStorage > findAllCurrentDataByApp")}}get(e){let t=new Map;return e.forEach((e=>{t.set(e,this.getSync(e))})),Promise.resolve(t)}getSync(e){return o(this,Ai,"f")&&(e=`${o(this,Ai,"f")}_${e}`),o(this,Oi,"f").keys.has(e)?o(this,Si,"f").getItem(e):null}set(e){return i(this,void 0,void 0,(function*(){return Object.entries(e).forEach((([e,t])=>{this.setSync(e,t.replace(/\\"/g,'"'))})),Promise.resolve({errorKeys:[]})}))}setSync(e,t){o(this,Ai,"f")&&(e=`${o(this,Ai,"f")}_${e}`),o(this,Si,"f").setItem(e,t),o(this,Oi,"f").keys.add(e)}getInfo(){return i(this,void 0,void 0,(function*(){return Promise.resolve(this.getInfoSync())}))}getInfoSync(){const e=((e,t)=>{let n,i,o=0;for(i in e){const r=i.split("_")[0];e.hasOwnProperty(i)&&(t&&r!==t||(n=2*(e[i].length+i.length),o+=n))}return o})(o(this,Si,"f"),o(this,Ai,"f"));return{currentSize:Gt.isNumber(e)?Number((e/1024).toFixed(2)):0,limitSize:Number(5120..toFixed(2))}}remove(e){return i(this,void 0,void 0,(function*(){return e.forEach((e=>{this.removeSync(e)})),Promise.resolve({errorKeys:[]})}))}removeSync(e){o(this,Ai,"f")&&(e=`${o(this,Ai,"f")}_${e}`),o(this,Oi,"f").keys.has(e)&&(o(this,Si,"f").removeItem(e),o(this,Oi,"f").keys.delete(e))}clear(){return i(this,void 0,void 0,(function*(){return Promise.resolve(this.clearSync())}))}clearSync(){o(this,Oi,"f").keys.forEach((e=>{o(this,Ai,"f")&&e.indexOf(o(this,Ai,"f"))<0||(o(this,Si,"f").removeItem(e),o(this,Oi,"f").keys.delete(e))}))}}Si=new WeakMap,Ai=new WeakMap,Oi=new WeakMap;class qi extends li{constructor(e){super(),Ti.set(this,void 0),bi.set(this,void 0),r(this,bi,{keys:new Set,currentSize:0,limitSize:an},"f"),r(this,Ti,e,"f")}get(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.ZBROWSER_MPDS,{mpds_action:"mpds.get",mpds_data:{keys:e},appId:o(this,Ti,"f")},{isMultiCallback:!1}).then((e=>{let t=new Map;return e&&e.mpds_data&&e.mpds_data.map&&(t=new Map(Object.entries(e.mpds_data.map))),t}))}))}set(e){return i(this,void 0,void 0,(function*(){return{errorKeys:yield this.callNative(ln.ZBROWSER_MPDS,{mpds_action:"mpds.set",mpds_data:{map:e},appId:o(this,Ti,"f")},{isMultiCallback:!1}).then((e=>{let t=[];return e&&e.mpds_data&&e.mpds_data.error_keys&&(t=e.mpds_data.error_keys),t}))}}))}getInfo(){return i(this,void 0,void 0,(function*(){const e=yield this.callNative(ln.ZBROWSER_MPDS,{mpds_action:"mpds.get.size",mpds_data:{},appId:o(this,Ti,"f")},{isMultiCallback:!1}).then((e=>{let t=0;return e&&e.mpds_data&&e.mpds_data.size&&(t=e.mpds_data.size),t}));return{currentSize:Gt.isNumber(e)?Number(e/1024):0,limitSize:Number(5120)}}))}remove(e){return i(this,void 0,void 0,(function*(){return{errorKeys:yield this.callNative(ln.ZBROWSER_MPDS,{mpds_action:"mpds.remove.key",mpds_data:{keys:e},appId:o(this,Ti,"f")},{isMultiCallback:!1}).then((e=>{let t=[];return e&&e.mpds_data&&e.mpds_data.error_keys&&(t=e.mpds_data.error_keys),t}))}}))}clear(){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.ZBROWSER_MPDS,{mpds_action:"mpds.clear.appData",mpds_data:{},appId:o(this,Ti,"f")})}))}}Ti=new WeakMap,bi=new WeakMap;class Qi{getDataFromStorage(e){return i(this,void 0,void 0,(function*(){const t=this.getInstance(),n=yield t.get(e),i={};return n.forEach(((e,t)=>{i[t]=Kn(e)})),i}))}putDataToStorage(e){return i(this,void 0,void 0,(function*(){const t=this.getInstance(),n={};return Object.entries(e).forEach((([e,t])=>{Gt.isUndefined(t)||Gt.isNull(t)||(n[e]=Jn(t))})),yield t.set(n)}))}removeDataFromStorage(e){return i(this,void 0,void 0,(function*(){const t=this.getInstance();return yield t.remove(e)}))}clearStorage(){return i(this,void 0,void 0,(function*(){const e=this.getInstance();yield e.clear()}))}getStorageInfo(){return i(this,void 0,void 0,(function*(){const e=this.getInstance();return yield e.getInfo()}))}}class Yi extends Qi{constructor(e){super(),wi.set(this,void 0),r(this,wi,e,"f")}getInstance(){return new Ki(o(this,wi,"f"))}}wi=new WeakMap;class Xi extends Qi{constructor(e){super(),Ni.set(this,void 0),r(this,Ni,e,"f")}getInstance(){return new qi(o(this,Ni,"f"))}}Ni=new WeakMap;class eo{static setStorage(e){return i(this,void 0,void 0,(function*(){let t=new Yi(this.getAppId());return Zn()&&(t=new Xi(this.getAppId())),yield t.putDataToStorage(e.data)}))}static getStorage(e){return i(this,void 0,void 0,(function*(){let t=new Yi(this.getAppId());Zn()&&(t=new Xi(this.getAppId()));return yield t.getDataFromStorage(e.keys)}))}static getStorageInfo(e){return i(this,void 0,void 0,(function*(){let e=new Yi(this.getAppId());return Zn()&&(e=new Xi(this.getAppId())),yield e.getStorageInfo()}))}static removeStorage(e){return i(this,void 0,void 0,(function*(){let t=new Yi(this.getAppId());return Zn()&&(t=new Xi(this.getAppId())),yield t.removeDataFromStorage(e.keys)}))}static clearStorage(e={}){return i(this,void 0,void 0,(function*(){let e=new Yi(this.getAppId());Zn()&&(e=new Xi(this.getAppId())),yield e.clearStorage()}))}}class to{static getUserInfo(e){return i(this,void 0,void 0,(function*(){const t=yield this.getAccessToken();let n="id,name,picture";(null==e?void 0:e.avatarType)&&(n=`${n}.type(${null==e?void 0:e.avatarType})`);return{userInfo:yield fetch(`${tn}?fields=${n}`,{headers:{access_token:t||""}}).then((e=>i(this,void 0,void 0,(function*(){const t=yield e.json(),n={id:t.id,name:t.name,birthday:"",gender:"",avatar:t.picture&&t.picture.data&&t.picture.data.url};return console.warn("'birthday' and 'gender' are deprecated"),n}))))}}))}static getPhoneNumber(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.MP_GET_NUMBER,{},{isMultiCallback:!0,callback:(e,t)=>{if(0===e.error_code){const t={number:e.data};return Promise.resolve(t)}return Promise.reject(t)},delay:this.isIOS?400:0})}))}}class no{static closeApp(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.WINDOW_CLOSE,{})}))}static openMiniApp(e){return i(this,void 0,void 0,(function*(){const t=null==e?void 0:e.appId,n=(null==e?void 0:e.params)||{},i=Object.entries(n).map((function([e,t]){return[e,t].join("=")})).join("&");let o;try{o=yield Yn(t,0)}catch(e){}const r={appId:t};o&&(r.appName=o.name,r.appAvtUrl=o.logoUrl),yield this.callNative(ln.OPEN_MP,{mpUrl:`https://h5.zdn.vn/zapps/${t}/${i.length>0?"?"+i:""}`,mpInfo:r})}))}static openWebview(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.OPEN_INAPP,{url:e})}))}static closeLoading(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.MP_CLOSE_LOADINGVIEW,{at:(new Date).getTime(),when:e,url:location.href})}))}}class io{static getLocation(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.GET_LOCATION,{silent_request:!1,permission_description:"Cho phép Zalo truy cập vào vị trí của thiết bị này?"},{isMultiCallback:!0,haveTimeout:!1,callback:(e,t)=>{if(0===e.error_code){const t=e.data,n={latitude:t.latitude,longitude:t.longitude,timestamp:t.timestamp,provider:t.provider};return Promise.resolve(n)}return Promise.reject(t)},delay:this.isIOS?400:0})}))}static sendLocation(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.QUERY_LOCATION_HIDE,{title:e.title,touserid:e.toUserId,zapp:this.getZAppId()})}))}}class oo{static requestCameraPermission(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.REQUEST_PERMISSION_CAMERA,{},{callback:(e,t)=>-2===e.error_code||e.error_code>=0?Promise.resolve({userAllow:-2!==e.error_code,message:e.error_message}):Promise.reject(t)})}))}static saveImageToPhotosAlbum(e){return i(this,void 0,void 0,(function*(){let t={};return Gt.isEmpty(e.imageBase64Data)?Gt.isEmpty(e.imageUrl)||(t={imageUrl:e.imageUrl}):t={imageBase64Data:e.imageBase64Data},yield this.callNative(ln.SAVE_IMAGE_GALLERY,Object.assign({},t))}))}}class ro{static viewOAQr(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.VIEW_MYQR,{dpn:e.displayName,uid:e.id,zapp:this.getZAppId()},{haveTimeout:!1})}))}static openProfile(t){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.OPEN_PROFILE,{uId:t.id,type:e.ProfileType[t.type],zapp:this.getZAppId(),sourceId:t.sourceId,sourceIndex:t.sourceIndex})}))}static openChat(t){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.OPEN_CHAT,{uId:t.id,type:e.ChatType[t.type],zapp:this.getZAppId(),sourceId:t.sourceId,sourceIndex:t.sourceIndex})}))}static openPostFeed(t){return i(this,void 0,void 0,(function*(){let n={};switch(t.type){case"image":n={photoUrl:t.data.imageUrl};break;case"link":n={link:t.data.link,title:t.data.title,thumb:t.data.thumb,description:t.data.description};break;case"profile":n={avt:t.data.avatar,uid:t.data.id,dpn:t.data.displayName}}return yield this.callNative(ln.OPEN_POSTFEED,Object.assign(Object.assign({type:e.PostFeedType[t.type]},n),{zapp:this.getZAppId()})).then((e=>({status:e.status,shareType:e.share_type,numberOfUser:e.uid_to_size})))}))}static followOA(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.FOLLOW_OA,{uid:e.id,showDialogConfirm:!0,zapp:this.getZAppId()},{haveTimeout:!1})}))}static unfollowOA(e){return i(this,void 0,void 0,(function*(){yield this.callNative(ln.UNFOLLOW_OA,{uid:e.id,zapp:this.getZAppId()},{haveTimeout:!1})}))}static openShareSheet(t){return i(this,void 0,void 0,(function*(){let n={};switch(t.type){case"image":let e=[];Array.isArray(t.data.imageUrls)&&t.data.imageUrls.length>0?e=t.data.imageUrls:e.push(t.data.imageUrl),n={photoUrls:e,photoUrl:t.data.imageUrl,caption:t.data.caption};break;case"gif":n={photoUrl:t.data.imageUrl,gifUrl:t.data.gifUrl,width:t.data.width,height:t.data.height};break;case"video":n={videoThumb:t.data.videoThumb,videoUrl:t.data.videoUrl,width:t.data.width,height:t.data.height};break;case"link":n={link:t.data.link,chatOnly:t.data.chatOnly?1:0};break;case"oa":n={uid:t.data.id};break;case"zmp":const i=yield this.getAccessToken(),o=yield qn(this.getAppId(),i||"",t.data.title||"",t.data.description||"",t.data.thumbnail||"",t.data.path);window.forceShareZMP?n={data:{ZInstantAPIInfo:{url:`${o.zinstantApi}`,zinstantdata_id:`templateId=${o.ztemplateId}&appId=${this.getAppId()}&shareId=${o.shareId}`},previewMsgText:{msg:{en:"Zalo Mini Program",vi:"Chương trình nhỏ"}},enableReactions:1}}:(n={link:o.shareableLink,chatOnly:t.data.chatOnly?1:0},t.type="link")}return yield this.callNative(ln.OPEN_SHARESHEET,Object.assign(Object.assign({type:e.ShareSheetType[t.type]},n),{zapp:this.getZAppId()}),{haveTimeout:!1}).then((e=>({status:e.status,shareType:e.share_type,numberOfUser:e.uid_to_size})))}))}static createShortcut(e,t,n){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.CREATE_SHORTCUT,{url:e,title:t,iconUrl:n})}))}static openProfilePicker(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.MP_OPEN_PROFILE_PICKER,{maxProfile:e},{isMultiCallback:!0,callback:(e,t)=>0===e.error_code&&Array.isArray(e.data)?Promise.resolve(e.data.map((e=>e.id))):Promise.reject(t)})}))}static getActionsSupported(t){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.GET_SUPPORTED_ACTIONS,{},{isMultiCallback:!1,callback:(t,n)=>{const i=Fn();if(Array.isArray(t.actions)&&t.actions.length>0){const e=Object.keys(ln).filter((e=>ln[e].skip_jump)),n={actions:[...t.actions,...e]};return Promise.resolve(n)}if(i===e.PlatformType.iOS){const e={actions:yn};return Promise.resolve(e)}return Promise.reject(n)}})}))}static openMediaPicker(t,n,o,r,a,s){return i(this,void 0,void 0,(function*(){const i={type:0,url:n,maxSize:o||1048576};return yield this.callNative(ln.PICK_MEDIA,{media_type:e.MediaPickerType[t],edit_view:Object.assign(Object.assign({},{enable:1,aspect_ratio:"1:1"}),r),silent_request:a,upload:i,max_select_items:s},{isMultiCallback:!0,callback:(e,t)=>{var n;if(0===e.error_code){const t={data:null===(n=e.data)||void 0===n?void 0:n.result_content};return Promise.resolve(t)}return Promise.reject(t)}})}))}static openOutApp(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.OPEN_OUTAPP,{url:e})}))}}class ao{static getRouteParams(){let e={};const t=window.location.href;try{let n=new URL(t).searchParams.toString();n&&(e=Rn.getParamsAsObject(n))}catch(e){throw new Error("Url không hợp lệ")}return e}static sendDataToPreviousMiniApp(e){return i(this,void 0,void 0,(function*(){return yield this.callNative(ln.WEBVIEW_SET_RESULT,{result:Jn(e.data)})}))}static onCallbackData(t){return i(this,void 0,void 0,(function*(){yield this.events.on(e.Events.OnDataCallback,(e=>{t({data:e})}))}))}}class so extends li{constructor(){var e,t,n,i,a,s,l,c,u,d,p,h,v,f,m,g,y;super(),Pi.set(this,Kt),Ii.set(this,qt),Ci.set(this,Qt),ki.set(this,void 0),Ri.set(this,void 0),Bi.set(this,void 0),Di.set(this,null),ji.set(this,{timer:{getToken:0}}),Mi.set(this,void 0),Li.set(this,void 0),Ui.set(this,null),this.events=ei.getInstance(),this.isIOS=Wn().isIOS,Wi.set(this,void 0),this.getActionBarConfig=()=>o(this,Wi,"f"),this.setActionBarConfig=e=>{r(this,Wi,e(o(this,Wi,"f")),"f")},xi.set(this,(()=>new Promise(((e,t)=>{Gt.isUndefined(o(this,Ui,"f"))||Gt.isNull(o(this,Ui,"f"))?this.callNative(ln.JUMP_LOGIN,{}).then((t=>{const n=t&&t.cookiesOAuthLogins||[],i=n.find((e=>e.name===Xt));i&&(this.setJSToken(i.value),window.ZJSBridge.setJSToken&&window.ZJSBridge.setJSToken(i.value)),r(this,Ui,n,"f"),e(n)})).catch((e=>{t(e)})):e(o(this,Ui,"f"))})))),zi.set(this,mi.setNavigationBarRightButton),this.getVersion=fi.getVersion,this.getSystemInfo=fi.getSystemInfo,this.setNavigationBarTitle=mi.setNavigationBarTitle,this.setNavigationBarColor=mi.setNavigationBarColor,this.setNavigationBarLeftButton=mi.setNavigationBarLeftButton,this.setBackgroundColor=gi.setBackgroundColor,this.setDeviceOrientation=Ei.setDeviceOrientation,this.setStorage=eo.setStorage,this.getStorage=eo.getStorage,this.getStorageInfo=eo.getStorageInfo,this.removeStorage=eo.removeStorage,this.clearStorage=eo.clearStorage,this.getUserInfo=to.getUserInfo,this.getNetworkType=Ei.getNetworkType,this.onNetworkStatusChange=Ei.onNetworkStatusChange,this.startBeaconDiscovery=Ei.startBeaconDiscovery,this.stopBeaconDiscovery=Ei.stopBeaconDiscovery,this.getBeacons=Ei.getBeacons,this.closeApp=no.closeApp,this.getLocation=io.getLocation,this.stopBluetoothDevicesDiscovery=Ei.stopBluetoothDevicesDiscovery,this.startBluetoothDevicesDiscovery=Ei.stopBluetoothDevicesDiscovery,this.openBluetoothAdapter=Ei.openBluetoothAdapter,this.onBluetoothDeviceFound=Ei.onBluetoothDeviceFound,this.onBluetoothAdapterStateChange=Ei.onBluetoothAdapterStateChange,this.getConnectedBluetoothDevices=Ei.getConnectedBluetoothDevices,this.getBluetoothDevices=Ei.getBluetoothDevices,this.getBluetoothAdapterState=Ei.getBluetoothAdapterState,this.closeBluetoothAdapter=Ei.closeBluetoothAdapter,this.scanQRCode=Ei.scanQRCode,this.openProfile=ro.openProfile,this.openChat=ro.openChat,this.openPostFeed=ro.openPostFeed,this.followOA=ro.followOA,this.unFollowOA=ro.unfollowOA,this.openShareSheet=ro.openShareSheet,this.requestCameraPermission=oo.requestCameraPermission,this.createShortcut=ro.createShortcut,this.openBioAuthentication=Ei.openBioAuthentication,this.checkStateBioAuthentication=Ei.checkStateBioAuthentication,this.sendLocation=io.sendLocation,this.showToast=Ei.showToast,this.hideKeyboard=Ei.hideKeyboard,this.openPhone=Ei.openPhone,this.openSMS=Ei.openSMS,this.viewOAQr=ro.viewOAQr,this.keepScreen=Ei.keepScreen,this.saveImageToPhotosAlbum=oo.saveImageToPhotosAlbum,this.openMiniApp=no.openMiniApp,this.vibrate=Ei.vibrate,this.openWebview=no.openWebview,this.getRouteParams=ao.getRouteParams,this.getAppInfo=fi.getAppInfo,this.sendDataToPreviousMiniApp=ao.sendDataToPreviousMiniApp,this.onCallbackData=ao.onCallbackData,this.getPhoneNumber=to.getPhoneNumber,this.openProfilePicker=ro.openProfilePicker,Fi.set(this,ro.getActionsSupported),this.connectWifi=Ei.connectWifi,this.openMediaPicker=ro.openMediaPicker,this.openOutApp=ro.openOutApp,this.closeLoading=no.closeLoading,this.openAppStore=Ei.openAppStore,r(this,ki,null,"f"),r(this,Ri,null,"f"),r(this,Bi,null,"f"),this.isShowNavBar=!0,r(this,Mi,0,"f"),r(this,Li,0,"f");const _="home"===(null===(t=null===(e=o(this,Ci,"f"))||void 0===e?void 0:e.app)||void 0===t?void 0:t.leftButton)||"both"===(null===(i=null===(n=o(this,Ci,"f"))||void 0===n?void 0:n.app)||void 0===i?void 0:i.leftButton)?Sn:An,E=new URL(location.href),S=Gt.isString(null===(s=null===(a=o(this,Ci,"f"))||void 0===a?void 0:a.app)||void 0===s?void 0:s.headerColor)&&(null===(u=null===(c=null===(l=o(this,Ci,"f"))||void 0===l?void 0:l.app)||void 0===c?void 0:c.headerColor)||void 0===u?void 0:u.length)>0?5:6,A="none"===(null===(p=null===(d=o(this,Ci,"f"))||void 0===d?void 0:d.app)||void 0===p?void 0:p.leftButton)||"home"===(null===(v=null===(h=o(this,Ci,"f"))||void 0===h?void 0:h.app)||void 0===v?void 0:v.leftButton)?En:_n;r(this,Wi,{actionbarType:S,buttonType:A,dataConfig:{backgroundColor:(null===(m=null===(f=o(this,Ci,"f"))||void 0===f?void 0:f.app)||void 0===m?void 0:m.headerColor)||"",textColor:(null===(y=null===(g=o(this,Ci,"f"))||void 0===g?void 0:g.app)||void 0===y?void 0:y.textColor)||"",viewInLeftType:A,confirmToExit:1},homeConfig:{enable:_,url:`https://h5.zdn.vn/zapps/${this.getAppId()}/${E.search}`}},"f")}static getInstance(){return so.instance||(so.instance=new so),so.instance}getLoginStatus(){return Gt.isString(o(this,Bi,"f"))&&o(this,Bi,"f").length>0}getAppId(){return o(this,Ii,"f")}getZAppId(){return o(this,Pi,"f")}login(e){return i(this,void 0,void 0,(function*(){const e=yield o(this,xi,"f").call(this),t=e.find((e=>e.name===Yt)),n=e.find((e=>e.name===en));if(!Gt.isUndefined(t)&&!Gt.isNull(t)&&Gt.isString(t.value)){if(r(this,ki,t.value,"f"),Gt.isUndefined(n)||Gt.isNull(n)||!Gt.isString(n.value)?yield this.loginZaloV3():(r(this,Ri,n.value,"f"),yield this.loginZaloV4()),!o(this,Bi,"f"))throw kn.loginFailed();return o(this,Bi,"f")}throw kn.loginFailed()}))}loginZaloV3(){return i(this,void 0,void 0,(function*(){return yield fetch(`${on}?app_id=${o(this,Pi,"f")}&redirect_uri=https://h5.zdn.vn/zapps/${o(this,Ii,"f")}/&code=${o(this,ki,"f")}&isSDK=true123`).then((e=>i(this,void 0,void 0,(function*(){let t=yield e.json();if(t.access_token){r(this,Bi,t.access_token,"f");const e=1e3*parseInt(t.expires_in);return r(this,Li,e,"f"),r(this,Mi,(new Date).getTime(),"f"),this.setZAccSession(o(this,Bi,"f")||""),window.ZJSBridge.setZAccSession&&window.ZJSBridge.setZAccSession(o(this,Bi,"f")||""),o(this,Bi,"f")}return null}))))}))}loginZaloV4(){return i(this,void 0,void 0,(function*(){const e=new URLSearchParams;e.append("app_id",o(this,Ii,"f")),e.append("code",o(this,ki,"f")||""),e.append("code_verifier",o(this,Ri,"f")||""),Gt.isNull(o(this,Di,"f"))?e.append("grant_type","authorization_code"):(e.append("grant_type","refresh_token"),e.append("refresh_token",o(this,Di,"f")||""));return yield fetch(nn,Object.assign({method:"POST",body:e},{headers:{"Content-Type":"application/x-www-form-urlencoded"}})).then((e=>i(this,void 0,void 0,(function*(){const t=yield e.json();if(t.refresh_token&&r(this,Di,t.refresh_token,"f"),t.access_token){r(this,Bi,t.access_token,"f");const e=1e3*parseInt(t.expires_in);return r(this,Li,e,"f"),r(this,Mi,(new Date).getTime(),"f"),this.setZAccSession(o(this,Bi,"f")||""),window.ZJSBridge.setZAccSession&&window.ZJSBridge.setZAccSession(o(this,Bi,"f")||""),o(this,Bi,"f")}return null}))))}))}getAccessToken(e){return i(this,void 0,void 0,(function*(){const e=(new Date).getTime()-o(this,Mi,"f");if(!o(this,Bi,"f"))throw kn.loginRequired();return e<o(this,Li,"f")?o(this,Bi,"f"):yield this.login()}))}}Pi=new WeakMap,Ii=new WeakMap,Ci=new WeakMap,ki=new WeakMap,Ri=new WeakMap,Bi=new WeakMap,Di=new WeakMap,ji=new WeakMap,Mi=new WeakMap,Li=new WeakMap,Ui=new WeakMap,Wi=new WeakMap,xi=new WeakMap,zi=new WeakMap,Fi=new WeakMap;class lo{constructor(){Gi.set(this,Kt),Hi.set(this,Qt),$i.set(this,"DEFAULT ZOAUTH"),Vi.set(this,"DEFAULT ACCESS TOKEN"),Zi.set(this,{timer:{getToken:0}}),Ji.set(this,!1),this.getLoginStatus=()=>o(this,Ji,"f"),this.getAppId=()=>o(this,Gi,"f"),this.login=()=>(r(this,Ji,!0,"f"),Promise.resolve(o(this,$i,"f"))),this.getAccessToken=()=>Promise.resolve(o(this,Vi,"f")),this.getVersion=fi.getVersion,this.getSystemInfo=fi.getSystemInfo,this.setNavigationBarTitle=()=>Promise.resolve(),this.setNavigationBarColor=()=>Promise.resolve(),this.setBackgroundColor=()=>Promise.resolve(),this.setNavigationBarLeftButton=()=>Promise.resolve(),this.setDeviceOrientation=()=>Promise.resolve(),this.setStorage=e=>i(this,void 0,void 0,(function*(){const t=new Yi(this.getAppId());return yield t.putDataToStorage(e.data),{errorKeys:[]}})),this.getStorage=e=>i(this,void 0,void 0,(function*(){const t=new Yi(this.getAppId());return yield t.getDataFromStorage(e.keys)})),this.getStorageInfo=e=>i(this,void 0,void 0,(function*(){const e=new Yi(this.getAppId());return yield e.getStorageInfo()})),this.removeStorage=e=>i(this,void 0,void 0,(function*(){const t=new Yi(this.getAppId());return yield t.removeDataFromStorage(e.keys)})),this.clearStorage=e=>i(this,void 0,void 0,(function*(){const e=new Yi(this.getAppId());return yield e.clearStorage()})),this.getUserInfo=()=>(console.warn("birthday and gender are deprecated"),Promise.resolve({userInfo:{id:"3368637342326461234",name:"User Name",avatar:"https://h5.zdn.vn/static/images/avatar.png"}})),this.getNetworkType=()=>{let t;switch((navigator.connection||navigator.mozConnection||navigator.webkitConnection).effectiveType){case"none":t=e.NetworkType.none;break;case"4g":t=e.NetworkType.wifi;break;case"3g":case"2g":t=e.NetworkType.cellular;break;default:t=e.NetworkType.unknown}const n={networkType:t};return Promise.resolve(n)},this.onNetworkStatusChange=t=>{const n=navigator.connection||navigator.mozConnection||navigator.webkitConnection,i=n.effectiveType;return n.addEventListener("change",(function(){let n;switch(i){case"none":n=e.NetworkType.none;break;case"4g":n=e.NetworkType.wifi;break;case"3g":case"2g":n=e.NetworkType.cellular;break;default:n=e.NetworkType.unknown}t({isConnected:!0,networkType:n})})),Promise.resolve()},this.startBeaconDiscovery=e=>Promise.resolve(!0),this.stopBeaconDiscovery=e=>Promise.resolve(!0),this.getBeacons=e=>Promise.resolve({beacons:[]}),this.closeApp=()=>Promise.resolve(),this.getLocation=()=>Promise.resolve({longitude:"105.788026",latitude:"21.0258773",timestamp:(new Date).getTime().toString(),provider:"fused"}),this.onBackButtonClick=()=>Promise.resolve(),this.stopBluetoothDevicesDiscovery=()=>Promise.resolve(),this.startBluetoothDevicesDiscovery=()=>Promise.resolve(),this.openBluetoothAdapter=()=>Promise.resolve(),this.onBluetoothDeviceFound=()=>Promise.resolve(),this.onBluetoothAdapterStateChange=()=>Promise.resolve(),this.getConnectedBluetoothDevices=()=>Promise.resolve(),this.getBluetoothDevices=()=>Promise.resolve(),this.getBluetoothAdapterState=()=>Promise.resolve(),this.closeBluetoothAdapter=()=>Promise.resolve(),this.scanQRCode=()=>Promise.resolve({content:"132"}),this.openProfile=()=>Promise.resolve(),this.openChat=()=>Promise.resolve(),this.openPostFeed=()=>Promise.resolve({status:1,shareType:0,numberOfUser:0}),this.followOA=()=>Promise.resolve(),this.unFollowOA=()=>Promise.resolve(),this.openShareSheet=()=>Promise.resolve({status:2,shareType:0,numberOfUser:0}),this.requestCameraPermission=()=>Promise.resolve({userAllow:!0,message:"Success"}),this.createShortcut=()=>Promise.resolve(),this.openBioAuthentication=()=>Promise.resolve({code:0,message:"OK",data:{domain:"",code:0,message:"",payToken:""}}),this.checkStateBioAuthentication=()=>Promise.resolve({bioState:""}),this.sendLocation=()=>Promise.resolve(),this.showToast=()=>Promise.resolve(),this.hideKeyboard=()=>Promise.resolve(),this.openPhone=()=>Promise.resolve(),this.openSMS=()=>Promise.resolve(),this.viewOAQr=()=>Promise.resolve(),this.keepScreen=()=>Promise.resolve(),this.saveImageToPhotosAlbum=()=>Promise.resolve(),this.openMiniApp=e=>Promise.resolve(),this.vibrate=()=>Promise.resolve(),this.openWebview=e=>(location.replace(e),Promise.resolve()),this.getRouteParams=ao.getRouteParams,this.getAppInfo=()=>Promise.resolve({description:"",name:"",version:"",appUrl:"",qrCodeUrl:""}),this.sendDataToPreviousMiniApp=e=>Promise.resolve(),this.onCallbackData=e=>(e({data:""}),Promise.resolve()),this.getPhoneNumber=()=>(console.warn("This api only works on zalo app"),Promise.resolve({number:""})),this.openProfilePicker=()=>(console.warn("This api only works on zalo app"),Promise.resolve([])),this.connectWifi=()=>(console.warn("This api only works on zalo app"),Promise.resolve()),this.openOutApp=e=>(location.href=e,Promise.resolve()),this.closeLoading=e=>Promise.resolve(),this.openAppStore=e=>Promise.resolve()}on(e,t,n){throw new Error("Method not implemented.")}once(e,t,n){throw new Error("Method not implemented.")}off(e,t,n,i){throw new Error("Method not implemented.")}removeAllListeners(e){throw new Error("Method not implemented.")}openMediaPicker(e,t,n,i,o,r){return console.warn("This api only works on zalo app"),Promise.resolve({data:""})}}Gi=new WeakMap,Hi=new WeakMap,$i=new WeakMap,Vi=new WeakMap,Zi=new WeakMap,Ji=new WeakMap;const co=Symbol("required"),uo=Symbol("checkType"),po=(e,t)=>(n,i,o)=>{let r=Reflect.getOwnMetadata(co,n,i)||[];r.push({parameterIndex:o,fields:e,option:t}),Reflect.defineMetadata(co,r,n,i)},ho=(e,t,n)=>(i,o,r)=>{let a=Reflect.getOwnMetadata(uo,i,o)||[];a.push({parameterIndex:r,type:e,properties:t,defaultValue:n}),Reflect.defineMetadata(uo,a,i,o)};const vo=(e,t,n)=>{const i=n.value,o=i.toString().match(/\(.*?\)/)[0].replace(/[()]/gi,"").replace(/\s/gi,"").split(",");return n.value=function(){const n=Reflect.getOwnMetadata(co,e,t),r=Reflect.getOwnMetadata(uo,e,t);return r&&r.forEach((e=>{const{parameterIndex:t,type:n,properties:i,defaultValue:r}=e;let a=arguments[t],s=o[t];const l=typeof a;if(!Gt.isUndefined(a)){if(!Gn(a,n))throw kn.wrongTypeParam(s,n,Array.isArray(a)?"array":null===a?"null":l);"object"===n&&Object.entries(i).forEach((([e,n])=>{const i=e.split("?")[0],o=Gt.get(a,i);if(Gt.isUndefined(o)||Gt.isNull(o)){if(!e.includes("?"))throw kn.missingParam(e);Gt.isObject(Gt.get(a,i.split(".")[0]))&&r&&!Gt.isUndefined(Gt.get(r,i))&&Gt.set(arguments[t],i,Gt.get(r,i))}else if(Gt.isFunction(n)){const e=n(o);if(e&&e.error)throw kn.wrongTypeParam(`${s}.${i}`,e.errorMessage,typeof o)}}))}})),n&&n.forEach((e=>{const{parameterIndex:t,option:n,fields:i}=e,o=arguments[t],r=null==n?void 0:n.if,a=null==n?void 0:n.defaultValue;let s=!0;r&&(s=Object.keys(r).every((e=>Gt.get(o,e)===r[e]))),s&&i.forEach((e=>{const n=e=>{let n=!1;return Gt.isEmpty(Gt.get(o,e))&&(Gt.isUndefined(Gt.get(a,e))||Gt.set(arguments[t],e,Gt.get(a,e)),n=!0),n};if(Array.isArray(e)&&e.length>0&&e.every(n))throw kn.missingParam(e.join(" or "));if(Gt.isString(e)&&n(e))throw kn.missingParam(e)}))})),i.apply(this,arguments)},n};var fo,mo,go,yo,_o;class Eo{constructor(){this.events=ei.getInstance(),fo.set(this,void 0),r(this,fo,this.getServiceInstance(),"f"),this.events.addListener=(t,n,i)=>{const o=t;return this.events.addListener(e.Events[o],n,i)}}login(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").login(e)}))}getLoginStatus(){return o(this,fo,"f").getLoginStatus()}getAccessToken(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getAccessToken(e)}))}getVersion(){return o(this,fo,"f").getVersion()}getSystemInfo(){return o(this,fo,"f").getSystemInfo()}setNavigationBarTitle(e){return i(this,void 0,void 0,(function*(){return o(this,fo,"f").setNavigationBarTitle(e)}))}setNavigationBarColor(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").setNavigationBarColor(e)}))}setBackgroundColor(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").setBackgroundColor(e)}))}setNavigationBarLeftButton(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").setNavigationBarLeftButton(e)}))}setDeviceOrientation(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").setDeviceOrientation(e)}))}setStorage(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").setStorage(e)}))}getStorage(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getStorage(e)}))}getStorageInfo(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getStorageInfo(e)}))}removeStorage(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").removeStorage(e)}))}clearStorage(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").clearStorage(e)}))}getUserInfo(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getUserInfo(e)}))}getNetworkType(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getNetworkType(e)}))}onNetworkStatusChange(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").onNetworkStatusChange(e)}))}startBeaconDiscovery(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").startBeaconDiscovery(e)}))}stopBeaconDiscovery(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").stopBeaconDiscovery(e)}))}getBeacons(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getBeacons(e)}))}closeApp(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").closeApp(e)}))}getLocation(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getLocation(e)}))}stopBluetoothDevicesDiscovery(){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").stopBluetoothDevicesDiscovery()}))}startBluetoothDevicesDiscovery(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").startBluetoothDevicesDiscovery(e)}))}openBluetoothAdapter(){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").openBluetoothAdapter()}))}onBluetoothDeviceFound(){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").onBluetoothDeviceFound()}))}onBluetoothAdapterStateChange(){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").onBluetoothAdapterStateChange()}))}getConnectedBluetoothDevices(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getConnectedBluetoothDevices(e)}))}getBluetoothDevices(){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getBluetoothDevices()}))}getBluetoothAdapterState(){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getBluetoothAdapterState()}))}closeBluetoothAdapter(){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").closeBluetoothAdapter()}))}scanQRCode(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").scanQRCode(e)}))}openProfile(e){return i(this,void 0,void 0,(function*(){yield o(this,fo,"f").openProfile(e)}))}openChat(e){return i(this,void 0,void 0,(function*(){yield o(this,fo,"f").openChat(e)}))}openPostFeed(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").openPostFeed(e)}))}followOA(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").followOA(e)}))}unfollowOA(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").unFollowOA(e)}))}openShareSheet(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").openShareSheet(e)}))}requestCameraPermission(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").requestCameraPermission(e)}))}createShortcut(e){return i(this,void 0,void 0,(function*(){const t=yield Yn(qt,0),n=Wn().isIOS,i=t.logoUrl||xn("og:image:url")||"",r=t.name||document.title,a=e.params?new URLSearchParams(e.params):new URLSearchParams;if(a.append("utm_source","zalo-shortcut"),a.append("utm_medium","default"),a.append("utm_campaign","default"),n){a.append("appId",qt),a.append("appName",r),a.append("appIcon",i);const e=`https://mini.zalo.me/shortcut.html?${a.toString()}`;yield o(this,fo,"f").openOutApp(encodeURI(e))}else yield o(this,fo,"f").createShortcut(`https://zalo.me/app/link/zapps/${qt}/?${a.toString()}`,r,i);return Cn()}))}openBioAuthentication(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").openBioAuthentication(e)}))}checkStateBioAuthentication(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").checkStateBioAuthentication(e)}))}sendLocation(e){return i(this,void 0,void 0,(function*(){yield o(this,fo,"f").sendLocation(e)}))}showToast(e){return i(this,void 0,void 0,(function*(){yield o(this,fo,"f").showToast(e)}))}hideKeyboard(e){return i(this,void 0,void 0,(function*(){yield o(this,fo,"f").hideKeyboard(e)}))}openPhone(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").openPhone(e)}))}openSMS(e){return i(this,void 0,void 0,(function*(){yield o(this,fo,"f").openSMS(e)}))}viewOAQr(e){return i(this,void 0,void 0,(function*(){yield o(this,fo,"f").viewOAQr(e)}))}keepScreen(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").keepScreen(e)}))}saveImageToGallery(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").saveImageToPhotosAlbum(e)}))}saveImageToPhotosAlbum(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").saveImageToPhotosAlbum(e)}))}openMiniApp(e){return i(this,void 0,void 0,(function*(){if(!Gt.isEmpty(e.params)){const t=e.params||{};Object.keys(t).forEach((e=>{"object"==typeof t[e]&&(t[e]=JSON.stringify(t[e])),t[e]=""+encodeURIComponent(t[e])})),e.params=t}yield o(this,fo,"f").openMiniApp(e)}))}vibrate(e){return i(this,void 0,void 0,(function*(){yield o(this,fo,"f").vibrate(e)}))}openWebview(e){return i(this,void 0,void 0,(function*(){const t=new URL(e.url),n=t.searchParams.get("typeInapp");Gt.isEmpty(n)&&t.searchParams.set("typeInapp","1"),yield o(this,fo,"f").openWebview(t.href)}))}getRouteParams(){return o(this,fo,"f").getRouteParams()}getAppInfo(e){return o(this,fo,"f").getAppInfo()}sendDataToPreviousMiniApp(e){return o(this,fo,"f").sendDataToPreviousMiniApp(e)}onCallbackData(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").onCallbackData(e)}))}getPhoneNumber(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").getPhoneNumber()}))}openProfilePicker(e){return i(this,void 0,void 0,(function*(){const t=yield o(this,fo,"f").openProfilePicker(e.maxProfile);let n;if(t.length>0)try{const e=yield this.getAccessToken(),i=yield fetch(rn,{method:"POST",headers:{"Content-Type":"application/json",access_token:e||""},body:JSON.stringify({fields:"id,name,picture",user_ids:t})}),o=yield i.json();if(0!==o.error||!o.data)throw new Error(o.message);n=t.map((e=>{var t,n,i,r,a,s,l,c,u,d,p;return{id:(null===(n=null===(t=o.data[e])||void 0===t?void 0:t.user_info)||void 0===n?void 0:n.user_id_by_app)||"",profile:{name:null===(r=null===(i=o.data[e])||void 0===i?void 0:i.user_info)||void 0===r?void 0:r.name,avatar:null===(c=null===(l=null===(s=null===(a=o.data[e])||void 0===a?void 0:a.user_info)||void 0===s?void 0:s.picture)||void 0===l?void 0:l.data)||void 0===c?void 0:c.url},code:0!==(null===(u=o.data[e])||void 0===u?void 0:u.error)?-1:0,message:`Get profile: ${Gt.isUndefined(null===(d=o.data[e])||void 0===d?void 0:d.message)?"Unknown error":null===(p=o.data[e])||void 0===p?void 0:p.message}`}}))}catch(e){n=t.map((t=>({id:t,profile:{name:"",avatar:""},code:-1,message:`Can't get profile: ${e.message}`})))}return{users:n||[]}}))}connectWifi(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").connectWifi(e)}))}openMediaPicker(e){var t,n,r;return i(this,void 0,void 0,(function*(){const i={};Gt.isUndefined(null===(t=e.editView)||void 0===t?void 0:t.enable)||(null===(n=e.editView)||void 0===n?void 0:n.enable)?i.enable=1:i.enable=0,i.aspect_ratio=null===(r=e.editView)||void 0===r?void 0:r.aspectRatio;const a=!0===e.silentRequest?1:0,s=e.maxSelectItem;return yield o(this,fo,"f").openMediaPicker(e.type,e.serverUploadUrl,e.maxItemSize,i,a,s)}))}getShareableLink(e){return i(this,void 0,void 0,(function*(){const t=yield this.getAccessToken();return(yield qn(window.APP_ID,t||"",e.title,e.description,e.thumbnail,e.path)).shareableLink}))}closeLoading(e){return i(this,void 0,void 0,(function*(){return yield o(this,fo,"f").closeLoading("user action")}))}requestUpdateZalo(e){return i(this,void 0,void 0,(function*(){const e=Wn().isIOS?"https://apps.apple.com/vn/app/zalo/id579523206":"https://play.google.com/store/apps/details?id=com.zing.zalo";return yield o(this,fo,"f").openOutApp(e)}))}}fo=new WeakMap,t([Pn],Eo.prototype,"login",null),t([In],Eo.prototype,"getLoginStatus",null),t([Pn],Eo.prototype,"getAccessToken",null),t([In],Eo.prototype,"getVersion",null),t([In],Eo.prototype,"getSystemInfo",null),t([Pn,vo,n(0,ho("object",{title:Qn("string")}))],Eo.prototype,"setNavigationBarTitle",null),t([Pn,vo,n(0,ho("object",{color:Qn("string"),"textColor?":Qn("string",{values:["white","black"]}),"statusBarColor?":Qn("string")}))],Eo.prototype,"setNavigationBarColor",null),t([Pn,vo,n(0,ho("object",{backgroundColor:Qn("string"),"textColor?":Qn("string",{values:["white","black"]})}))],Eo.prototype,"setBackgroundColor",null),t([Pn,vo,n(0,ho("object",{type:Qn("string",{values:["none","back","home","both"]})}))],Eo.prototype,"setNavigationBarLeftButton",null),t([Pn,vo,n(0,ho("object",{rotate:Qn("string",{values:["auto","portrait","landscape"]})}))],Eo.prototype,"setDeviceOrientation",null),t([Pn,vo,n(0,ho("object",{data:Qn("object")}))],Eo.prototype,"setStorage",null),t([Pn,vo,n(0,ho("object",{keys:Qn("array<string>")}))],Eo.prototype,"getStorage",null),t([Pn],Eo.prototype,"getStorageInfo",null),t([Pn,vo,n(0,ho("object",{keys:Qn("array<string>")}))],Eo.prototype,"removeStorage",null),t([Pn],Eo.prototype,"clearStorage",null),t([Pn,vo,n(0,ho("object",{"avatarType?":Qn("string",{values:["small","normal","large"]})}))],Eo.prototype,"getUserInfo",null),t([Pn],Eo.prototype,"getNetworkType",null),t([Pn],Eo.prototype,"onNetworkStatusChange",null),t([Pn],Eo.prototype,"startBeaconDiscovery",null),t([Pn],Eo.prototype,"stopBeaconDiscovery",null),t([Pn],Eo.prototype,"getBeacons",null),t([Pn],Eo.prototype,"closeApp",null),t([Pn],Eo.prototype,"getLocation",null),t([Pn],Eo.prototype,"stopBluetoothDevicesDiscovery",null),t([Pn],Eo.prototype,"startBluetoothDevicesDiscovery",null),t([Pn],Eo.prototype,"openBluetoothAdapter",null),t([Pn],Eo.prototype,"onBluetoothDeviceFound",null),t([Pn],Eo.prototype,"onBluetoothAdapterStateChange",null),t([Pn],Eo.prototype,"getConnectedBluetoothDevices",null),t([Pn],Eo.prototype,"getBluetoothDevices",null),t([Pn],Eo.prototype,"getBluetoothAdapterState",null),t([Pn],Eo.prototype,"closeBluetoothAdapter",null),t([Pn],Eo.prototype,"scanQRCode",null),t([Pn,vo,n(0,ho("object",{type:Qn("string",{values:["user","oa","aliasOA"]}),id:Qn("string")}))],Eo.prototype,"openProfile",null),t([Pn,vo,n(0,ho("object",{type:Qn("string",{values:["user","oa"]}),id:Qn("string")}))],Eo.prototype,"openChat",null),t([Pn,vo,n(0,po(["data.imageUrl"],{if:{type:"image"}})),n(0,po(["data.link"],{if:{type:"link"}})),n(0,po(["data.id"],{if:{type:"profile"}})),n(0,ho("object",{type:Qn("string",{values:["image","link","profile"]}),data:Qn("object"),"data.imageUrl?":Qn("url"),"data.link?":Qn("url"),"data.title?":Qn("string"),"data.thumb?":Qn("url"),"data.description?":Qn("string"),"data.avatar?":Qn("url"),"data.id?":Qn("string"),"data.displayName?":Qn("string")}))],Eo.prototype,"openPostFeed",null),t([Pn,vo,n(0,ho("object",{id:Qn("string"),"showDialogConfirm?":Qn("boolean")}))],Eo.prototype,"followOA",null),t([Pn,vo,n(0,ho("object",{id:Qn("string")}))],Eo.prototype,"unfollowOA",null),t([Pn,vo,n(0,po([["data.imageUrl","data.imageUrls"]],{if:{type:"image"}})),n(0,po(["data.link"],{if:{type:"link"}})),n(0,po(["data.id"],{if:{type:"oa"}})),n(0,po(["data.gifUrl"],{if:{type:"gif"}})),n(0,po(["data.videoThumb","data.videoUrl"],{if:{type:"video"}})),n(0,po(["data.thumbnail","data.title","data.description"],{if:{type:"zmp"},defaultValue:{data:{description:""}}})),n(0,ho("object",{type:Qn("string",{values:["image","gif","video","link","oa","zmp"]}),data:Qn("object"),"data.imageUrl?":Qn("url"),"data.imageUrls?":Qn("array<url>",{maxLength:10}),"data.caption?":Qn("string"),"data.gifUrl?":Qn("url"),"data.width?":Qn("number"),"data.height?":Qn("number"),"data.videoThumb?":Qn("url"),"data.videoUrl?":Qn("url"),"data.link?":Qn("url"),"data.chatOnly?":Qn("boolean"),"data.id?":Qn("string"),"data.thumbnail?":Qn("url"),"data.path?":Qn("string"),"data.title?":Qn("string",{maxLength:100}),"data.description?":Qn(["string"],{maxLength:400})}))],Eo.prototype,"openShareSheet",null),t([Pn],Eo.prototype,"requestCameraPermission",null),t([Pn],Eo.prototype,"createShortcut",null),t([Pn,vo,n(0,ho("object",{secretData:Qn("string"),"ui?":Qn("object"),"ui.title?":Qn("string"),"ui.subTitle?":Qn("string"),"ui.negativeButtonText?":Qn("string"),"requireFingerprint?":Qn("boolean")},{requireFingerprint:!0,ui:{title:"Xác thực",subTitle:"Sử dụng sinh trắc học của bạn để xác thực",negativeButtonText:"Đóng"}}))],Eo.prototype,"openBioAuthentication",null),t([Pn],Eo.prototype,"checkStateBioAuthentication",null),t([Pn,vo,n(0,ho("object",{toUserId:Qn("string"),"title?":Qn("string")}))],Eo.prototype,"sendLocation",null),t([Pn,vo,n(0,ho("object",{message:Qn("string")}))],Eo.prototype,"showToast",null),t([Pn],Eo.prototype,"hideKeyboard",null),t([Pn,vo,n(0,ho("object",{phoneNumber:Qn("string")}))],Eo.prototype,"openPhone",null),t([Pn,vo,n(0,ho("object",{content:Qn("string"),phoneNumber:Qn("string",{regex:/^\+?\d+$/})}))],Eo.prototype,"openSMS",null),t([Pn,vo,n(0,ho("object",{id:Qn("string"),"displayName?":Qn("string")},{displayName:""}))],Eo.prototype,"viewOAQr",null),t([Pn],Eo.prototype,"keepScreen",null),t([Pn,vo,n(0,ho("object",{"imageBase64Data?":Qn("string"),"imageUrl?":Qn("url")}))],Eo.prototype,"saveImageToGallery",null),t([Pn,vo,n(0,ho("object",{"imageBase64Data?":Qn("string"),"imageUrl?":Qn("url")}))],Eo.prototype,"saveImageToPhotosAlbum",null),t([Pn,vo,n(0,ho("object",{appId:Qn("string"),"params?":Qn("object")}))],Eo.prototype,"openMiniApp",null),t([Pn,vo,n(0,ho("object",{"type?":Qn("string",{values:["oneShot"]}),"milliseconds?":Qn("number")},{type:"oneShot",milliseconds:500}))],Eo.prototype,"vibrate",null),t([Pn,vo,n(0,ho("object",{url:Qn("url")}))],Eo.prototype,"openWebview",null),t([In],Eo.prototype,"getRouteParams",null),t([Pn],Eo.prototype,"getAppInfo",null),t([Pn],Eo.prototype,"sendDataToPreviousMiniApp",null),t([Pn],Eo.prototype,"onCallbackData",null),t([Pn],Eo.prototype,"getPhoneNumber",null),t([Pn,vo,n(0,ho("object",{"maxProfile?":Qn("number",{min:1,max:10})},{maxProfile:1}))],Eo.prototype,"openProfilePicker",null),t([Pn,vo,n(0,po(["SSID"])),n(0,ho("object",{SSID:Qn("string"),"password?":Qn("string"),"hiddenSSID?":Qn("boolean")}))],Eo.prototype,"connectWifi",null),t([Pn,vo,n(0,ho("object",{type:Qn("string",{values:["photo","video","file"]}),serverUploadUrl:Qn("url"),"maxItemSize?":Qn("number",{min:0}),"editView?":Qn("object"),"editView.enable?":Qn("boolean"),"editView.aspectRatio?":Qn("string",{regex:/^\d+:\d+$/}),"silentRequest?":Qn("boolean"),"maxSelectItem?":Qn("number",{min:1})}))],Eo.prototype,"openMediaPicker",null),t([Pn,vo,n(0,ho("object",{title:Qn("string",{maxLength:100}),"thumbnail?":Qn("url"),"path?":Qn("string"),description:Qn(["string"],{maxLength:400})},{description:""}))],Eo.prototype,"getShareableLink",null),t([Pn,vo],Eo.prototype,"closeLoading",null),t([Pn,vo],Eo.prototype,"requestUpdateZalo",null);class So extends Eo{getServiceInstance(){return so.getInstance()}}class Ao extends Eo{getServiceInstance(){return new lo}}class Oo{constructor(){mo.set(this,qt)}static getInstance(){return Oo.instance||(Oo.instance=new Oo),Oo.instance}createOrder(e,t){return i(this,void 0,void 0,(function*(){const n=o(this,mo,"f"),i=new URLSearchParams;i.append("amount",t.amount.toString()),i.append("item",encodeURIComponent(JSON.stringify(t.item))),i.append("appId",n),t.desc&&i.append("desc",encodeURIComponent(t.desc)),t.extradata&&i.append("extradata",encodeURIComponent(JSON.stringify(t.extradata))),t.method&&i.append("method",t.method);const r={headers:{"Content-Type":"application/x-www-form-urlencoded",authorization:"Bearer "}};try{const o=yield e.getAccessToken({fail:e=>{throw kn.loginRequired}});r.headers.authorization=`Bearer ${o}`;const a=yield fetch(On,Object.assign(Object.assign({method:"POST"},r),{body:i})),s=yield a.json();if(!s.data||0!==s.err)throw kn.badRequest(s.msg);const l=s.data.id,c=s.data.jwt,u=window.APP_VERSION,d=window.APP_ENV,p={miniAppId:n,orderId:l};c&&(p.token=c),u&&(p.version=u),d&&(p.env=d),t.method&&(p.method=t.method);const h=Rn.encode(p),v=new URL(`?${h}`,"https://payment-mini.zalo.me").toString();return yield e.openWebview({url:v,fail:e=>{throw e}}),{orderId:l}}catch(e){throw e}}))}checkTransaction(e,t){return i(this,void 0,void 0,(function*(){try{let n,{data:i}=t;if(i||(i=e.getRouteParams()),"object"==typeof i&&(n=i.appTransID||i.orderId||i.apptransid),"string"==typeof i){const e=Rn.getParameterByName("orderId",i),t=Rn.getParameterByName("appTransID",i)||Rn.getParameterByName("apptransid",i);n=e||t}const r={headers:{authorization:"Bearer "}},a=yield e.getAccessToken({fail:e=>{throw kn.loginRequired}});r.headers.authorization=`Bearer ${a}`;const s=new URL(Tn),l={transId:n||"",appId:o(this,mo,"f")};s.search=new URLSearchParams(l).toString();const c=yield fetch(s.toString(),r),u=yield c.json();if(!u.data||0!==u.err)throw kn.badRequest(u.msg);const d=u.data||{};return{msg:d.resultMessage,orderId:d.orderId,resultCode:d.resultCode,transTime:d.transTime,createdAt:d.createAt,transId:d.transId}}catch(e){throw e}}))}}mo=new WeakMap;class To{constructor(){go.set(this,Kt)}static getInstance(){return To.instance||(To.instance=new To),To.instance}createOrder(e,t){return Promise.resolve({orderId:""})}checkTransaction(e,t){const n={msg:"Success",orderId:"",resultCode:1,transTime:(new Date).getTime().toString(),createdAt:(new Date).getTime().toString(),transId:""};return Promise.resolve(n)}}go=new WeakMap;class bo{constructor(e){yo.set(this,void 0),_o.set(this,void 0),r(this,yo,this.getInstance(),"f"),r(this,_o,e,"f")}createOrder(e){return o(this,yo,"f").createOrder(o(this,_o,"f"),e)}checkTransaction(e){return o(this,yo,"f").checkTransaction(o(this,_o,"f"),e)}}yo=new WeakMap,_o=new WeakMap,t([Pn,vo,n(0,ho("object",{amount:Qn(["string","number"]),desc:Qn("string"),"method?":Qn("string",{values:["MOMO","ZALOPAY","MOMO_SANDBOX","ZALOPAY_SANDBOX","CC","CC_SANDBOX","ATM","ATM_SANDBOX"]})}))],bo.prototype,"createOrder",null),t([Pn,vo],bo.prototype,"checkTransaction",null);class wo extends bo{getInstance(){return Oo.getInstance()}}class No extends bo{getInstance(){return To.getInstance()}}const Po=Wn();e.default=void 0,window.onJSCall=e=>function(t){si.getInstance().onJSCall(e,t)},window.onMultiJSCall=e=>function(t){si.getInstance().onMultiJSCall(e,t)},window.zaloJSV2={zalo_h5_event_handler:function(e,t,n){si.getInstance().nativeEventHandler(e,t,n)}},e.Payment=void 0,Po.isZalo?(e.default=new So,e.Payment=new wo(e.default)):(e.default=new Ao,e.Payment=new No(e.default)),window.ZaloMiniAppSDK=e.default,e.SDKCreator=Eo,e.default=e.default,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
15
|
+
***************************************************************************** */function t(e,t,i,n){var o,r=arguments.length,a=r<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,i,n);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(r<3?o(a):r>3?o(t,i,a):o(t,i))||a);return r>3&&a&&Object.defineProperty(t,i,a),a}function i(e,t){return function(i,n){t(i,n,e)}}function n(e,t,i,n){return new(i||(i=Promise))((function(o,r){function a(e){try{c(n.next(e))}catch(e){r(e)}}function s(e){try{c(n.throw(e))}catch(e){r(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(a,s)}c((n=n.apply(e,t||[])).next())}))}function o(e,t,i,n){if("a"===i&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===i?n:"a"===i?n.call(e):n?n.value:t.get(e)}function r(e,t,i,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(e,i):o?o.value=i:t.set(e,i),i}var a=Object.prototype;var s=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||a)};var c=function(e,t){return function(i){return e(t(i))}}(Object.keys,Object),l=Object.prototype.hasOwnProperty;var d=function(e){if(!s(e))return c(e);var t=[];for(var i in Object(e))l.call(e,i)&&"constructor"!=i&&t.push(i);return t},u="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function h(e,t){return e(t={exports:{}},t.exports),t.exports}var p="object"==typeof u&&u&&u.Object===Object&&u,v="object"==typeof self&&self&&self.Object===Object&&self,f=p||v||Function("return this")(),g=f.Symbol,m=Object.prototype,y=m.hasOwnProperty,_=m.toString,S=g?g.toStringTag:void 0;var E=function(e){var t=y.call(e,S),i=e[S];try{e[S]=void 0;var n=!0}catch(e){}var o=_.call(e);return n&&(t?e[S]=i:delete e[S]),o},O=Object.prototype.toString;var A=function(e){return O.call(e)},T=g?g.toStringTag:void 0;var b=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":T&&T in Object(e)?E(e):A(e)};var w=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)};var N,C=function(e){if(!w(e))return!1;var t=b(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},I=f["__core-js_shared__"],P=(N=/[^.]+$/.exec(I&&I.keys&&I.keys.IE_PROTO||""))?"Symbol(src)_1."+N:"";var k=function(e){return!!P&&P in e},R=Function.prototype.toString;var D=function(e){if(null!=e){try{return R.call(e)}catch(e){}try{return e+""}catch(e){}}return""},B=/^\[object .+?Constructor\]$/,j=Function.prototype,U=Object.prototype,L=j.toString,M=U.hasOwnProperty,W=RegExp("^"+L.call(M).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var x=function(e){return!(!w(e)||k(e))&&(C(e)?W:B).test(D(e))};var z=function(e,t){return null==e?void 0:e[t]};var J=function(e,t){var i=z(e,t);return x(i)?i:void 0},F=J(f,"DataView"),K=J(f,"Map"),G=J(f,"Promise"),H=J(f,"Set"),$=J(f,"WeakMap"),V="[object Map]",Z="[object Promise]",q="[object Set]",Q="[object WeakMap]",Y="[object DataView]",X=D(F),ee=D(K),te=D(G),ie=D(H),ne=D($),oe=b;(F&&oe(new F(new ArrayBuffer(1)))!=Y||K&&oe(new K)!=V||G&&oe(G.resolve())!=Z||H&&oe(new H)!=q||$&&oe(new $)!=Q)&&(oe=function(e){var t=b(e),i="[object Object]"==t?e.constructor:void 0,n=i?D(i):"";if(n)switch(n){case X:return Y;case ee:return V;case te:return Z;case ie:return q;case ne:return Q}return t});var re=oe;var ae=function(e){return null!=e&&"object"==typeof e};var se=function(e){return ae(e)&&"[object Arguments]"==b(e)},ce=Object.prototype,le=ce.hasOwnProperty,de=ce.propertyIsEnumerable,ue=se(function(){return arguments}())?se:function(e){return ae(e)&&le.call(e,"callee")&&!de.call(e,"callee")},he=Array.isArray;var pe=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var ve=function(e){return null!=e&&pe(e.length)&&!C(e)};var fe=function(){return!1},ge=h((function(e,t){var i=t&&!t.nodeType&&t,n=i&&e&&!e.nodeType&&e,o=n&&n.exports===i?f.Buffer:void 0,r=(o?o.isBuffer:void 0)||fe;e.exports=r})),me={};me["[object Float32Array]"]=me["[object Float64Array]"]=me["[object Int8Array]"]=me["[object Int16Array]"]=me["[object Int32Array]"]=me["[object Uint8Array]"]=me["[object Uint8ClampedArray]"]=me["[object Uint16Array]"]=me["[object Uint32Array]"]=!0,me["[object Arguments]"]=me["[object Array]"]=me["[object ArrayBuffer]"]=me["[object Boolean]"]=me["[object DataView]"]=me["[object Date]"]=me["[object Error]"]=me["[object Function]"]=me["[object Map]"]=me["[object Number]"]=me["[object Object]"]=me["[object RegExp]"]=me["[object Set]"]=me["[object String]"]=me["[object WeakMap]"]=!1;var ye=function(e){return ae(e)&&pe(e.length)&&!!me[b(e)]};var _e=function(e){return function(t){return e(t)}},Se=h((function(e,t){var i=t&&!t.nodeType&&t,n=i&&e&&!e.nodeType&&e,o=n&&n.exports===i&&p.process,r=function(){try{var e=n&&n.require&&n.require("util").types;return e||o&&o.binding&&o.binding("util")}catch(e){}}();e.exports=r})),Ee=Se&&Se.isTypedArray,Oe=Ee?_e(Ee):ye,Ae=Object.prototype.hasOwnProperty;var Te=function(e){if(null==e)return!0;if(ve(e)&&(he(e)||"string"==typeof e||"function"==typeof e.splice||ge(e)||Oe(e)||ue(e)))return!e.length;var t=re(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(s(e))return!d(e).length;for(var i in e)if(Ae.call(e,i))return!1;return!0};var be=function(e){return void 0===e};var we=function(e){return null===e};var Ne=function(e){return"string"==typeof e||!he(e)&&ae(e)&&"[object String]"==b(e)};var Ce=function(e){return"number"==typeof e||ae(e)&&"[object Number]"==b(e)};var Ie=function(e){return ae(e)&&"[object RegExp]"==b(e)},Pe=Se&&Se.isRegExp,ke=Pe?_e(Pe):Ie;var Re=function(e){return"symbol"==typeof e||ae(e)&&"[object Symbol]"==b(e)},De=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Be=/^\w*$/;var je=function(e,t){if(he(e))return!1;var i=typeof e;return!("number"!=i&&"symbol"!=i&&"boolean"!=i&&null!=e&&!Re(e))||(Be.test(e)||!De.test(e)||null!=t&&e in Object(t))},Ue=J(Object,"create");var Le=function(){this.__data__=Ue?Ue(null):{},this.size=0};var Me=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},We=Object.prototype.hasOwnProperty;var xe=function(e){var t=this.__data__;if(Ue){var i=t[e];return"__lodash_hash_undefined__"===i?void 0:i}return We.call(t,e)?t[e]:void 0},ze=Object.prototype.hasOwnProperty;var Je=function(e){var t=this.__data__;return Ue?void 0!==t[e]:ze.call(t,e)};var Fe=function(e,t){var i=this.__data__;return this.size+=this.has(e)?0:1,i[e]=Ue&&void 0===t?"__lodash_hash_undefined__":t,this};function Ke(e){var t=-1,i=null==e?0:e.length;for(this.clear();++t<i;){var n=e[t];this.set(n[0],n[1])}}Ke.prototype.clear=Le,Ke.prototype.delete=Me,Ke.prototype.get=xe,Ke.prototype.has=Je,Ke.prototype.set=Fe;var Ge=Ke;var He=function(){this.__data__=[],this.size=0};var $e=function(e,t){return e===t||e!=e&&t!=t};var Ve=function(e,t){for(var i=e.length;i--;)if($e(e[i][0],t))return i;return-1},Ze=Array.prototype.splice;var qe=function(e){var t=this.__data__,i=Ve(t,e);return!(i<0)&&(i==t.length-1?t.pop():Ze.call(t,i,1),--this.size,!0)};var Qe=function(e){var t=this.__data__,i=Ve(t,e);return i<0?void 0:t[i][1]};var Ye=function(e){return Ve(this.__data__,e)>-1};var Xe=function(e,t){var i=this.__data__,n=Ve(i,e);return n<0?(++this.size,i.push([e,t])):i[n][1]=t,this};function et(e){var t=-1,i=null==e?0:e.length;for(this.clear();++t<i;){var n=e[t];this.set(n[0],n[1])}}et.prototype.clear=He,et.prototype.delete=qe,et.prototype.get=Qe,et.prototype.has=Ye,et.prototype.set=Xe;var tt=et;var it=function(){this.size=0,this.__data__={hash:new Ge,map:new(K||tt),string:new Ge}};var nt=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e};var ot=function(e,t){var i=e.__data__;return nt(t)?i["string"==typeof t?"string":"hash"]:i.map};var rt=function(e){var t=ot(this,e).delete(e);return this.size-=t?1:0,t};var at=function(e){return ot(this,e).get(e)};var st=function(e){return ot(this,e).has(e)};var ct=function(e,t){var i=ot(this,e),n=i.size;return i.set(e,t),this.size+=i.size==n?0:1,this};function lt(e){var t=-1,i=null==e?0:e.length;for(this.clear();++t<i;){var n=e[t];this.set(n[0],n[1])}}lt.prototype.clear=it,lt.prototype.delete=rt,lt.prototype.get=at,lt.prototype.has=st,lt.prototype.set=ct;var dt=lt;function ut(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var i=function(){var n=arguments,o=t?t.apply(this,n):n[0],r=i.cache;if(r.has(o))return r.get(o);var a=e.apply(this,n);return i.cache=r.set(o,a)||r,a};return i.cache=new(ut.Cache||dt),i}ut.Cache=dt;var ht=ut;var pt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,vt=/\\(\\)?/g,ft=function(e){var t=ht(e,(function(e){return 500===i.size&&i.clear(),e})),i=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(pt,(function(e,i,n,o){t.push(n?o.replace(vt,"$1"):i||e)})),t}));var gt=function(e,t){for(var i=-1,n=null==e?0:e.length,o=Array(n);++i<n;)o[i]=t(e[i],i,e);return o},mt=g?g.prototype:void 0,yt=mt?mt.toString:void 0;var _t=function e(t){if("string"==typeof t)return t;if(he(t))return gt(t,e)+"";if(Re(t))return yt?yt.call(t):"";var i=t+"";return"0"==i&&1/t==-Infinity?"-0":i};var St=function(e){return null==e?"":_t(e)};var Et=function(e,t){return he(e)?e:je(e,t)?[e]:ft(St(e))};var Ot=function(e){if("string"==typeof e||Re(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t};var At=function(e,t){for(var i=0,n=(t=Et(t,e)).length;null!=e&&i<n;)e=e[Ot(t[i++])];return i&&i==n?e:void 0};var Tt=function(e,t,i){var n=null==e?void 0:At(e,t);return void 0===n?i:n},bt=function(){try{var e=J(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();var wt=function(e,t,i){"__proto__"==t&&bt?bt(e,t,{configurable:!0,enumerable:!0,value:i,writable:!0}):e[t]=i},Nt=Object.prototype.hasOwnProperty;var Ct=function(e,t,i){var n=e[t];Nt.call(e,t)&&$e(n,i)&&(void 0!==i||t in e)||wt(e,t,i)},It=/^(?:0|[1-9]\d*)$/;var Pt=function(e,t){var i=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==i||"symbol"!=i&&It.test(e))&&e>-1&&e%1==0&&e<t};var kt=function(e,t,i,n){if(!w(e))return e;for(var o=-1,r=(t=Et(t,e)).length,a=r-1,s=e;null!=s&&++o<r;){var c=Ot(t[o]),l=i;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(o!=a){var d=s[c];void 0===(l=n?n(d,c,s):void 0)&&(l=w(d)?d:Pt(t[o+1])?[]:{})}Ct(s,c,l),s=s[c]}return e};var Rt,Dt,Bt,jt,Ut,Lt,Mt,Wt,xt,zt,Jt={isEmpty:Te,isNull:we,isUndefined:be,isFunction:C,isObject:w,isString:Ne,isNumber:Ce,isArray:he,isRegExp:ke,get:Tt,set:function(e,t,i){return null==e?e:kt(e,t,i)},isPromise:e=>!!e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then};function Ft(e){return"function"==typeof window.Debug?window.Debug(e):function(...e){process.env.NODE_ENV}}e.NetworkType=void 0,(Rt=e.NetworkType||(e.NetworkType={})).none="none",Rt.wifi="wifi",Rt.cellular="cellular",Rt.unknown="unknown",e.PlatformType=void 0,(Dt=e.PlatformType||(e.PlatformType={})).wp="wp",Dt.android="android",Dt.iOS="iOS",Dt.unknown="unknown",e.ProfileType=void 0,(Bt=e.ProfileType||(e.ProfileType={}))[Bt.user=1]="user",Bt[Bt.oa=0]="oa",Bt[Bt.aliasOA=2]="aliasOA",e.ChatType=void 0,(jt=e.ChatType||(e.ChatType={}))[jt.user=1]="user",jt[jt.oa=0]="oa",e.PostFeedType=void 0,(Ut=e.PostFeedType||(e.PostFeedType={}))[Ut.image=1]="image",Ut[Ut.link=4]="link",Ut[Ut.profile=5]="profile",e.ShareSheetType=void 0,(Lt=e.ShareSheetType||(e.ShareSheetType={}))[Lt.image=1]="image",Lt[Lt.gif=11]="gif",Lt[Lt.video=12]="video",Lt[Lt.link=4]="link",Lt[Lt.oa=5]="oa",Lt[Lt.zmp=20]="zmp",e.OrientationType=void 0,(Mt=e.OrientationType||(e.OrientationType={}))[Mt.auto=1]="auto",Mt[Mt.portrait=2]="portrait",Mt[Mt.landscape=3]="landscape",e.VibrateType=void 0,(Wt=e.VibrateType||(e.VibrateType={}))[Wt.oneShot=0]="oneShot",e.Events=void 0,(xt=e.Events||(e.Events={})).AppPaused="h5.event.paused",xt.AppResumed="h5.event.resumed",xt.NetworkChanged="h5.event.connection.changed",xt.OnDataCallback="h5.event.webview.result",xt.OpenApp="h5.event.open.mp",xt.AppClose="h5.event.action.close",e.MediaPickerType=void 0,(zt=e.MediaPickerType||(e.MediaPickerType={}))[zt.photo=4]="photo",zt[zt.video=5]="video",zt[zt.file=6]="file";const Kt=e=>{const t=document.cookie;if(t){const o=t.split("; ");if(o&&o.length>0)for(var i=e.length+1,n=o.length-1;n>=0;n--){let t=o[n];if(t&&0===t.indexOf(e)&&(t=t.substring(i,t.length),t))return t=t.replace(/["']/g,""),t}}return null},Gt=e=>Kt(`${window.location.host}_`+e),Ht=e=>Kt((()=>{const e=window.location.host;if(e){if(e.indexOf("zalo.me")>=0)return"zalo.me_";if(e.indexOf("baomoi.com")>=0)return"baomoi.com_";if(e.indexOf("mp3.zing.vn")>=0)return"mp3.zing.vn_";if(e.indexOf("zaloapp.com")>=0)return"zaloapp.com_"}return""})()+e),$t=1048576,Vt=window.zAppID,Zt=window.APP_ID,qt=window.APP_CONFIG||{},Qt="h5.zdn.vn_zoauth",Yt="h5.zdn.vn_zlink3rd",Xt="h5.zdn.vn_zoauth_vrf",ei="h5.zdn.vn_deviceID",ti="https://graph.zalo.me/v2.0/me",ii="https://h5.zalo.me/openapi/access_token",ni="https://oauth.zaloapp.com/v3/access_token",oi="https://graph.zalo.me/v2.0/me/friends/list",ri="https://h5.zalo.me/apps/get-info",ai="https://h5.zalo.me/log/async",si=5*$t,ci=e=>({NONE:e?-2:0,WIFI:e?0:1,"2G":2,"3G":e?15:2,"4G":e?13:2}),li=0,di=-2e3,ui=-1400,hi=-1500,pi=-1401,vi=-2004,fi=-2005,gi={SUCCESS:"Success",UNKNOWN_ERROR:"Unknown error. Please try again later.",TIME_OUT:"Request timeout. Please try again later.",LOGIN_REQUIRED:"Please login (https://miniapp.zalo.me/docs/api/login) before to call this api",LOGIN_FAILED:"Login failed",NOT_PERMISSION:"You don't have permission to call this api",CLIENT_NOT_SUPPORT:"This API is not supported in this Zalo version",DECODE_FAILED:"Can not decode id. Please check your params again.",INVALID_PARAM:"Invalid parameter",USER_DENIED:"User denied",USER_CANCEL:"User cancel",MEDIA_PICKER_FAIL:"Unable to pick media",SAVE_IMAGE_FAIL:"Unable to save image"},mi={SUCCESS:{code:li,message:gi.SUCCESS},UNKNOWN_ERROR:{code:di,message:gi.UNKNOWN_ERROR},UNAUTHORIZED:{code:pi,message:gi.LOGIN_REQUIRED},FORBIDDEN:{code:-1403,message:gi.NOT_PERMISSION},CLIENT_NOT_SUPPORT:{code:-1404,message:gi.CLIENT_NOT_SUPPORT},DECODE_FAILED:{code:-2001,message:gi.DECODE_FAILED},TIME_OUT:{code:-1408,message:gi.TIME_OUT},USER_DENIED:{code:-2002,message:gi.USER_DENIED},USER_CANCEL:{code:-2003,message:gi.USER_CANCEL}},yi={GET_DOWNLOADED_STICKER:{name:"action.get.downloaded.sticker",have_callback:!0},OPEN_SHARE_STICKER:{name:"action.open.share.sticker"},OPEN_PROFILE:{name:"action.open.profile"},OPEN_FEED_DETAIL:{name:"action.open.feeddetail"},OPEN_FRIEND_RADA:{name:"action.open.friendrada"},OPEN_INAPP:{name:"action.open.inapp"},OPEN_OUTAPP:{name:"action.open.outapp"},OPEN_PAGE:{name:"action.open.page"},OPEN_PHOTODETAIL:{name:"action.open.photodetail"},OPEN_GALARY:{name:"action.open.galary"},OPEN_GAMECENTER:{name:"action.open.gamecenter"},OPEN_GAMENEWS:{name:"action.open.gamenews"},OPEN_TAB_CONTACT:{name:"action.open.tab.contact"},OPEN_TAB_SOCIAL:{name:"action.open.tab.social"},OPEN_FRIENDSUGGEST:{name:"action.open.friendsuggest"},OPEN_GROUPLIST:{name:"action.open.grouplist"},OPEN_NEARBY:{name:"action.open.nearby"},OPEN_ROOM:{name:"action.open.room"},OPEN_STICKERSTORE:{name:"action.open.stickerstore"},OPEN_CREATECHAT:{name:"action.open.createchat"},COPY_LINK_CATESTICKER:{name:"action.copy.link.catesticker"},REQUEST_BUY_STICKER:{name:"action.request.buy.sticker"},OPEN_CHAT:{name:"action.open.chat"},OPEN_TAB_CHAT:{name:"action.open.tab.chat"},OPEN_CHATGROUP:{name:"action.open.chatgroup"},OPEN_ADDFRIEND:{name:"action.open.addfriend"},OPEN_TAB_MORE:{name:"action.open.tab.more"},OPEN_POSTFEED:{name:"action.open.postfeed"},OPEN_LOGINDEVICES:{name:"action.open.logindevices"},OPEN_SENDSTICKER:{name:"action.open.sendsticker"},REPORT_ABUSE:{name:"action.report.abuse",have_callback:!0},FOLLOW_OA:{name:"action.follow.oa",have_callback:!0},UNFOLLOW_OA:{name:"action.unfollow.oa",have_callback:!0},OPEN_GAMEDETAIL:{name:"action.open.gamedetail"},OPEN_SHARESHEET:{name:"action.open.sharesheet",have_callback:!0},REQUEST_PERMISSION_CAMERA:{name:"action.request.permission.camera",error_list:{android:{"-2":{map_to:mi.USER_DENIED}},iOS:{"-2":{map_to:mi.USER_DENIED}}}},CHANGE_TITLE_HEADER:{name:"action.change.title.header",skip_jump:!0},WEBVIEW_CLEARCACHE:{name:"action.webview.clearcache"},WEBVIEW_CONFIRMCACHE:{name:"action.webview.confirmcache"},WEBVIEW_ISVISIBLE:{name:"action.webview.isvisible"},WEBVIEW_NETWORKTYPE:{name:"action.webview.networktype",skip_jump:!0},CHANGE_BUTTON_HEADER:{name:"action.change.button.header"},CREATE_OPTIONS_MENU:{name:"action.create.options.menu",skip_jump:!0,have_callback:!0},CREATE_SHORTCUT:{name:"action.create.shortcut"},CHANGE_ACTIONBAR_LEFTBUTTON_TYPE:{name:"action.change.actionbar.leftbutton.type",skip_jump:!0,have_callback:!0},WINDOW_CLOSE:{name:"action.window.close",skip_jump:!0,have_callback:!0},WEBVIEW_CHECKRESERROR:{name:"action.webview.checkResError"},IAP_REQUESTPAYMENT:{name:"action.iap.requestpayment"},ZBROWSER_GETSTATS:{name:"action.zbrowser.getstats"},ZBROWSER_JSBRIDGE:{name:"action.zbrowser.jsbridge",skip_jump:!0,have_callback:!0},PROMPT_AUTHENTICATION:{name:"action.prompt.authentication"},CHANGE_ACTIONBAR_COLOR:{name:"action.change.actionbar.color",skip_jump:!0},PROMPT_AUTHENTICATION_CHECK_STATE:{name:"action.prompt.authentication.check_state"},OPEN_APPSTORE:{name:"action.open.appstore"},GET_LOCATION:{name:"action.get.location",have_callback:!0,error_list:{android:{"-1":{map_to:mi.USER_DENIED}},iOS:{"-1":{map_to:mi.USER_DENIED}}}},QUERY_LOCATION_HIDE:{name:"action.query.location.hide",have_callback:!0},SHOW_TOAST:{name:"action.show.toast",have_callback:!0},OPEN_APP:{name:"action.open.app"},HIDE_KEYBOARD:{name:"action.hide.keyboard"},OPEN_PHONE:{name:"action.open.phone"},OPEN_QR:{name:"action.open.qr"},OPEN_SMS:{name:"action.open.sms"},VIEW_MYQR:{name:"action.view.myqr",have_callback:!0},KEEP_SCREEN:{name:"action.keep.screen",have_callback:!0},CHANGE_AUTOROTATE:{name:"action.change.autorotate",skip_jump:!0},CHECK_APP_INSTALLED:{name:"action.check.app.installed"},QUERY_SHOW:{name:"action.query.show"},QUERY_HIDE:{name:"action.query.hide"},OPEN_INAPPRW:{name:"action.open.inapprw"},ZALORUN_GETTRACKINGSTATUS:{name:"action.zalorun.getTrackingStatus",have_callback:!0},ZALORUN_SETTRACKINGSTATUS:{name:"action.zalorun.setTrackingStatus",have_callback:!0},ZALORUN_GETDAYSTEP:{name:"action.zalorun.getDayStep",have_callback:!0},ZALORUN_FORCESUBMITDATA:{name:"action.zalorun.forceSubmitData",have_callback:!0},ZALORUN_SETWEIGHT:{name:"action.zalorun.setWeight",have_callback:!0},OPEN_PROFILE_EXT:{name:"action.open.profile.ext"},DOWNLOAD_CATE:{name:"action.download.cate",have_callback:!0},JUMP_LOGIN:{name:"action.jump.login",skip_jump:!0,white_list:!0},OPEN_ADTIMA_ADS_INTERSTITIAL:{name:"action.open.adtima.ads.interstitial"},OPEN_ADTIMA_ADS:{name:"action.open.adtima.ads"},GET_ADIDCLIENT:{name:"action.get.adidclient"},SCAN_IBEACON:{name:"action.scan.ibeacon"},INTERACTIVE_VIBRATION:{name:"action.interactive.vibration"},SAVE_IMAGE_GALLERY:{name:"action.save.image.gallery",version_live:{iOS:408},error_list:{android:{"-101":{map_to:{code:fi,message:gi.SAVE_IMAGE_FAIL},need_more_detail:!0},"-102":{map_to:{code:fi,message:gi.SAVE_IMAGE_FAIL},need_more_detail:!0}},iOS:{"-10":{map_to:{code:fi,message:gi.SAVE_IMAGE_FAIL},need_more_detail:!0}}}},OPEN_MP:{name:"action.open.mp",version_live:{iOS:402}},CHANGE_ACTIONBAR:{name:"action.change.actionbar",version_live:{iOS:402},skip_jump:!0},ZBROWSER_MPDS:{name:"action.zbrowser.mpds",version_live:{iOS:402}},WEBVIEW_SET_RESULT:{name:"action.webview.set.result",version_live:{iOS:416}},MP_GET_NUMBER:{name:"action.mp.get.number",version_live:{iOS:416},error_list:{android:{"-1":{map_to:mi.USER_DENIED},"-101":{map_to:mi.USER_DENIED}},iOS:{"-1":{map_to:mi.USER_DENIED},"-10":{map_to:mi.USER_DENIED}}}},MP_OPEN_PROFILE_PICKER:{name:"action.mp.open.profile.picker",version_live:{iOS:432},error_list:{android:{"-101":{map_to:mi.USER_CANCEL}},iOS:{"-101":{map_to:mi.USER_CANCEL}}}},GET_SUPPORTED_ACTIONS:{name:"action.get.supported.actions",white_list:!0},MP_JOIN_WIFI:{name:"action.mp.join.wifi",version_live:{android:0,iOS:999},have_permission:!1,white_list:!1},PICK_MEDIA:{name:"action.pick.media",version_live:{iOS:440},error_list:{android:{"-101":{map_to:mi.USER_CANCEL},999:{map_to:{code:vi,message:gi.MEDIA_PICKER_FAIL},need_more_detail:!0}},iOS:{"-10":{map_to:{code:vi,message:gi.MEDIA_PICKER_FAIL}}}}},MP_CLOSE_LOADINGVIEW:{name:"action.mp.close.loadingview"}},_i={android:{"-4":mi.DECODE_FAILED,"-5":mi.CLIENT_NOT_SUPPORT,"-14":mi.TIME_OUT},iOS:{"-9":mi.DECODE_FAILED,"-5":mi.CLIENT_NOT_SUPPORT,"-14":mi.TIME_OUT}},Si={android:12100571,iOS:400,wp:0,unknown:0},Ei=[yi.GET_DOWNLOADED_STICKER.name,yi.OPEN_SHARE_STICKER.name,yi.OPEN_PROFILE.name,yi.OPEN_FEED_DETAIL.name,yi.OPEN_FRIEND_RADA.name,yi.OPEN_INAPP.name,yi.OPEN_OUTAPP.name,yi.OPEN_PAGE.name,yi.OPEN_PHOTODETAIL.name,yi.OPEN_GALARY.name,yi.OPEN_GAMECENTER.name,yi.OPEN_GAMENEWS.name,yi.OPEN_TAB_CONTACT.name,yi.OPEN_TAB_SOCIAL.name,yi.OPEN_FRIENDSUGGEST.name,yi.OPEN_GROUPLIST.name,yi.OPEN_NEARBY.name,yi.OPEN_ROOM.name,yi.OPEN_STICKERSTORE.name,yi.OPEN_CREATECHAT.name,yi.COPY_LINK_CATESTICKER.name,yi.REQUEST_BUY_STICKER.name,yi.OPEN_CHAT.name,yi.OPEN_TAB_CHAT.name,yi.OPEN_CHATGROUP.name,yi.OPEN_ADDFRIEND.name,yi.OPEN_TAB_MORE.name,yi.OPEN_POSTFEED.name,yi.OPEN_LOGINDEVICES.name,yi.OPEN_SENDSTICKER.name,yi.REPORT_ABUSE.name,yi.FOLLOW_OA.name,yi.UNFOLLOW_OA.name,yi.OPEN_GAMEDETAIL.name,yi.OPEN_SHARESHEET.name,yi.REQUEST_PERMISSION_CAMERA.name,yi.CHANGE_TITLE_HEADER.name,yi.WEBVIEW_CLEARCACHE.name,yi.WEBVIEW_CONFIRMCACHE.name,yi.WEBVIEW_ISVISIBLE.name,yi.WEBVIEW_NETWORKTYPE.name,yi.CHANGE_BUTTON_HEADER.name,yi.CREATE_OPTIONS_MENU.name,yi.CREATE_SHORTCUT.name,yi.CHANGE_ACTIONBAR_LEFTBUTTON_TYPE.name,yi.WINDOW_CLOSE.name,yi.WEBVIEW_CHECKRESERROR.name,yi.IAP_REQUESTPAYMENT.name,yi.ZBROWSER_GETSTATS.name,yi.ZBROWSER_JSBRIDGE.name,yi.PROMPT_AUTHENTICATION.name,yi.CHANGE_ACTIONBAR_COLOR.name,yi.PROMPT_AUTHENTICATION_CHECK_STATE.name,yi.OPEN_APPSTORE.name,yi.GET_LOCATION.name,yi.QUERY_LOCATION_HIDE.name,yi.SHOW_TOAST.name,yi.OPEN_APP.name,yi.HIDE_KEYBOARD.name,yi.OPEN_PHONE.name,yi.OPEN_QR.name,yi.OPEN_SMS.name,yi.VIEW_MYQR.name,yi.KEEP_SCREEN.name,yi.CHANGE_AUTOROTATE.name,yi.CHECK_APP_INSTALLED.name,yi.QUERY_SHOW.name,yi.QUERY_HIDE.name,yi.OPEN_INAPPRW.name,yi.ZALORUN_GETTRACKINGSTATUS.name,yi.ZALORUN_SETTRACKINGSTATUS.name,yi.ZALORUN_GETDAYSTEP.name,yi.ZALORUN_FORCESUBMITDATA.name,yi.ZALORUN_SETWEIGHT.name,yi.OPEN_PROFILE_EXT.name,yi.DOWNLOAD_CATE.name,yi.JUMP_LOGIN.name,yi.OPEN_ADTIMA_ADS_INTERSTITIAL.name,yi.OPEN_ADTIMA_ADS.name,yi.GET_ADIDCLIENT.name,yi.SCAN_IBEACON.name,yi.SAVE_IMAGE_GALLERY.name,yi.OPEN_MP.name,yi.CHANGE_ACTIONBAR.name,yi.INTERACTIVE_VIBRATION.name,yi.ZBROWSER_MPDS.name],Oi=0,Ai=3,Ti=1,bi=0,wi="https://payment-mini.zalo.me/api/order/create",Ni="https://payment-mini.zalo.me/api/transaction";class Ci{constructor(e,t,i){this.code=e,this.message=t,this.api=i}toString(){return`api: ${String(this.api)}; code: ${this.code}; message: ${this.message}`}toJSON(){return{code:this.code,message:this.message,api:this.api}}}const Ii=(e,t)=>e instanceof Ci?((e,t)=>(e.api=t,e.toJSON()))(e,t):((e,t)=>e instanceof Error?new Ci(di,e.message,t).toJSON():new Ci(di,gi.UNKNOWN_ERROR,t).toJSON())(e,t),Pi=(e,t)=>({code:li,message:t||gi.SUCCESS,data:e||{}}),ki={badRequest:e=>new Ci(ui,e),loginFailed:e=>new Ci(pi,`${gi.LOGIN_FAILED}: ${e}`),loginRequired:()=>new Ci(pi,gi.LOGIN_REQUIRED),missingParam:e=>new Ci(ui,`Missing required argument: ${e}`),wrongTypeParam:(e,t,i)=>new Ci(ui,`Wrong type of parameter '${e}'. Expected ${t}, but got ${i}`),cannotGetShareInfo:()=>new Ci(hi,"Can not get app info to share"),lengthInvalid:e=>new Ci(ui,`${e} length is invalid.`)};const Ri={encode:function(e){var t=[];for(var i in e)if(e.hasOwnProperty(i)){var n=e[i];if(void 0===n)return;if(null===n)return void t.push(i);t.push(encodeURIComponent(i)+"="+encodeURIComponent(n))}return t.join("&")},decode:function(e,t){var i={};if(""===e)return i;for(var n=e.split("&"),o=0;o<n.length;o++){var r=n[o].split("=",2),a=decodeURIComponent(r[0]);if(t&&Object.prototype.hasOwnProperty.call(i,a))throw new URIError("Duplicate key: "+a);i[a]=2===r.length?decodeURIComponent(r[1]):null}return i},appendToUrl:function(e,t){return e+(-1!==e.indexOf("?")?"&":"?")+("string"==typeof t?t:Ri.encode(t))},getParameterByName:function(e,t){t||(t=window.location.href),e=e.replace(/[\[\]]/g,"\\$&");var i=new RegExp("[?&]"+e+"(=([^&#]*)|&|#|$)").exec(t);return i?i[2]?decodeURIComponent(i[2].replace(/\+/g," ")):"":null},getParamsAsObject:function(e){var t={};return e?(e.split("&").map((function(e){var i=e.split("=");i&&2==i.length&&(t[i[0]]=decodeURIComponent(i[1].replace(/\+/g," ")))})),t):t},toQueryString:function(e){if(!e)return"";if("object"!=(void 0===e?"undefined":typeof e))return e;var t=Object.keys(e),i=[];return t.map((function(t){var n=e[t],o=[t,n="object"==(void 0===n?"undefined":typeof n)?JSON.stringify(n):encodeURIComponent(n)].join("=");i.push(o)})),i.join("&")}},Di=new RegExp("[\\u0300-\\u036f]","g"),Bi=new RegExp("[đ|Đ]","g"),ji=new RegExp("\\s","g"),Ui=Ft("zmp:utils:common"),Li=e=>{try{new URL(e)}catch(e){return!1}return!0},Mi=()=>navigator.userAgent||navigator.vendor||window.opera,Wi=()=>{const e=Mi().toLowerCase();return{isWP:/iemobile/.test(e),isAndroid:/android/i.test(e)&&!/iemobile/.test(e),isIOS:/iphone|ios|ipad|ipod/.test(e)&&!/iemobile/.test(e),isMobile:/android|iphone|ios|ipad|ipod|iemobile/.test(e),isZalo:/zalo/.test(e)}},xi=e=>{const t=document.getElementsByTagName("meta");for(let i=0;i<t.length;i++)if(t[i].getAttribute("name")===e||t[i].getAttribute("property")===e)return t[i].getAttribute("content");return""},zi=()=>{const e=Mi().toLowerCase().split("zalo")[1];if(e){return e.replace(" ","").split("/")[1]||""}return""},Ji=()=>{let t=Wi();return t.isWP?e.PlatformType.wp:t.isAndroid?e.PlatformType.android:t.isIOS?e.PlatformType.iOS:e.PlatformType.unknown},Fi=(e,t)=>{const i=t.toLowerCase(),n=i.split(/[<>]/i),o="array"===n[0];return!!("url"===i&&Li(e)||o&&("array"===i&&Array.isArray(e)||((e,t)=>Array.isArray(t)&&!t.some((t=>"url"===e?!Li(t):typeof t!==e)))(n[1],e))||!Array.isArray(e)&&typeof e===t)},Ki=e=>(e=>{let t=Gt(e);return t||(t=Ht(e),t)?t:Kt(e)})(e),Gi=e=>{if(Jt.isObject(JSON)&&JSON.parse&&Jt.isString(e)){const t=e.replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\x00/g,"");return JSON.parse(t,((e,t)=>t))}return Jt.isObject(e)?e:new Function("return "+e)()},Hi=e=>{if(Jt.isObject(JSON)&&JSON.stringify)return JSON.stringify(e);if(void 0===e)return"undefined";if(null===e)return"null";try{if("string"==typeof e||null!==e.constructor.toString().match(/string/i))return'"'+e.replace(/"/g,'\\"')+'"'}catch(e){console.log(e)}var t;if(null!==Object.prototype.toString.call(e).match(/array/i)){t=new Array;for(var i=e.length,n=0;n<i;n++)t.push(Hi(e[n]));return"["+t.join(",")+"]"}if("object"==typeof e){for(var o in t=new Array,e)t.push('"'+o+'":'+Hi(e[o]));return"{"+t.join(",")+"}"}return e.toString()},$i=()=>{try{const e=Number(zi()),t=Ji();return e>=Si[t]}catch(e){return!0}},Vi=e=>JSON.stringify(e).replace(/"/g,'\\"').replace(/'/g,"'"),Zi=e=>{try{if(e){Ui(e);const t=e.replace(/\\/g,"").replace(/'/g,"'");return Ui("formattedValue",t,JSON.parse(t),typeof JSON.parse(t)),JSON.parse(t)}return null}catch(t){return Ui("parse json error:",t),e}},qi=(e,t,i,o,r,a)=>n(void 0,void 0,void 0,(function*(){const n=new URL(location.href),s=new URLSearchParams;let c=`${n.pathname}${n.search}`;a&&(c=`/zapps/${e}${"/"===a[0]?"":"/"}${a}`);const l=new URL(`https://zalo.me/app/link${c}`);s.append("title",i),s.append("description",o||""),s.append("thumbnail",r),s.append("url",l.href),s.append("accessToken",t||"");const d=yield fetch("https://h5.zalo.me/openapi/create-sharelink",Object.assign({method:"POST",body:s},{headers:{"Content-Type":"application/x-www-form-urlencoded"}})),u=yield d.json();if(!u||0!==u.err)throw ki.cannotGetShareInfo();return l.search=`${l.search}&zshareId=${u.data.shareId}`,Object.assign(Object.assign({},u.data),{shareableLink:l.href})})),Qi=(e,t)=>i=>{if(!(Array.isArray(e)?e.some((e=>Fi(i,e))):Fi(i,e)))return{error:!0,errorMessage:e};if(t){if(Array.isArray(null==t?void 0:t.values))return{error:!(null==t?void 0:t.values.includes(i)),errorMessage:null==t?void 0:t.values.toString()};if(Jt.isNumber(null==t?void 0:t.maxLength))return{error:Jt.isString(i)&&i.length>(null==t?void 0:t.maxLength),errorMessage:`data length must <= ${null==t?void 0:t.maxLength}`};if(Jt.isNumber(null==t?void 0:t.min)&&Jt.isNumber(null==t?void 0:t.max))return{error:i<(null==t?void 0:t.min)||i>(null==t?void 0:t.max),errorMessage:`data must be in between ${null==t?void 0:t.min} and ${null==t?void 0:t.max}`};if(Jt.isNumber(null==t?void 0:t.min))return{error:i<(null==t?void 0:t.min),errorMessage:`data must >= ${null==t?void 0:t.min}`};if(Jt.isNumber(null==t?void 0:t.max))return{error:i>(null==t?void 0:t.max),errorMessage:`data must <= ${null==t?void 0:t.max}`};if(Jt.isRegExp(null==t?void 0:t.regex))return{error:!t.regex.test(i),errorMessage:"data must valid"}}return{error:!1}},Yi=(e,t,i)=>n(void 0,void 0,void 0,(function*(){const n={appId:e,versionStatus:t};Jt.isUndefined(i)||(n.currentVersion=i);const o=Ri.appendToUrl(ri,n),r=yield fetch(o,{credentials:"include"});if(r.ok){const e=yield r.json();if(e.err<0||!e.data)throw new Error(e);return{name:e.data.name,version:e.data.version,description:e.data.description,appUrl:e.data.appUrl,qrCodeUrl:e.data.qrCodeUrl,logoUrl:e.data.logoUrl}}throw new Error("Can't get app info")}));var Xi=h((function(e){var t=Object.prototype.hasOwnProperty,i="~";function n(){}function o(e,t,i){this.fn=e,this.context=t,this.once=i||!1}function r(e,t,n,r,a){if("function"!=typeof n)throw new TypeError("The listener must be a function");var s=new o(n,r||e,a),c=i?i+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function a(e,t){0==--e._eventsCount?e._events=new n:delete e._events[t]}function s(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(i=!1)),s.prototype.eventNames=function(){var e,n,o=[];if(0===this._eventsCount)return o;for(n in e=this._events)t.call(e,n)&&o.push(i?n.slice(1):n);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(e)):o},s.prototype.listeners=function(e){var t=i?i+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var o=0,r=n.length,a=new Array(r);o<r;o++)a[o]=n[o].fn;return a},s.prototype.listenerCount=function(e){var t=i?i+e:e,n=this._events[t];return n?n.fn?1:n.length:0},s.prototype.emit=function(e,t,n,o,r,a){var s=i?i+e:e;if(!this._events[s])return!1;var c,l,d=this._events[s],u=arguments.length;if(d.fn){switch(d.once&&this.removeListener(e,d.fn,void 0,!0),u){case 1:return d.fn.call(d.context),!0;case 2:return d.fn.call(d.context,t),!0;case 3:return d.fn.call(d.context,t,n),!0;case 4:return d.fn.call(d.context,t,n,o),!0;case 5:return d.fn.call(d.context,t,n,o,r),!0;case 6:return d.fn.call(d.context,t,n,o,r,a),!0}for(l=1,c=new Array(u-1);l<u;l++)c[l-1]=arguments[l];d.fn.apply(d.context,c)}else{var h,p=d.length;for(l=0;l<p;l++)switch(d[l].once&&this.removeListener(e,d[l].fn,void 0,!0),u){case 1:d[l].fn.call(d[l].context);break;case 2:d[l].fn.call(d[l].context,t);break;case 3:d[l].fn.call(d[l].context,t,n);break;case 4:d[l].fn.call(d[l].context,t,n,o);break;default:if(!c)for(h=1,c=new Array(u-1);h<u;h++)c[h-1]=arguments[h];d[l].fn.apply(d[l].context,c)}}return!0},s.prototype.on=function(e,t,i){return r(this,e,t,i,!1)},s.prototype.once=function(e,t,i){return r(this,e,t,i,!0)},s.prototype.removeListener=function(e,t,n,o){var r=i?i+e:e;if(!this._events[r])return this;if(!t)return a(this,r),this;var s=this._events[r];if(s.fn)s.fn!==t||o&&!s.once||n&&s.context!==n||a(this,r);else{for(var c=0,l=[],d=s.length;c<d;c++)(s[c].fn!==t||o&&!s[c].once||n&&s[c].context!==n)&&l.push(s[c]);l.length?this._events[r]=1===l.length?l[0]:l:a(this,r)}return this},s.prototype.removeAllListeners=function(e){var t;return e?(t=i?i+e:e,this._events[t]&&a(this,t)):(this._events=new n,this._eventsCount=0),this},s.prototype.off=s.prototype.removeListener,s.prototype.addListener=s.prototype.on,s.prefixed=i,s.EventEmitter=s,e.exports=s}));class en extends Xi{constructor(){super(),this.debug=Ft("zmp:event-emitter")}static getInstance(){return en.instance||(en.instance=new en),en.instance}h5ConfirmHandleEvent(e,t,i){ZaloJavaScriptInterface.jsH5EventCallback(e,t,i||"")}on(e,t,i){this.debug(`register ${e}: ${i}`);return super.on(e,((n,o)=>{this.h5ConfirmHandleEvent(n,e,i),t(o)}),i)}once(e,t,i){this.debug(`register once ${e}: ${i}`);return super.once(e,((n,o)=>{this.h5ConfirmHandleEvent(n,e,i),t(o)}),i)}}var tn,nn,on,rn,an,sn="2.21.0";class cn{static getVersion(){return sn}static getSystemInfo(){return{version:xi("version-id")||"",apiVersion:sn,zaloVersion:zi(),platform:Ji(),language:navigator.language,zaloLanguage:window.zLanguage||"vi",zaloTheme:window.zTheme||"light"}}static getAppInfo(){return n(this,void 0,void 0,(function*(){const e=this.getAppId(),t=this.getSystemInfo();return yield Yi(e,0,t.version)}))}}class ln{static setNavigationBarTitle(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.CHANGE_TITLE_HEADER,{title:e.title},{haveTimeout:!1})}))}static setNavigationBarColor(e){return n(this,void 0,void 0,(function*(){const t={};let i;Jt.isEmpty(e.textColor)||(t.textColor=e.textColor),Jt.isString(e.color)&&e.color.length>0?(Jt.isEmpty(e.color)||(t.backgroundColor=e.color),i=5):(Jt.isEmpty(e.statusBarColor)||(t.backgroundColor=e.statusBarColor),i=6),this.setActionBarConfig((e=>Object.assign(Object.assign({},e),{actionbarType:i,dataConfig:Object.assign(Object.assign({},e.dataConfig),t)}))),yield this.getJSBridge().callNative(yi.CHANGE_ACTIONBAR,Object.assign({},this.getActionBarConfig()),{haveTimeout:!1})}))}static setNavigationBarLeftButton(e,t){return n(this,void 0,void 0,(function*(){let i,n;Jt.isString(e)&&(i="none"===e||"home"===e?Ai:Oi,n="home"===e||"both"===e?Ti:bi),this.setActionBarConfig((e=>Object.assign(Object.assign({},e),{buttonType:Jt.isNumber(i)?i:e.buttonType,dataConfig:Object.assign(Object.assign({},e.dataConfig),{confirmToExit:Jt.isNumber(t)?t:e.dataConfig.confirmToExit,viewInLeftType:Jt.isNumber(i)?i:e.dataConfig.viewInLeftType}),homeConfig:Object.assign(Object.assign({},e.homeConfig),{enable:Jt.isNumber(n)?n:e.homeConfig.enable})}))),yield this.getJSBridge().callNative(yi.CHANGE_ACTIONBAR_LEFTBUTTON_TYPE,Object.assign({},this.getActionBarConfig()),{haveTimeout:!1})}))}static setNavigationBar(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.CHANGE_ACTIONBAR,{data:e},{haveTimeout:!1})}))}}class dn{static setBackgroundColor(e){return n(this,void 0,void 0,(function*(){Jt.isString(e.backgroundColor)&&e.backgroundColor.length>0&&(yield this.getJSBridge().callNative(yi.CHANGE_ACTIONBAR,{actionbarType:this.isShowNavBar?5:6,dataConfig:{backgroundColor:e.backgroundColor,textColor:e.textColor}}))}))}}class un{constructor(e,t,i,n){this.title=n,this.severity=t;const o=new Date;if(this.time=o.toLocaleTimeString(),this.content=e,i>0){const e=(new Error).stack;this.stack=e?e.replace("Error\n",""):""}}toString(){return(this.content.stack?[this.title,this.severity.toUpperCase(),this.time,this.content,this.content.stack.replace("Error:","")]:[this.title,this.severity.toUpperCase(),this.time,JSON.stringify(this.content),this.stack]).join(" ")}}tn=new WeakMap,nn=new WeakMap,on=new WeakMap,rn=new WeakMap,an=new WeakMap;const hn=new class{constructor(){tn.set(this,3),nn.set(this,["none","error","warn","info"]),on.set(this,"[zmp] > "),rn.set(this,{error:0,warn:0,info:0,firstError:null,lastError:null}),an.set(this,((e,t,i)=>{o(this,rn,"f")[o(this,nn,"f")[e]]++;const n=o(this,nn,"f")[e];if(r(this,on,o(this,on,"f")+("string"!=typeof t?new un(t,n,e,i).toString():t),"f"),!(e>o(this,tn,"f")))switch(e){case 1:console.error(o(this,on,"f"));break;case 2:console.warn(o(this,on,"f"));break;case 3:console.info(o(this,on,"f"));break;default:throw new Error("internal")}}))}setLogLevel(e){r(this,tn,e,"f")}info(e){o(this,an,"f").call(this,3,e)}warn(e,t){o(this,an,"f").call(this,2,e,t)}error(e,t){o(this,an,"f").call(this,1,e,t)}getMetrics(){return o(this,rn,"f")}};class pn{static setDeviceOrientation(t){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.CHANGE_AUTOROTATE,{autoRotate:e.OrientationType[t.rotate]})}))}static getNetworkType(t){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.WEBVIEW_NETWORKTYPE,{url:window.location.href,featureId:""}).then((t=>{const i=t.network;let n;const o=Wi().isAndroid;switch(i){case ci(o).NONE:n=e.NetworkType.none;break;case ci(o).WIFI:n=e.NetworkType.wifi;break;case ci(o)["2G"]:case ci(o)["3G"]:case ci(o)["4G"]:n=e.NetworkType.cellular;break;default:n=e.NetworkType.unknown}return{networkType:n}}))}))}static onNetworkStatusChange(t){return n(this,void 0,void 0,(function*(){yield this.events.on(e.Events.NetworkChanged,(e=>{const i=e&&e.state;this.getNetworkType().then((e=>{const n={isConnected:"CONNECTED"===i,networkType:e&&e.networkType};t(n)})).catch((e=>{hn.error(e,"onNetworkStatusChange")}))}))}))}static startBeaconDiscovery(e){var t,i,o,r,a;return n(this,void 0,void 0,(function*(){const n={subaction:0,scanning_type:Jt.isNumber(null==e?void 0:e.scanningType)?e.scanningType:0,data:{scan_from_source:Jt.isString(null==e?void 0:e.scanFromSource)?e.scanFromSource:"",expire:Jt.isNumber(null==e?void 0:e.expire)?e.expire:3e3,monitor_interval:Jt.isNumber(null==e?void 0:e.monitorInterval)?e.monitorInterval:60,domain:Jt.isString(null==e?void 0:e.domain)?e.domain:"",scan_config:{scan_time:Jt.isNumber(null===(t=null==e?void 0:e.scanConfig)||void 0===t?void 0:t.scanTime)?e.scanConfig.scanTime:15e3,time_between_scan:Jt.isNumber(null===(i=null==e?void 0:e.scanConfig)||void 0===i?void 0:i.timeBetweenScan)?e.scanConfig.timeBetweenScan:1e4,beacon_timeout:Jt.isNumber(null===(o=null==e?void 0:e.scanConfig)||void 0===o?void 0:o.beaconTimeout)?e.scanConfig.beaconTimeout:3e4,delayCheckConnectedTimeout:Jt.isNumber(null===(r=null==e?void 0:e.scanConfig)||void 0===r?void 0:r.delayCheckConnectedTimeout)?e.scanConfig.delayCheckConnectedTimeout:5e3,beaconConnectedTimeout:Jt.isNumber(null===(a=null==e?void 0:e.scanConfig)||void 0===a?void 0:a.beaconConnectedTimeout)?e.scanConfig.beaconConnectedTimeout:6e5},items:Array.isArray(null==e?void 0:e.items)?null==e?void 0:e.items:[]}};return yield this.getJSBridge().callNative(yi.SCAN_IBEACON,Object.assign({},n)),!0}))}static stopBeaconDiscovery(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.SCAN_IBEACON,Object.assign({},{subaction:2})),!0}))}static getBeacons(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.SCAN_IBEACON,Object.assign({},{subaction:1}),{isMultiCallback:!0}).then((e=>{const t={beacons:[]};return Array.isArray(e)&&e.forEach((e=>{const i={uuid:e.uuid,major:e.major,minor:e.minor,distance:e.distance,rssi:e.rssi};t.beacons.push(i)})),t}))}))}static stopBluetoothDevicesDiscovery(){return n(this,void 0,void 0,(function*(){return this.getJSBridge().callNative({name:""},{})}))}static startBluetoothDevicesDiscovery(e){return n(this,void 0,void 0,(function*(){return this.getJSBridge().callNative({name:""},Object.assign({},e))}))}static openBluetoothAdapter(){return n(this,void 0,void 0,(function*(){return this.getJSBridge().callNative({name:""},{})}))}static onBluetoothDeviceFound(){return n(this,void 0,void 0,(function*(){return this.getJSBridge().callNative({name:""},{})}))}static onBluetoothAdapterStateChange(){return n(this,void 0,void 0,(function*(){return Promise.resolve()}))}static getConnectedBluetoothDevices(e){return n(this,void 0,void 0,(function*(){const t={services:e.services||[]};return this.getJSBridge().callNative({name:""},t)}))}static getBluetoothDevices(){return n(this,void 0,void 0,(function*(){return this.getJSBridge().callNative({name:""},{})}))}static getBluetoothAdapterState(){return n(this,void 0,void 0,(function*(){return this.getJSBridge().callNative({name:""},{})}))}static closeBluetoothAdapter(){return n(this,void 0,void 0,(function*(){return this.getJSBridge().callNative({name:""},{})}))}static scanQRCode(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.OPEN_QR,{skipOpenLink:!0})}))}static showToast(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.SHOW_TOAST,{toast:e.message})}))}static hideKeyboard(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.HIDE_KEYBOARD,{})}))}static openPhone(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.OPEN_PHONE,{phoneNum:e.phoneNumber,phoneCode:e.phoneNumber})}))}static openSMS(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.OPEN_SMS,{content:e.content,phoneCode:e.phoneNumber})}))}static keepScreen(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.KEEP_SCREEN,{data:{keep_screen_on:e.keepScreenOn?1:0}})}))}static openBioAuthentication(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.PROMPT_AUTHENTICATION,{secret_data:e.secretData,app_id:this.getZAppId(),ui:{title:e.ui.title,sub_title:e.ui.subTitle,negative_text:e.ui.negativeButtonText},require_fingerprint:e.requireFingerprint?1:0}).then((e=>{var t,i,n,o;return{code:null==e?void 0:e.error_code,message:null==e?void 0:e.error_message,data:{domain:null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.domain,code:null===(i=null==e?void 0:e.data)||void 0===i?void 0:i.error_code,message:null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.error_message,payToken:null===(o=null==e?void 0:e.data)||void 0===o?void 0:o.pay_token}}}))}))}static checkStateBioAuthentication(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.PROMPT_AUTHENTICATION_CHECK_STATE,{}).then((e=>({bioState:null==e?void 0:e.bio_state})))}))}static vibrate(t){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.INTERACTIVE_VIBRATION,{type:e.VibrateType[t.type],vibrate_time:t.milliseconds})}))}static connectWifi(e){return n(this,void 0,void 0,(function*(){let t="open";return Jt.isString(e.password)&&e.password.length>0&&(t="wpa_wpa2"),yield this.getJSBridge().callNative(yi.MP_JOIN_WIFI,{ssid:e.SSID,securityType:t,password:e.password,hiddenSsid:e.hiddenSSID})}))}static openAppStore(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.OPEN_APPSTORE,e)}))}}var vn,fn,gn;class mn{constructor(e){vn.set(this,localStorage),fn.set(this,void 0),gn.set(this,void 0),Wi(),r(this,gn,{keys:new Set,currentSize:0,limitSize:si},"f"),r(this,fn,e,"f"),this.findAllCurrentDataByApp(e)}findAllCurrentDataByApp(e){try{let t;for(t in o(this,vn,"f")){if(e){if(t.split("_")[0]!==e)continue}o(this,gn,"f").keys.add(t)}}catch(e){hn.error(e,"LocalResourceStorage > findAllCurrentDataByApp")}}get(e){let t=new Map;return e.forEach((e=>{t.set(e,this.getSync(e))})),Promise.resolve(t)}getSync(e){return o(this,fn,"f")&&(e=`${o(this,fn,"f")}_${e}`),o(this,gn,"f").keys.has(e)?o(this,vn,"f").getItem(e):null}set(e){return n(this,void 0,void 0,(function*(){return Object.entries(e).forEach((([e,t])=>{this.setSync(e,t.replace(/\\"/g,'"'))})),Promise.resolve({errorKeys:[]})}))}setSync(e,t){o(this,fn,"f")&&(e=`${o(this,fn,"f")}_${e}`),o(this,vn,"f").setItem(e,t),o(this,gn,"f").keys.add(e)}getInfo(){return n(this,void 0,void 0,(function*(){return Promise.resolve(this.getInfoSync())}))}getInfoSync(){const e=((e,t)=>{let i,n,o=0;for(n in e){const r=n.split("_")[0];e.hasOwnProperty(n)&&(t&&r!==t||(i=2*(e[n].length+n.length),o+=i))}return o})(o(this,vn,"f"),o(this,fn,"f"));return{currentSize:Jt.isNumber(e)?Number((e/1024).toFixed(2)):0,limitSize:Number(5120..toFixed(2))}}remove(e){return n(this,void 0,void 0,(function*(){return e.forEach((e=>{this.removeSync(e)})),Promise.resolve({errorKeys:[]})}))}removeSync(e){o(this,fn,"f")&&(e=`${o(this,fn,"f")}_${e}`),o(this,gn,"f").keys.has(e)&&(o(this,vn,"f").removeItem(e),o(this,gn,"f").keys.delete(e))}clear(){return n(this,void 0,void 0,(function*(){return Promise.resolve(this.clearSync())}))}clearSync(){o(this,gn,"f").keys.forEach((e=>{o(this,fn,"f")&&e.indexOf(o(this,fn,"f"))<0||(o(this,vn,"f").removeItem(e),o(this,gn,"f").keys.delete(e))}))}}vn=new WeakMap,fn=new WeakMap,gn=new WeakMap;var yn={},_n=function(e,t,i){var n=t||"default";return function(){var t=n in yn?yn[n](e,i):e;return t.apply(this,arguments)}};_n.setWrapper=function(e){var t=arguments.length<=1||void 0===arguments[1]?"default":arguments[1];yn[t]=e};var Sn={error:{code:1,error_subcode:1357046,message:"Received Invalid JSON reply.",type:"http"}};function En(e){try{return null===e?Sn:JSON.parse(e)}catch(e){return Sn}}var On,An,Tn,bn,wn,Nn,Cn,In,Pn,kn,Rn,Dn,Bn,jn,Un,Ln,Mn,Wn,xn,zn,Jn,Fn,Kn,Gn,Hn,$n,Vn,Zn,qn,Qn={execute:function(e,t,i,n){i.suppress_http_code=1;var o=Ri.encode(i);"post"!=t&&(e=Ri.appendToUrl(e,o),o="");var r=function(e,t){if(!self.XMLHttpRequest)return null;var i=new XMLHttpRequest,n=function(){};if(!("withCredentials"in i))return null;i.open(e,t,!0),i.setRequestHeader("Content-type","application/x-www-form-urlencoded");var o={send:function(e){i.send(e)}},r=_n((function(){r=n,"onload"in o&&o.onload(i)}),"entry","XMLHttpRequest:load"),a=_n((function(){a=n,"onerror"in o&&o.onerror(i)}),"entry","XMLHttpRequest:error");return i.onload=function(){r()},i.onerror=function(){a()},i.onreadystatechange=function(){4==i.readyState&&(200==i.status?r():a())},o}(t,e);return!!r&&(r.onload=function(e){n(En(e.responseText))},r.onerror=function(e){e.responseText?n(En(e.responseText)):n({error:{code:1,error_subcode:1357045,message:"unknown error (empty response)",status:e.status,type:"http"}})},r.send(o),!0)}};class Yn extends Xi{constructor(){super(),On.add(this),this.debug=Ft("zmp:ZaloJSBridge"),this.events=en.getInstance(),this._accessTk=Ki("zacc_session")||"DEFAULT_ACCESS_TOKEN",this._jsAccessTk=Ki("zlink3rd")||"DEFAULT_JS_TOKEN",this.results=[],this._userAgent=Mi(),this._device=Wi(),this.isJumped=!1,An.set(this,null),Tn.set(this,void 0),this.jump=()=>new Promise(((e,t)=>{Jt.isUndefined(o(this,An,"f"))||Jt.isNull(o(this,An,"f"))?this.callNative(yi.JUMP_LOGIN,{}).then((t=>{const i=t&&t.cookiesOAuthLogins||[],n=t&&t.actionPermission||[];Object.entries(n).forEach((e=>{const t=e[0],i=e[1]||{perm:0,decode:0};o(this,Tn,"f")[t]||(o(this,Tn,"f")[t]={permission:!1,support:!1}),o(this,Tn,"f")[t].permission=1===i.perm}));const a=i.find((e=>e.name===Yt));a&&(this.jsAccessTk=a.value,window.ZJSBridge.setJSToken&&window.ZJSBridge.setJSToken(a.value)),r(this,An,i,"f"),this.isJumped=!0,e(i)})).catch((e=>{this.isJumped=!1,t(e)})):e(o(this,An,"f"))})),this._jsCallFuncCallbacks={},r(this,Tn,{},"f"),this.events.on(e.Events.AppPaused,(()=>{if(this.results.length>0){let e=this.results;this.results=[];try{this.sendLogData(e)}catch(e){}}})),this.sendLogTimer?clearInterval(this.sendLogTimer):this.sendLogTimer=setInterval((()=>{if(this.results.length>0){let e=this.results;this.results=[];try{this.sendLogData(e)}catch(e){}}}),5e3)}static getInstance(){return Yn.instance||(Yn.instance=new Yn),Yn.instance}set accessTk(e){this._accessTk=e}set jsAccessTk(e){this._jsAccessTk=e}sendLogData(e){try{const t=e.map((e=>({action:e.action,error:e.error})));Qn.execute(ai,"post",{appId:window.APP_ID,data:JSON.stringify(t)},(e=>{})),window.zmpSentry&&window.zmpSentry.captureMessage("Result from native",{extra:{data:e}})}catch(e){}}onJSCall(e,t){try{this.debug("onJSCall",e,t);const i=Gi(t);if(this._jsCallFuncCallbacks[e]){const t=this._jsCallFuncCallbacks[e].callback,n=this._jsCallFuncCallbacks[e].timeout;if(t){try{t.call(this,i)}catch(e){console.error("Call callback error",e)}n&&clearTimeout(n),this._jsCallFuncCallbacks[e]=null,delete this._jsCallFuncCallbacks[e]}}this.results.push({action:i.action,error:i.error_code,message:i.error_message})}catch(e){console.log("onJSCall","error",e)}}onMultiJSCall(e,t){try{this.debug("onMultiJSCall",e,t);const i=Gi(t);if(this._jsCallFuncCallbacks[e]){const t=this._jsCallFuncCallbacks[e].callback,n=this._jsCallFuncCallbacks[e].timeout;if(t){try{t.call(this,i)}catch(e){console.error("Call callback error",e)}n&&clearTimeout(n)}}this.results.push({action:i.action,error:i.error_code,message:i.error_message})}catch(e){console.log("onMultiJSCall","error",e)}}nativeEventHandler(e,t,i){this.debug(`eventId: ${e}, eventName: ${t}, eventData: ${i}`);const n=Zi(i);this.debug(n);const o=this.handleEventData(t,n);this.events.emit(t,e,o)}handleEventData(t,i){try{switch(t){case e.Events.OpenApp:const{url:t}=i,n=new URL(t),o=n.pathname.split(`/zapps/${Zt}`)[1];return{path:`${o||"/"}${n.search}`};default:return i}}catch(e){return i}}defaultCallback(e){null!=e&&(e=Gi(e))}callNative(e,t,i){return this.debug(e.name,t),new Promise(((r,a)=>{const s=t=>n(this,void 0,void 0,(function*(){var n,o,s,c,l,d,u,h;try{if(Jt.isUndefined(t)||Jt.isNull(t))return a(new Error("Native callback is null"));if(0!==t.error_code){let i=new Ci(t.error_code,t.error_message);const r=Ji();if(e===yi.JUMP_LOGIN)i=new Ci(di,`Can not get auth code: ${t.error_message}`);else if(this.isJumped||e.skip_jump){if("permission required!"===String(i.message).toLowerCase()||"no permission!"===String(i.message).toLowerCase())i=new Ci(mi.FORBIDDEN.code,mi.FORBIDDEN.message);else if(_i[r][t.error_code])i=new Ci(_i[r][t.error_code].code,_i[r][t.error_code].message);else if(null===(o=null===(n=e.error_list)||void 0===n?void 0:n[r])||void 0===o?void 0:o[String(t.error_code)]){let n=e.error_list[r][String(t.error_code)].map_to.message;(null===(l=null===(c=null===(s=e.error_list)||void 0===s?void 0:s[r])||void 0===c?void 0:c[String(t.error_code)])||void 0===l?void 0:l.need_more_detail)&&(n=`${null===(h=null===(u=null===(d=e.error_list)||void 0===d?void 0:d[r])||void 0===u?void 0:u[String(t.error_code)])||void 0===h?void 0:h.map_to.message}: ${t.error_message}`),i=new Ci(e.error_list[r][String(t.error_code)].map_to.code,n)}}else i=new Ci(mi.UNAUTHORIZED.code,mi.UNAUTHORIZED.message);return a(i)}if(null==i?void 0:i.successCallback){const e=yield i.successCallback(t.data);return r(e)}r(t.data||{})}catch(e){return a(e)}})),c=Wi().isIOS,l=(e=>{var t;const i=zi(),n=(null===(t=null==e?void 0:e.version_live)||void 0===t?void 0:t.iOS)||0;return!!(Array.isArray(window.ignoreCheckSupport)&&window.ignoreCheckSupport.length>0&&window.ignoreCheckSupport.includes(e.name))||i>=n})(e);if(c&&!l){const e=new Ci(-5,"Client isn't support this action");return a(e)}(null==i?void 0:i.delay)?setTimeout((()=>{o(this,On,"m",bn).call(this,e,t,s,null==i?void 0:i.isMultiCallback,null==i?void 0:i.nRetry,null==i?void 0:i.haveTimeout)}),i.delay):o(this,On,"m",bn).call(this,e,t,s,null==i?void 0:i.isMultiCallback,null==i?void 0:i.nRetry,null==i?void 0:i.haveTimeout)}))}}An=new WeakMap,Tn=new WeakMap,On=new WeakSet,bn=function e(t,i,n,r=!1,a=3,s=!0){try{const c=t.name,l=((e="")=>`${e.normalize("NFD").replace(Di,"").replace(Bi,"d").replace(ji,"").toLowerCase()}_${Math.random().toString(36).substr(2,4)}`)(c);if(!this._device.isMobile||Jt.isEmpty(c))return this.onJSCall(l,{error_code:-13,error_message:"params invalid!",data:{device:this._device.isMobile,jsToken:this._jsAccessTk,access_token:this._accessTk},action:c}),!1;null==i&&(i={}),n||(n=this.defaultCallback);const d={error_code:-14,error_message:"Request Timeout!",data:{},action:c};this._jsCallFuncCallbacks[l]={timeout:s&&t.have_callback&&setTimeout((()=>{this.onJSCall(l,d)}),8e3),callback:n};try{return i=Hi(i),r?this._device.isIOS?ZaloJavaScriptInterface.jsCall(this._jsAccessTk,c,this._accessTk,i,window.onMultiJSCall(l)):ZaloJavaScriptInterface.jsCall(this._jsAccessTk,c,this._accessTk,i,`window.onMultiJSCall('${l}')`):this._device.isIOS?ZaloJavaScriptInterface.jsCall(this._jsAccessTk,c,this._accessTk,i,window.onJSCall(l)):ZaloJavaScriptInterface.jsCall(this._jsAccessTk,c,this._accessTk,i,`window.onJSCall('${l}')`)}catch(s){if(!(a-- >0)){const e={error_code:-5,error_message:"Not ready!",data:{userAgent:this._userAgent,options:i,jsToken:this._jsAccessTk,access_token:this._accessTk},action:c,js_error:s};return this.onJSCall(l,e),!1}setTimeout((()=>{o(this,On,"m",e).call(this,t,i,n,r,a)}),500)}}catch(e){console.log("jsCall","error",e)}return!1};class Xn{constructor(e){wn.set(this,void 0),Nn.set(this,void 0),Cn.set(this,void 0),r(this,Nn,{keys:new Set,currentSize:0,limitSize:si},"f"),r(this,wn,e,"f"),r(this,Cn,Yn.getInstance(),"f")}get(e){return n(this,void 0,void 0,(function*(){return yield o(this,Cn,"f").callNative(yi.ZBROWSER_MPDS,{mpds_action:"mpds.get",mpds_data:{keys:e},appId:o(this,wn,"f")},{isMultiCallback:!1}).then((e=>{let t=new Map;return e&&e.mpds_data&&e.mpds_data.map&&(t=new Map(Object.entries(e.mpds_data.map))),t}))}))}set(e){return n(this,void 0,void 0,(function*(){return{errorKeys:yield o(this,Cn,"f").callNative(yi.ZBROWSER_MPDS,{mpds_action:"mpds.set",mpds_data:{map:e},appId:o(this,wn,"f")},{isMultiCallback:!1}).then((e=>{let t=[];return e&&e.mpds_data&&e.mpds_data.error_keys&&(t=e.mpds_data.error_keys),t}))}}))}getInfo(){return n(this,void 0,void 0,(function*(){const e=yield o(this,Cn,"f").callNative(yi.ZBROWSER_MPDS,{mpds_action:"mpds.get.size",mpds_data:{},appId:o(this,wn,"f")},{isMultiCallback:!1}).then((e=>{let t=0;return e&&e.mpds_data&&e.mpds_data.size&&(t=e.mpds_data.size),t}));return{currentSize:Jt.isNumber(e)?Number(e/1024):0,limitSize:Number(5120)}}))}remove(e){return n(this,void 0,void 0,(function*(){return{errorKeys:yield o(this,Cn,"f").callNative(yi.ZBROWSER_MPDS,{mpds_action:"mpds.remove.key",mpds_data:{keys:e},appId:o(this,wn,"f")},{isMultiCallback:!1}).then((e=>{let t=[];return e&&e.mpds_data&&e.mpds_data.error_keys&&(t=e.mpds_data.error_keys),t}))}}))}clear(){return n(this,void 0,void 0,(function*(){yield o(this,Cn,"f").callNative(yi.ZBROWSER_MPDS,{mpds_action:"mpds.clear.appData",mpds_data:{},appId:o(this,wn,"f")})}))}}wn=new WeakMap,Nn=new WeakMap,Cn=new WeakMap;class eo{getDataFromStorage(e){return n(this,void 0,void 0,(function*(){const t=this.getInstance(),i=yield t.get(e),n={};return i.forEach(((e,t)=>{n[t]=Zi(e)})),n}))}putDataToStorage(e){return n(this,void 0,void 0,(function*(){const t=this.getInstance(),i={};return Object.entries(e).forEach((([e,t])=>{Jt.isUndefined(t)||Jt.isNull(t)||(i[e]=Vi(t))})),yield t.set(i)}))}removeDataFromStorage(e){return n(this,void 0,void 0,(function*(){const t=this.getInstance();return yield t.remove(e)}))}clearStorage(){return n(this,void 0,void 0,(function*(){const e=this.getInstance();yield e.clear()}))}getStorageInfo(){return n(this,void 0,void 0,(function*(){const e=this.getInstance();return yield e.getInfo()}))}}class to extends eo{constructor(e){super(),In.set(this,void 0),r(this,In,e,"f")}getInstance(){return new mn(o(this,In,"f"))}}In=new WeakMap;class io extends eo{constructor(e){super(),Pn.set(this,void 0),r(this,Pn,e,"f")}getInstance(){return new Xn(o(this,Pn,"f"))}}Pn=new WeakMap;class no{static setStorage(e){return n(this,void 0,void 0,(function*(){let t=new to(this.getAppId());return $i()&&(t=new io(this.getAppId())),yield t.putDataToStorage(e.data)}))}static getStorage(e){return n(this,void 0,void 0,(function*(){let t=new to(this.getAppId());$i()&&(t=new io(this.getAppId()));return yield t.getDataFromStorage(e.keys)}))}static getStorageInfo(e){return n(this,void 0,void 0,(function*(){let e=new to(this.getAppId());return $i()&&(e=new io(this.getAppId())),yield e.getStorageInfo()}))}static removeStorage(e){return n(this,void 0,void 0,(function*(){let t=new to(this.getAppId());return $i()&&(t=new io(this.getAppId())),yield t.removeDataFromStorage(e.keys)}))}static clearStorage(e={}){return n(this,void 0,void 0,(function*(){let e=new to(this.getAppId());$i()&&(e=new io(this.getAppId())),yield e.clearStorage()}))}}class oo{static getUserInfo(e){return n(this,void 0,void 0,(function*(){const t=yield this.getAccessToken();let i="id,name,picture";(null==e?void 0:e.avatarType)&&(i=`${i}.type(${null==e?void 0:e.avatarType})`);return{userInfo:yield fetch(`${ti}?fields=${i}`,{headers:{access_token:t||""}}).then((e=>n(this,void 0,void 0,(function*(){const t=yield e.json(),i={id:t.id,name:t.name,birthday:"",gender:"",avatar:t.picture&&t.picture.data&&t.picture.data.url};return console.warn("'birthday' and 'gender' are deprecated"),i}))))}}))}static getPhoneNumber(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.MP_GET_NUMBER,{},{isMultiCallback:!0,successCallback:e=>{const t={number:e};return Promise.resolve(t)},delay:this.isIOS?400:0})}))}}class ro{static closeApp(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.WINDOW_CLOSE,{})}))}static openMiniApp(e){return n(this,void 0,void 0,(function*(){const t=null==e?void 0:e.appId,i=(null==e?void 0:e.params)||{},n=Object.entries(i).map((function([e,t]){return[e,t].join("=")})).join("&");let o;try{o=yield Yi(t,0)}catch(e){}const r={appId:t};o&&(r.appName=o.name,r.appAvtUrl=o.logoUrl),yield this.getJSBridge().callNative(yi.OPEN_MP,{mpUrl:`https://h5.zdn.vn/zapps/${t}/${n.length>0?"?"+n:""}`,mpInfo:r})}))}static openWebview(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.OPEN_INAPP,{url:e})}))}static closeLoading(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.MP_CLOSE_LOADINGVIEW,{at:(new Date).getTime(),when:e,url:location.href})}))}}class ao{static getLocation(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.GET_LOCATION,{silent_request:!1,permission_description:"Cho phép Zalo truy cập vào vị trí của thiết bị này?"},{isMultiCallback:!0,haveTimeout:!1,successCallback:e=>{const t={latitude:e.latitude,longitude:e.longitude,timestamp:e.timestamp,provider:e.provider};return Promise.resolve(t)},delay:this.isIOS?400:0})}))}static sendLocation(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.QUERY_LOCATION_HIDE,{title:e.title,touserid:e.toUserId,zapp:this.getZAppId()})}))}}class so{static requestCameraPermission(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.REQUEST_PERMISSION_CAMERA,{},{successCallback:()=>Promise.resolve({userAllow:!0,message:"User Allow"})})}))}static saveImageToPhotosAlbum(e){return n(this,void 0,void 0,(function*(){let t={};return Jt.isEmpty(e.imageBase64Data)?Jt.isEmpty(e.imageUrl)||(t={imageUrl:e.imageUrl}):t={imageBase64Data:e.imageBase64Data},yield this.getJSBridge().callNative(yi.SAVE_IMAGE_GALLERY,Object.assign({},t))}))}}class co{static viewOAQr(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.VIEW_MYQR,{dpn:e.displayName,uid:e.id,zapp:this.getZAppId()},{haveTimeout:!1})}))}static openProfile(t){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.OPEN_PROFILE,{uId:t.id,type:e.ProfileType[t.type],zapp:this.getZAppId(),sourceId:t.sourceId,sourceIndex:t.sourceIndex})}))}static openChat(t){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.OPEN_CHAT,{uId:t.id,type:e.ChatType[t.type],msg:t.message||"",zapp:this.getZAppId(),sourceId:t.sourceId,sourceIndex:t.sourceIndex})}))}static openPostFeed(t){return n(this,void 0,void 0,(function*(){let i={};switch(t.type){case"image":i={photoUrl:t.data.imageUrl};break;case"link":i={link:t.data.link,title:t.data.title,thumb:t.data.thumb,description:t.data.description};break;case"profile":i={avt:t.data.avatar,uid:t.data.id,dpn:t.data.displayName}}return yield this.getJSBridge().callNative(yi.OPEN_POSTFEED,Object.assign(Object.assign({type:e.PostFeedType[t.type]},i),{zapp:this.getZAppId()})).then((e=>({status:e.status,shareType:e.share_type,numberOfUser:e.uid_to_size})))}))}static followOA(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.FOLLOW_OA,{uid:e.id,showDialogConfirm:!0,zapp:this.getZAppId()},{haveTimeout:!1})}))}static unfollowOA(e){return n(this,void 0,void 0,(function*(){yield this.getJSBridge().callNative(yi.UNFOLLOW_OA,{uid:e.id,zapp:this.getZAppId()},{haveTimeout:!1})}))}static openShareSheet(t){return n(this,void 0,void 0,(function*(){let i={};switch(t.type){case"image":let e=[];Array.isArray(t.data.imageUrls)&&t.data.imageUrls.length>0?e=t.data.imageUrls:e.push(t.data.imageUrl),i={photoUrls:e,photoUrl:t.data.imageUrl,caption:t.data.caption};break;case"gif":i={photoUrl:t.data.imageUrl,gifUrl:t.data.gifUrl,width:t.data.width,height:t.data.height};break;case"video":i={videoThumb:t.data.videoThumb,videoUrl:t.data.videoUrl,width:t.data.width,height:t.data.height};break;case"link":i={link:t.data.link,chatOnly:t.data.chatOnly?1:0};break;case"oa":i={uid:t.data.id};break;case"zmp":const n=yield this.getAccessToken(),o=yield qi(this.getAppId(),n||"",t.data.title||"",t.data.description||"",t.data.thumbnail||"",t.data.path);window.forceShareZMP?i={data:{ZInstantAPIInfo:{url:`${o.zinstantApi}`,zinstantdata_id:`templateId=${o.ztemplateId}&appId=${this.getAppId()}&shareId=${o.shareId}`},previewMsgText:{msg:{en:"Zalo Mini Program",vi:"Chương trình nhỏ"}},enableReactions:1}}:(i={link:o.shareableLink,chatOnly:t.data.chatOnly?1:0},t.type="link")}return yield this.getJSBridge().callNative(yi.OPEN_SHARESHEET,Object.assign(Object.assign({type:e.ShareSheetType[t.type]},i),{zapp:this.getZAppId()}),{haveTimeout:!1}).then((e=>({status:e.status,shareType:e.share_type,numberOfUser:e.uid_to_size})))}))}static createShortcut(e,t,i){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.CREATE_SHORTCUT,{url:e,title:t,iconUrl:i})}))}static openProfilePicker(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.MP_OPEN_PROFILE_PICKER,{maxProfile:e},{isMultiCallback:!0,successCallback:e=>{if(Array.isArray(e))return Promise.resolve(e.map((e=>e.id)))}})}))}static getActionsSupported(t){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.GET_SUPPORTED_ACTIONS,{},{isMultiCallback:!1,successCallback:t=>{const i=Ji();if(Array.isArray(t.actions)&&t.actions.length>0){const e=Object.keys(yi).filter((e=>yi[e].skip_jump)),i={actions:[...t.actions,...e]};return Promise.resolve(i)}if(i===e.PlatformType.iOS){const e={actions:Ei};return Promise.resolve(e)}}})}))}static openMediaPicker(t,i,o,r,a,s){return n(this,void 0,void 0,(function*(){const n={type:0,url:i,maxSize:o||1048576};return yield this.getJSBridge().callNative(yi.PICK_MEDIA,{media_type:e.MediaPickerType[t],edit_view:Object.assign(Object.assign({},{enable:1,aspect_ratio:"1:1"}),r),silent_request:a,upload:n,max_select_items:s},{isMultiCallback:!0,successCallback:e=>{const t={data:null==e?void 0:e.result_content};return Promise.resolve(t)}})}))}static openOutApp(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.OPEN_OUTAPP,{url:e})}))}}class lo{static getRouteParams(){let e={};const t=window.location.href;try{let i=new URL(t).searchParams.toString();i&&(e=Ri.getParamsAsObject(i))}catch(e){throw new Error("Url không hợp lệ")}return e}static sendDataToPreviousMiniApp(e){return n(this,void 0,void 0,(function*(){return yield this.getJSBridge().callNative(yi.WEBVIEW_SET_RESULT,{result:Vi(e.data)})}))}static onCallbackData(t){return n(this,void 0,void 0,(function*(){yield this.events.on(e.Events.OnDataCallback,(e=>{t({data:e})}))}))}}class uo{constructor(){var e,t,i,n,a,s,c,l,d,u,h,p,v,f,g,m,y;kn.set(this,Vt),Rn.set(this,Zt),Dn.set(this,qt),Bn.set(this,void 0),jn.set(this,void 0),Un.set(this,void 0),Ln.set(this,null),Mn.set(this,{timer:{getToken:0}}),Wn.set(this,void 0),xn.set(this,void 0),zn.set(this,void 0),Jn.set(this,void 0),this.events=en.getInstance(),this.isIOS=Wi().isIOS,Fn.set(this,void 0),this.getActionBarConfig=()=>o(this,Fn,"f"),this.setActionBarConfig=e=>{r(this,Fn,e(o(this,Fn,"f")),"f")},this.getVersion=cn.getVersion,this.getSystemInfo=cn.getSystemInfo,this.setNavigationBarTitle=ln.setNavigationBarTitle,this.setNavigationBarColor=ln.setNavigationBarColor,this.setNavigationBarLeftButton=ln.setNavigationBarLeftButton,this.setBackgroundColor=dn.setBackgroundColor,this.setDeviceOrientation=pn.setDeviceOrientation,this.setStorage=no.setStorage,this.getStorage=no.getStorage,this.getStorageInfo=no.getStorageInfo,this.removeStorage=no.removeStorage,this.clearStorage=no.clearStorage,this.getUserInfo=oo.getUserInfo,this.getNetworkType=pn.getNetworkType,this.onNetworkStatusChange=pn.onNetworkStatusChange,this.startBeaconDiscovery=pn.startBeaconDiscovery,this.stopBeaconDiscovery=pn.stopBeaconDiscovery,this.getBeacons=pn.getBeacons,this.closeApp=ro.closeApp,this.getLocation=ao.getLocation,this.stopBluetoothDevicesDiscovery=pn.stopBluetoothDevicesDiscovery,this.startBluetoothDevicesDiscovery=pn.stopBluetoothDevicesDiscovery,this.openBluetoothAdapter=pn.openBluetoothAdapter,this.onBluetoothDeviceFound=pn.onBluetoothDeviceFound,this.onBluetoothAdapterStateChange=pn.onBluetoothAdapterStateChange,this.getConnectedBluetoothDevices=pn.getConnectedBluetoothDevices,this.getBluetoothDevices=pn.getBluetoothDevices,this.getBluetoothAdapterState=pn.getBluetoothAdapterState,this.closeBluetoothAdapter=pn.closeBluetoothAdapter,this.scanQRCode=pn.scanQRCode,this.openProfile=co.openProfile,this.openChat=co.openChat,this.openPostFeed=co.openPostFeed,this.followOA=co.followOA,this.unFollowOA=co.unfollowOA,this.openShareSheet=co.openShareSheet,this.requestCameraPermission=so.requestCameraPermission,this.createShortcut=co.createShortcut,this.openBioAuthentication=pn.openBioAuthentication,this.checkStateBioAuthentication=pn.checkStateBioAuthentication,this.sendLocation=ao.sendLocation,this.showToast=pn.showToast,this.hideKeyboard=pn.hideKeyboard,this.openPhone=pn.openPhone,this.openSMS=pn.openSMS,this.viewOAQr=co.viewOAQr,this.keepScreen=pn.keepScreen,this.saveImageToPhotosAlbum=so.saveImageToPhotosAlbum,this.openMiniApp=ro.openMiniApp,this.vibrate=pn.vibrate,this.openWebview=ro.openWebview,this.getRouteParams=lo.getRouteParams,this.getAppInfo=cn.getAppInfo,this.sendDataToPreviousMiniApp=lo.sendDataToPreviousMiniApp,this.onCallbackData=lo.onCallbackData,this.getPhoneNumber=oo.getPhoneNumber,this.openProfilePicker=co.openProfilePicker,Kn.set(this,co.getActionsSupported),this.connectWifi=pn.connectWifi,this.openMediaPicker=co.openMediaPicker,this.openOutApp=co.openOutApp,this.closeLoading=ro.closeLoading,this.openAppStore=pn.openAppStore,r(this,Bn,null,"f"),r(this,jn,null,"f"),r(this,Un,null,"f"),this.isShowNavBar=!0,r(this,xn,0,"f"),r(this,zn,0,"f"),r(this,Jn,"","f"),r(this,Wn,Yn.getInstance(),"f");const _="home"===(null===(t=null===(e=o(this,Dn,"f"))||void 0===e?void 0:e.app)||void 0===t?void 0:t.leftButton)||"both"===(null===(n=null===(i=o(this,Dn,"f"))||void 0===i?void 0:i.app)||void 0===n?void 0:n.leftButton)?Ti:bi,S=new URL(location.href),E=Jt.isString(null===(s=null===(a=o(this,Dn,"f"))||void 0===a?void 0:a.app)||void 0===s?void 0:s.headerColor)&&(null===(d=null===(l=null===(c=o(this,Dn,"f"))||void 0===c?void 0:c.app)||void 0===l?void 0:l.headerColor)||void 0===d?void 0:d.length)>0?5:6,O="none"===(null===(h=null===(u=o(this,Dn,"f"))||void 0===u?void 0:u.app)||void 0===h?void 0:h.leftButton)||"home"===(null===(v=null===(p=o(this,Dn,"f"))||void 0===p?void 0:p.app)||void 0===v?void 0:v.leftButton)?Ai:Oi;r(this,Fn,{actionbarType:E,buttonType:O,dataConfig:{backgroundColor:(null===(g=null===(f=o(this,Dn,"f"))||void 0===f?void 0:f.app)||void 0===g?void 0:g.headerColor)||"",textColor:(null===(y=null===(m=o(this,Dn,"f"))||void 0===m?void 0:m.app)||void 0===y?void 0:y.textColor)||"",viewInLeftType:O,confirmToExit:1},homeConfig:{enable:_,url:`https://h5.zdn.vn/zapps/${this.getAppId()}/${S.search}`}},"f")}static getInstance(){return uo.instance||(uo.instance=new uo),uo.instance}getLoginStatus(){return Jt.isString(o(this,Un,"f"))&&o(this,Un,"f").length>0}getAppId(){return o(this,Rn,"f")}getZAppId(){return o(this,kn,"f")}getDeviceId(){return o(this,Jn,"f")}getJSBridge(){return o(this,Wn,"f")}login(e){return n(this,void 0,void 0,(function*(){const e=yield o(this,Wn,"f").jump(),t=e.find((e=>e.name===ei));t&&r(this,Jn,t.value,"f");const i=e.find((e=>e.name===Qt)),n=e.find((e=>e.name===Xt));if(!Jt.isUndefined(i)&&!Jt.isNull(i)&&Jt.isString(i.value)){if(r(this,Bn,i.value,"f"),Jt.isUndefined(n)||Jt.isNull(n)||!Jt.isString(n.value)?yield this.loginZaloV3():(r(this,jn,n.value,"f"),yield this.loginZaloV4()),!o(this,Un,"f"))throw ki.loginFailed("Invalid authorization code");return o(this,Un,"f")}throw ki.loginFailed("Zalo app has not been activated")}))}loginZaloV3(){return n(this,void 0,void 0,(function*(){return yield fetch(`${ni}?app_id=${o(this,kn,"f")}&redirect_uri=https://h5.zdn.vn/zapps/${o(this,Rn,"f")}/&code=${o(this,Bn,"f")}&isSDK=true`).then((e=>n(this,void 0,void 0,(function*(){let t=yield e.json();if(t.access_token){r(this,Un,t.access_token,"f");const e=1e3*parseInt(t.expires_in);return r(this,zn,e,"f"),r(this,xn,(new Date).getTime(),"f"),o(this,Wn,"f").accessTk=o(this,Un,"f")||"",window.ZJSBridge.setZAccSession&&window.ZJSBridge.setZAccSession(o(this,Un,"f")||""),o(this,Un,"f")}return null}))))}))}loginZaloV4(){return n(this,void 0,void 0,(function*(){const e=new URLSearchParams;e.append("app_id",o(this,Rn,"f")),e.append("code",o(this,Bn,"f")||""),e.append("code_verifier",o(this,jn,"f")||""),Jt.isNull(o(this,Ln,"f"))?e.append("grant_type","authorization_code"):(e.append("grant_type","refresh_token"),e.append("refresh_token",o(this,Ln,"f")||""));return yield fetch(ii,Object.assign({method:"POST",body:e},{headers:{"Content-Type":"application/x-www-form-urlencoded"}})).then((e=>n(this,void 0,void 0,(function*(){const t=yield e.json();if(t.refresh_token&&r(this,Ln,t.refresh_token,"f"),t.access_token){r(this,Un,t.access_token,"f");const e=1e3*parseInt(t.expires_in);return r(this,zn,e,"f"),r(this,xn,(new Date).getTime(),"f"),o(this,Wn,"f").accessTk=o(this,Un,"f")||"",window.ZJSBridge.setZAccSession&&window.ZJSBridge.setZAccSession(o(this,Un,"f")||""),o(this,Un,"f")}return null}))))}))}getAccessToken(e){return n(this,void 0,void 0,(function*(){const e=(new Date).getTime()-o(this,xn,"f");if(!o(this,Un,"f"))throw ki.loginRequired();return e<o(this,zn,"f")?o(this,Un,"f"):yield this.login()}))}}kn=new WeakMap,Rn=new WeakMap,Dn=new WeakMap,Bn=new WeakMap,jn=new WeakMap,Un=new WeakMap,Ln=new WeakMap,Mn=new WeakMap,Wn=new WeakMap,xn=new WeakMap,zn=new WeakMap,Jn=new WeakMap,Fn=new WeakMap,Kn=new WeakMap;class ho{constructor(){Gn.set(this,Vt),Hn.set(this,qt),$n.set(this,"DEFAULT ZOAUTH"),Vn.set(this,"DEFAULT ACCESS TOKEN"),Zn.set(this,{timer:{getToken:0}}),qn.set(this,!1),this.getLoginStatus=()=>o(this,qn,"f"),this.getAppId=()=>o(this,Gn,"f"),this.getDeviceId=()=>"",this.login=()=>(r(this,qn,!0,"f"),Promise.resolve(o(this,$n,"f"))),this.getAccessToken=()=>Promise.resolve(o(this,Vn,"f")),this.getVersion=cn.getVersion,this.getSystemInfo=cn.getSystemInfo,this.setNavigationBarTitle=()=>Promise.resolve(),this.setNavigationBarColor=()=>Promise.resolve(),this.setBackgroundColor=()=>Promise.resolve(),this.setNavigationBarLeftButton=()=>Promise.resolve(),this.setDeviceOrientation=()=>Promise.resolve(),this.setStorage=e=>n(this,void 0,void 0,(function*(){const t=new to(this.getAppId());return yield t.putDataToStorage(e.data),{errorKeys:[]}})),this.getStorage=e=>n(this,void 0,void 0,(function*(){const t=new to(this.getAppId());return yield t.getDataFromStorage(e.keys)})),this.getStorageInfo=e=>n(this,void 0,void 0,(function*(){const e=new to(this.getAppId());return yield e.getStorageInfo()})),this.removeStorage=e=>n(this,void 0,void 0,(function*(){const t=new to(this.getAppId());return yield t.removeDataFromStorage(e.keys)})),this.clearStorage=e=>n(this,void 0,void 0,(function*(){const e=new to(this.getAppId());return yield e.clearStorage()})),this.getUserInfo=()=>(console.warn("birthday and gender are deprecated"),Promise.resolve({userInfo:{id:"3368637342326461234",name:"User Name",avatar:"https://h5.zdn.vn/static/images/avatar.png"}})),this.getNetworkType=()=>{let t;switch((navigator.connection||navigator.mozConnection||navigator.webkitConnection).effectiveType){case"none":t=e.NetworkType.none;break;case"4g":t=e.NetworkType.wifi;break;case"3g":case"2g":t=e.NetworkType.cellular;break;default:t=e.NetworkType.unknown}const i={networkType:t};return Promise.resolve(i)},this.onNetworkStatusChange=t=>{const i=navigator.connection||navigator.mozConnection||navigator.webkitConnection,n=i.effectiveType;return i.addEventListener("change",(function(){let i;switch(n){case"none":i=e.NetworkType.none;break;case"4g":i=e.NetworkType.wifi;break;case"3g":case"2g":i=e.NetworkType.cellular;break;default:i=e.NetworkType.unknown}t({isConnected:!0,networkType:i})})),Promise.resolve()},this.startBeaconDiscovery=e=>Promise.resolve(!0),this.stopBeaconDiscovery=e=>Promise.resolve(!0),this.getBeacons=e=>Promise.resolve({beacons:[]}),this.closeApp=()=>Promise.resolve(),this.getLocation=()=>Promise.resolve({longitude:"105.788026",latitude:"21.0258773",timestamp:(new Date).getTime().toString(),provider:"fused"}),this.onBackButtonClick=()=>Promise.resolve(),this.stopBluetoothDevicesDiscovery=()=>Promise.resolve(),this.startBluetoothDevicesDiscovery=()=>Promise.resolve(),this.openBluetoothAdapter=()=>Promise.resolve(),this.onBluetoothDeviceFound=()=>Promise.resolve(),this.onBluetoothAdapterStateChange=()=>Promise.resolve(),this.getConnectedBluetoothDevices=()=>Promise.resolve(),this.getBluetoothDevices=()=>Promise.resolve(),this.getBluetoothAdapterState=()=>Promise.resolve(),this.closeBluetoothAdapter=()=>Promise.resolve(),this.scanQRCode=()=>Promise.resolve({content:"132"}),this.openProfile=()=>Promise.resolve(),this.openChat=()=>Promise.resolve(),this.openPostFeed=()=>Promise.resolve({status:1,shareType:0,numberOfUser:0}),this.followOA=()=>Promise.resolve(),this.unFollowOA=()=>Promise.resolve(),this.openShareSheet=()=>Promise.resolve({status:2,shareType:0,numberOfUser:0}),this.requestCameraPermission=()=>Promise.resolve({userAllow:!0,message:"Success"}),this.createShortcut=()=>Promise.resolve(),this.openBioAuthentication=()=>Promise.resolve({code:0,message:"OK",data:{domain:"",code:0,message:"",payToken:""}}),this.checkStateBioAuthentication=()=>Promise.resolve({bioState:""}),this.sendLocation=()=>Promise.resolve(),this.showToast=()=>Promise.resolve(),this.hideKeyboard=()=>Promise.resolve(),this.openPhone=()=>Promise.resolve(),this.openSMS=()=>Promise.resolve(),this.viewOAQr=()=>Promise.resolve(),this.keepScreen=()=>Promise.resolve(),this.saveImageToPhotosAlbum=()=>Promise.resolve(),this.openMiniApp=e=>Promise.resolve(),this.vibrate=()=>Promise.resolve(),this.openWebview=e=>(location.replace(e),Promise.resolve()),this.getRouteParams=lo.getRouteParams,this.getAppInfo=()=>Promise.resolve({description:"",name:"",version:"",appUrl:"",qrCodeUrl:""}),this.sendDataToPreviousMiniApp=e=>Promise.resolve(),this.onCallbackData=e=>(e({data:""}),Promise.resolve()),this.getPhoneNumber=()=>(console.warn("This api only works on zalo app"),Promise.resolve({number:""})),this.openProfilePicker=()=>(console.warn("This api only works on zalo app"),Promise.resolve([])),this.connectWifi=()=>(console.warn("This api only works on zalo app"),Promise.resolve()),this.openOutApp=e=>(location.href=e,Promise.resolve()),this.closeLoading=e=>Promise.resolve(),this.openAppStore=e=>Promise.resolve()}on(e,t,i){throw new Error("Method not implemented.")}once(e,t,i){throw new Error("Method not implemented.")}off(e,t,i,n){throw new Error("Method not implemented.")}removeAllListeners(e){throw new Error("Method not implemented.")}openMediaPicker(e,t,i,n,o,r){return console.warn("This api only works on zalo app"),Promise.resolve({data:""})}}Gn=new WeakMap,Hn=new WeakMap,$n=new WeakMap,Vn=new WeakMap,Zn=new WeakMap,qn=new WeakMap;const po=Symbol("required"),vo=Symbol("checkType"),fo=(e,t)=>(i,n,o)=>{let r=Reflect.getOwnMetadata(po,i,n)||[];r.push({parameterIndex:o,fields:e,option:t}),Reflect.defineMetadata(po,r,i,n)},go=(e,t,i)=>(n,o,r)=>{let a=Reflect.getOwnMetadata(vo,n,o)||[];a.push({parameterIndex:r,type:e,properties:t,defaultValue:i}),Reflect.defineMetadata(vo,a,n,o)};function mo(e,t){Reflect.getMetadataKeys(e).map((i=>{const n=Reflect.getMetadata(i,e);Reflect.defineMetadata(i,n,t)}))}const yo=(e,t={})=>i=>{var n;let o=Object.getOwnPropertyDescriptors(i.prototype);if(t.deep){let e=Object.getPrototypeOf(i);for(;e.prototype;){const t=Object.getOwnPropertyDescriptors(e.prototype);o=Object.assign(Object.assign({},t),o),e=Object.getPrototypeOf(e)}}for(const[r,a]of Object.entries(o)){const o="function"==typeof a.value&&"constructor"!=r;if(null===(n=t.exclude)||void 0===n?void 0:n.includes(r))continue;if(t.excludePrefix&&r.startsWith(t.excludePrefix))continue;if(!o)continue;const s=a.value;e(i,r,a),s!=a.value&&mo(s,a.value),Object.defineProperty(i.prototype,r,a)}},_o=(e,t,i)=>{const n=i.value,o=function(e){return e.toString().match(/\(.*?\)/)[0].replace(/[()]/gi,"").replace(/\s/gi,"").split(",")}(n);return i.value=function(...i){try{const r=Reflect.getOwnMetadata(po,e.prototype,t),a=Reflect.getOwnMetadata(vo,e.prototype,t);a&&a.forEach((e=>{const{parameterIndex:t,type:n,properties:r,defaultValue:a}=e;let s=i[t],c=o[t];const l=typeof s;if(!Jt.isUndefined(s)){if(!Fi(s,n))throw ki.wrongTypeParam(c,n,Array.isArray(s)?"array":null===s?"null":l);"object"===n&&Object.entries(r).forEach((([e,n])=>{const o=e.split("?")[0],r=Jt.get(s,o);if(Jt.isUndefined(r)||Jt.isNull(r)){if(!e.includes("?"))throw ki.missingParam(e);Jt.get(s,o.split(".")[0])||!a||Jt.isUndefined(Jt.get(a,o))||Jt.set(i[t],o,Jt.get(a,o))}else if(Jt.isFunction(n)){const e=n(r);if(e&&e.error)throw ki.wrongTypeParam(`${c}.${o}`,e.errorMessage,typeof r)}}))}})),r&&r.forEach((e=>{const{parameterIndex:t,option:n,fields:o}=e,r=i[t],a=null==n?void 0:n.if,s=null==n?void 0:n.defaultValue;let c=!0;a&&(c=Object.keys(a).every((e=>Jt.get(r,e)===a[e]))),c&&o.forEach((e=>{const n=e=>{let n=!1;return Jt.isEmpty(Jt.get(r,e))&&(Jt.isUndefined(Jt.get(s,e))||Jt.set(i[t],e,Jt.get(s,e)),n=!0),n};if(Array.isArray(e)&&e.length>0&&e.every(n))throw ki.missingParam(e.join(" or "));if(Jt.isString(e)&&n(e))throw ki.missingParam(e)}))}));const s=n.call(this,...i);if(Jt.isPromise(s)){const{success:e,fail:n}=Array.isArray(i)&&i.length>0&&i[0];return new Promise(((i,o)=>{s.then((t=>{!Jt.isNull(e)&&Jt.isFunction(e)?e.call(null,t,this):i(s)})).catch((e=>{const i=Ii(e,t);!Jt.isNull(n)&&Jt.isFunction(n)?n.call(null,i,this):o(i)}))}))}return s}catch(e){throw Ii(e,t)}},i};var So,Eo,Oo,Ao,To;e.SDKCreator=class{constructor(){this.events=en.getInstance(),So.set(this,void 0),r(this,So,this.getServiceInstance(),"f"),this.events.addListener=(t,i,n)=>{const o=t;return this.events.addListener(e.Events[o],i,n)}}login(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").login(e)}))}getLoginStatus(){return o(this,So,"f").getLoginStatus()}getAccessToken(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getAccessToken(e)}))}getVersion(){return o(this,So,"f").getVersion()}getSystemInfo(){return o(this,So,"f").getSystemInfo()}setNavigationBarTitle(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").setNavigationBarTitle(e)}))}setNavigationBarColor(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").setNavigationBarColor(e)}))}setBackgroundColor(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").setBackgroundColor(e)}))}setNavigationBarLeftButton(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").setNavigationBarLeftButton(e.type)}))}setDeviceOrientation(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").setDeviceOrientation(e)}))}setStorage(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").setStorage(e)}))}getStorage(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getStorage(e)}))}getStorageInfo(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getStorageInfo(e)}))}removeStorage(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").removeStorage(e)}))}clearStorage(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").clearStorage(e)}))}getUserInfo(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getUserInfo(e)}))}getNetworkType(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getNetworkType(e)}))}onNetworkStatusChange(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").onNetworkStatusChange(e)}))}startBeaconDiscovery(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").startBeaconDiscovery(e)}))}stopBeaconDiscovery(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").stopBeaconDiscovery(e)}))}getBeacons(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getBeacons(e)}))}closeApp(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").closeApp(e)}))}getLocation(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getLocation(e)}))}stopBluetoothDevicesDiscovery(){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").stopBluetoothDevicesDiscovery()}))}startBluetoothDevicesDiscovery(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").startBluetoothDevicesDiscovery(e)}))}openBluetoothAdapter(){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").openBluetoothAdapter()}))}onBluetoothDeviceFound(){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").onBluetoothDeviceFound()}))}onBluetoothAdapterStateChange(){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").onBluetoothAdapterStateChange()}))}getConnectedBluetoothDevices(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getConnectedBluetoothDevices(e)}))}getBluetoothDevices(){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getBluetoothDevices()}))}getBluetoothAdapterState(){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getBluetoothAdapterState()}))}closeBluetoothAdapter(){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").closeBluetoothAdapter()}))}scanQRCode(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").scanQRCode(e)}))}openProfile(e){return n(this,void 0,void 0,(function*(){yield o(this,So,"f").openProfile(e)}))}openChat(e){return n(this,void 0,void 0,(function*(){yield o(this,So,"f").openChat(e)}))}openPostFeed(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").openPostFeed(e)}))}followOA(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").followOA(e)}))}unfollowOA(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").unFollowOA(e)}))}openShareSheet(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").openShareSheet(e)}))}requestCameraPermission(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").requestCameraPermission(e)}))}createShortcut(e){return n(this,void 0,void 0,(function*(){const t=yield Yi(Zt,0),i=Wi().isIOS,n=t.logoUrl||xi("og:image:url")||"",r=t.name||document.title,a=e.params?new URLSearchParams(e.params):new URLSearchParams;if(a.append("utm_source","zalo-shortcut"),a.append("utm_medium","default"),a.append("utm_campaign","default"),i){a.append("appId",Zt),a.append("appName",r),a.append("appIcon",n);const e=`https://mini.zalo.me/shortcut.html?${a.toString()}`;yield o(this,So,"f").openOutApp(encodeURI(e))}else yield o(this,So,"f").createShortcut(`https://zalo.me/app/link/zapps/${Zt}/?${a.toString()}`,r,n);return Pi()}))}openBioAuthentication(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").openBioAuthentication(e)}))}checkStateBioAuthentication(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").checkStateBioAuthentication(e)}))}sendLocation(e){return n(this,void 0,void 0,(function*(){yield o(this,So,"f").sendLocation(e)}))}showToast(e){return n(this,void 0,void 0,(function*(){yield o(this,So,"f").showToast(e)}))}hideKeyboard(e){return n(this,void 0,void 0,(function*(){yield o(this,So,"f").hideKeyboard(e)}))}openPhone(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").openPhone(e)}))}openSMS(e){return n(this,void 0,void 0,(function*(){yield o(this,So,"f").openSMS(e)}))}viewOAQr(e){return n(this,void 0,void 0,(function*(){yield o(this,So,"f").viewOAQr(e)}))}keepScreen(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").keepScreen(e)}))}saveImageToGallery(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").saveImageToPhotosAlbum(e)}))}saveImageToPhotosAlbum(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").saveImageToPhotosAlbum(e)}))}openMiniApp(e){return n(this,void 0,void 0,(function*(){if(!Jt.isEmpty(e.params)){const t=e.params||{};Object.keys(t).forEach((e=>{"object"==typeof t[e]&&(t[e]=JSON.stringify(t[e])),t[e]=""+encodeURIComponent(t[e])})),e.params=t}yield o(this,So,"f").openMiniApp(e)}))}vibrate(e){return n(this,void 0,void 0,(function*(){console.log(e),yield o(this,So,"f").vibrate(e)}))}openWebview(e){return n(this,void 0,void 0,(function*(){const t=new URL(e.url),i=t.searchParams.get("typeInapp");Jt.isEmpty(i)&&t.searchParams.set("typeInapp","1"),yield o(this,So,"f").openWebview(t.href)}))}getRouteParams(){return o(this,So,"f").getRouteParams()}getAppInfo(e){return o(this,So,"f").getAppInfo()}sendDataToPreviousMiniApp(e){return o(this,So,"f").sendDataToPreviousMiniApp(e)}onCallbackData(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").onCallbackData(e)}))}getPhoneNumber(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").getPhoneNumber()}))}openProfilePicker(e){return n(this,void 0,void 0,(function*(){const t=yield o(this,So,"f").openProfilePicker(e.maxProfile);let i;if(t.length>0)try{const e=yield this.getAccessToken(),n=yield fetch(oi,{method:"POST",headers:{"Content-Type":"application/json",access_token:e||""},body:JSON.stringify({fields:"id,name,picture",user_ids:t})}),o=yield n.json();if(0!==o.error||!o.data)throw new Error(o.message);i=t.map((e=>{var t,i,n,r,a,s,c,l,d,u,h;return{id:(null===(i=null===(t=o.data[e])||void 0===t?void 0:t.user_info)||void 0===i?void 0:i.user_id_by_app)||"",profile:{name:null===(r=null===(n=o.data[e])||void 0===n?void 0:n.user_info)||void 0===r?void 0:r.name,avatar:null===(l=null===(c=null===(s=null===(a=o.data[e])||void 0===a?void 0:a.user_info)||void 0===s?void 0:s.picture)||void 0===c?void 0:c.data)||void 0===l?void 0:l.url},code:0!==(null===(d=o.data[e])||void 0===d?void 0:d.error)?-1:0,message:`Get profile: ${Jt.isUndefined(null===(u=o.data[e])||void 0===u?void 0:u.message)?"Unknown error":null===(h=o.data[e])||void 0===h?void 0:h.message}`}}))}catch(e){i=t.map((t=>({id:t,profile:{name:"",avatar:""},code:-1,message:`Can't get profile: ${e.message}`})))}return{users:i||[]}}))}connectWifi(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").connectWifi(e)}))}openMediaPicker(e){var t,i,r;return n(this,void 0,void 0,(function*(){const n={};Jt.isUndefined(null===(t=e.editView)||void 0===t?void 0:t.enable)||(null===(i=e.editView)||void 0===i?void 0:i.enable)?n.enable=1:n.enable=0,n.aspect_ratio=null===(r=e.editView)||void 0===r?void 0:r.aspectRatio;const a=!0===e.silentRequest?1:0,s=e.maxSelectItem;return yield o(this,So,"f").openMediaPicker(e.type,e.serverUploadUrl,e.maxItemSize,n,a,s)}))}getShareableLink(e){return n(this,void 0,void 0,(function*(){const t=yield this.getAccessToken();return(yield qi(window.APP_ID,t||"",e.title,e.description,e.thumbnail,e.path)).shareableLink}))}closeLoading(e){return n(this,void 0,void 0,(function*(){return yield o(this,So,"f").closeLoading("user action")}))}requestUpdateZalo(e){return n(this,void 0,void 0,(function*(){const e=Wi().isIOS?"https://apps.apple.com/vn/app/zalo/id579523206":"https://play.google.com/store/apps/details?id=com.zing.zalo";return yield o(this,So,"f").openOutApp(e)}))}onConfirmToExit(t){this.events.on(e.Events.AppClose,t,'{"handle_h5": 1}'),o(this,So,"f").setNavigationBarLeftButton(void 0,2)}offConfirmToExit(){this.events.off(e.Events.AppClose),o(this,So,"f").setNavigationBarLeftButton(void 0,0)}getDeviceId(){return o(this,So,"f").getDeviceId()}},So=new WeakMap,t([i(0,go("object",{title:Qi("string")}))],e.SDKCreator.prototype,"setNavigationBarTitle",null),t([i(0,go("object",{color:Qi("string"),"textColor?":Qi("string",{values:["white","black"]}),"statusBarColor?":Qi("string")}))],e.SDKCreator.prototype,"setNavigationBarColor",null),t([i(0,go("object",{backgroundColor:Qi("string"),"textColor?":Qi("string",{values:["white","black"]})}))],e.SDKCreator.prototype,"setBackgroundColor",null),t([i(0,go("object",{type:Qi("string",{values:["none","back","home","both"]})}))],e.SDKCreator.prototype,"setNavigationBarLeftButton",null),t([i(0,go("object",{rotate:Qi("string",{values:["auto","portrait","landscape"]})}))],e.SDKCreator.prototype,"setDeviceOrientation",null),t([i(0,go("object",{data:Qi("object")}))],e.SDKCreator.prototype,"setStorage",null),t([i(0,go("object",{keys:Qi("array<string>")}))],e.SDKCreator.prototype,"getStorage",null),t([i(0,go("object",{keys:Qi("array<string>")}))],e.SDKCreator.prototype,"removeStorage",null),t([i(0,go("object",{"avatarType?":Qi("string",{values:["small","normal","large"]})}))],e.SDKCreator.prototype,"getUserInfo",null),t([i(0,go("object",{type:Qi("string",{values:["user","oa","aliasOA"]}),id:Qi("string")}))],e.SDKCreator.prototype,"openProfile",null),t([i(0,go("object",{type:Qi("string",{values:["user","oa"]}),id:Qi("string"),"message?":Qi("string")}))],e.SDKCreator.prototype,"openChat",null),t([i(0,fo(["data.imageUrl"],{if:{type:"image"}})),i(0,fo(["data.link"],{if:{type:"link"}})),i(0,fo(["data.id"],{if:{type:"profile"}})),i(0,go("object",{type:Qi("string",{values:["image","link","profile"]}),data:Qi("object"),"data.imageUrl?":Qi("url"),"data.link?":Qi("url"),"data.title?":Qi("string"),"data.thumb?":Qi("url"),"data.description?":Qi("string"),"data.avatar?":Qi("url"),"data.id?":Qi("string"),"data.displayName?":Qi("string")}))],e.SDKCreator.prototype,"openPostFeed",null),t([i(0,go("object",{id:Qi("string"),"showDialogConfirm?":Qi("boolean")}))],e.SDKCreator.prototype,"followOA",null),t([i(0,go("object",{id:Qi("string")}))],e.SDKCreator.prototype,"unfollowOA",null),t([i(0,fo([["data.imageUrl","data.imageUrls"]],{if:{type:"image"}})),i(0,fo(["data.link"],{if:{type:"link"}})),i(0,fo(["data.id"],{if:{type:"oa"}})),i(0,fo(["data.gifUrl"],{if:{type:"gif"}})),i(0,fo(["data.videoThumb","data.videoUrl"],{if:{type:"video"}})),i(0,fo(["data.thumbnail","data.title","data.description"],{if:{type:"zmp"},defaultValue:{data:{description:""}}})),i(0,go("object",{type:Qi("string",{values:["image","gif","video","link","oa","zmp"]}),data:Qi("object"),"data.imageUrl?":Qi("url"),"data.imageUrls?":Qi("array<url>",{maxLength:10}),"data.caption?":Qi("string"),"data.gifUrl?":Qi("url"),"data.width?":Qi("number"),"data.height?":Qi("number"),"data.videoThumb?":Qi("url"),"data.videoUrl?":Qi("url"),"data.link?":Qi("url"),"data.chatOnly?":Qi("boolean"),"data.id?":Qi("string"),"data.thumbnail?":Qi("url"),"data.path?":Qi("string"),"data.title?":Qi("string",{maxLength:100}),"data.description?":Qi(["string"],{maxLength:400})}))],e.SDKCreator.prototype,"openShareSheet",null),t([i(0,go("object",{secretData:Qi("string"),"ui?":Qi("object"),"ui.title?":Qi("string"),"ui.subTitle?":Qi("string"),"ui.negativeButtonText?":Qi("string"),"requireFingerprint?":Qi("boolean")},{requireFingerprint:!0,ui:{title:"Xác thực",subTitle:"Sử dụng sinh trắc học của bạn để xác thực",negativeButtonText:"Đóng"}}))],e.SDKCreator.prototype,"openBioAuthentication",null),t([i(0,go("object",{toUserId:Qi("string"),"title?":Qi("string")}))],e.SDKCreator.prototype,"sendLocation",null),t([i(0,go("object",{message:Qi("string")}))],e.SDKCreator.prototype,"showToast",null),t([i(0,go("object",{phoneNumber:Qi("string")}))],e.SDKCreator.prototype,"openPhone",null),t([i(0,go("object",{content:Qi("string"),phoneNumber:Qi("string",{regex:/^\+?\d+$/})}))],e.SDKCreator.prototype,"openSMS",null),t([i(0,go("object",{id:Qi("string"),"displayName?":Qi("string")},{displayName:""}))],e.SDKCreator.prototype,"viewOAQr",null),t([i(0,go("object",{"imageBase64Data?":Qi("string"),"imageUrl?":Qi("url")}))],e.SDKCreator.prototype,"saveImageToGallery",null),t([i(0,go("object",{"imageBase64Data?":Qi("string"),"imageUrl?":Qi("url")}))],e.SDKCreator.prototype,"saveImageToPhotosAlbum",null),t([i(0,go("object",{appId:Qi("string"),"params?":Qi("object")}))],e.SDKCreator.prototype,"openMiniApp",null),t([i(0,go("object",{"type?":Qi("string",{values:["oneShot"]}),"milliseconds?":Qi("number")},{type:"oneShot",milliseconds:500}))],e.SDKCreator.prototype,"vibrate",null),t([i(0,go("object",{url:Qi("url")}))],e.SDKCreator.prototype,"openWebview",null),t([i(0,go("object",{"maxProfile?":Qi("number",{min:1,max:10})},{maxProfile:1}))],e.SDKCreator.prototype,"openProfilePicker",null),t([i(0,fo(["SSID"])),i(0,go("object",{SSID:Qi("string"),"password?":Qi("string"),"hiddenSSID?":Qi("boolean")}))],e.SDKCreator.prototype,"connectWifi",null),t([i(0,go("object",{type:Qi("string",{values:["photo","video","file"]}),serverUploadUrl:Qi("url"),"maxItemSize?":Qi("number",{min:0}),"editView?":Qi("object"),"editView.enable?":Qi("boolean"),"editView.aspectRatio?":Qi("string",{regex:/^\d+:\d+$/}),"silentRequest?":Qi("boolean"),"maxSelectItem?":Qi("number",{min:1})}))],e.SDKCreator.prototype,"openMediaPicker",null),t([i(0,go("object",{title:Qi("string",{maxLength:100}),"thumbnail?":Qi("url"),"path?":Qi("string"),description:Qi(["string"],{maxLength:400})},{description:""}))],e.SDKCreator.prototype,"getShareableLink",null),e.SDKCreator=t([yo(_o)],e.SDKCreator);class bo extends e.SDKCreator{getServiceInstance(){return uo.getInstance()}}class wo extends e.SDKCreator{getServiceInstance(){return new ho}}class No{constructor(){Eo.set(this,Zt)}static getInstance(){return No.instance||(No.instance=new No),No.instance}createOrder(e,t){return n(this,void 0,void 0,(function*(){const i=o(this,Eo,"f"),n=new URLSearchParams;n.append("amount",t.amount.toString()),n.append("item",encodeURIComponent(JSON.stringify(t.item))),n.append("appId",i),t.desc&&n.append("desc",encodeURIComponent(t.desc)),t.extradata&&n.append("extradata",encodeURIComponent(JSON.stringify(t.extradata))),t.method&&n.append("method",t.method);const r={headers:{"Content-Type":"application/x-www-form-urlencoded",authorization:"Bearer "}};try{const o=yield e.getAccessToken({fail:e=>{throw ki.loginRequired}});r.headers.authorization=`Bearer ${o}`;const a=yield fetch(wi,Object.assign(Object.assign({method:"POST"},r),{body:n})),s=yield a.json();if(!s.data||0!==s.err)throw ki.badRequest(s.msg);const c=s.data.id,l=s.data.jwt,d=window.APP_VERSION,u=window.APP_ENV,h={miniAppId:i,orderId:c};l&&(h.token=l),d&&(h.version=d),u&&(h.env=u),t.method&&(h.method=t.method);const p=Ri.encode(h),v=new URL(`?${p}`,"https://payment-mini.zalo.me").toString();return yield e.openWebview({url:v,fail:e=>{throw e}}),{orderId:c}}catch(e){throw e}}))}checkTransaction(e,t){return n(this,void 0,void 0,(function*(){try{let i,{data:n}=t;if(n||(n=e.getRouteParams()),"object"==typeof n&&(i=n.appTransID||n.orderId||n.apptransid),"string"==typeof n){const e=Ri.getParameterByName("orderId",n),t=Ri.getParameterByName("appTransID",n)||Ri.getParameterByName("apptransid",n);i=e||t}const r={headers:{authorization:"Bearer "}},a=yield e.getAccessToken({fail:e=>{throw ki.loginRequired}});r.headers.authorization=`Bearer ${a}`;const s=new URL(Ni),c={transId:i||"",appId:o(this,Eo,"f")};s.search=new URLSearchParams(c).toString();const l=yield fetch(s.toString(),r),d=yield l.json();if(!d.data||0!==d.err)throw ki.badRequest(d.msg);const u=d.data||{};return{msg:u.resultMessage,orderId:u.orderId,resultCode:u.resultCode,transTime:u.transTime,createdAt:u.createAt,transId:u.transId}}catch(e){throw e}}))}}Eo=new WeakMap;class Co{constructor(){Oo.set(this,Vt)}static getInstance(){return Co.instance||(Co.instance=new Co),Co.instance}createOrder(e,t){return Promise.resolve({orderId:""})}checkTransaction(e,t){const i={msg:"Success",orderId:"",resultCode:1,transTime:(new Date).getTime().toString(),createdAt:(new Date).getTime().toString(),transId:""};return Promise.resolve(i)}}Oo=new WeakMap;let Io=class{constructor(e){Ao.set(this,void 0),To.set(this,void 0),r(this,Ao,this.getInstance(),"f"),r(this,To,e,"f")}createOrder(e){return o(this,Ao,"f").createOrder(o(this,To,"f"),e)}checkTransaction(e){return o(this,Ao,"f").checkTransaction(o(this,To,"f"),e)}};Ao=new WeakMap,To=new WeakMap,t([i(0,go("object",{amount:Qi(["string","number"]),desc:Qi("string"),"method?":Qi("string",{values:["MOMO","ZALOPAY","MOMO_SANDBOX","ZALOPAY_SANDBOX","CC","CC_SANDBOX","ATM","ATM_SANDBOX"]})}))],Io.prototype,"createOrder",null),Io=t([yo(_o)],Io);class Po extends Io{getInstance(){return No.getInstance()}}class ko extends Io{getInstance(){return Co.getInstance()}}const Ro=Wi();e.default=void 0,window.onJSCall=e=>function(t){Yn.getInstance().onJSCall(e,t)},window.onMultiJSCall=e=>function(t){Yn.getInstance().onMultiJSCall(e,t)},window.zaloJSV2={zalo_h5_event_handler:function(e,t,i){Yn.getInstance().nativeEventHandler(e,t,i)}},e.Payment=void 0,Ro.isZalo?(e.default=new bo,e.Payment=new Po(e.default)):(e.default=new wo,e.Payment=new ko(e.default)),window.ZaloMiniAppSDK=e.default,e.default=e.default,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
@@ -115,6 +115,9 @@ export declare abstract class SDKCreator {
|
|
|
115
115
|
getShareableLink(object: InputDataType.GetShareableLink<string>): Promise<string>;
|
|
116
116
|
closeLoading(object?: InputDataType.CallbackType): Promise<void>;
|
|
117
117
|
requestUpdateZalo(object?: InputDataType.CallbackType): Promise<void>;
|
|
118
|
+
onConfirmToExit(callback: () => void): void;
|
|
119
|
+
offConfirmToExit(): void;
|
|
120
|
+
getDeviceId(): string;
|
|
118
121
|
}
|
|
119
122
|
export declare class ZaloMiniAppSDKCreator extends SDKCreator {
|
|
120
123
|
protected getServiceInstance(): SDKServiceInterface;
|
|
@@ -7,22 +7,22 @@ export declare abstract class PaymentCreator {
|
|
|
7
7
|
constructor(sdk: SDKCreator);
|
|
8
8
|
protected abstract getInstance(): PaymentServiceInterface;
|
|
9
9
|
/**
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
* Tạo đơn hàng
|
|
11
|
+
*
|
|
12
|
+
* @async
|
|
13
|
+
* @function createOrder
|
|
14
|
+
* @category Payment
|
|
15
|
+
* @returns {Promise<CallbackDataType.CreateOrderCallBack>}
|
|
16
|
+
*/
|
|
17
17
|
createOrder(object: InputDataType.CreateOrder): Promise<CallbackDataType.CreateOrderCallBack>;
|
|
18
18
|
/**
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
19
|
+
* Lấy thông tin transaction
|
|
20
|
+
*
|
|
21
|
+
* @async
|
|
22
|
+
* @function checkTransaction
|
|
23
|
+
* @category Payment
|
|
24
|
+
* @returns {Promise<CallbackDataType.CheckTransactionSuccessCallBack>}
|
|
25
|
+
*/
|
|
26
26
|
checkTransaction(object: InputDataType.CheckTransaction): Promise<CallbackDataType.CheckTransactionSuccessCallBack>;
|
|
27
27
|
}
|
|
28
28
|
export declare class ZaloMiniAppPaymentCreator extends PaymentCreator {
|