@bitrix24/b24ui-nuxt 2.1.2 → 2.1.3

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 (134) hide show
  1. package/cli/templates.mjs +2 -2
  2. package/dist/meta.d.mts +1301 -178
  3. package/dist/meta.mjs +1301 -178
  4. package/dist/module.json +1 -1
  5. package/dist/module.mjs +1 -1
  6. package/dist/runtime/components/Accordion.vue +9 -4
  7. package/dist/runtime/components/Advice.vue +9 -5
  8. package/dist/runtime/components/Alert.vue +9 -7
  9. package/dist/runtime/components/Avatar.vue +4 -2
  10. package/dist/runtime/components/AvatarGroup.vue +3 -3
  11. package/dist/runtime/components/Badge.vue +6 -1
  12. package/dist/runtime/components/Banner.vue +9 -8
  13. package/dist/runtime/components/Breadcrumb.vue +9 -4
  14. package/dist/runtime/components/Button.vue +12 -9
  15. package/dist/runtime/components/Calendar.vue +11 -5
  16. package/dist/runtime/components/Card.vue +4 -4
  17. package/dist/runtime/components/ChatMessage.vue +7 -5
  18. package/dist/runtime/components/ChatMessages.vue +4 -2
  19. package/dist/runtime/components/ChatPalette.vue +3 -3
  20. package/dist/runtime/components/ChatPrompt.vue +4 -3
  21. package/dist/runtime/components/ChatPromptSubmit.vue +1 -0
  22. package/dist/runtime/components/Checkbox.vue +9 -7
  23. package/dist/runtime/components/CheckboxGroup.vue +4 -2
  24. package/dist/runtime/components/Chip.vue +3 -0
  25. package/dist/runtime/components/Collapsible.vue +2 -2
  26. package/dist/runtime/components/ColorPicker.vue +7 -3
  27. package/dist/runtime/components/CommandPalette.vue +60 -21
  28. package/dist/runtime/components/ContextMenu.vue +1 -0
  29. package/dist/runtime/components/ContextMenuContent.vue +19 -6
  30. package/dist/runtime/components/Countdown.vue +8 -1
  31. package/dist/runtime/components/DashboardSearch.vue +1 -0
  32. package/dist/runtime/components/DashboardSearchButton.vue +2 -1
  33. package/dist/runtime/components/DescriptionList.vue +12 -4
  34. package/dist/runtime/components/DropdownMenu.vue +2 -1
  35. package/dist/runtime/components/DropdownMenuContent.vue +21 -7
  36. package/dist/runtime/components/Empty.vue +9 -8
  37. package/dist/runtime/components/Error.vue +5 -5
  38. package/dist/runtime/components/FileUpload.vue +15 -8
  39. package/dist/runtime/components/FormField.vue +11 -11
  40. package/dist/runtime/components/Input.vue +8 -3
  41. package/dist/runtime/components/InputDate.vue +9 -2
  42. package/dist/runtime/components/InputMenu.vue +35 -19
  43. package/dist/runtime/components/InputNumber.vue +5 -2
  44. package/dist/runtime/components/InputTags.vue +12 -3
  45. package/dist/runtime/components/InputTime.vue +8 -2
  46. package/dist/runtime/components/Kbd.vue +1 -1
  47. package/dist/runtime/components/Modal.vue +11 -8
  48. package/dist/runtime/components/Navbar.vue +1 -1
  49. package/dist/runtime/components/NavbarDivider.vue +1 -1
  50. package/dist/runtime/components/NavbarSection.vue +2 -1
  51. package/dist/runtime/components/NavbarSpacer.vue +1 -1
  52. package/dist/runtime/components/NavigationMenu.vue +43 -12
  53. package/dist/runtime/components/PageCard.vue +10 -9
  54. package/dist/runtime/components/PageLinks.vue +9 -7
  55. package/dist/runtime/components/Pagination.vue +8 -8
  56. package/dist/runtime/components/PinInput.vue +2 -0
  57. package/dist/runtime/components/Popover.vue +2 -2
  58. package/dist/runtime/components/Progress.vue +6 -6
  59. package/dist/runtime/components/RadioGroup.d.vue.ts +2 -2
  60. package/dist/runtime/components/RadioGroup.vue +10 -4
  61. package/dist/runtime/components/RadioGroup.vue.d.ts +2 -2
  62. package/dist/runtime/components/Range.vue +5 -4
  63. package/dist/runtime/components/Select.vue +25 -11
  64. package/dist/runtime/components/SelectMenu.vue +33 -14
  65. package/dist/runtime/components/Separator.vue +7 -7
  66. package/dist/runtime/components/Sidebar.vue +1 -1
  67. package/dist/runtime/components/SidebarBody.vue +1 -1
  68. package/dist/runtime/components/SidebarFooter.vue +1 -1
  69. package/dist/runtime/components/SidebarHeader.vue +1 -1
  70. package/dist/runtime/components/SidebarHeading.vue +1 -1
  71. package/dist/runtime/components/SidebarLayout.vue +18 -13
  72. package/dist/runtime/components/SidebarSection.vue +2 -1
  73. package/dist/runtime/components/SidebarSpacer.vue +1 -1
  74. package/dist/runtime/components/Skeleton.vue +1 -0
  75. package/dist/runtime/components/Slideover.vue +10 -7
  76. package/dist/runtime/components/Stepper.vue +12 -9
  77. package/dist/runtime/components/Switch.vue +10 -6
  78. package/dist/runtime/components/Table.vue +18 -13
  79. package/dist/runtime/components/TableWrapper.vue +1 -0
  80. package/dist/runtime/components/Tabs.d.vue.ts +3 -3
  81. package/dist/runtime/components/Tabs.vue +24 -15
  82. package/dist/runtime/components/Tabs.vue.d.ts +3 -3
  83. package/dist/runtime/components/Textarea.vue +8 -3
  84. package/dist/runtime/components/Timeline.vue +9 -6
  85. package/dist/runtime/components/Toast.vue +10 -6
  86. package/dist/runtime/components/Toaster.vue +2 -0
  87. package/dist/runtime/components/Tooltip.vue +4 -4
  88. package/dist/runtime/components/User.vue +13 -6
  89. package/dist/runtime/components/content/ContentSearch.vue +59 -68
  90. package/dist/runtime/components/content/ContentSearchButton.vue +2 -1
  91. package/dist/runtime/components/content/ContentSurround.vue +6 -4
  92. package/dist/runtime/components/content/ContentToc.vue +13 -10
  93. package/dist/runtime/components/prose/A.vue +1 -1
  94. package/dist/runtime/components/prose/Blockquote.vue +1 -1
  95. package/dist/runtime/components/prose/Callout.vue +4 -1
  96. package/dist/runtime/components/prose/Card.vue +5 -3
  97. package/dist/runtime/components/prose/Code.vue +1 -0
  98. package/dist/runtime/components/prose/CodeCollapse.vue +3 -2
  99. package/dist/runtime/components/prose/CodeGroup.vue +6 -6
  100. package/dist/runtime/components/prose/CodePreview.vue +3 -3
  101. package/dist/runtime/components/prose/Collapsible.vue +3 -2
  102. package/dist/runtime/components/prose/Em.vue +1 -1
  103. package/dist/runtime/components/prose/Field.vue +7 -7
  104. package/dist/runtime/components/prose/H1.vue +1 -0
  105. package/dist/runtime/components/prose/H2.vue +4 -2
  106. package/dist/runtime/components/prose/H3.vue +4 -2
  107. package/dist/runtime/components/prose/H4.vue +4 -2
  108. package/dist/runtime/components/prose/H5.vue +1 -0
  109. package/dist/runtime/components/prose/H6.vue +1 -0
  110. package/dist/runtime/components/prose/Hr.vue +1 -1
  111. package/dist/runtime/components/prose/Img.vue +4 -0
  112. package/dist/runtime/components/prose/Li.vue +1 -1
  113. package/dist/runtime/components/prose/Ol.vue +1 -1
  114. package/dist/runtime/components/prose/P.vue +1 -1
  115. package/dist/runtime/components/prose/Pre.vue +6 -5
  116. package/dist/runtime/components/prose/Strong.vue +1 -1
  117. package/dist/runtime/components/prose/Table.d.vue.ts +0 -3
  118. package/dist/runtime/components/prose/Table.vue +2 -1
  119. package/dist/runtime/components/prose/Table.vue.d.ts +0 -3
  120. package/dist/runtime/components/prose/Tbody.vue +1 -1
  121. package/dist/runtime/components/prose/Td.vue +1 -1
  122. package/dist/runtime/components/prose/Th.vue +1 -1
  123. package/dist/runtime/components/prose/Thead.vue +1 -1
  124. package/dist/runtime/components/prose/Tr.vue +1 -1
  125. package/dist/runtime/components/prose/Ul.vue +1 -1
  126. package/dist/runtime/composables/useContentSearch.d.ts +5 -0
  127. package/dist/runtime/composables/useContentSearch.js +30 -1
  128. package/dist/runtime/inertia/stubs.js +1 -1
  129. package/dist/runtime/types/index.d.ts +3 -0
  130. package/dist/runtime/types/index.js +3 -0
  131. package/dist/shared/{b24ui-nuxt.B9uYyQGR.mjs → b24ui-nuxt.mq1NUekN.mjs} +3 -3
  132. package/dist/unplugin.mjs +1 -1
  133. package/dist/vite.mjs +1 -1
  134. package/package.json +11 -11
