@entur/datepicker 4.0.0-beta.0 → 4.0.0-beta.2
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/CHANGELOG.md +12 -0
- package/dist/datepicker.cjs.development.js +41 -22
- package/dist/datepicker.cjs.development.js.map +1 -1
- package/dist/datepicker.cjs.production.min.js +1 -1
- package/dist/datepicker.cjs.production.min.js.map +1 -1
- package/dist/datepicker.esm.js +40 -21
- package/dist/datepicker.esm.js.map +1 -1
- package/dist/shared/index.d.ts +1 -1
- package/dist/shared/utils.d.ts +10 -9
- package/dist/styles.css +4 -0
- package/package.json +2 -2
package/dist/datepicker.esm.js
CHANGED
|
@@ -13,7 +13,7 @@ import 'react-datepicker/dist/react-datepicker.css';
|
|
|
13
13
|
import { useDateFieldState, useDatePickerState, useTimeFieldState } from '@react-stately/datepicker';
|
|
14
14
|
import { useDateSegment, useDateField, useDatePicker, useTimeField } from '@react-aria/datepicker';
|
|
15
15
|
import { useLocale, I18nProvider } from '@react-aria/i18n';
|
|
16
|
-
import { ZonedDateTime, parseAbsolute, Time, CalendarDateTime, GregorianCalendar, isEqualDay, now,
|
|
16
|
+
import { ZonedDateTime, parseAbsolute, Time, CalendarDate, CalendarDateTime, getLocalTimeZone, GregorianCalendar, isEqualDay, now, getWeeksInMonth } from '@internationalized/date';
|
|
17
17
|
import { useCalendarCell, useCalendarGrid, useCalendar } from '@react-aria/calendar';
|
|
18
18
|
import { useCalendarState } from '@react-stately/calendar';
|
|
19
19
|
import { useButton } from '@react-aria/button';
|
|
@@ -513,19 +513,24 @@ var FieldSegment = function FieldSegment(_ref) {
|
|
|
513
513
|
};
|
|
514
514
|
|
|
515
515
|
/**
|
|
516
|
-
* Tar inn et JS Date-objekt og returnerer et av TimeValue-objektene fra @internationalized/date-pakken
|
|
517
|
-
* @param {Date} date JS Date-objekt som ønskes konvertert til et TimeValue-objekt
|
|
516
|
+
* Tar inn et JS Date-objekt og returnerer et av Date- eller TimeValue-objektene fra @internationalized/date-pakken
|
|
517
|
+
* @param {Date} date JS Date-objekt som ønskes konvertert til et Date- eller TimeValue-objekt
|
|
518
518
|
* @param {boolean} noDateOnlyTime Hvis datoen er irrelevant kan denne settes til true, da får man et Time-objekt uten dato tilbake
|
|
519
|
+
* @param {boolean} noTimeOnlyDate Hvis tidspunktet er irrelevant kan denne settes til true, da får man et CalendarDate-objekt uten tidspunkt tilbake
|
|
519
520
|
* @param {string} timeZone Tidssonen på IANA-formatet som tidpunktet skal konverteres til. Utelates denne får man et tidspunkt uten tidssone. Kan brukes med og uten en UTC-offset Vær obs på annen oppførsel med offset, les mer på beskrivelsen av offset
|
|
520
521
|
* @param {number} offset UTC-offset i millisekunder, må brukes med en tidssone. Ved å legge på en offset lager du en variant av en tidssone. Det betyr at tidspunktet ikke endres (time, minutt, sekund uendret), men tidssonen, med tilhørende offset, tidspunktet er i endres.
|
|
521
|
-
* @returns {Time | CalendarDateTime | ZonedDateTime} et av TimeValue-objektene med verdier fra date
|
|
522
|
+
* @returns {Time | CalendarDateTime | ZonedDateTime | CalendarDate} et av TimeValue-objektene med verdier fra date
|
|
522
523
|
*/
|
|
523
524
|
|
|
524
|
-
var
|
|
525
|
+
var nativeDateToTimeOrDateValue = function nativeDateToTimeOrDateValue(date, noDateOnlyTime, noTimeOnlyDate, timeZone, offset) {
|
|
525
526
|
if (noDateOnlyTime === void 0) {
|
|
526
527
|
noDateOnlyTime = false;
|
|
527
528
|
}
|
|
528
529
|
|
|
530
|
+
if (noTimeOnlyDate === void 0) {
|
|
531
|
+
noTimeOnlyDate = false;
|
|
532
|
+
}
|
|
533
|
+
|
|
529
534
|
if (timeZone) {
|
|
530
535
|
if (offset) {
|
|
531
536
|
return new ZonedDateTime(date.getFullYear(), date.getMonth() + 1, date.getDate(), timeZone, offset, date.getHours(), date.getMinutes(), date.getSeconds());
|
|
@@ -535,40 +540,54 @@ var nativeDateToTimeValue = function nativeDateToTimeValue(date, noDateOnlyTime,
|
|
|
535
540
|
}
|
|
536
541
|
|
|
537
542
|
if (noDateOnlyTime) return new Time(date.getHours(), date.getMinutes(), date.getSeconds(), 0);
|
|
543
|
+
if (noTimeOnlyDate) return new CalendarDate(date.getFullYear(), date.getMonth() + 1, date.getDate());
|
|
538
544
|
return new CalendarDateTime(date.getFullYear(), date.getMonth() + 1, date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds());
|
|
539
545
|
};
|
|
540
546
|
/**
|
|
541
|
-
* Tar inn et av TimeValue-objektene fra @internationalized/date-pakken og returnerer et JS Date-objekt
|
|
542
|
-
* @param {TimeValue}
|
|
543
|
-
* @param {string} timeZoneForCalendarDateTime Tidssonen
|
|
547
|
+
* Tar inn et av Date- eller TimeValue-objektene fra @internationalized/date-pakken og returnerer et JS Date-objekt
|
|
548
|
+
* @param {DateValue | TimeValue} value En dato eller et tidspunkt på Date- eller TimeValue-formatet som ønskes konvertert til et JS Date-objekt
|
|
549
|
+
* @param {string} timeZoneForCalendarDateTime Tidssonen value er i. Fungerer kun med typen er CalendarDateTime
|
|
544
550
|
* @returns {Date} et Date-objekt med verdier fra time
|
|
545
551
|
*/
|
|
546
552
|
// This function uses a lot of @ts-expect-error to make it work with all TimeValue types. Sorry ...
|
|
547
553
|
|
|
548
|
-
var
|
|
554
|
+
var timeOrDateValueToNativeDate = function timeOrDateValueToNativeDate(value, timeZoneForCalendarDateTime) {
|
|
549
555
|
// @ts-expect-error .day does not exist on Time-object
|
|
550
|
-
if (!
|
|
556
|
+
if (!value.day) {
|
|
551
557
|
// type is Time
|
|
552
|
-
var date = new Date();
|
|
553
|
-
|
|
554
|
-
date.
|
|
555
|
-
|
|
558
|
+
var date = new Date(); // @ts-expect-error hour does not exist on CalendarDate
|
|
559
|
+
|
|
560
|
+
date.setHours(value.hour); // @ts-expect-error minute does not exist on CalendarDate
|
|
561
|
+
|
|
562
|
+
date.setMinutes(value.minute); // @ts-expect-error second does not exist on CalendarDate
|
|
563
|
+
|
|
564
|
+
date.setSeconds(value.second);
|
|
556
565
|
return date;
|
|
566
|
+
} // @ts-expect-error .day does not exist on Time-object
|
|
567
|
+
|
|
568
|
+
|
|
569
|
+
if (!value.hour) {
|
|
570
|
+
// type is CalendarDate
|
|
571
|
+
// @ts-expect-error .toDate(timeZone) does not exist in type Time
|
|
572
|
+
return value.toDate(timeZoneForCalendarDateTime != null ? timeZoneForCalendarDateTime : getLocalTimeZone());
|
|
557
573
|
} // @ts-expect-error .timeZone does not exist in type Time and CalendarDateTime
|
|
558
574
|
|
|
559
575
|
|
|
560
|
-
if (!
|
|
576
|
+
if (!value.timeZone) {
|
|
561
577
|
// type is CalendarDateTime
|
|
562
578
|
if (timeZoneForCalendarDateTime) // @ts-expect-error .toDate(timeZone) does not exist in type Time
|
|
563
|
-
return
|
|
579
|
+
return value.toDate(timeZoneForCalendarDateTime);
|
|
564
580
|
return new Date( // @ts-expect-error not in type Time
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
581
|
+
value.year, // @ts-expect-error not in type Time
|
|
582
|
+
value.month - 1, // @ts-expect-error not in type Time
|
|
583
|
+
value.day, // @ts-expect-error not in type CalendarDate
|
|
584
|
+
value.hour, // @ts-expect-error not in type CalendarDate
|
|
585
|
+
value.minute, // @ts-expect-error not in type CalendarDate
|
|
586
|
+
value.second);
|
|
568
587
|
} // @ts-expect-error .toDate() does not exist in type Time or CalendarDateTime
|
|
569
588
|
|
|
570
589
|
|
|
571
|
-
return
|
|
590
|
+
return value.toDate();
|
|
572
591
|
};
|
|
573
592
|
var createCalendar = function createCalendar(identifier) {
|
|
574
593
|
if (identifier === void 0) {
|
|
@@ -1281,5 +1300,5 @@ var NativeTimePickerBase = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
|
|
|
1281
1300
|
|
|
1282
1301
|
warnAboutMissingStyles('datepicker', 'form', 'icons');
|
|
1283
1302
|
|
|
1284
|
-
export { Calendar, DateField, DatePicker, DatePickerBeta, NativeDatePicker, NativeTimePicker, TimePicker, ariaLabelIfNorwegian, createCalendar,
|
|
1303
|
+
export { Calendar, DateField, DatePicker, DatePickerBeta, NativeDatePicker, NativeTimePicker, TimePicker, ariaLabelIfNorwegian, createCalendar, nativeDateToTimeOrDateValue, timeOrDateValueToNativeDate };
|
|
1285
1304
|
//# sourceMappingURL=datepicker.esm.js.map
|