@servicetitan/anvil2 1.42.0 → 1.42.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 +22 -0
- package/dist/{DateFieldRange-CgVqJrVg.js → DateFieldRange--oSGfjYa.js} +2 -2
- package/dist/{DateFieldRange-CgVqJrVg.js.map → DateFieldRange--oSGfjYa.js.map} +1 -1
- package/dist/DateFieldRange.js +1 -1
- package/dist/{DateFieldSingle-CLoWDlPO.js → DateFieldSingle-0a8Bk7Yj.js} +2 -2
- package/dist/{DateFieldSingle-CLoWDlPO.js.map → DateFieldSingle-0a8Bk7Yj.js.map} +1 -1
- package/dist/DateFieldSingle.js +1 -1
- package/dist/{DateFieldYearless-M5KDI_hn-akXtkIZA.js → DateFieldYearless-C3_oGDr3-5meexzZO.js} +40 -33
- package/dist/{DateFieldYearless-M5KDI_hn-akXtkIZA.js.map → DateFieldYearless-C3_oGDr3-5meexzZO.js.map} +1 -1
- package/dist/{DateFieldYearless-CXlUH0c7.js → DateFieldYearless-DCv9WJdu.js} +2 -2
- package/dist/{DateFieldYearless-CXlUH0c7.js.map → DateFieldYearless-DCv9WJdu.js.map} +1 -1
- package/dist/DateFieldYearless.js +1 -1
- package/dist/Pagination-DU_qvFRR.js +430 -0
- package/dist/Pagination-DU_qvFRR.js.map +1 -0
- package/dist/Pagination.js +1 -429
- package/dist/Pagination.js.map +1 -1
- package/dist/assets/icons/st/gnav_field_pro_active.svg +1 -0
- package/dist/assets/icons/st/gnav_field_pro_inactive.svg +1 -0
- package/dist/assets/icons/st.ts +2 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# @servicetitan/anvil2
|
|
2
2
|
|
|
3
|
+
## 1.42.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#1412](https://github.com/servicetitan/hammer/pull/1412) [`2b4eac0`](https://github.com/servicetitan/hammer/commit/2b4eac0fd3c0790fcd2a31940f2c6e06d1142535) Thanks [@tounsoo](https://github.com/tounsoo)! - [Pagination] Fix Pagination not being exported
|
|
8
|
+
|
|
9
|
+
- [#1413](https://github.com/servicetitan/hammer/pull/1413) [`78b778e`](https://github.com/servicetitan/hammer/commit/78b778e1207a23924e982552d9e2564926f8dfc9) Thanks [@AdamLantz](https://github.com/AdamLantz)! - [Icon] Add global nav icon for Field Pro
|
|
10
|
+
|
|
11
|
+
- [#1403](https://github.com/servicetitan/hammer/pull/1403) [`46b4a7b`](https://github.com/servicetitan/hammer/commit/46b4a7bb061a2aecbc934b494b9805685adde5c8) Thanks [@AdamLantz](https://github.com/AdamLantz)! - [DateFieldYearless] Fix a case where pasting a value in could result in onChange not being called
|
|
12
|
+
|
|
13
|
+
- Updated dependencies [[`46b4a7b`](https://github.com/servicetitan/hammer/commit/46b4a7bb061a2aecbc934b494b9805685adde5c8)]:
|
|
14
|
+
- @servicetitan/hammer-react@1.40.2
|
|
15
|
+
|
|
16
|
+
## 1.42.1
|
|
17
|
+
|
|
18
|
+
### Patch Changes
|
|
19
|
+
|
|
20
|
+
- [#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
|
|
21
|
+
|
|
22
|
+
- Updated dependencies [[`7aba43b`](https://github.com/servicetitan/hammer/commit/7aba43bfb1bdfb4d5fdb04fa36436d187601c6bc)]:
|
|
23
|
+
- @servicetitan/hammer-react@1.40.1
|
|
24
|
+
|
|
3
25
|
## 1.42.0
|
|
4
26
|
|
|
5
27
|
### 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-C3_oGDr3-5meexzZO.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--oSGfjYa.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateFieldRange
|
|
1
|
+
{"version":3,"file":"DateFieldRange--oSGfjYa.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--oSGfjYa.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-C3_oGDr3-5meexzZO.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-0a8Bk7Yj.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateFieldSingle-
|
|
1
|
+
{"version":3,"file":"DateFieldSingle-0a8Bk7Yj.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-0a8Bk7Yj.js';
|
|
2
2
|
//# sourceMappingURL=DateFieldSingle.js.map
|
package/dist/{DateFieldYearless-M5KDI_hn-akXtkIZA.js → DateFieldYearless-C3_oGDr3-5meexzZO.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,
|
|
@@ -3021,6 +3046,10 @@ const MaskedYearlessDateInput = forwardRef(({ onChange, mode = "mm/dd", value, d
|
|
|
3021
3046
|
isInputValid,
|
|
3022
3047
|
isInputEmpty
|
|
3023
3048
|
} = parseInputValue(event.target.value, mode, removePlaceholder);
|
|
3049
|
+
const isDateDifferent = v === null !== (currentParsedData.value === null) || v?.day !== currentParsedData.value?.day || v?.month !== currentParsedData.value?.month;
|
|
3050
|
+
if (!isDateDifferent) {
|
|
3051
|
+
return;
|
|
3052
|
+
}
|
|
3024
3053
|
onChange?.({
|
|
3025
3054
|
event,
|
|
3026
3055
|
value: v ?? currentParsedData.value ?? null,
|
|
@@ -3104,24 +3133,6 @@ function stringifyYearlessDate(day, month, mode) {
|
|
|
3104
3133
|
return `${mm}/${dd}`;
|
|
3105
3134
|
}
|
|
3106
3135
|
|
|
3107
|
-
const useConditionalChange = ({
|
|
3108
|
-
changeHandler,
|
|
3109
|
-
compareFn
|
|
3110
|
-
}) => {
|
|
3111
|
-
const lastChangeRef = useRef(null);
|
|
3112
|
-
const onChange = useCallback(
|
|
3113
|
-
(change) => {
|
|
3114
|
-
if (!!lastChangeRef.current && !compareFn(lastChangeRef.current, change)) {
|
|
3115
|
-
return;
|
|
3116
|
-
}
|
|
3117
|
-
changeHandler?.(change);
|
|
3118
|
-
lastChangeRef.current = change;
|
|
3119
|
-
},
|
|
3120
|
-
[changeHandler, compareFn]
|
|
3121
|
-
);
|
|
3122
|
-
return onChange;
|
|
3123
|
-
};
|
|
3124
|
-
|
|
3125
3136
|
const DateFieldYearless = ({
|
|
3126
3137
|
value: valueProp,
|
|
3127
3138
|
defaultValue: defaultValueProp,
|
|
@@ -3148,14 +3159,10 @@ const DateFieldYearless = ({
|
|
|
3148
3159
|
}),
|
|
3149
3160
|
[value, required, unavailable, minDate, maxDate]
|
|
3150
3161
|
);
|
|
3151
|
-
const conditionalChange = useConditionalChange({
|
|
3152
|
-
changeHandler: onChange,
|
|
3153
|
-
compareFn: (a, b) => a.isInputValid !== b.isInputValid || a.isInputEmpty !== b.isInputEmpty || a.isValid !== b.isValid || a.value?.day !== b.value?.day || a.value?.month !== b.value?.month
|
|
3154
|
-
});
|
|
3155
3162
|
const handleInputChange = (change) => {
|
|
3156
3163
|
const { event, value: value2, ...restChange } = change;
|
|
3157
3164
|
setValue(value2);
|
|
3158
|
-
return
|
|
3165
|
+
return onChange?.({
|
|
3159
3166
|
...restChange,
|
|
3160
3167
|
value: value2,
|
|
3161
3168
|
isValid: validateYearlessDate({
|
|
@@ -3184,4 +3191,4 @@ const DateFieldYearless = ({
|
|
|
3184
3191
|
DateFieldYearless.displayName = "DateFieldYearless";
|
|
3185
3192
|
|
|
3186
3193
|
export { DateFieldRange as D, DateFieldSingle as a, DateFieldYearless as b };
|
|
3187
|
-
//# sourceMappingURL=DateFieldYearless-
|
|
3194
|
+
//# sourceMappingURL=DateFieldYearless-C3_oGDr3-5meexzZO.js.map
|