File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -414,6 +414,14 @@ const chartData = computed<{ dataset: VueUiXyDatasetItem[] | null; dates: string
414414
415415const formatter = ({ value }: { value: number }) => formatCompactNumber (value , { decimals: 1 })
416416
417+ const loadFile = (link : string , filename : string ) => {
418+ const a = document .createElement (' a' )
419+ a .href = link
420+ a .download = filename
421+ a .click ()
422+ a .remove ()
423+ }
424+
417425const config = computed (() => ({
418426 theme: isDarkMode .value ? ' dark' : ' default' ,
419427 chart: {
@@ -425,6 +433,22 @@ const config = computed(() => ({
425433 table: false ,
426434 tooltip: false ,
427435 },
436+ callbacks: {
437+ img : ({ imageUri }: { imageUri: string }) => {
438+ loadFile (imageUri , ` ${packageName }-${selectedGranularity .value }.png ` )
439+ },
440+ csv : (csvStr : string ) => {
441+ const blob = new Blob ([csvStr .replace (' data:text/csv;charset=utf-8,' , ' ' )])
442+ const url = URL .createObjectURL (blob )
443+ loadFile (url , ` ${packageName }-${selectedGranularity .value }.csv ` )
444+ URL .revokeObjectURL (url )
445+ },
446+ svg : ({ blob }: { blob: Blob }) => {
447+ const url = URL .createObjectURL (blob )
448+ loadFile (url , ` ${packageName }-${selectedGranularity .value }.svg ` )
449+ URL .revokeObjectURL (url )
450+ },
451+ },
428452 },
429453 backgroundColor: isDarkMode .value ? ' #0A0A0A' : ' #FFFFFF' ,
430454 grid: {
You can’t perform that action at this time.
0 commit comments