@openeuropa/bcl-bootstrap 0.28.1 → 1.0.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 (283) hide show
  1. package/bootstrap-icons.svg +1 -1
  2. package/icons/0-circle-fill.svg +4 -0
  3. package/icons/0-circle.svg +4 -0
  4. package/icons/0-square-fill.svg +4 -0
  5. package/icons/0-square.svg +4 -0
  6. package/icons/1-circle-fill.svg +1 -1
  7. package/icons/amd.svg +3 -0
  8. package/icons/arrow-bar-left.svg +1 -1
  9. package/icons/arrow-bar-right.svg +1 -1
  10. package/icons/arrows-collapse.svg +1 -1
  11. package/icons/arrows-expand.svg +1 -1
  12. package/icons/building-add.svg +5 -0
  13. package/icons/building-check.svg +5 -0
  14. package/icons/building-dash.svg +5 -0
  15. package/icons/building-down.svg +5 -0
  16. package/icons/building-exclamation.svg +4 -0
  17. package/icons/building-fill-add.svg +4 -0
  18. package/icons/building-fill-check.svg +4 -0
  19. package/icons/building-fill-dash.svg +4 -0
  20. package/icons/building-fill-down.svg +4 -0
  21. package/icons/building-fill-exclamation.svg +4 -0
  22. package/icons/building-fill-gear.svg +4 -0
  23. package/icons/building-fill-lock.svg +4 -0
  24. package/icons/building-fill-slash.svg +4 -0
  25. package/icons/building-fill-up.svg +4 -0
  26. package/icons/building-fill-x.svg +4 -0
  27. package/icons/building-fill.svg +3 -0
  28. package/icons/building-gear.svg +4 -0
  29. package/icons/building-lock.svg +4 -0
  30. package/icons/building-slash.svg +5 -0
  31. package/icons/building-up.svg +5 -0
  32. package/icons/building-x.svg +4 -0
  33. package/icons/building.svg +2 -2
  34. package/icons/buildings-fill.svg +3 -0
  35. package/icons/buildings.svg +4 -0
  36. package/icons/bus-front-fill.svg +3 -0
  37. package/icons/bus-front.svg +4 -0
  38. package/icons/capsule-pill.svg +1 -1
  39. package/icons/capsule.svg +1 -1
  40. package/icons/car-front-fill.svg +1 -1
  41. package/icons/car-front.svg +1 -1
  42. package/icons/database-add.svg +4 -0
  43. package/icons/database-check.svg +4 -0
  44. package/icons/database-dash.svg +4 -0
  45. package/icons/database-down.svg +4 -0
  46. package/icons/database-exclamation.svg +4 -0
  47. package/icons/database-fill-add.svg +4 -0
  48. package/icons/database-fill-check.svg +4 -0
  49. package/icons/database-fill-dash.svg +4 -0
  50. package/icons/database-fill-down.svg +4 -0
  51. package/icons/database-fill-exclamation.svg +5 -0
  52. package/icons/database-fill-gear.svg +4 -0
  53. package/icons/database-fill-lock.svg +5 -0
  54. package/icons/database-fill-slash.svg +4 -0
  55. package/icons/database-fill-up.svg +4 -0
  56. package/icons/database-fill-x.svg +5 -0
  57. package/icons/database-fill.svg +6 -0
  58. package/icons/database-gear.svg +4 -0
  59. package/icons/database-lock.svg +4 -0
  60. package/icons/database-slash.svg +4 -0
  61. package/icons/database-up.svg +4 -0
  62. package/icons/database-x.svg +4 -0
  63. package/icons/database.svg +3 -0
  64. package/icons/envelope-at-fill.svg +4 -0
  65. package/icons/envelope-at.svg +4 -0
  66. package/icons/ev-front-fill.svg +3 -0
  67. package/icons/ev-front.svg +4 -0
  68. package/icons/globe-americas.svg +3 -0
  69. package/icons/globe-asia-australia.svg +4 -0
  70. package/icons/globe-central-south-asia.svg +3 -0
  71. package/icons/globe-europe-africa.svg +3 -0
  72. package/icons/heart-pulse-fill.svg +2 -1
  73. package/icons/heart-pulse.svg +2 -1
  74. package/icons/heartbreak-fill.svg +1 -1
  75. package/icons/heartbreak.svg +1 -1
  76. package/icons/house-add-fill.svg +5 -0
  77. package/icons/house-add.svg +4 -0
  78. package/icons/house-check-fill.svg +5 -0
  79. package/icons/house-check.svg +4 -0
  80. package/icons/house-dash-fill.svg +5 -0
  81. package/icons/house-dash.svg +4 -0
  82. package/icons/house-door-fill.svg +1 -1
  83. package/icons/house-door.svg +1 -1
  84. package/icons/house-down-fill.svg +5 -0
  85. package/icons/house-down.svg +4 -0
  86. package/icons/house-exclamation-fill.svg +5 -0
  87. package/icons/house-exclamation.svg +4 -0
  88. package/icons/house-fill.svg +2 -2
  89. package/icons/house-gear-fill.svg +5 -0
  90. package/icons/house-gear.svg +4 -0
  91. package/icons/house-lock-fill.svg +5 -0
  92. package/icons/house-lock.svg +4 -0
  93. package/icons/house-slash-fill.svg +5 -0
  94. package/icons/house-slash.svg +4 -0
  95. package/icons/house-up-fill.svg +5 -0
  96. package/icons/house-up.svg +4 -0
  97. package/icons/house-x-fill.svg +5 -0
  98. package/icons/house-x.svg +4 -0
  99. package/icons/house.svg +1 -2
  100. package/icons/houses-fill.svg +4 -0
  101. package/icons/houses.svg +3 -0
  102. package/icons/lungs-fill.svg +1 -1
  103. package/icons/nvidia.svg +3 -0
  104. package/icons/people-fill.svg +1 -3
  105. package/icons/people.svg +1 -1
  106. package/icons/person-add.svg +4 -0
  107. package/icons/person-check.svg +2 -2
  108. package/icons/person-dash.svg +2 -2
  109. package/icons/person-down.svg +4 -0
  110. package/icons/person-exclamation.svg +4 -0
  111. package/icons/person-fill-add.svg +4 -0
  112. package/icons/person-fill-check.svg +4 -0
  113. package/icons/person-fill-dash.svg +4 -0
  114. package/icons/person-fill-down.svg +4 -0
  115. package/icons/person-fill-exclamation.svg +4 -0
  116. package/icons/person-fill-gear.svg +3 -0
  117. package/icons/person-fill-lock.svg +3 -0
  118. package/icons/person-fill-slash.svg +3 -0
  119. package/icons/person-fill-up.svg +4 -0
  120. package/icons/person-fill-x.svg +4 -0
  121. package/icons/person-fill.svg +1 -1
  122. package/icons/person-gear.svg +3 -0
  123. package/icons/person-lock.svg +3 -0
  124. package/icons/person-slash.svg +3 -0
  125. package/icons/person-up.svg +4 -0
  126. package/icons/person-vcard-fill.svg +3 -0
  127. package/icons/person-vcard.svg +4 -0
  128. package/icons/person-x.svg +2 -2
  129. package/icons/person.svg +1 -1
  130. package/icons/prescription.svg +2 -2
  131. package/icons/prescription2.svg +1 -1
  132. package/icons/regex.svg +3 -0
  133. package/icons/rocket-fill.svg +4 -0
  134. package/icons/rocket-takeoff-fill.svg +4 -0
  135. package/icons/rocket-takeoff.svg +5 -0
  136. package/icons/rocket.svg +5 -0
  137. package/icons/scooter.svg +3 -0
  138. package/icons/sign-dead-end-fill.svg +4 -0
  139. package/icons/sign-dead-end.svg +4 -0
  140. package/icons/sign-do-not-enter-fill.svg +4 -0
  141. package/icons/sign-do-not-enter.svg +4 -0
  142. package/icons/sign-intersection-fill.svg +3 -0
  143. package/icons/sign-intersection-side-fill.svg +3 -0
  144. package/icons/sign-intersection-side.svg +4 -0
  145. package/icons/sign-intersection-t-fill.svg +3 -0
  146. package/icons/sign-intersection-t.svg +4 -0
  147. package/icons/sign-intersection-y-fill.svg +3 -0
  148. package/icons/sign-intersection-y.svg +4 -0
  149. package/icons/sign-intersection.svg +4 -0
  150. package/icons/sign-merge-left-fill.svg +3 -0
  151. package/icons/sign-merge-left.svg +4 -0
  152. package/icons/sign-merge-right-fill.svg +3 -0
  153. package/icons/sign-merge-right.svg +4 -0
  154. package/icons/sign-no-left-turn-fill.svg +4 -0
  155. package/icons/sign-no-left-turn.svg +3 -0
  156. package/icons/sign-no-parking-fill.svg +4 -0
  157. package/icons/sign-no-parking.svg +3 -0
  158. package/icons/sign-no-right-turn-fill.svg +4 -0
  159. package/icons/sign-no-right-turn.svg +3 -0
  160. package/icons/sign-railroad-fill.svg +5 -0
  161. package/icons/sign-railroad.svg +4 -0
  162. package/icons/sign-stop-fill.svg +1 -1
  163. package/icons/sign-stop-lights-fill.svg +1 -1
  164. package/icons/sign-turn-left-fill.svg +1 -1
  165. package/icons/sign-turn-right-fill.svg +1 -1
  166. package/icons/sign-turn-slight-left-fill.svg +1 -1
  167. package/icons/sign-turn-slight-right-fill.svg +1 -1
  168. package/icons/sign-yield-fill.svg +1 -1
  169. package/icons/sina-weibo.svg +4 -0
  170. package/icons/stripe.svg +3 -0
  171. package/icons/subscript.svg +3 -0
  172. package/icons/superscript.svg +3 -0
  173. package/icons/taxi-front-fill.svg +3 -0
  174. package/icons/taxi-front.svg +4 -0
  175. package/icons/tencent-qq.svg +4 -0
  176. package/icons/text-wrap.svg +3 -0
  177. package/icons/train-freight-front-fill.svg +1 -1
  178. package/icons/train-freight-front.svg +1 -1
  179. package/icons/train-front-fill.svg +1 -1
  180. package/icons/train-front.svg +1 -1
  181. package/icons/train-lightrail-front-fill.svg +1 -1
  182. package/icons/train-lightrail-front.svg +1 -1
  183. package/icons/trello.svg +3 -0
  184. package/icons/truck-front-fill.svg +1 -1
  185. package/icons/truck-front.svg +2 -3
  186. package/icons/virus.svg +1 -1
  187. package/icons/virus2.svg +1 -1
  188. package/icons/wikipedia.svg +3 -0
  189. package/js/dist/alert.js +14 -25
  190. package/js/dist/alert.js.map +1 -1
  191. package/js/dist/base-component.js +13 -30
  192. package/js/dist/base-component.js.map +1 -1
  193. package/js/dist/button.js +11 -15
  194. package/js/dist/button.js.map +1 -1
  195. package/js/dist/carousel.js +36 -120
  196. package/js/dist/carousel.js.map +1 -1
  197. package/js/dist/collapse.js +27 -88
  198. package/js/dist/collapse.js.map +1 -1
  199. package/js/dist/dependency/manipulator.js +72 -0
  200. package/js/dist/dependency/manipulator.js.map +1 -0
  201. package/js/dist/dom/data.js +6 -10
  202. package/js/dist/dom/data.js.map +1 -1
  203. package/js/dist/dom/event-handler.js +7 -52
  204. package/js/dist/dom/event-handler.js.map +1 -1
  205. package/js/dist/dom/manipulator.js +2 -15
  206. package/js/dist/dom/manipulator.js.map +1 -1
  207. package/js/dist/dom/selector-engine.js +2 -16
  208. package/js/dist/dom/selector-engine.js.map +1 -1
  209. package/js/dist/dropdown.js +52 -124
  210. package/js/dist/dropdown.js.map +1 -1
  211. package/js/dist/modal.js +40 -119
  212. package/js/dist/modal.js.map +1 -1
  213. package/js/dist/offcanvas.js +36 -89
  214. package/js/dist/offcanvas.js.map +1 -1
  215. package/js/dist/popover.js +15 -22
  216. package/js/dist/popover.js.map +1 -1
  217. package/js/dist/scrollspy-legacy.js +216 -0
  218. package/js/dist/scrollspy-legacy.js.map +1 -0
  219. package/js/dist/scrollspy.js +42 -80
  220. package/js/dist/scrollspy.js.map +1 -1
  221. package/js/dist/tab.js +40 -98
  222. package/js/dist/tab.js.map +1 -1
  223. package/js/dist/toast.js +30 -69
  224. package/js/dist/toast.js.map +1 -1
  225. package/js/dist/tooltip.js +74 -196
  226. package/js/dist/tooltip.js.map +1 -1
  227. package/js/dist/util/backdrop.js +13 -40
  228. package/js/dist/util/backdrop.js.map +1 -1
  229. package/js/dist/util/component-functions.js +5 -11
  230. package/js/dist/util/component-functions.js.map +1 -1
  231. package/js/dist/util/config.js +6 -18
  232. package/js/dist/util/config.js.map +1 -1
  233. package/js/dist/util/focustrap.js +16 -33
  234. package/js/dist/util/focustrap.js.map +1 -1
  235. package/js/dist/util/index.js +28 -75
  236. package/js/dist/util/index.js.map +1 -1
  237. package/js/dist/util/sanitizer.js +7 -17
  238. package/js/dist/util/sanitizer.js.map +1 -1
  239. package/js/dist/util/scrollbar.js +16 -43
  240. package/js/dist/util/scrollbar.js.map +1 -1
  241. package/js/dist/util/swipe.js +18 -40
  242. package/js/dist/util/swipe.js.map +1 -1
  243. package/js/dist/util/template-factory.js +13 -41
  244. package/js/dist/util/template-factory.js.map +1 -1
  245. package/js/src/alert.js +1 -1
  246. package/js/src/base-component.js +2 -2
  247. package/js/src/button.js +1 -1
  248. package/js/src/carousel.js +1 -1
  249. package/js/src/collapse.js +1 -1
  250. package/js/src/dependency/manipulator.js +80 -0
  251. package/js/src/dom/data.js +1 -1
  252. package/js/src/dom/event-handler.js +1 -1
  253. package/js/src/dom/manipulator.js +1 -1
  254. package/js/src/dom/selector-engine.js +1 -1
  255. package/js/src/dropdown.js +10 -3
  256. package/js/src/modal.js +3 -3
  257. package/js/src/offcanvas.js +1 -1
  258. package/js/src/popover.js +1 -1
  259. package/js/src/scrollspy-legacy.js +294 -0
  260. package/js/src/scrollspy.js +1 -1
  261. package/js/src/tab.js +2 -4
  262. package/js/src/toast.js +9 -4
  263. package/js/src/tooltip.js +27 -48
  264. package/js/src/util/backdrop.js +1 -1
  265. package/js/src/util/component-functions.js +1 -1
  266. package/js/src/util/config.js +1 -1
  267. package/js/src/util/focustrap.js +1 -1
  268. package/js/src/util/index.js +1 -1
  269. package/js/src/util/sanitizer.js +1 -1
  270. package/js/src/util/scrollbar.js +1 -1
  271. package/js/src/util/swipe.js +1 -1
  272. package/js/src/util/template-factory.js +1 -1
  273. package/legacy/dependency/manipulator.js +80 -0
  274. package/legacy/scrollspy-legacy.js +294 -0
  275. package/package.json +6 -6
  276. package/scss/_buttons.scss +8 -2
  277. package/scss/_carousel.scss +0 -3
  278. package/scss/_functions.scss +1 -1
  279. package/scss/_toasts.scss +2 -0
  280. package/scss/_variables.scss +1 -1
  281. package/scss/bootstrap-utilities.scss +3 -0
  282. package/scss/mixins/_banner.scss +1 -1
  283. package/scss/mixins/_table-variants.scss +2 -2
