@primevue/mcp 4.5.5 → 5.0.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/LICENSE.md +45 -21
  2. package/README.md +48 -250
  3. package/data/components.json +47269 -0
  4. package/data/llms/components/accordion.md +629 -0
  5. package/data/llms/components/animateonscroll.md +165 -0
  6. package/data/llms/components/autocomplete.md +995 -0
  7. package/data/llms/components/avatar.md +264 -0
  8. package/data/llms/components/badge.md +200 -0
  9. package/data/llms/components/blockui.md +99 -0
  10. package/data/llms/components/breadcrumb.md +269 -0
  11. package/data/llms/components/button.md +902 -0
  12. package/data/llms/components/card.md +209 -0
  13. package/data/llms/components/carousel.md +506 -0
  14. package/data/llms/components/cascadeselect.md +1207 -0
  15. package/data/llms/components/chart.md +1022 -0
  16. package/data/llms/components/checkbox.md +401 -0
  17. package/data/llms/components/chip.md +206 -0
  18. package/data/llms/components/colorpicker.md +213 -0
  19. package/data/llms/components/commandmenu.md +660 -0
  20. package/data/llms/components/compare.md +407 -0
  21. package/data/llms/components/confirmdialog.md +343 -0
  22. package/data/llms/components/confirmpopup.md +252 -0
  23. package/data/llms/components/contextmenu.md +522 -0
  24. package/data/llms/components/datatable.md +5266 -0
  25. package/data/llms/components/dataview.md +569 -0
  26. package/data/llms/components/datepicker.md +964 -0
  27. package/data/llms/components/deferredcontent.md +96 -0
  28. package/data/llms/components/dialog.md +702 -0
  29. package/data/llms/components/divider.md +152 -0
  30. package/data/llms/components/dock.md +488 -0
  31. package/data/llms/components/drawer.md +469 -0
  32. package/data/llms/components/dynamicdialog.md +214 -0
  33. package/data/llms/components/editor.md +205 -0
  34. package/data/llms/components/fieldset.md +253 -0
  35. package/data/llms/components/fileupload.md +459 -0
  36. package/data/llms/components/floatlabel.md +144 -0
  37. package/data/llms/components/fluid.md +104 -0
  38. package/data/llms/components/focustrap.md +59 -0
  39. package/data/llms/components/forms.md +344 -0
  40. package/data/llms/components/galleria.md +1119 -0
  41. package/data/llms/components/gallery.md +1003 -0
  42. package/data/llms/components/iconfield.md +283 -0
  43. package/data/llms/components/iftalabel.md +96 -0
  44. package/data/llms/components/image.md +179 -0
  45. package/data/llms/components/imagecompare.md +108 -0
  46. package/data/llms/components/inplace.md +183 -0
  47. package/data/llms/components/inputcolor.md +869 -0
  48. package/data/llms/components/inputgroup.md +419 -0
  49. package/data/llms/components/inputmask.md +345 -0
  50. package/data/llms/components/inputnumber.md +551 -0
  51. package/data/llms/components/inputotp.md +345 -0
  52. package/data/llms/components/inputpassword.md +738 -0
  53. package/data/llms/components/inputtags.md +432 -0
  54. package/data/llms/components/inputtext.md +569 -0
  55. package/data/llms/components/installation.md +1 -0
  56. package/data/llms/components/keyfilter.md +116 -0
  57. package/data/llms/components/knob.md +318 -0
  58. package/data/llms/components/label.md +151 -0
  59. package/data/llms/components/laravel.md +53 -0
  60. package/data/llms/components/listbox.md +636 -0
  61. package/data/llms/components/mask.md +203 -0
  62. package/data/llms/components/mcp.md +39 -0
  63. package/data/llms/components/megamenu.md +563 -0
  64. package/data/llms/components/menu.md +651 -0
  65. package/data/llms/components/menubar.md +446 -0
  66. package/data/llms/components/message.md +497 -0
  67. package/data/llms/components/metergroup.md +281 -0
  68. package/data/llms/components/multiselect.md +752 -0
  69. package/data/llms/components/orderlist.md +224 -0
  70. package/data/llms/components/organizationchart.md +418 -0
  71. package/data/llms/components/paginator.md +221 -0
  72. package/data/llms/components/panel.md +321 -0
  73. package/data/llms/components/panelmenu.md +703 -0
  74. package/data/llms/components/password.md +657 -0
  75. package/data/llms/components/picklist.md +286 -0
  76. package/data/llms/components/popover.md +145 -0
  77. package/data/llms/components/progressbar.md +242 -0
  78. package/data/llms/components/progressspinner.md +104 -0
  79. package/data/llms/components/radiobutton.md +427 -0
  80. package/data/llms/components/rating.md +312 -0
  81. package/data/llms/components/ripple.md +91 -0
  82. package/data/llms/components/scrollarea.md +700 -0
  83. package/data/llms/components/scrollpanel.md +131 -0
  84. package/data/llms/components/scrolltop.md +87 -0
  85. package/data/llms/components/select.md +1251 -0
  86. package/data/llms/components/selectbutton.md +268 -0
  87. package/data/llms/components/sidebar.md +2232 -0
  88. package/data/llms/components/skeleton.md +302 -0
  89. package/data/llms/components/slider.md +416 -0
  90. package/data/llms/components/speeddial.md +402 -0
  91. package/data/llms/components/splitbutton.md +840 -0
  92. package/data/llms/components/splitter.md +447 -0
  93. package/data/llms/components/stepper.md +551 -0
  94. package/data/llms/components/styleclass.md +226 -0
  95. package/data/llms/components/tabs.md +609 -0
  96. package/data/llms/components/tag.md +178 -0
  97. package/data/llms/components/terminal.md +123 -0
  98. package/data/llms/components/textarea.md +519 -0
  99. package/data/llms/components/tieredmenu.md +578 -0
  100. package/data/llms/components/timeline.md +494 -0
  101. package/data/llms/components/toast.md +472 -0
  102. package/data/llms/components/togglebutton.md +276 -0
  103. package/data/llms/components/toggleswitch.md +271 -0
  104. package/data/llms/components/toolbar.md +140 -0
  105. package/data/llms/components/tooltip.md +160 -0
  106. package/data/llms/components/tree.md +1076 -0
  107. package/data/llms/components/treeselect.md +660 -0
  108. package/data/llms/components/treetable.md +2493 -0
  109. package/data/llms/components/virtualscroller.md +265 -0
  110. package/data/llms/guides/autoimport.md +28 -0
  111. package/data/llms/guides/cdn.md +72 -0
  112. package/data/llms/guides/configuration.md +158 -0
  113. package/data/llms/guides/customicons.md +67 -0
  114. package/data/llms/guides/guides/accessibility.md +27 -0
  115. package/data/llms/guides/guides/animations.md +119 -0
  116. package/data/llms/guides/guides/rtl.md +7 -0
  117. package/data/llms/guides/icons.md +136 -0
  118. package/data/llms/guides/installation.md +3 -0
  119. package/data/llms/guides/laravel.md +66 -0
  120. package/data/llms/guides/llms.md +15 -0
  121. package/data/llms/guides/mcp.md +104 -0
  122. package/data/llms/guides/migration/v4.md +15 -0
  123. package/data/llms/guides/migration/v5.md +15 -0
  124. package/data/llms/guides/nuxt.md +141 -0
  125. package/data/llms/guides/passthrough.md +137 -0
  126. package/data/llms/guides/primeclt.md +43 -0
  127. package/data/llms/guides/tailwind.md +151 -0
  128. package/data/llms/guides/theming/styled.md +497 -0
  129. package/data/llms/guides/theming/unstyled.md +57 -0
  130. package/data/llms/guides/uikit.md +3 -0
  131. package/data/llms/guides/vite.md +90 -0
  132. package/data/llms/llms-full.txt +54465 -0
  133. package/data/llms/llms.txt +132 -0
  134. package/data/llms/pages/accessibility.md +27 -0
  135. package/data/llms/pages/animations.md +119 -0
  136. package/data/llms/pages/autoimport.md +28 -0
  137. package/data/llms/pages/cdn.md +72 -0
  138. package/data/llms/pages/configuration.md +158 -0
  139. package/data/llms/pages/contribution.md +31 -0
  140. package/data/llms/pages/customicons.md +67 -0
  141. package/data/llms/pages/designer.md +79 -0
  142. package/data/llms/pages/dynamicimports.md +7 -0
  143. package/data/llms/pages/forms.md +63 -0
  144. package/data/llms/pages/guides/accessibility.md +27 -0
  145. package/data/llms/pages/guides/animations.md +119 -0
  146. package/data/llms/pages/guides/rtl.md +7 -0
  147. package/data/llms/pages/icons.md +136 -0
  148. package/data/llms/pages/installation.md +3 -0
  149. package/data/llms/pages/introduction.md +23 -0
  150. package/data/llms/pages/laravel.md +66 -0
  151. package/data/llms/pages/llms.md +15 -0
  152. package/data/llms/pages/mcp.md +104 -0
  153. package/data/llms/pages/migration/v4.md +15 -0
  154. package/data/llms/pages/migration/v5.md +15 -0
  155. package/data/llms/pages/nuxt.md +141 -0
  156. package/data/llms/pages/passthrough.md +137 -0
  157. package/data/llms/pages/primeclt.md +43 -0
  158. package/data/llms/pages/rtl.md +7 -0
  159. package/data/llms/pages/setup.md +3 -0
  160. package/data/llms/pages/styled.md +497 -0
  161. package/data/llms/pages/tailwind.md +151 -0
  162. package/data/llms/pages/theming/styled.md +497 -0
  163. package/data/llms/pages/theming/unstyled.md +57 -0
  164. package/data/llms/pages/uikit.md +3 -0
  165. package/data/llms/pages/unstyled.md +57 -0
  166. package/data/llms/pages/v4.md +15 -0
  167. package/data/llms/pages/v5.md +15 -0
  168. package/data/llms/pages/vite.md +90 -0
  169. package/data/manifest.json +11117 -0
  170. package/data/mcp-data.json +55940 -0
  171. package/dist/index.d.ts +17 -1
  172. package/dist/index.js +66066 -72541
  173. package/package.json +10 -12
@@ -0,0 +1,752 @@
1
+ # MultiSelect
2
+
3
+ MultiSelect is used to select multiple items from a collection.
4
+
5
+ ## Basic
6
+
7
+ MultiSelect is used as a controlled component with v-model property along with an options collection. Label and value of an option are defined with the optionLabel and optionValue properties respectively. Default property name for the optionLabel is label and value for the optionValue . If optionValue is omitted and the object has no value property, the object itself becomes the value of an option. Note that, when options are simple primitive values such as a string array, no optionLabel and optionValue would be necessary.
8
+
9
+ ```vue
10
+ <template>
11
+ <div class="flex justify-center">
12
+ <MultiSelect v-model="selectedCities" :options="cities" optionLabel="name" placeholder="Select Cities" :maxSelectedLabels="3" class="w-full md:w-80" />
13
+ </div>
14
+ </template>
15
+
16
+ <script setup>
17
+ import { ref } from 'vue';
18
+
19
+ const selectedCities = ref(null);
20
+ const cities = ref([
21
+ { name: 'New York', code: 'NY' },
22
+ { name: 'Rome', code: 'RM' },
23
+ { name: 'London', code: 'LDN' },
24
+ { name: 'Istanbul', code: 'IST' },
25
+ { name: 'Paris', code: 'PRS' }
26
+ ]);
27
+ <\/script>
28
+ ```
29
+
30
+ ## Chips
31
+
32
+ Selected values are displayed as a comma separated list by default, setting display as chip displays them as chips.
33
+
34
+ ```vue
35
+ <template>
36
+ <div class="flex justify-center">
37
+ <MultiSelect v-model="selectedCities" :options="cities" placeholder="Select Cities" optionLabel="name" display="chip" class="w-full md:w-80" />
38
+ </div>
39
+ </template>
40
+
41
+ <script setup>
42
+ import { ref } from 'vue';
43
+
44
+ const selectedCities = ref(null);
45
+ const cities = ref([
46
+ { name: 'New York', code: 'NY' },
47
+ { name: 'Rome', code: 'RM' },
48
+ { name: 'London', code: 'LDN' },
49
+ { name: 'Istanbul', code: 'IST' },
50
+ { name: 'Paris', code: 'PRS' }
51
+ ]);
52
+ <\/script>
53
+ ```
54
+
55
+ ## Group
56
+
57
+ Options can be grouped when a nested data structures is provided.
58
+
59
+ ```vue
60
+ <template>
61
+ <div class="flex justify-center">
62
+ <MultiSelect v-model="selectedCities" :options="groupedCities" optionLabel="label" optionGroupLabel="label" optionGroupChildren="items" display="chip" placeholder="Select Cities" scrollHeight="250px" class="w-full md:w-80">
63
+ <template #optiongroup="slotProps">
64
+ <div class="flex items-center">
65
+ <img :alt="slotProps.option.label" src="https://primefaces.org/cdn/primevue/images/flag/flag_placeholder.png" :class="\`flag flag-\${slotProps.option.code.toLowerCase()} mr-2\`" style="width: 18px" />
66
+ <div>{{ slotProps.option.label }}</div>
67
+ </div>
68
+ </template>
69
+ </MultiSelect>
70
+ </div>
71
+ </template>
72
+
73
+ <script setup>
74
+ import { ref } from "vue";
75
+
76
+ const selectedCities = ref();
77
+ const groupedCities = ref([
78
+ {
79
+ label: 'Germany',
80
+ code: 'DE',
81
+ items: [
82
+ { label: 'Berlin', value: 'Berlin' },
83
+ { label: 'Frankfurt', value: 'Frankfurt' },
84
+ { label: 'Hamburg', value: 'Hamburg' },
85
+ { label: 'Munich', value: 'Munich' }
86
+ ]
87
+ },
88
+ {
89
+ label: 'USA',
90
+ code: 'US',
91
+ items: [
92
+ { label: 'Chicago', value: 'Chicago' },
93
+ { label: 'Los Angeles', value: 'Los Angeles' },
94
+ { label: 'New York', value: 'New York' },
95
+ { label: 'San Francisco', value: 'San Francisco' }
96
+ ]
97
+ },
98
+ {
99
+ label: 'Japan',
100
+ code: 'JP',
101
+ items: [
102
+ { label: 'Kyoto', value: 'Kyoto' },
103
+ { label: 'Osaka', value: 'Osaka' },
104
+ { label: 'Tokyo', value: 'Tokyo' },
105
+ { label: 'Yokohama', value: 'Yokohama' }
106
+ ]
107
+ }
108
+ ]);
109
+ <\/script>
110
+ ```
111
+
112
+ ## Template
113
+
114
+ Available options and the selected options support customization with option and chip templates respectively. In addition, header, footer and filter sections can be templated as well.
115
+
116
+ ```vue
117
+ <template>
118
+ <div class="flex justify-center">
119
+ <MultiSelect v-model="selectedCountries" :options="countries" optionLabel="name" placeholder="Select Countries" display="chip" class="w-full md:w-80">
120
+ <template #option="slotProps">
121
+ <div class="flex items-center">
122
+ <img :alt="slotProps.option.name" src="https://primefaces.org/cdn/primevue/images/flag/flag_placeholder.png" :class="\`flag flag-\${slotProps.option.code.toLowerCase()} mr-2\`" style="width: 18px" />
123
+ <div>{{ slotProps.option.name }}</div>
124
+ </div>
125
+ </template>
126
+ <template #dropdownicon>
127
+ <Map />
128
+ </template>
129
+ <template #filtericon>
130
+ <MapMarker />
131
+ </template>
132
+ <template #header>
133
+ <div class="font-medium px-3 py-2">Available Countries</div>
134
+ </template>
135
+ <template #footer>
136
+ <div class="p-3 flex justify-between">
137
+ <Button severity="secondary" variant="text" size="small">
138
+ <Plus />
139
+ Add New
140
+ </Button>
141
+ <Button severity="danger" variant="text" size="small">
142
+ <Times />
143
+ Remove All
144
+ </Button>
145
+ </div>
146
+ </template>
147
+ </MultiSelect>
148
+ </div>
149
+ </template>
150
+
151
+ <script setup>
152
+ import { ref } from "vue";
153
+ import Map from '@primeicons/vue/map';
154
+ import MapMarker from '@primeicons/vue/map-marker';
155
+ import Plus from '@primeicons/vue/plus';
156
+ import Times from '@primeicons/vue/times';
157
+
158
+ const selectedCountries = ref();
159
+ const countries = ref([
160
+ { name: 'Australia', code: 'AU' },
161
+ { name: 'Brazil', code: 'BR' },
162
+ { name: 'China', code: 'CN' },
163
+ { name: 'Egypt', code: 'EG' },
164
+ { name: 'France', code: 'FR' },
165
+ { name: 'Germany', code: 'DE' },
166
+ { name: 'India', code: 'IN' },
167
+ { name: 'Japan', code: 'JP' },
168
+ { name: 'Spain', code: 'ES' },
169
+ { name: 'United States', code: 'US' }
170
+ ]);
171
+ <\/script>
172
+ ```
173
+
174
+ ## Filter
175
+
176
+ MultiSelect provides built-in filtering that is enabled by adding the filter property.
177
+
178
+ ```vue
179
+ <template>
180
+ <div class="flex justify-center">
181
+ <MultiSelect v-model="selectedCities" :options="cities" filter optionLabel="name" placeholder="Select Cities" :maxSelectedLabels="3" class="w-full md:w-80" />
182
+ </div>
183
+ </template>
184
+
185
+ <script setup>
186
+ import { ref } from 'vue';
187
+
188
+ const selectedCities = ref(null);
189
+ const cities = ref([
190
+ { name: 'New York', code: 'NY' },
191
+ { name: 'Rome', code: 'RM' },
192
+ { name: 'London', code: 'LDN' },
193
+ { name: 'Istanbul', code: 'IST' },
194
+ { name: 'Paris', code: 'PRS' }
195
+ ]);
196
+ <\/script>
197
+ ```
198
+
199
+ ## Loading State
200
+
201
+ Loading state can be used loading property.
202
+
203
+ ```vue
204
+ <template>
205
+ <div class="flex justify-center">
206
+ <MultiSelect v-model="selectedCities" :options="cities" loading optionLabel="name" placeholder="Loading..." class="w-full md:w-80" />
207
+ </div>
208
+ </template>
209
+
210
+ <script setup>
211
+ import { ref } from 'vue';
212
+
213
+ const selectedCities = ref(null);
214
+ const cities = ref([
215
+ { name: 'New York', code: 'NY' },
216
+ { name: 'Rome', code: 'RM' },
217
+ { name: 'London', code: 'LDN' },
218
+ { name: 'Istanbul', code: 'IST' },
219
+ { name: 'Paris', code: 'PRS' }
220
+ ]);
221
+ <\/script>
222
+ ```
223
+
224
+ ## VirtualScroll
225
+
226
+ VirtualScroller is used to render a long list of options efficiently like 100K records in this demo. The configuration is done with virtualScrollerOptions property, refer to the VirtualScroller for more information about the available options as it is used internally by MultiSelect.
227
+
228
+ ```vue
229
+ <template>
230
+ <div class="flex justify-center">
231
+ <MultiSelect
232
+ v-model="selectedItems"
233
+ :options="items"
234
+ :maxSelectedLabels="3"
235
+ :selectAll="selectAll"
236
+ @selectall-change="onSelectAllChange($event)"
237
+ @change="onChange($event)"
238
+ optionLabel="label"
239
+ optionValue="value"
240
+ :virtualScrollerOptions="{ itemSize: 44 }"
241
+ placeholder="Select Item"
242
+ class="w-full md:w-80"
243
+ />
244
+ </div>
245
+ </template>
246
+
247
+ <script setup>
248
+ import { ref } from 'vue';
249
+
250
+ const selectedItems = ref();
251
+ const selectAll = ref(false);
252
+ const items = ref(Array.from({ length: 100000 }, (_, i) => ({ label: \`Item #\${i}\`, value: i })));
253
+
254
+ const onSelectAllChange = (event) => {
255
+ selectedItems.value = event.checked ? items.value.map((item) => item.value) : [];
256
+ selectAll.value = event.checked;
257
+ };
258
+
259
+ const onChange = (event) => {
260
+ selectAll.value = event.value.length === items.value.length;
261
+ };
262
+ <\/script>
263
+ ```
264
+
265
+ ## Float Label
266
+
267
+ A floating label appears on top of the input field when focused. Visit FloatLabel documentation for more information.
268
+
269
+ ```vue
270
+ <template>
271
+ <div class="flex flex-wrap justify-center items-end gap-4">
272
+ <FloatLabel class="w-full md:w-80">
273
+ <MultiSelect id="over_label" v-model="value1" :options="cities" optionLabel="name" filter :maxSelectedLabels="3" class="w-full" />
274
+ <label for="over_label">Over Label</label>
275
+ </FloatLabel>
276
+
277
+ <FloatLabel class="w-full md:w-80" variant="in">
278
+ <MultiSelect id="in_label" v-model="value2" :options="cities" optionLabel="name" filter :maxSelectedLabels="3" class="w-full" />
279
+ <label for="in_label">In Label</label>
280
+ </FloatLabel>
281
+
282
+ <FloatLabel class="w-full md:w-80" variant="on">
283
+ <MultiSelect id="on_label" v-model="value3" :options="cities" optionLabel="name" filter :maxSelectedLabels="3" class="w-full" />
284
+ <label for="on_label">On Label</label>
285
+ </FloatLabel>
286
+ </div>
287
+ </template>
288
+
289
+ <script setup>
290
+ import { ref } from 'vue';
291
+
292
+ const value1 = ref(null);
293
+ const value2 = ref(null);
294
+ const value3 = ref(null);
295
+ const cities = ref([
296
+ { name: 'New York', code: 'NY' },
297
+ { name: 'Rome', code: 'RM' },
298
+ { name: 'London', code: 'LDN' },
299
+ { name: 'Istanbul', code: 'IST' },
300
+ { name: 'Paris', code: 'PRS' }
301
+ ]);
302
+ <\/script>
303
+ ```
304
+
305
+ ## Ifta Label
306
+
307
+ IftaLabel is used to create infield top aligned labels. Visit IftaLabel documentation for more information.
308
+
309
+ ```vue
310
+ <template>
311
+ <div class="flex justify-center">
312
+ <IftaLabel class="w-full md:w-80">
313
+ <MultiSelect v-model="selectedCities" inputId="ms_cities" :options="cities" optionLabel="name" filter :maxSelectedLabels="3" class="w-full" />
314
+ <label for="ms_cities">Cities</label>
315
+ </IftaLabel>
316
+ </div>
317
+ </template>
318
+
319
+ <script setup>
320
+ import { ref } from 'vue';
321
+
322
+ const selectedCities = ref(null);
323
+ const cities = ref([
324
+ { name: 'New York', code: 'NY' },
325
+ { name: 'Rome', code: 'RM' },
326
+ { name: 'London', code: 'LDN' },
327
+ { name: 'Istanbul', code: 'IST' },
328
+ { name: 'Paris', code: 'PRS' }
329
+ ]);
330
+ <\/script>
331
+ ```
332
+
333
+ ## Clear Icon
334
+
335
+ When showClear is enabled, a clear icon is displayed to clear the value.
336
+
337
+ ```vue
338
+ <template>
339
+ <div class="flex justify-center">
340
+ <MultiSelect v-model="selectedCities" :options="cities" optionLabel="name" placeholder="Select Cities" :maxSelectedLabels="3" class="w-full md:w-80" showClear />
341
+ </div>
342
+ </template>
343
+
344
+ <script setup>
345
+ import { ref } from 'vue';
346
+
347
+ const selectedCities = ref(null);
348
+ const cities = ref([
349
+ { name: 'New York', code: 'NY' },
350
+ { name: 'Rome', code: 'RM' },
351
+ { name: 'London', code: 'LDN' },
352
+ { name: 'Istanbul', code: 'IST' },
353
+ { name: 'Paris', code: 'PRS' }
354
+ ]);
355
+ <\/script>
356
+ ```
357
+
358
+ ## Sizes
359
+
360
+ MultiSelect provides small and large sizes as alternatives to the base.
361
+
362
+ ```vue
363
+ <template>
364
+ <div class="flex flex-col items-center gap-4">
365
+ <MultiSelect v-model="value1" :options="cities" optionLabel="name" :maxSelectedLabels="3" class="w-full md:w-80" size="small" placeholder="Small" />
366
+ <MultiSelect v-model="value2" :options="cities" optionLabel="name" :maxSelectedLabels="3" class="w-full md:w-80" placeholder="Normal" />
367
+ <MultiSelect v-model="value3" :options="cities" optionLabel="name" :maxSelectedLabels="3" class="w-full md:w-80" size="large" placeholder="Large" />
368
+ </div>
369
+ </template>
370
+
371
+ <script setup>
372
+ import { ref } from 'vue';
373
+
374
+ const value1 = ref(null);
375
+ const value2 = ref(null);
376
+ const value3 = ref(null);
377
+ const cities = ref([
378
+ { name: 'New York', code: 'NY' },
379
+ { name: 'Rome', code: 'RM' },
380
+ { name: 'London', code: 'LDN' },
381
+ { name: 'Istanbul', code: 'IST' },
382
+ { name: 'Paris', code: 'PRS' }
383
+ ]);
384
+ <\/script>
385
+ ```
386
+
387
+ ## Fluid
388
+
389
+ The fluid prop makes the component take up the full width of its container when set to true.
390
+
391
+ ```vue
392
+ <template>
393
+ <div class="flex justify-center">
394
+ <MultiSelect v-model="selectedCities" :options="cities" optionLabel="name" placeholder="Select Cities" :maxSelectedLabels="3" fluid />
395
+ </div>
396
+ </template>
397
+
398
+ <script setup>
399
+ import { ref } from 'vue';
400
+
401
+ const selectedCities = ref(null);
402
+ const cities = ref([
403
+ { name: 'New York', code: 'NY' },
404
+ { name: 'Rome', code: 'RM' },
405
+ { name: 'London', code: 'LDN' },
406
+ { name: 'Istanbul', code: 'IST' },
407
+ { name: 'Paris', code: 'PRS' }
408
+ ]);
409
+ <\/script>
410
+ ```
411
+
412
+ ## Filled
413
+
414
+ Specify the variant property as filled to display the component with a higher visual emphasis than the default outlined style.
415
+
416
+ ```vue
417
+ <template>
418
+ <div class="flex justify-center">
419
+ <MultiSelect v-model="selectedCities" :options="cities" variant="filled" optionLabel="name" placeholder="Select Cities" :maxSelectedLabels="3" class="w-full md:w-80" />
420
+ </div>
421
+ </template>
422
+
423
+ <script setup>
424
+ import { ref } from 'vue';
425
+
426
+ const selectedCities = ref(null);
427
+ const cities = ref([
428
+ { name: 'New York', code: 'NY' },
429
+ { name: 'Rome', code: 'RM' },
430
+ { name: 'London', code: 'LDN' },
431
+ { name: 'Istanbul', code: 'IST' },
432
+ { name: 'Paris', code: 'PRS' }
433
+ ]);
434
+ <\/script>
435
+ ```
436
+
437
+ ## Disabled
438
+
439
+ When disabled is present, the element cannot be edited and focused.
440
+
441
+ ```vue
442
+ <template>
443
+ <div class="flex justify-center">
444
+ <MultiSelect v-model="selectedCities" :options="cities" disabled optionLabel="name" placeholder="Select Cities" class="w-full md:w-80" />
445
+ </div>
446
+ </template>
447
+
448
+ <script setup>
449
+ import { ref } from 'vue';
450
+
451
+ const selectedCities = ref(null);
452
+ const cities = ref([
453
+ { name: 'New York', code: 'NY' },
454
+ { name: 'Rome', code: 'RM' },
455
+ { name: 'London', code: 'LDN' },
456
+ { name: 'Istanbul', code: 'IST' },
457
+ { name: 'Paris', code: 'PRS' }
458
+ ]);
459
+ <\/script>
460
+ ```
461
+
462
+ ## Invalid
463
+
464
+ The invalid state is applied using the invalid property to indicate failed validation, which can be integrated with form validation libraries.
465
+
466
+ ```vue
467
+ <template>
468
+ <div class="flex justify-center gap-4">
469
+ <MultiSelect v-model="selectedCities1" :options="cities" :invalid="!selectedCities1?.length" optionLabel="name" placeholder="Select Cities" :maxSelectedLabels="3" class="w-full md:w-80" />
470
+ <MultiSelect v-model="selectedCities2" :options="cities" :invalid="!selectedCities2?.length" optionLabel="name" placeholder="Select Cities" :maxSelectedLabels="3" class="w-full md:w-80" variant="filled" />
471
+ </div>
472
+ </template>
473
+
474
+ <script setup>
475
+ import { ref } from 'vue';
476
+
477
+ const selectedCities1 = ref(null);
478
+ const selectedCities2 = ref(null);
479
+ const cities = ref([
480
+ { name: 'New York', code: 'NY' },
481
+ { name: 'Rome', code: 'RM' },
482
+ { name: 'London', code: 'LDN' },
483
+ { name: 'Istanbul', code: 'IST' },
484
+ { name: 'Paris', code: 'PRS' }
485
+ ]);
486
+ <\/script>
487
+ ```
488
+
489
+ ## Forms
490
+
491
+ MultiSelect integrates seamlessly with the PrimeVue Forms library.
492
+
493
+ ```vue
494
+ <template>
495
+ <div class="flex justify-center">
496
+ <Form v-slot="$form" :resolver="resolver" :initialValues="initialValues" @submit="onFormSubmit" class="flex justify-center flex-col gap-4 w-full md:w-80">
497
+ <div class="flex flex-col gap-1">
498
+ <MultiSelect name="city" :options="cities" optionLabel="name" placeholder="Select Cities" :maxSelectedLabels="3" fluid />
499
+ <Message v-if="$form.city?.invalid" severity="error" size="small" variant="simple">{{ $form.city.error?.message }}</Message>
500
+ </div>
501
+ <Button type="submit" severity="secondary">Submit</Button>
502
+ </Form>
503
+ </div>
504
+ </template>
505
+
506
+ <script setup>
507
+ import { ref } from 'vue';
508
+ import { zodResolver } from '@primevue/forms/resolvers/zod';
509
+ import { useToast } from "primevue/usetoast";
510
+ import { z } from 'zod';
511
+
512
+ const toast = useToast();
513
+ const initialValues = ref({
514
+ city: []
515
+ });
516
+ const resolver = ref(zodResolver(
517
+ z.object({
518
+ city: z
519
+ .array(
520
+ z.object({
521
+ name: z.string().min(1, 'City is required.')
522
+ })
523
+ )
524
+ .min(1, 'City is required.')
525
+ })
526
+ ));
527
+ const cities = ref([
528
+ { name: 'New York', code: 'NY' },
529
+ { name: 'Rome', code: 'RM' },
530
+ { name: 'London', code: 'LDN' },
531
+ { name: 'Istanbul', code: 'IST' },
532
+ { name: 'Paris', code: 'PRS' }
533
+ ]);
534
+
535
+ const onFormSubmit = ({ valid }) => {
536
+ if (valid) {
537
+ toast.add({ severity: 'success', summary: 'Form is submitted.', life: 3000 });
538
+ }
539
+ };
540
+ <\/script>
541
+ ```
542
+
543
+ ## Accessibility
544
+
545
+ Screen Reader Value to describe the component can either be provided with aria-labelledby or aria-label props. The multiselect component has a combobox role in addition to aria-haspopup and aria-expanded attributes. The relation between the combobox and the popup is created with aria-controls attribute that refers to the id of the popup listbox. The popup listbox uses listbox as the role with aria-multiselectable enabled. Each list item has an option role along with aria-label , aria-selected and aria-disabled attributes. Checkbox component at the header uses a hidden native checkbox element internally that is only visible to screen readers. Value to read is defined with the selectAll and unselectAll keys of the aria property from the locale API. If filtering is enabled, filterInputProps can be defined to give aria-* props to the input element. Close button uses close key of the aria property from the locale API as the aria-label by default, this can be overridden with the closeButtonProps . Closed State Keyboard Support Key Function tab Moves focus to the multiselect element. space Opens the popup and moves visual focus to the selected option, if there is none then first option receives the focus. enter Opens the popup and moves visual focus to the selected option, if there is none then first option receives the focus. down arrow Opens the popup and moves visual focus to the selected option, if there is none then first option receives the focus. up arrow Opens the popup and moves visual focus to the selected option, if there is none then first option receives the focus. any printable character Opens the popup and moves focus to the option whose label starts with the characters being typed, if there is none then first option receives the focus. Popup Keyboard Support Key Function tab Moves focus to the next focusable element in the popup, if there is none then first focusable element receives the focus. shift + tab Moves focus to the previous focusable element in the popup, if there is none then last focusable element receives the focus. enter Toggles the selection state of the focused option, then moves focus to the multiselect element. space Toggles the selection state of the focused option, then moves focus to the multiselect element. escape Closes the popup, moves focus to the multiselect element. down arrow Moves focus to the next option, if there is none then visual focus does not change. up arrow Moves focus to the previous option, if there is none then visual focus does not change. alt + up arrow Selects the focused option and closes the popup, then moves focus to the multiselect element. shift + down arrow Moves focus to the next option and toggles the selection state. shift + up arrow Moves focus to the previous option and toggles the selection state. shift + space Selects the items between the most recently selected option and the focused option. home Moves focus to the first option. end Moves focus to the last option. control + shift + home Selects the focused options and all the options up to the first one. control + shift + end Selects the focused options and all the options down to the last one. control + a Selects all options. pageUp Jumps visual focus to first option. pageDown Jumps visual focus to last option. any printable character Moves focus to the option whose label starts with the characters being typed. Toggle All Checkbox Keyboard Support Key Function space Toggles the checked state. escape Closes the popup and moves focus to the multiselect element. Filter Input Keyboard Support Key Function down arrow Moves focus to the next option, if there is none then visual focus does not change. up arrow Moves focus to the previous option, if there is none then visual focus does not change. left arrow Removes the visual focus from the current option and moves input cursor to one character left. right arrow Removes the visual focus from the current option and moves input cursor to one character right. home Moves input cursor at the end, if not then moves focus to the first option. end Moves input cursor at the beginning, if not then moves focus to the last option. enter Closes the popup and moves focus to the multiselect element. escape Closes the popup and moves focus to the multiselect element. tab Moves focus to the next focusable element in the popup. If there is none, the focusable option is selected and the overlay is closed then moves focus to next element in page.
546
+
547
+ ```vue
548
+ <span id="dd1">Options</span>
549
+ <MultiSelect aria-labelledby="dd1" />
550
+
551
+ <MultiSelect aria-label="Options" />
552
+ ```
553
+
554
+ ## Multi Select API
555
+
556
+ ### Props
557
+
558
+ | Name |Type |Default |Description |
559
+ | --- | --- | --- | --- |
560
+ | modelValue | any | - | Value of the component. |
561
+ | defaultValue | any | - | The default value for the input when not controlled by `modelValue` . |
562
+ | name | string | - | The name attribute for the element, typically used in form submissions. |
563
+ | options | any[] | - | An array of select items to display as the available options. |
564
+ | optionLabel | string \| Function | - | Property name or getter function to use as the label of an option. |
565
+ | optionValue | string \| Function | - | Property name or getter function to use as the value of an option, defaults to the option itself when not defined. |
566
+ | optionDisabled | string \| Function | - | Property name or getter function to use as the disabled flag of an option, defaults to false when not defined. |
567
+ | optionGroupLabel | string \| Function | - | Property name or getter function to use as the label of an option group. |
568
+ | optionGroupChildren | string \| Function | - | Property name or getter function that refers to the children options of option group. |
569
+ | scrollHeight | string | 14rem | Height of the viewport, a scrollbar is defined if height of list exceeds this value. |
570
+ | placeholder | string | - | Label to display when there are no selections. |
571
+ | size | HintedString<"small" \| "large"> | - | Defines the size of the component. |
572
+ | invalid | boolean | false | When present, it specifies that the component should have invalid state style. |
573
+ | disabled | boolean | false | When present, it specifies that the component should be disabled. |
574
+ | variant | null \| HintedString<"outlined" \| "filled"> | null | Specifies the input variant of the component. |
575
+ | fluid | boolean | null | Spans 100% width of the container when enabled. |
576
+ | inputId | string | - | Identifier of the underlying input element. |
577
+ | panelStyle | any | - | |
578
+ | panelClass | any | - | |
579
+ | overlayStyle | any | - | Inline style of the overlay. |
580
+ | overlayClass | any | - | Style class of the overlay. |
581
+ | dataKey | string | - | A property to uniquely identify an option. |
582
+ | showClear | boolean | false | When enabled, a clear icon is displayed to clear the value. |
583
+ | clearIcon | string | - | Icon to display in clear button. |
584
+ | resetFilterOnClear | boolean | false | Clears the filter value when clicking on the clear icon. |
585
+ | filter | boolean | false | When specified, displays a filter input at header. |
586
+ | filterPlaceholder | string | - | Placeholder text to show when filter input is empty. |
587
+ | filterLocale | string | - | Locale to use in filtering. The default locale is the host environment's current locale. |
588
+ | filterMatchMode | HintedString<"startsWith" \| "contains" \| "endsWith"> | contains | Defines the filtering algorithm to use when searching the options. |
589
+ | filterFields | string[] | - | Fields used when filtering the options, defaults to optionLabel. |
590
+ | appendTo | HTMLElement \| HintedString<"body" \| "self"> | body | 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. |
591
+ | display | HintedString<"comma" \| "chip"> | comma | Defines how the selected items are displayed. |
592
+ | selectedItemsLabel | string | null | Label to display after exceeding max selected labels. |
593
+ | maxSelectedLabels | number | - | Decides how many selected item labels to show at most. |
594
+ | selectionLimit | number | - | Maximum number of selectable items. |
595
+ | showToggleAll | boolean | true | Whether to show the header checkbox to toggle the selection of all items at once. |
596
+ | loading | boolean | false | Whether the multiselect is in loading state. |
597
+ | checkboxIcon | string | - | Icon to display in the checkboxes. |
598
+ | dropdownIcon | string | - | Icon to display in the dropdown. |
599
+ | filterIcon | string | - | Icon to display in filter input. |
600
+ | loadingIcon | string | - | Icon to display in loading state. |
601
+ | removeTokenIcon | string | - | Icon to display in chip remove action. |
602
+ | chipIcon | string | - | Icon to display in chip remove action. |
603
+ | selectAll | boolean | false | Whether all data is selected. |
604
+ | resetFilterOnHide | boolean | false | Clears the filter value when hiding the dropdown. |
605
+ | virtualScrollerOptions | any | - | Whether to use the virtualScroller feature. The properties of VirtualScroller component can be used like an object in it. |
606
+ | autoOptionFocus | boolean | false | Whether to focus on the first visible or selected element when the overlay panel is shown. |
607
+ | autoFilterFocus | boolean | false | Whether to focus on the filter element when the overlay panel is shown. |
608
+ | focusOnHover | boolean | true | When enabled, the focus is placed on the hovered option. |
609
+ | highlightOnSelect | boolean | false | Highlights automatically the first item. |
610
+ | filterMessage | string | '{0} results are available' | Text to be displayed in hidden accessible field when filtering returns any results. Defaults to value from PrimeVue locale configuration. |
611
+ | selectionMessage | string | null | Text to be displayed in hidden accessible field when options are selected. Defaults to value from PrimeVue locale configuration. |
612
+ | emptySelectionMessage | string | No selected item | Text to be displayed in hidden accessible field when any option is not selected. Defaults to value from PrimeVue locale configuration. |
613
+ | emptyFilterMessage | string | No results found | Text to display when filtering does not return any results. Defaults to value from PrimeVue locale configuration. |
614
+ | emptyMessage | string | No available options' | Text to display when there are no options available. Defaults to value from PrimeVue locale configuration. |
615
+ | tabindex | string \| number | - | Index of the element in tabbing order. |
616
+ | ariaLabel | string | - | Defines a string value that labels an interactive element. |
617
+ | ariaLabelledby | string | - | Identifier of the underlying input element. |
618
+ | formControl | Record<string, any> | - | Form control object, typically used for handling validation and form state. |
619
+ | dt | any | - | It generates scoped CSS variables using design tokens for the component. |
620
+ | pt | PassThrough<MultiSelectPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
621
+ | ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
622
+ | unstyled | boolean | false | When enabled, it removes component related styles in the core. |
623
+
624
+ ### Pass Through Options
625
+
626
+ | Name |Type |Description |
627
+ | --- | --- | --- |
628
+ | root | MultiSelectPassThroughOptionType | Used to pass attributes to the root's DOM element. |
629
+ | labelContainer | MultiSelectPassThroughOptionType | Used to pass attributes to the label container's DOM element. |
630
+ | label | MultiSelectPassThroughOptionType | Used to pass attributes to the label's DOM element. |
631
+ | clearIcon | MultiSelectPassThroughOptionType | Used to pass attributes to the label's DOM element. |
632
+ | chipItem | MultiSelectPassThroughOptionType | Used to pass attributes to the chip's DOM element. |
633
+ | pcChip | any | Used to pass attributes to the Chip. |
634
+ | dropdown | MultiSelectPassThroughOptionType | Used to pass attributes to the dropdown's DOM element. |
635
+ | loadingIcon | MultiSelectPassThroughOptionType | Used to pass attributes to the loading icon's DOM element. |
636
+ | dropdownIcon | MultiSelectPassThroughOptionType | Used to pass attributes to the dropdown icon's DOM element. |
637
+ | overlay | MultiSelectPassThroughOptionType | Used to pass attributes to the overlay's DOM element. |
638
+ | header | MultiSelectPassThroughOptionType | Used to pass attributes to the header's DOM element. |
639
+ | pcHeaderCheckbox | MultiSelectPassThroughOptionType | Used to pass attributes to the header checkbox's DOM element. |
640
+ | pcFilterContainer | any | Used to pass attributes to the IconField component. |
641
+ | pcFilter | any | Used to pass attributes to the InputText component. |
642
+ | pcFilterIconContainer | any | Used to pass attributes to the InputIcon component. |
643
+ | filterIcon | MultiSelectPassThroughOptionType | Used to pass attributes to the filter icon's DOM element. |
644
+ | listContainer | MultiSelectPassThroughOptionType | Used to pass attributes to the list container's DOM element. |
645
+ | virtualScroller | any | Used to pass attributes to the VirtualScroller component. |
646
+ | list | MultiSelectPassThroughOptionType | Used to pass attributes to the list's DOM element. |
647
+ | optionGroup | MultiSelectPassThroughOptionType | Used to pass attributes to the option group's DOM element. |
648
+ | option | MultiSelectPassThroughOptionType | Used to pass attributes to the option's DOM element. |
649
+ | optionLabel | MultiSelectPassThroughOptionType | Used to pass attributes to the option label's DOM element. |
650
+ | pcOptionCheckbox | MultiSelectPassThroughOptionType | Used to pass attributes to the option checkbox's DOM element. |
651
+ | emptyMessage | MultiSelectPassThroughOptionType | Used to pass attributes to the emptyMessage's DOM element. |
652
+ | hiddenInputContainer | MultiSelectPassThroughOptionType | Used to pass attributes to the hidden input container's DOM element. |
653
+ | hiddenInput | MultiSelectPassThroughOptionType | Used to pass attributes to the hidden input's DOM element. |
654
+ | hiddenFirstFocusableEl | MultiSelectPassThroughOptionType | Used to pass attributes to the hidden first focusable element's DOM element. |
655
+ | hiddenFilterResult | MultiSelectPassThroughOptionType | Used to pass attributes to the hidden filter result's DOM element. |
656
+ | hiddenSelectedMessage | MultiSelectPassThroughOptionType | Used to pass attributes to the hidden selected message's DOM element. |
657
+ | hiddenLastFocusableEl | MultiSelectPassThroughOptionType | Used to pass attributes to the hidden last focusable element's DOM element. |
658
+ | hooks | any | Used to manage all lifecycle hooks. |
659
+ | transition | MultiSelectPassThroughTransitionType | Used to control Vue Transition API. |
660
+
661
+ ### Theming
662
+
663
+ ### CSS Classes
664
+
665
+ | Class |Description |
666
+ | --- | --- |
667
+ | p-multiselect | Class name of the root element |
668
+ | p-multiselect-label-container | Class name of the label container element |
669
+ | p-multiselect-label | Class name of the label element |
670
+ | p-multiselect-clear-icon | Class name of the clear icon element |
671
+ | p-multiselect-chip-item | Class name of the chip item element |
672
+ | p-multiselect-chip | Class name of the chip element |
673
+ | p-multiselect-chip-icon | Class name of the chip icon element |
674
+ | p-multiselect-dropdown | Class name of the dropdown element |
675
+ | p-multiselect-loading-icon | Class name of the loading icon element |
676
+ | p-multiselect-dropdown-icon | Class name of the dropdown icon element |
677
+ | p-multiselect-overlay | Class name of the overlay element |
678
+ | p-multiselect-header | Class name of the header element |
679
+ | p-multiselect-filter-container | Class name of the filter container element |
680
+ | p-multiselect-filter | Class name of the filter element |
681
+ | p-multiselect-list-container | Class name of the list container element |
682
+ | p-multiselect-list | Class name of the list element |
683
+ | p-multiselect-option-group | Class name of the option group element |
684
+ | p-multiselect-option | Class name of the option element |
685
+ | p-multiselect-empty-message | Class name of the empty message element |
686
+
687
+ ### Design Tokens
688
+
689
+ | Token |CSS Variable |Description |
690
+ | --- | --- | --- |
691
+ | multiselect.background | --p-multiselect-background | Background of root |
692
+ | multiselect.disabled.background | --p-multiselect-disabled-background | Disabled background of root |
693
+ | multiselect.filled.background | --p-multiselect-filled-background | Filled background of root |
694
+ | multiselect.filled.hover.background | --p-multiselect-filled-hover-background | Filled hover background of root |
695
+ | multiselect.filled.focus.background | --p-multiselect-filled-focus-background | Filled focus background of root |
696
+ | multiselect.border.color | --p-multiselect-border-color | Border color of root |
697
+ | multiselect.hover.border.color | --p-multiselect-hover-border-color | Hover border color of root |
698
+ | multiselect.focus.border.color | --p-multiselect-focus-border-color | Focus border color of root |
699
+ | multiselect.invalid.border.color | --p-multiselect-invalid-border-color | Invalid border color of root |
700
+ | multiselect.color | --p-multiselect-color | Color of root |
701
+ | multiselect.disabled.color | --p-multiselect-disabled-color | Disabled color of root |
702
+ | multiselect.placeholder.color | --p-multiselect-placeholder-color | Placeholder color of root |
703
+ | multiselect.invalid.placeholder.color | --p-multiselect-invalid-placeholder-color | Invalid placeholder color of root |
704
+ | multiselect.shadow | --p-multiselect-shadow | Shadow of root |
705
+ | multiselect.padding.x | --p-multiselect-padding-x | Padding x of root |
706
+ | multiselect.padding.y | --p-multiselect-padding-y | Padding y of root |
707
+ | multiselect.border.radius | --p-multiselect-border-radius | Border radius of root |
708
+ | multiselect.focus.ring.width | --p-multiselect-focus-ring-width | Focus ring width of root |
709
+ | multiselect.focus.ring.style | --p-multiselect-focus-ring-style | Focus ring style of root |
710
+ | multiselect.focus.ring.color | --p-multiselect-focus-ring-color | Focus ring color of root |
711
+ | multiselect.focus.ring.offset | --p-multiselect-focus-ring-offset | Focus ring offset of root |
712
+ | multiselect.focus.ring.shadow | --p-multiselect-focus-ring-shadow | Focus ring shadow of root |
713
+ | multiselect.transition.duration | --p-multiselect-transition-duration | Transition duration of root |
714
+ | multiselect.sm.font.size | --p-multiselect-sm-font-size | Sm font size of root |
715
+ | multiselect.sm.padding.x | --p-multiselect-sm-padding-x | Sm padding x of root |
716
+ | multiselect.sm.padding.y | --p-multiselect-sm-padding-y | Sm padding y of root |
717
+ | multiselect.lg.font.size | --p-multiselect-lg-font-size | Lg font size of root |
718
+ | multiselect.lg.padding.x | --p-multiselect-lg-padding-x | Lg padding x of root |
719
+ | multiselect.lg.padding.y | --p-multiselect-lg-padding-y | Lg padding y of root |
720
+ | multiselect.font.weight | --p-multiselect-font-weight | Font weight of root |
721
+ | multiselect.font.size | --p-multiselect-font-size | Font size of root |
722
+ | multiselect.dropdown.width | --p-multiselect-dropdown-width | Width of dropdown |
723
+ | multiselect.dropdown.color | --p-multiselect-dropdown-color | Color of dropdown |
724
+ | multiselect.overlay.background | --p-multiselect-overlay-background | Background of overlay |
725
+ | multiselect.overlay.border.color | --p-multiselect-overlay-border-color | Border color of overlay |
726
+ | multiselect.overlay.border.radius | --p-multiselect-overlay-border-radius | Border radius of overlay |
727
+ | multiselect.overlay.color | --p-multiselect-overlay-color | Color of overlay |
728
+ | multiselect.overlay.shadow | --p-multiselect-overlay-shadow | Shadow of overlay |
729
+ | multiselect.list.padding | --p-multiselect-list-padding | Padding of list |
730
+ | multiselect.list.gap | --p-multiselect-list-gap | Gap of list |
731
+ | multiselect.list.header.padding | --p-multiselect-list-header-padding | Header padding of list |
732
+ | multiselect.option.focus.background | --p-multiselect-option-focus-background | Focus background of option |
733
+ | multiselect.option.selected.background | --p-multiselect-option-selected-background | Selected background of option |
734
+ | multiselect.option.selected.focus.background | --p-multiselect-option-selected-focus-background | Selected focus background of option |
735
+ | multiselect.option.color | --p-multiselect-option-color | Color of option |
736
+ | multiselect.option.focus.color | --p-multiselect-option-focus-color | Focus color of option |
737
+ | multiselect.option.selected.color | --p-multiselect-option-selected-color | Selected color of option |
738
+ | multiselect.option.selected.focus.color | --p-multiselect-option-selected-focus-color | Selected focus color of option |
739
+ | multiselect.option.selected.font.weight | --p-multiselect-option-selected-font-weight | Font weight of a selected option |
740
+ | multiselect.option.padding | --p-multiselect-option-padding | Padding of option |
741
+ | multiselect.option.border.radius | --p-multiselect-option-border-radius | Border radius of option |
742
+ | multiselect.option.gap | --p-multiselect-option-gap | Gap of option |
743
+ | multiselect.option.font.weight | --p-multiselect-option-font-weight | Font weight of option |
744
+ | multiselect.option.font.size | --p-multiselect-option-font-size | Font size of option |
745
+ | multiselect.option.group.background | --p-multiselect-option-group-background | Background of option group |
746
+ | multiselect.option.group.color | --p-multiselect-option-group-color | Color of option group |
747
+ | multiselect.option.group.font.weight | --p-multiselect-option-group-font-weight | Font weight of option group |
748
+ | multiselect.option.group.font.size | --p-multiselect-option-group-font-size | Font size of option group |
749
+ | multiselect.option.group.padding | --p-multiselect-option-group-padding | Padding of option group |
750
+ | multiselect.clear.icon.color | --p-multiselect-clear-icon-color | Color of clear icon |
751
+ | multiselect.chip.border.radius | --p-multiselect-chip-border-radius | Border radius of chip |
752
+ | multiselect.empty.message.padding | --p-multiselect-empty-message-padding | Padding of empty message |