How to customize outline.entry filling per level?

this solution simply shows anything related to the repeat function as none if the entry level is 1, a bit hacky.

#show outline.entry.where(level: 1): it => {
  show repeat: none
  it
}


#outline()

= Level 1 Heading

== Level 2 Heading

= Another Level 1 Heading

== Another Heading here

== And another one

a longer “appropriate” solution is to reconstruct the entry fully.

#show outline.entry.where(level: 1): it => {
  v(0.1em)
  box(grid(
    columns: (auto, 1fr, auto),
    strong(link(it.element.location())[#it.element.body]),
    h(1fr),
    strong(it.page),
  ))
}


#outline()

= Level 1 Heading

== Level 2 Heading

= Another Level 1 Heading

== Another Heading here

== And another one
1 Like