@use "../../themes/ionic/ionic.globals.scss" as globals; @use "./item-option.common"; // Ionic Item Option // -------------------------------------------------- :host { @include globals.padding(0); @include globals.typography(globals.$ion-body-action-sm); } .button-native { @include globals.padding(globals.$ion-space-200); min-width: globals.$ion-scale-1600; height: globals.$ion-scale-1600; } ::slotted([slot="top"]) { @include globals.margin(0, 0, globals.$ion-space-100, 0); } ::slotted([slot="bottom"]) { @include globals.margin(globals.$ion-space-100, 0, 0, 0); } ::slotted([slot="start"]) { @include globals.margin(0, globals.$ion-space-100, 0, 0); } ::slotted([slot="end"]) { @include globals.margin(0, 0, 0, globals.$ion-space-100); } ::slotted(ion-icon), ::slotted([slot="icon-only"]) { @include globals.margin(0); width: globals.$ion-scale-500; min-width: initial; height: globals.$ion-scale-500; } // Item Option Shapes // -------------------------------------------------- /* Round */ :host(.item-option-round) { @include globals.border-radius(globals.$ion-border-radius-300); } /* Soft */ :host(.item-option-soft) { @include globals.border-radius(globals.$ion-border-radius-200); } /* Rectangular */ :host(.item-option-rectangular) { @include globals.border-radius(globals.$ion-border-radius-0); } // Item Option States // -------------------------------------------------- /* Disabled */ :host(.item-option-disabled)::after { @include globals.disabled-state(); } :host(.item-option-disabled) .button-native { opacity: 1; } // Subtle Item Option // -------------------------------------------------- :host(.item-option-subtle) { --background: #{globals.ion-color(primary, base, $subtle: true)}; --background-activated: #{globals.ion-color(primary, shade, $subtle: true)}; --color: #{globals.ion-color(primary, contrast, $subtle: true)}; } :host(.item-option-subtle.ion-color) { background: globals.current-color(base, $subtle: true); color: globals.current-color(contrast, $subtle: true); } // Bold Item Option // -------------------------------------------------- :host(.item-option-bold) { --background: #{globals.ion-color(primary, base)}; --background-activated: #{globals.ion-color(primary, shade)}; --color: #{globals.ion-color(primary, contrast)}; } :host(.item-option-bold.ion-color) { background: globals.current-color(base); color: globals.current-color(contrast); } // Item Expandable Animation // -------------------------------------------------- :host(.item-option-expandable) { transition-timing-function: globals.$ion-transition-curve-expressive; }