forked from MapComplete/MapComplete
		
	
		
			
	
	
		
			24 lines
		
	
	
	
		
			726 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			24 lines
		
	
	
	
		
			726 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| 
								 | 
							
								import BaseUIElement from "../BaseUIElement";
							 | 
						||
| 
								 | 
							
								import {Chart, ChartConfiguration, ChartType, DefaultDataPoint, registerables} from 'chart.js';
							 | 
						||
| 
								 | 
							
								Chart.register(...registerables);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export default class ChartJs<
							 | 
						||
| 
								 | 
							
								    TType extends ChartType = ChartType,
							 | 
						||
| 
								 | 
							
								    TData = DefaultDataPoint<TType>,
							 | 
						||
| 
								 | 
							
								    TLabel = unknown
							 | 
						||
| 
								 | 
							
								    > extends BaseUIElement{
							 | 
						||
| 
								 | 
							
								    private readonly _config: ChartConfiguration<TType, TData, TLabel>;
							 | 
						||
| 
								 | 
							
								    
							 | 
						||
| 
								 | 
							
								    constructor(config: ChartConfiguration<TType, TData, TLabel>) {
							 | 
						||
| 
								 | 
							
								        super();
							 | 
						||
| 
								 | 
							
								        this._config = config;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    
							 | 
						||
| 
								 | 
							
								    protected InnerConstructElement(): HTMLElement {
							 | 
						||
| 
								 | 
							
								        const canvas = document.createElement("canvas");
							 | 
						||
| 
								 | 
							
								        new Chart(canvas, this._config);
							 | 
						||
| 
								 | 
							
								        return canvas;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    
							 | 
						||
| 
								 | 
							
								}
							 |