This commit is contained in:
@@ -38,7 +38,11 @@ export function scriptStatus(s: LibraryScript): ScriptStatus {
|
|||||||
if (s.latestVersion.id === s.current_version_id) return 'promoted';
|
if (s.latestVersion.id === s.current_version_id) return 'promoted';
|
||||||
return s.latestVersion.state === 'test-failed' ? 'failed' : s.latestVersion.state;
|
return s.latestVersion.state === 'test-failed' ? 'failed' : s.latestVersion.state;
|
||||||
}
|
}
|
||||||
export function canTest(s: LibraryScript): boolean {
|
export function canTest(s: {
|
||||||
|
runningBetaId: number | null;
|
||||||
|
latestVersion: { id: number } | null;
|
||||||
|
current_version_id: number | null;
|
||||||
|
}): boolean {
|
||||||
return (
|
return (
|
||||||
s.runningBetaId === null &&
|
s.runningBetaId === null &&
|
||||||
s.latestVersion !== null &&
|
s.latestVersion !== null &&
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
} from '$lib/beta-draft.js';
|
} from '$lib/beta-draft.js';
|
||||||
import { coverageSummary, requirementSummary } from '$lib/beta-plan-summary.js';
|
import { coverageSummary, requirementSummary } from '$lib/beta-plan-summary.js';
|
||||||
import { artifactVersionLabel } from '$lib/artifact-version.js';
|
import { artifactVersionLabel } from '$lib/artifact-version.js';
|
||||||
import { parseBetaSelection, mapLabel } from '$lib/script-library.js';
|
import { canTest, parseBetaSelection, mapLabel } from '$lib/script-library.js';
|
||||||
import { fleetIdentity, freshServer } from '$lib/fleet-overview.js';
|
import { fleetIdentity, freshServer } from '$lib/fleet-overview.js';
|
||||||
import { fleetServers as sharedFleet, fleetError, refreshFleet } from '$ui/stores/fleet.js';
|
import { fleetServers as sharedFleet, fleetError, refreshFleet } from '$ui/stores/fleet.js';
|
||||||
import { serverTimeNow } from '$ui/stores/servers.js';
|
import { serverTimeNow } from '$ui/stores/servers.js';
|
||||||
@@ -95,7 +95,13 @@
|
|||||||
const editable = $derived(canOperate($page.data?.user?.role));
|
const editable = $derived(canOperate($page.data?.user?.role));
|
||||||
const fleetServers = $derived($sharedFleet);
|
const fleetServers = $derived($sharedFleet);
|
||||||
const eligibleFiles = $derived(
|
const eligibleFiles = $derived(
|
||||||
scripts.filter((file) => file.runningBetaId === null && file.latestVersion !== null)
|
scripts.filter(
|
||||||
|
(file) =>
|
||||||
|
canTest(file) ||
|
||||||
|
// Exact-version links and drafts may still target an older unpromoted upload.
|
||||||
|
(file.runningBetaId === null &&
|
||||||
|
picks.some((pick) => pick.scriptId === file.id && versionsFor(pick).length > 0))
|
||||||
|
)
|
||||||
);
|
);
|
||||||
const filesReady = $derived(
|
const filesReady = $derived(
|
||||||
picks.length > 0 &&
|
picks.length > 0 &&
|
||||||
|
|||||||
Reference in New Issue
Block a user