// Representative data for export renderer regression tests. import type { PublicGuide } from "@/lib/guides/queries"; import type { ExportRequest } from "./types"; const character = { key: "raiden", name: "Raiden Shogun", element: "Electro", rarity: 5, weaponType: "Polearm", imageUrl: "/test-art.png", splashImageUrl: "/test-art.png", nameCardImageUrl: null, baseStats: [ { key: "hp", value: 12907 }, { key: "atk", value: 337 }, ], ascension: [ { items: [ { key: "material", name: "Ascension Material", amount: 168, imageUrl: "/test-art.png", }, ], }, ], leveling: [], talents: [ { type: "E", name: "Skill", iconUrl: null }, { type: "Q", name: "Burst", iconUrl: null }, ], }; export const exportGuide = { name: "Raiden", character, coverUrl: "/test-art.png", elementIconUrls: {}, artifactGroups: [ { id: "a", name: "Late Game", rows: [ { id: "r", first: { key: "emblem", name: "Emblem", imageUrl: "/test-art.png", rarity: 5, }, second: null, percent: "100", note: "อันดับภาษาไทย", }, ], }, ], artifactProfile: { note: "โน้ตโปรไฟล์", recommendedConditions: [ { name: "First", note: "โน้ตออฟ", sands: ["ATK%"], goblet: ["Electro DMG%"], circlet: ["CRIT RATE"], substats: ["CRIT RATE", "ER"], }, { name: "Second", note: null, sands: ["ER"], goblet: ["ATK%"], circlet: ["CRIT DAMAGE"], substats: ["ER"], }, ], targetConditions: [ { name: "First", note: "เป้าหมาย", rows: [{ stat: "ER", value: "250%" }], }, { name: "Second", note: null, rows: [{ stat: "ATK", value: "2000" }] }, ], talents: [ { type: "Q", level: 9, relationToNext: "gt" }, { type: "E", level: 9, relationToNext: "gt" }, ], }, } as unknown as PublicGuide; export const exportFixtures: ExportRequest[] = [ { kind: "constellation", width: 1500, height: 1500, format: "png", data: { guide: exportGuide, group: { id: "c", name: "Team", note: "โน้ตภาษาไทย", rows: [ { level: 1, cumulativePercent: "115.5", isGreat: true }, { level: 6, cumulativePercent: "200", isGreat: false }, ], } as unknown as PublicGuide["constellationGroups"][number], }, }, { kind: "weapon", width: 1200, format: "png", data: { guide: exportGuide, metric: "overallPercent", conditionLabel: "Condition 1", group: { id: "w", name: "Weapons", note: "โน้ตอาวุธ", rows: [ { id: "1", weapon: { name: "Engulfing Lightning", imageUrl: "/test-art.png" }, refinement: 1, overallPercent: "115", personalPercent: "120", note: "คำอธิบายภาษาไทย", }, { id: "2", weapon: { name: "The Catch", imageUrl: "/test-art.png" }, refinement: 5, overallPercent: null, personalPercent: "100", note: null, }, ], } as unknown as PublicGuide["weaponGroups"][number], }, }, { kind: "team", width: 1080, format: "png", data: { team: { title: "Raiden National", rotationSeconds: "20", combo: "E → Q\nตัวอย่างคอมโบ", members: [1, 2, 3, 4].map((position) => ({ position, character, weapon: position === 1 ? { name: "Engulfing Lightning", imageUrl: "/test-art.png", rarity: 5, } : null, artifact: position === 1 ? { key: "emblem", name: "Emblem", imageUrl: "/test-art.png", rarity: 5, } : null, secondArtifact: position === 1 ? { key: "noblesse", name: "Noblesse", imageUrl: "/test-art.png", rarity: 5, } : null, constellation: 0, refinement: 1, damage: "100000", })), } as unknown as PublicGuide["teams"][number], }, }, { kind: "materials", width: 1600, height: 2000, format: "png", data: { character: exportGuide.character, characterArtUrl: "/test-art.png", artworkOffsetX: 10, artworkOffsetY: -5, artworkScale: 120, topColors: ["#ffbb00", "#112233"], bottomColors: ["#112233", "#ffbb00"], bleeding: [{ id: "1", imageUrl: null, amount: 20, blendMode: "screen" }], }, }, { kind: "overview", width: 3000, height: 3000, format: "png", data: { character: character as unknown as PublicGuide["character"], artworkUrl: "/test-art.png", role: "Main DPS", topColors: ["#ffbb00", "#112233"], bottomColors: ["#112233", "#ffbb00"], elementColors: ["#aa00ff", "#ff00aa"], elementGradientAngle: 90, blendLayers: [{ id: 1, amount: 20, mode: "screen" }], nameCardCrop: null, nameCardSize: null, elementIconUrls: { Electro: "/test-art.png" }, composition: { backgroundUrl: null, fadeColor: "#0e0200", fadeTint: 20, auraUpOffset: 0, characterOffset: { x: 5, y: 0 }, fadeOffset: { x: 0, y: 0 }, }, disclaimerFontSize: null, }, }, { kind: "artifact", width: 1200, format: "png", data: { guide: exportGuide, sections: ["tierlist", "best-stats", "target-stats", "talents"], recommendedCondition: 0, targetCondition: 0, includeNote: true, }, }, ];