Move all Signal channel implementation files from src/signal/ to extensions/signal/src/ and replace originals with re-export shims. This continues the channel plugin migration pattern used by other extensions, keeping backward compatibility via shims while the real code lives in the extension. - Copy 32 .ts files (source + tests) to extensions/signal/src/ - Transform all relative import paths for the new location - Create 2-line re-export shims in src/signal/ for each moved file - Preserve existing extension files (channel.ts, runtime.ts, etc.) - Change tsconfig.plugin-sdk.dts.json rootDir from "src" to "." to support cross-boundary re-exports from extensions/
25 lines
852 B
TypeScript
25 lines
852 B
TypeScript
import { loadConfig } from "../../../src/config/config.js";
|
|
import { resolveSignalAccount } from "./accounts.js";
|
|
|
|
export function resolveSignalRpcContext(
|
|
opts: { baseUrl?: string; account?: string; accountId?: string },
|
|
accountInfo?: ReturnType<typeof resolveSignalAccount>,
|
|
) {
|
|
const hasBaseUrl = Boolean(opts.baseUrl?.trim());
|
|
const hasAccount = Boolean(opts.account?.trim());
|
|
const resolvedAccount =
|
|
accountInfo ||
|
|
(!hasBaseUrl || !hasAccount
|
|
? resolveSignalAccount({
|
|
cfg: loadConfig(),
|
|
accountId: opts.accountId,
|
|
})
|
|
: undefined);
|
|
const baseUrl = opts.baseUrl?.trim() || resolvedAccount?.baseUrl;
|
|
if (!baseUrl) {
|
|
throw new Error("Signal base URL is required");
|
|
}
|
|
const account = opts.account?.trim() || resolvedAccount?.config.account?.trim();
|
|
return { baseUrl, account };
|
|
}
|