{"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/trackingItemsMixinBlock/trackingItemsMixinBlock.js","webpack:////Users/owenli/Documents/workspace/awi-wlc-fe/src/views/blocks/flipCardContainerBlock/js/flipCardContainerBlock.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","trackingItemsMixinBlock","initTrackingItems","$items","trackingId","$tracker","length","each","index","attr","activeItems","on","event","currentTarget","trackingItemId","find","item","push","trigger","CLS","FlipCardContainerBlock","_createClass","_classCallCheck","this","$flipCards","hasClass","addClass","initCompactView","Object","assign","prototype","classes","$tplScroller","applyCompactView","forEach","classItem","isBlockExceedingHeight","clientHeight","outerHeight","toggleCompactViewAttribute","removeAttr"],"mappings":"oGAAAA,EAAAC,EAAAC,GAAA,SAAAC,EAAAC,GAAAJ,EAAAK,EAAAH,EAAA,+CAAAI,IAAO,IAAIA,GACVC,qBAAsB,SAACC,GAGtB,GAFAA,EAAKC,SAAWD,EAAKC,UAAYN,EAAEK,EAAKE,UAEpCN,EAAEO,MAAMH,EAAKC,SAASG,KAAK,gBAAkBJ,EAAKC,SAASG,KAAK,cAAe,CAClF,IAAIC,EAAmB,WACtB,IAAIC,EAAaX,EAAE,eAGnBY,WAAW,WACVP,EAAKC,SAASO,KACbC,UAAS,GAAAC,OAAKf,EAAEgB,QAAQC,SAAWN,EAAWM,SAAQ,MACtDC,WAAY,aAEX,MAGJlB,EAAEgB,QAAQG,OAAOlB,EAAEmB,SAAS,WAC3BV,KACE,MAEHA,SAIAE,WAAW,WACVP,EAAKC,SAASO,KACbK,WAAY,aAEX,gEC7BNrB,EAAAC,EAAAC,GAAAF,EAAAK,EAAAH,EAAA,0CAAAsB,IAAA,IACWA,EADXxB,EAAA,KACmCyB,oCCDnCzB,EAAAC,EAAAC,GAAA,SAAAC,EAAAC,GAAAJ,EAAAK,EAAAH,EAAA,4CAAAwB,IAAO,IAAIA,GACVC,kBAAmB,SAACnB,EAAMoB,GACzBpB,EAAKC,SAAWD,EAAKC,UAAYN,EAAEK,EAAKE,SAExC,IAAImB,EAAarB,EAAKC,SAASG,KAAK,cACpC,IAAIR,EAAEO,MAAMkB,IAA8B,KAAfA,EAAmB,CAC7C,IAAIC,EAAW3B,EAAE,kCAEjB,KAAK2B,GAAYA,EAASC,OAAS,GAElC,OAGD,KAAKH,GAAUA,EAAOG,OAAS,GAE9B,OAGDH,EAAOI,KAAK,SAACC,EAAOvB,GACnB,IAAID,EAAWN,EAAEO,GACjBD,EAASyB,KAAK,wBAAyBD,GACvCxB,EAASyB,KAAK,+BAA+B,KAG9C,IAAIC,KAEJP,EAAOQ,GAAG,QAAS,SAACC,GACnB,IAAI5B,EAAWN,EAAEkC,EAAMC,eACnBC,EAAiB9B,EAASG,KAAK,kBAGrBR,EAAEoC,KAAKL,EAAa,SAACM,GAClC,OAAOA,IAASF,MAGhBJ,EAAYO,KAAKH,GACjB9B,EAASyB,KAAK,+BAA+B,GAE1CN,EAAOG,SAAWI,EAAYJ,SAChCD,EAASa,QAAQ,qBAChBlC,SAAUD,EAAKC,SACfoB,WAAYA,IAEbrB,EAAKC,SAASG,KAAK,oBAAoB,y4BC3C7C,IACMgC,EAAM,yBAMCC,4GAAsBC,CAClC,SAAAD,EAAYnC,gGAASqC,CAAAC,KAAAH,GACpBG,KAAKtC,QAAUA,EACfsC,KAAKvC,SAAWN,EAAEO,GAClBsC,KAAKC,WAAaD,KAAKvC,SAAS+B,KAAK,sBAElCQ,KAAKvC,SAASyC,SAAQ,GAAAhC,OAAI0B,EAAG,eAC/BI,KAAKC,WAAWE,SAAS,+BAElBH,KAAKvC,SAASyC,SAAQ,GAAAhC,OAAI0B,EAAG,iBACpCI,KAAKC,WAAWE,SAAS,gCAG1BH,KAAKI,gBAAgBJ,MACrBA,KAAKzC,qBAAqByC,MAC1BA,KAAKrB,kBAAkBqB,KAAMA,KAAKC,YAElCD,KAAKvC,SAAS+B,KAAI,IAAAtB,OAAK0B,EAAG,WAAU5B,KACnCK,WAAY,cAKfgC,OAAOC,OAAOT,EAAuBU,UAAW/B,yBAChD6B,OAAOC,OAAOT,EAAuBU,UAAWjD,8BAChD+C,OAAOC,OAAOT,EAAuBU,UAAW7B,+EChChD,SAAAvB,EAAAC,GAAAJ,EAAAK,EAAAH,EAAA,sBAAAuB,IAAO,IAAIA,GACV2B,gBAAiB,SAAC5C,EAAMgD,GAMvB,GAJAhD,EAAKC,SAAWD,EAAKC,UAAYN,EAAEK,EAAKE,SACxCF,EAAKiD,aAAejD,EAAKiD,cAAgBtD,EAAE,iBAC3CqD,EAAUA,MAEPhD,EAAKiD,cAAgBjD,EAAKiD,aAAa1B,OAAS,EAAG,CACrD,IAAI2B,EAAmB,WACtBlD,EAAKC,SAASyB,KAAK,eAAgB,QAEhCsB,EAAQzB,OAAS,GACnByB,EAAQG,QAAQ,SAACC,GAChBpD,EAAKC,SAAS+B,KAAKoB,GAAW1B,KAAK,gBAAgB,MAelD2B,EAAyB,WAC5B,OAAOrD,EAAKiD,aAAa,GAAGK,cA3BV,KA4BftD,EAAKC,SAASsD,cA5BC,KA4BiCvD,EAAKC,SAASsD,cAAgBvD,EAAKiD,aAAa,GAAGK,cAGnGE,EAA6B,WAC7BH,KACFH,IAGA3C,WAAW,WACP8C,KACFH,KAEC,OAvBJlD,EAAKC,SAASwD,WAAW,gBAEtBT,EAAQzB,OAAS,GACnByB,EAAQG,QAAQ,SAACC,GAChBpD,EAAKC,SAAS+B,KAAKoB,GAAWK,WAAW,oBA0B5C9D,EAAEgB,QAAQG,OAAOlB,EAAEmB,SAAS,WAC3ByC,KACE,MAEHA","file":"block-27.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 trackingItemsMixinBlock = {\n\tinitTrackingItems: (self, $items) => {\n\t\tself.$element = self.$element || $(self.element);\n\n\t\tlet trackingId = self.$element.data('trackingId');\n\t\tif(!_.isNil(trackingId) && trackingId !== '') {\n\t\t\tlet $tracker = $('[data-pg][data-tracker=\"true\"]');\n\n\t\t\tif(!($tracker && $tracker.length > 0)) {\n\t\t\t\tconsole.error('TrackingItemsMixinBlock::Error', 'Please ensure that the [data-pg][data-tracker=\"true\"] element exists');\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif(!($items && $items.length > 0)) {\n\t\t\t\tconsole.error('TrackingItemsMixinBlock::Error', 'Please supply jQuery object for the list of clickable items');\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t$items.each((index, element) => {\n\t\t\t\tlet $element = $(element);\n\t\t\t\t$element.attr('data-tracking-item-id', index);\n\t\t\t\t$element.attr('data-tracking-item-complete', false);\n\t\t\t});\n\n\t\t\tlet activeItems = [];\n\n\t\t\t$items.on('click', (event) => {\n\t\t\t\tlet $element = $(event.currentTarget);\n\t\t\t\tlet trackingItemId = $element.data('trackingItemId'); // TrackingItem of the item inside the block\n\n\t\t\t\t// If the item is active\n\t\t\t\tlet isFound = _.find(activeItems, (item) => {\n\t\t\t\t\treturn item === trackingItemId;\n\t\t\t\t});\n\t\t\t\tif(!isFound) {\n\t\t\t\t\tactiveItems.push(trackingItemId);\n\t\t\t\t\t$element.attr('data-tracking-item-complete', true); // Mark item as complete\n\n\t\t\t\t\tif($items.length === activeItems.length) {\n\t\t\t\t\t\t$tracker.trigger('tracking.complete', {\n\t\t\t\t\t\t\t$element: self.$element,\n\t\t\t\t\t\t\ttrackingId: trackingId\n\t\t\t\t\t\t});\n\t\t\t\t\t\tself.$element.data('trackingComplete', true);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n};\n","const NS = 'FlipCardContainerBlock';\nconst CLS = 'flipCardContainerBlock';\n\nimport { compactViewMixinBlock } from '../../mixins/compactViewMixinBlock/compactViewMixinBlock';\nimport { fullWindowHeightMixinBlock } from '../../mixins/fullWindowHeightMixinBlock/fullWindowHeightMixinBlock';\nimport { trackingItemsMixinBlock } from '../../mixins/trackingItemsMixinBlock/trackingItemsMixinBlock';\n\nexport class FlipCardContainerBlock {\n\tconstructor(element) {\n\t\tthis.element = element;\n\t\tthis.$element = $(element);\n\t\tthis.$flipCards = this.$element.find('.flipCardTileBlock');\n\n\t\tif(this.$element.hasClass(`${CLS}--portrait`)) {\n\t\t\tthis.$flipCards.addClass('flipCardTileBlock--portrait');\n\t\t}\n\t\telse if(this.$element.hasClass(`${CLS}--landscape`)) {\n\t\t\tthis.$flipCards.addClass('flipCardTileBlock--landscape');\n\t\t}\n\n\t\tthis.initCompactView(this);\n\t\tthis.initFullWindowHeight(this);\n\t\tthis.initTrackingItems(this, this.$flipCards);\n\n\t\tthis.$element.find(`.${CLS}-tiles`).css({\n\t\t\tvisibility: 'visible'\n\t\t});\n\t}\n}\n\nObject.assign(FlipCardContainerBlock.prototype, compactViewMixinBlock);\nObject.assign(FlipCardContainerBlock.prototype, fullWindowHeightMixinBlock);\nObject.assign(FlipCardContainerBlock.prototype, trackingItemsMixinBlock);\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":""}