@foldkit/ui 0.112.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +67 -0
- package/dist/anchor.d.ts +38 -0
- package/dist/anchor.d.ts.map +1 -0
- package/dist/anchor.js +142 -0
- package/dist/animation/index.d.ts +49 -0
- package/dist/animation/index.d.ts.map +1 -0
- package/dist/animation/index.js +75 -0
- package/dist/animation/public.d.ts +3 -0
- package/dist/animation/public.d.ts.map +1 -0
- package/dist/animation/public.js +1 -0
- package/dist/animation/schema.d.ts +43 -0
- package/dist/animation/schema.d.ts.map +1 -0
- package/dist/animation/schema.js +41 -0
- package/dist/animation/update.d.ts +24 -0
- package/dist/animation/update.d.ts.map +1 -0
- package/dist/animation/update.js +67 -0
- package/dist/button/index.d.ts +17 -0
- package/dist/button/index.d.ts.map +1 -0
- package/dist/button/index.js +22 -0
- package/dist/button/public.d.ts +3 -0
- package/dist/button/public.d.ts.map +1 -0
- package/dist/button/public.js +1 -0
- package/dist/calendar/index.d.ts +462 -0
- package/dist/calendar/index.d.ts.map +1 -0
- package/dist/calendar/index.js +825 -0
- package/dist/calendar/public.d.ts +3 -0
- package/dist/calendar/public.d.ts.map +1 -0
- package/dist/calendar/public.js +1 -0
- package/dist/checkbox/index.d.ts +119 -0
- package/dist/checkbox/index.d.ts.map +1 -0
- package/dist/checkbox/index.js +111 -0
- package/dist/checkbox/public.d.ts +3 -0
- package/dist/checkbox/public.d.ts.map +1 -0
- package/dist/checkbox/public.js +1 -0
- package/dist/combobox/multi.d.ts +183 -0
- package/dist/combobox/multi.d.ts.map +1 -0
- package/dist/combobox/multi.js +81 -0
- package/dist/combobox/multiPublic.d.ts +3 -0
- package/dist/combobox/multiPublic.d.ts.map +1 -0
- package/dist/combobox/multiPublic.js +1 -0
- package/dist/combobox/public.d.ts +7 -0
- package/dist/combobox/public.d.ts.map +1 -0
- package/dist/combobox/public.js +3 -0
- package/dist/combobox/shared.d.ts +423 -0
- package/dist/combobox/shared.d.ts.map +1 -0
- package/dist/combobox/shared.js +708 -0
- package/dist/combobox/single.d.ts +198 -0
- package/dist/combobox/single.d.ts.map +1 -0
- package/dist/combobox/single.js +106 -0
- package/dist/datePicker/index.d.ts +457 -0
- package/dist/datePicker/index.d.ts.map +1 -0
- package/dist/datePicker/index.js +318 -0
- package/dist/datePicker/public.d.ts +3 -0
- package/dist/datePicker/public.d.ts.map +1 -0
- package/dist/datePicker/public.js +1 -0
- package/dist/dialog/index.d.ts +160 -0
- package/dist/dialog/index.d.ts.map +1 -0
- package/dist/dialog/index.js +211 -0
- package/dist/dialog/public.d.ts +3 -0
- package/dist/dialog/public.d.ts.map +1 -0
- package/dist/dialog/public.js +1 -0
- package/dist/disclosure/index.d.ts +110 -0
- package/dist/disclosure/index.d.ts.map +1 -0
- package/dist/disclosure/index.js +111 -0
- package/dist/disclosure/public.d.ts +3 -0
- package/dist/disclosure/public.d.ts.map +1 -0
- package/dist/disclosure/public.js +1 -0
- package/dist/dragAndDrop/index.d.ts +540 -0
- package/dist/dragAndDrop/index.d.ts.map +1 -0
- package/dist/dragAndDrop/index.js +535 -0
- package/dist/dragAndDrop/public.d.ts +3 -0
- package/dist/dragAndDrop/public.d.ts.map +1 -0
- package/dist/dragAndDrop/public.js +1 -0
- package/dist/fieldset/index.d.ts +21 -0
- package/dist/fieldset/index.d.ts.map +1 -0
- package/dist/fieldset/index.js +25 -0
- package/dist/fieldset/public.d.ts +3 -0
- package/dist/fieldset/public.d.ts.map +1 -0
- package/dist/fieldset/public.js +1 -0
- package/dist/fileDrop/index.d.ts +109 -0
- package/dist/fileDrop/index.d.ts.map +1 -0
- package/dist/fileDrop/index.js +127 -0
- package/dist/fileDrop/public.d.ts +3 -0
- package/dist/fileDrop/public.d.ts.map +1 -0
- package/dist/fileDrop/public.js +1 -0
- package/dist/group.d.ts +8 -0
- package/dist/group.d.ts.map +1 -0
- package/dist/group.js +13 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +24 -0
- package/dist/input/index.d.ts +26 -0
- package/dist/input/index.d.ts.map +1 -0
- package/dist/input/index.js +43 -0
- package/dist/input/public.d.ts +3 -0
- package/dist/input/public.d.ts.map +1 -0
- package/dist/input/public.js +1 -0
- package/dist/internal/optionExtensions.d.ts +6 -0
- package/dist/internal/optionExtensions.d.ts.map +1 -0
- package/dist/internal/optionExtensions.js +2 -0
- package/dist/keyboard.d.ts +6 -0
- package/dist/keyboard.d.ts.map +1 -0
- package/dist/keyboard.js +9 -0
- package/dist/listbox/multi.d.ts +189 -0
- package/dist/listbox/multi.d.ts.map +1 -0
- package/dist/listbox/multi.js +65 -0
- package/dist/listbox/multiPublic.d.ts +3 -0
- package/dist/listbox/multiPublic.d.ts.map +1 -0
- package/dist/listbox/multiPublic.js +1 -0
- package/dist/listbox/public.d.ts +7 -0
- package/dist/listbox/public.d.ts.map +1 -0
- package/dist/listbox/public.js +3 -0
- package/dist/listbox/shared.d.ts +432 -0
- package/dist/listbox/shared.d.ts.map +1 -0
- package/dist/listbox/shared.js +670 -0
- package/dist/listbox/single.d.ts +207 -0
- package/dist/listbox/single.d.ts.map +1 -0
- package/dist/listbox/single.js +73 -0
- package/dist/menu/index.d.ts +368 -0
- package/dist/menu/index.d.ts.map +1 -0
- package/dist/menu/index.js +682 -0
- package/dist/menu/public.d.ts +4 -0
- package/dist/menu/public.d.ts.map +1 -0
- package/dist/menu/public.js +1 -0
- package/dist/popover/index.d.ts +267 -0
- package/dist/popover/index.d.ts.map +1 -0
- package/dist/popover/index.js +346 -0
- package/dist/popover/public.d.ts +4 -0
- package/dist/popover/public.d.ts.map +1 -0
- package/dist/popover/public.js +1 -0
- package/dist/radioGroup/index.d.ts +169 -0
- package/dist/radioGroup/index.d.ts.map +1 -0
- package/dist/radioGroup/index.js +197 -0
- package/dist/radioGroup/public.d.ts +3 -0
- package/dist/radioGroup/public.d.ts.map +1 -0
- package/dist/radioGroup/public.js +1 -0
- package/dist/select/index.d.ts +24 -0
- package/dist/select/index.d.ts.map +1 -0
- package/dist/select/index.js +40 -0
- package/dist/select/public.d.ts +3 -0
- package/dist/select/public.d.ts.map +1 -0
- package/dist/select/public.js +1 -0
- package/dist/slider/index.d.ts +318 -0
- package/dist/slider/index.d.ts.map +1 -0
- package/dist/slider/index.js +337 -0
- package/dist/slider/public.d.ts +3 -0
- package/dist/slider/public.d.ts.map +1 -0
- package/dist/slider/public.js +1 -0
- package/dist/switch/index.d.ts +99 -0
- package/dist/switch/index.d.ts.map +1 -0
- package/dist/switch/index.js +107 -0
- package/dist/switch/public.d.ts +3 -0
- package/dist/switch/public.d.ts.map +1 -0
- package/dist/switch/public.js +1 -0
- package/dist/tabs/index.d.ts +155 -0
- package/dist/tabs/index.d.ts.map +1 -0
- package/dist/tabs/index.js +185 -0
- package/dist/tabs/public.d.ts +3 -0
- package/dist/tabs/public.d.ts.map +1 -0
- package/dist/tabs/public.js +1 -0
- package/dist/test/apps/disabledButton.d.ts +38 -0
- package/dist/test/apps/disabledButton.d.ts.map +1 -0
- package/dist/test/apps/disabledButton.js +71 -0
- package/dist/textarea/index.d.ts +26 -0
- package/dist/textarea/index.d.ts.map +1 -0
- package/dist/textarea/index.js +44 -0
- package/dist/textarea/public.d.ts +3 -0
- package/dist/textarea/public.d.ts.map +1 -0
- package/dist/textarea/public.js +1 -0
- package/dist/toast/index.d.ts +608 -0
- package/dist/toast/index.d.ts.map +1 -0
- package/dist/toast/index.js +146 -0
- package/dist/toast/public.d.ts +4 -0
- package/dist/toast/public.d.ts.map +1 -0
- package/dist/toast/public.js +1 -0
- package/dist/toast/schema.d.ts +154 -0
- package/dist/toast/schema.d.ts.map +1 -0
- package/dist/toast/schema.js +93 -0
- package/dist/toast/update.d.ts +510 -0
- package/dist/toast/update.d.ts.map +1 -0
- package/dist/toast/update.js +225 -0
- package/dist/tooltip/index.d.ts +170 -0
- package/dist/tooltip/index.d.ts.map +1 -0
- package/dist/tooltip/index.js +253 -0
- package/dist/tooltip/public.d.ts +4 -0
- package/dist/tooltip/public.d.ts.map +1 -0
- package/dist/tooltip/public.js +1 -0
- package/dist/typeahead.d.ts +4 -0
- package/dist/typeahead.d.ts.map +1 -0
- package/dist/typeahead.js +14 -0
- package/dist/virtualList/index.d.ts +203 -0
- package/dist/virtualList/index.d.ts.map +1 -0
- package/dist/virtualList/index.js +392 -0
- package/dist/virtualList/public.d.ts +3 -0
- package/dist/virtualList/public.d.ts.map +1 -0
- package/dist/virtualList/public.js +1 -0
- package/dist/vitest-setup.d.ts +2 -0
- package/dist/vitest-setup.d.ts.map +1 -0
- package/dist/vitest-setup.js +2 -0
- package/package.json +161 -0
|
@@ -0,0 +1,457 @@
|
|
|
1
|
+
import { Option, Schema as S } from 'effect';
|
|
2
|
+
import * as Calendar from 'foldkit/calendar';
|
|
3
|
+
import type { CalendarDate } from 'foldkit/calendar';
|
|
4
|
+
import * as Command from 'foldkit/command';
|
|
5
|
+
import { type ChildAttribute, type Html } from 'foldkit/html';
|
|
6
|
+
import { type Reflect } from 'foldkit/submodel';
|
|
7
|
+
import type { AnchorConfig } from '../anchor.js';
|
|
8
|
+
import * as UiCalendar from '../calendar/index.js';
|
|
9
|
+
/** Schema for the date picker component's state. Holds the selected date,
|
|
10
|
+
* the embedded Calendar submodel (the visible grid), and the embedded Popover
|
|
11
|
+
* submodel (the open/close + transition layer). */
|
|
12
|
+
export declare const Model: S.Struct<{
|
|
13
|
+
readonly id: S.String;
|
|
14
|
+
readonly maybeSelectedDate: S.Option<S.Struct<{
|
|
15
|
+
readonly year: S.Int;
|
|
16
|
+
readonly month: S.Int;
|
|
17
|
+
readonly day: S.Int;
|
|
18
|
+
}>>;
|
|
19
|
+
readonly calendar: S.Struct<{
|
|
20
|
+
readonly id: S.String;
|
|
21
|
+
readonly today: S.Struct<{
|
|
22
|
+
readonly year: S.Int;
|
|
23
|
+
readonly month: S.Int;
|
|
24
|
+
readonly day: S.Int;
|
|
25
|
+
}>;
|
|
26
|
+
readonly viewYear: S.Int;
|
|
27
|
+
readonly viewMonth: S.Int;
|
|
28
|
+
readonly viewMode: S.Literals<readonly ["Days", "Months", "Years"]>;
|
|
29
|
+
readonly maybeFocusedDate: S.Option<S.Struct<{
|
|
30
|
+
readonly year: S.Int;
|
|
31
|
+
readonly month: S.Int;
|
|
32
|
+
readonly day: S.Int;
|
|
33
|
+
}>>;
|
|
34
|
+
readonly maybeSelectedDate: S.Option<S.Struct<{
|
|
35
|
+
readonly year: S.Int;
|
|
36
|
+
readonly month: S.Int;
|
|
37
|
+
readonly day: S.Int;
|
|
38
|
+
}>>;
|
|
39
|
+
readonly isGridFocused: S.Boolean;
|
|
40
|
+
readonly locale: S.Struct<{
|
|
41
|
+
readonly firstDayOfWeek: S.Literals<readonly ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]>;
|
|
42
|
+
readonly monthNames: S.Tuple<readonly [S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String]>;
|
|
43
|
+
readonly shortMonthNames: S.Tuple<readonly [S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String]>;
|
|
44
|
+
readonly dayNames: S.Tuple<readonly [S.String, S.String, S.String, S.String, S.String, S.String, S.String]>;
|
|
45
|
+
readonly shortDayNames: S.Tuple<readonly [S.String, S.String, S.String, S.String, S.String, S.String, S.String]>;
|
|
46
|
+
}>;
|
|
47
|
+
readonly maybeMinDate: S.Option<S.Struct<{
|
|
48
|
+
readonly year: S.Int;
|
|
49
|
+
readonly month: S.Int;
|
|
50
|
+
readonly day: S.Int;
|
|
51
|
+
}>>;
|
|
52
|
+
readonly maybeMaxDate: S.Option<S.Struct<{
|
|
53
|
+
readonly year: S.Int;
|
|
54
|
+
readonly month: S.Int;
|
|
55
|
+
readonly day: S.Int;
|
|
56
|
+
}>>;
|
|
57
|
+
readonly disabledDaysOfWeek: S.$Array<S.Literals<readonly ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]>>;
|
|
58
|
+
readonly disabledDates: S.$Array<S.Struct<{
|
|
59
|
+
readonly year: S.Int;
|
|
60
|
+
readonly month: S.Int;
|
|
61
|
+
readonly day: S.Int;
|
|
62
|
+
}>>;
|
|
63
|
+
}>;
|
|
64
|
+
readonly popover: S.Struct<{
|
|
65
|
+
readonly id: S.String;
|
|
66
|
+
readonly isOpen: S.Boolean;
|
|
67
|
+
readonly isAnimated: S.Boolean;
|
|
68
|
+
readonly isModal: S.Boolean;
|
|
69
|
+
readonly contentFocus: S.Boolean;
|
|
70
|
+
readonly animation: S.Struct<{
|
|
71
|
+
readonly id: S.String;
|
|
72
|
+
readonly isShowing: S.Boolean;
|
|
73
|
+
readonly transitionState: S.Literals<readonly ["Idle", "EnterStart", "EnterAnimating", "LeaveStart", "LeaveAnimating"]>;
|
|
74
|
+
}>;
|
|
75
|
+
readonly maybeLastButtonPointerType: S.Option<S.String>;
|
|
76
|
+
}>;
|
|
77
|
+
}>;
|
|
78
|
+
export type Model = typeof Model.Type;
|
|
79
|
+
/** Wraps a Calendar submodel message for delegation. */
|
|
80
|
+
export declare const GotCalendarMessage: import("foldkit/schema").CallableTaggedStruct<"GotCalendarMessage", {
|
|
81
|
+
message: S.Union<readonly [import("foldkit/schema").CallableTaggedStruct<"ClickedDay", {
|
|
82
|
+
date: S.Struct<{
|
|
83
|
+
readonly year: S.Int;
|
|
84
|
+
readonly month: S.Int;
|
|
85
|
+
readonly day: S.Int;
|
|
86
|
+
}>;
|
|
87
|
+
}>, import("foldkit/schema").CallableTaggedStruct<"PressedKeyOnGrid", {
|
|
88
|
+
key: S.String;
|
|
89
|
+
isShift: S.Boolean;
|
|
90
|
+
}>, import("foldkit/schema").CallableTaggedStruct<"ClickedPreviousMonthButton", {}>, import("foldkit/schema").CallableTaggedStruct<"ClickedNextMonthButton", {}>, import("foldkit/schema").CallableTaggedStruct<"ClickedHeading", {}>, import("foldkit/schema").CallableTaggedStruct<"SelectedMonth", {
|
|
91
|
+
month: S.Int;
|
|
92
|
+
}>, import("foldkit/schema").CallableTaggedStruct<"SelectedYear", {
|
|
93
|
+
year: S.Int;
|
|
94
|
+
}>, import("foldkit/schema").CallableTaggedStruct<"PagedYears", {
|
|
95
|
+
direction: S.Literals<readonly [1, -1]>;
|
|
96
|
+
}>, import("foldkit/schema").CallableTaggedStruct<"FocusedGrid", {}>, import("foldkit/schema").CallableTaggedStruct<"BlurredGrid", {}>, import("foldkit/schema").CallableTaggedStruct<"RefreshedToday", {
|
|
97
|
+
today: S.Struct<{
|
|
98
|
+
readonly year: S.Int;
|
|
99
|
+
readonly month: S.Int;
|
|
100
|
+
readonly day: S.Int;
|
|
101
|
+
}>;
|
|
102
|
+
}>, import("foldkit/schema").CallableTaggedStruct<"CompletedFocusGrid", {}>]>;
|
|
103
|
+
}>;
|
|
104
|
+
/** Wraps a Popover submodel message for delegation. */
|
|
105
|
+
export declare const GotPopoverMessage: import("foldkit/schema").CallableTaggedStruct<"GotPopoverMessage", {
|
|
106
|
+
message: S.Union<[import("foldkit/schema").CallableTaggedStruct<"RequestedOpen", {}>, import("foldkit/schema").CallableTaggedStruct<"RequestedClose", {}>, import("foldkit/schema").CallableTaggedStruct<"BlurredPanel", {}>, import("foldkit/schema").CallableTaggedStruct<"PressedPointerOnButton", {
|
|
107
|
+
pointerType: S.String;
|
|
108
|
+
button: S.Number;
|
|
109
|
+
}>, import("foldkit/schema").CallableTaggedStruct<"CompletedFocusPanel", {}>, import("foldkit/schema").CallableTaggedStruct<"CompletedFocusButton", {}>, import("foldkit/schema").CallableTaggedStruct<"CompletedLockScroll", {}>, import("foldkit/schema").CallableTaggedStruct<"CompletedUnlockScroll", {}>, import("foldkit/schema").CallableTaggedStruct<"CompletedInertOthers", {}>, import("foldkit/schema").CallableTaggedStruct<"CompletedRestoreInert", {}>, import("foldkit/schema").CallableTaggedStruct<"IgnoredMouseClick", {}>, import("foldkit/schema").CallableTaggedStruct<"SuppressedSpaceScroll", {}>, import("foldkit/schema").CallableTaggedStruct<"CompletedAnchorPopover", {}>, import("foldkit/schema").CallableTaggedStruct<"CompletedPortalPopoverBackdrop", {}>, import("foldkit/schema").CallableTaggedStruct<"GotAnimationMessage", {
|
|
110
|
+
message: S.Union<[import("foldkit/schema").CallableTaggedStruct<"Showed", {}>, import("foldkit/schema").CallableTaggedStruct<"Hid", {}>, import("foldkit/schema").CallableTaggedStruct<"AdvancedAnimationFrame", {}>, import("foldkit/schema").CallableTaggedStruct<"EndedAnimation", {}>]>;
|
|
111
|
+
}>]>;
|
|
112
|
+
}>;
|
|
113
|
+
/** Sent when the user commits a date via click or keyboard. Updates the
|
|
114
|
+
* selected date, syncs the calendar, and closes the popover. */
|
|
115
|
+
export declare const RequestedSelectDate: import("foldkit/schema").CallableTaggedStruct<"RequestedSelectDate", {
|
|
116
|
+
date: S.Struct<{
|
|
117
|
+
readonly year: S.Int;
|
|
118
|
+
readonly month: S.Int;
|
|
119
|
+
readonly day: S.Int;
|
|
120
|
+
}>;
|
|
121
|
+
}>;
|
|
122
|
+
/** Sent when the user clears the selected date. Does not close the popover. */
|
|
123
|
+
export declare const Cleared: import("foldkit/schema").CallableTaggedStruct<"Cleared", {}>;
|
|
124
|
+
/** Sent when the popover should open. Triggers focus-grid on the embedded
|
|
125
|
+
* Calendar so keyboard focus lands inside the grid instead of the panel. */
|
|
126
|
+
export declare const Opened: import("foldkit/schema").CallableTaggedStruct<"Opened", {}>;
|
|
127
|
+
/** Sent when the popover should close. Delegates to Popover which returns
|
|
128
|
+
* focus to the trigger button. */
|
|
129
|
+
export declare const Closed: import("foldkit/schema").CallableTaggedStruct<"Closed", {}>;
|
|
130
|
+
/** Union of all messages the date picker component can produce. */
|
|
131
|
+
export declare const Message: S.Union<[
|
|
132
|
+
typeof GotCalendarMessage,
|
|
133
|
+
typeof GotPopoverMessage,
|
|
134
|
+
typeof RequestedSelectDate,
|
|
135
|
+
typeof Cleared,
|
|
136
|
+
typeof Opened,
|
|
137
|
+
typeof Closed
|
|
138
|
+
]>;
|
|
139
|
+
export type Message = typeof Message.Type;
|
|
140
|
+
/** Emitted when the visible month changes (propagated from the embedded
|
|
141
|
+
* Calendar). Useful for month-scoped data loading. */
|
|
142
|
+
export declare const ChangedViewMonth: import("foldkit/schema").CallableTaggedStruct<"ChangedViewMonth", {
|
|
143
|
+
year: S.Int;
|
|
144
|
+
month: S.Int;
|
|
145
|
+
}>;
|
|
146
|
+
/** Emitted when the user commits a date selection (propagated from the
|
|
147
|
+
* embedded Calendar). The popover has already closed; the parent reads the
|
|
148
|
+
* committed date and lifts it into domain state. */
|
|
149
|
+
export declare const SelectedDate: import("foldkit/schema").CallableTaggedStruct<"SelectedDate", {
|
|
150
|
+
date: S.Struct<{
|
|
151
|
+
readonly year: S.Int;
|
|
152
|
+
readonly month: S.Int;
|
|
153
|
+
readonly day: S.Int;
|
|
154
|
+
}>;
|
|
155
|
+
}>;
|
|
156
|
+
/** Union of out-messages the date picker can produce. */
|
|
157
|
+
export declare const OutMessage: S.Union<readonly [import("foldkit/schema").CallableTaggedStruct<"ChangedViewMonth", {
|
|
158
|
+
year: S.Int;
|
|
159
|
+
month: S.Int;
|
|
160
|
+
}>, import("foldkit/schema").CallableTaggedStruct<"SelectedDate", {
|
|
161
|
+
date: S.Struct<{
|
|
162
|
+
readonly year: S.Int;
|
|
163
|
+
readonly month: S.Int;
|
|
164
|
+
readonly day: S.Int;
|
|
165
|
+
}>;
|
|
166
|
+
}>]>;
|
|
167
|
+
export type OutMessage = typeof OutMessage.Type;
|
|
168
|
+
export type ChangedViewMonth = typeof ChangedViewMonth.Type;
|
|
169
|
+
export type SelectedDate = typeof SelectedDate.Type;
|
|
170
|
+
/** Configuration for creating a date picker model with `init`. */
|
|
171
|
+
export type InitConfig = Readonly<{
|
|
172
|
+
id: string;
|
|
173
|
+
today: CalendarDate;
|
|
174
|
+
initialSelectedDate?: CalendarDate;
|
|
175
|
+
isAnimated?: boolean;
|
|
176
|
+
locale?: Calendar.LocaleConfig;
|
|
177
|
+
minDate?: CalendarDate;
|
|
178
|
+
maxDate?: CalendarDate;
|
|
179
|
+
disabledDaysOfWeek?: ReadonlyArray<Calendar.DayOfWeek>;
|
|
180
|
+
disabledDates?: ReadonlyArray<CalendarDate>;
|
|
181
|
+
}>;
|
|
182
|
+
/** Creates an initial date picker model from a config. The calendar and
|
|
183
|
+
* popover submodels are created with derived ids so their DOM elements stay
|
|
184
|
+
* addressable. The popover is opened in `contentFocus` mode so focus lands on
|
|
185
|
+
* the calendar grid instead of the panel. */
|
|
186
|
+
export declare const init: (config: InitConfig) => Model;
|
|
187
|
+
type UpdateReturn = readonly [
|
|
188
|
+
Model,
|
|
189
|
+
ReadonlyArray<Command.Command<Message>>,
|
|
190
|
+
Option.Option<OutMessage>
|
|
191
|
+
];
|
|
192
|
+
/** Processes a date picker message and returns the next model, commands, and
|
|
193
|
+
* optional OutMessage. */
|
|
194
|
+
export declare const update: (model: Model, message: Message) => UpdateReturn;
|
|
195
|
+
/** Programmatically opens the date picker, updating the model and returning
|
|
196
|
+
* focus and popover commands. Use this in domain-event handlers. */
|
|
197
|
+
export declare const open: (model: Model) => UpdateReturn;
|
|
198
|
+
/** Programmatically closes the date picker. Use this in domain-event handlers. */
|
|
199
|
+
export declare const close: (model: Model) => UpdateReturn;
|
|
200
|
+
/** Programmatically selects a date, committing it and closing the popover. Emits a `SelectedDate` OutMessage just like a user-initiated selection. */
|
|
201
|
+
export declare const selectDate: (model: Model, date: CalendarDate) => UpdateReturn;
|
|
202
|
+
/** Programmatically clears the selected date. */
|
|
203
|
+
export declare const clear: (model: Model) => UpdateReturn;
|
|
204
|
+
/** Reflects an externally-sourced selected date onto the date picker
|
|
205
|
+
* without emitting an OutMessage or touching the popover. Sets the
|
|
206
|
+
* picker's selection and reflects it onto the embedded calendar (moving
|
|
207
|
+
* the calendar's view to the date), mirroring `selectDate`'s state change
|
|
208
|
+
* minus the `SelectedDate` announcement and the popover close. Pass
|
|
209
|
+
* `Option.none()` to clear. Use this to mirror external truth (a URL
|
|
210
|
+
* parameter, a saved draft) onto the picker. Contrast with `selectDate`,
|
|
211
|
+
* a user or programmatic *choice* that emits `SelectedDate`. Returns the
|
|
212
|
+
* model directly because it produces no commands and no OutMessage. */
|
|
213
|
+
export declare const reflectSelectedDate: Reflect<Model, Option.Option<CalendarDate>>;
|
|
214
|
+
/** Reflects the minimum selectable date onto the embedded calendar. Pass
|
|
215
|
+
* `Option.none()` to remove the minimum. Use this when the minimum derives
|
|
216
|
+
* from other Model state (e.g. a start date field whose current selection
|
|
217
|
+
* constrains an end date picker).
|
|
218
|
+
*
|
|
219
|
+
* Does NOT reconcile the current selection. If a previously-selected date
|
|
220
|
+
* is now below the new minimum, it remains selected. Callers should `clear`
|
|
221
|
+
* or reassign the selection explicitly if their domain requires it. */
|
|
222
|
+
export declare const reflectMinDate: Reflect<Model, Option.Option<CalendarDate>>;
|
|
223
|
+
/** Reflects the maximum selectable date onto the embedded calendar. Pass
|
|
224
|
+
* `Option.none()` to remove the maximum. Does NOT reconcile the current
|
|
225
|
+
* selection. */
|
|
226
|
+
export declare const reflectMaxDate: Reflect<Model, Option.Option<CalendarDate>>;
|
|
227
|
+
/** Reflects the list of individually-disabled dates onto the embedded
|
|
228
|
+
* calendar. Pass an empty array to clear. Does NOT reconcile the current
|
|
229
|
+
* selection. */
|
|
230
|
+
export declare const reflectDisabledDates: Reflect<Model, ReadonlyArray<CalendarDate>>;
|
|
231
|
+
/** Reflects the days of the week that are disabled onto the embedded calendar
|
|
232
|
+
* (e.g. weekends). Pass an empty array to clear. Does NOT reconcile the
|
|
233
|
+
* current selection. */
|
|
234
|
+
export declare const reflectDisabledDaysOfWeek: Reflect<Model, ReadonlyArray<Calendar.DayOfWeek>>;
|
|
235
|
+
/** Per-render view inputs passed to `view` via `h.submodel`'s `viewInputs` field.
|
|
236
|
+
*
|
|
237
|
+
* The DatePicker emits a `SelectedDate({ date })` OutMessage when the
|
|
238
|
+
* user commits a date. Consumers pattern-match this in their
|
|
239
|
+
* `GotDatePickerMessage` handler (third tuple element of
|
|
240
|
+
* `DatePicker.update`'s return) to lift the date into domain state. */
|
|
241
|
+
export type ViewInputs = Readonly<{
|
|
242
|
+
anchor: AnchorConfig;
|
|
243
|
+
/** Renders the trigger button's content (typically the formatted selected
|
|
244
|
+
* date or a placeholder). Receives the current selection. */
|
|
245
|
+
triggerContent: (maybeDate: Option.Option<CalendarDate>) => Html;
|
|
246
|
+
/** Renders the calendar grid layout inside the popover panel. The
|
|
247
|
+
* consumer lays out the attribute bundles exactly as they would for
|
|
248
|
+
* an inline calendar. */
|
|
249
|
+
toCalendarView: (attributes: UiCalendar.CalendarAttributes) => Html;
|
|
250
|
+
isDisabled?: boolean;
|
|
251
|
+
/** Name for the hidden form input. When provided, a hidden `<input>` is
|
|
252
|
+
* rendered alongside the trigger so native form submission captures the
|
|
253
|
+
* selected date as an ISO string (`YYYY-MM-DD`). */
|
|
254
|
+
name?: string;
|
|
255
|
+
className?: string;
|
|
256
|
+
attributes?: ReadonlyArray<ChildAttribute>;
|
|
257
|
+
triggerClassName?: string;
|
|
258
|
+
triggerAttributes?: ReadonlyArray<ChildAttribute>;
|
|
259
|
+
panelClassName?: string;
|
|
260
|
+
panelAttributes?: ReadonlyArray<ChildAttribute>;
|
|
261
|
+
backdropClassName?: string;
|
|
262
|
+
backdropAttributes?: ReadonlyArray<ChildAttribute>;
|
|
263
|
+
}>;
|
|
264
|
+
/** Renders an accessible date picker: a trigger button that opens a popover
|
|
265
|
+
* containing an accessible calendar grid. The date picker assembles the
|
|
266
|
+
* embedded Calendar and Popover components into one flat API. Consumers
|
|
267
|
+
* provide the trigger face and the calendar grid layout, DatePicker handles
|
|
268
|
+
* focus choreography, open/close state, and form submission. */
|
|
269
|
+
export declare const view: import("foldkit/submodel").View<{
|
|
270
|
+
readonly id: string;
|
|
271
|
+
readonly maybeSelectedDate: Option.Option<{
|
|
272
|
+
readonly year: number;
|
|
273
|
+
readonly month: number;
|
|
274
|
+
readonly day: number;
|
|
275
|
+
}>;
|
|
276
|
+
readonly calendar: {
|
|
277
|
+
readonly id: string;
|
|
278
|
+
readonly today: {
|
|
279
|
+
readonly year: number;
|
|
280
|
+
readonly month: number;
|
|
281
|
+
readonly day: number;
|
|
282
|
+
};
|
|
283
|
+
readonly viewYear: number;
|
|
284
|
+
readonly viewMonth: number;
|
|
285
|
+
readonly viewMode: "Days" | "Months" | "Years";
|
|
286
|
+
readonly maybeFocusedDate: Option.Option<{
|
|
287
|
+
readonly year: number;
|
|
288
|
+
readonly month: number;
|
|
289
|
+
readonly day: number;
|
|
290
|
+
}>;
|
|
291
|
+
readonly maybeSelectedDate: Option.Option<{
|
|
292
|
+
readonly year: number;
|
|
293
|
+
readonly month: number;
|
|
294
|
+
readonly day: number;
|
|
295
|
+
}>;
|
|
296
|
+
readonly isGridFocused: boolean;
|
|
297
|
+
readonly locale: {
|
|
298
|
+
readonly firstDayOfWeek: "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday";
|
|
299
|
+
readonly monthNames: readonly [string, string, string, string, string, string, string, string, string, string, string, string];
|
|
300
|
+
readonly shortMonthNames: readonly [string, string, string, string, string, string, string, string, string, string, string, string];
|
|
301
|
+
readonly dayNames: readonly [string, string, string, string, string, string, string];
|
|
302
|
+
readonly shortDayNames: readonly [string, string, string, string, string, string, string];
|
|
303
|
+
};
|
|
304
|
+
readonly maybeMinDate: Option.Option<{
|
|
305
|
+
readonly year: number;
|
|
306
|
+
readonly month: number;
|
|
307
|
+
readonly day: number;
|
|
308
|
+
}>;
|
|
309
|
+
readonly maybeMaxDate: Option.Option<{
|
|
310
|
+
readonly year: number;
|
|
311
|
+
readonly month: number;
|
|
312
|
+
readonly day: number;
|
|
313
|
+
}>;
|
|
314
|
+
readonly disabledDaysOfWeek: readonly ("Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday")[];
|
|
315
|
+
readonly disabledDates: readonly {
|
|
316
|
+
readonly year: number;
|
|
317
|
+
readonly month: number;
|
|
318
|
+
readonly day: number;
|
|
319
|
+
}[];
|
|
320
|
+
};
|
|
321
|
+
readonly popover: {
|
|
322
|
+
readonly id: string;
|
|
323
|
+
readonly isOpen: boolean;
|
|
324
|
+
readonly isAnimated: boolean;
|
|
325
|
+
readonly isModal: boolean;
|
|
326
|
+
readonly contentFocus: boolean;
|
|
327
|
+
readonly animation: {
|
|
328
|
+
readonly id: string;
|
|
329
|
+
readonly isShowing: boolean;
|
|
330
|
+
readonly transitionState: "Idle" | "EnterStart" | "EnterAnimating" | "LeaveStart" | "LeaveAnimating";
|
|
331
|
+
};
|
|
332
|
+
readonly maybeLastButtonPointerType: Option.Option<string>;
|
|
333
|
+
};
|
|
334
|
+
}, {
|
|
335
|
+
readonly _tag: "Opened";
|
|
336
|
+
} | {
|
|
337
|
+
readonly _tag: "Closed";
|
|
338
|
+
} | {
|
|
339
|
+
readonly _tag: "GotCalendarMessage";
|
|
340
|
+
readonly message: {
|
|
341
|
+
readonly _tag: "ClickedDay";
|
|
342
|
+
readonly date: {
|
|
343
|
+
readonly year: number;
|
|
344
|
+
readonly month: number;
|
|
345
|
+
readonly day: number;
|
|
346
|
+
};
|
|
347
|
+
} | {
|
|
348
|
+
readonly _tag: "PressedKeyOnGrid";
|
|
349
|
+
readonly key: string;
|
|
350
|
+
readonly isShift: boolean;
|
|
351
|
+
} | {
|
|
352
|
+
readonly _tag: "ClickedPreviousMonthButton";
|
|
353
|
+
} | {
|
|
354
|
+
readonly _tag: "ClickedNextMonthButton";
|
|
355
|
+
} | {
|
|
356
|
+
readonly _tag: "ClickedHeading";
|
|
357
|
+
} | {
|
|
358
|
+
readonly _tag: "SelectedMonth";
|
|
359
|
+
readonly month: number;
|
|
360
|
+
} | {
|
|
361
|
+
readonly _tag: "SelectedYear";
|
|
362
|
+
readonly year: number;
|
|
363
|
+
} | {
|
|
364
|
+
readonly _tag: "PagedYears";
|
|
365
|
+
readonly direction: 1 | -1;
|
|
366
|
+
} | {
|
|
367
|
+
readonly _tag: "FocusedGrid";
|
|
368
|
+
} | {
|
|
369
|
+
readonly _tag: "BlurredGrid";
|
|
370
|
+
} | {
|
|
371
|
+
readonly _tag: "RefreshedToday";
|
|
372
|
+
readonly today: {
|
|
373
|
+
readonly year: number;
|
|
374
|
+
readonly month: number;
|
|
375
|
+
readonly day: number;
|
|
376
|
+
};
|
|
377
|
+
} | {
|
|
378
|
+
readonly _tag: "CompletedFocusGrid";
|
|
379
|
+
};
|
|
380
|
+
} | {
|
|
381
|
+
readonly _tag: "GotPopoverMessage";
|
|
382
|
+
readonly message: {
|
|
383
|
+
readonly _tag: "RequestedOpen";
|
|
384
|
+
} | {
|
|
385
|
+
readonly _tag: "RequestedClose";
|
|
386
|
+
} | {
|
|
387
|
+
readonly _tag: "BlurredPanel";
|
|
388
|
+
} | {
|
|
389
|
+
readonly _tag: "PressedPointerOnButton";
|
|
390
|
+
readonly pointerType: string;
|
|
391
|
+
readonly button: number;
|
|
392
|
+
} | {
|
|
393
|
+
readonly _tag: "CompletedFocusPanel";
|
|
394
|
+
} | {
|
|
395
|
+
readonly _tag: "CompletedFocusButton";
|
|
396
|
+
} | {
|
|
397
|
+
readonly _tag: "CompletedLockScroll";
|
|
398
|
+
} | {
|
|
399
|
+
readonly _tag: "CompletedUnlockScroll";
|
|
400
|
+
} | {
|
|
401
|
+
readonly _tag: "CompletedInertOthers";
|
|
402
|
+
} | {
|
|
403
|
+
readonly _tag: "CompletedRestoreInert";
|
|
404
|
+
} | {
|
|
405
|
+
readonly _tag: "IgnoredMouseClick";
|
|
406
|
+
} | {
|
|
407
|
+
readonly _tag: "SuppressedSpaceScroll";
|
|
408
|
+
} | {
|
|
409
|
+
readonly _tag: "CompletedAnchorPopover";
|
|
410
|
+
} | {
|
|
411
|
+
readonly _tag: "CompletedPortalPopoverBackdrop";
|
|
412
|
+
} | {
|
|
413
|
+
readonly _tag: "GotAnimationMessage";
|
|
414
|
+
readonly message: {
|
|
415
|
+
readonly _tag: "Showed";
|
|
416
|
+
} | {
|
|
417
|
+
readonly _tag: "Hid";
|
|
418
|
+
} | {
|
|
419
|
+
readonly _tag: "AdvancedAnimationFrame";
|
|
420
|
+
} | {
|
|
421
|
+
readonly _tag: "EndedAnimation";
|
|
422
|
+
};
|
|
423
|
+
};
|
|
424
|
+
} | {
|
|
425
|
+
readonly _tag: "RequestedSelectDate";
|
|
426
|
+
readonly date: {
|
|
427
|
+
readonly year: number;
|
|
428
|
+
readonly month: number;
|
|
429
|
+
readonly day: number;
|
|
430
|
+
};
|
|
431
|
+
} | {
|
|
432
|
+
readonly _tag: "Cleared";
|
|
433
|
+
}, Readonly<{
|
|
434
|
+
anchor: AnchorConfig;
|
|
435
|
+
/** Renders the trigger button's content (typically the formatted selected
|
|
436
|
+
* date or a placeholder). Receives the current selection. */
|
|
437
|
+
triggerContent: (maybeDate: Option.Option<CalendarDate>) => Html;
|
|
438
|
+
/** Renders the calendar grid layout inside the popover panel. The
|
|
439
|
+
* consumer lays out the attribute bundles exactly as they would for
|
|
440
|
+
* an inline calendar. */
|
|
441
|
+
toCalendarView: (attributes: UiCalendar.CalendarAttributes) => Html;
|
|
442
|
+
isDisabled?: boolean;
|
|
443
|
+
/** Name for the hidden form input. When provided, a hidden `<input>` is
|
|
444
|
+
* rendered alongside the trigger so native form submission captures the
|
|
445
|
+
* selected date as an ISO string (`YYYY-MM-DD`). */
|
|
446
|
+
name?: string;
|
|
447
|
+
className?: string;
|
|
448
|
+
attributes?: ReadonlyArray<ChildAttribute>;
|
|
449
|
+
triggerClassName?: string;
|
|
450
|
+
triggerAttributes?: ReadonlyArray<ChildAttribute>;
|
|
451
|
+
panelClassName?: string;
|
|
452
|
+
panelAttributes?: ReadonlyArray<ChildAttribute>;
|
|
453
|
+
backdropClassName?: string;
|
|
454
|
+
backdropAttributes?: ReadonlyArray<ChildAttribute>;
|
|
455
|
+
}>>;
|
|
456
|
+
export {};
|
|
457
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/datePicker/index.ts"],"names":[],"mappings":"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"}
|