bootstrap 5.1.3 → 5.3.5

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 (127) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +61 -0
  3. data/CHANGELOG.md +9 -0
  4. data/Gemfile +1 -0
  5. data/README.md +35 -14
  6. data/Rakefile +16 -5
  7. data/assets/javascripts/bootstrap/alert.js +22 -167
  8. data/assets/javascripts/bootstrap/base-component.js +34 -133
  9. data/assets/javascripts/bootstrap/button.js +19 -86
  10. data/assets/javascripts/bootstrap/carousel.js +209 -564
  11. data/assets/javascripts/bootstrap/collapse.js +78 -324
  12. data/assets/javascripts/bootstrap/dom/data.js +8 -14
  13. data/assets/javascripts/bootstrap/dom/event-handler.js +89 -174
  14. data/assets/javascripts/bootstrap/dom/manipulator.js +22 -39
  15. data/assets/javascripts/bootstrap/dom/selector-engine.js +47 -71
  16. data/assets/javascripts/bootstrap/dropdown.js +135 -420
  17. data/assets/javascripts/bootstrap/modal.js +115 -837
  18. data/assets/javascripts/bootstrap/offcanvas.js +93 -714
  19. data/assets/javascripts/bootstrap/popover.js +42 -130
  20. data/assets/javascripts/bootstrap/scrollspy.js +180 -296
  21. data/assets/javascripts/bootstrap/tab.js +197 -245
  22. data/assets/javascripts/bootstrap/toast.js +52 -276
  23. data/assets/javascripts/bootstrap/tooltip.js +283 -744
  24. data/assets/javascripts/bootstrap/util/backdrop.js +138 -0
  25. data/assets/javascripts/bootstrap/util/component-functions.js +41 -0
  26. data/assets/javascripts/bootstrap/util/config.js +67 -0
  27. data/assets/javascripts/bootstrap/util/focustrap.js +112 -0
  28. data/assets/javascripts/bootstrap/util/index.js +280 -0
  29. data/assets/javascripts/bootstrap/util/sanitizer.js +113 -0
  30. data/assets/javascripts/bootstrap/util/scrollbar.js +112 -0
  31. data/assets/javascripts/bootstrap/util/swipe.js +134 -0
  32. data/assets/javascripts/bootstrap/util/template-factory.js +150 -0
  33. data/assets/javascripts/bootstrap-global-this-define.js +1 -1
  34. data/assets/javascripts/bootstrap-sprockets.js +15 -6
  35. data/assets/javascripts/bootstrap.js +2278 -2831
  36. data/assets/javascripts/bootstrap.min.js +3 -3
  37. data/assets/stylesheets/_bootstrap-grid.scss +4 -9
  38. data/assets/stylesheets/_bootstrap-reboot.scss +4 -7
  39. data/assets/stylesheets/_bootstrap-utilities.scss +19 -0
  40. data/assets/stylesheets/_bootstrap.scss +5 -6
  41. data/assets/stylesheets/bootstrap/_accordion.scss +68 -33
  42. data/assets/stylesheets/bootstrap/_alert.scss +25 -14
  43. data/assets/stylesheets/bootstrap/_badge.scss +14 -5
  44. data/assets/stylesheets/bootstrap/_breadcrumb.scss +22 -10
  45. data/assets/stylesheets/bootstrap/_button-group.scss +12 -4
  46. data/assets/stylesheets/bootstrap/_buttons.scss +133 -28
  47. data/assets/stylesheets/bootstrap/_card.scss +61 -39
  48. data/assets/stylesheets/bootstrap/_carousel.scss +22 -25
  49. data/assets/stylesheets/bootstrap/_close.scss +36 -10
  50. data/assets/stylesheets/bootstrap/_containers.scss +1 -1
  51. data/assets/stylesheets/bootstrap/_dropdown.scss +86 -76
  52. data/assets/stylesheets/bootstrap/_functions.scss +10 -10
  53. data/assets/stylesheets/bootstrap/_grid.scss +9 -3
  54. data/assets/stylesheets/bootstrap/_helpers.scss +3 -0
  55. data/assets/stylesheets/bootstrap/_list-group.scss +81 -56
  56. data/assets/stylesheets/bootstrap/_maps.scss +174 -0
  57. data/assets/stylesheets/bootstrap/_mixins.scss +1 -2
  58. data/assets/stylesheets/bootstrap/_modal.scss +76 -45
  59. data/assets/stylesheets/bootstrap/_nav.scss +87 -29
  60. data/assets/stylesheets/bootstrap/_navbar.scss +102 -148
  61. data/assets/stylesheets/bootstrap/_offcanvas.scss +125 -61
  62. data/assets/stylesheets/bootstrap/_pagination.scss +66 -21
  63. data/assets/stylesheets/bootstrap/_placeholders.scss +1 -1
  64. data/assets/stylesheets/bootstrap/_popover.scss +90 -52
  65. data/assets/stylesheets/bootstrap/_progress.scss +31 -11
  66. data/assets/stylesheets/bootstrap/_reboot.scss +32 -46
  67. data/assets/stylesheets/bootstrap/_root.scss +155 -22
  68. data/assets/stylesheets/bootstrap/_spinners.scss +38 -22
  69. data/assets/stylesheets/bootstrap/_tables.scss +40 -24
  70. data/assets/stylesheets/bootstrap/_toasts.scss +38 -16
  71. data/assets/stylesheets/bootstrap/_tooltip.scss +60 -56
  72. data/assets/stylesheets/bootstrap/_type.scss +3 -1
  73. data/assets/stylesheets/bootstrap/_utilities.scss +209 -33
  74. data/assets/stylesheets/bootstrap/_variables-dark.scss +102 -0
  75. data/assets/stylesheets/bootstrap/_variables.scss +415 -303
  76. data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +39 -5
  77. data/assets/stylesheets/bootstrap/forms/_form-check.scss +51 -14
  78. data/assets/stylesheets/bootstrap/forms/_form-control.scss +36 -41
  79. data/assets/stylesheets/bootstrap/forms/_form-range.scss +3 -3
  80. data/assets/stylesheets/bootstrap/forms/_form-select.scss +12 -4
  81. data/assets/stylesheets/bootstrap/forms/_input-group.scss +20 -9
  82. data/assets/stylesheets/bootstrap/helpers/_color-bg.scss +7 -0
  83. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +20 -2
  84. data/assets/stylesheets/bootstrap/helpers/_focus-ring.scss +5 -0
  85. data/assets/stylesheets/bootstrap/helpers/_icon-link.scss +25 -0
  86. data/assets/stylesheets/bootstrap/helpers/_position.scss +7 -1
  87. data/assets/stylesheets/bootstrap/helpers/_ratio.scss +2 -2
  88. data/assets/stylesheets/bootstrap/helpers/_vr.scss +2 -2
  89. data/assets/stylesheets/bootstrap/mixins/_alert.scss +11 -4
  90. data/assets/stylesheets/bootstrap/mixins/_banner.scss +7 -0
  91. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +8 -8
  92. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +32 -95
  93. data/assets/stylesheets/bootstrap/mixins/_caret.scss +30 -25
  94. data/assets/stylesheets/bootstrap/mixins/_color-mode.scss +21 -0
  95. data/assets/stylesheets/bootstrap/mixins/_container.scss +4 -2
  96. data/assets/stylesheets/bootstrap/mixins/_forms.scss +38 -19
  97. data/assets/stylesheets/bootstrap/mixins/_gradients.scss +1 -1
  98. data/assets/stylesheets/bootstrap/mixins/_grid.scss +15 -15
  99. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +2 -0
  100. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +4 -25
  101. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
  102. data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +12 -9
  103. data/assets/stylesheets/bootstrap/mixins/_utilities.scss +14 -6
  104. data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +6 -2
  105. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +23 -29
  106. data/bootstrap.gemspec +3 -3
  107. data/lib/bootstrap/engine.rb +17 -2
  108. data/lib/bootstrap/version.rb +2 -2
  109. data/tasks/updater/js.rb +10 -5
  110. data/tasks/updater/network.rb +2 -2
  111. data/tasks/updater/scss.rb +2 -2
  112. data/tasks/updater.rb +2 -2
  113. data/test/dummy_rails/config/application.rb +0 -2
  114. data/test/dummy_rails/public/favicon.ico +0 -0
  115. data/test/gemfiles/rails_4_2.gemfile +2 -1
  116. data/test/gemfiles/rails_5_0.gemfile +1 -2
  117. data/test/gemfiles/rails_5_1.gemfile +1 -2
  118. data/test/gemfiles/rails_5_2.gemfile +7 -0
  119. data/test/gemfiles/rails_6_0.gemfile +1 -1
  120. data/test/gemfiles/rails_6_1.gemfile +1 -1
  121. data/test/gemfiles/rails_7_0_dartsass.gemfile +7 -0
  122. data/test/gemfiles/rails_7_0_sassc.gemfile +7 -0
  123. data/test/rails_test.rb +0 -5
  124. data/test/test_helper.rb +3 -2
  125. metadata +49 -29
  126. data/.travis.yml +0 -32
  127. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +0 -18
