Skip to content

Commit 5308919

Browse files
committed
fix:Changed Create Invoice select to button
1 parent ab60d4b commit 5308919

File tree

1 file changed

+38
-18
lines changed

1 file changed

+38
-18
lines changed

src/pages/ListView/ListView.vue

Lines changed: 38 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,41 @@
66
schemaName === 'Item' &&
77
(!isSelectionMode || (isSelectionMode && selectedItems.length === 0))
88
"
9+
@click="toggleSelectionMode"
910
>
1011
{{ t`Select` }}
1112
</Button>
12-
<Select
13+
<div
1314
v-if="
1415
isSelectionMode && schemaName === 'Item' && selectedItems.length > 0
1516
"
16-
:df="{
17-
fieldtype: 'Select',
18-
fieldname: 'Create ',
19-
label: 'Create Invoice',
20-
options: actionOptions,
21-
}"
22-
:value="selectedAction"
23-
class="w-40"
24-
@change="onActionChange"
25-
/>
17+
class="relative"
18+
>
19+
<Button class="w-40" @click="toggleDropdown"> Create Invoice </Button>
20+
<div
21+
v-if="showDropdown"
22+
class="
23+
absolute
24+
top-full
25+
mt-1
26+
bg-white
27+
border border-gray-300
28+
rounded
29+
shadow-lg
30+
z-10
31+
w-40
32+
"
33+
>
34+
<div
35+
v-for="option in actionOptions"
36+
:key="option.value"
37+
class="px-4 py-2 hover:bg-gray-100 cursor-pointer text-sm"
38+
@click="createInvoice(option.value)"
39+
>
40+
{{ option.label }}
41+
</div>
42+
</div>
43+
</div>
2644
<Button ref="exportButton" :icon="false" @click="openExportModal = true">
2745
{{ t`Export` }}
2846
</Button>
@@ -73,7 +91,7 @@ import ExportWizard from 'src/components/ExportWizard.vue';
7391
import FilterDropdown from 'src/components/FilterDropdown.vue';
7492
import Modal from 'src/components/Modal.vue';
7593
import PageHeader from 'src/components/PageHeader.vue';
76-
import Select from 'src/components/Controls/Select.vue';
94+
7795
import { fyo } from 'src/initFyo';
7896
import { shortcutsKey } from 'src/utils/injectionKeys';
7997
import {
@@ -97,7 +115,6 @@ export default defineComponent({
97115
FilterDropdown,
98116
Modal,
99117
ExportWizard,
100-
Select,
101118
},
102119
props: {
103120
schemaName: { type: String, required: true },
@@ -119,14 +136,14 @@ export default defineComponent({
119136
openExportModal: false,
120137
listFilters: {},
121138
isSelectionMode: false,
122-
selectedAction: '',
139+
showDropdown: false,
123140
selectedItems: [] as string[],
124141
} as {
125142
listConfig: undefined | ReturnType<typeof getListConfig>;
126143
openExportModal: boolean;
127144
listFilters: QueryFilter;
128145
isSelectionMode: boolean;
129-
selectedAction: string;
146+
showDropdown: boolean;
130147
selectedItems: string[];
131148
};
132149
},
@@ -209,12 +226,14 @@ export default defineComponent({
209226
toggleSelectionMode() {
210227
this.isSelectionMode = !this.isSelectionMode;
211228
if (!this.isSelectionMode) {
212-
this.selectedAction = '';
229+
this.showDropdown = false;
213230
this.selectedItems = [];
214231
}
215232
},
216-
async onActionChange(value: string) {
217-
this.selectedAction = value;
233+
toggleDropdown() {
234+
this.showDropdown = !this.showDropdown;
235+
},
236+
async createInvoice(value: string) {
218237
if (
219238
value === ModelNameEnum.SalesInvoice ||
220239
value === ModelNameEnum.PurchaseInvoice
@@ -237,6 +256,7 @@ export default defineComponent({
237256
await routeTo(route);
238257
this.selectedItems = [];
239258
this.isSelectionMode = false;
259+
this.showDropdown = false;
240260
}
241261
},
242262

0 commit comments

Comments
 (0)