vueless 1.1.1-beta.9 → 1.2.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 (421) hide show
  1. package/LICENSE +1 -1
  2. package/adapter.locale/locales/en.ts +11 -11
  3. package/adapter.locale/vue-i18n.ts +2 -3
  4. package/adapter.locale/vueless.ts +3 -3
  5. package/bin/commands/init.js +90 -59
  6. package/bin/constants.d.ts +3 -0
  7. package/bin/constants.js +0 -14
  8. package/composables/tests/useUI.test.ts +3 -3
  9. package/composables/useAutoPosition.ts +1 -1
  10. package/composables/useBreakpoint.ts +1 -1
  11. package/composables/useComponentLocaleMassages.ts +3 -3
  12. package/composables/useDarkMode.ts +2 -2
  13. package/composables/useLocale.ts +2 -2
  14. package/composables/useMutationObserver.ts +1 -1
  15. package/composables/useUI.ts +5 -5
  16. package/constants.d.ts +334 -0
  17. package/constants.js +23 -1
  18. package/icons/storybook/contact_mail.svg +1 -0
  19. package/icons/storybook/vpn_key.svg +1 -0
  20. package/icons/storybook/web_traffic.svg +1 -0
  21. package/index.d.ts +153 -18
  22. package/index.ts +158 -20
  23. package/modules.d.ts +33 -0
  24. package/package.json +33 -10
  25. package/plugin-vite.d.ts +1 -28
  26. package/plugin-vite.js +33 -28
  27. package/tailwind.css +30 -0
  28. package/types.ts +66 -74
  29. package/ui.boilerplate/UBoilerplate.vue +5 -5
  30. package/ui.boilerplate/storybook/{docs.hidden.mdx → docs.mdx} +3 -3
  31. package/ui.boilerplate/storybook/{stories.hidden.ts → stories.ts} +2 -2
  32. package/ui.boilerplate/tests/UBoilerplate.test.ts +1 -1
  33. package/ui.boilerplate/types.ts +2 -2
  34. package/ui.button/UButton.vue +6 -6
  35. package/ui.button/storybook/docs.mdx +3 -3
  36. package/ui.button/storybook/stories.ts +2 -2
  37. package/ui.button/tests/UButton.test.ts +1 -1
  38. package/ui.button/types.ts +2 -2
  39. package/ui.button-link/ULink.vue +6 -6
  40. package/ui.button-link/storybook/docs.mdx +3 -3
  41. package/ui.button-link/storybook/stories.ts +3 -3
  42. package/ui.button-link/tests/ULink.test.ts +1 -1
  43. package/ui.button-link/types.ts +2 -2
  44. package/ui.button-toggle/UToggle.vue +5 -5
  45. package/ui.button-toggle/storybook/docs.mdx +3 -3
  46. package/ui.button-toggle/storybook/stories.ts +4 -3
  47. package/ui.button-toggle/tests/UToggle.test.ts +1 -1
  48. package/ui.button-toggle/types.ts +2 -2
  49. package/ui.container-accordion/UAccordion.vue +21 -9
  50. package/ui.container-accordion/config.ts +1 -1
  51. package/ui.container-accordion/storybook/docs.mdx +3 -3
  52. package/ui.container-accordion/storybook/stories.ts +19 -7
  53. package/ui.container-accordion/tests/UAccordion.test.ts +47 -1
  54. package/ui.container-accordion/types.ts +2 -2
  55. package/ui.container-card/UCard.vue +6 -6
  56. package/ui.container-card/storybook/docs.mdx +3 -3
  57. package/ui.container-card/storybook/stories.ts +2 -2
  58. package/ui.container-card/tests/UCard.test.ts +1 -1
  59. package/ui.container-card/types.ts +2 -2
  60. package/ui.container-col/UCol.vue +5 -5
  61. package/ui.container-col/storybook/docs.mdx +3 -3
  62. package/ui.container-col/storybook/stories.ts +2 -2
  63. package/ui.container-col/tests/UCol.test.ts +1 -1
  64. package/ui.container-col/types.ts +2 -2
  65. package/ui.container-divider/UDivider.vue +6 -6
  66. package/ui.container-divider/storybook/docs.mdx +3 -3
  67. package/ui.container-divider/storybook/stories.ts +2 -2
  68. package/ui.container-divider/tests/UDivider.test.ts +1 -1
  69. package/ui.container-divider/types.ts +2 -2
  70. package/ui.container-group/UGroup.vue +5 -5
  71. package/ui.container-group/storybook/docs.mdx +3 -3
  72. package/ui.container-group/storybook/stories.ts +2 -2
  73. package/ui.container-group/types.ts +2 -2
  74. package/ui.container-groups/UGroups.vue +5 -5
  75. package/ui.container-groups/storybook/docs.mdx +3 -3
  76. package/ui.container-groups/storybook/stories.ts +2 -2
  77. package/ui.container-groups/tests/UGroups.test.ts +1 -1
  78. package/ui.container-groups/types.ts +2 -2
  79. package/ui.container-modal/UModal.vue +6 -6
  80. package/ui.container-modal/storybook/docs.mdx +3 -3
  81. package/ui.container-modal/storybook/stories.ts +3 -3
  82. package/ui.container-modal/tests/UModal.test.ts +2 -2
  83. package/ui.container-modal/types.ts +2 -2
  84. package/ui.container-modal-confirm/UModalConfirm.vue +7 -7
  85. package/ui.container-modal-confirm/storybook/docs.mdx +3 -3
  86. package/ui.container-modal-confirm/storybook/stories.ts +3 -3
  87. package/ui.container-modal-confirm/tests/UModalConfirm.test.ts +1 -1
  88. package/ui.container-modal-confirm/types.ts +2 -2
  89. package/ui.container-page/UPage.vue +6 -6
  90. package/ui.container-page/storybook/docs.mdx +3 -3
  91. package/ui.container-page/storybook/stories.ts +2 -2
  92. package/ui.container-page/tests/UPage.test.ts +2 -2
  93. package/ui.container-page/types.ts +2 -2
  94. package/ui.container-row/URow.vue +5 -5
  95. package/ui.container-row/storybook/docs.mdx +3 -3
  96. package/ui.container-row/storybook/stories.ts +2 -2
  97. package/ui.container-row/tests/URow.test.ts +1 -1
  98. package/ui.container-row/types.ts +2 -2
  99. package/ui.data-list/UDataList.vue +8 -8
  100. package/ui.data-list/storybook/docs.mdx +3 -3
  101. package/ui.data-list/storybook/stories.ts +3 -3
  102. package/ui.data-list/tests/UDataList.test.ts +1 -1
  103. package/ui.data-list/types.ts +2 -2
  104. package/ui.data-table/UTable.vue +28 -20
  105. package/ui.data-table/UTableRow.vue +8 -8
  106. package/ui.data-table/config.ts +1 -1
  107. package/ui.data-table/storybook/docs.mdx +3 -3
  108. package/ui.data-table/storybook/stories.ts +14 -3
  109. package/ui.data-table/tests/UTable.test.ts +20 -2
  110. package/ui.data-table/tests/UTableRow.test.ts +1 -1
  111. package/ui.data-table/types.ts +3 -3
  112. package/ui.data-table/utilTable.ts +1 -1
  113. package/ui.dropdown-badge/UDropdownBadge.vue +7 -7
  114. package/ui.dropdown-badge/storybook/docs.mdx +3 -3
  115. package/ui.dropdown-badge/storybook/stories.ts +2 -2
  116. package/ui.dropdown-badge/tests/UDropdownBadge.test.ts +1 -1
  117. package/ui.dropdown-badge/types.ts +3 -3
  118. package/ui.dropdown-button/UDropdownButton.vue +8 -7
  119. package/ui.dropdown-button/config.ts +9 -1
  120. package/ui.dropdown-button/storybook/docs.mdx +3 -3
  121. package/ui.dropdown-button/storybook/stories.ts +3 -3
  122. package/ui.dropdown-button/tests/UDropdownButton.test.ts +17 -1
  123. package/ui.dropdown-button/types.ts +8 -3
  124. package/ui.dropdown-link/UDropdownLink.vue +7 -7
  125. package/ui.dropdown-link/config.ts +1 -1
  126. package/ui.dropdown-link/storybook/docs.mdx +3 -3
  127. package/ui.dropdown-link/storybook/stories.ts +2 -2
  128. package/ui.dropdown-link/tests/UDropdownLink.test.ts +1 -1
  129. package/ui.dropdown-link/types.ts +3 -3
  130. package/ui.form-calendar/UCalendar.vue +11 -11
  131. package/ui.form-calendar/UCalendarDayView.vue +6 -6
  132. package/ui.form-calendar/UCalendarMonthView.vue +6 -6
  133. package/ui.form-calendar/UCalendarYearView.vue +6 -6
  134. package/ui.form-calendar/storybook/docs.mdx +3 -3
  135. package/ui.form-calendar/storybook/stories.ts +3 -3
  136. package/ui.form-calendar/tests/UCalendar.test.ts +2 -2
  137. package/ui.form-calendar/tests/UCalendarDayView.test.ts +2 -2
  138. package/ui.form-calendar/tests/UCalendarMonthView.test.ts +2 -2
  139. package/ui.form-calendar/tests/UCalendarYearView.test.ts +2 -2
  140. package/ui.form-calendar/types.ts +3 -3
  141. package/ui.form-calendar/utilCalendar.ts +4 -4
  142. package/ui.form-calendar/utilDate.ts +1 -1
  143. package/ui.form-calendar/utilFormatting.ts +1 -1
  144. package/ui.form-checkbox/UCheckbox.vue +6 -6
  145. package/ui.form-checkbox/storybook/docs.mdx +3 -3
  146. package/ui.form-checkbox/storybook/stories.ts +2 -2
  147. package/ui.form-checkbox/tests/UCheckbox.test.ts +1 -1
  148. package/ui.form-checkbox/types.ts +2 -2
  149. package/ui.form-checkbox-group/UCheckboxGroup.vue +6 -6
  150. package/ui.form-checkbox-group/storybook/docs.mdx +3 -3
  151. package/ui.form-checkbox-group/storybook/stories.ts +2 -2
  152. package/ui.form-checkbox-group/tests/UCheckboxGroup.test.ts +1 -1
  153. package/ui.form-checkbox-group/types.ts +3 -3
  154. package/ui.form-checkbox-multi-state/UCheckboxMultiState.vue +8 -8
  155. package/ui.form-checkbox-multi-state/storybook/docs.mdx +3 -3
  156. package/ui.form-checkbox-multi-state/storybook/stories.ts +2 -2
  157. package/ui.form-checkbox-multi-state/tests/UCheckboxMultiState.test.ts +1 -1
  158. package/ui.form-checkbox-multi-state/types.ts +3 -3
  159. package/ui.form-color-picker/UColorPicker.vue +6 -6
  160. package/ui.form-color-picker/storybook/docs.mdx +3 -3
  161. package/ui.form-color-picker/storybook/stories.ts +2 -2
  162. package/ui.form-color-picker/tests/UColorPicker.test.ts +1 -1
  163. package/ui.form-color-picker/types.ts +2 -2
  164. package/ui.form-date-picker/UDatePicker.vue +14 -14
  165. package/ui.form-date-picker/storybook/docs.mdx +3 -3
  166. package/ui.form-date-picker/storybook/stories.ts +3 -3
  167. package/ui.form-date-picker/tests/UDatePicker.test.ts +1 -1
  168. package/ui.form-date-picker/types.ts +2 -2
  169. package/ui.form-date-picker-range/UDatePickerRange.vue +14 -14
  170. package/ui.form-date-picker-range/UDatePickerRangeInputs.vue +6 -6
  171. package/ui.form-date-picker-range/UDatePickerRangePeriodMenu.vue +5 -5
  172. package/ui.form-date-picker-range/storybook/docs.mdx +3 -3
  173. package/ui.form-date-picker-range/storybook/stories.ts +4 -4
  174. package/ui.form-date-picker-range/tests/UDatePickerRange.test.ts +1 -1
  175. package/ui.form-date-picker-range/types.ts +4 -4
  176. package/ui.form-date-picker-range/useLocale.ts +6 -6
  177. package/ui.form-date-picker-range/useUserFormat.ts +5 -5
  178. package/ui.form-date-picker-range/utilDateRange.ts +2 -2
  179. package/ui.form-date-picker-range/utilValidation.ts +1 -1
  180. package/ui.form-input/UInput.vue +7 -7
  181. package/ui.form-input/config.ts +1 -1
  182. package/ui.form-input/storybook/docs.mdx +3 -3
  183. package/ui.form-input/storybook/stories.ts +2 -2
  184. package/ui.form-input/tests/UInput.test.ts +1 -1
  185. package/ui.form-input/types.ts +2 -2
  186. package/ui.form-input-counter/UInputCounter.vue +5 -5
  187. package/ui.form-input-counter/storybook/docs.mdx +3 -3
  188. package/ui.form-input-counter/storybook/stories.ts +2 -2
  189. package/ui.form-input-counter/tests/UInputCounter.test.ts +1 -1
  190. package/ui.form-input-counter/types.ts +2 -2
  191. package/ui.form-input-file/UInputFile.vue +8 -8
  192. package/ui.form-input-file/storybook/docs.mdx +3 -3
  193. package/ui.form-input-file/storybook/stories.ts +2 -2
  194. package/ui.form-input-file/tests/UInputFile.test.ts +1 -1
  195. package/ui.form-input-file/types.ts +2 -2
  196. package/ui.form-input-number/UInputNumber.vue +7 -7
  197. package/ui.form-input-number/storybook/docs.mdx +3 -3
  198. package/ui.form-input-number/storybook/stories.ts +2 -2
  199. package/ui.form-input-number/tests/UInputNumber.test.ts +1 -1
  200. package/ui.form-input-number/types.ts +2 -2
  201. package/ui.form-input-number/useFormatNumber.ts +3 -3
  202. package/ui.form-input-number/utilFormat.ts +2 -2
  203. package/ui.form-input-password/UInputPassword.vue +6 -6
  204. package/ui.form-input-password/storybook/docs.mdx +3 -3
  205. package/ui.form-input-password/storybook/stories.ts +2 -2
  206. package/ui.form-input-password/tests/UInputPassword.test.ts +1 -1
  207. package/ui.form-input-password/types.ts +2 -2
  208. package/ui.form-input-rating/UInputRating.vue +6 -6
  209. package/ui.form-input-rating/storybook/docs.mdx +3 -3
  210. package/ui.form-input-rating/storybook/stories.ts +2 -2
  211. package/ui.form-input-rating/tests/UInputRating.test.ts +1 -1
  212. package/ui.form-input-rating/types.ts +2 -2
  213. package/ui.form-input-search/UInputSearch.vue +6 -6
  214. package/ui.form-input-search/storybook/docs.mdx +3 -3
  215. package/ui.form-input-search/storybook/stories.ts +2 -2
  216. package/ui.form-input-search/tests/UInputSearch.test.ts +1 -1
  217. package/ui.form-input-search/types.ts +2 -2
  218. package/ui.form-label/ULabel.vue +6 -6
  219. package/ui.form-label/storybook/docs.mdx +3 -3
  220. package/ui.form-label/storybook/stories.ts +2 -2
  221. package/ui.form-label/tests/ULabel.test.ts +1 -1
  222. package/ui.form-label/types.ts +2 -2
  223. package/ui.form-listbox/UListbox.vue +9 -9
  224. package/ui.form-listbox/storybook/docs.mdx +3 -3
  225. package/ui.form-listbox/storybook/stories.ts +2 -2
  226. package/ui.form-listbox/tests/UListbox.test.ts +1 -1
  227. package/ui.form-listbox/types.ts +2 -2
  228. package/ui.form-listbox/usePointer.ts +1 -1
  229. package/ui.form-listbox/utilListbox.ts +1 -1
  230. package/ui.form-radio/URadio.vue +6 -6
  231. package/ui.form-radio/storybook/docs.mdx +3 -3
  232. package/ui.form-radio/storybook/stories.ts +2 -2
  233. package/ui.form-radio/tests/URadio.test.ts +1 -1
  234. package/ui.form-radio/types.ts +2 -2
  235. package/ui.form-radio-group/URadioGroup.vue +5 -5
  236. package/ui.form-radio-group/storybook/docs.mdx +3 -3
  237. package/ui.form-radio-group/storybook/stories.ts +2 -2
  238. package/ui.form-radio-group/tests/URadioGroup.test.ts +6 -2
  239. package/ui.form-radio-group/types.ts +2 -2
  240. package/ui.form-select/USelect.vue +13 -12
  241. package/ui.form-select/storybook/docs.mdx +3 -3
  242. package/ui.form-select/storybook/stories.ts +2 -2
  243. package/ui.form-select/tests/USelect.test.ts +1 -1
  244. package/ui.form-select/types.ts +3 -3
  245. package/ui.form-select/utilSelect.ts +1 -1
  246. package/ui.form-switch/USwitch.vue +6 -6
  247. package/ui.form-switch/storybook/docs.mdx +3 -3
  248. package/ui.form-switch/storybook/stories.ts +2 -2
  249. package/ui.form-switch/tests/USwitch.test.ts +1 -1
  250. package/ui.form-switch/types.ts +2 -2
  251. package/ui.form-textarea/UTextarea.vue +7 -7
  252. package/ui.form-textarea/storybook/docs.mdx +3 -3
  253. package/ui.form-textarea/storybook/stories.ts +3 -3
  254. package/ui.form-textarea/tests/UTextarea.test.ts +1 -1
  255. package/ui.form-textarea/types.ts +2 -2
  256. package/ui.image-avatar/UAvatar.vue +5 -5
  257. package/ui.image-avatar/storybook/docs.mdx +3 -3
  258. package/ui.image-avatar/storybook/stories.ts +3 -3
  259. package/ui.image-avatar/tests/UAvatar.test.ts +1 -1
  260. package/ui.image-avatar/types.ts +2 -2
  261. package/ui.image-icon/UIcon.vue +6 -6
  262. package/ui.image-icon/storybook/docs.mdx +3 -3
  263. package/ui.image-icon/storybook/stories.ts +2 -2
  264. package/ui.image-icon/tests/UIcon.test.ts +0 -1
  265. package/ui.image-icon/types.ts +2 -2
  266. package/ui.loader/ULoader.vue +5 -5
  267. package/ui.loader/storybook/docs.mdx +3 -3
  268. package/ui.loader/storybook/stories.ts +2 -2
  269. package/ui.loader/tests/ULoader.test.ts +1 -1
  270. package/ui.loader/types.ts +2 -2
  271. package/ui.loader-overlay/ULoaderOverlay.vue +6 -6
  272. package/ui.loader-overlay/storybook/docs.mdx +3 -3
  273. package/ui.loader-overlay/storybook/stories.ts +2 -2
  274. package/ui.loader-overlay/tests/ULoaderOverlay.test.ts +2 -2
  275. package/ui.loader-overlay/types.ts +2 -2
  276. package/ui.loader-progress/ULoaderProgress.vue +7 -7
  277. package/ui.loader-progress/storybook/docs.mdx +3 -3
  278. package/ui.loader-progress/storybook/stories.ts +4 -4
  279. package/ui.loader-progress/tests/ULoaderProgress.test.ts +2 -2
  280. package/ui.loader-progress/types.ts +2 -2
  281. package/ui.loader-progress/useLoaderProgress.ts +1 -1
  282. package/ui.navigation-breadcrumbs/UBreadcrumbs.vue +6 -6
  283. package/ui.navigation-breadcrumbs/storybook/docs.mdx +3 -3
  284. package/ui.navigation-breadcrumbs/storybook/stories.ts +13 -2
  285. package/ui.navigation-breadcrumbs/tests/UBreadcrumbs.test.ts +2 -2
  286. package/ui.navigation-breadcrumbs/types.ts +3 -3
  287. package/ui.navigation-pagination/UPagination.vue +5 -5
  288. package/ui.navigation-pagination/storybook/docs.mdx +3 -3
  289. package/ui.navigation-pagination/storybook/stories.ts +5 -3
  290. package/ui.navigation-pagination/tests/UPagination.test.ts +1 -1
  291. package/ui.navigation-pagination/types.ts +2 -2
  292. package/ui.navigation-progress/UProgress.vue +5 -5
  293. package/ui.navigation-progress/UStepperProgress.vue +3 -3
  294. package/ui.navigation-progress/storybook/docs.mdx +3 -3
  295. package/ui.navigation-progress/storybook/stories.ts +2 -2
  296. package/ui.navigation-progress/tests/UProgress.test.ts +1 -1
  297. package/ui.navigation-progress/types.ts +2 -2
  298. package/ui.navigation-tab/UTab.vue +6 -6
  299. package/ui.navigation-tab/storybook/docs.mdx +3 -3
  300. package/ui.navigation-tab/storybook/stories.ts +2 -2
  301. package/ui.navigation-tab/types.ts +2 -2
  302. package/ui.navigation-tabs/UTabs.vue +5 -5
  303. package/ui.navigation-tabs/storybook/docs.mdx +3 -3
  304. package/ui.navigation-tabs/storybook/stories.ts +2 -2
  305. package/ui.navigation-tabs/tests/UTabs.test.ts +1 -1
  306. package/ui.navigation-tabs/types.ts +2 -2
  307. package/ui.other-chip/UChip.vue +5 -5
  308. package/ui.other-chip/storybook/docs.mdx +3 -3
  309. package/ui.other-chip/storybook/stories.ts +13 -2
  310. package/ui.other-chip/tests/UChip.test.ts +1 -1
  311. package/ui.other-chip/types.ts +2 -2
  312. package/ui.other-dot/UDot.vue +5 -5
  313. package/ui.other-dot/storybook/docs.mdx +3 -3
  314. package/ui.other-dot/storybook/stories.ts +2 -2
  315. package/ui.other-dot/tests/UDot.test.ts +1 -1
  316. package/ui.other-dot/types.ts +2 -2
  317. package/ui.other-theme-color-toggle/UThemeColorToggle.vue +6 -6
  318. package/ui.other-theme-color-toggle/storybook/docs.mdx +3 -3
  319. package/ui.other-theme-color-toggle/storybook/stories.ts +2 -2
  320. package/ui.other-theme-color-toggle/tests/UThemeColorToggle.test.ts +1 -1
  321. package/ui.other-theme-color-toggle/types.ts +2 -2
  322. package/ui.skeleton/USkeleton.vue +5 -5
  323. package/ui.skeleton/storybook/docs.mdx +3 -3
  324. package/ui.skeleton/storybook/stories.ts +7 -2
  325. package/ui.skeleton/tests/USkeleton.test.ts +1 -1
  326. package/ui.skeleton/types.ts +2 -2
  327. package/ui.skeleton-choice/USkeletonChoice.vue +5 -5
  328. package/ui.skeleton-choice/storybook/docs.mdx +3 -3
  329. package/ui.skeleton-choice/storybook/stories.ts +7 -2
  330. package/ui.skeleton-choice/tests/USkeletonChoice.test.ts +1 -1
  331. package/ui.skeleton-choice/types.ts +2 -2
  332. package/ui.skeleton-input/USkeletonInput.vue +5 -5
  333. package/ui.skeleton-input/storybook/docs.mdx +3 -3
  334. package/ui.skeleton-input/storybook/stories.ts +13 -2
  335. package/ui.skeleton-input/tests/USkeletonInput.test.ts +1 -1
  336. package/ui.skeleton-input/types.ts +2 -2
  337. package/ui.skeleton-text/USkeletonText.vue +5 -5
  338. package/ui.skeleton-text/storybook/docs.mdx +3 -3
  339. package/ui.skeleton-text/storybook/stories.ts +7 -2
  340. package/ui.skeleton-text/tests/USkeletonText.test.ts +1 -1
  341. package/ui.skeleton-text/types.ts +2 -2
  342. package/ui.text-alert/UAlert.vue +6 -6
  343. package/ui.text-alert/storybook/docs.mdx +3 -3
  344. package/ui.text-alert/storybook/stories.ts +2 -2
  345. package/ui.text-alert/tests/UAlert.test.ts +1 -1
  346. package/ui.text-alert/types.ts +2 -2
  347. package/ui.text-badge/UBadge.vue +6 -6
  348. package/ui.text-badge/storybook/docs.mdx +3 -3
  349. package/ui.text-badge/storybook/stories.ts +2 -2
  350. package/ui.text-badge/tests/UBadge.test.ts +1 -1
  351. package/ui.text-badge/types.ts +2 -2
  352. package/ui.text-block/UText.vue +5 -5
  353. package/ui.text-block/storybook/docs.mdx +3 -3
  354. package/ui.text-block/storybook/stories.ts +2 -2
  355. package/ui.text-block/tests/UText.test.ts +1 -1
  356. package/ui.text-block/types.ts +2 -2
  357. package/ui.text-empty/UEmpty.vue +5 -5
  358. package/ui.text-empty/storybook/docs.mdx +3 -3
  359. package/ui.text-empty/storybook/stories.ts +2 -2
  360. package/ui.text-empty/tests/UEmpty.test.ts +1 -1
  361. package/ui.text-empty/types.ts +2 -2
  362. package/ui.text-file/UFile.vue +5 -5
  363. package/ui.text-file/storybook/docs.mdx +3 -3
  364. package/ui.text-file/storybook/stories.ts +2 -2
  365. package/ui.text-file/tests/UFile.test.ts +1 -1
  366. package/ui.text-file/types.ts +2 -2
  367. package/ui.text-files/UFiles.vue +6 -6
  368. package/ui.text-files/storybook/docs.mdx +3 -3
  369. package/ui.text-files/storybook/stories.ts +2 -2
  370. package/ui.text-files/tests/UFiles.test.ts +1 -1
  371. package/ui.text-files/types.ts +2 -2
  372. package/ui.text-header/UHeader.vue +5 -5
  373. package/ui.text-header/storybook/docs.mdx +3 -3
  374. package/ui.text-header/storybook/stories.ts +2 -2
  375. package/ui.text-header/tests/UHeader.test.ts +1 -1
  376. package/ui.text-header/types.ts +2 -2
  377. package/ui.text-notify/UNotify.vue +6 -6
  378. package/ui.text-notify/storybook/docs.mdx +3 -3
  379. package/ui.text-notify/storybook/stories.ts +3 -3
  380. package/ui.text-notify/tests/UNotify.test.ts +4 -4
  381. package/ui.text-notify/types.ts +3 -3
  382. package/ui.text-notify/utilNotify.ts +3 -3
  383. package/ui.text-number/UNumber.vue +6 -6
  384. package/ui.text-number/storybook/docs.mdx +3 -3
  385. package/ui.text-number/storybook/stories.ts +13 -2
  386. package/ui.text-number/tests/UNumber.test.ts +2 -2
  387. package/ui.text-number/types.ts +2 -2
  388. package/utils/helper.ts +1 -1
  389. package/utils/node/dynamicProps.d.ts +2 -0
  390. package/utils/node/dynamicProps.js +17 -8
  391. package/utils/node/helper.d.ts +15 -0
  392. package/utils/node/helper.js +73 -27
  393. package/utils/node/loaderIcon.d.ts +7 -0
  394. package/utils/node/loaderIcon.js +12 -8
  395. package/utils/node/loaderSvg.d.ts +1 -0
  396. package/utils/node/mergeConfigs.d.ts +13 -0
  397. package/utils/node/storybook.d.ts +2 -0
  398. package/utils/node/storybook.js +93 -0
  399. package/utils/node/tailwindSafelist.d.ts +6 -0
  400. package/utils/node/vuelessConfig.d.ts +9 -0
  401. package/utils/node/vuelessConfig.js +30 -11
  402. package/utils/node/vuelessResolver.d.ts +13 -0
  403. package/utils/node/vuelessResolver.js +30 -14
  404. package/utils/node/webTypes.d.ts +1 -0
  405. package/utils/node/webTypes.js +4 -2
  406. package/utils/platform.ts +1 -1
  407. package/utils/storybook.ts +2 -2
  408. package/utils/theme.ts +20 -18
  409. package/utils/ui.ts +33 -8
  410. package/{directives/clickOutside → v.click-outside}/storybook/docs.mdx +2 -2
  411. package/{directives/clickOutside → v.click-outside}/storybook/stories.ts +5 -5
  412. package/{directives/clickOutside → v.click-outside}/vClickOutside.ts +1 -1
  413. package/v.tooltip/storybook/docs.mdx +47 -0
  414. package/{directives/tooltip → v.tooltip}/storybook/stories.ts +14 -11
  415. package/{directives/tooltip → v.tooltip}/vTooltip.ts +4 -9
  416. package/directives/index.js +0 -7
  417. package/directives/tooltip/storybook/docs.mdx +0 -10
  418. package/utils/node/dynamicStories.js +0 -62
  419. package/utils/tailwindConfig.ts +0 -36
  420. /package/{directives/clickOutside → v.click-outside}/types.ts +0 -0
  421. /package/{directives/tooltip → v.tooltip}/types.ts +0 -0
