open-consul/ui/packages/consul-ui/app/components/form-input
John Cowen 3d1b859533
ui: Support for SSO with Admin Partitions (#11604)
* Upgrade AuthForm and document current state a little better
* Hoist SSO out of the AuthForm
* Bare minimum admin partitioned SSO

also:

ui: Tabbed Login with Token or SSO interface (#11619)

- I upgraded our super old, almost the first ember component I wrote, to use glimmer/almost template only. This should use slots/contextual components somehow, but thats a bigger upgrade so I didn't go that far.
- I've been wanting to upgrade the shape of our StateChart component for a very long while now, here its very apparent that it would be much better to do this sooner rather than later. I left it as is for now, but there will be a PR coming soon with a slight reshaping of this component.
- Added a did-upsert modifier which is a mix of did-insert/did-update
- Documentation added/amended for all the new things.
2021-11-24 14:53:12 +00:00
..
index.hbs
README.mdx

---
state: wip
---
# FormInput

Base component for making all types of form components.

This component should 'generally' not be used in application code, but instead
be used as a base component for creating application form components/elements.

This component should contain the shared functionality for all form
components, such as labels, errors, notes/messages/notices etc etc. Specific
input types should be provided using the `input` slot.


The following example shows how to create new form input components and
'generally' shouldn't be used in application code.

```hbs preview-template
  <FormInput
    @name="single"
    @help="Help me if you can, I'm feeling down"
  >
    <:label>
      Single Line Text Input
    </:label>
    <:input>
      <input type="text" />
    </:input>
  </FormInput>
```

## Arguments

| Argument | Type | Default | Description |
| --- | --- | --- | --- |
| `name` | `String` | '' | An identifier for retriving values/errors etc for this input |
| `help` | `String` | | Provide some help text for the input (consider using `@validations` instead) |
| `validations` | `Object` |  | A `validations` object |
| `chart` | `Object` | | A StateChart object (implementing `state` and `dispatch` to be passed to the underlying `validate` modifier  |

### Slots

| Name  | Description |
| --- | --- |
| `input` | Slot to hold the specific input element |
| `label`   | The label to be rendered |

## See

- [Template Source Code](./index.hbs)

---