/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 4be6363d9a67 */ import * as z from "zod/v4"; import { safeParse } from "../lib/schemas.js"; import { Result as SafeParseResult } from "../types/fp.js"; import { DeploymentPortalAccentColor, DeploymentPortalAccentColor$inboundSchema, } from "./deploymentportalaccentcolor.js"; import { DeploymentPortalAppearancePreset, DeploymentPortalAppearancePreset$inboundSchema, } from "./deploymentportalappearancepreset.js"; import { DeploymentPortalDensity, DeploymentPortalDensity$inboundSchema, } from "./deploymentportaldensity.js"; import { SDKValidationError } from "./errors/sdkvalidationerror.js"; export type DeploymentPortalAppearance = { /** * Optional project-specific avatar override for the deployment portal. */ avatarUrl?: string | null | undefined; /** * Curated visual style for the deployment portal. */ preset: DeploymentPortalAppearancePreset; /** * Accent color used for highlights and primary actions. */ accentColor: DeploymentPortalAccentColor; /** * Optional portal title. Defaults to the project name. */ title?: string | null | undefined; /** * Optional customer-facing subtitle. */ subtitle?: string | null | undefined; /** * Optional support or contact URL. */ supportUrl?: string | null | undefined; /** * Optional documentation URL. */ docsUrl?: string | null | undefined; /** * Layout density for portal content. */ density: DeploymentPortalDensity; }; /** @internal */ export const DeploymentPortalAppearance$inboundSchema: z.ZodType< DeploymentPortalAppearance, unknown > = z.object({ avatarUrl: z.nullable(z.string()).optional(), preset: DeploymentPortalAppearancePreset$inboundSchema.default("clean"), accentColor: DeploymentPortalAccentColor$inboundSchema.default("blue"), title: z.nullable(z.string()).optional(), subtitle: z.nullable(z.string()).optional(), supportUrl: z.nullable(z.string()).optional(), docsUrl: z.nullable(z.string()).optional(), density: DeploymentPortalDensity$inboundSchema.default("comfortable"), }); export function deploymentPortalAppearanceFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => DeploymentPortalAppearance$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'DeploymentPortalAppearance' from JSON`, ); }