docs: redesign sidebar (#8408)
* initial changes * redesign the sidebar + nav drawer * changes to sidebar items * finish up sidebar redesign * support new sidebar in resources * general fixes * integrate in ui * support api reference * refactor * integrate in user guide * docs: fix build errors * fix user guide build * more refactoring * added banner * added bottom logo + icon * fix up sidebar * fix up paddings * fix shadow bottom * docs: add table of content (#8445) * add toc types * implement toc functionality * finished toc redesign * redesigned table of content * mobile fixes * truncate text in toc * mobile fixes * merge fixes * implement redesign * add hide sidebar * add menu action item * finish up hide sidebar design * implement redesign in resources * integrate in api reference * integrate changes in ui * fixes to api reference scrolling * fix build error * fix build errors * fixes * fixes to sidebar * general fixes * fix active category not closing * fix long titles
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
import { useEffect } from "react"
|
||||
|
||||
type UseMutationObserverProps = {
|
||||
elm: Document | HTMLElement | undefined
|
||||
callback: () => void
|
||||
options?: {
|
||||
attributes?: boolean
|
||||
characterData?: boolean
|
||||
childList?: boolean
|
||||
subtree?: boolean
|
||||
}
|
||||
}
|
||||
|
||||
export const useMutationObserver = ({
|
||||
elm,
|
||||
callback,
|
||||
options = {
|
||||
attributes: true,
|
||||
characterData: true,
|
||||
childList: true,
|
||||
subtree: true,
|
||||
},
|
||||
}: UseMutationObserverProps) => {
|
||||
useEffect(() => {
|
||||
if (elm) {
|
||||
const observer = new MutationObserver(callback)
|
||||
observer.observe(elm, options)
|
||||
return () => observer.disconnect()
|
||||
}
|
||||
}, [callback, options])
|
||||
}
|
||||
Reference in New Issue
Block a user