2022-09-12 07:13:52 +00:00
const DropdownProps = [
{
2022-09-14 14:26:41 +00:00
name : 'modelValue' ,
type : 'any' ,
default : 'null' ,
description : 'Value of the component.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'options' ,
type : 'array' ,
default : 'null' ,
description : 'An array of selectitems to display as the available options.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'optionLabel' ,
type : 'string | function' ,
default : 'null' ,
description : 'Property name or getter function to use as the label of an option.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'optionValue' ,
type : 'string | function' ,
default : 'null' ,
description : 'Property name or getter function to use as the value of an option, defaults to the option itself when not defined.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'optionDisabled' ,
type : 'boolean' ,
default : 'null' ,
description : 'Property name or getter function to use as the disabled flag of an option, defaults to false when not defined.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'optionGroupLabel' ,
type : 'string | function' ,
default : 'null' ,
description : 'Property name or getter function to use as the label of an option group.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'optionGroupChildren' ,
type : 'string | function' ,
default : 'null' ,
description : 'Property name or getter function that refers to the children options of option group.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'scrollHeight' ,
type : 'string' ,
default : '200px' ,
description : 'Height of the viewport, a scrollbar is defined if height of list exceeds this value.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'filter' ,
type : 'boolean' ,
default : 'false' ,
description : 'When specified, displays a filter input at header.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'filterPlaceholder' ,
type : 'string' ,
default : 'null' ,
description : 'Placeholder text to show when filter input is empty.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'filterLocale' ,
type : 'string' ,
default : 'undefined' ,
2022-09-12 07:13:52 +00:00
description : "Locale to use in filtering. The default locale is the host environment's current locale."
} ,
{
2022-09-14 14:26:41 +00:00
name : 'filterMatchMode' ,
type : 'string' ,
default : 'contains' ,
2022-09-12 07:13:52 +00:00
description : 'Defines the filtering algorithm to use when searching the options. Valid values are "contains" (default), "startsWith" and "endsWith"'
} ,
{
2022-09-14 14:26:41 +00:00
name : 'filterFields' ,
type : 'array' ,
default : 'null' ,
description : 'Fields used when filtering the options, defaults to optionLabel.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'editable' ,
type : 'boolean' ,
default : 'false' ,
description : 'When present, custom value instead of predefined options can be entered using the editable input field.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'placeholder' ,
type : 'string' ,
default : 'null' ,
description : 'Default text to display when no option is selected.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'disabled' ,
type : 'boolean' ,
default : 'false' ,
description : 'When present, it specifies that the component should be disabled.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'dataKey' ,
type : 'string' ,
default : 'null' ,
description : 'A property to uniquely identify an option.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'showClear' ,
type : 'boolean' ,
default : 'false' ,
description : 'When enabled, a clear icon is displayed to clear the value.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'inputId' ,
type : 'string' ,
default : 'null' ,
description : 'Identifier of the underlying input element.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'inputStyle' ,
type : 'object' ,
default : 'null' ,
description : 'Inline style of the input field.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'inputClass' ,
2023-03-09 07:02:25 +00:00
type : 'string | object' ,
2022-09-14 14:26:41 +00:00
default : 'null' ,
description : 'Style class of the input field.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'inputProps' ,
type : 'object' ,
default : 'null' ,
2023-08-01 14:01:12 +00:00
description : 'Used to pass all properties of the HTMLInputElement/HTMLSpanElement to the focusable input element inside the component.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'panelStyle' ,
type : 'object' ,
default : 'null' ,
description : 'Inline style of the overlay panel.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'panelClass' ,
type : 'string' ,
default : 'null' ,
description : 'Style class of the overlay panel.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'panelProps' ,
type : 'object' ,
default : 'null' ,
2023-08-01 14:01:12 +00:00
description : 'Used to pass all properties of the HTMLDivElement to the overlay panel inside the component.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'filterInputProps' ,
type : 'object' ,
default : 'null' ,
2023-08-01 14:01:12 +00:00
description : 'Used to pass all properties of the HTMLInputElement to the filter input inside the component.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'clearIconProps' ,
type : 'object' ,
default : 'null' ,
2023-08-01 14:01:12 +00:00
description : 'Used to pass all properties of the HTMLElement to the clear icon inside the component.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'appendTo' ,
type : 'string' ,
default : 'body' ,
2022-09-12 07:13:52 +00:00
description : "A valid query selector or an HTMLElement to specify where the overlay gets attached. Special keywords are 'body' for document body and 'self' for the element itself."
} ,
{
2022-09-14 14:26:41 +00:00
name : 'loading' ,
type : 'boolean' ,
default : 'false' ,
description : 'Whether the multiselect is in loading state.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'loadingIcon' ,
type : 'string' ,
default : 'pi pi-spinner pi-spin' ,
description : 'Icon to display in loading state.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'resetFilterOnHide' ,
type : 'boolean' ,
default : 'false' ,
description : 'Clears the filter value when hiding the dropdown.'
2022-09-12 07:13:52 +00:00
} ,
2024-01-16 11:15:32 +00:00
{
name : 'resetFilterOnClear' ,
type : 'boolean' ,
default : 'false' ,
description : 'Clears the filter value when clicking on the clear icon.'
} ,
2022-09-12 07:13:52 +00:00
{
2022-09-14 14:26:41 +00:00
name : 'virtualScrollerOptions' ,
type : 'object' ,
default : 'null' ,
description : 'Whether to use the virtualScroller feature. The properties of VirtualScroller component can be used like an object in it.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'autoOptionFocus' ,
type : 'boolean' ,
default : 'true' ,
description : 'Whether to focus on the first visible or selected element when the overlay panel is shown.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'autoFilterFocus' ,
type : 'boolean' ,
default : 'false' ,
description : 'Whether to focus on the filter element when the overlay panel is shown.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'selectOnFocus' ,
type : 'boolean' ,
default : 'false' ,
description : 'When enabled, the focused option is selected.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'filterMessage' ,
type : 'string' ,
default : '{0} results are available' ,
description : 'Text to be displayed in hidden accessible field when filtering returns any results. Defaults to value from PrimeVue locale configuration.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'selectionMessage' ,
type : 'string' ,
default : '{0} items selected' ,
description : 'Text to be displayed in hidden accessible field when options are selected. Defaults to value from PrimeVue locale configuration.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'emptySelectionMessage' ,
type : 'string' ,
default : 'No selected item' ,
description : 'Text to be displayed in hidden accessible field when any option is not selected. Defaults to value from PrimeVue locale configuration.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'emptyFilterMessage' ,
type : 'string' ,
default : 'No results found' ,
description : 'Text to display when filtering does not return any results. Defaults to value from PrimeVue locale configuration.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'emptyMessage' ,
type : 'string' ,
default : 'No results found' ,
description : 'Text to display when there are no options available. Defaults to value from PrimeVue locale configuration.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'tabindex' ,
type : 'number' ,
default : '0' ,
description : 'Index of the element in tabbing order.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'aria-label' ,
type : 'string' ,
default : 'null' ,
description : 'Defines a string value that labels an interactive element.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'aria-labelledby' ,
type : 'string' ,
default : 'null' ,
description : 'Identifier of the underlying input element.'
2023-05-07 20:37:26 +00:00
} ,
{
name : 'pt' ,
type : 'any' ,
default : 'null' ,
2023-08-01 14:01:12 +00:00
description : 'Used to pass attributes to DOM elements inside the component.'
2023-07-06 13:20:37 +00:00
} ,
{
name : 'unstyled' ,
type : 'boolean' ,
default : 'false' ,
description : 'When enabled, it removes component related styles in the core.'
2022-09-12 07:13:52 +00:00
}
] ;
const DropdownEvents = [
{
2022-09-14 14:26:41 +00:00
name : 'change' ,
description : 'Callback to invoke on value change.' ,
2022-09-12 07:13:52 +00:00
arguments : [
{
2022-09-14 14:26:41 +00:00
name : 'event.originalEvent' ,
type : 'object' ,
description : 'Browser event'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'event.value' ,
type : 'string' ,
description : 'Selected option value'
2022-09-12 07:13:52 +00:00
}
]
} ,
{
2022-09-14 14:26:41 +00:00
name : 'focus' ,
description : 'Callback to invoke when component receives focus.' ,
2022-09-12 07:13:52 +00:00
arguments : [
{
2022-09-14 14:26:41 +00:00
name : 'event' ,
type : 'object' ,
description : 'Browser event'
2022-09-12 07:13:52 +00:00
}
]
} ,
{
2022-09-14 14:26:41 +00:00
name : 'blur' ,
description : 'Callback to invoke when component loses focus.' ,
2022-09-12 07:13:52 +00:00
arguments : [
{
2022-09-14 14:26:41 +00:00
name : 'event' ,
type : 'object' ,
description : 'Browser event'
2022-09-12 07:13:52 +00:00
}
]
} ,
{
2022-09-14 14:26:41 +00:00
name : 'before-show' ,
description : 'Callback to invoke before the overlay is shown.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'before-hide' ,
description : 'Callback to invoke before the overlay is hidden.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'show' ,
description : 'Callback to invoke when the overlay is shown.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'hide' ,
description : 'Callback to invoke when the overlay is hidden.'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'filter' ,
description : 'Callback to invoke when the overlay is shown.' ,
2022-09-12 07:13:52 +00:00
arguments : [
{
2022-09-14 14:26:41 +00:00
name : 'event.originalEvent' ,
type : 'object' ,
description : 'Browser event'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'event.value' ,
type : 'string' ,
description : 'Filter value'
2022-09-12 07:13:52 +00:00
}
]
}
] ;
const DropdownSlots = [
{
2022-09-14 14:26:41 +00:00
name : 'value' ,
2022-09-12 07:13:52 +00:00
description : "Custom content for the item's value"
} ,
{
2022-09-14 14:26:41 +00:00
name : 'indicator' ,
description : 'Custom content for the dropdown indicator'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'header' ,
2022-09-12 07:13:52 +00:00
description : "Custom content for the component's header"
} ,
{
2022-09-14 14:26:41 +00:00
name : 'footer' ,
2022-09-12 07:13:52 +00:00
description : "Custom content for the component's footer"
} ,
{
2022-09-14 14:26:41 +00:00
name : 'option' ,
2022-09-12 07:13:52 +00:00
description : "Custom content for the item's option"
} ,
{
2022-09-14 14:26:41 +00:00
name : 'optiongroup' ,
2022-09-12 07:13:52 +00:00
description : "Custom content for the item's optiongroup"
} ,
{
2022-09-14 14:26:41 +00:00
name : 'emptyfilter' ,
description : 'Custom content when there is no filtered data to display'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'empty' ,
description : 'Custom content when there is no data to display'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'content' ,
description : 'Custom content for the virtual scroller'
2022-09-12 07:13:52 +00:00
} ,
{
2022-09-14 14:26:41 +00:00
name : 'loader' ,
description : 'Custom content for the virtual scroller loader items'
2023-04-18 13:42:36 +00:00
} ,
{
name : 'clearicon' ,
description : 'Custom clear icon template.'
} ,
{
name : 'dropdownicon' ,
description : 'Custom dropdown icon template.'
} ,
{
name : 'loadingicon' ,
description : 'Custom loading icon template.'
} ,
{
name : 'filtericon' ,
description : 'Custom filter icon template.'
2022-09-12 07:13:52 +00:00
}
] ;
module . exports = {
dropdown : {
2022-09-14 14:26:41 +00:00
name : 'Dropdown' ,
description : 'Dropdown is used to select an item from a list of options.' ,
2022-09-12 07:13:52 +00:00
props : DropdownProps ,
events : DropdownEvents ,
slots : DropdownSlots
}
} ;