feat: core chunk 7

This commit is contained in:
TrèsAbhi committed 2023-10-14 11:36:10 -05:00
1 parent d726005c38
commit 01dd7ad9c6
39 files changed
+83 -87

No files matched your search

+2 -2
View File
@@ -1,11 +1,11 @@
import { SlashCommandBuilder } from 'discord.js'; import { SlashCommandBuilder } from 'discord.js';
import packageJSON from '../../package.json' assert { type: 'json' }; import packageJSON from '../../package.json' assert { type: 'json' };
import markdownTable from '../LEGACY_core/discord/markdownTable'; import getClientId from '../core/blitzkrieg/getClientId';
import getClientId from '../LEGACY_core/node/getClientId';
import { tankAverages } from '../core/blitzstars/tankAverages'; import { tankAverages } from '../core/blitzstars/tankAverages';
import { tankopedia } from '../core/blitzstars/tankopedia'; import { tankopedia } from '../core/blitzstars/tankopedia';
import { client } from '../core/discord/client'; import { client } from '../core/discord/client';
import embedInfo from '../core/discord/embedInfo'; import embedInfo from '../core/discord/embedInfo';
import markdownTable from '../core/discord/markdownTable';
import { CommandRegistry } from '../events/interactionCreate'; import { CommandRegistry } from '../events/interactionCreate';
const executionStart = new Date().getTime(); const executionStart = new Date().getTime();
+2 -4
View File
@@ -1,8 +1,4 @@
import { SlashCommandBuilder } from 'discord.js'; import { SlashCommandBuilder } from 'discord.js';
import markdownTable, {
TableInput,
} from '../LEGACY_core/discord/markdownTable';
import resolvePlayerFromCommand from '../LEGACY_core/discord/resolvePlayerFromCommand';
import { getAccountInfo } from '../core/blitz/getAccountInfo'; import { getAccountInfo } from '../core/blitz/getAccountInfo';
import getPeriodNow from '../core/blitzkrieg/getPeriodNow'; import getPeriodNow from '../core/blitzkrieg/getPeriodNow';
import getTimeDaysAgo from '../core/blitzkrieg/getTimeDaysAgo'; import getTimeDaysAgo from '../core/blitzkrieg/getTimeDaysAgo';
@@ -12,6 +8,8 @@ import { tankopedia } from '../core/blitzstars/tankopedia';
import addUsernameChoices from '../core/discord/addUsernameChoices'; import addUsernameChoices from '../core/discord/addUsernameChoices';
import embedNegative from '../core/discord/embedNegative'; import embedNegative from '../core/discord/embedNegative';
import embedPositive from '../core/discord/embedPositive'; import embedPositive from '../core/discord/embedPositive';
import markdownTable, { TableInput } from '../core/discord/markdownTable';
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
import calculateWN8 from '../core/statistics/calculateWN8'; import calculateWN8 from '../core/statistics/calculateWN8';
import sumStats from '../core/statistics/sumStats'; import sumStats from '../core/statistics/sumStats';
import { CommandRegistry } from '../events/interactionCreate'; import { CommandRegistry } from '../events/interactionCreate';
+10 -10
View File
@@ -2,15 +2,6 @@ import {
SlashCommandBuilder, SlashCommandBuilder,
SlashCommandSubcommandGroupBuilder, SlashCommandSubcommandGroupBuilder,
} from 'discord.js'; } from 'discord.js';
import primaryButton from '../LEGACY_core/discord/primaryButton';
import resolvePeriodFromButton from '../LEGACY_core/discord/resolvePeriodFromButton';
import resolvePeriodFromCommand, {
ResolvedPeriod,
} from '../LEGACY_core/discord/resolvePeriodFromCommand';
import resolvePlayerFromButton from '../LEGACY_core/discord/resolvePlayerFromButton';
import resolvePlayerFromCommand, {
ResolvedPlayer,
} from '../LEGACY_core/discord/resolvePlayerFromCommand';
import * as Graph from '../components/Graph'; import * as Graph from '../components/Graph';
import NoData, { NoDataType } from '../components/NoData'; import NoData, { NoDataType } from '../components/NoData';
import TitleBar from '../components/TitleBar'; import TitleBar from '../components/TitleBar';
@@ -27,8 +18,17 @@ import addTankChoices from '../core/discord/addTankChoices';
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 autocompleteUsername from '../core/discord/autocompleteUsername'; import autocompleteUsername from '../core/discord/autocompleteUsername';
import buttonPrimary from '../core/discord/buttonPrimary';
import commandToURL from '../core/discord/commandToURL'; import commandToURL from '../core/discord/commandToURL';
import { getCustomPeriodParams } from '../core/discord/getCustomPeriodParams'; import { getCustomPeriodParams } from '../core/discord/getCustomPeriodParams';
import resolvePeriodFromButton from '../core/discord/resolvePeriodFromButton';
import resolvePeriodFromCommand, {
ResolvedPeriod,
} from '../core/discord/resolvePeriodFromCommand';
import resolvePlayerFromButton from '../core/discord/resolvePlayerFromButton';
import resolvePlayerFromCommand, {
ResolvedPlayer,
} from '../core/discord/resolvePlayerFromCommand';
import { CommandRegistryRaw } from '../events/interactionCreate'; import { CommandRegistryRaw } from '../events/interactionCreate';
type EvolutionStatType = 'player' | 'tank'; type EvolutionStatType = 'player' | 'tank';
@@ -162,7 +162,7 @@ export const evolutionCommand = new Promise<CommandRegistryRaw>(
return [ return [
await render(player, period, commandGroup, tankId), await render(player, period, commandGroup, tankId),
primaryButton(path, 'Refresh'), buttonPrimary(path, 'Refresh'),
await getBlitzStarsLinkButton( await getBlitzStarsLinkButton(
player.region, player.region,
player.id, player.id,
+10 -10
View File
@@ -1,13 +1,4 @@
import { SlashCommandBuilder } from 'discord.js'; import { SlashCommandBuilder } from 'discord.js';
import { refreshButton } from '../LEGACY_core/discord/refreshButton';
import resolvePeriodFromButton from '../LEGACY_core/discord/resolvePeriodFromButton';
import resolvePeriodFromCommand, {
ResolvedPeriod,
} from '../LEGACY_core/discord/resolvePeriodFromCommand';
import resolvePlayerFromButton from '../LEGACY_core/discord/resolvePlayerFromButton';
import resolvePlayerFromCommand, {
ResolvedPlayer,
} from '../LEGACY_core/discord/resolvePlayerFromCommand';
import GenericAllStats from '../components/GenericAllStats'; import GenericAllStats from '../components/GenericAllStats';
import NoData, { NoDataType } from '../components/NoData'; import NoData, { NoDataType } from '../components/NoData';
import TierWeights from '../components/TierWeights'; import TierWeights from '../components/TierWeights';
@@ -23,10 +14,19 @@ 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';
import autocompleteUsername from '../core/discord/autocompleteUsername'; import autocompleteUsername from '../core/discord/autocompleteUsername';
import { buttonRefresh } from '../core/discord/buttonRefresh';
import commandToURL from '../core/discord/commandToURL'; import commandToURL from '../core/discord/commandToURL';
import { getCustomPeriodParams } from '../core/discord/getCustomPeriodParams'; import { getCustomPeriodParams } from '../core/discord/getCustomPeriodParams';
import { getFiltersFromButton } from '../core/discord/getFiltersFromButton'; import { getFiltersFromButton } from '../core/discord/getFiltersFromButton';
import { getFiltersFromCommand } from '../core/discord/getFiltersFromCommand'; import { getFiltersFromCommand } from '../core/discord/getFiltersFromCommand';
import resolvePeriodFromButton from '../core/discord/resolvePeriodFromButton';
import resolvePeriodFromCommand, {
ResolvedPeriod,
} from '../core/discord/resolvePeriodFromCommand';
import resolvePlayerFromButton from '../core/discord/resolvePlayerFromButton';
import resolvePlayerFromCommand, {
ResolvedPlayer,
} from '../core/discord/resolvePlayerFromCommand';
import { StatFilters, filterStats } from '../core/statistics/filterStats'; import { StatFilters, filterStats } from '../core/statistics/filterStats';
import { getTierWeights } from '../core/statistics/getTierWeights'; import { getTierWeights } from '../core/statistics/getTierWeights';
import { CommandRegistryRaw } from '../events/interactionCreate'; import { CommandRegistryRaw } from '../events/interactionCreate';
@@ -91,7 +91,7 @@ export const fullStatsCommand = new Promise<CommandRegistryRaw>(
return Promise.all([ return Promise.all([
render(player, period, filters), render(player, period, filters),
refreshButton(interaction, path), buttonRefresh(interaction, path),
getBlitzStarsLinkButton(player.region, player.id), getBlitzStarsLinkButton(player.region, player.id),
]); ]);
}, },
+1 -1
View File
@@ -1,5 +1,4 @@
import { SlashCommandBuilder } from 'discord.js'; import { SlashCommandBuilder } from 'discord.js';
import resolveClanFromCommand from '../LEGACY_core/discord/resolveClanFromCommand';
import GenericStats from '../components/GenericStats'; import GenericStats from '../components/GenericStats';
import NoData, { NoDataType } from '../components/NoData'; import NoData, { NoDataType } from '../components/NoData';
import TitleBar from '../components/TitleBar'; import TitleBar from '../components/TitleBar';
@@ -8,6 +7,7 @@ import { getAccountInfo } from '../core/blitz/getAccountInfo';
import { getClanInfo } from '../core/blitz/getClanInfo'; 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 resolveClanFromCommand from '../core/discord/resolveClanFromCommand';
import { CommandRegistry } from '../events/interactionCreate'; import { CommandRegistry } from '../events/interactionCreate';
const DEFAULT_THRESHOLD = 7; const DEFAULT_THRESHOLD = 7;
+1 -1
View File
@@ -1,5 +1,4 @@
import { SlashCommandBuilder } from 'discord.js'; import { SlashCommandBuilder } from 'discord.js';
import resolvePlayerFromCommand from '../LEGACY_core/discord/resolvePlayerFromCommand';
import NoData, { NoDataType } from '../components/NoData'; import NoData, { NoDataType } from '../components/NoData';
import * as Tanks from '../components/Tanks'; import * as Tanks from '../components/Tanks';
import TitleBar from '../components/TitleBar'; import TitleBar from '../components/TitleBar';
@@ -20,6 +19,7 @@ import {
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';
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
import { CommandRegistry } from '../events/interactionCreate'; import { CommandRegistry } from '../events/interactionCreate';
export const ownedTanksCommand: CommandRegistry = { export const ownedTanksCommand: CommandRegistry = {
+2 -4
View File
@@ -1,15 +1,13 @@
import { SlashCommandBuilder } from 'discord.js'; import { SlashCommandBuilder } from 'discord.js';
import { startCase } from 'lodash'; import { startCase } from 'lodash';
import markdownEscape from 'markdown-escape'; import markdownEscape from 'markdown-escape';
import markdownTable, {
TableInputEntry,
} from '../LEGACY_core/discord/markdownTable';
import resolvePlayerFromCommand from '../LEGACY_core/discord/resolvePlayerFromCommand';
import { getAccountAchievements } from '../core/blitz/getAccountAchievements'; import { getAccountAchievements } from '../core/blitz/getAccountAchievements';
import { getAccountInfo } from '../core/blitz/getAccountInfo'; import { getAccountInfo } from '../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 embedInfo from '../core/discord/embedInfo'; import embedInfo from '../core/discord/embedInfo';
import markdownTable, { TableInputEntry } from '../core/discord/markdownTable';
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
import { CommandRegistry } from '../events/interactionCreate'; import { CommandRegistry } from '../events/interactionCreate';
type SortBy = 'name' | 'count'; type SortBy = 'name' | 'count';
+2 -2
View File
@@ -1,11 +1,11 @@
import { SlashCommandBuilder } from 'discord.js'; import { SlashCommandBuilder } from 'discord.js';
import markdownEscape from 'markdown-escape'; import markdownEscape from 'markdown-escape';
import markdownTable from '../LEGACY_core/discord/markdownTable';
import resolvePlayerFromCommand from '../LEGACY_core/discord/resolvePlayerFromCommand';
import { getAccountInfo } from '../core/blitz/getAccountInfo'; import { getAccountInfo } from '../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 embedInfo from '../core/discord/embedInfo'; import embedInfo from '../core/discord/embedInfo';
import markdownTable from '../core/discord/markdownTable';
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
import { CommandRegistry } from '../events/interactionCreate'; import { CommandRegistry } from '../events/interactionCreate';
export const playerInfoCommand: CommandRegistry = { export const playerInfoCommand: CommandRegistry = {
+2 -2
View File
@@ -5,8 +5,6 @@ import {
SlashCommandSubcommandGroupBuilder, SlashCommandSubcommandGroupBuilder,
} from 'discord.js'; } from 'discord.js';
import { BlitzkriegRatingsLeaderboard } from '../../scripts/buildRatingsLeaderboard'; import { BlitzkriegRatingsLeaderboard } from '../../scripts/buildRatingsLeaderboard';
import resolvePlayerFromCommand from '../LEGACY_core/discord/resolvePlayerFromCommand';
import { octokit } from '../LEGACY_core/github/octokit';
import throwError from '../LEGACY_core/node/throwError'; import throwError from '../LEGACY_core/node/throwError';
import * as Leaderboard from '../components/Leaderboard'; import * as Leaderboard from '../components/Leaderboard';
import TitleBar from '../components/TitleBar'; import TitleBar from '../components/TitleBar';
@@ -20,10 +18,12 @@ import getArchivedRatingsInfo from '../core/blitzkrieg/getArchivedRatingsInfo';
import getMidnightLeaderboard, { import getMidnightLeaderboard, {
DATABASE_REPO, DATABASE_REPO,
} from '../core/blitzkrieg/getMidnightLeaderboard'; } from '../core/blitzkrieg/getMidnightLeaderboard';
import { octokit } from '../core/blitzkrieg/octokit';
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';
import embedNegative from '../core/discord/embedNegative'; import embedNegative from '../core/discord/embedNegative';
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
import { CommandRegistryRaw } from '../events/interactionCreate'; import { CommandRegistryRaw } from '../events/interactionCreate';
export interface RatingsPlayer { export interface RatingsPlayer {
+10 -10
View File
@@ -1,13 +1,4 @@
import { SlashCommandBuilder } from 'discord.js'; import { SlashCommandBuilder } from 'discord.js';
import { refreshButton } from '../LEGACY_core/discord/refreshButton';
import resolvePeriodFromButton from '../LEGACY_core/discord/resolvePeriodFromButton';
import resolvePeriodFromCommand, {
ResolvedPeriod,
} from '../LEGACY_core/discord/resolvePeriodFromCommand';
import resolvePlayerFromButton from '../LEGACY_core/discord/resolvePlayerFromButton';
import resolvePlayerFromCommand, {
ResolvedPlayer,
} from '../LEGACY_core/discord/resolvePlayerFromCommand';
import AllStatsOverview from '../components/AllStatsOverview'; import AllStatsOverview from '../components/AllStatsOverview';
import NoData, { NoDataType } from '../components/NoData'; import NoData, { NoDataType } from '../components/NoData';
import TitleBar from '../components/TitleBar'; import TitleBar from '../components/TitleBar';
@@ -22,10 +13,19 @@ 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';
import autocompleteUsername from '../core/discord/autocompleteUsername'; import autocompleteUsername from '../core/discord/autocompleteUsername';
import { buttonRefresh } from '../core/discord/buttonRefresh';
import commandToURL from '../core/discord/commandToURL'; import commandToURL from '../core/discord/commandToURL';
import { getCustomPeriodParams } from '../core/discord/getCustomPeriodParams'; import { getCustomPeriodParams } from '../core/discord/getCustomPeriodParams';
import { getFiltersFromButton } from '../core/discord/getFiltersFromButton'; import { getFiltersFromButton } from '../core/discord/getFiltersFromButton';
import { getFiltersFromCommand } from '../core/discord/getFiltersFromCommand'; import { getFiltersFromCommand } from '../core/discord/getFiltersFromCommand';
import resolvePeriodFromButton from '../core/discord/resolvePeriodFromButton';
import resolvePeriodFromCommand, {
ResolvedPeriod,
} from '../core/discord/resolvePeriodFromCommand';
import resolvePlayerFromButton from '../core/discord/resolvePlayerFromButton';
import resolvePlayerFromCommand, {
ResolvedPlayer,
} from '../core/discord/resolvePlayerFromCommand';
import { StatFilters, filterStats } from '../core/statistics/filterStats'; import { StatFilters, filterStats } from '../core/statistics/filterStats';
import { CommandRegistryRaw } from '../events/interactionCreate'; import { CommandRegistryRaw } from '../events/interactionCreate';
@@ -83,7 +83,7 @@ export const statsCommand = new Promise<CommandRegistryRaw>(async (resolve) => {
return Promise.all([ return Promise.all([
render(player, period, filters), render(player, period, filters),
refreshButton(interaction, path), buttonRefresh(interaction, path),
getBlitzStarsLinkButton(player.region, player.id), getBlitzStarsLinkButton(player.region, player.id),
]); ]);
}, },
+6 -6
View File
@@ -1,12 +1,12 @@
import { SlashCommandBuilder } from 'discord.js'; import { SlashCommandBuilder } from 'discord.js';
import linkButton from '../LEGACY_core/discord/linkButton';
import primaryButton from '../LEGACY_core/discord/primaryButton';
import resolvePlayerFromButton from '../LEGACY_core/discord/resolvePlayerFromButton';
import resolvePlayerFromCommand from '../LEGACY_core/discord/resolvePlayerFromCommand';
import { getAccountInfo } from '../core/blitz/getAccountInfo'; import { getAccountInfo } from '../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 buttonLink from '../core/discord/buttonLink';
import buttonPrimary from '../core/discord/buttonPrimary';
import commandToURL from '../core/discord/commandToURL'; import commandToURL from '../core/discord/commandToURL';
import resolvePlayerFromButton from '../core/discord/resolvePlayerFromButton';
import resolvePlayerFromCommand from '../core/discord/resolvePlayerFromCommand';
import { CommandRegistry } from '../events/interactionCreate'; import { CommandRegistry } from '../events/interactionCreate';
import today from '../renderers/today'; import today from '../renderers/today';
@@ -58,9 +58,9 @@ export const todayCommand: CommandRegistry = {
return [ return [
await today(player, cutoff, maximized, showTotal, false), await today(player, cutoff, maximized, showTotal, false),
primaryButton(path, 'Refresh'), buttonPrimary(path, 'Refresh'),
// linkButton(`https://example.com/${path}`, 'Embed'), // linkButton(`https://example.com/${path}`, 'Embed'),
linkButton( buttonLink(
`https://www.blitzstars.com/player/${player.region}/${nickname}`, `https://www.blitzstars.com/player/${player.region}/${nickname}`,
'BlitzStars', 'BlitzStars',
), ),
+1 -1
View File
@@ -1,6 +1,6 @@
import { AllStats, SupplementaryStats } from '../../core/blitz/getAccountInfo'; import { AllStats, SupplementaryStats } from '../../core/blitz/getAccountInfo';
import getWN8Percentile from '../../core/statistics/getWN8Percentile'; import getWN8Percentile from '../../core/statistics/getWN8Percentile';
import isNumber from '../../LEGACY_core/node/isNumber'; import isNumber from '../../core/math/isNumber';
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,8 +1,8 @@
import { octokit } from '../../LEGACY_core/github/octokit';
import throwError from '../../LEGACY_core/node/throwError'; import throwError from '../../LEGACY_core/node/throwError';
import { RatingsInfo } from '../../commands/ratings'; import { RatingsInfo } from '../../commands/ratings';
import { Region } from '../../constants/regions'; import { Region } from '../../constants/regions';
import { DATABASE_REPO } from './getMidnightLeaderboard'; import { DATABASE_REPO } from './getMidnightLeaderboard';
import { octokit } from './octokit';
const ARCHIVED_RATINGS_CACHE: Record< const ARCHIVED_RATINGS_CACHE: Record<
Region, Region,
File renamed without changes.
@@ -1,6 +1,6 @@
import { BlitzkriegRatingsLeaderboard } from '../../../scripts/buildRatingsLeaderboard'; import { BlitzkriegRatingsLeaderboard } from '../../../scripts/buildRatingsLeaderboard';
import { Region } from '../../constants/regions'; import { Region } from '../../constants/regions';
import { octokit } from '../../LEGACY_core/github/octokit'; import { octokit } from './octokit';
export const DATABASE_REPO = { owner: 'tresabhi', repo: 'blitzkrieg-db' }; export const DATABASE_REPO = { owner: 'tresabhi', repo: 'blitzkrieg-db' };
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -1,4 +1,4 @@
import { Octokit } from '@octokit/rest'; import { Octokit } from '@octokit/rest';
import { secrets } from '../node/secrets'; import { secrets } from '../../LEGACY_core/node/secrets';
export const octokit = new Octokit({ auth: secrets.GH_TOKEN }); export const octokit = new Octokit({ auth: secrets.GH_TOKEN });
File renamed without changes.
@@ -1,6 +1,6 @@
import linkButton from '../../LEGACY_core/discord/linkButton';
import { Region } from '../../constants/regions'; import { Region } from '../../constants/regions';
import { getAccountInfo } from '../blitz/getAccountInfo'; import { getAccountInfo } from '../blitz/getAccountInfo';
import buttonLink from '../discord/buttonLink';
export async function getBlitzStarsLinkButton( export async function getBlitzStarsLinkButton(
region: Region, region: Region,
@@ -9,7 +9,7 @@ export async function getBlitzStarsLinkButton(
) { ) {
const { nickname } = await getAccountInfo(region, id); const { nickname } = await getAccountInfo(region, id);
return linkButton( return buttonLink(
`https://www.blitzstars.com/player/${region}/${nickname}${ `https://www.blitzstars.com/player/${region}/${nickname}${
tankId ? `/tank/${tankId!}` : '' tankId ? `/tank/${tankId!}` : ''
}`, }`,
@@ -4,7 +4,7 @@ import {
ComponentEmojiResolvable, ComponentEmojiResolvable,
} from 'discord.js'; } from 'discord.js';
export default function linkButton( export default function buttonLink(
url: string, url: string,
label: string, label: string,
emoji?: ComponentEmojiResolvable, emoji?: ComponentEmojiResolvable,
@@ -4,7 +4,7 @@ import {
ComponentEmojiResolvable, ComponentEmojiResolvable,
} from 'discord.js'; } from 'discord.js';
export default function primaryButton( export default function buttonPrimary(
id: string, id: string,
label: string, label: string,
emoji?: ComponentEmojiResolvable, emoji?: ComponentEmojiResolvable,
@@ -1,7 +1,7 @@
import { ChatInputCommandInteraction } from 'discord.js'; import { ChatInputCommandInteraction } from 'discord.js';
import primaryButton from './primaryButton'; import buttonPrimary from './buttonPrimary';
export function refreshButton( export function buttonRefresh(
interaction: ChatInputCommandInteraction, interaction: ChatInputCommandInteraction,
path: string, path: string,
) { ) {
@@ -9,7 +9,7 @@ export function refreshButton(
interaction.appPermissions?.has('AttachFiles') && interaction.appPermissions?.has('AttachFiles') &&
interaction.appPermissions?.has('ViewChannel') interaction.appPermissions?.has('ViewChannel')
) { ) {
return primaryButton(path, 'Refresh'); return buttonPrimary(path, 'Refresh');
} }
return null; return null;
+3
View File
@@ -4,6 +4,9 @@ export interface Parameters {
[key: string]: string | number | boolean | undefined | null; [key: string]: string | number | boolean | undefined | null;
} }
// TODO: automatically infer command options???
// but how would that work with the region and id options?
export default function commandToURL( export default function commandToURL(
interaction: ChatInputCommandInteraction<CacheType>, interaction: ChatInputCommandInteraction<CacheType>,
parameters?: Parameters, parameters?: Parameters,
File renamed without changes.
@@ -6,7 +6,7 @@ import {
InteractionEditReplyOptions, InteractionEditReplyOptions,
} from 'discord.js'; } from 'discord.js';
import { InteractionReturnable } from '../../events/interactionCreate'; import { InteractionReturnable } from '../../events/interactionCreate';
import jsxToPng from '../node/jsxToPng'; import jsxToPng from '../blitzkrieg/jsxToPng';
export default async function normalizeInteractionReturnable( export default async function normalizeInteractionReturnable(
returnable: InteractionReturnable, returnable: InteractionReturnable,
File renamed without changes.
@@ -1,7 +1,7 @@
import { ChatInputCommandInteraction } from 'discord.js'; import { ChatInputCommandInteraction } from 'discord.js';
import throwError from '../../LEGACY_core/node/throwError';
import { Region } from '../../constants/regions'; import { Region } from '../../constants/regions';
import searchClansAcrossRegions from '../../core/blitz/searchClansAcrossRegions'; import searchClansAcrossRegions from '../blitz/searchClansAcrossRegions';
import throwError from '../node/throwError';
import { serverAndIdPattern } from './resolvePlayerFromCommand'; import { serverAndIdPattern } from './resolvePlayerFromCommand';
export default async function resolveClanFromCommand( export default async function resolveClanFromCommand(
@@ -1,9 +1,9 @@
import { ButtonInteraction } from 'discord.js'; import { ButtonInteraction } from 'discord.js';
import { Region } from '../../constants/regions'; import { Region } from '../../constants/regions';
import getPeriodNow from '../../core/blitzkrieg/getPeriodNow'; import getPeriodNow from '../blitzkrieg/getPeriodNow';
import getPeriodStart from '../../core/blitzkrieg/getPeriodStart'; import getPeriodStart from '../blitzkrieg/getPeriodStart';
import getTimeDaysAgo from '../../core/blitzkrieg/getTimeDaysAgo'; import getTimeDaysAgo from '../blitzkrieg/getTimeDaysAgo';
import { PeriodType } from '../../core/discord/addPeriodSubCommands'; import { PeriodType } from './addPeriodSubCommands';
import { import {
ResolvedPeriod, ResolvedPeriod,
getPeriodOptionName, getPeriodOptionName,
@@ -1,12 +1,9 @@
import { CacheType, ChatInputCommandInteraction } from 'discord.js'; import { CacheType, ChatInputCommandInteraction } from 'discord.js';
import { Region } from '../../constants/regions'; import { Region } from '../../constants/regions';
import getPeriodNow from '../../core/blitzkrieg/getPeriodNow'; import getPeriodNow from '../blitzkrieg/getPeriodNow';
import getPeriodStart from '../../core/blitzkrieg/getPeriodStart'; import getPeriodStart from '../blitzkrieg/getPeriodStart';
import getTimeDaysAgo from '../../core/blitzkrieg/getTimeDaysAgo'; import getTimeDaysAgo from '../blitzkrieg/getTimeDaysAgo';
import { import { PeriodSize, PeriodType } from './addPeriodSubCommands';
PeriodSize,
PeriodType,
} from '../../core/discord/addPeriodSubCommands';
export function getPeriodOptionName(period: PeriodSize) { export function getPeriodOptionName(period: PeriodSize) {
if (period === 'career') return 'Career'; if (period === 'career') return 'Career';
@@ -1,9 +1,9 @@
import { CacheType, ChatInputCommandInteraction } from 'discord.js'; import { CacheType, ChatInputCommandInteraction } from 'discord.js';
import markdownEscape from 'markdown-escape'; import markdownEscape from 'markdown-escape';
import throwError from '../../LEGACY_core/node/throwError';
import { Region } from '../../constants/regions'; import { Region } from '../../constants/regions';
import searchPlayersAcrossRegions from '../../core/blitz/searchPlayersAcrossRegions'; import searchPlayersAcrossRegions from '../blitz/searchPlayersAcrossRegions';
import { getBlitzFromDiscord } from '../../core/blitzkrieg/discordBlitz'; import { getBlitzFromDiscord } from '../blitzkrieg/discordBlitz';
import throwError from '../node/throwError';
export const serverAndIdPattern = /(com|eu|asia)\/[0-9]+/; export const serverAndIdPattern = /(com|eu|asia)\/[0-9]+/;
File renamed without changes.
@@ -1,7 +1,7 @@
import { ButtonInteraction, CacheType } from 'discord.js'; import { ButtonInteraction, CacheType } from 'discord.js';
import { commands } from '..'; import { commands } from '..';
import normalizeInteractionReturnable from '../../../LEGACY_core/discord/normalizeInteractionReturnable';
import throwError from '../../../LEGACY_core/node/throwError'; import throwError from '../../../LEGACY_core/node/throwError';
import normalizeInteractionReturnable from '../../../core/discord/normalizeInteractionReturnable';
export default async function handleButton( export default async function handleButton(
interaction: ButtonInteraction<CacheType>, interaction: ButtonInteraction<CacheType>,
@@ -7,10 +7,10 @@ import {
} from 'discord.js'; } from 'discord.js';
import { commands } from '..'; import { commands } from '..';
import discord from '../../../../discord.json' assert { type: 'json' }; import discord from '../../../../discord.json' assert { type: 'json' };
import normalizeInteractionReturnable from '../../../LEGACY_core/discord/normalizeInteractionReturnable'; import { psa } from '../../../core/discord/psa';
import { psa } from '../../../LEGACY_core/discord/psa';
import embedNegative from '../../../core/discord/embedNegative'; import embedNegative from '../../../core/discord/embedNegative';
import embedWarning from '../../../core/discord/embedWarning'; import embedWarning from '../../../core/discord/embedWarning';
import normalizeInteractionReturnable from '../../../core/discord/normalizeInteractionReturnable';
export default async function handleChatInputCommand( export default async function handleChatInputCommand(
interaction: ChatInputCommandInteraction<CacheType>, interaction: ChatInputCommandInteraction<CacheType>,
+2 -2
View File
@@ -14,8 +14,6 @@ import {
SlashCommandSubcommandsOnlyBuilder, SlashCommandSubcommandsOnlyBuilder,
} from 'discord.js'; } from 'discord.js';
import discord from '../../../discord.json' assert { type: 'json' }; import discord from '../../../discord.json' assert { type: 'json' };
import getClientId from '../../LEGACY_core/node/getClientId';
import isDev from '../../LEGACY_core/node/isDev';
import { secrets } from '../../LEGACY_core/node/secrets'; import { secrets } from '../../LEGACY_core/node/secrets';
import { aboutCommand } from '../../commands/about'; import { aboutCommand } from '../../commands/about';
import { debugCommand } from '../../commands/debug'; import { debugCommand } from '../../commands/debug';
@@ -34,6 +32,8 @@ import { searchPlayersCommand } from '../../commands/searchPlayers';
import { searchTanksCommand } from '../../commands/searchTanks'; import { searchTanksCommand } from '../../commands/searchTanks';
import { statsCommand } from '../../commands/stats'; import { statsCommand } from '../../commands/stats';
import { todayCommand } from '../../commands/today'; import { todayCommand } from '../../commands/today';
import getClientId from '../../core/blitzkrieg/getClientId';
import isDev from '../../core/blitzkrieg/isDev';
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 -1
View File
@@ -1,5 +1,5 @@
import { Client } from 'discord.js'; import { Client } from 'discord.js';
import isDev from '../LEGACY_core/node/isDev'; import isDev from '../core/blitzkrieg/isDev';
export default function ready(client: Client<true>) { export default function ready(client: Client<true>) {
console.log( console.log(
+1 -1
View File
@@ -1,4 +1,3 @@
import { ResolvedPlayer } from '../LEGACY_core/discord/resolvePlayerFromCommand';
import * as Breakdown from '../components/Breakdown'; import * as Breakdown from '../components/Breakdown';
import NoData, { NoDataType } from '../components/NoData'; import NoData, { NoDataType } from '../components/NoData';
import TitleBar from '../components/TitleBar'; import TitleBar from '../components/TitleBar';
@@ -13,6 +12,7 @@ import getTimeDaysAgo from '../core/blitzkrieg/getTimeDaysAgo';
import getStatsInPeriod from '../core/blitzstars/getStatsInPeriod'; import getStatsInPeriod from '../core/blitzstars/getStatsInPeriod';
import { tankAverages } from '../core/blitzstars/tankAverages'; import { tankAverages } from '../core/blitzstars/tankAverages';
import { tankopedia } from '../core/blitzstars/tankopedia'; import { tankopedia } from '../core/blitzstars/tankopedia';
import { ResolvedPlayer } from '../core/discord/resolvePlayerFromCommand';
import calculateWN8 from '../core/statistics/calculateWN8'; import calculateWN8 from '../core/statistics/calculateWN8';
import getWN8Percentile from '../core/statistics/getWN8Percentile'; import getWN8Percentile from '../core/statistics/getWN8Percentile';
import sumStats from '../core/statistics/sumStats'; import sumStats from '../core/statistics/sumStats';