File: /datos/www/fabricas.colombiatrade.com.co/web_https/modules/contrib/webform/js/webform.tooltip.js
/**
* @file
* JavaScript behaviors for Tippy.js tooltip integration.
*/
(function ($, Drupal) {
'use strict';
var tooltipDefaultOptions = {
delay: 100
};
// @see https://atomiks.github.io/tippyjs/v5/all-props/
// @see https://atomiks.github.io/tippyjs/v6/all-props/
Drupal.webform = Drupal.webform || {};
Drupal.webform.tooltipElement = Drupal.webform.tooltipElement || {};
Drupal.webform.tooltipElement.options = Drupal.webform.tooltipElement.options || tooltipDefaultOptions;
Drupal.webform.tooltipLink = Drupal.webform.tooltipLink || {};
Drupal.webform.tooltipLink.options = Drupal.webform.tooltipLink.options || tooltipDefaultOptions;
/**
* Initialize tooltip element support.
*
* @type {Drupal~behavior}
*/
Drupal.behaviors.webformTooltipElement = {
attach: function (context) {
if (!window.tippy) {
return;
}
$(context).find('.js-webform-tooltip-element').once('webform-tooltip-element').each(function () {
// Checkboxes, radios, buttons, toggles, etc… use fieldsets.
// @see \Drupal\webform\Plugin\WebformElement\OptionsBase::prepare
var $element = $(this);
var $description;
if ($element.is('fieldset')) {
$description = $element.find('> .fieldset-wrapper > .description > .webform-element-description.visually-hidden');
}
else {
$description = $element.find('> .description > .webform-element-description.visually-hidden');
}
var options = $.extend({
content: $description.html(),
allowHTML: true
}, Drupal.webform.tooltipElement.options);
tippy(this, options);
});
}
};
/**
* Initialize jQuery UI tooltip link support.
*
* @type {Drupal~behavior}
*/
Drupal.behaviors.webformTooltipLink = {
attach: function (context) {
if (!window.tippy) {
return;
}
$(context).find('.js-webform-tooltip-link').once('webform-tooltip-link').each(function () {
var title = $(this).attr('title');
if (title) {
var options = $.extend({
content: title,
allowHTML: true
}, Drupal.webform.tooltipLink.options);
tippy(this, options);
}
});
}
};
})(jQuery, Drupal);