@@ -1,180 +1,81 @@
1
1
  /*!
2
- * Bootstrap base-component.js v5.1.3 (https://getbootstrap.com/)
3
- * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap base-component.js v5.3.5 (https://getbootstrap.com/)
3
+ * Copyright 2011-2025 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('./dom/data.js'), require('./dom/event-handler.js')) :
8
- typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler'], factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Base = factory(global.Data, global.EventHandler));
10
- })(this, (function (Data, EventHandler) { 'use strict';
11
-
12
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
13
-
14
- const Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);
15
- const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./util/config.js'), require('./util/index.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './util/config', './util/index'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.BaseComponent = factory(global.Data, global.EventHandler, global.Config, global.Index));
10
+ })(this, (function (Data, EventHandler, Config, index_js) { 'use strict';
16
11
 
17
12
  /**
18
13
  * --------------------------------------------------------------------------
19
- * Bootstrap (v5.1.3): util/index.js
14
+ * Bootstrap base-component.js
20
15
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
21
16
  * --------------------------------------------------------------------------
22
17
  */
23
- const MILLISECONDS_MULTIPLIER = 1000;
24
- const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
25
-
26
- const getTransitionDurationFromElement = element => {
27
- if (!element) {
28
- return 0;
29
- } // Get transition-duration of the element
30
-
31
-
32
- let {
33
- transitionDuration,
34
- transitionDelay
35
- } = window.getComputedStyle(element);
36
- const floatTransitionDuration = Number.parseFloat(transitionDuration);
37
- const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
38
-
39
- if (!floatTransitionDuration && !floatTransitionDelay) {
40
- return 0;
41
- } // If multiple durations are defined, take the first
42
-
43
-
44
- transitionDuration = transitionDuration.split(',')[0];
45
- transitionDelay = transitionDelay.split(',')[0];
46
- return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
47
- };
48
-
49
- const triggerTransitionEnd = element => {
50
- element.dispatchEvent(new Event(TRANSITION_END));
51
- };
52
-
53
- const isElement = obj => {
54
- if (!obj || typeof obj !== 'object') {
55
- return false;
56
- }
57
-
58
- if (typeof obj.jquery !== 'undefined') {
59
- obj = obj[0];
60
- }
61
18
 
62
- return typeof obj.nodeType !== 'undefined';
63
- };
64
19
 
