refactor: dedupe extension string record helpers

This commit is contained in:
Peter Steinberger
2026-04-07 00:32:39 +01:00
parent a88f240311
commit f178a9dc41
4 changed files with 11 additions and 21 deletions

View File

@@ -1,3 +1,5 @@
import { asOptionalRecord, normalizeOptionalString } from "openclaw/plugin-sdk/text-runtime";
export function encodeQuery(params: Record<string, string | undefined>): string {
const query = new URLSearchParams();
for (const [key, value] of Object.entries(params)) {
@@ -14,20 +16,13 @@ export function readString(value: unknown): string | undefined {
return typeof value === "string" ? value : undefined;
}
export function normalizeString(value: unknown): string | undefined {
return readString(value)?.trim() || undefined;
}
export const normalizeString = normalizeOptionalString;
export function isRecord(value: unknown): value is Record<string, unknown> {
return typeof value === "object" && value !== null;
}
export function asRecord(value: unknown): Record<string, unknown> | undefined {
if (!value || typeof value !== "object" || Array.isArray(value)) {
return undefined;
}
return value as Record<string, unknown>;
}
export const asRecord = asOptionalRecord;
export function hasNonEmptyString(value: unknown): value is string {
return typeof value === "string" && value.trim().length > 0;