@burdenoff/microfe-technospam 2026.1102.4 → 2026.1102.5

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.
@@ -2,16 +2,16 @@ import { notify as e } from "../lib/toast.js";
2
2
  import { userMessageFromError as t } from "../lib/errorMessage.js";
3
3
  import { forTechnospamCourse as n, mapRows as r, toTecCertificate as i, toTecEnrollment as a } from "./canonicalLearning.js";
4
4
  import { useEffect as o, useMemo as s, useState as c } from "react";
5
- import { useApolloClient as l, useLazyQuery as ee, useMutation as u, useQuery as d } from "@apollo/client/react";
6
- import { CombinedGraphQLErrors as te, gql as f } from "@apollo/client";
5
+ import { useApolloClient as l, useLazyQuery as u, useMutation as d, useQuery as f } from "@apollo/client/react";
6
+ import { CombinedGraphQLErrors as ee, gql as p } from "@apollo/client";
7
7
  //#region src/technospam/api/technospamApi.ts
8
- function p(e = 50, t) {
8
+ function m(e = 50, t) {
9
9
  return t ? {
10
10
  limit: e,
11
11
  cursor: t
12
12
  } : { limit: e };
13
13
  }
14
- var m = f`
14
+ var h = p`
15
15
  fragment CourseFields on TecCourse {
16
16
  id
17
17
  slug
@@ -30,7 +30,7 @@ var m = f`
30
30
  createdAt
31
31
  updatedAt
32
32
  }
33
- `, h = f`
33
+ `, g = p`
34
34
  fragment LessonFields on TecLesson {
35
35
  id
36
36
  courseId
@@ -53,7 +53,7 @@ var m = f`
53
53
  createdAt
54
54
  updatedAt
55
55
  }
56
- `, g = f`
56
+ `, _ = p`
57
57
  fragment EnrollmentFields on TecEnrollment {
58
58
  id
59
59
  courseId
@@ -67,7 +67,7 @@ var m = f`
67
67
  createdAt
68
68
  updatedAt
69
69
  }
70
- `, _ = f`
70
+ `, v = p`
71
71
  fragment ProblemFields on TecProblem {
72
72
  id
73
73
  slug
@@ -89,7 +89,7 @@ var m = f`
89
89
  createdAt
90
90
  updatedAt
91
91
  }
92
- `, v = f`
92
+ `, y = p`
93
93
  fragment SubmissionFields on TecSubmission {
94
94
  id
95
95
  problemId
@@ -117,7 +117,7 @@ var m = f`
117
117
  createdAt
118
118
  updatedAt
119
119
  }
120
- `, ne = f`
120
+ `, te = p`
121
121
  fragment ProblemTestCaseFields on TecProblemTestCase {
122
122
  id
123
123
  problemId
@@ -128,7 +128,7 @@ var m = f`
128
128
  input
129
129
  expectedOutput
130
130
  }
131
- `, y = f`
131
+ `, b = p`
132
132
  fragment MentorFields on TecMentor {
133
133
  id
134
134
  userId
@@ -145,7 +145,7 @@ var m = f`
145
145
  createdAt
146
146
  updatedAt
147
147
  }
148
- `, b = f`
148
+ `, x = p`
149
149
  fragment SessionFields on TecMentorSession {
150
150
  id
151
151
  mentorId
@@ -166,7 +166,7 @@ var m = f`
166
166
  createdAt
167
167
  updatedAt
168
168
  }
169
- `, x = f`
169
+ `, S = p`
170
170
  fragment HackathonFields on TecHackathon {
171
171
  id
172
172
  slug
@@ -184,7 +184,7 @@ var m = f`
184
184
  createdAt
185
185
  updatedAt
186
186
  }
187
- `, S = f`
187
+ `, C = p`
188
188
  fragment TeamFields on TecHackathonTeam {
189
189
  id
190
190
  hackathonId
@@ -201,7 +201,7 @@ var m = f`
201
201
  createdAt
202
202
  updatedAt
203
203
  }
204
- `, C = f`
204
+ `, w = p`
205
205
  fragment CertificateFields on TecCertificate {
206
206
  id
207
207
  courseId
@@ -214,8 +214,8 @@ var m = f`
214
214
  revokeReason
215
215
  createdAt
216
216
  }
217
- `, re = f`
218
- ${m}
217
+ `, ne = p`
218
+ ${h}
219
219
  query TecListCourses(
220
220
  $level: TecCourseLevel
221
221
  $status: TecCourseStatus
@@ -231,10 +231,10 @@ var m = f`
231
231
  }
232
232
  }
233
233
  }
234
- `, ie = f`
235
- ${m}
234
+ `, re = p`
236
235
  ${h}
237
236
  ${g}
237
+ ${_}
238
238
  query TecCourse($id: ID!) {
239
239
  tecCourse(id: $id) {
240
240
  ...CourseFields
@@ -246,9 +246,9 @@ var m = f`
246
246
  }
247
247
  }
248
248
  }
249
- `, ae = f`
250
- ${g}
251
- ${m}
249
+ `, ie = p`
250
+ ${_}
251
+ ${h}
252
252
  query TecListEnrollments(
253
253
  $learnerId: ID
254
254
  $courseId: ID
@@ -275,9 +275,9 @@ var m = f`
275
275
  }
276
276
  }
277
277
  }
278
- `, oe = f`
279
- ${C}
280
- ${m}
278
+ `, ae = p`
279
+ ${w}
280
+ ${h}
281
281
  query TecListCertificates($learnerId: ID, $courseId: ID) {
282
282
  tecListCertificates(learnerId: $learnerId, courseId: $courseId) {
283
283
  ...CertificateFields
@@ -286,8 +286,8 @@ var m = f`
286
286
  }
287
287
  }
288
288
  }
289
- `, se = f`
290
- ${m}
289
+ `, oe = p`
290
+ ${h}
291
291
  query BuiMyTechnospamEnrollments($courseId: ID, $pagination: PaginationInput) {
292
292
  buiMyEnrollments(source: TECHNOSPAM, courseId: $courseId, pagination: $pagination) {
293
293
  items {
@@ -317,8 +317,8 @@ var m = f`
317
317
  }
318
318
  }
319
319
  }
320
- `, ce = f`
321
- ${m}
320
+ `, se = p`
321
+ ${h}
322
322
  query BuiMyTechnospamCertificates($courseId: ID, $pagination: PaginationInput) {
323
323
  buiMyCertificates(source: TECHNOSPAM, courseId: $courseId, pagination: $pagination) {
324
324
  items {
@@ -346,8 +346,8 @@ var m = f`
346
346
  }
347
347
  }
348
348
  }
349
- `, le = f`
350
- ${_}
349
+ `, ce = p`
350
+ ${v}
351
351
  query TecListProblems(
352
352
  $difficulty: TecProblemDifficulty
353
353
  $status: TecProblemStatus
@@ -375,10 +375,10 @@ var m = f`
375
375
  }
376
376
  }
377
377
  }
378
- `, ue = f`
379
- ${_}
378
+ `, le = p`
380
379
  ${v}
