inkstream 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (218) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.txt +21 -0
  3. data/README.md +93 -0
  4. data/_config.yml +122 -0
  5. data/_includes/button.html +4 -0
  6. data/_includes/icon.html +1 -0
  7. data/_includes/nav-default.html +23 -0
  8. data/_includes/nav-header.html +25 -0
  9. data/_includes/post-list.html +59 -0
  10. data/_includes/post-meta.html +0 -0
  11. data/_includes/post-pagination.html +29 -0
  12. data/_includes/promo-section.html +12 -0
  13. data/_includes/site-before-end.html +1 -0
  14. data/_includes/site-before-start.html +1 -0
  15. data/_includes/site-favicons.html +7 -0
  16. data/_includes/site-fonts.html +13 -0
  17. data/_includes/site-footer-default.html +17 -0
  18. data/_includes/site-footer.html +12 -0
  19. data/_includes/site-header.html +46 -0
  20. data/_includes/site-styles.html +6 -0
  21. data/_layouts/blog.html +24 -0
  22. data/_layouts/default.html +62 -0
  23. data/_layouts/page.html +35 -0
  24. data/_layouts/post.html +201 -0
  25. data/assets/css/styles.css +11167 -0
  26. data/assets/images/about-me.jpg +0 -0
  27. data/assets/images/blog/blog-post-banner.jpg +0 -0
  28. data/assets/images/blog/blog-post-thumb-1.jpg +0 -0
  29. data/assets/images/blog/blog-post-thumb-10.jpg +0 -0
  30. data/assets/images/blog/blog-post-thumb-11.jpg +0 -0
  31. data/assets/images/blog/blog-post-thumb-12.jpg +0 -0
  32. data/assets/images/blog/blog-post-thumb-2.jpg +0 -0
  33. data/assets/images/blog/blog-post-thumb-3.jpg +0 -0
  34. data/assets/images/blog/blog-post-thumb-4.jpg +0 -0
  35. data/assets/images/blog/blog-post-thumb-5.jpg +0 -0
  36. data/assets/images/blog/blog-post-thumb-6.jpg +0 -0
  37. data/assets/images/blog/blog-post-thumb-7.jpg +0 -0
  38. data/assets/images/blog/blog-post-thumb-8.jpg +0 -0
  39. data/assets/images/blog/blog-post-thumb-9.jpg +0 -0
  40. data/assets/images/posts/default-post-img.jpg +0 -0
  41. data/assets/images/posts/text-syntax.jpg +0 -0
  42. data/assets/images/posts/welcome.jpg +0 -0
  43. data/assets/images/profile.png +0 -0
  44. data/assets/images/promo-banner.jpg +0 -0
  45. data/assets/js/blog.js +9 -0
  46. data/assets/js/demo/style-switcher.js +45 -0
  47. data/assets/plugins/bootstrap/js/bootstrap.min.js +7 -0
  48. data/assets/plugins/jquery-3.3.1.min.js +2 -0
  49. data/assets/plugins/popper.min.js +5 -0
  50. data/assets/scss/bootstrap/js/dist/alert.js +199 -0
  51. data/assets/scss/bootstrap/js/dist/alert.js.map +1 -0
  52. data/assets/scss/bootstrap/js/dist/button.js +187 -0
  53. data/assets/scss/bootstrap/js/dist/button.js.map +1 -0
  54. data/assets/scss/bootstrap/js/dist/carousel.js +668 -0
  55. data/assets/scss/bootstrap/js/dist/carousel.js.map +1 -0
  56. data/assets/scss/bootstrap/js/dist/collapse.js +428 -0
  57. data/assets/scss/bootstrap/js/dist/collapse.js.map +1 -0
  58. data/assets/scss/bootstrap/js/dist/dropdown.js +595 -0
  59. data/assets/scss/bootstrap/js/dist/dropdown.js.map +1 -0
  60. data/assets/scss/bootstrap/js/dist/index.js +23 -0
  61. data/assets/scss/bootstrap/js/dist/index.js.map +1 -0
  62. data/assets/scss/bootstrap/js/dist/modal.js +650 -0
  63. data/assets/scss/bootstrap/js/dist/modal.js.map +1 -0
  64. data/assets/scss/bootstrap/js/dist/popover.js +261 -0
  65. data/assets/scss/bootstrap/js/dist/popover.js.map +1 -0
  66. data/assets/scss/bootstrap/js/dist/scrollspy.js +375 -0
  67. data/assets/scss/bootstrap/js/dist/scrollspy.js.map +1 -0
  68. data/assets/scss/bootstrap/js/dist/tab.js +269 -0
  69. data/assets/scss/bootstrap/js/dist/tab.js.map +1 -0
  70. data/assets/scss/bootstrap/js/dist/toast.js +283 -0
  71. data/assets/scss/bootstrap/js/dist/toast.js.map +1 -0
  72. data/assets/scss/bootstrap/js/dist/tooltip.js +760 -0
  73. data/assets/scss/bootstrap/js/dist/tooltip.js.map +1 -0
  74. data/assets/scss/bootstrap/js/dist/util.js +172 -0
  75. data/assets/scss/bootstrap/js/dist/util.js.map +1 -0
  76. data/assets/scss/bootstrap/js/src/alert.js +179 -0
  77. data/assets/scss/bootstrap/js/src/button.js +171 -0
  78. data/assets/scss/bootstrap/js/src/carousel.js +606 -0
  79. data/assets/scss/bootstrap/js/src/collapse.js +402 -0
  80. data/assets/scss/bootstrap/js/src/dropdown.js +545 -0
  81. data/assets/scss/bootstrap/js/src/index.js +52 -0
  82. data/assets/scss/bootstrap/js/src/modal.js +594 -0
  83. data/assets/scss/bootstrap/js/src/popover.js +184 -0
  84. data/assets/scss/bootstrap/js/src/scrollspy.js +326 -0
  85. data/assets/scss/bootstrap/js/src/tab.js +260 -0
  86. data/assets/scss/bootstrap/js/src/toast.js +227 -0
  87. data/assets/scss/bootstrap/js/src/tooltip.js +752 -0
  88. data/assets/scss/bootstrap/js/src/util.js +177 -0
  89. data/assets/scss/bootstrap/js/tests/README.md +69 -0
  90. data/assets/scss/bootstrap/js/tests/browsers.js +82 -0
  91. data/assets/scss/bootstrap/js/tests/index.html +133 -0
  92. data/assets/scss/bootstrap/js/tests/integration/bundle.js +8 -0
  93. data/assets/scss/bootstrap/js/tests/integration/index.html +66 -0
  94. data/assets/scss/bootstrap/js/tests/integration/rollup.bundle.js +20 -0
  95. data/assets/scss/bootstrap/js/tests/karma.conf.js +143 -0
  96. data/assets/scss/bootstrap/js/tests/unit/.eslintrc.json +40 -0
  97. data/assets/scss/bootstrap/js/tests/unit/alert.js +123 -0
  98. data/assets/scss/bootstrap/js/tests/unit/button.js +222 -0
  99. data/assets/scss/bootstrap/js/tests/unit/carousel.js +1333 -0
  100. data/assets/scss/bootstrap/js/tests/unit/collapse.js +892 -0
  101. data/assets/scss/bootstrap/js/tests/unit/dropdown.js +1419 -0
  102. data/assets/scss/bootstrap/js/tests/unit/modal.js +815 -0
  103. data/assets/scss/bootstrap/js/tests/unit/popover.js +471 -0
  104. data/assets/scss/bootstrap/js/tests/unit/scrollspy.js +728 -0
  105. data/assets/scss/bootstrap/js/tests/unit/tab.js +518 -0
  106. data/assets/scss/bootstrap/js/tests/unit/toast.js +259 -0
  107. data/assets/scss/bootstrap/js/tests/unit/tooltip.js +1109 -0
  108. data/assets/scss/bootstrap/js/tests/unit/util.js +163 -0
  109. data/assets/scss/bootstrap/js/tests/visual/alert.html +58 -0
  110. data/assets/scss/bootstrap/js/tests/visual/button.html +51 -0
  111. data/assets/scss/bootstrap/js/tests/visual/carousel.html +66 -0
  112. data/assets/scss/bootstrap/js/tests/visual/collapse.html +78 -0
  113. data/assets/scss/bootstrap/js/tests/visual/dropdown.html +212 -0
  114. data/assets/scss/bootstrap/js/tests/visual/modal.html +268 -0
  115. data/assets/scss/bootstrap/js/tests/visual/popover.html +46 -0
  116. data/assets/scss/bootstrap/js/tests/visual/scrollspy.html +95 -0
  117. data/assets/scss/bootstrap/js/tests/visual/tab.html +234 -0
  118. data/assets/scss/bootstrap/js/tests/visual/toast.html +72 -0
  119. data/assets/scss/bootstrap/js/tests/visual/tooltip.html +106 -0
  120. data/assets/scss/bootstrap/scss/_alert.scss +51 -0
  121. data/assets/scss/bootstrap/scss/_badge.scss +54 -0
  122. data/assets/scss/bootstrap/scss/_breadcrumb.scss +41 -0
  123. data/assets/scss/bootstrap/scss/_button-group.scss +163 -0
  124. data/assets/scss/bootstrap/scss/_buttons.scss +137 -0
  125. data/assets/scss/bootstrap/scss/_card.scss +289 -0
  126. data/assets/scss/bootstrap/scss/_carousel.scss +197 -0
  127. data/assets/scss/bootstrap/scss/_close.scss +41 -0
  128. data/assets/scss/bootstrap/scss/_code.scss +48 -0
  129. data/assets/scss/bootstrap/scss/_custom-forms.scss +507 -0
  130. data/assets/scss/bootstrap/scss/_dropdown.scss +191 -0
  131. data/assets/scss/bootstrap/scss/_forms.scss +330 -0
  132. data/assets/scss/bootstrap/scss/_functions.scss +86 -0
  133. data/assets/scss/bootstrap/scss/_grid.scss +52 -0
  134. data/assets/scss/bootstrap/scss/_images.scss +42 -0
  135. data/assets/scss/bootstrap/scss/_input-group.scss +193 -0
  136. data/assets/scss/bootstrap/scss/_jumbotron.scss +17 -0
  137. data/assets/scss/bootstrap/scss/_list-group.scss +149 -0
  138. data/assets/scss/bootstrap/scss/_media.scss +8 -0
  139. data/assets/scss/bootstrap/scss/_mixins.scss +47 -0
  140. data/assets/scss/bootstrap/scss/_modal.scss +229 -0
  141. data/assets/scss/bootstrap/scss/_nav.scss +120 -0
  142. data/assets/scss/bootstrap/scss/_navbar.scss +294 -0
  143. data/assets/scss/bootstrap/scss/_pagination.scss +73 -0
  144. data/assets/scss/bootstrap/scss/_popover.scss +171 -0
  145. data/assets/scss/bootstrap/scss/_print.scss +141 -0
  146. data/assets/scss/bootstrap/scss/_progress.scss +43 -0
  147. data/assets/scss/bootstrap/scss/_reboot.scss +483 -0
  148. data/assets/scss/bootstrap/scss/_root.scss +19 -0
  149. data/assets/scss/bootstrap/scss/_spinners.scss +55 -0
  150. data/assets/scss/bootstrap/scss/_tables.scss +185 -0
  151. data/assets/scss/bootstrap/scss/_toasts.scss +44 -0
  152. data/assets/scss/bootstrap/scss/_tooltip.scss +115 -0
  153. data/assets/scss/bootstrap/scss/_transitions.scss +20 -0
  154. data/assets/scss/bootstrap/scss/_type.scss +125 -0
  155. data/assets/scss/bootstrap/scss/_utilities.scss +17 -0
  156. data/assets/scss/bootstrap/scss/_variables.scss +1123 -0
  157. data/assets/scss/bootstrap/scss/bootstrap-grid.scss +29 -0
  158. data/assets/scss/bootstrap/scss/bootstrap-reboot.scss +12 -0
  159. data/assets/scss/bootstrap/scss/bootstrap.scss +44 -0
  160. data/assets/scss/bootstrap/scss/mixins/_alert.scss +13 -0
  161. data/assets/scss/bootstrap/scss/mixins/_background-variant.scss +21 -0
  162. data/assets/scss/bootstrap/scss/mixins/_badge.scss +17 -0
  163. data/assets/scss/bootstrap/scss/mixins/_border-radius.scss +63 -0
  164. data/assets/scss/bootstrap/scss/mixins/_box-shadow.scss +20 -0
  165. data/assets/scss/bootstrap/scss/mixins/_breakpoints.scss +123 -0
  166. data/assets/scss/bootstrap/scss/mixins/_buttons.scss +107 -0
  167. data/assets/scss/bootstrap/scss/mixins/_caret.scss +62 -0
  168. data/assets/scss/bootstrap/scss/mixins/_clearfix.scss +7 -0
  169. data/assets/scss/bootstrap/scss/mixins/_deprecate.scss +10 -0
  170. data/assets/scss/bootstrap/scss/mixins/_float.scss +14 -0
  171. data/assets/scss/bootstrap/scss/mixins/_forms.scss +192 -0
  172. data/assets/scss/bootstrap/scss/mixins/_gradients.scss +45 -0
  173. data/assets/scss/bootstrap/scss/mixins/_grid-framework.scss +66 -0
  174. data/assets/scss/bootstrap/scss/mixins/_grid.scss +51 -0
  175. data/assets/scss/bootstrap/scss/mixins/_hover.scss +37 -0
  176. data/assets/scss/bootstrap/scss/mixins/_image.scss +36 -0
  177. data/assets/scss/bootstrap/scss/mixins/_list-group.scss +21 -0
  178. data/assets/scss/bootstrap/scss/mixins/_lists.scss +7 -0
  179. data/assets/scss/bootstrap/scss/mixins/_nav-divider.scss +10 -0
  180. data/assets/scss/bootstrap/scss/mixins/_pagination.scss +22 -0
  181. data/assets/scss/bootstrap/scss/mixins/_reset-text.scss +17 -0
  182. data/assets/scss/bootstrap/scss/mixins/_resize.scss +6 -0
  183. data/assets/scss/bootstrap/scss/mixins/_screen-reader.scss +33 -0
  184. data/assets/scss/bootstrap/scss/mixins/_size.scss +7 -0
  185. data/assets/scss/bootstrap/scss/mixins/_table-row.scss +39 -0
  186. data/assets/scss/bootstrap/scss/mixins/_text-emphasis.scss +16 -0
  187. data/assets/scss/bootstrap/scss/mixins/_text-hide.scss +11 -0
  188. data/assets/scss/bootstrap/scss/mixins/_text-truncate.scss +8 -0
  189. data/assets/scss/bootstrap/scss/mixins/_transition.scss +16 -0
  190. data/assets/scss/bootstrap/scss/mixins/_visibility.scss +8 -0
  191. data/assets/scss/bootstrap/scss/utilities/_align.scss +8 -0
  192. data/assets/scss/bootstrap/scss/utilities/_background.scss +19 -0
  193. data/assets/scss/bootstrap/scss/utilities/_borders.scss +75 -0
  194. data/assets/scss/bootstrap/scss/utilities/_clearfix.scss +3 -0
  195. data/assets/scss/bootstrap/scss/utilities/_display.scss +26 -0
  196. data/assets/scss/bootstrap/scss/utilities/_embed.scss +39 -0
  197. data/assets/scss/bootstrap/scss/utilities/_flex.scss +51 -0
  198. data/assets/scss/bootstrap/scss/utilities/_float.scss +11 -0
  199. data/assets/scss/bootstrap/scss/utilities/_overflow.scss +5 -0
  200. data/assets/scss/bootstrap/scss/utilities/_position.scss +32 -0
  201. data/assets/scss/bootstrap/scss/utilities/_screenreaders.scss +11 -0
  202. data/assets/scss/bootstrap/scss/utilities/_shadows.scss +6 -0
  203. data/assets/scss/bootstrap/scss/utilities/_sizing.scss +20 -0
  204. data/assets/scss/bootstrap/scss/utilities/_spacing.scss +73 -0
  205. data/assets/scss/bootstrap/scss/utilities/_stretched-link.scss +19 -0
  206. data/assets/scss/bootstrap/scss/utilities/_text.scss +72 -0
  207. data/assets/scss/bootstrap/scss/utilities/_visibility.scss +13 -0
  208. data/assets/scss/bootstrap/scss/vendor/_rfs.scss +212 -0
  209. data/assets/scss/theme/_about.scss +28 -0
  210. data/assets/scss/theme/_base.scss +207 -0
  211. data/assets/scss/theme/_blog.scss +140 -0
  212. data/assets/scss/theme/_demo.scss +153 -0
  213. data/assets/scss/theme/_mixins.scss +34 -0
  214. data/assets/scss/theme/_responsive.scss +88 -0
  215. data/assets/scss/theme/styles.scss +14 -0
  216. data/assets/scss/theme-8.scss +41 -0
  217. data/assets/styles.scss +6 -0
  218. metadata +219 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"carousel.js","sources":["../src/carousel.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.0): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst VERSION = '4.3.0'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst ARROW_LEFT_KEYCODE = 37 // KeyboardEvent.which value for left arrow key\nconst ARROW_RIGHT_KEYCODE = 39 // KeyboardEvent.which value for right arrow key\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval : 5000,\n keyboard : true,\n slide : false,\n pause : 'hover',\n wrap : true,\n touch : true\n}\n\nconst DefaultType = {\n interval : '(number|boolean)',\n keyboard : 'boolean',\n slide : '(boolean|string)',\n pause : '(string|boolean)',\n wrap : 'boolean',\n touch : 'boolean'\n}\n\nconst Direction = {\n NEXT : 'next',\n PREV : 'prev',\n LEFT : 'left',\n RIGHT : 'right'\n}\n\nconst Event = {\n SLIDE : `slide${EVENT_KEY}`,\n SLID : `slid${EVENT_KEY}`,\n KEYDOWN : `keydown${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`,\n TOUCHSTART : `touchstart${EVENT_KEY}`,\n TOUCHMOVE : `touchmove${EVENT_KEY}`,\n TOUCHEND : `touchend${EVENT_KEY}`,\n POINTERDOWN : `pointerdown${EVENT_KEY}`,\n POINTERUP : `pointerup${EVENT_KEY}`,\n DRAG_START : `dragstart${EVENT_KEY}`,\n LOAD_DATA_API : `load${EVENT_KEY}${DATA_API_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n CAROUSEL : 'carousel',\n ACTIVE : 'active',\n SLIDE : 'slide',\n RIGHT : 'carousel-item-right',\n LEFT : 'carousel-item-left',\n NEXT : 'carousel-item-next',\n PREV : 'carousel-item-prev',\n ITEM : 'carousel-item',\n POINTER_EVENT : 'pointer-event'\n}\n\nconst Selector = {\n ACTIVE : '.active',\n ACTIVE_ITEM : '.active.carousel-item',\n ITEM : '.carousel-item',\n ITEM_IMG : '.carousel-item img',\n NEXT_PREV : '.carousel-item-next, .carousel-item-prev',\n INDICATORS : '.carousel-indicators',\n DATA_SLIDE : '[data-slide], [data-slide-to]',\n DATA_RIDE : '[data-ride=\"carousel\"]'\n}\n\nconst PointerType = {\n TOUCH : 'touch',\n PEN : 'pen'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel {\n constructor(element, config) {\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._element = element\n this._indicatorsElement = this._element.querySelector(Selector.INDICATORS)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n next() {\n if (!this._isSliding) {\n this._slide(Direction.NEXT)\n }\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden &&\n ($(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden')) {\n this.next()\n }\n }\n\n prev() {\n if (!this._isSliding) {\n this._slide(Direction.PREV)\n }\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (this._element.querySelector(Selector.NEXT_PREV)) {\n Util.triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config.interval && !this._isPaused) {\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n $(this._element).one(Event.SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const direction = index > activeIndex\n ? Direction.NEXT\n : Direction.PREV\n\n this._slide(direction, this._items[index])\n }\n\n dispose() {\n $(this._element).off(EVENT_KEY)\n $.removeData(this._element, DATA_KEY)\n\n this._items = null\n this._config = null\n this._element = null\n this._interval = null\n this._isPaused = null\n this._isSliding = null\n this._activeElement = null\n this._indicatorsElement = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n // swipe left\n if (direction > 0) {\n this.prev()\n }\n\n // swipe right\n if (direction < 0) {\n this.next()\n }\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n $(this._element)\n .on(Event.KEYDOWN, (event) => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n $(this._element)\n .on(Event.MOUSEENTER, (event) => this.pause(event))\n .on(Event.MOUSELEAVE, (event) => this.cycle(event))\n }\n\n if (this._config.touch) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n if (!this._touchSupported) {\n return\n }\n\n const start = (event) => {\n if (this._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {\n this.touchStartX = event.originalEvent.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.originalEvent.touches[0].clientX\n }\n }\n\n const move = (event) => {\n // ensure swiping with one touch and not pinching\n if (event.originalEvent.touches && event.originalEvent.touches.length > 1) {\n this.touchDeltaX = 0\n } else {\n this.touchDeltaX = event.originalEvent.touches[0].clientX - this.touchStartX\n }\n }\n\n const end = (event) => {\n if (this._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {\n this.touchDeltaX = event.originalEvent.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n this.touchTimeout = setTimeout((event) => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n $(this._element.querySelectorAll(Selector.ITEM_IMG)).on(Event.DRAG_START, (e) => e.preventDefault())\n if (this._pointerEvent) {\n $(this._element).on(Event.POINTERDOWN, (event) => start(event))\n $(this._element).on(Event.POINTERUP, (event) => end(event))\n\n this._element.classList.add(ClassName.POINTER_EVENT)\n } else {\n $(this._element).on(Event.TOUCHSTART, (event) => start(event))\n $(this._element).on(Event.TOUCHMOVE, (event) => move(event))\n $(this._element).on(Event.TOUCHEND, (event) => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n switch (event.which) {\n case ARROW_LEFT_KEYCODE:\n event.preventDefault()\n this.prev()\n break\n case ARROW_RIGHT_KEYCODE:\n event.preventDefault()\n this.next()\n break\n default:\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode\n ? [].slice.call(element.parentNode.querySelectorAll(Selector.ITEM))\n : []\n return this._items.indexOf(element)\n }\n\n _getItemByDirection(direction, activeElement) {\n const isNextDirection = direction === Direction.NEXT\n const isPrevDirection = direction === Direction.PREV\n const activeIndex = this._getItemIndex(activeElement)\n const lastItemIndex = this._items.length - 1\n const isGoingToWrap = isPrevDirection && activeIndex === 0 ||\n isNextDirection && activeIndex === lastItemIndex\n\n if (isGoingToWrap && !this._config.wrap) {\n return activeElement\n }\n\n const delta = direction === Direction.PREV ? -1 : 1\n const itemIndex = (activeIndex + delta) % this._items.length\n\n return itemIndex === -1\n ? this._items[this._items.length - 1] : this._items[itemIndex]\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(this._element.querySelector(Selector.ACTIVE_ITEM))\n const slideEvent = $.Event(Event.SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n\n $(this._element).trigger(slideEvent)\n\n return slideEvent\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const indicators = [].slice.call(this._indicatorsElement.querySelectorAll(Selector.ACTIVE))\n $(indicators)\n .removeClass(ClassName.ACTIVE)\n\n const nextIndicator = this._indicatorsElement.children[\n this._getItemIndex(element)\n ]\n\n if (nextIndicator) {\n $(nextIndicator).addClass(ClassName.ACTIVE)\n }\n }\n }\n\n _slide(direction, element) {\n const activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || activeElement &&\n this._getItemByDirection(direction, activeElement)\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n let directionalClassName\n let orderClassName\n let eventDirectionName\n\n if (direction === Direction.NEXT) {\n directionalClassName = ClassName.LEFT\n orderClassName = ClassName.NEXT\n eventDirectionName = Direction.LEFT\n } else {\n directionalClassName = ClassName.RIGHT\n orderClassName = ClassName.PREV\n eventDirectionName = Direction.RIGHT\n }\n\n if (nextElement && $(nextElement).hasClass(ClassName.ACTIVE)) {\n this._isSliding = false\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.isDefaultPrevented()) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n\n const slidEvent = $.Event(Event.SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n\n if ($(this._element).hasClass(ClassName.SLIDE)) {\n $(nextElement).addClass(orderClassName)\n\n Util.reflow(nextElement)\n\n $(activeElement).addClass(directionalClassName)\n $(nextElement).addClass(directionalClassName)\n\n const nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10)\n if (nextElementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = nextElementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n\n const transitionDuration = Util.getTransitionDurationFromElement(activeElement)\n\n $(activeElement)\n .one(Util.TRANSITION_END, () => {\n $(nextElement)\n .removeClass(`${directionalClassName} ${orderClassName}`)\n .addClass(ClassName.ACTIVE)\n\n $(activeElement).removeClass(`${ClassName.ACTIVE} ${orderClassName} ${directionalClassName}`)\n\n this._isSliding = false\n\n setTimeout(() => $(this._element).trigger(slidEvent), 0)\n })\n .emulateTransitionEnd(transitionDuration)\n } else {\n $(activeElement).removeClass(ClassName.ACTIVE)\n $(nextElement).addClass(ClassName.ACTIVE)\n\n this._isSliding = false\n $(this._element).trigger(slidEvent)\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n let _config = {\n ...Default,\n ...$(this).data()\n }\n\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (!data) {\n data = new Carousel(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n })\n }\n\n static _dataApiClickHandler(event) {\n const selector = Util.getSelectorFromElement(this)\n\n if (!selector) {\n return\n }\n\n const target = $(selector)[0]\n\n if (!target || !$(target).hasClass(ClassName.CAROUSEL)) {\n return\n }\n\n const config = {\n ...$(target).data(),\n ...$(this).data()\n }\n const slideIndex = this.getAttribute('data-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel._jQueryInterface.call($(target), config)\n\n if (slideIndex) {\n $(target).data(DATA_KEY).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler)\n\n$(window).on(Event.LOAD_DATA_API, () => {\n const carousels = [].slice.call(document.querySelectorAll(Selector.DATA_RIDE))\n for (let i = 0, len = carousels.length; i < len; i++) {\n const $carousel = $(carousels[i])\n Carousel._jQueryInterface.call($carousel, $carousel.data())\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Carousel._jQueryInterface\n$.fn[NAME].Constructor = Carousel\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Carousel._jQueryInterface\n}\n\nexport default Carousel\n"],"names":["NAME","VERSION","DATA_KEY","EVENT_KEY","DATA_API_KEY","JQUERY_NO_CONFLICT","$","fn","ARROW_LEFT_KEYCODE","ARROW_RIGHT_KEYCODE","TOUCHEVENT_COMPAT_WAIT","SWIPE_THRESHOLD","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","Direction","NEXT","PREV","LEFT","RIGHT","Event","SLIDE","SLID","KEYDOWN","MOUSEENTER","MOUSELEAVE","TOUCHSTART","TOUCHMOVE","TOUCHEND","POINTERDOWN","POINTERUP","DRAG_START","LOAD_DATA_API","CLICK_DATA_API","ClassName","CAROUSEL","ACTIVE","ITEM","POINTER_EVENT","Selector","ACTIVE_ITEM","ITEM_IMG","NEXT_PREV","INDICATORS","DATA_SLIDE","DATA_RIDE","PointerType","TOUCH","PEN","Carousel","element","config","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_element","_indicatorsElement","querySelector","_touchSupported","document","documentElement","navigator","maxTouchPoints","_pointerEvent","Boolean","window","PointerEvent","MSPointerEvent","_addEventListeners","next","_slide","nextWhenVisible","hidden","is","css","prev","event","Util","triggerTransitionEnd","cycle","clearInterval","setInterval","visibilityState","bind","to","index","activeIndex","_getItemIndex","length","one","direction","dispose","off","removeData","typeCheckConfig","_handleSwipe","absDeltax","Math","abs","on","_keydown","_addTouchEventListeners","start","originalEvent","pointerType","toUpperCase","clientX","touches","move","end","clearTimeout","setTimeout","querySelectorAll","e","preventDefault","classList","add","test","target","tagName","which","parentNode","slice","call","indexOf","_getItemByDirection","activeElement","isNextDirection","isPrevDirection","lastItemIndex","isGoingToWrap","delta","itemIndex","_triggerSlideEvent","relatedTarget","eventDirectionName","targetIndex","fromIndex","slideEvent","from","trigger","_setActiveIndicatorElement","indicators","removeClass","nextIndicator","children","addClass","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","hasClass","isDefaultPrevented","slidEvent","reflow","nextElementInterval","parseInt","getAttribute","defaultInterval","transitionDuration","getTransitionDurationFromElement","TRANSITION_END","emulateTransitionEnd","_jQueryInterface","each","data","action","TypeError","ride","_dataApiClickHandler","selector","getSelectorFromElement","slideIndex","carousels","i","len","$carousel","Constructor","noConflict"],"mappings":"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"}
