Files
openclaw-zero-token/commands/channel-setup/registry.ts
sjhu 571e14a236 feat: upgrade to upstream v2026.3.28
Major upgrade from e26988a38 to upstream v2026.3.28 (f9b107928).
Key changes:
- Upstream src/, ui/, extensions/ (89 bundled extensions)
- Zero-token web providers preserved in src/zero-token/
- AskOnce plugin restored and registered as CLI command
- Added missing packages: @anthropic-ai/vertex-sdk, @modelcontextprotocol/sdk
- Fixed tsconfig rootDir, skipLibCheck for plugin-sdk DTS build
- Added askonce to bundled plugin metadata and package.json exports
- Fixed AskOnce CLI command registration (missing commands metadata)
- Restored AskOnce adapter imports (correct 5-level relative paths)
- Removed stale migration artifacts from root directory
2026-03-30 17:58:12 +08:00

48 lines
1.6 KiB
TypeScript

import { listChannelSetupPlugins } from "../../channels/plugins/setup-registry.js";
import { buildChannelSetupWizardAdapterFromSetupWizard } from "../../channels/plugins/setup-wizard.js";
import type { ChannelPlugin } from "../../channels/plugins/types.js";
import type { ChannelChoice } from "../onboard-types.js";
import type { ChannelSetupWizardAdapter } from "./types.js";
const setupWizardAdapters = new WeakMap<object, ChannelSetupWizardAdapter>();
export function resolveChannelSetupWizardAdapterForPlugin(
plugin?: ChannelPlugin,
): ChannelSetupWizardAdapter | undefined {
if (plugin?.setupWizard) {
const cached = setupWizardAdapters.get(plugin);
if (cached) {
return cached;
}
const adapter = buildChannelSetupWizardAdapterFromSetupWizard({
plugin,
wizard: plugin.setupWizard,
});
setupWizardAdapters.set(plugin, adapter);
return adapter;
}
return undefined;
}
const getChannelSetupWizardAdapterMap = () => {
const adapters = new Map<ChannelChoice, ChannelSetupWizardAdapter>();
for (const plugin of listChannelSetupPlugins()) {
const adapter = resolveChannelSetupWizardAdapterForPlugin(plugin);
if (!adapter) {
continue;
}
adapters.set(plugin.id, adapter);
}
return adapters;
};
export function getChannelSetupWizardAdapter(
channel: ChannelChoice,
): ChannelSetupWizardAdapter | undefined {
return getChannelSetupWizardAdapterMap().get(channel);
}
export function listChannelSetupWizardAdapters(): ChannelSetupWizardAdapter[] {
return Array.from(getChannelSetupWizardAdapterMap().values());
}