@maz-ui/mcp 5.0.0 → 5.1.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +61 -228
- package/bin/maz-ui-mcp.mjs +2 -5
- package/dist/cli.d.mts +7 -0
- package/dist/cli.d.ts +7 -0
- package/dist/cli.mjs +14 -0
- package/dist/index.d.mts +340 -0
- package/dist/index.d.ts +340 -0
- package/dist/index.mjs +14 -0
- package/dist/shared/mcp.DzqVbCaL.mjs +2346 -0
- package/docs/README.md +207 -0
- package/docs/agents/agents-md.md +52 -0
- package/docs/agents/claude-rule.md +52 -0
- package/docs/components/maz-accordion.md +76 -0
- package/docs/{src/components → components}/maz-alert.md +31 -164
- package/docs/components/maz-animated-counter.md +87 -0
- package/docs/components/maz-animated-element.md +46 -0
- package/docs/components/maz-animated-text.md +53 -0
- package/docs/components/maz-avatar.md +193 -0
- package/docs/components/maz-backdrop.md +178 -0
- package/docs/{src/components → components}/maz-badge.md +26 -67
- package/docs/components/maz-bottom-sheet.md +257 -0
- package/docs/{src/components → components}/maz-btn-group.md +26 -189
- package/docs/{src/components → components}/maz-btn.md +60 -245
- package/docs/components/maz-card-spotlight.md +84 -0
- package/docs/{src/components → components}/maz-card.md +67 -192
- package/docs/components/maz-carousel.md +153 -0
- package/docs/{src/components → components}/maz-chart.md +17 -161
- package/docs/components/maz-checkbox.md +138 -0
- package/docs/components/maz-checklist.md +251 -0
- package/docs/components/maz-circular-progress-bar.md +109 -0
- package/docs/{src/components → components}/maz-code-highlight.md +15 -93
- package/docs/components/maz-container.md +241 -0
- package/docs/{src/components → components}/maz-date-picker.md +85 -454
- package/docs/components/maz-dialog-confirm.md +215 -0
- package/docs/components/maz-dialog.md +143 -0
- package/docs/components/maz-drawer.md +106 -0
- package/docs/components/maz-dropdown.md +419 -0
- package/docs/{src/components → components}/maz-dropzone.md +80 -221
- package/docs/components/maz-expand-animation.md +82 -0
- package/docs/components/maz-fullscreen-loader.md +58 -0
- package/docs/components/maz-gallery.md +79 -0
- package/docs/{src/components → components}/maz-icon.md +32 -83
- package/docs/components/maz-input-code.md +73 -0
- package/docs/components/maz-input-number.md +79 -0
- package/docs/components/maz-input-phone-number.md +536 -0
- package/docs/components/maz-input-price.md +68 -0
- package/docs/components/maz-input-tags.md +112 -0
- package/docs/{src/components → components}/maz-input.md +74 -221
- package/docs/components/maz-lazy-img.md +113 -0
- package/docs/components/maz-link.md +146 -0
- package/docs/components/maz-loading-bar.md +38 -0
- package/docs/{src/components → components}/maz-markdown-editor.md +72 -125
- package/docs/components/maz-pagination.md +82 -0
- package/docs/components/maz-popover.md +794 -0
- package/docs/{src/components → components}/maz-pull-to-refresh.md +59 -45
- package/docs/components/maz-radio-buttons.md +313 -0
- package/docs/components/maz-radio.md +119 -0
- package/docs/{src/components → components}/maz-read-more.md +31 -122
- package/docs/components/maz-reading-progress-bar.md +96 -0
- package/docs/{src/components → components}/maz-select-country.md +80 -340
- package/docs/{src/components → components}/maz-select.md +76 -206
- package/docs/components/maz-sidebar-content.md +25 -0
- package/docs/components/maz-sidebar-footer.md +25 -0
- package/docs/components/maz-sidebar-group.md +27 -0
- package/docs/components/maz-sidebar-header.md +25 -0
- package/docs/components/maz-sidebar-menu-button.md +41 -0
- package/docs/components/maz-sidebar-menu-item.md +25 -0
- package/docs/components/maz-sidebar-menu-sub.md +32 -0
- package/docs/components/maz-sidebar-menu.md +25 -0
- package/docs/components/maz-sidebar-separator.md +21 -0
- package/docs/components/maz-sidebar-trigger.md +25 -0
- package/docs/{src/components → components}/maz-sidebar.md +117 -329
- package/docs/{src/components → components}/maz-skeleton.md +27 -156
- package/docs/{src/components → components}/maz-slider.md +33 -66
- package/docs/components/maz-spinner.md +84 -0
- package/docs/{src/components → components}/maz-stepper.md +43 -185
- package/docs/components/maz-switch.md +86 -0
- package/docs/components/maz-table-cell.md +27 -0
- package/docs/components/maz-table-row.md +28 -0
- package/docs/components/maz-table-title.md +27 -0
- package/docs/components/maz-table-virtualizer.md +31 -0
- package/docs/components/maz-table.md +426 -0
- package/docs/components/maz-tabs-bar.md +43 -0
- package/docs/components/maz-tabs-content-item.md +27 -0
- package/docs/components/maz-tabs-content.md +27 -0
- package/docs/{src/components → components}/maz-tabs.md +89 -126
- package/docs/components/maz-textarea.md +255 -0
- package/docs/components/maz-ticker.md +427 -0
- package/docs/components/maz-timeline.md +304 -0
- package/docs/components/maz-ui-provider.md +26 -0
- package/docs/{src/components → components}/maz-window-mockup.md +38 -105
- package/docs/composables/use-aos.md +41 -0
- package/docs/composables/use-breakpoints.md +42 -0
- package/docs/composables/use-dialog.md +58 -0
- package/docs/{src/composables → composables}/use-display-names.md +12 -59
- package/docs/{src/composables → composables}/use-drag.md +14 -68
- package/docs/{src/composables → composables}/use-form-validator.md +22 -696
- package/docs/{src/composables → composables}/use-idle-timeout.md +13 -97
- package/docs/{src/composables → composables}/use-pull-to-refresh.md +14 -7
- package/docs/{src/composables → composables}/use-reading-time.md +20 -56
- package/docs/composables/use-string-matching.md +41 -0
- package/docs/{src/composables → composables}/use-swipe.md +14 -81
- package/docs/{src/composables → composables}/use-timer.md +12 -38
- package/docs/composables/use-toast.md +50 -0
- package/docs/{src/composables → composables}/use-user-visibility.md +14 -56
- package/docs/composables/use-wait.md +50 -0
- package/docs/composables/use-window-size.md +25 -0
- package/docs/{src/directives → directives}/click-outside.md +13 -99
- package/docs/{src/directives → directives}/fullscreen-img.md +10 -28
- package/docs/{src/directives → directives}/lazy-img.md +14 -49
- package/docs/{src/directives → directives}/tooltip.md +12 -217
- package/docs/{src/directives → directives}/zoom-img.md +11 -38
- package/docs/{src/ecosystem → ecosystem}/eslint-config.md +37 -29
- package/docs/ecosystem/icons/icon-set.md +25 -0
- package/docs/{src/ecosystem → ecosystem}/icons/index.md +22 -16
- package/docs/ecosystem/mcp.md +165 -0
- package/docs/{src/ecosystem → ecosystem}/node/exec-promise.md +12 -6
- package/docs/ecosystem/node/index.md +53 -0
- package/docs/{src/ecosystem → ecosystem}/node/logger.md +12 -6
- package/docs/{src/ecosystem → ecosystem}/node/print-banner.md +12 -4
- package/docs/ecosystem/node/setup-agents.md +102 -0
- package/docs/{src/ecosystem → ecosystem}/nuxt.md +46 -19
- package/docs/{src/ecosystem → ecosystem}/stylelint-config.md +33 -25
- package/docs/{src/ecosystem → ecosystem}/themes.md +72 -235
- package/docs/{src/ecosystem → ecosystem}/translations.md +25 -23
- package/docs/ecosystem/utils/camel-case.md +37 -0
- package/docs/ecosystem/utils/capitalize.md +37 -0
- package/docs/{src/ecosystem → ecosystem}/utils/check-availability.md +14 -8
- package/docs/{src/ecosystem → ecosystem}/utils/cookie.md +18 -12
- package/docs/ecosystem/utils/country-code-to-unicode-flag.md +128 -0
- package/docs/{src/ecosystem → ecosystem}/utils/currency.md +12 -26
- package/docs/{src/ecosystem → ecosystem}/utils/date.md +10 -24
- package/docs/ecosystem/utils/debounce-callback.md +44 -0
- package/docs/{src/ecosystem → ecosystem}/utils/debounce-id.md +14 -8
- package/docs/{src/ecosystem → ecosystem}/utils/debounce.md +14 -8
- package/docs/ecosystem/utils/fetch-locale-ip.md +39 -0
- package/docs/{src/ecosystem → ecosystem}/utils/format-json.md +11 -5
- package/docs/{src/ecosystem → ecosystem}/utils/format-phone-number.md +12 -6
- package/docs/ecosystem/utils/get-browser-locale.md +35 -0
- package/docs/ecosystem/utils/get-country-flag-url.md +67 -0
- package/docs/{src/ecosystem → ecosystem}/utils/get-error-message.md +10 -4
- package/docs/{src/ecosystem → ecosystem}/utils/idle-timeout.md +15 -9
- package/docs/{src/ecosystem → ecosystem}/utils/index.md +10 -13
- package/docs/{src/ecosystem → ecosystem}/utils/is-client.md +11 -5
- package/docs/{src/ecosystem → ecosystem}/utils/is-equal.md +14 -8
- package/docs/{src/ecosystem → ecosystem}/utils/is-ios.md +12 -6
- package/docs/ecosystem/utils/is-server.md +37 -0
- package/docs/ecosystem/utils/is-standalone-mode.md +49 -0
- package/docs/{src/ecosystem → ecosystem}/utils/kebab-case.md +10 -4
- package/docs/{src/ecosystem → ecosystem}/utils/normalize-string.md +10 -4
- package/docs/{src/ecosystem → ecosystem}/utils/number.md +10 -24
- package/docs/{src/ecosystem → ecosystem}/utils/pascal-case.md +11 -5
- package/docs/{src/ecosystem → ecosystem}/utils/prevent-ios-input-zoom.md +14 -8
- package/docs/{src/ecosystem → ecosystem}/utils/script-loader.md +16 -8
- package/docs/{src/ecosystem → ecosystem}/utils/sleep.md +10 -4
- package/docs/{src/ecosystem → ecosystem}/utils/snake-case.md +10 -4
- package/docs/{src/ecosystem → ecosystem}/utils/swipe-handler.md +14 -8
- package/docs/{src/ecosystem → ecosystem}/utils/textarea-autogrow.md +12 -6
- package/docs/{src/ecosystem → ecosystem}/utils/throttle-id.md +13 -7
- package/docs/{src/ecosystem → ecosystem}/utils/throttle.md +14 -8
- package/docs/ecosystem/utils/truthy-filter.md +37 -0
- package/docs/{src/ecosystem → ecosystem}/utils/types/deep-key-of.md +11 -5
- package/docs/{src/ecosystem → ecosystem}/utils/types/deep-partial.md +10 -4
- package/docs/ecosystem/utils/types/deep-required.md +45 -0
- package/docs/ecosystem/utils/types/flatten-object-keys.md +50 -0
- package/docs/{src/ecosystem → ecosystem}/utils/types/generic-instance-type.md +10 -4
- package/docs/{src/ecosystem → ecosystem}/utils/types/infer-maybe-ref.md +10 -4
- package/docs/ecosystem/utils/upper-first.md +38 -0
- package/docs/{src/ecosystem → ecosystem}/utils/user-visibility.md +12 -6
- package/docs/guide/ai-agents.md +237 -0
- package/docs/{src/guide → guide}/browser-support.md +22 -15
- package/docs/{src/guide → guide}/getting-started.md +34 -139
- package/docs/{src/guide → guide}/global-defaults.md +12 -11
- package/docs/{src/guide → guide}/maz-ui-provider.md +17 -16
- package/docs/{src/guide → guide}/migration-v5.md +95 -88
- package/docs/{src/guide → guide}/resolvers.md +33 -100
- package/docs/guide/tailwind.md +483 -0
- package/docs/{src/guide → guide}/vue.md +33 -39
- package/docs/manifest.json +1 -0
- package/docs/{src/plugins → plugins}/aos.md +20 -55
- package/docs/{src/plugins → plugins}/dialog.md +14 -161
- package/docs/plugins/toast.md +221 -0
- package/docs/plugins/wait.md +78 -0
- package/docs/reference/icons.md +46 -0
- package/docs/reference/tailwind-tokens.md +191 -0
- package/docs/rules.md +57 -0
- package/package.json +84 -22
- package/dist/mcp.d.mts +0 -153
- package/dist/mcp.d.ts +0 -153
- package/dist/mcp.mjs +0 -1511
- package/docs/generated-docs/maz-accordion.doc.md +0 -21
- package/docs/generated-docs/maz-alert.doc.md +0 -20
- package/docs/generated-docs/maz-animated-counter.doc.md +0 -17
- package/docs/generated-docs/maz-animated-element.doc.md +0 -14
- package/docs/generated-docs/maz-animated-text.doc.md +0 -17
- package/docs/generated-docs/maz-avatar.doc.md +0 -45
- package/docs/generated-docs/maz-backdrop.doc.md +0 -55
- package/docs/generated-docs/maz-badge.doc.md +0 -16
- package/docs/generated-docs/maz-bottom-sheet.doc.md +0 -24
- package/docs/generated-docs/maz-btn-group.doc.md +0 -20
- package/docs/generated-docs/maz-btn.doc.md +0 -33
- package/docs/generated-docs/maz-card-spotlight.doc.md +0 -16
- package/docs/generated-docs/maz-card.doc.md +0 -39
- package/docs/generated-docs/maz-carousel.doc.md +0 -17
- package/docs/generated-docs/maz-chart.doc.md +0 -10
- package/docs/generated-docs/maz-checkbox.doc.md +0 -33
- package/docs/generated-docs/maz-checklist.doc.md +0 -30
- package/docs/generated-docs/maz-circular-progress-bar.doc.md +0 -27
- package/docs/generated-docs/maz-code-highlight.doc.md +0 -11
- package/docs/generated-docs/maz-container.doc.md +0 -26
- package/docs/generated-docs/maz-date-picker.doc.md +0 -56
- package/docs/generated-docs/maz-dialog-confirm.doc.md +0 -24
- package/docs/generated-docs/maz-dialog.doc.md +0 -22
- package/docs/generated-docs/maz-drawer.doc.md +0 -25
- package/docs/generated-docs/maz-dropdown.doc.md +0 -45
- package/docs/generated-docs/maz-dropzone.doc.md +0 -82
- package/docs/generated-docs/maz-expand-animation.doc.md +0 -12
- package/docs/generated-docs/maz-fullscreen-loader.doc.md +0 -13
- package/docs/generated-docs/maz-gallery.doc.md +0 -17
- package/docs/generated-docs/maz-icon.doc.md +0 -16
- package/docs/generated-docs/maz-input-code.doc.md +0 -25
- package/docs/generated-docs/maz-input-number.doc.md +0 -33
- package/docs/generated-docs/maz-input-phone-number.doc.md +0 -62
- package/docs/generated-docs/maz-input-price.doc.md +0 -26
- package/docs/generated-docs/maz-input-tags.doc.md +0 -24
- package/docs/generated-docs/maz-input.doc.md +0 -54
- package/docs/generated-docs/maz-lazy-img.doc.md +0 -49
- package/docs/generated-docs/maz-link.doc.md +0 -31
- package/docs/generated-docs/maz-loading-bar.doc.md +0 -6
- package/docs/generated-docs/maz-markdown-editor.doc.md +0 -65
- package/docs/generated-docs/maz-pagination.doc.md +0 -21
- package/docs/generated-docs/maz-popover.doc.md +0 -79
- package/docs/generated-docs/maz-pull-to-refresh.doc.md +0 -50
- package/docs/generated-docs/maz-radio-buttons.doc.md +0 -34
- package/docs/generated-docs/maz-radio.doc.md +0 -33
- package/docs/generated-docs/maz-read-more.doc.md +0 -18
- package/docs/generated-docs/maz-reading-progress-bar.doc.md +0 -18
- package/docs/generated-docs/maz-select-country.doc.md +0 -45
- package/docs/generated-docs/maz-select.doc.md +0 -32
- package/docs/generated-docs/maz-sidebar-content.doc.md +0 -5
- package/docs/generated-docs/maz-sidebar-footer.doc.md +0 -5
- package/docs/generated-docs/maz-sidebar-group.doc.md +0 -11
- package/docs/generated-docs/maz-sidebar-header.doc.md +0 -5
- package/docs/generated-docs/maz-sidebar-menu-button.doc.md +0 -27
- package/docs/generated-docs/maz-sidebar-menu-item.doc.md +0 -5
- package/docs/generated-docs/maz-sidebar-menu-sub.doc.md +0 -16
- package/docs/generated-docs/maz-sidebar-menu.doc.md +0 -5
- package/docs/generated-docs/maz-sidebar-separator.doc.md +0 -0
- package/docs/generated-docs/maz-sidebar-trigger.doc.md +0 -5
- package/docs/generated-docs/maz-sidebar.doc.md +0 -36
- package/docs/generated-docs/maz-skeleton.doc.md +0 -12
- package/docs/generated-docs/maz-slider.doc.md +0 -20
- package/docs/generated-docs/maz-spinner.doc.md +0 -6
- package/docs/generated-docs/maz-stepper.doc.md +0 -30
- package/docs/generated-docs/maz-switch.doc.md +0 -31
- package/docs/generated-docs/maz-table-cell.doc.md +0 -5
- package/docs/generated-docs/maz-table-row.doc.md +0 -12
- package/docs/generated-docs/maz-table-title.doc.md +0 -5
- package/docs/generated-docs/maz-table-virtualizer.doc.md +0 -20
- package/docs/generated-docs/maz-table.doc.md +0 -72
- package/docs/generated-docs/maz-tabs-bar.doc.md +0 -29
- package/docs/generated-docs/maz-tabs-content-item.doc.md +0 -11
- package/docs/generated-docs/maz-tabs-content.doc.md +0 -5
- package/docs/generated-docs/maz-tabs.doc.md +0 -20
- package/docs/generated-docs/maz-textarea.doc.md +0 -46
- package/docs/generated-docs/maz-ticker.doc.md +0 -25
- package/docs/generated-docs/maz-timeline.doc.md +0 -32
- package/docs/generated-docs/maz-ui-provider.doc.md +0 -12
- package/docs/generated-docs/maz-window-mockup.doc.md +0 -23
- package/docs/src/blog/v4.md +0 -276
- package/docs/src/blog/v5.md +0 -184
- package/docs/src/changelog.md +0 -7
- package/docs/src/components/index.md +0 -8
- package/docs/src/components/maz-accordion.md +0 -80
- package/docs/src/components/maz-animated-counter.md +0 -124
- package/docs/src/components/maz-animated-element.md +0 -36
- package/docs/src/components/maz-animated-text.md +0 -36
- package/docs/src/components/maz-avatar.md +0 -227
- package/docs/src/components/maz-backdrop.md +0 -250
- package/docs/src/components/maz-bottom-sheet.md +0 -533
- package/docs/src/components/maz-card-spotlight.md +0 -163
- package/docs/src/components/maz-carousel.md +0 -231
- package/docs/src/components/maz-checkbox.md +0 -168
- package/docs/src/components/maz-checklist.md +0 -414
- package/docs/src/components/maz-circular-progress-bar.md +0 -145
- package/docs/src/components/maz-container.md +0 -363
- package/docs/src/components/maz-dialog-confirm.md +0 -240
- package/docs/src/components/maz-dialog.md +0 -164
- package/docs/src/components/maz-drawer.md +0 -181
- package/docs/src/components/maz-dropdown.md +0 -691
- package/docs/src/components/maz-expand-animation.md +0 -99
- package/docs/src/components/maz-fullscreen-loader.md +0 -58
- package/docs/src/components/maz-gallery.md +0 -85
- package/docs/src/components/maz-input-code.md +0 -61
- package/docs/src/components/maz-input-number.md +0 -81
- package/docs/src/components/maz-input-phone-number.md +0 -942
- package/docs/src/components/maz-input-price.md +0 -67
- package/docs/src/components/maz-input-tags.md +0 -114
- package/docs/src/components/maz-lazy-img.md +0 -88
- package/docs/src/components/maz-link.md +0 -178
- package/docs/src/components/maz-loading-bar.md +0 -26
- package/docs/src/components/maz-pagination.md +0 -79
- package/docs/src/components/maz-popover.md +0 -1416
- package/docs/src/components/maz-radio-buttons.md +0 -462
- package/docs/src/components/maz-radio.md +0 -142
- package/docs/src/components/maz-reading-progress-bar.md +0 -74
- package/docs/src/components/maz-spinner.md +0 -93
- package/docs/src/components/maz-switch.md +0 -92
- package/docs/src/components/maz-table.md +0 -732
- package/docs/src/components/maz-textarea.md +0 -400
- package/docs/src/components/maz-ticker.md +0 -692
- package/docs/src/components/maz-timeline.md +0 -478
- package/docs/src/composables/use-aos.md +0 -34
- package/docs/src/composables/use-breakpoints.md +0 -35
- package/docs/src/composables/use-dialog.md +0 -88
- package/docs/src/composables/use-string-matching.md +0 -63
- package/docs/src/composables/use-toast.md +0 -71
- package/docs/src/composables/use-wait.md +0 -62
- package/docs/src/composables/use-window-size.md +0 -18
- package/docs/src/ecosystem/icons/icon-set.md +0 -123
- package/docs/src/ecosystem/mcp.md +0 -210
- package/docs/src/ecosystem/node/index.md +0 -53
- package/docs/src/ecosystem/utils/camel-case.md +0 -31
- package/docs/src/ecosystem/utils/capitalize.md +0 -50
- package/docs/src/ecosystem/utils/country-code-to-unicode-flag.md +0 -213
- package/docs/src/ecosystem/utils/debounce-callback.md +0 -38
- package/docs/src/ecosystem/utils/fetch-locale-ip.md +0 -33
- package/docs/src/ecosystem/utils/get-browser-locale.md +0 -29
- package/docs/src/ecosystem/utils/get-country-flag-url.md +0 -156
- package/docs/src/ecosystem/utils/is-server.md +0 -31
- package/docs/src/ecosystem/utils/is-standalone-mode.md +0 -43
- package/docs/src/ecosystem/utils/truthy-filter.md +0 -31
- package/docs/src/ecosystem/utils/types/deep-required.md +0 -39
- package/docs/src/ecosystem/utils/types/flatten-object-keys.md +0 -44
- package/docs/src/ecosystem/utils/upper-first.md +0 -32
- package/docs/src/guide/cli.md +0 -144
- package/docs/src/guide/migration-v4.md +0 -925
- package/docs/src/guide/tailwind.md +0 -158
- package/docs/src/index.md +0 -603
- package/docs/src/made-with-maz-ui.md +0 -58
- package/docs/src/plugins/toast.md +0 -349
- package/docs/src/plugins/wait.md +0 -109
- package/docs/src/theme-editor.md +0 -21
|
@@ -1,38 +1,20 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: vTooltip
|
|
3
|
-
description: vTooltip is a Vue directive to display a text when the user hovers an element
|
|
2
|
+
title: "vTooltip"
|
|
3
|
+
description: "vTooltip is a Vue directive to display a text when the user hovers an element"
|
|
4
|
+
package: "maz-ui"
|
|
5
|
+
url: "https://maz-ui.com/directives/tooltip"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
|
-
#
|
|
8
|
+
# vTooltip
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
> vTooltip is a Vue directive to display a text when the user hovers an element
|
|
9
11
|
|
|
12
|
+
- Package: `maz-ui`
|
|
13
|
+
- Import: `import { vTooltip } from 'maz-ui/directives/vTooltip'`
|
|
14
|
+
- Web: https://maz-ui.com/directives/tooltip
|
|
10
15
|
|
|
11
16
|
## Basic usage
|
|
12
17
|
|
|
13
|
-
<ComponentDemo>
|
|
14
|
-
<p class="maz:mb-4">
|
|
15
|
-
Hover the buttons
|
|
16
|
-
</p>
|
|
17
|
-
<div
|
|
18
|
-
class="maz:flex maz:gap-3 maz:flex-wrap"
|
|
19
|
-
>
|
|
20
|
-
<MazBtn v-tooltip="'This is a top tooltip'">
|
|
21
|
-
Top
|
|
22
|
-
</MazBtn>
|
|
23
|
-
<MazBtn v-tooltip.right="'This is a top tooltip'">
|
|
24
|
-
Right
|
|
25
|
-
</MazBtn>
|
|
26
|
-
<MazBtn v-tooltip.left="'This is a top tooltip'">
|
|
27
|
-
Left
|
|
28
|
-
</MazBtn>
|
|
29
|
-
<MazBtn v-tooltip.bottom="'This is a top tooltip'">
|
|
30
|
-
Bottom
|
|
31
|
-
</MazBtn>
|
|
32
|
-
</div>
|
|
33
|
-
|
|
34
|
-
<template #code>
|
|
35
|
-
|
|
36
18
|
```vue
|
|
37
19
|
<script lang="ts" setup>
|
|
38
20
|
import { vTooltip } from 'maz-ui/directives'
|
|
@@ -54,49 +36,8 @@ import { vTooltip } from 'maz-ui/directives'
|
|
|
54
36
|
</template>
|
|
55
37
|
```
|
|
56
38
|
|
|
57
|
-
</template>
|
|
58
|
-
</ComponentDemo>
|
|
59
|
-
|
|
60
39
|
## Colors
|
|
61
40
|
|
|
62
|
-
<ComponentDemo>
|
|
63
|
-
<p class="maz:mb-4">
|
|
64
|
-
Hover the buttons
|
|
65
|
-
</p>
|
|
66
|
-
<div
|
|
67
|
-
class="maz:flex maz:gap-3 maz:flex-wrap"
|
|
68
|
-
>
|
|
69
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'primary' }">
|
|
70
|
-
Primary
|
|
71
|
-
</MazBtn>
|
|
72
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'secondary' }" color="secondary">
|
|
73
|
-
Secondary
|
|
74
|
-
</MazBtn>
|
|
75
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'accent' }" color="accent">
|
|
76
|
-
Accent
|
|
77
|
-
</MazBtn>
|
|
78
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'success' }" color="success">
|
|
79
|
-
Success
|
|
80
|
-
</MazBtn>
|
|
81
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'warning' }" color="warning">
|
|
82
|
-
Warning
|
|
83
|
-
</MazBtn>
|
|
84
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'destructive' }" color="destructive">
|
|
85
|
-
Destructive
|
|
86
|
-
</MazBtn>
|
|
87
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'info' }" color="info">
|
|
88
|
-
Info
|
|
89
|
-
</MazBtn>
|
|
90
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'contrast' }" color="contrast">
|
|
91
|
-
Contrast
|
|
92
|
-
</MazBtn>
|
|
93
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'surface' }" color="surface">
|
|
94
|
-
Background
|
|
95
|
-
</MazBtn>
|
|
96
|
-
</div>
|
|
97
|
-
|
|
98
|
-
<template #code>
|
|
99
|
-
|
|
100
41
|
```html
|
|
101
42
|
<MazBtn v-tooltip="{ text: 'Tooltip text', color: 'primary' }">
|
|
102
43
|
Primary
|
|
@@ -135,57 +76,10 @@ import { vTooltip } from 'maz-ui/directives'
|
|
|
135
76
|
</MazBtn>
|
|
136
77
|
```
|
|
137
78
|
|
|
138
|
-
</template>
|
|
139
|
-
</ComponentDemo>
|
|
140
|
-
|
|
141
79
|
## Position
|
|
142
80
|
|
|
143
81
|
You can change the position of the tooltip by passing a `position` option or using the directive modifier (e.g. `v-tooltip.top`).
|
|
144
82
|
|
|
145
|
-
<ComponentDemo>
|
|
146
|
-
<div
|
|
147
|
-
class="maz:flex maz:gap-3 maz:flex-wrap"
|
|
148
|
-
>
|
|
149
|
-
<MazBtn v-tooltip.bottom="{ text: 'Tooltip text' }">
|
|
150
|
-
Bottom
|
|
151
|
-
</MazBtn>
|
|
152
|
-
<MazBtn v-tooltip.left="{ text: 'Tooltip text' }">
|
|
153
|
-
Left
|
|
154
|
-
</MazBtn>
|
|
155
|
-
<MazBtn v-tooltip.right="{ text: 'Tooltip text' }">
|
|
156
|
-
Right
|
|
157
|
-
</MazBtn>
|
|
158
|
-
<MazBtn v-tooltip.top="{ text: 'Tooltip text' }">
|
|
159
|
-
Top
|
|
160
|
-
</MazBtn>
|
|
161
|
-
<MazBtn v-tooltip.top-start="{ text: 'Tooltip text' }">
|
|
162
|
-
Top start
|
|
163
|
-
</MazBtn>
|
|
164
|
-
<MazBtn v-tooltip.top-end="{ text: 'Tooltip text' }">
|
|
165
|
-
Top end
|
|
166
|
-
</MazBtn>
|
|
167
|
-
<MazBtn v-tooltip.bottom-start="{ text: 'Tooltip text' }">
|
|
168
|
-
Bottom start
|
|
169
|
-
</MazBtn>
|
|
170
|
-
<MazBtn v-tooltip.bottom-end="{ text: 'Tooltip text' }">
|
|
171
|
-
Bottom end
|
|
172
|
-
</MazBtn>
|
|
173
|
-
<MazBtn v-tooltip.left-start="{ text: 'Tooltip text' }">
|
|
174
|
-
Left start
|
|
175
|
-
</MazBtn>
|
|
176
|
-
<MazBtn v-tooltip.left-end="{ text: 'Tooltip text' }">
|
|
177
|
-
Left end
|
|
178
|
-
</MazBtn>
|
|
179
|
-
<MazBtn v-tooltip.right-start="{ text: 'Tooltip text' }">
|
|
180
|
-
Right start
|
|
181
|
-
</MazBtn>
|
|
182
|
-
<MazBtn v-tooltip.right-end="{ text: 'Tooltip text' }">
|
|
183
|
-
Right end
|
|
184
|
-
</MazBtn>
|
|
185
|
-
</div>
|
|
186
|
-
|
|
187
|
-
<template #code>
|
|
188
|
-
|
|
189
83
|
```html
|
|
190
84
|
<MazBtn v-tooltip.bottom="{ text: 'Tooltip text' }">
|
|
191
85
|
Bottom
|
|
@@ -220,54 +114,22 @@ You can change the position of the tooltip by passing a `position` option or usi
|
|
|
220
114
|
</MazBtn>
|
|
221
115
|
```
|
|
222
116
|
|
|
223
|
-
</template>
|
|
224
|
-
</ComponentDemo>
|
|
225
|
-
|
|
226
|
-
|
|
227
117
|
## HTML content
|
|
228
118
|
|
|
229
119
|
You can also use HTML content in the tooltip by passing a string to the `html` option.
|
|
230
120
|
|
|
231
|
-
<ComponentDemo>
|
|
232
|
-
<div
|
|
233
|
-
class="maz:flex maz:gap-3 maz:flex-wrap"
|
|
234
|
-
>
|
|
235
|
-
<MazBtn v-tooltip="{ html: '<strong>Tooltip</strong> text <br> with <br> line breaks' }">
|
|
236
|
-
HTML
|
|
237
|
-
</MazBtn>
|
|
238
|
-
</div>
|
|
239
|
-
|
|
240
|
-
<template #code>
|
|
241
|
-
|
|
242
121
|
```html
|
|
243
122
|
<MazBtn v-tooltip="{ html: '<strong>Tooltip</strong> text <br> with <br> line breaks' }">
|
|
244
123
|
HTML
|
|
245
124
|
</MazBtn>
|
|
246
125
|
```
|
|
247
126
|
|
|
248
|
-
</template>
|
|
249
|
-
</ComponentDemo>
|
|
250
|
-
|
|
251
127
|
## Customization
|
|
252
128
|
|
|
253
129
|
You can customize the tooltip by passing a `panelClass` or `panelStyle` option.
|
|
254
130
|
|
|
255
|
-
<ComponentDemo>
|
|
256
|
-
<div
|
|
257
|
-
class="maz:flex maz:gap-3 maz:flex-wrap"
|
|
258
|
-
>
|
|
259
|
-
<MazBtn v-tooltip="{ text: 'Custom panel class', panelClass: 'maz:text-red-500!' }">
|
|
260
|
-
panelClass
|
|
261
|
-
</MazBtn>
|
|
262
|
-
<MazBtn v-tooltip="{ text: 'Custom panel style', panelStyle: 'background-color: red; color: white;' }">
|
|
263
|
-
panelStyle
|
|
264
|
-
</MazBtn>
|
|
265
|
-
</div>
|
|
266
|
-
|
|
267
|
-
<template #code>
|
|
268
|
-
|
|
269
131
|
```html
|
|
270
|
-
<MazBtn v-tooltip="{ text: 'Custom panel class', panelClass: '
|
|
132
|
+
<MazBtn v-tooltip="{ text: 'Custom panel class', panelClass: 'text-red-500!' }">
|
|
271
133
|
panelClass
|
|
272
134
|
</MazBtn>
|
|
273
135
|
<MazBtn v-tooltip="{ text: 'Custom panel style', panelStyle: 'background-color: red; color: white;' }">
|
|
@@ -275,9 +137,6 @@ You can customize the tooltip by passing a `panelClass` or `panelStyle` option.
|
|
|
275
137
|
</MazBtn>
|
|
276
138
|
```
|
|
277
139
|
|
|
278
|
-
</template>
|
|
279
|
-
</ComponentDemo>
|
|
280
|
-
|
|
281
140
|
## Trigger
|
|
282
141
|
|
|
283
142
|
You can change the trigger mode of the tooltip by passing a `trigger` option.
|
|
@@ -286,23 +145,6 @@ The default trigger is `hover`.
|
|
|
286
145
|
|
|
287
146
|
The `adaptive` trigger will use the `click` trigger on touch devices (mobile and tablet) and the `hover` trigger on non-touch devices (desktop).
|
|
288
147
|
|
|
289
|
-
<ComponentDemo>
|
|
290
|
-
<div
|
|
291
|
-
class="maz:flex maz:gap-3 maz:flex-wrap"
|
|
292
|
-
>
|
|
293
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', trigger: 'click' }">
|
|
294
|
-
Click
|
|
295
|
-
</MazBtn>
|
|
296
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', trigger: 'hover' }">
|
|
297
|
-
Hover
|
|
298
|
-
</MazBtn>
|
|
299
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', trigger: 'adaptive' }">
|
|
300
|
-
Adaptive
|
|
301
|
-
</MazBtn>
|
|
302
|
-
</div>
|
|
303
|
-
|
|
304
|
-
<template #code>
|
|
305
|
-
|
|
306
148
|
```html
|
|
307
149
|
<MazBtn v-tooltip="{ text: 'Tooltip text', trigger: 'click' }">
|
|
308
150
|
Click
|
|
@@ -317,33 +159,10 @@ The `adaptive` trigger will use the `click` trigger on touch devices (mobile and
|
|
|
317
159
|
</MazBtn>
|
|
318
160
|
```
|
|
319
161
|
|
|
320
|
-
</template>
|
|
321
|
-
</ComponentDemo>
|
|
322
|
-
|
|
323
162
|
## Offset
|
|
324
163
|
|
|
325
164
|
The `offset` (in px) option allows you to adjust the position of the tooltip relative to the original element.
|
|
326
165
|
|
|
327
|
-
<ComponentDemo>
|
|
328
|
-
<div
|
|
329
|
-
class="maz:flex maz:gap-3 maz:flex-wrap"
|
|
330
|
-
>
|
|
331
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', offset: 0 }">
|
|
332
|
-
0
|
|
333
|
-
</MazBtn>
|
|
334
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', offset: 10 }">
|
|
335
|
-
10
|
|
336
|
-
</MazBtn>
|
|
337
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', offset: 20 }">
|
|
338
|
-
20
|
|
339
|
-
</MazBtn>
|
|
340
|
-
<MazBtn v-tooltip="{ text: 'Tooltip text', offset: 40 }">
|
|
341
|
-
40
|
|
342
|
-
</MazBtn>
|
|
343
|
-
</div>
|
|
344
|
-
|
|
345
|
-
<template #code>
|
|
346
|
-
|
|
347
166
|
```html
|
|
348
167
|
<MazBtn v-tooltip="{ text: 'Tooltip text', offset: 0 }">
|
|
349
168
|
0
|
|
@@ -362,23 +181,8 @@ The `offset` (in px) option allows you to adjust the position of the tooltip rel
|
|
|
362
181
|
</MazBtn>
|
|
363
182
|
```
|
|
364
183
|
|
|
365
|
-
</template>
|
|
366
|
-
</ComponentDemo>
|
|
367
|
-
|
|
368
184
|
## Open programmatically
|
|
369
185
|
|
|
370
|
-
<ComponentDemo>
|
|
371
|
-
<div class="maz:flex maz:gap-3 maz:flex-wrap">
|
|
372
|
-
<MazBtn v-tooltip.top="{ text: 'Tooltip text', open: open }">
|
|
373
|
-
Primary
|
|
374
|
-
</MazBtn>
|
|
375
|
-
<MazBtn @click="open = !open" color="secondary">
|
|
376
|
-
Toggle tooltip
|
|
377
|
-
</MazBtn>
|
|
378
|
-
</div>
|
|
379
|
-
|
|
380
|
-
<template #code>
|
|
381
|
-
|
|
382
186
|
```vue
|
|
383
187
|
<script lang="ts" setup>
|
|
384
188
|
import { vTooltip } from 'maz-ui/directives'
|
|
@@ -397,12 +201,9 @@ The `offset` (in px) option allows you to adjust the position of the tooltip rel
|
|
|
397
201
|
</template>
|
|
398
202
|
```
|
|
399
203
|
|
|
400
|
-
</template>
|
|
401
|
-
</ComponentDemo>
|
|
402
|
-
|
|
403
204
|
## Conditionally disable
|
|
404
205
|
|
|
405
|
-
Pass `false`, `null` or `undefined` as the binding value to silently disable the tooltip
|
|
206
|
+
Pass `false`, `null` or `undefined` as the binding value to silently disable the tooltip - no popover instance is created, no listeners are attached, and no warning is logged. This is the recommended way to skip the tooltip on the fly without conditionally rendering two different elements:
|
|
406
207
|
|
|
407
208
|
```vue
|
|
408
209
|
<script lang="ts" setup>
|
|
@@ -444,7 +245,7 @@ app.mount('#app')
|
|
|
444
245
|
|
|
445
246
|
### Nuxt
|
|
446
247
|
|
|
447
|
-
Please refer to the [Nuxt module documentation](
|
|
248
|
+
Please refer to the [Nuxt module documentation](../ecosystem/nuxt.md) for more information.
|
|
448
249
|
|
|
449
250
|
## Types
|
|
450
251
|
|
|
@@ -495,9 +296,3 @@ type VTooltipBindingValue
|
|
|
495
296
|
= | string
|
|
496
297
|
| VTooltipOptions
|
|
497
298
|
```
|
|
498
|
-
|
|
499
|
-
<script lang="ts" setup>
|
|
500
|
-
import { ref } from 'vue'
|
|
501
|
-
import { vTooltip } from 'maz-ui/directives/vTooltip'
|
|
502
|
-
const open = ref(true)
|
|
503
|
-
</script>
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: vZoomImg
|
|
3
|
-
description: vZoomImg is a Vue directive to enlarge an image like a modal on click, if you have several images, you can pass them like a carousel
|
|
2
|
+
title: "vZoomImg"
|
|
3
|
+
description: "vZoomImg is a Vue directive to enlarge an image like a modal on click, if you have several images, you can pass them like a carousel"
|
|
4
|
+
package: "maz-ui"
|
|
5
|
+
url: "https://maz-ui.com/directives/zoom-img"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
|
-
#
|
|
8
|
+
# vZoomImg
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
> vZoomImg is a Vue directive to enlarge an image like a modal on click, if you have several images, you can pass them like a carousel
|
|
11
|
+
|
|
12
|
+
- Package: `maz-ui`
|
|
13
|
+
- Import: `import { vZoomImg } from 'maz-ui/directives/vZoomImg'`
|
|
14
|
+
- Web: https://maz-ui.com/directives/zoom-img
|
|
9
15
|
|
|
10
16
|
> Can be mixed with [vLazyImg](./lazy-img.md) directive
|
|
11
17
|
|
|
@@ -13,18 +19,6 @@ description: vZoomImg is a Vue directive to enlarge an image like a modal on cli
|
|
|
13
19
|
|
|
14
20
|
> Click on the photo
|
|
15
21
|
|
|
16
|
-
<MazCard overflow-hidden>
|
|
17
|
-
<img
|
|
18
|
-
src="https://placedog.net/1500/1000"
|
|
19
|
-
v-zoom-img="{ src: 'https://placedog.net/1500/1000' }"
|
|
20
|
-
/>
|
|
21
|
-
</MazCard>
|
|
22
|
-
<br />
|
|
23
|
-
<br />
|
|
24
|
-
<MazBtn v-zoom-img="{ src: 'https://placedog.net/1000/500' }">
|
|
25
|
-
Show photo
|
|
26
|
-
</MazBtn>
|
|
27
|
-
|
|
28
22
|
```vue
|
|
29
23
|
<script lang="ts" setup>
|
|
30
24
|
import { vZoomImg } from 'maz-ui/directives'
|
|
@@ -46,27 +40,6 @@ import { vZoomImg } from 'maz-ui/directives'
|
|
|
46
40
|
|
|
47
41
|
## Options
|
|
48
42
|
|
|
49
|
-
<br />
|
|
50
|
-
|
|
51
|
-
<MazCard overflow-hidden>
|
|
52
|
-
<img
|
|
53
|
-
src="https://placedog.net/1200/800"
|
|
54
|
-
v-zoom-img="zoomImgBinding"
|
|
55
|
-
/>
|
|
56
|
-
</MazCard>
|
|
57
|
-
|
|
58
|
-
<script lang="ts" setup>
|
|
59
|
-
import { vZoomImg } from 'maz-ui/directives/vZoomImg'
|
|
60
|
-
|
|
61
|
-
const zoomImgBinding: vZoomImgBinding = {
|
|
62
|
-
src: 'https://placedog.net/1200/800',
|
|
63
|
-
alt: 'alt image',
|
|
64
|
-
blur: false,
|
|
65
|
-
scale: false,
|
|
66
|
-
disabled: false
|
|
67
|
-
}
|
|
68
|
-
</script>
|
|
69
|
-
|
|
70
43
|
```vue
|
|
71
44
|
<script lang="ts" setup>
|
|
72
45
|
import { vZoomImg, type vZoomImgBindingValue } from 'maz-ui/directives'
|
|
@@ -107,7 +80,7 @@ app.mount('#app')
|
|
|
107
80
|
|
|
108
81
|
### Nuxt
|
|
109
82
|
|
|
110
|
-
Please refer to the [Nuxt module documentation](
|
|
83
|
+
Please refer to the [Nuxt module documentation](../ecosystem/nuxt.md) for more information.
|
|
111
84
|
|
|
112
85
|
## Types
|
|
113
86
|
|
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
---
|
|
2
|
-
title:
|
|
3
|
-
description: ESLint flat-config preset for Vue/Nuxt/JS/TS projects, layered on @antfu/eslint-config with SonarJS, Tailwind v3+v4 and a11y add-ons.
|
|
2
|
+
title: "@maz-ui/eslint-config"
|
|
3
|
+
description: "ESLint flat-config preset for Vue/Nuxt/JS/TS projects, layered on @antfu/eslint-config with SonarJS, Tailwind v3+v4 and a11y add-ons."
|
|
4
|
+
package: "@maz-ui/eslint-config"
|
|
5
|
+
url: "https://maz-ui.com/ecosystem/eslint-config"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
|
-
#
|
|
8
|
+
# @maz-ui/eslint-config
|
|
9
|
+
|
|
10
|
+
> ESLint flat-config preset for Vue/Nuxt/JS/TS projects, layered on @antfu/eslint-config with SonarJS, Tailwind v3+v4 and a11y add-ons.
|
|
11
|
+
|
|
12
|
+
- Package: `@maz-ui/eslint-config`
|
|
13
|
+
- Import: `import { defineConfig } from '@maz-ui/eslint-config'`
|
|
14
|
+
- Web: https://maz-ui.com/ecosystem/eslint-config
|
|
7
15
|
|
|
8
16
|
`@maz-ui/eslint-config` ships an opinionated ESLint **flat config** for the kind of stack maz-ui itself uses: TypeScript, Vue 3 / Nuxt 3, optional Tailwind CSS (v3 or v4), and tests. It is built on top of [`@antfu/eslint-config`](https://github.com/antfu/eslint-config) so you get a battle-tested baseline, then layered with quality rules from [SonarJS](https://github.com/SonarSource/eslint-plugin-sonarjs), Tailwind rules from [`eslint-plugin-better-tailwindcss`](https://github.com/schoero/eslint-plugin-better-tailwindcss), and accessibility rules from [`eslint-plugin-vuejs-accessibility`](https://github.com/vue-a11y/eslint-plugin-vuejs-accessibility).
|
|
9
17
|
|
|
@@ -53,7 +61,7 @@ export default defineConfig({
|
|
|
53
61
|
'vue/custom-event-name-casing': ['error', 'kebab-case'],
|
|
54
62
|
},
|
|
55
63
|
|
|
56
|
-
// Log verbosity
|
|
64
|
+
// Log verbosity - see "Logging" below.
|
|
57
65
|
logLevel: 'default',
|
|
58
66
|
})
|
|
59
67
|
```
|
|
@@ -73,9 +81,9 @@ The preset prints a titled box summarizing what it resolved (typescript, vue, ta
|
|
|
73
81
|
defineConfig({ logLevel: 'debug' })
|
|
74
82
|
```
|
|
75
83
|
|
|
76
|
-
The default is **`'default'` in interactive terminals (TTY) and `'silent'` otherwise**
|
|
84
|
+
The default is **`'default'` in interactive terminals (TTY) and `'silent'` otherwise** - CI, lint-staged, pipes, and JSON / SARIF formatters all write to stdout, where the box would corrupt machine-readable output. `logLevel` always wins when set explicitly.
|
|
77
85
|
|
|
78
|
-
You can also append raw flat-config items as additional arguments
|
|
86
|
+
You can also append raw flat-config items as additional arguments - they merge after the built-in configs:
|
|
79
87
|
|
|
80
88
|
```ts
|
|
81
89
|
export default defineConfig(
|
|
@@ -89,7 +97,7 @@ export default defineConfig(
|
|
|
89
97
|
|
|
90
98
|
## Tailwind support
|
|
91
99
|
|
|
92
|
-
Powered by [`eslint-plugin-better-tailwindcss`](https://github.com/schoero/eslint-plugin-better-tailwindcss)
|
|
100
|
+
Powered by [`eslint-plugin-better-tailwindcss`](https://github.com/schoero/eslint-plugin-better-tailwindcss) - supports both **Tailwind v3 and v4**, and ESLint 7→10.
|
|
93
101
|
|
|
94
102
|
The `tailwindcss` option accepts several shapes:
|
|
95
103
|
|
|
@@ -98,30 +106,31 @@ The `tailwindcss` option accepts several shapes:
|
|
|
98
106
|
| `false` *(default)* | Disabled. |
|
|
99
107
|
| `true` | Same as `'recommended'` with default settings. |
|
|
100
108
|
| `'recommended'` | Stylistic + correctness rules. |
|
|
101
|
-
| `'stylistic'` | Formatting rules only
|
|
102
|
-
| `'correctness'` | Validation rules only
|
|
109
|
+
| `'stylistic'` | Formatting rules only - class order, line wrapping, no duplicate classes, etc. |
|
|
110
|
+
| `'correctness'` | Validation rules only - `no-unknown-classes`, `no-conflicting-classes`. |
|
|
103
111
|
| `MazTailwindcssOptions` | Pick a preset and pass plugin settings (Tailwind config path, prefix entry point, …). |
|
|
104
112
|
|
|
105
113
|
```ts
|
|
106
114
|
defineConfig({
|
|
107
115
|
tailwindcss: {
|
|
108
116
|
preset: 'recommended',
|
|
109
|
-
// Tailwind v4
|
|
117
|
+
// Tailwind v4 - path to the CSS that does `@import "tailwindcss" prefix(maz)`.
|
|
110
118
|
entryPoint: 'src/main.css',
|
|
111
|
-
// Tailwind v3 instead
|
|
119
|
+
// Tailwind v3 instead - path to your config file.
|
|
112
120
|
// tailwindConfig: 'tailwind.config.ts',
|
|
113
121
|
// Tailwind v4: detect custom @layer components classes (cards, btns, …).
|
|
114
122
|
detectComponentClasses: true,
|
|
115
123
|
// Monorepo: directory used to resolve `tailwindcss` and the config file.
|
|
116
124
|
cwd: 'apps/web',
|
|
117
|
-
// Custom `maz/tailwind-no-arbitrary-px` rule
|
|
125
|
+
// Custom `maz/tailwind-no-arbitrary-px` rule - see "Custom rules" below.
|
|
118
126
|
noArbitraryPx: true,
|
|
119
127
|
},
|
|
120
128
|
})
|
|
121
129
|
```
|
|
122
130
|
|
|
123
|
-
|
|
124
|
-
|
|
131
|
+
**Warning: Plugin needs to know your Tailwind setup**
|
|
132
|
+
|
|
133
|
+
The plugin's correctness rules (`no-unknown-classes`, `no-conflicting-classes`) auto-resolve your Tailwind installation. Without `entryPoint` (v4) or `tailwindConfig` (v3), the plugin falls back to the **default Tailwind config** and won't know about your prefix, custom utilities, or theme tokens - which produces a flood of false positives in non-vanilla setups.
|
|
125
134
|
|
|
126
135
|
If you customize Tailwind in any meaningful way (prefix, extend theme, custom utilities), set `entryPoint` or `tailwindConfig` explicitly. If you hit false positives anyway, downgrade to `'stylistic'` (formatting only) or disable individual rules:
|
|
127
136
|
|
|
@@ -133,21 +142,20 @@ defineConfig({
|
|
|
133
142
|
},
|
|
134
143
|
})
|
|
135
144
|
```
|
|
136
|
-
:::
|
|
137
145
|
|
|
138
146
|
The plugin recognizes the most common class-name utilities out of the box (`clsx`, `cn`, `tw-merge`, `cva`, `tv`, …); see the [plugin docs](https://github.com/schoero/eslint-plugin-better-tailwindcss) for the full list and how to register your own.
|
|
139
147
|
|
|
140
148
|
## Custom rules
|
|
141
149
|
|
|
142
|
-
`@maz-ui/eslint-config` ships its own ESLint plugin under the **`maz/*`** namespace. Rules are grouped by category
|
|
150
|
+
`@maz-ui/eslint-config` ships its own ESLint plugin under the **`maz/*`** namespace. Rules are grouped by category - `maz/tailwind-*` today, with room for `maz/js-*` and others as they get added.
|
|
143
151
|
|
|
144
152
|
### `maz/tailwind-no-arbitrary-px`
|
|
145
153
|
|
|
146
154
|
Forbids `px` units inside Tailwind arbitrary value classes (`w-[16px]`, `m-[-16px]`, `[gap:24px]`, …) and **autofixes** them to `rem` (or `em`) using your project's root font-size. Whitespace inside brackets (e.g. `[up to 100px]`) is left alone, so plain prose is never rewritten by accident.
|
|
147
155
|
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
156
|
+
**Note: Registered only when `tailwindcss` is enabled**
|
|
157
|
+
|
|
158
|
+
The `maz` plugin and the `maz/tailwind-*` rules are only added to the flat-config when `tailwindcss` is set to anything other than `false`. With `tailwindcss: false` *(default)*, neither the plugin nor the rule appear in the resolved config - keeping the preset zero-cost for non-Tailwind projects. To use the rule without opting into the full Tailwind preset, register `mazPlugin` manually (see Use the plugin directly).
|
|
151
159
|
|
|
152
160
|
When `tailwindcss` is on, the rule is enabled with defaults. You can tune it two ways:
|
|
153
161
|
|
|
@@ -171,9 +179,9 @@ defineConfig({
|
|
|
171
179
|
tailwindcss: {
|
|
172
180
|
preset: 'recommended',
|
|
173
181
|
noArbitraryPx: {
|
|
174
|
-
baseFontSize: 16, // default
|
|
175
|
-
unit: 'rem', // default
|
|
176
|
-
severity: 'error', // default
|
|
182
|
+
baseFontSize: 16, // default - divide px by this to get rem
|
|
183
|
+
unit: 'rem', // default - output unit ('rem' | 'em')
|
|
184
|
+
severity: 'error', // default - 'off' | 'warn' | 'error'
|
|
177
185
|
},
|
|
178
186
|
},
|
|
179
187
|
})
|
|
@@ -224,13 +232,13 @@ export default [{
|
|
|
224
232
|
|
|
225
233
|
## What it includes
|
|
226
234
|
|
|
227
|
-
- **Antfu base**
|
|
228
|
-
- **SonarJS**
|
|
229
|
-
- **Vue rules** (when Vue/Nuxt is detected)
|
|
230
|
-
- **Tailwind plugin** (opt-in)
|
|
231
|
-
- **`maz/*` custom rules**
|
|
232
|
-
- **Markdown**
|
|
233
|
-
- **vueAccessibility** (opt-in)
|
|
235
|
+
- **Antfu base** - TypeScript-aware rules, Stylistic formatting, modern import order.
|
|
236
|
+
- **SonarJS** - code quality and complexity heuristics, with a relaxed set for `*.spec.ts` / `*.test.ts`.
|
|
237
|
+
- **Vue rules** (when Vue/Nuxt is detected) - block-tag order, naming conventions, template a11y.
|
|
238
|
+
- **Tailwind plugin** (opt-in) - class ordering, duplicate / deprecated / unknown / conflicting class detection - see Tailwind support.
|
|
239
|
+
- **`maz/*` custom rules** - namespaced ESLint plugin shipped with the preset; see Custom rules.
|
|
240
|
+
- **Markdown** - prose linting baseline.
|
|
241
|
+
- **vueAccessibility** (opt-in) - `eslint-plugin-vuejs-accessibility` rules with the AudioWorklet globals fix.
|
|
234
242
|
|
|
235
243
|
## Advanced
|
|
236
244
|
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "IconSet"
|
|
3
|
+
description: ""
|
|
4
|
+
package: "@maz-ui/icons"
|
|
5
|
+
url: "https://maz-ui.com/ecosystem/icons/icon-set"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# IconSet
|
|
9
|
+
|
|
10
|
+
>
|
|
11
|
+
|
|
12
|
+
- Package: `@maz-ui/icons`
|
|
13
|
+
- Web: https://maz-ui.com/ecosystem/icons/icon-set
|
|
14
|
+
|
|
15
|
+
The library includes **860+ icons**
|
|
16
|
+
|
|
17
|
+
## Icon Naming Convention
|
|
18
|
+
|
|
19
|
+
All icons follow a consistent naming pattern:
|
|
20
|
+
|
|
21
|
+
- Static Vue components: `Maz` + PascalCase (e.g., `MazUserCircle`)
|
|
22
|
+
- Lazy Vue components: `LazyMaz` + PascalCase (e.g., `LazyMazUserCircle`)
|
|
23
|
+
- SVG files: kebab-case (e.g., `user-circle.svg`)
|
|
24
|
+
|
|
25
|
+
## Find your icon
|
|
@@ -1,4 +1,17 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
title: "Icons"
|
|
3
|
+
description: ""
|
|
4
|
+
package: "@maz-ui/icons"
|
|
5
|
+
url: "https://maz-ui.com/ecosystem/icons/"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Icons
|
|
9
|
+
|
|
10
|
+
>
|
|
11
|
+
|
|
12
|
+
- Package: `@maz-ui/icons`
|
|
13
|
+
- Import: `import { MazCheck } from '@maz-ui/icons/static/MazCheck'` or `import { MazIconsResolver } from '@maz-ui/icons/resolvers'`
|
|
14
|
+
- Web: https://maz-ui.com/ecosystem/icons/
|
|
2
15
|
|
|
3
16
|
A comprehensive collection of **860 beautiful SVG icons** ready for use in your Vue.js applications. Built with performance and flexibility in mind, these icons are optimized for modern web development.
|
|
4
17
|
|
|
@@ -18,8 +31,6 @@ A comprehensive collection of **860 beautiful SVG icons** ready for use in your
|
|
|
18
31
|
|
|
19
32
|
### Basic Installation
|
|
20
33
|
|
|
21
|
-
::: code-group
|
|
22
|
-
|
|
23
34
|
```bash [npm]
|
|
24
35
|
npm install @maz-ui/icons
|
|
25
36
|
```
|
|
@@ -32,8 +43,6 @@ yarn add @maz-ui/icons
|
|
|
32
43
|
pnpm add @maz-ui/icons
|
|
33
44
|
```
|
|
34
45
|
|
|
35
|
-
:::
|
|
36
|
-
|
|
37
46
|
### With Auto-import Support (Recommended)
|
|
38
47
|
|
|
39
48
|
For the best developer experience with auto-imports:
|
|
@@ -56,8 +65,8 @@ npm install @maz-ui/icons vite-svg-loader
|
|
|
56
65
|
|
|
57
66
|
Import and use icons as Vue components. Icons are available in two variants:
|
|
58
67
|
|
|
59
|
-
- **Static** (default)
|
|
60
|
-
- **Lazy**
|
|
68
|
+
- **Static** (default) - eagerly loaded, rendered immediately with no async overhead
|
|
69
|
+
- **Lazy** - loaded on demand via `defineAsyncComponent`, ideal for optimizing bundle size
|
|
61
70
|
|
|
62
71
|
#### Static Icons (default)
|
|
63
72
|
|
|
@@ -97,7 +106,8 @@ import { MazUser } from '@maz-ui/icons/lazy/MazUser'
|
|
|
97
106
|
</template>
|
|
98
107
|
```
|
|
99
108
|
|
|
100
|
-
|
|
109
|
+
**Tip: Sub-path imports for better tree-shaking**
|
|
110
|
+
|
|
101
111
|
You can also import individual icons directly for optimal tree-shaking:
|
|
102
112
|
|
|
103
113
|
```ts
|
|
@@ -107,15 +117,13 @@ import { MazCheck } from '@maz-ui/icons/static/MazCheck'
|
|
|
107
117
|
// Lazy Vue component (individual file)
|
|
108
118
|
import { MazCheck } from '@maz-ui/icons/lazy/MazCheck'
|
|
109
119
|
|
|
110
|
-
// Raw SVG string (individual file)
|
|
120
|
+
// Raw SVG string (individual file) - new in v5
|
|
111
121
|
import { MazCheck } from '@maz-ui/icons/raw/MazCheck'
|
|
112
122
|
```
|
|
113
123
|
|
|
114
|
-
:::
|
|
115
|
-
|
|
116
124
|
#### Raw SVG strings (new in v5)
|
|
117
125
|
|
|
118
|
-
Each icon is also exported as a **raw SVG string** under the `raw/` subpath. Pass it to `<MazIcon :icon="…" />` to inline the SVG without paying the cost of a Vue component or an async chunk
|
|
126
|
+
Each icon is also exported as a **raw SVG string** under the `raw/` subpath. Pass it to `<MazIcon :icon="…" />` to inline the SVG without paying the cost of a Vue component or an async chunk - useful for icons rendered hundreds of times on a page (lists, tables) or for one-off `innerHTML` use.
|
|
119
127
|
|
|
120
128
|
```vue
|
|
121
129
|
<script setup lang="ts">
|
|
@@ -149,12 +157,10 @@ Never worry about imports again with automatic component resolution.
|
|
|
149
157
|
|
|
150
158
|
#### Setup unplugin-vue-components
|
|
151
159
|
|
|
152
|
-
|
|
160
|
+
**Warning: Troubleshooting**
|
|
153
161
|
|
|
154
162
|
If your are already using [`MazComponentsResolver`](../../guide/resolvers.md#mazcomponentsresolver), you should place `MazIconsResolver` before `MazComponentsResolver` in the `resolvers` array.
|
|
155
163
|
|
|
156
|
-
:::
|
|
157
|
-
|
|
158
164
|
`vite.config.ts`
|
|
159
165
|
|
|
160
166
|
```ts
|
|
@@ -187,7 +193,7 @@ export default defineConfig({
|
|
|
187
193
|
<MazUser class="nav-icon" />
|
|
188
194
|
<MazSettings class="nav-icon" />
|
|
189
195
|
|
|
190
|
-
<!-- Lazy icons (async loaded)
|
|
196
|
+
<!-- Lazy icons (async loaded) - prefix with "Lazy" -->
|
|
191
197
|
<LazyMazLogout class="nav-icon" />
|
|
192
198
|
</div>
|
|
193
199
|
</template>
|