function validate()

in webview-ui/src/Draft/DraftWorkflow/DraftWorkflow.tsx [302:333]


    function validate(): Maybe<CreateParams> {
        if (!isValid(state.selectedWorkflowName)) return nothing();
        if (!isValid(state.selectedBranchName)) return nothing();
        if (!isValid(state.selectedSubscription)) return nothing();
        if (!isValid(state.selectedDockerfilePath)) return nothing();
        if (!isValid(state.selectedAcrResourceGroup)) return nothing();
        if (!isValid(state.selectedAcr)) return nothing();
        if (!isValid(state.selectedRepositoryName)) return nothing();
        if (!isValid(state.selectedClusterResourceGroup)) return nothing();
        if (!isValid(state.selectedCluster)) return nothing();
        if (!isValid(state.selectedClusterNamespace)) return nothing();

        const deploymentParams = validateDeploymentParams();
        if (isNothing(deploymentParams)) return nothing();

        const result: CreateParams = {
            workflowName: state.selectedWorkflowName.value,
            branchName: state.selectedBranchName.value,
            subscriptionId: state.selectedSubscription.value.id,
            dockerfilePath: state.selectedDockerfilePath.value,
            buildContextPath: state.selectedBuildContextPath,
            acrResourceGroup: state.selectedAcrResourceGroup.value,
            acrName: state.selectedAcr.value,
            repositoryName: state.selectedRepositoryName.value.value,
            clusterResourceGroup: state.selectedClusterResourceGroup.value,
            clusterName: state.selectedCluster.value,
            namespace: state.selectedClusterNamespace.value.value,
            deploymentParams: deploymentParams.value,
        };

        return just(result);
    }