Files
nanobot/webui/src/lib/skill-events.ts
T

19 lines
534 B
TypeScript
Raw Normal View History

2026-07-27 21:19:42 +08:00
import type { SkillsPayload } from "@/lib/types";
export const SKILLS_CHANGED_EVENT = "nanobot:skills-changed";
export function isSkillsPayload(value: unknown): value is SkillsPayload {
return (
!!value
&& typeof value === "object"
&& Array.isArray((value as { skills?: unknown }).skills)
);
}
export function notifySkillsChanged(payload: SkillsPayload): void {
if (typeof window === "undefined") return;
window.dispatchEvent(new CustomEvent<SkillsPayload>(SKILLS_CHANGED_EVENT, {
detail: payload,
}));
}