x-app-sdk 1.0.7 → 1.0.8-beta.3

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/index.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";var l=Object.defineProperty;var p=(A,g,I)=>g in A?l(A,g,{enumerable:!0,configurable:!0,writable:!0,value:I}):A[g]=I;var i=(A,g,I)=>p(A,typeof g!="symbol"?g+"":g,I);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var n=(A=>(A.RequestConfigUIApp="requestConfigUIApp",A.RequestInfo="requestInfo",A.RequestCloseApp="requestCloseApp",A.RequestPickerImage="requestPickerImage",A.RequestVibrate="requestVibrate",A.RequestPayment="requestPayment",A.RequestPremissionsRequest="requestPremissionsRequest",A))(n||{}),t=(A=>(A.ResponseConfigApp="responseConfigUIApp",A.ResponseInfo="responseInfo",A.ResponsePickerImage="responsePickerImage",A.ResponseVibrate="responseVibrate",A.ResponseCloseApp="responseCloseApp",A.ResponsePayment="responsePayment",A.ResponsePremissionsRequest="responsePremissionsRequest",A))(t||{}),o=(A=>(A.SUCCESS="success",A.ERROR="error",A.PREMISSION_ERROR="premissionError",A))(o||{}),c=(A=>(A.USER="user",A))(c||{}),a=(A=>(A.LOCATION="location",A.CAMERA="camera",A.MICRO="micro",A.NOTIFICATION="notification",A))(a||{}),R=(A=>(A.ONE_PAY="onePay",A))(R||{});class d{constructor(){i(this,"premissions");i(this,"getPremissions",()=>({[n.RequestInfo]:!0,[n.RequestCloseApp]:!0,[n.RequestPickerImage]:!0,[n.RequestVibrate]:!0}));i(this,"checkPremission",g=>this.premissions[g]);this.premissions={},this.initialize()}initialize(){window.Flutter||(this.premissions=this.getPremissions())}}class h{constructor(){i(this,"handlers");i(this,"isInitialized");i(this,"isBrowserMode");i(this,"cachedInfo");i(this,"infoRequests");i(this,"premissionEvent");this.handlers=new Map,this.isInitialized=!1,this.isBrowserMode=!1,this.cachedInfo=new Map,this.infoRequests=new Map,this.premissionEvent=new d,this.initialize()}initialize(){window.Flutter?(this.setupMessageHandler(),this.isInitialized=!0,this.isBrowserMode=!1,this.send(n.RequestInfo,{})):(this.isInitialized=!0,this.isBrowserMode=!0,console.warn("Flutter channel not found. Running in browser mode."))}setupMessageHandler(){window.receiveFromFlutter=g=>{try{const I=JSON.parse(g);if(I.type===t.ResponseInfo){this.handleInfoUpdate(I.data);return}this.handleMessage(I)}catch(I){console.error("Error parsing message from Flutter:",I)}}}handleInfoUpdate(g){g&&Object.entries(g).forEach(([I,e])=>{this.cachedInfo.set(I,e),(this.infoRequests.get(I)||[]).forEach(r=>r(e)),this.infoRequests.delete(I)})}handleMessage(g){(this.handlers.get(g.type)||[]).forEach(e=>{try{e(g)}catch(s){console.error("Error in message handler:",s)}})}send(g,I){var s;if(!this.isInitialized){console.error("SDK not initialized");return}const e={type:g,data:I};(s=window.Flutter)==null||s.postMessage(JSON.stringify(e))}on(g,I){const e=this.handlers.get(g)||[];e.push(I),this.handlers.set(g,e)}off(g,I){const e=this.handlers.get(g)||[],s=e.indexOf(I);s>-1&&(e.splice(s,1),this.handlers.set(g,e))}getBrowserMode(){return this.isBrowserMode}getInitialized(){return this.isInitialized}getCachedInfo(g){return this.cachedInfo.get(g)}getInfoRequests(){return this.infoRequests}setInfoRequest(g,I){this.infoRequests.set(g,I)}checkPremissionEvent(g){return this.premissionEvent.checkPremission(g)}}const C=new h;C.getBrowserMode();const m={user:{name:"Pham Hong Son"}},P=async A=>{if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestInfo)){const e={type:t.ResponseInfo,status:o.PREMISSION_ERROR};return Promise.resolve(e)}const I={type:t.ResponseInfo,status:o.SUCCESS,data:m[A]};return Promise.resolve(I)}const g=C.getCachedInfo(A);if(g!==void 0){const I={type:t.ResponseInfo,status:o.SUCCESS,data:g};return Promise.resolve(I)}return new Promise(I=>{const s=C.getInfoRequests().get(A)||[];s.push(r=>{const u={type:t.ResponseInfo,status:o.SUCCESS,data:r};I(u)}),C.setInfoRequest(A,s),C.send(n.RequestInfo,{key:A})})},f={path:"/hello.png",base64:"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QC8RXhpZgAASUkqAAgAAAAGABIBAwABAAAAAQAAABoBBQABAAAAVgAAABsBBQABAAAAXgAAACgBAwABAAAAAgAAABMCAwABAAAAAQAAAGmHBAABAAAAZgAAAAAAAABgAAAAAQAAAGAAAAABAAAABgAAkAcABAAAADAyMTABkQcABAAAAAECAwAAoAcABAAAADAxMDABoAMAAQAAAP//AAACoAQAAQAAACADAAADoAQAAQAAACADAAAAAAAA/+EOAmh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSfvu78nIGlkPSdXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQnPz4KPHg6eG1wbWV0YSB4bWxuczp4PSdhZG9iZTpuczptZXRhLyc+CjxyZGY6UkRGIHhtbG5zOnJkZj0naHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyc+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpBdHRyaWI9J2h0dHA6Ly9ucy5hdHRyaWJ1dGlvbi5jb20vYWRzLzEuMC8nPgogIDxBdHRyaWI6QWRzPgogICA8cmRmOlNlcT4KICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0nUmVzb3VyY2UnPgogICAgIDxBdHRyaWI6Q3JlYXRlZD4yMDI0LTAyLTIzPC9BdHRyaWI6Q3JlYXRlZD4KICAgICA8QXR0cmliOkV4dElkPjVmNWM3Y2U4LTAzZWYtNDc5NC1iYTJkLTE4ZjRkZjViZjVhYjwvQXR0cmliOkV4dElkPgogICAgIDxBdHRyaWI6RmJJZD41MjUyNjU5MTQxNzk1ODA8L0F0dHJpYjpGYklkPgogICAgIDxBdHRyaWI6VG91Y2hUeXBlPjI8L0F0dHJpYjpUb3VjaFR5cGU+CiAgICA8L3JkZjpsaT4KICAgPC9yZGY6U2VxPgogIDwvQXR0cmliOkFkcz4KIDwvcmRmOkRlc2NyaXB0aW9uPgoKIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PScnCiAgeG1sbnM6ZGM9J2h0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvJz4KICA8ZGM6dGl0bGU+CiAgIDxyZGY6QWx0PgogICAgPHJkZjpsaSB4bWw6bGFuZz0neC1kZWZhdWx0Jz5UaGnhur90IGvhur8gY2jGsGEgY8OzIHTDqm4gLSAzPC9yZGY6bGk+CiAgIDwvcmRmOkFsdD4KICA8L2RjOnRpdGxlPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpwZGY9J2h0dHA6Ly9ucy5hZG9iZS5jb20vcGRmLzEuMy8nPgogIDxwZGY6QXV0aG9yPlF14buzbmggRGnhu4VtPC9wZGY6QXV0aG9yPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczp4bXA9J2h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8nPgogIDx4bXA6Q3JlYXRvclRvb2w+Q2FudmE8L3htcDpDcmVhdG9yVG9vbD4KIDwvcmRmOkRlc2NyaXB0aW9uPgo8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg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"},y=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestPickerImage)){const g={type:t.ResponsePickerImage,status:o.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:t.ResponsePickerImage,status:o.SUCCESS,data:f};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===o.ERROR?g(e):A(e),C.off(t.ResponsePickerImage,I)};C.on(t.ResponsePickerImage,I),C.send(n.RequestPickerImage,void 0)})},E=A=>{C.send(n.RequestCloseApp,A)},B=async()=>{if(!C.checkPremissionEvent(n.RequestPickerImage)){const A={type:t.ResponseVibrate,status:o.PREMISSION_ERROR};return Promise.resolve(A)}C.send(n.RequestVibrate)},G=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){const g={type:t.ResponseConfigApp,status:o.SUCCESS};return Promise.resolve(g)}return new Promise((g,I)=>{const e=s=>{s.status===o.ERROR?I(s):g(s),C.off(t.ResponseConfigApp,e)};C.on(t.ResponseConfigApp,e),C.send(n.RequestConfigUIApp,A)})},w=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestPremissionsRequest)){const I={type:t.ResponsePremissionsRequest,status:o.PREMISSION_ERROR};return Promise.resolve(I)}const g={type:t.ResponsePremissionsRequest,status:o.SUCCESS,data:!0};return Promise.resolve(g)}return new Promise((g,I)=>{const e=s=>{s.status===o.ERROR?I(s):g(s),C.off(t.ResponsePremissionsRequest,e)};C.on(t.ResponsePremissionsRequest,e),C.send(n.RequestPremissionsRequest,{type:A})})},Z=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){const g={type:t.ResponsePayment,status:o.SUCCESS,data:{status:"success"}};return Promise.resolve(g)}return new Promise((g,I)=>{const e=s=>{s.status===o.ERROR?I(s):g(s),C.off(t.ResponsePayment,e)};C.on(t.ResponsePayment,e),C.send(n.RequestPayment,A)})};exports.EKeyInfor=c;exports.EPremissionsType=a;exports.EStatus=o;exports.ETypePayment=R;exports.ETypeRequest=n;exports.ETypeResponse=t;exports.closeApp=E;exports.configUIApp=G;exports.fltSDK=C;exports.getInfo=P;exports.openPickerImage=y;exports.paymentRequest=Z;exports.premissionsRequest=w;exports.vibrate=B;
1
+ "use strict";var l=Object.defineProperty;var p=(A,g,I)=>g in A?l(A,g,{enumerable:!0,configurable:!0,writable:!0,value:I}):A[g]=I;var i=(A,g,I)=>p(A,typeof g!="symbol"?g+"":g,I);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var n=(A=>(A.RequestConfigUIApp="requestConfigUIApp",A.RequestInfo="requestInfo",A.RequestCloseApp="requestCloseApp",A.RequestPickerImage="requestPickerImage",A.RequestVibrate="requestVibrate",A.RequestPayment="requestPayment",A.RequestPremissionsRequest="requestPremissionsRequest",A))(n||{}),t=(A=>(A.ResponseConfigApp="responseConfigUIApp",A.ResponseInfo="responseInfo",A.ResponsePickerImage="responsePickerImage",A.ResponseVibrate="responseVibrate",A.ResponseCloseApp="responseCloseApp",A.ResponsePayment="responsePayment",A.ResponsePremissionsRequest="responsePremissionsRequest",A))(t||{}),o=(A=>(A.SUCCESS="success",A.ERROR="error",A.PREMISSION_ERROR="premissionError",A))(o||{}),c=(A=>(A.USER="user",A))(c||{}),a=(A=>(A.LOCATION="location",A.CAMERA="camera",A.MICRO="micro",A.NOTIFICATION="notification",A))(a||{}),u=(A=>(A.ONE_PAY="onePay",A))(u||{});class d{constructor(){i(this,"premissions");i(this,"getPremissions",()=>({[n.RequestInfo]:!0,[n.RequestCloseApp]:!0,[n.RequestPickerImage]:!0,[n.RequestVibrate]:!0}));i(this,"checkPremission",g=>this.premissions[g]);this.premissions={},this.initialize()}initialize(){window.flutter_inappwebview||(this.premissions=this.getPremissions())}}class h{constructor(){i(this,"handlers");i(this,"isInitialized");i(this,"isBrowserMode");i(this,"cachedInfo");i(this,"infoRequests");i(this,"premissionEvent");this.handlers=new Map,this.isInitialized=!1,this.isBrowserMode=!1,this.cachedInfo=new Map,this.infoRequests=new Map,this.premissionEvent=new d,this.initialize()}initialize(){window.flutter_inappwebview?(this.setupMessageHandler(),this.isInitialized=!0,this.isBrowserMode=!1,this.send(n.RequestInfo,{})):(this.isInitialized=!0,this.isBrowserMode=!0,console.warn("Flutter channel not found. Running in browser mode."))}setupMessageHandler(){window.receiveFromFlutter=g=>{try{const I=JSON.parse(g);if(I.type===t.ResponseInfo){this.handleInfoUpdate(I.data);return}this.handleMessage(I)}catch(I){console.error("Error parsing message from Flutter:",I)}}}handleInfoUpdate(g){g&&Object.entries(g).forEach(([I,e])=>{this.cachedInfo.set(I,e),(this.infoRequests.get(I)||[]).forEach(r=>r(e)),this.infoRequests.delete(I)})}handleMessage(g){(this.handlers.get(g.type)||[]).forEach(e=>{try{e(g)}catch(s){console.error("Error in message handler:",s)}})}send(g,I){if(!this.isInitialized){console.error("SDK not initialized");return}const s=JSON.stringify({type:g,data:I});window.flutter_inappwebview&&window.flutter_inappwebview.callHandler("Flutter",s).catch(r=>console.error("Error sending message to Flutter:",r))}on(g,I){const e=this.handlers.get(g)||[];e.push(I),this.handlers.set(g,e)}off(g,I){const e=this.handlers.get(g)||[],s=e.indexOf(I);s>-1&&(e.splice(s,1),this.handlers.set(g,e))}getBrowserMode(){return this.isBrowserMode}getInitialized(){return this.isInitialized}getCachedInfo(g){return this.cachedInfo.get(g)}getInfoRequests(){return this.infoRequests}setInfoRequest(g,I){this.infoRequests.set(g,I)}checkPremissionEvent(g){return this.premissionEvent.checkPremission(g)}}const C=new h;C.getBrowserMode();const m={user:{name:"Pham Hong Son"}},P=async A=>{if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestInfo)){const e={type:t.ResponseInfo,status:o.PREMISSION_ERROR};return Promise.resolve(e)}const I={type:t.ResponseInfo,status:o.SUCCESS,data:m[A]};return Promise.resolve(I)}const g=C.getCachedInfo(A);if(g!==void 0){const I={type:t.ResponseInfo,status:o.SUCCESS,data:g};return Promise.resolve(I)}return new Promise(I=>{const s=C.getInfoRequests().get(A)||[];s.push(r=>{const R={type:t.ResponseInfo,status:o.SUCCESS,data:r};I(R)}),C.setInfoRequest(A,s),C.send(n.RequestInfo,{key:A})})},f={path:"/hello.png",base64:"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QC8RXhpZgAASUkqAAgAAAAGABIBAwABAAAAAQAAABoBBQABAAAAVgAAABsBBQABAAAAXgAAACgBAwABAAAAAgAAABMCAwABAAAAAQAAAGmHBAABAAAAZgAAAAAAAABgAAAAAQAAAGAAAAABAAAABgAAkAcABAAAADAyMTABkQcABAAAAAECAwAAoAcABAAAADAxMDABoAMAAQAAAP//AAACoAQAAQAAACADAAADoAQAAQAAACADAAAAAAAA/+EOAmh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSfvu78nIGlkPSdXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQnPz4KPHg6eG1wbWV0YSB4bWxuczp4PSdhZG9iZTpuczptZXRhLyc+CjxyZGY6UkRGIHhtbG5zOnJkZj0naHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyc+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpBdHRyaWI9J2h0dHA6Ly9ucy5hdHRyaWJ1dGlvbi5jb20vYWRzLzEuMC8nPgogIDxBdHRyaWI6QWRzPgogICA8cmRmOlNlcT4KICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0nUmVzb3VyY2UnPgogICAgIDxBdHRyaWI6Q3JlYXRlZD4yMDI0LTAyLTIzPC9BdHRyaWI6Q3JlYXRlZD4KICAgICA8QXR0cmliOkV4dElkPjVmNWM3Y2U4LTAzZWYtNDc5NC1iYTJkLTE4ZjRkZjViZjVhYjwvQXR0cmliOkV4dElkPgogICAgIDxBdHRyaWI6RmJJZD41MjUyNjU5MTQxNzk1ODA8L0F0dHJpYjpGYklkPgogICAgIDxBdHRyaWI6VG91Y2hUeXBlPjI8L0F0dHJpYjpUb3VjaFR5cGU+CiAgICA8L3JkZjpsaT4KICAgPC9yZGY6U2VxPgogIDwvQXR0cmliOkFkcz4KIDwvcmRmOkRlc2NyaXB0aW9uPgoKIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PScnCiAgeG1sbnM6ZGM9J2h0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvJz4KICA8ZGM6dGl0bGU+CiAgIDxyZGY6QWx0PgogICAgPHJkZjpsaSB4bWw6bGFuZz0neC1kZWZhdWx0Jz5UaGnhur90IGvhur8gY2jGsGEgY8OzIHTDqm4gLSAzPC9yZGY6bGk+CiAgIDwvcmRmOkFsdD4KICA8L2RjOnRpdGxlPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpwZGY9J2h0dHA6Ly9ucy5hZG9iZS5jb20vcGRmLzEuMy8nPgogIDxwZGY6QXV0aG9yPlF14buzbmggRGnhu4VtPC9wZGY6QXV0aG9yPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczp4bXA9J2h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8nPgogIDx4bXA6Q3JlYXRvclRvb2w+Q2FudmE8L3htcDpDcmVhdG9yVG9vbD4KIDwvcmRmOkRlc2NyaXB0aW9uPgo8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSd3Jz8+/9sAQwAGBAUGBQQGBgUGBwcGCAoQCgoJCQoUDg8MEBcUGBgXFBYWGh0lHxobIxwWFiAsICMmJykqKRkfLTAtKDAlKCko/9sAQwEHBwcKCAoTCgoTKBoWGigoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo/8AAEQgAZABkAwEiAAIRAQMRAf/EABwAAAICAwEBAAAAAAAAAAAAAAAFAQQCAwYHCP/EADMQAAEDAgQEAwgCAgMAAAAAAAEAAgMEEQUSITETQVFhBiJyFCQ0cYGhscEHMiORQtHh/8QAGQEAAwEBAQAAAAAAAAAAAAAAAAECAwQF/8QAHREBAQACAgMBAAAAAAAAAAAAAAECESExAxJBUf/aAAwDAQACEQMRAD8A94QgIXI9BIQgITAQpUIAQhCAFIUKQgMgpUKUESYv8S30D8lCMX0qW+gfkoUq4NQpUBSEyCkKEAEmw1KYTdQsmMc92VgueijYkHdACEBSgIUhAujZAZBTyUBTyQRJjHxLfQPyUIxf4lvoH5KFK4ahCgLW+Utfkawuda6cmykt6beazjeWPDm7jZVBKZSREQ2wuSR9luopjlbIQCRfRPWjywsnJJT4lKMQqIm+cNcRlcfx0T2nfHMxziSDbQd+hXJ07mtxmqD43OcZHWAF7ap02rjhu5t9dC07qZfp5Y/DNSqFNjNJM1zDdjxrmdpbt3TBmV8WdsjT0HVV2gKQhjHPDi1tw3dQ9zY4eI+RjRfYnVBJClLZsZp4mFpYeuYjfsmMcvtFKyYjITYNZYbEInIu4UYqPeG+n9lCMU+Ib6f2UKTMQdFqla7OJI9XAWI6hc3T1b4KOGWrrJWGY+W2w+at1GIS0sLPaHiQucQC3S4VzGxpjjceTZ0jAyR7dHkWIViACGHzt0yGxPXqqNNK2R2R4LnhvE22b3VDxDjFpBC54yhtiG7AdEZXRZ9+sYUzWTVL6h5Di4l2UGw30PzsrL2OkIDAGl2l90jgr6jOPY6TiDk3OBdeeY1/KuL0+JGOhgw+OOO5MdQ8hxsCbX2uQNB8llOeIeWUnNeiyU7Y55XPuTC4Z83O6zhrLGRscrg0HKMp3SjB8ZOPYPBXhjmNxBznPidqY3t0LfoR91ZoYhT1MYkvmJLg1o1OiW9DW16KsruM13FOa1r8j/0mLJ3zgmQvuBzCp4PWYdUwCnpqqmlqm6yRsla5zD3AKt1MQdE5rvK8bO5hM9F80ZrcTpqeM+Vzru5WA3XZlnDiYbjUaN6BI/DGHgSzyyOvKCWF7tgBqU4KqfqM7zqFeKH3hvp/ZQscV+Ib6f2UJocnQzx4lh7cPneI6hhvC52zuyrg176mmwyoaGhkgy3FzbnrzFktiYHtBcLHqU4osZkp2tFSxtRwv6OcfM369FqrHKXjJdrcVkhxOsZCbN4fAJIvppf7pc6OWsqiTmy7E9VXo6+Vra6NrA51a0Ne/YtGbMQPnYJ1TxubDlzAXFxzWXlGN9srUsh4QZJE8At2LOS8+xf+LcNxjxKcSkrpoY5HZnU3DzBx7c7L0vDaXiNyyMbobh1tFejpooaoP1z8y4tH2FyoxtnSrJeyHwtS0+B4RT4ZUvL5InyzGVzbZnPeTft0t2WXi4ifAKqLCA+SsrC2DNCfMyMn/JlPI2WPiyio3Y3RVtC4Q19S8U8pEjmtLCLl+XYuGXpdN6HAoMLwhlPHW1dbUHzConeHSONtxYC/01T52dk9Y+ZfAUdS/wAVxUWHYZ7JWQyn3kZg9jhpZ3Ijt0uvo32+cPMdWY3a5Q+J2h/2sPYCA+V7WCQ6ONtT113+i01lKG0p4b2vdfMCzeyWVuV2WGPrNOm8OyiXNC9278xce6aEWcRe9jZc34Rc6eoybFwA17ldEdCR00VzpF7KsVPvDdf+I/JQscV+Ib6f2UJE4FjLH+x1UmAE3P8ApehnA8McPg2D0uI/axd4fw02PCePlIVqhx9K+OPDqqnfGM0zoyyTTyhpNx9bpjhszJY+CBYjYnchPj4bw11PMCZuK4tyuLrltr3tpzXLhjaPEZYYi4tYbZn72Wfk6X4+6eUxMJsS5/e+yzn4mUiJwAPTQf8Aq0RPAZ0+WyM4Gzr366LOVqWVeAxTvjqJXvfVx3cyUnVp7dE4oqsmERzZc4A0d/U/Pp2PJYcQloJBUxML3AED6hG/wN+IzN4IylxkI56nTqRvbqlNK+SIuJGfMdi03TR9LdhDpBcbA6FKayuZEBFG28g2I3CBFijroqCp8zQGuFyW8l08UsE9MyWGXMTuP2F55XVBMAkt5hqbq94dxT2ecRyG0L+V9u6vGpyx2fYrrUN9P7KFljOQ1d4CTGWgi+/PRCNI2ZXIB1WQJQhaobY25qad5vdhbb6krhXMEmLSZtcxJKELPy9Rfi+mNIS9pDjoFL2AygEkg6WKELFtGmQuZEcjiN1FPUymM3edDZCFP1XxhiE8mUXcTdwH2S+NgjbJKCc5I3PVCFSWms+CqHEklrbi6qw60ubmALIQqxJ0tM9z6OnLnEnJa/1KEIVxm//Z"},y=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestPickerImage)){const g={type:t.ResponsePickerImage,status:o.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:t.ResponsePickerImage,status:o.SUCCESS,data:f};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===o.ERROR?g(e):A(e),C.off(t.ResponsePickerImage,I)};C.on(t.ResponsePickerImage,I),C.send(n.RequestPickerImage,void 0)})},w=A=>{C.send(n.RequestCloseApp,A)},E=async()=>{if(!C.checkPremissionEvent(n.RequestPickerImage)){const A={type:t.ResponseVibrate,status:o.PREMISSION_ERROR};return Promise.resolve(A)}C.send(n.RequestVibrate)},B=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){const g={type:t.ResponseConfigApp,status:o.SUCCESS};return Promise.resolve(g)}return new Promise((g,I)=>{const e=s=>{s.status===o.ERROR?I(s):g(s),C.off(t.ResponseConfigApp,e)};C.on(t.ResponseConfigApp,e),C.send(n.RequestConfigUIApp,A)})},G=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestPremissionsRequest)){const I={type:t.ResponsePremissionsRequest,status:o.PREMISSION_ERROR};return Promise.resolve(I)}const g={type:t.ResponsePremissionsRequest,status:o.SUCCESS,data:!0};return Promise.resolve(g)}return new Promise((g,I)=>{const e=s=>{s.status===o.ERROR?I(s):g(s),C.off(t.ResponsePremissionsRequest,e)};C.on(t.ResponsePremissionsRequest,e),C.send(n.RequestPremissionsRequest,{type:A})})},Z=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){const g={type:t.ResponsePayment,status:o.SUCCESS,data:{status:"success"}};return Promise.resolve(g)}return new Promise((g,I)=>{const e=s=>{s.status===o.ERROR?I(s):g(s),C.off(t.ResponsePayment,e)};C.on(t.ResponsePayment,e),C.send(n.RequestPayment,A)})};exports.EKeyInfor=c;exports.EPremissionsType=a;exports.EStatus=o;exports.ETypePayment=u;exports.ETypeRequest=n;exports.ETypeResponse=t;exports.closeApp=w;exports.configUIApp=B;exports.fltSDK=C;exports.getInfo=P;exports.openPickerImage=y;exports.paymentRequest=Z;exports.premissionsRequest=G;exports.vibrate=E;
package/dist/index.d.ts CHANGED
@@ -121,7 +121,9 @@ export { }
121
121
 