@@ -4,21 +4,13 @@
4
4
  (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));
5
5
  })(this, (function (index, ScrollBarHelper, EventHandler, BaseComponent, SelectorEngine, Backdrop, FocusTrap, componentFunctions) { 'use strict';
6
6
 
7
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
8
-
9
- const ScrollBarHelper__default = /*#__PURE__*/_interopDefaultLegacy(ScrollBarHelper);
10
- const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
11
- const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
12
- const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
13
- const Backdrop__default = /*#__PURE__*/_interopDefaultLegacy(Backdrop);
14
- const FocusTrap__default = /*#__PURE__*/_interopDefaultLegacy(FocusTrap);
15
-
16
7
  /**
17
8
  * --------------------------------------------------------------------------
18
- * Bootstrap (v5.2.1): offcanvas.js
9
+ * Bootstrap (v5.2.3): offcanvas.js
19
10
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
20
11
  * --------------------------------------------------------------------------
21
12
  */
13
+
22
14
  /**
23
15
  * Constants
24
16
  */
@@ -53,142 +45,108 @@
53
45
  keyboard: 'boolean',
54
46
  scroll: 'boolean'
55
47
  };
48
+
56
49
  /**
57
50
  * Class definition
58
51
  */
59
52
 
60
- class Offcanvas extends BaseComponent__default.default {
53
+ class Offcanvas extends BaseComponent {
61
54
  constructor(element, config) {
62
55
  super(element, config);
63
56
  this._isShown = false;
64
57
  this._backdrop = this._initializeBackDrop();
65
58
  this._focustrap = this._initializeFocusTrap();
66
-
67
59
  this._addEventListeners();
68
- } // Getters
69
-
60
+ }
70
61
 
62
+ // Getters
71
63
  static get Default() {
72
64
  return Default;
73
65
  }
74
-
75
66
  static get DefaultType() {
76
67
  return DefaultType;
77
68
  }
78
-
79
69
  static get NAME() {
80
70
  return NAME;
81
- } // Public
82
-
71
+ }
83
72
 
73
+ // Public
84
74
  toggle(relatedTarget) {
85
75
  return this._isShown ? this.hide() : this.show(relatedTarget);
86
76
  }
87
-
88
77
  show(relatedTarget) {
89
78
  if (this._isShown) {
90
79
  return;
91
80
  }
92
-
93
- const showEvent = EventHandler__default.default.trigger(this._element, EVENT_SHOW, {
81
+ const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {
94
82
  relatedTarget
95
83
  });
96
-
97
84
  if (showEvent.defaultPrevented) {
98
85
  return;
99
86
  }
100
-
101
87
  this._isShown = true;
102
-
103
88
  this._backdrop.show();
104
-
105
89
  if (!this._config.scroll) {
106
- new ScrollBarHelper__default.default().hide();
90
+ new ScrollBarHelper().hide();
107
91
  }
108
-
109
92
  this._element.setAttribute('aria-modal', true);
110
-
111
93
  this._element.setAttribute('role', 'dialog');
112
-
113
94
  this._element.classList.add(CLASS_NAME_SHOWING);
114
-
115
95
  const completeCallBack = () => {
116
96
  if (!this._config.scroll || this._config.backdrop) {
117
97
  this._focustrap.activate();
118
98
  }
119
-
120
99
  this._element.classList.add(CLASS_NAME_SHOW);
121
-
122
100
  this._element.classList.remove(CLASS_NAME_SHOWING);
123
-
124
- EventHandler__default.default.trigger(this._element, EVENT_SHOWN, {
101
+ EventHandler.trigger(this._element, EVENT_SHOWN, {
125
102
  relatedTarget
126
103
  });
127
104
  };
128
-
129
105
  this._queueCallback(completeCallBack, this._element, true);
130
106
  }
131
-
132
107
  hide() {
133
108
  if (!this._isShown) {
134
109
  return;
135
110
  }
136
-
137
- const hideEvent = EventHandler__default.default.trigger(this._element, EVENT_HIDE);
138
-
111
+ const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE);
139
112
  if (hideEvent.defaultPrevented) {
140
113
  return;
141
114
  }
142
-
143
115
  this._focustrap.deactivate();
144
-
145
116
  this._element.blur();
146
-
147
117
  this._isShown = false;
148
-
149
118
  this._element.classList.add(CLASS_NAME_HIDING);
150
-
151
119
  this._backdrop.hide();
152
-
153
120
  const completeCallback = () => {
154
121
  this._element.classList.remove(CLASS_NAME_SHOW, CLASS_NAME_HIDING);
155
-
156
122
  this._element.removeAttribute('aria-modal');
157
-
158
123
  this._element.removeAttribute('role');
159
-
160
124
  if (!this._config.scroll) {
161
- new ScrollBarHelper__default.default().reset();
125
+ new ScrollBarHelper().reset();
162
126
  }
163
-
164
- EventHandler__default.default.trigger(this._element, EVENT_HIDDEN);
127
+ EventHandler.trigger(this._element, EVENT_HIDDEN);
165
128
  };
166
-
167
129
  this._queueCallback(completeCallback, this._element, true);
168
130
  }
169
-
170
131
  dispose() {
171
132
  this._backdrop.dispose();
172
-
173
133
  this._focustrap.deactivate();
174
-
175
134
  super.dispose();
176
- } // Private
177
-
135
+ }
178
136
 
137
+ // Private
179
138
  _initializeBackDrop() {
180
139
  const clickCallback = () => {
181
140
  if (this._config.backdrop === 'static') {
182
- EventHandler__default.default.trigger(this._element, EVENT_HIDE_PREVENTED);
141
+ EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);
183
142
  return;
184
143
  }
185
-
186
144
  this.hide();
187
- }; // 'static' option will be translated to true, and booleans will keep their value
188
-
145
+ };
189
146
 
147
+ // 'static' option will be translated to true, and booleans will keep their value
190
148
  const isVisible = Boolean(this._config.backdrop);
191
- return new Backdrop__default.default({
149
+ return new Backdrop({
192
150
  className: CLASS_NAME_BACKDROP,
193
151
  isVisible,
194
152
  isAnimated: true,
@@ -196,91 +154,80 @@
196
154
  clickCallback: isVisible ? clickCallback : null
197
155
  });
198
156
  }
199
-
200
157
  _initializeFocusTrap() {
201
- return new FocusTrap__default.default({
158
+ return new FocusTrap({
202
159
  trapElement: this._element
203
160
  });
204
161
  }
205
-
206
162
  _addEventListeners() {
207
- EventHandler__default.default.on(this._element, EVENT_KEYDOWN_DISMISS, event => {
163
+ EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {
208
164
  if (event.key !== ESCAPE_KEY) {
209
165
  return;
210
166
  }
211
-
212
167
  if (!this._config.keyboard) {
213
- EventHandler__default.default.trigger(this._element, EVENT_HIDE_PREVENTED);
168
+ EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);
214
169
  return;
215
170
  }
216
-
217
171
  this.hide();
218
172
  });
219
- } // Static
220
-
173
+ }
221
174
 
175
+ // Static
222
176
  static jQueryInterface(config) {
223
177
  return this.each(function () {
224
178
  const data = Offcanvas.getOrCreateInstance(this, config);
225
-
226
179
  if (typeof config !== 'string') {
227
180
  return;
228
181
  }
229
-
230
182
  if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
231
183
  throw new TypeError(`No method named "${config}"`);
232
184
  }
233
-
234
185
  data[config](this);
235
186
  });
236
187
  }
237
-
238
188
  }
189
+
239
190
  /**
240
191
  * Data API implementation
241
192
  */
242
193
 
243
-
244
- EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
194
+ EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
245
195
  const target = index.getElementFromSelector(this);
246
-
247
196
  if (['A', 'AREA'].includes(this.tagName)) {
248
197
  event.preventDefault();
249
198
  }
250
-
251
199
  if (index.isDisabled(this)) {
252
200
  return;
253
201
  }
254
-
255
- EventHandler__default.default.one(target, EVENT_HIDDEN, () => {
202
+ EventHandler.one(target, EVENT_HIDDEN, () => {
256
203
  // focus on trigger when it is closed
257
204
  if (index.isVisible(this)) {
258
205
  this.focus();
259
206
  }
260
- }); // avoid conflict when clicking a toggler of an offcanvas, while another is open
261
-
262
- const alreadyOpen = SelectorEngine__default.default.findOne(OPEN_SELECTOR);
207
+ });
263
208
 
209
+ // avoid conflict when clicking a toggler of an offcanvas, while another is open
210
+ const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR);
264
211
  if (alreadyOpen && alreadyOpen !== target) {
265
212
  Offcanvas.getInstance(alreadyOpen).hide();
266
213
  }
267
-
268
214
  const data = Offcanvas.getOrCreateInstance(target);
269
215
  data.toggle(this);
270
216
  });
