diff --git a/docs/changelogs/1.29.16.md b/docs/changelogs/1.29.16.md new file mode 100644 index 000000000..c111d385d --- /dev/null +++ b/docs/changelogs/1.29.16.md @@ -0,0 +1,18 @@ +# BlitzKit 1.29.16 + +Thank you to [GonnaHetzMe](https://github.com/karelpak1) for your contributions this update. + +## Fixes + +- [GonnaHetzMe] The turret for Centurion I is no longer offset from the body + - Please allow up to 24 hours for the model to update +- Vertical Stabilizers now give the correct 12% buff instead of 15% +- Re-ordering tanks in Compare now works once again +- Fixed review videos from being about the Object 452K across all tanks + - Please allow up to 2 weeks for all tanks to refresh their videos +- Tanks in Mixer with oscillating turrets are not handled properly + +## Features + +- Headings in the Compare tool are now even more compact for mobile devices +- Enabled all tiers for the randomizer in Mixer diff --git a/docs/changelogs/1.30.0.md b/docs/changelogs/1.30.0.md new file mode 100644 index 000000000..cedbf5607 --- /dev/null +++ b/docs/changelogs/1.30.0.md @@ -0,0 +1,23 @@ +# BlitzKit 1.30.0 + +Thank you to [GonnaHetzMe](https://github.com/karelpak1) for your contributions this update. + +## Features + +- Added an equalizer mode for Tankopedia and Compare to preview what tank stats will look like in the upcoming Equalizer game mode + - This feature is in Beta and the stats are subject to change + - Thanks to WoTB News for sourcing data well ahead of the release of the gamemode + - Added a toggle in Tankopedia, right beneath Provisions + - Added button under the shell selector in the Tank Sandbox + - Added another toggle in the Compare table to enable equalizer for all tanks + +## Technical Features + +- [GonnaHetzMe] Enabling dev mode now displays the tank's non-numerical id +- [GonnaHetzMe] The dev id and the new dev name are now copyable on click + +## Fixes + +- [GonnaHetzMe] Tech trees that start at tiers higher than tier 1 like the Blitz Nation ones now properly render their trees in Tankopedia +- [GonnaHetzMe] The tank pitch/yaw inputs in the Tank Sandbox now initialize with the correct values instead of 0 +- [GonnaHetzMe] Large Repair Kits once again use the correct modern icon diff --git a/docs/changelogs/1.30.1.md b/docs/changelogs/1.30.1.md new file mode 100644 index 000000000..9491bc53a --- /dev/null +++ b/docs/changelogs/1.30.1.md @@ -0,0 +1,8 @@ +# BlitzKit 1.30.1 + +Thank you to [GonnaHetzMe](https://github.com/karelpak1) for your contributions this update. + +## Fixes + +- [GonnaHetzMe] Tank hit points in Equalizer mode is now accurate to the game +- Armor highlighting now reflects the actual thicknesses of tanks in Equalizer mode diff --git a/packages/bot/src/commands/ownedTanks.tsx b/packages/bot/src/commands/ownedTanks.tsx index fec0bcd4d..ba4b6e549 100644 --- a/packages/bot/src/commands/ownedTanks.tsx +++ b/packages/bot/src/commands/ownedTanks.tsx @@ -43,7 +43,7 @@ export const ownedTanksCommand = new Promise((resolve) => { tankStats.map(async (tankData) => ({ tankDefinitions: (await tankDefinitions).tanks[tankData.tank_id]!, id: tankData.tank_id, - })) + })), ) ).filter((tank) => tank.tankDefinitions?.tier === tier); const groupedTanks: Record = {}; @@ -69,16 +69,16 @@ export const ownedTanksCommand = new Promise((resolve) => { .filter((tank) => tank.tier === tier) .sort( (a, b) => - TANK_CLASSES.indexOf(a.class) - TANK_CLASSES.indexOf(b.class) + TANK_CLASSES.indexOf(a.class) - TANK_CLASSES.indexOf(b.class), ) .sort( (a, b) => awaitedGameDefinitions.nations.indexOf(a.nation) - - awaitedGameDefinitions.nations.indexOf(b.nation) + awaitedGameDefinitions.nations.indexOf(b.nation), ) .map( (tank) => - `[${flags[tank.nation]} ${markdownEscape(unwrap(tank.name))}]()` + `[${flags[tank.nation]} ${markdownEscape(unwrap(tank.name!))}]()`, ); const lines = [title, ...tankList]; diff --git a/packages/bot/src/commands/replay.tsx b/packages/bot/src/commands/replay.tsx index 364a8ef75..ed6da65fc 100644 --- a/packages/bot/src/commands/replay.tsx +++ b/packages/bot/src/commands/replay.tsx @@ -280,7 +280,7 @@ async function playerListing( }} > {unwrap(tank.name)} - {unwrap(tank.name)} + {unwrap(tank.name!)} diff --git a/packages/bot/src/commands/research.tsx b/packages/bot/src/commands/research.tsx index 7615f40b8..e0a987044 100644 --- a/packages/bot/src/commands/research.tsx +++ b/packages/bot/src/commands/research.tsx @@ -35,49 +35,49 @@ export const researchCommand = new Promise((resolve) => { command: createLocalizedCommand("research") .addStringOption((option) => option - .setName(strings.bot.commands.research.options.target_tank.name) + .setName(strings.bot.commands.research.options.target_tank.name!) .setNameLocalizations( localizationObject( (strings) => strings.bot.commands.research.options.target_tank.name, undefined, - true - ) + true, + ), ) .setDescription( - strings.bot.commands.research.options.target_tank.description + strings.bot.commands.research.options.target_tank.description, ) .setDescriptionLocalizations( localizationObject( (strings) => - strings.bot.commands.research.options.target_tank.description - ) + strings.bot.commands.research.options.target_tank.description, + ), ) .setAutocomplete(true) - .setRequired(true) + .setRequired(true), ) .addStringOption((option) => option - .setName(strings.bot.commands.research.options.starting_tank.name) + .setName(strings.bot.commands.research.options.starting_tank.name!) .setNameLocalizations( localizationObject( (strings) => strings.bot.commands.research.options.starting_tank.name, undefined, - true - ) + true, + ), ) .setDescription( - strings.bot.commands.research.options.starting_tank.description + strings.bot.commands.research.options.starting_tank.description, ) .setDescriptionLocalizations( localizationObject( (strings) => - strings.bot.commands.research.options.starting_tank.description - ) + strings.bot.commands.research.options.starting_tank.description, + ), ) .setAutocomplete(true) - .setRequired(false) + .setRequired(false), ) .addStringOption(addUsernameChoices), @@ -87,7 +87,7 @@ export const researchCommand = new Promise((resolve) => { const targetTankId = await resolveTankId( interaction.options.getString("target-tank", true), interaction.locale, - true + true, ); const startingTankRaw = interaction.options.getString("starting-tank"); const targetTank = awaitedTankDefinitions.tanks[targetTankId]; @@ -99,13 +99,13 @@ export const researchCommand = new Promise((resolve) => { startingTankId = await resolveTankId( startingTankRaw, interaction.locale, - true + true, ); if (targetTankId === startingTankId) { return literals( strings.bot.commands.research.errors.start_end_equal, - { tank: escapeMarkdown(unwrap(targetTank.name)) } + { tank: escapeMarkdown(unwrap(targettank.name!)) }, ); } @@ -113,8 +113,8 @@ export const researchCommand = new Promise((resolve) => { if (startingTank.tier > targetTank.tier) { return literals(strings.bot.commands.research.errors.unordered, { - tank_1: escapeMarkdown(unwrap(startingTank.name)), - tank_2: escapeMarkdown(unwrap(targetTank.name)), + tank_1: escapeMarkdown(unwrap(startingtank.name!)), + tank_2: escapeMarkdown(unwrap(targettank.name!)), }); } @@ -122,21 +122,21 @@ export const researchCommand = new Promise((resolve) => { return literals( strings.bot.commands.research.errors.tanks_not_on_line, { - tank_1: escapeMarkdown(unwrap(targetTank.name)), - tank_2: escapeMarkdown(unwrap(startingTank.name)), - } + tank_1: escapeMarkdown(unwrap(targettank.name!)), + tank_2: escapeMarkdown(unwrap(startingtank.name!)), + }, ); } } else { - if (targetTank.type !== TankType.RESEARCHABLE) { + if (targetTank.type !== TankType.TANK_TYPE_RESEARCHABLE) { return literals(strings.bot.commands.research.errors.non_tech_tree, { - tank: escapeMarkdown(unwrap(targetTank.name)), + tank: escapeMarkdown(unwrap(targettank.name!)), }); } if (targetTank.tier === 1) { return literals(strings.bot.commands.research.errors.tier_1, { - tank: escapeMarkdown(unwrap(targetTank.name)), + tank: escapeMarkdown(unwrap(targettank.name!)), }); } @@ -149,14 +149,14 @@ export const researchCommand = new Promise((resolve) => { if (tankStats.some(({ tank_id }) => tank_id === targetTankId)) { return literals( strings.bot.commands.research.errors.already_researched, - { tank: escapeMarkdown(unwrap(targetTank.name)) } + { tank: escapeMarkdown(unwrap(targettank.name!)) }, ); } const foundAncestor = targetTankAncestry.find( (id) => awaitedTankDefinitions.tanks[id].tier === 1 || - tankStats.some(({ tank_id }) => tank_id === id) + tankStats.some(({ tank_id }) => tank_id === id), ); if (foundAncestor === undefined) { @@ -168,7 +168,7 @@ export const researchCommand = new Promise((resolve) => { const techTreeLine = await buildTechTreeLine( startingTankId, - targetTankId + targetTankId, ); const line = [...techTreeLine, startingTankId].reverse(); @@ -190,7 +190,7 @@ export const researchCommand = new Promise((resolve) => { ) { turretXps.set( turret.id, - turret.research_cost.research_cost_type!.value + turret.research_cost.research_cost_type!.value, ); } @@ -211,7 +211,7 @@ export const researchCommand = new Promise((resolve) => { ) { engineXps.set( engine.id, - engine.research_cost.research_cost_type!.value + engine.research_cost.research_cost_type!.value, ); } }); @@ -223,7 +223,7 @@ export const researchCommand = new Promise((resolve) => { ) { trackXps.set( track.id, - track.research_cost.research_cost_type!.value + track.research_cost.research_cost_type!.value, ); } }); @@ -245,13 +245,13 @@ export const researchCommand = new Promise((resolve) => { return { research: tank.research_cost!.research_cost_type!.value as number, upgrades: moduleXp, - purchase: tank.price.value, + purchase: tank.price!.value, equipment: equipmentPriceMatrix[tank.tier].reduce( (a, b) => a + 3 * b, - 0 + 0, ), }; - }) + }), ); const image = ( @@ -456,7 +456,7 @@ export const researchCommand = new Promise((resolve) => { }} > {unwrap(tank.name)}((resolve) => { color: theme.colors.textHighContrast, }} > - {unwrap(tank.name)} + {unwrap(tank.name!)} @@ -505,9 +505,9 @@ export const researchCommand = new Promise((resolve) => { strings.bot.commands.research.body.research, { cost: costs[index].research?.toLocaleString( - interaction.locale + interaction.locale, ), - } + }, )} @@ -523,7 +523,7 @@ export const researchCommand = new Promise((resolve) => { Free XP icon((resolve) => { > {literals( strings.bot.commands.research.body.upgrades, - { cost: costs[index].upgrades.toLocaleString() } + { cost: costs[index].upgrades.toLocaleString() }, )} @@ -552,7 +552,7 @@ export const researchCommand = new Promise((resolve) => { Silver icon((resolve) => { strings.bot.commands.research.body.purchase, { cost: costs[index].purchase.toLocaleString( - interaction.locale + interaction.locale, ), - } + }, )} @@ -584,7 +584,7 @@ export const researchCommand = new Promise((resolve) => { Silver icon((resolve) => { strings.bot.commands.research.body.equipment, { cost: costs[index].equipment.toLocaleString( - interaction.locale + interaction.locale, ), - } + }, )} ); - }) + }), )} diff --git a/packages/bot/src/components/Breakdown/components/Row.tsx b/packages/bot/src/components/Breakdown/components/Row.tsx index 7ede9b5e5..a5af946d6 100644 --- a/packages/bot/src/components/Breakdown/components/Row.tsx +++ b/packages/bot/src/components/Breakdown/components/Row.tsx @@ -3,14 +3,14 @@ import { TankClass, TankType, TREE_TYPE_ICONS, -} from '@blitzkit/core'; -import { createColors } from 'bepaint'; +} from "@blitzkit/core"; +import { createColors } from "bepaint"; import { type AccentColor, type GrayColor, PALETTES, -} from '../../../core/radix/radixColors'; -import { RowStat } from './RowStat'; +} from "../../../core/radix/radixColors"; +import { RowStat } from "./RowStat"; export interface RowStatItem { title: string; @@ -21,7 +21,7 @@ export interface RowStatItem { } interface RowProps { - displayType?: 'tank' | 'summary'; + displayType?: "tank" | "summary"; naked?: boolean; title: string; minimized?: boolean; @@ -32,7 +32,7 @@ interface RowProps { } export function Row({ - color = 'slate', + color = "slate", stats, title, minimized, @@ -49,20 +49,20 @@ export function Row({ className="session-tracker-row" style={{ maxWidth: naked ? 600 : Infinity, - display: 'flex', - flexDirection: 'column', + display: "flex", + flexDirection: "column", borderRadius: 4, backgroundColor: naked ? `${theme.appBackground2}c0` : theme.appBackground2, - overflow: 'hidden', + overflow: "hidden", }} >
- {displayType === 'tank' && tankClass !== undefined && ( + {displayType === "tank" && tankClass !== undefined && ( {TankClass[tankClass]} )} @@ -81,10 +85,10 @@ export function Row({ diff --git a/packages/bot/src/components/Tanks/components/Item/index.tsx b/packages/bot/src/components/Tanks/components/Item/index.tsx index 5f39f8f1f..f33342c3a 100644 --- a/packages/bot/src/components/Tanks/components/Item/index.tsx +++ b/packages/bot/src/components/Tanks/components/Item/index.tsx @@ -1,5 +1,5 @@ -import { TankClass, TankType, TREE_TYPE_ICONS } from '@blitzkit/core'; -import { theme } from '../../../../stitches.config'; +import { TankClass, TankType, TREE_TYPE_ICONS } from "@blitzkit/core"; +import { theme } from "../../../../stitches.config"; export interface ItemProps { tankClass?: TankClass; @@ -8,9 +8,9 @@ export interface ItemProps { } const TREE_TYPE_COLOR = { - [TankType.RESEARCHABLE]: '', - [TankType.PREMIUM]: '_amber', - [TankType.COLLECTOR]: '_blue', + [TankType.TANK_TYPE_RESEARCHABLE]: "", + [TankType.TANK_TYPE_PREMIUM]: "_amber", + [TankType.TANK_TYPE_COLLECTOR]: "_blue", } as const; export function Item({ @@ -21,12 +21,12 @@ export function Item({ return (
{tankType && ( @@ -52,7 +52,7 @@ export function Item({ diff --git a/packages/bot/src/core/blitzkit/filtersToDescription.ts b/packages/bot/src/core/blitzkit/filtersToDescription.ts index e4a19a3c1..a8c8377cd 100644 --- a/packages/bot/src/core/blitzkit/filtersToDescription.ts +++ b/packages/bot/src/core/blitzkit/filtersToDescription.ts @@ -6,21 +6,21 @@ import { translator } from "../localization/translator"; export async function filtersToDescription( { nation, tier, type, class: tankClass, tank }: StatFilters, - locale: Locale + locale: Locale, ) { const { strings, bkLocale } = translator(locale); const awaitedTankDefinitions = await fetchTankDefinitions(); const info: string[] = []; // TODO: somehow localize tank names? - if (tank) return awaitedTankDefinitions.tanks[tank].name.locales[bkLocale]; + if (tank) return awaitedTankDefinitions.tanks[tank].name!.locales[bkLocale]; if (nation) info.push((strings.common.nations as Record)[nation]); if (tier) { info.push( literals(strings.bot.common.filters.tier, { tier: TIER_ROMAN_NUMERALS[tier], - }) + }), ); } if (tankClass) info.push(strings.common.tank_class_short[tankClass]); diff --git a/packages/bot/src/core/blitzstars/filterStats.ts b/packages/bot/src/core/blitzstars/filterStats.ts index 9f936d87d..2936170a9 100644 --- a/packages/bot/src/core/blitzstars/filterStats.ts +++ b/packages/bot/src/core/blitzstars/filterStats.ts @@ -34,12 +34,12 @@ export async function filterStats( (filters.tier === undefined || entry.tier === filters.tier) && (filters.class === undefined || entry.class === filters.class) && (filters.type === undefined || - (filters.type === TankType.COLLECTOR && - entry.type === TankType.COLLECTOR) || - (filters.type === TankType.PREMIUM && - entry.type === TankType.PREMIUM) || - (filters.type === TankType.RESEARCHABLE && - entry.type === TankType.RESEARCHABLE)) && + (filters.type === TankType.TANK_TYPE_COLLECTOR && + entry.type === TankType.TANK_TYPE_COLLECTOR) || + (filters.type === TankType.TANK_TYPE_PREMIUM && + entry.type === TankType.TANK_TYPE_PREMIUM) || + (filters.type === TankType.TANK_TYPE_RESEARCHABLE && + entry.type === TankType.TANK_TYPE_RESEARCHABLE)) && (filters.tank === undefined || entry.id === filters.tank) ); }); diff --git a/packages/bot/src/core/discord/addTankChoices.ts b/packages/bot/src/core/discord/addTankChoices.ts index 0cfafc6f8..3b38e220b 100644 --- a/packages/bot/src/core/discord/addTankChoices.ts +++ b/packages/bot/src/core/discord/addTankChoices.ts @@ -1,12 +1,12 @@ -import { Locale, SlashCommandStringOption } from 'discord.js'; -import { translator } from '../localization/translator'; -import { localizationObject } from './localizationObject'; +import { Locale, SlashCommandStringOption } from "discord.js"; +import { translator } from "../localization/translator"; +import { localizationObject } from "./localizationObject"; export function addTankChoices(option: SlashCommandStringOption) { const { strings } = translator(Locale.EnglishUS); return option - .setName(strings.bot.common.options.tank.name) + .setName(strings.bot.common.options.tank.name!) .setNameLocalizations( localizationObject( (strings) => strings.bot.common.options.tank.name, diff --git a/packages/bot/src/core/discord/autocompleteTanks.ts b/packages/bot/src/core/discord/autocompleteTanks.ts index 8b55952ac..e43c975fb 100644 --- a/packages/bot/src/core/discord/autocompleteTanks.ts +++ b/packages/bot/src/core/discord/autocompleteTanks.ts @@ -13,13 +13,13 @@ import { } from "./autocompleteClan/constants"; export const tankNamesTechTreeOnly = fetchTankNames().then((names) => - names.filter((tank) => tank.treeType === TankType.RESEARCHABLE) + names.filter((tank) => tank.treeType === TankType.TANK_TYPE_RESEARCHABLE), ); export async function autocompleteTanks( interaction: AutocompleteInteraction, techTreeOnly = false, - fields = ["tank"] + fields = ["tank"], ) { const { unwrap } = translator(interaction.locale); const focusedOption = interaction.options.getFocused(true); @@ -31,7 +31,7 @@ export async function autocompleteTanks( go( focusedOption.value, await (techTreeOnly ? tankNamesTechTreeOnly : tankNames), - { keys: SEARCH_KEYS, limit: 10 } + { keys: SEARCH_KEYS, limit: 10 }, ).map(async (item) => { let name = unwrap(item.obj.searchableName); @@ -42,7 +42,7 @@ export async function autocompleteTanks( 0, unwrap(item.obj.searchableName).length - overSize - - OVERFLOW_SUFFIX.length + OVERFLOW_SUFFIX.length, )}${OVERFLOW_SUFFIX}`; } @@ -50,8 +50,8 @@ export async function autocompleteTanks( name, value: `${item.obj.id}`, } satisfies ApplicationCommandOptionChoiceData; - }) + }), ) - : [] + : [], ); } diff --git a/packages/core/src/blitz/canSplash.ts b/packages/core/src/blitz/canSplash.ts index 61746feb1..c6151665b 100644 --- a/packages/core/src/blitz/canSplash.ts +++ b/packages/core/src/blitz/canSplash.ts @@ -1,5 +1,7 @@ import { ShellDefinition, ShellType } from "../protos"; -export function canSplash(type: ShellDefinition["type"]): type is ShellType.HE { - return type === ShellType.HE; +export function canSplash( + type: ShellDefinition["type"], +): type is ShellType.SHELL_TYPE_HE { + return type === ShellType.SHELL_TYPE_HE; } diff --git a/packages/core/src/blitz/constants.ts b/packages/core/src/blitz/constants.ts index d118c557a..64ec733be 100644 --- a/packages/core/src/blitz/constants.ts +++ b/packages/core/src/blitz/constants.ts @@ -2,22 +2,22 @@ import { TankClass, TankType } from "../protos"; import type { BlitzStats } from "../statistics"; export const TANK_TYPES = [ - TankType.RESEARCHABLE, - TankType.PREMIUM, - TankType.COLLECTOR, + TankType.TANK_TYPE_RESEARCHABLE, + TankType.TANK_TYPE_PREMIUM, + TankType.TANK_TYPE_COLLECTOR, ]; export const TANK_TYPE_COMMAND_NAMES = { - [TankType.RESEARCHABLE]: "researchable", - [TankType.PREMIUM]: "premium", - [TankType.COLLECTOR]: "collector", + [TankType.TANK_TYPE_RESEARCHABLE]: "researchable", + [TankType.TANK_TYPE_PREMIUM]: "premium", + [TankType.TANK_TYPE_COLLECTOR]: "collector", }; export const TANK_CLASSES = [ - TankClass.LIGHT, - TankClass.MEDIUM, - TankClass.HEAVY, - TankClass.TANK_DESTROYER, + TankClass.TANK_CLASS_LIGHT, + TankClass.TANK_CLASS_MEDIUM, + TankClass.TANK_CLASS_HEAVY, + TankClass.TANK_CLASS_TANK_DESTROYER, ]; export const emptyAllStats: BlitzStats = { diff --git a/packages/core/src/blitzkit/checkConsumableProvisionInclusivity.ts b/packages/core/src/blitzkit/checkConsumableProvisionInclusivity.ts index ad1a90ac8..7b942ba94 100644 --- a/packages/core/src/blitzkit/checkConsumableProvisionInclusivity.ts +++ b/packages/core/src/blitzkit/checkConsumableProvisionInclusivity.ts @@ -9,7 +9,7 @@ import { export function checkConsumableProvisionInclusivity( consumableProvision: Consumable | Provision, tank: TankDefinition, - gun: GunDefinition + gun: GunDefinition, ) { const included = consumableProvision.include?.every((rule) => { switch (rule.filter_type!.$case) { @@ -46,7 +46,7 @@ export function checkConsumableProvisionInclusivity( case "categories": return rule.filter_type!.value.categories.some((category) => { switch (category) { - case ConsumableTankCategoryFilterCategory.CLIP: + case ConsumableTankCategoryFilterCategory.CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP: return gun.gun_type!.$case !== "regular"; } }); diff --git a/packages/core/src/blitzkit/isExplosive.ts b/packages/core/src/blitzkit/isExplosive.ts index 8bafa89bf..aae220abe 100644 --- a/packages/core/src/blitzkit/isExplosive.ts +++ b/packages/core/src/blitzkit/isExplosive.ts @@ -1,7 +1,7 @@ import { ShellDefinition, ShellType } from "../protos"; export function isExplosive( - type: ShellDefinition["type"] -): type is ShellType.HEAT | ShellType.HE { - return type === ShellType.HEAT || type === ShellType.HE; + type: ShellDefinition["type"], +): type is ShellType.SHELL_TYPE_HEAT | ShellType.SHELL_TYPE_HE { + return type === ShellType.SHELL_TYPE_HEAT || type === ShellType.SHELL_TYPE_HE; } diff --git a/packages/core/src/blitzkit/metaSortTank.ts b/packages/core/src/blitzkit/metaSortTank.ts index 2ab0f491f..f146915b1 100644 --- a/packages/core/src/blitzkit/metaSortTank.ts +++ b/packages/core/src/blitzkit/metaSortTank.ts @@ -2,27 +2,27 @@ import { TANK_CLASSES } from "../blitz/constants"; import { GameDefinitions, TankDefinition, TankType } from "../protos"; const treeTypeOrder = [ - TankType.RESEARCHABLE, - TankType.PREMIUM, - TankType.COLLECTOR, + TankType.TANK_TYPE_RESEARCHABLE, + TankType.TANK_TYPE_PREMIUM, + TankType.TANK_TYPE_COLLECTOR, ]; export function metaSortTank( tanks: TankDefinition[], - gameDefinitions: GameDefinitions + gameDefinitions: GameDefinitions, ) { return tanks .sort((a, b) => b.tier - a.tier) .sort( - (a, b) => treeTypeOrder.indexOf(b.type) - treeTypeOrder.indexOf(a.type) + (a, b) => treeTypeOrder.indexOf(b.type) - treeTypeOrder.indexOf(a.type), ) .sort( - (a, b) => TANK_CLASSES.indexOf(b.class) - TANK_CLASSES.indexOf(a.class) + (a, b) => TANK_CLASSES.indexOf(b.class) - TANK_CLASSES.indexOf(a.class), ) .sort( (a, b) => gameDefinitions.nations.indexOf(b.nation) - - gameDefinitions.nations.indexOf(a.nation) + gameDefinitions.nations.indexOf(a.nation), ) .sort((a, b) => a.tier - b.tier); } diff --git a/packages/core/src/blitzkit/normalizeBoundingBox.ts b/packages/core/src/blitzkit/normalizeBoundingBox.ts index 90c5ca673..8e95ccd55 100644 --- a/packages/core/src/blitzkit/normalizeBoundingBox.ts +++ b/packages/core/src/blitzkit/normalizeBoundingBox.ts @@ -2,8 +2,8 @@ import { BoundingBox, Vector3 } from "../protos"; export function normalizeBoundingBox(boundingBox: BoundingBox) { return { - x: boundingBox.max.x - boundingBox.min.x, - y: boundingBox.max.y - boundingBox.min.y, - z: boundingBox.max.z - boundingBox.min.z, + x: boundingBox.max!.x - boundingBox.min!.x, + y: boundingBox.max!.y - boundingBox.min!.y, + z: boundingBox.max!.z - boundingBox.min!.z, } satisfies Vector3; } diff --git a/packages/core/src/blitzkit/resolvePenetrationCoefficient.ts b/packages/core/src/blitzkit/resolvePenetrationCoefficient.ts index 1cd746e5f..da3b644be 100644 --- a/packages/core/src/blitzkit/resolvePenetrationCoefficient.ts +++ b/packages/core/src/blitzkit/resolvePenetrationCoefficient.ts @@ -1,16 +1,21 @@ -import { ShellType } from '../protos'; +import { Equalizer, ShellType } from "../protos"; export function resolvePenetrationCoefficient( calibratedShells: boolean, + equalize: boolean, type: ShellType, + equalizerObj?: Equalizer, ) { - if (!calibratedShells) return 1; + const calibrated = calibratedShells + ? type === ShellType.SHELL_TYPE_AP + ? 1.08 + : type === ShellType.SHELL_TYPE_APCR + ? 1.05 + : type === ShellType.SHELL_TYPE_HEAT + ? 1.13 + : 1.08 + : 1; + const equalizer = (equalize ? equalizerObj?.penetration : undefined) ?? 1; - return type === ShellType.AP - ? 1.08 - : type === ShellType.APCR - ? 1.05 - : type === ShellType.HEAT - ? 1.13 - : 1.08; + return calibrated * equalizer; } diff --git a/packages/core/src/blitzkit/tankDefinitions/constants.ts b/packages/core/src/blitzkit/tankDefinitions/constants.ts index d2d70b602..5224cdae7 100644 --- a/packages/core/src/blitzkit/tankDefinitions/constants.ts +++ b/packages/core/src/blitzkit/tankDefinitions/constants.ts @@ -1,74 +1,74 @@ -import { times } from 'lodash-es'; -import { CrewType, ShellType, TankClass, TankType } from '../../protos'; +import { times } from "lodash-es"; +import { CrewType, ShellType, TankClass, TankType } from "../../protos"; export const SHELL_NAMES: Record = { - [ShellType.AP]: 'AP', - [ShellType.APCR]: 'APCR', - [ShellType.HEAT]: 'HEAT', - [ShellType.HE]: 'HE', + [ShellType.SHELL_TYPE_AP]: "AP", + [ShellType.SHELL_TYPE_APCR]: "APCR", + [ShellType.SHELL_TYPE_HEAT]: "HEAT", + [ShellType.SHELL_TYPE_HE]: "HE", }; export const CREW_MEMBER_NAMES = { - [CrewType.COMMANDER]: 'commander', - [CrewType.DRIVER]: 'driver', - [CrewType.GUNNER]: 'gunner', - [CrewType.LOADER]: 'loader', - [CrewType.RADIOMAN]: 'radioman', + [CrewType.CREW_TYPE_COMMANDER]: "commander", + [CrewType.CREW_TYPE_DRIVER]: "driver", + [CrewType.CREW_TYPE_GUNNER]: "gunner", + [CrewType.CREW_TYPE_LOADER]: "loader", + [CrewType.CREW_TYPE_RADIOMAN]: "radioman", } as const; /** * @deprecated use svg */ export const TANK_ICONS: Record = { - [TankClass.TANK_DESTROYER]: 'https://i.imgur.com/BIHSEH0.png', - [TankClass.LIGHT]: 'https://i.imgur.com/CSNha5V.png', - [TankClass.MEDIUM]: 'https://i.imgur.com/wvf3ltm.png', - [TankClass.HEAVY]: 'https://i.imgur.com/ECeqlZa.png', + [TankClass.TANK_CLASS_TANK_DESTROYER]: "https://i.imgur.com/BIHSEH0.png", + [TankClass.TANK_CLASS_LIGHT]: "https://i.imgur.com/CSNha5V.png", + [TankClass.TANK_CLASS_MEDIUM]: "https://i.imgur.com/wvf3ltm.png", + [TankClass.TANK_CLASS_HEAVY]: "https://i.imgur.com/ECeqlZa.png", }; /** * @deprecated use svg */ export const TANK_ICONS_PREMIUM: Record = { - [TankClass.TANK_DESTROYER]: 'https://i.imgur.com/TCu3EdR.png', - [TankClass.LIGHT]: 'https://i.imgur.com/zdkpTRb.png', - [TankClass.MEDIUM]: 'https://i.imgur.com/3z7eHX6.png', - [TankClass.HEAVY]: 'https://i.imgur.com/P3vbmyA.png', + [TankClass.TANK_CLASS_TANK_DESTROYER]: "https://i.imgur.com/TCu3EdR.png", + [TankClass.TANK_CLASS_LIGHT]: "https://i.imgur.com/zdkpTRb.png", + [TankClass.TANK_CLASS_MEDIUM]: "https://i.imgur.com/3z7eHX6.png", + [TankClass.TANK_CLASS_HEAVY]: "https://i.imgur.com/P3vbmyA.png", }; /** * @deprecated use svg */ export const TANK_ICONS_COLLECTOR: Record = { - [TankClass.TANK_DESTROYER]: 'https://i.imgur.com/WTjeirB.png', - [TankClass.LIGHT]: 'https://i.imgur.com/EwhtKkU.png', - [TankClass.MEDIUM]: 'https://i.imgur.com/u8YDMBh.png', - [TankClass.HEAVY]: 'https://i.imgur.com/8xRf3nc.png', + [TankClass.TANK_CLASS_TANK_DESTROYER]: "https://i.imgur.com/WTjeirB.png", + [TankClass.TANK_CLASS_LIGHT]: "https://i.imgur.com/EwhtKkU.png", + [TankClass.TANK_CLASS_MEDIUM]: "https://i.imgur.com/u8YDMBh.png", + [TankClass.TANK_CLASS_HEAVY]: "https://i.imgur.com/8xRf3nc.png", }; export const TIERS = times(10, (index) => index + 1); export const TIER_ROMAN_NUMERALS: Record = { - 1: 'I', - 2: 'II', - 3: 'III', - 4: 'IV', - 5: 'V', - 6: 'VI', - 7: 'VII', - 8: 'VIII', - 9: 'IX', - 10: 'X', + 1: "I", + 2: "II", + 3: "III", + 4: "IV", + 5: "V", + 6: "VI", + 7: "VII", + 8: "VIII", + 9: "IX", + 10: "X", }; export const flags: Record = { - ussr: '<:ussr:1218421042033197197>', - germany: '🇩🇪', - usa: '🇺🇸', - china: '🇨🇳', - uk: '🇬🇧', - france: '🇫🇷', - japan: '🇯🇵', - european: '🇪🇺', - other: '<:other:1218421572243558482>', + ussr: "<:ussr:1218421042033197197>", + germany: "🇩🇪", + usa: "🇺🇸", + china: "🇨🇳", + uk: "🇬🇧", + france: "🇫🇷", + japan: "🇯🇵", + european: "🇪🇺", + other: "<:other:1218421572243558482>", }; export const TREE_TYPE_ICONS: Record> = { - [TankType.RESEARCHABLE]: TANK_ICONS, - [TankType.PREMIUM]: TANK_ICONS_PREMIUM, - [TankType.COLLECTOR]: TANK_ICONS_COLLECTOR, + [TankType.TANK_TYPE_RESEARCHABLE]: TANK_ICONS, + [TankType.TANK_TYPE_PREMIUM]: TANK_ICONS_PREMIUM, + [TankType.TANK_TYPE_COLLECTOR]: TANK_ICONS_COLLECTOR, }; diff --git a/packages/core/src/blitzkit/tankNames.ts b/packages/core/src/blitzkit/tankNames.ts index 57018ee21..d778ed33e 100644 --- a/packages/core/src/blitzkit/tankNames.ts +++ b/packages/core/src/blitzkit/tankNames.ts @@ -15,7 +15,7 @@ export async function fetchTankNames() { tankDefinitionsArray.map(async (tank) => { const searchableNameDeburr: I18nString = { locales: {} }; - Object.entries(tank.name).forEach(([key, value]) => { + Object.entries(tank.name!).forEach(([key, value]) => { searchableNameDeburr.locales[key] = deburr(value); }); @@ -28,8 +28,8 @@ export async function fetchTankNames() { ?.map((id) => locales.supported.map( ({ locale }) => - camouflageDefinitions.camouflages[id]?.name.locales[locale] - ) + camouflageDefinitions.camouflages[id]?.name!.locales[locale], + ), ) .flat() .filter(Boolean) @@ -37,7 +37,7 @@ export async function fetchTankNames() { .join(" "), treeType: tank.type, }; - }) + }), ); } diff --git a/packages/core/src/blitzkit/unionBoundingBox.ts b/packages/core/src/blitzkit/unionBoundingBox.ts index 29964b34a..63abaef21 100644 --- a/packages/core/src/blitzkit/unionBoundingBox.ts +++ b/packages/core/src/blitzkit/unionBoundingBox.ts @@ -3,14 +3,14 @@ import { BoundingBox } from "../protos"; export function unionBoundingBox(a: BoundingBox, b: BoundingBox) { return { min: { - x: Math.min(a.min.x, b.min.x), - y: Math.min(a.min.y, b.min.y), - z: Math.min(a.min.z, b.min.z), + x: Math.min(a.min!.x, b.min!.x), + y: Math.min(a.min!.y, b.min!.y), + z: Math.min(a.min!.z, b.min!.z), }, max: { - x: Math.max(a.max.x, b.max.x), - y: Math.max(a.max.y, b.max.y), - z: Math.max(a.max.z, b.max.z), + x: Math.max(a.max!.x, b.max!.x), + y: Math.max(a.max!.y, b.max!.y), + z: Math.max(a.max!.z, b.max!.z), }, } satisfies BoundingBox; } diff --git a/packages/core/src/protos/average_definitions.proto b/packages/core/src/protos/average_definitions.proto index 3844b4738..693edab02 100644 --- a/packages/core/src/protos/average_definitions.proto +++ b/packages/core/src/protos/average_definitions.proto @@ -4,44 +4,44 @@ package blitzkit; message AverageDefinitions { map averages = 1; - required Samples samples = 2; - required uint64 time = 3; + required Samples samples = 2; + required uint64 time = 3; } message AverageDefinitionsEntry { - required AverageDefinitionsAllStats mu = 1; - required AverageDefinitionsAllStats sigma = 2; - required AverageDefinitionsAllStats r = 3; - required Samples samples = 4; + required AverageDefinitionsAllStats mu = 1; + required AverageDefinitionsAllStats sigma = 2; + required AverageDefinitionsAllStats r = 3; + required Samples samples = 4; } message AverageDefinitionsAllStats { - required float battles = 1; - required float capture_points = 2; - required float damage_dealt = 3; - required float damage_received = 4; + required float battles = 1; + required float capture_points = 2; + required float damage_dealt = 3; + required float damage_received = 4; required float dropped_capture_points = 5; - required float frags = 6; - required float frags8p = 7; - required float hits = 8; - required float losses = 9; - required float max_frags = 10; - required float max_xp = 11; - required float shots = 12; - required float spotted = 13; - required float survived_battles = 14; - required float win_and_survived = 15; - required float wins = 16; - required float xp = 17; - required float battle_life_time = 18; + required float frags = 6; + required float frags8p = 7; + required float hits = 8; + required float losses = 9; + required float max_frags = 10; + required float max_xp = 11; + required float shots = 12; + required float spotted = 13; + required float survived_battles = 14; + required float win_and_survived = 15; + required float wins = 16; + required float xp = 17; + required float battle_life_time = 18; } message Samples { - required uint32 d_1 = 1; - required uint32 d_7 = 2; - required uint32 d_30 = 3; - required uint32 d_60 = 4; - required uint32 d_90 = 5; + required uint32 d_1 = 1; + required uint32 d_7 = 2; + required uint32 d_30 = 3; + required uint32 d_60 = 4; + required uint32 d_90 = 5; required uint32 d_120 = 6; required uint32 total = 7; } \ No newline at end of file diff --git a/packages/core/src/protos/average_definitions.ts b/packages/core/src/protos/average_definitions.ts index 1b75b45d3..32a76b863 100644 --- a/packages/core/src/protos/average_definitions.ts +++ b/packages/core/src/protos/average_definitions.ts @@ -1,8 +1,8 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/average_definitions.proto +// source: average_definitions.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; @@ -11,7 +11,7 @@ export const protobufPackage = "blitzkit"; export interface AverageDefinitions { averages: { [key: number]: AverageDefinitionsEntry }; - samples: Samples; + samples: Samples | undefined; time: number; } @@ -21,10 +21,10 @@ export interface AverageDefinitions_AveragesEntry { } export interface AverageDefinitionsEntry { - mu: AverageDefinitionsAllStats; - sigma: AverageDefinitionsAllStats; - r: AverageDefinitionsAllStats; - samples: Samples; + mu: AverageDefinitionsAllStats | undefined; + sigma: AverageDefinitionsAllStats | undefined; + r: AverageDefinitionsAllStats | undefined; + samples: Samples | undefined; } export interface AverageDefinitionsAllStats { @@ -58,13 +58,13 @@ export interface Samples { total: number; } -export function createBaseAverageDefinitions(): AverageDefinitions { - return { averages: {}, samples: createBaseSamples(), time: 0 }; +function createBaseAverageDefinitions(): AverageDefinitions { + return { averages: {}, samples: undefined, time: 0 }; } export const AverageDefinitions: MessageFns = { encode(message: AverageDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - Object.entries(message.averages).forEach(([key, value]) => { + globalThis.Object.entries(message.averages).forEach(([key, value]: [string, AverageDefinitionsEntry]) => { AverageDefinitions_AveragesEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); if (message.samples !== undefined) { @@ -78,7 +78,7 @@ export const AverageDefinitions: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): AverageDefinitions { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseAverageDefinitions(); while (reader.pos < end) { const tag = reader.uint32(); @@ -122,20 +122,23 @@ export const AverageDefinitions: MessageFns = { fromJSON(object: any): AverageDefinitions { return { averages: isObject(object.averages) - ? Object.entries(object.averages).reduce<{ [key: number]: AverageDefinitionsEntry }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = AverageDefinitionsEntry.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.averages) as [string, any][]).reduce( + (acc: { [key: number]: AverageDefinitionsEntry }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = AverageDefinitionsEntry.fromJSON(value); + return acc; + }, + {}, + ) : {}, - samples: Samples.fromJSON(assertSet("AverageDefinitions.samples", object.samples)), - time: globalThis.Number(assertSet("AverageDefinitions.time", object.time)), + samples: isSet(object.samples) ? Samples.fromJSON(object.samples) : undefined, + time: isSet(object.time) ? globalThis.Number(object.time) : 0, }; }, toJSON(message: AverageDefinitions): unknown { const obj: any = {}; if (message.averages) { - const entries = Object.entries(message.averages); + const entries = globalThis.Object.entries(message.averages) as [string, AverageDefinitionsEntry][]; if (entries.length > 0) { obj.averages = {}; entries.forEach(([k, v]) => { @@ -157,8 +160,8 @@ export const AverageDefinitions: MessageFns = { }, fromPartial, I>>(object: I): AverageDefinitions { const message = createBaseAverageDefinitions(); - message.averages = Object.entries(object.averages ?? {}).reduce<{ [key: number]: AverageDefinitionsEntry }>( - (acc, [key, value]) => { + message.averages = (globalThis.Object.entries(object.averages ?? {}) as [string, AverageDefinitionsEntry][]).reduce( + (acc: { [key: number]: AverageDefinitionsEntry }, [key, value]: [string, AverageDefinitionsEntry]) => { if (value !== undefined) { acc[globalThis.Number(key)] = AverageDefinitionsEntry.fromPartial(value); } @@ -168,19 +171,19 @@ export const AverageDefinitions: MessageFns = { ); message.samples = (object.samples !== undefined && object.samples !== null) ? Samples.fromPartial(object.samples) - : createBaseSamples(); + : undefined; message.time = object.time ?? 0; return message; }, }; -export function createBaseAverageDefinitions_AveragesEntry(): AverageDefinitions_AveragesEntry { - return { key: 0, value: createBaseAverageDefinitionsEntry() }; +function createBaseAverageDefinitions_AveragesEntry(): AverageDefinitions_AveragesEntry { + return { key: 0, value: undefined }; } export const AverageDefinitions_AveragesEntry: MessageFns = { encode(message: AverageDefinitions_AveragesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -191,7 +194,7 @@ export const AverageDefinitions_AveragesEntry: MessageFns = { @@ -284,7 +282,7 @@ export const AverageDefinitionsEntry: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): AverageDefinitionsEntry { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseAverageDefinitionsEntry(); while (reader.pos < end) { const tag = reader.uint32(); @@ -332,10 +330,10 @@ export const AverageDefinitionsEntry: MessageFns = { fromJSON(object: any): AverageDefinitionsEntry { return { - mu: AverageDefinitionsAllStats.fromJSON(assertSet("AverageDefinitionsEntry.mu", object.mu)), - sigma: AverageDefinitionsAllStats.fromJSON(assertSet("AverageDefinitionsEntry.sigma", object.sigma)), - r: AverageDefinitionsAllStats.fromJSON(assertSet("AverageDefinitionsEntry.r", object.r)), - samples: Samples.fromJSON(assertSet("AverageDefinitionsEntry.samples", object.samples)), + mu: isSet(object.mu) ? AverageDefinitionsAllStats.fromJSON(object.mu) : undefined, + sigma: isSet(object.sigma) ? AverageDefinitionsAllStats.fromJSON(object.sigma) : undefined, + r: isSet(object.r) ? AverageDefinitionsAllStats.fromJSON(object.r) : undefined, + samples: isSet(object.samples) ? Samples.fromJSON(object.samples) : undefined, }; }, @@ -363,21 +361,21 @@ export const AverageDefinitionsEntry: MessageFns = { const message = createBaseAverageDefinitionsEntry(); message.mu = (object.mu !== undefined && object.mu !== null) ? AverageDefinitionsAllStats.fromPartial(object.mu) - : createBaseAverageDefinitionsAllStats(); + : undefined; message.sigma = (object.sigma !== undefined && object.sigma !== null) ? AverageDefinitionsAllStats.fromPartial(object.sigma) - : createBaseAverageDefinitionsAllStats(); + : undefined; message.r = (object.r !== undefined && object.r !== null) ? AverageDefinitionsAllStats.fromPartial(object.r) - : createBaseAverageDefinitionsAllStats(); + : undefined; message.samples = (object.samples !== undefined && object.samples !== null) ? Samples.fromPartial(object.samples) - : createBaseSamples(); + : undefined; return message; }, }; -export function createBaseAverageDefinitionsAllStats(): AverageDefinitionsAllStats { +function createBaseAverageDefinitionsAllStats(): AverageDefinitionsAllStats { return { battles: 0, capture_points: 0, @@ -461,7 +459,7 @@ export const AverageDefinitionsAllStats: MessageFns decode(input: BinaryReader | Uint8Array, length?: number): AverageDefinitionsAllStats { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseAverageDefinitionsAllStats(); while (reader.pos < end) { const tag = reader.uint32(); @@ -621,34 +619,60 @@ export const AverageDefinitionsAllStats: MessageFns fromJSON(object: any): AverageDefinitionsAllStats { return { - battles: globalThis.Number(assertSet("AverageDefinitionsAllStats.battles", object.battles)), - capture_points: globalThis.Number(assertSet("AverageDefinitionsAllStats.capture_points", object.capture_points)), - damage_dealt: globalThis.Number(assertSet("AverageDefinitionsAllStats.damage_dealt", object.damage_dealt)), - damage_received: globalThis.Number( - assertSet("AverageDefinitionsAllStats.damage_received", object.damage_received), - ), - dropped_capture_points: globalThis.Number( - assertSet("AverageDefinitionsAllStats.dropped_capture_points", object.dropped_capture_points), - ), - frags: globalThis.Number(assertSet("AverageDefinitionsAllStats.frags", object.frags)), - frags8p: globalThis.Number(assertSet("AverageDefinitionsAllStats.frags8p", object.frags8p)), - hits: globalThis.Number(assertSet("AverageDefinitionsAllStats.hits", object.hits)), - losses: globalThis.Number(assertSet("AverageDefinitionsAllStats.losses", object.losses)), - max_frags: globalThis.Number(assertSet("AverageDefinitionsAllStats.max_frags", object.max_frags)), - max_xp: globalThis.Number(assertSet("AverageDefinitionsAllStats.max_xp", object.max_xp)), - shots: globalThis.Number(assertSet("AverageDefinitionsAllStats.shots", object.shots)), - spotted: globalThis.Number(assertSet("AverageDefinitionsAllStats.spotted", object.spotted)), - survived_battles: globalThis.Number( - assertSet("AverageDefinitionsAllStats.survived_battles", object.survived_battles), - ), - win_and_survived: globalThis.Number( - assertSet("AverageDefinitionsAllStats.win_and_survived", object.win_and_survived), - ), - wins: globalThis.Number(assertSet("AverageDefinitionsAllStats.wins", object.wins)), - xp: globalThis.Number(assertSet("AverageDefinitionsAllStats.xp", object.xp)), - battle_life_time: globalThis.Number( - assertSet("AverageDefinitionsAllStats.battle_life_time", object.battle_life_time), - ), + battles: isSet(object.battles) ? globalThis.Number(object.battles) : 0, + capture_points: isSet(object.capturePoints) + ? globalThis.Number(object.capturePoints) + : isSet(object.capture_points) + ? globalThis.Number(object.capture_points) + : 0, + damage_dealt: isSet(object.damageDealt) + ? globalThis.Number(object.damageDealt) + : isSet(object.damage_dealt) + ? globalThis.Number(object.damage_dealt) + : 0, + damage_received: isSet(object.damageReceived) + ? globalThis.Number(object.damageReceived) + : isSet(object.damage_received) + ? globalThis.Number(object.damage_received) + : 0, + dropped_capture_points: isSet(object.droppedCapturePoints) + ? globalThis.Number(object.droppedCapturePoints) + : isSet(object.dropped_capture_points) + ? globalThis.Number(object.dropped_capture_points) + : 0, + frags: isSet(object.frags) ? globalThis.Number(object.frags) : 0, + frags8p: isSet(object.frags8p) ? globalThis.Number(object.frags8p) : 0, + hits: isSet(object.hits) ? globalThis.Number(object.hits) : 0, + losses: isSet(object.losses) ? globalThis.Number(object.losses) : 0, + max_frags: isSet(object.maxFrags) + ? globalThis.Number(object.maxFrags) + : isSet(object.max_frags) + ? globalThis.Number(object.max_frags) + : 0, + max_xp: isSet(object.maxXp) + ? globalThis.Number(object.maxXp) + : isSet(object.max_xp) + ? globalThis.Number(object.max_xp) + : 0, + shots: isSet(object.shots) ? globalThis.Number(object.shots) : 0, + spotted: isSet(object.spotted) ? globalThis.Number(object.spotted) : 0, + survived_battles: isSet(object.survivedBattles) + ? globalThis.Number(object.survivedBattles) + : isSet(object.survived_battles) + ? globalThis.Number(object.survived_battles) + : 0, + win_and_survived: isSet(object.winAndSurvived) + ? globalThis.Number(object.winAndSurvived) + : isSet(object.win_and_survived) + ? globalThis.Number(object.win_and_survived) + : 0, + wins: isSet(object.wins) ? globalThis.Number(object.wins) : 0, + xp: isSet(object.xp) ? globalThis.Number(object.xp) : 0, + battle_life_time: isSet(object.battleLifeTime) + ? globalThis.Number(object.battleLifeTime) + : isSet(object.battle_life_time) + ? globalThis.Number(object.battle_life_time) + : 0, }; }, @@ -658,16 +682,16 @@ export const AverageDefinitionsAllStats: MessageFns obj.battles = message.battles; } if (message.capture_points !== 0) { - obj.capture_points = message.capture_points; + obj.capturePoints = message.capture_points; } if (message.damage_dealt !== 0) { - obj.damage_dealt = message.damage_dealt; + obj.damageDealt = message.damage_dealt; } if (message.damage_received !== 0) { - obj.damage_received = message.damage_received; + obj.damageReceived = message.damage_received; } if (message.dropped_capture_points !== 0) { - obj.dropped_capture_points = message.dropped_capture_points; + obj.droppedCapturePoints = message.dropped_capture_points; } if (message.frags !== 0) { obj.frags = message.frags; @@ -682,10 +706,10 @@ export const AverageDefinitionsAllStats: MessageFns obj.losses = message.losses; } if (message.max_frags !== 0) { - obj.max_frags = message.max_frags; + obj.maxFrags = message.max_frags; } if (message.max_xp !== 0) { - obj.max_xp = message.max_xp; + obj.maxXp = message.max_xp; } if (message.shots !== 0) { obj.shots = message.shots; @@ -694,10 +718,10 @@ export const AverageDefinitionsAllStats: MessageFns obj.spotted = message.spotted; } if (message.survived_battles !== 0) { - obj.survived_battles = message.survived_battles; + obj.survivedBattles = message.survived_battles; } if (message.win_and_survived !== 0) { - obj.win_and_survived = message.win_and_survived; + obj.winAndSurvived = message.win_and_survived; } if (message.wins !== 0) { obj.wins = message.wins; @@ -706,7 +730,7 @@ export const AverageDefinitionsAllStats: MessageFns obj.xp = message.xp; } if (message.battle_life_time !== 0) { - obj.battle_life_time = message.battle_life_time; + obj.battleLifeTime = message.battle_life_time; } return obj; }, @@ -738,7 +762,7 @@ export const AverageDefinitionsAllStats: MessageFns }, }; -export function createBaseSamples(): Samples { +function createBaseSamples(): Samples { return { d_1: 0, d_7: 0, d_30: 0, d_60: 0, d_90: 0, d_120: 0, total: 0 }; } @@ -770,7 +794,7 @@ export const Samples: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Samples { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseSamples(); while (reader.pos < end) { const tag = reader.uint32(); @@ -842,35 +866,39 @@ export const Samples: MessageFns = { fromJSON(object: any): Samples { return { - d_1: globalThis.Number(assertSet("Samples.d_1", object.d_1)), - d_7: globalThis.Number(assertSet("Samples.d_7", object.d_7)), - d_30: globalThis.Number(assertSet("Samples.d_30", object.d_30)), - d_60: globalThis.Number(assertSet("Samples.d_60", object.d_60)), - d_90: globalThis.Number(assertSet("Samples.d_90", object.d_90)), - d_120: globalThis.Number(assertSet("Samples.d_120", object.d_120)), - total: globalThis.Number(assertSet("Samples.total", object.total)), + d_1: isSet(object.d1) ? globalThis.Number(object.d1) : isSet(object.d_1) ? globalThis.Number(object.d_1) : 0, + d_7: isSet(object.d7) ? globalThis.Number(object.d7) : isSet(object.d_7) ? globalThis.Number(object.d_7) : 0, + d_30: isSet(object.d30) ? globalThis.Number(object.d30) : isSet(object.d_30) ? globalThis.Number(object.d_30) : 0, + d_60: isSet(object.d60) ? globalThis.Number(object.d60) : isSet(object.d_60) ? globalThis.Number(object.d_60) : 0, + d_90: isSet(object.d90) ? globalThis.Number(object.d90) : isSet(object.d_90) ? globalThis.Number(object.d_90) : 0, + d_120: isSet(object.d120) + ? globalThis.Number(object.d120) + : isSet(object.d_120) + ? globalThis.Number(object.d_120) + : 0, + total: isSet(object.total) ? globalThis.Number(object.total) : 0, }; }, toJSON(message: Samples): unknown { const obj: any = {}; if (message.d_1 !== 0) { - obj.d_1 = Math.round(message.d_1); + obj.d1 = Math.round(message.d_1); } if (message.d_7 !== 0) { - obj.d_7 = Math.round(message.d_7); + obj.d7 = Math.round(message.d_7); } if (message.d_30 !== 0) { - obj.d_30 = Math.round(message.d_30); + obj.d30 = Math.round(message.d_30); } if (message.d_60 !== 0) { - obj.d_60 = Math.round(message.d_60); + obj.d60 = Math.round(message.d_60); } if (message.d_90 !== 0) { - obj.d_90 = Math.round(message.d_90); + obj.d90 = Math.round(message.d_90); } if (message.d_120 !== 0) { - obj.d_120 = Math.round(message.d_120); + obj.d120 = Math.round(message.d_120); } if (message.total !== 0) { obj.total = Math.round(message.total); @@ -926,14 +954,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/camouflage_definitions.proto b/packages/core/src/protos/camouflage_definitions.proto index bfcfd5a7a..b3b9bbbac 100644 --- a/packages/core/src/protos/camouflage_definitions.proto +++ b/packages/core/src/protos/camouflage_definitions.proto @@ -2,15 +2,15 @@ syntax = "proto2"; package blitzkit; -import "packages/core/src/protos/i18n.proto"; +import "i18n.proto"; message CamouflageDefinitions { map camouflages = 1; } message Camouflage { - required uint32 id = 1; - required I18nString name = 2; - optional I18nString tank_name = 3; + required uint32 id = 1; + required I18nString name = 2; + optional I18nString tank_name = 3; optional I18nString tank_name_full = 4; } \ No newline at end of file diff --git a/packages/core/src/protos/camouflage_definitions.ts b/packages/core/src/protos/camouflage_definitions.ts index 49336ed41..a7776e39f 100644 --- a/packages/core/src/protos/camouflage_definitions.ts +++ b/packages/core/src/protos/camouflage_definitions.ts @@ -1,14 +1,14 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/camouflage_definitions.proto +// source: camouflage_definitions.proto /* eslint-disable */ -import { BinaryReader, BinaryWriter } from '@bufbuild/protobuf/wire'; -import { createBaseI18nString, I18nString } from './i18n'; +import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; +import { I18nString } from "./i18n"; -export const protobufPackage = 'blitzkit'; +export const protobufPackage = "blitzkit"; export interface CamouflageDefinitions { camouflages: { [key: number]: Camouflage }; @@ -21,36 +21,26 @@ export interface CamouflageDefinitions_CamouflagesEntry { export interface Camouflage { id: number; - name: I18nString; - tank_name?: I18nString; - tank_name_full?: I18nString; + name: I18nString | undefined; + tank_name?: I18nString | undefined; + tank_name_full?: I18nString | undefined; } -export function createBaseCamouflageDefinitions(): CamouflageDefinitions { +function createBaseCamouflageDefinitions(): CamouflageDefinitions { return { camouflages: {} }; } export const CamouflageDefinitions: MessageFns = { - encode( - message: CamouflageDefinitions, - writer: BinaryWriter = new BinaryWriter(), - ): BinaryWriter { - Object.entries(message.camouflages).forEach(([key, value]) => { - CamouflageDefinitions_CamouflagesEntry.encode( - { key: key as any, value }, - writer.uint32(10).fork(), - ).join(); + encode(message: CamouflageDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + globalThis.Object.entries(message.camouflages).forEach(([key, value]: [string, Camouflage]) => { + CamouflageDefinitions_CamouflagesEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); return writer; }, - decode( - input: BinaryReader | Uint8Array, - length?: number, - ): CamouflageDefinitions { - const reader = - input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + decode(input: BinaryReader | Uint8Array, length?: number): CamouflageDefinitions { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseCamouflageDefinitions(); while (reader.pos < end) { const tag = reader.uint32(); @@ -60,10 +50,7 @@ export const CamouflageDefinitions: MessageFns = { break; } - const entry1 = CamouflageDefinitions_CamouflagesEntry.decode( - reader, - reader.uint32(), - ); + const entry1 = CamouflageDefinitions_CamouflagesEntry.decode(reader, reader.uint32()); if (entry1.value !== undefined) { message.camouflages[entry1.key] = entry1.value; } @@ -81,12 +68,13 @@ export const CamouflageDefinitions: MessageFns = { fromJSON(object: any): CamouflageDefinitions { return { camouflages: isObject(object.camouflages) - ? Object.entries(object.camouflages).reduce<{ - [key: number]: Camouflage; - }>((acc, [key, value]) => { + ? (globalThis.Object.entries(object.camouflages) as [string, any][]).reduce( + (acc: { [key: number]: Camouflage }, [key, value]: [string, any]) => { acc[globalThis.Number(key)] = Camouflage.fromJSON(value); return acc; - }, {}) + }, + {}, + ) : {}, }; }, @@ -94,7 +82,7 @@ export const CamouflageDefinitions: MessageFns = { toJSON(message: CamouflageDefinitions): unknown { const obj: any = {}; if (message.camouflages) { - const entries = Object.entries(message.camouflages); + const entries = globalThis.Object.entries(message.camouflages) as [string, Camouflage][]; if (entries.length > 0) { obj.camouflages = {}; entries.forEach(([k, v]) => { @@ -105,141 +93,112 @@ export const CamouflageDefinitions: MessageFns = { return obj; }, - create, I>>( - base?: I, - ): CamouflageDefinitions { + create, I>>(base?: I): CamouflageDefinitions { return CamouflageDefinitions.fromPartial(base ?? ({} as any)); }, - fromPartial, I>>( - object: I, - ): CamouflageDefinitions { + fromPartial, I>>(object: I): CamouflageDefinitions { const message = createBaseCamouflageDefinitions(); - message.camouflages = Object.entries(object.camouflages ?? {}).reduce<{ - [key: number]: Camouflage; - }>((acc, [key, value]) => { - if (value !== undefined) { - acc[globalThis.Number(key)] = Camouflage.fromPartial(value); - } - return acc; - }, {}); + message.camouflages = (globalThis.Object.entries(object.camouflages ?? {}) as [string, Camouflage][]).reduce( + (acc: { [key: number]: Camouflage }, [key, value]: [string, Camouflage]) => { + if (value !== undefined) { + acc[globalThis.Number(key)] = Camouflage.fromPartial(value); + } + return acc; + }, + {}, + ); return message; }, }; -export function createBaseCamouflageDefinitions_CamouflagesEntry(): CamouflageDefinitions_CamouflagesEntry { - return { key: 0, value: createBaseCamouflage() }; +function createBaseCamouflageDefinitions_CamouflagesEntry(): CamouflageDefinitions_CamouflagesEntry { + return { key: 0, value: undefined }; } -export const CamouflageDefinitions_CamouflagesEntry: MessageFns = - { - encode( - message: CamouflageDefinitions_CamouflagesEntry, - writer: BinaryWriter = new BinaryWriter(), - ): BinaryWriter { - if (message.key !== undefined) { - writer.uint32(8).uint32(message.key); - } - if (message.value !== undefined) { - Camouflage.encode(message.value, writer.uint32(18).fork()).join(); - } - return writer; - }, +export const CamouflageDefinitions_CamouflagesEntry: MessageFns = { + encode(message: CamouflageDefinitions_CamouflagesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.key !== 0) { + writer.uint32(8).uint32(message.key); + } + if (message.value !== undefined) { + Camouflage.encode(message.value, writer.uint32(18).fork()).join(); + } + return writer; + }, - decode( - input: BinaryReader | Uint8Array, - length?: number, - ): CamouflageDefinitions_CamouflagesEntry { - const reader = - input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseCamouflageDefinitions_CamouflagesEntry(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - - message.key = reader.uint32(); - continue; + decode(input: BinaryReader | Uint8Array, length?: number): CamouflageDefinitions_CamouflagesEntry { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseCamouflageDefinitions_CamouflagesEntry(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 8) { + break; } - case 2: { - if (tag !== 18) { - break; - } - message.value = Camouflage.decode(reader, reader.uint32()); - continue; + message.key = reader.uint32(); + continue; + } + case 2: { + if (tag !== 18) { + break; } + + message.value = Camouflage.decode(reader, reader.uint32()); + continue; } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); } - return message; - }, - - fromJSON(object: any): CamouflageDefinitions_CamouflagesEntry { - return { - key: globalThis.Number( - assertSet('CamouflageDefinitions_CamouflagesEntry.key', object.key), - ), - value: Camouflage.fromJSON( - assertSet( - 'CamouflageDefinitions_CamouflagesEntry.value', - object.value, - ), - ), - }; - }, - - toJSON(message: CamouflageDefinitions_CamouflagesEntry): unknown { - const obj: any = {}; - if (message.key !== undefined) { - obj.key = Math.round(message.key); + if ((tag & 7) === 4 || tag === 0) { + break; } - if (message.value !== undefined) { - obj.value = Camouflage.toJSON(message.value); - } - return obj; - }, + reader.skip(tag & 7); + } + return message; + }, - create< - I extends Exact, I>, - >(base?: I): CamouflageDefinitions_CamouflagesEntry { - return CamouflageDefinitions_CamouflagesEntry.fromPartial( - base ?? ({} as any), - ); - }, - fromPartial< - I extends Exact, I>, - >(object: I): CamouflageDefinitions_CamouflagesEntry { - const message = createBaseCamouflageDefinitions_CamouflagesEntry(); - message.key = object.key ?? 0; - message.value = - object.value !== undefined && object.value !== null - ? Camouflage.fromPartial(object.value) - : createBaseCamouflage(); - return message; - }, - }; + fromJSON(object: any): CamouflageDefinitions_CamouflagesEntry { + return { + key: isSet(object.key) ? globalThis.Number(object.key) : 0, + value: isSet(object.value) ? Camouflage.fromJSON(object.value) : undefined, + }; + }, -export function createBaseCamouflage(): Camouflage { - return { - id: 0, - name: createBaseI18nString(), - tank_name: undefined, - tank_name_full: undefined, - }; + toJSON(message: CamouflageDefinitions_CamouflagesEntry): unknown { + const obj: any = {}; + if (message.key !== 0) { + obj.key = Math.round(message.key); + } + if (message.value !== undefined) { + obj.value = Camouflage.toJSON(message.value); + } + return obj; + }, + + create, I>>( + base?: I, + ): CamouflageDefinitions_CamouflagesEntry { + return CamouflageDefinitions_CamouflagesEntry.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>( + object: I, + ): CamouflageDefinitions_CamouflagesEntry { + const message = createBaseCamouflageDefinitions_CamouflagesEntry(); + message.key = object.key ?? 0; + message.value = (object.value !== undefined && object.value !== null) + ? Camouflage.fromPartial(object.value) + : undefined; + return message; + }, +}; + +function createBaseCamouflage(): Camouflage { + return { id: 0, name: undefined, tank_name: undefined, tank_name_full: undefined }; } export const Camouflage: MessageFns = { - encode( - message: Camouflage, - writer: BinaryWriter = new BinaryWriter(), - ): BinaryWriter { + encode(message: Camouflage, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { if (message.id !== 0) { writer.uint32(8).uint32(message.id); } @@ -250,18 +209,14 @@ export const Camouflage: MessageFns = { I18nString.encode(message.tank_name, writer.uint32(26).fork()).join(); } if (message.tank_name_full !== undefined) { - I18nString.encode( - message.tank_name_full, - writer.uint32(34).fork(), - ).join(); + I18nString.encode(message.tank_name_full, writer.uint32(34).fork()).join(); } return writer; }, decode(input: BinaryReader | Uint8Array, length?: number): Camouflage { - const reader = - input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseCamouflage(); while (reader.pos < end) { const tag = reader.uint32(); @@ -309,12 +264,16 @@ export const Camouflage: MessageFns = { fromJSON(object: any): Camouflage { return { - id: globalThis.Number(assertSet('Camouflage.id', object.id)), - name: I18nString.fromJSON(assertSet('Camouflage.name', object.name)), - tank_name: isSet(object.tank_name) + id: isSet(object.id) ? globalThis.Number(object.id) : 0, + name: isSet(object.name) ? I18nString.fromJSON(object.name) : undefined, + tank_name: isSet(object.tankName) + ? I18nString.fromJSON(object.tankName) + : isSet(object.tank_name) ? I18nString.fromJSON(object.tank_name) : undefined, - tank_name_full: isSet(object.tank_name_full) + tank_name_full: isSet(object.tankNameFull) + ? I18nString.fromJSON(object.tankNameFull) + : isSet(object.tank_name_full) ? I18nString.fromJSON(object.tank_name_full) : undefined, }; @@ -329,10 +288,10 @@ export const Camouflage: MessageFns = { obj.name = I18nString.toJSON(message.name); } if (message.tank_name !== undefined) { - obj.tank_name = I18nString.toJSON(message.tank_name); + obj.tankName = I18nString.toJSON(message.tank_name); } if (message.tank_name_full !== undefined) { - obj.tank_name_full = I18nString.toJSON(message.tank_name_full); + obj.tankNameFull = I18nString.toJSON(message.tank_name_full); } return obj; }, @@ -340,71 +299,43 @@ export const Camouflage: MessageFns = { create, I>>(base?: I): Camouflage { return Camouflage.fromPartial(base ?? ({} as any)); }, - fromPartial, I>>( - object: I, - ): Camouflage { + fromPartial, I>>(object: I): Camouflage { const message = createBaseCamouflage(); message.id = object.id ?? 0; - message.name = - object.name !== undefined && object.name !== null - ? I18nString.fromPartial(object.name) - : createBaseI18nString(); - message.tank_name = - object.tank_name !== undefined && object.tank_name !== null - ? I18nString.fromPartial(object.tank_name) - : undefined; - message.tank_name_full = - object.tank_name_full !== undefined && object.tank_name_full !== null - ? I18nString.fromPartial(object.tank_name_full) - : undefined; + message.name = (object.name !== undefined && object.name !== null) + ? I18nString.fromPartial(object.name) + : undefined; + message.tank_name = (object.tank_name !== undefined && object.tank_name !== null) + ? I18nString.fromPartial(object.tank_name) + : undefined; + message.tank_name_full = (object.tank_name_full !== undefined && object.tank_name_full !== null) + ? I18nString.fromPartial(object.tank_name_full) + : undefined; return message; }, }; -type Builtin = - | Date - | Function - | Uint8Array - | string - | number - | boolean - | undefined; +type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; -export type DeepPartial = T extends Builtin - ? T - : T extends globalThis.Array - ? globalThis.Array> - : T extends ReadonlyArray - ? ReadonlyArray> - : T extends { $case: string; value: unknown } - ? { $case: T['$case']; value?: DeepPartial } - : T extends {} - ? { [K in keyof T]?: DeepPartial } - : Partial; +export type DeepPartial = T extends Builtin ? T + : T extends globalThis.Array ? globalThis.Array> + : T extends ReadonlyArray ? ReadonlyArray> + : T extends { $case: string; value: unknown } ? { $case: T["$case"]; value?: DeepPartial } + : T extends {} ? { [K in keyof T]?: DeepPartial } + : Partial; type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin - ? P - : P & { [K in keyof P]: Exact } & { - [K in Exclude>]: never; - }; +export type Exact = P extends Builtin ? P + : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; function isObject(value: any): boolean { - return typeof value === 'object' && value !== null; + return typeof value === "object" && value !== null; } function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/consumable_definitions.proto b/packages/core/src/protos/consumable_definitions.proto index 0d65daaf3..c07fdd2f8 100644 --- a/packages/core/src/protos/consumable_definitions.proto +++ b/packages/core/src/protos/consumable_definitions.proto @@ -2,28 +2,28 @@ syntax = "proto2"; package blitzkit; -import "packages/core/src/protos/i18n.proto"; +import "i18n.proto"; message ConsumableDefinitions { map consumables = 1; } message Consumable { - required uint32 id = 1; - required I18nString name = 2; - required uint32 cooldown = 3; - optional float duration = 4; - required bool game_mode_exclusive = 5; - repeated ConsumableTankFilter include = 6; - repeated ConsumableTankFilter exclude = 7; + required uint32 id = 1; + required I18nString name = 2; + required uint32 cooldown = 3; + optional float duration = 4; + required bool game_mode_exclusive = 5; + repeated ConsumableTankFilter include = 6; + repeated ConsumableTankFilter exclude = 7; } message ConsumableTankFilter { oneof filter_type { - ConsumableTankTierFilter tiers = 1; - ConsumableTankIdsFilter ids = 2; + ConsumableTankTierFilter tiers = 1; + ConsumableTankIdsFilter ids = 2; ConsumableTankCategoryFilter categories = 3; - ConsumableTankNationFilter nations = 4; + ConsumableTankNationFilter nations = 4; } } diff --git a/packages/core/src/protos/consumable_definitions.ts b/packages/core/src/protos/consumable_definitions.ts index 018255773..c3957b11e 100644 --- a/packages/core/src/protos/consumable_definitions.ts +++ b/packages/core/src/protos/consumable_definitions.ts @@ -1,24 +1,24 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/consumable_definitions.proto +// source: consumable_definitions.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; -import { createBaseI18nString, I18nString } from "./i18n"; +import { I18nString } from "./i18n"; export const protobufPackage = "blitzkit"; export enum ConsumableTankCategoryFilterCategory { - CLIP = 0, + CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP = 0, } export function consumableTankCategoryFilterCategoryFromJSON(object: any): ConsumableTankCategoryFilterCategory { switch (object) { case 0: case "CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP": - return ConsumableTankCategoryFilterCategory.CLIP; + return ConsumableTankCategoryFilterCategory.CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP; default: throw new globalThis.Error( "Unrecognized enum value " + object + " for enum ConsumableTankCategoryFilterCategory", @@ -28,7 +28,7 @@ export function consumableTankCategoryFilterCategoryFromJSON(object: any): Consu export function consumableTankCategoryFilterCategoryToJSON(object: ConsumableTankCategoryFilterCategory): string { switch (object) { - case ConsumableTankCategoryFilterCategory.CLIP: + case ConsumableTankCategoryFilterCategory.CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP: return "CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP"; default: throw new globalThis.Error( @@ -48,7 +48,7 @@ export interface ConsumableDefinitions_ConsumablesEntry { export interface Consumable { id: number; - name: I18nString; + name: I18nString | undefined; cooldown: number; duration?: number | undefined; game_mode_exclusive: boolean; @@ -82,13 +82,13 @@ export interface ConsumableTankNationFilter { nations: string[]; } -export function createBaseConsumableDefinitions(): ConsumableDefinitions { +function createBaseConsumableDefinitions(): ConsumableDefinitions { return { consumables: {} }; } export const ConsumableDefinitions: MessageFns = { encode(message: ConsumableDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - Object.entries(message.consumables).forEach(([key, value]) => { + globalThis.Object.entries(message.consumables).forEach(([key, value]: [string, Consumable]) => { ConsumableDefinitions_ConsumablesEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); return writer; @@ -96,7 +96,7 @@ export const ConsumableDefinitions: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): ConsumableDefinitions { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseConsumableDefinitions(); while (reader.pos < end) { const tag = reader.uint32(); @@ -124,10 +124,13 @@ export const ConsumableDefinitions: MessageFns = { fromJSON(object: any): ConsumableDefinitions { return { consumables: isObject(object.consumables) - ? Object.entries(object.consumables).reduce<{ [key: number]: Consumable }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = Consumable.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.consumables) as [string, any][]).reduce( + (acc: { [key: number]: Consumable }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = Consumable.fromJSON(value); + return acc; + }, + {}, + ) : {}, }; }, @@ -135,7 +138,7 @@ export const ConsumableDefinitions: MessageFns = { toJSON(message: ConsumableDefinitions): unknown { const obj: any = {}; if (message.consumables) { - const entries = Object.entries(message.consumables); + const entries = globalThis.Object.entries(message.consumables) as [string, Consumable][]; if (entries.length > 0) { obj.consumables = {}; entries.forEach(([k, v]) => { @@ -151,8 +154,8 @@ export const ConsumableDefinitions: MessageFns = { }, fromPartial, I>>(object: I): ConsumableDefinitions { const message = createBaseConsumableDefinitions(); - message.consumables = Object.entries(object.consumables ?? {}).reduce<{ [key: number]: Consumable }>( - (acc, [key, value]) => { + message.consumables = (globalThis.Object.entries(object.consumables ?? {}) as [string, Consumable][]).reduce( + (acc: { [key: number]: Consumable }, [key, value]: [string, Consumable]) => { if (value !== undefined) { acc[globalThis.Number(key)] = Consumable.fromPartial(value); } @@ -164,13 +167,13 @@ export const ConsumableDefinitions: MessageFns = { }, }; -export function createBaseConsumableDefinitions_ConsumablesEntry(): ConsumableDefinitions_ConsumablesEntry { - return { key: 0, value: createBaseConsumable() }; +function createBaseConsumableDefinitions_ConsumablesEntry(): ConsumableDefinitions_ConsumablesEntry { + return { key: 0, value: undefined }; } export const ConsumableDefinitions_ConsumablesEntry: MessageFns = { encode(message: ConsumableDefinitions_ConsumablesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -181,7 +184,7 @@ export const ConsumableDefinitions_ConsumablesEntry: MessageFns = { @@ -269,7 +264,7 @@ export const Consumable: MessageFns = { if (message.cooldown !== 0) { writer.uint32(24).uint32(message.cooldown); } - if (message.duration !== undefined && message.duration !== undefined) { + if (message.duration !== undefined && message.duration !== 0) { writer.uint32(37).float(message.duration); } if (message.game_mode_exclusive !== false) { @@ -286,7 +281,7 @@ export const Consumable: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Consumable { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseConsumable(); while (reader.pos < end) { const tag = reader.uint32(); @@ -358,11 +353,15 @@ export const Consumable: MessageFns = { fromJSON(object: any): Consumable { return { - id: globalThis.Number(assertSet("Consumable.id", object.id)), - name: I18nString.fromJSON(assertSet("Consumable.name", object.name)), - cooldown: globalThis.Number(assertSet("Consumable.cooldown", object.cooldown)), - duration: isSet(object.duration) ? globalThis.Number(object.duration) : undefined, - game_mode_exclusive: globalThis.Boolean(assertSet("Consumable.game_mode_exclusive", object.game_mode_exclusive)), + id: isSet(object.id) ? globalThis.Number(object.id) : 0, + name: isSet(object.name) ? I18nString.fromJSON(object.name) : undefined, + cooldown: isSet(object.cooldown) ? globalThis.Number(object.cooldown) : 0, + duration: isSet(object.duration) ? globalThis.Number(object.duration) : 0, + game_mode_exclusive: isSet(object.gameModeExclusive) + ? globalThis.Boolean(object.gameModeExclusive) + : isSet(object.game_mode_exclusive) + ? globalThis.Boolean(object.game_mode_exclusive) + : false, include: globalThis.Array.isArray(object?.include) ? object.include.map((e: any) => ConsumableTankFilter.fromJSON(e)) : [], @@ -383,11 +382,11 @@ export const Consumable: MessageFns = { if (message.cooldown !== 0) { obj.cooldown = Math.round(message.cooldown); } - if (message.duration !== undefined && message.duration !== undefined) { + if (message.duration !== undefined && message.duration !== 0) { obj.duration = message.duration; } if (message.game_mode_exclusive !== false) { - obj.game_mode_exclusive = message.game_mode_exclusive; + obj.gameModeExclusive = message.game_mode_exclusive; } if (message.include?.length) { obj.include = message.include.map((e) => ConsumableTankFilter.toJSON(e)); @@ -406,9 +405,9 @@ export const Consumable: MessageFns = { message.id = object.id ?? 0; message.name = (object.name !== undefined && object.name !== null) ? I18nString.fromPartial(object.name) - : createBaseI18nString(); + : undefined; message.cooldown = object.cooldown ?? 0; - message.duration = object.duration ?? undefined; + message.duration = object.duration ?? 0; message.game_mode_exclusive = object.game_mode_exclusive ?? false; message.include = object.include?.map((e) => ConsumableTankFilter.fromPartial(e)) || []; message.exclude = object.exclude?.map((e) => ConsumableTankFilter.fromPartial(e)) || []; @@ -416,7 +415,7 @@ export const Consumable: MessageFns = { }, }; -export function createBaseConsumableTankFilter(): ConsumableTankFilter { +function createBaseConsumableTankFilter(): ConsumableTankFilter { return { filter_type: undefined }; } @@ -441,7 +440,7 @@ export const ConsumableTankFilter: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankFilter { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseConsumableTankFilter(); while (reader.pos < end) { const tag = reader.uint32(); @@ -508,14 +507,11 @@ export const ConsumableTankFilter: MessageFns = { const obj: any = {}; if (message.filter_type?.$case === "tiers") { obj.tiers = ConsumableTankTierFilter.toJSON(message.filter_type.value); - } - if (message.filter_type?.$case === "ids") { + } else if (message.filter_type?.$case === "ids") { obj.ids = ConsumableTankIdsFilter.toJSON(message.filter_type.value); - } - if (message.filter_type?.$case === "categories") { + } else if (message.filter_type?.$case === "categories") { obj.categories = ConsumableTankCategoryFilter.toJSON(message.filter_type.value); - } - if (message.filter_type?.$case === "nations") { + } else if (message.filter_type?.$case === "nations") { obj.nations = ConsumableTankNationFilter.toJSON(message.filter_type.value); } return obj; @@ -526,45 +522,46 @@ export const ConsumableTankFilter: MessageFns = { }, fromPartial, I>>(object: I): ConsumableTankFilter { const message = createBaseConsumableTankFilter(); - if ( - object.filter_type?.$case === "tiers" && - object.filter_type?.value !== undefined && - object.filter_type?.value !== null - ) { - message.filter_type = { $case: "tiers", value: ConsumableTankTierFilter.fromPartial(object.filter_type.value) }; - } - if ( - object.filter_type?.$case === "ids" && - object.filter_type?.value !== undefined && - object.filter_type?.value !== null - ) { - message.filter_type = { $case: "ids", value: ConsumableTankIdsFilter.fromPartial(object.filter_type.value) }; - } - if ( - object.filter_type?.$case === "categories" && - object.filter_type?.value !== undefined && - object.filter_type?.value !== null - ) { - message.filter_type = { - $case: "categories", - value: ConsumableTankCategoryFilter.fromPartial(object.filter_type.value), - }; - } - if ( - object.filter_type?.$case === "nations" && - object.filter_type?.value !== undefined && - object.filter_type?.value !== null - ) { - message.filter_type = { - $case: "nations", - value: ConsumableTankNationFilter.fromPartial(object.filter_type.value), - }; + switch (object.filter_type?.$case) { + case "tiers": { + if (object.filter_type?.value !== undefined && object.filter_type?.value !== null) { + message.filter_type = { + $case: "tiers", + value: ConsumableTankTierFilter.fromPartial(object.filter_type.value), + }; + } + break; + } + case "ids": { + if (object.filter_type?.value !== undefined && object.filter_type?.value !== null) { + message.filter_type = { $case: "ids", value: ConsumableTankIdsFilter.fromPartial(object.filter_type.value) }; + } + break; + } + case "categories": { + if (object.filter_type?.value !== undefined && object.filter_type?.value !== null) { + message.filter_type = { + $case: "categories", + value: ConsumableTankCategoryFilter.fromPartial(object.filter_type.value), + }; + } + break; + } + case "nations": { + if (object.filter_type?.value !== undefined && object.filter_type?.value !== null) { + message.filter_type = { + $case: "nations", + value: ConsumableTankNationFilter.fromPartial(object.filter_type.value), + }; + } + break; + } } return message; }, }; -export function createBaseConsumableTankTierFilter(): ConsumableTankTierFilter { +function createBaseConsumableTankTierFilter(): ConsumableTankTierFilter { return { min: 0, max: 0 }; } @@ -581,7 +578,7 @@ export const ConsumableTankTierFilter: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankTierFilter { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseConsumableTankTierFilter(); while (reader.pos < end) { const tag = reader.uint32(); @@ -613,8 +610,8 @@ export const ConsumableTankTierFilter: MessageFns = { fromJSON(object: any): ConsumableTankTierFilter { return { - min: globalThis.Number(assertSet("ConsumableTankTierFilter.min", object.min)), - max: globalThis.Number(assertSet("ConsumableTankTierFilter.max", object.max)), + min: isSet(object.min) ? globalThis.Number(object.min) : 0, + max: isSet(object.max) ? globalThis.Number(object.max) : 0, }; }, @@ -640,23 +637,21 @@ export const ConsumableTankTierFilter: MessageFns = { }, }; -export function createBaseConsumableTankIdsFilter(): ConsumableTankIdsFilter { +function createBaseConsumableTankIdsFilter(): ConsumableTankIdsFilter { return { ids: [] }; } export const ConsumableTankIdsFilter: MessageFns = { encode(message: ConsumableTankIdsFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - writer.uint32(10).fork(); for (const v of message.ids) { - writer.uint32(v); + writer.uint32(8).uint32(v!); } - writer.join(); return writer; }, decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankIdsFilter { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseConsumableTankIdsFilter(); while (reader.pos < end) { const tag = reader.uint32(); @@ -710,23 +705,21 @@ export const ConsumableTankIdsFilter: MessageFns = { }, }; -export function createBaseConsumableTankCategoryFilter(): ConsumableTankCategoryFilter { +function createBaseConsumableTankCategoryFilter(): ConsumableTankCategoryFilter { return { categories: [] }; } export const ConsumableTankCategoryFilter: MessageFns = { encode(message: ConsumableTankCategoryFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - writer.uint32(10).fork(); for (const v of message.categories) { - writer.int32(v); + writer.uint32(8).int32(v!); } - writer.join(); return writer; }, decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankCategoryFilter { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseConsumableTankCategoryFilter(); while (reader.pos < end) { const tag = reader.uint32(); @@ -784,7 +777,7 @@ export const ConsumableTankCategoryFilter: MessageFns decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankNationFilter { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseConsumableTankNationFilter(); while (reader.pos < end) { const tag = reader.uint32(); @@ -865,14 +858,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/equipment_definitions.proto b/packages/core/src/protos/equipment_definitions.proto index 536b7c2e0..ba4cf0cb4 100644 --- a/packages/core/src/protos/equipment_definitions.proto +++ b/packages/core/src/protos/equipment_definitions.proto @@ -2,15 +2,15 @@ syntax = "proto2"; package blitzkit; -import "packages/core/src/protos/i18n.proto"; +import "i18n.proto"; message EquipmentDefinitions { - map presets = 1; - map equipments = 2; + map presets = 1; + map equipments = 2; } message Equipment { - required I18nString name = 1; + required I18nString name = 1; required I18nString description = 2; } @@ -19,6 +19,6 @@ message EquipmentPreset { } message EquipmentSlot { - required uint32 left = 1; + required uint32 left = 1; required uint32 right = 2; } \ No newline at end of file diff --git a/packages/core/src/protos/equipment_definitions.ts b/packages/core/src/protos/equipment_definitions.ts index 6125ba29e..8f14ae14a 100644 --- a/packages/core/src/protos/equipment_definitions.ts +++ b/packages/core/src/protos/equipment_definitions.ts @@ -1,12 +1,12 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/equipment_definitions.proto +// source: equipment_definitions.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; -import { createBaseI18nString, I18nString } from "./i18n"; +import { I18nString } from "./i18n"; export const protobufPackage = "blitzkit"; @@ -26,8 +26,8 @@ export interface EquipmentDefinitions_EquipmentsEntry { } export interface Equipment { - name: I18nString; - description: I18nString; + name: I18nString | undefined; + description: I18nString | undefined; } export interface EquipmentPreset { @@ -39,16 +39,16 @@ export interface EquipmentSlot { right: number; } -export function createBaseEquipmentDefinitions(): EquipmentDefinitions { +function createBaseEquipmentDefinitions(): EquipmentDefinitions { return { presets: {}, equipments: {} }; } export const EquipmentDefinitions: MessageFns = { encode(message: EquipmentDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - Object.entries(message.presets).forEach(([key, value]) => { + globalThis.Object.entries(message.presets).forEach(([key, value]: [string, EquipmentPreset]) => { EquipmentDefinitions_PresetsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); - Object.entries(message.equipments).forEach(([key, value]) => { + globalThis.Object.entries(message.equipments).forEach(([key, value]: [string, Equipment]) => { EquipmentDefinitions_EquipmentsEntry.encode({ key: key as any, value }, writer.uint32(18).fork()).join(); }); return writer; @@ -56,7 +56,7 @@ export const EquipmentDefinitions: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): EquipmentDefinitions { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseEquipmentDefinitions(); while (reader.pos < end) { const tag = reader.uint32(); @@ -95,16 +95,22 @@ export const EquipmentDefinitions: MessageFns = { fromJSON(object: any): EquipmentDefinitions { return { presets: isObject(object.presets) - ? Object.entries(object.presets).reduce<{ [key: string]: EquipmentPreset }>((acc, [key, value]) => { - acc[key] = EquipmentPreset.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.presets) as [string, any][]).reduce( + (acc: { [key: string]: EquipmentPreset }, [key, value]: [string, any]) => { + acc[key] = EquipmentPreset.fromJSON(value); + return acc; + }, + {}, + ) : {}, equipments: isObject(object.equipments) - ? Object.entries(object.equipments).reduce<{ [key: number]: Equipment }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = Equipment.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.equipments) as [string, any][]).reduce( + (acc: { [key: number]: Equipment }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = Equipment.fromJSON(value); + return acc; + }, + {}, + ) : {}, }; }, @@ -112,7 +118,7 @@ export const EquipmentDefinitions: MessageFns = { toJSON(message: EquipmentDefinitions): unknown { const obj: any = {}; if (message.presets) { - const entries = Object.entries(message.presets); + const entries = globalThis.Object.entries(message.presets) as [string, EquipmentPreset][]; if (entries.length > 0) { obj.presets = {}; entries.forEach(([k, v]) => { @@ -121,7 +127,7 @@ export const EquipmentDefinitions: MessageFns = { } } if (message.equipments) { - const entries = Object.entries(message.equipments); + const entries = globalThis.Object.entries(message.equipments) as [string, Equipment][]; if (entries.length > 0) { obj.equipments = {}; entries.forEach(([k, v]) => { @@ -137,8 +143,8 @@ export const EquipmentDefinitions: MessageFns = { }, fromPartial, I>>(object: I): EquipmentDefinitions { const message = createBaseEquipmentDefinitions(); - message.presets = Object.entries(object.presets ?? {}).reduce<{ [key: string]: EquipmentPreset }>( - (acc, [key, value]) => { + message.presets = (globalThis.Object.entries(object.presets ?? {}) as [string, EquipmentPreset][]).reduce( + (acc: { [key: string]: EquipmentPreset }, [key, value]: [string, EquipmentPreset]) => { if (value !== undefined) { acc[key] = EquipmentPreset.fromPartial(value); } @@ -146,8 +152,8 @@ export const EquipmentDefinitions: MessageFns = { }, {}, ); - message.equipments = Object.entries(object.equipments ?? {}).reduce<{ [key: number]: Equipment }>( - (acc, [key, value]) => { + message.equipments = (globalThis.Object.entries(object.equipments ?? {}) as [string, Equipment][]).reduce( + (acc: { [key: number]: Equipment }, [key, value]: [string, Equipment]) => { if (value !== undefined) { acc[globalThis.Number(key)] = Equipment.fromPartial(value); } @@ -159,13 +165,13 @@ export const EquipmentDefinitions: MessageFns = { }, }; -export function createBaseEquipmentDefinitions_PresetsEntry(): EquipmentDefinitions_PresetsEntry { - return { key: "", value: createBaseEquipmentPreset() }; +function createBaseEquipmentDefinitions_PresetsEntry(): EquipmentDefinitions_PresetsEntry { + return { key: "", value: undefined }; } export const EquipmentDefinitions_PresetsEntry: MessageFns = { encode(message: EquipmentDefinitions_PresetsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== "") { writer.uint32(10).string(message.key); } if (message.value !== undefined) { @@ -176,7 +182,7 @@ export const EquipmentDefinitions_PresetsEntry: MessageFns = { encode(message: EquipmentDefinitions_EquipmentsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -258,7 +264,7 @@ export const EquipmentDefinitions_EquipmentsEntry: MessageFns = { @@ -340,7 +346,7 @@ export const Equipment: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Equipment { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseEquipment(); while (reader.pos < end) { const tag = reader.uint32(); @@ -372,8 +378,8 @@ export const Equipment: MessageFns = { fromJSON(object: any): Equipment { return { - name: I18nString.fromJSON(assertSet("Equipment.name", object.name)), - description: I18nString.fromJSON(assertSet("Equipment.description", object.description)), + name: isSet(object.name) ? I18nString.fromJSON(object.name) : undefined, + description: isSet(object.description) ? I18nString.fromJSON(object.description) : undefined, }; }, @@ -395,15 +401,15 @@ export const Equipment: MessageFns = { const message = createBaseEquipment(); message.name = (object.name !== undefined && object.name !== null) ? I18nString.fromPartial(object.name) - : createBaseI18nString(); + : undefined; message.description = (object.description !== undefined && object.description !== null) ? I18nString.fromPartial(object.description) - : createBaseI18nString(); + : undefined; return message; }, }; -export function createBaseEquipmentPreset(): EquipmentPreset { +function createBaseEquipmentPreset(): EquipmentPreset { return { slots: [] }; } @@ -417,7 +423,7 @@ export const EquipmentPreset: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): EquipmentPreset { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseEquipmentPreset(); while (reader.pos < end) { const tag = reader.uint32(); @@ -463,7 +469,7 @@ export const EquipmentPreset: MessageFns = { }, }; -export function createBaseEquipmentSlot(): EquipmentSlot { +function createBaseEquipmentSlot(): EquipmentSlot { return { left: 0, right: 0 }; } @@ -480,7 +486,7 @@ export const EquipmentSlot: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): EquipmentSlot { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseEquipmentSlot(); while (reader.pos < end) { const tag = reader.uint32(); @@ -512,8 +518,8 @@ export const EquipmentSlot: MessageFns = { fromJSON(object: any): EquipmentSlot { return { - left: globalThis.Number(assertSet("EquipmentSlot.left", object.left)), - right: globalThis.Number(assertSet("EquipmentSlot.right", object.right)), + left: isSet(object.left) ? globalThis.Number(object.left) : 0, + right: isSet(object.right) ? globalThis.Number(object.right) : 0, }; }, @@ -560,14 +566,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/gallery.proto b/packages/core/src/protos/gallery.proto index 85e1199dc..a983b6133 100644 --- a/packages/core/src/protos/gallery.proto +++ b/packages/core/src/protos/gallery.proto @@ -2,14 +2,14 @@ syntax = "proto2"; package blitzkit; -import "packages/core/src/protos/i18n.proto"; +import "i18n.proto"; message Gallery { repeated Avatar avatars = 1; } message Avatar { - required string id = 1; - required I18nString name = 2; - required string extension = 3; + required string id = 1; + required I18nString name = 2; + required string extension = 3; } \ No newline at end of file diff --git a/packages/core/src/protos/gallery.ts b/packages/core/src/protos/gallery.ts index e3605a2e4..fe58e48ca 100644 --- a/packages/core/src/protos/gallery.ts +++ b/packages/core/src/protos/gallery.ts @@ -1,12 +1,12 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/gallery.proto +// source: gallery.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; -import { createBaseI18nString, I18nString } from "./i18n"; +import { I18nString } from "./i18n"; export const protobufPackage = "blitzkit"; @@ -16,11 +16,11 @@ export interface Gallery { export interface Avatar { id: string; - name: I18nString; + name: I18nString | undefined; extension: string; } -export function createBaseGallery(): Gallery { +function createBaseGallery(): Gallery { return { avatars: [] }; } @@ -34,7 +34,7 @@ export const Gallery: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Gallery { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGallery(); while (reader.pos < end) { const tag = reader.uint32(); @@ -80,8 +80,8 @@ export const Gallery: MessageFns = { }, }; -export function createBaseAvatar(): Avatar { - return { id: "", name: createBaseI18nString(), extension: "" }; +function createBaseAvatar(): Avatar { + return { id: "", name: undefined, extension: "" }; } export const Avatar: MessageFns = { @@ -100,7 +100,7 @@ export const Avatar: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Avatar { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseAvatar(); while (reader.pos < end) { const tag = reader.uint32(); @@ -140,9 +140,9 @@ export const Avatar: MessageFns = { fromJSON(object: any): Avatar { return { - id: globalThis.String(assertSet("Avatar.id", object.id)), - name: I18nString.fromJSON(assertSet("Avatar.name", object.name)), - extension: globalThis.String(assertSet("Avatar.extension", object.extension)), + id: isSet(object.id) ? globalThis.String(object.id) : "", + name: isSet(object.name) ? I18nString.fromJSON(object.name) : undefined, + extension: isSet(object.extension) ? globalThis.String(object.extension) : "", }; }, @@ -168,7 +168,7 @@ export const Avatar: MessageFns = { message.id = object.id ?? ""; message.name = (object.name !== undefined && object.name !== null) ? I18nString.fromPartial(object.name) - : createBaseI18nString(); + : undefined; message.extension = object.extension ?? ""; return message; }, @@ -191,14 +191,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/game_definitions.proto b/packages/core/src/protos/game_definitions.proto index af8dff450..9b7417a74 100644 --- a/packages/core/src/protos/game_definitions.proto +++ b/packages/core/src/protos/game_definitions.proto @@ -2,13 +2,13 @@ syntax = "proto2"; package blitzkit; -import "packages/core/src/protos/i18n.proto"; +import "i18n.proto"; message GameDefinitions { - required string version = 1; - repeated string nations = 2; - map gameModes = 3; - map roles = 4; + required string version = 1; + repeated string nations = 2; + map gameModes = 3; + map roles = 4; } message GameMode { @@ -16,6 +16,6 @@ message GameMode { } message GameModeRole { - repeated uint32 provisions = 1; + repeated uint32 provisions = 1; repeated uint32 consumables = 2; } \ No newline at end of file diff --git a/packages/core/src/protos/game_definitions.ts b/packages/core/src/protos/game_definitions.ts index d404828cd..91afcb2be 100644 --- a/packages/core/src/protos/game_definitions.ts +++ b/packages/core/src/protos/game_definitions.ts @@ -1,12 +1,12 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/game_definitions.proto +// source: game_definitions.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; -import { createBaseI18nString, I18nString } from "./i18n"; +import { I18nString } from "./i18n"; export const protobufPackage = "blitzkit"; @@ -28,7 +28,7 @@ export interface GameDefinitions_RolesEntry { } export interface GameMode { - name: I18nString; + name: I18nString | undefined; } export interface GameModeRole { @@ -36,7 +36,7 @@ export interface GameModeRole { consumables: number[]; } -export function createBaseGameDefinitions(): GameDefinitions { +function createBaseGameDefinitions(): GameDefinitions { return { version: "", nations: [], gameModes: {}, roles: {} }; } @@ -48,10 +48,10 @@ export const GameDefinitions: MessageFns = { for (const v of message.nations) { writer.uint32(18).string(v!); } - Object.entries(message.gameModes).forEach(([key, value]) => { + globalThis.Object.entries(message.gameModes).forEach(([key, value]: [string, GameMode]) => { GameDefinitions_GameModesEntry.encode({ key: key as any, value }, writer.uint32(26).fork()).join(); }); - Object.entries(message.roles).forEach(([key, value]) => { + globalThis.Object.entries(message.roles).forEach(([key, value]: [string, GameModeRole]) => { GameDefinitions_RolesEntry.encode({ key: key as any, value }, writer.uint32(34).fork()).join(); }); return writer; @@ -59,7 +59,7 @@ export const GameDefinitions: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): GameDefinitions { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGameDefinitions(); while (reader.pos < end) { const tag = reader.uint32(); @@ -113,19 +113,25 @@ export const GameDefinitions: MessageFns = { fromJSON(object: any): GameDefinitions { return { - version: globalThis.String(assertSet("GameDefinitions.version", object.version)), + version: isSet(object.version) ? globalThis.String(object.version) : "", nations: globalThis.Array.isArray(object?.nations) ? object.nations.map((e: any) => globalThis.String(e)) : [], gameModes: isObject(object.gameModes) - ? Object.entries(object.gameModes).reduce<{ [key: number]: GameMode }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = GameMode.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.gameModes) as [string, any][]).reduce( + (acc: { [key: number]: GameMode }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = GameMode.fromJSON(value); + return acc; + }, + {}, + ) : {}, roles: isObject(object.roles) - ? Object.entries(object.roles).reduce<{ [key: number]: GameModeRole }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = GameModeRole.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.roles) as [string, any][]).reduce( + (acc: { [key: number]: GameModeRole }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = GameModeRole.fromJSON(value); + return acc; + }, + {}, + ) : {}, }; }, @@ -139,7 +145,7 @@ export const GameDefinitions: MessageFns = { obj.nations = message.nations; } if (message.gameModes) { - const entries = Object.entries(message.gameModes); + const entries = globalThis.Object.entries(message.gameModes) as [string, GameMode][]; if (entries.length > 0) { obj.gameModes = {}; entries.forEach(([k, v]) => { @@ -148,7 +154,7 @@ export const GameDefinitions: MessageFns = { } } if (message.roles) { - const entries = Object.entries(message.roles); + const entries = globalThis.Object.entries(message.roles) as [string, GameModeRole][]; if (entries.length > 0) { obj.roles = {}; entries.forEach(([k, v]) => { @@ -166,8 +172,8 @@ export const GameDefinitions: MessageFns = { const message = createBaseGameDefinitions(); message.version = object.version ?? ""; message.nations = object.nations?.map((e) => e) || []; - message.gameModes = Object.entries(object.gameModes ?? {}).reduce<{ [key: number]: GameMode }>( - (acc, [key, value]) => { + message.gameModes = (globalThis.Object.entries(object.gameModes ?? {}) as [string, GameMode][]).reduce( + (acc: { [key: number]: GameMode }, [key, value]: [string, GameMode]) => { if (value !== undefined) { acc[globalThis.Number(key)] = GameMode.fromPartial(value); } @@ -175,23 +181,26 @@ export const GameDefinitions: MessageFns = { }, {}, ); - message.roles = Object.entries(object.roles ?? {}).reduce<{ [key: number]: GameModeRole }>((acc, [key, value]) => { - if (value !== undefined) { - acc[globalThis.Number(key)] = GameModeRole.fromPartial(value); - } - return acc; - }, {}); + message.roles = (globalThis.Object.entries(object.roles ?? {}) as [string, GameModeRole][]).reduce( + (acc: { [key: number]: GameModeRole }, [key, value]: [string, GameModeRole]) => { + if (value !== undefined) { + acc[globalThis.Number(key)] = GameModeRole.fromPartial(value); + } + return acc; + }, + {}, + ); return message; }, }; -export function createBaseGameDefinitions_GameModesEntry(): GameDefinitions_GameModesEntry { - return { key: 0, value: createBaseGameMode() }; +function createBaseGameDefinitions_GameModesEntry(): GameDefinitions_GameModesEntry { + return { key: 0, value: undefined }; } export const GameDefinitions_GameModesEntry: MessageFns = { encode(message: GameDefinitions_GameModesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -202,7 +211,7 @@ export const GameDefinitions_GameModesEntry: MessageFns = { encode(message: GameDefinitions_RolesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -282,7 +291,7 @@ export const GameDefinitions_RolesEntry: MessageFns decode(input: BinaryReader | Uint8Array, length?: number): GameDefinitions_RolesEntry { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGameDefinitions_RolesEntry(); while (reader.pos < end) { const tag = reader.uint32(); @@ -314,14 +323,14 @@ export const GameDefinitions_RolesEntry: MessageFns fromJSON(object: any): GameDefinitions_RolesEntry { return { - key: globalThis.Number(assertSet("GameDefinitions_RolesEntry.key", object.key)), - value: GameModeRole.fromJSON(assertSet("GameDefinitions_RolesEntry.value", object.value)), + key: isSet(object.key) ? globalThis.Number(object.key) : 0, + value: isSet(object.value) ? GameModeRole.fromJSON(object.value) : undefined, }; }, toJSON(message: GameDefinitions_RolesEntry): unknown { const obj: any = {}; - if (message.key !== undefined) { + if (message.key !== 0) { obj.key = Math.round(message.key); } if (message.value !== undefined) { @@ -338,13 +347,13 @@ export const GameDefinitions_RolesEntry: MessageFns message.key = object.key ?? 0; message.value = (object.value !== undefined && object.value !== null) ? GameModeRole.fromPartial(object.value) - : createBaseGameModeRole(); + : undefined; return message; }, }; -export function createBaseGameMode(): GameMode { - return { name: createBaseI18nString() }; +function createBaseGameMode(): GameMode { + return { name: undefined }; } export const GameMode: MessageFns = { @@ -357,7 +366,7 @@ export const GameMode: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): GameMode { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGameMode(); while (reader.pos < end) { const tag = reader.uint32(); @@ -380,7 +389,7 @@ export const GameMode: MessageFns = { }, fromJSON(object: any): GameMode { - return { name: I18nString.fromJSON(assertSet("GameMode.name", object.name)) }; + return { name: isSet(object.name) ? I18nString.fromJSON(object.name) : undefined }; }, toJSON(message: GameMode): unknown { @@ -398,33 +407,29 @@ export const GameMode: MessageFns = { const message = createBaseGameMode(); message.name = (object.name !== undefined && object.name !== null) ? I18nString.fromPartial(object.name) - : createBaseI18nString(); + : undefined; return message; }, }; -export function createBaseGameModeRole(): GameModeRole { +function createBaseGameModeRole(): GameModeRole { return { provisions: [], consumables: [] }; } export const GameModeRole: MessageFns = { encode(message: GameModeRole, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - writer.uint32(10).fork(); for (const v of message.provisions) { - writer.uint32(v); + writer.uint32(8).uint32(v!); } - writer.join(); - writer.uint32(18).fork(); for (const v of message.consumables) { - writer.uint32(v); + writer.uint32(16).uint32(v!); } - writer.join(); return writer; }, decode(input: BinaryReader | Uint8Array, length?: number): GameModeRole { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGameModeRole(); while (reader.pos < end) { const tag = reader.uint32(); @@ -528,14 +533,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/i18n.ts b/packages/core/src/protos/i18n.ts index 67630c9b9..63fcfbf0d 100644 --- a/packages/core/src/protos/i18n.ts +++ b/packages/core/src/protos/i18n.ts @@ -1,8 +1,8 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/i18n.proto +// source: i18n.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; @@ -18,13 +18,13 @@ export interface I18nString_LocalesEntry { value: string; } -export function createBaseI18nString(): I18nString { +function createBaseI18nString(): I18nString { return { locales: {} }; } export const I18nString: MessageFns = { encode(message: I18nString, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - Object.entries(message.locales).forEach(([key, value]) => { + globalThis.Object.entries(message.locales).forEach(([key, value]: [string, string]) => { I18nString_LocalesEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); return writer; @@ -32,7 +32,7 @@ export const I18nString: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): I18nString { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseI18nString(); while (reader.pos < end) { const tag = reader.uint32(); @@ -60,10 +60,13 @@ export const I18nString: MessageFns = { fromJSON(object: any): I18nString { return { locales: isObject(object.locales) - ? Object.entries(object.locales).reduce<{ [key: string]: string }>((acc, [key, value]) => { - acc[key] = String(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.locales) as [string, any][]).reduce( + (acc: { [key: string]: string }, [key, value]: [string, any]) => { + acc[key] = globalThis.String(value); + return acc; + }, + {}, + ) : {}, }; }, @@ -71,7 +74,7 @@ export const I18nString: MessageFns = { toJSON(message: I18nString): unknown { const obj: any = {}; if (message.locales) { - const entries = Object.entries(message.locales); + const entries = globalThis.Object.entries(message.locales) as [string, string][]; if (entries.length > 0) { obj.locales = {}; entries.forEach(([k, v]) => { @@ -87,26 +90,29 @@ export const I18nString: MessageFns = { }, fromPartial, I>>(object: I): I18nString { const message = createBaseI18nString(); - message.locales = Object.entries(object.locales ?? {}).reduce<{ [key: string]: string }>((acc, [key, value]) => { - if (value !== undefined) { - acc[key] = globalThis.String(value); - } - return acc; - }, {}); + message.locales = (globalThis.Object.entries(object.locales ?? {}) as [string, string][]).reduce( + (acc: { [key: string]: string }, [key, value]: [string, string]) => { + if (value !== undefined) { + acc[key] = globalThis.String(value); + } + return acc; + }, + {}, + ); return message; }, }; -export function createBaseI18nString_LocalesEntry(): I18nString_LocalesEntry { +function createBaseI18nString_LocalesEntry(): I18nString_LocalesEntry { return { key: "", value: "" }; } export const I18nString_LocalesEntry: MessageFns = { encode(message: I18nString_LocalesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== "") { writer.uint32(10).string(message.key); } - if (message.value !== undefined) { + if (message.value !== "") { writer.uint32(18).string(message.value); } return writer; @@ -114,7 +120,7 @@ export const I18nString_LocalesEntry: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): I18nString_LocalesEntry { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseI18nString_LocalesEntry(); while (reader.pos < end) { const tag = reader.uint32(); @@ -146,17 +152,17 @@ export const I18nString_LocalesEntry: MessageFns = { fromJSON(object: any): I18nString_LocalesEntry { return { - key: globalThis.String(assertSet("I18nString_LocalesEntry.key", object.key)), - value: globalThis.String(assertSet("I18nString_LocalesEntry.value", object.value)), + key: isSet(object.key) ? globalThis.String(object.key) : "", + value: isSet(object.value) ? globalThis.String(object.value) : "", }; }, toJSON(message: I18nString_LocalesEntry): unknown { const obj: any = {}; - if (message.key !== undefined) { + if (message.key !== "") { obj.key = message.key; } - if (message.value !== undefined) { + if (message.value !== "") { obj.value = message.value; } return obj; @@ -194,14 +200,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/index.ts b/packages/core/src/protos/index.ts index a6a400ac7..024a1cebb 100644 --- a/packages/core/src/protos/index.ts +++ b/packages/core/src/protos/index.ts @@ -1,16 +1,16 @@ // @ts-nocheck -export * from './average_definitions.ts'; -export * from './camouflage_definitions.ts'; -export * from './consumable_definitions.ts'; -export * from './equipment_definitions.ts'; -export * from './gallery.ts'; -export * from './game_definitions.ts'; -export * from './i18n.ts'; -export * from './map_definitions.ts'; -export * from './model_definitions.ts'; -export * from './popular_tanks.ts'; -export * from './provision_definitions.ts'; -export * from './rating_leaderboard.ts'; -export * from './reviews.ts'; -export * from './skill_definitions.ts'; -export * from './tank_definitions.ts'; \ No newline at end of file +export * from "./average_definitions.ts"; +export * from "./camouflage_definitions.ts"; +export * from "./consumable_definitions.ts"; +export * from "./equipment_definitions.ts"; +export * from "./gallery.ts"; +export * from "./game_definitions.ts"; +export * from "./i18n.ts"; +export * from "./map_definitions.ts"; +export * from "./model_definitions.ts"; +export * from "./popular_tanks.ts"; +export * from "./provision_definitions.ts"; +export * from "./rating_leaderboard.ts"; +export * from "./reviews.ts"; +export * from "./skill_definitions.ts"; +export * from "./tank_definitions.ts"; diff --git a/packages/core/src/protos/map_definitions.proto b/packages/core/src/protos/map_definitions.proto index 1d67d331a..969970db4 100644 --- a/packages/core/src/protos/map_definitions.proto +++ b/packages/core/src/protos/map_definitions.proto @@ -2,13 +2,13 @@ syntax = "proto2"; package blitzkit; -import "packages/core/src/protos/i18n.proto"; +import "i18n.proto"; message MapDefinitions { map maps = 1; } message MapDefinition { - required uint32 id = 1; + required uint32 id = 1; required I18nString name = 2; } \ No newline at end of file diff --git a/packages/core/src/protos/map_definitions.ts b/packages/core/src/protos/map_definitions.ts index be7dd812b..8590e15b5 100644 --- a/packages/core/src/protos/map_definitions.ts +++ b/packages/core/src/protos/map_definitions.ts @@ -1,12 +1,12 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/map_definitions.proto +// source: map_definitions.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; -import { createBaseI18nString, I18nString } from "./i18n"; +import { I18nString } from "./i18n"; export const protobufPackage = "blitzkit"; @@ -21,16 +21,16 @@ export interface MapDefinitions_MapsEntry { export interface MapDefinition { id: number; - name: I18nString; + name: I18nString | undefined; } -export function createBaseMapDefinitions(): MapDefinitions { +function createBaseMapDefinitions(): MapDefinitions { return { maps: {} }; } export const MapDefinitions: MessageFns = { encode(message: MapDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - Object.entries(message.maps).forEach(([key, value]) => { + globalThis.Object.entries(message.maps).forEach(([key, value]: [string, MapDefinition]) => { MapDefinitions_MapsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); return writer; @@ -38,7 +38,7 @@ export const MapDefinitions: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): MapDefinitions { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMapDefinitions(); while (reader.pos < end) { const tag = reader.uint32(); @@ -66,10 +66,13 @@ export const MapDefinitions: MessageFns = { fromJSON(object: any): MapDefinitions { return { maps: isObject(object.maps) - ? Object.entries(object.maps).reduce<{ [key: number]: MapDefinition }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = MapDefinition.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.maps) as [string, any][]).reduce( + (acc: { [key: number]: MapDefinition }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = MapDefinition.fromJSON(value); + return acc; + }, + {}, + ) : {}, }; }, @@ -77,7 +80,7 @@ export const MapDefinitions: MessageFns = { toJSON(message: MapDefinitions): unknown { const obj: any = {}; if (message.maps) { - const entries = Object.entries(message.maps); + const entries = globalThis.Object.entries(message.maps) as [string, MapDefinition][]; if (entries.length > 0) { obj.maps = {}; entries.forEach(([k, v]) => { @@ -93,23 +96,26 @@ export const MapDefinitions: MessageFns = { }, fromPartial, I>>(object: I): MapDefinitions { const message = createBaseMapDefinitions(); - message.maps = Object.entries(object.maps ?? {}).reduce<{ [key: number]: MapDefinition }>((acc, [key, value]) => { - if (value !== undefined) { - acc[globalThis.Number(key)] = MapDefinition.fromPartial(value); - } - return acc; - }, {}); + message.maps = (globalThis.Object.entries(object.maps ?? {}) as [string, MapDefinition][]).reduce( + (acc: { [key: number]: MapDefinition }, [key, value]: [string, MapDefinition]) => { + if (value !== undefined) { + acc[globalThis.Number(key)] = MapDefinition.fromPartial(value); + } + return acc; + }, + {}, + ); return message; }, }; -export function createBaseMapDefinitions_MapsEntry(): MapDefinitions_MapsEntry { - return { key: 0, value: createBaseMapDefinition() }; +function createBaseMapDefinitions_MapsEntry(): MapDefinitions_MapsEntry { + return { key: 0, value: undefined }; } export const MapDefinitions_MapsEntry: MessageFns = { encode(message: MapDefinitions_MapsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).int32(message.key); } if (message.value !== undefined) { @@ -120,7 +126,7 @@ export const MapDefinitions_MapsEntry: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): MapDefinitions_MapsEntry { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMapDefinitions_MapsEntry(); while (reader.pos < end) { const tag = reader.uint32(); @@ -152,14 +158,14 @@ export const MapDefinitions_MapsEntry: MessageFns = { fromJSON(object: any): MapDefinitions_MapsEntry { return { - key: globalThis.Number(assertSet("MapDefinitions_MapsEntry.key", object.key)), - value: MapDefinition.fromJSON(assertSet("MapDefinitions_MapsEntry.value", object.value)), + key: isSet(object.key) ? globalThis.Number(object.key) : 0, + value: isSet(object.value) ? MapDefinition.fromJSON(object.value) : undefined, }; }, toJSON(message: MapDefinitions_MapsEntry): unknown { const obj: any = {}; - if (message.key !== undefined) { + if (message.key !== 0) { obj.key = Math.round(message.key); } if (message.value !== undefined) { @@ -176,13 +182,13 @@ export const MapDefinitions_MapsEntry: MessageFns = { message.key = object.key ?? 0; message.value = (object.value !== undefined && object.value !== null) ? MapDefinition.fromPartial(object.value) - : createBaseMapDefinition(); + : undefined; return message; }, }; -export function createBaseMapDefinition(): MapDefinition { - return { id: 0, name: createBaseI18nString() }; +function createBaseMapDefinition(): MapDefinition { + return { id: 0, name: undefined }; } export const MapDefinition: MessageFns = { @@ -198,7 +204,7 @@ export const MapDefinition: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): MapDefinition { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMapDefinition(); while (reader.pos < end) { const tag = reader.uint32(); @@ -230,8 +236,8 @@ export const MapDefinition: MessageFns = { fromJSON(object: any): MapDefinition { return { - id: globalThis.Number(assertSet("MapDefinition.id", object.id)), - name: I18nString.fromJSON(assertSet("MapDefinition.name", object.name)), + id: isSet(object.id) ? globalThis.Number(object.id) : 0, + name: isSet(object.name) ? I18nString.fromJSON(object.name) : undefined, }; }, @@ -254,7 +260,7 @@ export const MapDefinition: MessageFns = { message.id = object.id ?? 0; message.name = (object.name !== undefined && object.name !== null) ? I18nString.fromPartial(object.name) - : createBaseI18nString(); + : undefined; return message; }, }; @@ -280,14 +286,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/model_definitions.proto b/packages/core/src/protos/model_definitions.proto index 170141c14..242af4c34 100644 --- a/packages/core/src/protos/model_definitions.proto +++ b/packages/core/src/protos/model_definitions.proto @@ -7,17 +7,17 @@ message ModelDefinitions { } message ModelDefinition { - required Armor armor = 1; - required Vector3 turret_origin = 2; - optional InitialTurretRotation initial_turret_rotation = 3; - map turrets = 4; - map tracks = 5; - required BoundingBox bounding_box = 6; + required Armor armor = 1; + required Vector3 turret_origin = 2; + optional InitialTurretRotation initial_turret_rotation = 3; + map turrets = 4; + map tracks = 5; + required BoundingBox bounding_box = 6; } message Armor { map thickness = 1; - repeated uint32 spaced = 2; + repeated uint32 spaced = 2; } message Vector3 { @@ -27,18 +27,18 @@ message Vector3 { } message InitialTurretRotation { - required float yaw = 1; + required float yaw = 1; required float pitch = 2; - required float roll = 3; + required float roll = 3; } message TurretModelDefinition { - required BoundingBox bounding_box = 1; - required Armor armor = 2; - required uint32 model_id = 3; - required Vector3 gun_origin = 4; - map guns = 5; - optional YawLimits yaw = 6; + required BoundingBox bounding_box = 1; + required Armor armor = 2; + required uint32 model_id = 3; + required Vector3 gun_origin = 4; + map guns = 5; + optional YawLimits yaw = 6; } message YawLimits { @@ -52,28 +52,28 @@ message BoundingBox { } message TrackModelDefinition { - required float thickness = 1; - required Vector3 origin = 2; + required float thickness = 1; + required Vector3 origin = 2; } message GunModelDefinition { - required Armor armor = 1; - required float thickness = 2; - required uint32 model_id = 3; - required PitchLimits pitch = 4; - optional float mask = 5; + required Armor armor = 1; + required float thickness = 2; + required uint32 model_id = 3; + required PitchLimits pitch = 4; + optional float mask = 5; } message PitchLimits { - required float min = 1; - required float max = 2; - optional PitchLimitsExtrema front = 3; - optional PitchLimitsExtrema back = 4; - optional float transition = 5; + required float min = 1; + required float max = 2; + optional PitchLimitsExtrema front = 3; + optional PitchLimitsExtrema back = 4; + optional float transition = 5; } message PitchLimitsExtrema { - required float min = 1; - required float max = 2; + required float min = 1; + required float max = 2; required float range = 3; } \ No newline at end of file diff --git a/packages/core/src/protos/model_definitions.ts b/packages/core/src/protos/model_definitions.ts index 21bb114b3..7fdd45a7a 100644 --- a/packages/core/src/protos/model_definitions.ts +++ b/packages/core/src/protos/model_definitions.ts @@ -1,8 +1,8 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/model_definitions.proto +// source: model_definitions.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; @@ -19,12 +19,12 @@ export interface ModelDefinitions_ModelsEntry { } export interface ModelDefinition { - armor: Armor; - turret_origin: Vector3; + armor: Armor | undefined; + turret_origin: Vector3 | undefined; initial_turret_rotation?: InitialTurretRotation | undefined; turrets: { [key: number]: TurretModelDefinition }; tracks: { [key: number]: TrackModelDefinition }; - bounding_box: BoundingBox; + bounding_box: BoundingBox | undefined; } export interface ModelDefinition_TurretsEntry { @@ -60,10 +60,10 @@ export interface InitialTurretRotation { } export interface TurretModelDefinition { - bounding_box: BoundingBox; - armor: Armor; + bounding_box: BoundingBox | undefined; + armor: Armor | undefined; model_id: number; - gun_origin: Vector3; + gun_origin: Vector3 | undefined; guns: { [key: number]: GunModelDefinition }; yaw?: YawLimits | undefined; } @@ -79,20 +79,20 @@ export interface YawLimits { } export interface BoundingBox { - min: Vector3; - max: Vector3; + min: Vector3 | undefined; + max: Vector3 | undefined; } export interface TrackModelDefinition { thickness: number; - origin: Vector3; + origin: Vector3 | undefined; } export interface GunModelDefinition { - armor: Armor; + armor: Armor | undefined; thickness: number; model_id: number; - pitch: PitchLimits; + pitch: PitchLimits | undefined; mask?: number | undefined; } @@ -110,13 +110,13 @@ export interface PitchLimitsExtrema { range: number; } -export function createBaseModelDefinitions(): ModelDefinitions { +function createBaseModelDefinitions(): ModelDefinitions { return { models: {} }; } export const ModelDefinitions: MessageFns = { encode(message: ModelDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - Object.entries(message.models).forEach(([key, value]) => { + globalThis.Object.entries(message.models).forEach(([key, value]: [string, ModelDefinition]) => { ModelDefinitions_ModelsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); return writer; @@ -124,7 +124,7 @@ export const ModelDefinitions: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): ModelDefinitions { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseModelDefinitions(); while (reader.pos < end) { const tag = reader.uint32(); @@ -152,10 +152,13 @@ export const ModelDefinitions: MessageFns = { fromJSON(object: any): ModelDefinitions { return { models: isObject(object.models) - ? Object.entries(object.models).reduce<{ [key: number]: ModelDefinition }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = ModelDefinition.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.models) as [string, any][]).reduce( + (acc: { [key: number]: ModelDefinition }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = ModelDefinition.fromJSON(value); + return acc; + }, + {}, + ) : {}, }; }, @@ -163,7 +166,7 @@ export const ModelDefinitions: MessageFns = { toJSON(message: ModelDefinitions): unknown { const obj: any = {}; if (message.models) { - const entries = Object.entries(message.models); + const entries = globalThis.Object.entries(message.models) as [string, ModelDefinition][]; if (entries.length > 0) { obj.models = {}; entries.forEach(([k, v]) => { @@ -179,8 +182,8 @@ export const ModelDefinitions: MessageFns = { }, fromPartial, I>>(object: I): ModelDefinitions { const message = createBaseModelDefinitions(); - message.models = Object.entries(object.models ?? {}).reduce<{ [key: number]: ModelDefinition }>( - (acc, [key, value]) => { + message.models = (globalThis.Object.entries(object.models ?? {}) as [string, ModelDefinition][]).reduce( + (acc: { [key: number]: ModelDefinition }, [key, value]: [string, ModelDefinition]) => { if (value !== undefined) { acc[globalThis.Number(key)] = ModelDefinition.fromPartial(value); } @@ -192,13 +195,13 @@ export const ModelDefinitions: MessageFns = { }, }; -export function createBaseModelDefinitions_ModelsEntry(): ModelDefinitions_ModelsEntry { - return { key: 0, value: createBaseModelDefinition() }; +function createBaseModelDefinitions_ModelsEntry(): ModelDefinitions_ModelsEntry { + return { key: 0, value: undefined }; } export const ModelDefinitions_ModelsEntry: MessageFns = { encode(message: ModelDefinitions_ModelsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -209,7 +212,7 @@ export const ModelDefinitions_ModelsEntry: MessageFns = { if (message.initial_turret_rotation !== undefined) { InitialTurretRotation.encode(message.initial_turret_rotation, writer.uint32(26).fork()).join(); } - Object.entries(message.turrets).forEach(([key, value]) => { + globalThis.Object.entries(message.turrets).forEach(([key, value]: [string, TurretModelDefinition]) => { ModelDefinition_TurretsEntry.encode({ key: key as any, value }, writer.uint32(34).fork()).join(); }); - Object.entries(message.tracks).forEach(([key, value]) => { + globalThis.Object.entries(message.tracks).forEach(([key, value]: [string, TrackModelDefinition]) => { ModelDefinition_TracksEntry.encode({ key: key as any, value }, writer.uint32(42).fork()).join(); }); if (message.bounding_box !== undefined) { @@ -306,7 +309,7 @@ export const ModelDefinition: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): ModelDefinition { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseModelDefinition(); while (reader.pos < end) { const tag = reader.uint32(); @@ -376,24 +379,40 @@ export const ModelDefinition: MessageFns = { fromJSON(object: any): ModelDefinition { return { - armor: Armor.fromJSON(assertSet("ModelDefinition.armor", object.armor)), - turret_origin: Vector3.fromJSON(assertSet("ModelDefinition.turret_origin", object.turret_origin)), - initial_turret_rotation: isSet(object.initial_turret_rotation) + armor: isSet(object.armor) ? Armor.fromJSON(object.armor) : undefined, + turret_origin: isSet(object.turretOrigin) + ? Vector3.fromJSON(object.turretOrigin) + : isSet(object.turret_origin) + ? Vector3.fromJSON(object.turret_origin) + : undefined, + initial_turret_rotation: isSet(object.initialTurretRotation) + ? InitialTurretRotation.fromJSON(object.initialTurretRotation) + : isSet(object.initial_turret_rotation) ? InitialTurretRotation.fromJSON(object.initial_turret_rotation) : undefined, turrets: isObject(object.turrets) - ? Object.entries(object.turrets).reduce<{ [key: number]: TurretModelDefinition }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = TurretModelDefinition.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.turrets) as [string, any][]).reduce( + (acc: { [key: number]: TurretModelDefinition }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = TurretModelDefinition.fromJSON(value); + return acc; + }, + {}, + ) : {}, tracks: isObject(object.tracks) - ? Object.entries(object.tracks).reduce<{ [key: number]: TrackModelDefinition }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = TrackModelDefinition.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.tracks) as [string, any][]).reduce( + (acc: { [key: number]: TrackModelDefinition }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = TrackModelDefinition.fromJSON(value); + return acc; + }, + {}, + ) : {}, - bounding_box: BoundingBox.fromJSON(assertSet("ModelDefinition.bounding_box", object.bounding_box)), + bounding_box: isSet(object.boundingBox) + ? BoundingBox.fromJSON(object.boundingBox) + : isSet(object.bounding_box) + ? BoundingBox.fromJSON(object.bounding_box) + : undefined, }; }, @@ -403,13 +422,13 @@ export const ModelDefinition: MessageFns = { obj.armor = Armor.toJSON(message.armor); } if (message.turret_origin !== undefined) { - obj.turret_origin = Vector3.toJSON(message.turret_origin); + obj.turretOrigin = Vector3.toJSON(message.turret_origin); } if (message.initial_turret_rotation !== undefined) { - obj.initial_turret_rotation = InitialTurretRotation.toJSON(message.initial_turret_rotation); + obj.initialTurretRotation = InitialTurretRotation.toJSON(message.initial_turret_rotation); } if (message.turrets) { - const entries = Object.entries(message.turrets); + const entries = globalThis.Object.entries(message.turrets) as [string, TurretModelDefinition][]; if (entries.length > 0) { obj.turrets = {}; entries.forEach(([k, v]) => { @@ -418,7 +437,7 @@ export const ModelDefinition: MessageFns = { } } if (message.tracks) { - const entries = Object.entries(message.tracks); + const entries = globalThis.Object.entries(message.tracks) as [string, TrackModelDefinition][]; if (entries.length > 0) { obj.tracks = {}; entries.forEach(([k, v]) => { @@ -427,7 +446,7 @@ export const ModelDefinition: MessageFns = { } } if (message.bounding_box !== undefined) { - obj.bounding_box = BoundingBox.toJSON(message.bounding_box); + obj.boundingBox = BoundingBox.toJSON(message.bounding_box); } return obj; }, @@ -437,18 +456,16 @@ export const ModelDefinition: MessageFns = { }, fromPartial, I>>(object: I): ModelDefinition { const message = createBaseModelDefinition(); - message.armor = (object.armor !== undefined && object.armor !== null) - ? Armor.fromPartial(object.armor) - : createBaseArmor(); + message.armor = (object.armor !== undefined && object.armor !== null) ? Armor.fromPartial(object.armor) : undefined; message.turret_origin = (object.turret_origin !== undefined && object.turret_origin !== null) ? Vector3.fromPartial(object.turret_origin) - : createBaseVector3(); + : undefined; message.initial_turret_rotation = (object.initial_turret_rotation !== undefined && object.initial_turret_rotation !== null) ? InitialTurretRotation.fromPartial(object.initial_turret_rotation) : undefined; - message.turrets = Object.entries(object.turrets ?? {}).reduce<{ [key: number]: TurretModelDefinition }>( - (acc, [key, value]) => { + message.turrets = (globalThis.Object.entries(object.turrets ?? {}) as [string, TurretModelDefinition][]).reduce( + (acc: { [key: number]: TurretModelDefinition }, [key, value]: [string, TurretModelDefinition]) => { if (value !== undefined) { acc[globalThis.Number(key)] = TurretModelDefinition.fromPartial(value); } @@ -456,8 +473,8 @@ export const ModelDefinition: MessageFns = { }, {}, ); - message.tracks = Object.entries(object.tracks ?? {}).reduce<{ [key: number]: TrackModelDefinition }>( - (acc, [key, value]) => { + message.tracks = (globalThis.Object.entries(object.tracks ?? {}) as [string, TrackModelDefinition][]).reduce( + (acc: { [key: number]: TrackModelDefinition }, [key, value]: [string, TrackModelDefinition]) => { if (value !== undefined) { acc[globalThis.Number(key)] = TrackModelDefinition.fromPartial(value); } @@ -467,18 +484,18 @@ export const ModelDefinition: MessageFns = { ); message.bounding_box = (object.bounding_box !== undefined && object.bounding_box !== null) ? BoundingBox.fromPartial(object.bounding_box) - : createBaseBoundingBox(); + : undefined; return message; }, }; -export function createBaseModelDefinition_TurretsEntry(): ModelDefinition_TurretsEntry { - return { key: 0, value: createBaseTurretModelDefinition() }; +function createBaseModelDefinition_TurretsEntry(): ModelDefinition_TurretsEntry { + return { key: 0, value: undefined }; } export const ModelDefinition_TurretsEntry: MessageFns = { encode(message: ModelDefinition_TurretsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -489,7 +506,7 @@ export const ModelDefinition_TurretsEntry: MessageFns = { encode(message: ModelDefinition_TracksEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -567,7 +584,7 @@ export const ModelDefinition_TracksEntry: MessageFns = { encode(message: Armor, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - Object.entries(message.thickness).forEach(([key, value]) => { + globalThis.Object.entries(message.thickness).forEach(([key, value]: [string, number]) => { Armor_ThicknessEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); - writer.uint32(18).fork(); for (const v of message.spaced) { - writer.uint32(v); + writer.uint32(16).uint32(v!); } - writer.join(); return writer; }, decode(input: BinaryReader | Uint8Array, length?: number): Armor { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseArmor(); while (reader.pos < end) { const tag = reader.uint32(); @@ -693,10 +708,13 @@ export const Armor: MessageFns = { fromJSON(object: any): Armor { return { thickness: isObject(object.thickness) - ? Object.entries(object.thickness).reduce<{ [key: number]: number }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = Number(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.thickness) as [string, any][]).reduce( + (acc: { [key: number]: number }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = globalThis.Number(value); + return acc; + }, + {}, + ) : {}, spaced: globalThis.Array.isArray(object?.spaced) ? object.spaced.map((e: any) => globalThis.Number(e)) : [], }; @@ -705,7 +723,7 @@ export const Armor: MessageFns = { toJSON(message: Armor): unknown { const obj: any = {}; if (message.thickness) { - const entries = Object.entries(message.thickness); + const entries = globalThis.Object.entries(message.thickness) as [string, number][]; if (entries.length > 0) { obj.thickness = {}; entries.forEach(([k, v]) => { @@ -724,8 +742,8 @@ export const Armor: MessageFns = { }, fromPartial, I>>(object: I): Armor { const message = createBaseArmor(); - message.thickness = Object.entries(object.thickness ?? {}).reduce<{ [key: number]: number }>( - (acc, [key, value]) => { + message.thickness = (globalThis.Object.entries(object.thickness ?? {}) as [string, number][]).reduce( + (acc: { [key: number]: number }, [key, value]: [string, number]) => { if (value !== undefined) { acc[globalThis.Number(key)] = globalThis.Number(value); } @@ -738,16 +756,16 @@ export const Armor: MessageFns = { }, }; -export function createBaseArmor_ThicknessEntry(): Armor_ThicknessEntry { +function createBaseArmor_ThicknessEntry(): Armor_ThicknessEntry { return { key: 0, value: 0 }; } export const Armor_ThicknessEntry: MessageFns = { encode(message: Armor_ThicknessEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } - if (message.value !== undefined) { + if (message.value !== 0) { writer.uint32(21).float(message.value); } return writer; @@ -755,7 +773,7 @@ export const Armor_ThicknessEntry: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Armor_ThicknessEntry { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseArmor_ThicknessEntry(); while (reader.pos < end) { const tag = reader.uint32(); @@ -787,17 +805,17 @@ export const Armor_ThicknessEntry: MessageFns = { fromJSON(object: any): Armor_ThicknessEntry { return { - key: globalThis.Number(assertSet("Armor_ThicknessEntry.key", object.key)), - value: globalThis.Number(assertSet("Armor_ThicknessEntry.value", object.value)), + key: isSet(object.key) ? globalThis.Number(object.key) : 0, + value: isSet(object.value) ? globalThis.Number(object.value) : 0, }; }, toJSON(message: Armor_ThicknessEntry): unknown { const obj: any = {}; - if (message.key !== undefined) { + if (message.key !== 0) { obj.key = Math.round(message.key); } - if (message.value !== undefined) { + if (message.value !== 0) { obj.value = message.value; } return obj; @@ -814,7 +832,7 @@ export const Armor_ThicknessEntry: MessageFns = { }, }; -export function createBaseVector3(): Vector3 { +function createBaseVector3(): Vector3 { return { x: 0, y: 0, z: 0 }; } @@ -834,7 +852,7 @@ export const Vector3: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Vector3 { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseVector3(); while (reader.pos < end) { const tag = reader.uint32(); @@ -874,9 +892,9 @@ export const Vector3: MessageFns = { fromJSON(object: any): Vector3 { return { - x: globalThis.Number(assertSet("Vector3.x", object.x)), - y: globalThis.Number(assertSet("Vector3.y", object.y)), - z: globalThis.Number(assertSet("Vector3.z", object.z)), + x: isSet(object.x) ? globalThis.Number(object.x) : 0, + y: isSet(object.y) ? globalThis.Number(object.y) : 0, + z: isSet(object.z) ? globalThis.Number(object.z) : 0, }; }, @@ -906,7 +924,7 @@ export const Vector3: MessageFns = { }, }; -export function createBaseInitialTurretRotation(): InitialTurretRotation { +function createBaseInitialTurretRotation(): InitialTurretRotation { return { yaw: 0, pitch: 0, roll: 0 }; } @@ -926,7 +944,7 @@ export const InitialTurretRotation: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): InitialTurretRotation { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseInitialTurretRotation(); while (reader.pos < end) { const tag = reader.uint32(); @@ -966,9 +984,9 @@ export const InitialTurretRotation: MessageFns = { fromJSON(object: any): InitialTurretRotation { return { - yaw: globalThis.Number(assertSet("InitialTurretRotation.yaw", object.yaw)), - pitch: globalThis.Number(assertSet("InitialTurretRotation.pitch", object.pitch)), - roll: globalThis.Number(assertSet("InitialTurretRotation.roll", object.roll)), + yaw: isSet(object.yaw) ? globalThis.Number(object.yaw) : 0, + pitch: isSet(object.pitch) ? globalThis.Number(object.pitch) : 0, + roll: isSet(object.roll) ? globalThis.Number(object.roll) : 0, }; }, @@ -998,15 +1016,8 @@ export const InitialTurretRotation: MessageFns = { }, }; -export function createBaseTurretModelDefinition(): TurretModelDefinition { - return { - bounding_box: createBaseBoundingBox(), - armor: createBaseArmor(), - model_id: 0, - gun_origin: createBaseVector3(), - guns: {}, - yaw: undefined, - }; +function createBaseTurretModelDefinition(): TurretModelDefinition { + return { bounding_box: undefined, armor: undefined, model_id: 0, gun_origin: undefined, guns: {}, yaw: undefined }; } export const TurretModelDefinition: MessageFns = { @@ -1023,7 +1034,7 @@ export const TurretModelDefinition: MessageFns = { if (message.gun_origin !== undefined) { Vector3.encode(message.gun_origin, writer.uint32(34).fork()).join(); } - Object.entries(message.guns).forEach(([key, value]) => { + globalThis.Object.entries(message.guns).forEach(([key, value]: [string, GunModelDefinition]) => { TurretModelDefinition_GunsEntry.encode({ key: key as any, value }, writer.uint32(42).fork()).join(); }); if (message.yaw !== undefined) { @@ -1034,7 +1045,7 @@ export const TurretModelDefinition: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): TurretModelDefinition { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseTurretModelDefinition(); while (reader.pos < end) { const tag = reader.uint32(); @@ -1101,15 +1112,30 @@ export const TurretModelDefinition: MessageFns = { fromJSON(object: any): TurretModelDefinition { return { - bounding_box: BoundingBox.fromJSON(assertSet("TurretModelDefinition.bounding_box", object.bounding_box)), - armor: Armor.fromJSON(assertSet("TurretModelDefinition.armor", object.armor)), - model_id: globalThis.Number(assertSet("TurretModelDefinition.model_id", object.model_id)), - gun_origin: Vector3.fromJSON(assertSet("TurretModelDefinition.gun_origin", object.gun_origin)), + bounding_box: isSet(object.boundingBox) + ? BoundingBox.fromJSON(object.boundingBox) + : isSet(object.bounding_box) + ? BoundingBox.fromJSON(object.bounding_box) + : undefined, + armor: isSet(object.armor) ? Armor.fromJSON(object.armor) : undefined, + model_id: isSet(object.modelId) + ? globalThis.Number(object.modelId) + : isSet(object.model_id) + ? globalThis.Number(object.model_id) + : 0, + gun_origin: isSet(object.gunOrigin) + ? Vector3.fromJSON(object.gunOrigin) + : isSet(object.gun_origin) + ? Vector3.fromJSON(object.gun_origin) + : undefined, guns: isObject(object.guns) - ? Object.entries(object.guns).reduce<{ [key: number]: GunModelDefinition }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = GunModelDefinition.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.guns) as [string, any][]).reduce( + (acc: { [key: number]: GunModelDefinition }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = GunModelDefinition.fromJSON(value); + return acc; + }, + {}, + ) : {}, yaw: isSet(object.yaw) ? YawLimits.fromJSON(object.yaw) : undefined, }; @@ -1118,19 +1144,19 @@ export const TurretModelDefinition: MessageFns = { toJSON(message: TurretModelDefinition): unknown { const obj: any = {}; if (message.bounding_box !== undefined) { - obj.bounding_box = BoundingBox.toJSON(message.bounding_box); + obj.boundingBox = BoundingBox.toJSON(message.bounding_box); } if (message.armor !== undefined) { obj.armor = Armor.toJSON(message.armor); } if (message.model_id !== 0) { - obj.model_id = Math.round(message.model_id); + obj.modelId = Math.round(message.model_id); } if (message.gun_origin !== undefined) { - obj.gun_origin = Vector3.toJSON(message.gun_origin); + obj.gunOrigin = Vector3.toJSON(message.gun_origin); } if (message.guns) { - const entries = Object.entries(message.guns); + const entries = globalThis.Object.entries(message.guns) as [string, GunModelDefinition][]; if (entries.length > 0) { obj.guns = {}; entries.forEach(([k, v]) => { @@ -1151,16 +1177,14 @@ export const TurretModelDefinition: MessageFns = { const message = createBaseTurretModelDefinition(); message.bounding_box = (object.bounding_box !== undefined && object.bounding_box !== null) ? BoundingBox.fromPartial(object.bounding_box) - : createBaseBoundingBox(); - message.armor = (object.armor !== undefined && object.armor !== null) - ? Armor.fromPartial(object.armor) - : createBaseArmor(); + : undefined; + message.armor = (object.armor !== undefined && object.armor !== null) ? Armor.fromPartial(object.armor) : undefined; message.model_id = object.model_id ?? 0; message.gun_origin = (object.gun_origin !== undefined && object.gun_origin !== null) ? Vector3.fromPartial(object.gun_origin) - : createBaseVector3(); - message.guns = Object.entries(object.guns ?? {}).reduce<{ [key: number]: GunModelDefinition }>( - (acc, [key, value]) => { + : undefined; + message.guns = (globalThis.Object.entries(object.guns ?? {}) as [string, GunModelDefinition][]).reduce( + (acc: { [key: number]: GunModelDefinition }, [key, value]: [string, GunModelDefinition]) => { if (value !== undefined) { acc[globalThis.Number(key)] = GunModelDefinition.fromPartial(value); } @@ -1173,13 +1197,13 @@ export const TurretModelDefinition: MessageFns = { }, }; -export function createBaseTurretModelDefinition_GunsEntry(): TurretModelDefinition_GunsEntry { - return { key: 0, value: createBaseGunModelDefinition() }; +function createBaseTurretModelDefinition_GunsEntry(): TurretModelDefinition_GunsEntry { + return { key: 0, value: undefined }; } export const TurretModelDefinition_GunsEntry: MessageFns = { encode(message: TurretModelDefinition_GunsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -1190,7 +1214,7 @@ export const TurretModelDefinition_GunsEntry: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): YawLimits { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseYawLimits(); while (reader.pos < end) { const tag = reader.uint32(); @@ -1302,8 +1326,8 @@ export const YawLimits: MessageFns = { fromJSON(object: any): YawLimits { return { - min: globalThis.Number(assertSet("YawLimits.min", object.min)), - max: globalThis.Number(assertSet("YawLimits.max", object.max)), + min: isSet(object.min) ? globalThis.Number(object.min) : 0, + max: isSet(object.max) ? globalThis.Number(object.max) : 0, }; }, @@ -1329,8 +1353,8 @@ export const YawLimits: MessageFns = { }, }; -export function createBaseBoundingBox(): BoundingBox { - return { min: createBaseVector3(), max: createBaseVector3() }; +function createBaseBoundingBox(): BoundingBox { + return { min: undefined, max: undefined }; } export const BoundingBox: MessageFns = { @@ -1346,7 +1370,7 @@ export const BoundingBox: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): BoundingBox { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseBoundingBox(); while (reader.pos < end) { const tag = reader.uint32(); @@ -1378,8 +1402,8 @@ export const BoundingBox: MessageFns = { fromJSON(object: any): BoundingBox { return { - min: Vector3.fromJSON(assertSet("BoundingBox.min", object.min)), - max: Vector3.fromJSON(assertSet("BoundingBox.max", object.max)), + min: isSet(object.min) ? Vector3.fromJSON(object.min) : undefined, + max: isSet(object.max) ? Vector3.fromJSON(object.max) : undefined, }; }, @@ -1399,18 +1423,14 @@ export const BoundingBox: MessageFns = { }, fromPartial, I>>(object: I): BoundingBox { const message = createBaseBoundingBox(); - message.min = (object.min !== undefined && object.min !== null) - ? Vector3.fromPartial(object.min) - : createBaseVector3(); - message.max = (object.max !== undefined && object.max !== null) - ? Vector3.fromPartial(object.max) - : createBaseVector3(); + message.min = (object.min !== undefined && object.min !== null) ? Vector3.fromPartial(object.min) : undefined; + message.max = (object.max !== undefined && object.max !== null) ? Vector3.fromPartial(object.max) : undefined; return message; }, }; -export function createBaseTrackModelDefinition(): TrackModelDefinition { - return { thickness: 0, origin: createBaseVector3() }; +function createBaseTrackModelDefinition(): TrackModelDefinition { + return { thickness: 0, origin: undefined }; } export const TrackModelDefinition: MessageFns = { @@ -1426,7 +1446,7 @@ export const TrackModelDefinition: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): TrackModelDefinition { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseTrackModelDefinition(); while (reader.pos < end) { const tag = reader.uint32(); @@ -1458,8 +1478,8 @@ export const TrackModelDefinition: MessageFns = { fromJSON(object: any): TrackModelDefinition { return { - thickness: globalThis.Number(assertSet("TrackModelDefinition.thickness", object.thickness)), - origin: Vector3.fromJSON(assertSet("TrackModelDefinition.origin", object.origin)), + thickness: isSet(object.thickness) ? globalThis.Number(object.thickness) : 0, + origin: isSet(object.origin) ? Vector3.fromJSON(object.origin) : undefined, }; }, @@ -1482,13 +1502,13 @@ export const TrackModelDefinition: MessageFns = { message.thickness = object.thickness ?? 0; message.origin = (object.origin !== undefined && object.origin !== null) ? Vector3.fromPartial(object.origin) - : createBaseVector3(); + : undefined; return message; }, }; -export function createBaseGunModelDefinition(): GunModelDefinition { - return { armor: createBaseArmor(), thickness: 0, model_id: 0, pitch: createBasePitchLimits(), mask: undefined }; +function createBaseGunModelDefinition(): GunModelDefinition { + return { armor: undefined, thickness: 0, model_id: 0, pitch: undefined, mask: 0 }; } export const GunModelDefinition: MessageFns = { @@ -1505,7 +1525,7 @@ export const GunModelDefinition: MessageFns = { if (message.pitch !== undefined) { PitchLimits.encode(message.pitch, writer.uint32(34).fork()).join(); } - if (message.mask !== undefined && message.mask !== undefined) { + if (message.mask !== undefined && message.mask !== 0) { writer.uint32(45).float(message.mask); } return writer; @@ -1513,7 +1533,7 @@ export const GunModelDefinition: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): GunModelDefinition { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGunModelDefinition(); while (reader.pos < end) { const tag = reader.uint32(); @@ -1569,11 +1589,15 @@ export const GunModelDefinition: MessageFns = { fromJSON(object: any): GunModelDefinition { return { - armor: Armor.fromJSON(assertSet("GunModelDefinition.armor", object.armor)), - thickness: globalThis.Number(assertSet("GunModelDefinition.thickness", object.thickness)), - model_id: globalThis.Number(assertSet("GunModelDefinition.model_id", object.model_id)), - pitch: PitchLimits.fromJSON(assertSet("GunModelDefinition.pitch", object.pitch)), - mask: isSet(object.mask) ? globalThis.Number(object.mask) : undefined, + armor: isSet(object.armor) ? Armor.fromJSON(object.armor) : undefined, + thickness: isSet(object.thickness) ? globalThis.Number(object.thickness) : 0, + model_id: isSet(object.modelId) + ? globalThis.Number(object.modelId) + : isSet(object.model_id) + ? globalThis.Number(object.model_id) + : 0, + pitch: isSet(object.pitch) ? PitchLimits.fromJSON(object.pitch) : undefined, + mask: isSet(object.mask) ? globalThis.Number(object.mask) : 0, }; }, @@ -1586,12 +1610,12 @@ export const GunModelDefinition: MessageFns = { obj.thickness = message.thickness; } if (message.model_id !== 0) { - obj.model_id = Math.round(message.model_id); + obj.modelId = Math.round(message.model_id); } if (message.pitch !== undefined) { obj.pitch = PitchLimits.toJSON(message.pitch); } - if (message.mask !== undefined && message.mask !== undefined) { + if (message.mask !== undefined && message.mask !== 0) { obj.mask = message.mask; } return obj; @@ -1602,21 +1626,19 @@ export const GunModelDefinition: MessageFns = { }, fromPartial, I>>(object: I): GunModelDefinition { const message = createBaseGunModelDefinition(); - message.armor = (object.armor !== undefined && object.armor !== null) - ? Armor.fromPartial(object.armor) - : createBaseArmor(); + message.armor = (object.armor !== undefined && object.armor !== null) ? Armor.fromPartial(object.armor) : undefined; message.thickness = object.thickness ?? 0; message.model_id = object.model_id ?? 0; message.pitch = (object.pitch !== undefined && object.pitch !== null) ? PitchLimits.fromPartial(object.pitch) - : createBasePitchLimits(); - message.mask = object.mask ?? undefined; + : undefined; + message.mask = object.mask ?? 0; return message; }, }; -export function createBasePitchLimits(): PitchLimits { - return { min: 0, max: 0, front: undefined, back: undefined, transition: undefined }; +function createBasePitchLimits(): PitchLimits { + return { min: 0, max: 0, front: undefined, back: undefined, transition: 0 }; } export const PitchLimits: MessageFns = { @@ -1633,7 +1655,7 @@ export const PitchLimits: MessageFns = { if (message.back !== undefined) { PitchLimitsExtrema.encode(message.back, writer.uint32(34).fork()).join(); } - if (message.transition !== undefined && message.transition !== undefined) { + if (message.transition !== undefined && message.transition !== 0) { writer.uint32(45).float(message.transition); } return writer; @@ -1641,7 +1663,7 @@ export const PitchLimits: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): PitchLimits { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBasePitchLimits(); while (reader.pos < end) { const tag = reader.uint32(); @@ -1697,11 +1719,11 @@ export const PitchLimits: MessageFns = { fromJSON(object: any): PitchLimits { return { - min: globalThis.Number(assertSet("PitchLimits.min", object.min)), - max: globalThis.Number(assertSet("PitchLimits.max", object.max)), + min: isSet(object.min) ? globalThis.Number(object.min) : 0, + max: isSet(object.max) ? globalThis.Number(object.max) : 0, front: isSet(object.front) ? PitchLimitsExtrema.fromJSON(object.front) : undefined, back: isSet(object.back) ? PitchLimitsExtrema.fromJSON(object.back) : undefined, - transition: isSet(object.transition) ? globalThis.Number(object.transition) : undefined, + transition: isSet(object.transition) ? globalThis.Number(object.transition) : 0, }; }, @@ -1719,7 +1741,7 @@ export const PitchLimits: MessageFns = { if (message.back !== undefined) { obj.back = PitchLimitsExtrema.toJSON(message.back); } - if (message.transition !== undefined && message.transition !== undefined) { + if (message.transition !== undefined && message.transition !== 0) { obj.transition = message.transition; } return obj; @@ -1738,12 +1760,12 @@ export const PitchLimits: MessageFns = { message.back = (object.back !== undefined && object.back !== null) ? PitchLimitsExtrema.fromPartial(object.back) : undefined; - message.transition = object.transition ?? undefined; + message.transition = object.transition ?? 0; return message; }, }; -export function createBasePitchLimitsExtrema(): PitchLimitsExtrema { +function createBasePitchLimitsExtrema(): PitchLimitsExtrema { return { min: 0, max: 0, range: 0 }; } @@ -1763,7 +1785,7 @@ export const PitchLimitsExtrema: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): PitchLimitsExtrema { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBasePitchLimitsExtrema(); while (reader.pos < end) { const tag = reader.uint32(); @@ -1803,9 +1825,9 @@ export const PitchLimitsExtrema: MessageFns = { fromJSON(object: any): PitchLimitsExtrema { return { - min: globalThis.Number(assertSet("PitchLimitsExtrema.min", object.min)), - max: globalThis.Number(assertSet("PitchLimitsExtrema.max", object.max)), - range: globalThis.Number(assertSet("PitchLimitsExtrema.range", object.range)), + min: isSet(object.min) ? globalThis.Number(object.min) : 0, + max: isSet(object.max) ? globalThis.Number(object.max) : 0, + range: isSet(object.range) ? globalThis.Number(object.range) : 0, }; }, @@ -1856,14 +1878,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/popular_tanks.proto b/packages/core/src/protos/popular_tanks.proto index d4e127a67..68a3cef36 100644 --- a/packages/core/src/protos/popular_tanks.proto +++ b/packages/core/src/protos/popular_tanks.proto @@ -7,6 +7,6 @@ message PopularTanks { } message PopularTank { - required uint32 id = 1; + required uint32 id = 1; required uint32 views = 2; // views in the last 7 days } \ No newline at end of file diff --git a/packages/core/src/protos/popular_tanks.ts b/packages/core/src/protos/popular_tanks.ts index 6e145b999..be64b0052 100644 --- a/packages/core/src/protos/popular_tanks.ts +++ b/packages/core/src/protos/popular_tanks.ts @@ -1,8 +1,8 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/popular_tanks.proto +// source: popular_tanks.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; @@ -19,7 +19,7 @@ export interface PopularTank { views: number; } -export function createBasePopularTanks(): PopularTanks { +function createBasePopularTanks(): PopularTanks { return { tanks: [] }; } @@ -33,7 +33,7 @@ export const PopularTanks: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): PopularTanks { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBasePopularTanks(); while (reader.pos < end) { const tag = reader.uint32(); @@ -79,7 +79,7 @@ export const PopularTanks: MessageFns = { }, }; -export function createBasePopularTank(): PopularTank { +function createBasePopularTank(): PopularTank { return { id: 0, views: 0 }; } @@ -96,7 +96,7 @@ export const PopularTank: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): PopularTank { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBasePopularTank(); while (reader.pos < end) { const tag = reader.uint32(); @@ -128,8 +128,8 @@ export const PopularTank: MessageFns = { fromJSON(object: any): PopularTank { return { - id: globalThis.Number(assertSet("PopularTank.id", object.id)), - views: globalThis.Number(assertSet("PopularTank.views", object.views)), + id: isSet(object.id) ? globalThis.Number(object.id) : 0, + views: isSet(object.views) ? globalThis.Number(object.views) : 0, }; }, @@ -172,14 +172,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/provision_definitions.proto b/packages/core/src/protos/provision_definitions.proto index 655949553..51629b370 100644 --- a/packages/core/src/protos/provision_definitions.proto +++ b/packages/core/src/protos/provision_definitions.proto @@ -2,18 +2,18 @@ syntax = "proto2"; package blitzkit; -import "packages/core/src/protos/consumable_definitions.proto"; -import "packages/core/src/protos/i18n.proto"; +import "consumable_definitions.proto"; +import "i18n.proto"; message ProvisionDefinitions { map provisions = 1; } message Provision { - required uint32 id = 1; - required I18nString name = 2; - optional float crew = 3; - required bool game_mode_exclusive = 5; - repeated ConsumableTankFilter include = 6; - repeated ConsumableTankFilter exclude = 7; + required uint32 id = 1; + required I18nString name = 2; + optional float crew = 3; + required bool game_mode_exclusive = 5; + repeated ConsumableTankFilter include = 6; + repeated ConsumableTankFilter exclude = 7; } \ No newline at end of file diff --git a/packages/core/src/protos/provision_definitions.ts b/packages/core/src/protos/provision_definitions.ts index a5d97e27a..7baea8f18 100644 --- a/packages/core/src/protos/provision_definitions.ts +++ b/packages/core/src/protos/provision_definitions.ts @@ -1,13 +1,13 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/provision_definitions.proto +// source: provision_definitions.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import { ConsumableTankFilter } from "./consumable_definitions"; -import { createBaseI18nString, I18nString } from "./i18n"; +import { I18nString } from "./i18n"; export const protobufPackage = "blitzkit"; @@ -22,20 +22,20 @@ export interface ProvisionDefinitions_ProvisionsEntry { export interface Provision { id: number; - name: I18nString; + name: I18nString | undefined; crew?: number | undefined; game_mode_exclusive: boolean; include: ConsumableTankFilter[]; exclude: ConsumableTankFilter[]; } -export function createBaseProvisionDefinitions(): ProvisionDefinitions { +function createBaseProvisionDefinitions(): ProvisionDefinitions { return { provisions: {} }; } export const ProvisionDefinitions: MessageFns = { encode(message: ProvisionDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - Object.entries(message.provisions).forEach(([key, value]) => { + globalThis.Object.entries(message.provisions).forEach(([key, value]: [string, Provision]) => { ProvisionDefinitions_ProvisionsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); return writer; @@ -43,7 +43,7 @@ export const ProvisionDefinitions: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): ProvisionDefinitions { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseProvisionDefinitions(); while (reader.pos < end) { const tag = reader.uint32(); @@ -71,10 +71,13 @@ export const ProvisionDefinitions: MessageFns = { fromJSON(object: any): ProvisionDefinitions { return { provisions: isObject(object.provisions) - ? Object.entries(object.provisions).reduce<{ [key: number]: Provision }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = Provision.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.provisions) as [string, any][]).reduce( + (acc: { [key: number]: Provision }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = Provision.fromJSON(value); + return acc; + }, + {}, + ) : {}, }; }, @@ -82,7 +85,7 @@ export const ProvisionDefinitions: MessageFns = { toJSON(message: ProvisionDefinitions): unknown { const obj: any = {}; if (message.provisions) { - const entries = Object.entries(message.provisions); + const entries = globalThis.Object.entries(message.provisions) as [string, Provision][]; if (entries.length > 0) { obj.provisions = {}; entries.forEach(([k, v]) => { @@ -98,8 +101,8 @@ export const ProvisionDefinitions: MessageFns = { }, fromPartial, I>>(object: I): ProvisionDefinitions { const message = createBaseProvisionDefinitions(); - message.provisions = Object.entries(object.provisions ?? {}).reduce<{ [key: number]: Provision }>( - (acc, [key, value]) => { + message.provisions = (globalThis.Object.entries(object.provisions ?? {}) as [string, Provision][]).reduce( + (acc: { [key: number]: Provision }, [key, value]: [string, Provision]) => { if (value !== undefined) { acc[globalThis.Number(key)] = Provision.fromPartial(value); } @@ -111,13 +114,13 @@ export const ProvisionDefinitions: MessageFns = { }, }; -export function createBaseProvisionDefinitions_ProvisionsEntry(): ProvisionDefinitions_ProvisionsEntry { - return { key: 0, value: createBaseProvision() }; +function createBaseProvisionDefinitions_ProvisionsEntry(): ProvisionDefinitions_ProvisionsEntry { + return { key: 0, value: undefined }; } export const ProvisionDefinitions_ProvisionsEntry: MessageFns = { encode(message: ProvisionDefinitions_ProvisionsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -128,7 +131,7 @@ export const ProvisionDefinitions_ProvisionsEntry: MessageFns = { @@ -205,7 +208,7 @@ export const Provision: MessageFns = { if (message.name !== undefined) { I18nString.encode(message.name, writer.uint32(18).fork()).join(); } - if (message.crew !== undefined && message.crew !== undefined) { + if (message.crew !== undefined && message.crew !== 0) { writer.uint32(29).float(message.crew); } if (message.game_mode_exclusive !== false) { @@ -222,7 +225,7 @@ export const Provision: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Provision { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseProvision(); while (reader.pos < end) { const tag = reader.uint32(); @@ -286,10 +289,14 @@ export const Provision: MessageFns = { fromJSON(object: any): Provision { return { - id: globalThis.Number(assertSet("Provision.id", object.id)), - name: I18nString.fromJSON(assertSet("Provision.name", object.name)), - crew: isSet(object.crew) ? globalThis.Number(object.crew) : undefined, - game_mode_exclusive: globalThis.Boolean(assertSet("Provision.game_mode_exclusive", object.game_mode_exclusive)), + id: isSet(object.id) ? globalThis.Number(object.id) : 0, + name: isSet(object.name) ? I18nString.fromJSON(object.name) : undefined, + crew: isSet(object.crew) ? globalThis.Number(object.crew) : 0, + game_mode_exclusive: isSet(object.gameModeExclusive) + ? globalThis.Boolean(object.gameModeExclusive) + : isSet(object.game_mode_exclusive) + ? globalThis.Boolean(object.game_mode_exclusive) + : false, include: globalThis.Array.isArray(object?.include) ? object.include.map((e: any) => ConsumableTankFilter.fromJSON(e)) : [], @@ -307,11 +314,11 @@ export const Provision: MessageFns = { if (message.name !== undefined) { obj.name = I18nString.toJSON(message.name); } - if (message.crew !== undefined && message.crew !== undefined) { + if (message.crew !== undefined && message.crew !== 0) { obj.crew = message.crew; } if (message.game_mode_exclusive !== false) { - obj.game_mode_exclusive = message.game_mode_exclusive; + obj.gameModeExclusive = message.game_mode_exclusive; } if (message.include?.length) { obj.include = message.include.map((e) => ConsumableTankFilter.toJSON(e)); @@ -330,8 +337,8 @@ export const Provision: MessageFns = { message.id = object.id ?? 0; message.name = (object.name !== undefined && object.name !== null) ? I18nString.fromPartial(object.name) - : createBaseI18nString(); - message.crew = object.crew ?? undefined; + : undefined; + message.crew = object.crew ?? 0; message.game_mode_exclusive = object.game_mode_exclusive ?? false; message.include = object.include?.map((e) => ConsumableTankFilter.fromPartial(e)) || []; message.exclude = object.exclude?.map((e) => ConsumableTankFilter.fromPartial(e)) || []; @@ -360,14 +367,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/rating_leaderboard.proto b/packages/core/src/protos/rating_leaderboard.proto index ee504c090..05a943d4a 100644 --- a/packages/core/src/protos/rating_leaderboard.proto +++ b/packages/core/src/protos/rating_leaderboard.proto @@ -14,7 +14,7 @@ message RatingLeaderboardV1 { } message RatingLeaderboardEntryV1 { - required uint32 id = 1; + required uint32 id = 1; required uint32 score = 2; } @@ -23,11 +23,11 @@ message RatingLeaderboardV2 { } message RatingLeaderboardEntryV2 { - required uint32 id = 1; - required uint32 score = 2; - required uint32 battles = 3; - required uint32 wins = 4; + required uint32 id = 1; + required uint32 score = 2; + required uint32 battles = 3; + required uint32 wins = 4; required uint32 survived = 5; - required uint32 damage = 6; - required uint32 kills = 7; + required uint32 damage = 6; + required uint32 kills = 7; } \ No newline at end of file diff --git a/packages/core/src/protos/rating_leaderboard.ts b/packages/core/src/protos/rating_leaderboard.ts index e04684674..dce0d903e 100644 --- a/packages/core/src/protos/rating_leaderboard.ts +++ b/packages/core/src/protos/rating_leaderboard.ts @@ -1,8 +1,8 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/rating_leaderboard.proto +// source: rating_leaderboard.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; @@ -36,7 +36,7 @@ export interface RatingLeaderboardEntryV2 { kills: number; } -export function createBaseRatingLeaderboard(): RatingLeaderboard { +function createBaseRatingLeaderboard(): RatingLeaderboard { return { version: undefined }; } @@ -55,7 +55,7 @@ export const RatingLeaderboard: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): RatingLeaderboard { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseRatingLeaderboard(); while (reader.pos < end) { const tag = reader.uint32(); @@ -99,8 +99,7 @@ export const RatingLeaderboard: MessageFns = { const obj: any = {}; if (message.version?.$case === "v1") { obj.v1 = RatingLeaderboardV1.toJSON(message.version.value); - } - if (message.version?.$case === "v2") { + } else if (message.version?.$case === "v2") { obj.v2 = RatingLeaderboardV2.toJSON(message.version.value); } return obj; @@ -111,17 +110,25 @@ export const RatingLeaderboard: MessageFns = { }, fromPartial, I>>(object: I): RatingLeaderboard { const message = createBaseRatingLeaderboard(); - if (object.version?.$case === "v1" && object.version?.value !== undefined && object.version?.value !== null) { - message.version = { $case: "v1", value: RatingLeaderboardV1.fromPartial(object.version.value) }; - } - if (object.version?.$case === "v2" && object.version?.value !== undefined && object.version?.value !== null) { - message.version = { $case: "v2", value: RatingLeaderboardV2.fromPartial(object.version.value) }; + switch (object.version?.$case) { + case "v1": { + if (object.version?.value !== undefined && object.version?.value !== null) { + message.version = { $case: "v1", value: RatingLeaderboardV1.fromPartial(object.version.value) }; + } + break; + } + case "v2": { + if (object.version?.value !== undefined && object.version?.value !== null) { + message.version = { $case: "v2", value: RatingLeaderboardV2.fromPartial(object.version.value) }; + } + break; + } } return message; }, }; -export function createBaseRatingLeaderboardV1(): RatingLeaderboardV1 { +function createBaseRatingLeaderboardV1(): RatingLeaderboardV1 { return { entries: [] }; } @@ -135,7 +142,7 @@ export const RatingLeaderboardV1: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): RatingLeaderboardV1 { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseRatingLeaderboardV1(); while (reader.pos < end) { const tag = reader.uint32(); @@ -183,7 +190,7 @@ export const RatingLeaderboardV1: MessageFns = { }, }; -export function createBaseRatingLeaderboardEntryV1(): RatingLeaderboardEntryV1 { +function createBaseRatingLeaderboardEntryV1(): RatingLeaderboardEntryV1 { return { id: 0, score: 0 }; } @@ -200,7 +207,7 @@ export const RatingLeaderboardEntryV1: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): RatingLeaderboardEntryV1 { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseRatingLeaderboardEntryV1(); while (reader.pos < end) { const tag = reader.uint32(); @@ -232,8 +239,8 @@ export const RatingLeaderboardEntryV1: MessageFns = { fromJSON(object: any): RatingLeaderboardEntryV1 { return { - id: globalThis.Number(assertSet("RatingLeaderboardEntryV1.id", object.id)), - score: globalThis.Number(assertSet("RatingLeaderboardEntryV1.score", object.score)), + id: isSet(object.id) ? globalThis.Number(object.id) : 0, + score: isSet(object.score) ? globalThis.Number(object.score) : 0, }; }, @@ -259,7 +266,7 @@ export const RatingLeaderboardEntryV1: MessageFns = { }, }; -export function createBaseRatingLeaderboardV2(): RatingLeaderboardV2 { +function createBaseRatingLeaderboardV2(): RatingLeaderboardV2 { return { entries: [] }; } @@ -273,7 +280,7 @@ export const RatingLeaderboardV2: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): RatingLeaderboardV2 { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseRatingLeaderboardV2(); while (reader.pos < end) { const tag = reader.uint32(); @@ -321,7 +328,7 @@ export const RatingLeaderboardV2: MessageFns = { }, }; -export function createBaseRatingLeaderboardEntryV2(): RatingLeaderboardEntryV2 { +function createBaseRatingLeaderboardEntryV2(): RatingLeaderboardEntryV2 { return { id: 0, score: 0, battles: 0, wins: 0, survived: 0, damage: 0, kills: 0 }; } @@ -353,7 +360,7 @@ export const RatingLeaderboardEntryV2: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): RatingLeaderboardEntryV2 { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseRatingLeaderboardEntryV2(); while (reader.pos < end) { const tag = reader.uint32(); @@ -425,13 +432,13 @@ export const RatingLeaderboardEntryV2: MessageFns = { fromJSON(object: any): RatingLeaderboardEntryV2 { return { - id: globalThis.Number(assertSet("RatingLeaderboardEntryV2.id", object.id)), - score: globalThis.Number(assertSet("RatingLeaderboardEntryV2.score", object.score)), - battles: globalThis.Number(assertSet("RatingLeaderboardEntryV2.battles", object.battles)), - wins: globalThis.Number(assertSet("RatingLeaderboardEntryV2.wins", object.wins)), - survived: globalThis.Number(assertSet("RatingLeaderboardEntryV2.survived", object.survived)), - damage: globalThis.Number(assertSet("RatingLeaderboardEntryV2.damage", object.damage)), - kills: globalThis.Number(assertSet("RatingLeaderboardEntryV2.kills", object.kills)), + id: isSet(object.id) ? globalThis.Number(object.id) : 0, + score: isSet(object.score) ? globalThis.Number(object.score) : 0, + battles: isSet(object.battles) ? globalThis.Number(object.battles) : 0, + wins: isSet(object.wins) ? globalThis.Number(object.wins) : 0, + survived: isSet(object.survived) ? globalThis.Number(object.survived) : 0, + damage: isSet(object.damage) ? globalThis.Number(object.damage) : 0, + kills: isSet(object.kills) ? globalThis.Number(object.kills) : 0, }; }, @@ -494,14 +501,6 @@ function isSet(value: any): boolean { return value !== null && value !== undefined; } -function assertSet(field: string, value: T | undefined): T { - if (!isSet(value)) { - throw new TypeError(`Required field ${field} is not set`); - } - - return value as T; -} - export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; diff --git a/packages/core/src/protos/reviews.proto b/packages/core/src/protos/reviews.proto index 2ad85ed16..d6577b6cb 100644 --- a/packages/core/src/protos/reviews.proto +++ b/packages/core/src/protos/reviews.proto @@ -8,10 +8,10 @@ message Reviews { message Review { required float last_updated = 1; - repeated Video videos = 2; + repeated Video videos = 2; } message Video { - required string id = 1; + required string id = 1; required string author = 2; } \ No newline at end of file diff --git a/packages/core/src/protos/reviews.ts b/packages/core/src/protos/reviews.ts index d8eba8bdb..57a9a7bc3 100644 --- a/packages/core/src/protos/reviews.ts +++ b/packages/core/src/protos/reviews.ts @@ -1,8 +1,8 @@ // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: -// protoc-gen-ts_proto v2.2.2 +// protoc-gen-ts_proto v2.11.2 // protoc v5.28.2 -// source: packages/core/src/protos/reviews.proto +// source: reviews.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; @@ -28,13 +28,13 @@ export interface Video { author: string; } -export function createBaseReviews(): Reviews { +function createBaseReviews(): Reviews { return { reviews: {} }; } export const Reviews: MessageFns = { encode(message: Reviews, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - Object.entries(message.reviews).forEach(([key, value]) => { + globalThis.Object.entries(message.reviews).forEach(([key, value]: [string, Review]) => { Reviews_ReviewsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join(); }); return writer; @@ -42,7 +42,7 @@ export const Reviews: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Reviews { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseReviews(); while (reader.pos < end) { const tag = reader.uint32(); @@ -70,10 +70,13 @@ export const Reviews: MessageFns = { fromJSON(object: any): Reviews { return { reviews: isObject(object.reviews) - ? Object.entries(object.reviews).reduce<{ [key: number]: Review }>((acc, [key, value]) => { - acc[globalThis.Number(key)] = Review.fromJSON(value); - return acc; - }, {}) + ? (globalThis.Object.entries(object.reviews) as [string, any][]).reduce( + (acc: { [key: number]: Review }, [key, value]: [string, any]) => { + acc[globalThis.Number(key)] = Review.fromJSON(value); + return acc; + }, + {}, + ) : {}, }; }, @@ -81,7 +84,7 @@ export const Reviews: MessageFns = { toJSON(message: Reviews): unknown { const obj: any = {}; if (message.reviews) { - const entries = Object.entries(message.reviews); + const entries = globalThis.Object.entries(message.reviews) as [string, Review][]; if (entries.length > 0) { obj.reviews = {}; entries.forEach(([k, v]) => { @@ -97,23 +100,26 @@ export const Reviews: MessageFns = { }, fromPartial, I>>(object: I): Reviews { const message = createBaseReviews(); - message.reviews = Object.entries(object.reviews ?? {}).reduce<{ [key: number]: Review }>((acc, [key, value]) => { - if (value !== undefined) { - acc[globalThis.Number(key)] = Review.fromPartial(value); - } - return acc; - }, {}); + message.reviews = (globalThis.Object.entries(object.reviews ?? {}) as [string, Review][]).reduce( + (acc: { [key: number]: Review }, [key, value]: [string, Review]) => { + if (value !== undefined) { + acc[globalThis.Number(key)] = Review.fromPartial(value); + } + return acc; + }, + {}, + ); return message; }, }; -export function createBaseReviews_ReviewsEntry(): Reviews_ReviewsEntry { - return { key: 0, value: createBaseReview() }; +function createBaseReviews_ReviewsEntry(): Reviews_ReviewsEntry { + return { key: 0, value: undefined }; } export const Reviews_ReviewsEntry: MessageFns = { encode(message: Reviews_ReviewsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.key !== undefined) { + if (message.key !== 0) { writer.uint32(8).uint32(message.key); } if (message.value !== undefined) { @@ -124,7 +130,7 @@ export const Reviews_ReviewsEntry: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Reviews_ReviewsEntry { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseReviews_ReviewsEntry(); while (reader.pos < end) { const tag = reader.uint32(); @@ -156,14 +162,14 @@ export const Reviews_ReviewsEntry: MessageFns = { fromJSON(object: any): Reviews_ReviewsEntry { return { - key: globalThis.Number(assertSet("Reviews_ReviewsEntry.key", object.key)), - value: Review.fromJSON(assertSet("Reviews_ReviewsEntry.value", object.value)), + key: isSet(object.key) ? globalThis.Number(object.key) : 0, + value: isSet(object.value) ? Review.fromJSON(object.value) : undefined, }; }, toJSON(message: Reviews_ReviewsEntry): unknown { const obj: any = {}; - if (message.key !== undefined) { + if (message.key !== 0) { obj.key = Math.round(message.key); } if (message.value !== undefined) { @@ -180,12 +186,12 @@ export const Reviews_ReviewsEntry: MessageFns = { message.key = object.key ?? 0; message.value = (object.value !== undefined && object.value !== null) ? Review.fromPartial(object.value) - : createBaseReview(); + : undefined; return message; }, }; -export function createBaseReview(): Review { +function createBaseReview(): Review { return { last_updated: 0, videos: [] }; } @@ -202,7 +208,7 @@ export const Review: MessageFns = { decode(input: BinaryReader | Uint8Array, length?: number): Review { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === undefined ? reader.len : reader.pos + length; + const end = length === undefined ? reader.len : reader.pos + length; const message = createBaseReview(); while (reader.pos < end) { const tag = reader.uint32(); @@ -234,7 +240,11 @@ export const Review: MessageFns = { fromJSON(object: any): Review { return { - last_updated: globalThis.Number(assertSet("Review.last_updated", object.last_updated)), + last_updated: isSet(object.lastUpdated) + ? globalThis.Number(object.lastUpdated) + : isSet(object.last_updated) + ? globalThis.Number(object.last_updated) + : 0, videos: globalThis.Array.isArray(object?.videos) ? object.videos.map((e: any) => Video.fromJSON(e)) : [], }; }, @@ -242,7 +252,7 @@ export const Review: MessageFns = { toJSON(message: Review): unknown { const obj: any = {}; if (message.last_updated !== 0) { - obj.last_updated = message.last_updated; + obj.lastUpdated = message.last_updated; } if (message.videos?.length) { obj.videos = message.videos.map((e) => Video.toJSON(e)); @@ -261,7 +271,7 @@ export const Review: MessageFns = { }, }; -export function createBaseVideo(): Video { +function createBaseVideo(): Video { return { id: "", author: "" }; } @@ -278,7 +288,7 @@ export const Video: MessageFns