UNPKG

@harvest-profit/npk

Version:
123 lines (105 loc) 4.16 kB
.ButtonGroup { --button-group-bg-color: var(--control-bg-color); --button-group-border-color: var(--control-border-color); --btn-group-control-size: calc(var(--control-size) - 2px); background-color: var(--button-group-bg-color); box-sizing: border-box; display: flex; flex-direction: row; align-self: flex-start; border-radius: var(--control-radius); border: 1px solid var(--button-group-border-color); /* variants */ &[data-variant="danger"] { --btn-visual-color: var(--button-danger-fg-color); --btn-fg-color: var(--button-danger-fg-color); --btn-icon-color: var(--button-danger-fg-color); --btn-fg-color--disabled: rgb(from var(--button-danger-fg-color) r g b / 50%); } &[data-variant="primary"] { --btn-visual-color: var(--button-primary-fg-color); --btn-fg-color: var(--button-primary-fg-color); --btn-icon-color: var(--button-primary-fg-color); --btn-fg-color--disabled: var(--button-primary-fg-color); --btn-bg-color: var(--button-primary-bg-color); --btn-bg-color--hover: var(--button-primary-bg-color--hover); --btn-bg-color--active: var(--button-primary-bg-color--active); --btn-bg-color--disabled: var(--button-primary-bg-color--disabled); --button-group-bg-color: var(--button-primary-bg-color); } &[data-size="sm"] { --btn-group-control-size: calc(var(--control-small-size) - 2px); --control-font-size: var(--control-small-font-size); --control-gap: var(--control-small-gap); --control-padding: var(--control-small-padding); } &[data-size="lg"] { --btn-group-control-size: calc(var(--control-large-size) - 2px); } & > .Button { --btn-bg-color: var(--button-group-bg-color); --btn-border-color: transparent; --control-size: var(--btn-group-control-size); &:not(:first-of-type) { border-top-left-radius: 0; border-bottom-left-radius: 0; } &:not(:last-of-type) { border-top-right-radius: 0; border-bottom-right-radius: 0; border-right: 1px solid var(--button-group-border-color); } } } .Button { &[data-elevated="true"] { --btn-bg-color: var(--button-white-bg-color); --btn-bg-color--hover: var(--button-white-bg-color--hover); --btn-bg-color--active: var(--button-white-bg-color--active); --btn-bg-color--disabled: var(--button-white-bg-color--disabled); box-shadow: 1px 2px 3px -3px rgba(0, 0, 0, .76), 0 1px 13px -10px rgba(0, 0, 0, .35); &[data-size="lg"] { border-color: transparent; } } &[data-invisible="true"] { --btn-bg-color: transparent; --btn-border-color: transparent; --btn-bg-color--hover: var(--button-invisible-bg-color--hover); --btn-bg-color--active: var(--button-invisible-bg-color--active); --btn-bg-color--disabled: var(--button-invisible-bg-color--disabled); &[data-variant="primary"] { --btn-visual-color: var(--button-primary-bg-color); --btn-fg-color: var(--button-primary-bg-color); --btn-fg-color--disabled: var(--button-primary-bg-color--disabled); } } /* variants */ &[data-variant="danger"] { --btn-visual-color: var(--button-danger-fg-color); --btn-fg-color: var(--button-danger-fg-color); --btn-icon-color: var(--button-danger-fg-color); --btn-fg-color--disabled: rgb(from var(--button-danger-fg-color) r g b / 50%); } &[data-variant="primary"]:not([data-invisible="true"]) { --btn-visual-color: var(--button-primary-fg-color); --btn-fg-color: var(--button-primary-fg-color); --btn-icon-color: var(--button-primary-fg-color); --btn-fg-color--disabled: var(--button-primary-fg-color); --btn-bg-color: var(--button-primary-bg-color); --btn-bg-color--hover: var(--button-primary-bg-color--hover); --btn-bg-color--active: var(--button-primary-bg-color--active); --btn-bg-color--disabled: var(--button-primary-bg-color--disabled); } &[data-plain="true"] { width: 100%; border-radius: 0; --btn-font-weight: normal; [data-component="leadingVisual"] { opacity: 0; } &[data-active="true"] [data-component="leadingVisual"] { opacity: 1; } } }