@@ -0,0 +1,428 @@
1
+ /*!
2
+ * Bootstrap collapse.js v4.3.0 (https://getbootstrap.com/)
3
+ * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
6
+ (function (global, factory) {
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) :
8
+ typeof define === 'function' && define.amd ? define(['jquery', './util.js'], factory) :
9
+ (global = global || self, global.Collapse = factory(global.jQuery, global.Util));
10
+ }(this, function ($, Util) { 'use strict';
11
+
12
+ $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
13
+ Util = Util && Util.hasOwnProperty('default') ? Util['default'] : Util;
14
+
15
+ function _defineProperties(target, props) {
16
+ for (var i = 0; i < props.length; i++) {
17
+ var descriptor = props[i];
18
+ descriptor.enumerable = descriptor.enumerable || false;
19
+ descriptor.configurable = true;
20
+ if ("value" in descriptor) descriptor.writable = true;
21
+ Object.defineProperty(target, descriptor.key, descriptor);
22
+ }
23
+ }
24
+
25
+ function _createClass(Constructor, protoProps, staticProps) {
26
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
27
+ if (staticProps) _defineProperties(Constructor, staticProps);
28
+ return Constructor;
29
+ }
30
+
31
+ function _defineProperty(obj, key, value) {
32
+ if (key in obj) {
33
+ Object.defineProperty(obj, key, {
34
+ value: value,
35
+ enumerable: true,
36
+ configurable: true,
37
+ writable: true
38
+ });
39
+ } else {
40
+ obj[key] = value;
41
+ }
42
+
43
+ return obj;
44
+ }
45
+
46
+ function _objectSpread(target) {
47
+ for (var i = 1; i < arguments.length; i++) {
48
+ var source = arguments[i] != null ? arguments[i] : {};
49
+ var ownKeys = Object.keys(source);
50
+
51
+ if (typeof Object.getOwnPropertySymbols === 'function') {
52
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
53
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
54
+ }));
55
+ }
56
+
57
+ ownKeys.forEach(function (key) {
58
+ _defineProperty(target, key, source[key]);
59
+ });
60
+ }
61
+
62
+ return target;
63
+ }
64
+
65
+ /**
66
+ * ------------------------------------------------------------------------
67
+ * Constants
68
+ * ------------------------------------------------------------------------
69
+ */
70
+
71
+ var NAME = 'collapse';
72
+ var VERSION = '4.3.0';
73
+ var DATA_KEY = 'bs.collapse';
74
+ var EVENT_KEY = "." + DATA_KEY;
75
+ var DATA_API_KEY = '.data-api';
76
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
77
+ var Default = {
78
+ toggle: true,
79
+ parent: ''
80
+ };
81
+ var DefaultType = {
82
+ toggle: 'boolean',
83
+ parent: '(string|element)'
84
+ };
85
+ var Event = {
86
+ SHOW: "show" + EVENT_KEY,
87
+ SHOWN: "shown" + EVENT_KEY,
88
+ HIDE: "hide" + EVENT_KEY,
89
+ HIDDEN: "hidden" + EVENT_KEY,
90
+ CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
91
+ };
92
+ var ClassName = {
93
+ SHOW: 'show',
94
+ COLLAPSE: 'collapse',
95
+ COLLAPSING: 'collapsing',
96
+ COLLAPSED: 'collapsed'
97
+ };
98
+ var Dimension = {
99
+ WIDTH: 'width',
100
+ HEIGHT: 'height'
101
+ };
102
+ var Selector = {
103
+ ACTIVES: '.show, .collapsing',
104
+ DATA_TOGGLE: '[data-toggle="collapse"]'
105
+ /**
106
+ * ------------------------------------------------------------------------
107
+ * Class Definition
108
+ * ------------------------------------------------------------------------
109
+ */
110
+
111
+ };
112
+
113
+ var Collapse =
114
+ /*#__PURE__*/
115
+ function () {
116
+ function Collapse(element, config) {
117
+ this._isTransitioning = false;
118
+ this._element = element;
119
+ this._config = this._getConfig(config);
120
+ this._triggerArray = [].slice.call(document.querySelectorAll("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]")));
121
+ var toggleList = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE));
122
+
123
+ for (var i = 0, len = toggleList.length; i < len; i++) {
124
+ var elem = toggleList[i];
125
+ var selector = Util.getSelectorFromElement(elem);
126
+ var filterElement = [].slice.call(document.querySelectorAll(selector)).filter(function (foundElem) {
127
+ return foundElem === element;
128
+ });
129
+
130
+ if (selector !== null && filterElement.length > 0) {
131
+ this._selector = selector;
132
+
133
+ this._triggerArray.push(elem);
134
+ }
135
+ }
136
+
137
+ this._parent = this._config.parent ? this._getParent() : null;
138
+
139
+ if (!this._config.parent) {
140
+ this._addAriaAndCollapsedClass(this._element, this._triggerArray);
141
+ }
142
+
143
+ if (this._config.toggle) {
144
+ this.toggle();
145
+ }
146
+ } // Getters
147
+
148
+
149
+ var _proto = Collapse.prototype;
150
+
151
+ // Public
152
+ _proto.toggle = function toggle() {
153
+ if ($(this._element).hasClass(ClassName.SHOW)) {
154
+ this.hide();
155
+ } else {
156
+ this.show();
157
+ }
158
+ };
159
+
160
+ _proto.show = function show() {
161
+ var _this = this;
162
+
163
+ if (this._isTransitioning || $(this._element).hasClass(ClassName.SHOW)) {
164
+ return;
165
+ }
166
+
167
+ var actives;
168
+ var activesData;
169
+
170
+ if (this._parent) {
171
+ actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES)).filter(function (elem) {
172
+ if (typeof _this._config.parent === 'string') {
173
+ return elem.getAttribute('data-parent') === _this._config.parent;
174
+ }
175
+
176
+ return elem.classList.contains(ClassName.COLLAPSE);
177
+ });
178
+
179
+ if (actives.length === 0) {
180
+ actives = null;
181
+ }
182
+ }
183
+
184
+ if (actives) {
185
+ activesData = $(actives).not(this._selector).data(DATA_KEY);
186
+
187
+ if (activesData && activesData._isTransitioning) {
188
+ return;
189
+ }
190
+ }
191
+
192
+ var startEvent = $.Event(Event.SHOW);
193
+ $(this._element).trigger(startEvent);
194
+
195
+ if (startEvent.isDefaultPrevented()) {
196
+ return;
197
+ }
198
+
199
+ if (actives) {
200
+ Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide');
201
+
202
+ if (!activesData) {
203
+ $(actives).data(DATA_KEY, null);
204
+ }
205
+ }
206
+
207
+ var dimension = this._getDimension();
208
+
209
+ $(this._element).removeClass(ClassName.COLLAPSE).addClass(ClassName.COLLAPSING);
210
+ this._element.style[dimension] = 0;
211
+
212
+ if (this._triggerArray.length) {
213
+ $(this._triggerArray).removeClass(ClassName.COLLAPSED).attr('aria-expanded', true);
214
+ }
215
+
216
+ this.setTransitioning(true);
217
+
218
+ var complete = function complete() {
219
+ $(_this._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).addClass(ClassName.SHOW);
220
+ _this._element.style[dimension] = '';
221
+
222
+ _this.setTransitioning(false);
223
+
224
+ $(_this._element).trigger(Event.SHOWN);
225
+ };
226
+
227
+ var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
228
+ var scrollSize = "scroll" + capitalizedDimension;
229
+ var transitionDuration = Util.getTransitionDurationFromElement(this._element);
230
+ $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
231
+ this._element.style[dimension] = this._element[scrollSize] + "px";
232
+ };
233
+
234
+ _proto.hide = function hide() {
235
+ var _this2 = this;
236
+
237
+ if (this._isTransitioning || !$(this._element).hasClass(ClassName.SHOW)) {
238
+ return;
239
+ }
240
+
241
+ var startEvent = $.Event(Event.HIDE);
242
+ $(this._element).trigger(startEvent);
243
+
244
+ if (startEvent.isDefaultPrevented()) {
245
+ return;
246
+ }
247
+
248
+ var dimension = this._getDimension();
249
+
250
+ this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px";
251
+ Util.reflow(this._element);
252
+ $(this._element).addClass(ClassName.COLLAPSING).removeClass(ClassName.COLLAPSE).removeClass(ClassName.SHOW);
253
+ var triggerArrayLength = this._triggerArray.length;
254
+
255
+ if (triggerArrayLength > 0) {
256
+ for (var i = 0; i < triggerArrayLength; i++) {
257
+ var trigger = this._triggerArray[i];
258
+ var selector = Util.getSelectorFromElement(trigger);
259
+
260
+ if (selector !== null) {
261
+ var $elem = $([].slice.call(document.querySelectorAll(selector)));
262
+
263
+ if (!$elem.hasClass(ClassName.SHOW)) {
264
+ $(trigger).addClass(ClassName.COLLAPSED).attr('aria-expanded', false);
265
+ }
266
+ }
267
+ }
268
+ }
269
+
270
+ this.setTransitioning(true);
271
+
272
+ var complete = function complete() {
273
+ _this2.setTransitioning(false);
274
+
275
+ $(_this2._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).trigger(Event.HIDDEN);
276
+ };
277
+
278
+ this._element.style[dimension] = '';
279
+ var transitionDuration = Util.getTransitionDurationFromElement(this._element);
280
+ $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
281
+ };
282
+
283
+ _proto.setTransitioning = function setTransitioning(isTransitioning) {
284
+ this._isTransitioning = isTransitioning;
285
+ };
286
+
287
+ _proto.dispose = function dispose() {
288
+ $.removeData(this._element, DATA_KEY);
289
+ this._config = null;
290
+ this._parent = null;
291
+ this._element = null;
292
+ this._triggerArray = null;
293
+ this._isTransitioning = null;
294
+ } // Private
295
+ ;
296
+
297
+ _proto._getConfig = function _getConfig(config) {
298
+ config = _objectSpread({}, Default, config);
299
+ config.toggle = Boolean(config.toggle); // Coerce string values
300
+
301
+ Util.typeCheckConfig(NAME, config, DefaultType);
302
+ return config;
303
+ };
304
+
305
+ _proto._getDimension = function _getDimension() {
306
+ var hasWidth = $(this._element).hasClass(Dimension.WIDTH);
307
+ return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT;
308
+ };
309
+
310
+ _proto._getParent = function _getParent() {
311
+ var _this3 = this;
312
+
313
+ var parent;
314
+
315
+ if (Util.isElement(this._config.parent)) {
316
+ parent = this._config.parent; // It's a jQuery object
317
+
318
+ if (typeof this._config.parent.jquery !== 'undefined') {
319
+ parent = this._config.parent[0];
320
+ }
321
+ } else {
322
+ parent = document.querySelector(this._config.parent);
323
+ }
324
+
325
+ var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]";
326
+ var children = [].slice.call(parent.querySelectorAll(selector));
327
+ $(children).each(function (i, element) {
328
+ _this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]);
329
+ });
330
+ return parent;
331
+ };
332
+
333
+ _proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) {
334
+ var isOpen = $(element).hasClass(ClassName.SHOW);
335
+
336
+ if (triggerArray.length) {
337
+ $(triggerArray).toggleClass(ClassName.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
338
+ }
339
+ } // Static
340
+ ;
341
+
342
+ Collapse._getTargetFromElement = function _getTargetFromElement(element) {
343
+ var selector = Util.getSelectorFromElement(element);
344
+ return selector ? document.querySelector(selector) : null;
345
+ };
346
+
347
+ Collapse._jQueryInterface = function _jQueryInterface(config) {
348
+ return this.each(function () {
349
+ var $this = $(this);
350
+ var data = $this.data(DATA_KEY);
351
+
352
+ var _config = _objectSpread({}, Default, $this.data(), typeof config === 'object' && config ? config : {});
353
+
354
+ if (!data && _config.toggle && /show|hide/.test(config)) {
355
+ _config.toggle = false;
356
+ }
357
+
358
+ if (!data) {
359
+ data = new Collapse(this, _config);
360
+ $this.data(DATA_KEY, data);
361
+ }
362
+
363
+ if (typeof config === 'string') {
364
+ if (typeof data[config] === 'undefined') {
365
+ throw new TypeError("No method named \"" + config + "\"");
366
+ }
367
+
368
+ data[config]();
369
+ }
370
+ });
371
+ };
372
+
373
+ _createClass(Collapse, null, [{
374
+ key: "VERSION",
375
+ get: function get() {
376
+ return VERSION;
377
+ }
378
+ }, {
379
+ key: "Default",
380
+ get: function get() {
381
+ return Default;
382
+ }
383
+ }]);
384
+
385
+ return Collapse;
386
+ }();
387
+ /**
388
+ * ------------------------------------------------------------------------
389
+ * Data Api implementation
390
+ * ------------------------------------------------------------------------
391
+ */
392
+
393
+
394
+ $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
395
+ // preventDefault only for <a> elements (which change the URL) not inside the collapsible element
396
+ if (event.currentTarget.tagName === 'A') {
397
+ event.preventDefault();
398
+ }
399
+
400
+ var $trigger = $(this);
401
+ var selector = Util.getSelectorFromElement(this);
402
+ var selectors = [].slice.call(document.querySelectorAll(selector));
403
+ $(selectors).each(function () {
404
+ var $target = $(this);
405
+ var data = $target.data(DATA_KEY);
406
+ var config = data ? 'toggle' : $trigger.data();
407
+
408
+ Collapse._jQueryInterface.call($target, config);
409
+ });
410
+ });
411
+ /**
412
+ * ------------------------------------------------------------------------
413
+ * jQuery
414
+ * ------------------------------------------------------------------------
415
+ */
416
+
417
+ $.fn[NAME] = Collapse._jQueryInterface;
418
+ $.fn[NAME].Constructor = Collapse;
419
+
420
+ $.fn[NAME].noConflict = function () {
421
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
422
+ return Collapse._jQueryInterface;
423
+ };
424
+
425
+ return Collapse;
426
+
427
+ }));
428
+ //# sourceMappingURL=collapse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collapse.js","sources":["../src/collapse.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.0): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst VERSION = '4.3.0'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst Default = {\n toggle : true,\n parent : ''\n}\n\nconst DefaultType = {\n toggle : 'boolean',\n parent : '(string|element)'\n}\n\nconst Event = {\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n SHOW : 'show',\n COLLAPSE : 'collapse',\n COLLAPSING : 'collapsing',\n COLLAPSED : 'collapsed'\n}\n\nconst Dimension = {\n WIDTH : 'width',\n HEIGHT : 'height'\n}\n\nconst Selector = {\n ACTIVES : '.show, .collapsing',\n DATA_TOGGLE : '[data-toggle=\"collapse\"]'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse {\n constructor(element, config) {\n this._isTransitioning = false\n this._element = element\n this._config = this._getConfig(config)\n this._triggerArray = [].slice.call(document.querySelectorAll(\n `[data-toggle=\"collapse\"][href=\"#${element.id}\"],` +\n `[data-toggle=\"collapse\"][data-target=\"#${element.id}\"]`\n ))\n\n const toggleList = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE))\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = Util.getSelectorFromElement(elem)\n const filterElement = [].slice.call(document.querySelectorAll(selector))\n .filter((foundElem) => foundElem === element)\n\n if (selector !== null && filterElement.length > 0) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle() {\n if ($(this._element).hasClass(ClassName.SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning ||\n $(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES))\n .filter((elem) => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-parent') === this._config.parent\n }\n\n return elem.classList.contains(ClassName.COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n if (actives) {\n activesData = $(actives).not(this._selector).data(DATA_KEY)\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = $.Event(Event.SHOW)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n if (actives) {\n Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide')\n if (!activesData) {\n $(actives).data(DATA_KEY, null)\n }\n }\n\n const dimension = this._getDimension()\n\n $(this._element)\n .removeClass(ClassName.COLLAPSE)\n .addClass(ClassName.COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n $(this._triggerArray)\n .removeClass(ClassName.COLLAPSED)\n .attr('aria-expanded', true)\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .addClass(ClassName.SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n $(this._element).trigger(Event.SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning ||\n !$(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n const startEvent = $.Event(Event.HIDE)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n Util.reflow(this._element)\n\n $(this._element)\n .addClass(ClassName.COLLAPSING)\n .removeClass(ClassName.COLLAPSE)\n .removeClass(ClassName.SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const selector = Util.getSelectorFromElement(trigger)\n\n if (selector !== null) {\n const $elem = $([].slice.call(document.querySelectorAll(selector)))\n if (!$elem.hasClass(ClassName.SHOW)) {\n $(trigger).addClass(ClassName.COLLAPSED)\n .attr('aria-expanded', false)\n }\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .trigger(Event.HIDDEN)\n }\n\n this._element.style[dimension] = ''\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n\n this._config = null\n this._parent = null\n this._element = null\n this._triggerArray = null\n this._isTransitioning = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n const hasWidth = $(this._element).hasClass(Dimension.WIDTH)\n return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT\n }\n\n _getParent() {\n let parent\n\n if (Util.isElement(this._config.parent)) {\n parent = this._config.parent\n\n // It's a jQuery object\n if (typeof this._config.parent.jquery !== 'undefined') {\n parent = this._config.parent[0]\n }\n } else {\n parent = document.querySelector(this._config.parent)\n }\n\n const selector =\n `[data-toggle=\"collapse\"][data-parent=\"${this._config.parent}\"]`\n\n const children = [].slice.call(parent.querySelectorAll(selector))\n $(children).each((i, element) => {\n this._addAriaAndCollapsedClass(\n Collapse._getTargetFromElement(element),\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n const isOpen = $(element).hasClass(ClassName.SHOW)\n\n if (triggerArray.length) {\n $(triggerArray)\n .toggleClass(ClassName.COLLAPSED, !isOpen)\n .attr('aria-expanded', isOpen)\n }\n }\n\n // Static\n\n static _getTargetFromElement(element) {\n const selector = Util.getSelectorFromElement(element)\n return selector ? document.querySelector(selector) : null\n }\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $this = $(this)\n let data = $this.data(DATA_KEY)\n const _config = {\n ...Default,\n ...$this.data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data && _config.toggle && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(this, _config)\n $this.data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.currentTarget.tagName === 'A') {\n event.preventDefault()\n }\n\n const $trigger = $(this)\n const selector = Util.getSelectorFromElement(this)\n const selectors = [].slice.call(document.querySelectorAll(selector))\n\n $(selectors).each(function () {\n const $target = $(this)\n const data = $target.data(DATA_KEY)\n const config = data ? 'toggle' : $trigger.data()\n Collapse._jQueryInterface.call($target, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Collapse._jQueryInterface\n$.fn[NAME].Constructor = Collapse\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Collapse._jQueryInterface\n}\n\nexport default Collapse\n"],"names":["NAME","VERSION","DATA_KEY","EVENT_KEY","DATA_API_KEY","JQUERY_NO_CONFLICT","$","fn","Default","toggle","parent","DefaultType","Event","SHOW","SHOWN","HIDE","HIDDEN","CLICK_DATA_API","ClassName","COLLAPSE","COLLAPSING","COLLAPSED","Dimension","WIDTH","HEIGHT","Selector","ACTIVES","DATA_TOGGLE","Collapse","element","config","_isTransitioning","_element","_config","_getConfig","_triggerArray","slice","call","document","querySelectorAll","id","toggleList","i","len","length","elem","selector","Util","getSelectorFromElement","filterElement","filter","foundElem","_selector","push","_parent","_getParent","_addAriaAndCollapsedClass","hasClass","hide","show","actives","activesData","getAttribute","classList","contains","not","data","startEvent","trigger","isDefaultPrevented","_jQueryInterface","dimension","_getDimension","removeClass","addClass","style","attr","setTransitioning","complete","capitalizedDimension","toUpperCase","scrollSize","transitionDuration","getTransitionDurationFromElement","one","TRANSITION_END","emulateTransitionEnd","getBoundingClientRect","reflow","triggerArrayLength","$elem","isTransitioning","dispose","removeData","Boolean","typeCheckConfig","hasWidth","isElement","jquery","querySelector","children","each","_getTargetFromElement","triggerArray","isOpen","toggleClass","$this","test","TypeError","on","event","currentTarget","tagName","preventDefault","$trigger","selectors","$target","Constructor","noConflict"],"mappings":"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"}