Skip to content

InnertubeError: SubscribeButtonView not found! #695

@1162064779

Description

@1162064779

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

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions