@bitrix24/b24ui-nuxt 0.5.11 → 0.6.0

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 (199) hide show
  1. package/.nuxt/b24ui/input-menu.ts +2 -2
  2. package/.nuxt/b24ui/select-menu.ts +4 -4
  3. package/.nuxt/b24ui/select.ts +2 -2
  4. package/dist/meta.d.mts +5208 -5061
  5. package/dist/meta.mjs +5208 -5061
  6. package/dist/module.json +3 -3
  7. package/dist/module.mjs +2 -2
  8. package/dist/runtime/components/Advice.vue +27 -54
  9. package/dist/runtime/components/Advice.vue.d.ts +170 -0
  10. package/dist/runtime/components/Alert.vue +35 -96
  11. package/dist/runtime/components/Alert.vue.d.ts +464 -0
  12. package/dist/runtime/components/App.vue +24 -34
  13. package/dist/runtime/components/App.vue.d.ts +23 -0
  14. package/dist/runtime/components/Avatar.vue +43 -81
  15. package/dist/runtime/components/Avatar.vue.d.ts +281 -0
  16. package/dist/runtime/components/AvatarGroup.vue +40 -76
  17. package/dist/runtime/components/AvatarGroup.vue.d.ts +204 -0
  18. package/dist/runtime/components/Badge.vue +40 -83
  19. package/dist/runtime/components/Badge.vue.d.ts +517 -0
  20. package/dist/runtime/components/Button.vue +96 -155
  21. package/dist/runtime/components/Button.vue.d.ts +640 -0
  22. package/dist/runtime/components/ButtonGroup.vue +19 -51
  23. package/dist/runtime/components/ButtonGroup.vue.d.ts +116 -0
  24. package/dist/runtime/components/Calendar.vue +73 -152
  25. package/dist/runtime/components/Calendar.vue.d.ts +437 -0
  26. package/dist/runtime/components/Checkbox.vue +42 -73
  27. package/dist/runtime/components/Checkbox.vue.d.ts +354 -0
  28. package/dist/runtime/components/Chip.vue +26 -74
  29. package/dist/runtime/components/Chip.vue.d.ts +271 -0
  30. package/dist/runtime/components/Collapsible.vue +22 -41
  31. package/dist/runtime/components/Collapsible.vue.d.ts +118 -0
  32. package/dist/runtime/components/Container.vue +13 -27
  33. package/dist/runtime/components/Container.vue.d.ts +27 -0
  34. package/dist/runtime/components/Countdown.vue +153 -378
  35. package/dist/runtime/components/Countdown.vue.d.ts +356 -0
  36. package/dist/runtime/components/DescriptionList.vue +78 -149
  37. package/dist/runtime/components/DescriptionList.vue.d.ts +379 -0
  38. package/dist/runtime/components/DropdownMenu.vue +38 -139
  39. package/dist/runtime/components/DropdownMenu.vue.d.ts +533 -0
  40. package/dist/runtime/components/DropdownMenuContent.vue +68 -80
  41. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +228 -0
  42. package/dist/runtime/components/Form.vue +130 -217
  43. package/dist/runtime/components/Form.vue.d.ts +55 -0
  44. package/dist/runtime/components/FormField.vue +36 -80
  45. package/dist/runtime/components/FormField.vue.d.ts +282 -0
  46. package/dist/runtime/components/Input.vue +79 -179
  47. package/dist/runtime/components/Input.vue.d.ts +755 -0
  48. package/dist/runtime/components/InputMenu.vue +185 -381
  49. package/dist/runtime/components/InputMenu.vue.d.ts +1523 -0
  50. package/dist/runtime/components/InputNumber.vue +77 -175
  51. package/dist/runtime/components/InputNumber.vue.d.ts +658 -0
  52. package/dist/runtime/components/Kbd.vue +18 -45
  53. package/dist/runtime/components/Kbd.vue.d.ts +109 -0
  54. package/dist/runtime/components/Link.vue +92 -173
  55. package/dist/runtime/components/Link.vue.d.ts +129 -0
  56. package/dist/runtime/components/LinkBase.vue +33 -42
  57. package/dist/runtime/components/LinkBase.vue.d.ts +48 -0
  58. package/dist/runtime/components/Modal.vue +48 -127
  59. package/dist/runtime/components/Modal.vue.d.ts +327 -0
  60. package/dist/runtime/components/ModalDialogClose.vue +5 -8
  61. package/dist/runtime/components/ModalDialogClose.vue.d.ts +10 -0
  62. package/dist/runtime/components/Navbar.vue +15 -33
  63. package/dist/runtime/components/Navbar.vue.d.ts +101 -0
  64. package/dist/runtime/components/NavbarDivider.vue +15 -33
  65. package/dist/runtime/components/NavbarDivider.vue.d.ts +101 -0
  66. package/dist/runtime/components/NavbarSection.vue +15 -33
  67. package/dist/runtime/components/NavbarSection.vue.d.ts +101 -0
  68. package/dist/runtime/components/NavbarSpacer.vue +15 -33
  69. package/dist/runtime/components/NavbarSpacer.vue.d.ts +101 -0
  70. package/dist/runtime/components/NavigationMenu.vue +74 -208
  71. package/dist/runtime/components/NavigationMenu.vue.d.ts +824 -0
  72. package/dist/runtime/components/OverlayProvider.vue +14 -18
  73. package/dist/runtime/components/OverlayProvider.vue.d.ts +2 -0
  74. package/dist/runtime/components/Popover.vue +40 -81
  75. package/dist/runtime/components/Popover.vue.d.ts +147 -0
  76. package/dist/runtime/components/Progress.vue +70 -136
  77. package/dist/runtime/components/Progress.vue.d.ts +592 -0
  78. package/dist/runtime/components/RadioGroup.vue +59 -134
  79. package/dist/runtime/components/RadioGroup.vue.d.ts +723 -0
  80. package/dist/runtime/components/Range.vue +46 -85
  81. package/dist/runtime/components/Range.vue.d.ts +417 -0
  82. package/dist/runtime/components/Select.vue +110 -260
  83. package/dist/runtime/components/Select.vue.d.ts +1201 -0
  84. package/dist/runtime/components/SelectMenu.vue +161 -347
  85. package/dist/runtime/components/SelectMenu.vue.d.ts +1298 -0
  86. package/dist/runtime/components/Separator.vue +28 -71
  87. package/dist/runtime/components/Separator.vue.d.ts +400 -0
  88. package/dist/runtime/components/Sidebar.vue +15 -33
  89. package/dist/runtime/components/Sidebar.vue.d.ts +101 -0
  90. package/dist/runtime/components/SidebarBody.vue +17 -38
  91. package/dist/runtime/components/SidebarBody.vue.d.ts +90 -0
  92. package/dist/runtime/components/SidebarFooter.vue +15 -33
  93. package/dist/runtime/components/SidebarFooter.vue.d.ts +101 -0
  94. package/dist/runtime/components/SidebarHeader.vue +15 -33
  95. package/dist/runtime/components/SidebarHeader.vue.d.ts +101 -0
  96. package/dist/runtime/components/SidebarHeading.vue +15 -33
  97. package/dist/runtime/components/SidebarHeading.vue.d.ts +101 -0
  98. package/dist/runtime/components/SidebarLayout.vue +34 -70
  99. package/dist/runtime/components/SidebarLayout.vue.d.ts +222 -0
  100. package/dist/runtime/components/SidebarSection.vue +15 -33
  101. package/dist/runtime/components/SidebarSection.vue.d.ts +101 -0
  102. package/dist/runtime/components/SidebarSpacer.vue +15 -33
  103. package/dist/runtime/components/SidebarSpacer.vue.d.ts +101 -0
  104. package/dist/runtime/components/Skeleton.vue +12 -22
  105. package/dist/runtime/components/Skeleton.vue.d.ts +26 -0
  106. package/dist/runtime/components/Slideover.vue +50 -131
  107. package/dist/runtime/components/Slideover.vue.d.ts +360 -0
  108. package/dist/runtime/components/StackedLayout.vue +34 -73
  109. package/dist/runtime/components/StackedLayout.vue.d.ts +192 -0
  110. package/dist/runtime/components/Switch.vue +46 -95
  111. package/dist/runtime/components/Switch.vue.d.ts +587 -0
  112. package/dist/runtime/components/Tabs.vue +37 -105
  113. package/dist/runtime/components/Tabs.vue.d.ts +453 -0
  114. package/dist/runtime/components/Textarea.vue +92 -201
  115. package/dist/runtime/components/Textarea.vue.d.ts +601 -0
  116. package/dist/runtime/components/Toast.vue +47 -105
  117. package/dist/runtime/components/Toast.vue.d.ts +438 -0
  118. package/dist/runtime/components/Toaster.vue +70 -115
  119. package/dist/runtime/components/Toaster.vue.d.ts +219 -0
  120. package/dist/runtime/components/Tooltip.vue +36 -64
  121. package/dist/runtime/components/Tooltip.vue.d.ts +186 -0
  122. package/dist/runtime/components/content/TableWrapper.vue +24 -70
  123. package/dist/runtime/components/content/TableWrapper.vue.d.ts +237 -0
  124. package/dist/runtime/composables/useAvatarGroup.d.ts +1 -1
  125. package/dist/runtime/composables/useButtonGroup.d.ts +2 -2
  126. package/dist/runtime/composables/useComponentIcons.d.ts +3 -3
  127. package/dist/runtime/composables/useFormField.d.ts +2 -2
  128. package/dist/runtime/composables/useOverlay.d.ts +14 -7
  129. package/dist/runtime/composables/useOverlay.js +14 -6
  130. package/dist/runtime/prose/A.vue +12 -23
  131. package/dist/runtime/prose/A.vue.d.ts +84 -0
  132. package/dist/runtime/prose/Blockquote.vue +12 -23
  133. package/dist/runtime/prose/Blockquote.vue.d.ts +84 -0
  134. package/dist/runtime/prose/Code.vue +14 -31
  135. package/dist/runtime/prose/Code.vue.d.ts +97 -0
  136. package/dist/runtime/prose/Em.vue +12 -23
  137. package/dist/runtime/prose/Em.vue.d.ts +84 -0
  138. package/dist/runtime/prose/H1.vue +12 -23
  139. package/dist/runtime/prose/H1.vue.d.ts +97 -0
  140. package/dist/runtime/prose/H2.vue +12 -23
  141. package/dist/runtime/prose/H2.vue.d.ts +123 -0
  142. package/dist/runtime/prose/H3.vue +12 -23
  143. package/dist/runtime/prose/H3.vue.d.ts +123 -0
  144. package/dist/runtime/prose/H4.vue +12 -23
  145. package/dist/runtime/prose/H4.vue.d.ts +123 -0
  146. package/dist/runtime/prose/H5.vue +12 -23
  147. package/dist/runtime/prose/H5.vue.d.ts +123 -0
  148. package/dist/runtime/prose/H6.vue +12 -23
  149. package/dist/runtime/prose/H6.vue.d.ts +123 -0
  150. package/dist/runtime/prose/Hr.vue +12 -19
  151. package/dist/runtime/prose/Hr.vue.d.ts +74 -0
  152. package/dist/runtime/prose/Img.vue +12 -23
  153. package/dist/runtime/prose/Img.vue.d.ts +77 -0
  154. package/dist/runtime/prose/Li.vue +12 -23
  155. package/dist/runtime/prose/Li.vue.d.ts +84 -0
  156. package/dist/runtime/prose/Ol.vue +12 -23
  157. package/dist/runtime/prose/Ol.vue.d.ts +84 -0
  158. package/dist/runtime/prose/P.vue +12 -23
  159. package/dist/runtime/prose/P.vue.d.ts +84 -0
  160. package/dist/runtime/prose/Pre.vue +16 -33
  161. package/dist/runtime/prose/Pre.vue.d.ts +117 -0
  162. package/dist/runtime/prose/Strong.vue +12 -23
  163. package/dist/runtime/prose/Strong.vue.d.ts +84 -0
  164. package/dist/runtime/prose/Table.vue +19 -54
  165. package/dist/runtime/prose/Table.vue.d.ts +144 -0
  166. package/dist/runtime/prose/Tbody.vue +12 -23
  167. package/dist/runtime/prose/Tbody.vue.d.ts +84 -0
  168. package/dist/runtime/prose/Td.vue +12 -23
  169. package/dist/runtime/prose/Td.vue.d.ts +84 -0
  170. package/dist/runtime/prose/Th.vue +12 -23
  171. package/dist/runtime/prose/Th.vue.d.ts +84 -0
  172. package/dist/runtime/prose/Thead.vue +12 -23
  173. package/dist/runtime/prose/Thead.vue.d.ts +84 -0
  174. package/dist/runtime/prose/Tr.vue +12 -23
  175. package/dist/runtime/prose/Tr.vue.d.ts +84 -0
  176. package/dist/runtime/prose/Ul.vue +12 -23
  177. package/dist/runtime/prose/Ul.vue.d.ts +84 -0
  178. package/dist/runtime/utils/link.d.ts +3 -3
  179. package/dist/runtime/vue/components/Link.vue +115 -202
  180. package/dist/runtime/vue/components/Link.vue.d.ts +129 -0
  181. package/dist/shared/{b24ui-nuxt.CS9Lf0os.mjs → b24ui-nuxt.BA6Y2FnC.mjs} +6 -6
  182. package/dist/types.d.mts +3 -5
  183. package/dist/unplugin.mjs +1 -1
  184. package/dist/vite.mjs +1 -1
  185. package/package.json +14 -22
  186. package/dist/meta.cjs +0 -72112
  187. package/dist/meta.d.cts +0 -72110
  188. package/dist/meta.d.ts +0 -72110
  189. package/dist/module.cjs +0 -63
  190. package/dist/module.d.cts +0 -15
  191. package/dist/module.d.ts +0 -15
  192. package/dist/shared/b24ui-nuxt.DrKwIWoc.cjs +0 -7721
  193. package/dist/types.d.ts +0 -7
  194. package/dist/unplugin.cjs +0 -236
  195. package/dist/unplugin.d.cts +0 -33
  196. package/dist/unplugin.d.ts +0 -33
  197. package/dist/vite.cjs +0 -21
  198. package/dist/vite.d.cts +0 -14
  199. package/dist/vite.d.ts +0 -14
