VSTalk.Engine.ViewModel.Messenger.History.HistoryLoaderViewModel.InitialFrames C# (CSharp) Method

InitialFrames() private method

private InitialFrames ( ) : IEnumerable
return IEnumerable
        private IEnumerable<TimeFrameParam> InitialFrames()
        {
            var latestDate = HistoryService.LatestMessageDate(_clientId, _withEntity);
            if (!latestDate.HasValue)
            {
                yield break;
            }
            var today = DateTime.Today;
            var testFrames = new List<TimeFrameParam>
            {
                new TimeFrameParam
                {
                    DisplayingValue = "Yesterday",
                    Span = today.AddDays(-1),
                },
                new TimeFrameParam
                {
                    DisplayingValue = "7 days",
                    Span = today.AddDays(-7)
                },
                new TimeFrameParam
                {
                    DisplayingValue = "30 days",
                    Span = today.AddDays(-30)
                },
                new TimeFrameParam
                {
                    DisplayingValue = "3 months",
                    Span = today.AddDays(-93)
                },
                new TimeFrameParam
                {
                    DisplayingValue = "6 months",
                    Span = today.AddDays(-186)
                },
                new TimeFrameParam
                {
                    DisplayingValue = "1 year",
                    Span = today.AddDays(-365)
                },
                new TimeFrameParam
                {
                    DisplayingValue = "From Beginning",
                    Span = DateTime.MinValue
                },
            };

            foreach (var timeFrameParam in testFrames)
            {
                yield return timeFrameParam;
                if (timeFrameParam.Span < latestDate.Value)
                {
                    yield break;
                }
            }
        }