@maz-ui/mcp 5.0.1-beta.0 → 5.1.0-beta.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 (343) hide show
  1. package/README.md +61 -228
  2. package/bin/maz-ui-mcp.mjs +2 -5
  3. package/dist/cli.d.mts +7 -0
  4. package/dist/cli.d.ts +7 -0
  5. package/dist/cli.mjs +16 -0
  6. package/dist/index.d.mts +345 -0
  7. package/dist/index.d.ts +345 -0
  8. package/dist/index.mjs +16 -0
  9. package/dist/shared/mcp.DseFuKdl.mjs +2968 -0
  10. package/docs/README.md +207 -0
  11. package/docs/agents/agents-md.md +52 -0
  12. package/docs/agents/claude-rule.md +52 -0
  13. package/docs/components/maz-accordion.md +78 -0
  14. package/docs/{src/components → components}/maz-alert.md +31 -164
  15. package/docs/components/maz-animated-counter.md +87 -0
  16. package/docs/components/maz-animated-element.md +46 -0
  17. package/docs/components/maz-animated-text.md +53 -0
  18. package/docs/components/maz-avatar.md +193 -0
  19. package/docs/components/maz-backdrop.md +178 -0
  20. package/docs/{src/components → components}/maz-badge.md +26 -67
  21. package/docs/components/maz-bottom-sheet.md +257 -0
  22. package/docs/{src/components → components}/maz-btn-group.md +27 -189
  23. package/docs/{src/components → components}/maz-btn.md +62 -245
  24. package/docs/components/maz-card-spotlight.md +84 -0
  25. package/docs/{src/components → components}/maz-card.md +67 -192
  26. package/docs/components/maz-carousel.md +153 -0
  27. package/docs/{src/components → components}/maz-chart.md +17 -161
  28. package/docs/components/maz-checkbox.md +138 -0
  29. package/docs/components/maz-checklist.md +251 -0
  30. package/docs/components/maz-circular-progress-bar.md +109 -0
  31. package/docs/{src/components → components}/maz-code-highlight.md +15 -93
  32. package/docs/components/maz-container.md +241 -0
  33. package/docs/{src/components → components}/maz-date-picker.md +85 -454
  34. package/docs/components/maz-dialog-confirm.md +215 -0
  35. package/docs/components/maz-dialog.md +143 -0
  36. package/docs/components/maz-drawer.md +107 -0
  37. package/docs/components/maz-dropdown.md +419 -0
  38. package/docs/{src/components → components}/maz-dropzone.md +80 -221
  39. package/docs/components/maz-expand-animation.md +82 -0
  40. package/docs/components/maz-fullscreen-loader.md +58 -0
  41. package/docs/components/maz-gallery.md +79 -0
  42. package/docs/{src/components → components}/maz-icon.md +32 -83
  43. package/docs/components/maz-input-code.md +73 -0
  44. package/docs/components/maz-input-number.md +79 -0
  45. package/docs/components/maz-input-phone-number.md +536 -0
  46. package/docs/components/maz-input-price.md +68 -0
  47. package/docs/components/maz-input-tags.md +112 -0
  48. package/docs/{src/components → components}/maz-input.md +74 -221
  49. package/docs/components/maz-lazy-img.md +113 -0
  50. package/docs/components/maz-link.md +146 -0
  51. package/docs/components/maz-loading-bar.md +38 -0
  52. package/docs/{src/components → components}/maz-markdown-editor.md +72 -125
  53. package/docs/components/maz-pagination.md +82 -0
  54. package/docs/components/maz-popover.md +794 -0
  55. package/docs/{src/components → components}/maz-pull-to-refresh.md +59 -45
  56. package/docs/components/maz-radio-buttons.md +313 -0
  57. package/docs/components/maz-radio.md +119 -0
  58. package/docs/{src/components → components}/maz-read-more.md +31 -122
  59. package/docs/components/maz-reading-progress-bar.md +96 -0
  60. package/docs/{src/components → components}/maz-select-country.md +80 -340
  61. package/docs/{src/components → components}/maz-select.md +76 -206
  62. package/docs/components/maz-sidebar-content.md +25 -0
  63. package/docs/components/maz-sidebar-footer.md +25 -0
  64. package/docs/components/maz-sidebar-group.md +27 -0
  65. package/docs/components/maz-sidebar-header.md +25 -0
  66. package/docs/components/maz-sidebar-menu-button.md +41 -0
  67. package/docs/components/maz-sidebar-menu-item.md +25 -0
  68. package/docs/components/maz-sidebar-menu-sub.md +32 -0
  69. package/docs/components/maz-sidebar-menu.md +25 -0
  70. package/docs/components/maz-sidebar-separator.md +21 -0
  71. package/docs/components/maz-sidebar-trigger.md +25 -0
  72. package/docs/{src/components → components}/maz-sidebar.md +117 -329
  73. package/docs/{src/components → components}/maz-skeleton.md +27 -156
  74. package/docs/{src/components → components}/maz-slider.md +33 -66
  75. package/docs/components/maz-spinner.md +84 -0
  76. package/docs/{src/components → components}/maz-stepper.md +48 -185
  77. package/docs/components/maz-switch.md +86 -0
  78. package/docs/components/maz-table-cell.md +27 -0
  79. package/docs/components/maz-table-row.md +28 -0
  80. package/docs/components/maz-table-title.md +27 -0
  81. package/docs/components/maz-table-virtualizer.md +31 -0
  82. package/docs/components/maz-table.md +426 -0
  83. package/docs/components/maz-tabs-bar.md +43 -0
  84. package/docs/components/maz-tabs-content-item.md +27 -0
  85. package/docs/components/maz-tabs-content.md +27 -0
  86. package/docs/{src/components → components}/maz-tabs.md +89 -126
  87. package/docs/components/maz-textarea.md +255 -0
  88. package/docs/components/maz-ticker.md +427 -0
  89. package/docs/components/maz-timeline.md +304 -0
  90. package/docs/components/maz-ui-provider.md +26 -0
  91. package/docs/{src/components → components}/maz-window-mockup.md +38 -105
  92. package/docs/composables/use-aos.md +41 -0
  93. package/docs/composables/use-breakpoints.md +42 -0
  94. package/docs/composables/use-dialog.md +58 -0
  95. package/docs/{src/composables → composables}/use-display-names.md +12 -59
  96. package/docs/{src/composables → composables}/use-drag.md +14 -68
  97. package/docs/{src/composables → composables}/use-form-validator.md +22 -696
  98. package/docs/{src/composables → composables}/use-idle-timeout.md +13 -97
  99. package/docs/{src/composables → composables}/use-pull-to-refresh.md +14 -7
  100. package/docs/{src/composables → composables}/use-reading-time.md +20 -56
  101. package/docs/composables/use-string-matching.md +41 -0
  102. package/docs/{src/composables → composables}/use-swipe.md +14 -81
  103. package/docs/{src/composables → composables}/use-timer.md +12 -38
  104. package/docs/composables/use-toast.md +50 -0
  105. package/docs/{src/composables → composables}/use-user-visibility.md +14 -56
  106. package/docs/composables/use-wait.md +50 -0
  107. package/docs/composables/use-window-size.md +25 -0
  108. package/docs/{src/directives → directives}/click-outside.md +13 -99
  109. package/docs/{src/directives → directives}/fullscreen-img.md +10 -28
  110. package/docs/{src/directives → directives}/lazy-img.md +14 -49
  111. package/docs/{src/directives → directives}/tooltip.md +12 -217
  112. package/docs/{src/directives → directives}/zoom-img.md +11 -38
  113. package/docs/{src/ecosystem → ecosystem}/eslint-config.md +37 -29
  114. package/docs/ecosystem/icons/icon-set.md +25 -0
  115. package/docs/{src/ecosystem → ecosystem}/icons/index.md +21 -15
  116. package/docs/ecosystem/mcp.md +165 -0
  117. package/docs/{src/ecosystem → ecosystem}/node/exec-promise.md +12 -6
  118. package/docs/ecosystem/node/index.md +53 -0
  119. package/docs/{src/ecosystem → ecosystem}/node/logger.md +12 -6
  120. package/docs/{src/ecosystem → ecosystem}/node/print-banner.md +12 -4
  121. package/docs/ecosystem/node/setup-agents.md +102 -0
  122. package/docs/{src/ecosystem → ecosystem}/nuxt.md +50 -19
  123. package/docs/{src/ecosystem → ecosystem}/stylelint-config.md +33 -25
  124. package/docs/{src/ecosystem → ecosystem}/themes.md +72 -235
  125. package/docs/{src/ecosystem → ecosystem}/translations.md +25 -23
  126. package/docs/ecosystem/utils/camel-case.md +37 -0
  127. package/docs/ecosystem/utils/capitalize.md +37 -0
  128. package/docs/{src/ecosystem → ecosystem}/utils/check-availability.md +14 -8
  129. package/docs/{src/ecosystem → ecosystem}/utils/cookie.md +18 -12
  130. package/docs/ecosystem/utils/country-code-to-unicode-flag.md +128 -0
  131. package/docs/{src/ecosystem → ecosystem}/utils/currency.md +12 -26
  132. package/docs/{src/ecosystem → ecosystem}/utils/date.md +10 -24
  133. package/docs/ecosystem/utils/debounce-callback.md +44 -0
  134. package/docs/{src/ecosystem → ecosystem}/utils/debounce-id.md +14 -8
  135. package/docs/{src/ecosystem → ecosystem}/utils/debounce.md +14 -8
  136. package/docs/ecosystem/utils/fetch-locale-ip.md +39 -0
  137. package/docs/{src/ecosystem → ecosystem}/utils/format-json.md +11 -5
  138. package/docs/{src/ecosystem → ecosystem}/utils/format-phone-number.md +12 -6
  139. package/docs/ecosystem/utils/get-browser-locale.md +35 -0
  140. package/docs/ecosystem/utils/get-country-flag-url.md +67 -0
  141. package/docs/{src/ecosystem → ecosystem}/utils/get-error-message.md +10 -4
  142. package/docs/{src/ecosystem → ecosystem}/utils/idle-timeout.md +15 -9
  143. package/docs/{src/ecosystem → ecosystem}/utils/index.md +10 -13
  144. package/docs/{src/ecosystem → ecosystem}/utils/is-client.md +11 -5
  145. package/docs/{src/ecosystem → ecosystem}/utils/is-equal.md +14 -8
  146. package/docs/{src/ecosystem → ecosystem}/utils/is-ios.md +12 -6
  147. package/docs/ecosystem/utils/is-server.md +37 -0
  148. package/docs/ecosystem/utils/is-standalone-mode.md +49 -0
  149. package/docs/{src/ecosystem → ecosystem}/utils/kebab-case.md +10 -4
  150. package/docs/{src/ecosystem → ecosystem}/utils/normalize-string.md +10 -4
  151. package/docs/{src/ecosystem → ecosystem}/utils/number.md +10 -24
  152. package/docs/{src/ecosystem → ecosystem}/utils/pascal-case.md +11 -5
  153. package/docs/{src/ecosystem → ecosystem}/utils/prevent-ios-input-zoom.md +14 -8
  154. package/docs/{src/ecosystem → ecosystem}/utils/script-loader.md +16 -8
  155. package/docs/{src/ecosystem → ecosystem}/utils/sleep.md +10 -4
  156. package/docs/{src/ecosystem → ecosystem}/utils/snake-case.md +10 -4
  157. package/docs/{src/ecosystem → ecosystem}/utils/swipe-handler.md +14 -8
  158. package/docs/{src/ecosystem → ecosystem}/utils/textarea-autogrow.md +12 -6
  159. package/docs/{src/ecosystem → ecosystem}/utils/throttle-id.md +13 -7
  160. package/docs/{src/ecosystem → ecosystem}/utils/throttle.md +14 -8
  161. package/docs/ecosystem/utils/truthy-filter.md +37 -0
  162. package/docs/{src/ecosystem → ecosystem}/utils/types/deep-key-of.md +11 -5
  163. package/docs/{src/ecosystem → ecosystem}/utils/types/deep-partial.md +10 -4
  164. package/docs/ecosystem/utils/types/deep-required.md +45 -0
  165. package/docs/ecosystem/utils/types/flatten-object-keys.md +50 -0
  166. package/docs/{src/ecosystem → ecosystem}/utils/types/generic-instance-type.md +10 -4
  167. package/docs/{src/ecosystem → ecosystem}/utils/types/infer-maybe-ref.md +10 -4
  168. package/docs/ecosystem/utils/upper-first.md +38 -0
  169. package/docs/{src/ecosystem → ecosystem}/utils/user-visibility.md +12 -6
  170. package/docs/guide/ai-agents.md +239 -0
  171. package/docs/{src/guide → guide}/browser-support.md +22 -15
  172. package/docs/{src/guide → guide}/getting-started.md +34 -139
  173. package/docs/{src/guide → guide}/global-defaults.md +12 -11
  174. package/docs/{src/guide → guide}/maz-ui-provider.md +17 -16
  175. package/docs/{src/guide → guide}/migration-v5.md +95 -88
  176. package/docs/{src/guide → guide}/resolvers.md +33 -100
  177. package/docs/guide/tailwind.md +507 -0
  178. package/docs/{src/guide → guide}/vue.md +33 -39
  179. package/docs/manifest.json +1 -0
  180. package/docs/{src/plugins → plugins}/aos.md +20 -55
  181. package/docs/{src/plugins → plugins}/dialog.md +14 -161
  182. package/docs/plugins/toast.md +221 -0
  183. package/docs/plugins/wait.md +78 -0
  184. package/docs/reference/icons.md +46 -0
  185. package/docs/reference/tailwind-tokens.md +191 -0
  186. package/docs/rules.md +59 -0
  187. package/package.json +86 -22
  188. package/dist/mcp.d.mts +0 -153
  189. package/dist/mcp.d.ts +0 -153
  190. package/dist/mcp.mjs +0 -1511
  191. package/docs/generated-docs/maz-accordion.doc.md +0 -21
  192. package/docs/generated-docs/maz-alert.doc.md +0 -20
  193. package/docs/generated-docs/maz-animated-counter.doc.md +0 -17
  194. package/docs/generated-docs/maz-animated-element.doc.md +0 -14
  195. package/docs/generated-docs/maz-animated-text.doc.md +0 -17
  196. package/docs/generated-docs/maz-avatar.doc.md +0 -45
  197. package/docs/generated-docs/maz-backdrop.doc.md +0 -55
  198. package/docs/generated-docs/maz-badge.doc.md +0 -16
  199. package/docs/generated-docs/maz-bottom-sheet.doc.md +0 -24
  200. package/docs/generated-docs/maz-btn-group.doc.md +0 -20
  201. package/docs/generated-docs/maz-btn.doc.md +0 -33
  202. package/docs/generated-docs/maz-card-spotlight.doc.md +0 -16
  203. package/docs/generated-docs/maz-card.doc.md +0 -39
  204. package/docs/generated-docs/maz-carousel.doc.md +0 -17
  205. package/docs/generated-docs/maz-chart.doc.md +0 -10
  206. package/docs/generated-docs/maz-checkbox.doc.md +0 -33
  207. package/docs/generated-docs/maz-checklist.doc.md +0 -30
  208. package/docs/generated-docs/maz-circular-progress-bar.doc.md +0 -27
  209. package/docs/generated-docs/maz-code-highlight.doc.md +0 -11
  210. package/docs/generated-docs/maz-container.doc.md +0 -26
  211. package/docs/generated-docs/maz-date-picker.doc.md +0 -56
  212. package/docs/generated-docs/maz-dialog-confirm.doc.md +0 -24
  213. package/docs/generated-docs/maz-dialog.doc.md +0 -22
  214. package/docs/generated-docs/maz-drawer.doc.md +0 -25
  215. package/docs/generated-docs/maz-dropdown.doc.md +0 -45
  216. package/docs/generated-docs/maz-dropzone.doc.md +0 -82
  217. package/docs/generated-docs/maz-expand-animation.doc.md +0 -12
  218. package/docs/generated-docs/maz-fullscreen-loader.doc.md +0 -13
  219. package/docs/generated-docs/maz-gallery.doc.md +0 -17
  220. package/docs/generated-docs/maz-icon.doc.md +0 -16
  221. package/docs/generated-docs/maz-input-code.doc.md +0 -25
  222. package/docs/generated-docs/maz-input-number.doc.md +0 -33
  223. package/docs/generated-docs/maz-input-phone-number.doc.md +0 -62
  224. package/docs/generated-docs/maz-input-price.doc.md +0 -26
  225. package/docs/generated-docs/maz-input-tags.doc.md +0 -24
  226. package/docs/generated-docs/maz-input.doc.md +0 -54
  227. package/docs/generated-docs/maz-lazy-img.doc.md +0 -49
  228. package/docs/generated-docs/maz-link.doc.md +0 -31
  229. package/docs/generated-docs/maz-loading-bar.doc.md +0 -6
  230. package/docs/generated-docs/maz-markdown-editor.doc.md +0 -65
  231. package/docs/generated-docs/maz-pagination.doc.md +0 -21
  232. package/docs/generated-docs/maz-popover.doc.md +0 -79
  233. package/docs/generated-docs/maz-pull-to-refresh.doc.md +0 -50
  234. package/docs/generated-docs/maz-radio-buttons.doc.md +0 -34
  235. package/docs/generated-docs/maz-radio.doc.md +0 -33
  236. package/docs/generated-docs/maz-read-more.doc.md +0 -18
  237. package/docs/generated-docs/maz-reading-progress-bar.doc.md +0 -18
  238. package/docs/generated-docs/maz-select-country.doc.md +0 -45
  239. package/docs/generated-docs/maz-select.doc.md +0 -32
  240. package/docs/generated-docs/maz-sidebar-content.doc.md +0 -5
  241. package/docs/generated-docs/maz-sidebar-footer.doc.md +0 -5
  242. package/docs/generated-docs/maz-sidebar-group.doc.md +0 -11
  243. package/docs/generated-docs/maz-sidebar-header.doc.md +0 -5
  244. package/docs/generated-docs/maz-sidebar-menu-button.doc.md +0 -27
  245. package/docs/generated-docs/maz-sidebar-menu-item.doc.md +0 -5
  246. package/docs/generated-docs/maz-sidebar-menu-sub.doc.md +0 -16
  247. package/docs/generated-docs/maz-sidebar-menu.doc.md +0 -5
  248. package/docs/generated-docs/maz-sidebar-separator.doc.md +0 -0
  249. package/docs/generated-docs/maz-sidebar-trigger.doc.md +0 -5
  250. package/docs/generated-docs/maz-sidebar.doc.md +0 -36
  251. package/docs/generated-docs/maz-skeleton.doc.md +0 -12
  252. package/docs/generated-docs/maz-slider.doc.md +0 -20
  253. package/docs/generated-docs/maz-spinner.doc.md +0 -6
  254. package/docs/generated-docs/maz-stepper.doc.md +0 -30
  255. package/docs/generated-docs/maz-switch.doc.md +0 -31
  256. package/docs/generated-docs/maz-table-cell.doc.md +0 -5
  257. package/docs/generated-docs/maz-table-row.doc.md +0 -12
  258. package/docs/generated-docs/maz-table-title.doc.md +0 -5
  259. package/docs/generated-docs/maz-table-virtualizer.doc.md +0 -20
  260. package/docs/generated-docs/maz-table.doc.md +0 -72
  261. package/docs/generated-docs/maz-tabs-bar.doc.md +0 -29
  262. package/docs/generated-docs/maz-tabs-content-item.doc.md +0 -11
  263. package/docs/generated-docs/maz-tabs-content.doc.md +0 -5
  264. package/docs/generated-docs/maz-tabs.doc.md +0 -20
  265. package/docs/generated-docs/maz-textarea.doc.md +0 -46
  266. package/docs/generated-docs/maz-ticker.doc.md +0 -25
  267. package/docs/generated-docs/maz-timeline.doc.md +0 -32
  268. package/docs/generated-docs/maz-ui-provider.doc.md +0 -12
  269. package/docs/generated-docs/maz-window-mockup.doc.md +0 -23
  270. package/docs/src/blog/v4.md +0 -276
  271. package/docs/src/blog/v5.md +0 -184
  272. package/docs/src/changelog.md +0 -7
  273. package/docs/src/components/index.md +0 -8
  274. package/docs/src/components/maz-accordion.md +0 -80
  275. package/docs/src/components/maz-animated-counter.md +0 -124
  276. package/docs/src/components/maz-animated-element.md +0 -36
  277. package/docs/src/components/maz-animated-text.md +0 -36
  278. package/docs/src/components/maz-avatar.md +0 -227
  279. package/docs/src/components/maz-backdrop.md +0 -250
  280. package/docs/src/components/maz-bottom-sheet.md +0 -533
  281. package/docs/src/components/maz-card-spotlight.md +0 -163
  282. package/docs/src/components/maz-carousel.md +0 -231
  283. package/docs/src/components/maz-checkbox.md +0 -168
  284. package/docs/src/components/maz-checklist.md +0 -414
  285. package/docs/src/components/maz-circular-progress-bar.md +0 -145
  286. package/docs/src/components/maz-container.md +0 -363
  287. package/docs/src/components/maz-dialog-confirm.md +0 -240
  288. package/docs/src/components/maz-dialog.md +0 -164
  289. package/docs/src/components/maz-drawer.md +0 -181
  290. package/docs/src/components/maz-dropdown.md +0 -691
  291. package/docs/src/components/maz-expand-animation.md +0 -99
  292. package/docs/src/components/maz-fullscreen-loader.md +0 -58
  293. package/docs/src/components/maz-gallery.md +0 -85
  294. package/docs/src/components/maz-input-code.md +0 -61
  295. package/docs/src/components/maz-input-number.md +0 -81
  296. package/docs/src/components/maz-input-phone-number.md +0 -942
  297. package/docs/src/components/maz-input-price.md +0 -67
  298. package/docs/src/components/maz-input-tags.md +0 -114
  299. package/docs/src/components/maz-lazy-img.md +0 -88
  300. package/docs/src/components/maz-link.md +0 -178
  301. package/docs/src/components/maz-loading-bar.md +0 -26
  302. package/docs/src/components/maz-pagination.md +0 -79
  303. package/docs/src/components/maz-popover.md +0 -1416
  304. package/docs/src/components/maz-radio-buttons.md +0 -462
  305. package/docs/src/components/maz-radio.md +0 -142
  306. package/docs/src/components/maz-reading-progress-bar.md +0 -74
  307. package/docs/src/components/maz-spinner.md +0 -93
  308. package/docs/src/components/maz-switch.md +0 -92
  309. package/docs/src/components/maz-table.md +0 -732
  310. package/docs/src/components/maz-textarea.md +0 -400
  311. package/docs/src/components/maz-ticker.md +0 -692
  312. package/docs/src/components/maz-timeline.md +0 -478
  313. package/docs/src/composables/use-aos.md +0 -34
  314. package/docs/src/composables/use-breakpoints.md +0 -35
  315. package/docs/src/composables/use-dialog.md +0 -88
  316. package/docs/src/composables/use-string-matching.md +0 -63
  317. package/docs/src/composables/use-toast.md +0 -71
  318. package/docs/src/composables/use-wait.md +0 -62
  319. package/docs/src/composables/use-window-size.md +0 -18
  320. package/docs/src/ecosystem/icons/icon-set.md +0 -123
  321. package/docs/src/ecosystem/mcp.md +0 -210
  322. package/docs/src/ecosystem/node/index.md +0 -53
  323. package/docs/src/ecosystem/utils/camel-case.md +0 -31
  324. package/docs/src/ecosystem/utils/capitalize.md +0 -50
  325. package/docs/src/ecosystem/utils/country-code-to-unicode-flag.md +0 -213
  326. package/docs/src/ecosystem/utils/debounce-callback.md +0 -38
  327. package/docs/src/ecosystem/utils/fetch-locale-ip.md +0 -33
  328. package/docs/src/ecosystem/utils/get-browser-locale.md +0 -29
  329. package/docs/src/ecosystem/utils/get-country-flag-url.md +0 -156
  330. package/docs/src/ecosystem/utils/is-server.md +0 -31
  331. package/docs/src/ecosystem/utils/is-standalone-mode.md +0 -43
  332. package/docs/src/ecosystem/utils/truthy-filter.md +0 -31
  333. package/docs/src/ecosystem/utils/types/deep-required.md +0 -39
  334. package/docs/src/ecosystem/utils/types/flatten-object-keys.md +0 -44
  335. package/docs/src/ecosystem/utils/upper-first.md +0 -32
  336. package/docs/src/guide/cli.md +0 -144
  337. package/docs/src/guide/migration-v4.md +0 -925
  338. package/docs/src/guide/tailwind.md +0 -158
  339. package/docs/src/index.md +0 -603
  340. package/docs/src/made-with-maz-ui.md +0 -58
  341. package/docs/src/plugins/toast.md +0 -349
  342. package/docs/src/plugins/wait.md +0 -109
  343. package/docs/src/theme-editor.md +0 -21
