{"version":3,"sources":["webpack:///./src/helpers/finmetrix-colors.js","webpack:///./src/helpers/color-helper.js","webpack:///./src/dashboard-components/market-data-chart.js"],"names":["LightGray","Gray","Blue","Green","LightBlue","Red","chartColors","fnColor","$","kendo","jQuery","ee","Vue","getName","e","selectedGroup","group","items","filter","element","value","label","seriesLabel","createChart","$container","options","renderLocation","Promise","resolve","reject","actionName","nbMonths","dataInstruments","JSON","stringify","dataSource","data","DataSource","transport","read","url","cache","type","fromDate","toDate","marketId","asOfDate","dataType","schema","parse","response","chart","title","text","valueAxis","min","minAxis","categoryAxis","labels","step","labelsStep","model","fields","dataInstrumentId","evaluationDate","dataValue","field","sort","dir","requestEnd","legend","visible","refresh","error","err","kendoChart","render","$emit","padding","bottom","position","seriesDefaults","markers","size","seriesColors","series","name","font","format","baseUnit","rotation","margin","top","template","date","dataItem","toString","majorGridLines","tooltip","renderChart","empty","$chartContainer","appendTo","openChart","$window","document","body","kendoWindow","modal","width","height","resizable","actions","close","this","destroy","getKendoWindow","$chart","setOptions","center","open","then","mdChart","resize","onRender","callback","$on"],"mappings":"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","file":"js/chunk-a8a29802.f9982eff.js","sourcesContent":["export default {\n LightGray: '#d3d0ce',\n Gray: '#787779',\n Blue: '#1a345d',\n Green: '#96c93c',\n LightBlue: '#99caea',\n Red: '#ff0000',\n}\n","import fnColor from './finmetrix-colors'\n\nexport function chartColors() {\n return [\n fnColor.LightBlue,\n fnColor.Green,\n fnColor.LightGray,\n fnColor.Blue,\n fnColor.Gray,\n fnColor.Red,\n '#0F243E',\n '#16365C',\n '#366092',\n '#538DD5',\n '#8DB4E2',\n '#C6D9F1',\n '#DDD9C4',\n '#C4BD97',\n '#948A54',\n '#595331',\n '#494529',\n '#1D1B10',\n '#F2DCDB',\n '#E6B8B7',\n '#DA9694',\n '#BF4C49',\n '#963634',\n '#632523',\n '#71FFB1',\n '#00E266',\n '#00B050',\n '#007033',\n '#00602B',\n '#003A1A',\n '#D9D9D9',\n '#BFBFBF',\n '#A6A6A6',\n '#808080',\n '#595959',\n '#404040',\n '#0B5FA4',\n '#960224',\n ]\n}\n","import Vue from 'vue'\r\nimport {chartColors} from '@/helpers/color-helper'\r\n\r\nconst $ = kendo.jQuery\r\nconst ee = new Vue()\r\n\r\nfunction getName(e) {\r\n const selectedGroup = e.group.items.filter(element => (element.value = e.group.value))[0]\r\n const label = selectedGroup != null ? selectedGroup.seriesLabel || 'N/A' : 'N/A'\r\n return label\r\n}\r\n\r\nfunction createChart($container, options, renderLocation) {\r\n return new Promise(function(resolve, reject) {\r\n const actionName = options.nbMonths == null ? 'getChartDataSource' : 'getChartDataSource1'\r\n const dataInstruments = JSON.stringify(options.dataInstruments)\r\n const dataSource = new kendo.data.DataSource({\r\n transport: {\r\n read: {\r\n url: `/api/report/marketData/${actionName}`,\r\n cache: false,\r\n type: 'GET',\r\n data:\r\n options.nbMonths == null\r\n ? {\r\n fromDate: options.fromDate,\r\n toDate: options.toDate,\r\n marketId: options.marketId,\r\n dataInstruments,\r\n }\r\n : {\r\n asOfDate: options.asOfDate,\r\n nbMonths: options.nbMonths,\r\n marketId: options.marketId,\r\n dataInstruments,\r\n },\r\n dataType: 'json',\r\n },\r\n },\r\n schema: {\r\n parse: function(response) {\r\n chart.options.title.text = renderLocation == 'pdf' ? ' ' : response.title\r\n chart.options.valueAxis.min = response.minAxis\r\n chart.options.categoryAxis.labels.step = response.labelsStep\r\n return response\r\n },\r\n data: 'data',\r\n model: {\r\n fields: {\r\n dataInstrumentId: {\r\n type: 'number',\r\n },\r\n seriesLabel: {\r\n type: 'string',\r\n },\r\n evaluationDate: {\r\n type: 'date',\r\n },\r\n dataValue: {\r\n field: 'value',\r\n type: 'number',\r\n },\r\n },\r\n },\r\n },\r\n group: {\r\n field: 'dataInstrumentId',\r\n },\r\n sort: {\r\n field: 'evaluationDate',\r\n dir: 'asc',\r\n },\r\n requestEnd: () => {\r\n chart.options.legend.visible = true\r\n chart.refresh()\r\n },\r\n error: err => reject(err),\r\n })\r\n\r\n const chart = $container\r\n .kendoChart({\r\n render: () => {\r\n resolve(chart)\r\n ee.$emit('render')\r\n },\r\n dataSource: dataSource,\r\n title: {\r\n padding: {\r\n bottom: 5,\r\n },\r\n },\r\n legend: {\r\n position: 'bottom',\r\n visible: false,\r\n },\r\n seriesDefaults: {\r\n type: 'line',\r\n markers: {\r\n size: 3,\r\n visible: true,\r\n },\r\n },\r\n seriesColors: chartColors(),\r\n series: [\r\n {\r\n field: 'dataValue',\r\n name: e => getName(e),\r\n labels: {\r\n visible: false,\r\n },\r\n },\r\n ],\r\n valueAxis: [\r\n {\r\n title: {\r\n font: '10px',\r\n },\r\n labels: {\r\n format: options.marketId == 2 ? '{0:P4}' : '{0:N4}',\r\n font: '10px Arial',\r\n },\r\n name: 'K',\r\n },\r\n ],\r\n categoryAxis: {\r\n field: 'evaluationDate',\r\n baseUnit: 'months',\r\n labels: {\r\n visible: true,\r\n rotation: -45,\r\n font: '10px Arial',\r\n margin: {\r\n top: 16,\r\n },\r\n template: e => {\r\n const date = e.dataItem && e.dataItem.evaluationDate\r\n return kendo.toString(date || '', 'yyyy-MM-dd')\r\n },\r\n },\r\n majorGridLines: {\r\n visible: false,\r\n },\r\n },\r\n tooltip: {\r\n visible: true,\r\n template:\r\n options.marketId == 2\r\n ? \"#=kendo.format('{0:P4}', value)#\"\r\n : \"#=kendo.format('{0:N5}', value)#\",\r\n },\r\n })\r\n .data('kendoChart')\r\n })\r\n}\r\n\r\nfunction renderChart($container, options, renderLocation) {\r\n $container.empty()\r\n\r\n if (renderLocation == null) renderLocation = 'pdf'\r\n\r\n const $chartContainer = $('
').appendTo($container)\r\n return createChart($chartContainer, options, renderLocation)\r\n}\r\n\r\nexport default {\r\n openChart: function(options) {\r\n const $window = $(\"\")\r\n .empty()\r\n .appendTo(document.body)\r\n var kendoWindow = $window\r\n .kendoWindow({\r\n visible: false,\r\n modal: true,\r\n width: '832px',\r\n height: '432px',\r\n resizable: false,\r\n actions: ['Close'],\r\n close: function() {\r\n this.destroy()\r\n },\r\n })\r\n .getKendoWindow()\r\n\r\n const renderLocation = 'page'\r\n const $chart = $('').appendTo($window.empty())\r\n kendoWindow.setOptions({\r\n title: 'Loading...',\r\n })\r\n kendoWindow.center().open()\r\n\r\n createChart($chart, options, renderLocation).then(function(mdChart) {\r\n kendoWindow.setOptions({\r\n title: 'Market Data Chart',\r\n })\r\n mdChart.resize()\r\n })\r\n },\r\n render: function($container, options, renderLocation) {\r\n return renderChart($container, options, renderLocation).then(function(mdChart) {\r\n mdChart.resize()\r\n })\r\n },\r\n onRender: function(callback) {\r\n ee.$on('render', callback)\r\n },\r\n}\r\n"],"sourceRoot":""}