Skip to content

hooks/useDeviceCapabilities#

RequireCapability()#

function RequireCapability(props): Element | null;

Component wrapper that only renders children if device has required capabilities.

Parameters#

Parameter Type
props { capabilities?: string[]; capability?: string; children: ReactNode; fallback?: ReactNode; mode?: "all" | "any"; }
props.capabilities? string[]
props.capability? string
props.children ReactNode
props.fallback? ReactNode
props.mode? "all" | "any"

Returns#

Element | null

Example#

<RequireCapability capability="core:temperature-control">
  <TemperatureControls />
</RequireCapability>

<RequireCapability capabilities={['core:frequency-control', 'core:temperature-control']} mode="all">
  <AdvancedControls />
</RequireCapability>

useDeviceCapabilities()#

function useDeviceCapabilities(): DeviceCapabilitiesAPI;

Returns#

DeviceCapabilitiesAPI


DeviceCapabilitiesAPI#

Properties#

getCapabilities#

getCapabilities: () => string[];

Get all device capabilities

Returns#

string[]

hasAllCapabilities#

hasAllCapabilities: (...capabilityIds) => boolean;

Check if device has ALL of the specified capabilities

Parameters#
Parameter Type
...capabilityIds string[]
Returns#

boolean

hasAnyCapability#

hasAnyCapability: (...capabilityIds) => boolean;

Check if device has ANY of the specified capabilities

Parameters#
Parameter Type
...capabilityIds string[]
Returns#

boolean

hasCapability#

hasCapability: (capabilityId) => boolean;

Check if device has a specific capability

Parameters#
Parameter Type
capabilityId string
Returns#

boolean

isConnected#

isConnected: () => boolean;

Check if device is connected

Returns#

boolean