{"version":3,"sources":["gchart_renderers.coffee","gchart_renderers.min.js"],"names":["callWithJQuery","pivotModule","exports","module","require","define","amd","jQuery","$","makeGoogleChart","chartType","extraOptions","pivotData","opts","agg","base","base1","colKey","colKeys","dataArray","dataTable","defaults","fullAggName","groupByTitle","h","hAxisTitle","headers","i","j","len","len1","numCharsInHAxis","options","ref","result","row","rowKey","rowKeys","title","tree2","vAxisTitle","val","wrapper","x","y","localeStrings","vs","by","gchart","extend","width","window","innerWidth","height","innerHeight","getRowKeys","length","push","getColKeys","aggregatorName","valAttrs","join","results","unshift","tree","parseFloat","format","value","google","visualization","DataTable","addColumn","colAttrs","rowAttrs","type","role","addRows","getAggregator","isNumeric","toPrecision","toFixed","arrayToDataTable","hAxis","slantedText","vAxis","tooltip","textStyle","fontName","fontSize","minValue","legend","position","chartArea","css","ChartWrapper","draw","bind","editor","ChartEditor","events","addListener","getChartWrapper","openDialog","pivotUtilities","gchart_renderers","Line Chart","Bar Chart","Stacked Bar Chart","isStacked","Area Chart","Scatter Chart","call","this"],"mappings":"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","file":"gchart_renderers.min.js","sourcesContent":["callWithJQuery = (pivotModule) ->\n if typeof exports is \"object\" and typeof module is \"object\" # CommonJS\n pivotModule require(\"jquery\")\n else if typeof define is \"function\" and define.amd # AMD\n define [\"jquery\"], pivotModule\n # Plain browser env\n else\n pivotModule jQuery\n\ncallWithJQuery ($) ->\n\n makeGoogleChart = (chartType, extraOptions) -> (pivotData, opts) ->\n defaults =\n localeStrings:\n vs: \"vs\"\n by: \"by\"\n gchart: {}\n\n opts = $.extend(true, {}, defaults, opts)\n opts.gchart.width ?= window.innerWidth / 1.4\n opts.gchart.height ?= window.innerHeight / 1.4\n\n rowKeys = pivotData.getRowKeys()\n rowKeys.push [] if rowKeys.length == 0\n colKeys = pivotData.getColKeys()\n colKeys.push [] if colKeys.length == 0\n fullAggName = pivotData.aggregatorName\n if pivotData.valAttrs.length\n fullAggName += \"(#{pivotData.valAttrs.join(\", \")})\"\n headers = (h.join(\"-\") for h in rowKeys)\n headers.unshift \"\"\n\n numCharsInHAxis = 0\n if chartType == \"ScatterChart\"\n dataArray = []\n for y, tree2 of pivotData.tree\n for x, agg of tree2\n dataArray.push [\n parseFloat(x),\n parseFloat(y),\n fullAggName+\": \\n\"+agg.format(agg.value())\n ]\n dataTable = new google.visualization.DataTable()\n dataTable.addColumn 'number', pivotData.colAttrs.join(\"-\")\n dataTable.addColumn 'number', pivotData.rowAttrs.join(\"-\")\n dataTable.addColumn type: \"string\", role: \"tooltip\"\n dataTable.addRows dataArray\n hAxisTitle = pivotData.colAttrs.join(\"-\")\n vAxisTitle = pivotData.rowAttrs.join(\"-\")\n title = \"\"\n else\n dataArray = [headers]\n for colKey in colKeys\n row = [colKey.join(\"-\")]\n numCharsInHAxis += row[0].length\n for rowKey in rowKeys\n agg = pivotData.getAggregator(rowKey, colKey)\n if agg.value()?\n val = agg.value()\n if $.isNumeric val\n if val < 1\n row.push parseFloat(val.toPrecision(3))\n else\n row.push parseFloat(val.toFixed(3))\n else\n row.push val\n else row.push null\n dataArray.push row\n\n dataTable = google.visualization.arrayToDataTable(dataArray)\n\n title = vAxisTitle = fullAggName\n hAxisTitle = pivotData.colAttrs.join(\"-\")\n title += \" #{opts.localeStrings.vs} #{hAxisTitle}\" if hAxisTitle != \"\"\n groupByTitle = pivotData.rowAttrs.join(\"-\")\n title += \" #{opts.localeStrings.by} #{groupByTitle}\" if groupByTitle != \"\"\n\n options =\n title: title\n hAxis: {title: hAxisTitle, slantedText: numCharsInHAxis > 50}\n vAxis: {title: vAxisTitle}\n tooltip: { textStyle: { fontName: 'Arial', fontSize: 12 } }\n\n if chartType == \"ColumnChart\"\n options.vAxis.minValue = 0\n\n if chartType == \"ScatterChart\"\n options.legend = position: \"none\"\n options.chartArea = {'width': '80%', 'height': '80%'}\n\n else if dataArray[0].length == 2 and dataArray[0][1] == \"\"\n options.legend = position: \"none\"\n\n options = $.extend(true, {}, options, opts.gchart, extraOptions)\n\n result = $(\"