# Create a `wa-dropdown` component

Generated wrapper for the Web Awesome `wa-dropdown` component. When used
as a Shiny input, action semantics are exposed through
`input$<input_id>` and the latest selected dropdown item value is
exposed through `input$<input_id>_value`. The action input increments on
every selection, including repeated selection of the same item. The
companion value input reflects the selected item's `value`, returns
`NULL` when the selected item has no `value`, and preserves an explicit
empty string `""` when that is the selected item's value. Each committed
action publishes a numeric action value. Generated from Web Awesome
metadata.

## Usage

``` r
wa_dropdown(
  input_id,
  ...,
  class = NULL,
  style = NULL,
  dir = NULL,
  distance = NULL,
  lang = NULL,
  open = NULL,
  placement = NULL,
  size = NULL,
  skidding = NULL,
  trigger = NULL
)
```

## Arguments

- input_id:

  Shiny input id for the component. This is also used as the rendered
  DOM `id` attribute.

- ...:

  Child content for the component's default slot.

- class:

  Optional CSS class string.

- style:

  Optional inline CSS style string.

- dir:

  String. Optional Web Awesome attribute.

- distance:

  Number. Default: `0`. The distance of the dropdown menu from its
  trigger.

- lang:

  String. Optional Web Awesome attribute.

- open:

  Boolean. Default: `FALSE`. Opens or closes the dropdown.

- placement:

  Enumerated string. Allowed values: `bottom`, `bottom-end`,
  `bottom-start`, `left`, `left-end`, `left-start`, `right`,
  `right-end`, `right-start`, `top`, `top-end`, `top-start`. Default:
  `bottom-start`. The placement of the dropdown menu in reference to the
  trigger. The menu will shift to a more optimal location if the
  preferred placement doesn't have enough room.

- size:

  Enumerated string. Allowed values: `large`, `medium`, `small`.
  Default: `medium`. The dropdown's size.

- skidding:

  Number. Default: `0`. The offset of the dropdown menu along its
  trigger.

- trigger:

  The element that triggers the dropdown, such as a `<wa-button>` or
  `<button>`.

## Value

An HTML tag for the component.

## Shiny Bindings

`input$<input_id>` uses action semantics and invalidates on each
committed action, including repeated selection of the same item. The
Shiny action value is returned as a numeric action value.

`input$<input_id>_value` reflects the latest selected item's `value`
value, returns `NULL` when the selected item has no `value` , and
preserves an explicit empty string `""` when that is the selected item's
value. The payload value is returned as a character string or `NULL`.
