// // Copyright 2020 Google Inc. // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. // // stylelint-disable selector-class-pattern -- // Selector '.mdc-*' should only be used in this project. @use '@material/feature-targeting/feature-targeting'; @use '@material/tokens/resolvers'; @use './button-base'; @use './button-filled-theme'; @use './button-ripple'; @use './button-shared-theme'; @mixin styles( $theme: button-filled-theme.$light-theme, $resolver: resolvers.$material, $query: feature-targeting.all() ) { @include button-base.static-styles($query: $query); @include static-styles($query: $query); .mdc-button--unelevated { @include button-filled-theme.theme-styles( $theme, $resolver, $query: $query ); } } @mixin static-styles($query: feature-targeting.all()) { @include static-styles-without-ripple($query: $query); @include button-ripple.static-styles($query: $query); } @mixin static-styles-without-ripple($query: feature-targeting.all()) { .mdc-button--unelevated { @include button-base.raised-transition($query: $query); // TODO(b/179402677): move into theme config @include button-shared-theme.horizontal-padding( $padding: button-shared-theme.$contained-horizontal-padding, $padding-icon: button-shared-theme.$contained-horizontal-padding-icon, $query: $query ); } } // Legacy mixins @mixin filled($query: feature-targeting.all()) { // TODO(b/179402677): move into theme config @include button-shared-theme.horizontal-padding( $padding: button-shared-theme.$contained-horizontal-padding, $padding-icon: button-shared-theme.$contained-horizontal-padding-icon, $query: $query ); @include button-filled-theme.theme-styles( button-filled-theme.$light-theme, $query: $query ); } /// @deprecated Private style mixin for partners; not available for public use. @mixin deprecated-filled($query) { @include filled($query); }