glitch-javascript-sdk 2.5.3 → 2.5.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.
@@ -0,0 +1,56 @@
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 myBadges<T>(): AxiosPromise<Response<T>>;
49
+ static awardBadge<T>(data: object): AxiosPromise<Response<T>>;
50
+ static myCertificates<T>(): AxiosPromise<Response<T>>;
51
+ static downloadCertificate<T>(uuid: string): AxiosPromise<Response<T>>;
52
+ static listTemplates<T>(): AxiosPromise<Response<T>>;
53
+ static uploadTemplateSignature<T>(uuid: string, file: File): AxiosPromise<Response<T>>;
54
+ static uploadTemplateBackground<T>(uuid: string, file: File): AxiosPromise<Response<T>>;
55
+ }
56
+ export default Education;
@@ -18,5 +18,17 @@ declare class Newsletters {
18
18
  * @returns Promise
19
19
  */
20
20
  static joinCourseWaitlist<T>(data: object, params?: Record<string, any>): AxiosPromise<Response<T>>;
21
+ /**
22
+ * Join the raffle feature waitlist.
23
+ *
24
+ * @param data { name, email, game, prizes[], interest_in_playtesters, launch_timeline, target_wishlist_count }
25
+ */
26
+ static joinRaffleWaitlist<T>(data: object, params?: Record<string, any>): AxiosPromise<Response<T>>;
27
+ /**
28
+ * Join the Discord Marketplace waitlist.
29
+ *
30
+ * @param data { name, email, game, categories[] }
31
+ */
32
+ static joinDiscordMarketplaceWaitlist<T>(data: object, params?: Record<string, any>): AxiosPromise<Response<T>>;
21
33
  }
22
34
  export default Newsletters;
@@ -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
@@ -13828,6 +13828,8 @@ var NewslettersRoutes = /** @class */ (function () {
13828
13828
  NewslettersRoutes.routes = {
13829
13829
  downloadMarketingChecklist: { url: '/newsletters/downloadMarketingChecklist', method: HTTP_METHODS.POST },
13830
13830
  joinCourseWaitlist: { url: '/newsletters/joinCourseWaitlist', method: HTTP_METHODS.POST },
13831
+ joinRaffleWaitlist: { url: '/newsletters/joinRaffleWaitlist', method: HTTP_METHODS.POST },
13832
+ joinDiscordMarketplaceWaitlist: { url: '/newsletters/joinDiscordMarketplaceWaitlist', method: HTTP_METHODS.POST },
13831
13833
  };
13832
13834
  return NewslettersRoutes;
13833
13835
  }());
@@ -13856,6 +13858,22 @@ var Newsletters = /** @class */ (function () {
13856
13858
  Newsletters.joinCourseWaitlist = function (data, params) {
13857
13859
  return Requests.processRoute(NewslettersRoutes.routes.joinCourseWaitlist, data, undefined, params);
13858
13860
  };
13861
+ /**
13862
+ * Join the raffle feature waitlist.
13863
+ *
13864
+ * @param data { name, email, game, prizes[], interest_in_playtesters, launch_timeline, target_wishlist_count }
13865
+ */
13866
+ Newsletters.joinRaffleWaitlist = function (data, params) {
13867
+ return Requests.processRoute(NewslettersRoutes.routes.joinRaffleWaitlist, data, undefined, params);
13868
+ };
13869
+ /**
13870
+ * Join the Discord Marketplace waitlist.
13871
+ *
13872
+ * @param data { name, email, game, categories[] }
13873
+ */
13874
+ Newsletters.joinDiscordMarketplaceWaitlist = function (data, params) {
13875
+ return Requests.processRoute(NewslettersRoutes.routes.joinDiscordMarketplaceWaitlist, data, undefined, params);
13876
+ };
13859
13877
  return Newsletters;
13860
13878
  }());
13861
13879
 
@@ -16446,6 +16464,303 @@ var DiscordMarketplace = /** @class */ (function () {
16446
16464
  return DiscordMarketplace;
16447
16465
  }());
16448
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
+ // --- 9. ACHIEVEMENTS (BADGES & CERTIFICATES) ---
16737
+ Education.myBadges = function () {
16738
+ return Requests.processRoute(EducationRoute.routes.myBadges);
16739
+ };
16740
+ Education.awardBadge = function (data) {
16741
+ return Requests.processRoute(EducationRoute.routes.awardBadge, data);
16742
+ };
16743
+ Education.myCertificates = function () {
16744
+ return Requests.processRoute(EducationRoute.routes.myCertificates);
16745
+ };
16746
+ Education.downloadCertificate = function (uuid) {
16747
+ return Requests.processRoute(EducationRoute.routes.downloadCertificate, undefined, { uuid: uuid });
16748
+ };
16749
+ // --- 10. TEMPLATES & UPLOADS ---
16750
+ Education.listTemplates = function () {
16751
+ return Requests.processRoute(EducationRoute.routes.listTemplates);
16752
+ };
16753
+ Education.uploadTemplateSignature = function (uuid, file) {
16754
+ var url = EducationRoute.routes.uploadTemplateSignature.url.replace('{uuid}', uuid);
16755
+ return Requests.uploadFile(url, 'image', file);
16756
+ };
16757
+ Education.uploadTemplateBackground = function (uuid, file) {
16758
+ var url = EducationRoute.routes.uploadTemplateBackground.url.replace('{uuid}', uuid);
16759
+ return Requests.uploadFile(url, 'image', file);
16760
+ };
16761
+ return Education;
16762
+ }());
16763
+
16449
16764
  var Parser = /** @class */ (function () {
16450
16765
  function Parser() {
16451
16766
  }
@@ -16976,6 +17291,7 @@ var Glitch = /** @class */ (function () {
16976
17291
  TwitchReporting: TwitchReporting,
16977
17292
  Raffles: Raffles,
16978
17293
  DiscordMarketplace: DiscordMarketplace,
17294
+ Education: Education,
16979
17295
  };
16980
17296
  Glitch.util = {
16981
17297
  Requests: Requests,