@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,506 @@
1
+ # Carousel
2
+
3
+ Carousel is a content slider featuring various customization options.
4
+
5
+ ## Basic
6
+
7
+ Composition-based carousel using native scroll-snap with sub-components for root, content, items, navigation, and indicators.
8
+
9
+ ```vue
10
+ <template>
11
+ <div class="mt-8 mb-16">
12
+ <Carousel class="max-w-xl mx-auto" align="center">
13
+ <CarouselContent class="h-[240px]">
14
+ <CarouselItem v-for="i in 5" :key="i">
15
+ <div class="h-full text-5xl font-semibold bg-surface-50 dark:bg-surface-950 text-surface-950 dark:text-surface-0 flex flex-col items-center justify-center gap-6 rounded-xl border border-surface">
16
+ <span>{{ i }}</span>
17
+ </div>
18
+ </CarouselItem>
19
+ </CarouselContent>
20
+ <div class="flex mt-4 gap-4">
21
+ <CarouselIndicators />
22
+ <div class="flex items-center justify-end gap-2 flex-1">
23
+ <CarouselPrev class="w-9 h-9 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
24
+ <ChevronLeft class="text-lg" />
25
+ </CarouselPrev>
26
+ <CarouselNext class="w-9 h-9 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
27
+ <ChevronRight class="text-lg" />
28
+ </CarouselNext>
29
+ </div>
30
+ </div>
31
+ </Carousel>
32
+ </div>
33
+ </template>
34
+
35
+ <script setup>
36
+ import ChevronLeft from '@primeicons/vue/chevron-left';
37
+ import ChevronRight from '@primeicons/vue/chevron-right';
38
+ <\/script>
39
+ ```
40
+
41
+ ## Alignment
42
+
43
+ Use align to control snap alignment and slidesPerPage to show partial slides.
44
+
45
+ ```vue
46
+ <template>
47
+ <div class="mt-8 mb-16">
48
+ <Carousel class="max-w-xl mx-auto" align="start" :slidesPerPage="1.5">
49
+ <CarouselContent class="h-[240px]">
50
+ <CarouselItem v-for="i in 5" :key="i">
51
+ <div class="h-full text-5xl font-semibold bg-surface-50 dark:bg-surface-950 text-surface-950 dark:text-surface-0 flex flex-col items-center justify-center gap-6 rounded-xl border border-surface">
52
+ <span>{{ i }}</span>
53
+ </div>
54
+ </CarouselItem>
55
+ </CarouselContent>
56
+ <div class="flex mt-4 gap-4">
57
+ <CarouselIndicators />
58
+ <div class="flex items-center justify-end gap-2 flex-1">
59
+ <CarouselPrev class="w-9 h-9 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
60
+ <ChevronLeft class="text-lg" />
61
+ </CarouselPrev>
62
+ <CarouselNext class="w-9 h-9 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
63
+ <ChevronRight class="text-lg" />
64
+ </CarouselNext>
65
+ </div>
66
+ </div>
67
+ </Carousel>
68
+ </div>
69
+ </template>
70
+
71
+ <script setup>
72
+ import ChevronLeft from '@primeicons/vue/chevron-left';
73
+ import ChevronRight from '@primeicons/vue/chevron-right';
74
+ <\/script>
75
+ ```
76
+
77
+ ## Orientation
78
+
79
+ Set orientation to vertical for a vertical carousel layout.
80
+
81
+ ```vue
82
+ <template>
83
+ <div class="mt-8 mb-16">
84
+ <Carousel class="max-w-sm mx-auto flex flex-col gap-8 items-center" orientation="vertical" :slidesPerPage="1.3">
85
+ <CarouselPrev class="w-10 h-10 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
86
+ <ChevronUp class="text-lg" />
87
+ </CarouselPrev>
88
+ <CarouselContent class="h-[240px] w-full">
89
+ <CarouselItem v-for="i in 5" :key="i">
90
+ <div class="h-full text-5xl font-semibold bg-surface-50 dark:bg-surface-950 text-surface-950 dark:text-surface-0 flex flex-col items-center justify-center gap-6 rounded-xl border border-surface">
91
+ <span>{{ i }}</span>
92
+ </div>
93
+ </CarouselItem>
94
+ </CarouselContent>
95
+ <CarouselNext class="w-10 h-10 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
96
+ <ChevronDown class="text-lg" />
97
+ </CarouselNext>
98
+ </Carousel>
99
+ </div>
100
+ </template>
101
+
102
+ <script setup>
103
+ import ChevronDown from '@primeicons/vue/chevron-down';
104
+ import ChevronUp from '@primeicons/vue/chevron-up';
105
+ <\/script>
106
+ ```
107
+
108
+ ## Loop
109
+
110
+ Enable continuous looping with the loop property. Use slidesPerPage to show partial slides.
111
+
112
+ ```vue
113
+ <template>
114
+ <div class="mt-8 mb-16">
115
+ <Carousel class="max-w-xl mx-auto" align="center" loop :slidesPerPage="1.75">
116
+ <CarouselContent class="h-[240px]">
117
+ <CarouselItem v-for="i in 5" :key="i">
118
+ <div class="h-full text-5xl font-semibold bg-surface-50 dark:bg-surface-950 text-surface-950 dark:text-surface-0 flex flex-col items-center justify-center gap-6 rounded-xl border border-surface">
119
+ <span>{{ i }}</span>
120
+ </div>
121
+ </CarouselItem>
122
+ </CarouselContent>
123
+ <div class="flex mt-4 gap-4">
124
+ <CarouselIndicators />
125
+ <div class="flex items-center justify-end gap-2 flex-1">
126
+ <CarouselPrev class="w-9 h-9 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
127
+ <ChevronLeft class="text-lg" />
128
+ </CarouselPrev>
129
+ <CarouselNext class="w-9 h-9 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
130
+ <ChevronRight class="text-lg" />
131
+ </CarouselNext>
132
+ </div>
133
+ </div>
134
+ </Carousel>
135
+ </div>
136
+ </template>
137
+
138
+ <script setup>
139
+ import ChevronLeft from '@primeicons/vue/chevron-left';
140
+ import ChevronRight from '@primeicons/vue/chevron-right';
141
+ <\/script>
142
+ ```
143
+
144
+ ## Variable Size
145
+
146
+ Enable autoSize to allow items with variable widths.
147
+
148
+ ```vue
149
+ <template>
150
+ <div class="mt-8 mb-16">
151
+ <Carousel class="max-w-xl mx-auto" align="center" autoSize>
152
+ <CarouselContent class="h-[140px]">
153
+ <CarouselItem v-for="(width, i) in items" :key="i" :style="{ width }">
154
+ <div class="h-full text-4xl font-semibold bg-surface-50 dark:bg-surface-950 text-surface-950 dark:text-surface-0 flex flex-col items-center justify-center gap-6 rounded-lg border border-surface">
155
+ <span>{{ i + 1 }}</span>
156
+ </div>
157
+ </CarouselItem>
158
+ </CarouselContent>
159
+ <div class="flex mt-4 gap-4">
160
+ <CarouselIndicators />
161
+ <div class="flex items-center justify-end gap-2 flex-1">
162
+ <CarouselPrev class="w-9 h-9 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
163
+ <ChevronLeft class="text-lg" />
164
+ </CarouselPrev>
165
+ <CarouselNext class="w-9 h-9 flex items-center justify-center rounded-full border border-surface bg-surface-0 dark:bg-surface-800 text-surface-500 dark:text-surface-400 hover:opacity-75 cursor-pointer transition-opacity">
166
+ <ChevronRight class="text-lg" />
167
+ </CarouselNext>
168
+ </div>
169
+ </div>
170
+ </Carousel>
171
+ </div>
172
+ </template>
173
+
174
+ <script setup>
175
+ import { ref } from 'vue';
176
+ import ChevronLeft from '@primeicons/vue/chevron-left';
177
+ import ChevronRight from '@primeicons/vue/chevron-right';
178
+
179
+ const items = ref(['120px', '80px', '200px', '160px', '220px', '180px', '280px', '100px']);
180
+ <\/script>
181
+ ```
182
+
183
+ ## Gallery
184
+
185
+ Two carousels synchronized via slide input to create a gallery with thumbnail navigation.
186
+
187
+ ```vue
188
+ <template>
189
+ <div class="mt-8 mb-16">
190
+ <div class="max-w-2xl mx-auto">
191
+ <Carousel :slide="selectedImage" align="center" @update:slide="onSlideChange">
192
+ <CarouselContent class="h-[396px]">
193
+ <CarouselItem v-for="(src, i) in images" :key="i" class="basis-full!">
194
+ <img :draggable="false" :src="src" :alt="\`Image \${i + 1}\`" class="h-full w-full object-cover select-none" />
195
+ </CarouselItem>
196
+ </CarouselContent>
197
+ </Carousel>
198
+ <Carousel class="mt-3" :spacing="8" align="center" :slide="selectedImage">
199
+ <CarouselContent class="h-[90px]">
200
+ <CarouselItem
201
+ v-for="(src, i) in images"
202
+ :key="i"
203
+ :class="['cursor-pointer basis-1/4! transition-opacity', selectedImage === i ? '' : 'opacity-60 hover:opacity-40']"
204
+ @click="selectedImage = i"
205
+ >
206
+ <img :draggable="false" :src="src" :alt="\`Image \${i + 1}\`" class="h-full w-full object-cover select-none" />
207
+ </CarouselItem>
208
+ </CarouselContent>
209
+ </Carousel>
210
+ </div>
211
+ </div>
212
+ </template>
213
+
214
+ <script setup>
215
+ import { ref } from 'vue';
216
+
217
+ const selectedImage = ref(0);
218
+ const images = ref([
219
+ 'https://images.unsplash.com/photo-1589656966895-2f33e7653819?q=80&w=1470&auto=format&fit=crop',
220
+ 'https://images.unsplash.com/photo-1518717758536-85ae29035b6d?q=80&w=1470&auto=format&fit=crop',
221
+ 'https://images.unsplash.com/photo-1704905832963-37d6f12654b7?q=80&w=1470&auto=format&fit=crop',
222
+ 'https://images.unsplash.com/photo-1470130623320-9583a8d06241?q=80&w=2070&auto=format&fit=crop',
223
+ 'https://images.unsplash.com/photo-1678841446310-d045487ef299?q=80&w=1470&auto=format&fit=crop',
224
+ 'https://images.unsplash.com/photo-1497752531616-c3afd9760a11?q=80&w=1470&auto=format&fit=crop',
225
+ 'https://images.unsplash.com/photo-1511885663737-eea53f6d6187?q=80&w=1374&auto=format&fit=crop',
226
+ 'https://images.unsplash.com/photo-1598439210625-5067c578f3f6?q=80&w=1472&auto=format&fit=crop',
227
+ 'https://images.unsplash.com/photo-1638255402906-e838358069ab?q=80&w=1631&auto=format&fit=crop'
228
+ ]);
229
+
230
+ const onSlideChange = (e) => {
231
+ selectedImage.value = Number(e ?? 0);
232
+ };
233
+ <\/script>
234
+ ```
235
+
236
+ ## Accessibility
237
+
238
+ Screen Reader Carousel uses region role and since any attribute is passed to the main container element, attributes such as aria-label and aria-roledescription can be used as well. The slides container has aria-live attribute set as "polite" if carousel is not in autoplay mode, otherwise "off" would be the value in autoplay. A slide has a group role with an aria-label that refers to the aria.slideNumber property of the locale API. Similarly aria.slide is used as the aria-roledescription of the item. Inactive slides are hidden from the readers with aria-hidden . Next and Previous navigators are button elements with aria-label attributes referring to the aria.nextPageLabel and aria.firstPageLabel properties of the locale API by default respectively, you may still use your own aria roles and attributes as any valid attribute is passed to the button elements implicitly by using nextButtonProps and prevButtonProps . Quick navigation elements are button elements with an aria-label attribute referring to the aria.pageLabel of the locale API. Current page is marked with aria-current . Next/Prev Keyboard Support Key Function tab Moves focus through interactive elements in the carousel. enter Activates navigation. space Activates navigation. Quick Navigation Keyboard Support Key Function tab Moves focus through the active slide link. enter Activates the focused slide link. space Activates the focused slide link. right arrow Moves focus to the next slide link. left arrow Moves focus to the previous slide link. home Moves focus to the first slide link. end Moves focus to the last slide link.
239
+
240
+ ## Carousel API
241
+
242
+ ### Props
243
+
244
+ | Name |Type |Default |Description |
245
+ | --- | --- | --- | --- |
246
+ | value | any | - | An array of objects to display. |
247
+ | page | null \| number | null | Page index. Pass with `v-model:page` to keep page state in the parent (controlled mode). Provide a static value (e.g. `:page="2"` ) to set the initial page in uncontrolled mode. Leave unset to start at page 0. |
248
+ | numVisible | number | 1 | Number of items per page. |
249
+ | numScroll | number | 1 | Number of items to scroll. |
250
+ | responsiveOptions | CarouselResponsiveOptions[] | - | An array of options for responsive design. |
251
+ | orientation | "horizontal" \| "vertical" | horizontal | Specifies the layout of the component, valid values are 'horizontal' and 'vertical'. |
252
+ | verticalViewPortHeight | string | 300px | Height of the viewport in vertical layout. |
253
+ | containerClass | any | - | Style class of the viewport container. |
254
+ | contentClass | any | - | Style class of main content. |
255
+ | indicatorsContentClass | any | - | Style class of the indicator items. |
256
+ | circular | boolean | false | Defines if scrolling would be infinite. |
257
+ | autoplayInterval | number | 0 | Time in milliseconds to scroll items automatically. |
258
+ | showNavigators | boolean | true | Whether to display navigation buttons in container. |
259
+ | showIndicators | boolean | true | Whether to display indicator container. |
260
+ | prevButtonProps | object | - | Used to pass attributes to the previous Button component. |
261
+ | nextButtonProps | object | - | Used to pass attributes to the next Button component. |
262
+ | dt | any | - | It generates scoped CSS variables using design tokens for the component. |
263
+ | pt | PassThrough<CarouselPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
264
+ | ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
265
+ | unstyled | boolean | false | When enabled, it removes component related styles in the core. |
266
+ | as | string \| Component | DIV | Use to change the HTML tag of root element. |
267
+ | align | "start" \| "center" \| "end" | 'start' | Scroll-snap alignment of each slide within the viewport. |
268
+ | loop | boolean | false | Whether the carousel wraps around at the ends. |
269
+ | snapType | "mandatory" \| "proximity" | 'mandatory' | Strictness of scroll-snap points. |
270
+ | spacing | number | 16 | Gap between slides in pixels. |
271
+ | autoSize | boolean | false | When true, items render at their intrinsic width instead of a fixed page fraction. |
272
+ | slidesPerPage | number | 1 | Number of slides visible per page. |
273
+ | slide | number | - | Controlled zero-based slide index; when set, the carousel scrolls to the slide with this index. |
274
+
275
+ ### Pass Through Options
276
+
277
+ | Name |Type |Description |
278
+ | --- | --- | --- |
279
+ | root | CarouselPassThroughOptionType | Used to pass attributes to the root's DOM element. |
280
+ | header | CarouselPassThroughOptionType | Used to pass attributes to the header's DOM element. |
281
+ | contentContainer | CarouselPassThroughOptionType | Used to pass attributes to the content container's DOM element. |
282
+ | content | CarouselPassThroughOptionType | Used to pass attributes to the content's DOM element. |
283
+ | pcPrevButton | any | Used to pass attributes to the previous button's DOM element. |
284
+ | viewport | CarouselPassThroughOptionType | Used to pass attributes to the viewport's DOM element. |
285
+ | itemList | CarouselPassThroughOptionType | Used to pass attributes to the items list's DOM element. |
286
+ | itemClone | CarouselPassThroughOptionType | Used to pass attributes to the item clone's DOM element. |
287
+ | item | CarouselPassThroughOptionType | Used to pass attributes to the item's DOM element. |
288
+ | pcNextButton | any | Used to pass attributes to the next button's DOM element. |
289
+ | indicatorList | CarouselPassThroughOptionType | Used to pass attributes to the indicator list's DOM element. |
290
+ | indicator | CarouselPassThroughOptionType | Used to pass attributes to the indicator's DOM element. |
291
+ | indicatorButton | CarouselPassThroughOptionType | Used to pass attributes to the indicator button's DOM element. |
292
+ | footer | CarouselPassThroughOptionType | Used to pass attributes to the footer's DOM element. |
293
+ | hooks | any | Used to manage all lifecycle hooks. |
294
+
295
+ ### Theming
296
+
297
+ ### CSS Classes
298
+
299
+ | Class |Description |
300
+ | --- | --- |
301
+ | p-carousel | Class name of the root element |
302
+ | p-carousel-header | Class name of the header element |
303
+ | p-carousel-content-container | Class name of the content container element |
304
+ | p-carousel-content | Class name of the content element |
305
+ | p-carousel-prev-button | Class name of the previous button element |
306
+ | p-carousel-viewport | Class name of the viewport element |
307
+ | p-carousel-item-list | Class name of the item list element |
308
+ | p-carousel-item-clone | Class name of the item clone element |
309
+ | p-carousel-item | Class name of the item element |
310
+ | p-carousel-next-button | Class name of the next button element |
311
+ | p-carousel-indicator-list | Class name of the indicator list element |
312
+ | p-carousel-indicator | Class name of the indicator element |
313
+ | p-carousel-indicator-button | Class name of the indicator button element |
314
+ | p-carousel-footer | Class name of the footer element |
315
+
316
+ ### Design Tokens
317
+
318
+ | Token |CSS Variable |Description |
319
+ | --- | --- | --- |
320
+ | carousel.transition.duration | --p-carousel-transition-duration | Transition duration of root |
321
+ | carousel.content.gap | --p-carousel-content-gap | Gap of content |
322
+ | carousel.indicator.list.padding | --p-carousel-indicator-list-padding | Padding of indicator list |
323
+ | carousel.indicator.list.gap | --p-carousel-indicator-list-gap | Gap of indicator list |
324
+ | carousel.indicator.width | --p-carousel-indicator-width | Width of indicator |
325
+ | carousel.indicator.height | --p-carousel-indicator-height | Height of indicator |
326
+ | carousel.indicator.border.radius | --p-carousel-indicator-border-radius | Border radius of indicator |
327
+ | carousel.indicator.focus.ring.width | --p-carousel-indicator-focus-ring-width | Focus ring width of indicator |
328
+ | carousel.indicator.focus.ring.style | --p-carousel-indicator-focus-ring-style | Focus ring style of indicator |
329
+ | carousel.indicator.focus.ring.color | --p-carousel-indicator-focus-ring-color | Focus ring color of indicator |
330
+ | carousel.indicator.focus.ring.offset | --p-carousel-indicator-focus-ring-offset | Focus ring offset of indicator |
331
+ | carousel.indicator.focus.ring.shadow | --p-carousel-indicator-focus-ring-shadow | Focus ring shadow of indicator |
332
+ | carousel.indicator.background | --p-carousel-indicator-background | Background of indicator |
333
+ | carousel.indicator.hover.background | --p-carousel-indicator-hover-background | Hover background of indicator |
334
+ | carousel.indicator.active.background | --p-carousel-indicator-active-background | Active background of indicator |
335
+
336
+ ## Carousel Content API
337
+
338
+ ### Props
339
+
340
+ | Name |Type |Default |Description |
341
+ | --- | --- | --- | --- |
342
+ | as | string \| Component | DIV | Use to change the HTML tag of root element. |
343
+ | asChild | boolean | false | When enabled, it changes the default rendered element for the one passed as a child element. |
344
+ | dt | any | - | It generates scoped CSS variables using design tokens for the component. |
345
+ | pt | PassThrough<CarouselContentPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
346
+ | ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
347
+ | unstyled | boolean | false | When enabled, it removes component related styles in the core. |
348
+
349
+ ### Pass Through Options
350
+
351
+ | Name |Type |Description |
352
+ | --- | --- | --- |
353
+ | root | CarouselContentPassThroughOptionType | Used to pass attributes to the root's DOM element. |
354
+ | hooks | any | Used to manage all lifecycle hooks. |
355
+
356
+ ### Theming
357
+
358
+ ### CSS Classes
359
+
360
+ | Class |Description |
361
+ | --- | --- |
362
+ | p-carouselcontent | Class name of the root element |
363
+
364
+ ## Carousel Item API
365
+
366
+ ### Props
367
+
368
+ | Name |Type |Default |Description |
369
+ | --- | --- | --- | --- |
370
+ | as | string \| Component | DIV | Use to change the HTML tag of root element. |
371
+ | asChild | boolean | false | When enabled, it changes the default rendered element for the one passed as a child element. |
372
+ | value | string \| number | - | Unique identifier for the item, exposed as `data-value` on the root element. |
373
+ | dt | any | - | It generates scoped CSS variables using design tokens for the component. |
374
+ | pt | PassThrough<CarouselItemPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
375
+ | ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
376
+ | unstyled | boolean | false | When enabled, it removes component related styles in the core. |
377
+
378
+ ### Pass Through Options
379
+
380
+ | Name |Type |Description |
381
+ | --- | --- | --- |
382
+ | root | CarouselItemPassThroughOptionType | Used to pass attributes to the root's DOM element. |
383
+ | hooks | any | Used to manage all lifecycle hooks. |
384
+
385
+ ### Theming
386
+
387
+ ### CSS Classes
388
+
389
+ | Class |Description |
390
+ | --- | --- |
391
+ | p-carousel-item | Class name of the root element |
392
+
393
+ ## Carousel Indicators API
394
+
395
+ ### Props
396
+
397
+ | Name |Type |Default |Description |
398
+ | --- | --- | --- | --- |
399
+ | as | string \| Component | DIV | Use to change the HTML tag of root element. |
400
+ | asChild | boolean | false | When enabled, it changes the default rendered element for the one passed as a child element. |
401
+ | dt | any | - | It generates scoped CSS variables using design tokens for the component. |
402
+ | pt | PassThrough<CarouselIndicatorsPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
403
+ | ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
404
+ | unstyled | boolean | false | When enabled, it removes component related styles in the core. |
405
+
406
+ ### Pass Through Options
407
+
408
+ | Name |Type |Description |
409
+ | --- | --- | --- |
410
+ | root | CarouselIndicatorsPassThroughOptionType | 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-carousel-indicator-list | Class name of the root element |
420
+
421
+ ## Carousel Indicator API
422
+
423
+ ### Props
424
+
425
+ | Name |Type |Default |Description |
426
+ | --- | --- | --- | --- |
427
+ | as | string \| Component | BUTTON | Use to change the HTML tag of root element. |
428
+ | asChild | boolean | false | When enabled, it changes the default rendered element for the one passed as a child element. |
429
+ | page | number | - | Zero-based page index this indicator represents. Clicking the indicator scrolls the carousel to this page. |
430
+ | dt | any | - | It generates scoped CSS variables using design tokens for the component. |
431
+ | pt | PassThrough<CarouselIndicatorPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
432
+ | ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
433
+ | unstyled | boolean | false | When enabled, it removes component related styles in the core. |
434
+
435
+ ### Pass Through Options
436
+
437
+ | Name |Type |Description |
438
+ | --- | --- | --- |
439
+ | root | CarouselIndicatorPassThroughOptionType | Used to pass attributes to the root's DOM element. |
440
+ | hooks | any | Used to manage all lifecycle hooks. |
441
+
442
+ ### Theming
443
+
444
+ ### CSS Classes
445
+
446
+ | Class |Description |
447
+ | --- | --- |
448
+ | p-carousel-indicator | Class name of the root element |
449
+
450
+ ## Carousel Next API
451
+
452
+ ### Props
453
+
454
+ | Name |Type |Default |Description |
455
+ | --- | --- | --- | --- |
456
+ | as | string \| Component | BUTTON | Use to change the HTML tag of root element. |
457
+ | asChild | boolean | false | When enabled, it changes the default rendered element for the one passed as a child element. |
458
+ | disabled | boolean | false | When present, it specifies that the element should be disabled. |
459
+ | dt | any | - | It generates scoped CSS variables using design tokens for the component. |
460
+ | pt | PassThrough<CarouselNextPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
461
+ | ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
462
+ | unstyled | boolean | false | When enabled, it removes component related styles in the core. |
463
+
464
+ ### Pass Through Options
465
+
466
+ | Name |Type |Description |
467
+ | --- | --- | --- |
468
+ | root | CarouselNextPassThroughOptionType | Used to pass attributes to the root's DOM element. |
469
+ | hooks | any | Used to manage all lifecycle hooks. |
470
+
471
+ ### Theming
472
+
473
+ ### CSS Classes
474
+
475
+ | Class |Description |
476
+ | --- | --- |
477
+ | p-carousel-next | Class name of the root element |
478
+
479
+ ## Carousel Prev API
480
+
481
+ ### Props
482
+
483
+ | Name |Type |Default |Description |
484
+ | --- | --- | --- | --- |
485
+ | as | string \| Component | BUTTON | Use to change the HTML tag of root element. |
486
+ | asChild | boolean | false | When enabled, it changes the default rendered element for the one passed as a child element. |
487
+ | disabled | boolean | false | When present, it specifies that the element should be disabled. |
488
+ | dt | any | - | It generates scoped CSS variables using design tokens for the component. |
489
+ | pt | PassThrough<CarouselPrevPassThroughOptions> | - | Used to pass attributes to DOM elements inside the component. |
490
+ | ptOptions | any | - | Used to configure passthrough(pt) options of the component. |
491
+ | unstyled | boolean | false | When enabled, it removes component related styles in the core. |
492
+
493
+ ### Pass Through Options
494
+
495
+ | Name |Type |Description |
496
+ | --- | --- | --- |
497
+ | root | CarouselPrevPassThroughOptionType | Used to pass attributes to the root's DOM element. |
498
+ | hooks | any | Used to manage all lifecycle hooks. |
499
+
500
+ ### Theming
501
+
502
+ ### CSS Classes
503
+
504
+ | Class |Description |
505
+ | --- | --- |
506
+ | p-carousel-prev | Class name of the root element |