@meniga/icons
The icons library is to keep all of our custom icon webfonts in one place.
In Bank42 we use the MeniconActions font for action icons (Icon component) and MeniconCategories fonts for category icons (CategoryIcon component)
The Lato font is used in MMS and Merchant Portal
Usage
In order to use a custom font you need to import it to your applications LESS theme, example:
@import '~@meniga/icons/menicon-actions/less/menicon';
@import '~@meniga/icons/menicon-categories/less/menicon-categories';
body, input {
font-family: Arial, Tahoma, Verdana, Helvetica, Sans-Serif;
}
.Icon {
&:before {
font-family: 'MeniconActions';
}
}
.CategoryIcon.Icon {
&:before {
font-family: 'MeniconCategories';
}
}
.Textarea-input {
font-family: Arial, Tahoma, Verdana, Helvetica, Sans-Serif;
}
and then you need to add this file (let's call it fonts.less) as as entry in your custom webpack config, example:
const { resolve } = require('path')
module.exports = function ( { plugins } ) {
return {
entry: {
Fonts: resolve(__dirname, './app/assets/styles/Fonts.less'),
},
...
}
}
For contributors
Add new icons to the MeniconActions and MeniconCategories fonts
If you have a new webfont (e.g. .zip file from our designers) with the new icons you need extract the file and copy the contents over to @meniga/icons.
The contents of MeniconActions should be copied to the menicon-actions folder, and the contents of MeniconCategories should be copied to the menicon-categories folder.
Then you need to open your command line tool in the root of the @meniga/icons repo and run the following script:
npm run generate
This will read the SVG files from the fonts and generate new versions of the LESS files that your application is importing.
Then just commit the updated files to git.
If you want to get more details from the generation, such as knowing about duplicate icons, missing mappings etc, run:
npm run generate-debug