381
- ${ne}
380
+ ${y}
381
+ ${te}
382
382
  query TecProblem($id: ID!) {
383
383
  tecProblem(id: $id) {
384
384
  ...ProblemFields
@@ -390,16 +390,16 @@ var m = f`
390
390
  }
391
391
  }
392
392
  }
393
- `, de = f`
394
- ${v}
393
+ `, ue = p`
394
+ ${y}
395
395
  mutation TecRegradeSubmission($id: ID!) {
396
396
  tecRegradeSubmission(id: $id) {
397
397
  ...SubmissionFields
398
398
  }
399
399
  }
400
- `, fe = f`
400
+ `, de = p`
401
+ ${y}
401
402
  ${v}
402
- ${_}
403
403
  query TecListSubmissions(
404
404
  $learnerId: ID
405
405
  $problemId: ID
@@ -426,8 +426,8 @@ var m = f`
426
426
  }
427
427
  }
428
428
  }
429
- `, w = f`
430
- ${y}
429
+ `, fe = p`
430
+ ${b}
431
431
  query TecListMentors($status: TecMentorStatus, $pagination: PaginationInput) {
432
432
  tecListMentors(status: $status, pagination: $pagination) {
433
433
  items {
@@ -439,9 +439,9 @@ var m = f`
439
439
  }
440
440
  }
441
441
  }
442
- `, T = f`
443
- ${y}
442
+ `, pe = p`
444
443
  ${b}
444
+ ${x}
445
445
  query TecMentor($id: ID!) {
446
446
  tecMentor(id: $id) {
447
447
  ...MentorFields
@@ -450,9 +450,9 @@ var m = f`
450
450
  }
451
451
  }
452
452
  }
453
- `, E = f`
453
+ `, me = p`
454
+ ${x}
454
455
  ${b}
455
- ${y}
456
456
  query TecListSessions(
457
457
  $mentorId: ID
458
458
  $menteeId: ID
@@ -477,7 +477,7 @@ var m = f`
477
477
  }
478
478
  }
479
479
  }
480
- `, D = f`
480
+ `, T = p`
481
481
  query TecCalculateSessionCost($mentorId: ID!, $durationMinutes: Int) {
482
482
  tecCalculateSessionCost(mentorId: $mentorId, durationMinutes: $durationMinutes) {
483
483
  mentorId
@@ -491,8 +491,8 @@ var m = f`
491
491
  }
492
492
  }
493
493
  `;
494
- f`
495
- ${f`
494
+ p`
495
+ ${p`
496
496
  fragment PayoutFields on TecMentorPayout {
497
497
  id
498
498
  mentorId
@@ -518,8 +518,8 @@ f`
518
518
  }
519
519
  }
520
520
  `;
521
- var O = f`
522
- ${x}
521
+ var E = p`
522
+ ${S}
523
523
  query TecListHackathons($status: TecHackathonStatus, $pagination: PaginationInput) {
524
524
  tecListHackathons(status: $status, pagination: $pagination) {
525
525
  items {
@@ -531,9 +531,9 @@ var O = f`
531
531
  }
532
532
  }
533
533
  }
534
- `, k = f`
535
- ${x}
534
+ `, D = p`
536
535
  ${S}
536
+ ${C}
537
537
  query TecHackathon($id: ID!) {
538
538
  tecHackathon(id: $id) {
539
539
  ...HackathonFields
@@ -542,8 +542,8 @@ var O = f`
542
542
  }
543
543
  }
544
544
  }
545
- `, A = f`
546
- ${S}
545
+ `, O = p`
546
+ ${C}
547
547
  query TecListTeams($hackathonId: ID!, $pagination: PaginationInput) {
548
548
  tecListTeams(hackathonId: $hackathonId, pagination: $pagination) {
549
549
  items {
@@ -555,8 +555,8 @@ var O = f`
555
555
  }
556
556
  }
557
557
  }
