{"version":3,"sources":["webpack:///./src/dashboard-components/last-next-transactions.js"],"names":["getColumnTitle","columns","field","itemIndex","indexOf","filter","col","column","title","getGridColumns","columnsData","hidden","forEach","element","headerAttributes","style","attributes","format","push","renderGrid","$container","options","renderLocation","Promise","resolve","reject","columnsDataSource","kendo","data","DataSource","transport","read","url","type","cache","clientId","error","fetch","then","readUrl","empty","kendoGrid","editable","scrollable","dataSource","asOfDate","fromDate","toDate","sectorId","divisionId","ccyPairId","isHistorical","optionValue","nbMonths","schema","errors","total","model","id","fields","DealId","Client","TradeDate","MaturityDate","BuySell","Product","Amount","Ccy","Rate1","Rate2","Counterparty","UndeliveredAmount","filterable","sortable","pageable","dataBound","e","items","sender","length","closest","remove","prepend","refreshGrid","grid","render","location","refresh"],"mappings":"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","file":"js/chunk-2d0e88c0.d23aa789.js","sourcesContent":["function getColumnTitle(columns, field) {\n var itemIndex = columns.indexOf(\n columns.filter(function(col) {\n return col.field === field\n })[0],\n )\n var column = columns[itemIndex]\n return column.title\n}\n\nfunction getGridColumns(columnsData) {\n var columns = [\n {\n field: 'DealId',\n title: 'DealId',\n hidden: true,\n },\n {\n field: 'ClientId',\n title: 'ClientId',\n hidden: true,\n },\n ]\n\n columnsData.forEach(function(element) {\n var column = {\n field: element.field,\n title: getColumnTitle(columnsData, element.field),\n headerAttributes: {\n style: 'text-align: center;',\n },\n attributes: {\n style: 'text-align: right;',\n },\n format: '{0:0}',\n }\n\n switch (column.field) {\n case 'Client':\n column.hidden = true\n break\n case 'TradeDate':\n case 'MaturityDate':\n column.format = '{0:yyyy-MM-dd}'\n column.attributes['style'] = 'text-align: right;'\n break\n case 'Amount':\n case 'UndeliveredAmount':\n column.format = '{0:n0}'\n column.attributes['style'] = 'text-align: right;'\n break\n case 'Rate1':\n case 'Rate2':\n column.format = '{0:n4}'\n column.attributes['style'] = 'text-align: right;'\n break\n default:\n break\n }\n columns.push(column)\n })\n\n return columns\n}\n\nfunction renderGrid($container, options, renderLocation) {\n return new Promise(function(resolve, reject) {\n var columnsDataSource = new kendo.data.DataSource({\n transport: {\n read: {\n url: '/api/report/LastNext/LastNextTransactionGridColumnsDataSource',\n type: 'GET',\n cache: false,\n data: function() {\n return {\n clientId: options.clientId,\n }\n },\n error: function(error) {\n reject(error)\n },\n },\n },\n })\n\n columnsDataSource.fetch().then(function() {\n var columnsData = columnsDataSource.data()\n\n var readUrl =\n renderLocation === 'report'\n ? '/api/report/LastNext/LastNextTransactionGridDataSourceRead'\n : '/api/report/LastNext/LastNextTransactionGridDashboardDataSourceRead'\n\n $container\n .empty()\n .kendoGrid({\n editable: false,\n scrollable: false,\n dataSource: {\n transport: {\n read: {\n url: readUrl,\n type: 'GET',\n cache: false,\n data: function() {\n if (renderLocation === 'report') {\n return {\n asOfDate: options.asOfDate,\n fromDate: options.fromDate,\n toDate: options.toDate,\n sectorId: options.sectorId,\n divisionId: options.divisionId,\n ccyPairId: options.ccyPairId,\n isHistorical: options.isHistorical,\n clientId: options.clientId,\n optionValue: +options.optionValue,\n }\n }\n if (renderLocation === 'dashboard') {\n return {\n asOfDate: options.asOfDate,\n nbMonths: options.nbMonths,\n sectorId: options.sectorId,\n ccyPairId: options.ccyPairId,\n clientId: options.clientId,\n }\n }\n },\n },\n },\n schema: {\n errors: 'errors',\n total: 'total',\n data: 'data',\n model: {\n id: 'DealId',\n fields: {\n DealId: {field: 'dealId', type: 'number'},\n Client: {field: 'client', type: 'string'},\n TradeDate: {field: 'tradeDate', type: 'date'},\n MaturityDate: {field: 'maturityDate', type: 'date'},\n BuySell: {field: 'buySell', type: 'string'},\n Product: {field: 'product', type: 'string'},\n Amount: {field: 'amount', type: 'number'},\n Ccy: {field: 'ccy', type: 'string'},\n Rate1: {field: 'rate1', type: 'number'},\n Rate2: {field: 'rate2', type: 'number'},\n Counterparty: {field: 'counterparty', type: 'string'},\n UndeliveredAmount: {field: 'undeliveredAmount', type: 'number'},\n },\n },\n },\n },\n filterable: false,\n sortable: false,\n pageable: false,\n dataBound: 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 if (items > 25) {\n e.sender.element.closest('.component').prepend('
')\n }\n }\n\n resolve()\n },\n columns: getGridColumns(columnsData),\n })\n .data('kendoGrid')\n\n // if (renderLocation === 'report') {\n // kgAutoheight.enableResize($container.data('kendoGrid'))\n // }\n })\n })\n}\n\nfunction refreshGrid($container) {\n return new Promise(function(resolve) {\n var grid = $container.data('kendoGrid')\n grid.dataSource.read().then(function() {\n resolve()\n })\n })\n}\n\nexport default {\n render: function($container, options, location = 'dashboard') {\n return renderGrid($container, options, location)\n },\n refresh: function($container, options) {\n return refreshGrid($container, options, 'report')\n },\n}\n"],"sourceRoot":""}