Skip to content

Commit 9314d2c

Browse files
committed
Try deploy preview for #41
1 parent d48e3b0 commit 9314d2c

File tree

3 files changed

+13
-44
lines changed

3 files changed

+13
-44
lines changed

src/App.svelte

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
// reset active datasets to fluview -> ili
3535
$activeDatasets = [ds.datasets[1]];
3636
if (chart) {
37-
chart.fitData(true, ds.datasets[1]);
37+
chart.fitData(true);
3838
}
3939
}
4040
});
@@ -50,5 +50,4 @@
5050
bind:showPoints={$isShowingPoints}
5151
bind:navMode={$navMode}
5252
initialViewport={$initialViewport}
53-
datasets={$activeDatasets}
5453
/>

src/components/Chart.svelte

Lines changed: 10 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<script lang="ts">
22
import { onMount } from 'svelte';
3+
import { activeDatasets } from '../store';
34
import type DataSet from '../data/DataSet';
4-
import type DataGroup from '../data/DataSet';
55
import { DEFAULT_VIEWPORT } from '../data/DataSet';
66
import EpiDate from '../data/EpiDate';
77
import { Align, contains, isTouchEvent, NavMode, zeroPad } from './chartUtils';
@@ -82,7 +82,8 @@
8282
export let showPoints = false;
8383
export let interpolate = false;
8484
export let highlightedDate: EpiDate | null = null;
85-
export let datasets: DataSet[] = [];
85+
86+
$: datasets = $activeDatasets;
8687
8788
function date2x(date: number): number {
8889
return ((date - xMin) / (xMax - xMin)) * width;
@@ -381,47 +382,16 @@
381382
return { x: x + dx, y: y + dy - h, w: w, h: h };
382383
}
383384
384-
// Fit viewport to the currently available datasets.
385-
// Since there is a delay to new changes propagating to the datasets variable, the
386-
// include and exclude arguments are used to make sure a recently selected
387-
// or de-selected dataset is properly accounted for.
388-
export function fitData(
389-
shouldAnimate = false,
390-
include: DataSet | DataGroup | null = null,
391-
exclude: DataSet | DataGroup | null = null,
392-
): void {
393-
// No data, nothing to fit
394-
if (datasets.length === 0 && !include) {
395-
return;
396-
}
397-
// Just deselected the only dataset, nothing to fit
398-
if (datasets.length === 1 && exclude) {
385+
export function fitData(shouldAnimate = false): void {
386+
if (datasets.length === 0) {
399387
return;
400388
}
401-
let temp = null;
402-
if (datasets.length === 0 && include) {
403-
// If no previous data, set dataset to the new one
404-
temp = include;
405-
} else if (datasets[0] && datasets[0] == exclude) {
406-
// If we just deselected the first dataset, don't fit to that one
407-
temp = datasets[1];
408-
} else {
409-
// Generally fit to the first dataset
410-
temp = datasets[0];
411-
}
412-
let _xMin = temp.data[0].getDate().getIndex() - 0.5;
413-
let _xMax = temp.data[temp.data.length - 1].getDate().getIndex() + 0.5;
414-
let _yMin = temp.getPointValue(0);
389+
const temp = datasets[0].data;
390+
let _xMin = temp[0].getDate().getIndex() - 0.5;
391+
let _xMax = temp[temp.length - 1].getDate().getIndex() + 0.5;
392+
let _yMin = datasets[0].getPointValue(0);
415393
let _yMax = _yMin;
416-
let dss = null;
417-
if (include) {
418-
dss = [...datasets, include];
419-
} else if (exclude) {
420-
dss = datasets.filter((d) => d !== exclude);
421-
} else {
422-
dss = datasets;
423-
}
424-
for (const ds of dss) {
394+
for (const ds of datasets) {
425395
const data = ds.data;
426396
_xMin = Math.min(_xMin, data[0].getDate().getIndex() - 0.5);
427397
_xMax = Math.max(_xMax, data[data.length - 1].getDate().getIndex() + 0.5);

src/components/tree/TreeLeafNode.svelte

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@
1212
if (selected) {
1313
$activeDatasets = $activeDatasets.filter((d) => d !== node);
1414
if (chart && $autoFit === true) {
15-
chart.fitData(true, null, node);
15+
chart.fitData(true);
1616
}
1717
} else {
1818
$activeDatasets = [node, ...$activeDatasets];
1919
if (chart && $autoFit === true) {
20-
chart.fitData(true, node);
20+
chart.fitData(true);
2121
}
2222
}
2323
}

0 commit comments

Comments
 (0)