commit fc2fced41cf086fb3203cd117f2195f90257d86a
parent fa695b94be01785853b88e75c43f7fe5bccda535
Author: triesap <137732411+triesap@users.noreply.github.com>
Date: Wed, 28 Aug 2024 08:33:36 +0000
client: update iclientwifi, add methods
Diffstat:
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/client/src/capacitor/wifi.ts b/client/src/capacitor/wifi.ts
@@ -1,5 +1,5 @@
import { Wifi } from '@radroots/capacitor-wifi';
-import type { IClientWifi, IClientWifiConnectResult, IClientWifiCurrentResult, IClientWifiScanResult } from '../types';
+import type { IClientWifi, IClientWifiConnectResult, IClientWifiCurrentResult, IClientWifiPermissionsStatus, IClientWifiScanResult } from '../types';
export class CapacitorClientWifi implements IClientWifi {
public scan = async (): Promise<IClientWifiScanResult | undefined> => {
@@ -36,4 +36,17 @@ export class CapacitorClientWifi implements IClientWifi {
} catch (e) { };
};
+ public check_permissions = async (): Promise<IClientWifiPermissionsStatus | undefined> => {
+ try {
+ const res = await Wifi.checkPermissions();
+ return res;
+ } catch (e) { };
+ };
+
+ public request_permissions = async (): Promise<IClientWifiPermissionsStatus | undefined> => {
+ try {
+ const res = await Wifi.requestPermissions();
+ return res;
+ } catch (e) { };
+ };
}
diff --git a/client/src/types.ts b/client/src/types.ts
@@ -1,6 +1,6 @@
import { type BatteryInfo, type DeviceInfo } from '@capacitor/device';
import { type ScanResult } from '@radroots/capacitor-bluetooth-le';
-import { type ConnectToWifiResult, type GetCurrentWifiResult, type ScanWifiResult } from '@radroots/capacitor-wifi';
+import { type ConnectToWifiResult, type GetCurrentWifiResult, type PermissionStatus, type ScanWifiResult } from '@radroots/capacitor-wifi';
import { type ErrorResponse } from '@radroots/utils';
export type IClient = {
@@ -78,6 +78,7 @@ export type IClientShare = {
open(opts: IClientShareOpenOpts): Promise<void>;
};
+export type IClientWifiPermissionsStatus = PermissionStatus;
export type IClientWifiScanResult = ScanWifiResult;
export type IClientWifiCurrentResult = GetCurrentWifiResult;
export type IClientWifiConnectResult = ConnectToWifiResult;
@@ -88,6 +89,8 @@ export type IClientWifi = {
connect: (ssid: string, password: string) => Promise<IClientWifiConnectResult | undefined>;
connect_prefix: (ssidPrefix: string, password: string) => Promise<IClientWifiConnectResult | undefined>;
disconnect: () => Promise<void>;
+ check_permissions: () => Promise<IClientWifiPermissionsStatus | undefined>;
+ request_permissions: () => Promise<IClientWifiPermissionsStatus | undefined>;
};
export type IClientDialogPrompt = {