internal static DaisyDocumentationViewModel toView(DocumentationSet docs, string setName, DaisyDocumentationOptions options)
{
return new DaisyDocumentationViewModel()
{
Description = setName,
Statements = docs.Statements
.OrderBy(x => x.Description)
.Select(stat => new DaisyStatementDocumentationViewModel()
{
Scope = stat.ScopeType.Name,
Description = stat.Description,
Title = stat.Title,
TransformsTo = stat.Parameters
.Where(y => y.TransformsTo != null)
.Select(y => y.TransformsTo.Name)
.FirstOrDefault(),
Parameters = stat.Parameters.Where(p => p.TransformsTo == null)
.Select(p => new DaisyParameterDocumentationViewModel() {
Name = p.Name,
Type = p.Type.Name,
Description = p.Description
})
.ToList()
})
.ToList(),
ScopeOrder = options.ScopeOrder.Select(x => x.Name).ToList()
};
}