@mdi/angular-material
v7.2.96
Published
Distribution and Build for Angular Material MDI
Downloads
156,522
Readme
Note: Please use the main MaterialDesign repo to report issues. This repo is for distribution of the Angular Material files only.
Angular Material - Material Design Icons
Angular Material distribution for the Material Design Icons.
Installation
Install @mdi/angular-material and @angular/cdk from npm:
npm install @mdi/angular-material @angular/cdkUsage
This bundle is usable with AngularJS Material/Angular Material and to facilitate usage, it's recommended to use
copy-webpack-plugin.
Add the following plugin configuration in the Webpack configuration:
new CopyWebpackPlugin([
{ from: 'node_modules/@mdi/angular-material/mdi.svg',
to: 'assets/mdi.svg'
}
]);Or if you're using the Angular CLI, make sure to include mdi.svg in your assets
folder under the Angular workspace configuration file
in the assets array, located in the build configuration for your project:
```json Angular workspace configuration file
{
// ...
"architect": {
"build": {
"options": {
"assets": [
{ "glob": "**/*", "input": "./assets/", "output": "./assets/" },
{ "glob": "favicon.ico", "input": "./", "output": "./" },
{ "glob": "mdi.svg", "input": "./node_modules/@mdi/angular-material", "output": "./assets" }
]
}
}
}
// ...
}
```Note that the input directory is dependent on the workspace root which can be found
by looking at your desired project's root property. (For more information, visit the
Angular documentation on project configuration options.)
Additionally, see the Angular documentation on assets configuration for more information.
Note: Documentation for Angular CLI versions 1.x.x (around Angular v5) has been dropped as Angular v5 is no longer supported.
Angular Material
The mdi.svg contains all the icons provided on the site. It can be used inline with
MatIconRegistry.
- In your app's main module (typically
app.module.ts), importMatIconModuleandMatIconRegistryfrom@angular/material/icon:
import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { NgModule } from '@angular/core';
import { MatIconRegistry, MatIconModule } from '@angular/material/icon';
import { DomSanitizer } from '@angular/platform-browser';
import { HttpClientModule } from '@angular/common/http';
// ...
@NgModule({
imports: [
BrowserModule,
BrowserAnimationsModule,
// Required by the Angular Material icon module
HttpClientModule,
// ...
MatIconModule
]
})
export class AppModule {
constructor(matIconRegistry: MatIconRegistry, domSanitizer: DomSanitizer){
matIconRegistry.addSvgIconSet(
domSanitizer.bypassSecurityTrustResourceUrl('./assets/mdi.svg')
);
}
}- The SVG icons can then be used with
MatIcon'ssvgIconattribute as shown below:
<mat-icon svgIcon="<name of icon>"></mat-icon>For more information about SVG icons, check out the documentation.
AngularJS Material
The mdi.svg contains all the icons provided on the site. Use inline with $mdIconProvider.
var app = angular.module('myApp', ['ngMaterial']);
app.config(function($mdIconProvider) {
$mdIconProvider
.defaultIconSet('assets/mdi.svg')
});
Usage
<md-icon md-svg-icon="android"></md-icon>
<md-button aria-label="Android" class="md-icon-button">
<md-icon md-svg-icon="android"></md-icon>
</md-button>
Related Packages
- SVG: MaterialDesign-SVG
- Webfont: MaterialDesign-Webfont
