@bitrix24/b24ui-nuxt 0.5.9 → 0.5.10

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 (196) hide show
  1. package/.nuxt/b24ui/navigation-menu.ts +0 -2
  2. package/.nuxt/b24ui/popover.ts +1 -1
  3. package/dist/meta.d.mts +4789 -4897
  4. package/dist/meta.mjs +4789 -4897
  5. package/dist/module.json +5 -5
  6. package/dist/module.mjs +11 -7
  7. package/dist/runtime/components/Advice.vue +47 -54
  8. package/dist/runtime/components/Advice.vue.d.ts +170 -0
  9. package/dist/runtime/components/Alert.vue +71 -96
  10. package/dist/runtime/components/Alert.vue.d.ts +464 -0
  11. package/dist/runtime/components/App.vue +37 -34
  12. package/dist/runtime/components/App.vue.d.ts +23 -0
  13. package/dist/runtime/components/Avatar.vue +69 -81
  14. package/dist/runtime/components/Avatar.vue.d.ts +281 -0
  15. package/dist/runtime/components/AvatarGroup.vue +53 -76
  16. package/dist/runtime/components/AvatarGroup.vue.d.ts +204 -0
  17. package/dist/runtime/components/Badge.vue +83 -83
  18. package/dist/runtime/components/Badge.vue.d.ts +517 -0
  19. package/dist/runtime/components/Button.vue +219 -149
  20. package/dist/runtime/components/Button.vue.d.ts +640 -0
  21. package/dist/runtime/components/ButtonGroup.vue +35 -51
  22. package/dist/runtime/components/ButtonGroup.vue.d.ts +116 -0
  23. package/dist/runtime/components/Calendar.vue +186 -152
  24. package/dist/runtime/components/Calendar.vue.d.ts +437 -0
  25. package/dist/runtime/components/Checkbox.vue +84 -73
  26. package/dist/runtime/components/Checkbox.vue.d.ts +354 -0
  27. package/dist/runtime/components/Chip.vue +59 -74
  28. package/dist/runtime/components/Chip.vue.d.ts +271 -0
  29. package/dist/runtime/components/Collapsible.vue +44 -41
  30. package/dist/runtime/components/Collapsible.vue.d.ts +118 -0
  31. package/dist/runtime/components/Container.vue +18 -27
  32. package/dist/runtime/components/Container.vue.d.ts +27 -0
  33. package/dist/runtime/components/Countdown.vue +198 -378
  34. package/dist/runtime/components/Countdown.vue.d.ts +356 -0
  35. package/dist/runtime/components/DescriptionList.vue +102 -149
  36. package/dist/runtime/components/DescriptionList.vue.d.ts +379 -0
  37. package/dist/runtime/components/DropdownMenu.vue +83 -139
  38. package/dist/runtime/components/DropdownMenu.vue.d.ts +533 -0
  39. package/dist/runtime/components/DropdownMenuContent.vue +137 -81
  40. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +228 -0
  41. package/dist/runtime/components/Form.vue +162 -216
  42. package/dist/runtime/components/Form.vue.d.ts +55 -0
  43. package/dist/runtime/components/FormField.vue +76 -80
  44. package/dist/runtime/components/FormField.vue.d.ts +282 -0
  45. package/dist/runtime/components/Input.vue +160 -179
  46. package/dist/runtime/components/Input.vue.d.ts +755 -0
  47. package/dist/runtime/components/InputMenu.vue +300 -381
  48. package/dist/runtime/components/InputMenu.vue.d.ts +1504 -0
  49. package/dist/runtime/components/InputNumber.vue +178 -175
  50. package/dist/runtime/components/InputNumber.vue.d.ts +658 -0
  51. package/dist/runtime/components/Kbd.vue +33 -45
  52. package/dist/runtime/components/Kbd.vue.d.ts +109 -0
  53. package/dist/runtime/components/Link.vue +179 -173
  54. package/dist/runtime/components/Link.vue.d.ts +129 -0
  55. package/dist/runtime/components/LinkBase.vue +64 -42
  56. package/dist/runtime/components/LinkBase.vue.d.ts +48 -0
  57. package/dist/runtime/components/Modal.vue +105 -127
  58. package/dist/runtime/components/Modal.vue.d.ts +327 -0
  59. package/dist/runtime/components/ModalDialogClose.vue +4 -8
  60. package/dist/runtime/components/ModalDialogClose.vue.d.ts +10 -0
  61. package/dist/runtime/components/Navbar.vue +24 -33
  62. package/dist/runtime/components/Navbar.vue.d.ts +101 -0
  63. package/dist/runtime/components/NavbarDivider.vue +24 -33
  64. package/dist/runtime/components/NavbarDivider.vue.d.ts +101 -0
  65. package/dist/runtime/components/NavbarSection.vue +24 -33
  66. package/dist/runtime/components/NavbarSection.vue.d.ts +101 -0
  67. package/dist/runtime/components/NavbarSpacer.vue +24 -33
  68. package/dist/runtime/components/NavbarSpacer.vue.d.ts +101 -0
  69. package/dist/runtime/components/NavigationMenu.vue +152 -216
  70. package/dist/runtime/components/NavigationMenu.vue.d.ts +824 -0
  71. package/dist/runtime/components/OverlayProvider.vue +13 -17
  72. package/dist/runtime/components/OverlayProvider.vue.d.ts +2 -0
  73. package/dist/runtime/components/Popover.vue +81 -81
  74. package/dist/runtime/components/Popover.vue.d.ts +147 -0
  75. package/dist/runtime/components/Progress.vue +109 -136
  76. package/dist/runtime/components/Progress.vue.d.ts +592 -0
  77. package/dist/runtime/components/RadioGroup.vue +120 -134
  78. package/dist/runtime/components/RadioGroup.vue.d.ts +723 -0
  79. package/dist/runtime/components/Range.vue +94 -85
  80. package/dist/runtime/components/Range.vue.d.ts +417 -0
  81. package/dist/runtime/components/Select.vue +212 -260
  82. package/dist/runtime/components/Select.vue.d.ts +1200 -0
  83. package/dist/runtime/components/SelectMenu.vue +272 -366
  84. package/dist/runtime/components/SelectMenu.vue.d.ts +1298 -0
  85. package/dist/runtime/components/Separator.vue +61 -71
  86. package/dist/runtime/components/Separator.vue.d.ts +400 -0
  87. package/dist/runtime/components/Sidebar.vue +24 -33
  88. package/dist/runtime/components/Sidebar.vue.d.ts +101 -0
  89. package/dist/runtime/components/SidebarBody.vue +30 -38
  90. package/dist/runtime/components/SidebarBody.vue.d.ts +90 -0
  91. package/dist/runtime/components/SidebarFooter.vue +24 -33
  92. package/dist/runtime/components/SidebarFooter.vue.d.ts +101 -0
  93. package/dist/runtime/components/SidebarHeader.vue +24 -33
  94. package/dist/runtime/components/SidebarHeader.vue.d.ts +101 -0
  95. package/dist/runtime/components/SidebarHeading.vue +24 -33
  96. package/dist/runtime/components/SidebarHeading.vue.d.ts +101 -0
  97. package/dist/runtime/components/SidebarLayout.vue +40 -70
  98. package/dist/runtime/components/SidebarLayout.vue.d.ts +222 -0
  99. package/dist/runtime/components/SidebarSection.vue +24 -33
  100. package/dist/runtime/components/SidebarSection.vue.d.ts +101 -0
  101. package/dist/runtime/components/SidebarSpacer.vue +24 -33
  102. package/dist/runtime/components/SidebarSpacer.vue.d.ts +101 -0
  103. package/dist/runtime/components/Skeleton.vue +17 -22
  104. package/dist/runtime/components/Skeleton.vue.d.ts +26 -0
  105. package/dist/runtime/components/Slideover.vue +108 -131
  106. package/dist/runtime/components/Slideover.vue.d.ts +360 -0
  107. package/dist/runtime/components/StackedLayout.vue +40 -73
  108. package/dist/runtime/components/StackedLayout.vue.d.ts +192 -0
  109. package/dist/runtime/components/Switch.vue +100 -95
  110. package/dist/runtime/components/Switch.vue.d.ts +587 -0
  111. package/dist/runtime/components/Tabs.vue +83 -105
  112. package/dist/runtime/components/Tabs.vue.d.ts +453 -0
  113. package/dist/runtime/components/Textarea.vue +177 -201
  114. package/dist/runtime/components/Textarea.vue.d.ts +601 -0
  115. package/dist/runtime/components/Toast.vue +94 -105
  116. package/dist/runtime/components/Toast.vue.d.ts +438 -0
  117. package/dist/runtime/components/Toaster.vue +94 -111
  118. package/dist/runtime/components/Toaster.vue.d.ts +219 -0
  119. package/dist/runtime/components/Tooltip.vue +78 -64
  120. package/dist/runtime/components/Tooltip.vue.d.ts +186 -0
  121. package/dist/runtime/components/content/TableWrapper.vue +58 -70
  122. package/dist/runtime/components/content/TableWrapper.vue.d.ts +237 -0
  123. package/dist/runtime/composables/useAvatarGroup.d.ts +1 -1
  124. package/dist/runtime/composables/useButtonGroup.d.ts +2 -2
  125. package/dist/runtime/composables/useComponentIcons.d.ts +1 -1
  126. package/dist/runtime/composables/useFormField.d.ts +1 -1
  127. package/dist/runtime/prose/A.vue +18 -23
  128. package/dist/runtime/prose/A.vue.d.ts +84 -0
  129. package/dist/runtime/prose/Blockquote.vue +18 -23
  130. package/dist/runtime/prose/Blockquote.vue.d.ts +84 -0
  131. package/dist/runtime/prose/Code.vue +23 -31
  132. package/dist/runtime/prose/Code.vue.d.ts +97 -0
  133. package/dist/runtime/prose/Em.vue +18 -23
  134. package/dist/runtime/prose/Em.vue.d.ts +84 -0
  135. package/dist/runtime/prose/H1.vue +18 -23
  136. package/dist/runtime/prose/H1.vue.d.ts +97 -0
  137. package/dist/runtime/prose/H2.vue +18 -23
  138. package/dist/runtime/prose/H2.vue.d.ts +123 -0
  139. package/dist/runtime/prose/H3.vue +18 -23
  140. package/dist/runtime/prose/H3.vue.d.ts +123 -0
  141. package/dist/runtime/prose/H4.vue +18 -23
  142. package/dist/runtime/prose/H4.vue.d.ts +123 -0
  143. package/dist/runtime/prose/H5.vue +18 -23
  144. package/dist/runtime/prose/H5.vue.d.ts +123 -0
  145. package/dist/runtime/prose/H6.vue +18 -23
  146. package/dist/runtime/prose/H6.vue.d.ts +123 -0
  147. package/dist/runtime/prose/Hr.vue +18 -19
  148. package/dist/runtime/prose/Hr.vue.d.ts +74 -0
  149. package/dist/runtime/prose/Img.vue +18 -23
  150. package/dist/runtime/prose/Img.vue.d.ts +77 -0
  151. package/dist/runtime/prose/Li.vue +18 -23
  152. package/dist/runtime/prose/Li.vue.d.ts +84 -0
  153. package/dist/runtime/prose/Ol.vue +18 -23
  154. package/dist/runtime/prose/Ol.vue.d.ts +84 -0
  155. package/dist/runtime/prose/P.vue +18 -23
  156. package/dist/runtime/prose/P.vue.d.ts +84 -0
  157. package/dist/runtime/prose/Pre.vue +28 -33
  158. package/dist/runtime/prose/Pre.vue.d.ts +117 -0
  159. package/dist/runtime/prose/Strong.vue +18 -23
  160. package/dist/runtime/prose/Strong.vue.d.ts +84 -0
  161. package/dist/runtime/prose/Table.vue +44 -54
  162. package/dist/runtime/prose/Table.vue.d.ts +144 -0
  163. package/dist/runtime/prose/Tbody.vue +18 -23
  164. package/dist/runtime/prose/Tbody.vue.d.ts +84 -0
  165. package/dist/runtime/prose/Td.vue +18 -23
  166. package/dist/runtime/prose/Td.vue.d.ts +84 -0
  167. package/dist/runtime/prose/Th.vue +18 -23
  168. package/dist/runtime/prose/Th.vue.d.ts +84 -0
  169. package/dist/runtime/prose/Thead.vue +18 -23
  170. package/dist/runtime/prose/Thead.vue.d.ts +84 -0
  171. package/dist/runtime/prose/Tr.vue +18 -23
  172. package/dist/runtime/prose/Tr.vue.d.ts +84 -0
  173. package/dist/runtime/prose/Ul.vue +18 -23
  174. package/dist/runtime/prose/Ul.vue.d.ts +84 -0
  175. package/dist/runtime/vue/components/Link.vue +201 -202
  176. package/dist/runtime/vue/components/Link.vue.d.ts +129 -0
  177. package/dist/runtime/vue/stubs.d.ts +3 -3
  178. package/dist/shared/{b24ui-nuxt.C1lGF53R.mjs → b24ui-nuxt.CS9Lf0os.mjs} +4 -3
  179. package/dist/types.d.mts +3 -5
  180. package/dist/unplugin.mjs +1 -1
  181. package/dist/vite.mjs +1 -1
  182. package/package.json +59 -32
  183. package/dist/meta.cjs +0 -72220
  184. package/dist/meta.d.cts +0 -72218
  185. package/dist/meta.d.ts +0 -72218
  186. package/dist/module.cjs +0 -59
  187. package/dist/module.d.cts +0 -15
  188. package/dist/module.d.ts +0 -15
  189. package/dist/shared/b24ui-nuxt.BVg3rkkG.cjs +0 -7720
  190. package/dist/types.d.ts +0 -7
  191. package/dist/unplugin.cjs +0 -236
  192. package/dist/unplugin.d.cts +0 -33
  193. package/dist/unplugin.d.ts +0 -33
  194. package/dist/vite.cjs +0 -21
  195. package/dist/vite.d.cts +0 -14
  196. package/dist/vite.d.ts +0 -14
