nb-button-mechanical

This is a mechanical button component for Vue.js 3+.

Look at the console to see the triggered event

Installation

Yarn
yarn add @vlalg-nimbus/nb-buttons
NPM
npm install @vlalg-nimbus/nb-buttons

Usage

Vue 3
import { createApp } from 'vue'
import App from './App.vue'

import NbButtonsComponents from '@vlalg-nimbus/nb-buttons'
import "@vlalg-nimbus/nb-buttons/dist/style.css";

const app = createApp(App)
app.use(NbButtonsComponents)
app.mount('#app')
Nuxt 3
import NbButtonsComponents from '@vlalg-nimbus/nb-buttons'
import "@vlalg-nimbus/nb-buttons/dist/style.css";

export default defineNuxtPlugin(context => {
  context.vueApp.use(NbButtonsComponents)
})

To use, simply call the component, in this case it will be NbButtonMechanical or nb-button-mechanical.

Mode 1
<template>
  <NbButtonMechanical />
</template>
Mode 2
<template>
  <nb-button-mechanical />
</template>
Mode 3
<template>
  <nb-button-mechanical></nb-button-mechanical>
</template>

Preview & Playground

Select the component you want to edit/test

Loading Sandbox...

Props

Items with an (*) mean they are required

nameValue typeDefaultDescription
nbId (*)StringSets the id attribute to differentiate from other components
displayString'b'Defines the display type. Accepts ib and b.
textColorString'#ffffff'Defines the text color. Accepts Color name and Hex
containerColorString'#ffffff'Defines the container color. Accepts Color name and Hex. The container is where the button is allocated, if for example the background of the parent (container) where the button is located is blue, the value set in this property must be blue for the button border to work.
buttonColorString'#bbbbbb'Defines the button color (background). Accepts Color name and Hex
paddingXNumber1Defines button padding-left and padding-right.
paddingYNumber0.2Defines button padding-top and padding-button.
disabledBooleanfalseDefines if the button is disabled
borderRadiusNumber0.375Defines border-radius.
animationSlowBooleanfalseDefines if the animation when hovering the button should be slow or not
fontFamilyString"'Lato', sans-serif"Defines the font-family
fontSizeString'1.6em'Defines the font-size
fontWeightNumber400Defines the font-weight

Events

nameReturn typeDescription
clickednothingFired when the button is clicked, returns nothing.

Slot

The component has a slot called content where the content that will be manipulated must be passed. It has a default text (Default Text) in case the content does not pass through the slot.

<template>
  <NbButtonMechanical
    :nb-id="'nb-button-mechanical-one'"
    :display="'b'"
  >
    <template #text>
      Default Text
    </template>
  </NbButtonMechanical>
</template>