Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
vue-switches
Advanced tools
A Vue.js component for simple switches with theme support for bulma, bootstrap and custom themes. See a live demo here.
npm install vue-switches --save
import Switches from 'vue-switches';
new Vue({
components: {
Switches
},
data () {
return {
enabled: false
}
}
};
<switches v-model="enabled"></switches>
Prop | Description |
---|---|
label | A static label to always display whether on or off. |
text-enabled | The text that displays when enabled. |
text-disabled | The text that displays when disabled. |
theme | Which theme to use. |
color | Which color to use. |
type-bold | Bigger style. |
emit-on-mount | By default, a "changed" event is emitted when the component mounts. To disable this, set this to false. |
Out of the box vue-switches
supports a default, bulma, bootstrap themes. To use them you can do as follows:
Providing no theme
or color
props would render a switch of default theme and color.
<switches v-model="enabled"></switches>
Available colors for default
are default
, red
, blue
, green
, and yellow
, and orange
.
<switches v-model="enabled" theme="bulma" color="default"></switches>
Available colors for Bulma are default
, primary
, red
, blue
, green
, and yellow
.
In addition support for bootstrap can be used as follows:
<switches v-model="enabled" theme="bootstrap" color="danger"></switches>
Available colors for bootstrap are default
, primary
, success
, info
, warning
, and danger
.
Out of the box vue-switches
has two styles: default
and bold
. By default the switch is not bold. To enable the bold style you can set type-bold
to true like this:
<switches v-model="enabled" type-bold="true"></switches>
A demo of all themes and styles can be seen here.
Vue Switcher has a base class of .vue-switcher
. For an unchecked switch a class of .vue-switcher--unchecked
is applied. Lastly, for the theme
and color
props a class is also applied. So for a bulma
theme of color primary
the classes .vue-switcher-theme--bulma
and .vue-switcher-color--primary
.
This:
<switches v-model="enabled" type-bold="false" theme="custom" color="blue"></switches>
Would render the classes .vue-switcher-theme--custom
and .vue-switcher-color--blue
. Sass for this theme could look like:
.vue-switcher-theme--custom {
&.vue-switcher-color--blue {
div {
background-color: lighten(blue, 10%);
&:after {
// for the circle on the switch
background-color: darken(blue, 5%);
}
}
&.vue-switcher--unchecked {
div {
background-color: lighten(blue, 30%);
&:after {
background-color: lighten(blue, 10%);
}
}
}
}
}
For better understanding, below is how the class object is rendered.
classObject () {
const {color, enabled, theme, typeBold, disabled} = this;
return {
'vue-switcher': true,
['vue-switcher--unchecked']: !enabled,
['vue-switcher--disabled']: disabled,
['vue-switcher--bold']: typeBold,
['vue-switcher--bold--unchecked']: typeBold && !enabled,
[`vue-switcher-theme--${theme}`]: color,
[`vue-switcher-color--${color}`]: color,
};
}
FAQs
An on/off switch component for Vue.js with theme support.
We found that vue-switches demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.