youtubei 1.0.0-rc.3 → 1.0.0-rc.4

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.
@@ -16,9 +16,17 @@ class BaseChannelParser {
16
16
  /** Parse tab data from request, tab name is ignored if it's a continuation data */
17
17
  static parseTabData(name, data) {
18
18
  var _a, _b, _c;
19
- const index = name === "videos" ? 1 : 2;
20
- return (((_b = (_a = data.contents) === null || _a === void 0 ? void 0 : _a.twoColumnBrowseResultsRenderer.tabs[index].tabRenderer.content.sectionListRenderer.contents[0].itemSectionRenderer.contents[0].gridRenderer) === null || _b === void 0 ? void 0 : _b.items) || ((_c = data.onResponseReceivedActions) === null || _c === void 0 ? void 0 : _c[0].appendContinuationItemsAction.continuationItems) ||
19
+ const tab = (_a = data.contents) === null || _a === void 0 ? void 0 : _a.twoColumnBrowseResultsRenderer.tabs.find((t) => {
20
+ var _a;
21
+ return (((_a = t.tabRenderer) === null || _a === void 0 ? void 0 : _a.endpoint.browseEndpoint.params) ===
22
+ BaseChannelParser.TAB_TYPE_PARAMS[name]);
23
+ });
24
+ return (((_b = tab === null || tab === void 0 ? void 0 : tab.tabRenderer.content.sectionListRenderer.contents[0].itemSectionRenderer.contents[0].gridRenderer) === null || _b === void 0 ? void 0 : _b.items) || ((_c = data.onResponseReceivedActions) === null || _c === void 0 ? void 0 : _c[0].appendContinuationItemsAction.continuationItems) ||
21
25
  []);
22
26
  }
23
27
  }
24
28
  exports.BaseChannelParser = BaseChannelParser;
29
+ BaseChannelParser.TAB_TYPE_PARAMS = {
30
+ videos: "EgZ2aWRlb3M%3D",
31
+ playlists: "EglwbGF5bGlzdHM%3D",
32
+ };
@@ -12,7 +12,7 @@ class ChannelParser {
12
12
  target.name = title;
13
13
  target.thumbnails = new Thumbnails_1.Thumbnails().load(avatar.thumbnails);
14
14
  target.videoCount = 0; // data not available
15
- target.subscriberCount = subscriberCountText.simpleText;
15
+ target.subscriberCount = subscriberCountText === null || subscriberCountText === void 0 ? void 0 : subscriberCountText.simpleText;
16
16
  const { tvBanner, mobileBanner, banner } = data.header.c4TabbedHeaderRenderer;
17
17
  target.banner = new Thumbnails_1.Thumbnails().load((banner === null || banner === void 0 ? void 0 : banner.thumbnails) || []);
18
18
  target.tvBanner = new Thumbnails_1.Thumbnails().load((tvBanner === null || tvBanner === void 0 ? void 0 : tvBanner.thumbnails) || []);
@@ -37,7 +37,7 @@ let Thumbnails = Thumbnails_1 = class Thumbnails extends Array {
37
37
  *
38
38
  * @example
39
39
  * ```js
40
- * const min = video.thumbnails.min;
40
+ * const best = video.thumbnails.best;
41
41
  * ```
42
42
  */
43
43
  get best() {
@@ -15,10 +15,18 @@ var BaseChannelParser = /** @class */ (function () {
15
15
  /** Parse tab data from request, tab name is ignored if it's a continuation data */
16
16
  BaseChannelParser.parseTabData = function (name, data) {
17
17
  var _a, _b, _c;
18
- var index = name === "videos" ? 1 : 2;
19
- return (((_b = (_a = data.contents) === null || _a === void 0 ? void 0 : _a.twoColumnBrowseResultsRenderer.tabs[index].tabRenderer.content.sectionListRenderer.contents[0].itemSectionRenderer.contents[0].gridRenderer) === null || _b === void 0 ? void 0 : _b.items) || ((_c = data.onResponseReceivedActions) === null || _c === void 0 ? void 0 : _c[0].appendContinuationItemsAction.continuationItems) ||
18
+ var tab = (_a = data.contents) === null || _a === void 0 ? void 0 : _a.twoColumnBrowseResultsRenderer.tabs.find(function (t) {
19
+ var _a;
20
+ return (((_a = t.tabRenderer) === null || _a === void 0 ? void 0 : _a.endpoint.browseEndpoint.params) ===
21
+ BaseChannelParser.TAB_TYPE_PARAMS[name]);
22
+ });
23
+ return (((_b = tab === null || tab === void 0 ? void 0 : tab.tabRenderer.content.sectionListRenderer.contents[0].itemSectionRenderer.contents[0].gridRenderer) === null || _b === void 0 ? void 0 : _b.items) || ((_c = data.onResponseReceivedActions) === null || _c === void 0 ? void 0 : _c[0].appendContinuationItemsAction.continuationItems) ||
20
24
  []);
21
25
  };
26
+ BaseChannelParser.TAB_TYPE_PARAMS = {
27
+ videos: "EgZ2aWRlb3M%3D",
28
+ playlists: "EglwbGF5bGlzdHM%3D",
29
+ };
22
30
  return BaseChannelParser;
23
31
  }());
24
32
  export { BaseChannelParser };
@@ -22,7 +22,7 @@ var ChannelParser = /** @class */ (function () {
22
22
  target.name = title;
23
23
  target.thumbnails = new Thumbnails().load(avatar.thumbnails);
24
24
  target.videoCount = 0; // data not available
25
- target.subscriberCount = subscriberCountText.simpleText;
25
+ target.subscriberCount = subscriberCountText === null || subscriberCountText === void 0 ? void 0 : subscriberCountText.simpleText;
26
26
  var _b = data.header.c4TabbedHeaderRenderer, tvBanner = _b.tvBanner, mobileBanner = _b.mobileBanner, banner = _b.banner;
27
27
  target.banner = new Thumbnails().load((banner === null || banner === void 0 ? void 0 : banner.thumbnails) || []);
28
28
  target.tvBanner = new Thumbnails().load((tvBanner === null || tvBanner === void 0 ? void 0 : tvBanner.thumbnails) || []);
@@ -73,7 +73,7 @@ var Thumbnails = /** @class */ (function (_super) {
73
73
  *
74
74
  * @example
75
75
  * ```js
76
- * const min = video.thumbnails.min;
76
+ * const best = video.thumbnails.best;
77
77
  * ```
78
78
  */
79
79
  get: function () {
@@ -1,6 +1,10 @@
1
1
  import { YoutubeRawData } from "../../common";
2
2
  import { BaseChannel } from "./BaseChannel";
3
3
  export declare class BaseChannelParser {
4
+ static TAB_TYPE_PARAMS: {
5
+ readonly videos: "EgZ2aWRlb3M%3D";
6
+ readonly playlists: "EglwbGF5bGlzdHM%3D";
7
+ };
4
8
  static loadBaseChannel(target: BaseChannel, data: YoutubeRawData): BaseChannel;
5
9
  /** Parse tab data from request, tab name is ignored if it's a continuation data */
6
10
  static parseTabData(name: "videos" | "playlists", data: YoutubeRawData): YoutubeRawData;
@@ -27,7 +27,7 @@ export declare class Thumbnails extends Array<Thumbnail> {
27
27
  *
28
28
  * @example
29
29
  * ```js
30
- * const min = video.thumbnails.min;
30
+ * const best = video.thumbnails.best;
31
31
  * ```
32
32
  */
33
33
  get best(): string | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "youtubei",
3
- "version": "1.0.0-rc.3",
3
+ "version": "1.0.0-rc.4",
4
4
  "description": "Simple package to get information from youtube such as videos, playlists, channels, video information & comments, related videos, up next video, and more!",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",