# Multi Select

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-644aa682ad300c9ad274ef27119674499d958390%2Fimage%20(391).png?alt=media" alt=""><figcaption></figcaption></figure>

## Basic

#### Manual

The list of options for the select list. The set can contain a single option, and more options can be added.

| Property    | Description                                                                                                                                                                                                                                                                                                                                              |
| ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Label       | The text to be displayed to represent the select option                                                                                                                                                                                                                                                                                                  |
| Value       | The string value to refer the option element. It is used during development typically.                                                                                                                                                                                                                                                                   |
| Prefix Icon | <p>Choose one from the set of icons that will be displayed as a prefix logo, just before the button text.<br><br><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-65cfeaf89bb3791772378d8e2eaa682516e7c744%2Fimage%20(1)%20(1)%20(1).png?alt=media" alt=""></p> |
| Disabled    | Disables the user interaction with the particular option on the page. It visually indicates that the element is inactive and prevents users from interacting with it when applied                                                                                                                                                                        |
| Hide        | This sets whether this option has to be displayed on the screen when the program is loaded. This shows/hides the option both on desktop and mobile devices.                                                                                                                                                                                              |

#### Map

Provide the JSON data of the array, consisting of the checkbox options in the key-value pair format.

Below is a sample JSON content - it must be placed in the '*Data*' field of the Map section.&#x20;

```json
[
  {
    "count": "32",
    "title": "Channel Uploads",
  },
  {
    "count": "253",
    "title": "Oldest",
  },
  {
    "count": "25",
    "title": "Newest",
  },
  {
    "count": "10",
    "title": "Top",
  }
]
```

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2FSC7fFEjvMXyFhU5pc6dj%2Fimage.png?alt=media&#x26;token=c48a610b-c0bf-421b-9240-77caa2af9eb7" alt=""><figcaption></figcaption></figure>

| Property    | Description                                                                                                                                                       |
| ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Label       | The user must fill in the Label field with the code mentioned to get the data displayed. `{{item.title}}`                                                         |
| Value       | The value field may refer the same Label string or user can mention a value in the JSON array with "value" property.                                              |
| Prefix Icon | Pick an icon by choosing one from the list of icons. The value picked in this field will reflect in every node of the widget.                                     |
| Disabled    | Disables the user interaction with the option on the page. The value set in this field will reflect in every node of the widget.                                  |
| Hide        | This sets whether this option has to be displayed on the screen when the program is loaded. The value set in this field will reflect in every node of the widget. |

#### Default Value

Enter the default option to be checked when the widget is loaded. This can also be retrieved from the backend using query or loaded using low-code

#### Placeholder

Specifies a hint that describes the expected value. The placeholder shows the hint text in the widget when nothing is selected or entered. This text disappears as soon as a value is entered in the control.

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-ac612253b0498f2ff3ab31fd7accacc012818332%2Fimage%20(42).png?alt=media" alt=""><figcaption></figcaption></figure>

## Validation

#### Required Field

Refers to the field that must be completed by the user, which means the field must be entered with a valid value before submitting the information.

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-1018ec1ec3ea6523a01f56b7f7aeeaf33ea83874%2Fimage%20(43).png?alt=media" alt=""><figcaption></figcaption></figure>

#### Custom Rule

Apart from validating the entry using the regex rule, users can also use this property to write low-code and check other aspects. For example - check if the city selected in the previous field matches the desired value, throw a custom message to the user even before capturing the entry on this field.

## Interaction

#### Event Handlers

| Event                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <mark style="color:blue;">**`Change`**</mark> | <p>The "Change" event is activated when the value of the widget is changed. When this event triggers, the associated action gets executed.<br><br><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-672dfcc7057f6d8ef62e8b3d953d6023b9a31a4c%2Fimage%20(315).png?alt=media" alt=""></p>                                                                                |
| <mark style="color:blue;">**`Focus`**</mark>  | <p>This event is triggered when the widget receives focus, meaning it becomes the active element that can accept user input.<br><br><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-3aec9c0873fdc0c399aae9ebffa29a05ecd8db27%2Fimage%20(313).png?alt=media" alt=""></p>                                                                                              |
| <mark style="color:blue;">**`Blur`**</mark>   | <p>This event occurs when the user shifts the focus out of the widget. This can happen in different scenarios, such as when a user clicks outside an input widget they were typing in or when the user tabs to another field.<br><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-24927cfad5e62fe4a99996f099833454cba63d05%2Fimage%20(314).png?alt=media" alt=""></p> |

