myoperator-mcp 0.2.383 → 0.2.385
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 +53 -20
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -3564,10 +3564,10 @@ const dateTimePickerTriggerVariants = cva(
|
|
|
3564
3564
|
|
|
3565
3565
|
export interface DateTimePickerValue {
|
|
3566
3566
|
date?: Date;
|
|
3567
|
-
/**
|
|
3568
|
-
startTime
|
|
3569
|
-
/**
|
|
3570
|
-
endTime
|
|
3567
|
+
/** Empty string until a time is explicitly selected */
|
|
3568
|
+
startTime: string;
|
|
3569
|
+
/** Empty string until a time is explicitly selected */
|
|
3570
|
+
endTime: string;
|
|
3571
3571
|
}
|
|
3572
3572
|
|
|
3573
3573
|
export interface DateTimePickerProps
|
|
@@ -3575,8 +3575,8 @@ export interface DateTimePickerProps
|
|
|
3575
3575
|
Omit<React.HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange">,
|
|
3576
3576
|
VariantProps<typeof dateTimePickerVariants>,
|
|
3577
3577
|
Pick<VariantProps<typeof dateTimePickerTriggerVariants>, "state"> {
|
|
3578
|
-
value?: DateTimePickerValue
|
|
3579
|
-
defaultValue?: DateTimePickerValue
|
|
3578
|
+
value?: Partial<DateTimePickerValue>;
|
|
3579
|
+
defaultValue?: Partial<DateTimePickerValue>;
|
|
3580
3580
|
onValueChange?: (value: DateTimePickerValue) => void;
|
|
3581
3581
|
/** Label text displayed above the trigger */
|
|
3582
3582
|
label?: string;
|
|
@@ -3584,6 +3584,10 @@ export interface DateTimePickerProps
|
|
|
3584
3584
|
required?: boolean;
|
|
3585
3585
|
/** Additional class for the label */
|
|
3586
3586
|
labelClassName?: string;
|
|
3587
|
+
/** Helper text displayed below the picker */
|
|
3588
|
+
helperText?: string;
|
|
3589
|
+
/** Error message \u2014 shows red text below and drives state="error" */
|
|
3590
|
+
error?: string;
|
|
3587
3591
|
placeholder?: string;
|
|
3588
3592
|
disabled?: boolean;
|
|
3589
3593
|
readOnly?: boolean;
|
|
@@ -3621,8 +3625,8 @@ function normalizeValue(
|
|
|
3621
3625
|
): DateTimePickerValue {
|
|
3622
3626
|
return {
|
|
3623
3627
|
date: value?.date,
|
|
3624
|
-
startTime: value?.startTime,
|
|
3625
|
-
endTime: value?.endTime,
|
|
3628
|
+
startTime: value?.startTime ?? "",
|
|
3629
|
+
endTime: value?.endTime ?? "",
|
|
3626
3630
|
};
|
|
3627
3631
|
}
|
|
3628
3632
|
|
|
@@ -3909,8 +3913,8 @@ function formatValueForDisplay(
|
|
|
3909
3913
|
if (!value.startTime && !value.endTime) return "";
|
|
3910
3914
|
|
|
3911
3915
|
return showEndTime
|
|
3912
|
-
? \`\${formatTimeForDisplay(value.startTime
|
|
3913
|
-
: formatTimeForDisplay(value.startTime
|
|
3916
|
+
? \`\${formatTimeForDisplay(value.startTime || UNSET_TIME, showSeconds)} - \${formatTimeForDisplay(value.endTime || UNSET_TIME, showSeconds)}\`
|
|
3917
|
+
: formatTimeForDisplay(value.startTime || UNSET_TIME, showSeconds);
|
|
3914
3918
|
}
|
|
3915
3919
|
|
|
3916
3920
|
const datePart = formatDateOnlyForDisplay(value.date);
|
|
@@ -4459,8 +4463,8 @@ function formatHiddenValue(
|
|
|
4459
4463
|
variant: DateTimePickerVariant,
|
|
4460
4464
|
showEndTime: boolean
|
|
4461
4465
|
) {
|
|
4462
|
-
const startTime = value.startTime
|
|
4463
|
-
const endTime = value.endTime
|
|
4466
|
+
const startTime = value.startTime || UNSET_TIME;
|
|
4467
|
+
const endTime = value.endTime || UNSET_TIME;
|
|
4464
4468
|
|
|
4465
4469
|
if (variant === "time-only") {
|
|
4466
4470
|
if (!value.startTime && !value.endTime) return "";
|
|
@@ -4878,6 +4882,8 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
4878
4882
|
label,
|
|
4879
4883
|
required,
|
|
4880
4884
|
labelClassName,
|
|
4885
|
+
helperText,
|
|
4886
|
+
error,
|
|
4881
4887
|
placeholder: placeholderProp,
|
|
4882
4888
|
disabled = false,
|
|
4883
4889
|
readOnly = false,
|
|
@@ -4905,6 +4911,7 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
4905
4911
|
const generatedId = React.useId();
|
|
4906
4912
|
const triggerId = id ?? generatedId;
|
|
4907
4913
|
const pickerVariant = variant ?? "date-time";
|
|
4914
|
+
const resolvedState = error ? "error" : state;
|
|
4908
4915
|
const showCalendar = pickerVariant !== "time-only";
|
|
4909
4916
|
const showTimeFields = pickerVariant !== "date-only";
|
|
4910
4917
|
const resolvedShowEndTime = showTimeFields && showEndTime;
|
|
@@ -4917,8 +4924,8 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
4917
4924
|
const currentValue = normalizeValue(
|
|
4918
4925
|
isValueControlled ? value : internalValue
|
|
4919
4926
|
);
|
|
4920
|
-
const resolvedStartTime = currentValue.startTime
|
|
4921
|
-
const resolvedEndTime = currentValue.endTime
|
|
4927
|
+
const resolvedStartTime = currentValue.startTime || UNSET_TIME;
|
|
4928
|
+
const resolvedEndTime = currentValue.endTime || UNSET_TIME;
|
|
4922
4929
|
const resolvedShowSeconds =
|
|
4923
4930
|
showSeconds ??
|
|
4924
4931
|
(timeHasVisibleSeconds(currentValue.startTime) ||
|
|
@@ -4997,6 +5004,9 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
4997
5004
|
() => getCalendarDays(visibleMonth),
|
|
4998
5005
|
[visibleMonth]
|
|
4999
5006
|
);
|
|
5007
|
+
const errorId = \`\${triggerId}-error\`;
|
|
5008
|
+
const helperId = \`\${triggerId}-helper\`;
|
|
5009
|
+
const describedBy = error ? errorId : helperText ? helperId : undefined;
|
|
5000
5010
|
const displayValue = formatValueForDisplay(
|
|
5001
5011
|
currentValue,
|
|
5002
5012
|
pickerVariant,
|
|
@@ -5111,8 +5121,8 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
5111
5121
|
setVisibleMonth(startOfMonth(new Date()));
|
|
5112
5122
|
updateValue({
|
|
5113
5123
|
date: undefined,
|
|
5114
|
-
startTime:
|
|
5115
|
-
endTime:
|
|
5124
|
+
startTime: "",
|
|
5125
|
+
endTime: "",
|
|
5116
5126
|
});
|
|
5117
5127
|
};
|
|
5118
5128
|
|
|
@@ -5196,7 +5206,7 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
5196
5206
|
|
|
5197
5207
|
const typedTime = parseTimePart(nextInputValue);
|
|
5198
5208
|
if (typedTime === undefined) {
|
|
5199
|
-
updateValue({ ...currentValue, startTime:
|
|
5209
|
+
updateValue({ ...currentValue, startTime: "" });
|
|
5200
5210
|
return;
|
|
5201
5211
|
}
|
|
5202
5212
|
|
|
@@ -5271,7 +5281,7 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
5271
5281
|
updateValue({
|
|
5272
5282
|
...currentValue,
|
|
5273
5283
|
date: typedDateTime.date,
|
|
5274
|
-
startTime: typedDateTime.startTime
|
|
5284
|
+
startTime: typedDateTime.startTime || currentValue.startTime,
|
|
5275
5285
|
});
|
|
5276
5286
|
updateVisibleMonth(typedDateTime.date);
|
|
5277
5287
|
}
|
|
@@ -5626,9 +5636,9 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
5626
5636
|
<div
|
|
5627
5637
|
ref={setTriggerRef}
|
|
5628
5638
|
className={cn(
|
|
5629
|
-
dateTimePickerTriggerVariants({ size, state }),
|
|
5639
|
+
dateTimePickerTriggerVariants({ size, state: resolvedState }),
|
|
5630
5640
|
open &&
|
|
5631
|
-
|
|
5641
|
+
resolvedState !== "error" &&
|
|
5632
5642
|
"border-semantic-border-input-focus/50 shadow-[0_0_0_1px_rgba(43,188,202,0.15)]",
|
|
5633
5643
|
!displayValue && "text-semantic-text-placeholder",
|
|
5634
5644
|
disabled &&
|
|
@@ -5644,6 +5654,8 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
5644
5654
|
placeholder={placeholder}
|
|
5645
5655
|
aria-haspopup="dialog"
|
|
5646
5656
|
aria-expanded={open}
|
|
5657
|
+
aria-invalid={error ? true : undefined}
|
|
5658
|
+
aria-describedby={describedBy}
|
|
5647
5659
|
aria-label={
|
|
5648
5660
|
pickerVariant === "date-only"
|
|
5649
5661
|
? "Date"
|
|
@@ -5693,6 +5705,27 @@ const DateTimePicker = React.forwardRef<HTMLDivElement, DateTimePickerProps>(
|
|
|
5693
5705
|
</button>
|
|
5694
5706
|
</div>
|
|
5695
5707
|
|
|
5708
|
+
{(error || helperText) && (
|
|
5709
|
+
<div className="mt-1">
|
|
5710
|
+
{error ? (
|
|
5711
|
+
<span
|
|
5712
|
+
id={errorId}
|
|
5713
|
+
role="alert"
|
|
5714
|
+
className="text-sm text-semantic-error-primary"
|
|
5715
|
+
>
|
|
5716
|
+
{error}
|
|
5717
|
+
</span>
|
|
5718
|
+
) : (
|
|
5719
|
+
<span
|
|
5720
|
+
id={helperId}
|
|
5721
|
+
className="text-sm text-semantic-text-muted"
|
|
5722
|
+
>
|
|
5723
|
+
{helperText}
|
|
5724
|
+
</span>
|
|
5725
|
+
)}
|
|
5726
|
+
</div>
|
|
5727
|
+
)}
|
|
5728
|
+
|
|
5696
5729
|
{popover}
|
|
5697
5730
|
</div>
|
|
5698
5731
|
);
|
package/package.json
CHANGED