Added multi-select to book-sort interface

As discussed in #2064

Closes #2067
This commit is contained in:
Dan Brown 2020-04-27 16:53:27 +01:00
parent 4ef362143b
commit 898d0b5817
No known key found for this signature in database
GPG Key ID: 46D9F943C24A2EF9
2 changed files with 9 additions and 1 deletions

View File

@ -1,4 +1,4 @@
import Sortable from "sortablejs";
import {Sortable, MultiDrag} from "sortablejs";
// Auto sort control
const sortOperations = {
@ -43,6 +43,7 @@ class BookSort {
this.input = elem.querySelector('[book-sort-input]');
const initialSortBox = elem.querySelector('.sort-box');
Sortable.mount(new MultiDrag());
this.setupBookSortable(initialSortBox);
this.setupSortPresets();
@ -134,6 +135,9 @@ class BookSort {
onSort: this.updateMapInput.bind(this),
dragClass: 'bg-white',
ghostClass: 'primary-background-light',
multiDrag: true,
multiDragKey: 'CTRL',
selectedClass: 'sortable-selected',
});
}
}

View File

@ -275,6 +275,10 @@
.entity-list-item > span:first-child {
align-self: flex-start;
}
.sortable-selected .entity-list-item, .sortable-selected .entity-list-item:hover {
outline: 1px dotted var(--color-primary);
background-color: var(--color-primary-light) !important;
}
.entity-list-item > div {
display: block;
flex: 1;