mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-21 10:47:04 +02:00
Merge branch 'main' into data-driven
This commit is contained in:
commit
6ebb2810ad
37 files changed
+1404
-350
No files matched your search
@@ -352,6 +352,15 @@ export abstract class ServerBlitzKitAPI1 extends ServerBlitzKitAPI0 {
|
||||
const tankClass =
|
||||
this.blitzTankClassToBlitzkit[blitzTankClass as BlitzTankClass];
|
||||
|
||||
const canonicalFullName = this.getString(tank.userString);
|
||||
const name =
|
||||
(tank.shortUserString
|
||||
? this.getString(tank.shortUserString)
|
||||
: undefined) ?? canonicalFullName;
|
||||
// only supply full name if it's different from the displayed short name to save some bytes
|
||||
const name_full =
|
||||
name === canonicalFullName ? undefined : canonicalFullName;
|
||||
|
||||
tankDefinitions.tanks[tankId] = {
|
||||
ancestors: [],
|
||||
successors: [],
|
||||
@@ -369,10 +378,8 @@ export abstract class ServerBlitzKitAPI1 extends ServerBlitzKitAPI0 {
|
||||
typeof equipment === "string" ? equipment : equipment.at(-1)!,
|
||||
max_consumables: tankDefinition.root.consumableSlots,
|
||||
max_provisions: tankDefinition.root.provisionSlots,
|
||||
name:
|
||||
(tank.shortUserString
|
||||
? this.getString(tank.shortUserString)
|
||||
: undefined) ?? this.getString(tank.userString),
|
||||
name,
|
||||
name_full,
|
||||
slug,
|
||||
nation,
|
||||
type: tankTags.includes("collectible")
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import { BlitzKitAPI } from "@blitzkit/core/src/blitzkit/api/base";
|
||||
import locales from "@blitzkit/i18n/locales.json";
|
||||
import { I18nString } from "@blitzkit/protos";
|
||||
import { deburr, times } from "lodash-es";
|
||||
import { AbstractBlitzKitAPI } from "./api";
|
||||
|
||||
export async function fetchTankNames(api: BlitzKitAPI) {
|
||||
export async function fetchTankNames(api: AbstractBlitzKitAPI) {
|
||||
const [tankDefinitions, camouflageDefinitions] = await Promise.all([
|
||||
api.tanks(),
|
||||
api.camouflages(),
|
||||
@@ -30,6 +30,15 @@ export async function fetchTankNames(api: BlitzKitAPI) {
|
||||
});
|
||||
});
|
||||
|
||||
const searchableNameFull: I18nString = {
|
||||
locales: { ...(tank.name_full?.locales ?? tank.name!.locales) },
|
||||
};
|
||||
const searchableNameFullDeburr: I18nString = { locales: {} };
|
||||
|
||||
Object.entries(searchableNameFull.locales).forEach(([key, value]) => {
|
||||
searchableNameFullDeburr.locales[key] = deburr(value);
|
||||
});
|
||||
|
||||
return {
|
||||
id: tank.id,
|
||||
slug: tank.slug,
|
||||
|
||||
Reference in new issue
Block a user