65
- const getElement = obj => {
66
- if (isElement(obj)) {
67
- // it's a jQuery object or a node element
68
- return obj.jquery ? obj[0] : obj;
69
- }
70
-
71
- if (typeof obj === 'string' && obj.length > 0) {
72
- return document.querySelector(obj);
73
- }
74
-
75
- return null;
76
- };
77
-
78
- const execute = callback => {
79
- if (typeof callback === 'function') {
80
- callback();
81
- }
82
- };
83
-
84
- const executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {
85
- if (!waitForTransition) {
86
- execute(callback);
87
- return;
88
- }
89
-
90
- const durationPadding = 5;
91
- const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding;
92
- let called = false;
93
-
94
- const handler = ({
95
- target
96
- }) => {
97
- if (target !== transitionElement) {
98
- return;
99
- }
100
-
101
- called = true;
102
- transitionElement.removeEventListener(TRANSITION_END, handler);
103
- execute(callback);
104
- };
105
-
106
- transitionElement.addEventListener(TRANSITION_END, handler);
107
- setTimeout(() => {
108
- if (!called) {
109
- triggerTransitionEnd(transitionElement);
110
- }
111
- }, emulatedDuration);
112
- };
113
-
114
- /**
115
- * --------------------------------------------------------------------------
116
- * Bootstrap (v5.1.3): base-component.js
117
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
118
- * --------------------------------------------------------------------------
119
- */
120
20
  /**
121
- * ------------------------------------------------------------------------
122
21
  * Constants
123
- * ------------------------------------------------------------------------
124
22
  */
