Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
const createComponent = (chartType) => {
const ChartkickComponent = ({innerRef, ...props}) => {
// props cloned when split from innerRef, so we can modify directly
props.chartType = chartType
props.ref = innerRef
return React.createElement(ChartComponent, props)
}
ChartkickComponent.displayName = chartType.name
return ChartkickComponent
}
export const LineChart = createComponent(Chartkick.LineChart)
export const PieChart = createComponent(Chartkick.PieChart)
export const ColumnChart = createComponent(Chartkick.ColumnChart)
export const BarChart = createComponent(Chartkick.BarChart)
export const AreaChart = createComponent(Chartkick.AreaChart)
export const ScatterChart = createComponent(Chartkick.ScatterChart)
export const GeoChart = createComponent(Chartkick.GeoChart)
export const Timeline = createComponent(Chartkick.Timeline)
export default Chartkick
Chartkick.install = function(Vue, options) {
if (options && options.adapter) {
Chartkick.addAdapter(options.adapter)
}
createComponent(Vue, "line-chart", Chartkick.LineChart)
createComponent(Vue, "pie-chart", Chartkick.PieChart)
createComponent(Vue, "column-chart", Chartkick.ColumnChart)
createComponent(Vue, "bar-chart", Chartkick.BarChart)
createComponent(Vue, "area-chart", Chartkick.AreaChart)
createComponent(Vue, "scatter-chart", Chartkick.ScatterChart)
createComponent(Vue, "geo-chart", Chartkick.GeoChart)
createComponent(Vue, "timeline", Chartkick.Timeline)
}