558
- `, j = f`
559
- ${h}
558
+ `, k = p`
559
+ ${g}
560
560
  query TecListLessons($courseId: ID!, $pagination: PaginationInput) {
561
561
  tecListLessons(courseId: $courseId, pagination: $pagination) {
562
562
  items {
@@ -568,31 +568,31 @@ var O = f`
568
568
  }
569
569
  }
570
570
  }
571
- `, M = (e) => d(re, {
571
+ `, A = (e) => f(ne, {
572
572
  variables: {
573
- pagination: p(50),
573
+ pagination: m(50),
574
574
  ...e
575
575
  },
576
576
  fetchPolicy: "cache-and-network"
577
- }), N = (e) => d(ie, {
577
+ }), j = (e) => f(re, {
578
578
  variables: { id: e },
579
579
  skip: !e,
580
580
  fetchPolicy: "cache-and-network"
581
- }), P = (e) => d(ae, {
581
+ }), M = (e) => f(ie, {
582
582
  variables: {
583
- pagination: p(50),
583
+ pagination: m(50),
584
584
  ...e
585
585
  },
586
586
  fetchPolicy: "cache-and-network"
587
- }), F = (e) => d(oe, {
587
+ }), N = (e) => f(ae, {
588
588
  variables: e,
589
589
  fetchPolicy: "cache-and-network"
590
590
  });
591
- function I(e = {}) {
592
- let t = d(se, {
591
+ function P(e = {}) {
592
+ let t = f(oe, {
593
593
  variables: {
594
594
  ...e.buiCourseId ? { courseId: e.buiCourseId } : {},
595
- pagination: p(e.limit ?? 100)
595
+ pagination: m(e.limit ?? 100)
596
596
  },
597
597
  skip: e.skip,
598
598
  fetchPolicy: "cache-and-network"
@@ -602,11 +602,11 @@ function I(e = {}) {
602
602
  enrollments: o
603
603
  };
604
604
  }
605
- function L(e = {}) {
606
- let t = d(ce, {
605
+ function F(e = {}) {
606
+ let t = f(se, {
607
607
  variables: {
608
608
  ...e.buiCourseId ? { courseId: e.buiCourseId } : {},
609
- pagination: p(e.limit ?? 100)
609
+ pagination: m(e.limit ?? 100)
610
610
  },
611
611
  skip: e.skip,
612
612
  fetchPolicy: "cache-and-network"
@@ -616,23 +616,23 @@ function L(e = {}) {
616
616
  certificates: o
617
617
  };
618
618
  }
619
- var R = (e) => d(le, {
619
+ var I = (e) => f(ce, {
620
620
  variables: {
621
- pagination: p(50),
621
+ pagination: m(50),
622
622
  ...e
623
623
  },
624
624
  fetchPolicy: "cache-and-network"
625
- }), z = (e) => d(ue, {
625
+ }), L = (e) => f(le, {
626
626
  variables: { id: e },
627
627
  skip: !e,
628
628
  fetchPolicy: "cache-and-network"
629
- }), B = (e) => d(fe, {
629
+ }), R = (e) => f(de, {
630
630
  variables: {
631
- pagination: p(50),
631
+ pagination: m(50),
632
632
  ...e
633
633
  },
634
634
  fetchPolicy: "cache-and-network"
635
- }), V = f`
635
+ }), z = p`
636
636
  query TecListSolvedSubmissions($learnerId: ID!, $pagination: PaginationInput) {
637
637
  tecListSubmissions(learnerId: $learnerId, pagination: $pagination) {
638
638
  items {
@@ -646,8 +646,8 @@ var R = (e) => d(le, {
646
646
  }
647
647
  }
648
648
  }
649
- `, pe = /* @__PURE__ */ new Set();
650
- function me(e) {
649
+ `, he = /* @__PURE__ */ new Set();
650
+ function ge(e) {
651
651
  let t = l(), [n, r] = c(null);
652
652
  return o(() => {
653
653
  if (!e) return;
@@ -658,10 +658,10 @@ function me(e) {
658
658
  let o;
659
659
  try {
660
660
  o = (await t.query({
661
- query: V,
661
+ query: z,
662
662
  variables: {
663
663
  learnerId: e,
664
- pagination: p(100, a)
664
+ pagination: m(100, a)
665
665
  },
666
666
  fetchPolicy: "network-only"
667
667
  })).data?.tecListSubmissions;
@@ -679,58 +679,58 @@ function me(e) {
679
679
  })(), () => {
680
680
  n = !0;
681
681
  };
682
- }, [t, e]), e && n?.learnerId === e ? n.ids : pe;
682
+ }, [t, e]), e && n?.learnerId === e ? n.ids : he;
683
683
  }
684
- var he = (e) => d(w, {
684
+ var _e = (e) => f(fe, {
685
685
  variables: {
686
- pagination: p(50),
686
+ pagination: m(50),
687
687
  ...e
688
688
  },
689
689
  fetchPolicy: "cache-and-network"
690
- }), ge = (e) => d(T, {
690
+ }), ve = (e) => f(pe, {
691
691
  variables: { id: e },
692
692
  skip: !e,
693
693
  fetchPolicy: "cache-and-network"
694
- }), _e = (e) => d(E, {
694
+ }), ye = (e) => f(me, {
695
695
  variables: {
696
- pagination: p(50),
696
+ pagination: m(50),
697
697
  ...e
698
698
  },
699
699
  fetchPolicy: "cache-and-network"
700
- }), ve = (e, t) => d(D, {
700
+ }), be = (e, t) => f(T, {
701
701
  variables: {
702
702
  mentorId: e,
703
703
  durationMinutes: t
704
704
  },
705
705
  skip: !e || !Number.isFinite(t) || t <= 0,
706
706
  fetchPolicy: "cache-and-network"
707
- }), ye = (e) => d(O, {
707
+ }), xe = (e) => f(E, {
708
708
  variables: {
709
- pagination: p(50),
709
+ pagination: m(50),
710
710
  ...e
711
711
  },
712
712
  fetchPolicy: "cache-and-network"
713
- }), be = (e) => d(k, {
713
+ }), Se = (e) => f(D, {
714
714
  variables: { id: e },
715
715
  skip: !e,
716
716
  fetchPolicy: "cache-and-network"
717
- }), xe = (e, t) => d(A, {
717
+ }), Ce = (e, t) => f(O, {
718
718
  variables: {
719
719
  hackathonId: e,
720
- pagination: t ?? p(50)
720
+ pagination: t ?? m(50)
721
721
  },
722
722
  skip: !e,
723
723
  fetchPolicy: "cache-and-network"
724
- }), Se = (e, t) => d(j, {
724
+ }), we = (e, t) => f(k, {
725
725
  variables: {
726
726
  courseId: e,
727
- pagination: t ?? p(50)
727
+ pagination: t ?? m(50)
728
728
  },
729
729
  skip: !e,
730
730
  fetchPolicy: "cache-and-network"
731
- }), H = (n) => {
731
+ }), B = (n) => {
732
732
  e.error("Something went wrong", t(n));
733
- }, U = {
733
+ }, V = {
734
734
  courses: "TecListCourses",
735
735
  enrollments: "TecListEnrollments",
736
736
  myEnrollments: "BuiMyTechnospamEnrollments",
@@ -740,21 +740,21 @@ var he = (e) => d(w, {
740
740
  mentors: "TecListMentors",
741
741
  sessions: "TecListSessions",
742
742
  hackathons: "TecListHackathons"
743
- }, Ce = f`
744
- ${g}
743
+ }, Te = p`
744
+ ${_}
745
745
  mutation TecEnroll($input: TecEnrollInput!) {
746
746
  tecEnroll(input: $input) {
747
747
  ...EnrollmentFields
748
748
  }
749
749
  }
750
- `, we = f`
751
- ${v}
750
+ `, Ee = p`
751
+ ${y}
752
752
  mutation TecSubmitSolution($input: TecSubmitSolutionInput!) {
753
753
  tecSubmitSolution(input: $input) {
754
754
  ...SubmissionFields
755
755
  }
756
756
  }
757
- `, Te = f`
757
+ `, De = p`
758
758
  mutation TecRunSolution($input: TecRunSolutionInput!) {
759
759
  tecRunSolution(input: $input) {
760
760
  problemId
@@ -788,241 +788,241 @@ var he = (e) => d(w, {
788
788
  }
789
789
  }
790
790
  }
791
- `, Ee = f`
792
- ${b}
791
+ `, Oe = p`
792
+ ${x}
793
793
  mutation TecBookSession($input: TecBookSessionInput!) {
794
794
  tecBookSession(input: $input) {
795
795
  ...SessionFields
796
796
  }
797
797
  }
798
- `, De = f`
799
- ${b}
798
+ `, ke = p`
799
+ ${x}
800
800
  mutation TecCancelSession($id: ID!) {
801
801
  tecCancelSession(id: $id) {
802
802
  ...SessionFields
803
803
  }
804
804
  }
805
- `, Oe = f`
806
- ${y}
805
+ `, Ae = p`
806
+ ${b}
807
807
  mutation TecBecomeMentor($input: TecCreateMentorInput!) {
808
808
  tecBecomeMentor(input: $input) {
809
809
  ...MentorFields
810
810
  }
811
811
  }
812
- `, ke = f`
813
- ${S}
812
+ `, je = p`
813
+ ${C}
814
814
  mutation TecRegisterTeam($input: TecRegisterTeamInput!) {
815
815
  tecRegisterTeam(input: $input) {
816
816
  ...TeamFields
817
817
  }
818
818
  }
819
- `, Ae = f`
820
- ${S}
819
+ `, Me = p`
820
+ ${C}
821
821
  mutation TecSubmitProject($input: TecSubmitProjectInput!) {
822
822
  tecSubmitProject(input: $input) {
823
823
  ...TeamFields
824
824
  }
825
825
  }
826
- `, je = f`
827
- ${m}
826
+ `, Ne = p`
827
+ ${h}
828
828
  mutation TecCreateCourse($input: TecCreateCourseInput!) {
829
829
  tecCreateCourse(input: $input) {
830
830
  ...CourseFields
831
831
  }
832
832
  }
833
- `, Me = f`
834
- ${m}
833
+ `, Pe = p`
834
+ ${h}
835
835
  mutation TecPublishCourse($id: ID!) {
836
836
  tecPublishCourse(id: $id) {
837
837
  ...CourseFields
838
838
  }
839
839
  }
840
- `, Ne = f`
840
+ `, Fe = p`
841
841
  mutation TecArchiveCourse($id: ID!) {
842
842
  tecArchiveCourse(id: $id)
843
843
  }
844
- `, Pe = f`
845
- ${h}
844
+ `, Ie = p`
845
+ ${g}
846
846
  mutation TecCreateLesson($input: TecCreateLessonInput!) {
847
847
  tecCreateLesson(input: $input) {
848
848
  ...LessonFields
849
849
  }
850
850
  }
851
- `, Fe = f`
852
- ${h}
851
+ `, Le = p`
852
+ ${g}
853
853
  mutation TecUpdateLesson($id: ID!, $input: TecUpdateLessonInput!) {
854
854
  tecUpdateLesson(id: $id, input: $input) {
855
855
  ...LessonFields
856
856
  }
857
857
  }
858
- `, Ie = f`
859
- ${_}
858
+ `, Re = p`
859
+ ${v}
860
860
  mutation TecCreateProblem($input: TecCreateProblemInput!) {
861
861
  tecCreateProblem(input: $input) {
862
862
  ...ProblemFields
863
863
  }
864
864
  }
865
- `, Le = f`
866
- ${_}
865
+ `, ze = p`
866
+ ${v}
867
867
  mutation TecPublishProblem($id: ID!) {
868
868
  tecPublishProblem(id: $id) {
869
869
  ...ProblemFields
870
870
  }
871
871
  }
872
- `, Re = f`
873
- ${x}
872
+ `, Be = p`
873
+ ${S}
874
874
  mutation TecCreateHackathon($input: TecCreateHackathonInput!) {
875
875
  tecCreateHackathon(input: $input) {
876
876
  ...HackathonFields
877
877
  }
878
878
  }
879
- `, ze = f`
880
- ${x}
879
+ `, Ve = p`
880
+ ${S}
881
881
  mutation TecOpenRegistration($id: ID!) {
882
882
  tecOpenRegistration(id: $id) {
883
883
  ...HackathonFields
884
884
  }
885
885
  }
886
- `, Be = f`
887
- ${y}
886
+ `, He = p`
887
+ ${b}
888
888
  mutation TecApproveMentor($id: ID!) {
889
889
  tecApproveMentor(id: $id) {
890
890
  ...MentorFields
891
891
  }
892
892
  }
893
- `, Ve = f`
894
- ${S}
893
+ `, Ue = p`
894
+ ${C}
895
895
  mutation TecScoreTeam($id: ID!, $score: Int!, $winner: Boolean) {
896
896
  tecScoreTeam(id: $id, score: $score, winner: $winner) {
897
897
  ...TeamFields
898
898
  }
899
899
  }
900
- `, He = f`
901
- ${b}
900
+ `, We = p`
901
+ ${x}
902
902
  mutation TecConfirmSession($id: ID!, $meetingUrl: String) {
903
903
  tecConfirmSession(id: $id, meetingUrl: $meetingUrl) {
904
904
  ...SessionFields
905
905
  }
906
906
  }
907
- `, Ue = f`
908
- ${b}
907
+ `, Ge = p`
908
+ ${x}
909
909
  mutation TecCompleteSession($id: ID!, $rating: Int, $feedback: String) {
910
910
  tecCompleteSession(id: $id, rating: $rating, feedback: $feedback) {
911
911
  ...SessionFields
912
912
  }
913
913
  }
914
- `, We = f`
915
- ${v}
914
+ `, Ke = p`
915
+ ${y}
916
916
  mutation TecGradeSubmission($id: ID!, $verdict: TecSubmissionVerdict!, $runtimeMs: Int) {
917
917
  tecGradeSubmission(id: $id, verdict: $verdict, runtimeMs: $runtimeMs) {
918
918
  ...SubmissionFields
919
919
  }
920
920
  }
921
- `, Ge = f`
922
- ${C}
921
+ `, qe = p`
922
+ ${w}
923
923
  mutation TecIssueCertificate($courseId: ID!, $learnerId: ID!, $score: Int!) {
924
924
  tecIssueCertificate(courseId: $courseId, learnerId: $learnerId, score: $score) {
925
925
  ...CertificateFields
926
926
  }
927
927
  }
928
928
  `;
929
- f`
930
- ${C}
929
+ p`
930
+ ${w}
931
931
  mutation TecRevokeCertificate($id: ID!, $reason: String) {
932
932
  tecRevokeCertificate(id: $id, reason: $reason) {
933
933
  ...CertificateFields
934
934
  }
935
935
  }
936
936
  `;
937
- var Ke = f`
938
- ${x}
937
+ var Je = p`
938
+ ${S}
939
939
  mutation TecStartHackathon($id: ID!) {
940
940
  tecStartHackathon(id: $id) {
941
941
  ...HackathonFields
942
942
  }
943
943
  }
944
- `, qe = f`
945
- ${x}
944
+ `, Ye = p`
945
+ ${S}
946
946
  mutation TecStartJudging($id: ID!) {
947
947
  tecStartJudging(id: $id) {
948
948
  ...HackathonFields
949
949
  }
950
950
  }
951
- `, Je = f`
952
- ${x}
951
+ `, Xe = p`
952
+ ${S}
953
953
  mutation TecCompleteHackathon($id: ID!) {
954
954
  tecCompleteHackathon(id: $id) {
955
955
  ...HackathonFields
956
956
  }
957
957
  }
958
- `, Ye = () => u(Ce, {
959
- onError: H,
958
+ `, Ze = () => d(Te, {
959
+ onError: B,
960
960
  refetchQueries: [
961
- U.enrollments,
962
- U.myEnrollments,
963
- U.courses
961
+ V.enrollments,
962
+ V.myEnrollments,
963
+ V.courses
964
964
  ]
965
- }), Xe = () => u(we, {
966
- onError: H,
967
- refetchQueries: [U.submissions]
968
- }), Ze = () => u(Te, { onError: H }), Qe = () => u(de, {
969
- onError: H,
970
- refetchQueries: [U.submissions]
971
- }), $e = () => u(Ee, {
972
- onError: H,
973
- refetchQueries: [U.sessions, U.mentors]
974
- }), et = () => u(De, {
975
- onError: H,
976
- refetchQueries: [U.sessions]
977
- }), tt = () => u(Oe, {
978
- onError: H,
979
- refetchQueries: [U.mentors]
980
- }), nt = () => u(ke, {
981
- onError: H,
982
- refetchQueries: [U.hackathons]
983
- }), rt = () => u(Ae, { onError: H }), it = () => u(je, {
984
- onError: H,
985
- refetchQueries: [U.courses]
986
- }), at = () => u(Me, {
987
- onError: H,
988
- refetchQueries: [U.courses]
989
- }), ot = () => u(Ne, {
990
- onError: H,
991
- refetchQueries: [U.courses]
992
- }), st = () => u(Pe, { onError: H }), ct = () => u(Fe, { onError: H }), lt = () => u(Ie, {
993
- onError: H,
994
- refetchQueries: [U.problems]
995
- }), ut = () => u(Le, {
996
- onError: H,
997
- refetchQueries: [U.problems]
998
- }), dt = () => u(Re, {
999
- onError: H,
1000
- refetchQueries: [U.hackathons]
1001
- }), ft = () => u(ze, {
1002
- onError: H,
1003
- refetchQueries: [U.hackathons]
1004
- }), pt = () => u(Be, {
1005
- onError: H,
1006
- refetchQueries: [U.mentors]
1007
- }), mt = () => u(Ve, { onError: H }), ht = () => u(He, {
1008
- onError: H,
1009
- refetchQueries: [U.sessions]
1010
- }), gt = () => u(Ue, {
1011
- onError: H,
1012
- refetchQueries: [U.sessions]
1013
- }), _t = () => u(We, {
1014
- onError: H,
1015
- refetchQueries: [U.submissions]
1016
- }), vt = () => u(Ge, { onError: H }), yt = () => u(Ke, {
1017
- onError: H,
1018
- refetchQueries: [U.hackathons]
1019
- }), bt = () => u(qe, {
1020
- onError: H,
1021
- refetchQueries: [U.hackathons]
1022
- }), xt = () => u(Je, {
1023
- onError: H,
1024
- refetchQueries: [U.hackathons]
1025
- }), W = f`
965
+ }), Qe = () => d(Ee, {
966
+ onError: B,
967
+ refetchQueries: [V.submissions]
968
+ }), $e = () => d(De, { onError: B }), et = () => d(ue, {
969
+ onError: B,
970
+ refetchQueries: [V.submissions]
971
+ }), tt = () => d(Oe, {
972
+ onError: B,
973
+ refetchQueries: [V.sessions, V.mentors]
974
+ }), nt = () => d(ke, {
975
+ onError: B,
976
+ refetchQueries: [V.sessions]
977
+ }), rt = () => d(Ae, {
978
+ onError: B,
979
+ refetchQueries: [V.mentors]
980
+ }), it = () => d(je, {
981
+ onError: B,
982
+ refetchQueries: [V.hackathons]
983
+ }), at = () => d(Me, { onError: B }), ot = () => d(Ne, {
984
+ onError: B,
985
+ refetchQueries: [V.courses]
986
+ }), st = () => d(Pe, {
987
+ onError: B,
988
+ refetchQueries: [V.courses]
989
+ }), ct = () => d(Fe, {
990
+ onError: B,
991
+ refetchQueries: [V.courses]
992
+ }), lt = () => d(Ie, { onError: B }), ut = () => d(Le, { onError: B }), dt = () => d(Re, {
993
+ onError: B,
994
+ refetchQueries: [V.problems]
995
+ }), ft = () => d(ze, {
996
+ onError: B,
997
+ refetchQueries: [V.problems]
998
+ }), pt = () => d(Be, {
999
+ onError: B,
1000
+ refetchQueries: [V.hackathons]
1001
+ }), mt = () => d(Ve, {
1002
+ onError: B,
1003
+ refetchQueries: [V.hackathons]
1004
+ }), ht = () => d(He, {
1005
+ onError: B,
1006
+ refetchQueries: [V.mentors]
1007
+ }), gt = () => d(Ue, { onError: B }), _t = () => d(We, {
1008
+ onError: B,
1009
+ refetchQueries: [V.sessions]
1010
+ }), vt = () => d(Ge, {
1011
+ onError: B,
1012
+ refetchQueries: [V.sessions]
1013
+ }), yt = () => d(Ke, {
1014
+ onError: B,
1015
+ refetchQueries: [V.submissions]
1016
+ }), bt = () => d(qe, { onError: B }), xt = () => d(Je, {
1017
+ onError: B,
1018
+ refetchQueries: [V.hackathons]
1019
+ }), St = () => d(Ye, {
1020
+ onError: B,
1021
+ refetchQueries: [V.hackathons]
1022
+ }), Ct = () => d(Xe, {
1023
+ onError: B,
1024
+ refetchQueries: [V.hackathons]
1025
+ }), H = p`
1026
1026
  fragment StudyPlanStepFields on TecStudyPlanStep {
1027
1027
  id
1028
1028
  order
@@ -1035,8 +1035,8 @@ var Ke = f`
1035
1035
  estimatedMinutes
1036
1036
  completedAt
1037
1037
  }
1038
- `, G = f`
1039
- ${W}
1038
+ `, U = p`
1039
+ ${H}
1040
1040
  fragment StudyPlanFields on TecStudyPlan {
1041
1041
  id
1042
1042
  goal
@@ -1052,8 +1052,8 @@ var Ke = f`
1052
1052
  ...StudyPlanStepFields
1053
1053
  }
1054
1054
  }
1055
- `, St = f`
1056
- ${G}
1055
+ `, wt = p`
1056
+ ${U}
1057
1057
  query TecMyStudyPlans {
1058
1058
  tecMyStudyPlans {
1059
1059
  items {
@@ -1065,34 +1065,34 @@ var Ke = f`
1065
1065
  }
1066
1066
  }
1067
1067
  }
