pib-service-inventory 0.13.1

Inventory interface library to be used in pib-service
Documentation
// SPDX-FileCopyrightText: Politik im Blick developers
// SPDX-FileCopyrightText: Wolfgang Silbermayr <wolfgang@silbermayr.at>
//
// SPDX-License-Identifier: AGPL-3.0-or-later OR EUPL-1.2

use oparl_types::{BodyClassification, DateTime, EmailAddress, Name, Url};
use uuid::Uuid;

#[derive(Debug, Clone, PartialEq, Eq)]
pub struct Body {
    pub id: Uuid,
    pub created: DateTime,
    pub modified: DateTime,

    pub short_name: Option<Name>,
    pub name: Name,
    pub website: Option<Url>,
    pub license: Option<Url>,
    pub license_valid_since: Option<DateTime>,
    pub oparl_since: Option<DateTime>,
    pub ags: Option<String>,
    pub rgs: Option<String>,
    pub contact_email: Option<EmailAddress>,
    pub contact_name: Option<Name>,
    pub classification: Option<BodyClassification>,
    pub is_public: bool,
}

#[derive(Debug, Clone, PartialEq, Eq)]
pub struct NewBody {
    pub short_name: Option<Name>,
    pub name: Name,
    pub website: Option<Url>,
    pub license: Option<Url>,
    pub license_valid_since: Option<DateTime>,
    pub oparl_since: Option<DateTime>,
    pub ags: Option<String>,
    pub rgs: Option<String>,
    pub contact_email: Option<EmailAddress>,
    pub contact_name: Option<Name>,
    pub classification: Option<BodyClassification>,
    pub is_public: bool,
}