MCPcopy Create free account
hub / github.com/DioxusLabs/dioxus-components / BlockComposer

Function BlockComposer

preview/src/main.rs:1842–1885  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1840
1841#[component]
1842fn BlockComposer() -> Element {
1843 let mut draft = use_signal(|| {
1844 "Big thanks to the team for landing the new roadmap view — looks great!".to_string()
1845 });
1846 rsx! {
1847 div { style: "display: flex; align-items: center; gap: 0.65rem; margin-bottom: 1rem;",
1848 ImageAvatar {
1849 size: AvatarImageSize::Small,
1850 src: "https://avatar.vercel.sh/avery-lin",
1851 alt: "Avery Lin",
1852 aria_label: "Avery Lin",
1853 "AL"
1854 }
1855 div { style: "flex: 1; display: grid; gap: 0.1rem;",
1856 span { style: "font-weight: 600; color: var(--secondary-color-3); font-size: 0.9rem;", "Reply to roadmap thread" }
1857 span { style: "color: var(--secondary-color-5); font-size: 0.78rem;", "Posting as @averylin · #product" }
1858 }
1859 }
1860 Textarea {
1861 variant: TextareaVariant::Default,
1862 value: draft,
1863 oninput: move |e: FormEvent| draft.set(e.value()),
1864 placeholder: "Share an update…",
1865 style: "width: 100%; min-height: 5.5rem; resize: vertical;",
1866 }
1867 div { style: "display: flex; align-items: center; gap: 0.55rem; margin-top: 0.85rem;",
1868 ToggleGroup { horizontal: true, allow_multiple_pressed: true, aria_label: "Text formatting",
1869 ToggleItem { index: 0usize, aria_label: "Bold",
1870 b { "B" }
1871 }
1872 ToggleItem { index: 1usize, aria_label: "Italic",
1873 i { "I" }
1874 }
1875 ToggleItem { index: 2usize, aria_label: "Underline",
1876 u { "U" }
1877 }
1878 }
1879 div { style: "margin-left: auto; display: flex; gap: 0.45rem;",
1880 Button { variant: ButtonVariant::Ghost, "Save draft" }
1881 Button { "Post" }
1882 }
1883 }
1884 }
1885}
1886
1887#[component]
1888fn ComponentGallery() -> Element {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected