(this page was created automatically. In case of formatting issues, please visit the official Wiki Page)

Multi-Select

Overview

Example Multi Select

Specs

Tokens

Token Description
placeholderTranslations Placeholder text with localization support
hidden Controls visibility of the component
saveInLocalStorage Saves selected values in local storage
defaultValue Sets initial selected values
readonly Displays values without allowing changes
dataField Field name used in form submission
useStaticData Toggles between static list or dynamic source
emitObject Emits full object instead of key value
staticData Defines static options with value and text
dataSourcePath Path in response where options are located
controlsRequestType Specifies request data handling (BODY, HEADER, PATH)
dataSourceId Data source ID for fetching dropdown options
getEntityCollectionHttpRequestParametersMap Maps HTTP parameters for API requests
modelValue Property used as the value in options
modelDisplayValue Property used as display text in options
pageSize Number of items per page when paginated
loadAll Loads all options at once instead of paginating
validation Configures validation rules
required Requires at least one selection
authorizationDisable Policy set controlling disabled state
events Configurable component events
ON_INIT (Events) Triggered when initialized
ON_DESTROY (Events) Triggered when removed
ON_VALUE_CHANGE (Events) Triggered when selection changes
ON_INIT_BASED_ON_USER_VIEW (Events) Triggered when initialized in user view mode

Structure

Multi Select Structure

(Configured in Visual Properties)

(Configured in Non-Visual Properties)

Datasource

(Configured in Non-Visual Properties and Datasource)

Configuring static data

Display

(Configured in Non-Visual Properties and Datasource)

Styling

(Configured in Visual Properties)

(Configured in Datasource Properties)

Visual Properties tab

Actions & Variants

(Configured in Visual Properties)

(Configured in Events)

Authorization

(Configured in Authorization)

Validation

(Configured in Validation)

Links

Guidelines

(Technical Details Example)

{ 
  "content": [ 
    { "id": "1", "name": "Option 1" }, 
    { "id": "2", "name": "Option 2" } 
  ], 
  "totalElements": 100, 
  "totalPages": 10, 
  "number": 0, 
  "size": 10, 
  "first": true, 
  "last": false, 
  "empty": false 
}

Usage

Sizing & Layout

States & Feedback

Visibility & Authorization

Content & Localization

Dos & Don’ts

Do Don’t Article setting(s)
Prefill common choices to speed completion. Force users to reselect frequent values each visit. defaultValue, saveInLocalStorage
Use dynamic data for long/volatile lists. Hard-code large or frequently changing lists. useStaticData: false, dataSourceId, dataSourcePath
Expose readable labels and stable IDs. Display raw IDs or ambiguous labels. modelDisplayValue, modelValue
Require only when truly needed. Mark every Multi-Select as required. validation.required
Tune list length for scanability. Dump hundreds of items on one page. pageSize, loadAll
Emit full objects when downstream logic needs attributes. Add extra requests to rehydrate selected IDs. emitObject: true
Disable for permission gaps; show selected values. Hide controls users expect to see with missing feedback. authorizationDisable, readonly
Hide the control when it must not appear. Show a control that isn’t applicable and hope it’s ignored. hidden: true
Localize the empty prompt. Leave an English-only placeholder. placeholderTranslations
Wire dependent updates to changes. Rely on manual refresh after selection. events.ON_VALUE_CHANGE
Clean up on teardown. Leave subscriptions or requests hanging. events.ON_DESTROY
Align submission location with backend. Always send values in the body regardless of API contract. controlsRequestType, dataField

Accessibility