Jacky Zhao
2023-08-12 c89f8b1a9a20becd982ed0b4bc88b1685a15832d
fix nested callout folding
3 files modified
18 ■■■■■ changed files
content/features/upcoming features.md 1 ●●●● patch | view | raw | blame | history
quartz/components/scripts/callout.inline.ts 16 ●●●●● patch | view | raw | blame | history
quartz/styles/callouts.scss 1 ●●●● patch | view | raw | blame | history
content/features/upcoming features.md
@@ -4,7 +4,6 @@
## todo
- blockquote with link in first child broken
- 404 using base url
- back button with anchors / popovers + spa is broken
- search should be fast for large repos
quartz/components/scripts/callout.inline.ts
@@ -4,6 +4,22 @@
  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() {
quartz/styles/callouts.scss
@@ -7,6 +7,7 @@
  padding: 0 1rem;
  overflow-y: hidden;
  transition: max-height 0.3s ease;
  box-sizing: border-box;
  & > *:nth-child(2) {
    margin-top: 0;