{"version":3,"sources":["webpack:///./node_modules/core-js/modules/_array-fill.js","webpack:///./src/dashboard-components/heroux-exposure-chart.js","webpack:///./src/helpers/finmetrix-colors.js","webpack:///./node_modules/core-js/modules/es6.array.fill.js"],"names":["toObject","toAbsoluteIndex","toLength","module","exports","value","O","this","length","aLen","arguments","index","undefined","end","endPos","$","kendo","jQuery","renderChart","$container","options","renderLocation","Promise","resolve","actionName","chart","appendTo","dataSourceUrl","get","response","data","filter","el","Period","typeNumCols","ccyPair","fromDate","clientName","division","buildExposureChart","then","eChart","element","pdf","text","toString","parseDate","getTypeNumName","id","typeNumId","typeNumName","risqueNetText","hedgeText","kendoChart","renderAs","transitions","title","padding","bottom","legend","position","item","visual","makeVisualLegend","dataSource","seriesDefaults","type","series","field","name","axis","color","finmetrixColors","Blue","labels","visible","Green","font","rotation","background","top","left","template","percentage","dataItem","Hedge_Ratio","isNaN","isFinite","markers","format","tooltip","valueAxes","categoryAxis","axisCrossingValues","render","e","items","sender","closest","remove","getKendoChart","labelColor","imageSrc","LightGray","marker","rectGeometry","rectContainer","geometry","Rect","layout","drawing","Layout","spacing","alignItems","label","Text","fill","stroke","Image","append","reflow","location","Gray","LightBlue","Red","$export","P"],"mappings":"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","file":"js/chunk-e63794f6.f2011ce0.js","sourcesContent":["// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\n'use strict';\nvar toObject = require('./_to-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var aLen = arguments.length;\n var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length);\n var end = aLen > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","import finmetrixColors from '../helpers/finmetrix-colors'\n\nconst $ = kendo.jQuery\n\nfunction renderChart($container, options, renderLocation) {\n return new Promise(function(resolve) {\n const actionName = renderLocation === 'report' ? 'dataSource' : 'dataSourceComponentByDate'\n const chart = $('
').appendTo($container)\n const dataSourceUrl = `/api/heroux/ExposureReport/${actionName}`\n\n $.get(dataSourceUrl, options, function(response) {\n const data = response.data.filter(el => el.Period != 'Grand Total')\n const {typeNumCols, ccyPair, fromDate, clientName, division} = response\n\n buildExposureChart(\n chart,\n data,\n typeNumCols,\n ccyPair,\n fromDate,\n clientName,\n division,\n renderLocation,\n ).then(function(eChart) {\n resolve(eChart)\n })\n })\n })\n}\n\nfunction buildExposureChart(\n element,\n data,\n typeNumCols,\n ccyPair,\n fromDate,\n clientName,\n division,\n renderLocation,\n) {\n return new Promise(function(resolve) {\n const pdf = renderLocation === 'dashboard'\n const text = !pdf\n ? ccyPair +\n ' - ' +\n division +\n ' Exposure - thousands of USD ' +\n '\\n' +\n clientName +\n ' - ' +\n kendo.toString(kendo.parseDate(fromDate), 'MMMM-yyyy')\n : division\n\n const getTypeNumName = id => typeNumCols.filter(el => el.typeNumId === id)[0].typeNumName\n\n const risqueNetText = getTypeNumName(4)\n\n const hedgeText = getTypeNumName(5)\n\n $(element)\n .kendoChart({\n renderAs: pdf ? 'canvas' : 'svg',\n transitions: !pdf,\n title: {\n text: text,\n padding: {\n bottom: 5,\n },\n },\n legend: {\n position: 'bottom',\n item: {\n visual: makeVisualLegend,\n },\n },\n dataSource: data,\n seriesDefaults: {\n type: 'column',\n },\n series: [\n {\n field: 'RisqueNetChart',\n name: risqueNetText,\n axis: 'axis1',\n color: finmetrixColors.Blue,\n labels: {\n visible: false,\n },\n },\n {\n field: 'HedgeChart',\n name: hedgeText,\n axis: 'axis1',\n color: finmetrixColors.Green,\n //color: ccyPairColor + \"82\",\n labels: {\n font: '10px Arial',\n visible: true,\n rotation: -45,\n background: 'transparent',\n padding: {\n top: 2,\n left: 1,\n },\n template: function(item) {\n var percentage = item.dataItem.Hedge_Ratio\n\n if (isNaN(percentage) || !isFinite(percentage) || percentage === 0) {\n return ''\n }\n return kendo.toString(percentage, 'P2')\n },\n },\n },\n {\n field: 'Level',\n name: ccyPair,\n //color: \"rgba(255,255,255, 0)\",\n type: 'line',\n markers: {\n visible: false,\n },\n format: '{0:N4}',\n axis: 'levelAxis',\n tooltip: {\n visible: true,\n format: '{0:N4}',\n },\n },\n ],\n valueAxes: [\n {\n name: 'axis1',\n labels: {\n format: '{0:N0}',\n font: '10px Arial',\n },\n title: {\n text: 'thousands of USD',\n font: '10px Arial',\n },\n },\n {\n name: 'levelAxis',\n labels: {\n format: '{0:N4}',\n font: '10px Arial',\n },\n },\n ],\n categoryAxis: {\n field: 'Period',\n labels: {\n visible: true,\n font: '10px Arial',\n rotation: -45,\n background: 'transparent',\n padding: {\n top: 15,\n left: 1,\n },\n },\n axisCrossingValues: [0, 500],\n },\n tooltip: {\n visible: true,\n format: '{0:N0}',\n },\n render: function(e) {\n if (renderLocation === 'dashboard') {\n var items = e.sender.dataSource.data().length\n if (items == 0) {\n e.sender.element.closest('.component').remove()\n }\n }\n resolve(element.getKendoChart())\n },\n })\n .data('kendoChart')\n })\n}\n\nfunction makeVisualLegend(e) {\n var color = e.options.markers.background\n var labelColor = e.options.labels.color\n var imageSrc = ''\n if (color === 'rgba(255,255,255, 0)') {\n color = finmetrixColors.LightGray\n imageSrc = '/img/markers/line.png'\n } else if (color === 'rgba(255,255,255, 0.0001)') {\n color = finmetrixColors.Blue\n imageSrc = '/img/markers/diamond.png'\n }\n var rectContainer = new kendo.geometry.Rect([0, 0], ['100%', 50])\n var layout = new kendo.drawing.Layout(rectContainer, {\n spacing: 3,\n alignItems: 'center',\n })\n var label = new kendo.drawing.Text(e.series.name + ' ', [10, 0], {\n fill: {\n color: labelColor,\n },\n font: '9px Arial',\n })\n var marker, rectGeometry\n\n if (imageSrc === '') {\n rectGeometry = new kendo.geometry.Rect([0, 0], [10, 3])\n marker = new kendo.drawing.Rect(rectGeometry).stroke(labelColor, 0).fill(color)\n } else {\n rectGeometry = new kendo.geometry.Rect([0, -6], [10, 10])\n marker = new kendo.drawing.Image(imageSrc, rectGeometry)\n }\n layout.append(marker, label)\n layout.reflow()\n return layout\n}\n\nexport default {\n render: function($container, options, location = 'dashboard') {\n return renderChart($container, options, location)\n },\n}\n","export default {\n LightGray: '#d3d0ce',\n Gray: '#787779',\n Blue: '#1a345d',\n Green: '#96c93c',\n LightBlue: '#99caea',\n Red: '#ff0000',\n}\n","// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\nvar $export = require('./_export');\n\n$export($export.P, 'Array', { fill: require('./_array-fill') });\n\nrequire('./_add-to-unscopables')('fill');\n"],"sourceRoot":""}