@mtes-mct/monitor-ui 24.1.1 → 24.2.1
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 +19 -0
- package/fields/DateRangePicker/index.d.ts +1 -0
- package/fields/DateRangePicker/index.d.ts.map +1 -1
- package/index.js +26 -14
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,22 @@
|
|
|
1
|
+
## [24.2.0](https://github.com/MTES-MCT/monitor-ui/compare/v24.1.1...v24.2.0) (2024-10-18)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* **fields:** add hasFullDayDefaultValue to date range picker ([5adc234](https://github.com/MTES-MCT/monitor-ui/commit/5adc2340b42aabe02b496ee2044957d47b4027c3))
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Code Refactoring
|
|
10
|
+
|
|
11
|
+
* **fields:** add early return ([af9360b](https://github.com/MTES-MCT/monitor-ui/commit/af9360b4bb35584f2705524f2d425b5bcb4fd4e8))
|
|
12
|
+
|
|
13
|
+
## [24.1.1](https://github.com/MTES-MCT/monitor-ui/compare/v24.1.0...v24.1.1) (2024-10-16)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
### Bug Fixes
|
|
17
|
+
|
|
18
|
+
* **utils:** add missing customDayjs typings for relativeTime extension ([c8b3e89](https://github.com/MTES-MCT/monitor-ui/commit/c8b3e89da12879f42c4f1c63fa09fc3b72a3db60))
|
|
19
|
+
|
|
1
20
|
## [24.1.0](https://github.com/MTES-MCT/monitor-ui/compare/v24.0.0...v24.1.0) (2024-10-16)
|
|
2
21
|
|
|
3
22
|
|
|
@@ -60,6 +60,7 @@ export interface DateRangePickerProps extends Omit<HTMLAttributes<HTMLFieldSetEl
|
|
|
60
60
|
*/
|
|
61
61
|
onChange?: ((nextValue: DateRange | undefined) => Promisable<void>) | ((nextValue: DateAsStringRange | undefined) => Promisable<void>);
|
|
62
62
|
readOnly?: boolean;
|
|
63
|
+
withFullDayDefaults?: boolean;
|
|
63
64
|
withTime?: boolean;
|
|
64
65
|
}
|
|
65
66
|
export interface DateRangePickerWithDateDateProps extends DateRangePickerProps {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/DateRangePicker/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAkCH,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAE3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE3C;;;;;;GAMG;AACH,MAAM,WAAW,oBACf,SAAQ,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,EAAE,cAAc,GAAG,UAAU,GAAG,aAAa,CAAC;IAC9F,gHAAgH;IAChH,aAAa,CAAC,EAAE,QAAQ,GAAG,cAAc,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5D,YAAY,CAAC,EAAE,SAAS,GAAG,iBAAiB,GAAG,SAAS,CAAA;IACxD,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC/B,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1C,yCAAyC;IACzC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAClC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACnC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7B,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAChC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAClC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACnC,uBAAuB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ;;;;OAIG;IACH,QAAQ,CAAC,EACL,CAAC,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,GACxD,CAAC,CAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AACD,MAAM,WAAW,gCAAiC,SAAQ,oBAAoB;IAC5E,YAAY,CAAC,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,KAAK,UAAU,CAAC,IAAI,CAAC,CAAA;CAClE;AACD,MAAM,WAAW,kCAAmC,SAAQ,oBAAoB;IAC9E,YAAY,EAAE,IAAI,CAAA;IAClB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS,KAAK,UAAU,CAAC,IAAI,CAAC,CAAA;CAC1E;AAGD,wBAAgB,eAAe,CAAC,KAAK,EAAE,gCAAgC,GAAG,GAAG,CAAC,OAAO,CAAA;AACrF,wBAAgB,eAAe,CAAC,KAAK,EAAE,kCAAkC,GAAG,GAAG,CAAC,OAAO,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/DateRangePicker/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAkCH,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAE3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE3C;;;;;;GAMG;AACH,MAAM,WAAW,oBACf,SAAQ,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,EAAE,cAAc,GAAG,UAAU,GAAG,aAAa,CAAC;IAC9F,gHAAgH;IAChH,aAAa,CAAC,EAAE,QAAQ,GAAG,cAAc,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5D,YAAY,CAAC,EAAE,SAAS,GAAG,iBAAiB,GAAG,SAAS,CAAA;IACxD,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC/B,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1C,yCAAyC;IACzC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAClC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACnC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7B,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAChC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAClC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACnC,uBAAuB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ;;;;OAIG;IACH,QAAQ,CAAC,EACL,CAAC,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,GACxD,CAAC,CAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AACD,MAAM,WAAW,gCAAiC,SAAQ,oBAAoB;IAC5E,YAAY,CAAC,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,KAAK,UAAU,CAAC,IAAI,CAAC,CAAA;CAClE;AACD,MAAM,WAAW,kCAAmC,SAAQ,oBAAoB;IAC9E,YAAY,EAAE,IAAI,CAAA;IAClB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS,KAAK,UAAU,CAAC,IAAI,CAAC,CAAA;CAC1E;AAGD,wBAAgB,eAAe,CAAC,KAAK,EAAE,gCAAgC,GAAG,GAAG,CAAC,OAAO,CAAA;AACrF,wBAAgB,eAAe,CAAC,KAAK,EAAE,kCAAkC,GAAG,GAAG,CAAC,OAAO,CAAA"}
|
package/index.js
CHANGED
|
@@ -67324,7 +67324,7 @@ var DateRangePosition = /*#__PURE__*/ function(DateRangePosition) {
|
|
|
67324
67324
|
}({});
|
|
67325
67325
|
|
|
67326
67326
|
function DateRangePicker({ baseContainer, className, defaultValue, disabled = false, error, hasSingleCalendar = false, isCompact = false, isErrorMessageHidden = false, isHistorical = false, isLabelHidden = false, isLight = false, isRequired = false, isStringDate = false, isTransparent = false, isUndefinedWhenDisabled = false, label, minutesRange = 15, name, onChange, // eslint-disable-next-line @typescript-eslint/naming-convention
|
|
67327
|
-
readOnly = false, style, withTime = false, ...nativeProps }) {
|
|
67327
|
+
readOnly = false, style, withFullDayDefaults = false, withTime = false, ...nativeProps }) {
|
|
67328
67328
|
/* eslint-disable no-null/no-null */ const startDateInputRef = useRef(null);
|
|
67329
67329
|
const startTimeInputRef = useRef(null);
|
|
67330
67330
|
const endDateInputRef = useRef(null);
|
|
@@ -67422,12 +67422,13 @@ readOnly = false, style, withTime = false, ...nativeProps }) {
|
|
|
67422
67422
|
forceUpdate
|
|
67423
67423
|
]);
|
|
67424
67424
|
const handleEndDateInputNext = useCallback(()=>{
|
|
67425
|
-
if (!withTime || !endTimeInputRef.current) {
|
|
67425
|
+
if (!withTime || !endTimeInputRef.current || withFullDayDefaults) {
|
|
67426
67426
|
return;
|
|
67427
67427
|
}
|
|
67428
67428
|
endTimeInputRef.current.focus();
|
|
67429
67429
|
}, [
|
|
67430
|
-
withTime
|
|
67430
|
+
withTime,
|
|
67431
|
+
withFullDayDefaults
|
|
67431
67432
|
]);
|
|
67432
67433
|
const handleEndDateInputPrevious = useCallback(()=>{
|
|
67433
67434
|
if (!startDateInputRef.current) {
|
|
@@ -67445,58 +67446,68 @@ readOnly = false, style, withTime = false, ...nativeProps }) {
|
|
|
67445
67446
|
if (!endDateInputRef.current) {
|
|
67446
67447
|
return;
|
|
67447
67448
|
}
|
|
67448
|
-
if (withTime && startTimeInputRef.current) {
|
|
67449
|
+
if (withTime && !withFullDayDefaults && startTimeInputRef.current) {
|
|
67449
67450
|
startTimeInputRef.current.focus();
|
|
67450
67451
|
return;
|
|
67451
67452
|
}
|
|
67452
67453
|
endDateInputRef.current.focus();
|
|
67453
67454
|
}, [
|
|
67454
|
-
withTime
|
|
67455
|
+
withTime,
|
|
67456
|
+
withFullDayDefaults
|
|
67455
67457
|
]);
|
|
67456
67458
|
const handleDateInputChange = useCallback((position, nextDateTuple, isFilled)=>{
|
|
67457
67459
|
if (position === DateRangePosition.START) {
|
|
67458
67460
|
selectedStartDateTupleRef.current = nextDateTuple;
|
|
67459
|
-
|
|
67460
|
-
if (!withTime || withTime && selectedStartTimeTupleRef.current) {
|
|
67461
|
+
if (!withTime || withTime && withFullDayDefaults || withTime && selectedStartTimeTupleRef.current) {
|
|
67461
67462
|
// we update the selected start datetime
|
|
67462
|
-
const startUtcTimeTuple =
|
|
67463
|
+
const startUtcTimeTuple = selectedStartTimeTupleRef.current ? selectedStartTimeTupleRef.current : [
|
|
67463
67464
|
'00',
|
|
67464
67465
|
'00'
|
|
67465
67466
|
];
|
|
67466
67467
|
const nextStartDateAsDayjs = getDayjsFromUtcDateAndTimeTuple(nextDateTuple, startUtcTimeTuple);
|
|
67468
|
+
selectedStartTimeTupleRef.current = startUtcTimeTuple;
|
|
67467
67469
|
selectedStartDateTimeAsDayjsRef.current = nextStartDateAsDayjs;
|
|
67468
67470
|
callOnChange();
|
|
67469
67471
|
}
|
|
67470
67472
|
if (isFilled) {
|
|
67471
67473
|
handleStartDateInputNext();
|
|
67474
|
+
forceUpdate();
|
|
67472
67475
|
}
|
|
67473
67476
|
} else {
|
|
67474
67477
|
selectedEndDateTupleRef.current = nextDateTuple;
|
|
67475
|
-
|
|
67476
|
-
if (!withTime || withTime && selectedEndTimeTupleRef.current) {
|
|
67478
|
+
if (!withTime || withTime && withFullDayDefaults || withTime && selectedEndTimeTupleRef.current) {
|
|
67477
67479
|
// we update the selected end datetime
|
|
67478
|
-
const endTimeTuple =
|
|
67480
|
+
const endTimeTuple = selectedEndTimeTupleRef.current ? selectedEndTimeTupleRef.current : [
|
|
67479
67481
|
'23',
|
|
67480
67482
|
'59'
|
|
67481
67483
|
];
|
|
67482
67484
|
const nextEndDateAsDayjs = getDayjsFromUtcDateAndTimeTuple(nextDateTuple, endTimeTuple, true);
|
|
67485
|
+
selectedEndTimeTupleRef.current = endTimeTuple;
|
|
67483
67486
|
selectedEndDateTimeAsDayjsRef.current = nextEndDateAsDayjs;
|
|
67484
67487
|
callOnChange();
|
|
67485
67488
|
}
|
|
67486
67489
|
if (isFilled) {
|
|
67490
|
+
if (withTime && withFullDayDefaults) {
|
|
67491
|
+
closeRangeCalendarPicker();
|
|
67492
|
+
forceUpdate();
|
|
67493
|
+
return;
|
|
67494
|
+
}
|
|
67487
67495
|
handleEndDateInputNext();
|
|
67488
67496
|
}
|
|
67489
67497
|
}
|
|
67490
67498
|
}, [
|
|
67499
|
+
closeRangeCalendarPicker,
|
|
67500
|
+
forceUpdate,
|
|
67501
|
+
withFullDayDefaults,
|
|
67502
|
+
withTime,
|
|
67491
67503
|
callOnChange,
|
|
67492
67504
|
handleEndDateInputNext,
|
|
67493
|
-
handleStartDateInputNext
|
|
67494
|
-
withTime
|
|
67505
|
+
handleStartDateInputNext
|
|
67495
67506
|
]);
|
|
67496
67507
|
const handleRangeCalendarPickerChange = useCallback((nextUtcDateTupleRange)=>{
|
|
67497
67508
|
const [nextStartUtcDateTuple, nextEndUtcDateTuple] = nextUtcDateTupleRange;
|
|
67498
67509
|
// If there is NO time input,
|
|
67499
|
-
if (!withTime) {
|
|
67510
|
+
if (!withTime || withTime && withFullDayDefaults && !selectedStartTimeTupleRef.current && !selectedEndTimeTupleRef.current) {
|
|
67500
67511
|
// we have to fix the start datetime at the beginning of the day
|
|
67501
67512
|
selectedStartDateTimeAsDayjsRef.current = getDayjsFromUtcDateAndTimeTuple(nextStartUtcDateTuple, [
|
|
67502
67513
|
'00',
|
|
@@ -67526,6 +67537,7 @@ readOnly = false, style, withTime = false, ...nativeProps }) {
|
|
|
67526
67537
|
}, [
|
|
67527
67538
|
callOnChange,
|
|
67528
67539
|
closeRangeCalendarPicker,
|
|
67540
|
+
withFullDayDefaults,
|
|
67529
67541
|
withTime
|
|
67530
67542
|
]);
|
|
67531
67543
|
const handleTimeInputChange = useCallback((position, nextTimeTuple)=>{
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mtes-mct/monitor-ui",
|
|
3
3
|
"description": "Common React components, hooks, utilities and CSS stylesheets for MonitorFish, MonitorEnv and RapportNav.",
|
|
4
|
-
"version": "24.
|
|
4
|
+
"version": "24.2.1",
|
|
5
5
|
"license": "AGPL-3.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"engines": {
|