75 lines
2.0 KiB
Markdown
75 lines
2.0 KiB
Markdown
---
|
|
title: select
|
|
label: Select
|
|
---
|
|
The select widget allows you to pick a string value from a dropdown menu.
|
|
|
|
* **Name:** `select`
|
|
* **UI:** select input
|
|
* **Data type:** string or array
|
|
* **Options:**
|
|
|
|
* `default`: `options` must contain any default values
|
|
|
|
* string values: accepts a string; defaults to an empty string. Accepts an array of strings and defaults to an empty array with `multiple: true` enabled.
|
|
* object with `label` and `value` fields: accepts an object with `label` and `value` field or an array of such objects when `multiple: true` is enable. Defaults to no value
|
|
* `options`: (**required**) there are two ways to list of options for the dropdown menu:
|
|
|
|
* string values: the dropdown displays the value directly
|
|
* object with `label` and `value` fields: the label displays in the dropdown; the value saves in the file
|
|
* `multiple`: accepts a boolean; defaults to `false`
|
|
* `min`: minimum number of items; ignored if **multiple** is `false`
|
|
* `max`: maximum number of items; ignored if **multiple** is `false`
|
|
* **Example** (options as strings):
|
|
|
|
```yaml
|
|
- label: "Align Content"
|
|
name: "align"
|
|
widget: "select"
|
|
options: ["left", "center", "right"]
|
|
```
|
|
|
|
Selecting the `center` option, will save the value as:
|
|
|
|
```yaml
|
|
align: "center"
|
|
```
|
|
* **Example** (options as objects):
|
|
|
|
```yaml
|
|
- label: "City"
|
|
name: "airport-code"
|
|
widget: "select"
|
|
options:
|
|
- { label: "Chicago", value: "ORD" }
|
|
- { label: "Paris", value: "CDG" }
|
|
- { label: "Tokyo", value: "HND" }
|
|
```
|
|
|
|
Selecting the `Chicago` option, will save the value as:
|
|
|
|
```yaml
|
|
airport-code: "ORD"
|
|
```
|
|
* **Example** (multiple):
|
|
|
|
```yaml
|
|
- label: "Tags"
|
|
name: "tags"
|
|
widget: "select"
|
|
multiple: true
|
|
options: ["Design", "UX", "Dev"]
|
|
default: ["Design"]
|
|
```
|
|
* **Example** (min/max):
|
|
|
|
```yaml
|
|
- label: "Tags"
|
|
name: "tags"
|
|
widget: "select"
|
|
multiple: true
|
|
min: 1
|
|
max: 3
|
|
options: ["Design", "UX", "Dev"]
|
|
default: ["Design"]
|
|
``` |