dioxus_katex/katex/
builder.rs

1use super::*;
2
3/// A builder for a [`UseKatex`] hook.
4pub fn use_katex(cx: &ScopeState, katex: KaTeXOptions) -> &mut UseKatex {
5    let katex = UseKatex { katex: Rc::new(RefCell::new(katex)), updater: cx.schedule_update() };
6    cx.use_hook(|| katex)
7}
8/// A builder for a [`UseKatex`] hook in display mode.
9pub fn use_katex_display(cx: &ScopeState) -> &mut UseKatex {
10    use_katex(cx, KaTeXOptions::display_mode())
11}
12/// A builder for a [`UseKatex`] hook in inline mode.
13pub fn use_katex_inline(cx: &ScopeState) -> &mut UseKatex {
14    use_katex(cx, KaTeXOptions::inline_mode())
15}
16
17impl Debug for UseKatex {
18    fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
19        Debug::fmt(&self.katex.borrow(), f)
20    }
21}