New eveal #32
@@ -1,9 +1,11 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
|
||||||
|
import {computed} from "vue";
|
||||||
import {computedAsync} from "@vueuse/core";
|
import {computedAsync} from "@vueuse/core";
|
||||||
import {ActivitySourceResponse, ActivitySourceResponseTypeEnum} from "@/generated/mammon";
|
import {ActivitySourceResponse, ActivitySourceResponseTypeEnum} from "@/generated/mammon";
|
||||||
import {CharacterLabel, useCharactersStore} from "@/characters";
|
import {CharacterLabel, useCharactersStore} from "@/characters";
|
||||||
import {CorporationLabel} from "@/corporations";
|
import {CorporationLabel} from "@/corporations";
|
||||||
|
import {LedgerLabel, useLedgersStore} from "@/ledger";
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
source: ActivitySourceResponse;
|
source: ActivitySourceResponse;
|
||||||
@@ -15,6 +17,7 @@ const props = withDefaults(defineProps<Props>(), {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const charactersStore = useCharactersStore();
|
const charactersStore = useCharactersStore();
|
||||||
|
const ledgersStore = useLedgersStore();
|
||||||
|
|
||||||
const character = computedAsync(async () => {
|
const character = computedAsync(async () => {
|
||||||
if (props.source.type === ActivitySourceResponseTypeEnum.Character && props.source.characterId) {
|
if (props.source.type === ActivitySourceResponseTypeEnum.Character && props.source.characterId) {
|
||||||
@@ -22,11 +25,15 @@ const character = computedAsync(async () => {
|
|||||||
}
|
}
|
||||||
return undefined;
|
return undefined;
|
||||||
}, undefined);
|
}, undefined);
|
||||||
|
|
||||||
|
const ledger = computed(() =>
|
||||||
|
props.source.type === ActivitySourceResponseTypeEnum.Ledger && props.source.ledgerId
|
||||||
|
? ledgersStore.findById(props.source.ledgerId)
|
||||||
|
: undefined);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<CharacterLabel v-if="source.type === ActivitySourceResponseTypeEnum.Character && character" :character="character" :size="size" />
|
<CharacterLabel v-if="source.type === ActivitySourceResponseTypeEnum.Character && character" :character="character" :size="size" />
|
||||||
<CorporationLabel v-else-if="source.type === ActivitySourceResponseTypeEnum.Corporation && source.corporationId" :corporation-id="source.corporationId" :division="source.division" :size="size" />
|
<CorporationLabel v-else-if="source.type === ActivitySourceResponseTypeEnum.Corporation && source.corporationId" :corporation-id="source.corporationId" :division="source.division" :size="size" />
|
||||||
|
<LedgerLabel v-else-if="ledger" :ledger="ledger" link />
|
||||||
<span v-else class="text-slate-400">—</span>
|
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
Reference in New Issue
Block a user