@nuxt/ui 3.0.0-beta.2 → 3.0.0-beta.4

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 (112) hide show
  1. package/.nuxt/ui/button.ts +8 -0
  2. package/.nuxt/ui/pagination.ts +6 -1
  3. package/.nuxt/ui/table.ts +2 -1
  4. package/dist/module.cjs +2 -2
  5. package/dist/module.json +2 -2
  6. package/dist/module.mjs +2 -2
  7. package/dist/runtime/components/Accordion.vue +7 -0
  8. package/dist/runtime/components/Alert.vue +14 -0
  9. package/dist/runtime/components/App.vue +6 -6
  10. package/dist/runtime/components/Avatar.vue +8 -1
  11. package/dist/runtime/components/AvatarGroup.vue +3 -0
  12. package/dist/runtime/components/Badge.vue +9 -0
  13. package/dist/runtime/components/Breadcrumb.vue +4 -0
  14. package/dist/runtime/components/Button.vue +57 -18
  15. package/dist/runtime/components/ButtonGroup.vue +3 -0
  16. package/dist/runtime/components/Calendar.vue +10 -0
  17. package/dist/runtime/components/Card.vue +3 -0
  18. package/dist/runtime/components/Carousel.vue +6 -0
  19. package/dist/runtime/components/Checkbox.vue +8 -0
  20. package/dist/runtime/components/Chip.vue +10 -0
  21. package/dist/runtime/components/ColorPicker.vue +3 -0
  22. package/dist/runtime/components/CommandPalette.vue +10 -1
  23. package/dist/runtime/components/ContextMenu.vue +9 -0
  24. package/dist/runtime/components/ContextMenuContent.vue +9 -0
  25. package/dist/runtime/components/DropdownMenu.vue +9 -0
  26. package/dist/runtime/components/DropdownMenuContent.vue +9 -0
  27. package/dist/runtime/components/Form.vue +6 -6
  28. package/dist/runtime/components/FormField.vue +4 -1
  29. package/dist/runtime/components/Input.vue +16 -3
  30. package/dist/runtime/components/InputMenu.vue +18 -3
  31. package/dist/runtime/components/InputNumber.vue +2 -0
  32. package/dist/runtime/components/Kbd.vue +6 -0
  33. package/dist/runtime/components/Link.vue +8 -4
  34. package/dist/runtime/components/LinkBase.vue +4 -2
  35. package/dist/runtime/components/Modal.vue +1 -0
  36. package/dist/runtime/components/NavigationMenu.vue +17 -0
  37. package/dist/runtime/components/Pagination.vue +16 -11
  38. package/dist/runtime/components/PinInput.vue +13 -0
  39. package/dist/runtime/components/Progress.vue +10 -0
  40. package/dist/runtime/components/RadioGroup.vue +6 -0
  41. package/dist/runtime/components/Select.vue +14 -0
  42. package/dist/runtime/components/SelectMenu.vue +16 -1
  43. package/dist/runtime/components/Separator.vue +13 -1
  44. package/dist/runtime/components/Slideover.vue +5 -0
  45. package/dist/runtime/components/Slider.vue +6 -0
  46. package/dist/runtime/components/Stepper.vue +13 -0
  47. package/dist/runtime/components/Switch.vue +15 -2
  48. package/dist/runtime/components/Table.vue +15 -2
  49. package/dist/runtime/components/Tabs.vue +12 -0
  50. package/dist/runtime/components/Textarea.vue +16 -3
  51. package/dist/runtime/components/Toast.vue +11 -0
  52. package/dist/runtime/components/Toaster.vue +4 -0
  53. package/dist/runtime/components/Tree.vue +15 -0
  54. package/dist/runtime/composables/defineLocale.d.ts +4 -4
  55. package/dist/runtime/composables/useComponentIcons.d.ts +13 -3
  56. package/dist/runtime/composables/useLocale.d.ts +3 -3
  57. package/dist/runtime/composables/useLocale.js +3 -3
  58. package/dist/runtime/locale/ar.d.ts +2 -1
  59. package/dist/runtime/locale/az.d.ts +2 -1
  60. package/dist/runtime/locale/bn.d.ts +2 -1
  61. package/dist/runtime/locale/cs.d.ts +2 -1
  62. package/dist/runtime/locale/da.d.ts +2 -1
  63. package/dist/runtime/locale/de.d.ts +2 -1
  64. package/dist/runtime/locale/el.d.ts +2 -1
  65. package/dist/runtime/locale/en.d.ts +2 -1
  66. package/dist/runtime/locale/es.d.ts +2 -1
  67. package/dist/runtime/locale/et.d.ts +2 -1
  68. package/dist/runtime/locale/fa_ir.d.ts +2 -1
  69. package/dist/runtime/locale/fi.d.ts +2 -1
  70. package/dist/runtime/locale/fr.d.ts +2 -1
  71. package/dist/runtime/locale/he.d.ts +2 -1
  72. package/dist/runtime/locale/hi.d.ts +2 -1
  73. package/dist/runtime/locale/hu.d.ts +2 -1
  74. package/dist/runtime/locale/id.d.ts +2 -1
  75. package/dist/runtime/locale/index.d.ts +3 -2
  76. package/dist/runtime/locale/index.js +3 -2
  77. package/dist/runtime/locale/it.d.ts +2 -1
  78. package/dist/runtime/locale/ja.d.ts +2 -1
  79. package/dist/runtime/locale/km.d.ts +2 -1
  80. package/dist/runtime/locale/ko.d.ts +2 -1
  81. package/dist/runtime/locale/nb_no.d.ts +2 -1
  82. package/dist/runtime/locale/nl.d.ts +2 -1
  83. package/dist/runtime/locale/pl.d.ts +2 -1
  84. package/dist/runtime/locale/pt.d.ts +2 -1
  85. package/dist/runtime/locale/pt_br.d.ts +2 -1
  86. package/dist/runtime/locale/ru.d.ts +2 -1
  87. package/dist/runtime/locale/sk.d.ts +2 -1
  88. package/dist/runtime/locale/sv.d.ts +2 -1
  89. package/dist/runtime/locale/th.d.ts +2 -1
  90. package/dist/runtime/locale/tr.d.ts +2 -1
  91. package/dist/runtime/locale/uk.d.ts +2 -1
  92. package/dist/runtime/locale/vi.d.ts +2 -1
  93. package/dist/runtime/locale/zh_cn.d.ts +2 -1
  94. package/dist/runtime/locale/zh_tw.d.ts +2 -1
  95. package/dist/runtime/plugins/colors.js +3 -1
  96. package/dist/runtime/types/form.d.ts +1 -1
  97. package/dist/runtime/types/locale.d.ts +2 -2
  98. package/dist/runtime/utils/index.js +1 -1
  99. package/dist/runtime/utils/locale.d.ts +5 -5
  100. package/dist/runtime/utils/tv.d.ts +1 -1
  101. package/dist/runtime/vue/components/Link.vue +8 -4
  102. package/dist/runtime/vue/plugins/head.d.ts +1 -1
  103. package/dist/runtime/vue/plugins/head.js +4 -3
  104. package/dist/runtime/vue/stubs.d.ts +2 -0
  105. package/dist/runtime/vue/stubs.js +2 -0
  106. package/dist/shared/{ui.DfK2RX6G.cjs → ui.COBs1u5H.cjs} +23 -5
  107. package/dist/shared/{ui.DSPu6Y8j.mjs → ui.yjbGE7Dx.mjs} +23 -5
  108. package/dist/unplugin.cjs +1 -1
  109. package/dist/unplugin.mjs +1 -1
  110. package/dist/vite.cjs +1 -1
  111. package/dist/vite.mjs +1 -1
  112. package/package.json +25 -26
