glitch-javascript-sdk 2.5.4 → 2.5.6

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.
@@ -0,0 +1,57 @@
1
+ import Response from "../util/Response";
2
+ import { AxiosPromise } from "axios";
3
+ declare class Education {
4
+ static listCategories<T>(params?: object): AxiosPromise<Response<T>>;
5
+ static viewCategory<T>(uuid: string, params?: object): AxiosPromise<Response<T>>;
6
+ static createCategory<T>(data: object): AxiosPromise<Response<T>>;
7
+ static updateCategory<T>(uuid: string, data: object): AxiosPromise<Response<T>>;
8
+ static deleteCategory<T>(uuid: string): AxiosPromise<Response<T>>;
9
+ static listTracks<T>(params?: object): AxiosPromise<Response<T>>;
10
+ static viewTrack<T>(uuid: string): AxiosPromise<Response<T>>;
11
+ static createTrack<T>(data: object): AxiosPromise<Response<T>>;
12
+ static updateTrack<T>(uuid: string, data: object): AxiosPromise<Response<T>>;
13
+ static deleteTrack<T>(uuid: string): AxiosPromise<Response<T>>;
14
+ static registerForTrack<T>(uuid: string): AxiosPromise<Response<T>>;
15
+ static myTracks<T>(): AxiosPromise<Response<T>>;
16
+ static getTrackAnalytics<T>(uuid: string): AxiosPromise<Response<T>>;
17
+ static listContent<T>(params?: object): AxiosPromise<Response<T>>;
18
+ static viewContent<T>(uuid: string, params?: object): AxiosPromise<Response<T>>;
19
+ static createContent<T>(data: object): AxiosPromise<Response<T>>;
20
+ static updateContent<T>(uuid: string, data: object): AxiosPromise<Response<T>>;
21
+ static deleteContent<T>(uuid: string): AxiosPromise<Response<T>>;
22
+ static heartbeat<T>(uuid: string, data: object): AxiosPromise<Response<T>>;
23
+ static getSecureVideo<T>(uuid: string): AxiosPromise<Response<T>>;
24
+ static listTrackContent<T>(track_id: string): AxiosPromise<Response<T>>;
25
+ static addContentToTrack<T>(track_id: string, data: object): AxiosPromise<Response<T>>;
26
+ static removeContentFromTrack<T>(track_id: string, content_id: string): AxiosPromise<Response<T>>;
27
+ static reorderTrackContent<T>(track_id: string, content_ids: string[]): AxiosPromise<Response<T>>;
28
+ static listQuizzes<T>(params?: object): AxiosPromise<Response<T>>;
29
+ static viewQuiz<T>(uuid: string): AxiosPromise<Response<T>>;
30
+ static submitQuiz<T>(uuid: string, answers: object): AxiosPromise<Response<T>>;
31
+ static myQuizAttempts<T>(uuid: string): AxiosPromise<Response<T>>;
32
+ static viewQuizAttempt<T>(uuid: string): AxiosPromise<Response<T>>;
33
+ static listQuizQuestions<T>(quiz_id: string): AxiosPromise<Response<T>>;
34
+ static createQuizQuestion<T>(quiz_id: string, data: object): AxiosPromise<Response<T>>;
35
+ static reorderQuizQuestions<T>(quiz_id: string, question_ids: string[]): AxiosPromise<Response<T>>;
36
+ static listQuizOptions<T>(question_id: string): AxiosPromise<Response<T>>;
37
+ static createQuizOption<T>(question_id: string, data: object): AxiosPromise<Response<T>>;
38
+ static syncProgress<T>(data: object): AxiosPromise<Response<T>>;
39
+ static getMyProgressByContent<T>(content_id: string): AxiosPromise<Response<T>>;
40
+ static listRegistrations<T>(params?: object): AxiosPromise<Response<T>>;
41
+ static refreshUserTrack<T>(uuid: string): AxiosPromise<Response<T>>;
42
+ static logView<T>(data: object): AxiosPromise<Response<T>>;
43
+ static saveModuleData<T>(data: object): AxiosPromise<Response<T>>;
44
+ static getModuleData<T>(uuid: string): AxiosPromise<Response<T>>;
45
+ static getConversionReport<T>(): AxiosPromise<Response<T>>;
46
+ static getAdoptionReport<T>(): AxiosPromise<Response<T>>;
47
+ static getQuestionPerformanceReport<T>(params?: object): AxiosPromise<Response<T>>;
48
+ static getRetentionReport<T>(): AxiosPromise<Response<T>>;
49
+ static myBadges<T>(): AxiosPromise<Response<T>>;
50
+ static awardBadge<T>(data: object): AxiosPromise<Response<T>>;
51
+ static myCertificates<T>(): AxiosPromise<Response<T>>;
52
+ static downloadCertificate<T>(uuid: string): AxiosPromise<Response<T>>;
53
+ static listTemplates<T>(): AxiosPromise<Response<T>>;
54
+ static uploadTemplateSignature<T>(uuid: string, file: File): AxiosPromise<Response<T>>;
55
+ static uploadTemplateBackground<T>(uuid: string, file: File): AxiosPromise<Response<T>>;
56
+ }
57
+ export default Education;
@@ -40,6 +40,7 @@ import MarketingAgencies from "./MarketingAgencies";
40
40
  import TwitchReporting from "./TwitchReporting";
