react-native-chart-kit 6.12.2 → 7.0.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +49 -35
- package/dist/{BarChart.d.ts → charts/bar/BarChart.d.ts} +8 -7
- package/dist/charts/bar/BarChart.d.ts.map +1 -0
- package/dist/charts/bar/BarChart.js +161 -0
- package/dist/charts/bar/index.d.ts +3 -0
- package/dist/charts/bar/index.d.ts.map +1 -0
- package/dist/charts/bar/index.js +3 -0
- package/dist/{contribution-graph → charts/contribution-graph}/ContributionGraph.d.ts +7 -6
- package/dist/charts/contribution-graph/ContributionGraph.d.ts.map +1 -0
- package/dist/charts/contribution-graph/ContributionGraph.js +310 -0
- package/dist/charts/contribution-graph/constants.d.ts.map +1 -0
- package/dist/charts/contribution-graph/constants.js +17 -0
- package/dist/{contribution-graph/DateHelpers.d.ts → charts/contribution-graph/date.d.ts} +1 -1
- package/dist/charts/contribution-graph/date.d.ts.map +1 -0
- package/dist/charts/contribution-graph/date.js +14 -0
- package/dist/{contribution-graph → charts/contribution-graph}/index.d.ts +1 -1
- package/dist/charts/contribution-graph/index.d.ts.map +1 -0
- package/dist/charts/contribution-graph/index.js +3 -0
- package/dist/charts/line/LegendItem.d.ts +12 -0
- package/dist/charts/line/LegendItem.d.ts.map +1 -0
- package/dist/charts/line/LegendItem.js +23 -0
- package/dist/{line-chart → charts/line}/LineChart.d.ts +9 -8
- package/dist/charts/line/LineChart.d.ts.map +1 -0
- package/dist/charts/line/LineChart.js +481 -0
- package/dist/charts/line/index.d.ts.map +1 -0
- package/dist/charts/line/index.js +3 -0
- package/dist/{PieChart.d.ts → charts/pie/PieChart.d.ts} +3 -2
- package/dist/charts/pie/PieChart.d.ts.map +1 -0
- package/dist/charts/pie/PieChart.js +103 -0
- package/dist/charts/pie/index.d.ts +3 -0
- package/dist/charts/pie/index.d.ts.map +1 -0
- package/dist/charts/pie/index.js +3 -0
- package/dist/{ProgressChart.d.ts → charts/progress/ProgressChart.d.ts} +3 -2
- package/dist/charts/progress/ProgressChart.d.ts.map +1 -0
- package/dist/charts/progress/ProgressChart.js +136 -0
- package/dist/charts/progress/index.d.ts +3 -0
- package/dist/charts/progress/index.d.ts.map +1 -0
- package/dist/charts/progress/index.js +3 -0
- package/dist/{StackedBarChart.d.ts → charts/stacked-bar/StackedBarChart.d.ts} +4 -3
- package/dist/charts/stacked-bar/StackedBarChart.d.ts.map +1 -0
- package/dist/charts/stacked-bar/StackedBarChart.js +147 -0
- package/dist/charts/stacked-bar/index.d.ts +3 -0
- package/dist/charts/stacked-bar/index.d.ts.map +1 -0
- package/dist/charts/stacked-bar/index.js +3 -0
- package/dist/index.d.ts +7 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -8
- package/dist/{AbstractChart.d.ts → shared/AbstractChart.d.ts} +80 -58
- package/dist/shared/AbstractChart.d.ts.map +1 -0
- package/dist/shared/AbstractChart.js +283 -0
- package/dist/{HelperTypes.d.ts → shared/types.d.ts} +1 -1
- package/dist/shared/types.d.ts.map +1 -0
- package/dist/shared/types.js +2 -0
- package/dist/shared/utils.d.ts +5 -0
- package/dist/shared/utils.d.ts.map +1 -0
- package/dist/shared/utils.js +10 -0
- package/package.json +109 -53
- package/scripts/chartkit-codemod.mjs +256 -0
- package/dist/AbstractChart.d.ts.map +0 -1
- package/dist/AbstractChart.js +0 -261
- package/dist/BarChart.d.ts.map +0 -1
- package/dist/BarChart.js +0 -159
- package/dist/HelperTypes.d.ts.map +0 -1
- package/dist/HelperTypes.js +0 -2
- package/dist/PieChart.d.ts.map +0 -1
- package/dist/PieChart.js +0 -101
- package/dist/ProgressChart.d.ts.map +0 -1
- package/dist/ProgressChart.js +0 -134
- package/dist/StackedBarChart.d.ts.map +0 -1
- package/dist/StackedBarChart.js +0 -145
- package/dist/Utils.d.ts +0 -2
- package/dist/Utils.d.ts.map +0 -1
- package/dist/Utils.js +0 -4
- package/dist/contribution-graph/ContributionGraph.d.ts.map +0 -1
- package/dist/contribution-graph/ContributionGraph.js +0 -309
- package/dist/contribution-graph/DateHelpers.d.ts.map +0 -1
- package/dist/contribution-graph/DateHelpers.js +0 -14
- package/dist/contribution-graph/constants.d.ts.map +0 -1
- package/dist/contribution-graph/constants.js +0 -17
- package/dist/contribution-graph/index.d.ts.map +0 -1
- package/dist/contribution-graph/index.js +0 -3
- package/dist/line-chart/LegendItem.d.ts +0 -11
- package/dist/line-chart/LegendItem.d.ts.map +0 -1
- package/dist/line-chart/LegendItem.js +0 -23
- package/dist/line-chart/LineChart.d.ts.map +0 -1
- package/dist/line-chart/LineChart.js +0 -459
- package/dist/line-chart/index.d.ts.map +0 -1
- package/dist/line-chart/index.js +0 -3
- /package/dist/{contribution-graph → charts/contribution-graph}/constants.d.ts +0 -0
- /package/dist/{line-chart → charts/line}/index.d.ts +0 -0
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
var __extends = (this && this.__extends) || (function () {
|
|
2
|
+
var extendStatics = function (d, b) {
|
|
3
|
+
extendStatics = Object.setPrototypeOf ||
|
|
4
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
5
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
6
|
+
return extendStatics(d, b);
|
|
7
|
+
};
|
|
8
|
+
return function (d, b) {
|
|
9
|
+
if (typeof b !== "function" && b !== null)
|
|
10
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
11
|
+
extendStatics(d, b);
|
|
12
|
+
function __() { this.constructor = d; }
|
|
13
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
14
|
+
};
|
|
15
|
+
})();
|
|
16
|
+
var __assign = (this && this.__assign) || function () {
|
|
17
|
+
__assign = Object.assign || function(t) {
|
|
18
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
19
|
+
s = arguments[i];
|
|
20
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
21
|
+
t[p] = s[p];
|
|
22
|
+
}
|
|
23
|
+
return t;
|
|
24
|
+
};
|
|
25
|
+
return __assign.apply(this, arguments);
|
|
26
|
+
};
|
|
27
|
+
import React from "react";
|
|
28
|
+
import { View } from "react-native";
|
|
29
|
+
import { G, Rect, Svg, Text } from "react-native-svg";
|
|
30
|
+
import AbstractChart from "../../shared/AbstractChart";
|
|
31
|
+
import { getNumberProp, mapValue } from "../../shared/utils";
|
|
32
|
+
import { convertToDate, getBeginningTimeForDate, shiftDate } from "./date";
|
|
33
|
+
import { DAYS_IN_WEEK, MILLISECONDS_IN_ONE_DAY, MONTH_LABELS } from "./constants";
|
|
34
|
+
var SQUARE_SIZE = 20;
|
|
35
|
+
var MONTH_LABEL_GUTTER_SIZE = 8;
|
|
36
|
+
var paddingLeft = 32;
|
|
37
|
+
var range = function (count) { return Array.from({ length: count }, function (_, i) { return i; }); };
|
|
38
|
+
var ContributionGraph = /** @class */ (function (_super) {
|
|
39
|
+
__extends(ContributionGraph, _super);
|
|
40
|
+
function ContributionGraph(props) {
|
|
41
|
+
var _this = _super.call(this, props) || this;
|
|
42
|
+
var _a = _this.getValueCache(props.values), maxValue = _a.maxValue, minValue = _a.minValue, valueCache = _a.valueCache;
|
|
43
|
+
_this.state = {
|
|
44
|
+
maxValue: maxValue,
|
|
45
|
+
minValue: minValue,
|
|
46
|
+
valueCache: valueCache
|
|
47
|
+
};
|
|
48
|
+
return _this;
|
|
49
|
+
}
|
|
50
|
+
ContributionGraph.prototype.componentDidUpdate = function (prevProps) {
|
|
51
|
+
var shouldUpdateValueCache = prevProps.values !== this.props.values ||
|
|
52
|
+
prevProps.endDate !== this.props.endDate ||
|
|
53
|
+
prevProps.numDays !== this.props.numDays ||
|
|
54
|
+
prevProps.accessor !== this.props.accessor ||
|
|
55
|
+
prevProps.titleForValue !== this.props.titleForValue ||
|
|
56
|
+
prevProps.tooltipDataAttrs !== this.props.tooltipDataAttrs;
|
|
57
|
+
if (!shouldUpdateValueCache) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
var _a = this.getValueCache(this.props.values), maxValue = _a.maxValue, minValue = _a.minValue, valueCache = _a.valueCache;
|
|
61
|
+
this.setState({
|
|
62
|
+
maxValue: maxValue,
|
|
63
|
+
minValue: minValue,
|
|
64
|
+
valueCache: valueCache
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
ContributionGraph.prototype.getSquareSizeWithGutter = function () {
|
|
68
|
+
return (this.props.squareSize || SQUARE_SIZE) + this.props.gutterSize;
|
|
69
|
+
};
|
|
70
|
+
ContributionGraph.prototype.getMonthLabelSize = function () {
|
|
71
|
+
var _a = this.props.squareSize, squareSize = _a === void 0 ? SQUARE_SIZE : _a;
|
|
72
|
+
if (!this.props.showMonthLabels) {
|
|
73
|
+
return 0;
|
|
74
|
+
}
|
|
75
|
+
if (this.props.horizontal) {
|
|
76
|
+
return squareSize + MONTH_LABEL_GUTTER_SIZE;
|
|
77
|
+
}
|
|
78
|
+
return 2 * (squareSize + MONTH_LABEL_GUTTER_SIZE);
|
|
79
|
+
};
|
|
80
|
+
ContributionGraph.prototype.getStartDate = function () {
|
|
81
|
+
return shiftDate(this.getEndDate(), -this.props.numDays + 1); // +1 because endDate is inclusive
|
|
82
|
+
};
|
|
83
|
+
ContributionGraph.prototype.getEndDate = function () {
|
|
84
|
+
return getBeginningTimeForDate(convertToDate(this.props.endDate));
|
|
85
|
+
};
|
|
86
|
+
ContributionGraph.prototype.getStartDateWithEmptyDays = function () {
|
|
87
|
+
return shiftDate(this.getStartDate(), -this.getNumEmptyDaysAtStart());
|
|
88
|
+
};
|
|
89
|
+
ContributionGraph.prototype.getNumEmptyDaysAtStart = function () {
|
|
90
|
+
return this.getStartDate().getDay();
|
|
91
|
+
};
|
|
92
|
+
ContributionGraph.prototype.getNumEmptyDaysAtEnd = function () {
|
|
93
|
+
return DAYS_IN_WEEK - 1 - this.getEndDate().getDay();
|
|
94
|
+
};
|
|
95
|
+
ContributionGraph.prototype.getWeekCount = function () {
|
|
96
|
+
var numDaysRoundedToWeek = this.props.numDays +
|
|
97
|
+
this.getNumEmptyDaysAtStart() +
|
|
98
|
+
this.getNumEmptyDaysAtEnd();
|
|
99
|
+
return Math.ceil(numDaysRoundedToWeek / DAYS_IN_WEEK);
|
|
100
|
+
};
|
|
101
|
+
ContributionGraph.prototype.getWeekWidth = function () {
|
|
102
|
+
return DAYS_IN_WEEK * this.getSquareSizeWithGutter();
|
|
103
|
+
};
|
|
104
|
+
ContributionGraph.prototype.getWidth = function () {
|
|
105
|
+
return (this.getWeekCount() * this.getSquareSizeWithGutter() -
|
|
106
|
+
this.props.gutterSize);
|
|
107
|
+
};
|
|
108
|
+
ContributionGraph.prototype.getHeight = function () {
|
|
109
|
+
return (this.getWeekWidth() + (this.getMonthLabelSize() - this.props.gutterSize));
|
|
110
|
+
};
|
|
111
|
+
ContributionGraph.prototype.getValueCache = function (values) {
|
|
112
|
+
var _this = this;
|
|
113
|
+
var minValue = Infinity, maxValue = -Infinity;
|
|
114
|
+
return {
|
|
115
|
+
valueCache: values.reduce(function (memo, value) {
|
|
116
|
+
var date = convertToDate(value.date);
|
|
117
|
+
var index = Math.floor((date.valueOf() - _this.getStartDateWithEmptyDays().valueOf()) /
|
|
118
|
+
MILLISECONDS_IN_ONE_DAY);
|
|
119
|
+
minValue = Math.min(value[_this.props.accessor], minValue);
|
|
120
|
+
maxValue = Math.max(value[_this.props.accessor], maxValue);
|
|
121
|
+
memo[index] = {
|
|
122
|
+
value: value,
|
|
123
|
+
title: _this.props.titleForValue
|
|
124
|
+
? _this.props.titleForValue(value)
|
|
125
|
+
: null,
|
|
126
|
+
tooltipDataAttrs: _this.getTooltipDataAttrsForValue(value)
|
|
127
|
+
};
|
|
128
|
+
return memo;
|
|
129
|
+
}, {}),
|
|
130
|
+
minValue: minValue,
|
|
131
|
+
maxValue: maxValue
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
ContributionGraph.prototype.getValueForIndex = function (index) {
|
|
135
|
+
if (this.state.valueCache[index]) {
|
|
136
|
+
return this.state.valueCache[index].value;
|
|
137
|
+
}
|
|
138
|
+
return null;
|
|
139
|
+
};
|
|
140
|
+
ContributionGraph.prototype.getClassNameForIndex = function (index) {
|
|
141
|
+
if (this.state.valueCache[index]) {
|
|
142
|
+
if (this.state.valueCache[index].value) {
|
|
143
|
+
var count = this.state.valueCache[index].value[this.props.accessor];
|
|
144
|
+
if (count) {
|
|
145
|
+
var opacity = mapValue(count, this.state.maxValue === this.state.minValue
|
|
146
|
+
? 0
|
|
147
|
+
: this.state.minValue, isNaN(this.state.maxValue) ? 1 : this.state.maxValue, 0.15 + 0.05, // + 0.05 to make smaller values a bit more visible
|
|
148
|
+
1);
|
|
149
|
+
return this.props.chartConfig.color(opacity);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return this.props.chartConfig.color(0.15);
|
|
154
|
+
};
|
|
155
|
+
ContributionGraph.prototype.getTitleForIndex = function (index) {
|
|
156
|
+
if (this.state.valueCache[index]) {
|
|
157
|
+
return this.state.valueCache[index].title;
|
|
158
|
+
}
|
|
159
|
+
return this.props.titleForValue ? this.props.titleForValue(null) : null;
|
|
160
|
+
};
|
|
161
|
+
ContributionGraph.prototype.getTooltipDataAttrsForIndex = function (index) {
|
|
162
|
+
var _a;
|
|
163
|
+
if (this.state.valueCache[index]) {
|
|
164
|
+
return this.state.valueCache[index].tooltipDataAttrs;
|
|
165
|
+
}
|
|
166
|
+
return this.getTooltipDataAttrsForValue((_a = {
|
|
167
|
+
date: null
|
|
168
|
+
},
|
|
169
|
+
_a[this.props.accessor] = null,
|
|
170
|
+
_a));
|
|
171
|
+
};
|
|
172
|
+
ContributionGraph.prototype.getTooltipDataAttrsForValue = function (value) {
|
|
173
|
+
var tooltipDataAttrs = this.props.tooltipDataAttrs;
|
|
174
|
+
if (typeof tooltipDataAttrs === "function") {
|
|
175
|
+
return tooltipDataAttrs(value);
|
|
176
|
+
}
|
|
177
|
+
return tooltipDataAttrs;
|
|
178
|
+
};
|
|
179
|
+
ContributionGraph.prototype.getTransformForWeek = function (weekIndex) {
|
|
180
|
+
if (this.props.horizontal) {
|
|
181
|
+
return [weekIndex * this.getSquareSizeWithGutter(), 50];
|
|
182
|
+
}
|
|
183
|
+
return [10, weekIndex * this.getSquareSizeWithGutter()];
|
|
184
|
+
};
|
|
185
|
+
ContributionGraph.prototype.getTransformForMonthLabels = function () {
|
|
186
|
+
if (this.props.horizontal) {
|
|
187
|
+
return null;
|
|
188
|
+
}
|
|
189
|
+
return "".concat(this.getWeekWidth() + MONTH_LABEL_GUTTER_SIZE, ", 0");
|
|
190
|
+
};
|
|
191
|
+
ContributionGraph.prototype.getTransformForAllWeeks = function () {
|
|
192
|
+
if (this.props.horizontal) {
|
|
193
|
+
return "0, ".concat(this.getMonthLabelSize() - 100);
|
|
194
|
+
}
|
|
195
|
+
return null;
|
|
196
|
+
};
|
|
197
|
+
ContributionGraph.prototype.getViewBox = function () {
|
|
198
|
+
if (this.props.horizontal) {
|
|
199
|
+
return "".concat(this.getWidth(), " ").concat(this.getHeight());
|
|
200
|
+
}
|
|
201
|
+
return "".concat(this.getHeight(), " ").concat(this.getWidth());
|
|
202
|
+
};
|
|
203
|
+
ContributionGraph.prototype.getSquareCoordinates = function (dayIndex) {
|
|
204
|
+
if (this.props.horizontal) {
|
|
205
|
+
return [0, dayIndex * this.getSquareSizeWithGutter()];
|
|
206
|
+
}
|
|
207
|
+
return [dayIndex * this.getSquareSizeWithGutter(), 0];
|
|
208
|
+
};
|
|
209
|
+
ContributionGraph.prototype.getMonthLabelCoordinates = function (weekIndex) {
|
|
210
|
+
if (this.props.horizontal) {
|
|
211
|
+
return [
|
|
212
|
+
weekIndex * this.getSquareSizeWithGutter(),
|
|
213
|
+
this.getMonthLabelSize() - MONTH_LABEL_GUTTER_SIZE
|
|
214
|
+
];
|
|
215
|
+
}
|
|
216
|
+
var verticalOffset = -2;
|
|
217
|
+
return [
|
|
218
|
+
0,
|
|
219
|
+
(weekIndex + 1) * this.getSquareSizeWithGutter() + verticalOffset
|
|
220
|
+
];
|
|
221
|
+
};
|
|
222
|
+
ContributionGraph.prototype.renderSquare = function (dayIndex, index) {
|
|
223
|
+
var _this = this;
|
|
224
|
+
var indexOutOfRange = index < this.getNumEmptyDaysAtStart() ||
|
|
225
|
+
index >= this.getNumEmptyDaysAtStart() + this.props.numDays;
|
|
226
|
+
if (indexOutOfRange && !this.props.showOutOfRangeDays) {
|
|
227
|
+
return null;
|
|
228
|
+
}
|
|
229
|
+
var _a = this.getSquareCoordinates(dayIndex), x = _a[0], y = _a[1];
|
|
230
|
+
var _b = this.props.squareSize, squareSize = _b === void 0 ? SQUARE_SIZE : _b;
|
|
231
|
+
return (<Rect key={index} width={squareSize} height={squareSize} x={x + paddingLeft} y={y} title={this.getTitleForIndex(index)} fill={this.getClassNameForIndex(index)} onPress={function () {
|
|
232
|
+
_this.handleDayPress(index);
|
|
233
|
+
}} {...this.getTooltipDataAttrsForIndex(index)}/>);
|
|
234
|
+
};
|
|
235
|
+
ContributionGraph.prototype.handleDayPress = function (index) {
|
|
236
|
+
var _a;
|
|
237
|
+
if (!this.props.onDayPress) {
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
this.props.onDayPress(this.state.valueCache[index] && this.state.valueCache[index].value
|
|
241
|
+
? this.state.valueCache[index].value
|
|
242
|
+
: (_a = {},
|
|
243
|
+
_a[this.props.accessor] = 0,
|
|
244
|
+
_a.date = new Date(this.getStartDate().valueOf() + index * MILLISECONDS_IN_ONE_DAY),
|
|
245
|
+
_a));
|
|
246
|
+
};
|
|
247
|
+
ContributionGraph.prototype.renderWeek = function (weekIndex) {
|
|
248
|
+
var _this = this;
|
|
249
|
+
var _a = this.getTransformForWeek(weekIndex), x = _a[0], y = _a[1];
|
|
250
|
+
return (<G key={weekIndex} x={x} y={y}>
|
|
251
|
+
{range(DAYS_IN_WEEK).map(function (dayIndex) {
|
|
252
|
+
return _this.renderSquare(dayIndex, weekIndex * DAYS_IN_WEEK + dayIndex);
|
|
253
|
+
})}
|
|
254
|
+
</G>);
|
|
255
|
+
};
|
|
256
|
+
ContributionGraph.prototype.renderAllWeeks = function () {
|
|
257
|
+
var _this = this;
|
|
258
|
+
return range(this.getWeekCount()).map(function (weekIndex) {
|
|
259
|
+
return _this.renderWeek(weekIndex);
|
|
260
|
+
});
|
|
261
|
+
};
|
|
262
|
+
ContributionGraph.prototype.renderMonthLabels = function () {
|
|
263
|
+
var _this = this;
|
|
264
|
+
if (!this.props.showMonthLabels) {
|
|
265
|
+
return null;
|
|
266
|
+
}
|
|
267
|
+
var weekRange = range(this.getWeekCount() - 1); // don't render for last week, because label will be cut off
|
|
268
|
+
return weekRange.map(function (weekIndex) {
|
|
269
|
+
var endOfWeek = shiftDate(_this.getStartDateWithEmptyDays(), (weekIndex + 1) * DAYS_IN_WEEK);
|
|
270
|
+
var _a = _this.getMonthLabelCoordinates(weekIndex), x = _a[0], y = _a[1];
|
|
271
|
+
return endOfWeek.getDate() >= 1 && endOfWeek.getDate() <= DAYS_IN_WEEK ? (<Text key={weekIndex} x={x + paddingLeft} y={y + 8} {..._this.getPropsForLabels()}>
|
|
272
|
+
{_this.props.getMonthLabel
|
|
273
|
+
? _this.props.getMonthLabel(endOfWeek.getMonth())
|
|
274
|
+
: MONTH_LABELS[endOfWeek.getMonth()]}
|
|
275
|
+
</Text>) : null;
|
|
276
|
+
});
|
|
277
|
+
};
|
|
278
|
+
ContributionGraph.prototype.render = function () {
|
|
279
|
+
var style = this.props.style;
|
|
280
|
+
var _a = style.borderRadius, borderRadius = _a === void 0 ? 0 : _a;
|
|
281
|
+
if (!borderRadius && this.props.chartConfig.style) {
|
|
282
|
+
var stupidXo = this.props.chartConfig.style.borderRadius;
|
|
283
|
+
borderRadius = stupidXo;
|
|
284
|
+
}
|
|
285
|
+
var backgroundRadius = getNumberProp(borderRadius);
|
|
286
|
+
return (<View style={style}>
|
|
287
|
+
<Svg height={this.props.height} width={this.props.width}>
|
|
288
|
+
{this.renderDefs(__assign({ width: this.props.width, height: this.props.height }, this.props.chartConfig))}
|
|
289
|
+
<Rect width="100%" height={this.props.height} rx={backgroundRadius} ry={backgroundRadius} fill={this.getGradientUrl("backgroundGradient")}/>
|
|
290
|
+
<G>{this.renderMonthLabels()}</G>
|
|
291
|
+
<G>{this.renderAllWeeks()}</G>
|
|
292
|
+
</Svg>
|
|
293
|
+
</View>);
|
|
294
|
+
};
|
|
295
|
+
ContributionGraph.defaultProps = {
|
|
296
|
+
numDays: 200,
|
|
297
|
+
endDate: new Date(),
|
|
298
|
+
gutterSize: 1,
|
|
299
|
+
squareSize: SQUARE_SIZE,
|
|
300
|
+
horizontal: true,
|
|
301
|
+
showMonthLabels: true,
|
|
302
|
+
showOutOfRangeDays: false,
|
|
303
|
+
accessor: "count",
|
|
304
|
+
classForValue: function (value) { return (value ? "black" : "#8cc665"); },
|
|
305
|
+
style: {}
|
|
306
|
+
};
|
|
307
|
+
return ContributionGraph;
|
|
308
|
+
}(AbstractChart));
|
|
309
|
+
export default ContributionGraph;
|
|
310
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udHJpYnV0aW9uR3JhcGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2hhcnRzL2NvbnRyaWJ1dGlvbi1ncmFwaC9Db250cmlidXRpb25HcmFwaC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBYSxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakUsT0FBTyxhQUFhLE1BQU0sNEJBQTRCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUMzRSxPQUFPLEVBQ0wsWUFBWSxFQUNaLHVCQUF1QixFQUN2QixZQUFZLEVBQ2IsTUFBTSxhQUFhLENBQUM7QUFHckIsSUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO0FBQ3ZCLElBQU0sdUJBQXVCLEdBQUcsQ0FBQyxDQUFDO0FBQ2xDLElBQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztBQUN2QixJQUFNLEtBQUssR0FBRyxVQUFDLEtBQWEsSUFBSyxPQUFBLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsVUFBQyxDQUFDLEVBQUUsQ0FBQyxJQUFLLE9BQUEsQ0FBQyxFQUFELENBQUMsQ0FBQyxFQUExQyxDQUEwQyxDQUFDO0FBYTVFO0lBQWdDLHFDQUcvQjtJQUNDLDJCQUFZLEtBQTZCO1FBQ3ZDLFlBQUEsTUFBSyxZQUFDLEtBQUssQ0FBQyxTQUFDO1FBRVQsSUFBQSxLQUFxQyxLQUFJLENBQUMsYUFBYSxDQUFD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LENBQ0gsS0FBSyxDQUFDLE1BQU0sQ0FDWixNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUMxQixFQUFFLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUNyQixFQUFFLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUNyQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLENBQUMsRUFFbEQ7VUFBQSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUNoQztVQUFBLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUMvQjtRQUFBLEVBQUUsR0FBRyxDQUNQO01BQUEsRUFBRSxJQUFJLENBQUMsQ0FDUixDQUFDO0lBQ0osQ0FBQztJQTVDYSw4QkFBWSxHQUFHO1FBQzNCLE9BQU8sRUFBRSxHQUFHO1FBQ1osT0FBTyxFQUFFLElBQUksSUFBSSxFQUFFO1FBQ25CLFVBQVUsRUFBRSxDQUFDO1FBQ2IsVUFBVSxFQUFFLFdBQVc7UUFDdkIsVUFBVSxFQUFFLElBQUk7UUFDaEIsZUFBZSxFQUFFLElBQUk7UUFDckIsa0JBQWtCLEVBQUUsS0FBSztRQUN6QixRQUFRLEVBQUUsT0FBTztRQUNqQixhQUFhLEVBQUUsVUFBQyxLQUFLLElBQUssT0FBQSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBN0IsQ0FBNkI7UUFDdkQsS0FBSyxFQUFFLEVBQUU7S0FDVixDQUFDO0lBa0NKLHdCQUFDO0NBQUEsQUExWEQsQ0FBZ0MsYUFBYSxHQTBYNUM7QUFFRCxlQUFlLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgVmlldyB9IGZyb20gXCJyZWFjdC1uYXRpdmVcIjtcbmltcG9ydCB7IEcsIFJlY3QsIFJlY3RQcm9wcywgU3ZnLCBUZXh0IH0gZnJvbSBcInJlYWN0LW5hdGl2ZS1zdmdcIjtcblxuaW1wb3J0IEFic3RyYWN0Q2hhcnQgZnJvbSBcIi4uLy4uL3NoYXJlZC9BYnN0cmFjdENoYXJ0XCI7XG5pbXBvcnQgeyBnZXROdW1iZXJQcm9wLCBtYXBWYWx1ZSB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXRpbHNcIjtcbmltcG9ydCB7IGNvbnZlcnRUb0RhdGUsIGdldEJlZ2lubmluZ1RpbWVGb3JEYXRlLCBzaGlmdERhdGUgfSBmcm9tIFwiLi9kYXRlXCI7XG5pbXBvcnQge1xuICBEQVlTX0lOX1dFRUssXG4gIE1JTExJU0VDT05EU19JTl9PTkVfREFZLFxuICBNT05USF9MQUJFTFNcbn0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBDb250cmlidXRpb25HcmFwaFByb3BzLCBDb250cmlidXRpb25HcmFwaFN0YXRlIH0gZnJvbSBcIi5cIjtcblxuY29uc3QgU1FVQVJFX1NJWkUgPSAyMDtcbmNvbnN0IE1PTlRIX0xBQkVMX0dVVFRFUl9TSVpFID0gODtcbmNvbnN0IHBhZGRpbmdMZWZ0ID0gMzI7XG5jb25zdCByYW5nZSA9IChjb3VudDogbnVtYmVyKSA9PiBBcnJheS5mcm9tKHsgbGVuZ3RoOiBjb3VudCB9LCAoXywgaSkgPT4gaSk7XG5cbmV4cG9ydCB0eXBlIENvbnRyaWJ1dGlvbkNoYXJ0VmFsdWUgPSB7XG4gIHZhbHVlOiBudW1iZXI7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHRvb2x0aXBEYXRhQXR0cnM6IFRvb2x0aXBEYXRhQXR0cnM7XG4gIGRhdGU6IERhdGU7XG59O1xuXG5leHBvcnQgdHlwZSBUb29sdGlwRGF0YUF0dHJzID0gKFxuICB2YWx1ZTogQ29udHJpYnV0aW9uQ2hhcnRWYWx1ZVxuKSA9PiBQYXJ0aWFsPFJlY3RQcm9wcz4gfCBQYXJ0aWFsPFJlY3RQcm9wcz47XG5cbmNsYXNzIENvbnRyaWJ1dGlvbkdyYXBoIGV4dGVuZHMgQWJzdHJhY3RDaGFydDxcbiAgQ29udHJpYnV0aW9uR3JhcGhQcm9wcyxcbiAgQ29udHJpYnV0aW9uR3JhcGhTdGF0ZVxuPiB7XG4gIGNvbnN0cnVjdG9yKHByb3BzOiBDb250cmlidXRpb25HcmFwaFByb3BzKSB7XG4gICAgc3VwZXIocHJvcHMpO1xuXG4gICAgbGV0IHsgbWF4VmFsdWUsIG1pblZhbHVlLCB2YWx1ZUNhY2hlIH0gPSB0aGlzLmdldFZhbHVlQ2FjaGUocHJvcHMudmFsdWVzKTtcblxuICAgIHRoaXMuc3RhdGUgPSB7XG4gICAgICBtYXhWYWx1ZSxcbiAgICAgIG1pblZhbHVlLFxuICAgICAgdmFsdWVDYWNoZVxuICAgIH07XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzOiBDb250cmlidXRpb25HcmFwaFByb3BzKSB7XG4gICAgY29uc3Qgc2hvdWxkVXBkYXRlVmFsdWVDYWNoZSA9XG4gICAgICBwcmV2UHJvcHMudmFsdWVzICE9PSB0aGlzLnByb3BzLnZhbHVlcyB8fFxuICAgICAgcHJldlByb3BzLmVuZERhdGUgIT09IHRoaXMucHJvcHMuZW5kRGF0ZSB8fFxuICAgICAgcHJldlByb3BzLm51bURheXMgIT09IHRoaXMucHJvcHMubnVtRGF5cyB8fFxuICAgICAgcHJldlByb3BzLmFjY2Vzc29yICE9PSB0aGlzLnByb3BzLmFjY2Vzc29yIHx8XG4gICAgICBwcmV2UHJvcHMudGl0bGVGb3JWYWx1ZSAhPT0gdGhpcy5wcm9wcy50aXRsZUZvclZhbHVlIHx8XG4gICAgICBwcmV2UHJvcHMudG9vbHRpcERhdGFBdHRycyAhPT0gdGhpcy5wcm9wcy50b29sdGlwRGF0YUF0dHJzO1xuXG4gICAgaWYgKCFzaG91bGRVcGRhdGVWYWx1ZUNhY2hlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHsgbWF4VmFsdWUsIG1pblZhbHVlLCB2YWx1ZUNhY2hlIH0gPSB0aGlzLmdldFZhbHVlQ2FjaGUoXG4gICAgICB0aGlzLnByb3BzLnZhbHVlc1xuICAgICk7XG5cbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIG1heFZhbHVlLFxuICAgICAgbWluVmFsdWUsXG4gICAgICB2YWx1ZUNhY2hlXG4gICAgfSk7XG4gIH1cblxuICBnZXRTcXVhcmVTaXplV2l0aEd1dHRlcigpIHtcbiAgICByZXR1cm4gKHRoaXMucHJvcHMuc3F1YXJlU2l6ZSB8fCBTUVVBUkVfU0laRSkgKyB0aGlzLnByb3BzLmd1dHRlclNpemU7XG4gIH1cblxuICBnZXRNb250aExhYmVsU2l6ZSgpIHtcbiAgICBsZXQgeyBzcXVhcmVTaXplID0gU1FVQVJFX1NJWkUgfSA9IHRoaXMucHJvcHM7XG4gICAgaWYgKCF0aGlzLnByb3BzLnNob3dNb250aExhYmVscykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIGlmICh0aGlzLnByb3BzLmhvcml6b250YWwpIHtcbiAgICAgIHJldHVybiBzcXVhcmVTaXplICsgTU9OVEhfTEFCRUxfR1VUVEVSX1NJWkU7XG4gICAgfVxuICAgIHJldHVybiAyICogKHNxdWFyZVNpemUgKyBNT05USF9MQUJFTF9HVVRURVJfU0laRSk7XG4gIH1cblxuICBnZXRTdGFydERhdGUoKSB7XG4gICAgcmV0dXJuIHNoaWZ0RGF0ZSh0aGlzLmdldEVuZERhdGUoKSwgLXRoaXMucHJvcHMubnVtRGF5cyArIDEpOyAvLyArMSBiZWNhdXNlIGVuZERhdGUgaXMgaW5jbHVzaXZlXG4gIH1cblxuICBnZXRFbmREYXRlKCkge1xuICAgIHJldHVybiBnZXRCZWdpbm5pbmdUaW1lRm9yRGF0ZShjb252ZXJ0VG9EYXRlKHRoaXMucHJvcHMuZW5kRGF0ZSkpO1xuICB9XG5cbiAgZ2V0U3RhcnREYXRlV2l0aEVtcHR5RGF5cygpIHtcbiAgICByZXR1cm4gc2hpZnREYXRlKHRoaXMuZ2V0U3RhcnREYXRlKCksIC10aGlzLmdldE51bUVtcHR5RGF5c0F0U3RhcnQoKSk7XG4gIH1cblxuICBnZXROdW1FbXB0eURheXNBdFN0YXJ0KCkge1xuICAgIHJldHVybiB0aGlzLmdldFN0YXJ0RGF0ZSgpLmdldERheSgpO1xuICB9XG5cbiAgZ2V0TnVtRW1wdHlEYXlzQXRFbmQoKSB7XG4gICAgcmV0dXJuIERBWVNfSU5fV0VFSyAtIDEgLSB0aGlzLmdldEVuZERhdGUoKS5nZXREYXkoKTtcbiAgfVxuXG4gIGdldFdlZWtDb3VudCgpIHtcbiAgICBjb25zdCBudW1EYXlzUm91bmRlZFRvV2VlayA9XG4gICAgICB0aGlzLnByb3BzLm51bURheXMgK1xuICAgICAgdGhpcy5nZXROdW1FbXB0eURheXNBdFN0YXJ0KCkgK1xuICAgICAgdGhpcy5nZXROdW1FbXB0eURheXNBdEVuZCgpO1xuICAgIHJldHVybiBNYXRoLmNlaWwobnVtRGF5c1JvdW5kZWRUb1dlZWsgLyBEQVlTX0lOX1dFRUspO1xuICB9XG5cbiAgZ2V0V2Vla1dpZHRoKCkge1xuICAgIHJldHVybiBEQVlTX0lOX1dFRUsgKiB0aGlzLmdldFNxdWFyZVNpemVXaXRoR3V0dGVyKCk7XG4gIH1cblxuICBnZXRXaWR0aCgpIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5nZXRXZWVrQ291bnQoKSAqIHRoaXMuZ2V0U3F1YXJlU2l6ZVdpdGhHdXR0ZXIoKSAtXG4gICAgICB0aGlzLnByb3BzLmd1dHRlclNpemVcbiAgICApO1xuICB9XG5cbiAgZ2V0SGVpZ2h0KCkge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmdldFdlZWtXaWR0aCgpICsgKHRoaXMuZ2V0TW9udGhMYWJlbFNpemUoKSAtIHRoaXMucHJvcHMuZ3V0dGVyU2l6ZSlcbiAgICApO1xuICB9XG5cbiAgZ2V0VmFsdWVDYWNoZSh2YWx1ZXM6IENvbnRyaWJ1dGlvbkNoYXJ0VmFsdWVbXSkge1xuICAgIGxldCBtaW5WYWx1ZSA9IEluZmluaXR5LFxuICAgICAgbWF4VmFsdWUgPSAtSW5maW5pdHk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgdmFsdWVDYWNoZTogdmFsdWVzLnJlZHVjZSgobWVtbywgdmFsdWUpID0+IHtcbiAgICAgICAgY29uc3QgZGF0ZSA9IGNvbnZlcnRUb0RhdGUodmFsdWUuZGF0ZSk7XG5cbiAgICAgICAgY29uc3QgaW5kZXggPSBNYXRoLmZsb29yKFxuICAgICAgICAgIChkYXRlLnZhbHVlT2YoKSAtIHRoaXMuZ2V0U3RhcnREYXRlV2l0aEVtcHR5RGF5cygpLnZhbHVlT2YoKSkgL1xuICAgICAgICAgICAgTUlMTElTRUNPTkRTX0lOX09ORV9EQVlcbiAgICAgICAgKTtcblxuICAgICAgICBtaW5WYWx1ZSA9IE1hdGgubWluKHZhbHVlW3RoaXMucHJvcHMuYWNjZXNzb3JdLCBtaW5WYWx1ZSk7XG4gICAgICAgIG1heFZhbHVlID0gTWF0aC5tYXgodmFsdWVbdGhpcy5wcm9wcy5hY2Nlc3Nvcl0sIG1heFZhbHVlKTtcblxuICAgICAgICBtZW1vW2luZGV4XSA9IHtcbiAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICB0aXRsZTogdGhpcy5wcm9wcy50aXRsZUZvclZhbHVlXG4gICAgICAgICAgICA/IHRoaXMucHJvcHMudGl0bGVGb3JWYWx1ZSh2YWx1ZSlcbiAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgICB0b29sdGlwRGF0YUF0dHJzOiB0aGlzLmdldFRvb2x0aXBEYXRhQXR0cnNGb3JWYWx1ZSh2YWx1ZSlcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gbWVtbztcbiAgICAgIH0sIHt9KSxcbiAgICAgIG1pblZhbHVlLFxuICAgICAgbWF4VmFsdWVcbiAgICB9O1xuICB9XG5cbiAgZ2V0VmFsdWVGb3JJbmRleChpbmRleDogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuc3RhdGUudmFsdWVDYWNoZVtpbmRleF0pIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXRlLnZhbHVlQ2FjaGVbaW5kZXhdLnZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGdldENsYXNzTmFtZUZvckluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5zdGF0ZS52YWx1ZUNhY2hlW2luZGV4XSkge1xuICAgICAgaWYgKHRoaXMuc3RhdGUudmFsdWVDYWNoZVtpbmRleF0udmFsdWUpIHtcbiAgICAgICAgY29uc3QgY291bnQgPSB0aGlzLnN0YXRlLnZhbHVlQ2FjaGVbaW5kZXhdLnZhbHVlW3RoaXMucHJvcHMuYWNjZXNzb3JdO1xuXG4gICAgICAgIGlmIChjb3VudCkge1xuICAgICAgICAgIGNvbnN0IG9wYWNpdHkgPSBtYXBWYWx1ZShcbiAgICAgICAgICAgIGNvdW50LFxuICAgICAgICAgICAgdGhpcy5zdGF0ZS5tYXhWYWx1ZSA9PT0gdGhpcy5zdGF0ZS5taW5WYWx1ZVxuICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgOiB0aGlzLnN0YXRlLm1pblZhbHVlLFxuICAgICAgICAgICAgaXNOYU4odGhpcy5zdGF0ZS5tYXhWYWx1ZSkgPyAxIDogdGhpcy5zdGF0ZS5tYXhWYWx1ZSxcbiAgICAgICAgICAgIDAuMTUgKyAwLjA1LCAvLyArIDAuMDUgdG8gbWFrZSBzbWFsbGVyIHZhbHVlcyBhIGJpdCBtb3JlIHZpc2libGVcbiAgICAgICAgICAgIDFcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgcmV0dXJuIHRoaXMucHJvcHMuY2hhcnRDb25maWcuY29sb3Iob3BhY2l0eSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wcm9wcy5jaGFydENvbmZpZy5jb2xvcigwLjE1KTtcbiAgfVxuXG4gIGdldFRpdGxlRm9ySW5kZXgoaW5kZXg6IG51bWJlcikge1xuICAgIGlmICh0aGlzLnN0YXRlLnZhbHVlQ2FjaGVbaW5kZXhdKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdGF0ZS52YWx1ZUNhY2hlW2luZGV4XS50aXRsZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wcm9wcy50aXRsZUZvclZhbHVlID8gdGhpcy5wcm9wcy50aXRsZUZvclZhbHVlKG51bGwpIDogbnVsbDtcbiAgfVxuXG4gIGdldFRvb2x0aXBEYXRhQXR0cnNGb3JJbmRleChpbmRleDogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuc3RhdGUudmFsdWVDYWNoZVtpbmRleF0pIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXRlLnZhbHVlQ2FjaGVbaW5kZXhdLnRvb2x0aXBEYXRhQXR0cnM7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZ2V0VG9vbHRpcERhdGFBdHRyc0ZvclZhbHVlKHtcbiAgICAgIGRhdGU6IG51bGwsXG4gICAgICBbdGhpcy5wcm9wcy5hY2Nlc3Nvcl06IG51bGxcbiAgICB9IGFzIENvbnRyaWJ1dGlvbkNoYXJ0VmFsdWUpO1xuICB9XG5cbiAgZ2V0VG9vbHRpcERhdGFBdHRyc0ZvclZhbHVlKHZhbHVlOiBDb250cmlidXRpb25DaGFydFZhbHVlKSB7XG4gICAgY29uc3QgeyB0b29sdGlwRGF0YUF0dHJzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKHR5cGVvZiB0b29sdGlwRGF0YUF0dHJzID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIHJldHVybiB0b29sdGlwRGF0YUF0dHJzKHZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdG9vbHRpcERhdGFBdHRycztcbiAgfVxuXG4gIGdldFRyYW5zZm9ybUZvcldlZWsod2Vla0luZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5wcm9wcy5ob3Jpem9udGFsKSB7XG4gICAgICByZXR1cm4gW3dlZWtJbmRleCAqIHRoaXMuZ2V0U3F1YXJlU2l6ZVdpdGhHdXR0ZXIoKSwgNTBdO1xuICAgIH1cbiAgICByZXR1cm4gWzEwLCB3ZWVrSW5kZXggKiB0aGlzLmdldFNxdWFyZVNpemVXaXRoR3V0dGVyKCldO1xuICB9XG5cbiAgZ2V0VHJhbnNmb3JtRm9yTW9udGhMYWJlbHMoKSB7XG4gICAgaWYgKHRoaXMucHJvcHMuaG9yaXpvbnRhbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiBgJHt0aGlzLmdldFdlZWtXaWR0aCgpICsgTU9OVEhfTEFCRUxfR1VUVEVSX1NJWkV9LCAwYDtcbiAgfVxuXG4gIGdldFRyYW5zZm9ybUZvckFsbFdlZWtzKCkge1xuICAgIGlmICh0aGlzLnByb3BzLmhvcml6b250YWwpIHtcbiAgICAgIHJldHVybiBgMCwgJHt0aGlzLmdldE1vbnRoTGFiZWxTaXplKCkgLSAxMDB9YDtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBnZXRWaWV3Qm94KCkge1xuICAgIGlmICh0aGlzLnByb3BzLmhvcml6b250YWwpIHtcbiAgICAgIHJldHVybiBgJHt0aGlzLmdldFdpZHRoKCl9ICR7dGhpcy5nZXRIZWlnaHQoKX1gO1xuICAgIH1cbiAgICByZXR1cm4gYCR7dGhpcy5nZXRIZWlnaHQoKX0gJHt0aGlzLmdldFdpZHRoKCl9YDtcbiAgfVxuXG4gIGdldFNxdWFyZUNvb3JkaW5hdGVzKGRheUluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5wcm9wcy5ob3Jpem9udGFsKSB7XG4gICAgICByZXR1cm4gWzAsIGRheUluZGV4ICogdGhpcy5nZXRTcXVhcmVTaXplV2l0aEd1dHRlcigpXTtcbiAgICB9XG4gICAgcmV0dXJuIFtkYXlJbmRleCAqIHRoaXMuZ2V0U3F1YXJlU2l6ZVdpdGhHdXR0ZXIoKSwgMF07XG4gIH1cblxuICBnZXRNb250aExhYmVsQ29vcmRpbmF0ZXMod2Vla0luZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5wcm9wcy5ob3Jpem9udGFsKSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICB3ZWVrSW5kZXggKiB0aGlzLmdldFNxdWFyZVNpemVXaXRoR3V0dGVyKCksXG4gICAgICAgIHRoaXMuZ2V0TW9udGhMYWJlbFNpemUoKSAtIE1PTlRIX0xBQkVMX0dVVFRFUl9TSVpFXG4gICAgICBdO1xuICAgIH1cbiAgICBjb25zdCB2ZXJ0aWNhbE9mZnNldCA9IC0yO1xuICAgIHJldHVybiBbXG4gICAgICAwLFxuICAgICAgKHdlZWtJbmRleCArIDEpICogdGhpcy5nZXRTcXVhcmVTaXplV2l0aEd1dHRlcigpICsgdmVydGljYWxPZmZzZXRcbiAgICBdO1xuICB9XG5cbiAgcmVuZGVyU3F1YXJlKGRheUluZGV4OiBudW1iZXIsIGluZGV4OiBudW1iZXIpIHtcbiAgICBjb25zdCBpbmRleE91dE9mUmFuZ2UgPVxuICAgICAgaW5kZXggPCB0aGlzLmdldE51bUVtcHR5RGF5c0F0U3RhcnQoKSB8fFxuICAgICAgaW5kZXggPj0gdGhpcy5nZXROdW1FbXB0eURheXNBdFN0YXJ0KCkgKyB0aGlzLnByb3BzLm51bURheXM7XG5cbiAgICBpZiAoaW5kZXhPdXRPZlJhbmdlICYmICF0aGlzLnByb3BzLnNob3dPdXRPZlJhbmdlRGF5cykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgW3gsIHldID0gdGhpcy5nZXRTcXVhcmVDb29yZGluYXRlcyhkYXlJbmRleCk7XG4gICAgY29uc3QgeyBzcXVhcmVTaXplID0gU1FVQVJFX1NJWkUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFJlY3RcbiAgICAgICAga2V5PXtpbmRleH1cbiAgICAgICAgd2lkdGg9e3NxdWFyZVNpemV9XG4gICAgICAgIGhlaWdodD17c3F1YXJlU2l6ZX1cbiAgICAgICAgeD17eCArIHBhZGRpbmdMZWZ0fVxuICAgICAgICB5PXt5fVxuICAgICAgICB0aXRsZT17dGhpcy5nZXRUaXRsZUZvckluZGV4KGluZGV4KX1cbiAgICAgICAgZmlsbD17dGhpcy5nZXRDbGFzc05hbWVGb3JJbmRleChpbmRleCl9XG4gICAgICAgIG9uUHJlc3M9eygpID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZURheVByZXNzKGluZGV4KTtcbiAgICAgICAgfX1cbiAgICAgICAgey4uLnRoaXMuZ2V0VG9vbHRpcERhdGFBdHRyc0ZvckluZGV4KGluZGV4KX1cbiAgICAgIC8+XG4gICAgKTtcbiAgfVxuXG4gIGhhbmRsZURheVByZXNzKGluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAoIXRoaXMucHJvcHMub25EYXlQcmVzcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucHJvcHMub25EYXlQcmVzcyhcbiAgICAgIHRoaXMuc3RhdGUudmFsdWVDYWNoZVtpbmRleF0gJiYgdGhpcy5zdGF0ZS52YWx1ZUNhY2hlW2luZGV4XS52YWx1ZVxuICAgICAgICA/IHRoaXMuc3RhdGUudmFsdWVDYWNoZVtpbmRleF0udmFsdWVcbiAgICAgICAgOiB7XG4gICAgICAgICAgICBbdGhpcy5wcm9wcy5hY2Nlc3Nvcl06IDAsXG4gICAgICAgICAgICBkYXRlOiBuZXcgRGF0ZShcbiAgICAgICAgICAgICAgdGhpcy5nZXRTdGFydERhdGUoKS52YWx1ZU9mKCkgKyBpbmRleCAqIE1JTExJU0VDT05EU19JTl9PTkVfREFZXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuICAgICk7XG4gIH1cblxuICByZW5kZXJXZWVrKHdlZWtJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgW3gsIHldID0gdGhpcy5nZXRUcmFuc2Zvcm1Gb3JXZWVrKHdlZWtJbmRleCk7XG4gICAgcmV0dXJuIChcbiAgICAgIDxHIGtleT17d2Vla0luZGV4fSB4PXt4fSB5PXt5fT5cbiAgICAgICAge3JhbmdlKERBWVNfSU5fV0VFSykubWFwKChkYXlJbmRleCkgPT5cbiAgICAgICAgICB0aGlzLnJlbmRlclNxdWFyZShkYXlJbmRleCwgd2Vla0luZGV4ICogREFZU19JTl9XRUVLICsgZGF5SW5kZXgpXG4gICAgICAgICl9XG4gICAgICA8L0c+XG4gICAgKTtcbiAgfVxuXG4gIHJlbmRlckFsbFdlZWtzKCkge1xuICAgIHJldHVybiByYW5nZSh0aGlzLmdldFdlZWtDb3VudCgpKS5tYXAoKHdlZWtJbmRleCkgPT5cbiAgICAgIHRoaXMucmVuZGVyV2Vlayh3ZWVrSW5kZXgpXG4gICAgKTtcbiAgfVxuXG4gIHJlbmRlck1vbnRoTGFiZWxzKCkge1xuICAgIGlmICghdGhpcy5wcm9wcy5zaG93TW9udGhMYWJlbHMpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IHdlZWtSYW5nZSA9IHJhbmdlKHRoaXMuZ2V0V2Vla0NvdW50KCkgLSAxKTsgLy8gZG9uJ3QgcmVuZGVyIGZvciBsYXN0IHdlZWssIGJlY2F1c2UgbGFiZWwgd2lsbCBiZSBjdXQgb2ZmXG5cbiAgICByZXR1cm4gd2Vla1JhbmdlLm1hcCgod2Vla0luZGV4KSA9PiB7XG4gICAgICBjb25zdCBlbmRPZldlZWsgPSBzaGlmdERhdGUoXG4gICAgICAgIHRoaXMuZ2V0U3RhcnREYXRlV2l0aEVtcHR5RGF5cygpLFxuICAgICAgICAod2Vla0luZGV4ICsgMSkgKiBEQVlTX0lOX1dFRUtcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IFt4LCB5XSA9IHRoaXMuZ2V0TW9udGhMYWJlbENvb3JkaW5hdGVzKHdlZWtJbmRleCk7XG5cbiAgICAgIHJldHVybiBlbmRPZldlZWsuZ2V0RGF0ZSgpID49IDEgJiYgZW5kT2ZXZWVrLmdldERhdGUoKSA8PSBEQVlTX0lOX1dFRUsgPyAoXG4gICAgICAgIDxUZXh0XG4gICAgICAgICAga2V5PXt3ZWVrSW5kZXh9XG4gICAgICAgICAgeD17eCArIHBhZGRpbmdMZWZ0fVxuICAgICAgICAgIHk9e3kgKyA4fVxuICAgICAgICAgIHsuLi50aGlzLmdldFByb3BzRm9yTGFiZWxzKCl9XG4gICAgICAgID5cbiAgICAgICAgICB7dGhpcy5wcm9wcy5nZXRNb250aExhYmVsXG4gICAgICAgICAgICA/IHRoaXMucHJvcHMuZ2V0TW9udGhMYWJlbChlbmRPZldlZWsuZ2V0TW9udGgoKSlcbiAgICAgICAgICAgIDogTU9OVEhfTEFCRUxTW2VuZE9mV2Vlay5nZXRNb250aCgpXX1cbiAgICAgICAgPC9UZXh0PlxuICAgICAgKSA6IG51bGw7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICBudW1EYXlzOiAyMDAsXG4gICAgZW5kRGF0ZTogbmV3IERhdGUoKSxcbiAgICBndXR0ZXJTaXplOiAxLFxuICAgIHNxdWFyZVNpemU6IFNRVUFSRV9TSVpFLFxuICAgIGhvcml6b250YWw6IHRydWUsXG4gICAgc2hvd01vbnRoTGFiZWxzOiB0cnVlLFxuICAgIHNob3dPdXRPZlJhbmdlRGF5czogZmFsc2UsXG4gICAgYWNjZXNzb3I6IFwiY291bnRcIixcbiAgICBjbGFzc0ZvclZhbHVlOiAodmFsdWUpID0+ICh2YWx1ZSA/IFwiYmxhY2tcIiA6IFwiIzhjYzY2NVwiKSxcbiAgICBzdHlsZToge31cbiAgfTtcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgeyBzdHlsZSB9ID0gdGhpcy5wcm9wcztcblxuICAgIGxldCB7IGJvcmRlclJhZGl1cyA9IDAgfSA9IHN0eWxlO1xuXG4gICAgaWYgKCFib3JkZXJSYWRpdXMgJiYgdGhpcy5wcm9wcy5jaGFydENvbmZpZy5zdHlsZSkge1xuICAgICAgY29uc3Qgc3R1cGlkWG8gPSB0aGlzLnByb3BzLmNoYXJ0Q29uZmlnLnN0eWxlLmJvcmRlclJhZGl1cztcbiAgICAgIGJvcmRlclJhZGl1cyA9IHN0dXBpZFhvO1xuICAgIH1cbiAgICBjb25zdCBiYWNrZ3JvdW5kUmFkaXVzID0gZ2V0TnVtYmVyUHJvcChib3JkZXJSYWRpdXMpO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxWaWV3IHN0eWxlPXtzdHlsZX0+XG4gICAgICAgIDxTdmcgaGVpZ2h0PXt0aGlzLnByb3BzLmhlaWdodH0gd2lkdGg9e3RoaXMucHJvcHMud2lkdGh9PlxuICAgICAgICAgIHt0aGlzLnJlbmRlckRlZnMoe1xuICAgICAgICAgICAgd2lkdGg6IHRoaXMucHJvcHMud2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQ6IHRoaXMucHJvcHMuaGVpZ2h0LFxuICAgICAgICAgICAgLi4udGhpcy5wcm9wcy5jaGFydENvbmZpZ1xuICAgICAgICAgIH0pfVxuICAgICAgICAgIDxSZWN0XG4gICAgICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICAgICAgaGVpZ2h0PXt0aGlzLnByb3BzLmhlaWdodH1cbiAgICAgICAgICAgIHJ4PXtiYWNrZ3JvdW5kUmFkaXVzfVxuICAgICAgICAgICAgcnk9e2JhY2tncm91bmRSYWRpdXN9XG4gICAgICAgICAgICBmaWxsPXt0aGlzLmdldEdyYWRpZW50VXJsKFwiYmFja2dyb3VuZEdyYWRpZW50XCIpfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEc+e3RoaXMucmVuZGVyTW9udGhMYWJlbHMoKX08L0c+XG4gICAgICAgICAgPEc+e3RoaXMucmVuZGVyQWxsV2Vla3MoKX08L0c+XG4gICAgICAgIDwvU3ZnPlxuICAgICAgPC9WaWV3PlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgQ29udHJpYnV0aW9uR3JhcGg7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/charts/contribution-graph/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,QAAsB,CAAC;AAE3D,eAAO,MAAM,YAAY,IAAI,CAAC;AAE9B,eAAO,MAAM,YAAY;;;;;;;;;;;;;CAaxB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export var MILLISECONDS_IN_ONE_DAY = 24 * 60 * 60 * 1000;
|
|
2
|
+
export var DAYS_IN_WEEK = 7;
|
|
3
|
+
export var MONTH_LABELS = {
|
|
4
|
+
0: "Jan",
|
|
5
|
+
1: "Feb",
|
|
6
|
+
2: "Mar",
|
|
7
|
+
3: "Apr",
|
|
8
|
+
4: "May",
|
|
9
|
+
5: "Jun",
|
|
10
|
+
6: "Jul",
|
|
11
|
+
7: "Aug",
|
|
12
|
+
8: "Sep",
|
|
13
|
+
9: "Oct",
|
|
14
|
+
10: "Nov",
|
|
15
|
+
11: "Dec"
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NoYXJ0cy9jb250cmlidXRpb24tZ3JhcGgvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxJQUFNLHVCQUF1QixHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQztBQUUzRCxNQUFNLENBQUMsSUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBRTlCLE1BQU0sQ0FBQyxJQUFNLFlBQVksR0FBRztJQUMxQixDQUFDLEVBQUUsS0FBSztJQUNSLENBQUMsRUFBRSxLQUFLO0lBQ1IsQ0FBQyxFQUFFLEtBQUs7SUFDUixDQUFDLEVBQUUsS0FBSztJQUNSLENBQUMsRUFBRSxLQUFLO0lBQ1IsQ0FBQyxFQUFFLEtBQUs7SUFDUixDQUFDLEVBQUUsS0FBSztJQUNSLENBQUMsRUFBRSxLQUFLO0lBQ1IsQ0FBQyxFQUFFLEtBQUs7SUFDUixDQUFDLEVBQUUsS0FBSztJQUNSLEVBQUUsRUFBRSxLQUFLO0lBQ1QsRUFBRSxFQUFFLEtBQUs7Q0FDVixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IE1JTExJU0VDT05EU19JTl9PTkVfREFZID0gMjQgKiA2MCAqIDYwICogMTAwMDtcblxuZXhwb3J0IGNvbnN0IERBWVNfSU5fV0VFSyA9IDc7XG5cbmV4cG9ydCBjb25zdCBNT05USF9MQUJFTFMgPSB7XG4gIDA6IFwiSmFuXCIsXG4gIDE6IFwiRmViXCIsXG4gIDI6IFwiTWFyXCIsXG4gIDM6IFwiQXByXCIsXG4gIDQ6IFwiTWF5XCIsXG4gIDU6IFwiSnVuXCIsXG4gIDY6IFwiSnVsXCIsXG4gIDc6IFwiQXVnXCIsXG4gIDg6IFwiU2VwXCIsXG4gIDk6IFwiT2N0XCIsXG4gIDEwOiBcIk5vdlwiLFxuICAxMTogXCJEZWNcIlxufTtcbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare function shiftDate(date: Date, numDays: number): Date;
|
|
2
2
|
export declare function getBeginningTimeForDate(date: Date): Date;
|
|
3
3
|
export declare function convertToDate(obj: string | number | Date): Date;
|
|
4
|
-
//# sourceMappingURL=
|
|
4
|
+
//# sourceMappingURL=date.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../src/charts/contribution-graph/date.ts"],"names":[],"mappings":"AACA,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,QAIpD;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,IAAI,QAEjD;AAGD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,QAExD"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// returns a new date shifted a certain number of days (can be negative)
|
|
2
|
+
export function shiftDate(date, numDays) {
|
|
3
|
+
var newDate = new Date(date);
|
|
4
|
+
newDate.setDate(newDate.getDate() + numDays);
|
|
5
|
+
return newDate;
|
|
6
|
+
}
|
|
7
|
+
export function getBeginningTimeForDate(date) {
|
|
8
|
+
return new Date(date.getFullYear(), date.getMonth(), date.getDate());
|
|
9
|
+
}
|
|
10
|
+
// obj can be a parseable string, a millisecond timestamp, or a Date object
|
|
11
|
+
export function convertToDate(obj) {
|
|
12
|
+
return obj instanceof Date ? obj : new Date(obj);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jaGFydHMvY29udHJpYnV0aW9uLWdyYXBoL2RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0VBQXdFO0FBQ3hFLE1BQU0sVUFBVSxTQUFTLENBQUMsSUFBVSxFQUFFLE9BQWU7SUFDbkQsSUFBTSxPQUFPLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDN0MsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxJQUFVO0lBQ2hELE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztBQUN2RSxDQUFDO0FBRUQsMkVBQTJFO0FBQzNFLE1BQU0sVUFBVSxhQUFhLENBQUMsR0FBMkI7SUFDdkQsT0FBTyxHQUFHLFlBQVksSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyByZXR1cm5zIGEgbmV3IGRhdGUgc2hpZnRlZCBhIGNlcnRhaW4gbnVtYmVyIG9mIGRheXMgKGNhbiBiZSBuZWdhdGl2ZSlcbmV4cG9ydCBmdW5jdGlvbiBzaGlmdERhdGUoZGF0ZTogRGF0ZSwgbnVtRGF5czogbnVtYmVyKSB7XG4gIGNvbnN0IG5ld0RhdGUgPSBuZXcgRGF0ZShkYXRlKTtcbiAgbmV3RGF0ZS5zZXREYXRlKG5ld0RhdGUuZ2V0RGF0ZSgpICsgbnVtRGF5cyk7XG4gIHJldHVybiBuZXdEYXRlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmVnaW5uaW5nVGltZUZvckRhdGUoZGF0ZTogRGF0ZSkge1xuICByZXR1cm4gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCksIGRhdGUuZ2V0RGF0ZSgpKTtcbn1cblxuLy8gb2JqIGNhbiBiZSBhIHBhcnNlYWJsZSBzdHJpbmcsIGEgbWlsbGlzZWNvbmQgdGltZXN0YW1wLCBvciBhIERhdGUgb2JqZWN0XG5leHBvcnQgZnVuY3Rpb24gY29udmVydFRvRGF0ZShvYmo6IHN0cmluZyB8IG51bWJlciB8IERhdGUpIHtcbiAgcmV0dXJuIG9iaiBpbnN0YW5jZW9mIERhdGUgPyBvYmogOiBuZXcgRGF0ZShvYmopO1xufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ViewStyle } from "react-native";
|
|
2
|
-
import { AbstractChartProps } from "
|
|
2
|
+
import { AbstractChartProps } from "../../shared/AbstractChart";
|
|
3
3
|
import ContributionGraph, { ContributionChartValue, TooltipDataAttrs } from "./ContributionGraph";
|
|
4
4
|
export interface ContributionGraphProps extends AbstractChartProps {
|
|
5
5
|
values: Array<any>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/charts/contribution-graph/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,iBAAiB,EAAE,EACxB,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,WAAW,sBAAuB,SAAQ,kBAAkB;IAChE,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,MAAM,CAAC;IAC1D,gBAAgB,EAAE,gBAAgB,CAAC;CACpC;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import ContributionGraph from "./ContributionGraph";
|
|
2
|
+
export default ContributionGraph;
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2hhcnRzL2NvbnRyaWJ1dGlvbi1ncmFwaC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxpQkFHTixNQUFNLHFCQUFxQixDQUFDO0FBNEI3QixlQUFlLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmlld1N0eWxlIH0gZnJvbSBcInJlYWN0LW5hdGl2ZVwiO1xuXG5pbXBvcnQgeyBBYnN0cmFjdENoYXJ0UHJvcHMgfSBmcm9tIFwiLi4vLi4vc2hhcmVkL0Fic3RyYWN0Q2hhcnRcIjtcbmltcG9ydCBDb250cmlidXRpb25HcmFwaCwge1xuICBDb250cmlidXRpb25DaGFydFZhbHVlLFxuICBUb29sdGlwRGF0YUF0dHJzXG59IGZyb20gXCIuL0NvbnRyaWJ1dGlvbkdyYXBoXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udHJpYnV0aW9uR3JhcGhQcm9wcyBleHRlbmRzIEFic3RyYWN0Q2hhcnRQcm9wcyB7XG4gIHZhbHVlczogQXJyYXk8YW55PjtcbiAgZW5kRGF0ZTogRGF0ZTtcbiAgbnVtRGF5czogbnVtYmVyO1xuICB3aWR0aDogbnVtYmVyO1xuICBoZWlnaHQ6IG51bWJlcjtcbiAgZ3V0dGVyU2l6ZT86IG51bWJlcjtcbiAgc3F1YXJlU2l6ZT86IG51bWJlcjtcbiAgaG9yaXpvbnRhbD86IGJvb2xlYW47XG4gIHNob3dNb250aExhYmVscz86IGJvb2xlYW47XG4gIHNob3dPdXRPZlJhbmdlRGF5cz86IGJvb2xlYW47XG4gIGFjY2Vzc29yPzogc3RyaW5nO1xuICBnZXRNb250aExhYmVsPzogKG1vbnRoSW5kZXg6IG51bWJlcikgPT4gc3RyaW5nO1xuICBvbkRheVByZXNzPzogKHZhbHVlOiB7IGNvdW50OiBudW1iZXI7IGRhdGU6IERhdGUgfSkgPT4gdm9pZDtcbiAgY2xhc3NGb3JWYWx1ZT86ICh2YWx1ZTogc3RyaW5nKSA9PiBzdHJpbmc7XG4gIHN0eWxlPzogUGFydGlhbDxWaWV3U3R5bGU+O1xuICB0aXRsZUZvclZhbHVlPzogKHZhbHVlOiBDb250cmlidXRpb25DaGFydFZhbHVlKSA9PiBzdHJpbmc7XG4gIHRvb2x0aXBEYXRhQXR0cnM6IFRvb2x0aXBEYXRhQXR0cnM7XG59XG5cbmV4cG9ydCB0eXBlIENvbnRyaWJ1dGlvbkdyYXBoU3RhdGUgPSB7XG4gIG1heFZhbHVlOiBudW1iZXI7XG4gIG1pblZhbHVlOiBudW1iZXI7XG4gIHZhbHVlQ2FjaGU6IG9iamVjdDtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IENvbnRyaWJ1dGlvbkdyYXBoO1xuIl19
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { RectProps, TextProps } from "react-native-svg";
|
|
3
|
+
export type LegendItemProps = {
|
|
4
|
+
baseLegendItemX: number;
|
|
5
|
+
index: number;
|
|
6
|
+
legendOffset: number;
|
|
7
|
+
legendText: string;
|
|
8
|
+
iconColor: RectProps["fill"];
|
|
9
|
+
labelProps: TextProps;
|
|
10
|
+
};
|
|
11
|
+
export declare const LegendItem: (props: LegendItemProps) => React.JSX.Element;
|
|
12
|
+
//# sourceMappingURL=LegendItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LegendItem.d.ts","sourceRoot":"","sources":["../../../src/charts/line/LegendItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAQ,SAAS,EAAQ,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAMpE,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7B,UAAU,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,OAAO,eAAe,sBAmChD,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { Rect, Text } from "react-native-svg";
|
|
3
|
+
var CIRCLE_WIDTH = 16;
|
|
4
|
+
var PADDING_LEFT = 4;
|
|
5
|
+
var CHARACTER_WIDTH = 6;
|
|
6
|
+
export var LegendItem = function (props) {
|
|
7
|
+
var baseLegendItemX = props.baseLegendItemX, index = props.index;
|
|
8
|
+
/* half the height of the legend Rect, minus half the height of the circle to align the
|
|
9
|
+
circle from its center, rather than its top. */
|
|
10
|
+
var centerAlignedCircle = props.legendOffset / 2 - CIRCLE_WIDTH / 2;
|
|
11
|
+
// 65% of the legend container height centers the text in relation to the circles
|
|
12
|
+
var centerAlignedText = props.legendOffset * 0.65;
|
|
13
|
+
// to center the legendItem on the baseLegendItemX
|
|
14
|
+
var textLengthOffset = (props.legendText.length * CHARACTER_WIDTH) / 2;
|
|
15
|
+
var legendItemNumber = index + 1;
|
|
16
|
+
return (<>
|
|
17
|
+
<Rect width={CIRCLE_WIDTH} height={CIRCLE_WIDTH} fill={props.iconColor} rx={8} ry={8} x={baseLegendItemX * legendItemNumber - (CIRCLE_WIDTH + textLengthOffset)} y={centerAlignedCircle}/>
|
|
18
|
+
<Text x={baseLegendItemX * legendItemNumber + (PADDING_LEFT - textLengthOffset)} y={centerAlignedText} {...props.labelProps}>
|
|
19
|
+
{props.legendText}
|
|
20
|
+
</Text>
|
|
21
|
+
</>);
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGVnZW5kSXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jaGFydHMvbGluZS9MZWdlbmRJdGVtLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLElBQUksRUFBYSxJQUFJLEVBQWEsTUFBTSxrQkFBa0IsQ0FBQztBQUVwRSxJQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7QUFDeEIsSUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZCLElBQU0sZUFBZSxHQUFHLENBQUMsQ0FBQztBQVcxQixNQUFNLENBQUMsSUFBTSxVQUFVLEdBQUcsVUFBQyxLQUFzQjtJQUN2QyxJQUFBLGVBQWUsR0FBWSxLQUFLLGdCQUFqQixFQUFFLEtBQUssR0FBSyxLQUFLLE1BQVYsQ0FBVztJQUN6QztzREFDa0Q7SUFDbEQsSUFBTSxtQkFBbUIsR0FBRyxLQUFLLENBQUMsWUFBWSxHQUFHLENBQUMsR0FBRyxZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ3RFLGlGQUFpRjtJQUNqRixJQUFNLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQ3BELGtEQUFrRDtJQUNsRCxJQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pFLElBQU0sZ0JBQWdCLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUVuQyxPQUFPLENBQ0wsRUFDRTtNQUFBLENBQUMsSUFBSSxDQUNILEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUNwQixNQUFNLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FDckIsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUN0QixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDTixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDTixDQUFDLENBQUMsQ0FDQSxlQUFlLEdBQUcsZ0JBQWdCLEdBQUcsQ0FBQyxZQUFZLEdBQUcsZ0JBQWdCLENBQ3ZFLENBQUMsQ0FDRCxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxFQUV6QjtNQUFBLENBQUMsSUFBSSxDQUNILENBQUMsQ0FBQyxDQUNBLGVBQWUsR0FBRyxnQkFBZ0IsR0FBRyxDQUFDLFlBQVksR0FBRyxnQkFBZ0IsQ0FDdkUsQ0FBQyxDQUNELENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQ3JCLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUVyQjtRQUFBLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FDbkI7TUFBQSxFQUFFLElBQUksQ0FDUjtJQUFBLEdBQUcsQ0FDSixDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgUmVjdCwgUmVjdFByb3BzLCBUZXh0LCBUZXh0UHJvcHMgfSBmcm9tIFwicmVhY3QtbmF0aXZlLXN2Z1wiO1xuXG5jb25zdCBDSVJDTEVfV0lEVEggPSAxNjtcbmNvbnN0IFBBRERJTkdfTEVGVCA9IDQ7XG5jb25zdCBDSEFSQUNURVJfV0lEVEggPSA2O1xuXG5leHBvcnQgdHlwZSBMZWdlbmRJdGVtUHJvcHMgPSB7XG4gIGJhc2VMZWdlbmRJdGVtWDogbnVtYmVyO1xuICBpbmRleDogbnVtYmVyO1xuICBsZWdlbmRPZmZzZXQ6IG51bWJlcjtcbiAgbGVnZW5kVGV4dDogc3RyaW5nO1xuICBpY29uQ29sb3I6IFJlY3RQcm9wc1tcImZpbGxcIl07XG4gIGxhYmVsUHJvcHM6IFRleHRQcm9wcztcbn07XG5cbmV4cG9ydCBjb25zdCBMZWdlbmRJdGVtID0gKHByb3BzOiBMZWdlbmRJdGVtUHJvcHMpID0+IHtcbiAgY29uc3QgeyBiYXNlTGVnZW5kSXRlbVgsIGluZGV4IH0gPSBwcm9wcztcbiAgLyogaGFsZiB0aGUgaGVpZ2h0IG9mIHRoZSBsZWdlbmQgUmVjdCwgbWludXMgaGFsZiB0aGUgaGVpZ2h0IG9mIHRoZSBjaXJjbGUgdG8gYWxpZ24gdGhlXG4gICAgIGNpcmNsZSBmcm9tIGl0cyBjZW50ZXIsIHJhdGhlciB0aGFuIGl0cyB0b3AuICovXG4gIGNvbnN0IGNlbnRlckFsaWduZWRDaXJjbGUgPSBwcm9wcy5sZWdlbmRPZmZzZXQgLyAyIC0gQ0lSQ0xFX1dJRFRIIC8gMjtcbiAgLy8gNjUlIG9mIHRoZSBsZWdlbmQgY29udGFpbmVyIGhlaWdodCBjZW50ZXJzIHRoZSB0ZXh0IGluIHJlbGF0aW9uIHRvIHRoZSBjaXJjbGVzXG4gIGNvbnN0IGNlbnRlckFsaWduZWRUZXh0ID0gcHJvcHMubGVnZW5kT2Zmc2V0ICogMC42NTtcbiAgLy8gdG8gY2VudGVyIHRoZSBsZWdlbmRJdGVtIG9uIHRoZSBiYXNlTGVnZW5kSXRlbVhcbiAgY29uc3QgdGV4dExlbmd0aE9mZnNldCA9IChwcm9wcy5sZWdlbmRUZXh0Lmxlbmd0aCAqIENIQVJBQ1RFUl9XSURUSCkgLyAyO1xuICBjb25zdCBsZWdlbmRJdGVtTnVtYmVyID0gaW5kZXggKyAxO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxSZWN0XG4gICAgICAgIHdpZHRoPXtDSVJDTEVfV0lEVEh9XG4gICAgICAgIGhlaWdodD17Q0lSQ0xFX1dJRFRIfVxuICAgICAgICBmaWxsPXtwcm9wcy5pY29uQ29sb3J9XG4gICAgICAgIHJ4PXs4fVxuICAgICAgICByeT17OH1cbiAgICAgICAgeD17XG4gICAgICAgICAgYmFzZUxlZ2VuZEl0ZW1YICogbGVnZW5kSXRlbU51bWJlciAtIChDSVJDTEVfV0lEVEggKyB0ZXh0TGVuZ3RoT2Zmc2V0KVxuICAgICAgICB9XG4gICAgICAgIHk9e2NlbnRlckFsaWduZWRDaXJjbGV9XG4gICAgICAvPlxuICAgICAgPFRleHRcbiAgICAgICAgeD17XG4gICAgICAgICAgYmFzZUxlZ2VuZEl0ZW1YICogbGVnZW5kSXRlbU51bWJlciArIChQQURESU5HX0xFRlQgLSB0ZXh0TGVuZ3RoT2Zmc2V0KVxuICAgICAgICB9XG4gICAgICAgIHk9e2NlbnRlckFsaWduZWRUZXh0fVxuICAgICAgICB7Li4ucHJvcHMubGFiZWxQcm9wc31cbiAgICAgID5cbiAgICAgICAge3Byb3BzLmxlZ2VuZFRleHR9XG4gICAgICA8L1RleHQ+XG4gICAgPC8+XG4gICk7XG59O1xuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { Animated, TextInput, ViewStyle } from "react-native";
|
|
3
|
-
import AbstractChart, { AbstractChartConfig, AbstractChartProps } from "
|
|
4
|
-
import { ChartData, Dataset } from "
|
|
3
|
+
import AbstractChart, { AbstractChartConfig, AbstractChartProps } from "../../shared/AbstractChart";
|
|
4
|
+
import { ChartData, Dataset } from "../../shared/types";
|
|
5
5
|
export interface LineChartData extends ChartData {
|
|
6
6
|
legend?: string[];
|
|
7
7
|
}
|
|
@@ -107,7 +107,7 @@ export interface LineChartProps extends AbstractChartProps {
|
|
|
107
107
|
*/
|
|
108
108
|
transparent?: boolean;
|
|
109
109
|
/**
|
|
110
|
-
* This function takes a [whole bunch](https://github.com/indiespirit/react-native-chart-kit/blob/master/src/line
|
|
110
|
+
* This function takes a [whole bunch](https://github.com/indiespirit/react-native-chart-kit/blob/master/src/charts/line/LineChart.tsx)
|
|
111
111
|
* of stuff and can render extra elements,
|
|
112
112
|
* such as data point info or additional markup.
|
|
113
113
|
*/
|
|
@@ -197,6 +197,7 @@ declare class LineChart extends AbstractChart<LineChartProps, LineChartState> {
|
|
|
197
197
|
};
|
|
198
198
|
getColor: (dataset: Dataset, opacity: number) => string;
|
|
199
199
|
getStrokeWidth: (dataset: Dataset) => number;
|
|
200
|
+
getChartRightPadding: (data: Dataset[], withDots: boolean) => number;
|
|
200
201
|
getDatas: (data: Dataset[]) => number[];
|
|
201
202
|
getStrokeDashArray: (dataset: Dataset) => string;
|
|
202
203
|
getPropsForDots: (x: any, i: number) => object;
|
|
@@ -209,16 +210,16 @@ declare class LineChart extends AbstractChart<LineChartProps, LineChartState> {
|
|
|
209
210
|
}) => any[];
|
|
210
211
|
renderShadow: ({ width, height, paddingRight, paddingTop, data, useColorFromDataset }: Pick<AbstractChartConfig, "data" | "width" | "height" | "paddingRight" | "paddingTop"> & {
|
|
211
212
|
useColorFromDataset: AbstractChartConfig["useShadowColorFromDataset"];
|
|
212
|
-
}) => JSX.Element[];
|
|
213
|
+
}) => React.JSX.Element[];
|
|
213
214
|
renderLine: ({ width, height, paddingRight, paddingTop, data, linejoinType }: Pick<AbstractChartConfig, "data" | "width" | "height" | "paddingRight" | "paddingTop" | "linejoinType">) => any[];
|
|
214
215
|
getXMaxValues: (data: Dataset[]) => number;
|
|
215
216
|
getBezierLinePoints: (dataset: Dataset, { width, height, paddingRight, paddingTop, data }: Pick<AbstractChartConfig, "width" | "height" | "paddingRight" | "paddingTop" | "data">) => string;
|
|
216
|
-
renderBezierLine: ({ data, width, height, paddingRight, paddingTop }: Pick<AbstractChartConfig, "data" | "width" | "height" | "paddingRight" | "paddingTop">) => JSX.Element[];
|
|
217
|
+
renderBezierLine: ({ data, width, height, paddingRight, paddingTop }: Pick<AbstractChartConfig, "data" | "width" | "height" | "paddingRight" | "paddingTop">) => React.JSX.Element[];
|
|
217
218
|
renderBezierShadow: ({ width, height, paddingRight, paddingTop, data, useColorFromDataset }: Pick<AbstractChartConfig, "data" | "width" | "height" | "paddingRight" | "paddingTop"> & {
|
|
218
219
|
useColorFromDataset: AbstractChartConfig["useShadowColorFromDataset"];
|
|
219
|
-
}) => JSX.Element[];
|
|
220
|
-
renderLegend: (width: any, legendOffset: any) => JSX.Element[];
|
|
221
|
-
render(): JSX.Element;
|
|
220
|
+
}) => React.JSX.Element[];
|
|
221
|
+
renderLegend: (width: any, legendOffset: any) => React.JSX.Element[];
|
|
222
|
+
render(): React.JSX.Element;
|
|
222
223
|
}
|
|
223
224
|
export default LineChart;
|
|
224
225
|
//# sourceMappingURL=LineChart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../../src/charts/line/LineChart.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EACL,QAAQ,EAGR,SAAS,EAET,SAAS,EACV,MAAM,cAAc,CAAC;AAWtB,OAAO,aAAa,EAAE,EACpB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAmBxD,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC9C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,cAAe,SAAQ,kBAAkB;IACxD;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,EAAE,aAAa,CAAC;IACpB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IAEH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAElC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC;IACrB;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE;QACxB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;KACvC,KAAK,IAAI,CAAC;IACX;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE;QAC1B,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;KACnB,KAAK,KAAK,CAAC,SAAS,CAAC;IACtB;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,KAAK,cAAc,GAAG;IACpB,6BAA6B,EAAE,QAAQ,CAAC,KAAK,CAAC;CAC/C,CAAC;AAEF,cAAM,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IACnE,KAAK,6BAAgC;IAErC,KAAK;;MAEH;IAEF,QAAQ,GAAI,SAAS,OAAO,EAAE,SAAS,MAAM,YAE3C;IAEF,cAAc,GAAI,SAAS,OAAO,YAEhC;IAEF,oBAAoB,GAAI,MAAM,OAAO,EAAE,EAAE,UAAU,OAAO,YAcxD;IAEF,QAAQ,GAAI,MAAM,OAAO,EAAE,KAAG,MAAM,EAAE,CAMpC;IAEF,kBAAkB,GAAI,SAAS,OAAO,YAMpC;IAEF,eAAe,GAAI,GAAG,GAAG,EAAE,GAAG,MAAM,YAUlC;IAEF,UAAU,GAAI,qEAOX,IAAI,CACL,mBAAmB,EACnB,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,cAAc,GAAG,YAAY,CAC5D,GAAG;QACF,gBAAgB,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC;KACtD,uBAyEC;IAEF,mBAAmB,GAAI,uSAgBpB,mBAAmB,GAAG;QACvB,gBAAgB,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACrD,6BAA6B,EAAE,QAAQ,CAAC,KAAK,CAAC;KAC/C,WA8KC;IAEF,YAAY,GAAI,wEAOb,IAAI,CACL,mBAAmB,EACnB,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,cAAc,GAAG,YAAY,CAC5D,GAAG;QACF,mBAAmB,EAAE,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;KACvE,yBA8CC;IAEF,UAAU,GAAI,iEAOX,IAAI,CACL,mBAAmB,EACnB,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,cAAc,GAAG,YAAY,GAAG,cAAc,CAC7E,WA2CC;IAEF,aAAa,GAAI,MAAM,OAAO,EAAE,YAK9B;IAEF,mBAAmB,GACjB,SAAS,OAAO,EAChB,mDAMG,IAAI,CACL,mBAAmB,EACnB,OAAO,GAAG,QAAQ,GAAG,cAAc,GAAG,YAAY,GAAG,MAAM,CAC5D,YAkCD;IAEF,gBAAgB,GAAI,mDAMjB,IAAI,CACL,mBAAmB,EACnB,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,cAAc,GAAG,YAAY,CAC5D,yBAsBC;IAEF,kBAAkB,GAAI,wEAOnB,IAAI,CACL,mBAAmB,EACnB,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,cAAc,GAAG,YAAY,CAC5D,GAAG;QACF,mBAAmB,EAAE,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;KACvE,yBA4BI;IAEL,YAAY,GAAI,UAAK,EAAE,iBAAY,yBAgBjC;IAEF,MAAM;CA+NP;AAED,eAAe,SAAS,CAAC"}
|