feat(ui-fixes-phase6): Complete US-609 - Buton Resetează pe Toate Paginile cu Filtre Mobil
Implemented by Ralph autonomous loop. Iteration: 10 Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -179,8 +179,8 @@
|
|||||||
"npm run typecheck passes",
|
"npm run typecheck passes",
|
||||||
"Verify in browser: All filter pages show Reset button in mobile header"
|
"Verify in browser: All filter pages show Reset button in mobile header"
|
||||||
],
|
],
|
||||||
"passes": false,
|
"passes": true,
|
||||||
"notes": "Modifică InvoicesView.vue, CashView.vue, BankView.vue, ReceiptsListView.vue"
|
"notes": "Completed in iteration 10"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "US-610",
|
"id": "US-610",
|
||||||
|
|||||||
@@ -296,3 +296,9 @@ PRD: tasks/prd-ui-fixes-phase6.md
|
|||||||
[2026-01-13 16:33:10] Working on story: US-608
|
[2026-01-13 16:33:10] Working on story: US-608
|
||||||
[2026-01-13 16:33:10] Running Claude... (log: /workspace/roa2web/scripts/ralph/logs/iteration_9_US-608.log)
|
[2026-01-13 16:33:10] Running Claude... (log: /workspace/roa2web/scripts/ralph/logs/iteration_9_US-608.log)
|
||||||
[2026-01-13 16:38:01] SUCCESS: Story US-608 passed!
|
[2026-01-13 16:38:01] SUCCESS: Story US-608 passed!
|
||||||
|
[2026-01-13 16:38:01] Changes committed
|
||||||
|
[2026-01-13 16:38:01] Progress: 8/10 stories completed
|
||||||
|
[2026-01-13 16:38:03] === Iteration 10/30 ===
|
||||||
|
[2026-01-13 16:38:03] Working on story: US-609
|
||||||
|
[2026-01-13 16:38:03] Running Claude... (log: /workspace/roa2web/scripts/ralph/logs/iteration_10_US-609.log)
|
||||||
|
[2026-01-13 16:42:27] SUCCESS: Story US-609 passed!
|
||||||
|
|||||||
@@ -1253,7 +1253,7 @@ const goToOCRScan = () => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// US-103/US-306: Top bar actions for MobileTopBar component
|
// US-103/US-306/US-609: Top bar actions for MobileTopBar component
|
||||||
const mobileTopBarActions = computed(() => {
|
const mobileTopBarActions = computed(() => {
|
||||||
if (mobileSelectionMode.value) {
|
if (mobileSelectionMode.value) {
|
||||||
// Selection mode - show select all action
|
// Selection mode - show select all action
|
||||||
@@ -1261,15 +1261,16 @@ const mobileTopBarActions = computed(() => {
|
|||||||
{ id: 'select-all', icon: 'pi pi-check-square', label: 'Selectează tot', tooltip: 'Selectează tot' }
|
{ id: 'select-all', icon: 'pi pi-check-square', label: 'Selectează tot', tooltip: 'Selectează tot' }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
// Normal mode - show filter, export, more menu (US-306)
|
// Normal mode - show filter, reset, export, more menu (US-306, US-609)
|
||||||
return [
|
return [
|
||||||
{ id: 'filter', icon: 'pi pi-filter', active: hasActiveFilters.value, tooltip: 'Filtre' },
|
{ id: 'filter', icon: 'pi pi-filter', active: hasActiveFilters.value, tooltip: 'Filtre' },
|
||||||
|
{ id: 'reset', icon: 'pi pi-filter-slash', tooltip: 'Resetează Filtrele' },
|
||||||
{ id: 'export', icon: 'pi pi-download', tooltip: 'Export Excel' },
|
{ id: 'export', icon: 'pi pi-download', tooltip: 'Export Excel' },
|
||||||
{ id: 'more', icon: 'pi pi-ellipsis-v', tooltip: 'Mai multe' }
|
{ id: 'more', icon: 'pi pi-ellipsis-v', tooltip: 'Mai multe' }
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
|
|
||||||
// US-103/US-306: Handle top bar action clicks
|
// US-103/US-306/US-609: Handle top bar action clicks
|
||||||
const handleTopBarAction = (action) => {
|
const handleTopBarAction = (action) => {
|
||||||
switch (action.id) {
|
switch (action.id) {
|
||||||
case 'select-all':
|
case 'select-all':
|
||||||
@@ -1278,10 +1279,14 @@ const handleTopBarAction = (action) => {
|
|||||||
case 'filter':
|
case 'filter':
|
||||||
showFilters.value = !showFilters.value
|
showFilters.value = !showFilters.value
|
||||||
break
|
break
|
||||||
|
case 'reset':
|
||||||
|
// US-609: Reset all filters to default values
|
||||||
|
clearFilters()
|
||||||
|
break
|
||||||
case 'export':
|
case 'export':
|
||||||
// US-502: Show export menu (PDF/XLSX dropdown) on mobile too
|
// US-502: Show export menu (PDF/XLSX dropdown) on mobile too
|
||||||
if (exportMenuRef.value) {
|
if (exportMenuRef.value) {
|
||||||
const btn = document.querySelector('.mobile-top-bar .top-bar-btn:nth-child(2)')
|
const btn = document.querySelector('.mobile-top-bar .top-bar-btn:nth-child(3)')
|
||||||
if (btn) {
|
if (btn) {
|
||||||
exportMenuRef.value.toggle({ currentTarget: btn })
|
exportMenuRef.value.toggle({ currentTarget: btn })
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -101,7 +101,7 @@
|
|||||||
icon="pi pi-filter-slash"
|
icon="pi pi-filter-slash"
|
||||||
label="Resetează"
|
label="Resetează"
|
||||||
class="p-button-outlined p-button-secondary"
|
class="p-button-outlined p-button-secondary"
|
||||||
@click="clearFilters; showFilters = false"
|
@click="clearFilters(); showFilters = false"
|
||||||
/>
|
/>
|
||||||
<Button
|
<Button
|
||||||
icon="pi pi-check"
|
icon="pi pi-check"
|
||||||
@@ -436,7 +436,7 @@ const handleLogout = async () => {
|
|||||||
router.push('/login');
|
router.push('/login');
|
||||||
};
|
};
|
||||||
|
|
||||||
// US-107: Mobile TopBar actions (refresh + export)
|
// US-107/US-609: Mobile TopBar actions (filter, reset, refresh, export)
|
||||||
const mobileTopBarActions = computed(() => [
|
const mobileTopBarActions = computed(() => [
|
||||||
{
|
{
|
||||||
icon: "pi pi-filter",
|
icon: "pi pi-filter",
|
||||||
@@ -444,6 +444,11 @@ const mobileTopBarActions = computed(() => [
|
|||||||
tooltip: "Filtre",
|
tooltip: "Filtre",
|
||||||
active: hasActiveFilters.value
|
active: hasActiveFilters.value
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
icon: "pi pi-filter-slash",
|
||||||
|
label: "Resetează",
|
||||||
|
tooltip: "Resetează Filtrele"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
icon: "pi pi-refresh",
|
icon: "pi pi-refresh",
|
||||||
label: "Actualizează",
|
label: "Actualizează",
|
||||||
@@ -456,10 +461,12 @@ const mobileTopBarActions = computed(() => [
|
|||||||
}
|
}
|
||||||
]);
|
]);
|
||||||
|
|
||||||
// US-107: Handle top bar action clicks
|
// US-107/US-609: Handle top bar action clicks
|
||||||
const handleTopBarAction = (action) => {
|
const handleTopBarAction = (action) => {
|
||||||
if (action.icon === "pi pi-filter") {
|
if (action.icon === "pi pi-filter") {
|
||||||
showFilters.value = !showFilters.value;
|
showFilters.value = !showFilters.value;
|
||||||
|
} else if (action.icon === "pi pi-filter-slash") {
|
||||||
|
clearFilters();
|
||||||
} else if (action.icon === "pi pi-refresh") {
|
} else if (action.icon === "pi pi-refresh") {
|
||||||
refreshData();
|
refreshData();
|
||||||
} else if (action.icon === "pi pi-download") {
|
} else if (action.icon === "pi pi-download") {
|
||||||
|
|||||||
Reference in New Issue
Block a user