mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2024-09-20 23:16:15 +08:00
Disable checklist item drag for less than 2 items, fix base element controller [SCI-6997] (#4275)
This commit is contained in:
parent
d5e4af953c
commit
28ca1aaec6
|
@ -322,6 +322,11 @@
|
|||
&.step-element-grip--draggable {
|
||||
cursor: grab;
|
||||
}
|
||||
|
||||
&.step-element-grip--disabled {
|
||||
pointer-events: none;
|
||||
.fas { opacity: 0; }
|
||||
}
|
||||
}
|
||||
|
||||
.sci-reorderable-items {
|
||||
|
|
|
@ -30,7 +30,7 @@ module StepElements
|
|||
end
|
||||
|
||||
def render_step_orderable_element(orderable)
|
||||
step_orderable_element = orderable.step_orderable_elements.find_by!(step: @step)
|
||||
step_orderable_element = orderable.step_orderable_element
|
||||
render json: step_orderable_element, serializer: StepOrderableElementSerializer, user: current_user
|
||||
end
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
:dragClass="'step-checklist-item-drag'"
|
||||
:chosenClass="'step-checklist-item-chosen'"
|
||||
:handle="'.step-element-grip'"
|
||||
:disabled="editingItem && !element.attributes.orderable.urls.reorder_url"
|
||||
:disabled="editingItem || checklistItems.length < 2 || !element.attributes.orderable.urls.reorder_url"
|
||||
@start="startReorder"
|
||||
@end="endReorder"
|
||||
>
|
||||
|
@ -51,6 +51,7 @@
|
|||
:locked="locked"
|
||||
:reorderChecklistItemUrl="element.attributes.orderable.urls.reorder_url"
|
||||
:inRepository="inRepository"
|
||||
:draggable="checklistItems.length > 1"
|
||||
@editStart="editingItem = true"
|
||||
@editEnd="editingItem = false"
|
||||
@update="saveItem"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="step-checklist-item">
|
||||
<div class="step-element-header" :class="{ 'locked': locked || editingText, 'editing-name': editingText }">
|
||||
<div v-if="reorderChecklistItemUrl" class="step-element-grip step-element-grip--draggable">
|
||||
<div v-if="reorderChecklistItemUrl" class="step-element-grip step-element-grip--draggable" :class="{ 'step-element-grip--disabled': !draggable }">
|
||||
<i class="fas fa-grip-vertical"></i>
|
||||
</div>
|
||||
<div class="step-element-name" :class="{ 'done': checklistItem.attributes.checked }">
|
||||
|
@ -67,6 +67,10 @@
|
|||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
draggable: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
inRepository: {
|
||||
type: Boolean,
|
||||
required: true
|
||||
|
|
Loading…
Reference in a new issue