Merge pull request #85 from a110605/issue_7347

fix: filter schedule style and functionality
This commit is contained in:
Andy Lee 2025-01-14 12:55:24 +08:00 committed by GitHub
commit 4480dbdeed
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -25,6 +25,9 @@ export default {
return Array.from(new Set(options)); return Array.from(new Set(options));
}, },
enableFilterButton() {
return this.rows.some((r) => r.sourceSchedule !== undefined);
}
}, },
methods: { methods: {
@ -63,27 +66,30 @@ export default {
</script> </script>
<template> <template>
<div class="vm-schedule-filter"> <div
<template> class="vm-schedule-filter"
<span >
v-if="selected" <span
class="banner-item bg-warning" v-if="selected"
> class="banner-item bg-warning"
{{ t('harvester.tableHeaders.vmSchedule') }}{{ selected ? ` = ${selected}`: '' }}<i >
class="icon icon-close ml-5" {{ t('harvester.tableHeaders.vmSchedule') }}{{ selected ? ` = ${selected}`: '' }}
@click="remove" <i
/> class="icon icon-close ml-5"
</span> @click="remove"
</template> />
</span>
<v-dropdown <v-dropdown
popper-class="vm-schedule-dropdown"
:triggers="scheduleOptions.length ? ['click'] : []" :triggers="scheduleOptions.length ? ['click'] : []"
placement="bottom-end" placement="bottom-end"
offset="1" offset="1"
:distance="20"
> >
<button <button
ref="actionDropDown" ref="actionDropDown"
class="btn bg-primary mr-10" class="btn bg-primary mr-10"
:disabled="!enableFilterButton"
> >
<slot name="title"> <slot name="title">
{{ t('harvester.fields.filterSchedule') }} {{ t('harvester.fields.filterSchedule') }}
@ -98,7 +104,7 @@ export default {
name="model" name="model"
:options="scheduleOptions" :options="scheduleOptions"
:labels="scheduleOptions" :labels="scheduleOptions"
@input="onSelect" @update:value="onSelect"
/> />
</div> </div>
</template> </template>
@ -106,6 +112,12 @@ export default {
</div> </div>
</template> </template>
<style lang="scss">
.vm-schedule-dropdown .v-popper__arrow-container {
display: none;
}
</style>
<style lang="scss" scoped> <style lang="scss" scoped>
.vm-schedule-filter { .vm-schedule-filter {
display: inline-block; display: inline-block;