Added more data and options to models

This commit is contained in:
Alexis
2024-04-14 20:53:21 +02:00
parent 3d252d39c8
commit 37bb063a61
5 changed files with 162 additions and 36 deletions

View File

@@ -19,7 +19,7 @@ defineProps<{
'text-white bg-lime-600 hover:bg-lime-700': event.category === 'naissance',
'text-white bg-stone-500 hover:bg-stone-700': event.category === 'mort',
'text-white bg-orange-600 hover:bg-orange-700': event.category === 'catastrophe',
'text-white bg-pink-600 hover:bg-pink-700': event.category === 'catastrophe-naturel',
'text-white bg-pink-600 hover:bg-pink-700': event.category === 'catastrophe-naturelle',
'text-white bg-sky-600 hover:bg-sky-700': event.category === 'législation',
'text-white bg-purple-600 hover:bg-purple-700': event.category === 'religion',
'text-white bg-emerald-600 hover:bg-emerald-700': event.category === 'joueurs',

View File

@@ -6,7 +6,7 @@ import { useCalendar } from '@/stores/CalendarStore'
import { computed } from 'vue'
import type { SearchMode } from '../../Search'
import { PhHourglassMedium, PhPlant, PhSkull } from '@phosphor-icons/vue'
import { PhHourglassMedium, PhPlant, PhSkull, PhArrowSquareOut } from '@phosphor-icons/vue'
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip'
import { Button } from '@/components/ui/button'
import { Badge } from '@/components/ui/badge'
@@ -72,7 +72,7 @@ const pagedResults = computed(() => sortedResults.value.slice(props.startAt, pro
'text-white bg-lime-600 hover:bg-lime-700': r.category === 'naissance',
'text-white bg-stone-500 hover:bg-stone-700': r.category === 'mort',
'text-white bg-orange-600 hover:bg-orange-700': r.category === 'catastrophe',
'text-white bg-pink-600 hover:bg-pink-700': r.category === 'catastrophe-naturel',
'text-white bg-pink-600 hover:bg-pink-700': r.category === 'catastrophe-naturelle',
'text-white bg-sky-600 hover:bg-sky-700': r.category === 'législation',
'text-white bg-purple-600 hover:bg-purple-700': r.category === 'religion',
'text-white bg-emerald-600 hover:bg-emerald-700': r.category === 'joueurs',
@@ -83,8 +83,13 @@ const pagedResults = computed(() => sortedResults.value.slice(props.startAt, pro
}"
@click="handleJumpToDate(r.date)"
>
<div class="font-bold">
{{ r.title }}
<div>
<h2 class="font-bold">
{{ r.title }}
</h2>
<div v-if="r.wiki">
<a :href="r.wiki" target="_blank" title="Voir sur le Wiki">Page wiki</a>
</div>
</div>
<div class="mb-1 space-y-1">
@@ -124,9 +129,19 @@ const pagedResults = computed(() => sortedResults.value.slice(props.startAt, pro
class="block w-full text-left py-3 px-4 border-[1px] border-slate-700 rounded-sm"
>
<div class="grid gap-2">
<h2>
{{ r.name }}
</h2>
<div class="flex gap-2">
<h2 class="font-bold">
{{ r.name }}
</h2>
<div v-if="r.wiki">
<Button variant="link" size="xs" as-child>
<a :href="r.wiki" target="_blank">
Wiki
<PhArrowSquareOut size="16" weight="fill" />
</a>
</Button>
</div>
</div>
<menu class="flex gap-2 border-[1px] border-slate-700 rounded-sm w-fit">
<li v-if="r.birth">

View File

@@ -5,8 +5,17 @@ export const charactersList: Character[] = [
* Player characters
*/
// "Les Milles Cages"
{ name: 'Sulvan Trois-Barbes', birth: { day: 20, month: 3, year: 3169 } },
{ name: 'Vascylly', birth: { day: 3, month: 5, year: 3181 } },
{
name: 'Sulvan Trois-Barbes',
birth: { day: 20, month: 3, year: 3169 },
wiki: 'https://alexcreates.fr/leim/index.php/Sulvan_Trois-Barbes'
},
{
name: 'Vascylly',
birth: { day: 3, month: 5, year: 3181 },
category: 'joueur',
wiki: 'https://alexcreates.fr/leim/index.php/Vascylly'
},
{ name: 'Tara Belyus', birth: { day: 14, month: 9, year: 3186 } },
// "Les Cloches de Cantane"
{ name: 'Malik', birth: { day: 22, month: 8, year: 3181 } },
@@ -17,42 +26,139 @@ export const charactersList: Character[] = [
* NPC
*/
// Counts of the Alliance
{ name: 'Alfrid de Lagarde', birth: { day: 29, month: 7, year: 3193 } },
{ name: 'Alaric de Lagarde', birth: { day: 23, month: 8, year: 3192 } },
{ name: 'Anastael III de Quillon', birth: { day: 1, month: 5, year: 3184 } },
{ name: 'Antoine de Mireloin', birth: { day: 31, month: 5, year: 3190 } },
{ name: 'Armance Ronchère', birth: { day: 1, month: 1, year: 3132 } },
{ name: 'Baranne Rougefer', birth: { day: 1, month: 0, year: 3175 } },
{ name: 'Béatrice II de Grandlac', birth: { day: 21, month: 4, year: 3158 } },
{ name: 'Favio Asharos-Losantelle', birth: { day: 17, month: 3, year: 3091 } },
{ name: 'Firmin de Montardieu', birth: { day: 9, month: 2, year: 3203 } },
{
name: 'Alfrid de Lagarde',
birth: { day: 29, month: 7, year: 3193 },
wiki: 'https://alexcreates.fr/leim/index.php/Alfrid_de_Lagarde'
},
{
name: 'Alaric de Lagarde',
birth: { day: 23, month: 8, year: 3192 },
wiki: 'https://alexcreates.fr/leim/index.php/Alaric_de_Lagarde'
},
{
name: 'Anastael III de Quillon',
birth: { day: 1, month: 5, year: 3184 },
wiki: 'https://alexcreates.fr/leim/index.php/Anastael_III_de_Quillon'
},
{
name: 'Antoine de Mireloin',
birth: { day: 31, month: 5, year: 3190 },
wiki: 'https://alexcreates.fr/leim/index.php/Antoine_de_Mireloin'
},
{
name: 'Armance Ronchère',
birth: { day: 1, month: 1, year: 3132 },
wiki: 'https://alexcreates.fr/leim/index.php/Armance_Ronchère'
},
{
name: 'Baranne Rougefer',
birth: { day: 1, month: 0, year: 3175 },
wiki: 'https://alexcreates.fr/leim/index.php/Baranne_Rougefer'
},
{
name: 'Béatrice II de Grandlac',
birth: { day: 21, month: 4, year: 3158 },
wiki: 'https://alexcreates.fr/leim/index.php/Béatrice_II_de_Grandlac'
},
{
name: 'Favio Asharos-Losantelle',
birth: { day: 17, month: 3, year: 3091 },
wiki: 'https://alexcreates.fr/leim/index.php/Favio_Asharos-Losantelle'
},
{
name: 'Firmin de Montardieu',
birth: { day: 9, month: 2, year: 3203 },
wiki: 'https://alexcreates.fr/leim/index.php/Firmin_de_Montardieu'
},
{
name: 'Laura de Montardieu',
birth: { day: 32, month: 3, year: 3167 },
death: { day: 1, month: 4, year: 3217 },
hiddenDeath: true
hiddenDeath: true,
wiki: 'https://alexcreates.fr/leim/index.php/Laura_de_Montardieu'
},
{
name: 'Lazarus Tymos',
birth: { day: 29, month: 9, year: 3145 },
wiki: 'https://alexcreates.fr/leim/index.php/Lazarus_Tymos'
},
{
name: 'Marion de Corambre',
birth: { day: 14, month: 7, year: 3190 },
wiki: 'https://alexcreates.fr/leim/index.php/Marion_de_Corambre'
},
{
name: 'Relforg Pergaré',
birth: { day: 18, month: 9, year: 3182 },
wiki: 'https://alexcreates.fr/leim/index.php/Relforg_Pergaré'
},
{
name: 'Vilgarde de Ternâcre',
birth: { day: 3, month: 3, year: 2998 },
wiki: 'https://alexcreates.fr/leim/index.php/Vilgarde_de_Ternâcre'
},
{
name: 'Ysildy Milopée',
birth: { day: 3, month: 1, year: 3187 },
wiki: 'https://alexcreates.fr/leim/index.php/Ysildy_Milopée'
},
{ name: 'Lazarus Tymos', birth: { day: 29, month: 9, year: 3145 } },
{ name: 'Marion de Corambre', birth: { day: 14, month: 7, year: 3190 } },
{ name: 'Relforg Pergaré', birth: { day: 18, month: 9, year: 3182 } },
{ name: 'Vilgarde de Ternâcre', birth: { day: 3, month: 3, year: 2998 } },
{ name: 'Ysildy Milopée', birth: { day: 3, month: 1, year: 3187 } },
// Sparks
{ name: 'Izàc Tymos', birth: { day: 13, month: 6, year: 3192 } },
{ name: 'Tvernée', birth: { day: 19, month: 2, year: 3205 } },
{
name: 'Izàc Tymos',
birth: { day: 13, month: 6, year: 3192 },
wiki: 'https://alexcreates.fr/leim/index.php/Izàc_Tymos'
},
{
name: 'Tvernée',
birth: { day: 19, month: 2, year: 3205 },
wiki: 'https://alexcreates.fr/leim/index.php/Tvernée'
},
// Pirates
{ name: 'Räzal', birth: { day: 13, month: 8, year: 3178 } },
{
name: 'Räzal',
birth: { day: 13, month: 8, year: 3178 },
wiki: 'https://alexcreates.fr/leim/index.php/Räzal'
},
// "Les Milles Cages"
{ name: 'Ernestin Pomel', birth: { day: 11, month: 2, year: 3179 } },
{ name: 'Quacille Lévios', birth: { day: 3, month: 6, year: 3162 } },
{ name: 'Morel Lévios', birth: { day: 26, month: 3, year: 3157 } },
{ name: 'Anastael Simon', birth: { day: 32, month: 2, year: 3166 } },
{ name: 'Grestain', birth: { day: 9, month: 2, year: 3162 } },
{ name: 'Lucien Malanth', birth: { day: 31, month: 4, year: 3167 } },
{ name: 'Tivian Rodhus', birth: { day: 13, month: 3, year: 3157 } },
{
name: 'Ernestin Pomel',
birth: { day: 11, month: 2, year: 3179 },
wiki: 'https://alexcreates.fr/leim/index.php/Ernestin_Pomel'
},
{
name: 'Quacille Lévios',
birth: { day: 3, month: 6, year: 3162 },
wiki: 'https://alexcreates.fr/leim/index.php/Quacille_Lévios'
},
{
name: 'Morel Lévios',
birth: { day: 26, month: 3, year: 3157 },
wiki: 'https://alexcreates.fr/leim/index.php/Morel_Lévios'
},
{
name: 'Anastael Simon',
birth: { day: 32, month: 2, year: 3166 },
wiki: 'https://alexcreates.fr/leim/index.php/Anastael_Simon'
},
{
name: 'Grestain',
birth: { day: 9, month: 2, year: 3162 },
wiki: 'https://alexcreates.fr/leim/index.php/Grestain'
},
{
name: 'Lucien Malanth',
birth: { day: 31, month: 4, year: 3167 },
wiki: 'https://alexcreates.fr/leim/index.php/Lucien_Malanth'
},
{
name: 'Tivian Rodhus',
birth: { day: 13, month: 3, year: 3157 },
wiki: 'https://alexcreates.fr/leim/index.php/Tivian_Rodhus'
},
// "Les Cloches de Cantane"
{

View File

@@ -7,8 +7,13 @@ export interface Character {
death?: LeimDate
hiddenBirth?: boolean
hiddenDeath?: boolean
category?: CharacterCategory
secondaryCategories?: CharacterCategory[]
wiki?: string
}
export type CharacterCategory = 'joueur' | 'comte' | 'scientifique' | 'mage' | 'professeur'
export function isCharacter(object: any): object is Character {
return 'birth' in object
}

View File

@@ -15,7 +15,7 @@ export type CalendarEventCategory =
| 'mort'
| 'catastrophe'
| 'législation'
| 'catastrophe-naturel'
| 'catastrophe-naturelle'
| 'inauguration'
| 'religion'
| 'invention'