Fix SaveRequest modal selection

This commit is contained in:
Andrew Bastin
2021-05-15 00:02:55 -04:00
parent 489f14b88f
commit 1b9b2ac4c9
8 changed files with 203 additions and 148 deletions

View File

@@ -4,7 +4,9 @@
<button class="icon" @click="toggleShowChildren">
<i class="material-icons" v-show="!showChildren && !isFiltered">arrow_right</i>
<i class="material-icons" v-show="showChildren || isFiltered">arrow_drop_down</i>
<i v-if="picked === collection.id" class="text-green-400 material-icons">check_circle</i>
<i v-if="isSelected" class="text-green-400 material-icons">check_circle</i>
<i v-else class="material-icons">folder</i>
<span>{{ collection.title }}</span>
</button>
@@ -87,19 +89,13 @@
:saveRequest="saveRequest"
:collectionsType="collectionsType"
:isFiltered="isFiltered"
:picked="picked"
@add-folder="$emit('add-folder', $event)"
@edit-folder="$emit('edit-folder', $event)"
@edit-request="$emit('edit-request', $event)"
@select-folder="
$emit('select-folder', {
name: folder.title + '/' + $event.name,
id: $event.id,
reqIdx: $event.reqIdx,
})
"
@select="$emit('select', $event)"
@expand-collection="expandCollection"
@remove-request="removeRequest"
:picked="picked.toString()"
/>
</li>
</ul>
@@ -118,14 +114,9 @@
:doc="doc"
:saveRequest="saveRequest"
:collectionsType="collectionsType"
:picked="picked"
@edit-request="editRequest($event)"
@select-request="
$emit('select-folder', {
name: $event.name,
id: collection.id,
reqIdx: $event.idx,
})
"
@select="$emit('select', $event)"
@remove-request="removeRequest"
/>
</li>
@@ -154,10 +145,6 @@
</template>
<script>
import { fb } from "~/helpers/fb"
import { getSettingSubject } from "~/newstore/settings"
import gql from "graphql-tag"
export default {
props: {
collectionIndex: Number,
@@ -167,7 +154,7 @@ export default {
selected: Boolean,
saveRequest: Boolean,
collectionsType: Object,
picked: { default: "", type: String },
picked: Object,
},
data() {
return {
@@ -180,19 +167,36 @@ export default {
pageNo: 0,
}
},
computed: {
isSelected() {
return (
this.picked &&
this.picked.pickedType === "teams-collection" &&
this.picked.collectionID === this.collection.id
)
},
},
methods: {
editRequest(event) {
this.$emit("edit-request", event)
if (this.$props.saveRequest)
this.$emit("select-folder", {
name: this.$data.collection.name,
id: this.$data.collection.id,
reqIdx: event.requestIndex,
this.$emit("select", {
picked: {
pickedType: "teams-collection",
collectionID: this.collection.id,
},
})
},
toggleShowChildren() {
if (this.$props.saveRequest)
this.$emit("select-folder", { name: "", id: this.$props.collection.id, reqIdx: "" })
this.$emit("select", {
picked: {
pickedType: "teams-collection",
collectionID: this.collection.id,
},
})
this.$emit("expand-collection", this.collection.id)
this.showChildren = !this.showChildren