dify/web/features/deployments/deploy-drawer/state/release-options.ts
Stephen Zhou 48452aefbc
feat: app deploy (#35670)
Co-authored-by: zhangx1n <zhangxin@dify.ai>
Co-authored-by: yyh <yuanyouhuilyz@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-06-17 09:28:43 +00:00

26 lines
716 B
TypeScript

import type { EnvironmentDeployment, Release } from '@dify/contracts/enterprise/types.gen'
export function currentReleaseIdForEnvironment(rows: EnvironmentDeployment[], targetEnvironmentId?: string) {
if (!targetEnvironmentId)
return undefined
return rows.find(row => row.environment.id === targetEnvironmentId)?.currentRelease?.id
}
export function selectableDeployReleases({
releases,
lockedEnvId,
currentReleaseId,
presetReleaseId,
}: {
releases: Release[]
lockedEnvId?: string
currentReleaseId?: string
presetReleaseId?: string
}) {
if (!lockedEnvId || presetReleaseId || !currentReleaseId)
return releases
return releases.filter(release => release.id !== currentReleaseId)
}