{"version":3,"file":"listingTemplateForTooltip-B6bLKQff.js","sources":["../../../node_modules/flickity-fade/flickity-fade.js","../../../app/javascript/utils/listingTemplateForTooltip.js"],"sourcesContent":["/**\n * Flickity fade v1.0.0\n * Fade between Flickity slides\n */\n\n/* jshint browser: true, undef: true, unused: true */\n\n( function( window, factory ) {\n // universal module definition\n /*globals define, module, require */\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'flickity/js/index',\n 'fizzy-ui-utils/utils',\n ], factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n require('flickity'),\n require('fizzy-ui-utils')\n );\n } else {\n // browser global\n factory(\n window.Flickity,\n window.fizzyUIUtils\n );\n }\n\n}( this, function factory( Flickity, utils ) {\n\n// ---- Slide ---- //\n\nvar Slide = Flickity.Slide;\n\nvar slideUpdateTarget = Slide.prototype.updateTarget;\nSlide.prototype.updateTarget = function() {\n slideUpdateTarget.apply( this, arguments );\n if ( !this.parent.options.fade ) {\n return;\n }\n // position cells at selected target\n var slideTargetX = this.target - this.x;\n var firstCellX = this.cells[0].x;\n this.cells.forEach( function( cell ) {\n var targetX = cell.x - firstCellX - slideTargetX;\n cell.renderPosition( targetX );\n });\n};\n\nSlide.prototype.setOpacity = function( alpha ) {\n this.cells.forEach( function( cell ) {\n cell.element.style.opacity = alpha;\n });\n};\n\n// ---- Flickity ---- //\n\nvar proto = Flickity.prototype;\n\nFlickity.createMethods.push('_createFade');\n\nproto._createFade = function() {\n this.fadeIndex = this.selectedIndex;\n this.prevSelectedIndex = this.selectedIndex;\n this.on( 'select', this.onSelectFade );\n this.on( 'dragEnd', this.onDragEndFade );\n this.on( 'settle', this.onSettleFade );\n this.on( 'activate', this.onActivateFade );\n this.on( 'deactivate', this.onDeactivateFade );\n};\n\nvar updateSlides = proto.updateSlides;\nproto.updateSlides = function() {\n updateSlides.apply( this, arguments );\n if ( !this.options.fade ) {\n return;\n }\n // set initial opacity\n this.slides.forEach( function( slide, i ) {\n var alpha = i == this.selectedIndex ? 1 : 0;\n slide.setOpacity( alpha );\n }, this );\n};\n\n/* ---- events ---- */\n\nproto.onSelectFade = function() {\n // in case of resize, keep fadeIndex within current count\n this.fadeIndex = Math.min( this.prevSelectedIndex, this.slides.length - 1 );\n this.prevSelectedIndex = this.selectedIndex;\n};\n\nproto.onSettleFade = function() {\n delete this.didDragEnd;\n if ( !this.options.fade ) {\n return;\n }\n // set full and 0 opacity on selected & faded slides\n this.selectedSlide.setOpacity( 1 );\n var fadedSlide = this.slides[ this.fadeIndex ];\n if ( fadedSlide && this.fadeIndex != this.selectedIndex ) {\n this.slides[ this.fadeIndex ].setOpacity( 0 );\n }\n};\n\nproto.onDragEndFade = function() {\n // set flag\n this.didDragEnd = true;\n};\n\nproto.onActivateFade = function() {\n if ( this.options.fade ) {\n this.element.classList.add('is-fade');\n }\n};\n\nproto.onDeactivateFade = function() {\n if ( !this.options.fade ) {\n return;\n }\n this.element.classList.remove('is-fade');\n // reset opacity\n this.slides.forEach( function( slide ) {\n slide.setOpacity('');\n });\n};\n\n/* ---- position & fading ---- */\n\nvar positionSlider = proto.positionSlider;\nproto.positionSlider = function() {\n if ( !this.options.fade ) {\n positionSlider.apply( this, arguments );\n return;\n }\n\n this.fadeSlides();\n this.dispatchScrollEvent();\n};\n\nvar positionSliderAtSelected = proto.positionSliderAtSelected;\nproto.positionSliderAtSelected = function() {\n if ( this.options.fade ) {\n // position fade slider at origin\n this.setTranslateX( 0 );\n }\n positionSliderAtSelected.apply( this, arguments );\n};\n\nproto.fadeSlides = function() {\n if ( this.slides.length < 2 ) {\n return;\n }\n // get slides to fade-in & fade-out\n var indexes = this.getFadeIndexes();\n var fadeSlideA = this.slides[ indexes.a ];\n var fadeSlideB = this.slides[ indexes.b ];\n var distance = this.wrapDifference( fadeSlideA.target, fadeSlideB.target );\n var progress = this.wrapDifference( fadeSlideA.target, -this.x );\n progress = progress / distance;\n\n fadeSlideA.setOpacity( 1 - progress );\n fadeSlideB.setOpacity( progress );\n\n // hide previous slide\n var fadeHideIndex = indexes.a;\n if ( this.isDragging ) {\n fadeHideIndex = progress > 0.5 ? indexes.a : indexes.b;\n }\n var isNewHideIndex = this.fadeHideIndex != undefined &&\n this.fadeHideIndex != fadeHideIndex &&\n this.fadeHideIndex != indexes.a &&\n this.fadeHideIndex != indexes.b;\n if ( isNewHideIndex ) {\n // new fadeHideSlide set, hide previous\n this.slides[ this.fadeHideIndex ].setOpacity( 0 );\n }\n this.fadeHideIndex = fadeHideIndex;\n};\n\nproto.getFadeIndexes = function() {\n if ( !this.isDragging && !this.didDragEnd ) {\n return {\n a: this.fadeIndex,\n b: this.selectedIndex,\n };\n }\n if ( this.options.wrapAround ) {\n return this.getFadeDragWrapIndexes();\n } else {\n return this.getFadeDragLimitIndexes();\n }\n};\n\nproto.getFadeDragWrapIndexes = function() {\n var distances = this.slides.map( function( slide, i ) {\n return this.getSlideDistance( -this.x, i );\n }, this );\n var absDistances = distances.map( function( distance ) {\n return Math.abs( distance );\n });\n var minDistance = Math.min.apply( Math, absDistances );\n var closestIndex = absDistances.indexOf( minDistance );\n var distance = distances[ closestIndex ];\n var len = this.slides.length;\n\n var delta = distance >= 0 ? 1 : -1;\n return {\n a: closestIndex,\n b: utils.modulo( closestIndex + delta, len ),\n };\n};\n\nproto.getFadeDragLimitIndexes = function() {\n // calculate closest previous slide\n var dragIndex = 0;\n for ( var i=0; i < this.slides.length - 1; i++ ) {\n var slide = this.slides[i];\n if ( -this.x < slide.target ) {\n break;\n }\n dragIndex = i;\n }\n return {\n a: dragIndex,\n b: dragIndex + 1,\n };\n};\n\nproto.wrapDifference = function( a, b ) {\n var diff = b - a;\n\n if ( !this.options.wrapAround ) {\n return diff;\n }\n\n var diffPlus = diff + this.slideableWidth;\n var diffMinus = diff - this.slideableWidth;\n if ( Math.abs( diffPlus ) < Math.abs( diff ) ) {\n diff = diffPlus;\n }\n if ( Math.abs( diffMinus ) < Math.abs( diff ) ) {\n diff = diffMinus;\n }\n return diff;\n};\n\n// ---- wrapAround ---- //\n\nvar _getWrapShiftCells = proto._getWrapShiftCells;\nproto._getWrapShiftCells = function() {\n if ( !this.options.fade ) {\n _getWrapShiftCells.apply( this, arguments );\n }\n};\n\nvar shiftWrapCells = proto.shiftWrapCells;\nproto.shiftWrapCells = function() {\n if ( !this.options.fade ) {\n shiftWrapCells.apply( this, arguments );\n }\n};\n\nreturn Flickity;\n\n}));\n","export default function listingTemplateForTooltip(listing) {\n return `\n \n
\n
\n
\n \n
\n
\n
\n

${listing.name}

\n
${listing.product_type_name}
\n
\n
\n
\n `;\n}\n"],"names":["window","factory","module","require$$0","require$$1","this","Flickity","utils","Slide","slideUpdateTarget","slideTargetX","firstCellX","cell","targetX","alpha","proto","updateSlides","slide","i","fadedSlide","positionSlider","positionSliderAtSelected","indexes","fadeSlideA","fadeSlideB","distance","progress","fadeHideIndex","isNewHideIndex","distances","absDistances","minDistance","closestIndex","len","delta","dragIndex","a","b","diff","diffPlus","diffMinus","_getWrapShiftCells","shiftWrapCells","listingTemplateForTooltip","listing"],"mappings":"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","x_google_ignoreList":[0]}