1068
- `, Ct = f`
1069
- ${G}
1068
+ `, Tt = p`
1069
+ ${U}
1070
1070
  mutation TecGenerateStudyPlan($input: TecGenerateStudyPlanInput!) {
1071
1071
  tecGenerateStudyPlan(input: $input) {
1072
1072
  ...StudyPlanFields
1073
1073
  }
1074
1074
  }
1075
- `, wt = f`
1076
- ${W}
1075
+ `, Et = p`
1076
+ ${H}
1077
1077
  mutation TecUpdateStudyPlanStepStatus($input: TecUpdateStudyPlanStepStatusInput!) {
1078
1078
  tecUpdateStudyPlanStepStatus(input: $input) {
1079
1079
  ...StudyPlanStepFields
1080
1080
  }
1081
1081
  }
1082
- `, Tt = f`
1082
+ `, Dt = p`
1083
1083
  mutation TecArchiveStudyPlan($id: ID!) {
1084
1084
  tecArchiveStudyPlan(id: $id)
1085
1085
  }
1086
- `, Et = () => d(St, { fetchPolicy: "cache-and-network" }), Dt = () => u(Ct, {
1087
- onError: H,
1086
+ `, Ot = () => f(wt, { fetchPolicy: "cache-and-network" }), kt = () => d(Tt, {
1087
+ onError: B,
1088
1088
  refetchQueries: ["TecMyStudyPlans"]
1089
- }), Ot = () => u(wt, {
1090
- onError: H,
1089
+ }), At = () => d(Et, {
1090
+ onError: B,
1091
1091
  refetchQueries: ["TecMyStudyPlans"]
1092
- }), kt = () => u(Tt, {
1093
- onError: H,
1092
+ }), jt = () => d(Dt, {
1093
+ onError: B,
1094
1094
  refetchQueries: ["TecMyStudyPlans"]
1095
- }), K = f`
1095
+ }), W = p`
1096
1096
  fragment PortfolioItemFields on TecPortfolioItem {
1097
1097
  id
1098
1098
  kind
@@ -1103,8 +1103,8 @@ var Ke = f`
1103
1103
  completionDate
1104
1104
  order
1105
1105
  }
1106
- `, q = f`
1107
- ${K}
1106
+ `, G = p`
1107
+ ${W}
1108
1108
  fragment PortfolioFields on TecPortfolio {
1109
1109
  id
1110
1110
  isPublished
@@ -1114,60 +1114,60 @@ var Ke = f`
1114
1114
  ...PortfolioItemFields
1115
1115
  }
