bootstrap 4.6.1 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +2 -1
  3. data/README.md +7 -4
  4. data/assets/javascripts/bootstrap/alert.js +192 -112
  5. data/assets/javascripts/bootstrap/base-component.js +63 -0
  6. data/assets/javascripts/bootstrap/button.js +96 -176
  7. data/assets/javascripts/bootstrap/carousel.js +470 -355
  8. data/assets/javascripts/bootstrap/collapse.js +377 -221
  9. data/assets/javascripts/bootstrap/dom/data.js +68 -0
  10. data/assets/javascripts/bootstrap/dom/event-handler.js +322 -0
  11. data/assets/javascripts/bootstrap/dom/manipulator.js +88 -0
  12. data/assets/javascripts/bootstrap/dom/selector-engine.js +85 -0
  13. data/assets/javascripts/bootstrap/dropdown.js +470 -351
  14. data/assets/javascripts/bootstrap/modal.js +611 -435
  15. data/assets/javascripts/bootstrap/offcanvas.js +671 -0
  16. data/assets/javascripts/bootstrap/popover.js +137 -165
  17. data/assets/javascripts/bootstrap/scrollspy.js +249 -191
  18. data/assets/javascripts/bootstrap/tab.js +241 -141
  19. data/assets/javascripts/bootstrap/toast.js +221 -153
  20. data/assets/javascripts/bootstrap/tooltip.js +649 -483
  21. data/assets/javascripts/bootstrap-global-this-define.js +6 -0
  22. data/assets/javascripts/bootstrap-global-this-undefine.js +2 -0
  23. data/assets/javascripts/bootstrap-sprockets.js +14 -7
  24. data/assets/javascripts/bootstrap.js +3272 -2586
  25. data/assets/javascripts/bootstrap.min.js +2 -2
  26. data/assets/stylesheets/_bootstrap-grid.scss +51 -16
  27. data/assets/stylesheets/_bootstrap-reboot.scss +4 -1
  28. data/assets/stylesheets/_bootstrap.scss +16 -8
  29. data/assets/stylesheets/bootstrap/_accordion.scss +118 -0
  30. data/assets/stylesheets/bootstrap/_alert.scss +15 -10
  31. data/assets/stylesheets/bootstrap/_badge.scss +2 -27
  32. data/assets/stylesheets/bootstrap/_breadcrumb.scss +3 -17
  33. data/assets/stylesheets/bootstrap/_button-group.scss +21 -45
  34. data/assets/stylesheets/bootstrap/_buttons.scss +29 -60
  35. data/assets/stylesheets/bootstrap/_card.scss +20 -91
  36. data/assets/stylesheets/bootstrap/_carousel.scss +64 -35
  37. data/assets/stylesheets/bootstrap/_close.scss +30 -30
  38. data/assets/stylesheets/bootstrap/_containers.scss +41 -0
  39. data/assets/stylesheets/bootstrap/_dropdown.scss +84 -36
  40. data/assets/stylesheets/bootstrap/_forms.scss +9 -347
  41. data/assets/stylesheets/bootstrap/_functions.scss +84 -69
  42. data/assets/stylesheets/bootstrap/_grid.scss +3 -54
  43. data/assets/stylesheets/bootstrap/_helpers.scss +7 -0
  44. data/assets/stylesheets/bootstrap/_images.scss +1 -1
  45. data/assets/stylesheets/bootstrap/_list-group.scss +28 -8
  46. data/assets/stylesheets/bootstrap/_mixins.scss +8 -13
  47. data/assets/stylesheets/bootstrap/_modal.scss +45 -57
  48. data/assets/stylesheets/bootstrap/_nav.scss +23 -4
  49. data/assets/stylesheets/bootstrap/_navbar.scss +45 -71
  50. data/assets/stylesheets/bootstrap/_offcanvas.scss +77 -0
  51. data/assets/stylesheets/bootstrap/_pagination.scss +10 -20
  52. data/assets/stylesheets/bootstrap/_popover.scss +24 -36
  53. data/assets/stylesheets/bootstrap/_progress.scss +5 -4
  54. data/assets/stylesheets/bootstrap/_reboot.scss +316 -179
  55. data/assets/stylesheets/bootstrap/_root.scss +5 -8
  56. data/assets/stylesheets/bootstrap/_spinners.scss +9 -5
  57. data/assets/stylesheets/bootstrap/_tables.scss +79 -114
  58. data/assets/stylesheets/bootstrap/_toasts.scss +20 -15
  59. data/assets/stylesheets/bootstrap/_tooltip.scss +21 -21
  60. data/assets/stylesheets/bootstrap/_transitions.scss +2 -1
  61. data/assets/stylesheets/bootstrap/_type.scss +38 -59
  62. data/assets/stylesheets/bootstrap/_utilities.scss +594 -18
  63. data/assets/stylesheets/bootstrap/_variables.scss +801 -485
  64. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
  65. data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +61 -0
  66. data/assets/stylesheets/bootstrap/forms/_form-check.scss +152 -0
  67. data/assets/stylesheets/bootstrap/forms/_form-control.scss +219 -0
  68. data/assets/stylesheets/bootstrap/forms/_form-range.scss +91 -0
  69. data/assets/stylesheets/bootstrap/forms/_form-select.scss +67 -0
  70. data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
  71. data/assets/stylesheets/bootstrap/forms/_input-group.scss +121 -0
  72. data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
  73. data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
  74. data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
  75. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
  76. data/assets/stylesheets/bootstrap/helpers/_position.scss +30 -0
  77. data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
  78. data/assets/stylesheets/bootstrap/helpers/_stretched-link.scss +15 -0
  79. data/assets/stylesheets/bootstrap/helpers/_text-truncation.scss +7 -0
  80. data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
  81. data/assets/stylesheets/bootstrap/mixins/_alert.scss +3 -5
  82. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +10 -8
  83. data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
  84. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +14 -10
  85. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +71 -48
  86. data/assets/stylesheets/bootstrap/mixins/_caret.scss +10 -8
  87. data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
  88. data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
  89. data/assets/stylesheets/bootstrap/mixins/_container.scss +9 -0
  90. data/assets/stylesheets/bootstrap/mixins/_forms.scss +39 -97
  91. data/assets/stylesheets/bootstrap/mixins/_gradients.scss +13 -11
  92. data/assets/stylesheets/bootstrap/mixins/_grid.scss +90 -34
  93. data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -21
  94. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +5 -2
  95. data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
  96. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +17 -8
  97. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +2 -2
  98. data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
  99. data/assets/stylesheets/bootstrap/mixins/_transition.scss +1 -1
  100. data/assets/stylesheets/bootstrap/mixins/_utilities.scss +68 -0
  101. data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +29 -0
  102. data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
  103. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +214 -130
  104. data/bootstrap.gemspec +1 -3
  105. data/lib/bootstrap/version.rb +2 -2
  106. data/tasks/updater/js.rb +20 -5
  107. data/tasks/updater/network.rb +7 -1
  108. data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
  109. data/test/dummy_rails/app/views/layouts/application.html.erb +3 -1
  110. data/test/dummy_rails/app/views/pages/root.html +89 -0
  111. data/test/dummy_rails/config/application.rb +0 -3
  112. data/test/gemfiles/rails_6_1.gemfile +7 -0
  113. metadata +45 -73
  114. data/assets/javascripts/bootstrap/util.js +0 -189
  115. data/assets/stylesheets/bootstrap/_code.scss +0 -48
  116. data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -526
  117. data/assets/stylesheets/bootstrap/_input-group.scss +0 -211
  118. data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
  119. data/assets/stylesheets/bootstrap/_media.scss +0 -8
  120. data/assets/stylesheets/bootstrap/_print.scss +0 -132
  121. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -23
  122. data/assets/stylesheets/bootstrap/mixins/_badge.scss +0 -17
  123. data/assets/stylesheets/bootstrap/mixins/_float.scss +0 -14
  124. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -80
  125. data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
  126. data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -11
  127. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -34
  128. data/assets/stylesheets/bootstrap/mixins/_size.scss +0 -7
  129. data/assets/stylesheets/bootstrap/mixins/_table-row.scss +0 -39
  130. data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +0 -17
  131. data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +0 -11
  132. data/assets/stylesheets/bootstrap/mixins/_visibility.scss +0 -8
  133. data/assets/stylesheets/bootstrap/utilities/_align.scss +0 -8
  134. data/assets/stylesheets/bootstrap/utilities/_background.scss +0 -19
  135. data/assets/stylesheets/bootstrap/utilities/_borders.scss +0 -75
  136. data/assets/stylesheets/bootstrap/utilities/_display.scss +0 -26
  137. data/assets/stylesheets/bootstrap/utilities/_embed.scss +0 -39
  138. data/assets/stylesheets/bootstrap/utilities/_flex.scss +0 -51
  139. data/assets/stylesheets/bootstrap/utilities/_float.scss +0 -11
  140. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +0 -5
  141. data/assets/stylesheets/bootstrap/utilities/_overflow.scss +0 -5
  142. data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -32
  143. data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +0 -11
  144. data/assets/stylesheets/bootstrap/utilities/_shadows.scss +0 -6
  145. data/assets/stylesheets/bootstrap/utilities/_sizing.scss +0 -20
  146. data/assets/stylesheets/bootstrap/utilities/_spacing.scss +0 -73
  147. data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +0 -19
  148. data/assets/stylesheets/bootstrap/utilities/_text.scss +0 -72
  149. data/assets/stylesheets/bootstrap/utilities/_visibility.scss +0 -13
  150. data/test/dummy_rails/app/views/pages/root.html.slim +0 -58
