18 lines
624 B
TypeScript
18 lines
624 B
TypeScript
import { Type } from "@sinclair/typebox";
|
|
import { SESSION_LABEL_MAX_LENGTH } from "../../../sessions/session-label.js";
|
|
import { GATEWAY_CLIENT_IDS, GATEWAY_CLIENT_MODES } from "../client-info.js";
|
|
|
|
export const NonEmptyString = Type.String({ minLength: 1 });
|
|
export const SessionLabelString = Type.String({
|
|
minLength: 1,
|
|
maxLength: SESSION_LABEL_MAX_LENGTH,
|
|
});
|
|
|
|
export const GatewayClientIdSchema = Type.Union(
|
|
Object.values(GATEWAY_CLIENT_IDS).map((value) => Type.Literal(value)),
|
|
);
|
|
|
|
export const GatewayClientModeSchema = Type.Union(
|
|
Object.values(GATEWAY_CLIENT_MODES).map((value) => Type.Literal(value)),
|
|
);
|