122
122
  declare global {
123
123
  interface Window {
124
- Flutter?: FlutterInterface;
124
+ flutter_inappwebview?: {
125
+ callHandler: (handlerName: string, ...args: any[]) => Promise<any>;
126
+ };
125
127
  receiveFromFlutter?: (message: string) => void;
126
128
  }
127
129
  }
package/dist/index.es.js CHANGED
@@ -1,8 +1,8 @@
1
1
  var a = Object.defineProperty;
2
2
  var R = (A, g, I) => g in A ? a(A, g, { enumerable: !0, configurable: !0, writable: !0, value: I }) : A[g] = I;
3
3
  var i = (A, g, I) => R(A, typeof g != "symbol" ? g + "" : g, I);
4
- var n = /* @__PURE__ */ ((A) => (A.RequestConfigUIApp = "requestConfigUIApp", A.RequestInfo = "requestInfo", A.RequestCloseApp = "requestCloseApp", A.RequestPickerImage = "requestPickerImage", A.RequestVibrate = "requestVibrate", A.RequestPayment = "requestPayment", A.RequestPremissionsRequest = "requestPremissionsRequest", A))(n || {}), t = /* @__PURE__ */ ((A) => (A.ResponseConfigApp = "responseConfigUIApp", A.ResponseInfo = "responseInfo", A.ResponsePickerImage = "responsePickerImage", A.ResponseVibrate = "responseVibrate", A.ResponseCloseApp = "responseCloseApp", A.ResponsePayment = "responsePayment", A.ResponsePremissionsRequest = "responsePremissionsRequest", A))(t || {}), o = /* @__PURE__ */ ((A) => (A.SUCCESS = "success", A.ERROR = "error", A.PREMISSION_ERROR = "premissionError", A))(o || {}), u = /* @__PURE__ */ ((A) => (A.USER = "user", A))(u || {}), l = /* @__PURE__ */ ((A) => (A.LOCATION = "location", A.CAMERA = "camera", A.MICRO = "micro", A.NOTIFICATION = "notification", A))(l || {}), d = /* @__PURE__ */ ((A) => (A.ONE_PAY = "onePay", A))(d || {});
5
- class p {
4
+ var n = /* @__PURE__ */ ((A) => (A.RequestConfigUIApp = "requestConfigUIApp", A.RequestInfo = "requestInfo", A.RequestCloseApp = "requestCloseApp", A.RequestPickerImage = "requestPickerImage", A.RequestVibrate = "requestVibrate", A.RequestPayment = "requestPayment", A.RequestPremissionsRequest = "requestPremissionsRequest", A))(n || {}), t = /* @__PURE__ */ ((A) => (A.ResponseConfigApp = "responseConfigUIApp", A.ResponseInfo = "responseInfo", A.ResponsePickerImage = "responsePickerImage", A.ResponseVibrate = "responseVibrate", A.ResponseCloseApp = "responseCloseApp", A.ResponsePayment = "responsePayment", A.ResponsePremissionsRequest = "responsePremissionsRequest", A))(t || {}), o = /* @__PURE__ */ ((A) => (A.SUCCESS = "success", A.ERROR = "error", A.PREMISSION_ERROR = "premissionError", A))(o || {}), u = /* @__PURE__ */ ((A) => (A.USER = "user", A))(u || {}), l = /* @__PURE__ */ ((A) => (A.LOCATION = "location", A.CAMERA = "camera", A.MICRO = "micro", A.NOTIFICATION = "notification", A))(l || {}), p = /* @__PURE__ */ ((A) => (A.ONE_PAY = "onePay", A))(p || {});
5
+ class d {
6
6
  constructor() {
7
7
  i(this, "premissions");
8
8
  i(this, "getPremissions", () => ({
@@ -15,7 +15,7 @@ class p {
15
15
  this.premissions = {}, this.initialize();
16
16
  }
17
17
  initialize() {
18
- window.Flutter || (this.premissions = this.getPremissions());
18
+ window.flutter_inappwebview || (this.premissions = this.getPremissions());
19
19
  }
20
20
  }
21
21
  class h {
@@ -26,10 +26,10 @@ class h {
26
26
  i(this, "cachedInfo");
27
27
  i(this, "infoRequests");
28
28
  i(this, "premissionEvent");
29
- this.handlers = /* @__PURE__ */ new Map(), this.isInitialized = !1, this.isBrowserMode = !1, this.cachedInfo = /* @__PURE__ */ new Map(), this.infoRequests = /* @__PURE__ */ new Map(), this.premissionEvent = new p(), this.initialize();
29
+ this.handlers = /* @__PURE__ */ new Map(), this.isInitialized = !1, this.isBrowserMode = !1, this.cachedInfo = /* @__PURE__ */ new Map(), this.infoRequests = /* @__PURE__ */ new Map(), this.premissionEvent = new d(), this.initialize();
30
30
  }
31
31
  initialize() {
32
- window.Flutter ? (this.setupMessageHandler(), this.isInitialized = !0, this.isBrowserMode = !1, this.send(n.RequestInfo, {})) : (this.isInitialized = !0, this.isBrowserMode = !0, console.warn("Flutter channel not found. Running in browser mode."));
32
+ window.flutter_inappwebview ? (this.setupMessageHandler(), this.isInitialized = !0, this.isBrowserMode = !1, this.send(n.RequestInfo, {})) : (this.isInitialized = !0, this.isBrowserMode = !0, console.warn("Flutter channel not found. Running in browser mode."));
33
33
  }
34
34
  setupMessageHandler() {
35
35
  window.receiveFromFlutter = (g) => {
@@ -60,13 +60,12 @@ class h {
60
60
  });
61
61
  }
62
62
  send(g, I) {
63
- var s;
64
63
  if (!this.isInitialized) {
65
64
  console.error("SDK not initialized");
66
65
  return;
67
66
  }
68
- const e = { type: g, data: I };
69
- (s = window.Flutter) == null || s.postMessage(JSON.stringify(e));
67
+ const s = JSON.stringify({ type: g, data: I });
68
+ window.flutter_inappwebview && window.flutter_inappwebview.callHandler("Flutter", s).catch((r) => console.error("Error sending message to Flutter:", r));
70
69
  }
71
70
  on(g, I) {
72
71
  const e = this.handlers.get(g) || [];
@@ -97,11 +96,11 @@ class h {
97
96
  }
98
97
  const C = new h();
99
98
  C.getBrowserMode();
100
- const P = {
99
+ const m = {
101
100
  user: {
102
101
  name: "Pham Hong Son"
103
102
  }
104
- }, y = async (A) => {
103
+ }, w = async (A) => {
105
104
  if (C.getBrowserMode()) {
106
105
  if (!C.checkPremissionEvent(n.RequestInfo)) {
107
106
  const e = {
@@ -113,7 +112,7 @@ const P = {
113
112
  const I = {
114
113
  type: t.ResponseInfo,
115
114
  status: o.SUCCESS,
116
- data: P[A]
115
+ data: m[A]
117
116
  };
118
117
  return Promise.resolve(I);
119
118
  }
@@ -137,10 +136,10 @@ const P = {
137
136
  I(c);
138
137
  }), C.setInfoRequest(A, s), C.send(n.RequestInfo, { key: A });
139
138
  });
140
- }, m = {
139
+ }, P = {
141
140
  path: "/hello.png",
142
141
  base64: "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QC8RXhpZgAASUkqAAgAAAAGABIBAwABAAAAAQAAABoBBQABAAAAVgAAABsBBQABAAAAXgAAACgBAwABAAAAAgAAABMCAwABAAAAAQAAAGmHBAABAAAAZgAAAAAAAABgAAAAAQAAAGAAAAABAAAABgAAkAcABAAAADAyMTABkQcABAAAAAECAwAAoAcABAAAADAxMDABoAMAAQAAAP//AAACoAQAAQAAACADAAADoAQAAQAAACADAAAAAAAA/+EOAmh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSfvu78nIGlkPSdXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQnPz4KPHg6eG1wbWV0YSB4bWxuczp4PSdhZG9iZTpuczptZXRhLyc+CjxyZGY6UkRGIHhtbG5zOnJkZj0naHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyc+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpBdHRyaWI9J2h0dHA6Ly9ucy5hdHRyaWJ1dGlvbi5jb20vYWRzLzEuMC8nPgogIDxBdHRyaWI6QWRzPgogICA8cmRmOlNlcT4KICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0nUmVzb3VyY2UnPgogICAgIDxBdHRyaWI6Q3JlYXRlZD4yMDI0LTAyLTIzPC9BdHRyaWI6Q3JlYXRlZD4KICAgICA8QXR0cmliOkV4dElkPjVmNWM3Y2U4LTAzZWYtNDc5NC1iYTJkLTE4ZjRkZjViZjVhYjwvQXR0cmliOkV4dElkPgogICAgIDxBdHRyaWI6RmJJZD41MjUyNjU5MTQxNzk1ODA8L0F0dHJpYjpGYklkPgogICAgIDxBdHRyaWI6VG91Y2hUeXBlPjI8L0F0dHJpYjpUb3VjaFR5cGU+CiAgICA8L3JkZjpsaT4KICAgPC9yZGY6U2VxPgogIDwvQXR0cmliOkFkcz4KIDwvcmRmOkRlc2NyaXB0aW9uPgoKIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PScnCiAgeG1sbnM6ZGM9J2h0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvJz4KICA8ZGM6dGl0bGU+CiAgIDxyZGY6QWx0PgogICAgPHJkZjpsaSB4bWw6bGFuZz0neC1kZWZhdWx0Jz5UaGnhur90IGvhur8gY2jGsGEgY8OzIHTDqm4gLSAzPC9yZGY6bGk+CiAgIDwvcmRmOkFsdD4KICA8L2RjOnRpdGxlPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpwZGY9J2h0dHA6Ly9ucy5hZG9iZS5jb20vcGRmLzEuMy8nPgogIDxwZGY6QXV0aG9yPlF14buzbmggRGnhu4VtPC9wZGY6QXV0aG9yPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczp4bXA9J2h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8nPgogIDx4bXA6Q3JlYXRvclRvb2w+Q2FudmE8L3htcDpDcmVhdG9yVG9vbD4KIDwvcmRmOkRlc2NyaXB0aW9uPgo8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSd3Jz8+/9sAQwAGBAUGBQQGBgUGBwcGCAoQCgoJCQoUDg8MEBcUGBgXFBYWGh0lHxobIxwWFiAsICMmJykqKRkfLTAtKDAlKCko/9sAQwEHBwcKCAoTCgoTKBoWGigoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo/8AAEQgAZABkAwEiAAIRAQMRAf/EABwAAAICAwEBAAAAAAAAAAAAAAAFAQQCAwYHCP/EADMQAAEDAgQEAwgCAgMAAAAAAAEAAgMEEQUSITETQVFhBiJyFCQ0cYGhscEHMiORQtHh/8QAGQEAAwEBAQAAAAAAAAAAAAAAAAECAwQF/8QAHREBAQACAgMBAAAAAAAAAAAAAAECESExAxJBUf/aAAwDAQACEQMRAD8A94QgIXI9BIQgITAQpUIAQhCAFIUKQgMgpUKUESYv8S30D8lCMX0qW+gfkoUq4NQpUBSEyCkKEAEmw1KYTdQsmMc92VgueijYkHdACEBSgIUhAujZAZBTyUBTyQRJjHxLfQPyUIxf4lvoH5KFK4ahCgLW+Utfkawuda6cmykt6beazjeWPDm7jZVBKZSREQ2wuSR9luopjlbIQCRfRPWjywsnJJT4lKMQqIm+cNcRlcfx0T2nfHMxziSDbQd+hXJ07mtxmqD43OcZHWAF7ap02rjhu5t9dC07qZfp5Y/DNSqFNjNJM1zDdjxrmdpbt3TBmV8WdsjT0HVV2gKQhjHPDi1tw3dQ9zY4eI+RjRfYnVBJClLZsZp4mFpYeuYjfsmMcvtFKyYjITYNZYbEInIu4UYqPeG+n9lCMU+Ib6f2UKTMQdFqla7OJI9XAWI6hc3T1b4KOGWrrJWGY+W2w+at1GIS0sLPaHiQucQC3S4VzGxpjjceTZ0jAyR7dHkWIViACGHzt0yGxPXqqNNK2R2R4LnhvE22b3VDxDjFpBC54yhtiG7AdEZXRZ9+sYUzWTVL6h5Di4l2UGw30PzsrL2OkIDAGl2l90jgr6jOPY6TiDk3OBdeeY1/KuL0+JGOhgw+OOO5MdQ8hxsCbX2uQNB8llOeIeWUnNeiyU7Y55XPuTC4Z83O6zhrLGRscrg0HKMp3SjB8ZOPYPBXhjmNxBznPidqY3t0LfoR91ZoYhT1MYkvmJLg1o1OiW9DW16KsruM13FOa1r8j/0mLJ3zgmQvuBzCp4PWYdUwCnpqqmlqm6yRsla5zD3AKt1MQdE5rvK8bO5hM9F80ZrcTpqeM+Vzru5WA3XZlnDiYbjUaN6BI/DGHgSzyyOvKCWF7tgBqU4KqfqM7zqFeKH3hvp/ZQscV+Ib6f2UJocnQzx4lh7cPneI6hhvC52zuyrg176mmwyoaGhkgy3FzbnrzFktiYHtBcLHqU4osZkp2tFSxtRwv6OcfM369FqrHKXjJdrcVkhxOsZCbN4fAJIvppf7pc6OWsqiTmy7E9VXo6+Vra6NrA51a0Ne/YtGbMQPnYJ1TxubDlzAXFxzWXlGN9srUsh4QZJE8At2LOS8+xf+LcNxjxKcSkrpoY5HZnU3DzBx7c7L0vDaXiNyyMbobh1tFejpooaoP1z8y4tH2FyoxtnSrJeyHwtS0+B4RT4ZUvL5InyzGVzbZnPeTft0t2WXi4ifAKqLCA+SsrC2DNCfMyMn/JlPI2WPiyio3Y3RVtC4Q19S8U8pEjmtLCLl+XYuGXpdN6HAoMLwhlPHW1dbUHzConeHSONtxYC/01T52dk9Y+ZfAUdS/wAVxUWHYZ7JWQyn3kZg9jhpZ3Ijt0uvo32+cPMdWY3a5Q+J2h/2sPYCA+V7WCQ6ONtT113+i01lKG0p4b2vdfMCzeyWVuV2WGPrNOm8OyiXNC9278xce6aEWcRe9jZc34Rc6eoybFwA17ldEdCR00VzpF7KsVPvDdf+I/JQscV+Ib6f2UJE4FjLH+x1UmAE3P8ApehnA8McPg2D0uI/axd4fw02PCePlIVqhx9K+OPDqqnfGM0zoyyTTyhpNx9bpjhszJY+CBYjYnchPj4bw11PMCZuK4tyuLrltr3tpzXLhjaPEZYYi4tYbZn72Wfk6X4+6eUxMJsS5/e+yzn4mUiJwAPTQf8Aq0RPAZ0+WyM4Gzr366LOVqWVeAxTvjqJXvfVx3cyUnVp7dE4oqsmERzZc4A0d/U/Pp2PJYcQloJBUxML3AED6hG/wN+IzN4IylxkI56nTqRvbqlNK+SIuJGfMdi03TR9LdhDpBcbA6FKayuZEBFG28g2I3CBFijroqCp8zQGuFyW8l08UsE9MyWGXMTuP2F55XVBMAkt5hqbq94dxT2ecRyG0L+V9u6vGpyx2fYrrUN9P7KFljOQ1d4CTGWgi+/PRCNI2ZXIB1WQJQhaobY25qad5vdhbb6krhXMEmLSZtcxJKELPy9Rfi+mNIS9pDjoFL2AygEkg6WKELFtGmQuZEcjiN1FPUymM3edDZCFP1XxhiE8mUXcTdwH2S+NgjbJKCc5I3PVCFSWms+CqHEklrbi6qw60ubmALIQqxJ0tM9z6OnLnEnJa/1KEIVxm//Z"
143
- }, B = async () => {
142
+ }, y = async () => {
144
143
  if (!C.getInitialized())
145
144
  throw new Error("SDK not initialized");
146
145
  if (C.getBrowserMode()) {
@@ -154,7 +153,7 @@ const P = {
154
153
  const A = {
155
154
  type: t.ResponsePickerImage,
156
155
  status: o.SUCCESS,
157
- data: m
156
+ data: P
158
157
  };
159
158
  return Promise.resolve(A);
160
159
  }
@@ -164,9 +163,9 @@ const P = {
164
163
  };
165
164
  C.on(t.ResponsePickerImage, I), C.send(n.RequestPickerImage, void 0);
166
165
  });
167
- }, G = (A) => {
166
+ }, B = (A) => {
168
167
  C.send(n.RequestCloseApp, A);
169
- }, w = async () => {
168
+ }, G = async () => {
170
169
  if (!C.checkPremissionEvent(n.RequestPickerImage)) {
171
170
  const A = {
172
171
  type: t.ResponseVibrate,
@@ -215,7 +214,7 @@ const P = {
215
214
  };
216
215
  C.on(t.ResponsePremissionsRequest, e), C.send(n.RequestPremissionsRequest, { type: A });
217
216
  });
218
- }, M = async (A) => {
217
+ }, Q = async (A) => {
219
218
  if (!C.getInitialized())
220
219
  throw new Error("SDK not initialized");
221
220
  if (C.getBrowserMode()) {
@@ -239,15 +238,15 @@ export {
239
238
  u as EKeyInfor,
240
239
  l as EPremissionsType,
241
240
  o as EStatus,
242
- d as ETypePayment,
241
+ p as ETypePayment,
243
242
  n as ETypeRequest,
244
243
  t as ETypeResponse,
245
- G as closeApp,
244
+ B as closeApp,
246
245
  E as configUIApp,
247
246
  C as fltSDK,
248
- y as getInfo,
249
- B as openPickerImage,
250
- M as paymentRequest,
247
+ w as getInfo,
248
+ y as openPickerImage,
249
+ Q as paymentRequest,
251
250
  Z as premissionsRequest,
252
- w as vibrate
251
+ G as vibrate
253
252
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "x-app-sdk",
3
3
  "private": false,
4
- "version": "1.0.7",
4
+ "version": "1.0.8-beta.3",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist",