layerchart 0.93.0 → 0.93.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.
@@ -31,6 +31,7 @@
31
31
  export { className as class };
32
32
 
33
33
  export let onclick: ((e: MouseEvent) => void) | undefined = undefined;
34
+ export let onpointerdown: ((e: PointerEvent) => void) | undefined = undefined;
34
35
  export let onpointerenter: ((e: PointerEvent) => void) | undefined = undefined;
35
36
  export let onpointermove: ((e: PointerEvent) => void) | undefined = undefined;
36
37
  export let onpointerleave: ((e: PointerEvent) => void) | undefined = undefined;
@@ -89,6 +90,7 @@
89
90
  render,
90
91
  events: {
91
92
  click: onclick,
93
+ pointerdown: onpointerdown,
92
94
  pointerenter: onpointerenter,
93
95
  pointermove: onpointermove,
94
96
  pointerleave: onpointerleave,
@@ -116,6 +118,7 @@
116
118
  class={cls(fill == null && 'fill-surface-content', className)}
117
119
  {...$$restProps}
118
120
  on:click={onclick}
121
+ on:pointerdown={onpointerdown}
119
122
  on:pointerenter={onpointerenter}
120
123
  on:pointermove={onpointermove}
121
124
  on:pointerleave={onpointerleave}
@@ -66,21 +66,18 @@
66
66
  /** Set to false to disable spring transitions */
67
67
  export let motion = true;
68
68
 
69
- export let onareaclick: (e: MouseEvent, data: { data: any }) => void = () => {};
70
- export let onbarclick: (e: MouseEvent, data: { data: any }) => void = () => {};
71
-
72
- export let onpointclick: (
73
- e: MouseEvent,
74
- data: { point: (typeof _points)[number]; data: any }
75
- ) => void = () => {};
76
- export let onpointenter: (
77
- e: MouseEvent,
78
- datae: { point: (typeof _points)[number]; data: any }
79
- ) => void = () => {};
80
- export let onpointleave: (
81
- e: MouseEvent,
82
- datae: { point: (typeof _points)[number]; data: any }
83
- ) => void = () => {};
69
+ export let onareaclick: ((e: MouseEvent, detail: { data: any }) => void) | undefined = undefined;
70
+ export let onbarclick: ((e: MouseEvent, detail: { data: any }) => void) | undefined = undefined;
71
+
72
+ export let onpointclick:
73
+ | ((e: MouseEvent, detail: { point: (typeof _points)[number]; data: any }) => void)
74
+ | undefined = undefined;
75
+ export let onpointenter:
76
+ | ((e: MouseEvent, detail: { point: (typeof _points)[number]; data: any }) => void)
77
+ | undefined = undefined;
78
+ export let onpointleave:
79
+ | ((e: MouseEvent, detail: { point: (typeof _points)[number]; data: any }) => void)
80
+ | undefined = undefined;
84
81
 
85
82
  const _x = accessor(x);
86
83
  const _y = accessor(y);
@@ -362,7 +359,7 @@
362
359
  !area.fill && 'fill-surface-content/5',
363
360
  typeof area === 'object' ? area.class : null
364
361
  )}
365
- onclick={(e) => onareaclick(e, { data: highlightData })}
362
+ onclick={onareaclick && ((e) => onareaclick(e, { data: highlightData }))}
366
363
  />
367
364
  </slot>
368
365
  {/if}
@@ -383,7 +380,7 @@
383
380
  !bar.fill && 'fill-primary',
384
381
  typeof bar === 'object' ? bar.class : null
385
382
  )}
386
- onclick={(e) => onbarclick(e, { data: highlightData })}
383
+ onclick={onbarclick && ((e) => onbarclick(e, { data: highlightData }))}
387
384
  />
388
385
  </slot>
389
386
  {/if}
@@ -423,9 +420,14 @@
423
420
  !point.fill && (typeof points === 'boolean' || !points.fill) && 'fill-primary',
424
421
  typeof points === 'object' ? points.class : null
425
422
  )}
426
- onclick={(e) => onpointclick(e, { point, data: highlightData })}
427
- onpointerenter={(e) => onpointenter(e, { point, data: highlightData })}
428
- onpointerleave={(e) => onpointleave(e, { point, data: highlightData })}
423
+ onpointerdown={onpointclick &&
424
+ ((e) => {
425
+ // Do not propagate `pointerdown` event to `BrushContext` if `onclick` is provided
426
+ e.stopPropagation();
427
+ })}
428
+ onclick={onpointclick && ((e) => onpointclick(e, { point, data: highlightData }))}
429
+ onpointerenter={onpointenter && ((e) => onpointenter(e, { point, data: highlightData }))}
430
+ onpointerleave={onpointleave && ((e) => onpointleave(e, { point, data: highlightData }))}
429
431
  />
