ldc-volena/resources/ts/modules/bsTooltips.ts
Jérémy Munsch f3d79cf7a9
Bump with laravel base controller phpstan and phpcs
Still TODO picture sizes for seeders
2024-02-12 15:51:31 +01:00

45 lines
1.4 KiB
TypeScript

import type * as bootstrap from "bootstrap";
let tooltips: Array<bootstrap.Tooltip> = [];
export default {
methods: {
/**
* Initialize all Bootstrap tooltips.
*/
initTooltips() {
this.disableBootstrapTooltip();
tooltips = [].slice
.call(document.querySelectorAll("[data-bs-toggle=\"tooltip\"]"))
.map(function (tooltipTriggerEl) {
return new window.bootstrap.Tooltip(tooltipTriggerEl, {
customClass: "large-tooltip",
delay: {
show: 1250,
hide: 0,
},
});
});
},
/**
* Disable all Bootstrap tooltips.
*/
disableBootstrapTooltip() {
tooltips.forEach((tooltip) => {
tooltip.disable();
tooltip.hide();
});
},
/**
* Close all Bootstrap tooltips.
*/
closeBootstrapTooltip() {
[].slice
.call(document.querySelectorAll("[data-bs-toggle=\"tooltip\"]"))
.forEach((tooltip: HTMLElement) => {
tooltip.blur();
window.bootstrap.Tooltip.getInstance(tooltip)?.hide();
});
},
},
};