#### Disabled

Disables the user interaction with the element on the page. It visually indicates that the element is inactive and prevents users from interacting with it when applied. Shows a red-crossed warning symbol and can be customized to disable the widget according to certain conditions using low-code.

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-695f356d5e8bc58072102f50922157508eb6122b%2Fimage%20(224).png?alt=media" alt=""><figcaption><p>Read-only</p></figcaption></figure>

#### Hide

This sets whether the widget has to be displayed on the screen when the program is loaded. This shows/hides the widget both on desktop and mobile devices.

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-4aaa812d0b623487c085a616219a4515138079fb%2Fimage%20(211).png?alt=media" alt="" width="338"><figcaption><p>Set the visibility</p></figcaption></figure>

## Label

Represents the caption for the widget in the user interface. It is recommended to keep the label string short and convey the usage of the widget in the UI

#### Position

| Property | Description                                                                                                                                                                                                                                                                               |
| :------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|  `Left`  | <p>Shows the label on the left side of the tree view<br><br><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-758cee84dec26f7b84c8290b9ff6be7625303052%2Fimage%20(392).png?alt=media" alt=""></p> |
|   `Top`  | <p>Shows the label on top of the tree view<br><br><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-c0440b01cf891b04be4a3bd6b1362601645bd5c1%2Fimage%20(394).png?alt=media" alt=""><br></p>       |

#### Alignment

| Property | Description                                                                                                                                                                                                                                                                                                     |
| :------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|  `Left`  | <p>Align the text on the left corner of the label area<br><br><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-758cee84dec26f7b84c8290b9ff6be7625303052%2Fimage%20(393).png?alt=media" alt=""></p>                     |
|  `Right` | <p>Align the text on the right corner of the label area near the tree view<br><br><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-5801f4cb60f763a65e31682bba7f602a6a96de59%2Fimage%20(395).png?alt=media" alt=""></p> |

#### Width

Enter a number value to set the width of the widget. It can be set in terms of pixels and percentage.

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-d9be94a993ae1150c38142b56dedb303a7b487eb%2Fimage%20(94).png?alt=media" alt=""><figcaption></figcaption></figure>

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-9c4ec770d5e987d374a18dc814e06c349e3f7749%2Fimage%20(95).png?alt=media" alt=""><figcaption></figcaption></figure>

## Layout

#### Widget Tooltip

This tooltip pops up when the user moves the mouse over the input area of the widget. It is commonly used to hint at the type of input the user needs to provide.

The tooltip will be immediately shown when the user's mouse hovers over the widget, and immediately hides when the user's mouse leaves. This information will be contextual, useful, and informative.

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-f6f026f75e82bff1470aec1e0e896dc92f755ac0%2Fimage%20(45).png?alt=media" alt=""><figcaption></figcaption></figure>

#### Height

| Property | Description                                 |
| -------- | ------------------------------------------- |
| Auto     | The height is auto-adjusted for the content |
| Fixed    | The height of the widget is fixed           |

## Advanced

#### Show Clear Button

Displays a small 'x' type button at the end of the widget, which helps the user to clear out the previous entries and selections.

#### Searchable

Enables the search feature for users to type and search. It filters down the results and shows the matching options.

#### Enable Select All option

Provides users with the feature to select all the options at one click. It also allows to deselect all options at once.

## Style

