@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.
- 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 +16 -0
- package/dist/index.d.mts +345 -0
- package/dist/index.d.ts +345 -0
- package/dist/index.mjs +16 -0
- package/dist/shared/mcp.DseFuKdl.mjs +2968 -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 +78 -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 +27 -189
- package/docs/{src/components → components}/maz-btn.md +62 -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 +107 -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 +48 -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 +21 -15
- 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 +50 -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 +239 -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 +507 -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 +59 -0
- package/package.json +86 -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
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "MazCircularProgressBar"
|
|
3
|
+
description: "MazCircularProgressBar displays a percentage or a progress in an animated ring, with a configurable size, color, duration and content in the center"
|
|
4
|
+
package: "maz-ui"
|
|
5
|
+
url: "https://maz-ui.com/components/maz-circular-progress-bar"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# MazCircularProgressBar
|
|
9
|
+
|
|
10
|
+
> MazCircularProgressBar displays a percentage or a progress in an animated ring, with a configurable size, color, duration and content in the center
|
|
11
|
+
|
|
12
|
+
- Package: `maz-ui`
|
|
13
|
+
- Import: `import MazCircularProgressBar from 'maz-ui/components/MazCircularProgressBar'`
|
|
14
|
+
- Nuxt: auto-imported by `@maz-ui/nuxt`, no import needed in a Nuxt app
|
|
15
|
+
- Web: https://maz-ui.com/components/maz-circular-progress-bar
|
|
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
|
+
<script lang="ts" setup>
|
|
23
|
+
import MazCircularProgressBar from 'maz-ui/components/MazCircularProgressBar'
|
|
24
|
+
</script>
|
|
25
|
+
|
|
26
|
+
<template>
|
|
27
|
+
<MazCircularProgressBar :percentage="75" suffix="%" />
|
|
28
|
+
</template>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Size
|
|
32
|
+
|
|
33
|
+
The size of the component can be changed by passing the `size` prop. The value could be a string in px, em or rem.
|
|
34
|
+
|
|
35
|
+
```vue
|
|
36
|
+
<MazCircularProgressBar :percentage="75" suffix="%" size="3em" />
|
|
37
|
+
|
|
38
|
+
<MazCircularProgressBar :percentage="75" suffix="%" size="100px" />
|
|
39
|
+
|
|
40
|
+
<MazCircularProgressBar :percentage="75" suffix="%" size="10rem" />
|
|
41
|
+
|
|
42
|
+
<MazCircularProgressBar :percentage="75" suffix="%" size="15rem" />
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Duration
|
|
46
|
+
|
|
47
|
+
The duration of the animation can be changed by passing the `duration` prop. The value could be a number in milliseconds.
|
|
48
|
+
|
|
49
|
+
```vue
|
|
50
|
+
<MazCircularProgressBar :percentage="75" :duration="5000" />
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Color
|
|
54
|
+
|
|
55
|
+
```vue
|
|
56
|
+
<MazCircularProgressBar :percentage="75" :duration="5000" />
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Auto-color
|
|
60
|
+
|
|
61
|
+
The color of the component is automatically according to the percentage. The color will be green if the percentage is egal to 100%, orange if below 100%, and red if below 50%.
|
|
62
|
+
|
|
63
|
+
```vue
|
|
64
|
+
<MazCircularProgressBar :percentage="0" auto-color size="9rem" />
|
|
65
|
+
|
|
66
|
+
<MazCircularProgressBar :percentage="25" auto-color size="9rem" />
|
|
67
|
+
|
|
68
|
+
<MazCircularProgressBar :percentage="50" auto-color size="9rem" />
|
|
69
|
+
|
|
70
|
+
<MazCircularProgressBar :percentage="100" auto-color size="9rem" />
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Slot
|
|
74
|
+
|
|
75
|
+
Replace the percentage value by a custom slot.
|
|
76
|
+
|
|
77
|
+
Obviously, the "counter animation" will not work in this case.
|
|
78
|
+
|
|
79
|
+
```vue
|
|
80
|
+
<MazCircularProgressBar :percentage="75" :duration="5000" />
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## MazCircularProgressBar API
|
|
84
|
+
|
|
85
|
+
`import MazCircularProgressBar from 'maz-ui/components/MazCircularProgressBar'`
|
|
86
|
+
|
|
87
|
+
### Props
|
|
88
|
+
|
|
89
|
+
- `percentage` (`number`, required): The percentage value of the progress bar.
|
|
90
|
+
- `size` (`` `${number}rem` | `${number}px` | `${number}em` | `${number}vw` | `${number}vh` | `${number}vmin` | `${number}vmax` | `${number}%` | `${number}ch` | `${number}cm` | `${number}mm` | `${number}in` | `${number}ex` | `${number}pc` | `${number... ``, default: `"10em"`): The size of the progress bar.
|
|
91
|
+
- `duration` (`number`, default: `1000`): Duration of the animation in milliseconds.
|
|
92
|
+
- `delay` (`number`, default: `100`): Delay before the animation starts in milliseconds.
|
|
93
|
+
- `color` (`"primary" | "secondary" | "accent" | "info" | "success" | "warning" | "destructive" | "contrast" | "transparent"`): The color of the progress bar.
|
|
94
|
+
- `auto-color` (`boolean`, default: `false`): Auto color based on the count (destructive, warning, success).
|
|
95
|
+
- `prefix` (`string`): Suffix to display next to the number.
|
|
96
|
+
- `suffix` (`string`): Suffix to display next to the number.
|
|
97
|
+
- `stroke-linecap` (`"square" | "butt" | "round" | "inherit"`, default: `"round"`): The stroke-linecap style.
|
|
98
|
+
- `stroke-width` (`Numberish`, default: `6`): The stroke width.
|
|
99
|
+
- `stroke` (`string`): The stroke color Use this prop to override the gradient color You can use a color name or a color code.
|
|
100
|
+
- `success-percentage` (`number`, default: `100`): The percentage value of the success level - The progress circle will be filled with the success color when the percentage is greater than or equal to this value.
|
|
101
|
+
- `warning-percentage` (`number`, default: `75`): The percentage value of the warning level - The progress circle will be filled with the warning color when the percentage is greater than or equal to this value.
|
|
102
|
+
- `danger-percentage` (`number`, default: `50`): The percentage value of the danger level - The progress circle will be filled with the danger color when the percentage is greater than or equal to this value.
|
|
103
|
+
- `once` (`boolean`, default: `true`): Play the animation only once.
|
|
104
|
+
|
|
105
|
+
### Slots
|
|
106
|
+
|
|
107
|
+
- `#default`: Default slot - Replace the percaentage value
|
|
108
|
+
- `#prefix`: Prefix slot - Add a prefix next to the number (e.g: "$")
|
|
109
|
+
- `#suffix`: Suffix slot - Add a suffix next to the number (e.g: "%")
|
|
@@ -1,20 +1,25 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: MazCodeHighlight
|
|
3
|
-
description: MazCodeHighlight displays source code with syntax highlighting powered by shiki. It auto-detects dark/light mode, ships with a copy-to-clipboard button, a language badge, and supports lazy loading.
|
|
2
|
+
title: "MazCodeHighlight"
|
|
3
|
+
description: "MazCodeHighlight displays source code with syntax highlighting powered by shiki. It auto-detects dark/light mode, ships with a copy-to-clipboard button, a language badge, and supports lazy loading."
|
|
4
|
+
package: "maz-ui"
|
|
5
|
+
url: "https://maz-ui.com/components/maz-code-highlight"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
|
-
#
|
|
8
|
+
# MazCodeHighlight
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
> MazCodeHighlight displays source code with syntax highlighting powered by shiki. It auto-detects dark/light mode, ships with a copy-to-clipboard button, a language badge, and supports lazy loading.
|
|
9
11
|
|
|
10
|
-
|
|
12
|
+
- Package: `maz-ui`
|
|
13
|
+
- Import: `import MazCodeHighlight from 'maz-ui/components/MazCodeHighlight'`
|
|
14
|
+
- Nuxt: auto-imported by `@maz-ui/nuxt`, no import needed in a Nuxt app
|
|
15
|
+
- Web: https://maz-ui.com/components/maz-code-highlight
|
|
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
|
## Installation requirement
|
|
13
20
|
|
|
14
21
|
Install [`shiki`](https://shiki.style) in your project to enable highlighting:
|
|
15
22
|
|
|
16
|
-
::: code-group
|
|
17
|
-
|
|
18
23
|
```bash [pnpm]
|
|
19
24
|
pnpm add shiki
|
|
20
25
|
```
|
|
@@ -27,17 +32,10 @@ npm install shiki
|
|
|
27
32
|
yarn add shiki
|
|
28
33
|
```
|
|
29
34
|
|
|
30
|
-
:::
|
|
31
|
-
|
|
32
35
|
If `shiki` is not installed, the component falls back to a plain `<pre><code>` block.
|
|
33
36
|
|
|
34
37
|
## Basic usage
|
|
35
38
|
|
|
36
|
-
<ComponentDemo>
|
|
37
|
-
<MazCodeHighlight code="const greeting = 'Hello, maz-ui!'" language="ts" />
|
|
38
|
-
|
|
39
|
-
<template #code>
|
|
40
|
-
|
|
41
39
|
```vue
|
|
42
40
|
<template>
|
|
43
41
|
<MazCodeHighlight code="const greeting = 'Hello, maz-ui!'" language="ts" />
|
|
@@ -48,18 +46,10 @@ If `shiki` is not installed, the component falls back to a plain `<pre><code>` b
|
|
|
48
46
|
</script>
|
|
49
47
|
```
|
|
50
48
|
|
|
51
|
-
</template>
|
|
52
|
-
</ComponentDemo>
|
|
53
|
-
|
|
54
49
|
## With slot
|
|
55
50
|
|
|
56
51
|
The default slot text is used as source code when the `code` prop is not provided. This is useful for plain text blocks.
|
|
57
52
|
|
|
58
|
-
<ComponentDemo>
|
|
59
|
-
<MazCodeHighlight language="bash">npm install maz-ui</MazCodeHighlight>
|
|
60
|
-
|
|
61
|
-
<template #code>
|
|
62
|
-
|
|
63
53
|
```vue
|
|
64
54
|
<template>
|
|
65
55
|
<MazCodeHighlight language="bash">npm install maz-ui</MazCodeHighlight>
|
|
@@ -70,18 +60,10 @@ The default slot text is used as source code when the `code` prop is not provide
|
|
|
70
60
|
</script>
|
|
71
61
|
```
|
|
72
62
|
|
|
73
|
-
</template>
|
|
74
|
-
</ComponentDemo>
|
|
75
|
-
|
|
76
63
|
## Languages
|
|
77
64
|
|
|
78
65
|
Pass any valid [shiki language identifier](https://shiki.style/languages) to the `language` prop. The chosen language is also displayed as a small badge in the top-right corner (the badge fades out on hover when the copy button appears).
|
|
79
66
|
|
|
80
|
-
<ComponentDemo>
|
|
81
|
-
<MazCodeHighlight language="vue" :code="vueExample" />
|
|
82
|
-
|
|
83
|
-
<template #code>
|
|
84
|
-
|
|
85
67
|
```vue
|
|
86
68
|
<template>
|
|
87
69
|
<MazCodeHighlight language="vue" :code="vueExample" />
|
|
@@ -101,18 +83,10 @@ Pass any valid [shiki language identifier](https://shiki.style/languages) to the
|
|
|
101
83
|
</script>
|
|
102
84
|
```
|
|
103
85
|
|
|
104
|
-
</template>
|
|
105
|
-
</ComponentDemo>
|
|
106
|
-
|
|
107
86
|
## Custom theme
|
|
108
87
|
|
|
109
88
|
Override the auto-detected theme with any [shiki built-in theme](https://shiki.style/themes).
|
|
110
89
|
|
|
111
|
-
<ComponentDemo>
|
|
112
|
-
<MazCodeHighlight code="console.log('dracula theme')" language="js" theme="dracula" />
|
|
113
|
-
|
|
114
|
-
<template #code>
|
|
115
|
-
|
|
116
90
|
```vue
|
|
117
91
|
<template>
|
|
118
92
|
<MazCodeHighlight code="console.log('dracula theme')" language="js" theme="dracula" />
|
|
@@ -123,9 +97,6 @@ Override the auto-detected theme with any [shiki built-in theme](https://shiki.s
|
|
|
123
97
|
</script>
|
|
124
98
|
```
|
|
125
99
|
|
|
126
|
-
</template>
|
|
127
|
-
</ComponentDemo>
|
|
128
|
-
|
|
129
100
|
## Copy to clipboard
|
|
130
101
|
|
|
131
102
|
A copy button is displayed in the top-right corner on hover (or when focused via keyboard). Clicking it writes the resolved code to the clipboard and shows a check icon for ~1.5s.
|
|
@@ -134,28 +105,15 @@ A copy button is displayed in the top-right corner on hover (or when focused via
|
|
|
134
105
|
|
|
135
106
|
Set `:copyable="false"` to hide the button entirely.
|
|
136
107
|
|
|
137
|
-
<ComponentDemo>
|
|
138
|
-
<MazCodeHighlight code="const noCopyButton = true" language="ts" :copyable="false" />
|
|
139
|
-
|
|
140
|
-
<template #code>
|
|
141
|
-
|
|
142
108
|
```vue
|
|
143
109
|
<template>
|
|
144
110
|
<MazCodeHighlight code="const noCopyButton = true" language="ts" :copyable="false" />
|
|
145
111
|
</template>
|
|
146
112
|
```
|
|
147
113
|
|
|
148
|
-
</template>
|
|
149
|
-
</ComponentDemo>
|
|
150
|
-
|
|
151
114
|
### Copy a different value than the displayed code
|
|
152
115
|
|
|
153
|
-
Use `copyValue` when the displayed source differs from what should be copied
|
|
154
|
-
|
|
155
|
-
<ComponentDemo>
|
|
156
|
-
<MazCodeHighlight code="$ pnpm add maz-ui" copy-value="pnpm add maz-ui" language="bash" />
|
|
157
|
-
|
|
158
|
-
<template #code>
|
|
116
|
+
Use `copyValue` when the displayed source differs from what should be copied - for example to strip a leading `$` prompt when rendering a shell command. This is the mechanism `MazWindowMockup` uses internally to keep the terminal prompt out of the clipboard.
|
|
159
117
|
|
|
160
118
|
```vue
|
|
161
119
|
<template>
|
|
@@ -167,17 +125,9 @@ Use `copyValue` when the displayed source differs from what should be copied —
|
|
|
167
125
|
</template>
|
|
168
126
|
```
|
|
169
127
|
|
|
170
|
-
</template>
|
|
171
|
-
</ComponentDemo>
|
|
172
|
-
|
|
173
128
|
## Disable rounded corners
|
|
174
129
|
|
|
175
|
-
Set `:rounded="false"` to render the highlighted block with squared corners
|
|
176
|
-
|
|
177
|
-
<ComponentDemo>
|
|
178
|
-
<MazCodeHighlight code="// squared corners" language="ts" :rounded="false" />
|
|
179
|
-
|
|
180
|
-
<template #code>
|
|
130
|
+
Set `:rounded="false"` to render the highlighted block with squared corners - useful when embedding inside another container that already has its own border-radius (e.g. inside `MazWindowMockup`).
|
|
181
131
|
|
|
182
132
|
```vue
|
|
183
133
|
<template>
|
|
@@ -185,22 +135,10 @@ Set `:rounded="false"` to render the highlighted block with squared corners —
|
|
|
185
135
|
</template>
|
|
186
136
|
```
|
|
187
137
|
|
|
188
|
-
</template>
|
|
189
|
-
</ComponentDemo>
|
|
190
|
-
|
|
191
138
|
## Custom translations
|
|
192
139
|
|
|
193
140
|
The copy button's aria-label and tooltip come from the `@maz-ui/translations` package (`codeHighlight.copyToClipboard` / `codeHighlight.copiedToClipboard`). You can override either key per-instance with the `translations` prop without touching the global locale:
|
|
194
141
|
|
|
195
|
-
<ComponentDemo>
|
|
196
|
-
<MazCodeHighlight
|
|
197
|
-
code="const hello = 'world'"
|
|
198
|
-
language="ts"
|
|
199
|
-
:translations="{ copyToClipboard: 'Copier le code', copiedToClipboard: 'Copié !' }"
|
|
200
|
-
/>
|
|
201
|
-
|
|
202
|
-
<template #code>
|
|
203
|
-
|
|
204
142
|
```vue
|
|
205
143
|
<template>
|
|
206
144
|
<MazCodeHighlight
|
|
@@ -214,20 +152,4 @@ The copy button's aria-label and tooltip come from the `@maz-ui/translations` pa
|
|
|
214
152
|
</template>
|
|
215
153
|
```
|
|
216
154
|
|
|
217
|
-
|
|
218
|
-
</ComponentDemo>
|
|
219
|
-
|
|
220
|
-
For app-wide translations, set up the [maz-ui translations plugin](/translations) and the component will pick up your locale automatically.
|
|
221
|
-
|
|
222
|
-
<script lang="ts" setup>
|
|
223
|
-
const vueExample = `<script lang="ts" setup>
|
|
224
|
-
import { ref } from 'vue'
|
|
225
|
-
const count = ref(0)
|
|
226
|
-
<\/script>
|
|
227
|
-
|
|
228
|
-
<template>
|
|
229
|
-
<button @click="count++">Count: {{ count }}</button>
|
|
230
|
-
</template>`
|
|
231
|
-
</script>
|
|
232
|
-
|
|
233
|
-
<!--@include: ./../../.vitepress/generated-docs/maz-code-highlight.doc.md-->
|
|
155
|
+
For app-wide translations, set up the [maz-ui translations plugin](../ecosystem/translations.md) and the component will pick up your locale automatically.
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "MazContainer"
|
|
3
|
+
description: "MazContainer is a lightweight component to wrap content with optional header, border, elevation, and rounded corners - a simpler alternative to MazCard"
|
|
4
|
+
package: "maz-ui"
|
|
5
|
+
url: "https://maz-ui.com/components/maz-container"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# MazContainer
|
|
9
|
+
|
|
10
|
+
> MazContainer is a lightweight component to wrap content with optional header, border, elevation, and rounded corners - a simpler alternative to MazCard
|
|
11
|
+
|
|
12
|
+
- Package: `maz-ui`
|
|
13
|
+
- Import: `import MazContainer from 'maz-ui/components/MazContainer'`
|
|
14
|
+
- Nuxt: auto-imported by `@maz-ui/nuxt`, no import needed in a Nuxt app
|
|
15
|
+
- Web: https://maz-ui.com/components/maz-container
|
|
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
|
+
**Tip:**
|
|
20
|
+
|
|
21
|
+
MazContainer is designed to be a lighter alternative to [MazCard](./maz-card.md). Use it when you need a simple container with basic styling options without the extra features like galleries, collapsible content, or actions.
|
|
22
|
+
|
|
23
|
+
## Basic usage
|
|
24
|
+
|
|
25
|
+
```vue
|
|
26
|
+
<template>
|
|
27
|
+
<MazContainer>
|
|
28
|
+
Lorem Ipsum is simply dummy text of the printing and typesetting industry.
|
|
29
|
+
Lorem Ipsum has been the industry's standard dummy text ever since the 1500s.
|
|
30
|
+
</MazContainer>
|
|
31
|
+
</template>
|
|
32
|
+
|
|
33
|
+
<script lang="ts" setup>
|
|
34
|
+
import MazContainer from 'maz-ui/components/MazContainer'
|
|
35
|
+
</script>
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## With title
|
|
39
|
+
|
|
40
|
+
Add a header with a title using the `title` prop or the `title` slot.
|
|
41
|
+
|
|
42
|
+
```vue
|
|
43
|
+
<template>
|
|
44
|
+
<MazContainer title="Section Title">
|
|
45
|
+
Lorem Ipsum is simply dummy text of the printing and typesetting industry.
|
|
46
|
+
Lorem Ipsum has been the industry's standard dummy text ever since the 1500s.
|
|
47
|
+
</MazContainer>
|
|
48
|
+
</template>
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## With icons
|
|
52
|
+
|
|
53
|
+
Add icons to the header using `start-icon` and `end-icon` props.
|
|
54
|
+
|
|
55
|
+
```vue
|
|
56
|
+
<template>
|
|
57
|
+
<MazContainer title="Settings" start-icon="/cog-6-tooth.svg">
|
|
58
|
+
Configure your application settings here.
|
|
59
|
+
</MazContainer>
|
|
60
|
+
|
|
61
|
+
<MazContainer title="User Profile" start-icon="/user.svg" end-icon="/pencil.svg">
|
|
62
|
+
View and edit your profile information.
|
|
63
|
+
</MazContainer>
|
|
64
|
+
</template>
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
`startIcon` and `endIcon` also accept a full `MazIconProps` object - pass the same shape `<MazIcon>` accepts to override the icon size, add a `<title>` for screen readers, etc.
|
|
68
|
+
|
|
69
|
+
```vue
|
|
70
|
+
<MazContainer
|
|
71
|
+
title="Settings"
|
|
72
|
+
:start-icon="{
|
|
73
|
+
icon: MazCog6Tooth,
|
|
74
|
+
size: 'lg',
|
|
75
|
+
title: 'Open settings',
|
|
76
|
+
}"
|
|
77
|
+
>
|
|
78
|
+
Configure your application settings here.
|
|
79
|
+
</MazContainer>
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Styling options
|
|
83
|
+
|
|
84
|
+
### Elevation
|
|
85
|
+
|
|
86
|
+
Add shadow to make the container stand out.
|
|
87
|
+
|
|
88
|
+
```vue
|
|
89
|
+
<template>
|
|
90
|
+
<MazContainer elevation :bordered="false">
|
|
91
|
+
Container with elevation effect and no border.
|
|
92
|
+
</MazContainer>
|
|
93
|
+
</template>
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### Bordered
|
|
97
|
+
|
|
98
|
+
By default, the container has a border. You can disable it.
|
|
99
|
+
|
|
100
|
+
```vue
|
|
101
|
+
<template>
|
|
102
|
+
<MazContainer title="With border (default)">
|
|
103
|
+
This container has a border.
|
|
104
|
+
</MazContainer>
|
|
105
|
+
|
|
106
|
+
<MazContainer title="Without border" :bordered="false">
|
|
107
|
+
This container has no border.
|
|
108
|
+
</MazContainer>
|
|
109
|
+
</template>
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### Transparent
|
|
113
|
+
|
|
114
|
+
Remove the background color with the `transparent` prop.
|
|
115
|
+
|
|
116
|
+
```vue
|
|
117
|
+
<template>
|
|
118
|
+
<MazContainer title="Transparent container" transparent>
|
|
119
|
+
This container has a transparent background.
|
|
120
|
+
</MazContainer>
|
|
121
|
+
</template>
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Rounded sizes
|
|
125
|
+
|
|
126
|
+
Customize the border radius with the `rounded-size` prop.
|
|
127
|
+
|
|
128
|
+
```vue
|
|
129
|
+
<template>
|
|
130
|
+
<MazContainer v-for="size in roundedSizes" :key="size" :rounded-size="size">
|
|
131
|
+
{{ size }}
|
|
132
|
+
</MazContainer>
|
|
133
|
+
</template>
|
|
134
|
+
|
|
135
|
+
<script lang="ts" setup>
|
|
136
|
+
import MazContainer from 'maz-ui/components/MazContainer'
|
|
137
|
+
|
|
138
|
+
const roundedSizes = ['none', 'sm', 'md', 'lg', 'xl', 'full']
|
|
139
|
+
</script>
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### No padding
|
|
143
|
+
|
|
144
|
+
Remove internal padding with `:padding="false"`.
|
|
145
|
+
|
|
146
|
+
```vue
|
|
147
|
+
<template>
|
|
148
|
+
<MazContainer title="No padding" :padding="false">
|
|
149
|
+
Content without container padding - useful for custom layouts.
|
|
150
|
+
</MazContainer>
|
|
151
|
+
</template>
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
## Full width
|
|
155
|
+
|
|
156
|
+
Use the `block` prop to make the container take full width.
|
|
157
|
+
|
|
158
|
+
```vue
|
|
159
|
+
<template>
|
|
160
|
+
<MazContainer title="Full width container" block>
|
|
161
|
+
This container spans the full width of its parent.
|
|
162
|
+
</MazContainer>
|
|
163
|
+
</template>
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
## Custom header
|
|
167
|
+
|
|
168
|
+
Use the `header` slot to fully customize the header, or use `title`, `icon-start`, and `icon-end` slots for more granular control.
|
|
169
|
+
|
|
170
|
+
```vue
|
|
171
|
+
<template>
|
|
172
|
+
<MazContainer>
|
|
173
|
+
<template #header>
|
|
174
|
+
<div class="flex items-center justify-between w-full px-4 py-3 bg-primary text-primary-foreground">
|
|
175
|
+
<span class="font-semibold">Custom Header</span>
|
|
176
|
+
<MazBadge size="sm" color="white" class="text-primary">
|
|
177
|
+
New
|
|
178
|
+
</MazBadge>
|
|
179
|
+
</div>
|
|
180
|
+
</template>
|
|
181
|
+
Content with a fully customized header.
|
|
182
|
+
</MazContainer>
|
|
183
|
+
</template>
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## Combining options
|
|
187
|
+
|
|
188
|
+
```vue
|
|
189
|
+
<template>
|
|
190
|
+
<MazContainer
|
|
191
|
+
title="Dashboard Overview"
|
|
192
|
+
start-icon="/chart-bar.svg"
|
|
193
|
+
elevation
|
|
194
|
+
:bordered="false"
|
|
195
|
+
rounded-size="xl"
|
|
196
|
+
block
|
|
197
|
+
>
|
|
198
|
+
<div class="flex gap-4 flex-wrap">
|
|
199
|
+
<MazContainer class="flex-1 min-w-[150px]">
|
|
200
|
+
<p class="text-muted text-sm">Users</p>
|
|
201
|
+
<p class="text-2xl font-bold">1,234</p>
|
|
202
|
+
</MazContainer>
|
|
203
|
+
<MazContainer class="flex-1 min-w-[150px]">
|
|
204
|
+
<p class="text-muted text-sm">Revenue</p>
|
|
205
|
+
<p class="text-2xl font-bold">$12.5k</p>
|
|
206
|
+
</MazContainer>
|
|
207
|
+
<MazContainer class="flex-1 min-w-[150px]">
|
|
208
|
+
<p class="text-muted text-sm">Orders</p>
|
|
209
|
+
<p class="text-2xl font-bold">567</p>
|
|
210
|
+
</MazContainer>
|
|
211
|
+
</div>
|
|
212
|
+
</MazContainer>
|
|
213
|
+
</template>
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
## MazContainer API
|
|
217
|
+
|
|
218
|
+
`import MazContainer from 'maz-ui/components/MazContainer'`
|
|
219
|
+
|
|
220
|
+
### Props
|
|
221
|
+
|
|
222
|
+
- `title` (`string`): Title of the card in header.
|
|
223
|
+
- `elevation` (`boolean`, default: `false`): Add elevation to the component.
|
|
224
|
+
- `padding` (`boolean`, default: `true`): Add padding to the content.
|
|
225
|
+
- `bordered` (`boolean`, default: `true`): Add border to the component.
|
|
226
|
+
- `rounded-size` (`MazRoundedSize`, default: `'md'`): Size of the rounded. Values: `'none'`, `'sm'`, `'md'`, `'lg'`, `'xl'`, `'full'` (non exhaustive).
|
|
227
|
+
- `transparent` (`boolean`, default: `false`): Remove background color.
|
|
228
|
+
- `overflow-hidden` (`boolean`, default: `true`): Hide overflow.
|
|
229
|
+
- `start-icon` (`any`): Icon displayed on the inline-start edge of the header (left in LTR, right in RTL). Accepts a bare value (Vue component, raw SVG string, URL or `data:` URI) or a full `MazIconProps` object.
|
|
230
|
+
- `end-icon` (`any`): Icon displayed on the inline-end edge of the header (right in LTR, left in RTL). Accepts a bare value or a full `MazIconProps` object.
|
|
231
|
+
- `icon-size` (`MazIconSize`, default: `"md"`): Size of the icon.
|
|
232
|
+
- `block` (`boolean`, default: `false`): Display the container in full width.
|
|
233
|
+
- `content-class` (`string`): Additional class to add to the content wrapper.
|
|
234
|
+
|
|
235
|
+
### Slots
|
|
236
|
+
|
|
237
|
+
- `#header`: Replace the header
|
|
238
|
+
- `#icon-start`: inline-start edge of the header (left in LTR, right in RTL)
|
|
239
|
+
- `#title`: title
|
|
240
|
+
- `#icon-end`: inline-end edge of the header (right in LTR, left in RTL)
|
|
241
|
+
- `#default`: content of the container
|