@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,419 @@
|
|
|
1
|
+
# InputGroup
|
|
2
|
+
|
|
3
|
+
Text, icon, buttons and other content can be grouped next to an input.
|
|
4
|
+
|
|
5
|
+
## Basic
|
|
6
|
+
|
|
7
|
+
Combines an input with addons such as buttons or text labels.
|
|
8
|
+
|
|
9
|
+
```vue
|
|
10
|
+
<template>
|
|
11
|
+
<div class="space-y-4 max-w-xs mx-auto">
|
|
12
|
+
<InputGroup>
|
|
13
|
+
<InputGroupAddon>
|
|
14
|
+
<User />
|
|
15
|
+
</InputGroupAddon>
|
|
16
|
+
<InputText v-model="text1" placeholder="Username" />
|
|
17
|
+
</InputGroup>
|
|
18
|
+
|
|
19
|
+
<InputGroup>
|
|
20
|
+
<InputGroupAddon>https://</InputGroupAddon>
|
|
21
|
+
<InputText v-model="text2" placeholder="website" />
|
|
22
|
+
<InputGroupAddon>.com</InputGroupAddon>
|
|
23
|
+
</InputGroup>
|
|
24
|
+
</div>
|
|
25
|
+
</template>
|
|
26
|
+
|
|
27
|
+
<script setup>
|
|
28
|
+
import { ref } from 'vue';
|
|
29
|
+
import User from '@primeicons/vue/user';
|
|
30
|
+
|
|
31
|
+
const text1 = ref(null);
|
|
32
|
+
const text2 = ref(null);
|
|
33
|
+
<\/script>
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Multiple
|
|
37
|
+
|
|
38
|
+
A group is created by wrapping the input and add-ons with the InputGroup component. Each add-on element is defined as a child of InputGroupAddon component. Multiple add-ons can be placed inside the same group.
|
|
39
|
+
|
|
40
|
+
```vue
|
|
41
|
+
<template>
|
|
42
|
+
<div class="max-w-sm mx-auto">
|
|
43
|
+
<InputGroup>
|
|
44
|
+
<InputGroupAddon>
|
|
45
|
+
<Clock />
|
|
46
|
+
</InputGroupAddon>
|
|
47
|
+
<InputGroupAddon>
|
|
48
|
+
<StarFill />
|
|
49
|
+
</InputGroupAddon>
|
|
50
|
+
<InputNumber v-model="value" placeholder="Price" />
|
|
51
|
+
<InputGroupAddon>$</InputGroupAddon>
|
|
52
|
+
<InputGroupAddon>.00</InputGroupAddon>
|
|
53
|
+
</InputGroup>
|
|
54
|
+
</div>
|
|
55
|
+
</template>
|
|
56
|
+
|
|
57
|
+
<script setup>
|
|
58
|
+
import { ref } from 'vue';
|
|
59
|
+
import Clock from '@primeicons/vue/clock';
|
|
60
|
+
import StarFill from '@primeicons/vue/star-fill';
|
|
61
|
+
|
|
62
|
+
const value = ref(null);
|
|
63
|
+
<\/script>
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Button
|
|
67
|
+
|
|
68
|
+
Buttons can be placed at either side of an input element.
|
|
69
|
+
|
|
70
|
+
```vue
|
|
71
|
+
<template>
|
|
72
|
+
<div class="space-y-4 max-w-xs mx-auto">
|
|
73
|
+
<InputGroup>
|
|
74
|
+
<Button>Search</Button>
|
|
75
|
+
<InputText placeholder="Keyword" />
|
|
76
|
+
<InputGroupAddon class="text-xs">8 results</InputGroupAddon>
|
|
77
|
+
</InputGroup>
|
|
78
|
+
|
|
79
|
+
<InputGroup>
|
|
80
|
+
<InputText placeholder="Keyword" />
|
|
81
|
+
<InputGroupAddon>
|
|
82
|
+
<Button severity="secondary" variant="text" iconOnly>
|
|
83
|
+
<Search />
|
|
84
|
+
</Button>
|
|
85
|
+
</InputGroupAddon>
|
|
86
|
+
</InputGroup>
|
|
87
|
+
|
|
88
|
+
<InputGroup>
|
|
89
|
+
<InputGroupAddon>
|
|
90
|
+
<Button severity="secondary" iconOnly>
|
|
91
|
+
<Check />
|
|
92
|
+
</Button>
|
|
93
|
+
</InputGroupAddon>
|
|
94
|
+
<InputText placeholder="Vote" />
|
|
95
|
+
<InputGroupAddon>
|
|
96
|
+
<Button severity="secondary" iconOnly>
|
|
97
|
+
<Times />
|
|
98
|
+
</Button>
|
|
99
|
+
</InputGroupAddon>
|
|
100
|
+
</InputGroup>
|
|
101
|
+
</div>
|
|
102
|
+
</template>
|
|
103
|
+
|
|
104
|
+
<script setup>
|
|
105
|
+
import Check from '@primeicons/vue/check';
|
|
106
|
+
import Search from '@primeicons/vue/search';
|
|
107
|
+
import Times from '@primeicons/vue/times';
|
|
108
|
+
<\/script>
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Checkbox & Radio
|
|
112
|
+
|
|
113
|
+
Checkbox and RadioButton components can be combined with an input element under the same group.
|
|
114
|
+
|
|
115
|
+
```vue
|
|
116
|
+
<template>
|
|
117
|
+
<div class="space-y-4 max-w-xs mx-auto">
|
|
118
|
+
<InputGroup>
|
|
119
|
+
<InputText type="text" placeholder="Price" />
|
|
120
|
+
<InputGroupAddon>
|
|
121
|
+
<RadioButton v-model="radioValue1" name="rb1" value="rb1" />
|
|
122
|
+
</InputGroupAddon>
|
|
123
|
+
</InputGroup>
|
|
124
|
+
|
|
125
|
+
<InputGroup>
|
|
126
|
+
<InputGroupAddon>
|
|
127
|
+
<Checkbox v-model="checked1" :binary="true" />
|
|
128
|
+
</InputGroupAddon>
|
|
129
|
+
<InputText type="text" placeholder="Username" />
|
|
130
|
+
</InputGroup>
|
|
131
|
+
|
|
132
|
+
<InputGroup>
|
|
133
|
+
<InputGroupAddon>
|
|
134
|
+
<Checkbox v-model="checked2" :binary="true" />
|
|
135
|
+
</InputGroupAddon>
|
|
136
|
+
<InputText type="text" placeholder="Website" />
|
|
137
|
+
<InputGroupAddon>
|
|
138
|
+
<RadioButton v-model="category" name="rb2" value="rb2" />
|
|
139
|
+
</InputGroupAddon>
|
|
140
|
+
</InputGroup>
|
|
141
|
+
</div>
|
|
142
|
+
</template>
|
|
143
|
+
|
|
144
|
+
<script setup>
|
|
145
|
+
import { ref } from 'vue';
|
|
146
|
+
|
|
147
|
+
const radioValue1 = ref(false);
|
|
148
|
+
const checked1 = ref(false);
|
|
149
|
+
const checked2 = ref(false);
|
|
150
|
+
const category = ref(null);
|
|
151
|
+
<\/script>
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
## Select
|
|
155
|
+
|
|
156
|
+
A Select component can be used within an InputGroup alongside other add-ons and inputs.
|
|
157
|
+
|
|
158
|
+
```vue
|
|
159
|
+
<template>
|
|
160
|
+
<div class="space-y-4 max-w-md mx-auto">
|
|
161
|
+
<InputGroup>
|
|
162
|
+
<InputGroupAddon>
|
|
163
|
+
<MapMarker />
|
|
164
|
+
</InputGroupAddon>
|
|
165
|
+
<Select v-model="city1" :options="cities" optionLabel="label" optionValue="value" placeholder="Select a City" class="flex-1" />
|
|
166
|
+
</InputGroup>
|
|
167
|
+
|
|
168
|
+
<InputGroup>
|
|
169
|
+
<InputGroupAddon>www</InputGroupAddon>
|
|
170
|
+
<InputText v-model="website" placeholder="Website" class="border-r-0!" />
|
|
171
|
+
<Select v-model="city2" :options="cities" optionLabel="label" optionValue="value" placeholder="Select a City" class="flex-1" />
|
|
172
|
+
</InputGroup>
|
|
173
|
+
</div>
|
|
174
|
+
</template>
|
|
175
|
+
|
|
176
|
+
<script setup>
|
|
177
|
+
import { ref } from 'vue';
|
|
178
|
+
import MapMarker from '@primeicons/vue/map-marker';
|
|
179
|
+
|
|
180
|
+
const city1 = ref(null);
|
|
181
|
+
const city2 = ref(null);
|
|
182
|
+
const website = ref(null);
|
|
183
|
+
const cities = ref([
|
|
184
|
+
{ label: 'New York', value: 'ny' },
|
|
185
|
+
{ label: 'Rome', value: 'rm' },
|
|
186
|
+
{ label: 'London', value: 'ldn' },
|
|
187
|
+
{ label: 'Istanbul', value: 'ist' },
|
|
188
|
+
{ label: 'Paris', value: 'prs' }
|
|
189
|
+
]);
|
|
190
|
+
<\/script>
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
## File Upload
|
|
194
|
+
|
|
195
|
+
FileUpload can be used within an InputGroup.
|
|
196
|
+
|
|
197
|
+
```vue
|
|
198
|
+
<template>
|
|
199
|
+
<div class="flex flex-col items-center justify-center gap-4 max-w-93 mx-auto">
|
|
200
|
+
<div class="flex flex-wrap items-center justify-center gap-4 w-full">
|
|
201
|
+
<InputGroup class="w-fit!">
|
|
202
|
+
<InputGroupAddon>
|
|
203
|
+
<FileUpload mode="basic" auto accept="image/*" :maxFileSize="1000000" :chooseLabel="label1" :chooseButtonProps="{ severity: 'secondary', variant: 'text' }" @select="onFileSelect($event, 'label1')">
|
|
204
|
+
<template #chooseicon>
|
|
205
|
+
<Upload />
|
|
206
|
+
</template>
|
|
207
|
+
</FileUpload>
|
|
208
|
+
</InputGroupAddon>
|
|
209
|
+
<InputGroupAddon>
|
|
210
|
+
<Button severity="secondary" variant="text" iconOnly>
|
|
211
|
+
<CloudUpload />
|
|
212
|
+
</Button>
|
|
213
|
+
</InputGroupAddon>
|
|
214
|
+
</InputGroup>
|
|
215
|
+
<InputGroup class="flex-1! max-w-fit!">
|
|
216
|
+
<InputGroupAddon>Upload</InputGroupAddon>
|
|
217
|
+
<InputGroupAddon>
|
|
218
|
+
<FileUpload mode="basic" auto accept="image/*" :maxFileSize="1000000" :chooseLabel="label2" :chooseButtonProps="{ severity: 'secondary', variant: 'text' }" @select="onFileSelect($event, 'label2')">
|
|
219
|
+
<template #chooseicon>
|
|
220
|
+
<Upload />
|
|
221
|
+
</template>
|
|
222
|
+
</FileUpload>
|
|
223
|
+
</InputGroupAddon>
|
|
224
|
+
</InputGroup>
|
|
225
|
+
</div>
|
|
226
|
+
|
|
227
|
+
<InputGroup>
|
|
228
|
+
<InputGroupAddon>
|
|
229
|
+
<TagIcon />
|
|
230
|
+
</InputGroupAddon>
|
|
231
|
+
<InputText placeholder="Label" />
|
|
232
|
+
<InputGroupAddon>
|
|
233
|
+
<FileUpload mode="basic" auto accept="image/*" :maxFileSize="1000000" :chooseLabel="label3" :chooseButtonProps="{ severity: 'secondary', variant: 'text' }" @select="onFileSelect($event, 'label3')">
|
|
234
|
+
<template #chooseicon>
|
|
235
|
+
<Upload />
|
|
236
|
+
</template>
|
|
237
|
+
</FileUpload>
|
|
238
|
+
</InputGroupAddon>
|
|
239
|
+
</InputGroup>
|
|
240
|
+
</div>
|
|
241
|
+
</template>
|
|
242
|
+
|
|
243
|
+
<script setup>
|
|
244
|
+
import { ref } from 'vue';
|
|
245
|
+
import CloudUpload from '@primeicons/vue/cloud-upload';
|
|
246
|
+
import TagIcon from '@primeicons/vue/tag';
|
|
247
|
+
import Upload from '@primeicons/vue/upload';
|
|
248
|
+
|
|
249
|
+
const label1 = ref('Choose file');
|
|
250
|
+
const label2 = ref('Choose file');
|
|
251
|
+
const label3 = ref('Browse');
|
|
252
|
+
|
|
253
|
+
const onFileSelect = (event, key) => {
|
|
254
|
+
const files = event.files || [];
|
|
255
|
+
|
|
256
|
+
if (files.length) {
|
|
257
|
+
const name = files.map((f) => f.name).join(', ');
|
|
258
|
+
|
|
259
|
+
if (key === 'label1') label1.value = name;
|
|
260
|
+
else if (key === 'label2') label2.value = name;
|
|
261
|
+
else if (key === 'label3') label3.value = name;
|
|
262
|
+
}
|
|
263
|
+
};
|
|
264
|
+
<\/script>
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
## Float Label
|
|
268
|
+
|
|
269
|
+
FloatLabel visually integrates a label with its form element. Visit FloatLabel documentation for more information.
|
|
270
|
+
|
|
271
|
+
```vue
|
|
272
|
+
<template>
|
|
273
|
+
<div class="space-y-4 max-w-xs mx-auto">
|
|
274
|
+
<InputGroup>
|
|
275
|
+
<InputGroupAddon>
|
|
276
|
+
<User />
|
|
277
|
+
</InputGroupAddon>
|
|
278
|
+
<FloatLabel>
|
|
279
|
+
<InputText id="over_label" v-model="value1" />
|
|
280
|
+
<label for="over_label">Over Label</label>
|
|
281
|
+
</FloatLabel>
|
|
282
|
+
</InputGroup>
|
|
283
|
+
|
|
284
|
+
<InputGroup>
|
|
285
|
+
<InputGroupAddon>$</InputGroupAddon>
|
|
286
|
+
<FloatLabel variant="in">
|
|
287
|
+
<InputText id="in_label" v-model="value2" />
|
|
288
|
+
<label for="in_label">In Label</label>
|
|
289
|
+
</FloatLabel>
|
|
290
|
+
<InputGroupAddon>.00</InputGroupAddon>
|
|
291
|
+
</InputGroup>
|
|
292
|
+
|
|
293
|
+
<InputGroup>
|
|
294
|
+
<InputGroupAddon>www</InputGroupAddon>
|
|
295
|
+
<FloatLabel variant="on">
|
|
296
|
+
<InputText id="on_label" v-model="value3" />
|
|
297
|
+
<label for="on_label">On Label</label>
|
|
298
|
+
</FloatLabel>
|
|
299
|
+
</InputGroup>
|
|
300
|
+
</div>
|
|
301
|
+
</template>
|
|
302
|
+
|
|
303
|
+
<script setup>
|
|
304
|
+
import { ref } from 'vue';
|
|
305
|
+
import User from '@primeicons/vue/user';
|
|
306
|
+
|
|
307
|
+
const value1 = ref(null);
|
|
308
|
+
const value2 = ref(null);
|
|
309
|
+
const value3 = ref(null);
|
|
310
|
+
<\/script>
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
## Ifta Label
|
|
314
|
+
|
|
315
|
+
IftaLabel is used to create infield top aligned labels. Visit IftaLabel documentation for more information.
|
|
316
|
+
|
|
317
|
+
```vue
|
|
318
|
+
<template>
|
|
319
|
+
<div class="max-w-xs mx-auto">
|
|
320
|
+
<InputGroup>
|
|
321
|
+
<InputGroupAddon>
|
|
322
|
+
<User />
|
|
323
|
+
</InputGroupAddon>
|
|
324
|
+
<IftaLabel>
|
|
325
|
+
<InputText id="name" v-model="value" />
|
|
326
|
+
<label for="name">Name</label>
|
|
327
|
+
</IftaLabel>
|
|
328
|
+
</InputGroup>
|
|
329
|
+
</div>
|
|
330
|
+
</template>
|
|
331
|
+
|
|
332
|
+
<script setup>
|
|
333
|
+
import { ref } from 'vue';
|
|
334
|
+
import User from '@primeicons/vue/user';
|
|
335
|
+
|
|
336
|
+
const value = ref('Amy');
|
|
337
|
+
<\/script>
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
## Accessibility
|
|
341
|
+
|
|
342
|
+
Screen Reader InputGroup and InputGroupAddon does not require any roles and attributes. Keyboard Support Component does not include any interactive elements.
|
|
343
|
+
|
|
344
|
+
## Input Group API
|
|
345
|
+
|
|
346
|
+
### Props
|
|
347
|
+
|
|
348
|
+
| Name |Type |Default |Description |
|
|
349
|
+
| --- | --- | --- | --- |
|
|
350
|
+
| dt | any | - | It generates scoped CSS variables using design tokens for the component. |
|
|
351
|
+
| pt | PassThrough<InputGroupPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
|
|
352
|
+
| ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
|
|
353
|
+
| unstyled | boolean | false | When enabled, it removes component related styles in the core. |
|
|
354
|
+
|
|
355
|
+
### Slots
|
|
356
|
+
|
|
357
|
+
| Name |Parameters |Description |
|
|
358
|
+
| --- | --- | --- |
|
|
359
|
+
| [key: string] | Function | |
|
|
360
|
+
|
|
361
|
+
### Pass Through Options
|
|
362
|
+
|
|
363
|
+
| Name |Type |Description |
|
|
364
|
+
| --- | --- | --- |
|
|
365
|
+
| root | InputGroupPassThroughOptionType | Used to pass attributes to the root's DOM element. |
|
|
366
|
+
| hooks | any | Used to manage all lifecycle hooks. |
|
|
367
|
+
|
|
368
|
+
### Theming
|
|
369
|
+
|
|
370
|
+
### CSS Classes
|
|
371
|
+
|
|
372
|
+
| Class |Description |
|
|
373
|
+
| --- | --- |
|
|
374
|
+
| p-inputgroup | Class name of the root element |
|
|
375
|
+
|
|
376
|
+
### Design Tokens
|
|
377
|
+
|
|
378
|
+
| Token |CSS Variable |Description |
|
|
379
|
+
| --- | --- | --- |
|
|
380
|
+
| inputgroup.addon.background | --p-inputgroup-addon-background | Background of addon |
|
|
381
|
+
| inputgroup.addon.border.color | --p-inputgroup-addon-border-color | Border color of addon |
|
|
382
|
+
| inputgroup.addon.color | --p-inputgroup-addon-color | Color of addon |
|
|
383
|
+
| inputgroup.addon.border.radius | --p-inputgroup-addon-border-radius | Border radius of addon |
|
|
384
|
+
| inputgroup.addon.padding | --p-inputgroup-addon-padding | Padding of addon |
|
|
385
|
+
| inputgroup.addon.min.width | --p-inputgroup-addon-min-width | Min width of addon |
|
|
386
|
+
| inputgroup.addon.font.weight | --p-inputgroup-addon-font-weight | Font weight of addon |
|
|
387
|
+
| inputgroup.addon.font.size | --p-inputgroup-addon-font-size | Font size of addon |
|
|
388
|
+
|
|
389
|
+
## Input Group Addon API
|
|
390
|
+
|
|
391
|
+
### Props
|
|
392
|
+
|
|
393
|
+
| Name |Type |Default |Description |
|
|
394
|
+
| --- | --- | --- | --- |
|
|
395
|
+
| dt | any | - | It generates scoped CSS variables using design tokens for the component. |
|
|
396
|
+
| pt | PassThrough<InputGroupAddonPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
|
|
397
|
+
| ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
|
|
398
|
+
| unstyled | boolean | false | When enabled, it removes component related styles in the core. |
|
|
399
|
+
|
|
400
|
+
### Slots
|
|
401
|
+
|
|
402
|
+
| Name |Parameters |Description |
|
|
403
|
+
| --- | --- | --- |
|
|
404
|
+
| [key: string] | Function | |
|
|
405
|
+
|
|
406
|
+
### Pass Through Options
|
|
407
|
+
|
|
408
|
+
| Name |Type |Description |
|
|
409
|
+
| --- | --- | --- |
|
|
410
|
+
| root | InputGroupAddonPassThroughOptionType | Used to pass attributes to the root's DOM element. |
|
|
411
|
+
| hooks | any | Used to manage all lifecycle hooks. |
|
|
412
|
+
|
|
413
|
+
### Theming
|
|
414
|
+
|
|
415
|
+
### CSS Classes
|
|
416
|
+
|
|
417
|
+
| Class |Description |
|
|
418
|
+
| --- | --- |
|
|
419
|
+
| p-inputgroupaddon | Class name of the root element |
|