Skip to content

MazBadge ​

MazBadge is a standalone component to show short text in colored container

Before use it, you should install the MazUi plugin in your project, follow instructions in Getting Started

Basic usage ​

Badge
vue
<script lang="ts" setup>
  import MazBadge from 'maz-ui/components/MazBadge'
</script>

<template>
  <MazBadge>
    Badge
  </MazBadge>
</template>

Options ​

See all options props here

Colors ​


primarysecondaryinfosuccesswarningdestructivecontrastaccentsurfacetransparent
vue
<script lang="ts" setup>
  import MazBadge from 'maz-ui/components/MazBadge'

  const colors = [
    'primary',
    'secondary',
    'info',
    'success',
    'warning',
    'destructive',
    'contrast',
    'accent',
    'surface',
    'transparent',
  ]
</script>

<template>
  <MazBadge v-for="color in color" :key="color" :color="color">
    {{ color }}
  </MazBadge>
</template>

Outlined ​


primarysecondaryinfosuccesswarningdestructivecontrastaccentsurfacetransparent
vue
<script lang="ts" setup>
import MazBadge from 'maz-ui/components/MazBadge'

const colors = [
  'primary',
  'secondary',
  'info',
  'success',
  'warning',
  'destructive',
  'contrast',
  'accent',
  'surface',
  'transparent',
]
</script>

<template>
  <MazBadge v-for="color in color" :key="color" :color="color" outlined>
    {{ color }}
  </MazBadge>
</template>

Pastel ​


primarysecondaryinfosuccesswarningdestructivecontrastaccentsurfacetransparent
vue
<script lang="ts" setup>
  import MazBadge from 'maz-ui/components/MazBadge'

  const colors = [
    'primary',
    'secondary',
    'info',
    'success',
    'warning',
    'destructive',
    'contrast',
    'accent',
    'surface',
    'transparent',
  ]
</script>

<template>
  <MazBadge v-for="color in color" :key="color" :color="color" pastel>
    {{ color }}
  </MazBadge>
</template>

Size ​

The size prop accepts one of the standardized MazSize values ('mini' | 'xs' | 'sm' | 'md' | 'lg' | 'xl'). The default is 'md'. Padding, line-height and dimensions all scale relative to the chosen font-size, so a single keyword controls the whole badge footprint.


minixssmmdlgxl
vue
<script lang="ts" setup>
import MazBadge from 'maz-ui/components/MazBadge'

const sizes = ['mini', 'xs', 'sm', 'md', 'lg', 'xl']
</script>

<template>
  <MazBadge v-for="size in sizes" :key="size" :size="size">
    {{ size }}
  </MazBadge>
</template>

Rounded sizes ​


nonesmmdlgxlfull
vue
<script lang="ts" setup>
import MazBadge from 'maz-ui/components/MazBadge'

const roundedSize = ['none', 'sm', 'md', 'lg', 'xl', 'full']
</script>

<template>
  <MazBadge v-for="size in roundedSize" :key="size" :rounded-size="size">
    {{ size }}
  </MazBadge>
</template>

Props ​

NameDescriptionTypeRequiredDefaultPossible values
colorColor of the badgeMazBadgeColorNo"primary"'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'destructive' | 'contrast' | 'surface'
sizeSize of the badge - drives font-size; padding, line-height and dimensions scale relative to it via em units."xs" | "sm" | "md" | "lg" | "xl" | "mini"Nomd'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'mini'
nowrapWill not wrap the textbooleanNotrue-
outlinedWill add a border to the badgebooleanNofalse-
pastelWill add a pastel style to the badgebooleanNofalse-
rounded-sizeSize radius of the component's borderMazBadgeRoundedSizeNomd'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full'

Slots ​

NameDescriptionBindings
defaultBadge content-