mirror of
https://github.com/MewoLab/AquaDX.git
synced 2026-02-07 13:27:26 +08:00
[M] Migrate usage
This commit is contained in:
29
AquaNet/src/components/chart/Line.svelte
Normal file
29
AquaNet/src/components/chart/Line.svelte
Normal file
@@ -0,0 +1,29 @@
|
||||
<script lang="ts">
|
||||
import { Chart, Tooltip, type ChartData, type ChartOptions } from 'chart.js';
|
||||
import type { HTMLCanvasAttributes } from 'svelte/elements';
|
||||
import 'chart.js/auto';
|
||||
|
||||
interface Props extends HTMLCanvasAttributes {
|
||||
data: ChartData<'line', any, string>
|
||||
options: ChartOptions<'line'>
|
||||
}
|
||||
const { data, options, ...rest }: Props = $props()
|
||||
|
||||
Chart.register(Tooltip)
|
||||
|
||||
let canvasElem: HTMLCanvasElement
|
||||
let chart: Chart
|
||||
|
||||
$effect(() => {
|
||||
chart = new Chart(canvasElem, { type: 'line', data, options })
|
||||
return () => chart.destroy()
|
||||
})
|
||||
|
||||
$effect(() => {
|
||||
if (!chart) return
|
||||
chart.data = data
|
||||
chart.update()
|
||||
})
|
||||
</script>
|
||||
|
||||
<canvas bind:this={canvasElem} {...rest}></canvas>
|
||||
@@ -1,6 +1,7 @@
|
||||
import { mount } from 'svelte';
|
||||
import './app.sass'
|
||||
import App from './App.svelte'
|
||||
|
||||
const app = new App({ target: document.getElementById('app')! })
|
||||
const app = mount(App, { target: document.getElementById("app")! });
|
||||
|
||||
export default app
|
||||
export default app
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
} from "../libs/generalTypes";
|
||||
import { DATA_HOST } from "../libs/config";
|
||||
import 'cal-heatmap/cal-heatmap.css';
|
||||
import { Line } from 'svelte-chartjs';
|
||||
import moment from "moment";
|
||||
import 'chartjs-adapter-moment';
|
||||
import { CARD, DATA, GAME, USER } from "../libs/sdk";
|
||||
@@ -23,6 +22,7 @@
|
||||
import RankDetails from "../components/RankDetails.svelte";
|
||||
import RatingComposition from "../components/RatingComposition.svelte";
|
||||
import useLocalStorage from "../libs/hooks/useLocalStorage.svelte";
|
||||
import Line from "../components/chart/Line.svelte";
|
||||
|
||||
const TREND_DAYS = 60
|
||||
|
||||
|
||||
Reference in New Issue
Block a user