Skip to main content

useMetricFieldValueType

Determines the kind of a metric value by inspecting the value itself.

function useMetricFieldValueType(
value: ChannelValue | MetricValue | MetricValueType
): 'unknown' | 'date' | 'string' | 'number'
tip

To branch on the value type defined by the metric's type, use channelValue.type.valueType instead, which distinguishes all value types.

Arguments

ArgumentTypeDescription
valueChannelValue, MetricValue or MetricValueTypeThe value to inspect. For a ChannelValue or MetricValue, the contained value is used.

Returns

ResultIf the value is
numberA number
dateA string containing an ISO date
stringAny other string
unknownnull, or a falsy primitive value

Example

src/widgets/example/Example.tsx
import React from 'react'
import {useMetricField, useMetricFieldValueType} from '@modbros/dashboard-sdk'

export default function Example() {
const channelValue = useMetricField({field: 'metric'})
const valueType = useMetricFieldValueType(channelValue)

if (valueType === 'number') {
return <strong>{Number(channelValue?.value.value).toFixed(1)}</strong>
}

return <span>{channelValue?.value.value}</span>
}