nuance-ui 0.2.6 → 0.2.8

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 (386) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/module.mjs +4 -5
  3. package/dist/runtime/components/action-icon/action-icon-group.d.vue.ts +4 -0
  4. package/dist/runtime/components/action-icon/action-icon-group.vue +3 -3
  5. package/dist/runtime/components/action-icon/action-icon-group.vue.d.ts +4 -0
  6. package/dist/runtime/components/action-icon/action-icon-section.d.vue.ts +9 -0
  7. package/dist/runtime/components/action-icon/action-icon-section.vue +4 -4
  8. package/dist/runtime/components/action-icon/action-icon-section.vue.d.ts +9 -0
  9. package/dist/runtime/components/action-icon/action-icon.d.vue.ts +14 -5
  10. package/dist/runtime/components/action-icon/action-icon.vue +2 -1
  11. package/dist/runtime/components/action-icon/action-icon.vue.d.ts +14 -5
  12. package/dist/runtime/components/alert.d.vue.ts +10 -14
  13. package/dist/runtime/components/alert.vue +129 -129
  14. package/dist/runtime/components/alert.vue.d.ts +10 -14
  15. package/dist/runtime/components/app-shell/app-shell-main.vue +18 -18
  16. package/dist/runtime/components/app-shell/app-shell-section.d.vue.ts +4 -1
  17. package/dist/runtime/components/app-shell/app-shell-section.vue.d.ts +4 -1
  18. package/dist/runtime/components/app-shell/app-shell.d.vue.ts +11 -3
  19. package/dist/runtime/components/app-shell/app-shell.vue +1 -1
  20. package/dist/runtime/components/app-shell/app-shell.vue.d.ts +11 -3
  21. package/dist/runtime/components/app-shell/context.d.ts +5 -0
  22. package/dist/runtime/components/avatar/avatar-group.d.vue.ts +1 -1
  23. package/dist/runtime/components/avatar/avatar-group.vue +4 -4
  24. package/dist/runtime/components/avatar/avatar-group.vue.d.ts +1 -1
  25. package/dist/runtime/components/avatar/avatar.d.vue.ts +13 -9
  26. package/dist/runtime/components/avatar/avatar.vue +4 -4
  27. package/dist/runtime/components/avatar/avatar.vue.d.ts +13 -9
  28. package/dist/runtime/components/avatar/index.d.ts +1 -0
  29. package/dist/runtime/components/avatar/index.js +1 -0
  30. package/dist/runtime/components/background-image.d.vue.ts +2 -1
  31. package/dist/runtime/components/background-image.vue +18 -18
  32. package/dist/runtime/components/background-image.vue.d.ts +2 -1
  33. package/dist/runtime/components/badge.d.vue.ts +21 -8
  34. package/dist/runtime/components/badge.vue +161 -162
  35. package/dist/runtime/components/badge.vue.d.ts +21 -8
  36. package/dist/runtime/components/box.d.vue.ts +5 -1
  37. package/dist/runtime/components/box.vue +3 -3
  38. package/dist/runtime/components/box.vue.d.ts +5 -1
  39. package/dist/runtime/components/breadcrumbs.d.vue.ts +23 -3
  40. package/dist/runtime/components/breadcrumbs.vue +2 -2
  41. package/dist/runtime/components/breadcrumbs.vue.d.ts +23 -3
  42. package/dist/runtime/components/button/button-group.d.vue.ts +4 -0
  43. package/dist/runtime/components/button/button-group.vue +3 -3
  44. package/dist/runtime/components/button/button-group.vue.d.ts +4 -0
  45. package/dist/runtime/components/button/button.d.vue.ts +27 -12
  46. package/dist/runtime/components/button/button.module.css +1 -1
  47. package/dist/runtime/components/button/button.vue +9 -4
  48. package/dist/runtime/components/button/button.vue.d.ts +27 -12
  49. package/dist/runtime/components/calendar/calendar.d.vue.ts +2 -2
  50. package/dist/runtime/components/calendar/calendar.vue.d.ts +2 -2
  51. package/dist/runtime/components/calendar/index.d.ts +1 -1
  52. package/dist/runtime/components/calendar/index.js +1 -1
  53. package/dist/runtime/components/calendar/lib/context.d.ts +2 -2
  54. package/dist/runtime/components/calendar/lib/context.js +1 -1
  55. package/dist/runtime/components/calendar/lib/use-calendar-navigation.d.ts +2 -2
  56. package/dist/runtime/components/calendar/lib/use-calendar-navigation.js +1 -1
  57. package/dist/runtime/components/calendar/lib/use-calendar-selection.d.ts +3 -3
  58. package/dist/runtime/components/calendar/lib/use-calendar-selection.js +2 -2
  59. package/dist/runtime/components/calendar/{model.d.ts → types.d.ts} +4 -3
  60. package/dist/runtime/components/calendar/ui/core/calendar-cell.d.vue.ts +1 -0
  61. package/dist/runtime/components/calendar/ui/core/calendar-cell.vue +115 -115
  62. package/dist/runtime/components/calendar/ui/core/calendar-cell.vue.d.ts +1 -0
  63. package/dist/runtime/components/calendar/ui/core/calendar-header.d.vue.ts +7 -1
  64. package/dist/runtime/components/calendar/ui/core/calendar-header.vue.d.ts +7 -1
  65. package/dist/runtime/components/calendar/ui/core/calendar-root.d.vue.ts +3 -3
  66. package/dist/runtime/components/calendar/ui/core/calendar-root.vue +1 -1
  67. package/dist/runtime/components/calendar/ui/core/calendar-root.vue.d.ts +3 -3
  68. package/dist/runtime/components/calendar/ui/levels/calendar-decade.d.vue.ts +3 -1
  69. package/dist/runtime/components/calendar/ui/levels/calendar-decade.vue.d.ts +3 -1
  70. package/dist/runtime/components/calendar/ui/levels/calendar-month.d.vue.ts +2 -1
  71. package/dist/runtime/components/calendar/ui/levels/calendar-month.vue +1 -1
  72. package/dist/runtime/components/calendar/ui/levels/calendar-month.vue.d.ts +2 -1
  73. package/dist/runtime/components/calendar/ui/levels/calendar-year.d.vue.ts +3 -1
  74. package/dist/runtime/components/calendar/ui/levels/calendar-year.vue +1 -1
  75. package/dist/runtime/components/calendar/ui/levels/calendar-year.vue.d.ts +3 -1
  76. package/dist/runtime/components/card/card-section.d.vue.ts +2 -1
  77. package/dist/runtime/components/card/card-section.vue.d.ts +2 -1
  78. package/dist/runtime/components/card/card.d.vue.ts +1 -0
  79. package/dist/runtime/components/card/card.vue.d.ts +1 -0
  80. package/dist/runtime/components/checkbox/checkbox-card.d.vue.ts +6 -0
  81. package/dist/runtime/components/checkbox/checkbox-card.vue +29 -14
  82. package/dist/runtime/components/checkbox/checkbox-card.vue.d.ts +6 -0
  83. package/dist/runtime/components/checkbox/checkbox-group.d.vue.ts +12 -1
  84. package/dist/runtime/components/checkbox/checkbox-group.vue +29 -19
  85. package/dist/runtime/components/checkbox/checkbox-group.vue.d.ts +12 -1
  86. package/dist/runtime/components/checkbox/checkbox-indicator.d.vue.ts +6 -0
  87. package/dist/runtime/components/checkbox/checkbox-indicator.vue +7 -6
  88. package/dist/runtime/components/checkbox/checkbox-indicator.vue.d.ts +6 -0
  89. package/dist/runtime/components/checkbox/checkbox.d.vue.ts +16 -2
  90. package/dist/runtime/components/checkbox/checkbox.vue +36 -19
  91. package/dist/runtime/components/checkbox/checkbox.vue.d.ts +16 -2
  92. package/dist/runtime/components/checkbox/lib/group.context.d.ts +15 -3
  93. package/dist/runtime/components/checkbox/lib/group.context.js +9 -7
  94. package/dist/runtime/components/chip/chip-group.d.vue.ts +3 -0
  95. package/dist/runtime/components/chip/chip-group.vue.d.ts +3 -0
  96. package/dist/runtime/components/chip/chip.d.vue.ts +10 -0
  97. package/dist/runtime/components/chip/chip.vue +10 -10
  98. package/dist/runtime/components/chip/chip.vue.d.ts +10 -0
  99. package/dist/runtime/components/chip/lib.js +1 -1
  100. package/dist/runtime/components/combobox/combobox-dropdown.vue +14 -14
  101. package/dist/runtime/components/combobox/combobox-group.d.vue.ts +3 -2
  102. package/dist/runtime/components/combobox/combobox-group.vue +21 -21
  103. package/dist/runtime/components/combobox/combobox-group.vue.d.ts +3 -2
  104. package/dist/runtime/components/combobox/combobox-option.d.vue.ts +4 -1
  105. package/dist/runtime/components/combobox/combobox-option.vue +22 -22
  106. package/dist/runtime/components/combobox/combobox-option.vue.d.ts +4 -1
  107. package/dist/runtime/components/combobox/combobox-options-dropdown.d.vue.ts +11 -1
  108. package/dist/runtime/components/combobox/combobox-options-dropdown.vue +29 -29
  109. package/dist/runtime/components/combobox/combobox-options-dropdown.vue.d.ts +11 -1
  110. package/dist/runtime/components/combobox/combobox-root.d.vue.ts +14 -10
  111. package/dist/runtime/components/combobox/combobox-root.vue.d.ts +14 -10
  112. package/dist/runtime/components/combobox/lib/context.d.ts +2 -2
  113. package/dist/runtime/components/combobox/lib/context.js +1 -1
  114. package/dist/runtime/components/combobox/lib/use-combobox/index.d.ts +70 -1
  115. package/dist/runtime/components/combobox/lib/use-combobox/index.js +104 -1
  116. package/dist/runtime/components/combobox/lib/use-combobox-data/get-parsed-combobox-data.d.ts +1 -1
  117. package/dist/runtime/components/combobox/lib/use-combobox-data/index.d.ts +7 -1
  118. package/dist/runtime/components/combobox/lib/use-combobox-data/index.js +24 -1
  119. package/dist/runtime/components/combobox/lib/utils/default-option-filter.d.ts +1 -1
  120. package/dist/runtime/components/combobox/lib/utils/is-empty-combobox-data.d.ts +1 -1
  121. package/dist/runtime/components/combobox/lib/utils/is-guards.d.ts +1 -1
  122. package/dist/runtime/components/combobox/types.d.ts +45 -0
  123. package/dist/runtime/components/container.d.vue.ts +2 -0
  124. package/dist/runtime/components/container.vue.d.ts +2 -0
  125. package/dist/runtime/components/date-time-picker.d.vue.ts +3 -0
  126. package/dist/runtime/components/date-time-picker.vue +1 -1
  127. package/dist/runtime/components/date-time-picker.vue.d.ts +3 -0
  128. package/dist/runtime/components/dialog/index.d.ts +1 -1
  129. package/dist/runtime/components/dialog/lib.js +1 -1
  130. package/dist/runtime/components/dialog/{model.d.ts → types.d.ts} +1 -0
  131. package/dist/runtime/components/dialog/ui/dialog-root.d.vue.ts +3 -2
  132. package/dist/runtime/components/dialog/ui/dialog-root.vue +21 -21
  133. package/dist/runtime/components/dialog/ui/dialog-root.vue.d.ts +3 -2
  134. package/dist/runtime/components/files/file-upload-button.d.vue.ts +4 -2
  135. package/dist/runtime/components/files/file-upload-button.vue.d.ts +4 -2
  136. package/dist/runtime/components/files/file-upload-icon.d.vue.ts +4 -2
  137. package/dist/runtime/components/files/file-upload-icon.vue.d.ts +4 -2
  138. package/dist/runtime/components/index.d.ts +12 -11
  139. package/dist/runtime/components/index.js +1 -10
  140. package/dist/runtime/components/input/date-picker.vue +1 -1
  141. package/dist/runtime/components/input/email-input.d.vue.ts +5 -5
  142. package/dist/runtime/components/input/email-input.vue +5 -6
  143. package/dist/runtime/components/input/email-input.vue.d.ts +5 -5
  144. package/dist/runtime/components/input/lib/input-wrapper.context.d.ts +10 -3
  145. package/dist/runtime/components/input/number-input.d.vue.ts +8 -6
  146. package/dist/runtime/components/input/number-input.vue +6 -2
  147. package/dist/runtime/components/input/number-input.vue.d.ts +8 -6
  148. package/dist/runtime/components/input/password-input.vue +1 -0
  149. package/dist/runtime/components/input/text-input.d.vue.ts +9 -6
  150. package/dist/runtime/components/input/text-input.vue +6 -3
  151. package/dist/runtime/components/input/text-input.vue.d.ts +9 -6
  152. package/dist/runtime/components/input/ui/button-input.d.vue.ts +7 -2
  153. package/dist/runtime/components/input/ui/button-input.vue +64 -64
  154. package/dist/runtime/components/input/ui/button-input.vue.d.ts +7 -2
  155. package/dist/runtime/components/input/ui/input-base.d.vue.ts +1 -0
  156. package/dist/runtime/components/input/ui/input-base.vue +283 -283
  157. package/dist/runtime/components/input/ui/input-base.vue.d.ts +1 -0
  158. package/dist/runtime/components/input/ui/input-inline.d.vue.ts +16 -5
  159. package/dist/runtime/components/input/ui/input-inline.vue +9 -5
  160. package/dist/runtime/components/input/ui/input-inline.vue.d.ts +16 -5
  161. package/dist/runtime/components/input/ui/input-label.d.vue.ts +2 -0
  162. package/dist/runtime/components/input/ui/input-label.vue +4 -4
  163. package/dist/runtime/components/input/ui/input-label.vue.d.ts +2 -0
  164. package/dist/runtime/components/input/ui/input-wrapper.d.vue.ts +4 -0
  165. package/dist/runtime/components/input/ui/input-wrapper.vue.d.ts +4 -0
  166. package/dist/runtime/components/input/ui/spin-input.vue +69 -69
  167. package/dist/runtime/components/link/link-button.vue +1 -0
  168. package/dist/runtime/components/link/link.d.vue.ts +1 -0
  169. package/dist/runtime/components/link/link.vue.d.ts +1 -0
  170. package/dist/runtime/components/loader/loader.d.vue.ts +6 -0
  171. package/dist/runtime/components/loader/loader.vue +2 -2
  172. package/dist/runtime/components/loader/loader.vue.d.ts +6 -0
  173. package/dist/runtime/components/nav-link/nav-icon-link.d.vue.ts +11 -4
  174. package/dist/runtime/components/nav-link/nav-icon-link.vue.d.ts +11 -4
  175. package/dist/runtime/components/nav-link/nav-link.d.vue.ts +16 -10
  176. package/dist/runtime/components/nav-link/nav-link.vue +8 -4
  177. package/dist/runtime/components/nav-link/nav-link.vue.d.ts +16 -10
  178. package/dist/runtime/components/paper.d.vue.ts +3 -0
  179. package/dist/runtime/components/paper.vue.d.ts +3 -0
  180. package/dist/runtime/components/popover/lib/context.js +1 -1
  181. package/dist/runtime/components/popover/lib/get-arrow-position.d.ts +1 -1
  182. package/dist/runtime/components/popover/lib/use-popover.d.ts +1 -1
  183. package/dist/runtime/components/popover/popover.d.vue.ts +1 -1
  184. package/dist/runtime/components/popover/popover.vue.d.ts +1 -1
  185. package/dist/runtime/components/popover/{types/index.d.ts → types.d.ts} +7 -6
  186. package/dist/runtime/components/progress/progress-root.d.vue.ts +4 -4
  187. package/dist/runtime/components/progress/progress-root.vue.d.ts +4 -4
  188. package/dist/runtime/components/progress/progress-section.d.vue.ts +1 -1
  189. package/dist/runtime/components/progress/progress-section.vue +1 -1
  190. package/dist/runtime/components/progress/progress-section.vue.d.ts +1 -1
  191. package/dist/runtime/components/roving-focus/index.d.ts +1 -1
  192. package/dist/runtime/components/roving-focus/index.js +1 -1
  193. package/dist/runtime/components/roving-focus/roving-focus-item.vue +1 -1
  194. package/dist/runtime/components/roving-focus/roving-focus.vue +4 -4
  195. package/dist/runtime/components/{select/select.d.vue.ts → select.d.vue.ts} +8 -6
  196. package/dist/runtime/components/{select/select.vue → select.vue} +69 -69
  197. package/dist/runtime/components/{select/select.vue.d.ts → select.vue.d.ts} +8 -6
  198. package/dist/runtime/components/switch/index.d.ts +3 -0
  199. package/dist/runtime/components/switch/index.js +1 -0
  200. package/dist/runtime/components/switch/lib/group.context.d.ts +34 -0
  201. package/dist/runtime/components/switch/lib/group.context.js +25 -0
  202. package/dist/runtime/components/switch/switch-group.d.vue.ts +42 -0
  203. package/dist/runtime/components/switch/switch-group.vue +50 -0
  204. package/dist/runtime/components/switch/switch-group.vue.d.ts +42 -0
  205. package/dist/runtime/components/switch/switch.d.vue.ts +50 -0
  206. package/dist/runtime/components/switch/switch.vue +328 -0
  207. package/dist/runtime/components/switch/switch.vue.d.ts +50 -0
  208. package/dist/runtime/components/table/index.d.ts +1 -1
  209. package/dist/runtime/components/table/index.js +1 -1
  210. package/dist/runtime/components/table/lib.d.ts +1 -1
  211. package/dist/runtime/components/table/{model.d.ts → types.d.ts} +13 -16
  212. package/dist/runtime/components/table/ui/table-sort-icon.d.vue.ts +1 -1
  213. package/dist/runtime/components/table/ui/table-sort-icon.vue +1 -1
  214. package/dist/runtime/components/table/ui/table-sort-icon.vue.d.ts +1 -1
  215. package/dist/runtime/components/table/ui/table-sortable-header.d.vue.ts +1 -1
  216. package/dist/runtime/components/table/ui/table-sortable-header.vue +1 -0
  217. package/dist/runtime/components/table/ui/table-sortable-header.vue.d.ts +1 -1
  218. package/dist/runtime/components/table/ui/table.d.vue.ts +1 -1
  219. package/dist/runtime/components/table/ui/table.vue +296 -296
  220. package/dist/runtime/components/table/ui/table.vue.d.ts +1 -1
  221. package/dist/runtime/components/tabs/index.d.ts +4 -0
  222. package/dist/runtime/components/tabs/lib.d.ts +1 -0
  223. package/dist/runtime/components/tabs/lib.js +9 -1
  224. package/dist/runtime/components/tabs/tabs-list.d.vue.ts +2 -0
  225. package/dist/runtime/components/tabs/tabs-list.vue.d.ts +2 -0
  226. package/dist/runtime/components/tabs/tabs-panel.d.vue.ts +1 -0
  227. package/dist/runtime/components/tabs/tabs-panel.vue.d.ts +1 -0
  228. package/dist/runtime/components/tabs/tabs-root.d.vue.ts +36 -9
  229. package/dist/runtime/components/tabs/tabs-root.vue +4 -3
  230. package/dist/runtime/components/tabs/tabs-root.vue.d.ts +36 -9
  231. package/dist/runtime/components/tabs/tabs-tab.d.vue.ts +7 -3
  232. package/dist/runtime/components/tabs/tabs-tab.vue +7 -4
  233. package/dist/runtime/components/tabs/tabs-tab.vue.d.ts +7 -3
  234. package/dist/runtime/components/text.d.vue.ts +6 -1
  235. package/dist/runtime/components/text.vue +1 -1
  236. package/dist/runtime/components/text.vue.d.ts +6 -1
  237. package/dist/runtime/components/textarea.d.vue.ts +7 -5
  238. package/dist/runtime/components/textarea.vue +6 -3
  239. package/dist/runtime/components/textarea.vue.d.ts +7 -5
  240. package/dist/runtime/components/time-picker/index.d.ts +1 -1
  241. package/dist/runtime/components/time-picker/index.js +1 -1
  242. package/dist/runtime/components/time-picker/lib/get-parsed-time.d.ts +1 -1
  243. package/dist/runtime/components/time-picker/lib/get-time-string.d.ts +1 -1
  244. package/dist/runtime/components/time-picker/lib/use-time-picker.d.ts +1 -1
  245. package/dist/runtime/components/time-picker/time-picker.d.vue.ts +8 -7
  246. package/dist/runtime/components/time-picker/time-picker.vue +230 -230
  247. package/dist/runtime/components/time-picker/time-picker.vue.d.ts +8 -7
  248. package/dist/runtime/components/time-picker/{model.d.ts → types.d.ts} +13 -0
  249. package/dist/runtime/components/title.d.vue.ts +5 -0
  250. package/dist/runtime/components/title.vue.d.ts +5 -0
  251. package/dist/runtime/components/{transition/transition.d.vue.ts → transition.d.vue.ts} +12 -2
  252. package/dist/runtime/components/{transition/transition.vue.d.ts → transition.vue.d.ts} +12 -2
  253. package/dist/runtime/components/tree/_ui/tree-item.d.vue.ts +2 -1
  254. package/dist/runtime/components/tree/_ui/tree-item.vue +2 -2
  255. package/dist/runtime/components/tree/_ui/tree-item.vue.d.ts +2 -1
  256. package/dist/runtime/components/tree/_ui/tree-root.d.vue.ts +9 -1
  257. package/dist/runtime/components/tree/_ui/tree-root.vue +1 -1
  258. package/dist/runtime/components/tree/_ui/tree-root.vue.d.ts +9 -1
  259. package/dist/runtime/components/tree/index.d.ts +1 -1
  260. package/dist/runtime/components/tree/index.js +1 -1
  261. package/dist/runtime/components/tree/lib/context.d.ts +16 -1
  262. package/dist/runtime/components/tree/lib/context.js +1 -1
  263. package/dist/runtime/components/tree/lib/filter-tree-items.d.ts +1 -1
  264. package/dist/runtime/components/tree/tree.d.vue.ts +1 -1
  265. package/dist/runtime/components/tree/tree.vue +20 -20
  266. package/dist/runtime/components/tree/tree.vue.d.ts +1 -1
  267. package/dist/runtime/components/tree/{model.d.ts → types.d.ts} +9 -0
  268. package/dist/runtime/components/visually-hidden/visually-hidden-input.d.vue.ts +4 -1
  269. package/dist/runtime/components/visually-hidden/visually-hidden-input.vue +1 -1
  270. package/dist/runtime/components/visually-hidden/visually-hidden-input.vue.d.ts +4 -1
  271. package/dist/runtime/components/visually-hidden/visually-hidden.d.vue.ts +1 -0
  272. package/dist/runtime/components/visually-hidden/visually-hidden.vue.d.ts +1 -0
  273. package/dist/runtime/composables/create-strict-injection.d.ts +42 -0
  274. package/dist/runtime/{composals → composables}/index.d.ts +2 -0
  275. package/dist/runtime/{composals → composables}/index.js +2 -0
  276. package/dist/runtime/composables/use-active-link.d.ts +15 -0
  277. package/dist/runtime/{composals → composables}/use-date-config.d.ts +10 -5
  278. package/dist/runtime/composables/use-selectable-group.d.ts +23 -0
  279. package/dist/runtime/composables/use-selectable-group.js +20 -0
  280. package/dist/runtime/{composals → composables}/use-style-resolver.d.ts +3 -0
  281. package/dist/runtime/composables/use-theme.d.ts +16 -0
  282. package/dist/runtime/modals/_confirm-modal/confirm-modal.d.vue.ts +1 -1
  283. package/dist/runtime/modals/_confirm-modal/confirm-modal.vue +31 -31
  284. package/dist/runtime/modals/_confirm-modal/confirm-modal.vue.d.ts +1 -1
  285. package/dist/runtime/modals/modal-manager.d.ts +28 -45
  286. package/dist/runtime/modals/modal-manager.js +8 -28
  287. package/dist/runtime/modals/modals-provider.d.vue.ts +1 -7
  288. package/dist/runtime/modals/modals-provider.vue +10 -16
  289. package/dist/runtime/modals/modals-provider.vue.d.ts +1 -7
  290. package/dist/runtime/modals/use-modal.d.ts +5 -14
  291. package/dist/runtime/modals/use-modal.js +3 -6
  292. package/dist/runtime/types/index.d.ts +2 -0
  293. package/dist/runtime/types/theme.d.ts +9 -0
  294. package/dist/runtime/utils/boolean/index.d.ts +2 -0
  295. package/dist/runtime/utils/boolean/index.js +2 -0
  296. package/dist/runtime/utils/boolean/is-falsy.d.ts +6 -0
  297. package/dist/runtime/utils/boolean/is-number-like.d.ts +8 -0
  298. package/dist/runtime/{const/index.d.ts → utils/color/const.d.ts} +1 -0
  299. package/dist/runtime/utils/{color-functions → color}/get-color-var.d.ts +3 -0
  300. package/dist/runtime/utils/color/get-gradient.d.ts +15 -0
  301. package/dist/runtime/utils/{color-functions → color}/get-gradient.js +1 -1
  302. package/dist/runtime/utils/color/index.d.ts +4 -0
  303. package/dist/runtime/utils/color/index.js +4 -0
  304. package/dist/runtime/utils/color/parse-theme-color.d.ts +36 -0
  305. package/dist/runtime/utils/css/get-mod.d.ts +9 -0
  306. package/dist/runtime/utils/{get-mod.js → css/get-mod.js} +1 -1
  307. package/dist/runtime/utils/css/get-size.d.ts +27 -0
  308. package/dist/runtime/utils/{get-size.js → css/get-size.js} +2 -2
  309. package/dist/runtime/utils/css/index.d.ts +3 -0
  310. package/dist/runtime/utils/css/index.js +3 -0
  311. package/dist/runtime/utils/css/rem.d.ts +10 -0
  312. package/dist/runtime/utils/date/create-months.d.ts +12 -0
  313. package/dist/runtime/utils/date/get-days-between.d.ts +5 -0
  314. package/dist/runtime/{helpers → utils}/date/is-weekend.d.ts +3 -0
  315. package/dist/runtime/utils/date/types.d.ts +10 -0
  316. package/dist/runtime/utils/index.d.ts +5 -7
  317. package/dist/runtime/utils/index.js +5 -7
  318. package/dist/runtime/utils/{create-variant-color-resolver.d.ts → style/create-variant-color-resolver.d.ts} +12 -0
  319. package/dist/runtime/utils/{create-variant-color-resolver.js → style/create-variant-color-resolver.js} +3 -3
  320. package/dist/runtime/utils/style/index.d.ts +1 -0
  321. package/dist/runtime/utils/style/index.js +1 -0
  322. package/dist/runtime/utils/tree.d.ts +20 -84
  323. package/package.json +6 -10
  324. package/dist/runtime/components/combobox/lib/use-combobox/use-combobox.d.ts +0 -70
  325. package/dist/runtime/components/combobox/lib/use-combobox/use-combobox.js +0 -104
  326. package/dist/runtime/components/combobox/lib/use-combobox-data/use-combobox-data.d.ts +0 -7
  327. package/dist/runtime/components/combobox/lib/use-combobox-data/use-combobox-data.js +0 -24
  328. package/dist/runtime/components/combobox/types/index.d.ts +0 -19
  329. package/dist/runtime/components/combobox/types/index.js +0 -1
  330. package/dist/runtime/components/combobox/types/item.d.ts +0 -17
  331. package/dist/runtime/components/select/index.d.ts +0 -1
  332. package/dist/runtime/components/transition/index.d.ts +0 -1
  333. package/dist/runtime/components/transition/index.js +0 -0
  334. package/dist/runtime/components/tree/model.js +0 -0
  335. package/dist/runtime/composals/use-active-link.d.ts +0 -5
  336. package/dist/runtime/composals/use-theme.d.ts +0 -9
  337. package/dist/runtime/helpers/create-strict-injection.d.ts +0 -94
  338. package/dist/runtime/helpers/date/create-months.d.ts +0 -3
  339. package/dist/runtime/helpers/date/get-days-between.d.ts +0 -1
  340. package/dist/runtime/helpers/date/types.d.ts +0 -19
  341. package/dist/runtime/helpers/index.d.ts +0 -1
  342. package/dist/runtime/helpers/index.js +0 -1
  343. package/dist/runtime/utils/color-functions/get-gradient.d.ts +0 -3
  344. package/dist/runtime/utils/color-functions/parse-theme-color.d.ts +0 -14
  345. package/dist/runtime/utils/converters/rem.d.ts +0 -2
  346. package/dist/runtime/utils/get-mod.d.ts +0 -2
  347. package/dist/runtime/utils/get-size.d.ts +0 -6
  348. /package/dist/runtime/components/avatar/{_lib → lib}/context.d.ts +0 -0
  349. /package/dist/runtime/components/avatar/{_lib → lib}/context.js +0 -0
  350. /package/dist/runtime/components/avatar/{_lib → lib}/get-initials-color.d.ts +0 -0
  351. /package/dist/runtime/components/avatar/{_lib → lib}/get-initials-color.js +0 -0
  352. /package/dist/runtime/components/avatar/{_lib → lib}/get-initials.d.ts +0 -0
  353. /package/dist/runtime/components/avatar/{_lib → lib}/get-initials.js +0 -0
  354. /package/dist/runtime/{helpers/date → components/calendar}/types.js +0 -0
  355. /package/dist/runtime/components/{calendar/model.js → combobox/types.js} +0 -0
  356. /package/dist/runtime/components/{combobox/types/item.js → dialog/types.js} +0 -0
  357. /package/dist/runtime/components/input/{types/index.d.ts → types.d.ts} +0 -0
  358. /package/dist/runtime/components/{dialog/model.js → input/types.js} +0 -0
  359. /package/dist/runtime/components/{input/types/index.js → popover/types.js} +0 -0
  360. /package/dist/runtime/components/roving-focus/{_lib → lib}/context.d.ts +0 -0
  361. /package/dist/runtime/components/roving-focus/{_lib → lib}/context.js +0 -0
  362. /package/dist/runtime/components/{popover/types/index.js → table/types.js} +0 -0
  363. /package/dist/runtime/components/{select/index.js → time-picker/types.js} +0 -0
  364. /package/dist/runtime/components/{transition/transition.vue → transition.vue} +0 -0
  365. /package/dist/runtime/components/{table/model.js → tree/types.js} +0 -0
  366. /package/dist/runtime/{helpers → composables}/create-strict-injection.js +0 -0
  367. /package/dist/runtime/{composals → composables}/use-active-link.js +0 -0
  368. /package/dist/runtime/{composals → composables}/use-date-config.js +0 -0
  369. /package/dist/runtime/{composals → composables}/use-style-resolver.js +0 -0
  370. /package/dist/runtime/{composals → composables}/use-theme.js +0 -0
  371. /package/dist/runtime/{const/index.js → utils/color/const.js} +0 -0
  372. /package/dist/runtime/utils/{color-functions → color}/get-color-var.js +0 -0
  373. /package/dist/runtime/utils/{color-functions → color}/parse-theme-color.js +0 -0
  374. /package/dist/runtime/utils/{converters → css}/rem.js +0 -0
  375. /package/dist/runtime/{helpers → utils}/date/create-months.js +0 -0
  376. /package/dist/runtime/{helpers → utils}/date/get-days-between.js +0 -0
  377. /package/dist/runtime/{helpers → utils}/date/get-week-number.d.ts +0 -0
  378. /package/dist/runtime/{helpers → utils}/date/get-week-number.js +0 -0
  379. /package/dist/runtime/{helpers → utils}/date/index.d.ts +0 -0
  380. /package/dist/runtime/{helpers → utils}/date/index.js +0 -0
  381. /package/dist/runtime/{helpers → utils}/date/is-same-month.d.ts +0 -0
  382. /package/dist/runtime/{helpers → utils}/date/is-same-month.js +0 -0
  383. /package/dist/runtime/{helpers → utils}/date/is-same-week.d.ts +0 -0
  384. /package/dist/runtime/{helpers → utils}/date/is-same-week.js +0 -0
  385. /package/dist/runtime/{helpers → utils}/date/is-weekend.js +0 -0
  386. /package/dist/runtime/{components/time-picker/model.js → utils/date/types.js} +0 -0
