Expand description
euv-ui
Reusable UI component library for the euv framework, providing buttons, cards, modals, inputs, theme management, and more.
Structs§
- Console
- A console abstraction providing web console API methods.
- Console
Entry - A single console entry containing a message and its log level.
- Counter
- A bounded reactive counter.
- Debounced
Value - A value that only emits after a quiet period of
delaysince its most recentset. - Error
Boundary - A handle that tracks whether a wrapped subtree has thrown.
- EuvAlert
Props - Props for the
euv_alertcomponent. - EuvBadge
Props - Props for the
euv_badgecomponent. - EuvButton
Props - Props for the
euv_buttoncomponent. - EuvCamera
Config - Configuration for camera initialization.
- EuvCard
Props - Props for the
euv_cardcomponent. - EuvCheckbox
Props - Props for the
euv_checkboxcomponent. - EuvDebug
Props - Props for the
euv_debugcomponent. - EuvDoc
Layout Props - Props for the
euv_doc_layoutcomponent. - EuvDrawer
Props - Props for the
euv_drawercomponent. - EuvDropdown
Item - One entry of the
euv_dropdownmenu. - EuvDropdown
Props - Props for the
euv_dropdowncomponent. - EuvFeature
- One card of the
euv_feature_gridcomponent. - EuvFeature
Grid Props - Props for the
euv_feature_gridcomponent. - EuvField
Props - Props for the
euv_fieldcomponent. - EuvHeader
Props - Props for the
headercomponent. - EuvHero
Action - One action button of the
euv_herocomponent. - EuvHero
Action Props - Props of the
euv_hero_actioncomponent. - EuvHero
Props - Props for the
euv_herocomponent. - EuvInfo
Props - Props for the
euv_infocomponent. - EuvInput
Props - Props for the
euv_inputcomponent. - EuvLoading
Props - Props for the
euv_loadingcomponent. - EuvLogo
Props - Props for the
euv_logocomponent. - EuvMarkdown
Props - Props for the
euv_markdowncomponent. - EuvMobile
NavItem Props - Props for the
euv_mobile_nav_itemcomponent. - EuvModal
Props - Props for the
euv_modalcomponent. - EuvNav
Item Config - Configuration for a navigation item.
- EuvNav
Item Props - Props for the
euv_nav_itemcomponent. - EuvNav
Items Props - Props for the
euv_nav_itemscomponent. - EuvNavbar
Item - One link entry of the
euv_navbartop navigation bar. - EuvNavbar
Link Props - Props of the
euv_navbar_linkcomponent. - EuvNavbar
Props - Props for the
euv_navbarcomponent. - EuvPage
Router Props - Props for the
euv_page_routercomponent. - EuvPagination
Item - One side of the
euv_paginationprev/next footer. - EuvPagination
Props - Props for the
euv_paginationcomponent. - EuvResult
Props - Props for the
euv_resultcomponent. - EuvRoute
Config - Configuration for a route entry in the router.
- EuvRoutes
Props - Props for declarative route-based rendering.
- EuvSidebar
Item - One node of the
euv_sidebarnavigation tree. - EuvSidebar
Item Props - Props of the
euv_sidebar_itemcomponent. - EuvSidebar
Props - Props for the
euv_sidebarcomponent. - EuvTag
Props - Props for the
euv_tagcomponent. - EuvToc
Item - One entry of the
euv_tocanchor list. - EuvToc
Props - Props for the
euv_toccomponent. - EuvVconsole
Drawer Props - Props for the
euv_vconsole_drawercomponent. - EuvVconsole
FabProps - Props for the
euv_vconsole_fabcomponent. - EuvVconsole
Panel Props - Props for the
euv_vconsole_panelcomponent. - EuvVirtual
List Config - Configuration for a virtual list instance.
- EuvVirtual
List Props - Props for the
euv_virtual_listcomponent. - Form
State - The aggregate form state.
- I18n
- Lazy
Component - A lazy component that defers factory invocation until first access.
- Native
Touch Point - Represents a single touch point from a multi-touch event.
- Native
Touch Point F64 - Represents a single touch point with high-precision
f64coordinates. - Nested
Route Config - A nested route configuration entry.
- Previous
- Tracks the previously observed value of some external reactive source.
- Profile
Entry - A single recorded measurement.
- Profiler
Handle - A handle to the profiler registered against the current hook context.
- Profiler
Mark - A
begin()marker — RAII guard that records the start timestamp and the label so the matchingend()call can compute the elapsed time. - Router
- Router functionality for managing browser history, overlays, and navigation.
- Suspense
Handle - A handle that drives a
SuspenseState. - Theme
State - Holds the reactive state for the application theme.
- Throttled
Value - A value that emits the most recent input at most once
per
interval_ms. - Toggle
- A reactive boolean toggle.
- Transition
Config - Configuration for a
TransitionState. - Transition
State - The aggregate transition state.
- UseAsync
Handle use_async’s reactive handle, stored in the hook context slot and returned to the user on each render.- UseEuv
Browser - Reactive state for the browser API features.
- UseEuv
Camera - Reactive state for the camera, including camera control, facing mode, and QR code scanning results.
- UseEuv
Input - Input functionality for handling form input events.
- UseEuv
Layout - Layout functionality for managing viewport resize, drawer toggle, and safe area.
- UseVirtual
List - Reactive state for the virtual list scroll tracking.
Enums§
- Alert
Variant - The alert variant determining the visual style.
- Async
State - Discriminant for the three states an
use_asyncfuture can be in. - Error
Boundary Phase - The phase of an
ErrorBoundary. - EuvButton
Variant - The visual variant of the
euv_buttoncomponent. - EuvCamera
Facing - Represents the facing direction of the camera device.
- EuvMd
Block - One block-level markdown node of the
euv_markdownAST. - EuvMd
Inline - One inline markdown node of the
euv_markdownAST. - EuvTag
Color - The semantic colour type of the
euv_tagcomponent. - EuvTag
Variant - The visual variant of the
euv_tagcomponent. - Load
State - The state of a
LazyComponent. - LogFilter
- Filter level for the vConsole panel log entry display.
- LogLevel
- Log level for console entries, mirroring the web console API.
- Logo
Button Variant - Display variant for the
euv_logocomponent. - Suspense
Phase - The phase of a
SuspenseState. - Transition
Phase - The four phases of a transition lifecycle.
Constants§
- EUV_
MD_ CSS - Raw stylesheet for rendered markdown bodies (
crate::euv_markdown). - THEME_
DARK - The dark theme name string.
- THEME_
LIGHT - The light theme name string.
Traits§
- HasLoading
Hint - Optional payload for the
Loadingstate. - Hook
Context Form Ext - Extension trait that exposes the hook-context factory
used by
App::use_form. - Hook
Context I18n Ext - Extension trait that exposes the hook-context factory
used by
App::use_i18n. - Hook
Context Transition Ext - Extension trait that exposes the hook-context factory
used by
App::use_transition.
Functions§
- c_
anim_ fade_ in - c_
anim_ pulse - c_
anim_ pulse_ container - c_
anim_ pulse_ stopped - c_
anim_ scale_ box - c_
anim_ spin - c_
anim_ spin_ container - c_
anim_ spin_ stopped - c_
app_ main - c_
app_ nav - c_
app_ root - c_
attrs_ dynamic_ demo - c_badge
- c_
badge_ hint - c_
badge_ outline - c_
badge_ row - c_
binding_ child_ box - c_
binding_ child_ label - c_
binding_ color_ hex - c_
binding_ color_ mixer - c_
binding_ color_ preview - c_
binding_ compact_ button - c_
binding_ demo_ text - c_
binding_ form_ label - c_
binding_ parent_ box - c_
binding_ section_ title - c_
binding_ slider - c_
binding_ slider_ label - c_
binding_ slider_ row - c_
binding_ slider_ value - c_
binding_ temp_ arrow - c_
binding_ temp_ converter - c_
binding_ temp_ field - c_
binding_ typed_ prop_ group - c_
binding_ typed_ prop_ value - c_
binding_ typed_ warning - c_
browser_ api_ actions - c_
browser_ api_ row - c_
browser_ info_ grid - c_
browser_ info_ item - c_
browser_ info_ label - c_
browser_ info_ value - c_
browser_ result_ box - c_
browser_ result_ label - c_
browser_ result_ value - c_
button_ controls - c_
camera_ error_ box - c_
camera_ placeholder_ content - c_
camera_ placeholder_ icon - c_
camera_ placeholder_ text - c_
camera_ scan_ result_ box - c_
camera_ scan_ result_ label - c_
camera_ scan_ result_ value - c_
camera_ video_ active - c_
camera_ video_ container - c_
camera_ video_ hidden - c_
camera_ video_ placeholder - c_
canvas_ color_ input_ fullscreen - c_
canvas_ container_ fullscreen - c_
canvas_ drawing_ fullscreen - c_
canvas_ drawing_ fullscreen_ wrapper - c_
canvas_ fullscreen_ range_ input - c_
canvas_ fullscreen_ toolbar - c_
canvas_ fullscreen_ toolbar_ button - c_
canvas_ fullscreen_ toolbar_ color_ wrapper - c_
canvas_ fullscreen_ toolbar_ row_ bottom - c_
canvas_ fullscreen_ toolbar_ row_ top - c_
canvas_ placeholder - c_
canvas_ preview_ container - c_
canvas_ preview_ image - c_card
- c_
card_ title - c_
counter_ row - c_
counter_ text - c_
counter_ value - c_
custom_ attrs_ demo - c_
data_ box - c_
data_ pre - c_debug
- c_
debug_ label - c_
debug_ value - c_
demo_ text - c_
demo_ text_ muted - c_
dynamic_ component_ panel - c_
dynamic_ component_ tab_ bar - c_
element_ stack - c_
error_ box - c_
error_ container - c_
error_ icon - c_
error_ text - c_
euv_ button_ outline_ md - c_
euv_ button_ primary_ md - c_
euv_ doc_ content - c_
euv_ doc_ layout - c_
euv_ doc_ toc - c_
euv_ drawer - c_
euv_ drawer_ closed - c_
euv_ drawer_ open - c_
euv_ drawer_ overlay - c_
euv_ drawer_ overlay_ closed - c_
euv_ drawer_ overlay_ open - c_
euv_ dropdown - c_
euv_ dropdown_ item - c_
euv_ dropdown_ menu - c_
euv_ dropdown_ menu_ closed - c_
euv_ dropdown_ menu_ open - c_
euv_ footer - c_
euv_ input - c_
euv_ input_ error - c_
euv_ input_ no_ transition - c_
euv_ input_ wrapper - c_
euv_ logo - c_
euv_ logo_ fab - c_
euv_ logo_ nav - c_
euv_ markdown - c_
euv_ navbar - c_
euv_ navbar_ actions - c_
euv_ navbar_ brand - c_
euv_ navbar_ icon_ button - c_
euv_ navbar_ link - c_
euv_ navbar_ link_ active - c_
euv_ navbar_ links - c_
euv_ navbar_ logo - c_
euv_ navbar_ menu_ button - c_
euv_ navbar_ menu_ button_ active - c_
euv_ pagination - c_
euv_ pagination_ label - c_
euv_ pagination_ link - c_
euv_ pagination_ next - c_
euv_ pagination_ spacer - c_
euv_ pagination_ text - c_
euv_ result - c_
euv_ result_ actions - c_
euv_ result_ code - c_
euv_ result_ description - c_
euv_ result_ title - c_
euv_ sidebar_ children - c_
euv_ sidebar_ group - c_
euv_ sidebar_ group_ arrow - c_
euv_ sidebar_ group_ arrow_ open - c_
euv_ sidebar_ group_ title - c_
euv_ sidebar_ link - c_
euv_ sidebar_ link_ active - c_
euv_ tag_ outline_ black - c_
euv_ tag_ outline_ white - c_
euv_ tag_ solid_ black - c_
euv_ tag_ solid_ white - c_
euv_ toc - c_
euv_ toc_ link - c_
euv_ toc_ link_ nested - c_
euv_ toc_ title - c_
event_ audio - c_
event_ clipboard_ area - c_
event_ drag_ item - c_
event_ drag_ zone - c_
event_ drag_ zone_ active - c_
event_ drop_ hint - c_
event_ drop_ icon - c_
event_ drop_ text - c_
event_ drop_ zone - c_
event_ drop_ zone_ active - c_
event_ form_ area - c_
event_ highlight - c_
event_ image - c_
event_ image_ area - c_
event_ info_ grid - c_
event_ info_ label - c_
event_ info_ row - c_
event_ info_ value - c_
event_ media_ area - c_
event_ mouse_ area - c_
event_ result - c_
event_ touch_ zone - c_
event_ url_ text - c_
event_ video - c_
event_ video_ area - c_
event_ wheel_ zone - c_
feature_ card - c_
feature_ desc - c_
feature_ header - c_
feature_ icon - c_
feature_ name - c_
fetch_ hint - c_
field_ error_ text - c_
file_ upload_ input_ hidden - c_
file_ upload_ item - c_
file_ upload_ item_ index - c_
file_ upload_ item_ name - c_
file_ upload_ options - c_
form_ checkbox - c_
form_ checkbox_ label - c_
form_ checkbox_ row - c_
form_ label - c_hint
- c_home
- c_
home_ actions - c_
home_ badge - c_
home_ badge_ row - c_
home_ btn_ primary - c_
home_ btn_ secondary - c_
home_ content - c_
home_ feature_ grid - c_
home_ section_ desc - c_
home_ section_ title - c_
home_ stat_ card - c_
home_ stat_ icon - c_
home_ stat_ label - c_
home_ stat_ value - c_
home_ stats - c_
home_ subtitle - c_
home_ title - c_
info_ label - c_
info_ link - c_
info_ row - c_
info_ value - c_
inline_ input_ button_ wrap - c_
inline_ input_ row - c_
keep_ alive_ counter_ controls - c_
keep_ alive_ counter_ display - c_
keep_ alive_ counter_ value - c_
keep_ alive_ demo_ text - c_
keep_ alive_ form_ group - c_
keep_ alive_ form_ preview - c_
keep_ alive_ panel_ title - c_
keep_ alive_ preview_ label - c_
keep_ alive_ tab_ bar - c_
keep_ alive_ tab_ panel - c_
list_ error_ text - c_
list_ input - c_
list_ input_ error - c_
list_ item - c_
list_ item_ button - c_
list_ item_ text - c_
list_ ul - c_
loading_ container - c_
loading_ overlay - c_
loading_ subtitle - c_
loading_ text_ col - c_
loading_ title - c_
log_ container - c_
log_ item - c_
mobile_ app_ root - c_
mobile_ drawer_ close_ button - c_
mobile_ header - c_
mobile_ header_ left - c_
mobile_ header_ logo - c_
mobile_ main - c_
mobile_ menu_ button - c_
mobile_ menu_ button_ active - c_
mobile_ nav_ drawer - c_
mobile_ nav_ drawer_ closed - c_
mobile_ nav_ drawer_ header - c_
mobile_ overlay - c_
mobile_ overlay_ hidden - c_
mobile_ theme_ button - c_
modal_ actions - c_
modal_ body - c_
modal_ close_ button - c_
modal_ content - c_
modal_ header - c_
modal_ overlay - c_
modal_ title - c_
nav_ brand_ title - c_
nav_ footer - c_
nav_ footer_ brand - c_
nav_ footer_ divider - c_
nav_ footer_ text - c_
nav_ header - c_
nav_ item_ active - c_
nav_ item_ icon - c_
nav_ item_ inactive - c_
nav_ item_ label - c_
nav_ items_ scroll - c_
nav_ locale_ row - c_
nav_ section_ label - c_
nav_ theme_ button - c_
nav_ theme_ toggle - c_
net_ message_ data - c_
net_ message_ index - c_
net_ message_ item - c_
net_ messages_ empty - c_
net_ messages_ list - c_page
- c_
page_ container - c_
page_ content - c_
page_ glow - c_
page_ icon - c_
page_ router - c_
page_ subtitle - c_
page_ title - c_
primary_ button - c_
progress_ bar_ running - c_
progress_ bar_ stopped - c_
progress_ container - c_
render_ count_ text - c_
role_ admin_ text - c_
role_ button_ row - c_
role_ guest_ text - c_
role_ user_ text - c_
select_ input - c_
spinner - c_
success_ box - c_
switcher - c_
switcher_ col - c_
tab_ bar - c_
tab_ content - c_
tab_ item_ active - c_
tab_ item_ inactive - c_
tab_ text - c_
tab_ text_ input - c_
tab_ text_ muted - c_
text_ ellipsis - c_
textarea_ counter - c_
textarea_ counter_ text - c_
textarea_ input - c_
textarea_ input_ error - c_
theme_ dark - c_
theme_ icon_ moon - c_
theme_ icon_ sun - c_
theme_ light - c_
timer_ controls - c_
timer_ display - c_
timer_ done - c_
timer_ value - c_
toggle_ content - c_
toggle_ title - c_
vconsole_ badge - c_
vconsole_ body - c_
vconsole_ clear_ button - c_
vconsole_ close_ button - c_
vconsole_ count - c_
vconsole_ empty - c_
vconsole_ empty_ hidden - c_
vconsole_ fab - c_
vconsole_ filter_ badge - c_
vconsole_ filter_ badge_ outline - c_
vconsole_ filter_ bar - c_
vconsole_ header - c_
vconsole_ header_ actions - c_
vconsole_ level_ badge - c_
vconsole_ log_ item - c_
vconsole_ log_ list - c_
vconsole_ log_ list_ hidden - c_
vconsole_ overlay - c_
vconsole_ overlay_ hidden - c_
vconsole_ panel - c_
vconsole_ panel_ closed - c_
vconsole_ title - c_
vconsole_ title_ dot - c_
virtual_ list_ card - c_
virtual_ list_ container - c_
virtual_ list_ row - c_
virtual_ list_ row_ description - c_
virtual_ list_ row_ index - c_
virtual_ list_ row_ label - c_
virtual_ list_ status - c_
virtual_ list_ status_ item - c_
virtual_ list_ status_ value - c_
ws_ message_ input - c_
ws_ message_ time - euv_
alert - An alert component that displays contextual messages with semantic styling.
- euv_
badge - A badge component for displaying status indicators with black/white colour scheme.
- euv_
button - A versatile button component supporting primary and outline variants.
- euv_
card - A card component that wraps children with a styled container.
- euv_
checkbox - A labeled checkbox component with two-way binding via a signal.
- euv_
debug - A dev-only component for inspecting reactive state inside the component tree.
- euv_
doc_ layout - A generic documentation page layout aligned with common site frameworks
(VuePress default theme
Page, Docusaurus doc item): a fluid content column with the page body as children,euv_paginationprev/next links and an optional footer, plus a sticky righteuv_tocanchor column that collapses on narrow viewports. - euv_
drawer - A generic left-side mobile drawer with overlay, aligned with common component libraries and the euv example’s overlay-stack behaviour.
- euv_
dropdown - A generic dropdown menu aligned with common component libraries.
- euv_
feature_ grid - A generic borderless feature card grid aligned with common site frameworks.
- euv_
field - A form field component with label, input, and validation error display.
- euv_
header - Renders a standard header with an emoji icon, title, and subtitle.
- euv_
hero - A generic hero section aligned with common site frameworks.
- euv_
hero_ action - Renders one hero action button (internal route or external URL).
- euv_
info - A key-value information row component with label and value display.
- euv_
input - A custom input component with label and event handling.
- euv_
loading - A loading indicator component with spinner and optional subtitle.
- euv_
logo - Renders a branded logo element displaying the “E” letter with a gradient background.
- euv_
markdown - A generic markdown renderer component.
- euv_
markdown_ blocks - Renders a markdown block slice into euv VirtualNodes.
- euv_
mobile_ nav_ item - Renders a mobile navigation item link that closes the drawer on navigation.
- euv_
modal - A modal dialog component with overlay, title, and close handler.
- euv_
nav_ item - Renders a navigation item link with active state styling.
- euv_
nav_ items - Renders a configurable navigation items list.
- euv_
navbar - A generic fixed top navigation bar aligned with common site frameworks.
- euv_
navbar_ link - Renders a single navbar link (internal hash route or external URL).
- euv_
page_ router - A simple page router wrapper that provides a container for routed content.
- euv_
pagination - A generic prev/next pagination footer aligned with common docs frameworks.
- euv_
result - A generic status/result page aligned with common component libraries
(Ant Design
Result, Element PlusResult): a big status code, a title, a description and an action area. - euv_
routes - A declarative router component that renders different content based on the current route.
- euv_
sidebar - A generic collapsible navigation tree aligned with common docs frameworks.
- euv_
sidebar_ item - Renders one sidebar node: a leaf link or a collapsible group.
- euv_tag
- A tag component for displaying semantic status indicators.
- euv_toc
- A generic sticky anchor table-of-contents aligned with common docs frameworks.
- euv_
vconsole_ drawer - Renders the vConsole drawer panel with log entries, level filter, and controls.
- euv_
vconsole_ fab - Renders the floating action button for the vConsole panel.
- euv_
vconsole_ panel - Renders a vConsole-style floating debug panel with a toggle button and a half-page drawer.
- euv_
virtual_ list - A high-performance virtual list component for rendering large datasets.
- find_
active_ route - Recursively finds the deepest matching route in the configuration tree.
- i18n_
register - Registers a translation
key -> messageunderlocaleon the supplied i18n handle. - inject_
app_ global_ css - Injects application-level global CSS into the DOM.
- normalize_
path - Normalizes a path by stripping a trailing
/(except for the root path/, which stays as/). - now_ms
- Returns the current wall-clock time, in milliseconds.
- previous_
step - Records
currentagainst the supplied tracker and returns the snapshot of what was previously recorded. - profiler_
measure - Runs
bodyand records the elapsed time underlabel. - route_
chain - Returns the chain of routes from the root to the matched route, in render order (root first).
- route_
matches - Returns
trueifpathmatches the route’s pattern. - use_
async - Obtains the
UseAsyncHandleregistered against the current hook context slot. - use_
debounced_ value - Obtains the debounced value registered against the current hook context slot.
- use_
error_ boundary - Obtains an
ErrorBoundaryregistered against the current hook context slot. - use_
i18n - Obtains the i18n handle registered against the current hook context slot.
- use_
lazy_ component - Obtains a
LazyComponentregistered against the current hook context slot. - use_
previous - Obtains the previous-value tracker registered against the current hook context slot.
- use_
profiler - Obtains a
ProfilerHandleregistered against the current hook context slot. - use_
suspense - Obtains a
SuspenseHandleregistered against the current hook context slot. - use_
throttled_ value - Obtains the throttled value registered against the current hook context slot.
Type Aliases§
- Camera
Error Callback - Type alias for camera error callback.
- Click
Event Handler - Type alias for click event handler.
- Debug
Value Formatter - Type alias for the formatter that produces the displayable string
for an
euv_debugcomponent. - Default
Loading Handle - Helper alias for the common case with the empty
LoadingHintdefault. Use this unless the future wants to surface a typed loading indicator. - Message
Entry - An entry for
I18n::add_messages— a(key, value)pair that the caller usually writes as a single literal array. The tuple form keeps the public API allocation-free for the common “compile-time literal list of pairs” case. - NavEvent
Callback - Type alias for navigation event callback.
- NavItem
Click Callback - Type alias for navigation item click callback.
- QrDetected
Callback - Type alias for QR code detection callback.
- Validator
- A single validator closure, used by
[
FormState::validate]. - Virtual
List Config - Type alias for backward compatibility.
- Virtual
List Item Renderer - Type alias for the virtual list item renderer callback.
- Virtual
List Props - Type alias for backward compatibility.
- Virtual
List Range Handler - Type alias for the visible range change callback.
- Virtual
List Scroll Handler - Type alias for the scroll offset change callback.