From c6c756925bd408b373ff879cb600cfce106f9d9d Mon Sep 17 00:00:00 2001 From: Eric Liu Date: Sat, 11 Nov 2023 13:43:02 -0800 Subject: [PATCH] feat(treeview): make `node` slottable Closes #1660 --- src/TreeView/TreeView.svelte | 7 ++++++- src/TreeView/TreeViewNode.svelte | 20 ++++++++++++++++---- src/TreeView/TreeViewNodeList.svelte | 24 +++++++++++++++++------- 3 files changed, 39 insertions(+), 12 deletions(-) diff --git a/src/TreeView/TreeView.svelte b/src/TreeView/TreeView.svelte index fa25b8a0f7..eabe6255de 100644 --- a/src/TreeView/TreeView.svelte +++ b/src/TreeView/TreeView.svelte @@ -2,6 +2,7 @@ /** * @typedef {string | number} TreeNodeId * @typedef {{ id: TreeNodeId; text: any; icon?: typeof import("svelte").SvelteComponent; disabled?: boolean; children?: TreeNode[]; }} TreeNode + * @slot {{ node: { id: TreeNodeId; text: string; expanded: boolean, leaf: boolean; disabled: boolean; selected: boolean; } }} * @event {TreeNode & { expanded: boolean; leaf: boolean; }} select * @event {TreeNode & { expanded: boolean; leaf: boolean; }} toggle * @event {TreeNode & { expanded: boolean; leaf: boolean; }} focus @@ -202,5 +203,9 @@ on:keydown on:keydown|stopPropagation="{handleKeyDown}" > - + + + {node.text} + + diff --git a/src/TreeView/TreeViewNode.svelte b/src/TreeView/TreeViewNode.svelte index 33481b19e2..5e0aedd68d 100644 --- a/src/TreeView/TreeViewNode.svelte +++ b/src/TreeView/TreeViewNode.svelte @@ -34,6 +34,7 @@