{"version":3,"file":"calendar-heatmap.min.js","mappings":"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;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA,wDAAwD;;AAExD;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;;AAEA,kBAAkB,wBAAwB;AAC1C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,kBAAkB,iBAAiB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,gBAAgB,KAAwC,GAAG,sBAAiB,GAAG,CAAI;;AAEnF;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA,qEAAqE,qBAAqB,cAAc;;AAExG;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,yDAAyD;AACzD,IAAI;;AAEJ;;;AAGA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;AACA,2BAA2B;AAC3B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oBAAoB,4BAA4B;AAChD;AACA;AACA;AACA;;AAEA;;AAEA,qBAAqB,6BAA6B;AAClD;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;AC5QA;;;;;;;ACAA;;;;;;;ACAA;;;;;;UCAA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;UENA;UACA;UACA;UACA","sources":["webpack://CalendarHeatmap/webpack/universalModuleDefinition","webpack://CalendarHeatmap/./src/calendar-heatmap.component.js","webpack://CalendarHeatmap/./src/index.js","webpack://CalendarHeatmap/./src/calendar-heatmap.css","webpack://CalendarHeatmap/./node_modules/css-loader/dist/runtime/api.js","webpack://CalendarHeatmap/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://CalendarHeatmap/./src/calendar-heatmap.css?eb73","webpack://CalendarHeatmap/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://CalendarHeatmap/external umd \"d3\"","webpack://CalendarHeatmap/external umd \"moment\"","webpack://CalendarHeatmap/external umd {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\",\"umd\":\"react\"}","webpack://CalendarHeatmap/webpack/bootstrap","webpack://CalendarHeatmap/webpack/runtime/compat get default export","webpack://CalendarHeatmap/webpack/runtime/define property getters","webpack://CalendarHeatmap/webpack/runtime/hasOwnProperty shorthand","webpack://CalendarHeatmap/webpack/runtime/make namespace object","webpack://CalendarHeatmap/webpack/before-startup","webpack://CalendarHeatmap/webpack/startup","webpack://CalendarHeatmap/webpack/after-startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"moment\"), require(\"d3\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"moment\", \"d3\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"CalendarHeatmap\"] = factory(require(\"react\"), require(\"moment\"), require(\"d3\"));\n\telse\n\t\troot[\"CalendarHeatmap\"] = factory(root[\"React\"], root[\"moment\"], root[\"d3\"]);\n})(self, function(__WEBPACK_EXTERNAL_MODULE__244__, __WEBPACK_EXTERNAL_MODULE__192__, __WEBPACK_EXTERNAL_MODULE__990__) {\nreturn ","import * as React from 'react'\n\nimport moment from 'moment'\nimport * as d3 from 'd3'\n\nimport styles from './calendar-heatmap.css'\n\n\nclass CalendarHeatmap extends React.Component {\n\n constructor(props) {\n super(props)\n\n this.settings = {\n gutter: 5,\n item_gutter: 1,\n width: 1000,\n height: 200,\n item_size: 10,\n label_padding: 40,\n max_block_height: 20,\n transition_duration: 500,\n tooltip_width: 250,\n tooltip_padding: 15,\n }\n\n this.in_transition = false\n this.overview = this.props.overview\n this.history = ['global']\n this.selected = {}\n\n this.calcDimensions = this.calcDimensions.bind(this)\n }\n\n componentDidMount() {\n this.createElements()\n this.parseData()\n this.drawChart()\n\n window.addEventListener('resize', this.calcDimensions)\n }\n\n componentDidUpdate() {\n this.parseData()\n this.drawChart()\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.calcDimensions)\n }\n\n createElements() {\n // Create svg element\n this.svg = d3.select('#calendar-heatmap')\n .append('svg')\n .attr('class', 'svg')\n\n // Create other svg elements\n this.items = this.svg.append('g')\n this.labels = this.svg.append('g')\n this.buttons = this.svg.append('g')\n\n // Add tooltip to the same element as main svg\n this.tooltip = d3.select('#calendar-heatmap')\n .append('div')\n .attr('class', styles.heatmapTooltip)\n .style('opacity', 0)\n .style('pointer-events', 'none')\n .style('position', 'absolute')\n .style('z-index', 9999)\n .style('width', '250px')\n .style('max-width', '250px')\n .style('overflow', 'hidden')\n .style('padding', '15px')\n .style('font-size', '12px')\n .style('line-height', '14px')\n .style('color', 'rgb(51, 51, 51)')\n .style('background', 'rgba(255, 255, 255, 0.75)')\n\n this.calcDimensions()\n }\n\n // Calculate dimensions based on available width\n calcDimensions() {\n let dayIndex = Math.round((moment() - moment().subtract(1, 'year').startOf('week')) / 86400000)\n let colIndex = Math.trunc(dayIndex / 7)\n let numWeeks = colIndex + 1\n\n this.settings.width = this.container.offsetWidth < 1000 ? 1000 : this.container.offsetWidth\n this.settings.item_size = ((this.settings.width - this.settings.label_padding) / numWeeks - this.settings.gutter)\n this.settings.height = this.settings.label_padding + 7 * (this.settings.item_size + this.settings.gutter)\n this.svg.attr('width', this.settings.width)\n .attr('height', this.settings.height)\n\n if ( !!this.props.data && !!this.props.data[0].summary ) {\n this.drawChart()\n }\n }\n\n parseData() {\n if ( !this.props.data ) { return }\n\n // Get daily summary if that was not provided\n if ( !this.props.data[0].summary ) {\n this.props.data.map(d => {\n let summary = d.details.reduce((uniques, project) => {\n if (!uniques[project.name]) {\n uniques[project.name] = {\n 'value': project.value\n }\n } else {\n uniques[project.name].value += project.value\n }\n return uniques\n }, {})\n let unsorted_summary = Object.keys(summary).map(key => {\n return {\n 'name': key,\n 'value': summary[key].value\n }\n })\n d.summary = unsorted_summary.sort((a, b) => {\n return b.value - a.value\n })\n return d\n })\n }\n }\n\n drawChart() {\n if ( this.overview === 'global' ) {\n this.drawGlobalOverview()\n } else if ( this.overview === 'year' ) {\n this.drawYearOverview()\n } else if ( this.overview === 'month' ) {\n this.drawMonthOverview()\n } else if ( this.overview === 'week' ) {\n this.drawWeekOverview()\n } else if ( this.overview === 'day' ) {\n this.drawDayOverview()\n }\n }\n\n\n /**\n * Draw global overview (multiple years)\n */\n drawGlobalOverview() {\n\n // Add current overview to the history\n if (this.history[this.history.length - 1] !== this.overview) {\n this.history.push(this.overview)\n }\n\n // Define start and end of the dataset\n let start = moment(this.props.data[0].date).startOf('year')\n let end = moment(this.props.data[this.props.data.length - 1].date).endOf('year')\n\n // Define array of years and total values\n let year_data = d3.timeYears(start, end).map(d => {\n let date = moment(d)\n let getSummary = () => {\n let summary = this.props.data.reduce((summary, d) => {\n if (moment(d.date).year() === date.year()) {\n d.summary.map(item => {\n if (!summary[item.name]) {\n summary[item.name] = {\n 'value': item.value,\n }\n } else {\n summary[item.name].value += item.value\n }\n })\n }\n return summary\n }, {})\n let unsorted_summary = Object.keys(summary).map(key => {\n return {\n 'name': key,\n 'value': summary[key].value\n }\n })\n return unsorted_summary.sort((a, b) => {\n return b.value - a.value\n })\n }\n return {\n 'date': date,\n 'total': this.props.data.reduce((prev, current) => {\n if (moment(current.date).year() === date.year()) {\n prev += current.total\n }\n return prev\n }, 0),\n 'summary': getSummary(),\n }\n })\n\n // Calculate max value of all the years in the dataset\n let max_value = d3.max(year_data, d => {\n return d.total\n })\n\n // Define year labels and axis\n let year_labels = d3.timeYears(start, end).map(d => {\n return moment(d)\n })\n let yearScale = d3.scaleBand()\n .rangeRound([0, this.settings.width])\n .padding([0.05])\n .domain(year_labels.map(d => {\n return d.year()\n }))\n\n // Add global data items to the overview\n this.items.selectAll('.item-block-year').remove()\n let item_block = this.items.selectAll('.item-block-year')\n .data(year_data)\n .enter()\n .append('rect')\n .attr('class', 'item item-block-year')\n .style('cursor', 'pointer')\n .attr('width', () => {\n return (this.settings.width - this.settings.label_padding) / year_labels.length - this.settings.gutter * 5\n })\n .attr('height', () => {\n return this.settings.height - this.settings.label_padding\n })\n .attr('transform', d => {\n return 'translate(' + yearScale(d.date.year()) + ',' + this.settings.tooltip_padding * 2 + ')'\n })\n .attr('fill', d => {\n let color = d3.scaleLinear()\n .range(['#ffffff', this.props.color])\n .domain([-0.15 * max_value, max_value])\n return color(d.total) || '#ff4500'\n })\n .on('click', (event, d) => {\n if (this.in_transition) { return }\n\n // Set in_transition flag\n this.in_transition = true\n\n // Set selected date to the one clicked on\n this.selected = { date: d.date }\n\n // Hide tooltip\n this.hideTooltip()\n\n // Remove all global overview related items and labels\n this.removeGlobalOverview()\n\n // Redraw the chart\n this.overview = 'year'\n this.drawChart()\n })\n .style('opacity', 0)\n .on('mouseover', (event, d) => {\n if (this.in_transition) { return }\n\n // Construct tooltip\n let tooltip_html = ''\n tooltip_html += '