Verified Commit f96c6164 authored by Marek Veselý's avatar Marek Veselý
Browse files

remove exerciseLoopRunning

parent eecc398f
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -8,7 +8,7 @@ import type {
  TCustomInjectDetails,
  TInjectDetails,
} from '@inject/graphql'
import { Confirm, useBlockableMutation } from '@inject/graphql'
import { Confirm, useExerciseStatus, useTypedMutation } from '@inject/graphql'
import { useTranslationFrontend } from '@inject/locale'
import { Done, useFormatTimestamp } from '@inject/shared'
import type { NavigateOptions } from '@tanstack/react-router'
@@ -48,10 +48,8 @@ const InjectContent: FC<InjectContentProps> = ({
  onClose,
}) => {
  const { t } = useTranslationFrontend()
  const [running, { fetching: loading }, confirm] = useBlockableMutation(
    Confirm,
    teamId
  )
  const running = useExerciseStatus({ exerciseId, teamId }) === 'RUNNING'
  const [{ fetching: loading }, confirm] = useTypedMutation(Confirm)

  const confirmation = 'confirmation' in details ? details.confirmation : null
  const confirmationActionLog = actionLog.nextLogs.find(
+2 −2
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@ import type {
} from '@inject/graphql'
import {
  AnswerQuestionnaire,
  useLoopStatus,
  useExerciseStatus,
  useTypedMutation,
} from '@inject/graphql'
import { useTranslationFrontend } from '@inject/locale'
@@ -160,7 +160,7 @@ const TraineeQuestionnaireContent: FC<TraineeQuestionnaireContentProps> = ({

  const postExerciseSubmission = teamState.questionnaire.postExerciseSubmission

  const { running } = useLoopStatus({ teamId })
  const running = useExerciseStatus({ teamId, exerciseId }) === 'RUNNING'
  const [submitError, setSubmitError] = useState('')
  const { beginWiggling, wiggling } = useWiggle()
  const [submittedCount, setSubmittedCount] = useState(0)
+9 −5
Original line number Diff line number Diff line
import { Button, Callout, FormGroup, InputGroup } from '@blueprintjs/core'
import { css, cx } from '@emotion/css'
import type { Tool } from '@inject/graphql'
import { PerformTeamToolAction, useBlockableMutation } from '@inject/graphql'
import {
  PerformTeamToolAction,
  useExerciseStatus,
  useTypedMutation,
} from '@inject/graphql'
import { useTranslationFrontend } from '@inject/locale'
import { breakWord, useWiggle, wiggleClass } from '@inject/shared'
import type { FC, FormEvent, KeyboardEventHandler } from 'react'
@@ -20,6 +24,7 @@ const submit = css`
interface ToolFormProps {
  tool: Tool
  teamId: string
  exerciseId: string
  setOpen(arg0: boolean): void
  disabled?: boolean
  disabledTitle?: string
@@ -30,6 +35,7 @@ interface ToolFormProps {
const ToolForm: FC<ToolFormProps> = ({
  tool,
  teamId,
  exerciseId,
  setOpen,
  disabled,
  disabledTitle,
@@ -39,10 +45,8 @@ const ToolForm: FC<ToolFormProps> = ({
  const { tooltipDescription, id, requiresInput } = tool
  const [value, setValue] = useState<string>('')
  const [isError, setIsError] = useState(false)
  const [running, { fetching }, mutate] = useBlockableMutation(
    PerformTeamToolAction,
    teamId
  )
  const running = useExerciseStatus({ exerciseId, teamId }) === 'RUNNING'
  const [{ fetching }, mutate] = useTypedMutation(PerformTeamToolAction)

  const { beginWiggling, wiggling } = useWiggle()

+3 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ import ToolForm from './ToolForm'
interface ToolActionProps {
  tool: Tool
  teamId: string
  exerciseId: string
  disabled?: boolean
  disabledTitle?: string
}
@@ -14,6 +15,7 @@ interface ToolActionProps {
const ToolAction: FC<ToolActionProps> = ({
  tool,
  teamId,
  exerciseId,
  disabled,
  disabledTitle,
}) => {
@@ -35,6 +37,7 @@ const ToolAction: FC<ToolActionProps> = ({
        <ToolForm
          tool={tool}
          teamId={teamId}
          exerciseId={exerciseId}
          setOpen={setOpen}
          disabled={disabled}
          disabledTitle={disabledTitle}
+1 −8
Original line number Diff line number Diff line
import type { Intent } from '@blueprintjs/core'
import { Spinner, Tooltip } from '@blueprintjs/core'
import { useLoopStatus } from '@inject/graphql'
import type { FC } from 'react'

// TODO: consolidate

interface HealthCheckProps {
  teamId?: string
}

const HealthCheck: FC<HealthCheckProps> = ({ teamId }) => {
const HealthCheck = () => {
  /*
   * This is a dummy element which is used for propagating load states from `@inject/graphql` package, it's necessary that this element is mounted in needed places and that it's a singleton. It's not useless :)
   */
  useLoopStatus({ teamId })

  let backendStatus: string | undefined = undefined
  if (typeof window !== 'undefined') {
Loading