@@ -3,12 +3,10 @@ use dioxus::prelude::*;
33use dioxus_primitives:: {
44 calendar:: CalendarProps ,
55 date_picker:: { self , DatePickerInputProps , DatePickerProps } ,
6- popover:: { PopoverContent , PopoverContentProps , PopoverRootProps , PopoverTrigger } ,
7- ContentAlign ,
6+ popover:: { PopoverContentProps , PopoverRootProps , PopoverTriggerProps } ,
87} ;
98
109use crate :: components:: calendar:: component:: * ;
11- use time:: UtcDateTime ;
1210
1311#[ component]
1412pub fn DatePicker ( props : DatePickerProps ) -> Element {
@@ -57,14 +55,11 @@ pub fn DatePickerPopover(props: PopoverRootProps) -> Element {
5755}
5856
5957#[ component]
60- pub fn DatePickerPopoverTrigger (
61- #[ props( extends = GlobalAttributes ) ] attributes : Vec < Attribute > ,
62- ) -> Element {
58+ pub fn DatePickerPopoverTrigger ( props : PopoverTriggerProps ) -> Element {
6359 rsx ! {
64- PopoverTrigger {
60+ date_picker :: DatePickerPopoverTrigger {
6561 class: "date-picker-trigger" ,
66- aria_label: "trigger" ,
67- attributes,
62+ attributes: props. attributes,
6863 svg {
6964 class: "date-picker-expand-icon" ,
7065 view_box: "0 0 24 24" ,
@@ -78,11 +73,11 @@ pub fn DatePickerPopoverTrigger(
7873#[ component]
7974pub fn DatePickerPopoverContent ( props : PopoverContentProps ) -> Element {
8075 rsx ! {
81- PopoverContent {
76+ date_picker :: DatePickerPopoverContent {
8277 class: "popover-content" ,
8378 id: props. id,
8479 side: props. side,
85- align: ContentAlign :: End ,
80+ align: props . align ,
8681 attributes: props. attributes,
8782 { props. children}
8883 }
@@ -91,23 +86,16 @@ pub fn DatePickerPopoverContent(props: PopoverContentProps) -> Element {
9186
9287#[ component]
9388pub fn DatePickerCalendar ( props : CalendarProps ) -> Element {
94- let mut view_date = use_signal ( || UtcDateTime :: now ( ) . date ( ) ) ;
95-
96- use_effect ( move || {
97- if let Some ( date) = ( props. selected_date ) ( ) {
98- view_date. set ( date) ;
99- }
100- } ) ;
101-
10289 rsx ! {
103- Calendar {
90+ date_picker:: DatePickerCalendar {
91+ class: "calendar" ,
10492 selected_date: props. selected_date,
10593 on_date_change: props. on_date_change,
10694 on_format_weekday: props. on_format_weekday,
10795 on_format_month: props. on_format_month,
108- view_date: view_date( ) ,
96+ view_date: props . view_date,
10997 today: props. today,
110- on_view_change: move |date| view_date . set ( date ) ,
98+ on_view_change: props . on_view_change ,
11199 disabled: props. disabled,
112100 first_day_of_week: props. first_day_of_week,
113101 min_date: props. min_date,
0 commit comments