use crate::options::AndOptions;
use crate::{
tc_contributor, tc_date, tc_number, tc_title,
template::{
ContributorForm, ContributorRole, TemplateComponent, TemplateContributor, WrapPunctuation,
},
};
pub fn citation() -> Vec<TemplateComponent> {
vec![
TemplateComponent::Contributor(TemplateContributor {
contributor: ContributorRole::Author,
form: ContributorForm::Short,
and: Some(AndOptions::Text),
..Default::default()
}),
tc_date!(Issued, Year, prefix = " "),
]
}
pub fn bibliography() -> Vec<TemplateComponent> {
vec![
tc_contributor!(Author, Long, suffix = " "),
tc_date!(
Issued,
Year,
wrap = WrapPunctuation::Parentheses,
suffix = " "
),
tc_title!(Primary, suffix = ". "),
tc_title!(ParentSerial, emph = true, suffix = " "),
tc_number!(Volume),
tc_number!(Issue, wrap = WrapPunctuation::Parentheses, suffix = ", "),
tc_number!(Pages, suffix = "."),
]
}