diff --git a/extensions/mattermost/src/channel-api.ts b/extensions/mattermost/src/channel-api.ts new file mode 100644 index 00000000000..e63716cd829 --- /dev/null +++ b/extensions/mattermost/src/channel-api.ts @@ -0,0 +1,8 @@ +export { createAccountStatusSink } from "openclaw/plugin-sdk/channel-lifecycle"; +export type { ChannelPlugin } from "openclaw/plugin-sdk/core"; +export { DEFAULT_ACCOUNT_ID } from "openclaw/plugin-sdk/core"; +export { + resolveAllowlistProviderRuntimeGroupPolicy, + resolveDefaultGroupPolicy, +} from "openclaw/plugin-sdk/config-runtime"; +export { chunkTextForOutbound } from "openclaw/plugin-sdk/text-chunking"; diff --git a/extensions/mattermost/src/channel.ts b/extensions/mattermost/src/channel.ts index f8682ecc66c..8b79fc9e4e0 100644 --- a/extensions/mattermost/src/channel.ts +++ b/extensions/mattermost/src/channel.ts @@ -21,6 +21,14 @@ import { createDefaultChannelRuntimeState, } from "openclaw/plugin-sdk/status-helpers"; import { mattermostApprovalAuth } from "./approval-auth.js"; +import { + chunkTextForOutbound, + createAccountStatusSink, + DEFAULT_ACCOUNT_ID, + resolveAllowlistProviderRuntimeGroupPolicy, + resolveDefaultGroupPolicy, + type ChannelPlugin, +} from "./channel-api.js"; import { MattermostChannelConfigSchema } from "./config-surface.js"; import { collectMattermostMutableAllowlistWarnings } from "./doctor.js"; import { resolveMattermostGroupRequireMention } from "./group-mentions.js"; @@ -42,14 +50,6 @@ import { sendMessageMattermost } from "./mattermost/send.js"; import { collectMattermostSlashCallbackPaths } from "./mattermost/slash-commands.js"; import { resolveMattermostOpaqueTarget } from "./mattermost/target-resolution.js"; import { looksLikeMattermostTargetId, normalizeMattermostMessagingTarget } from "./normalize.js"; -import { - chunkTextForOutbound, - createAccountStatusSink, - DEFAULT_ACCOUNT_ID, - resolveAllowlistProviderRuntimeGroupPolicy, - resolveDefaultGroupPolicy, - type ChannelPlugin, -} from "./runtime-api.js"; import { getMattermostRuntime } from "./runtime.js"; import { resolveMattermostOutboundSessionRoute } from "./session-route.js"; import { mattermostSetupAdapter } from "./setup-core.js";