@@ -1,225 +1,145 @@
1
1
  /*!
2
- * Bootstrap button.js v4.6.1 (https://getbootstrap.com/)
2
+ * Bootstrap button.js v5.0.0 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
4
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
7
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery')) :
8
- typeof define === 'function' && define.amd ? define(['jquery'], factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.jQuery));
10
- })(this, (function ($) { 'use strict';
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./base-component.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './base-component'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.Data, global.EventHandler, global.Base));
10
+ }(this, (function (Data, EventHandler, BaseComponent) { 'use strict';
11
11
 
12
12
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
13
 
14
- var $__default = /*#__PURE__*/_interopDefaultLegacy($);
14
+ var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);
15
+ var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
16
+ var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
15
17
 
16
- function _defineProperties(target, props) {
17
- for (var i = 0; i < props.length; i++) {
18
- var descriptor = props[i];
19
- descriptor.enumerable = descriptor.enumerable || false;
20
- descriptor.configurable = true;
21
- if ("value" in descriptor) descriptor.writable = true;
22
- Object.defineProperty(target, descriptor.key, descriptor);
18
+ /**
19
+ * --------------------------------------------------------------------------
20
+ * Bootstrap (v5.0.0): util/index.js
21
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
22
+ * --------------------------------------------------------------------------
23
+ */
24
+
25
+ const getjQuery = () => {
26
+ const {
27
+ jQuery
28
+ } = window;
29
+
30
+ if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
31
+ return jQuery;
23
32
  }
24
- }
25
33
 
26
- function _createClass(Constructor, protoProps, staticProps) {
27
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
28
- if (staticProps) _defineProperties(Constructor, staticProps);
29
- return Constructor;
30
- }
34
+ return null;
35
+ };
36
+
37
+ const onDOMContentLoaded = callback => {
38
+ if (document.readyState === 'loading') {
39
+ document.addEventListener('DOMContentLoaded', callback);
40
+ } else {
41
+ callback();
42
+ }
43
+ };
44
+
45
+ const defineJQueryPlugin = (name, plugin) => {
46
+ onDOMContentLoaded(() => {
47
+ const $ = getjQuery();
48
+ /* istanbul ignore if */
31
49
 
50
+ if ($) {
51
+ const JQUERY_NO_CONFLICT = $.fn[name];
52
+ $.fn[name] = plugin.jQueryInterface;
53
+ $.fn[name].Constructor = plugin;
54
+
55
+ $.fn[name].noConflict = () => {
56
+ $.fn[name] = JQUERY_NO_CONFLICT;
57
+ return plugin.jQueryInterface;
58
+ };
59
+ }
60
+ });
61
+ };
62
+
63
+ /**
64
+ * --------------------------------------------------------------------------
65
+ * Bootstrap (v5.0.0): button.js
66
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
67
+ * --------------------------------------------------------------------------
68
+ */
32
69
  /**
70
+ * ------------------------------------------------------------------------
33
71
  * Constants
72
+ * ------------------------------------------------------------------------
34
73
  */
