From e9befcff9e2570ac0ab4aa1b73e3d42a4f07f460 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 6 Apr 2026 23:08:08 +0100 Subject: [PATCH] refactor: dedupe elevenlabs talk record helper --- extensions/elevenlabs/config-compat.ts | 2 +- extensions/elevenlabs/doctor-contract.ts | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/extensions/elevenlabs/config-compat.ts b/extensions/elevenlabs/config-compat.ts index 6e69642f24f..b29801a407c 100644 --- a/extensions/elevenlabs/config-compat.ts +++ b/extensions/elevenlabs/config-compat.ts @@ -22,7 +22,7 @@ type ElevenLabsApiKeyDeps = { export const ELEVENLABS_TALK_PROVIDER_ID = "elevenlabs"; -function isRecord(value: unknown): value is JsonRecord { +export function isRecord(value: unknown): value is JsonRecord { return typeof value === "object" && value !== null && !Array.isArray(value); } diff --git a/extensions/elevenlabs/doctor-contract.ts b/extensions/elevenlabs/doctor-contract.ts index 2676ee84a1d..5fd533c549d 100644 --- a/extensions/elevenlabs/doctor-contract.ts +++ b/extensions/elevenlabs/doctor-contract.ts @@ -1,10 +1,10 @@ import type { ChannelDoctorLegacyConfigRule } from "openclaw/plugin-sdk/channel-contract"; import type { OpenClawConfig } from "openclaw/plugin-sdk/config-runtime"; -import { ELEVENLABS_TALK_PROVIDER_ID, migrateElevenLabsLegacyTalkConfig } from "./config-compat.js"; - -function isRecord(value: unknown): value is Record { - return Boolean(value) && typeof value === "object" && !Array.isArray(value); -} +import { + ELEVENLABS_TALK_PROVIDER_ID, + isRecord, + migrateElevenLabsLegacyTalkConfig, +} from "./config-compat.js"; export function hasLegacyTalkFields(value: unknown): boolean { const talk = isRecord(value) ? value : null;