diff --git a/frontend/src/lib/components/common/table/FlowRow.svelte b/frontend/src/lib/components/common/table/FlowRow.svelte index 343f5d40ac..bc73b56261 100644 --- a/frontend/src/lib/components/common/table/FlowRow.svelte +++ b/frontend/src/lib/components/common/table/FlowRow.svelte @@ -25,7 +25,8 @@ Calendar, Share, Archive, - Clipboard + Clipboard, + Eye } from 'lucide-svelte' export let flow: Flow & { has_draft?: boolean; draft_only?: boolean; canWrite: boolean } @@ -160,6 +161,11 @@ icon: List, href: `/runs/${path}` }, + { + displayName: 'Audit logs', + icon: Eye, + href: `/audit_logs?resource=${path}` + }, { displayName: 'Move/Rename', icon: FileUp, diff --git a/frontend/src/lib/components/common/table/ScriptRow.svelte b/frontend/src/lib/components/common/table/ScriptRow.svelte index 82458d04b6..d5fed36648 100644 --- a/frontend/src/lib/components/common/table/ScriptRow.svelte +++ b/frontend/src/lib/components/common/table/ScriptRow.svelte @@ -23,6 +23,7 @@ Calendar, Code, Copy, + Eye, FileUp, GitFork, List, @@ -205,6 +206,11 @@ icon: List, href: `/runs/${script.path}` }, + { + displayName: 'Audit logs', + icon: Eye, + href: `/audit_logs?resource=${script.path}` + }, { displayName: 'Schedule', icon: Calendar, diff --git a/frontend/src/routes/(root)/(logged)/flows/get/[...path]/+page.svelte b/frontend/src/routes/(root)/(logged)/flows/get/[...path]/+page.svelte index 30199b9ebf..fcd8726f73 100644 --- a/frontend/src/routes/(root)/(logged)/flows/get/[...path]/+page.svelte +++ b/frontend/src/routes/(root)/(logged)/flows/get/[...path]/+page.svelte @@ -26,7 +26,8 @@ GitFork, History, Columns, - Pen + Pen, + Eye } from 'lucide-svelte' import DetailPageHeader from '$lib/components/details/DetailPageHeader.svelte' @@ -201,6 +202,14 @@ Icon: FolderOpen }) + menuItems.push({ + label: 'Audit logs', + Icon: Eye, + onclick: () => { + goto(`/audit_logs?resource=${flow?.path}`) + } + }) + menuItems.push({ label: 'Deploy to staging/prod', onclick: () => deploymentDrawer.openDrawer(flow?.path ?? '', 'flow'), diff --git a/frontend/src/routes/(root)/(logged)/schedules/+page.svelte b/frontend/src/routes/(root)/(logged)/schedules/+page.svelte index f4c2fae399..2f59d26f0e 100644 --- a/frontend/src/routes/(root)/(logged)/schedules/+page.svelte +++ b/frontend/src/routes/(root)/(logged)/schedules/+page.svelte @@ -257,6 +257,11 @@ icon: List, href: '/runs/?schedule_path=' + path }, + { + displayName: 'Audit logs', + icon: Eye, + href: `/audit_logs?resource=${path}` + }, { displayName: 'Run now', icon: Play, diff --git a/frontend/src/routes/(root)/(logged)/scripts/get/[...hash]/+page.svelte b/frontend/src/routes/(root)/(logged)/scripts/get/[...hash]/+page.svelte index 24214e844e..0ac386b13e 100644 --- a/frontend/src/routes/(root)/(logged)/scripts/get/[...hash]/+page.svelte +++ b/frontend/src/routes/(root)/(logged)/scripts/get/[...hash]/+page.svelte @@ -41,6 +41,7 @@ Activity, Archive, ArchiveRestore, + Eye, FolderOpen, GitFork, Globe2, @@ -241,7 +242,6 @@ return buttons } - if (Array.isArray(script.parent_hashes) && script.parent_hashes.length > 0) { buttons.push({ label: `History`, @@ -320,6 +320,14 @@ } }) + menuItems.push({ + label: 'Audit logs', + Icon: Eye, + onclick: () => { + goto(`/audit_logs?resource=${script?.path}`) + } + }) + menuItems.push({ label: 'Share', Icon: Share,