{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/lazydocker/latest.json",
  "title": "ui settings",
  "description": "Settings\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
  "x-lintel": {
    "source": "https://www.schemastore.org/lazydocker.json",
    "sourceSha256": "23ee3c662d6cb47707365f784aa0c57a5827ffae910e5270c8891008848d623a",
    "fileMatch": [
      "**/lazydocker/config.yml"
    ],
    "parsers": [
      "yaml"
    ]
  },
  "type": "object",
  "properties": {
    "gui": {
      "title": "gui",
      "description": "UI settings\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
      "type": "object",
      "properties": {
        "scrollHeight": {
          "title": "scroll height",
          "description": "A scroll height\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "integer",
          "minimum": 1,
          "default": 2
        },
        "language": {
          "title": "language",
          "description": "A language\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "enum": [
            "auto",
            "en",
            "pl",
            "nl",
            "de",
            "tr"
          ],
          "default": "auto"
        },
        "theme": {
          "title": "theme",
          "description": "Theme settings\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "object",
          "properties": {
            "activeBorderColor": {
              "title": "active border color",
              "description": "An active border color\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
              "type": "array",
              "uniqueItems": true,
              "minItems": 1,
              "items": {
                "$ref": "#/$defs/color"
              }
            },
            "inactiveBorderColor": {
              "title": "inactive border color",
              "description": "An inactive border color\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
              "type": "array",
              "uniqueItems": true,
              "minItems": 1,
              "items": {
                "$ref": "#/$defs/color"
              }
            },
            "selectedLineBgColor": {
              "title": "selected line background color",
              "description": "A selected line background color\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
              "type": "array",
              "uniqueItems": true,
              "minItems": 1,
              "items": {
                "$ref": "#/$defs/color"
              }
            },
            "optionsTextColor": {
              "title": "options text color",
              "description": "An option text color\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
              "type": "array",
              "uniqueItems": true,
              "minItems": 1,
              "items": {
                "$ref": "#/$defs/color"
              }
            }
          }
        },
        "returnImmediately": {
          "title": "return immediately",
          "description": "Whether to return immediately\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "boolean",
          "default": false
        },
        "wrapMainPanel": {
          "title": "wrap main panel",
          "description": "Whether to wrap main panel\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "boolean",
          "default": true
        },
        "sidePanelWidth": {
          "title": "side panel width",
          "description": "A side panel ratio of screen's width\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "number",
          "minimum": 0,
          "default": 0.333
        },
        "showBottomLine": {
          "title": "show bottom line",
          "description": "Whether to show bottom line\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "boolean",
          "default": true
        },
        "expandFocusedSidePanel": {
          "title": "expand focused side panel",
          "description": "Whether to expand focused side panel\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "boolean",
          "default": false
        },
        "screenMode": {
          "title": "screen mode",
          "description": "A screen mode\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "enum": [
            "normal",
            "half",
            "fullscreen"
          ],
          "default": "normal"
        },
        "containerStatusHealthStyle": {
          "title": "container status health style",
          "description": "A style of container status and it's health display\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "enum": [
            "long",
            "short",
            "icon"
          ],
          "default": "long"
        }
      }
    },
    "logs": {
      "title": "logs",
      "description": "Log settings\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
      "type": "object",
      "properties": {
        "timestamps": {
          "title": "timestamps",
          "description": "Whether to show timestamps\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "boolean",
          "default": false
        },
        "since": {
          "title": "since",
          "description": "A start time\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "60m"
        },
        "tail": {
          "title": "tail",
          "description": "A last line count\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "integer",
              "minimum": 0,
              "examples": [
                200
              ]
            }
          ],
          "default": ""
        }
      }
    },
    "commandTemplates": {
      "title": "command templates",
      "description": "Command templates\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
      "type": "object",
      "properties": {
        "dockerCompose": {
          "title": "docker compose",
          "description": "A docker compose command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "docker-compose"
        },
        "restartService": {
          "title": "restart service",
          "description": "A restart service command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} restart {{ .Service.Name }}"
        },
        "up": {
          "title": "up",
          "description": "An up command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} up -d"
        },
        "down": {
          "title": "down",
          "description": "A down command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} down"
        },
        "downWithVolumes": {
          "title": "down with volumes",
          "description": "A down with volumes command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} down --volumes"
        },
        "upService": {
          "title": "up service",
          "description": "An up service command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} up -d {{ .Service.Name }}"
        },
        "startService": {
          "title": "start service",
          "description": "A start service command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} start {{ .Service.Name }}"
        },
        "stopService": {
          "title": "stop service",
          "description": "A stop service command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} stop {{ .Service.Name }}"
        },
        "serviceLogs": {
          "title": "service logs",
          "description": "A service logs command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} logs --since=60m --follow {{ .Service.Name }}"
        },
        "viewServiceLogs": {
          "title": "view service logs",
          "description": "A view service logs command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} logs --follow {{ .Service.Name }}"
        },
        "rebuildService": {
          "title": "rebuild service",
          "description": "A rebuild service command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} up -d --build {{ .Service.Name }}"
        },
        "recreateService": {
          "title": "recreate service",
          "description": "A recreate service command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} up -d --force-recreate {{ .Service.Name }}"
        },
        "allLogs": {
          "title": "all logs",
          "description": "An all logs command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} logs --tail=300 --follow"
        },
        "viewAlLogs": {
          "title": "view al logs",
          "description": "A view al logs command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} logs"
        },
        "dockerComposeConfig": {
          "title": "docker compose config",
          "description": "A docker compose config command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} config"
        },
        "checkDockerComposeConfig": {
          "title": "check docker compose config",
          "description": "A check docker compose config command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} config --quiet"
        },
        "serviceTop": {
          "title": "service top",
          "description": "A service top command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "{{ .DockerCompose }} top {{ .Service.Name }}"
        }
      }
    },
    "os": {
      "title": "os",
      "description": "OS settings\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
      "type": "object",
      "properties": {
        "openCommand": {
          "title": "open command",
          "description": "An open command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "open {{filename}}"
        },
        "openLinkCommand": {
          "title": "open link command",
          "description": "An open link command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "string",
          "default": "open {{link}}"
        }
      }
    },
    "stats": {
      "title": "stats",
      "description": "Statistic settings\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
      "type": "object",
      "properties": {
        "graphs": {
          "title": "graphs",
          "description": "Graph settings\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "caption": {
                "title": "caption",
                "description": "A caption\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
                "type": "string",
                "examples": [
                  "CPU (%)"
                ]
              },
              "statPath": {
                "title": "stat path",
                "description": "A path\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
                "type": "string",
                "examples": [
                  "DerivedStats.CPUPercentage"
                ]
              },
              "color": {
                "$ref": "#/$defs/color",
                "title": "color",
                "description": "A color\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>"
              }
            }
          }
        }
      }
    },
    "customCommands": {
      "title": "custom commands",
      "description": "Custom commands\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
      "type": "object",
      "properties": {
        "containers": {
          "title": "containers",
          "description": "Container settings\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "array",
          "uniqueItems": true,
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "title": "name",
                "description": "A name\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
                "type": "string",
                "examples": [
                  "bash"
                ]
              },
              "attach": {
                "title": "attach",
                "description": "Whether to attach\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
                "type": "boolean"
              },
              "command": {
                "title": "command",
                "description": "A command\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
                "type": "string",
                "examples": [
                  "docker exec -it {{ .Container.ID }} bash"
                ]
              },
              "serviceNames": {
                "title": "service names",
                "description": "Service names\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
                "type": "array",
                "uniqueItems": true,
                "items": {
                  "description": "A service name\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
                  "type": "string"
                },
                "default": []
              }
            }
          }
        }
      }
    },
    "replacements": {
      "title": "replacements",
      "description": "Replacement settings\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
      "type": "object",
      "patternProperties": {
        ".": {
          "title": "replacement group",
          "description": "A replacement group\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
          "type": "object",
          "patternProperties": {
            ".": {
              "title": "replacement",
              "description": "A replacement\n<https://github.com/jesseduffield/lazydocker/blob/master/docs/Config.md#default>",
              "type": "string",
              "examples": [
                "<dev>",
                "<prod>"
              ]
            }
          }
        }
      }
    }
  },
  "$defs": {
    "color": {
      "type": "string",
      "oneOf": [
        {
          "enum": [
            "black",
            "red",
            "green",
            "yellow",
            "blue",
            "magenta",
            "cyan",
            "white",
            "bold",
            "default",
            "reverse",
            "underline",
            "strikethrough"
          ]
        },
        {
          "pattern": "^#[0-9a-fA-F]{6}$",
          "examples": [
            "#ff00ff"
          ]
        }
      ]
    }
  }
}
