Skip to content
Snippets Groups Projects
Verified Commit 4d4783ec authored by Daniel Göbel's avatar Daniel Göbel
Browse files

Fix ts-lint error

#95
parent e6d95764
No related branches found
No related tags found
1 merge request!92Resolve "Add help for creating clomw_info.json"
Pipeline #45907 passed
......@@ -15,6 +15,7 @@ import type { ClowmInfo } from "@/types/ClowmInfo";
import UploadParameterFileModal from "@/components/parameter-schema/UploadParameterFileModal.vue";
import type {
TemporaryParams,
WorkflowMetaParameters,
WorkflowParameters,
} from "@/types/WorkflowParameters";
import { useWorkflowExecutionStore } from "@/stores/workflowExecutions";
......@@ -55,10 +56,7 @@ const emit = defineEmits<{
(
e: "start-workflow",
parameters: WorkflowParameters,
notes?: string,
logs_s3_path?: string,
debug_s3_path?: string,
provenance_s3_path?: string,
metaParameters: WorkflowMetaParameters,
): void;
}>();
......@@ -90,18 +88,17 @@ const launchForm = ref<HTMLFormElement | null>(null);
const formState = reactive<{
formInput: WorkflowParameters;
validated: boolean;
pipelineNotes: string;
logs_s3_path?: string;
debug_s3_path?: string;
provenance_s3_path?: string;
metaParameters: WorkflowMetaParameters;
errorType?: string;
}>({
formInput: {},
validated: false,
pipelineNotes: "",
logs_s3_path: undefined,
debug_s3_path: undefined,
provenance_s3_path: undefined,
metaParameters: {
logs_s3_path: undefined,
debug_s3_path: undefined,
provenance_s3_path: undefined,
notes: undefined,
},
errorType: undefined,
});
......@@ -191,14 +188,7 @@ function startWorkflow() {
console.error(validateSchema.errors);
errorToast?.show();
} else {
emit(
"start-workflow",
formState.formInput,
formState.pipelineNotes,
formState.logs_s3_path,
formState.debug_s3_path,
formState.provenance_s3_path,
);
emit("start-workflow", formState.formInput, formState.metaParameters);
}
} else {
formState.errorType = "form";
......@@ -213,10 +203,7 @@ function loadParameters(tempParams?: TemporaryParams) {
formState.formInput[param] = tempParams.params[param];
}
}
formState.pipelineNotes = tempParams.metaParams.notes ?? "";
formState.logs_s3_path = tempParams.metaParams.logs_s3_path;
formState.provenance_s3_path = tempParams.metaParams.provenance_s3_path;
formState.debug_s3_path = tempParams.metaParams.debug_s3_path;
formState.metaParameters = tempParams.metaParams;
if (Object.keys(tempParams?.params ?? {}).length > 0) {
parameterLoadToast?.show();
}
......@@ -285,8 +272,7 @@ onMounted(() => {
>
<template v-for="(group, groupName) in parameterGroups" :key="groupName">
<parameter-group-form
:modelValue="formState.formInput"
@update:model-value="(newValue) => (formState.formInput = newValue)"
v-model="formState.formInput"
v-if="formState.formInput"
:parameter-group-name="groupName"
:parameter-group="group"
......@@ -319,7 +305,7 @@ onMounted(() => {
<textarea
class="form-control border border-secondary"
rows="2"
v-model="formState.pipelineNotes"
v-model="formState.metaParameters.notes"
/>
</div>
<label class="mb-3" for="pipelineNotes"
......@@ -337,7 +323,7 @@ onMounted(() => {
</span>
<parameter-string-input
parameter-name="logs_s3_path"
v-model="formState.logs_s3_path"
v-model="formState.metaParameters.logs_s3_path"
:parameter="{
format: 'directory-path',
type: 'string',
......@@ -360,7 +346,7 @@ onMounted(() => {
</span>
<parameter-string-input
parameter-name="provenance_s3_path"
v-model="formState.provenance_s3_path"
v-model="formState.metaParameters.provenance_s3_path"
:parameter="{
format: 'directory-path',
type: 'string',
......@@ -384,7 +370,7 @@ onMounted(() => {
</span>
<parameter-string-input
parameter-name="debug_s3_path"
v-model="formState.debug_s3_path"
v-model="formState.metaParameters.debug_s3_path"
:parameter="{
format: 'directory-path',
type: 'string',
......
......@@ -101,32 +101,42 @@ function parameterRequired(
>
<font-awesome-icon :icon="parameter['fa_icon']" />
</span>
<parameter-number-input
<template
v-if="
parameter['type'] === 'number' ||
parameter['type'] === 'integer'
"
:parameter-name="parameterName"
:parameter="parameter"
:help-id="parameterName + '-help'"
:required="parameterRequired(parameterGroup, parameterName)"
v-model="model[parameterName]"
/>
<parameter-boolean-input
v-else-if="parameter['type'] === 'boolean'"
:parameter-name="parameterName"
:parameter="parameter"
:help-id="parameterName + '-help'"
v-model="model[parameterName]"
/>
<template v-else-if="parameter['type'] === 'string'">
<parameter-enum-input
v-if="parameter['enum']"
>
<!-- @vue-ignore -->
<parameter-number-input
:parameter-name="parameterName"
:parameter="parameter"
:help-id="parameterName + '-help'"
:required="parameterRequired(parameterGroup, parameterName)"
v-model="model[parameterName]"
/>
</template>
<template v-else-if="parameter['type'] === 'boolean'">
<!-- @vue-ignore -->
<parameter-boolean-input
:parameter-name="parameterName"
:parameter="parameter"
:help-id="parameterName + '-help'"
v-model="model[parameterName]"
/>
</template>
<template v-else-if="parameter['type'] === 'string'">
<!-- @vue-ignore -->
<template v-if="parameter['enum']">
<!-- @vue-ignore -->
<parameter-enum-input
:parameter-name="parameterName"
:parameter="parameter"
:required="parameterRequired(parameterGroup, parameterName)"
v-model="model[parameterName]"
/>
</template>
<!-- @vue-ignore -->
<parameter-string-input
v-else
:parameter-name="parameterName"
......
......@@ -11,7 +11,10 @@ import type { WorkflowIn } from "@/client/workflow";
import { useWorkflowExecutionStore } from "@/stores/workflowExecutions";
import ParameterSchemaFormComponent from "@/components/parameter-schema/ParameterSchemaFormComponent.vue";
import BootstrapToast from "@/components/BootstrapToast.vue";
import type { WorkflowParameters } from "@/types/WorkflowParameters";
import type {
WorkflowMetaParameters,
WorkflowParameters,
} from "@/types/WorkflowParameters";
const props = defineProps<{
wid: string;
......@@ -94,10 +97,7 @@ watch(
function startWorkflow(
parameters: WorkflowParameters,
notes?: string,
logs_s3_path?: string,
debug_s3_path?: string,
provenance_s3_path?: string,
metaParameters: WorkflowMetaParameters,
) {
if (workflowState.workflow) {
errorToast?.hide();
......@@ -106,9 +106,9 @@ function startWorkflow(
.startDevExecution({
git_commit_hash: workflowState.workflow.git_commit_hash,
parameters: parameters,
logs_s3_path: logs_s3_path ? logs_s3_path : undefined,
debug_s3_path: debug_s3_path ? debug_s3_path : undefined,
provenance_s3_path: provenance_s3_path ? provenance_s3_path : undefined,
logs_s3_path: metaParameters.logs_s3_path,
debug_s3_path: metaParameters.debug_s3_path,
provenance_s3_path: metaParameters.provenance_s3_path,
repository_url: workflowState.workflow.repository_url,
token: workflowState.workflow.token ?? undefined,
mode:
......
......@@ -8,7 +8,10 @@ import { Toast } from "bootstrap";
import { useWorkflowExecutionStore } from "@/stores/workflowExecutions";
import BootstrapToast from "@/components/BootstrapToast.vue";
import { useWorkflowStore } from "@/stores/workflows";
import type { WorkflowParameters } from "@/types/WorkflowParameters";
import type {
WorkflowMetaParameters,
WorkflowParameters,
} from "@/types/WorkflowParameters";
const executionRepository = useWorkflowExecutionStore();
const workflowRepository = useWorkflowStore();
......@@ -69,10 +72,7 @@ function downloadParameterSchema() {
function startWorkflow(
parameters: WorkflowParameters,
notes?: string,
logs_s3_path?: string,
debug_s3_path?: string,
provenance_s3_path?: string,
metaParameters: WorkflowMetaParameters,
) {
if (props.versionId) {
versionState.workflowExecutionError = undefined;
......@@ -81,12 +81,10 @@ function startWorkflow(
.startExecution({
workflow_version_id: props.versionId,
parameters: parameters,
notes: notes,
logs_s3_path: logs_s3_path?.length ?? 0 > 0 ? logs_s3_path : undefined,
debug_s3_path:
debug_s3_path?.length ?? 0 > 0 ? debug_s3_path : undefined,
provenance_s3_path:
provenance_s3_path?.length ?? 0 > 0 ? provenance_s3_path : undefined,
notes: metaParameters.notes,
logs_s3_path: metaParameters.logs_s3_path,
debug_s3_path: metaParameters.debug_s3_path,
provenance_s3_path: metaParameters.provenance_s3_path,
mode_id: props.workflowModeId,
})
.then(() => {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment