UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

31 lines (30 loc) 1.56 kB
import { c as normalizeOptionalLowercaseString } from "./string-coerce-CIXf7egm.js"; import { t as isBlockedObjectKey } from "./prototype-keys-CuYw53fZ.js"; import { r as normalizeProviderId } from "./provider-id-DMd-TDFp.js"; //#region src/plugins/provider-registry-shared.ts /** Normalizes provider ids used by capability-provider registries. */ function normalizeCapabilityProviderId(providerId) { const normalized = normalizeOptionalLowercaseString(providerId); return normalized && !isBlockedObjectKey(normalized) ? normalized : void 0; } function matchesProviderPluginRef(provider, providerId) { const normalized = normalizeProviderId(providerId); return Boolean(normalized && (normalizeProviderId(provider.id) === normalized || [...provider.aliases ?? [], ...provider.hookAliases ?? []].some((alias) => normalizeProviderId(alias) === normalized))); } /** Preserves ordered alias overrides, including aliases of replaced canonical entries. */ function buildCapabilityProviderIndex(providers, mode) { const index = /* @__PURE__ */ new Map(); for (const provider of providers) { const id = normalizeCapabilityProviderId(provider.id); if (!id) continue; index.set(id, provider); if (mode === "canonical") continue; for (const alias of provider.aliases ?? []) { const normalizedAlias = normalizeCapabilityProviderId(alias); if (normalizedAlias) index.set(normalizedAlias, provider); } } return index; } //#endregion export { matchesProviderPluginRef as n, normalizeCapabilityProviderId as r, buildCapabilityProviderIndex as t };