@bitrix24/b24ui-nuxt 0.6.0 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/.nuxt/b24ui/advice.ts +10 -2
  2. package/.nuxt/b24ui/alert.ts +10 -2
  3. package/.nuxt/b24ui/avatar-group.ts +10 -2
  4. package/.nuxt/b24ui/avatar.ts +10 -2
  5. package/.nuxt/b24ui/badge.ts +10 -2
  6. package/.nuxt/b24ui/button-group.ts +10 -2
  7. package/.nuxt/b24ui/button.ts +16 -6
  8. package/.nuxt/b24ui/calendar.ts +10 -2
  9. package/.nuxt/b24ui/checkbox.ts +10 -2
  10. package/.nuxt/b24ui/chip.ts +10 -2
  11. package/.nuxt/b24ui/collapsible.ts +10 -2
  12. package/.nuxt/b24ui/container.ts +10 -2
  13. package/.nuxt/b24ui/countdown.ts +10 -2
  14. package/.nuxt/b24ui/description-list.ts +10 -2
  15. package/.nuxt/b24ui/dropdown-menu.ts +10 -2
  16. package/.nuxt/b24ui/form-field.ts +10 -2
  17. package/.nuxt/b24ui/form.ts +10 -2
  18. package/.nuxt/b24ui/input-menu.ts +10 -2
  19. package/.nuxt/b24ui/input-number.ts +10 -2
  20. package/.nuxt/b24ui/input.ts +10 -2
  21. package/.nuxt/b24ui/kbd.ts +10 -2
  22. package/.nuxt/b24ui/link.ts +10 -2
  23. package/.nuxt/b24ui/modal.ts +10 -2
  24. package/.nuxt/b24ui/navbar-divider.ts +10 -2
  25. package/.nuxt/b24ui/navbar-section.ts +10 -2
  26. package/.nuxt/b24ui/navbar-spacer.ts +10 -2
  27. package/.nuxt/b24ui/navbar.ts +10 -2
  28. package/.nuxt/b24ui/navigation-menu.ts +10 -2
  29. package/.nuxt/b24ui/popover.ts +10 -2
  30. package/.nuxt/b24ui/progress.ts +10 -2
  31. package/.nuxt/b24ui/radio-group.ts +10 -2
  32. package/.nuxt/b24ui/range.ts +10 -2
  33. package/.nuxt/b24ui/select-menu.ts +10 -2
  34. package/.nuxt/b24ui/select.ts +10 -2
  35. package/.nuxt/b24ui/separator.ts +10 -2
  36. package/.nuxt/b24ui/sidebar-body.ts +10 -2
  37. package/.nuxt/b24ui/sidebar-footer.ts +10 -2
  38. package/.nuxt/b24ui/sidebar-header.ts +10 -2
  39. package/.nuxt/b24ui/sidebar-heading.ts +10 -2
  40. package/.nuxt/b24ui/sidebar-layout.ts +10 -2
  41. package/.nuxt/b24ui/sidebar-section.ts +10 -2
  42. package/.nuxt/b24ui/sidebar-spacer.ts +10 -2
  43. package/.nuxt/b24ui/sidebar.ts +10 -2
  44. package/.nuxt/b24ui/skeleton.ts +10 -2
  45. package/.nuxt/b24ui/slideover.ts +10 -2
  46. package/.nuxt/b24ui/stacked-layout.ts +10 -2
  47. package/.nuxt/b24ui/switch.ts +10 -2
  48. package/.nuxt/b24ui/tabs.ts +10 -2
  49. package/.nuxt/b24ui/textarea.ts +10 -2
  50. package/.nuxt/b24ui/toast.ts +10 -2
  51. package/.nuxt/b24ui/toaster.ts +10 -2
  52. package/.nuxt/b24ui/tooltip.ts +10 -2
  53. package/cli/templates.mjs +19 -15
  54. package/dist/meta.d.mts +1807 -3391
  55. package/dist/meta.mjs +1807 -3391
  56. package/dist/module.json +1 -1
  57. package/dist/module.mjs +2 -2
  58. package/dist/runtime/components/Advice.vue +5 -6
  59. package/dist/runtime/components/Advice.vue.d.ts +7 -121
  60. package/dist/runtime/components/Alert.vue +5 -6
  61. package/dist/runtime/components/Alert.vue.d.ts +12 -379
  62. package/dist/runtime/components/Avatar.vue +5 -6
  63. package/dist/runtime/components/Avatar.vue.d.ts +6 -225
  64. package/dist/runtime/components/AvatarGroup.vue +5 -6
  65. package/dist/runtime/components/AvatarGroup.vue.d.ts +6 -170
  66. package/dist/runtime/components/Badge.vue +5 -6
  67. package/dist/runtime/components/Badge.vue.d.ts +8 -447
  68. package/dist/runtime/components/Button.vue +16 -14
  69. package/dist/runtime/components/Button.vue.d.ts +10 -535
  70. package/dist/runtime/components/ButtonGroup.vue +11 -6
  71. package/dist/runtime/components/ButtonGroup.vue.d.ts +8 -61
  72. package/dist/runtime/components/Calendar.vue +4 -5
  73. package/dist/runtime/components/Calendar.vue.d.ts +7 -337
  74. package/dist/runtime/components/Checkbox.vue +5 -6
  75. package/dist/runtime/components/Checkbox.vue.d.ts +7 -306
  76. package/dist/runtime/components/Chip.vue +5 -6
  77. package/dist/runtime/components/Chip.vue.d.ts +8 -202
  78. package/dist/runtime/components/Collapsible.vue +6 -6
  79. package/dist/runtime/components/Collapsible.vue.d.ts +5 -73
  80. package/dist/runtime/components/Container.vue +6 -5
  81. package/dist/runtime/components/Countdown.vue +6 -7
  82. package/dist/runtime/components/Countdown.vue.d.ts +7 -241
  83. package/dist/runtime/components/DescriptionList.vue +5 -6
  84. package/dist/runtime/components/DescriptionList.vue.d.ts +8 -278
  85. package/dist/runtime/components/DropdownMenu.vue +4 -5
  86. package/dist/runtime/components/DropdownMenu.vue.d.ts +9 -409
  87. package/dist/runtime/components/DropdownMenuContent.vue +1 -3
  88. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +9 -186
  89. package/dist/runtime/components/Form.vue +8 -6
  90. package/dist/runtime/components/Form.vue.d.ts +6 -0
  91. package/dist/runtime/components/FormField.vue +5 -6
  92. package/dist/runtime/components/FormField.vue.d.ts +6 -215
  93. package/dist/runtime/components/Input.vue +4 -5
  94. package/dist/runtime/components/Input.vue.d.ts +8 -628
  95. package/dist/runtime/components/InputMenu.vue +4 -5
  96. package/dist/runtime/components/InputMenu.vue.d.ts +19 -1185
  97. package/dist/runtime/components/InputNumber.vue +4 -5
  98. package/dist/runtime/components/InputNumber.vue.d.ts +10 -430
  99. package/dist/runtime/components/Kbd.vue +6 -5
  100. package/dist/runtime/components/Kbd.vue.d.ts +6 -60
  101. package/dist/runtime/components/Link.vue +12 -11
  102. package/dist/runtime/components/Modal.vue +5 -6
  103. package/dist/runtime/components/Modal.vue.d.ts +13 -216
  104. package/dist/runtime/components/Navbar.vue +6 -6
  105. package/dist/runtime/components/Navbar.vue.d.ts +5 -60
  106. package/dist/runtime/components/NavbarDivider.vue +6 -6
  107. package/dist/runtime/components/NavbarDivider.vue.d.ts +5 -60
  108. package/dist/runtime/components/NavbarSection.vue +6 -6
  109. package/dist/runtime/components/NavbarSection.vue.d.ts +5 -60
  110. package/dist/runtime/components/NavbarSpacer.vue +6 -6
  111. package/dist/runtime/components/NavbarSpacer.vue.d.ts +5 -60
  112. package/dist/runtime/components/NavigationMenu.vue +4 -5
  113. package/dist/runtime/components/NavigationMenu.vue.d.ts +11 -676
  114. package/dist/runtime/components/Popover.vue +5 -6
  115. package/dist/runtime/components/Popover.vue.d.ts +7 -75
  116. package/dist/runtime/components/Progress.vue +5 -6
  117. package/dist/runtime/components/Progress.vue.d.ts +11 -500
  118. package/dist/runtime/components/RadioGroup.vue +5 -6
  119. package/dist/runtime/components/RadioGroup.vue.d.ts +9 -644
  120. package/dist/runtime/components/Range.vue +5 -6
  121. package/dist/runtime/components/Range.vue.d.ts +7 -351
  122. package/dist/runtime/components/Select.vue +4 -5
  123. package/dist/runtime/components/Select.vue.d.ts +15 -1046
  124. package/dist/runtime/components/SelectMenu.vue +4 -5
  125. package/dist/runtime/components/SelectMenu.vue.d.ts +17 -1098
  126. package/dist/runtime/components/Separator.vue +5 -6
  127. package/dist/runtime/components/Separator.vue.d.ts +9 -332
  128. package/dist/runtime/components/Sidebar.vue +6 -6
  129. package/dist/runtime/components/Sidebar.vue.d.ts +5 -60
  130. package/dist/runtime/components/SidebarBody.vue +5 -6
  131. package/dist/runtime/components/SidebarBody.vue.d.ts +5 -42
  132. package/dist/runtime/components/SidebarFooter.vue +6 -6
  133. package/dist/runtime/components/SidebarFooter.vue.d.ts +5 -60
  134. package/dist/runtime/components/SidebarHeader.vue +6 -6
  135. package/dist/runtime/components/SidebarHeader.vue.d.ts +5 -60
  136. package/dist/runtime/components/SidebarHeading.vue +6 -6
  137. package/dist/runtime/components/SidebarHeading.vue.d.ts +5 -60
  138. package/dist/runtime/components/SidebarLayout.vue +6 -7
  139. package/dist/runtime/components/SidebarLayout.vue.d.ts +5 -162
  140. package/dist/runtime/components/SidebarSection.vue +6 -6
  141. package/dist/runtime/components/SidebarSection.vue.d.ts +5 -60
  142. package/dist/runtime/components/SidebarSpacer.vue +6 -6
  143. package/dist/runtime/components/SidebarSpacer.vue.d.ts +5 -60
  144. package/dist/runtime/components/Skeleton.vue +6 -5
  145. package/dist/runtime/components/Slideover.vue +5 -6
  146. package/dist/runtime/components/Slideover.vue.d.ts +15 -248
  147. package/dist/runtime/components/StackedLayout.vue +6 -7
  148. package/dist/runtime/components/StackedLayout.vue.d.ts +5 -132
  149. package/dist/runtime/components/Switch.vue +4 -5
  150. package/dist/runtime/components/Switch.vue.d.ts +7 -517
  151. package/dist/runtime/components/Tabs.vue +8 -5
  152. package/dist/runtime/components/Tabs.vue.d.ts +18 -367
  153. package/dist/runtime/components/Textarea.vue +4 -5
  154. package/dist/runtime/components/Textarea.vue.d.ts +7 -467
  155. package/dist/runtime/components/Toast.vue +5 -6
  156. package/dist/runtime/components/Toast.vue.d.ts +11 -354
  157. package/dist/runtime/components/Toaster.vue +6 -7
  158. package/dist/runtime/components/Toaster.vue.d.ts +7 -156
  159. package/dist/runtime/components/Tooltip.vue +5 -6
  160. package/dist/runtime/components/Tooltip.vue.d.ts +5 -126
  161. package/dist/runtime/components/content/TableWrapper.vue +5 -6
  162. package/dist/runtime/components/content/TableWrapper.vue.d.ts +6 -160
  163. package/dist/runtime/inertia/components/Link.vue +153 -0
  164. package/dist/runtime/inertia/components/Link.vue.d.ts +97 -0
  165. package/dist/runtime/inertia/stubs.d.ts +45 -0
  166. package/dist/runtime/inertia/stubs.js +84 -0
  167. package/dist/runtime/prose/A.vue +10 -9
  168. package/dist/runtime/prose/A.vue.d.ts +8 -65
  169. package/dist/runtime/prose/Blockquote.vue +8 -9
  170. package/dist/runtime/prose/Blockquote.vue.d.ts +8 -65
  171. package/dist/runtime/prose/Code.vue +6 -6
  172. package/dist/runtime/prose/Code.vue.d.ts +9 -75
  173. package/dist/runtime/prose/Em.vue +10 -9
  174. package/dist/runtime/prose/Em.vue.d.ts +8 -65
  175. package/dist/runtime/prose/H1.vue +8 -9
  176. package/dist/runtime/prose/H1.vue.d.ts +8 -78
  177. package/dist/runtime/prose/H2.vue +8 -9
  178. package/dist/runtime/prose/H2.vue.d.ts +8 -104
  179. package/dist/runtime/prose/H3.vue +8 -9
  180. package/dist/runtime/prose/H3.vue.d.ts +8 -104
  181. package/dist/runtime/prose/H4.vue +8 -9
  182. package/dist/runtime/prose/H4.vue.d.ts +8 -104
  183. package/dist/runtime/prose/H5.vue +8 -9
  184. package/dist/runtime/prose/H5.vue.d.ts +8 -104
  185. package/dist/runtime/prose/H6.vue +8 -9
  186. package/dist/runtime/prose/H6.vue.d.ts +8 -104
  187. package/dist/runtime/prose/Hr.vue +7 -9
  188. package/dist/runtime/prose/Hr.vue.d.ts +7 -62
  189. package/dist/runtime/prose/Img.vue +7 -9
  190. package/dist/runtime/prose/Img.vue.d.ts +7 -65
  191. package/dist/runtime/prose/Li.vue +8 -9
  192. package/dist/runtime/prose/Li.vue.d.ts +8 -65
  193. package/dist/runtime/prose/Ol.vue +8 -9
  194. package/dist/runtime/prose/Ol.vue.d.ts +8 -65
  195. package/dist/runtime/prose/P.vue +8 -9
  196. package/dist/runtime/prose/P.vue.d.ts +8 -65
  197. package/dist/runtime/prose/Pre.vue +7 -6
  198. package/dist/runtime/prose/Pre.vue.d.ts +10 -80
  199. package/dist/runtime/prose/Strong.vue +8 -9
  200. package/dist/runtime/prose/Strong.vue.d.ts +8 -65
  201. package/dist/runtime/prose/Table.vue +8 -9
  202. package/dist/runtime/prose/Table.vue.d.ts +10 -80
  203. package/dist/runtime/prose/Tbody.vue +8 -9
  204. package/dist/runtime/prose/Tbody.vue.d.ts +8 -65
  205. package/dist/runtime/prose/Td.vue +8 -9
  206. package/dist/runtime/prose/Td.vue.d.ts +8 -65
  207. package/dist/runtime/prose/Th.vue +8 -9
  208. package/dist/runtime/prose/Th.vue.d.ts +8 -65
  209. package/dist/runtime/prose/Thead.vue +8 -9
  210. package/dist/runtime/prose/Thead.vue.d.ts +8 -65
  211. package/dist/runtime/prose/Tr.vue +8 -9
  212. package/dist/runtime/prose/Tr.vue.d.ts +8 -65
  213. package/dist/runtime/prose/Ul.vue +8 -9
  214. package/dist/runtime/prose/Ul.vue.d.ts +8 -65
  215. package/dist/runtime/types/form.d.ts +1 -0
  216. package/dist/runtime/types/utils.d.ts +47 -7
  217. package/dist/runtime/utils/tv.js +2 -2
  218. package/dist/runtime/vue/components/Link.vue +13 -12
  219. package/dist/runtime/vue/stubs.d.ts +1 -1
  220. package/dist/shared/{b24ui-nuxt.BA6Y2FnC.mjs → b24ui-nuxt.wBs9vEU5.mjs} +27 -2
  221. package/dist/unplugin.d.mts +4 -0
  222. package/dist/unplugin.mjs +12 -4
  223. package/dist/vite.mjs +1 -1
  224. package/package.json +21 -15
