{"version":3,"sources":["webpack:////Users/owenli/Documents/workspace/awi-wool-fe/src/views/blocks/chartBlock/js/chartBlock.js","webpack:////Users/owenli/Documents/workspace/awi-wool-fe/src/views/blocks/marketSummaryChartBlock/js/marketSummaryChartBlock.js","webpack:///./wool/mediaQuery.js","webpack:///./wool/numberFormatter.js","webpack:///./wool/colorGenerator.js","webpack:////Users/owenli/Documents/workspace/awi-wool-fe/node_modules/moment/locale sync ^\\.\\/.*$"],"names":["CLS","d3","require","uuidv4","moment","ChartBlock","element","_this","this","className","arguments","length","undefined","_classCallCheck","$element","$","$chart","find","setChartId","setEmptyMessages","setEmptyData","isDataEmpty","margin","top","right","bottom","left","mediaQuery","numberFormatter","colorGenerator","heightRatio","on","concat","event","params","updateChartData","key","value","data","_","isNil","isEmpty","cloneDeep","emptyData","initChart","removeMessage","appendMessage","chartId","attr","select","emptyMessage","errorMessage","values","i","push","xValue","yValue","isError","append","remove","_this2","css","visibility","drawChart","window","debounce","clearSvg","setChartDimensions","drawSvg","defineXAxesScales","defineYAxesScales","drawXAxes","drawYAxes","width","height","svg","xAxisBottom","scaleLinear","range","domain","extent","datum","nice","yAxisLeft","call","axisBottom","axisLeft","date","format","textElement","maxWidth","x","y","words","text","tspan","textLength","node","getComputedTextLength","slice","power","tickCount","intervals","Math","pow","getLinearTick","MarketSummaryChartBlock","_ChartBlock","_callSuper","yTickValue","dotRadius","dotFocusRadius","_inherits","placeholderData","month","day","$tooltip","drawTooltop","drawPaths","drawPoints","tooltip","getChartNode","scaleTime","getMomentDate","toDate","xAxisTop","yMaxTickValue","ceil","maxBy","yMinTickValue","floor","minBy","tickFormat","substr","tickSize","axisTop","index","nodes","previousIndex","year","_this3","breakpointMaxWidth","BREAKPOINTS","SM","tickValues","_this4","line","_this5","selectAll","enter","style","parentNode","filter","innerData","innerIndex","classed","html","tooltipWidth","outerWidth","leftPosition","mouse","topPosition","innerDatum","MediaQuery","XS","MD","LG","XL","breakpoint","max","document","documentElement","clientWidth","innerWidth","isFinite","NumberFormatter","number","parts","toString","split","replace","join","ColorGenerator","colors","cycleIndex","goldenRatioConjugate","blue","red","green","orange","yellow","purple","selectedColor","hsl","object","r","g","b","h","s","l","min","d","rgbToHsl","hexColor","RegExp","test","parseInt","oldHue","hueWheel","offset","getNewSaturation","getNewLumination","componentToHex","color","hue2rgb","p","q","t","round","hslToRgb","hex","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-ps","./ar-ps.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn-bd","./bn-bd.js","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-mx","./es-mx.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku-kmr","./ku-kmr.js","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports"],"mappings":"05BAAA,IACMA,EAAM,aAERC,EAAKC,EAAQ,KACbC,EAASD,EAAQ,KACjBE,EAASF,EAAQ,KAMRG,EAAU,WA4BrB,SA3BD,SAAAA,EAAYC,GAA0B,IAAAC,EAAAC,KAAjBC,EAASC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAGV,+FAAGa,CAAAL,KAAAH,GACnCG,KAAKF,QAAUA,EACfE,KAAKM,SAAWC,EAAET,GAClBE,KAAKQ,OAASR,KAAKM,SAASG,KAAI,UAEhCT,KAAKU,aACLV,KAAKW,mBACLX,KAAKY,eAELZ,KAAKa,aAAc,EACnBb,KAAKc,QACJC,IAAK,GACLC,MAAO,GACPC,OAAQ,GACRC,KAAM,IAGPlB,KAAKmB,WAAaA,IAClBnB,KAAKoB,gBAAkBA,IACvBpB,KAAKqB,eAAiBA,IAEtBrB,KAAKsB,YAAc,IAGnBtB,KAAKM,SAASiB,GAAE,GAAAC,OAAIvB,EAAS,WAAW,SAACwB,EAAOC,GAC/C3B,EAAK4B,gBAAgBD,WAEtBE,IAAA,kBAAAC,MAED,SAAgBH,GACf,IAAII,EAAOJ,EAAOI,KAEdC,EAAEC,MAAMF,IAOPJ,EAAOO,QAGXjC,KAAKa,aAAc,EACnBb,KAAK8B,KAAOC,EAAEG,UAAUlC,KAAKmC,WAC7BnC,KAAKoC,YACLpC,KAAKqC,gBAEFX,EAAOO,QACTjC,KAAKsC,eAAc,GAGnBtC,KAAKsC,eAAc,KAlBpBtC,KAAKa,aAAc,EACnBb,KAAK8B,KAAOA,EACZ9B,KAAKqC,gBACLrC,KAAKoC,gBAoBPR,IAAA,aAAAC,MACA,WACC7B,KAAKuC,QAAU5C,IACfK,KAAKQ,OAAOgC,KAAK,YAAaxC,KAAKuC,YACnCX,IAAA,eAAAC,MAED,WACC,OAAOpC,EAAGgD,OAAM,eAAAjB,OAAgBxB,KAAKuC,QAAO,UAG7CX,IAAA,mBAAAC,MACA,WACC7B,KAAK0C,aAAgBX,EAAEC,MAAMhC,KAAKQ,OAAOgC,KAAK,uBAAkE,kBAAzCxC,KAAKQ,OAAOgC,KAAK,sBACxFxC,KAAK2C,aAAgBZ,EAAEC,MAAMhC,KAAKQ,OAAOgC,KAAK,uBAAkE,0BAAzCxC,KAAKQ,OAAOgC,KAAK,yBAGzFZ,IAAA,eAAAC,MACA,WAGC,IAFA,IAAIe,KAEIC,EAAI,EAAGA,EAAI,EAAGA,IACrBD,EAAOE,MACNC,OAAQF,EAAI,EACZG,OAAQH,EAAI,IAId7C,KAAKmC,UAAYS,KACjBhB,IAAA,gBAAAC,MAED,SAAcoB,GACb,IAAIP,EAAe,GAElBA,EADEO,EACajD,KAAK2C,aAGL3C,KAAK0C,aAGrB1C,KAAKQ,OAAO0C,OAAM,eAAA1B,OAAgBhC,EAAG,iCAAAgC,OAAgCyB,EAAO,GAAAzB,OAAMhC,EAAG,yBAA0B,GAAE,MAAAgC,OAAKkB,EAAY,cAClId,IAAA,gBAAAC,MAED,WACC7B,KAAKQ,OAAO2C,OAAM,qBAGnBvB,IAAA,YAAAC,MACA,WAAY,IAAAuB,EAAApD,KACXA,KAAKQ,OAAO6C,KAAMC,WAAY,YAC9BtD,KAAKuD,YACLhD,EAAEiD,QAAQjC,GAAG,SAAUQ,EAAE0B,SAAS,WACjCL,EAAKG,aACH,SAGJ3B,IAAA,YAAAC,MACA,WACC7B,KAAK0D,WACL1D,KAAK2D,qBACL3D,KAAK4D,UAEL5D,KAAK6D,oBACL7D,KAAK8D,oBAEL9D,KAAK+D,YACL/D,KAAKgE,eACLpC,IAAA,WAAAC,MAED,WACCpC,EAAGgD,OAAM,eAAAjB,OAAgBxB,KAAKuC,QAAO,OAAME,OAAO,OAAOU,YACzDvB,IAAA,qBAAAC,MAED,WACC7B,KAAKiE,MAAQjE,KAAKM,SAAS2D,QAAUjE,KAAKc,OAAOI,KAAOlB,KAAKc,OAAOE,MACpEhB,KAAKkE,OAAUlE,KAAKM,SAAS2D,QAAUjE,KAAKsB,YAAetB,KAAKc,OAAOC,IAAMf,KAAKc,OAAOG,UACzFW,IAAA,UAAAC,MAED,WACC7B,KAAKmE,IAAM1E,EAAGgD,OAAM,eAAAjB,OAAgBxB,KAAKuC,QAAO,OAC9CW,OAAO,OACPV,KAAK,QAASxC,KAAKiE,MAAQjE,KAAKc,OAAOI,KAAOlB,KAAKc,OAAOE,OAC1DwB,KAAK,SAAUxC,KAAKkE,OAASlE,KAAKc,OAAOC,IAAMf,KAAKc,OAAOG,QAC3DiC,OAAO,KACPV,KAAK,YAAW,aAAAhB,OAAexB,KAAKc,OAAOI,KAAI,KAAAM,OAAIxB,KAAKc,OAAOC,IAAG,SACpEa,IAAA,oBAAAC,MAED,WACC7B,KAAKoE,YAAc3E,EAAG4E,cACpBC,OAAO,EAAGtE,KAAKiE,QACfM,OAAO9E,EAAG+E,OAAOxE,KAAK8B,KAAM,SAAC2C,GAC7B,OAAOA,EAAM1B,UACV2B,UACL9C,IAAA,oBAAAC,MAED,WACC7B,KAAK2E,UAAYlF,EAAG4E,cAClBC,OAAOtE,KAAKkE,OAAQ,IACpBK,OAAO9E,EAAG+E,OAAOxE,KAAK8B,KAAM,SAAC2C,GAC7B,OAAOA,EAAMzB,UACV0B,UACL9C,IAAA,YAAAC,MAED,WACC7B,KAAKmE,IAAIjB,OAAO,KACdV,KAAK,QAAS,yBACdA,KAAK,YAAW,gBAAAhB,OAAkBxB,KAAKkE,OAAM,MAC7CU,KAAKnF,EAAGoF,WAAW7E,KAAKoE,iBAC1BxC,IAAA,YAAAC,MAED,WACC7B,KAAKmE,IAAIjB,OAAO,KACdV,KAAK,QAAS,UACdoC,KAAKnF,EAAGqF,SAAS9E,KAAK2E,eAGzB/C,IAAA,gBAAAC,MACA,SAAckD,GAA6B,IAAvBC,EAAM9E,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,aAC5B,OAAON,EAAOmF,EAAMC,MAGrBpD,IAAA,WAAAC,MACA,SAASoD,EAAaC,EAAUC,EAAGC,GAMlC,IALA,IAAIC,EAAQJ,EAAYK,OACpBC,EAAQN,EAAYK,KAAK,MAAMpC,OAAO,SAASoC,KAAKD,GAAO7C,KAAK,IAAK2C,GAAG3C,KAAK,IAAK4C,GAElFI,EAAaD,EAAME,OAAOC,wBAC1BJ,EAAOC,EAAMD,OACXE,EAAaN,GAAYI,EAAKnF,OAAS,GAC5CmF,EAAOA,EAAKK,MAAM,GAAI,GACtBJ,EAAMD,KAAKA,EAAO,KAClBE,EAAaD,EAAME,OAAOC,2BAI5B9D,IAAA,gBAAAC,MACA,SAAcyC,GAAkC,IAA3BsB,EAAK1F,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,EAAG2F,EAAS3F,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,GAC3C,GAAa,IAAVoE,EAAa,CAEf,IADA,IAAIwB,GAAa,GAAK,GAAK,GAAK,EAAG,EAAG,GAC9BjD,EAAI,EAAGA,EAAIiD,EAAU3F,OAAQ0C,IACpC,KAAIyB,GAASwB,EAAUjD,GAAKkD,KAAKC,IAAI,GAAIJ,IAAWC,GAInD,OAAOC,EAAUjD,GAAKkD,KAAKC,IAAI,GAAIJ,GAIrC,OADAA,GAAS,EACF5F,KAAKiG,cAAc3B,EAAOsB,EAAOC,GAEzC,OAAO,iGA9Mc,ioDCXvB,IACMrG,EAAM,0BAIRI,EAASF,EAAQ,KACjBD,EAAKC,EAAQ,KAEJwG,EAAuB,SAAAC,GACnC,SAAAD,EAAYpG,GAAS,IAAAC,EAYI,mGAZJM,CAAAL,KAAAkG,IACpBnG,EAAAqG,EAAApG,KAAAkG,GAAMpG,EAASN,KAEVsB,QACJC,IAAK,GACLC,MAAO,GACPC,OAAQ,GACRC,KAAM,IAGPnB,EAAKsG,WAAa,IAClBtG,EAAKuG,UAAY,EACjBvG,EAAKwG,eAAiB,EAAExG,EACxB,4RAAAyG,CAAAN,EAd2CrG,mBAc3CqG,OAAAtE,IAAA,eAAAC,MAED,WAMC,IAJA,IAAI4E,KAII5D,EAAI,EAAGA,EAAI,GAAIA,IACtB4D,EAAgB3D,MACfjB,MALgC,KACK,IAICgB,EACtCkC,KAAMnF,IAAS8G,MAAM7D,GAAG8D,IAAI,KAI9B3G,KAAKmC,UAAYsE,KACjB7E,IAAA,YAAAC,MAED,WACC7B,KAAK0D,WACL1D,KAAK2D,qBAEF3D,KAAK4G,UAAY5G,KAAK4G,SAASzG,OAAS,GAC1CH,KAAK4G,SAASzD,SAGfnD,KAAK4D,UACL5D,KAAK6G,cAEL7G,KAAK6D,oBACL7D,KAAK8D,oBAEL9D,KAAK+D,YACL/D,KAAKgE,YAEDhE,KAAKa,cACRb,KAAK8G,YACL9G,KAAK+G,iBAENnF,IAAA,cAAAC,MAED,WACC7B,KAAKgH,QAAUhH,KAAKiH,eAClB/D,OAAO,OACPV,KAAK,QAAO,GAAAhB,OAAKhC,EAAG,aAEtBQ,KAAK4G,SAAW5G,KAAKM,SAASG,KAAI,IAAAe,OAAKhC,EAAG,gBAC1CoC,IAAA,oBAAAC,MAED,WAAoB,IAAAuB,EAAApD,KACnBA,KAAKoE,YAAc3E,EAAGyH,YACpB5C,OAAO,EAAGtE,KAAKiE,QACfM,OAAO9E,EAAG+E,OAAOxE,KAAK8B,KAAM,SAAC2C,GAC7B,OAAOrB,EAAK+D,cAAc1C,EAAMM,MAAMqC,YACnC1C,OAEL1E,KAAKqH,SAAW5H,EAAGyH,YACjB5C,OAAO,EAAGtE,KAAKiE,QACfM,OAAO9E,EAAG+E,OAAOxE,KAAK8B,KAAM,SAAC2C,GAC7B,OAAOrB,EAAK+D,cAAc1C,EAAMM,MAAMqC,YACnC1C,UACL9C,IAAA,oBAAAC,MAED,WACC7B,KAAKsH,cAAiBvB,KAAKwB,KAAMxF,EAAEyF,MAAMxH,KAAK8B,KAAM,SAAC2C,GACpD,OAAOA,EAAM5C,QACXA,MAAQ7B,KAAKqG,YAAerG,KAAKqG,WAAcrG,KAAKqG,WAEvDrG,KAAKyH,cAAiB1B,KAAK2B,MAAO3F,EAAE4F,MAAM3H,KAAK8B,KAAM,SAAC2C,GACrD,OAAOA,EAAM5C,QACXA,MAAQ7B,KAAKqG,YAAerG,KAAKqG,WAAcrG,KAAKqG,WAEvDrG,KAAK2E,UAAYlF,EAAG4E,cAClBC,OAAOtE,KAAKkE,OAAQ,IACpBK,QACAvE,KAAKyH,cACLzH,KAAKsH,mBAEP1F,IAAA,YAAAC,MAED,WAQC,GAPA7B,KAAKmE,IAAIjB,OAAO,KACdV,KAAK,QAAS,yBACdA,KAAK,YAAW,eAAAhB,OAAiBxB,KAAKkE,OAAM,MAC5CU,KAAKnF,EAAGoF,WAAW7E,KAAKoE,aAAawD,WAAW,SAAC7C,GACjD,OAAOnF,EAAOmF,GAAMC,OAAO,QAAQ6C,OAAO,EAAG,KAC3CC,UAAW9H,KAAKkE,UAEhBlE,KAAKa,YAAa,CAGrBb,KAAKmE,IAAIjB,OAAO,KACdV,KAAK,QAAS,sBACdA,KAAK,YAAW,eAAAhB,OAJA,EAI4B,MAC5CoD,KAAKnF,EAAGsI,QAAQ/H,KAAKqH,UAAUO,WAAW,SAAC7C,EAAMiD,EAAOC,GACxD,GAAa,IAAVD,EACF,OAAOpI,EAAOmF,GAAMC,OAAO,QAE5B,IAAIkD,EAAgBzI,EAAGgD,OAAOwF,EAAMD,EAAQ,IAC5C,OAAIA,EAAQ,GAAMpI,EAAOmF,GAAMoD,OAASvI,EAAOsI,EAAcpG,OAAO,IAAIqG,QAE1D,IAAVH,GACFvI,EAAGgD,OAAOwF,EAAM,IAAIzF,KAAK,QAAO,+BAAAhB,OAblB,EAa8D,QAEtE5B,EAAOmF,GAAMC,OAAO,SAGrB,UAGVpD,IAAA,YAAAC,MAED,WAAY,IAAAuG,EAAApI,KACXA,KAAKmE,IAAIjB,OAAO,KACdV,KAAK,QAAS,UACdoC,KAAKnF,EAAGqF,SAAS9E,KAAK2E,WAAWiD,WAAW,SAAC/F,EAAOmG,GACpD,GAAGI,EAAKjH,WAAWkH,mBAAmBD,EAAKjH,WAAWmH,YAAYC,KACjE,GAAGP,EAAQ,GAAM,EAChB,OAAOnG,OAIR,GAAGmG,EAAQ,GAAM,EAChB,OAAOnG,EAGT,MAAO,KACL2G,WAAW/I,EAAG6E,MAAMtE,KAAKyH,cAAezH,KAAKsH,cAAetH,KAAKqG,iBAGtEzE,IAAA,YAAAC,MACA,WAAY,IAAA4G,EAAAzI,KACXA,KAAKmE,IAAIjB,OAAO,QACduB,MAAMzE,KAAK8B,MACXU,KAAK,QAAS,aACdA,KAAK,IAAK/C,EAAGiJ,OACZvD,EAAE,SAACV,GACH,OAAOgE,EAAKrE,YAAYqE,EAAKtB,cAAc1C,EAAMM,MAAMqC,YAEvDhC,EAAE,SAACX,GACH,OAAOgE,EAAK9D,UAAUF,EAAM5C,aAKhCD,IAAA,aAAAC,MACA,WAAa,IAAA8G,EAAA3I,KACZA,KAAKmE,IAAIjB,OAAO,KACd0F,UAAU,OACV9G,KAAK9B,KAAK8B,MACV+G,QACA3F,OAAO,UACPV,KAAK,QAAS,eACdA,KAAK,KAAM,SAACiC,GACZ,OAAOkE,EAAKvE,YAAYuE,EAAKxB,cAAc1C,EAAMM,MAAMqC,YAEvD5E,KAAK,KAAM,SAACiC,GACZ,OAAOkE,EAAKhE,UAAUF,EAAM5C,SAE5BW,KAAK,IAAKxC,KAAKsG,WACf/E,GAAG,YAAa,SAACkD,EAAOuD,EAAOC,GAC/BU,EAAK3B,QAAQ8B,MAAM,UAAW,SAGjBrJ,EAAGgD,OAAOwF,EAAMD,IAEtBxF,KAAK,IAAKmG,EAAKpC,gBACpB/D,KAAK,KAAM,WACX,OAAOmG,EAAKvE,YAAYuE,EAAKxB,cAAc1C,EAAMM,MAAMqC,YAEvD5E,KAAK,KAAM,WACX,OAAOmG,EAAKhE,UAAUF,EAAM5C,SAI9BpC,EAAGgD,OAAOwF,EAAMD,GAAOe,WAAWA,YAChCH,UAAU,SACVI,OAAO,SAACC,EAAWC,GACnB,OAAOlB,IAAUkB,IACfzG,OAAO,QAAQ0G,QAAQ,UAAU,KAErC5H,GAAG,YAAa,SAACkD,EAAOuD,EAAOC,GAC/B,IAAIvB,EAAQiC,EAAKxB,cAAc1C,EAAMM,MAAMC,OAAO,OAC9CnD,EAAQ4C,EAAM5C,MAElB8G,EAAK3B,QAAQoC,KAAI,eAAA5H,OAAgBhC,EAAG,oBAAAgC,OAAmBkF,EAAK,sBAAAlF,OAAqBhC,EAAG,oBAAAgC,OAAmBK,EAAK,WAC5G,IAAIwH,EAAeV,EAAK/B,SAAS0C,aAE7BC,EAAgB9J,EAAG+J,MAAMvB,EAAMD,IAAQ,GAAKW,EAAK7H,OAAOI,KAASmI,EAAe,EAChFI,EAAehK,EAAG+J,MAAMvB,EAAMD,IAAQ,GAAMW,EAAK7H,OAAOC,IAAM,GAElE4H,EAAK3B,QAAQ8B,MAAM,OAAM,GAAAtH,OAAK+H,EAAY,OACxCT,MAAM,MAAK,GAAAtH,OAAKiI,EAAW,SAE7BlI,GAAG,aAAc,SAACkD,EAAOuD,EAAOC,GAChCU,EAAK3B,QAAQ8B,MAAM,UAAW,QAGjBrJ,EAAGgD,OAAOwF,EAAMD,IACtBxF,KAAK,IAAKmG,EAAKrC,WACpB9D,KAAK,KAAM,WACX,OAAOmG,EAAKvE,YAAYuE,EAAKxB,cAAc1C,EAAMM,MAAMqC,YAEvD5E,KAAK,KAAM,WACX,OAAOmG,EAAKhE,UAAUF,EAAM5C,SAI9BpC,EAAGgD,OAAOwF,EAAMD,GAAOe,WAAWA,YAChCH,UAAU,SACVI,OAAO,SAACU,EAAYR,GACpB,OAAOlB,IAAUkB,IACfzG,OAAO,QAAQ0G,QAAQ,UAAU,oGAlOL,u0BCczBhI,EAAa,IAtBR,WASd,SARD,SAAAwI,iGAActJ,CAAAL,KAAA2J,GACb3J,KAAKsI,aACJsB,GAAI,EACJrB,GAAI,IACJsB,GAAI,IACJC,GAAI,IACJC,GAAI,YAELnI,IAAA,qBAAAC,MAED,SAAmBmI,GAClB,IAAI/F,EAAQ8B,KAAKkE,IAAIC,SAASC,gBAAgBC,YAAa5G,OAAO6G,YAAc,GAEhF,QAAGtI,EAAEuI,SAASN,IACNA,EAAa/F,iGAfP,4zBCQL7C,EAAkB,IARR,6BAAAmJ,iGAAAlK,CAAAL,KAAAuK,SAAA3I,IAAA,0BAAAC,MACpB,SAAwB2I,GACvB,IAAIC,EAAQD,EAAOE,WAAWC,MAAM,KAEpC,OADAF,EAAM,GAAKA,EAAM,GAAGG,QAAQ,wBAAyB,KAC9CH,EAAMI,KAAK,oGAJC,yyBCgMVxJ,EAAiB,IAhMR,WAgBlB,SAfD,SAAAyJ,iGAAczK,CAAAL,KAAA8K,GAEb9K,KAAK+K,QACJ,UACA,UACA,UAEA,UACA,UACA,WAGD/K,KAAKgI,MAAQ,EACbhI,KAAKgL,WAAa,EAClBhL,KAAKiL,qBAAuB,YAC5BrJ,IAAA,QAAAC,MAED,WACC7B,KAAKgI,MAAQ,EACbhI,KAAKgL,WAAa,KAGnBpJ,IAAA,sBAAAC,MACA,WACC,OACCqJ,KAAMlL,KAAK+K,OAAO,GAClBI,IAAKnL,KAAK+K,OAAO,GACjBK,MAAOpL,KAAK+K,OAAO,GACnBM,OAAQrL,KAAK+K,OAAO,GACpBO,OAAQtL,KAAK+K,OAAO,GACpBQ,OAAQvL,KAAK+K,OAAO,OAErBnJ,IAAA,OAAAC,MAED,WAAO,IAAA9B,EAAAC,KAkGN,GAAGA,KAAKgI,MAAQhI,KAAK+K,OAAO5K,OAAQ,CACnC,IAAIqL,EAAgBxL,KAAK+K,OAAO/K,KAAKgI,OAGrC,OADAhI,KAAKgI,QACEwD,EAGHxL,KAAKgI,MAAQhI,KAAK+K,OAAO5K,QAAY,GACxCH,KAAKgL,aAGN,IAAIQ,EAAgBxL,KAAK+K,OAAO/K,KAAKgI,MAAQhI,KAAK+K,OAAO5K,QACrDsL,EA1EU,SAACC,GACf,IAAIC,EAAID,EAAOC,EACXC,EAAIF,EAAOE,EACXC,EAAIH,EAAOG,EAEfF,GAAK,IACLC,GAAK,IACLC,GAAK,IACL,IAEIC,EACAC,EACAC,EAJA/B,EAAMlE,KAAKkE,IAAI0B,EAAGC,EAAGC,GACrBI,EAAMlG,KAAKkG,IAAIN,EAAGC,EAAGC,GAMzB,GAFAC,EAAIC,EAAIC,GAAK/B,EAAMgC,GAAO,EAEvBhC,IAAQgC,EACVH,EAAIC,EAAI,MAEJ,CACJ,IAAIG,EAAIjC,EAAMgC,EAEd,OADAF,EAAIC,EAAI,GAAME,GAAK,EAAIjC,EAAMgC,GAAOC,GAAKjC,EAAMgC,GACvChC,GACP,KAAK0B,EAAGG,GAAKF,EAAIC,GAAKK,GAAKN,EAAIC,EAAI,EAAI,GAAI,MAC3C,KAAKD,EAAGE,GAAKD,EAAIF,GAAKO,EAAI,EAAG,MAC7B,KAAKL,EAAGC,GAAKH,EAAIC,GAAKM,EAAI,EAE3BJ,GAAK,EAGN,OACCA,EAAGA,EACHC,EAAGA,EACHC,EAAGA,GA0CMG,EAtCgBC,EAsCaZ,EArC3B,IAAIa,OAAO,sCACdC,KAAKF,IAMZT,EALOY,SAASH,EAASvE,OAAO,EAAG,GAAI,IAMvC+D,EALOW,SAASH,EAASvE,OAAO,EAAG,GAAI,IAMvCgE,EALOU,SAASH,EAASvE,OAAO,EAAG,GAAI,KAQlC,OA6DP4D,EAAIK,GAjCaU,EAiCCf,EAAIK,EAhCjBW,EAAoB,IAATD,EACXE,EAAU3M,EAAKkL,qBAAuBlL,EAAKiL,YAG/CyB,GADAC,EAAoB,IADpBA,GAAU,GACgB,IAIZ,IACbD,GAAY,KAGNA,EAAW,KAsBnBhB,EAAIM,EAlBmB,WACtB,IAAIW,EAAU3M,EAAKkL,qBAAuBlL,EAAKiI,MAI/C,MADY,GAAiB,IAF7B0E,GAAU,GAgBHC,GACRlB,EAAIO,EAVmB,WACtB,IAAIU,EAAU3M,EAAKkL,qBAAuBlL,EAAKiI,MAI/C,MADY,IAAiB,IAF7B0E,GAAU,GAQHE,GAER,IA9DelB,EACXmB,EAwBaL,EACZC,EACAC,EA3CqBN,EA8EtBU,GA9DWpB,EAvFD,SAACA,GACf,IAAIC,EACAC,EACAC,EACAC,EAAIJ,EAAOI,EACXC,EAAIL,EAAOK,EACXC,EAAIN,EAAOM,EAEf,GAAS,IAAND,EACFJ,EAAIC,EAAIC,EAAIG,MAER,CACJ,IAAIe,EAAU,SAACC,EAAGC,EAAGC,GAGpB,OAFGA,EAAI,IAAGA,GAAK,GACZA,EAAI,IAAGA,GAAK,GACZA,EAAI,EAAE,EAAUF,EAAc,GAATC,EAAID,GAASE,EAClCA,EAAI,GAAYD,EAChBC,EAAI,EAAE,EAAUF,GAAKC,EAAID,IAAM,EAAE,EAAIE,GAAK,EACtCF,GAGJC,EAAIjB,EAAI,GAAMA,GAAK,EAAID,GAAKC,EAAID,EAAIC,EAAID,EACxCiB,EAAI,EAAIhB,EAAIiB,EAChBtB,EAAIoB,EAAQC,EAAGC,EAAGnB,EAAI,EAAE,GACxBF,EAAImB,EAAQC,EAAGC,EAAGnB,GAClBD,EAAIkB,EAAQC,EAAGC,EAAGnB,EAAI,EAAE,GAGzB,OACCH,EAAG5F,KAAKoH,MAAU,IAAJxB,GACdC,EAAG7F,KAAKoH,MAAU,IAAJvB,GACdC,EAAG9F,KAAKoH,MAAU,IAAJtB,IAsHMuB,CAAS3B,GAxDvB,KALHoB,EAAiB,SAACC,GACrB,IAAIO,EAAMP,EAAMpC,SAAS,IACzB,OAAqB,GAAd2C,EAAIlN,OAAc,IAAMkN,EAAMA,IAGV3B,EAAOC,GAAKkB,EAAenB,EAAOE,GAAKiB,EAAenB,EAAOG,IA0DzF,OADA7L,KAAKgI,QACE8E,iGA3LU,+BCApB,IAAAQ,GACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,QAAA,IACAC,WAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,gBAAA,IACAC,aAAA,IACAC,gBAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,UAAA,IACAC,aAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,WAAA,IACAC,cAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,WAAA,IACAC,cAAA,IACAC,UAAA,IACAC,aAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,YAAA,IACAC,eAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,QAAA,IACAC,WAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,UAAA,IACAC,aAAA,IACAC,QAAA,IACAC,WAAA,IACAC,OAAA,IACAC,UAAA,IACAC,QAAA,IACAC,WAAA,IACAC,QAAA,IACAC,aAAA,IACAC,gBAAA,IACAC,WAAA,IACAC,UAAA,IACAC,aAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,OAAA,IACAC,YAAA,IACAC,eAAA,IACAC,UAAA,IACAC,OAAA,IACAC,UAAA,IACAC,aAAA,IACAC,gBAAA,IACAC,OAAA,IACAC,UAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,IACAC,UAAA,IACAC,aAAA,KAIA,SAAAC,EAAAC,GACA,IAAAC,EAAAC,EAAAF,GACA,OAAAG,EAAAF,GAEA,SAAAC,EAAAF,GACA,IAAAG,EAAAC,EAAAxR,EAAAoR,GAAA,CACA,IAAAK,EAAA,IAAAC,MAAA,uBAAAN,EAAA,KAEA,MADAK,EAAAE,KAAA,mBACAF,EAEA,OAAAzR,EAAAoR,GAEAD,EAAAS,KAAA,WACA,OAAAC,OAAAD,KAAA5R,IAEAmR,EAAAW,QAAAR,EACAS,EAAAC,QAAAb,EACAA,EAAAE,GAAA","file":"block-19.430117f348aedc9992ce.js","sourcesContent":["const NS = 'ChartBlock';\nconst CLS = 'chartBlock';\n\nlet d3 = require('d3');\nlet uuidv4 = require('uuid/v4');\nlet moment = require('moment');\n\nimport { mediaQuery } from '../../../../global/js/wool/mediaQuery';\nimport { numberFormatter } from '../../../../global/js/wool/numberFormatter';\nimport { colorGenerator } from '../../../../global/js/wool/colorGenerator';\n\nexport class ChartBlock {\n\tconstructor(element, className = CLS) {\n\t\tthis.element = element;\n\t\tthis.$element = $(element);\n\t\tthis.$chart = this.$element.find(`.chart`);\n\n\t\tthis.setChartId();\n\t\tthis.setEmptyMessages();\n\t\tthis.setEmptyData();\n\n\t\tthis.isDataEmpty = false;\n\t\tthis.margin = {\n\t\t\ttop: 30,\n\t\t\tright: 30,\n\t\t\tbottom: 50,\n\t\t\tleft: 50\n\t\t};\n\n\t\tthis.mediaQuery = mediaQuery;\n\t\tthis.numberFormatter = numberFormatter;\n\t\tthis.colorGenerator = colorGenerator;\n\n\t\tthis.heightRatio = 0.66; // Height ratio relative to width, in this case it would be 3:2\n\n\t\t// Updates the chart from an external source\n\t\tthis.$element.on(`${className}.update`, (event, params) => {\n\t\t\tthis.updateChartData(params);\n\t\t});\n\t}\n\n\tupdateChartData(params) {\n\t\tlet data = params.data;\n\n\t\tif(!_.isNil(data)) {\n\t\t\tthis.isDataEmpty = false;\n\t\t\tthis.data = data;\n\t\t\tthis.removeMessage();\n\t\t\tthis.initChart();\n\t\t}\n\t\telse {\n\t\t\tif(!params.isEmpty) {\n\t\t\t\tconsole.error(`${NS}::Error`, 'Chart data could not be loaded.');\n\t\t\t}\n\t\t\tthis.isDataEmpty = true;\n\t\t\tthis.data = _.cloneDeep(this.emptyData);\n\t\t\tthis.initChart();\n\t\t\tthis.removeMessage();\n\n\t\t\tif(params.isEmpty) {\n\t\t\t\tthis.appendMessage(false);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.appendMessage(true);\n\t\t\t}\n\t\t}\n\t}\n\n\t// Ensures that the chart contains a unique id\n\tsetChartId() {\n\t\tthis.chartId = uuidv4();\n\t\tthis.$chart.attr('data-uuid', this.chartId);\n\t}\n\n\tgetChartNode() {\n\t\treturn d3.select(`[data-uuid=\"${this.chartId}\"]`);\n\t}\n\n\t// Sets the generic error messages\n\tsetEmptyMessages() {\n\t\tthis.emptyMessage = !_.isNil(this.$chart.attr('data-empty-message')) ? this.$chart.attr('data-empty-message') : 'No items loaded';\n\t\tthis.errorMessage = !_.isNil(this.$chart.attr('data-error-message')) ? this.$chart.attr('data-error-message') : 'Error in loading chart…';\n\t}\n\n\t// Sets empty data for the chart to render. Overridable\n\tsetEmptyData() {\n\t\tlet values = [];\n\n\t\tfor(let i = 0; i < 6; i++) {\n\t\t\tvalues.push({\n\t\t\t\txValue: i + 1,\n\t\t\t\tyValue: i + 1\n\t\t\t});\n\t\t}\n\n\t\tthis.emptyData = values;\n\t}\n\n\tappendMessage(isError) {\n\t\tlet emptyMessage = '';\n\t\tif(isError) {\n\t\t\temptyMessage = this.errorMessage;\n\t\t}\n\t\telse {\n\t\t\temptyMessage = this.emptyMessage;\n\t\t}\n\n\t\tthis.$chart.append(`
${emptyMessage}
`);\n\t}\n\n\tremoveMessage() {\n\t\tthis.$chart.remove(`.chart-message`);\n\t}\n\n\t// Initializes the chart by revealing it, drawing it and implementing an event that redraws it when the window resizes\n\tinitChart() {\n\t\tthis.$chart.css({ visibility: 'visible' });\n\t\tthis.drawChart();\n\t\t$(window).on('resize', _.debounce(() => {\n\t\t\tthis.drawChart();\n\t\t}, 500));\n\t}\n\n\t// Overridable draw chart function\n\tdrawChart() {\n\t\tthis.clearSvg();\n\t\tthis.setChartDimensions();\n\t\tthis.drawSvg();\n\n\t\tthis.defineXAxesScales();\n\t\tthis.defineYAxesScales();\n\n\t\tthis.drawXAxes();\n\t\tthis.drawYAxes();\n\t}\n\n\tclearSvg() {\n\t\td3.select(`[data-uuid=\"${this.chartId}\"]`).select('svg').remove(); // Removes the chart\n\t}\n\n\tsetChartDimensions() {\n\t\tthis.width = this.$element.width() - this.margin.left - this.margin.right;\n\t\tthis.height = (this.$element.width() * this.heightRatio) - this.margin.top - this.margin.bottom;\n\t}\n\n\tdrawSvg() {\n\t\tthis.svg = d3.select(`[data-uuid=\"${this.chartId}\"]`)\n\t\t\t.append('svg')\n\t\t\t.attr('width', this.width + this.margin.left + this.margin.right)\n\t\t\t.attr('height', this.height + this.margin.top + this.margin.bottom)\n\t\t\t.append('g')\n\t\t\t.attr('transform', `translate(${this.margin.left},${this.margin.top})`);\n\t}\n\n\tdefineXAxesScales() {\n\t\tthis.xAxisBottom = d3.scaleLinear()\n\t\t\t.range([0, this.width])\n\t\t\t.domain(d3.extent(this.data, (datum) => {\n\t\t\t\treturn datum.xValue;\n\t\t\t})).nice();\n\t}\n\n\tdefineYAxesScales() {\n\t\tthis.yAxisLeft = d3.scaleLinear()\n\t\t\t.range([this.height, 0])\n\t\t\t.domain(d3.extent(this.data, (datum) => {\n\t\t\t\treturn datum.yValue;\n\t\t\t})).nice();\n\t}\n\n\tdrawXAxes() {\n\t\tthis.svg.append('g')\n\t\t\t.attr('class', 'x-axis x-axis--bottom')\n\t\t\t.attr('transform', `translate(0, ${this.height})`)\n\t\t\t.call(d3.axisBottom(this.xAxisBottom));\n\t}\n\n\tdrawYAxes() {\n\t\tthis.svg.append('g')\n\t\t\t.attr('class', 'y-axis')\n\t\t\t.call(d3.axisLeft(this.yAxisLeft));\n\t}\n\n\t// Util method to format moment dates\n\tgetMomentDate(date, format = 'DD/MM/YYYY') {\n\t\treturn moment(date, format);\n\t}\n\n\t// Creates an inner tspan element for the text element and clips the text\n\ttextWrap(textElement, maxWidth, x, y) {\n\t\tlet words = textElement.text();\n\t\tlet tspan = textElement.text(null).append('tspan').text(words).attr('x', x).attr('y', y);\n\n\t\tlet textLength = tspan.node().getComputedTextLength();\n\t\tlet text = tspan.text();\n\t\twhile(textLength > maxWidth && text.length > 0) {\n\t\t\ttext = text.slice(0, -1);\n\t\t\ttspan.text(text + '…');\n\t\t\ttextLength = tspan.node().getComputedTextLength();\n\t\t}\n\t}\n\n\t// Gets an appropriate tick interval depending on the range\n\tgetLinearTick(range, power = 0, tickCount = 20) {\n\t\tif(range !== 0) {\n\t\t\tlet intervals = [0.1, 0.2, 0.5, 1, 2, 5];\n\t\t\tfor(let i = 0; i < intervals.length; i++) {\n\t\t\t\tif((range / (intervals[i] * Math.pow(10, power))) > tickCount) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn intervals[i] * Math.pow(10, power);\n\t\t\t\t}\n\t\t\t}\n\t\t\tpower += 1;\n\t\t\treturn this.getLinearTick(range, power, tickCount);\n\t\t}\n\t\treturn 1;\n\t}\n}\n","const NS = 'MarketSummaryChartBlock';\nconst CLS = 'marketSummaryChartBlock';\n\nimport { ChartBlock } from '../../chartBlock/js/chartBlock';\n\nlet moment = require('moment');\nlet d3 = require('d3');\n\nexport class MarketSummaryChartBlock extends ChartBlock {\n\tconstructor(element) {\n\t\tsuper(element, CLS);\n\n\t\tthis.margin = {\n\t\t\ttop: 30,\n\t\t\tright: 20,\n\t\t\tbottom: 30,\n\t\t\tleft: 50\n\t\t};\n\n\t\tthis.yTickValue = 100;\n\t\tthis.dotRadius = 3;\n\t\tthis.dotFocusRadius = 3;\n\t}\n\n\tsetEmptyData() {\n\t\t// Placeholder data used, when there are no actual values…\n\t\tlet placeholderData = [];\n\t\tlet initialPlaceholderDataValue = 1200;\n\t\tlet initialPlaceholderIncrementValue = 100;\n\n\t\tfor(let i = 0; i < 12; i++) {\n\t\t\tplaceholderData.push({\n\t\t\t\tvalue: initialPlaceholderDataValue + (i * initialPlaceholderIncrementValue),\n\t\t\t\tdate: moment().month(i).day(1)\n\t\t\t});\n\t\t}\n\n\t\tthis.emptyData = placeholderData;\n\t}\n\n\tdrawChart() {\n\t\tthis.clearSvg();\n\t\tthis.setChartDimensions();\n\n\t\tif(this.$tooltip && this.$tooltip.length > 0) {\n\t\t\tthis.$tooltip.remove(); // Removes the tooltip\n\t\t}\n\n\t\tthis.drawSvg();\n\t\tthis.drawTooltop();\n\n\t\tthis.defineXAxesScales();\n\t\tthis.defineYAxesScales();\n\n\t\tthis.drawXAxes();\n\t\tthis.drawYAxes();\n\n\t\tif(!this.isDataEmpty) {\n\t\t\tthis.drawPaths();\n\t\t\tthis.drawPoints();\n\t\t}\n\t}\n\n\tdrawTooltop() {\n\t\tthis.tooltip = this.getChartNode()\n\t\t\t.append('div')\n\t\t\t.attr('class', `${CLS}-tooltip`);\n\n\t\tthis.$tooltip = this.$element.find(`.${CLS}-tooltip`);\n\t}\n\n\tdefineXAxesScales() {\n\t\tthis.xAxisBottom = d3.scaleTime()\n\t\t\t.range([0, this.width])\n\t\t\t.domain(d3.extent(this.data, (datum) => {\n\t\t\t\treturn this.getMomentDate(datum.date).toDate();\n\t\t\t})).nice();\n\n\t\tthis.xAxisTop = d3.scaleTime()\n\t\t\t.range([0, this.width])\n\t\t\t.domain(d3.extent(this.data, (datum) => {\n\t\t\t\treturn this.getMomentDate(datum.date).toDate();\n\t\t\t})).nice();\n\t}\n\n\tdefineYAxesScales() {\n\t\tthis.yMaxTickValue = (Math.ceil((_.maxBy(this.data, (datum) => {\n\t\t\treturn datum.value;\n\t\t}).value / this.yTickValue)) * this.yTickValue) + this.yTickValue;\n\n\t\tthis.yMinTickValue = (Math.floor((_.minBy(this.data, (datum) => {\n\t\t\treturn datum.value;\n\t\t}).value / this.yTickValue)) * this.yTickValue) - this.yTickValue;\n\n\t\tthis.yAxisLeft = d3.scaleLinear()\n\t\t\t.range([this.height, 0])\n\t\t\t.domain([\n\t\t\t\tthis.yMinTickValue,\n\t\t\t\tthis.yMaxTickValue\n\t\t\t]);\n\t}\n\n\tdrawXAxes() {\n\t\tthis.svg.append('g')\n\t\t\t.attr('class', 'x-axis x-axis--bottom')\n\t\t\t.attr('transform', `translate(0,${this.height})`)\n\t\t\t.call(d3.axisBottom(this.xAxisBottom).tickFormat((date) => {\n\t\t\t\treturn moment(date).format('MMMM').substr(0, 1);\n\t\t\t}).tickSize(-(this.height)));\n\n\t\tif(!this.isDataEmpty) {\n\t\t\tlet yAxisOffset = 5; // Slight aesthetic margin tweak\n\n\t\t\tthis.svg.append('g')\n\t\t\t\t.attr('class', 'x-axis x-axis--top')\n\t\t\t\t.attr('transform', `translate(0,${yAxisOffset})`)\n\t\t\t\t.call(d3.axisTop(this.xAxisTop).tickFormat((date, index, nodes) => {\n\t\t\t\t\tif(index === 0) {\n\t\t\t\t\t\treturn moment(date).format('YYYY');\n\t\t\t\t\t}\n\t\t\t\t\tlet previousIndex = d3.select(nodes[index - 1]);\n\t\t\t\t\tif((index > 0 && (moment(date).year() > moment(previousIndex.data()[0]).year()))) {\n\t\t\t\t\t\t// Translate the first elemement a bit to the left as the second element has a value\n\t\t\t\t\t\tif(index === 1) {\n\t\t\t\t\t\t\td3.select(nodes[0]).attr('style', `transform: translate(-6px, -${yAxisOffset}px)`);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn moment(date).format('YYYY');\n\t\t\t\t\t}\n\n\t\t\t\t\treturn '';\n\t\t\t\t}));\n\t\t}\n\t}\n\n\tdrawYAxes() {\n\t\tthis.svg.append('g')\n\t\t\t.attr('class', 'y-axis')\n\t\t\t.call(d3.axisLeft(this.yAxisLeft).tickFormat((value, index) => {\n\t\t\t\tif(this.mediaQuery.breakpointMaxWidth(this.mediaQuery.BREAKPOINTS.SM)) {\n\t\t\t\t\tif(index % 4 === 1) {\n\t\t\t\t\t\treturn value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif(index % 2 === 1) {\n\t\t\t\t\t\treturn value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn '';\n\t\t\t}).tickValues(d3.range(this.yMinTickValue, this.yMaxTickValue, this.yTickValue)));\n\t}\n\n\t// Create plot-line\n\tdrawPaths() {\n\t\tthis.svg.append('path')\n\t\t\t.datum(this.data)\n\t\t\t.attr('class', 'plot-line')\n\t\t\t.attr('d', d3.line()\n\t\t\t\t.x((datum) => {\n\t\t\t\t\treturn this.xAxisBottom(this.getMomentDate(datum.date).toDate());\n\t\t\t\t})\n\t\t\t\t.y((datum) => {\n\t\t\t\t\treturn this.yAxisLeft(datum.value);\n\t\t\t\t})\n\t\t\t);\n\t}\n\n\t// Create dots\n\tdrawPoints() {\n\t\tthis.svg.append('g')\n\t\t\t.selectAll('dot')\n\t\t\t.data(this.data)\n\t\t\t.enter()\n\t\t\t.append('circle')\n\t\t\t.attr('class', 'plot-circle')\n\t\t\t.attr('cx', (datum) => {\n\t\t\t\treturn this.xAxisBottom(this.getMomentDate(datum.date).toDate());\n\t\t\t})\n\t\t\t.attr('cy', (datum) => {\n\t\t\t\treturn this.yAxisLeft(datum.value);\n\t\t\t})\n\t\t\t.attr('r', this.dotRadius)\n\t\t\t.on('mouseover', (datum, index, nodes) => {\n\t\t\t\tthis.tooltip.style('display', 'block');\n\n\t\t\t\t// Have the dots grow\n\t\t\t\tlet circle = d3.select(nodes[index]);\n\n\t\t\t\tcircle.attr('r', this.dotFocusRadius)\n\t\t\t\t\t.attr('cx', () => {\n\t\t\t\t\t\treturn this.xAxisBottom(this.getMomentDate(datum.date).toDate());\n\t\t\t\t\t})\n\t\t\t\t\t.attr('cy', () => {\n\t\t\t\t\t\treturn this.yAxisLeft(datum.value);\n\t\t\t\t\t});\n\n\t\t\t\t// Add active class to the related tick\n\t\t\t\td3.select(nodes[index].parentNode.parentNode)\n\t\t\t\t\t.selectAll('.tick')\n\t\t\t\t\t.filter((innerData, innerIndex) => {\n\t\t\t\t\t\treturn index === innerIndex;\n\t\t\t\t\t}).select('line').classed('active', true);\n\t\t\t})\n\t\t\t.on('mousemove', (datum, index, nodes) => {\n\t\t\t\tlet month = this.getMomentDate(datum.date).format('MMM');\n\t\t\t\tlet value = datum.value;\n\n\t\t\t\tthis.tooltip.html(`
${month}
${value}
`);\n\t\t\t\tlet tooltipWidth = this.$tooltip.outerWidth();\n\t\t\t\t// Subtract the left margin alongside half of the tooltip width. This horizontally centers the tooltip\n\t\t\t\tlet leftPosition = (d3.mouse(nodes[index])[0] + this.margin.left) - (tooltipWidth / 2);\n\t\t\t\tlet topPosition = (d3.mouse(nodes[index])[1]) - this.margin.top - 10;\n\n\t\t\t\tthis.tooltip.style('left', `${leftPosition}px`)\n\t\t\t\t\t.style('top', `${topPosition}px`);\n\t\t\t})\n\t\t\t.on('mouseleave', (datum, index, nodes) => {\n\t\t\t\tthis.tooltip.style('display', 'none');\n\n\t\t\t\t// Revert the dot size\n\t\t\t\tlet circle = d3.select(nodes[index]);\n\t\t\t\tcircle.attr('r', this.dotRadius)\n\t\t\t\t\t.attr('cx', () => {\n\t\t\t\t\t\treturn this.xAxisBottom(this.getMomentDate(datum.date).toDate());\n\t\t\t\t\t})\n\t\t\t\t\t.attr('cy', () => {\n\t\t\t\t\t\treturn this.yAxisLeft(datum.value);\n\t\t\t\t\t});\n\n\t\t\t\t// Revert active class to the related tick\n\t\t\t\td3.select(nodes[index].parentNode.parentNode)\n\t\t\t\t\t.selectAll('.tick')\n\t\t\t\t\t.filter((innerDatum, innerIndex) => {\n\t\t\t\t\t\treturn index === innerIndex;\n\t\t\t\t\t}).select('line').classed('active', false);\n\t\t\t});\n\t}\n}\n","class MediaQuery {\n\tconstructor() {\n\t\tthis.BREAKPOINTS = {\n\t\t\tXS: 0,\n\t\t\tSM: 576,\n\t\t\tMD: 768,\n\t\t\tLG: 992,\n\t\t\tXL: 1200\n\t\t};\n\t}\n\n\tbreakpointMaxWidth(breakpoint) {\n\t\tlet width = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n\n\t\tif(_.isFinite(breakpoint)) {\n\t\t\treturn breakpoint > width;\n\t\t}\n\t\tconsole.error(`MediaQuery::Error`, 'Please supply a valid breakpoint');\n\t\treturn false;\n\t}\n}\n\nexport let mediaQuery = new MediaQuery();\n","class NumberFormatter {\n\tformatNumbersWithCommas(number) {\n\t\tlet parts = number.toString().split('.');\n\t\tparts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n\t\treturn parts.join('.');\n\t}\n}\n\nexport let numberFormatter = new NumberFormatter();\n","class ColorGenerator {\n\tconstructor() {\n\t\t// Hardcoded initial colors\n\t\tthis.colors = [\n\t\t\t'#0c7fbb',\n\t\t\t'#de4443',\n\t\t\t'#77b559',\n\n\t\t\t'#dc7a30',\n\t\t\t'#e8b231',\n\t\t\t'#861cc3'\n\t\t];\n\n\t\tthis.index = 0;\n\t\tthis.cycleIndex = 0;\n\t\tthis.goldenRatioConjugate = 1.618;\n\t}\n\n\treset() {\n\t\tthis.index = 0;\n\t\tthis.cycleIndex = 0;\n\t}\n\n\t// Return the default colors\n\tgetPredefinedColors() {\n\t\treturn {\n\t\t\tblue: this.colors[0],\n\t\t\tred: this.colors[1],\n\t\t\tgreen: this.colors[2],\n\t\t\torange: this.colors[3],\n\t\t\tyellow: this.colors[4],\n\t\t\tpurple: this.colors[5]\n\t\t};\n\t}\n\n\tnext() {\n\t\tlet hslToRgb = (object) => {\n\t\t\tlet r;\n\t\t\tlet g;\n\t\t\tlet b;\n\t\t\tlet h = object.h;\n\t\t\tlet s = object.s;\n\t\t\tlet l = object.l;\n\n\t\t\tif(s === 0) {\n\t\t\t\tr = g = b = l; // achromatic\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlet hue2rgb = (p, q, t) => {\n\t\t\t\t\tif(t < 0) t += 1;\n\t\t\t\t\tif(t > 1) t -= 1;\n\t\t\t\t\tif(t < 1/6) return p + (q - p) * 6 * t;\n\t\t\t\t\tif(t < 1/2) return q;\n\t\t\t\t\tif(t < 2/3) return p + (q - p) * (2/3 - t) * 6;\n\t\t\t\t\treturn p;\n\t\t\t\t};\n\n\t\t\t\tlet q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n\t\t\t\tlet p = 2 * l - q;\n\t\t\t\tr = hue2rgb(p, q, h + 1/3);\n\t\t\t\tg = hue2rgb(p, q, h);\n\t\t\t\tb = hue2rgb(p, q, h - 1/3);\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tr: Math.round(r * 255),\n\t\t\t\tg: Math.round(g * 255),\n\t\t\t\tb: Math.round(b * 255)\n\t\t\t};\n\t\t};\n\n\t\tlet rgbToHsl = (object) => {\n\t\t\tlet r = object.r;\n\t\t\tlet g = object.g;\n\t\t\tlet b = object.b;\n\n\t\t\tr /= 255;\n\t\t\tg /= 255;\n\t\t\tb /= 255;\n\t\t\tlet max = Math.max(r, g, b);\n\t\t\tlet min = Math.min(r, g, b);\n\t\t\tlet h;\n\t\t\tlet s;\n\t\t\tlet l;\n\t\t\th = s = l = (max + min) / 2;\n\n\t\t\tif(max === min) {\n\t\t\t\th = s = 0; // achromatic\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlet d = max - min;\n\t\t\t\ts = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\t\t\t\tswitch (max) {\n\t\t\t\t\tcase r: h = (g - b) / d + (g < b ? 6 : 0); break;\n\t\t\t\t\tcase g: h = (b - r) / d + 2; break;\n\t\t\t\t\tcase b: h = (r - g) / d + 4; break;\n\t\t\t\t}\n\t\t\t\th /= 6;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\th: h,\n\t\t\t\ts: s,\n\t\t\t\tl: l\n\t\t\t};\n\t\t};\n\n\t\tlet hexColorToRgbObject = (hexColor) => {\n\t\t\tlet regex = new RegExp('^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$');\n\t\t\tif(regex.test(hexColor)) {\n\t\t\t\tlet r = parseInt(hexColor.substr(1, 2), 16);\n\t\t\t\tlet g = parseInt(hexColor.substr(3, 2), 16);\n\t\t\t\tlet b = parseInt(hexColor.substr(5, 2), 16);\n\n\t\t\t\treturn {\n\t\t\t\t\tr: r,\n\t\t\t\t\tg: g,\n\t\t\t\t\tb: b\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn null;\n\t\t};\n\n\t\tlet rgbToHex = (object) => {\n\t\t\tlet componentToHex = (color) => {\n\t\t\t\tlet hex = color.toString(16);\n\t\t\t\treturn hex.length == 1 ? '0' + hex : hex;\n\t\t\t};\n\n\t\t\treturn '#' + componentToHex(object.r) + componentToHex(object.g) + componentToHex(object.b);\n\t\t};\n\n\t\t// Return the initial 12 colors\n\t\tif(this.index < this.colors.length) {\n\t\t\tlet selectedColor = this.colors[this.index];\n\n\t\t\tthis.index++;\n\t\t\treturn selectedColor;\n\t\t}\n\t\telse {\n\t\t\tif((this.index % this.colors.length) === 0) {\n\t\t\t\tthis.cycleIndex++;\n\t\t\t}\n\n\t\t\tlet selectedColor = this.colors[this.index % this.colors.length];\n\t\t\tlet hsl = rgbToHsl(hexColorToRgbObject(selectedColor));\n\n\t\t\t// Retrieves a new hue relative to the predefined hue with a ±30° color angle.\n\t\t\tlet getNewHue = (oldHue) => {\n\t\t\t\tlet hueWheel = oldHue * 360; // Hue converted into degrees\n\t\t\t\tlet offset = (this.goldenRatioConjugate * this.cycleIndex); // Multipliy the goldenRatioConjugate with the cycleIncrement\n\t\t\t\toffset %= 1; // Modulo operator that fits between 0–1\n\t\t\t\toffset = ((offset * 60) - 30); // Offset that is between ±60° of the color angle.\n\t\t\t\thueWheel += offset;\n\n\t\t\t\t// Ensure a positive value for the wheel\n\t\t\t\tif(hueWheel < 0) {\n\t\t\t\t\thueWheel += 360;\n\t\t\t\t}\n\n\t\t\t\treturn hueWheel / 360;\n\t\t\t};\n\n\t\t\t// Gets a new saturation that ranges between 20% to 100%\n\t\t\tlet getNewSaturation = () => {\n\t\t\t\tlet offset = (this.goldenRatioConjugate * this.index);\n\t\t\t\toffset %= 1;\n\n\t\t\t\tlet value = 0.20 + (offset * 0.8);\n\t\t\t\treturn value;\n\t\t\t};\n\n\t\t\t// Gets a new value that ranges between 25% to 75%\n\t\t\tlet getNewLumination = () => {\n\t\t\t\tlet offset = (this.goldenRatioConjugate * this.index);\n\t\t\t\toffset %= 1;\n\n\t\t\t\tlet value = 0.25 + (offset * 0.5);\n\t\t\t\treturn value;\n\t\t\t};\n\n\t\t\thsl.h = getNewHue(hsl.h);\n\t\t\thsl.s = getNewSaturation();\n\t\t\thsl.l = getNewLumination();\n\n\t\t\tlet color = rgbToHex(hslToRgb(hsl));\n\t\t\tthis.index++;\n\t\t\treturn color;\n\t\t}\n\t}\n}\n\nexport let colorGenerator = new ColorGenerator();\n","var map = {\n\t\"./af\": 515,\n\t\"./af.js\": 515,\n\t\"./ar\": 516,\n\t\"./ar-dz\": 517,\n\t\"./ar-dz.js\": 517,\n\t\"./ar-kw\": 518,\n\t\"./ar-kw.js\": 518,\n\t\"./ar-ly\": 519,\n\t\"./ar-ly.js\": 519,\n\t\"./ar-ma\": 520,\n\t\"./ar-ma.js\": 520,\n\t\"./ar-ps\": 521,\n\t\"./ar-ps.js\": 521,\n\t\"./ar-sa\": 522,\n\t\"./ar-sa.js\": 522,\n\t\"./ar-tn\": 523,\n\t\"./ar-tn.js\": 523,\n\t\"./ar.js\": 516,\n\t\"./az\": 524,\n\t\"./az.js\": 524,\n\t\"./be\": 525,\n\t\"./be.js\": 525,\n\t\"./bg\": 526,\n\t\"./bg.js\": 526,\n\t\"./bm\": 527,\n\t\"./bm.js\": 527,\n\t\"./bn\": 528,\n\t\"./bn-bd\": 529,\n\t\"./bn-bd.js\": 529,\n\t\"./bn.js\": 528,\n\t\"./bo\": 530,\n\t\"./bo.js\": 530,\n\t\"./br\": 531,\n\t\"./br.js\": 531,\n\t\"./bs\": 532,\n\t\"./bs.js\": 532,\n\t\"./ca\": 533,\n\t\"./ca.js\": 533,\n\t\"./cs\": 534,\n\t\"./cs.js\": 534,\n\t\"./cv\": 535,\n\t\"./cv.js\": 535,\n\t\"./cy\": 536,\n\t\"./cy.js\": 536,\n\t\"./da\": 537,\n\t\"./da.js\": 537,\n\t\"./de\": 538,\n\t\"./de-at\": 539,\n\t\"./de-at.js\": 539,\n\t\"./de-ch\": 540,\n\t\"./de-ch.js\": 540,\n\t\"./de.js\": 538,\n\t\"./dv\": 541,\n\t\"./dv.js\": 541,\n\t\"./el\": 542,\n\t\"./el.js\": 542,\n\t\"./en-au\": 543,\n\t\"./en-au.js\": 543,\n\t\"./en-ca\": 544,\n\t\"./en-ca.js\": 544,\n\t\"./en-gb\": 545,\n\t\"./en-gb.js\": 545,\n\t\"./en-ie\": 546,\n\t\"./en-ie.js\": 546,\n\t\"./en-il\": 547,\n\t\"./en-il.js\": 547,\n\t\"./en-in\": 548,\n\t\"./en-in.js\": 548,\n\t\"./en-nz\": 549,\n\t\"./en-nz.js\": 549,\n\t\"./en-sg\": 550,\n\t\"./en-sg.js\": 550,\n\t\"./eo\": 551,\n\t\"./eo.js\": 551,\n\t\"./es\": 552,\n\t\"./es-do\": 553,\n\t\"./es-do.js\": 553,\n\t\"./es-mx\": 554,\n\t\"./es-mx.js\": 554,\n\t\"./es-us\": 555,\n\t\"./es-us.js\": 555,\n\t\"./es.js\": 552,\n\t\"./et\": 556,\n\t\"./et.js\": 556,\n\t\"./eu\": 557,\n\t\"./eu.js\": 557,\n\t\"./fa\": 558,\n\t\"./fa.js\": 558,\n\t\"./fi\": 559,\n\t\"./fi.js\": 559,\n\t\"./fil\": 560,\n\t\"./fil.js\": 560,\n\t\"./fo\": 561,\n\t\"./fo.js\": 561,\n\t\"./fr\": 562,\n\t\"./fr-ca\": 563,\n\t\"./fr-ca.js\": 563,\n\t\"./fr-ch\": 564,\n\t\"./fr-ch.js\": 564,\n\t\"./fr.js\": 562,\n\t\"./fy\": 565,\n\t\"./fy.js\": 565,\n\t\"./ga\": 566,\n\t\"./ga.js\": 566,\n\t\"./gd\": 567,\n\t\"./gd.js\": 567,\n\t\"./gl\": 568,\n\t\"./gl.js\": 568,\n\t\"./gom-deva\": 569,\n\t\"./gom-deva.js\": 569,\n\t\"./gom-latn\": 570,\n\t\"./gom-latn.js\": 570,\n\t\"./gu\": 571,\n\t\"./gu.js\": 571,\n\t\"./he\": 572,\n\t\"./he.js\": 572,\n\t\"./hi\": 573,\n\t\"./hi.js\": 573,\n\t\"./hr\": 574,\n\t\"./hr.js\": 574,\n\t\"./hu\": 575,\n\t\"./hu.js\": 575,\n\t\"./hy-am\": 576,\n\t\"./hy-am.js\": 576,\n\t\"./id\": 577,\n\t\"./id.js\": 577,\n\t\"./is\": 578,\n\t\"./is.js\": 578,\n\t\"./it\": 579,\n\t\"./it-ch\": 580,\n\t\"./it-ch.js\": 580,\n\t\"./it.js\": 579,\n\t\"./ja\": 581,\n\t\"./ja.js\": 581,\n\t\"./jv\": 582,\n\t\"./jv.js\": 582,\n\t\"./ka\": 583,\n\t\"./ka.js\": 583,\n\t\"./kk\": 584,\n\t\"./kk.js\": 584,\n\t\"./km\": 585,\n\t\"./km.js\": 585,\n\t\"./kn\": 586,\n\t\"./kn.js\": 586,\n\t\"./ko\": 587,\n\t\"./ko.js\": 587,\n\t\"./ku\": 588,\n\t\"./ku-kmr\": 589,\n\t\"./ku-kmr.js\": 589,\n\t\"./ku.js\": 588,\n\t\"./ky\": 590,\n\t\"./ky.js\": 590,\n\t\"./lb\": 591,\n\t\"./lb.js\": 591,\n\t\"./lo\": 592,\n\t\"./lo.js\": 592,\n\t\"./lt\": 593,\n\t\"./lt.js\": 593,\n\t\"./lv\": 594,\n\t\"./lv.js\": 594,\n\t\"./me\": 595,\n\t\"./me.js\": 595,\n\t\"./mi\": 596,\n\t\"./mi.js\": 596,\n\t\"./mk\": 597,\n\t\"./mk.js\": 597,\n\t\"./ml\": 598,\n\t\"./ml.js\": 598,\n\t\"./mn\": 599,\n\t\"./mn.js\": 599,\n\t\"./mr\": 600,\n\t\"./mr.js\": 600,\n\t\"./ms\": 601,\n\t\"./ms-my\": 602,\n\t\"./ms-my.js\": 602,\n\t\"./ms.js\": 601,\n\t\"./mt\": 603,\n\t\"./mt.js\": 603,\n\t\"./my\": 604,\n\t\"./my.js\": 604,\n\t\"./nb\": 605,\n\t\"./nb.js\": 605,\n\t\"./ne\": 606,\n\t\"./ne.js\": 606,\n\t\"./nl\": 607,\n\t\"./nl-be\": 608,\n\t\"./nl-be.js\": 608,\n\t\"./nl.js\": 607,\n\t\"./nn\": 609,\n\t\"./nn.js\": 609,\n\t\"./oc-lnc\": 610,\n\t\"./oc-lnc.js\": 610,\n\t\"./pa-in\": 611,\n\t\"./pa-in.js\": 611,\n\t\"./pl\": 612,\n\t\"./pl.js\": 612,\n\t\"./pt\": 613,\n\t\"./pt-br\": 614,\n\t\"./pt-br.js\": 614,\n\t\"./pt.js\": 613,\n\t\"./ro\": 615,\n\t\"./ro.js\": 615,\n\t\"./ru\": 616,\n\t\"./ru.js\": 616,\n\t\"./sd\": 617,\n\t\"./sd.js\": 617,\n\t\"./se\": 618,\n\t\"./se.js\": 618,\n\t\"./si\": 619,\n\t\"./si.js\": 619,\n\t\"./sk\": 620,\n\t\"./sk.js\": 620,\n\t\"./sl\": 621,\n\t\"./sl.js\": 621,\n\t\"./sq\": 622,\n\t\"./sq.js\": 622,\n\t\"./sr\": 623,\n\t\"./sr-cyrl\": 624,\n\t\"./sr-cyrl.js\": 624,\n\t\"./sr.js\": 623,\n\t\"./ss\": 625,\n\t\"./ss.js\": 625,\n\t\"./sv\": 626,\n\t\"./sv.js\": 626,\n\t\"./sw\": 627,\n\t\"./sw.js\": 627,\n\t\"./ta\": 628,\n\t\"./ta.js\": 628,\n\t\"./te\": 629,\n\t\"./te.js\": 629,\n\t\"./tet\": 630,\n\t\"./tet.js\": 630,\n\t\"./tg\": 631,\n\t\"./tg.js\": 631,\n\t\"./th\": 632,\n\t\"./th.js\": 632,\n\t\"./tk\": 633,\n\t\"./tk.js\": 633,\n\t\"./tl-ph\": 634,\n\t\"./tl-ph.js\": 634,\n\t\"./tlh\": 635,\n\t\"./tlh.js\": 635,\n\t\"./tr\": 636,\n\t\"./tr.js\": 636,\n\t\"./tzl\": 637,\n\t\"./tzl.js\": 637,\n\t\"./tzm\": 638,\n\t\"./tzm-latn\": 639,\n\t\"./tzm-latn.js\": 639,\n\t\"./tzm.js\": 638,\n\t\"./ug-cn\": 640,\n\t\"./ug-cn.js\": 640,\n\t\"./uk\": 641,\n\t\"./uk.js\": 641,\n\t\"./ur\": 642,\n\t\"./ur.js\": 642,\n\t\"./uz\": 643,\n\t\"./uz-latn\": 644,\n\t\"./uz-latn.js\": 644,\n\t\"./uz.js\": 643,\n\t\"./vi\": 645,\n\t\"./vi.js\": 645,\n\t\"./x-pseudo\": 646,\n\t\"./x-pseudo.js\": 646,\n\t\"./yo\": 647,\n\t\"./yo.js\": 647,\n\t\"./zh-cn\": 648,\n\t\"./zh-cn.js\": 648,\n\t\"./zh-hk\": 649,\n\t\"./zh-hk.js\": 649,\n\t\"./zh-mo\": 650,\n\t\"./zh-mo.js\": 650,\n\t\"./zh-tw\": 651,\n\t\"./zh-tw.js\": 651\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 670;"],"sourceRoot":""}