Mercurial > rsstweet
diff app/lib/legit_client.rb @ 252:151bc6d97d39
Include pinned tweet
author | nanaya <me@nanaya.net> |
---|---|
date | Tue, 17 Oct 2023 00:04:11 +0900 |
parents | 9e5f9ffa4077 |
children | d726e8b92dd1 |
line wrap: on
line diff
--- a/app/lib/legit_client.rb Mon Jul 17 20:54:04 2023 +0900 +++ b/app/lib/legit_client.rb Tue Oct 17 00:04:11 2023 +0900 @@ -98,8 +98,15 @@ end def self.normalize_timeline(json, user_id) - json.find { |instruction| instruction['type'] == 'TimelineAddEntries' }['entries'] - .filter { |entry| entry['entryId'] =~ /\A(profile-conversation|tweet)-/ } + json + .reduce([]) do |acc, instruction| + case instruction['type'] + when 'TimelineAddEntries' then acc += instruction['entries'] + when 'TimelinePinEntry' then acc << instruction['entry'] + end + + acc + end.filter { |entry| entry['entryId'] =~ /\A(profile-conversation|tweet)-/ } .reduce([]) do |acc, entry| if entry['content']['entryType'] == 'TimelineTimelineItem' acc.push(entry['content'])