Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/bootstrap.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'js/dist/button.js')
-rw-r--r--js/dist/button.js83
1 files changed, 11 insertions, 72 deletions
diff --git a/js/dist/button.js b/js/dist/button.js
index 1921bfef50..eb6e88cd22 100644
--- a/js/dist/button.js
+++ b/js/dist/button.js
@@ -1,22 +1,21 @@
/*!
* Bootstrap button.js v5.0.0-alpha1 (https://getbootstrap.com/)
* Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/selector-engine.js')) :
- typeof define === 'function' && define.amd ? define(['./dom/data.js', './dom/event-handler.js', './dom/selector-engine.js'], factory) :
- (global = global || self, global.Button = factory(global.Data, global.EventHandler, global.SelectorEngine));
-}(this, (function (Data, EventHandler, SelectorEngine) { 'use strict';
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js')) :
+ typeof define === 'function' && define.amd ? define(['./dom/data.js', './dom/event-handler.js'], factory) :
+ (global = global || self, global.Button = factory(global.Data, global.EventHandler));
+}(this, (function (Data, EventHandler) { 'use strict';
Data = Data && Object.prototype.hasOwnProperty.call(Data, 'default') ? Data['default'] : Data;
EventHandler = EventHandler && Object.prototype.hasOwnProperty.call(EventHandler, 'default') ? EventHandler['default'] : EventHandler;
- SelectorEngine = SelectorEngine && Object.prototype.hasOwnProperty.call(SelectorEngine, 'default') ? SelectorEngine['default'] : SelectorEngine;
/**
* --------------------------------------------------------------------------
* Bootstrap (v5.0.0-alpha1): util/index.js
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* --------------------------------------------------------------------------
*/
@@ -46,16 +45,8 @@
var EVENT_KEY = "." + DATA_KEY;
var DATA_API_KEY = '.data-api';
var CLASS_NAME_ACTIVE = 'active';
- var CLASS_NAME_DISABLED = 'disabled';
- var CLASS_NAME_FOCUS = 'focus';
- var SELECTOR_DATA_TOGGLE_CARROT = '[data-toggle^="button"]';
- var SELECTOR_DATA_TOGGLE = '[data-toggle="buttons"]';
- var SELECTOR_INPUT = 'input:not([type="hidden"])';
- var SELECTOR_ACTIVE = '.active';
- var SELECTOR_BUTTON = '.btn';
+ var SELECTOR_DATA_TOGGLE = '[data-toggle="button"]';
var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY;
- var EVENT_FOCUS_DATA_API = "focus" + EVENT_KEY + DATA_API_KEY;
- var EVENT_BLUR_DATA_API = "blur" + EVENT_KEY + DATA_API_KEY;
/**
* ------------------------------------------------------------------------
* Class Definition
@@ -73,46 +64,8 @@
// Public
_proto.toggle = function toggle() {
- var triggerChangeEvent = true;
- var addAriaPressed = true;
-
- var rootElement = this._element.closest(SELECTOR_DATA_TOGGLE);
-
- if (rootElement) {
- var input = SelectorEngine.findOne(SELECTOR_INPUT, this._element);
-
- if (input && input.type === 'radio') {
- if (input.checked && this._element.classList.contains(CLASS_NAME_ACTIVE)) {
- triggerChangeEvent = false;
- } else {
- var activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE, rootElement);
-
- if (activeElement) {
- activeElement.classList.remove(CLASS_NAME_ACTIVE);
- }
- }
-
- if (triggerChangeEvent) {
- if (input.hasAttribute('disabled') || rootElement.hasAttribute('disabled') || input.classList.contains(CLASS_NAME_DISABLED) || rootElement.classList.contains(CLASS_NAME_DISABLED)) {
- return;
- }
-
- input.checked = !this._element.classList.contains(CLASS_NAME_ACTIVE);
- EventHandler.trigger(input, 'change');
- }
-
- input.focus();
- addAriaPressed = false;
- }
- }
-
- if (addAriaPressed) {
- this._element.setAttribute('aria-pressed', !this._element.classList.contains(CLASS_NAME_ACTIVE));
- }
-
- if (triggerChangeEvent) {
- this._element.classList.toggle(CLASS_NAME_ACTIVE);
- }
+ // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method
+ this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE));
};
_proto.dispose = function dispose() {
@@ -155,9 +108,9 @@
*/
- EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
+ EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
event.preventDefault();
- var button = event.target.closest(SELECTOR_BUTTON);
+ var button = event.target.closest(SELECTOR_DATA_TOGGLE);
var data = Data.getData(button, DATA_KEY);
if (!data) {
@@ -166,20 +119,6 @@
data.toggle();
});
- EventHandler.on(document, EVENT_FOCUS_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
- var button = event.target.closest(SELECTOR_BUTTON);
-
- if (button) {
- button.classList.add(CLASS_NAME_FOCUS);
- }
- });
- EventHandler.on(document, EVENT_BLUR_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
- var button = event.target.closest(SELECTOR_BUTTON);
-
- if (button) {
- button.classList.remove(CLASS_NAME_FOCUS);
- }
- });
var $ = getjQuery();
/**
* ------------------------------------------------------------------------