fix nested callout folding

This commit is contained in:
Jacky Zhao
2023-08-12 10:33:57 -07:00
parent 58c7a9b6f4
commit d256e359b8
3 changed files with 17 additions and 1 deletions

View File

@ -4,6 +4,22 @@ function toggleCallout(this: HTMLElement) {
const collapsed = outerBlock.classList.contains(`is-collapsed`)
const height = collapsed ? this.scrollHeight : outerBlock.scrollHeight
outerBlock.style.maxHeight = height + `px`
// walk and adjust height of all parents
let current = outerBlock
let parent = outerBlock.parentElement
while (parent) {
if (!parent.classList.contains(`callout`)) {
return
}
const collapsed = parent.classList.contains(`is-collapsed`)
const height = collapsed ? parent.scrollHeight : parent.scrollHeight + current.scrollHeight
parent.style.maxHeight = height + `px`
current = parent
parent = parent.parentElement
}
}
function setupCallout() {