Upgrade npm libraries
Remove unneeded graphql codegen step Adapt build step Revert "Remove unneeded graphql codegen step" This reverts commit 9009e82669a828496ea4d19ffb07f8b85a73645a.
This commit is contained in:
parent
2db7059461
commit
ad10bae641
File diff suppressed because it is too large
Load Diff
|
|
@ -2,7 +2,7 @@
|
|||
"name": "client",
|
||||
"version": "0.0.0",
|
||||
"scripts": {
|
||||
"build": "npm run codegen && vue-tsc --noEmit && vite build && node versionize && cp ./dist/index.html ../server/vbv_lernwelt/templates/vue/index.html && rm -rf ../server/vbv_lernwelt/static/vue/* && cp -r ./dist/static/vue ../server/vbv_lernwelt/static/ && npm run build-storybook",
|
||||
"build": "npm run typecheck && vite build && node versionize && cp ./dist/index.html ../server/vbv_lernwelt/templates/vue/index.html && rm -rf ../server/vbv_lernwelt/static/vue/* && cp -r ./dist/static/vue ../server/vbv_lernwelt/static/ && npm run build-storybook",
|
||||
"build-storybook": "rm -rf ../server/vbv_lernwelt/static/storybook/* && storybook build -o ../server/vbv_lernwelt/static/storybook",
|
||||
"build:tailwind": "tailwindcss -i tailwind.css -o ../server/vbv_lernwelt/static/css/tailwind.css --minify",
|
||||
"codegen": "graphql-codegen && node minimizeGraphqlSchema.mjs",
|
||||
|
|
@ -20,88 +20,87 @@
|
|||
"vue-i18n-extract": "vue-i18n-extract report"
|
||||
},
|
||||
"dependencies": {
|
||||
"@headlessui/tailwindcss": "^0.1.2",
|
||||
"@headlessui/tailwindcss": "^0.1.3",
|
||||
"@headlessui/vue": "1.7.7",
|
||||
"@sentry/tracing": "^7.20.0",
|
||||
"@sentry/vue": "^7.20.0",
|
||||
"@sentry/tracing": "^7.56.0",
|
||||
"@sentry/vue": "^7.56.0",
|
||||
"@urql/devtools": "^2.0.3",
|
||||
"@urql/exchange-graphcache": "^6.0.4",
|
||||
"@urql/exchange-graphcache": "^6.1.4",
|
||||
"@urql/introspection": "^1.0.2",
|
||||
"@urql/vue": "^1.1.1",
|
||||
"@vueuse/core": "^9.13.0",
|
||||
"@vueuse/router": "^10.1.2",
|
||||
"cypress": "^12.9.0",
|
||||
"d3": "^7.6.1",
|
||||
"dayjs": "^1.11.7",
|
||||
"@urql/vue": "^1.1.2",
|
||||
"@vueuse/core": "^10.2.0",
|
||||
"@vueuse/router": "^10.2.0",
|
||||
"cypress": "^12.14.0",
|
||||
"d3": "^7.8.5",
|
||||
"dayjs": "^1.11.8",
|
||||
"graphql": "^16.6.0",
|
||||
"lodash": "^4.17.21",
|
||||
"loglevel": "^1.8.0",
|
||||
"mitt": "^3.0.0",
|
||||
"pinia": "^2.0.21",
|
||||
"vue": "^3.2.38",
|
||||
"pinia": "^2.1.4",
|
||||
"vue": "^3.3.4",
|
||||
"vue-i18n": "^9.2.2",
|
||||
"vue-i18n-extract": "^2.0.7",
|
||||
"vue-router": "^4.1.6"
|
||||
"vue-router": "^4.2.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@graphql-codegen/cli": "^2.13.12",
|
||||
"@graphql-codegen/client-preset": "^1.1.4",
|
||||
"@graphql-codegen/cli": "^4.0.1",
|
||||
"@graphql-codegen/client-preset": "^4.0.1",
|
||||
"@rollup/plugin-alias": "^4.0.3",
|
||||
"@rushstack/eslint-patch": "^1.1.4",
|
||||
"@savvywombat/tailwindcss-grid-areas": "^3.0.0",
|
||||
"@storybook/addon-a11y": "^7.0.0-rc.5",
|
||||
"@storybook/addon-essentials": "^7.0.0-rc.5",
|
||||
"@storybook/addon-interactions": "^7.0.0-rc.5",
|
||||
"@storybook/addon-links": "^7.0.0-rc.5",
|
||||
"@storybook/addons": "^7.0.0-rc.5",
|
||||
"@storybook/blocks": "^7.0.0-rc.5",
|
||||
"@storybook/manager-api": "^7.0.0-rc.5",
|
||||
"@storybook/testing-library": "^0.0.14-next.1",
|
||||
"@storybook/theming": "^7.0.0-rc.5",
|
||||
"@storybook/vue3": "^7.0.0-rc.5",
|
||||
"@storybook/vue3-vite": "^7.0.0-rc.5",
|
||||
"@storybook/addon-a11y": "^7.0.22",
|
||||
"@storybook/addon-essentials": "^7.0.22",
|
||||
"@storybook/addon-interactions": "^7.0.22",
|
||||
"@storybook/addon-links": "^7.0.22",
|
||||
"@storybook/addons": "^7.0.22",
|
||||
"@storybook/blocks": "^7.0.22",
|
||||
"@storybook/manager-api": "^7.0.22",
|
||||
"@storybook/testing-library": "^0.1.0",
|
||||
"@storybook/theming": "^7.0.22",
|
||||
"@storybook/vue3": "^7.0.22",
|
||||
"@storybook/vue3-vite": "^7.0.22",
|
||||
"@tailwindcss/forms": "^0.5.2",
|
||||
"@tailwindcss/typography": "^0.5.4",
|
||||
"@testing-library/vue": "^7.0.0",
|
||||
"@types/d3": "^7.4.0",
|
||||
"@types/jsdom": "^21.1.1",
|
||||
"@types/lodash": "^4.14.184",
|
||||
"@types/node": "^18.7.14",
|
||||
"@vitejs/plugin-vue": "4.1",
|
||||
"@volar/vue-typescript": "^1.0.9",
|
||||
"@types/lodash": "^4.14.195",
|
||||
"@types/node": "^18.16.18",
|
||||
"@vitejs/plugin-vue": "^4.2.3",
|
||||
"@vue/eslint-config-prettier": "^7.0.0",
|
||||
"@vue/eslint-config-typescript": "^11.0.0",
|
||||
"@vue/test-utils": "^2.0.2",
|
||||
"@vue/tsconfig": "^0.1.3",
|
||||
"autoprefixer": "^10.4.8",
|
||||
"concurrently": "^8.0.1",
|
||||
"eslint": "8.37",
|
||||
"eslint": "^8.43.0",
|
||||
"eslint-config-prettier": "^8.5.0",
|
||||
"eslint-plugin-cypress": "^2.13.3",
|
||||
"eslint-plugin-storybook": "^0.6.11",
|
||||
"eslint-plugin-vue": "^9.4.0",
|
||||
"jsdom": "^21.1.1",
|
||||
"eslint-plugin-storybook": "^0.6.12",
|
||||
"eslint-plugin-vue": "^9.15.0",
|
||||
"jsdom": "^22.1.0",
|
||||
"postcss": "^8.4.14",
|
||||
"postcss-import": "^15.1.0",
|
||||
"prettier": "^2.7.1",
|
||||
"prettier": "^2.8.8",
|
||||
"prettier-plugin-organize-imports": "^3.1.1",
|
||||
"prettier-plugin-sort-json": "^1.0.0",
|
||||
"prettier-plugin-tailwindcss": "^0.2.1",
|
||||
"prettier-plugin-tailwindcss": "^0.3.0",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"replace-in-file": "^6.3.5",
|
||||
"sass": "^1.54.6",
|
||||
"sass-loader": "^13.2.2",
|
||||
"sass": "^1.63.4",
|
||||
"sass-loader": "^13.3.2",
|
||||
"start-server-and-test": "^2.0.0",
|
||||
"storybook": "^7.0.0-rc.5",
|
||||
"storybook": "^7.0.22",
|
||||
"storybook-addon-designs": "^v7.0.0-beta.2",
|
||||
"storybook-tailwind-foundations": "^1.1.2",
|
||||
"storybook-vue3-router": "^3.0.0-next.1",
|
||||
"tailwindcss": "^3.1.8",
|
||||
"typescript": "^5.0.4",
|
||||
"vite": "^4.2.1",
|
||||
"vitest": "^0.29.8",
|
||||
"tailwindcss": "^3.3.2",
|
||||
"typescript": "^5.1.3",
|
||||
"vite": "^4.3.9",
|
||||
"vitest": "^0.32.2",
|
||||
"vue-eslint-parser": "^9.2.1",
|
||||
"vue-tsc": "^1.0.9"
|
||||
"vue-tsc": "^1.8.1"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@ const items: Item[] = [
|
|||
|
||||
export const CourseSessionsMenuStory: Story = {
|
||||
args: {
|
||||
// @ts-ignore
|
||||
items,
|
||||
},
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,11 +1,13 @@
|
|||
import type { ResultOf, TypedDocumentNode as DocumentNode, } from '@graphql-typed-document-node/core';
|
||||
import type { ResultOf, DocumentTypeDecoration, TypedDocumentNode } from '@graphql-typed-document-node/core';
|
||||
import type { FragmentDefinitionNode } from 'graphql';
|
||||
import type { Incremental } from './graphql';
|
||||
|
||||
|
||||
export type FragmentType<TDocumentType extends DocumentNode<any, any>> = TDocumentType extends DocumentNode<
|
||||
export type FragmentType<TDocumentType extends DocumentTypeDecoration<any, any>> = TDocumentType extends DocumentTypeDecoration<
|
||||
infer TType,
|
||||
any
|
||||
>
|
||||
? TType extends { ' $fragmentName'?: infer TKey }
|
||||
? [TType] extends [{ ' $fragmentName'?: infer TKey }]
|
||||
? TKey extends string
|
||||
? { ' $fragmentRefs'?: { [key in TKey]: TType } }
|
||||
: never
|
||||
|
|
@ -14,35 +16,51 @@ export type FragmentType<TDocumentType extends DocumentNode<any, any>> = TDocume
|
|||
|
||||
// return non-nullable if `fragmentType` is non-nullable
|
||||
export function useFragment<TType>(
|
||||
_documentNode: DocumentNode<TType, any>,
|
||||
fragmentType: FragmentType<DocumentNode<TType, any>>
|
||||
_documentNode: DocumentTypeDecoration<TType, any>,
|
||||
fragmentType: FragmentType<DocumentTypeDecoration<TType, any>>
|
||||
): TType;
|
||||
// return nullable if `fragmentType` is nullable
|
||||
export function useFragment<TType>(
|
||||
_documentNode: DocumentNode<TType, any>,
|
||||
fragmentType: FragmentType<DocumentNode<TType, any>> | null | undefined
|
||||
_documentNode: DocumentTypeDecoration<TType, any>,
|
||||
fragmentType: FragmentType<DocumentTypeDecoration<TType, any>> | null | undefined
|
||||
): TType | null | undefined;
|
||||
// return array of non-nullable if `fragmentType` is array of non-nullable
|
||||
export function useFragment<TType>(
|
||||
_documentNode: DocumentNode<TType, any>,
|
||||
fragmentType: ReadonlyArray<FragmentType<DocumentNode<TType, any>>>
|
||||
_documentNode: DocumentTypeDecoration<TType, any>,
|
||||
fragmentType: ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>
|
||||
): ReadonlyArray<TType>;
|
||||
// return array of nullable if `fragmentType` is array of nullable
|
||||
export function useFragment<TType>(
|
||||
_documentNode: DocumentNode<TType, any>,
|
||||
fragmentType: ReadonlyArray<FragmentType<DocumentNode<TType, any>>> | null | undefined
|
||||
_documentNode: DocumentTypeDecoration<TType, any>,
|
||||
fragmentType: ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>> | null | undefined
|
||||
): ReadonlyArray<TType> | null | undefined;
|
||||
export function useFragment<TType>(
|
||||
_documentNode: DocumentNode<TType, any>,
|
||||
fragmentType: FragmentType<DocumentNode<TType, any>> | ReadonlyArray<FragmentType<DocumentNode<TType, any>>> | null | undefined
|
||||
_documentNode: DocumentTypeDecoration<TType, any>,
|
||||
fragmentType: FragmentType<DocumentTypeDecoration<TType, any>> | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>> | null | undefined
|
||||
): TType | ReadonlyArray<TType> | null | undefined {
|
||||
return fragmentType as any;
|
||||
}
|
||||
|
||||
|
||||
export function makeFragmentData<
|
||||
F extends DocumentNode,
|
||||
F extends DocumentTypeDecoration<any, any>,
|
||||
FT extends ResultOf<F>
|
||||
>(data: FT, _fragment: F): FragmentType<F> {
|
||||
return data as FragmentType<F>;
|
||||
}
|
||||
}
|
||||
export function isFragmentReady<TQuery, TFrag>(
|
||||
queryNode: DocumentTypeDecoration<TQuery, any>,
|
||||
fragmentNode: TypedDocumentNode<TFrag>,
|
||||
data: FragmentType<TypedDocumentNode<Incremental<TFrag>, any>> | null | undefined
|
||||
): data is FragmentType<typeof fragmentNode> {
|
||||
const deferredFields = (queryNode as { __meta__?: { deferredFields: Record<string, (keyof TFrag)[]> } }).__meta__
|
||||
?.deferredFields;
|
||||
|
||||
if (!deferredFields) return true;
|
||||
|
||||
const fragDef = fragmentNode.definitions[0] as FragmentDefinitionNode | undefined;
|
||||
const fragName = fragDef?.name?.value;
|
||||
|
||||
const fields = (fragName && deferredFields[fragName]) || [];
|
||||
return fields.length > 0 && fields.every(field => data && field in data);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import type { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-
|
|||
* 2. It is not minifiable, so the string of a GraphQL query will be multiple times inside the bundle.
|
||||
* 3. It does not support dead code elimination, so it will add unused operations.
|
||||
*
|
||||
* Therefore it is highly recommended to use the babel-plugin for production.
|
||||
* Therefore it is highly recommended to use the babel or swc plugin for production.
|
||||
*/
|
||||
const documents = {
|
||||
"\n mutation SendFeedbackMutation($input: SendFeedbackInput!) {\n send_feedback(input: $input) {\n feedback_response {\n id\n }\n errors {\n field\n messages\n }\n }\n }\n": types.SendFeedbackMutationDocument,
|
||||
|
|
@ -25,7 +25,7 @@ const documents = {
|
|||
*
|
||||
* @example
|
||||
* ```ts
|
||||
* const query = gql(`query GetUser($id: ID!) { user(id: $id) { name } }`);
|
||||
* const query = graphql(`query GetUser($id: ID!) { user(id: $id) { name } }`);
|
||||
* ```
|
||||
*
|
||||
* The query argument is unknown!
|
||||
|
|
|
|||
|
|
@ -5,33 +5,35 @@ export type InputMaybe<T> = Maybe<T>;
|
|||
export type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };
|
||||
export type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };
|
||||
export type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };
|
||||
export type MakeEmpty<T extends { [key: string]: unknown }, K extends keyof T> = { [_ in K]?: never };
|
||||
export type Incremental<T> = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never };
|
||||
/** All built-in and custom scalars, mapped to their actual values */
|
||||
export type Scalars = {
|
||||
ID: string;
|
||||
String: string;
|
||||
Boolean: boolean;
|
||||
Int: number;
|
||||
Float: number;
|
||||
ID: { input: string; output: string; }
|
||||
String: { input: string; output: string; }
|
||||
Boolean: { input: boolean; output: boolean; }
|
||||
Int: { input: number; output: number; }
|
||||
Float: { input: number; output: number; }
|
||||
/**
|
||||
* The `DateTime` scalar type represents a DateTime
|
||||
* value as specified by
|
||||
* [iso8601](https://en.wikipedia.org/wiki/ISO_8601).
|
||||
*/
|
||||
DateTime: any;
|
||||
DateTime: { input: any; output: any; }
|
||||
/**
|
||||
* The `GenericScalar` scalar type represents a generic
|
||||
* GraphQL scalar value that could be:
|
||||
* String, Boolean, Int, Float, List or Object.
|
||||
*/
|
||||
GenericScalar: any;
|
||||
JSONStreamField: any;
|
||||
GenericScalar: { input: any; output: any; }
|
||||
JSONStreamField: { input: any; output: any; }
|
||||
/**
|
||||
* Allows use of a JSON String for input / output from the GraphQL schema.
|
||||
*
|
||||
* Use of this type is *not recommended* as you lose the benefits of having a defined, static
|
||||
* schema (one of the key benefits of GraphQL).
|
||||
*/
|
||||
JSONString: any;
|
||||
JSONString: { input: any; output: any; }
|
||||
};
|
||||
|
||||
/** An enumeration. */
|
||||
|
|
@ -63,42 +65,42 @@ export type AssignmentCompletionMutation = {
|
|||
|
||||
export type AssignmentCompletionType = {
|
||||
__typename?: 'AssignmentCompletionType';
|
||||
additional_json_data: Scalars['JSONString'];
|
||||
additional_json_data: Scalars['JSONString']['output'];
|
||||
assignment: AssignmentType;
|
||||
assignment_user: UserType;
|
||||
completion_data?: Maybe<Scalars['GenericScalar']>;
|
||||
completion_data?: Maybe<Scalars['GenericScalar']['output']>;
|
||||
completion_status: AssignmentAssignmentCompletionCompletionStatusChoices;
|
||||
created_at: Scalars['DateTime'];
|
||||
evaluation_grade?: Maybe<Scalars['Float']>;
|
||||
evaluation_points?: Maybe<Scalars['Float']>;
|
||||
evaluation_submitted_at?: Maybe<Scalars['DateTime']>;
|
||||
created_at: Scalars['DateTime']['output'];
|
||||
evaluation_grade?: Maybe<Scalars['Float']['output']>;
|
||||
evaluation_points?: Maybe<Scalars['Float']['output']>;
|
||||
evaluation_submitted_at?: Maybe<Scalars['DateTime']['output']>;
|
||||
evaluation_user?: Maybe<UserType>;
|
||||
id: Scalars['ID'];
|
||||
submitted_at?: Maybe<Scalars['DateTime']>;
|
||||
updated_at: Scalars['DateTime'];
|
||||
id: Scalars['ID']['output'];
|
||||
submitted_at?: Maybe<Scalars['DateTime']['output']>;
|
||||
updated_at: Scalars['DateTime']['output'];
|
||||
};
|
||||
|
||||
export type AssignmentType = CoursePageInterface & {
|
||||
__typename?: 'AssignmentType';
|
||||
assignment_type: AssignmentAssignmentAssignmentTypeChoices;
|
||||
content_type?: Maybe<Scalars['String']>;
|
||||
content_type?: Maybe<Scalars['String']['output']>;
|
||||
/** Zeitaufwand als Text */
|
||||
effort_required: Scalars['String'];
|
||||
effort_required: Scalars['String']['output'];
|
||||
/** Beschreibung der Bewertung */
|
||||
evaluation_description: Scalars['String'];
|
||||
evaluation_description: Scalars['String']['output'];
|
||||
/** URL zum Beurteilungsinstrument */
|
||||
evaluation_document_url: Scalars['String'];
|
||||
evaluation_tasks?: Maybe<Scalars['JSONStreamField']>;
|
||||
frontend_url?: Maybe<Scalars['String']>;
|
||||
id?: Maybe<Scalars['ID']>;
|
||||
evaluation_document_url: Scalars['String']['output'];
|
||||
evaluation_tasks?: Maybe<Scalars['JSONStreamField']['output']>;
|
||||
frontend_url?: Maybe<Scalars['String']['output']>;
|
||||
id?: Maybe<Scalars['ID']['output']>;
|
||||
/** Erläuterung der Ausgangslage */
|
||||
intro_text: Scalars['String'];
|
||||
live?: Maybe<Scalars['Boolean']>;
|
||||
performance_objectives?: Maybe<Scalars['JSONStreamField']>;
|
||||
slug?: Maybe<Scalars['String']>;
|
||||
tasks?: Maybe<Scalars['JSONStreamField']>;
|
||||
title?: Maybe<Scalars['String']>;
|
||||
translation_key?: Maybe<Scalars['String']>;
|
||||
intro_text: Scalars['String']['output'];
|
||||
live?: Maybe<Scalars['Boolean']['output']>;
|
||||
performance_objectives?: Maybe<Scalars['JSONStreamField']['output']>;
|
||||
slug?: Maybe<Scalars['String']['output']>;
|
||||
tasks?: Maybe<Scalars['JSONStreamField']['output']>;
|
||||
title?: Maybe<Scalars['String']['output']>;
|
||||
translation_key?: Maybe<Scalars['String']['output']>;
|
||||
};
|
||||
|
||||
/** An enumeration. */
|
||||
|
|
@ -112,69 +114,69 @@ export enum CoreUserLanguageChoices {
|
|||
}
|
||||
|
||||
export type CoursePageInterface = {
|
||||
content_type?: Maybe<Scalars['String']>;
|
||||
frontend_url?: Maybe<Scalars['String']>;
|
||||
id?: Maybe<Scalars['ID']>;
|
||||
live?: Maybe<Scalars['Boolean']>;
|
||||
slug?: Maybe<Scalars['String']>;
|
||||
title?: Maybe<Scalars['String']>;
|
||||
translation_key?: Maybe<Scalars['String']>;
|
||||
content_type?: Maybe<Scalars['String']['output']>;
|
||||
frontend_url?: Maybe<Scalars['String']['output']>;
|
||||
id?: Maybe<Scalars['ID']['output']>;
|
||||
live?: Maybe<Scalars['Boolean']['output']>;
|
||||
slug?: Maybe<Scalars['String']['output']>;
|
||||
title?: Maybe<Scalars['String']['output']>;
|
||||
translation_key?: Maybe<Scalars['String']['output']>;
|
||||
};
|
||||
|
||||
export type CourseType = {
|
||||
__typename?: 'CourseType';
|
||||
category_name: Scalars['String'];
|
||||
id: Scalars['ID'];
|
||||
category_name: Scalars['String']['output'];
|
||||
id: Scalars['ID']['output'];
|
||||
learning_path?: Maybe<LearningPathType>;
|
||||
slug: Scalars['String'];
|
||||
title: Scalars['String'];
|
||||
slug: Scalars['String']['output'];
|
||||
title: Scalars['String']['output'];
|
||||
};
|
||||
|
||||
export type ErrorType = {
|
||||
__typename?: 'ErrorType';
|
||||
field: Scalars['String'];
|
||||
messages: Array<Scalars['String']>;
|
||||
field: Scalars['String']['output'];
|
||||
messages: Array<Scalars['String']['output']>;
|
||||
};
|
||||
|
||||
export type FeedbackResponse = Node & {
|
||||
__typename?: 'FeedbackResponse';
|
||||
created_at: Scalars['DateTime'];
|
||||
data?: Maybe<Scalars['GenericScalar']>;
|
||||
created_at: Scalars['DateTime']['output'];
|
||||
data?: Maybe<Scalars['GenericScalar']['output']>;
|
||||
/** The ID of the object */
|
||||
id: Scalars['ID'];
|
||||
id: Scalars['ID']['output'];
|
||||
};
|
||||
|
||||
export type LearningPathType = CoursePageInterface & {
|
||||
__typename?: 'LearningPathType';
|
||||
content_type?: Maybe<Scalars['String']>;
|
||||
depth: Scalars['Int'];
|
||||
draft_title: Scalars['String'];
|
||||
expire_at?: Maybe<Scalars['DateTime']>;
|
||||
expired: Scalars['Boolean'];
|
||||
first_published_at?: Maybe<Scalars['DateTime']>;
|
||||
frontend_url?: Maybe<Scalars['String']>;
|
||||
go_live_at?: Maybe<Scalars['DateTime']>;
|
||||
has_unpublished_changes: Scalars['Boolean'];
|
||||
id?: Maybe<Scalars['ID']>;
|
||||
last_published_at?: Maybe<Scalars['DateTime']>;
|
||||
latest_revision_created_at?: Maybe<Scalars['DateTime']>;
|
||||
live?: Maybe<Scalars['Boolean']>;
|
||||
locked: Scalars['Boolean'];
|
||||
locked_at?: Maybe<Scalars['DateTime']>;
|
||||
content_type?: Maybe<Scalars['String']['output']>;
|
||||
depth: Scalars['Int']['output'];
|
||||
draft_title: Scalars['String']['output'];
|
||||
expire_at?: Maybe<Scalars['DateTime']['output']>;
|
||||
expired: Scalars['Boolean']['output'];
|
||||
first_published_at?: Maybe<Scalars['DateTime']['output']>;
|
||||
frontend_url?: Maybe<Scalars['String']['output']>;
|
||||
go_live_at?: Maybe<Scalars['DateTime']['output']>;
|
||||
has_unpublished_changes: Scalars['Boolean']['output'];
|
||||
id?: Maybe<Scalars['ID']['output']>;
|
||||
last_published_at?: Maybe<Scalars['DateTime']['output']>;
|
||||
latest_revision_created_at?: Maybe<Scalars['DateTime']['output']>;
|
||||
live?: Maybe<Scalars['Boolean']['output']>;
|
||||
locked: Scalars['Boolean']['output'];
|
||||
locked_at?: Maybe<Scalars['DateTime']['output']>;
|
||||
locked_by?: Maybe<UserType>;
|
||||
numchild: Scalars['Int'];
|
||||
numchild: Scalars['Int']['output'];
|
||||
owner?: Maybe<UserType>;
|
||||
path: Scalars['String'];
|
||||
path: Scalars['String']['output'];
|
||||
/** Die informative Beschreibung, dargestellt in Suchmaschinen-Ergebnissen unter der Überschrift. */
|
||||
search_description: Scalars['String'];
|
||||
search_description: Scalars['String']['output'];
|
||||
/** Der Titel der Seite, dargestellt in Suchmaschinen-Ergebnissen als die verlinkte Überschrift. */
|
||||
seo_title: Scalars['String'];
|
||||
seo_title: Scalars['String']['output'];
|
||||
/** Ob ein Link zu dieser Seite in automatisch generierten Menüs auftaucht. */
|
||||
show_in_menus: Scalars['Boolean'];
|
||||
slug?: Maybe<Scalars['String']>;
|
||||
title?: Maybe<Scalars['String']>;
|
||||
translation_key?: Maybe<Scalars['String']>;
|
||||
url_path: Scalars['String'];
|
||||
show_in_menus: Scalars['Boolean']['output'];
|
||||
slug?: Maybe<Scalars['String']['output']>;
|
||||
title?: Maybe<Scalars['String']['output']>;
|
||||
translation_key?: Maybe<Scalars['String']['output']>;
|
||||
url_path: Scalars['String']['output'];
|
||||
};
|
||||
|
||||
export type Mutation = {
|
||||
|
|
@ -190,19 +192,19 @@ export type MutationSend_FeedbackArgs = {
|
|||
|
||||
|
||||
export type MutationUpsert_Assignment_CompletionArgs = {
|
||||
assignment_id: Scalars['ID'];
|
||||
assignment_user_id?: InputMaybe<Scalars['ID']>;
|
||||
completion_data_string?: InputMaybe<Scalars['String']>;
|
||||
completion_status?: InputMaybe<Scalars['String']>;
|
||||
course_session_id: Scalars['ID'];
|
||||
evaluation_grade?: InputMaybe<Scalars['Float']>;
|
||||
evaluation_points?: InputMaybe<Scalars['Float']>;
|
||||
assignment_id: Scalars['ID']['input'];
|
||||
assignment_user_id?: InputMaybe<Scalars['ID']['input']>;
|
||||
completion_data_string?: InputMaybe<Scalars['String']['input']>;
|
||||
completion_status?: InputMaybe<Scalars['String']['input']>;
|
||||
course_session_id: Scalars['ID']['input'];
|
||||
evaluation_grade?: InputMaybe<Scalars['Float']['input']>;
|
||||
evaluation_points?: InputMaybe<Scalars['Float']['input']>;
|
||||
};
|
||||
|
||||
/** An object with an ID */
|
||||
export type Node = {
|
||||
/** The ID of the object */
|
||||
id: Scalars['ID'];
|
||||
id: Scalars['ID']['output'];
|
||||
};
|
||||
|
||||
export type Query = {
|
||||
|
|
@ -214,32 +216,32 @@ export type Query = {
|
|||
|
||||
|
||||
export type QueryAssignmentArgs = {
|
||||
id?: InputMaybe<Scalars['ID']>;
|
||||
slug?: InputMaybe<Scalars['String']>;
|
||||
id?: InputMaybe<Scalars['ID']['input']>;
|
||||
slug?: InputMaybe<Scalars['String']['input']>;
|
||||
};
|
||||
|
||||
|
||||
export type QueryAssignment_CompletionArgs = {
|
||||
assignment_id: Scalars['ID'];
|
||||
assignment_user_id?: InputMaybe<Scalars['ID']>;
|
||||
course_session_id: Scalars['ID'];
|
||||
assignment_id: Scalars['ID']['input'];
|
||||
assignment_user_id?: InputMaybe<Scalars['ID']['input']>;
|
||||
course_session_id: Scalars['ID']['input'];
|
||||
};
|
||||
|
||||
|
||||
export type QueryCourseArgs = {
|
||||
id?: InputMaybe<Scalars['Int']>;
|
||||
id?: InputMaybe<Scalars['Int']['input']>;
|
||||
};
|
||||
|
||||
export type SendFeedbackInput = {
|
||||
clientMutationId?: InputMaybe<Scalars['String']>;
|
||||
course_session: Scalars['Int'];
|
||||
data?: InputMaybe<Scalars['GenericScalar']>;
|
||||
page: Scalars['String'];
|
||||
clientMutationId?: InputMaybe<Scalars['String']['input']>;
|
||||
course_session: Scalars['Int']['input'];
|
||||
data?: InputMaybe<Scalars['GenericScalar']['input']>;
|
||||
page: Scalars['String']['input'];
|
||||
};
|
||||
|
||||
export type SendFeedbackPayload = {
|
||||
__typename?: 'SendFeedbackPayload';
|
||||
clientMutationId?: Maybe<Scalars['String']>;
|
||||
clientMutationId?: Maybe<Scalars['String']['output']>;
|
||||
/** May contain more than one error for same field. */
|
||||
errors?: Maybe<Array<Maybe<ErrorType>>>;
|
||||
feedback_response?: Maybe<FeedbackResponse>;
|
||||
|
|
@ -247,14 +249,14 @@ export type SendFeedbackPayload = {
|
|||
|
||||
export type UserType = {
|
||||
__typename?: 'UserType';
|
||||
avatar_url: Scalars['String'];
|
||||
email: Scalars['String'];
|
||||
first_name: Scalars['String'];
|
||||
id: Scalars['ID'];
|
||||
avatar_url: Scalars['String']['output'];
|
||||
email: Scalars['String']['output'];
|
||||
first_name: Scalars['String']['output'];
|
||||
id: Scalars['ID']['output'];
|
||||
language: CoreUserLanguageChoices;
|
||||
last_name: Scalars['String'];
|
||||
last_name: Scalars['String']['output'];
|
||||
/** Erforderlich. 150 Zeichen oder weniger. Nur Buchstaben, Ziffern und @/./+/-/_. */
|
||||
username: Scalars['String'];
|
||||
username: Scalars['String']['output'];
|
||||
};
|
||||
|
||||
export type SendFeedbackMutationMutationVariables = Exact<{
|
||||
|
|
@ -265,29 +267,29 @@ export type SendFeedbackMutationMutationVariables = Exact<{
|
|||
export type SendFeedbackMutationMutation = { __typename?: 'Mutation', send_feedback?: { __typename?: 'SendFeedbackPayload', feedback_response?: { __typename?: 'FeedbackResponse', id: string } | null, errors?: Array<{ __typename?: 'ErrorType', field: string, messages: Array<string> } | null> | null } | null };
|
||||
|
||||
export type UpsertAssignmentCompletionMutationVariables = Exact<{
|
||||
assignmentId: Scalars['ID'];
|
||||
courseSessionId: Scalars['ID'];
|
||||
assignmentUserId?: InputMaybe<Scalars['ID']>;
|
||||
completionStatus: Scalars['String'];
|
||||
completionDataString: Scalars['String'];
|
||||
evaluationGrade?: InputMaybe<Scalars['Float']>;
|
||||
evaluationPoints?: InputMaybe<Scalars['Float']>;
|
||||
assignmentId: Scalars['ID']['input'];
|
||||
courseSessionId: Scalars['ID']['input'];
|
||||
assignmentUserId?: InputMaybe<Scalars['ID']['input']>;
|
||||
completionStatus: Scalars['String']['input'];
|
||||
completionDataString: Scalars['String']['input'];
|
||||
evaluationGrade?: InputMaybe<Scalars['Float']['input']>;
|
||||
evaluationPoints?: InputMaybe<Scalars['Float']['input']>;
|
||||
}>;
|
||||
|
||||
|
||||
export type UpsertAssignmentCompletionMutation = { __typename?: 'Mutation', upsert_assignment_completion?: { __typename?: 'AssignmentCompletionMutation', assignment_completion?: { __typename?: 'AssignmentCompletionType', id: string, completion_status: AssignmentAssignmentCompletionCompletionStatusChoices, submitted_at?: any | null, evaluation_submitted_at?: any | null, evaluation_grade?: number | null, evaluation_points?: number | null, completion_data?: any | null } | null } | null };
|
||||
|
||||
export type AssignmentCompletionQueryQueryVariables = Exact<{
|
||||
assignmentId: Scalars['ID'];
|
||||
courseSessionId: Scalars['ID'];
|
||||
assignmentUserId?: InputMaybe<Scalars['ID']>;
|
||||
assignmentId: Scalars['ID']['input'];
|
||||
courseSessionId: Scalars['ID']['input'];
|
||||
assignmentUserId?: InputMaybe<Scalars['ID']['input']>;
|
||||
}>;
|
||||
|
||||
|
||||
export type AssignmentCompletionQueryQuery = { __typename?: 'Query', assignment?: { __typename?: 'AssignmentType', assignment_type: AssignmentAssignmentAssignmentTypeChoices, content_type?: string | null, effort_required: string, evaluation_description: string, evaluation_document_url: string, evaluation_tasks?: any | null, id?: string | null, intro_text: string, performance_objectives?: any | null, slug?: string | null, tasks?: any | null, title?: string | null, translation_key?: string | null } | null, assignment_completion?: { __typename?: 'AssignmentCompletionType', id: string, completion_status: AssignmentAssignmentCompletionCompletionStatusChoices, submitted_at?: any | null, evaluation_submitted_at?: any | null, evaluation_grade?: number | null, evaluation_points?: number | null, completion_data?: any | null, evaluation_user?: { __typename?: 'UserType', id: string } | null, assignment_user: { __typename?: 'UserType', id: string } } | null };
|
||||
|
||||
export type CourseQueryQueryVariables = Exact<{
|
||||
courseId: Scalars['Int'];
|
||||
courseId: Scalars['Int']['input'];
|
||||
}>;
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue