syntax = "proto3";

package bilibili.app.dynamic.v2;

option java_multiple_files = true;

import "bilibili/app/archive/middleware/v1/preload.proto";
import "bilibili/pagination/pagination.proto";
import "bilibili/app/dynamic/common/dynamic.proto";
import "bilibili/app/dynamic/v2/dynamic.proto";

service Campus {
  //
  //rpc WaterFlowRcmd (WaterFlowRcmdReq) returns (WaterFlowRcmdResp);
}

//
message CampusWaterFlowItem {
  //
  int32 item_type = 1;
  //
  bilibili.app.dynamic.common.ItemWHRatio wh_ratio = 2;
  //
  oneof item {
    WFItemDefault item_default = 3;
  }
}

//
message WaterFlowRcmdReq {
  //
  int64 campus_id = 1;
  //
  int32 page = 2;
  //
  bilibili.app.archive.middleware.v1.PlayerArgs player_args = 3;
  //
  //CampusRcmdReqFrom from = 4;
}

//
message WaterFlowRcmdResp {
  //
  repeated CampusWaterFlowItem items = 1;
  //
  bilibili.pagination.FeedPaginationReply offset = 2;
}

//
message WFItemDefault {
  //
  string title = 1;
  //
  string cover = 2;
  //
  //CoverIconWithText bottom_left_1 = 3;
  //
  //CoverIconWithText bottom_left_2 = 4;
  //
  //CoverIconWithText bottom_right_1 = 5;
  //
  string uri = 6;
  //
  //RcmdReason rcmd_reason = 7;
  //
  map<string, string> annotations = 8;
}