From a14523bec4558d0ffc8f7c591ef0c6a108668850 Mon Sep 17 00:00:00 2001 From: yannik131 Date: Wed, 20 May 2026 14:38:17 +0200 Subject: [PATCH 1/4] tooltip for max 10 favourite labels, disable scrollbar --- .../assets/js/label-trees/components/labelTree.vue | 5 +++++ .../js/label-trees/components/labelTreeLabel.vue | 10 +++++++++- .../assets/js/label-trees/components/labelTrees.vue | 1 + .../sass/label-trees/components/_labelTreeLabel.scss | 5 +++++ .../sass/label-trees/components/_labelTrees.scss | 7 ++++++- 5 files changed, 26 insertions(+), 2 deletions(-) diff --git a/resources/assets/js/label-trees/components/labelTree.vue b/resources/assets/js/label-trees/components/labelTree.vue index 13f5f5f4c..dc9b8640b 100644 --- a/resources/assets/js/label-trees/components/labelTree.vue +++ b/resources/assets/js/label-trees/components/labelTree.vue @@ -43,6 +43,7 @@ :flat="flat" :showFavouriteShortcuts="showFavouriteShortcuts" :position="index" + :can-have-more-favourites="canHaveMoreFavourites" @select="emitSelect" @deselect="emitDeselect" @save="emitSave" @@ -149,6 +150,10 @@ export default { type: Boolean, default: false, }, + canHaveMoreFavourites: { + type: Boolean, + default: true, + }, }, computed: { labelMap() { diff --git a/resources/assets/js/label-trees/components/labelTreeLabel.vue b/resources/assets/js/label-trees/components/labelTreeLabel.vue index 5f19b4abf..2418908b2 100644 --- a/resources/assets/js/label-trees/components/labelTreeLabel.vue +++ b/resources/assets/js/label-trees/components/labelTreeLabel.vue @@ -16,7 +16,7 @@ - @@ -87,6 +87,10 @@ export default { type: Number, default:-1, }, + canHaveMoreFavourites: { + type: Boolean, + default: true, + }, }, computed: { showColor() { @@ -121,6 +125,10 @@ export default { }; }, favouriteTitle() { + if (!this.label.favourite && !this.canHaveMoreFavourites) { + return 'You cannot add more than ten favourite labels'; + } + return (this.label.favourite ? 'Remove' : 'Add') + ' as favourite'; }, editTitle() { diff --git a/resources/assets/js/label-trees/components/labelTrees.vue b/resources/assets/js/label-trees/components/labelTrees.vue index e726f1672..12b04d954 100644 --- a/resources/assets/js/label-trees/components/labelTrees.vue +++ b/resources/assets/js/label-trees/components/labelTrees.vue @@ -49,6 +49,7 @@ :allow-select-children="allowSelectChildren" :show-favourites="showFavourites" :collapsible="collapsible" + :can-have-more-favourites="canHaveMoreFavourites" @select="handleSelect" @deselect="handleDeselect" @add-favourite="handleAddFavourite" diff --git a/resources/assets/sass/label-trees/components/_labelTreeLabel.scss b/resources/assets/sass/label-trees/components/_labelTreeLabel.scss index 30827c659..7469b5d98 100644 --- a/resources/assets/sass/label-trees/components/_labelTreeLabel.scss +++ b/resources/assets/sass/label-trees/components/_labelTreeLabel.scss @@ -103,5 +103,10 @@ .label-tree-label_position { pointer-events: none; } + + .label-tree-label__favourite:disabled { + color: $gray-light; + cursor: not-allowed; + } } diff --git a/resources/assets/sass/label-trees/components/_labelTrees.scss b/resources/assets/sass/label-trees/components/_labelTrees.scss index 3d01d13d0..b05534089 100644 --- a/resources/assets/sass/label-trees/components/_labelTrees.scss +++ b/resources/assets/sass/label-trees/components/_labelTrees.scss @@ -11,7 +11,12 @@ .label-trees__body { flex: 1; - overflow: auto; + overflow-y: scroll; + scrollbar-width: none; + + &::-webkit-scrollbar { + display: none; + } } .typeahead { From 5823067c1be5f3b369db3006f1412298c55b42ad Mon Sep 17 00:00:00 2001 From: yannik131 Date: Wed, 20 May 2026 14:42:56 +0200 Subject: [PATCH 2/4] Factored condition into computed property --- .../assets/js/label-trees/components/labelTreeLabel.vue | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/resources/assets/js/label-trees/components/labelTreeLabel.vue b/resources/assets/js/label-trees/components/labelTreeLabel.vue index 2418908b2..5fad9a210 100644 --- a/resources/assets/js/label-trees/components/labelTreeLabel.vue +++ b/resources/assets/js/label-trees/components/labelTreeLabel.vue @@ -16,7 +16,7 @@ - @@ -125,12 +125,15 @@ export default { }; }, favouriteTitle() { - if (!this.label.favourite && !this.canHaveMoreFavourites) { - return 'You cannot add more than ten favourite labels'; + if (this.cantBeAddedAsFavourite) { + return `You cannot add more than ${MAX_FAVOURITES} favourite labels`; } return (this.label.favourite ? 'Remove' : 'Add') + ' as favourite'; }, + cantBeAddedAsFavourite() { + return !this.label.favourite && !this.canHaveMoreFavourites; + }, editTitle() { return 'Edit label ' + this.label.name; }, From f6a86ff229ca76e938830fb348228329ab4fb9cd Mon Sep 17 00:00:00 2001 From: yannik131 Date: Wed, 20 May 2026 14:55:45 +0200 Subject: [PATCH 3/4] Disable child label favourite button --- resources/assets/js/label-trees/components/labelTreeLabel.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/assets/js/label-trees/components/labelTreeLabel.vue b/resources/assets/js/label-trees/components/labelTreeLabel.vue index 5fad9a210..688b1fc01 100644 --- a/resources/assets/js/label-trees/components/labelTreeLabel.vue +++ b/resources/assets/js/label-trees/components/labelTreeLabel.vue @@ -28,7 +28,7 @@ From 259a72816e715473f67fb700923a25c31c04c1f1 Mon Sep 17 00:00:00 2001 From: yannik131 Date: Fri, 22 May 2026 12:00:38 +0200 Subject: [PATCH 4/4] Removed trailing whitespace --- resources/assets/js/label-trees/components/labelTreeLabel.vue | 2 +- .../assets/sass/label-trees/components/_labelTreeLabel.scss | 2 +- resources/assets/sass/label-trees/components/_labelTrees.scss | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/assets/js/label-trees/components/labelTreeLabel.vue b/resources/assets/js/label-trees/components/labelTreeLabel.vue index 688b1fc01..05d476b6a 100644 --- a/resources/assets/js/label-trees/components/labelTreeLabel.vue +++ b/resources/assets/js/label-trees/components/labelTreeLabel.vue @@ -128,7 +128,7 @@ export default { if (this.cantBeAddedAsFavourite) { return `You cannot add more than ${MAX_FAVOURITES} favourite labels`; } - + return (this.label.favourite ? 'Remove' : 'Add') + ' as favourite'; }, cantBeAddedAsFavourite() { diff --git a/resources/assets/sass/label-trees/components/_labelTreeLabel.scss b/resources/assets/sass/label-trees/components/_labelTreeLabel.scss index 7469b5d98..04faddf46 100644 --- a/resources/assets/sass/label-trees/components/_labelTreeLabel.scss +++ b/resources/assets/sass/label-trees/components/_labelTreeLabel.scss @@ -103,7 +103,7 @@ .label-tree-label_position { pointer-events: none; } - + .label-tree-label__favourite:disabled { color: $gray-light; cursor: not-allowed; diff --git a/resources/assets/sass/label-trees/components/_labelTrees.scss b/resources/assets/sass/label-trees/components/_labelTrees.scss index b05534089..e92914aea 100644 --- a/resources/assets/sass/label-trees/components/_labelTrees.scss +++ b/resources/assets/sass/label-trees/components/_labelTrees.scss @@ -13,7 +13,7 @@ flex: 1; overflow-y: scroll; scrollbar-width: none; - + &::-webkit-scrollbar { display: none; }