mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-24 12:09:51 +02:00
feat: merged powered by
This commit is contained in:
1 parent
64fd15c0a5
commit
dd39563d6d
10 files changed
+53
-46
No files matched your search
@@ -1,7 +1,7 @@
|
|||||||
import { SlashCommandBuilder } from 'discord.js';
|
import { SlashCommandBuilder } from 'discord.js';
|
||||||
import GenericStats from '../components/GenericStats/index.js';
|
import GenericStats from '../components/GenericStats/index.js';
|
||||||
import NoData, { NoDataType } from '../components/NoData.js';
|
import NoData, { NoDataType } from '../components/NoData.js';
|
||||||
import PoweredByWargaming from '../components/PoweredByWargaming.js';
|
import PoweredBy, { PoweredByType } from '../components/PoweredBy.js';
|
||||||
import TitleBar from '../components/TitleBar.js';
|
import TitleBar from '../components/TitleBar.js';
|
||||||
import Wrapper from '../components/Wrapper.js';
|
import Wrapper from '../components/Wrapper.js';
|
||||||
import { BLITZ_SERVERS } from '../constants/servers.js';
|
import { BLITZ_SERVERS } from '../constants/servers.js';
|
||||||
@@ -79,7 +79,7 @@ export default {
|
|||||||
{!hasInactiveMembers && <NoData type={NoDataType.PlayersInPeriod} />}
|
{!hasInactiveMembers && <NoData type={NoDataType.PlayersInPeriod} />}
|
||||||
{hasInactiveMembers && <GenericStats stats={inactive} />}
|
{hasInactiveMembers && <GenericStats stats={inactive} />}
|
||||||
|
|
||||||
<PoweredByWargaming />
|
<PoweredBy type={PoweredByType.Wargaming} />
|
||||||
</Wrapper>
|
</Wrapper>
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { SlashCommandBuilder } from 'discord.js';
|
import { SlashCommandBuilder } from 'discord.js';
|
||||||
import NoData, { NoDataType } from '../components/NoData.js';
|
import NoData, { NoDataType } from '../components/NoData.js';
|
||||||
import PoweredByWargaming from '../components/PoweredByWargaming.js';
|
import PoweredBy, { PoweredByType } from '../components/PoweredBy.js';
|
||||||
import * as Tanks from '../components/Tanks/index.js';
|
import * as Tanks from '../components/Tanks/index.js';
|
||||||
import TitleBar from '../components/TitleBar.js';
|
import TitleBar from '../components/TitleBar.js';
|
||||||
import Wrapper from '../components/Wrapper.js';
|
import Wrapper from '../components/Wrapper.js';
|
||||||
@@ -115,7 +115,7 @@ export default {
|
|||||||
</Tanks.Root>
|
</Tanks.Root>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
<PoweredByWargaming />
|
<PoweredBy type={PoweredByType.Wargaming} />
|
||||||
</Wrapper>
|
</Wrapper>
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ import { Period } from '../core/discord/addPeriodSubCommands.js';
|
|||||||
import addStatTypeSubCommandGroups from '../core/discord/addStatTypeSubCommandGroups.js';
|
import addStatTypeSubCommandGroups from '../core/discord/addStatTypeSubCommandGroups.js';
|
||||||
import autocompleteTanks from '../core/discord/autocompleteTanks.js';
|
import autocompleteTanks from '../core/discord/autocompleteTanks.js';
|
||||||
import autocompleteUsername from '../core/discord/autocompleteUsername.js';
|
import autocompleteUsername from '../core/discord/autocompleteUsername.js';
|
||||||
import interactionToURL from '../core/discord/interactionToURL.js';
|
|
||||||
import linkButton from '../core/discord/linkButton.js';
|
import linkButton from '../core/discord/linkButton.js';
|
||||||
import primaryButton from '../core/discord/primaryButton.js';
|
import primaryButton from '../core/discord/primaryButton.js';
|
||||||
import resolvePeriodFromButton from '../core/discord/resolvePeriodFromButton.js';
|
import resolvePeriodFromButton from '../core/discord/resolvePeriodFromButton.js';
|
||||||
@@ -14,7 +13,7 @@ import resolvePlayerFromButton from '../core/discord/resolvePlayerFromButton.js'
|
|||||||
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand.js';
|
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand.js';
|
||||||
import { CommandRegistry } from '../events/interactionCreate/index.js';
|
import { CommandRegistry } from '../events/interactionCreate/index.js';
|
||||||
import stats from '../renderers/stats.js';
|
import stats from '../renderers/stats.js';
|
||||||
import statsfull, { StatType } from '../renderers/statsfull.js';
|
import { StatType } from '../renderers/statsfull.js';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
inProduction: true,
|
inProduction: true,
|
||||||
@@ -42,7 +41,7 @@ export default {
|
|||||||
player.server
|
player.server
|
||||||
}&id=${player.id}&tankId=${tankId}&start=${start ?? 0}&end=${end ?? 0}`;
|
}&id=${player.id}&tankId=${tankId}&start=${start ?? 0}&end=${end ?? 0}`;
|
||||||
|
|
||||||
interactionToURL(interaction);
|
// interactionToURL(interaction);
|
||||||
|
|
||||||
return [
|
return [
|
||||||
await stats(commandGroup, period, player, tankId),
|
await stats(commandGroup, period, player, tankId),
|
||||||
@@ -63,7 +62,7 @@ export default {
|
|||||||
const period = resolvePeriodFromButton(interaction);
|
const period = resolvePeriodFromButton(interaction);
|
||||||
const player = await resolvePlayerFromButton(interaction);
|
const player = await resolvePlayerFromButton(interaction);
|
||||||
|
|
||||||
return await statsfull(
|
return await stats(
|
||||||
commandGroup,
|
commandGroup,
|
||||||
period,
|
period,
|
||||||
player,
|
player,
|
||||||
|
|||||||
@@ -0,0 +1,38 @@
|
|||||||
|
import { ReactNode } from 'react';
|
||||||
|
import { theme } from '../stitches.config.js';
|
||||||
|
|
||||||
|
export enum PoweredByType {
|
||||||
|
BlitzStars,
|
||||||
|
Wargaming,
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface PoweredByProps {
|
||||||
|
type: PoweredByType;
|
||||||
|
footer?: ReactNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
const POWERED_BY_IMAGES: Record<PoweredByType, string> = {
|
||||||
|
[PoweredByType.BlitzStars]:
|
||||||
|
'https://www.blitzstars.com/assets/images/4b4cb591.TankyMcPewpew.png',
|
||||||
|
[PoweredByType.Wargaming]: 'https://i.imgur.com/jADGWm0.png',
|
||||||
|
};
|
||||||
|
|
||||||
|
const POWERED_BY_NAMES: Record<PoweredByType, string> = {
|
||||||
|
[PoweredByType.BlitzStars]: 'BlitzStars',
|
||||||
|
[PoweredByType.Wargaming]: 'Wargaming',
|
||||||
|
};
|
||||||
|
|
||||||
|
export default function PoweredBy({ type, footer }: PoweredByProps) {
|
||||||
|
return (
|
||||||
|
<div style={{ display: 'flex', justifyContent: 'space-between' }}>
|
||||||
|
<div>{footer}</div>
|
||||||
|
|
||||||
|
<div style={{ display: 'flex', gap: 4 }}>
|
||||||
|
<img src={POWERED_BY_IMAGES[type]} style={{ height: 16, width: 16 }} />
|
||||||
|
<span style={{ color: theme.colors.textLowContrast, fontSize: 16 }}>
|
||||||
|
Powered by {POWERED_BY_NAMES[type]}
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
import { theme } from '../stitches.config.js';
|
|
||||||
|
|
||||||
export default function PoweredByBlitzStars() {
|
|
||||||
return (
|
|
||||||
<div style={{ display: 'flex', gap: 4, justifyContent: 'flex-end' }}>
|
|
||||||
<img
|
|
||||||
src="https://www.blitzstars.com/assets/images/4b4cb591.TankyMcPewpew.png"
|
|
||||||
style={{ height: 16, width: 16 }}
|
|
||||||
/>
|
|
||||||
<span style={{ color: theme.colors.textLowContrast, fontSize: 16 }}>
|
|
||||||
Powered by BlitzStars
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
import { theme } from '../stitches.config.js';
|
|
||||||
|
|
||||||
export default function PoweredByWargaming() {
|
|
||||||
return (
|
|
||||||
<div style={{ display: 'flex', gap: 4, justifyContent: 'flex-end' }}>
|
|
||||||
<img
|
|
||||||
src="https://i.imgur.com/jADGWm0.png"
|
|
||||||
style={{ height: 16, width: 16 }}
|
|
||||||
/>
|
|
||||||
<span style={{ color: theme.colors.textLowContrast, fontSize: 16 }}>
|
|
||||||
Powered by Wargaming
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import * as Graph from '../components/Graph/index.js';
|
import * as Graph from '../components/Graph/index.js';
|
||||||
import NoData, { NoDataType } from '../components/NoData.js';
|
import NoData, { NoDataType } from '../components/NoData.js';
|
||||||
import PoweredByBlitzStars from '../components/PoweredByBlitzStars.js';
|
import PoweredBy, { PoweredByType } from '../components/PoweredBy.js';
|
||||||
import TitleBar from '../components/TitleBar.js';
|
import TitleBar from '../components/TitleBar.js';
|
||||||
import Wrapper from '../components/Wrapper.js';
|
import Wrapper from '../components/Wrapper.js';
|
||||||
import { BLITZ_SERVERS } from '../constants/servers.js';
|
import { BLITZ_SERVERS } from '../constants/servers.js';
|
||||||
@@ -128,7 +128,7 @@ export default async function evolution<Type extends StatType>(
|
|||||||
<NoData type={NoDataType.BattlesInPeriod} />
|
<NoData type={NoDataType.BattlesInPeriod} />
|
||||||
)}
|
)}
|
||||||
|
|
||||||
<PoweredByBlitzStars />
|
<PoweredBy type={PoweredByType.BlitzStars} />
|
||||||
</Wrapper>
|
</Wrapper>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import AllStatsOverview from '../components/AllStatsOverview/index.js';
|
import AllStatsOverview from '../components/AllStatsOverview/index.js';
|
||||||
import NoData, { NoDataType } from '../components/NoData.js';
|
import NoData, { NoDataType } from '../components/NoData.js';
|
||||||
import PoweredByBlitzStars from '../components/PoweredByBlitzStars.js';
|
import PoweredBy, { PoweredByType } from '../components/PoweredBy.js';
|
||||||
import { TierWeightsRecord } from '../components/TierWeights.js';
|
import { TierWeightsRecord } from '../components/TierWeights.js';
|
||||||
import TitleBar from '../components/TitleBar.js';
|
import TitleBar from '../components/TitleBar.js';
|
||||||
import Wrapper from '../components/Wrapper.js';
|
import Wrapper from '../components/Wrapper.js';
|
||||||
@@ -143,7 +143,7 @@ export default async function stats<Type extends StatType>(
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
<PoweredByBlitzStars />
|
<PoweredBy type={PoweredByType.BlitzStars} />
|
||||||
</Wrapper>
|
</Wrapper>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import GenericAllStats from '../components/GenericAllStats.js';
|
import GenericAllStats from '../components/GenericAllStats.js';
|
||||||
import NoData, { NoDataType } from '../components/NoData.js';
|
import NoData, { NoDataType } from '../components/NoData.js';
|
||||||
import PoweredByBlitzStars from '../components/PoweredByBlitzStars.js';
|
import PoweredBy, { PoweredByType } from '../components/PoweredBy.js';
|
||||||
import TierWeights, { TierWeightsRecord } from '../components/TierWeights.js';
|
import TierWeights, { TierWeightsRecord } from '../components/TierWeights.js';
|
||||||
import TitleBar from '../components/TitleBar.js';
|
import TitleBar from '../components/TitleBar.js';
|
||||||
import Wrapper from '../components/Wrapper.js';
|
import Wrapper from '../components/Wrapper.js';
|
||||||
@@ -146,7 +146,7 @@ export default async function statsfull<Type extends StatType>(
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
<PoweredByBlitzStars />
|
<PoweredBy type={PoweredByType.BlitzStars} />
|
||||||
</Wrapper>
|
</Wrapper>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import * as Breakdown from '../components/Breakdown/index.js';
|
import * as Breakdown from '../components/Breakdown/index.js';
|
||||||
import NoData, { NoDataType } from '../components/NoData.js';
|
import NoData, { NoDataType } from '../components/NoData.js';
|
||||||
import PoweredByBlitzStars from '../components/PoweredByBlitzStars.js';
|
import PoweredBy, { PoweredByType } from '../components/PoweredBy.js';
|
||||||
import TitleBar from '../components/TitleBar.js';
|
import TitleBar from '../components/TitleBar.js';
|
||||||
import Wrapper from '../components/Wrapper.js';
|
import Wrapper from '../components/Wrapper.js';
|
||||||
import { BLITZ_SERVERS } from '../constants/servers.js';
|
import { BLITZ_SERVERS } from '../constants/servers.js';
|
||||||
@@ -156,7 +156,7 @@ export default async function today({ server, id }: ResolvedPlayer) {
|
|||||||
{rows.length === 0 && <NoData type={NoDataType.BattlesInPeriod} />}
|
{rows.length === 0 && <NoData type={NoDataType.BattlesInPeriod} />}
|
||||||
{rows.length > 0 && <Breakdown.Root>{rows}</Breakdown.Root>}
|
{rows.length > 0 && <Breakdown.Root>{rows}</Breakdown.Root>}
|
||||||
|
|
||||||
<PoweredByBlitzStars />
|
<PoweredBy type={PoweredByType.BlitzStars} />
|
||||||
</Wrapper>
|
</Wrapper>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user