vertx-howtos-jekyll-theme 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/README.md +52 -0
  4. data/_layouts/page.html +61 -0
  5. data/_sass/bootstrap/js/dist/alert.js +199 -0
  6. data/_sass/bootstrap/js/dist/alert.js.map +1 -0
  7. data/_sass/bootstrap/js/dist/button.js +187 -0
  8. data/_sass/bootstrap/js/dist/button.js.map +1 -0
  9. data/_sass/bootstrap/js/dist/carousel.js +666 -0
  10. data/_sass/bootstrap/js/dist/carousel.js.map +1 -0
  11. data/_sass/bootstrap/js/dist/collapse.js +428 -0
  12. data/_sass/bootstrap/js/dist/collapse.js.map +1 -0
  13. data/_sass/bootstrap/js/dist/dropdown.js +591 -0
  14. data/_sass/bootstrap/js/dist/dropdown.js.map +1 -0
  15. data/_sass/bootstrap/js/dist/index.js +23 -0
  16. data/_sass/bootstrap/js/dist/index.js.map +1 -0
  17. data/_sass/bootstrap/js/dist/modal.js +644 -0
  18. data/_sass/bootstrap/js/dist/modal.js.map +1 -0
  19. data/_sass/bootstrap/js/dist/popover.js +261 -0
  20. data/_sass/bootstrap/js/dist/popover.js.map +1 -0
  21. data/_sass/bootstrap/js/dist/scrollspy.js +375 -0
  22. data/_sass/bootstrap/js/dist/scrollspy.js.map +1 -0
  23. data/_sass/bootstrap/js/dist/tab.js +266 -0
  24. data/_sass/bootstrap/js/dist/tab.js.map +1 -0
  25. data/_sass/bootstrap/js/dist/toast.js +278 -0
  26. data/_sass/bootstrap/js/dist/toast.js.map +1 -0
  27. data/_sass/bootstrap/js/dist/tooltip.js +745 -0
  28. data/_sass/bootstrap/js/dist/tooltip.js.map +1 -0
  29. data/_sass/bootstrap/js/dist/util.js +168 -0
  30. data/_sass/bootstrap/js/dist/util.js.map +1 -0
  31. data/_sass/bootstrap/js/src/alert.js +179 -0
  32. data/_sass/bootstrap/js/src/button.js +171 -0
  33. data/_sass/bootstrap/js/src/carousel.js +604 -0
  34. data/_sass/bootstrap/js/src/collapse.js +402 -0
  35. data/_sass/bootstrap/js/src/dropdown.js +538 -0
  36. data/_sass/bootstrap/js/src/index.js +52 -0
  37. data/_sass/bootstrap/js/src/modal.js +587 -0
  38. data/_sass/bootstrap/js/src/popover.js +184 -0
  39. data/_sass/bootstrap/js/src/scrollspy.js +326 -0
  40. data/_sass/bootstrap/js/src/tab.js +257 -0
  41. data/_sass/bootstrap/js/src/toast.js +223 -0
  42. data/_sass/bootstrap/js/src/tooltip.js +735 -0
  43. data/_sass/bootstrap/js/src/util.js +173 -0
  44. data/_sass/bootstrap/js/tests/README.md +69 -0
  45. data/_sass/bootstrap/js/tests/browsers.js +82 -0
  46. data/_sass/bootstrap/js/tests/index.html +145 -0
  47. data/_sass/bootstrap/js/tests/integration/bundle.js +8 -0
  48. data/_sass/bootstrap/js/tests/integration/index.html +66 -0
  49. data/_sass/bootstrap/js/tests/integration/rollup.bundle.js +20 -0
  50. data/_sass/bootstrap/js/tests/karma.conf.js +145 -0
  51. data/_sass/bootstrap/js/tests/unit/.eslintrc.json +40 -0
  52. data/_sass/bootstrap/js/tests/unit/alert.js +123 -0
  53. data/_sass/bootstrap/js/tests/unit/button.js +222 -0
  54. data/_sass/bootstrap/js/tests/unit/carousel.js +1273 -0
  55. data/_sass/bootstrap/js/tests/unit/collapse.js +892 -0
  56. data/_sass/bootstrap/js/tests/unit/dropdown.js +1364 -0
  57. data/_sass/bootstrap/js/tests/unit/modal.js +796 -0
  58. data/_sass/bootstrap/js/tests/unit/popover.js +471 -0
  59. data/_sass/bootstrap/js/tests/unit/scrollspy.js +728 -0
  60. data/_sass/bootstrap/js/tests/unit/tab.js +462 -0
  61. data/_sass/bootstrap/js/tests/unit/toast.js +239 -0
  62. data/_sass/bootstrap/js/tests/unit/tooltip.js +1072 -0
  63. data/_sass/bootstrap/js/tests/unit/util.js +164 -0
  64. data/_sass/bootstrap/js/tests/visual/alert.html +58 -0
  65. data/_sass/bootstrap/js/tests/visual/button.html +51 -0
  66. data/_sass/bootstrap/js/tests/visual/carousel.html +66 -0
  67. data/_sass/bootstrap/js/tests/visual/collapse.html +78 -0
  68. data/_sass/bootstrap/js/tests/visual/dropdown.html +212 -0
  69. data/_sass/bootstrap/js/tests/visual/modal.html +268 -0
  70. data/_sass/bootstrap/js/tests/visual/popover.html +46 -0
  71. data/_sass/bootstrap/js/tests/visual/scrollspy.html +95 -0
  72. data/_sass/bootstrap/js/tests/visual/tab.html +234 -0
  73. data/_sass/bootstrap/js/tests/visual/toast.html +72 -0
  74. data/_sass/bootstrap/js/tests/visual/tooltip.html +106 -0
  75. data/_sass/bootstrap/scss/_alert.scss +51 -0
  76. data/_sass/bootstrap/scss/_badge.scss +53 -0
  77. data/_sass/bootstrap/scss/_breadcrumb.scss +41 -0
  78. data/_sass/bootstrap/scss/_button-group.scss +163 -0
  79. data/_sass/bootstrap/scss/_buttons.scss +140 -0
  80. data/_sass/bootstrap/scss/_card.scss +310 -0
  81. data/_sass/bootstrap/scss/_carousel.scss +198 -0
  82. data/_sass/bootstrap/scss/_close.scss +44 -0
  83. data/_sass/bootstrap/scss/_code.scss +48 -0
  84. data/_sass/bootstrap/scss/_custom-forms.scss +507 -0
  85. data/_sass/bootstrap/scss/_dropdown.scss +191 -0
  86. data/_sass/bootstrap/scss/_forms.scss +334 -0
  87. data/_sass/bootstrap/scss/_functions.scss +86 -0
  88. data/_sass/bootstrap/scss/_grid.scss +52 -0
  89. data/_sass/bootstrap/scss/_images.scss +42 -0
  90. data/_sass/bootstrap/scss/_input-group.scss +193 -0
  91. data/_sass/bootstrap/scss/_jumbotron.scss +16 -0
  92. data/_sass/bootstrap/scss/_list-group.scss +121 -0
  93. data/_sass/bootstrap/scss/_media.scss +8 -0
  94. data/_sass/bootstrap/scss/_mixins.scss +41 -0
  95. data/_sass/bootstrap/scss/_modal.scss +186 -0
  96. data/_sass/bootstrap/scss/_nav.scss +120 -0
  97. data/_sass/bootstrap/scss/_navbar.scss +299 -0
  98. data/_sass/bootstrap/scss/_pagination.scss +78 -0
  99. data/_sass/bootstrap/scss/_popover.scss +183 -0
  100. data/_sass/bootstrap/scss/_print.scss +141 -0
  101. data/_sass/bootstrap/scss/_progress.scss +34 -0
  102. data/_sass/bootstrap/scss/_reboot.scss +462 -0
  103. data/_sass/bootstrap/scss/_root.scss +19 -0
  104. data/_sass/bootstrap/scss/_spinners.scss +53 -0
  105. data/_sass/bootstrap/scss/_tables.scss +187 -0
  106. data/_sass/bootstrap/scss/_toasts.scss +43 -0
  107. data/_sass/bootstrap/scss/_tooltip.scss +115 -0
  108. data/_sass/bootstrap/scss/_transitions.scss +22 -0
  109. data/_sass/bootstrap/scss/_type.scss +125 -0
  110. data/_sass/bootstrap/scss/_utilities.scss +16 -0
  111. data/_sass/bootstrap/scss/_variables.scss +1091 -0
  112. data/_sass/bootstrap/scss/bootstrap-grid.scss +29 -0
  113. data/_sass/bootstrap/scss/bootstrap-reboot.scss +12 -0
  114. data/_sass/bootstrap/scss/bootstrap.scss +44 -0
  115. data/_sass/bootstrap/scss/mixins/_alert.scss +13 -0
  116. data/_sass/bootstrap/scss/mixins/_background-variant.scss +21 -0
  117. data/_sass/bootstrap/scss/mixins/_badge.scss +11 -0
  118. data/_sass/bootstrap/scss/mixins/_border-radius.scss +35 -0
  119. data/_sass/bootstrap/scss/mixins/_box-shadow.scss +5 -0
  120. data/_sass/bootstrap/scss/mixins/_breakpoints.scss +123 -0
  121. data/_sass/bootstrap/scss/mixins/_buttons.scss +111 -0
  122. data/_sass/bootstrap/scss/mixins/_caret.scss +62 -0
  123. data/_sass/bootstrap/scss/mixins/_clearfix.scss +7 -0
  124. data/_sass/bootstrap/scss/mixins/_float.scss +11 -0
  125. data/_sass/bootstrap/scss/mixins/_forms.scss +198 -0
  126. data/_sass/bootstrap/scss/mixins/_gradients.scss +45 -0
  127. data/_sass/bootstrap/scss/mixins/_grid-framework.scss +66 -0
  128. data/_sass/bootstrap/scss/mixins/_grid.scss +51 -0
  129. data/_sass/bootstrap/scss/mixins/_hover.scss +37 -0
  130. data/_sass/bootstrap/scss/mixins/_image.scss +36 -0
  131. data/_sass/bootstrap/scss/mixins/_list-group.scss +21 -0
  132. data/_sass/bootstrap/scss/mixins/_lists.scss +7 -0
  133. data/_sass/bootstrap/scss/mixins/_nav-divider.scss +10 -0
  134. data/_sass/bootstrap/scss/mixins/_pagination.scss +22 -0
  135. data/_sass/bootstrap/scss/mixins/_reset-text.scss +17 -0
  136. data/_sass/bootstrap/scss/mixins/_resize.scss +6 -0
  137. data/_sass/bootstrap/scss/mixins/_screen-reader.scss +33 -0
  138. data/_sass/bootstrap/scss/mixins/_size.scss +6 -0
  139. data/_sass/bootstrap/scss/mixins/_table-row.scss +39 -0
  140. data/_sass/bootstrap/scss/mixins/_text-emphasis.scss +14 -0
  141. data/_sass/bootstrap/scss/mixins/_text-hide.scss +13 -0
  142. data/_sass/bootstrap/scss/mixins/_text-truncate.scss +8 -0
  143. data/_sass/bootstrap/scss/mixins/_transition.scss +16 -0
  144. data/_sass/bootstrap/scss/mixins/_visibility.scss +7 -0
  145. data/_sass/bootstrap/scss/utilities/_align.scss +8 -0
  146. data/_sass/bootstrap/scss/utilities/_background.scss +19 -0
  147. data/_sass/bootstrap/scss/utilities/_borders.scss +63 -0
  148. data/_sass/bootstrap/scss/utilities/_clearfix.scss +3 -0
  149. data/_sass/bootstrap/scss/utilities/_display.scss +38 -0
  150. data/_sass/bootstrap/scss/utilities/_embed.scss +39 -0
  151. data/_sass/bootstrap/scss/utilities/_flex.scss +51 -0
  152. data/_sass/bootstrap/scss/utilities/_float.scss +9 -0
  153. data/_sass/bootstrap/scss/utilities/_overflow.scss +5 -0
  154. data/_sass/bootstrap/scss/utilities/_position.scss +32 -0
  155. data/_sass/bootstrap/scss/utilities/_screenreaders.scss +11 -0
  156. data/_sass/bootstrap/scss/utilities/_shadows.scss +6 -0
  157. data/_sass/bootstrap/scss/utilities/_sizing.scss +20 -0
  158. data/_sass/bootstrap/scss/utilities/_spacing.scss +73 -0
  159. data/_sass/bootstrap/scss/utilities/_text.scss +67 -0
  160. data/_sass/bootstrap/scss/utilities/_visibility.scss +11 -0
  161. data/_sass/custom.scss +1 -0
  162. data/assets/css/style.scss +65 -0
  163. data/assets/images/vertx-square.svg +1 -0
  164. metadata +248 -0
