nuance-ui 0.1.1

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/README.md +90 -0
  2. package/dist/module.d.mts +24 -0
  3. package/dist/module.json +12 -0
  4. package/dist/module.mjs +96 -0
  5. package/dist/runtime/components/action-icon/action-icon-group.d.vue.ts +17 -0
  6. package/dist/runtime/components/action-icon/action-icon-group.vue +13 -0
  7. package/dist/runtime/components/action-icon/action-icon-group.vue.d.ts +17 -0
  8. package/dist/runtime/components/action-icon/action-icon-section.d.vue.ts +23 -0
  9. package/dist/runtime/components/action-icon/action-icon-section.vue +45 -0
  10. package/dist/runtime/components/action-icon/action-icon-section.vue.d.ts +23 -0
  11. package/dist/runtime/components/action-icon/action-icon.d.vue.ts +29 -0
  12. package/dist/runtime/components/action-icon/action-icon.module.css +1 -0
  13. package/dist/runtime/components/action-icon/action-icon.vue +71 -0
  14. package/dist/runtime/components/action-icon/action-icon.vue.d.ts +29 -0
  15. package/dist/runtime/components/action-icon/index.d.ts +3 -0
  16. package/dist/runtime/components/action-icon/index.js +0 -0
  17. package/dist/runtime/components/app-shell/app-shell-aside.d.vue.ts +14 -0
  18. package/dist/runtime/components/app-shell/app-shell-aside.vue +43 -0
  19. package/dist/runtime/components/app-shell/app-shell-aside.vue.d.ts +14 -0
  20. package/dist/runtime/components/app-shell/app-shell-footer.d.vue.ts +14 -0
  21. package/dist/runtime/components/app-shell/app-shell-footer.vue +42 -0
  22. package/dist/runtime/components/app-shell/app-shell-footer.vue.d.ts +14 -0
  23. package/dist/runtime/components/app-shell/app-shell-header.d.vue.ts +14 -0
  24. package/dist/runtime/components/app-shell/app-shell-header.vue +43 -0
  25. package/dist/runtime/components/app-shell/app-shell-header.vue.d.ts +14 -0
  26. package/dist/runtime/components/app-shell/app-shell-main.d.vue.ts +14 -0
  27. package/dist/runtime/components/app-shell/app-shell-main.vue +30 -0
  28. package/dist/runtime/components/app-shell/app-shell-main.vue.d.ts +14 -0
  29. package/dist/runtime/components/app-shell/app-shell-navbar.d.vue.ts +14 -0
  30. package/dist/runtime/components/app-shell/app-shell-navbar.vue +47 -0
  31. package/dist/runtime/components/app-shell/app-shell-navbar.vue.d.ts +14 -0
  32. package/dist/runtime/components/app-shell/app-shell-section.d.vue.ts +18 -0
  33. package/dist/runtime/components/app-shell/app-shell-section.vue +22 -0
  34. package/dist/runtime/components/app-shell/app-shell-section.vue.d.ts +18 -0
  35. package/dist/runtime/components/app-shell/app-shell.d.vue.ts +27 -0
  36. package/dist/runtime/components/app-shell/app-shell.vue +70 -0
  37. package/dist/runtime/components/app-shell/app-shell.vue.d.ts +27 -0
  38. package/dist/runtime/components/app-shell/index.d.ts +7 -0
  39. package/dist/runtime/components/app-shell/index.js +0 -0
  40. package/dist/runtime/components/background-image.d.vue.ts +10 -0
  41. package/dist/runtime/components/background-image.vue +37 -0
  42. package/dist/runtime/components/background-image.vue.d.ts +10 -0
  43. package/dist/runtime/components/box.d.vue.ts +20 -0
  44. package/dist/runtime/components/box.vue +14 -0
  45. package/dist/runtime/components/box.vue.d.ts +20 -0
  46. package/dist/runtime/components/button/button-group.d.vue.ts +17 -0
  47. package/dist/runtime/components/button/button-group.vue +13 -0
  48. package/dist/runtime/components/button/button-group.vue.d.ts +17 -0
  49. package/dist/runtime/components/button/button.d.vue.ts +40 -0
  50. package/dist/runtime/components/button/button.module.css +1 -0
  51. package/dist/runtime/components/button/button.vue +108 -0
  52. package/dist/runtime/components/button/button.vue.d.ts +40 -0
  53. package/dist/runtime/components/button/index.d.ts +3 -0
  54. package/dist/runtime/components/button/index.js +0 -0
  55. package/dist/runtime/components/button/unstyled-button.d.vue.ts +16 -0
  56. package/dist/runtime/components/button/unstyled-button.vue +37 -0
  57. package/dist/runtime/components/button/unstyled-button.vue.d.ts +16 -0
  58. package/dist/runtime/components/card/card-section.d.vue.ts +19 -0
  59. package/dist/runtime/components/card/card-section.vue +14 -0
  60. package/dist/runtime/components/card/card-section.vue.d.ts +19 -0
  61. package/dist/runtime/components/card/card.d.vue.ts +18 -0
  62. package/dist/runtime/components/card/card.module.css +1 -0
  63. package/dist/runtime/components/card/card.vue +18 -0
  64. package/dist/runtime/components/card/card.vue.d.ts +18 -0
  65. package/dist/runtime/components/card/index.d.ts +2 -0
  66. package/dist/runtime/components/card/index.js +0 -0
  67. package/dist/runtime/components/checkbox/checkbox-card.d.vue.ts +30 -0
  68. package/dist/runtime/components/checkbox/checkbox-card.vue +76 -0
  69. package/dist/runtime/components/checkbox/checkbox-card.vue.d.ts +30 -0
  70. package/dist/runtime/components/checkbox/checkbox-group.d.vue.ts +34 -0
  71. package/dist/runtime/components/checkbox/checkbox-group.vue +32 -0
  72. package/dist/runtime/components/checkbox/checkbox-group.vue.d.ts +34 -0
  73. package/dist/runtime/components/checkbox/checkbox-indicator.d.vue.ts +37 -0
  74. package/dist/runtime/components/checkbox/checkbox-indicator.vue +161 -0
  75. package/dist/runtime/components/checkbox/checkbox-indicator.vue.d.ts +37 -0
  76. package/dist/runtime/components/checkbox/checkbox.d.vue.ts +36 -0
  77. package/dist/runtime/components/checkbox/checkbox.vue +190 -0
  78. package/dist/runtime/components/checkbox/checkbox.vue.d.ts +36 -0
  79. package/dist/runtime/components/checkbox/index.d.ts +6 -0
  80. package/dist/runtime/components/checkbox/index.js +2 -0
  81. package/dist/runtime/components/checkbox/lib/card.context.d.ts +7 -0
  82. package/dist/runtime/components/checkbox/lib/card.context.js +8 -0
  83. package/dist/runtime/components/checkbox/lib/group.context.d.ts +16 -0
  84. package/dist/runtime/components/checkbox/lib/group.context.js +15 -0
  85. package/dist/runtime/components/chip/chip-group.d.vue.ts +24 -0
  86. package/dist/runtime/components/chip/chip-group.vue +20 -0
  87. package/dist/runtime/components/chip/chip-group.vue.d.ts +24 -0
  88. package/dist/runtime/components/chip/chip.d.vue.ts +35 -0
  89. package/dist/runtime/components/chip/chip.vue +270 -0
  90. package/dist/runtime/components/chip/chip.vue.d.ts +35 -0
  91. package/dist/runtime/components/chip/index.d.ts +3 -0
  92. package/dist/runtime/components/chip/index.js +1 -0
  93. package/dist/runtime/components/chip/lib.d.ts +14 -0
  94. package/dist/runtime/components/chip/lib.js +25 -0
  95. package/dist/runtime/components/combobox/combobox-dropdown.d.vue.ts +13 -0
  96. package/dist/runtime/components/combobox/combobox-dropdown.vue +33 -0
  97. package/dist/runtime/components/combobox/combobox-dropdown.vue.d.ts +13 -0
  98. package/dist/runtime/components/combobox/combobox-empty.d.vue.ts +16 -0
  99. package/dist/runtime/components/combobox/combobox-empty.vue +11 -0
  100. package/dist/runtime/components/combobox/combobox-empty.vue.d.ts +16 -0
  101. package/dist/runtime/components/combobox/combobox-group.d.vue.ts +27 -0
  102. package/dist/runtime/components/combobox/combobox-group.vue +47 -0
  103. package/dist/runtime/components/combobox/combobox-group.vue.d.ts +27 -0
  104. package/dist/runtime/components/combobox/combobox-option-list.d.vue.ts +18 -0
  105. package/dist/runtime/components/combobox/combobox-option-list.vue +13 -0
  106. package/dist/runtime/components/combobox/combobox-option-list.vue.d.ts +18 -0
  107. package/dist/runtime/components/combobox/combobox-option.d.vue.ts +23 -0
  108. package/dist/runtime/components/combobox/combobox-option.vue +65 -0
  109. package/dist/runtime/components/combobox/combobox-option.vue.d.ts +23 -0
  110. package/dist/runtime/components/combobox/combobox-options-dropdown.d.vue.ts +34 -0
  111. package/dist/runtime/components/combobox/combobox-options-dropdown.vue +74 -0
  112. package/dist/runtime/components/combobox/combobox-options-dropdown.vue.d.ts +34 -0
  113. package/dist/runtime/components/combobox/combobox-root.d.vue.ts +49 -0
  114. package/dist/runtime/components/combobox/combobox-root.vue +46 -0
  115. package/dist/runtime/components/combobox/combobox-root.vue.d.ts +49 -0
  116. package/dist/runtime/components/combobox/combobox-target.d.vue.ts +29 -0
  117. package/dist/runtime/components/combobox/combobox-target.vue +32 -0
  118. package/dist/runtime/components/combobox/combobox-target.vue.d.ts +29 -0
  119. package/dist/runtime/components/combobox/combobox.module.css +1 -0
  120. package/dist/runtime/components/combobox/index.d.ts +11 -0
  121. package/dist/runtime/components/combobox/index.js +2 -0
  122. package/dist/runtime/components/combobox/lib/const.d.ts +7 -0
  123. package/dist/runtime/components/combobox/lib/const.js +6 -0
  124. package/dist/runtime/components/combobox/lib/context.d.ts +16 -0
  125. package/dist/runtime/components/combobox/lib/context.js +8 -0
  126. package/dist/runtime/components/combobox/lib/use-combobox/get-index.d.ts +3 -0
  127. package/dist/runtime/components/combobox/lib/use-combobox/get-index.js +33 -0
  128. package/dist/runtime/components/combobox/lib/use-combobox/handlers.d.ts +36 -0
  129. package/dist/runtime/components/combobox/lib/use-combobox/handlers.js +82 -0
  130. package/dist/runtime/components/combobox/lib/use-combobox/index.d.ts +1 -0
  131. package/dist/runtime/components/combobox/lib/use-combobox/index.js +1 -0
  132. package/dist/runtime/components/combobox/lib/use-combobox/use-combobox.d.ts +70 -0
  133. package/dist/runtime/components/combobox/lib/use-combobox/use-combobox.js +97 -0
  134. package/dist/runtime/components/combobox/lib/use-combobox-data/get-parsed-combobox-data.d.ts +2 -0
  135. package/dist/runtime/components/combobox/lib/use-combobox-data/get-parsed-combobox-data.js +23 -0
  136. package/dist/runtime/components/combobox/lib/use-combobox-data/index.d.ts +1 -0
  137. package/dist/runtime/components/combobox/lib/use-combobox-data/index.js +1 -0
  138. package/dist/runtime/components/combobox/lib/use-combobox-data/use-combobox-data.d.ts +7 -0
  139. package/dist/runtime/components/combobox/lib/use-combobox-data/use-combobox-data.js +23 -0
  140. package/dist/runtime/components/combobox/lib/use-combobox-target.d.ts +25 -0
  141. package/dist/runtime/components/combobox/lib/use-combobox-target.js +65 -0
  142. package/dist/runtime/components/combobox/lib/utils/default-option-filter.d.ts +7 -0
  143. package/dist/runtime/components/combobox/lib/utils/default-option-filter.js +27 -0
  144. package/dist/runtime/components/combobox/lib/utils/index.d.ts +5 -0
  145. package/dist/runtime/components/combobox/lib/utils/index.js +6 -0
  146. package/dist/runtime/components/combobox/lib/utils/is-empty-combobox-data.d.ts +2 -0
  147. package/dist/runtime/components/combobox/lib/utils/is-empty-combobox-data.js +11 -0
  148. package/dist/runtime/components/combobox/lib/utils/is-options-group.d.ts +2 -0
  149. package/dist/runtime/components/combobox/lib/utils/is-options-group.js +3 -0
  150. package/dist/runtime/components/combobox/types/index.d.ts +19 -0
  151. package/dist/runtime/components/combobox/types/index.js +1 -0
  152. package/dist/runtime/components/combobox/types/item.d.ts +22 -0
  153. package/dist/runtime/components/combobox/types/item.js +0 -0
  154. package/dist/runtime/components/container.d.vue.ts +19 -0
  155. package/dist/runtime/components/container.vue +33 -0
  156. package/dist/runtime/components/container.vue.d.ts +19 -0
  157. package/dist/runtime/components/dialog/dialog-close-button.d.vue.ts +14 -0
  158. package/dist/runtime/components/dialog/dialog-close-button.vue +28 -0
  159. package/dist/runtime/components/dialog/dialog-close-button.vue.d.ts +14 -0
  160. package/dist/runtime/components/dialog/dialog-header.d.vue.ts +16 -0
  161. package/dist/runtime/components/dialog/dialog-header.vue +11 -0
  162. package/dist/runtime/components/dialog/dialog-header.vue.d.ts +16 -0
  163. package/dist/runtime/components/dialog/dialog-root.d.vue.ts +54 -0
  164. package/dist/runtime/components/dialog/dialog-root.vue +93 -0
  165. package/dist/runtime/components/dialog/dialog-root.vue.d.ts +54 -0
  166. package/dist/runtime/components/dialog/dialog-title.d.vue.ts +16 -0
  167. package/dist/runtime/components/dialog/dialog-title.vue +11 -0
  168. package/dist/runtime/components/dialog/dialog-title.vue.d.ts +16 -0
  169. package/dist/runtime/components/dialog/dialog.module.css +1 -0
  170. package/dist/runtime/components/dialog/index.d.ts +5 -0
  171. package/dist/runtime/components/dialog/index.js +1 -0
  172. package/dist/runtime/components/dialog/lib.d.ts +2 -0
  173. package/dist/runtime/components/dialog/lib.js +8 -0
  174. package/dist/runtime/components/dialog/types/index.d.ts +9 -0
  175. package/dist/runtime/components/dialog/types/index.js +0 -0
  176. package/dist/runtime/components/drawer/drawer-close-button.d.vue.ts +14 -0
  177. package/dist/runtime/components/drawer/drawer-close-button.vue +20 -0
  178. package/dist/runtime/components/drawer/drawer-close-button.vue.d.ts +14 -0
  179. package/dist/runtime/components/drawer/drawer-header.d.vue.ts +16 -0
  180. package/dist/runtime/components/drawer/drawer-header.vue +10 -0
  181. package/dist/runtime/components/drawer/drawer-header.vue.d.ts +16 -0
  182. package/dist/runtime/components/drawer/drawer-root.d.vue.ts +31 -0
  183. package/dist/runtime/components/drawer/drawer-root.vue +45 -0
  184. package/dist/runtime/components/drawer/drawer-root.vue.d.ts +31 -0
  185. package/dist/runtime/components/drawer/drawer-title.d.vue.ts +16 -0
  186. package/dist/runtime/components/drawer/drawer-title.vue +10 -0
  187. package/dist/runtime/components/drawer/drawer-title.vue.d.ts +16 -0
  188. package/dist/runtime/components/drawer/drawer.module.css +1 -0
  189. package/dist/runtime/components/drawer/index.d.ts +3 -0
  190. package/dist/runtime/components/drawer/index.js +0 -0
  191. package/dist/runtime/components/index.d.ts +26 -0
  192. package/dist/runtime/components/index.js +26 -0
  193. package/dist/runtime/components/input/index.d.ts +10 -0
  194. package/dist/runtime/components/input/index.js +1 -0
  195. package/dist/runtime/components/input/input.d.vue.ts +38 -0
  196. package/dist/runtime/components/input/input.vue +38 -0
  197. package/dist/runtime/components/input/input.vue.d.ts +38 -0
  198. package/dist/runtime/components/input/lib/input-wrapper.context.d.ts +18 -0
  199. package/dist/runtime/components/input/lib/input-wrapper.context.js +9 -0
  200. package/dist/runtime/components/input/number-input.d.vue.ts +36 -0
  201. package/dist/runtime/components/input/number-input.vue +172 -0
  202. package/dist/runtime/components/input/number-input.vue.d.ts +36 -0
  203. package/dist/runtime/components/input/password-input.d.vue.ts +4 -0
  204. package/dist/runtime/components/input/password-input.vue +28 -0
  205. package/dist/runtime/components/input/password-input.vue.d.ts +4 -0
  206. package/dist/runtime/components/input/text-input.d.vue.ts +32 -0
  207. package/dist/runtime/components/input/text-input.vue +38 -0
  208. package/dist/runtime/components/input/text-input.vue.d.ts +32 -0
  209. package/dist/runtime/components/input/types/index.d.ts +5 -0
  210. package/dist/runtime/components/input/types/index.js +0 -0
  211. package/dist/runtime/components/input/ui/input-base.d.vue.ts +28 -0
  212. package/dist/runtime/components/input/ui/input-base.vue +343 -0
  213. package/dist/runtime/components/input/ui/input-base.vue.d.ts +28 -0
  214. package/dist/runtime/components/input/ui/input-inline.d.vue.ts +30 -0
  215. package/dist/runtime/components/input/ui/input-inline.vue +138 -0
  216. package/dist/runtime/components/input/ui/input-inline.vue.d.ts +30 -0
  217. package/dist/runtime/components/input/ui/input-label.d.vue.ts +18 -0
  218. package/dist/runtime/components/input/ui/input-label.vue +26 -0
  219. package/dist/runtime/components/input/ui/input-label.vue.d.ts +18 -0
  220. package/dist/runtime/components/input/ui/input-wrapper.d.vue.ts +26 -0
  221. package/dist/runtime/components/input/ui/input-wrapper.vue +96 -0
  222. package/dist/runtime/components/input/ui/input-wrapper.vue.d.ts +26 -0
  223. package/dist/runtime/components/link/index.d.ts +3 -0
  224. package/dist/runtime/components/link/index.js +1 -0
  225. package/dist/runtime/components/link/lib.d.ts +16 -0
  226. package/dist/runtime/components/link/lib.js +25 -0
  227. package/dist/runtime/components/link/link-button.d.vue.ts +21 -0
  228. package/dist/runtime/components/link/link-button.vue +42 -0
  229. package/dist/runtime/components/link/link-button.vue.d.ts +21 -0
  230. package/dist/runtime/components/link/link.d.vue.ts +18 -0
  231. package/dist/runtime/components/link/link.vue +47 -0
  232. package/dist/runtime/components/link/link.vue.d.ts +18 -0
  233. package/dist/runtime/components/loader/_loaders/bars-loader.d.vue.ts +3 -0
  234. package/dist/runtime/components/loader/_loaders/bars-loader.vue +11 -0
  235. package/dist/runtime/components/loader/_loaders/bars-loader.vue.d.ts +3 -0
  236. package/dist/runtime/components/loader/_loaders/dots-loader.d.vue.ts +3 -0
  237. package/dist/runtime/components/loader/_loaders/dots-loader.vue +11 -0
  238. package/dist/runtime/components/loader/_loaders/dots-loader.vue.d.ts +3 -0
  239. package/dist/runtime/components/loader/_loaders/oval-loader.d.vue.ts +3 -0
  240. package/dist/runtime/components/loader/_loaders/oval-loader.vue +7 -0
  241. package/dist/runtime/components/loader/_loaders/oval-loader.vue.d.ts +3 -0
  242. package/dist/runtime/components/loader/index.d.ts +1 -0
  243. package/dist/runtime/components/loader/index.js +0 -0
  244. package/dist/runtime/components/loader/loader.d.vue.ts +10 -0
  245. package/dist/runtime/components/loader/loader.vue +37 -0
  246. package/dist/runtime/components/loader/loader.vue.d.ts +10 -0
  247. package/dist/runtime/components/modal/index.d.ts +3 -0
  248. package/dist/runtime/components/modal/index.js +0 -0
  249. package/dist/runtime/components/modal/modal-close-button.d.vue.ts +14 -0
  250. package/dist/runtime/components/modal/modal-close-button.vue +20 -0
  251. package/dist/runtime/components/modal/modal-close-button.vue.d.ts +14 -0
  252. package/dist/runtime/components/modal/modal-header.d.vue.ts +16 -0
  253. package/dist/runtime/components/modal/modal-header.vue +10 -0
  254. package/dist/runtime/components/modal/modal-header.vue.d.ts +16 -0
  255. package/dist/runtime/components/modal/modal-root.d.vue.ts +33 -0
  256. package/dist/runtime/components/modal/modal-root.vue +30 -0
  257. package/dist/runtime/components/modal/modal-root.vue.d.ts +33 -0
  258. package/dist/runtime/components/modal/modal-title.d.vue.ts +16 -0
  259. package/dist/runtime/components/modal/modal-title.vue +10 -0
  260. package/dist/runtime/components/modal/modal-title.vue.d.ts +16 -0
  261. package/dist/runtime/components/modal/modal.module.css +1 -0
  262. package/dist/runtime/components/nav-link/index.d.ts +1 -0
  263. package/dist/runtime/components/nav-link/index.js +0 -0
  264. package/dist/runtime/components/nav-link/nav-link.d.vue.ts +35 -0
  265. package/dist/runtime/components/nav-link/nav-link.vue +201 -0
  266. package/dist/runtime/components/nav-link/nav-link.vue.d.ts +35 -0
  267. package/dist/runtime/components/paper.d.vue.ts +20 -0
  268. package/dist/runtime/components/paper.vue +53 -0
  269. package/dist/runtime/components/paper.vue.d.ts +20 -0
  270. package/dist/runtime/components/popover/index.d.ts +1 -0
  271. package/dist/runtime/components/popover/index.js +0 -0
  272. package/dist/runtime/components/popover/lib/context.d.ts +14 -0
  273. package/dist/runtime/components/popover/lib/context.js +8 -0
  274. package/dist/runtime/components/popover/lib/get-arrow-position.d.ts +12 -0
  275. package/dist/runtime/components/popover/lib/get-arrow-position.js +88 -0
  276. package/dist/runtime/components/popover/lib/use-popover.d.ts +23 -0
  277. package/dist/runtime/components/popover/lib/use-popover.js +47 -0
  278. package/dist/runtime/components/popover/popover-dropdown.d.vue.ts +13 -0
  279. package/dist/runtime/components/popover/popover-dropdown.vue +90 -0
  280. package/dist/runtime/components/popover/popover-dropdown.vue.d.ts +13 -0
  281. package/dist/runtime/components/popover/popover-target.d.vue.ts +13 -0
  282. package/dist/runtime/components/popover/popover-target.vue +11 -0
  283. package/dist/runtime/components/popover/popover-target.vue.d.ts +13 -0
  284. package/dist/runtime/components/popover/popover.d.vue.ts +27 -0
  285. package/dist/runtime/components/popover/popover.vue +79 -0
  286. package/dist/runtime/components/popover/popover.vue.d.ts +27 -0
  287. package/dist/runtime/components/popover/types/index.d.ts +42 -0
  288. package/dist/runtime/components/popover/types/index.js +0 -0
  289. package/dist/runtime/components/renderless/renderless-slot.d.ts +6 -0
  290. package/dist/runtime/components/renderless/renderless-slot.js +32 -0
  291. package/dist/runtime/components/renderless/renderless.d.vue.ts +13 -0
  292. package/dist/runtime/components/renderless/renderless.vue +12 -0
  293. package/dist/runtime/components/renderless/renderless.vue.d.ts +13 -0
  294. package/dist/runtime/components/select/index.d.ts +1 -0
  295. package/dist/runtime/components/select/index.js +0 -0
  296. package/dist/runtime/components/select/select.d.vue.ts +45 -0
  297. package/dist/runtime/components/select/select.vue +131 -0
  298. package/dist/runtime/components/select/select.vue.d.ts +45 -0
  299. package/dist/runtime/components/tabs/index.d.ts +1 -0
  300. package/dist/runtime/components/tabs/index.js +1 -0
  301. package/dist/runtime/components/tabs/lib.d.ts +142 -0
  302. package/dist/runtime/components/tabs/lib.js +18 -0
  303. package/dist/runtime/components/tabs/tabs-list.d.vue.ts +19 -0
  304. package/dist/runtime/components/tabs/tabs-list.vue +31 -0
  305. package/dist/runtime/components/tabs/tabs-list.vue.d.ts +19 -0
  306. package/dist/runtime/components/tabs/tabs-panel.d.vue.ts +17 -0
  307. package/dist/runtime/components/tabs/tabs-panel.vue +23 -0
  308. package/dist/runtime/components/tabs/tabs-panel.vue.d.ts +17 -0
  309. package/dist/runtime/components/tabs/tabs-root.d.vue.ts +47 -0
  310. package/dist/runtime/components/tabs/tabs-root.vue +71 -0
  311. package/dist/runtime/components/tabs/tabs-root.vue.d.ts +47 -0
  312. package/dist/runtime/components/tabs/tabs-tab.d.vue.ts +22 -0
  313. package/dist/runtime/components/tabs/tabs-tab.vue +41 -0
  314. package/dist/runtime/components/tabs/tabs-tab.vue.d.ts +22 -0
  315. package/dist/runtime/components/tabs/tabs.module.css +1 -0
  316. package/dist/runtime/components/text.d.vue.ts +37 -0
  317. package/dist/runtime/components/text.vue +122 -0
  318. package/dist/runtime/components/text.vue.d.ts +37 -0
  319. package/dist/runtime/components/textarea.d.vue.ts +33 -0
  320. package/dist/runtime/components/textarea.vue +48 -0
  321. package/dist/runtime/components/textarea.vue.d.ts +33 -0
  322. package/dist/runtime/components/title.d.vue.ts +18 -0
  323. package/dist/runtime/components/title.vue +34 -0
  324. package/dist/runtime/components/title.vue.d.ts +18 -0
  325. package/dist/runtime/components/transition/index.d.ts +1 -0
  326. package/dist/runtime/components/transition/index.js +0 -0
  327. package/dist/runtime/components/transition/transition.d.vue.ts +25 -0
  328. package/dist/runtime/components/transition/transition.vue +31 -0
  329. package/dist/runtime/components/transition/transition.vue.d.ts +25 -0
  330. package/dist/runtime/components/visually-hidden/index.d.ts +2 -0
  331. package/dist/runtime/components/visually-hidden/index.js +0 -0
  332. package/dist/runtime/components/visually-hidden/visually-hidden-input.d.vue.ts +22 -0
  333. package/dist/runtime/components/visually-hidden/visually-hidden-input.vue +13 -0
  334. package/dist/runtime/components/visually-hidden/visually-hidden-input.vue.d.ts +22 -0
  335. package/dist/runtime/components/visually-hidden/visually-hidden.d.vue.ts +17 -0
  336. package/dist/runtime/components/visually-hidden/visually-hidden.vue +22 -0
  337. package/dist/runtime/components/visually-hidden/visually-hidden.vue.d.ts +17 -0
  338. package/dist/runtime/composals/index.d.ts +4 -0
  339. package/dist/runtime/composals/index.js +4 -0
  340. package/dist/runtime/composals/use-active-link.d.ts +5 -0
  341. package/dist/runtime/composals/use-active-link.js +20 -0
  342. package/dist/runtime/composals/use-mod.d.ts +2 -0
  343. package/dist/runtime/composals/use-mod.js +25 -0
  344. package/dist/runtime/composals/use-style-resolver.d.ts +3 -0
  345. package/dist/runtime/composals/use-style-resolver.js +5 -0
  346. package/dist/runtime/composals/use-theme.d.ts +9 -0
  347. package/dist/runtime/composals/use-theme.js +4 -0
  348. package/dist/runtime/const/index.d.ts +2 -0
  349. package/dist/runtime/const/index.js +6 -0
  350. package/dist/runtime/helpers/create-strict-injection.d.ts +94 -0
  351. package/dist/runtime/helpers/create-strict-injection.js +11 -0
  352. package/dist/runtime/helpers/index.d.ts +1 -0
  353. package/dist/runtime/helpers/index.js +1 -0
  354. package/dist/runtime/server/tsconfig.json +3 -0
  355. package/dist/runtime/styles/baseline.css +1 -0
  356. package/dist/runtime/styles/colors.css +1 -0
  357. package/dist/runtime/styles/const.css +1 -0
  358. package/dist/runtime/styles/dark-theme.css +1 -0
  359. package/dist/runtime/styles/global.css +1 -0
  360. package/dist/runtime/styles/light-theme.css +1 -0
  361. package/dist/runtime/types/index.d.ts +1 -0
  362. package/dist/runtime/types/index.js +0 -0
  363. package/dist/runtime/types/theme.d.ts +25 -0
  364. package/dist/runtime/types/theme.js +0 -0
  365. package/dist/runtime/utils/boolean/is-falsy.d.ts +1 -0
  366. package/dist/runtime/utils/boolean/is-falsy.js +7 -0
  367. package/dist/runtime/utils/boolean/is-number-like.d.ts +1 -0
  368. package/dist/runtime/utils/boolean/is-number-like.js +13 -0
  369. package/dist/runtime/utils/color-functions/get-gradient.d.ts +3 -0
  370. package/dist/runtime/utils/color-functions/get-gradient.js +25 -0
  371. package/dist/runtime/utils/converters/rem.d.ts +2 -0
  372. package/dist/runtime/utils/converters/rem.js +43 -0
  373. package/dist/runtime/utils/get-color-var.d.ts +2 -0
  374. package/dist/runtime/utils/get-color-var.js +6 -0
  375. package/dist/runtime/utils/get-safe-id.d.ts +1 -0
  376. package/dist/runtime/utils/get-safe-id.js +8 -0
  377. package/dist/runtime/utils/get-size/get-size.d.ts +6 -0
  378. package/dist/runtime/utils/get-size/get-size.js +24 -0
  379. package/dist/runtime/utils/index.d.ts +7 -0
  380. package/dist/runtime/utils/index.js +7 -0
  381. package/dist/runtime/utils/parse-theme-color/parse-theme-color.d.ts +14 -0
  382. package/dist/runtime/utils/parse-theme-color/parse-theme-color.js +73 -0
  383. package/dist/runtime/utils/vars-resolver/create-variant-color-resolver.d.ts +14 -0
  384. package/dist/runtime/utils/vars-resolver/create-variant-color-resolver.js +106 -0
  385. package/dist/types.d.mts +3 -0
  386. package/package.json +96 -0
