From 026cd6d1569987dc89081d0cd81ccf05a83d87de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Minelli?= <git@minelli.swiss> Date: Tue, 25 Jun 2024 03:13:14 +0200 Subject: [PATCH] Tags => Code integration --- helpers/Dojo/DojoBackendHelper.ts | 6 +++++- models/{TagSubmit.ts => TagProposal.ts} | 6 ++++-- types/Dojo/ApiRoute.ts | 10 +++++----- 3 files changed, 14 insertions(+), 8 deletions(-) rename models/{TagSubmit.ts => TagProposal.ts} (65%) diff --git a/helpers/Dojo/DojoBackendHelper.ts b/helpers/Dojo/DojoBackendHelper.ts index 7475376..025c387 100644 --- a/helpers/Dojo/DojoBackendHelper.ts +++ b/helpers/Dojo/DojoBackendHelper.ts @@ -3,7 +3,7 @@ import ClientsSharedConfig from '../../config/ClientsSharedConfig.js'; class DojoBackendHelper { - public getApiUrl(route: ApiRoute, options?: Partial<{ assignmentNameOrUrl: string, exerciseIdOrUrl: string, gitlabProjectId: string }>): string { + public getApiUrl(route: ApiRoute, options?: Partial<{ assignmentNameOrUrl: string, exerciseIdOrUrl: string, gitlabProjectId: string, tagName: string }>): string { let url = `${ ClientsSharedConfig.apiURL }${ route }`; if ( options ) { @@ -18,6 +18,10 @@ class DojoBackendHelper { if ( options.gitlabProjectId ) { url = url.replace('{{gitlabProjectId}}', encodeURIComponent(options.gitlabProjectId)); } + + if ( options.tagName ) { + url = url.replace('{{tagName}}', encodeURIComponent(options.tagName)); + } } return url; diff --git a/models/TagSubmit.ts b/models/TagProposal.ts similarity index 65% rename from models/TagSubmit.ts rename to models/TagProposal.ts index 241ff1c..94c3c8c 100644 --- a/models/TagSubmit.ts +++ b/models/TagProposal.ts @@ -1,7 +1,9 @@ -interface TagSubmit { +interface TagProposal { name: string; type: 'Language' | 'Framework' | 'Theme' | 'UserDefined'; state: 'PendingApproval' | 'Declined' | 'Approved'; + details: string; } -export default TagSubmit; + +export default TagProposal; diff --git a/types/Dojo/ApiRoute.ts b/types/Dojo/ApiRoute.ts index b966d11..9d5b40f 100644 --- a/types/Dojo/ApiRoute.ts +++ b/types/Dojo/ApiRoute.ts @@ -11,11 +11,11 @@ enum ApiRoute { ASSIGNMENT_CORRECTION_UPDATE_DELETE = '/assignments/{{assignmentNameOrUrl}}/corrections/{{exerciseIdOrUrl}}', EXERCISE_CREATE = '/assignments/{{assignmentNameOrUrl}}/exercises', EXERCISE_ASSIGNMENT = '/exercises/{{exerciseIdOrUrl}}/assignment', - EXERCISE_RESULTS = '/exercises/{{exerciseIdOrUrl}}/results' - ADD_TAG = '/tags', - DELETE_TAG = '/tags/{{tageName}}', - PROPOSE_TAG = '/tags/proposals/{{tagState}}', - //ANSWER_TAG_PROPOSAL = '/tags/proposals/{{tagProposalName}}' + EXERCISE_RESULTS = '/exercises/{{exerciseIdOrUrl}}/results', + TAG_CREATE = '/tags', + TAG_DELETE = '/tags/{{tagName}}', + TAG_PROPOSAL_GET_CREATE = '/tags/proposals', + TAG_PROPOSAL_UPDATE = '/tags/proposals/{{tagName}}', } -- GitLab