@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.
- package/LICENSE.md +45 -21
- package/README.md +48 -250
- package/data/components.json +47269 -0
- package/data/llms/components/accordion.md +629 -0
- package/data/llms/components/animateonscroll.md +165 -0
- package/data/llms/components/autocomplete.md +995 -0
- package/data/llms/components/avatar.md +264 -0
- package/data/llms/components/badge.md +200 -0
- package/data/llms/components/blockui.md +99 -0
- package/data/llms/components/breadcrumb.md +269 -0
- package/data/llms/components/button.md +902 -0
- package/data/llms/components/card.md +209 -0
- package/data/llms/components/carousel.md +506 -0
- package/data/llms/components/cascadeselect.md +1207 -0
- package/data/llms/components/chart.md +1022 -0
- package/data/llms/components/checkbox.md +401 -0
- package/data/llms/components/chip.md +206 -0
- package/data/llms/components/colorpicker.md +213 -0
- package/data/llms/components/commandmenu.md +660 -0
- package/data/llms/components/compare.md +407 -0
- package/data/llms/components/confirmdialog.md +343 -0
- package/data/llms/components/confirmpopup.md +252 -0
- package/data/llms/components/contextmenu.md +522 -0
- package/data/llms/components/datatable.md +5266 -0
- package/data/llms/components/dataview.md +569 -0
- package/data/llms/components/datepicker.md +964 -0
- package/data/llms/components/deferredcontent.md +96 -0
- package/data/llms/components/dialog.md +702 -0
- package/data/llms/components/divider.md +152 -0
- package/data/llms/components/dock.md +488 -0
- package/data/llms/components/drawer.md +469 -0
- package/data/llms/components/dynamicdialog.md +214 -0
- package/data/llms/components/editor.md +205 -0
- package/data/llms/components/fieldset.md +253 -0
- package/data/llms/components/fileupload.md +459 -0
- package/data/llms/components/floatlabel.md +144 -0
- package/data/llms/components/fluid.md +104 -0
- package/data/llms/components/focustrap.md +59 -0
- package/data/llms/components/forms.md +344 -0
- package/data/llms/components/galleria.md +1119 -0
- package/data/llms/components/gallery.md +1003 -0
- package/data/llms/components/iconfield.md +283 -0
- package/data/llms/components/iftalabel.md +96 -0
- package/data/llms/components/image.md +179 -0
- package/data/llms/components/imagecompare.md +108 -0
- package/data/llms/components/inplace.md +183 -0
- package/data/llms/components/inputcolor.md +869 -0
- package/data/llms/components/inputgroup.md +419 -0
- package/data/llms/components/inputmask.md +345 -0
- package/data/llms/components/inputnumber.md +551 -0
- package/data/llms/components/inputotp.md +345 -0
- package/data/llms/components/inputpassword.md +738 -0
- package/data/llms/components/inputtags.md +432 -0
- package/data/llms/components/inputtext.md +569 -0
- package/data/llms/components/installation.md +1 -0
- package/data/llms/components/keyfilter.md +116 -0
- package/data/llms/components/knob.md +318 -0
- package/data/llms/components/label.md +151 -0
- package/data/llms/components/laravel.md +53 -0
- package/data/llms/components/listbox.md +636 -0
- package/data/llms/components/mask.md +203 -0
- package/data/llms/components/mcp.md +39 -0
- package/data/llms/components/megamenu.md +563 -0
- package/data/llms/components/menu.md +651 -0
- package/data/llms/components/menubar.md +446 -0
- package/data/llms/components/message.md +497 -0
- package/data/llms/components/metergroup.md +281 -0
- package/data/llms/components/multiselect.md +752 -0
- package/data/llms/components/orderlist.md +224 -0
- package/data/llms/components/organizationchart.md +418 -0
- package/data/llms/components/paginator.md +221 -0
- package/data/llms/components/panel.md +321 -0
- package/data/llms/components/panelmenu.md +703 -0
- package/data/llms/components/password.md +657 -0
- package/data/llms/components/picklist.md +286 -0
- package/data/llms/components/popover.md +145 -0
- package/data/llms/components/progressbar.md +242 -0
- package/data/llms/components/progressspinner.md +104 -0
- package/data/llms/components/radiobutton.md +427 -0
- package/data/llms/components/rating.md +312 -0
- package/data/llms/components/ripple.md +91 -0
- package/data/llms/components/scrollarea.md +700 -0
- package/data/llms/components/scrollpanel.md +131 -0
- package/data/llms/components/scrolltop.md +87 -0
- package/data/llms/components/select.md +1251 -0
- package/data/llms/components/selectbutton.md +268 -0
- package/data/llms/components/sidebar.md +2232 -0
- package/data/llms/components/skeleton.md +302 -0
- package/data/llms/components/slider.md +416 -0
- package/data/llms/components/speeddial.md +402 -0
- package/data/llms/components/splitbutton.md +840 -0
- package/data/llms/components/splitter.md +447 -0
- package/data/llms/components/stepper.md +551 -0
- package/data/llms/components/styleclass.md +226 -0
- package/data/llms/components/tabs.md +609 -0
- package/data/llms/components/tag.md +178 -0
- package/data/llms/components/terminal.md +123 -0
- package/data/llms/components/textarea.md +519 -0
- package/data/llms/components/tieredmenu.md +578 -0
- package/data/llms/components/timeline.md +494 -0
- package/data/llms/components/toast.md +472 -0
- package/data/llms/components/togglebutton.md +276 -0
- package/data/llms/components/toggleswitch.md +271 -0
- package/data/llms/components/toolbar.md +140 -0
- package/data/llms/components/tooltip.md +160 -0
- package/data/llms/components/tree.md +1076 -0
- package/data/llms/components/treeselect.md +660 -0
- package/data/llms/components/treetable.md +2493 -0
- package/data/llms/components/virtualscroller.md +265 -0
- package/data/llms/guides/autoimport.md +28 -0
- package/data/llms/guides/cdn.md +72 -0
- package/data/llms/guides/configuration.md +158 -0
- package/data/llms/guides/customicons.md +67 -0
- package/data/llms/guides/guides/accessibility.md +27 -0
- package/data/llms/guides/guides/animations.md +119 -0
- package/data/llms/guides/guides/rtl.md +7 -0
- package/data/llms/guides/icons.md +136 -0
- package/data/llms/guides/installation.md +3 -0
- package/data/llms/guides/laravel.md +66 -0
- package/data/llms/guides/llms.md +15 -0
- package/data/llms/guides/mcp.md +104 -0
- package/data/llms/guides/migration/v4.md +15 -0
- package/data/llms/guides/migration/v5.md +15 -0
- package/data/llms/guides/nuxt.md +141 -0
- package/data/llms/guides/passthrough.md +137 -0
- package/data/llms/guides/primeclt.md +43 -0
- package/data/llms/guides/tailwind.md +151 -0
- package/data/llms/guides/theming/styled.md +497 -0
- package/data/llms/guides/theming/unstyled.md +57 -0
- package/data/llms/guides/uikit.md +3 -0
- package/data/llms/guides/vite.md +90 -0
- package/data/llms/llms-full.txt +54465 -0
- package/data/llms/llms.txt +132 -0
- package/data/llms/pages/accessibility.md +27 -0
- package/data/llms/pages/animations.md +119 -0
- package/data/llms/pages/autoimport.md +28 -0
- package/data/llms/pages/cdn.md +72 -0
- package/data/llms/pages/configuration.md +158 -0
- package/data/llms/pages/contribution.md +31 -0
- package/data/llms/pages/customicons.md +67 -0
- package/data/llms/pages/designer.md +79 -0
- package/data/llms/pages/dynamicimports.md +7 -0
- package/data/llms/pages/forms.md +63 -0
- package/data/llms/pages/guides/accessibility.md +27 -0
- package/data/llms/pages/guides/animations.md +119 -0
- package/data/llms/pages/guides/rtl.md +7 -0
- package/data/llms/pages/icons.md +136 -0
- package/data/llms/pages/installation.md +3 -0
- package/data/llms/pages/introduction.md +23 -0
- package/data/llms/pages/laravel.md +66 -0
- package/data/llms/pages/llms.md +15 -0
- package/data/llms/pages/mcp.md +104 -0
- package/data/llms/pages/migration/v4.md +15 -0
- package/data/llms/pages/migration/v5.md +15 -0
- package/data/llms/pages/nuxt.md +141 -0
- package/data/llms/pages/passthrough.md +137 -0
- package/data/llms/pages/primeclt.md +43 -0
- package/data/llms/pages/rtl.md +7 -0
- package/data/llms/pages/setup.md +3 -0
- package/data/llms/pages/styled.md +497 -0
- package/data/llms/pages/tailwind.md +151 -0
- package/data/llms/pages/theming/styled.md +497 -0
- package/data/llms/pages/theming/unstyled.md +57 -0
- package/data/llms/pages/uikit.md +3 -0
- package/data/llms/pages/unstyled.md +57 -0
- package/data/llms/pages/v4.md +15 -0
- package/data/llms/pages/v5.md +15 -0
- package/data/llms/pages/vite.md +90 -0
- package/data/manifest.json +11117 -0
- package/data/mcp-data.json +55940 -0
- package/dist/index.d.ts +17 -1
- package/dist/index.js +66066 -72541
- package/package.json +10 -12
|
@@ -0,0 +1,1207 @@
|
|
|
1
|
+
# CascadeSelect
|
|
2
|
+
|
|
3
|
+
CascadeSelect displays a nested structure of options.
|
|
4
|
+
|
|
5
|
+
## Basic
|
|
6
|
+
|
|
7
|
+
CascadeSelect is used with the v-model property for two-way value binding along with the options collection. To define the label of a group optionGroupLabel property is needed and also optionGroupChildren is required to define the property that refers to the children of a group. Note that order of the optionGroupChildren matters as it should correspond to the data hierarchy.
|
|
8
|
+
|
|
9
|
+
```vue
|
|
10
|
+
<template>
|
|
11
|
+
<div class="flex justify-center">
|
|
12
|
+
<CascadeSelect v-model="selectedCity" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-56" placeholder="Select a City" />
|
|
13
|
+
</div>
|
|
14
|
+
</template>
|
|
15
|
+
|
|
16
|
+
<script setup>
|
|
17
|
+
import { ref } from "vue";
|
|
18
|
+
|
|
19
|
+
const selectedCity = ref();
|
|
20
|
+
const countries = ref([
|
|
21
|
+
{
|
|
22
|
+
name: 'Australia',
|
|
23
|
+
code: 'AU',
|
|
24
|
+
states: [
|
|
25
|
+
{
|
|
26
|
+
name: 'New South Wales',
|
|
27
|
+
cities: [
|
|
28
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
29
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
30
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: 'Queensland',
|
|
35
|
+
cities: [
|
|
36
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
37
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
38
|
+
]
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Canada',
|
|
44
|
+
code: 'CA',
|
|
45
|
+
states: [
|
|
46
|
+
{
|
|
47
|
+
name: 'Quebec',
|
|
48
|
+
cities: [
|
|
49
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
50
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
51
|
+
]
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: 'Ontario',
|
|
55
|
+
cities: [
|
|
56
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
57
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: 'United States',
|
|
64
|
+
code: 'US',
|
|
65
|
+
states: [
|
|
66
|
+
{
|
|
67
|
+
name: 'California',
|
|
68
|
+
cities: [
|
|
69
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
70
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
71
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
72
|
+
]
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
name: 'Florida',
|
|
76
|
+
cities: [
|
|
77
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
78
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
79
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
80
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
81
|
+
]
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: 'Texas',
|
|
85
|
+
cities: [
|
|
86
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
87
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
88
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
89
|
+
]
|
|
90
|
+
}
|
|
91
|
+
]
|
|
92
|
+
}
|
|
93
|
+
]);
|
|
94
|
+
<\/script>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Template
|
|
98
|
+
|
|
99
|
+
Label of an option is used as the display text of an item by default, for custom content support define an option template that gets the option instance as a parameter. In addition dropdownicon , loadingicon , and optiongroupicon slots are provided for further customization.
|
|
100
|
+
|
|
101
|
+
```vue
|
|
102
|
+
<template>
|
|
103
|
+
<div class="flex justify-center">
|
|
104
|
+
<CascadeSelect v-model="selectedCity" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-56" placeholder="Select a City">
|
|
105
|
+
<template #option="slotProps">
|
|
106
|
+
<div class="flex items-center">
|
|
107
|
+
<img v-if="slotProps.option.states" :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" />
|
|
108
|
+
<Compass v-if="slotProps.option.cities" class="mr-2" />
|
|
109
|
+
<MapMarker v-if="slotProps.option.cname" class="mr-2" />
|
|
110
|
+
<span>{{ slotProps.option.cname || slotProps.option.name }}</span>
|
|
111
|
+
</div>
|
|
112
|
+
</template>
|
|
113
|
+
<template #dropdownicon>
|
|
114
|
+
<Map />
|
|
115
|
+
</template>
|
|
116
|
+
<template #header>
|
|
117
|
+
<div class="font-medium px-3 py-2">Available Countries</div>
|
|
118
|
+
</template>
|
|
119
|
+
<template #footer>
|
|
120
|
+
<div class="px-3 py-1">
|
|
121
|
+
<Button fluid severity="secondary" variant="text" size="small">
|
|
122
|
+
<Plus />
|
|
123
|
+
Add New
|
|
124
|
+
</Button>
|
|
125
|
+
</div>
|
|
126
|
+
</template>
|
|
127
|
+
</CascadeSelect>
|
|
128
|
+
</div>
|
|
129
|
+
</template>
|
|
130
|
+
|
|
131
|
+
<script setup>
|
|
132
|
+
import { ref } from "vue";
|
|
133
|
+
import Compass from '@primeicons/vue/compass';
|
|
134
|
+
import Map from '@primeicons/vue/map';
|
|
135
|
+
import MapMarker from '@primeicons/vue/map-marker';
|
|
136
|
+
import Plus from '@primeicons/vue/plus';
|
|
137
|
+
|
|
138
|
+
const selectedCity = ref();
|
|
139
|
+
const countries = ref([
|
|
140
|
+
{
|
|
141
|
+
name: 'Australia',
|
|
142
|
+
code: 'AU',
|
|
143
|
+
states: [
|
|
144
|
+
{
|
|
145
|
+
name: 'New South Wales',
|
|
146
|
+
cities: [
|
|
147
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
148
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
149
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
150
|
+
]
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
name: 'Queensland',
|
|
154
|
+
cities: [
|
|
155
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
156
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
157
|
+
]
|
|
158
|
+
}
|
|
159
|
+
]
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
name: 'Canada',
|
|
163
|
+
code: 'CA',
|
|
164
|
+
states: [
|
|
165
|
+
{
|
|
166
|
+
name: 'Quebec',
|
|
167
|
+
cities: [
|
|
168
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
169
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
170
|
+
]
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
name: 'Ontario',
|
|
174
|
+
cities: [
|
|
175
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
176
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
177
|
+
]
|
|
178
|
+
}
|
|
179
|
+
]
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
name: 'United States',
|
|
183
|
+
code: 'US',
|
|
184
|
+
states: [
|
|
185
|
+
{
|
|
186
|
+
name: 'California',
|
|
187
|
+
cities: [
|
|
188
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
189
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
190
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
191
|
+
]
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
name: 'Florida',
|
|
195
|
+
cities: [
|
|
196
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
197
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
198
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
199
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
200
|
+
]
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
name: 'Texas',
|
|
204
|
+
cities: [
|
|
205
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
206
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
207
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
208
|
+
]
|
|
209
|
+
}
|
|
210
|
+
]
|
|
211
|
+
}
|
|
212
|
+
]);
|
|
213
|
+
<\/script>
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
## Loading State
|
|
217
|
+
|
|
218
|
+
Loading state can be used loading property.
|
|
219
|
+
|
|
220
|
+
```vue
|
|
221
|
+
<template>
|
|
222
|
+
<div class="flex justify-center">
|
|
223
|
+
<CascadeSelect loading placeholder="Loading..." class="w-56" />
|
|
224
|
+
</div>
|
|
225
|
+
</template>
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
## Float Label
|
|
229
|
+
|
|
230
|
+
A floating label appears on top of the input field when focused. Visit FloatLabel documentation for more information.
|
|
231
|
+
|
|
232
|
+
```vue
|
|
233
|
+
<template>
|
|
234
|
+
<div class="flex flex-wrap justify-center items-end gap-4">
|
|
235
|
+
<FloatLabel class="w-full md:w-56">
|
|
236
|
+
<CascadeSelect v-model="value1" inputId="over_label" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-full" />
|
|
237
|
+
<label for="over_label">Over Label</label>
|
|
238
|
+
</FloatLabel>
|
|
239
|
+
|
|
240
|
+
<FloatLabel class="w-full md:w-56" variant="in">
|
|
241
|
+
<CascadeSelect v-model="value2" inputId="in_label" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-full" />
|
|
242
|
+
<label for="in_label">In Label</label>
|
|
243
|
+
</FloatLabel>
|
|
244
|
+
|
|
245
|
+
<FloatLabel class="w-full md:w-56" variant="on">
|
|
246
|
+
<CascadeSelect v-model="value3" inputId="on_label" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-full" />
|
|
247
|
+
<label for="on_label">On Label</label>
|
|
248
|
+
</FloatLabel>
|
|
249
|
+
</div>
|
|
250
|
+
</template>
|
|
251
|
+
|
|
252
|
+
<script setup>
|
|
253
|
+
import { ref } from "vue";
|
|
254
|
+
|
|
255
|
+
const value1 = ref(null);
|
|
256
|
+
const value2 = ref(null);
|
|
257
|
+
const value3 = ref(null);
|
|
258
|
+
const countries = ref([
|
|
259
|
+
{
|
|
260
|
+
name: 'Australia',
|
|
261
|
+
code: 'AU',
|
|
262
|
+
states: [
|
|
263
|
+
{
|
|
264
|
+
name: 'New South Wales',
|
|
265
|
+
cities: [
|
|
266
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
267
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
268
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
269
|
+
]
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
name: 'Queensland',
|
|
273
|
+
cities: [
|
|
274
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
275
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
276
|
+
]
|
|
277
|
+
}
|
|
278
|
+
]
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
name: 'Canada',
|
|
282
|
+
code: 'CA',
|
|
283
|
+
states: [
|
|
284
|
+
{
|
|
285
|
+
name: 'Quebec',
|
|
286
|
+
cities: [
|
|
287
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
288
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
289
|
+
]
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
name: 'Ontario',
|
|
293
|
+
cities: [
|
|
294
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
295
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
296
|
+
]
|
|
297
|
+
}
|
|
298
|
+
]
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
name: 'United States',
|
|
302
|
+
code: 'US',
|
|
303
|
+
states: [
|
|
304
|
+
{
|
|
305
|
+
name: 'California',
|
|
306
|
+
cities: [
|
|
307
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
308
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
309
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
310
|
+
]
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
name: 'Florida',
|
|
314
|
+
cities: [
|
|
315
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
316
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
317
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
318
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
319
|
+
]
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
name: 'Texas',
|
|
323
|
+
cities: [
|
|
324
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
325
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
326
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
327
|
+
]
|
|
328
|
+
}
|
|
329
|
+
]
|
|
330
|
+
}
|
|
331
|
+
]);
|
|
332
|
+
<\/script>
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
## Ifta Label
|
|
336
|
+
|
|
337
|
+
IftaLabel is used to create infield top aligned labels. Visit IftaLabel documentation for more information.
|
|
338
|
+
|
|
339
|
+
```vue
|
|
340
|
+
<template>
|
|
341
|
+
<div class="flex justify-center">
|
|
342
|
+
<IftaLabel class="w-full md:w-56">
|
|
343
|
+
<CascadeSelect v-model="selectedCity" inputId="cs_city" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-full" />
|
|
344
|
+
<label for="cs_city">City</label>
|
|
345
|
+
</IftaLabel>
|
|
346
|
+
</div>
|
|
347
|
+
</template>
|
|
348
|
+
|
|
349
|
+
<script setup>
|
|
350
|
+
import { ref } from "vue";
|
|
351
|
+
|
|
352
|
+
const selectedCity = ref();
|
|
353
|
+
const countries = ref([
|
|
354
|
+
{
|
|
355
|
+
name: 'Australia',
|
|
356
|
+
code: 'AU',
|
|
357
|
+
states: [
|
|
358
|
+
{
|
|
359
|
+
name: 'New South Wales',
|
|
360
|
+
cities: [
|
|
361
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
362
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
363
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
364
|
+
]
|
|
365
|
+
},
|
|
366
|
+
{
|
|
367
|
+
name: 'Queensland',
|
|
368
|
+
cities: [
|
|
369
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
370
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
371
|
+
]
|
|
372
|
+
}
|
|
373
|
+
]
|
|
374
|
+
},
|
|
375
|
+
{
|
|
376
|
+
name: 'Canada',
|
|
377
|
+
code: 'CA',
|
|
378
|
+
states: [
|
|
379
|
+
{
|
|
380
|
+
name: 'Quebec',
|
|
381
|
+
cities: [
|
|
382
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
383
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
384
|
+
]
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
name: 'Ontario',
|
|
388
|
+
cities: [
|
|
389
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
390
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
391
|
+
]
|
|
392
|
+
}
|
|
393
|
+
]
|
|
394
|
+
},
|
|
395
|
+
{
|
|
396
|
+
name: 'United States',
|
|
397
|
+
code: 'US',
|
|
398
|
+
states: [
|
|
399
|
+
{
|
|
400
|
+
name: 'California',
|
|
401
|
+
cities: [
|
|
402
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
403
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
404
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
405
|
+
]
|
|
406
|
+
},
|
|
407
|
+
{
|
|
408
|
+
name: 'Florida',
|
|
409
|
+
cities: [
|
|
410
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
411
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
412
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
413
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
414
|
+
]
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
name: 'Texas',
|
|
418
|
+
cities: [
|
|
419
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
420
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
421
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
422
|
+
]
|
|
423
|
+
}
|
|
424
|
+
]
|
|
425
|
+
}
|
|
426
|
+
]);
|
|
427
|
+
<\/script>
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
## Clear Icon
|
|
431
|
+
|
|
432
|
+
When showClear is enabled, a clear icon is displayed to clear the value.
|
|
433
|
+
|
|
434
|
+
```vue
|
|
435
|
+
<template>
|
|
436
|
+
<div class="flex justify-center">
|
|
437
|
+
<CascadeSelect v-model="selectedCity" showClear :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-56" placeholder="Select a City" />
|
|
438
|
+
</div>
|
|
439
|
+
</template>
|
|
440
|
+
|
|
441
|
+
<script setup>
|
|
442
|
+
import { ref } from "vue";
|
|
443
|
+
|
|
444
|
+
const selectedCity = ref();
|
|
445
|
+
const countries = ref([
|
|
446
|
+
{
|
|
447
|
+
name: 'Australia',
|
|
448
|
+
code: 'AU',
|
|
449
|
+
states: [
|
|
450
|
+
{
|
|
451
|
+
name: 'New South Wales',
|
|
452
|
+
cities: [
|
|
453
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
454
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
455
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
456
|
+
]
|
|
457
|
+
},
|
|
458
|
+
{
|
|
459
|
+
name: 'Queensland',
|
|
460
|
+
cities: [
|
|
461
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
462
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
463
|
+
]
|
|
464
|
+
}
|
|
465
|
+
]
|
|
466
|
+
},
|
|
467
|
+
{
|
|
468
|
+
name: 'Canada',
|
|
469
|
+
code: 'CA',
|
|
470
|
+
states: [
|
|
471
|
+
{
|
|
472
|
+
name: 'Quebec',
|
|
473
|
+
cities: [
|
|
474
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
475
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
476
|
+
]
|
|
477
|
+
},
|
|
478
|
+
{
|
|
479
|
+
name: 'Ontario',
|
|
480
|
+
cities: [
|
|
481
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
482
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
483
|
+
]
|
|
484
|
+
}
|
|
485
|
+
]
|
|
486
|
+
},
|
|
487
|
+
{
|
|
488
|
+
name: 'United States',
|
|
489
|
+
code: 'US',
|
|
490
|
+
states: [
|
|
491
|
+
{
|
|
492
|
+
name: 'California',
|
|
493
|
+
cities: [
|
|
494
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
495
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
496
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
497
|
+
]
|
|
498
|
+
},
|
|
499
|
+
{
|
|
500
|
+
name: 'Florida',
|
|
501
|
+
cities: [
|
|
502
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
503
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
504
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
505
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
506
|
+
]
|
|
507
|
+
},
|
|
508
|
+
{
|
|
509
|
+
name: 'Texas',
|
|
510
|
+
cities: [
|
|
511
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
512
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
513
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
514
|
+
]
|
|
515
|
+
}
|
|
516
|
+
]
|
|
517
|
+
}
|
|
518
|
+
]);
|
|
519
|
+
<\/script>
|
|
520
|
+
```
|
|
521
|
+
|
|
522
|
+
## Sizes
|
|
523
|
+
|
|
524
|
+
CascadeSelect provides small and large sizes as alternatives to the base.
|
|
525
|
+
|
|
526
|
+
```vue
|
|
527
|
+
<template>
|
|
528
|
+
<div class="flex flex-col items-center gap-4">
|
|
529
|
+
<CascadeSelect v-model="value1" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-56" size="small" placeholder="Small" />
|
|
530
|
+
<CascadeSelect v-model="value2" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-56" placeholder="Normal" />
|
|
531
|
+
<CascadeSelect v-model="value3" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-56" size="large" placeholder="Large" />
|
|
532
|
+
</div>
|
|
533
|
+
</template>
|
|
534
|
+
|
|
535
|
+
<script setup>
|
|
536
|
+
import { ref } from 'vue';
|
|
537
|
+
|
|
538
|
+
const value1 = ref(null);
|
|
539
|
+
const value2 = ref(null);
|
|
540
|
+
const value3 = ref(null);
|
|
541
|
+
const countries = ref([
|
|
542
|
+
{
|
|
543
|
+
name: 'Australia',
|
|
544
|
+
code: 'AU',
|
|
545
|
+
states: [
|
|
546
|
+
{
|
|
547
|
+
name: 'New South Wales',
|
|
548
|
+
cities: [
|
|
549
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
550
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
551
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
552
|
+
]
|
|
553
|
+
},
|
|
554
|
+
{
|
|
555
|
+
name: 'Queensland',
|
|
556
|
+
cities: [
|
|
557
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
558
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
559
|
+
]
|
|
560
|
+
}
|
|
561
|
+
]
|
|
562
|
+
},
|
|
563
|
+
{
|
|
564
|
+
name: 'Canada',
|
|
565
|
+
code: 'CA',
|
|
566
|
+
states: [
|
|
567
|
+
{
|
|
568
|
+
name: 'Quebec',
|
|
569
|
+
cities: [
|
|
570
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
571
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
572
|
+
]
|
|
573
|
+
},
|
|
574
|
+
{
|
|
575
|
+
name: 'Ontario',
|
|
576
|
+
cities: [
|
|
577
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
578
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
579
|
+
]
|
|
580
|
+
}
|
|
581
|
+
]
|
|
582
|
+
},
|
|
583
|
+
{
|
|
584
|
+
name: 'United States',
|
|
585
|
+
code: 'US',
|
|
586
|
+
states: [
|
|
587
|
+
{
|
|
588
|
+
name: 'California',
|
|
589
|
+
cities: [
|
|
590
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
591
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
592
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
593
|
+
]
|
|
594
|
+
},
|
|
595
|
+
{
|
|
596
|
+
name: 'Florida',
|
|
597
|
+
cities: [
|
|
598
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
599
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
600
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
601
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
602
|
+
]
|
|
603
|
+
},
|
|
604
|
+
{
|
|
605
|
+
name: 'Texas',
|
|
606
|
+
cities: [
|
|
607
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
608
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
609
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
610
|
+
]
|
|
611
|
+
}
|
|
612
|
+
]
|
|
613
|
+
}
|
|
614
|
+
]);
|
|
615
|
+
<\/script>
|
|
616
|
+
```
|
|
617
|
+
|
|
618
|
+
## Fluid
|
|
619
|
+
|
|
620
|
+
The fluid prop makes the component take up the full width of its container when set to true.
|
|
621
|
+
|
|
622
|
+
```vue
|
|
623
|
+
<template>
|
|
624
|
+
<div>
|
|
625
|
+
<CascadeSelect v-model="selectedCity" fluid :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" placeholder="Select a City" />
|
|
626
|
+
</div>
|
|
627
|
+
</template>
|
|
628
|
+
|
|
629
|
+
<script setup>
|
|
630
|
+
import { ref } from "vue";
|
|
631
|
+
|
|
632
|
+
const selectedCity = ref();
|
|
633
|
+
const countries = ref([
|
|
634
|
+
{
|
|
635
|
+
name: 'Australia',
|
|
636
|
+
code: 'AU',
|
|
637
|
+
states: [
|
|
638
|
+
{
|
|
639
|
+
name: 'New South Wales',
|
|
640
|
+
cities: [
|
|
641
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
642
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
643
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
644
|
+
]
|
|
645
|
+
},
|
|
646
|
+
{
|
|
647
|
+
name: 'Queensland',
|
|
648
|
+
cities: [
|
|
649
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
650
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
651
|
+
]
|
|
652
|
+
}
|
|
653
|
+
]
|
|
654
|
+
},
|
|
655
|
+
{
|
|
656
|
+
name: 'Canada',
|
|
657
|
+
code: 'CA',
|
|
658
|
+
states: [
|
|
659
|
+
{
|
|
660
|
+
name: 'Quebec',
|
|
661
|
+
cities: [
|
|
662
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
663
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
664
|
+
]
|
|
665
|
+
},
|
|
666
|
+
{
|
|
667
|
+
name: 'Ontario',
|
|
668
|
+
cities: [
|
|
669
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
670
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
671
|
+
]
|
|
672
|
+
}
|
|
673
|
+
]
|
|
674
|
+
},
|
|
675
|
+
{
|
|
676
|
+
name: 'United States',
|
|
677
|
+
code: 'US',
|
|
678
|
+
states: [
|
|
679
|
+
{
|
|
680
|
+
name: 'California',
|
|
681
|
+
cities: [
|
|
682
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
683
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
684
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
685
|
+
]
|
|
686
|
+
},
|
|
687
|
+
{
|
|
688
|
+
name: 'Florida',
|
|
689
|
+
cities: [
|
|
690
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
691
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
692
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
693
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
694
|
+
]
|
|
695
|
+
},
|
|
696
|
+
{
|
|
697
|
+
name: 'Texas',
|
|
698
|
+
cities: [
|
|
699
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
700
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
701
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
702
|
+
]
|
|
703
|
+
}
|
|
704
|
+
]
|
|
705
|
+
}
|
|
706
|
+
]);
|
|
707
|
+
<\/script>
|
|
708
|
+
```
|
|
709
|
+
|
|
710
|
+
## Filled
|
|
711
|
+
|
|
712
|
+
Specify the variant property as filled to display the component with a higher visual emphasis than the default outlined style.
|
|
713
|
+
|
|
714
|
+
```vue
|
|
715
|
+
<template>
|
|
716
|
+
<div class="flex justify-center">
|
|
717
|
+
<CascadeSelect v-model="selectedCity" variant="filled" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-56" placeholder="Select a City" />
|
|
718
|
+
</div>
|
|
719
|
+
</template>
|
|
720
|
+
|
|
721
|
+
<script setup>
|
|
722
|
+
import { ref } from "vue";
|
|
723
|
+
|
|
724
|
+
const selectedCity = ref();
|
|
725
|
+
const countries = ref([
|
|
726
|
+
{
|
|
727
|
+
name: 'Australia',
|
|
728
|
+
code: 'AU',
|
|
729
|
+
states: [
|
|
730
|
+
{
|
|
731
|
+
name: 'New South Wales',
|
|
732
|
+
cities: [
|
|
733
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
734
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
735
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
736
|
+
]
|
|
737
|
+
},
|
|
738
|
+
{
|
|
739
|
+
name: 'Queensland',
|
|
740
|
+
cities: [
|
|
741
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
742
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
743
|
+
]
|
|
744
|
+
}
|
|
745
|
+
]
|
|
746
|
+
},
|
|
747
|
+
{
|
|
748
|
+
name: 'Canada',
|
|
749
|
+
code: 'CA',
|
|
750
|
+
states: [
|
|
751
|
+
{
|
|
752
|
+
name: 'Quebec',
|
|
753
|
+
cities: [
|
|
754
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
755
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
756
|
+
]
|
|
757
|
+
},
|
|
758
|
+
{
|
|
759
|
+
name: 'Ontario',
|
|
760
|
+
cities: [
|
|
761
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
762
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
763
|
+
]
|
|
764
|
+
}
|
|
765
|
+
]
|
|
766
|
+
},
|
|
767
|
+
{
|
|
768
|
+
name: 'United States',
|
|
769
|
+
code: 'US',
|
|
770
|
+
states: [
|
|
771
|
+
{
|
|
772
|
+
name: 'California',
|
|
773
|
+
cities: [
|
|
774
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
775
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
776
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
777
|
+
]
|
|
778
|
+
},
|
|
779
|
+
{
|
|
780
|
+
name: 'Florida',
|
|
781
|
+
cities: [
|
|
782
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
783
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
784
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
785
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
786
|
+
]
|
|
787
|
+
},
|
|
788
|
+
{
|
|
789
|
+
name: 'Texas',
|
|
790
|
+
cities: [
|
|
791
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
792
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
793
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
794
|
+
]
|
|
795
|
+
}
|
|
796
|
+
]
|
|
797
|
+
}
|
|
798
|
+
]);
|
|
799
|
+
<\/script>
|
|
800
|
+
```
|
|
801
|
+
|
|
802
|
+
## Disabled
|
|
803
|
+
|
|
804
|
+
When disabled is present, the element cannot be edited and focused.
|
|
805
|
+
|
|
806
|
+
```vue
|
|
807
|
+
<template>
|
|
808
|
+
<div class="flex justify-center">
|
|
809
|
+
<CascadeSelect disabled placeholder="Disabled" class="w-56" />
|
|
810
|
+
</div>
|
|
811
|
+
</template>
|
|
812
|
+
```
|
|
813
|
+
|
|
814
|
+
## Invalid
|
|
815
|
+
|
|
816
|
+
Invalid state is displayed using the invalid prop to indicate a failed validation. You can use this style when integrating with form validation libraries.
|
|
817
|
+
|
|
818
|
+
```vue
|
|
819
|
+
<template>
|
|
820
|
+
<div class="flex flex-wrap justify-center gap-4">
|
|
821
|
+
<CascadeSelect v-model="selectedCity1" :invalid="!selectedCity1" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-full sm:w-56" placeholder="Select a City" />
|
|
822
|
+
<CascadeSelect v-model="selectedCity2" :invalid="!selectedCity2" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-full sm:w-56" placeholder="Select a City" variant="filled" />
|
|
823
|
+
</div>
|
|
824
|
+
</template>
|
|
825
|
+
|
|
826
|
+
<script setup>
|
|
827
|
+
import { ref } from "vue";
|
|
828
|
+
|
|
829
|
+
const selectedCity1 = ref(null);
|
|
830
|
+
const selectedCity2 = ref(null);
|
|
831
|
+
const countries = ref([
|
|
832
|
+
{
|
|
833
|
+
name: 'Australia',
|
|
834
|
+
code: 'AU',
|
|
835
|
+
states: [
|
|
836
|
+
{
|
|
837
|
+
name: 'New South Wales',
|
|
838
|
+
cities: [
|
|
839
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
840
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
841
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
842
|
+
]
|
|
843
|
+
},
|
|
844
|
+
{
|
|
845
|
+
name: 'Queensland',
|
|
846
|
+
cities: [
|
|
847
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
848
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
849
|
+
]
|
|
850
|
+
}
|
|
851
|
+
]
|
|
852
|
+
},
|
|
853
|
+
{
|
|
854
|
+
name: 'Canada',
|
|
855
|
+
code: 'CA',
|
|
856
|
+
states: [
|
|
857
|
+
{
|
|
858
|
+
name: 'Quebec',
|
|
859
|
+
cities: [
|
|
860
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
861
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
862
|
+
]
|
|
863
|
+
},
|
|
864
|
+
{
|
|
865
|
+
name: 'Ontario',
|
|
866
|
+
cities: [
|
|
867
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
868
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
869
|
+
]
|
|
870
|
+
}
|
|
871
|
+
]
|
|
872
|
+
},
|
|
873
|
+
{
|
|
874
|
+
name: 'United States',
|
|
875
|
+
code: 'US',
|
|
876
|
+
states: [
|
|
877
|
+
{
|
|
878
|
+
name: 'California',
|
|
879
|
+
cities: [
|
|
880
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
881
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
882
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
883
|
+
]
|
|
884
|
+
},
|
|
885
|
+
{
|
|
886
|
+
name: 'Florida',
|
|
887
|
+
cities: [
|
|
888
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
889
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
890
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
891
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
892
|
+
]
|
|
893
|
+
},
|
|
894
|
+
{
|
|
895
|
+
name: 'Texas',
|
|
896
|
+
cities: [
|
|
897
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
898
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
899
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
900
|
+
]
|
|
901
|
+
}
|
|
902
|
+
]
|
|
903
|
+
}
|
|
904
|
+
]);
|
|
905
|
+
<\/script>
|
|
906
|
+
```
|
|
907
|
+
|
|
908
|
+
## Forms
|
|
909
|
+
|
|
910
|
+
CascadeSelect integrates seamlessly with the PrimeVue Forms library.
|
|
911
|
+
|
|
912
|
+
```vue
|
|
913
|
+
<template>
|
|
914
|
+
<div class="flex justify-center">
|
|
915
|
+
<Form v-slot="$form" :resolver="resolver" :initialValues="initialValues" @submit="onFormSubmit" class="flex justify-center flex-col gap-4">
|
|
916
|
+
<div class="flex flex-col gap-1">
|
|
917
|
+
<CascadeSelect name="city" :options="countries" optionLabel="cname" optionGroupLabel="name" :optionGroupChildren="['states', 'cities']" class="w-56" placeholder="Select a City" />
|
|
918
|
+
<Message v-if="$form.city?.invalid" severity="error" size="small" variant="simple">{{ $form.city.error?.message }}</Message>
|
|
919
|
+
</div>
|
|
920
|
+
<Button type="submit" severity="secondary">Submit</Button>
|
|
921
|
+
</Form>
|
|
922
|
+
<Toast />
|
|
923
|
+
</div>
|
|
924
|
+
</template>
|
|
925
|
+
|
|
926
|
+
<script setup>
|
|
927
|
+
import { ref } from "vue";
|
|
928
|
+
import { zodResolver } from '@primevue/forms/resolvers/zod';
|
|
929
|
+
import { useToast } from "primevue/usetoast";
|
|
930
|
+
import { z } from 'zod';
|
|
931
|
+
|
|
932
|
+
const toast = useToast();
|
|
933
|
+
const initialValues = ref({
|
|
934
|
+
city: null
|
|
935
|
+
});
|
|
936
|
+
|
|
937
|
+
const resolver = ref(zodResolver(
|
|
938
|
+
z.object({
|
|
939
|
+
city: z.union([
|
|
940
|
+
z.object({
|
|
941
|
+
cname: z.string().min(1, 'City is required.')
|
|
942
|
+
}),
|
|
943
|
+
z.any().refine((val) => false, { message: 'City is required.' })
|
|
944
|
+
])
|
|
945
|
+
})
|
|
946
|
+
));
|
|
947
|
+
|
|
948
|
+
const countries = ref([
|
|
949
|
+
{
|
|
950
|
+
name: 'Australia',
|
|
951
|
+
code: 'AU',
|
|
952
|
+
states: [
|
|
953
|
+
{
|
|
954
|
+
name: 'New South Wales',
|
|
955
|
+
cities: [
|
|
956
|
+
{ cname: 'Sydney', code: 'A-SY' },
|
|
957
|
+
{ cname: 'Newcastle', code: 'A-NE' },
|
|
958
|
+
{ cname: 'Wollongong', code: 'A-WO' }
|
|
959
|
+
]
|
|
960
|
+
},
|
|
961
|
+
{
|
|
962
|
+
name: 'Queensland',
|
|
963
|
+
cities: [
|
|
964
|
+
{ cname: 'Brisbane', code: 'A-BR' },
|
|
965
|
+
{ cname: 'Townsville', code: 'A-TO' }
|
|
966
|
+
]
|
|
967
|
+
}
|
|
968
|
+
]
|
|
969
|
+
},
|
|
970
|
+
{
|
|
971
|
+
name: 'Canada',
|
|
972
|
+
code: 'CA',
|
|
973
|
+
states: [
|
|
974
|
+
{
|
|
975
|
+
name: 'Quebec',
|
|
976
|
+
cities: [
|
|
977
|
+
{ cname: 'Montreal', code: 'C-MO' },
|
|
978
|
+
{ cname: 'Quebec City', code: 'C-QU' }
|
|
979
|
+
]
|
|
980
|
+
},
|
|
981
|
+
{
|
|
982
|
+
name: 'Ontario',
|
|
983
|
+
cities: [
|
|
984
|
+
{ cname: 'Ottawa', code: 'C-OT' },
|
|
985
|
+
{ cname: 'Toronto', code: 'C-TO' }
|
|
986
|
+
]
|
|
987
|
+
}
|
|
988
|
+
]
|
|
989
|
+
},
|
|
990
|
+
{
|
|
991
|
+
name: 'United States',
|
|
992
|
+
code: 'US',
|
|
993
|
+
states: [
|
|
994
|
+
{
|
|
995
|
+
name: 'California',
|
|
996
|
+
cities: [
|
|
997
|
+
{ cname: 'Los Angeles', code: 'US-LA' },
|
|
998
|
+
{ cname: 'San Diego', code: 'US-SD' },
|
|
999
|
+
{ cname: 'San Francisco', code: 'US-SF' }
|
|
1000
|
+
]
|
|
1001
|
+
},
|
|
1002
|
+
{
|
|
1003
|
+
name: 'Florida',
|
|
1004
|
+
cities: [
|
|
1005
|
+
{ cname: 'Jacksonville', code: 'US-JA' },
|
|
1006
|
+
{ cname: 'Miami', code: 'US-MI' },
|
|
1007
|
+
{ cname: 'Tampa', code: 'US-TA' },
|
|
1008
|
+
{ cname: 'Orlando', code: 'US-OR' }
|
|
1009
|
+
]
|
|
1010
|
+
},
|
|
1011
|
+
{
|
|
1012
|
+
name: 'Texas',
|
|
1013
|
+
cities: [
|
|
1014
|
+
{ cname: 'Austin', code: 'US-AU' },
|
|
1015
|
+
{ cname: 'Dallas', code: 'US-DA' },
|
|
1016
|
+
{ cname: 'Houston', code: 'US-HO' }
|
|
1017
|
+
]
|
|
1018
|
+
}
|
|
1019
|
+
]
|
|
1020
|
+
}
|
|
1021
|
+
]);
|
|
1022
|
+
|
|
1023
|
+
const onFormSubmit = ({ valid }) => {
|
|
1024
|
+
if (valid) {
|
|
1025
|
+
toast.add({ severity: 'success', summary: 'Form is submitted.', life: 3000 });
|
|
1026
|
+
}
|
|
1027
|
+
};
|
|
1028
|
+
<\/script>
|
|
1029
|
+
```
|
|
1030
|
+
|
|
1031
|
+
## Accessibility
|
|
1032
|
+
|
|
1033
|
+
Screen Reader Value to describe the component can either be provided with aria-labelledby or aria-label props. The cascadeselect element 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 that refers to the id of the popup. The popup list has an id that refers to the aria-controls attribute of the combobox element and uses tree as the role. Each list item has a treeitem role along with aria-label , aria-selected and aria-expanded attributes. The container element of a treenode has the group role. The aria-setsize , aria-posinset and aria-level attributes are calculated implicitly and added to each treeitem. Closed State Keyboard Support Key Function tab Moves focus to the cascadeselect 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 last 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 Hides the popup and moves focus to the next tabbable element. If there is none, the focusable option is selected and the overlay is closed then moves focus to next element in page. shift + tab Hides the popup and moves focus to the previous tabbable element. enter Selects the focused option and closes the popup. space Selects the focused option and closes the popup. escape Closes the popup, moves focus to the cascadeselect element. down arrow Moves focus to the next option. up arrow Moves focus to the previous option. alt + up arrow Selects the focused option and closes the popup, then moves focus to the cascadeselect element. right arrow If option is closed, opens the option otherwise moves focus to the first child option. left arrow If option is open, closes the option otherwise moves focus to the parent option. 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. any printable character Moves focus to the option whose label starts with the characters being typed.
|
|
1034
|
+
|
|
1035
|
+
```vue
|
|
1036
|
+
<template>
|
|
1037
|
+
<span id="dd1">Options</span>
|
|
1038
|
+
<CascadeSelect aria-labelledby="dd1" />
|
|
1039
|
+
|
|
1040
|
+
<CascadeSelect aria-label="Options" />
|
|
1041
|
+
</template>
|
|
1042
|
+
```
|
|
1043
|
+
|
|
1044
|
+
## Cascade Select API
|
|
1045
|
+
|
|
1046
|
+
### Props
|
|
1047
|
+
|
|
1048
|
+
| Name |Type |Default |Description |
|
|
1049
|
+
| --- | --- | --- | --- |
|
|
1050
|
+
| modelValue | any | - | Value of the component. |
|
|
1051
|
+
| defaultValue | any | - | The default value for the input when not controlled by `modelValue` . |
|
|
1052
|
+
| name | string | - | The name attribute for the element, typically used in form submissions. |
|
|
1053
|
+
| options | any[] | - | An array of selectitems to display as the available options. |
|
|
1054
|
+
| optionLabel | string \| Function | - | Property name or getter function to use as the label of an option. |
|
|
1055
|
+
| optionValue | string \| Function | - | Property name or getter function to use as the value of an option, defaults to the option itself when not defined. |
|
|
1056
|
+
| optionDisabled | string \| Function | - | Property name or getter function to use as the disabled flag of an option, defaults to false when not defined. |
|
|
1057
|
+
| optionGroupLabel | string \| Function | - | Property name or getter function to use as the label of an option group. |
|
|
1058
|
+
| optionGroupChildren | string \| string[] \| Function | - | Property name or getter function to retrieve the items of a group. |
|
|
1059
|
+
| placeholder | string | - | Default text to display when no option is selected. |
|
|
1060
|
+
| breakpoint | string | 960px | The breakpoint to define the maximum width boundary. |
|
|
1061
|
+
| size | HintedString<"small" \| "large"> | - | Defines the size of the component. |
|
|
1062
|
+
| invalid | boolean | false | When present, it specifies that the component should have invalid state style. |
|
|
1063
|
+
| disabled | boolean | false | When present, it specifies that the component should be disabled. |
|
|
1064
|
+
| variant | null \| HintedString<"outlined" \| "filled"> | null | Specifies the input variant of the component. |
|
|
1065
|
+
| dataKey | string | - | A property to uniquely identify an option. |
|
|
1066
|
+
| showClear | boolean | false | When enabled, a clear icon is displayed to clear the value. |
|
|
1067
|
+
| clearIcon | string | - | Icon to display in clear button. |
|
|
1068
|
+
| inputId | string | - | Identifier of the underlying input element. |
|
|
1069
|
+
| inputStyle | object | - | Inline style of the input field. |
|
|
1070
|
+
| inputClass | string \| object | - | Style class of the input field. |
|
|
1071
|
+
| inputProps | InputHTMLAttributes | - | Used to pass all properties of the HTMLInputElement to the focusable input element inside the component. |
|
|
1072
|
+
| overlayStyle | object | - | Inline style of the overlay overlay. |
|
|
1073
|
+
| overlayClass | string \| object | - | Style class of the overlay overlay. |
|
|
1074
|
+
| overlayProps | HTMLAttributes | - | Used to pass all properties of the HTMLDivElement to the overlay overlay inside the component. |
|
|
1075
|
+
| 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. |
|
|
1076
|
+
| loading | boolean | false | Whether the dropdown is in loading state. |
|
|
1077
|
+
| dropdownIcon | string | - | Icon to display in the dropdown. |
|
|
1078
|
+
| loadingIcon | string | - | Icon to display in loading state. |
|
|
1079
|
+
| optionGroupIcon | string | - | Icon to display in the option group. |
|
|
1080
|
+
| autoOptionFocus | boolean | false | Whether to focus on the first visible or selected element when the overlay panel is shown. |
|
|
1081
|
+
| selectOnFocus | boolean | false | When enabled, the focused option is selected/opened. |
|
|
1082
|
+
| focusOnHover | boolean | true | When enabled, the focus is placed on the hovered option. |
|
|
1083
|
+
| searchLocale | string | - | Locale to use in searching. The default locale is the host environment's current locale. |
|
|
1084
|
+
| searchMessage | 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. |
|
|
1085
|
+
| selectionMessage | string | '{0} items selected' | Text to be displayed in hidden accessible field when options are selected. Defaults to value from PrimeVue locale configuration. |
|
|
1086
|
+
| 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. |
|
|
1087
|
+
| emptySearchMessage | string | No results found | Text to display when filtering does not return any results. Defaults to value from PrimeVue locale configuration. |
|
|
1088
|
+
| emptyMessage | string | No available options | Text to be displayed when there are no options available. Defaults to value from PrimeVue locale configuration. |
|
|
1089
|
+
| tabindex | string \| number | - | Index of the element in tabbing order. |
|
|
1090
|
+
| fluid | boolean | null | Spans 100% width of the container when enabled. |
|
|
1091
|
+
| ariaLabelledby | string | - | Establishes relationships between the component and label(s) where its value should be one or more element IDs. |
|
|
1092
|
+
| ariaLabel | string | - | Establishes a string value that labels the component. |
|
|
1093
|
+
| formControl | Record<string, any> | - | Form control object, typically used for handling validation and form state. |
|
|
1094
|
+
| dt | any | - | It generates scoped CSS variables using design tokens for the component. |
|
|
1095
|
+
| pt | PassThrough<CascadeSelectPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
|
|
1096
|
+
| ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
|
|
1097
|
+
| unstyled | boolean | false | When enabled, it removes component related styles in the core. |
|
|
1098
|
+
|
|
1099
|
+
### Pass Through Options
|
|
1100
|
+
|
|
1101
|
+
| Name |Type |Description |
|
|
1102
|
+
| --- | --- | --- |
|
|
1103
|
+
| root | CascadeSelectPassThroughOptionType | Used to pass attributes to the root's DOM element. |
|
|
1104
|
+
| input | CascadeSelectPassThroughOptionType | Used to pass attributes to the input's DOM element. |
|
|
1105
|
+
| label | CascadeSelectPassThroughOptionType | Used to pass attributes to the label's DOM element. |
|
|
1106
|
+
| clearIcon | CascadeSelectPassThroughOptionType | Used to pass attributes to the label's DOM element. |
|
|
1107
|
+
| dropdown | CascadeSelectPassThroughOptionType | Used to pass attributes to the dropdown button's DOM element. |
|
|
1108
|
+
| dropdownIcon | CascadeSelectPassThroughOptionType | Used to pass attributes to the dropdown icon's DOM element. |
|
|
1109
|
+
| loadingIcon | CascadeSelectPassThroughOptionType | Used to pass attributes to the loading icon's DOM element. |
|
|
1110
|
+
| overlay | CascadeSelectPassThroughOptionType | Used to pass attributes to the overlay's DOM element. |
|
|
1111
|
+
| listContainer | CascadeSelectPassThroughOptionType | Used to pass attributes to the list container's DOM element. |
|
|
1112
|
+
| list | CascadeSelectPassThroughOptionType | Used to pass attributes to the list's DOM element. |
|
|
1113
|
+
| option | CascadeSelectPassThroughOptionType | Used to pass attributes to the option's DOM element. |
|
|
1114
|
+
| optionContent | CascadeSelectPassThroughOptionType | Used to pass attributes to the option content's DOM element. |
|
|
1115
|
+
| optionText | CascadeSelectPassThroughOptionType | Used to pass attributes to the option text's DOM element. |
|
|
1116
|
+
| optionList | CascadeSelectPassThroughOptionType | Used to pass attributes to the option list's DOM element. |
|
|
1117
|
+
| groupIconContainer | CascadeSelectPassThroughOptionType | Used to pass attributes to the group icon container's DOM element. |
|
|
1118
|
+
| groupIcon | CascadeSelectPassThroughOptionType | Used to pass attributes to the group icon's DOM element. |
|
|
1119
|
+
| hiddenInputContainer | CascadeSelectPassThroughOptionType | Used to pass attributes to the hidden input container's DOM element. |
|
|
1120
|
+
| hiddenInput | CascadeSelectPassThroughOptionType | Used to pass attributes to the hidden input's DOM element. |
|
|
1121
|
+
| hiddenSelectedMessage | CascadeSelectPassThroughOptionType | Used to pass attributes to the hidden selected message's DOM element. |
|
|
1122
|
+
| hiddenSearchResult | CascadeSelectPassThroughOptionType | Used to pass attributes to the search result message text aria's DOM element. |
|
|
1123
|
+
| hooks | any | Used to manage all lifecycle hooks. |
|
|
1124
|
+
| transition | CascadeSelectPassThroughTransitionType | Used to control Vue Transition API. |
|
|
1125
|
+
|
|
1126
|
+
### Theming
|
|
1127
|
+
|
|
1128
|
+
### CSS Classes
|
|
1129
|
+
|
|
1130
|
+
| Class |Description |
|
|
1131
|
+
| --- | --- |
|
|
1132
|
+
| p-cascadeselect | Class name of the root element |
|
|
1133
|
+
| p-cascadeselect-label | Class name of the label element |
|
|
1134
|
+
| p-cascadeselect-dropdown | Class name of the dropdown element |
|
|
1135
|
+
| p-cascadeselect-loading-icon | Class name of the loading icon element |
|
|
1136
|
+
| p-cascadeselect-clear-icon | Class name of the dropdown icon element |
|
|
1137
|
+
| p-cascadeselect-dropdown-icon | Class name of the dropdown icon element |
|
|
1138
|
+
| p-cascadeselect-overlay | Class name of the overlay element |
|
|
1139
|
+
| p-cascadeselect-list-container | Class name of the list container element |
|
|
1140
|
+
| p-cascadeselect-list | Class name of the list element |
|
|
1141
|
+
| p-cascadeselect-item | Class name of the item element |
|
|
1142
|
+
| p-cascadeselect-item-content | Class name of the item content element |
|
|
1143
|
+
| p-cascadeselect-item-text | Class name of the item text element |
|
|
1144
|
+
| p-cascadeselect-group-icon | Class name of the group icon element |
|
|
1145
|
+
| p-cascadeselect-item-list | Class name of the item list element |
|
|
1146
|
+
|
|
1147
|
+
### Design Tokens
|
|
1148
|
+
|
|
1149
|
+
| Token |CSS Variable |Description |
|
|
1150
|
+
| --- | --- | --- |
|
|
1151
|
+
| cascadeselect.background | --p-cascadeselect-background | Background of root |
|
|
1152
|
+
| cascadeselect.disabled.background | --p-cascadeselect-disabled-background | Disabled background of root |
|
|
1153
|
+
| cascadeselect.filled.background | --p-cascadeselect-filled-background | Filled background of root |
|
|
1154
|
+
| cascadeselect.filled.hover.background | --p-cascadeselect-filled-hover-background | Filled hover background of root |
|
|
1155
|
+
| cascadeselect.filled.focus.background | --p-cascadeselect-filled-focus-background | Filled focus background of root |
|
|
1156
|
+
| cascadeselect.border.color | --p-cascadeselect-border-color | Border color of root |
|
|
1157
|
+
| cascadeselect.hover.border.color | --p-cascadeselect-hover-border-color | Hover border color of root |
|
|
1158
|
+
| cascadeselect.focus.border.color | --p-cascadeselect-focus-border-color | Focus border color of root |
|
|
1159
|
+
| cascadeselect.invalid.border.color | --p-cascadeselect-invalid-border-color | Invalid border color of root |
|
|
1160
|
+
| cascadeselect.color | --p-cascadeselect-color | Color of root |
|
|
1161
|
+
| cascadeselect.disabled.color | --p-cascadeselect-disabled-color | Disabled color of root |
|
|
1162
|
+
| cascadeselect.placeholder.color | --p-cascadeselect-placeholder-color | Placeholder color of root |
|
|
1163
|
+
| cascadeselect.invalid.placeholder.color | --p-cascadeselect-invalid-placeholder-color | Invalid placeholder color of root |
|
|
1164
|
+
| cascadeselect.shadow | --p-cascadeselect-shadow | Shadow of root |
|
|
1165
|
+
| cascadeselect.padding.x | --p-cascadeselect-padding-x | Padding x of root |
|
|
1166
|
+
| cascadeselect.padding.y | --p-cascadeselect-padding-y | Padding y of root |
|
|
1167
|
+
| cascadeselect.border.radius | --p-cascadeselect-border-radius | Border radius of root |
|
|
1168
|
+
| cascadeselect.focus.ring.width | --p-cascadeselect-focus-ring-width | Focus ring width of root |
|
|
1169
|
+
| cascadeselect.focus.ring.style | --p-cascadeselect-focus-ring-style | Focus ring style of root |
|
|
1170
|
+
| cascadeselect.focus.ring.color | --p-cascadeselect-focus-ring-color | Focus ring color of root |
|
|
1171
|
+
| cascadeselect.focus.ring.offset | --p-cascadeselect-focus-ring-offset | Focus ring offset of root |
|
|
1172
|
+
| cascadeselect.focus.ring.shadow | --p-cascadeselect-focus-ring-shadow | Focus ring shadow of root |
|
|
1173
|
+
| cascadeselect.transition.duration | --p-cascadeselect-transition-duration | Transition duration of root |
|
|
1174
|
+
| cascadeselect.sm.font.size | --p-cascadeselect-sm-font-size | Sm font size of root |
|
|
1175
|
+
| cascadeselect.sm.padding.x | --p-cascadeselect-sm-padding-x | Sm padding x of root |
|
|
1176
|
+
| cascadeselect.sm.padding.y | --p-cascadeselect-sm-padding-y | Sm padding y of root |
|
|
1177
|
+
| cascadeselect.lg.font.size | --p-cascadeselect-lg-font-size | Lg font size of root |
|
|
1178
|
+
| cascadeselect.lg.padding.x | --p-cascadeselect-lg-padding-x | Lg padding x of root |
|
|
1179
|
+
| cascadeselect.lg.padding.y | --p-cascadeselect-lg-padding-y | Lg padding y of root |
|
|
1180
|
+
| cascadeselect.font.weight | --p-cascadeselect-font-weight | Font weight of current value |
|
|
1181
|
+
| cascadeselect.font.size | --p-cascadeselect-font-size | Font size of current value |
|
|
1182
|
+
| cascadeselect.dropdown.width | --p-cascadeselect-dropdown-width | Width of dropdown |
|
|
1183
|
+
| cascadeselect.dropdown.color | --p-cascadeselect-dropdown-color | Color of dropdown |
|
|
1184
|
+
| cascadeselect.overlay.background | --p-cascadeselect-overlay-background | Background of overlay |
|
|
1185
|
+
| cascadeselect.overlay.border.color | --p-cascadeselect-overlay-border-color | Border color of overlay |
|
|
1186
|
+
| cascadeselect.overlay.border.radius | --p-cascadeselect-overlay-border-radius | Border radius of overlay |
|
|
1187
|
+
| cascadeselect.overlay.color | --p-cascadeselect-overlay-color | Color of overlay |
|
|
1188
|
+
| cascadeselect.overlay.shadow | --p-cascadeselect-overlay-shadow | Shadow of overlay |
|
|
1189
|
+
| cascadeselect.list.padding | --p-cascadeselect-list-padding | Padding of list |
|
|
1190
|
+
| cascadeselect.list.gap | --p-cascadeselect-list-gap | Gap of list |
|
|
1191
|
+
| cascadeselect.list.mobile.indent | --p-cascadeselect-list-mobile-indent | Mobile indent of list |
|
|
1192
|
+
| cascadeselect.option.focus.background | --p-cascadeselect-option-focus-background | Focus background of option |
|
|
1193
|
+
| cascadeselect.option.selected.background | --p-cascadeselect-option-selected-background | Selected background of option |
|
|
1194
|
+
| cascadeselect.option.selected.focus.background | --p-cascadeselect-option-selected-focus-background | Selected focus background of option |
|
|
1195
|
+
| cascadeselect.option.color | --p-cascadeselect-option-color | Color of option |
|
|
1196
|
+
| cascadeselect.option.focus.color | --p-cascadeselect-option-focus-color | Focus color of option |
|
|
1197
|
+
| cascadeselect.option.selected.color | --p-cascadeselect-option-selected-color | Selected color of option |
|
|
1198
|
+
| cascadeselect.option.selected.focus.color | --p-cascadeselect-option-selected-focus-color | Selected focus color of option |
|
|
1199
|
+
| cascadeselect.option.selected.font.weight | --p-cascadeselect-option-selected-font-weight | Font weight of a selected option |
|
|
1200
|
+
| cascadeselect.option.padding | --p-cascadeselect-option-padding | Padding of option |
|
|
1201
|
+
| cascadeselect.option.border.radius | --p-cascadeselect-option-border-radius | Border radius of option |
|
|
1202
|
+
| cascadeselect.option.icon.color | --p-cascadeselect-option-icon-color | Icon color of option |
|
|
1203
|
+
| cascadeselect.option.icon.focus.color | --p-cascadeselect-option-icon-focus-color | Icon focus color of option |
|
|
1204
|
+
| cascadeselect.option.icon.size | --p-cascadeselect-option-icon-size | Icon size of option |
|
|
1205
|
+
| cascadeselect.option.font.weight | --p-cascadeselect-option-font-weight | Font weight of option |
|
|
1206
|
+
| cascadeselect.option.font.size | --p-cascadeselect-option-font-size | Font size of option |
|
|
1207
|
+
| cascadeselect.clear.icon.color | --p-cascadeselect-clear-icon-color | Color of clear icon |
|