pub struct DatetimeLocaleProps {
pub locale: Signal<Locale>,
pub default_format: Signal<DatetimeFormat>,
pub default_timezone: Signal<DatetimeTimezone>,
pub reference_date: Signal<OrbitalDateTime>,
pub children: Children,
}Expand description
Props for the DatetimeLocale component.
Provides locale, format, timezone, and reference-date defaults to picker subtrees.
§Timezone
default_timezone supplies the fallback wall-clock zone for child pickers that do not set
appearance.timezone explicitly. Prefer explicit appearance.timezone on each picker when
the zone is user-controlled (e.g. UTC vs local).
§When to use
- Wrap date/time picker pages so child components share locale defaults
- Set a reference calendar day for time-only pickers
- Share defaults with
SchedulerCalendarevent dialogs inorbital-schedulerthat composeDateTimePicker
§Usage
Wrap picker content and read defaults via use_datetime_locale.
§Best Practices
§Do’s
- Mount the same
DatetimeLocaleon server and client with matching signals for SSR.
§Don’ts
- Do not confuse
Locale(format tag) with scheduler toolbar strings — those useSchedulerLocaleTextinorbital-scheduler.
§Examples
§Default locale shell
Provides baseline locale context and a calendar using localized weekday headers.
use orbital_base_components::{DatetimeFormat, DatetimeTimezone, OrbitalDateTime, TryFromUnixSeconds};
use crate::preview::{PickerPreviewExample, PickerPreviewKnobs};
use crate::DateCalendar;
let locale = Signal::from(Locale::from("fr-FR"));
let default_format = Signal::from(DatetimeFormat::IsoDate);
let default_timezone = Signal::from(DatetimeTimezone::Local);
let reference_date = Signal::from(
OrbitalDateTime::try_from_unix_seconds(1_735_689_600, DatetimeTimezone::Local).expect("valid"),
);
let value = RwSignal::new(None::<OrbitalDateTime>);
view! {
<PickerPreviewExample data_testid="datetime-locale-preview">
<PickerPreviewKnobs />
<DatetimeLocale
locale=locale
default_format=default_format
default_timezone=default_timezone
reference_date=reference_date
>
<DateCalendar bind=value />
<p data-testid="datetime-locale-weekday-sample">
{move || use_datetime_locale_strings().weekday_header_labels()[0].clone()}
</p>
</DatetimeLocale>
</PickerPreviewExample>
}§Required Props
- children:
Children- Subtree that consumes locale defaults.
§Optional Props
- locale:
Signal<Locale>- BCP-47 or Orbital locale id for month names, weekday labels, first day of week.
- default_format:
Signal<DatetimeFormat>- Default display/parse format when appearance does not override.
- default_timezone:
Signal<DatetimeTimezone>- Default timezone for new values and parsing.
- reference_date:
Signal<OrbitalDateTime>- Reference calendar day for time-only pickers.
Fields§
§locale: Signal<Locale>BCP-47 or Orbital locale id for month names, weekday labels, first day of week.
default_format: Signal<DatetimeFormat>Default display/parse format when appearance does not override.
default_timezone: Signal<DatetimeTimezone>Default timezone for new values and parsing.
reference_date: Signal<OrbitalDateTime>Reference calendar day for time-only pickers.
children: ChildrenSubtree that consumes locale defaults.
Implementations§
Source§impl DatetimeLocaleProps
impl DatetimeLocaleProps
Sourcepub fn builder() -> DatetimeLocalePropsBuilder<((), (), (), (), ())>
pub fn builder() -> DatetimeLocalePropsBuilder<((), (), (), (), ())>
Create a builder for building DatetimeLocaleProps.
On the builder, call .locale(...)(optional), .default_format(...)(optional), .default_timezone(...)(optional), .reference_date(...)(optional), .children(...) to set the values of the fields.
Finally, call .build() to create the instance of DatetimeLocaleProps.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for DatetimeLocaleProps
impl !Sync for DatetimeLocaleProps
impl !UnwindSafe for DatetimeLocaleProps
impl Freeze for DatetimeLocaleProps
impl Send for DatetimeLocaleProps
impl Unpin for DatetimeLocaleProps
impl UnsafeUnpin for DatetimeLocaleProps
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other into Self, while performing the appropriate scaling,
rounding and clamping.Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
T.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self into T, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> SerializableKey for T
impl<T> SerializableKey for T
Source§impl<T> StorageAccess<T> for T
impl<T> StorageAccess<T> for T
Source§fn as_borrowed(&self) -> &T
fn as_borrowed(&self) -> &T
Source§fn into_taken(self) -> T
fn into_taken(self) -> T
Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds error is returned which contains
the unclamped color. Read more