{"version":3,"sources":["webpack:////Users/owenli/Documents/workspace/awi-wlc-fe/src/views/blocks/mixins/fullWindowHeightMixinBlock/fullWindowHeightMixinBlock.js","webpack:////Users/owenli/Documents/workspace/awi-wlc-fe/src/views/blocks/mixins/compactViewMixinBlock/compactViewMixinBlock.js","webpack:////Users/owenli/Documents/workspace/awi-wlc-fe/src/views/blocks/mixins/backgroundWaveMixinBlock/backgroundWaveMixinBlock.js","webpack:////Users/owenli/Documents/workspace/awi-wlc-fe/src/views/blocks/mixins/backgroundRippleMixinBlock/backgroundRippleMixinBlock.js","webpack:////Users/owenli/Documents/workspace/awi-wlc-fe/src/views/blocks/homepageCourseCarouselBlock/js/homepageCourseCarouselBlock.js","webpack:////Users/owenli/Documents/workspace/awi-wlc-fe/src/views/mixins/compactViewMixin/compactViewMixin.js"],"names":["__webpack_require__","r","__webpack_exports__","$","_","d","fullWindowHeightMixinBlock","initFullWindowHeight","self","$element","element","isNil","data","setElementHeight","$tplHeader","setTimeout","css","minHeight","concat","window","height","visibility","resize","debounce","compactViewMixinBlock","compactViewMixin","svgjs","backgroundWaveMixinBlock","initBackgroundWave","$inner","find","$innerContent","position","zIndex","y","topColor","bottomColor","isVaildColor","color","$div","svgObject","viewbox","svg","$svgElement","node","left","right","top","transform","fill","pointerEvents","append","backgroundColor","bottom","translateBackgrounds","offset","backgroundRippleMixinBlock","_backgroundRippleMarkup__WEBPACK_IMPORTED_MODULE_0__","initBackgroundRipple","x","backgroundRippleMarkup","width","CLS","HomepageCourseCarouselBlock","_this","this","_classCallCheck","$elementInner","$sliderContainer","$carouselItems","$carouselSlider","slick","dots","dotsClass","appendArrows","appendDots","nextArrow","prevArrow","infinite","slidesToShow","slidesToScroll","mobileFirst","cssEase","useTransform","responsive","breakpoint","settings","centerMode","centerPadding","on","_event","currentSlide","nextSlide","$slides","removeClass","addClass","initCompactView","opacity","adjustArrowVisibility","trailing","each","index","$title","text","key","value","$arrows","length","previousArrow","Math","floor","ceil","getContainerWidth","$tplContent","Object","assign","prototype","classes","$tplScroller","applyCompactView","attr","forEach","classItem","isBlockExceedingHeight","clientHeight","outerHeight","toggleCompactViewAttribute","removeAttr"],"mappings":"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","file":"block-32.2f662a3aa586e55a56ca.js","sourcesContent":["export let fullWindowHeightMixinBlock = {\n\tinitFullWindowHeight: (self) => {\n\t\tself.$element = self.$element || $(self.element);\n\n\t\tif(!_.isNil(self.$element.data('fullscreen')) && self.$element.data('fullscreen')) {\n\t\t\tlet setElementHeight = () => {\n\t\t\t\tlet $tplHeader = $('.tpl-header');\n\n\t\t\t\t// Slight delay\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tself.$element.css({\n\t\t\t\t\t\tminHeight: `${$(window).height() - $tplHeader.height()}px`,\n\t\t\t\t\t\tvisibility: 'visible'\n\t\t\t\t\t});\n\t\t\t\t}, 250);\n\t\t\t};\n\n\t\t\t$(window).resize(_.debounce(() => {\n\t\t\t\tsetElementHeight();\n\t\t\t}, 250));\n\n\t\t\tsetElementHeight();\n\t\t}\n\t\telse {\n\t\t\t// Slight delay\n\t\t\tsetTimeout(() => {\n\t\t\t\tself.$element.css({\n\t\t\t\t\tvisibility: 'visible'\n\t\t\t\t});\n\t\t\t}, 250);\n\t\t}\n\t}\n};\n","import { compactViewMixin } from '../../../mixins/compactViewMixin/compactViewMixin';\nexport let compactViewMixinBlock = compactViewMixin;\n","export let backgroundWaveMixinBlock = {\n\tinitBackgroundWave: (self) => {\n\t\tself.$element = self.$element || $(self.element);\n\n\t\tif(self.$element.data('backgroundWave')) {\n\t\t\tlet $inner = self.$element.find('[background-wave-inner]');\n\t\t\tlet $innerContent = $inner.find('[background-wave-inner-content]');\n\n\t\t\t$inner.css({\n\t\t\t\tposition: 'relative'\n\t\t\t});\n\n\t\t\t// Requires the inner divs to have a z-index\n\t\t\t$innerContent.css({\n\t\t\t\tzIndex: 60,\n\t\t\t\tposition: 'relative'\n\t\t\t});\n\n\t\t\tlet y = !_.isNil(self.$element.data('backgroundWaveY')) ? self.$element.data('backgroundWaveY') : 50;\n\t\t\tlet topColor = self.$element.data('backgroundWaveTopColor') || 'transparent';\n\t\t\tlet bottomColor = self.$element.data('backgroundWaveBottomColor') || 'transparent';\n\n\t\t\tlet isVaildColor = (color) => {\n\t\t\t\tlet $div = $('
');\n\t\t\t\t$div.css('border', '1px solid '+color);\n\t\t\t\treturn ($div.css('border-color') !== '');\n\t\t\t};\n\n\t\t\tif(y < 0 || y > 100) {\n\t\t\t\tconsole.error('BackgroundWaveMixinBlock::Error', 'Please supply a valid y position between 0–100%');\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif(!isVaildColor(topColor)) {\n\t\t\t\tconsole.error('BackgroundWaveMixinBlock::Error', 'Please supply a valid backgroundWaveTopColor value. (CSS backgroundColor)');\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif(!isVaildColor(bottomColor)) {\n\t\t\t\tconsole.error('BackgroundWaveMixinBlock::Error', 'Please supply a valid backgroundWaveBottomColor value. (CSS backgroundColor)');\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Create wave\n\t\t\tlet pathElements = ``;\n\t\t\tlet svgObject = svgjs($inner[0]).viewbox(0, 0, 1440, 130).svg(pathElements);\n\t\t\tlet $svgElement = $(svgObject.node);\n\t\t\t$svgElement.css({\n\t\t\t\tposition: 'absolute',\n\t\t\t\tleft: '0',\n\t\t\t\tright: '0',\n\t\t\t\ttop: `${y}%`,\n\t\t\t\ttransform: 'translateY(-50%)',\n\t\t\t\tzIndex: 40,\n\t\t\t\theight: 'unset'\n\t\t\t});\n\n\t\t\t// Apply topBackgroundColor fill for SVG\n\t\t\t$svgElement.find('.topBackgroundWave').css({\n\t\t\t\tfill: topColor,\n\t\t\t\tpointerEvents: 'none'\n\t\t\t});\n\n\t\t\t// Apply topBackgroundColor for top div\n\t\t\t$inner.append(`
`);\n\t\t\t$inner.find('.topBackground').css({\n\t\t\t\tposition: 'absolute',\n\t\t\t\tbackgroundColor: topColor,\n\t\t\t\ttop: 0,\n\t\t\t\tleft: 0,\n\t\t\t\tright: 0,\n\t\t\t\tbottom: `${100 - y}%`,\n\t\t\t\tpointerEvents: 'none',\n\t\t\t});\n\n\t\t\t// Apply bottomBackgroundColor fill for SVG\n\t\t\t$svgElement.find('.bottomBackgroundWave').css({\n\t\t\t\tfill: bottomColor,\n\t\t\t\tpointerEvents: 'none'\n\t\t\t});\n\n\t\t\t// Apply bottomBackgroundColor for bottom div\n\t\t\t$inner.append(`
`);\n\t\t\t$inner.find('.bottomBackground').css({\n\t\t\t\tposition: 'absolute',\n\t\t\t\tbackgroundColor: bottomColor,\n\t\t\t\ttop: `${y}%`,\n\t\t\t\tleft: 0,\n\t\t\t\tright: 0,\n\t\t\t\tbottom: 0,\n\t\t\t\tpointerEvents: 'none'\n\t\t\t});\n\n\t\t\t// Adjustments when the y value overflows the background\n\t\t\tlet translateBackgrounds = () => {\n\t\t\t\t$svgElement.css({\n\t\t\t\t\ttop: `${y}%`,\n\t\t\t\t\ttransform: 'translateY(-50%)'\n\t\t\t\t});\n\t\t\t\t$inner.find('.topBackground').css({\n\t\t\t\t\tbottom: `${100 - y}%`\n\t\t\t\t});\n\t\t\t\t$inner.find('.bottomBackground').css({\n\t\t\t\t\ttop: `${y}%`\n\t\t\t\t});\n\n\t\t\t\tif($inner.offset().top > $svgElement.offset().top) {\n\t\t\t\t\t$svgElement.css({\n\t\t\t\t\t\ttop: `0`,\n\t\t\t\t\t\ttransform: `translateY(0)`\n\t\t\t\t\t});\n\t\t\t\t\t$inner.find('.topBackground').css({\n\t\t\t\t\t\tbottom: `calc(100% - ${$svgElement.height() / 2}px`\n\t\t\t\t\t});\n\t\t\t\t\t$inner.find('.bottomBackground').css({\n\t\t\t\t\t\ttop: `${$svgElement.height() / 2}px`\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\telse if($inner.offset().top + $inner.height() < $svgElement.offset().top + $svgElement.height()) {\n\t\t\t\t\t$svgElement.css({\n\t\t\t\t\t\ttop: `100%`,\n\t\t\t\t\t\ttransform: 'translateY(-100%)'\n\t\t\t\t\t});\n\t\t\t\t\t$inner.find('.topBackground').css({\n\t\t\t\t\t\tbottom: `${$svgElement.height() / 2}px`\n\t\t\t\t\t});\n\t\t\t\t\t$inner.find('.bottomBackground').css({\n\t\t\t\t\t\ttop: `calc(100% - ${$svgElement.height() / 2}px`\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t$(window).resize(_.debounce(() => {\n\t\t\t\ttranslateBackgrounds();\n\t\t\t}, 250));\n\n\t\t\ttranslateBackgrounds();\n\t\t}\n\t}\n};\n","import { backgroundRippleMarkup } from './backgroundRippleMarkup';\n\nexport let backgroundRippleMixinBlock = {\n\tinitBackgroundRipple: (self) => {\n\t\tself.$element = self.$element || $(self.element);\n\n\t\tif(self.$element.data('backgroundRipple')) {\n\t\t\tself.$element.css({\n\t\t\t\tposition: 'relative'\n\t\t\t});\n\n\t\t\t// The child element has a -inner class value.\n\t\t\tlet $inner = self.$element.find('[background-ripple-inner]');\n\t\t\tlet $innerContent = $inner.find('[background-ripple-inner-content]');\n\n\t\t\t// Requires the inner divs to have a z-index\n\t\t\t$innerContent.css({\n\t\t\t\tzIndex: 60,\n\t\t\t\tposition: 'relative'\n\t\t\t});\n\n\t\t\tlet y = !_.isNil(self.$element.data('backgroundRippleY')) ? self.$element.data('backgroundRippleY') : 50;\n\t\t\tif(y < 0 || y > 100) {\n\t\t\t\tconsole.error('BackgroundRippleMixinBlock::Error', 'Please supply a valid y position between 0–100%');\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet x = !_.isNil(self.$element.data('backgroundRippleX')) ? self.$element.data('backgroundRippleX') : 50;\n\t\t\tif(x < 0 || x > 100) {\n\t\t\t\tconsole.error('BackgroundRippleMixinBlock::Error', 'Please supply a valid x position between 0–100%');\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// backgroundRippleMarkup\n\t\t\tlet svgObject = svgjs(self.$element[0]).viewbox(0, 0, 743, 959).svg(backgroundRippleMarkup);\n\t\t\tlet $svgElement = $(svgObject.node);\n\t\t\t$svgElement.css({\n\t\t\t\tposition: 'absolute',\n\t\t\t\ttop: `${y}%`,\n\t\t\t\tleft: `${x}%`,\n\t\t\t\tzIndex: 50,\n\t\t\t\twidth: '60%',\n\t\t\t\theight: 'auto',\n\t\t\t\ttransform: 'translate3d(-50%, -50%, 0)',\n\t\t\t\tpointerEvents: 'none'\n\t\t\t});\n\t\t}\n\t}\n};\n","const NS = 'HomepageCourseCarouselBlock';\nconst CLS = 'homepageCourseCarouselBlock';\n\nimport { compactViewMixinBlock } from '../../mixins/compactViewMixinBlock/compactViewMixinBlock';\nimport { fullWindowHeightMixinBlock } from '../../mixins/fullWindowHeightMixinBlock/fullWindowHeightMixinBlock';\nimport { backgroundWaveMixinBlock } from '../../mixins/backgroundWaveMixinBlock/backgroundWaveMixinBlock';\nimport { backgroundRippleMixinBlock } from '../../mixins/backgroundRippleMixinBlock/backgroundRippleMixinBlock';\n\nexport class HomepageCourseCarouselBlock {\n\tconstructor(element) {\n\t\tthis.element = element;\n\t\tthis.$element = $(element);\n\n\t\tthis.$elementInner = this.$element.find(`.${CLS}-inner`);\n\t\tthis.$sliderContainer = this.$element.find(`.${CLS}-sliderContainer`);\n\t\tthis.$carouselItems = this.$element.find(`.${CLS}-item`);\n\t\tthis.$carouselSlider = this.$element.find(`.${CLS}-slider`);\n\t\tthis.$carouselSlider.slick({\n\t\t\tdots: true,\n\t\t\tdotsClass: `slick-dots`,\n\t\t\tappendArrows: this.$sliderContainer,\n\t\t\tappendDots: this.$sliderContainer,\n\t\t\tnextArrow: ``,\n\t\t\tprevArrow: ``,\n\t\t\tinfinite: false,\n\t\t\tslidesToShow: 3,\n\t\t\tslidesToScroll: 1,\n\t\t\tmobileFirst: false,\n\t\t\tcssEase: 'ease-in-out',\n\t\t\tuseTransform: true,\n\t\t\tresponsive: [\n\t\t\t\t{\n\t\t\t\t\tbreakpoint: 450,\n\t\t\t\t\tsettings: {\n\t\t\t\t\t\tcenterMode: true,\n\t\t\t\t\t\tcenterPadding: '15px',\n\t\t\t\t\t\tslidesToShow: 1,\n\t\t\t\t\t\tslidesToScroll: 1\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t});\n\n\t\tthis.$carouselSlider.on('beforeChange', (_event, slick, currentSlide, nextSlide) => {\n\t\t\t$(slick.$slides[currentSlide]).find('.card').removeClass('active');\n\t\t\t$(slick.$slides[nextSlide]).find('.card').addClass('active');\n\t\t});\n\n\t\tthis.initCompactView(this);\n\t\tthis.initFullWindowHeight(this);\n\n\t\tthis.$carouselItems.css({ opacity: 1 });\n\t\tthis.adjustArrowVisibility();\n\n\t\t$(window).resize(_.debounce(() => {\n\t\t\tthis.adjustArrowVisibility();\n\t\t}, 50, { trailing: true }));\n\n\t\tthis.initBackgroundWave(this);\n\t\tthis.initBackgroundRipple(this);\n\n\t\t// Re-render text so ellipsis displays, a known issue for visibility: hidden.\n\t\tsetTimeout(() => {\n\t\t\tthis.$carouselSlider.find('.card').each((index, element) => {\n\t\t\t\tlet $title = $(element).find('.card-title');\n\t\t\t\t$title.text($title.text());\n\t\t\t});\n\t\t}, 500);\n\t}\n\n\tadjustArrowVisibility() {\n\t\tlet $arrows = this.$element.find(`.slick-arrow`);\n\t\tif(!($arrows && $arrows.length > 0)) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet previousArrow = this.$element.find(`.slick-arrow--previous`);\n\t\tlet nextArrow = this.$element.find(`.slick-arrow--next`);\n\n\t\tpreviousArrow.css({\n\t\t\tvisibility: Math.floor(previousArrow.offset().left) < 0 ? 'hidden' : 'visible'\n\t\t});\n\n\t\tnextArrow.css({\n\t\t\tvisibility: (Math.ceil(nextArrow.offset().left + nextArrow.width()) + 1) >= this.getContainerWidth() ? 'hidden' : 'visible'\n\t\t});\n\t}\n\n\tgetContainerWidth() {\n\t\tlet $tplContent = $('.tpl-content');\n\t\tif($tplContent && $tplContent.length > 0) {\n\t\t\treturn $tplContent.width();\n\t\t}\n\t\treturn $(window).width();\n\t}\n}\n\nObject.assign(HomepageCourseCarouselBlock.prototype, compactViewMixinBlock);\nObject.assign(HomepageCourseCarouselBlock.prototype, fullWindowHeightMixinBlock);\nObject.assign(HomepageCourseCarouselBlock.prototype, backgroundWaveMixinBlock);\nObject.assign(HomepageCourseCarouselBlock.prototype, backgroundRippleMixinBlock);\n\n","export let compactViewMixin = {\n\tinitCompactView: (self, classes) => {\n\t\tlet minimumHeight = 550; // 550px was the chosen number to have compact views\n\t\tself.$element = self.$element || $(self.element);\n\t\tself.$tplScroller = self.$tplScroller || $('.tpl-scroller');\n\t\tclasses = classes || [];\n\n\t\tif(self.$tplScroller && self.$tplScroller.length > 0) {\n\t\t\tlet applyCompactView = () => {\n\t\t\t\tself.$element.attr('compact-view', 'true');\n\n\t\t\t\tif(classes.length > 0) {\n\t\t\t\t\tclasses.forEach((classItem) => {\n\t\t\t\t\t\tself.$element.find(classItem).attr('compact-view', true);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tlet unapplyCompactView = () => {\n\t\t\t\tself.$element.removeAttr('compact-view');\n\n\t\t\t\tif(classes.length > 0) {\n\t\t\t\t\tclasses.forEach((classItem) => {\n\t\t\t\t\t\tself.$element.find(classItem).removeAttr('compact-view');\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tlet isBlockExceedingHeight = () => {\n\t\t\t\treturn self.$tplScroller[0].clientHeight <= minimumHeight ||\n\t\t\t\t\t((self.$element.outerHeight() > minimumHeight) && self.$element.outerHeight() > self.$tplScroller[0].clientHeight);\n\t\t\t};\n\n\t\t\tlet toggleCompactViewAttribute = () => {\n\t\t\t\tif(isBlockExceedingHeight()) {\n\t\t\t\t\tapplyCompactView();\n\n\t\t\t\t\t// Re-render\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tif(isBlockExceedingHeight()) {\n\t\t\t\t\t\t\tapplyCompactView();\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 500);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tunapplyCompactView();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t$(window).resize(_.debounce(() => {\n\t\t\t\ttoggleCompactViewAttribute();\n\t\t\t}, 250));\n\n\t\t\ttoggleCompactViewAttribute();\n\t\t}\n\t}\n};\n"],"sourceRoot":""}