myoperator-mcp 0.2.324 → 0.2.326
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/dist/index.js +68 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2542,9 +2542,12 @@ const YEAR_RANGE_BEFORE = 100;
|
|
|
2542
2542
|
const YEAR_RANGE_AFTER = 10;
|
|
2543
2543
|
const CALENDAR_SELECT_CONTENT_SELECTOR =
|
|
2544
2544
|
"[data-date-time-picker-calendar-select]";
|
|
2545
|
-
const
|
|
2545
|
+
const CALENDAR_SELECT_TRIGGER_SELECTOR =
|
|
2546
|
+
"[data-date-time-picker-calendar-select-trigger]";
|
|
2547
|
+
const CALENDAR_SELECT_TRIGGER_CLASS = "!w-[90px] !min-w-[90px] !gap-[6px] !px-3";
|
|
2546
2548
|
const CALENDAR_SELECT_CONTENT_CLASS =
|
|
2547
2549
|
"z-[10060] w-[var(--radix-select-trigger-width)] min-w-[var(--radix-select-trigger-width)] max-h-[min(16rem,var(--radix-select-content-available-height))]";
|
|
2550
|
+
type CalendarSelect = "month" | "year";
|
|
2548
2551
|
const DATE_TIME_INPUT_SEGMENT_RANGES = {
|
|
2549
2552
|
day: [0, 2],
|
|
2550
2553
|
month: [3, 5],
|
|
@@ -3220,6 +3223,8 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
3220
3223
|
formatDateForDisplay(currentValue.date, currentValue.startTime)
|
|
3221
3224
|
);
|
|
3222
3225
|
const [isDateInputFocused, setIsDateInputFocused] = React.useState(false);
|
|
3226
|
+
const [openCalendarSelect, setOpenCalendarSelect] =
|
|
3227
|
+
React.useState<CalendarSelect | null>(null);
|
|
3223
3228
|
const rootRef = React.useRef<HTMLDivElement | null>(null);
|
|
3224
3229
|
const triggerRef = React.useRef<HTMLDivElement | null>(null);
|
|
3225
3230
|
const popoverRef = React.useRef<HTMLDivElement | null>(null);
|
|
@@ -3290,11 +3295,39 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
3290
3295
|
setInternalOpen(nextOpen);
|
|
3291
3296
|
}
|
|
3292
3297
|
|
|
3298
|
+
if (!nextOpen) {
|
|
3299
|
+
setOpenCalendarSelect(null);
|
|
3300
|
+
}
|
|
3301
|
+
|
|
3293
3302
|
onOpenChange?.(nextOpen);
|
|
3294
3303
|
},
|
|
3295
3304
|
[isOpenControlled, onOpenChange]
|
|
3296
3305
|
);
|
|
3297
3306
|
|
|
3307
|
+
const handleCalendarSelectOpenChange = React.useCallback(
|
|
3308
|
+
(select: CalendarSelect, nextOpen: boolean) => {
|
|
3309
|
+
setOpenCalendarSelect((currentSelect) => {
|
|
3310
|
+
if (nextOpen) return select;
|
|
3311
|
+
|
|
3312
|
+
return currentSelect === select ? null : currentSelect;
|
|
3313
|
+
});
|
|
3314
|
+
},
|
|
3315
|
+
[]
|
|
3316
|
+
);
|
|
3317
|
+
|
|
3318
|
+
const handleCalendarSelectTriggerPointerDown = React.useCallback(
|
|
3319
|
+
(
|
|
3320
|
+
select: CalendarSelect,
|
|
3321
|
+
event: React.PointerEvent<HTMLButtonElement>
|
|
3322
|
+
) => {
|
|
3323
|
+
if (openCalendarSelect !== select) return;
|
|
3324
|
+
|
|
3325
|
+
event.preventDefault();
|
|
3326
|
+
setOpenCalendarSelect(null);
|
|
3327
|
+
},
|
|
3328
|
+
[openCalendarSelect]
|
|
3329
|
+
);
|
|
3330
|
+
|
|
3298
3331
|
const setTriggerRef = React.useCallback(
|
|
3299
3332
|
(node: HTMLDivElement | null) => {
|
|
3300
3333
|
triggerRef.current = node;
|
|
@@ -3323,6 +3356,12 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
3323
3356
|
}
|
|
3324
3357
|
}, [displayValue, isDateInputFocused]);
|
|
3325
3358
|
|
|
3359
|
+
React.useEffect(() => {
|
|
3360
|
+
if (!open) {
|
|
3361
|
+
setOpenCalendarSelect(null);
|
|
3362
|
+
}
|
|
3363
|
+
}, [open]);
|
|
3364
|
+
|
|
3326
3365
|
React.useEffect(() => {
|
|
3327
3366
|
if (!open) return;
|
|
3328
3367
|
|
|
@@ -3332,12 +3371,14 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
3332
3371
|
!isPointerInsideElement(event, popoverRef.current) &&
|
|
3333
3372
|
!isPointerInsideSelector(event, CALENDAR_SELECT_CONTENT_SELECTOR)
|
|
3334
3373
|
) {
|
|
3374
|
+
setOpenCalendarSelect(null);
|
|
3335
3375
|
setOpen(false);
|
|
3336
3376
|
}
|
|
3337
3377
|
};
|
|
3338
3378
|
|
|
3339
3379
|
const handleKeyDown = (event: KeyboardEvent) => {
|
|
3340
3380
|
if (event.key === "Escape") {
|
|
3381
|
+
setOpenCalendarSelect(null);
|
|
3341
3382
|
setOpen(false);
|
|
3342
3383
|
}
|
|
3343
3384
|
};
|
|
@@ -3504,7 +3545,16 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
3504
3545
|
zIndex: 10050,
|
|
3505
3546
|
visibility: isPositioned ? undefined : "hidden",
|
|
3506
3547
|
}}
|
|
3507
|
-
onPointerDown={(event) =>
|
|
3548
|
+
onPointerDown={(event) => {
|
|
3549
|
+
if (
|
|
3550
|
+
event.target instanceof Element &&
|
|
3551
|
+
!event.target.closest(CALENDAR_SELECT_TRIGGER_SELECTOR)
|
|
3552
|
+
) {
|
|
3553
|
+
setOpenCalendarSelect(null);
|
|
3554
|
+
}
|
|
3555
|
+
|
|
3556
|
+
event.stopPropagation();
|
|
3557
|
+
}}
|
|
3508
3558
|
onMouseDown={(event) => event.stopPropagation()}
|
|
3509
3559
|
onWheel={(event) => event.stopPropagation()}
|
|
3510
3560
|
onTouchMove={(event) => event.stopPropagation()}
|
|
@@ -3524,6 +3574,10 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
3524
3574
|
Month
|
|
3525
3575
|
</label>
|
|
3526
3576
|
<Select
|
|
3577
|
+
open={openCalendarSelect === "month"}
|
|
3578
|
+
onOpenChange={(nextOpen) =>
|
|
3579
|
+
handleCalendarSelectOpenChange("month", nextOpen)
|
|
3580
|
+
}
|
|
3527
3581
|
value={visibleMonth.getMonth().toString()}
|
|
3528
3582
|
onValueChange={(nextMonth) =>
|
|
3529
3583
|
updateVisibleMonth(
|
|
@@ -3537,8 +3591,12 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
3537
3591
|
>
|
|
3538
3592
|
<SelectTrigger
|
|
3539
3593
|
id={\`\${triggerId}-month\`}
|
|
3594
|
+
data-date-time-picker-calendar-select-trigger=""
|
|
3540
3595
|
aria-label="Month"
|
|
3541
3596
|
className={CALENDAR_SELECT_TRIGGER_CLASS}
|
|
3597
|
+
onPointerDown={(event) =>
|
|
3598
|
+
handleCalendarSelectTriggerPointerDown("month", event)
|
|
3599
|
+
}
|
|
3542
3600
|
>
|
|
3543
3601
|
<SelectValue />
|
|
3544
3602
|
</SelectTrigger>
|
|
@@ -3573,6 +3631,10 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
3573
3631
|
Year
|
|
3574
3632
|
</label>
|
|
3575
3633
|
<Select
|
|
3634
|
+
open={openCalendarSelect === "year"}
|
|
3635
|
+
onOpenChange={(nextOpen) =>
|
|
3636
|
+
handleCalendarSelectOpenChange("year", nextOpen)
|
|
3637
|
+
}
|
|
3576
3638
|
value={visibleMonth.getFullYear().toString()}
|
|
3577
3639
|
onValueChange={(nextYear) =>
|
|
3578
3640
|
updateVisibleMonth(
|
|
@@ -3586,8 +3648,12 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
3586
3648
|
>
|
|
3587
3649
|
<SelectTrigger
|
|
3588
3650
|
id={\`\${triggerId}-year\`}
|
|
3651
|
+
data-date-time-picker-calendar-select-trigger=""
|
|
3589
3652
|
aria-label="Year"
|
|
3590
3653
|
className={CALENDAR_SELECT_TRIGGER_CLASS}
|
|
3654
|
+
onPointerDown={(event) =>
|
|
3655
|
+
handleCalendarSelectTriggerPointerDown("year", event)
|
|
3656
|
+
}
|
|
3591
3657
|
>
|
|
3592
3658
|
<SelectValue />
|
|
3593
3659
|
</SelectTrigger>
|
package/package.json
CHANGED