@servicetitan/anvil2 1.42.0 → 1.42.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 +9 -0
- package/dist/{DateFieldRange-CgVqJrVg.js → DateFieldRange-c4LX8hoE.js} +2 -2
- package/dist/{DateFieldRange-CgVqJrVg.js.map → DateFieldRange-c4LX8hoE.js.map} +1 -1
- package/dist/DateFieldRange.js +1 -1
- package/dist/{DateFieldSingle-CLoWDlPO.js → DateFieldSingle-WfPOm0qk.js} +2 -2
- package/dist/{DateFieldSingle-CLoWDlPO.js.map → DateFieldSingle-WfPOm0qk.js.map} +1 -1
- package/dist/DateFieldSingle.js +1 -1
- package/dist/{DateFieldYearless-CXlUH0c7.js → DateFieldYearless-DC50l-ht.js} +2 -2
- package/dist/{DateFieldYearless-CXlUH0c7.js.map → DateFieldYearless-DC50l-ht.js.map} +1 -1
- package/dist/{DateFieldYearless-M5KDI_hn-akXtkIZA.js → DateFieldYearless-DU0z2fEA-ByR2ixI5.js} +35 -10
- package/dist/{DateFieldYearless-M5KDI_hn-akXtkIZA.js.map → DateFieldYearless-DU0z2fEA-ByR2ixI5.js.map} +1 -1
- package/dist/DateFieldYearless.js +1 -1
- package/dist/index.js +3 -3
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# @servicetitan/anvil2
|
|
2
2
|
|
|
3
|
+
## 1.42.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#1401](https://github.com/servicetitan/hammer/pull/1401) [`7aba43b`](https://github.com/servicetitan/hammer/commit/7aba43bfb1bdfb4d5fdb04fa36436d187601c6bc) Thanks [@AdamLantz](https://github.com/AdamLantz)! - [DateFieldSingle, DateFieldRange] Fix invalid props spread onto input element
|
|
8
|
+
|
|
9
|
+
- Updated dependencies [[`7aba43b`](https://github.com/servicetitan/hammer/commit/7aba43bfb1bdfb4d5fdb04fa36436d187601c6bc)]:
|
|
10
|
+
- @servicetitan/hammer-react@1.40.1
|
|
11
|
+
|
|
3
12
|
## 1.42.0
|
|
4
13
|
|
|
5
14
|
### Minor Changes
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { useTrackingId } from './useTrackingId.js';
|
|
3
3
|
import { c as childrenToString } from './childrenToString-Bz9MqbHb-Bz9MqbHb.js';
|
|
4
|
-
import { D as DateFieldRange$1 } from './DateFieldYearless-
|
|
4
|
+
import { D as DateFieldRange$1 } from './DateFieldYearless-DU0z2fEA-ByR2ixI5.js';
|
|
5
5
|
|
|
6
6
|
const DateFieldRange = (props) => {
|
|
7
7
|
const data = {
|
|
@@ -19,4 +19,4 @@ const DateFieldRange = (props) => {
|
|
|
19
19
|
DateFieldRange.displayName = DateFieldRange$1.displayName;
|
|
20
20
|
|
|
21
21
|
export { DateFieldRange as D };
|
|
22
|
-
//# sourceMappingURL=DateFieldRange-
|
|
22
|
+
//# sourceMappingURL=DateFieldRange-c4LX8hoE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateFieldRange-
|
|
1
|
+
{"version":3,"file":"DateFieldRange-c4LX8hoE.js","sources":["../src/components/DateFieldRange/DateFieldRange.tsx"],"sourcesContent":["import {\n childrenToString,\n DateFieldRange as CoreDateFieldRange,\n DateFieldRangeProps as CoreDateFieldRangeProps,\n DateFieldRangeChange as CoreDateFieldRangeChange,\n DateFieldRangeChangeHandler as CoreDateFieldRangeChangeHandler,\n DateMode as CoreDateMode,\n} from \"@servicetitan/hammer-react\";\nimport { useTrackingId } from \"../../hooks/useTrackingId\";\nimport { DataTrackingId } from \"../../types/DataTrackingId\";\n\nexport type DateFieldRangeProps = CoreDateFieldRangeProps & DataTrackingId;\n\nexport type DateFieldRangeChange = CoreDateFieldRangeChange;\n\nexport type DateFieldRangeChangeHandler = CoreDateFieldRangeChangeHandler;\n\nexport type DateMode = CoreDateMode;\n\nexport const DateFieldRange = (props: DateFieldRangeProps) => {\n const data = {\n label: childrenToString(props.label),\n labelProps: props.labelProps,\n description: childrenToString(props.description),\n };\n\n const trackingId = useTrackingId({\n name: \"DateFieldRange\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n return <CoreDateFieldRange data-tracking-id={trackingId} {...props} />;\n};\n\nDateFieldRange.displayName = CoreDateFieldRange.displayName;\n"],"names":["CoreDateFieldRange"],"mappings":";;;;;AAmBa,MAAA,cAAA,GAAiB,CAAC,KAA+B,KAAA;AAC5D,EAAA,MAAM,IAAO,GAAA;AAAA,IACX,KAAA,EAAO,gBAAiB,CAAA,KAAA,CAAM,KAAK,CAAA;AAAA,IACnC,YAAY,KAAM,CAAA,UAAA;AAAA,IAClB,WAAA,EAAa,gBAAiB,CAAA,KAAA,CAAM,WAAW;AAAA,GACjD;AAEA,EAAA,MAAM,aAAa,aAAc,CAAA;AAAA,IAC/B,IAAM,EAAA,gBAAA;AAAA,IACN,IAAA;AAAA,IACA,WAAa,EAAA,CAAC,CAAC,KAAA,CAAM,kBAAkB;AAAA,GACxC,CAAA;AACD,EAAA,uBAAQ,GAAA,CAAAA,gBAAA,EAAA,EAAmB,kBAAkB,EAAA,UAAA,EAAa,GAAG,KAAO,EAAA,CAAA;AACtE;AAEA,cAAA,CAAe,cAAcA,gBAAmB,CAAA,WAAA;;;;"}
|
package/dist/DateFieldRange.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { D as DateFieldRange } from './DateFieldRange-
|
|
1
|
+
export { D as DateFieldRange } from './DateFieldRange-c4LX8hoE.js';
|
|
2
2
|
//# sourceMappingURL=DateFieldRange.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { useTrackingId } from './useTrackingId.js';
|
|
3
3
|
import { c as childrenToString } from './childrenToString-Bz9MqbHb-Bz9MqbHb.js';
|
|
4
|
-
import { a as DateFieldSingle$1 } from './DateFieldYearless-
|
|
4
|
+
import { a as DateFieldSingle$1 } from './DateFieldYearless-DU0z2fEA-ByR2ixI5.js';
|
|
5
5
|
|
|
6
6
|
const DateFieldSingle = (props) => {
|
|
7
7
|
const data = {
|
|
@@ -19,4 +19,4 @@ const DateFieldSingle = (props) => {
|
|
|
19
19
|
DateFieldSingle.displayName = DateFieldSingle$1.displayName;
|
|
20
20
|
|
|
21
21
|
export { DateFieldSingle as D };
|
|
22
|
-
//# sourceMappingURL=DateFieldSingle-
|
|
22
|
+
//# sourceMappingURL=DateFieldSingle-WfPOm0qk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateFieldSingle-
|
|
1
|
+
{"version":3,"file":"DateFieldSingle-WfPOm0qk.js","sources":["../src/components/DateFieldSingle/DateFieldSingle.tsx"],"sourcesContent":["import {\n childrenToString,\n DateFieldSingle as CoreDateFieldSingle,\n DateFieldSingleProps as CoreDateFieldSingleProps,\n DateFieldSingleChange as CoreDateFieldSingleChange,\n DateFieldSingleChangeHandler as CoreDateFieldSingleChangeHandler,\n} from \"@servicetitan/hammer-react\";\nimport { useTrackingId } from \"../../hooks/useTrackingId\";\nimport { DataTrackingId } from \"../../types/DataTrackingId\";\n\nexport type DateFieldSingleProps = CoreDateFieldSingleProps & DataTrackingId;\n\nexport type DateFieldSingleChange = CoreDateFieldSingleChange;\n\nexport type DateFieldSingleChangeHandler = CoreDateFieldSingleChangeHandler;\n\nexport const DateFieldSingle = (props: DateFieldSingleProps) => {\n const data = {\n label: childrenToString(props.label),\n labelProps: props.labelProps,\n description: childrenToString(props.description),\n };\n\n const trackingId = useTrackingId({\n name: \"DateFieldSingle\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n return <CoreDateFieldSingle data-tracking-id={trackingId} {...props} />;\n};\n\nDateFieldSingle.displayName = CoreDateFieldSingle.displayName;\n"],"names":["CoreDateFieldSingle"],"mappings":";;;;;AAgBa,MAAA,eAAA,GAAkB,CAAC,KAAgC,KAAA;AAC9D,EAAA,MAAM,IAAO,GAAA;AAAA,IACX,KAAA,EAAO,gBAAiB,CAAA,KAAA,CAAM,KAAK,CAAA;AAAA,IACnC,YAAY,KAAM,CAAA,UAAA;AAAA,IAClB,WAAA,EAAa,gBAAiB,CAAA,KAAA,CAAM,WAAW;AAAA,GACjD;AAEA,EAAA,MAAM,aAAa,aAAc,CAAA;AAAA,IAC/B,IAAM,EAAA,iBAAA;AAAA,IACN,IAAA;AAAA,IACA,WAAa,EAAA,CAAC,CAAC,KAAA,CAAM,kBAAkB;AAAA,GACxC,CAAA;AACD,EAAA,uBAAQ,GAAA,CAAAA,iBAAA,EAAA,EAAoB,kBAAkB,EAAA,UAAA,EAAa,GAAG,KAAO,EAAA,CAAA;AACvE;AAEA,eAAA,CAAgB,cAAcA,iBAAoB,CAAA,WAAA;;;;"}
|
package/dist/DateFieldSingle.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { D as DateFieldSingle } from './DateFieldSingle-
|
|
1
|
+
export { D as DateFieldSingle } from './DateFieldSingle-WfPOm0qk.js';
|
|
2
2
|
//# sourceMappingURL=DateFieldSingle.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { useTrackingId } from './useTrackingId.js';
|
|
3
3
|
import { c as childrenToString } from './childrenToString-Bz9MqbHb-Bz9MqbHb.js';
|
|
4
|
-
import { b as DateFieldYearless$1 } from './DateFieldYearless-
|
|
4
|
+
import { b as DateFieldYearless$1 } from './DateFieldYearless-DU0z2fEA-ByR2ixI5.js';
|
|
5
5
|
|
|
6
6
|
const DateFieldYearless = (props) => {
|
|
7
7
|
const data = {
|
|
@@ -19,4 +19,4 @@ const DateFieldYearless = (props) => {
|
|
|
19
19
|
DateFieldYearless.displayName = DateFieldYearless$1.displayName;
|
|
20
20
|
|
|
21
21
|
export { DateFieldYearless as D };
|
|
22
|
-
//# sourceMappingURL=DateFieldYearless-
|
|
22
|
+
//# sourceMappingURL=DateFieldYearless-DC50l-ht.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateFieldYearless-
|
|
1
|
+
{"version":3,"file":"DateFieldYearless-DC50l-ht.js","sources":["../src/components/DateFieldYearless/DateFieldYearless.tsx"],"sourcesContent":["import {\n childrenToString,\n DateFieldYearless as CoreDateFieldYearless,\n DateFieldYearlessProps as CoreDateFieldYearlessProps,\n DateFieldYearlessChange as CoreDateFieldYearlessChange,\n DateFieldYearlessChangeHandler as CoreDateFieldYearlessChangeHandler,\n YearlessDate as CoreYearlessDate,\n YearlessDateMode as CoreYearlessDateMode,\n} from \"@servicetitan/hammer-react\";\nimport { useTrackingId } from \"../../hooks/useTrackingId\";\nimport { DataTrackingId } from \"../../types/DataTrackingId\";\n\n/**\n * Props for the DateFieldYearless component\n * @property {YearlessDate | null} [value] - The controlled value of the date field\n * @property {YearlessDate | null} [defaultValue] - The default value for uncontrolled usage\n * @property {DateFieldYearlessChangeHandler} [onChange] - Callback function when the date value changes\n * @property {YearlessDateMode} [mode] - The date format mode (mm/dd or dd/mm)\n * @property {boolean} [disableHint] - Whether to disable the hint text\n * @property {boolean} [required] - Whether the field is required\n * @property {YearlessDate | null} [minDate] - The minimum allowed date\n * @property {YearlessDate | null} [maxDate] - The maximum allowed date\n * @property {Object} [unavailable] - Configuration for unavailable dates\n * @property {YearlessDate[]} [unavailable.dates] - Array of dates that are not selectable\n * @extends CoreDateFieldYearlessProps\n * @extends DataTrackingId\n */\nexport type DateFieldYearlessProps = CoreDateFieldYearlessProps &\n DataTrackingId;\n\n/**\n * Represents a change event for the DateFieldYearless component\n * @property {YearlessDate | null} value - The current date value\n * @property {boolean} isInputValid - Whether the input is valid\n * @property {boolean} isInputEmpty - Whether the input is empty\n * @property {boolean} isValid - Whether the overall value is valid\n */\nexport type DateFieldYearlessChange = CoreDateFieldYearlessChange;\n\n/**\n * Handler function for DateFieldYearless change events\n * @param change - The change event object\n */\nexport type DateFieldYearlessChangeHandler = CoreDateFieldYearlessChangeHandler;\n\n/**\n * Represents a date without a year component\n * @property {number | null} day - The day of the month (1-31)\n * @property {number | null} month - The month of the year (1-12)\n */\nexport type YearlessDate = CoreYearlessDate;\n\n/**\n * The format mode for yearless date input\n * @typedef {\"mm/dd\" | \"dd/mm\"} YearlessDateMode\n */\nexport type YearlessDateMode = CoreYearlessDateMode;\n\n/**\n * DateFieldYearless component for inputting dates without year information.\n *\n * Features:\n * - Supports both controlled and uncontrolled usage\n * - Supports different date formats (mm/dd or dd/mm)\n * - Supports layout utilities for positioning and spacing\n *\n * @example\n * <DateFieldYearless\n * label=\"Birthday\"\n * mode=\"mm/dd\"\n * required\n * onChange={(change) => console.log('Date changed:', change.value)}\n * />\n */\nexport const DateFieldYearless = (props: DateFieldYearlessProps) => {\n const data = {\n label: childrenToString(props.label),\n labelProps: props.labelProps,\n description: childrenToString(props.description),\n };\n\n const trackingId = useTrackingId({\n name: \"DateFieldYearless\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n return <CoreDateFieldYearless data-tracking-id={trackingId} {...props} />;\n};\n\nDateFieldYearless.displayName = CoreDateFieldYearless.displayName;\n"],"names":["CoreDateFieldYearless"],"mappings":";;;;;AA0Ea,MAAA,iBAAA,GAAoB,CAAC,KAAkC,KAAA;AAClE,EAAA,MAAM,IAAO,GAAA;AAAA,IACX,KAAA,EAAO,gBAAiB,CAAA,KAAA,CAAM,KAAK,CAAA;AAAA,IACnC,YAAY,KAAM,CAAA,UAAA;AAAA,IAClB,WAAA,EAAa,gBAAiB,CAAA,KAAA,CAAM,WAAW;AAAA,GACjD;AAEA,EAAA,MAAM,aAAa,aAAc,CAAA;AAAA,IAC/B,IAAM,EAAA,mBAAA;AAAA,IACN,IAAA;AAAA,IACA,WAAa,EAAA,CAAC,CAAC,KAAA,CAAM,kBAAkB;AAAA,GACxC,CAAA;AACD,EAAA,uBAAQ,GAAA,CAAAA,mBAAA,EAAA,EAAsB,kBAAkB,EAAA,UAAA,EAAa,GAAG,KAAO,EAAA,CAAA;AACzE;AAEA,iBAAA,CAAkB,cAAcA,mBAAsB,CAAA,WAAA;;;;"}
|
package/dist/{DateFieldYearless-M5KDI_hn-akXtkIZA.js → DateFieldYearless-DU0z2fEA-ByR2ixI5.js}
RENAMED
|
@@ -2328,17 +2328,30 @@ const DateFieldSingle = ({
|
|
|
2328
2328
|
disableCalendar,
|
|
2329
2329
|
required,
|
|
2330
2330
|
mode,
|
|
2331
|
+
value: valueProp,
|
|
2332
|
+
defaultValue: defaultValueProp,
|
|
2333
|
+
minDate: minDateProp,
|
|
2334
|
+
maxDate: maxDateProp,
|
|
2335
|
+
unavailable: unavailableProp,
|
|
2336
|
+
onChange: onChangeProp,
|
|
2331
2337
|
...rest
|
|
2332
2338
|
}) => {
|
|
2333
2339
|
const inputRef = useRef(null);
|
|
2334
2340
|
const {
|
|
2335
|
-
value:
|
|
2336
|
-
defaultValue:
|
|
2341
|
+
value: normalizedValue,
|
|
2342
|
+
defaultValue: normalizedDefaultValue,
|
|
2337
2343
|
minDate,
|
|
2338
2344
|
maxDate,
|
|
2339
2345
|
unavailable,
|
|
2340
2346
|
onChange
|
|
2341
|
-
} = useDateFieldSingleConversion(
|
|
2347
|
+
} = useDateFieldSingleConversion({
|
|
2348
|
+
value: valueProp,
|
|
2349
|
+
defaultValue: defaultValueProp,
|
|
2350
|
+
onChange: onChangeProp,
|
|
2351
|
+
minDate: minDateProp,
|
|
2352
|
+
maxDate: maxDateProp,
|
|
2353
|
+
unavailable: unavailableProp
|
|
2354
|
+
});
|
|
2342
2355
|
const handleChange = (change) => {
|
|
2343
2356
|
onChange?.({
|
|
2344
2357
|
...change,
|
|
@@ -2354,8 +2367,8 @@ const DateFieldSingle = ({
|
|
|
2354
2367
|
});
|
|
2355
2368
|
};
|
|
2356
2369
|
const { value, handleInputChange, handleCalendarSelection } = useDateFieldSingleState({
|
|
2357
|
-
valueProp,
|
|
2358
|
-
defaultValueProp,
|
|
2370
|
+
valueProp: normalizedValue,
|
|
2371
|
+
defaultValueProp: normalizedDefaultValue,
|
|
2359
2372
|
inputRef,
|
|
2360
2373
|
onChange: handleChange
|
|
2361
2374
|
});
|
|
@@ -2394,9 +2407,9 @@ const DateFieldSingle = ({
|
|
|
2394
2407
|
const justTheField = /* @__PURE__ */ jsx(
|
|
2395
2408
|
MaskedDateInput,
|
|
2396
2409
|
{
|
|
2410
|
+
...rest,
|
|
2397
2411
|
mode,
|
|
2398
2412
|
ref: combinedRef,
|
|
2399
|
-
...rest,
|
|
2400
2413
|
onChange: handleInputChange,
|
|
2401
2414
|
onKeyDown: handleInputKeyDown,
|
|
2402
2415
|
onClick: () => setCalendarOpen(true),
|
|
@@ -2814,13 +2827,26 @@ const DateFieldRange = ({
|
|
|
2814
2827
|
disableCalendar,
|
|
2815
2828
|
required,
|
|
2816
2829
|
mode,
|
|
2830
|
+
value: valueProp,
|
|
2831
|
+
defaultValue: defaultValueProp,
|
|
2832
|
+
minDate: minDateProp,
|
|
2833
|
+
maxDate: maxDateProp,
|
|
2834
|
+
unavailable: unavailableProp,
|
|
2835
|
+
onChange: onChangeProp,
|
|
2817
2836
|
...rest
|
|
2818
2837
|
}) => {
|
|
2819
2838
|
const { ref: wrapperRef } = useFocusWithin({
|
|
2820
2839
|
onBlur,
|
|
2821
2840
|
onFocus
|
|
2822
2841
|
});
|
|
2823
|
-
const { value, defaultValue, minDate, maxDate, unavailable, onChange } = useDateFieldRangeConversion(
|
|
2842
|
+
const { value, defaultValue, minDate, maxDate, unavailable, onChange } = useDateFieldRangeConversion({
|
|
2843
|
+
value: valueProp,
|
|
2844
|
+
defaultValue: defaultValueProp,
|
|
2845
|
+
minDate: minDateProp,
|
|
2846
|
+
maxDate: maxDateProp,
|
|
2847
|
+
unavailable: unavailableProp,
|
|
2848
|
+
onChange: onChangeProp
|
|
2849
|
+
});
|
|
2824
2850
|
const inputRef = useRef(null);
|
|
2825
2851
|
const [popoverTriggerRef, setPopoverTriggerRef] = useState();
|
|
2826
2852
|
const popoverContentRef = useRef(null);
|
|
@@ -2881,13 +2907,12 @@ const DateFieldRange = ({
|
|
|
2881
2907
|
}
|
|
2882
2908
|
});
|
|
2883
2909
|
}, [required, startDate, endDate, minDate, maxDate, unavailable]);
|
|
2884
|
-
const { defaultValue: _, ...passthroughProps } = rest;
|
|
2885
2910
|
const justTheField = /* @__PURE__ */ jsx(
|
|
2886
2911
|
MaskedDateRangeInput,
|
|
2887
2912
|
{
|
|
2913
|
+
...rest,
|
|
2888
2914
|
mode,
|
|
2889
2915
|
ref: combinedRef,
|
|
2890
|
-
...passthroughProps,
|
|
2891
2916
|
startDate: startDate ?? null,
|
|
2892
2917
|
endDate: endDate ?? null,
|
|
2893
2918
|
onChange: handleInputChange,
|
|
@@ -3184,4 +3209,4 @@ const DateFieldYearless = ({
|
|
|
3184
3209
|
DateFieldYearless.displayName = "DateFieldYearless";
|
|
3185
3210
|
|
|
3186
3211
|
export { DateFieldRange as D, DateFieldSingle as a, DateFieldYearless as b };
|
|
3187
|
-
//# sourceMappingURL=DateFieldYearless-
|
|
3212
|
+
//# sourceMappingURL=DateFieldYearless-DU0z2fEA-ByR2ixI5.js.map
|