paragraphs-8.x-1.11/js/paragraphs.actions.js
js/paragraphs.actions.js
/**
* @file
* Paragraphs actions JS code for paragraphs actions button.
*/
(function ($, Drupal, once) {
'use strict';
/**
* Process paragraph_actions elements.
*
* @type {Drupal~behavior}
*
* @prop {Drupal~behaviorAttach} attach
* Attaches paragraphsActions behaviors.
*/
Drupal.behaviors.paragraphsActions = {
attach: function (context, settings) {
var $actionsElement = $(once('paragraphs-dropdown', '.paragraphs-dropdown', context));
// Attach event handlers to toggle button.
$actionsElement.each(function () {
var $this = $(this);
var $toggle = $this.find('.paragraphs-dropdown-toggle');
$toggle.on('click', function (e) {
e.preventDefault();
$this.toggleClass('open');
});
$this.on('focusout', function (e) {
setTimeout(function () {
if ($this.has(document.activeElement).length == 0) {
// The focus left the action button group, hide actions.
$this.removeClass('open');
}
}, 1);
});
});
}
};
})(jQuery, Drupal, once);
