Sorting by scheduled date:
#+BEGIN_QUERY
{:title ["📆 near TODOs (next 7 days, scheduled or deadline)"]
:query [:find (pull ?b [*])
:in $ ?start ?next
:where
(or
[?b :block/scheduled ?d]
[?b :block/deadline ?d]
)
[(>= ?d ?start)]
[(<= ?d ?next)]
]
:result-transform (fn [result] (sort-by (fn [d] (get d :block/scheduled) ) result))
:inputs [:today :7d-after]
:collapsed? false}
#+END_QUERY
Sorting by deadline:
#+BEGIN_QUERY
{:title ["📆 near TODOs (next 7 days, scheduled or deadline)"]
:query [:find (pull ?b [*])
:in $ ?start ?next
:where
(or
[?b :block/scheduled ?d]
[?b :block/deadline ?d]
)
[(>= ?d ?start)]
[(<= ?d ?next)]
]
:result-transform (fn [result] (sort-by (fn [d] (get d :block/deadline) ) result))
:inputs [:today :7d-after]
:collapsed? false}
#+END_QUERY
Sort by scheduled then deadline
#+BEGIN_QUERY
{:title ["📆 near TODOs (next 7 days, scheduled or deadline)"]
:query [:find (pull ?b [*])
:in $ ?start ?next
:where
(or
[?b :block/scheduled ?d]
[?b :block/deadline ?d]
)
[(>= ?d ?start)]
[(<= ?d ?next)]
]
:result-transform (fn [result] (sort-by (juxt (fn [d] (get d :block/scheduled) ) (fn [d] (get d :block/deadline) ) ) result))
:inputs [:today :7d-after]
:collapsed? false}
#+END_QUERY
Sort by deadline then scheduled
#+BEGIN_QUERY
{:title ["📆 near TODOs (next 7 days, scheduled or deadline)"]
:query [:find (pull ?b [*])
:in $ ?start ?next
:where
(or
[?b :block/scheduled ?d]
[?b :block/deadline ?d]
)
[(>= ?d ?start)]
[(<= ?d ?next)]
]
:result-transform (fn [result] (sort-by (juxt (fn [d] (get d :block/deadline) ) (fn [d] (get d :block/scheduled) ) ) result))
:inputs [:today :7d-after]
:collapsed? false}
#+END_QUERY
Hope this helps anyone!