💻 My personal website blog.kacaii.dev/
blog gleam lustre

:recycle: use `calendar.naive_date_compare` to sort posts

kacaii.dev c4bbc383 fe6fcade

verified
+5 -13
+2 -1
src/blog.gleam
··· 111 111 |> post.from_string 112 112 }) 113 113 114 - list.sort(posts, post.compare) 114 + posts 115 + |> list.sort(post.compare) 115 116 |> list.reverse 116 117 }
+3 -12
src/blog/post.gleam
··· 1 1 import blog/post/metadata 2 2 import contour 3 3 import frontmatter 4 - import gleam/int 5 4 import gleam/list 6 5 import gleam/option 7 6 import gleam/order ··· 69 68 } 70 69 71 70 pub fn compare(a: Post, b: Post) -> order.Order { 72 - let a_day = a.meta.date.day 73 - let a_month = calendar.month_to_int(a.meta.date.month) 74 - let a_year = a.meta.date.year 75 - 76 - let b_day = b.meta.date.day 77 - let b_month = calendar.month_to_int(b.meta.date.month) 78 - let b_year = b.meta.date.year 79 - 80 - use <- order.lazy_break_tie(int.compare(a_year, b_year)) 81 - use <- order.lazy_break_tie(int.compare(a_month, b_month)) 82 - int.compare(a_day, b_day) 71 + let a_date = a.meta.date 72 + let b_date = b.meta.date 73 + calendar.naive_date_compare(a_date, b_date) 83 74 }