/** * DO NOT EDIT THIS FILE. * See the following change record for more information, * https://www.drupal.org/node/2815083 * @preserve **/ (function ($, _ref) { var tabbable = _ref.tabbable, isTabbable = _ref.isTabbable; $.widget('ui.dialog', $.ui.dialog, { options: { buttonClass: 'button', buttonPrimaryClass: 'button--primary' }, _createButtons: function _createButtons() { var opts = this.options; var primaryIndex; var index; var il = opts.buttons.length; for (index = 0; index < il; index++) { if (opts.buttons[index].primary && opts.buttons[index].primary === true) { primaryIndex = index; delete opts.buttons[index].primary; break; } } this._super(); var $buttons = this.uiButtonSet.children().addClass(opts.buttonClass); if (typeof primaryIndex !== 'undefined') { $buttons.eq(index).addClass(opts.buttonPrimaryClass); } }, _focusTabbable: function _focusTabbable() { var hasFocus = this._focusedElement ? this._focusedElement.get(0) : null; if (!hasFocus) { hasFocus = this.element.find('[autofocus]').get(0); } if (!hasFocus) { var $elements = [this.element, this.uiDialogButtonPane]; for (var i = 0; i < $elements.length; i++) { var element = $elements[i].get(0); if (element) { var elementTabbable = tabbable(element); hasFocus = elementTabbable.length ? elementTabbable[0] : null; } if (hasFocus) { break; } } } if (!hasFocus) { var closeBtn = this.uiDialogTitlebarClose.get(0); hasFocus = closeBtn && isTabbable(closeBtn) ? closeBtn : null; } if (!hasFocus) { hasFocus = this.uiDialog.get(0); } $(hasFocus).eq(0).trigger('focus'); } }); })(jQuery, window.tabbable);