#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ActivityResource {
#[prost(string, tag = "1")]
pub dark_text_color: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub divider_color: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub bg_color: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub selected_bg_color: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub text_color: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
pub light_text_color: ::prost::alloc::string::String,
}
impl ::prost::Name for ActivityResource {
const NAME: &'static str = "ActivityResource";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ActivityResource".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ActivityResource".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Arc {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(int64, tag = "2")]
pub cid: i64,
#[prost(int64, tag = "3")]
pub duration: i64,
#[prost(message, optional, tag = "4")]
pub stat: ::core::option::Option<super::common::Stat>,
#[prost(string, tag = "5")]
pub bvid: ::prost::alloc::string::String,
#[prost(int32, tag = "6")]
pub copyright: i32,
#[prost(message, optional, tag = "7")]
pub right: ::core::option::Option<Rights>,
#[prost(string, tag = "8")]
pub cover: ::prost::alloc::string::String,
#[prost(int64, tag = "9")]
pub type_id: i64,
#[prost(string, tag = "10")]
pub title: ::prost::alloc::string::String,
#[prost(int32, tag = "11")]
pub state: i32,
}
impl ::prost::Name for Arc {
const NAME: &'static str = "Arc";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Arc".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Arc".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ArcRefreshReply {
#[prost(message, optional, tag = "1")]
pub stat: ::core::option::Option<super::common::Stat>,
#[prost(message, optional, tag = "2")]
pub req_user: ::core::option::Option<SimpleReqUser>,
#[prost(message, optional, tag = "3")]
pub arc: ::core::option::Option<SimpleArc>,
#[prost(message, optional, tag = "4")]
pub online: ::core::option::Option<Online>,
#[prost(message, optional, tag = "5")]
pub like_config: ::core::option::Option<LikeConfig>,
#[prost(message, optional, tag = "6")]
pub owner: ::core::option::Option<SimpleOwner>,
#[prost(message, optional, tag = "7")]
pub reply_style: ::core::option::Option<ReplyStyle>,
}
impl ::prost::Name for ArcRefreshReply {
const NAME: &'static str = "ArcRefreshReply";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ArcRefreshReply".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ArcRefreshReply".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ArcRefreshReq {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(string, tag = "2")]
pub bvid: ::prost::alloc::string::String,
#[prost(enumeration = "UnionType", tag = "3")]
pub r#type: i32,
}
impl ::prost::Name for ArcRefreshReq {
const NAME: &'static str = "ArcRefreshReq";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ArcRefreshReq".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ArcRefreshReq".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AttentionCard {
#[prost(message, repeated, tag = "1")]
pub show_time: ::prost::alloc::vec::Vec<ShowTime>,
}
impl ::prost::Name for AttentionCard {
const NAME: &'static str = "AttentionCard";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.AttentionCard".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.AttentionCard".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BgPlayNotice {
#[prost(bool, tag = "1")]
pub allow_show: bool,
#[prost(string, tag = "2")]
pub text: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub btn_text1: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub btn_text2: ::prost::alloc::string::String,
}
impl ::prost::Name for BgPlayNotice {
const NAME: &'static str = "BgPlayNotice";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.BgPlayNotice".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.BgPlayNotice".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct BizFollowVideoParam {
#[prost(int64, tag = "1")]
pub season_id: i64,
}
impl ::prost::Name for BizFollowVideoParam {
const NAME: &'static str = "BizFollowVideoParam";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.BizFollowVideoParam".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.BizFollowVideoParam".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BizGameBackflowParam {
#[prost(string, tag = "1")]
pub extra: ::prost::alloc::string::String,
}
impl ::prost::Name for BizGameBackflowParam {
const NAME: &'static str = "BizGameBackflowParam";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.BizGameBackflowParam".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.BizGameBackflowParam".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BizJumpLinkParam {
#[prost(string, tag = "1")]
pub url: ::prost::alloc::string::String,
}
impl ::prost::Name for BizJumpLinkParam {
const NAME: &'static str = "BizJumpLinkParam";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.BizJumpLinkParam".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.BizJumpLinkParam".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BizReserveActivityParam {
#[prost(int64, tag = "1")]
pub activity_id: i64,
#[prost(string, tag = "2")]
pub from: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub r#type: ::prost::alloc::string::String,
#[prost(int64, tag = "4")]
pub oid: i64,
#[prost(int64, tag = "5")]
pub reserve_id: i64,
}
impl ::prost::Name for BizReserveActivityParam {
const NAME: &'static str = "BizReserveActivityParam";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.BizReserveActivityParam".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.BizReserveActivityParam".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct BizReserveGameParam {
#[prost(int64, tag = "1")]
pub game_id: i64,
}
impl ::prost::Name for BizReserveGameParam {
const NAME: &'static str = "BizReserveGameParam";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.BizReserveGameParam".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.BizReserveGameParam".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Button {
#[prost(string, tag = "1")]
pub title: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub uri: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub icon: ::prost::alloc::string::String,
#[prost(enumeration = "JumpShowType", tag = "4")]
pub jump_show_type: i32,
}
impl ::prost::Name for Button {
const NAME: &'static str = "Button";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Button".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Button".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cm {
#[prost(message, optional, tag = "1")]
pub cm_under_player: ::core::option::Option<::prost_types::Any>,
#[prost(message, optional, tag = "2")]
pub ads_control: ::core::option::Option<::prost_types::Any>,
#[prost(message, repeated, tag = "3")]
pub source_content: ::prost::alloc::vec::Vec<::prost_types::Any>,
#[prost(message, optional, tag = "4")]
pub pad_relate_cm: ::core::option::Option<PadRelateCm>,
#[prost(message, repeated, tag = "5")]
pub source_content_item: ::prost::alloc::vec::Vec<SourceContentItem>,
}
impl ::prost::Name for Cm {
const NAME: &'static str = "CM";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.CM".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.CM".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CacheAuthenticationReply {
#[prost(map = "int64, message", tag = "1")]
pub item: ::std::collections::HashMap<i64, CachePlayAvRly>,
}
impl ::prost::Name for CacheAuthenticationReply {
const NAME: &'static str = "CacheAuthenticationReply";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.CacheAuthenticationReply".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.CacheAuthenticationReply".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CacheAuthenticationReq {
#[prost(message, repeated, tag = "1")]
pub av: ::prost::alloc::vec::Vec<CachePlayAv>,
}
impl ::prost::Name for CacheAuthenticationReq {
const NAME: &'static str = "CacheAuthenticationReq";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.CacheAuthenticationReq".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.CacheAuthenticationReq".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct CachePlayAv {
#[prost(int64, tag = "1")]
pub aid: i64,
}
impl ::prost::Name for CachePlayAv {
const NAME: &'static str = "CachePlayAv";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.CachePlayAv".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.CachePlayAv".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct CachePlayAvRly {
#[prost(enumeration = "CacheCode", tag = "1")]
pub code: i32,
}
impl ::prost::Name for CachePlayAvRly {
const NAME: &'static str = "CachePlayAvRly";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.CachePlayAvRly".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.CachePlayAvRly".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ChargingPlus {
#[prost(bool, tag = "1")]
pub pass: bool,
#[prost(message, repeated, tag = "2")]
pub play_toast: ::prost::alloc::vec::Vec<PlayToast>,
}
impl ::prost::Name for ChargingPlus {
const NAME: &'static str = "ChargingPlus";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ChargingPlus".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ChargingPlus".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Chronos {
#[prost(string, tag = "1")]
pub md5: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub file: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub sign: ::prost::alloc::string::String,
}
impl ::prost::Name for Chronos {
const NAME: &'static str = "Chronos";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Chronos".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Chronos".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ChronosParam {
#[prost(string, tag = "1")]
pub engine_version: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub message_protocol: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub service_key: ::prost::alloc::string::String,
}
impl ::prost::Name for ChronosParam {
const NAME: &'static str = "ChronosParam";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ChronosParam".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ChronosParam".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandDm {
#[prost(int64, tag = "1")]
pub id: i64,
#[prost(int64, tag = "2")]
pub oid: i64,
#[prost(int64, tag = "3")]
pub mid: i64,
#[prost(string, tag = "4")]
pub command: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub content: ::prost::alloc::string::String,
#[prost(int32, tag = "6")]
pub progress: i32,
#[prost(string, tag = "7")]
pub ctime: ::prost::alloc::string::String,
#[prost(string, tag = "8")]
pub mtime: ::prost::alloc::string::String,
#[prost(string, tag = "9")]
pub extra: ::prost::alloc::string::String,
#[prost(string, tag = "10")]
pub id_str: ::prost::alloc::string::String,
}
impl ::prost::Name for CommandDm {
const NAME: &'static str = "CommandDm";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.CommandDm".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.CommandDm".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Config {
#[prost(message, optional, tag = "1")]
pub online: ::core::option::Option<Online>,
#[prost(message, optional, tag = "2")]
pub player_icon: ::core::option::Option<PlayerIcon>,
#[prost(message, optional, tag = "3")]
pub story_entrance: ::core::option::Option<StoryEntrance>,
#[prost(message, optional, tag = "4")]
pub bg_play_notice: ::core::option::Option<BgPlayNotice>,
}
impl ::prost::Name for Config {
const NAME: &'static str = "Config";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Config".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Config".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ContractCard {
#[prost(float, tag = "1")]
pub display_progress: f32,
#[prost(int64, tag = "2")]
pub display_accuracy: i64,
#[prost(int64, tag = "3")]
pub display_duration: i64,
#[prost(int32, tag = "4")]
pub show_mode: i32,
#[prost(int32, tag = "5")]
pub page_type: i32,
#[prost(message, optional, tag = "6")]
pub upper: ::core::option::Option<UpperInfos>,
#[prost(int32, tag = "7")]
pub is_follow_display: i32,
#[prost(message, optional, tag = "8")]
pub text: ::core::option::Option<ContractText>,
#[prost(int64, tag = "9")]
pub follow_display_end_duration: i64,
#[prost(int32, tag = "10")]
pub is_play_display: i32,
#[prost(int32, tag = "11")]
pub is_interact_display: i32,
#[prost(bool, tag = "12")]
pub play_display_switch: bool,
}
impl ::prost::Name for ContractCard {
const NAME: &'static str = "ContractCard";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ContractCard".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ContractCard".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ContractText {
#[prost(string, tag = "1")]
pub title: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub subtitle: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub inline_title: ::prost::alloc::string::String,
}
impl ::prost::Name for ContractText {
const NAME: &'static str = "ContractText";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ContractText".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ContractText".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct Control {
#[prost(bool, tag = "1")]
pub limit: bool,
}
impl ::prost::Name for Control {
const NAME: &'static str = "Control";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Control".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Control".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DmResource {
#[prost(message, repeated, tag = "1")]
pub command_dms: ::prost::alloc::vec::Vec<CommandDm>,
#[prost(message, optional, tag = "2")]
pub attention: ::core::option::Option<AttentionCard>,
#[prost(message, repeated, tag = "3")]
pub cards: ::prost::alloc::vec::Vec<OperationCard>,
}
impl ::prost::Name for DmResource {
const NAME: &'static str = "DmResource";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.DmResource".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.DmResource".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ECodeConfig {
#[prost(string, tag = "1")]
pub redirect_url: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub msg: ::prost::alloc::string::String,
}
impl ::prost::Name for ECodeConfig {
const NAME: &'static str = "ECodeConfig";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ECodeConfig".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ECodeConfig".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FloorAdSearchItem {
#[prost(message, optional, tag = "1")]
pub source_content: ::core::option::Option<::prost_types::Any>,
}
impl ::prost::Name for FloorAdSearchItem {
const NAME: &'static str = "FloorAdSearchItem";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.FloorAdSearchItem".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.FloorAdSearchItem".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FloorAdSearchReply {
#[prost(message, optional, tag = "1")]
pub tab: ::core::option::Option<FloorAdSearchTab>,
#[prost(message, repeated, tag = "3")]
pub item: ::prost::alloc::vec::Vec<FloorAdSearchItem>,
}
impl ::prost::Name for FloorAdSearchReply {
const NAME: &'static str = "FloorAdSearchReply";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.FloorAdSearchReply".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.FloorAdSearchReply".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FloorAdSearchReq {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(string, tag = "2")]
pub ad_extra: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub spmid: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub from_spmid: ::prost::alloc::string::String,
}
impl ::prost::Name for FloorAdSearchReq {
const NAME: &'static str = "FloorAdSearchReq";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.FloorAdSearchReq".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.FloorAdSearchReq".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FloorAdSearchTab {
#[prost(string, tag = "1")]
pub title: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub but_title: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub but_url: ::prost::alloc::string::String,
}
impl ::prost::Name for FloorAdSearchTab {
const NAME: &'static str = "FloorAdSearchTab";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.FloorAdSearchTab".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.FloorAdSearchTab".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct FragmentArc {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(int64, tag = "2")]
pub cid: i64,
}
impl ::prost::Name for FragmentArc {
const NAME: &'static str = "FragmentArc";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.FragmentArc".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.FragmentArc".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FragmentParam {
#[prost(message, repeated, tag = "1")]
pub fragment_arcs: ::prost::alloc::vec::Vec<FragmentArc>,
}
impl ::prost::Name for FragmentParam {
const NAME: &'static str = "FragmentParam";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.FragmentParam".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.FragmentParam".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FragmentRes {
#[prost(map = "int64, message", tag = "1")]
pub video_shot: ::std::collections::HashMap<i64, VideoShot>,
}
impl ::prost::Name for FragmentRes {
const NAME: &'static str = "FragmentRes";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.FragmentRes".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.FragmentRes".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct IconData {
#[prost(string, tag = "1")]
pub meta_json: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub sprits_img: ::prost::alloc::string::String,
}
impl ::prost::Name for IconData {
const NAME: &'static str = "IconData";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.IconData".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.IconData".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct IntroductionTab {
#[prost(string, tag = "1")]
pub title: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub modules: ::prost::alloc::vec::Vec<super::common::Module>,
}
impl ::prost::Name for IntroductionTab {
const NAME: &'static str = "IntroductionTab";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.IntroductionTab".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.IntroductionTab".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LikeConfig {
#[prost(message, optional, tag = "1")]
pub triple_like: ::core::option::Option<super::common::UpLikeImg>,
#[prost(string, tag = "2")]
pub like_animation: ::prost::alloc::string::String,
}
impl ::prost::Name for LikeConfig {
const NAME: &'static str = "LikeConfig";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.LikeConfig".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.LikeConfig".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Material {
#[prost(string, tag = "1")]
pub icon: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub text: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub url: ::prost::alloc::string::String,
#[prost(enumeration = "MaterialBizType", tag = "4")]
pub r#type: i32,
#[prost(string, tag = "5")]
pub param: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
pub static_icon: ::prost::alloc::string::String,
#[prost(string, tag = "7")]
pub bg_color: ::prost::alloc::string::String,
#[prost(string, tag = "8")]
pub bg_pic: ::prost::alloc::string::String,
#[prost(int32, tag = "9")]
pub jump_type: i32,
#[prost(enumeration = "PageType", tag = "10")]
pub page_type: i32,
#[prost(bool, tag = "11")]
pub need_login: bool,
#[prost(map = "string, string", tag = "12")]
pub report: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
}
impl ::prost::Name for Material {
const NAME: &'static str = "Material";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Material".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Material".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OldFan {
#[prost(int32, tag = "1")]
pub is_follow_display: i32,
#[prost(string, tag = "2")]
pub wing_pic: ::prost::alloc::string::String,
}
impl ::prost::Name for OldFan {
const NAME: &'static str = "OldFan";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.OldFan".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.OldFan".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct Online {
#[prost(bool, tag = "1")]
pub online_show: bool,
}
impl ::prost::Name for Online {
const NAME: &'static str = "Online";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Online".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Online".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OperationCard {
#[prost(int64, tag = "1")]
pub id: i64,
#[prost(int32, tag = "2")]
pub from: i32,
#[prost(int32, tag = "3")]
pub to: i32,
#[prost(bool, tag = "4")]
pub status: bool,
#[prost(enumeration = "BizType", tag = "5")]
pub biz_type: i32,
#[prost(message, optional, tag = "6")]
pub content: ::core::option::Option<OperationCardContent>,
#[prost(oneof = "operation_card::Param", tags = "7, 8, 9, 10, 11")]
pub param: ::core::option::Option<operation_card::Param>,
}
pub mod operation_card {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Param {
#[prost(message, tag = "7")]
Follow(super::BizFollowVideoParam),
#[prost(message, tag = "8")]
Reserve(super::BizReserveActivityParam),
#[prost(message, tag = "9")]
Jump(super::BizJumpLinkParam),
#[prost(message, tag = "10")]
Game(super::BizReserveGameParam),
#[prost(message, tag = "11")]
GameBackflow(super::BizGameBackflowParam),
}
}
impl ::prost::Name for OperationCard {
const NAME: &'static str = "OperationCard";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.OperationCard".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.OperationCard".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OperationCardContent {
#[prost(string, tag = "1")]
pub title: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub subtitle: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub icon: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub button_title: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub button_selected_title: ::prost::alloc::string::String,
#[prost(bool, tag = "6")]
pub show_selected: bool,
}
impl ::prost::Name for OperationCardContent {
const NAME: &'static str = "OperationCardContent";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.OperationCardContent".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.OperationCardContent".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PadRelateCm {
#[prost(message, optional, tag = "1")]
pub cm: ::core::option::Option<RelateCm>,
}
impl ::prost::Name for PadRelateCm {
const NAME: &'static str = "PadRelateCM";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.PadRelateCM".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.PadRelateCM".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct PageControl {
#[prost(message, optional, tag = "1")]
pub toast_show: ::core::option::Option<Control>,
#[prost(message, optional, tag = "2")]
pub material_show: ::core::option::Option<Control>,
#[prost(message, optional, tag = "3")]
pub up_show: ::core::option::Option<Control>,
}
impl ::prost::Name for PageControl {
const NAME: &'static str = "PageControl";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.PageControl".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.PageControl".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct PlayListReqParam {
#[prost(int64, tag = "1")]
pub media_id: i64,
#[prost(int64, tag = "2")]
pub biz_id: i64,
#[prost(int64, tag = "3")]
pub r#type: i64,
#[prost(bool, tag = "4")]
pub page_direction: bool,
#[prost(bool, tag = "5")]
pub first_page: bool,
#[prost(int64, tag = "6")]
pub offset: i64,
#[prost(int64, tag = "7")]
pub sort_desc: i64,
#[prost(int64, tag = "8")]
pub sort_field: i64,
}
impl ::prost::Name for PlayListReqParam {
const NAME: &'static str = "PlayListReqParam";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.PlayListReqParam".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.PlayListReqParam".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayToast {
#[prost(enumeration = "PlayToastEnum", tag = "1")]
pub business: i32,
#[prost(string, tag = "2")]
pub icon_url: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub text: ::prost::alloc::string::String,
}
impl ::prost::Name for PlayToast {
const NAME: &'static str = "PlayToast";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.PlayToast".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.PlayToast".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerIcon {
#[prost(string, tag = "1")]
pub url1: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub hash1: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub url2: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub hash2: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub drag_left_png: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
pub middle_png: ::prost::alloc::string::String,
#[prost(string, tag = "7")]
pub drag_right_png: ::prost::alloc::string::String,
#[prost(message, optional, tag = "8")]
pub drag_data: ::core::option::Option<IconData>,
#[prost(message, optional, tag = "9")]
pub nodrag_data: ::core::option::Option<IconData>,
}
impl ::prost::Name for PlayerIcon {
const NAME: &'static str = "PlayerIcon";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.PlayerIcon".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.PlayerIcon".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PointMaterial {
#[prost(string, tag = "1")]
pub url: ::prost::alloc::string::String,
#[prost(enumeration = "MaterialSource", tag = "2")]
pub material_source: i32,
}
impl ::prost::Name for PointMaterial {
const NAME: &'static str = "PointMaterial";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.PointMaterial".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.PointMaterial".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Relate {
#[prost(int64, tag = "1")]
pub device_type: i64,
#[prost(message, optional, tag = "2")]
pub pagination: ::core::option::Option<super::super::super::pagination::Pagination>,
}
impl ::prost::Name for Relate {
const NAME: &'static str = "Relate";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Relate".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Relate".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RelateCm {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(message, optional, tag = "2")]
pub source_content: ::core::option::Option<::prost_types::Any>,
#[prost(int64, tag = "3")]
pub duration: i64,
#[prost(message, optional, tag = "4")]
pub stat: ::core::option::Option<super::common::Stat>,
#[prost(message, optional, tag = "5")]
pub owner: ::core::option::Option<super::common::Owner>,
}
impl ::prost::Name for RelateCm {
const NAME: &'static str = "RelateCM";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.RelateCM".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.RelateCM".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RelatesFeedReply {
#[prost(message, repeated, tag = "1")]
pub relates: ::prost::alloc::vec::Vec<super::common::RelateCard>,
#[prost(message, optional, tag = "2")]
pub pagination: ::core::option::Option<super::super::super::pagination::Pagination>,
}
impl ::prost::Name for RelatesFeedReply {
const NAME: &'static str = "RelatesFeedReply";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.RelatesFeedReply".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.RelatesFeedReply".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RelatesFeedReq {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(string, tag = "2")]
pub bvid: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub from: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub spmid: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub from_spmid: ::prost::alloc::string::String,
#[prost(message, optional, tag = "6")]
pub player_args: ::core::option::Option<
super::super::archive::middleware::v1::PlayerArgs,
>,
#[prost(message, optional, tag = "7")]
pub pagination: ::core::option::Option<super::super::super::pagination::Pagination>,
#[prost(string, tag = "8")]
pub session_id: ::prost::alloc::string::String,
#[prost(int64, tag = "9")]
pub auto_play: i64,
#[prost(string, tag = "10")]
pub from_track_id: ::prost::alloc::string::String,
#[prost(string, tag = "11")]
pub biz_extra: ::prost::alloc::string::String,
#[prost(string, tag = "12")]
pub ad_extra: ::prost::alloc::string::String,
#[prost(int64, tag = "13")]
pub tab_category: i64,
#[prost(string, tag = "14")]
pub tab_category_name: ::prost::alloc::string::String,
#[prost(map = "string, string", tag = "15")]
pub extra_content: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
}
impl ::prost::Name for RelatesFeedReq {
const NAME: &'static str = "RelatesFeedReq";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.RelatesFeedReq".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.RelatesFeedReq".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReplyStyle {
#[prost(string, tag = "1")]
pub badge_url: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub badge_text: ::prost::alloc::string::String,
#[prost(int64, tag = "3")]
pub badge_type: i64,
}
impl ::prost::Name for ReplyStyle {
const NAME: &'static str = "ReplyStyle";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ReplyStyle".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ReplyStyle".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReplyTab {
#[prost(message, optional, tag = "1")]
pub reply_style: ::core::option::Option<ReplyStyle>,
#[prost(string, tag = "2")]
pub title: ::prost::alloc::string::String,
#[prost(message, optional, tag = "3")]
pub control: ::core::option::Option<TabControl>,
}
impl ::prost::Name for ReplyTab {
const NAME: &'static str = "ReplyTab";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ReplyTab".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ReplyTab".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReqUser {
#[prost(int32, tag = "1")]
pub favorite: i32,
#[prost(int32, tag = "2")]
pub like: i32,
#[prost(int32, tag = "3")]
pub coin: i32,
#[prost(int32, tag = "4")]
pub fav_season: i32,
#[prost(int32, tag = "5")]
pub follow: i32,
#[prost(int32, tag = "6")]
pub dislike: i32,
#[prost(message, optional, tag = "7")]
pub elec_plus_btn: ::core::option::Option<Button>,
#[prost(message, optional, tag = "8")]
pub charging_plus: ::core::option::Option<ChargingPlus>,
#[prost(message, optional, tag = "9")]
pub extra: ::core::option::Option<ReqUserExtra>,
#[prost(int32, tag = "10")]
pub paid: i32,
#[prost(message, optional, tag = "11")]
pub old_fan: ::core::option::Option<OldFan>,
}
impl ::prost::Name for ReqUser {
const NAME: &'static str = "ReqUser";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ReqUser".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ReqUser".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct ReqUserExtra {
#[prost(bool, tag = "1")]
pub user_flag_new: bool,
}
impl ::prost::Name for ReqUserExtra {
const NAME: &'static str = "ReqUserExtra";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ReqUserExtra".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ReqUserExtra".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct Rights {
#[prost(bool, tag = "1")]
pub only_vip_download: bool,
#[prost(bool, tag = "2")]
pub no_reprint: bool,
#[prost(bool, tag = "3")]
pub download: bool,
#[prost(bool, tag = "4")]
pub is_charging_pay: bool,
}
impl ::prost::Name for Rights {
const NAME: &'static str = "Rights";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Rights".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Rights".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct ShowTime {
#[prost(int32, tag = "1")]
pub start_time: i32,
#[prost(int32, tag = "2")]
pub end_time: i32,
#[prost(double, tag = "3")]
pub pos_x: f64,
#[prost(double, tag = "4")]
pub pos_y: f64,
}
impl ::prost::Name for ShowTime {
const NAME: &'static str = "ShowTime";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ShowTime".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ShowTime".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct SimpleArc {
#[prost(int32, tag = "1")]
pub copyright: i32,
}
impl ::prost::Name for SimpleArc {
const NAME: &'static str = "SimpleArc";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.SimpleArc".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.SimpleArc".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct SimpleOwner {
#[prost(enumeration = "super::common::AttentionRelationStatus", tag = "1")]
pub attention_relation: i32,
}
impl ::prost::Name for SimpleOwner {
const NAME: &'static str = "SimpleOwner";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.SimpleOwner".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.SimpleOwner".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct SimpleReqUser {
#[prost(int32, tag = "1")]
pub favorite: i32,
#[prost(int32, tag = "2")]
pub like: i32,
#[prost(int32, tag = "3")]
pub coin: i32,
}
impl ::prost::Name for SimpleReqUser {
const NAME: &'static str = "SimpleReqUser";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.SimpleReqUser".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.SimpleReqUser".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SourceContentAv {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(message, optional, tag = "2")]
pub stat: ::core::option::Option<super::common::Stat>,
}
impl ::prost::Name for SourceContentAv {
const NAME: &'static str = "SourceContentAV";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.SourceContentAV".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.SourceContentAV".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SourceContentItem {
#[prost(message, optional, tag = "1")]
pub source_content: ::core::option::Option<::prost_types::Any>,
#[prost(enumeration = "SourceContentType", tag = "2")]
pub sc_type: i32,
#[prost(oneof = "source_content_item::Data", tags = "3, 4")]
pub data: ::core::option::Option<source_content_item::Data>,
}
pub mod source_content_item {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Data {
#[prost(message, tag = "3")]
Av(super::SourceContentAv),
#[prost(message, tag = "4")]
Live(super::super::common::SourceContentLive),
}
}
impl ::prost::Name for SourceContentItem {
const NAME: &'static str = "SourceContentItem";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.SourceContentItem".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.SourceContentItem".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StoryActualCardWrapper {
#[prost(oneof = "story_actual_card_wrapper::ActualCard", tags = "1")]
pub actual_card: ::core::option::Option<story_actual_card_wrapper::ActualCard>,
}
pub mod story_actual_card_wrapper {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum ActualCard {
#[prost(message, tag = "1")]
VideoCard(super::StoryVideoCard),
}
}
impl ::prost::Name for StoryActualCardWrapper {
const NAME: &'static str = "StoryActualCardWrapper";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.StoryActualCardWrapper".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.StoryActualCardWrapper".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StoryEntrance {
#[prost(bool, tag = "1")]
pub arc_play_story: bool,
#[prost(string, tag = "2")]
pub story_icon: ::prost::alloc::string::String,
#[prost(bool, tag = "3")]
pub arc_landscape_story: bool,
#[prost(string, tag = "4")]
pub landscape_icon: ::prost::alloc::string::String,
#[prost(bool, tag = "5")]
pub play_story: bool,
}
impl ::prost::Name for StoryEntrance {
const NAME: &'static str = "StoryEntrance";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.StoryEntrance".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.StoryEntrance".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StoryReply {
#[prost(message, repeated, tag = "1")]
pub story_card_wrappers: ::prost::alloc::vec::Vec<StoryActualCardWrapper>,
}
impl ::prost::Name for StoryReply {
const NAME: &'static str = "StoryReply";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.StoryReply".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.StoryReply".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StoryReq {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(string, tag = "2")]
pub bvid: ::prost::alloc::string::String,
#[prost(message, optional, tag = "3")]
pub player_args: ::core::option::Option<
super::super::archive::middleware::v1::PlayerArgs,
>,
#[prost(int64, tag = "6")]
pub pull: i64,
#[prost(string, tag = "7")]
pub from: ::prost::alloc::string::String,
#[prost(string, tag = "8")]
pub spmid: ::prost::alloc::string::String,
#[prost(string, tag = "9")]
pub from_spmid: ::prost::alloc::string::String,
#[prost(oneof = "story_req::Param", tags = "4, 5")]
pub param: ::core::option::Option<story_req::Param>,
}
pub mod story_req {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Param {
#[prost(message, tag = "4")]
StoryReqParam(super::StoryReqParam),
#[prost(message, tag = "5")]
PlayListReqParam(super::PlayListReqParam),
}
}
impl ::prost::Name for StoryReq {
const NAME: &'static str = "StoryReq";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.StoryReq".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.StoryReq".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StoryReqParam {
#[prost(string, tag = "1")]
pub track_id: ::prost::alloc::string::String,
#[prost(int64, tag = "2")]
pub display_id: i64,
#[prost(map = "string, string", tag = "3")]
pub extra_content: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(bool, tag = "4")]
pub refresh: bool,
#[prost(map = "string, string", tag = "5")]
pub business_info: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
}
impl ::prost::Name for StoryReqParam {
const NAME: &'static str = "StoryReqParam";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.StoryReqParam".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.StoryReqParam".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StoryVideoCard {
#[prost(message, optional, tag = "1")]
pub play_data: ::core::option::Option<VideoPlayData>,
#[prost(message, optional, tag = "2")]
pub view_content: ::core::option::Option<ViewReply>,
#[prost(string, tag = "3")]
pub recommend_session_id: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub cover: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub track_id: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
pub goto: ::prost::alloc::string::String,
}
impl ::prost::Name for StoryVideoCard {
const NAME: &'static str = "StoryVideoCard";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.StoryVideoCard".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.StoryVideoCard".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Tab {
#[prost(message, repeated, tag = "1")]
pub tab_module: ::prost::alloc::vec::Vec<TabModule>,
#[prost(string, tag = "2")]
pub tab_bg: ::prost::alloc::string::String,
#[prost(message, optional, tag = "3")]
pub danmaku_entrance: ::core::option::Option<TabControl>,
#[prost(string, tag = "4")]
pub tab_bg_pad: ::prost::alloc::string::String,
}
impl ::prost::Name for Tab {
const NAME: &'static str = "Tab";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Tab".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Tab".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TabControl {
#[prost(bool, tag = "1")]
pub limit: bool,
#[prost(bool, tag = "2")]
pub disable: bool,
#[prost(string, tag = "3")]
pub disable_click_tip: ::prost::alloc::string::String,
}
impl ::prost::Name for TabControl {
const NAME: &'static str = "TabControl";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.TabControl".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.TabControl".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TabModule {
#[prost(enumeration = "TabType", tag = "1")]
pub tab_type: i32,
#[prost(oneof = "tab_module::Tab", tags = "2, 3, 4, 5")]
pub tab: ::core::option::Option<tab_module::Tab>,
}
pub mod tab_module {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Tab {
#[prost(message, tag = "2")]
Introduction(super::IntroductionTab),
#[prost(message, tag = "3")]
Reply(super::ReplyTab),
#[prost(message, tag = "4")]
ActivityTab(super::super::common::ActivityTab),
#[prost(message, tag = "5")]
Catalog(super::super::common::CatalogTab),
}
}
impl ::prost::Name for TabModule {
const NAME: &'static str = "TabModule";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.TabModule".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.TabModule".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Translation {
#[prost(int32, tag = "1")]
pub translation_status: i32,
#[prost(string, tag = "2")]
pub cur_language: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub arc_language: ::prost::alloc::string::String,
}
impl ::prost::Name for Translation {
const NAME: &'static str = "Translation";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.Translation".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.Translation".into()
}
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct UpperInfos {
#[prost(int64, tag = "1")]
pub fans_count: i64,
#[prost(int64, tag = "2")]
pub arc_count_last_half_year: i64,
#[prost(int64, tag = "3")]
pub first_up_dates: i64,
#[prost(int64, tag = "4")]
pub total_play_count: i64,
}
impl ::prost::Name for UpperInfos {
const NAME: &'static str = "UpperInfos";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.UpperInfos".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.UpperInfos".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VideoGuide {
#[prost(message, repeated, tag = "1")]
pub material: ::prost::alloc::vec::Vec<Material>,
#[prost(message, optional, tag = "2")]
pub video_point: ::core::option::Option<VideoViewPoint>,
#[prost(message, optional, tag = "3")]
pub contract_card: ::core::option::Option<ContractCard>,
#[prost(message, optional, tag = "4")]
pub right_material: ::core::option::Option<Material>,
}
impl ::prost::Name for VideoGuide {
const NAME: &'static str = "VideoGuide";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.VideoGuide".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.VideoGuide".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VideoPlayData {
#[prost(string, tag = "1")]
pub url: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub dimension: ::core::option::Option<super::super::super::playershared::Dimension>,
#[prost(int64, tag = "3")]
pub aid: i64,
#[prost(int64, tag = "4")]
pub ep_id: i64,
#[prost(int64, tag = "5")]
pub cid: i64,
}
impl ::prost::Name for VideoPlayData {
const NAME: &'static str = "VideoPlayData";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.VideoPlayData".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.VideoPlayData".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VideoPoint {
#[prost(int32, tag = "1")]
pub r#type: i32,
#[prost(int64, tag = "2")]
pub from: i64,
#[prost(int64, tag = "3")]
pub to: i64,
#[prost(string, tag = "4")]
pub content: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub cover: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
pub logo_url: ::prost::alloc::string::String,
#[prost(string, tag = "7")]
pub team_type: ::prost::alloc::string::String,
#[prost(string, tag = "8")]
pub team_name: ::prost::alloc::string::String,
}
impl ::prost::Name for VideoPoint {
const NAME: &'static str = "VideoPoint";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.VideoPoint".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.VideoPoint".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VideoShot {
#[prost(string, tag = "1")]
pub pv_data: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub img_x_len: i32,
#[prost(int32, tag = "3")]
pub img_y_len: i32,
#[prost(int32, tag = "4")]
pub img_x_size: i32,
#[prost(int32, tag = "5")]
pub img_y_size: i32,
#[prost(string, repeated, tag = "6")]
pub image: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
impl ::prost::Name for VideoShot {
const NAME: &'static str = "VideoShot";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.VideoShot".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.VideoShot".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VideoViewPoint {
#[prost(message, repeated, tag = "1")]
pub points: ::prost::alloc::vec::Vec<VideoPoint>,
#[prost(message, optional, tag = "2")]
pub point_material: ::core::option::Option<PointMaterial>,
#[prost(bool, tag = "3")]
pub point_permanent: bool,
}
impl ::prost::Name for VideoViewPoint {
const NAME: &'static str = "VideoViewPoint";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.VideoViewPoint".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.VideoViewPoint".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ViewBase {
#[prost(enumeration = "super::super::super::playershared::BizType", tag = "1")]
pub biz_type: i32,
#[prost(enumeration = "PageCategory", tag = "2")]
pub page_type: i32,
#[prost(message, optional, tag = "3")]
pub control: ::core::option::Option<PageControl>,
#[prost(message, optional, tag = "4")]
pub activity_resource: ::core::option::Option<ActivityResource>,
#[prost(message, optional, tag = "5")]
pub config: ::core::option::Option<Config>,
#[prost(message, optional, tag = "6")]
pub translation: ::core::option::Option<Translation>,
}
impl ::prost::Name for ViewBase {
const NAME: &'static str = "ViewBase";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ViewBase".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ViewBase".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ViewProgressReply {
#[prost(message, optional, tag = "1")]
pub video_guide: ::core::option::Option<VideoGuide>,
#[prost(message, optional, tag = "2")]
pub chronos: ::core::option::Option<Chronos>,
#[prost(message, optional, tag = "3")]
pub arc_shot: ::core::option::Option<VideoShot>,
#[prost(message, optional, tag = "4")]
pub dm: ::core::option::Option<DmResource>,
#[prost(message, optional, tag = "5")]
pub fragment_res: ::core::option::Option<FragmentRes>,
}
impl ::prost::Name for ViewProgressReply {
const NAME: &'static str = "ViewProgressReply";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ViewProgressReply".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ViewProgressReply".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ViewProgressReq {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(int64, tag = "2")]
pub cid: i64,
#[prost(int64, tag = "3")]
pub up_mid: i64,
#[prost(message, optional, tag = "4")]
pub chronos_param: ::core::option::Option<ChronosParam>,
#[prost(enumeration = "UnionType", tag = "5")]
pub r#type: i32,
#[prost(message, optional, tag = "6")]
pub fragment_param: ::core::option::Option<FragmentParam>,
#[prost(string, tag = "7")]
pub from_scene: ::prost::alloc::string::String,
#[prost(enumeration = "super::super::super::playershared::PlayCtrl", tag = "8")]
pub play_ctrl: i32,
}
impl ::prost::Name for ViewProgressReq {
const NAME: &'static str = "ViewProgressReq";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ViewProgressReq".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ViewProgressReq".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ViewReply {
#[prost(message, optional, tag = "1")]
pub view_base: ::core::option::Option<ViewBase>,
#[prost(message, optional, tag = "2")]
pub arc: ::core::option::Option<Arc>,
#[prost(message, optional, tag = "3")]
pub req_user: ::core::option::Option<ReqUser>,
#[prost(message, optional, tag = "4")]
pub owner: ::core::option::Option<super::common::Owner>,
#[prost(message, optional, tag = "5")]
pub tab: ::core::option::Option<Tab>,
#[prost(message, optional, tag = "6")]
pub supplement: ::core::option::Option<::prost_types::Any>,
#[prost(message, optional, tag = "7")]
pub cm: ::core::option::Option<Cm>,
#[prost(enumeration = "ECode", tag = "8")]
pub ecode: i32,
#[prost(message, optional, tag = "9")]
pub ecode_config: ::core::option::Option<ECodeConfig>,
#[prost(map = "string, string", tag = "10")]
pub report: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
}
impl ::prost::Name for ViewReply {
const NAME: &'static str = "ViewReply";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ViewReply".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ViewReply".into()
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ViewReq {
#[prost(int64, tag = "1")]
pub aid: i64,
#[prost(string, tag = "2")]
pub bvid: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub from: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub spmid: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub from_spmid: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
pub session_id: ::prost::alloc::string::String,
#[prost(message, optional, tag = "7")]
pub player_args: ::core::option::Option<
super::super::archive::middleware::v1::PlayerArgs,
>,
#[prost(string, tag = "8")]
pub track_id: ::prost::alloc::string::String,
#[prost(map = "string, string", tag = "9")]
pub extra_content: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, tag = "10")]
pub play_mode: ::prost::alloc::string::String,
#[prost(message, optional, tag = "11")]
pub relate: ::core::option::Option<Relate>,
#[prost(string, tag = "12")]
pub biz_extra: ::prost::alloc::string::String,
#[prost(string, tag = "13")]
pub ad_extra: ::prost::alloc::string::String,
#[prost(string, tag = "14")]
pub from_scene: ::prost::alloc::string::String,
#[prost(enumeration = "super::super::super::playershared::PlayCtrl", tag = "15")]
pub play_ctrl: i32,
}
impl ::prost::Name for ViewReq {
const NAME: &'static str = "ViewReq";
const PACKAGE: &'static str = "bilibili.app.viewunite.v1";
fn full_name() -> ::prost::alloc::string::String {
"bilibili.app.viewunite.v1.ViewReq".into()
}
fn type_url() -> ::prost::alloc::string::String {
"/bilibili.app.viewunite.v1.ViewReq".into()
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BizType {
None = 0,
FollowVideo = 1,
ReserveActivity = 2,
JumpLink = 3,
FavSeason = 4,
ReserveGame = 5,
GiftGame = 6,
}
impl BizType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::None => "BizTypeNone",
Self::FollowVideo => "BizTypeFollowVideo",
Self::ReserveActivity => "BizTypeReserveActivity",
Self::JumpLink => "BizTypeJumpLink",
Self::FavSeason => "BizTypeFavSeason",
Self::ReserveGame => "BizTypeReserveGame",
Self::GiftGame => "BizTypeGiftGame",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"BizTypeNone" => Some(Self::None),
"BizTypeFollowVideo" => Some(Self::FollowVideo),
"BizTypeReserveActivity" => Some(Self::ReserveActivity),
"BizTypeJumpLink" => Some(Self::JumpLink),
"BizTypeFavSeason" => Some(Self::FavSeason),
"BizTypeReserveGame" => Some(Self::ReserveGame),
"BizTypeGiftGame" => Some(Self::GiftGame),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CacheCode {
Play = 0,
UpowerstateInactive = 100,
RepeatLastOperation = 101,
}
impl CacheCode {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Play => "PLAY",
Self::UpowerstateInactive => "UPOWERSTATE_INACTIVE",
Self::RepeatLastOperation => "REPEAT_LAST_OPERATION",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"PLAY" => Some(Self::Play),
"UPOWERSTATE_INACTIVE" => Some(Self::UpowerstateInactive),
"REPEAT_LAST_OPERATION" => Some(Self::RepeatLastOperation),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ECode {
CodeDefault = 0,
Code404 = 1,
CodeArcPrivacy = 2,
CodeTeenager = 78301,
}
impl ECode {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::CodeDefault => "CODE_DEFAULT",
Self::Code404 => "CODE_404",
Self::CodeArcPrivacy => "CODE_ARC_PRIVACY",
Self::CodeTeenager => "CODE_TEENAGER",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"CODE_DEFAULT" => Some(Self::CodeDefault),
"CODE_404" => Some(Self::Code404),
"CODE_ARC_PRIVACY" => Some(Self::CodeArcPrivacy),
"CODE_TEENAGER" => Some(Self::CodeTeenager),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum JumpShowType {
JstDefault = 0,
JstFullscreen = 1,
JstHalfscreen = 2,
}
impl JumpShowType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::JstDefault => "JST_DEFAULT",
Self::JstFullscreen => "JST_FULLSCREEN",
Self::JstHalfscreen => "JST_HALFSCREEN",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"JST_DEFAULT" => Some(Self::JstDefault),
"JST_FULLSCREEN" => Some(Self::JstFullscreen),
"JST_HALFSCREEN" => Some(Self::JstHalfscreen),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MaterialBizType {
None = 0,
Activity = 1,
Bgm = 2,
Effect = 3,
ShootSame = 4,
ShootTogether = 5,
ActivityIcon = 6,
NewBgm = 7,
GeneralType = 8,
}
impl MaterialBizType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::None => "NONE",
Self::Activity => "ACTIVITY",
Self::Bgm => "BGM",
Self::Effect => "EFFECT",
Self::ShootSame => "SHOOT_SAME",
Self::ShootTogether => "SHOOT_TOGETHER",
Self::ActivityIcon => "ACTIVITY_ICON",
Self::NewBgm => "NEW_BGM",
Self::GeneralType => "GENERAL_TYPE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"NONE" => Some(Self::None),
"ACTIVITY" => Some(Self::Activity),
"BGM" => Some(Self::Bgm),
"EFFECT" => Some(Self::Effect),
"SHOOT_SAME" => Some(Self::ShootSame),
"SHOOT_TOGETHER" => Some(Self::ShootTogether),
"ACTIVITY_ICON" => Some(Self::ActivityIcon),
"NEW_BGM" => Some(Self::NewBgm),
"GENERAL_TYPE" => Some(Self::GeneralType),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MaterialSource {
Default = 0,
Bijian = 1,
}
impl MaterialSource {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Default => "DEFAULT",
Self::Bijian => "BIJIAN",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"DEFAULT" => Some(Self::Default),
"BIJIAN" => Some(Self::Bijian),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PageCategory {
CommonPage = 0,
ActivityPage = 1,
}
impl PageCategory {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::CommonPage => "COMMON_PAGE",
Self::ActivityPage => "ACTIVITY_PAGE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"COMMON_PAGE" => Some(Self::CommonPage),
"ACTIVITY_PAGE" => Some(Self::ActivityPage),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PageType {
H5 = 0,
Na = 1,
}
impl PageType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::H5 => "H5",
Self::Na => "NA",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"H5" => Some(Self::H5),
"NA" => Some(Self::Na),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PlayToastEnum {
PlaytoastUnknown = 0,
PlaytoastChargingplus = 1,
}
impl PlayToastEnum {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::PlaytoastUnknown => "PLAYTOAST_UNKNOWN",
Self::PlaytoastChargingplus => "PLAYTOAST_CHARGINGPLUS",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"PLAYTOAST_UNKNOWN" => Some(Self::PlaytoastUnknown),
"PLAYTOAST_CHARGINGPLUS" => Some(Self::PlaytoastChargingplus),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum SourceContentType {
ScDefault = 0,
ScAv = 1,
ScLive = 2,
}
impl SourceContentType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::ScDefault => "SC_DEFAULT",
Self::ScAv => "SC_AV",
Self::ScLive => "SC_LIVE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"SC_DEFAULT" => Some(Self::ScDefault),
"SC_AV" => Some(Self::ScAv),
"SC_LIVE" => Some(Self::ScLive),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum TabType {
TabNone = 0,
TabIntroduction = 1,
TabReply = 2,
TabOgvActivity = 3,
TabCatalog = 4,
}
impl TabType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::TabNone => "TAB_NONE",
Self::TabIntroduction => "TAB_INTRODUCTION",
Self::TabReply => "TAB_REPLY",
Self::TabOgvActivity => "TAB_OGV_ACTIVITY",
Self::TabCatalog => "TAB_CATALOG",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"TAB_NONE" => Some(Self::TabNone),
"TAB_INTRODUCTION" => Some(Self::TabIntroduction),
"TAB_REPLY" => Some(Self::TabReply),
"TAB_OGV_ACTIVITY" => Some(Self::TabOgvActivity),
"TAB_CATALOG" => Some(Self::TabCatalog),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum UnionType {
Ugc = 0,
Ogv = 1,
Pugv = 2,
}
impl UnionType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Ugc => "UGC",
Self::Ogv => "OGV",
Self::Pugv => "PUGV",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"UGC" => Some(Self::Ugc),
"OGV" => Some(Self::Ogv),
"PUGV" => Some(Self::Pugv),
_ => None,
}
}
}
#[cfg(feature = "feat-enable-generated-client")]
pub mod view_client {
#![allow(
unused_variables,
dead_code,
missing_docs,
clippy::wildcard_imports,
clippy::let_unit_value,
)]
use tonic::codegen::*;
use tonic::codegen::http::Uri;
#[derive(Debug, Clone)]
pub struct ViewClient<T> {
inner: tonic::client::Grpc<T>,
}
impl<T> ViewClient<T>
where
T: tonic::client::GrpcService<tonic::body::Body>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_origin(inner: T, origin: Uri) -> Self {
let inner = tonic::client::Grpc::with_origin(inner, origin);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> ViewClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::Body>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::Body>,
>>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
{
ViewClient::new(InterceptedService::new(inner, interceptor))
}
#[must_use]
pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
self.inner = self.inner.send_compressed(encoding);
self
}
#[must_use]
pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
self.inner = self.inner.accept_compressed(encoding);
self
}
#[must_use]
pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
self.inner = self.inner.max_decoding_message_size(limit);
self
}
#[must_use]
pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
self.inner = self.inner.max_encoding_message_size(limit);
self
}
pub async fn arc_refresh(
&mut self,
request: impl tonic::IntoRequest<super::ArcRefreshReq>,
) -> std::result::Result<
tonic::Response<super::ArcRefreshReply>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/bilibili.app.viewunite.v1.View/ArcRefresh",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(GrpcMethod::new("bilibili.app.viewunite.v1.View", "ArcRefresh"));
self.inner.unary(req, path, codec).await
}
pub async fn cache_authentication(
&mut self,
request: impl tonic::IntoRequest<super::CacheAuthenticationReq>,
) -> std::result::Result<
tonic::Response<super::CacheAuthenticationReply>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/bilibili.app.viewunite.v1.View/CacheAuthentication",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"bilibili.app.viewunite.v1.View",
"CacheAuthentication",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn floor_ad_search(
&mut self,
request: impl tonic::IntoRequest<super::FloorAdSearchReq>,
) -> std::result::Result<
tonic::Response<super::FloorAdSearchReply>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/bilibili.app.viewunite.v1.View/FloorAdSearch",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new("bilibili.app.viewunite.v1.View", "FloorAdSearch"),
);
self.inner.unary(req, path, codec).await
}
pub async fn relates_feed(
&mut self,
request: impl tonic::IntoRequest<super::RelatesFeedReq>,
) -> std::result::Result<
tonic::Response<super::RelatesFeedReply>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/bilibili.app.viewunite.v1.View/RelatesFeed",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new("bilibili.app.viewunite.v1.View", "RelatesFeed"),
);
self.inner.unary(req, path, codec).await
}
pub async fn story(
&mut self,
request: impl tonic::IntoRequest<super::StoryReq>,
) -> std::result::Result<tonic::Response<super::StoryReply>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/bilibili.app.viewunite.v1.View/Story",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(GrpcMethod::new("bilibili.app.viewunite.v1.View", "Story"));
self.inner.unary(req, path, codec).await
}
pub async fn view(
&mut self,
request: impl tonic::IntoRequest<super::ViewReq>,
) -> std::result::Result<tonic::Response<super::ViewReply>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/bilibili.app.viewunite.v1.View/View",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(GrpcMethod::new("bilibili.app.viewunite.v1.View", "View"));
self.inner.unary(req, path, codec).await
}
pub async fn view_progress(
&mut self,
request: impl tonic::IntoRequest<super::ViewProgressReq>,
) -> std::result::Result<
tonic::Response<super::ViewProgressReply>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/bilibili.app.viewunite.v1.View/ViewProgress",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new("bilibili.app.viewunite.v1.View", "ViewProgress"),
);
self.inner.unary(req, path, codec).await
}
}
}
#[cfg(feature = "feat-enable-generated-server")]
pub mod view_server {
#![allow(
unused_variables,
dead_code,
missing_docs,
clippy::wildcard_imports,
clippy::let_unit_value,
)]
use tonic::codegen::*;
#[async_trait]
pub trait View: std::marker::Send + std::marker::Sync + 'static {
async fn arc_refresh(
&self,
request: tonic::Request<super::ArcRefreshReq>,
) -> std::result::Result<tonic::Response<super::ArcRefreshReply>, tonic::Status>;
async fn cache_authentication(
&self,
request: tonic::Request<super::CacheAuthenticationReq>,
) -> std::result::Result<
tonic::Response<super::CacheAuthenticationReply>,
tonic::Status,
>;
async fn floor_ad_search(
&self,
request: tonic::Request<super::FloorAdSearchReq>,
) -> std::result::Result<
tonic::Response<super::FloorAdSearchReply>,
tonic::Status,
>;
async fn relates_feed(
&self,
request: tonic::Request<super::RelatesFeedReq>,
) -> std::result::Result<
tonic::Response<super::RelatesFeedReply>,
tonic::Status,
>;
async fn story(
&self,
request: tonic::Request<super::StoryReq>,
) -> std::result::Result<tonic::Response<super::StoryReply>, tonic::Status>;
async fn view(
&self,
request: tonic::Request<super::ViewReq>,
) -> std::result::Result<tonic::Response<super::ViewReply>, tonic::Status>;
async fn view_progress(
&self,
request: tonic::Request<super::ViewProgressReq>,
) -> std::result::Result<
tonic::Response<super::ViewProgressReply>,
tonic::Status,
>;
}
#[derive(Debug)]
pub struct ViewServer<T> {
inner: Arc<T>,
accept_compression_encodings: EnabledCompressionEncodings,
send_compression_encodings: EnabledCompressionEncodings,
max_decoding_message_size: Option<usize>,
max_encoding_message_size: Option<usize>,
}
impl<T> ViewServer<T> {
pub fn new(inner: T) -> Self {
Self::from_arc(Arc::new(inner))
}
pub fn from_arc(inner: Arc<T>) -> Self {
Self {
inner,
accept_compression_encodings: Default::default(),
send_compression_encodings: Default::default(),
max_decoding_message_size: None,
max_encoding_message_size: None,
}
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> InterceptedService<Self, F>
where
F: tonic::service::Interceptor,
{
InterceptedService::new(Self::new(inner), interceptor)
}
#[must_use]
pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
self.accept_compression_encodings.enable(encoding);
self
}
#[must_use]
pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
self.send_compression_encodings.enable(encoding);
self
}
#[must_use]
pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
self.max_decoding_message_size = Some(limit);
self
}
#[must_use]
pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
self.max_encoding_message_size = Some(limit);
self
}
}
impl<T, B> tonic::codegen::Service<http::Request<B>> for ViewServer<T>
where
T: View,
B: Body + std::marker::Send + 'static,
B::Error: Into<StdError> + std::marker::Send + 'static,
{
type Response = http::Response<tonic::body::Body>;
type Error = std::convert::Infallible;
type Future = BoxFuture<Self::Response, Self::Error>;
fn poll_ready(
&mut self,
_cx: &mut Context<'_>,
) -> Poll<std::result::Result<(), Self::Error>> {
Poll::Ready(Ok(()))
}
fn call(&mut self, req: http::Request<B>) -> Self::Future {
match req.uri().path() {
"/bilibili.app.viewunite.v1.View/ArcRefresh" => {
#[allow(non_camel_case_types)]
struct ArcRefreshSvc<T: View>(pub Arc<T>);
impl<T: View> tonic::server::UnaryService<super::ArcRefreshReq>
for ArcRefreshSvc<T> {
type Response = super::ArcRefreshReply;
type Future = BoxFuture<
tonic::Response<Self::Response>,
tonic::Status,
>;
fn call(
&mut self,
request: tonic::Request<super::ArcRefreshReq>,
) -> Self::Future {
let inner = Arc::clone(&self.0);
let fut = async move {
<T as View>::arc_refresh(&inner, request).await
};
Box::pin(fut)
}
}
let accept_compression_encodings = self.accept_compression_encodings;
let send_compression_encodings = self.send_compression_encodings;
let max_decoding_message_size = self.max_decoding_message_size;
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
let method = ArcRefreshSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
.apply_compression_config(
accept_compression_encodings,
send_compression_encodings,
)
.apply_max_message_size_config(
max_decoding_message_size,
max_encoding_message_size,
);
let res = grpc.unary(method, req).await;
Ok(res)
};
Box::pin(fut)
}
"/bilibili.app.viewunite.v1.View/CacheAuthentication" => {
#[allow(non_camel_case_types)]
struct CacheAuthenticationSvc<T: View>(pub Arc<T>);
impl<
T: View,
> tonic::server::UnaryService<super::CacheAuthenticationReq>
for CacheAuthenticationSvc<T> {
type Response = super::CacheAuthenticationReply;
type Future = BoxFuture<
tonic::Response<Self::Response>,
tonic::Status,
>;
fn call(
&mut self,
request: tonic::Request<super::CacheAuthenticationReq>,
) -> Self::Future {
let inner = Arc::clone(&self.0);
let fut = async move {
<T as View>::cache_authentication(&inner, request).await
};
Box::pin(fut)
}
}
let accept_compression_encodings = self.accept_compression_encodings;
let send_compression_encodings = self.send_compression_encodings;
let max_decoding_message_size = self.max_decoding_message_size;
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
let method = CacheAuthenticationSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
.apply_compression_config(
accept_compression_encodings,
send_compression_encodings,
)
.apply_max_message_size_config(
max_decoding_message_size,
max_encoding_message_size,
);
let res = grpc.unary(method, req).await;
Ok(res)
};
Box::pin(fut)
}
"/bilibili.app.viewunite.v1.View/FloorAdSearch" => {
#[allow(non_camel_case_types)]
struct FloorAdSearchSvc<T: View>(pub Arc<T>);
impl<T: View> tonic::server::UnaryService<super::FloorAdSearchReq>
for FloorAdSearchSvc<T> {
type Response = super::FloorAdSearchReply;
type Future = BoxFuture<
tonic::Response<Self::Response>,
tonic::Status,
>;
fn call(
&mut self,
request: tonic::Request<super::FloorAdSearchReq>,
) -> Self::Future {
let inner = Arc::clone(&self.0);
let fut = async move {
<T as View>::floor_ad_search(&inner, request).await
};
Box::pin(fut)
}
}
let accept_compression_encodings = self.accept_compression_encodings;
let send_compression_encodings = self.send_compression_encodings;
let max_decoding_message_size = self.max_decoding_message_size;
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
let method = FloorAdSearchSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
.apply_compression_config(
accept_compression_encodings,
send_compression_encodings,
)
.apply_max_message_size_config(
max_decoding_message_size,
max_encoding_message_size,
);
let res = grpc.unary(method, req).await;
Ok(res)
};
Box::pin(fut)
}
"/bilibili.app.viewunite.v1.View/RelatesFeed" => {
#[allow(non_camel_case_types)]
struct RelatesFeedSvc<T: View>(pub Arc<T>);
impl<T: View> tonic::server::UnaryService<super::RelatesFeedReq>
for RelatesFeedSvc<T> {
type Response = super::RelatesFeedReply;
type Future = BoxFuture<
tonic::Response<Self::Response>,
tonic::Status,
>;
fn call(
&mut self,
request: tonic::Request<super::RelatesFeedReq>,
) -> Self::Future {
let inner = Arc::clone(&self.0);
let fut = async move {
<T as View>::relates_feed(&inner, request).await
};
Box::pin(fut)
}
}
let accept_compression_encodings = self.accept_compression_encodings;
let send_compression_encodings = self.send_compression_encodings;
let max_decoding_message_size = self.max_decoding_message_size;
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
let method = RelatesFeedSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
.apply_compression_config(
accept_compression_encodings,
send_compression_encodings,
)
.apply_max_message_size_config(
max_decoding_message_size,
max_encoding_message_size,
);
let res = grpc.unary(method, req).await;
Ok(res)
};
Box::pin(fut)
}
"/bilibili.app.viewunite.v1.View/Story" => {
#[allow(non_camel_case_types)]
struct StorySvc<T: View>(pub Arc<T>);
impl<T: View> tonic::server::UnaryService<super::StoryReq>
for StorySvc<T> {
type Response = super::StoryReply;
type Future = BoxFuture<
tonic::Response<Self::Response>,
tonic::Status,
>;
fn call(
&mut self,
request: tonic::Request<super::StoryReq>,
) -> Self::Future {
let inner = Arc::clone(&self.0);
let fut = async move {
<T as View>::story(&inner, request).await
};
Box::pin(fut)
}
}
let accept_compression_encodings = self.accept_compression_encodings;
let send_compression_encodings = self.send_compression_encodings;
let max_decoding_message_size = self.max_decoding_message_size;
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
let method = StorySvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
.apply_compression_config(
accept_compression_encodings,
send_compression_encodings,
)
.apply_max_message_size_config(
max_decoding_message_size,
max_encoding_message_size,
);
let res = grpc.unary(method, req).await;
Ok(res)
};
Box::pin(fut)
}
"/bilibili.app.viewunite.v1.View/View" => {
#[allow(non_camel_case_types)]
struct ViewSvc<T: View>(pub Arc<T>);
impl<T: View> tonic::server::UnaryService<super::ViewReq>
for ViewSvc<T> {
type Response = super::ViewReply;
type Future = BoxFuture<
tonic::Response<Self::Response>,
tonic::Status,
>;
fn call(
&mut self,
request: tonic::Request<super::ViewReq>,
) -> Self::Future {
let inner = Arc::clone(&self.0);
let fut = async move {
<T as View>::view(&inner, request).await
};
Box::pin(fut)
}
}
let accept_compression_encodings = self.accept_compression_encodings;
let send_compression_encodings = self.send_compression_encodings;
let max_decoding_message_size = self.max_decoding_message_size;
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
let method = ViewSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
.apply_compression_config(
accept_compression_encodings,
send_compression_encodings,
)
.apply_max_message_size_config(
max_decoding_message_size,
max_encoding_message_size,
);
let res = grpc.unary(method, req).await;
Ok(res)
};
Box::pin(fut)
}
"/bilibili.app.viewunite.v1.View/ViewProgress" => {
#[allow(non_camel_case_types)]
struct ViewProgressSvc<T: View>(pub Arc<T>);
impl<T: View> tonic::server::UnaryService<super::ViewProgressReq>
for ViewProgressSvc<T> {
type Response = super::ViewProgressReply;
type Future = BoxFuture<
tonic::Response<Self::Response>,
tonic::Status,
>;
fn call(
&mut self,
request: tonic::Request<super::ViewProgressReq>,
) -> Self::Future {
let inner = Arc::clone(&self.0);
let fut = async move {
<T as View>::view_progress(&inner, request).await
};
Box::pin(fut)
}
}
let accept_compression_encodings = self.accept_compression_encodings;
let send_compression_encodings = self.send_compression_encodings;
let max_decoding_message_size = self.max_decoding_message_size;
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
let method = ViewProgressSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
.apply_compression_config(
accept_compression_encodings,
send_compression_encodings,
)
.apply_max_message_size_config(
max_decoding_message_size,
max_encoding_message_size,
);
let res = grpc.unary(method, req).await;
Ok(res)
};
Box::pin(fut)
}
_ => {
Box::pin(async move {
let mut response = http::Response::new(
tonic::body::Body::default(),
);
let headers = response.headers_mut();
headers
.insert(
tonic::Status::GRPC_STATUS,
(tonic::Code::Unimplemented as i32).into(),
);
headers
.insert(
http::header::CONTENT_TYPE,
tonic::metadata::GRPC_CONTENT_TYPE,
);
Ok(response)
})
}
}
}
}
impl<T> Clone for ViewServer<T> {
fn clone(&self) -> Self {
let inner = self.inner.clone();
Self {
inner,
accept_compression_encodings: self.accept_compression_encodings,
send_compression_encodings: self.send_compression_encodings,
max_decoding_message_size: self.max_decoding_message_size,
max_encoding_message_size: self.max_encoding_message_size,
}
}
}
pub const SERVICE_NAME: &str = "bilibili.app.viewunite.v1.View";
impl<T> tonic::server::NamedService for ViewServer<T> {
const NAME: &'static str = SERVICE_NAME;
}
}