init
Some checks failed
Gitea Auto Deploy / Deploy-Container (push) Failing after 52s

This commit is contained in:
2026-04-13 18:05:27 +07:00
commit c77f4a2cb9
207 changed files with 18035 additions and 0 deletions

94
src/zod/srtools.zod.ts Normal file
View File

@@ -0,0 +1,94 @@
// Generated by ts-to-zod
import { z } from "zod";
export const subAffixSchema = z.object({
sub_affix_id: z.number(),
count: z.number(),
step: z.number()
});
export const relicJsonSchema = z.object({
level: z.number(),
relic_id: z.number(),
relic_set_id: z.number(),
main_affix_id: z.number(),
sub_affixes: z.array(subAffixSchema),
internal_uid: z.number(),
equip_avatar: z.number()
});
export const lightconeJsonSchema = z.object({
level: z.number(),
item_id: z.number(),
equip_avatar: z.number(),
rank: z.number(),
promotion: z.number(),
internal_uid: z.number()
});
export const avatarDataSchema = z.object({
rank: z.number(),
skills: z.record(z.string(), z.number()),
skills_by_anchor_type: z.record(z.string(), z.number()).optional()
});
export const avatarJsonSchema = z.object({
owner_uid: z.number().optional(),
avatar_id: z.number(),
data: avatarDataSchema,
level: z.number(),
promotion: z.number(),
techniques: z.array(z.number()),
sp_value: z.number(),
sp_max: z.number()
});
export const monsterJsonSchema = z.object({
monster_id: z.number(),
level: z.number(),
amount: z.number()
});
export const dynamicKeyJsonSchema = z.object({
key: z.string(),
value: z.number()
});
export const battleBuffJsonSchema = z.object({
level: z.number(),
id: z.number(),
dynamic_key: dynamicKeyJsonSchema.optional()
});
export const battleConfigJsonSchema = z.object({
battle_type: z.string(),
blessings: z.array(battleBuffJsonSchema),
custom_stats: z.array(subAffixSchema),
cycle_count: z.number(),
stage_id: z.number(),
path_resonance_id: z.number(),
monsters: z.array(z.array(monsterJsonSchema))
});
const loadoutJsonSchema = z.object({
name: z.string(),
avatar_id: z.number(),
relic_list: z.array(z.string())
});
export const freeSrJsonSchema = z.object({
key: z.string().optional(),
lightcones: z.array(lightconeJsonSchema),
relics: z.array(relicJsonSchema),
avatars: z.record(z.string(), avatarJsonSchema),
battle_config: battleConfigJsonSchema,
loadout: z.array(loadoutJsonSchema).optional()
});
const extraDataSchema = z.any();
export const psResponseSchema = z.object({
status: z.number(),
message: z.string(),
extra_data: extraDataSchema.optional()
});