@carbon-labs/wc-date-picker 0.2.0 → 0.4.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/es/__stories__/{date-picker.stories.d.ts → date-picker-web-components.stories.d.ts} +5 -5
- package/{lib/state-machine → es}/adapters/web-component-adapter.d.ts +3 -3
- package/es/{state-machine/adapters → adapters}/web-component-adapter.js +1 -4
- package/es/adapters/web-component-adapter.js.map +1 -0
- package/es/components/{date-picker/calendar-renderer.js → calendar-renderer.js} +9 -9
- package/es/components/calendar-renderer.js.map +1 -0
- package/es/components/{date-picker/date-picker-input-skeleton.js → date-picker-input-skeleton.js} +2 -2
- package/es/components/date-picker-input-skeleton.js.map +1 -0
- package/es/components/{date-picker/date-picker-input.js → date-picker-input.js} +5 -5
- package/es/components/date-picker-input.js.map +1 -0
- package/es/components/{date-picker/date-picker.d.ts → date-picker.d.ts} +6 -3
- package/es/components/{date-picker/date-picker.js → date-picker.js} +69 -137
- package/es/components/date-picker.js.map +1 -0
- package/es/components/{date-picker/date-picker.scss.js → date-picker.scss.js} +1 -1
- package/{lib/components/date-picker → es/components}/defs.d.ts +1 -1
- package/es/components/{date-picker/defs.js → defs.js} +1 -1
- package/es/components/defs.js.map +1 -0
- package/es/index.d.ts +5 -4
- package/es/index.js +5 -4
- package/es/index.js.map +1 -1
- package/lib/__stories__/{date-picker.stories.d.ts → date-picker-web-components.stories.d.ts} +5 -5
- package/{es/state-machine → lib}/adapters/web-component-adapter.d.ts +3 -3
- package/lib/{state-machine/adapters → adapters}/web-component-adapter.js +24 -27
- package/lib/adapters/web-component-adapter.js.map +1 -0
- package/lib/components/{date-picker/calendar-renderer.js → calendar-renderer.js} +11 -11
- package/lib/components/calendar-renderer.js.map +1 -0
- package/lib/components/{date-picker/date-picker-input-skeleton.js → date-picker-input-skeleton.js} +2 -2
- package/lib/components/date-picker-input-skeleton.js.map +1 -0
- package/lib/components/{date-picker/date-picker-input.js → date-picker-input.js} +5 -5
- package/lib/components/date-picker-input.js.map +1 -0
- package/lib/components/{date-picker/date-picker.d.ts → date-picker.d.ts} +6 -3
- package/lib/components/{date-picker/date-picker.js → date-picker.js} +105 -173
- package/lib/components/date-picker.js.map +1 -0
- package/lib/components/{date-picker/date-picker.scss.js → date-picker.scss.js} +1 -1
- package/{es/components/date-picker → lib/components}/defs.d.ts +1 -1
- package/lib/components/{date-picker/defs.js → defs.js} +1 -1
- package/lib/components/defs.js.map +1 -0
- package/lib/index.d.ts +5 -4
- package/lib/index.js +13 -4
- package/lib/index.js.map +1 -1
- package/package.json +4 -3
- package/es/components/date-picker/calendar-renderer.js.map +0 -1
- package/es/components/date-picker/date-picker-input-skeleton.js.map +0 -1
- package/es/components/date-picker/date-picker-input.js.map +0 -1
- package/es/components/date-picker/date-picker.js.map +0 -1
- package/es/components/date-picker/defs.js.map +0 -1
- package/es/state-machine/actions.d.ts +0 -35
- package/es/state-machine/actions.js +0 -860
- package/es/state-machine/actions.js.map +0 -1
- package/es/state-machine/adapters/web-component-adapter.js.map +0 -1
- package/es/state-machine/effects.d.ts +0 -35
- package/es/state-machine/effects.js +0 -92
- package/es/state-machine/effects.js.map +0 -1
- package/es/state-machine/guards.d.ts +0 -41
- package/es/state-machine/guards.js +0 -143
- package/es/state-machine/guards.js.map +0 -1
- package/es/state-machine/index.d.ts +0 -12
- package/es/state-machine/machine.d.ts +0 -92
- package/es/state-machine/machine.js +0 -272
- package/es/state-machine/machine.js.map +0 -1
- package/es/state-machine/states.d.ts +0 -89
- package/es/state-machine/states.js +0 -105
- package/es/state-machine/states.js.map +0 -1
- package/es/state-machine/temporal-utils.d.ts +0 -203
- package/es/state-machine/temporal-utils.js +0 -128
- package/es/state-machine/temporal-utils.js.map +0 -1
- package/es/state-machine/types.d.ts +0 -163
- package/lib/components/date-picker/calendar-renderer.js.map +0 -1
- package/lib/components/date-picker/date-picker-input-skeleton.js.map +0 -1
- package/lib/components/date-picker/date-picker-input.js.map +0 -1
- package/lib/components/date-picker/date-picker.js.map +0 -1
- package/lib/components/date-picker/defs.js.map +0 -1
- package/lib/state-machine/actions.d.ts +0 -35
- package/lib/state-machine/actions.js +0 -864
- package/lib/state-machine/actions.js.map +0 -1
- package/lib/state-machine/adapters/web-component-adapter.js.map +0 -1
- package/lib/state-machine/effects.d.ts +0 -35
- package/lib/state-machine/effects.js +0 -96
- package/lib/state-machine/effects.js.map +0 -1
- package/lib/state-machine/guards.d.ts +0 -41
- package/lib/state-machine/guards.js +0 -147
- package/lib/state-machine/guards.js.map +0 -1
- package/lib/state-machine/index.d.ts +0 -12
- package/lib/state-machine/machine.d.ts +0 -92
- package/lib/state-machine/machine.js +0 -274
- package/lib/state-machine/machine.js.map +0 -1
- package/lib/state-machine/states.d.ts +0 -89
- package/lib/state-machine/states.js +0 -105
- package/lib/state-machine/states.js.map +0 -1
- package/lib/state-machine/temporal-utils.d.ts +0 -203
- package/lib/state-machine/temporal-utils.js +0 -136
- package/lib/state-machine/temporal-utils.js.map +0 -1
- package/lib/state-machine/types.d.ts +0 -163
- /package/es/components/{date-picker/calendar-renderer.d.ts → calendar-renderer.d.ts} +0 -0
- /package/es/components/{date-picker/date-picker-input-skeleton.d.ts → date-picker-input-skeleton.d.ts} +0 -0
- /package/es/components/{date-picker/date-picker-input.d.ts → date-picker-input.d.ts} +0 -0
- /package/es/components/{date-picker/date-picker.scss.js.map → date-picker.scss.js.map} +0 -0
- /package/lib/components/{date-picker/calendar-renderer.d.ts → calendar-renderer.d.ts} +0 -0
- /package/lib/components/{date-picker/date-picker-input-skeleton.d.ts → date-picker-input-skeleton.d.ts} +0 -0
- /package/lib/components/{date-picker/date-picker-input.d.ts → date-picker-input.d.ts} +0 -0
- /package/lib/components/{date-picker/date-picker.scss.js.map → date-picker.scss.js.map} +0 -0
|
@@ -1,272 +0,0 @@
|
|
|
1
|
-
import { DatePickerState, DatePickerEvent } from './states.js';
|
|
2
|
-
import { checkGuard } from './guards.js';
|
|
3
|
-
import { executeAction } from './actions.js';
|
|
4
|
-
import { executeEffect } from './effects.js';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Copyright IBM Corp. 2026
|
|
8
|
-
*
|
|
9
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
10
|
-
* LICENSE file in the root directory of this source tree.
|
|
11
|
-
*/
|
|
12
|
-
/**
|
|
13
|
-
* State transition configuration
|
|
14
|
-
* Maps the current state + event type to the next state
|
|
15
|
-
*/
|
|
16
|
-
const stateTransitions = {
|
|
17
|
-
[DatePickerState.IDLE]: {
|
|
18
|
-
[DatePickerEvent.INPUT_FOCUS]: DatePickerState.FOCUSED,
|
|
19
|
-
[DatePickerEvent.CALENDAR_ICON_CLICK]: DatePickerState.CALENDAR_OPEN,
|
|
20
|
-
[DatePickerEvent.DISABLE]: DatePickerState.DISABLED,
|
|
21
|
-
[DatePickerEvent.SET_READONLY]: DatePickerState.READONLY,
|
|
22
|
-
},
|
|
23
|
-
[DatePickerState.FOCUSED]: {
|
|
24
|
-
[DatePickerEvent.INPUT_BLUR]: DatePickerState.IDLE,
|
|
25
|
-
[DatePickerEvent.CALENDAR_OPEN]: DatePickerState.CALENDAR_OPEN,
|
|
26
|
-
[DatePickerEvent.DISABLE]: DatePickerState.DISABLED,
|
|
27
|
-
},
|
|
28
|
-
[DatePickerState.CALENDAR_OPEN]: {
|
|
29
|
-
[DatePickerEvent.DATE_SELECT]: DatePickerState.DATE_SELECTED,
|
|
30
|
-
[DatePickerEvent.RANGE_START_SELECT]: DatePickerState.SELECTING_END,
|
|
31
|
-
[DatePickerEvent.OUTSIDE_CLICK]: DatePickerState.IDLE,
|
|
32
|
-
[DatePickerEvent.ESCAPE_KEY]: DatePickerState.FOCUSED,
|
|
33
|
-
[DatePickerEvent.TAB_KEY]: DatePickerState.IDLE,
|
|
34
|
-
[DatePickerEvent.CALENDAR_CLOSE]: DatePickerState.FOCUSED,
|
|
35
|
-
[DatePickerEvent.PREV_MONTH]: DatePickerState.CALENDAR_OPEN,
|
|
36
|
-
[DatePickerEvent.NEXT_MONTH]: DatePickerState.CALENDAR_OPEN,
|
|
37
|
-
[DatePickerEvent.PREV_YEAR]: DatePickerState.CALENDAR_OPEN,
|
|
38
|
-
[DatePickerEvent.NEXT_YEAR]: DatePickerState.CALENDAR_OPEN,
|
|
39
|
-
[DatePickerEvent.GO_TO_TODAY]: DatePickerState.CALENDAR_OPEN,
|
|
40
|
-
// Keyboard navigation
|
|
41
|
-
[DatePickerEvent.ARROW_UP]: DatePickerState.CALENDAR_OPEN,
|
|
42
|
-
[DatePickerEvent.ARROW_DOWN]: DatePickerState.CALENDAR_OPEN,
|
|
43
|
-
[DatePickerEvent.ARROW_LEFT]: DatePickerState.CALENDAR_OPEN,
|
|
44
|
-
[DatePickerEvent.ARROW_RIGHT]: DatePickerState.CALENDAR_OPEN,
|
|
45
|
-
[DatePickerEvent.PAGE_UP]: DatePickerState.CALENDAR_OPEN,
|
|
46
|
-
[DatePickerEvent.PAGE_DOWN]: DatePickerState.CALENDAR_OPEN,
|
|
47
|
-
[DatePickerEvent.HOME_KEY]: DatePickerState.CALENDAR_OPEN,
|
|
48
|
-
[DatePickerEvent.END_KEY]: DatePickerState.CALENDAR_OPEN,
|
|
49
|
-
// ENTER_KEY is handled by guards - will dispatch DATE_SELECT or RANGE_START_SELECT
|
|
50
|
-
},
|
|
51
|
-
[DatePickerState.SELECTING_START]: {
|
|
52
|
-
[DatePickerEvent.RANGE_START_SELECT]: DatePickerState.SELECTING_END,
|
|
53
|
-
[DatePickerEvent.OUTSIDE_CLICK]: DatePickerState.IDLE,
|
|
54
|
-
[DatePickerEvent.ESCAPE_KEY]: DatePickerState.FOCUSED,
|
|
55
|
-
},
|
|
56
|
-
[DatePickerState.SELECTING_END]: {
|
|
57
|
-
[DatePickerEvent.RANGE_END_SELECT]: DatePickerState.DATE_SELECTED,
|
|
58
|
-
[DatePickerEvent.RANGE_START_SELECT]: DatePickerState.SELECTING_END,
|
|
59
|
-
[DatePickerEvent.OUTSIDE_CLICK]: DatePickerState.IDLE,
|
|
60
|
-
[DatePickerEvent.ESCAPE_KEY]: DatePickerState.FOCUSED,
|
|
61
|
-
[DatePickerEvent.TAB_KEY]: DatePickerState.IDLE,
|
|
62
|
-
// Keyboard navigation
|
|
63
|
-
[DatePickerEvent.ARROW_UP]: DatePickerState.SELECTING_END,
|
|
64
|
-
[DatePickerEvent.ARROW_DOWN]: DatePickerState.SELECTING_END,
|
|
65
|
-
[DatePickerEvent.ARROW_LEFT]: DatePickerState.SELECTING_END,
|
|
66
|
-
[DatePickerEvent.ARROW_RIGHT]: DatePickerState.SELECTING_END,
|
|
67
|
-
[DatePickerEvent.PAGE_UP]: DatePickerState.SELECTING_END,
|
|
68
|
-
[DatePickerEvent.PAGE_DOWN]: DatePickerState.SELECTING_END,
|
|
69
|
-
[DatePickerEvent.HOME_KEY]: DatePickerState.SELECTING_END,
|
|
70
|
-
[DatePickerEvent.END_KEY]: DatePickerState.SELECTING_END,
|
|
71
|
-
[DatePickerEvent.ENTER_KEY]: DatePickerState.DATE_SELECTED,
|
|
72
|
-
[DatePickerEvent.PREV_MONTH]: DatePickerState.SELECTING_END,
|
|
73
|
-
[DatePickerEvent.NEXT_MONTH]: DatePickerState.SELECTING_END,
|
|
74
|
-
},
|
|
75
|
-
[DatePickerState.DATE_SELECTED]: {
|
|
76
|
-
[DatePickerEvent.CALENDAR_CLOSE]: DatePickerState.IDLE,
|
|
77
|
-
[DatePickerEvent.INPUT_FOCUS]: DatePickerState.FOCUSED,
|
|
78
|
-
},
|
|
79
|
-
[DatePickerState.DISABLED]: {
|
|
80
|
-
[DatePickerEvent.ENABLE]: DatePickerState.IDLE,
|
|
81
|
-
},
|
|
82
|
-
[DatePickerState.READONLY]: {
|
|
83
|
-
[DatePickerEvent.UNSET_READONLY]: DatePickerState.IDLE,
|
|
84
|
-
},
|
|
85
|
-
[DatePickerState.ERROR]: {
|
|
86
|
-
[DatePickerEvent.VALUE_CHANGE]: DatePickerState.IDLE,
|
|
87
|
-
[DatePickerEvent.CLEAR_ERROR]: DatePickerState.IDLE,
|
|
88
|
-
},
|
|
89
|
-
};
|
|
90
|
-
/**
|
|
91
|
-
* Date picker state machine
|
|
92
|
-
* Manages state transitions and context updates for the date picker
|
|
93
|
-
*/
|
|
94
|
-
class DatePickerStateMachine {
|
|
95
|
-
/**
|
|
96
|
-
* Create a new date picker state machine
|
|
97
|
-
*
|
|
98
|
-
* @param {Partial<DatePickerContext>} initialContext - Initial context values
|
|
99
|
-
*/
|
|
100
|
-
constructor(initialContext = {}) {
|
|
101
|
-
this.listeners = new Set();
|
|
102
|
-
this.currentState = DatePickerState.IDLE;
|
|
103
|
-
this.context = this.createInitialContext(initialContext);
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Create initial context with defaults
|
|
107
|
-
*
|
|
108
|
-
* @param {Partial<DatePickerContext>} partial - Partial context to merge with defaults
|
|
109
|
-
* @returns Complete context object
|
|
110
|
-
*/
|
|
111
|
-
createInitialContext(partial) {
|
|
112
|
-
return {
|
|
113
|
-
mode: 'single',
|
|
114
|
-
value: '',
|
|
115
|
-
startDate: null,
|
|
116
|
-
endDate: null,
|
|
117
|
-
isOpen: false,
|
|
118
|
-
isFocused: false,
|
|
119
|
-
isDisabled: false,
|
|
120
|
-
isReadonly: false,
|
|
121
|
-
isInvalid: false,
|
|
122
|
-
lastFocusedInput: null,
|
|
123
|
-
minDate: null,
|
|
124
|
-
maxDate: null,
|
|
125
|
-
dateFormat: 'm/d/Y',
|
|
126
|
-
allowInput: true,
|
|
127
|
-
closeOnSelect: true,
|
|
128
|
-
viewDate: null,
|
|
129
|
-
focusedDate: null,
|
|
130
|
-
...partial,
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Send an event to the state machine
|
|
135
|
-
* This is the primary method for triggering state transitions
|
|
136
|
-
*
|
|
137
|
-
* @param {string} eventType - The type of event to send
|
|
138
|
-
* @param {any} payload - Optional event payload
|
|
139
|
-
* @returns The updated context
|
|
140
|
-
*/
|
|
141
|
-
send(eventType, payload) {
|
|
142
|
-
const event = {
|
|
143
|
-
type: eventType,
|
|
144
|
-
payload,
|
|
145
|
-
timestamp: Date.now(),
|
|
146
|
-
};
|
|
147
|
-
const nextState = this.getNextState(this.currentState, event);
|
|
148
|
-
if (!nextState) {
|
|
149
|
-
// No valid transition, return current context
|
|
150
|
-
return this.context;
|
|
151
|
-
}
|
|
152
|
-
// Check guards
|
|
153
|
-
if (!checkGuard(nextState, event.type, this.context, event)) {
|
|
154
|
-
return this.context;
|
|
155
|
-
}
|
|
156
|
-
// Execute actions to update context
|
|
157
|
-
// Actions are defined for the current state, not the next state
|
|
158
|
-
const contextUpdates = executeAction(this.currentState, event.type, this.context, event);
|
|
159
|
-
const newContext = {
|
|
160
|
-
...this.context,
|
|
161
|
-
...contextUpdates,
|
|
162
|
-
};
|
|
163
|
-
// Create a transition object
|
|
164
|
-
const stateTransition = {
|
|
165
|
-
from: this.currentState,
|
|
166
|
-
to: nextState,
|
|
167
|
-
event,
|
|
168
|
-
context: newContext,
|
|
169
|
-
};
|
|
170
|
-
// Update state
|
|
171
|
-
this.currentState;
|
|
172
|
-
this.currentState = nextState;
|
|
173
|
-
this.context = newContext;
|
|
174
|
-
// Execute side effects
|
|
175
|
-
executeEffect(nextState, event.type, this.context, event);
|
|
176
|
-
// Notify listeners
|
|
177
|
-
this.notifyListeners(stateTransition);
|
|
178
|
-
return this.context;
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* Get the current state
|
|
182
|
-
*
|
|
183
|
-
* @returns The current state
|
|
184
|
-
*/
|
|
185
|
-
getState() {
|
|
186
|
-
return this.currentState;
|
|
187
|
-
}
|
|
188
|
-
/**
|
|
189
|
-
* Get the current context
|
|
190
|
-
*
|
|
191
|
-
* @returns A copy of the current context
|
|
192
|
-
*/
|
|
193
|
-
getContext() {
|
|
194
|
-
return { ...this.context };
|
|
195
|
-
}
|
|
196
|
-
/**
|
|
197
|
-
* Update context directly (use sparingly)
|
|
198
|
-
*
|
|
199
|
-
* @param {Partial<DatePickerContext>} updates - Partial context updates
|
|
200
|
-
* @returns The updated context
|
|
201
|
-
*/
|
|
202
|
-
updateContext(updates) {
|
|
203
|
-
this.context = {
|
|
204
|
-
...this.context,
|
|
205
|
-
...updates,
|
|
206
|
-
};
|
|
207
|
-
return this.context;
|
|
208
|
-
}
|
|
209
|
-
/**
|
|
210
|
-
* Subscribe to state transitions
|
|
211
|
-
*
|
|
212
|
-
* @param {TransitionListener} listener - Function to call on each transition
|
|
213
|
-
* @returns Unsubscribe function
|
|
214
|
-
*/
|
|
215
|
-
subscribe(listener) {
|
|
216
|
-
this.listeners.add(listener);
|
|
217
|
-
return () => this.listeners.delete(listener);
|
|
218
|
-
}
|
|
219
|
-
/**
|
|
220
|
-
* Check if a transition is valid from the current state
|
|
221
|
-
*
|
|
222
|
-
* @param {string} eventType - The event type to check
|
|
223
|
-
* @returns True if the transition is valid
|
|
224
|
-
*/
|
|
225
|
-
canTransition(eventType) {
|
|
226
|
-
const event = { type: eventType, timestamp: Date.now() };
|
|
227
|
-
const nextState = this.getNextState(this.currentState, event);
|
|
228
|
-
if (!nextState) {
|
|
229
|
-
return false;
|
|
230
|
-
}
|
|
231
|
-
return checkGuard(nextState, eventType, this.context, event);
|
|
232
|
-
}
|
|
233
|
-
/**
|
|
234
|
-
* Get the next state for a given event
|
|
235
|
-
*
|
|
236
|
-
* @param {DatePickerState} from - Current state
|
|
237
|
-
* @param {DatePickerEvent} event - The event
|
|
238
|
-
* @returns Next state or null if no transition exists
|
|
239
|
-
*/
|
|
240
|
-
getNextState(from, event) {
|
|
241
|
-
const transitions = stateTransitions[from];
|
|
242
|
-
if (!transitions) {
|
|
243
|
-
return null;
|
|
244
|
-
}
|
|
245
|
-
const nextState = transitions[event.type];
|
|
246
|
-
if (!nextState) {
|
|
247
|
-
return null;
|
|
248
|
-
}
|
|
249
|
-
return nextState;
|
|
250
|
-
}
|
|
251
|
-
/**
|
|
252
|
-
* Notify all listeners of a state transition
|
|
253
|
-
*
|
|
254
|
-
* @param {StateTransition} transition - The state transition
|
|
255
|
-
*/
|
|
256
|
-
notifyListeners(transition) {
|
|
257
|
-
this.listeners.forEach((listener) => listener(transition));
|
|
258
|
-
}
|
|
259
|
-
/**
|
|
260
|
-
* Reset the state machine to initial state
|
|
261
|
-
*
|
|
262
|
-
* @param {Partial<DatePickerContext>} initialContext - Optional new initial context
|
|
263
|
-
*/
|
|
264
|
-
reset(initialContext) {
|
|
265
|
-
this.currentState = DatePickerState.IDLE;
|
|
266
|
-
this.context = this.createInitialContext(initialContext || {});
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
// Made with Bob
|
|
270
|
-
|
|
271
|
-
export { DatePickerStateMachine };
|
|
272
|
-
//# sourceMappingURL=machine.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"machine.js","sources":["../../../state-machine/machine.ts"],"sourcesContent":[null],"names":["DatePickerEventEnum"],"mappings":"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"}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright IBM Corp. 2026
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
-
* LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Date picker state machine states
|
|
9
|
-
*/
|
|
10
|
-
export declare enum DatePickerState {
|
|
11
|
-
/**
|
|
12
|
-
* Initial state - calendar closed, no focus
|
|
13
|
-
*/
|
|
14
|
-
IDLE = "idle",
|
|
15
|
-
/**
|
|
16
|
-
* Input has focus, calendar closed
|
|
17
|
-
*/
|
|
18
|
-
FOCUSED = "focused",
|
|
19
|
-
/**
|
|
20
|
-
* Calendar dropdown is open
|
|
21
|
-
*/
|
|
22
|
-
CALENDAR_OPEN = "calendar_open",
|
|
23
|
-
/**
|
|
24
|
-
* User is selecting the start date (range mode)
|
|
25
|
-
*/
|
|
26
|
-
SELECTING_START = "selecting_start",
|
|
27
|
-
/**
|
|
28
|
-
* User is selecting the end date (range mode)
|
|
29
|
-
*/
|
|
30
|
-
SELECTING_END = "selecting_end",
|
|
31
|
-
/**
|
|
32
|
-
* Date(s) have been selected
|
|
33
|
-
*/
|
|
34
|
-
DATE_SELECTED = "date_selected",
|
|
35
|
-
/**
|
|
36
|
-
* Component is disabled
|
|
37
|
-
*/
|
|
38
|
-
DISABLED = "disabled",
|
|
39
|
-
/**
|
|
40
|
-
* Component is read-only
|
|
41
|
-
*/
|
|
42
|
-
READONLY = "readonly",
|
|
43
|
-
/**
|
|
44
|
-
* Component is in an error state
|
|
45
|
-
*/
|
|
46
|
-
ERROR = "error"
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Date picker events
|
|
50
|
-
*/
|
|
51
|
-
export declare enum DatePickerEvent {
|
|
52
|
-
INPUT_FOCUS = "INPUT_FOCUS",
|
|
53
|
-
INPUT_BLUR = "INPUT_BLUR",
|
|
54
|
-
INPUT_CHANGE = "INPUT_CHANGE",
|
|
55
|
-
CALENDAR_ICON_CLICK = "CALENDAR_ICON_CLICK",
|
|
56
|
-
CALENDAR_OPEN = "CALENDAR_OPEN",
|
|
57
|
-
CALENDAR_CLOSE = "CALENDAR_CLOSE",
|
|
58
|
-
PREV_MONTH = "PREV_MONTH",
|
|
59
|
-
NEXT_MONTH = "NEXT_MONTH",
|
|
60
|
-
PREV_YEAR = "PREV_YEAR",
|
|
61
|
-
NEXT_YEAR = "NEXT_YEAR",
|
|
62
|
-
GO_TO_TODAY = "GO_TO_TODAY",
|
|
63
|
-
DATE_SELECT = "DATE_SELECT",
|
|
64
|
-
RANGE_START_SELECT = "RANGE_START_SELECT",
|
|
65
|
-
RANGE_END_SELECT = "RANGE_END_SELECT",
|
|
66
|
-
OUTSIDE_CLICK = "OUTSIDE_CLICK",
|
|
67
|
-
ESCAPE_KEY = "ESCAPE_KEY",
|
|
68
|
-
TAB_KEY = "TAB_KEY",
|
|
69
|
-
SHIFT_TAB_KEY = "SHIFT_TAB_KEY",
|
|
70
|
-
ENTER_KEY = "ENTER_KEY",
|
|
71
|
-
ARROW_UP = "ARROW_UP",
|
|
72
|
-
ARROW_DOWN = "ARROW_DOWN",
|
|
73
|
-
ARROW_LEFT = "ARROW_LEFT",
|
|
74
|
-
ARROW_RIGHT = "ARROW_RIGHT",
|
|
75
|
-
PAGE_UP = "PAGE_UP",
|
|
76
|
-
PAGE_DOWN = "PAGE_DOWN",
|
|
77
|
-
HOME_KEY = "HOME_KEY",
|
|
78
|
-
END_KEY = "END_KEY",
|
|
79
|
-
DISABLE = "DISABLE",
|
|
80
|
-
ENABLE = "ENABLE",
|
|
81
|
-
SET_READONLY = "SET_READONLY",
|
|
82
|
-
UNSET_READONLY = "UNSET_READONLY",
|
|
83
|
-
VALUE_CHANGE = "VALUE_CHANGE",
|
|
84
|
-
VALIDATION_ERROR = "VALIDATION_ERROR",
|
|
85
|
-
CLEAR_ERROR = "CLEAR_ERROR",
|
|
86
|
-
SET_MIN_DATE = "SET_MIN_DATE",
|
|
87
|
-
SET_MAX_DATE = "SET_MAX_DATE",
|
|
88
|
-
SET_DATE_FORMAT = "SET_DATE_FORMAT"
|
|
89
|
-
}
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright IBM Corp. 2026
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
-
* LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Date picker state machine states
|
|
9
|
-
*/
|
|
10
|
-
var DatePickerState;
|
|
11
|
-
(function (DatePickerState) {
|
|
12
|
-
/**
|
|
13
|
-
* Initial state - calendar closed, no focus
|
|
14
|
-
*/
|
|
15
|
-
DatePickerState["IDLE"] = "idle";
|
|
16
|
-
/**
|
|
17
|
-
* Input has focus, calendar closed
|
|
18
|
-
*/
|
|
19
|
-
DatePickerState["FOCUSED"] = "focused";
|
|
20
|
-
/**
|
|
21
|
-
* Calendar dropdown is open
|
|
22
|
-
*/
|
|
23
|
-
DatePickerState["CALENDAR_OPEN"] = "calendar_open";
|
|
24
|
-
/**
|
|
25
|
-
* User is selecting the start date (range mode)
|
|
26
|
-
*/
|
|
27
|
-
DatePickerState["SELECTING_START"] = "selecting_start";
|
|
28
|
-
/**
|
|
29
|
-
* User is selecting the end date (range mode)
|
|
30
|
-
*/
|
|
31
|
-
DatePickerState["SELECTING_END"] = "selecting_end";
|
|
32
|
-
/**
|
|
33
|
-
* Date(s) have been selected
|
|
34
|
-
*/
|
|
35
|
-
DatePickerState["DATE_SELECTED"] = "date_selected";
|
|
36
|
-
/**
|
|
37
|
-
* Component is disabled
|
|
38
|
-
*/
|
|
39
|
-
DatePickerState["DISABLED"] = "disabled";
|
|
40
|
-
/**
|
|
41
|
-
* Component is read-only
|
|
42
|
-
*/
|
|
43
|
-
DatePickerState["READONLY"] = "readonly";
|
|
44
|
-
/**
|
|
45
|
-
* Component is in an error state
|
|
46
|
-
*/
|
|
47
|
-
DatePickerState["ERROR"] = "error";
|
|
48
|
-
})(DatePickerState || (DatePickerState = {}));
|
|
49
|
-
/**
|
|
50
|
-
* Date picker events
|
|
51
|
-
*/
|
|
52
|
-
var DatePickerEvent;
|
|
53
|
-
(function (DatePickerEvent) {
|
|
54
|
-
// Input events
|
|
55
|
-
DatePickerEvent["INPUT_FOCUS"] = "INPUT_FOCUS";
|
|
56
|
-
DatePickerEvent["INPUT_BLUR"] = "INPUT_BLUR";
|
|
57
|
-
DatePickerEvent["INPUT_CHANGE"] = "INPUT_CHANGE";
|
|
58
|
-
// Calendar events
|
|
59
|
-
DatePickerEvent["CALENDAR_ICON_CLICK"] = "CALENDAR_ICON_CLICK";
|
|
60
|
-
DatePickerEvent["CALENDAR_OPEN"] = "CALENDAR_OPEN";
|
|
61
|
-
DatePickerEvent["CALENDAR_CLOSE"] = "CALENDAR_CLOSE";
|
|
62
|
-
// Calendar navigation events
|
|
63
|
-
DatePickerEvent["PREV_MONTH"] = "PREV_MONTH";
|
|
64
|
-
DatePickerEvent["NEXT_MONTH"] = "NEXT_MONTH";
|
|
65
|
-
DatePickerEvent["PREV_YEAR"] = "PREV_YEAR";
|
|
66
|
-
DatePickerEvent["NEXT_YEAR"] = "NEXT_YEAR";
|
|
67
|
-
DatePickerEvent["GO_TO_TODAY"] = "GO_TO_TODAY";
|
|
68
|
-
// Date selection events
|
|
69
|
-
DatePickerEvent["DATE_SELECT"] = "DATE_SELECT";
|
|
70
|
-
DatePickerEvent["RANGE_START_SELECT"] = "RANGE_START_SELECT";
|
|
71
|
-
DatePickerEvent["RANGE_END_SELECT"] = "RANGE_END_SELECT";
|
|
72
|
-
// User interaction events
|
|
73
|
-
DatePickerEvent["OUTSIDE_CLICK"] = "OUTSIDE_CLICK";
|
|
74
|
-
DatePickerEvent["ESCAPE_KEY"] = "ESCAPE_KEY";
|
|
75
|
-
DatePickerEvent["TAB_KEY"] = "TAB_KEY";
|
|
76
|
-
DatePickerEvent["SHIFT_TAB_KEY"] = "SHIFT_TAB_KEY";
|
|
77
|
-
DatePickerEvent["ENTER_KEY"] = "ENTER_KEY";
|
|
78
|
-
// Arrow key navigation
|
|
79
|
-
DatePickerEvent["ARROW_UP"] = "ARROW_UP";
|
|
80
|
-
DatePickerEvent["ARROW_DOWN"] = "ARROW_DOWN";
|
|
81
|
-
DatePickerEvent["ARROW_LEFT"] = "ARROW_LEFT";
|
|
82
|
-
DatePickerEvent["ARROW_RIGHT"] = "ARROW_RIGHT";
|
|
83
|
-
// Page navigation
|
|
84
|
-
DatePickerEvent["PAGE_UP"] = "PAGE_UP";
|
|
85
|
-
DatePickerEvent["PAGE_DOWN"] = "PAGE_DOWN";
|
|
86
|
-
// Week navigation
|
|
87
|
-
DatePickerEvent["HOME_KEY"] = "HOME_KEY";
|
|
88
|
-
DatePickerEvent["END_KEY"] = "END_KEY";
|
|
89
|
-
// State change events
|
|
90
|
-
DatePickerEvent["DISABLE"] = "DISABLE";
|
|
91
|
-
DatePickerEvent["ENABLE"] = "ENABLE";
|
|
92
|
-
DatePickerEvent["SET_READONLY"] = "SET_READONLY";
|
|
93
|
-
DatePickerEvent["UNSET_READONLY"] = "UNSET_READONLY";
|
|
94
|
-
DatePickerEvent["VALUE_CHANGE"] = "VALUE_CHANGE";
|
|
95
|
-
DatePickerEvent["VALIDATION_ERROR"] = "VALIDATION_ERROR";
|
|
96
|
-
DatePickerEvent["CLEAR_ERROR"] = "CLEAR_ERROR";
|
|
97
|
-
// Configuration events
|
|
98
|
-
DatePickerEvent["SET_MIN_DATE"] = "SET_MIN_DATE";
|
|
99
|
-
DatePickerEvent["SET_MAX_DATE"] = "SET_MAX_DATE";
|
|
100
|
-
DatePickerEvent["SET_DATE_FORMAT"] = "SET_DATE_FORMAT";
|
|
101
|
-
})(DatePickerEvent || (DatePickerEvent = {}));
|
|
102
|
-
// Made with Bob
|
|
103
|
-
|
|
104
|
-
export { DatePickerEvent, DatePickerState };
|
|
105
|
-
//# sourceMappingURL=states.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"states.js","sources":["../../../state-machine/states.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright IBM Corp. 2026
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
-
* LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Temporal API utilities for date picker
|
|
9
|
-
* Uses the modern Temporal API for robust date handling
|
|
10
|
-
*/
|
|
11
|
-
/**
|
|
12
|
-
* Convert a Date object to Temporal.PlainDate
|
|
13
|
-
*
|
|
14
|
-
* @param {Date} date - JavaScript Date object
|
|
15
|
-
* @returns Temporal.PlainDate
|
|
16
|
-
*/
|
|
17
|
-
export declare function dateToPlainDate(date: Date): Temporal.PlainDate;
|
|
18
|
-
/**
|
|
19
|
-
* Convert Temporal.PlainDate to Date object
|
|
20
|
-
*
|
|
21
|
-
* @param {Temporal.PlainDate} plainDate - Temporal.PlainDate
|
|
22
|
-
* @returns JavaScript Date object
|
|
23
|
-
*/
|
|
24
|
-
export declare function plainDateToDate(plainDate: Temporal.PlainDate): Date;
|
|
25
|
-
/**
|
|
26
|
-
* Convert Temporal.PlainDate to ISO date string (YYYY-MM-DD)
|
|
27
|
-
*
|
|
28
|
-
* @param {Temporal.PlainDate} plainDate - Temporal.PlainDate
|
|
29
|
-
* @returns ISO date string
|
|
30
|
-
*/
|
|
31
|
-
export declare function plainDateToISOString(plainDate: Temporal.PlainDate): string;
|
|
32
|
-
/**
|
|
33
|
-
* Parse ISO date string to Temporal.PlainDate
|
|
34
|
-
*
|
|
35
|
-
* @param {string} isoString - ISO date string (YYYY-MM-DD)
|
|
36
|
-
* @returns Temporal.PlainDate or null if invalid
|
|
37
|
-
*/
|
|
38
|
-
export declare function parseISOToPlainDate(isoString: string): Temporal.PlainDate | null;
|
|
39
|
-
/**
|
|
40
|
-
* Parse a date string in various formats to Temporal.PlainDate
|
|
41
|
-
* Supports: ISO (YYYY-MM-DD), US (MM/DD/YYYY), and JavaScript Date objects
|
|
42
|
-
*
|
|
43
|
-
* @param {string | Date} dateInput - Date string or Date object
|
|
44
|
-
* @returns Temporal.PlainDate or null if invalid
|
|
45
|
-
*/
|
|
46
|
-
export declare function parseDateToPlainDate(dateInput: string | Date | null | undefined): Temporal.PlainDate | null;
|
|
47
|
-
/**
|
|
48
|
-
* Compare two Temporal.PlainDate objects
|
|
49
|
-
*
|
|
50
|
-
* @param {Temporal.PlainDate} date1 - First date
|
|
51
|
-
* @param {Temporal.PlainDate} date2 - Second date
|
|
52
|
-
* @returns -1 if date1 < date2, 0 if equal, 1 if date1 > date2
|
|
53
|
-
*/
|
|
54
|
-
export declare function comparePlainDates(date1: Temporal.PlainDate, date2: Temporal.PlainDate): number;
|
|
55
|
-
/**
|
|
56
|
-
* Check if a date is within a range
|
|
57
|
-
*
|
|
58
|
-
* @param {Temporal.PlainDate} date - Date to check
|
|
59
|
-
* @param {Temporal.PlainDate | null} minDate - Minimum date (inclusive)
|
|
60
|
-
* @param {Temporal.PlainDate | null} maxDate - Maximum date (inclusive)
|
|
61
|
-
* @returns True if date is within range
|
|
62
|
-
*/
|
|
63
|
-
export declare function isDateInRange(date: Temporal.PlainDate, minDate: Temporal.PlainDate | null, maxDate: Temporal.PlainDate | null): boolean;
|
|
64
|
-
/**
|
|
65
|
-
* Format a Temporal.PlainDate according to a format string
|
|
66
|
-
* Supports common format tokens: Y, m, d
|
|
67
|
-
*
|
|
68
|
-
* @param {Temporal.PlainDate} date - Date to format
|
|
69
|
-
* @param {string} format - Format string (e.g., 'm/d/Y', 'Y-m-d')
|
|
70
|
-
* @returns Formatted date string
|
|
71
|
-
*/
|
|
72
|
-
export declare function formatPlainDate(date: Temporal.PlainDate, format: string): string;
|
|
73
|
-
/**
|
|
74
|
-
* Get today's date as Temporal.PlainDate
|
|
75
|
-
*
|
|
76
|
-
* @returns Today's date
|
|
77
|
-
*/
|
|
78
|
-
export declare function getToday(): Temporal.PlainDate;
|
|
79
|
-
/**
|
|
80
|
-
* Add days to a date
|
|
81
|
-
*
|
|
82
|
-
* @param {Temporal.PlainDate} date - Starting date
|
|
83
|
-
* @param {number} days - Number of days to add (can be negative)
|
|
84
|
-
* @returns New date
|
|
85
|
-
*/
|
|
86
|
-
export declare function addDays(date: Temporal.PlainDate, days: number): Temporal.PlainDate;
|
|
87
|
-
/**
|
|
88
|
-
* Add months to a date
|
|
89
|
-
*
|
|
90
|
-
* @param {Temporal.PlainDate} date - Starting date
|
|
91
|
-
* @param {number} months - Number of months to add (can be negative)
|
|
92
|
-
* @returns New date
|
|
93
|
-
*/
|
|
94
|
-
export declare function addMonths(date: Temporal.PlainDate, months: number): Temporal.PlainDate;
|
|
95
|
-
/**
|
|
96
|
-
* Get the number of days between two dates
|
|
97
|
-
*
|
|
98
|
-
* @param {Temporal.PlainDate} date1 - First date
|
|
99
|
-
* @param {Temporal.PlainDate} date2 - Second date
|
|
100
|
-
* @returns Number of days (positive if date2 is after date1)
|
|
101
|
-
*/
|
|
102
|
-
export declare function daysBetween(date1: Temporal.PlainDate, date2: Temporal.PlainDate): number;
|
|
103
|
-
/**
|
|
104
|
-
* Check if two dates are equal
|
|
105
|
-
*
|
|
106
|
-
* @param {Temporal.PlainDate} date1 - First date
|
|
107
|
-
* @param {Temporal.PlainDate} date2 - Second date
|
|
108
|
-
* @returns True if dates are equal
|
|
109
|
-
*/
|
|
110
|
-
export declare function areDatesEqual(date1: Temporal.PlainDate | null, date2: Temporal.PlainDate | null): boolean;
|
|
111
|
-
/**
|
|
112
|
-
* Get the start of the month for a given date
|
|
113
|
-
*
|
|
114
|
-
* @param {Temporal.PlainDate} date - Input date
|
|
115
|
-
* @returns First day of the month
|
|
116
|
-
*/
|
|
117
|
-
export declare function getMonthStart(date: Temporal.PlainDate): Temporal.PlainDate;
|
|
118
|
-
/**
|
|
119
|
-
* Get the end of the month for a given date
|
|
120
|
-
*
|
|
121
|
-
* @param {Temporal.PlainDate} date - Input date
|
|
122
|
-
* @returns Last day of the month
|
|
123
|
-
*/
|
|
124
|
-
export declare function getMonthEnd(date: Temporal.PlainDate): Temporal.PlainDate;
|
|
125
|
-
/**
|
|
126
|
-
* Check if a date is today
|
|
127
|
-
*
|
|
128
|
-
* @param {Temporal.PlainDate} date - Date to check
|
|
129
|
-
* @returns True if date is today
|
|
130
|
-
*/
|
|
131
|
-
export declare function isToday(date: Temporal.PlainDate): boolean;
|
|
132
|
-
/**
|
|
133
|
-
* Check if a date is in the past
|
|
134
|
-
*
|
|
135
|
-
* @param {Temporal.PlainDate} date - Date to check
|
|
136
|
-
* @returns True if date is before today
|
|
137
|
-
*/
|
|
138
|
-
export declare function isPast(date: Temporal.PlainDate): boolean;
|
|
139
|
-
/**
|
|
140
|
-
* Check if a date is in the future
|
|
141
|
-
*
|
|
142
|
-
* @param {Temporal.PlainDate} date - Date to check
|
|
143
|
-
* @returns True if date is after today
|
|
144
|
-
*/
|
|
145
|
-
export declare function isFuture(date: Temporal.PlainDate): boolean;
|
|
146
|
-
/**
|
|
147
|
-
* Parse a date string with a specific format
|
|
148
|
-
* Supports common format tokens: Y, m, d
|
|
149
|
-
*
|
|
150
|
-
* @param {string} dateString - Date string to parse
|
|
151
|
-
* @param {string} format - Format string (e.g., 'm/d/Y', 'Y-m-d')
|
|
152
|
-
* @returns Temporal.PlainDate or null if invalid
|
|
153
|
-
*/
|
|
154
|
-
export declare function parseDateString(dateString: string, format: string): Temporal.PlainDate | null;
|
|
155
|
-
/**
|
|
156
|
-
* Polyfill check for Temporal API
|
|
157
|
-
*
|
|
158
|
-
* @returns True if Temporal API is available
|
|
159
|
-
*/
|
|
160
|
-
export declare function isTemporalAvailable(): boolean;
|
|
161
|
-
/**
|
|
162
|
-
* Get a fallback date handler if Temporal is not available
|
|
163
|
-
* This provides a migration path for browsers without Temporal support
|
|
164
|
-
*/
|
|
165
|
-
export declare function getDateHandler(): {
|
|
166
|
-
type: "temporal";
|
|
167
|
-
toISOString: typeof plainDateToISOString;
|
|
168
|
-
fromISOString: typeof parseISOToPlainDate;
|
|
169
|
-
compare: typeof comparePlainDates;
|
|
170
|
-
format: typeof formatPlainDate;
|
|
171
|
-
isInRange: typeof isDateInRange;
|
|
172
|
-
} | {
|
|
173
|
-
type: "date";
|
|
174
|
-
/**
|
|
175
|
-
*
|
|
176
|
-
* @param {Temporal.PlainDate} date - The date to convert
|
|
177
|
-
*/
|
|
178
|
-
toISOString: (date: Date) => string;
|
|
179
|
-
/**
|
|
180
|
-
*
|
|
181
|
-
* @param {string} str - The ISO string to parse
|
|
182
|
-
*/
|
|
183
|
-
fromISOString: (str: string) => Date | null;
|
|
184
|
-
/**
|
|
185
|
-
*
|
|
186
|
-
* @param {Temporal.PlainDate} d1 - First date
|
|
187
|
-
* @param {Temporal.PlainDate} d2 - Second date
|
|
188
|
-
*/
|
|
189
|
-
compare: (d1: Date, d2: Date) => number;
|
|
190
|
-
/**
|
|
191
|
-
*
|
|
192
|
-
* @param {Temporal.PlainDate} date - The date to format
|
|
193
|
-
* @param {string} format - The format string
|
|
194
|
-
*/
|
|
195
|
-
format: (date: Date, format: string) => string;
|
|
196
|
-
/**
|
|
197
|
-
*
|
|
198
|
-
* @param {Temporal.PlainDate} date - The date to check
|
|
199
|
-
* @param {Temporal.PlainDate | null} min - Minimum date
|
|
200
|
-
* @param {Temporal.PlainDate | null} max - Maximum date
|
|
201
|
-
*/
|
|
202
|
-
isInRange: (date: Date, min: Date | null, max: Date | null) => boolean;
|
|
203
|
-
};
|