DalaDev.Tui.Devices (dala_dev v0.4.0)

Copy Markdown View Source

Device discovery and status for the TUI.

Wraps DalaDev.Discovery.Android and DalaDev.Discovery.IOS to provide a unified device list with rich status information including node connectivity, distribution ports, and remote node metadata.

Summary

Functions

Returns a short display name for a device.

Converts a %DalaDev.Device{} into a TUI device entry.

Lists all discovered devices across Android and iOS.

Lists Android devices via ADB.

Lists nodes connected via Erlang distribution that aren't already in the discovered device list.

Lists iOS devices and simulators.

Gets the node name for a device using DalaDev.Device conventions.

Returns the platform icon.

Returns the status icon for a device.

Returns a human-readable status label.

Returns a one-line summary of the device.

Types

t()

@type t() :: %DalaDev.Tui.Devices{
  device_struct: map() | nil,
  dist_port: pos_integer() | nil,
  error: String.t() | nil,
  host_ip: String.t() | nil,
  id: String.t(),
  name: String.t(),
  node: atom() | nil,
  platform: :android | :ios,
  serial: String.t() | nil,
  status: :discovered | :unauthorized | :tunneled | :connected | :error,
  type: :device | :emulator | :simulator | :physical,
  version: String.t() | nil
}

Functions

display_name(devices)

@spec display_name(t()) :: String.t()

Returns a short display name for a device.

from_device(device)

@spec from_device(DalaDev.Device.t()) :: t()

Converts a %DalaDev.Device{} into a TUI device entry.

Public for testing.

list()

@spec list() :: [t()]

Lists all discovered devices across Android and iOS.

Returns a list of %DalaDev.Tui.Devices{} structs with rich metadata.

list_android()

@spec list_android() :: [t()]

Lists Android devices via ADB.

list_connected_nodes()

@spec list_connected_nodes() :: [t()]

Lists nodes connected via Erlang distribution that aren't already in the discovered device list.

list_ios()

@spec list_ios() :: [t()]

Lists iOS devices and simulators.

node_name(devices)

@spec node_name(t()) :: atom() | nil

Gets the node name for a device using DalaDev.Device conventions.

platform_icon(arg1)

@spec platform_icon(t()) :: String.t()

Returns the platform icon.

status_icon(arg1)

@spec status_icon(t()) :: String.t()

Returns the status icon for a device.

status_label(devices)

@spec status_label(t()) :: String.t()

Returns a human-readable status label.

summary(device)

@spec summary(t()) :: String.t()

Returns a one-line summary of the device.