using HtmlAgilityPack;
namespace Beam.Dynamic {
public class DataBindings {
public Binding? Title { get; set; }
public Binding? Authors { get; set; }
public Binding? Description { get; set; }
public Binding? Content { get; set; }
public Binding? Language { get; set; }
public Binding? Tags { get; set; }
public ResolvedBindings Resolve(HtmlDocument doc) {
return new ResolvedBindings() {
Title = Title?.Resolve(doc),
Authors = Authors?.Resolve(doc) ?? Array.Empty(),
Language = Language?.Resolve(doc) ?? Array.Empty(),
Content = Content?.Resolve(doc),
Description = Description?.Resolve(doc),
Tags = Tags?.Resolve(doc) ?? Array.Empty()
};
}
}
public class ResolvedBindings {
public string? Title { get; set; }
public string[]? Authors { get; set; }
public string? Description { get; set; }
public string? Content { get; set; }
public string[]? Language { get; set; }
public string[]? Tags { get; set; }
}
}