@@ -92,7 +92,7 @@ function getAccordionDefaultValue(list, level = 0) {
92
92
  <template>
93
93
  <DefineLinkTemplate v-slot="{ item, active, index }">
94
94
  <slot :name="item.slot || 'item'" :item="item" :index="index" :active="active" :b24ui="b24ui">
95
- <span :class="b24ui.linkLabelWrapper({ class: props.b24ui?.linkLabelWrapper, active })">
95
+ <span data-slot="linkLabelWrapper" :class="b24ui.linkLabelWrapper({ class: props.b24ui?.linkLabelWrapper, active })">
96
96
  <slot
97
97
  :name="item.slot ? `${item.slot}-leading` : 'item-leading'"
98
98
  :item="item"
@@ -104,17 +104,20 @@ function getAccordionDefaultValue(list, level = 0) {
104
104
  <Component
105
105
  :is="item.icon"
106
106
  v-if="item.icon"
107
+ data-slot="linkLeadingIcon"
107
108
  :class="b24ui.linkLeadingIcon({ class: [props.b24ui?.linkLeadingIcon, item.b24ui?.linkLeadingIcon], active, disabled: !!item.disabled })"
108
109
  />
109
110
  <B24Avatar
110
111
  v-else-if="item.avatar"
111
112
  :size="item.b24ui?.linkLeadingAvatarSize || props.b24ui?.linkLeadingAvatarSize || b24ui.linkLeadingAvatarSize()"
112
113
  v-bind="item.avatar"
114
+ data-slot="linkLeadingAvatar"
113
115
  :class="b24ui.linkLeadingAvatar({ class: [props.b24ui?.linkLeadingAvatar, item.b24ui?.linkLeadingAvatar], active, disabled: !!item.disabled })"
114
116
  />
115
117
  </template>
116
118
  <div
117
119
  v-if="item.hint && item.type !== 'label' && orientation === 'horizontal'"
120
+ data-slot="linkLeadingHint"
118
121
  :class="b24ui.linkLeadingHint({ class: [props.b24ui?.linkLeadingHint, item.b24ui?.linkLeadingHint] })"
119
122
  >
120
123
  {{ item.hint }}
@@ -124,12 +127,14 @@ function getAccordionDefaultValue(list, level = 0) {
124
127
  color="air-primary-alert"
125
128
  :size="item.b24ui?.linkLeadingBadgeSize || props.b24ui?.linkLeadingBadgeSize || b24ui.linkLeadingBadgeSize()"
126
129
  v-bind="typeof item.badge === 'string' || typeof item.badge === 'number' ? { label: item.badge } : item.badge"
130
+ data-slot="linkLeadingBadge"
127
131
  :class="b24ui.linkLeadingBadge({ class: [props.b24ui?.linkLeadingBadge, item.b24ui?.linkLeadingBadge] })"
128
132
  />
129
133
  </slot>
130
134
 
131
135
  <span
132
136
  v-if="(!collapsed || orientation !== 'vertical') && (get(item, props.labelKey) || !!slots[item.slot ? `${item.slot}-label` : 'item-label'])"
137
+ data-slot="linkLabel"
133
138
  :class="b24ui.linkLabel({ class: [props.b24ui?.linkLabel, item.b24ui?.linkLabel], active })"
134
139
  >
135
140
  <slot :name="item.slot ? `${item.slot}-label` : 'item-label'" :item="item" :active="active" :index="index">
@@ -139,6 +144,7 @@ function getAccordionDefaultValue(list, level = 0) {
139
144
  <Component
140
145
  :is="typeof externalIcon !== 'boolean' ? externalIcon : icons.external"
141
146
  v-if="item.target === '_blank' && externalIcon !== false"
147
+ data-slot="linkLabelExternalIcon"
142
148
  :class="b24ui.linkLabelExternalIcon({ class: [props.b24ui?.linkLabelExternalIcon, item.b24ui?.linkLabelExternalIcon], active })"
143
149
  />
144
150
  </span>
@@ -148,6 +154,7 @@ function getAccordionDefaultValue(list, level = 0) {
148
154
  v-if="(!collapsed || orientation !== 'vertical') && /* (item.badge || item.badge === 0) || */
149
155
  (orientation === 'horizontal' && (item.children?.length || !!slots[item.slot ? `${item.slot}-content` : 'item-content']) || orientation === 'vertical' && item.children?.length || item.trailingIcon || !!slots[item.slot ? `${item.slot}-trailing` : 'item-trailing'])"
150
156
  as="span"
157
+ data-slot="linkTrailing"
151
158
  :class="b24ui.linkTrailing({ class: [props.b24ui?.linkTrailing, item.b24ui?.linkTrailing] })"
152
159
  @click.stop.prevent
153
160
  >
@@ -161,11 +168,13 @@ function getAccordionDefaultValue(list, level = 0) {
161
168
  <Component
162
169
  :is="item.trailingIcon || trailingIcon || icons.chevronDown"
163
170
  v-if="orientation === 'horizontal' && (item.children?.length || !!slots[item.slot ? `${item.slot}-content` : 'item-content']) || orientation === 'vertical' && item.children?.length"
171
+ data-slot="linkTrailingIcon"
164
172
  :class="b24ui.linkTrailingIcon({ class: [props.b24ui?.linkTrailingIcon, item.b24ui?.linkTrailingIcon], active })"
165
173
  />
166
174
  <Component
167
175
  :is="item.trailingIcon"
168
176
  v-else-if="item.trailingIcon"
177
+ data-slot="linkTrailingIcon"
169
178
  :class="b24ui.linkTrailingIcon({ class: [props.b24ui?.linkTrailingIcon, item.b24ui?.linkTrailingIcon], active })"
170
179
  />
171
180
  </slot>
@@ -181,6 +190,7 @@ function getAccordionDefaultValue(list, level = 0) {
181
190
  >
182
191
  <div
183
192
  v-if="orientation === 'vertical' && item.type === 'label' && !collapsed"
193
+ data-slot="label"
184
194
  :class="b24ui.label({ class: [props.b24ui?.label, item.b24ui?.label, item.class] })"
185
195
  >
186
196
  <ReuseLinkTemplate :item="item" :index="index" />
@@ -205,6 +215,7 @@ function getAccordionDefaultValue(list, level = 0) {
205
215
  >
206
216
  <B24LinkBase
207
217
  v-bind="slotProps"
218
+ data-slot="link"
208
219
  :class="b24ui.link({
209
220
  class: [props.b24ui?.link, item.b24ui?.link, item.class],
210
221
  active: active || item.active,
@@ -216,7 +227,7 @@ function getAccordionDefaultValue(list, level = 0) {
216
227
  </B24LinkBase>
217
228
 
218
229
  <template #content="{ close }">
219
- <div :class="b24ui.popoverWrapper({ class: props.b24ui?.popoverWrapper })">
230
+ <div data-slot="popoverWrapper" :class="b24ui.popoverWrapper({ class: props.b24ui?.popoverWrapper })">
220
231
  <slot
221
232
  :name="item.slot ? `${item.slot}-content` : 'item-content'"
222
233
  :item="item"
@@ -225,39 +236,44 @@ function getAccordionDefaultValue(list, level = 0) {
225
236
  :b24ui="b24ui"
226
237
  :close="close"
227
238
  >
228
- <ul :class="b24ui.childList({ class: [props.b24ui?.childList, item.b24ui?.childList] })">
229
- <li :class="b24ui.childLabel({ class: [props.b24ui?.childLabel, item.b24ui?.childLabel] })">
239
+ <ul data-slot="childList" :class="b24ui.childList({ class: [props.b24ui?.childList, item.b24ui?.childList] })">
240
+ <li data-slot="childLabel" :class="b24ui.childLabel({ class: [props.b24ui?.childLabel, item.b24ui?.childLabel] })">
230
241
  {{ get(item, props.labelKey) }}
231
242
  </li>
232
243
  <li
233
244
  v-for="(childItem, childIndex) in item.children"
234
245
  :key="childIndex"
246
+ data-slot="childItem"
235
247
  :class="b24ui.childItem({ class: [props.b24ui?.childItem, item.b24ui?.childItem] })"
236
248
  >
237
249
  <B24Link v-slot="{ active: childActive, ...childSlotProps }" v-bind="pickLinkProps(childItem)" custom>
238
250
  <NavigationMenuLink as-child :active="childActive" @select="childItem.onSelect">
239
251
  <B24LinkBase
240
252
  v-bind="childSlotProps"
253
+ data-slot="childLink"
241
254
  :class="b24ui.childLink({ class: [props.b24ui?.childLink, item.b24ui?.childLink, childItem.class], active: childActive })"
242
255
  >
243
256
  <Component
244
257
  :is="childItem.icon"
245
258
  v-if="childItem.icon"
259
+ data-slot="childLinkIcon"
246
260
  :class="b24ui.childLinkIcon({ class: [props.b24ui?.childLinkIcon, item.b24ui?.childLinkIcon], active: childActive })"
247
261
  />
248
262
  <div
249
263
  v-if="childItem.hint"
264
+ data-slot="childLinkHint"
250
265
  :class="b24ui.childLinkHint({ class: [props.b24ui?.childLinkHint, item.b24ui?.childLinkHint] })"
251
266
  >
252
267
  {{ childItem.hint }}
253
268
  </div>
254
269
 
255
- <span :class="b24ui.childLinkLabel({ class: [props.b24ui?.childLinkLabel, item.b24ui?.childLinkLabel], active: childActive })">
270
+ <span data-slot="childLinkLabel" :class="b24ui.childLinkLabel({ class: [props.b24ui?.childLinkLabel, item.b24ui?.childLinkLabel], active: childActive })">
256
271
  {{ get(childItem, props.labelKey) }}
257
272
  </span>
258
273
  <Component
259
274
  :is="typeof externalIcon === 'boolean' ? icons.external : externalIcon"
260
275
  v-if="childItem.target === '_blank' && externalIcon !== false"
276
+ data-slot="childLinkLabelExternalIcon"
261
277
  :class="b24ui.childLinkLabelExternalIcon({ class: [props.b24ui?.childLinkLabelExternalIcon, item.b24ui?.childLinkLabelExternalIcon], active: childActive })"
262
278
  />
263
279
  </B24LinkBase>
@@ -276,6 +292,7 @@ function getAccordionDefaultValue(list, level = 0) {
276
292
  >
277
293
  <B24LinkBase
278
294
  v-bind="slotProps"
295
+ data-slot="link"
279
296
  :class="b24ui.link({
280
297
  class: [props.b24ui?.link, item.b24ui?.link, item.class],
281
298
  active: active || item.active,
@@ -289,6 +306,7 @@ function getAccordionDefaultValue(list, level = 0) {
289
306
  <B24LinkBase
290
307
  v-else
291
308
  v-bind="slotProps"
309
+ data-slot="link"
292
310
  :class="b24ui.link({
293
311
  class: [props.b24ui?.link, item.b24ui?.link, item.class],
294
312
  active: active || item.active,
@@ -304,6 +322,7 @@ function getAccordionDefaultValue(list, level = 0) {
304
322
  v-if="orientation === 'horizontal' && (item.children?.length || !!slots[item.slot ? `${item.slot}-content` : 'item-content'])"
305
323
  v-bind="contentProps"
306
324
  :data-viewport="item.viewportRtl ? 'rtl' : 'ltr'"
325
+ data-slot="content"
307
326
  :class="b24ui.content({ class: [props.b24ui?.content, item.b24ui?.content] })"
308
327
  >
309
328
  <slot
@@ -313,10 +332,11 @@ function getAccordionDefaultValue(list, level = 0) {
313
332
  :index="index"
314
333
  :b24ui="b24ui"
315
334
  >
316
- <ul :class="b24ui.childList({ class: [props.b24ui?.childList, item.b24ui?.childList] })">
335
+ <ul data-slot="childList" :class="b24ui.childList({ class: [props.b24ui?.childList, item.b24ui?.childList] })">
317
336
  <li
318
337
  v-for="(childItem, childIndex) in item.children"
319
338
  :key="childIndex"
339
+ data-slot="childItem"
320
340
  :class="b24ui.childItem({ class: [props.b24ui?.childItem, item.b24ui?.childItem] })"
321
341
  >
322
342
  <B24Link
@@ -327,22 +347,25 @@ function getAccordionDefaultValue(list, level = 0) {
327
347
  <NavigationMenuLink as-child :active="childActive" @select="childItem.onSelect">
328
348
  <B24LinkBase
329
349
  v-bind="childSlotProps"
350
+ data-slot="childLink"
330
351
  :class="b24ui.childLink({ class: [props.b24ui?.childLink, childItem.childLink, childItem.class], active: childActive })"
331
352
  >
332
353
  <Component
333
354
  :is="childItem.icon"
334
355
  v-if="childItem.icon"
356
+ data-slot="childLinkIcon"
335
357
  :class="b24ui.childLinkIcon({ class: [props.b24ui?.childLinkIcon, item.b24ui?.childLinkIcon], active: childActive })"
336
358
  />
337
359
 
338
360
  <div
339
361
  v-if="childItem.hint"
362
+ data-slot="childLinkHint"
340
363
  :class="b24ui.childLinkHint({ class: [props.b24ui?.childLinkHint, item.b24ui?.childLinkHint] })"
341
364
  >
342
365
  {{ childItem.hint }}
343
366
  </div>
344
- <div :class="b24ui.childLinkWrapper({ class: [props.b24ui?.childLinkWrapper, item.b24ui?.childLinkWrapper] })">
345
- <p :class="b24ui.childLinkLabel({ class: [props.b24ui?.childLinkLabel, item.b24ui?.childLinkLabel], active: childActive })">
367
+ <div data-slot="childLinkWrapper" :class="b24ui.childLinkWrapper({ class: [props.b24ui?.childLinkWrapper, item.b24ui?.childLinkWrapper] })">
368
+ <p data-slot="childLinkLabel" :class="b24ui.childLinkLabel({ class: [props.b24ui?.childLinkLabel, item.b24ui?.childLinkLabel], active: childActive })">
346
369
  {{ get(childItem, props.labelKey) }}
347
370
  </p>
348
371
  <B24Badge
@@ -350,12 +373,14 @@ function getAccordionDefaultValue(list, level = 0) {
350
373
  color="air-primary-alert"
351
374
  :size="item.b24ui?.childLinkBadgeSize || props.b24ui?.childLinkBadgeSize || b24ui.childLinkBadgeSize()"
352
375
  v-bind="typeof childItem.badge === 'string' || typeof childItem.badge === 'number' ? { label: childItem.badge } : childItem.badge"
376
+ data-slot="childLinkBadge"
353
377
  :class="b24ui.childLinkBadge({ class: [props.b24ui?.childLinkBadge, item.b24ui?.childLinkBadge] })"
354
378
  />
355
379
  </div>
356
380
  <Component
357
381
  :is="typeof externalIcon === 'boolean' ? icons.external : externalIcon"
358
382
  v-if="childItem.target === '_blank' && externalIcon !== false"
383
+ data-slot="childLinkLabelExternalIcon"
359
384
  :class="b24ui.childLinkLabelExternalIcon({ class: [props.b24ui?.childLinkLabelExternalIcon, item.b24ui?.childLinkLabelExternalIcon], active: childActive })"
360
385
  />
361
386
  </B24LinkBase>
@@ -369,6 +394,7 @@ function getAccordionDefaultValue(list, level = 0) {
369
394
 
370
395
  <AccordionContent
371
396
  v-if="orientation === 'vertical' && item.children?.length && !collapsed"
397
+ data-slot="content"
372
398
  :class="b24ui.content({ class: [props.b24ui?.content, item.b24ui?.content] })"
373
399
  >
374
400
  <AccordionRoot
@@ -377,6 +403,7 @@ function getAccordionDefaultValue(list, level = 0) {
377
403
  defaultValue: getAccordionDefaultValue(item.children, level + 1)
378
404
  }"
379
405
  as="ul"
406
+ data-slot="childList"
380
407
  :class="b24ui.childList({ class: props.b24ui?.childList })"
381
408
  >
382
409
  <ReuseItemTemplate
@@ -385,6 +412,7 @@ function getAccordionDefaultValue(list, level = 0) {
385
412
  :item="childItem"
386
413
  :index="childIndex"
387
414
  :level="level + 1"
415
+ data-slot="childItem"
388
416
  :class="b24ui.childItem({ class: [props.b24ui?.childItem, childItem.b24ui?.childItem] })"
389
417
  />
390
418
  </AccordionRoot>
@@ -395,8 +423,9 @@ function getAccordionDefaultValue(list, level = 0) {
395
423
  <NavigationMenuRoot
396
424
  v-bind="{ ...rootProps, ...$attrs }"
397
425
  :data-collapsed="collapsed"
426
+ data-component="section"
427
+ data-slot="root"
398
428
  :class="b24ui.root({ class: [props.b24ui?.root, props.class] })"
399
- data-slot="section"
400
429
  >
401
430
  <slot name="list-leading" />
402
431
 
@@ -408,6 +437,7 @@ function getAccordionDefaultValue(list, level = 0) {
408
437
  } : {}"
409
438
  :is="orientation === 'vertical' && !collapsed ? AccordionRoot : NavigationMenuList"
410
439
  as="ul"
440
+ data-slot="list"
411
441
  :class="b24ui.list({ class: props.b24ui?.list })"
412
442
  >
413
443
  <ReuseItemTemplate
@@ -415,17 +445,18 @@ function getAccordionDefaultValue(list, level = 0) {
415
445
  :key="`list-${listIndex}-${index}`"
416
446
  :item="item"
417
447
  :index="index"
448
+ data-slot="item"
418
449
  :class="b24ui.item({ class: [props.b24ui?.item, item.b24ui?.item] })"
419
450
  />
420
451
  </component>
421
452
 
422
- <div v-if="orientation === 'vertical' && listIndex < lists.length - 1" :class="b24ui.separator({ class: props.b24ui?.separator })" />
453
+ <div v-if="orientation === 'vertical' && listIndex < lists.length - 1" data-slot="separator" :class="b24ui.separator({ class: props.b24ui?.separator })" />
423
454
  </template>
424
455
 
425
456
  <slot name="list-trailing" />
426
457
 
427
- <div v-if="orientation === 'horizontal'" :class="b24ui.viewportWrapper({ class: props.b24ui?.viewportWrapper })">
428
- <NavigationMenuViewport :class="b24ui.viewport({ class: props.b24ui?.viewport })" />
458
+ <div v-if="orientation === 'horizontal'" data-slot="viewportWrapper" :class="b24ui.viewportWrapper({ class: props.b24ui?.viewportWrapper })">
459
+ <NavigationMenuViewport data-slot="viewport" :class="b24ui.viewport({ class: props.b24ui?.viewport })" />
429
460
  </div>
430
461
  </NavigationMenuRoot>
431
462
  </template>
@@ -49,30 +49,31 @@ const ariaLabel = computed(() => {
49
49
  ref="cardRef"
50
50
  :as="as"
51
51
  :data-orientation="orientation"
52
+ data-slot="root"
52
53
  :class="b24ui.root({ class: [props.b24ui?.root, props.class] })"
53
54
  @click="onClick"
54
55
  >
55
- <div :class="b24ui.container({ class: props.b24ui?.container })">
56
- <div v-if="!!slots.header || (icon || !!slots.leading) || !!slots.body || (title || !!slots.title) || (description || !!slots.description) || !!slots.footer" :class="b24ui.wrapper({ class: props.b24ui?.wrapper })">
57
- <div v-if="!!slots.header" :class="b24ui.header({ class: props.b24ui?.header })">
56
+ <div data-slot="container" :class="b24ui.container({ class: props.b24ui?.container })">
57
+ <div v-if="!!slots.header || (icon || !!slots.leading) || !!slots.body || (title || !!slots.title) || (description || !!slots.description) || !!slots.footer" data-slot="wrapper" :class="b24ui.wrapper({ class: props.b24ui?.wrapper })">
58
+ <div v-if="!!slots.header" data-slot="header" :class="b24ui.header({ class: props.b24ui?.header })">
58
59
  <slot name="header" />
59
60
  </div>
60
61
 
61
- <div v-if="icon || !!slots.leading" :class="b24ui.leading({ class: props.b24ui?.leading })">
62
+ <div v-if="icon || !!slots.leading" data-slot="leading" :class="b24ui.leading({ class: props.b24ui?.leading })">
62
63
  <slot name="leading" :b24ui="b24ui">
63
- <Component :is="icon" v-if="icon" :class="b24ui.leadingIcon({ class: props.b24ui?.leadingIcon })" />
64
+ <Component :is="icon" v-if="icon" data-slot="leadingIcon" :class="b24ui.leadingIcon({ class: props.b24ui?.leadingIcon })" />
64
65
  </slot>
65
66
  </div>
66
67
 
67
- <div v-if="!!slots.body || (title || !!slots.title) || (description || !!slots.description)" :class="b24ui.body({ class: props.b24ui?.body })">
68
+ <div v-if="!!slots.body || (title || !!slots.title) || (description || !!slots.description)" data-slot="body" :class="b24ui.body({ class: props.b24ui?.body })">
68
69
  <slot name="body">
69
- <div v-if="title || !!slots.title" :class="b24ui.title({ class: props.b24ui?.title })">
70
+ <div v-if="title || !!slots.title" data-slot="title" :class="b24ui.title({ class: props.b24ui?.title })">
70
71
  <slot name="title">
71
72
  {{ title }}
72
73
  </slot>
73
74
  </div>
74
75
 
75
- <div v-if="description || !!slots.description" :class="b24ui.description({ class: props.b24ui?.description })">
76
+ <div v-if="description || !!slots.description" data-slot="description" :class="b24ui.description({ class: props.b24ui?.description })">
76
77
  <slot name="description">
77
78
  {{ description }}
78
79
  </slot>
@@ -80,7 +81,7 @@ const ariaLabel = computed(() => {
80
81
  </slot>
81
82
  </div>
82
83
 
83
- <div v-if="!!slots.footer" :class="b24ui.footer({ class: props.b24ui?.footer })">
84
+ <div v-if="!!slots.footer" data-slot="footer" :class="b24ui.footer({ class: props.b24ui?.footer })">
84
85
  <slot name="footer" />
85
86
  </div>
86
87
  </div>
@@ -24,28 +24,29 @@ const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.pageLin
24
24
  </script>
25
25
 
26
26
  <template>
27
- <Primitive :as="as" :class="b24ui.root({ class: [props.b24ui?.root, props.class] })">
28
- <p v-if="title || !!slots.title" :class="b24ui.title({ class: props.b24ui?.title })">
27
+ <Primitive :as="as" data-slot="root" :class="b24ui.root({ class: [props.b24ui?.root, props.class] })">
28
+ <p v-if="title || !!slots.title" data-slot="title" :class="b24ui.title({ class: props.b24ui?.title })">
29
29
  <slot name="title">
30
30
  {{ title }}
31
31
  </slot>
32
32
  </p>
33
33
 
34
- <ul :class="b24ui.list({ class: props.b24ui?.list })">
35
- <li v-for="(link, index) in links" :key="index" :class="b24ui.item({ class: [props.b24ui?.item, link.b24ui?.item] })">
34
+ <ul data-slot="list" :class="b24ui.list({ class: props.b24ui?.list })">
35
+ <li v-for="(link, index) in links" :key="index" data-slot="item" :class="b24ui.item({ class: [props.b24ui?.item, link.b24ui?.item] })">
36
36
  <B24Link v-slot="{ active, ...slotProps }" v-bind="pickLinkProps(link)" custom>
37
- <B24LinkBase v-bind="slotProps" :class="b24ui.link({ class: [props.b24ui?.link, link.b24ui?.link, link.class], active })">
37
+ <B24LinkBase v-bind="slotProps" data-slot="link" :class="b24ui.link({ class: [props.b24ui?.link, link.b24ui?.link, link.class], active })">
38
38
  <slot name="link" :link="link" :active="active" :b24ui="b24ui">
39
- <div :class="b24ui.linkWrapper({ class: [props.b24ui?.linkWrapper, link.b24ui?.linkWrapper], active })">
39
+ <div data-slot="linkWrapper" :class="b24ui.linkWrapper({ class: [props.b24ui?.linkWrapper, link.b24ui?.linkWrapper], active })">
40
40
  <slot name="link-leading" :link="link" :active="active" :b24ui="b24ui">
41
41
  <Component
42
42
  :is="link.icon"
43
43
  v-if="link.icon"
44
+ data-slot="linkLeadingIcon"
44
45
  :class="b24ui.linkLeadingIcon({ class: [props.b24ui?.linkLeadingIcon, link.b24ui?.linkLeadingIcon], active })"
45
46
  />
46
47
  </slot>
47
48
 
48
- <div v-if="link.label || !!slots['link-label']" :class="b24ui.linkLabel({ class: [props.b24ui?.linkLabel, link.b24ui?.linkLabel], active })">
49
+ <div v-if="link.label || !!slots['link-label']" data-slot="linkLabel" :class="b24ui.linkLabel({ class: [props.b24ui?.linkLabel, link.b24ui?.linkLabel], active })">
49
50
  <slot name="link-label" :link="link" :active="active">
50
51
  {{ link.label }}
51
52
  </slot>
@@ -54,6 +55,7 @@ const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.pageLin
54
55
  <Component
55
56
  :is="icons.external"
56
57
  v-if="link.target === '_blank'"
58
+ data-slot="linkLabelExternalIcon"
57
59
  :class="b24ui.linkLabelExternalIcon({ class: [props.b24ui?.linkLabelExternalIcon, link.b24ui?.linkLabelExternalIcon], active })"
58
60
  />
59
61
 
@@ -46,21 +46,21 @@ const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.paginat
46
46
  </script>
47
47
 
48
48
  <template>
49
- <PaginationRoot v-slot="{ page, pageCount }" v-bind="rootProps" :class="b24ui.root({ class: [props.b24ui?.root, props.class] })">
50
- <PaginationList v-slot="{ items }" :class="b24ui.list({ class: props.b24ui?.list })">
51
- <PaginationFirst v-if="showControls || !!slots.first" as-child :class="b24ui.first({ class: props.b24ui?.first })">
49
+ <PaginationRoot v-slot="{ page, pageCount }" v-bind="rootProps" data-slot="root" :class="b24ui.root({ class: [props.b24ui?.root, props.class] })">
50
+ <PaginationList v-slot="{ items }" data-slot="list" :class="b24ui.list({ class: props.b24ui?.list })">
51
+ <PaginationFirst v-if="showControls || !!slots.first" as-child data-slot="first" :class="b24ui.first({ class: props.b24ui?.first })">
52
52
  <slot name="first">
53
53
  <B24Button :color="color" :size="size" :icon="firstIcon" :to="to?.(1)" />
54
54
  </slot>
55
55
  </PaginationFirst>
56
- <PaginationPrev v-if="showControls || !!slots.prev" as-child :class="b24ui.prev({ class: props.b24ui?.prev })">
56
+ <PaginationPrev v-if="showControls || !!slots.prev" as-child data-slot="prev" :class="b24ui.prev({ class: props.b24ui?.prev })">
57
57
  <slot name="prev">
58
58
  <B24Button :color="color" :size="size" :icon="prevIcon" :to="page > 1 ? to?.(page - 1) : void 0" />
59
59
  </slot>
60
60
  </PaginationPrev>
61
61
 
62
62
  <template v-for="(item, index) in items" :key="index">
63
- <PaginationListItem v-if="item.type === 'page'" as-child :value="item.value" :class="b24ui.item({ class: props.b24ui?.item })">
63
+ <PaginationListItem v-if="item.type === 'page'" as-child :value="item.value" data-slot="item" :class="b24ui.item({ class: props.b24ui?.item })">
64
64
  <slot name="item" v-bind="{ item, index, page, pageCount }">
65
65
  <B24Button
66
66
  :color="page === item.value ? activeColor : color"
@@ -73,19 +73,19 @@ const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.paginat
73
73
  </slot>
74
74
  </PaginationListItem>
75
75
 
76
- <PaginationEllipsis v-else as-child :class="b24ui.ellipsis({ class: props.b24ui?.ellipsis })">
76
+ <PaginationEllipsis v-else as-child data-slot="ellipsis" :class="b24ui.ellipsis({ class: props.b24ui?.ellipsis })">
77
77
  <slot name="ellipsis" :b24ui="b24ui">
78
78
  <B24Button as="div" :color="color" :size="size" :icon="ellipsisIcon || icons.ellipsis" />
79
79
  </slot>
80
80
  </PaginationEllipsis>
81
81
  </template>
82
82
 
83
- <PaginationNext v-if="showControls || !!slots.next" as-child :class="b24ui.next({ class: props.b24ui?.next })">
83
+ <PaginationNext v-if="showControls || !!slots.next" as-child data-slot="next" :class="b24ui.next({ class: props.b24ui?.next })">
84
84
  <slot name="next">
85
85
  <B24Button :color="color" :size="size" :icon="nextIcon" :to="page < pageCount ? to?.(page + 1) : void 0" />
86
86
  </slot>
87
87
  </PaginationNext>
88
- <PaginationLast v-if="showControls || !!slots.last" as-child :class="b24ui.last({ class: props.b24ui?.last })">
88
+ <PaginationLast v-if="showControls || !!slots.last" as-child data-slot="last" :class="b24ui.last({ class: props.b24ui?.last })">
89
89
  <slot name="last">
90
90
  <B24Button :color="color" :size="size" :icon="lastIcon" :to="to?.(pageCount)" />
91
91
  </slot>
@@ -82,6 +82,7 @@ defineExpose({
82
82
  :placeholder="placeholder"
83
83
  :model-value="modelValue"
84
84
  :default-value="defaultValue"
85
+ data-slot="root"
85
86
  :class="b24ui.root({ class: [props.b24ui?.root, props.class] })"
86
87
  @update:model-value="emitFormInput()"
87
88
  @complete="onComplete"
@@ -91,6 +92,7 @@ defineExpose({
91
92
  :key="ids"
92
93
  :ref="(el) => inputsRef[index] = el"
93
94
  :index="index"
95
+ data-slot="base"
94
96
  :class="b24ui.base({ class: props.b24ui?.base })"
95
97
  :disabled="disabled"
96
98
  @blur="onBlur"
@@ -69,10 +69,10 @@ const Component = computed(() => props.mode === "hover" ? HoverCard : Popover);
69
69
  </Component.Anchor>
70
70
 
71
71
  <Component.Portal v-bind="portalProps">
72
- <Component.Content v-bind="contentProps" :class="b24ui.content({ class: [!slots.default && props.class, props.b24ui?.content] })" v-on="contentEvents">
72
+ <Component.Content v-bind="contentProps" data-slot="content" :class="b24ui.content({ class: [!slots.default && props.class, props.b24ui?.content] })" v-on="contentEvents">
73
73
  <slot name="content" v-bind="close ? { close } : {}" />
74
74
 
75
- <Component.Arrow v-if="!!arrow" v-bind="arrowProps" :class="b24ui.arrow({ class: props.b24ui?.arrow })" />
75
+ <Component.Arrow v-if="!!arrow" v-bind="arrowProps" data-slot="arrow" :class="b24ui.arrow({ class: props.b24ui?.arrow })" />
76
76
  </Component.Content>
77
77
  </Component.Portal>
78
78
  </Component.Root>
@@ -110,19 +110,19 @@ const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.progres
110
110
  </script>
111
111
 
112
112
  <template>
113
- <Primitive :as="as" :data-orientation="orientation" :class="b24ui.root({ class: [props.b24ui?.root, props.class] })">
114
- <div v-if="!isIndeterminate && (status || !!slots.status)" :class="b24ui.status({ class: props.b24ui?.status })" :style="statusStyle">
113
+ <Primitive :as="as" :data-orientation="orientation" data-slot="root" :class="b24ui.root({ class: [props.b24ui?.root, props.class] })">
114
+ <div v-if="!isIndeterminate && (status || !!slots.status)" data-slot="status" :class="b24ui.status({ class: props.b24ui?.status })" :style="statusStyle">
115
115
  <slot name="status" :percent="percent">
116
116
  {{ percent }}%
117
117
  </slot>
118
118
  </div>
119
119
 
120
- <ProgressRoot v-bind="rootProps" :max="realMax" :class="b24ui.base({ class: props.b24ui?.base })" style="transform: translateZ(0)">
121
- <ProgressIndicator :class="b24ui.indicator({ class: props.b24ui?.indicator })" :style="indicatorStyle" />
120
+ <ProgressRoot v-bind="rootProps" :max="realMax" data-slot="base" :class="b24ui.base({ class: props.b24ui?.base })" style="transform: translateZ(0)">
121
+ <ProgressIndicator data-slot="indicator" :class="b24ui.indicator({ class: props.b24ui?.indicator })" :style="indicatorStyle" />
122
122
  </ProgressRoot>
123
123
 
124
- <div v-if="hasSteps" :class="b24ui.steps({ class: props.b24ui?.steps })">
125
- <div v-for="(step, index) in max" :key="index" :class="b24ui.step({ class: props.b24ui?.step, step: stepVariant(index) })">
124
+ <div v-if="hasSteps" data-slot="steps" :class="b24ui.steps({ class: props.b24ui?.steps })">
125
+ <div v-for="(step, index) in max" :key="index" data-slot="step" :class="b24ui.step({ class: props.b24ui?.step, step: stepVariant(index) })">
126
126
  <slot :name="`step-${index}`" :step="step">
127
127
  {{ step }}
128
128
  </slot>
@@ -84,12 +84,12 @@ export interface RadioGroupSlots<T extends RadioGroupItem[] = RadioGroupItem[]>
84
84
  declare const __VLS_export: <T extends RadioGroupItem[], VK extends GetItemKeys<T> = "value">(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
85
85
  props: __VLS_PrettifyLocal<RadioGroupProps<T, VK> & {
86
86
  onChange?: ((event: Event) => any) | undefined;
87
- "onUpdate:modelValue"?: ((value: import("../types/utils").GetItemValue<T, VK, import("../types/utils").NestedItem<T>>) => any) | undefined;
87
+ "onUpdate:modelValue"?: ((value: import("../types").GetItemValue<T, VK, import("../types").NestedItem<T>>) => any) | undefined;
88
88
  }> & import("vue").PublicProps;
89
89
  expose: (exposed: {}) => void;
90
90
  attrs: any;
91
91
  slots: RadioGroupSlots<T>;
92
- emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types/utils").GetItemValue<T, VK, import("../types/utils").NestedItem<T>>) => void);
92
+ emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types").GetItemValue<T, VK, import("../types").NestedItem<T>>) => void);
93
93
  }>) => import("vue").VNode & {
94
94
  __ctx?: Awaited<typeof __VLS_setup>;
95
95
  };
@@ -95,11 +95,12 @@ function onUpdate(value) {
95
95
  :orientation="orientation"
96
96
  :name="name"
97
97
  :disabled="disabled"
98
+ data-slot="root"
98
99
  :class="b24ui.root({ class: [props.b24ui?.root, props.class] })"
99
100
  @update:model-value="onUpdate"
100
101
  >
101
- <fieldset :class="b24ui.fieldset({ class: props.b24ui?.fieldset })" v-bind="ariaAttrs">
102
- <legend v-if="legend || !!slots.legend" :class="b24ui.legend({ class: props.b24ui?.legend })">
102
+ <fieldset data-slot="fieldset" :class="b24ui.fieldset({ class: props.b24ui?.fieldset })" v-bind="ariaAttrs">
103
+ <legend v-if="legend || !!slots.legend" data-slot="legend" :class="b24ui.legend({ class: props.b24ui?.legend })">
103
104
  <slot name="legend">
104
105
  {{ legend }}
105
106
  </slot>
@@ -109,27 +110,31 @@ function onUpdate(value) {
109
110
  :is="!variant || variant === 'list' ? 'div' : Label"
110
111
  v-for="item in normalizedItems"
111
112
  :key="item.value"
113
+ data-slot="item"
112
114
  :class="b24ui.item({ class: [props.b24ui?.item, item.b24ui?.item, item.class] })"
113
115
  >
114
- <div :class="b24ui.container({ class: [props.b24ui?.container, item.b24ui?.container] })">
116
+ <div data-slot="container" :class="b24ui.container({ class: [props.b24ui?.container, item.b24ui?.container] })">
115
117
  <RRadioGroupItem
116
118
  :id="item.id"
117
119
  :value="item.value"
118
120
  :disabled="item.disabled"
121
+ data-slot="base"
119
122
  :class="b24ui.base({ class: [props.b24ui?.base, item.b24ui?.base], disabled: item.disabled })"
120
123
  >
121
- <RadioGroupIndicator :class="b24ui.indicator({ class: [props.b24ui?.indicator, item.b24ui?.indicator] })" />
124
+ <RadioGroupIndicator data-slot="indicator" :class="b24ui.indicator({ class: [props.b24ui?.indicator, item.b24ui?.indicator] })" />
122
125
  </RRadioGroupItem>
123
126
  </div>
124
127
 
125
128
  <div
126
129
  v-if="item.label || !!slots.label || (item.description || !!slots.description)"
130
+ data-slot="wrapper"
127
131
  :class="b24ui.wrapper({ class: [props.b24ui?.wrapper, item.b24ui?.wrapper] })"
128
132
  >
129
133
  <component
130
134
  :is="!variant || variant === 'list' ? Label : 'p'"
131
135
  v-if="item.label || !!slots.label"
132
136
  :for="item.id"
137
+ data-slot="label"
133
138
  :class="b24ui.label({ class: [props.b24ui?.label, item.b24ui?.label] })"
134
139
  >
135
140
  <slot name="label" :item="item" :model-value="modelValue">
@@ -138,6 +143,7 @@ function onUpdate(value) {
138
143
  </component>
139
144
  <p
140
145
  v-if="item.description || !!slots.description"
146
+ data-slot="description"
141
147
  :class="b24ui.description({ class: [props.b24ui?.description, item.b24ui?.description] })"
142
148
  >
143
149
  <slot name="description" :item="item" :model-value="modelValue">
@@ -84,12 +84,12 @@ export interface RadioGroupSlots<T extends RadioGroupItem[] = RadioGroupItem[]>
84
84
  declare const __VLS_export: <T extends RadioGroupItem[], VK extends GetItemKeys<T> = "value">(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
85
85
  props: __VLS_PrettifyLocal<RadioGroupProps<T, VK> & {
86
86
  onChange?: ((event: Event) => any) | undefined;
87
- "onUpdate:modelValue"?: ((value: import("../types/utils").GetItemValue<T, VK, import("../types/utils").NestedItem<T>>) => any) | undefined;
87
+ "onUpdate:modelValue"?: ((value: import("../types").GetItemValue<T, VK, import("../types").NestedItem<T>>) => any) | undefined;
88
88
  }> & import("vue").PublicProps;
89
89
  expose: (exposed: {}) => void;
90
90
  attrs: any;
91
91
  slots: RadioGroupSlots<T>;
92
- emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types/utils").GetItemValue<T, VK, import("../types/utils").NestedItem<T>>) => void);
92
+ emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types").GetItemValue<T, VK, import("../types").NestedItem<T>>) => void);
93
93
  }>) => import("vue").VNode & {
94
94
  __ctx?: Awaited<typeof __VLS_setup>;
95
95
  };
@@ -70,13 +70,14 @@ function onChange(value) {
70
70
  v-model="rangeValue"
71
71
  :name="name"
72
72
  :disabled="disabled"
73
+ data-slot="root"
73
74
  :class="b24ui.root({ class: [props.b24ui?.root, props.class] })"
74
75
  :default-value="defaultRangeValue"
75
76
  @update:model-value="emitFormInput()"
76
77
  @value-commit="onChange"
77
78
  >
78
- <SliderTrack :class="b24ui.track({ class: props.b24ui?.track })">
79
- <SliderRange :class="b24ui.range({ class: props.b24ui?.range })" />
79
+ <SliderTrack data-slot="track" :class="b24ui.track({ class: props.b24ui?.track })">
80
+ <SliderRange data-slot="range" :class="b24ui.range({ class: props.b24ui?.range })" />
80
81
  </SliderTrack>
81
82
 
82
83
  <template v-for="thumb in thumbs" :key="thumb">
@@ -86,9 +87,9 @@ function onChange(value) {
86
87
  disable-closing-trigger
87
88
  v-bind="typeof tooltip === 'object' ? tooltip : {}"
88
89
  >
89
- <SliderThumb :class="b24ui.thumb({ class: props.b24ui?.thumb })" />
90
+ <SliderThumb data-slot="thumb" :class="b24ui.thumb({ class: props.b24ui?.thumb })" />
90
91
  </B24Tooltip>
91
- <SliderThumb v-else :class="b24ui.thumb({ class: props.b24ui?.thumb })" />
92
+ <SliderThumb v-else data-slot="thumb" :class="b24ui.thumb({ class: props.b24ui?.thumb })" />
92
93
  </template>
93
94
  </SliderRoot>
94
95
  </template>