diff --git a/frontend/src/components/common/DataTable.vue b/frontend/src/components/common/DataTable.vue index 5a9bcd2..96bc7a7 100644 --- a/frontend/src/components/common/DataTable.vue +++ b/frontend/src/components/common/DataTable.vue @@ -300,6 +300,12 @@ @click="$emit('rowClick', slotProps)" /> + @@ -1096,6 +1102,17 @@ const handleStatusButtonClick = (column, rowData) => { } }; +// Handle link clicks +const handleLinkClick = (column, rowData) => { + try { + if (column.onLinkClick && typeof column.onLinkClick === "function") { + column.onLinkClick(rowData[column.fieldName], rowData); + } + } catch (error) { + console.error("Error executing link click:", error); + } +}; + const getBadgeColor = (status) => { switch (status?.toLowerCase()) { case "paid": @@ -1634,4 +1651,18 @@ defineExpose({ transform: none; box-shadow: none; } + +/* Link Styles */ +.datatable-link { + background: none; + border: none; + padding: 0; + cursor: pointer; + outline: none; +} + +.datatable-link:hover { + text-decoration: underline; +} +