package/dist/module.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
- "name": "b24ui",
2
+ "name": "@bitrix24/b24ui-nuxt",
3
+ "version": "0.5.10",
4
+ "docs": "https://bitrix24.github.io/b24ui/guide/installation-nuxt-app.html",
3
5
  "configKey": "b24ui",
4
6
  "compatibility": {
5
7
  "nuxt": ">=3.16.0"
6
8
  },
7
- "docs": "https://bitrix24.github.io/b24ui/guide/installation-nuxt-app.html",
8
- "version": "0.5.9",
9
9
  "builder": {
10
- "@nuxt/module-builder": "0.8.4",
11
- "unbuild": "2.0.0"
10
+ "@nuxt/module-builder": "1.0.0",
11
+ "unbuild": "3.5.0"
12
12
  }
13
13
  }
package/dist/module.mjs CHANGED
@@ -1,17 +1,21 @@
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.C1lGF53R.mjs';
3
+ import { d as defaultOptions, a as getDefaultUiConfig, b as addTemplates } from './shared/b24ui-nuxt.CS9Lf0os.mjs';
4
4
  import 'node:url';
5
5
  import 'scule';
6
6
 
7
+ const name = "@bitrix24/b24ui-nuxt";
8
+ const version = "0.5.10";
9
+
7
10
  const module = defineNuxtModule({
8
11
  meta: {
9
- name: "b24ui",
12
+ name,
13
+ version,
14
+ docs: "https://bitrix24.github.io/b24ui/guide/installation-nuxt-app.html",
10
15
  configKey: "b24ui",
11
16
  compatibility: {
12
17
  nuxt: ">=3.16.0"
13
- },
14
- docs: "https://bitrix24.github.io/b24ui/guide/installation-nuxt-app.html"
18
+ }
15
19
  },
16
20
  defaults: defaultOptions,
17
21
  async setup(options, nuxt) {
@@ -27,9 +31,9 @@ const module = defineNuxtModule({
27
31
  } else {
28
32
  nuxt.options.postcss.plugins["@tailwindcss/postcss"] = {};
29
33
  }
30
- async function registerModule(name, key, options2) {
31
- if (!hasNuxtModule(name)) {
32
- await installModule(name, options2);
34
+ async function registerModule(name2, key, options2) {
35
+ if (!hasNuxtModule(name2)) {
36
+ await installModule(name2, options2);
33
37
  } else {
34
38
  nuxt.options[key] = defu(nuxt.options[key], options2);
35
39
  }
@@ -1,61 +1,54 @@
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 { useComponentIcons } from "../composables/useComponentIcons";
12
+ defineOptions({ inheritAttrs: false });
13
+ const props = defineProps({
14
+ as: {
15
+ type: null,
16
+ required: false,
17
+ default: "div"
18
+ },
19
+ description: {
20
+ type: String,
21
+ required: false
22
+ },
23
+ angle: {
24
+ type: null,
25
+ required: false,
26
+ default: "bottom"
27
+ },
28
+ class: {
29
+ type: null,
30
+ required: false
31
+ },
32
+ b24ui: {
33
+ type: Object,
34
+ required: false
35
+ },
36
+ icon: {
37
+ type: [Function, Object],
38
+ required: false
39
+ },
40
+ avatar: {
41
+ type: Object,
42
+ required: false
43
+ }
44
+ });
45
+ const slots = defineSlots();
52
46
  const { isLeading, leadingIconName } = useComponentIcons(
53
47
  computed(() => ({ ...props, loading: false }))
54
- )
55
-
48
+ );
56
49
  const b24ui = computed(() => advice({
57
50
  angle: props.angle
58
- }))
51
+ }));
59
52
  </script>
60
53
 
61
54
  <template>
@@ -69,7 +62,7 @@ const b24ui = computed(() => advice({
69
62
  />
70
63
  <B24Avatar
71
64
  v-else-if="!!avatar"
72
- :size="((props.b24ui?.leadingAvatarSize || b24ui.leadingAvatarSize()) as AvatarProps['size'])"
65
+ :size="props.b24ui?.leadingAvatarSize || b24ui.leadingAvatarSize()"
73
66
  v-bind="avatar"
74
67
  :class="b24ui.leadingAvatar({ class: props.b24ui?.leadingAvatar })"
75
68
  />
@@ -80,7 +73,7 @@ const b24ui = computed(() => advice({
80
73
  :class="b24ui.leading({ class: props.b24ui?.leading })"
81
74
  >
82
75
  <B24Avatar
83
- :size="((props.b24ui?.leadingAvatarSize || b24ui.leadingAvatarSize()) as AvatarProps['size'])"
76
+ :size="props.b24ui?.leadingAvatarSize || b24ui.leadingAvatarSize()"
84
77
  :icon="PersonIcon"
85
78
  alt="Person"
86
79
  :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,78 @@
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 { useLocale } from "../composables/useLocale";
12
+ const props = defineProps({
13
+ as: {
14
+ type: null,
15
+ required: false
16
+ },
17
+ title: {
18
+ type: String,
19
+ required: false
20
+ },
21
+ description: {
22
+ type: String,
23
+ required: false
24
+ },
25
+ icon: {
26
+ type: [Function, Object],
27
+ required: false
28
+ },
29
+ avatar: {
30
+ type: Object,
31
+ required: false
32
+ },
33
+ color: {
34
+ type: null,
35
+ required: false
36
+ },
37
+ orientation: {
38
+ type: null,
39
+ required: false,
40
+ default: "vertical"
41
+ },
42
+ size: {
43
+ type: null,
44
+ required: false
45
+ },
46
+ actions: {
47
+ type: Array,
48
+ required: false
49
+ },
50
+ close: {
51
+ type: [Boolean, Object],
52
+ required: false
53
+ },
54
+ closeIcon: {
55
+ type: [Function, Object],
56
+ required: false
57
+ },
58
+ class: {
59
+ type: null,
60
+ required: false
61
+ },
62
+ b24ui: {
63
+ type: Object,
64
+ required: false
65
+ }
66
+ });
67
+ const emits = defineEmits(["update:open"]);
68
+ const slots = defineSlots();
69
+ const { t } = useLocale();
95
70
  const b24ui = computed(() => alert({
96
71
  color: props.color,
97
72
  size: props.size,
98
73
  orientation: props.orientation,
99
74
  title: !!props.title || !!slots.title
100
- }))
75
+ }));
101
76
  </script>
102
77
 
103
78
  <template>
@@ -108,7 +83,7 @@ const b24ui = computed(() => alert({
108
83
  v-if="icon"
109
84
  :class="b24ui.icon({ class: props.b24ui?.icon })"
110
85
  />
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 })" />
86
+ <B24Avatar v-else-if="avatar" :size="props.b24ui?.avatarSize || b24ui.avatarSize()" v-bind="avatar" :class="b24ui.avatar({ class: props.b24ui?.avatar })" />
112
87
  </slot>
113
88
 
114
89
  <div :class="b24ui.wrapper({ class: props.b24ui?.wrapper })">
@@ -130,7 +105,7 @@ const b24ui = computed(() => alert({
130
105
  </div>
131
106
  </div>
132
107
 
133
- <div v-if="(orientation === 'horizontal' && actions?.length) || close" :class="b24ui.actions({ class: props.b24ui?.actions, orientation: 'horizontal' })">
108
+ <div v-if="orientation === 'horizontal' && actions?.length || close" :class="b24ui.actions({ class: props.b24ui?.actions, orientation: 'horizontal' })">
134
109
  <template v-if="orientation === 'horizontal' && actions?.length">
135
110
  <slot name="actions">
136
111
  <B24Button v-for="(action, index) in actions" :key="index" size="xs" v-bind="action" />
@@ -144,7 +119,7 @@ const b24ui = computed(() => alert({
144
119
  size="xs"
145
120
  color="link"
146
121
  :aria-label="t('alert.close')"
147
- v-bind="(typeof close === 'object' ? close as Partial<ButtonProps> : {})"
122
+ v-bind="typeof close === 'object' ? close : {}"
148
123
  :class="b24ui.close({ class: props.b24ui?.close })"
149
124
  @click="emits('update:open', false)"
150
125
  />