From 271c2b26d8f553a00934e2ac7a32706e37cbddb7 Mon Sep 17 00:00:00 2001 From: Valentin Haudiquet Date: Fri, 6 Mar 2026 23:33:02 +0100 Subject: [PATCH] Multiple changes - backend: add summoner spells - backend: add build variants - backend: builds are now storing full tree with runes (keystones) - backend: build trees are split on starter items and merged on runes - frontend: computing core tree now - frontend: variant selectors --- frontend/components/ChampionTitle.vue | 26 +- .../components/{build => }/SummonerSpells.vue | 40 +- .../components/build/BuildVariantSelector.vue | 8 +- .../components/build/CompactRuneSelector.vue | 33 +- frontend/components/build/Viewer.vue | 114 +++-- frontend/components/nav/SideBar.vue | 2 +- frontend/composables/useBuilds.ts | 15 +- frontend/composables/useRuneStyles.ts | 75 +--- frontend/pages/champion/[alias].vue | 86 +++- frontend/types/api.ts | 22 +- frontend/utils/buildHelpers.ts | 113 +++-- frontend/utils/mockData.ts | 11 - match_collector/champion_stat.ts | 417 ++++++++++++++---- match_collector/item_tree.ts | 95 +++- 14 files changed, 684 insertions(+), 373 deletions(-) rename frontend/components/{build => }/SummonerSpells.vue (67%) delete mode 100644 frontend/utils/mockData.ts diff --git a/frontend/components/ChampionTitle.vue b/frontend/components/ChampionTitle.vue index 1f3fa53..3be4cfb 100644 --- a/frontend/components/ChampionTitle.vue +++ b/frontend/components/ChampionTitle.vue @@ -41,8 +41,8 @@ const championDescription = computed(() => championData.value?.title || '')
-

{{ championName }}

-

{{ championDescription }}

+

{{ championName }}

+

{{ championDescription }}

-

{{ winrate }}% win.

-

{{ pickrate }}% pick.

-

{{ gameCount }} games

+

{{ winrate }}% win.

+

+ {{ pickrate }}% pick. +

+

{{ gameCount }} games

@@ -68,15 +70,15 @@ const championDescription = computed(() => championData.value?.title || '') diff --git a/frontend/components/build/BuildVariantSelector.vue b/frontend/components/build/BuildVariantSelector.vue index acd519c..264b65f 100644 --- a/frontend/components/build/BuildVariantSelector.vue +++ b/frontend/components/build/BuildVariantSelector.vue @@ -7,12 +7,18 @@ const props = defineProps<{ keystore: Map itemMap: Map pickrate: number + selected: boolean + index: number +}>() + +const emit = defineEmits<{ + select: [index: number] }>()