academe-kit 0.10.1 → 0.10.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +181 -41
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +448 -4
- package/dist/index.esm.js +181 -41
- package/dist/index.esm.js.map +1 -1
- package/dist/types/components/JourneyStep/frames/types.d.ts +10 -0
- package/dist/types/services/ReportService.d.ts +67 -0
- package/dist/types/services/SubmissionService.d.ts +21 -1
- package/dist/types/services/UserProgressService.d.ts +239 -0
- package/dist/types/services/index.d.ts +3 -0
- package/dist/types/types/academe-api.d.ts +123 -3
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -10793,6 +10793,77 @@ interface paths {
|
|
|
10793
10793
|
patch?: never;
|
|
10794
10794
|
trace?: never;
|
|
10795
10795
|
};
|
|
10796
|
+
"/reports/students-journey-status/{id}": {
|
|
10797
|
+
parameters: {
|
|
10798
|
+
query?: never;
|
|
10799
|
+
header?: never;
|
|
10800
|
+
path?: never;
|
|
10801
|
+
cookie?: never;
|
|
10802
|
+
};
|
|
10803
|
+
/**
|
|
10804
|
+
* Status de jornada dos alunos por bimestre (cards de /students)
|
|
10805
|
+
* @description Recorta os alunos ativos da escola em 4 categorias mutuamente exclusivas
|
|
10806
|
+
* (notStarted, inJourney, inReview, completed) considerando os challenges
|
|
10807
|
+
* do bimestre alvo. Cada aluno cai na categoria mais avançada que alcançou.
|
|
10808
|
+
*/
|
|
10809
|
+
get: {
|
|
10810
|
+
parameters: {
|
|
10811
|
+
query?: {
|
|
10812
|
+
/** @description UUID do educational_model_period, OU a string literal `"all"` para considerar todos os bimestres. Omitido = corrente. */
|
|
10813
|
+
periodId?: string;
|
|
10814
|
+
/** @description Quando presente, restringe o cálculo a UM challenge específico dentro do recorte temporal. */
|
|
10815
|
+
challengeId?: string;
|
|
10816
|
+
};
|
|
10817
|
+
header?: never;
|
|
10818
|
+
path: {
|
|
10819
|
+
/** @description UUID da instituição */
|
|
10820
|
+
id: string;
|
|
10821
|
+
};
|
|
10822
|
+
cookie?: never;
|
|
10823
|
+
};
|
|
10824
|
+
requestBody?: never;
|
|
10825
|
+
responses: {
|
|
10826
|
+
/** @description Status agregado */
|
|
10827
|
+
200: {
|
|
10828
|
+
headers: {
|
|
10829
|
+
[name: string]: unknown;
|
|
10830
|
+
};
|
|
10831
|
+
content: {
|
|
10832
|
+
"application/json": {
|
|
10833
|
+
/** @example success */
|
|
10834
|
+
status?: string;
|
|
10835
|
+
data?: components["schemas"]["StudentsJourneyStatusResponse"];
|
|
10836
|
+
};
|
|
10837
|
+
};
|
|
10838
|
+
};
|
|
10839
|
+
400: {
|
|
10840
|
+
headers: {
|
|
10841
|
+
[name: string]: unknown;
|
|
10842
|
+
};
|
|
10843
|
+
content?: never;
|
|
10844
|
+
};
|
|
10845
|
+
401: {
|
|
10846
|
+
headers: {
|
|
10847
|
+
[name: string]: unknown;
|
|
10848
|
+
};
|
|
10849
|
+
content?: never;
|
|
10850
|
+
};
|
|
10851
|
+
500: {
|
|
10852
|
+
headers: {
|
|
10853
|
+
[name: string]: unknown;
|
|
10854
|
+
};
|
|
10855
|
+
content?: never;
|
|
10856
|
+
};
|
|
10857
|
+
};
|
|
10858
|
+
};
|
|
10859
|
+
put?: never;
|
|
10860
|
+
post?: never;
|
|
10861
|
+
delete?: never;
|
|
10862
|
+
options?: never;
|
|
10863
|
+
head?: never;
|
|
10864
|
+
patch?: never;
|
|
10865
|
+
trace?: never;
|
|
10866
|
+
};
|
|
10796
10867
|
"/roles": {
|
|
10797
10868
|
parameters: {
|
|
10798
10869
|
query?: never;
|
|
@@ -11777,7 +11848,13 @@ interface paths {
|
|
|
11777
11848
|
userId?: string;
|
|
11778
11849
|
groupId?: string;
|
|
11779
11850
|
institutionId?: string;
|
|
11851
|
+
institutionClassroomId?: string;
|
|
11852
|
+
serieId?: string;
|
|
11780
11853
|
status?: "submitted" | "ai_evaluated" | "approved" | "rejected";
|
|
11854
|
+
/** @description Busca por nome ou e-mail do aluno */
|
|
11855
|
+
search?: string;
|
|
11856
|
+
/** @description UUID de um educational_model_period. Recorta as submissões cuja data de envio (submittedAt) cai no intervalo [start, end] do período. Omitido = todos os períodos. */
|
|
11857
|
+
periodId?: string;
|
|
11781
11858
|
/** @description Page number */
|
|
11782
11859
|
page?: components["parameters"]["page"];
|
|
11783
11860
|
/** @description Items per page */
|
|
@@ -11798,7 +11875,16 @@ interface paths {
|
|
|
11798
11875
|
"application/json": {
|
|
11799
11876
|
/** @example success */
|
|
11800
11877
|
status?: string;
|
|
11801
|
-
data?: components["schemas"]["Submission"]
|
|
11878
|
+
data?: (components["schemas"]["Submission"] & {
|
|
11879
|
+
/** @description Período letivo cujo intervalo contém a data de envio (submittedAt). Null quando a escola não tem períodos ou o envio caiu fora de qualquer período. */
|
|
11880
|
+
period?: {
|
|
11881
|
+
id?: string;
|
|
11882
|
+
/** @description 0-based (0 = 1º período) */
|
|
11883
|
+
index?: number;
|
|
11884
|
+
/** @example 1º Bimestre */
|
|
11885
|
+
label?: string;
|
|
11886
|
+
} | null;
|
|
11887
|
+
})[];
|
|
11802
11888
|
meta?: components["schemas"]["PaginationMeta"] & {
|
|
11803
11889
|
/**
|
|
11804
11890
|
* @description Contagem por status, ignorando o filtro `status`. Útil para
|
|
@@ -11814,6 +11900,14 @@ interface paths {
|
|
|
11814
11900
|
/** @example 2 */
|
|
11815
11901
|
rejected?: number;
|
|
11816
11902
|
};
|
|
11903
|
+
/** @description Períodos letivos da escola (ORDER BY start ASC) para o dropdown de filtro. */
|
|
11904
|
+
periods?: {
|
|
11905
|
+
id?: string;
|
|
11906
|
+
index?: number;
|
|
11907
|
+
/** @example 1º Bimestre */
|
|
11908
|
+
label?: string;
|
|
11909
|
+
isCurrent?: boolean;
|
|
11910
|
+
}[];
|
|
11817
11911
|
};
|
|
11818
11912
|
};
|
|
11819
11913
|
};
|
|
@@ -16557,10 +16651,36 @@ interface components {
|
|
|
16557
16651
|
courses?: components["schemas"]["EncourageJourneyCourse"][];
|
|
16558
16652
|
};
|
|
16559
16653
|
EncourageSubmissions: {
|
|
16654
|
+
/** @description Total de alunos ativos da escola (denominador para % concluído) */
|
|
16560
16655
|
total?: number;
|
|
16561
|
-
|
|
16656
|
+
/** @description Última submissão por (aluno, challenge do bimestre corrente) com teacher_score preenchido */
|
|
16657
|
+
finalized?: number;
|
|
16658
|
+
/** @description Última submissão por (aluno, challenge do bimestre corrente) ainda SEM teacher_score */
|
|
16562
16659
|
awaitingTeacher?: number;
|
|
16563
|
-
|
|
16660
|
+
};
|
|
16661
|
+
StudentsJourneyStatusSummary: {
|
|
16662
|
+
/** @description Alunos sem step concluído nos challenges do recorte */
|
|
16663
|
+
notStarted?: number;
|
|
16664
|
+
/** @description Tem step concluído mas sem submissão */
|
|
16665
|
+
inJourney?: number;
|
|
16666
|
+
/** @description Submissão pendente de avaliação (teacher_score nulo) */
|
|
16667
|
+
inReview?: number;
|
|
16668
|
+
/** @description Submissão já avaliada (teacher_score preenchido) */
|
|
16669
|
+
completed?: number;
|
|
16670
|
+
};
|
|
16671
|
+
StudentsJourneyStatusScope: {
|
|
16672
|
+
/** @description UUID do bimestre alvo; null quando allPeriods */
|
|
16673
|
+
periodId?: string | null;
|
|
16674
|
+
/** @description UUID do challenge alvo; null quando todos do recorte */
|
|
16675
|
+
challengeId?: string | null;
|
|
16676
|
+
/** @description Quantidade de challenges no recorte */
|
|
16677
|
+
challengesCount?: number;
|
|
16678
|
+
/** @description Total de alunos ativos da escola — fecha com a soma dos 4 status */
|
|
16679
|
+
totalStudents?: number;
|
|
16680
|
+
};
|
|
16681
|
+
StudentsJourneyStatusResponse: {
|
|
16682
|
+
summary?: components["schemas"]["StudentsJourneyStatusSummary"];
|
|
16683
|
+
scope?: components["schemas"]["StudentsJourneyStatusScope"];
|
|
16564
16684
|
};
|
|
16565
16685
|
EncourageClassPerformance: {
|
|
16566
16686
|
/** Format: uuid */
|
|
@@ -20276,6 +20396,73 @@ declare function createReportService(apiClient: AcademeApiClient): {
|
|
|
20276
20396
|
} | undefined;
|
|
20277
20397
|
};
|
|
20278
20398
|
}, `${string}/${string}`>>;
|
|
20399
|
+
/**
|
|
20400
|
+
* Status de jornada dos alunos para os summary cards da rota /students.
|
|
20401
|
+
*
|
|
20402
|
+
* @param id UUID da instituição.
|
|
20403
|
+
* @param params.periodId UUID do bimestre, ou `"all"` para todos os bimestres
|
|
20404
|
+
* do ano letivo. Omitido = bimestre corrente.
|
|
20405
|
+
* @param params.challengeId UUID de UM challenge específico para restringir o
|
|
20406
|
+
* cálculo dentro do recorte temporal.
|
|
20407
|
+
*/
|
|
20408
|
+
getStudentsJourneyStatusByInstitution(id: string, params?: {
|
|
20409
|
+
periodId?: string;
|
|
20410
|
+
challengeId?: string;
|
|
20411
|
+
}): Promise<openapi_fetch.FetchResponse<{
|
|
20412
|
+
parameters: {
|
|
20413
|
+
query?: {
|
|
20414
|
+
periodId?: string;
|
|
20415
|
+
challengeId?: string;
|
|
20416
|
+
};
|
|
20417
|
+
header?: never;
|
|
20418
|
+
path: {
|
|
20419
|
+
id: string;
|
|
20420
|
+
};
|
|
20421
|
+
cookie?: never;
|
|
20422
|
+
};
|
|
20423
|
+
requestBody?: never;
|
|
20424
|
+
responses: {
|
|
20425
|
+
200: {
|
|
20426
|
+
headers: {
|
|
20427
|
+
[name: string]: unknown;
|
|
20428
|
+
};
|
|
20429
|
+
content: {
|
|
20430
|
+
"application/json": {
|
|
20431
|
+
status?: string;
|
|
20432
|
+
data?: components["schemas"]["StudentsJourneyStatusResponse"];
|
|
20433
|
+
};
|
|
20434
|
+
};
|
|
20435
|
+
};
|
|
20436
|
+
400: {
|
|
20437
|
+
headers: {
|
|
20438
|
+
[name: string]: unknown;
|
|
20439
|
+
};
|
|
20440
|
+
content?: never;
|
|
20441
|
+
};
|
|
20442
|
+
401: {
|
|
20443
|
+
headers: {
|
|
20444
|
+
[name: string]: unknown;
|
|
20445
|
+
};
|
|
20446
|
+
content?: never;
|
|
20447
|
+
};
|
|
20448
|
+
500: {
|
|
20449
|
+
headers: {
|
|
20450
|
+
[name: string]: unknown;
|
|
20451
|
+
};
|
|
20452
|
+
content?: never;
|
|
20453
|
+
};
|
|
20454
|
+
};
|
|
20455
|
+
}, {
|
|
20456
|
+
params: {
|
|
20457
|
+
path: {
|
|
20458
|
+
id: string;
|
|
20459
|
+
};
|
|
20460
|
+
query: {
|
|
20461
|
+
periodId?: string;
|
|
20462
|
+
challengeId?: string;
|
|
20463
|
+
} | undefined;
|
|
20464
|
+
};
|
|
20465
|
+
}, `${string}/${string}`>>;
|
|
20279
20466
|
};
|
|
20280
20467
|
type ReportService = ReturnType<typeof createReportService>;
|
|
20281
20468
|
|
|
@@ -26200,7 +26387,11 @@ declare function createSubmissionService(apiClient: AcademeApiClient): {
|
|
|
26200
26387
|
userId?: string;
|
|
26201
26388
|
groupId?: string;
|
|
26202
26389
|
institutionId?: string;
|
|
26390
|
+
institutionClassroomId?: string;
|
|
26391
|
+
serieId?: string;
|
|
26203
26392
|
status?: "submitted" | "ai_evaluated" | "approved" | "rejected";
|
|
26393
|
+
search?: string;
|
|
26394
|
+
periodId?: string;
|
|
26204
26395
|
page?: components["parameters"]["page"];
|
|
26205
26396
|
limit?: components["parameters"]["limit"];
|
|
26206
26397
|
};
|
|
@@ -26217,7 +26408,13 @@ declare function createSubmissionService(apiClient: AcademeApiClient): {
|
|
|
26217
26408
|
content: {
|
|
26218
26409
|
"application/json": {
|
|
26219
26410
|
status?: string;
|
|
26220
|
-
data?: components["schemas"]["Submission"]
|
|
26411
|
+
data?: (components["schemas"]["Submission"] & {
|
|
26412
|
+
period?: {
|
|
26413
|
+
id?: string;
|
|
26414
|
+
index?: number;
|
|
26415
|
+
label?: string;
|
|
26416
|
+
} | null;
|
|
26417
|
+
})[];
|
|
26221
26418
|
meta?: components["schemas"]["PaginationMeta"] & {
|
|
26222
26419
|
statusCounts?: {
|
|
26223
26420
|
submitted?: number;
|
|
@@ -26225,6 +26422,12 @@ declare function createSubmissionService(apiClient: AcademeApiClient): {
|
|
|
26225
26422
|
approved?: number;
|
|
26226
26423
|
rejected?: number;
|
|
26227
26424
|
};
|
|
26425
|
+
periods?: {
|
|
26426
|
+
id?: string;
|
|
26427
|
+
index?: number;
|
|
26428
|
+
label?: string;
|
|
26429
|
+
isCurrent?: boolean;
|
|
26430
|
+
}[];
|
|
26228
26431
|
};
|
|
26229
26432
|
};
|
|
26230
26433
|
};
|
|
@@ -26238,7 +26441,11 @@ declare function createSubmissionService(apiClient: AcademeApiClient): {
|
|
|
26238
26441
|
userId?: string;
|
|
26239
26442
|
groupId?: string;
|
|
26240
26443
|
institutionId?: string;
|
|
26444
|
+
institutionClassroomId?: string;
|
|
26445
|
+
serieId?: string;
|
|
26241
26446
|
status?: "submitted" | "ai_evaluated" | "approved" | "rejected";
|
|
26447
|
+
search?: string;
|
|
26448
|
+
periodId?: string;
|
|
26242
26449
|
page?: components["parameters"]["page"];
|
|
26243
26450
|
limit?: components["parameters"]["limit"];
|
|
26244
26451
|
} | undefined;
|
|
@@ -26535,6 +26742,242 @@ declare function createSubmissionService(apiClient: AcademeApiClient): {
|
|
|
26535
26742
|
};
|
|
26536
26743
|
type SubmissionService = ReturnType<typeof createSubmissionService>;
|
|
26537
26744
|
|
|
26745
|
+
type JourneyView = components["schemas"]["JourneyView"];
|
|
26746
|
+
/**
|
|
26747
|
+
* Service do agregado `user-challenge-progress` — o caminho oficial para os
|
|
26748
|
+
* clientes (web/mobile) montarem a jornada e o progresso do usuário. Espelha
|
|
26749
|
+
* app-academe-v2/src/services/academe/user-progress.service.ts.
|
|
26750
|
+
*/
|
|
26751
|
+
declare function createUserProgressService(apiClient: AcademeApiClient): {
|
|
26752
|
+
/**
|
|
26753
|
+
* Jornada pré-computada do usuário (status, progress, color, icon,
|
|
26754
|
+
* isUpcoming, série) — base de renderização direta da tela de jornada.
|
|
26755
|
+
*/
|
|
26756
|
+
getJourney(serieId?: string): Promise<JourneyView>;
|
|
26757
|
+
/**
|
|
26758
|
+
* Visão step-by-step do progresso do usuário em um desafio. Cada step traz
|
|
26759
|
+
* `myStartedAt`, `myCompletedAt` e (em desafios em grupo) os agregados do
|
|
26760
|
+
* grupo.
|
|
26761
|
+
*/
|
|
26762
|
+
getChallengeProgress(challengeId: string): Promise<openapi_fetch.FetchResponse<{
|
|
26763
|
+
parameters: {
|
|
26764
|
+
query?: never;
|
|
26765
|
+
header?: never;
|
|
26766
|
+
path: {
|
|
26767
|
+
id: components["parameters"]["id"];
|
|
26768
|
+
};
|
|
26769
|
+
cookie?: never;
|
|
26770
|
+
};
|
|
26771
|
+
requestBody?: never;
|
|
26772
|
+
responses: {
|
|
26773
|
+
200: {
|
|
26774
|
+
headers: {
|
|
26775
|
+
[name: string]: unknown;
|
|
26776
|
+
};
|
|
26777
|
+
content: {
|
|
26778
|
+
"application/json": {
|
|
26779
|
+
status?: string;
|
|
26780
|
+
data?: {
|
|
26781
|
+
challengeStepId?: string;
|
|
26782
|
+
stepName?: string;
|
|
26783
|
+
index?: number;
|
|
26784
|
+
totalMembers?: number;
|
|
26785
|
+
completedMembers?: number;
|
|
26786
|
+
groupCompleted?: boolean;
|
|
26787
|
+
myStartedAt?: string | null;
|
|
26788
|
+
myCompletedAt?: string | null;
|
|
26789
|
+
}[];
|
|
26790
|
+
};
|
|
26791
|
+
};
|
|
26792
|
+
};
|
|
26793
|
+
401: components["responses"]["Unauthorized"];
|
|
26794
|
+
404: components["responses"]["NotFound"];
|
|
26795
|
+
};
|
|
26796
|
+
}, {
|
|
26797
|
+
params: {
|
|
26798
|
+
path: {
|
|
26799
|
+
id: string;
|
|
26800
|
+
};
|
|
26801
|
+
};
|
|
26802
|
+
}, `${string}/${string}`>>;
|
|
26803
|
+
/**
|
|
26804
|
+
* Avança um tick na jornada do usuário no desafio, agnóstico do tipo da
|
|
26805
|
+
* etapa. Cada chamada executa UMA ação:
|
|
26806
|
+
* - Sem progresso na etapa atual → action='started'
|
|
26807
|
+
* - Etapa iniciada (sem completedAt) → action='completed'
|
|
26808
|
+
* - Todas as etapas concluídas → action='finished' (no-op)
|
|
26809
|
+
*
|
|
26810
|
+
* Caminho oficial para clientes (web/mobile). Não usar os endpoints
|
|
26811
|
+
* internos `/steps/{stepId}/start` ou `/steps/{stepId}/complete`.
|
|
26812
|
+
*/
|
|
26813
|
+
advance(challengeId: string): Promise<openapi_fetch.FetchResponse<{
|
|
26814
|
+
parameters: {
|
|
26815
|
+
query?: never;
|
|
26816
|
+
header?: never;
|
|
26817
|
+
path: {
|
|
26818
|
+
id: components["parameters"]["id"];
|
|
26819
|
+
};
|
|
26820
|
+
cookie?: never;
|
|
26821
|
+
};
|
|
26822
|
+
requestBody?: never;
|
|
26823
|
+
responses: {
|
|
26824
|
+
200: {
|
|
26825
|
+
headers: {
|
|
26826
|
+
[name: string]: unknown;
|
|
26827
|
+
};
|
|
26828
|
+
content: {
|
|
26829
|
+
"application/json": {
|
|
26830
|
+
status?: string;
|
|
26831
|
+
data?: {
|
|
26832
|
+
action?: "started" | "completed" | "finished";
|
|
26833
|
+
challengeId?: string;
|
|
26834
|
+
currentStep?: {
|
|
26835
|
+
id?: string;
|
|
26836
|
+
index?: number;
|
|
26837
|
+
name?: string;
|
|
26838
|
+
startedAt?: string | null;
|
|
26839
|
+
completedAt?: string | null;
|
|
26840
|
+
} | null;
|
|
26841
|
+
nextStep?: {
|
|
26842
|
+
id?: string;
|
|
26843
|
+
index?: number;
|
|
26844
|
+
name?: string;
|
|
26845
|
+
startedAt?: string | null;
|
|
26846
|
+
} | null;
|
|
26847
|
+
};
|
|
26848
|
+
};
|
|
26849
|
+
};
|
|
26850
|
+
};
|
|
26851
|
+
401: components["responses"]["Unauthorized"];
|
|
26852
|
+
404: components["responses"]["NotFound"];
|
|
26853
|
+
};
|
|
26854
|
+
}, {
|
|
26855
|
+
params: {
|
|
26856
|
+
path: {
|
|
26857
|
+
id: string;
|
|
26858
|
+
};
|
|
26859
|
+
};
|
|
26860
|
+
}, `${string}/${string}`>>;
|
|
26861
|
+
/**
|
|
26862
|
+
* Status de conclusão do grupo numa etapa. Em desafios em grupo: retorna a
|
|
26863
|
+
* agregação (`canAdvance=true` quando todos concluíram). Em desafios
|
|
26864
|
+
* individuais: retorna o status do próprio usuário.
|
|
26865
|
+
*/
|
|
26866
|
+
getStepGroupStatus(stepId: string): Promise<openapi_fetch.FetchResponse<{
|
|
26867
|
+
parameters: {
|
|
26868
|
+
query?: never;
|
|
26869
|
+
header?: never;
|
|
26870
|
+
path: {
|
|
26871
|
+
stepId: string;
|
|
26872
|
+
};
|
|
26873
|
+
cookie?: never;
|
|
26874
|
+
};
|
|
26875
|
+
requestBody?: never;
|
|
26876
|
+
responses: {
|
|
26877
|
+
200: {
|
|
26878
|
+
headers: {
|
|
26879
|
+
[name: string]: unknown;
|
|
26880
|
+
};
|
|
26881
|
+
content: {
|
|
26882
|
+
"application/json": {
|
|
26883
|
+
status?: string;
|
|
26884
|
+
data?: {
|
|
26885
|
+
isGroupChallenge?: boolean;
|
|
26886
|
+
totalMembers?: number;
|
|
26887
|
+
completedMembers?: number;
|
|
26888
|
+
canAdvance?: boolean;
|
|
26889
|
+
};
|
|
26890
|
+
};
|
|
26891
|
+
};
|
|
26892
|
+
};
|
|
26893
|
+
401: components["responses"]["Unauthorized"];
|
|
26894
|
+
404: components["responses"]["NotFound"];
|
|
26895
|
+
};
|
|
26896
|
+
}, {
|
|
26897
|
+
params: {
|
|
26898
|
+
path: {
|
|
26899
|
+
stepId: string;
|
|
26900
|
+
};
|
|
26901
|
+
};
|
|
26902
|
+
}, `${string}/${string}`>>;
|
|
26903
|
+
/**
|
|
26904
|
+
* Progresso agregado do usuário em um módulo (ou no curso inteiro quando
|
|
26905
|
+
* `moduleId` é omitido). Usado pelos steps do tipo `course` da jornada.
|
|
26906
|
+
*/
|
|
26907
|
+
getCourseProgress(courseId: string, moduleId?: string | null): Promise<openapi_fetch.FetchResponse<{
|
|
26908
|
+
parameters: {
|
|
26909
|
+
query?: never;
|
|
26910
|
+
header?: never;
|
|
26911
|
+
path: {
|
|
26912
|
+
courseId: string;
|
|
26913
|
+
moduleId: string;
|
|
26914
|
+
};
|
|
26915
|
+
cookie?: never;
|
|
26916
|
+
};
|
|
26917
|
+
requestBody?: never;
|
|
26918
|
+
responses: {
|
|
26919
|
+
200: {
|
|
26920
|
+
headers: {
|
|
26921
|
+
[name: string]: unknown;
|
|
26922
|
+
};
|
|
26923
|
+
content: {
|
|
26924
|
+
"application/json": {
|
|
26925
|
+
status?: string;
|
|
26926
|
+
data?: components["schemas"]["UsersCourseLogProgress"];
|
|
26927
|
+
};
|
|
26928
|
+
};
|
|
26929
|
+
};
|
|
26930
|
+
401: components["responses"]["Unauthorized"];
|
|
26931
|
+
404: components["responses"]["NotFound"];
|
|
26932
|
+
};
|
|
26933
|
+
}, {
|
|
26934
|
+
params: {
|
|
26935
|
+
path: {
|
|
26936
|
+
courseId: string;
|
|
26937
|
+
moduleId: string;
|
|
26938
|
+
};
|
|
26939
|
+
};
|
|
26940
|
+
}, `${string}/${string}`>>;
|
|
26941
|
+
/**
|
|
26942
|
+
* [Interno] Força o início de uma etapa específica (idempotente). Clientes
|
|
26943
|
+
* devem preferir `advance`; mantido para casos pontuais (ex.: iniciar a
|
|
26944
|
+
* próxima etapa após concluir um curso aberto a partir da jornada).
|
|
26945
|
+
*/
|
|
26946
|
+
start(stepId: string): Promise<openapi_fetch.FetchResponse<{
|
|
26947
|
+
parameters: {
|
|
26948
|
+
query?: never;
|
|
26949
|
+
header?: never;
|
|
26950
|
+
path: {
|
|
26951
|
+
stepId: string;
|
|
26952
|
+
};
|
|
26953
|
+
cookie?: never;
|
|
26954
|
+
};
|
|
26955
|
+
requestBody?: never;
|
|
26956
|
+
responses: {
|
|
26957
|
+
201: {
|
|
26958
|
+
headers: {
|
|
26959
|
+
[name: string]: unknown;
|
|
26960
|
+
};
|
|
26961
|
+
content: {
|
|
26962
|
+
"application/json": {
|
|
26963
|
+
status?: string;
|
|
26964
|
+
data?: components["schemas"]["UserChallengeProgress"];
|
|
26965
|
+
};
|
|
26966
|
+
};
|
|
26967
|
+
};
|
|
26968
|
+
401: components["responses"]["Unauthorized"];
|
|
26969
|
+
404: components["responses"]["NotFound"];
|
|
26970
|
+
};
|
|
26971
|
+
}, {
|
|
26972
|
+
params: {
|
|
26973
|
+
path: {
|
|
26974
|
+
stepId: string;
|
|
26975
|
+
};
|
|
26976
|
+
};
|
|
26977
|
+
}, `${string}/${string}`>>;
|
|
26978
|
+
};
|
|
26979
|
+
type UserProgressService = ReturnType<typeof createUserProgressService>;
|
|
26980
|
+
|
|
26538
26981
|
type AcademeApiClient = ReturnType<typeof openapi_fetch__default<paths>>;
|
|
26539
26982
|
declare function createAcademeApiClient(baseUrl: string): AcademeApiClient;
|
|
26540
26983
|
interface AcademeServices {
|
|
@@ -26559,6 +27002,7 @@ interface AcademeServices {
|
|
|
26559
27002
|
challenge: ChallengeService;
|
|
26560
27003
|
step: StepService;
|
|
26561
27004
|
submission: SubmissionService;
|
|
27005
|
+
userProgress: UserProgressService;
|
|
26562
27006
|
}
|
|
26563
27007
|
|
|
26564
27008
|
type AcademeKeycloakContextProps = {
|