YouTube.js icon indicating copy to clipboard operation
YouTube.js copied to clipboard

InnertubeError: SubscribeButtonView not found!

Open 1162064779 opened this issue 1 year ago • 0 comments

Steps to reproduce

call channel.getVideos

Failure Logs

[YOUTUBEJS][Parser]: InnertubeError: SubscribeButtonView not found!
This is a bug, want to help us fix it? Follow the instructions at https://github.com/LuanRT/YouTube.js/blob/main/docs/updating-the-parser.md or report it at https://github.com/LuanRT/YouTube.js/issues!
Introspected and JIT generated this class in the meantime:
class SubscribeButtonView extends YTNode {
  static type = 'SubscribeButtonView';
  subscribe_button_content: {
    button_text: string,
    accessibility_text: string,
    image_name: string,
    subscribe_state: {
      key: string,
      subscribed: boolean
    },
    on_tap_command: NavigationEndpoint
  };
  unsubscribe_button_content: {
    button_text: string,
    accessibility_text: string,
    image_name: string,
    subscribe_state: {
      key: string,
      subscribed: boolean
    },
    on_tap_command: NavigationEndpoint
  };
  state_entity_store_key: string;
  disable_notification_bell: boolean;
  button_style: {
    unsubscribed_state_style: string,
    subscribed_state_style: string,
    button_size: string
  };
  background_style: string;
  disable_subscribe_button: boolean;
  on_show_subscription_options: {
    innertube_command: NavigationEndpoint
  };
  channel_id: string;
  enable_subscribe_button_post_click_animation: boolean;
  notification_state_entity_store_keys: {
    subs_notification_state_key: string
  };
  bell_accessibility_data: {
    off_label: string,
    all_label: string,
    occasional_label: string,
    disabled_label: string
  };
  logging_directives: {
    tracking_params: string,
    visibility: {
      types: string
    },
    enable_displaylogger_experiment: boolean
  };
  constructor(data: RawNode) {
    super();
    this.subscribe_button_content = {
      button_text: data.subscribeButtonContent.buttonText,
      accessibility_text: data.subscribeButtonContent.accessibilityText,
      image_name: data.subscribeButtonContent.imageName,
      subscribe_state: {
        key: data.subscribeButtonContent.subscribeState.key,
        subscribed: data.subscribeButtonContent.subscribeState.subscribed
      },
      on_tap_command: new NavigationEndpoint(data.subscribeButtonContent.onTapCommand)
    };
    this.unsubscribe_button_content = {
      button_text: data.unsubscribeButtonContent.buttonText,
      accessibility_text: data.unsubscribeButtonContent.accessibilityText,
      image_name: data.unsubscribeButtonContent.imageName,
      subscribe_state: {
        key: data.unsubscribeButtonContent.subscribeState.key,
        subscribed: data.unsubscribeButtonContent.subscribeState.subscribed
      },
      on_tap_command: new NavigationEndpoint(data.unsubscribeButtonContent.onTapCommand)
    };
    this.state_entity_store_key = data.stateEntityStoreKey;
    this.disable_notification_bell = data.disableNotificationBell;
    this.button_style = {
      unsubscribed_state_style: data.buttonStyle.unsubscribedStateStyle,
      subscribed_state_style: data.buttonStyle.subscribedStateStyle,
      button_size: data.buttonStyle.buttonSize
    };
    this.background_style = data.backgroundStyle;
    this.disable_subscribe_button = data.disableSubscribeButton;
    this.on_show_subscription_options = {
      innertube_command: new NavigationEndpoint(data.onShowSubscriptionOptions.innertubeCommand)
    };
    this.channel_id = data.channelId;
    this.enable_subscribe_button_post_click_animation = data.enableSubscribeButtonPostClickAnimation;
    this.notification_state_entity_store_keys = {
      subs_notification_state_key: data.notificationStateEntityStoreKeys.subsNotificationStateKey
    };
    this.bell_accessibility_data = {
      off_label: data.bellAccessibilityData.offLabel,
      all_label: data.bellAccessibilityData.allLabel,
      occasional_label: data.bellAccessibilityData.occasionalLabel,
      disabled_label: data.bellAccessibilityData.disabledLabel
    };
    this.logging_directives = {
      tracking_params: data.loggingDirectives.trackingParams,
      visibility: {
        types: data.loggingDirectives.visibility.types
      },
      enable_displaylogger_experiment: data.loggingDirectives.enableDisplayloggerExperiment
    };
  }
}
    at ERROR_HANDLER (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57467:30)
    at createRuntimeClass (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:56637:3)
    at generateRuntimeClass (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:56680:19)
    at parseItem (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57771:75)
    at Object.parseArray (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57813:22)
    at D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:51949:31
    at Array.map (<anonymous>)
    at new FlexibleActionsView (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:51948:43)
    at Object.parseItem (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57793:22)
    at new PageHeaderView (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:54483:35) {
  date: 2024-07-17T07:33:56.838Z,
  version: '10.0.0'
}
[YOUTUBEJS][Parser]: ParsingError: Type mismatch, got SubscribeButtonView expected ButtonView | ToggleButtonView.
    at ERROR_HANDLER (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57456:30)
    at parseItem (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57775:13)
    at Object.parseArray (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57813:22)
    at D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:51949:31
    at Array.map (<anonymous>)
    at new FlexibleActionsView (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:51948:43)
    at Object.parseItem (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57793:22)
    at new PageHeaderView (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:54483:35)
    at Object.parseItem (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57793:22)
    at new PageHeader (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:54498:35) {
  info: {
    subscribeButtonContent: {
      buttonText: 'Subscribe',
      accessibilityText: 'Subscribe to Dilmer Valecillos.',
      imageName: 'ic_video_youtube',
      subscribeState: [Object],
      onTapCommand: [Object]
    },
    unsubscribeButtonContent: {
      buttonText: 'Subscribed',
      accessibilityText: 'Unsubscribe from Dilmer Valecillos.',
      imageName: 'ic_video_youtube',
      subscribeState: [Object],
      onTapCommand: [Object]
    },
    stateEntityStoreKey: 'EhhVQ0hNMzdEblRfUUdKVDVaeWw0RW1xY0EgMygB',
    trackingParams: 'CCUQmysYASITCPTmkajHrYcDFZWYVgEddccGwzIJY2hhbm5lbHM0',
    disableNotificationBell: false,
    buttonStyle: {
      unsubscribedStateStyle: 'SUBSCRIBE_BUTTON_VIEW_MODEL_UNSUBSCRIBED_STATE_STYLE_PILL',
      subscribedStateStyle: 'SUBSCRIBE_BUTTON_VIEW_MODEL_SUBSCRIBED_STATE_STYLE_DROPDOWN',
      buttonSize: 'SUBSCRIBE_BUTTON_VIEW_MODEL_SIZE_MEDIUM'
    },
    backgroundStyle: 'SUBSCRIBE_BUTTON_VIEW_MODEL_BACKGROUND_STYLE_UNKNOWN',
    disableSubscribeButton: false,
    onShowSubscriptionOptions: { innertubeCommand: [Object] },
    channelId: 'UCHM37DnT_QGJT5Zyl4EmqcA',
    enableSubscribeButtonPostClickAnimation: true,
    notificationStateEntityStoreKeys: {
      subsNotificationStateKey: 'EhhVQ0hNMzdEblRfUUdKVDVaeWw0RW1xY0EgjAEoAQ%3D%3D'
    },
    bellAccessibilityData: {
      offLabel: 'Current setting is receive no notifications. Tap to change your notification setting for Dilmer Valecillos',
      allLabel: 'Current setting is all notifications. Tap to change your notification setting for Dilmer Valecillos',
      occasionalLabel: 'Current setting is personalized notifications. Tap to change your notification setting for Dilmer Valecillos',
      disabledLabel: 'YouTube notifications are off. Tap to change your notification setting'
    },
    loggingDirectives: {
      trackingParams: 'CCUQmysYASITCPTmkajHrYcDFZWYVgEddccGwzIJY2hhbm5lbHM0',
      visibility: [Object],
      enableDisplayloggerExperiment: true
    }
  },
  date: 2024-07-17T07:33:56.840Z,
  version: '10.0.0'
}
[YOUTUBEJS][Parser]: ParsingError: Type mismatch, got SubscribeButtonView expected ButtonView | ToggleButtonView.
    at ERROR_HANDLER (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57456:30)
    at parseItem (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57775:13)
    at Object.parseArray (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57813:22)
    at D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:51949:31
    at Array.map (<anonymous>)
    at new FlexibleActionsView (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:51948:43)
    at Object.parseItem (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57793:22)
    at new PageHeaderView (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:54483:35)
    at Object.parseItem (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:57793:22)
    at new PageHeader (D:\SkyboxFull\vrplayer\Assets\StreamingAssets\editor.cjs:54498:35) {
  info: {
    subscribeButtonContent: {
      buttonText: 'Subscribe',
      accessibilityText: 'Subscribe to Dilmer Valecillos.',
      imageName: 'ic_video_youtube',
      subscribeState: [Object],
      onTapCommand: [Object]
    },
    unsubscribeButtonContent: {
      buttonText: 'Subscribed',
      accessibilityText: 'Unsubscribe from Dilmer Valecillos.',
      imageName: 'ic_video_youtube',
      subscribeState: [Object],
      onTapCommand: [Object]
    },
    stateEntityStoreKey: 'EhhVQ0hNMzdEblRfUUdKVDVaeWw0RW1xY0EgMygB',
    trackingParams: 'CCUQmysYASITCID1tqjHrYcDFQ-cVgEdg90FLTIJY2hhbm5lbHM0',
    disableNotificationBell: false,
    buttonStyle: {
      unsubscribedStateStyle: 'SUBSCRIBE_BUTTON_VIEW_MODEL_UNSUBSCRIBED_STATE_STYLE_PILL',
      subscribedStateStyle: 'SUBSCRIBE_BUTTON_VIEW_MODEL_SUBSCRIBED_STATE_STYLE_DROPDOWN',
      buttonSize: 'SUBSCRIBE_BUTTON_VIEW_MODEL_SIZE_MEDIUM'
    },
    backgroundStyle: 'SUBSCRIBE_BUTTON_VIEW_MODEL_BACKGROUND_STYLE_UNKNOWN',
    disableSubscribeButton: false,
    onShowSubscriptionOptions: { innertubeCommand: [Object] },
    channelId: 'UCHM37DnT_QGJT5Zyl4EmqcA',
    enableSubscribeButtonPostClickAnimation: true,
    notificationStateEntityStoreKeys: {
      subsNotificationStateKey: 'EhhVQ0hNMzdEblRfUUdKVDVaeWw0RW1xY0EgjAEoAQ%3D%3D'
    },
    bellAccessibilityData: {
      offLabel: 'Current setting is receive no notifications. Tap to change your notification setting for Dilmer Valecillos',
      allLabel: 'Current setting is all notifications. Tap to change your notification setting for Dilmer Valecillos',
      occasionalLabel: 'Current setting is personalized notifications. Tap to change your notification setting for Dilmer Valecillos',
      disabledLabel: 'YouTube notifications are off. Tap to change your notification setting'
    },
    loggingDirectives: {
      trackingParams: 'CCUQmysYASITCID1tqjHrYcDFQ-cVgEdg90FLTIJY2hhbm5lbHM0',
      visibility: [Object],
      enableDisplayloggerExperiment: true
    }
  },
  date: 2024-07-17T07:33:57.135Z,
  version: '10.0.0'
}

Expected behavior

no InnertubeError

Current behavior

.

Version

Default

Anything else?

No response

Checklist

  • [X] I am running the latest version.
  • [X] I checked the documentation and found no answer.
  • [X] I have searched the existing issues and made sure this is not a duplicate.
  • [X] I have provided sufficient information.

1162064779 avatar Jul 17 '24 07:07 1162064779