AI input with a single-line field, a submit button, and an optional skip text button.
Set to false for a static submit button. No expand/sweep animation or label fade-in.
When true, replaces the submit button's content with a spinner and disables it. Skip goes with it, so neither button can advance the flow while the consumer is still processing the last one.
Height in px of the submit button.
Horizontal padding in px of the static (`animateButton: false`) submit button.
When set, the submit button expands into a labelled pill once `minCharacters` is reached.
Font size in px of the input text and placeholder on tablet and up.
Font size in px of the input text and placeholder on mobile.
When true, removes the outer glow. The gradient border and inner styles are unaffected.
When true, disables the whole field: typing, submit and skip. Takes precedence over `isSubmitDisabled` and `isSkipDisabled`. Unlike `control.disable()`, the control's value and validity are left alone.
When true, disables only the skip button. The input stays interactive.
When true, disables only the submit button. The input stays interactive.
Keep the virtual keyboard open after a valid submit. Invalid submits always keep it open so the user can correct the input.
Character threshold at which the submit button expands (requires `buttonText`).
Set to false to show only the `buttonText` label, in every state.
Renders Skip beside the submit button instead of replacing it.
When set, shows a Skip text button in place of the submit button while the field is empty.
Square off the submit button (rounded rectangle) instead of round/pill.