bootstrap 5.2.3 → 5.3.2

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 (100) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +11 -5
  3. data/Gemfile +1 -0
  4. data/README.md +6 -2
  5. data/Rakefile +10 -1
  6. data/assets/javascripts/bootstrap/alert.js +22 -32
  7. data/assets/javascripts/bootstrap/base-component.js +22 -38
  8. data/assets/javascripts/bootstrap/button.js +19 -22
  9. data/assets/javascripts/bootstrap/carousel.js +52 -135
  10. data/assets/javascripts/bootstrap/collapse.js +40 -102
  11. data/assets/javascripts/bootstrap/dom/data.js +8 -12
  12. data/assets/javascripts/bootstrap/dom/event-handler.js +19 -66
  13. data/assets/javascripts/bootstrap/dom/manipulator.js +4 -17
  14. data/assets/javascripts/bootstrap/dom/selector-engine.js +42 -24
  15. data/assets/javascripts/bootstrap/dropdown.js +74 -145
  16. data/assets/javascripts/bootstrap/modal.js +53 -133
  17. data/assets/javascripts/bootstrap/offcanvas.js +50 -102
  18. data/assets/javascripts/bootstrap/popover.js +23 -29
  19. data/assets/javascripts/bootstrap/scrollspy.js +53 -90
  20. data/assets/javascripts/bootstrap/tab.js +63 -112
  21. data/assets/javascripts/bootstrap/toast.js +31 -73
  22. data/assets/javascripts/bootstrap/tooltip.js +75 -177
  23. data/assets/javascripts/bootstrap/util/backdrop.js +28 -54
  24. data/assets/javascripts/bootstrap/util/component-functions.js +13 -18
  25. data/assets/javascripts/bootstrap/util/config.js +15 -27
  26. data/assets/javascripts/bootstrap/util/focustrap.js +20 -36
  27. data/assets/javascripts/bootstrap/util/index.js +42 -111
  28. data/assets/javascripts/bootstrap/util/sanitizer.js +30 -42
  29. data/assets/javascripts/bootstrap/util/scrollbar.js +24 -50
  30. data/assets/javascripts/bootstrap/util/swipe.js +27 -48
  31. data/assets/javascripts/bootstrap/util/template-factory.js +25 -52
  32. data/assets/javascripts/bootstrap-sprockets.js +10 -10
  33. data/assets/javascripts/bootstrap.js +689 -1444
  34. data/assets/javascripts/bootstrap.min.js +3 -3
  35. data/assets/stylesheets/_bootstrap-grid.scss +1 -3
  36. data/assets/stylesheets/_bootstrap-reboot.scss +1 -0
  37. data/assets/stylesheets/_bootstrap-utilities.scss +19 -0
  38. data/assets/stylesheets/_bootstrap.scss +1 -0
  39. data/assets/stylesheets/bootstrap/_accordion.scss +9 -0
  40. data/assets/stylesheets/bootstrap/_alert.scss +8 -11
  41. data/assets/stylesheets/bootstrap/_button-group.scss +2 -2
  42. data/assets/stylesheets/bootstrap/_buttons.scss +3 -3
  43. data/assets/stylesheets/bootstrap/_card.scss +5 -0
  44. data/assets/stylesheets/bootstrap/_carousel.scss +20 -2
  45. data/assets/stylesheets/bootstrap/_close.scss +32 -9
  46. data/assets/stylesheets/bootstrap/_dropdown.scss +1 -0
  47. data/assets/stylesheets/bootstrap/_functions.scss +1 -1
  48. data/assets/stylesheets/bootstrap/_grid.scss +6 -0
  49. data/assets/stylesheets/bootstrap/_helpers.scss +2 -0
  50. data/assets/stylesheets/bootstrap/_list-group.scss +12 -7
  51. data/assets/stylesheets/bootstrap/_maps.scss +120 -0
  52. data/assets/stylesheets/bootstrap/_mixins.scss +1 -2
  53. data/assets/stylesheets/bootstrap/_nav.scss +42 -17
  54. data/assets/stylesheets/bootstrap/_navbar.scss +15 -4
  55. data/assets/stylesheets/bootstrap/_offcanvas.scss +4 -2
  56. data/assets/stylesheets/bootstrap/_pagination.scss +1 -1
  57. data/assets/stylesheets/bootstrap/_progress.scss +10 -1
  58. data/assets/stylesheets/bootstrap/_reboot.scss +8 -7
  59. data/assets/stylesheets/bootstrap/_root.scss +124 -10
  60. data/assets/stylesheets/bootstrap/_tables.scss +18 -11
  61. data/assets/stylesheets/bootstrap/_tooltip.scss +4 -5
  62. data/assets/stylesheets/bootstrap/_utilities.scss +175 -16
  63. data/assets/stylesheets/bootstrap/_variables-dark.scss +87 -0
  64. data/assets/stylesheets/bootstrap/_variables.scss +282 -169
  65. data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +23 -3
  66. data/assets/stylesheets/bootstrap/forms/_form-check.scss +26 -12
  67. data/assets/stylesheets/bootstrap/forms/_form-control.scss +24 -4
  68. data/assets/stylesheets/bootstrap/forms/_form-range.scss +3 -3
  69. data/assets/stylesheets/bootstrap/forms/_form-select.scss +12 -3
  70. data/assets/stylesheets/bootstrap/forms/_input-group.scss +1 -1
  71. data/assets/stylesheets/bootstrap/helpers/_color-bg.scss +1 -4
  72. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +20 -2
  73. data/assets/stylesheets/bootstrap/helpers/_focus-ring.scss +5 -0
  74. data/assets/stylesheets/bootstrap/helpers/_icon-link.scss +25 -0
  75. data/assets/stylesheets/bootstrap/helpers/_vr.scss +1 -1
  76. data/assets/stylesheets/bootstrap/mixins/_alert.scss +4 -1
  77. data/assets/stylesheets/bootstrap/mixins/_banner.scss +2 -4
  78. data/assets/stylesheets/bootstrap/mixins/_caret.scss +30 -25
  79. data/assets/stylesheets/bootstrap/mixins/_color-mode.scss +21 -0
  80. data/assets/stylesheets/bootstrap/mixins/_forms.scss +8 -7
  81. data/assets/stylesheets/bootstrap/mixins/_grid.scss +1 -1
  82. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +2 -0
  83. data/assets/stylesheets/bootstrap/mixins/_utilities.scss +1 -1
  84. data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +5 -1
  85. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +23 -29
  86. data/bootstrap.gemspec +4 -3
  87. data/lib/bootstrap/engine.rb +7 -1
  88. data/lib/bootstrap/version.rb +2 -2
  89. data/tasks/updater/js.rb +1 -1
  90. data/tasks/updater/scss.rb +2 -2
  91. data/test/gemfiles/rails_4_2.gemfile +1 -1
  92. data/test/gemfiles/rails_5_0.gemfile +1 -1
  93. data/test/gemfiles/rails_5_1.gemfile +1 -1
  94. data/test/gemfiles/rails_5_2.gemfile +1 -1
  95. data/test/gemfiles/rails_6_0.gemfile +1 -0
  96. data/test/gemfiles/rails_6_1.gemfile +1 -0
  97. data/test/gemfiles/rails_7_0_dartsass.gemfile +8 -0
  98. data/test/gemfiles/{rails_7_0.gemfile → rails_7_0_sassc.gemfile} +1 -0
  99. metadata +35 -15
  100. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +0 -18
