From 97dec88e268582edfbd014cfc93e8fa404e78bb8 Mon Sep 17 00:00:00 2001 From: Diego Imbert Date: Wed, 2 Jul 2025 23:45:46 +0200 Subject: [PATCH] R/W/RW selection and changes node pos in flow --- .../assets/AssetsDropdownButton.svelte | 26 ++++++++++++++++--- .../flows/content/FlowModuleComponent.svelte | 19 +++++++++++++- .../lib/components/graph/FlowGraphV2.svelte | 10 +++++-- openflow.openapi.yaml | 24 ++++++++++++++++- 4 files changed, 72 insertions(+), 7 deletions(-) diff --git a/frontend/src/lib/components/assets/AssetsDropdownButton.svelte b/frontend/src/lib/components/assets/AssetsDropdownButton.svelte index f1d6d66431..63e19f1a57 100644 --- a/frontend/src/lib/components/assets/AssetsDropdownButton.svelte +++ b/frontend/src/lib/components/assets/AssetsDropdownButton.svelte @@ -8,15 +8,17 @@ import ExploreAssetButton, { assetCanBeExplored } from '../../../routes/(root)/(logged)/assets/ExploreAssetButton.svelte' - import { formatAsset, type Asset, type AssetWithAccessType } from './lib' + import { assetEq, formatAsset, type Asset, type AssetWithAccessType } from './lib' import DbManagerDrawer from '../DBManagerDrawer.svelte' import { untrack } from 'svelte' - import { ResourceService } from '$lib/gen' + import { ResourceService, type AssetUsageAccessType } from '$lib/gen' import { workspaceStore } from '$lib/stores' import Button from '../common/button/Button.svelte' import Tooltip from '../meltComponents/Tooltip.svelte' import ResourceEditorDrawer from '../ResourceEditorDrawer.svelte' import type { Placement } from '@floating-ui/core' + import Select from '../select/Select.svelte' + import { safeSelectItems } from '../select/utils.svelte' let { assets, @@ -25,8 +27,10 @@ noBtnText = false, popoverPlacement = 'bottom-end', disableLiTooltip = false, + accessTypeOverrides, onHoverLi, - liSubtitle + liSubtitle, + onAccessTypeChanged }: { assets: AssetWithAccessType[] enableChangeAnimation?: boolean @@ -34,8 +38,10 @@ noBtnText?: boolean popoverPlacement?: Placement disableLiTooltip?: boolean + accessTypeOverrides?: AssetWithAccessType[] onHoverLi?: (asset: Asset, eventType: 'enter' | 'leave') => void liSubtitle?: (asset: Asset) => string + onAccessTypeChanged?: (asset: AssetWithAccessType, accessType: AssetUsageAccessType) => void } = $props() let prevAssets = $state([]) @@ -155,6 +161,20 @@ _resourceMetadata={{ resource_type: resourceDataCache[asset.path] }} /> {/if} + {#if onAccessTypeChanged} +