syntax = "proto3";

package bilibili.app.archive.v1;

option java_multiple_files = true;

// 稿件基本信息
message Arc {
  // 稿件avid
  int64 aid = 1;
  // 稿件分P数
  int64 videos = 2;
  // 分区id
  int32 type_id = 3;
  // 二级分区名
  string type_name = 4;
  // 稿件类型
  // 1:原创 2:转载
  int32 copyright = 5;
  // 稿件封面url
  string pic = 6;
  // 稿件标题
  string title = 7;
  // 稿件发布时间
  int64 pubdate = 8;
  // 用户投稿时间
  int64 ctime = 9;
  // 稿件简介
  string desc = 10;
  // 稿件状态
  int32 state = 11;
  // 访问属性
  // 0:全部可见 10000:登录可见
  int32 access = 12;
  // 属性位配置(现在无了)
  int32 attribute = 13;
  // 空
  string tag = 14;
  // 空
  repeated string tags = 15;
  // 稿件总时长(单位为秒)
  int64 duration = 16;
  // 参与的活动id
  int64 mission_id = 17;
  // 绑定的商单id
  int64 order_id = 18;
  // PGC稿件强制重定向url(如番剧、影视)
  string redirect_url = 19;
  // 空
  int64 forward = 20;
  // 控制标志
  Rights rights = 21;
  // UP主信息
  Author author = 22;
  // 状态数
  Stat stat = 23;
  // 空
  string report_result = 24;
  // 投稿时发送的动态内容
  string dynamic = 25;
  // 稿件1P cid
  int64 first_cid = 26;
  // 稿件1P 分辨率
  Dimension dimension = 27;
  // 合作组成员列表
  repeated StaffInfo staff_info = 28;
  // UGC合集id
  int64 season_id = 29;
  // 新版属性位配置(也没用)
  int64 attribute_v2 = 30;
  //
  SeasonTheme season_theme = 31;
  //
  string short_link_v2 = 40;
  //
  int32 up_from_v2 = 41;
  //
  string first_frame = 42;
}

// UP主信息
message Author {
  // UP主mid
  int64 mid = 1;
  // UP主昵称
  string name = 2;
  // UP主头像url
  string face = 3;
}

// 分辨率
message Dimension {
  // 宽度
  int64 width = 1;
  // 高度
  int64 height = 2;
  // 方向
  // 0:横屏 1:竖屏
  int64 rotate = 3;
}

// 分P信息
message Page {
  // 视频cid
  int64 cid = 1;
  // 分P序号
  int32 page = 2;
  // 源类型
  // vupload:B站 qq:腾讯 hunan:芒果
  string from = 3;
  // 分P标题
  string part = 4;
  // 分P时长(单位为秒)
  int64 duration = 5;
  // 外链vid
  string vid = 6;
  // 分P简介
  string desc = 7;
  // 外链url
  string webLink = 8;
  // 分P分辨率
  Dimension dimension = 9;
  //
  string first_frame = 10;
}

// 稿件控制标志
message Rights {
  // 老版是否付费
  int32 bp = 1;
  // 允许充电
  int32 elec = 2;
  // 允许下载
  int32 download = 3;
  // 是否电影
  int32 movie = 4;
  // PGC稿件需要付费
  int32 pay = 5;
  // 是否高码率
  int32 hd5 = 6;
  // 是否显示“禁止转载”标志
  int32 no_reprint = 7;
  // 是否允许自动播放
  int32 autoplay = 8;
  // UGC稿件需要付费(旧版)
  int32 ugc_pay = 9;
  // 是否联合投稿
  int32 is_cooperation = 10;
  // 是否UGC付费预览
  int32 ugc_pay_preview = 11;
  // 是否禁止后台播放
  int32 no_background = 12;
  // UGC稿件需要付费
  int32 arc_pay = 13;
  // 是否已付费可自由观看
  int32 pay_free_watch = 14;
}

//
message SeasonTheme {
  //
  string bg_color = 1;
  //
  string selected_bg_color = 2;
  //
  string text_color = 3;
}

// 合作成员信息
message StaffInfo {
  // 成员mid
  int64 mid = 1;
  // 成员角色
  string title = 2;
  // 属性位
  // 0:普通 1:赞助商金色标志
  int64 attribute = 3;
}

// 状态数
message Stat {
  // 稿件avid
  int64 aid = 1;
  // 播放数(当屏蔽时为-1)
  int32 view = 2;
  // 弹幕数
  int32 danmaku = 3;
  // 评论数
  int32 reply = 4;
  // 收藏数
  int32 fav = 5;
  // 投币数
  int32 coin = 6;
  // 分享数
  int32 share = 7;
  // 当前排名
  int32 now_rank = 8;
  // 历史最高排名
  int32 his_rank = 9;
  // 点赞数
  int32 like = 10;
  // 点踩数(前端不可见故恒为0)
  int32 dislike = 11;
}