@@ -1,29 +1,22 @@
1
1
  /*!
2
- * Bootstrap offcanvas.js v5.2.3 (https://getbootstrap.com/)
3
- * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap offcanvas.js v5.3.2 (https://getbootstrap.com/)
3
+ * Copyright 2011-2023 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('./util/index'), require('./util/scrollbar'), require('./dom/event-handler'), require('./base-component'), require('./dom/selector-engine'), require('./util/backdrop'), require('./util/focustrap'), require('./util/component-functions')) :
8
- typeof define === 'function' && define.amd ? define(['./util/index', './util/scrollbar', './dom/event-handler', './base-component', './dom/selector-engine', './util/backdrop', './util/focustrap', './util/component-functions'], factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Offcanvas = factory(global.Index, global.Scrollbar, global.EventHandler, global.BaseComponent, global.SelectorEngine, global.Backdrop, global.Focustrap, global.ComponentFunctions));
10
- })(this, (function (index, ScrollBarHelper, EventHandler, BaseComponent, SelectorEngine, Backdrop, FocusTrap, componentFunctions) { 'use strict';
11
-
12
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
13
-
14
- const ScrollBarHelper__default = /*#__PURE__*/_interopDefaultLegacy(ScrollBarHelper);
15
- const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
16
- const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
17
- const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
18
- const Backdrop__default = /*#__PURE__*/_interopDefaultLegacy(Backdrop);
19
- const FocusTrap__default = /*#__PURE__*/_interopDefaultLegacy(FocusTrap);
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./base-component.js'), require('./dom/event-handler.js'), require('./dom/selector-engine.js'), require('./util/backdrop.js'), require('./util/component-functions.js'), require('./util/focustrap.js'), require('./util/index.js'), require('./util/scrollbar.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./base-component', './dom/event-handler', './dom/selector-engine', './util/backdrop', './util/component-functions', './util/focustrap', './util/index', './util/scrollbar'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Offcanvas = factory(global.BaseComponent, global.EventHandler, global.SelectorEngine, global.Backdrop, global.ComponentFunctions, global.Focustrap, global.Index, global.Scrollbar));
10
+ })(this, (function (BaseComponent, EventHandler, SelectorEngine, Backdrop, componentFunctions_js, FocusTrap, index_js, ScrollBarHelper) { 'use strict';
20
11
 
21
12
  /**
22
13
  * --------------------------------------------------------------------------
23
- * Bootstrap (v5.2.3): offcanvas.js
14
+ * Bootstrap offcanvas.js
24
15
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
25
16
  * --------------------------------------------------------------------------
26
17
  */
18
+
19
+
27
20
  /**
28
21
  * Constants
29
22
  */
@@ -58,142 +51,108 @@
58
51
  keyboard: 'boolean',
59
52
  scroll: 'boolean'
60
53
  };
54
+
61
55
  /**
62
56
  * Class definition
63
57
  */
64
58
 
65
- class Offcanvas extends BaseComponent__default.default {
59
+ class Offcanvas extends BaseComponent {
66
60
  constructor(element, config) {
67
61
  super(element, config);
68
62
  this._isShown = false;
69
63
  this._backdrop = this._initializeBackDrop();
70
64
  this._focustrap = this._initializeFocusTrap();
71
-
72
65
  this._addEventListeners();
73
- } // Getters
74
-
66
+ }
75
67
 
68
+ // Getters
76
69
  static get Default() {
77
70
  return Default;
78
71
  }
79
-
80
72
  static get DefaultType() {
81
73
  return DefaultType;
82
74
  }
83
-
84
75
  static get NAME() {
85
76
  return NAME;
86
- } // Public
87
-
77
+ }
88
78
 
79
+ // Public
89
80
  toggle(relatedTarget) {
90
81
  return this._isShown ? this.hide() : this.show(relatedTarget);
91
82
  }
92
-
93
83
  show(relatedTarget) {
94
84
  if (this._isShown) {
95
85
  return;
96
86
  }
97
-
98
- const showEvent = EventHandler__default.default.trigger(this._element, EVENT_SHOW, {
87
+ const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {
99
88
  relatedTarget
100
89
  });
101
-
102
90
  if (showEvent.defaultPrevented) {
103
91
  return;
104
92
  }
105
-
106
93
  this._isShown = true;
107
-
108
94
  this._backdrop.show();
109
-
110
95
  if (!this._config.scroll) {
111
- new ScrollBarHelper__default.default().hide();
96
+ new ScrollBarHelper().hide();
112
97
  }
113
-
114
98
  this._element.setAttribute('aria-modal', true);
115
-
116
99
  this._element.setAttribute('role', 'dialog');
117
-
118
100
  this._element.classList.add(CLASS_NAME_SHOWING);
119
-
120
101
  const completeCallBack = () => {
121
102
  if (!this._config.scroll || this._config.backdrop) {
122
103
  this._focustrap.activate();
123
104
  }
124
-
125
105
  this._element.classList.add(CLASS_NAME_SHOW);
126
-
127
106
  this._element.classList.remove(CLASS_NAME_SHOWING);
128
-
129
- EventHandler__default.default.trigger(this._element, EVENT_SHOWN, {
107
+ EventHandler.trigger(this._element, EVENT_SHOWN, {
130
108
  relatedTarget
131
109
  });
132
110
  };
133
-
134
111
  this._queueCallback(completeCallBack, this._element, true);
135
112
  }
136
-
137
113
  hide() {
138
114
  if (!this._isShown) {
139
115
  return;
140
116
  }
141
-
142
- const hideEvent = EventHandler__default.default.trigger(this._element, EVENT_HIDE);
143
-
117
+ const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE);
144
118
  if (hideEvent.defaultPrevented) {
145
119
  return;
146
120
  }
147
-
148
121
  this._focustrap.deactivate();
149
-
150
122
  this._element.blur();
151
-
152
123
  this._isShown = false;
153
-
154
124
  this._element.classList.add(CLASS_NAME_HIDING);
155
-
156
125
  this._backdrop.hide();
157
-
158
126
  const completeCallback = () => {
159
127
  this._element.classList.remove(CLASS_NAME_SHOW, CLASS_NAME_HIDING);
160
-
161
128
  this._element.removeAttribute('aria-modal');
162
-
163
129
  this._element.removeAttribute('role');
164
-
165
130
  if (!this._config.scroll) {
166
- new ScrollBarHelper__default.default().reset();
131
+ new ScrollBarHelper().reset();
167
132
  }
168
-
169
- EventHandler__default.default.trigger(this._element, EVENT_HIDDEN);
133
+ EventHandler.trigger(this._element, EVENT_HIDDEN);
170
134
  };
171
-
172
135
  this._queueCallback(completeCallback, this._element, true);
173
136
  }
174
-
175
137
  dispose() {
176
138
  this._backdrop.dispose();
177
-
178
139
  this._focustrap.deactivate();
179
-
180
140
  super.dispose();
181
- } // Private
182
-
141
+ }
183
142
 
143
+ // Private
184
144
  _initializeBackDrop() {
185
145
  const clickCallback = () => {
186
146
  if (this._config.backdrop === 'static') {
187
- EventHandler__default.default.trigger(this._element, EVENT_HIDE_PREVENTED);
147
+ EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);
188
148
  return;
189
149
  }
190
-
191
150
  this.hide();
192
- }; // 'static' option will be translated to true, and booleans will keep their value
193
-
151
+ };
194
152
 
153
+ // 'static' option will be translated to true, and booleans will keep their value
195
154
  const isVisible = Boolean(this._config.backdrop);
196
- return new Backdrop__default.default({
155
+ return new Backdrop({
197
156
  className: CLASS_NAME_BACKDROP,
198
157
  isVisible,
199
158
  isAnimated: true,
@@ -201,96 +160,85 @@
201
160
  clickCallback: isVisible ? clickCallback : null
202
161
  });
203
162
  }
204
-
205
163
  _initializeFocusTrap() {
206
- return new FocusTrap__default.default({
164
+ return new FocusTrap({
207
165
  trapElement: this._element
208
166
  });
209
167
  }
210
-
211
168
  _addEventListeners() {
212
- EventHandler__default.default.on(this._element, EVENT_KEYDOWN_DISMISS, event => {
169
+ EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {
213
170
  if (event.key !== ESCAPE_KEY) {
214
171
  return;
215
172
  }
216
-
217
- if (!this._config.keyboard) {
218
- EventHandler__default.default.trigger(this._element, EVENT_HIDE_PREVENTED);
173
+ if (this._config.keyboard) {
174
+ this.hide();
219
175
  return;
220
176
  }
221
-
222
- this.hide();
177
+ EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);
223
178
  });
224
- } // Static
225
-
179
+ }
226
180
 
181
+ // Static
227
182
  static jQueryInterface(config) {
228
183
  return this.each(function () {
229
184
  const data = Offcanvas.getOrCreateInstance(this, config);
230
-
231
185
  if (typeof config !== 'string') {
232
186
  return;
233
187
  }
234
-
235
188
  if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
236
189
  throw new TypeError(`No method named "${config}"`);
237
190
  }
238
-
239
191
  data[config](this);
240
192
  });
241
193
  }
242
-
243
194
  }
195
+
244
196
  /**
245
197
  * Data API implementation
246
198
  */
247
199
 
248
-
249
- EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
250
- const target = index.getElementFromSelector(this);
251
-
200
+ EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
201
+ const target = SelectorEngine.getElementFromSelector(this);
252
202
  if (['A', 'AREA'].includes(this.tagName)) {
253
203
  event.preventDefault();
254
204
  }
255
-
256
- if (index.isDisabled(this)) {
205
+ if (index_js.isDisabled(this)) {
257
206
  return;
258
207
  }
259
-
260
- EventHandler__default.default.one(target, EVENT_HIDDEN, () => {
208
+ EventHandler.one(target, EVENT_HIDDEN, () => {
261
209
  // focus on trigger when it is closed
262
- if (index.isVisible(this)) {
210
+ if (index_js.isVisible(this)) {
263
211
  this.focus();
264
212
  }
265
- }); // avoid conflict when clicking a toggler of an offcanvas, while another is open
266
-
267
- const alreadyOpen = SelectorEngine__default.default.findOne(OPEN_SELECTOR);
213
+ });
268
214
 
215
+ // avoid conflict when clicking a toggler of an offcanvas, while another is open
216
+ const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR);
269
217
  if (alreadyOpen && alreadyOpen !== target) {
270
218
  Offcanvas.getInstance(alreadyOpen).hide();
271
219
  }
272
-
273
220
  const data = Offcanvas.getOrCreateInstance(target);
274
221
  data.toggle(this);
275
222
  });
276
- EventHandler__default.default.on(window, EVENT_LOAD_DATA_API, () => {
277
- for (const selector of SelectorEngine__default.default.find(OPEN_SELECTOR)) {
223
+ EventHandler.on(window, EVENT_LOAD_DATA_API, () => {
224
+ for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {
278
225
  Offcanvas.getOrCreateInstance(selector).show();
279
226
  }
280
227
  });
281
- EventHandler__default.default.on(window, EVENT_RESIZE, () => {
282
- for (const element of SelectorEngine__default.default.find('[aria-modal][class*=show][class*=offcanvas-]')) {
228
+ EventHandler.on(window, EVENT_RESIZE, () => {
229
+ for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {
283
230
  if (getComputedStyle(element).position !== 'fixed') {
284
231
  Offcanvas.getOrCreateInstance(element).hide();
285
232
  }
286
233
  }
287
234
  });
288
- componentFunctions.enableDismissTrigger(Offcanvas);
235
+ componentFunctions_js.enableDismissTrigger(Offcanvas);
236
+
289
237
  /**
290
238
  * jQuery
291
239
  */
292
240
 
293
- index.defineJQueryPlugin(Offcanvas);
241
+ index_js.defineJQueryPlugin(Offcanvas);
294
242
 
295
243
  return Offcanvas;
296
244
 
@@ -1,24 +1,22 @@
1
1
  /*!
2
- * Bootstrap popover.js v5.2.3 (https://getbootstrap.com/)
3
- * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap popover.js v5.3.2 (https://getbootstrap.com/)
3
+ * Copyright 2011-2023 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('./util/index'), require('./tooltip')) :
8
- typeof define === 'function' && define.amd ? define(['./util/index', './tooltip'], factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Popover = factory(global.Index, global.Tooltip));
10
- })(this, (function (index, Tooltip) { 'use strict';
11
-
12
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
13
-
14
- const Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./tooltip.js'), require('./util/index.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./tooltip', './util/index'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Popover = factory(global.Tooltip, global.Index));
10
+ })(this, (function (Tooltip, index_js) { 'use strict';
15
11
 
16
12
  /**
17
13
  * --------------------------------------------------------------------------
18
- * Bootstrap (v5.2.3): popover.js
14
+ * Bootstrap popover.js
19
15
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
20
16
  * --------------------------------------------------------------------------
21
17
  */
18
+
19
+
22
20
  /**
23
21
  * Constants
24
22
  */
@@ -26,75 +24,71 @@
26
24
  const NAME = 'popover';
27
25
  const SELECTOR_TITLE = '.popover-header';
28
26
  const SELECTOR_CONTENT = '.popover-body';
29
- const Default = { ...Tooltip__default.default.Default,
27
+ const Default = {
28
+ ...Tooltip.Default,
30
29
  content: '',
31
30
  offset: [0, 8],
32
31
  placement: 'right',
33
32
  template: '<div class="popover" role="tooltip">' + '<div class="popover-arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div>' + '</div>',
34
33
  trigger: 'click'
35
34
  };
36
- const DefaultType = { ...Tooltip__default.default.DefaultType,
35
+ const DefaultType = {
36
+ ...Tooltip.DefaultType,
37
37
  content: '(null|string|element|function)'
38
38
  };
39
+
39
40
  /**
40
41
  * Class definition
41
42
  */
42
43
 
43
- class Popover extends Tooltip__default.default {
44
+ class Popover extends Tooltip {
44
45
  // Getters
45
46
  static get Default() {
46
47
  return Default;
47
48
  }
48
-
49
49
  static get DefaultType() {
50
50
  return DefaultType;
51
51
  }
52
-
53
52
  static get NAME() {
54
53
  return NAME;
55
- } // Overrides
56
-
54
+ }
57
55
 
56
+ // Overrides
58
57
  _isWithContent() {
59
58
  return this._getTitle() || this._getContent();
60
- } // Private
61
-
59
+ }
62
60
 
61
+ // Private
63
62
  _getContentForTemplate() {
64
63
  return {
65
64
  [SELECTOR_TITLE]: this._getTitle(),
66
65
  [SELECTOR_CONTENT]: this._getContent()
67
66
  };
68
67
  }
69
-
70
68
  _getContent() {
71
69
  return this._resolvePossibleFunction(this._config.content);
72
- } // Static
73
-
70
+ }
74
71
 
72
+ // Static
75
73
  static jQueryInterface(config) {
76
74
  return this.each(function () {
77
75
  const data = Popover.getOrCreateInstance(this, config);
78
-
79
76
  if (typeof config !== 'string') {
80
77
  return;
81
78
  }
82
-
83
79
  if (typeof data[config] === 'undefined') {
84
80
  throw new TypeError(`No method named "${config}"`);
85
81
  }
86
-
87
82
  data[config]();
88
83
  });
89
84
  }
90
-
91
85
  }
86
+
92
87
  /**
93
88
  * jQuery
94
89
  */
95
90
 
96
-
97
- index.defineJQueryPlugin(Popover);
91
+ index_js.defineJQueryPlugin(Popover);
98
92
 
99
93
  return Popover;
100
94