ferrin-provider-util 0.1.0

Ferrin provider utilities: HTTP transport trait, reqwest transport, SSE decoding, secure URL policy, settings.
Documentation
//! Response metadata helpers.

use chrono::DateTime;
use ferrin_spec::ModelId;
use ferrin_spec::ResponseMetadata;

/// Builds [`ResponseMetadata`] from the usual provider fields: response id,
/// model name and creation time in Unix seconds.
#[must_use]
pub fn response_metadata(
    id: Option<String>,
    model: Option<String>,
    created_unix_seconds: Option<i64>,
) -> ResponseMetadata {
    ResponseMetadata {
        id,
        timestamp: created_unix_seconds.and_then(|seconds| DateTime::from_timestamp(seconds, 0)),
        model_id: model.map(ModelId::from),
        headers: None,
        body: None,
    }
}