41
41
  import Raffles from "./Raffles";
42
42
  import DiscordMarketplace from "./DiscordMarketplace";
43
+ import Education from "./Education";
43
44
  export { Ads };
44
45
  export { AccessKeys };
45
46
  export { Auth };
@@ -82,3 +83,4 @@ export { MarketingAgencies };
82
83
  export { TwitchReporting };
83
84
  export { Raffles };
84
85
  export { DiscordMarketplace };
86
+ export { Education };
@@ -40,6 +40,7 @@ import { MarketingAgencies } from "./api";
40
40
  import { TwitchReporting } from './api';
41
41
  import { Raffles } from './api';
42
42
  import { DiscordMarketplace } from './api';
43
+ import { Education } from './api';
43
44
  import Requests from "./util/Requests";
44
45
  import Parser from "./util/Parser";
45
46
  import Session from "./util/Session";
@@ -101,6 +102,7 @@ declare class Glitch {
101
102
  TwitchReporting: typeof TwitchReporting;
102
103
  Raffles: typeof Raffles;
103
104
  DiscordMarketplace: typeof DiscordMarketplace;
105
+ Education: typeof Education;
104
106
  };
105
107
  static util: {
106
108
  Requests: typeof Requests;
package/dist/esm/index.js CHANGED
@@ -16464,6 +16464,306 @@ var DiscordMarketplace = /** @class */ (function () {
16464
16464
  return DiscordMarketplace;
16465
16465
  }());
16466
16466
 
16467
+ var EducationRoute = /** @class */ (function () {
16468
+ function EducationRoute() {
16469
+ }
16470
+ EducationRoute.routes = {
16471
+ // 1. EducationCategoryController
16472
+ listCategories: { url: '/education/categories', method: HTTP_METHODS.GET },
16473
+ viewCategory: { url: '/education/categories/{uuid}', method: HTTP_METHODS.GET },
16474
+ createCategory: { url: '/education/categories', method: HTTP_METHODS.POST },
16475
+ updateCategory: { url: '/education/categories/{uuid}', method: HTTP_METHODS.PUT },
16476
+ deleteCategory: { url: '/education/categories/{uuid}', method: HTTP_METHODS.DELETE },
16477
+ // 2. EducationTrackController
16478
+ listTracks: { url: '/education/tracks', method: HTTP_METHODS.GET },
16479
+ viewTrack: { url: '/education/tracks/{uuid}', method: HTTP_METHODS.GET },
16480
+ createTrack: { url: '/education/tracks', method: HTTP_METHODS.POST },
16481
+ updateTrack: { url: '/education/tracks/{uuid}', method: HTTP_METHODS.PUT },
16482
+ deleteTrack: { url: '/education/tracks/{uuid}', method: HTTP_METHODS.DELETE },
16483
+ registerTrack: { url: '/education/tracks/{uuid}/register', method: HTTP_METHODS.POST },
16484
+ myTracks: { url: '/education/my-tracks', method: HTTP_METHODS.GET },
16485
+ trackAnalytics: { url: '/education/tracks/{uuid}/analytics', method: HTTP_METHODS.GET },
16486
+ // 3. EducationContentController
16487
+ listContent: { url: '/education/content', method: HTTP_METHODS.GET },
16488
+ viewContent: { url: '/education/content/{uuid}', method: HTTP_METHODS.GET },
16489
+ createContent: { url: '/education/content', method: HTTP_METHODS.POST },
16490
+ updateContent: { url: '/education/content/{uuid}', method: HTTP_METHODS.PUT },
16491
+ deleteContent: { url: '/education/content/{uuid}', method: HTTP_METHODS.DELETE },
16492
+ contentHeartbeat: { url: '/education/content/{uuid}/heartbeat', method: HTTP_METHODS.POST },
16493
+ saveContentModuleState: { url: '/education/content/{uuid}/module-state', method: HTTP_METHODS.POST },
16494
+ getContentModuleState: { url: '/education/content/{uuid}/module-state', method: HTTP_METHODS.GET },
16495
+ getSecureVideo: { url: '/education/content/{uuid}/secure-video', method: HTTP_METHODS.GET },
16496
+ // 4. EducationContentTrackController (Pivot)
16497
+ listTrackContent: { url: '/education/tracks/{track_id}/content', method: HTTP_METHODS.GET },
16498
+ addContentToTrack: { url: '/education/tracks/{track_id}/content', method: HTTP_METHODS.POST },
16499
+ updateContentInTrack: { url: '/education/tracks/{track_id}/content/{content_id}', method: HTTP_METHODS.PUT },
16500
+ removeContentFromTrack: { url: '/education/tracks/{track_id}/content/{content_id}', method: HTTP_METHODS.DELETE },
16501
+ reorderTrackContent: { url: '/education/tracks/{track_id}/reorder', method: HTTP_METHODS.POST },
16502
+ // 5. QuizController
16503
+ listQuizzes: { url: '/education/quizzes', method: HTTP_METHODS.GET },
16504
+ viewQuiz: { url: '/education/quizzes/{uuid}', method: HTTP_METHODS.GET },
16505
+ createQuiz: { url: '/education/quizzes', method: HTTP_METHODS.POST },
16506
+ updateQuiz: { url: '/education/quizzes/{uuid}', method: HTTP_METHODS.PUT },
16507
+ deleteQuiz: { url: '/education/quizzes/{uuid}', method: HTTP_METHODS.DELETE },
16508
+ submitQuiz: { url: '/education/quizzes/{uuid}/submit', method: HTTP_METHODS.POST },
16509
+ myQuizAttempts: { url: '/education/quizzes/{uuid}/attempts', method: HTTP_METHODS.GET },
16510
+ viewQuizAttempt: { url: '/education/quizzes/attempts/{uuid}', method: HTTP_METHODS.GET },
16511
+ // 6. QuizQuestionController
16512
+ listQuizQuestions: { url: '/education/quizzes/{quiz_id}/questions', method: HTTP_METHODS.GET },
16513
+ createQuizQuestion: { url: '/education/quizzes/{quiz_id}/questions', method: HTTP_METHODS.POST },
16514
+ viewQuizQuestion: { url: '/education/questions/{uuid}', method: HTTP_METHODS.GET },
16515
+ updateQuizQuestion: { url: '/education/questions/{uuid}', method: HTTP_METHODS.PUT },
16516
+ deleteQuizQuestion: { url: '/education/questions/{uuid}', method: HTTP_METHODS.DELETE },
16517
+ reorderQuizQuestions: { url: '/education/quizzes/{quiz_id}/questions/reorder', method: HTTP_METHODS.POST },
16518
+ // 7. QuizOptionController
16519
+ listQuizOptions: { url: '/education/questions/{question_id}/options', method: HTTP_METHODS.GET },
16520
+ createQuizOption: { url: '/education/questions/{question_id}/options', method: HTTP_METHODS.POST },
16521
+ viewQuizOption: { url: '/education/options/{uuid}', method: HTTP_METHODS.GET },
16522
+ updateQuizOption: { url: '/education/options/{uuid}', method: HTTP_METHODS.PUT },
16523
+ deleteQuizOption: { url: '/education/options/{uuid}', method: HTTP_METHODS.DELETE },
16524
+ // 8. QuizAttemptController
16525
+ listAllQuizAttempts: { url: '/education/quiz-attempts', method: HTTP_METHODS.GET },
16526
+ viewSpecificQuizAttempt: { url: '/education/quiz-attempts/{uuid}', method: HTTP_METHODS.GET },
16527
+ deleteQuizAttempt: { url: '/education/quiz-attempts/{uuid}', method: HTTP_METHODS.DELETE },
16528
+ listUserQuizAttempts: { url: '/users/{user_id}/quiz-attempts', method: HTTP_METHODS.GET },
16529
+ // 9. QuizAttemptAnswerController
16530
+ listAttemptAnswers: { url: '/education/quiz-attempts/{attempt_id}/answers', method: HTTP_METHODS.GET },
16531
+ viewSpecificAnswer: { url: '/education/quiz-attempt-answers/{uuid}', method: HTTP_METHODS.GET },
16532
+ reportQuestionPerformance: { url: '/education/reports/question-performance', method: HTTP_METHODS.GET },
16533
+ // 10. UserEducationProgressController
16534
+ listAllProgress: { url: '/education/progress', method: HTTP_METHODS.GET },
16535
+ syncProgress: { url: '/education/progress/sync', method: HTTP_METHODS.POST },
16536
+ viewProgress: { url: '/education/progress/{uuid}', method: HTTP_METHODS.GET },
16537
+ deleteProgress: { url: '/education/progress/{uuid}', method: HTTP_METHODS.DELETE },
16538
+ myProgressByContent: { url: '/education/content/{content_id}/my-progress', method: HTTP_METHODS.GET },
16539
+ // 11. UserTrackController
16540
+ listUserTracks: { url: '/education/user-tracks', method: HTTP_METHODS.GET },
16541
+ viewUserTrack: { url: '/education/user-tracks/{uuid}', method: HTTP_METHODS.GET },
16542
+ updateUserTrack: { url: '/education/user-tracks/{uuid}', method: HTTP_METHODS.PUT },
16543
+ deleteUserTrack: { url: '/education/user-tracks/{uuid}', method: HTTP_METHODS.DELETE },
16544
+ refreshUserTrack: { url: '/education/user-tracks/{uuid}/refresh', method: HTTP_METHODS.POST },
16545
+ // 12. UserTrackRegistrationController
16546
+ listRegistrations: { url: '/education/registrations', method: HTTP_METHODS.GET },
16547
+ createRegistration: { url: '/education/registrations', method: HTTP_METHODS.POST },
16548
+ viewRegistration: { url: '/education/registrations/{uuid}', method: HTTP_METHODS.GET },
16549
+ updateRegistration: { url: '/education/registrations/{uuid}', method: HTTP_METHODS.PUT },
16550
+ deleteRegistration: { url: '/education/registrations/{uuid}', method: HTTP_METHODS.DELETE },
16551
+ listTrackRegistrations: { url: '/education/tracks/{track_id}/registrations', method: HTTP_METHODS.GET },
16552
+ // 13. EducationViewController
16553
+ listViews: { url: '/education/views', method: HTTP_METHODS.GET },
16554
+ logView: { url: '/education/views', method: HTTP_METHODS.POST },
16555
+ viewLogDetails: { url: '/education/views/{uuid}', method: HTTP_METHODS.GET },
16556
+ reportConversion: { url: '/education/reports/conversion-impact', method: HTTP_METHODS.GET },
16557
+ reportAdoption: { url: '/education/reports/adoption-metrics', method: HTTP_METHODS.GET },
16558
+ reportRetention: { url: '/education/reports/retention-impact', method: HTTP_METHODS.GET },
16559
+ // 14. EducationModuleDataController
16560
+ listModuleData: { url: '/education/module-data', method: HTTP_METHODS.GET },
16561
+ saveModuleData: { url: '/education/module-data', method: HTTP_METHODS.POST },
16562
+ viewModuleData: { url: '/education/module-data/{uuid}', method: HTTP_METHODS.GET },
16563
+ updateModuleData: { url: '/education/module-data/{uuid}', method: HTTP_METHODS.PUT },
16564
+ deleteModuleData: { url: '/education/module-data/{uuid}', method: HTTP_METHODS.DELETE },
16565
+ // 15. EducationCertificateTemplateController
16566
+ listTemplates: { url: '/education/certificate-templates', method: HTTP_METHODS.GET },
16567
+ createTemplate: { url: '/education/certificate-templates', method: HTTP_METHODS.POST },
16568
+ viewTemplate: { url: '/education/certificate-templates/{uuid}', method: HTTP_METHODS.GET },
16569
+ updateTemplate: { url: '/education/certificate-templates/{uuid}', method: HTTP_METHODS.PUT },
16570
+ deleteTemplate: { url: '/education/certificate-templates/{uuid}', method: HTTP_METHODS.DELETE },
16571
+ uploadTemplateSignature: { url: '/education/certificate-templates/{uuid}/uploadSignature', method: HTTP_METHODS.POST },
16572
+ uploadTemplateBackground: { url: '/education/certificate-templates/{uuid}/uploadBackground', method: HTTP_METHODS.POST },
16573
+ // 16. CertificateController
16574
+ listAllCertificates: { url: '/certificates', method: HTTP_METHODS.GET },
16575
+ myCertificates: { url: '/certificates/mine', method: HTTP_METHODS.GET },
16576
+ viewCertificate: { url: '/certificates/{uuid}', method: HTTP_METHODS.GET },
16577
+ downloadCertificate: { url: '/certificates/{uuid}/download', method: HTTP_METHODS.GET },
16578
+ issueCertificate: { url: '/certificates', method: HTTP_METHODS.POST },
16579
+ revokeCertificate: { url: '/certificates/{uuid}', method: HTTP_METHODS.DELETE },
16580
+ listUserCertificates: { url: '/users/{user_id}/certificates', method: HTTP_METHODS.GET },
16581
+ // 17. BadgeController
16582
+ listAllBadges: { url: '/badges', method: HTTP_METHODS.GET },
16583
+ myBadges: { url: '/badges/mine', method: HTTP_METHODS.GET },
16584
+ viewBadge: { url: '/badges/{uuid}', method: HTTP_METHODS.GET },
16585
+ awardBadge: { url: '/badges', method: HTTP_METHODS.POST },
16586
+ updateBadge: { url: '/badges/{uuid}', method: HTTP_METHODS.PUT },
16587
+ revokeBadge: { url: '/badges/{uuid}', method: HTTP_METHODS.DELETE },
16588
+ listUserBadges: { url: '/users/{user_id}/badges', method: HTTP_METHODS.GET },
16589
+ };
16590
+ return EducationRoute;
16591
+ }());
16592
+
16593
+ var Education = /** @class */ (function () {
16594
+ function Education() {
16595
+ }
16596
+ // --- 1. CATEGORIES ---
16597
+ Education.listCategories = function (params) {
16598
+ return Requests.processRoute(EducationRoute.routes.listCategories, undefined, undefined, params);
16599
+ };
16600
+ Education.viewCategory = function (uuid, params) {
16601
+ return Requests.processRoute(EducationRoute.routes.viewCategory, undefined, { uuid: uuid }, params);
16602
+ };
16603
+ Education.createCategory = function (data) {
16604
+ return Requests.processRoute(EducationRoute.routes.createCategory, data);
16605
+ };
16606
+ Education.updateCategory = function (uuid, data) {
16607
+ return Requests.processRoute(EducationRoute.routes.updateCategory, data, { uuid: uuid });
16608
+ };
16609
+ Education.deleteCategory = function (uuid) {
16610
+ return Requests.processRoute(EducationRoute.routes.deleteCategory, undefined, { uuid: uuid });
16611
+ };
16612
+ // --- 2. TRACKS ---
16613
+ Education.listTracks = function (params) {
16614
+ return Requests.processRoute(EducationRoute.routes.listTracks, undefined, undefined, params);
16615
+ };
16616
+ Education.viewTrack = function (uuid) {
16617
+ return Requests.processRoute(EducationRoute.routes.viewTrack, undefined, { uuid: uuid });
16618
+ };
16619
+ Education.createTrack = function (data) {
16620
+ return Requests.processRoute(EducationRoute.routes.createTrack, data);
16621
+ };
16622
+ Education.updateTrack = function (uuid, data) {
16623
+ return Requests.processRoute(EducationRoute.routes.updateTrack, data, { uuid: uuid });
16624
+ };
16625
+ Education.deleteTrack = function (uuid) {
16626
+ return Requests.processRoute(EducationRoute.routes.deleteTrack, undefined, { uuid: uuid });
16627
+ };
16628
+ Education.registerForTrack = function (uuid) {
16629
+ return Requests.processRoute(EducationRoute.routes.registerTrack, {}, { uuid: uuid });
16630
+ };
16631
+ Education.myTracks = function () {
16632
+ return Requests.processRoute(EducationRoute.routes.myTracks);
16633
+ };
16634
+ Education.getTrackAnalytics = function (uuid) {
16635
+ return Requests.processRoute(EducationRoute.routes.trackAnalytics, undefined, { uuid: uuid });
16636
+ };
16637
+ // --- 3. CONTENT ---
16638
+ Education.listContent = function (params) {
16639
+ return Requests.processRoute(EducationRoute.routes.listContent, undefined, undefined, params);
16640
+ };
16641
+ Education.viewContent = function (uuid, params) {
16642
+ return Requests.processRoute(EducationRoute.routes.viewContent, undefined, { uuid: uuid }, params);
16643
+ };
16644
+ Education.createContent = function (data) {
16645
+ return Requests.processRoute(EducationRoute.routes.createContent, data);
16646
+ };
16647
+ Education.updateContent = function (uuid, data) {
16648
+ return Requests.processRoute(EducationRoute.routes.updateContent, data, { uuid: uuid });
16649
+ };
16650
+ Education.deleteContent = function (uuid) {
16651
+ return Requests.processRoute(EducationRoute.routes.deleteContent, undefined, { uuid: uuid });
16652
+ };
16653
+ Education.heartbeat = function (uuid, data) {
16654
+ return Requests.processRoute(EducationRoute.routes.contentHeartbeat, data, { uuid: uuid });
16655
+ };
16656
+ Education.getSecureVideo = function (uuid) {
16657
+ return Requests.processRoute(EducationRoute.routes.getSecureVideo, undefined, { uuid: uuid });
16658
+ };
16659
+ // --- 4. TRACK CONTENT (PIVOT) ---
16660
+ Education.listTrackContent = function (track_id) {
16661
+ return Requests.processRoute(EducationRoute.routes.listTrackContent, undefined, { track_id: track_id });
16662
+ };
16663
+ Education.addContentToTrack = function (track_id, data) {
16664
+ return Requests.processRoute(EducationRoute.routes.addContentToTrack, data, { track_id: track_id });
16665
+ };
16666
+ Education.removeContentFromTrack = function (track_id, content_id) {
16667
+ return Requests.processRoute(EducationRoute.routes.removeContentFromTrack, undefined, { track_id: track_id, content_id: content_id });
16668
+ };
16669
+ Education.reorderTrackContent = function (track_id, content_ids) {
16670
+ return Requests.processRoute(EducationRoute.routes.reorderTrackContent, { content_ids: content_ids }, { track_id: track_id });
16671
+ };
16672
+ // --- 5. QUIZZES ---
16673
+ Education.listQuizzes = function (params) {
16674
+ return Requests.processRoute(EducationRoute.routes.listQuizzes, undefined, undefined, params);
16675
+ };
16676
+ Education.viewQuiz = function (uuid) {
16677
+ return Requests.processRoute(EducationRoute.routes.viewQuiz, undefined, { uuid: uuid });
16678
+ };
16679
+ Education.submitQuiz = function (uuid, answers) {
16680
+ return Requests.processRoute(EducationRoute.routes.submitQuiz, { answers: answers }, { uuid: uuid });
16681
+ };
16682
+ Education.myQuizAttempts = function (uuid) {
16683
+ return Requests.processRoute(EducationRoute.routes.myQuizAttempts, undefined, { uuid: uuid });
16684
+ };
16685
+ Education.viewQuizAttempt = function (uuid) {
16686
+ return Requests.processRoute(EducationRoute.routes.viewQuizAttempt, undefined, { uuid: uuid });
16687
+ };
16688
+ // --- 6. QUIZ QUESTIONS & OPTIONS ---
16689
+ Education.listQuizQuestions = function (quiz_id) {
16690
+ return Requests.processRoute(EducationRoute.routes.listQuizQuestions, undefined, { quiz_id: quiz_id });
16691
+ };
16692
+ Education.createQuizQuestion = function (quiz_id, data) {
16693
+ return Requests.processRoute(EducationRoute.routes.createQuizQuestion, data, { quiz_id: quiz_id });
16694
+ };
16695
+ Education.reorderQuizQuestions = function (quiz_id, question_ids) {
16696
+ return Requests.processRoute(EducationRoute.routes.reorderQuizQuestions, { question_ids: question_ids }, { quiz_id: quiz_id });
16697
+ };
16698
+ Education.listQuizOptions = function (question_id) {
16699
+ return Requests.processRoute(EducationRoute.routes.listQuizOptions, undefined, { question_id: question_id });
16700
+ };
16701
+ Education.createQuizOption = function (question_id, data) {
16702
+ return Requests.processRoute(EducationRoute.routes.createQuizOption, data, { question_id: question_id });
16703
+ };
16704
+ // --- 7. PROGRESS & REGISTRATIONS ---
16705
+ Education.syncProgress = function (data) {
16706
+ return Requests.processRoute(EducationRoute.routes.syncProgress, data);
16707
+ };
16708
+ Education.getMyProgressByContent = function (content_id) {
16709
+ return Requests.processRoute(EducationRoute.routes.myProgressByContent, undefined, { content_id: content_id });
16710
+ };
16711
+ Education.listRegistrations = function (params) {
16712
+ return Requests.processRoute(EducationRoute.routes.listRegistrations, undefined, undefined, params);
16713
+ };
16714
+ Education.refreshUserTrack = function (uuid) {
16715
+ return Requests.processRoute(EducationRoute.routes.refreshUserTrack, {}, { uuid: uuid });
16716
+ };
16717
+ // --- 8. ANALYTICS & MODULE DATA ---
16718
+ Education.logView = function (data) {
16719
+ return Requests.processRoute(EducationRoute.routes.logView, data);
16720
+ };
16721
+ Education.saveModuleData = function (data) {
16722
+ return Requests.processRoute(EducationRoute.routes.saveModuleData, data);
16723
+ };
16724
+ Education.getModuleData = function (uuid) {
16725
+ return Requests.processRoute(EducationRoute.routes.viewModuleData, undefined, { uuid: uuid });
16726
+ };
16727
+ Education.getConversionReport = function () {
16728
+ return Requests.processRoute(EducationRoute.routes.reportConversion);
16729
+ };
16730
+ Education.getAdoptionReport = function () {
16731
+ return Requests.processRoute(EducationRoute.routes.reportAdoption);
16732
+ };
16733
+ Education.getQuestionPerformanceReport = function (params) {
16734
+ return Requests.processRoute(EducationRoute.routes.reportQuestionPerformance, undefined, undefined, params);
16735
+ };
16736
+ Education.getRetentionReport = function () {
16737
+ return Requests.processRoute(EducationRoute.routes.reportRetention);
16738
+ };
16739
+ // --- 9. ACHIEVEMENTS (BADGES & CERTIFICATES) ---
16740
+ Education.myBadges = function () {
16741
+ return Requests.processRoute(EducationRoute.routes.myBadges);
16742
+ };
16743
+ Education.awardBadge = function (data) {
16744
+ return Requests.processRoute(EducationRoute.routes.awardBadge, data);
16745
+ };
16746
+ Education.myCertificates = function () {
16747
+ return Requests.processRoute(EducationRoute.routes.myCertificates);
16748
+ };
16749
+ Education.downloadCertificate = function (uuid) {
16750
+ return Requests.processRoute(EducationRoute.routes.downloadCertificate, undefined, { uuid: uuid });
16751
+ };
16752
+ // --- 10. TEMPLATES & UPLOADS ---
16753
+ Education.listTemplates = function () {
16754
+ return Requests.processRoute(EducationRoute.routes.listTemplates);
16755
+ };
16756
+ Education.uploadTemplateSignature = function (uuid, file) {
16757
+ var url = EducationRoute.routes.uploadTemplateSignature.url.replace('{uuid}', uuid);
16758
+ return Requests.uploadFile(url, 'image', file);
16759
+ };
16760
+ Education.uploadTemplateBackground = function (uuid, file) {
16761
+ var url = EducationRoute.routes.uploadTemplateBackground.url.replace('{uuid}', uuid);
16762
+ return Requests.uploadFile(url, 'image', file);
16763
+ };
16764
+ return Education;
16765
+ }());
16766
+
16467
16767
  var Parser = /** @class */ (function () {
16468
16768
  function Parser() {
16469
16769
  }
@@ -16994,6 +17294,7 @@ var Glitch = /** @class */ (function () {
16994
17294
  TwitchReporting: TwitchReporting,
16995
17295
  Raffles: Raffles,
16996
17296
  DiscordMarketplace: DiscordMarketplace,
17297
+ Education: Education,
16997
17298
  };
16998
17299
  Glitch.util = {
16999
17300
  Requests: Requests,