mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-24 20:19:49 +02:00
fix: types
This commit is contained in:
1 parent
9ae8b0ac49
commit
3c80a43435
255 files changed
+797
-838
No files matched your search
Vendored
+1
@@ -65,6 +65,7 @@
|
|||||||
"Everytime",
|
"Everytime",
|
||||||
"FASTNAME",
|
"FASTNAME",
|
||||||
"FOURCC",
|
"FOURCC",
|
||||||
|
"frameloop",
|
||||||
"fsformat",
|
"fsformat",
|
||||||
"Fullscreen",
|
"Fullscreen",
|
||||||
"fullstats",
|
"fullstats",
|
||||||
|
|||||||
+4
-21
@@ -30,51 +30,34 @@
|
|||||||
"discoverids": "scripts/discoverIds.ts"
|
"discoverids": "scripts/discoverIds.ts"
|
||||||
},
|
},
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"lodash": "^4.17.21"
|
||||||
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"typescript": "^5.5.4"
|
"typescript": "^5.5.4"
|
||||||
},
|
},
|
||||||
"_dependencies": {
|
"_dependencies": {
|
||||||
"@radix-ui/colors": "^3.0.0",
|
"@radix-ui/colors": "^3.0.0",
|
||||||
"@resvg/resvg-js": "^2.6.2",
|
|
||||||
"@types/three": "^0.160.0",
|
"@types/three": "^0.160.0",
|
||||||
"@vanilla-extract/css": "^1.15.5",
|
"@vanilla-extract/css": "^1.15.5",
|
||||||
"bepaint": "^0.1.0-beta.3",
|
|
||||||
"csv-parse": "^5.5.6",
|
"csv-parse": "^5.5.6",
|
||||||
"decompress": "^4.2.1",
|
|
||||||
"discord.js": "^14.15.3",
|
|
||||||
"dotenv": "^16.4.5",
|
|
||||||
"esbuild": "^0.19.12",
|
"esbuild": "^0.19.12",
|
||||||
"express": "^4.19.2",
|
"express": "^4.19.2",
|
||||||
"false": "^0.0.4",
|
"false": "^0.0.4",
|
||||||
"fuzzysort": "^2.0.4",
|
"fuzzysort": "^2.0.4",
|
||||||
"googleapis": "^134.0.0",
|
|
||||||
"js-yaml": "^4.1.0",
|
|
||||||
"markdown-escape": "^2.0.0",
|
|
||||||
"markdown-to-jsx": "^7.5.0",
|
|
||||||
"parse-dds": "^1.2.1",
|
"parse-dds": "^1.2.1",
|
||||||
"postprocessing": "^6.36.0",
|
"postprocessing": "^6.36.0",
|
||||||
"progress": "^2.0.3",
|
|
||||||
"satori": "^0.10.14",
|
|
||||||
"sharp": "^0.33.5",
|
|
||||||
"three-stdlib": "^2.32.2",
|
"three-stdlib": "^2.32.2",
|
||||||
"urlon": "^3.1.0",
|
"urlon": "^3.1.0"
|
||||||
"yaml": "^2.5.0"
|
|
||||||
},
|
},
|
||||||
"_devDependencies": {
|
"_devDependencies": {
|
||||||
"@total-typescript/ts-reset": "^0.5.1",
|
"@total-typescript/ts-reset": "^0.5.1",
|
||||||
"@types/bun": "latest",
|
"@types/bun": "latest",
|
||||||
"@types/decompress": "^4.2.7",
|
|
||||||
"@types/escape-html": "^1.0.4",
|
"@types/escape-html": "^1.0.4",
|
||||||
"@types/express": "^4.17.21",
|
"@types/express": "^4.17.21",
|
||||||
"@types/js-yaml": "^4.0.9",
|
|
||||||
"@types/markdown-escape": "^1.1.3",
|
|
||||||
"@types/node": "^20.16.3",
|
"@types/node": "^20.16.3",
|
||||||
"@types/parse-dds": "^1.0.3",
|
"@types/parse-dds": "^1.0.3",
|
||||||
"@types/pngjs": "^6.0.5",
|
"@types/pngjs": "^6.0.5",
|
||||||
"@types/progress": "^2.0.7",
|
|
||||||
"compare-versions": "^6.1.1",
|
|
||||||
"crc": "^4.3.2",
|
|
||||||
"fast-xml-parser": "^4.4.1",
|
|
||||||
"knip": "^3.13.2",
|
"knip": "^3.13.2",
|
||||||
"prettier": "^3.3.3",
|
"prettier": "^3.3.3",
|
||||||
"prisma": "^5.19.1"
|
"prisma": "^5.19.1"
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"name": "@blitzkit/bot",
|
||||||
|
"private": true,
|
||||||
|
"type": "module",
|
||||||
|
"dependencies": {
|
||||||
|
"@blitzkit/core": "workspace:*",
|
||||||
|
"satori": "^0.10.14",
|
||||||
|
"@resvg/resvg-js": "^2.6.2",
|
||||||
|
"discord.js": "^14.15.3",
|
||||||
|
"bepaint": "^0.1.0-beta.3",
|
||||||
|
"dotenv": "^16.4.5",
|
||||||
|
"markdown-escape": "^2.0.0"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/markdown-escape": "^1.1.3"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { getBlitzStarsLinkButton } from '../../core/blitzstars/getBlitzStarsLinkButton';
|
import { getBlitzStarsLinkButton } from '../../../../website/src/core/blitzstars/getBlitzStarsLinkButton';
|
||||||
import addPeriodicFilterOptions from '../../core/discord/addPeriodicFilterOptions';
|
import addPeriodicFilterOptions from '../../core/discord/addPeriodicFilterOptions';
|
||||||
import addUsernameChoices from '../../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../../core/discord/addUsernameChoices';
|
||||||
import autocompleteTanks from '../../core/discord/autocompleteTanks';
|
import autocompleteTanks from '../../core/discord/autocompleteTanks';
|
||||||
|
|||||||
@@ -1,27 +1,28 @@
|
|||||||
import getStatsInPeriod from '@blitzkit/core/src/blitzstars/getStatsInPeriod';
|
import {
|
||||||
|
BlitzStats,
|
||||||
|
filterStats,
|
||||||
|
StatFilters,
|
||||||
|
TankDefinition,
|
||||||
|
tankDefinitions,
|
||||||
|
} from '@blitzkit/core';
|
||||||
|
import calculateWN8 from '@blitzkit/core/src/statistics/calculateWN8';
|
||||||
|
import getWN8Percentile from '@blitzkit/core/src/statistics/getWN8Percentile';
|
||||||
import { Locale } from 'discord.js';
|
import { Locale } from 'discord.js';
|
||||||
import { chunk } from 'lodash';
|
import { chunk } from 'lodash';
|
||||||
|
import { getAccountInfo } from '../../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { getClanAccountInfo } from '../../../../website/src/core/blitz/getClanAccountInfo';
|
||||||
|
import getTankStats from '../../../../website/src/core/blitz/getTankStats';
|
||||||
|
import { filtersToDescription } from '../../../../website/src/core/blitzkit/filtersToDescription';
|
||||||
|
import { tankAverages } from '../../../../website/src/core/blitzstars/tankAverages';
|
||||||
|
import { UserError } from '../../../../website/src/hooks/userError';
|
||||||
import * as Breakdown from '../../components/Breakdown';
|
import * as Breakdown from '../../components/Breakdown';
|
||||||
import CommandWrapper from '../../components/CommandWrapper';
|
import CommandWrapper from '../../components/CommandWrapper';
|
||||||
import NoData from '../../components/NoData';
|
import NoData from '../../components/NoData';
|
||||||
import TitleBar from '../../components/TitleBar';
|
import TitleBar from '../../components/TitleBar';
|
||||||
import { getAccountInfo } from '../../core/blitz/getAccountInfo';
|
import getStatsInPeriod from '../../core/blitzstars/getStatsInPeriod';
|
||||||
import { getClanAccountInfo } from '../../core/blitz/getClanAccountInfo';
|
|
||||||
import getTankStats from '../../core/blitz/getTankStats';
|
|
||||||
import { filtersToDescription } from '../../core/blitzkit/filtersToDescription';
|
|
||||||
import {
|
|
||||||
TankDefinition,
|
|
||||||
tankDefinitions,
|
|
||||||
} from '../../core/blitzkit/tankDefinitions';
|
|
||||||
import { tankAverages } from '../../core/blitzstars/tankAverages';
|
|
||||||
import { ResolvedPeriod } from '../../core/discord/resolvePeriodFromCommand';
|
import { ResolvedPeriod } from '../../core/discord/resolvePeriodFromCommand';
|
||||||
import { ResolvedPlayer } from '../../core/discord/resolvePlayerFromCommand';
|
import { ResolvedPlayer } from '../../core/discord/resolvePlayerFromCommand';
|
||||||
import { translator } from '../../core/localization/translator';
|
import { translator } from '../../core/localization/translator';
|
||||||
import calculateWN8 from '../../core/statistics/calculateWN8';
|
|
||||||
import { BlitzStats } from '../../core/statistics/compositeStats/constants';
|
|
||||||
import { StatFilters, filterStats } from '../../core/statistics/filterStats';
|
|
||||||
import getWN8Percentile from '../../core/statistics/getWN8Percentile';
|
|
||||||
import { UserError } from '../../hooks/userError';
|
|
||||||
|
|
||||||
const ROWS_PER_PAGE = 8;
|
const ROWS_PER_PAGE = 8;
|
||||||
const MAX_PAGES = 9;
|
const MAX_PAGES = 9;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import packageJSON from '../../package.json' assert { type: 'json' };
|
import packageJSON from '../../../../package.json' assert { type: 'json' };
|
||||||
import { client } from '../core/discord/client';
|
import { client } from '../core/discord/client';
|
||||||
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
||||||
import { translator } from '../core/localization/translator';
|
import { translator } from '../core/localization/translator';
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
import { Locale, SlashCommandSubcommandGroupBuilder } from 'discord.js';
|
import { Locale, SlashCommandSubcommandGroupBuilder } from 'discord.js';
|
||||||
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { getClanAccountInfo } from '../../../website/src/core/blitz/getClanAccountInfo';
|
||||||
|
import resolveTankId from '../../../website/src/core/blitz/resolveTankId';
|
||||||
|
import { emblemURL } from '../../../website/src/core/blitzkit/emblemURL';
|
||||||
|
import { getBlitzStarsLinkButton } from '../../../website/src/core/blitzstars/getBlitzStarsLinkButton';
|
||||||
|
import getPlayerHistories from '../../../website/src/core/blitzstars/getPlayerHistories';
|
||||||
import CommandWrapper from '../components/CommandWrapper';
|
import CommandWrapper from '../components/CommandWrapper';
|
||||||
import * as Graph from '../components/Graph';
|
import * as Graph from '../components/Graph';
|
||||||
import { LineColor } from '../components/Graph/components/Line/constants';
|
import { LineColor } from '../components/Graph/components/Line/constants';
|
||||||
import NoData from '../components/NoData';
|
import NoData from '../components/NoData';
|
||||||
import TitleBar from '../components/TitleBar';
|
import TitleBar from '../components/TitleBar';
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
import getTankHistories from '../core/blitzstars/getTankHistories';
|
||||||
import { getClanAccountInfo } from '../core/blitz/getClanAccountInfo';
|
|
||||||
import resolveTankId from '../core/blitz/resolveTankId';
|
|
||||||
import { emblemURL } from '../core/blitzkit/emblemURL';
|
|
||||||
import getTankHistories from '../core/blitzkit/getTankHistories';
|
|
||||||
import { getBlitzStarsLinkButton } from '../core/blitzstars/getBlitzStarsLinkButton';
|
|
||||||
import getPlayerHistories from '../core/blitzstars/getPlayerHistories';
|
|
||||||
import { addPeriodSubCommands } from '../core/discord/addPeriodSubCommands';
|
import { addPeriodSubCommands } from '../core/discord/addPeriodSubCommands';
|
||||||
import addTankChoices from '../core/discord/addTankChoices';
|
import addTankChoices from '../core/discord/addTankChoices';
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
|
|||||||
@@ -1,15 +1,16 @@
|
|||||||
import getStatsInPeriod from '@blitzkit/core/src/blitzstars/getStatsInPeriod';
|
import { StatFilters, filterStats, getTierWeights } from '@blitzkit/core';
|
||||||
import { Locale } from 'discord.js';
|
import { Locale } from 'discord.js';
|
||||||
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { getClanAccountInfo } from '../../../website/src/core/blitz/getClanAccountInfo';
|
||||||
|
import { emblemURL } from '../../../website/src/core/blitzkit/emblemURL';
|
||||||
|
import { filtersToDescription } from '../../../website/src/core/blitzkit/filtersToDescription';
|
||||||
|
import { getBlitzStarsLinkButton } from '../../../website/src/core/blitzstars/getBlitzStarsLinkButton';
|
||||||
import CommandWrapper from '../components/CommandWrapper';
|
import CommandWrapper from '../components/CommandWrapper';
|
||||||
import GenericAllStats from '../components/GenericAllStats';
|
import GenericAllStats from '../components/GenericAllStats';
|
||||||
import NoData from '../components/NoData';
|
import NoData from '../components/NoData';
|
||||||
import TierWeights from '../components/TierWeights';
|
import TierWeights from '../components/TierWeights';
|
||||||
import TitleBar from '../components/TitleBar';
|
import TitleBar from '../components/TitleBar';
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
import getStatsInPeriod from '../core/blitzstars/getStatsInPeriod';
|
||||||
import { getClanAccountInfo } from '../core/blitz/getClanAccountInfo';
|
|
||||||
import { emblemURL } from '../core/blitzkit/emblemURL';
|
|
||||||
import { filtersToDescription } from '../core/blitzkit/filtersToDescription';
|
|
||||||
import { getBlitzStarsLinkButton } from '../core/blitzstars/getBlitzStarsLinkButton';
|
|
||||||
import addPeriodicFilterOptions from '../core/discord/addPeriodicFilterOptions';
|
import addPeriodicFilterOptions from '../core/discord/addPeriodicFilterOptions';
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import autocompleteTanks from '../core/discord/autocompleteTanks';
|
import autocompleteTanks from '../core/discord/autocompleteTanks';
|
||||||
@@ -28,8 +29,6 @@ import resolvePlayerFromButton from '../core/discord/resolvePlayerFromButton';
|
|||||||
import resolvePlayerFromCommand, {
|
import resolvePlayerFromCommand, {
|
||||||
ResolvedPlayer,
|
ResolvedPlayer,
|
||||||
} from '../core/discord/resolvePlayerFromCommand';
|
} from '../core/discord/resolvePlayerFromCommand';
|
||||||
import { StatFilters, filterStats } from '../core/statistics/filterStats';
|
|
||||||
import { getTierWeights } from '../core/statistics/getTierWeights';
|
|
||||||
import { CommandRegistry } from '../events/interactionCreate';
|
import { CommandRegistry } from '../events/interactionCreate';
|
||||||
|
|
||||||
async function render(
|
async function render(
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import { Locale } from 'discord.js';
|
import { Locale } from 'discord.js';
|
||||||
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { getClanInfo } from '../../../website/src/core/blitz/getClanInfo';
|
||||||
import CommandWrapper from '../components/CommandWrapper';
|
import CommandWrapper from '../components/CommandWrapper';
|
||||||
import GenericStats from '../components/GenericStats';
|
import GenericStats from '../components/GenericStats';
|
||||||
import NoData from '../components/NoData';
|
import NoData from '../components/NoData';
|
||||||
import TitleBar from '../components/TitleBar';
|
import TitleBar from '../components/TitleBar';
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
|
||||||
import { getClanInfo } from '../core/blitz/getClanInfo';
|
|
||||||
import addClanChoices from '../core/discord/addClanChoices';
|
import addClanChoices from '../core/discord/addClanChoices';
|
||||||
import autocompleteClan from '../core/discord/autocompleteClan';
|
import autocompleteClan from '../core/discord/autocompleteClan';
|
||||||
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
||||||
@@ -72,7 +72,9 @@ export const inactiveCommand = new Promise<CommandRegistry>((resolve) => {
|
|||||||
<TitleBar
|
<TitleBar
|
||||||
title={clanInfo.name}
|
title={clanInfo.name}
|
||||||
image={`https://wotblitz-gc.gcdn.co/icons/clanEmblems1x/clan-icon-v2-${clanInfo.emblem_set_id}.png`}
|
image={`https://wotblitz-gc.gcdn.co/icons/clanEmblems1x/clan-icon-v2-${clanInfo.emblem_set_id}.png`}
|
||||||
description={`${translate('bot.commands.inactive.body.subtitle', [`${threshold}`])} • ${new Date().toLocaleDateString(interaction.locale)}`}
|
description={`${translate('bot.commands.inactive.body.subtitle', [
|
||||||
|
`${threshold}`,
|
||||||
|
])} • ${new Date().toLocaleDateString(interaction.locale)}`}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
{!hasInactiveMembers && (
|
{!hasInactiveMembers && (
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import { teal } from '@radix-ui/colors';
|
import { teal } from '@radix-ui/colors';
|
||||||
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { getClanAccountInfo } from '../../../website/src/core/blitz/getClanAccountInfo';
|
||||||
|
import { linkBlitzAndDiscord } from '../../../website/src/core/blitzkit/linkBlitzAndDiscord';
|
||||||
import { Glow } from '../components/AllStatsOverview/components/HeroStat/components/Glow';
|
import { Glow } from '../components/AllStatsOverview/components/HeroStat/components/Glow';
|
||||||
import CommandWrapper from '../components/CommandWrapper';
|
import CommandWrapper from '../components/CommandWrapper';
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
|
||||||
import { getClanAccountInfo } from '../core/blitz/getClanAccountInfo';
|
|
||||||
import { linkBlitzAndDiscord } from '../core/blitzkit/linkBlitzAndDiscord';
|
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import autocompleteUsername from '../core/discord/autocompleteUsername';
|
import autocompleteUsername from '../core/discord/autocompleteUsername';
|
||||||
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
import { gameDefinitions } from '@blitzkit/core/src/blitzkit/gameDefinitions';
|
|
||||||
import { chunk } from 'lodash';
|
|
||||||
import markdownEscape from 'markdown-escape';
|
|
||||||
import { TANK_CLASSES } from '../components/Tanks/components/Item/constants';
|
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
|
||||||
import getTankStats from '../core/blitz/getTankStats';
|
|
||||||
import {
|
import {
|
||||||
|
TANK_CLASSES,
|
||||||
|
TIER_ROMAN_NUMERALS,
|
||||||
TankDefinition,
|
TankDefinition,
|
||||||
Tier,
|
Tier,
|
||||||
flags,
|
flags,
|
||||||
tankDefinitions,
|
tankDefinitions,
|
||||||
} from '../core/blitzkit/tankDefinitions';
|
} from '@blitzkit/core';
|
||||||
import { TIER_ROMAN_NUMERALS } from '../core/blitzkit/tankDefinitions/constants';
|
import { gameDefinitions } from '@blitzkit/core/src/blitzkit/gameDefinitions';
|
||||||
|
import { chunk } from 'lodash';
|
||||||
|
import markdownEscape from 'markdown-escape';
|
||||||
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import getTankStats from '../../../website/src/core/blitz/getTankStats';
|
||||||
import addTierChoices from '../core/discord/addTierChoices';
|
import addTierChoices from '../core/discord/addTierChoices';
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import autocompleteUsername from '../core/discord/autocompleteUsername';
|
import autocompleteUsername from '../core/discord/autocompleteUsername';
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import markdownEscape from 'markdown-escape';
|
import markdownEscape from 'markdown-escape';
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import autocompleteUsername from '../core/discord/autocompleteUsername';
|
import autocompleteUsername from '../core/discord/autocompleteUsername';
|
||||||
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
||||||
|
|||||||
@@ -1,24 +1,23 @@
|
|||||||
|
import { BkrlFormat, deltaBkrlBlitzStats } from '@blitzkit/core';
|
||||||
import { SlashCommandSubcommandBuilder } from 'discord.js';
|
import { SlashCommandSubcommandBuilder } from 'discord.js';
|
||||||
import markdownEscape from 'markdown-escape';
|
import markdownEscape from 'markdown-escape';
|
||||||
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { getClanAccountInfo } from '../../../website/src/core/blitz/getClanAccountInfo';
|
||||||
|
import { getLeagueFromScore } from '../../../website/src/core/blitz/getLeagueFromScore';
|
||||||
|
import getRatingInfo from '../../../website/src/core/blitz/getRatingInfo';
|
||||||
|
import { getRatingNeighbors } from '../../../website/src/core/blitz/getRatingNeighbors';
|
||||||
|
import { normalizeLeagueIcon } from '../../../website/src/core/blitz/normalizeLeagueIcon';
|
||||||
|
import { emblemURL } from '../../../website/src/core/blitzkit/emblemURL';
|
||||||
|
import getArchivedRatingMidnightLeaderboard from '../../../website/src/core/blitzkit/getArchivedRatingMidnightLeaderboard';
|
||||||
|
import { iconPng } from '../../../website/src/core/blitzkit/iconPng';
|
||||||
import { Glow } from '../components/AllStatsOverview/components/HeroStat/components/Glow';
|
import { Glow } from '../components/AllStatsOverview/components/HeroStat/components/Glow';
|
||||||
import CommandWrapper from '../components/CommandWrapper';
|
import CommandWrapper from '../components/CommandWrapper';
|
||||||
import { DeltaCaret } from '../components/DeltaCaret';
|
import { DeltaCaret } from '../components/DeltaCaret';
|
||||||
import TitleBar from '../components/TitleBar';
|
import TitleBar from '../components/TitleBar';
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
|
||||||
import { getClanAccountInfo } from '../core/blitz/getClanAccountInfo';
|
|
||||||
import { getLeagueFromScore } from '../core/blitz/getLeagueFromScore';
|
|
||||||
import getRatingInfo from '../core/blitz/getRatingInfo';
|
|
||||||
import { getRatingNeighbors } from '../core/blitz/getRatingNeighbors';
|
|
||||||
import { normalizeLeagueIcon } from '../core/blitz/normalizeLeagueIcon';
|
|
||||||
import { emblemURL } from '../core/blitzkit/emblemURL';
|
|
||||||
import getArchivedRatingMidnightLeaderboard from '../core/blitzkit/getArchivedRatingMidnightLeaderboard';
|
|
||||||
import { iconPng } from '../core/blitzkit/iconPng';
|
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
||||||
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
|
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
|
||||||
import { translator } from '../core/localization/translator';
|
import { translator } from '../core/localization/translator';
|
||||||
import { deltaBkrlBlitzStats } from '../core/statistics/deltaBkrlBlitzStats';
|
|
||||||
import { BkrlFormat } from '../core/streams/bkrl';
|
|
||||||
import { CommandRegistry } from '../events/interactionCreate';
|
import { CommandRegistry } from '../events/interactionCreate';
|
||||||
import { theme } from '../stitches.config';
|
import { theme } from '../stitches.config';
|
||||||
|
|
||||||
@@ -122,9 +121,9 @@ export const ratingCommand = new Promise<CommandRegistry>((resolve) => {
|
|||||||
<TitleBar
|
<TitleBar
|
||||||
title={accountInfo.nickname}
|
title={accountInfo.nickname}
|
||||||
image={clanImage}
|
image={clanImage}
|
||||||
description={`${translate(`bot.commands.rating.body.subtitle.${subcommand}`)} • ${new Date().toLocaleDateString(
|
description={`${translate(
|
||||||
interaction.locale,
|
`bot.commands.rating.body.subtitle.${subcommand}`,
|
||||||
)}`}
|
)} • ${new Date().toLocaleDateString(interaction.locale)}`}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
@@ -140,7 +139,9 @@ export const ratingCommand = new Promise<CommandRegistry>((resolve) => {
|
|||||||
padding: 16,
|
padding: 16,
|
||||||
backgroundColor: theme.colors[`appBackground2${leagueTheme}`],
|
backgroundColor: theme.colors[`appBackground2${leagueTheme}`],
|
||||||
borderRadius: 4,
|
borderRadius: 4,
|
||||||
border: `1px solid ${theme.colors[`componentInteractive${leagueTheme}`]}`,
|
border: `1px solid ${
|
||||||
|
theme.colors[`componentInteractive${leagueTheme}`]
|
||||||
|
}`,
|
||||||
display: 'flex',
|
display: 'flex',
|
||||||
alignItems: 'center',
|
alignItems: 'center',
|
||||||
justifyContent: 'space-between',
|
justifyContent: 'space-between',
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
import {
|
||||||
|
BkrlDiscriminatedEntries,
|
||||||
|
FIRST_MINIMAL_ARCHIVED_RATING_SEASON,
|
||||||
|
LEAGUES,
|
||||||
|
Region,
|
||||||
|
} from '@blitzkit/core';
|
||||||
import {
|
import {
|
||||||
APIApplicationCommandOptionChoice,
|
APIApplicationCommandOptionChoice,
|
||||||
Locale,
|
Locale,
|
||||||
@@ -5,22 +11,20 @@ import {
|
|||||||
} from 'discord.js';
|
} from 'discord.js';
|
||||||
import { range } from 'lodash';
|
import { range } from 'lodash';
|
||||||
import markdownEscape from 'markdown-escape';
|
import markdownEscape from 'markdown-escape';
|
||||||
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { getClanAccountInfo } from '../../../website/src/core/blitz/getClanAccountInfo';
|
||||||
|
import getRatingInfo from '../../../website/src/core/blitz/getRatingInfo';
|
||||||
|
import { getRatingLeague } from '../../../website/src/core/blitz/getRatingLeague';
|
||||||
|
import { getRatingNeighbors } from '../../../website/src/core/blitz/getRatingNeighbors';
|
||||||
|
import { isOnGoingRatingSeason } from '../../../website/src/core/blitz/isOnGoingRatingSeason';
|
||||||
|
import { getArchivedLatestSeasonNumber } from '../../../website/src/core/blitzkit/getArchivedLatestSeasonNumber';
|
||||||
|
import getArchivedRatingInfo from '../../../website/src/core/blitzkit/getArchivedRatingInfo';
|
||||||
|
import { getArchivedRatingLeaderboard } from '../../../website/src/core/blitzkit/getArchivedRatingLeaderboard';
|
||||||
|
import getArchivedRatingMidnightLeaderboard from '../../../website/src/core/blitzkit/getArchivedRatingMidnightLeaderboard';
|
||||||
|
import { UserError } from '../../../website/src/hooks/userError';
|
||||||
import CommandWrapper from '../components/CommandWrapper';
|
import CommandWrapper from '../components/CommandWrapper';
|
||||||
import * as Leaderboard from '../components/Leaderboard';
|
import * as Leaderboard from '../components/Leaderboard';
|
||||||
import TitleBar from '../components/TitleBar';
|
import TitleBar from '../components/TitleBar';
|
||||||
import { LEAGUES } from '../constants/leagues';
|
|
||||||
import { FIRST_MINIMAL_ARCHIVED_RATING_SEASON } from '../constants/rating';
|
|
||||||
import { Region } from '../constants/regions';
|
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
|
||||||
import { getClanAccountInfo } from '../core/blitz/getClanAccountInfo';
|
|
||||||
import getRatingInfo from '../core/blitz/getRatingInfo';
|
|
||||||
import { getRatingLeague } from '../core/blitz/getRatingLeague';
|
|
||||||
import { getRatingNeighbors } from '../core/blitz/getRatingNeighbors';
|
|
||||||
import { isOnGoingRatingSeason } from '../core/blitz/isOnGoingRatingSeason';
|
|
||||||
import { getArchivedLatestSeasonNumber } from '../core/blitzkit/getArchivedLatestSeasonNumber';
|
|
||||||
import getArchivedRatingInfo from '../core/blitzkit/getArchivedRatingInfo';
|
|
||||||
import { getArchivedRatingLeaderboard } from '../core/blitzkit/getArchivedRatingLeaderboard';
|
|
||||||
import getArchivedRatingMidnightLeaderboard from '../core/blitzkit/getArchivedRatingMidnightLeaderboard';
|
|
||||||
import addRegionChoices from '../core/discord/addRegionChoices';
|
import addRegionChoices from '../core/discord/addRegionChoices';
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import autocompleteUsername from '../core/discord/autocompleteUsername';
|
import autocompleteUsername from '../core/discord/autocompleteUsername';
|
||||||
@@ -28,9 +32,7 @@ import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
|||||||
import { localizationObject } from '../core/discord/localizationObject';
|
import { localizationObject } from '../core/discord/localizationObject';
|
||||||
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
|
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
|
||||||
import { translator } from '../core/localization/translator';
|
import { translator } from '../core/localization/translator';
|
||||||
import { BkrlDiscriminatedEntries } from '../core/streams/bkrl';
|
|
||||||
import { CommandRegistry } from '../events/interactionCreate';
|
import { CommandRegistry } from '../events/interactionCreate';
|
||||||
import { UserError } from '../hooks/userError';
|
|
||||||
|
|
||||||
export interface RatingPlayer {
|
export interface RatingPlayer {
|
||||||
spa_id: number;
|
spa_id: number;
|
||||||
@@ -254,7 +256,7 @@ export const ratingLeaderboardCommand = new Promise<CommandRegistry>(
|
|||||||
name_localizations: localizationObject(
|
name_localizations: localizationObject(
|
||||||
`common.leagues.${name}`,
|
`common.leagues.${name}`,
|
||||||
),
|
),
|
||||||
}) satisfies APIApplicationCommandOptionChoice<string>,
|
} satisfies APIApplicationCommandOptionChoice<string>),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
.setRequired(true);
|
.setRequired(true);
|
||||||
@@ -277,8 +279,8 @@ export const ratingLeaderboardCommand = new Promise<CommandRegistry>(
|
|||||||
const season = seasonOption
|
const season = seasonOption
|
||||||
? parseInt(seasonOption)
|
? parseInt(seasonOption)
|
||||||
: onGoingSeason
|
: onGoingSeason
|
||||||
? latestArchivedSeasonNumber + 1
|
? latestArchivedSeasonNumber + 1
|
||||||
: latestArchivedSeasonNumber;
|
: latestArchivedSeasonNumber;
|
||||||
const isCurrentSeason = season === latestArchivedSeasonNumber + 1;
|
const isCurrentSeason = season === latestArchivedSeasonNumber + 1;
|
||||||
let titleName: string;
|
let titleName: string;
|
||||||
let titleImage: string | undefined;
|
let titleImage: string | undefined;
|
||||||
@@ -311,7 +313,7 @@ export const ratingLeaderboardCommand = new Promise<CommandRegistry>(
|
|||||||
position: player.number,
|
position: player.number,
|
||||||
clan: player.clan_tag,
|
clan: player.clan_tag,
|
||||||
nickname: player.nickname,
|
nickname: player.nickname,
|
||||||
}) satisfies SimplifiedPlayer,
|
} satisfies SimplifiedPlayer),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
: await getArchivedRatingLeaderboard(region, season!).then(
|
: await getArchivedRatingLeaderboard(region, season!).then(
|
||||||
@@ -347,7 +349,7 @@ export const ratingLeaderboardCommand = new Promise<CommandRegistry>(
|
|||||||
'bot.commands.rating_leaderboard.body.deleted_player',
|
'bot.commands.rating_leaderboard.body.deleted_player',
|
||||||
[`${player.id}`],
|
[`${player.id}`],
|
||||||
),
|
),
|
||||||
}) satisfies SimplifiedPlayer,
|
} satisfies SimplifiedPlayer),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
@@ -396,7 +398,7 @@ export const ratingLeaderboardCommand = new Promise<CommandRegistry>(
|
|||||||
score: player.score,
|
score: player.score,
|
||||||
clan: player.clan_tag,
|
clan: player.clan_tag,
|
||||||
nickname: player.nickname,
|
nickname: player.nickname,
|
||||||
}) satisfies SimplifiedPlayer,
|
} satisfies SimplifiedPlayer),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
: await getArchivedRatingLeaderboard(region, season!).then(
|
: await getArchivedRatingLeaderboard(region, season!).then(
|
||||||
|
|||||||
@@ -1,19 +1,21 @@
|
|||||||
|
import {
|
||||||
|
idToRegion,
|
||||||
|
tankDefinitions,
|
||||||
|
TIER_ROMAN_NUMERALS,
|
||||||
|
} from '@blitzkit/core';
|
||||||
import { tankIcon } from '@blitzkit/core/src/blitzkit/tankIcon';
|
import { tankIcon } from '@blitzkit/core/src/blitzkit/tankIcon';
|
||||||
|
import calculateWN8 from '@blitzkit/core/src/statistics/calculateWN8';
|
||||||
import { clamp } from 'lodash';
|
import { clamp } from 'lodash';
|
||||||
|
import { getClanAccountInfo } from '../../../website/src/core/blitz/getClanAccountInfo';
|
||||||
|
import { emblemURL } from '../../../website/src/core/blitzkit/emblemURL';
|
||||||
|
import { iconPng } from '../../../website/src/core/blitzkit/iconPng';
|
||||||
|
import { mapDefinitions } from '../../../website/src/core/blitzkit/mapDefinitions';
|
||||||
|
import { RenderConfiguration } from '../../../website/src/core/blitzkit/renderConfiguration';
|
||||||
|
import { tankAverages } from '../../../website/src/core/blitzstars/tankAverages';
|
||||||
import CommandWrapper from '../components/CommandWrapper';
|
import CommandWrapper from '../components/CommandWrapper';
|
||||||
import TitleBar from '../components/TitleBar';
|
import TitleBar from '../components/TitleBar';
|
||||||
import { getClanAccountInfo } from '../core/blitz/getClanAccountInfo';
|
|
||||||
import { idToRegion } from '../core/blitz/idToRegion';
|
|
||||||
import { emblemURL } from '../core/blitzkit/emblemURL';
|
|
||||||
import { iconPng } from '../core/blitzkit/iconPng';
|
|
||||||
import { mapDefinitions } from '../core/blitzkit/mapDefinitions';
|
|
||||||
import { RenderConfiguration } from '../core/blitzkit/renderConfiguration';
|
|
||||||
import { tankDefinitions } from '../core/blitzkit/tankDefinitions';
|
|
||||||
import { TIER_ROMAN_NUMERALS } from '../core/blitzkit/tankDefinitions/constants';
|
|
||||||
import { tankAverages } from '../core/blitzstars/tankAverages';
|
|
||||||
import buttonLink from '../core/discord/buttonLink';
|
import buttonLink from '../core/discord/buttonLink';
|
||||||
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
||||||
import calculateWN8 from '../core/statistics/calculateWN8';
|
|
||||||
import { CommandRegistry } from '../events/interactionCreate';
|
import { CommandRegistry } from '../events/interactionCreate';
|
||||||
import { theme } from '../stitches.config';
|
import { theme } from '../stitches.config';
|
||||||
|
|
||||||
|
|||||||
@@ -1,22 +1,22 @@
|
|||||||
import { Locale, escapeMarkdown } from 'discord.js';
|
import {
|
||||||
|
asset,
|
||||||
|
equipmentPriceMatrix,
|
||||||
|
TANK_ICONS,
|
||||||
|
tankDefinitions,
|
||||||
|
TIER_ROMAN_NUMERALS,
|
||||||
|
} from '@blitzkit/core';
|
||||||
|
import { escapeMarkdown, Locale } from 'discord.js';
|
||||||
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { getClanAccountInfo } from '../../../website/src/core/blitz/getClanAccountInfo';
|
||||||
|
import getTankStats from '../../../website/src/core/blitz/getTankStats';
|
||||||
|
import resolveTankId from '../../../website/src/core/blitz/resolveTankId';
|
||||||
|
import { buildTechTreeLine } from '../../../website/src/core/blitzkit/buildTechTreeLine';
|
||||||
|
import { emblemURL } from '../../../website/src/core/blitzkit/emblemURL';
|
||||||
|
import { iconPng } from '../../../website/src/core/blitzkit/iconPng';
|
||||||
|
import { resolveAncestry } from '../../../website/src/core/blitzkit/resolveAncestry';
|
||||||
|
import { tankIconPng } from '../../../website/src/core/blitzkit/tankIconPng';
|
||||||
import CommandWrapper from '../components/CommandWrapper';
|
import CommandWrapper from '../components/CommandWrapper';
|
||||||
import TitleBar from '../components/TitleBar';
|
import TitleBar from '../components/TitleBar';
|
||||||
import { equipmentPriceMatrix } from '../constants/equipmentPrice';
|
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
|
||||||
import { getClanAccountInfo } from '../core/blitz/getClanAccountInfo';
|
|
||||||
import getTankStats from '../core/blitz/getTankStats';
|
|
||||||
import resolveTankId from '../core/blitz/resolveTankId';
|
|
||||||
import { asset } from '../core/blitzkit/asset';
|
|
||||||
import { buildTechTreeLine } from '../core/blitzkit/buildTechTreeLine';
|
|
||||||
import { emblemURL } from '../core/blitzkit/emblemURL';
|
|
||||||
import { iconPng } from '../core/blitzkit/iconPng';
|
|
||||||
import { resolveAncestry } from '../core/blitzkit/resolveAncestry';
|
|
||||||
import { tankDefinitions } from '../core/blitzkit/tankDefinitions';
|
|
||||||
import {
|
|
||||||
TANK_ICONS,
|
|
||||||
TIER_ROMAN_NUMERALS,
|
|
||||||
} from '../core/blitzkit/tankDefinitions/constants';
|
|
||||||
import { tankIconPng } from '../core/blitzkit/tankIconPng';
|
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import autocompleteTanks from '../core/discord/autocompleteTanks';
|
import autocompleteTanks from '../core/discord/autocompleteTanks';
|
||||||
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
||||||
@@ -220,7 +220,9 @@ export const researchCommand = new Promise<CommandRegistry>((resolve) => {
|
|||||||
<TitleBar
|
<TitleBar
|
||||||
title={nickname}
|
title={nickname}
|
||||||
image={clanImage}
|
image={clanImage}
|
||||||
description={`${t`bot.commands.research.body.subtitle`} • ${targetTank.name}`}
|
description={`${t`bot.commands.research.body.subtitle`} • ${
|
||||||
|
targetTank.name
|
||||||
|
}`}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
|
import { Region } from '@blitzkit/core';
|
||||||
import { Locale } from 'discord.js';
|
import { Locale } from 'discord.js';
|
||||||
import markdownEscape from 'markdown-escape';
|
import markdownEscape from 'markdown-escape';
|
||||||
import { Region } from '../constants/regions';
|
import fetchBlitz from '../../../website/src/core/blitz/fetchBlitz';
|
||||||
import fetchBlitz from '../core/blitz/fetchBlitz';
|
|
||||||
import addClanChoices from '../core/discord/addClanChoices';
|
import addClanChoices from '../core/discord/addClanChoices';
|
||||||
import addRegionChoices from '../core/discord/addRegionChoices';
|
import addRegionChoices from '../core/discord/addRegionChoices';
|
||||||
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
|
import { Region } from '@blitzkit/core';
|
||||||
import { Locale } from 'discord.js';
|
import { Locale } from 'discord.js';
|
||||||
import markdownEscape from 'markdown-escape';
|
import markdownEscape from 'markdown-escape';
|
||||||
import { Region } from '../constants/regions';
|
import fetchBlitz from '../../../website/src/core/blitz/fetchBlitz';
|
||||||
import fetchBlitz from '../core/blitz/fetchBlitz';
|
import { AccountList } from '../../../website/src/core/blitz/searchPlayersAcrossRegions';
|
||||||
import { AccountList } from '../core/blitz/searchPlayersAcrossRegions';
|
import { usernamePattern } from '../../../website/src/core/blitz/searchPlayersAcrossRegions/constants';
|
||||||
import { usernamePattern } from '../core/blitz/searchPlayersAcrossRegions/constants';
|
|
||||||
import addRegionChoices from '../core/discord/addRegionChoices';
|
import addRegionChoices from '../core/discord/addRegionChoices';
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
import { createLocalizedCommand } from '../core/discord/createLocalizedCommand';
|
||||||
|
|||||||
@@ -1,14 +1,15 @@
|
|||||||
import getStatsInPeriod from '@blitzkit/core/src/blitzstars/getStatsInPeriod';
|
import { StatFilters, filterStats } from '@blitzkit/core';
|
||||||
import { Locale } from 'discord.js';
|
import { Locale } from 'discord.js';
|
||||||
|
import { getAccountInfo } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { getClanAccountInfo } from '../../../website/src/core/blitz/getClanAccountInfo';
|
||||||
|
import { emblemURL } from '../../../website/src/core/blitzkit/emblemURL';
|
||||||
|
import { filtersToDescription } from '../../../website/src/core/blitzkit/filtersToDescription';
|
||||||
|
import { getBlitzStarsLinkButton } from '../../../website/src/core/blitzstars/getBlitzStarsLinkButton';
|
||||||
import AllStatsOverview from '../components/AllStatsOverview';
|
import AllStatsOverview from '../components/AllStatsOverview';
|
||||||
import CommandWrapper from '../components/CommandWrapper';
|
import CommandWrapper from '../components/CommandWrapper';
|
||||||
import NoData from '../components/NoData';
|
import NoData from '../components/NoData';
|
||||||
import TitleBar from '../components/TitleBar';
|
import TitleBar from '../components/TitleBar';
|
||||||
import { getAccountInfo } from '../core/blitz/getAccountInfo';
|
import getStatsInPeriod from '../core/blitzstars/getStatsInPeriod';
|
||||||
import { getClanAccountInfo } from '../core/blitz/getClanAccountInfo';
|
|
||||||
import { emblemURL } from '../core/blitzkit/emblemURL';
|
|
||||||
import { filtersToDescription } from '../core/blitzkit/filtersToDescription';
|
|
||||||
import { getBlitzStarsLinkButton } from '../core/blitzstars/getBlitzStarsLinkButton';
|
|
||||||
import addPeriodicFilterOptions from '../core/discord/addPeriodicFilterOptions';
|
import addPeriodicFilterOptions from '../core/discord/addPeriodicFilterOptions';
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import autocompleteTanks from '../core/discord/autocompleteTanks';
|
import autocompleteTanks from '../core/discord/autocompleteTanks';
|
||||||
@@ -27,7 +28,6 @@ import resolvePlayerFromButton from '../core/discord/resolvePlayerFromButton';
|
|||||||
import resolvePlayerFromCommand, {
|
import resolvePlayerFromCommand, {
|
||||||
ResolvedPlayer,
|
ResolvedPlayer,
|
||||||
} from '../core/discord/resolvePlayerFromCommand';
|
} from '../core/discord/resolvePlayerFromCommand';
|
||||||
import { StatFilters, filterStats } from '../core/statistics/filterStats';
|
|
||||||
import { CommandRegistry } from '../events/interactionCreate';
|
import { CommandRegistry } from '../events/interactionCreate';
|
||||||
|
|
||||||
async function render(
|
async function render(
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { gameDefinitions } from '@blitzkit/core/src/blitzkit/gameDefinitions';
|
import { gameDefinitions } from '@blitzkit/core/src/blitzkit/gameDefinitions';
|
||||||
import { getBlitzStarsLinkButton } from '../core/blitzstars/getBlitzStarsLinkButton';
|
import { getBlitzStarsLinkButton } from '../../../website/src/core/blitzstars/getBlitzStarsLinkButton';
|
||||||
import { addFilterOptions } from '../core/discord/addFilterOptions';
|
import { addFilterOptions } from '../core/discord/addFilterOptions';
|
||||||
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
import addUsernameChoices from '../core/discord/addUsernameChoices';
|
||||||
import autocompleteTanks from '../core/discord/autocompleteTanks';
|
import autocompleteTanks from '../core/discord/autocompleteTanks';
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
import { Percentile } from '@blitzkit/core/src/statistics/percentiles';
|
import { Percentile } from '@blitzkit/core/src/statistics/percentiles';
|
||||||
import { Locale } from 'discord.js';
|
import { Locale } from 'discord.js';
|
||||||
import { SupplementaryStats } from '../../core/blitz/getAccountInfo';
|
import { SupplementaryStats } from '../../../../website/src/core/blitz/getAccountInfo';
|
||||||
import { translator } from '../../core/localization/translator';
|
|
||||||
import getWN8Percentile from '../../core/statistics/getWN8Percentile';
|
|
||||||
import { PERCENTILE_COLORS } from '../PercentileIndicator/constants';
|
import { PERCENTILE_COLORS } from '../PercentileIndicator/constants';
|
||||||
import { HeroStat } from './components/HeroStat';
|
import { HeroStat } from './components/HeroStat';
|
||||||
import {
|
import {
|
||||||
WN8SurroundingStat,
|
WN8SurroundingStat,
|
||||||
WN8SurroundingStatAlign,
|
WN8SurroundingStatAlign,
|
||||||
} from './components/WN8SurroundingStat';
|
} from './components/WN8SurroundingStat';
|
||||||
|
import { translator } from '../../core/localization/translator';
|
||||||
|
import getWN8Percentile from '@blitzkit/core/src/statistics/getWN8Percentile';
|
||||||
|
|
||||||
export interface AllStatsOverviewProps {
|
export interface AllStatsOverviewProps {
|
||||||
stats: {
|
stats: {
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
|
import { TankClass, TreeType } from '@blitzkit/core';
|
||||||
import { Percentile } from '@blitzkit/core/src/statistics/percentiles';
|
import { Percentile } from '@blitzkit/core/src/statistics/percentiles';
|
||||||
import { createColors } from 'bepaint';
|
import { createColors } from 'bepaint';
|
||||||
import {
|
import {
|
||||||
AccentColor,
|
AccentColor,
|
||||||
GrayColor,
|
GrayColor,
|
||||||
PALETTES,
|
PALETTES,
|
||||||
} from '../../../constants/radixColors';
|
} from '../../../core/radix/radixColors';
|
||||||
import { TankClass, TreeType } from '../../Tanks';
|
|
||||||
import { TREE_TYPE_ICONS } from '../../Tanks/components/Item/constants';
|
import { TREE_TYPE_ICONS } from '../../Tanks/components/Item/constants';
|
||||||
import { RowStat } from './RowStat';
|
import { RowStat } from './RowStat';
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import {
|
|||||||
AccentColor,
|
AccentColor,
|
||||||
GrayColor,
|
GrayColor,
|
||||||
PALETTES,
|
PALETTES,
|
||||||
} from '../../../constants/radixColors';
|
} from '../../../core/radix/radixColors';
|
||||||
import PercentileIndicator from '../../PercentileIndicator';
|
import PercentileIndicator from '../../PercentileIndicator';
|
||||||
|
|
||||||
interface RowStatProps {
|
interface RowStatProps {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
|
import { BlitzStats } from '@blitzkit/core';
|
||||||
import isNumber from '@blitzkit/core/src/math/isNumber';
|
import isNumber from '@blitzkit/core/src/math/isNumber';
|
||||||
|
import getWN8Percentile from '@blitzkit/core/src/statistics/getWN8Percentile';
|
||||||
import { Locale } from 'discord.js';
|
import { Locale } from 'discord.js';
|
||||||
import { SupplementaryStats } from '../../core/blitz/getAccountInfo';
|
import { SupplementaryStats } from '../../../../website/src/core/blitz/getAccountInfo';
|
||||||
import { translator } from '../../core/localization/translator';
|
import { translator } from '../../core/localization/translator';
|
||||||
import { BlitzStats } from '../../core/statistics/compositeStats/constants';
|
|
||||||
import getWN8Percentile from '../../core/statistics/getWN8Percentile';
|
|
||||||
import { Card } from './components/Card';
|
import { Card } from './components/Card';
|
||||||
import { Root } from './components/Root';
|
import { Root } from './components/Root';
|
||||||
import { Row } from './components/Row';
|
import { Row } from './components/Row';
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
import { TankClass, TreeType } from '.';
|
|
||||||
import {
|
import {
|
||||||
TANK_ICONS,
|
TANK_ICONS,
|
||||||
TANK_ICONS_COLLECTOR,
|
TANK_ICONS_COLLECTOR,
|
||||||
TANK_ICONS_PREMIUM,
|
TANK_ICONS_PREMIUM,
|
||||||
} from '../../../../core/blitzkit/tankDefinitions/constants';
|
TankClass,
|
||||||
|
TreeType,
|
||||||
|
} from '@blitzkit/core';
|
||||||
|
|
||||||
export const TREE_TYPE_NAMES: Record<TreeType, string> = {
|
export const TREE_TYPE_NAMES: Record<TreeType, string> = {
|
||||||
researchable: 'Tech tree',
|
researchable: 'Tech tree',
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
|
import { TankClass, TreeType } from '@blitzkit/core';
|
||||||
import { theme } from '../../../../stitches.config';
|
import { theme } from '../../../../stitches.config';
|
||||||
import { TANK_CLASSES, TREE_TYPES, TREE_TYPE_ICONS } from './constants';
|
import { TREE_TYPE_ICONS } from './constants';
|
||||||
|
|
||||||
export type TankClass = (typeof TANK_CLASSES)[number];
|
|
||||||
export type TreeType = (typeof TREE_TYPES)[number];
|
|
||||||
|
|
||||||
export interface ItemProps {
|
export interface ItemProps {
|
||||||
tankType?: TankClass;
|
tankType?: TankClass;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Tier } from '../core/blitzkit/tankDefinitions';
|
import { Tier } from '@blitzkit/core';
|
||||||
import { theme } from '../stitches.config';
|
import { theme } from '../stitches.config';
|
||||||
|
|
||||||
export type TierWeightsRecord = Partial<Record<Tier, number>>;
|
export type TierWeightsRecord = Partial<Record<Tier, number>>;
|
||||||
|
|||||||
+2
-3
@@ -1,6 +1,5 @@
|
|||||||
import { usersDatabase } from '../../databases/users';
|
import { idToRegion, usersDatabase } from '@blitzkit/core';
|
||||||
import { idToRegion } from '../blitz/idToRegion';
|
import { flagUserActivity } from '../../../../website/src/core/blitzkit/flagUserActivity';
|
||||||
import { flagUserActivity } from './flagUserActivity';
|
|
||||||
|
|
||||||
export async function getBlitzFromDiscord(discordId: bigint) {
|
export async function getBlitzFromDiscord(discordId: bigint) {
|
||||||
const unique = await usersDatabase.discordUser.findUnique({
|
const unique = await usersDatabase.discordUser.findUnique({
|
||||||
File renamed without changes.
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
import { Region } from '../../constants/regions';
|
import { Region } from '@blitzkit/core';
|
||||||
|
import getTimeDaysAgo from '../../../../website/src/core/blitzkit/getTimeDaysAgo';
|
||||||
import { PeriodSize } from '../discord/addPeriodSubCommands';
|
import { PeriodSize } from '../discord/addPeriodSubCommands';
|
||||||
import getTimeDaysAgo from './getTimeDaysAgo';
|
|
||||||
|
|
||||||
export default function getPeriodStart(region: Region, period: PeriodSize) {
|
export default function getPeriodStart(region: Region, period: PeriodSize) {
|
||||||
if (period === 'career') return 0;
|
if (period === 'career') return 0;
|
||||||
File renamed without changes.
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
|
import { RenderConfiguration } from '../../../../website/src/core/blitzkit/renderConfiguration';
|
||||||
import jsxToSvg from './jsxToSvg';
|
import jsxToSvg from './jsxToSvg';
|
||||||
import { RenderConfiguration } from './renderConfiguration';
|
|
||||||
import { svgToPngThreaded } from './svgToPngThreaded';
|
import { svgToPngThreaded } from './svgToPngThreaded';
|
||||||
|
|
||||||
export default async function jsxToPngThreaded(
|
export default async function jsxToPngThreaded(
|
||||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
import { readFile } from 'fs/promises';
|
import { readFile } from 'fs/promises';
|
||||||
import satori from 'satori';
|
import satori from 'satori';
|
||||||
import { RenderConfiguration } from '../renderConfiguration';
|
import { RenderConfiguration } from '../../../../../website/src/core/blitzkit/renderConfiguration';
|
||||||
import robotoBlack from './Roboto-Black.ttf';
|
import robotoBlack from './Roboto-Black.ttf';
|
||||||
import robotoBold from './Roboto-Bold.ttf';
|
import robotoBold from './Roboto-Bold.ttf';
|
||||||
import roboto from './Roboto.ttf';
|
import roboto from './Roboto.ttf';
|
||||||
File renamed without changes.
File renamed without changes.
@@ -1,11 +1,9 @@
|
|||||||
|
import { BlitzStats, emptyAllStats, Region } from '@blitzkit/core';
|
||||||
import { Locale } from 'discord.js';
|
import { Locale } from 'discord.js';
|
||||||
import { Region } from '../../../../../src/constants/regions';
|
|
||||||
import getTankHistories, {
|
import getTankHistories, {
|
||||||
TankHistories,
|
TankHistories,
|
||||||
TankHistoryRaw,
|
TankHistoryRaw,
|
||||||
} from '../../../../../src/core/blitzkit/getTankHistories';
|
} from './getTankHistories';
|
||||||
import { BlitzStats } from '../../../../../src/core/statistics/compositeStats/constants';
|
|
||||||
import { emptyAllStats } from './constants';
|
|
||||||
|
|
||||||
const emptyTankHistoryNode: TankHistoryRaw = {
|
const emptyTankHistoryNode: TankHistoryRaw = {
|
||||||
account_id: 0,
|
account_id: 0,
|
||||||
@@ -106,5 +104,3 @@ export default async function getStatsInPeriod(
|
|||||||
|
|
||||||
return { diff, order } satisfies DiffedTankStats;
|
return { diff, order } satisfies DiffedTankStats;
|
||||||
}
|
}
|
||||||
|
|
||||||
export * from './constants';
|
|
||||||
+4
-3
@@ -1,12 +1,13 @@
|
|||||||
import { emptyAllStats } from '@blitzkit/core/src/blitzstars/getStatsInPeriod/constants';
|
import { Region, emptyAllStats } from '@blitzkit/core';
|
||||||
import { Region } from '../../constants/regions';
|
import { Locale } from 'discord.js';
|
||||||
|
import getTankStats from '../../../../website/src/core/blitz/getTankStats';
|
||||||
|
import { UserError } from '../../../../website/src/hooks/userError';
|
||||||
import {
|
import {
|
||||||
GetHistoriesOptions,
|
GetHistoriesOptions,
|
||||||
Histories,
|
Histories,
|
||||||
History,
|
History,
|
||||||
getHistoriesDefaultOptions,
|
getHistoriesDefaultOptions,
|
||||||
} from '../../types/histories';
|
} from '../../types/histories';
|
||||||
import getTankStats from '../blitz/getTankStats';
|
|
||||||
import { translator } from '../localization/translator';
|
import { translator } from '../localization/translator';
|
||||||
|
|
||||||
export interface TankHistory extends History {
|
export interface TankHistory extends History {
|
||||||
File renamed without changes.
+5
-7
@@ -1,13 +1,11 @@
|
|||||||
|
import { TANK_CLASSES, TREE_TYPES } from '@blitzkit/core';
|
||||||
import {
|
import {
|
||||||
APIApplicationCommandOptionChoice,
|
APIApplicationCommandOptionChoice,
|
||||||
Locale,
|
Locale,
|
||||||
SlashCommandBuilder,
|
SlashCommandBuilder,
|
||||||
SlashCommandSubcommandBuilder,
|
SlashCommandSubcommandBuilder,
|
||||||
} from 'discord.js';
|
} from 'discord.js';
|
||||||
import {
|
import {} from '../../components/Tanks/components/Item/constants';
|
||||||
TANK_CLASSES,
|
|
||||||
TREE_TYPES,
|
|
||||||
} from '../../components/Tanks/components/Item/constants';
|
|
||||||
import { translator } from '../localization/translator';
|
import { translator } from '../localization/translator';
|
||||||
import addTankChoices from './addTankChoices';
|
import addTankChoices from './addTankChoices';
|
||||||
import addTierChoices from './addTierChoices';
|
import addTierChoices from './addTierChoices';
|
||||||
@@ -41,7 +39,7 @@ export function addFilterOptions<
|
|||||||
name_localizations: localizationObject(
|
name_localizations: localizationObject(
|
||||||
`common.nations.${nation}`,
|
`common.nations.${nation}`,
|
||||||
),
|
),
|
||||||
}) satisfies APIApplicationCommandOptionChoice,
|
} satisfies APIApplicationCommandOptionChoice),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
.setRequired(false),
|
.setRequired(false),
|
||||||
@@ -70,7 +68,7 @@ export function addFilterOptions<
|
|||||||
name_localizations: localizationObject(
|
name_localizations: localizationObject(
|
||||||
`common.tank_class_short.${tankType}`,
|
`common.tank_class_short.${tankType}`,
|
||||||
),
|
),
|
||||||
}) satisfies APIApplicationCommandOptionChoice,
|
} satisfies APIApplicationCommandOptionChoice),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
.setRequired(false),
|
.setRequired(false),
|
||||||
@@ -98,7 +96,7 @@ export function addFilterOptions<
|
|||||||
name_localizations: localizationObject(
|
name_localizations: localizationObject(
|
||||||
`common.tree_type.${treeType}`,
|
`common.tree_type.${treeType}`,
|
||||||
),
|
),
|
||||||
}) satisfies APIApplicationCommandOptionChoice,
|
} satisfies APIApplicationCommandOptionChoice),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
.setRequired(false),
|
.setRequired(false),
|
||||||
File renamed without changes.
File renamed without changes.
+2
-2
@@ -1,9 +1,9 @@
|
|||||||
|
import { REGIONS } from '@blitzkit/core';
|
||||||
import {
|
import {
|
||||||
APIApplicationCommandOptionChoice,
|
APIApplicationCommandOptionChoice,
|
||||||
Locale,
|
Locale,
|
||||||
SlashCommandStringOption,
|
SlashCommandStringOption,
|
||||||
} from 'discord.js';
|
} from 'discord.js';
|
||||||
import { REGIONS } from '../../constants/regions';
|
|
||||||
import { translator } from '../localization/translator';
|
import { translator } from '../localization/translator';
|
||||||
import { localizationObject } from './localizationObject';
|
import { localizationObject } from './localizationObject';
|
||||||
|
|
||||||
@@ -26,7 +26,7 @@ export default function addRegionChoices(option: SlashCommandStringOption) {
|
|||||||
name_localizations: localizationObject(
|
name_localizations: localizationObject(
|
||||||
`common.regions.normal.${region}`,
|
`common.regions.normal.${region}`,
|
||||||
),
|
),
|
||||||
}) satisfies APIApplicationCommandOptionChoice,
|
} satisfies APIApplicationCommandOptionChoice),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
.setRequired(true);
|
.setRequired(true);
|
||||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+1
-1
@@ -3,7 +3,7 @@ import {
|
|||||||
AutocompleteInteraction,
|
AutocompleteInteraction,
|
||||||
CacheType,
|
CacheType,
|
||||||
} from 'discord.js';
|
} from 'discord.js';
|
||||||
import searchClansAcrossRegions from '../../blitz/searchClansAcrossRegions';
|
import searchClansAcrossRegions from '../../../../../website/src/core/blitz/searchClansAcrossRegions';
|
||||||
import { translator } from '../../localization/translator';
|
import { translator } from '../../localization/translator';
|
||||||
import { DISCORD_CHOICES_MAX_NAME_SIZE, OVERFLOW_SUFFIX } from './constants';
|
import { DISCORD_CHOICES_MAX_NAME_SIZE, OVERFLOW_SUFFIX } from './constants';
|
||||||
|
|
||||||
+1
-1
@@ -4,11 +4,11 @@ import {
|
|||||||
CacheType,
|
CacheType,
|
||||||
} from 'discord.js';
|
} from 'discord.js';
|
||||||
import { go } from 'fuzzysort';
|
import { go } from 'fuzzysort';
|
||||||
import { tankNames } from '../blitzkit/tankDefinitions/tankNames';
|
|
||||||
import {
|
import {
|
||||||
DISCORD_CHOICES_MAX_NAME_SIZE,
|
DISCORD_CHOICES_MAX_NAME_SIZE,
|
||||||
OVERFLOW_SUFFIX,
|
OVERFLOW_SUFFIX,
|
||||||
} from './autocompleteClan/constants';
|
} from './autocompleteClan/constants';
|
||||||
|
import { tankNames } from '@blitzkit/core';
|
||||||
|
|
||||||
export const tankNamesTechTreeOnly = tankNames.then((names) =>
|
export const tankNamesTechTreeOnly = tankNames.then((names) =>
|
||||||
names.filter((tank) => tank.treeType === 'researchable'),
|
names.filter((tank) => tank.treeType === 'researchable'),
|
||||||
+1
-1
@@ -3,7 +3,7 @@ import {
|
|||||||
AutocompleteInteraction,
|
AutocompleteInteraction,
|
||||||
CacheType,
|
CacheType,
|
||||||
} from 'discord.js';
|
} from 'discord.js';
|
||||||
import searchPlayersAcrossRegions from '../blitz/searchPlayersAcrossRegions';
|
import searchPlayersAcrossRegions from '../../../../website/src/core/blitz/searchPlayersAcrossRegions';
|
||||||
import { translator } from '../localization/translator';
|
import { translator } from '../localization/translator';
|
||||||
import {
|
import {
|
||||||
DISCORD_CHOICES_MAX_NAME_SIZE,
|
DISCORD_CHOICES_MAX_NAME_SIZE,
|
||||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
import { EmbedBuilder } from 'discord.js';
|
import { EmbedBuilder } from 'discord.js';
|
||||||
import { ACCENT_COLOR } from '../../constants/colors';
|
import { ACCENT_COLOR } from './colors';
|
||||||
|
|
||||||
export default function embedInfo(title: string, description: string) {
|
export default function embedInfo(title: string, description: string) {
|
||||||
const embed = new EmbedBuilder()
|
const embed = new EmbedBuilder()
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
import { EmbedBuilder } from 'discord.js';
|
import { EmbedBuilder } from 'discord.js';
|
||||||
import { NEGATIVE_COLOR } from '../../constants/colors';
|
import { NEGATIVE_COLOR } from './colors';
|
||||||
|
|
||||||
export default function embedNegative(title: string, description: string) {
|
export default function embedNegative(title: string, description: string) {
|
||||||
return new EmbedBuilder()
|
return new EmbedBuilder()
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
import { EmbedBuilder } from 'discord.js';
|
import { EmbedBuilder } from 'discord.js';
|
||||||
import { POSITIVE_COLOR } from '../../constants/colors';
|
import { POSITIVE_COLOR } from './colors';
|
||||||
|
|
||||||
export default function embedPositive(title: string, description: string) {
|
export default function embedPositive(title: string, description: string) {
|
||||||
return new EmbedBuilder()
|
return new EmbedBuilder()
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
import { EmbedBuilder } from 'discord.js';
|
import { EmbedBuilder } from 'discord.js';
|
||||||
import { WARNING_COLOR } from '../../constants/colors';
|
import { WARNING_COLOR } from './colors';
|
||||||
|
|
||||||
export default function embedWarning(title: string, description: string) {
|
export default function embedWarning(title: string, description: string) {
|
||||||
return new EmbedBuilder()
|
return new EmbedBuilder()
|
||||||
File renamed without changes.
+1
-2
@@ -1,6 +1,5 @@
|
|||||||
|
import { StatFilters, TreeType } from '@blitzkit/core';
|
||||||
import { ButtonInteraction } from 'discord.js';
|
import { ButtonInteraction } from 'discord.js';
|
||||||
import { TreeType } from '../../components/Tanks';
|
|
||||||
import { StatFilters } from '../statistics/filterStats';
|
|
||||||
|
|
||||||
export function getFiltersFromButton(interaction: ButtonInteraction) {
|
export function getFiltersFromButton(interaction: ButtonInteraction) {
|
||||||
const url = new URL(`https://example.com/${interaction.customId}`);
|
const url = new URL(`https://example.com/${interaction.customId}`);
|
||||||
+2
-3
@@ -1,7 +1,6 @@
|
|||||||
|
import { StatFilters, TreeType } from '@blitzkit/core';
|
||||||
import { ChatInputCommandInteraction } from 'discord.js';
|
import { ChatInputCommandInteraction } from 'discord.js';
|
||||||
import { TreeType } from '../../components/Tanks';
|
import resolveTankId from '../../../../website/src/core/blitz/resolveTankId';
|
||||||
import resolveTankId from '../blitz/resolveTankId';
|
|
||||||
import { StatFilters } from '../statistics/filterStats';
|
|
||||||
|
|
||||||
export async function getFiltersFromCommand(
|
export async function getFiltersFromCommand(
|
||||||
interaction: ChatInputCommandInteraction,
|
interaction: ChatInputCommandInteraction,
|
||||||
File renamed without changes.
File renamed without changes.
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
|
import { assertSecret } from '@blitzkit/core';
|
||||||
import { ShardingManager } from 'discord.js';
|
import { ShardingManager } from 'discord.js';
|
||||||
import { assertSecret } from '../../../packages/core/src/blitzkit/assertSecret';
|
|
||||||
|
|
||||||
export const manager = new ShardingManager('dist/bot/workers/bot.js', {
|
export const manager = new ShardingManager('dist/bot/workers/bot.js', {
|
||||||
token: assertSecret(process.env.DISCORD_TOKEN),
|
token: assertSecret(process.env.DISCORD_TOKEN),
|
||||||
File renamed without changes.
+1
-1
@@ -7,10 +7,10 @@ import {
|
|||||||
InteractionReplyOptions,
|
InteractionReplyOptions,
|
||||||
MessageEditOptions,
|
MessageEditOptions,
|
||||||
} from 'discord.js';
|
} from 'discord.js';
|
||||||
|
import { RenderConfiguration } from '../../../../website/src/core/blitzkit/renderConfiguration';
|
||||||
import { InteractionReturnable } from '../../events/interactionCreate';
|
import { InteractionReturnable } from '../../events/interactionCreate';
|
||||||
import { Writeable } from '../../types/writable';
|
import { Writeable } from '../../types/writable';
|
||||||
import jsxToPngThreaded from '../blitzkit/jsxToPngThreaded';
|
import jsxToPngThreaded from '../blitzkit/jsxToPngThreaded';
|
||||||
import { RenderConfiguration } from '../blitzkit/renderConfiguration';
|
|
||||||
|
|
||||||
export default async function normalizeInteractionReturnable(
|
export default async function normalizeInteractionReturnable(
|
||||||
returnable: InteractionReturnable,
|
returnable: InteractionReturnable,
|
||||||
File renamed without changes.
+3
-3
@@ -1,8 +1,8 @@
|
|||||||
|
import { Region } from '@blitzkit/core';
|
||||||
import { ChatInputCommandInteraction } from 'discord.js';
|
import { ChatInputCommandInteraction } from 'discord.js';
|
||||||
import markdownEscape from 'markdown-escape';
|
import markdownEscape from 'markdown-escape';
|
||||||
import { Region } from '../../constants/regions';
|
import searchClansAcrossRegions from '../../../../website/src/core/blitz/searchClansAcrossRegions';
|
||||||
import { UserError } from '../../hooks/userError';
|
import { UserError } from '../../../../website/src/hooks/userError';
|
||||||
import searchClansAcrossRegions from '../blitz/searchClansAcrossRegions';
|
|
||||||
import { translator } from '../localization/translator';
|
import { translator } from '../localization/translator';
|
||||||
import { serverAndIdPattern } from './resolvePlayerFromCommand/constants';
|
import { serverAndIdPattern } from './resolvePlayerFromCommand/constants';
|
||||||
|
|
||||||
+2
-2
@@ -1,8 +1,8 @@
|
|||||||
|
import { Region } from '@blitzkit/core';
|
||||||
import { ButtonInteraction } from 'discord.js';
|
import { ButtonInteraction } from 'discord.js';
|
||||||
import { Region } from '../../constants/regions';
|
import getTimeDaysAgo from '../../../../website/src/core/blitzkit/getTimeDaysAgo';
|
||||||
import getPeriodNow from '../blitzkit/getPeriodNow';
|
import getPeriodNow from '../blitzkit/getPeriodNow';
|
||||||
import getPeriodStart from '../blitzkit/getPeriodStart';
|
import getPeriodStart from '../blitzkit/getPeriodStart';
|
||||||
import getTimeDaysAgo from '../blitzkit/getTimeDaysAgo';
|
|
||||||
import { PeriodType } from './addPeriodSubCommands';
|
import { PeriodType } from './addPeriodSubCommands';
|
||||||
import { getPeriodOptionName } from './getPeriodOptionName';
|
import { getPeriodOptionName } from './getPeriodOptionName';
|
||||||
import { ResolvedPeriod } from './resolvePeriodFromCommand';
|
import { ResolvedPeriod } from './resolvePeriodFromCommand';
|
||||||
+2
-2
@@ -1,8 +1,8 @@
|
|||||||
|
import { Region } from '@blitzkit/core';
|
||||||
import { CacheType, ChatInputCommandInteraction } from 'discord.js';
|
import { CacheType, ChatInputCommandInteraction } from 'discord.js';
|
||||||
import { Region } from '../../constants/regions';
|
import getTimeDaysAgo from '../../../../website/src/core/blitzkit/getTimeDaysAgo';
|
||||||
import getPeriodNow from '../blitzkit/getPeriodNow';
|
import getPeriodNow from '../blitzkit/getPeriodNow';
|
||||||
import getPeriodStart from '../blitzkit/getPeriodStart';
|
import getPeriodStart from '../blitzkit/getPeriodStart';
|
||||||
import getTimeDaysAgo from '../blitzkit/getTimeDaysAgo';
|
|
||||||
import { translator } from '../localization/translator';
|
import { translator } from '../localization/translator';
|
||||||
import { PeriodType } from './addPeriodSubCommands';
|
import { PeriodType } from './addPeriodSubCommands';
|
||||||
import { getPeriodOptionName } from './getPeriodOptionName';
|
import { getPeriodOptionName } from './getPeriodOptionName';
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
|
import { Region } from '@blitzkit/core';
|
||||||
import { ButtonInteraction } from 'discord.js';
|
import { ButtonInteraction } from 'discord.js';
|
||||||
import { Region } from '../../constants/regions';
|
|
||||||
import { ResolvedPlayer } from './resolvePlayerFromCommand';
|
import { ResolvedPlayer } from './resolvePlayerFromCommand';
|
||||||
|
|
||||||
export default async function resolvePlayerFromButton(
|
export default async function resolvePlayerFromButton(
|
||||||
File renamed without changes.
+3
-3
@@ -1,8 +1,8 @@
|
|||||||
|
import { Region } from '@blitzkit/core';
|
||||||
import { CacheType, ChatInputCommandInteraction } from 'discord.js';
|
import { CacheType, ChatInputCommandInteraction } from 'discord.js';
|
||||||
import markdownEscape from 'markdown-escape';
|
import markdownEscape from 'markdown-escape';
|
||||||
import { Region } from '../../../constants/regions';
|
import searchPlayersAcrossRegions from '../../../../../website/src/core/blitz/searchPlayersAcrossRegions';
|
||||||
import { UserError } from '../../../hooks/userError';
|
import { UserError } from '../../../../../website/src/hooks/userError';
|
||||||
import searchPlayersAcrossRegions from '../../blitz/searchPlayersAcrossRegions';
|
|
||||||
import { getBlitzFromDiscord } from '../../blitzkit/getBlitzFromDiscord';
|
import { getBlitzFromDiscord } from '../../blitzkit/getBlitzFromDiscord';
|
||||||
import { translator } from '../../localization/translator';
|
import { translator } from '../../localization/translator';
|
||||||
import { serverAndIdPattern } from './constants';
|
import { serverAndIdPattern } from './constants';
|
||||||
+2
@@ -1 +1,3 @@
|
|||||||
|
import { Locale } from 'discord.js';
|
||||||
|
|
||||||
export const SUPPORTED_LOCALES: Locale[] = [Locale.EnglishUS, Locale.SpanishES];
|
export const SUPPORTED_LOCALES: Locale[] = [Locale.EnglishUS, Locale.SpanishES];
|
||||||
+1
@@ -1,3 +1,4 @@
|
|||||||
|
import { Locale } from 'discord.js';
|
||||||
import { SUPPORTED_LOCALES } from './constants';
|
import { SUPPORTED_LOCALES } from './constants';
|
||||||
|
|
||||||
export type TranslationFragmentTree = {
|
export type TranslationFragmentTree = {
|
||||||
File renamed without changes.
@@ -8,12 +8,12 @@ import {
|
|||||||
InteractionReplyOptions,
|
InteractionReplyOptions,
|
||||||
} from 'discord.js';
|
} from 'discord.js';
|
||||||
import { InteractionRawReturnable, commands } from '..';
|
import { InteractionRawReturnable, commands } from '..';
|
||||||
|
import { UserError } from '../../../../../website/src/hooks/userError';
|
||||||
import buttonLink from '../../../core/discord/buttonLink';
|
import buttonLink from '../../../core/discord/buttonLink';
|
||||||
import embedWarning from '../../../core/discord/embedWarning';
|
import embedWarning from '../../../core/discord/embedWarning';
|
||||||
import normalizeInteractionReturnable from '../../../core/discord/normalizeInteractionReturnable';
|
import normalizeInteractionReturnable from '../../../core/discord/normalizeInteractionReturnable';
|
||||||
import { psa } from '../../../core/discord/psa';
|
import { psa } from '../../../core/discord/psa';
|
||||||
import { translator } from '../../../core/localization/translator';
|
import { translator } from '../../../core/localization/translator';
|
||||||
import { UserError } from '../../../hooks/userError';
|
|
||||||
import { Writeable } from '../../../types/writable';
|
import { Writeable } from '../../../types/writable';
|
||||||
|
|
||||||
export default async function handleChatInputCommand(
|
export default async function handleChatInputCommand(
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import { assertSecret } from '@blitzkit/core';
|
||||||
import {
|
import {
|
||||||
AttachmentBuilder,
|
AttachmentBuilder,
|
||||||
AutocompleteInteraction,
|
AutocompleteInteraction,
|
||||||
@@ -13,7 +14,7 @@ import {
|
|||||||
SlashCommandOptionsOnlyBuilder,
|
SlashCommandOptionsOnlyBuilder,
|
||||||
SlashCommandSubcommandsOnlyBuilder,
|
SlashCommandSubcommandsOnlyBuilder,
|
||||||
} from 'discord.js';
|
} from 'discord.js';
|
||||||
import { assertSecret } from '../../../packages/core/src/blitzkit/assertSecret';
|
import { RenderConfiguration } from '../../../../website/src/core/blitzkit/renderConfiguration';
|
||||||
import { aboutCommand } from '../../commands/about';
|
import { aboutCommand } from '../../commands/about';
|
||||||
import { breakdownCommand } from '../../commands/breakdown';
|
import { breakdownCommand } from '../../commands/breakdown';
|
||||||
import { debugCommand } from '../../commands/debug';
|
import { debugCommand } from '../../commands/debug';
|
||||||
@@ -33,7 +34,6 @@ import { searchClansCommand } from '../../commands/searchClans';
|
|||||||
import { searchPlayersCommand } from '../../commands/searchPlayers';
|
import { searchPlayersCommand } from '../../commands/searchPlayers';
|
||||||
import { statsCommand } from '../../commands/stats';
|
import { statsCommand } from '../../commands/stats';
|
||||||
import { todayCommand } from '../../commands/today';
|
import { todayCommand } from '../../commands/today';
|
||||||
import { RenderConfiguration } from '../../core/blitzkit/renderConfiguration';
|
|
||||||
import handleAutocomplete from './handlers/autocomplete';
|
import handleAutocomplete from './handlers/autocomplete';
|
||||||
import handleButton from './handlers/button';
|
import handleButton from './handlers/button';
|
||||||
import handleChatInputCommand from './handlers/chatInputCommand';
|
import handleChatInputCommand from './handlers/chatInputCommand';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
// a cleaner simplification of Blitz Stars' histories because it's a mess there
|
// a cleaner simplification of Blitz Stars' histories because it's a mess there
|
||||||
|
|
||||||
import { BlitzStats } from '../core/statistics/compositeStats/constants';
|
import { BlitzStats } from '@blitzkit/core';
|
||||||
|
|
||||||
export interface History {
|
export interface History {
|
||||||
all: BlitzStats;
|
all: BlitzStats;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { assertSecret } from '../../packages/core/src/blitzkit/assertSecret';
|
import { assertSecret } from '@blitzkit/core';
|
||||||
import { registerProcesses } from '../core/blitzkit/processes';
|
import { registerProcesses } from '../../../website/src/core/blitzkit/processes';
|
||||||
import { client } from '../core/discord/client';
|
import { client } from '../core/discord/client';
|
||||||
|
|
||||||
console.log(`🟡 Launching bot ${client.shard?.ids[0]}`);
|
console.log(`🟡 Launching bot ${client.shard?.ids[0]}`);
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"extends": "../../tsconfig.json"
|
||||||
|
}
|
||||||
@@ -10,8 +10,12 @@
|
|||||||
"@octokit/plugin-throttling": "^8.2.0",
|
"@octokit/plugin-throttling": "^8.2.0",
|
||||||
"protobufjs": "^7.4.0",
|
"protobufjs": "^7.4.0",
|
||||||
"lz4js": "^0.2.0",
|
"lz4js": "^0.2.0",
|
||||||
|
"yaml": "^2.5.0",
|
||||||
|
"sharp": "^0.33.5",
|
||||||
|
"dotenv": "^16.4.5",
|
||||||
"pickleparser": "^0.2.1",
|
"pickleparser": "^0.2.1",
|
||||||
"adm-zip": "^0.5.16"
|
"adm-zip": "^0.5.16",
|
||||||
|
"crc": "^4.3.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/adm-zip": "^0.5.5",
|
"@types/adm-zip": "^0.5.5",
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
import { BlitzStats } from '../statistics';
|
||||||
|
|
||||||
export const TREE_TYPES = ['researchable', 'premium', 'collector'] as const;
|
export const TREE_TYPES = ['researchable', 'premium', 'collector'] as const;
|
||||||
|
|
||||||
export const TANK_CLASSES = [
|
export const TANK_CLASSES = [
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { Vector3Tuple } from 'three';
|
import { Vector3Tuple } from 'three';
|
||||||
import { Tier } from '../core/blitzkit/tankDefinitions';
|
import { Tier } from '../blitzkit';
|
||||||
|
|
||||||
export const equipmentPriceMatrix: Record<Tier, Vector3Tuple> = {
|
export const equipmentPriceMatrix: Record<Tier, Vector3Tuple> = {
|
||||||
1: [100, 200, 300],
|
1: [100, 200, 300],
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Region } from '../../constants/regions';
|
import { Region } from './regions';
|
||||||
|
|
||||||
export const MIN_REGION_IDS: Record<Region, number> = {
|
export const MIN_REGION_IDS: Record<Region, number> = {
|
||||||
asia: 20e8,
|
asia: 20e8,
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import { Samples } from '.';
|
import { Samples } from '.';
|
||||||
import { emptyAllStats } from '../../blitz/constants';
|
import { emptyAllStats } from '../../blitz/constants';
|
||||||
|
import { BlitzkitStats } from '../../statistics';
|
||||||
|
|
||||||
export const emptyAverageDefinitionsAllStats: BlitzkitStats = {
|
export const emptyAverageDefinitionsAllStats: BlitzkitStats = {
|
||||||
...emptyAllStats,
|
...emptyAllStats,
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { BlitzkitStats } from '../../../../../src/core/statistics/compositeStats/constants';
|
|
||||||
import { decodeProtobuf } from '../../protobuf/decodeProtobuf';
|
import { decodeProtobuf } from '../../protobuf/decodeProtobuf';
|
||||||
|
import { BlitzkitStats } from '../../statistics';
|
||||||
import { asset } from '../asset';
|
import { asset } from '../asset';
|
||||||
|
|
||||||
export interface AverageDefinitionsEntry {
|
export interface AverageDefinitionsEntry {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { asset } from '@blitzkit/core/src/blitzkit/asset';
|
import { asset } from '@blitzkit/core/src/blitzkit/asset';
|
||||||
import { fetchCdonLz4 } from '@blitzkit/core/src/blitzkit/fetchCdonLz4';
|
import { fetchCdonLz4 } from '@blitzkit/core/src/blitzkit/fetchCdonLz4';
|
||||||
import { TankClass } from '../../../../src/components/Tanks';
|
import { TankClass } from './tankDefinitions';
|
||||||
|
|
||||||
export interface SkillDefinitions {
|
export interface SkillDefinitions {
|
||||||
classes: Record<TankClass, string[]>;
|
classes: Record<TankClass, string[]>;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { CrewMember, GunDefinition, ShellType, Tier } from '.';
|
import { CrewMember, GunDefinition, ShellType, TankClass, Tier } from '.';
|
||||||
|
|
||||||
export const SHELL_NAMES: Record<ShellType, string> = {
|
export const SHELL_NAMES: Record<ShellType, string> = {
|
||||||
ap: 'AP',
|
ap: 'AP',
|
||||||
|
|||||||
@@ -1,9 +1,12 @@
|
|||||||
import { Vector2Tuple } from 'three';
|
import { Vector2Tuple } from 'three';
|
||||||
import { TankClass, TreeType } from '../../../components/Tanks';
|
import { TANK_CLASSES, TREE_TYPES } from '../../blitz/constants';
|
||||||
import { asset } from '../asset';
|
import { asset } from '../asset';
|
||||||
import { fetchCdonLz4 } from '../fetchCdonLz4';
|
import { fetchCdonLz4 } from '../fetchCdonLz4';
|
||||||
import { TIERS } from './constants';
|
import { TIERS } from './constants';
|
||||||
|
|
||||||
|
export type TankClass = (typeof TANK_CLASSES)[number];
|
||||||
|
export type TreeType = (typeof TREE_TYPES)[number];
|
||||||
|
|
||||||
export enum ShellType {
|
export enum ShellType {
|
||||||
AP = 'ap',
|
AP = 'ap',
|
||||||
APCR = 'ap_cr',
|
APCR = 'ap_cr',
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { RatingPlayer } from '../../commands/ratingLeaderboard';
|
import { RatingPlayer } from '../../../bot/src/commands/ratingLeaderboard';
|
||||||
import { RatingStats } from '../blitz/getAccountInfo';
|
import { RatingStats } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
import { BkrlSuperset1Entry } from '../streams/bkrl';
|
import { BkrlSuperset1Entry } from '../streams/bkrl';
|
||||||
|
|
||||||
export function deltaBkrlBlitzStats(
|
export function deltaBkrlBlitzStats(
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
import { IndividualTankStats, emptyIndividualTankStats } from '../types';
|
||||||
|
|
||||||
export function deltaTankStats(
|
export function deltaTankStats(
|
||||||
tanksA: IndividualTankStats[],
|
tanksA: IndividualTankStats[],
|
||||||
tanksB: IndividualTankStats[],
|
tanksB: IndividualTankStats[],
|
||||||
|
|||||||
@@ -1,4 +1,7 @@
|
|||||||
import { tankDefinitions } from '../blitzkit/tankDefinitions';
|
import { DiffedTankStats } from '../../../bot/src/core/blitzstars/getStatsInPeriod';
|
||||||
|
import { SupplementaryStats } from '../../../website/src/core/blitz/getAccountInfo';
|
||||||
|
import { tankAverages } from '../../../website/src/core/blitzstars/tankAverages';
|
||||||
|
import { tankDefinitions, TreeType } from '../blitzkit/tankDefinitions';
|
||||||
import calculateWN8 from './calculateWN8';
|
import calculateWN8 from './calculateWN8';
|
||||||
import sumStats from './sumStats';
|
import sumStats from './sumStats';
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { TierWeightsRecord } from '../../components/TierWeights';
|
import { TierWeightsRecord } from '../../../bot/src/components/TierWeights';
|
||||||
import { tankDefinitions } from '../blitzkit/tankDefinitions';
|
import { tankDefinitions } from '../blitzkit/tankDefinitions';
|
||||||
import { BlitzStats } from './compositeStats/constants';
|
import { BlitzStats } from './compositeStats/constants';
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import { emptyAllStats } from '..';
|
||||||
import { BlitzStats } from './compositeStats/constants';
|
import { BlitzStats } from './compositeStats/constants';
|
||||||
|
|
||||||
export default function sumStats(allStatsCollection: BlitzStats[]) {
|
export default function sumStats(allStatsCollection: BlitzStats[]) {
|
||||||
|
|||||||
Loaded 100 of 255 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user