| | | 1 | | using System.Linq.Expressions; |
| | | 2 | | using Chronicis.Shared.DTOs; |
| | | 3 | | using Chronicis.Shared.Models; |
| | | 4 | | |
| | | 5 | | namespace Chronicis.Api.Services; |
| | | 6 | | |
| | | 7 | | internal static class ArticleReadModelProjection |
| | | 8 | | { |
| | 1 | 9 | | internal static readonly Expression<Func<Article, ArticleDto>> ArticleDetail = a => new ArticleDto |
| | 1 | 10 | | { |
| | 1 | 11 | | Id = a.Id, |
| | 1 | 12 | | Title = a.Title, |
| | 1 | 13 | | Slug = a.Slug, |
| | 1 | 14 | | ParentId = a.ParentId, |
| | 1 | 15 | | WorldId = a.WorldId, |
| | 1 | 16 | | CampaignId = a.CampaignId, |
| | 1 | 17 | | ArcId = a.ArcId, |
| | 1 | 18 | | SessionId = a.SessionId, |
| | 1 | 19 | | Body = a.Body ?? string.Empty, |
| | 1 | 20 | | Type = a.Type, |
| | 1 | 21 | | Visibility = a.Visibility, |
| | 1 | 22 | | CreatedAt = a.CreatedAt, |
| | 1 | 23 | | ModifiedAt = a.ModifiedAt, |
| | 1 | 24 | | EffectiveDate = a.EffectiveDate, |
| | 1 | 25 | | CreatedBy = a.CreatedBy, |
| | 1 | 26 | | LastModifiedBy = a.LastModifiedBy, |
| | 1 | 27 | | IconEmoji = a.IconEmoji, |
| | 1 | 28 | | SessionDate = a.SessionDate, |
| | 1 | 29 | | InGameDate = a.InGameDate, |
| | 1 | 30 | | PlayerId = a.PlayerId, |
| | 1 | 31 | | AISummary = a.AISummary, |
| | 1 | 32 | | AISummaryGeneratedAt = a.AISummaryGeneratedAt, |
| | 1 | 33 | | Breadcrumbs = new List<BreadcrumbDto>(), |
| | 1 | 34 | | Aliases = new List<ArticleAliasDto>() |
| | 1 | 35 | | }; |
| | | 36 | | } |