@@ -113,6 +113,14 @@ export default {
113
113
  },
114
114
  "loading": {
115
115
  "true": ""
116
+ },
117
+ "active": {
118
+ "true": {
119
+ "base": ""
120
+ },
121
+ "false": {
122
+ "base": ""
123
+ }
116
124
  }
117
125
  },
118
126
  "compoundVariants": [
@@ -3,6 +3,11 @@ export default {
3
3
  "root": "",
4
4
  "list": "flex items-center gap-1",
5
5
  "ellipsis": "pointer-events-none",
6
- "label": "min-w-5 text-center"
6
+ "label": "min-w-5 text-center",
7
+ "first": "",
8
+ "prev": "",
9
+ "item": "",
10
+ "next": "",
11
+ "last": ""
7
12
  }
8
13
  }
package/.nuxt/ui/table.ts CHANGED
@@ -25,7 +25,8 @@ export default {
25
25
  "tr": "data-[selected=true]:bg-(--ui-bg-elevated)/50",
26
26
  "th": "px-4 py-3.5 text-sm text-(--ui-text-highlighted) text-left rtl:text-right font-semibold [&:has([role=checkbox])]:pe-0",
27
27
  "td": "p-4 text-sm text-(--ui-text-muted) whitespace-nowrap [&:has([role=checkbox])]:pe-0",
28
- "empty": "py-6 text-center text-sm text-(--ui-text-muted)"
28
+ "empty": "py-6 text-center text-sm text-(--ui-text-muted)",
29
+ "loading": "py-6 text-center"
29
30
  },
