
Product
Announcing Socket Fix 2.0
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
paw-vue-icons
Advanced tools
This library is a collection of Vue single-file components to render Material Design Icons, sourced from the MaterialDesign project. It also includes some CSS that helps make the scaling of the icons a little easier.
Install the package
yarn add paw-vue-icons
OR
npm i paw-vue-icons
Import the icon, and declare it as a local component:
import MenuIcon from 'paw-vue-icons/dist/Menu.vue';
components: {
MenuIcon;
}
OR
Declare it as a global component:
import MenuIcon from 'paw-vue-icons/dist/Menu.vue';
Vue.component('menu-icon', MenuIcon);
Note Icon files are pascal cased, e.g.
CheckboxMarkedCircle.vue
, and their default name hasIcon
appended e.g.CheckboxMarkedCircleIcon
.
Then use it in your template code!
<menu-icon />
Optional Add the included stylesheet. This few lines of CSS will cause
the icons to scale with any surrounding text, which can be helpful when you
primarily style with CSS. Note that if you intend to handle sizing with the
size
prop, you probably don't want to use this as it may conflict.
import 'paw-vue-icons/styles.css';
title
- This changes the hover tooltip as well as the title shown to screen
readers. By default, those values are a "human readable" conversion of the
icon names; for example chevron-down-icon
becomes "Chevron down icon".
Example:
<android-icon title="this is an icon!" />
decorative
- This denotes whether an icon is purely decorative, or has some
meaninfgul value. If an icon is decorative, it will be hidden from screen
readers. By default, this is false
.
Example:
<android-icon decorative />
fillColor
- This property allows you to set the fill colour of an icon via
JS instead of requiring CSS changes. Note that any CSS values, such as
fill: currentColor;
provided by the optional CSS file, may override colours
set with this prop.
Example:
<android-icon fillColor="#FF0000" />
size
- This property overrides the width
and height
attributes on the
SVG. The default is 24
.
Example:
<android-icon :size="48" />
A list of the icons can be found at the
Material Design Icons website. The icons packaged here are pascal cased
versions of the names displayed on the website, to match the
Vue Style Guide. For example, the icon
named ultra-high-definition
would be imported as
"paw-vue-icons/UltraHighDefinition.vue"
.
Use resolve
in your Webpack config to clean up the imports:
resolve: {
alias : {
"icons": path.resolve(__dirname, "node_modules/paw-vue-icons")
},
extensions: [
".vue"
]
}
This will give you much shorter and more readable imports, like
import Android from "icons/Android"
, rather than
import Android from "paw-vue-icons/Android.vue"
. Much better!
If you want custom sizing, add your own css to adjust the height and width of the icons
.material-design-icon.icon-2x {
height: 2em;
width: 2em;
}
.material-design-icon.icon-2x > .material-design-icon__svg {
height: 2em;
width: 2em;
}
Then add your size class
<fullscreen-icon class="icon-2x" />
While I recommend using CSS for styling, you can also pass in a size
prop,
detailed in the Props
section above.
FAQs
A collection of material design icons as Vue single file components
The npm package paw-vue-icons receives a total of 134 weekly downloads. As such, paw-vue-icons popularity was classified as not popular.
We found that paw-vue-icons 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.
Product
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
Security News
Socket CEO Feross Aboukhadijeh joins Risky Business Weekly to unpack recent npm phishing attacks, their limited impact, and the risks if attackers get smarter.
Product
Socket’s new Tier 1 Reachability filters out up to 80% of irrelevant CVEs, so security teams can focus on the vulnerabilities that matter.