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.

346 lines (344 loc) 13.6 kB
/** * Breakpoint mixins */ .tooltip-wrapper { display: inline-block; position: relative; } .tooltip-wrapper .tooltip { position: absolute; z-index: var(--tooltip--z-index, 2000); word-wrap: break-word; width: max-content; top: 0; left: 0; text-align: left; list-style: none; background-clip: padding-box; display: inline-block; white-space: nowrap; line-height: var(--tooltip--line-height, var(--line-height)); border-width: var(--tooltip--border-width, var(--tooltip--border-top-width, var(--border-top-width)) var(--tooltip--border-right-width, var(--border-right-width)) var(--tooltip--border-bottom-width, var(--border-bottom-width)) var(--tooltip--border-left-width, var(--border-left-width))); border-style: var(--tooltip--border-style, var(--tooltip--border-top-style, var(--border-top-style)) var(--tooltip--border-right-style, var(--border-right-style)) var(--tooltip--border-bottom-style, var(--border-bottom-style)) var(--tooltip--border-left-style, var(--border-left-style))); color: var(--tooltip--color); background-color: var(--tooltip--background); border-color: var(--tooltip--border-color, var(--tooltip--border-top-color, var(--border-top-color)) var(--tooltip--border-right-color, var(--border-right-color)) var(--tooltip--border-bottom-color, var(--border-bottom-color)) var(--tooltip--border-left-color, var(--border-left-color))); border-radius: var(--tooltip--border-radius, var(--tooltip--border-top-left-radius, var(--border-top-left-radius)) var(--tooltip--border-top-right-radius, var(--border-top-right-radius)) var(--tooltip--border-bottom-right-radius, var(--border-bottom-right-radius)) var(--tooltip--border-bottom-left-radius, var(--border-bottom-left-radius))); font-size: var(--tooltip--font-size, var(--font-size)); padding: var(--tooltip--padding, var(--tooltip--padding-top, var(--padding-top)) var(--tooltip--padding-right, var(--padding-right)) var(--tooltip--padding-bottom, var(--padding-bottom)) var(--tooltip--padding-left, var(--padding-left))); box-shadow: var(--tooltip--box-shadow, var(--tooltip--box-shadow-x-offset, var(--box-shadow-offset-x)) var(--tooltip--box-shadow-y-offset, var(--box-shadow-offset-y)) var(--tooltip--box-shadow-blur-radius, var(--box-shadow-blur-radius)) var(--tooltip--box-shadow-spread-radius, var(--box-shadow-spread-radius)) var(--tooltip--box-shadow-color, var(--box-shadow-color))); } .tooltip-wrapper .tooltip:focus:hover { outline-width: 0; } .tooltip-wrapper .tooltip[data-popup-placement^=top] { transform-origin: center bottom; } .tooltip-wrapper .tooltip[data-popup-placement^=bottom] { transform-origin: center top; } .tooltip-wrapper .tooltip[data-popup-placement^=right] { transform-origin: left center; } .tooltip-wrapper .tooltip[data-popup-placement^=left] { transform-origin: right center; } .tooltip-wrapper .tooltip > .arrow { position: absolute; } .tooltip-wrapper .tooltip > .arrow, .tooltip-wrapper .tooltip > .arrow::after { display: block; width: 0; height: 0; border-color: transparent; border-style: solid; position: absolute; } .tooltip-wrapper .tooltip > .arrow::after { content: ""; } .tooltip-wrapper .tooltip[data-popup-placement^=top] > .arrow { border-bottom-width: 0; } .tooltip-wrapper .tooltip[data-popup-placement^=top] > .arrow::after { border-bottom-width: 0; } .tooltip-wrapper .tooltip[data-popup-placement^=bottom] > .arrow { border-top-width: 0; } .tooltip-wrapper .tooltip[data-popup-placement^=bottom] > .arrow::after { border-top-width: 0; } .tooltip-wrapper .tooltip[data-popup-placement^=right] > .arrow { border-left-width: 0; } .tooltip-wrapper .tooltip[data-popup-placement^=right] > .arrow::after { border-left-width: 0; } .tooltip-wrapper .tooltip[data-popup-placement^=left] > .arrow { border-right-width: 0; } .tooltip-wrapper .tooltip[data-popup-placement^=left] > .arrow::after { border-right-width: 0; } .tooltip-wrapper .tooltip > .arrow { width: var(--tooltip--arrow--size, 6px); height: var(--tooltip--arrow--size, 6px); } .tooltip-wrapper .tooltip > .arrow, .tooltip-wrapper .tooltip > .arrow::after { border-width: var(--tooltip--arrow--size, 6px); } .tooltip-wrapper .tooltip[data-popup-placement^=top] > .arrow::after, .tooltip-wrapper .tooltip[data-popup-placement^=bottom] > .arrow::after { margin-left: calc(var(--tooltip--arrow--size, 6px) * -1); } .tooltip-wrapper .tooltip[data-popup-placement^=left] > .arrow::after, .tooltip-wrapper .tooltip[data-popup-placement^=right] > .arrow::after { margin-top: calc(var(--tooltip--arrow--size, 6px) * -1); } .tooltip-wrapper .tooltip[data-popup-placement^=top] > .arrow { bottom: calc(var(--tooltip--arrow--size, 6px) * -1); } .tooltip-wrapper .tooltip[data-popup-placement^=top] > .arrow::after { bottom: 1px; } .tooltip-wrapper .tooltip[data-popup-placement^=bottom] > .arrow { top: calc(var(--tooltip--arrow--size, 6px) * -1); } .tooltip-wrapper .tooltip[data-popup-placement^=bottom] > .arrow::after { top: 1px; } .tooltip-wrapper .tooltip[data-popup-placement^=left] > .arrow { right: calc(var(--tooltip--arrow--size, 6px) * -1); } .tooltip-wrapper .tooltip[data-popup-placement^=left] > .arrow::after { right: 1px; } .tooltip-wrapper .tooltip[data-popup-placement^=right] > .arrow { left: calc(var(--tooltip--arrow--size, 6px) * -1); } .tooltip-wrapper .tooltip[data-popup-placement^=right] > .arrow::after { left: 1px; } .tooltip-wrapper .tooltip[data-popup-placement^=top] > .arrow { border-top-color: var(--tooltip--border-top-color, var(--border-top-color)); } .tooltip-wrapper .tooltip[data-popup-placement^=top] > .arrow::after { border-top-color: var(--tooltip--background); } .tooltip-wrapper .tooltip[data-popup-placement^=right] > .arrow { border-right-color: var(--tooltip--border-right-color, var(--border-right-color)); } .tooltip-wrapper .tooltip[data-popup-placement^=right] > .arrow::after { border-right-color: var(--tooltip--background); } .tooltip-wrapper .tooltip[data-popup-placement^=bottom] > .arrow { border-bottom-color: var(--tooltip--border-bottom-color, var(--border-bottom-color)); } .tooltip-wrapper .tooltip[data-popup-placement^=bottom] > .arrow::after { border-bottom-color: var(--tooltip--background); } .tooltip-wrapper .tooltip[data-popup-placement^=left] > .arrow { border-left-color: var(--tooltip--border-left-color, var(--border-left-color)); } .tooltip-wrapper .tooltip[data-popup-placement^=left] > .arrow::after { border-left-color: var(--tooltip--background); } /** * Color variants */ .tooltip-wrapper.-light { --tooltip--background: var(--tooltip--light--background, var(--color-white)); --tooltip--border-top-color: var(--tooltip--light--border-top-color, var(--color-light)); --tooltip--border-right-color: var( --tooltip--light--border-right-color, var(--color-light) ); --tooltip--border-bottom-color: var( --tooltip--light--border-bottom-color, var(--color-light) ); --tooltip--border-left-color: var(--tooltip--light--border-left-color, var(--color-light)); --tooltip--color: var(--tooltip--light--color, var(--contrast-text-color-white)); } .tooltip-wrapper.-dark { --tooltip--background: var(--tooltip--dark--background, var(--color-dark)); --tooltip--border-top-color: var(--tooltip--dark--border-top-color, var(--color-dark-600)); --tooltip--border-right-color: var( --tooltip--dark--border-right-color, var(--color-dark-600) ); --tooltip--border-bottom-color: var( --tooltip--dark--border-bottom-color, var(--color-dark-600) ); --tooltip--border-left-color: var( --tooltip--dark--border-left-color, var(--color-dark-600) ); --tooltip--color: var(--tooltip--dark--color, var(--contrast-text-color-dark)); } /** * Size variants */ .tooltip-wrapper.-sm { --tooltip--border-top-left-radius: var( --tooltip--sm--border-top-left-radius, calc(var(--border-top-left-radius) * var(--size-multiplier-sm)) ); --tooltip--border-top-right-radius: var( --tooltip--sm--border-top-right-radius, calc(var(--border-top-right-radius) * var(--size-multiplier-sm)) ); --tooltip--border-bottom-right-radius: var( --tooltip--sm--border-bottom-right-radius, calc(var(--border-bottom-right-radius) * var(--size-multiplier-sm)) ); --tooltip--border-bottom-left-radius: var( --tooltip--sm--border-bottom-left-radius, calc(var(--border-bottom-left-radius) * var(--size-multiplier-sm)) ); --tooltip--font-size: var( --tooltip--sm--font-size, calc(var(--font-size) * var(--size-multiplier-sm)) ); --tooltip--margin-top: var( --tooltip--sm--margin-top, calc(calc(var(--margin-top) / 2) * var(--size-multiplier-sm)) ); --tooltip--margin-right: var( --tooltip--sm--margin-right, calc(calc(var(--margin-right) / 2) * var(--size-multiplier-sm)) ); --tooltip--margin-bottom: var( --tooltip--sm--margin-bottom, calc(calc(var(--margin-bottom) / 2) * var(--size-multiplier-sm)) ); --tooltip--margin-left: var( --tooltip--sm--margin-left, calc(calc(var(--margin-left) / 2) * var(--size-multiplier-sm)) ); --tooltip--padding-top: var( --tooltip--sm--padding-top, calc(calc(var(--padding-top) * 3 / 4) * var(--size-multiplier-sm)) ); --tooltip--padding-right: var( --tooltip--sm--padding-right, calc(var(--padding-right) * var(--size-multiplier-sm)) ); --tooltip--padding-bottom: var( --tooltip--sm--padding-bottom, calc(calc(var(--padding-bottom) * 3 / 4) * var(--size-multiplier-sm)) ); --tooltip--padding-left: var( --tooltip--sm--padding-left, calc(var(--padding-left) * var(--size-multiplier-sm)) ); } .tooltip-wrapper.-md { --tooltip--border-top-left-radius: var( --tooltip--md--border-top-left-radius, calc(var(--border-top-left-radius) * var(--size-multiplier-md)) ); --tooltip--border-top-right-radius: var( --tooltip--md--border-top-right-radius, calc(var(--border-top-right-radius) * var(--size-multiplier-md)) ); --tooltip--border-bottom-right-radius: var( --tooltip--md--border-bottom-right-radius, calc(var(--border-bottom-right-radius) * var(--size-multiplier-md)) ); --tooltip--border-bottom-left-radius: var( --tooltip--md--border-bottom-left-radius, calc(var(--border-bottom-left-radius) * var(--size-multiplier-md)) ); --tooltip--font-size: var( --tooltip--md--font-size, calc(var(--font-size) * var(--size-multiplier-md)) ); --tooltip--margin-top: var( --tooltip--md--margin-top, calc(calc(var(--margin-top) / 2) * var(--size-multiplier-md)) ); --tooltip--margin-right: var( --tooltip--md--margin-right, calc(calc(var(--margin-right) / 2) * var(--size-multiplier-md)) ); --tooltip--margin-bottom: var( --tooltip--md--margin-bottom, calc(calc(var(--margin-bottom) / 2) * var(--size-multiplier-md)) ); --tooltip--margin-left: var( --tooltip--md--margin-left, calc(calc(var(--margin-left) / 2) * var(--size-multiplier-md)) ); --tooltip--padding-top: var( --tooltip--md--padding-top, calc(calc(var(--padding-top) * 3 / 4) * var(--size-multiplier-md)) ); --tooltip--padding-right: var( --tooltip--md--padding-right, calc(var(--padding-right) * var(--size-multiplier-md)) ); --tooltip--padding-bottom: var( --tooltip--md--padding-bottom, calc(calc(var(--padding-bottom) * 3 / 4) * var(--size-multiplier-md)) ); --tooltip--padding-left: var( --tooltip--md--padding-left, calc(var(--padding-left) * var(--size-multiplier-md)) ); } .tooltip-wrapper.-lg { --tooltip--border-top-left-radius: var( --tooltip--lg--border-top-left-radius, calc(var(--border-top-left-radius) * var(--size-multiplier-lg)) ); --tooltip--border-top-right-radius: var( --tooltip--lg--border-top-right-radius, calc(var(--border-top-right-radius) * var(--size-multiplier-lg)) ); --tooltip--border-bottom-right-radius: var( --tooltip--lg--border-bottom-right-radius, calc(var(--border-bottom-right-radius) * var(--size-multiplier-lg)) ); --tooltip--border-bottom-left-radius: var( --tooltip--lg--border-bottom-left-radius, calc(var(--border-bottom-left-radius) * var(--size-multiplier-lg)) ); --tooltip--font-size: var( --tooltip--lg--font-size, calc(var(--font-size) * var(--size-multiplier-lg)) ); --tooltip--margin-top: var( --tooltip--lg--margin-top, calc(calc(var(--margin-top) / 2) * var(--size-multiplier-lg)) ); --tooltip--margin-right: var( --tooltip--lg--margin-right, calc(calc(var(--margin-right) / 2) * var(--size-multiplier-lg)) ); --tooltip--margin-bottom: var( --tooltip--lg--margin-bottom, calc(calc(var(--margin-bottom) / 2) * var(--size-multiplier-lg)) ); --tooltip--margin-left: var( --tooltip--lg--margin-left, calc(calc(var(--margin-left) / 2) * var(--size-multiplier-lg)) ); --tooltip--padding-top: var( --tooltip--lg--padding-top, calc(calc(var(--padding-top) * 3 / 4) * var(--size-multiplier-lg)) ); --tooltip--padding-right: var( --tooltip--lg--padding-right, calc(var(--padding-right) * var(--size-multiplier-lg)) ); --tooltip--padding-bottom: var( --tooltip--lg--padding-bottom, calc(calc(var(--padding-bottom) * 3 / 4) * var(--size-multiplier-lg)) ); --tooltip--padding-left: var( --tooltip--lg--padding-left, calc(var(--padding-left) * var(--size-multiplier-lg)) ); }