x-app-sdk 1.0.8-beta.5 → 1.0.8

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/README.md CHANGED
@@ -14,37 +14,284 @@ yarn add x-app-sdk
14
14
  ```
15
15
 
16
16
  ## Các tính năng chính
17
- ### 1. SDK tương tác với SuperApp
18
- #### `requestInfo()`
19
- Lấy thông tin từ `superapp`.
17
+
18
+ ### 1. Config - Cấu hình ứng dụng
19
+ #### `configUIApp(config)`
20
+ Cấu hình giao diện ứng dụng trong SuperApp.
21
+ ```js
22
+ import { configUIApp } from 'x-app-sdk';
23
+
24
+ const config = {
25
+ title: 'Tên ứng dụng',
26
+ showHeader: true,
27
+ backgroundColor: '#ffffff'
28
+ };
29
+
30
+ configUIApp(config).then(response => {
31
+ console.log('Cấu hình thành công:', response);
32
+ }).catch(error => {
33
+ console.error('Lỗi cấu hình:', error);
34
+ });
35
+ ```
36
+
37
+ ### 2. Device - Tương tác thiết bị
38
+ #### `call(phoneNumber)`
39
+ Thực hiện cuộc gọi đến số điện thoại.
40
+ ```js
41
+ import { call } from 'x-app-sdk';
42
+
43
+ call('0123456789').then(() => {
44
+ console.log('Bắt đầu cuộc gọi');
45
+ }).catch(error => {
46
+ console.error('Lỗi cuộc gọi:', error);
47
+ });
48
+ ```
49
+
50
+ #### `sms(phoneNumber)`
51
+ Mở ứng dụng tin nhắn với số điện thoại.
52
+ ```js
53
+ import { sms } from 'x-app-sdk';
54
+
55
+ sms('0123456789').then(() => {
56
+ console.log('Mở ứng dụng tin nhắn');
57
+ }).catch(error => {
58
+ console.error('Lỗi tin nhắn:', error);
59
+ });
60
+ ```
61
+
62
+ #### `vibrate()`
63
+ Kích hoạt rung thiết bị.
64
+ ```js
65
+ import { vibrate } from 'x-app-sdk';
66
+
67
+ vibrate().then(() => {
68
+ console.log('Thiết bị rung');
69
+ }).catch(error => {
70
+ console.error('Lỗi rung:', error);
71
+ });
72
+ ```
73
+
74
+ ### 3. Location - Dịch vụ vị trí
75
+ #### `currentLocation()`
76
+ Lấy vị trí hiện tại của thiết bị.
77
+ ```js
78
+ import { currentLocation } from 'x-app-sdk';
79
+
80
+ currentLocation().then(location => {
81
+ console.log('Vị trí hiện tại:', location.data);
82
+ }).catch(error => {
83
+ console.error('Lỗi lấy vị trí:', error);
84
+ });
85
+ ```
86
+
87
+ #### `requestLocationPermission()`
88
+ Yêu cầu quyền truy cập vị trí.
89
+ ```js
90
+ import { requestLocationPermission } from 'x-app-sdk';
91
+
92
+ requestLocationPermission().then(response => {
93
+ console.log('Quyền vị trí:', response);
94
+ }).catch(error => {
95
+ console.error('Lỗi quyền vị trí:', error);
96
+ });
97
+ ```
98
+
99
+ ### 4. Media - Xử lý phương tiện
100
+ #### `openPickerImage(type)`
101
+ Mở trình chọn ảnh từ thiết bị.
102
+ ```js
103
+ import { openPickerImage, EMediaType } from 'x-app-sdk';
104
+
105
+ openPickerImage(EMediaType.GALLERY).then(imageData => {
106
+ console.log('Dữ liệu ảnh:', imageData.data);
107
+ }).catch(error => {
108
+ console.error('Lỗi chọn ảnh:', error);
109
+ });
110
+ ```
111
+
112
+ #### `openPickerFile()`
113
+ Mở trình chọn file từ thiết bị.
114
+ ```js
115
+ import { openPickerFile } from 'x-app-sdk';
116
+
117
+ openPickerFile().then(fileData => {
118
+ console.log('Dữ liệu file:', fileData.data);
119
+ }).catch(error => {
120
+ console.error('Lỗi chọn file:', error);
121
+ });
122
+ ```
123
+
124
+ ### 5. Notification - Thông báo
125
+ #### `listenNotifiactionEvent(callback)`
126
+ Lắng nghe các sự kiện thông báo từ SuperApp.
127
+ ```js
128
+ import { listenNotifiactionEvent } from 'x-app-sdk';
129
+
130
+ const unsubscribe = listenNotifiactionEvent((data) => {
131
+ console.log('Thông báo mới:', data);
132
+ });
133
+
134
+ // Để hủy lắng nghe
135
+ unsubscribe();
136
+ ```
137
+
138
+ ### 6. Payment - Thanh toán
139
+ #### `paymentRequest(body)`
140
+ Thực hiện yêu cầu thanh toán qua SuperApp.
20
141
  ```js
21
- import { requestInfo } from 'x-app-sdk';
142
+ import { paymentRequest } from 'x-app-sdk';
22
143
 
