@luzmo/lucero 0.0.16 → 0.0.18
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/components/NumberFormatter-DewVDY5w.cjs +18 -0
- package/components/NumberFormatter-DgOUVrge.js +136 -0
- package/components/NumberParser-Dik4a0h-.cjs +18 -0
- package/components/NumberParser-ci9J5EKv.js +173 -0
- package/components/accordion/index.cjs +1 -1
- package/components/accordion/index.js +2 -2
- package/components/action-bar/index.cjs +1 -1
- package/components/action-bar/index.js +2 -2
- package/components/action-button/index.cjs +1 -1
- package/components/action-button/index.js +2 -2
- package/components/action-group/index.js +1 -1
- package/components/action-menu/index.cjs +1 -1
- package/components/action-menu/index.js +3 -3
- package/components/avatar/index.js +1 -1
- package/components/button/index.cjs +1 -1
- package/components/button/index.js +3 -3
- package/components/button-group/index.js +1 -1
- package/components/calendar/calendar.d.ts +218 -0
- package/components/calendar/index.cjs +18 -0
- package/components/calendar/index.d.ts +7 -0
- package/components/calendar/index.js +28 -0
- package/components/checkbox/index.cjs +1 -1
- package/components/checkbox/index.js +2 -2
- package/components/class-map-Buyb1CLm.cjs +22 -0
- package/components/class-map-CJko4aXp.js +51 -0
- package/components/{close-button-DOA-6eL0.cjs → close-button-BQJ2wHkM.cjs} +1 -1
- package/components/{close-button-DU58NTKR.js → close-button-DN2cjFRq.js} +1 -1
- package/components/color-area/index.js +1 -1
- package/components/color-field/index.cjs +1 -1
- package/components/color-field/index.js +2 -2
- package/components/color-handle/index.js +1 -1
- package/components/color-loupe/index.js +1 -1
- package/components/color-menu/index.js +1 -1
- package/components/color-picker/index.js +1 -1
- package/components/color-slider/index.js +1 -1
- package/components/date-time-picker/date-time-picker.d.ts +269 -0
- package/components/date-time-picker/helpers.d.ts +10 -0
- package/components/date-time-picker/index.cjs +105 -0
- package/components/date-time-picker/index.d.ts +7 -0
- package/components/date-time-picker/index.js +1126 -0
- package/components/date-time-picker/segments/date/day-segment.d.ts +9 -0
- package/components/date-time-picker/segments/date/month-segment.d.ts +9 -0
- package/components/date-time-picker/segments/date/year-segment.d.ts +12 -0
- package/components/date-time-picker/segments/date-time-segments.d.ts +35 -0
- package/components/date-time-picker/segments/editable-segment.d.ts +21 -0
- package/components/date-time-picker/segments/literal-segment.d.ts +6 -0
- package/components/date-time-picker/segments/modifiers/clear-modifier.d.ts +5 -0
- package/components/date-time-picker/segments/modifiers/decrement-modifier.d.ts +5 -0
- package/components/date-time-picker/segments/modifiers/increment-modifier.d.ts +5 -0
- package/components/date-time-picker/segments/modifiers/input-modifier.d.ts +13 -0
- package/components/date-time-picker/segments/modifiers/segments-modifier.d.ts +18 -0
- package/components/date-time-picker/segments/segments-factory.d.ts +16 -0
- package/components/date-time-picker/segments/segments-formatter.d.ts +17 -0
- package/components/date-time-picker/segments/time/day-period-segment.d.ts +18 -0
- package/components/date-time-picker/segments/time/hour-segment.d.ts +19 -0
- package/components/date-time-picker/segments/time/millisecond-segment.d.ts +7 -0
- package/components/date-time-picker/segments/time/minute-segment.d.ts +7 -0
- package/components/date-time-picker/segments/time/second-segment.d.ts +7 -0
- package/components/date-time-picker/types.d.ts +41 -0
- package/components/divider/index.js +1 -1
- package/components/field-group/index.js +1 -1
- package/components/field-label/index.js +1 -1
- package/components/icon/index.cjs +1 -1
- package/components/icon/index.js +2 -2
- package/components/index-BziWAe4P.cjs +113 -0
- package/components/index-vWdA-LXe.js +1490 -0
- package/components/index.cjs +1 -1
- package/components/index.js +135 -129
- package/components/infield-button/index.cjs +1 -1
- package/components/infield-button/index.js +2 -2
- package/components/label/index.js +1 -1
- package/components/menu/index.cjs +66 -1
- package/components/menu/index.js +874 -10
- package/components/multi-language-field/index.js +1 -1
- package/components/number-field/index.cjs +6 -6
- package/components/number-field/index.js +128 -394
- package/components/observe-slot-presence-CmVi0zTc.js +68 -0
- package/components/observe-slot-presence-bc9chhsi.cjs +18 -0
- package/components/overlay/index.js +1 -1
- package/components/picker/index.cjs +1 -1
- package/components/picker/index.js +3 -3
- package/components/{picker-C9HmjRgR.js → picker-BxEG2NdV.js} +110 -138
- package/components/picker-DROquiIZ.cjs +123 -0
- package/components/picker-button/index.cjs +37 -0
- package/components/picker-button/index.d.ts +7 -0
- package/components/picker-button/index.js +87 -0
- package/components/picker-button/picker-button.d.ts +21 -0
- package/components/popover/index.js +1 -1
- package/components/progress-circle/index.js +1 -1
- package/components/radio/index.cjs +1 -1
- package/components/radio/index.js +2 -2
- package/components/search/index.cjs +1 -1
- package/components/search/index.js +3 -3
- package/components/slider/index.js +1 -1
- package/components/swatch/index.cjs +1 -1
- package/components/swatch/index.js +2 -2
- package/components/switch/index.cjs +1 -1
- package/components/switch/index.js +2 -2
- package/components/tags/index.cjs +1 -1
- package/components/tags/index.js +2 -2
- package/components/text-field/index.cjs +1 -1
- package/components/text-field/index.js +3 -3
- package/components/text-field-BTnBJoP9.js +314 -0
- package/components/text-field-mxJCYues.cjs +85 -0
- package/components/text-field.module-ColtFhf_.js +21 -0
- package/components/text-field.module-p_VF2tC_.cjs +18 -0
- package/components/toast/index.cjs +1 -1
- package/components/toast/index.js +3 -3
- package/components/tooltip/index.js +1 -1
- package/components/unit-input/index.cjs +1 -1
- package/components/unit-input/index.js +2 -2
- package/custom-elements.json +1 -1
- package/index.d.ts +3 -0
- package/package.json +16 -1
- package/components/index-4SZZSkew.cjs +0 -83
- package/components/index-AM-58E5r.js +0 -936
- package/components/picker-B05XA8I1.cjs +0 -127
- package/components/text-field-5_ev9way.cjs +0 -85
- package/components/text-field-CvKSS59x.js +0 -313
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
import { CSSResultArray, nothing, PropertyValues, TemplateResult } from 'lit';
|
|
2
|
+
import { Focusable } from '../../utils/focusable';
|
|
3
|
+
import '../calendar';
|
|
4
|
+
import '../icon';
|
|
5
|
+
import '../overlay';
|
|
6
|
+
import '../picker-button';
|
|
7
|
+
import '../popover';
|
|
8
|
+
import { EditableSegment } from './segments/editable-segment';
|
|
9
|
+
import { LiteralSegment } from './segments/literal-segment';
|
|
10
|
+
import { DateTimePickerLabels, Precision } from './types';
|
|
11
|
+
import { Placement } from '../overlay/overlay-types';
|
|
12
|
+
declare const LuzmoDateTimePicker_base: typeof Focusable & {
|
|
13
|
+
new (...args: any[]): import("../..").SizedElementInterface;
|
|
14
|
+
prototype: import("../..").SizedElementInterface;
|
|
15
|
+
} & {
|
|
16
|
+
new (...args: any[]): import("../text-field/manage-help-text").HelpTextElementInterface;
|
|
17
|
+
prototype: import("../text-field/manage-help-text").HelpTextElementInterface;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* @element luzmo-date-time-picker
|
|
21
|
+
*
|
|
22
|
+
* @event change - Announces when a new date/time is committed by the user
|
|
23
|
+
* @event input - Announces when the user's input changes the component's segments
|
|
24
|
+
*
|
|
25
|
+
* @slot calendar-icon - The icon used in the calendar button
|
|
26
|
+
* @slot help-text - Default or non-negative help text to associate to your form element
|
|
27
|
+
* @slot negative-help-text - Negative help text to associate to your form element when `invalid`
|
|
28
|
+
*/
|
|
29
|
+
export declare class LuzmoDateTimePicker extends LuzmoDateTimePicker_base {
|
|
30
|
+
/**
|
|
31
|
+
* The styles of the calendar
|
|
32
|
+
* @internal
|
|
33
|
+
*/
|
|
34
|
+
static get styles(): CSSResultArray;
|
|
35
|
+
/**
|
|
36
|
+
* The selected date of the component. If defined, this also indicates where the calendar opens.
|
|
37
|
+
* If not, the calendar opens at the current month, and placeholder values are shown.
|
|
38
|
+
*/
|
|
39
|
+
value?: string;
|
|
40
|
+
/**
|
|
41
|
+
* The minimum valid date a user can select
|
|
42
|
+
*/
|
|
43
|
+
min?: string;
|
|
44
|
+
/**
|
|
45
|
+
* The maximum valid date a user can select
|
|
46
|
+
*/
|
|
47
|
+
max?: string;
|
|
48
|
+
/**
|
|
49
|
+
* The date format to use for display. Can be 'mmdd', 'ddmm', or undefined (uses locale default).
|
|
50
|
+
*/
|
|
51
|
+
dateFormat?: 'mmdd' | 'ddmm';
|
|
52
|
+
/**
|
|
53
|
+
* The separator to use between date segments (month, day, and year).
|
|
54
|
+
* If not specified, the default separator from the locale will be used.
|
|
55
|
+
*/
|
|
56
|
+
dateSeparator?: string;
|
|
57
|
+
/**
|
|
58
|
+
* The granularity used to display the segments of the component's value
|
|
59
|
+
*/
|
|
60
|
+
get precision(): Precision;
|
|
61
|
+
set precision(value: Precision);
|
|
62
|
+
/**
|
|
63
|
+
* @internal
|
|
64
|
+
*/
|
|
65
|
+
private _precision;
|
|
66
|
+
/**
|
|
67
|
+
* @internal
|
|
68
|
+
*/
|
|
69
|
+
private isUserSetPrecision;
|
|
70
|
+
/**
|
|
71
|
+
* Whether the `value` held by the form control is invalid.
|
|
72
|
+
*/
|
|
73
|
+
invalid: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Whether a user can interact with the value of the form control
|
|
76
|
+
*/
|
|
77
|
+
readonly: boolean;
|
|
78
|
+
/**
|
|
79
|
+
* Whether to display the form control with no visible background
|
|
80
|
+
*/
|
|
81
|
+
quiet: boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Whether to display the form control with no visible background
|
|
84
|
+
*/
|
|
85
|
+
placement: Placement;
|
|
86
|
+
/**
|
|
87
|
+
* The IANA time zone identifier (eg. America/Los_Angeles) to use for parsing the date & setting it
|
|
88
|
+
*/
|
|
89
|
+
timeZone?: string;
|
|
90
|
+
/**
|
|
91
|
+
* Whether to display the form control with no visible background
|
|
92
|
+
*/
|
|
93
|
+
language: string;
|
|
94
|
+
/**
|
|
95
|
+
* Labels read by screen readers. The default values are in English
|
|
96
|
+
* and can be overridden to localize the content.
|
|
97
|
+
*/
|
|
98
|
+
labels: DateTimePickerLabels;
|
|
99
|
+
focused: boolean;
|
|
100
|
+
/**
|
|
101
|
+
* The selected date in the calendar in ZonedDateTime format
|
|
102
|
+
* @internal
|
|
103
|
+
*/
|
|
104
|
+
private _value?;
|
|
105
|
+
/**
|
|
106
|
+
* The minimum allowed date a user can select in ZonedDateTime format
|
|
107
|
+
* @internal
|
|
108
|
+
*/
|
|
109
|
+
private _min?;
|
|
110
|
+
/**
|
|
111
|
+
* The maximum allowed date a user can select in ZonedDateTime format
|
|
112
|
+
* @internal
|
|
113
|
+
*/
|
|
114
|
+
private _max?;
|
|
115
|
+
/**
|
|
116
|
+
* The segments of the component
|
|
117
|
+
* @internal
|
|
118
|
+
*/
|
|
119
|
+
private segments;
|
|
120
|
+
/**
|
|
121
|
+
* Whether the calendar is open
|
|
122
|
+
* @internal
|
|
123
|
+
*/
|
|
124
|
+
private isCalendarOpen;
|
|
125
|
+
/**
|
|
126
|
+
* The first editable segment of the component
|
|
127
|
+
* @internal
|
|
128
|
+
*/
|
|
129
|
+
firstEditableSegment: HTMLDivElement;
|
|
130
|
+
/**
|
|
131
|
+
* The input element of the component
|
|
132
|
+
* @internal */
|
|
133
|
+
private input;
|
|
134
|
+
/**
|
|
135
|
+
* The language used to format the dates and weekdays.
|
|
136
|
+
* @internal
|
|
137
|
+
*/
|
|
138
|
+
get _language(): string;
|
|
139
|
+
/**
|
|
140
|
+
* The time zone of the component
|
|
141
|
+
* @internal
|
|
142
|
+
*/
|
|
143
|
+
private _timeZone;
|
|
144
|
+
/**
|
|
145
|
+
* The cached local time of the component
|
|
146
|
+
* @internal
|
|
147
|
+
*/
|
|
148
|
+
private cachedLocalTime;
|
|
149
|
+
/**
|
|
150
|
+
* The date formatter of the component
|
|
151
|
+
* @internal
|
|
152
|
+
*/
|
|
153
|
+
private dateFormatter;
|
|
154
|
+
/**
|
|
155
|
+
* The aria date formatter of the component
|
|
156
|
+
* @internal
|
|
157
|
+
*/
|
|
158
|
+
private ariaDateFormatter;
|
|
159
|
+
/**
|
|
160
|
+
* The number parser of the component
|
|
161
|
+
* @internal
|
|
162
|
+
*/
|
|
163
|
+
private numberParser;
|
|
164
|
+
/**
|
|
165
|
+
* The focus element of the component
|
|
166
|
+
* @internal
|
|
167
|
+
*/
|
|
168
|
+
get focusElement(): HTMLElement;
|
|
169
|
+
/**
|
|
170
|
+
* The current date of the component
|
|
171
|
+
* @internal
|
|
172
|
+
*/
|
|
173
|
+
private get currentDate();
|
|
174
|
+
/**
|
|
175
|
+
* @return Whether the component's precision includes time segments (hour, minute, second, millisecond)
|
|
176
|
+
* @internal
|
|
177
|
+
*/
|
|
178
|
+
private get includesTime();
|
|
179
|
+
/**
|
|
180
|
+
* Resets the component's value and segments
|
|
181
|
+
*/
|
|
182
|
+
clear(): void;
|
|
183
|
+
constructor();
|
|
184
|
+
protected willUpdate(changedProperties: PropertyValues): void;
|
|
185
|
+
/**
|
|
186
|
+
* Computes the component's most precise date property (min, max or value) or undefined if none is defined.
|
|
187
|
+
* The order of precedence is: ZonedDateTime, CalendarDateTime, CalendarDate.
|
|
188
|
+
* @internal
|
|
189
|
+
*/
|
|
190
|
+
private get mostSpecificDateValue();
|
|
191
|
+
/**
|
|
192
|
+
* Converts the DateTimePicker's date properties (min, max and value) to match the provided date's type.
|
|
193
|
+
*
|
|
194
|
+
* @param dateValue - The date value to be used as a reference for the conversion
|
|
195
|
+
*/
|
|
196
|
+
private convertDatePropsToMatch;
|
|
197
|
+
/**
|
|
198
|
+
* Validates the component's date properties (min, max and value) compliance with one another.
|
|
199
|
+
* If the [min, max] constraint interval is invalid, both properties are reset.
|
|
200
|
+
* If the value is not within the [min, max] (valid) interval, it is reset.
|
|
201
|
+
*
|
|
202
|
+
* @param checkInterval - Whether to check the [min, max] interval
|
|
203
|
+
*/
|
|
204
|
+
private checkDatePropsCompliance;
|
|
205
|
+
private isNonCompliantValue;
|
|
206
|
+
/**
|
|
207
|
+
* Update the component's date properties' types to include the provided precision.
|
|
208
|
+
*/
|
|
209
|
+
private updateDateProps;
|
|
210
|
+
/**
|
|
211
|
+
* Changes the component's default precision according to the most specific date property (min, max or value).
|
|
212
|
+
*/
|
|
213
|
+
private updateDefaultPrecision;
|
|
214
|
+
render(): TemplateResult;
|
|
215
|
+
private renderStateIcons;
|
|
216
|
+
renderPicker(): TemplateResult | typeof nothing;
|
|
217
|
+
private handleChange;
|
|
218
|
+
renderInputContent(): TemplateResult;
|
|
219
|
+
private renderSegments;
|
|
220
|
+
renderLiteralSegment(segment: LiteralSegment): TemplateResult;
|
|
221
|
+
renderEditableSegment(segment: EditableSegment): TemplateResult;
|
|
222
|
+
private renderSegmentText;
|
|
223
|
+
private handleKeydown;
|
|
224
|
+
/**
|
|
225
|
+
* The modifier parameters of the component
|
|
226
|
+
* @internal
|
|
227
|
+
*/
|
|
228
|
+
private get modifierParams();
|
|
229
|
+
private incrementValue;
|
|
230
|
+
private decrementValue;
|
|
231
|
+
/**
|
|
232
|
+
* Focuses the segment according to the direction, if there is one to focus on
|
|
233
|
+
*
|
|
234
|
+
* @param segment - Segment on which the event was triggered (the segment being changed)
|
|
235
|
+
* @param elementToFocus - Defines which element will be focused: is it the previous one or the next one?
|
|
236
|
+
*/
|
|
237
|
+
private focusSegment;
|
|
238
|
+
/**
|
|
239
|
+
* The previous commited value of the component
|
|
240
|
+
* @internal
|
|
241
|
+
*/
|
|
242
|
+
private previousCommitedValue;
|
|
243
|
+
/**
|
|
244
|
+
* Mark the user intent to commit the selected value. If the current value
|
|
245
|
+
* is different from the previous commited value, dispatch a change event.
|
|
246
|
+
*/
|
|
247
|
+
private commitValue;
|
|
248
|
+
private clearSegmentContent;
|
|
249
|
+
private handleInput;
|
|
250
|
+
/**
|
|
251
|
+
* Updates the content of the segments by binding it to the `.innerText` property of the element,
|
|
252
|
+
* instead of using string interpolation. This allows to not show user typed characters, but
|
|
253
|
+
* only the formatted content of the segment, needed for the 'contenteditable' elements.
|
|
254
|
+
*
|
|
255
|
+
* @param segment - Segment on which the event was triggered (the segment being changed)
|
|
256
|
+
* @param event - Triggered event details
|
|
257
|
+
*/
|
|
258
|
+
private updateSegmentContent;
|
|
259
|
+
private createOutputString;
|
|
260
|
+
private dispatchChange;
|
|
261
|
+
private dispatchInput;
|
|
262
|
+
private setValueFromSegments;
|
|
263
|
+
private setSegments;
|
|
264
|
+
private setNumberParser;
|
|
265
|
+
private setDateFormatter;
|
|
266
|
+
private setAriaDateFormatter;
|
|
267
|
+
private getTimeOptions;
|
|
268
|
+
}
|
|
269
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CalendarDate, CalendarDateTime, DateValue, ZonedDateTime } from '@internationalized/date';
|
|
2
|
+
import { AM, PM } from './types';
|
|
3
|
+
export declare function isNumber(value: number | undefined): value is number;
|
|
4
|
+
export declare function isZonedDateTime(date: DateValue): date is ZonedDateTime;
|
|
5
|
+
export declare function isCalendarDateTime(date: DateValue): date is CalendarDateTime;
|
|
6
|
+
export declare function isCalendarDate(date: DateValue): date is CalendarDate;
|
|
7
|
+
export declare function convertHourTo24hFormat(hour: number, dayPeriod: typeof AM | typeof PM): number;
|
|
8
|
+
export declare function getDayPeriodModifier(hour: number): typeof AM | typeof PM;
|
|
9
|
+
export declare function equalSegmentValues(a: (number | undefined)[], b: (number | undefined)[]): boolean;
|
|
10
|
+
export declare function dateValueToDate(dateValue: DateValue): Date;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/*! * Lucero - The design system for Luzmo.
|
|
2
|
+
*
|
|
3
|
+
* Copyright © 2025 Luzmo
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
|
|
6
|
+
* This license allows users with a current active Luzmo account to use Lucero.
|
|
7
|
+
* This license terminates automatically if a user no longer has an active Luzmo account.
|
|
8
|
+
* Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
|
|
9
|
+
*
|
|
10
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
11
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
12
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
13
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
14
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
15
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
16
|
+
* SOFTWARE.
|
|
17
|
+
* */
|
|
18
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../index-BziWAe4P.cjs"),R=require("../NumberParser-Dik4a0h-.cjs"),u=require("../base-B7Pfl2if.cjs"),P=require("../state-C5I1gP3G.cjs"),A=require("../query-BL-TJj7K.cjs"),j=require("../class-map-Buyb1CLm.cjs"),S=require("../if-defined-B56xGmAg.cjs"),W=require("../style-map-uMq-yDJ3.cjs"),L=require("../when-CDZyJPvd.cjs"),G=require("../focusable-DGWL1v1p.cjs"),I=require("../sized-mixin-D9LkrMjb.cjs"),O=require("@luzmo/icons");require("../icon/index.cjs");require("../overlay/index.cjs");require("../picker-button/index.cjs");require("../popover/index.cjs");const K=require("../manage-help-text-OHXDgxyj.cjs"),B=require("../NumberFormatter-DewVDY5w.cjs"),X=require("../text-field.module-p_VF2tC_.cjs"),o={Year:"year",Month:"month",Day:"day",Hour:"hour",Minute:"minute",Second:"second",Millisecond:"fractionalSecond",DayPeriod:"dayPeriod",Literal:"literal"},J={[o.Year]:"––––",[o.Month]:"––",[o.Day]:"––",[o.Hour]:"––",[o.Minute]:"––",[o.Second]:"––",[o.Millisecond]:"–––",[o.DayPeriod]:"––"},v={Day:"day",Hour:"hour",Minute:"minute",Second:"second",Millisecond:"millisecond"},V=0,D=12,H=2e3,Q=31;function x(n){return typeof n=="number"}function _(n){return n instanceof c.$35ea8db9cb2ccb90$export$d3b7288e7994edea}function C(n){return n instanceof c.$35ea8db9cb2ccb90$export$ca871e8dbb80966f}function F(n){return n instanceof c.$35ea8db9cb2ccb90$export$99faa760c7908e4f}function N(n,e){return n=n%D+e}function Z(n){return n>=D?D:V}function E(n,e){return n.length===e.length&&n.every((t,i)=>t===e[i])}function U(n){return F(n)?new Date(n.year,n.month-1,n.day):new Date(n.year,n.month-1,n.day,n.hour,n.minute,n.second,n.millisecond)}class ${constructor(e,t,i){this.type=e,this.formatted=t,this.label=i,this.placeholder=J[e]}increment(e){this.value===void 0?this.value=this.minValue:(this.value=this.value+1,this.value>this.maxValue&&(this.value=this.minValue))}decrement(e){this.value===void 0?this.value=this.maxValue:(this.value=this.value-1,this.value<this.minValue&&(this.value=this.maxValue))}setValueFromDate(e){this.type==="fractionalSecond"?this.value=e.millisecond:this.type!==o.DayPeriod&&(this.value=e[this.type])}clear(){this.value=void 0}handleInput(e,t){const i=t.parse(e);if(Number.isNaN(i))return;const a=t.parse(`${this.value??""}${i}`);if(this.isInputValueCompliant(a)){this.value=a;return}this.isInputValueCompliant(i)&&(this.value=i)}isInputValueCompliant(e){const{minValue:t,maxValue:i}=this.inputValidationLimits;return e>=t&&e<=i}get inputValidationLimits(){return{minValue:this.minValue,maxValue:this.maxValue}}updateValueToLimits(){this.value!==void 0&&(this.value<this.minValue&&(this.value=this.minValue),this.value>this.maxValue&&(this.value=this.maxValue))}}class Y extends ${constructor(e,t){super(o.Year,e,t),this.minValue=1,this.maxValue=9999}setLimits(e){this.minValue=1,this.maxValue=e.calendar.getYearsInEra(e),this.updateValueToLimits()}increment(e){this.value===void 0?this.value=e.year:super.increment()}decrement(e){this.value===void 0?this.value=e.year:super.decrement()}clear(){if(this.value===void 0)return;const e=Math.floor(this.value/10);this.value=e>0?e:void 0}}class M{constructor(e){this.segments=e}get all(){return this.segments}get editableValues(){return this.all.filter(e=>e instanceof $).map(e=>e.value)}get year(){const e=this.getByType(o.Year);if(e&&e instanceof Y)return e}get month(){const e=this.getByType(o.Month);if(e)return e}get day(){const e=this.getByType(o.Day);if(e)return e}get hour(){const e=this.getByType(o.Hour);if(e)return e}get minute(){const e=this.getByType(o.Minute);if(e)return e}get second(){const e=this.getByType(o.Second);if(e)return e}get millisecond(){const e=this.getByType(o.Millisecond);if(e)return e}get dayPeriod(){const e=this.getByType(o.DayPeriod);if(e)return e}getByType(e){return this.segments.find(t=>t.type===e)}getFormattedDate(e=v.Day){var d,g,b,k,f,z,y;const t=(d=this.year)==null?void 0:d.value,i=(g=this.month)==null?void 0:g.value,a=(b=this.day)==null?void 0:b.value;if(!x(t)||!x(i)||!x(a))return;if(e===v.Day)return new c.$35ea8db9cb2ccb90$export$99faa760c7908e4f(t,i,a);let r=(k=this.hour)==null?void 0:k.value;if(!x(r))return;if(this.dayPeriod){const w=this.dayPeriod.value;if(!x(w))return;r=N(r,w)}if(e===v.Hour)return new c.$35ea8db9cb2ccb90$export$ca871e8dbb80966f(t,i,a,r);const s=(f=this.minute)==null?void 0:f.value;if(!x(s))return;if(e===v.Minute)return new c.$35ea8db9cb2ccb90$export$ca871e8dbb80966f(t,i,a,r,s);const l=(z=this.second)==null?void 0:z.value;if(!x(l))return;if(e===v.Second)return new c.$35ea8db9cb2ccb90$export$ca871e8dbb80966f(t,i,a,r,s,l);const h=(y=this.millisecond)==null?void 0:y.value;if(x(h))return new c.$35ea8db9cb2ccb90$export$ca871e8dbb80966f(t,i,a,r,s,l,h)}}class ee{constructor(e,t){this.dateFormatter=e,this.currentDate=t,this.numberFormatter=new B.$488c6ddbf4ef74c2$export$cc77c4ff7e8673c5(this.dateFormatter.resolvedOptions().locale,{useGrouping:!1})}format(e){if(!e.year||!e.month||!e.day)return e;const t=this.getDateInfoWithDefaults(e);return t&&(this.setSegmentsFormatted(e,t),this.padSegmentsFormatted(e)),e}setSegmentsFormatted(e,t){var f;e=new M(e.all);const{year:i,month:a,day:r,hour:s,minute:l,second:h,millisecond:d}=t,g=new Date(i,a-1,r,s,l,h,d);if(!e.year)return;e.year.formatted=this.numberFormatter.format(i);const b=[o.Month,o.Day,o.Hour,o.Minute,o.Second,o.DayPeriod],k=this.dateFormatter.formatToParts(g);for(const z of b){const y=e[z];if(!y)continue;const w=(f=k.find(q=>q.type===z))==null?void 0:f.value;w&&(y.formatted=w)}}padSegmentsFormatted(e){if(!e.hour)return;const t=[o.Month,o.Day,o.Hour,o.Minute,o.Second];for(const i of t){const a=e[i];a&&(a.formatted=a.formatted.padStart(2,this.numberFormatter.format(0)))}}getDateInfoWithDefaults(e){var g,b,k,f,z;if(!e.year||!e.month||!e.day)return;const t=e.day.value??c.$14e0f24ef4ac5c92$export$b2f4953d301981d5(this.currentDate),i=e.month.value??c.$14e0f24ef4ac5c92$export$5412ac11713b72ad(this.currentDate),a=e.year.value??H,r=(g=e.dayPeriod)==null?void 0:g.value;let s=(b=e.hour)==null?void 0:b.value;x(s)?x(r)&&(s=N(s,r)):s=x(r)?r:this.currentDate.hour;const l=((k=e.minute)==null?void 0:k.value)??this.currentDate.minute,h=((f=e.second)==null?void 0:f.value)??this.currentDate.second,d=((z=e.millisecond)==null?void 0:z.value)??this.currentDate.millisecond;return{year:a,month:i,day:t,hour:s,minute:l,second:h,millisecond:d}}}class T{constructor(e){const{dateFormatter:t,segments:i,currentDate:a}=e;this.segments=new M(i.all),this.dateFormatter=t,this.currentDate=a}modify(e){const t=this.segments.getByType(e);if(!t)return this.segments;this.modifySegment(t),this.updateSegmentsLimits(e);const i=new ee(this.dateFormatter,this.currentDate);return this.segments=i.format(this.segments),this.segments}updateSegmentsLimits(e){const t=e===o.Year,i=e===o.Month,a=this.segments.year,r=this.segments.month,s=this.segments.day;t&&(r==null||r.setLimits(this.currentDate),s==null||s.setLimits(this.currentDate,r==null?void 0:r.value,a==null?void 0:a.value)),i&&(s==null||s.setLimits(this.currentDate,r==null?void 0:r.value,a==null?void 0:a.value))}}class te extends T{modifySegment(e){e.clear()}}class ie extends T{modifySegment(e){e.decrement(this.currentDate)}}class ae extends T{modifySegment(e){e.increment(this.currentDate)}}class re extends T{constructor(e){const{dateFormatter:t,segments:i,currentDate:a}=e;super({dateFormatter:t,segments:i,currentDate:a}),this.eventData=e.eventData,this.numberParser=e.numberParser}modifySegment(e){this.eventData!==null&&e.handleInput(this.eventData,this.numberParser)}}class oe extends ${constructor(e,t){super(o.Day,e,t),this.minValue=1,this.maxValue=31}setLimits(e,t,i){if(!x(t)){this.minValue=1,this.maxValue=Q;return}x(i)||(i=H);const a=new c.$35ea8db9cb2ccb90$export$99faa760c7908e4f(i,t,1);this.maxValue=e.calendar.getDaysInMonth(a),this.minValue=c.$14e0f24ef4ac5c92$export$b2f4953d301981d5(a),this.updateValueToLimits()}}class ne extends ${constructor(e,t){super(o.Month,e,t),this.minValue=1,this.maxValue=12}setLimits(e){this.minValue=c.$14e0f24ef4ac5c92$export$5412ac11713b72ad(e),this.maxValue=e.calendar.getMonthsInYear(e),this.updateValueToLimits()}}class se{constructor(e){this.formatted=e,this.type=o.Literal}}class ce extends ${constructor(e,t){super(o.DayPeriod,e,t),this.minValue=V,this.maxValue=D,this.localizedMinValue="AM",this.localizedMaxValue="PM"}toggleAmPm(){this.value=this.value===V?D:V}increment(){this.value===void 0?this.value=this.minValue:this.toggleAmPm()}decrement(){this.value===void 0?this.value=this.maxValue:this.toggleAmPm()}setValueFromDate(e){this.value=Z(e.hour)}handleInput(e){const t=e.toLowerCase(),i=this.localizedMinValue.toLowerCase().includes(t),a=this.localizedMaxValue.toLowerCase().includes(t);i&&a||(i&&(this.value=V),a&&(this.value=D))}setLocalizedLimits(e){const t=new Date(0,0,0,this.minValue,0),i=new Date(0,0,0,this.maxValue,0),[a,r]=[t,i].map(this.getDayPeriodFromDate.bind(this,e));a&&(this.localizedMinValue=a),r&&(this.localizedMaxValue=r)}getDayPeriodFromDate(e,t){var i;return(i=e.formatToParts(t).find(a=>a.type===this.type))==null?void 0:i.value}}class le extends ${constructor(e,t){super(o.Hour,e,t),this.minValue=0,this.maxValue=23}setLimits(e){this.minValue=0,this.maxValue=23,e&&(this.minValue=0,this.maxValue=11),this.updateValueToLimits()}setValueFromDate(e,t){t?this.value=e.hour-Z(e.hour):super.setValueFromDate(e)}get inputValidationLimits(){const e=this.maxValue===11;return{minValue:e?1:0,maxValue:e?12:23}}}class de extends ${constructor(e,t){super(o.Millisecond,e,t),this.minValue=0,this.maxValue=999}}class ue extends ${constructor(e,t){super(o.Minute,e,t),this.minValue=0,this.maxValue=59}}class me extends ${constructor(e,t){super(o.Second,e,t),this.minValue=0,this.maxValue=59}}class he{constructor(e){this.dateFormatter=e;const t=this.dateFormatter.resolvedOptions().locale;this.numberFormatter=new B.$488c6ddbf4ef74c2$export$cc77c4ff7e8673c5(t,{useGrouping:!1}),this.dateTimeFieldDisplayNames=new Intl.DisplayNames([t],{type:"dateTimeField"})}createSegments(e,t=!1){const i=U(e),a=this.dateFormatter.formatToParts(i).map(y=>{const w=y.type;let q=y.value;return w==="year"&&(q=this.numberFormatter.format(e.year)),this.createSegment(w,q)}),r=new M(a),s=r.year,l=r.month,h=r.day;s.setLimits(e),l.setLimits(e),t&&(s.setValueFromDate(e),l.setValueFromDate(e)),h.setLimits(e,l.value,s.value),t&&h.setValueFromDate(e);const d=r.hour,g=r.minute,b=r.second,k=r.millisecond,f=r.dayPeriod;if(f&&f.setLocalizedLimits(this.dateFormatter),!d)return r;const z=!!f;if(d.setLimits(z),t){if(d.setValueFromDate(e,z),z&&r.dayPeriod.setValueFromDate(e),!g||(g.setValueFromDate(e),!b)||(b.setValueFromDate(e),!k))return r;k.setValueFromDate(e)}return r}createSegment(e,t){if(e===o.Literal)return new se(t);const i=this.displayNameOfType(e);switch(e){case o.Year:return new Y(t,i);case o.Month:return new ne(t,i);case o.Day:return new oe(t,i);case o.Hour:return new le(t,i);case o.Minute:return new ue(t,i);case o.Second:return new me(t,i);case o.Millisecond:return new de(t,i);case o.DayPeriod:return new ce(t,i)}}displayNameOfType(e){const t=e==="fractionalSecond"?"millisecond":this.dateTimeFieldDisplayNames.of(e);return t?t.charAt(0).toUpperCase()+t.slice(1):""}}const pe='@charset "UTF-8";:host{font-family:var(--luzmo-font-family);--date-time-picker-border-radius: var( --luzmo-date-time-picker-border-radius, var(--luzmo-border-radius) );--date-time-picker-border-radius-quiet: var( --luzmo-date-time-picker-border-radius-quiet, 0 );--date-time-picker-border-width: var(--luzmo-border-width);--date-time-picker-button-border-color: var( --highcontrast-datepicker-pickerbutton-border-color, var( --luzmo-date-time-picker-pickerbutton-border-color, var(--luzmo-border-color) ) );--date-time-picker-button-border-color-focus: var( --highcontrast-datepicker-pickerbutton-border-color, var( --luzmo-date-time-picker-pickerbutton-border-color-focus, var(--luzmo-primary) ) );--date-time-picker-button-border-color-invalid: var( --highcontrast-datepicker-pickerbutton-border-color, var( --luzmo-date-time-picker-pickerbutton-border-color-invalid, var(--luzmo-negative-color) ) );--date-time-picker-button-width: calc( var(--date-time-picker-edge-to-disclosure-icon) * 2 + var(--date-time-picker-icon-size) );--date-time-picker-quiet-button-offset: var( --luzmo-date-time-picker-quiet-button-offset, var(--date-time-picker-text-to-visual) );--date-time-picker-icon-to-text: var(--date-time-picker-edge-to-text);--date-time-picker-button-width-quiet: calc( var(--date-time-picker-button-width) - var( --date-time-picker-quiet-button-offset ) );--date-time-picker-focus-ring-gap: var( --luzmo-date-time-picker-focus-ring-gap, var(--luzmo-indicator-gap) );--date-time-picker-focus-thickness: var( --luzmo-date-time-picker-focus-thickness, var(--luzmo-indicator-width) );--date-time-picker-focus-animation: var( --luzmo-date-time-picker-focus-animation, var(--luzmo-animation-duration) );--date-time-picker-focus-ring-width: var( --luzmo-date-time-picker-focus-ring-width, var(--luzmo-border-width) );--date-time-picker-focus-ring-color: var( --highcontrast-datepicker-focus-ring-color, var(--luzmo-date-time-picker-focus-ring-color, var(--luzmo-indicator-color)) );--date-time-picker-focus-line-gap: var( --luzmo-date-time-picker-focus-line-gap, var(--luzmo-spacing-2) );--date-time-picker-invalid-quiet-color: var( --luzmo-date-time-picker-invalid-quiet-color, var(--luzmo-negative-color) );--date-time-picker-quiet-border-color-hover: var( --luzmo-date-time-picker-quiet-border-color-hover, var(--luzmo-border-color-hover) );--date-time-picker-border-color-disabled: var( --luzmo-date-time-picker-border-color-disabled, var(--luzmo-border-color-disabled) );--date-time-picker-dash-font-size: var( --luzmo-date-time-picker-dash-font-size, var(--date-time-picker-dash-font-size) );--date-time-picker-dash-color: var( --highcontrast-datepicker-dash-color, var(--luzmo-date-time-picker-dash-color, var(--luzmo-font-color)) );--date-time-picker-range-dash-padding-top: var( --luzmo-date-time-picker-range-dash-padding-top, 0 );--date-time-picker-range-dash-margin-inline-start: var( --luzmo-date-time-picker-range-dash-margin-left, calc(var(--date-time-picker-dash-font-size) * -.5) );--date-time-picker-range-input-width-first: var( --luzmo-date-time-picker-range-input-width-first, calc( var(--date-time-picker-initial-width) - var( --date-time-picker-generic-padding ) * 2 ) );--date-time-picker-input-width-base: calc( var(--date-time-picker-range-input-width-first) + var(--date-time-picker-icon-size) );--date-time-picker-input-width: var( --luzmo-date-time-picker-input-width, calc( var(--date-time-picker-input-width-base) + var(--date-time-picker-initial-height) ) );--date-time-picker-range-input-width-quiet-first: var( --luzmo-date-time-picker-range-input-width-quiet-first, calc( var(--date-time-picker-width-quiet-first) + var(--date-time-picker-width-quiet-second) ) );--date-time-picker-input-width-quiet: var( --luzmo-date-time-picker-input-width-quiet, calc( var(--date-time-picker-range-input-width-quiet-first) + var(--date-time-picker-icon-size) + var(--date-time-picker-initial-height) ) );--date-time-picker-datetime-input-width-first: var( --luzmo-date-time-picker-datetime-input-width-first, calc( var(--date-time-picker-input-width-base) + var(--date-time-picker-datetime-width-first) ) );--date-time-picker-datetime-input-width: var( --luzmo-date-time-picker-datetime-input-width, calc( var(--date-time-picker-datetime-input-width-first) + var(--date-time-picker-icon-size) + var(--date-time-picker-initial-height) ) );--date-time-picker-datetime-quiet-input-width-first: var( --luzmo-date-time-picker-datetime-quiet-input-width-first, calc( var(--date-time-picker-input-width-base) + var(--date-time-picker-input-datetime-width) ) );--date-time-picker-datetime-quiet-input-width: var( --luzmo-date-time-picker-datetime-quiet-input-width, calc( var(--date-time-picker-datetime-quiet-input-width-first) + var(--date-time-picker-icon-size) + var(--date-time-picker-initial-height) ) );--date-time-picker-padding-inline-end: var( --luzmo-date-time-picker-padding-inline, calc( var(--date-time-picker-button-width) + var(--date-time-picker-edge-to-text) - var( --date-time-picker-border-width ) * 2 ) );--date-time-picker-padding-inline-end-quiet: var( --luzmo-date-time-picker-padding-inline-quiet, calc( var(--date-time-picker-button-width) + var(--date-time-picker-edge-to-text) - var( --date-time-picker-quiet-button-offset ) ) );--date-time-picker-padding-inline-end-invalid-quiet: var( --luzmo-date-time-picker-padding-inline-end-invalid-quiet, calc( var(--date-time-picker-button-width-quiet) + var(--date-time-picker-icon-size) + var(--date-time-picker-icon-to-text) ) );min-inline-size:var(--luzmo-date-time-picker-min-width, var(--date-time-picker-min-width));border-radius:var(--date-time-picker-border-radius);flex-flow:row;display:inline-flex;position:relative}:host([disabled]){--luzmo-date-time-picker-dash-color: var( --luzmo-date-time-picker-dash-color-disabled, var(--disabled-content-color) );--luzmo-text-field-border-color-disabled: transparent}:host([invalid]),:host([invalid]) #text-field .icon{--luzmo-text-field-icon-spacing-inline-end-invalid: calc( var(--date-time-picker-button-width) + var(--date-time-picker-invalid-icon-to-button) );--luzmo-text-field-icon-spacing-inline-end-quiet-invalid: calc( var(--date-time-picker-button-width-quiet) + var(--date-time-picker-invalid-icon-to-button-quiet) )}:host(:not([quiet])){inline-size:var(--luzmo-date-time-picker-width, var(--date-time-picker-width))}:host([quiet]){inline-size:var(--luzmo-date-time-picker-width-quiet, var(--date-time-picker-width-quiet, var(--date-time-picker-width)))}:host(:not([quiet],[disabled])){--luzmo-picker-button-border-color: var( --date-time-picker-button-border-color )}:host([focused]),:host([focused]:not([quiet],[disabled])){--luzmo-picker-button-border-color: var( --date-time-picker-button-border-color-focus )}:host([invalid]:not([quiet],[disabled])){--luzmo-picker-button-border-color: var( --date-time-picker-button-border-color-invalid )}.input{inline-size:100%;flex:1;padding-inline-end:var(--date-time-picker-padding-inline-end);border-color:var(--luzmo-date-time-picker-border-color, var(--datepicker-border-color))}:host .input:read-only{border-color:var(--luzmo-date-time-picker-border-color, var(--datepicker-border-color))}.input.luzmo-DatePicker-startField{border-inline-end:0;border-start-end-radius:0;border-end-end-radius:0;padding-inline-end:var(--luzmo-date-time-picker-generic-padding, var(--date-time-picker-generic-padding))}.input.luzmo-DatePicker-endField{border-inline-start:0;border-start-start-radius:0;border-end-start-radius:0;padding-inline-start:var(--luzmo-date-time-picker-generic-padding, var(--date-time-picker-generic-padding))}luzmo-picker-button{position:absolute;inset-inline-end:0}.luzmo-DatePicker-rangeDash{color:var(--date-time-picker-dash-color);line-height:var(--luzmo-date-time-picker-dash-line-height, var(--date-time-picker-dash-line-height));flex:initial;inline-size:0;z-index:1;padding-block-start:var(--date-time-picker-range-dash-padding-top)}.luzmo-DatePicker-rangeDash:before{content:"–";margin-block:0;margin-inline:var(--date-time-picker-range-dash-margin-inline-start);text-align:center;vertical-align:middle;inline-size:var(--date-time-picker-dash-font-size);display:inline-block;overflow:hidden}:host([quiet]){--luzmo-date-time-picker-border-radius: var( --date-time-picker-border-radius-quiet );--luzmo-date-time-picker-padding-inline: var( --date-time-picker-padding-inline-end-quiet );--luzmo-picker-button-border-color-disabled: var( --date-time-picker-border-color-disabled );--luzmo-picker-button-background-color-hover-disabled: var( --date-time-picker-border-color-disabled )}:host([quiet][disabled]){--luzmo-text-field-border-color-disabled: var( --date-time-picker-border-color-disabled )}:host([quiet][invalid]) .input:not(.luzmo-DatePicker-startField){padding-inline-end:var(--date-time-picker-padding-inline-end-invalid-quiet)}@media (hover: hover){:host(:hover):not([focused],[disabled],[invalid]){--luzmo-picker-button-border-color: var( --date-time-picker-quiet-border-color-hover )}}:host([quiet][invalid]){--luzmo-picker-button-border-color: var( --date-time-picker-invalid-quiet-color )}:host([quiet]) luzmo-picker-button{inline-size:auto;inset-inline-end:calc(var(--date-time-picker-quiet-button-offset) * -1)}:host([quiet]) luzmo-picker-button:not(.is-open){--luzmo-picker-button-border-color-disabled: transparent}:host([quiet]) luzmo-picker-button:not(:disabled,.is-open){--luzmo-picker-button-background-color: transparent}.luzmo-DatePicker--range{--luzmo-date-time-picker-border-radius: var(--date-time-picker-border-radius)}.luzmo-DatePicker--range:after{pointer-events:none;content:"";margin:calc(var(--date-time-picker-focus-ring-gap) * -1);border-radius:calc(var(--date-time-picker-border-radius) + var(--date-time-picker-focus-ring-gap));transition:box-shadow var(--date-time-picker-focus-animation) ease-in-out,border-color var(--date-time-picker-focus-animation) ease-in-out;border-color:#0000;position:absolute;top:0;right:0;bottom:0;left:0}:host([focused]) .luzmo-DatePicker--range:not(.luzmo-DatePicker--quiet):after{box-shadow:0 0 0 var(--date-time-picker-focus-ring-width) var(--date-time-picker-focus-ring-color)}:host([focused]) .luzmo-DatePicker--range:not(.luzmo-DatePicker--quiet) #text-field:after{display:none}:host([quiet]) .luzmo-DatePicker--range{--luzmo-date-time-picker-border-radius: var( --date-time-picker-border-radius-quiet )}:host([quiet][focused]) .luzmo-DatePicker--range:after{box-shadow:none;border-block-end:var(--date-time-picker-focus-thickness) solid var(--date-time-picker-focus-ring-color);border-radius:0;margin:0;inset-block-end:calc(var(--date-time-picker-focus-line-gap) * -1)}:host([quiet]) .luzmo-DatePicker--range #text-field{min-inline-size:0;inline-size:var(--date-time-picker-input-width-quiet)}:host([quiet]) .luzmo-DatePicker--range #text-field:first-of-type{inline-size:var(--date-time-picker-range-input-width-quiet-first)}.luzmo-DatePicker--range.luzmo-DatePicker--datetimeRange #text-field{inline-size:var(--date-time-picker-datetime-input-width);min-inline-size:0}.luzmo-DatePicker--range.luzmo-DatePicker--datetimeRange #text-field:first-of-type{inline-size:var(--date-time-picker-datetime-input-width-first)}:host([quiet]) .luzmo-DatePicker--range.luzmo-DatePicker--datetimeRange #text-field{inline-size:var(--date-time-picker-datetime-quiet-input-width)}:host([quiet]) .luzmo-DatePicker--range.luzmo-DatePicker--datetimeRange #text-field:first-of-type{inline-size:var(--date-time-picker-datetime-quiet-input-width-first)}.luzmo-DatePicker--range #text-field{flex:initial;min-inline-size:0;inline-size:var(--date-time-picker-input-width)}.luzmo-DatePicker--range #text-field:first-of-type{inline-size:var(--date-time-picker-range-input-width-first)}@media (forced-colors: active){:host{--highcontrast-datepicker-dash-color: CanvasText;--highcontrast-datepicker-focus-ring-color: Highlight;--highcontrast-datepicker-pickerbutton-border-color: Highlight}:host([disabled]){--highcontrast-datepicker-dash-color: GrayText}:host([quiet][invalid]){--highcontrast-datepicker-pickerbutton-border-color: Highlight}}:host{--date-time-picker-width: auto;--date-time-picker-initial-height: var(--system-date-picker-initial-height);--date-time-picker-font-color-default: var(--luzmo-font-color);--datepicker-border-color: var(--luzmo-border-color);--date-time-picker-button-indicator-color: var(--luzmo-indicator-color);--text-field-focus-indicator-color: var(--luzmo-background-color-highlight);--date-time-picker-initial-width: 120px;--date-time-picker-min-width: 160px;--date-time-picker-calendar-padding: var(--luzmo-spacing-4);--date-time-picker-icon-size: 18px;--date-time-picker-dash-font-size: var(--luzmo-font-size);--date-time-picker-text-to-visual: var(--luzmo-spacing-3);--date-time-picker-edge-to-disclosure-icon: var(--luzmo-spacing-3);--date-time-picker-edge-to-text: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--date-time-picker-icon-to-text: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--date-time-picker-invalid-icon-to-button: var(--luzmo-spacing-3);--date-time-picker-generic-padding: var(--luzmo-spacing-4)}:host([size=s]){--date-time-picker-min-width: 140px;--date-time-picker-calendar-padding: var(--luzmo-spacing-3);--date-time-picker-icon-size: 16px;--date-time-picker-dash-font-size: var(--luzmo-font-size-s);--date-time-picker-text-to-visual: calc( var(--luzmo-spacing-2) + var(--luzmo-spacing-1) );--date-time-picker-edge-to-disclosure-icon: calc( var(--luzmo-spacing-2) + var(--luzmo-spacing-1) );--date-time-picker-edge-to-text: var(--luzmo-spacing-3);--date-time-picker-invalid-icon-to-button: calc( var(--luzmo-spacing-2) + var(--luzmo-spacing-1) );--date-time-picker-icon-to-text: var(--luzmo-spacing-3)}:host([invalid][size=s]){--text-field-icon-spacing-block-invalid: calc( var(--luzmo-spacing-2) + var(--luzmo-spacing-1) )}:host([size=m]){--date-time-picker-min-width: 160px;--date-time-picker-calendar-padding: var(--luzmo-spacing-4);--date-time-picker-icon-size: 18px;--date-time-picker-dash-font-size: var(--luzmo-font-size-m);--date-time-picker-text-to-visual: var(--luzmo-spacing-3);--date-time-picker-edge-to-disclosure-icon: var(--luzmo-spacing-3);--date-time-picker-edge-to-text: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--date-time-picker-invalid-icon-to-button: var(--luzmo-spacing-3);--date-time-picker-icon-to-text: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) )}:host([size=l]){--date-time-picker-min-width: 180px;--date-time-picker-calendar-padding: var(--luzmo-spacing-5);--date-time-picker-icon-size: 20px;--date-time-picker-dash-font-size: var(--luzmo-font-size-l);--date-time-picker-text-to-visual: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--date-time-picker-edge-to-disclosure-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--date-time-picker-edge-to-text: var(--luzmo-spacing-4);--date-time-picker-invalid-icon-to-button: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--date-time-picker-icon-to-text: var(--luzmo-spacing-4)}:host([size=xl]){--date-time-picker-min-width: 200px;--date-time-picker-calendar-padding: calc( var(--luzmo-spacing-5) + var(--luzmo-spacing-1) );--date-time-picker-icon-size: 22px;--date-time-picker-dash-font-size: var(--luzmo-font-size-xl);--date-time-picker-text-to-visual: var(--luzmo-spacing-4);--date-time-picker-edge-to-disclosure-icon: var(--luzmo-spacing-4);--date-time-picker-edge-to-text: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--date-time-picker-invalid-icon-to-button: var(--luzmo-spacing-4);--date-time-picker-icon-to-text: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) )}:host{--status-icon-size: var( --luzmo-text-field-icon-size-invalid, var(--text-field-icon-size-invalid) );--picker-button-size: var( --luzmo-text-field-height, var(--text-field-height) );--input-spacing: var( --luzmo-text-field-spacing-inline, var(--text-field-spacing-inline) );--input-border-width: var( --luzmo-text-field-border-width, var(--luzmo-border-width) );--text-to-icon: var( --luzmo-text-field-icon-spacing-inline-start-invalid, var(--text-field-icon-spacing-inline-start-invalid) );--date-time-picker-input-width: var(--date-time-picker-width);flex-wrap:wrap}:host #text-field{display:inline-block}:host #text-field .input,:host([quiet]) #text-field .input,:host([valid]) #text-field .input,:host([invalid]) #text-field .input{inline-size:100%}:host #text-field .input,:host([quiet]) #text-field .input{padding-inline-end:calc(var(--picker-button-size) + var(--input-spacing) - var(--input-border-width))}:host([valid]) #text-field .input,:host([invalid]) #text-field .input{inline-size:100%;padding-inline-end:calc(var(--status-icon-size) + var(--picker-button-size) + var(--input-spacing) - var(--input-border-width) + var(--text-to-icon))}@media (hover: hover){:host([invalid]) #text-field:hover .input,:host([focused][invalid]) .input:hover,:host([focused][invalid]) #text-field:hover .input{border-color:var(--highcontrast-text-field-border-color-invalid-default, var(--luzmo-text-field-border-color-invalid-default, var(--luzmo-negative-color-hover)))}}luzmo-picker-button:focus-visible{outline:none}luzmo-popover{overflow-y:auto}luzmo-popover .popover-content{padding:var(--luzmo-date-time-picker-calendar-padding, var(--date-time-picker-calendar-padding))}.input-content{display:flex;align-items:center;height:100%;overflow:auto hidden;scrollbar-width:none;line-height:normal}.input-content::-webkit-scrollbar{display:none;width:0;height:0}.literal-segment,.editable-segment{display:inline-block;color:var(--luzmo-date-time-picker-font-color-default, var(--date-time-picker-font-color-default))}.editable-segment{padding:0 .15em;font-variant-numeric:tabular-nums;text-align:end;white-space:nowrap;caret-color:transparent;outline:none}[dir=ltr] .editable-segment{text-align:start}.literal-segment{white-space:pre;user-select:none;-webkit-user-select:none}.is-placeholder,.is-placeholder+.literal-segment{color:var(--luzmo-font-color-disabled)}.editable-segment:focus-visible{color:var(--white);background-color:var(--highcontrast-text-field-focus-indicator-color, var(--luzmo-text-field-focus-indicator-color, var(--text-field-focus-indicator-color)))}.editable-segment::selection{background-color:transparent}';var fe=Object.defineProperty,ve=Object.getOwnPropertyDescriptor,p=(n,e,t,i)=>{for(var a=i>1?void 0:i?ve(e,t):e,r=n.length-1,s;r>=0;r--)(s=n[r])&&(a=(i?s(e,t,a):s(a))||a);return i&&a&&fe(e,t,a),a};class m extends K.ManageHelpText(I.SizedMixin(G.Focusable,{validSizes:Object.values(I.ElementSizes)})){constructor(){super(),this._precision=v.Minute,this.isUserSetPrecision=!1,this.invalid=!1,this.readonly=!1,this.quiet=!1,this.placement="bottom",this.language="en",this.labels={previous:"Previous",next:"Next",today:"Today",selected:"Selected",empty:"Empty",calendar:"Calendar"},this.focused=!1,this.segments=new M([]),this.isCalendarOpen=!1,this._timeZone=this.timeZone??c.$14e0f24ef4ac5c92$export$aa8b41735afcabd2(),this.cachedLocalTime=c.$14e0f24ef4ac5c92$export$461939dd4422153(this._timeZone),this.setNumberParser(),this.setDateFormatter(),this.setAriaDateFormatter(),this.addEventListener("focusin",()=>this.previousCommitedValue=this._value),this.addEventListener("focusout",()=>this.commitValue())}static get styles(){return[u.r(pe),u.r(X.textFieldStyles)]}get precision(){return this._precision}set precision(e){this.isUserSetPrecision=!0;const t=this._precision;e!==t&&(this._precision=e,this.requestUpdate("precision",t))}get _language(){try{return this.language?new Intl.Locale(this.language).language:"en"}catch{return"en"}}get focusElement(){return this.firstEditableSegment}get currentDate(){return this._value?c.$11d87f3f76e88657$export$84c95a83c799e074(this._value,this._timeZone):this.cachedLocalTime}get includesTime(){return[v.Hour,v.Minute,v.Second,v.Millisecond].includes(this.precision)}clear(){this._value=void 0,this.setSegments()}willUpdate(e){const t=e.has("value"),i=e.has("timeZone"),a=e.has("min"),r=e.has("max"),s=e.has("language"),l=e.has("dateFormat"),h=e.has("dateSeparator"),d=e.has("precision"),g=e.has("segments"),b=e.has("disabled");if(s&&this.setNumberParser(),(s||d)&&(this.setDateFormatter(),this.setAriaDateFormatter()),t||a||r||i){this._value=this.value?c.$fae977aafc393c5c$export$5adfdab05168c219(new Date(this.value).toISOString(),"UTC"):void 0,this._min=this.min?c.$fae977aafc393c5c$export$5adfdab05168c219(new Date(this.min).toISOString(),"UTC"):void 0,this._max=this.max?c.$fae977aafc393c5c$export$5adfdab05168c219(new Date(this.max).toISOString(),"UTC"):void 0;const f=this.mostSpecificDateValue;f&&(this.convertDatePropsToMatch(f),this.checkDatePropsCompliance(a||r),this.updateDateProps(),this.updateDefaultPrecision())}(t||s||d||l||i||h)&&this.setSegments(),g&&this.setValueFromSegments(),b&&this.isCalendarOpen&&(this.isCalendarOpen=!1);const k=this._value&&this.labels.selected+": "+this.ariaDateFormatter.format(U(this._value));this.setAttribute("aria-label",k??this.labels.empty)}get mostSpecificDateValue(){const e=[this._value,this._min,this._max].filter(r=>r!==void 0);if(e.length===0)return;const t=e.filter(r=>_(r));if(t.length>0)return t[0];const i=e.filter(r=>C(r));return i.length>0?i[0]:e.find(r=>F(r))}convertDatePropsToMatch(e){if(_(e)){console.log("dateValueZ",e),this._timeZone=this.timeZone??e.timeZone,this._value=this._value&&c.$11d87f3f76e88657$export$84c95a83c799e074(this._value,this._timeZone),this._min=this._min&&c.$11d87f3f76e88657$export$84c95a83c799e074(this._min,this._timeZone),this._max=this._max&&c.$11d87f3f76e88657$export$84c95a83c799e074(this._max,this._timeZone);return}if(this._timeZone=this.timeZone??c.$14e0f24ef4ac5c92$export$aa8b41735afcabd2(),C(e)){console.log("dateValue",e),this._value=this._value&&c.$11d87f3f76e88657$export$b21e0b124e224484(this._value),this._min=this._min&&c.$11d87f3f76e88657$export$b21e0b124e224484(this._min),this._max=this._max&&c.$11d87f3f76e88657$export$b21e0b124e224484(this._max);return}this._value=this._value&&c.$11d87f3f76e88657$export$93522d1a439f3617(this._value),this._min=this._min&&c.$11d87f3f76e88657$export$93522d1a439f3617(this._min),this._max=this._max&&c.$11d87f3f76e88657$export$93522d1a439f3617(this._max)}checkDatePropsCompliance(e){e&&this._min&&this._max&&(this._min.compare(this._max)<0||(console.warn(this,`<${this.localName}> expects the 'min' to be less than 'max'. Please ensure that 'min' property's date is earlier than 'max' property's date.`),this._min=void 0,this._max=void 0)),this.isNonCompliantValue()&&(console.warn(this,`<${this.localName}> expects the preselected value to comply with the min and max constraints. Please ensure that 'value' property's date is in between the dates for the 'min' and 'max' properties.`),this._value=void 0),!this._min&&!this._max&&!this._value&&(this._timeZone=c.$14e0f24ef4ac5c92$export$aa8b41735afcabd2())}isNonCompliantValue(){return this._value===void 0?!1:!!(this._min&&this._value.compare(this._min)<0||this._max&&this._value.compare(this._max)>0)}updateDateProps(){const e=this.mostSpecificDateValue;if(!e||!this.isUserSetPrecision)return;this.includesTime&&F(e)&&this.convertDatePropsToMatch(c.$11d87f3f76e88657$export$b21e0b124e224484(e))}updateDefaultPrecision(){if(this.isUserSetPrecision)return;const e=this.mostSpecificDateValue;e&&(this._precision=F(e)?v.Day:v.Minute)}render(){return u.x`
|
|
19
|
+
<div id="text-field">
|
|
20
|
+
${this.renderStateIcons()} ${this.renderInputContent()}
|
|
21
|
+
</div>
|
|
22
|
+
${this.renderHelpText(this.invalid)}${this.renderPicker()}
|
|
23
|
+
`}renderStateIcons(){return this.invalid?u.x`
|
|
24
|
+
<luzmo-icon
|
|
25
|
+
.icon=${O.luzmoAlert}
|
|
26
|
+
.size=${this.size}
|
|
27
|
+
id="invalid"
|
|
28
|
+
class="icon"
|
|
29
|
+
></luzmo-icon>
|
|
30
|
+
`:u.E}renderPicker(){if(this.readonly)return u.E;const e=()=>this.isCalendarOpen=!1,t=()=>this.isCalendarOpen=!0;return u.x`
|
|
31
|
+
<luzmo-picker-button
|
|
32
|
+
?open=${this.isCalendarOpen}
|
|
33
|
+
?quiet=${this.quiet}
|
|
34
|
+
?invalid=${this.invalid}
|
|
35
|
+
?disabled=${this.disabled}
|
|
36
|
+
.size=${this.size}
|
|
37
|
+
@click=${t}
|
|
38
|
+
label=${this.labels.calendar}
|
|
39
|
+
>
|
|
40
|
+
<slot name="calendar-icon" slot="icon">
|
|
41
|
+
<luzmo-icon
|
|
42
|
+
.icon=${O.luzmoCalendar}
|
|
43
|
+
.size=${this.size}
|
|
44
|
+
block
|
|
45
|
+
></luzmo-icon>
|
|
46
|
+
</slot>
|
|
47
|
+
</luzmo-picker-button>
|
|
48
|
+
|
|
49
|
+
<luzmo-overlay
|
|
50
|
+
.triggerElement=${this.input}
|
|
51
|
+
type="modal"
|
|
52
|
+
placement=${this.placement??"bottom"}
|
|
53
|
+
offset="0"
|
|
54
|
+
?open=${this.isCalendarOpen}
|
|
55
|
+
@luzmo-closed=${e}
|
|
56
|
+
>
|
|
57
|
+
<luzmo-popover>
|
|
58
|
+
<div class="popover-content">
|
|
59
|
+
<luzmo-calendar
|
|
60
|
+
.value=${this._value?this._value.toString().slice(0,10):void 0}
|
|
61
|
+
.min=${this._min?this._min.toString():void 0}
|
|
62
|
+
.max=${this._max?this._max.toString():void 0}
|
|
63
|
+
.labels=${this.labels}
|
|
64
|
+
.size=${this.size}
|
|
65
|
+
.language=${this.language}
|
|
66
|
+
@change=${this.handleChange}
|
|
67
|
+
></luzmo-calendar>
|
|
68
|
+
</div>
|
|
69
|
+
</luzmo-popover>
|
|
70
|
+
</luzmo-overlay>
|
|
71
|
+
`}handleChange(e){var i,a,r,s,l,h,d;e.stopPropagation(),this.isCalendarOpen=!1,(i=e.target)!=null&&i.value&&(this.value=(a=e.target)==null?void 0:a.value);const t=c.$fae977aafc393c5c$export$6b862160d295c8e(((r=e.target)==null?void 0:r.value)??"");if(this.includesTime){const g=((s=this.segments.hour)==null?void 0:s.value)??0,b=((l=this.segments.minute)==null?void 0:l.value)??0,k=((h=this.segments.second)==null?void 0:h.value)??0,f=((d=this.segments.millisecond)==null?void 0:d.value)??0,z=new c.$35ea8db9cb2ccb90$export$680ea196effce5f(g,b,k,f),y=this.mostSpecificDateValue;this._value=c.$11d87f3f76e88657$export$b21e0b124e224484(t,z),y&&_(y)&&(this._value=c.$11d87f3f76e88657$export$84c95a83c799e074(this._value,this._timeZone))}else this._value=t;this.commitValue()}renderInputContent(){const e=()=>this.focused=!this.readonly,t=()=>this.focused=!1;return u.x`
|
|
72
|
+
<div class="input">
|
|
73
|
+
<span
|
|
74
|
+
class="input-content"
|
|
75
|
+
@focusin=${e}
|
|
76
|
+
@focusout=${t}
|
|
77
|
+
@keydown=${this.handleKeydown}
|
|
78
|
+
@input=${this.handleInput}
|
|
79
|
+
>
|
|
80
|
+
${this.renderSegments()}
|
|
81
|
+
</span>
|
|
82
|
+
</div>
|
|
83
|
+
`}renderSegments(){return this.segments.all.map(e=>L.n(e.type===o.Literal,()=>this.renderLiteralSegment(e),()=>this.renderEditableSegment(e)))}renderLiteralSegment(e){return u.x`
|
|
84
|
+
<span
|
|
85
|
+
class="literal-segment"
|
|
86
|
+
data-test-id=${e.type}
|
|
87
|
+
aria-hidden="true"
|
|
88
|
+
>${e.formatted}</span>
|
|
89
|
+
`}renderEditableSegment(e){const t=!this.disabled&&!this.readonly,i=e.value===void 0,a=e.type===o.DayPeriod?"text":"numeric",r={"editable-segment":!0,"is-placeholder":i},s=e.type!==o.Year&&String(e.maxValue).length>0,l={minWidth:s?`${s}ch`:void 0};return u.x`
|
|
90
|
+
<div
|
|
91
|
+
role="spinbutton"
|
|
92
|
+
aria-valuenow=${S.o(e.value)}
|
|
93
|
+
aria-valuemin=${e.minValue}
|
|
94
|
+
aria-valuemax=${e.maxValue}
|
|
95
|
+
aria-label=${e.label}
|
|
96
|
+
aria-valuetext=${S.o(e.value===void 0?this.labels.empty:e.formatted)}
|
|
97
|
+
contenteditable=${S.o(t?!0:void 0)}
|
|
98
|
+
inputmode=${S.o(t?a:void 0)}
|
|
99
|
+
tabindex=${S.o(t?"0":void 0)}
|
|
100
|
+
class=${j.e(r)}
|
|
101
|
+
style=${W.o(l)}
|
|
102
|
+
data-type=${e.type}
|
|
103
|
+
.innerText=${this.renderSegmentText(e)}
|
|
104
|
+
></div>
|
|
105
|
+
`}renderSegmentText(e){const t=e.value===void 0;return L.n(t,()=>e.placeholder??"",()=>e.formatted??"")}handleKeydown(e){var a;const t=e.target,i=t.dataset.type;if(i)switch(e.code){case"ArrowUp":{this.incrementValue(i);break}case"ArrowDown":{this.decrementValue(i);break}case"ArrowRight":{this.focusSegment(t,"next");break}case"ArrowLeft":{this.focusSegment(t,"previous");break}case"Enter":case"Space":{this.commitValue();break}case"Backspace":case"Delete":{e.preventDefault(),((a=this.segments.getByType(i))==null?void 0:a.value)===void 0?this.focusSegment(t,"previous"):this.clearSegmentContent(i);break}}}get modifierParams(){return{dateFormatter:this.dateFormatter,segments:this.segments,currentDate:this.currentDate}}incrementValue(e){const t=new ae(this.modifierParams);this.segments=t.modify(e),this.dispatchInput()}decrementValue(e){const t=new ie(this.modifierParams);this.segments=t.modify(e),this.dispatchInput()}focusSegment(e,t){let i=!1,a=e;for(;!i;){const r=t==="previous"?a.previousElementSibling:a.nextElementSibling;if(!r)break;r.getAttribute("contenteditable")&&(r.focus(),i=!0),a=r}}commitValue(){if(!(this._value&&this.previousCommitedValue&&this._value.compare(this.previousCommitedValue)===0)){if(this._value===void 0&&this.previousCommitedValue===void 0){const e=this.segments.editableValues.every(t=>t===void 0);this.invalid=!e;return}this.invalid=!!(this._value===void 0||this.isNonCompliantValue()),this.previousCommitedValue=this._value,this.dispatchChange()}}clearSegmentContent(e){const t=this.segments.editableValues,i=new te(this.modifierParams);this.segments=i.modify(e);const a=this.segments.editableValues;E(t,a)||this.dispatchInput()}handleInput(e){e.stopPropagation();const t=e.target.dataset.type,i=this.segments.editableValues,a=new re({...this.modifierParams,eventData:e.data,numberParser:this.numberParser});this.segments=a.modify(t),this.updateSegmentContent(this.segments.getByType(t),e.target);const r=this.segments.editableValues;E(i,r)||this.dispatchInput()}updateSegmentContent(e,t){t.textContent=e.value===void 0?e.placeholder:e.formatted}createOutputString(e){return e?_(e)?this._value.toAbsoluteString():new Date(this._value.toString()).toISOString():""}dispatchChange(){const e=this.createOutputString(this._value);this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,cancelable:!0,detail:{value:e}}))}dispatchInput(){const e=this.createOutputString(this._value);this.dispatchEvent(new CustomEvent("input",{bubbles:!0,composed:!0,cancelable:!0,detail:{value:e}}))}setValueFromSegments(){const e=this.segments.getFormattedDate(this.precision);if(!e){this._value&&this.dispatchChange(),this._value=void 0;return}this._value===void 0&&this.dispatchChange();const t=this.mostSpecificDateValue;t?_(t)?this._value=c.$11d87f3f76e88657$export$84c95a83c799e074(e,this._timeZone):C(t)?this._value=c.$11d87f3f76e88657$export$b21e0b124e224484(e):this._value=c.$11d87f3f76e88657$export$93522d1a439f3617(e):this._value=e}setSegments(){var i,a,r,s;const t=new he(this.dateFormatter).createSegments(this.currentDate,this._value!==void 0);if(this.dateFormat){const l=t.all.findIndex(d=>d.type===o.Month),h=t.all.findIndex(d=>d.type===o.Day);if(l!==-1&&h!==-1){if(this.dateFormat==="mmdd"&&l>h){const d=t.all[l];t.all[l]=t.all[h],t.all[h]=d}else if(this.dateFormat==="ddmm"&&h>l){const d=t.all[h];t.all[h]=t.all[l],t.all[l]=d}}}typeof this.dateSeparator=="string"&&this.dateSeparator&&(((a=(i=t.all)==null?void 0:i[1])==null?void 0:a.type)===o.Literal&&(t.all[1].formatted=this.dateSeparator),((s=(r=t.all)==null?void 0:r[3])==null?void 0:s.type)===o.Literal&&(t.all[3].formatted=this.dateSeparator)),this.segments=t}setNumberParser(){this.numberParser=new R.$6c7bd7858deea686$export$cd11ab140839f11d(this._language,{maximumFractionDigits:0})}setDateFormatter(){this.dateFormatter=new c.$fb18d541ea1ad717$export$ad991b66133851cf(this._language,{day:"2-digit",month:"2-digit",year:"numeric",...this.getTimeOptions("2-digit")})}setAriaDateFormatter(){this.ariaDateFormatter=new c.$fb18d541ea1ad717$export$ad991b66133851cf(this._language,{day:"numeric",month:"long",year:"numeric",...this.getTimeOptions("numeric")})}getTimeOptions(e){switch(this.precision){case v.Millisecond:return{hour:e,minute:e,second:e,fractionalSecondDigits:3};case v.Second:return{hour:e,minute:e,second:e};case v.Minute:return{hour:e,minute:e};case v.Hour:return{hour:e};default:return{}}}}p([u.n({type:String,reflect:!0})],m.prototype,"value",2);p([u.n({type:String,reflect:!0})],m.prototype,"min",2);p([u.n({type:String,reflect:!0})],m.prototype,"max",2);p([u.n({type:String,attribute:"date-format",reflect:!0})],m.prototype,"dateFormat",2);p([u.n({type:String,attribute:"date-separator",reflect:!0})],m.prototype,"dateSeparator",2);p([u.n({type:String,reflect:!0})],m.prototype,"precision",1);p([u.n({type:Boolean,reflect:!0})],m.prototype,"invalid",2);p([u.n({type:Boolean,reflect:!0})],m.prototype,"readonly",2);p([u.n({type:Boolean,reflect:!0})],m.prototype,"quiet",2);p([u.n({type:String,reflect:!0})],m.prototype,"placement",2);p([u.n({type:String,attribute:"time-zone",reflect:!0})],m.prototype,"timeZone",2);p([u.n({type:String,reflect:!0})],m.prototype,"language",2);p([u.n({attribute:!1})],m.prototype,"labels",2);p([u.n({type:Boolean,reflect:!0})],m.prototype,"focused",2);p([P.r()],m.prototype,"_value",2);p([P.r()],m.prototype,"_min",2);p([P.r()],m.prototype,"_max",2);p([P.r()],m.prototype,"segments",2);p([P.r()],m.prototype,"isCalendarOpen",2);p([A.e(".editable-segment")],m.prototype,"firstEditableSegment",2);p([A.e(".input")],m.prototype,"input",2);customElements.get("luzmo-date-time-picker")||customElements.define("luzmo-date-time-picker",m);exports.LuzmoDateTimePicker=m;
|