mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-08 07:10:42 +00:00
32 lines
1.4 KiB
TypeScript
32 lines
1.4 KiB
TypeScript
// Manual facade. Keep loader boundary explicit.
|
|
import type { ModelProviderConfig, OpenClawConfig } from "../config/types.js";
|
|
import { loadBundledPluginPublicSurfaceModuleSync } from "./facade-loader.js";
|
|
|
|
type FacadeModule = {
|
|
applyOpenrouterConfig: (cfg: OpenClawConfig) => OpenClawConfig;
|
|
applyOpenrouterProviderConfig: (cfg: OpenClawConfig) => OpenClawConfig;
|
|
buildOpenrouterProvider: () => ModelProviderConfig;
|
|
OPENROUTER_DEFAULT_MODEL_REF: string;
|
|
};
|
|
|
|
function loadFacadeModule(): FacadeModule {
|
|
return loadBundledPluginPublicSurfaceModuleSync<FacadeModule>({
|
|
dirName: "openrouter",
|
|
artifactBasename: "api.js",
|
|
});
|
|
}
|
|
export const applyOpenrouterConfig: FacadeModule["applyOpenrouterConfig"] = ((...args) =>
|
|
loadFacadeModule()["applyOpenrouterConfig"](...args)) as FacadeModule["applyOpenrouterConfig"];
|
|
export const applyOpenrouterProviderConfig: FacadeModule["applyOpenrouterProviderConfig"] = ((
|
|
...args
|
|
) =>
|
|
loadFacadeModule()["applyOpenrouterProviderConfig"](
|
|
...args,
|
|
)) as FacadeModule["applyOpenrouterProviderConfig"];
|
|
export const buildOpenrouterProvider: FacadeModule["buildOpenrouterProvider"] = ((...args) =>
|
|
loadFacadeModule()["buildOpenrouterProvider"](
|
|
...args,
|
|
)) as FacadeModule["buildOpenrouterProvider"];
|
|
export const OPENROUTER_DEFAULT_MODEL_REF: FacadeModule["OPENROUTER_DEFAULT_MODEL_REF"] =
|
|
loadFacadeModule()["OPENROUTER_DEFAULT_MODEL_REF"];
|