23
- requestInfo().then(info => {
24
- console.log('Thông tin ứng dụng:', info);
144
+ const paymentData = {
145
+ amount: 100000,
146
+ description: 'Thanh toán đơn hàng',
147
+ orderId: 'ORDER123'
148
+ };
149
+
150
+ paymentRequest(paymentData).then(result => {
151
+ console.log('Kết quả thanh toán:', result.data);
25
152
  }).catch(error => {
26
- console.error('Lỗi khi lấy thông tin:', error);
153
+ console.error('Lỗi thanh toán:', error);
154
+ });
155
+ ```
156
+
157
+ #### `listenPaymentEvent(callback)`
158
+ Lắng nghe các sự kiện thanh toán.
159
+ ```js
160
+ import { listenPaymentEvent } from 'x-app-sdk';
161
+
162
+ const unsubscribe = listenPaymentEvent((data) => {
163
+ console.log('Sự kiện thanh toán:', data);
27
164
  });
165
+
166
+ // Để hủy lắng nghe
167
+ unsubscribe();
28
168
  ```
29
169
 
30
- #### `openPickerImage()`
31
- Mở trình chọn ảnh từ `superapp`.
170
+ ### 7. Permission - Quyền truy cập
171
+ #### `premissionsRequest(type)`
172
+ Yêu cầu quyền truy cập cho một tính năng cụ thể.
32
173
  ```js
33
- import { openPickerImage } from 'x-app-sdk';
174
+ import { premissionsRequest, ETypeRequest } from 'x-app-sdk';
34
175
 
35
- openPickerImage().then(imageData => {
36
- console.log('Dữ liệu ảnh:', imageData);
176
+ premissionsRequest(ETypeRequest.RequestPickerImage).then(granted => {
177
+ if (granted.data) {
178
+ console.log('Quyền được cấp');
179
+ } else {
180
+ console.log('Quyền bị từ chối');
181
+ }
37
182
  }).catch(error => {
38
- console.error('Lỗi khi mở trình chọn ảnh:', error);
183
+ console.error('Lỗi kiểm tra quyền:', error);
39
184
  });
40
185
  ```
41
186
 
42
- #### `closeApp()`
43
- Đóng ứng dụng từ `superapp`.
187
+ ### 8. Routing - Điều hướng
188
+ #### `closeApp(data?)`
189
+ Đóng ứng dụng và trả về SuperApp.
44
190
  ```js
45
191
  import { closeApp } from 'x-app-sdk';
46
192
 
193
+ // Đóng ứng dụng
47
194
  closeApp();
195
+
196
+ // Đóng ứng dụng với dữ liệu trả về
197
+ closeApp({ result: 'success', data: 'some data' });
198
+ ```
199
+
200
+ ### 9. Store - Lưu trữ cục bộ
201
+ #### `saveStore(data)`
202
+ Lưu dữ liệu vào bộ nhớ cục bộ của SuperApp.
203
+ ```js
204
+ import { saveStore } from 'x-app-sdk';
205
+
206
+ const data = JSON.stringify({ key: 'value' });
207
+ saveStore(data).then(() => {
208
+ console.log('Dữ liệu đã được lưu');
209
+ }).catch(error => {
210
+ console.error('Lỗi lưu dữ liệu:', error);
211
+ });
212
+ ```
213
+
214
+ #### `getStore()`
215
+ Lấy dữ liệu từ bộ nhớ cục bộ.
216
+ ```js
217
+ import { getStore } from 'x-app-sdk';
218
+
219
+ getStore().then(result => {
220
+ const data = JSON.parse(result.data);
221
+ console.log('Dữ liệu lấy được:', data);
222
+ }).catch(error => {
223
+ console.error('Lỗi lấy dữ liệu:', error);
224
+ });
225
+ ```
226
+
227
+ #### `clearStore()`
228
+ Xóa tất cả dữ liệu trong bộ nhớ cục bộ.
229
+ ```js
230
+ import { clearStore } from 'x-app-sdk';
231
+
232
+ clearStore().then(() => {
233
+ console.log('Dữ liệu đã được xóa');
234
+ }).catch(error => {
235
+ console.error('Lỗi xóa dữ liệu:', error);
236
+ });
237
+ ```
238
+
239
+ ### 10. User - Thông tin người dùng
240
+ #### `getInfo(key)`
241
+ Lấy thông tin người dùng từ SuperApp.
242
+ ```js
243
+ import { getInfo, EKeyInfor } from 'x-app-sdk';
244
+
245
+ getInfo(EKeyInfor.USER_ID).then(info => {
246
+ console.log('ID người dùng:', info.data);
247
+ }).catch(error => {
248
+ console.error('Lỗi lấy thông tin:', error);
249
+ });
250
+ ```
251
+
252
+ ## Lưu ý quan trọng
253
+
254
+ - Tất cả các API đều yêu cầu SDK được khởi tạo trước khi sử dụng
255
+ - Một số tính năng yêu cầu quyền truy cập từ người dùng
256
+ - Khi chạy trong browser mode, một số tính năng sẽ trả về dữ liệu mẫu
257
+ - Luôn xử lý lỗi (catch) khi gọi các API bất đồng bộ
258
+ - Nhớ hủy đăng ký các listener khi không cần thiết để tránh memory leak
259
+
260
+ ## Import tổng hợp
261
+
262
+ Bạn có thể import tất cả các services từ entry point chính:
263
+ ```js
264
+ import {
265
+ // Config
266
+ configUIApp,
267
+
268
+ // Device
269
+ call, sms, vibrate,
270
+
271
+ // Location
272
+ currentLocation, requestLocationPermission,
273
+
274
+ // Media
275
+ openPickerImage, openPickerFile,
276
+
277
+ // Notification
278
+ listenNotifiactionEvent,
279
+
280
+ // Payment
281
+ paymentRequest, listenPaymentEvent,
282
+
283
+ // Permission
284
+ premissionsRequest,
285
+
286
+ // Routing
287
+ closeApp,
288
+
289
+ // Store
290
+ saveStore, getStore, clearStore,
291
+
292
+ // User
293
+ getInfo
294
+ } from 'x-app-sdk';
48
295
  ```
49
296
 
50
297
  ## Kết luận
package/dist/index.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";var l=Object.defineProperty;var u=(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)=>u(A,typeof g!="symbol"?g+"":g,I);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var o=(A=>(A.RequestConfigUIApp="requestConfigUIApp",A.RequestInfo="requestInfo",A.RequestCloseApp="requestCloseApp",A.RequestPickerImage="requestPickerImage",A.RequestPickerFile="requestPickerFile",A.RequestVibrate="requestVibrate",A.RequestCall="requestCall",A.RequestSms="requestSms",A.RequestLocationPermission="requestLocationPermission",A.RequestCurrentLocation="requestCurrentLocation",A.RequestPayment="requestPayment",A.requestGetPermission="requestGetPermission",A))(o||{}),s=(A=>(A.ResponseConfigApp="responseConfigUIApp",A.ResponseInfo="responseInfo",A.ResponsePickerImage="responsePickerImage",A.ResponsePickerFile="responsePickerFile",A.ResponseVibrate="responseVibrate",A.ResponseCall="responseCall",A.ResponseSms="responseSms",A.ResponseLocationPermission="responseLocationPermission",A.ResponseCurrentLocation="responseCurrentLocation",A.ResponseCloseApp="responseCloseApp",A.ResponsePayment="responsePayment",A.ResponseGetPermisstion="responseGetPermisstion",A))(s||{}),n=(A=>(A.SUCCESS="success",A.ERROR="error",A.PREMISSION_ERROR="premissionError",A))(n||{}),c=(A=>(A.USER="user",A))(c||{}),a=(A=>(A.gallery="gallery",A.camera="camera",A))(a||{});class P{constructor(){i(this,"premissions");i(this,"getPremissions",()=>({[o.RequestInfo]:!0,[o.RequestCloseApp]:!0,[o.RequestPickerImage]:!0,[o.RequestVibrate]:!0}));i(this,"checkPremission",g=>this.premissions[g]??!0);this.premissions={},this.initialize()}initialize(){window.flutter_inappwebview||(this.premissions=this.getPremissions())}}class p{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 P,this.initialize()}initialize(){window.flutter_inappwebview?(this.setupMessageHandler(),this.isInitialized=!0,this.isBrowserMode=!1,this.send(o.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===s.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(t){console.error("Error in message handler:",t)}})}send(g,I){if(!this.isInitialized){console.error("SDK not initialized");return}const t=JSON.stringify({type:g,data:I});window.flutter_inappwebview&&window.flutter_inappwebview.callHandler("Flutter",t).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)||[],t=e.indexOf(I);t>-1&&(e.splice(t,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 p;C.getBrowserMode();const m={user:{name:"Pham Hong Son"}},d=async A=>{if(C.getBrowserMode()){if(!C.checkPremissionEvent(o.RequestInfo)){const e={type:s.ResponseInfo,status:n.PREMISSION_ERROR};return Promise.resolve(e)}const I={type:s.ResponseInfo,status:n.SUCCESS,data:m[A]};return Promise.resolve(I)}const g=C.getCachedInfo(A);if(g!==void 0){const I={type:s.ResponseInfo,status:n.SUCCESS,data:g};return Promise.resolve(I)}return new Promise(I=>{const t=C.getInfoRequests().get(A)||[];t.push(r=>{const R={type:s.ResponseInfo,status:n.SUCCESS,data:r};I(R)}),C.setInfoRequest(A,t),C.send(o.RequestInfo,{key:A})})},h={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={path:"/hello.png",size:12e3,base64:"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QC8RXhpZgAASUkqAAgAAAAGABIBAwABAAAAAQAAABoBBQABAAAAVgAAABsBBQABAAAAXgAAACgBAwABAAAAAgAAABMCAwABAAAAAQAAAGmHBAABAAAAZgAAAAAAAABgAAAAAQAAAGAAAAABAAAABgAAkAcABAAAADAyMTABkQcABAAAAAECAwAAoAcABAAAADAxMDABoAMAAQAAAP//AAACoAQAAQAAACADAAADoAQAAQAAACADAAAAAAAA/+EOAmh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSfvu78nIGlkPSdXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQnPz4KPHg6eG1wbWV0YSB4bWxuczp4PSdhZG9iZTpuczptZXRhLyc+CjxyZGY6UkRGIHhtbG5zOnJkZj0naHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyc+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpBdHRyaWI9J2h0dHA6Ly9ucy5hdHRyaWJ1dGlvbi5jb20vYWRzLzEuMC8nPgogIDxBdHRyaWI6QWRzPgogICA8cmRmOlNlcT4KICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0nUmVzb3VyY2UnPgogICAgIDxBdHRyaWI6Q3JlYXRlZD4yMDI0LTAyLTIzPC9BdHRyaWI6Q3JlYXRlZD4KICAgICA8QXR0cmliOkV4dElkPjVmNWM3Y2U4LTAzZWYtNDc5NC1iYTJkLTE4ZjRkZjViZjVhYjwvQXR0cmliOkV4dElkPgogICAgIDxBdHRyaWI6RmJJZD41MjUyNjU5MTQxNzk1ODA8L0F0dHJpYjpGYklkPgogICAgIDxBdHRyaWI6VG91Y2hUeXBlPjI8L0F0dHJpYjpUb3VjaFR5cGU+CiAgICA8L3JkZjpsaT4KICAgPC9yZGY6U2VxPgogIDwvQXR0cmliOkFkcz4KIDwvcmRmOkRlc2NyaXB0aW9uPgoKIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PScnCiAgeG1sbnM6ZGM9J2h0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvJz4KICA8ZGM6dGl0bGU+CiAgIDxyZGY6QWx0PgogICAgPHJkZjpsaSB4bWw6bGFuZz0neC1kZWZhdWx0Jz5UaGnhur90IGvhur8gY2jGsGEgY8OzIHTDqm4gLSAzPC9yZGY6bGk+CiAgIDwvcmRmOkFsdD4KICA8L2RjOnRpdGxlPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpwZGY9J2h0dHA6Ly9ucy5hZG9iZS5jb20vcGRmLzEuMy8nPgogIDxwZGY6QXV0aG9yPlF14buzbmggRGnhu4VtPC9wZGY6QXV0aG9yPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczp4bXA9J2h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8nPgogIDx4bXA6Q3JlYXRvclRvb2w+Q2FudmE8L3htcDpDcmVhdG9yVG9vbD4KIDwvcmRmOkRlc2NyaXB0aW9uPgo8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg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"},G=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(o.RequestPickerImage)){const I={type:s.ResponsePickerImage,status:n.PREMISSION_ERROR};return Promise.resolve(I)}const g={type:s.ResponsePickerImage,status:n.SUCCESS,data:h};return Promise.resolve(g)}return new Promise((g,I)=>{const e=t=>{t.status===n.ERROR?I(t):g(t),C.off(s.ResponsePickerImage,e)};C.on(s.ResponsePickerImage,e),C.send(o.RequestPickerImage,{type:A})})},Z=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(o.RequestPickerFile)){const g={type:s.ResponsePickerFile,status:n.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:s.ResponsePickerFile,status:n.SUCCESS,data:y};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===n.ERROR?g(e):A(e),C.off(s.ResponsePickerFile,I)};C.on(s.ResponsePickerFile,I),C.send(o.RequestPickerFile,void 0)})},f=A=>{C.send(o.RequestCloseApp,A)},B=async()=>{if(!C.checkPremissionEvent(o.RequestVibrate)){const A={type:s.ResponseVibrate,status:n.PREMISSION_ERROR};return Promise.resolve(A)}C.send(o.RequestVibrate)},E=async A=>{if(!C.checkPremissionEvent(o.RequestCall)){const g={type:s.ResponseCall,status:n.PREMISSION_ERROR};return Promise.resolve(g)}C.send(o.RequestCall,{phoneNumber:A})},Q=async A=>{if(!C.checkPremissionEvent(o.RequestSms)){const g={type:s.ResponseSms,status:n.PREMISSION_ERROR};return Promise.resolve(g)}C.send(o.RequestSms,{phoneNumber:A})},w=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){const g={type:s.ResponseConfigApp,status:n.SUCCESS};return Promise.resolve(g)}return new Promise((g,I)=>{const e=t=>{t.status===n.ERROR?I(t):g(t),C.off(s.ResponseConfigApp,e)};C.on(s.ResponseConfigApp,e),C.send(o.RequestConfigUIApp,A)})},Y=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(o.requestGetPermission)){const I={type:s.ResponseGetPermisstion,status:n.PREMISSION_ERROR};return Promise.resolve(I)}const g={type:s.ResponseGetPermisstion,status:n.SUCCESS,data:!0};return Promise.resolve(g)}return new Promise((g,I)=>{const e=t=>{t.status===n.ERROR?I(t):g(t),C.off(s.ResponseGetPermisstion,e)};C.on(s.ResponseGetPermisstion,e),C.send(o.requestGetPermission,{type:A})})},S=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){const g={type:s.ResponsePayment,status:n.SUCCESS,data:{status:"success"}};return Promise.resolve(g)}return new Promise((g,I)=>{const e=t=>{t.status===n.ERROR?I(t):g(t),C.off(s.ResponsePayment,e)};C.on(s.ResponsePayment,e),C.send(o.RequestPayment,A)})},M=(A,g)=>{const I=g||C;if(!I.getInitialized())throw new Error("SDK not initialized");const e=t=>{A(t)};return I.on(s.ResponsePayment,e),()=>{I.off(s.ResponsePayment,e)}},z=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(o.RequestCurrentLocation)){const g={type:s.ResponseCurrentLocation,status:n.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:s.ResponseCurrentLocation,status:n.SUCCESS};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===n.ERROR?g(e):A(e),C.off(s.ResponseCurrentLocation,I)};C.on(s.ResponseCurrentLocation,I),C.send(o.RequestCurrentLocation)})},K=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(o.RequestLocationPermission)){const g={type:s.ResponseLocationPermission,status:n.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:s.ResponseLocationPermission,status:n.SUCCESS};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===n.ERROR?g(e):A(e),C.off(s.ResponseLocationPermission,I)};C.on(s.ResponseLocationPermission,I),C.send(o.RequestLocationPermission)})};exports.EKeyInfor=c;exports.EMediaType=a;exports.EStatus=n;exports.ETypeRequest=o;exports.ETypeResponse=s;exports.call=E;exports.closeApp=f;exports.configUIApp=w;exports.currentLocation=z;exports.fltSDK=C;exports.getInfo=d;exports.listenPaymentEvent=M;exports.openPickerFile=Z;exports.openPickerImage=G;exports.paymentRequest=S;exports.premissionsRequest=Y;exports.requestLocationPermission=K;exports.sms=Q;exports.vibrate=B;
1
+ "use strict";var R=Object.defineProperty;var u=(A,g,I)=>g in A?R(A,g,{enumerable:!0,configurable:!0,writable:!0,value:I}):A[g]=I;var r=(A,g,I)=>u(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.RequestPickerFile="requestPickerFile",A.RequestVibrate="requestVibrate",A.RequestCall="requestCall",A.RequestSms="requestSms",A.RequestLocationPermission="requestLocationPermission",A.RequestCurrentLocation="requestCurrentLocation",A.RequestPayment="requestPayment",A.requestGetPermission="requestGetPermission",A.requestSaveStore="requestSaveStore",A.requestGetStore="requestGetStore",A.requestClearStore="requestClearStore",A))(n||{}),s=(A=>(A.ResponseConfigApp="responseConfigUIApp",A.ResponseInfo="responseInfo",A.ResponsePickerImage="responsePickerImage",A.ResponsePickerFile="responsePickerFile",A.ResponseVibrate="responseVibrate",A.ResponseCall="responseCall",A.ResponseSms="responseSms",A.ResponseLocationPermission="responseLocationPermission",A.ResponseCurrentLocation="responseCurrentLocation",A.ResponseCloseApp="responseCloseApp",A.ResponsePayment="responsePayment",A.ResponseNotification="responseNotification",A.ResponseGetPermisstion="responseGetPermisstion",A.responseSaveStore="responseSaveStore",A.responseGetStore="responseGetStore",A.responseClearStore="responseClearStore",A))(s||{}),t=(A=>(A.SUCCESS="success",A.ERROR="error",A.PREMISSION_ERROR="premissionError",A))(t||{}),c=(A=>(A.USER="user",A))(c||{}),a=(A=>(A.gallery="gallery",A.camera="camera",A))(a||{});class P{constructor(){r(this,"premissions");r(this,"getPremissions",()=>({[n.RequestInfo]:!0,[n.RequestCloseApp]:!0,[n.RequestPickerImage]:!0,[n.RequestVibrate]:!0}));r(this,"checkPremission",g=>this.premissions[g]??!0);this.premissions={},this.initialize()}initialize(){window.flutter_inappwebview||(this.premissions=this.getPremissions())}}class p{constructor(){r(this,"handlers");r(this,"isInitialized");r(this,"isBrowserMode");r(this,"cachedInfo");r(this,"infoRequests");r(this,"premissionEvent");this.handlers=new Map,this.isInitialized=!1,this.isBrowserMode=!1,this.cachedInfo=new Map,this.infoRequests=new Map,this.premissionEvent=new P,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===s.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(i=>i(e)),this.infoRequests.delete(I)})}handleMessage(g){(this.handlers.get(g.type)||[]).forEach(e=>{try{e(g)}catch(o){console.error("Error in message handler:",o)}})}send(g,I){if(!this.isInitialized){console.error("SDK not initialized");return}const o=JSON.stringify({type:g,data:I});window.flutter_inappwebview&&window.flutter_inappwebview.callHandler("Flutter",o).catch(i=>console.error("Error sending message to Flutter:",i))}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)||[],o=e.indexOf(I);o>-1&&(e.splice(o,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 p;C.getBrowserMode();const m={user:{name:"Pham Hong Son"}},d=async A=>{if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestInfo)){const e={type:s.ResponseInfo,status:t.PREMISSION_ERROR};return Promise.resolve(e)}const I={type:s.ResponseInfo,status:t.SUCCESS,data:m[A]};return Promise.resolve(I)}const g=C.getCachedInfo(A);if(g!==void 0){const I={type:s.ResponseInfo,status:t.SUCCESS,data:g};return Promise.resolve(I)}return new Promise(I=>{const o=C.getInfoRequests().get(A)||[];o.push(i=>{const l={type:s.ResponseInfo,status:t.SUCCESS,data:i};I(l)}),C.setInfoRequest(A,o),C.send(n.RequestInfo,{key:A})})},h={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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"},S={path:"/hello.png",size:12e3,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 A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestPickerImage)){const I={type:s.ResponsePickerImage,status:t.PREMISSION_ERROR};return Promise.resolve(I)}const g={type:s.ResponsePickerImage,status:t.SUCCESS,data:h};return Promise.resolve(g)}return new Promise((g,I)=>{const e=o=>{o.status===t.ERROR?I(o):g(o),C.off(s.ResponsePickerImage,e)};C.on(s.ResponsePickerImage,e),C.send(n.RequestPickerImage,{type:A})})},f=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestPickerFile)){const g={type:s.ResponsePickerFile,status:t.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:s.ResponsePickerFile,status:t.SUCCESS,data:S};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===t.ERROR?g(e):A(e),C.off(s.ResponsePickerFile,I)};C.on(s.ResponsePickerFile,I),C.send(n.RequestPickerFile,void 0)})},G=A=>{C.send(n.RequestCloseApp,A)},E=async()=>{if(!C.checkPremissionEvent(n.RequestVibrate)){const A={type:s.ResponseVibrate,status:t.PREMISSION_ERROR};return Promise.resolve(A)}C.send(n.RequestVibrate)},B=async A=>{if(!C.checkPremissionEvent(n.RequestCall)){const g={type:s.ResponseCall,status:t.PREMISSION_ERROR};return Promise.resolve(g)}C.send(n.RequestCall,{phoneNumber:A})},w=async A=>{if(!C.checkPremissionEvent(n.RequestSms)){const g={type:s.ResponseSms,status:t.PREMISSION_ERROR};return Promise.resolve(g)}C.send(n.RequestSms,{phoneNumber:A})},Z=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){const g={type:s.ResponseConfigApp,status:t.SUCCESS};return Promise.resolve(g)}return new Promise((g,I)=>{const e=o=>{o.status===t.ERROR?I(o):g(o),C.off(s.ResponseConfigApp,e)};C.on(s.ResponseConfigApp,e),C.send(n.RequestConfigUIApp,A)})},Q=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.requestGetPermission)){const I={type:s.ResponseGetPermisstion,status:t.PREMISSION_ERROR};return Promise.resolve(I)}const g={type:s.ResponseGetPermisstion,status:t.SUCCESS,data:!0};return Promise.resolve(g)}return new Promise((g,I)=>{const e=o=>{o.status===t.ERROR?I(o):g(o),C.off(s.ResponseGetPermisstion,e)};C.on(s.ResponseGetPermisstion,e),C.send(n.requestGetPermission,{type:A})})},Y=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){const g={type:s.ResponsePayment,status:t.SUCCESS,data:{status:"success"}};return Promise.resolve(g)}return new Promise((g,I)=>{const e=o=>{o.status===t.ERROR?I(o):g(o),C.off(s.ResponsePayment,e)};C.on(s.ResponsePayment,e),C.send(n.RequestPayment,A)})},M=(A,g)=>{const I=g||C;if(!I.getInitialized())throw new Error("SDK not initialized");const e=o=>{A(o)};return I.on(s.ResponsePayment,e),()=>{I.off(s.ResponsePayment,e)}},z=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestCurrentLocation)){const g={type:s.ResponseCurrentLocation,status:t.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:s.ResponseCurrentLocation,status:t.SUCCESS};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===t.ERROR?g(e):A(e),C.off(s.ResponseCurrentLocation,I)};C.on(s.ResponseCurrentLocation,I),C.send(n.RequestCurrentLocation)})},v=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.RequestLocationPermission)){const g={type:s.ResponseLocationPermission,status:t.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:s.ResponseLocationPermission,status:t.SUCCESS};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===t.ERROR?g(e):A(e),C.off(s.ResponseLocationPermission,I)};C.on(s.ResponseLocationPermission,I),C.send(n.RequestLocationPermission)})},K=(A,g)=>{const I=g||C;if(!I.getInitialized())throw new Error("SDK not initialized");const e=o=>{A(o)};return I.on(s.ResponseNotification,e),()=>{I.off(s.ResponseNotification,e)}},b=async A=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.requestSaveStore)){const I={type:s.responseSaveStore,status:t.PREMISSION_ERROR};return Promise.resolve(I)}const g={type:s.responseSaveStore,status:t.SUCCESS};return Promise.resolve(g)}return new Promise((g,I)=>{const e=o=>{o.status===t.ERROR?I(o):g(o),C.off(s.responseSaveStore,e)};C.on(s.responseSaveStore,e),C.send(n.requestSaveStore,{data:A})})},j=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.requestGetStore)){const g={type:s.responseGetStore,status:t.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:s.responseGetStore,status:t.SUCCESS};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===t.ERROR?g(e):A(e),C.off(s.responseGetStore,I)};C.on(s.responseGetStore,I),C.send(n.requestGetStore)})},k=async()=>{if(!C.getInitialized())throw new Error("SDK not initialized");if(C.getBrowserMode()){if(!C.checkPremissionEvent(n.requestClearStore)){const g={type:s.responseClearStore,status:t.PREMISSION_ERROR};return Promise.resolve(g)}const A={type:s.responseClearStore,status:t.SUCCESS};return Promise.resolve(A)}return new Promise((A,g)=>{const I=e=>{e.status===t.ERROR?g(e):A(e),C.off(s.responseClearStore,I)};C.on(s.responseClearStore,I),C.send(n.requestClearStore)})};exports.EKeyInfor=c;exports.EMediaType=a;exports.EStatus=t;exports.ETypeRequest=n;exports.ETypeResponse=s;exports.call=B;exports.clearStore=k;exports.closeApp=G;exports.configUIApp=Z;exports.currentLocation=z;exports.fltSDK=C;exports.getInfo=d;exports.getStore=j;exports.listenNotifiactionEvent=K;exports.listenPaymentEvent=M;exports.openPickerFile=f;exports.openPickerImage=y;exports.paymentRequest=Y;exports.premissionsRequest=Q;exports.requestLocationPermission=v;exports.saveStore=b;exports.sms=w;exports.vibrate=E;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  export declare const call: (phoneNumber: string) => Promise<FlutterMessageResponse | void>;
2
2
 
3
+ export declare const clearStore: () => Promise<FlutterMessageResponse>;
4
+
3
5
  export declare const closeApp: (data?: Record<string, string | object>) => void;
4
6
 
5
7
  export declare const configUIApp: (config: Partial<IViewUiConfig>) => Promise<FlutterMessageResponse>;
@@ -56,7 +58,10 @@ export declare enum ETypeRequest {
56
58
  RequestLocationPermission = "requestLocationPermission",
57
59
  RequestCurrentLocation = "requestCurrentLocation",
58
60
  RequestPayment = "requestPayment",
59
- requestGetPermission = "requestGetPermission"
61
+ requestGetPermission = "requestGetPermission",
62
+ requestSaveStore = "requestSaveStore",
63
+ requestGetStore = "requestGetStore",
64
+ requestClearStore = "requestClearStore"
60
65
  }
61
66
 
62
67
  export declare enum ETypeResponse {
@@ -71,7 +76,11 @@ export declare enum ETypeResponse {
71
76
  ResponseCurrentLocation = "responseCurrentLocation",
72
77
  ResponseCloseApp = "responseCloseApp",
73
78
  ResponsePayment = "responsePayment",
74
- ResponseGetPermisstion = "responseGetPermisstion"
79
+ ResponseNotification = "responseNotification",
80
+ ResponseGetPermisstion = "responseGetPermisstion",
81
+ responseSaveStore = "responseSaveStore",
82
+ responseGetStore = "responseGetStore",
83
+ responseClearStore = "responseClearStore"
75
84
  }
76
85
 
77
86
  export declare const fltSDK: CoreSdk;
@@ -89,6 +98,8 @@ export declare interface FlutterMessageResponse<T = unknown> {
89
98
 
90
99
  export declare const getInfo: (key: EKeyInfor) => Promise<FlutterMessageResponse>;
91
100
 
101
+ export declare const getStore: () => Promise<FlutterMessageResponse<string>>;
102
+
92
103
  export declare interface ICurrentLocation {
93
104
  latitude: number;
94
105
  longitude: number;
@@ -109,6 +120,10 @@ export declare interface ImageResult {
109
120
  base64: string;
110
121
  }
111
122
 
123
+ export declare interface INotificationResult {
124
+ status: string;
125
+ }
126
+
112
127
  export declare interface IPaymentRequest {
113
128
  partnerOrderId: string;
114
129
  totalAmount: number;
@@ -125,6 +140,8 @@ export declare interface IViewUiConfig {
125
140
  headerTextColor?: string;
126
141
  }
127
142
 
143
+ export declare const listenNotifiactionEvent: (callback: (data: FlutterMessageResponse) => void, customSdk?: typeof fltSDK) => (() => void);
144
+
128
145
  export declare const listenPaymentEvent: (callback: (data: FlutterMessageResponse<IPaymentResult>) => void, customSdk?: typeof fltSDK) => (() => void);
129
146
 
130
147
  export declare interface MessageHandler<T = unknown> {
@@ -141,6 +158,8 @@ export declare const premissionsRequest: (type: ETypeRequest) => Promise<Flutter
141
158
 
142
159
  export declare const requestLocationPermission: () => Promise<FlutterMessageResponse>;
143
160
 
161
+ export declare const saveStore: (data: string) => Promise<FlutterMessageResponse>;
162
+
144
163
  export declare const sms: (phoneNumber: string) => Promise<FlutterMessageResponse | void>;
145
164
 
146
165
  export declare const vibrate: () => Promise<FlutterMessageResponse | void>;
package/dist/index.es.js CHANGED
@@ -1,35 +1,35 @@
1
- var R = Object.defineProperty;
2
- var a = (A, g, I) => g in A ? R(A, g, { enumerable: !0, configurable: !0, writable: !0, value: I }) : A[g] = I;
3
- var i = (A, g, I) => a(A, typeof g != "symbol" ? g + "" : g, I);
4
- var o = /* @__PURE__ */ ((A) => (A.RequestConfigUIApp = "requestConfigUIApp", A.RequestInfo = "requestInfo", A.RequestCloseApp = "requestCloseApp", A.RequestPickerImage = "requestPickerImage", A.RequestPickerFile = "requestPickerFile", A.RequestVibrate = "requestVibrate", A.RequestCall = "requestCall", A.RequestSms = "requestSms", A.RequestLocationPermission = "requestLocationPermission", A.RequestCurrentLocation = "requestCurrentLocation", A.RequestPayment = "requestPayment", A.requestGetPermission = "requestGetPermission", A))(o || {}), s = /* @__PURE__ */ ((A) => (A.ResponseConfigApp = "responseConfigUIApp", A.ResponseInfo = "responseInfo", A.ResponsePickerImage = "responsePickerImage", A.ResponsePickerFile = "responsePickerFile", A.ResponseVibrate = "responseVibrate", A.ResponseCall = "responseCall", A.ResponseSms = "responseSms", A.ResponseLocationPermission = "responseLocationPermission", A.ResponseCurrentLocation = "responseCurrentLocation", A.ResponseCloseApp = "responseCloseApp", A.ResponsePayment = "responsePayment", A.ResponseGetPermisstion = "responseGetPermisstion", A))(s || {}), n = /* @__PURE__ */ ((A) => (A.SUCCESS = "success", A.ERROR = "error", A.PREMISSION_ERROR = "premissionError", A))(n || {}), l = /* @__PURE__ */ ((A) => (A.USER = "user", A))(l || {}), u = /* @__PURE__ */ ((A) => (A.gallery = "gallery", A.camera = "camera", A))(u || {});
1
+ var a = Object.defineProperty;
2
+ var l = (A, g, I) => g in A ? a(A, g, { enumerable: !0, configurable: !0, writable: !0, value: I }) : A[g] = I;
3
+ var r = (A, g, I) => l(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.RequestPickerFile = "requestPickerFile", A.RequestVibrate = "requestVibrate", A.RequestCall = "requestCall", A.RequestSms = "requestSms", A.RequestLocationPermission = "requestLocationPermission", A.RequestCurrentLocation = "requestCurrentLocation", A.RequestPayment = "requestPayment", A.requestGetPermission = "requestGetPermission", A.requestSaveStore = "requestSaveStore", A.requestGetStore = "requestGetStore", A.requestClearStore = "requestClearStore", A))(n || {}), s = /* @__PURE__ */ ((A) => (A.ResponseConfigApp = "responseConfigUIApp", A.ResponseInfo = "responseInfo", A.ResponsePickerImage = "responsePickerImage", A.ResponsePickerFile = "responsePickerFile", A.ResponseVibrate = "responseVibrate", A.ResponseCall = "responseCall", A.ResponseSms = "responseSms", A.ResponseLocationPermission = "responseLocationPermission", A.ResponseCurrentLocation = "responseCurrentLocation", A.ResponseCloseApp = "responseCloseApp", A.ResponsePayment = "responsePayment", A.ResponseNotification = "responseNotification", A.ResponseGetPermisstion = "responseGetPermisstion", A.responseSaveStore = "responseSaveStore", A.responseGetStore = "responseGetStore", A.responseClearStore = "responseClearStore", A))(s || {}), t = /* @__PURE__ */ ((A) => (A.SUCCESS = "success", A.ERROR = "error", A.PREMISSION_ERROR = "premissionError", A))(t || {}), R = /* @__PURE__ */ ((A) => (A.USER = "user", A))(R || {}), u = /* @__PURE__ */ ((A) => (A.gallery = "gallery", A.camera = "camera", A))(u || {});
5
5
  class P {
6
6
  constructor() {
7
- i(this, "premissions");
8
- i(this, "getPremissions", () => ({
9
- [o.RequestInfo]: !0,
10
- [o.RequestCloseApp]: !0,
11
- [o.RequestPickerImage]: !0,
12
- [o.RequestVibrate]: !0
7
+ r(this, "premissions");
8
+ r(this, "getPremissions", () => ({
9
+ [n.RequestInfo]: !0,
10
+ [n.RequestCloseApp]: !0,
11
+ [n.RequestPickerImage]: !0,
12
+ [n.RequestVibrate]: !0
13
13
  }));
14
- i(this, "checkPremission", (g) => this.premissions[g] ?? !0);
14
+ r(this, "checkPremission", (g) => this.premissions[g] ?? !0);
15
15
  this.premissions = {}, this.initialize();
16
16
  }
17
17
  initialize() {
18
18
  window.flutter_inappwebview || (this.premissions = this.getPremissions());
19
19
  }
20
20
  }
21
- class m {
21
+ class p {
22
22
  constructor() {
23
- i(this, "handlers");
24
- i(this, "isInitialized");
25
- i(this, "isBrowserMode");
26
- i(this, "cachedInfo");
27
- i(this, "infoRequests");
28
- i(this, "premissionEvent");
23
+ r(this, "handlers");
24
+ r(this, "isInitialized");
25
+ r(this, "isBrowserMode");
26
+ r(this, "cachedInfo");
27
+ r(this, "infoRequests");
28
+ r(this, "premissionEvent");
29
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();
30
30
  }
31
31
  initialize() {
32
- window.flutter_inappwebview ? (this.setupMessageHandler(), this.isInitialized = !0, this.isBrowserMode = !1, this.send(o.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) => {
@@ -47,15 +47,15 @@ class m {
47
47
  }
48
48
  handleInfoUpdate(g) {
49
49
  g && Object.entries(g).forEach(([I, e]) => {
50
- this.cachedInfo.set(I, e), (this.infoRequests.get(I) || []).forEach((r) => r(e)), this.infoRequests.delete(I);
50
+ this.cachedInfo.set(I, e), (this.infoRequests.get(I) || []).forEach((i) => i(e)), this.infoRequests.delete(I);
51
51
  });
52
52
  }
53
53
  handleMessage(g) {
54
54
  (this.handlers.get(g.type) || []).forEach((e) => {
55
55
  try {
56
56
  e(g);
57
- } catch (t) {
58
- console.error("Error in message handler:", t);
57
+ } catch (o) {
58
+ console.error("Error in message handler:", o);
59
59
  }
60
60
  });
61
61
  }
@@ -64,16 +64,16 @@ class m {
64
64
  console.error("SDK not initialized");
65
65
  return;
66
66
  }
67
- const t = JSON.stringify({ type: g, data: I });
68
- window.flutter_inappwebview && window.flutter_inappwebview.callHandler("Flutter", t).catch((r) => console.error("Error sending message to Flutter:", r));
67
+ const o = JSON.stringify({ type: g, data: I });
68
+ window.flutter_inappwebview && window.flutter_inappwebview.callHandler("Flutter", o).catch((i) => console.error("Error sending message to Flutter:", i));
69
69
  }
70
70
  on(g, I) {
71
71
  const e = this.handlers.get(g) || [];
72
72
  e.push(I), this.handlers.set(g, e);
73
73
  }
74
74
  off(g, I) {
75
- const e = this.handlers.get(g) || [], t = e.indexOf(I);
76
- t > -1 && (e.splice(t, 1), this.handlers.set(g, e));
75
+ const e = this.handlers.get(g) || [], o = e.indexOf(I);
76
+ o > -1 && (e.splice(o, 1), this.handlers.set(g, e));
77
77
  }
78
78
  getBrowserMode() {
79
79
  return this.isBrowserMode;
@@ -94,25 +94,25 @@ class m {
94
94
  return this.premissionEvent.checkPremission(g);
95
95
  }
96
96
  }
97
- const C = new m();
97
+ const C = new p();
98
98
  C.getBrowserMode();
99
- const p = {
99
+ const m = {
100
100
  user: {
101
101
  name: "Pham Hong Son"
102
102
  }
103
103
  }, G = async (A) => {
104
104
  if (C.getBrowserMode()) {
105
- if (!C.checkPremissionEvent(o.RequestInfo)) {
105
+ if (!C.checkPremissionEvent(n.RequestInfo)) {
106
106
  const e = {
107
107
  type: s.ResponseInfo,
108
- status: n.PREMISSION_ERROR
108
+ status: t.PREMISSION_ERROR
109
109
  };
110
110
  return Promise.resolve(e);
111
111
  }
112
112
  const I = {
113
113
  type: s.ResponseInfo,
114
- status: n.SUCCESS,
115
- data: p[A]
114
+ status: t.SUCCESS,
115
+ data: m[A]
116
116
  };
117
117
  return Promise.resolve(I);
118
118
  }
@@ -120,21 +120,21 @@ const p = {
120
120
  if (g !== void 0) {
121
121
  const I = {
122
122
  type: s.ResponseInfo,
123
- status: n.SUCCESS,
123
+ status: t.SUCCESS,
124
124
  data: g
125
125
  };
126
126
  return Promise.resolve(I);
127
127
  }
128
128
  return new Promise((I) => {
129
- const t = C.getInfoRequests().get(A) || [];
130
- t.push((r) => {
129
+ const o = C.getInfoRequests().get(A) || [];
130
+ o.push((i) => {
131
131
  const c = {
132
132
  type: s.ResponseInfo,
133
- status: n.SUCCESS,
134
- data: r
133
+ status: t.SUCCESS,
134
+ data: i
135
135
  };
136
136
  I(c);
137
- }), C.setInfoRequest(A, t), C.send(o.RequestInfo, { key: A });
137
+ }), C.setInfoRequest(A, o), C.send(n.RequestInfo, { key: A });
138
138
  });
139
139
  }, d = {
140
140
  path: "/hello.png",
@@ -143,130 +143,130 @@ const p = {
143
143
  path: "/hello.png",
144
144
  size: 12e3,
145
145
  base64: "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QC8RXhpZgAASUkqAAgAAAAGABIBAwABAAAAAQAAABoBBQABAAAAVgAAABsBBQABAAAAXgAAACgBAwABAAAAAgAAABMCAwABAAAAAQAAAGmHBAABAAAAZgAAAAAAAABgAAAAAQAAAGAAAAABAAAABgAAkAcABAAAADAyMTABkQcABAAAAAECAwAAoAcABAAAADAxMDABoAMAAQAAAP//AAACoAQAAQAAACADAAADoAQAAQAAACADAAAAAAAA/+EOAmh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSfvu78nIGlkPSdXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQnPz4KPHg6eG1wbWV0YSB4bWxuczp4PSdhZG9iZTpuczptZXRhLyc+CjxyZGY6UkRGIHhtbG5zOnJkZj0naHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyc+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpBdHRyaWI9J2h0dHA6Ly9ucy5hdHRyaWJ1dGlvbi5jb20vYWRzLzEuMC8nPgogIDxBdHRyaWI6QWRzPgogICA8cmRmOlNlcT4KICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0nUmVzb3VyY2UnPgogICAgIDxBdHRyaWI6Q3JlYXRlZD4yMDI0LTAyLTIzPC9BdHRyaWI6Q3JlYXRlZD4KICAgICA8QXR0cmliOkV4dElkPjVmNWM3Y2U4LTAzZWYtNDc5NC1iYTJkLTE4ZjRkZjViZjVhYjwvQXR0cmliOkV4dElkPgogICAgIDxBdHRyaWI6RmJJZD41MjUyNjU5MTQxNzk1ODA8L0F0dHJpYjpGYklkPgogICAgIDxBdHRyaWI6VG91Y2hUeXBlPjI8L0F0dHJpYjpUb3VjaFR5cGU+CiAgICA8L3JkZjpsaT4KICAgPC9yZGY6U2VxPgogIDwvQXR0cmliOkFkcz4KIDwvcmRmOkRlc2NyaXB0aW9uPgoKIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PScnCiAgeG1sbnM6ZGM9J2h0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvJz4KICA8ZGM6dGl0bGU+CiAgIDxyZGY6QWx0PgogICAgPHJkZjpsaSB4bWw6bGFuZz0neC1kZWZhdWx0Jz5UaGnhur90IGvhur8gY2jGsGEgY8OzIHTDqm4gLSAzPC9yZGY6bGk+CiAgIDwvcmRmOkFsdD4KICA8L2RjOnRpdGxlPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczpwZGY9J2h0dHA6Ly9ucy5hZG9iZS5jb20vcGRmLzEuMy8nPgogIDxwZGY6QXV0aG9yPlF14buzbmggRGnhu4VtPC9wZGY6QXV0aG9yPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICB4bWxuczp4bXA9J2h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8nPgogIDx4bXA6Q3JlYXRvclRvb2w+Q2FudmE8L3htcDpDcmVhdG9yVG9vbD4KIDwvcmRmOkRlc2NyaXB0aW9uPgo8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg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"
146
- }, Z = async (A) => {
146
+ }, y = async (A) => {
147
147
  if (!C.getInitialized())
148
148
  throw new Error("SDK not initialized");
149
149
  if (C.getBrowserMode()) {
150
- if (!C.checkPremissionEvent(o.RequestPickerImage)) {
150
+ if (!C.checkPremissionEvent(n.RequestPickerImage)) {
151
151
  const I = {
152
152
  type: s.ResponsePickerImage,
153
- status: n.PREMISSION_ERROR
153
+ status: t.PREMISSION_ERROR
154
154
  };
155
155
  return Promise.resolve(I);
156
156
  }
157
157
  const g = {
158
158
  type: s.ResponsePickerImage,
159
- status: n.SUCCESS,
159
+ status: t.SUCCESS,
160
160
  data: d
161
161
  };
162
162
  return Promise.resolve(g);
163
163
  }
164
164
  return new Promise((g, I) => {
165
- const e = (t) => {
166
- t.status === n.ERROR ? I(t) : g(t), C.off(s.ResponsePickerImage, e);
165
+ const e = (o) => {
166
+ o.status === t.ERROR ? I(o) : g(o), C.off(s.ResponsePickerImage, e);
167
167
  };
168
- C.on(s.ResponsePickerImage, e), C.send(o.RequestPickerImage, { type: A });
168
+ C.on(s.ResponsePickerImage, e), C.send(n.RequestPickerImage, { type: A });
169
169
  });
170
- }, B = async () => {
170
+ }, f = async () => {
171
171
  if (!C.getInitialized())
172
172
  throw new Error("SDK not initialized");
173
173
  if (C.getBrowserMode()) {
174
- if (!C.checkPremissionEvent(o.RequestPickerFile)) {
174
+ if (!C.checkPremissionEvent(n.RequestPickerFile)) {
175
175
  const g = {
176
176
  type: s.ResponsePickerFile,
177
- status: n.PREMISSION_ERROR
177
+ status: t.PREMISSION_ERROR
178
178
  };
179
179
  return Promise.resolve(g);
180
180
  }
181
181
  const A = {
182
182
  type: s.ResponsePickerFile,
183
- status: n.SUCCESS,
183
+ status: t.SUCCESS,
184
184
  data: h
185
185
  };
186
186
  return Promise.resolve(A);
187
187
  }
188
188
  return new Promise((A, g) => {
189
189
  const I = (e) => {
190
- e.status === n.ERROR ? g(e) : A(e), C.off(s.ResponsePickerFile, I);
190
+ e.status === t.ERROR ? g(e) : A(e), C.off(s.ResponsePickerFile, I);
191
191
  };
192
- C.on(s.ResponsePickerFile, I), C.send(o.RequestPickerFile, void 0);
192
+ C.on(s.ResponsePickerFile, I), C.send(n.RequestPickerFile, void 0);
193
193
  });
194
- }, f = (A) => {
195
- C.send(o.RequestCloseApp, A);
196
- }, E = async () => {
197
- if (!C.checkPremissionEvent(o.RequestVibrate)) {
194
+ }, E = (A) => {
195
+ C.send(n.RequestCloseApp, A);
196
+ }, B = async () => {
197
+ if (!C.checkPremissionEvent(n.RequestVibrate)) {
198
198
  const A = {
199
199
  type: s.ResponseVibrate,
200
- status: n.PREMISSION_ERROR
200
+ status: t.PREMISSION_ERROR
201
201
  };
202
202
  return Promise.resolve(A);
203
203
  }
204
- C.send(o.RequestVibrate);
205
- }, Q = async (A) => {
206
- if (!C.checkPremissionEvent(o.RequestCall)) {
204
+ C.send(n.RequestVibrate);
205
+ }, w = async (A) => {
206
+ if (!C.checkPremissionEvent(n.RequestCall)) {
207
207
  const g = {
208
208
  type: s.ResponseCall,
209
- status: n.PREMISSION_ERROR
209
+ status: t.PREMISSION_ERROR
210
210
  };
211
211
  return Promise.resolve(g);
212
212
  }
213
- C.send(o.RequestCall, { phoneNumber: A });
214
- }, w = async (A) => {
215
- if (!C.checkPremissionEvent(o.RequestSms)) {
213
+ C.send(n.RequestCall, { phoneNumber: A });
214
+ }, Z = async (A) => {
215
+ if (!C.checkPremissionEvent(n.RequestSms)) {
216
216
  const g = {
217
217
  type: s.ResponseSms,
218
- status: n.PREMISSION_ERROR
218
+ status: t.PREMISSION_ERROR
219
219
  };
220
220
  return Promise.resolve(g);
221
221
  }
222
- C.send(o.RequestSms, { phoneNumber: A });
223
- }, Y = async (A) => {
222
+ C.send(n.RequestSms, { phoneNumber: A });
223
+ }, Q = async (A) => {
224
224
  if (!C.getInitialized())
225
225
  throw new Error("SDK not initialized");
226
226
  if (C.getBrowserMode()) {
227
227
  const g = {
228
228
  type: s.ResponseConfigApp,
229
- status: n.SUCCESS
229
+ status: t.SUCCESS
230
230
  };
231
231
  return Promise.resolve(g);
232
232
  }
233
233
  return new Promise((g, I) => {
234
- const e = (t) => {
235
- t.status === n.ERROR ? I(t) : g(t), C.off(s.ResponseConfigApp, e);
234
+ const e = (o) => {
235
+ o.status === t.ERROR ? I(o) : g(o), C.off(s.ResponseConfigApp, e);
236
236
  };
237
- C.on(s.ResponseConfigApp, e), C.send(o.RequestConfigUIApp, A);
237
+ C.on(s.ResponseConfigApp, e), C.send(n.RequestConfigUIApp, A);
238
238
  });
239
- }, M = async (A) => {
239
+ }, Y = async (A) => {
240
240
  if (!C.getInitialized())
241
241
  throw new Error("SDK not initialized");
242
242
  if (C.getBrowserMode()) {
243
- if (!C.checkPremissionEvent(o.requestGetPermission)) {
243
+ if (!C.checkPremissionEvent(n.requestGetPermission)) {
244
244
  const I = {
245
245
  type: s.ResponseGetPermisstion,
246
- status: n.PREMISSION_ERROR
246
+ status: t.PREMISSION_ERROR
247
247
  };
248
248
  return Promise.resolve(I);
249
249
  }
250
250
  const g = {
251
251
  type: s.ResponseGetPermisstion,
252
- status: n.SUCCESS,
252
+ status: t.SUCCESS,
253
253
  data: !0
254
254
  };
255
255
  return Promise.resolve(g);
256
256
  }
257
257
  return new Promise((g, I) => {
258
- const e = (t) => {
259
- t.status === n.ERROR ? I(t) : g(t), C.off(s.ResponseGetPermisstion, e);
258
+ const e = (o) => {
259
+ o.status === t.ERROR ? I(o) : g(o), C.off(s.ResponseGetPermisstion, e);
260
260
  };
261
- C.on(s.ResponseGetPermisstion, e), C.send(o.requestGetPermission, { type: A });
261
+ C.on(s.ResponseGetPermisstion, e), C.send(n.requestGetPermission, { type: A });
262
262
  });
263
- }, S = async (A) => {
263
+ }, z = async (A) => {
264
264
  if (!C.getInitialized())
265
265
  throw new Error("SDK not initialized");
266
266
  if (C.getBrowserMode()) {
267
267
  const g = {
268
268
  type: s.ResponsePayment,
269
- status: n.SUCCESS,
269
+ status: t.SUCCESS,
270
270
  data: {
271
271
  status: "success"
272
272
  }
@@ -274,17 +274,17 @@ const p = {
274
274
  return Promise.resolve(g);
275
275
  }
276
276
  return new Promise((g, I) => {
277
- const e = (t) => {
278
- t.status === n.ERROR ? I(t) : g(t), C.off(s.ResponsePayment, e);
277
+ const e = (o) => {
278
+ o.status === t.ERROR ? I(o) : g(o), C.off(s.ResponsePayment, e);
279
279
  };
280
- C.on(s.ResponsePayment, e), C.send(o.RequestPayment, A);
280
+ C.on(s.ResponsePayment, e), C.send(n.RequestPayment, A);
281
281
  });
282
- }, z = (A, g) => {
282
+ }, M = (A, g) => {
283
283
  const I = g || C;
284
284
  if (!I.getInitialized())
285
285
  throw new Error("SDK not initialized");
286
- const e = (t) => {
287
- A(t);
286
+ const e = (o) => {
287
+ A(o);
288
288
  };
289
289
  return I.on(s.ResponsePayment, e), () => {
290
290
  I.off(s.ResponsePayment, e);
@@ -293,67 +293,150 @@ const p = {
293
293
  if (!C.getInitialized())
294
294
  throw new Error("SDK not initialized");
295
295
  if (C.getBrowserMode()) {
296
- if (!C.checkPremissionEvent(o.RequestCurrentLocation)) {
296
+ if (!C.checkPremissionEvent(n.RequestCurrentLocation)) {
297
297
  const g = {
298
298
  type: s.ResponseCurrentLocation,
299
- status: n.PREMISSION_ERROR
299
+ status: t.PREMISSION_ERROR
300
300
  };
301
301
  return Promise.resolve(g);
302
302
  }
303
303
  const A = {
304
304
  type: s.ResponseCurrentLocation,
305
- status: n.SUCCESS
305
+ status: t.SUCCESS
306
306
  };
307
307
  return Promise.resolve(A);
308
308
  }
309
309
  return new Promise((A, g) => {
310
310
  const I = (e) => {
311
- e.status === n.ERROR ? g(e) : A(e), C.off(s.ResponseCurrentLocation, I);
311
+ e.status === t.ERROR ? g(e) : A(e), C.off(s.ResponseCurrentLocation, I);
312
312
  };
313
- C.on(s.ResponseCurrentLocation, I), C.send(o.RequestCurrentLocation);
313
+ C.on(s.ResponseCurrentLocation, I), C.send(n.RequestCurrentLocation);
314
314
  });
315
- }, b = async () => {
315
+ }, v = async () => {
316
316
  if (!C.getInitialized())
317
317
  throw new Error("SDK not initialized");
318
318
  if (C.getBrowserMode()) {
319
- if (!C.checkPremissionEvent(o.RequestLocationPermission)) {
319
+ if (!C.checkPremissionEvent(n.RequestLocationPermission)) {
320
320
  const g = {
321
321
  type: s.ResponseLocationPermission,
322
- status: n.PREMISSION_ERROR
322
+ status: t.PREMISSION_ERROR
323
323
  };
324
324
  return Promise.resolve(g);
325
325
  }
326
326
  const A = {
327
327
  type: s.ResponseLocationPermission,
328
- status: n.SUCCESS
328
+ status: t.SUCCESS
329
+ };
330
+ return Promise.resolve(A);
331
+ }
332
+ return new Promise((A, g) => {
333
+ const I = (e) => {
334
+ e.status === t.ERROR ? g(e) : A(e), C.off(s.ResponseLocationPermission, I);
335
+ };
336
+ C.on(s.ResponseLocationPermission, I), C.send(n.RequestLocationPermission);
337
+ });
338
+ }, b = (A, g) => {
339
+ const I = g || C;
340
+ if (!I.getInitialized())
341
+ throw new Error("SDK not initialized");
342
+ const e = (o) => {
343
+ A(o);
344
+ };
345
+ return I.on(s.ResponseNotification, e), () => {
346
+ I.off(s.ResponseNotification, e);
347
+ };
348
+ }, j = async (A) => {
349
+ if (!C.getInitialized())
350
+ throw new Error("SDK not initialized");
351
+ if (C.getBrowserMode()) {
352
+ if (!C.checkPremissionEvent(n.requestSaveStore)) {
353
+ const I = {
354
+ type: s.responseSaveStore,
355
+ status: t.PREMISSION_ERROR
356
+ };
357
+ return Promise.resolve(I);
358
+ }
359
+ const g = {
360
+ type: s.responseSaveStore,
361
+ status: t.SUCCESS
362
+ };
363
+ return Promise.resolve(g);
364
+ }
365
+ return new Promise((g, I) => {
366
+ const e = (o) => {
367
+ o.status === t.ERROR ? I(o) : g(o), C.off(s.responseSaveStore, e);
368
+ };
369
+ C.on(s.responseSaveStore, e), C.send(n.requestSaveStore, { data: A });
370
+ });
371
+ }, k = async () => {
372
+ if (!C.getInitialized())
373
+ throw new Error("SDK not initialized");
374
+ if (C.getBrowserMode()) {
375
+ if (!C.checkPremissionEvent(n.requestGetStore)) {
376
+ const g = {
377
+ type: s.responseGetStore,
378
+ status: t.PREMISSION_ERROR
379
+ };
380
+ return Promise.resolve(g);
381
+ }
382
+ const A = {
383
+ type: s.responseGetStore,
384
+ status: t.SUCCESS
385
+ };
386
+ return Promise.resolve(A);
387
+ }
388
+ return new Promise((A, g) => {
389
+ const I = (e) => {
390
+ e.status === t.ERROR ? g(e) : A(e), C.off(s.responseGetStore, I);
391
+ };
392
+ C.on(s.responseGetStore, I), C.send(n.requestGetStore);
393
+ });
394
+ }, D = async () => {
395
+ if (!C.getInitialized())
396
+ throw new Error("SDK not initialized");
397
+ if (C.getBrowserMode()) {
398
+ if (!C.checkPremissionEvent(n.requestClearStore)) {
399
+ const g = {
400
+ type: s.responseClearStore,
401
+ status: t.PREMISSION_ERROR
402
+ };
403
+ return Promise.resolve(g);
404
+ }
405
+ const A = {
406
+ type: s.responseClearStore,
407
+ status: t.SUCCESS
329
408
  };
330
409
  return Promise.resolve(A);
331
410
  }
332
411
  return new Promise((A, g) => {
333
412
  const I = (e) => {
334
- e.status === n.ERROR ? g(e) : A(e), C.off(s.ResponseLocationPermission, I);
413
+ e.status === t.ERROR ? g(e) : A(e), C.off(s.responseClearStore, I);
335
414
  };
336
- C.on(s.ResponseLocationPermission, I), C.send(o.RequestLocationPermission);
415
+ C.on(s.responseClearStore, I), C.send(n.requestClearStore);
337
416
  });
338
417
  };
339
418
  export {
340
- l as EKeyInfor,
419
+ R as EKeyInfor,
341
420
  u as EMediaType,
342
- n as EStatus,
343
- o as ETypeRequest,
421
+ t as EStatus,
422
+ n as ETypeRequest,
344
423
  s as ETypeResponse,
345
- Q as call,
346
- f as closeApp,
347
- Y as configUIApp,
424
+ w as call,
425
+ D as clearStore,
426
+ E as closeApp,
427
+ Q as configUIApp,
348
428
  K as currentLocation,
349
429
  C as fltSDK,
350
430
  G as getInfo,
351
- z as listenPaymentEvent,
352
- B as openPickerFile,
353
- Z as openPickerImage,
354
- S as paymentRequest,
355
- M as premissionsRequest,
356
- b as requestLocationPermission,
357
- w as sms,
358
- E as vibrate
431
+ k as getStore,
432
+ b as listenNotifiactionEvent,
433
+ M as listenPaymentEvent,
434
+ f as openPickerFile,
435
+ y as openPickerImage,
436
+ z as paymentRequest,
437
+ Y as premissionsRequest,
438
+ v as requestLocationPermission,
439
+ j as saveStore,
440
+ Z as sms,
441
+ B as vibrate
359
442
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "x-app-sdk",
3
3
  "private": false,
4
- "version": "1.0.8-beta.5",
4
+ "version": "1.0.8",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist",