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; | ||
|  |     } | ||
|  |      | ||
|  | } |