@@ -1,13 +1,20 @@
1
1
  ---
2
- title: MazPullToRefresh
3
- description: MazPullToRefresh adds a native-feeling pull to refresh gesture to your app or to any scroll container, with a progress ring, haptic feedback and translated, accessible feedback.
2
+ title: "MazPullToRefresh"
3
+ description: "MazPullToRefresh adds a native-feeling pull to refresh gesture to your app or to any scroll container, with a progress ring, haptic feedback and translated, accessible feedback."
4
+ package: "maz-ui"
5
+ url: "https://maz-ui.com/components/maz-pull-to-refresh"
4
6
  ---
5
7
 
6
- # {{ $frontmatter.title }}
8
+ # MazPullToRefresh
7
9
 
8
- {{ $frontmatter.description }}
10
+ > MazPullToRefresh adds a native-feeling pull to refresh gesture to your app or to any scroll container, with a progress ring, haptic feedback and translated, accessible feedback.
9
11
 
10
- <!--@include: ./../../.vitepress/mixins/getting-started.md-->
12
+ - Package: `maz-ui`
13
+ - Import: `import MazPullToRefresh from 'maz-ui/components/MazPullToRefresh'`
14
+ - Nuxt: auto-imported by `@maz-ui/nuxt`, no import needed in a Nuxt app
15
+ - Web: https://maz-ui.com/components/maz-pull-to-refresh
16
+
17
+ > Before use it, you should install the MazUi plugin in your project, follow instructions in [Getting Started](../guide/getting-started.md)
11
18
 