package/dist/module.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@bitrix24/b24ui-nuxt",
3
- "version": "0.5.11",
3
+ "version": "0.6.0",
4
4
  "docs": "https://bitrix24.github.io/b24ui/guide/installation-nuxt-app.html",
5
5
  "configKey": "b24ui",
6
6
  "compatibility": {
7
7
  "nuxt": ">=3.16.0"
8
8
  },
9
9
  "builder": {
10
- "@nuxt/module-builder": "0.8.4",
11
- "unbuild": "2.0.0"
10
+ "@nuxt/module-builder": "1.0.1",
11
+ "unbuild": "3.5.0"
12
12
  }
13
13
  }
package/dist/module.mjs CHANGED
@@ -1,11 +1,11 @@
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, a as getDefaultUiConfig, b as addTemplates } from './shared/b24ui-nuxt.CS9Lf0os.mjs';
3
+ import { d as defaultOptions, a as getDefaultUiConfig, b as addTemplates } from './shared/b24ui-nuxt.BA6Y2FnC.mjs';
4
4
  import 'node:url';
5
5
  import 'scule';
6
6
 
7
7
  const name = "@bitrix24/b24ui-nuxt";
8
- const version = "0.5.11";
8
+ const version = "0.6.0";
9
9
 
10
10
  const module = defineNuxtModule({
11
11
  meta: {
@@ -1,61 +1,34 @@
1
- <script lang="ts">
2
- import type { VariantProps } from 'tailwind-variants'
3
- import type { AppConfig } from '@nuxt/schema'
4
- import _appConfig from '#build/app.config'
5
- import theme from '#build/b24ui/advice'
6
- import type { UseComponentIconsProps } from '../composables/useComponentIcons'
7
- import { tv } from '../utils/tv'
8
- import type { AvatarProps } from '../types'
9
-
10
- const appConfigAdvice = _appConfig as AppConfig & { b24ui: { advice: Partial<typeof theme> } }
11
-
12
- const advice = tv({ extend: tv(theme), ...(appConfigAdvice.b24ui?.advice || {}) })
13
-
14
- type AdviceVariants = VariantProps<typeof advice>
15
-
16
- export interface AdviceProps extends Omit<UseComponentIconsProps, 'loading' | 'trailing' | 'trailingIcon'> {
17
- /**
18
- * The element or component this component should render as.
19
- * @defaultValue 'div'
20
- */
21
- as?: any
22
- description?: string
23
- /**
24
- * @defaultValue 'bottom'
25
- */
26
- angle?: AdviceVariants['angle']
27
- class?: any
28
- b24ui?: Partial<typeof advice.slots>
29
- }
30
-
31
- export interface AdviceSlots {
32
- leading(props?: {}): any
33
- default(props?: {}): any
34
- }
1
+ <script>
2
+ import _appConfig from "#build/app.config";
3
+ import theme from "#build/b24ui/advice";
4
+ import { tv } from "../utils/tv";
5
+ const appConfigAdvice = _appConfig;
6
+ const advice = tv({ extend: tv(theme), ...appConfigAdvice.b24ui?.advice || {} });
35
7
  </script>
36
8
 
37
- <script setup lang="ts">
38
- import { computed } from 'vue'
39
- import { Primitive } from 'reka-ui'
40
- import { useComponentIcons } from '../composables/useComponentIcons'
41
- import B24Avatar from './Avatar.vue'
42
- import PersonIcon from '@bitrix24/b24icons-vue/main/PersonIcon'
43
-
44
- defineOptions({ inheritAttrs: false })
45
-
46
- const props = withDefaults(defineProps<AdviceProps>(), {
47
- as: 'div',
48
- angle: 'bottom'
49
- })
50
- const slots = defineSlots<AdviceSlots>()
51
-
9
+ <script setup>
10
+ import { computed } from "vue";
11
+ import { Primitive } from "reka-ui";
12
+ import { useComponentIcons } from "../composables/useComponentIcons";
13
+ import B24Avatar from "./Avatar.vue";
14
+ import PersonIcon from "@bitrix24/b24icons-vue/main/PersonIcon";
15
+ defineOptions({ inheritAttrs: false });
16
+ const props = defineProps({
17
+ as: { type: null, required: false, default: "div" },
18
+ description: { type: String, required: false },
19
+ angle: { type: null, required: false, default: "bottom" },
20
+ class: { type: null, required: false },
21
+ b24ui: { type: Object, required: false },
22
+ icon: { type: [Function, Object], required: false },
23
+ avatar: { type: Object, required: false }
24
+ });
25
+ const slots = defineSlots();
52
26
  const { isLeading, leadingIconName } = useComponentIcons(
53
27
  computed(() => ({ ...props, loading: false }))
54
- )
55
-
28
+ );
56
29
  const b24ui = computed(() => advice({
57
30
  angle: props.angle
58
- }))
31
+ }));
59
32
  </script>
