UNPKG

@nova-ui/bits

Version:

SolarWinds Nova Framework

301 lines (270 loc) 7.39 kB
@import (reference) "../../nui-framework-variables.less"; @import (reference) "../../nui-framework-base.less"; .button-base() { .generic-control(); &.default { .button-default(); } &.primary { .button-primary(); } &.action { .button-action(); } &.destructive { .button-destructive(); } &.selected { .button-selected(); } &.selected-contrast { .button-selected-contrast(); } } .button-default-base() { .button-variant( nui-color-text-link; transparent; nui-color-line-default; nui-color-text-link; nui-color-bg-transparent-hover; nui-color-btn1-focusBrd; transparent; nui-color-btn1-activeOpenBrd; transparent; nui-color-btn1-activeHoverBrd; transparent; nui-color-line-default; nui-color-disabled; nui-color-busy-default ); } .button-default() { .button-default-base(); .with-icon-fill(nui-color-text-link, nui-color-disabled); } .button-primary-base() { .button-variant( nui-color-text-light; nui-color-active; transparent; nui-color-icon-light; nui-color-active-hover; transparent; nui-color-btn2-activeOpenBk; transparent; nui-color-btn2-activeHoverBk; transparent; nui-color-disabled; transparent; white; nui-color-busy-default ); } .button-primary() { .button-primary-base(); .with-icon-fill(nui-color-icon-light, white); } .button-action-base() { .button-variant( nui-color-text-link; transparent; transparent; nui-color-text-link; nui-color-bg-transparent-hover; transparent; nui-color-bg-transparent-hover; transparent; nui-color-bg-transparent-hover; transparent; transparent; transparent; nui-color-disabled; nui-color-busy-default ); } .button-action() { .button-action-base(); .with-icon-fill(nui-color-text-link, nui-color-disabled); } .button-destructive-base() { .button-variant( nui-color-text-critical; transparent; nui-color-line-default; nui-color-text-critical; nui-color-bg-transparent-hover; nui-color-btn1-focusBrd; nui-color-bg-transparent-hover; nui-color-btn1-activeOpenBrd; nui-color-bg-transparent-hover; nui-color-btn1-activeHoverBrd; transparent; nui-color-line-default; nui-color-disabled; nui-color-busy-destructive ); } .button-destructive() { .button-destructive-base(); .with-icon-fill(nui-color-text-critical, nui-color-disabled); } .button-selected-base() { .button-variant( nui-color-text-link; nui-color-selected; transparent; nui-color-text-link; nui-color-selected-hover; transparent; nui-color-selected-active; transparent; nui-color-selected-active; transparent; nui-color-disabled; transparent; white; nui-color-busy-default ); } .button-selected() { .button-selected-base(); .with-icon-fill(nui-color-text-link, white); } .button-selected-contrast-base() { .button-variant( white; nui-color-selected-contrast; transparent; nui-color-icon-light; nui-color-selected-contrast-hover; transparent; nui-color-selected-contrast-hover; transparent; nui-color-selected-contrast-hover; transparent; nui-color-disabled; transparent; white; nui-color-busy-default ); } .button-selected-contrast() { .button-selected-contrast-base(); .with-icon-fill(nui-color-icon-light, white); } .button-variant(@colorVariableName; @backgroundVariableName; @borderVariableName; @iconVariableName; @focusBkVariableName; @focusBrdVariableName; @activeOpenBkVariableName; @activeOpenBrdVariableName; @activeHoverBkVariableName; @activeHoverBrdVariableName; @disabledBkVariableName; @disabledBrdVariableName; @disabledContentVariableName; @busyVariantColor ) { .setCssVariable(color, @colorVariableName); .setCssVariable(background-color, @backgroundVariableName); .setCssVariable(border-color, @borderVariableName); &:focus, &.focus { .setCssVariable(color, @colorVariableName); .setCssVariable(background-color, @focusBkVariableName); .setCssVariable(border-color, @focusBrdVariableName); .focus-outline(); } &:hover { .setCssVariable(color, @colorVariableName); .setCssVariable(background-color, @focusBkVariableName); .setCssVariable(border-color, @focusBrdVariableName); } &:active, &.active, .open > .dropdown-toggle& { .setCssVariable(color, @colorVariableName); .setCssVariable(background-color, @activeOpenBkVariableName); .setCssVariable(border-color, @activeOpenBrdVariableName); &:hover, &:focus, &.focus { .setCssVariable(color, @colorVariableName); .setCssVariable(background-color, @activeHoverBkVariableName); .setCssVariable(border-color, @activeHoverBrdVariableName); } } &:active, &.active, .open > .dropdown-toggle& { background-image: none; } &.disabled, &[disabled], fieldset[disabled] & { &, &:hover, &:focus, &.focus, &:active, &.active { .setCssVariable(background-color, @disabledBkVariableName); .setCssVariable(border-color, @disabledBrdVariableName); .setCssVariable(color, @disabledContentVariableName); } } &.is-busy { .busy-variant(@busyVariantColor); } &.has-error { .setCssVariable(border-color, nui-color-line-critical); &:hover, &:focus, &:active { .setCssVariable(border-color, nui-color-line-critical); } } .badge { .setCssVariable(color, @backgroundVariableName); .setCssVariable(background-color, @colorVariableName); } } .with-icon-fill(@iconVariableName, @disabledContentVariableName) { .fill-icon(@iconVariableName); &.disabled, &[disabled], fieldset[disabled] & { &, &:hover, &:focus, &.focus, &:active, &.active { .fill-icon(@disabledContentVariableName); } } } .busy-variant(@variableName) { .ripple-1, .ripple-2 { .setCssVariable(background, @variableName); } } .fill-icon(@variableName) { .nui-icon:not(.custom-icon-color) { path, polygon { .setCssVariable(fill, @variableName); } } } // Button sizes .button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) { padding: @padding-vertical @padding-horizontal; font-size: @font-size; line-height: @line-height; border-radius: @border-radius; }