430
432
  {/each}
431
433
  </slot>
@@ -87,13 +87,15 @@
87
87
  export let ontooltipclick: (e: MouseEvent, details: { data: any }) => void = () => {};
88
88
 
89
89
  /** Event dispatched when Highlight point is clicked (useful with multiple series) */
90
- export let onpointclick: (
91
- e: MouseEvent,
92
- details: {
93
- data: HighlightPointData;
94
- series: (typeof series)[number];
95
- }
96
- ) => void = () => {};
90
+ export let onpointclick:
91
+ | ((
92
+ e: MouseEvent,
93
+ details: {
94
+ data: HighlightPointData;
95
+ series: (typeof series)[number];
96
+ }
97
+ ) => void)
98
+ | undefined = undefined;
97
99
 
98
100
  export let props: {
99
101
  area?: Partial<ComponentProps<Area>>;
@@ -410,7 +412,9 @@
410
412
  ),
411
413
  }}
412
414
  lines={i == 0}
413
- onpointclick={(e, detail) => onpointclick(e, { ...detail, series: s })}
415
+ onpointclick={onpointclick
416
+ ? (e, detail) => onpointclick(e, { ...detail, series: s })
417
+ : undefined}
414
418
  onpointenter={() => (highlightSeriesKey = s.key)}
415
419
  onpointleave={() => (highlightSeriesKey = null)}
416
420
  {...props.highlight}
@@ -79,13 +79,15 @@
79
79
  export let ontooltipclick: (e: MouseEvent, details: { data: any }) => void = () => {};
80
80
 
81
81
  /** Event dispatched when Highlight point is clicked (useful with multiple series) */
82
- export let onpointclick: (
83
- e: MouseEvent,
84
- details: {
85
- data: HighlightPointData;
86
- series: (typeof series)[number];
87
- }
88
- ) => void = () => {};
82
+ export let onpointclick:
83
+ | ((
84
+ e: MouseEvent,
85
+ details: {
86
+ data: HighlightPointData;
87
+ series: (typeof series)[number];
88
+ }
89
+ ) => void)
90
+ | undefined = undefined;
89
91
 
90
92
  export let props: {
91
93
  brush?: Partial<ComponentProps<BrushContext>>;
@@ -339,7 +341,9 @@
339
341
  ),
340
342
  }}
341
343
  lines={i === 0}
342
- onpointclick={(e, detail) => onpointclick(e, { ...detail, series: s })}
344
+ onpointclick={onpointclick
345
+ ? (e, detail) => onpointclick(e, { ...detail, series: s })
346
+ : undefined}
343
347
  onpointenter={() => (highlightSeriesKey = s.key)}
344
348
  onpointleave={() => (highlightSeriesKey = null)}
345
349
  {...props.highlight}
@@ -7,6 +7,7 @@ export { default as Bar } from './Bar.svelte';
7
7
  export { default as Bars } from './Bars.svelte';
8
8
  export { default as Blur } from './Blur.svelte';
9
9
  export { default as Bounds } from './Bounds.svelte';
10
+ export { default as BrushContext } from './BrushContext.svelte';
10
11
  export { default as Calendar } from './Calendar.svelte';
11
12
  export { default as Canvas } from './layout/Canvas.svelte';
12
13
  export { default as Chart } from './Chart.svelte';
@@ -8,6 +8,7 @@ export { default as Bar } from './Bar.svelte';
8
8
  export { default as Bars } from './Bars.svelte';
9
9
  export { default as Blur } from './Blur.svelte';
10
10
  export { default as Bounds } from './Bounds.svelte';
11
+ export { default as BrushContext } from './BrushContext.svelte';
11
12
  export { default as Calendar } from './Calendar.svelte';
12
13
  export { default as Canvas } from './layout/Canvas.svelte';
13
14
  export { default as Chart } from './Chart.svelte';
@@ -127,10 +127,6 @@
127
127
  component?.events?.pointermove?.(e);
128
128
  }
129
129
 
130
- if (e.buttons === 1) {
131
- component?.events?.pointerdown?.(e);
132
- }
133
-
134
130
  lastActiveComponent = component;
135
131
  }
136
132
 
@@ -282,6 +278,10 @@
282
278
  const component = getPointerComponent(e);
283
279
  component?.events?.dblclick?.(e);
284
280
  }}
281
+ on:pointerdown={(e) => {
282
+ const component = getPointerComponent(e);
283
+ component?.events?.pointerdown?.(e);
284
+ }}
285
285
  on:pointerenter={onPointerMove}
286
286
  on:pointerenter
287
287
  on:pointermove={onPointerMove}
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.93.0",
7
+ "version": "0.93.2",
8
8
  "devDependencies": {
9
9
  "@changesets/cli": "^2.27.12",
10
10
  "@mdi/js": "^7.4.47",