# This file is auto-generated by alef — DO NOT EDIT. # alef:hash:4e15143f4af1ae8bafbdb1506ef057da924484c66a19483966333558ad437e75 # To regenerate: alef generate # To verify freshness: alef verify --exit-code # Issues & docs: https://github.com/kreuzberg-dev/alef defmodule Kreuzberg.HtmlOutputConfig do @moduledoc """ Configuration for styled HTML output. When set on [`ExtractionConfig::html_output`] alongside `output_format = OutputFormat::Html`, the pipeline builds a [`StyledHtmlRenderer`](crate::rendering::StyledHtmlRenderer) instead of the plain comrak-based renderer. # Example ```rust use kreuzberg::core::config::{HtmlOutputConfig, HtmlTheme}; let config = HtmlOutputConfig { theme: HtmlTheme::GitHub, css: Some(".kb-p { font-size: 1.1rem; }".to_string()), ..Default::default() }; ``` """ @typedoc "Configuration for styled HTML output." @type t :: %__MODULE__{ css: String.t() | nil, css_file: String.t() | nil, theme: String.t() | nil, class_prefix: String.t() | nil, embed_css: boolean() } defstruct css: nil, css_file: nil, theme: :unstyled, class_prefix: nil, embed_css: true defimpl Jason.Encoder do @doc false def encode(value, opts) do value |> Map.from_struct() |> Enum.reject(fn {_k, v} -> v == nil end) |> Enum.into(%{}) |> Jason.Encoder.encode(opts) end end end