layerchart 0.70.0 → 0.70.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,7 +9,7 @@
9
9
  type TweenedOptions,
10
10
  } from '../stores/motionStore.js';
11
11
  import { getCanvasContext } from './layout/Canvas.svelte';
12
- import { renderRect } from '../index.js/utils/canvas.js';
12
+ import { renderRect } from '../utils/canvas.js';
13
13
 
14
14
  export let x = 0;
15
15
  export let initialX = x;
@@ -6,7 +6,7 @@
6
6
  import { getStringWidth } from '../utils/string.js';
7
7
  import { motionStore } from '../stores/motionStore.js';
8
8
  import { getCanvasContext } from './layout/Canvas.svelte';
9
- import { renderText } from '../index.js/utils/canvas.js';
9
+ import { renderText } from '../utils/canvas.js';
10
10
 
11
11
  /*
12
12
  TODO:
@@ -133,7 +133,7 @@
133
133
  ? (d) => d.stackData[i][1]
134
134
  : Array.isArray(s.value)
135
135
  ? s.value[1]
136
- : (s.value ?? s.key),
136
+ : (s.value ?? (s.data ? undefined : s.key)),
137
137
  fill: s.color,
138
138
  fillOpacity: 0.3,
139
139
  ...props.area,
@@ -253,8 +253,12 @@
253
253
 
254
254
  <slot name="highlight" {...slotProps}>
255
255
  {#each series as s, i (s.key)}
256
+ {@const seriesTooltipData =
257
+ s.data && tooltip.data ? s.data.find((d) => x(d) === x(tooltip.data)) : null}
258
+
256
259
  <Highlight
257
- y={stackSeries ? (d) => d.stackData[i][1] : (s.value ?? s.key)}
260
+ data={seriesTooltipData}
261
+ y={stackSeries ? (d) => d.stackData[i][1] : (s.value ?? (s.data ? undefined : s.key))}
258
262
  points={{ fill: s.color }}
259
263
  lines={i == 0}
260
264
  {...props.highlight}
@@ -291,10 +295,12 @@
291
295
  <!-- Reverse series order so tooltip items match stacks -->
292
296
  {@const seriesItems = stackSeries ? [...series].reverse() : series}
293
297
  {#each seriesItems as s}
294
- {@const valueAccessor = accessor(s.value ?? s.key)}
298
+ {@const seriesTooltipData = s.data ? s.data.find((d) => x(d) === x(data)) : data}
299
+ {@const valueAccessor = accessor(s.value ?? (s.data ? (y as any) : s.key))}
300
+
295
301
  <Tooltip.Item
296
302
  label={s.label ?? (s.key !== 'default' ? s.key : 'value')}
297
- value={valueAccessor(data)}
303
+ value={valueAccessor(seriesTooltipData)}
298
304
  color={s.color}
299
305
  {format}
300
306
  valueAlign="right"
@@ -307,8 +313,10 @@
307
313
  <Tooltip.Item
308
314
  label="total"
309
315
  value={sum(series, (s) => {
310
- const valueAccessor = accessor(s.value ?? s.key);
311
- return valueAccessor(data);
316
+ const seriesTooltipData = s.data ? s.data.find((d) => x(d) === x(data)) : data;
317
+ const valueAccessor = accessor(s.value ?? (s.data ? (y as any) : s.key));
318
+
319
+ return valueAccessor(seriesTooltipData);
312
320
  })}
313
321
  format="integer"
314
322
  valueAlign="right"
@@ -198,9 +198,12 @@
198
198
 
199
199
  <slot name="highlight" {...slotProps}>
200
200
  {#each series as s, i (s.key)}
201
+ {@const seriesTooltipData =
202
+ s.data && tooltip.data ? s.data.find((d) => x(d) === x(tooltip.data)) : null}
203
+
201
204
  <Highlight
202
- data={s.data}
203
- y={s.value ?? s.key}
205
+ data={seriesTooltipData}
206
+ y={s.value ?? (s.data ? undefined : s.key)}
204
207
  points={{ fill: s.color }}
205
208
  lines={i === 0}
206
209
  {...props.highlight}
@@ -231,10 +234,12 @@
231
234
  <Tooltip.Header>{format(x(data))}</Tooltip.Header>
232
235
  <Tooltip.List>
233
236
  {#each series as s}
234
- {@const valueAccessor = accessor(s.value ?? s.key)}
237
+ {@const seriesTooltipData = s.data ? s.data.find((d) => x(d) === x(data)) : data}
238
+ {@const valueAccessor = accessor(s.value ?? (s.data ? (y as any) : s.key))}
239
+
235
240
  <Tooltip.Item
236
241
  label={s.label ?? (s.key !== 'default' ? s.key : 'value')}
237
- value={valueAccessor(data)}
242
+ value={valueAccessor(seriesTooltipData)}
238
243
  color={s.color}
239
244
  {format}
240
245
  />
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "author": "Sean Lynch <techniq35@gmail.com>",
5
5
  "license": "MIT",
6
6
  "repository": "techniq/layerchart",
7
- "version": "0.70.0",
7
+ "version": "0.70.2",
8
8
  "devDependencies": {
9
9
  "@changesets/cli": "^2.27.10",
10
10
  "@mdi/js": "^7.4.47",