1116
1116
  }
1117
- `, At = f`
1118
- ${q}
1117
+ `, Mt = p`
1118
+ ${G}
1119
1119
  query TecMyPortfolio {
1120
1120
  tecMyPortfolio {
1121
1121
  ...PortfolioFields
1122
1122
  }
1123
1123
  }
1124
- `, jt = f`
1125
- ${K}
1124
+ `, Nt = p`
1125
+ ${W}
1126
1126
  mutation TecAddPortfolioItem($input: TecAddPortfolioItemInput!) {
1127
1127
  tecAddPortfolioItem(input: $input) {
1128
1128
  ...PortfolioItemFields
1129
1129
  }
1130
1130
  }
1131
1131
  `;
1132
- f`
1133
- ${q}
1132
+ p`
1133
+ ${G}
1134
1134
  mutation TecReorderPortfolioItems($input: TecReorderPortfolioItemsInput!) {
1135
1135
  tecReorderPortfolioItems(input: $input) {
1136
1136
  ...PortfolioFields
1137
1137
  }
1138
1138
  }
1139
1139
  `;
1140
- var Mt = f`
1140
+ var Pt = p`
1141
1141
  mutation TecRemovePortfolioItem($id: ID!) {
1142
1142
  tecRemovePortfolioItem(id: $id)
1143
1143
  }
