feat : update

This commit is contained in:
2026-09-30 19:34:28 +07:00 Unverified
parent 69a4d34b97
commit da3d7d84ac
30 changed files with 10724 additions and 883 deletions
+1 -6
View File
@@ -30,6 +30,7 @@ const characterRecommendationSchema = z.strictObject({
weaponKey: z.string().min(1).max(64).nullable().default(null),
artifactKey: z.string().min(1).max(64).nullable().default(null),
constellationLevel: z.number().int().min(0).max(6).nullable().default(null),
refinement: z.number().int().min(1).max(5).nullable().default(null),
});
const catalogItemSchema = z.discriminatedUnion("kind", [
@@ -37,16 +38,10 @@ const catalogItemSchema = z.discriminatedUnion("kind", [
z.strictObject({ kind: z.literal("weapon"), catalogKey: z.string().min(1).max(64) }),
z.strictObject({ kind: z.literal("artifact"), catalogKey: z.string().min(1).max(64) }),
z.strictObject({ kind: z.literal("element"), element: z.enum(stygianElements) }),
z.strictObject({
kind: z.literal("constellation"),
characterKey: z.string().min(1).max(64),
constellationLevel: z.number().int().min(1).max(6),
}),
]);
function recommendationKey(item: z.infer<typeof catalogItemSchema>) {
if (item.kind === "element") return `${item.kind}:${item.element}`;
if (item.kind === "constellation") return `${item.kind}:${item.characterKey}:${item.constellationLevel}`;
return `${item.kind}:${item.catalogKey}`;
}