@@ -1,189 +1,10 @@
1
+ import { DropdownMenu } from 'reka-ui/namespaced';
1
2
  import type { DropdownMenuContentProps as RekaDropdownMenuContentProps } from 'reka-ui';
3
+ import type { AppConfig } from '@nuxt/schema';
4
+ import type theme from '#build/b24ui/dropdown-menu';
2
5
  import type { DropdownMenuItem, DropdownMenuSlots, IconComponent } from '../types';
3
- import type { ArrayOrNested, NestedItem } from '../types/utils';
4
- declare const _dropdownMenu: {
5
- content: (slotProps?: ({
6
- size?: "md" | "xs" | "sm" | "lg" | undefined;
7
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
8
- active?: boolean | undefined;
9
- loading?: boolean | undefined;
10
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
11
- arrow: (slotProps?: ({
12
- size?: "md" | "xs" | "sm" | "lg" | undefined;
13
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
14
- active?: boolean | undefined;
15
- loading?: boolean | undefined;
16
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
17
- group: (slotProps?: ({
18
- size?: "md" | "xs" | "sm" | "lg" | undefined;
19
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
20
- active?: boolean | undefined;
21
- loading?: boolean | undefined;
22
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
23
- label: (slotProps?: ({
24
- size?: "md" | "xs" | "sm" | "lg" | undefined;
25
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
26
- active?: boolean | undefined;
27
- loading?: boolean | undefined;
28
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
29
- separator: (slotProps?: ({
30
- size?: "md" | "xs" | "sm" | "lg" | undefined;
31
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
32
- active?: boolean | undefined;
33
- loading?: boolean | undefined;
34
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
35
- item: (slotProps?: ({
36
- size?: "md" | "xs" | "sm" | "lg" | undefined;
37
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
38
- active?: boolean | undefined;
39
- loading?: boolean | undefined;
40
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
41
- itemLeadingIcon: (slotProps?: ({
42
- size?: "md" | "xs" | "sm" | "lg" | undefined;
43
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
44
- active?: boolean | undefined;
45
- loading?: boolean | undefined;
46
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
47
- itemLeadingAvatar: (slotProps?: ({
48
- size?: "md" | "xs" | "sm" | "lg" | undefined;
49
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
50
- active?: boolean | undefined;
51
- loading?: boolean | undefined;
52
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
53
- itemLeadingAvatarSize: (slotProps?: ({
54
- size?: "md" | "xs" | "sm" | "lg" | undefined;
55
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
56
- active?: boolean | undefined;
57
- loading?: boolean | undefined;
58
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
59
- itemTrailing: (slotProps?: ({
60
- size?: "md" | "xs" | "sm" | "lg" | undefined;
61
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
62
- active?: boolean | undefined;
63
- loading?: boolean | undefined;
64
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
65
- itemTrailingIcon: (slotProps?: ({
66
- size?: "md" | "xs" | "sm" | "lg" | undefined;
67
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
68
- active?: boolean | undefined;
69
- loading?: boolean | undefined;
70
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
71
- itemTrailingKbds: (slotProps?: ({
72
- size?: "md" | "xs" | "sm" | "lg" | undefined;
73
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
74
- active?: boolean | undefined;
75
- loading?: boolean | undefined;
76
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
77
- itemTrailingKbdsSize: (slotProps?: ({
78
- size?: "md" | "xs" | "sm" | "lg" | undefined;
79
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
80
- active?: boolean | undefined;
81
- loading?: boolean | undefined;
82
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
83
- itemLabel: (slotProps?: ({
84
- size?: "md" | "xs" | "sm" | "lg" | undefined;
85
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
86
- active?: boolean | undefined;
87
- loading?: boolean | undefined;
88
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
89
- itemLabelExternalIcon: (slotProps?: ({
90
- size?: "md" | "xs" | "sm" | "lg" | undefined;
91
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
92
- active?: boolean | undefined;
93
- loading?: boolean | undefined;
94
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
95
- } & {
96
- content: (slotProps?: ({
97
- size?: "md" | "xs" | "sm" | "lg" | undefined;
98
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
99
- active?: boolean | undefined;
100
- loading?: boolean | undefined;
101
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
102
- arrow: (slotProps?: ({
103
- size?: "md" | "xs" | "sm" | "lg" | undefined;
104
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
105
- active?: boolean | undefined;
106
- loading?: boolean | undefined;
107
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
108
- group: (slotProps?: ({
109
- size?: "md" | "xs" | "sm" | "lg" | undefined;
110
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
111
- active?: boolean | undefined;
112
- loading?: boolean | undefined;
113
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
114
- label: (slotProps?: ({
115
- size?: "md" | "xs" | "sm" | "lg" | undefined;
116
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
117
- active?: boolean | undefined;
118
- loading?: boolean | undefined;
119
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
120
- separator: (slotProps?: ({
121
- size?: "md" | "xs" | "sm" | "lg" | undefined;
122
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
123
- active?: boolean | undefined;
124
- loading?: boolean | undefined;
125
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
126
- item: (slotProps?: ({
127
- size?: "md" | "xs" | "sm" | "lg" | undefined;
128
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
129
- active?: boolean | undefined;
130
- loading?: boolean | undefined;
131
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
132
- itemLeadingIcon: (slotProps?: ({
133
- size?: "md" | "xs" | "sm" | "lg" | undefined;
134
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
135
- active?: boolean | undefined;
136
- loading?: boolean | undefined;
137
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
138
- itemLeadingAvatar: (slotProps?: ({
139
- size?: "md" | "xs" | "sm" | "lg" | undefined;
140
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
141
- active?: boolean | undefined;
142
- loading?: boolean | undefined;
143
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
144
- itemLeadingAvatarSize: (slotProps?: ({
145
- size?: "md" | "xs" | "sm" | "lg" | undefined;
146
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
147
- active?: boolean | undefined;
148
- loading?: boolean | undefined;
149
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
150
- itemTrailing: (slotProps?: ({
151
- size?: "md" | "xs" | "sm" | "lg" | undefined;
152
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
153
- active?: boolean | undefined;
154
- loading?: boolean | undefined;
155
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
156
- itemTrailingIcon: (slotProps?: ({
157
- size?: "md" | "xs" | "sm" | "lg" | undefined;
158
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
159
- active?: boolean | undefined;
160
- loading?: boolean | undefined;
161
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
162
- itemTrailingKbds: (slotProps?: ({
163
- size?: "md" | "xs" | "sm" | "lg" | undefined;
164
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
165
- active?: boolean | undefined;
166
- loading?: boolean | undefined;
167
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
168
- itemTrailingKbdsSize: (slotProps?: ({
169
- size?: "md" | "xs" | "sm" | "lg" | undefined;
170
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
171
- active?: boolean | undefined;
172
- loading?: boolean | undefined;
173
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
174
- itemLabel: (slotProps?: ({
175
- size?: "md" | "xs" | "sm" | "lg" | undefined;
176
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
177
- active?: boolean | undefined;
178
- loading?: boolean | undefined;
179
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
180
- itemLabelExternalIcon: (slotProps?: ({
181
- size?: "md" | "xs" | "sm" | "lg" | undefined;
182
- color?: "default" | "danger" | "success" | "warning" | "primary" | "secondary" | "collab" | "ai" | undefined;
183
- active?: boolean | undefined;
184
- loading?: boolean | undefined;
185
- } & import("tailwind-variants").ClassProp<import("tailwind-variants").ClassValue>) | undefined) => string;
186
- } & {};
6
+ import type { ArrayOrNested, NestedItem, ComponentConfig } from '../types/utils';
7
+ type DropdownMenu = ComponentConfig<typeof theme, AppConfig, 'dropdownMenu'>;
187
8
  interface DropdownMenuContentProps<T extends ArrayOrNested<DropdownMenuItem>> extends Omit<RekaDropdownMenuContentProps, 'as' | 'asChild' | 'forceMount'> {
188
9
  items?: T;
189
10
  portal?: boolean;
@@ -198,8 +19,10 @@ interface DropdownMenuContentProps<T extends ArrayOrNested<DropdownMenuItem>> ex
198
19
  */
199
20
  externalIcon?: boolean | IconComponent;
200
21
  class?: any;
201
- b24ui: typeof _dropdownMenu;
202
- b24uiOverride?: any;
22
+ b24ui: {
23
+ [K in keyof Required<DropdownMenu['slots']>]: (props?: Record<string, any>) => string;
24
+ };
25
+ b24uiOverride?: DropdownMenu['slots'];
203
26
  }
204
27
  declare const _default: <T extends ArrayOrNested<DropdownMenuItem>>(__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<{
205
28
  props: __VLS_PrettifyLocal<any & DropdownMenuContentProps<T> & Partial<{}>> & (import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps);
@@ -1,15 +1,13 @@
1
1
  <script>
2
- import _appConfig from "#build/app.config";
3
2
  import theme from "#build/b24ui/form";
4
- import { tv } from "../utils/tv";
5
- const appConfigForm = _appConfig;
6
- const form = tv({ extend: tv(theme), ...appConfigForm.b24ui?.form || {} });
7
3
  </script>
8
4
 
9
5
  <script setup>
10
6
  import { provide, inject, nextTick, ref, onUnmounted, onMounted, computed, useId, readonly } from "vue";
11
7
  import { useEventBus } from "@vueuse/core";
8
+ import { useAppConfig } from "#imports";
12
9
  import { formOptionsInjectionKey, formInputsInjectionKey, formBusInjectionKey, formLoadingInjectionKey } from "../composables/useFormField";
10
+ import { tv } from "../utils/tv";
13
11
  import { validateSchema } from "../utils/form";
14
12
  import { FormValidationException } from "../types/form";
15
13
  const props = defineProps({
@@ -23,11 +21,14 @@ const props = defineProps({
23
21
  disabled: { type: Boolean, required: false },
24
22
  validateOnInputDelay: { type: Number, required: false, default: 300 },
25
23
  transform: { type: Boolean, required: false, default: true },
24
+ loadingAuto: { type: Boolean, required: false, default: true },
26
25
  class: { type: null, required: false },
27
26
  onSubmit: { type: Function, required: false }
28
27
  });
29
28
  const emits = defineEmits(["submit", "error"]);
30
29
  defineSlots();
30
+ const appConfig = useAppConfig();
31
+ const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.form || {} }));
31
32
  const formId = props.id ?? useId();
32
33
  const bus = useEventBus(`form-${formId}`);
33
34
  const parentBus = inject(
@@ -136,7 +137,7 @@ async function _validate(opts = { silent: false, nested: true, transform: false
136
137
  const loading = ref(false);
137
138
  provide(formLoadingInjectionKey, readonly(loading));
138
139
  async function onSubmitWrapper(payload) {
139
- loading.value = true;
140
+ loading.value = props.loadingAuto && true;
140
141
  const event = payload;
141
142
  try {
142
143
  event.data = await _validate({ nested: true, transform: props.transform });
@@ -188,6 +189,7 @@ defineExpose({
188
189
  }
189
190
  },
190
191
  disabled,
192
+ loading,
191
193
  dirty: computed(() => !!dirtyFields.size),
192
194
  dirtyFields: readonly(dirtyFields),
193
195
  blurredFields: readonly(blurredFields),
@@ -199,7 +201,7 @@ defineExpose({
199
201
  <component
200
202
  :is="parentBus ? 'div' : 'form'"
201
203
  :id="formId"
202
- :class="form({ class: props.class })"
204
+ :class="b24ui({ class: props.class })"
203
205
  @submit.prevent="onSubmitWrapper"
204
206
  >
205
207
  <slot :errors="errors" />
@@ -28,6 +28,12 @@ export interface FormProps<T extends object> {
28
28
  * @defaultValue `true`
29
29
  */
30
30
  transform?: boolean;
31
+ /**
32
+ * When `true`, all form elements will be disabled on `@submit` event.
33
+ * This will cause any focused input elements to lose their focus state.
34
+ * @defaultValue `true`
35
+ */
36
+ loadingAuto?: boolean;
31
37
  class?: any;
32
38
  onSubmit?: ((event: FormSubmitEvent<T>) => void | Promise<void>) | (() => void | Promise<void>);
33
39
  }
@@ -1,15 +1,13 @@
1
1
  <script>
2
- import _appConfig from "#build/app.config";
3
2
  import theme from "#build/b24ui/form-field";
4
- import { tv } from "../utils/tv";
5
- const appConfigFormField = _appConfig;
6
- const formField = tv({ extend: tv(theme), ...appConfigFormField.b24ui?.formField || {} });
7
3
  </script>
8
4
 
9
5
  <script setup>
10
6
  import { computed, ref, inject, provide, useId } from "vue";
11
7
  import { Primitive, Label } from "reka-ui";
8
+ import { useAppConfig } from "#imports";
12
9
  import { formFieldInjectionKey, inputIdInjectionKey } from "../composables/useFormField";
10
+ import { tv } from "../utils/tv";
13
11
  import WarningIcon from "@bitrix24/b24icons-vue/main/WarningIcon";
14
12
  const props = defineProps({
15
13
  as: { type: null, required: false },
@@ -25,10 +23,11 @@ const props = defineProps({
25
23
  eagerValidation: { type: Boolean, required: false },
26
24
  validateOnInputDelay: { type: Number, required: false },
27
25
  class: { type: null, required: false },
28
- b24ui: { type: Object, required: false }
26
+ b24ui: { type: null, required: false }
29
27
  });
30
28
  const slots = defineSlots();
31
- const b24ui = computed(() => formField({
29
+ const appConfig = useAppConfig();
30
+ const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.formField || {} })({
32
31
  size: props.size,
33
32
  required: props.required,
34
33
  useDescription: Boolean(props.description) || !!slots.description
@@ -1,216 +1,7 @@
1
- import type { VariantProps } from 'tailwind-variants';
2
- declare const formField: import("tailwind-variants").TVReturnType<{
3
- useDescription: {
4
- true: {
5
- wrapper: string;
6
- };
7
- false: {
8
- wrapper: string;
9
- };
10
- };
11
- size: {
12
- xs: {
13
- root: string;
14
- errorIcon: string;
15
- };
16
- sm: {
17
- root: string;
18
- errorIcon: string;
19
- };
20
- md: {
21
- root: string;
22
- errorIcon: string;
23
- };
24
- lg: {
25
- root: string;
26
- };
27
- };
28
- required: {
29
- true: {
30
- label: string;
31
- };
32
- };
33
- }, {
34
- root: string;
35
- wrapper: string;
36
- labelWrapper: string;
37
- label: string;
38
- hint: string;
39
- container: string;
40
- description: string;
41
- error: string;
42
- errorIcon: string;
43
- help: string;
44
- }, undefined, {
45
- useDescription: {
46
- true: {
47
- wrapper: string;
48
- };
49
- false: {
50
- wrapper: string;
51
- };
52
- };
53
- size: {
54
- xs: {
55
- root: string;
56
- errorIcon: string;
57
- };
58
- sm: {
59
- root: string;
60
- errorIcon: string;
61
- };
62
- md: {
63
- root: string;
64
- errorIcon: string;
65
- };
66
- lg: {
67
- root: string;
68
- };
69
- };
70
- required: {
71
- true: {
72
- label: string;
73
- };
74
- };
75
- }, {
76
- root: string;
77
- wrapper: string;
78
- labelWrapper: string;
79
- label: string;
80
- hint: string;
81
- container: string;
82
- description: string;
83
- error: string;
84
- errorIcon: string;
85
- help: string;
86
- }, import("tailwind-variants").TVReturnType<{
87
- useDescription: {
88
- true: {
89
- wrapper: string;
90
- };
91
- false: {
92
- wrapper: string;
93
- };
94
- };
95
- size: {
96
- xs: {
97
- root: string;
98
- errorIcon: string;
99
- };
100
- sm: {
101
- root: string;
102
- errorIcon: string;
103
- };
104
- md: {
105
- root: string;
106
- errorIcon: string;
107
- };
108
- lg: {
109
- root: string;
110
- };
111
- };
112
- required: {
113
- true: {
114
- label: string;
115
- };
116
- };
117
- }, {
118
- root: string;
119
- wrapper: string;
120
- labelWrapper: string;
121
- label: string;
122
- hint: string;
123
- container: string;
124
- description: string;
125
- error: string;
126
- errorIcon: string;
127
- help: string;
128
- }, undefined, {
129
- useDescription: {
130
- true: {
131
- wrapper: string;
132
- };
133
- false: {
134
- wrapper: string;
135
- };
136
- };
137
- size: {
138
- xs: {
139
- root: string;
140
- errorIcon: string;
141
- };
142
- sm: {
143
- root: string;
144
- errorIcon: string;
145
- };
146
- md: {
147
- root: string;
148
- errorIcon: string;
149
- };
150
- lg: {
151
- root: string;
152
- };
153
- };
154
- required: {
155
- true: {
156
- label: string;
157
- };
158
- };
159
- }, {
160
- root: string;
161
- wrapper: string;
162
- labelWrapper: string;
163
- label: string;
164
- hint: string;
165
- container: string;
166
- description: string;
167
- error: string;
168
- errorIcon: string;
169
- help: string;
170
- }, import("tailwind-variants").TVReturnType<{
171
- useDescription: {
172
- true: {
173
- wrapper: string;
174
- };
175
- false: {
176
- wrapper: string;
177
- };
178
- };
179
- size: {
180
- xs: {
181
- root: string;
182
- errorIcon: string;
183
- };
184
- sm: {
185
- root: string;
186
- errorIcon: string;
187
- };
188
- md: {
189
- root: string;
190
- errorIcon: string;
191
- };
192
- lg: {
193
- root: string;
194
- };
195
- };
196
- required: {
197
- true: {
198
- label: string;
199
- };
200
- };
201
- }, {
202
- root: string;
203
- wrapper: string;
204
- labelWrapper: string;
205
- label: string;
206
- hint: string;
207
- container: string;
208
- description: string;
209
- error: string;
210
- errorIcon: string;
211
- help: string;
212
- }, undefined, unknown, unknown, undefined>>>;
213
- type FormFieldVariants = VariantProps<typeof formField>;
1
+ import type { AppConfig } from '@nuxt/schema';
2
+ import theme from '#build/b24ui/form-field';
3
+ import type { ComponentConfig } from '../types/utils';
4
+ type FormField = ComponentConfig<typeof theme, AppConfig, 'formField'>;
214
5
  export interface FormFieldProps {
215
6
  /**
216
7
  * The element or component this component should render as.
@@ -229,7 +20,7 @@ export interface FormFieldProps {
229
20
  /**
230
21
  * @defaultValue 'md'
231
22
  */
232
- size?: FormFieldVariants['size'];
23
+ size?: FormField['variants']['size'];
233
24
  /**
234
25
  * @defaultValue false
235
26
  */
@@ -242,7 +33,7 @@ export interface FormFieldProps {
242
33
  */
243
34
  validateOnInputDelay?: number;
244
35
  class?: any;
245
- b24ui?: Partial<typeof formField.slots>;
36
+ b24ui?: FormField['slots'];
246
37
  }
247
38
  export interface FormFieldSlots {
248
39
  label(props: {
@@ -1,18 +1,16 @@
1
1
  <script>
2
- import _appConfig from "#build/app.config";
3
2
  import theme from "#build/b24ui/input";
4
- import { tv } from "../utils/tv";
5
- const appConfigInput = _appConfig;
6
- const input = tv({ extend: tv(theme), ...appConfigInput.b24ui?.input || {} });
7
3
  </script>
8
4
 
9
5
  <script setup>
10
6
  import { ref, computed, onMounted } from "vue";
11
7
  import { Primitive } from "reka-ui";
8
+ import { useAppConfig } from "#imports";
12
9
  import { useButtonGroup } from "../composables/useButtonGroup";
13
10
  import { useComponentIcons } from "../composables/useComponentIcons";
14
11
  import { useFormField } from "../composables/useFormField";
15
12
  import { looseToNumber } from "../utils";
13
+ import { tv } from "../utils/tv";
16
14
  import B24Avatar from "./Avatar.vue";
17
15
  defineOptions({ inheritAttrs: false });
18
16
  const props = defineProps({
@@ -46,6 +44,7 @@ const props = defineProps({
46
44
  const emits = defineEmits(["update:modelValue", "blur", "change"]);
47
45
  const slots = defineSlots();
48
46
  const [modelValue, modelModifiers] = defineModel({ type: [String, Number, null] });
47
+ const appConfig = useAppConfig();
49
48
  const { emitFormBlur, emitFormInput, emitFormChange, size: formGroupSize, color, id, name, highlight, disabled, emitFormFocus, ariaAttrs } = useFormField(props, { deferInputValidation: true });
50
49
  const { orientation, size: buttonGroupSize } = useButtonGroup(props);
51
50
  const { isLeading, isTrailing, leadingIconName, trailingIconName } = useComponentIcons(props);
@@ -53,7 +52,7 @@ const inputSize = computed(() => buttonGroupSize.value || formGroupSize.value);
53
52
  const isTag = computed(() => {
54
53
  return props.tag;
55
54
  });
56
- const b24ui = computed(() => input({
55
+ const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.input || {} })({
57
56
  type: props.type,
58
57
  color: color.value,
59
58
  size: inputSize?.value,