Browse Source

fix: added a notes fild to Dynamic form allowing for notes to inform users about using BLE and wifi at the same time. (#474)

pull/477/head
Dan Ditomaso 1 year ago
parent
commit
f9066eced0
  1. 3
      src/components/Form/DynamicForm.tsx
  2. 4
      src/components/PageComponents/Config/Bluetooth.tsx
  3. 2
      src/components/PageComponents/Config/Network.tsx
  4. 11
      src/components/PageComponents/Connect/Serial.tsx

3
src/components/Form/DynamicForm.tsx

@ -27,6 +27,7 @@ export interface BaseFormBuilderProps<T> {
disabledBy?: DisabledBy<T>[];
label: string;
description?: string;
notes?: string;
validationText?: string;
properties?: Record<string, unknown>;
}
@ -45,6 +46,7 @@ export interface DynamicFormProps<T extends FieldValues> {
fieldGroups: {
label: string;
description: string;
notes?: string;
valid?: boolean;
validationText?: string;
fields: FieldProps<T>[];
@ -95,6 +97,7 @@ export function DynamicForm<T extends FieldValues>({
<div>
<H4 className="font-medium">{fieldGroup.label}</H4>
<Subtle>{fieldGroup.description}</Subtle>
<Subtle className="font-semibold">{fieldGroup?.notes}</Subtle>
</div>
{fieldGroup.fields.map((field) => {

4
src/components/PageComponents/Config/Bluetooth.tsx

@ -70,7 +70,9 @@ export const Bluetooth = () => {
fieldGroups={[
{
label: "Bluetooth Settings",
description: "Settings for the Bluetooth module",
description: "Settings for the Bluetooth module ",
notes:
"Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.",
fields: [
{
type: "toggle",

2
src/components/PageComponents/Config/Network.tsx

@ -53,6 +53,8 @@ export const Network = () => {
{
label: "WiFi Config",
description: "WiFi radio configuration",
notes:
"Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.",
fields: [
{
type: "toggle",

11
src/components/PageComponents/Connect/Serial.tsx

@ -18,7 +18,9 @@ export const Serial = ({ closeDialog }: TabElementProps) => {
setSerialPorts(await navigator?.serial.getPorts());
}, []);
navigator?.serial?.addEventListener("connect", () => {
navigator?.serial?.addEventListener("connect", (event) => {
console.log(event);
updateSerialPortList();
});
navigator?.serial?.addEventListener("disconnect", () => {
@ -45,6 +47,8 @@ export const Serial = ({ closeDialog }: TabElementProps) => {
<div className="flex w-full flex-col gap-2 p-4">
<div className="flex h-48 flex-col gap-2 overflow-y-auto">
{serialPorts.map((port, index) => {
console.log(port);
const { usbProductId, usbVendorId } = port.getInfo();
return (
<Button
@ -55,9 +59,8 @@ export const Serial = ({ closeDialog }: TabElementProps) => {
await onConnect(port);
}}
>
{`# ${index} - ${usbVendorId ?? "UNK"} - ${
usbProductId ?? "UNK"
}`}
{`# ${index} - ${usbVendorId ?? "UNK"} - ${usbProductId ?? "UNK"
}`}
</Button>
);
})}

Loading…
Cancel
Save