This commit is contained in:
2021-09-05 20:17:36 +03:00
parent 7310d04755
commit 6297c67201
28 changed files with 2676 additions and 1591 deletions
+11 -146
View File
@@ -1,13 +1,10 @@
:root {
--kit-tooltip-font-size: 0.8em;
--kit-tooltip-color: #ffffff;
--kit-tooltip-content-color: #212121fa;
--kit-tooltip-border-color: #212121fa;
--kit-tooltip-border-width: 0px;
--kit-tooltip-arrow-width: 0.7em;
--math-sqrt-2: 1.414213562373095;
}
.tooltip {
--popper-border-color: #212121fa;
--popper-border-width: 0em;
--popper-arrow-width: 0.7em;
--popper-color: #ffffff;
--popper-content-color: #212121fa;
position: absolute;
z-index: 1070;
display: block;
@@ -26,7 +23,7 @@
word-spacing: normal;
white-space: normal;
line-break: auto;
font-size: var(--kit-tooltip-font-size);
font-size: var(--popper-font-size);
word-wrap: break-word;
opacity: 0;
}
@@ -35,145 +32,13 @@
opacity: 0.9;
}
.tooltip .tooltip-arrow {
position: absolute;
display: block;
width: 0.8rem;
height: 0.4rem;
overflow: hidden;
}
.tooltip .tooltip-arrow::before {
border-width: var(--kit-tooltip-border-width) var(--kit-tooltip-border-width) 0px 0px;
position: absolute;
content: "";
border-color: transparent;
border-style: solid;
width: var(--kit-tooltip-arrow-width);
height: var(--kit-tooltip-arrow-width);
background-color: var(--kit-tooltip-content-color);
box-shadow: 0px 0px 4px -2px var(--kit-tooltip-content-color);
}
/*top*/
.kit-tooltip-top, .kit-tooltip-auto[x-placement^="top"] {
padding: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1)) 0;
}
.kit-tooltip-top .tooltip-arrow, .kit-tooltip-auto[x-placement^="top"] .tooltip-arrow {
bottom: 0;
width: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
height: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
/* left: 50% !important; */
/* transform: translate(-50%, 0); */
}
.kit-tooltip-top .tooltip-arrow::before, .kit-tooltip-auto[x-placement^="top"] .tooltip-arrow::before {
bottom: 0;
left: 50%;
transform: rotate(
225deg
) translate(0, 100%);
transform-origin: 0 100%;
border-left-color: var(
--kit-tooltip-border-color);
border-top-color: var(
--kit-tooltip-border-color);
border-width: var(--kit-tooltip-border-width) 0 0 var(--kit-tooltip-border-width);
}
/*right*/
.kit-tooltip-right, .kit-tooltip-auto[x-placement^="right"], .kit-tooltip-end {
padding: 0 calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1));
}
.kit-tooltip-right .arrow,
.kit-tooltip-auto[x-placement^="right"] .arrow,
.kit-tooltip-end .tooltip-arrow {
left: 0;
width: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
height: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
top: 50% !important;
transform: translate(0px, -50%) !important;
}
.kit-tooltip-right .arrow::before,
.kit-tooltip-auto[x-placement^="right"] .arrow::before,
.kit-tooltip-end .tooltip-arrow::before {
left: 0px;
top: 50%;
transform: rotate(
225deg
) translate(25%, -50%);
transform-origin: 75% 0;
border-right-color: var(
--kit-tooltip-border-color);
border-top-color: var(
--kit-tooltip-border-color);
}
/*bottom*/
.kit-tooltip-bottom, .kit-tooltip-auto[x-placement^="bottom"] {
padding: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1)) 0;
}
.kit-tooltip-bottom .tooltip-arrow, .kit-tooltip-auto[x-placement^="bottom"] .arrow {
top: 0;
width: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
height: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
/*left: 50% !important;*/
/*transform: translate(-50%, 0);*/
}
.kit-tooltip-bottom .tooltip-arrow::before, .kit-tooltip-auto[x-placement^="bottom"] .arrow::before {
top: 0;
left: 50%;
transform: rotate(
45deg
) translate(0, 0);
transform-origin: 0 0;
border-left-color: var(
--kit-tooltip-border-color);
border-top-color: var(
--kit-tooltip-border-color);
border-width: var(--kit-tooltip-border-width) 0 0 var(--kit-tooltip-border-width);
}
/*left*/
.kit-tooltip-left,
.kit-tooltip-auto[x-placement^="left"],
.kit-tooltip-start {
padding: 0 calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1));
}
.kit-tooltip-left .arrow, .kit-tooltip-auto[x-placement^="left"] .arrow,
.kit-tooltip-start .tooltip-arrow {
right: 0;
width: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
height: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
top: 50% !important;
transform: translate(0px, -50%) !important;
}
.kit-tooltip-left .arrow::before,
.kit-tooltip-auto[x-placement^="left"] .arrow::before,
.kit-tooltip-start .tooltip-arrow::before {
right: 0;
top: 50%;
transform: rotate(
45deg
) translate(-25%, -50%);
transform-origin: 25% 0;
border-right-color: var(
--kit-tooltip-border-color);
border-top-color: var(
--kit-tooltip-border-color);
}
.tooltip-inner {
max-width: 200px;
padding: 0.25rem 0.5rem;
color: var(--kit-tooltip-color);
color: var(--popper-color);
text-align: center;
background-color: var(--kit-tooltip-content-color);
background-color: var(--popper-content-color);
border-radius: 0.25rem;
border: var(--kit-tooltip-border-width) solid var(--kit-tooltip-border-color);
box-shadow: 0px 0px 5px -1px var(--kit-tooltip-content-color);
border: var(--popper-border-width) solid var(--popper-border-color);
box-shadow: 0px 0px 5px -1px var(--popper-content-color);
}
+8 -7
View File
@@ -25,9 +25,9 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
*/
const NAME = 'tooltip'
const DATA_KEY = 'kit.tooltip'
const DATA_KEY = 'bs.tooltip'
const EVENT_KEY = `.${DATA_KEY}`
const CLASS_PREFIX = 'kit-tooltip'
const CLASS_PREFIX = 'bs-tooltip'
const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g')
const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])
@@ -62,7 +62,7 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
const Default = {
animation: true,
template: '<div class="tooltip" role="tooltip">' +
'<div class="tooltip-arrow"></div>' +
'<div class="tooltip-arrow" data-popper-arrow="true"></div>' +
'<div class="tooltip-inner"></div>' +
'</div>',
trigger: 'hover focus',
@@ -76,7 +76,7 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
fallbackPlacements: ['top', 'right', 'bottom', 'left'],
boundary: 'clippingParents',
customClass: '',
sanitize: true,
sanitize: false,
sanitizeFn: null,
allowList: DefaultAllowlist,
popperConfig: null
@@ -115,6 +115,7 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
* ------------------------------------------------------------------------
*/
/** @class kitTooltip */
class Tooltip extends BaseComponent {
constructor(element, config) {
if (typeof Popper === 'undefined') {
@@ -405,7 +406,7 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
}
getTitle() {
let title = this._element.getAttribute('data-kit-original-title')
let title = this._element.getAttribute('data-bs-original-title')
if (!title) {
title = typeof this._config.title === 'function' ?
@@ -552,10 +553,10 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
_fixTitle() {
const title = this._element.getAttribute('title')
const originalTitleType = typeof this._element.getAttribute('data-kit-original-title')
const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')
if (title || originalTitleType !== 'string') {
this._element.setAttribute('data-kit-original-title', title || '')
this._element.setAttribute('data-bs-original-title', title || '')
if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {
this._element.setAttribute('aria-label', title)
}
-171
View File
@@ -1,171 +0,0 @@
:root {
--kit-tooltip-font-size: 0.8em;
--kit-tooltip-color: #ffffff;
--kit-tooltip-content-color: #212121fa;
--kit-tooltip-border-color: #212121fa;
--kit-tooltip-border-width: 0px;
--kit-tooltip-arrow-width: 0.8em;
--math-sqrt-2: 1.414213562373095;
}
.tooltip {
position: absolute;
z-index: 1070;
display: block;
margin: 0;
font-family: inherit;
font-style: normal;
font-weight: 400;
line-height: 1.5;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
letter-spacing: normal;
word-break: normal;
word-spacing: normal;
white-space: normal;
line-break: auto;
font-size: var(--kit-tooltip-font-size);
word-wrap: break-word;
opacity: 0;
}
.tooltip.show {
opacity: 0.9;
}
.tooltip .arrow {
position: absolute;
display: block;
width: 0.8rem;
height: 0.4rem;
overflow: hidden;
}
.tooltip .arrow::before {
border-width: var(--kit-tooltip-border-width) var(--kit-tooltip-border-width) 0px 0px;
position: absolute;
content: "";
border-color: transparent;
border-style: solid;
width: var(--kit-tooltip-arrow-width);
height: var(--kit-tooltip-arrow-width);
background-color: var(--kit-tooltip-content-color);
box-shadow: 0px 0px 4px -2px var(--kit-tooltip-content-color);
}
.kit-tooltip-top, .kit-tooltip-auto[x-placement^="top"] {
padding: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1)) 0;
}
.kit-tooltip-top .arrow, .kit-tooltip-auto[x-placement^="top"] .arrow {
bottom: 0;
width: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
height: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
/* left: 50% !important; */
/* transform: translate(-50%, 0); */
}
.kit-tooltip-top .arrow::before, .kit-tooltip-auto[x-placement^="top"] .arrow::before {
bottom: 0;
left: 50%;
transform: rotate(
225deg
) translate(0, 100%);
transform-origin: 0 100%;
border-left-color: var(
--kit-tooltip-border-color);
border-top-color: var(
--kit-tooltip-border-color);
border-width: var(--kit-tooltip-border-width) 0 0 var(--kit-tooltip-border-width);
}
.kit-tooltip-right, .kit-tooltip-auto[x-placement^="right"] {
padding: 0 calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1));
}
.kit-tooltip-right .arrow, .kit-tooltip-auto[x-placement^="right"] .arrow {
left: 0;
width: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
height: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
top: 50% !important;
transform: translate(0px, -50%);
}
.kit-tooltip-right .arrow::before, .kit-tooltip-auto[x-placement^="right"] .arrow::before {
left: 0px;
top: 50%;
transform: rotate(
225deg
) translate(25%, -50%);
transform-origin: 75% 0;
border-right-color: var(
--kit-tooltip-border-color);
border-top-color: var(
--kit-tooltip-border-color);
}
.kit-tooltip-bottom, .kit-tooltip-auto[x-placement^="bottom"] {
padding: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1)) 0;
}
.kit-tooltip-bottom .arrow, .kit-tooltip-auto[x-placement^="bottom"] .arrow {
top: 0;
width: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
height: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
/*left: 50% !important;*/
/*transform: translate(-50%, 0);*/
}
.kit-tooltip-bottom .arrow::before, .kit-tooltip-auto[x-placement^="bottom"] .arrow::before {
top: 0;
left: 50%;
transform: rotate(
45deg
) translate(0, 0);
transform-origin: 0 0;
border-left-color: var(
--kit-tooltip-border-color);
border-top-color: var(
--kit-tooltip-border-color);
border-width: var(--kit-tooltip-border-width) 0 0 var(--kit-tooltip-border-width);
}
::before {}
.kit-tooltip-left, .kit-tooltip-auto[x-placement^="left"] {
padding: 0 calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1));
}
.kit-tooltip-left .arrow, .kit-tooltip-auto[x-placement^="left"] .arrow {
right: 0;
width: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
height: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
top: 50% !important;
transform: translate(0px, -50%);
}
.kit-tooltip-left .arrow::before, .kit-tooltip-auto[x-placement^="left"] .arrow::before {
right: 0;
top: 50%;
transform: rotate(
45deg
) translate(-25%, -50%);
transform-origin: 25% 0;
border-right-color: var(
--kit-tooltip-border-color);
border-top-color: var(
--kit-tooltip-border-color);
}
.tooltip-inner {
max-width: 200px;
padding: 0.25rem 0.5rem;
color: var(--kit-tooltip-color);
text-align: center;
background-color: var(--kit-tooltip-content-color);
border-radius: 0.25rem;
border: var(--kit-tooltip-border-width) solid var(--kit-tooltip-border-color);
box-shadow: 0px 0px 5px -1px var(--kit-tooltip-content-color);
}
File diff suppressed because it is too large Load Diff