{"version":3,"sources":["webpack:///./app/components/m/btabs/index.js"],"names":["$","fn","btabs","options","opts","delayTime","autoHeight","extend","scrollableTableResizeTimer","window","on","clearTimeout","setTimeout","each","$wrapper","find","$child","resizeWrapper","setActiveTab","$tabPanes","activeIndex","arguments","length","undefined","$component","closest","maxIndex","css","removeClass","attr","addClass","getActiveIndex","index","height","outerHeight","$button","$tabNav","hammertime","Hammer","querySelector","event","preventDefault","sum","$prevItems","prevAll","width","dist","parent","animate","scrollLeft","ev","$tabContent","target","$activeTab","$nextTab","direction","next","prev","idx","nextTabItem","eq","trigger","e","$tabWrapper","$btn","currentTarget","$tabLinks","curIndex","hasClass","$newTabLink"],"mappings":"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","file":"btabs.chunk.js","sourcesContent":["import Hammer from 'hammerjs';\r\n\r\n$.fn.btabs = function (options) {\r\n let opts = {\r\n delayTime: 300,\r\n autoHeight: true,\r\n };\r\n options = options || {};\r\n opts = $.extend(opts, options);\r\n\r\n /**\r\n * Auto height on resize/orientationchange\r\n */\r\n if (opts.autoHeight) {\r\n let scrollableTableResizeTimer;\r\n $(window).on('resize orientationchange', () => {\r\n clearTimeout(scrollableTableResizeTimer);\r\n scrollableTableResizeTimer = setTimeout(() => {\r\n $(this).each(function () {\r\n const $wrapper = $(this).find('.btabs__content');\r\n const $child = $(this).find('.tab-pane.active > *:first-child');\r\n resizeWrapper($wrapper, $child);\r\n });\r\n }, 300);\r\n });\r\n }\r\n\r\n function setActiveTab($tabPanes, activeIndex = 0) {\r\n // Store active index\r\n const $component = $tabPanes.closest('.btabs');\r\n const maxIndex = $tabPanes.length - 1;\r\n\r\n // Swipe to Tab\r\n $tabPanes.css('transform', `translateX(-${activeIndex}00%)`);\r\n\r\n // Disable/Enable Arrow Buttons\r\n $component.find('.swiper-button').removeClass('swiper-disabled').attr('aria-disabled', 'false');\r\n if (activeIndex === maxIndex) {\r\n $component.find('.swiper-button-next').addClass('swiper-disabled').attr('aria-disabled', 'true');\r\n }\r\n if (activeIndex === 0) {\r\n $component.find('.swiper-button-prev').addClass('swiper-disabled').attr('aria-disabled', 'true');\r\n }\r\n }\r\n\r\n function getActiveIndex($wrapper) {\r\n return [$wrapper.find('.tab-pane.active').index(), $wrapper.find('.tab-pane').length - 1];\r\n }\r\n\r\n function resizeWrapper($wrapper, $child) {\r\n $wrapper.css('width', 'auto');\r\n const height = $child.outerHeight();\r\n $wrapper.height(height);\r\n }\r\n\r\n /**\r\n * START: Iterating over elements\r\n */\r\n return this.each(function () {\r\n const $button = $(this).find('li');\r\n const $tabNav = $(this).find('.btabs__nav');\r\n const hammertime = new Hammer(this.querySelector('.tab-content'), {});\r\n\r\n /**\r\n * Click on Tab-Nav Handler\r\n */\r\n $button.on('click', function (event) {\r\n event.preventDefault();\r\n let sum = 0;\r\n const $prevItems = $(this).prevAll();\r\n\r\n // Swipe to Tab\r\n setActiveTab($(this).closest('.btabs').find('.tab-pane'), $prevItems.length);\r\n\r\n // Calc Tab Scroll Position\r\n $prevItems.each(function () {\r\n sum += $(this).width();\r\n });\r\n let dist = sum - ($(this).parent().width() - $(this).width()) / 2;\r\n if (dist < 0) {\r\n dist = 0;\r\n }\r\n $(this).parent().animate(\r\n {\r\n scrollLeft: dist,\r\n },\r\n opts['delayTime']\r\n );\r\n });\r\n\r\n /**\r\n * Swipe Content Handler\r\n */\r\n hammertime.on('swipe', function (ev) {\r\n const $tabContent = $(ev.target).closest('.btabs__content');\r\n const $activeTab = $tabContent.find('.tab-pane.active');\r\n const $nextTab = ev.direction === 2 ? $activeTab.next() : $activeTab.prev();\r\n if ($nextTab.length === 1) {\r\n const idx = $nextTab.index();\r\n const nextTabItem = $tabNav.find('li > a').eq(idx);\r\n nextTabItem.trigger('click');\r\n }\r\n });\r\n\r\n /**\r\n * Resize to height of active Tab\r\n */\r\n $(this)\r\n .find('a[data-toggle=\"tab\"]')\r\n .on('shown.bs.tab', (e) => {\r\n // e.target; // newly activated tab\r\n // e.relatedTarget; // previous active tab\r\n\r\n if (opts.autoHeight) {\r\n const $tabWrapper = $(e.target).closest('.btabs').find('.btabs__content');\r\n\r\n const $activeTab = $tabWrapper.find('.tab-pane.active > :first-child');\r\n resizeWrapper($tabWrapper, $activeTab);\r\n }\r\n });\r\n\r\n /**\r\n * Prev/Next Handler\r\n */\r\n $(this)\r\n .find('.swiper-button')\r\n .on('click', (ev) => {\r\n const $btn = $(ev.currentTarget);\r\n const $component = $btn.closest('.btabs');\r\n const $tabLinks = $component.find('.btabs__nav a');\r\n let [curIndex, maxIndex] = getActiveIndex($btn.closest('.btabs__content'));\r\n\r\n if ($btn.hasClass('swiper-button-prev') && curIndex > 0) {\r\n curIndex--;\r\n } else if (curIndex < maxIndex) {\r\n curIndex++;\r\n }\r\n\r\n const $newTabLink = $tabLinks.eq(curIndex);\r\n $newTabLink.trigger('click');\r\n });\r\n\r\n if (opts.autoHeight) {\r\n resizeWrapper($(this).find('.btabs__content'), $(this).find('.tab-pane.active > :first-child'));\r\n }\r\n });\r\n};\r\n\r\n$('.btabs').btabs({\r\n autoHeight: true,\r\n});\r\n"],"sourceRoot":""}