UNPKG

@inkline/inkline

Version:

Inkline is the intuitive UI Components library that gives you a developer-friendly foundation for building high-quality, accessible, and customizable Vue.js 3 Design Systems.

471 lines (469 loc) 21.2 kB
/** * Breakpoint mixins */ /** * Popover */ .popover-wrapper { display: inline-block; position: relative; } .popover-wrapper .popover { position: absolute; z-index: var(--popover--z-index, 2000); word-wrap: break-word; width: max-content; top: 0; left: 0; text-align: left; list-style: none; line-height: var(--popover--line-height, var(--line-height)); box-shadow: var(--popover--box-shadow, var(--popover--box-shadow-x-offset, var(--box-shadow-offset-x)) var(--popover--box-shadow-y-offset, var(--box-shadow-offset-y)) var(--popover--box-shadow-blur-radius, var(--box-shadow-blur-radius)) var(--popover--box-shadow-spread-radius, var(--box-shadow-spread-radius)) var(--popover--box-shadow-color, var(--box-shadow-color))); background-clip: padding-box; display: inline-block; white-space: normal; width: var(--popover--width, 280px); max-width: var(--popover--max-width, 90vw); color: var(--popover--color); font-size: var(--popover--font-size, var(--font-size)); } .popover-wrapper .popover:focus:hover { outline-width: 0; } .popover-wrapper .popover[data-popup-placement^=top] { transform-origin: center bottom; } .popover-wrapper .popover[data-popup-placement^=bottom] { transform-origin: center top; } .popover-wrapper .popover[data-popup-placement^=right] { transform-origin: left center; } .popover-wrapper .popover[data-popup-placement^=left] { transform-origin: right center; } .popover-wrapper .popover > .arrow { position: absolute; } .popover-wrapper .popover > .arrow, .popover-wrapper .popover > .arrow::after { display: block; width: 0; height: 0; border-color: transparent; border-style: solid; position: absolute; } .popover-wrapper .popover > .arrow::after { content: ""; } .popover-wrapper .popover[data-popup-placement^=top] > .arrow { border-bottom-width: 0; } .popover-wrapper .popover[data-popup-placement^=top] > .arrow::after { border-bottom-width: 0; } .popover-wrapper .popover[data-popup-placement^=bottom] > .arrow { border-top-width: 0; } .popover-wrapper .popover[data-popup-placement^=bottom] > .arrow::after { border-top-width: 0; } .popover-wrapper .popover[data-popup-placement^=right] > .arrow { border-left-width: 0; } .popover-wrapper .popover[data-popup-placement^=right] > .arrow::after { border-left-width: 0; } .popover-wrapper .popover[data-popup-placement^=left] > .arrow { border-right-width: 0; } .popover-wrapper .popover[data-popup-placement^=left] > .arrow::after { border-right-width: 0; } .popover-wrapper .popover > .arrow { width: var(--popover--arrow--size, 6px); height: var(--popover--arrow--size, 6px); } .popover-wrapper .popover > .arrow, .popover-wrapper .popover > .arrow::after { border-width: var(--popover--arrow--size, 6px); } .popover-wrapper .popover[data-popup-placement^=top] > .arrow::after, .popover-wrapper .popover[data-popup-placement^=bottom] > .arrow::after { margin-left: calc(var(--popover--arrow--size, 6px) * -1); } .popover-wrapper .popover[data-popup-placement^=left] > .arrow::after, .popover-wrapper .popover[data-popup-placement^=right] > .arrow::after { margin-top: calc(var(--popover--arrow--size, 6px) * -1); } .popover-wrapper .popover[data-popup-placement^=top] > .arrow { bottom: calc(var(--popover--arrow--size, 6px) * -1); } .popover-wrapper .popover[data-popup-placement^=top] > .arrow::after { bottom: 1px; } .popover-wrapper .popover[data-popup-placement^=bottom] > .arrow { top: calc(var(--popover--arrow--size, 6px) * -1); } .popover-wrapper .popover[data-popup-placement^=bottom] > .arrow::after { top: 1px; } .popover-wrapper .popover[data-popup-placement^=left] > .arrow { right: calc(var(--popover--arrow--size, 6px) * -1); } .popover-wrapper .popover[data-popup-placement^=left] > .arrow::after { right: 1px; } .popover-wrapper .popover[data-popup-placement^=right] > .arrow { left: calc(var(--popover--arrow--size, 6px) * -1); } .popover-wrapper .popover[data-popup-placement^=right] > .arrow::after { left: 1px; } .popover-wrapper .popover > .popover-header { border-style: var(--popover--header--border-style, var(--popover--header--border-top-style, var(--popover--border-top-style, var(--border-top-style))) var(--popover--header--border-right-style, var(--popover--border-right-style, var(--border-right-style))) var(--popover--header--border-bottom-style, var(--popover--border-bottom-style, var(--border-bottom-style))) var(--popover--header--border-left-style, var(--popover--border-left-style, var(--border-left-style)))); border-width: var(--popover--header--border-width, var(--popover--header--border-top-width, var(--popover--border-top-width, var(--border-top-width))) var(--popover--header--border-right-width, var(--popover--border-right-width, var(--border-right-width))) var(--popover--header--border-bottom-width, 0) var(--popover--header--border-left-width, var(--popover--border-left-width, var(--border-left-width)))); border-color: var(--popover--header--border-color, var(--popover--header--border-top-color, var(--popover--border-top-color, var(--border-top-color))) var(--popover--header--border-right-color, var(--popover--border-right-color, var(--border-right-color))) var(--popover--header--border-bottom-color, var(--popover--border-bottom-color, var(--border-bottom-color))) var(--popover--header--border-left-color, var(--popover--border-left-color, var(--border-left-color)))); padding: var(--popover--header--padding, var(--popover--header--padding-top, var(--popover--padding-top, var(--padding-top))) var(--popover--header--padding-right, var(--popover--padding-right, var(--padding-right))) var(--popover--header--padding-bottom, var(--popover--padding-bottom, var(--padding-bottom))) var(--popover--header--padding-left, var(--popover--padding-left, var(--padding-left)))); background-color: var(--popover--header--background, var(--popover--background)); } .popover-wrapper .popover > .popover-body { border-style: var(--popover--body--border-style, var(--popover--body--border-top-style, var(--popover--border-top-style, var(--border-top-style))) var(--popover--body--border-right-style, var(--popover--border-right-style, var(--border-right-style))) var(--popover--body--border-bottom-style, var(--popover--border-bottom-style, var(--border-bottom-style))) var(--popover--body--border-left-style, var(--popover--border-left-style, var(--border-left-style)))); border-width: var(--popover--body--border-width, var(--popover--body--border-top-width, var(--popover--border-top-width, var(--border-top-width))) var(--popover--body--border-right-width, var(--popover--border-right-width, var(--border-right-width))) var(--popover--body--border-bottom-width, var(--popover--border-bottom-width, var(--border-bottom-width))) var(--popover--body--border-left-width, var(--popover--border-left-width, var(--border-left-width)))); border-color: var(--popover--body--border-color, var(--popover--body--border-top-color, var(--popover--border-top-color, var(--border-top-color))) var(--popover--body--border-right-color, var(--popover--border-right-color, var(--border-right-color))) var(--popover--body--border-bottom-color, var(--popover--border-bottom-color, var(--border-bottom-color))) var(--popover--body--border-left-color, var(--popover--border-left-color, var(--border-left-color)))); padding: var(--popover--body--padding, var(--popover--body--padding-top, var(--popover--padding-top, var(--padding-top))) var(--popover--body--padding-right, var(--popover--padding-right, var(--padding-right))) var(--popover--body--padding-bottom, var(--popover--padding-bottom, var(--padding-bottom))) var(--popover--body--padding-left, var(--popover--padding-left, var(--padding-left)))); background-color: var(--popover--body--background, var(--popover--background)); } .popover-wrapper .popover > .popover-footer { border-style: var(--popover--footer--border-style, var(--popover--footer--border-top-style, var(--popover--border-top-style, var(--border-top-style))) var(--popover--footer--border-right-style, var(--popover--border-right-style, var(--border-right-style))) var(--popover--footer--border-bottom-style, var(--popover--border-bottom-style, var(--border-bottom-style))) var(--popover--footer--border-left-style, var(--popover--border-left-style, var(--border-left-style)))); border-width: var(--popover--footer--border-width, var(--popover--footer--border-top-width, 0) var(--popover--footer--border-right-width, var(--popover--border-right-width, var(--border-right-width))) var(--popover--footer--border-bottom-width, var(--popover--border-bottom-width, var(--border-bottom-width))) var(--popover--footer--border-left-width, var(--popover--border-left-width, var(--border-left-width)))); border-color: var(--popover--footer--border-color, var(--popover--footer--border-top-color, var(--popover--border-top-color, var(--border-top-color))) var(--popover--footer--border-right-color, var(--popover--border-right-color, var(--border-right-color))) var(--popover--footer--border-bottom-color, var(--popover--border-bottom-color, var(--border-bottom-color))) var(--popover--footer--border-left-color, var(--popover--border-left-color, var(--border-left-color)))); padding: var(--popover--footer--padding, var(--popover--footer--padding-top, var(--popover--padding-top, var(--padding-top))) var(--popover--footer--padding-right, var(--popover--padding-right, var(--padding-right))) var(--popover--footer--padding-bottom, var(--popover--padding-bottom, var(--padding-bottom))) var(--popover--footer--padding-left, var(--popover--padding-left, var(--padding-left)))); background-color: var(--popover--footer--background, var(--popover--background)); } .popover-wrapper .popover > div:first-of-type { border-top-left-radius: var(--popover--border-top-left-radius, var(--border-top-left-radius)); border-top-right-radius: var(--popover--border-top-right-radius, var(--border-top-right-radius)); } .popover-wrapper .popover > div:last-of-type { border-bottom-left-radius: var(--popover--border-bottom-left-radius, var(--border-bottom-left-radius)); border-bottom-right-radius: var(--popover--border-bottom-right-radius, var(--border-bottom-right-radius)); } .popover-wrapper .popover[data-popup-placement^=top] > .arrow { border-top-color: var(--popover--border-bottom-color, var(--border-bottom-color)); } .popover-wrapper .popover[data-popup-placement^=top] > .arrow::after { border-top-color: var(--popover--background); } .popover-wrapper .popover[data-popup-placement^=right] > .arrow { border-right-color: var(--popover--border-left-color, var(--border-left-color)); } .popover-wrapper .popover[data-popup-placement^=right] > .arrow::after { border-right-color: var(--popover--background); } .popover-wrapper .popover[data-popup-placement^=bottom] > .arrow { border-bottom-color: var(--popover--border-top-color, var(--border-top-color)); } .popover-wrapper .popover[data-popup-placement^=bottom] > .arrow::after { border-bottom-color: var(--popover--background); } .popover-wrapper .popover[data-popup-placement^=left] > .arrow { border-left-color: var(--popover--border-right-color, var(--border-right-color)); } .popover-wrapper .popover[data-popup-placement^=left] > .arrow::after { border-left-color: var(--popover--background); } /** * Color variants */ .popover-wrapper.-light { --popover--background: var(--popover--light--background, var(--color-white)); --popover--border-top-color: var( --popover--light--border-top-color, var(--color-light-shade-50) ); --popover--border-right-color: var( --popover--light--border-right-color, var(--color-light-shade-50) ); --popover--border-bottom-color: var( --popover--light--border-bottom-color, var(--color-light-shade-50) ); --popover--border-left-color: var( --popover--light--border-left-color, var(--color-light-shade-50) ); --popover--color: var(--popover--light--color, var(--contrast-text-color-white)); --popover--header--background: var( --popover--light--header--background, var(--color-gray-50) ); --popover--footer--background: var( --popover--light--footer--background, var(--color-gray-50) ); } .popover-wrapper.-dark { --popover--background: var(--popover--dark--background, var(--color-dark)); --popover--border-top-color: var( --popover--dark--border-top-color, var(--color-dark-tint-50) ); --popover--border-right-color: var( --popover--dark--border-right-color, var(--color-dark-tint-50) ); --popover--border-bottom-color: var( --popover--dark--border-bottom-color, var(--color-dark-tint-50) ); --popover--border-left-color: var( --popover--dark--border-left-color, var(--color-dark-tint-50) ); --popover--color: var(--popover--dark--color, var(--contrast-text-color-dark)); --popover--header--background: var( --popover--dark--header--background, var(--color-dark-tint-50) ); --popover--footer--background: var( --popover--dark--footer--background, var(--color-dark-tint-50) ); } /** * Size variants */ .popover-wrapper.-sm { --popover--border-top-left-radius: var( --popover--sm--border-top-left-radius, calc(var(--border-top-left-radius) * var(--size-multiplier-sm)) ); --popover--border-top-right-radius: var( --popover--sm--border-top-right-radius, calc(var(--border-top-right-radius) * var(--size-multiplier-sm)) ); --popover--border-bottom-right-radius: var( --popover--sm--border-bottom-right-radius, calc(var(--border-bottom-right-radius) * var(--size-multiplier-sm)) ); --popover--border-bottom-left-radius: var( --popover--sm--border-bottom-left-radius, calc(var(--border-bottom-left-radius) * var(--size-multiplier-sm)) ); --popover--font-size: var( --popover--sm--font-size, calc(var(--font-size) * var(--size-multiplier-sm)) ); --popover--margin-top: var( --popover--sm--margin-top, calc(calc(var(--margin-top) / 2) * var(--size-multiplier-sm)) ); --popover--margin-right: var( --popover--sm--margin-right, calc(calc(var(--margin-right) / 2) * var(--size-multiplier-sm)) ); --popover--margin-bottom: var( --popover--sm--margin-bottom, calc(calc(var(--margin-bottom) / 2) * var(--size-multiplier-sm)) ); --popover--margin-left: var( --popover--sm--margin-left, calc(calc(var(--margin-left) / 2) * var(--size-multiplier-sm)) ); --popover--padding-top: var( --popover--sm--padding-top, calc(calc(var(--padding-top) * 3 / 4) * var(--size-multiplier-sm)) ); --popover--padding-right: var( --popover--sm--padding-right, calc(var(--padding-right) * var(--size-multiplier-sm)) ); --popover--padding-bottom: var( --popover--sm--padding-bottom, calc(calc(var(--padding-bottom) * 3 / 4) * var(--size-multiplier-sm)) ); --popover--padding-left: var( --popover--sm--padding-left, calc(var(--padding-left) * var(--size-multiplier-sm)) ); --popover--header--padding-bottom: var( --popover--sm--header--padding-bottom, var(----padding-bottom-sm) ); --popover--header--padding-left: var( --popover--sm--header--padding-left, var(----padding-left-sm) ); --popover--body--padding-bottom: var( --popover--sm--body--padding-bottom, var(----padding-bottom-sm) ); --popover--body--padding-left: var( --popover--sm--body--padding-left, var(----padding-left-sm) ); --popover--footer--padding-bottom: var( --popover--sm--footer--padding-bottom, var(----padding-bottom-sm) ); --popover--footer--padding-left: var( --popover--sm--footer--padding-left, var(----padding-left-sm) ); } .popover-wrapper.-md { --popover--border-top-left-radius: var( --popover--md--border-top-left-radius, calc(var(--border-top-left-radius) * var(--size-multiplier-md)) ); --popover--border-top-right-radius: var( --popover--md--border-top-right-radius, calc(var(--border-top-right-radius) * var(--size-multiplier-md)) ); --popover--border-bottom-right-radius: var( --popover--md--border-bottom-right-radius, calc(var(--border-bottom-right-radius) * var(--size-multiplier-md)) ); --popover--border-bottom-left-radius: var( --popover--md--border-bottom-left-radius, calc(var(--border-bottom-left-radius) * var(--size-multiplier-md)) ); --popover--font-size: var( --popover--md--font-size, calc(var(--font-size) * var(--size-multiplier-md)) ); --popover--margin-top: var( --popover--md--margin-top, calc(calc(var(--margin-top) / 2) * var(--size-multiplier-md)) ); --popover--margin-right: var( --popover--md--margin-right, calc(calc(var(--margin-right) / 2) * var(--size-multiplier-md)) ); --popover--margin-bottom: var( --popover--md--margin-bottom, calc(calc(var(--margin-bottom) / 2) * var(--size-multiplier-md)) ); --popover--margin-left: var( --popover--md--margin-left, calc(calc(var(--margin-left) / 2) * var(--size-multiplier-md)) ); --popover--padding-top: var( --popover--md--padding-top, calc(calc(var(--padding-top) * 3 / 4) * var(--size-multiplier-md)) ); --popover--padding-right: var( --popover--md--padding-right, calc(var(--padding-right) * var(--size-multiplier-md)) ); --popover--padding-bottom: var( --popover--md--padding-bottom, calc(calc(var(--padding-bottom) * 3 / 4) * var(--size-multiplier-md)) ); --popover--padding-left: var( --popover--md--padding-left, calc(var(--padding-left) * var(--size-multiplier-md)) ); --popover--header--padding-bottom: var( --popover--md--header--padding-bottom, var(----padding-bottom-md) ); --popover--header--padding-left: var( --popover--md--header--padding-left, var(----padding-left-md) ); --popover--body--padding-bottom: var( --popover--md--body--padding-bottom, var(----padding-bottom-md) ); --popover--body--padding-left: var( --popover--md--body--padding-left, var(----padding-left-md) ); --popover--footer--padding-bottom: var( --popover--md--footer--padding-bottom, var(----padding-bottom-md) ); --popover--footer--padding-left: var( --popover--md--footer--padding-left, var(----padding-left-md) ); } .popover-wrapper.-lg { --popover--border-top-left-radius: var( --popover--lg--border-top-left-radius, calc(var(--border-top-left-radius) * var(--size-multiplier-lg)) ); --popover--border-top-right-radius: var( --popover--lg--border-top-right-radius, calc(var(--border-top-right-radius) * var(--size-multiplier-lg)) ); --popover--border-bottom-right-radius: var( --popover--lg--border-bottom-right-radius, calc(var(--border-bottom-right-radius) * var(--size-multiplier-lg)) ); --popover--border-bottom-left-radius: var( --popover--lg--border-bottom-left-radius, calc(var(--border-bottom-left-radius) * var(--size-multiplier-lg)) ); --popover--font-size: var( --popover--lg--font-size, calc(var(--font-size) * var(--size-multiplier-lg)) ); --popover--margin-top: var( --popover--lg--margin-top, calc(calc(var(--margin-top) / 2) * var(--size-multiplier-lg)) ); --popover--margin-right: var( --popover--lg--margin-right, calc(calc(var(--margin-right) / 2) * var(--size-multiplier-lg)) ); --popover--margin-bottom: var( --popover--lg--margin-bottom, calc(calc(var(--margin-bottom) / 2) * var(--size-multiplier-lg)) ); --popover--margin-left: var( --popover--lg--margin-left, calc(calc(var(--margin-left) / 2) * var(--size-multiplier-lg)) ); --popover--padding-top: var( --popover--lg--padding-top, calc(calc(var(--padding-top) * 3 / 4) * var(--size-multiplier-lg)) ); --popover--padding-right: var( --popover--lg--padding-right, calc(var(--padding-right) * var(--size-multiplier-lg)) ); --popover--padding-bottom: var( --popover--lg--padding-bottom, calc(calc(var(--padding-bottom) * 3 / 4) * var(--size-multiplier-lg)) ); --popover--padding-left: var( --popover--lg--padding-left, calc(var(--padding-left) * var(--size-multiplier-lg)) ); --popover--header--padding-bottom: var( --popover--lg--header--padding-bottom, var(----padding-bottom-lg) ); --popover--header--padding-left: var( --popover--lg--header--padding-left, var(----padding-left-lg) ); --popover--body--padding-bottom: var( --popover--lg--body--padding-bottom, var(----padding-bottom-lg) ); --popover--body--padding-left: var( --popover--lg--body--padding-left, var(----padding-left-lg) ); --popover--footer--padding-bottom: var( --popover--lg--footer--padding-bottom, var(----padding-bottom-lg) ); --popover--footer--padding-left: var( --popover--lg--footer--padding-left, var(----padding-left-lg) ); }