Unverified Commit 3be36722 authored by Marius van den Beek's avatar Marius van den Beek Committed by GitHub
Browse files

Merge pull request #18574 from ElectronicBlueberry/fix-history-changes-workflow-run-form-reset

[24.1] Fix history changes switch to simple form
parents 5c43d003 314e20c0
Loading
Loading
Loading
Loading
+52 −41
Original line number Diff line number Diff line
@@ -77,11 +77,13 @@ function handleSubmissionError(error: string) {
    submissionError.value = errorMessageAsString(error);
}

function loadRun() {
    getRunData(props.workflowId, props.version || undefined)
        .then((runData) => {
async function loadRun() {
    try {
        const runData = await getRunData(props.workflowId, props.version || undefined);
        const incomingModel = new WorkflowRunModel(runData);

        simpleForm.value = props.preferSimpleForm;

        if (simpleForm.value) {
            // These only work with PJA - the API doesn't evaluate them at
            // all outside that context currently. The main workflow form renders
@@ -96,9 +98,7 @@ function loadRun() {
            // input), we have to render the tool form steps and cannot use the
            // simplified tool form.
            if (incomingModel.hasOpenToolSteps) {
                    console.log(
                        "cannot render simple workflow form - one or more tools have disconnected runtime inputs"
                    );
                console.log("cannot render simple workflow form - one or more tools have disconnected runtime inputs");
                simpleForm.value = false;
            }
            // Just render the whole form for resource request parameters (kind of
@@ -108,15 +108,15 @@ function loadRun() {
                simpleForm.value = false;
            }
        }

        hasUpgradeMessages.value = incomingModel.hasUpgradeMessages;
        hasStepVersionChanges.value = incomingModel.hasStepVersionChanges;
        workflowName.value = incomingModel.name;
        workflowModel.value = incomingModel;
        loading.value = false;
        })
        .catch((response) => {
            workflowError.value = errorMessageAsString(response);
        });
    } catch (e) {
        workflowError.value = errorMessageAsString(e);
    }
}

async function onImport() {
@@ -124,8 +124,19 @@ async function onImport() {
    router.push(`/workflows/edit?id=${response.id}`);
}

const advancedForm = ref(false);
const fromVariant = computed<"simple" | "advanced">(() => {
    if (advancedForm.value) {
        return "advanced";
    } else if (simpleForm.value) {
        return "simple";
    } else {
        return "advanced";
    }
});

function showAdvanced() {
    simpleForm.value = false;
    advancedForm.value = true;
}

onMounted(() => {
@@ -185,7 +196,7 @@ defineExpose({
                        Workflow submission failed: {{ submissionError }}
                    </BAlert>
                    <WorkflowRunFormSimple
                        v-else-if="simpleForm"
                        v-else-if="fromVariant === 'simple'"
                        :model="workflowModel"
                        :target-history="simpleFormTargetHistory"
                        :use-job-cache="simpleFormUseJobCache"