From fca5407505e2fd35cc3f525c557d52f676b9a56e Mon Sep 17 00:00:00 2001 From: me Date: Wed, 30 Oct 2024 23:55:59 +0200 Subject: [PATCH] include items in ordered collection --- src/Fedi/Helpers.hs | 4 ++-- src/Fedi/Routes.hs | 4 ++-- src/Fedi/Types.hs | 11 ++++++----- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/Fedi/Helpers.hs b/src/Fedi/Helpers.hs index 007a6d8..7c3fd66 100644 --- a/src/Fedi/Helpers.hs +++ b/src/Fedi/Helpers.hs @@ -125,7 +125,7 @@ emptyOrderedCollection = CollectionType { ctype = OrderedCollectionType - { totalItems = 0 + { orderedItems = [] } , first = Nothing , last = Nothing @@ -144,7 +144,7 @@ emptyOrderedCollectionPage url = { partOf = url , prev = Nothing , next = Nothing - , orderedItems = [] + , porderedItems = [] } , first = Nothing , last = Nothing diff --git a/src/Fedi/Routes.hs b/src/Fedi/Routes.hs index 383f556..27796c5 100644 --- a/src/Fedi/Routes.hs +++ b/src/Fedi/Routes.hs @@ -135,7 +135,7 @@ handleOutbox details items = do { ctype = empty.otype.ctype { partOf = outboxUrl - , orderedItems = items + , porderedItems = items } } } @@ -152,7 +152,7 @@ handleOutbox details items = do emptyOrderedCollection.otype { ctype = emptyOrderedCollection.otype.ctype - { totalItems = fromIntegral $ length items + { orderedItems = items } , first = Just $ outboxUrl <> "?page=true" , last = Just $ outboxUrl <> "?page=true" diff --git a/src/Fedi/Types.hs b/src/Fedi/Types.hs index 42ac98e..f1b0edd 100644 --- a/src/Fedi/Types.hs +++ b/src/Fedi/Types.hs @@ -350,14 +350,15 @@ instance (A.ToJSON e) => ToObject (Unordered e) where data Ordered e = OrderedCollectionType - { totalItems :: Integer + { orderedItems :: [e] } deriving (Show) instance (A.ToJSON e) => ToObject (Ordered e) where toObject collection = [ "type" A..= ("OrderedCollection" :: String) - , "totalItems" A..= collection.totalItems + , "totalItems" A..= length collection.orderedItems + , "orderedItems" A..= collection.orderedItems ] data OrderedPage e @@ -365,15 +366,15 @@ data OrderedPage e { partOf :: Url , prev :: Maybe Url , next :: Maybe Url - , orderedItems :: [e] + , porderedItems :: [e] } deriving (Show) instance (A.ToJSON e) => ToObject (OrderedPage e) where toObject page = [ "type" A..= ("OrderedCollectionPage" :: String) - , "totalItems" A..= length page.orderedItems - , "orderedItems" A..= page.orderedItems + , "totalItems" A..= length page.porderedItems + , "orderedItems" A..= page.porderedItems , "partOf" A..= page.partOf , "prev" A..= page.prev , "next" A..= page.next