move storage and api to apps, create base analyzer

This commit is contained in:
2024-05-10 06:08:25 +02:00
parent 987339f517
commit 2e56c7105b
42 changed files with 403 additions and 48 deletions
+20
View File
@@ -0,0 +1,20 @@
defmodule LoLAPI.Model.Info do
alias LoLAPI.Model.Participant
defstruct endOfGameResult: "",
gameCreation: "",
gameDuration: "",
gameEndTimestamp: "",
gameId: "",
gameMode: "",
gameName: "",
gameStartTimestamp: "",
gameType: "",
gameVersion: "",
mapId: "",
participants: [%Participant{}],
platformId: "",
queueId: "",
teams: "",
tournamentCode: ""
end
@@ -0,0 +1,6 @@
defmodule LoLAPI.Model.MatchResponse do
alias LoLAPI.Model.{Info, Metadata}
defstruct metadata: %Metadata{},
info: %Info{}
end
+3
View File
@@ -0,0 +1,3 @@
defmodule LoLAPI.Model.Metadata do
defstruct [:dataVersion, :matchId, :participants]
end
+135
View File
@@ -0,0 +1,135 @@
defmodule LoLAPI.Model.Participant do
# Enum.map(participant, fn {k,_v} -> ":#{k}" end) |> Enum.join(", ")
defstruct [
:onMyWayPings,
:totalDamageDealt,
:summoner1Casts,
:totalEnemyJungleMinionsKilled,
:summoner2Casts,
:totalTimeCCDealt,
:eligibleForProgression,
:enemyVisionPings,
:assists,
:teamPosition,
:objectivesStolenAssists,
:perks,
:spell3Casts,
:totalHeal,
:doubleKills,
:missions,
:physicalDamageDealt,
:summonerName,
:champExperience,
:quadraKills,
:neutralMinionsKilled,
:basicPings,
:pushPings,
:playerAugment2,
:wardsPlaced,
:individualPosition,
:damageSelfMitigated,
:dangerPings,
:largestMultiKill,
:puuid,
:subteamPlacement,
:turretsLost,
:role,
:visionClearedPings,
:goldSpent,
:inhibitorTakedowns,
:summoner2Id,
:trueDamageDealtToChampions,
:needVisionPings,
:champLevel,
:championTransform,
:bountyLevel,
:teamEarlySurrendered,
:championName,
:largestKillingSpree,
:gameEndedInSurrender,
:summoner1Id,
:getBackPings,
:nexusKills,
:baronKills,
:item6,
:firstTowerKill,
:summonerLevel,
:damageDealtToTurrets,
:commandPings,
:totalHealsOnTeammates,
:turretTakedowns,
:playerSubteamId,
:longestTimeSpentLiving,
:item0,
:summonerId,
:assistMePings,
:wardsKilled,
:physicalDamageTaken,
:magicDamageDealt,
:timePlayed,
:item2,
:firstBloodKill,
:goldEarned,
:magicDamageDealtToChampions,
:item1,
:nexusLost,
:itemsPurchased,
:tripleKills,
:sightWardsBoughtInGame,
:placement,
:consumablesPurchased,
:item5,
:totalDamageTaken,
:item4,
:playerAugment4,
:physicalDamageDealtToChampions,
:spell1Casts,
:totalTimeSpentDead,
:nexusTakedowns,
:gameEndedInEarlySurrender,
:dragonKills,
:totalAllyJungleMinionsKilled,
:killingSprees,
:detectorWardsPlaced,
:trueDamageDealt,
:damageDealtToObjectives,
:damageDealtToBuildings,
:totalDamageDealtToChampions,
:lane,
:totalMinionsKilled,
:playerAugment3,
:spell2Casts,
:pentaKills,
:firstTowerAssist,
:enemyMissingPings,
:turretKills,
:championId,
:trueDamageTaken,
:deaths,
:win,
:magicDamageTaken,
:item3,
:riotIdGameName,
:firstBloodAssist,
:profileIcon,
:inhibitorsLost,
:visionScore,
:playerAugment1,
:allInPings,
:largestCriticalStrike,
:inhibitorKills,
:riotIdTagline,
:unrealKills,
:totalDamageShieldedOnTeammates,
:visionWardsBoughtInGame,
:holdPings,
:participantId,
:kills,
:challenges,
:objectivesStolen,
:spell4Casts,
:totalUnitsHealed,
:teamId,
:timeCCingOthers
]
end