View Source PyroComponents.Components.Autocomplete (PyroComponents v0.1.1)
A flexible autocomplete component for Phoenix forms.
Overridable Component Attributes
You can customize the components in this module by configuring overrides.
The components in this module support the following overridable attributes:
render/1:throttle_time:integer(required):option_label_key:atom(required):option_value_key:atom(required):prompt:string(required):class:css_classes:input_class:css_classes:listbox_class:css_classes:listbox_option_class:css_classes:description_class:css_classes
Summary
Components
A simple autocomplete component.
Components
A simple autocomplete component.
Examples
<.simple_form for={@form} phx-change="validate" phx-submit="save">
<.live_component
module={PyroComponents.Components.Autocomplete}
id="fiend_id_autocomplete"
field={@form[:friend_id]}
label="Friend"
search_fn={search_friends/1}
lookup_fn={lookup_friend/1} />
<:actions>
<.button>Save</.button>
</:actions>
</.simple_form>Attributes
overrides(:list) - Manually set the overrides for this component (instead of config/default). Defaults tonil.throttle_time(:integer) - (overridable, required).option_label_key(:atom) - (overridable, required).option_value_key(:atom) - (overridable, required).prompt(:string) - the prompt for search input (overridable, required).description(:string) - Defaults tonil.errors(:list) - Defaults to[].label(:string) - Defaults tonil.input_id(:any) - Defaults tonil.multiple(:boolean) - the multiple flag for select inputs. Defaults tofalse.required(:boolean) - Defaults tofalse.name(:any)value(:any)search_fn(:any) (required) - the arity-1 function to get options from search term.lookup_fn(:any) (required) - the arity-1 function to get lookup/convert value to option.no_results_message(:string) - the message to display if there are no results for the search phrase. Defaults to"[no results]".field(Phoenix.HTML.FormField) - a form field struct retrieved from the form, for example: @form[:email].autofocus(:boolean) - enable autofocus hook to reliably focus input on mount. Defaults tofalse.class(:any) - (overridable,:css_classes).input_class(:any) - class of the input element (overridable,:css_classes).listbox_class(:any) - class of the listbox element (overridable,:css_classes).listbox_option_class(:any) - class of the listbox option element (overridable,:css_classes).description_class(:any) - class of the field description (overridable,:css_classes).
Slots
option_template