{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/hybriqx-com/json-schema/hybriqx-com-poster-style-input-schema.json",
  "title": "PosterStyleInput",
  "description": "How the gym's workout posters look. Every field has a default, so an empty style is the standard poster.",
  "x-generated": "2026-11-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/hybriqx-com-openapi.json#/components/schemas/PosterStyleInput",
  "properties": {
    "title_size": {
      "type": "string",
      "enum": [
        "small",
        "medium",
        "large",
        "xl"
      ],
      "title": "Title Size",
      "default": "medium"
    },
    "workout_size": {
      "type": "string",
      "enum": [
        "small",
        "medium",
        "large",
        "xl"
      ],
      "title": "Workout Size",
      "default": "medium"
    },
    "align": {
      "type": "string",
      "enum": [
        "left",
        "center",
        "right"
      ],
      "title": "Align",
      "default": "left"
    },
    "logo": {
      "type": "string",
      "enum": [
        "top-left",
        "top-center",
        "top-right",
        "bottom-left",
        "off"
      ],
      "title": "Logo",
      "default": "top-left"
    },
    "brightness": {
      "type": "integer",
      "maximum": 70.0,
      "minimum": 10.0,
      "title": "Brightness",
      "default": 34
    },
    "accent": {
      "type": "string",
      "pattern": "^#[0-9a-fA-F]{6}$",
      "title": "Accent",
      "default": "#ff7a1a"
    },
    "show_date": {
      "type": "boolean",
      "title": "Show Date",
      "default": true
    },
    "show_note": {
      "type": "boolean",
      "title": "Show Note",
      "default": true
    },
    "handle": {
      "type": "string",
      "maxLength": 40,
      "title": "Handle",
      "default": ""
    }
  },
  "additionalProperties": false,
  "type": "object"
}