@@ -0,0 +1,257 @@
1
+ /**
2
+ * --------------------------------------------------------------------------
3
+ * Bootstrap (v4.2.1): tab.js
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ * --------------------------------------------------------------------------
6
+ */
7
+
8
+ import $ from 'jquery'
9
+ import Util from './util'
10
+
11
+ /**
12
+ * ------------------------------------------------------------------------
13
+ * Constants
14
+ * ------------------------------------------------------------------------
15
+ */
16
+
17
+ const NAME = 'tab'
18
+ const VERSION = '4.2.1'
19
+ const DATA_KEY = 'bs.tab'
20
+ const EVENT_KEY = `.${DATA_KEY}`
21
+ const DATA_API_KEY = '.data-api'
22
+ const JQUERY_NO_CONFLICT = $.fn[NAME]
23
+
24
+ const Event = {
25
+ HIDE : `hide${EVENT_KEY}`,
26
+ HIDDEN : `hidden${EVENT_KEY}`,
27
+ SHOW : `show${EVENT_KEY}`,
28
+ SHOWN : `shown${EVENT_KEY}`,
29
+ CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`
30
+ }
31
+
32
+ const ClassName = {
33
+ DROPDOWN_MENU : 'dropdown-menu',
34
+ ACTIVE : 'active',
35
+ DISABLED : 'disabled',
36
+ FADE : 'fade',
37
+ SHOW : 'show'
38
+ }
39
+
40
+ const Selector = {
41
+ DROPDOWN : '.dropdown',
42
+ NAV_LIST_GROUP : '.nav, .list-group',
43
+ ACTIVE : '.active',
44
+ ACTIVE_UL : '> li > .active',
45
+ DATA_TOGGLE : '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',
46
+ DROPDOWN_TOGGLE : '.dropdown-toggle',
47
+ DROPDOWN_ACTIVE_CHILD : '> .dropdown-menu .active'
48
+ }
49
+
50
+ /**
51
+ * ------------------------------------------------------------------------
52
+ * Class Definition
53
+ * ------------------------------------------------------------------------
54
+ */
55
+
56
+ class Tab {
57
+ constructor(element) {
58
+ this._element = element
59
+ }
60
+
61
+ // Getters
62
+
63
+ static get VERSION() {
64
+ return VERSION
65
+ }
66
+
67
+ // Public
68
+
69
+ show() {
70
+ if (this._element.parentNode &&
71
+ this._element.parentNode.nodeType === Node.ELEMENT_NODE &&
72
+ $(this._element).hasClass(ClassName.ACTIVE) ||
73
+ $(this._element).hasClass(ClassName.DISABLED)) {
74
+ return
75
+ }
76
+
77
+ let target
78
+ let previous
79
+ const listElement = $(this._element).closest(Selector.NAV_LIST_GROUP)[0]
80
+ const selector = Util.getSelectorFromElement(this._element)
81
+
82
+ if (listElement) {
83
+ const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? Selector.ACTIVE_UL : Selector.ACTIVE
84
+ previous = $.makeArray($(listElement).find(itemSelector))
85
+ previous = previous[previous.length - 1]
86
+ }
87
+
88
+ const hideEvent = $.Event(Event.HIDE, {
89
+ relatedTarget: this._element
90
+ })
91
+
92
+ const showEvent = $.Event(Event.SHOW, {
93
+ relatedTarget: previous
94
+ })
95
+
96
+ if (previous) {
97
+ $(previous).trigger(hideEvent)
98
+ }
99
+
100
+ $(this._element).trigger(showEvent)
101
+
102
+ if (showEvent.isDefaultPrevented() ||
103
+ hideEvent.isDefaultPrevented()) {
104
+ return
105
+ }
106
+
107
+ if (selector) {
108
+ target = document.querySelector(selector)
109
+ }
110
+
111
+ this._activate(
112
+ this._element,
113
+ listElement
114
+ )
115
+
116
+ const complete = () => {
117
+ const hiddenEvent = $.Event(Event.HIDDEN, {
118
+ relatedTarget: this._element
119
+ })
120
+
121
+ const shownEvent = $.Event(Event.SHOWN, {
122
+ relatedTarget: previous
123
+ })
124
+
125
+ $(previous).trigger(hiddenEvent)
126
+ $(this._element).trigger(shownEvent)
127
+ }
128
+
129
+ if (target) {
130
+ this._activate(target, target.parentNode, complete)
131
+ } else {
132
+ complete()
133
+ }
134
+ }
135
+
136
+ dispose() {
137
+ $.removeData(this._element, DATA_KEY)
138
+ this._element = null
139
+ }
140
+
141
+ // Private
142
+
143
+ _activate(element, container, callback) {
144
+ const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL')
145
+ ? $(container).find(Selector.ACTIVE_UL)
146
+ : $(container).children(Selector.ACTIVE)
147
+
148
+ const active = activeElements[0]
149
+ const isTransitioning = callback && (active && $(active).hasClass(ClassName.FADE))
150
+ const complete = () => this._transitionComplete(
151
+ element,
152
+ active,
153
+ callback
154
+ )
155
+
156
+ if (active && isTransitioning) {
157
+ const transitionDuration = Util.getTransitionDurationFromElement(active)
158
+
159
+ $(active)
160
+ .removeClass(ClassName.SHOW)
161
+ .one(Util.TRANSITION_END, complete)
162
+ .emulateTransitionEnd(transitionDuration)
163
+ } else {
164
+ complete()
165
+ }
166
+ }
167
+
168
+ _transitionComplete(element, active, callback) {
169
+ if (active) {
170
+ $(active).removeClass(ClassName.ACTIVE)
171
+
172
+ const dropdownChild = $(active.parentNode).find(
173
+ Selector.DROPDOWN_ACTIVE_CHILD
174
+ )[0]
175
+
176
+ if (dropdownChild) {
177
+ $(dropdownChild).removeClass(ClassName.ACTIVE)
178
+ }
179
+
180
+ if (active.getAttribute('role') === 'tab') {
181
+ active.setAttribute('aria-selected', false)
182
+ }
183
+ }
184
+
185
+ $(element).addClass(ClassName.ACTIVE)
186
+ if (element.getAttribute('role') === 'tab') {
187
+ element.setAttribute('aria-selected', true)
188
+ }
189
+
190
+ Util.reflow(element)
191
+ $(element).addClass(ClassName.SHOW)
192
+
193
+ if (element.parentNode && $(element.parentNode).hasClass(ClassName.DROPDOWN_MENU)) {
194
+ const dropdownElement = $(element).closest(Selector.DROPDOWN)[0]
195
+
196
+ if (dropdownElement) {
197
+ const dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(Selector.DROPDOWN_TOGGLE))
198
+
199
+ $(dropdownToggleList).addClass(ClassName.ACTIVE)
200
+ }
201
+
202
+ element.setAttribute('aria-expanded', true)
203
+ }
204
+
205
+ if (callback) {
206
+ callback()
207
+ }
208
+ }
209
+
210
+ // Static
211
+
212
+ static _jQueryInterface(config) {
213
+ return this.each(function () {
214
+ const $this = $(this)
215
+ let data = $this.data(DATA_KEY)
216
+
217
+ if (!data) {
218
+ data = new Tab(this)
219
+ $this.data(DATA_KEY, data)
220
+ }
221
+
222
+ if (typeof config === 'string') {
223
+ if (typeof data[config] === 'undefined') {
224
+ throw new TypeError(`No method named "${config}"`)
225
+ }
226
+ data[config]()
227
+ }
228
+ })
229
+ }
230
+ }
231
+
232
+ /**
233
+ * ------------------------------------------------------------------------
234
+ * Data Api implementation
235
+ * ------------------------------------------------------------------------
236
+ */
237
+
238
+ $(document)
239
+ .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
240
+ event.preventDefault()
241
+ Tab._jQueryInterface.call($(this), 'show')
242
+ })
243
+
244
+ /**
245
+ * ------------------------------------------------------------------------
246
+ * jQuery
247
+ * ------------------------------------------------------------------------
248
+ */
249
+
250
+ $.fn[NAME] = Tab._jQueryInterface
251
+ $.fn[NAME].Constructor = Tab
252
+ $.fn[NAME].noConflict = () => {
253
+ $.fn[NAME] = JQUERY_NO_CONFLICT
254
+ return Tab._jQueryInterface
255
+ }
256
+
257
+ export default Tab
@@ -0,0 +1,223 @@
1
+ /**
2
+ * --------------------------------------------------------------------------
3
+ * Bootstrap (v4.2.1): toast.js
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ * --------------------------------------------------------------------------
6
+ */
7
+
8
+ import $ from 'jquery'
9
+ import Util from './util'
10
+
11
+ /**
12
+ * ------------------------------------------------------------------------
13
+ * Constants
14
+ * ------------------------------------------------------------------------
15
+ */
16
+
17
+ const NAME = 'toast'
18
+ const VERSION = '4.2.1'
19
+ const DATA_KEY = 'bs.toast'
20
+ const EVENT_KEY = `.${DATA_KEY}`
21
+ const JQUERY_NO_CONFLICT = $.fn[NAME]
22
+
23
+ const Event = {
24
+ CLICK_DISMISS : `click.dismiss${EVENT_KEY}`,
25
+ HIDE : `hide${EVENT_KEY}`,
26
+ HIDDEN : `hidden${EVENT_KEY}`,
27
+ SHOW : `show${EVENT_KEY}`,
28
+ SHOWN : `shown${EVENT_KEY}`
29
+ }
30
+
31
+ const ClassName = {
32
+ FADE : 'fade',
33
+ HIDE : 'hide',
34
+ SHOW : 'show',
35
+ SHOWING : 'showing'
36
+ }
37
+
38
+ const DefaultType = {
39
+ animation : 'boolean',
40
+ autohide : 'boolean',
41
+ delay : 'number'
42
+ }
43
+
44
+ const Default = {
45
+ animation : true,
46
+ autohide : true,
47
+ delay : 500
48
+ }
49
+
50
+ const Selector = {
51
+ DATA_DISMISS : '[data-dismiss="toast"]'
52
+ }
53
+
54
+ /**
55
+ * ------------------------------------------------------------------------
56
+ * Class Definition
57
+ * ------------------------------------------------------------------------
58
+ */
59
+
60
+ class Toast {
61
+ constructor(element, config) {
62
+ this._element = element
63
+ this._config = this._getConfig(config)
64
+ this._timeout = null
65
+ this._setListeners()
66
+ }
67
+
68
+ // Getters
69
+
70
+ static get VERSION() {
71
+ return VERSION
72
+ }
73
+
74
+ static get DefaultType() {
75
+ return DefaultType
76
+ }
77
+
78
+ // Public
79
+
80
+ show() {
81
+ $(this._element).trigger(Event.SHOW)
82
+
83
+ if (this._config.animation) {
84
+ this._element.classList.add(ClassName.FADE)
85
+ }
86
+
87
+ const complete = () => {
88
+ this._element.classList.remove(ClassName.SHOWING)
89
+ this._element.classList.add(ClassName.SHOW)
90
+
91
+ $(this._element).trigger(Event.SHOWN)
92
+
93
+ if (this._config.autohide) {
94
+ this.hide()
95
+ }
96
+ }
97
+
98
+ this._element.classList.remove(ClassName.HIDE)
99
+ this._element.classList.add(ClassName.SHOWING)
100
+ if (this._config.animation) {
101
+ const transitionDuration = Util.getTransitionDurationFromElement(this._element)
102
+
103
+ $(this._element)
104
+ .one(Util.TRANSITION_END, complete)
105
+ .emulateTransitionEnd(transitionDuration)
106
+ } else {
107
+ complete()
108
+ }
109
+ }
110
+
111
+ hide(withoutTimeout) {
112
+ if (!this._element.classList.contains(ClassName.SHOW)) {
113
+ return
114
+ }
115
+
116
+ $(this._element).trigger(Event.HIDE)
117
+
118
+ if (withoutTimeout) {
119
+ this._close()
120
+ } else {
121
+ this._timeout = setTimeout(() => {
122
+ this._close()
123
+ }, this._config.delay)
124
+ }
125
+ }
126
+
127
+ dispose() {
128
+ clearTimeout(this._timeout)
129
+ this._timeout = null
130
+
131
+ if (this._element.classList.contains(ClassName.SHOW)) {
132
+ this._element.classList.remove(ClassName.SHOW)
133
+ }
134
+
135
+ $(this._element).off(Event.CLICK_DISMISS)
136
+
137
+ $.removeData(this._element, DATA_KEY)
138
+ this._element = null
139
+ this._config = null
140
+ }
141
+
142
+ // Private
143
+
144
+ _getConfig(config) {
145
+ config = {
146
+ ...Default,
147
+ ...$(this._element).data(),
148
+ ...typeof config === 'object' && config ? config : {}
149
+ }
150
+
151
+ Util.typeCheckConfig(
152
+ NAME,
153
+ config,
154
+ this.constructor.DefaultType
155
+ )
156
+
157
+ return config
158
+ }
159
+
160
+ _setListeners() {
161
+ $(this._element).on(
162
+ Event.CLICK_DISMISS,
163
+ Selector.DATA_DISMISS,
164
+ () => this.hide(true)
165
+ )
166
+ }
167
+
168
+ _close() {
169
+ const complete = () => {
170
+ this._element.classList.add(ClassName.HIDE)
171
+ $(this._element).trigger(Event.HIDDEN)
172
+ }
173
+
174
+ this._element.classList.remove(ClassName.SHOW)
175
+ if (this._config.animation) {
176
+ const transitionDuration = Util.getTransitionDurationFromElement(this._element)
177
+
178
+ $(this._element)
179
+ .one(Util.TRANSITION_END, complete)
180
+ .emulateTransitionEnd(transitionDuration)
181
+ } else {
182
+ complete()
183
+ }
184
+ }
185
+
186
+ // Static
187
+
188
+ static _jQueryInterface(config) {
189
+ return this.each(function () {
190
+ const $element = $(this)
191
+ let data = $element.data(DATA_KEY)
192
+ const _config = typeof config === 'object' && config
193
+
194
+ if (!data) {
195
+ data = new Toast(this, _config)
196
+ $element.data(DATA_KEY, data)
197
+ }
198
+
199
+ if (typeof config === 'string') {
200
+ if (typeof data[config] === 'undefined') {
201
+ throw new TypeError(`No method named "${config}"`)
202
+ }
203
+
204
+ data[config](this)
205
+ }
206
+ })
207
+ }
208
+ }
209
+
210
+ /**
211
+ * ------------------------------------------------------------------------
212
+ * jQuery
213
+ * ------------------------------------------------------------------------
214
+ */
215
+
216
+ $.fn[NAME] = Toast._jQueryInterface
217
+ $.fn[NAME].Constructor = Toast
218
+ $.fn[NAME].noConflict = () => {
219
+ $.fn[NAME] = JQUERY_NO_CONFLICT
220
+ return Toast._jQueryInterface
221
+ }
222
+
223
+ export default Toast