35
74
 
36
- var NAME = 'button';
37
- var VERSION = '4.6.1';
38
- var DATA_KEY = 'bs.button';
39
- var EVENT_KEY = "." + DATA_KEY;
40
- var DATA_API_KEY = '.data-api';
41
- var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME];
42
- var CLASS_NAME_ACTIVE = 'active';
43
- var CLASS_NAME_BUTTON = 'btn';
44
- var CLASS_NAME_FOCUS = 'focus';
45
- var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY;
46
- var EVENT_FOCUS_BLUR_DATA_API = "focus" + EVENT_KEY + DATA_API_KEY + " " + ("blur" + EVENT_KEY + DATA_API_KEY);
47
- var EVENT_LOAD_DATA_API = "load" + EVENT_KEY + DATA_API_KEY;
48
- var SELECTOR_DATA_TOGGLE_CARROT = '[data-toggle^="button"]';
49
- var SELECTOR_DATA_TOGGLES = '[data-toggle="buttons"]';
50
- var SELECTOR_DATA_TOGGLE = '[data-toggle="button"]';
51
- var SELECTOR_DATA_TOGGLES_BUTTONS = '[data-toggle="buttons"] .btn';
52
- var SELECTOR_INPUT = 'input:not([type="hidden"])';
53
- var SELECTOR_ACTIVE = '.active';
54
- var SELECTOR_BUTTON = '.btn';
75
+ const NAME = 'button';
76
+ const DATA_KEY = 'bs.button';
77
+ const EVENT_KEY = `.${DATA_KEY}`;
78
+ const DATA_API_KEY = '.data-api';
79
+ const CLASS_NAME_ACTIVE = 'active';
80
+ const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="button"]';
81
+ const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`;
55
82
  /**
56
- * Class definition
83
+ * ------------------------------------------------------------------------
84
+ * Class Definition
85
+ * ------------------------------------------------------------------------
57
86
  */
58
87
 
59
- var Button = /*#__PURE__*/function () {
60
- function Button(element) {
61
- this._element = element;
62
- this.shouldAvoidTriggerChange = false;
63
- } // Getters
64
-
65
-
66
- var _proto = Button.prototype;
67
-
68
- // Public
69
- _proto.toggle = function toggle() {
70
- var triggerChangeEvent = true;
71
- var addAriaPressed = true;
72
- var rootElement = $__default["default"](this._element).closest(SELECTOR_DATA_TOGGLES)[0];
73
-
74
- if (rootElement) {
75
- var input = this._element.querySelector(SELECTOR_INPUT);
76
-
77
- if (input) {
78
- if (input.type === 'radio') {
79
- if (input.checked && this._element.classList.contains(CLASS_NAME_ACTIVE)) {
80
- triggerChangeEvent = false;
81
- } else {
82
- var activeElement = rootElement.querySelector(SELECTOR_ACTIVE);
83
-
84
- if (activeElement) {
85
- $__default["default"](activeElement).removeClass(CLASS_NAME_ACTIVE);
86
- }
87
- }
88
- }
89
-
90
- if (triggerChangeEvent) {
91
- // if it's not a radio button or checkbox don't add a pointless/invalid checked property to the input
92
- if (input.type === 'checkbox' || input.type === 'radio') {
93
- input.checked = !this._element.classList.contains(CLASS_NAME_ACTIVE);
94
- }
95
-
96
- if (!this.shouldAvoidTriggerChange) {
97
- $__default["default"](input).trigger('change');
98
- }
99
- }
100
-
101
- input.focus();
102
- addAriaPressed = false;
103
- }
104
- }
105
-
106
- if (!(this._element.hasAttribute('disabled') || this._element.classList.contains('disabled'))) {
107
- if (addAriaPressed) {
108
- this._element.setAttribute('aria-pressed', !this._element.classList.contains(CLASS_NAME_ACTIVE));
109
- }
88
+ class Button extends BaseComponent__default['default'] {
89
+ // Getters
90
+ static get DATA_KEY() {
91
+ return DATA_KEY;
92
+ } // Public
110
93
 
111
- if (triggerChangeEvent) {
112
- $__default["default"](this._element).toggleClass(CLASS_NAME_ACTIVE);
113
- }
114
- }
115
- };
116
94
 
117
- _proto.dispose = function dispose() {
118
- $__default["default"].removeData(this._element, DATA_KEY);
119
- this._element = null;
95
+ toggle() {
96
+ // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method
97
+ this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE));
120
98
  } // Static
121
- ;
122
99
 
123
- Button._jQueryInterface = function _jQueryInterface(config, avoidTriggerChange) {
100
+
101
+ static jQueryInterface(config) {
124
102
  return this.each(function () {
125
- var $element = $__default["default"](this);
126
- var data = $element.data(DATA_KEY);
103
+ let data = Data__default['default'].get(this, DATA_KEY);
127
104
 
128
105
  if (!data) {
129
106
  data = new Button(this);
130
- $element.data(DATA_KEY, data);
131
107
  }
132
108
 
133
- data.shouldAvoidTriggerChange = avoidTriggerChange;
134
-
135
109
  if (config === 'toggle') {
136
110
  data[config]();
137
111
  }
138
112
  });
139
- };
140
-
141
- _createClass(Button, null, [{
142
- key: "VERSION",
143
- get: function get() {
144
- return VERSION;
145
- }
146
- }]);
113
+ }
147
114
 
148
- return Button;
149
- }();
115
+ }
150
116
  /**
151
- * Data API implementation
117
+ * ------------------------------------------------------------------------
118
+ * Data Api implementation
119
+ * ------------------------------------------------------------------------
152
120
  */
153
121
 
154
122
 
155
- $__default["default"](document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
156
- var button = event.target;
157
- var initialButton = button;
123
+ EventHandler__default['default'].on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
124
+ event.preventDefault();
125
+ const button = event.target.closest(SELECTOR_DATA_TOGGLE);
126
+ let data = Data__default['default'].get(button, DATA_KEY);
158
127
 
159
- if (!$__default["default"](button).hasClass(CLASS_NAME_BUTTON)) {
160
- button = $__default["default"](button).closest(SELECTOR_BUTTON)[0];
128
+ if (!data) {
129
+ data = new Button(button);
161
130
  }
162
131
 
163
- if (!button || button.hasAttribute('disabled') || button.classList.contains('disabled')) {
164
- event.preventDefault(); // work around Firefox bug #1540995
165
- } else {
166
- var inputBtn = button.querySelector(SELECTOR_INPUT);
167
-
168
- if (inputBtn && (inputBtn.hasAttribute('disabled') || inputBtn.classList.contains('disabled'))) {
169
- event.preventDefault(); // work around Firefox bug #1540995
170
-
171
- return;
172
- }
173
-
174
- if (initialButton.tagName === 'INPUT' || button.tagName !== 'LABEL') {
175
- Button._jQueryInterface.call($__default["default"](button), 'toggle', initialButton.tagName === 'INPUT');
176
- }
177
- }
178
- }).on(EVENT_FOCUS_BLUR_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
179
- var button = $__default["default"](event.target).closest(SELECTOR_BUTTON)[0];
180
- $__default["default"](button).toggleClass(CLASS_NAME_FOCUS, /^focus(in)?$/.test(event.type));
181
- });
182
- $__default["default"](window).on(EVENT_LOAD_DATA_API, function () {
183
- // ensure correct active class is set to match the controls' actual values/states
184
- // find all checkboxes/readio buttons inside data-toggle groups
185
- var buttons = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLES_BUTTONS));
186
-
187
- for (var i = 0, len = buttons.length; i < len; i++) {
188
- var button = buttons[i];
189
- var input = button.querySelector(SELECTOR_INPUT);
190
-
191
- if (input.checked || input.hasAttribute('checked')) {
192
- button.classList.add(CLASS_NAME_ACTIVE);
193
- } else {
194
- button.classList.remove(CLASS_NAME_ACTIVE);
195
- }
196
- } // find all button toggles
197
-
198
-
199
- buttons = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLE));
200
-
201
- for (var _i = 0, _len = buttons.length; _i < _len; _i++) {
202
- var _button = buttons[_i];
203
-
204
- if (_button.getAttribute('aria-pressed') === 'true') {
205
- _button.classList.add(CLASS_NAME_ACTIVE);
206
- } else {
207
- _button.classList.remove(CLASS_NAME_ACTIVE);
208
- }
209
- }
132
+ data.toggle();
210
133
  });
211
134
  /**
135
+ * ------------------------------------------------------------------------
212
136
  * jQuery
137
+ * ------------------------------------------------------------------------
138
+ * add .Button to jQuery only if jQuery is present
213
139
  */
214
140
 
215
- $__default["default"].fn[NAME] = Button._jQueryInterface;
216
- $__default["default"].fn[NAME].Constructor = Button;
217
-
218
- $__default["default"].fn[NAME].noConflict = function () {
219
- $__default["default"].fn[NAME] = JQUERY_NO_CONFLICT;
220
- return Button._jQueryInterface;
221
- };
141
+ defineJQueryPlugin(NAME, Button);
222
142
 
223
143
  return Button;
224
144
 
225
- }));
145
+ })));