refactor(onboarding): reuse allowFrom merge helper in extensions

This commit is contained in:
Peter Steinberger
2026-02-16 23:03:23 +00:00
parent 12a947223b
commit 7632e60d70
7 changed files with 18 additions and 10 deletions

View File

@@ -9,6 +9,7 @@ import {
DEFAULT_ACCOUNT_ID,
addWildcardAllowFrom,
formatDocsLink,
mergeAllowFromEntries,
normalizeAccountId,
promptAccountId,
} from "openclaw/plugin-sdk";
@@ -127,7 +128,7 @@ async function promptBlueBubblesAllowFrom(params: {
},
});
const parts = parseBlueBubblesAllowFromInput(String(entry));
const unique = [...new Set(parts)];
const unique = mergeAllowFromEntries(undefined, parts);
return setBlueBubblesAllowFrom(params.cfg, accountId, unique);
}

View File

@@ -2,6 +2,7 @@ import type { OpenClawConfig, DmPolicy } from "openclaw/plugin-sdk";
import {
addWildcardAllowFrom,
formatDocsLink,
mergeAllowFromEntries,
promptAccountId,
type ChannelOnboardingAdapter,
type ChannelOnboardingDmPolicy,
@@ -61,7 +62,7 @@ async function promptAllowFrom(params: {
validate: (value) => (String(value ?? "").trim() ? undefined : "Required"),
});
const parts = parseAllowFromInput(String(entry));
const unique = [...new Set(parts)];
const unique = mergeAllowFromEntries(undefined, parts);
return {
...params.cfg,
channels: {

View File

@@ -10,6 +10,7 @@ import {
addWildcardAllowFrom,
DEFAULT_ACCOUNT_ID,
formatDocsLink,
mergeAllowFromEntries,
promptChannelAccessConfig,
} from "openclaw/plugin-sdk";
import {
@@ -133,9 +134,7 @@ async function promptMSTeamsAllowFrom(params: {
);
continue;
}
const unique = [
...new Set([...existing.map((v) => String(v).trim()).filter(Boolean), ...ids]),
];
const unique = mergeAllowFromEntries(existing, ids);
return setMSTeamsAllowFrom(params.cfg, unique);
}
@@ -149,7 +148,7 @@ async function promptMSTeamsAllowFrom(params: {
}
const ids = resolved.map((item) => item.id as string);
const unique = [...new Set([...existing.map((v) => String(v).trim()).filter(Boolean), ...ids])];
const unique = mergeAllowFromEntries(existing, ids);
return setMSTeamsAllowFrom(params.cfg, unique);
}
}

View File

@@ -1,6 +1,7 @@
import {
addWildcardAllowFrom,
formatDocsLink,
mergeAllowFromEntries,
promptAccountId,
DEFAULT_ACCOUNT_ID,
normalizeAccountId,
@@ -99,7 +100,7 @@ async function promptNextcloudTalkAllowFrom(params: {
...existingAllowFrom.map((item) => String(item).trim().toLowerCase()).filter(Boolean),
...resolvedIds,
];
const unique = [...new Set(merged)];
const unique = mergeAllowFromEntries(undefined, merged);
if (accountId === DEFAULT_ACCOUNT_ID) {
return {

View File

@@ -7,6 +7,7 @@ import type {
import {
addWildcardAllowFrom,
DEFAULT_ACCOUNT_ID,
mergeAllowFromEntries,
normalizeAccountId,
promptAccountId,
} from "openclaw/plugin-sdk";
@@ -151,7 +152,7 @@ async function promptZaloAllowFrom(params: {
...existingAllowFrom.map((item) => String(item).trim()).filter(Boolean),
normalized,
];
const unique = [...new Set(merged)];
const unique = mergeAllowFromEntries(undefined, merged);
if (accountId === DEFAULT_ACCOUNT_ID) {
return {

View File

@@ -7,6 +7,7 @@ import type {
import {
addWildcardAllowFrom,
DEFAULT_ACCOUNT_ID,
mergeAllowFromEntries,
normalizeAccountId,
promptAccountId,
promptChannelAccessConfig,
@@ -125,7 +126,7 @@ async function promptZalouserAllowFrom(params: {
...existingAllowFrom.map((item) => String(item).trim()).filter(Boolean),
...(results.filter(Boolean) as string[]),
];
const unique = [...new Set(merged)];
const unique = mergeAllowFromEntries(undefined, merged);
if (accountId === DEFAULT_ACCOUNT_ID) {
return {
...cfg,

View File

@@ -277,7 +277,11 @@ export type {
ChannelOnboardingAdapter,
ChannelOnboardingDmPolicy,
} from "../channels/plugins/onboarding-types.js";
export { addWildcardAllowFrom, promptAccountId } from "../channels/plugins/onboarding/helpers.js";
export {
addWildcardAllowFrom,
mergeAllowFromEntries,
promptAccountId,
} from "../channels/plugins/onboarding/helpers.js";
export { promptChannelAccessConfig } from "../channels/plugins/onboarding/channel-access.js";
export {