1144
- `, Nt = f`
1145
- ${q}
1144
+ `, Ft = p`
1145
+ ${G}
1146
1146
  mutation TecPublishPortfolio {
1147
1147
  tecPublishPortfolio {
1148
1148
  ...PortfolioFields
1149
1149
  }
1150
1150
  }
1151
- `, Pt = f`
1152
- ${q}
1151
+ `, It = p`
1152
+ ${G}
1153
1153
  mutation TecUnpublishPortfolio {
1154
1154
  tecUnpublishPortfolio {
1155
1155
  ...PortfolioFields
1156
1156
  }
1157
1157
  }
1158
- `, Ft = () => d(At, { fetchPolicy: "cache-and-network" }), J = ["TecMyPortfolio"], It = () => u(jt, {
1159
- onError: H,
1160
- refetchQueries: J
1161
- }), Lt = () => u(Mt, {
1162
- onError: H,
1163
- refetchQueries: J
1164
- }), Rt = () => u(Nt, {
1165
- onError: H,
1166
- refetchQueries: J
1167
- }), zt = () => u(Pt, {
1168
- onError: H,
1169
- refetchQueries: J
1170
- }), Y = f`
1158
+ `, Lt = () => f(Mt, { fetchPolicy: "cache-and-network" }), K = ["TecMyPortfolio"], Rt = () => d(Nt, {
1159
+ onError: B,
1160
+ refetchQueries: K
1161
+ }), zt = () => d(Pt, {
1162
+ onError: B,
1163
+ refetchQueries: K
1164
+ }), Bt = () => d(Ft, {
1165
+ onError: B,
1166
+ refetchQueries: K
1167
+ }), Vt = () => d(It, {
1168
+ onError: B,
1169
+ refetchQueries: K
1170
+ }), q = p`
1171
1171
  fragment SubmissionReviewFields on TecSubmissionReview {
1172
1172
  id
1173
1173
  submissionId
@@ -1186,38 +1186,38 @@ var Mt = f`
1186
1186
  model
1187
1187
  createdAt
1188
1188
  }
1189
- `, Bt = f`
1190
- ${Y}
1189
+ `, Ht = p`
1190
+ ${q}
1191
1191
  query TecMySubmissionReview($submissionId: ID!) {
1192
1192
  tecMySubmissionReview(submissionId: $submissionId) {
1193
1193
  ...SubmissionReviewFields
1194
1194
  }
1195
1195
  }
1196
- `, Vt = f`
1197
- ${Y}
1196
+ `, Ut = p`
1197
+ ${q}
1198
1198
  mutation TecReviewSubmission($submissionId: ID!) {
1199
1199
  tecReviewSubmission(submissionId: $submissionId) {
1200
1200
  ...SubmissionReviewFields
1201
1201
  }
1202
1202
  }
1203
- `, Ht = (e) => d(Bt, {
1203
+ `, Wt = (e) => f(Ht, {
1204
1204
  variables: { submissionId: e ?? "" },
1205
1205
  skip: !e,
1206
1206
  fetchPolicy: "cache-and-network"
1207
- }), Ut = () => u(Vt, {
1208
- onError: H,
1207
+ }), Gt = () => d(Ut, {
1208
+ onError: B,
1209
1209
  refetchQueries: ["TecMySubmissionReview"]
1210
1210
  });
1211
- function Wt(e = 24, t = 24) {
1211
+ function Kt(e = 24, t = 24) {
1212
1212
  let [n, r] = c(t);
1213
1213
  return {
1214
1214
  limit: n,
1215
1215
  more: () => r((t) => t + e)
1216
1216
  };
1217
1217
  }
1218
- var X = f`
1218
+ var J = p`
1219
+ ${g}
1219
1220
  ${h}
1220
- ${m}
1221
1221
  query TecLessonPlayer($lessonId: ID!, $courseId: ID!) {
1222
1222
  tecLesson(id: $lessonId) {
1223
1223
  ...LessonFields
@@ -1243,7 +1243,7 @@ var X = f`
1243
1243
  }
1244
1244
  }
1245
1245
  }
1246
- `, Gt = f`
1246
+ `, qt = p`
1247
1247
  query TecLessonQuizKey($lessonId: ID!) {
1248
1248
  tecLessonQuizKey(lessonId: $lessonId) {
1249
1249
  prompt
@@ -1252,16 +1252,16 @@ var X = f`
1252
1252
  explanation
1253
1253
  }
1254
1254
  }
1255
- `, Z = f`
1256
- ${g}
1255
+ `, Y = p`
1256
+ ${_}
1257
1257
  mutation TecCompleteLesson($lessonId: ID!) {
1258
1258
  tecCompleteLesson(lessonId: $lessonId) {
1259
1259
  ...EnrollmentFields
1260
1260
  nextLessonId
1261
1261
  }
1262
1262
  }
1263
- `, Kt = f`
1264
- ${g}
1263
+ `, Jt = p`
1264
+ ${_}
1265
1265
  mutation TecSubmitLessonQuiz($lessonId: ID!, $answers: [Int!]!) {
1266
1266
  tecSubmitLessonQuiz(lessonId: $lessonId, answers: $answers) {
1267
1267
  lessonId
@@ -1283,8 +1283,8 @@ var X = f`
1283
1283
  }
1284
1284
  }
1285
1285
  }
