diff --git a/src/components/parameter-schema/form-mode/ParameterStringInput.vue b/src/components/parameter-schema/form-mode/ParameterStringInput.vue index b6be2cb88238b1e10ead54d2a32c37cd99ac0505..1bd3299a3b50b845a77f45b9d123a05ee3517ae9 100644 --- a/src/components/parameter-schema/form-mode/ParameterStringInput.vue +++ b/src/components/parameter-schema/form-mode/ParameterStringInput.vue @@ -114,7 +114,7 @@ function updateValue() { "update:modelValue", !s3Path.bucket && s3Path.key ? undefined - : `s3://${s3Path.bucket}/${s3Path.key}` + : `s3://${s3Path.bucket}/${s3Path.key ?? ""}` ); } else { emit( diff --git a/src/views/workflows/ListWorkflowExecutionsView.vue b/src/views/workflows/ListWorkflowExecutionsView.vue index 2ad5c43b8807c70c3e81721582da093f4b42303d..7d0e5488d999ee6d744ebf729ceebe97d86a47c1 100644 --- a/src/views/workflows/ListWorkflowExecutionsView.vue +++ b/src/views/workflows/ListWorkflowExecutionsView.vue @@ -138,7 +138,8 @@ function updateExecutions() { ) .filter( // filter already seen workflow versions - (version) => !executionsState.versionMapping[version.workflow_id] + (version) => + !executionsState.versionMapping[version.workflow_version_id] ) .filter( // filter unique workflow versions @@ -225,9 +226,14 @@ onMounted(() => { class="row m-2 border-bottom border-light mb-4 justify-content-between align-items-center" > <h1 class="mb-2 text-light w-fit">My Workflow Executions</h1> - <router-link :to="{ name: 'workflows' }" class="btn btn-primary w-fit" - >Start Workflow Execution</router-link - > + <div class="w-fit"> + <button class="btn btn-light me-2" @click="updateExecutions"> + <font-awesome-icon icon="fa-solid fa-arrow-rotate-right" /> + </button> + <router-link :to="{ name: 'workflows' }" class="btn btn-primary" + >Start Workflow Execution</router-link + > + </div> </div> <table class="table table-dark table-striped table-hover caption-top align-middle" @@ -245,6 +251,7 @@ onMounted(() => { <th scope="col">Status</th> <th scope="col">Started</th> <th scope="col">Ended</th> + <th scope="col">Notes</th> <th scope="col"></th> </tr> </thead> @@ -254,13 +261,16 @@ onMounted(() => { <td class="placeholder-glow w-25"> <span class="placeholder col-6"></span> </td> - <td class="placeholder-glow" style="width: 20%"> + <td class="placeholder-glow" style="width: 15%"> <span class="placeholder col-4"></span> </td> - <td class="placeholder-glow" style="width: 20%"> + <td class="placeholder-glow" style="width: 15%"> <span class="placeholder col-6"></span> </td> - <td class="placeholder-glow" style="width: 20%"> + <td class="placeholder-glow" style="width: 15%"> + <span class="placeholder col-6"></span> + </td> + <td class="placeholder-glow" style="width: 15%"> <span class="placeholder col-6"></span> </td> <td class="text-end"> @@ -290,14 +300,19 @@ onMounted(() => { <span class="placeholder col-6"></span> </td> <td v-else> - <span>{{ - executionsState.workflowMapping[execution.workflow_id] - }}</span> - <span - >@{{ - executionsState.versionMapping[execution.workflow_version_id] - }}</span + <router-link + :to="{ + name: 'workflow-version', + params: { + versionId: execution.workflow_version_id, + workflowId: execution.workflow_id, + }, + }" > + {{ executionsState.workflowMapping[execution.workflow_id] }}@{{ + executionsState.versionMapping[execution.workflow_version_id] + }} + </router-link> </td> <td> <span @@ -316,6 +331,10 @@ onMounted(() => { </template> <template v-else> - </template> </td> + <td class="text-truncate"> + <template v-if="execution.notes">{{ execution.notes }}</template> + <template v-else>-</template> + </td> <td class="text-end"> <div class="btn-group btn-group-sm dropdown-center dropdown-menu-start" @@ -358,7 +377,7 @@ onMounted(() => { </tr> </template> <tr v-else> - <td colspan="5" class="text-center"><i>No workflow executions</i></td> + <td colspan="6" class="text-center"><i>No workflow executions</i></td> </tr> </tbody> </table> diff --git a/src/views/workflows/StartWorkflowView.vue b/src/views/workflows/StartWorkflowView.vue index b539b33e5d26394231004855e6b80b61a6e54a28..fc8c681ba372cb3a63515f239530618e3354f18f 100644 --- a/src/views/workflows/StartWorkflowView.vue +++ b/src/views/workflows/StartWorkflowView.vue @@ -4,7 +4,6 @@ import type { WorkflowVersionFull } from "@/client/workflow"; import { WorkflowVersionService } from "@/client/workflow"; import axios from "axios"; import { onMounted, ref, reactive } from "vue"; -import type { JSONSchemaType } from "ajv"; const props = defineProps<{ versionId: string; @@ -15,7 +14,7 @@ const parameterSchema = ref(undefined); const versionState = reactive<{ // eslint-disable-next-line @typescript-eslint/no-explicit-any - parameterSchema?: JSONSchemaType<any>; + parameterSchema?: Record<string, any>; workflowVersion?: WorkflowVersionFull; }>({ parameterSchema: undefined,