@irfanshadikrishad/anilist 1.1.1-forbidden.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -422,61 +422,78 @@ class AniList {
422
422
  return __awaiter(this, void 0, void 0, function* () {
423
423
  var _a, _b, _c, _d, _e;
424
424
  try {
425
- const request = yield fetch(aniListEndpoint, {
426
- method: "POST",
427
- headers: {
428
- "Content-Type": "application/json",
429
- },
430
- body: JSON.stringify({
431
- query: trendingQuery,
432
- variables: { page: 1, perPage: count },
433
- }),
434
- });
435
- const { data, errors } = yield request.json();
436
- if (request.status !== 200 || errors) {
437
- return console.log(`\nSomething went wrong. ${((_a = errors === null || errors === void 0 ? void 0 : errors[0]) === null || _a === void 0 ? void 0 : _a.message) || "Unknown error"}`);
438
- }
439
- const media = (_b = data === null || data === void 0 ? void 0 : data.Page) === null || _b === void 0 ? void 0 : _b.media;
440
- if (!media || media.length === 0) {
441
- return console.log(`\nNo trending available at the moment.`);
442
- }
443
- const { selectedAnime } = yield inquirer.prompt([
444
- {
445
- type: "list",
446
- name: "selectedAnime",
447
- message: "Select anime to add to the list:",
448
- choices: media.map((anime, idx) => ({
449
- name: `[${idx + 1}] ${getTitle(anime === null || anime === void 0 ? void 0 : anime.title)}`,
450
- value: anime === null || anime === void 0 ? void 0 : anime.id,
451
- })),
452
- pageSize: 10,
453
- },
454
- ]);
455
- const { selectedListType } = yield inquirer.prompt([
456
- {
457
- type: "list",
458
- name: "selectedListType",
459
- message: "Select the list where you want to save this anime:",
460
- choices: [
461
- { name: "Planning", value: "PLANNING" },
462
- { name: "Watching", value: "CURRENT" },
463
- { name: "Completed", value: "COMPLETED" },
464
- { name: "Paused", value: "PAUSED" },
465
- { name: "Dropped", value: "DROPPED" },
466
- ],
467
- },
468
- ]);
469
- if (!(yield Auth.isLoggedIn())) {
470
- return console.error(`\nPlease log in first to use this feature.`);
471
- }
472
- const variables = { mediaId: selectedAnime, status: selectedListType };
473
- const saveResponse = yield fetcher(addAnimeToListMutation, variables);
474
- const saved = (_c = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.data) === null || _c === void 0 ? void 0 : _c.SaveMediaListEntry;
475
- if (saved) {
476
- console.log(`\nEntry ${saved.id}. Saved as ${saved.status}.`);
477
- }
478
- else {
479
- console.error(`\nFailed to save the anime. ${((_e = (_d = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.errors) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.message) || "Unknown error"}`);
425
+ let page = 1;
426
+ let allTrending = [];
427
+ while (true) {
428
+ const request = yield fetch(aniListEndpoint, {
429
+ method: "POST",
430
+ headers: {
431
+ "Content-Type": "application/json",
432
+ },
433
+ body: JSON.stringify({
434
+ query: trendingQuery,
435
+ variables: { page, perPage: count },
436
+ }),
437
+ });
438
+ const { data, errors } = yield request.json();
439
+ if (request.status !== 200 || errors) {
440
+ console.error(`\nSomething went wrong. ${((_a = errors === null || errors === void 0 ? void 0 : errors[0]) === null || _a === void 0 ? void 0 : _a.message) || "Unknown error"}`);
441
+ return;
442
+ }
443
+ const media = (_b = data === null || data === void 0 ? void 0 : data.Page) === null || _b === void 0 ? void 0 : _b.media;
444
+ if (!media || media.length === 0) {
445
+ console.log(`\nNo more trending anime available.`);
446
+ break;
447
+ }
448
+ allTrending = [...allTrending, ...media];
449
+ const choices = allTrending.map((anime, idx) => ({
450
+ name: `[${idx + 1}] ${getTitle(anime === null || anime === void 0 ? void 0 : anime.title)}`,
451
+ value: anime === null || anime === void 0 ? void 0 : anime.id,
452
+ }));
453
+ choices.push({ name: "See more", value: "see_more" });
454
+ const { selectedAnime } = yield inquirer.prompt([
455
+ {
456
+ type: "list",
457
+ name: "selectedAnime",
458
+ message: "Select anime to add to the list:",
459
+ choices,
460
+ pageSize: choices.length + 1,
461
+ },
462
+ ]);
463
+ if (selectedAnime === "see_more") {
464
+ page++;
465
+ continue;
466
+ }
467
+ else {
468
+ const { selectedListType } = yield inquirer.prompt([
469
+ {
470
+ type: "list",
471
+ name: "selectedListType",
472
+ message: "Select the list where you want to save this anime:",
473
+ choices: [
474
+ { name: "Planning", value: "PLANNING" },
475
+ { name: "Watching", value: "CURRENT" },
476
+ { name: "Completed", value: "COMPLETED" },
477
+ { name: "Paused", value: "PAUSED" },
478
+ { name: "Dropped", value: "DROPPED" },
479
+ ],
480
+ },
481
+ ]);
482
+ if (!(yield Auth.isLoggedIn())) {
483
+ console.error(`\nPlease log in first to use this feature.`);
484
+ return;
485
+ }
486
+ const variables = { mediaId: selectedAnime, status: selectedListType };
487
+ const saveResponse = yield fetcher(addAnimeToListMutation, variables);
488
+ const saved = (_c = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.data) === null || _c === void 0 ? void 0 : _c.SaveMediaListEntry;
489
+ if (saved) {
490
+ console.log(`\nEntry ${saved.id}. Saved as ${saved.status}.`);
491
+ }
492
+ else {
493
+ console.error(`\nFailed to save the anime. ${((_e = (_d = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.errors) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.message) || "Unknown error"}`);
494
+ }
495
+ break;
496
+ }
480
497
  }
481
498
  }
482
499
  catch (error) {
@@ -488,61 +505,77 @@ class AniList {
488
505
  return __awaiter(this, void 0, void 0, function* () {
489
506
  var _a, _b, _c, _d, _e;
490
507
  try {
491
- const request = yield fetch(aniListEndpoint, {
492
- method: "POST",
493
- headers: {
494
- "Content-Type": "application/json",
495
- },
496
- body: JSON.stringify({
497
- query: popularQuery,
498
- variables: { page: 1, perPage: count },
499
- }),
500
- });
501
- const { data, errors } = yield request.json();
502
- if (request.status !== 200 || errors) {
503
- return console.log(`\nSomething went wrong. ${((_a = errors === null || errors === void 0 ? void 0 : errors[0]) === null || _a === void 0 ? void 0 : _a.message) || "Unknown error"}`);
504
- }
505
- const media = (_b = data === null || data === void 0 ? void 0 : data.Page) === null || _b === void 0 ? void 0 : _b.media;
506
- if (!media || media.length === 0) {
507
- return console.log(`\nNo popular anime available at the moment.`);
508
- }
509
- const { selectedAnime } = yield inquirer.prompt([
510
- {
511
- type: "list",
512
- name: "selectedAnime",
513
- message: "Select anime to add to the list:",
514
- choices: media.map((anime, idx) => ({
515
- name: `[${idx + 1}] ${getTitle(anime === null || anime === void 0 ? void 0 : anime.title)}`,
516
- value: anime === null || anime === void 0 ? void 0 : anime.id,
517
- })),
518
- pageSize: 10,
519
- },
520
- ]);
521
- const { selectedListType } = yield inquirer.prompt([
522
- {
523
- type: "list",
524
- name: "selectedListType",
525
- message: "Select the list where you want to save this anime:",
526
- choices: [
527
- { name: "Planning", value: "PLANNING" },
528
- { name: "Watching", value: "CURRENT" },
529
- { name: "Completed", value: "COMPLETED" },
530
- { name: "Paused", value: "PAUSED" },
531
- { name: "Dropped", value: "DROPPED" },
532
- ],
533
- },
534
- ]);
535
- if (!(yield Auth.isLoggedIn())) {
536
- return console.error(`\nPlease log in first to use this feature.`);
537
- }
538
- const variables = { mediaId: selectedAnime, status: selectedListType };
539
- const saveResponse = yield fetcher(addAnimeToListMutation, variables);
540
- const saved = (_c = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.data) === null || _c === void 0 ? void 0 : _c.SaveMediaListEntry;
541
- if (saved) {
542
- console.log(`\nEntry ${saved.id}. Saved as ${saved.status}.`);
543
- }
544
- else {
545
- console.error(`\nFailed to save the anime. ${((_e = (_d = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.errors) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.message) || "Unknown error"}`);
508
+ let page = 1;
509
+ let allMedia = [];
510
+ while (true) {
511
+ const request = yield fetch(aniListEndpoint, {
512
+ method: "POST",
513
+ headers: {
514
+ "Content-Type": "application/json",
515
+ },
516
+ body: JSON.stringify({
517
+ query: popularQuery,
518
+ variables: { page, perPage: count },
519
+ }),
520
+ });
521
+ const { data, errors } = yield request.json();
522
+ if (request.status !== 200 || errors) {
523
+ console.error(`\nSomething went wrong. ${((_a = errors === null || errors === void 0 ? void 0 : errors[0]) === null || _a === void 0 ? void 0 : _a.message) || "Unknown error"}`);
524
+ return;
525
+ }
526
+ const newMedia = (_b = data === null || data === void 0 ? void 0 : data.Page) === null || _b === void 0 ? void 0 : _b.media;
527
+ if (!newMedia || newMedia.length === 0) {
528
+ console.log(`\nNo more popular anime available.`);
529
+ break;
530
+ }
531
+ allMedia = [...allMedia, ...newMedia];
532
+ const choices = allMedia.map((anime, idx) => ({
533
+ name: `[${idx + 1}] ${getTitle(anime === null || anime === void 0 ? void 0 : anime.title)}`,
534
+ value: anime === null || anime === void 0 ? void 0 : anime.id,
535
+ }));
536
+ choices.push({ name: "See more", value: "see_more" });
537
+ const { selectedAnime } = yield inquirer.prompt([
538
+ {
539
+ type: "list",
540
+ name: "selectedAnime",
541
+ message: "Select anime to add to the list:",
542
+ choices,
543
+ pageSize: choices.length,
544
+ },
545
+ ]);
546
+ if (selectedAnime === "see_more") {
547
+ page++;
548
+ continue;
549
+ }
550
+ else {
551
+ const { selectedListType } = yield inquirer.prompt([
552
+ {
553
+ type: "list",
554
+ name: "selectedListType",
555
+ message: "Select the list where you want to save this anime:",
556
+ choices: [
557
+ { name: "Planning", value: "PLANNING" },
558
+ { name: "Watching", value: "CURRENT" },
559
+ { name: "Completed", value: "COMPLETED" },
560
+ { name: "Paused", value: "PAUSED" },
561
+ { name: "Dropped", value: "DROPPED" },
562
+ ],
563
+ },
564
+ ]);
565
+ if (!(yield Auth.isLoggedIn())) {
566
+ return console.error(`\nPlease log in first to use this feature.`);
567
+ }
568
+ const variables = { mediaId: selectedAnime, status: selectedListType };
569
+ const saveResponse = yield fetcher(addAnimeToListMutation, variables);
570
+ const saved = (_c = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.data) === null || _c === void 0 ? void 0 : _c.SaveMediaListEntry;
571
+ if (saved) {
572
+ console.log(`\nEntry ${saved.id}. Saved as ${saved.status}.`);
573
+ }
574
+ else {
575
+ console.error(`\nFailed to save the anime. ${((_e = (_d = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.errors) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.message) || "Unknown error"}`);
576
+ }
577
+ break;
578
+ }
546
579
  }
547
580
  }
548
581
  catch (error) {
@@ -555,55 +588,72 @@ class AniList {
555
588
  var _a, _b, _c, _d, _e, _f;
556
589
  try {
557
590
  const { nextSeason, nextYear } = getNextSeasonAndYear();
558
- const request = yield fetcher(upcomingAnimesQuery, {
559
- nextSeason,
560
- nextYear,
561
- perPage: count,
562
- });
563
- if (!request || !request.data) {
564
- return console.error(`\nSomething went wrong. ${((_b = (_a = request === null || request === void 0 ? void 0 : request.errors) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message) || "Unknown error"}`);
565
- }
566
- const upcoming = (_c = request.data.Page.media) !== null && _c !== void 0 ? _c : [];
567
- if (upcoming.length === 0) {
568
- return console.log(`\nNo upcoming anime available.`);
569
- }
570
- const { selectedAnime } = yield inquirer.prompt([
571
- {
572
- type: "list",
573
- name: "selectedAnime",
574
- message: "Select anime to add to the list:",
575
- choices: upcoming.map((anime, idx) => ({
576
- name: `[${idx + 1}] ${getTitle(anime === null || anime === void 0 ? void 0 : anime.title)}`,
577
- value: anime === null || anime === void 0 ? void 0 : anime.id,
578
- })),
579
- pageSize: 10,
580
- },
581
- ]);
582
- const { selectedListType } = yield inquirer.prompt([
583
- {
584
- type: "list",
585
- name: "selectedListType",
586
- message: "Select the list where you want to save this anime:",
587
- choices: [
588
- { name: "Planning", value: "PLANNING" },
589
- { name: "Watching", value: "CURRENT" },
590
- { name: "Completed", value: "COMPLETED" },
591
- { name: "Paused", value: "PAUSED" },
592
- { name: "Dropped", value: "DROPPED" },
593
- ],
594
- },
595
- ]);
596
- if (!(yield Auth.isLoggedIn())) {
597
- return console.error(`\nPlease log in first to use this feature.`);
598
- }
599
- const variables = { mediaId: selectedAnime, status: selectedListType };
600
- const saveResponse = yield fetcher(addAnimeToListMutation, variables);
601
- const saved = (_d = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.data) === null || _d === void 0 ? void 0 : _d.SaveMediaListEntry;
602
- if (saved) {
603
- console.log(`\nEntry ${saved.id}. Saved as ${saved.status}.`);
604
- }
605
- else {
606
- console.error(`\nFailed to save the anime. ${((_f = (_e = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.errors) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.message) || "Unknown error"}`);
591
+ let page = 1;
592
+ let allUpcoming = [];
593
+ while (true) {
594
+ const request = yield fetcher(upcomingAnimesQuery, {
595
+ nextSeason,
596
+ nextYear,
597
+ page,
598
+ perPage: count,
599
+ });
600
+ if (!request || !request.data) {
601
+ console.error(`\nSomething went wrong. ${((_b = (_a = request === null || request === void 0 ? void 0 : request.errors) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message) || "Unknown error"}`);
602
+ return;
603
+ }
604
+ const newUpcoming = (_c = request.data.Page.media) !== null && _c !== void 0 ? _c : [];
605
+ if (newUpcoming.length === 0) {
606
+ console.log(`\nNo more upcoming anime available.`);
607
+ break;
608
+ }
609
+ allUpcoming = [...allUpcoming, ...newUpcoming];
610
+ const choices = allUpcoming.map((anime, idx) => ({
611
+ name: `[${idx + 1}] ${getTitle(anime === null || anime === void 0 ? void 0 : anime.title)}`,
612
+ value: anime === null || anime === void 0 ? void 0 : anime.id,
613
+ }));
614
+ choices.push({ name: "See more", value: "see_more" });
615
+ const { selectedAnime } = yield inquirer.prompt([
616
+ {
617
+ type: "list",
618
+ name: "selectedAnime",
619
+ message: "Select anime to add to the list:",
620
+ choices,
621
+ pageSize: choices.length + 2,
622
+ },
623
+ ]);
624
+ if (selectedAnime === "see_more") {
625
+ page++;
626
+ continue;
627
+ }
628
+ else {
629
+ const { selectedListType } = yield inquirer.prompt([
630
+ {
631
+ type: "list",
632
+ name: "selectedListType",
633
+ message: "Select the list where you want to save this anime:",
634
+ choices: [
635
+ { name: "Planning", value: "PLANNING" },
636
+ { name: "Watching", value: "CURRENT" },
637
+ { name: "Completed", value: "COMPLETED" },
638
+ { name: "Paused", value: "PAUSED" },
639
+ { name: "Dropped", value: "DROPPED" },
640
+ ],
641
+ },
642
+ ]);
643
+ if (!(yield Auth.isLoggedIn())) {
644
+ return console.error(`\nPlease log in first to use this feature.`);
645
+ }
646
+ const variables = { mediaId: selectedAnime, status: selectedListType };
647
+ const saveResponse = yield fetcher(addAnimeToListMutation, variables);
648
+ const saved = (_d = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.data) === null || _d === void 0 ? void 0 : _d.SaveMediaListEntry;
649
+ if (saved) {
650
+ console.log(`\nEntry ${saved.id}. Saved as ${saved.status}.`);
651
+ }
652
+ else {
653
+ console.error(`\nFailed to save the anime. ${((_f = (_e = saveResponse === null || saveResponse === void 0 ? void 0 : saveResponse.errors) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.message) || "Unknown error"}`);
654
+ }
655
+ break;
656
+ }
607
657
  }
608
658
  }
609
659
  catch (error) {
@@ -4,5 +4,4 @@ declare const deleteActivityMutation = "\nmutation($id: Int!) {\n DeleteActivit
4
4
  declare const saveTextActivityMutation = "\nmutation SaveTextActivity($status: String!) {\n SaveTextActivity(text: $status) { id text userId createdAt }\n}\n";
5
5
  declare const saveAnimeWithProgressMutation = "\nmutation ($mediaId: Int, $progress: Int, $status: MediaListStatus, $hiddenFromStatusLists: Boolean) {\n SaveMediaListEntry(mediaId: $mediaId, progress: $progress, status: $status, hiddenFromStatusLists: $hiddenFromStatusLists) {\n id progress hiddenFromStatusLists\n }\n}\n";
6
6
  declare const saveMangaWithProgressMutation = "\nmutation ($mediaId: Int, $progress: Int, $status: MediaListStatus, $hiddenFromStatusLists: Boolean, $private: Boolean) {\n SaveMediaListEntry( mediaId: $mediaId, progress: $progress, status: $status, hiddenFromStatusLists: $hiddenFromStatusLists, private: $private\n ) { id progress hiddenFromStatusLists private }\n}\n";
7
- declare const likeActivityMutation = "\nmutation($activityId: Int!) {\n ToggleLike(id: $activityId, type: ACTIVITY) { id }\n}\n";
8
- export { addAnimeToListMutation, addMangaToListMutation, deleteActivityMutation, likeActivityMutation, saveAnimeWithProgressMutation, saveMangaWithProgressMutation, saveTextActivityMutation, };
7
+ export { addAnimeToListMutation, addMangaToListMutation, deleteActivityMutation, saveAnimeWithProgressMutation, saveMangaWithProgressMutation, saveTextActivityMutation, };
@@ -35,9 +35,4 @@ mutation ($mediaId: Int, $progress: Int, $status: MediaListStatus, $hiddenFromSt
35
35
  ) { id progress hiddenFromStatusLists private }
36
36
  }
37
37
  `;
38
- const likeActivityMutation = `
39
- mutation($activityId: Int!) {
40
- ToggleLike(id: $activityId, type: ACTIVITY) { id }
41
- }
42
- `;
43
- export { addAnimeToListMutation, addMangaToListMutation, deleteActivityMutation, likeActivityMutation, saveAnimeWithProgressMutation, saveMangaWithProgressMutation, saveTextActivityMutation, };
38
+ export { addAnimeToListMutation, addMangaToListMutation, deleteActivityMutation, saveAnimeWithProgressMutation, saveMangaWithProgressMutation, saveTextActivityMutation, };
@@ -17,9 +17,6 @@ declare const activityMangaListQuery = "query ($userId: Int, $page: Int, $perPag
17
17
  declare const activityMessageQuery = "query ($userId: Int, $page: Int, $perPage: Int) {\n Page(page: $page, perPage: $perPage) {\n activities(userId: $userId, type: MESSAGE, sort: ID_DESC) {\n ... on MessageActivity { id type message recipient { id name } createdAt }\n }\n }\n}";
18
18
  declare const activityAllQuery = "query ($userId: Int, $page: Int, $perPage: Int) {\n Page(page: $page, perPage: $perPage) {\n activities(userId: $userId, sort: ID_DESC) {\n ... on TextActivity { id type text createdAt user { id name } }\n ... on ListActivity { id type status progress createdAt media { id title { romaji english native } } }\n ... on MessageActivity { id type message recipient { id name } createdAt }\n }\n }\n}";
19
19
  declare const activityMediaList = "query ($userId: Int, $page: Int, $perPage: Int, $type: ActivityType) {\n Page(page: $page, perPage: $perPage) {\n pageInfo { total currentPage lastPage hasNextPage perPage }\n activities(userId: $userId, type: $type, sort: ID_DESC) {\n ... on ListActivity { id type status progress media { id title { romaji english native } format } createdAt }\n }\n }\n}";
20
- declare const malIdToAnilistAnimeId = "query ($malId: Int) {\n Media(idMal: $malId, type: ANIME) { id title { romaji english } } }\n";
21
- declare const malIdToAnilistMangaId = "query ($malId: Int) {\n Media(idMal: $malId, type: MANGA) { id title { romaji english } } }\n";
22
- declare const followingActivitiesQuery = "\nquery ($page: Int, $perPage: Int) {\n Page(page: $page, perPage: $perPage) {\n activities(isFollowing: true, sort: ID_DESC) {\n ... on TextActivity { id type isLiked createdAt user { id name } }\n ... on ListActivity { id type isLiked status progress media { title { userPreferred } } createdAt user { id name } }\n ... on MessageActivity { id type isLiked message createdAt recipient { id name } }\n }\n }\n}\n";
23
- declare const globalActivitiesQuery = "\nquery ($page: Int, $perPage: Int) {\n Page(page: $page, perPage: $perPage) {\n activities(sort: ID_DESC) {\n ... on TextActivity { id type isLiked createdAt user { id name } }\n ... on ListActivity { id type isLiked status progress media { title { userPreferred } } createdAt user { id name } }\n ... on MessageActivity { id type isLiked message createdAt recipient { id name } }\n }\n }\n}\n";
24
- declare const specificUserActivitiesQuery = "\nquery ($page: Int, $perPage: Int, $userId: Int) {\n Page(page: $page, perPage: $perPage) {\n activities(userId: $userId, sort: ID_DESC) {\n ... on TextActivity { id type isLiked createdAt user { id name } }\n ... on ListActivity { id type isLiked status progress media { title { userPreferred } } createdAt user { id name } }\n ... on MessageActivity { id type isLiked message createdAt recipient { id name } }\n }\n }\n}\n";
25
- export { activityAllQuery, activityAnimeListQuery, activityMangaListQuery, activityMediaList, activityMessageQuery, activityTextQuery, animeDetailsQuery, animeSearchQuery, currentUserAnimeList, currentUserMangaList, currentUserQuery, deleteMangaEntryMutation, deleteMediaEntryMutation, followingActivitiesQuery, globalActivitiesQuery, malIdToAnilistAnimeId, malIdToAnilistMangaId, mangaSearchQuery, popularQuery, specificUserActivitiesQuery, trendingQuery, upcomingAnimesQuery, userActivityQuery, userQuery, };
20
+ declare const malIdToAnilistAnimeId = "query ($malId: Int) {\n Media(idMal: $malId, type: ANIME) {\n id title { romaji english } } \n}\n";
21
+ declare const malIdToAnilistMangaId = "query ($malId: Int) {\n Media(idMal: $malId, type: MANGA) {\n id title { romaji english } } \n}\n";
22
+ export { activityAllQuery, activityAnimeListQuery, activityMangaListQuery, activityMediaList, activityMessageQuery, activityTextQuery, animeDetailsQuery, animeSearchQuery, currentUserAnimeList, currentUserMangaList, currentUserQuery, deleteMangaEntryMutation, deleteMediaEntryMutation, malIdToAnilistAnimeId, malIdToAnilistMangaId, mangaSearchQuery, popularQuery, trendingQuery, upcomingAnimesQuery, userActivityQuery, userQuery, };
@@ -120,42 +120,13 @@ const activityMediaList = `query ($userId: Int, $page: Int, $perPage: Int, $type
120
120
  }
121
121
  }`;
122
122
  const malIdToAnilistAnimeId = `query ($malId: Int) {
123
- Media(idMal: $malId, type: ANIME) { id title { romaji english } } }
124
- `;
125
- const malIdToAnilistMangaId = `query ($malId: Int) {
126
- Media(idMal: $malId, type: MANGA) { id title { romaji english } } }
127
- `;
128
- const followingActivitiesQuery = `
129
- query ($page: Int, $perPage: Int) {
130
- Page(page: $page, perPage: $perPage) {
131
- activities(isFollowing: true, sort: ID_DESC) {
132
- ... on TextActivity { id type isLiked createdAt user { id name } }
133
- ... on ListActivity { id type isLiked status progress media { title { userPreferred } } createdAt user { id name } }
134
- ... on MessageActivity { id type isLiked message createdAt recipient { id name } }
135
- }
136
- }
137
- }
138
- `;
139
- const globalActivitiesQuery = `
140
- query ($page: Int, $perPage: Int) {
141
- Page(page: $page, perPage: $perPage) {
142
- activities(sort: ID_DESC) {
143
- ... on TextActivity { id type isLiked createdAt user { id name } }
144
- ... on ListActivity { id type isLiked status progress media { title { userPreferred } } createdAt user { id name } }
145
- ... on MessageActivity { id type isLiked message createdAt recipient { id name } }
146
- }
147
- }
123
+ Media(idMal: $malId, type: ANIME) {
124
+ id title { romaji english } }
148
125
  }
149
126
  `;
150
- const specificUserActivitiesQuery = `
151
- query ($page: Int, $perPage: Int, $userId: Int) {
152
- Page(page: $page, perPage: $perPage) {
153
- activities(userId: $userId, sort: ID_DESC) {
154
- ... on TextActivity { id type isLiked createdAt user { id name } }
155
- ... on ListActivity { id type isLiked status progress media { title { userPreferred } } createdAt user { id name } }
156
- ... on MessageActivity { id type isLiked message createdAt recipient { id name } }
157
- }
158
- }
127
+ const malIdToAnilistMangaId = `query ($malId: Int) {
128
+ Media(idMal: $malId, type: MANGA) {
129
+ id title { romaji english } }
159
130
  }
160
131
  `;
161
- export { activityAllQuery, activityAnimeListQuery, activityMangaListQuery, activityMediaList, activityMessageQuery, activityTextQuery, animeDetailsQuery, animeSearchQuery, currentUserAnimeList, currentUserMangaList, currentUserQuery, deleteMangaEntryMutation, deleteMediaEntryMutation, followingActivitiesQuery, globalActivitiesQuery, malIdToAnilistAnimeId, malIdToAnilistMangaId, mangaSearchQuery, popularQuery, specificUserActivitiesQuery, trendingQuery, upcomingAnimesQuery, userActivityQuery, userQuery, };
132
+ export { activityAllQuery, activityAnimeListQuery, activityMangaListQuery, activityMediaList, activityMessageQuery, activityTextQuery, animeDetailsQuery, animeSearchQuery, currentUserAnimeList, currentUserMangaList, currentUserQuery, deleteMangaEntryMutation, deleteMediaEntryMutation, malIdToAnilistAnimeId, malIdToAnilistMangaId, mangaSearchQuery, popularQuery, trendingQuery, upcomingAnimesQuery, userActivityQuery, userQuery, };
package/bin/index.js CHANGED
@@ -9,14 +9,23 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  import { Command } from "commander";
12
+ import { readFileSync } from "fs";
13
+ import { dirname } from "path";
12
14
  import process from "process";
15
+ import { fileURLToPath } from "url";
13
16
  import { Auth } from "./helpers/auth.js";
14
17
  import { AniList } from "./helpers/lists.js";
18
+ // Get the current directory of this file
19
+ const __filename = fileURLToPath(import.meta.url);
20
+ const __dirname = dirname(__filename);
21
+ // Read package.json and extract version dynamically
22
+ const packageJson = JSON.parse(readFileSync(`${__dirname}/package.json`, "utf8"));
23
+ const version = packageJson.version;
15
24
  const cli = new Command();
16
25
  cli
17
26
  .name("anilist")
18
27
  .description("Minimalist unofficial AniList CLI for Anime and Manga Enthusiasts.")
19
- .version("1.1.1-forbidden.0");
28
+ .version(version);
20
29
  cli
21
30
  .command("login")
22
31
  .description("Login with AniList")
@@ -202,11 +211,4 @@ cli
202
211
  }
203
212
  }
204
213
  }));
205
- cli
206
- .command("autolike")
207
- .alias("al")
208
- .description("Autolike following or global activities.")
209
- .action(() => __awaiter(void 0, void 0, void 0, function* () {
210
- yield Auth.AutoLike();
211
- }));
212
214
  cli.parse(process.argv);
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@irfanshadikrishad/anilist",
3
3
  "description": "Minimalist unofficial AniList CLI for Anime and Manga Enthusiasts",
4
4
  "author": "Irfan Shadik Rishad",
5
- "version": "1.1.1-forbidden.0",
5
+ "version": "1.1.2",
6
6
  "main": "./bin/index.js",
7
7
  "type": "module",
8
8
  "types": "./bin/index.d.ts",
@@ -13,12 +13,14 @@
13
13
  "access": "public"
14
14
  },
15
15
  "scripts": {
16
- "build": "rm -rf ./bin && tsc -w",
16
+ "build": "rm -rf ./bin && tsc",
17
+ "buildw": "rm -rf ./bin && tsc -w",
17
18
  "format": "prettier . --write",
18
19
  "format:check": "prettier . --check",
19
20
  "lint": "eslint ./dist",
20
21
  "lint:fix": "eslint ./dist --fix",
21
- "all": "npm run lint && npm run lint:fix && npm run format"
22
+ "all": "npm run lint && npm run lint:fix && npm run format",
23
+ "test": "echo Not yet implemented."
22
24
  },
23
25
  "keywords": [
24
26
  "anilist",
@@ -52,20 +54,20 @@
52
54
  },
53
55
  "license": "MPL-2.0",
54
56
  "devDependencies": {
55
- "@eslint/js": "^9.13.0",
57
+ "@eslint/js": "^9.17.0",
56
58
  "@types/json2csv": "^5.0.7",
57
- "@types/node": "^22.8.6",
58
- "eslint": "^9.13.0",
59
- "globals": "^15.11.0",
60
- "prettier": "^3.3.3",
59
+ "@types/node": "^22.10.2",
60
+ "eslint": "^9.17.0",
61
+ "globals": "^15.13.0",
62
+ "prettier": "^3.4.2",
61
63
  "prettier-plugin-organize-imports": "^4.1.0",
62
- "typescript": "^5.6.3",
63
- "typescript-eslint": "^8.12.2"
64
+ "typescript": "^5.7.2",
65
+ "typescript-eslint": "^8.18.0"
64
66
  },
65
67
  "dependencies": {
66
68
  "commander": "^12.1.0",
67
69
  "fast-xml-parser": "^4.5.0",
68
- "inquirer": "^12.0.1",
70
+ "inquirer": "^12.2.0",
69
71
  "json2csv": "^6.0.0-alpha.2",
70
72
  "node-fetch": "^3.3.2",
71
73
  "open": "^10.1.0"
Binary file