Skip to content

Commit aa79f5e

Browse files
committed
Improvement - VueUiTreemap - Adapt zoom cursor to drillable state of hovered node
1 parent 67cdcd2 commit aa79f5e

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,4 +107,4 @@
107107
"vitest": "^3.1.1",
108108
"vue": "^3.5.13"
109109
}
110-
}
110+
}

src/components/vue-ui-treemap.vue

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -378,6 +378,13 @@ function zoom(rect) {
378378
}
379379
}
380380
381+
function canDrill(rect) {
382+
const node = findNodeById(rect.id)
383+
if (node?.children?.length) return true
384+
if (rect.parentId) return true
385+
return false
386+
}
387+
381388
const breadcrumbs = computed(() => {
382389
const crumbs = [
383390
{ id: null, label: 'All' }
@@ -782,7 +789,12 @@ defineExpose({
782789
})"
783790
@mouseleave="selectedRect = null; isTooltip = false"
784791
:style="`opacity:${selectedRect ? selectedRect.id === rect.id ? 1 : FINAL_CONFIG.style.chart.layout.rects.selected.unselectedOpacity : 1}`"
785-
class="vue-ui-treemap-rect"
792+
:class="[
793+
'vue-ui-treemap-rect',
794+
canDrill(rect)
795+
? 'vue-data-ui-zoom-plus'
796+
: (isZoom ? 'vue-data-ui-zoom-minus' : '')
797+
]"
786798
/>
787799
788800
<foreignObject

0 commit comments

Comments
 (0)