<table><thead><tr><th width="218" align="center">Property</th><th>Description</th></tr></thead><tbody><tr><td align="center">Label</td><td>Set the colour of the label text. Recommended to set in contrast with the background.</td></tr><tr><td align="center">Text</td><td>Set the colour of the options' text. Recommended to set in contrast with the background.</td></tr><tr><td align="center">Text Transform</td><td>This property specifies how to capitalize an element's text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized. <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/text-transform">MDN web docs</a></td></tr><tr><td align="center">Text Decoration</td><td>This property sets the appearance of decorative lines on text. Types are "underline", "overline", "line-though", "overline-underline".</td></tr><tr><td align="center">Text Size</td><td>Set the size of the text in px value - 12px</td></tr><tr><td align="center">Text Weight</td><td>Increase or decrease the thickness of the font using the list of numbers from 100-800.</td></tr><tr><td align="center">Font Family</td><td>Type the name of the font family. The reference to the list of font families can be found here: <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/font-family">MDN web docs</a></td></tr><tr><td align="center">Font Style</td><td>There are 3 types of styles that can be applied:<br>"normal" - The text is shown normally, no style applied.<br>"italic" - The text is cursive.<br>"oblique" - A sloped version of the normal text.</td></tr><tr><td align="center">Background</td><td>Users can change the colour of the text background using this property. It has all the RGB colour ranges to pick from. It is recommended to use a corresponding background colour that shows the font clearly.</td></tr><tr><td align="center">Border Color</td><td>Set the colour to the border lines. The border lines will be shown only if that is enabled.</td></tr><tr><td align="center">Margin</td><td>This value is set in terms of "px" number which creates the space between the border and the content of the widget.</td></tr><tr><td align="center">Padding</td><td>This value is set in terms of "px" number which creates the space between the border and outer elements.</td></tr><tr><td align="center">Border Radius</td><td>This sets the radius of the widget's corners, enabling rounded corners on the widget. This value is defined in "px" terms.</td></tr><tr><td align="center">Border Width</td><td>Set the thickness of the border of the widget using this value. It is defined using "px" terms.</td></tr><tr><td align="center">Tags</td><td>Set the colour for the chosen options and displayed as the selected items.</td></tr><tr><td align="center">Tags Text</td><td>The colour for the 'x' mark on the chosen options.</td></tr><tr><td align="center">Multiselect Icon</td><td>The colour for the tick-mark on the chosen options, shown when they are collapsed on user click on the widget.</td></tr><tr><td align="center">Box Shadow</td><td>The is the colour of the shadow that is generated behind the widget box. The X and Y axis values can be altered such that the shadow can be set to fall anywhere behind the widget area.<br>"x-offset" - a positive number specifies the shadow will be on the right of the box, and a negative number will put the shadow on the left of the box.<br>"y-offset" - a negative one means the shadow will be above the box, and a positive number means the shadow will be below the box.<br>"Blur" - if the number is set to 0 then the shadow will be sharp. It will more blurred as the number goes higher, and the shadow will extend further away.<br>"Color" - sets the colour of the shadow. If the colour is not set, the box shadows are drawn in the foreground colour.</td></tr><tr><td align="center">Dropdown Background</td><td>Set the background color for the dropdown area. Users can change the colour of the text background using this property. It has all the RGB colour ranges to pick from. It is recommended to use a corresponding background colour that shows the font clearly.</td></tr><tr><td align="center">Dropdown Hover Background</td><td>Set the background color for the dropdown area when the mouse-hover action occurs. Users can change the colour of the text background using this property. It has all the RGB colour ranges to pick from. It is recommended to use a corresponding background colour that shows the font clearly.</td></tr><tr><td align="center">Dropdown Selected Background</td><td>Set the background color for the selected options. Users can change the colour of the text background using this property. It has all the RGB colour ranges to pick from. It is recommended to use a corresponding background colour that shows the font clearly.</td></tr><tr><td align="center">Accent</td><td><p>An <strong>accent</strong> is a typically bright colour that contrasts with the more utilitarian background and foreground colours within a colour scheme. These are present in the visual style of many platforms (though not all).</p><p>On the web, an accent is sometimes used in input elements for the active portion of the control, for instance, the background of a checked checkbox. <a href="https://developer.mozilla.org/en-US/docs/Glossary/Accent">MSDN web docs</a></p></td></tr><tr><td align="center">Validation Message</td><td>Set the colour of the validation text message. Recommended to set in contrast with the background, usually Red.</td></tr></tbody></table>

#### Custom CSS

Users can write a specific style using CSS syntax here and the style text will be applied to the widget when the program is loaded.

<figure><img src="https://125370873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzdpN2Lz0hzXpnNScDzVt%2Fuploads%2Fgit-blob-fa9e1a594d90201b6a93731c5462360bf0264480%2Fimage%20(243).png?alt=media" alt=""><figcaption></figcaption></figure>
