Skip to content

Commit 4a6a4c7

Browse files
authored
fix: send mouse event along with click handler (#42)
Fixes #39
1 parent 9267644 commit 4a6a4c7

File tree

3 files changed

+8
-7
lines changed

3 files changed

+8
-7
lines changed

projects/ngx-json-treeview/src/lib/ngx-json-treeview/ngx-json-treeview.component.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
type="button"
88
class="segment-primitive"
99
[class.clickable]="isClickablePrimitive()"
10-
(click)="onPrimitiveClick()"
10+
(click)="onPrimitiveClick($event)"
1111
[disabled]="!isClickablePrimitive()">
1212
{{ asString() }}
1313
</button>
@@ -71,7 +71,7 @@
7171
[class.segment-label]="expandable"
7272
[class.segment-value]="!expandable"
7373
[class.clickable]="clickableValue"
74-
(click)="onValueClickHandler(segment)"
74+
(click)="onValueClickHandler(segment, $event)"
7575
[disabled]="!clickableValue">
7676
{{ segment.description }}
7777
</button>

projects/ngx-json-treeview/src/lib/ngx-json-treeview/ngx-json-treeview.component.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -212,19 +212,19 @@ export class NgxJsonTreeviewComponent {
212212
}
213213
}
214214

215-
onPrimitiveClick(): void {
215+
onPrimitiveClick(event?: MouseEvent): void {
216216
const segment = this.primitiveSegment();
217217
if (segment) {
218-
this.onValueClickHandler(segment);
218+
this.onValueClickHandler(segment, event);
219219
}
220220
}
221221

222-
onValueClickHandler(segment: Segment) {
222+
onValueClickHandler(segment: Segment, event?: MouseEvent) {
223223
for (const handler of this.internalValueClickHandlers()) {
224224
try {
225225
if (handler.canHandle(segment)) {
226226
try {
227-
handler.handler(segment);
227+
handler.handler(segment, event);
228228
} catch (e) {
229229
console.error('Error executing click handler:', e);
230230
}

projects/ngx-json-treeview/src/lib/types.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ export interface ValueClickHandler {
5151
/**
5252
* The function to execute when a clickable value is clicked.
5353
* @param segment The segment that was clicked.
54+
* @param event The mouse event that triggered the click.
5455
*/
55-
handler: (segment: Segment) => void;
56+
handler: (segment: Segment, event?: MouseEvent) => void;
5657
}

0 commit comments

Comments
 (0)