125
23
 
126
- const VERSION = '5.1.3';
24
+ const VERSION = '5.3.5';
127
25
 
128
- class BaseComponent {
129
- constructor(element) {
130
- element = getElement(element);
26
+ /**
27
+ * Class definition
28
+ */
131
29
 
30
+ class BaseComponent extends Config {
31
+ constructor(element, config) {
32
+ super();
33
+ element = index_js.getElement(element);
132
34
  if (!element) {
133
35
  return;
134
36
  }
135
-
136
37
  this._element = element;
137
- Data__default.default.set(this._element, this.constructor.DATA_KEY, this);
38
+ this._config = this._getConfig(config);
39
+ Data.set(this._element, this.constructor.DATA_KEY, this);
138
40
  }
139
41
 
42
+ // Public
140
43
  dispose() {
141
- Data__default.default.remove(this._element, this.constructor.DATA_KEY);
142
- EventHandler__default.default.off(this._element, this.constructor.EVENT_KEY);
143
- Object.getOwnPropertyNames(this).forEach(propertyName => {
44
+ Data.remove(this._element, this.constructor.DATA_KEY);
45
+ EventHandler.off(this._element, this.constructor.EVENT_KEY);
46
+ for (const propertyName of Object.getOwnPropertyNames(this)) {
144
47
  this[propertyName] = null;
145
- });
48
+ }
146
49
  }
147
-
148
50
  _queueCallback(callback, element, isAnimated = true) {
149
- executeAfterTransition(callback, element, isAnimated);
51
+ index_js.executeAfterTransition(callback, element, isAnimated);
52
+ }
53
+ _getConfig(config) {
54
+ config = this._mergeConfigObj(config, this._element);
55
+ config = this._configAfterMerge(config);
56
+ this._typeCheckConfig(config);
57
+ return config;
150
58
  }
151
- /** Static */
152
-
153
59
 
60
+ // Static
154
61
  static getInstance(element) {
155
- return Data__default.default.get(getElement(element), this.DATA_KEY);
62
+ return Data.get(index_js.getElement(element), this.DATA_KEY);
156
63
  }
157
-
158
64
  static getOrCreateInstance(element, config = {}) {
159
65
  return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null);
160
66
  }
161
-
162
67
  static get VERSION() {
163
68
  return VERSION;
164
69
  }
165
-
166
- static get NAME() {
167
- throw new Error('You have to implement the static method "NAME", for each component!');
168
- }
169
-
170
70
  static get DATA_KEY() {
171
71
  return `bs.${this.NAME}`;
172
72
  }
173
-
174
73
  static get EVENT_KEY() {
175
74
  return `.${this.DATA_KEY}`;
176
75
  }
177
-
76
+ static eventName(name) {
77
+ return `${name}${this.EVENT_KEY}`;
78
+ }
178
79
  }
179
80
 
180
81
  return BaseComponent;
@@ -1,84 +1,24 @@
1
1
  /*!
2
- * Bootstrap button.js v5.1.3 (https://getbootstrap.com/)
3
- * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap button.js v5.3.5 (https://getbootstrap.com/)
3
+ * Copyright 2011-2025 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('./dom/event-handler.js'), require('./base-component.js')) :
8
- typeof define === 'function' && define.amd ? define(['./dom/event-handler', './base-component'], factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.EventHandler, global.Base));
10
- })(this, (function (EventHandler, BaseComponent) { 'use strict';
11
-
12
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
13
-
14
- const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
15
- const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./base-component.js'), require('./dom/event-handler.js'), require('./util/index.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./base-component', './dom/event-handler', './util/index'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.BaseComponent, global.EventHandler, global.Index));
10
+ })(this, (function (BaseComponent, EventHandler, index_js) { 'use strict';
16
11
 
17
12
  /**
18
13
  * --------------------------------------------------------------------------
19
- * Bootstrap (v5.1.3): util/index.js
14
+ * Bootstrap button.js
20
15
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
21
16
  * --------------------------------------------------------------------------
22
17
  */
23
18
 
24
- const getjQuery = () => {
25
- const {
26
- jQuery
27
- } = window;
28
-
29
- if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
30
- return jQuery;
31
- }
32
-
33
- return null;
34
- };
35
-
36
- const DOMContentLoadedCallbacks = [];
37
-
38
- const onDOMContentLoaded = callback => {
39
- if (document.readyState === 'loading') {
40
- // add listener on the first call when the document is in loading state
41
- if (!DOMContentLoadedCallbacks.length) {
42
- document.addEventListener('DOMContentLoaded', () => {
43
- DOMContentLoadedCallbacks.forEach(callback => callback());
44
- });
45
- }
46
-
47
- DOMContentLoadedCallbacks.push(callback);
48
- } else {
49
- callback();
50
- }
51
- };
52
-
53
- const defineJQueryPlugin = plugin => {
54
- onDOMContentLoaded(() => {
55
- const $ = getjQuery();
56
- /* istanbul ignore if */
57
-
58
- if ($) {
59
- const name = plugin.NAME;
60
- const JQUERY_NO_CONFLICT = $.fn[name];
61
- $.fn[name] = plugin.jQueryInterface;
62
- $.fn[name].Constructor = plugin;
63
-
64
- $.fn[name].noConflict = () => {
65
- $.fn[name] = JQUERY_NO_CONFLICT;
66
- return plugin.jQueryInterface;
67
- };
68
- }
69
- });
70
- };
71
19
 
72
20
  /**
73
- * --------------------------------------------------------------------------
74
- * Bootstrap (v5.1.3): button.js
75
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
76
- * --------------------------------------------------------------------------
77
- */
78
- /**
79
- * ------------------------------------------------------------------------
80
21
  * Constants
81
- * ------------------------------------------------------------------------
82
22
  */
83
23
 
84
24
  const NAME = 'button';
@@ -88,57 +28,50 @@
88
28
  const CLASS_NAME_ACTIVE = 'active';
89
29
  const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="button"]';
90
30
  const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`;
31
+
91
32
  /**
92
- * ------------------------------------------------------------------------
93
- * Class Definition
94
- * ------------------------------------------------------------------------
33
+ * Class definition
95
34
  */
96
35
 
97
- class Button extends BaseComponent__default.default {
36
+ class Button extends BaseComponent {
98
37
  // Getters
99
38
  static get NAME() {
100
39
  return NAME;
101
- } // Public
102
-
40
+ }
103
41
 
42
+ // Public
104
43
  toggle() {
105
44
  // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method
106
45
  this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE));
107
- } // Static
108
-
46
+ }
109
47
 
48
+ // Static
110
49
  static jQueryInterface(config) {
111
50
  return this.each(function () {
112
51
  const data = Button.getOrCreateInstance(this);
113
-
114
52
  if (config === 'toggle') {
115
53
  data[config]();
116
54
  }
117
55
  });
118
56
  }
119
-
120
57
  }
58
+
121
59
  /**
122
- * ------------------------------------------------------------------------
123
- * Data Api implementation
124
- * ------------------------------------------------------------------------
60
+ * Data API implementation
125
61
  */
126
62
 
127
-
128
- EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
63
+ EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
129
64
  event.preventDefault();
130
65
  const button = event.target.closest(SELECTOR_DATA_TOGGLE);
131
66
  const data = Button.getOrCreateInstance(button);
132
67
  data.toggle();
133
68
  });
69
+
134
70
  /**
135
- * ------------------------------------------------------------------------
136
71
  * jQuery
137
- * ------------------------------------------------------------------------
138
- * add .Button to jQuery only if jQuery is present
139
72
  */
140
73
 
141
- defineJQueryPlugin(Button);
74
+ index_js.defineJQueryPlugin(Button);
142
75
 
143
76
  return Button;
144
77