1286
- `, qt = f`
1287
- ${g}
1286
+ `, Yt = p`
1287
+ ${_}
1288
1288
  mutation TecRunLessonCode($input: TecRunLessonCodeInput!) {
1289
1289
  tecRunLessonCode(input: $input) {
1290
1290
  lessonId
@@ -1305,33 +1305,33 @@ var X = f`
1305
1305
  }
1306
1306
  }
1307
1307
  }
1308
- `, Jt = (e, t) => d(X, {
1308
+ `, Xt = (e, t) => f(J, {
1309
1309
  variables: {
1310
1310
  courseId: e,
1311
1311
  lessonId: t
1312
1312
  },
1313
1313
  skip: !e || !t,
1314
1314
  fetchPolicy: "cache-and-network"
1315
- }), Q = (e, t = !1) => d(Gt, {
1315
+ }), Zt = (e, t = !1) => f(qt, {
1316
1316
  variables: { lessonId: e },
1317
1317
  skip: t || !e,
1318
1318
  fetchPolicy: "network-only"
1319
- }), $ = [
1319
+ }), X = [
1320
1320
  "TecLessonPlayer",
1321
1321
  "TecCourse",
1322
- U.myEnrollments,
1323
- U.enrollments
1324
- ], Yt = () => u(Z, {
1325
- onError: H,
1326
- refetchQueries: $
1327
- }), Xt = () => u(Kt, {
1328
- onError: H,
1329
- refetchQueries: $
1330
- }), Zt = () => u(qt, { onError: H });
1331
- async function Qt(e, t, n) {
1322
+ V.myEnrollments,
1323
+ V.enrollments
1324
+ ], Qt = () => d(Y, {
1325
+ onError: B,
1326
+ refetchQueries: X
1327
+ }), $t = () => d(Jt, {
1328
+ onError: B,
1329
+ refetchQueries: X
1330
+ }), en = () => d(Yt, { onError: B });
1331
+ async function tn(e, t, n) {
1332
1332
  try {
1333
1333
  return (await e.query({
1334
- query: X,
1334
+ query: J,
1335
1335
  variables: {
1336
1336
  courseId: t,
1337
1337
  lessonId: n
@@ -1342,25 +1342,25 @@ async function Qt(e, t, n) {
1342
1342
  return null;
1343
1343
  }
1344
1344
  }
1345
- var $t = new Set(["NOT_FOUND", "BAD_USER_INPUT"]);
1346
- function en(e) {
1347
- return !te.is(e) || e.errors.length === 0 ? !1 : e.errors.every((e) => {
1345
+ var nn = new Set(["NOT_FOUND", "BAD_USER_INPUT"]);
1346
+ function Z(e) {
1347
+ return !ee.is(e) || e.errors.length === 0 ? !1 : e.errors.every((e) => {
1348
1348
  let t = e.extensions?.code;
1349
- return typeof t == "string" && $t.has(t);
1349
+ return typeof t == "string" && nn.has(t);
1350
1350
  });
1351
1351
  }
1352
- async function tn(e, t) {
1352
+ async function rn(e, t) {
1353
1353
  try {
1354
1354
  return (await e.mutate({
1355
- mutation: Z,
1355
+ mutation: Y,
1356
1356
  variables: { lessonId: t },
1357
- refetchQueries: $
1357
+ refetchQueries: X
1358
1358
  })).data?.tecCompleteLesson ? "sent" : "rejected";
1359
1359
  } catch (e) {
1360
- return en(e) ? "rejected" : "retry";
1360
+ return Z(e) ? "rejected" : "retry";
1361
1361
  }
1362
1362
  }
1363
- var nn = f`
1363
+ var an = p`
1364
1364
  query TecVerifyCertificates($serials: [String!]!) {
1365
1365
  tecVerifyCertificates(serials: $serials) {
1366
1366
  serial
@@ -1375,7 +1375,7 @@ var nn = f`
1375
1375
  verifiedAt
1376
1376
  }
1377
1377
  }
1378
- `, rn = f`
1378
+ `, on = p`
1379
1379
  query TecExportXapiStatements($courseId: ID, $since: DateTime, $until: DateTime, $limit: Int) {
1380
1380
  tecExportXapiStatements(courseId: $courseId, since: $since, until: $until, limit: $limit) {
1381
1381
  statements
@@ -1385,13 +1385,13 @@ var nn = f`
1385
1385
  version
1386
1386
  }
1387
1387
  }
1388
- `, an = (e) => d(nn, {
1388
+ `, sn = (e) => f(an, {
1389
1389
  variables: { serials: e },
1390
1390
  skip: e.length === 0,
1391
1391
  fetchPolicy: "network-only"
1392
1392
  });
1393
- function on() {
1394
- let [n, r] = c(!1), [i, a] = c(null), [o] = ee(rn, { fetchPolicy: "network-only" });
1393
+ function cn() {
1394
+ let [n, r] = c(!1), [i, a] = c(null), [o] = u(on, { fetchPolicy: "network-only" });
1395
1395
  return {
1396
1396
  run: async (n, i = 5e3) => {
1397
1397
  r(!0), a(null);
@@ -1428,7 +1428,139 @@ function on() {
1428
1428
  error: i
1429
1429
  };
1430
1430
  }
1431
+ var ln = "xapi-lrs", Q = "\n connectionId\n connectedBy\n connectedAt\n enabled\n state\n highWaterMark\n lastSyncAt\n lastSuccessAt\n lastError\n lastErrorAt\n consecutiveFailures\n nextAttemptAt\n statementsPushed\n lastPushedCount\n intervalMinutes\n", $ = p`
1432
+ query TecXapiLrsSync {
1433
+ tecXapiLrsSync {
1434
+ ${Q}
1435
+ }
1436
+ }
1437
+ `, un = p`
1438
+ query TecLrsConnection($id: ID!) {
1439
+ getConnection(id: $id) {
1440
+ id
1441
+ name
1442
+ status
1443
+ config
1444
+ }
1445
+ }
1446
+ `, dn = p`
1447
+ query TecXapiLrsProvider($key: String!) {
1448
+ getProviderByKey(key: $key) {
1449
+ id
1450
+ key
1451
+ }
1452
+ }
1453
+ `, fn = p`
1454
+ mutation TecCreateLrsConnection($input: CreateConnectionInput!) {
1455
+ createConnection(input: $input) {
1456
+ id
1457
+ }
1458
+ }
1459
+ `, pn = p`
1460
+ mutation TecAuthenticateLrsConnection($input: BasicAuthInput!) {
1461
+ authenticateWithBasicAuth(input: $input) {
1462
+ id
1463
+ status
1464
+ }
1465
+ }
1466
+ `, mn = p`
1467
+ mutation TecDeleteLrsConnection($id: ID!) {
1468
+ deleteConnection(id: $id)
1469
+ }
1470
+ `, hn = p`
1471
+ mutation TecConnectXapiLrs($connectionId: ID!) {
1472
+ tecConnectXapiLrs(connectionId: $connectionId) {
1473
+ ${Q}
1474
+ }
1475
+ }
1476
+ `, gn = p`
1477
+ mutation TecDisconnectXapiLrs {
1478
+ tecDisconnectXapiLrs
1479
+ }
1480
+ `, _n = p`
1481
+ mutation TecSyncXapiLrsNow {
1482
+ tecSyncXapiLrsNow {
1483
+ ${Q}
1484
+ }
1485
+ }
1486
+ `, vn = () => f($, { fetchPolicy: "network-only" }), yn = (e) => f(un, {
1487
+ variables: { id: e ?? "" },
1488
+ skip: !e
1489
+ });
1490
+ function bn() {
1491
+ let n = l(), [r, i] = c(null), [a] = d(hn), [o] = d(gn), [s] = d(_n), u = () => n.refetchQueries({ include: [$] }), f = async (e) => {
1492
+ try {
1493
+ return await n.mutate({
1494
+ mutation: mn,
1495
+ variables: { id: e }
1496
+ }), !0;
1497
+ } catch {
1498
+ return !1;
1499
+ }
1500
+ };
1501
+ return {
1502
+ connect: async (r) => {
1503
+ i("connect");
1504
+ let o = null;
1505
+ try {
1506
+ let t = (await n.query({
1507
+ query: dn,
1508
+ variables: { key: ln },
1509
+ fetchPolicy: "network-only"
1510
+ })).data?.getProviderByKey?.id;
1511
+ if (!t) throw Error("The xAPI LRS integration is not available in this workspace.");
1512
+ if (o = (await n.mutate({
1513
+ mutation: fn,
1514
+ variables: { input: {
1515
+ providerId: t,
1516
+ name: r.name,
1517
+ config: { baseUrl: r.endpoint }
1518
+ } }
1519
+ })).data?.createConnection.id ?? null, !o) throw Error("The LRS connection could not be created.");
1520
+ await n.mutate({
1521
+ mutation: pn,
1522
+ variables: { input: {
1523
+ connectionId: o,
1524
+ username: r.key,
1525
+ password: r.secret
1526
+ } }
1527
+ });
1528
+ let i = (await a({ variables: { connectionId: o } })).data?.tecConnectXapiLrs ?? null;
1529
+ if (!i) throw Error("The LRS could not be connected.");
1530
+ return o = null, await u(), e.success("LRS connected", "New learner activity is sent automatically."), i;
1531
+ } catch (n) {
1532
+ return e.error("Couldn't connect the LRS", t(n)), null;
1533
+ } finally {
1534
+ o && !await f(o) && e.warning("The LRS secret is still stored", "Remove the unused xAPI LRS connection from Integrations to delete it."), i(null);
1535
+ }
1536
+ },
1537
+ disconnect: async (n) => {
1538
+ i("disconnect");
1539
+ try {
1540
+ await o();
1541
+ let t = n ? await f(n) : !0;
1542
+ return await u(), t ? e.success("LRS disconnected", "The endpoint and its stored secret were removed.") : e.info("LRS disconnected", "Sync stopped. Remove the stored connection from Integrations to delete its secret."), !0;
1543
+ } catch (n) {
1544
+ return e.error("Couldn't disconnect the LRS", t(n)), !1;
1545
+ } finally {
1546
+ i(null);
1547
+ }
1548
+ },
1549
+ syncNow: async () => {
1550
+ i("sync");
1551
+ try {
1552
+ let t = (await s()).data?.tecSyncXapiLrsNow ?? null;
1553
+ return await u(), t?.state === "FAILING" ? e.error("Sync failed", t.lastError ?? "The LRS did not accept the statements.") : t && e.success("Sync finished", `${t.lastPushedCount} statement${t.lastPushedCount === 1 ? "" : "s"} sent.`), t;
1554
+ } catch (n) {
1555
+ return e.error("Couldn't sync", t(n)), null;
1556
+ } finally {
1557
+ i(null);
1558
+ }
1559
+ },
1560
+ busy: r
1561
+ };
1562
+ }
1431
1563
  //#endregion
1432
- export { Qt as fetchLessonForOffline, p as pageArg, tn as sendQueuedLessonCompletion, It as useAddPortfolioItem, pt as useApproveMentor, ot as useArchiveCourse, kt as useArchiveStudyPlan, tt as useBecomeMentor, $e as useBookSession, et as useCancelSession, F as useCertificatesQuery, xt as useCompleteHackathon, Yt as useCompleteLesson, gt as useCompleteSession, ht as useConfirmSession, N as useCourseQuery, M as useCoursesQuery, it as useCreateCourse, dt as useCreateHackathon, st as useCreateLesson, lt as useCreateProblem, Ye as useEnroll, P as useEnrollmentsQuery, Dt as useGenerateStudyPlan, _t as useGradeSubmission, be as useHackathonQuery, ye as useHackathonsQuery, vt as useIssueCertificate, Jt as useLessonPlayerQuery, Q as useLessonQuizKeyQuery, Se as useLessonsQuery, ge as useMentorQuery, he as useMentorsQuery, L as useMyCertificatesQuery, I as useMyEnrollmentsQuery, Ft as useMyPortfolioQuery, Et as useMyStudyPlansQuery, Ht as useMySubmissionReviewQuery, ft as useOpenRegistration, Wt as usePageLimit, z as useProblemQuery, R as useProblemsQuery, at as usePublishCourse, Rt as usePublishPortfolio, ut as usePublishProblem, nt as useRegisterTeam, Qe as useRegradeSubmission, Lt as useRemovePortfolioItem, Ut as useReviewSubmission, Zt as useRunLessonCode, Ze as useRunSolution, mt as useScoreTeam, ve as useSessionCostEstimate, _e as useSessionsQuery, me as useSolvedProblemIds, yt as useStartHackathon, bt as useStartJudging, B as useSubmissionsQuery, Xt as useSubmitLessonQuiz, rt as useSubmitProject, Xe as useSubmitSolution, xe as useTeamsQuery, zt as useUnpublishPortfolio, ct as useUpdateLesson, Ot as useUpdateStudyPlanStepStatus, an as useVerifyCertificatesQuery, on as useXapiExport };
1564
+ export { tn as fetchLessonForOffline, m as pageArg, rn as sendQueuedLessonCompletion, Rt as useAddPortfolioItem, ht as useApproveMentor, ct as useArchiveCourse, jt as useArchiveStudyPlan, rt as useBecomeMentor, tt as useBookSession, nt as useCancelSession, N as useCertificatesQuery, Ct as useCompleteHackathon, Qt as useCompleteLesson, vt as useCompleteSession, _t as useConfirmSession, j as useCourseQuery, A as useCoursesQuery, ot as useCreateCourse, pt as useCreateHackathon, lt as useCreateLesson, dt as useCreateProblem, Ze as useEnroll, M as useEnrollmentsQuery, kt as useGenerateStudyPlan, yt as useGradeSubmission, Se as useHackathonQuery, xe as useHackathonsQuery, bt as useIssueCertificate, Xt as useLessonPlayerQuery, Zt as useLessonQuizKeyQuery, we as useLessonsQuery, yn as useLrsConnectionQuery, ve as useMentorQuery, _e as useMentorsQuery, F as useMyCertificatesQuery, P as useMyEnrollmentsQuery, Lt as useMyPortfolioQuery, Ot as useMyStudyPlansQuery, Wt as useMySubmissionReviewQuery, mt as useOpenRegistration, Kt as usePageLimit, L as useProblemQuery, I as useProblemsQuery, st as usePublishCourse, Bt as usePublishPortfolio, ft as usePublishProblem, it as useRegisterTeam, et as useRegradeSubmission, zt as useRemovePortfolioItem, Gt as useReviewSubmission, en as useRunLessonCode, $e as useRunSolution, gt as useScoreTeam, be as useSessionCostEstimate, ye as useSessionsQuery, ge as useSolvedProblemIds, xt as useStartHackathon, St as useStartJudging, R as useSubmissionsQuery, $t as useSubmitLessonQuiz, at as useSubmitProject, Qe as useSubmitSolution, Ce as useTeamsQuery, Vt as useUnpublishPortfolio, ut as useUpdateLesson, At as useUpdateStudyPlanStepStatus, sn as useVerifyCertificatesQuery, cn as useXapiExport, bn as useXapiLrsActions, vn as useXapiLrsSyncQuery };
1433
1565
 
1434
1566
  //# sourceMappingURL=technospamApi.js.map