56 lines
1.7 KiB
SCSS
56 lines
1.7 KiB
SCSS
// @see https://github.com/twbs/bootstrap/blob/main/scss/_functions.scss
|
|
@function material-icons-str-replace($string, $search, $replace: '') {
|
|
$index: str-index($string, $search);
|
|
@if $index {
|
|
@return str-slice($string, 1, $index - 1) + $replace +
|
|
material-icons-str-replace(
|
|
str-slice($string, $index + str-length($search)),
|
|
$search,
|
|
$replace
|
|
);
|
|
}
|
|
@return $string;
|
|
}
|
|
|
|
@mixin material-icons-font-class($font-family) {
|
|
font-family: $font-family;
|
|
font-weight: normal;
|
|
font-style: normal;
|
|
font-size: $material-icons-font-size;
|
|
line-height: 1;
|
|
letter-spacing: normal;
|
|
text-transform: none;
|
|
display: inline-block;
|
|
white-space: nowrap;
|
|
word-wrap: normal;
|
|
direction: ltr;
|
|
-webkit-font-smoothing: antialiased; // Support for all WebKit browsers
|
|
-moz-osx-font-smoothing: grayscale; // Support for Firefox
|
|
text-rendering: optimizeLegibility; // Support for Safari and Chrome
|
|
font-feature-settings: 'liga'; // Support for IE
|
|
}
|
|
|
|
@mixin material-icons-font($font-family) {
|
|
$class-name: to-lower-case($font-family);
|
|
$class-name: material-icons-str-replace($class-name, ' ', '-');
|
|
$font-file: $material-icons-font-path + $class-name;
|
|
|
|
@font-face {
|
|
font-family: $font-family;
|
|
font-style: normal;
|
|
font-weight: 400;
|
|
font-display: $material-icons-font-display;
|
|
src: url('#{$font-file}.woff2') format('woff2'),
|
|
url('#{$font-file}.woff') format('woff');
|
|
}
|
|
|
|
.#{$class-name} {
|
|
@include material-icons-font-class($font-family);
|
|
}
|
|
}
|
|
|
|
@mixin material-icons() {
|
|
@warn "material-icons() Sass mixin has been deprecated as of 1.0. Use '@extend .material-icons;' instead of '@include material-icons();'.";
|
|
@include material-icons-font-class('Material Icons');
|
|
}
|