12
19
  ## Key Features
13
20
 
@@ -16,45 +23,13 @@ description: MazPullToRefresh adds a native-feeling pull to refresh gesture to y
16
23
  - Rubber band resistance beyond the trigger distance, and a progress ring that fills while pulling
17
24
  - Ignores horizontal swipes and multi-touch gestures, and prevents the native bounce (and the browser's own pull to refresh) while pulling
18
25
  - Haptic feedback when the trigger distance is reached (devices supporting `navigator.vibrate`)
19
- - Texts from [@maz-ui/translations](./../ecosystem/translations.md), overridable with the `translations` prop or the slots
26
+ - Texts from [@maz-ui/translations](../ecosystem/translations.md), overridable with the `translations` prop or the slots
20
27
  - Accessible: the refresh is announced to screen readers, `aria-busy` is set while refreshing, and `refresh()` is exposed for a button usable with a keyboard or a mouse
21
28
  - Optional `standalone-mode` to enable it only in an installed PWA (browsers already have their own pull to refresh)
22
- - Built on the headless [usePullToRefresh](./../composables/use-pull-to-refresh.md) composable
29
+ - Built on the headless [usePullToRefresh](../composables/use-pull-to-refresh.md) composable
23
30
 
24
31
  ## Demo
25
32
 
26
- <div class="maz:flex maz:flex-col maz:items-center maz:gap-3 vp-raw">
27
- <p class="maz:text-sm maz:text-muted">
28
- Pull down inside the box on a touch device (or with the touch emulation of your browser's device toolbar).
29
- </p>
30
- <div class="maz:h-80 maz:w-full maz:max-w-sm maz:overflow-y-auto maz:rounded-lg maz:border maz:border-divider maz:bg-container">
31
- <MazPullToRefresh ref="demo" :on-refresh="refreshDemo">
32
- <ul class="maz:m-0 maz:list-none maz:p-0">
33
- <li v-for="item in items" :key="item" class="maz:border-b maz:border-divider maz:px-4 maz:py-3">
34
- {{ item }}
35
- </li>
36
- </ul>
37
- </MazPullToRefresh>
38
- </div>
39
- <MazBtn size="sm" :loading="demo?.isRefreshing" @click="demo?.refresh()">
40
- Refresh ({{ refreshCount }})
41
- </MazBtn>
42
- </div>
43
-
44
- <script lang="ts" setup>
45
- import { ref, useTemplateRef } from 'vue'
46
-
47
- const demo = useTemplateRef('demo')
48
- const refreshCount = ref(0)
49
- const items = ref(Array.from({ length: 20 }, (_, index) => `Item ${index + 1}`))
50
-
51
- async function refreshDemo() {
52
- await new Promise(resolve => setTimeout(resolve, 1000))
53
- refreshCount.value++
54
- items.value = [`New item ${refreshCount.value}`, ...items.value]
55
- }
56
- </script>
57
-
58
33
  ## Basic usage
59
34
 
60
35
  Wrap your app (or a page) inside the component and give it the function that reloads your data. The spinner stays visible until the returned promise settles.
@@ -91,9 +66,9 @@ The pull can only start when its scroll container is at the top. By default, the
91
66
 
92
67
  ```vue
93
68
  <template>
94
- <div class="app-shell maz:fixed maz:inset-0 maz:flex maz:flex-col">
69
+ <div class="app-shell fixed inset-0 flex flex-col">
95
70
  <header>…</header>
96
- <main class="maz:flex-1 maz:overflow-y-auto">
71
+ <main class="flex-1 overflow-y-auto">
97
72
  <MazPullToRefresh :on-refresh="refresh">
98
73
  <slot />
99
74
  </MazPullToRefresh>
@@ -140,7 +115,7 @@ The three states have their own slot. Each one receives the pull `progress` (0 t
140
115
 
141
116
  ```vue
142
117
  <template>
143
- <MazPullToRefresh :on-refresh="refresh" header-class="maz:bg-surface-600">
118
+ <MazPullToRefresh :on-refresh="refresh" header-class="bg-surface-600">
144
119
  <template #pull-before="{ progress }">
145
120
  <span>{{ Math.round(progress * 100) }}%</span>
146
121
  </template>
@@ -160,7 +135,7 @@ The three states have their own slot. Each one receives the pull `progress` (0 t
160
135
 
161
136
  ## Translations
162
137
 
163
- Texts come from [@maz-ui/translations](./../ecosystem/translations.md) (`pullToRefresh.pull`, `pullToRefresh.release`, `pullToRefresh.refreshing`). Override them per instance with the `translations` prop:
138
+ Texts come from [@maz-ui/translations](../ecosystem/translations.md) (`pullToRefresh.pull`, `pullToRefresh.release`, `pullToRefresh.refreshing`). Override them per instance with the `translations` prop:
164
139
 
165
140
  ```vue
166
141
  <template>
@@ -203,6 +178,45 @@ The events follow the life of a refresh: `start`, then `loaded` and `response` (
203
178
 
204
179
  ## Headless usage
205
180
 
206
- Need a different indicator, or a gesture on an element without wrapping it? Use the [usePullToRefresh](./../composables/use-pull-to-refresh.md) composable.
181
+ Need a different indicator, or a gesture on an element without wrapping it? Use the [usePullToRefresh](../composables/use-pull-to-refresh.md) composable.
182
+
183
+ ## MazPullToRefresh API
184
+
185
+ `import MazPullToRefresh from 'maz-ui/components/MazPullToRefresh'`
186
+
187
+ ### Props
188
+
189
+ - `on-refresh` (`(() => unknown)`): Function called when the user releases after pulling far enough. The spinner stays visible until the returned promise settles. Without it, the component does nothing.
190
+ - `distance` (`number`, default: `80`): Pull distance (in px, after resistance) required to trigger a refresh.
191
+ - `max-distance` (`number`, default: `distance * 1.6`): Maximum pull distance (in px), reached with a rubber band effect beyond `distance`.
192
+ - `resistance` (`number`, default: `0.5`): Ratio between the finger movement and the pull distance, between 0 and 1. Lower is stiffer.
193
+ - `min-duration` (`number`, default: `400`): Minimum duration (in ms) of the refreshing state, so the feedback stays visible on fast refreshes.
194
+ - `container-selector` (`string`): CSS selector of the scroll container. By default, the closest scrollable ancestor of the component, or the window. The pull only starts when this container is scrolled to the top.
195
+ - `header-class` (`ClassValue`): Class of the header that holds the indicator.
196
+ - `spinner-color` (`"primary" | "secondary" | "accent" | "info" | "success" | "warning" | "destructive" | "contrast" | "transparent"`, default: `"primary"`): Color of the progress ring and the spinner.
197
+ - `disabled` (`boolean`, default: `false`): Disable the pull to refresh.
198
+ - `standalone-mode` (`boolean`, default: `false`): Only enable the pull to refresh when the app runs as an installed PWA (standalone display mode), browsers already provide their own pull to refresh.
199
+ - `haptic` (`boolean`, default: `true`): Vibrate briefly when the pull reaches `distance` (devices supporting `navigator.vibrate`).
200
+ - `translations` (`{ pull?: string | undefined; release?: string | undefined; refreshing?: string | undefined; }`, default: `Translations from`): Translations of the pull to refresh.
201
+ - `offset` (`number`)
202
+
203
+ ### Events
204
+
205
+ - `@loaded`: Emitted when `onRefresh` resolved
206
+ - `@error` (payload: `error: unknown`): Emitted when `onRefresh` threw or rejected
207
+ - `@start`: Emitted when the refresh starts
208
+ - `@response` (payload: `response: unknown`): Emitted with the value resolved by `onRefresh`
209
+ - `@finish`: Emitted when the refresh ends, after `loaded` or `error`
210
+
211
+ ### Slots
212
+
213
+ - `#pull-before`: Content shown while pulling, before the threshold Bindings: `progress: number`, `distance: number`.
214
+ - `#pull-ready`: Content shown once releasing triggers a refresh Bindings: `progress: number`, `distance: number`.
215
+ - `#pull-loading`: Content shown while refreshing Bindings: `progress: number`, `distance: number`.
216
+ - `#default`: Content of the page
217
+
218
+ ### Exposed (template ref)
207
219
 
208
- <!--@include: ./../../.vitepress/generated-docs/maz-pull-to-refresh.doc.md-->
220
+ - `refresh`: Run the refresh programmatically (a "refresh" button for keyboard and mouse users)
221
+ - `isRefreshing`: `onRefresh` is running
222
+ - `progress`: Pull progress towards `distance`, from 0 to 1
@@ -0,0 +1,313 @@
1
+ ---
2
+ title: "MazRadioButtons"
3
+ description: "MazRadioButtons is a standalone component to select a value in a list. Made with native HTMLInputElement type radio"
4
+ package: "maz-ui"
5
+ url: "https://maz-ui.com/components/maz-radio-buttons"
6
+ ---
7
+
8
+ # MazRadioButtons
9
+
10
+ > MazRadioButtons is a standalone component to select a value in a list. Made with native HTMLInputElement type radio
11
+
12
+ - Package: `maz-ui`
13
+ - Import: `import MazRadioButtons from 'maz-ui/components/MazRadioButtons'`
14
+ - Nuxt: auto-imported by `@maz-ui/nuxt`, no import needed in a Nuxt app
15
+ - Web: https://maz-ui.com/components/maz-radio-buttons
16
+
17
+ > Before use it, you should install the MazUi plugin in your project, follow instructions in [Getting Started](../guide/getting-started.md)
18
+
19
+ ## Basic usage
20
+
21
+ ```vue
22
+ <template>
23
+ <MazRadioButtons
24
+ v-model="selectedCompetition"
25
+ :options="competitions"
26
+ />
27
+ </template>
28
+
29
+ <script lang="ts" setup>
30
+ import { ref } from 'vue'
31
+
32
+ import MazRadioButtons from 'maz-ui/components/MazRadioButtons'
33
+
34
+ const selectedCompetition = ref<string>()
35
+
36
+ const competitions = [
37
+ {
38
+ value: "1",
39
+ label: "Ligue 1",
40
+ areaName: "France",
41
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/en/c/c3/Flag_of_France.svg",
42
+ },
43
+ {
44
+ value: "2",
45
+ label: "Premier League",
46
+ areaName: "England",
47
+ areaEnsignUrl: "https://crests.football-data.org/770.svg",
48
+ },
49
+ {
50
+ value: "3",
51
+ label: "Bundesliga",
52
+ areaName: "Germany",
53
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/commons/b/ba/Flag_of_Germany.svg",
54
+ },
55
+ {
56
+ value: "4",
57
+ label: "Eredivisie",
58
+ areaName: "Netherlands",
59
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/commons/2/20/Flag_of_the_Netherlands.svg",
60
+ },
61
+ {
62
+ value: "5",
63
+ label: "Serie A",
64
+ areaName: "Italy",
65
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/en/0/03/Flag_of_Italy.svg",
66
+ },
67
+ {
68
+ value: "6",
69
+ label: "Primera Division",
70
+ areaName: "Spain",
71
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/en/9/9a/Flag_of_Spain.svg",
72
+ },
73
+ {
74
+ value: "7",
75
+ label: "Primeira Liga",
76
+ areaName: "Portugal",
77
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/commons/5/5c/Flag_of_Portugal.svg",
78
+ },
79
+ {
80
+ value: "8",
81
+ label: "UEFA Champions League",
82
+ areaName: "Europe",
83
+ areaEnsignUrl: "https://crests.football-data.org/EUR.svg",
84
+ }
85
+ ]
86
+ </script>
87
+ ```
88
+
89
+ ## Custom slot template
90
+
91
+ ```html
92
+ <MazRadioButtons
93
+ v-model="selectedCompetition"
94
+ :options="competitions"
95
+ color="secondary"
96
+ >
97
+ <template #default="{ option, selected }">
98
+ <div style="display: flex;">
99
+ <MazAvatar
100
+ v-if="option.areaEnsignUrl"
101
+ :src="option.areaEnsignUrl"
102
+ style="margin-right: 16px;"
103
+ size="0.8rem"
104
+ />
105
+ <div style="display: flex; flex-direction: column;">
106
+ <span>
107
+ {{ option.label }}
108
+ </span>
109
+ <span :class="{ 'text-muted': !selected }">
110
+ {{ option.areaName }}
111
+ </span>
112
+ </div>
113
+ </div>
114
+ </template>
115
+ </MazRadioButtons>
116
+ ```
117
+
118
+ ## Orientation - Column
119
+
120
+ ```vue
121
+ <template>
122
+ <MazRadioButtons
123
+ v-model="selectedCompetition"
124
+ :options="competitions"
125
+ orientation="col | row"
126
+ v-slot="{ option, selected }"
127
+ >
128
+ <div style="display: flex;">
129
+ <MazAvatar
130
+ v-if="option.areaEnsignUrl"
131
+ :src="option.areaEnsignUrl"
132
+ style="margin-right: 16px;"
133
+ size="0.8rem"
134
+ />
135
+ <div style="display: flex; flex-direction: column;">
136
+ <span>
137
+ {{ option.label }}
138
+ </span>
139
+ <span :class="{ 'text-muted': !selected }">
140
+ {{ option.areaName }}
141
+ </span>
142
+ </div>
143
+ </div>
144
+ </MazRadioButtons>
145
+ </template>
146
+
147
+ <script lang="ts" setup>
148
+ import { ref } from 'vue'
149
+
150
+ import { MazRadioButtons, MazAvatar } from 'maz-ui/components'
151
+
152
+ const selectedCompetition = ref<string>()
153
+
154
+ const competitions = [
155
+ {
156
+ value: "1",
157
+ label: "Ligue 1",
158
+ areaName: "France",
159
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/en/c/c3/Flag_of_France.svg",
160
+ },
161
+ {
162
+ value: "2",
163
+ label: "Premier League",
164
+ areaName: "England",
165
+ areaEnsignUrl: "https://crests.football-data.org/770.svg",
166
+ },
167
+ {
168
+ value: "3",
169
+ label: "Bundesliga",
170
+ areaName: "Germany",
171
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/commons/b/ba/Flag_of_Germany.svg",
172
+ },
173
+ {
174
+ value: "4",
175
+ label: "Eredivisie",
176
+ areaName: "Netherlands",
177
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/commons/2/20/Flag_of_the_Netherlands.svg",
178
+ },
179
+ {
180
+ value: "5",
181
+ label: "Serie A",
182
+ areaName: "Italy",
183
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/en/0/03/Flag_of_Italy.svg",
184
+ },
185
+ {
186
+ value: "6",
187
+ label: "Primera Division",
188
+ areaName: "Spain",
189
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/en/9/9a/Flag_of_Spain.svg",
190
+ },
191
+ {
192
+ value: "7",
193
+ label: "Primeira Liga",
194
+ areaName: "Portugal",
195
+ areaEnsignUrl: "https://upload.wikimedia.org/wikipedia/commons/5/5c/Flag_of_Portugal.svg",
196
+ },
197
+ {
198
+ value: "8",
199
+ label: "UEFA Champions League",
200
+ areaName: "Europe",
201
+ areaEnsignUrl: "https://crests.football-data.org/EUR.svg",
202
+ }
203
+ ]
204
+ </script>
205
+ ```
206
+
207
+ ## Selector icon with options equal-size
208
+
209
+ This option will display a select icon on the left of the label
210
+
211
+ ```vue
212
+ <template>
213
+ <MazRadioButtons
214
+ v-slot="{ option, selected }"
215
+ v-model="selectedMode"
216
+ :options="modeOptions"
217
+ selector
218
+ equal-size
219
+ block
220
+ >
221
+ <div class="flex flex-col items-start p-2">
222
+ <h3 class="mb-2 text-xl font-semibold">
223
+ {{ option.label }}
224
+ </h3>
225
+ <span :class="{ 'text-muted': !selected }">
226
+ {{ option.description }}
227
+ </span>
228
+ </div>
229
+ </MazRadioButtons>
230
+ </template>
231
+
232
+ <script lang="ts" setup>
233
+ import { ref } from 'vue'
234
+ import { type MazRadioButtonsOption } from 'maz-ui/components/MazRadioButtons'
235
+
236
+ const selectedMode = ref('scores')
237
+
238
+ const modeOptions: MazRadioButtonsOption[] = [
239
+ {
240
+ label: 'Scores',
241
+ value: 'scores',
242
+ description:
243
+ 'Predict the score of matches. If you find the outcome of the match you win 5 points, if you get the perfect score you double your score!',
244
+ style: 'min-width: 250px;'
245
+ },
246
+ {
247
+ label: 'Cotes',
248
+ value: 'odds',
249
+ description:
250
+ 'Predict with match odds. If you find the correct winner of the match you earn the points associated with the rating, if you have the perfect score you double your score.',
251
+ style: 'min-width: 250px;'
252
+ },
253
+ ]
254
+ </script>
255
+ ```
256
+
257
+ ## Types
258
+
259
+ ### options
260
+
261
+ The options prop is an array of `ButtonsRadioOption` type
262
+
263
+ ```ts
264
+ export type ButtonsRadioOption = {
265
+ /** The label of the option */
266
+ label: string
267
+ /** The value of the option */
268
+ value: string | number | boolean
269
+ /** The classes to apply to the option */
270
+ classes?: any
271
+ /** The style to apply to the option */
272
+ style?: StyleValue
273
+ } & Record<string, unknown>
274
+ ```
275
+
276
+ ## Accessibility
277
+
278
+ The root element is a `radiogroup` of native radio inputs: pass an `aria-label` (or `aria-labelledby`) to name it. The `hint` describes the group (`aria-describedby`) and `error` sets `aria-invalid`. The arrows move between the options natively.
279
+
280
+ When no `name` is provided, each instance gets a unique one, so two groups of the same page never share their radios.
281
+
282
+ ## MazRadioButtons API
283
+
284
+ `import MazRadioButtons from 'maz-ui/components/MazRadioButtons'`
285
+
286
+ ### Props
287
+
288
+ - `model-value` (`T`, `v-model`): The value of the selected option.
289
+ - `options` (`Option[]`, required): The options to display.
290
+ - `name` (`string`, default: `a unique name per instance`): The name of the radio group.
291
+ - `color` (`"primary" | "secondary" | "accent" | "info" | "success" | "warning" | "destructive" | "contrast" | "transparent" | "surface"`, default: `"primary"`): The color of the selected radio buttons.
292
+ - `elevation` (`boolean`, default: `false`): Add elevation to the radio buttons.
293
+ - `orientation` (`"row" | "col"`, default: `"row"`): The orientation of the radio buttons.
294
+ - `wrap` (`boolean`, default: `true`): Disable the wrap of the radio buttons.
295
+ - `equal-size` (`boolean`, default: `false`): Make all radio buttons the same size.
296
+ - `selector` (`boolean`, default: `false`): Display a selector icon.
297
+ - `block` (`boolean`, default: `false`): The component will be displayed in full width.
298
+ - `error` (`boolean`): Whether there is an error with the input.
299
+ - `success` (`boolean`): Whether the input is successful.
300
+ - `warning` (`boolean`): Whether there is a warning with the input.
301
+ - `hint` (`string`): The hint text to display below the input.
302
+ - `size` (`"xs" | "sm" | "md" | "lg" | "xl" | "mini"`, default: `'md'`): The size of the radio buttons.
303
+
304
+ ### Events
305
+
306
+ - `@update:model-value` (payload: `value: Option["value"]`): Emitted when the selected option change
307
+ - `@blur` (payload: `value: FocusEvent`): Emitted when the a radio button lost focus
308
+ - `@change` (payload: `value: Option["value"]`): Emitted when the selected option change
309
+ - `@focus` (payload: `value: FocusEvent`): Emitted when the a radio button is focused
310
+
311
+ ### Slots
312
+
313
+ - `#default`: Label of the radio Bindings: `option: Option` (The value of the option), `selected: boolean` (If the option is selected).
@@ -0,0 +1,119 @@
1
+ ---
2
+ title: "MazRadio"
3
+ description: "MazRadio is a radio input with a label, colors and sizes to pick one value among several options; see MazRadioButtons for a ready-made group"
4
+ package: "maz-ui"
5
+ url: "https://maz-ui.com/components/maz-radio"
6
+ ---
7
+
8
+ # MazRadio
9
+
10
+ > MazRadio is a radio input with a label, colors and sizes to pick one value among several options; see MazRadioButtons for a ready-made group
11
+
12
+ - Package: `maz-ui`
13
+ - Import: `import MazRadio from 'maz-ui/components/MazRadio'`
14
+ - Nuxt: auto-imported by `@maz-ui/nuxt`, no import needed in a Nuxt app
15
+ - Web: https://maz-ui.com/components/maz-radio
16
+
17
+ > Before use it, you should install the MazUi plugin in your project, follow instructions in [Getting Started](../guide/getting-started.md)
18
+
19
+ ## Basic usage
20
+
21
+ `v-model=""`
22
+
23
+ **Details: View code**
24
+
25
+ ```vue
26
+ <script lang="ts" setup>
27
+ import MazRadio from 'maz-ui/components/MazRadio'
28
+ import { ref } from 'vue'
29
+
30
+ const chosenColor = ref('primary')
31
+ const chosenSize = ref('mini')
32
+
33
+ const colors: Color[] = [
34
+ 'primary',
35
+ 'secondary',
36
+ 'info',
37
+ 'success',
38
+ 'warning',
39
+ 'destructive',
40
+ 'accent',
41
+ 'contrast',
42
+ ]
43
+ </script>
44
+
45
+ <template>
46
+ <MazRadio
47
+ v-for="color in colors"
48
+ :key="color"
49
+ v-model="chosenColor"
50
+ name="chosenColor"
51
+ :color="color"
52
+ :value="color"
53
+ >
54
+ {{ color }}
55
+ </MazRadio>
56
+ </template>
57
+ ```
58
+
59
+ ## Sizing
60
+
61
+ `v-model=""`
62
+
63
+ **Details: View code**
64
+
65
+ ```vue
66
+ <script lang="ts" setup>
67
+ import MazRadio from 'maz-ui/components/MazRadio'
68
+ import type { Size } from 'maz-ui/components'
69
+ import { ref } from 'vue'
70
+
71
+ const chosenSize = ref('mini')
72
+
73
+ const sizes: Size[] = ['mini', 'xs', 'sm', 'md', 'lg', 'xl']
74
+ </script>
75
+
76
+ <template>
77
+ <MazRadio
78
+ v-for="size in sizes"
79
+ :key="size"
80
+ v-model="chosenSize"
81
+ name="chosenSize"
82
+ :size="size"
83
+ :value="size"
84
+ :label="size"
85
+ />
86
+ </template>
87
+ ```
88
+
89
+ ## Disabled
90
+
91
+ ## MazRadio API
92
+
93
+ `import MazRadio from 'maz-ui/components/MazRadio'`
94
+
95
+ ### Props
96
+
97
+ - `id` (`string`): The id of the radio.
98
+ - `model-value` (`T`, `v-model`): The value of the radio.
99
+ - `value` (`T`, required): The value of the radio.
100
+ - `name` (`string`, required): The name of the radio.
101
+ - `label` (`string`): The label of the radio.
102
+ - `color` (`"primary" | "secondary" | "accent" | "info" | "success" | "warning" | "destructive" | "contrast" | "transparent"`, default: `"primary"`): The color of the radio.
103
+ - `size` (`"xs" | "sm" | "md" | "lg" | "xl" | "mini"`): The size of the radio.
104
+ - `disabled` (`boolean`, default: `false`): The disabled state of the radio.
105
+ - `error` (`boolean`): Whether there is an error with the input.
106
+ - `success` (`boolean`): Whether the input is successful.
107
+ - `warning` (`boolean`): Whether there is a warning with the input.
108
+ - `hint` (`string`): The hint text to display below the input.
109
+
110
+ ### Events
111
+
112
+ - `@update:model-value` (payload: `value: T`): Event emitted when value change
113
+ - `@blur` (payload: `value: FocusEvent`): Emitted when the radio lost focus
114
+ - `@change` (payload: `value: T`): Event emitted when value change
115
+ - `@focus` (payload: `value: FocusEvent`): Emitted when the radio is focused
116
+
117
+ ### Slots
118
+
119
+ - `#default` Bindings: `isSelected: boolean`, `value: T`.