101101 </span >
102102 </button >
103103
104+ <ThreeDotsMenu
105+ v-if =" listResourceData"
106+ :threeDotsDropdownItems =" listResourceData?.options?.pageInjections?.list?.threeDotsDropdownItems"
107+ :bulkActions =" listResourceData?.bulkActions"
108+ :checkboxes =" checkboxes"
109+ @startBulkAction =" startBulkAction"
110+ :updateList =" getList"
111+ :clearCheckboxes =" clearCheckboxes"
112+ ></ThreeDotsMenu >
113+
104114 </div >
105115
106116 <ResourceListTable
@@ -135,6 +145,12 @@ import {
135145import { showErrorTost , showWarningTost } from ' @/composables/useFrontendApi' ;
136146import { getIcon , btoa_function } from ' @/utils' ;
137147import { useI18n } from ' vue-i18n' ;
148+ import ThreeDotsMenu from ' @/components/ThreeDotsMenu.vue' ;
149+ import { useFiltersStore } from ' @/stores/filters' ;
150+
151+ const filtersStore = useFiltersStore ();
152+
153+ const listResourceData = ref (null );
138154
139155const { t } = useI18n ();
140156
@@ -316,7 +332,7 @@ async function getList() {
316332 totalRows .value = 0 ;
317333 return ;
318334 }
319-
335+ listResourceData . value = data;
320336 rows .value = data .data ? .map (row => {
321337 row ._primaryKeyValue = row[listResource .value .columns .find (c => c .primaryKey ).name ];
322338 return row;
@@ -368,9 +384,14 @@ onMounted( async () => {
368384 if (props .meta .defaultFiltersOn ) {
369385 await getDefaultFilters ();
370386 }
387+
371388 await getList ();
372-
389+ filtersStore . setFilters ( endFilters . value );
373390});
374391
392+ function clearCheckboxes () {
393+ checkboxes .value = [];
394+ }
395+
375396
376397< / script>
0 commit comments