{"version":3,"file":"TableScroll.chunk-475191.js","mappings":"oKAIA,SAAUA,EAAGC,EAAQC,EAAUC,GAK9B,IAAIC,EAAa,cAIjB,SAASC,EAAOC,GACfC,KAAKH,WAAaA,EAClBG,KAAKD,QAAUA,EACfC,KAAKC,SAAWR,EAAEM,GAClBC,KAAKE,MACN,CAEAJ,EAAOK,UAAUD,KAAO,WACvB,IAAIE,EAEJJ,KAAKK,aACLL,KAAKM,cAELF,EAAcJ,KAAKC,SAASM,QAAQ,sBAAsB,GAC5CP,KAAKQ,YAAaJ,IAE/BJ,KAAKS,eAAgBL,EAEvB,EAEAN,EAAOK,UAAUG,YAAc,WAC9BN,KAAKC,SAASM,QAAQ,sBAAsBG,GAAG,SAAU,CAAEC,OAAQX,OAAQY,EAAAA,EAAAA,GAASZ,KAAKa,aAAc,MACvGpB,EAAEC,GAAQgB,GAAG,SAAU,CAAEC,OAAQX,OAAQY,EAAAA,EAAAA,GAASZ,KAAKc,kBAAmB,KAC3E,EAEAhB,EAAOK,UAAUE,WAAa,WAC7BL,KAAKC,SAASc,KA7BD,uEA8Bd,EAEAjB,EAAOK,UAAUK,YAAc,SAAUT,GAExC,IAAIiB,EAAWvB,EAAEM,GAIjB,OAHaiB,EAASC,KAAK,SACFC,QAAUF,EAASE,SAG3CF,EAAST,QAAQ,gBAAgBY,SAAU,iBACpC,IAGRH,EAAST,QAAQ,gBAAgBa,YAAY,iBACtC,EAER,EAEAtB,EAAOK,UAAUU,aAAe,SAASQ,GACxC,IAAIV,EAASU,EAAEC,KAAKX,OACFA,EAAOH,YAAYR,OAEpCW,EAAOF,eAAgBT,KAEzB,EAEAF,EAAOK,UAAUW,kBAAoB,SAAUO,GAC9C,GAAIA,GAAMA,EAAEC,MAASD,EAAEC,KAAKX,QAAuC,eAA7BU,EAAEC,KAAKX,OAAOd,WAKpD,IAFA,IAAIc,EAASU,EAAEC,KAAKX,OAChBY,EAAS9B,EAAE,sBACN+B,EAAI,EAAGC,EAAUF,EAAOE,OAAQD,EAAIC,EAAQD,IAAK,CACzD,IAAIE,EAAUH,EAAOC,GACHb,EAAOH,YAAYkB,IAEpCf,EAAOF,eAAgBiB,EAEzB,CACD,EAEA5B,EAAOK,UAAUM,eAAiB,SAAUkB,GAC3C,IAAIC,EAAQnC,EAAEkC,GACVE,EAAaD,EAAMX,KAAK,SAASC,QACjCY,EAAaF,EAAME,aAEnBC,EAAyB,IAAfD,EACVE,EAAQH,GAAgBC,EAFPF,EAAMV,QAG3BlB,KAAKiC,YAAaF,EAASC,EAAOJ,EAAMrB,QAAQ,gBACjD,EAEAT,EAAOK,UAAU8B,YAAc,SAAUF,EAASC,EAAOE,GACxD,GAAGH,GAAWC,EAOb,OANGD,GACFG,EAAWf,SAAS,iBAElBa,GACFE,EAAWf,SAAS,WAItBe,EAAWd,YAAY,YAAYA,YAAY,SAChD,EAEA3B,EAAE0C,GAAGtC,GAAc,SAASuC,GAC3B,OAAOpC,KAAKqC,MAAK,WACX5C,EAAE6B,KAAKtB,KAAOH,IAClBJ,EAAE6B,KAAKtB,KAAMH,EACZ,IAAIC,EAAOE,KAAMoC,GAEpB,GACD,CAEA,CA7GD,CA6GGE,IAAQ5C,OAAQC,S","sources":["webpack://BellGully/../http/content/scripts/src/lib/terabyte/jquery.tablescroll.js"],"sourcesContent":["import jQuery from 'jquery';\r\nimport { throttle } from 'Util/throttle';\r\n\r\n;\r\n(function($, window, document, undefined) {\r\n\r\n\t'use strict';\r\n\r\n\t// Create the defaults once\r\n\tvar pluginName = 'tableScroll';\r\n\tvar wrapper = '
';\r\n\r\n\t// The actual plugin constructor\r\n\tfunction Plugin(element) {\r\n\t\tthis.pluginName = pluginName;\r\n\t\tthis.element = element;\r\n\t\tthis.$element = $(element);\r\n\t\tthis.init();\r\n\t}\r\n\r\n\tPlugin.prototype.init = function () {\r\n\t\tvar wrappingDiv;\r\n\t\tvar isScrolling;\r\n\t\tthis._wrapTable();\r\n\t\tthis._initEvents();\r\n\t\t\r\n\t\twrappingDiv = this.$element.closest('.tablescroll-inner')[0];\r\n\t\tisScrolling = this._checkWidth( wrappingDiv );\r\n\t\tif(isScrolling) {\r\n\t\t\tthis._checkPosition( wrappingDiv );\t\r\n\t\t}\r\n\t};\r\n\r\n\tPlugin.prototype._initEvents = function() {\r\n\t\tthis.$element.closest('.tablescroll-inner').on('scroll', { plugin: this }, throttle(this._scrollEvent, 250));\r\n\t\t$(window).on('resize', { plugin: this }, throttle(this._tableResizeEvent, 250));\r\n\t};\r\n\r\n\tPlugin.prototype._wrapTable = function() {\r\n\t\tthis.$element.wrap(wrapper);\r\n\t};\r\n\t\r\n\tPlugin.prototype._checkWidth = function( element ) {\r\n\t\t\r\n\t\tvar $wrapper = $(element);\r\n\t\tvar $table = $wrapper.find('table');\r\n\t\tvar isScrolling = $table.width() > $wrapper.width(); \r\n\t\t//console.log('table-width', $table.width(), 'wrapper-width', $wrapper.width(), 'is scrolling', isScrolling);\r\n\t\tif( isScrolling ) {\r\n\t\t\t$wrapper.closest('.tablescroll').addClass( 'is-scrolling');\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\t$wrapper.closest('.tablescroll').removeClass('is-scrolling');\r\n\t\treturn false;\r\n\t\t\r\n\t};\r\n\r\n\tPlugin.prototype._scrollEvent = function(e) {\r\n\t\tvar plugin = e.data.plugin;\r\n\t\tvar isScrolling = plugin._checkWidth(this);\r\n\t\tif(isScrolling) {\r\n\t\t\tplugin._checkPosition( this );\t\r\n\t\t}\r\n\t};\r\n\t\r\n\tPlugin.prototype._tableResizeEvent = function( e ) {\r\n\t\tif(!e || !e.data || !e.data.plugin || e.data.plugin.pluginName === 'evenSteven') {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tvar plugin = e.data.plugin;\r\n\t\tvar $items = $('.tablescroll-inner');\r\n\t\tfor( var i = 0, length = $items.length; i < length; i++) {\r\n\t\t\tvar current = $items[i];\r\n\t\t\tvar isScrolling = plugin._checkWidth(current);\r\n\t\t\tif(isScrolling) {\r\n\t\t\t\tplugin._checkPosition( current );\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\t\r\n\tPlugin.prototype._checkPosition = function( elem ) {\r\n\t\tvar $this = $(elem);\r\n\t\tvar tableWidth = $this.find('table').width();\r\n\t\tvar scrollLeft = $this.scrollLeft();\r\n\t\tvar containerWidth = $this.width();\r\n\t\tvar isStart = scrollLeft === 0;\r\n\t\tvar isEnd = tableWidth <= ( scrollLeft + containerWidth );\r\n\t\tthis._setClasses( isStart, isEnd, $this.closest('.tablescroll') );\r\n\t};\r\n\r\n\tPlugin.prototype._setClasses = function( isStart, isEnd, $container ) {\r\n\t\tif(isStart || isEnd ) {\r\n\t\t\tif(isStart) {\r\n\t\t\t\t$container.addClass('is-start');\r\n\t\t\t}\r\n\t\t\tif(isEnd) {\r\n\t\t\t\t$container.addClass('is-end');\r\n\t\t\t}\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t$container.removeClass('is-start').removeClass('is-end');\r\n\t};\r\n\r\n\t$.fn[pluginName] = function(options) {\r\n\t\treturn this.each(function() {\r\n\t\t\tif (!$.data(this, pluginName)) {\r\n\t\t\t\t$.data(this, pluginName,\r\n\t\t\t\t\tnew Plugin(this, options));\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n\r\n})(jQuery, window, document);"],"names":["$","window","document","undefined","pluginName","Plugin","element","this","$element","init","prototype","wrappingDiv","_wrapTable","_initEvents","closest","_checkWidth","_checkPosition","on","plugin","throttle","_scrollEvent","_tableResizeEvent","wrap","$wrapper","find","width","addClass","removeClass","e","data","$items","i","length","current","elem","$this","tableWidth","scrollLeft","isStart","isEnd","_setClasses","$container","fn","options","each","jQuery"],"sourceRoot":""}