@use 'sass:map'; @use '~@angular/material' as mat; @mixin color($theme) { $color-config: mat.get-color-config($theme); $primary-palette: map.get($color-config, 'primary'); $warn-palette: map.get($color-config, 'warn'); body { background-color: darken(mat.get-color-from-palette($primary-palette, 'darker'), 35); color: white } .warn { color: mat.get-color-from-palette($warn-palette); } } @mixin typography($theme) { // Get the typography config from the theme. $typography-config: mat.get-typography-config($theme); body { font-family: mat.font-family($typography-config); } } @mixin theme($theme) { $color-config: mat.get-color-config($theme); @if $color-config != null { @include color($theme); } $typography-config: mat.get-typography-config($theme); @if $typography-config != null { @include typography($theme); } }