Added initial support for auto-width lists option

This commit is contained in:
Nadav Tasher 2024-11-28 01:18:51 +02:00
parent f6341de610
commit 0097674fc0
6 changed files with 54 additions and 2 deletions

View file

@ -23,6 +23,10 @@ template(name="boardHeaderBar")
span
= currentBoard.stars
a.board-header-btn.js-auto-width-board(class="{{#if isAutoWidth}}is-active{{/if}}"
title="{{#if isAutoWidth}}{{_ 'click-to-disable-auto-width'}}{{else}}{{_ 'click-to-enable-auto-width'}}{{/if}}")
i.fa(class="fa-solid fa-{{#if isAutoWidth}}compress{{else}}expand{{/if}}")
a.board-header-btn(
class="{{#if currentUser.isBoardAdmin}}js-change-visibility{{else}}is-disabled{{/if}}"
title="{{_ currentBoard.permission}}")
@ -66,6 +70,10 @@ template(name="boardHeaderBar")
span
= currentBoard.stars
a.board-header-btn.js-auto-width-board(class="{{#if isAutoWidth}}is-active{{/if}}"
title="{{#if isAutoWidth}}{{_ 'click-to-disable-auto-width'}}{{else}}{{_ 'click-to-enable-auto-width'}}{{/if}}")
i.fa(class="fa-solid fa-{{#if isAutoWidth}}compress{{else}}expand{{/if}}")
a.board-header-btn(
class="{{#if currentUser.isBoardAdmin}}js-change-visibility{{else}}is-disabled{{/if}}"
title="{{_ currentBoard.permission}}")

View file

@ -38,6 +38,12 @@ BlazeComponent.extendComponent({
return user && user.hasStarred(boardId);
},
isAutoWidth() {
const boardId = Session.get('currentBoard');
const user = ReactiveCache.getCurrentUser();
return user && user.hasAutoWidth(boardId);
},
// Only show the star counter if the number of star is greater than 2
showStarCounter() {
const currentBoard = Utils.getCurrentBoard();
@ -71,6 +77,9 @@ BlazeComponent.extendComponent({
'click .js-star-board'() {
ReactiveCache.getCurrentUser().toggleBoardStar(Session.get('currentBoard'));
},
'click .js-auto-width-board'() {
ReactiveCache.getCurrentUser().toggleAutoWidth(Session.get('currentBoard'));
},
'click .js-open-board-menu': Popup.open('boardMenu'),
'click .js-change-visibility': Popup.open('boardChangeVisibility'),
'click .js-watch-board': Popup.open('boardChangeWatch'),

View file

@ -1,7 +1,7 @@
template(name='list')
.list.js-list(id="js-list-{{_id}}"
style="{{#unless collapsed}}min-width:{{listWidth}}px;{{/unless}}"
class="{{#if collapsed}}list-collapsed{{/if}}")
style="{{#unless collapsed}}{{#if autoWidth}}min-{{/if}}width:{{listWidth}}px;{{/unless}}"
class="{{#if collapsed}}list-collapsed{{/if}} {{#if autoWidth}}list-auto-width{{/if}}")
+listHeader
+listBody

View file

@ -200,6 +200,12 @@ BlazeComponent.extendComponent({
const list = Template.currentData();
return user.getListWidth(list.boardId, list._id);
},
autoWidth() {
const user = ReactiveCache.getCurrentUser();
const list = Template.currentData();
return user.hasAutoWidth(list.boardId);
},
}).register('list');
Template.miniList.events({