Files
openclaw/src/plugins/web-search-providers.shared.ts
2026-04-06 15:26:32 +01:00

41 lines
1.3 KiB
TypeScript

import { type NormalizedPluginsConfig } from "./config-state.js";
import type { PluginLoadOptions } from "./loader.js";
import type { PluginWebSearchProviderEntry } from "./types.js";
import {
resolveBundledWebProviderResolutionConfig,
sortPluginProviders,
sortPluginProvidersForAutoDetect,
} from "./web-provider-resolution-shared.js";
export function sortWebSearchProviders(
providers: PluginWebSearchProviderEntry[],
): PluginWebSearchProviderEntry[] {
return sortPluginProviders(providers);
}
export function sortWebSearchProvidersForAutoDetect(
providers: PluginWebSearchProviderEntry[],
): PluginWebSearchProviderEntry[] {
return sortPluginProvidersForAutoDetect(providers);
}
export function resolveBundledWebSearchResolutionConfig(params: {
config?: PluginLoadOptions["config"];
workspaceDir?: string;
env?: PluginLoadOptions["env"];
bundledAllowlistCompat?: boolean;
}): {
config: PluginLoadOptions["config"];
normalized: NormalizedPluginsConfig;
activationSourceConfig?: PluginLoadOptions["config"];
autoEnabledReasons: Record<string, string[]>;
} {
return resolveBundledWebProviderResolutionConfig({
contract: "webSearchProviders",
config: params.config,
workspaceDir: params.workspaceDir,
env: params.env,
bundledAllowlistCompat: params.bundledAllowlistCompat,
});
}