selectAllLabel21.3.2 | string | undefined | 'Select all' | Visible text of the panel's select-all button (shown when showControls is on). Also via GOG_CONFIG.labels.selectAll. |
clearAllLabel21.3.2 | string | undefined | 'Clear' | The clear-all button next to it. Also via GOG_CONFIG.labels.clearAll. |
value | (string | number)[] (model) | [] | Two-way bindable selected option ids via [(value)]. Also driven by Angular Forms through writeValue/registerOnChange when used with formControlName/[formControl]/ngModel. |
label | string | '' | Field label. |
ariaLabel | string | '' | Accessible name for the field when there is no visible label. |
placeholder | string | 'Select...' | Text shown while no option is selected. |
options | TOption[] | [] | The list of choices — your own objects. GogDropdownOption ({ id, name, disabled? }) is just the shape the default accessors expect, not a requirement. |
optionLabel | string | ((o: TOption) => string) | 'name' | How an option turns into its visible text: a property path (dot-paths included) or a function. |
optionValue | string | ((o: TOption) => unknown) | null | 'id' | How an option turns into an emitted value. Set it to null and the control emits the option OBJECTS themselves. |
optionDisabled | string | ((o: TOption) => boolean) | 'disabled' | Which options cannot be picked. |
clearable | boolean | GOG_CONFIG.control.clearable ?? true | Adds a clear button in the outermost trailing position. Deliberately the one control that defaults to true: gog-multiselect shipped a clear button before this input existed, and defaulting it to false would have silently removed it. |
clearAriaLabel | string | 'Clear selection' | Accessible name for that clear button. |
filter | boolean | GOG_CONFIG.dropdown.filter ?? false | Puts a search box in the panel, matching case-insensitively on the resolved optionLabel. "Select all" then takes only the VISIBLE options, so it means what it says while a filter is active. |
filterPosition | 'top' | 'bottom' | GOG_CONFIG.dropdown.filterPosition ?? 'top' | Which end of the panel the search box sticks to — the same vocabulary as controlsPosition, rather than a second one for the same idea. |
filterPlaceholder / filterEmptyMessage | string | 'Search...' / 'No matches' | Wording for the search box and for the empty result. |
filterMatch | ((option: TOption, query: string) => boolean) | null | null | Replaces the default case-insensitive substring match with your own predicate. |
floatLabel | 'none' | 'in' | 'on' | 'over' | GOG_CONFIG.floatLabel.variant ?? 'none' | Rests the label inside the field like a placeholder and floats it up once the selection is non-empty or the field has focus. |
floatLabelShowPlaceholder | boolean | GOG_CONFIG.floatLabel.showPlaceholder ?? false | Reveals the placeholder once the label has floated out of the way. |
minWidth | string | null | null (--gog-multiselect-min-width, 120px) | Floor for an auto-width trigger, any CSS length — so a short selection cannot collapse the field to its own chrome. |
showControls | boolean | false | Shows a "select all" / "clear" row above (or below) the option list. |
controlsPosition | 'top' | 'bottom' | 'top' | Where the select-all/clear row sits relative to the option list. Sticky either way, so it stays visible while a long list scrolls. |
clearIconTemplate | TemplateRef<unknown> | null | null | Deprecated since 21.3.0, removed in 21.5.0 — project an <ng-template gogMultiselectClearIcon> instead. Still works, and the projected slot wins when both are present. |
errorMessage | string | '' | Error text to display. Visibility is governed by errorDisplay. |
errorDisplay | 'auto' | 'manual' | GOG_CONFIG.control.errorDisplay ?? 'manual' | 'manual': shown for as long as errorMessage is non-empty — you decide the timing. 'auto': shown once the attached FormControl is touched and invalid; falls back to manual without one. |
size | 'xsm' | 'sm' | 'md' | 'lg' | 'slg' | GOG_CONFIG.control.size ?? 'md' | Field height, padding, and font size. |
disabled | boolean | false | Disables the trigger and closes the panel if it is open. |
fullWidth | boolean | true | Fills its container by default. Set false to shrink to fit the selected summary instead. |
dropdownDirection | 'auto' | 'up' | 'down' | GOG_CONFIG.dropdown.direction ?? 'auto' | Which side the panel opens on. 'auto' flips to whichever side has room in the viewport. |
dropdownZIndex | number | null | null | Explicit stacking order for the panel. Left unset it falls back to the --gog-dropdown-z token. |
dropdownWidth | string | null | null | Fixed panel width, any CSS length. Applies only with appendToBody. Left unset, the panel sizes to its own content with the trigger width as a floor, capped by --gog-{select,multiselect}-panel-max-width — so picking a short option no longer cuts the longer ones off the list. |
dropdownMaxHeight | string | null | null | Fixed panel max-height, any CSS length. Applies only with appendToBody. |
appendToBody | boolean | GOG_CONFIG.dropdown.appendToBody ?? false | Portals the panel into document.body instead of rendering it inline — escapes an ancestor's scroll/overflow clipping. |
chevronTemplate | TemplateRef<unknown> | null | null | Deprecated since 21.3.0, removed in 21.5.0 — project an <ng-template gogDropdownChevron> instead. Still works, and the projected slot wins when both are present. |