ai-chatbot/lib/agents/psd-text-color-config.ts
Your Name 01748fe501
Some checks failed
Lint / build (20) (push) Has been cancelled
Playwright Tests / test (push) Has been cancelled
fix: harden psd text workflow compatibility
2026-04-02 00:08:53 +08:00

36 lines
1017 B
TypeScript

import type { AgentPsdTextColorConfig } from "@/types/agent";
import { normalizeHexColor } from "@/lib/agents/psd-text-layout";
export const AGENT_PSD_TEXT_COLOR_CONFIG_KEY = "agent_psd_text_color_config";
export const defaultAgentPsdTextColorConfig: AgentPsdTextColorConfig = {
enabled: false,
colors: ["#ffffff", "#111111"],
};
export function normalizeAgentPsdTextColorConfig(
value: unknown
): AgentPsdTextColorConfig {
const raw =
value && typeof value === "object" && !Array.isArray(value)
? (value as Record<string, unknown>)
: {};
const colors = Array.isArray(raw.colors)
? raw.colors
.map((item) => normalizeHexColor(String(item || ""), ""))
.filter(Boolean)
.slice(0, 2)
: [];
const [firstColor, secondColor] = [
colors[0] || defaultAgentPsdTextColorConfig.colors[0],
colors[1] || colors[0] || defaultAgentPsdTextColorConfig.colors[1],
];
return {
enabled: raw.enabled === true,
colors: [firstColor, secondColor],
};
}