dioxus_mdx/components/
api_examples.rs1use dioxus::prelude::*;
4
5use crate::components::DocCodeGroup;
6use crate::parser::{CodeGroupNode, RequestExampleNode, ResponseExampleNode};
7
8#[derive(Props, Clone, PartialEq)]
10pub struct DocRequestExampleProps {
11 pub example: RequestExampleNode,
13}
14
15#[component]
17pub fn DocRequestExample(props: DocRequestExampleProps) -> Element {
18 rsx! {
19 div { class: "my-6",
20 h4 { class: "text-sm font-semibold text-base-content/70 uppercase tracking-wide mb-2",
21 "Request"
22 }
23 DocCodeGroup {
24 group: CodeGroupNode { blocks: props.example.blocks.clone() }
25 }
26 }
27 }
28}
29
30#[derive(Props, Clone, PartialEq)]
32pub struct DocResponseExampleProps {
33 pub example: ResponseExampleNode,
35}
36
37#[component]
39pub fn DocResponseExample(props: DocResponseExampleProps) -> Element {
40 rsx! {
41 div { class: "my-6",
42 h4 { class: "text-sm font-semibold text-base-content/70 uppercase tracking-wide mb-2",
43 "Response"
44 }
45 DocCodeGroup {
46 group: CodeGroupNode { blocks: props.example.blocks.clone() }
47 }
48 }
49 }
50}