271
- EventHandler__default.default.on(window, EVENT_LOAD_DATA_API, () => {
272
- for (const selector of SelectorEngine__default.default.find(OPEN_SELECTOR)) {
217
+ EventHandler.on(window, EVENT_LOAD_DATA_API, () => {
218
+ for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {
273
219
  Offcanvas.getOrCreateInstance(selector).show();
274
220
  }
275
221
  });
276
- EventHandler__default.default.on(window, EVENT_RESIZE, () => {
277
- for (const element of SelectorEngine__default.default.find('[aria-modal][class*=show][class*=offcanvas-]')) {
222
+ EventHandler.on(window, EVENT_RESIZE, () => {
223
+ for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {
278
224
  if (getComputedStyle(element).position !== 'fixed') {
279
225
  Offcanvas.getOrCreateInstance(element).hide();
280
226
  }
281
227
  }
282
228
  });
283
229
  componentFunctions.enableDismissTrigger(Offcanvas);
230
+
284
231
  /**
285
232
  * jQuery
286
233
  */
@@ -1 +1 @@
1
- {"version":3,"file":"offcanvas.js","sources":["../src/offcanvas.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.1): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Backdrop from './util/backdrop'\nimport FocusTrap from './util/focustrap'\nimport { enableDismissTrigger } from './util/component-functions'\n\n/**\n * Constants\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\nconst CLASS_NAME_HIDING = 'hiding'\nconst CLASS_NAME_BACKDROP = 'offcanvas-backdrop'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\n/**\n * Class definition\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._focustrap = this._initializeFocusTrap()\n this._addEventListeners()\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n }\n\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n const completeCallBack = () => {\n if (!this._config.scroll || this._config.backdrop) {\n this._focustrap.activate()\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOWING)\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._focustrap.deactivate()\n this._element.blur()\n this._isShown = false\n this._element.classList.add(CLASS_NAME_HIDING)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.classList.remove(CLASS_NAME_SHOW, CLASS_NAME_HIDING)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n this._focustrap.deactivate()\n super.dispose()\n }\n\n // Private\n _initializeBackDrop() {\n const clickCallback = () => {\n if (this._config.backdrop === 'static') {\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n return\n }\n\n this.hide()\n }\n\n // 'static' option will be translated to true, and booleans will keep their value\n const isVisible = Boolean(this._config.backdrop)\n\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: isVisible ? clickCallback : null\n })\n }\n\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n })\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (event.key !== ESCAPE_KEY) {\n return\n }\n\n if (!this._config.keyboard) {\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n return\n }\n\n this.hide()\n })\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (alreadyOpen && alreadyOpen !== target) {\n Offcanvas.getInstance(alreadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {\n Offcanvas.getOrCreateInstance(selector).show()\n }\n})\n\nEventHandler.on(window, EVENT_RESIZE, () => {\n for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {\n if (getComputedStyle(element).position !== 'fixed') {\n Offcanvas.getOrCreateInstance(element).hide()\n }\n }\n})\n\nenableDismissTrigger(Offcanvas)\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","EVENT_LOAD_DATA_API","ESCAPE_KEY","CLASS_NAME_SHOW","CLASS_NAME_SHOWING","CLASS_NAME_HIDING","CLASS_NAME_BACKDROP","OPEN_SELECTOR","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDE_PREVENTED","EVENT_HIDDEN","EVENT_RESIZE","EVENT_CLICK_DATA_API","EVENT_KEYDOWN_DISMISS","SELECTOR_DATA_TOGGLE","Default","backdrop","keyboard","scroll","DefaultType","Offcanvas","BaseComponent","constructor","element","config","_isShown","_backdrop","_initializeBackDrop","_focustrap","_initializeFocusTrap","_addEventListeners","toggle","relatedTarget","hide","show","showEvent","EventHandler","trigger","_element","defaultPrevented","_config","ScrollBarHelper","setAttribute","classList","add","completeCallBack","activate","remove","_queueCallback","hideEvent","deactivate","blur","completeCallback","removeAttribute","reset","dispose","clickCallback","isVisible","Boolean","Backdrop","className","isAnimated","rootElement","parentNode","FocusTrap","trapElement","on","event","key","jQueryInterface","each","data","getOrCreateInstance","undefined","startsWith","TypeError","document","target","getElementFromSelector","includes","tagName","preventDefault","isDisabled","one","focus","alreadyOpen","SelectorEngine","findOne","getInstance","window","selector","find","getComputedStyle","position","enableDismissTrigger","defineJQueryPlugin"],"mappings":"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"}
1
+ {"version":3,"file":"offcanvas.js","sources":["../src/offcanvas.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.3): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Backdrop from './util/backdrop'\nimport FocusTrap from './util/focustrap'\nimport { enableDismissTrigger } from './util/component-functions'\n\n/**\n * Constants\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\nconst CLASS_NAME_HIDING = 'hiding'\nconst CLASS_NAME_BACKDROP = 'offcanvas-backdrop'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\n/**\n * Class definition\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._focustrap = this._initializeFocusTrap()\n this._addEventListeners()\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n }\n\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n const completeCallBack = () => {\n if (!this._config.scroll || this._config.backdrop) {\n this._focustrap.activate()\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOWING)\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._focustrap.deactivate()\n this._element.blur()\n this._isShown = false\n this._element.classList.add(CLASS_NAME_HIDING)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.classList.remove(CLASS_NAME_SHOW, CLASS_NAME_HIDING)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n this._focustrap.deactivate()\n super.dispose()\n }\n\n // Private\n _initializeBackDrop() {\n const clickCallback = () => {\n if (this._config.backdrop === 'static') {\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n return\n }\n\n this.hide()\n }\n\n // 'static' option will be translated to true, and booleans will keep their value\n const isVisible = Boolean(this._config.backdrop)\n\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: isVisible ? clickCallback : null\n })\n }\n\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n })\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (event.key !== ESCAPE_KEY) {\n return\n }\n\n if (!this._config.keyboard) {\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n return\n }\n\n this.hide()\n })\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (alreadyOpen && alreadyOpen !== target) {\n Offcanvas.getInstance(alreadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {\n Offcanvas.getOrCreateInstance(selector).show()\n }\n})\n\nEventHandler.on(window, EVENT_RESIZE, () => {\n for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {\n if (getComputedStyle(element).position !== 'fixed') {\n Offcanvas.getOrCreateInstance(element).hide()\n }\n }\n})\n\nenableDismissTrigger(Offcanvas)\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","EVENT_LOAD_DATA_API","ESCAPE_KEY","CLASS_NAME_SHOW","CLASS_NAME_SHOWING","CLASS_NAME_HIDING","CLASS_NAME_BACKDROP","OPEN_SELECTOR","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDE_PREVENTED","EVENT_HIDDEN","EVENT_RESIZE","EVENT_CLICK_DATA_API","EVENT_KEYDOWN_DISMISS","SELECTOR_DATA_TOGGLE","Default","backdrop","keyboard","scroll","DefaultType","Offcanvas","BaseComponent","constructor","element","config","_isShown","_backdrop","_initializeBackDrop","_focustrap","_initializeFocusTrap","_addEventListeners","toggle","relatedTarget","hide","show","showEvent","EventHandler","trigger","_element","defaultPrevented","_config","ScrollBarHelper","setAttribute","classList","add","completeCallBack","activate","remove","_queueCallback","hideEvent","deactivate","blur","completeCallback","removeAttribute","reset","dispose","clickCallback","isVisible","Boolean","Backdrop","className","isAnimated","rootElement","parentNode","FocusTrap","trapElement","on","event","key","jQueryInterface","each","data","getOrCreateInstance","undefined","startsWith","TypeError","document","target","getElementFromSelector","includes","tagName","preventDefault","isDisabled","one","focus","alreadyOpen","SelectorEngine","findOne","getInstance","window","selector","find","getComputedStyle","position","enableDismissTrigger","defineJQueryPlugin"],"mappings":";;;;;;EAAA;EACA;EACA;EACA;EACA;EACA;;EAgBA;EACA;EACA;;EAEA,MAAMA,IAAI,GAAG,WAAW,CAAA;EACxB,MAAMC,QAAQ,GAAG,cAAc,CAAA;EAC/B,MAAMC,SAAS,GAAI,CAAGD,CAAAA,EAAAA,QAAS,CAAC,CAAA,CAAA;EAChC,MAAME,YAAY,GAAG,WAAW,CAAA;EAChC,MAAMC,mBAAmB,GAAI,CAAA,IAAA,EAAMF,SAAU,CAAA,EAAEC,YAAa,CAAC,CAAA,CAAA;EAC7D,MAAME,UAAU,GAAG,QAAQ,CAAA;EAE3B,MAAMC,eAAe,GAAG,MAAM,CAAA;EAC9B,MAAMC,kBAAkB,GAAG,SAAS,CAAA;EACpC,MAAMC,iBAAiB,GAAG,QAAQ,CAAA;EAClC,MAAMC,mBAAmB,GAAG,oBAAoB,CAAA;EAChD,MAAMC,aAAa,GAAG,iBAAiB,CAAA;EAEvC,MAAMC,UAAU,GAAI,CAAMT,IAAAA,EAAAA,SAAU,CAAC,CAAA,CAAA;EACrC,MAAMU,WAAW,GAAI,CAAOV,KAAAA,EAAAA,SAAU,CAAC,CAAA,CAAA;EACvC,MAAMW,UAAU,GAAI,CAAMX,IAAAA,EAAAA,SAAU,CAAC,CAAA,CAAA;EACrC,MAAMY,oBAAoB,GAAI,CAAeZ,aAAAA,EAAAA,SAAU,CAAC,CAAA,CAAA;EACxD,MAAMa,YAAY,GAAI,CAAQb,MAAAA,EAAAA,SAAU,CAAC,CAAA,CAAA;EACzC,MAAMc,YAAY,GAAI,CAAQd,MAAAA,EAAAA,SAAU,CAAC,CAAA,CAAA;EACzC,MAAMe,oBAAoB,GAAI,CAAA,KAAA,EAAOf,SAAU,CAAA,EAAEC,YAAa,CAAC,CAAA,CAAA;EAC/D,MAAMe,qBAAqB,GAAI,CAAiBhB,eAAAA,EAAAA,SAAU,CAAC,CAAA,CAAA;EAE3D,MAAMiB,oBAAoB,GAAG,8BAA8B,CAAA;EAE3D,MAAMC,OAAO,GAAG;EACdC,EAAAA,QAAQ,EAAE,IAAI;EACdC,EAAAA,QAAQ,EAAE,IAAI;EACdC,EAAAA,MAAM,EAAE,KAAA;EACV,CAAC,CAAA;EAED,MAAMC,WAAW,GAAG;EAClBH,EAAAA,QAAQ,EAAE,kBAAkB;EAC5BC,EAAAA,QAAQ,EAAE,SAAS;EACnBC,EAAAA,MAAM,EAAE,SAAA;EACV,CAAC,CAAA;;EAED;EACA;EACA;;EAEA,MAAME,SAAS,SAASC,aAAa,CAAC;EACpCC,EAAAA,WAAW,CAACC,OAAO,EAAEC,MAAM,EAAE;EAC3B,IAAA,KAAK,CAACD,OAAO,EAAEC,MAAM,CAAC,CAAA;MAEtB,IAAI,CAACC,QAAQ,GAAG,KAAK,CAAA;EACrB,IAAA,IAAI,CAACC,SAAS,GAAG,IAAI,CAACC,mBAAmB,EAAE,CAAA;EAC3C,IAAA,IAAI,CAACC,UAAU,GAAG,IAAI,CAACC,oBAAoB,EAAE,CAAA;MAC7C,IAAI,CAACC,kBAAkB,EAAE,CAAA;EAC3B,GAAA;;EAEA;EACA,EAAA,WAAWf,OAAO,GAAG;EACnB,IAAA,OAAOA,OAAO,CAAA;EAChB,GAAA;EAEA,EAAA,WAAWI,WAAW,GAAG;EACvB,IAAA,OAAOA,WAAW,CAAA;EACpB,GAAA;EAEA,EAAA,WAAWxB,IAAI,GAAG;EAChB,IAAA,OAAOA,IAAI,CAAA;EACb,GAAA;;EAEA;IACAoC,MAAM,CAACC,aAAa,EAAE;EACpB,IAAA,OAAO,IAAI,CAACP,QAAQ,GAAG,IAAI,CAACQ,IAAI,EAAE,GAAG,IAAI,CAACC,IAAI,CAACF,aAAa,CAAC,CAAA;EAC/D,GAAA;IAEAE,IAAI,CAACF,aAAa,EAAE;MAClB,IAAI,IAAI,CAACP,QAAQ,EAAE;EACjB,MAAA,OAAA;EACF,KAAA;MAEA,MAAMU,SAAS,GAAGC,YAAY,CAACC,OAAO,CAAC,IAAI,CAACC,QAAQ,EAAEhC,UAAU,EAAE;EAAE0B,MAAAA,aAAAA;EAAc,KAAC,CAAC,CAAA;MAEpF,IAAIG,SAAS,CAACI,gBAAgB,EAAE;EAC9B,MAAA,OAAA;EACF,KAAA;MAEA,IAAI,CAACd,QAAQ,GAAG,IAAI,CAAA;EACpB,IAAA,IAAI,CAACC,SAAS,CAACQ,IAAI,EAAE,CAAA;EAErB,IAAA,IAAI,CAAC,IAAI,CAACM,OAAO,CAACtB,MAAM,EAAE;EACxB,MAAA,IAAIuB,eAAe,EAAE,CAACR,IAAI,EAAE,CAAA;EAC9B,KAAA;MAEA,IAAI,CAACK,QAAQ,CAACI,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;MAC9C,IAAI,CAACJ,QAAQ,CAACI,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;MAC5C,IAAI,CAACJ,QAAQ,CAACK,SAAS,CAACC,GAAG,CAAC1C,kBAAkB,CAAC,CAAA;MAE/C,MAAM2C,gBAAgB,GAAG,MAAM;EAC7B,MAAA,IAAI,CAAC,IAAI,CAACL,OAAO,CAACtB,MAAM,IAAI,IAAI,CAACsB,OAAO,CAACxB,QAAQ,EAAE;EACjD,QAAA,IAAI,CAACY,UAAU,CAACkB,QAAQ,EAAE,CAAA;EAC5B,OAAA;QAEA,IAAI,CAACR,QAAQ,CAACK,SAAS,CAACC,GAAG,CAAC3C,eAAe,CAAC,CAAA;QAC5C,IAAI,CAACqC,QAAQ,CAACK,SAAS,CAACI,MAAM,CAAC7C,kBAAkB,CAAC,CAAA;QAClDkC,YAAY,CAACC,OAAO,CAAC,IAAI,CAACC,QAAQ,EAAE/B,WAAW,EAAE;EAAEyB,QAAAA,aAAAA;EAAc,OAAC,CAAC,CAAA;OACpE,CAAA;MAED,IAAI,CAACgB,cAAc,CAACH,gBAAgB,EAAE,IAAI,CAACP,QAAQ,EAAE,IAAI,CAAC,CAAA;EAC5D,GAAA;EAEAL,EAAAA,IAAI,GAAG;EACL,IAAA,IAAI,CAAC,IAAI,CAACR,QAAQ,EAAE;EAClB,MAAA,OAAA;EACF,KAAA;MAEA,MAAMwB,SAAS,GAAGb,YAAY,CAACC,OAAO,CAAC,IAAI,CAACC,QAAQ,EAAE9B,UAAU,CAAC,CAAA;MAEjE,IAAIyC,SAAS,CAACV,gBAAgB,EAAE;EAC9B,MAAA,OAAA;EACF,KAAA;EAEA,IAAA,IAAI,CAACX,UAAU,CAACsB,UAAU,EAAE,CAAA;EAC5B,IAAA,IAAI,CAACZ,QAAQ,CAACa,IAAI,EAAE,CAAA;MACpB,IAAI,CAAC1B,QAAQ,GAAG,KAAK,CAAA;MACrB,IAAI,CAACa,QAAQ,CAACK,SAAS,CAACC,GAAG,CAACzC,iBAAiB,CAAC,CAAA;EAC9C,IAAA,IAAI,CAACuB,SAAS,CAACO,IAAI,EAAE,CAAA;MAErB,MAAMmB,gBAAgB,GAAG,MAAM;QAC7B,IAAI,CAACd,QAAQ,CAACK,SAAS,CAACI,MAAM,CAAC9C,eAAe,EAAEE,iBAAiB,CAAC,CAAA;EAClE,MAAA,IAAI,CAACmC,QAAQ,CAACe,eAAe,CAAC,YAAY,CAAC,CAAA;EAC3C,MAAA,IAAI,CAACf,QAAQ,CAACe,eAAe,CAAC,MAAM,CAAC,CAAA;EAErC,MAAA,IAAI,CAAC,IAAI,CAACb,OAAO,CAACtB,MAAM,EAAE;EACxB,QAAA,IAAIuB,eAAe,EAAE,CAACa,KAAK,EAAE,CAAA;EAC/B,OAAA;QAEAlB,YAAY,CAACC,OAAO,CAAC,IAAI,CAACC,QAAQ,EAAE5B,YAAY,CAAC,CAAA;OAClD,CAAA;MAED,IAAI,CAACsC,cAAc,CAACI,gBAAgB,EAAE,IAAI,CAACd,QAAQ,EAAE,IAAI,CAAC,CAAA;EAC5D,GAAA;EAEAiB,EAAAA,OAAO,GAAG;EACR,IAAA,IAAI,CAAC7B,SAAS,CAAC6B,OAAO,EAAE,CAAA;EACxB,IAAA,IAAI,CAAC3B,UAAU,CAACsB,UAAU,EAAE,CAAA;MAC5B,KAAK,CAACK,OAAO,EAAE,CAAA;EACjB,GAAA;;EAEA;EACA5B,EAAAA,mBAAmB,GAAG;MACpB,MAAM6B,aAAa,GAAG,MAAM;EAC1B,MAAA,IAAI,IAAI,CAAChB,OAAO,CAACxB,QAAQ,KAAK,QAAQ,EAAE;UACtCoB,YAAY,CAACC,OAAO,CAAC,IAAI,CAACC,QAAQ,EAAE7B,oBAAoB,CAAC,CAAA;EACzD,QAAA,OAAA;EACF,OAAA;QAEA,IAAI,CAACwB,IAAI,EAAE,CAAA;OACZ,CAAA;;EAED;MACA,MAAMwB,SAAS,GAAGC,OAAO,CAAC,IAAI,CAAClB,OAAO,CAACxB,QAAQ,CAAC,CAAA;MAEhD,OAAO,IAAI2C,QAAQ,CAAC;EAClBC,MAAAA,SAAS,EAAExD,mBAAmB;QAC9BqD,SAAS;EACTI,MAAAA,UAAU,EAAE,IAAI;EAChBC,MAAAA,WAAW,EAAE,IAAI,CAACxB,QAAQ,CAACyB,UAAU;EACrCP,MAAAA,aAAa,EAAEC,SAAS,GAAGD,aAAa,GAAG,IAAA;EAC7C,KAAC,CAAC,CAAA;EACJ,GAAA;EAEA3B,EAAAA,oBAAoB,GAAG;MACrB,OAAO,IAAImC,SAAS,CAAC;QACnBC,WAAW,EAAE,IAAI,CAAC3B,QAAAA;EACpB,KAAC,CAAC,CAAA;EACJ,GAAA;EAEAR,EAAAA,kBAAkB,GAAG;MACnBM,YAAY,CAAC8B,EAAE,CAAC,IAAI,CAAC5B,QAAQ,EAAEzB,qBAAqB,EAAEsD,KAAK,IAAI;EAC7D,MAAA,IAAIA,KAAK,CAACC,GAAG,KAAKpE,UAAU,EAAE;EAC5B,QAAA,OAAA;EACF,OAAA;EAEA,MAAA,IAAI,CAAC,IAAI,CAACwC,OAAO,CAACvB,QAAQ,EAAE;UAC1BmB,YAAY,CAACC,OAAO,CAAC,IAAI,CAACC,QAAQ,EAAE7B,oBAAoB,CAAC,CAAA;EACzD,QAAA,OAAA;EACF,OAAA;QAEA,IAAI,CAACwB,IAAI,EAAE,CAAA;EACb,KAAC,CAAC,CAAA;EACJ,GAAA;;EAEA;IACA,OAAOoC,eAAe,CAAC7C,MAAM,EAAE;EAC7B,IAAA,OAAO,IAAI,CAAC8C,IAAI,CAAC,YAAY;QAC3B,MAAMC,IAAI,GAAGnD,SAAS,CAACoD,mBAAmB,CAAC,IAAI,EAAEhD,MAAM,CAAC,CAAA;EAExD,MAAA,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;EAC9B,QAAA,OAAA;EACF,OAAA;EAEA,MAAA,IAAI+C,IAAI,CAAC/C,MAAM,CAAC,KAAKiD,SAAS,IAAIjD,MAAM,CAACkD,UAAU,CAAC,GAAG,CAAC,IAAIlD,MAAM,KAAK,aAAa,EAAE;EACpF,QAAA,MAAM,IAAImD,SAAS,CAAE,CAAmBnD,iBAAAA,EAAAA,MAAO,GAAE,CAAC,CAAA;EACpD,OAAA;EAEA+C,MAAAA,IAAI,CAAC/C,MAAM,CAAC,CAAC,IAAI,CAAC,CAAA;EACpB,KAAC,CAAC,CAAA;EACJ,GAAA;EACF,CAAA;;EAEA;EACA;EACA;;EAEAY,YAAY,CAAC8B,EAAE,CAACU,QAAQ,EAAEhE,oBAAoB,EAAEE,oBAAoB,EAAE,UAAUqD,KAAK,EAAE;EACrF,EAAA,MAAMU,MAAM,GAAGC,4BAAsB,CAAC,IAAI,CAAC,CAAA;EAE3C,EAAA,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAACC,QAAQ,CAAC,IAAI,CAACC,OAAO,CAAC,EAAE;MACxCb,KAAK,CAACc,cAAc,EAAE,CAAA;EACxB,GAAA;EAEA,EAAA,IAAIC,gBAAU,CAAC,IAAI,CAAC,EAAE;EACpB,IAAA,OAAA;EACF,GAAA;EAEA9C,EAAAA,YAAY,CAAC+C,GAAG,CAACN,MAAM,EAAEnE,YAAY,EAAE,MAAM;EAC3C;EACA,IAAA,IAAI+C,eAAS,CAAC,IAAI,CAAC,EAAE;QACnB,IAAI,CAAC2B,KAAK,EAAE,CAAA;EACd,KAAA;EACF,GAAC,CAAC,CAAA;;EAEF;EACA,EAAA,MAAMC,WAAW,GAAGC,cAAc,CAACC,OAAO,CAAClF,aAAa,CAAC,CAAA;EACzD,EAAA,IAAIgF,WAAW,IAAIA,WAAW,KAAKR,MAAM,EAAE;EACzCzD,IAAAA,SAAS,CAACoE,WAAW,CAACH,WAAW,CAAC,CAACpD,IAAI,EAAE,CAAA;EAC3C,GAAA;EAEA,EAAA,MAAMsC,IAAI,GAAGnD,SAAS,CAACoD,mBAAmB,CAACK,MAAM,CAAC,CAAA;EAClDN,EAAAA,IAAI,CAACxC,MAAM,CAAC,IAAI,CAAC,CAAA;EACnB,CAAC,CAAC,CAAA;EAEFK,YAAY,CAAC8B,EAAE,CAACuB,MAAM,EAAE1F,mBAAmB,EAAE,MAAM;IACjD,KAAK,MAAM2F,QAAQ,IAAIJ,cAAc,CAACK,IAAI,CAACtF,aAAa,CAAC,EAAE;EACzDe,IAAAA,SAAS,CAACoD,mBAAmB,CAACkB,QAAQ,CAAC,CAACxD,IAAI,EAAE,CAAA;EAChD,GAAA;EACF,CAAC,CAAC,CAAA;EAEFE,YAAY,CAAC8B,EAAE,CAACuB,MAAM,EAAE9E,YAAY,EAAE,MAAM;IAC1C,KAAK,MAAMY,OAAO,IAAI+D,cAAc,CAACK,IAAI,CAAC,8CAA8C,CAAC,EAAE;MACzF,IAAIC,gBAAgB,CAACrE,OAAO,CAAC,CAACsE,QAAQ,KAAK,OAAO,EAAE;EAClDzE,MAAAA,SAAS,CAACoD,mBAAmB,CAACjD,OAAO,CAAC,CAACU,IAAI,EAAE,CAAA;EAC/C,KAAA;EACF,GAAA;EACF,CAAC,CAAC,CAAA;AAEF6D,yCAAoB,CAAC1E,SAAS,CAAC,CAAA;;EAE/B;EACA;EACA;;AAEA2E,0BAAkB,CAAC3E,SAAS,CAAC;;;;;;;;"}
@@ -4,16 +4,13 @@
4
4
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Popover = factory(global.Index, global.Tooltip));
5
5
  })(this, (function (index, Tooltip) { 'use strict';
6
6
 
7
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
8
-
9
- const Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
10
-
11
7
  /**
12
8
  * --------------------------------------------------------------------------
13
- * Bootstrap (v5.2.1): popover.js
9
+ * Bootstrap (v5.2.3): popover.js
14
10
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
15
11
  * --------------------------------------------------------------------------
16
12
  */
13
+
17
14
  /**
18
15
  * Constants
19
16
  */
@@ -21,74 +18,70 @@
21
18
  const NAME = 'popover';
22
19
  const SELECTOR_TITLE = '.popover-header';
23
20
  const SELECTOR_CONTENT = '.popover-body';
24
- const Default = { ...Tooltip__default.default.Default,
21
+ const Default = {
22
+ ...Tooltip.Default,
25
23
  content: '',
26
24
  offset: [0, 8],
27
25
  placement: 'right',
28
26
  template: '<div class="popover" role="tooltip">' + '<div class="popover-arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div>' + '</div>',
29
27
  trigger: 'click'
30
28
  };
31
- const DefaultType = { ...Tooltip__default.default.DefaultType,
29
+ const DefaultType = {
30
+ ...Tooltip.DefaultType,
32
31
  content: '(null|string|element|function)'
33
32
  };
33
+
34
34
  /**
35
35
  * Class definition
36
36
  */
37
37
 
38
- class Popover extends Tooltip__default.default {
38
+ class Popover extends Tooltip {
39
39
  // Getters
40
40
  static get Default() {
41
41
  return Default;
42
42
  }
43
-
44
43
  static get DefaultType() {
45
44
  return DefaultType;
46
45
  }
47
-
48
46
  static get NAME() {
49
47
  return NAME;
50
- } // Overrides
51
-
48
+ }
52
49
 
50
+ // Overrides
53
51
  _isWithContent() {
54
52
  return this._getTitle() || this._getContent();
55
- } // Private
56
-
53
+ }
57
54
 
55
+ // Private
58
56
  _getContentForTemplate() {
59
57
  return {
60
58
  [SELECTOR_TITLE]: this._getTitle(),
61
59
  [SELECTOR_CONTENT]: this._getContent()
62
60
  };
63
61
  }
64
-
65
62
  _getContent() {
66
63
  return this._resolvePossibleFunction(this._config.content);
67
- } // Static
68
-
64
+ }
69
65
 
66
+ // Static
70
67
  static jQueryInterface(config) {
71
68
  return this.each(function () {
72
69
  const data = Popover.getOrCreateInstance(this, config);
73
-
74
70
  if (typeof config !== 'string') {
75
71
  return;
76
72
  }
77
-
78
73
  if (typeof data[config] === 'undefined') {
79
74
  throw new TypeError(`No method named "${config}"`);
80
75
  }
81
-
82
76
  data[config]();
83
77
  });
84
78
  }
85
-
86
79
  }
80
+
87
81
  /**
88
82
  * jQuery
89
83
  */
90
84
 
91
-
92
85
  index.defineJQueryPlugin(Popover);
93
86
 
94
87
  return Popover;
@@ -1 +1 @@
1
- {"version":3,"file":"popover.js","sources":["../src/popover.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.1): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport Tooltip from './tooltip'\n\n/**\n * Constants\n */\n\nconst NAME = 'popover'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\nconst Default = {\n ...Tooltip.Default,\n content: '',\n offset: [0, 8],\n placement: 'right',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>',\n trigger: 'click'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(null|string|element|function)'\n}\n\n/**\n * Class definition\n */\n\nclass Popover extends Tooltip {\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Overrides\n _isWithContent() {\n return this._getTitle() || this._getContent()\n }\n\n // Private\n _getContentForTemplate() {\n return {\n [SELECTOR_TITLE]: this._getTitle(),\n [SELECTOR_CONTENT]: this._getContent()\n }\n }\n\n _getContent() {\n return this._resolvePossibleFunction(this._config.content)\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n"],"names":["NAME","SELECTOR_TITLE","SELECTOR_CONTENT","Default","Tooltip","content","offset","placement","template","trigger","DefaultType","Popover","_isWithContent","_getTitle","_getContent","_getContentForTemplate","_resolvePossibleFunction","_config","jQueryInterface","config","each","data","getOrCreateInstance","TypeError","defineJQueryPlugin"],"mappings":";;;;;;;;;;EAAA;EACA;EACA;EACA;EACA;EACA;EAKA;EACA;EACA;;EAEA,MAAMA,IAAI,GAAG,SAAb,CAAA;EAEA,MAAMC,cAAc,GAAG,iBAAvB,CAAA;EACA,MAAMC,gBAAgB,GAAG,eAAzB,CAAA;EAEA,MAAMC,OAAO,GAAG,EACd,GAAGC,wBAAO,CAACD,OADG;EAEdE,EAAAA,OAAO,EAAE,EAFK;EAGdC,EAAAA,MAAM,EAAE,CAAC,CAAD,EAAI,CAAJ,CAHM;EAIdC,EAAAA,SAAS,EAAE,OAJG;IAKdC,QAAQ,EAAE,yCACR,mCADQ,GAER,kCAFQ,GAGR,kCAHQ,GAIR,QATY;EAUdC,EAAAA,OAAO,EAAE,OAAA;EAVK,CAAhB,CAAA;EAaA,MAAMC,WAAW,GAAG,EAClB,GAAGN,wBAAO,CAACM,WADO;EAElBL,EAAAA,OAAO,EAAE,gCAAA;EAFS,CAApB,CAAA;EAKA;EACA;EACA;;EAEA,MAAMM,OAAN,SAAsBP,wBAAtB,CAA8B;EAC5B;EACkB,EAAA,WAAPD,OAAO,GAAG;EACnB,IAAA,OAAOA,OAAP,CAAA;EACD,GAAA;;EAEqB,EAAA,WAAXO,WAAW,GAAG;EACvB,IAAA,OAAOA,WAAP,CAAA;EACD,GAAA;;EAEc,EAAA,WAAJV,IAAI,GAAG;EAChB,IAAA,OAAOA,IAAP,CAAA;EACD,GAZ2B;;;EAe5BY,EAAAA,cAAc,GAAG;EACf,IAAA,OAAO,IAAKC,CAAAA,SAAL,EAAoB,IAAA,IAAA,CAAKC,WAAL,EAA3B,CAAA;EACD,GAjB2B;;;EAoB5BC,EAAAA,sBAAsB,GAAG;MACvB,OAAO;EACL,MAAA,CAACd,cAAD,GAAkB,IAAKY,CAAAA,SAAL,EADb;QAEL,CAACX,gBAAD,GAAoB,IAAA,CAAKY,WAAL,EAAA;OAFtB,CAAA;EAID,GAAA;;EAEDA,EAAAA,WAAW,GAAG;EACZ,IAAA,OAAO,KAAKE,wBAAL,CAA8B,KAAKC,OAAL,CAAaZ,OAA3C,CAAP,CAAA;EACD,GA7B2B;;;IAgCN,OAAfa,eAAe,CAACC,MAAD,EAAS;MAC7B,OAAO,IAAA,CAAKC,IAAL,CAAU,YAAY;QAC3B,MAAMC,IAAI,GAAGV,OAAO,CAACW,mBAAR,CAA4B,IAA5B,EAAkCH,MAAlC,CAAb,CAAA;;EAEA,MAAA,IAAI,OAAOA,MAAP,KAAkB,QAAtB,EAAgC;EAC9B,QAAA,OAAA;EACD,OAAA;;EAED,MAAA,IAAI,OAAOE,IAAI,CAACF,MAAD,CAAX,KAAwB,WAA5B,EAAyC;EACvC,QAAA,MAAM,IAAII,SAAJ,CAAe,CAAmBJ,iBAAAA,EAAAA,MAAO,GAAzC,CAAN,CAAA;EACD,OAAA;;QAEDE,IAAI,CAACF,MAAD,CAAJ,EAAA,CAAA;EACD,KAZM,CAAP,CAAA;EAaD,GAAA;;EA9C2B,CAAA;EAiD9B;EACA;EACA;;;AAEAK,0BAAkB,CAACb,OAAD,CAAlB;;;;;;;;"}
1
+ {"version":3,"file":"popover.js","sources":["../src/popover.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.3): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport Tooltip from './tooltip'\n\n/**\n * Constants\n */\n\nconst NAME = 'popover'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\nconst Default = {\n ...Tooltip.Default,\n content: '',\n offset: [0, 8],\n placement: 'right',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>',\n trigger: 'click'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(null|string|element|function)'\n}\n\n/**\n * Class definition\n */\n\nclass Popover extends Tooltip {\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Overrides\n _isWithContent() {\n return this._getTitle() || this._getContent()\n }\n\n // Private\n _getContentForTemplate() {\n return {\n [SELECTOR_TITLE]: this._getTitle(),\n [SELECTOR_CONTENT]: this._getContent()\n }\n }\n\n _getContent() {\n return this._resolvePossibleFunction(this._config.content)\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n"],"names":["NAME","SELECTOR_TITLE","SELECTOR_CONTENT","Default","Tooltip","content","offset","placement","template","trigger","DefaultType","Popover","_isWithContent","_getTitle","_getContent","_getContentForTemplate","_resolvePossibleFunction","_config","jQueryInterface","config","each","data","getOrCreateInstance","TypeError","defineJQueryPlugin"],"mappings":";;;;;;EAAA;EACA;EACA;EACA;EACA;EACA;;EAKA;EACA;EACA;;EAEA,MAAMA,IAAI,GAAG,SAAS,CAAA;EAEtB,MAAMC,cAAc,GAAG,iBAAiB,CAAA;EACxC,MAAMC,gBAAgB,GAAG,eAAe,CAAA;EAExC,MAAMC,OAAO,GAAG;IACd,GAAGC,OAAO,CAACD,OAAO;EAClBE,EAAAA,OAAO,EAAE,EAAE;EACXC,EAAAA,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;EACdC,EAAAA,SAAS,EAAE,OAAO;IAClBC,QAAQ,EAAE,sCAAsC,GAC9C,mCAAmC,GACnC,kCAAkC,GAClC,kCAAkC,GAClC,QAAQ;EACVC,EAAAA,OAAO,EAAE,OAAA;EACX,CAAC,CAAA;EAED,MAAMC,WAAW,GAAG;IAClB,GAAGN,OAAO,CAACM,WAAW;EACtBL,EAAAA,OAAO,EAAE,gCAAA;EACX,CAAC,CAAA;;EAED;EACA;EACA;;EAEA,MAAMM,OAAO,SAASP,OAAO,CAAC;EAC5B;EACA,EAAA,WAAWD,OAAO,GAAG;EACnB,IAAA,OAAOA,OAAO,CAAA;EAChB,GAAA;EAEA,EAAA,WAAWO,WAAW,GAAG;EACvB,IAAA,OAAOA,WAAW,CAAA;EACpB,GAAA;EAEA,EAAA,WAAWV,IAAI,GAAG;EAChB,IAAA,OAAOA,IAAI,CAAA;EACb,GAAA;;EAEA;EACAY,EAAAA,cAAc,GAAG;MACf,OAAO,IAAI,CAACC,SAAS,EAAE,IAAI,IAAI,CAACC,WAAW,EAAE,CAAA;EAC/C,GAAA;;EAEA;EACAC,EAAAA,sBAAsB,GAAG;MACvB,OAAO;EACL,MAAA,CAACd,cAAc,GAAG,IAAI,CAACY,SAAS,EAAE;EAClC,MAAA,CAACX,gBAAgB,GAAG,IAAI,CAACY,WAAW,EAAA;OACrC,CAAA;EACH,GAAA;EAEAA,EAAAA,WAAW,GAAG;MACZ,OAAO,IAAI,CAACE,wBAAwB,CAAC,IAAI,CAACC,OAAO,CAACZ,OAAO,CAAC,CAAA;EAC5D,GAAA;;EAEA;IACA,OAAOa,eAAe,CAACC,MAAM,EAAE;EAC7B,IAAA,OAAO,IAAI,CAACC,IAAI,CAAC,YAAY;QAC3B,MAAMC,IAAI,GAAGV,OAAO,CAACW,mBAAmB,CAAC,IAAI,EAAEH,MAAM,CAAC,CAAA;EAEtD,MAAA,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;EAC9B,QAAA,OAAA;EACF,OAAA;EAEA,MAAA,IAAI,OAAOE,IAAI,CAACF,MAAM,CAAC,KAAK,WAAW,EAAE;EACvC,QAAA,MAAM,IAAII,SAAS,CAAE,CAAmBJ,iBAAAA,EAAAA,MAAO,GAAE,CAAC,CAAA;EACpD,OAAA;QAEAE,IAAI,CAACF,MAAM,CAAC,EAAE,CAAA;EAChB,KAAC,CAAC,CAAA;EACJ,GAAA;EACF,CAAA;;EAEA;EACA;EACA;;AAEAK,0BAAkB,CAACb,OAAO,CAAC;;;;;;;;"}