@vqh2602/mini-app-sdk 0.0.0-stage → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +57 -2
- package/dist/client.d.ts +44 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +94 -0
- package/dist/client.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/modules/auth.d.ts +30 -0
- package/dist/modules/auth.d.ts.map +1 -0
- package/dist/modules/auth.js +37 -0
- package/dist/modules/auth.js.map +1 -0
- package/dist/modules/device.d.ts +34 -0
- package/dist/modules/device.d.ts.map +1 -0
- package/dist/modules/device.js +46 -0
- package/dist/modules/device.js.map +1 -0
- package/dist/modules/lifecycle.d.ts +19 -0
- package/dist/modules/lifecycle.d.ts.map +1 -0
- package/dist/modules/lifecycle.js +25 -0
- package/dist/modules/lifecycle.js.map +1 -0
- package/dist/modules/media.d.ts +15 -0
- package/dist/modules/media.d.ts.map +1 -0
- package/dist/modules/media.js +19 -0
- package/dist/modules/media.js.map +1 -0
- package/dist/modules/navigation.d.ts +19 -0
- package/dist/modules/navigation.d.ts.map +1 -0
- package/dist/modules/navigation.js +25 -0
- package/dist/modules/navigation.js.map +1 -0
- package/dist/modules/payment.d.ts +15 -0
- package/dist/modules/payment.d.ts.map +1 -0
- package/dist/modules/payment.js +25 -0
- package/dist/modules/payment.js.map +1 -0
- package/dist/modules/storage.d.ts +26 -0
- package/dist/modules/storage.d.ts.map +1 -0
- package/dist/modules/storage.js +46 -0
- package/dist/modules/storage.js.map +1 -0
- package/dist/modules/ui.d.ts +46 -0
- package/dist/modules/ui.d.ts.map +1 -0
- package/dist/modules/ui.js +72 -0
- package/dist/modules/ui.js.map +1 -0
- package/dist/types/index.d.ts +135 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/package.json +37 -4
package/README.md
CHANGED
|
@@ -1,3 +1,58 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @vqh2602/mini-app-sdk
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Bộ TypeScript SDK chính thức dành cho các nhà phát triển thứ ba xây dựng ứng dụng nhỏ (Mini App) trên nền tảng SuperApp.
|
|
4
|
+
|
|
5
|
+
## 🚀 Tính năng nổi bật
|
|
6
|
+
|
|
7
|
+
- **100% TypeScript**: Định kiểu rõ ràng, tự động gợi ý code (IntelliSense) cho mọi hàm và tham số.
|
|
8
|
+
- **Tự động chuyển đổi môi trường**: Chạy mượt mà trên cả Flutter WebView thật, trong iframe Browser Simulator, hay độc lập (Mock Engine tự động).
|
|
9
|
+
- **Hỗ trợ đầy đủ nghiệp vụ SuperApp**:
|
|
10
|
+
- `auth`: Đăng nhập, cấp quyền OAuth, lấy User Profile, quản lý token.
|
|
11
|
+
- `payment`: Tích hợp thanh toán trực tiếp qua ví SuperApp.
|
|
12
|
+
- `device`: Pin, thông tin mạng, rung xúc giác haptic feedback, thông số màn hình.
|
|
13
|
+
- `storage`: Lưu trữ key-value cách ly và an toàn theo từng Mini App.
|
|
14
|
+
- `ui`: Toast thông báo, Alert, Confirm, đổi tiêu đề thanh điều hướng.
|
|
15
|
+
- `media`: Quét QR code camera, chọn ảnh.
|
|
16
|
+
- `lifecycle`: Bắt sự kiện app vào nền (Background) hoặc ra màn hình (Foreground).
|
|
17
|
+
|
|
18
|
+
## 📦 Cài đặt
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npm install @vqh2602/mini-app-sdk
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## 💡 Hướng dẫn nhanh (Quickstart)
|
|
25
|
+
|
|
26
|
+
```typescript
|
|
27
|
+
import superApp from '@vqh2602/mini-app-sdk';
|
|
28
|
+
|
|
29
|
+
// 1. Đăng nhập người dùng
|
|
30
|
+
const authData = await superApp.auth.login({
|
|
31
|
+
scopes: ['user.profile', 'user.phone'],
|
|
32
|
+
});
|
|
33
|
+
console.log('Xin chào:', authData.user.name);
|
|
34
|
+
|
|
35
|
+
// 2. Gọi thanh toán đơn hàng
|
|
36
|
+
try {
|
|
37
|
+
const result = await superApp.payment.requestPayment({
|
|
38
|
+
orderId: 'ORDER_12345',
|
|
39
|
+
amount: 50000,
|
|
40
|
+
description: 'Thanh toán cà phê sữa đá',
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
if (result.status === 'SUCCESS') {
|
|
44
|
+
await superApp.ui.showToast('Thanh toán thành công!');
|
|
45
|
+
}
|
|
46
|
+
} catch (error) {
|
|
47
|
+
await superApp.ui.showToast('Giao dịch thất bại');
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// 3. Đọc ghi bộ nhớ cục bộ
|
|
51
|
+
await superApp.storage.setItem('user_cart', { items: 2, total: 50000 });
|
|
52
|
+
const cart = await superApp.storage.getItem('user_cart');
|
|
53
|
+
|
|
54
|
+
// 4. Lắng nghe trạng thái ứng dụng
|
|
55
|
+
superApp.lifecycle.onAppShow(() => {
|
|
56
|
+
console.log('Mini App hiển thị trở lại');
|
|
57
|
+
});
|
|
58
|
+
```
|
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { ITransport, TransportType } from '@vqh2602/sdk-transport';
|
|
2
|
+
import { SDKMockEngine } from '@vqh2602/sdk-mock-engine';
|
|
3
|
+
import { AuthModule } from './modules/auth.js';
|
|
4
|
+
import { DeviceModule } from './modules/device.js';
|
|
5
|
+
import { StorageModule } from './modules/storage.js';
|
|
6
|
+
import { UIModule } from './modules/ui.js';
|
|
7
|
+
import { NavigationModule } from './modules/navigation.js';
|
|
8
|
+
import { MediaModule } from './modules/media.js';
|
|
9
|
+
import { LifecycleModule } from './modules/lifecycle.js';
|
|
10
|
+
import { AuthLoginOptions, AuthLoginResult, ConfigAppViewOptions, KeepScreenOptions, MinimizeAppResult, NotificationResult, RequestSendNotificationOptions, SDKInitOptions, SetNavigationBarColorOptions, ToastOptions, UserProfile } from './types/index.js';
|
|
11
|
+
export declare class SuperAppSDK {
|
|
12
|
+
readonly version = "1.0.0";
|
|
13
|
+
readonly transport: ITransport;
|
|
14
|
+
readonly mockEngine?: SDKMockEngine;
|
|
15
|
+
readonly auth: AuthModule;
|
|
16
|
+
readonly device: DeviceModule;
|
|
17
|
+
readonly storage: StorageModule;
|
|
18
|
+
readonly ui: UIModule;
|
|
19
|
+
readonly navigation: NavigationModule;
|
|
20
|
+
readonly media: MediaModule;
|
|
21
|
+
readonly lifecycle: LifecycleModule;
|
|
22
|
+
constructor(options?: SDKInitOptions & {
|
|
23
|
+
forceTransport?: TransportType;
|
|
24
|
+
});
|
|
25
|
+
login(options?: AuthLoginOptions): Promise<AuthLoginResult>;
|
|
26
|
+
getUserProfile(): Promise<UserProfile>;
|
|
27
|
+
showToast(options: ToastOptions | string): Promise<void>;
|
|
28
|
+
vibrate(style?: 'light' | 'medium' | 'heavy'): Promise<void>;
|
|
29
|
+
closeApp(): Promise<void>;
|
|
30
|
+
minimizeApp(): Promise<MinimizeAppResult>;
|
|
31
|
+
configAppView(options: ConfigAppViewOptions): Promise<any>;
|
|
32
|
+
setNavigationBarTitle(title: string | {
|
|
33
|
+
title: string;
|
|
34
|
+
}): Promise<void>;
|
|
35
|
+
setNavigationBarColor(options: SetNavigationBarColorOptions | string): Promise<void>;
|
|
36
|
+
keepScreen(options?: KeepScreenOptions | boolean): Promise<{
|
|
37
|
+
success: boolean;
|
|
38
|
+
keepScreenOn: boolean;
|
|
39
|
+
}>;
|
|
40
|
+
requestSendNotification(options?: RequestSendNotificationOptions): Promise<NotificationResult>;
|
|
41
|
+
on(event: string, callback: (payload: any) => void): () => void;
|
|
42
|
+
off(event: string, callback: (payload: any) => void): void;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA0C,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC3G,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,8BAA8B,EAC9B,cAAc,EACd,4BAA4B,EAC5B,YAAY,EACZ,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B,qBAAa,WAAW;IACtB,SAAgB,OAAO,WAAW;IAClC,SAAgB,SAAS,EAAE,UAAU,CAAC;IACtC,SAAgB,UAAU,CAAC,EAAE,aAAa,CAAC;IAG3C,SAAgB,IAAI,EAAE,UAAU,CAAC;IACjC,SAAgB,MAAM,EAAE,YAAY,CAAC;IACrC,SAAgB,OAAO,EAAE,aAAa,CAAC;IACvC,SAAgB,EAAE,EAAE,QAAQ,CAAC;IAC7B,SAAgB,UAAU,EAAE,gBAAgB,CAAC;IAC7C,SAAgB,KAAK,EAAE,WAAW,CAAC;IACnC,SAAgB,SAAS,EAAE,eAAe,CAAC;gBAE/B,OAAO,GAAE,cAAc,GAAG;QAAE,cAAc,CAAC,EAAE,aAAa,CAAA;KAAO;IAsCtE,KAAK,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IAI3D,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAItC,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5D,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAIzC,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC;IAI1D,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE,qBAAqB,CAAC,OAAO,EAAE,4BAA4B,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpF,UAAU,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,OAAO,CAAA;KAAE,CAAC;IAIvG,uBAAuB,CAAC,OAAO,CAAC,EAAE,8BAA8B,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAI9F,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,GAAG,MAAM,IAAI;IAI/D,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;CAGlE"}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { MockBridgeTransport, TransportResolver } from '@vqh2602/sdk-transport';
|
|
2
|
+
import { SDKMockEngine } from '@vqh2602/sdk-mock-engine';
|
|
3
|
+
import { AuthModule } from './modules/auth.js';
|
|
4
|
+
import { DeviceModule } from './modules/device.js';
|
|
5
|
+
import { StorageModule } from './modules/storage.js';
|
|
6
|
+
import { UIModule } from './modules/ui.js';
|
|
7
|
+
import { NavigationModule } from './modules/navigation.js';
|
|
8
|
+
import { MediaModule } from './modules/media.js';
|
|
9
|
+
import { LifecycleModule } from './modules/lifecycle.js';
|
|
10
|
+
export class SuperAppSDK {
|
|
11
|
+
version = '1.0.0';
|
|
12
|
+
transport;
|
|
13
|
+
mockEngine;
|
|
14
|
+
// Domain modules
|
|
15
|
+
auth;
|
|
16
|
+
device;
|
|
17
|
+
storage;
|
|
18
|
+
ui;
|
|
19
|
+
navigation;
|
|
20
|
+
media;
|
|
21
|
+
lifecycle;
|
|
22
|
+
constructor(options = {}) {
|
|
23
|
+
// If running in pure mock environment, setup local engine
|
|
24
|
+
let mockEngine;
|
|
25
|
+
let mockDispatcher;
|
|
26
|
+
// Detect if need fallback mock dispatcher
|
|
27
|
+
const needsMock = options.forceTransport === 'mock' ||
|
|
28
|
+
(typeof window === 'undefined' || (!window.FlutterBridge && window.parent === window));
|
|
29
|
+
if (needsMock) {
|
|
30
|
+
mockEngine = new SDKMockEngine({ autoApprovePayment: true });
|
|
31
|
+
mockDispatcher = (req) => mockEngine.dispatch(req);
|
|
32
|
+
}
|
|
33
|
+
this.mockEngine = mockEngine;
|
|
34
|
+
this.transport = TransportResolver.resolve({
|
|
35
|
+
appId: options.appId,
|
|
36
|
+
debug: options.debug,
|
|
37
|
+
timeoutMs: options.timeoutMs,
|
|
38
|
+
forceTransport: options.forceTransport,
|
|
39
|
+
mockDispatcher,
|
|
40
|
+
});
|
|
41
|
+
// If MockBridgeTransport was created and we have mockEngine, attach
|
|
42
|
+
if (this.transport instanceof MockBridgeTransport && mockDispatcher) {
|
|
43
|
+
this.transport.setDispatcher(mockDispatcher);
|
|
44
|
+
}
|
|
45
|
+
this.auth = new AuthModule(this.transport);
|
|
46
|
+
this.device = new DeviceModule(this.transport);
|
|
47
|
+
this.storage = new StorageModule(this.transport);
|
|
48
|
+
this.ui = new UIModule(this.transport);
|
|
49
|
+
this.navigation = new NavigationModule(this.transport);
|
|
50
|
+
this.media = new MediaModule(this.transport);
|
|
51
|
+
this.lifecycle = new LifecycleModule(this.transport);
|
|
52
|
+
}
|
|
53
|
+
// Top-level shortcuts
|
|
54
|
+
login(options) {
|
|
55
|
+
return this.auth.login(options);
|
|
56
|
+
}
|
|
57
|
+
getUserProfile() {
|
|
58
|
+
return this.auth.getUserProfile();
|
|
59
|
+
}
|
|
60
|
+
showToast(options) {
|
|
61
|
+
return this.ui.showToast(options);
|
|
62
|
+
}
|
|
63
|
+
vibrate(style) {
|
|
64
|
+
return this.device.vibrate(style);
|
|
65
|
+
}
|
|
66
|
+
closeApp() {
|
|
67
|
+
return this.navigation.closeApp();
|
|
68
|
+
}
|
|
69
|
+
minimizeApp() {
|
|
70
|
+
return this.navigation.minimizeApp();
|
|
71
|
+
}
|
|
72
|
+
configAppView(options) {
|
|
73
|
+
return this.ui.configAppView(options);
|
|
74
|
+
}
|
|
75
|
+
setNavigationBarTitle(title) {
|
|
76
|
+
return this.ui.setNavigationBarTitle(title);
|
|
77
|
+
}
|
|
78
|
+
setNavigationBarColor(options) {
|
|
79
|
+
return this.ui.setNavigationBarColor(options);
|
|
80
|
+
}
|
|
81
|
+
keepScreen(options) {
|
|
82
|
+
return this.device.keepScreen(options);
|
|
83
|
+
}
|
|
84
|
+
requestSendNotification(options) {
|
|
85
|
+
return this.ui.requestSendNotification(options);
|
|
86
|
+
}
|
|
87
|
+
on(event, callback) {
|
|
88
|
+
return this.transport.on(event, callback);
|
|
89
|
+
}
|
|
90
|
+
off(event, callback) {
|
|
91
|
+
this.transport.off(event, callback);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { SuperAppSDK } from './client.js';
|
|
2
|
+
export declare const superApp: SuperAppSDK;
|
|
3
|
+
export default superApp;
|
|
4
|
+
export { SuperAppSDK } from './client.js';
|
|
5
|
+
export * from './types/index.js';
|
|
6
|
+
export * from './modules/auth.js';
|
|
7
|
+
export * from './modules/device.js';
|
|
8
|
+
export * from './modules/storage.js';
|
|
9
|
+
export * from './modules/ui.js';
|
|
10
|
+
export * from './modules/navigation.js';
|
|
11
|
+
export * from './modules/media.js';
|
|
12
|
+
export * from './modules/lifecycle.js';
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,eAAO,MAAM,QAAQ,aAAoB,CAAC;AAC1C,eAAe,QAAQ,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { SuperAppSDK } from './client.js';
|
|
2
|
+
// Default singleton instance ready to use
|
|
3
|
+
export const superApp = new SuperAppSDK();
|
|
4
|
+
export default superApp;
|
|
5
|
+
export { SuperAppSDK } from './client.js';
|
|
6
|
+
export * from './types/index.js';
|
|
7
|
+
export * from './modules/auth.js';
|
|
8
|
+
export * from './modules/device.js';
|
|
9
|
+
export * from './modules/storage.js';
|
|
10
|
+
export * from './modules/ui.js';
|
|
11
|
+
export * from './modules/navigation.js';
|
|
12
|
+
export * from './modules/media.js';
|
|
13
|
+
export * from './modules/lifecycle.js';
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,0CAA0C;AAC1C,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,WAAW,EAAE,CAAC;AAC1C,eAAe,QAAQ,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { ITransport } from '@vqh2602/sdk-transport';
|
|
2
|
+
import { AccessTokenResult, AuthLoginOptions, AuthLoginResult, UserProfile } from '../types/index.js';
|
|
3
|
+
export declare class AuthModule {
|
|
4
|
+
private transport;
|
|
5
|
+
constructor(transport: ITransport);
|
|
6
|
+
/**
|
|
7
|
+
* Yêu cầu người dùng đăng nhập & cấp quyền truy cập
|
|
8
|
+
*/
|
|
9
|
+
login(options?: AuthLoginOptions): Promise<AuthLoginResult>;
|
|
10
|
+
/**
|
|
11
|
+
* Lấy Access Token hiện tại
|
|
12
|
+
*/
|
|
13
|
+
getAccessToken(): Promise<AccessTokenResult>;
|
|
14
|
+
/**
|
|
15
|
+
* Lấy thông tin hồ sơ người dùng
|
|
16
|
+
*/
|
|
17
|
+
getUserProfile(): Promise<UserProfile>;
|
|
18
|
+
/**
|
|
19
|
+
* Làm mới Access Token
|
|
20
|
+
*/
|
|
21
|
+
refreshToken(refreshToken?: string): Promise<AccessTokenResult>;
|
|
22
|
+
/**
|
|
23
|
+
* Đăng xuất phiên làm việc hiện tại
|
|
24
|
+
*/
|
|
25
|
+
logout(): Promise<{
|
|
26
|
+
success: boolean;
|
|
27
|
+
message: string;
|
|
28
|
+
}>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/modules/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEtG,qBAAa,UAAU;IACT,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC;;OAEG;IACU,KAAK,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC;IAI5E;;OAEG;IACU,cAAc,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAIzD;;OAEG;IACU,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAInD;;OAEG;IACU,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI5E;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAGtE"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export class AuthModule {
|
|
2
|
+
transport;
|
|
3
|
+
constructor(transport) {
|
|
4
|
+
this.transport = transport;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Yêu cầu người dùng đăng nhập & cấp quyền truy cập
|
|
8
|
+
*/
|
|
9
|
+
async login(options = {}) {
|
|
10
|
+
return this.transport.invoke('auth.login', options);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Lấy Access Token hiện tại
|
|
14
|
+
*/
|
|
15
|
+
async getAccessToken() {
|
|
16
|
+
return this.transport.invoke('auth.getAccessToken');
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Lấy thông tin hồ sơ người dùng
|
|
20
|
+
*/
|
|
21
|
+
async getUserProfile() {
|
|
22
|
+
return this.transport.invoke('auth.getUserProfile');
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Làm mới Access Token
|
|
26
|
+
*/
|
|
27
|
+
async refreshToken(refreshToken) {
|
|
28
|
+
return this.transport.invoke('auth.refreshToken', { refreshToken });
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Đăng xuất phiên làm việc hiện tại
|
|
32
|
+
*/
|
|
33
|
+
async logout() {
|
|
34
|
+
return this.transport.invoke('auth.logout');
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/modules/auth.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,UAAU;IACD;IAApB,YAAoB,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;IAAG,CAAC;IAE7C;;OAEG;IACI,KAAK,CAAC,KAAK,CAAC,UAA4B,EAAE;QAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAkB,YAAY,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,cAAc;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAoB,qBAAqB,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,cAAc;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAc,qBAAqB,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,YAAY,CAAC,YAAqB;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAoB,mBAAmB,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;IACzF,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAwC,aAAa,CAAC,CAAC;IACrF,CAAC;CACF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ITransport } from '@vqh2602/sdk-transport';
|
|
2
|
+
import { BatteryInfo, DeviceInfo, KeepScreenOptions, NetworkInfo } from '../types/index.js';
|
|
3
|
+
export declare class DeviceModule {
|
|
4
|
+
private transport;
|
|
5
|
+
constructor(transport: ITransport);
|
|
6
|
+
/**
|
|
7
|
+
* Lấy mức pin và trạng thái sạc
|
|
8
|
+
*/
|
|
9
|
+
getBatteryInfo(): Promise<BatteryInfo>;
|
|
10
|
+
/**
|
|
11
|
+
* Lấy trạng thái mạng kết nối (WiFi, 4G, 5G, Offline)
|
|
12
|
+
*/
|
|
13
|
+
getNetworkInfo(): Promise<NetworkInfo>;
|
|
14
|
+
/**
|
|
15
|
+
* Lấy thông số thiết bị và màn hình
|
|
16
|
+
*/
|
|
17
|
+
getDeviceInfo(): Promise<DeviceInfo>;
|
|
18
|
+
/**
|
|
19
|
+
* Lấy thông số hệ điều hành
|
|
20
|
+
*/
|
|
21
|
+
getSystemInfo(): Promise<DeviceInfo>;
|
|
22
|
+
/**
|
|
23
|
+
* Kích hoạt rung phản hồi xúc giác (Haptic Feedback)
|
|
24
|
+
*/
|
|
25
|
+
vibrate(style?: 'light' | 'medium' | 'heavy'): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Giữ màn hình luôn bật / luôn sáng
|
|
28
|
+
*/
|
|
29
|
+
keepScreen(options?: KeepScreenOptions | boolean): Promise<{
|
|
30
|
+
success: boolean;
|
|
31
|
+
keepScreenOn: boolean;
|
|
32
|
+
}>;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=device.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/modules/device.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE5F,qBAAa,YAAY;IACX,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC;;OAEG;IACU,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAInD;;OAEG;IACU,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAInD;;OAEG;IACU,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IAIjD;;OAEG;IACU,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IAIjD;;OAEG;IACU,OAAO,CAAC,KAAK,GAAE,OAAO,GAAG,QAAQ,GAAG,OAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlF;;OAEG;IACU,UAAU,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,OAAO,CAAA;KAAE,CAAC;CAMrH"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export class DeviceModule {
|
|
2
|
+
transport;
|
|
3
|
+
constructor(transport) {
|
|
4
|
+
this.transport = transport;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Lấy mức pin và trạng thái sạc
|
|
8
|
+
*/
|
|
9
|
+
async getBatteryInfo() {
|
|
10
|
+
return this.transport.invoke('device.getBatteryInfo');
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Lấy trạng thái mạng kết nối (WiFi, 4G, 5G, Offline)
|
|
14
|
+
*/
|
|
15
|
+
async getNetworkInfo() {
|
|
16
|
+
return this.transport.invoke('device.getNetworkInfo');
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Lấy thông số thiết bị và màn hình
|
|
20
|
+
*/
|
|
21
|
+
async getDeviceInfo() {
|
|
22
|
+
return this.transport.invoke('device.getDeviceInfo');
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Lấy thông số hệ điều hành
|
|
26
|
+
*/
|
|
27
|
+
async getSystemInfo() {
|
|
28
|
+
return this.transport.invoke('device.getSystemInfo');
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Kích hoạt rung phản hồi xúc giác (Haptic Feedback)
|
|
32
|
+
*/
|
|
33
|
+
async vibrate(style = 'light') {
|
|
34
|
+
await this.transport.invoke('device.vibrate', { style });
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Giữ màn hình luôn bật / luôn sáng
|
|
38
|
+
*/
|
|
39
|
+
async keepScreen(options) {
|
|
40
|
+
const payload = typeof options === 'boolean'
|
|
41
|
+
? { keepScreenOn: options }
|
|
42
|
+
: (options || { keepScreenOn: true });
|
|
43
|
+
return this.transport.invoke('device.keepScreen', payload);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=device.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/modules/device.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,YAAY;IACH;IAApB,YAAoB,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;IAAG,CAAC;IAE7C;;OAEG;IACI,KAAK,CAAC,cAAc;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAc,uBAAuB,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,cAAc;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAc,uBAAuB,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,aAAa;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAa,sBAAsB,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,aAAa;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAa,sBAAsB,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,OAAO,CAAC,QAAsC,OAAO;QAChE,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU,CAAC,OAAqC;QAC3D,MAAM,OAAO,GAAG,OAAO,OAAO,KAAK,SAAS;YAC1C,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE;YAC3B,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAA8C,mBAAmB,EAAE,OAAO,CAAC,CAAC;IAC1G,CAAC;CACF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ITransport } from '@vqh2602/sdk-transport';
|
|
2
|
+
export type LifecycleListener = (data?: any) => void;
|
|
3
|
+
export declare class LifecycleModule {
|
|
4
|
+
private transport;
|
|
5
|
+
constructor(transport: ITransport);
|
|
6
|
+
/**
|
|
7
|
+
* Đăng ký lắng nghe sự kiện khi Mini App hiển thị ra màn hình chính (Foreground)
|
|
8
|
+
*/
|
|
9
|
+
onAppShow(callback: LifecycleListener): () => void;
|
|
10
|
+
/**
|
|
11
|
+
* Đăng ký lắng nghe sự kiện khi Mini App bị ẩn xuống nền (Background)
|
|
12
|
+
*/
|
|
13
|
+
onAppHide(callback: LifecycleListener): () => void;
|
|
14
|
+
/**
|
|
15
|
+
* Đăng ký lắng nghe lỗi hệ thống
|
|
16
|
+
*/
|
|
17
|
+
onError(callback: LifecycleListener): () => void;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/modules/lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,MAAM,MAAM,iBAAiB,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAErD,qBAAa,eAAe;IACd,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC;;OAEG;IACI,SAAS,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI;IAIzD;;OAEG;IACI,SAAS,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI;IAIzD;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI;CAGxD"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export class LifecycleModule {
|
|
2
|
+
transport;
|
|
3
|
+
constructor(transport) {
|
|
4
|
+
this.transport = transport;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Đăng ký lắng nghe sự kiện khi Mini App hiển thị ra màn hình chính (Foreground)
|
|
8
|
+
*/
|
|
9
|
+
onAppShow(callback) {
|
|
10
|
+
return this.transport.on('appShow', callback);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Đăng ký lắng nghe sự kiện khi Mini App bị ẩn xuống nền (Background)
|
|
14
|
+
*/
|
|
15
|
+
onAppHide(callback) {
|
|
16
|
+
return this.transport.on('appHide', callback);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Đăng ký lắng nghe lỗi hệ thống
|
|
20
|
+
*/
|
|
21
|
+
onError(callback) {
|
|
22
|
+
return this.transport.on('appError', callback);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/modules/lifecycle.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,eAAe;IACN;IAApB,YAAoB,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;IAAG,CAAC;IAE7C;;OAEG;IACI,SAAS,CAAC,QAA2B;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACI,SAAS,CAAC,QAA2B;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,QAA2B;QACxC,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ITransport } from '@vqh2602/sdk-transport';
|
|
2
|
+
import { ChooseImageOptions, ChooseImageResult, QRCodeResult } from '../types/index.js';
|
|
3
|
+
export declare class MediaModule {
|
|
4
|
+
private transport;
|
|
5
|
+
constructor(transport: ITransport);
|
|
6
|
+
/**
|
|
7
|
+
* Quét mã QR Code bằng camera của SuperApp
|
|
8
|
+
*/
|
|
9
|
+
scanQRCode(prompt?: string): Promise<QRCodeResult>;
|
|
10
|
+
/**
|
|
11
|
+
* Chọn ảnh từ thư viện thiết bị
|
|
12
|
+
*/
|
|
13
|
+
chooseImage(options?: ChooseImageOptions): Promise<ChooseImageResult>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=media.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../src/modules/media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAExF,qBAAa,WAAW;IACV,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC;;OAEG;IACU,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAI/D;;OAEG;IACU,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAGvF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export class MediaModule {
|
|
2
|
+
transport;
|
|
3
|
+
constructor(transport) {
|
|
4
|
+
this.transport = transport;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Quét mã QR Code bằng camera của SuperApp
|
|
8
|
+
*/
|
|
9
|
+
async scanQRCode(prompt) {
|
|
10
|
+
return this.transport.invoke('media.scanQRCode', { prompt });
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Chọn ảnh từ thư viện thiết bị
|
|
14
|
+
*/
|
|
15
|
+
async chooseImage(options = {}) {
|
|
16
|
+
return this.transport.invoke('media.chooseImage', options);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/modules/media.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,WAAW;IACF;IAApB,YAAoB,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;IAAG,CAAC;IAE7C;;OAEG;IACI,KAAK,CAAC,UAAU,CAAC,MAAe;QACrC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAe,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,WAAW,CAAC,UAA8B,EAAE;QACvD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAoB,mBAAmB,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;CACF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ITransport } from '@vqh2602/sdk-transport';
|
|
2
|
+
import { MinimizeAppResult } from '../types/index.js';
|
|
3
|
+
export declare class NavigationModule {
|
|
4
|
+
private transport;
|
|
5
|
+
constructor(transport: ITransport);
|
|
6
|
+
/**
|
|
7
|
+
* Đóng Mini App và quay lại màn hình SuperApp chính
|
|
8
|
+
*/
|
|
9
|
+
closeApp(): Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* Thu nhỏ Mini App vào dạng floating window / background dock
|
|
12
|
+
*/
|
|
13
|
+
minimizeApp(): Promise<MinimizeAppResult>;
|
|
14
|
+
/**
|
|
15
|
+
* Mở liên kết trình duyệt ngoài
|
|
16
|
+
*/
|
|
17
|
+
openUrl(url: string): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=navigation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/modules/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,qBAAa,gBAAgB;IACf,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAItC;;OAEG;IACU,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAItD;;OAEG;IACU,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGjD"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export class NavigationModule {
|
|
2
|
+
transport;
|
|
3
|
+
constructor(transport) {
|
|
4
|
+
this.transport = transport;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Đóng Mini App và quay lại màn hình SuperApp chính
|
|
8
|
+
*/
|
|
9
|
+
async closeApp() {
|
|
10
|
+
await this.transport.invoke('navigation.closeApp');
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Thu nhỏ Mini App vào dạng floating window / background dock
|
|
14
|
+
*/
|
|
15
|
+
async minimizeApp() {
|
|
16
|
+
return this.transport.invoke('navigation.minimizeApp');
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Mở liên kết trình duyệt ngoài
|
|
20
|
+
*/
|
|
21
|
+
async openUrl(url) {
|
|
22
|
+
await this.transport.invoke('phone.openExternalBrowser', { url });
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=navigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/modules/navigation.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,gBAAgB;IACP;IAApB,YAAoB,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;IAAG,CAAC;IAE7C;;OAEG;IACI,KAAK,CAAC,QAAQ;QACnB,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,WAAW;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAoB,wBAAwB,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,OAAO,CAAC,GAAW;QAC9B,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,2BAA2B,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IACpE,CAAC;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ITransport } from '@superapp/sdk-transport';
|
|
2
|
+
import { PaymentOptions, PaymentResult } from '../types/index.js';
|
|
3
|
+
export declare class PaymentModule {
|
|
4
|
+
private transport;
|
|
5
|
+
constructor(transport: ITransport);
|
|
6
|
+
/**
|
|
7
|
+
* Gọi cổng thanh toán SuperApp Checkout
|
|
8
|
+
*/
|
|
9
|
+
requestPayment(options: PaymentOptions): Promise<PaymentResult>;
|
|
10
|
+
/**
|
|
11
|
+
* Tra cứu trạng thái giao dịch
|
|
12
|
+
*/
|
|
13
|
+
checkTransaction(transactionId: string): Promise<PaymentResult>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=payment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../src/modules/payment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElE,qBAAa,aAAa;IACZ,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC;;OAEG;IACU,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IAU5E;;OAEG;IACU,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;CAG7E"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export class PaymentModule {
|
|
2
|
+
transport;
|
|
3
|
+
constructor(transport) {
|
|
4
|
+
this.transport = transport;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Gọi cổng thanh toán SuperApp Checkout
|
|
8
|
+
*/
|
|
9
|
+
async requestPayment(options) {
|
|
10
|
+
if (!options.amount || options.amount <= 0) {
|
|
11
|
+
throw new Error('Số tiền thanh toán phải lớn hơn 0');
|
|
12
|
+
}
|
|
13
|
+
if (!options.orderId) {
|
|
14
|
+
throw new Error('Mã đơn hàng (orderId) không được để trống');
|
|
15
|
+
}
|
|
16
|
+
return this.transport.invoke('payment.requestPayment', options);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Tra cứu trạng thái giao dịch
|
|
20
|
+
*/
|
|
21
|
+
async checkTransaction(transactionId) {
|
|
22
|
+
return this.transport.invoke('payment.checkTransaction', { transactionId });
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=payment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payment.js","sourceRoot":"","sources":["../../src/modules/payment.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,aAAa;IACJ;IAApB,YAAoB,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;IAAG,CAAC;IAE7C;;OAEG;IACI,KAAK,CAAC,cAAc,CAAC,OAAuB;QACjD,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAgB,wBAAwB,EAAE,OAAO,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,gBAAgB,CAAC,aAAqB;QACjD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAgB,0BAA0B,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;IAC7F,CAAC;CACF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ITransport } from '@vqh2602/sdk-transport';
|
|
2
|
+
export declare class StorageModule {
|
|
3
|
+
private transport;
|
|
4
|
+
constructor(transport: ITransport);
|
|
5
|
+
/**
|
|
6
|
+
* Lưu trữ dữ liệu cách ly theo Mini App
|
|
7
|
+
*/
|
|
8
|
+
setItem(key: string, value: any): Promise<void>;
|
|
9
|
+
/**
|
|
10
|
+
* Lấy dữ liệu đã lưu
|
|
11
|
+
*/
|
|
12
|
+
getItem<T = any>(key: string): Promise<T | null>;
|
|
13
|
+
/**
|
|
14
|
+
* Xoá một khoá lưu trữ
|
|
15
|
+
*/
|
|
16
|
+
removeItem(key: string): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Xoá toàn bộ dữ liệu của Mini App
|
|
19
|
+
*/
|
|
20
|
+
clear(): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Lấy toàn bộ cặp key-value
|
|
23
|
+
*/
|
|
24
|
+
getAll(): Promise<Record<string, string>>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/modules/storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,qBAAa,aAAa;IACZ,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC;;OAEG;IACU,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D;;OAEG;IACU,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAU7D;;OAEG;IACU,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAGvD"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export class StorageModule {
|
|
2
|
+
transport;
|
|
3
|
+
constructor(transport) {
|
|
4
|
+
this.transport = transport;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Lưu trữ dữ liệu cách ly theo Mini App
|
|
8
|
+
*/
|
|
9
|
+
async setItem(key, value) {
|
|
10
|
+
const serialized = typeof value === 'string' ? value : JSON.stringify(value);
|
|
11
|
+
await this.transport.invoke('storage.setItem', { key, value: serialized });
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Lấy dữ liệu đã lưu
|
|
15
|
+
*/
|
|
16
|
+
async getItem(key) {
|
|
17
|
+
const res = await this.transport.invoke('storage.getItem', { key });
|
|
18
|
+
if (!res || res.value === null)
|
|
19
|
+
return null;
|
|
20
|
+
try {
|
|
21
|
+
return JSON.parse(res.value);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
return res.value;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Xoá một khoá lưu trữ
|
|
29
|
+
*/
|
|
30
|
+
async removeItem(key) {
|
|
31
|
+
await this.transport.invoke('storage.removeItem', { key });
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Xoá toàn bộ dữ liệu của Mini App
|
|
35
|
+
*/
|
|
36
|
+
async clear() {
|
|
37
|
+
await this.transport.invoke('storage.clear');
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Lấy toàn bộ cặp key-value
|
|
41
|
+
*/
|
|
42
|
+
async getAll() {
|
|
43
|
+
return this.transport.invoke('storage.getAll');
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/modules/storage.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,aAAa;IACJ;IAApB,YAAoB,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;IAAG,CAAC;IAE7C;;OAEG;IACI,KAAK,CAAC,OAAO,CAAC,GAAW,EAAE,KAAU;QAC1C,MAAM,UAAU,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC7E,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,OAAO,CAAU,GAAW;QACvC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAwC,iBAAiB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAC3G,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC5C,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAM,CAAC;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,CAAC,KAAqB,CAAC;QACnC,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU,CAAC,GAAW;QACjC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAyB,gBAAgB,CAAC,CAAC;IACzE,CAAC;CACF"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { ITransport } from '@vqh2602/sdk-transport';
|
|
2
|
+
import { AlertOptions, ConfigAppViewOptions, ConfirmOptions, NotificationResult, RequestSendNotificationOptions, SetNavigationBarColorOptions, ToastOptions } from '../types/index.js';
|
|
3
|
+
export declare class UIModule {
|
|
4
|
+
private transport;
|
|
5
|
+
constructor(transport: ITransport);
|
|
6
|
+
/**
|
|
7
|
+
* Hiển thị thông báo Toast nhanh
|
|
8
|
+
*/
|
|
9
|
+
showToast(options: ToastOptions | string): Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* Hiển thị hộp thoại cảnh báo (Alert Dialog)
|
|
12
|
+
*/
|
|
13
|
+
showAlert(options: AlertOptions): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Hiển thị hộp thoại xác nhận (Confirm Dialog)
|
|
16
|
+
*/
|
|
17
|
+
showConfirm(options: ConfirmOptions): Promise<boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* Đặt lại tiêu đề trên thanh điều hướng của trang hiện tại
|
|
20
|
+
*/
|
|
21
|
+
setNavigationBarTitle(title: string | {
|
|
22
|
+
title: string;
|
|
23
|
+
}): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Cấu hình hợp nhất giao diện: Ẩn/hiện, tuỳ chỉnh màu sắc, kiểu hiển thị của status bar, action bar, bottom navigation
|
|
26
|
+
* (Thay thế cho setStatusBarStyle, setStatusBarColor, setNavigationBarColor)
|
|
27
|
+
*/
|
|
28
|
+
configAppView(options: ConfigAppViewOptions): Promise<any>;
|
|
29
|
+
/**
|
|
30
|
+
* @deprecated Gộp chung vào configAppView({ headerColor: ... })
|
|
31
|
+
*/
|
|
32
|
+
setNavigationBarColor(options: SetNavigationBarColorOptions | string): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* @deprecated Gộp chung vào configAppView({ statusBarColor: color })
|
|
35
|
+
*/
|
|
36
|
+
setStatusBarColor(color: string): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* @deprecated Gộp chung vào configAppView({ statusBar: style, textColor: ... })
|
|
39
|
+
*/
|
|
40
|
+
setStatusBarStyle(style: 'light' | 'dark'): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Yêu cầu người dùng cho phép ứng dụng gửi thông báo qua Official Account / Mini App Channel
|
|
43
|
+
*/
|
|
44
|
+
requestSendNotification(options?: RequestSendNotificationOptions): Promise<NotificationResult>;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=ui.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/modules/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,8BAA8B,EAC9B,4BAA4B,EAC5B,YAAY,EACb,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,QAAQ;IACP,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC;;OAEG;IACU,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrE;;OAEG;IACU,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5D;;OAEG;IACU,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAKnE;;OAEG;IACU,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpF;;;OAGG;IACU,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC;IAIvE;;OAEG;IACU,qBAAqB,CAAC,OAAO,EAAE,4BAA4B,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWjG;;OAEG;IACU,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5D;;OAEG;IACU,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItE;;OAEG;IACU,uBAAuB,CAAC,OAAO,GAAE,8BAAmC,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAGhH"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
export class UIModule {
|
|
2
|
+
transport;
|
|
3
|
+
constructor(transport) {
|
|
4
|
+
this.transport = transport;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Hiển thị thông báo Toast nhanh
|
|
8
|
+
*/
|
|
9
|
+
async showToast(options) {
|
|
10
|
+
const payload = typeof options === 'string' ? { message: options } : options;
|
|
11
|
+
await this.transport.invoke('ui.showToast', payload);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Hiển thị hộp thoại cảnh báo (Alert Dialog)
|
|
15
|
+
*/
|
|
16
|
+
async showAlert(options) {
|
|
17
|
+
await this.transport.invoke('ui.showAlert', options);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Hiển thị hộp thoại xác nhận (Confirm Dialog)
|
|
21
|
+
*/
|
|
22
|
+
async showConfirm(options) {
|
|
23
|
+
const res = await this.transport.invoke('ui.showConfirm', options);
|
|
24
|
+
return !!res?.confirmed;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Đặt lại tiêu đề trên thanh điều hướng của trang hiện tại
|
|
28
|
+
*/
|
|
29
|
+
async setNavigationBarTitle(title) {
|
|
30
|
+
const payload = typeof title === 'string' ? { title } : title;
|
|
31
|
+
await this.transport.invoke('ui.setNavigationBarTitle', payload);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Cấu hình hợp nhất giao diện: Ẩn/hiện, tuỳ chỉnh màu sắc, kiểu hiển thị của status bar, action bar, bottom navigation
|
|
35
|
+
* (Thay thế cho setStatusBarStyle, setStatusBarColor, setNavigationBarColor)
|
|
36
|
+
*/
|
|
37
|
+
async configAppView(options) {
|
|
38
|
+
return this.transport.invoke('ui.configAppView', options);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @deprecated Gộp chung vào configAppView({ headerColor: ... })
|
|
42
|
+
*/
|
|
43
|
+
async setNavigationBarColor(options) {
|
|
44
|
+
const payload = typeof options === 'string'
|
|
45
|
+
? { headerColor: options }
|
|
46
|
+
: {
|
|
47
|
+
headerColor: options.color,
|
|
48
|
+
textColor: options.textColor,
|
|
49
|
+
statusBarColor: options.statusBarColor,
|
|
50
|
+
};
|
|
51
|
+
await this.configAppView(payload);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* @deprecated Gộp chung vào configAppView({ statusBarColor: color })
|
|
55
|
+
*/
|
|
56
|
+
async setStatusBarColor(color) {
|
|
57
|
+
await this.configAppView({ statusBarColor: color });
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* @deprecated Gộp chung vào configAppView({ statusBar: style, textColor: ... })
|
|
61
|
+
*/
|
|
62
|
+
async setStatusBarStyle(style) {
|
|
63
|
+
await this.configAppView({ statusBar: style, textColor: style === 'light' ? 'white' : 'black' });
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Yêu cầu người dùng cho phép ứng dụng gửi thông báo qua Official Account / Mini App Channel
|
|
67
|
+
*/
|
|
68
|
+
async requestSendNotification(options = {}) {
|
|
69
|
+
return this.transport.invoke('ui.requestSendNotification', options);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=ui.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/modules/ui.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,QAAQ;IACC;IAApB,YAAoB,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;IAAG,CAAC;IAE7C;;OAEG;IACI,KAAK,CAAC,SAAS,CAAC,OAA8B;QACnD,MAAM,OAAO,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QAC7E,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,SAAS,CAAC,OAAqB;QAC1C,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,WAAW,CAAC,OAAuB;QAC9C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAyB,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAC3F,OAAO,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,qBAAqB,CAAC,KAAiC;QAClE,MAAM,OAAO,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAC9D,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,0BAA0B,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,aAAa,CAAC,OAA6B;QACtD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,qBAAqB,CAAC,OAA8C;QAC/E,MAAM,OAAO,GAAyB,OAAO,OAAO,KAAK,QAAQ;YAC/D,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE;YAC1B,CAAC,CAAC;gBACE,WAAW,EAAE,OAAO,CAAC,KAAK;gBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;aACvC,CAAC;QACN,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,iBAAiB,CAAC,KAAa;QAC1C,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,iBAAiB,CAAC,KAAuB;QACpD,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IACnG,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,uBAAuB,CAAC,UAA0C,EAAE;QAC/E,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAqB,4BAA4B,EAAE,OAAO,CAAC,CAAC;IAC1F,CAAC;CACF"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
export interface UserProfile {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
phone?: string;
|
|
5
|
+
email?: string;
|
|
6
|
+
avatarUrl?: string;
|
|
7
|
+
role?: string;
|
|
8
|
+
isVerified?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface AuthLoginOptions {
|
|
11
|
+
scopes?: ('user.profile' | 'user.phone' | 'user.email')[];
|
|
12
|
+
prompt?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface AuthLoginResult {
|
|
15
|
+
authCode: string;
|
|
16
|
+
accessToken: string;
|
|
17
|
+
expiresIn: number;
|
|
18
|
+
user: UserProfile;
|
|
19
|
+
}
|
|
20
|
+
export interface AccessTokenResult {
|
|
21
|
+
accessToken: string;
|
|
22
|
+
tokenType: string;
|
|
23
|
+
expiresIn: number;
|
|
24
|
+
}
|
|
25
|
+
export interface BatteryInfo {
|
|
26
|
+
batteryLevel: number;
|
|
27
|
+
isCharging: boolean;
|
|
28
|
+
}
|
|
29
|
+
export interface NetworkInfo {
|
|
30
|
+
isConnected: boolean;
|
|
31
|
+
networkType: string;
|
|
32
|
+
isWifi: boolean;
|
|
33
|
+
isMobile: boolean;
|
|
34
|
+
}
|
|
35
|
+
export interface DeviceInfo {
|
|
36
|
+
model: string;
|
|
37
|
+
platform: string;
|
|
38
|
+
systemName: string;
|
|
39
|
+
systemVersion: string;
|
|
40
|
+
language: string;
|
|
41
|
+
screenWidth: number;
|
|
42
|
+
screenHeight: number;
|
|
43
|
+
pixelRatio: number;
|
|
44
|
+
}
|
|
45
|
+
export interface ToastOptions {
|
|
46
|
+
message: string;
|
|
47
|
+
duration?: number;
|
|
48
|
+
}
|
|
49
|
+
export interface AlertOptions {
|
|
50
|
+
title: string;
|
|
51
|
+
message: string;
|
|
52
|
+
buttonText?: string;
|
|
53
|
+
}
|
|
54
|
+
export interface ConfirmOptions {
|
|
55
|
+
title: string;
|
|
56
|
+
message: string;
|
|
57
|
+
confirmText?: string;
|
|
58
|
+
cancelText?: string;
|
|
59
|
+
}
|
|
60
|
+
export interface QRCodeResult {
|
|
61
|
+
content: string;
|
|
62
|
+
format: string;
|
|
63
|
+
}
|
|
64
|
+
export interface ChooseImageOptions {
|
|
65
|
+
count?: number;
|
|
66
|
+
}
|
|
67
|
+
export interface ChooseImageResult {
|
|
68
|
+
tempFilePaths: string[];
|
|
69
|
+
count: number;
|
|
70
|
+
}
|
|
71
|
+
export interface SDKInitOptions {
|
|
72
|
+
appId?: string;
|
|
73
|
+
timeoutMs?: number;
|
|
74
|
+
debug?: boolean;
|
|
75
|
+
}
|
|
76
|
+
export interface ConfigAppViewOptions {
|
|
77
|
+
headerColor?: string;
|
|
78
|
+
headerTitle?: string;
|
|
79
|
+
textColor?: 'white' | 'black';
|
|
80
|
+
statusBar?: 'transparent' | 'hidden' | 'light' | 'dark';
|
|
81
|
+
statusBarColor?: string;
|
|
82
|
+
actionBarHidden?: boolean;
|
|
83
|
+
hideAndroidBottomNavigationBar?: boolean;
|
|
84
|
+
hasPadding?: boolean;
|
|
85
|
+
hasPaddingTop?: boolean;
|
|
86
|
+
hasPaddingBottom?: boolean;
|
|
87
|
+
safeAreaTop?: boolean;
|
|
88
|
+
safeAreaBottom?: boolean;
|
|
89
|
+
safeArea?: boolean | {
|
|
90
|
+
top?: boolean;
|
|
91
|
+
bottom?: boolean;
|
|
92
|
+
};
|
|
93
|
+
bottomNavColor?: string;
|
|
94
|
+
header?: {
|
|
95
|
+
color?: string;
|
|
96
|
+
title?: string;
|
|
97
|
+
textColor?: 'white' | 'black';
|
|
98
|
+
hidden?: boolean;
|
|
99
|
+
hide?: boolean;
|
|
100
|
+
};
|
|
101
|
+
bottomNav?: {
|
|
102
|
+
color?: string;
|
|
103
|
+
hidden?: boolean;
|
|
104
|
+
hide?: boolean;
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
export interface SetNavigationBarColorOptions {
|
|
108
|
+
color: string;
|
|
109
|
+
textColor?: 'white' | 'black';
|
|
110
|
+
statusBarColor?: string;
|
|
111
|
+
}
|
|
112
|
+
export interface KeepScreenOptions {
|
|
113
|
+
keepScreenOn?: boolean;
|
|
114
|
+
}
|
|
115
|
+
export interface RequestSendNotificationOptions {
|
|
116
|
+
templateId?: string;
|
|
117
|
+
reason?: string;
|
|
118
|
+
}
|
|
119
|
+
export interface NotificationResult {
|
|
120
|
+
success: boolean;
|
|
121
|
+
granted: boolean;
|
|
122
|
+
subscriptionId?: string;
|
|
123
|
+
token?: string;
|
|
124
|
+
templateId?: string;
|
|
125
|
+
reason?: string;
|
|
126
|
+
message?: string;
|
|
127
|
+
error?: string;
|
|
128
|
+
}
|
|
129
|
+
export interface MinimizeAppResult {
|
|
130
|
+
success: boolean;
|
|
131
|
+
status: string;
|
|
132
|
+
appId: string;
|
|
133
|
+
timestamp?: number;
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,39 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vqh2602/mini-app-sdk",
|
|
3
|
-
"version": "
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Official TypeScript SDK for SuperApp Mini App Third-Party Developers",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"import": "./dist/index.js",
|
|
13
|
+
"default": "./dist/index.js"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"dependencies": {
|
|
17
|
+
"@vqh2602/sdk-transport": "^1.0.0",
|
|
18
|
+
"@vqh2602/sdk-mock-engine": "^1.0.0"
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"dist"
|
|
22
|
+
],
|
|
23
|
+
"publishConfig": {
|
|
24
|
+
"access": "public"
|
|
25
|
+
},
|
|
26
|
+
"scripts": {
|
|
27
|
+
"build": "tsc -b",
|
|
28
|
+
"typecheck": "tsc --noEmit"
|
|
29
|
+
},
|
|
30
|
+
"keywords": [
|
|
31
|
+
"superapp",
|
|
32
|
+
"mini-app",
|
|
33
|
+
"sdk",
|
|
34
|
+
"typescript",
|
|
35
|
+
"api"
|
|
36
|
+
],
|
|
37
|
+
"author": "SuperApp Platform Team",
|
|
38
|
+
"license": "MIT"
|
|
39
|
+
}
|