From 9c6572859a5a05c84172ad883c70f8c7bd60a32f Mon Sep 17 00:00:00 2001
From: Julius Schlapbach <80708107+sjschlapbach@users.noreply.github.com>
Date: Tue, 28 Jan 2025 15:18:02 +0100
Subject: [PATCH] enhance: add manipulation functionality (creation and
editing) for case-study elements (#4481)
---
.../manipulation/ElementEditModal.tsx | 32 +
.../questions/manipulation/helpers.ts | 63 +
.../questions/manipulation/types.ts | 31 +-
.../useElementFormInitialValues.ts | 54 +-
.../cypress/e2e/K-resources-workflow.cy.ts | 12 -
.../src/graphql/ops/MDeleteQuestion.graphql | 3 +
.../ops/MManipulateCaseStudyQuestion.graphql | 65 +
.../graphql/ops/QGetSingleQuestion.graphql | 47 +
.../src/graphql/ops/QGetUserQuestions.graphql | 27 +
.../lib/validateAndProcessElementOptions.ts | 71 +-
.../src/lib/validateCaseStudyOptions.ts | 135 ++
packages/graphql/src/ops.schema.json | 1434 +++++++++++++++--
packages/graphql/src/ops.ts | 227 ++-
packages/graphql/src/public/client.json | 7 +-
packages/graphql/src/public/schema.graphql | 115 +-
packages/graphql/src/public/server.json | 7 +-
packages/graphql/src/schema/elementData.ts | 101 +-
packages/graphql/src/schema/mutation.ts | 24 +
packages/graphql/src/schema/question.ts | 78 +
packages/graphql/src/services/groups.ts | 2 +-
packages/graphql/src/services/liveQuizzes.ts | 2 +-
.../graphql/src/services/microLearning.ts | 2 +-
.../graphql/src/services/practiceQuizzes.ts | 2 +-
packages/graphql/src/services/questions.ts | 79 +-
packages/graphql/src/services/resources.ts | 6 +-
packages/graphql/src/services/stacks.ts | 4 +-
packages/prisma/src/data/data/TEST.ts | 2 +-
packages/prisma/src/data/helpers.ts | 2 +-
packages/prisma/src/data/seedTEST.ts | 8 +-
.../migration.sql | 2 -
.../migration.sql | 34 +
.../prisma/src/prisma/schema/element.prisma | 6 +-
.../prisma/src/prisma/schema/resources.prisma | 2 +-
packages/types/src/index.ts | 18 +-
packages/util/src/index.ts | 6 +-
35 files changed, 2372 insertions(+), 338 deletions(-)
create mode 100644 packages/graphql/src/graphql/ops/MManipulateCaseStudyQuestion.graphql
create mode 100644 packages/graphql/src/lib/validateCaseStudyOptions.ts
delete mode 100644 packages/prisma/src/prisma/migrations/20250123200426_case_study_element_type/migration.sql
create mode 100644 packages/prisma/src/prisma/migrations/20250128121845_case_study_element_type/migration.sql
diff --git a/apps/frontend-manage/src/components/questions/manipulation/ElementEditModal.tsx b/apps/frontend-manage/src/components/questions/manipulation/ElementEditModal.tsx
index def1832eb6..2711820903 100644
--- a/apps/frontend-manage/src/components/questions/manipulation/ElementEditModal.tsx
+++ b/apps/frontend-manage/src/components/questions/manipulation/ElementEditModal.tsx
@@ -5,6 +5,7 @@ import {
GetSingleQuestionDocument,
GetUserQuestionsDocument,
GetUserTagsDocument,
+ ManipulateCaseStudyQuestionDocument,
ManipulateChoicesQuestionDocument,
ManipulateContentElementDocument,
ManipulateFlashcardElementDocument,
@@ -29,6 +30,7 @@ import ElementTypeMonitor from './ElementTypeMonitor'
import InstanceUpdateSwitch from './InstanceUpdateSwitch'
import StudentElementPreview from './StudentElementPreview'
import {
+ prepareCaseStudyArgs,
prepareChoicesArgs,
prepareContentArgs,
prepareFlashcardArgs,
@@ -119,6 +121,9 @@ function ElementEditModal({
const [manipulateSelectionQuestion] = useMutation(
ManipulateSelectionQuestionDocument
)
+ const [manipulateCaseStudyQuestion] = useMutation(
+ ManipulateCaseStudyQuestionDocument
+ )
const [updateElementInstances] = useMutation(UpdateElementInstancesDocument)
const initialValues = useElementFormInitialValues({
@@ -224,6 +229,7 @@ function ElementEditModal({
break
}
+
case ElementType.Numerical: {
const args = prepareNumericalArgs({
elementId,
@@ -247,6 +253,7 @@ function ElementEditModal({
break
}
+
case ElementType.FreeText: {
const args = prepareFreeTextArgs({
elementId,
@@ -270,6 +277,7 @@ function ElementEditModal({
break
}
+
case ElementType.Selection: {
const args = prepareSelectionArgs({
elementId,
@@ -294,6 +302,30 @@ function ElementEditModal({
break
}
+ case ElementType.CaseStudy: {
+ const args = prepareCaseStudyArgs({
+ elementId,
+ isDuplication,
+ values,
+ })
+
+ const result = await manipulateCaseStudyQuestion({
+ variables: args,
+ refetchQueries: [
+ { query: GetUserQuestionsDocument },
+ { query: GetUserTagsDocument },
+ ],
+ })
+
+ const data = result.data?.manipulateCaseStudyQuestion
+ if (data?.__typename !== 'CaseStudyElement' || !data.id) {
+ setFailureToast(true)
+ return
+ }
+
+ break
+ }
+
default:
break
}
diff --git a/apps/frontend-manage/src/components/questions/manipulation/helpers.ts b/apps/frontend-manage/src/components/questions/manipulation/helpers.ts
index 438cb4294c..d234e7349c 100644
--- a/apps/frontend-manage/src/components/questions/manipulation/helpers.ts
+++ b/apps/frontend-manage/src/components/questions/manipulation/helpers.ts
@@ -1,4 +1,5 @@
import {
+ ElementFormTypesCaseStudy,
ElementFormTypesChoices,
ElementFormTypesContent,
ElementFormTypesFlashcard,
@@ -85,6 +86,7 @@ export function prepareChoicesArgs({
}
}),
},
+
tags: values.tags,
}
}
@@ -153,6 +155,7 @@ export function prepareNumericalArgs({
})
: undefined,
},
+
tags: values.tags,
}
}
@@ -191,6 +194,7 @@ export function prepareFreeTextArgs({
},
solutions: values.options.solutions,
},
+
tags: values.tags,
}
}
@@ -222,6 +226,65 @@ export function prepareSelectionArgs({
numberOfInputs: parseInt(values.options.numberOfInputs),
correctAnswers: values.options.correctAnswers,
},
+
+ tags: values.tags,
+ }
+}
+
+interface PrepareCaseStudyArgsProps {
+ elementId?: number
+ isDuplication: boolean
+ values: ElementFormTypesCaseStudy
+}
+export function prepareCaseStudyArgs({
+ elementId,
+ isDuplication,
+ values,
+}: PrepareCaseStudyArgsProps) {
+ return {
+ id: isDuplication ? undefined : elementId,
+ name: values.name,
+ status: values.status,
+ content: values.content,
+ explanation:
+ !values.explanation?.match(/^(
(\n)*)$/g) && values.explanation !== ''
+ ? values.explanation
+ : null,
+ pointsMultiplier: parseInt(values.pointsMultiplier),
+
+ options: {
+ hasSampleSolution: values.options.hasSampleSolution,
+ answerCollection: parseInt(values.options.answerCollection),
+ collectionItemIds: values.options.selectedItems,
+
+ criteria: values.options.criteria.map((criterion, index) => ({
+ id: criterion.id,
+ name: criterion.name,
+ order: index,
+ min: parseFloat(criterion.min),
+ max: parseFloat(criterion.max),
+ step: parseFloat(criterion.step),
+ unit:
+ criterion.unit && criterion.unit !== '' ? criterion.unit : undefined,
+ })),
+
+ cases: values.options.cases.map((c, index) => ({
+ title: c.title,
+ description: c.description,
+ order: index,
+ solutions: Object.entries(c.solutions ?? {}).map(([key, value]) => ({
+ itemId: parseInt(key.split('-')[1]),
+ criteriaSolutions: Object.entries(value).map(
+ ([criterionId, criterionValue]) => ({
+ criterionId,
+ min: parseFloat(criterionValue.min),
+ max: parseFloat(criterionValue.max),
+ })
+ ),
+ })),
+ })),
+ },
+
tags: values.tags,
}
}
diff --git a/apps/frontend-manage/src/components/questions/manipulation/types.ts b/apps/frontend-manage/src/components/questions/manipulation/types.ts
index 3a74070d49..a07cb9f357 100644
--- a/apps/frontend-manage/src/components/questions/manipulation/types.ts
+++ b/apps/frontend-manage/src/components/questions/manipulation/types.ts
@@ -75,6 +75,25 @@ export interface ElementFormTypesSelection extends SharedQuestionFormProps {
}
}
+// key of top level record is `itemId-${item.id}`, key of nested record is criterion id
+export type ElementFormTypesCaseStudySolution = Record<
+ string,
+ { min: string; max: string }
+>
+export type ElementFormTypesCaseStudySolutions = Record<
+ string,
+ ElementFormTypesCaseStudySolution
+>
+
+export type ElementFormTypesCaseStudyCriterion = {
+ id: string // short id
+ name: string
+ min: string
+ max: string
+ step: string
+ unit?: string | null
+}
+
export interface ElementFormTypesCaseStudy extends SharedQuestionFormProps {
type: ElementType.CaseStudy
explanation?: string | null
@@ -85,17 +104,9 @@ export interface ElementFormTypesCaseStudy extends SharedQuestionFormProps {
cases: {
title: string
description: string
- // key of top level record is `itemId-${item.id}`, key of nested record is criterion id
- solutions?: Record>
- }[]
- criteria: {
- id: string // short id
- name: string
- min: string
- max: string
- step: string
- unit?: string | null
+ solutions?: ElementFormTypesCaseStudySolutions
}[]
+ criteria: ElementFormTypesCaseStudyCriterion[]
}
}
diff --git a/apps/frontend-manage/src/components/questions/manipulation/useElementFormInitialValues.ts b/apps/frontend-manage/src/components/questions/manipulation/useElementFormInitialValues.ts
index 02e9ec3bca..3f1743431b 100644
--- a/apps/frontend-manage/src/components/questions/manipulation/useElementFormInitialValues.ts
+++ b/apps/frontend-manage/src/components/questions/manipulation/useElementFormInitialValues.ts
@@ -8,7 +8,11 @@ import { nanoid } from 'nanoid'
import { useMemo } from 'react'
import { sort } from 'remeda'
import { ElementEditMode } from './ElementEditModal'
-import { ElementFormTypes } from './types'
+import {
+ ElementFormTypes,
+ ElementFormTypesCaseStudySolution,
+ ElementFormTypesCaseStudySolutions,
+} from './types'
interface UseElementFormInitialValuesProps {
mode: ElementEditMode
@@ -139,6 +143,54 @@ function useElementFormInitialValues({
correctAnswers: options.answerCollectionSolutionIds ?? undefined,
},
}
+ } else if (question.__typename === 'CaseStudyElement') {
+ const options = question.options
+
+ return {
+ ...sharedAttributes,
+ type: ElementType.CaseStudy,
+ options: {
+ hasSampleSolution: options.hasSampleSolution ?? false,
+ answerCollection: options.answerCollection
+ ? String(options.answerCollection.id)
+ : '',
+ selectedItems: options.collectionItemIds ?? [],
+ criteria:
+ options.criteria?.map((criterion) => ({
+ ...criterion,
+ min: String(criterion.min),
+ max: String(criterion.max),
+ step: String(criterion.step),
+ })) ?? [],
+ cases:
+ options.cases?.map((caseItem) => ({
+ title: caseItem.title,
+ description: caseItem.description,
+ solutions: options.hasSampleSolution
+ ? caseItem.solutions!.reduce(
+ (acc, solution) => {
+ const criteriaSolutions =
+ solution.criteriaSolutions.reduce(
+ (acc, sol) => {
+ acc[sol.criterionId] = {
+ min: String(sol.min),
+ max: String(sol.max),
+ }
+
+ return acc
+ },
+ {}
+ )
+
+ acc[`itemId-${solution.itemId}`] = criteriaSolutions
+ return acc
+ },
+ {}
+ )
+ : undefined,
+ })) ?? [],
+ },
+ }
} else if (question.__typename === 'FlashcardElement') {
return {
...sharedAttributes,
diff --git a/cypress/cypress/e2e/K-resources-workflow.cy.ts b/cypress/cypress/e2e/K-resources-workflow.cy.ts
index d14ebeba1b..3f4dce411c 100644
--- a/cypress/cypress/e2e/K-resources-workflow.cy.ts
+++ b/cypress/cypress/e2e/K-resources-workflow.cy.ts
@@ -373,9 +373,6 @@ describe('Create, edit and share answer collections', function () {
).click()
cy.get('[data-cy="select-answer-collection"]').should('not.exist')
- cy.findByText(
- 'To create selection questions, you need access to at least one answer collection! You can either create one yourself under the "Resources" tab or import an existing collection from other users there.'
- )
})
it("Verify that the private answer collection cannot be removed by user 'pro1' as it is used in a question", function () {
@@ -548,9 +545,6 @@ describe('Create, edit and share answer collections', function () {
`[data-cy="select-question-type-${messages.shared.SELECTION.typeLabel}"]`
).click()
cy.get('[data-cy="select-answer-collection"]').should('not.exist')
- cy.findByText(
- 'To create selection questions, you need access to at least one answer collection! You can either create one yourself under the "Resources" tab or import an existing collection from other users there.'
- )
})
it('Grant access to restricted answer collection (for user pro1)', function () {
@@ -613,9 +607,6 @@ describe('Create, edit and share answer collections', function () {
`[data-cy="select-question-type-${messages.shared.SELECTION.typeLabel}"]`
).click()
cy.get('[data-cy="select-answer-collection"]').should('not.exist')
- cy.findByText(
- 'To create selection questions, you need access to at least one answer collection! You can either create one yourself under the "Resources" tab or import an existing collection from other users there.'
- )
})
it('Verify that restricted answer collection can be used in selection question by user pro1 and create question', function () {
@@ -866,9 +857,6 @@ describe('Create, edit and share answer collections', function () {
`[data-cy="select-question-type-${messages.shared.SELECTION.typeLabel}"]`
).click()
cy.get('[data-cy="select-answer-collection"]').should('not.exist')
- cy.findByText(
- 'To create selection questions, you need access to at least one answer collection! You can either create one yourself under the "Resources" tab or import an existing collection from other users there.'
- )
})
it('Import (and copy) the public answer collection (for user pro2)', function () {
diff --git a/packages/graphql/src/graphql/ops/MDeleteQuestion.graphql b/packages/graphql/src/graphql/ops/MDeleteQuestion.graphql
index c9fab828da..617c97c412 100644
--- a/packages/graphql/src/graphql/ops/MDeleteQuestion.graphql
+++ b/packages/graphql/src/graphql/ops/MDeleteQuestion.graphql
@@ -12,6 +12,9 @@ mutation DeleteQuestion($id: Int!) {
... on SelectionElement {
id
}
+ ... on CaseStudyElement {
+ id
+ }
... on FlashcardElement {
id
}
diff --git a/packages/graphql/src/graphql/ops/MManipulateCaseStudyQuestion.graphql b/packages/graphql/src/graphql/ops/MManipulateCaseStudyQuestion.graphql
new file mode 100644
index 0000000000..b9c41981b8
--- /dev/null
+++ b/packages/graphql/src/graphql/ops/MManipulateCaseStudyQuestion.graphql
@@ -0,0 +1,65 @@
+mutation ManipulateCaseStudyQuestion(
+ $id: Int
+ $status: ElementStatus
+ $name: String
+ $content: String
+ $explanation: String
+ $options: OptionsCaseStudyInput
+ $pointsMultiplier: Int
+ $tags: [String!]
+) {
+ manipulateCaseStudyQuestion(
+ id: $id
+ status: $status
+ name: $name
+ content: $content
+ explanation: $explanation
+ options: $options
+ pointsMultiplier: $pointsMultiplier
+ tags: $tags
+ ) {
+ __typename
+ ... on CaseStudyElement {
+ id
+ name
+ status
+ type
+ content
+ explanation
+ pointsMultiplier
+ options {
+ hasSampleSolution
+ answerCollection {
+ id
+ }
+ collectionItemIds
+ criteria {
+ id
+ name
+ order
+ min
+ max
+ step
+ unit
+ }
+ cases {
+ title
+ description
+ order
+ solutions {
+ itemId
+ criteriaSolutions {
+ criterionId
+ min
+ max
+ }
+ }
+ }
+ }
+ tags {
+ id
+ name
+ }
+ }
+ }
+}
diff --git a/packages/graphql/src/graphql/ops/QGetSingleQuestion.graphql b/packages/graphql/src/graphql/ops/QGetSingleQuestion.graphql
index 8543c9fbdd..caa860f81c 100644
--- a/packages/graphql/src/graphql/ops/QGetSingleQuestion.graphql
+++ b/packages/graphql/src/graphql/ops/QGetSingleQuestion.graphql
@@ -116,6 +116,53 @@ query GetSingleQuestion($id: Int!) {
}
}
+ ... on CaseStudyElement {
+ id
+ version
+ name
+ status
+ type
+ content
+ explanation
+ pointsMultiplier
+
+ options {
+ hasSampleSolution
+ answerCollection {
+ id
+ }
+ collectionItemIds
+ criteria {
+ id
+ name
+ order
+ min
+ max
+ step
+ unit
+ }
+ cases {
+ title
+ description
+ order
+ solutions {
+ itemId
+ criteriaSolutions {
+ criterionId
+ min
+ max
+ }
+ }
+ }
+ }
+
+ tags {
+ id
+ name
+ order
+ }
+ }
+
... on FlashcardElement {
id
version
diff --git a/packages/graphql/src/graphql/ops/QGetUserQuestions.graphql b/packages/graphql/src/graphql/ops/QGetUserQuestions.graphql
index fb16a22936..d9f47842bc 100644
--- a/packages/graphql/src/graphql/ops/QGetUserQuestions.graphql
+++ b/packages/graphql/src/graphql/ops/QGetUserQuestions.graphql
@@ -140,6 +140,33 @@ query GetUserQuestions {
}
}
+ ... on CaseStudyElement {
+ id
+ name
+ status
+ type
+ content
+
+ pointsMultiplier
+ version
+
+ isArchived
+ isDeleted
+ createdAt
+ updatedAt
+
+ options {
+ __typename
+ hasSampleSolution
+ }
+
+ tags {
+ id
+ name
+ order
+ }
+ }
+
... on FlashcardElement {
id
name
diff --git a/packages/graphql/src/lib/validateAndProcessElementOptions.ts b/packages/graphql/src/lib/validateAndProcessElementOptions.ts
index 10d6126688..8d59b0d6a2 100644
--- a/packages/graphql/src/lib/validateAndProcessElementOptions.ts
+++ b/packages/graphql/src/lib/validateAndProcessElementOptions.ts
@@ -1,5 +1,13 @@
import * as DB from '@klicker-uzh/prisma'
import { DisplayMode } from '@klicker-uzh/types'
+import {
+ OptionsCaseStudyInput,
+ OptionsChoicesInput,
+ OptionsFreeTextInput,
+ OptionsNumericalInput,
+ OptionsSelectionInput,
+} from 'src/ops.js'
+import validateCaseStudyOptions from './validateCaseStudyOptions.js'
import validateFreeTextOptions from './validateFreeTextOptions.js'
import validateKPRIMOptions from './validateKPRIMOptions.js'
import validateMCOptions from './validateMCOptions.js'
@@ -7,36 +15,14 @@ import validateNumericalOptions from './validateNumericalOptions.js'
import validateSCOptions from './validateSCOptions.js'
import validateSelectionOptions from './validateSelectionOptions.js'
-export interface ElementOptionsArgs {
- unit?: string | null // NR only
- accuracy?: number | null // NR only
- placeholder?: string | null // NR/FT only
- restrictions?: {
- maxLength?: number | null // FT only
- minLength?: number | null // unused
- pattern?: string | null // unused
- min?: number | null // NR only
- max?: number | null // NR only
- } | null
- feedback?: string | null // unused
- solutionRanges?: { min?: number | null; max?: number | null }[] | null // NR only
- exactSolutions?: number[] | null // NR only
- solutions?: string[] | null // FT only
- choices?: // SC, MC, KPRIM only
- | {
- ix: number
- value: string
- correct?: boolean | null
- feedback?: string | null
- }[]
- | null
- displayMode?: DisplayMode | null // SC, MC, KPRIM only
- numberOfInputs?: number | null // SE only
- answerCollection?: number | null // SE only
- correctAnswers?: number[] | null // SE only
- hasSampleSolution?: boolean | null // Questions only
- hasAnswerFeedbacks?: boolean | null // SC, MC, KPRIM only
-}
+// display mode type workaround required for typescript to accept corresponding inputs
+export type ElementOptionsArgs = (Omit & {
+ displayMode?: DisplayMode | null
+}) &
+ OptionsNumericalInput &
+ OptionsFreeTextInput &
+ OptionsSelectionInput &
+ OptionsCaseStudyInput
function validateAndProcessElementOptions(
elementType: DB.ElementType,
@@ -124,6 +110,31 @@ function validateAndProcessElementOptions(
}
}
+ case DB.ElementType.CASE_STUDY: {
+ // if options are not valid, abort processing
+ const valid = validateCaseStudyOptions(options)
+ if (!valid || !options) return null
+
+ return {
+ hasSampleSolution: options.hasSampleSolution,
+ criteria: options.criteria!.map((criterion) => ({
+ id: criterion.id,
+ name: criterion.name,
+ order: criterion.order,
+ min: criterion.min,
+ max: criterion.max,
+ step: criterion.step,
+ unit: criterion.unit ?? undefined,
+ })),
+ cases: options.cases!.map((caseItem) => ({
+ title: caseItem.title,
+ description: caseItem.description,
+ order: caseItem.order,
+ solutions: options.hasSampleSolution ? caseItem.solutions : undefined,
+ })),
+ }
+ }
+
default: {
return {}
}
diff --git a/packages/graphql/src/lib/validateCaseStudyOptions.ts b/packages/graphql/src/lib/validateCaseStudyOptions.ts
new file mode 100644
index 0000000000..094f1120e3
--- /dev/null
+++ b/packages/graphql/src/lib/validateCaseStudyOptions.ts
@@ -0,0 +1,135 @@
+import { ElementOptionsArgs } from './validateAndProcessElementOptions.js'
+
+function validateCaseStudyOptions(options?: ElementOptionsArgs | null) {
+ // options and hasSampleSolution need to be defined
+ if (
+ !options ||
+ typeof options.hasSampleSolution !== 'boolean' ||
+ options.hasSampleSolution === null
+ ) {
+ console.error(
+ 'Options and sample solution flag are required for case study questions'
+ )
+ return false
+ }
+
+ // answer collection needs to be defined for case study questions
+ if (
+ typeof options.answerCollection !== 'number' ||
+ options.answerCollection === null
+ ) {
+ console.error(
+ 'Answer collection needs to be specified for case study questions'
+ )
+ return false
+ }
+
+ // items for case study need to be defined
+ if (!options.collectionItemIds || options.collectionItemIds.length === 0) {
+ console.error('Items for case study need to be defined')
+ return false
+ }
+
+ // criteria need to be defined with all requried fields
+ if (!options.criteria || options.criteria.length === 0) {
+ console.error('Criteria for case study need to be defined')
+ return false
+ }
+
+ for (const criterion of options.criteria) {
+ if (
+ typeof criterion.id !== 'string' ||
+ criterion.id === '' ||
+ criterion.id === null ||
+ typeof criterion.name !== 'string' ||
+ criterion.name === '' ||
+ criterion.name === null ||
+ typeof criterion.order !== 'number' ||
+ criterion.order === null ||
+ typeof criterion.min !== 'number' ||
+ criterion.min === null ||
+ typeof criterion.max !== 'number' ||
+ criterion.max === null ||
+ typeof criterion.step !== 'number' ||
+ criterion.step === null
+ ) {
+ console.error('Criteria need to have a id, title, min, max and step size')
+ return false
+ }
+ }
+
+ // cases need to be defined with all required fields
+ if (!options.cases || options.cases.length === 0) {
+ console.error('Cases for case study need to be defined')
+ return false
+ }
+
+ for (const caseItem of options.cases) {
+ if (
+ typeof caseItem.title !== 'string' ||
+ caseItem.title === '' ||
+ caseItem.title === null ||
+ typeof caseItem.description !== 'string' ||
+ caseItem.description === '' ||
+ caseItem.description === null ||
+ typeof caseItem.order !== 'number' ||
+ caseItem.order === null
+ ) {
+ console.error('Cases need to have a title and description')
+ return false
+ }
+ }
+
+ if (options.hasSampleSolution) {
+ for (const caseItem of options.cases) {
+ const items = options.collectionItemIds
+ const criteria = options.criteria
+ const criterionIds = criteria.map((criterion) => criterion.id)
+
+ if (
+ !caseItem.solutions ||
+ Object.keys(caseItem.solutions).length !== items.length ||
+ Object.values(caseItem.solutions).some(
+ (solutions) => Object.keys(solutions).length !== criteria.length
+ )
+ ) {
+ console.error(
+ 'All items and criteria need to have well-defined solutions'
+ )
+ return false
+ }
+
+ // solutions need to have a min and max value
+ for (const solution of caseItem.solutions) {
+ // itemId in solution needs to be valid
+ if (!items.includes(solution.itemId)) {
+ console.error('Item id in solution is not valid')
+ return false
+ }
+
+ // check if the solutions are defined for valid criteria only and the values are valid
+ for (const criterionSolution of solution.criteriaSolutions) {
+ if (!criterionIds.includes(criterionSolution.criterionId)) {
+ console.error('Criterion id in solution is not valid')
+ return false
+ }
+
+ if (
+ typeof criterionSolution.min !== 'number' ||
+ criterionSolution.min === null ||
+ typeof criterionSolution.max !== 'number' ||
+ criterionSolution.max === null ||
+ criterionSolution.min > criterionSolution.max
+ ) {
+ console.error('Solution needs to have a min and max value')
+ return false
+ }
+ }
+ }
+ }
+ }
+
+ return true
+}
+
+export default validateCaseStudyOptions
diff --git a/packages/graphql/src/ops.schema.json b/packages/graphql/src/ops.schema.json
index b4e5dbf6d3..b1cf078ab6 100644
--- a/packages/graphql/src/ops.schema.json
+++ b/packages/graphql/src/ops.schema.json
@@ -1661,6 +1661,946 @@
"enumValues": null,
"possibleTypes": null
},
+ {
+ "kind": "OBJECT",
+ "name": "CaseStudyCase",
+ "description": null,
+ "isOneOf": null,
+ "fields": [
+ {
+ "name": "description",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "order",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "solutions",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "OBJECT",
+ "name": "CaseStudyCaseSolution",
+ "ofType": null
+ }
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "title",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "inputFields": null,
+ "interfaces": [],
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "OBJECT",
+ "name": "CaseStudyCaseCriterionSolution",
+ "description": null,
+ "isOneOf": null,
+ "fields": [
+ {
+ "name": "criterionId",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "max",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "min",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "inputFields": null,
+ "interfaces": [],
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "INPUT_OBJECT",
+ "name": "CaseStudyCaseInput",
+ "description": null,
+ "isOneOf": false,
+ "fields": null,
+ "inputFields": [
+ {
+ "name": "description",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "order",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "solutions",
+ "description": null,
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "INPUT_OBJECT",
+ "name": "CaseStudySolutionInput",
+ "ofType": null
+ }
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "title",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "interfaces": null,
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "OBJECT",
+ "name": "CaseStudyCaseSolution",
+ "description": null,
+ "isOneOf": null,
+ "fields": [
+ {
+ "name": "criteriaSolutions",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "OBJECT",
+ "name": "CaseStudyCaseCriterionSolution",
+ "ofType": null
+ }
+ }
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "itemId",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "inputFields": null,
+ "interfaces": [],
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "INPUT_OBJECT",
+ "name": "CaseStudyCriteriaSolutionInput",
+ "description": null,
+ "isOneOf": false,
+ "fields": null,
+ "inputFields": [
+ {
+ "name": "criterionId",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "max",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "min",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "interfaces": null,
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "OBJECT",
+ "name": "CaseStudyCriterion",
+ "description": null,
+ "isOneOf": null,
+ "fields": [
+ {
+ "name": "id",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "max",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "min",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "name",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "order",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "step",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "unit",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "inputFields": null,
+ "interfaces": [],
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "INPUT_OBJECT",
+ "name": "CaseStudyCriterionInput",
+ "description": null,
+ "isOneOf": false,
+ "fields": null,
+ "inputFields": [
+ {
+ "name": "id",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "max",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "min",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "name",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "order",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "step",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Float",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "unit",
+ "description": null,
+ "type": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "interfaces": null,
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "OBJECT",
+ "name": "CaseStudyElement",
+ "description": null,
+ "isOneOf": null,
+ "fields": [
+ {
+ "name": "content",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "createdAt",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "SCALAR",
+ "name": "Date",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "explanation",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "id",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "isArchived",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "SCALAR",
+ "name": "Boolean",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "isDeleted",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "SCALAR",
+ "name": "Boolean",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "name",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "options",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "OBJECT",
+ "name": "CaseStudyElementOptions",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "pointsMultiplier",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "status",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "ENUM",
+ "name": "ElementStatus",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "tags",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "OBJECT",
+ "name": "Tag",
+ "ofType": null
+ }
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "type",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "ENUM",
+ "name": "ElementType",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "updatedAt",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "SCALAR",
+ "name": "Date",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "version",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "inputFields": null,
+ "interfaces": [],
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "OBJECT",
+ "name": "CaseStudyElementOptions",
+ "description": null,
+ "isOneOf": null,
+ "fields": [
+ {
+ "name": "answerCollection",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "OBJECT",
+ "name": "ElementOptionsAnswerCollection",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "cases",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "OBJECT",
+ "name": "CaseStudyCase",
+ "ofType": null
+ }
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "collectionItemIds",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "criteria",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "OBJECT",
+ "name": "CaseStudyCriterion",
+ "ofType": null
+ }
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "hasSampleSolution",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "SCALAR",
+ "name": "Boolean",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "inputFields": null,
+ "interfaces": [],
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "INPUT_OBJECT",
+ "name": "CaseStudySolutionInput",
+ "description": null,
+ "isOneOf": false,
+ "fields": null,
+ "inputFields": [
+ {
+ "name": "criteriaSolutions",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "INPUT_OBJECT",
+ "name": "CaseStudyCriteriaSolutionInput",
+ "ofType": null
+ }
+ }
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "itemId",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "interfaces": null,
+ "enumValues": null,
+ "possibleTypes": null
+ },
{
"kind": "OBJECT",
"name": "CatalogObject",
@@ -4788,6 +5728,11 @@
"interfaces": null,
"enumValues": null,
"possibleTypes": [
+ {
+ "kind": "OBJECT",
+ "name": "CaseStudyElement",
+ "ofType": null
+ },
{
"kind": "OBJECT",
"name": "ChoicesElement",
@@ -5474,6 +6419,98 @@
],
"possibleTypes": null
},
+ {
+ "kind": "OBJECT",
+ "name": "ElementOptionsAnswerCollection",
+ "description": null,
+ "isOneOf": null,
+ "fields": [
+ {
+ "name": "entries",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "OBJECT",
+ "name": "ElementOptionsAnswerCollectionEntry",
+ "ofType": null
+ }
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "id",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "inputFields": null,
+ "interfaces": [],
+ "enumValues": null,
+ "possibleTypes": null
+ },
+ {
+ "kind": "OBJECT",
+ "name": "ElementOptionsAnswerCollectionEntry",
+ "description": null,
+ "isOneOf": null,
+ "fields": [
+ {
+ "name": "id",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "value",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "inputFields": null,
+ "interfaces": [],
+ "enumValues": null,
+ "possibleTypes": null
+ },
{
"kind": "ENUM",
"name": "ElementOrderType",
@@ -15662,31 +16699,172 @@
"description": null,
"args": [
{
- "name": "shortname",
+ "name": "shortname",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "token",
+ "description": null,
+ "type": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "type": {
+ "kind": "SCALAR",
+ "name": "ID",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "logoutParticipant",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "SCALAR",
+ "name": "ID",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "logoutUser",
+ "description": null,
+ "args": [],
+ "type": {
+ "kind": "SCALAR",
+ "name": "ID",
+ "ofType": null
+ },
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "manipulateCaseStudyQuestion",
+ "description": null,
+ "args": [
+ {
+ "name": "content",
+ "description": null,
+ "type": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "explanation",
+ "description": null,
+ "type": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "id",
+ "description": null,
+ "type": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "name",
+ "description": null,
+ "type": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "options",
+ "description": null,
+ "type": {
+ "kind": "INPUT_OBJECT",
+ "name": "OptionsCaseStudyInput",
+ "ofType": null
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "pointsMultiplier",
+ "description": null,
+ "type": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "status",
"description": null,
"type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
+ "kind": "ENUM",
+ "name": "ElementStatus",
+ "ofType": null
},
"defaultValue": null,
"isDeprecated": false,
"deprecationReason": null
},
{
- "name": "token",
+ "name": "tags",
"description": null,
"type": {
- "kind": "NON_NULL",
+ "kind": "LIST",
"name": null,
"ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "String",
+ "ofType": null
+ }
}
},
"defaultValue": null,
@@ -15695,32 +16873,8 @@
}
],
"type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "logoutParticipant",
- "description": null,
- "args": [],
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "logoutUser",
- "description": null,
- "args": [],
- "type": {
- "kind": "SCALAR",
- "name": "ID",
+ "kind": "UNION",
+ "name": "Element",
"ofType": null
},
"isDeprecated": false,
@@ -19502,6 +20656,102 @@
"enumValues": null,
"possibleTypes": null
},
+ {
+ "kind": "INPUT_OBJECT",
+ "name": "OptionsCaseStudyInput",
+ "description": null,
+ "isOneOf": false,
+ "fields": null,
+ "inputFields": [
+ {
+ "name": "answerCollection",
+ "description": null,
+ "type": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "cases",
+ "description": null,
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "INPUT_OBJECT",
+ "name": "CaseStudyCaseInput",
+ "ofType": null
+ }
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "collectionItemIds",
+ "description": null,
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "SCALAR",
+ "name": "Int",
+ "ofType": null
+ }
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "criteria",
+ "description": null,
+ "type": {
+ "kind": "LIST",
+ "name": null,
+ "ofType": {
+ "kind": "NON_NULL",
+ "name": null,
+ "ofType": {
+ "kind": "INPUT_OBJECT",
+ "name": "CaseStudyCriterionInput",
+ "ofType": null
+ }
+ }
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ },
+ {
+ "name": "hasSampleSolution",
+ "description": null,
+ "type": {
+ "kind": "SCALAR",
+ "name": "Boolean",
+ "ofType": null
+ },
+ "defaultValue": null,
+ "isDeprecated": false,
+ "deprecationReason": null
+ }
+ ],
+ "interfaces": null,
+ "enumValues": null,
+ "possibleTypes": null
+ },
{
"kind": "INPUT_OBJECT",
"name": "OptionsChoicesInput",
@@ -24029,98 +25279,6 @@
"enumValues": null,
"possibleTypes": null
},
- {
- "kind": "OBJECT",
- "name": "SelectionAnswerCollection",
- "description": null,
- "isOneOf": null,
- "fields": [
- {
- "name": "entries",
- "description": null,
- "args": [],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SelectionAnswerCollectionEntry",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": null,
- "args": [],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SelectionAnswerCollectionEntry",
- "description": null,
- "isOneOf": null,
- "fields": [
- {
- "name": "id",
- "description": null,
- "args": [],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "value",
- "description": null,
- "args": [],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [],
- "enumValues": null,
- "possibleTypes": null
- },
{
"kind": "OBJECT",
"name": "SelectionElement",
@@ -24625,7 +25783,7 @@
"args": [],
"type": {
"kind": "OBJECT",
- "name": "SelectionAnswerCollection",
+ "name": "ElementOptionsAnswerCollection",
"ofType": null
},
"isDeprecated": false,
@@ -24651,18 +25809,6 @@
"isDeprecated": false,
"deprecationReason": null
},
- {
- "name": "hasAnswerFeedbacks",
- "description": null,
- "args": [],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
{
"name": "hasSampleSolution",
"description": null,
diff --git a/packages/graphql/src/ops.ts b/packages/graphql/src/ops.ts
index 536b760993..98bc96b7a8 100644
--- a/packages/graphql/src/ops.ts
+++ b/packages/graphql/src/ops.ts
@@ -190,6 +190,93 @@ export type AwardEntry = {
type: Scalars['String']['output'];
};
+export type CaseStudyCase = {
+ __typename?: 'CaseStudyCase';
+ description: Scalars['String']['output'];
+ order: Scalars['Int']['output'];
+ solutions?: Maybe>;
+ title: Scalars['String']['output'];
+};
+
+export type CaseStudyCaseCriterionSolution = {
+ __typename?: 'CaseStudyCaseCriterionSolution';
+ criterionId: Scalars['String']['output'];
+ max: Scalars['Float']['output'];
+ min: Scalars['Float']['output'];
+};
+
+export type CaseStudyCaseInput = {
+ description: Scalars['String']['input'];
+ order: Scalars['Int']['input'];
+ solutions?: InputMaybe>;
+ title: Scalars['String']['input'];
+};
+
+export type CaseStudyCaseSolution = {
+ __typename?: 'CaseStudyCaseSolution';
+ criteriaSolutions: Array;
+ itemId: Scalars['Int']['output'];
+};
+
+export type CaseStudyCriteriaSolutionInput = {
+ criterionId: Scalars['String']['input'];
+ max: Scalars['Float']['input'];
+ min: Scalars['Float']['input'];
+};
+
+export type CaseStudyCriterion = {
+ __typename?: 'CaseStudyCriterion';
+ id: Scalars['String']['output'];
+ max: Scalars['Float']['output'];
+ min: Scalars['Float']['output'];
+ name: Scalars['String']['output'];
+ order: Scalars['Int']['output'];
+ step: Scalars['Float']['output'];
+ unit?: Maybe;
+};
+
+export type CaseStudyCriterionInput = {
+ id: Scalars['String']['input'];
+ max: Scalars['Float']['input'];
+ min: Scalars['Float']['input'];
+ name: Scalars['String']['input'];
+ order: Scalars['Int']['input'];
+ step: Scalars['Float']['input'];
+ unit?: InputMaybe;
+};
+
+export type CaseStudyElement = {
+ __typename?: 'CaseStudyElement';
+ content: Scalars['String']['output'];
+ createdAt?: Maybe;
+ explanation?: Maybe;
+ id: Scalars['Int']['output'];
+ isArchived?: Maybe;
+ isDeleted?: Maybe;
+ name: Scalars['String']['output'];
+ options: CaseStudyElementOptions;
+ pointsMultiplier: Scalars['Int']['output'];
+ status: ElementStatus;
+ tags?: Maybe>;
+ type: ElementType;
+ updatedAt?: Maybe;
+ version: Scalars['Int']['output'];
+};
+
+export type CaseStudyElementOptions = {
+ __typename?: 'CaseStudyElementOptions';
+ answerCollection?: Maybe;
+ cases?: Maybe>;
+ collectionItemIds?: Maybe>;
+ criteria?: Maybe>;
+ hasSampleSolution?: Maybe;
+};
+
+export type CaseStudySolutionInput = {
+ criteriaSolutions: Array;
+ itemId: Scalars['Int']['input'];
+};
+
export type CatalogObject = {
__typename?: 'CatalogObject';
access: ObjectAccess;
@@ -463,7 +550,7 @@ export type CourseSummary = {
numOfPracticeQuizzes: Scalars['Int']['output'];
};
-export type Element = ChoicesElement | ContentElement | FlashcardElement | FreeTextElement | NumericalElement | SelectionElement;
+export type Element = CaseStudyElement | ChoicesElement | ContentElement | FlashcardElement | FreeTextElement | NumericalElement | SelectionElement;
export type ElementBlock = {
__typename?: 'ElementBlock';
@@ -536,6 +623,18 @@ export enum ElementInstanceType {
PracticeQuiz = 'PRACTICE_QUIZ'
}
+export type ElementOptionsAnswerCollection = {
+ __typename?: 'ElementOptionsAnswerCollection';
+ entries?: Maybe>;
+ id: Scalars['Int']['output'];
+};
+
+export type ElementOptionsAnswerCollectionEntry = {
+ __typename?: 'ElementOptionsAnswerCollectionEntry';
+ id: Scalars['Int']['output'];
+ value: Scalars['String']['output'];
+};
+
export enum ElementOrderType {
Sequential = 'SEQUENTIAL',
SpacedRepetition = 'SPACED_REPETITION'
@@ -1206,6 +1305,7 @@ export type Mutation = {
loginUserToken?: Maybe;
logoutParticipant?: Maybe;
logoutUser?: Maybe;
+ manipulateCaseStudyQuestion?: Maybe;
manipulateChoicesQuestion?: Maybe;
manipulateContentElement?: Maybe;
manipulateFlashcardElement?: Maybe;
@@ -1723,6 +1823,18 @@ export type MutationLoginUserTokenArgs = {
};
+export type MutationManipulateCaseStudyQuestionArgs = {
+ content?: InputMaybe;
+ explanation?: InputMaybe;
+ id?: InputMaybe;
+ name?: InputMaybe;
+ options?: InputMaybe;
+ pointsMultiplier?: InputMaybe;
+ status?: InputMaybe;
+ tags?: InputMaybe>;
+};
+
+
export type MutationManipulateChoicesQuestionArgs = {
content?: InputMaybe;
explanation?: InputMaybe;
@@ -2139,6 +2251,14 @@ export type ObjectSharingRequest = {
userShortname: Scalars['String']['output'];
};
+export type OptionsCaseStudyInput = {
+ answerCollection?: InputMaybe;
+ cases?: InputMaybe>;
+ collectionItemIds?: InputMaybe>;
+ criteria?: InputMaybe>;
+ hasSampleSolution?: InputMaybe;
+};
+
export type OptionsChoicesInput = {
choices?: InputMaybe>;
displayMode?: InputMaybe;
@@ -2733,18 +2853,6 @@ export type ResponseInput = {
value?: InputMaybe;
};
-export type SelectionAnswerCollection = {
- __typename?: 'SelectionAnswerCollection';
- entries?: Maybe>;
- id: Scalars['Int']['output'];
-};
-
-export type SelectionAnswerCollectionEntry = {
- __typename?: 'SelectionAnswerCollectionEntry';
- id: Scalars['Int']['output'];
- value: Scalars['String']['output'];
-};
-
export type SelectionElement = {
__typename?: 'SelectionElement';
content: Scalars['String']['output'];
@@ -2789,9 +2897,8 @@ export type SelectionElementInstanceEvaluation = {
export type SelectionElementOptions = {
__typename?: 'SelectionElementOptions';
- answerCollection?: Maybe;
+ answerCollection?: Maybe;
answerCollectionSolutionIds?: Maybe>;
- hasAnswerFeedbacks?: Maybe;
hasSampleSolution?: Maybe;
numberOfInputs?: Maybe;
};
@@ -3090,21 +3197,21 @@ export type WeeklyCourseActivities = {
weeklyActivity: Array;
};
-export type ElementDataFragment = { __typename?: 'ElementInstance', elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } };
+export type ElementDataFragment = { __typename?: 'ElementInstance', elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } };
export type ElementDataInfoFragment = { __typename?: 'ElementInstance', elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } };
-export type ElementDataWithoutSolutionsFragment = { __typename?: 'ElementInstance', elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } };
+export type ElementDataWithoutSolutionsFragment = { __typename?: 'ElementInstance', elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } };
export type EvaluationResultsFragment = { __typename?: 'ActivityEvaluation', results: Array<{ __typename?: 'StackEvaluation', stackId: number, stackName?: string | null, stackDescription?: string | null, stackOrder: number, instances: Array<{ __typename: 'ChoicesElementInstanceEvaluation', id: number, type: ElementType, name: string, content: string, explanation?: string | null, hasSampleSolution: boolean, hasAnswerFeedbacks: boolean, results: { __typename?: 'ChoicesElementResults', totalAnswers: number, anonymousAnswers: number, choices: Array<{ __typename?: 'ChoiceElementResults', value: string, count: number, correct?: boolean | null, feedback?: string | null }> } } | { __typename: 'ContentElementInstanceEvaluation', id: number, type: ElementType, name: string, content: string, explanation?: string | null, hasSampleSolution: boolean, hasAnswerFeedbacks: boolean, results: { __typename?: 'ContentElementResults', totalAnswers: number, anonymousAnswers: number } } | { __typename: 'FlashcardElementInstanceEvaluation', id: number, type: ElementType, name: string, content: string, explanation?: string | null, hasSampleSolution: boolean, hasAnswerFeedbacks: boolean, results: { __typename?: 'FlashcardElementResults', totalAnswers: number, anonymousAnswers: number, correctCount: number, partialCount: number, incorrectCount: number } } | { __typename: 'FreeElementInstanceEvaluation', id: number, type: ElementType, name: string, content: string, explanation?: string | null, hasSampleSolution: boolean, hasAnswerFeedbacks: boolean, results: { __typename?: 'FreeElementResults', totalAnswers: number, anonymousAnswers: number, maxLength?: number | null, solutions?: Array | null, responses: Array<{ __typename?: 'FreeElementResult', value: string, correct?: boolean | null, count: number }> } } | { __typename: 'NumericalElementInstanceEvaluation', id: number, type: ElementType, name: string, content: string, explanation?: string | null, hasSampleSolution: boolean, hasAnswerFeedbacks: boolean, results: { __typename?: 'NumericalElementResults', totalAnswers: number, anonymousAnswers: number, maxValue?: number | null, minValue?: number | null, exactSolutions?: Array | null, solutionRanges?: Array<{ __typename?: 'NumericalElementSolutions', min?: number | null, max?: number | null }> | null, responseValues: Array<{ __typename?: 'NumericalElementResult', value: number, correct?: boolean | null, count: number }> }, statistics?: { __typename?: 'Statistics', max: number, mean: number, median: number, min: number, q1: number, q3: number, sd: number } | null } | { __typename: 'SelectionElementInstanceEvaluation', id: number, type: ElementType, name: string, content: string, explanation?: string | null, hasSampleSolution: boolean, hasAnswerFeedbacks: boolean, results: { __typename?: 'SelectionElementResults', totalAnswers: number, anonymousAnswers: number, numberOfInputs?: number | null, answerSolutionIds?: Array | null, selectionResponses: Array<{ __typename?: 'SelectionElementResult', answerId: number, value: string, count: number }> } }> }> };
-export type MicroLearningDataFragment = { __typename?: 'MicroLearning', id: string, name: string, status: PublicationStatus, displayName: string, description?: string | null, pointsMultiplier: number, scheduledStartAt: any, scheduledEndAt: any, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
+export type MicroLearningDataFragment = { __typename?: 'MicroLearning', id: string, name: string, status: PublicationStatus, displayName: string, description?: string | null, pointsMultiplier: number, scheduledStartAt: any, scheduledEndAt: any, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
-export type MicroLearningDataWithoutSolutionsFragment = { __typename?: 'MicroLearning', id: string, name: string, status: PublicationStatus, displayName: string, description?: string | null, pointsMultiplier: number, scheduledStartAt: any, scheduledEndAt: any, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
+export type MicroLearningDataWithoutSolutionsFragment = { __typename?: 'MicroLearning', id: string, name: string, status: PublicationStatus, displayName: string, description?: string | null, pointsMultiplier: number, scheduledStartAt: any, scheduledEndAt: any, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
-export type PracticeQuizDataFragment = { __typename?: 'PracticeQuiz', id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
+export type PracticeQuizDataFragment = { __typename?: 'PracticeQuiz', id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
-export type PracticeQuizDataWithoutSolutionsFragment = { __typename?: 'PracticeQuiz', id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
+export type PracticeQuizDataWithoutSolutionsFragment = { __typename?: 'PracticeQuiz', id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
export type StackFeedbackEvaluationsFragment = { __typename?: 'StackFeedback', evaluations?: Array<{ __typename: 'ChoicesInstanceEvaluation', elementType: ElementType, instanceId: number, pointsMultiplier: number, explanation?: string | null, numAnswers?: number | null, score: number, xp?: number | null, pointsAwarded?: number | null, percentile?: number | null, newPointsFrom?: any | null, xpAwarded?: number | null, newXpFrom?: any | null, correctness?: number | null, feedbacks?: Array<{ __typename?: 'QuestionFeedback', ix: number, feedback?: string | null, correct?: boolean | null, value: string }> | null, choices?: Array<{ __typename?: 'SingleChoiceResponse', ix: number, count: number }> | null, lastResponse?: { __typename: 'SingleQuestionResponseChoices', choices: Array } | null } | { __typename: 'ContentInstanceEvaluation', instanceId: number, elementType: ElementType, pointsMultiplier: number, explanation?: string | null, numAnswers?: number | null, score: number, xp?: number | null, pointsAwarded?: number | null, percentile?: number | null, newPointsFrom?: any | null, xpAwarded?: number | null, newXpFrom?: any | null, correctness?: number | null, feedbacks?: Array<{ __typename?: 'QuestionFeedback', ix: number, feedback?: string | null, correct?: boolean | null, value: string }> | null, lastResponse?: { __typename: 'SingleQuestionResponseContent', viewed: boolean } | null } | { __typename: 'FlashcardInstanceEvaluation', instanceId: number, elementType: ElementType, pointsMultiplier: number, explanation?: string | null, numAnswers?: number | null, score: number, xp?: number | null, pointsAwarded?: number | null, percentile?: number | null, newPointsFrom?: any | null, xpAwarded?: number | null, newXpFrom?: any | null, correctness?: number | null, feedbacks?: Array<{ __typename?: 'QuestionFeedback', ix: number, feedback?: string | null, correct?: boolean | null, value: string }> | null, lastResponse?: { __typename: 'SingleQuestionResponseFlashcard', correctness: FlashcardCorrectness } | null } | { __typename: 'FreeTextInstanceEvaluation', instanceId: number, elementType: ElementType, pointsMultiplier: number, explanation?: string | null, numAnswers?: number | null, score: number, xp?: number | null, pointsAwarded?: number | null, percentile?: number | null, newPointsFrom?: any | null, xpAwarded?: number | null, newXpFrom?: any | null, solutions?: Array | null, correctness?: number | null, feedbacks?: Array<{ __typename?: 'QuestionFeedback', ix: number, feedback?: string | null, correct?: boolean | null, value: string }> | null, answers?: Array<{ __typename?: 'SingleFreeTextResponse', value: string, count: number }> | null, lastResponse?: { __typename: 'SingleQuestionResponseValue', value: string } | null } | { __typename: 'NumericalInstanceEvaluation', elementType: ElementType, instanceId: number, pointsMultiplier: number, explanation?: string | null, numAnswers?: number | null, score: number, xp?: number | null, pointsAwarded?: number | null, percentile?: number | null, newPointsFrom?: any | null, xpAwarded?: number | null, newXpFrom?: any | null, exactSolutions?: Array | null, correctness?: number | null, feedbacks?: Array<{ __typename?: 'QuestionFeedback', ix: number, feedback?: string | null, correct?: boolean | null, value: string }> | null, responses?: Array<{ __typename?: 'SingleNumericalResponse', value: number, count: number }> | null, solutionRanges?: Array<{ __typename: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null, lastResponse?: { __typename: 'SingleQuestionResponseValue', value: string } | null } | { __typename: 'SelectionInstanceEvaluation', instanceId: number, elementType: ElementType, pointsMultiplier: number, explanation?: string | null, numAnswers?: number | null, score: number, xp?: number | null, pointsAwarded?: number | null, percentile?: number | null, newPointsFrom?: any | null, xpAwarded?: number | null, newXpFrom?: any | null, answerSolutionIds?: Array | null, correctness?: number | null, feedbacks?: Array<{ __typename?: 'QuestionFeedback', ix: number, feedback?: string | null, correct?: boolean | null, value: string }> | null, selectionResponses?: Array<{ __typename: 'SingleSelectionResponse', answerId: number, value: string, count: number }> | null, lastResponse?: { __typename: 'SingleQuestionResponseSelection', selection: Array } | null }> | null };
@@ -3321,7 +3428,7 @@ export type CreateMicroLearningMutationVariables = Exact<{
}>;
-export type CreateMicroLearningMutation = { __typename?: 'Mutation', createMicroLearning?: { __typename?: 'MicroLearning', id: string, name: string, displayName: string, description?: string | null, scheduledStartAt: any, scheduledEndAt: any, pointsMultiplier: number, course?: { __typename?: 'Course', id: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
+export type CreateMicroLearningMutation = { __typename?: 'Mutation', createMicroLearning?: { __typename?: 'MicroLearning', id: string, name: string, displayName: string, description?: string | null, scheduledStartAt: any, scheduledEndAt: any, pointsMultiplier: number, course?: { __typename?: 'Course', id: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
export type CreateParticipantAccountMutationVariables = Exact<{
email: Scalars['String']['input'];
@@ -3355,7 +3462,7 @@ export type CreatePracticeQuizMutationVariables = Exact<{
}>;
-export type CreatePracticeQuizMutation = { __typename?: 'Mutation', createPracticeQuiz?: { __typename?: 'PracticeQuiz', id: string, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, orderType: ElementOrderType, course?: { __typename?: 'Course', id: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
+export type CreatePracticeQuizMutation = { __typename?: 'Mutation', createPracticeQuiz?: { __typename?: 'PracticeQuiz', id: string, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, orderType: ElementOrderType, course?: { __typename?: 'Course', id: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
export type CreateUserLoginMutationVariables = Exact<{
password: Scalars['String']['input'];
@@ -3455,7 +3562,7 @@ export type DeleteQuestionMutationVariables = Exact<{
}>;
-export type DeleteQuestionMutation = { __typename?: 'Mutation', deleteQuestion?: { __typename?: 'ChoicesElement', id: number } | { __typename?: 'ContentElement', id: number } | { __typename?: 'FlashcardElement', id: number } | { __typename?: 'FreeTextElement', id: number } | { __typename?: 'NumericalElement', id: number } | { __typename?: 'SelectionElement', id: number } | null };
+export type DeleteQuestionMutation = { __typename?: 'Mutation', deleteQuestion?: { __typename?: 'CaseStudyElement', id: number } | { __typename?: 'ChoicesElement', id: number } | { __typename?: 'ContentElement', id: number } | { __typename?: 'FlashcardElement', id: number } | { __typename?: 'FreeTextElement', id: number } | { __typename?: 'NumericalElement', id: number } | { __typename?: 'SelectionElement', id: number } | null };
export type DeleteTagMutationVariables = Exact<{
id: Scalars['Int']['input'];
@@ -3529,7 +3636,7 @@ export type EditMicroLearningMutationVariables = Exact<{
}>;
-export type EditMicroLearningMutation = { __typename?: 'Mutation', editMicroLearning?: { __typename?: 'MicroLearning', id: string, name: string, displayName: string, description?: string | null, scheduledStartAt: any, scheduledEndAt: any, pointsMultiplier: number, course?: { __typename?: 'Course', id: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
+export type EditMicroLearningMutation = { __typename?: 'Mutation', editMicroLearning?: { __typename?: 'MicroLearning', id: string, name: string, displayName: string, description?: string | null, scheduledStartAt: any, scheduledEndAt: any, pointsMultiplier: number, course?: { __typename?: 'Course', id: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
export type EditPracticeQuizMutationVariables = Exact<{
id: Scalars['String']['input'];
@@ -3544,7 +3651,7 @@ export type EditPracticeQuizMutationVariables = Exact<{
}>;
-export type EditPracticeQuizMutation = { __typename?: 'Mutation', editPracticeQuiz?: { __typename?: 'PracticeQuiz', id: string, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, orderType: ElementOrderType, course?: { __typename?: 'Course', id: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
+export type EditPracticeQuizMutation = { __typename?: 'Mutation', editPracticeQuiz?: { __typename?: 'PracticeQuiz', id: string, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, orderType: ElementOrderType, course?: { __typename?: 'Course', id: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
export type EditTagMutationVariables = Exact<{
id: Scalars['Int']['input'];
@@ -3744,6 +3851,20 @@ export type LogoutUserMutationVariables = Exact<{ [key: string]: never; }>;
export type LogoutUserMutation = { __typename?: 'Mutation', logoutUser?: string | null };
+export type ManipulateCaseStudyQuestionMutationVariables = Exact<{
+ id?: InputMaybe;
+ status?: InputMaybe;
+ name?: InputMaybe;
+ content?: InputMaybe;
+ explanation?: InputMaybe;
+ options?: InputMaybe;
+ pointsMultiplier?: InputMaybe;
+ tags?: InputMaybe | Scalars['String']['input']>;
+}>;
+
+
+export type ManipulateCaseStudyQuestionMutation = { __typename?: 'Mutation', manipulateCaseStudyQuestion?: { __typename: 'CaseStudyElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'CaseStudyElementOptions', hasSampleSolution?: boolean | null, collectionItemIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number } | null, criteria?: Array<{ __typename?: 'CaseStudyCriterion', id: string, name: string, order: number, min: number, max: number, step: number, unit?: string | null }> | null, cases?: Array<{ __typename?: 'CaseStudyCase', title: string, description: string, order: number, solutions?: Array<{ __typename?: 'CaseStudyCaseSolution', itemId: number, criteriaSolutions: Array<{ __typename?: 'CaseStudyCaseCriterionSolution', criterionId: string, min: number, max: number }> }> | null }> | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'ChoicesElement' } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement' } | null };
+
export type ManipulateChoicesQuestionMutationVariables = Exact<{
id?: InputMaybe;
status?: InputMaybe;
@@ -3757,7 +3878,7 @@ export type ManipulateChoicesQuestionMutationVariables = Exact<{
}>;
-export type ManipulateChoicesQuestionMutation = { __typename?: 'Mutation', manipulateChoicesQuestion?: { __typename: 'ChoicesElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> }, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement' } | null };
+export type ManipulateChoicesQuestionMutation = { __typename?: 'Mutation', manipulateChoicesQuestion?: { __typename: 'CaseStudyElement' } | { __typename: 'ChoicesElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> }, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement' } | null };
export type ManipulateContentElementMutationVariables = Exact<{
id?: InputMaybe;
@@ -3769,7 +3890,7 @@ export type ManipulateContentElementMutationVariables = Exact<{
}>;
-export type ManipulateContentElementMutation = { __typename?: 'Mutation', manipulateContentElement?: { __typename: 'ChoicesElement' } | { __typename: 'ContentElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement' } | null };
+export type ManipulateContentElementMutation = { __typename?: 'Mutation', manipulateContentElement?: { __typename: 'CaseStudyElement' } | { __typename: 'ChoicesElement' } | { __typename: 'ContentElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement' } | null };
export type ManipulateFlashcardElementMutationVariables = Exact<{
id?: InputMaybe;
@@ -3782,7 +3903,7 @@ export type ManipulateFlashcardElementMutationVariables = Exact<{
}>;
-export type ManipulateFlashcardElementMutation = { __typename?: 'Mutation', manipulateFlashcardElement?: { __typename: 'ChoicesElement' } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement' } | null };
+export type ManipulateFlashcardElementMutation = { __typename?: 'Mutation', manipulateFlashcardElement?: { __typename: 'CaseStudyElement' } | { __typename: 'ChoicesElement' } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement' } | null };
export type ManipulateFreeTextQuestionMutationVariables = Exact<{
id?: InputMaybe;
@@ -3796,7 +3917,7 @@ export type ManipulateFreeTextQuestionMutationVariables = Exact<{
}>;
-export type ManipulateFreeTextQuestionMutation = { __typename?: 'Mutation', manipulateFreeTextQuestion?: { __typename: 'ChoicesElement' } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement' } | null };
+export type ManipulateFreeTextQuestionMutation = { __typename?: 'Mutation', manipulateFreeTextQuestion?: { __typename: 'CaseStudyElement' } | { __typename: 'ChoicesElement' } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement' } | null };
export type ManipulateNumericalQuestionMutationVariables = Exact<{
id?: InputMaybe;
@@ -3810,7 +3931,7 @@ export type ManipulateNumericalQuestionMutationVariables = Exact<{
}>;
-export type ManipulateNumericalQuestionMutation = { __typename?: 'Mutation', manipulateNumericalQuestion?: { __typename: 'ChoicesElement' } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'SelectionElement' } | null };
+export type ManipulateNumericalQuestionMutation = { __typename?: 'Mutation', manipulateNumericalQuestion?: { __typename: 'CaseStudyElement' } | { __typename: 'ChoicesElement' } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | { __typename: 'SelectionElement' } | null };
export type ManipulateSelectionQuestionMutationVariables = Exact<{
id?: InputMaybe;
@@ -3824,7 +3945,7 @@ export type ManipulateSelectionQuestionMutationVariables = Exact<{
}>;
-export type ManipulateSelectionQuestionMutation = { __typename?: 'Mutation', manipulateSelectionQuestion?: { __typename: 'ChoicesElement' } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | null };
+export type ManipulateSelectionQuestionMutation = { __typename?: 'Mutation', manipulateSelectionQuestion?: { __typename: 'CaseStudyElement' } | { __typename: 'ChoicesElement' } | { __typename: 'ContentElement' } | { __typename: 'FlashcardElement' } | { __typename: 'FreeTextElement' } | { __typename: 'NumericalElement' } | { __typename: 'SelectionElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string }> | null } | null };
export type ManualRandomGroupAssignmentsMutationVariables = Exact<{
courseId: Scalars['String']['input'];
@@ -4075,7 +4196,7 @@ export type UpdateElementInstancesMutationVariables = Exact<{
}>;
-export type UpdateElementInstancesMutation = { __typename?: 'Mutation', updateElementInstances: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> };
+export type UpdateElementInstancesMutation = { __typename?: 'Mutation', updateElementInstances: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> };
export type UpdateGroupAverageScoresMutationVariables = Exact<{ [key: string]: never; }>;
@@ -4175,7 +4296,7 @@ export type GetArtificialInstanceQueryVariables = Exact<{
}>;
-export type GetArtificialInstanceQuery = { __typename?: 'Query', artificialInstance?: { __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } } | null };
+export type GetArtificialInstanceQuery = { __typename?: 'Query', artificialInstance?: { __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } } | null };
export type GetBasicCourseInformationQueryVariables = Exact<{
courseId: Scalars['String']['input'];
@@ -4189,7 +4310,7 @@ export type GetBookmarkedElementStacksQueryVariables = Exact<{
}>;
-export type GetBookmarkedElementStacksQuery = { __typename?: 'Query', getBookmarkedElementStacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
+export type GetBookmarkedElementStacksQuery = { __typename?: 'Query', getBookmarkedElementStacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null };
export type GetBookmarksPracticeQuizQueryVariables = Exact<{
quizId?: InputMaybe;
@@ -4284,7 +4405,7 @@ export type GetCoursePracticeQuizQueryVariables = Exact<{
}>;
-export type GetCoursePracticeQuizQuery = { __typename?: 'Query', coursePracticeQuiz?: { __typename?: 'PracticeQuiz', id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
+export type GetCoursePracticeQuizQuery = { __typename?: 'Query', coursePracticeQuiz?: { __typename?: 'PracticeQuiz', id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
export type GetCourseRunningLiveQuizzesQueryVariables = Exact<{
courseId: Scalars['String']['input'];
@@ -4319,14 +4440,14 @@ export type GetGradingGroupActivityQueryVariables = Exact<{
}>;
-export type GetGradingGroupActivityQuery = { __typename?: 'Query', getGradingGroupActivity?: { __typename?: 'GroupActivity', id: string, name: string, displayName: string, description?: string | null, status: PublicationStatus, pointsMultiplier?: number | null, scheduledStartAt: any, scheduledEndAt: any, clues?: Array<{ __typename?: 'GroupActivityClue', id: number, type: ParameterType, name: string, displayName: string, value: string, unit?: string | null }> | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, options?: { __typename?: 'ElementInstanceOptions', pointsMultiplier?: number | null } | null, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null, activityInstances?: Array<{ __typename?: 'GroupActivityInstance', id: number, groupActivityId: string, decisionsSubmittedAt?: any | null, resultsComputedAt?: any | null, groupName?: string | null, decisions?: Array<{ __typename?: 'GroupActivityDecision', instanceId: number, type: ElementType, freeTextResponse?: string | null, choicesResponse?: Array | null, numericalResponse?: number | null, contentResponse?: boolean | null, selectionResponse?: Array | null }> | null, results?: { __typename?: 'GroupActivityResults', passed: boolean, points: number, comment?: string | null, grading: Array<{ __typename?: 'GroupActivityGrading', instanceId: number, score: number, maxPoints: number, feedback?: string | null }> } | null }> | null } | null };
+export type GetGradingGroupActivityQuery = { __typename?: 'Query', getGradingGroupActivity?: { __typename?: 'GroupActivity', id: string, name: string, displayName: string, description?: string | null, status: PublicationStatus, pointsMultiplier?: number | null, scheduledStartAt: any, scheduledEndAt: any, clues?: Array<{ __typename?: 'GroupActivityClue', id: number, type: ParameterType, name: string, displayName: string, value: string, unit?: string | null }> | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, options?: { __typename?: 'ElementInstanceOptions', pointsMultiplier?: number | null } | null, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null, activityInstances?: Array<{ __typename?: 'GroupActivityInstance', id: number, groupActivityId: string, decisionsSubmittedAt?: any | null, resultsComputedAt?: any | null, groupName?: string | null, decisions?: Array<{ __typename?: 'GroupActivityDecision', instanceId: number, type: ElementType, freeTextResponse?: string | null, choicesResponse?: Array | null, numericalResponse?: number | null, contentResponse?: boolean | null, selectionResponse?: Array | null }> | null, results?: { __typename?: 'GroupActivityResults', passed: boolean, points: number, comment?: string | null, grading: Array<{ __typename?: 'GroupActivityGrading', instanceId: number, score: number, maxPoints: number, feedback?: string | null }> } | null }> | null } | null };
export type GetGroupActivityQueryVariables = Exact<{
id: Scalars['String']['input'];
}>;
-export type GetGroupActivityQuery = { __typename?: 'Query', groupActivity?: { __typename?: 'GroupActivity', id: string, name: string, displayName: string, description?: string | null, pointsMultiplier?: number | null, scheduledStartAt: any, scheduledEndAt: any, clues?: Array<{ __typename?: 'GroupActivityClue', id: number, type: ParameterType, name: string, displayName: string, value: string, unit?: string | null }> | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null, course?: { __typename?: 'Course', id: string, displayName: string } | null } | null };
+export type GetGroupActivityQuery = { __typename?: 'Query', groupActivity?: { __typename?: 'GroupActivity', id: string, name: string, displayName: string, description?: string | null, pointsMultiplier?: number | null, scheduledStartAt: any, scheduledEndAt: any, clues?: Array<{ __typename?: 'GroupActivityClue', id: number, type: ParameterType, name: string, displayName: string, value: string, unit?: string | null }> | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, displayName?: string | null, description?: string | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null, course?: { __typename?: 'Course', id: string, displayName: string } | null } | null };
export type GetGroupActivityInstancesQueryVariables = Exact<{
groupId: Scalars['String']['input'];
@@ -4403,7 +4524,7 @@ export type GetMicroLearningQueryVariables = Exact<{
}>;
-export type GetMicroLearningQuery = { __typename?: 'Query', microLearning?: { __typename?: 'MicroLearning', isOwner?: boolean | null, id: string, name: string, status: PublicationStatus, displayName: string, description?: string | null, pointsMultiplier: number, scheduledStartAt: any, scheduledEndAt: any, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
+export type GetMicroLearningQuery = { __typename?: 'Query', microLearning?: { __typename?: 'MicroLearning', isOwner?: boolean | null, id: string, name: string, status: PublicationStatus, displayName: string, description?: string | null, pointsMultiplier: number, scheduledStartAt: any, scheduledEndAt: any, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
export type GetParticipantCoursesQueryVariables = Exact<{ [key: string]: never; }>;
@@ -4434,7 +4555,7 @@ export type GetPracticeQuizQueryVariables = Exact<{
}>;
-export type GetPracticeQuizQuery = { __typename?: 'Query', practiceQuiz?: { __typename?: 'PracticeQuiz', isOwner?: boolean | null, id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
+export type GetPracticeQuizQuery = { __typename?: 'Query', practiceQuiz?: { __typename?: 'PracticeQuiz', isOwner?: boolean | null, id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
export type GetPracticeQuizEvaluationQueryVariables = Exact<{
id: Scalars['String']['input'];
@@ -4474,7 +4595,7 @@ export type GetRunningLiveQuizQueryVariables = Exact<{
}>;
-export type GetRunningLiveQuizQuery = { __typename?: 'Query', studentLiveQuiz?: { __typename?: 'LiveQuiz', id: string, status: PublicationStatus, isLiveQAEnabled: boolean, isConfusionFeedbackEnabled: boolean, isModerationEnabled: boolean, isGamificationEnabled: boolean, beforeFirstBlock?: boolean | null, namespace?: string | null, displayName: string, description?: string | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, activeBlock?: { __typename?: 'ElementBlock', id: number, status: ElementBlockStatus, expiresAt?: any | null, timeLimit?: number | null, randomSelection?: number | null, execution?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null } | null } | null };
+export type GetRunningLiveQuizQuery = { __typename?: 'Query', studentLiveQuiz?: { __typename?: 'LiveQuiz', id: string, status: PublicationStatus, isLiveQAEnabled: boolean, isConfusionFeedbackEnabled: boolean, isModerationEnabled: boolean, isGamificationEnabled: boolean, beforeFirstBlock?: boolean | null, namespace?: string | null, displayName: string, description?: string | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, activeBlock?: { __typename?: 'ElementBlock', id: number, status: ElementBlockStatus, expiresAt?: any | null, timeLimit?: number | null, randomSelection?: number | null, execution?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null } | null } | null };
export type GetShortnameQuizzesQueryVariables = Exact<{
shortname: Scalars['String']['input'];
@@ -4502,28 +4623,28 @@ export type GetSingleLiveQuizQueryVariables = Exact<{
}>;
-export type GetSingleLiveQuizQuery = { __typename?: 'Query', liveQuiz?: { __typename?: 'LiveQuiz', id: string, name: string, displayName: string, description?: string | null, pointsMultiplier: number, defaultPoints: number, defaultCorrectPoints: number, maxBonusPoints?: number | null, timeToZeroBonus?: number | null, isGamificationEnabled: boolean, isLiveQAEnabled: boolean, isConfusionFeedbackEnabled: boolean, isModerationEnabled: boolean, blocks?: Array<{ __typename?: 'ElementBlock', id: number, order: number, status: ElementBlockStatus, timeLimit?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null, course?: { __typename?: 'Course', id: string } | null } | null };
+export type GetSingleLiveQuizQuery = { __typename?: 'Query', liveQuiz?: { __typename?: 'LiveQuiz', id: string, name: string, displayName: string, description?: string | null, pointsMultiplier: number, defaultPoints: number, defaultCorrectPoints: number, maxBonusPoints?: number | null, timeToZeroBonus?: number | null, isGamificationEnabled: boolean, isLiveQAEnabled: boolean, isConfusionFeedbackEnabled: boolean, isModerationEnabled: boolean, blocks?: Array<{ __typename?: 'ElementBlock', id: number, order: number, status: ElementBlockStatus, timeLimit?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null, course?: { __typename?: 'Course', id: string } | null } | null };
export type GetSingleMicroLearningQueryVariables = Exact<{
id: Scalars['String']['input'];
}>;
-export type GetSingleMicroLearningQuery = { __typename?: 'Query', getSingleMicroLearning?: { __typename?: 'MicroLearning', id: string, name: string, status: PublicationStatus, displayName: string, description?: string | null, pointsMultiplier: number, scheduledStartAt: any, scheduledEndAt: any, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
+export type GetSingleMicroLearningQuery = { __typename?: 'Query', getSingleMicroLearning?: { __typename?: 'MicroLearning', id: string, name: string, status: PublicationStatus, displayName: string, description?: string | null, pointsMultiplier: number, scheduledStartAt: any, scheduledEndAt: any, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
export type GetSinglePracticeQuizQueryVariables = Exact<{
id: Scalars['String']['input'];
}>;
-export type GetSinglePracticeQuizQuery = { __typename?: 'Query', getSinglePracticeQuiz?: { __typename?: 'PracticeQuiz', id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
+export type GetSinglePracticeQuizQuery = { __typename?: 'Query', getSinglePracticeQuiz?: { __typename?: 'PracticeQuiz', id: string, status: PublicationStatus, name: string, displayName: string, description?: string | null, pointsMultiplier: number, resetTimeDays: number, availableFrom?: any | null, orderType: ElementOrderType, numOfStacks?: number | null, course?: { __typename?: 'Course', id: string, displayName: string, color: string } | null, stacks?: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null } | null };
export type GetSingleQuestionQueryVariables = Exact<{
id: Scalars['Int']['input'];
}>;
-export type GetSingleQuestionQuery = { __typename?: 'Query', question?: { __typename: 'ChoicesElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'ContentElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'FlashcardElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'FreeTextElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'NumericalElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'SelectionElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | null };
+export type GetSingleQuestionQuery = { __typename?: 'Query', question?: { __typename: 'CaseStudyElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'CaseStudyElementOptions', hasSampleSolution?: boolean | null, collectionItemIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number } | null, criteria?: Array<{ __typename?: 'CaseStudyCriterion', id: string, name: string, order: number, min: number, max: number, step: number, unit?: string | null }> | null, cases?: Array<{ __typename?: 'CaseStudyCase', title: string, description: string, order: number, solutions?: Array<{ __typename?: 'CaseStudyCaseSolution', itemId: number, criteriaSolutions: Array<{ __typename?: 'CaseStudyCaseCriterionSolution', criterionId: string, min: number, max: number }> }> | null }> | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'ChoicesElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'ContentElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'FlashcardElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'FreeTextElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'NumericalElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'SelectionElement', id: number, version: number, name: string, status: ElementStatus, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | null };
export type GetStackElementFeedbacksQueryVariables = Exact<{
instanceIds: Array | Scalars['Int']['input'];
@@ -4545,7 +4666,7 @@ export type GetUserCoursesQuery = { __typename?: 'Query', userCourses?: Array<{
export type GetUserLiveQuizzesQueryVariables = Exact<{ [key: string]: never; }>;
-export type GetUserLiveQuizzesQuery = { __typename?: 'Query', userLiveQuizzes?: Array<{ __typename?: 'LiveQuiz', id: string, name: string, displayName: string, namespace?: string | null, pointsMultiplier: number, accessMode: LiveQuizAccessMode, status: PublicationStatus, createdAt: any, updatedAt?: any | null, startedAt?: any | null, finishedAt?: any | null, numOfBlocks?: number | null, numOfInstances?: number | null, isGamificationEnabled: boolean, isConfusionFeedbackEnabled: boolean, isLiveQAEnabled: boolean, isModerationEnabled: boolean, blocks?: Array<{ __typename?: 'ElementBlock', id: number, order: number, status: ElementBlockStatus, numOfParticipants?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null, course?: { __typename?: 'Course', id: string, name: string, displayName: string } | null }> | null };
+export type GetUserLiveQuizzesQuery = { __typename?: 'Query', userLiveQuizzes?: Array<{ __typename?: 'LiveQuiz', id: string, name: string, displayName: string, namespace?: string | null, pointsMultiplier: number, accessMode: LiveQuizAccessMode, status: PublicationStatus, createdAt: any, updatedAt?: any | null, startedAt?: any | null, finishedAt?: any | null, numOfBlocks?: number | null, numOfInstances?: number | null, isGamificationEnabled: boolean, isConfusionFeedbackEnabled: boolean, isLiveQAEnabled: boolean, isModerationEnabled: boolean, blocks?: Array<{ __typename?: 'ElementBlock', id: number, order: number, status: ElementBlockStatus, numOfParticipants?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, solutions?: Array | null, restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', hasSampleSolution?: boolean | null, accuracy?: number | null, placeholder?: string | null, unit?: string | null, exactSolutions?: Array | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null, solutionRanges?: Array<{ __typename?: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null, answerCollectionSolutionIds?: Array | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }> | null, course?: { __typename?: 'Course', id: string, name: string, displayName: string } | null }> | null };
export type GetUserLoginsQueryVariables = Exact<{ [key: string]: never; }>;
@@ -4560,7 +4681,7 @@ export type GetUserMediaFilesQuery = { __typename?: 'Query', userMediaFiles?: Ar
export type GetUserQuestionsQueryVariables = Exact<{ [key: string]: never; }>;
-export type GetUserQuestionsQuery = { __typename?: 'Query', userQuestions?: Array<{ __typename: 'ChoicesElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, options: { __typename: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'ContentElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'FlashcardElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'FreeTextElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, options: { __typename: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, solutions?: Array | null, restrictions?: { __typename: 'FreeTextRestrictions', maxLength?: number | null } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'NumericalElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, options: { __typename: 'NumericalElementOptions', hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, placeholder?: string | null, accuracy?: number | null, unit?: string | null, exactSolutions?: Array | null, solutionRanges?: Array<{ __typename: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null, restrictions?: { __typename: 'NumericalRestrictions', min?: number | null, max?: number | null } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'SelectionElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, options: { __typename: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null }> | null };
+export type GetUserQuestionsQuery = { __typename?: 'Query', userQuestions?: Array<{ __typename: 'CaseStudyElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, options: { __typename: 'CaseStudyElementOptions', hasSampleSolution?: boolean | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'ChoicesElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, options: { __typename: 'ChoiceElementOptions', hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, correct?: boolean | null, feedback?: string | null, value: string }> }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'ContentElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'FlashcardElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'FreeTextElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, options: { __typename: 'FreeTextElementOptions', hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, solutions?: Array | null, restrictions?: { __typename: 'FreeTextRestrictions', maxLength?: number | null } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'NumericalElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, options: { __typename: 'NumericalElementOptions', hasSampleSolution?: boolean | null, hasAnswerFeedbacks?: boolean | null, placeholder?: string | null, accuracy?: number | null, unit?: string | null, exactSolutions?: Array | null, solutionRanges?: Array<{ __typename: 'NumericalSolutionRange', min?: number | null, max?: number | null }> | null, restrictions?: { __typename: 'NumericalRestrictions', min?: number | null, max?: number | null } | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null } | { __typename: 'SelectionElement', id: number, name: string, status: ElementStatus, type: ElementType, content: string, pointsMultiplier: number, version: number, isArchived?: boolean | null, isDeleted?: boolean | null, createdAt?: any | null, updatedAt?: any | null, options: { __typename: 'SelectionElementOptions', hasSampleSolution?: boolean | null, numberOfInputs?: number | null }, tags?: Array<{ __typename?: 'Tag', id: number, name: string, order: number }> | null }> | null };
export type GetUserRunningLiveQuizzesQueryVariables = Exact<{ [key: string]: never; }>;
@@ -4578,7 +4699,7 @@ export type GroupActivityDetailsQueryVariables = Exact<{
}>;
-export type GroupActivityDetailsQuery = { __typename?: 'Query', groupActivityDetails?: { __typename?: 'GroupActivityDetails', id: string, displayName: string, status: PublicationStatus, description?: string | null, scheduledStartAt?: any | null, scheduledEndAt?: any | null, clues: Array<{ __typename?: 'GroupActivityClue', id: number, displayName: string }>, stacks: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }>, course: { __typename?: 'Course', id: string, displayName: string, color: string }, group: { __typename?: 'ParticipantGroup', id: string, name: string, participants?: Array<{ __typename?: 'Participant', id: string, username: string, avatar?: string | null, isSelf?: boolean | null }> | null }, activityInstance?: { __typename?: 'GroupActivityInstance', id: number, decisionsSubmittedAt?: any | null, resultsComputedAt?: any | null, clues?: Array<{ __typename?: 'GroupActivityClueInstance', id: number, displayName: string, type: ParameterType, unit?: string | null, value?: string | null, participant: { __typename?: 'Participant', id: string, username: string, avatar?: string | null, isSelf?: boolean | null } }> | null, decisions?: Array<{ __typename?: 'GroupActivityDecision', instanceId: number, type: ElementType, freeTextResponse?: string | null, choicesResponse?: Array | null, numericalResponse?: number | null, contentResponse?: boolean | null, selectionResponse?: Array | null }> | null, results?: { __typename?: 'GroupActivityResults', passed: boolean, points: number, comment?: string | null, grading: Array<{ __typename?: 'GroupActivityGrading', instanceId: number, score: number, maxPoints: number, feedback?: string | null }> } | null } | null } | null };
+export type GroupActivityDetailsQuery = { __typename?: 'Query', groupActivityDetails?: { __typename?: 'GroupActivityDetails', id: string, displayName: string, status: PublicationStatus, description?: string | null, scheduledStartAt?: any | null, scheduledEndAt?: any | null, clues: Array<{ __typename?: 'GroupActivityClue', id: number, displayName: string }>, stacks: Array<{ __typename?: 'ElementStack', id: number, type: ElementStackType, displayName?: string | null, description?: string | null, order?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, type: ElementInstanceType, elementType: ElementType, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null }>, course: { __typename?: 'Course', id: string, displayName: string, color: string }, group: { __typename?: 'ParticipantGroup', id: string, name: string, participants?: Array<{ __typename?: 'Participant', id: string, username: string, avatar?: string | null, isSelf?: boolean | null }> | null }, activityInstance?: { __typename?: 'GroupActivityInstance', id: number, decisionsSubmittedAt?: any | null, resultsComputedAt?: any | null, clues?: Array<{ __typename?: 'GroupActivityClueInstance', id: number, displayName: string, type: ParameterType, unit?: string | null, value?: string | null, participant: { __typename?: 'Participant', id: string, username: string, avatar?: string | null, isSelf?: boolean | null } }> | null, decisions?: Array<{ __typename?: 'GroupActivityDecision', instanceId: number, type: ElementType, freeTextResponse?: string | null, choicesResponse?: Array | null, numericalResponse?: number | null, contentResponse?: boolean | null, selectionResponse?: Array | null }> | null, results?: { __typename?: 'GroupActivityResults', passed: boolean, points: number, comment?: string | null, grading: Array<{ __typename?: 'GroupActivityGrading', instanceId: number, score: number, maxPoints: number, feedback?: string | null }> } | null } | null } | null };
export type ParticipationsQueryVariables = Exact<{
endpoint?: InputMaybe;
@@ -4663,7 +4784,7 @@ export type RunningLiveQuizUpdatedSubscriptionVariables = Exact<{
}>;
-export type RunningLiveQuizUpdatedSubscription = { __typename?: 'Subscription', runningLiveQuizUpdated?: { __typename?: 'ElementBlock', id: number, status: ElementBlockStatus, expiresAt?: any | null, timeLimit?: number | null, randomSelection?: number | null, execution?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'SelectionAnswerCollection', id: number, entries?: Array<{ __typename?: 'SelectionAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null } | null };
+export type RunningLiveQuizUpdatedSubscription = { __typename?: 'Subscription', runningLiveQuizUpdated?: { __typename?: 'ElementBlock', id: number, status: ElementBlockStatus, expiresAt?: any | null, timeLimit?: number | null, randomSelection?: number | null, execution?: number | null, elements?: Array<{ __typename?: 'ElementInstance', id: number, elementData: { __typename: 'ChoicesElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'ChoiceElementOptions', displayMode: ElementDisplayMode, choices: Array<{ __typename?: 'Choice', ix: number, value: string }> } } | { __typename: 'ContentElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename?: 'FlashcardElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number } | { __typename: 'FreeTextElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'FreeTextElementOptions', restrictions?: { __typename?: 'FreeTextRestrictions', maxLength?: number | null } | null } } | { __typename: 'NumericalElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'NumericalElementOptions', accuracy?: number | null, placeholder?: string | null, unit?: string | null, restrictions?: { __typename?: 'NumericalRestrictions', min?: number | null, max?: number | null } | null } } | { __typename: 'SelectionElementData', id: string, elementId: number, name: string, type: ElementType, content: string, explanation?: string | null, pointsMultiplier: number, options: { __typename?: 'SelectionElementOptions', numberOfInputs?: number | null, answerCollection?: { __typename?: 'ElementOptionsAnswerCollection', id: number, entries?: Array<{ __typename?: 'ElementOptionsAnswerCollectionEntry', id: number, value: string }> | null } | null } } }> | null } | null };
export type SingleGroupActivityEndedSubscriptionVariables = Exact<{
activityId: Scalars['String']['input'];
@@ -4727,7 +4848,7 @@ export const DeleteLiveQuizDocument = {"kind":"Document","definitions":[{"kind":
export const DeleteMicroLearningDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"DeleteMicroLearning"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"deleteMicroLearning"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]} as unknown as DocumentNode;
export const DeleteParticipantAccountDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"DeleteParticipantAccount"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"deleteParticipantAccount"}}]}}]} as unknown as DocumentNode;
export const DeletePracticeQuizDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"DeletePracticeQuiz"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"deletePracticeQuiz"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]} as unknown as DocumentNode;
-export const DeleteQuestionDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"DeleteQuestion"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"deleteQuestion"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]}}]} as unknown as DocumentNode;
+export const DeleteQuestionDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"DeleteQuestion"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"deleteQuestion"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"CaseStudyElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]}}]} as unknown as DocumentNode;
export const DeleteTagDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"DeleteTag"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"deleteTag"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]} as unknown as DocumentNode;
export const DeleteUserLoginDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"DeleteUserLogin"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"deleteUserLogin"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]} as unknown as DocumentNode;
export const EditAnswerCollectionEntryDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"EditAnswerCollectionEntry"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"value"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"editAnswerCollectionEntry"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}},{"kind":"Argument","name":{"kind":"Name","value":"value"},"value":{"kind":"Variable","name":{"kind":"Name","value":"value"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}}]} as unknown as DocumentNode;
@@ -4763,6 +4884,7 @@ export const LoginParticipantWithLtiDocument = {"kind":"Document","definitions":
export const LoginUserTokenDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"LoginUserToken"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"shortname"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"token"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"loginUserToken"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"shortname"},"value":{"kind":"Variable","name":{"kind":"Name","value":"shortname"}}},{"kind":"Argument","name":{"kind":"Name","value":"token"},"value":{"kind":"Variable","name":{"kind":"Name","value":"token"}}}]}]}}]} as unknown as DocumentNode;
export const LogoutParticipantDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"LogoutParticipant"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"logoutParticipant"}}]}}]} as unknown as DocumentNode;
export const LogoutUserDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"LogoutUser"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"logoutUser"}}]}}]} as unknown as DocumentNode;
+export const ManipulateCaseStudyQuestionDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"ManipulateCaseStudyQuestion"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"status"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ElementStatus"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"name"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"content"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"explanation"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"options"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"OptionsCaseStudyInput"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"pointsMultiplier"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"tags"}},"type":{"kind":"ListType","type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"manipulateCaseStudyQuestion"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}},{"kind":"Argument","name":{"kind":"Name","value":"status"},"value":{"kind":"Variable","name":{"kind":"Name","value":"status"}}},{"kind":"Argument","name":{"kind":"Name","value":"name"},"value":{"kind":"Variable","name":{"kind":"Name","value":"name"}}},{"kind":"Argument","name":{"kind":"Name","value":"content"},"value":{"kind":"Variable","name":{"kind":"Name","value":"content"}}},{"kind":"Argument","name":{"kind":"Name","value":"explanation"},"value":{"kind":"Variable","name":{"kind":"Name","value":"explanation"}}},{"kind":"Argument","name":{"kind":"Name","value":"options"},"value":{"kind":"Variable","name":{"kind":"Name","value":"options"}}},{"kind":"Argument","name":{"kind":"Name","value":"pointsMultiplier"},"value":{"kind":"Variable","name":{"kind":"Name","value":"pointsMultiplier"}}},{"kind":"Argument","name":{"kind":"Name","value":"tags"},"value":{"kind":"Variable","name":{"kind":"Name","value":"tags"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"CaseStudyElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"answerCollection"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"collectionItemIds"}},{"kind":"Field","name":{"kind":"Name","value":"criteria"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}},{"kind":"Field","name":{"kind":"Name","value":"step"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}}]}},{"kind":"Field","name":{"kind":"Name","value":"cases"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"solutions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"itemId"}},{"kind":"Field","name":{"kind":"Name","value":"criteriaSolutions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"criterionId"}},{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}}]}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
export const ManipulateChoicesQuestionDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"ManipulateChoicesQuestion"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"status"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ElementStatus"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"type"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ElementType"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"name"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"content"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"explanation"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"options"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"OptionsChoicesInput"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"pointsMultiplier"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"tags"}},"type":{"kind":"ListType","type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"manipulateChoicesQuestion"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}},{"kind":"Argument","name":{"kind":"Name","value":"status"},"value":{"kind":"Variable","name":{"kind":"Name","value":"status"}}},{"kind":"Argument","name":{"kind":"Name","value":"type"},"value":{"kind":"Variable","name":{"kind":"Name","value":"type"}}},{"kind":"Argument","name":{"kind":"Name","value":"name"},"value":{"kind":"Variable","name":{"kind":"Name","value":"name"}}},{"kind":"Argument","name":{"kind":"Name","value":"content"},"value":{"kind":"Variable","name":{"kind":"Name","value":"content"}}},{"kind":"Argument","name":{"kind":"Name","value":"explanation"},"value":{"kind":"Variable","name":{"kind":"Name","value":"explanation"}}},{"kind":"Argument","name":{"kind":"Name","value":"options"},"value":{"kind":"Variable","name":{"kind":"Name","value":"options"}}},{"kind":"Argument","name":{"kind":"Name","value":"pointsMultiplier"},"value":{"kind":"Variable","name":{"kind":"Name","value":"pointsMultiplier"}}},{"kind":"Argument","name":{"kind":"Name","value":"tags"},"value":{"kind":"Variable","name":{"kind":"Name","value":"tags"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"hasAnswerFeedbacks"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"correct"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
export const ManipulateContentElementDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"ManipulateContentElement"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"status"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ElementStatus"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"name"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"content"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"pointsMultiplier"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"tags"}},"type":{"kind":"ListType","type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"manipulateContentElement"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}},{"kind":"Argument","name":{"kind":"Name","value":"status"},"value":{"kind":"Variable","name":{"kind":"Name","value":"status"}}},{"kind":"Argument","name":{"kind":"Name","value":"name"},"value":{"kind":"Variable","name":{"kind":"Name","value":"name"}}},{"kind":"Argument","name":{"kind":"Name","value":"content"},"value":{"kind":"Variable","name":{"kind":"Name","value":"content"}}},{"kind":"Argument","name":{"kind":"Name","value":"pointsMultiplier"},"value":{"kind":"Variable","name":{"kind":"Name","value":"pointsMultiplier"}}},{"kind":"Argument","name":{"kind":"Name","value":"tags"},"value":{"kind":"Variable","name":{"kind":"Name","value":"tags"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
export const ManipulateFlashcardElementDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"ManipulateFlashcardElement"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"status"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ElementStatus"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"name"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"content"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"explanation"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"pointsMultiplier"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"tags"}},"type":{"kind":"ListType","type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"manipulateFlashcardElement"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}},{"kind":"Argument","name":{"kind":"Name","value":"status"},"value":{"kind":"Variable","name":{"kind":"Name","value":"status"}}},{"kind":"Argument","name":{"kind":"Name","value":"name"},"value":{"kind":"Variable","name":{"kind":"Name","value":"name"}}},{"kind":"Argument","name":{"kind":"Name","value":"content"},"value":{"kind":"Variable","name":{"kind":"Name","value":"content"}}},{"kind":"Argument","name":{"kind":"Name","value":"explanation"},"value":{"kind":"Variable","name":{"kind":"Name","value":"explanation"}}},{"kind":"Argument","name":{"kind":"Name","value":"pointsMultiplier"},"value":{"kind":"Variable","name":{"kind":"Name","value":"pointsMultiplier"}}},{"kind":"Argument","name":{"kind":"Name","value":"tags"},"value":{"kind":"Variable","name":{"kind":"Name","value":"tags"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
@@ -4866,14 +4988,14 @@ export const GetSingleCourseDocument = {"kind":"Document","definitions":[{"kind"
export const GetSingleLiveQuizDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetSingleLiveQuiz"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"quizId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"liveQuiz"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"quizId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"blocks"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"timeLimit"}},{"kind":"Field","name":{"kind":"Name","value":"elements"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"elementType"}},{"kind":"FragmentSpread","name":{"kind":"Name","value":"ElementData"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"course"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"defaultPoints"}},{"kind":"Field","name":{"kind":"Name","value":"defaultCorrectPoints"}},{"kind":"Field","name":{"kind":"Name","value":"maxBonusPoints"}},{"kind":"Field","name":{"kind":"Name","value":"timeToZeroBonus"}},{"kind":"Field","name":{"kind":"Name","value":"isGamificationEnabled"}},{"kind":"Field","name":{"kind":"Name","value":"isLiveQAEnabled"}},{"kind":"Field","name":{"kind":"Name","value":"isConfusionFeedbackEnabled"}},{"kind":"Field","name":{"kind":"Name","value":"isModerationEnabled"}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"ElementData"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ElementInstance"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"elementData"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"correct"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"accuracy"}},{"kind":"Field","name":{"kind":"Name","value":"placeholder"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutionRanges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"exactSolutions"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"maxLength"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutions"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"numberOfInputs"}},{"kind":"Field","name":{"kind":"Name","value":"answerCollection"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"entries"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"answerCollectionSolutionIds"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}}]}}]}}]} as unknown as DocumentNode;
export const GetSingleMicroLearningDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetSingleMicroLearning"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"getSingleMicroLearning"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"MicroLearningData"}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"ElementData"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ElementInstance"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"elementData"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"correct"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"accuracy"}},{"kind":"Field","name":{"kind":"Name","value":"placeholder"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutionRanges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"exactSolutions"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"maxLength"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutions"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"numberOfInputs"}},{"kind":"Field","name":{"kind":"Name","value":"answerCollection"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"entries"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"answerCollectionSolutionIds"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"MicroLearningData"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"MicroLearning"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"scheduledStartAt"}},{"kind":"Field","name":{"kind":"Name","value":"scheduledEndAt"}},{"kind":"Field","name":{"kind":"Name","value":"course"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"color"}}]}},{"kind":"Field","name":{"kind":"Name","value":"stacks"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"elements"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"elementType"}},{"kind":"FragmentSpread","name":{"kind":"Name","value":"ElementData"}}]}}]}}]}}]} as unknown as DocumentNode;
export const GetSinglePracticeQuizDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetSinglePracticeQuiz"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"getSinglePracticeQuiz"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"PracticeQuizData"}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"ElementData"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ElementInstance"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"elementData"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"correct"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"accuracy"}},{"kind":"Field","name":{"kind":"Name","value":"placeholder"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutionRanges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"exactSolutions"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"maxLength"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutions"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"numberOfInputs"}},{"kind":"Field","name":{"kind":"Name","value":"answerCollection"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"entries"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"answerCollectionSolutionIds"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"PracticeQuizData"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"PracticeQuiz"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"resetTimeDays"}},{"kind":"Field","name":{"kind":"Name","value":"availableFrom"}},{"kind":"Field","name":{"kind":"Name","value":"orderType"}},{"kind":"Field","name":{"kind":"Name","value":"numOfStacks"}},{"kind":"Field","name":{"kind":"Name","value":"course"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"color"}}]}},{"kind":"Field","name":{"kind":"Name","value":"stacks"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"elements"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"elementType"}},{"kind":"FragmentSpread","name":{"kind":"Name","value":"ElementData"}}]}}]}}]}}]} as unknown as DocumentNode;
-export const GetSingleQuestionDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetSingleQuestion"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"question"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"hasAnswerFeedbacks"}},{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"correct"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"accuracy"}},{"kind":"Field","name":{"kind":"Name","value":"placeholder"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutionRanges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"exactSolutions"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"maxLength"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutions"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"numberOfInputs"}},{"kind":"Field","name":{"kind":"Name","value":"answerCollection"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"answerCollectionSolutionIds"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
+export const GetSingleQuestionDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetSingleQuestion"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"question"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"hasAnswerFeedbacks"}},{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"correct"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"accuracy"}},{"kind":"Field","name":{"kind":"Name","value":"placeholder"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutionRanges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"exactSolutions"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"maxLength"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutions"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"numberOfInputs"}},{"kind":"Field","name":{"kind":"Name","value":"answerCollection"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"answerCollectionSolutionIds"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"CaseStudyElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"answerCollection"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"collectionItemIds"}},{"kind":"Field","name":{"kind":"Name","value":"criteria"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}},{"kind":"Field","name":{"kind":"Name","value":"step"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}}]}},{"kind":"Field","name":{"kind":"Name","value":"cases"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"solutions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"itemId"}},{"kind":"Field","name":{"kind":"Name","value":"criteriaSolutions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"criterionId"}},{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}}]}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
export const GetStackElementFeedbacksDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetStackElementFeedbacks"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"instanceIds"}},"type":{"kind":"NonNullType","type":{"kind":"ListType","type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"getStackElementFeedbacks"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"elementInstanceIds"},"value":{"kind":"Variable","name":{"kind":"Name","value":"instanceIds"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"upvote"}},{"kind":"Field","name":{"kind":"Name","value":"downvote"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"elementInstanceId"}}]}}]}}]} as unknown as DocumentNode;
export const GetUnassignedLiveQuizzesDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetUnassignedLiveQuizzes"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"unassignedLiveQuizzes"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}}]}}]}}]} as unknown as DocumentNode;
export const GetUserCoursesDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetUserCourses"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userCourses"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"color"}},{"kind":"Field","name":{"kind":"Name","value":"pinCode"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isGamificationEnabled"}},{"kind":"Field","name":{"kind":"Name","value":"isGroupCreationEnabled"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"startDate"}},{"kind":"Field","name":{"kind":"Name","value":"endDate"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}}]}}]}}]} as unknown as DocumentNode;
export const GetUserLiveQuizzesDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetUserLiveQuizzes"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userLiveQuizzes"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"namespace"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"accessMode"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"startedAt"}},{"kind":"Field","name":{"kind":"Name","value":"finishedAt"}},{"kind":"Field","name":{"kind":"Name","value":"numOfBlocks"}},{"kind":"Field","name":{"kind":"Name","value":"numOfInstances"}},{"kind":"Field","name":{"kind":"Name","value":"isGamificationEnabled"}},{"kind":"Field","name":{"kind":"Name","value":"isConfusionFeedbackEnabled"}},{"kind":"Field","name":{"kind":"Name","value":"isLiveQAEnabled"}},{"kind":"Field","name":{"kind":"Name","value":"isModerationEnabled"}},{"kind":"Field","name":{"kind":"Name","value":"blocks"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"numOfParticipants"}},{"kind":"Field","name":{"kind":"Name","value":"elements"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"elementType"}},{"kind":"FragmentSpread","name":{"kind":"Name","value":"ElementData"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"course"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}}]}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"ElementData"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ElementInstance"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"elementData"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"correct"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"accuracy"}},{"kind":"Field","name":{"kind":"Name","value":"placeholder"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutionRanges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"exactSolutions"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"maxLength"}}]}},{"kind":"Field","name":{"kind":"Name","value":"solutions"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"numberOfInputs"}},{"kind":"Field","name":{"kind":"Name","value":"answerCollection"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"entries"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"answerCollectionSolutionIds"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}}]}}]}}]} as unknown as DocumentNode;
export const GetUserLoginsDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetUserLogins"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userLogins"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"scope"}},{"kind":"Field","name":{"kind":"Name","value":"lastLoginAt"}},{"kind":"Field","name":{"kind":"Name","value":"user"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"shortname"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"userScope"}}]}}]} as unknown as DocumentNode;
export const GetUserMediaFilesDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetUserMediaFiles"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userMediaFiles"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"href"}}]}}]}}]} as unknown as DocumentNode;
-export const GetUserQuestionsDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetUserQuestions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userQuestions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"hasAnswerFeedbacks"}},{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"correct"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"hasAnswerFeedbacks"}},{"kind":"Field","name":{"kind":"Name","value":"placeholder"}},{"kind":"Field","name":{"kind":"Name","value":"accuracy"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"solutionRanges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"exactSolutions"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"hasAnswerFeedbacks"}},{"kind":"Field","name":{"kind":"Name","value":"solutions"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"maxLength"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"numberOfInputs"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
+export const GetUserQuestionsDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetUserQuestions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userQuestions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"hasAnswerFeedbacks"}},{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"correct"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"hasAnswerFeedbacks"}},{"kind":"Field","name":{"kind":"Name","value":"placeholder"}},{"kind":"Field","name":{"kind":"Name","value":"accuracy"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"solutionRanges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}},{"kind":"Field","name":{"kind":"Name","value":"exactSolutions"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"hasAnswerFeedbacks"}},{"kind":"Field","name":{"kind":"Name","value":"solutions"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"maxLength"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}},{"kind":"Field","name":{"kind":"Name","value":"numberOfInputs"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"CaseStudyElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"hasSampleSolution"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElement"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"version"}},{"kind":"Field","name":{"kind":"Name","value":"isArchived"}},{"kind":"Field","name":{"kind":"Name","value":"isDeleted"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
export const GetUserRunningLiveQuizzesDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetUserRunningLiveQuizzes"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userRunningLiveQuizzes"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}}]}}]}}]} as unknown as DocumentNode;
export const GetUserTagsDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetUserTags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userTags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"order"}}]}}]}}]} as unknown as DocumentNode;
export const GroupActivityDetailsDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GroupActivityDetails"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"activityId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"groupId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"groupActivityDetails"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"activityId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"activityId"}}},{"kind":"Argument","name":{"kind":"Name","value":"groupId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"groupId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"scheduledStartAt"}},{"kind":"Field","name":{"kind":"Name","value":"scheduledEndAt"}},{"kind":"Field","name":{"kind":"Name","value":"clues"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}}]}},{"kind":"Field","name":{"kind":"Name","value":"stacks"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"elements"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"elementType"}},{"kind":"FragmentSpread","name":{"kind":"Name","value":"ElementDataWithoutSolutions"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"course"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"color"}}]}},{"kind":"Field","name":{"kind":"Name","value":"group"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"participants"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"username"}},{"kind":"Field","name":{"kind":"Name","value":"avatar"}},{"kind":"Field","name":{"kind":"Name","value":"isSelf"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"activityInstance"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"clues"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"value"}},{"kind":"Field","name":{"kind":"Name","value":"participant"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"username"}},{"kind":"Field","name":{"kind":"Name","value":"avatar"}},{"kind":"Field","name":{"kind":"Name","value":"isSelf"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"decisionsSubmittedAt"}},{"kind":"Field","name":{"kind":"Name","value":"decisions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"instanceId"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"freeTextResponse"}},{"kind":"Field","name":{"kind":"Name","value":"choicesResponse"}},{"kind":"Field","name":{"kind":"Name","value":"numericalResponse"}},{"kind":"Field","name":{"kind":"Name","value":"contentResponse"}},{"kind":"Field","name":{"kind":"Name","value":"selectionResponse"}}]}},{"kind":"Field","name":{"kind":"Name","value":"resultsComputedAt"}},{"kind":"Field","name":{"kind":"Name","value":"results"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"passed"}},{"kind":"Field","name":{"kind":"Name","value":"points"}},{"kind":"Field","name":{"kind":"Name","value":"comment"}},{"kind":"Field","name":{"kind":"Name","value":"grading"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"instanceId"}},{"kind":"Field","name":{"kind":"Name","value":"score"}},{"kind":"Field","name":{"kind":"Name","value":"maxPoints"}},{"kind":"Field","name":{"kind":"Name","value":"feedback"}}]}}]}}]}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"ElementDataWithoutSolutions"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ElementInstance"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"elementData"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChoicesElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"displayMode"}},{"kind":"Field","name":{"kind":"Name","value":"choices"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ix"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NumericalElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"accuracy"}},{"kind":"Field","name":{"kind":"Name","value":"placeholder"}},{"kind":"Field","name":{"kind":"Name","value":"unit"}},{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"min"}},{"kind":"Field","name":{"kind":"Name","value":"max"}}]}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FreeTextElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"restrictions"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"maxLength"}}]}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"SelectionElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}},{"kind":"Field","name":{"kind":"Name","value":"options"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"numberOfInputs"}},{"kind":"Field","name":{"kind":"Name","value":"answerCollection"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"entries"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"value"}}]}}]}}]}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"FlashcardElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}},{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ContentElementData"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"__typename"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"elementId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"content"}},{"kind":"Field","name":{"kind":"Name","value":"explanation"}},{"kind":"Field","name":{"kind":"Name","value":"pointsMultiplier"}}]}}]}}]}}]} as unknown as DocumentNode;
@@ -4901,6 +5023,7 @@ export const UpdateParticipantAvatarDocument = {"kind":"Document","definitions":
const result: PossibleTypesResultData = {
"possibleTypes": {
"Element": [
+ "CaseStudyElement",
"ChoicesElement",
"ContentElement",
"FlashcardElement",
diff --git a/packages/graphql/src/public/client.json b/packages/graphql/src/public/client.json
index ee84780379..027f469d8a 100644
--- a/packages/graphql/src/public/client.json
+++ b/packages/graphql/src/public/client.json
@@ -37,7 +37,7 @@
"DeleteMicroLearning": "21de9b40a085a42b0d47e8d0d6fa3453826dcfe297fc4ad0bbb75970d63baa5c",
"DeleteParticipantAccount": "ca30e981ed46d11a3f0ec826b4fa333c5621a5cf4bf512496dadbc1f39967377",
"DeletePracticeQuiz": "82ffabb50f040318c4bfa36c356516a4d68865fe0ccb4d2ba1bc2dd8df68d800",
- "DeleteQuestion": "4b74b40edab56c91912e6ce3fc7572f33171912b19c2a2b40e2a785a45e52c4b",
+ "DeleteQuestion": "90cc0ecb00c5fe308042869b95fb0a239f483a7bf5c566d508e410d2ea0ac869",
"DeleteTag": "a682e0285401766d6fea37da6742ccd8bf288de7996c6898db22344959cd14a6",
"DeleteUserLogin": "0439c352372a7b374ab58927cc48b8af8af84c844883b6edd37200c744405ad8",
"EditAnswerCollectionEntry": "bcad3bd58c0f8a018e638a6530cd225798cc46c474c4ab6924790212a4759c49",
@@ -73,6 +73,7 @@
"LoginUserToken": "ba803ed2e2b6274726c67ca6acbd16db53de497563e2d5e6bac12deb20183505",
"LogoutParticipant": "06ea6d3178bda9afde98d0443789b4cd1826e924c5e0323e1d8ae3c1f817e4f7",
"LogoutUser": "64dc553c0b2953399d4881413dfb8df434ada0fc84ae4b39dabcd1890b1fb4cf",
+ "ManipulateCaseStudyQuestion": "f2c2e53a9b87bfbb39e7a7f8ed5eeb4e2341e7e57427347f3818ad4ee64b9b40",
"ManipulateChoicesQuestion": "2c5b9f41a07fc8cc7149de2fd3780e32323e7ab73c574981514985748bbd5ca7",
"ManipulateContentElement": "cb73f258d6b9530a46dba26ead96a2abe460548e30165f85e41a415d00875a9a",
"ManipulateFlashcardElement": "33ca5ab338763c4fcf6029901cc7a824872d54ccad7cfc87b03535903e5012a8",
@@ -176,14 +177,14 @@
"GetSingleLiveQuiz": "3a55d9276923ed08a031396d2be938c320ad9b444046a30330cc986c0711e746",
"GetSingleMicroLearning": "7a691800cff4546be66ac8ce3ec7eaedd15572b71b10dc43a0386c2fc4368166",
"GetSinglePracticeQuiz": "1116ca50c5e50345c34a66f460394947f20857730e0db72cec5e398715b94134",
- "GetSingleQuestion": "b89ac5217a2061db58f12d50ab28c665561744397ccf8999fe81a6bacdccc88e",
+ "GetSingleQuestion": "924a7c7ba149758f19079448f9f826a8ef7ae07ae3720889a256e57a83b875ef",
"GetStackElementFeedbacks": "8cbf597af706f68361dc9ff756ff6d59c888506c70b3514484a09aa2e609139c",
"GetUnassignedLiveQuizzes": "8efbb0afbb0826d5e237cbaa660f62c201d339b74d1907336bb8a0a5db519f73",
"GetUserCourses": "b388f07ace660915ce9ea4006847f9367251d494e7d0e387fa61ef50684fd9a4",
"GetUserLiveQuizzes": "c156532f183500b91331566b2ac91ee0eea413058d9f95aa1c37eb2e463717dc",
"GetUserLogins": "7b289235e4ea8e3fb2073ae175b1b900a77cb6c1aae9b12580cc08be825ad1aa",
"GetUserMediaFiles": "af5513e8c56c1805060f0e2854a4ada90c4484d09481f2ba2a59136cb731cd63",
- "GetUserQuestions": "717cefc5c59d719f7fcf69bf4c50a3edf9d8717c4586b895e08b9315b105b1c4",
+ "GetUserQuestions": "e7629ecfa5ba734bb3136e95d5805e34fbd3876ef4b75e1dfc6d12b5dcce477d",
"GetUserRunningLiveQuizzes": "756ada2de676dfd25fd4f9dd38e1255725a557ad945b379ea7e0a191df9135d0",
"GetUserTags": "cfc63cede68a95d79f5fe5a79c7f6275abae9c47b25fcfc665cc8d3e00bac3db",
"GroupActivityDetails": "74c0072a6cc68ee925eb840e9503c3d2cf0babbb546d7d2c52ad05e2005e0379",
diff --git a/packages/graphql/src/public/schema.graphql b/packages/graphql/src/public/schema.graphql
index a93fa7b5ac..ca155959eb 100644
--- a/packages/graphql/src/public/schema.graphql
+++ b/packages/graphql/src/public/schema.graphql
@@ -158,6 +158,87 @@ type AwardEntry {
type: String!
}
+type CaseStudyCase {
+ description: String!
+ order: Int!
+ solutions: [CaseStudyCaseSolution!]
+ title: String!
+}
+
+type CaseStudyCaseCriterionSolution {
+ criterionId: String!
+ max: Float!
+ min: Float!
+}
+
+input CaseStudyCaseInput {
+ description: String!
+ order: Int!
+ solutions: [CaseStudySolutionInput!]
+ title: String!
+}
+
+type CaseStudyCaseSolution {
+ criteriaSolutions: [CaseStudyCaseCriterionSolution!]!
+ itemId: Int!
+}
+
+input CaseStudyCriteriaSolutionInput {
+ criterionId: String!
+ max: Float!
+ min: Float!
+}
+
+type CaseStudyCriterion {
+ id: String!
+ max: Float!
+ min: Float!
+ name: String!
+ order: Int!
+ step: Float!
+ unit: String
+}
+
+input CaseStudyCriterionInput {
+ id: String!
+ max: Float!
+ min: Float!
+ name: String!
+ order: Int!
+ step: Float!
+ unit: String
+}
+
+type CaseStudyElement {
+ content: String!
+ createdAt: Date
+ explanation: String
+ id: Int!
+ isArchived: Boolean
+ isDeleted: Boolean
+ name: String!
+ options: CaseStudyElementOptions!
+ pointsMultiplier: Int!
+ status: ElementStatus!
+ tags: [Tag!]
+ type: ElementType!
+ updatedAt: Date
+ version: Int!
+}
+
+type CaseStudyElementOptions {
+ answerCollection: ElementOptionsAnswerCollection
+ cases: [CaseStudyCase!]
+ collectionItemIds: [Int!]
+ criteria: [CaseStudyCriterion!]
+ hasSampleSolution: Boolean
+}
+
+input CaseStudySolutionInput {
+ criteriaSolutions: [CaseStudyCriteriaSolutionInput!]!
+ itemId: Int!
+}
+
type CatalogObject {
access: ObjectAccess!
id: Int
@@ -415,7 +496,7 @@ A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the `dat
"""
scalar Date
-union Element = ChoicesElement | ContentElement | FlashcardElement | FreeTextElement | NumericalElement | SelectionElement
+union Element = CaseStudyElement | ChoicesElement | ContentElement | FlashcardElement | FreeTextElement | NumericalElement | SelectionElement
type ElementBlock {
elements: [ElementInstance!]
@@ -484,6 +565,16 @@ enum ElementInstanceType {
PRACTICE_QUIZ
}
+type ElementOptionsAnswerCollection {
+ entries: [ElementOptionsAnswerCollectionEntry!]
+ id: Int!
+}
+
+type ElementOptionsAnswerCollectionEntry {
+ id: Int!
+ value: String!
+}
+
enum ElementOrderType {
SEQUENTIAL
SPACED_REPETITION
@@ -1113,6 +1204,7 @@ type Mutation {
loginUserToken(shortname: String!, token: String!): ID
logoutParticipant: ID
logoutUser: ID
+ manipulateCaseStudyQuestion(content: String, explanation: String, id: Int, name: String, options: OptionsCaseStudyInput, pointsMultiplier: Int, status: ElementStatus, tags: [String!]): Element
manipulateChoicesQuestion(content: String, explanation: String, id: Int, name: String, options: OptionsChoicesInput, pointsMultiplier: Int, status: ElementStatus, tags: [String!], type: ElementType!): Element
manipulateContentElement(content: String, id: Int, name: String, pointsMultiplier: Int, status: ElementStatus, tags: [String!]): Element
manipulateFlashcardElement(content: String, explanation: String, id: Int, name: String, pointsMultiplier: Int, status: ElementStatus, tags: [String!]): Element
@@ -1284,6 +1376,14 @@ type ObjectSharingRequest {
userShortname: String!
}
+input OptionsCaseStudyInput {
+ answerCollection: Int
+ cases: [CaseStudyCaseInput!]
+ collectionItemIds: [Int!]
+ criteria: [CaseStudyCriterionInput!]
+ hasSampleSolution: Boolean
+}
+
input OptionsChoicesInput {
choices: [ChoiceInput!]
displayMode: ElementDisplayMode
@@ -1591,16 +1691,6 @@ input ResponseInput {
value: String
}
-type SelectionAnswerCollection {
- entries: [SelectionAnswerCollectionEntry!]
- id: Int!
-}
-
-type SelectionAnswerCollectionEntry {
- id: Int!
- value: String!
-}
-
type SelectionElement {
content: String!
createdAt: Date
@@ -1641,9 +1731,8 @@ type SelectionElementInstanceEvaluation {
}
type SelectionElementOptions {
- answerCollection: SelectionAnswerCollection
+ answerCollection: ElementOptionsAnswerCollection
answerCollectionSolutionIds: [Int!]
- hasAnswerFeedbacks: Boolean
hasSampleSolution: Boolean
numberOfInputs: Int
}
diff --git a/packages/graphql/src/public/server.json b/packages/graphql/src/public/server.json
index 3e92bd926b..bb2704976c 100644
--- a/packages/graphql/src/public/server.json
+++ b/packages/graphql/src/public/server.json
@@ -37,7 +37,7 @@
"21de9b40a085a42b0d47e8d0d6fa3453826dcfe297fc4ad0bbb75970d63baa5c": "mutation DeleteMicroLearning($id: String!) {\n deleteMicroLearning(id: $id) {\n id\n __typename\n }\n}",
"ca30e981ed46d11a3f0ec826b4fa333c5621a5cf4bf512496dadbc1f39967377": "mutation DeleteParticipantAccount {\n deleteParticipantAccount\n}",
"82ffabb50f040318c4bfa36c356516a4d68865fe0ccb4d2ba1bc2dd8df68d800": "mutation DeletePracticeQuiz($id: String!) {\n deletePracticeQuiz(id: $id) {\n id\n __typename\n }\n}",
- "4b74b40edab56c91912e6ce3fc7572f33171912b19c2a2b40e2a785a45e52c4b": "mutation DeleteQuestion($id: Int!) {\n deleteQuestion(id: $id) {\n ... on ChoicesElement {\n id\n __typename\n }\n ... on NumericalElement {\n id\n __typename\n }\n ... on FreeTextElement {\n id\n __typename\n }\n ... on SelectionElement {\n id\n __typename\n }\n ... on FlashcardElement {\n id\n __typename\n }\n ... on ContentElement {\n id\n __typename\n }\n __typename\n }\n}",
+ "90cc0ecb00c5fe308042869b95fb0a239f483a7bf5c566d508e410d2ea0ac869": "mutation DeleteQuestion($id: Int!) {\n deleteQuestion(id: $id) {\n ... on ChoicesElement {\n id\n __typename\n }\n ... on NumericalElement {\n id\n __typename\n }\n ... on FreeTextElement {\n id\n __typename\n }\n ... on SelectionElement {\n id\n __typename\n }\n ... on CaseStudyElement {\n id\n __typename\n }\n ... on FlashcardElement {\n id\n __typename\n }\n ... on ContentElement {\n id\n __typename\n }\n __typename\n }\n}",
"a682e0285401766d6fea37da6742ccd8bf288de7996c6898db22344959cd14a6": "mutation DeleteTag($id: Int!) {\n deleteTag(id: $id) {\n id\n __typename\n }\n}",
"0439c352372a7b374ab58927cc48b8af8af84c844883b6edd37200c744405ad8": "mutation DeleteUserLogin($id: String!) {\n deleteUserLogin(id: $id) {\n id\n __typename\n }\n}",
"bcad3bd58c0f8a018e638a6530cd225798cc46c474c4ab6924790212a4759c49": "mutation EditAnswerCollectionEntry($id: Int!, $value: String!) {\n editAnswerCollectionEntry(id: $id, value: $value) {\n id\n value\n __typename\n }\n}",
@@ -73,6 +73,7 @@
"ba803ed2e2b6274726c67ca6acbd16db53de497563e2d5e6bac12deb20183505": "mutation LoginUserToken($shortname: String!, $token: String!) {\n loginUserToken(shortname: $shortname, token: $token)\n}",
"06ea6d3178bda9afde98d0443789b4cd1826e924c5e0323e1d8ae3c1f817e4f7": "mutation LogoutParticipant {\n logoutParticipant\n}",
"64dc553c0b2953399d4881413dfb8df434ada0fc84ae4b39dabcd1890b1fb4cf": "mutation LogoutUser {\n logoutUser\n}",
+ "f2c2e53a9b87bfbb39e7a7f8ed5eeb4e2341e7e57427347f3818ad4ee64b9b40": "mutation ManipulateCaseStudyQuestion($id: Int, $status: ElementStatus, $name: String, $content: String, $explanation: String, $options: OptionsCaseStudyInput, $pointsMultiplier: Int, $tags: [String!]) {\n manipulateCaseStudyQuestion(\n id: $id\n status: $status\n name: $name\n content: $content\n explanation: $explanation\n options: $options\n pointsMultiplier: $pointsMultiplier\n tags: $tags\n ) {\n __typename\n ... on CaseStudyElement {\n id\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n answerCollection {\n id\n __typename\n }\n collectionItemIds\n criteria {\n id\n name\n order\n min\n max\n step\n unit\n __typename\n }\n cases {\n title\n description\n order\n solutions {\n itemId\n criteriaSolutions {\n criterionId\n min\n max\n __typename\n }\n __typename\n }\n __typename\n }\n __typename\n }\n tags {\n id\n name\n __typename\n }\n __typename\n }\n }\n}",
"2c5b9f41a07fc8cc7149de2fd3780e32323e7ab73c574981514985748bbd5ca7": "mutation ManipulateChoicesQuestion($id: Int, $status: ElementStatus, $type: ElementType!, $name: String, $content: String, $explanation: String, $options: OptionsChoicesInput, $pointsMultiplier: Int, $tags: [String!]) {\n manipulateChoicesQuestion(\n id: $id\n status: $status\n type: $type\n name: $name\n content: $content\n explanation: $explanation\n options: $options\n pointsMultiplier: $pointsMultiplier\n tags: $tags\n ) {\n __typename\n ... on ChoicesElement {\n id\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n displayMode\n hasSampleSolution\n hasAnswerFeedbacks\n choices {\n ix\n correct\n feedback\n value\n __typename\n }\n __typename\n }\n tags {\n id\n name\n __typename\n }\n __typename\n }\n }\n}",
"cb73f258d6b9530a46dba26ead96a2abe460548e30165f85e41a415d00875a9a": "mutation ManipulateContentElement($id: Int, $status: ElementStatus, $name: String, $content: String, $pointsMultiplier: Int, $tags: [String!]) {\n manipulateContentElement(\n id: $id\n status: $status\n name: $name\n content: $content\n pointsMultiplier: $pointsMultiplier\n tags: $tags\n ) {\n __typename\n ... on ContentElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n tags {\n id\n name\n __typename\n }\n __typename\n }\n }\n}",
"33ca5ab338763c4fcf6029901cc7a824872d54ccad7cfc87b03535903e5012a8": "mutation ManipulateFlashcardElement($id: Int, $status: ElementStatus, $name: String, $content: String, $explanation: String, $pointsMultiplier: Int, $tags: [String!]) {\n manipulateFlashcardElement(\n id: $id\n status: $status\n name: $name\n content: $content\n explanation: $explanation\n pointsMultiplier: $pointsMultiplier\n tags: $tags\n ) {\n __typename\n ... on FlashcardElement {\n id\n name\n status\n type\n content\n explanation\n pointsMultiplier\n tags {\n id\n name\n __typename\n }\n __typename\n }\n }\n}",
@@ -176,14 +177,14 @@
"3a55d9276923ed08a031396d2be938c320ad9b444046a30330cc986c0711e746": "fragment ElementData on ElementInstance {\n elementData {\n ... on ChoicesElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n displayMode\n choices {\n ix\n correct\n feedback\n value\n __typename\n }\n __typename\n }\n }\n ... on NumericalElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n accuracy\n placeholder\n unit\n restrictions {\n min\n max\n __typename\n }\n solutionRanges {\n min\n max\n __typename\n }\n exactSolutions\n __typename\n }\n }\n ... on FreeTextElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n restrictions {\n maxLength\n __typename\n }\n solutions\n __typename\n }\n }\n ... on SelectionElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n numberOfInputs\n answerCollection {\n id\n entries {\n id\n value\n __typename\n }\n __typename\n }\n answerCollectionSolutionIds\n __typename\n }\n }\n ... on FlashcardElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n }\n ... on ContentElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n }\n __typename\n }\n __typename\n}\nquery GetSingleLiveQuiz($quizId: String!) {\n liveQuiz(id: $quizId) {\n id\n name\n displayName\n description\n blocks {\n id\n order\n status\n timeLimit\n elements {\n id\n type\n elementType\n ...ElementData\n __typename\n }\n __typename\n }\n course {\n id\n __typename\n }\n pointsMultiplier\n defaultPoints\n defaultCorrectPoints\n maxBonusPoints\n timeToZeroBonus\n isGamificationEnabled\n isLiveQAEnabled\n isConfusionFeedbackEnabled\n isModerationEnabled\n __typename\n }\n}",
"7a691800cff4546be66ac8ce3ec7eaedd15572b71b10dc43a0386c2fc4368166": "fragment MicroLearningData on MicroLearning {\n id\n name\n status\n displayName\n description\n pointsMultiplier\n scheduledStartAt\n scheduledEndAt\n course {\n id\n displayName\n color\n __typename\n }\n stacks {\n id\n type\n displayName\n description\n order\n elements {\n id\n type\n elementType\n ...ElementData\n __typename\n }\n __typename\n }\n __typename\n}\nfragment ElementData on ElementInstance {\n elementData {\n ... on ChoicesElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n displayMode\n choices {\n ix\n correct\n feedback\n value\n __typename\n }\n __typename\n }\n }\n ... on NumericalElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n accuracy\n placeholder\n unit\n restrictions {\n min\n max\n __typename\n }\n solutionRanges {\n min\n max\n __typename\n }\n exactSolutions\n __typename\n }\n }\n ... on FreeTextElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n restrictions {\n maxLength\n __typename\n }\n solutions\n __typename\n }\n }\n ... on SelectionElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n numberOfInputs\n answerCollection {\n id\n entries {\n id\n value\n __typename\n }\n __typename\n }\n answerCollectionSolutionIds\n __typename\n }\n }\n ... on FlashcardElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n }\n ... on ContentElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n }\n __typename\n }\n __typename\n}\nquery GetSingleMicroLearning($id: String!) {\n getSingleMicroLearning(id: $id) {\n ...MicroLearningData\n __typename\n }\n}",
"1116ca50c5e50345c34a66f460394947f20857730e0db72cec5e398715b94134": "fragment PracticeQuizData on PracticeQuiz {\n id\n status\n name\n displayName\n description\n pointsMultiplier\n resetTimeDays\n availableFrom\n orderType\n numOfStacks\n course {\n id\n displayName\n color\n __typename\n }\n stacks {\n id\n type\n displayName\n description\n order\n elements {\n id\n type\n elementType\n ...ElementData\n __typename\n }\n __typename\n }\n __typename\n}\nfragment ElementData on ElementInstance {\n elementData {\n ... on ChoicesElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n displayMode\n choices {\n ix\n correct\n feedback\n value\n __typename\n }\n __typename\n }\n }\n ... on NumericalElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n accuracy\n placeholder\n unit\n restrictions {\n min\n max\n __typename\n }\n solutionRanges {\n min\n max\n __typename\n }\n exactSolutions\n __typename\n }\n }\n ... on FreeTextElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n restrictions {\n maxLength\n __typename\n }\n solutions\n __typename\n }\n }\n ... on SelectionElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n numberOfInputs\n answerCollection {\n id\n entries {\n id\n value\n __typename\n }\n __typename\n }\n answerCollectionSolutionIds\n __typename\n }\n }\n ... on FlashcardElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n }\n ... on ContentElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n }\n __typename\n }\n __typename\n}\nquery GetSinglePracticeQuiz($id: String!) {\n getSinglePracticeQuiz(id: $id) {\n ...PracticeQuizData\n __typename\n }\n}",
- "b89ac5217a2061db58f12d50ab28c665561744397ccf8999fe81a6bacdccc88e": "query GetSingleQuestion($id: Int!) {\n question(id: $id) {\n __typename\n ... on ChoicesElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n __typename\n hasSampleSolution\n hasAnswerFeedbacks\n displayMode\n choices {\n ix\n correct\n feedback\n value\n __typename\n }\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on NumericalElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n accuracy\n placeholder\n unit\n restrictions {\n min\n max\n __typename\n }\n solutionRanges {\n min\n max\n __typename\n }\n exactSolutions\n __typename\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on FreeTextElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n restrictions {\n maxLength\n __typename\n }\n solutions\n __typename\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on SelectionElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n numberOfInputs\n answerCollection {\n id\n __typename\n }\n answerCollectionSolutionIds\n __typename\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on FlashcardElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on ContentElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n }\n}",
+ "924a7c7ba149758f19079448f9f826a8ef7ae07ae3720889a256e57a83b875ef": "query GetSingleQuestion($id: Int!) {\n question(id: $id) {\n __typename\n ... on ChoicesElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n __typename\n hasSampleSolution\n hasAnswerFeedbacks\n displayMode\n choices {\n ix\n correct\n feedback\n value\n __typename\n }\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on NumericalElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n accuracy\n placeholder\n unit\n restrictions {\n min\n max\n __typename\n }\n solutionRanges {\n min\n max\n __typename\n }\n exactSolutions\n __typename\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on FreeTextElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n restrictions {\n maxLength\n __typename\n }\n solutions\n __typename\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on SelectionElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n numberOfInputs\n answerCollection {\n id\n __typename\n }\n answerCollectionSolutionIds\n __typename\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on CaseStudyElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n answerCollection {\n id\n __typename\n }\n collectionItemIds\n criteria {\n id\n name\n order\n min\n max\n step\n unit\n __typename\n }\n cases {\n title\n description\n order\n solutions {\n itemId\n criteriaSolutions {\n criterionId\n min\n max\n __typename\n }\n __typename\n }\n __typename\n }\n __typename\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on FlashcardElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on ContentElement {\n id\n version\n name\n status\n type\n content\n explanation\n pointsMultiplier\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n }\n}",
"8cbf597af706f68361dc9ff756ff6d59c888506c70b3514484a09aa2e609139c": "query GetStackElementFeedbacks($instanceIds: [Int!]!) {\n getStackElementFeedbacks(elementInstanceIds: $instanceIds) {\n id\n upvote\n downvote\n feedback\n elementInstanceId\n __typename\n }\n}",
"8efbb0afbb0826d5e237cbaa660f62c201d339b74d1907336bb8a0a5db519f73": "query GetUnassignedLiveQuizzes {\n unassignedLiveQuizzes {\n id\n name\n status\n __typename\n }\n}",
"b388f07ace660915ce9ea4006847f9367251d494e7d0e387fa61ef50684fd9a4": "query GetUserCourses {\n userCourses {\n id\n name\n displayName\n color\n pinCode\n isArchived\n isGamificationEnabled\n isGroupCreationEnabled\n description\n startDate\n endDate\n createdAt\n updatedAt\n __typename\n }\n}",
"c156532f183500b91331566b2ac91ee0eea413058d9f95aa1c37eb2e463717dc": "fragment ElementData on ElementInstance {\n elementData {\n ... on ChoicesElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n displayMode\n choices {\n ix\n correct\n feedback\n value\n __typename\n }\n __typename\n }\n }\n ... on NumericalElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n accuracy\n placeholder\n unit\n restrictions {\n min\n max\n __typename\n }\n solutionRanges {\n min\n max\n __typename\n }\n exactSolutions\n __typename\n }\n }\n ... on FreeTextElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n restrictions {\n maxLength\n __typename\n }\n solutions\n __typename\n }\n }\n ... on SelectionElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n hasSampleSolution\n numberOfInputs\n answerCollection {\n id\n entries {\n id\n value\n __typename\n }\n __typename\n }\n answerCollectionSolutionIds\n __typename\n }\n }\n ... on FlashcardElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n }\n ... on ContentElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n }\n __typename\n }\n __typename\n}\nquery GetUserLiveQuizzes {\n userLiveQuizzes {\n id\n name\n displayName\n namespace\n pointsMultiplier\n accessMode\n status\n createdAt\n updatedAt\n startedAt\n finishedAt\n numOfBlocks\n numOfInstances\n isGamificationEnabled\n isConfusionFeedbackEnabled\n isLiveQAEnabled\n isModerationEnabled\n blocks {\n id\n order\n status\n numOfParticipants\n elements {\n id\n type\n elementType\n ...ElementData\n __typename\n }\n __typename\n }\n course {\n id\n name\n displayName\n __typename\n }\n __typename\n }\n}",
"7b289235e4ea8e3fb2073ae175b1b900a77cb6c1aae9b12580cc08be825ad1aa": "query GetUserLogins {\n userLogins {\n id\n name\n scope\n lastLoginAt\n user {\n id\n shortname\n __typename\n }\n __typename\n }\n userScope\n}",
"af5513e8c56c1805060f0e2854a4ada90c4484d09481f2ba2a59136cb731cd63": "query GetUserMediaFiles {\n userMediaFiles {\n id\n name\n type\n href\n __typename\n }\n}",
- "717cefc5c59d719f7fcf69bf4c50a3edf9d8717c4586b895e08b9315b105b1c4": "query GetUserQuestions {\n userQuestions {\n __typename\n ... on ChoicesElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n options {\n __typename\n hasSampleSolution\n hasAnswerFeedbacks\n displayMode\n choices {\n ix\n correct\n feedback\n value\n __typename\n }\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on NumericalElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n options {\n __typename\n hasSampleSolution\n hasAnswerFeedbacks\n placeholder\n accuracy\n unit\n solutionRanges {\n __typename\n min\n max\n }\n exactSolutions\n restrictions {\n __typename\n min\n max\n }\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on FreeTextElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n options {\n __typename\n hasSampleSolution\n hasAnswerFeedbacks\n solutions\n restrictions {\n __typename\n maxLength\n }\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on SelectionElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n options {\n __typename\n hasSampleSolution\n numberOfInputs\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on FlashcardElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on ContentElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n }\n}",
+ "e7629ecfa5ba734bb3136e95d5805e34fbd3876ef4b75e1dfc6d12b5dcce477d": "query GetUserQuestions {\n userQuestions {\n __typename\n ... on ChoicesElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n options {\n __typename\n hasSampleSolution\n hasAnswerFeedbacks\n displayMode\n choices {\n ix\n correct\n feedback\n value\n __typename\n }\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on NumericalElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n options {\n __typename\n hasSampleSolution\n hasAnswerFeedbacks\n placeholder\n accuracy\n unit\n solutionRanges {\n __typename\n min\n max\n }\n exactSolutions\n restrictions {\n __typename\n min\n max\n }\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on FreeTextElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n options {\n __typename\n hasSampleSolution\n hasAnswerFeedbacks\n solutions\n restrictions {\n __typename\n maxLength\n }\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on SelectionElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n options {\n __typename\n hasSampleSolution\n numberOfInputs\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on CaseStudyElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n options {\n __typename\n hasSampleSolution\n }\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on FlashcardElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n ... on ContentElement {\n id\n name\n status\n type\n content\n pointsMultiplier\n version\n isArchived\n isDeleted\n createdAt\n updatedAt\n tags {\n id\n name\n order\n __typename\n }\n __typename\n }\n }\n}",
"756ada2de676dfd25fd4f9dd38e1255725a557ad945b379ea7e0a191df9135d0": "query GetUserRunningLiveQuizzes {\n userRunningLiveQuizzes {\n id\n name\n __typename\n }\n}",
"cfc63cede68a95d79f5fe5a79c7f6275abae9c47b25fcfc665cc8d3e00bac3db": "query GetUserTags {\n userTags {\n id\n name\n order\n __typename\n }\n}",
"74c0072a6cc68ee925eb840e9503c3d2cf0babbb546d7d2c52ad05e2005e0379": "fragment ElementDataWithoutSolutions on ElementInstance {\n elementData {\n ... on ChoicesElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n displayMode\n choices {\n ix\n value\n __typename\n }\n __typename\n }\n }\n ... on NumericalElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n accuracy\n placeholder\n unit\n restrictions {\n min\n max\n __typename\n }\n __typename\n }\n }\n ... on FreeTextElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n restrictions {\n maxLength\n __typename\n }\n __typename\n }\n }\n ... on SelectionElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n options {\n numberOfInputs\n answerCollection {\n id\n entries {\n id\n value\n __typename\n }\n __typename\n }\n __typename\n }\n }\n ... on FlashcardElementData {\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n __typename\n }\n ... on ContentElementData {\n __typename\n id\n elementId\n name\n type\n content\n explanation\n pointsMultiplier\n }\n __typename\n }\n __typename\n}\nquery GroupActivityDetails($activityId: String!, $groupId: String!) {\n groupActivityDetails(activityId: $activityId, groupId: $groupId) {\n id\n displayName\n status\n description\n scheduledStartAt\n scheduledEndAt\n clues {\n id\n displayName\n __typename\n }\n stacks {\n id\n type\n displayName\n description\n order\n elements {\n id\n type\n elementType\n ...ElementDataWithoutSolutions\n __typename\n }\n __typename\n }\n course {\n id\n displayName\n color\n __typename\n }\n group {\n id\n name\n participants {\n id\n username\n avatar\n isSelf\n __typename\n }\n __typename\n }\n activityInstance {\n id\n clues {\n id\n displayName\n type\n unit\n value\n participant {\n id\n username\n avatar\n isSelf\n __typename\n }\n __typename\n }\n decisionsSubmittedAt\n decisions {\n instanceId\n type\n freeTextResponse\n choicesResponse\n numericalResponse\n contentResponse\n selectionResponse\n __typename\n }\n resultsComputedAt\n results {\n passed\n points\n comment\n grading {\n instanceId\n score\n maxPoints\n feedback\n __typename\n }\n __typename\n }\n __typename\n }\n __typename\n }\n}",
diff --git a/packages/graphql/src/schema/elementData.ts b/packages/graphql/src/schema/elementData.ts
index dda6f2ac00..f988582ed1 100644
--- a/packages/graphql/src/schema/elementData.ts
+++ b/packages/graphql/src/schema/elementData.ts
@@ -2,7 +2,14 @@ import * as DB from '@klicker-uzh/prisma'
import {
DisplayMode,
type BaseElementData,
+ type CaseStudyCaseCriterionSolution as CaseStudyCaseCriterionSolutionType,
+ type CaseStudyCaseSolution as CaseStudyCaseSolutionType,
+ type CaseStudyCase as CaseStudyCaseType,
+ type CaseStudyCriterion as CaseStudyCriterionType,
type Choice as ChoiceType,
+ type ElementOptionsAnswerCollectionEntry as ElementOptionsAnswerCollectionEntryType,
+ type ElementOptionsAnswerCollection as ElementOptionsAnswerCollectionType,
+ type ElementOptionsCaseStudy as ElementOptionsCaseStudyType,
type ElementOptionsChoices as ElementOptionsChoicesType,
type ElementOptionsFreeText as ElementOptionsFreeTextType,
type ElementOptionsNumerical as ElementOptionsNumericalType,
@@ -10,8 +17,6 @@ import {
type FreeTextRestrictions as FreeTextRestrictionsType,
type NumericalRestrictions as NumericalRestrictionsType,
type NumericalSolutionRange as NumericalSolutionRangeType,
- type SelectionAnswerCollectionEntry as SelectionAnswerCollectionEntryType,
- type SelectionAnswerCollection as SelectionAnswerCollectionType,
} from '@klicker-uzh/types'
import builder from '../builder.js'
@@ -126,9 +131,9 @@ export const FreeTextElementOptions = builder
}),
})
-export const SelectionAnswerCollectionEntry = builder
- .objectRef(
- 'SelectionAnswerCollectionEntry'
+export const ElementOptionsAnswerCollectionEntry = builder
+ .objectRef(
+ 'ElementOptionsAnswerCollectionEntry'
)
.implement({
fields: (t) => ({
@@ -137,13 +142,15 @@ export const SelectionAnswerCollectionEntry = builder
}),
})
-export const SelectionAnswerCollection = builder
- .objectRef('SelectionAnswerCollection')
+export const ElementOptionsAnswerCollection = builder
+ .objectRef(
+ 'ElementOptionsAnswerCollection'
+ )
.implement({
fields: (t) => ({
id: t.exposeInt('id'),
entries: t.expose('entries', {
- type: [SelectionAnswerCollectionEntry],
+ type: [ElementOptionsAnswerCollectionEntry],
nullable: true,
}),
}),
@@ -156,12 +163,9 @@ export const SelectionElementOptions = builder
hasSampleSolution: t.exposeBoolean('hasSampleSolution', {
nullable: true,
}),
- hasAnswerFeedbacks: t.exposeBoolean('hasAnswerFeedbacks', {
- nullable: true,
- }),
numberOfInputs: t.exposeInt('numberOfInputs', { nullable: true }),
answerCollection: t.expose('answerCollection', {
- type: SelectionAnswerCollection,
+ type: ElementOptionsAnswerCollection,
nullable: true,
}),
answerCollectionSolutionIds: t.exposeIntList(
@@ -172,6 +176,79 @@ export const SelectionElementOptions = builder
),
}),
})
+
+export const CaseStudyCriterion = builder
+ .objectRef('CaseStudyCriterion')
+ .implement({
+ fields: (t) => ({
+ id: t.exposeString('id'),
+ name: t.exposeString('name'),
+ order: t.exposeInt('order'),
+ min: t.exposeFloat('min'),
+ max: t.exposeFloat('max'),
+ step: t.exposeFloat('step'),
+ unit: t.exposeString('unit', { nullable: true }),
+ }),
+ })
+
+export const CaseStudyCaseCriterionSolution = builder
+ .objectRef(
+ 'CaseStudyCaseCriterionSolution'
+ )
+ .implement({
+ fields: (t) => ({
+ criterionId: t.exposeString('criterionId'),
+ min: t.exposeFloat('min'),
+ max: t.exposeFloat('max'),
+ }),
+ })
+
+export const CaseStudyCaseSolution = builder
+ .objectRef('CaseStudyCaseSolution')
+ .implement({
+ fields: (t) => ({
+ itemId: t.exposeInt('itemId'),
+ criteriaSolutions: t.expose('criteriaSolutions', {
+ type: [CaseStudyCaseCriterionSolution],
+ }),
+ }),
+ })
+
+export const CaseStudyCase = builder
+ .objectRef('CaseStudyCase')
+ .implement({
+ fields: (t) => ({
+ title: t.exposeString('title'),
+ description: t.exposeString('description'),
+ order: t.exposeInt('order'),
+ solutions: t.expose('solutions', {
+ type: [CaseStudyCaseSolution],
+ nullable: true,
+ }),
+ }),
+ })
+
+export const CaseStudyElementOptions = builder
+ .objectRef('CaseStudyElementOptions')
+ .implement({
+ fields: (t) => ({
+ hasSampleSolution: t.exposeBoolean('hasSampleSolution', {
+ nullable: true,
+ }),
+ answerCollection: t.expose('answerCollection', {
+ type: ElementOptionsAnswerCollection,
+ nullable: true,
+ }),
+ collectionItemIds: t.exposeIntList('collectionItemIds', {
+ nullable: true,
+ }),
+ criteria: t.expose('criteria', {
+ type: [CaseStudyCriterion],
+ nullable: true,
+ }),
+ cases: t.expose('cases', { type: [CaseStudyCase], nullable: true }),
+ }),
+ })
// #endregion
// ----- ELEMENT DATA INTERFACE -----
diff --git a/packages/graphql/src/schema/mutation.ts b/packages/graphql/src/schema/mutation.ts
index 9633a65bdf..5a500022c0 100644
--- a/packages/graphql/src/schema/mutation.ts
+++ b/packages/graphql/src/schema/mutation.ts
@@ -54,6 +54,7 @@ import {
ArchivedElement,
Element,
ElementInstance,
+ OptionsCaseStudyInput,
OptionsChoicesInput,
OptionsFreeTextInput,
OptionsNumericalInput,
@@ -1014,6 +1015,29 @@ export const Mutation = builder.mutationType({
},
}),
+ manipulateCaseStudyQuestion: t.withAuth(asUserFullAccess).field({
+ nullable: true,
+ type: Element,
+ args: {
+ id: t.arg.int({ required: false }),
+ status: t.arg({ type: ElementStatus, required: false }),
+ name: t.arg.string({ required: false }),
+ content: t.arg.string({ required: false }),
+ explanation: t.arg.string({ required: false }),
+ pointsMultiplier: t.arg.int({ required: false }),
+ tags: t.arg.stringList({ required: false }),
+ options: t.arg({
+ type: OptionsCaseStudyInput,
+ }),
+ },
+ resolve(_, args, ctx) {
+ return QuestionService.manipulateQuestion(
+ { ...args, type: DB.ElementType.CASE_STUDY },
+ ctx
+ )
+ },
+ }),
+
updateElementInstances: t.withAuth(asUserFullAccess).field({
type: [ElementInstance],
args: {
diff --git a/packages/graphql/src/schema/question.ts b/packages/graphql/src/schema/question.ts
index 70fcf9afe5..87db091677 100644
--- a/packages/graphql/src/schema/question.ts
+++ b/packages/graphql/src/schema/question.ts
@@ -1,5 +1,6 @@
import * as DB from '@klicker-uzh/prisma'
import type {
+ ElementOptionsCaseStudy as ElementOptionsCaseStudyType,
ElementOptionsChoices as ElementOptionsChoicesType,
ElementOptionsFreeText as ElementOptionsFreeTextType,
ElementOptionsNumerical as ElementOptionsNumericalType,
@@ -24,6 +25,7 @@ import type {
import builder from '../builder.js'
import { ElementFeedbackRef } from './analytics.js'
import {
+ CaseStudyElementOptions,
ChoiceElementOptions,
ElementData,
ElementDisplayMode,
@@ -146,6 +148,67 @@ export const OptionsSelectionInput = builder.inputType(
}
)
+export const CaseStudyCriterionInput = builder.inputType(
+ 'CaseStudyCriterionInput',
+ {
+ fields: (t) => ({
+ id: t.string({ required: true }),
+ name: t.string({ required: true }),
+ order: t.int({ required: true }),
+ min: t.float({ required: true }),
+ max: t.float({ required: true }),
+ step: t.float({ required: true }),
+ unit: t.string({ required: false }),
+ }),
+ }
+)
+
+export const CaseStudyCriteriaSolutionInput = builder.inputType(
+ 'CaseStudyCriteriaSolutionInput',
+ {
+ fields: (t) => ({
+ criterionId: t.string({ required: true }),
+ min: t.float({ required: true }),
+ max: t.float({ required: true }),
+ }),
+ }
+)
+
+export const CaseStudySolutionInput = builder.inputType(
+ 'CaseStudySolutionInput',
+ {
+ fields: (t) => ({
+ itemId: t.int({ required: true }),
+ criteriaSolutions: t.field({
+ type: [CaseStudyCriteriaSolutionInput],
+ required: true,
+ }),
+ }),
+ }
+)
+
+export const CaseStudyCaseInput = builder.inputType('CaseStudyCaseInput', {
+ fields: (t) => ({
+ title: t.string({ required: true }),
+ description: t.string({ required: true }),
+ order: t.int({ required: true }),
+ solutions: t.field({ type: [CaseStudySolutionInput], required: false }),
+ }),
+})
+
+export const OptionsCaseStudyInput = builder.inputType(
+ 'OptionsCaseStudyInput',
+ {
+ fields: (t) => ({
+ hasSampleSolution: t.boolean({ required: false }),
+ answerCollection: t.int({ required: false }),
+ collectionItemIds: t.intList({ required: false }),
+ criteria: t.field({ type: [CaseStudyCriterionInput], required: false }),
+ cases: t.field({ type: [CaseStudyCaseInput], required: false }),
+ }),
+ }
+)
+
// ----- SINGLE QUESTION RESPONSE INTERFACES -----
// #region
export const SingleQuestionResponseChoices = builder
@@ -475,6 +538,18 @@ export const SelectionElement = builder
}),
})
+export interface ICaseStudyElement extends IBaseElementProps {
+ options: ElementOptionsCaseStudyType
+}
+export const CaseStudyElement = builder
+ .objectRef('CaseStudyElement')
+ .implement({
+ fields: (t) => ({
+ ...sharedElementProps(t),
+ options: t.expose('options', { type: CaseStudyElementOptions }),
+ }),
+ })
+
export interface IFlashcardElement extends IBaseElementProps {}
export const FlashcardElement = builder
.objectRef('FlashcardElement')
@@ -501,6 +576,7 @@ export const Element = builder.unionType('Element', {
FlashcardElement,
ContentElement,
SelectionElement,
+ CaseStudyElement,
],
resolveType: (element) => {
switch (element.type) {
@@ -518,6 +594,8 @@ export const Element = builder.unionType('Element', {
return ContentElement
case DB.ElementType.SELECTION:
return SelectionElement
+ case DB.ElementType.CASE_STUDY:
+ return CaseStudyElement
}
},
})
diff --git a/packages/graphql/src/services/groups.ts b/packages/graphql/src/services/groups.ts
index 57caa68ad3..de4843de42 100644
--- a/packages/graphql/src/services/groups.ts
+++ b/packages/graphql/src/services/groups.ts
@@ -1007,7 +1007,7 @@ export async function manipulateGroupActivity(
entries: true,
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
diff --git a/packages/graphql/src/services/liveQuizzes.ts b/packages/graphql/src/services/liveQuizzes.ts
index ad82aee620..12f68294dc 100644
--- a/packages/graphql/src/services/liveQuizzes.ts
+++ b/packages/graphql/src/services/liveQuizzes.ts
@@ -350,7 +350,7 @@ export async function manipulateLiveQuiz(
entries: true,
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
diff --git a/packages/graphql/src/services/microLearning.ts b/packages/graphql/src/services/microLearning.ts
index 9e5f06843e..411c9f21e9 100644
--- a/packages/graphql/src/services/microLearning.ts
+++ b/packages/graphql/src/services/microLearning.ts
@@ -245,7 +245,7 @@ export async function manipulateMicroLearning(
entries: true,
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
diff --git a/packages/graphql/src/services/practiceQuizzes.ts b/packages/graphql/src/services/practiceQuizzes.ts
index 451e48c846..1a6377dc49 100644
--- a/packages/graphql/src/services/practiceQuizzes.ts
+++ b/packages/graphql/src/services/practiceQuizzes.ts
@@ -248,7 +248,7 @@ export async function manipulatePracticeQuiz(
entries: true,
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
diff --git a/packages/graphql/src/services/questions.ts b/packages/graphql/src/services/questions.ts
index 01a087ddcd..5acd9dbcf8 100644
--- a/packages/graphql/src/services/questions.ts
+++ b/packages/graphql/src/services/questions.ts
@@ -59,7 +59,7 @@ export async function getSingleQuestion(
order: 'asc',
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
@@ -67,14 +67,18 @@ export async function getSingleQuestion(
return null
}
+ const selectedItemIds = question.answerCollectionItems.map((item) => item.id)
+
return {
...question,
options: {
...question.options,
+ // SE / CS elements
answerCollection: { id: question.answerCollectionId, entries: [] },
- answerCollectionSolutionIds: question.answerCollectionSolutions.map(
- (sol) => sol.id
- ),
+ // SE elements
+ answerCollectionSolutionIds: selectedItemIds,
+ // CS elements
+ collectionItemIds: selectedItemIds,
},
}
}
@@ -98,7 +102,7 @@ export async function getArtificialElementInstance(
entries: true,
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
@@ -176,7 +180,7 @@ export async function manipulateQuestion(
order: 'asc',
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
: undefined
@@ -188,12 +192,12 @@ export async function manipulateQuestion(
.map((tag) => tag.name)
}
- // determine which answer options are no longer considered to be correct
+ // (SE only) determine which answer options are no longer considered to be correct
if (
type === DB.ElementType.SELECTION &&
- questionPrev?.answerCollectionSolutions
+ questionPrev?.answerCollectionItems
) {
- const prevSolutionsIds = questionPrev.answerCollectionSolutions.map(
+ const prevSolutionsIds = questionPrev.answerCollectionItems.map(
(sol) => sol.id
)
collectionAnswersToDisconnect = options?.hasSampleSolution
@@ -201,6 +205,20 @@ export async function manipulateQuestion(
: prevSolutionsIds
}
+ // (CS only) determine which answer options are no longer used in the case study
+ // (similar to selection questions, but not dependent on definition of a sample solution)
+ if (
+ type === DB.ElementType.CASE_STUDY &&
+ questionPrev?.answerCollectionItems
+ ) {
+ const previousItemIds = questionPrev.answerCollectionItems.map(
+ (item) => item.id
+ )
+ collectionAnswersToDisconnect = previousItemIds.filter((item) =>
+ options?.collectionItemIds?.includes(item)
+ )
+ }
+
const question = await ctx.prisma.element.upsert({
where: {
id: typeof id !== 'undefined' && id !== null ? id : -1,
@@ -234,7 +252,7 @@ export async function manipulateQuestion(
},
// connect the selection question to the corresponding answer collection
answerCollection:
- type === DB.ElementType.SELECTION
+ type === DB.ElementType.SELECTION || type === DB.ElementType.CASE_STUDY
? {
connect: {
id: options!.answerCollection!,
@@ -242,12 +260,16 @@ export async function manipulateQuestion(
}
: undefined,
// connect the answer collection options to the selection question if sample solution is enabled
- answerCollectionSolutions:
- type === DB.ElementType.SELECTION && options?.hasSampleSolution
+ answerCollectionItems:
+ type === DB.ElementType.SELECTION && options!.hasSampleSolution
? {
- connect: options.correctAnswers!.map((id) => ({ id })),
+ connect: options!.correctAnswers!.map((id) => ({ id })),
}
- : undefined,
+ : type === DB.ElementType.CASE_STUDY
+ ? {
+ connect: options!.collectionItemIds!.map((id) => ({ id })),
+ }
+ : undefined,
},
update: {
status: status ?? undefined,
@@ -285,7 +307,7 @@ export async function manipulateQuestion(
},
// connect new answer collection and disconnect previous one if they are not the same
answerCollection:
- type === DB.ElementType.SELECTION
+ type === DB.ElementType.SELECTION || type === DB.ElementType.CASE_STUDY
? {
connect: {
id: options!.answerCollection!,
@@ -293,12 +315,15 @@ export async function manipulateQuestion(
}
: undefined,
// connect or disconnect the answer collection options if sample solution is enabled
- answerCollectionSolutions:
- type === DB.ElementType.SELECTION
+ answerCollectionItems:
+ type === DB.ElementType.SELECTION || type === DB.ElementType.CASE_STUDY
? {
- connect: options?.hasSampleSolution
- ? options.correctAnswers!.map((id) => ({ id }))
- : undefined,
+ connect:
+ type === DB.ElementType.SELECTION && options?.hasSampleSolution
+ ? options.correctAnswers!.map((id) => ({ id }))
+ : type === DB.ElementType.CASE_STUDY
+ ? options?.collectionItemIds?.map((id) => ({ id }))
+ : undefined,
disconnect: collectionAnswersToDisconnect.map((id) => ({ id })),
}
: undefined,
@@ -309,7 +334,7 @@ export async function manipulateQuestion(
order: 'asc',
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
@@ -319,7 +344,7 @@ export async function manipulateQuestion(
})
if (
- type === DB.ElementType.SELECTION &&
+ (type === DB.ElementType.SELECTION || type === DB.ElementType.CASE_STUDY) &&
typeof options?.answerCollection !== 'undefined'
) {
ctx.emitter.emit('invalidate', {
@@ -332,10 +357,14 @@ export async function manipulateQuestion(
...question,
options: {
...question.options,
+ // SE / CS elements
answerCollection: { id: question.answerCollectionId, entries: [] },
- answerCollectionSolutionIds: question.answerCollectionSolutions.map(
+ // SE elements
+ answerCollectionSolutionIds: question.answerCollectionItems.map(
(sol) => sol.id
),
+ // CS elements
+ collectionItemIds: question.answerCollectionItems.map((item) => item.id),
},
}
}
@@ -355,7 +384,7 @@ export async function deleteQuestion(
answerCollection: {
disconnect: true,
},
- answerCollectionSolutions: {
+ answerCollectionItems: {
set: [],
},
},
@@ -594,7 +623,7 @@ export async function updateElementInstances(
entries: true,
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
diff --git a/packages/graphql/src/services/resources.ts b/packages/graphql/src/services/resources.ts
index 05aa0c1dee..781d719abc 100644
--- a/packages/graphql/src/services/resources.ts
+++ b/packages/graphql/src/services/resources.ts
@@ -97,7 +97,7 @@ export async function getAnswerCollections(ctx: ContextWithUser) {
include: {
_count: {
select: {
- solutionUsages: true,
+ itemUsages: true,
},
},
},
@@ -153,7 +153,7 @@ export async function getAnswerCollections(ctx: ContextWithUser) {
_count: {
select: {
// solution usage information is only relevant for write access
- solutionUsages: true,
+ itemUsages: true,
},
},
},
@@ -182,7 +182,7 @@ export async function getAnswerCollections(ctx: ContextWithUser) {
: collection.catalogCollectionId,
entries: collection.entries.map((entry) => ({
...entry,
- numSolutionUsages: entry._count?.solutionUsages,
+ numSolutionUsages: entry._count?.itemUsages,
})),
isOwner: true,
isEditable: true,
diff --git a/packages/graphql/src/services/stacks.ts b/packages/graphql/src/services/stacks.ts
index d07d3fdc0e..4c372bc31a 100644
--- a/packages/graphql/src/services/stacks.ts
+++ b/packages/graphql/src/services/stacks.ts
@@ -29,6 +29,7 @@ import type {
ChoicesElementData,
ContentElementData,
ElementInstanceResults,
+ ElementOptionsAnswerCollection,
ElementOptionsChoices,
ElementOptionsFreeText,
ElementOptionsNumerical,
@@ -46,7 +47,6 @@ import type {
InstanceEvaluationNumerical,
InstanceEvaluationSelection,
NumericalElementData,
- SelectionAnswerCollection,
SelectionElementData,
SingleQuestionResponse,
SingleQuestionResponseChoices,
@@ -3021,7 +3021,7 @@ function combineSelectionResults({
}: {
results: ElementResultsSelection
anonymousResults: ElementResultsSelection
- answerOptions: SelectionAnswerCollection
+ answerOptions: ElementOptionsAnswerCollection
}) {
return answerOptions.entries.map((option) => ({
answerId: option.id,
diff --git a/packages/prisma/src/data/data/TEST.ts b/packages/prisma/src/data/data/TEST.ts
index 994ebe0713..56f3ff961f 100644
--- a/packages/prisma/src/data/data/TEST.ts
+++ b/packages/prisma/src/data/data/TEST.ts
@@ -276,7 +276,7 @@ export const QUESTIONS = [
numberOfInputs: 2,
},
collectionName: 'Restricted Collection (Animals)',
- answerCollectionSolutions: ['Bear', 'Cat', 'Dog'],
+ answerCollectionItems: ['Bear', 'Cat', 'Dog'],
},
]
diff --git a/packages/prisma/src/data/helpers.ts b/packages/prisma/src/data/helpers.ts
index bf596859b6..4202a7cbae 100644
--- a/packages/prisma/src/data/helpers.ts
+++ b/packages/prisma/src/data/helpers.ts
@@ -219,7 +219,7 @@ export function prepareQuestion({
id: collectionId,
},
},
- answerCollectionSolutions: {
+ answerCollectionItems: {
connect: correctOptionIds.map((id) => ({
id,
})),
diff --git a/packages/prisma/src/data/seedTEST.ts b/packages/prisma/src/data/seedTEST.ts
index a91cafacae..49f4867d90 100644
--- a/packages/prisma/src/data/seedTEST.ts
+++ b/packages/prisma/src/data/seedTEST.ts
@@ -227,7 +227,7 @@ async function seedTest(prisma: Prisma.PrismaClient) {
let collectionId: number | undefined = undefined
let correctOptionIds: number[] = []
- if (data.collectionName && data.answerCollectionSolutions) {
+ if (data.collectionName && data.answerCollectionItems) {
const collection = answerCollections.find(
(ac) => ac.name === data.collectionName
)
@@ -239,7 +239,7 @@ async function seedTest(prisma: Prisma.PrismaClient) {
}
collectionId = collection.id
- correctOptionIds = data.answerCollectionSolutions.map((solValue) => {
+ correctOptionIds = data.answerCollectionItems.map((solValue) => {
const entry = collection.entries.find(
(entry) => entry.value === solValue
)
@@ -267,7 +267,7 @@ async function seedTest(prisma: Prisma.PrismaClient) {
entries: true,
},
},
- answerCollectionSolutions: true,
+ answerCollectionItems: true,
},
})
})
@@ -931,7 +931,7 @@ async function seedTest(prisma: Prisma.PrismaClient) {
(q) => q.type === Prisma.ElementType.SELECTION
)
const selectionResponse =
- selectionQuestion?.answerCollectionSolutions.map((sol) => sol.id) ?? []
+ selectionQuestion?.answerCollectionItems.map((sol) => sol.id) ?? []
const groupActivityDecisions = groupActivityCompleted.stacks[0]!.elements.map(
(element) => {
diff --git a/packages/prisma/src/prisma/migrations/20250123200426_case_study_element_type/migration.sql b/packages/prisma/src/prisma/migrations/20250123200426_case_study_element_type/migration.sql
deleted file mode 100644
index 034eaf5beb..0000000000
--- a/packages/prisma/src/prisma/migrations/20250123200426_case_study_element_type/migration.sql
+++ /dev/null
@@ -1,2 +0,0 @@
--- AlterEnum
-ALTER TYPE "ElementType" ADD VALUE 'CASE_STUDY';
diff --git a/packages/prisma/src/prisma/migrations/20250128121845_case_study_element_type/migration.sql b/packages/prisma/src/prisma/migrations/20250128121845_case_study_element_type/migration.sql
new file mode 100644
index 0000000000..eb39f4e34c
--- /dev/null
+++ b/packages/prisma/src/prisma/migrations/20250128121845_case_study_element_type/migration.sql
@@ -0,0 +1,34 @@
+/*
+ Warnings:
+
+ - You are about to drop the `_ElementAnswerCollectionSolutions` table. If the table is not empty, all the data it contains will be lost.
+
+*/
+-- AlterEnum
+ALTER TYPE "ElementType" ADD VALUE 'CASE_STUDY';
+
+-- DropForeignKey
+ALTER TABLE "_ElementAnswerCollectionSolutions" DROP CONSTRAINT "_ElementAnswerCollectionSolutions_A_fkey";
+
+-- DropForeignKey
+ALTER TABLE "_ElementAnswerCollectionSolutions" DROP CONSTRAINT "_ElementAnswerCollectionSolutions_B_fkey";
+
+-- DropTable
+DROP TABLE "_ElementAnswerCollectionSolutions";
+
+-- CreateTable
+CREATE TABLE "_ElementAnswerCollectionUsedItems" (
+ "A" INTEGER NOT NULL,
+ "B" INTEGER NOT NULL,
+
+ CONSTRAINT "_ElementAnswerCollectionUsedItems_AB_pkey" PRIMARY KEY ("A","B")
+);
+
+-- CreateIndex
+CREATE INDEX "_ElementAnswerCollectionUsedItems_B_index" ON "_ElementAnswerCollectionUsedItems"("B");
+
+-- AddForeignKey
+ALTER TABLE "_ElementAnswerCollectionUsedItems" ADD CONSTRAINT "_ElementAnswerCollectionUsedItems_A_fkey" FOREIGN KEY ("A") REFERENCES "AnswerCollectionEntry"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "_ElementAnswerCollectionUsedItems" ADD CONSTRAINT "_ElementAnswerCollectionUsedItems_B_fkey" FOREIGN KEY ("B") REFERENCES "Element"("id") ON DELETE CASCADE ON UPDATE CASCADE;
diff --git a/packages/prisma/src/prisma/schema/element.prisma b/packages/prisma/src/prisma/schema/element.prisma
index 85289a35e0..9b2ba2e90d 100644
--- a/packages/prisma/src/prisma/schema/element.prisma
+++ b/packages/prisma/src/prisma/schema/element.prisma
@@ -47,9 +47,9 @@ model Element {
elementInstances ElementInstance[]
feedbacks ElementFeedback[]
- answerCollectionSolutions AnswerCollectionEntry[] @relation("ElementAnswerCollectionSolutions")
- answerCollection AnswerCollection? @relation(fields: [answerCollectionId], references: [id], onDelete: SetNull, onUpdate: Cascade)
- answerCollectionId Int?
+ answerCollectionItems AnswerCollectionEntry[] @relation("ElementAnswerCollectionUsedItems")
+ answerCollection AnswerCollection? @relation(fields: [answerCollectionId], references: [id], onDelete: SetNull, onUpdate: Cascade)
+ answerCollectionId Int?
permissions Permission[]
diff --git a/packages/prisma/src/prisma/schema/resources.prisma b/packages/prisma/src/prisma/schema/resources.prisma
index b9f9fb39b5..7d8c30f97e 100644
--- a/packages/prisma/src/prisma/schema/resources.prisma
+++ b/packages/prisma/src/prisma/schema/resources.prisma
@@ -38,7 +38,7 @@ model AnswerCollectionEntry {
collectionId Int
// elements where this entry is used as a sample solution -> deletion not allowed
- solutionUsages Element[] @relation("ElementAnswerCollectionSolutions")
+ itemUsages Element[] @relation("ElementAnswerCollectionUsedItems")
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts
index 6adad15582..23b5a1a91e 100644
--- a/packages/types/src/index.ts
+++ b/packages/types/src/index.ts
@@ -234,20 +234,20 @@ export interface ElementOptionsFreeText extends BaseElementOptions {
solutions?: string[] | null
}
-export type SelectionAnswerCollectionEntry = {
+export type ElementOptionsAnswerCollectionEntry = {
id: number
value: string
}
-export interface SelectionAnswerCollection {
+export interface ElementOptionsAnswerCollection {
id: number
- entries: SelectionAnswerCollectionEntry[]
+ entries: ElementOptionsAnswerCollectionEntry[]
}
export interface ElementOptionsSelection extends BaseElementOptions {
numberOfInputs: number
- answerCollection?: SelectionAnswerCollection
- answerCollectionSolutionIds?: number[] | null
+ answerCollection?: ElementOptionsAnswerCollection // instance only - link on element
+ answerCollectionSolutionIds?: number[] | null // instance only - link on element
}
export type CaseStudyCriterion = {
@@ -260,7 +260,7 @@ export type CaseStudyCriterion = {
unit?: string | null
}
-export type CaseStudyCaseCriteriaSolution = {
+export type CaseStudyCaseCriterionSolution = {
criterionId: string
min: number
max: number
@@ -268,7 +268,7 @@ export type CaseStudyCaseCriteriaSolution = {
export type CaseStudyCaseSolution = {
itemId: number
- criteriaSolutions: CaseStudyCaseCriteriaSolution[]
+ criteriaSolutions: CaseStudyCaseCriterionSolution[]
}
export type CaseStudyCase = {
@@ -279,10 +279,10 @@ export type CaseStudyCase = {
}
export interface ElementOptionsCaseStudy extends BaseElementOptions {
- answerCollection?: SelectionAnswerCollection // instance only - link on element
+ answerCollection?: ElementOptionsAnswerCollection // instance only - link on element
collectionItemIds?: number[] // instance only - link on element
- cases: CaseStudyCase[]
criteria: CaseStudyCriterion[]
+ cases: CaseStudyCase[]
}
export interface ElementOptionsFlashcard {}
diff --git a/packages/util/src/index.ts b/packages/util/src/index.ts
index 78572cd376..e69993fd8a 100644
--- a/packages/util/src/index.ts
+++ b/packages/util/src/index.ts
@@ -38,7 +38,7 @@ const QUESTION_KEYS: ElementKeys[] = [
export type ElementWithAnswerCollection = Element & {
answerCollection?: { id: number; entries: AnswerCollectionEntry[] } | null
- answerCollectionSolutions?: AnswerCollectionEntry[] | null
+ answerCollectionItems?: AnswerCollectionEntry[] | null
}
export function processElementData(
@@ -93,7 +93,7 @@ export function processElementData(
) {
if (
!element.answerCollection?.entries ||
- (element.options.hasSampleSolution && !element.answerCollectionSolutions)
+ (element.options.hasSampleSolution && !element.answerCollectionItems)
) {
throw new Error(
'Answer collection or solutions missing for selection element'
@@ -111,7 +111,7 @@ export function processElementData(
// extract the ids of the correct solution options
const answerCollectionSolutionIds = element.options.hasSampleSolution
- ? element.answerCollectionSolutions!.map((entry) => entry.id)
+ ? element.answerCollectionItems!.map((entry) => entry.id)
: []
return {