@@ -6,7 +6,7 @@ import {
6
6
  getSlotNames,
7
7
  getSlotsFragment,
8
8
  getDocsDescription,
9
- } from "../../utils/storybook.ts";
9
+ } from "../../utils/storybook";
10
10
 
11
11
  import UPage from "../../ui.container-page/UPage.vue";
12
12
  import UCard from "../../ui.container-card/UCard.vue";
@@ -22,7 +22,7 @@ import UCheckbox from "../../ui.form-checkbox/UCheckbox.vue";
22
22
  import UDivider from "../../ui.container-divider/UDivider.vue";
23
23
 
24
24
  import type { Meta, StoryFn } from "@storybook/vue3-vite";
25
- import type { Props } from "../types.ts";
25
+ import type { Props } from "../types";
26
26
 
27
27
  interface UPageArgs extends Props {
28
28
  slotTemplate?: string;
@@ -4,8 +4,8 @@ import { createRouter, createWebHistory } from "vue-router";
4
4
 
5
5
  import UPage from "../UPage.vue";
6
6
 
7
- import type { Props } from "../types.ts";
8
- import type { UnknownObject } from "../../types.ts";
7
+ import type { Props } from "../types";
8
+ import type { UnknownObject } from "../../types";
9
9
 
10
10
  // Create a mock router for testing router-link functionality
11
11
  const router = createRouter({
@@ -1,7 +1,7 @@
1
- import defaultConfig from "./config.ts";
1
+ import defaultConfig from "./config";
2
2
 
3
3
  import type { RouteLocationRaw } from "vue-router";
4
- import type { ComponentConfig } from "../types.ts";
4
+ import type { ComponentConfig } from "../types";
5
5
 
6
6
  export type Config = typeof defaultConfig;
7
7
 
@@ -1,13 +1,13 @@
1
1
  <script setup lang="ts">
2
2
  import { useTemplateRef } from "vue";
3
3
 
4
- import useUI from "../composables/useUI.ts";
5
- import { getDefaults } from "../utils/ui.ts";
4
+ import useUI from "../composables/useUI";
5
+ import { getDefaults } from "../utils/ui";
6
6
 
7
- import { COMPONENT_NAME } from "./constants.ts";
8
- import defaultConfig from "./config.ts";
7
+ import { COMPONENT_NAME } from "./constants";
8
+ import defaultConfig from "./config";
9
9
 
10
- import type { Props, Config } from "./types.ts";
10
+ import type { Props, Config } from "./types";
11
11
 
12
12
  defineOptions({ inheritAttrs: false });
13
13
 
@@ -1,8 +1,8 @@
1
1
  import { Meta, Title, Subtitle, Description, Primary, Controls, Stories, Source } from "@storybook/addon-docs/blocks";
2
- import { getSource } from "../../utils/storybook.ts";
2
+ import { getSource } from "../../utils/storybook";
3
3
 
4
- import * as stories from "./stories.ts";
5
- import defaultConfig from "../config.ts?raw"
4
+ import * as stories from "./stories";
5
+ import defaultConfig from "../config?raw"
6
6
 
7
7
  <Meta of={stories} />
8
8
  <Title of={stories} />
@@ -4,7 +4,7 @@ import {
4
4
  getSlotNames,
5
5
  getSlotsFragment,
6
6
  getDocsDescription,
7
- } from "../../utils/storybook.ts";
7
+ } from "../../utils/storybook";
8
8
 
9
9
  import URow from "../../ui.container-row/URow.vue";
10
10
  import UInput from "../../ui.form-input/UInput.vue";
@@ -12,7 +12,7 @@ import UCol from "../../ui.container-col/UCol.vue";
12
12
  import UButton from "../../ui.button/UButton.vue";
13
13
 
14
14
  import type { Meta, StoryFn } from "@storybook/vue3-vite";
15
- import type { Props } from "../types.ts";
15
+ import type { Props } from "../types";
16
16
 
17
17
  interface URowArgs extends Props {
18
18
  slotTemplate?: string;
@@ -3,7 +3,7 @@ import { describe, it, expect } from "vitest";
3
3
 
4
4
  import URow from "../URow.vue";
5
5
 
6
- import type { Props } from "../types.ts";
6
+ import type { Props } from "../types";
7
7
 
8
8
  describe("URow.vue", () => {
9
9
  // Props tests
@@ -1,6 +1,6 @@
1
- import defaultConfig from "./config.ts";
1
+ import defaultConfig from "./config";
2
2
 
3
- import type { ComponentConfig } from "../types.ts";
3
+ import type { ComponentConfig } from "../types";
4
4
 
5
5
  export type Config = typeof defaultConfig;
6
6
 
@@ -1,19 +1,19 @@
1
1
  <script setup lang="ts">
2
2
  import { useTemplateRef } from "vue";
3
- import draggable from "vuedraggable";
3
+ import draggable from "vuedraggable/src/vuedraggable";
4
4
 
5
- import useUI from "../composables/useUI.ts";
6
- import { getDefaults } from "../utils/ui.ts";
7
- import { hasSlotContent } from "../utils/helper.ts";
5
+ import useUI from "../composables/useUI";
6
+ import { getDefaults } from "../utils/ui";
7
+ import { hasSlotContent } from "../utils/helper";
8
8
 
9
9
  import UIcon from "../ui.image-icon/UIcon.vue";
10
10
  import UEmpty from "../ui.text-empty/UEmpty.vue";
11
11
 
12
- import { COMPONENT_NAME } from "./constants.ts";
13
- import defaultConfig from "./config.ts";
14
- import { useComponentLocaleMessages } from "../composables/useComponentLocaleMassages.ts";
12
+ import { COMPONENT_NAME } from "./constants";
13
+ import defaultConfig from "./config";
14
+ import { useComponentLocaleMessages } from "../composables/useComponentLocaleMassages";
15
15
 
16
- import type { Props, DataListItem, Config } from "./types.ts";
16
+ import type { Props, DataListItem, Config } from "./types";
17
17
 
18
18
  defineOptions({ inheritAttrs: false });
19
19
 
@@ -1,8 +1,8 @@
1
1
  import { Markdown, Meta, Title, Subtitle, Description, Primary, Controls, Stories, Source } from "@storybook/addon-docs/blocks";
2
- import { getSource } from "../../utils/storybook.ts";
2
+ import { getSource } from "../../utils/storybook";
3
3
 
4
- import * as stories from "./stories.ts";
5
- import defaultConfig from "../config.ts?raw"
4
+ import * as stories from "./stories";
5
+ import defaultConfig from "../config?raw"
6
6
 
7
7
  <Meta of={stories} />
8
8
  <Title of={stories} />
@@ -4,7 +4,7 @@ import {
4
4
  getSlotNames,
5
5
  getSlotsFragment,
6
6
  getDocsDescription,
7
- } from "../../utils/storybook.ts";
7
+ } from "../../utils/storybook";
8
8
 
9
9
  import UDataList from "../../ui.data-list/UDataList.vue";
10
10
  import UIcon from "../../ui.image-icon/UIcon.vue";
@@ -14,10 +14,10 @@ import ULink from "../../ui.button-link/ULink.vue";
14
14
  import UAvatar from "../../ui.image-avatar/UAvatar.vue";
15
15
  import UHeader from "../../ui.text-header/UHeader.vue";
16
16
  import ULoader from "../../ui.loader/ULoader.vue";
17
- import tooltip from "../../directives/tooltip/vTooltip.ts";
17
+ import tooltip from "../../v.tooltip/vTooltip";
18
18
 
19
19
  import type { Meta, StoryFn } from "@storybook/vue3-vite";
20
- import type { Props, DataListItem } from "../types.ts";
20
+ import type { Props, DataListItem } from "../types";
21
21
 
22
22
  interface UDataListArgs extends Props {
23
23
  slotTemplate?: string;
@@ -6,7 +6,7 @@ import UEmpty from "../../ui.text-empty/UEmpty.vue";
6
6
  import UIcon from "../../ui.image-icon/UIcon.vue";
7
7
  import draggable from "vuedraggable";
8
8
 
9
- import type { Props, DataListItem } from "../types.ts";
9
+ import type { Props, DataListItem } from "../types";
10
10
 
11
11
  describe("UDataList.vue", () => {
12
12
  const defaultList: DataListItem[] = [
@@ -1,8 +1,8 @@
1
- import defaultConfig from "./config.ts";
1
+ import defaultConfig from "./config";
2
2
 
3
3
  import DraggableContext from "vuedraggable";
4
4
 
5
- import type { ComponentConfig, UnknownType } from "../types.ts";
5
+ import type { ComponentConfig, UnknownType } from "../types";
6
6
 
7
7
  export type Config = typeof defaultConfig;
8
8
 
@@ -18,19 +18,19 @@ import ULoaderProgress from "../ui.loader-progress/ULoaderProgress.vue";
18
18
  import UTableRow from "./UTableRow.vue";
19
19
  import UDivider from "../ui.container-divider/UDivider.vue";
20
20
 
21
- import useUI from "../composables/useUI.ts";
22
- import { getDefaults, cx, getMergedConfig } from "../utils/ui.ts";
23
- import { hasSlotContent } from "../utils/helper.ts";
24
- import { useComponentLocaleMessages } from "../composables/useComponentLocaleMassages.ts";
21
+ import useUI from "../composables/useUI";
22
+ import { getDefaults, cx, getMergedConfig } from "../utils/ui";
23
+ import { hasSlotContent } from "../utils/helper";
24
+ import { useComponentLocaleMessages } from "../composables/useComponentLocaleMassages";
25
25
 
26
- import defaultConfig from "./config.ts";
27
- import { normalizeColumns, mapRowColumns, getFlatRows, getRowChildrenIds } from "./utilTable.ts";
26
+ import defaultConfig from "./config";
27
+ import { normalizeColumns, mapRowColumns, getFlatRows, getRowChildrenIds } from "./utilTable";
28
28
 
29
- import { PX_IN_REM } from "../constants.js";
30
- import { COMPONENT_NAME } from "./constants.ts";
29
+ import { PX_IN_REM } from "../constants";
30
+ import { COMPONENT_NAME } from "./constants";
31
31
 
32
32
  import type { ComputedRef } from "vue";
33
- import type { Config as UDividerConfig } from "../ui.container-divider/types.ts";
33
+ import type { Config as UDividerConfig } from "../ui.container-divider/types";
34
34
  import type {
35
35
  Cell,
36
36
  Row,
@@ -40,7 +40,7 @@ import type {
40
40
  Config,
41
41
  DateDivider,
42
42
  FlatRow,
43
- } from "./types.ts";
43
+ } from "./types";
44
44
 
45
45
  defineOptions({ inheritAttrs: false });
46
46
 
@@ -531,11 +531,15 @@ const {
531
531
  :data-test="getDataTest('select-all')"
532
532
  />
533
533
 
534
- <div
535
- v-if="localSelectedRows.length"
536
- v-bind="stickyHeaderCounterAttrs"
537
- v-text="localSelectedRows.length"
538
- />
534
+ <div v-if="localSelectedRows.length" v-bind="stickyHeaderCounterAttrs">
535
+ <!--
536
+ @slot Use it to customize header counter.
537
+ @binding {number} total
538
+ -->
539
+ <slot name="header-counter" :total="localSelectedRows.length">
540
+ {{ localSelectedRows.length }}
541
+ </slot>
542
+ </div>
539
543
  </div>
540
544
 
541
545
  <!-- TODO: Remove any when key attrs are typed-->
@@ -657,11 +661,15 @@ const {
657
661
  :data-test="getDataTest('select-all')"
658
662
  />
659
663
 
660
- <div
661
- v-if="localSelectedRows.length"
662
- v-bind="headerCounterAttrs"
663
- v-text="localSelectedRows.length"
664
- />
664
+ <div v-if="localSelectedRows.length" v-bind="headerCounterAttrs">
665
+ <!--
666
+ @slot Use it to customize header counter.
667
+ @binding {number} total
668
+ -->
669
+ <slot name="header-counter" :total="localSelectedRows.length">
670
+ {{ localSelectedRows.length }}
671
+ </slot>
672
+ </div>
665
673
  </th>
666
674
 
667
675
  <th
@@ -1,20 +1,20 @@
1
1
  <script setup lang="ts">
2
2
  import { computed, onMounted, useTemplateRef } from "vue";
3
- import { cx } from "../utils/ui.ts";
4
- import { hasSlotContent, isEmptyValue } from "../utils/helper.ts";
3
+ import { cx } from "../utils/ui";
4
+ import { hasSlotContent, isEmptyValue } from "../utils/helper";
5
5
 
6
- import { PX_IN_REM } from "../constants.js";
7
- import { mapRowColumns } from "./utilTable.ts";
6
+ import { PX_IN_REM } from "../constants";
7
+ import { mapRowColumns } from "./utilTable";
8
8
 
9
- import { useMutationObserver } from "../composables/useMutationObserver.ts";
10
- import useUI from "../composables/useUI.ts";
9
+ import { useMutationObserver } from "../composables/useMutationObserver";
10
+ import useUI from "../composables/useUI";
11
11
 
12
12
  import UIcon from "../ui.image-icon/UIcon.vue";
13
13
  import UCheckbox from "../ui.form-checkbox/UCheckbox.vue";
14
14
 
15
- import defaultConfig from "./config.ts";
15
+ import defaultConfig from "./config";
16
16
 
17
- import type { Cell, CellObject, Row, UTableRowProps, Config } from "./types.ts";
17
+ import type { Cell, CellObject, Row, UTableRowProps, Config } from "./types";
18
18
 
19
19
  const NESTED_ROW_SHIFT_REM = 1.5;
20
20
  const LAST_NESTED_ROW_SHIFT_REM = 1;
@@ -29,7 +29,7 @@ export default /*tw*/ {
29
29
  stickyHeaderLoader: "{ULoaderProgress} absolute top-auto bottom-0",
30
30
  headerActionsCheckbox: "{UCheckbox}",
31
31
  headerActionsCounter: "{>headerCounterBase} -ml-1.5",
32
- tableWrapper: "border border-muted rounded-medium bg-default",
32
+ tableWrapper: "border border-muted rounded-medium bg-default overflow-x-auto",
33
33
  table: "min-w-full border-none text-medium w-full table-auto",
34
34
  header:
35
35
  "border-b border-muted [&>tr:first-child>*]:first:rounded-tl-medium [&>tr:last-child>*]:last:rounded-tr-medium relative",
@@ -1,8 +1,8 @@
1
1
  import { Markdown, Meta, Title, Subtitle, Description, Primary, Controls, Stories, Source } from "@storybook/addon-docs/blocks";
2
- import { getSource } from "../../utils/storybook.ts";
2
+ import { getSource } from "../../utils/storybook";
3
3
 
4
- import * as stories from "./stories.ts";
5
- import defaultConfig from "../config.ts?raw"
4
+ import * as stories from "./stories";
5
+ import defaultConfig from "../config?raw"
6
6
 
7
7
  <Meta of={stories} />
8
8
  <Title of={stories} />
@@ -4,8 +4,8 @@ import {
4
4
  getSlotNames,
5
5
  getSlotsFragment,
6
6
  getDocsDescription,
7
- } from "../../utils/storybook.ts";
8
- import { getRandomId } from "../../utils/helper.ts";
7
+ } from "../../utils/storybook";
8
+ import { getRandomId } from "../../utils/helper";
9
9
 
10
10
  import UTable from "../UTable.vue";
11
11
  import UButton from "../../ui.button/UButton.vue";
@@ -16,7 +16,7 @@ import URow from "../../ui.container-row/URow.vue";
16
16
  import UIcon from "../../ui.image-icon/UIcon.vue";
17
17
  import ULoader from "../../ui.loader/ULoader.vue";
18
18
 
19
- import type { Row, Props } from "../types.ts";
19
+ import type { Row, Props } from "../types";
20
20
 
21
21
  interface UTableArgs extends Props {
22
22
  slotTemplate?: string;
@@ -474,6 +474,17 @@ DateDividerCustomLabel.parameters = {
474
474
  },
475
475
  };
476
476
 
477
+ export const HeaderCounterSlot = DefaultTemplate.bind({});
478
+ HeaderCounterSlot.args = {
479
+ selectable: true,
480
+ config: { headerCellCheckbox: "w-20" },
481
+ slotTemplate: `
482
+ <template #header-counter="{ total }">
483
+ Total: {{ total }}
484
+ </template>
485
+ `,
486
+ };
487
+
477
488
  export const HeaderKeySlot = DefaultTemplate.bind({});
478
489
  HeaderKeySlot.args = {
479
490
  slotTemplate: `
@@ -10,9 +10,9 @@ import UDivider from "../../ui.container-divider/UDivider.vue";
10
10
  import {
11
11
  LoaderProgressSymbol,
12
12
  createLoaderProgress,
13
- } from "../../ui.loader-progress/useLoaderProgress.ts";
13
+ } from "../../ui.loader-progress/useLoaderProgress";
14
14
 
15
- import type { Column, Row, Props, ColumnObject } from "../types.ts";
15
+ import type { Column, Row, Props, ColumnObject } from "../types";
16
16
 
17
17
  describe("UTable.vue", () => {
18
18
  const defaultColumns: ColumnObject[] = [
@@ -294,6 +294,24 @@ describe("UTable.vue", () => {
294
294
  });
295
295
 
296
296
  describe("Slots", () => {
297
+ it("Header Counter Slot – renders custom header counter content", () => {
298
+ const customHeaderCounterContent = "Custom Header Counter";
299
+
300
+ const component = mountUTable(
301
+ getDefaultProps({
302
+ selectable: true,
303
+ selectedRows: [defaultRows[0]],
304
+ }),
305
+ {
306
+ slots: {
307
+ "header-counter": customHeaderCounterContent,
308
+ },
309
+ },
310
+ );
311
+
312
+ expect(component.text()).toContain(customHeaderCounterContent);
313
+ });
314
+
297
315
  it("Header Slot – renders custom header content", () => {
298
316
  const customHeaderContent = "Custom Name Header";
299
317
 
@@ -6,7 +6,7 @@ import UTableRow from "../UTableRow.vue";
6
6
  import UIcon from "../../ui.image-icon/UIcon.vue";
7
7
  import UCheckbox from "../../ui.form-checkbox/UCheckbox.vue";
8
8
 
9
- import type { FlatRow, ColumnObject, UTableRowAttrs, Config } from "../types.ts";
9
+ import type { FlatRow, ColumnObject, UTableRowAttrs, Config } from "../types";
10
10
 
11
11
  describe("UTableRow.vue", () => {
12
12
  const defaultColumns: ColumnObject[] = [
@@ -1,8 +1,8 @@
1
- import defaultConfig from "./config.ts";
1
+ import defaultConfig from "./config";
2
2
 
3
3
  import type { Ref } from "vue";
4
- import type { ComponentConfig, UnknownObject } from "../types.ts";
5
- import type { Config as UDividerConfig } from "../ui.container-divider/types.ts";
4
+ import type { ComponentConfig, UnknownObject } from "../types";
5
+ import type { Config as UDividerConfig } from "../ui.container-divider/types";
6
6
 
7
7
  export type Config = typeof defaultConfig;
8
8
 
@@ -1,4 +1,4 @@
1
- import type { Column, ColumnObject, FlatRow, Row, RowData, RowId } from "./types.ts";
1
+ import type { Column, ColumnObject, FlatRow, Row, RowData, RowId } from "./types";
2
2
 
3
3
  export function normalizeColumns(columns: Column[]): ColumnObject[] {
4
4
  return columns.map((column) =>
@@ -2,20 +2,20 @@
2
2
  import { ref, computed, nextTick, useId, useTemplateRef } from "vue";
3
3
  import { isEqual } from "lodash-es";
4
4
 
5
- import useUI from "../composables/useUI.ts";
6
- import { getDefaults } from "../utils/ui.ts";
5
+ import useUI from "../composables/useUI";
6
+ import { getDefaults } from "../utils/ui";
7
7
 
8
8
  import UIcon from "../ui.image-icon/UIcon.vue";
9
9
  import UBadge from "../ui.text-badge/UBadge.vue";
10
10
  import UListbox from "../ui.form-listbox/UListbox.vue";
11
11
 
12
- import { vClickOutside } from "../directives";
12
+ import vClickOutside from "../v.click-outside/vClickOutside";
13
13
 
14
- import defaultConfig from "./config.ts";
15
- import { COMPONENT_NAME } from "./constants.ts";
14
+ import defaultConfig from "./config";
15
+ import { COMPONENT_NAME } from "./constants";
16
16
 
17
- import type { Props, Config } from "./types.ts";
18
- import type { Option, SelectedValue } from "../ui.form-listbox/types.ts";
17
+ import type { Props, Config } from "./types";
18
+ import type { Option, SelectedValue } from "../ui.form-listbox/types";
19
19
 
20
20
  defineOptions({ inheritAttrs: false });
21
21
 
@@ -1,8 +1,8 @@
1
1
  import { Meta, Title, Subtitle, Description, Primary, Controls, Stories, Source } from "@storybook/addon-docs/blocks";
2
- import { getSource } from "../../utils/storybook.ts";
2
+ import { getSource } from "../../utils/storybook";
3
3
 
4
- import * as stories from "./stories.ts";
5
- import defaultConfig from "../config.ts?raw"
4
+ import * as stories from "./stories";
5
+ import defaultConfig from "../config?raw"
6
6
 
7
7
  <Meta of={stories} />
8
8
  <Title of={stories} />
@@ -4,7 +4,7 @@ import {
4
4
  getSlotNames,
5
5
  getSlotsFragment,
6
6
  getDocsDescription,
7
- } from "../../utils/storybook.ts";
7
+ } from "../../utils/storybook";
8
8
 
9
9
  import UDropdownBadge from "../../ui.dropdown-badge/UDropdownBadge.vue";
10
10
  import URow from "../../ui.container-row/URow.vue";
@@ -15,7 +15,7 @@ import UAvatar from "../../ui.image-avatar/UAvatar.vue";
15
15
  import UText from "../../ui.text-block/UText.vue";
16
16
 
17
17
  import type { Meta, StoryFn } from "@storybook/vue3-vite";
18
- import type { Props } from "../types.ts";
18
+ import type { Props } from "../types";
19
19
 
20
20
  interface DefaultUDropdownBadgeArgs extends Props {
21
21
  slotTemplate?: string;
@@ -6,7 +6,7 @@ import UBadge from "../../ui.text-badge/UBadge.vue";
6
6
  import UIcon from "../../ui.image-icon/UIcon.vue";
7
7
  import UListbox from "../../ui.form-listbox/UListbox.vue";
8
8
 
9
- import type { Props } from "../types.ts";
9
+ import type { Props } from "../types";
10
10
 
11
11
  describe("UDropdownBadge.vue", () => {
12
12
  const defaultOptions = [
@@ -1,7 +1,7 @@
1
- import defaultConfig from "./config.ts";
1
+ import defaultConfig from "./config";
2
2
 
3
- import type { Option } from "../ui.form-listbox/types.ts";
4
- import type { ComponentConfig, UnknownObject } from "../types.ts";
3
+ import type { Option } from "../ui.form-listbox/types";
4
+ import type { ComponentConfig, UnknownObject } from "../types";
5
5
 
6
6
  export type Config = typeof defaultConfig;
7
7
 
@@ -2,20 +2,20 @@
2
2
  import { nextTick, computed, provide, ref, useId, useTemplateRef } from "vue";
3
3
  import { isEqual } from "lodash-es";
4
4
 
5
- import useUI from "../composables/useUI.ts";
6
- import { getDefaults } from "../utils/ui.ts";
5
+ import useUI from "../composables/useUI";
6
+ import { getDefaults } from "../utils/ui";
7
7
 
8
8
  import UIcon from "../ui.image-icon/UIcon.vue";
9
9
  import UButton from "../ui.button/UButton.vue";
10
10
  import UListbox from "../ui.form-listbox/UListbox.vue";
11
11
 
12
- import { vClickOutside } from "../directives";
12
+ import vClickOutside from "../v.click-outside/vClickOutside";
13
13
 
14
- import defaultConfig from "./config.ts";
15
- import { COMPONENT_NAME } from "./constants.ts";
14
+ import defaultConfig from "./config";
15
+ import { COMPONENT_NAME } from "./constants";
16
16
 
17
- import type { Props, Config } from "./types.ts";
18
- import type { Option, SelectedValue } from "../ui.form-listbox/types.ts";
17
+ import type { Props, Config } from "./types";
18
+ import type { Option, SelectedValue } from "../ui.form-listbox/types";
19
19
 
20
20
  defineOptions({ inheritAttrs: false });
21
21
 
@@ -173,6 +173,7 @@ const { getDataTest, config, dropdownButtonAttrs, listboxAttrs, toggleIconAttrs,
173
173
  :label="buttonLabel"
174
174
  :size="size"
175
175
  :color="color"
176
+ :block="block"
176
177
  :round="round"
177
178
  :square="square"
178
179
  :variant="variant"
@@ -1,5 +1,12 @@
1
1
  export default /*tw*/ {
2
- wrapper: "relative inline-block h-max",
2
+ wrapper: {
3
+ base: "relative inline-block h-max",
4
+ variants: {
5
+ block: {
6
+ true: "w-full",
7
+ },
8
+ },
9
+ },
3
10
  dropdownButton: "{UButton} justify-between",
4
11
  toggleIcon: {
5
12
  base: "{UIcon} transition duration-300 -mr-1",
@@ -48,6 +55,7 @@ export default /*tw*/ {
48
55
  xPosition: "left",
49
56
  searchable: false,
50
57
  round: false,
58
+ block: false,
51
59
  square: false,
52
60
  disabled: false,
53
61
  multiple: false,
@@ -1,8 +1,8 @@
1
1
  import { Meta, Title, Subtitle, Description, Primary, Controls, Stories, Source } from "@storybook/addon-docs/blocks";
2
- import { getSource } from "../../utils/storybook.ts";
2
+ import { getSource } from "../../utils/storybook";
3
3
 
4
- import * as stories from "./stories.ts";
5
- import defaultConfig from "../config.ts?raw"
4
+ import * as stories from "./stories";
5
+ import defaultConfig from "../config?raw"
6
6
 
7
7
  <Meta of={stories} />
8
8
  <Title of={stories} />
@@ -4,7 +4,7 @@ import {
4
4
  getSlotNames,
5
5
  getSlotsFragment,
6
6
  getDocsDescription,
7
- } from "../../utils/storybook.ts";
7
+ } from "../../utils/storybook";
8
8
 
9
9
  import UDropdownButton from "../../ui.dropdown-button/UDropdownButton.vue";
10
10
  import URow from "../../ui.container-row/URow.vue";
@@ -14,7 +14,7 @@ import ULink from "../../ui.button-link/ULink.vue";
14
14
  import UAvatar from "../../ui.image-avatar/UAvatar.vue";
15
15
 
16
16
  import type { Meta, StoryFn } from "@storybook/vue3-vite";
17
- import type { Props } from "../types.ts";
17
+ import type { Props } from "../types";
18
18
 
19
19
  interface DefaultUDropdownButtonArgs extends Props {
20
20
  slotTemplate?: string;
@@ -167,7 +167,7 @@ export const ListboxXPosition = EnumTemplate.bind({});
167
167
  ListboxXPosition.args = {
168
168
  enum: "xPosition",
169
169
  label: "{enumValue}",
170
- class: "w-40",
170
+ block: true,
171
171
  };
172
172
 
173
173
  export const ListboxYPosition = EnumTemplate.bind({});