UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

40 lines (38 loc) 2.44 kB
import type Input from "./Input.js"; export interface RadioButtonsInputProperties extends Partial<Pick<RadioButtonsInput, "noValueOptionLabel" | "showNoValueOption">> {} /** * The `RadioButtonsInput` class defines the desired user interface for a radio button group input. This [FieldElement.input](https://developers.arcgis.com/javascript/latest/references/core/form/elements/FieldElement/#input) is used in [field elements](https://developers.arcgis.com/javascript/latest/references/core/form/elements/FieldElement/) that are set within a [feature layer's](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#formTemplate) or [FeatureForm's](https://developers.arcgis.com/javascript/latest/references/core/widgets/FeatureForm/#formTemplate) `formTemplate`. This is displayed within the [Editor](https://developers.arcgis.com/javascript/latest/references/core/widgets/Editor/) widget. * * > [!WARNING] * > * > Coded-value domains are required when using this input type. Previously, fields containing values that weren't compatible with their associated coded-value domain(s) displayed the option and would remove it once a user updated the value. The `RadioButtonsInput` will now keep the value, but it will not display an option in the user interface. * * ![form field element radio buttons input](https://developers.arcgis.com/javascript/latest/assets/references/core/widgets/formtemplate/radio-buttons.png) * * @since 4.19 * @see [FieldElement](https://developers.arcgis.com/javascript/latest/references/core/form/elements/FieldElement/) * @see [CodedValueDomain](https://developers.arcgis.com/javascript/latest/references/core/layers/support/CodedValueDomain/) * @example * // Creates a new Radio buttons input for a field element within a form * const radioButtonsInput = new RadioButtonsInput({ * noValueOptionLabel: "Unknown", * showNoValueOption: true * }); */ export default class RadioButtonsInput extends Input { constructor(properties?: RadioButtonsInputProperties); /** The text used to represent a null value. */ accessor noValueOptionLabel: string | null | undefined; /** * Determines whether a null value option is displayed. * * > [!WARNING] * > * > This only applies to fields that support null values. * * @default true */ accessor showNoValueOption: boolean; /** The type of form element input. */ get type(): "radio-buttons"; }