@@ -13,122 +13,122 @@ const style = computed(() => ({
13
13
  </script>
14
14
 
15
15
  <template>
16
- <UnstyledButton v-bind='props' :style :class='$style.cell'>
17
- <slot />
18
- </UnstyledButton>
16
+ <UnstyledButton v-bind='props' :style :class='$style.cell'>
17
+ <slot />
18
+ </UnstyledButton>
19
19
  </template>
20
20
 
21
21
  <style lang="postcss" module>
22
- .cell {
23
- --day-size-xs: rem(30px);
24
- --day-size-sm: rem(36px);
25
- --day-size-md: rem(42px);
26
- --day-size-lg: rem(48px);
27
- --day-size-xl: rem(54px);
28
- --day-size: var(--day-size-sm);
29
-
30
- cursor: pointer;
31
- user-select: none;
32
-
33
- display: inline-flex;
34
- align-items: center;
35
- justify-content: center;
36
-
37
- width: var(--day-size, var(--day-size-sm));
38
- height: var(--day-size, var(--day-size-sm));
39
- border-radius: var(--radius-default);
40
-
41
- font-size: calc(var(--day-size) / 2.8);
42
- color: var(--color-text);
43
-
44
- background-color: transparent;
45
-
46
- &:hover {
47
- &:where(:not([data-static], &:disabled, [data-selected], [data-in-range])) {
48
- @mixin light {
49
- background-color: var(--color-gray-0);
50
- }
51
-
52
- @mixin dark {
53
- background-color: var(--color-dark-5);
54
- }
55
- }
56
- }
57
-
58
- &:where([data-static]) {
59
- cursor: default;
60
- user-select: auto;
61
- }
62
-
63
- &:where([data-weekend]) {
64
- color: var(--color-red-6);
65
- }
66
-
67
- &:where([data-outside]) {
68
- /* stylelint-disable-next-line function-no-unknown */
69
- color: alpha(var(--color-dimmed), .5);
70
- }
71
-
72
- &:where([data-hidden]) {
73
- display: none;
74
- }
75
-
76
- &:where([data-today]:not([data-selected], [data-in-range])) {
77
- @mixin where-light {
78
- border: 1px solid var(--color-gray-4);
79
- }
80
-
81
- @mixin where-dark {
82
- border: 1px solid var(--color-dark-4);
83
- }
84
- }
85
-
86
- &:where([data-in-range]) {
87
- border-radius: 0;
88
-
89
- background-color: var(--color-primary-light-hover);
90
-
91
- &:hover {
92
- &:where(:not(:disabled, [data-static])) {
93
- background-color: var(--color-primary-light);
94
- }
95
- }
96
- }
97
-
98
- &:where([data-first-in-range]) {
99
- border-radius: 0;
100
- border-start-start-radius: var(--radius-default);
101
- border-end-start-radius: var(--radius-default);
102
- }
103
-
104
- &:where([data-last-in-range]) {
105
- border-radius: 0;
106
- border-start-end-radius: var(--radius-default);
107
- border-end-end-radius: var(--radius-default);
108
- }
109
-
110
- &:where([data-last-in-range][data-first-in-range]) {
111
- border-radius: var(--radius-default);
112
- }
113
-
114
- &:where([data-selected]) {
115
- color: var(--color-white);
116
-
117
- background-color: var(--color-primary-filled);
118
-
119
- &:hover {
120
- &:where(:not(:disabled, [data-static])) {
121
- background-color: var(--color-primary-filled-hover);
122
- }
123
- }
124
- }
125
-
126
- &:where(:disabled) {
127
- pointer-events: none;
128
- cursor: not-allowed;
129
-
130
- /* stylelint-disable-next-line function-no-unknown */
131
- color: alpha(var(--color-disabled), .5);
132
- }
133
- }
22
+ .cell {
23
+ --day-size-xs: rem(30px);
24
+ --day-size-sm: rem(36px);
25
+ --day-size-md: rem(42px);
26
+ --day-size-lg: rem(48px);
27
+ --day-size-xl: rem(54px);
28
+ --day-size: var(--day-size-sm);
29
+
30
+ cursor: pointer;
31
+ user-select: none;
32
+
33
+ display: inline-flex;
34
+ align-items: center;
35
+ justify-content: center;
36
+
37
+ width: var(--day-size, var(--day-size-sm));
38
+ height: var(--day-size, var(--day-size-sm));
39
+ border-radius: var(--radius-default);
40
+
41
+ font-size: calc(var(--day-size) / 2.8);
42
+ color: var(--color-text);
43
+
44
+ background-color: transparent;
45
+
46
+ &:hover {
47
+ &:where(:not([data-static], &:disabled, [data-selected], [data-in-range])) {
48
+ @mixin light {
49
+ background-color: var(--color-gray-0);
50
+ }
51
+
52
+ @mixin dark {
53
+ background-color: var(--color-dark-5);
54
+ }
55
+ }
56
+ }
57
+
58
+ &:where([data-static]) {
59
+ cursor: default;
60
+ user-select: auto;
61
+ }
62
+
63
+ &:where([data-weekend]) {
64
+ color: var(--color-red-6);
65
+ }
66
+
67
+ &:where([data-outside]) {
68
+ /* stylelint-disable-next-line function-no-unknown */
69
+ color: alpha(var(--color-dimmed), .5);
70
+ }
71
+
72
+ &:where([data-hidden]) {
73
+ display: none;
74
+ }
75
+
76
+ &:where([data-today]:not([data-selected], [data-in-range])) {
77
+ @mixin where-light {
78
+ border: 1px solid var(--color-gray-4);
79
+ }
80
+
81
+ @mixin where-dark {
82
+ border: 1px solid var(--color-dark-4);
83
+ }
84
+ }
85
+
86
+ &:where([data-in-range]) {
87
+ border-radius: 0;
88
+
89
+ background-color: var(--color-primary-light-hover);
90
+
91
+ &:hover {
92
+ &:where(:not(:disabled, [data-static])) {
93
+ background-color: var(--color-primary-light);
94
+ }
95
+ }
96
+ }
97
+
98
+ &:where([data-first-in-range]) {
99
+ border-radius: 0;
100
+ border-start-start-radius: var(--radius-default);
101
+ border-end-start-radius: var(--radius-default);
102
+ }
103
+
104
+ &:where([data-last-in-range]) {
105
+ border-radius: 0;
106
+ border-start-end-radius: var(--radius-default);
107
+ border-end-end-radius: var(--radius-default);
108
+ }
109
+
110
+ &:where([data-last-in-range][data-first-in-range]) {
111
+ border-radius: var(--radius-default);
112
+ }
113
+
114
+ &:where([data-selected]) {
115
+ color: var(--color-white);
116
+
117
+ background-color: var(--color-primary-filled);
118
+
119
+ &:hover {
120
+ &:where(:not(:disabled, [data-static])) {
121
+ background-color: var(--color-primary-filled-hover);
122
+ }
123
+ }
124
+ }
125
+
126
+ &:where(:disabled) {
127
+ pointer-events: none;
128
+ cursor: not-allowed;
129
+
130
+ /* stylelint-disable-next-line function-no-unknown */
131
+ color: alpha(var(--color-disabled), .5);
132
+ }
133
+ }
134
134
  </style>
@@ -1,6 +1,7 @@
1
1
  import type { NuanceSize } from '@nui/types';
2
2
  import type { BoxProps } from '../../../box.vue.js';
3
3
  export interface CalendarCellProps extends BoxProps {
4
+ /** Component size */
4
5
  size?: NuanceSize | string;
5
6
  }
6
7
  declare var __VLS_8: {};
@@ -1,12 +1,18 @@
1
1
  import type { BoxProps } from '../../../box.vue.js';
2
2
  export interface CalendarHeaderProps extends BoxProps {
3
+ /** Icon for the previous navigation button */
3
4
  prevIcon?: string;
5
+ /** Icon for the next navigation button */
4
6
  nextIcon?: string;
7
+ /** Whether the previous button is rendered */
5
8
  withPrev?: boolean;
9
+ /** Whether the next button is rendered */
6
10
  withNext?: boolean;
11
+ /** Returns true when the next button should be disabled */
7
12
  nextDisabled?: () => boolean;
13
+ /** Returns true when the previous button should be disabled */
8
14
  prevDisabled?: () => boolean;
9
- /** Label disabled state */
15
+ /** Disables the level label button */
10
16
  disabled?: boolean;
11
17
  }
12
18
  export interface CalendarHeaderEmits {
@@ -1,12 +1,18 @@
1
1
  import type { BoxProps } from '../../../box.vue.js';
2
2
  export interface CalendarHeaderProps extends BoxProps {
3
+ /** Icon for the previous navigation button */
3
4
  prevIcon?: string;
5
+ /** Icon for the next navigation button */
4
6
  nextIcon?: string;
7
+ /** Whether the previous button is rendered */
5
8
  withPrev?: boolean;
9
+ /** Whether the next button is rendered */
6
10
  withNext?: boolean;
11
+ /** Returns true when the next button should be disabled */
7
12
  nextDisabled?: () => boolean;
13
+ /** Returns true when the previous button should be disabled */
8
14
  prevDisabled?: () => boolean;
9
- /** Label disabled state */
15
+ /** Disables the level label button */
10
16
  disabled?: boolean;
11
17
  }
12
18
  export interface CalendarHeaderEmits {
@@ -1,7 +1,7 @@
1
1
  import type { DateInput, FormatToken } from '@formkit/tempo';
2
- import type { DateConfig } from '@nui/composals';
3
- import type { DateMatcher } from '@nui/helpers/date';
4
- import type { DateSelection, SelectionMode } from '../../model.js';
2
+ import type { DateConfig } from '@nui/composables';
3
+ import type { DateMatcher } from '@nui/utils';
4
+ import type { DateSelection, SelectionMode } from '../../types.js';
5
5
  export interface CalendarRootProps<T extends SelectionMode> {
6
6
  /** Selection mode @default 'single' */
7
7
  mode?: T;
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { range } from "@formkit/tempo";
3
- import { useDatesConfig } from "@nui/composals";
3
+ import { useDatesConfig } from "@nui/composables";
4
4
  import { computed } from "vue";
5
5
  import Box from "../../../box.vue";
6
6
  import { useProvideCalendarState } from "../../lib/context";
@@ -1,7 +1,7 @@
1
1
  import type { DateInput, FormatToken } from '@formkit/tempo';
2
- import type { DateConfig } from '@nui/composals';
3
- import type { DateMatcher } from '@nui/helpers/date';
4
- import type { DateSelection, SelectionMode } from '../../model.js';
2
+ import type { DateConfig } from '@nui/composables';
3
+ import type { DateMatcher } from '@nui/utils';
4
+ import type { DateSelection, SelectionMode } from '../../types.js';
5
5
  export interface CalendarRootProps<T extends SelectionMode> {
6
6
  /** Selection mode @default 'single' */
7
7
  mode?: T;
@@ -2,9 +2,11 @@ import type { DateInput } from '@formkit/tempo';
2
2
  import type { NuanceSize } from '@nui/types';
3
3
  import type { CalendarCellProps } from '../core/index.js';
4
4
  export interface CalendarDecadeProps extends CalendarCellProps {
5
+ /** Start date of the decade */
5
6
  date: DateInput;
6
- /** Controls size */
7
+ /** Component size */
7
8
  size?: NuanceSize | string;
9
+ /** Allows selecting a year as the final value without drilling down */
8
10
  selectable?: boolean;
9
11
  }
10
12
  declare const __VLS_export: import("vue").DefineComponent<CalendarDecadeProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -2,9 +2,11 @@ import type { DateInput } from '@formkit/tempo';
2
2
  import type { NuanceSize } from '@nui/types';
3
3
  import type { CalendarCellProps } from '../core/index.js';
4
4
  export interface CalendarDecadeProps extends CalendarCellProps {
5
+ /** Start date of the decade */
5
6
  date: DateInput;
6
- /** Controls size */
7
+ /** Component size */
7
8
  size?: NuanceSize | string;
9
+ /** Allows selecting a year as the final value without drilling down */
8
10
  selectable?: boolean;
9
11
  }
10
12
  declare const __VLS_export: import("vue").DefineComponent<CalendarDecadeProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -1,10 +1,11 @@
1
1
  import type { DateInput } from '@formkit/tempo';
2
2
  import type { NuanceSize } from '@nui/types';
3
3
  export interface CalendarMonthProps {
4
+ /** ISO string of the month to render */
4
5
  month: string;
5
6
  /** Detects the presence of spaces between cells. @default `true` */
6
7
  withCellSpacing?: boolean;
7
- /** Controls size */
8
+ /** Component size */
8
9
  size?: NuanceSize | string;
9
10
  /** Determines whether week numbers should be displayed @default `false` */
10
11
  withWeekNumbers?: boolean;
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { isAfter, isBefore, sameDay } from "@formkit/tempo";
3
- import { createMonth, getWeekNumber, isSameMonth, isWeekend as isWeekendDay } from "@nui/helpers/date";
3
+ import { createMonth, getWeekNumber, isSameMonth, isWeekend as isWeekendDay } from "@nui/utils";
4
4
  import { shallowRef, watch } from "vue";
5
5
  import Box from "../../../box.vue";
6
6
  import { useCalendarState } from "../../lib/context";
@@ -1,10 +1,11 @@
1
1
  import type { DateInput } from '@formkit/tempo';
2
2
  import type { NuanceSize } from '@nui/types';
3
3
  export interface CalendarMonthProps {
4
+ /** ISO string of the month to render */
4
5
  month: string;
5
6
  /** Detects the presence of spaces between cells. @default `true` */
6
7
  withCellSpacing?: boolean;
7
- /** Controls size */
8
+ /** Component size */
8
9
  size?: NuanceSize | string;
9
10
  /** Determines whether week numbers should be displayed @default `false` */
10
11
  withWeekNumbers?: boolean;
@@ -2,9 +2,11 @@ import type { DateInput } from '@formkit/tempo';
2
2
  import type { NuanceSize } from '@nui/types';
3
3
  import type { CalendarCellProps } from '../core/index.js';
4
4
  export interface CalendarYearProps extends CalendarCellProps {
5
+ /** Year date used to generate the month grid */
5
6
  year: DateInput;
6
- /** Controls size */
7
+ /** Component size */
7
8
  size?: NuanceSize | string;
9
+ /** Allows selecting a month as the final value without drilling down */
8
10
  selectable?: boolean;
9
11
  }
10
12
  declare const __VLS_export: import("vue").DefineComponent<CalendarYearProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { date, isAfter, isBefore, range } from "@formkit/tempo";
3
- import { isSameMonth } from "@nui/helpers/date";
3
+ import { isSameMonth } from "@nui/utils";
4
4
  import { chunk } from "es-toolkit";
5
5
  import { computed } from "vue";
6
6
  import Box from "../../../box.vue";
@@ -2,9 +2,11 @@ import type { DateInput } from '@formkit/tempo';
2
2
  import type { NuanceSize } from '@nui/types';
3
3
  import type { CalendarCellProps } from '../core/index.js';
4
4
  export interface CalendarYearProps extends CalendarCellProps {
5
+ /** Year date used to generate the month grid */
5
6
  year: DateInput;
6
- /** Controls size */
7
+ /** Component size */
7
8
  size?: NuanceSize | string;
9
+ /** Allows selecting a month as the final value without drilling down */
8
10
  selectable?: boolean;
9
11
  }
10
12
  declare const __VLS_export: import("vue").DefineComponent<CalendarYearProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -1,7 +1,8 @@
1
1
  import type { BoxProps } from '../box.vue.js';
2
2
  export interface CardSectionProps extends BoxProps {
3
+ /** Shows a top border */
3
4
  withBorder?: boolean;
4
- /** Determines whether the section should inherit padding from the parent `UiCard`, `false` by default */
5
+ /** Inherits horizontal padding from the parent card */
5
6
  inheritPadding?: boolean;
6
7
  }
7
8
  declare var __VLS_8: {};
@@ -1,7 +1,8 @@
1
1
  import type { BoxProps } from '../box.vue.js';
2
2
  export interface CardSectionProps extends BoxProps {
3
+ /** Shows a top border */
3
4
  withBorder?: boolean;
4
- /** Determines whether the section should inherit padding from the parent `UiCard`, `false` by default */
5
+ /** Inherits horizontal padding from the parent card */
5
6
  inheritPadding?: boolean;
6
7
  }
7
8
  declare var __VLS_8: {};
@@ -1,6 +1,7 @@
1
1
  import type { NuanceSpacing } from '@nui/types';
2
2
  import type { PaperProps } from '../paper.vue.js';
3
3
  export interface CardProps extends PaperProps {
4
+ /** Padding token */
4
5
  padding?: NuanceSpacing;
5
6
  }
6
7
  declare var __VLS_8: {};
@@ -1,6 +1,7 @@
1
1
  import type { NuanceSpacing } from '@nui/types';
2
2
  import type { PaperProps } from '../paper.vue.js';
3
3
  export interface CardProps extends PaperProps {
4
+ /** Padding token */
4
5
  padding?: NuanceSpacing;
5
6
  }
6
7
  declare var __VLS_8: {};
@@ -1,9 +1,15 @@
1
1
  import type { NuanceRadius } from '@nui/types';
2
2
  import type { Mod } from '@nui/utils';
3
3
  export interface CheckboxCardProps {
4
+ /** Element modifiers transformed into `data-` attributes, falsy values are removed */
4
5
  mod?: Mod | Mod[];
6
+ /** Shows a border around the card */
5
7
  withBorder?: boolean;
8
+ /** Border radius */
6
9
  radius?: NuanceRadius;
10
+ /** Disables the component */
11
+ disabled?: boolean | undefined;
12
+ /** Value used in checkbox group context */
7
13
  value?: string;
8
14
  }
9
15
  type __VLS_Props = CheckboxCardProps;
@@ -6,28 +6,42 @@ import { useProvideCheckboxCard } from "./lib/card.context";
6
6
  import { useCheckboxGroupState } from "./lib/group.context";
7
7
  const {
8
8
  withBorder,
9
- value: _value,
9
+ value,
10
10
  mod,
11
- radius
11
+ radius,
12
+ disabled: _disabled
12
13
  } = defineProps({
13
14
  mod: { type: [Object, Array], required: false },
14
15
  withBorder: { type: Boolean, required: false },
15
16
  radius: { type: [String, Number], required: false },
17
+ disabled: { type: Boolean, required: false, skipCheck: true },
16
18
  value: { type: String, required: false }
17
19
  });
18
20
  const ctx = useCheckboxGroupState();
19
21
  const modelValue = defineModel({ type: Boolean, ...{ default: false } });
20
- const checked = computed(() => {
21
- if (ctx?.value && _value)
22
- return ctx?.value.value.includes(_value);
23
- return modelValue.value;
22
+ const checked = computed({
23
+ get: () => {
24
+ if (ctx && value !== void 0)
25
+ return ctx.isSelected(value);
26
+ return modelValue.value;
27
+ },
28
+ set: (check) => {
29
+ if (ctx && value !== void 0)
30
+ return ctx.update(value);
31
+ modelValue.value = check;
32
+ }
33
+ });
34
+ const disabled = computed(() => {
35
+ if (_disabled)
36
+ return true;
37
+ if (ctx && value !== void 0)
38
+ return ctx.isDisabled(value);
39
+ return false;
40
+ });
41
+ useProvideCheckboxCard({
42
+ value: checked,
43
+ onUpdate: () => checked.value = !checked.value
24
44
  });
25
- function onUpdate() {
26
- if (_value && ctx?.onUpdate)
27
- return ctx.onUpdate(_value);
28
- return modelValue.value = !modelValue.value;
29
- }
30
- useProvideCheckboxCard({ value: checked, onUpdate });
31
45
  const style = computed(() => ({
32
46
  "--card-radius": getRadius(radius)
33
47
  }));
@@ -36,10 +50,11 @@ const style = computed(() => ({
36
50
  <template>
37
51
  <UnstyledButton
38
52
  :mod='[{ checked, "with-border": withBorder }, mod]'
39
- :value='_value'
53
+ :value='checked'
40
54
  :class='$style.root'
41
55
  :style
42
- @click='onUpdate()'
56
+ :disabled
57
+ @click='checked = !checked'
43
58
  >
44
59
  <slot />
45
60
  </UnstyledButton>
@@ -1,9 +1,15 @@
1
1
  import type { NuanceRadius } from '@nui/types';
2
2
  import type { Mod } from '@nui/utils';
3
3
  export interface CheckboxCardProps {
4
+ /** Element modifiers transformed into `data-` attributes, falsy values are removed */
4
5
  mod?: Mod | Mod[];
6
+ /** Shows a border around the card */
5
7
  withBorder?: boolean;
8
+ /** Border radius */
6
9
  radius?: NuanceRadius;
10
+ /** Disables the component */
11
+ disabled?: boolean | undefined;
12
+ /** Value used in checkbox group context */
7
13
  value?: string;
8
14
  }
9
15
  type __VLS_Props = CheckboxCardProps;
@@ -1,8 +1,19 @@
1
1
  import type { NuanceSize } from '@nui/types';
2
2
  import type { InputWrapperProps } from '../input/index.js';
3
3
  export interface CheckboxGroupProps extends Omit<InputWrapperProps, 'resize' | 'multiline' | 'id' | 'size'> {
4
- name: string;
4
+ /** Input name */
5
+ name?: string;
6
+ /** Component size */
5
7
  size?: NuanceSize;
8
+ /** Prevents value changes */
9
+ readOnly?: boolean;
10
+ /** Disables the component */
11
+ disabled?: boolean;
12
+ /**
13
+ * Maximum number of checkboxes that can be selected.
14
+ * Unselected switches are disabled once the limit is reached
15
+ */
16
+ maxSelectedValues?: number;
6
17
  }
7
18
  type __VLS_Props = CheckboxGroupProps;
8
19
  type __VLS_ModelProps = {
@@ -3,9 +3,19 @@ import { useId } from "vue";
3
3
  import InputWrapper from "../input/ui/input-wrapper.vue";
4
4
  import VisuallyHiddenInput from "../visually-hidden/visually-hidden-input.vue";
5
5
  import { useProvideCheckboxGroup } from "./lib/group.context";
6
- const { size, name, ...rest } = defineProps({
7
- name: { type: String, required: true },
6
+ const {
7
+ size,
8
+ name,
9
+ maxSelectedValues,
10
+ disabled,
11
+ readOnly,
12
+ ...rest
13
+ } = defineProps({
14
+ name: { type: String, required: false },
8
15
  size: { type: String, required: false },
16
+ readOnly: { type: Boolean, required: false },
17
+ disabled: { type: Boolean, required: false },
18
+ maxSelectedValues: { type: Number, required: false },
9
19
  error: { type: String, required: false },
10
20
  description: { type: String, required: false },
11
21
  label: { type: String, required: false },
@@ -17,24 +27,24 @@ const { size, name, ...rest } = defineProps({
17
27
  });
18
28
  const value = defineModel({ type: Array, ...{ default: [] } });
19
29
  const id = useId();
20
- useProvideCheckboxGroup({ value, size });
30
+ useProvideCheckboxGroup({ value, size, maxSelectedValues, disabled, readOnly });
21
31
  </script>
22
32
 
23
33
  <template>
24
- <InputWrapper :id v-bind='rest'>
25
- <template #label>
26
- <slot name='label' />
27
- </template>
28
-
29
- <slot />
30
-
31
- <template #description>
32
- <slot name='description' />
33
- </template>
34
- <template #error>
35
- <slot name='error' />
36
- </template>
37
-
38
- <VisuallyHiddenInput :id v-model='value' :name />
39
- </InputWrapper>
34
+ <InputWrapper :id v-bind='rest'>
35
+ <template v-if='!!$slots.label' #label>
36
+ <slot name='label' />
37
+ </template>
38
+
39
+ <slot />
40
+
41
+ <template v-if='!!$slots.description' #description>
42
+ <slot name='description' />
43
+ </template>
44
+ <template v-if='!!$slots.error' #error>
45
+ <slot name='error' />
46
+ </template>
47
+
48
+ <VisuallyHiddenInput :id v-model='value' :name />
49
+ </InputWrapper>
40
50
  </template>