/angular2-mdl-ext

Additional components for angular2-mdl that are not part of material design lite

Primary LanguageTypeScriptMIT LicenseMIT

@angular-mdl/*

Additional components for @angular-mdl/core that are not part of material design lite

The master supports angular 4. If you are looking for an angular 2 compatible version please refer to this branch: https://github.com/mseemann/angular2-mdl-ext/tree/angular2

  • current angular version: 4
  • current angular-mdl version: 4

Build Status Coverage Status Code Climate dependencies Status devDependencies Status

##The components

Name Provided By Description npm documentation status demo
datepicker mseemann a simpel date picker npm version readme experimental demo
expansion-panel abdulqadir93 organise arbitrary content in an expansion panel npm version readme experimental demo
popover tb component for showing arbitrary content in a popover npm version readme experimental demo
select tb component that shows a select box npm version readme experimental demo

Status means:

  • proof of concept (0.0.x) - under development
  • experimental (0.x.x) - under development, but already usable
  • stable (^1.x.x) - basic feature set is complete and tests coverage is good

These components support AOT and TreeShaking!

How to use the components

Install the components via npm. Please checkout the individual readme for each component from the table above.

Starting with version 0.2.0 every component has no css styles imported by default. You need to setup your build pipeline to include the scss files from each component you want to use. This makes it possible to configure the theming for the components you want to use.

If you are using webpack you may use the special webpack import syntax for node_modules:

@import '~@angular-mdl/core/scss/color-definitions';

$color-primary: $palette-blue-500;
$color-primary-dark: $palette-blue-700;
$color-accent: $palette-amber-A200;
$color-primary-contrast: $color-dark-contrast;
$color-accent-contrast: $color-dark-contrast;

@import '~@angular-mdl/core/src/scss-mdl/material-design-lite';

@import '~@angular-mdl/popover/popover';
@import '~@angular-mdl/select/select';

An other way is to include each component folder in the search path for your scss preprocessor. For example webpack:

	sassLoader: {
		includePaths: [
			'node_modules/@angular-mdl/popover',
			'node_modules/@angular-mdl/select'
		]
	}

Development

  • npm start - local dev server
  • npm build - build a production release
  • npm start test - run the unit tests

The coverage report is stored under: coverage/coverage-remap/index.html