{"version":3,"sources":["webpack:///./widgets/woolLabSwatchDetailModalBlock.js","webpack:///./widgets/woolLabSwatchBlock.js","webpack:///./widgets/woolLabSaveToMoodboardModalBlock.js","webpack:///../partials/widgets/woolLabSaveToMoodboardModalBlock.hbs","webpack:///../helpers/truncate.js","webpack:///../partials/widgets/woolLabSwatchDetailModalBlock.hbs"],"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","delegateYield","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","asyncGeneratorStep","_asyncToGenerator","_next","_throw","_classCallCheck","_defineProperties","key","toPrimitive","String","Number","_toPrimitive","CLS","WoolLabSwatchDetailModalBlock","el","data","undefined","this","$el","$","getSwatchDetailApi","getSupplierDetailApi","isInMySwatchesApi","username","isStudentApi","isStudent","$btnClose","find","concat","$swatchToggleBtns","$arrowBtns","$btnPrev","$btnNext","$widthMarker","$canvasContainerInner","$btnSave","$btnMoodboard","$btnGetSupplier","$detailTitle","$detailID","$detailWidthCount","$detailIcons","$detailInformation","$supplierTxt","addToMoodboardApi","createMoodboardApi","getMoodboardsApi","$nextSwatch","$prevSwatch","init","addMoodboardSwatchState","CameraControls","install","THREE","cameraControls","camera","swatchMesh","$zoom","zoomImgURL","swatchGeometry","loadingMaterial","shadowTexture","shadowGeo","shadowMat","shadowMesh","This","$wg","clock","loader","renderer","antialias","scene","SWATCH_HEIGHT","SWATCH_WIDTH","hasClass","on","_transitionOut","transitionOut","resetToggles","disableDragging","currentTarget","$prevSwatchID","getSwatch","$nextSwatchID","CANVAS_RESIZE_OBSERVER","unobserve","document","querySelector","showLoadingScreen","url","addToMySwatchesApi","fetch","cache","body","JSON","stringify","id","headers","saved","response","json","_json","_error","updateDetails","removeClass","window","awiGlobalHelper","reloadSwatchLibraryMySwatches","saveSwatch","getSupplierInfo","$btn","isSelected","addClass","requestAnimationFrame","animate","rotateAzimuthTo","DEG2RAD","magnify","src","magnifiedWidth","magnifiedHeight","setClearColor","setPixelRatio","devicePixelRatio","setSize","append","domElement","position","set","add","rotateSpeed","mouseButtons","right","ACTION","NONE","wheel","middle","enableDamping","dampingFactor","minPolarAngle","Math","PI","maxPolarAngle","light","createScene","color","load","map","transparent","opacity","rotation","x","moveTo","ResizeObserver","entries","rect","contentRect","width","height","aspect","updateProjectionMatrix","render","delta","getDelta","updated","update","enableDragging","destroy","backImageSrc","enabled","_callee","_context","truck","html","thickness","updateSavedSwatchState","$librarySwatchBlock","parent","attr","prop","show","hide","iconsHTML","benefits","icon","oriIcon","replace","replaceAll","empty","infoHTML","details","archived","supplierInfo","highlights","$highlightInfo","handleTruncate","updateSwatch","frontImageSrc","_x","_updateSwatchObject","updateSwatchObject","frontImgURL","backImgURL","sideImgURL","sideImageSrc","_callee2","_ref","_context2","loadTexture","frontImg","backImg","sideImg","res","onTextureLoaded","_ref2","all","loadAsync","textures","frontTexture","backTexture","clone","sideTexture","frontMaterial","alphaTest","backMaterial","needsUpdate","wrapS","wrapT","repeat","sideMaterial","material","observe","_this","displaySaveToMoodboardModal","modalWidget","require","Handlebars","registerPartial","precompiled","Function","precompile","template","getSaveToMoodboardModalTemplate","$modal","modalData","selectedItems","itemType","WoolLabSaveToMoodboardModalBlock","modal","css","remove","WoolLabSwatchBlock","email","$id","$title","$imageWrap","$image","$btnWrap","$btnAddSave","fetchDetailsFromApi","isLoggedIn","isSaved","getValues","handleButtons","navigator","maxTouchPoints","msMaxTouchPoints","target","displayDetails","getModalTemplate","ratio","ratioStr","ratioNum","_this2","encodeURIComponent","thumbnailImageSrc","$moodboardSearchInput","$moodboardsContainer","$moodboardContainer","$saveToMoodboardsDiv","$btnNewMoodboard","$btnDone","selectedMoodboardId","newMoodboardText","$newMoodboardDiv","$newMoodboardCreateBtn","$newMoodboardInput","showNewMoodboardPanel","createMoodboard","addSwatchToMoodboard","trigger","handleSearchInput","handleNewMoodboardInput","getMoodboards","ajax","success","updateMoodboards","_this3","$moodboards","$moodboard","_this4","event","val","trim","toUpperCase","obj","indexOf","style","display","_this5","input","moodboardHTML","swatchText","swatchCount","imageUrl","images","handleMoodboardClicked","items","moodboardId","dataType","_this6","title","$newMoodboardCreateBt","moodboardsName","inputMoodboardName","toLowerCase","each","index","text","nameArray","inputText","containsDuplicates","insertAfter","hideNewMoodboardPanel","module","exports","container","depth0","helpers","partials","helper","alias1","nullContext","alias2","hooks","helperMissing","alias3","alias4","escapeExpression","lookupProperty","propertyName","$element","limit","originalHtml","readMoreLabel","readLessLabel","readMore","readLess","ellipsis","trimmedHtml","truncate","decodeEntities","keepWhitespaces","includes","stack1","program","noop"],"mappings":"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","file":"5.js","sourcesContent":["const NS = 'WoolLabSwatchDetailModalBlock';\nconst CLS = 'woolLabSwatchDetailModalBlock';\n\nimport * as THREE from 'three';\nimport CameraControls from 'camera-controls';\nimport 'magnify';\nimport Handlebars from 'handlebars';\nimport {WoolLabSaveToMoodboardModalBlock} from './woolLabSaveToMoodboardModalBlock';\nimport { handleTruncate } from '../../helpers/truncate';\n\nexport class WoolLabSwatchDetailModalBlock {\n\n\tconstructor(el, data = {}) {\n\n\t\tthis.$el = $(el);\n\t\tthis.data = data;\n\t\tthis.getSwatchDetailApi = data.getSwatchDetailApi;\n\t\tthis.getSupplierDetailApi = data.getSupplierDetailApi;\n\t\tthis.isInMySwatchesApi = data.isInMySwatchesApi;\n\n\t\tthis.username = this.$el.data('username');\n\t\tthis.isStudentApi = data.isStudent;\n\t\tthis.$btnClose = this.$el.find(`.${CLS}-canvasContainer-btn-close`);\n\t\tthis.$swatchToggleBtns = this.$el.find(`.${CLS}-swatch-button`);\n\t\tthis.$arrowBtns = this.$el.find(`.${CLS}-arrow`);\n\t\tthis.$btnPrev = this.$el.find(`.${CLS}-arrow.prev`);\n\t\tthis.$btnNext = this.$el.find(`.${CLS}-arrow.next`);\n\t\tthis.$widthMarker = this.$el.find(`.${CLS}-widthMarker`);\n\n\t\tthis.$canvasContainerInner = this.$el.find(`.${CLS}-canvasContainer-inner`);\n\t\tthis.$btnSave = this.$el.find(`.${CLS}-detailContainer-btnSave`);\n\t\tthis.$btnMoodboard = this.$el.find(`.${CLS}-detailContainer-btnMoodboard`);\n\t\tthis.$btnGetSupplier = this.$el.find(`.${CLS}-detailContainer-btnSupplier`);\n\n\t\tthis.$detailTitle = this.$el.find(`.${CLS}-detailContainer-title`);\n\t\tthis.$detailID = this.$el.find(`.${CLS}-detailContainer-id`);\n\t\tthis.$detailWidthCount = this.$el.find(`.${CLS}-widthMarker-count`);\n\t\tthis.$detailIcons = this.$el.find(`.${CLS}-detailContainer-icons`);\n\t\tthis.$detailInformation = this.$el.find(`.${CLS}-detailContainer-information`);\n\t\tthis.$supplierTxt = this.$el.find(`.${CLS}-detailContainer-txtSupplier`);\n\n\t\tthis.addToMoodboardApi = data.addToMoodboardApi;\n\t\tthis.createMoodboardApi = data.createMoodboardApi;\n\t\tthis.getMoodboardsApi = data.getMoodboardsApi;\n\n\t\tthis.$nextSwatch = '';\n\t\tthis.$prevSwatch = '';\n\n\t\tthis.init();\n\t\tthis.addMoodboardSwatchState();\n\t}\n\n\tinit() {\n\t\tCameraControls.install( {THREE: THREE} );\n\t\tconst This = this;\n\t\tlet $wg = $(this.$el);\n\n\t\tconst clock = new THREE.Clock();\n\t\tconst loader = new THREE.TextureLoader();\n\n\t\tlet renderer = new THREE.WebGLRenderer({ antialias: true });\n\t\tlet scene = new THREE.Scene();\n\t\tlet cameraControls;\n\t\tlet camera;\n\t\tlet swatchMesh;\n\n\t\tvar SWATCH_HEIGHT = 7;\n\t\tvar SWATCH_WIDTH = 7;\n\n\t\tif(this.$el.hasClass( \"portrait\" )){\n\t\t\tSWATCH_WIDTH = 7 / this.$el.data( \"ratio\" );\n\t\t}\n\t\tif(this.$el.hasClass( \"landscape\" )){\n\t\t\tSWATCH_HEIGHT = 7 / this.$el.data( \"ratio\" );\n\n\t\t}\n\n\t\tconst SWATCH_SIZE = 7;\n\t\tconst SWATCH_DEPTH = 0.2;\n\t\tconst DESKTOP_CAMERA_Y = 0;\n\t\tconst DESKTOP_CAMERA_Z = 20;\n\t\tconst CAMERA_TRANSITION_X = 15;\n\n\t\tlet $zoom;\n\t\tlet zoomImgURL;\n\n\t\thandleButtons();\n\n\t\tcreateScene();\n        createSwatch();\n        createShadow();\n\n\t\tanimate();\n\n\t\tcameraControls.moveTo( CAMERA_TRANSITION_X, 0, 0, false );\n\t\tcameraControls.rotateAzimuthTo( 0, false );\n\n\t\tshowLoadingScreen();\n\t\tdisableDragging();\n\t\t// updateSwatch(This.data);\n\t\t// updateDetails(This.data);\n\t\tgetSwatch(This.data.id);\n\n\n\t\tconst CANVAS_RESIZE_OBSERVER = new ResizeObserver(function(entries) {\n\t\t\tlet rect = entries[0].contentRect;\n\t\t\tlet width = rect.width;\n\t\t\tlet height = rect.height;\n\n\t\t\tcamera.aspect = width / height;\n\t\t\trenderer.setSize(width, height);\n\t\t\tcamera.updateProjectionMatrix();\n\t\t\trender();\n\t\t});\n\t\tCANVAS_RESIZE_OBSERVER.observe(document.querySelector(`.${CLS}-canvasContainer-inner`));\n\n\n\t\tfunction createScene() {\n\n\t\t\trenderer.setClearColor(0xffffff);\n\t\t\trenderer.setPixelRatio(window.devicePixelRatio);\n\t\t\trenderer.setSize(640, 640);\n\t\t\tThis.$el.find(`.${CLS}-threejsContent`).append(renderer.domElement);\n\n\t\t\t// Camera\n\t\t\tcamera = new THREE.PerspectiveCamera(35, 1, 1, 1000);\n\t\t\tcamera.position.set(0, DESKTOP_CAMERA_Y, DESKTOP_CAMERA_Z);\n\t\t\tscene.add(camera);\n\n\n\t\t\t// Orbital Controls\n\t\t\tcameraControls = new CameraControls( camera, renderer.domElement );\n\t\t\tcameraControls.rotateSpeed = 1;\n\t\t\tcameraControls.mouseButtons.right = CameraControls.ACTION.NONE;\n\t\t\tcameraControls.mouseButtons.wheel = CameraControls.ACTION.NONE;\n\t\t\tcameraControls.mouseButtons.middle = CameraControls.ACTION.NONE;\n\t\t\tcameraControls.enableDamping = true;\n\t\t\tcameraControls.dampingFactor = 0.1;\n\t\t\t// limits rotation on the x-axis\n\t\t\tcameraControls.minPolarAngle = Math.PI/2;\n\t\t\tcameraControls.maxPolarAngle = Math.PI/2;\n\n\n\t\t\tscene.add(new THREE.AmbientLight(0x666666));\n\t\t\tlet light = new THREE.PointLight(0xffffff, 0.65);\n\t\t\tcamera.add(light);\n\t\t}\n\n\t\tfunction createSwatch() {\n\t\t\tlet swatchGeometry = new THREE.BoxGeometry(SWATCH_WIDTH, SWATCH_HEIGHT, SWATCH_DEPTH);\n\t\t\tlet loadingMaterial = new THREE.MeshBasicMaterial({ color: 0xdddddd });\n\t\t\tswatchMesh = new THREE.Mesh(swatchGeometry, loadingMaterial);\n\n\t\t\tscene.add(swatchMesh);\n\t\t}\n\n\t\tfunction createShadow() {\n\t\t\tconst shadowTexture = loader.load('https://threejs.org/manual/examples/resources/images/roundshadow.png');\n\t\t\tconst shadowGeo = new THREE.PlaneGeometry(8, 4);\n\t\t\tconst shadowMat = new THREE.MeshBasicMaterial({\n\t\t\t\tmap: shadowTexture,\n\t\t\t\ttransparent: true,\n\t\t\t\topacity: 0.25,\n\t\t\t});\n\n\t\t\tlet shadowMesh = new THREE.Mesh(shadowGeo, shadowMat);\n\n\t\t\tshadowMesh.rotation.x = Math.PI * -.5;\n\t\t\tshadowMesh.position.set(0, -4.49, 0);\n\t\t\tscene.add(shadowMesh);\n\t\t}\n\n\t\tfunction animate() {\n\n\t\t\tconst delta = clock.getDelta();\n\t\t\tconst updated = cameraControls.update( delta );\n\n\t\t\trequestAnimationFrame(animate);\n\n\t\t\t// only render when camera is moving\n\t\t\tif ( updated ) {\n\t\t\t\trender();\n\t\t\t}\n\t\t}\n\n\t\tfunction render() {\n\t\t\trenderer.render(scene, camera);\n\t\t}\n\n\t\tfunction resetToggles() {\n\t\t\tThis.$widthMarker.removeClass('active');\n\t\t\tThis.$swatchToggleBtns.removeClass('selected');\n\n\t\t\tenableDragging();\n\n\t\t\tif ($zoom) {\n\t\t\t\t$zoom.destroy();\n\t\t\t}\n\t\t}\n\n\t\tfunction enableDragging() {\n\t\t\tif (This.data.backImageSrc){\n\t\t\t\tcameraControls.enabled = true;\n\t\t\t\tThis.$canvasContainerInner.addClass('canDrag');\n\t\t\t}\n\t\t}\n\t\tfunction disableDragging() {\n\t\t\tcameraControls.enabled = false;\n\t\t\tThis.$canvasContainerInner.removeClass('canDrag');\n\t\t}\n\n\t\tasync function transitionOut() {\n\t\t\treturn cameraControls.truck(  CAMERA_TRANSITION_X,  0, true);\n\t\t}\n\n\t\tfunction showLoadingScreen() {\n\t\t\t$wg.addClass('loading');\n\t\t}\n\n\t\tfunction updateDetails(data) {\n\n\t\t\tThis.$detailTitle.html(data.name);\n\t\t\tThis.$detailID.html(data.id);\n\t\t\tThis.$detailWidthCount.html(data.thickness + \"mm\");\n\n\t\t\tupdateSavedSwatchState();\n\n\t\t\tlet $swatchLibrary = $('.woolLabSwatchLibrarySearchBlock-swatches');\n\t\t\tlet $librarySwatchBlock = $swatchLibrary.find(`[data-id=\"${data.id}\"]`).parent();\n\t\t\tThis.$prevSwatchID = $librarySwatchBlock.prev().find('.woolLabSwatchBlock').attr('data-id');\n\t\t\tThis.$nextSwatchID = $librarySwatchBlock.next().find('.woolLabSwatchBlock').attr('data-id');\n\n\t\t\tThis.$btnPrev.prop(\"disabled\", !This.$prevSwatchID ? !0 : 0);\n\t\t\tThis.$btnNext.prop(\"disabled\", !This.$nextSwatchID ? !0 : 0);\n\n\t\t\tif (!This.$prevSwatchID && !This.$nextSwatchID){\n\t\t\t\tThis.$btnPrev.hide();\n\t\t\t\tThis.$btnNext.hide();\n\t\t\t}\n\t\t\telse {\n\t\t\t\tThis.$btnPrev.show();\n\t\t\t\tThis.$btnNext.show();\n\t\t\t}\n\n\t\t\tlet iconsHTML = \"\";\n\t\t\tdata.benefits.map(icon => {\n\t\t\t\tlet oriIcon = icon;\n\t\t\t\ticon = icon.replace('& ',\"\");\n\t\t\t\ticon = icon.replace('%',\"\");\n\t\t\t\ticon = icon.replaceAll(',',\"\");\n\t\t\t\ticon = icon.replace('e/R',\"eR\");\n\t\t\t\ticon = icon.replace(/ /g,\"_\");\n\t\t\t\ticonsHTML += `<div class=\"${CLS}-detailContainer-icon iconTooltip\"><p><img src=\"/globalassets/swatches/benefits/${icon}.png\"></p><span class=\"iconTooltiptext\">${oriIcon}</span></div>`;\n\t\t\t});\n\t\t\tThis.$detailIcons.empty();\n\t\t\tThis.$detailIcons.html(iconsHTML);\n\n\t\t\tlet infoHTML = \"\";\n\t\t\tdata.details.map(i => {\n\t\t\t\tinfoHTML += `<div class=\"${CLS}-detailContainer-information-item\">\n\t\t\t\t\t\t\t\t<h4 class=\"${CLS}-detailContainer-information-label\">${i.name}</h4>\n\t\t\t\t\t\t\t\t<p class=\"${CLS}-detailContainer-information-measurement\">${i.value}</p>\n\t\t\t\t\t\t\t</div>`;\n\t\t\t});\n\t\t\tif(This.isStudent === false){\n\t\t\t\tif( data.archived === false){\n\t\t\t\t\tif (data.supplierInfo){\n\t\t\t\t\t\tThis.$supplierTxt.hide();\n\t\t\t\t\t\tdata.supplierInfo.map(i => {\n\t\t\t\t\t\t\tinfoHTML += `<div class=\"${CLS}-detailContainer-information-item\">\n\t\t\t\t\t\t\t\t\t\t\t<h4 class=\"${CLS}-detailContainer-information-label\">${i.name}</h4>\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"${CLS}-detailContainer-information-measurement\">${i.value}</p>\n\t\t\t\t\t\t\t\t\t\t</div>`;\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tThis.$supplierTxt.show();\n\t\t\t\t\t\tinfoHTML += `<div class=\"${CLS}-detailContainer-information-item\">\n\t\t\t\t\t\t\t\t\t\t\t<h4 class=\"${CLS}-detailContainer-information-label\">supplier</h4>\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"${CLS}-detailContainer-information-measurement\">******</p>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"${CLS}-detailContainer-information-item\">\n\t\t\t\t\t\t\t\t\t\t\t<h4 class=\"${CLS}-detailContainer-information-label\">supplier contact</h4>\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"${CLS}-detailContainer-information-measurement\">******</p>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"${CLS}-detailContainer-information-item\">\n\t\t\t\t\t\t\t\t\t\t\t<h4 class=\"${CLS}-detailContainer-information-label\">supplier email</h4>\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"${CLS}-detailContainer-information-measurement\">******</p>\n\t\t\t\t\t\t\t\t\t\t</div>`;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif(data.highlights)\n\t\t\t{\n\t\t\t\tinfoHTML += `<div class=\"${CLS}-detailContainer-highlights\">\n\t\t\t\t\t\t\t\t<h4 class=\"${CLS}-detailContainer-information-label\">highlights</h4>\n\t\t\t\t\t\t\t\t<p class=\"${CLS}-detailContainer-information-measurement\">${data.highlights}</p>\n\t\t\t\t\t\t\t</div>`;\n\t\t\t}\n\n\n\t\t\tThis.$detailInformation.empty();\n\t\t\tThis.$detailInformation.html(infoHTML);\n\n\t\t\tlet $highlightInfo = This.$detailInformation.find(`.${CLS}-detailContainer-highlights > p`);\n\t\t\thandleTruncate($highlightInfo, 110);\n\t\t}\n\n\t\tfunction updateSavedSwatchState(){\n\t\t\tThis.$btnSave.html(This.data.saved ? 'Saved' :'My Swatches');\n\t\t\tThis.$btnSave.prop(\"disabled\", This.data.saved ? !0 : 0);\n\t\t}\n\n\t\tfunction updateSwatch(data) {\n\t\t\tif (data.frontImageSrc) {\n\t\t\t\tupdateSwatchObject({\n\t\t\t\t\tfrontImgURL: data.frontImageSrc,\n\t\t\t\t\tbackImgURL: data.backImageSrc ? data.backImageSrc : null,\n\t\t\t\t\tsideImgURL: data.sideImageSrc ? data.sideImageSrc : null\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (!data.backImageSrc){\n\t\t\t\t$(`.${CLS}-swatch-button-rotate`).hide()\n\t\t\t}\n\t\t\telse {\n\t\t\t\t$(`.${CLS}-swatch-button-rotate`).show()\n\t\t\t}\n\t\t\tif (!data.thickness){\n\t\t\t\t$(`.${CLS}-swatch-button-thickness`).hide()\n\t\t\t}\n\t\t\telse {\n\t\t\t\t$(`.${CLS}-swatch-button-thickness`).show()\n\t\t\t}\n\n\t\t}\n\n\t\tasync function updateSwatchObject({ frontImgURL, backImgURL, sideImgURL }) {\n\t\t\tif (frontImgURL) {\n\t\t\t\tzoomImgURL = frontImgURL;\n\n\t\t\t\tloadTexture({\n\t\t\t\t\tfrontImg: frontImgURL,\n\t\t\t\t\tbackImg: backImgURL ? backImgURL : null,\n\t\t\t\t\tsideImg: sideImgURL ? sideImgURL : null\n\t\t\t\t}).then(res => onTextureLoaded(res))\n\t\t\t\t.then( () => {\n\t\t\t\t\tcameraControls.moveTo( CAMERA_TRANSITION_X, 0, 0, false );\n\t\t\t\t\tcameraControls.rotateAzimuthTo( 0, false );\n\t\t\t\t\tcameraControls.reset( true );\n\t\t\t\t\t$wg.removeClass('loading');\n\t\t\t\t\tenableDragging();\n\t\t\t\t})\n\t\t\t\t.catch(res => {});\n\t\t\t}\n\t\t}\n\n\t\tfunction loadTexture({frontImg, backImg, sideImg}) {\n\t\t\tconst textures = Promise.all([\n\t\t\t\tloader.loadAsync(frontImg),\n\t\t\t\tbackImg ? loader.loadAsync(backImg) : null,\n\t\t\t\tsideImg ? loader.loadAsync(sideImg) : null]\n\t\t\t);\n\n\t\t\treturn textures;\n\t\t}\n\n\t\tfunction onTextureLoaded(textures) {\n\n\t\t\tlet frontTexture = textures[0];\n\t\t\tlet backTexture = textures[1] !== null ? textures[1] :frontTexture.clone();\n\t\t\tlet sideTexture = textures[2] !== null ? textures[2] :frontTexture.clone();\n\n\n\t\t\tlet frontMaterial = new THREE.MeshLambertMaterial({\n\t\t\t\tmap: frontTexture, transparent: true, alphaTest: 0.3\n\t\t\t});\n\n\t\t\tlet backMaterial = new THREE.MeshLambertMaterial({\n\t\t\t\tmap: backTexture, transparent: true, alphaTest: 0.3\n\t\t\t});\n\t\t\tbackMaterial.map.needsUpdate = true;\n\t\t\tbackTexture.wrapS = THREE.RepeatWrapping;\n\t\t\tbackTexture.wrapT = THREE.RepeatWrapping;\n\t\t\tbackTexture.repeat.set(-1, 1);\n\n\n\t\t\tlet sideMaterial = new THREE.MeshLambertMaterial({\n\t\t\t\tmap: sideTexture, transparent: true, alphaTest: 0.3\n\t\t\t});\n\t\t\tsideMaterial.map.needsUpdate = true;\n\t\t\tsideTexture.wrapS = THREE.RepeatWrapping;\n\t\t\tsideTexture.wrapT = THREE.RepeatWrapping;\n\t\t\tsideTexture.repeat.set(-SWATCH_WIDTH / SWATCH_SIZE, 1);\n\n\n\t\t\tswatchMesh.material =\n\t\t\t\t[\n\t\t\t\t\tsideMaterial, // +x\n\t\t\t\t\tsideMaterial, // -x\n\t\t\t\t\tfrontMaterial, // +y\n\t\t\t\t\tfrontMaterial, // -y\n\t\t\t\t\tfrontMaterial, // +z\n\t\t\t\t\tbackMaterial // -z\n\t\t\t\t];\n\t\t}\n\n\t\tfunction getSwatch(id) {\n\t\t\tshowLoadingScreen();\n\n\t\t\t// We want to get swatch detail first then supplier info, this ensures that when updateDetails, we have the info to fill the details\n\t\t\tfetch(`${This.getSwatchDetailApi}?swatchId=${id}`, {\n\t\t\t\tmethod: 'GET',\n\t\t\t}).then((response) => {\n\t\t\t\treturn response.json();\n\t\t\t}).then((_json) => {\n\t\t\t\tThis.data.highlights = null;\n\t\t\t\tThis.data = {\n\t\t\t\t\t...This.data,\n\t\t\t\t\t..._json\n\t\t\t\t};\n\t\t\t\tThis.data.supplierInfo = null;\n\t\t\t\treturn fetch(`${This.getSupplierDetailApi}?swatchId=${id}`, {\n\t\t\t\t\tmethod: 'GET',\n\t\t\t\t});\n\t\t\t}).then((response) => {\n\t\t\t\treturn response.json();\n\t\t\t}).then((_json) => {\n\t\t\t\tThis.data = {\n\t\t\t\t\t...This.data,\n\t\t\t\t\t..._json\n\t\t\t\t};\n\t\t\t}).catch((_error) => {\n\t\t\t}).finally(() => {\n\t\t\t\tif (This.data){\n\t\t\t\t\tupdateDetails(This.data);\n\t\t\t\t\tupdateSwatch(This.data);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tfetch(`${This.isInMySwatchesApi}?swatchId=${id}`, {\n\t\t\t\tmethod: 'GET',\n\t\t\t}).then((response) => {\n\t\t\t\treturn response.json();\n\t\t\t}).then((_json) => {\n\t\t\t\tThis.data.saved = _json;\n\t\t\t\tupdateSavedSwatchState();\n\t\t\t}).catch((_error) => { });\n\n\t\t\tfetch(`${This.isStudentApi}`, {\n\t\t\t\tmethod: 'GET',\n\t\t\t}).then((response) => {\n\t\t\t\treturn response.json();\n\t\t\t}).then((_json) => {\n\t\t\t\tThis.isStudent = _json;\n\t\t\t}).catch((_error) => { });\n\t\t};\n\n\t\tfunction saveSwatch() {\n\t\t\tshowLoadingScreen();\n\n\t\t\tlet url = `${This.data.addToMySwatchesApi}`;\n\t\t\tfetch(url, {\n\t\t\t\tcache: 'no-cache',\n\t\t\t\tbody: JSON.stringify([This.data.id]),\n\t\t\t\theaders: {\n\t\t\t\t\t'Content-Type': 'application/json'\n\t\t\t\t},\n\t\t\t\tmethod: 'POST',\n\t\t\t}).then(() => {\n\t\t\t\tThis.data.saved = true;\n\t\t\t\treturn fetch(`${This.getSupplierDetailApi}?swatchId=${This.data.id}`, {\n\t\t\t\t\tmethod: 'GET',\n\t\t\t\t});\n\t\t\t}).then((response) => {\n\t\t\t\treturn response.json();\n\t\t\t}).then((_json) => {\n\t\t\t\tThis.data = {\n\t\t\t\t\t...This.data,\n\t\t\t\t\t..._json\n\t\t\t\t};\n\t\t\t}).catch((_error) => {\n\t\t\t\tconsole.log(_error);\n\t\t\t}).finally(() => {\n\t\t\t\tupdateDetails(This.data);\n\t\t\t\t$wg.removeClass('loading');\n\n\t\t\t\t// Global function to refresh MySwatches in Swatch Library\n\t\t\t\tif (window.awiGlobalHelper && window.awiGlobalHelper.reloadSwatchLibraryMySwatches) {\n\t\t\t\t\twindow.awiGlobalHelper.reloadSwatchLibraryMySwatches();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfunction handleButtons() {\n\n\t\t\tThis.$arrowBtns.on('click', (e) => {\n\t\t\t    transitionOut();\n\t\t\t    resetToggles();\n\t\t\t    disableDragging();\n\n\t\t\t    if ($(e.currentTarget).hasClass('prev')) {\n\t\t\t\t\tif (This.$prevSwatchID) {\n\t\t\t\t\t\tgetSwatch(This.$prevSwatchID);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif(This.$nextSwatchID) {\n\t\t\t\t\t\tgetSwatch(This.$nextSwatchID);\n\t\t\t\t\t}\n\t\t\t    }\n\t\t\t});\n\n\t\t\tThis.$btnClose.on('click', () => {\n\t\t\t\tCANVAS_RESIZE_OBSERVER.unobserve(document.querySelector(`.${CLS}-canvasContainer-inner`));\n\t\t\t    resetToggles();\n\t\t\t});\n\n\t\t\tThis.$btnSave.on('click', () => {\n\t\t\t\tsaveSwatch();\n\t\t\t});\n\n\t\t\tThis.$btnGetSupplier.on('click', () => {\n\t\t\t\tgetSupplierInfo();\n\t\t\t});\n\n\t\t\tThis.$swatchToggleBtns.on('click', (e) => {\n\n\t\t\t\tlet $btn = $(e.currentTarget);\n\t\t\t\tlet isSelected = $btn.hasClass('selected');\n\n\t\t\t\tcameraControls.reset( true );\n\t\t\t\tresetToggles();\n\n\t\t\t\tif (!isSelected) {\n\n\t\t\t\t\tdisableDragging();\n\t\t\t\t\t$btn.addClass('selected');\n\t\t\t\t\trequestAnimationFrame(animate);\n\n\t\t\t\t\tif ($btn.hasClass(`${CLS}-swatch-button-thickness`)) {\n\t\t\t\t\t\tcameraControls.rotateAzimuthTo( 83 * THREE.MathUtils.DEG2RAD, true );\n\t\t\t\t\t\tThis.$widthMarker.addClass('active');\n\t\t\t\t\t} else if ($btn.hasClass(`${CLS}-swatch-button-rotate`)) {\n\t\t\t\t\t\tcameraControls.rotateAzimuthTo( 180 * THREE.MathUtils.DEG2RAD, true );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcameraControls.rotateAzimuthTo( 0, true );\n\n\t\t\t\t\t\t// add zoom effect\n\t\t\t\t\t\tif (zoomImgURL) {\n\t\t\t\t\t\t    $zoom = $(`.${CLS}-zoom`).magnify({\n\t\t\t\t\t\t\t\tsrc: zoomImgURL,\n\t\t\t\t\t\t\t\tmagnifiedWidth: 1024,\n\t\t\t\t\t\t\t\tmagnifiedHeight: 1024,\n\t\t\t\t\t\t    });\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\taddMoodboardSwatchState(){\n\t\tthis.$btnMoodboard.on('click', () => {\n\t\t\tthis.displaySaveToMoodboardModal();\n\t\t});\n\t}\n\n\tgetSaveToMoodboardModalTemplate() {\n        let modalWidget = require('../../partials/widgets/woolLabSaveToMoodboardModalBlock.hbs');\n\n\t\tHandlebars.registerPartial('woolLabSaveToMoodboardModalBlock', modalWidget);\n\n\t\tlet template = `\n\t\t\t{{> woolLabSaveToMoodboardModalBlock\n\t\t\t\twg=\"woolLabSaveToMoodboardModalBlock\"\n\t\t\t\tns=\"WoolLabSaveToMoodboardModalBlock\"\n\t\t\t}}\n\t\t`;\n\n\t\tlet precompiled = new Function('return ' + Handlebars.precompile(template))();\n\t\treturn Handlebars.template(precompiled);\n\t}\n\n\tdisplaySaveToMoodboardModal() {\n\t\t$(document.body).append(this.getSaveToMoodboardModalTemplate()(this.data));\n\t\tlet $modal = $('#woolLabSaveToMoodboardModalBlock');\n\n\t\tlet modalData = {};\n\t\tmodalData.getMoodboardsApi = this.getMoodboardsApi;\n\t\tmodalData.addToMoodboardApi = this.addToMoodboardApi;\n\t\tmodalData.createMoodboardApi = this.createMoodboardApi;\n\t\tmodalData.selectedItems = [this.data.id];\n\t\tmodalData.itemType ='swatch';\n\n\t\tnew WoolLabSaveToMoodboardModalBlock($modal[0], modalData);\n\n\t\t$modal.modal('show');\n\t\t$('body').css('padding-right', '0');\n\t\t$modal.css('padding', '0');\n\n\t\t$modal.on('shown.bs.modal', () => {\n\t\t\t// need to manually add \"in\" class so backdrop can display properly due to IDS override\n\t\t\t$('.modal-backdrop').addClass('in');\n\t\t});\n\n\t\t$modal.on('hidden.bs.modal', () => {\n\t\t\t$modal.remove();\n\t\t\t$('body').css('padding-right', '');\n\t\t});\n\t}\n}\n","import {WoolLabSwatchDetailModalBlock} from './woolLabSwatchDetailModalBlock';\n\nconst NS = 'WoolLabSwatchBlock';\nconst CLS = 'woolLabSwatchBlock';\nconst CLS_SAVED = 'woolLabSwatchBlock--saved';\nimport Handlebars from 'handlebars';\n\nexport class WoolLabSwatchBlock {\n\tconstructor(el, data = {}) {\n\t\tthis.el = el;\n\t\tthis.$el = $(el);\n\t\tthis.id = this.$el.data('id');\n\t\tthis.email = this.$el.data('email');\n\n\t\tthis.$id = this.$el.find(`.${CLS}-content-id`);\n\t\tthis.$title = this.$el.find(`.${CLS}-content-title`);\n\t\tthis.$imageWrap = this.$el.find(`.${CLS}-imageWrap`);\n\t\tthis.$image = this.$el.find(`.${CLS}-image`);\n\t\tthis.$btnWrap = this.$el.find(`.${CLS}-btnWrap`);\n\t\tthis.$btnAddSave = this.$el.find(`.${CLS}-btnAddSave`);\n\t\tthis.data = data;\n\t\tthis.data.getSwatchDetailApi = this.$el.data('getSwatchDetailApi');\n\t\tthis.data.getSupplierDetailApi = this.$el.data('getSupplierDetailApi');\n        this.data.isInMySwatchesApi = this.$el.data('isInMySwatchesApi');\n\t\tthis.fetchDetailsFromApi = this.$el.data('fetchDetailsFromApi');\n\t\tthis.data.addToMySwatchesApi = this.$el.data('addToMySwatchesApi');\n\t\tthis.data.getMoodboardsApi = this.$el.data('getMoodboardsApi');\n\t\tthis.data.createMoodboardApi = this.$el.data('createMoodboardApi');\n\t\tthis.data.addToMoodboardApi = this.$el.data('addToMoodboardApi');\n\t\tthis.data.isLoggedIn = this.$el.data('isLoggedIn');\n\t\tthis.data.isStudent = this.$el.data('isstudent');\n\t\tthis.data.id = this.id;\n\n\t\tif (this.data.isLoggedIn === undefined) {\n\t\t\tthis.data.isLoggedIn = true;\n\t\t}\n\n\t\tif (this.isSaved) {\n\t\t\tthis.$el.addClass(CLS_SAVED);\n\t\t}\n\n\t\tif (this.fetchDetailsFromApi && this.data.getSwatchDetailApi && this.id) {\n\t\t\tthis.getValues();\n\t\t}\n\t\tthis.handleButtons();\n\t}\n\n\thandleButtons() {\n\t\tthis.$el.on('click', (e) => {\n\t\t\tif (('ontouchstart' in window) || (navigator.maxTouchPoints > 0) || (navigator.msMaxTouchPoints > 0)) {\n\t\t\t\t// mobile menu active\n\t\t\t\tif (this.$el.hasClass('touchActive')) {\n\t\t\t\t\tif ($(e.target).hasClass(`${CLS}-btnMobileDetail`)) {\n\t\t\t\t\t\tthis.displayDetails();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$(`.${CLS}`).addClass('touchDevice');\n\t\t\t\t$(`.${CLS}`).removeClass('touchActive');\n\t\t\t\t$(e.currentTarget).addClass('touchActive');\n\t\t\t} else {\n\t\t\t\tif (!$(e.target).hasClass(`${CLS}-btnAddSave`)) {\n\t\t\t\t\tthis.displayDetails();\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tthis.$el.on('mouseenter', (e) => {\n\t\t\t$(e.currentTarget).addClass('touchActive');\n\t\t});\n\n\t\tthis.$el.on('mouseleave', (e) => {\n\t\t\t$(e.currentTarget).removeClass('touchActive');\n\t\t});\n\t}\n\n\tdisplayDetails() {\n\t\t$(document.body).append(this.getModalTemplate()(this.data));\n\t\tlet $modal = $(`#woolLabSwatchDetailModalBlock--${this.data.id}`);\n\t\tif(this.$image.prop('naturalWidth') < this.$image.prop('naturalHeight')){\n\t\t\t$modal.addClass(\"portrait\");\n\t\t\tvar ratio = this.$image.prop('naturalHeight')/this.$image.prop('naturalWidth');\n\t\t\tvar ratioStr = String(ratio).slice(0, 3);\n\t\t\tvar ratioNum = Number(ratioStr);\n\t\t}\n\t\tif(this.$image.prop('naturalWidth') > this.$image.prop('naturalHeight')){\n\t\t\t$modal.addClass(\"landscape\");\n\t\t\tvar ratio = this.$image.prop('naturalWidth')/this.$image.prop('naturalHeight');\n\t\t\tvar ratioStr = String(ratio).slice(0, 3);\n\t\t\tvar ratioNum = Number(ratioStr);\n\t\t}\n\t\t$modal.attr('data-ratio', ratioNum);\n\t\tif(!this.data.isLoggedIn){\n            $(`.woolLabSwatchDetailModalBlock-detailContainer-cta`).hide();\n        }\n\t\telse{\n\t\t\t$(`.woolLabSwatchDetailModalBlock-detailContainer-cta`).show();\n\t\t}\n\t\tnew WoolLabSwatchDetailModalBlock($modal[0], this.data);\n\n\t\t$modal.modal('show');\n\t\t$('body').css('padding-right', '0');\n\t\t$modal.css('padding', '0');\n\n\t\t$modal.on('shown.bs.modal', () => {\n\t\t\t// need to manually add \"in\" class so backdrop can display properly due to IDS override\n\t\t\t$('.modal-backdrop').addClass('in');\n\t\t});\n\n\t\t$modal.on('hidden.bs.modal', () => {\n\t\t\t$modal.remove();\n\t\t});\n\t}\n\n\tgetModalTemplate() {\n        let modalWidget = require('../../partials/widgets/woolLabSwatchDetailModalBlock.hbs');\n\n\t\tHandlebars.registerPartial('woolLabSwatchDetailModalBlock', modalWidget);\n\n\t\tlet template = `\n\t\t\t{{> woolLabSwatchDetailModalBlock\n\t\t\t\twg=\"woolLabSwatchDetailModalBlock\"\n\t\t\t\tns=\"WoolLabSwatchDetailModalBlock\"\n\t\t\t}}\n\t\t`;\n\n\t\tlet precompiled = new Function('return ' + Handlebars.precompile(template))();\n\t\treturn Handlebars.template(precompiled);\n\t}\n\n\tgetValues() {\n\t\tfetch(`${this.data.getSwatchDetailApi}?swatchId=${encodeURIComponent(this.id)}`).then((response) => {\n\t\t\treturn response.json();\n\t\t}).then((json) => {\n\t\t\tthis.data = {\n\t\t\t\t...this.data,\n\t\t\t\t...json,\n\t\t\t};\n\t\t\tthis.$title.html(this.data.name);\n\t\t\tthis.$id.html(this.data.id);\n\t\t\tthis.$image.attr('src', this.data.thumbnailImageSrc).attr('alt', this.data.name);\n\t\t});\n\t}\n}\n\n\n","const NS = 'WoolLabSaveToMoodboardModalBlock';\nconst CLS = 'woolLabSaveToMoodboardModalBlock';\n\nexport class WoolLabSaveToMoodboardModalBlock {\n\tconstructor(el, data) {\n\t\tthis.$el = $(el);\n\t\tthis.getMoodboardsApi = data.getMoodboardsApi;\n\t\tthis.addToMoodboardApi = data.addToMoodboardApi;\n\t\tthis.createMoodboardApi = data.createMoodboardApi;\n\t\tthis.selectedItems = data.selectedItems;\n\t\tthis.itemType = data.itemType;\n\n\t\tthis.$moodboardSearchInput = this.$el.find(`.${CLS}-saveToMoodboards-searchInput`);\n\t\tthis.$moodboardsContainer = this.$el.find(`.${CLS}-moodboards`);\n\t\tthis.$moodboardContainer = this.$el.find(`.${CLS}-moodboard`);\n\t\tthis.$saveToMoodboardsDiv = this.$el.find(`.${CLS}-saveToMoodboards`);\n\t\tthis.$btnNewMoodboard = this.$el.find(`.${CLS}-newMoodboardBtn`);\n\t\tthis.$btnDone = this.$el.find(`.${CLS}-doneBtn`);\n\t\tthis.selectedMoodboardId = '';\n\n\t\tthis.newMoodboardText = '';\n\t\tthis.$newMoodboardDiv = this.$el.find(`.${CLS}-newMoodboard`);\n\t\tthis.$newMoodboardCreateBtn = this.$el.find(`.${CLS}-createBtn`);\n\t\tthis.$newMoodboardInput = this.$el.find(`.${CLS}-newMoodboard-textInput`);\n\n\t\tthis.$btnNewMoodboard.on('click', () => {\n\t\t\tthis.showNewMoodboardPanel();\n\t\t});\n\n\t\tthis.$newMoodboardCreateBtn.on('click', () => {\n\t\t\tif (this.newMoodboardText !== '') {\n\t\t\t\tthis.createMoodboard();\n\t\t\t}\n\t\t});\n\n\t\tthis.$btnDone.on('click', () => {\n\t\t\tif (this.selectedMoodboardId !== '') {\n\t\t\t\tthis.addSwatchToMoodboard();\n\t\t\t\tthis.$el.modal('hide');\n\t\t\t\tthis.$el.trigger('resetSavePanel');\n\t\t\t}\n\t\t});\n\n\t\tthis.handleSearchInput();\n\t\tthis.handleNewMoodboardInput();\n\n\t\tthis.getMoodboards();\n\t}\n\n\tgetMoodboards() {\n\t\tthis.$el.addClass('loading');\n\t\tlet url = `${this.getMoodboardsApi}`;\n\n\t\t$.ajax({\n\t\t\ttype: 'GET',\n\t\t\turl: url,\n\t\t\tsuccess: (data) => {\n\t\t\t\tthis.$el.removeClass('loading');\n\t\t\t\tif (data.length > 0) {\n\t\t\t\t\tthis.updateMoodboards(data);\n\t\t\t\t} else {\n\t\t\t\t\tthis.showNewMoodboardPanel();\n\t\t\t\t}\n\t\t\t},\n\t\t});\n\t}\n\n\thandleMoodboardClicked() {\n\t\tthis.$moodboards.on('click', (e) => {\n\t\t\tthis.$moodboards.removeClass('selected');\n\t\t\tlet $moodboard = $(e.currentTarget);\n\t\t\t$moodboard.addClass('selected');\n\t\t\tthis.selectedMoodboardId = $moodboard.attr('data-id');\n\t\t\tthis.$btnDone.removeClass('disabled');\n\t\t});\n\t}\n\n\thandleSearchInput() {\n\t\tthis.$moodboardSearchInput.on('keyup', (event) => {\n\t\t\tlet input = $(event.currentTarget).val().trim();\n\t\t\tlet filter = input.toUpperCase();\n\n\t\t\tif (this.$moodboards.length > 0) {\n\t\t\t\tthis.$moodboards.map((i, obj) => {\n\t\t\t\t\tlet txtValue = $(obj).attr('data-name');\n\t\t\t\t\tif (txtValue.toUpperCase().indexOf(filter) > -1) {\n\t\t\t\t\t\tobj.style.display = '';\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobj.style.display = 'none';\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\n\thandleNewMoodboardInput() {\n\t\tthis.$newMoodboardInput.on('keyup', (event) => {\n\t\t\tlet input = $(event.currentTarget).val().trim();\n\t\t\tif (input.length > 0) {\n\t\t\t\tthis.$newMoodboardCreateBtn.removeClass('disabled');\n\t\t\t} else {\n\t\t\t\tthis.$newMoodboardCreateBtn.addClass('disabled');\n\t\t\t}\n\n\t\t\tthis.newMoodboardText = input;\n\t\t});\n\t}\n\n\tshowNewMoodboardPanel() {\n\t\tthis.$el.addClass('showNewMoodboard');\n\t}\n\n\thideNewMoodboardPanel() {\n\t\tthis.$el.removeClass('showNewMoodboard');\n\t}\n\n\tupdateMoodboards(data) {\n\t\tlet moodboardHTML = '';\n\t\tdata.map((i) => {\n\t\t\tlet swatchText = i.swatchCount == 1 ? 'swatch' : 'swatches';\n\t\t\tlet imageUrl = i.images != null || i.images.length > 0 ? i.images[0] : '';\n\n\t\t\tmoodboardHTML += `<div class=\"${CLS}-moodboard\" data-id=\"${i.id}\" data-name=\"${i.name}\">\n\t\t\t\t\t\t\t\t<img class=\"${CLS}-moodboard-image\" src=\"${imageUrl}\">\n\t\t\t\t\t\t\t\t<div class=\"${CLS}-moodboard-text\">\n\t\t\t\t\t\t\t\t\t<h4 class=\"${CLS}-moodboard-title\">${i.name}</h4>\n\t\t\t\t\t\t\t\t\t<p class=\"${CLS}-moodboard-count\">${i.swatchCount} ${swatchText}</p>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>`;\n\t\t});\n\t\tthis.$moodboardsContainer.empty();\n\t\tthis.$moodboardsContainer.html(moodboardHTML);\n\t\tthis.$moodboards = this.$el.find(`.${CLS}-moodboard`);\n\t\tthis.handleMoodboardClicked();\n\t}\n\n\taddSwatchToMoodboard() {\n\t\tlet data = JSON.stringify({\n\t\t\titems: this.selectedItems,\n\t\t\tmoodboardId: this.selectedMoodboardId,\n\t\t\ttype: this.itemType\n\t\t});\n\n\t\tfetch(this.addToMoodboardApi, {\n\t\t\tmethod: 'POST',\n\t\t\tdataType: 'json',\n\t\t\tbody: data\n\t\t}).then((response) => {\n\t\t\treturn response.json();\n\t\t}).then((_json) => {\n\t\t}).catch((_error) => {\n\t\t});\n\t}\n\n\n\tcreateMoodboard() {\n\t\tlet data = JSON.stringify({\n\t\t\ttitle: this.newMoodboardText\n\t\t});\n\n\t\tif ($(\"#dulicateWarningText\").length){\n\t\t\t$( \"#dulicateWarningText\" ).remove();\n\t\t\tthis.$newMoodboardCreateBt.removeClass('disabled');\n\t\t}\n\n\t\tvar moodboardsName = [];\n\t\tvar inputMoodboardName = this.newMoodboardText.toLowerCase();\n\t\t$( \".woolLabSaveToMoodboardModalBlock-moodboard\" ).each(function( index ) {\n\t\t\tmoodboardsName.push($( this ).find(\".woolLabSaveToMoodboardModalBlock-moodboard-title\").text().toLowerCase());\n\t\t  });\n\t\tif(containsDuplicates(moodboardsName, inputMoodboardName)){\n\t\t\tif (!$(\"#dulicateWarningText\").length){\n\t\t\t\t$( \"<p id='dulicateWarningText' style='color:#FF0000'>This moodboard name already exists.</p>\" ).insertAfter( this.$newMoodboardInput );\n\t\t\t\tthis.$newMoodboardCreateBtn.addClass('disabled');\n\t\t\t}\n\t\t}\n\t\telse{\n\t\t\tthis.$el.addClass('loading');\n\n\t\t\tfetch(this.createMoodboardApi, {\n\t\t\t\tmethod: 'POST',\n\t\t\t\tdataType: 'json',\n\t\t\t\tbody: data\n\t\t\t}).then((_json) => {\n\t\t\t\tthis.hideNewMoodboardPanel();\n\t\t\t\tthis.getMoodboards();\n\t\t\t}).catch((_error) => {\n\t\t\t});\n\t\t}\n\t\tfunction containsDuplicates(nameArray, inputText) {\n\t\t\tfor (let i = 0; i < nameArray.length; i++){\n\t\t\t\tif (nameArray[i] === inputText){\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n}\n\n","var Handlebars = require('/Users/owenli/Documents/workspace/awi-woolmark-fe/node_modules/handlebars/runtime.js');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n    var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"<section id=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":13},\"end\":{\"line\":1,\"column\":19}}}) : helper)))\n    + \"\\\" class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":28},\"end\":{\"line\":1,\"column\":34}}}) : helper)))\n    + \" modal fade\\\" data-keyboard=\\\"false\\\" tabindex=\\\"-1\\\" role=\\\"dialog\\\" aria-hidden=\\\"true\\\">\\n\t<button type=\\\"button\\\" class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":2,\"column\":30},\"end\":{\"line\":2,\"column\":36}}}) : helper)))\n    + \"-close btn btn--borderless\\\" data-dismiss=\\\"modal\\\" aria-label=\\\"Close\\\">\\n\t\t<i class=\\\"icon icon-close\\\"></i>\\n\t</button>\\n\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":5,\"column\":13},\"end\":{\"line\":5,\"column\":19}}}) : helper)))\n    + \"-dialog modal-dialog modal-lg\\\" role=\\\"document\\\">\\n\t\t<div class=\\\"modal-content\\\">\\n\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":7,\"column\":15},\"end\":{\"line\":7,\"column\":21}}}) : helper)))\n    + \"-body modal-body\\\">\\n\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":8,\"column\":16},\"end\":{\"line\":8,\"column\":22}}}) : helper)))\n    + \"-loadingScreen\\\">\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":9,\"column\":17},\"end\":{\"line\":9,\"column\":23}}}) : helper)))\n    + \"-loadingScreen-spinner\\\"></div>\\n\t\t\t\t</div>\\n\\n\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":12,\"column\":16},\"end\":{\"line\":12,\"column\":22}}}) : helper)))\n    + \"-newMoodboard\\\">\\n\t\t\t\t\t<h4 class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":13,\"column\":16},\"end\":{\"line\":13,\"column\":22}}}) : helper)))\n    + \"-newMoodboard-title\\\">Create a new moodboard</h4>\\n\t\t\t\t\t<input type=\\\"text\\\" class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":14,\"column\":31},\"end\":{\"line\":14,\"column\":37}}}) : helper)))\n    + \"-newMoodboard-textInput\\\" placeholder=\\\"Insert your moodboard title\\\">\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":15,\"column\":17},\"end\":{\"line\":15,\"column\":23}}}) : helper)))\n    + \"-newMoodboard-buttons\\\">\\n\t\t\t\t\t\t<button class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":16,\"column\":21},\"end\":{\"line\":16,\"column\":27}}}) : helper)))\n    + \"-createBtn btn disabled\\\">Create</button>\\n\t\t\t\t\t\t<button class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":17,\"column\":21},\"end\":{\"line\":17,\"column\":27}}}) : helper)))\n    + \"-cancelBtn btn\\\" data-dismiss=\\\"modal\\\">Cancel</button>\\n\t\t\t\t\t</div>\\n\t\t\t\t</div>\\n\\n\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":21,\"column\":16},\"end\":{\"line\":21,\"column\":22}}}) : helper)))\n    + \"-saveToMoodboards\\\">\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":22,\"column\":17},\"end\":{\"line\":22,\"column\":23}}}) : helper)))\n    + \"-saveToMoodboards-inner\\\">\\n\t\t\t\t\t\t<input type=\\\"text\\\" class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":23,\"column\":32},\"end\":{\"line\":23,\"column\":38}}}) : helper)))\n    + \"-saveToMoodboards-searchInput\\\" placeholder=\\\"Search Moodboard\\\">\\n\\n\t\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":25,\"column\":18},\"end\":{\"line\":25,\"column\":24}}}) : helper)))\n    + \"-moodboards\\\">\\n\t\t\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":26,\"column\":19},\"end\":{\"line\":26,\"column\":25}}}) : helper)))\n    + \"-moodboard\\\"></div>\\n\t\t\t\t\t\t</div>\\n\t\t\t\t\t</div>\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":29,\"column\":17},\"end\":{\"line\":29,\"column\":23}}}) : helper)))\n    + \"-saveToMoodboards-buttons\\\">\\n\t\t\t\t\t\t<button class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":30,\"column\":21},\"end\":{\"line\":30,\"column\":27}}}) : helper)))\n    + \"-newMoodboardBtn btn\\\">New Moodboard</button>\\n\t\t\t\t\t\t<button class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":31,\"column\":21},\"end\":{\"line\":31,\"column\":27}}}) : helper)))\n    + \"-doneBtn btn disabled\\\">Done</button>\\n\t\t\t\t\t</div>\\n\t\t\t\t</div>\\n\\n\t\t\t</div>\\n\t\t</div>\\n\t</div>\\n</section>\";\n},\"useData\":true});","import truncate from 'truncate-html';\n\nexport let handleTruncate = ($element, limit = 250) => {\n\tlet html = $element.html();\n\tlet text = $element.text();\n\tlet originalHtml = html;\n\tlet readMoreLabel = 'Read More';\n\tlet readLessLabel = 'Read Less';\n\n\tconsole.log(\"text length\", text.length, limit);\n\tif(text.length > limit) {\n\t\tlet readMore = `<a class=\"read-more read-more--more\"  href=\"javascript:void(0)\">${readMoreLabel}</a>`;\n\t\tlet readLess = `<a class=\"read-more read-more--less\"  href=\"javascript:void(0)\">${readLessLabel}</a>`;\n\n\t\tconst ellipsis =  ` … `; \n\n\t\t// trim the string\n\t\tlet trimmedHtml = truncate(html, limit, {\n\t\t\tdecodeEntities: false, \n\t\t\tellipsis: ellipsis,\n\t\t\tkeepWhitespaces: false\t\t\t\n\t\t});\n\n\t\tif (trimmedHtml.includes(ellipsis)) {\n\n\t\t\ttrimmedHtml = `${trimmedHtml} ${readMore}`;\n\t\t}\n\n\t\t$element.html(trimmedHtml);\n\n\t\t$element.on('click', `.read-more`, (event) => {\n\t\t\tif($(event.currentTarget).hasClass('read-more--more')) {\n\t\t\t\t$element.html(`${originalHtml} ${readLess}`);\n\t\t\t}\n\t\t\telse {\n\t\t\t\t$element.html(trimmedHtml);\n\t\t\t}\n\t\t});\n\t}\n}\n","var Handlebars = require('/Users/owenli/Documents/workspace/awi-woolmark-fe/node_modules/handlebars/runtime.js');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n    var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":16,\"column\":57},\"end\":{\"line\":16,\"column\":65}}}) : helper)));\n},\"3\":function(container,depth0,helpers,partials,data) {\n    var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":17,\"column\":51},\"end\":{\"line\":17,\"column\":57}}}) : helper)));\n},\"5\":function(container,depth0,helpers,partials,data) {\n    var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"\t\t\t\t\t<div class=\\\"\"\n    + container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":24,\"column\":17},\"end\":{\"line\":24,\"column\":23}}}) : helper)))\n    + \"-detailContainer-cta\\\">\\n\t\t\t\t\t\t<div class=\\\"archived\\\">Archived</div>\\n\t\t\t\t\t</div>\\n\";\n},\"7\":function(container,depth0,helpers,partials,data) {\n    var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"\t\t\t\t\t<p class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":28,\"column\":15},\"end\":{\"line\":28,\"column\":21}}}) : helper)))\n    + \"-detailContainer-txtSupplier\\\">Add to My Swatches to view supplier information</p>\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":29,\"column\":17},\"end\":{\"line\":29,\"column\":23}}}) : helper)))\n    + \"-detailContainer-cta\\\">\\n\t\t\t\t\t\t<button class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":30,\"column\":21},\"end\":{\"line\":30,\"column\":27}}}) : helper)))\n    + \"-detailContainer-btnSave btn btn--rounded btn--green\\\">\\n\t\t\t\t\t\t\tMy Swatches\\n\t\t\t\t\t\t</button>\\n\t\t\t\t\t\t<button class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":33,\"column\":21},\"end\":{\"line\":33,\"column\":27}}}) : helper)))\n    + \"-detailContainer-btnMoodboard btn btn--rounded btn--green\\\">\\n\t\t\t\t\t\t\tMoodboard\\n\t\t\t\t\t\t</button>\\n\t\t\t\t\t</div>\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n    var stack1, helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"<section id=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":13},\"end\":{\"line\":1,\"column\":19}}}) : helper)))\n    + \"--\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":21},\"end\":{\"line\":1,\"column\":27}}}) : helper)))\n    + \"\\\" class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":36},\"end\":{\"line\":1,\"column\":42}}}) : helper)))\n    + \" modal fade\\\" data-keyboard=\\\"false\\\" tabindex=\\\"-1\\\" role=\\\"dialog\\\" aria-hidden=\\\"true\\\"\\n\tdata-id=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":2,\"column\":10},\"end\":{\"line\":2,\"column\":16}}}) : helper)))\n    + \"\\\" data-username=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"userName\") || (depth0 != null ? lookupProperty(depth0,\"userName\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"userName\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":2,\"column\":33},\"end\":{\"line\":2,\"column\":45}}}) : helper)))\n    + \"\\\" data-isstudent=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"isStudent\") || (depth0 != null ? lookupProperty(depth0,\"isStudent\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"isStudent\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":2,\"column\":63},\"end\":{\"line\":2,\"column\":76}}}) : helper)))\n    + \"\\\">\\n\t<div class=\\\"modal-dialog\\\" role=\\\"document\\\">\\n\t\t<div class=\\\"modal-content\\\">\\n\\n\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":6,\"column\":14},\"end\":{\"line\":6,\"column\":20}}}) : helper)))\n    + \"-detailContainer \\\">\\n\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":7,\"column\":15},\"end\":{\"line\":7,\"column\":21}}}) : helper)))\n    + \"-detailContainer-loadingScreen\\\">\\n\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":8,\"column\":16},\"end\":{\"line\":8,\"column\":22}}}) : helper)))\n    + \"-detailContainer-loadingScreen-spinner\\\"></div>\\n\t\t\t</div>\\n\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":10,\"column\":15},\"end\":{\"line\":10,\"column\":21}}}) : helper)))\n    + \"-arrow-container\\\">\\n\t\t\t\t<button class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":11,\"column\":19},\"end\":{\"line\":11,\"column\":25}}}) : helper)))\n    + \"-arrow prev btn\\\"></button>\\n\t\t\t\t<button class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":12,\"column\":19},\"end\":{\"line\":12,\"column\":25}}}) : helper)))\n    + \"-arrow next btn\\\"></button>\\n\t\t\t</div>\\n\t\t\\n\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":15,\"column\":15},\"end\":{\"line\":15,\"column\":21}}}) : helper)))\n    + \"-detailContainer-inner\\\">\\n\t\t\t\t<h3 class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":16,\"column\":15},\"end\":{\"line\":16,\"column\":21}}}) : helper)))\n    + \"-detailContainer-title\\\">\"\n    + ((stack1 = lookupProperty(helpers,\"if\").call(alias1,(depth0 != null ? lookupProperty(depth0,\"name\") : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data,\"loc\":{\"start\":{\"line\":16,\"column\":45},\"end\":{\"line\":16,\"column\":72}}})) != null ? stack1 : \"\")\n    + \"</h3>\\n\t\t\t\t<p class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":17,\"column\":14},\"end\":{\"line\":17,\"column\":20}}}) : helper)))\n    + \"-detailContainer-id\\\">\"\n    + ((stack1 = lookupProperty(helpers,\"if\").call(alias1,(depth0 != null ? lookupProperty(depth0,\"id\") : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data,\"loc\":{\"start\":{\"line\":17,\"column\":41},\"end\":{\"line\":17,\"column\":64}}})) != null ? stack1 : \"\")\n    + \"</p>\\n\t\t\t\t\\n\\n\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":20,\"column\":16},\"end\":{\"line\":20,\"column\":22}}}) : helper)))\n    + \"-detailContainer-information\\\"></div>\\n\\n\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":22,\"column\":16},\"end\":{\"line\":22,\"column\":22}}}) : helper)))\n    + \"-detailContainer-icons\\\"></div>\\n\"\n    + ((stack1 = lookupProperty(helpers,\"if\").call(alias1,(depth0 != null ? lookupProperty(depth0,\"archived\") : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(5, data, 0),\"inverse\":container.program(7, data, 0),\"data\":data,\"loc\":{\"start\":{\"line\":23,\"column\":4},\"end\":{\"line\":37,\"column\":11}}})) != null ? stack1 : \"\")\n    + \"\t\t\t</div>\\n\t\t</div>\\n\\n\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":46,\"column\":14},\"end\":{\"line\":46,\"column\":20}}}) : helper)))\n    + \"-canvasContainer\\\">\\n\t\t\t<a href=\\\"#\\\" data-dismiss=\\\"modal\\\" aria-label=\\\"Close\\\" class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":47,\"column\":62},\"end\":{\"line\":47,\"column\":68}}}) : helper)))\n    + \"-canvasContainer-btn-close\\\">CLOSE</a>\\n\t\t\\n\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":49,\"column\":15},\"end\":{\"line\":49,\"column\":21}}}) : helper)))\n    + \"-canvasContainer-inner\\\">\\n\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":50,\"column\":16},\"end\":{\"line\":50,\"column\":22}}}) : helper)))\n    + \"-swatch-button-container\\\">\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":51,\"column\":17},\"end\":{\"line\":51,\"column\":23}}}) : helper)))\n    + \"-swatch-button \"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":51,\"column\":38},\"end\":{\"line\":51,\"column\":44}}}) : helper)))\n    + \"-swatch-button-rotate\\\"></div>\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":52,\"column\":17},\"end\":{\"line\":52,\"column\":23}}}) : helper)))\n    + \"-swatch-button \"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":52,\"column\":38},\"end\":{\"line\":52,\"column\":44}}}) : helper)))\n    + \"-swatch-button-thickness\\\"></div>\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":53,\"column\":17},\"end\":{\"line\":53,\"column\":23}}}) : helper)))\n    + \"-swatch-button \"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":53,\"column\":38},\"end\":{\"line\":53,\"column\":44}}}) : helper)))\n    + \"-swatch-button-zoom\\\"></div>\\n\t\t\t\t</div>\\n\t\t\\n\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":56,\"column\":16},\"end\":{\"line\":56,\"column\":22}}}) : helper)))\n    + \"-scaledOverlay\\\">\\n\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":58,\"column\":17},\"end\":{\"line\":58,\"column\":23}}}) : helper)))\n    + \"-zoomOverlay\\\">\\n\t\t\t\t\t\t<img class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":59,\"column\":18},\"end\":{\"line\":59,\"column\":24}}}) : helper)))\n    + \"-zoom zoom\\\" src=\\\"https://via.placeholder.com/640\\\"/>\\n\t\t\t\t\t</div>\\n\t\t\\n\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":62,\"column\":17},\"end\":{\"line\":62,\"column\":23}}}) : helper)))\n    + \"-widthMarker\\\">\\n\t\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":63,\"column\":18},\"end\":{\"line\":63,\"column\":24}}}) : helper)))\n    + \"-widthMarker-circle\\\"></div>\\n\t\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":64,\"column\":18},\"end\":{\"line\":64,\"column\":24}}}) : helper)))\n    + \"-widthMarker-line\\\"></div>\\n\t\t\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":65,\"column\":18},\"end\":{\"line\":65,\"column\":24}}}) : helper)))\n    + \"-widthMarker-count-container\\\">\\n\t\t\t\t\t\t\t<p class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":66,\"column\":17},\"end\":{\"line\":66,\"column\":23}}}) : helper)))\n    + \"-widthMarker-count\\\">4mm</p>\\n\t\t\t\t\t\t</div>\\n\t\t\t\t\t</div>\\n\t\t\t\t</div>\\n\t\t\\n\t\t\t\t<div class=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"wg\") || (depth0 != null ? lookupProperty(depth0,\"wg\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"wg\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":71,\"column\":16},\"end\":{\"line\":71,\"column\":22}}}) : helper)))\n    + \"-threejsContent\\\"></div>\\n\t\t\t</div>\\n\t\t</div>\\n\t\t</div>\\n\t</div>\\n</section>\";\n},\"useData\":true});"],"sourceRoot":""}