60
33
 
61
34
  <template>
@@ -69,7 +42,7 @@ const b24ui = computed(() => advice({
69
42
  />
70
43
  <B24Avatar
71
44
  v-else-if="!!avatar"
72
- :size="((props.b24ui?.leadingAvatarSize || b24ui.leadingAvatarSize()) as AvatarProps['size'])"
45
+ :size="props.b24ui?.leadingAvatarSize || b24ui.leadingAvatarSize()"
73
46
  v-bind="avatar"
74
47
  :class="b24ui.leadingAvatar({ class: props.b24ui?.leadingAvatar })"
75
48
  />
@@ -80,7 +53,7 @@ const b24ui = computed(() => advice({
80
53
  :class="b24ui.leading({ class: props.b24ui?.leading })"
81
54
  >
82
55
  <B24Avatar
83
- :size="((props.b24ui?.leadingAvatarSize || b24ui.leadingAvatarSize()) as AvatarProps['size'])"
56
+ :size="props.b24ui?.leadingAvatarSize || b24ui.leadingAvatarSize()"
84
57
  :icon="PersonIcon"
85
58
  alt="Person"
86
59
  :class="b24ui.leadingAvatar({ class: props.b24ui?.leadingAvatar })"
@@ -0,0 +1,170 @@
1
+ import type { VariantProps } from 'tailwind-variants';
2
+ import type { UseComponentIconsProps } from '../composables/useComponentIcons';
3
+ declare const advice: import("tailwind-variants").TVReturnType<{
4
+ angle: {
5
+ top: {
6
+ root: string;
7
+ leading: string;
8
+ descriptionAngle: string;
9
+ };
10
+ bottom: {
11
+ root: string;
12
+ descriptionAngle: string;
13
+ };
14
+ };
15
+ }, {
16
+ root: string;
17
+ descriptionWrapper: string;
18
+ descriptionBorder: string;
19
+ descriptionBg: string;
20
+ descriptionAngle: string;
21
+ description: string;
22
+ leading: string;
23
+ leadingIcon: string;
24
+ leadingAvatar: string;
25
+ leadingAvatarSize: string;
26
+ }, undefined, {
27
+ angle: {
28
+ top: {
29
+ root: string;
30
+ leading: string;
31
+ descriptionAngle: string;
32
+ };
33
+ bottom: {
34
+ root: string;
35
+ descriptionAngle: string;
36
+ };
37
+ };
38
+ }, {
39
+ root: string;
40
+ descriptionWrapper: string;
41
+ descriptionBorder: string;
42
+ descriptionBg: string;
43
+ descriptionAngle: string;
44
+ description: string;
45
+ leading: string;
46
+ leadingIcon: string;
47
+ leadingAvatar: string;
48
+ leadingAvatarSize: string;
49
+ }, import("tailwind-variants").TVReturnType<{
50
+ angle: {
51
+ top: {
52
+ root: string;
53
+ leading: string;
54
+ descriptionAngle: string;
55
+ };
56
+ bottom: {
57
+ root: string;
58
+ descriptionAngle: string;
59
+ };
60
+ };
61
+ }, {
62
+ root: string;
63
+ descriptionWrapper: string;
64
+ descriptionBorder: string;
65
+ descriptionBg: string;
66
+ descriptionAngle: string;
67
+ description: string;
68
+ leading: string;
69
+ leadingIcon: string;
70
+ leadingAvatar: string;
71
+ leadingAvatarSize: string;
72
+ }, undefined, {
73
+ angle: {
74
+ top: {
75
+ root: string;
76
+ leading: string;
77
+ descriptionAngle: string;
78
+ };
79
+ bottom: {
80
+ root: string;
81
+ descriptionAngle: string;
82
+ };
83
+ };
84
+ }, {
85
+ root: string;
86
+ descriptionWrapper: string;
87
+ descriptionBorder: string;
88
+ descriptionBg: string;
89
+ descriptionAngle: string;
90
+ description: string;
91
+ leading: string;
92
+ leadingIcon: string;
93
+ leadingAvatar: string;
94
+ leadingAvatarSize: string;
95
+ }, import("tailwind-variants").TVReturnType<{
96
+ angle: {
97
+ top: {
98
+ root: string;
99
+ leading: string;
100
+ descriptionAngle: string;
101
+ };
102
+ bottom: {
103
+ root: string;
104
+ descriptionAngle: string;
105
+ };
106
+ };
107
+ }, {
108
+ root: string;
109
+ descriptionWrapper: string;
110
+ descriptionBorder: string;
111
+ descriptionBg: string;
112
+ descriptionAngle: string;
113
+ description: string;
114
+ leading: string;
115
+ leadingIcon: string;
116
+ leadingAvatar: string;
117
+ leadingAvatarSize: string;
118
+ }, undefined, unknown, unknown, undefined>>>;
119
+ type AdviceVariants = VariantProps<typeof advice>;
120
+ export interface AdviceProps extends Omit<UseComponentIconsProps, 'loading' | 'trailing' | 'trailingIcon'> {
121
+ /**
122
+ * The element or component this component should render as.
123
+ * @defaultValue 'div'
124
+ */
125
+ as?: any;
126
+ description?: string;
127
+ /**
128
+ * @defaultValue 'bottom'
129
+ */
130
+ angle?: AdviceVariants['angle'];
131
+ class?: any;
132
+ b24ui?: Partial<typeof advice.slots>;
133
+ }
134
+ export interface AdviceSlots {
135
+ leading(props?: {}): any;
136
+ default(props?: {}): any;
137
+ }
138
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<AdviceProps>, {
139
+ as: string;
140
+ angle: string;
141
+ }>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<AdviceProps>, {
142
+ as: string;
143
+ angle: string;
144
+ }>>> & Readonly<{}>, {
145
+ as: any;
146
+ angle: "top" | "bottom";
147
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, Readonly<AdviceSlots> & AdviceSlots>;
148
+ export default _default;
149
+ type __VLS_WithDefaults<P, D> = {
150
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_PrettifyLocal<P[K] & {
151
+ default: D[K];
152
+ }> : P[K];
153
+ };
154
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
155
+ type __VLS_TypePropsToOption<T> = {
156
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
157
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
158
+ } : {
159
+ type: import('vue').PropType<T[K]>;
160
+ required: true;
161
+ };
162
+ };
163
+ type __VLS_WithTemplateSlots<T, S> = T & {
164
+ new (): {
165
+ $slots: S;
166
+ };
167
+ };
168
+ type __VLS_PrettifyLocal<T> = {
169
+ [K in keyof T]: T[K];
170
+ } & {};
@@ -1,103 +1,42 @@
1
- <script lang="ts">
2
- import type { VariantProps } from 'tailwind-variants'
3
- import type { AppConfig } from '@nuxt/schema'
4
- import _appConfig from '#build/app.config'
5
- import theme from '#build/b24ui/alert'
6
- import { tv } from '../utils/tv'
7
- import type { AvatarProps, ButtonProps, IconComponent } from '../types'
8
-
9
- const appConfigAlert = _appConfig as AppConfig & { b24ui: { alert: Partial<typeof theme> } }
10
-
11
- const alert = tv({ extend: tv(theme), ...(appConfigAlert.b24ui?.alert || {}) })
12
-
13
- type AlertVariants = VariantProps<typeof alert>
14
-
15
- export interface AlertProps {
16
- /**
17
- * The element or component this component should render as.
18
- * @defaultValue 'div'
19
- */
20
- as?: any
21
- title?: string
22
- description?: string
23
- /**
24
- * Display an icon on the left side.
25
- * @IconComponent
26
- */
27
- icon?: IconComponent
28
- avatar?: AvatarProps
29
- /**
30
- * @defaultValue 'default'
31
- */
32
- color?: AlertVariants['color']
33
- /**
34
- * The orientation between the content and the actions.
35
- * @defaultValue 'vertical'
36
- */
37
- orientation?: AlertVariants['orientation']
38
- /**
39
- * @defaultValue 'md'
40
- */
41
- size?: AlertVariants['size']
42
- /**
43
- * Display a list of actions:
44
- * - under the title and description when orientation is `vertical`
45
- * - next to the close button when orientation is `horizontal`
46
- * `{ size: 'xs' }`{lang="ts"}
47
- */
48
- actions?: ButtonProps[]
49
- /**
50
- * Display a close button to dismiss the alert.
51
- * `{ size: 'md', color: 'neutral', variant: 'link' }`{lang="ts"}
52
- * @emits 'update:open'
53
- * @defaultValue false
54
- */
55
- close?: boolean | Partial<ButtonProps>
56
- /**
57
- * The icon displayed in the close button.
58
- * @defaultValue icons.close
59
- * @IconComponent
60
- */
61
- closeIcon?: IconComponent
62
- class?: any
63
- b24ui?: Partial<typeof alert.slots>
64
- }
65
-
66
- export interface AlertEmits {
67
- (e: 'update:open', value: boolean): void
68
- }
69
-
70
- export interface AlertSlots {
71
- leading(props?: {}): any
72
- title(props?: {}): any
73
- description(props?: {}): any
74
- actions(props?: {}): any
75
- close(props: { b24ui: ReturnType<typeof alert> }): any
76
- }
1
+ <script>
2
+ import _appConfig from "#build/app.config";
3
+ import theme from "#build/b24ui/alert";
4
+ import { tv } from "../utils/tv";
5
+ const appConfigAlert = _appConfig;
6
+ const alert = tv({ extend: tv(theme), ...appConfigAlert.b24ui?.alert || {} });
77
7
  </script>
78
8
 
79
- <script setup lang="ts">
80
- import { computed } from 'vue'
81
- import { Primitive } from 'reka-ui'
82
- import { useLocale } from '../composables/useLocale'
83
- import icons from '../dictionary/icons'
84
- import B24Avatar from './Avatar.vue'
85
- import B24Button from './Button.vue'
86
-
87
- const props = withDefaults(defineProps<AlertProps>(), {
88
- orientation: 'vertical'
89
- })
90
- const emits = defineEmits<AlertEmits>()
91
- const slots = defineSlots<AlertSlots>()
92
-
93
- const { t } = useLocale()
94
-
9
+ <script setup>
10
+ import { computed } from "vue";
11
+ import { Primitive } from "reka-ui";
12
+ import { useLocale } from "../composables/useLocale";
13
+ import icons from "../dictionary/icons";
14
+ import B24Avatar from "./Avatar.vue";
15
+ import B24Button from "./Button.vue";
16
+ const props = defineProps({
17
+ as: { type: null, required: false },
18
+ title: { type: String, required: false },
19
+ description: { type: String, required: false },
20
+ icon: { type: [Function, Object], required: false },
21
+ avatar: { type: Object, required: false },
22
+ color: { type: null, required: false },
23
+ orientation: { type: null, required: false, default: "vertical" },
24
+ size: { type: null, required: false },
25
+ actions: { type: Array, required: false },
26
+ close: { type: [Boolean, Object], required: false },
27
+ closeIcon: { type: [Function, Object], required: false },
28
+ class: { type: null, required: false },
29
+ b24ui: { type: Object, required: false }
30
+ });
31
+ const emits = defineEmits(["update:open"]);
32
+ const slots = defineSlots();
33
+ const { t } = useLocale();
95
34
  const b24ui = computed(() => alert({
96
35
  color: props.color,
97
36
  size: props.size,
98
37
  orientation: props.orientation,
99
38
  title: !!props.title || !!slots.title
100
- }))
39
+ }));
101
40
  </script>
102
41
 
103
42
  <template>
@@ -108,7 +47,7 @@ const b24ui = computed(() => alert({
108
47
  v-if="icon"
109
48
  :class="b24ui.icon({ class: props.b24ui?.icon })"
110
49
  />
111
- <B24Avatar v-else-if="avatar" :size="((props.b24ui?.avatarSize || b24ui.avatarSize()) as AvatarProps['size'])" v-bind="avatar" :class="b24ui.avatar({ class: props.b24ui?.avatar })" />
50
+ <B24Avatar v-else-if="avatar" :size="props.b24ui?.avatarSize || b24ui.avatarSize()" v-bind="avatar" :class="b24ui.avatar({ class: props.b24ui?.avatar })" />
112
51
  </slot>
113
52
 
114
53
  <div :class="b24ui.wrapper({ class: props.b24ui?.wrapper })">
@@ -130,7 +69,7 @@ const b24ui = computed(() => alert({
130
69
  </div>
131
70
  </div>
132
71
 
133
- <div v-if="(orientation === 'horizontal' && actions?.length) || close" :class="b24ui.actions({ class: props.b24ui?.actions, orientation: 'horizontal' })">
72
+ <div v-if="orientation === 'horizontal' && actions?.length || close" :class="b24ui.actions({ class: props.b24ui?.actions, orientation: 'horizontal' })">
134
73
  <template v-if="orientation === 'horizontal' && actions?.length">
135
74
  <slot name="actions">
136
75
  <B24Button v-for="(action, index) in actions" :key="index" size="xs" v-bind="action" />
@@ -144,7 +83,7 @@ const b24ui = computed(() => alert({
144
83
  size="xs"
145
84
  color="link"
146
85
  :aria-label="t('alert.close')"
147
- v-bind="(typeof close === 'object' ? close as Partial<ButtonProps> : {})"
86
+ v-bind="typeof close === 'object' ? close : {}"
148
87
  :class="b24ui.close({ class: props.b24ui?.close })"
149
88
  @click="emits('update:open', false)"
150
89
  />