2020-02-09 10:21:13 +00:00
|
|
|
import { Theme } from '@material-ui/core';
|
|
|
|
import { WiFiStatus } from './types';
|
2018-02-26 00:11:31 +00:00
|
|
|
|
|
|
|
export const WIFI_STATUS_IDLE = 0;
|
|
|
|
export const WIFI_STATUS_NO_SSID_AVAIL = 1;
|
|
|
|
export const WIFI_STATUS_CONNECTED = 3;
|
|
|
|
export const WIFI_STATUS_CONNECT_FAILED = 4;
|
|
|
|
export const WIFI_STATUS_CONNECTION_LOST = 5;
|
|
|
|
export const WIFI_STATUS_DISCONNECTED = 6;
|
|
|
|
|
2020-02-09 10:21:13 +00:00
|
|
|
export const isConnected = ({ status }: WiFiStatus) => status === WIFI_STATUS_CONNECTED;
|
2018-02-26 00:11:31 +00:00
|
|
|
|
2020-02-09 10:21:13 +00:00
|
|
|
export const wifiStatusHighlight = ({ status }: WiFiStatus, theme: Theme) => {
|
|
|
|
switch (status) {
|
2018-02-26 00:11:31 +00:00
|
|
|
case WIFI_STATUS_IDLE:
|
|
|
|
case WIFI_STATUS_DISCONNECTED:
|
2020-02-09 10:21:13 +00:00
|
|
|
return theme.palette.info.main;
|
2018-02-26 00:11:31 +00:00
|
|
|
case WIFI_STATUS_CONNECTED:
|
2020-02-09 10:21:13 +00:00
|
|
|
return theme.palette.success.main;
|
2018-02-26 00:11:31 +00:00
|
|
|
case WIFI_STATUS_CONNECT_FAILED:
|
|
|
|
case WIFI_STATUS_CONNECTION_LOST:
|
2020-02-09 10:21:13 +00:00
|
|
|
return theme.palette.error.main;
|
2018-02-26 00:11:31 +00:00
|
|
|
default:
|
2020-02-09 10:21:13 +00:00
|
|
|
return theme.palette.warning.main;
|
2018-02-26 00:11:31 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-02-09 10:21:13 +00:00
|
|
|
export const wifiStatus = ({ status }: WiFiStatus) => {
|
|
|
|
switch (status) {
|
2018-02-26 00:11:31 +00:00
|
|
|
case WIFI_STATUS_IDLE:
|
|
|
|
return "Idle";
|
|
|
|
case WIFI_STATUS_NO_SSID_AVAIL:
|
|
|
|
return "No SSID Available";
|
|
|
|
case WIFI_STATUS_CONNECTED:
|
|
|
|
return "Connected";
|
|
|
|
case WIFI_STATUS_CONNECT_FAILED:
|
|
|
|
return "Connection Failed";
|
|
|
|
case WIFI_STATUS_CONNECTION_LOST:
|
|
|
|
return "Connection Lost";
|
|
|
|
case WIFI_STATUS_DISCONNECTED:
|
|
|
|
return "Disconnected";
|
|
|
|
default:
|
|
|
|
return "Unknown";
|
|
|
|
}
|
|
|
|
}
|