use super::super::notes::LinkedTransitTraceInputs;

pub(super) struct LinkedTransitReportFields {
    pub(super) atlas_candidate_consumers: Vec<String>,
    pub(super) known_bridge_helpers: Vec<String>,
    pub(super) next_owner_questions: Vec<String>,
    pub(super) linked_transit_shellless_readiness_status: String,
    pub(super) linked_transit_minimum_persisted_identity_inputs: Vec<String>,
    pub(super) linked_transit_live_rebuilt_cache_lanes: Vec<String>,
    pub(super) linked_transit_runtime_backed_input_families: Vec<String>,
    pub(super) linked_transit_remaining_owner_gaps: Vec<String>,
}

pub(super) fn build_linked_transit_report_fields(
    inputs: &LinkedTransitTraceInputs,
) -> LinkedTransitReportFields {
    LinkedTransitReportFields {
        atlas_candidate_consumers: inputs.atlas_candidate_consumers.clone(),
        known_bridge_helpers: inputs.known_bridge_helpers.clone(),
        next_owner_questions: inputs.next_owner_questions.clone(),
        linked_transit_shellless_readiness_status: inputs
            .linked_transit_shellless_readiness_status
            .clone(),
        linked_transit_minimum_persisted_identity_inputs: inputs
            .linked_transit_minimum_persisted_identity_inputs
            .clone(),
        linked_transit_live_rebuilt_cache_lanes: inputs
            .linked_transit_live_rebuilt_cache_lanes
            .clone(),
        linked_transit_runtime_backed_input_families: inputs
            .linked_transit_runtime_backed_input_families
            .clone(),
        linked_transit_remaining_owner_gaps: inputs.linked_transit_remaining_owner_gaps.clone(),
    }
}
