// // Copyright 2021 Google LLC // SPDX-License-Identifier: Apache-2.0 // // go/keep-sorted start @use 'sass:map'; // go/keep-sorted end // go/keep-sorted start @use '../../tokens'; // go/keep-sorted end @mixin theme($tokens) { $supported-tokens: list.join( tokens.$md-comp-text-button-supported-tokens, ( 'container-shape-start-start', 'container-shape-start-end', 'container-shape-end-end', 'container-shape-end-start' ) ); @each $token, $value in $tokens { @if list.index($supported-tokens, $token) == null { @error 'Token `#{$token}` is not a supported token.'; } @if $value { --md-text-button-#{$token}: #{$value}; } } } @mixin styles() { $tokens: tokens.md-comp-text-button-values(); :host { @each $token, $value in $tokens { --_#{$token}: var(--md-text-button-#{$token}, #{$value}); } --_container-color: none; --_disabled-container-color: none; --_disabled-container-opacity: 0; // Support logical shape properties --_container-shape-start-start: var( --md-text-button-container-shape-start-start, var(--_container-shape) ); --_container-shape-start-end: var( --md-text-button-container-shape-start-end, var(--_container-shape) ); --_container-shape-end-end: var( --md-text-button-container-shape-end-end, var(--_container-shape) ); --_container-shape-end-start: var( --md-text-button-container-shape-end-start, var(--_container-shape) ); } }