@@ -0,0 +1,108 @@
1
+ <script setup>
2
+ import { useStyleResolver } from "@nui/composals";
3
+ import { createVariantColorResolver, getFontSize, getRadius, getSize } from "@nui/utils";
4
+ import { computed } from "vue";
5
+ import Box from "../box.vue";
6
+ import Loader from "../loader/loader.vue";
7
+ import css from "./button.module.css";
8
+ const {
9
+ color,
10
+ size = "sm",
11
+ variant = "default",
12
+ gradient,
13
+ loading,
14
+ classes,
15
+ leftSectionPE = "none",
16
+ leftSectionProps,
17
+ rightSectionPE = "all",
18
+ rightSectionProps,
19
+ is = "button",
20
+ radius,
21
+ mod: _mod
22
+ } = defineProps({
23
+ size: { type: null, required: false },
24
+ variant: { type: String, required: false },
25
+ gradient: { type: Object, required: false },
26
+ loading: { type: Boolean, required: false },
27
+ color: { type: null, required: false },
28
+ radius: { type: [String, Number], required: false },
29
+ classes: { type: Object, required: false },
30
+ leftSectionPE: { type: null, required: false },
31
+ leftSectionProps: { type: Object, required: false },
32
+ rightSectionPE: { type: null, required: false },
33
+ rightSectionProps: { type: Object, required: false }
34
+ });
35
+ const style = computed(() => useStyleResolver((theme) => {
36
+ const {
37
+ background,
38
+ border,
39
+ hover,
40
+ text
41
+ } = createVariantColorResolver({ variant, color, theme, gradient });
42
+ return {
43
+ root: {
44
+ "--button-height": getSize(size, "button-height"),
45
+ "--button-padding-x": getSize(size, "button-padding-x"),
46
+ "--button-fz": size?.includes("compact") ? getFontSize(size.replace("compact-", "")) : getFontSize(size),
47
+ "--button-bg": background,
48
+ "--button-hover": hover,
49
+ "--button-color": text,
50
+ "--button-bd": border,
51
+ "--button-radius": getRadius(radius)
52
+ },
53
+ leftSection: {
54
+ "--section-pointer-events": leftSectionPE
55
+ },
56
+ rightSection: {
57
+ "--section-pointer-events": rightSectionPE
58
+ }
59
+ };
60
+ }));
61
+ const mod = computed(() => [{ loading, variant }, _mod]);
62
+ </script>
63
+
64
+ <template>
65
+ <Box
66
+ :is
67
+ :mod='[
68
+ mod,
69
+ {
70
+ "with-left-section": !!$slots?.leftSection,
71
+ "with-right-section": !!$slots?.rightSection
72
+ }
73
+ ]'
74
+ :style='style.root'
75
+ :class='[css.root, classes?.root]'
76
+ :disabled='loading'
77
+ >
78
+ <Transition name='fade-down'>
79
+ <Loader v-show='loading' :class='css.loader' :color :size />
80
+ </Transition>
81
+
82
+ <span :class='[css.inner, classes?.inner]'>
83
+ <span
84
+ v-if='$slots.leftSection'
85
+ :class='[css.section, classes?.section]'
86
+ data-position='left'
87
+ v-bind='leftSectionProps'
88
+ :style='style.leftSection'
89
+ >
90
+ <slot name='leftSection' />
91
+ </span>
92
+
93
+ <span :class='[css.label, classes?.label]'>
94
+ <slot />
95
+ </span>
96
+
97
+ <span
98
+ v-if='$slots.rightSection'
99
+ data-position='right'
100
+ :class='[css.section, classes?.section]'
101
+ v-bind='rightSectionProps'
102
+ :style='style.rightSection'
103
+ >
104
+ <slot name='rightSection' />
105
+ </span>
106
+ </span>
107
+ </Box>
108
+ </template>
@@ -0,0 +1,40 @@
1
+ import type { UiKitColor, UiKitGradient, UiKitRadius, UiKitSize } from '@nui/types';
2
+ import type { HTMLAttributes } from 'vue';
3
+ import type { BoxProps } from '../box.vue.js';
4
+ export interface ButtonProps extends /* @vue-ignore */ BoxProps {
5
+ size?: UiKitSize | `compact-${UiKitSize}`;
6
+ variant?: 'filled' | 'light' | 'outline' | 'subtle' | 'default' | 'gradient' | 'gradient-outline';
7
+ gradient?: UiKitGradient;
8
+ loading?: boolean;
9
+ color?: UiKitColor;
10
+ radius?: UiKitRadius;
11
+ classes?: {
12
+ root?: string;
13
+ inner?: string;
14
+ label?: string;
15
+ section?: string;
16
+ };
17
+ /** section pointer-events */
18
+ leftSectionPE?: CSSStyleDeclaration['pointerEvents'];
19
+ leftSectionProps?: HTMLAttributes;
20
+ /** section pointer-events */
21
+ rightSectionPE?: CSSStyleDeclaration['pointerEvents'];
22
+ rightSectionProps?: HTMLAttributes;
23
+ }
24
+ declare var __VLS_15: {}, __VLS_17: {}, __VLS_19: {};
25
+ type __VLS_Slots = {} & {
26
+ leftSection?: (props: typeof __VLS_15) => any;
27
+ } & {
28
+ default?: (props: typeof __VLS_17) => any;
29
+ } & {
30
+ rightSection?: (props: typeof __VLS_19) => any;
31
+ };
32
+ declare const __VLS_base: import("vue").DefineComponent<ButtonProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ButtonProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
33
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
34
+ declare const _default: typeof __VLS_export;
35
+ export default _default;
36
+ type __VLS_WithSlots<T, S> = T & {
37
+ new (): {
38
+ $slots: S;
39
+ };
40
+ };
@@ -0,0 +1,3 @@
1
+ export type * from './button-group.vue';
2
+ export type * from './button.vue';
3
+ export type * from './unstyled-button.vue';
File without changes
@@ -0,0 +1,16 @@
1
+ import type { BoxProps } from '../box.vue.js';
2
+ import type { InputBaseProps } from '../input/index.js';
3
+ type __VLS_Props = InputBaseProps & Omit<BoxProps, 'is'>;
4
+ declare var __VLS_6: {};
5
+ type __VLS_Slots = {} & {
6
+ default?: (props: typeof __VLS_6) => any;
7
+ };
8
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };
@@ -0,0 +1,37 @@
1
+ <script setup>
2
+ import Box from "../box.vue";
3
+ const props = defineProps({
4
+ readonly: { type: Boolean, required: false },
5
+ disabled: { type: Boolean, required: false },
6
+ mod: { type: [Object, Array, null], required: false }
7
+ });
8
+ </script>
9
+
10
+ <template>
11
+ <Box is='button' v-bind='props' :class='$style.root' type='button'>
12
+ <slot />
13
+ </Box>
14
+ </template>
15
+
16
+ <style module lang="postcss">
17
+ .root {
18
+ touch-action: manipulation;
19
+ cursor: pointer;
20
+
21
+ padding: 0;
22
+ border: 0;
23
+
24
+ font-size: var(--font-size-md);
25
+ color: inherit;
26
+ text-align: left;
27
+ text-decoration: none;
28
+
29
+ appearance: none;
30
+ background-color: transparent;
31
+ -webkit-tap-highlight-color: transparent;
32
+
33
+ @mixin where-rtl {
34
+ text-align: right;
35
+ }
36
+ }
37
+ </style>
@@ -0,0 +1,16 @@
1
+ import type { BoxProps } from '../box.vue.js';
2
+ import type { InputBaseProps } from '../input/index.js';
3
+ type __VLS_Props = InputBaseProps & Omit<BoxProps, 'is'>;
4
+ declare var __VLS_6: {};
5
+ type __VLS_Slots = {} & {
6
+ default?: (props: typeof __VLS_6) => any;
7
+ };
8
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };
@@ -0,0 +1,19 @@
1
+ import type { BoxProps } from '../box.vue.js';
2
+ export interface CardSectionProps extends /* @vue-ignore */ BoxProps {
3
+ withBorder?: boolean;
4
+ /** Determines whether the section should inherit padding from the parent `UiCard`, `false` by default */
5
+ inheritPadding?: boolean;
6
+ }
7
+ declare var __VLS_6: {};
8
+ type __VLS_Slots = {} & {
9
+ default?: (props: typeof __VLS_6) => any;
10
+ };
11
+ declare const __VLS_base: import("vue").DefineComponent<CardSectionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<CardSectionProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
13
+ declare const _default: typeof __VLS_export;
14
+ export default _default;
15
+ type __VLS_WithSlots<T, S> = T & {
16
+ new (): {
17
+ $slots: S;
18
+ };
19
+ };
@@ -0,0 +1,14 @@
1
+ <script setup>
2
+ import Box from "../box.vue";
3
+ import css from "./card.module.css";
4
+ const { is = "section", mod, inheritPadding, withBorder } = defineProps({
5
+ withBorder: { type: Boolean, required: false },
6
+ inheritPadding: { type: Boolean, required: false }
7
+ });
8
+ </script>
9
+
10
+ <template>
11
+ <Box :is :class='css.section' :mod='[mod, { "with-border": withBorder, "inherit-padding": inheritPadding }]'>
12
+ <slot />
13
+ </Box>
14
+ </template>
@@ -0,0 +1,19 @@
1
+ import type { BoxProps } from '../box.vue.js';
2
+ export interface CardSectionProps extends /* @vue-ignore */ BoxProps {
3
+ withBorder?: boolean;
4
+ /** Determines whether the section should inherit padding from the parent `UiCard`, `false` by default */
5
+ inheritPadding?: boolean;
6
+ }
7
+ declare var __VLS_6: {};
8
+ type __VLS_Slots = {} & {
9
+ default?: (props: typeof __VLS_6) => any;
10
+ };
11
+ declare const __VLS_base: import("vue").DefineComponent<CardSectionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<CardSectionProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
13
+ declare const _default: typeof __VLS_export;
14
+ export default _default;
15
+ type __VLS_WithSlots<T, S> = T & {
16
+ new (): {
17
+ $slots: S;
18
+ };
19
+ };
@@ -0,0 +1,18 @@
1
+ import type { UiKitSpacing } from '@nui/types';
2
+ import type { PaperProps } from '../paper.vue.js';
3
+ export interface CardProps extends /* @vue-ignore */ PaperProps {
4
+ padding?: UiKitSpacing;
5
+ }
6
+ declare var __VLS_6: {};
7
+ type __VLS_Slots = {} & {
8
+ default?: (props: typeof __VLS_6) => any;
9
+ };
10
+ declare const __VLS_base: import("vue").DefineComponent<CardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<CardProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
14
+ type __VLS_WithSlots<T, S> = T & {
15
+ new (): {
16
+ $slots: S;
17
+ };
18
+ };
@@ -0,0 +1 @@
1
+ .root{--card-padding:var(--spacing-md);color:var(--color-text);display:flex;flex-direction:column;overflow:hidden;padding:var(--card-padding);position:relative;@mixin where-light{background-color:var(--color-white)}@mixin where-dark{background-color:var(--color-dark-6)}}.section{display:block;margin-inline:calc(var(--card-padding)*-1)}.section:where(:first-child){border-top:none!important;margin-top:calc(var(--card-padding)*-1)}.section:where(:last-child){border-bottom:none!important;margin-bottom:calc(var(--card-padding)*-1)}.section:where([data-inherit-padding]){padding-inline:var(--card-padding)}.section:where([data-with-border]){border-bottom:1px solid;border-top:1px solid}.section{@mixin where-light{border-color:var(--color-gray-3)}}.section{@mixin where-dark{border-color:var(--color-dark-4)}}.section+.section{border-top:none!important}
@@ -0,0 +1,18 @@
1
+ <script setup>
2
+ import { getSpacing } from "@nui/utils";
3
+ import { computed } from "vue";
4
+ import Paper from "../paper.vue";
5
+ import css from "./card.module.css";
6
+ const { padding, is = "article", ...rest } = defineProps({
7
+ padding: { type: [String, Number], required: false }
8
+ });
9
+ const style = computed(() => ({
10
+ "--card-padding": getSpacing(padding)
11
+ }));
12
+ </script>
13
+
14
+ <template>
15
+ <Paper :is :style :class='css.root' v-bind='rest'>
16
+ <slot />
17
+ </Paper>
18
+ </template>
@@ -0,0 +1,18 @@
1
+ import type { UiKitSpacing } from '@nui/types';
2
+ import type { PaperProps } from '../paper.vue.js';
3
+ export interface CardProps extends /* @vue-ignore */ PaperProps {
4
+ padding?: UiKitSpacing;
5
+ }
6
+ declare var __VLS_6: {};
7
+ type __VLS_Slots = {} & {
8
+ default?: (props: typeof __VLS_6) => any;
9
+ };
10
+ declare const __VLS_base: import("vue").DefineComponent<CardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<CardProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
14
+ type __VLS_WithSlots<T, S> = T & {
15
+ new (): {
16
+ $slots: S;
17
+ };
18
+ };
@@ -0,0 +1,2 @@
1
+ export type * from './card-section.vue';
2
+ export type * from './card.vue';
File without changes
@@ -0,0 +1,30 @@
1
+ import type { Mod } from '@nui/composals';
2
+ import type { UiKitRadius } from '@nui/types';
3
+ export interface CheckboxCardProps {
4
+ mod?: Mod | Mod[];
5
+ withBorder?: boolean;
6
+ radius?: UiKitRadius;
7
+ value?: string;
8
+ }
9
+ type __VLS_Props = CheckboxCardProps;
10
+ type __VLS_ModelProps = {
11
+ modelValue?: boolean;
12
+ };
13
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
14
+ declare var __VLS_9: {};
15
+ type __VLS_Slots = {} & {
16
+ default?: (props: typeof __VLS_9) => any;
17
+ };
18
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
+ "update:modelValue": (value: boolean) => any;
20
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
21
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
22
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
23
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
24
+ declare const _default: typeof __VLS_export;
25
+ export default _default;
26
+ type __VLS_WithSlots<T, S> = T & {
27
+ new (): {
28
+ $slots: S;
29
+ };
30
+ };
@@ -0,0 +1,76 @@
1
+ <script setup>
2
+ import { getRadius } from "@nui/utils";
3
+ import { computed } from "vue";
4
+ import UnstyledButton from "../button/unstyled-button.vue";
5
+ import { useProvideCheckboxCard } from "./lib/card.context";
6
+ import { useCheckboxGroupState } from "./lib/group.context";
7
+ const {
8
+ withBorder,
9
+ value: _value,
10
+ mod,
11
+ radius
12
+ } = defineProps({
13
+ mod: { type: [Object, Array], required: false },
14
+ withBorder: { type: Boolean, required: false },
15
+ radius: { type: [String, Number], required: false },
16
+ value: { type: String, required: false }
17
+ });
18
+ const ctx = useCheckboxGroupState();
19
+ 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;
24
+ });
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
+ const style = computed(() => ({
32
+ "--card-radius": getRadius(radius)
33
+ }));
34
+ </script>
35
+
36
+ <template>
37
+ <UnstyledButton
38
+ :mod='[{ checked, "with-border": withBorder }, mod]'
39
+ :value='_value'
40
+ :class='$style.root'
41
+ :style
42
+ @click='onUpdate()'
43
+ >
44
+ <slot />
45
+ </UnstyledButton>
46
+ </template>
47
+
48
+ <style module lang="postcss">
49
+ .root {
50
+ --card-radius: var(--radius-default);
51
+
52
+ cursor: pointer;
53
+
54
+ display: block;
55
+
56
+ width: 100%;
57
+
58
+ border-radius: var(--card-radius);
59
+
60
+ & :where(*) {
61
+ cursor: inherit;
62
+ }
63
+
64
+ &:where([data-with-border]) {
65
+ border: 1px solid transparent;
66
+
67
+ @mixin where-light {
68
+ border-color: var(--color-gray-3);
69
+ }
70
+
71
+ @mixin where-dark {
72
+ border-color: var(--color-dark-4);
73
+ }
74
+ }
75
+ }
76
+ </style>
@@ -0,0 +1,30 @@
1
+ import type { Mod } from '@nui/composals';
2
+ import type { UiKitRadius } from '@nui/types';
3
+ export interface CheckboxCardProps {
4
+ mod?: Mod | Mod[];
5
+ withBorder?: boolean;
6
+ radius?: UiKitRadius;
7
+ value?: string;
8
+ }
9
+ type __VLS_Props = CheckboxCardProps;
10
+ type __VLS_ModelProps = {
11
+ modelValue?: boolean;
12
+ };
13
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
14
+ declare var __VLS_9: {};
15
+ type __VLS_Slots = {} & {
16
+ default?: (props: typeof __VLS_9) => any;
17
+ };
18
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
+ "update:modelValue": (value: boolean) => any;
20
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
21
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
22
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
23
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
24
+ declare const _default: typeof __VLS_export;
25
+ export default _default;
26
+ type __VLS_WithSlots<T, S> = T & {
27
+ new (): {
28
+ $slots: S;
29
+ };
30
+ };
@@ -0,0 +1,34 @@
1
+ import type { UiKitSize } from '@nui/types';
2
+ import type { InputWrapperProps } from '../input/index.js';
3
+ export interface CheckboxGroupProps extends /* @vue-ignore */ Omit<InputWrapperProps, 'resize' | 'multiline' | 'id'> {
4
+ name: string;
5
+ size?: UiKitSize;
6
+ }
7
+ type __VLS_Props = CheckboxGroupProps;
8
+ type __VLS_ModelProps = {
9
+ modelValue?: string[];
10
+ };
11
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
12
+ declare var __VLS_7: {}, __VLS_9: {}, __VLS_12: {}, __VLS_15: {};
13
+ type __VLS_Slots = {} & {
14
+ label?: (props: typeof __VLS_7) => any;
15
+ } & {
16
+ default?: (props: typeof __VLS_9) => any;
17
+ } & {
18
+ description?: (props: typeof __VLS_12) => any;
19
+ } & {
20
+ error?: (props: typeof __VLS_15) => any;
21
+ };
22
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
23
+ "update:modelValue": (value: string[]) => any;
24
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
25
+ "onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
26
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
27
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
28
+ declare const _default: typeof __VLS_export;
29
+ export default _default;
30
+ type __VLS_WithSlots<T, S> = T & {
31
+ new (): {
32
+ $slots: S;
33
+ };
34
+ };
@@ -0,0 +1,32 @@
1
+ <script setup>
2
+ import { useId } from "vue";
3
+ import InputWrapper from "../input/ui/input-wrapper.vue";
4
+ import VisuallyHiddenInput from "../visually-hidden/visually-hidden-input.vue";
5
+ import { useProvideCheckboxGroup } from "./lib/group.context";
6
+ const { size, name, ...rest } = defineProps({
7
+ name: { type: String, required: true },
8
+ size: { type: String, required: false }
9
+ });
10
+ const value = defineModel({ type: Array, ...{ default: [] } });
11
+ const id = useId();
12
+ useProvideCheckboxGroup({ value, size });
13
+ </script>
14
+
15
+ <template>
16
+ <InputWrapper :id v-bind='rest'>
17
+ <template #label>
18
+ <slot name='label' />
19
+ </template>
20
+
21
+ <slot />
22
+
23
+ <template #description>
24
+ <slot name='description' />
25
+ </template>
26
+ <template #error>
27
+ <slot name='error' />
28
+ </template>
29
+
30
+ <VisuallyHiddenInput :id v-model='value' :name />
31
+ </InputWrapper>
32
+ </template>
@@ -0,0 +1,34 @@
1
+ import type { UiKitSize } from '@nui/types';
2
+ import type { InputWrapperProps } from '../input/index.js';
3
+ export interface CheckboxGroupProps extends /* @vue-ignore */ Omit<InputWrapperProps, 'resize' | 'multiline' | 'id'> {
4
+ name: string;
5
+ size?: UiKitSize;
6
+ }
7
+ type __VLS_Props = CheckboxGroupProps;
8
+ type __VLS_ModelProps = {
9
+ modelValue?: string[];
10
+ };
11
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
12
+ declare var __VLS_7: {}, __VLS_9: {}, __VLS_12: {}, __VLS_15: {};
13
+ type __VLS_Slots = {} & {
14
+ label?: (props: typeof __VLS_7) => any;
15
+ } & {
16
+ default?: (props: typeof __VLS_9) => any;
17
+ } & {
18
+ description?: (props: typeof __VLS_12) => any;
19
+ } & {
20
+ error?: (props: typeof __VLS_15) => any;
21
+ };
22
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
23
+ "update:modelValue": (value: string[]) => any;
24
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
25
+ "onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
26
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
27
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
28
+ declare const _default: typeof __VLS_export;
29
+ export default _default;
30
+ type __VLS_WithSlots<T, S> = T & {
31
+ new (): {
32
+ $slots: S;
33
+ };
34
+ };
@@ -0,0 +1,37 @@
1
+ import type { UiKitColor, UiKitSize } from '@nui/types';
2
+ export interface CheckboxIndicatorProps {
3
+ color?: UiKitColor;
4
+ iconColor?: UiKitColor;
5
+ variant?: 'filled' | 'outline';
6
+ radius?: UiKitSize;
7
+ size?: UiKitSize;
8
+ indeterminate?: boolean;
9
+ }
10
+ type __VLS_Props = CheckboxIndicatorProps;
11
+ type __VLS_ModelProps = {
12
+ modelValue?: boolean;
13
+ };
14
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
15
+ declare var __VLS_6: {
16
+ mod: {
17
+ checked: any;
18
+ };
19
+ class: any;
20
+ indeterminate: boolean;
21
+ };
22
+ type __VLS_Slots = {} & {
23
+ default?: (props: typeof __VLS_6) => any;
24
+ };
25
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
26
+ "update:modelValue": (value: boolean | undefined) => any;
27
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
28
+ "onUpdate:modelValue"?: ((value: boolean | undefined) => any) | undefined;
29
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
30
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
31
+ declare const _default: typeof __VLS_export;
32
+ export default _default;
33
+ type __VLS_WithSlots<T, S> = T & {
34
+ new (): {
35
+ $slots: S;
36
+ };
37
+ };