mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-24 03:59:50 +02:00
feat: core chunk 7
This commit is contained in:
1 parent
d726005c38
commit
01dd7ad9c6
39 files changed
+83
-87
No files matched your search
@@ -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();
|
||||||
|
|||||||
@@ -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
@@ -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
@@ -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,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,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 = {
|
||||||
|
|||||||
@@ -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';
|
||||||
|
|||||||
@@ -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 = {
|
||||||
|
|||||||
@@ -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
@@ -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),
|
||||||
]);
|
]);
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -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,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;
|
||||||
@@ -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.
+1
-1
@@ -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.
+2
-2
@@ -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(
|
||||||
+4
-4
@@ -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,
|
||||||
+4
-7
@@ -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';
|
||||||
File renamed without changes.
+3
-3
@@ -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>,
|
||||||
|
|||||||
@@ -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
@@ -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,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';
|
||||||
|
|||||||
Reference in new issue
Block a user