30
31
  "variants": {
31
32
  "pinned": {
package/dist/module.cjs CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  const defu = require('defu');
4
4
  const kit = require('@nuxt/kit');
5
- const templates = require('./shared/ui.DfK2RX6G.cjs');
5
+ const templates = require('./shared/ui.COBs1u5H.cjs');
6
6
  require('../dist/runtime/utils/index.js');
7
7
  require('node:url');
8
8
  require('scule');
@@ -14,7 +14,7 @@ const module$1 = kit.defineNuxtModule({
14
14
  name: "ui",
15
15
  configKey: "ui",
16
16
  compatibility: {
17
- nuxt: ">=3.13.1"
17
+ nuxt: ">=3.16.0"
18
18
  },
19
19
  docs: "https://ui3.nuxt.dev/getting-started/installation/nuxt"
20
20
  },
package/dist/module.json CHANGED
@@ -2,10 +2,10 @@
2
2
  "name": "ui",
3
3
  "configKey": "ui",
4
4
  "compatibility": {
5
- "nuxt": ">=3.13.1"
5
+ "nuxt": ">=3.16.0"
6
6
  },
7
7
  "docs": "https://ui3.nuxt.dev/getting-started/installation/nuxt",
8
- "version": "3.0.0-beta.2",
8
+ "version": "3.0.0-beta.4",
9
9
  "builder": {
10
10
  "@nuxt/module-builder": "0.8.4",
11
11
  "unbuild": "2.0.0"
package/dist/module.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { defu } from 'defu';
2
2
  import { defineNuxtModule, createResolver, addVitePlugin, addPlugin, addComponentsDir, addImportsDir, hasNuxtModule, installModule } from '@nuxt/kit';
3
- import { d as defaultOptions, r as resolveColors, a as getDefaultUiConfig, b as addTemplates } from './shared/ui.DSPu6Y8j.mjs';
3
+ import { d as defaultOptions, r as resolveColors, a as getDefaultUiConfig, b as addTemplates } from './shared/ui.yjbGE7Dx.mjs';
4
4
  import '../dist/runtime/utils/index.js';
5
5
  import 'node:url';
6
6
  import 'scule';
@@ -11,7 +11,7 @@ const module = defineNuxtModule({
11
11
  name: "ui",
12
12
  configKey: "ui",
13
13
  compatibility: {
14
- nuxt: ">=3.13.1"
14
+ nuxt: ">=3.16.0"
15
15
  },
16
16
  docs: "https://ui3.nuxt.dev/getting-started/installation/nuxt"
17
17
  },
@@ -12,7 +12,13 @@ const accordion = tv({ extend: tv(theme), ...(appConfigAccordion.ui?.accordion |
12
12
 
13
13
  export interface AccordionItem {
14
14
  label?: string
15
+ /**
16
+ * @IconifyIcon
17
+ */
15
18
  icon?: string
19
+ /**
20
+ * @IconifyIcon
21
+ */
16
22
  trailingIcon?: string
17
23
  slot?: string
18
24
  content?: string
@@ -31,6 +37,7 @@ export interface AccordionProps<T> extends Pick<AccordionRootProps, 'collapsible
31
37
  /**
32
38
  * The icon displayed on the right side of the trigger.
33
39
  * @defaultValue appConfig.ui.icons.chevronDown
40
+ * @IconifyIcon
34
41
  */
35
42
  trailingIcon?: string
36
43
  /**
@@ -20,10 +20,23 @@ export interface AlertProps {
20
20
  as?: any
21
21
  title?: string
22
22
  description?: string
23
+ /**
24
+ * @IconifyIcon
25
+ */
23
26
  icon?: string
24
27
  avatar?: AvatarProps
28
+ /**
29
+ * @defaultValue 'primary'
30
+ */
25
31
  color?: AlertVariants['color']
32
+ /**
33
+ * @defaultValue 'solid'
34
+ */
26
35
  variant?: AlertVariants['variant']
36
+ /**
37
+ * The orientation between the content and the actions.
38
+ * @defaultValue 'vertical'
39
+ */
27
40
  orientation?: AlertVariants['orientation']
28
41
  /**
29
42
  * Display a list of actions:
@@ -42,6 +55,7 @@ export interface AlertProps {
42
55
  /**
43
56
  * The icon displayed in the close button.
44
57
  * @defaultValue appConfig.ui.icons.close
58
+ * @IconifyIcon
45
59
  */
46
60
  closeIcon?: string
47
61
  class?: any
@@ -1,12 +1,11 @@
1
1
  <script lang="ts">
2
2
  import type { ConfigProviderProps, TooltipProviderProps } from 'reka-ui'
3
- import { localeContextInjectionKey } from '../composables/useLocale'
4
- import type { ToasterProps, Locale } from '../types'
3
+ import type { ToasterProps, Locale, Messages } from '../types'
5
4
 
6
- export interface AppProps extends Omit<ConfigProviderProps, 'useId' | 'dir' | 'locale'> {
5
+ export interface AppProps<T extends Messages = Messages> extends Omit<ConfigProviderProps, 'useId' | 'dir' | 'locale'> {
7
6
  tooltip?: TooltipProviderProps
8
7
  toaster?: ToasterProps | null
9
- locale?: Locale
8
+ locale?: Locale<T>
10
9
  }
11
10
 
12
11
  export interface AppSlots {
@@ -18,14 +17,15 @@ export default {
18
17
  }
19
18
  </script>
20
19
 
21
- <script setup lang="ts">
20
+ <script setup lang="ts" generic="T extends Messages = Messages">
22
21
  import { toRef, useId, provide } from 'vue'
23
22
  import { ConfigProvider, TooltipProvider, useForwardProps } from 'reka-ui'
24
23
  import { reactivePick } from '@vueuse/core'
24
+ import { localeContextInjectionKey } from '../composables/useLocale'
25
25
  import UToaster from './Toaster.vue'
26
26
  import UOverlayProvider from './OverlayProvider.vue'
27
27
 
28
- const props = defineProps<AppProps>()
28
+ const props = defineProps<AppProps<T>>()
29
29
  defineSlots<AppSlots>()
30
30
 
31
31
  const configProviderProps = useForwardProps(reactivePick(props, 'scrollBody'))
@@ -19,10 +19,17 @@ export interface AvatarProps {
19
19
  as?: any
20
20
  src?: string
21
21
  alt?: string
22
+ /**
23
+ * @IconifyIcon
24
+ */
22
25
  icon?: string
23
26
  text?: string
27
+ /**
28
+ * @defaultValue 'md'
29
+ */
24
30
  size?: AvatarVariants['size']
25
31
  class?: any
32
+ style?: any
26
33
  ui?: Partial<typeof avatar.slots>
27
34
  }
28
35
 
@@ -77,7 +84,7 @@ function onError() {
77
84
  </script>
78
85
 
79
86
  <template>
80
- <Primitive :as="as" :class="ui.root({ class: [props.class, props.ui?.root] })">
87
+ <Primitive :as="as" :class="ui.root({ class: [props.class, props.ui?.root] })" :style="props.style">
81
88
  <component
82
89
  :is="ImageComponent"
83
90
  v-if="src && !error"
@@ -17,6 +17,9 @@ export interface AvatarGroupProps {
17
17
  * @defaultValue 'div'
18
18
  */
19
19
  as?: any
20
+ /**
21
+ * @defaultValue 'md'
22
+ */
20
23
  size?: AvatarGroupVariants['size']
21
24
  /**
22
25
  * The maximum number of avatars to display.
@@ -20,8 +20,17 @@ export interface BadgeProps extends Omit<UseComponentIconsProps, 'loading' | 'lo
20
20
  */
21
21
  as?: any
22
22
  label?: string | number
23
+ /**
24
+ * @defaultValue 'primary'
25
+ */
23
26
  color?: BadgeVariants['color']
27
+ /**
28
+ * @defaultValue 'solid'
29
+ */
24
30
  variant?: BadgeVariants['variant']
31
+ /**
32
+ * @defaultValue 'md'
33
+ */
25
34
  size?: BadgeVariants['size']
26
35
  class?: any
27
36
  ui?: Partial<typeof badge.slots>
@@ -12,6 +12,9 @@ const breadcrumb = tv({ extend: tv(theme), ...(appConfigBreadcrumb.ui?.breadcrum
12
12
 
13
13
  export interface BreadcrumbItem extends Omit<LinkProps, 'raw' | 'custom'> {
14
14
  label?: string
15
+ /**
16
+ * @IconifyIcon
17
+ */
15
18
  icon?: string
16
19
  avatar?: AvatarProps
17
20
  slot?: string
@@ -27,6 +30,7 @@ export interface BreadcrumbProps<T> {
27
30
  /**
28
31
  * The icon to use as a separator.
29
32
  * @defaultValue appConfig.ui.icons.chevronRight
33
+ * @IconifyIcon
30
34
  */
31
35
  separatorIcon?: string
32
36
  /**
@@ -17,8 +17,19 @@ type ButtonVariants = VariantProps<typeof button>
17
17
 
18
18
  export interface ButtonProps extends UseComponentIconsProps, Omit<LinkProps, 'raw' | 'custom'> {
19
19
  label?: string
20
+ /**
21
+ * @defaultValue 'primary'
22
+ */
20
23
  color?: ButtonVariants['color']
24
+ activeColor?: ButtonVariants['color']
25
+ /**
26
+ * @defaultValue 'solid'
27
+ */
21
28
  variant?: ButtonVariants['variant']
29
+ activeVariant?: ButtonVariants['variant']
30
+ /**
31
+ * @defaultValue 'md'
32
+ */
22
33
  size?: ButtonVariants['size']
23
34
  /** Render the button with equal padding on all sides. */
24
35
  square?: boolean
@@ -49,8 +60,13 @@ import { pickLinkProps } from '../utils/link'
49
60
  import UIcon from './Icon.vue'
50
61
  import UAvatar from './Avatar.vue'
51
62
  import ULink from './Link.vue'
63
+ import ULinkBase from './LinkBase.vue'
52
64
 
53
- const props = defineProps<ButtonProps>()
65
+ const props = withDefaults(defineProps<ButtonProps>(), {
66
+ active: undefined,
67
+ activeClass: '',
68
+ inactiveClass: ''
69
+ })
54
70
  const slots = defineSlots<ButtonSlots>()
55
71
 
56
72
  const linkProps = useForwardProps(pickLinkProps(props))
@@ -78,7 +94,19 @@ const { isLeading, isTrailing, leadingIconName, trailingIconName } = useComponen
78
94
  computed(() => ({ ...props, loading: isLoading.value }))
79
95
  )
80
96
 
81
- const ui = computed(() => button({
97
+ const ui = computed(() => tv({
98
+ extend: button,
99
+ variants: {
100
+ active: {
101
+ true: {
102
+ base: props.activeClass
103
+ },
104
+ false: {
105
+ base: props.inactiveClass
106
+ }
107
+ }
108
+ }
109
+ })({
82
110
  color: props.color,
83
111
  variant: props.variant,
84
112
  size: buttonSize.value,
@@ -93,26 +121,37 @@ const ui = computed(() => button({
93
121
 
94
122
  <template>
95
123
  <ULink
124
+ v-slot="{ active, ...slotProps }"
96
125
  :type="type"
97
126
  :disabled="disabled || isLoading"
98
127
  :class="ui.base({ class: [props.class, props.ui?.base] })"
99
128
  v-bind="omit(linkProps, ['type', 'disabled'])"
100
- raw
101
- @click="onClickWrapper"
129
+ custom
102
130
  >
103
- <slot name="leading">
104
- <UIcon v-if="isLeading && leadingIconName" :name="leadingIconName" :class="ui.leadingIcon({ class: props.ui?.leadingIcon })" />
105
- <UAvatar v-else-if="!!avatar" :size="((props.ui?.leadingAvatarSize || ui.leadingAvatarSize()) as AvatarProps['size'])" v-bind="avatar" :class="ui.leadingAvatar({ class: props.ui?.leadingAvatar })" />
106
- </slot>
107
-
108
- <slot>
109
- <span v-if="label" :class="ui.label({ class: props.ui?.label })">
110
- {{ label }}
111
- </span>
112
- </slot>
113
-
114
- <slot name="trailing">
115
- <UIcon v-if="isTrailing && trailingIconName" :name="trailingIconName" :class="ui.trailingIcon({ class: props.ui?.trailingIcon })" />
116
- </slot>
131
+ <ULinkBase
132
+ v-bind="slotProps"
133
+ :class="ui.base({
134
+ class: [props.class, props.ui?.base],
135
+ active,
136
+ ...(active && activeVariant ? { variant: activeVariant } : {}),
137
+ ...(active && activeColor ? { color: activeColor } : {})
138
+ })"
139
+ @click="onClickWrapper"
140
+ >
141
+ <slot name="leading">
142
+ <UIcon v-if="isLeading && leadingIconName" :name="leadingIconName" :class="ui.leadingIcon({ class: props.ui?.leadingIcon, active })" />
143
+ <UAvatar v-else-if="!!avatar" :size="((props.ui?.leadingAvatarSize || ui.leadingAvatarSize()) as AvatarProps['size'])" v-bind="avatar" :class="ui.leadingAvatar({ class: props.ui?.leadingAvatar, active })" />
144
+ </slot>
145
+
146
+ <slot>
147
+ <span v-if="label" :class="ui.label({ class: props.ui?.label, active })">
148
+ {{ label }}
149
+ </span>
150
+ </slot>
151
+
152
+ <slot name="trailing">
153
+ <UIcon v-if="isTrailing && trailingIconName" :name="trailingIconName" :class="ui.trailingIcon({ class: props.ui?.trailingIcon, active })" />
154
+ </slot>
155
+ </ULinkBase>
117
156
  </ULink>
118
157
  </template>
@@ -17,6 +17,9 @@ export interface ButtonGroupProps {
17
17
  * @defaultValue 'div'
18
18
  */
19
19
  as?: any
20
+ /**
21
+ * @defaultValue 'md'
22
+ */
20
23
  size?: ButtonGroupVariants['size']
21
24
  /**
22
25
  * The orientation the buttons are laid out.
@@ -29,24 +29,34 @@ export interface CalendarProps<R extends boolean, M extends boolean> extends Omi
29
29
  /**
30
30
  * The icon to use for the next year control.
31
31
  * @defaultValue appConfig.ui.icons.chevronDoubleRight
32
+ * @IconifyIcon
32
33
  */
33
34
  nextYearIcon?: string
34
35
  /**
35
36
  * The icon to use for the next month control.
36
37
  * @defaultValue appConfig.ui.icons.chevronRight
38
+ * @IconifyIcon
37
39
  */
38
40
  nextMonthIcon?: string
39
41
  /**
40
42
  * The icon to use for the previous year control.
41
43
  * @defaultValue appConfig.ui.icons.chevronDoubleLeft
44
+ * @IconifyIcon
42
45
  */
43
46
  prevYearIcon?: string
44
47
  /**
45
48
  * The icon to use for the previous month control.
46
49
  * @defaultValue appConfig.ui.icons.chevronLeft
50
+ * @IconifyIcon
47
51
  */
48
52
  prevMonthIcon?: string
53
+ /**
54
+ * @defaultValue 'primary'
55
+ */
49
56
  color?: CalendarVariants['color']
57
+ /**
58
+ * @defaultValue 'md'
59
+ */
50
60
  size?: CalendarVariants['size']
51
61
  /** Whether or not a range of dates can be selected */
52
62
  range?: R & boolean
@@ -17,6 +17,9 @@ export interface CardProps {
17
17
  * @defaultValue 'div'
18
18
  */
19
19
  as?: any
20
+ /**
21
+ * @defaultValue 'outline'
22
+ */
20
23
  variant?: CardVariants['variant']
21
24
  class?: any
22
25
  ui?: Partial<typeof card.slots>
@@ -35,6 +35,7 @@ export interface CarouselProps<T> extends Omit<EmblaOptionsType, 'axis' | 'conta
35
35
  /**
36
36
  * The icon displayed in the prev button.
37
37
  * @defaultValue appConfig.ui.icons.arrowLeft
38
+ * @IconifyIcon
38
39
  */
39
40
  prevIcon?: string
40
41
  /**
@@ -45,6 +46,7 @@ export interface CarouselProps<T> extends Omit<EmblaOptionsType, 'axis' | 'conta
45
46
  /**
46
47
  * The icon displayed in the next button.
47
48
  * @defaultValue appConfig.ui.icons.arrowRight
49
+ * @IconifyIcon
48
50
  */
49
51
  nextIcon?: string
50
52
  /**
@@ -57,6 +59,10 @@ export interface CarouselProps<T> extends Omit<EmblaOptionsType, 'axis' | 'conta
57
59
  * @defaultValue false
58
60
  */
59
61
  dots?: boolean
62
+ /**
63
+ * The orientation of the carousel.
64
+ * @defaultValue 'horizontal'
65
+ */
60
66
  orientation?: CarouselVariants['orientation']
61
67
  items?: T[]
62
68
  /**
@@ -20,16 +20,24 @@ export interface CheckboxProps extends Pick<CheckboxRootProps, 'disabled' | 'req
20
20
  as?: any
21
21
  label?: string
22
22
  description?: string
23
+ /**
24
+ * @defaultValue 'primary'
25
+ */
23
26
  color?: CheckboxVariants['color']
27
+ /**
28
+ * @defaultValue 'md'
29
+ */
24
30
  size?: CheckboxVariants['size']
25
31
  /**
26
32
  * The icon displayed when checked.
27
33
  * @defaultValue appConfig.ui.icons.check
34
+ * @IconifyIcon
28
35
  */
29
36
  icon?: string
30
37
  /**
31
38
  * The icon displayed when the checkbox is indeterminate.
32
39
  * @defaultValue appConfig.ui.icons.minus
40
+ * @IconifyIcon
33
41
  */
34
42
  indeterminateIcon?: string
35
43
  class?: any
@@ -19,8 +19,18 @@ export interface ChipProps {
19
19
  as?: any
20
20
  /** Display some text inside the chip. */
21
21
  text?: string | number
22
+ /**
23
+ * @defaultValue 'primary'
24
+ */
22
25
  color?: ChipVariants['color']
26
+ /**
27
+ * @defaultValue 'md'
28
+ */
23
29
  size?: ChipVariants['size']
30
+ /**
31
+ * The position of the chip.
32
+ * @defaultValue 'top-right'
33
+ */
24
34
  position?: ChipVariants['position']
25
35
  /** When `true`, keep the chip inside the component for rounded elements. */
26
36
  inset?: boolean
@@ -63,6 +63,9 @@ export type ColorPickerProps = {
63
63
  * @defaultValue 'hex'
64
64
  */
65
65
  format?: 'hex' | 'rgb' | 'hsl' | 'cmyk' | 'lab'
66
+ /**
67
+ * @defaultValue 'md'
68
+ */
66
69
  size?: ColorPickerVariants['size']
67
70
  class?: any
68
71
  ui?: Partial<typeof colorPicker.slots>
@@ -18,6 +18,9 @@ export interface CommandPaletteItem extends Omit<LinkProps, 'type' | 'raw' | 'cu
18
18
  prefix?: string
19
19
  label?: string
20
20
  suffix?: string
21
+ /**
22
+ * @IconifyIcon
23
+ */
21
24
  icon?: string
22
25
  avatar?: AvatarProps
23
26
  chip?: ChipProps
@@ -42,7 +45,10 @@ export interface CommandPaletteGroup<T> {
42
45
  ignoreFilter?: boolean
43
46
  /** Filter group items after the search happened. */
44
47
  postFilter?: (searchTerm: string, items: T[]) => T[]
45
- /** The icon displayed when an item is highlighted. */
48
+ /**
49
+ * The icon displayed when an item is highlighted.
50
+ * @IconifyIcon
51
+ */
46
52
  highlightedIcon?: string
47
53
  }
48
54
 
@@ -55,11 +61,13 @@ export interface CommandPaletteProps<G, T> extends Pick<ListboxRootProps, 'multi
55
61
  /**
56
62
  * The icon displayed in the input.
57
63
  * @defaultValue appConfig.ui.icons.search
64
+ * @IconifyIcon
58
65
  */
59
66
  icon?: string
60
67
  /**
61
68
  * The icon displayed when an item is selected.
62
69
  * @defaultValue appConfig.ui.icons.check
70
+ * @IconifyIcon
63
71
  */
64
72
  selectedIcon?: string
65
73
  /**
@@ -82,6 +90,7 @@ export interface CommandPaletteProps<G, T> extends Pick<ListboxRootProps, 'multi
82
90
  /**
83
91
  * The icon displayed in the close button.
84
92
  * @defaultValue appConfig.ui.icons.close
93
+ * @IconifyIcon
85
94
  */
86
95
  closeIcon?: string
87
96
  groups?: G[]
@@ -16,6 +16,9 @@ type ContextMenuVariants = VariantProps<typeof contextMenu>
16
16
 
17
17
  export interface ContextMenuItem extends Omit<LinkProps, 'type' | 'raw' | 'custom'> {
18
18
  label?: string
19
+ /**
20
+ * @IconifyIcon
21
+ */
19
22
  icon?: string
20
23
  color?: ContextMenuVariants['color']
21
24
  avatar?: AvatarProps
@@ -38,22 +41,28 @@ export interface ContextMenuItem extends Omit<LinkProps, 'type' | 'raw' | 'custo
38
41
  }
39
42
 
40
43
  export interface ContextMenuProps<T> extends Omit<ContextMenuRootProps, 'dir'> {
44
+ /**
45
+ * @defaultValue 'md'
46
+ */
41
47
  size?: ContextMenuVariants['size']
42
48
  items?: T[] | T[][]
43
49
  /**
44
50
  * The icon displayed when an item is checked.
45
51
  * @defaultValue appConfig.ui.icons.check
52
+ * @IconifyIcon
46
53
  */
47
54
  checkedIcon?: string
48
55
  /**
49
56
  * The icon displayed when an item is loading.
50
57
  * @defaultValue appConfig.ui.icons.loading
58
+ * @IconifyIcon
51
59
  */
52
60
  loadingIcon?: string
53
61
  /**
54
62
  * The icon displayed when the item is an external link.
55
63
  * Set to `false` to hide the external icon.
56
64
  * @defaultValue appConfig.ui.icons.external
65
+ * @IconifyIcon
57
66
  */
58
67
  externalIcon?: boolean | string
59
68
  /** The content of the menu. */
@@ -11,8 +11,17 @@ interface ContextMenuContentProps<T> extends Omit<RekaContextMenuContentProps, '
11
11
  portal?: boolean
12
12
  sub?: boolean
13
13
  labelKey: string
14
+ /**
15
+ * @IconifyIcon
16
+ */
14
17
  checkedIcon?: string
18
+ /**
19
+ * @IconifyIcon
20
+ */
15
21
  loadingIcon?: string
22
+ /**
23
+ * @IconifyIcon
24
+ */
16
25
  externalIcon?: boolean | string
17
26
  class?: any
18
27
  ui: typeof _contextMenu
@@ -16,6 +16,9 @@ type DropdownMenuVariants = VariantProps<typeof dropdownMenu>
16
16
 
17
17
  export interface DropdownMenuItem extends Omit<LinkProps, 'type' | 'raw' | 'custom'> {
18
18
  label?: string
19
+ /**
20
+ * @IconifyIcon
21
+ */
19
22
  icon?: string
20
23
  color?: DropdownMenuVariants['color']
21
24
  avatar?: AvatarProps
@@ -38,22 +41,28 @@ export interface DropdownMenuItem extends Omit<LinkProps, 'type' | 'raw' | 'cust
38
41
  }
39
42
 
40
43
  export interface DropdownMenuProps<T> extends Omit<DropdownMenuRootProps, 'dir'> {
44
+ /**
45
+ * @defaultValue 'md'
46
+ */
41
47
  size?: DropdownMenuVariants['size']
42
48
  items?: T[] | T[][]
43
49
  /**
44
50
  * The icon displayed when an item is checked.
45
51
  * @defaultValue appConfig.ui.icons.check
52
+ * @IconifyIcon
46
53
  */
47
54
  checkedIcon?: string
48
55
  /**
49
56
  * The icon displayed when an item is loading.
50
57
  * @defaultValue appConfig.ui.icons.loading
58
+ * @IconifyIcon
51
59
  */
52
60
  loadingIcon?: string
53
61
  /**
54
62
  * The icon displayed when the item is an external link.
55
63
  * Set to `false` to hide the external icon.
56
64
  * @defaultValue appConfig.ui.icons.external
65
+ * @IconifyIcon
57
66
  */
58
67
  externalIcon?: boolean | string
59
68
  /**
@@ -12,8 +12,17 @@ interface DropdownMenuContentProps<T> extends Omit<RekaDropdownMenuContentProps,
12
12
  portal?: boolean
13
13
  sub?: boolean
14
14
  labelKey: string
15
+ /**
16
+ * @IconifyIcon
17
+ */
15
18
  checkedIcon?: string
19
+ /**
20
+ * @IconifyIcon
21
+ */
16
22
  loadingIcon?: string
23
+ /**
24
+ * @IconifyIcon
25
+ */
17
26
  externalIcon?: boolean | string
18
27
  class?: any
19
28
  ui: typeof _dropdownMenu