mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-11 23:06:18 +00:00
35 lines
1.4 KiB
TypeScript
35 lines
1.4 KiB
TypeScript
/**
|
|
* Canvas capability-token helpers for scoped hosted node URLs.
|
|
*/
|
|
import {
|
|
buildPluginNodeCapabilityScopedHostUrl,
|
|
DEFAULT_PLUGIN_NODE_CAPABILITY_TTL_MS,
|
|
mintPluginNodeCapabilityToken,
|
|
normalizePluginNodeCapabilityScopedUrl,
|
|
PLUGIN_NODE_CAPABILITY_PATH_PREFIX,
|
|
type NormalizedPluginNodeCapabilityUrl,
|
|
} from "openclaw/plugin-sdk/gateway-runtime";
|
|
|
|
/** Path prefix used for Canvas capability-scoped gateway routes. */
|
|
export const CANVAS_CAPABILITY_PATH_PREFIX = PLUGIN_NODE_CAPABILITY_PATH_PREFIX;
|
|
/** Default Canvas capability token TTL in milliseconds. */
|
|
export const CANVAS_CAPABILITY_TTL_MS = DEFAULT_PLUGIN_NODE_CAPABILITY_TTL_MS;
|
|
|
|
/** Normalized Canvas capability-scoped URL shape. */
|
|
export type NormalizedCanvasScopedUrl = NormalizedPluginNodeCapabilityUrl;
|
|
|
|
/** Creates a new opaque Canvas capability token. */
|
|
export function mintCanvasCapabilityToken(): string {
|
|
return mintPluginNodeCapabilityToken();
|
|
}
|
|
|
|
/** Builds a Canvas host URL scoped by the supplied capability token. */
|
|
export function buildCanvasScopedHostUrl(baseUrl: string, capability: string): string | undefined {
|
|
return buildPluginNodeCapabilityScopedHostUrl(baseUrl, capability);
|
|
}
|
|
|
|
/** Normalizes and validates a Canvas capability-scoped URL. */
|
|
export function normalizeCanvasScopedUrl(rawUrl: string): NormalizedCanvasScopedUrl {
|
|
return normalizePluginNodeCapabilityScopedUrl(rawUrl);
|
|
}
|