react-day-picker 9.0.2 → 9.0.3

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.
@@ -17,6 +17,10 @@ function useRange(props, dateLib) {
17
17
  setSelected({ from: undefined, to: undefined });
18
18
  }
19
19
  }, [required, selected, mode]);
20
+ // Update the selected date if the `selected` prop changes.
21
+ react_1.default.useEffect(() => {
22
+ setSelected(initiallySelected);
23
+ }, [initiallySelected]);
20
24
  const isSelected = (date) => selected && (0, rangeIncludesDate_js_1.rangeIncludesDate)(selected, date, false, dateLib);
21
25
  const select = (triggerDate, modifiers, e) => {
22
26
  const newRange = triggerDate
@@ -1 +1 @@
1
- {"version":3,"file":"useRange.js","sourceRoot":"","sources":["../../../src/selection/useRange.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useRange.js","sourceRoot":"","sources":["../../../src/selection/useRange.tsx"],"names":[],"mappings":"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"}
@@ -11,6 +11,10 @@ export function useRange(props, dateLib) {
11
11
  setSelected({ from: undefined, to: undefined });
12
12
  }
13
13
  }, [required, selected, mode]);
14
+ // Update the selected date if the `selected` prop changes.
15
+ React.useEffect(() => {
16
+ setSelected(initiallySelected);
17
+ }, [initiallySelected]);
14
18
  const isSelected = (date) => selected && rangeIncludesDate(selected, date, false, dateLib);
15
19
  const select = (triggerDate, modifiers, e) => {
16
20
  const newRange = triggerDate
@@ -1 +1 @@
1
- {"version":3,"file":"useRange.js","sourceRoot":"","sources":["../../../src/selection/useRange.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useRange.js","sourceRoot":"","sources":["../../../src/selection/useRange.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-day-picker",
3
- "version": "9.0.2",
3
+ "version": "9.0.3",
4
4
  "description": "Customizable Date Picker for React",
5
5
  "author": "Giampaolo Bellavite <io@gpbl.dev>",
6
6
  "homepage": "https://daypicker.dev",
@@ -153,7 +153,7 @@
153
153
  "eslint-import-resolver-typescript": "^3.6.1",
154
154
  "eslint-plugin-import": "^2.29.1",
155
155
  "eslint-plugin-jest": "^28.6.0",
156
- "eslint-plugin-prettier": "^5.1.3",
156
+ "eslint-plugin-prettier": "^5.2.1",
157
157
  "eslint-plugin-react": "^7.35.0",
158
158
  "eslint-plugin-react-hooks": "^4.6.2",
159
159
  "eslint-plugin-require-extensions": "^0.1.3",
@@ -166,7 +166,7 @@
166
166
  "react": "^18.3.1",
167
167
  "react-classnaming": "^0.16.4",
168
168
  "react-dom": "^18.3.1",
169
- "ts-jest": "^29.2.2",
169
+ "ts-jest": "^29.2.3",
170
170
  "ts-node": "^10.9.2",
171
171
  "tslib": "^2.6.3",
172
172
  "typescript": "~5.5.3",
@@ -1,4 +1,6 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { DateRange, DayPickerProps } from "react-day-picker/types";
3
+
2
4
  import { act, renderHook } from "@/test/render";
3
5
 
4
6
  import { dateLib } from "../lib";
@@ -21,6 +23,31 @@ describe("useRange", () => {
21
23
  expect(result.current.selected).toEqual(initiallySelected);
22
24
  });
23
25
 
26
+ test("update the selected range when the initially selected value changes", () => {
27
+ const initiallySelected: DateRange = {
28
+ from: new Date(2023, 6, 1),
29
+ to: new Date(2023, 6, 5)
30
+ };
31
+ const { result, rerender } = renderHook(
32
+ (props) => useRange(props, dateLib),
33
+ {
34
+ initialProps: {
35
+ mode: "range",
36
+ selected: initiallySelected,
37
+ required: false
38
+ } as DayPickerProps
39
+ }
40
+ );
41
+
42
+ rerender({
43
+ mode: "range",
44
+ selected: undefined,
45
+ required: false
46
+ });
47
+
48
+ expect(result.current.selected).toEqual(undefined);
49
+ });
50
+
24
51
  test("update the selected range on select", () => {
25
52
  const initiallySelected = {
26
53
  from: new Date(2023, 6, 1),
@@ -36,6 +36,11 @@ export function useRange<T extends DayPickerProps>(
36
36
  }
37
37
  }, [required, selected, mode]);
38
38
 
39
+ // Update the selected date if the `selected` prop changes.
40
+ React.useEffect(() => {
41
+ setSelected(initiallySelected);
42
+ }, [initiallySelected]);
43
+
39
44
  const isSelected = (date: Date) =>
40
45
  selected && rangeIncludesDate(selected, date, false, dateLib);
41
46
 
package/src/style.css CHANGED
@@ -52,7 +52,7 @@
52
52
 
53
53
  --rdp-weekday-font: 500 smaller var(--rdp-font-family); /* The font of the weekday. */
54
54
  --rdp-weekday-opacity: 0.75; /* The opacity of the weekday. */
55
- --rdp-weekday-padding: 0.5rem 0.75rem; /* THe padding of the weekday. */
55
+ --rdp-weekday-padding: 0.5rem 0rem; /* The padding of the weekday. */
56
56
  --rdp-weekday-text-align: center; /* The text alignment of the weekday cells. */
57
57
 
58
58
  --rdp-gradient-direction: 90deg;
@@ -84,10 +84,6 @@
84
84
  }
85
85
 
86
86
  .rdp-day {
87
- justify-content: center;
88
- align-items: center;
89
- display: flex;
90
-
91
87
  width: var(--rdp-day-width);
92
88
  height: var(--rdp-day-height);
93
89
  font: var(--rdp-day-font);
@@ -222,15 +218,6 @@
222
218
  height: var(--rdp-nav-height);
223
219
  }
224
220
 
225
- .rdp-week {
226
- display: grid;
227
- grid-template-columns: repeat(7, 1fr);
228
- }
229
-
230
- .rdp-root[data-week-numbers="true"] .rdp-week {
231
- grid-template-columns: repeat(8, 1fr);
232
- }
233
-
234
221
  .rdp-weekday {
235
222
  opacity: var(--rdp-weekday-opacity);
236
223
  padding: var(--rdp-weekday-padding);
@@ -239,20 +226,7 @@
239
226
  text-transform: var(--rdp-weekday-text-transform);
240
227
  }
241
228
 
242
- .rdp-weekdays {
243
- display: grid;
244
- grid-template-columns: repeat(7, 1fr);
245
- }
246
-
247
- .rdp-root[data-week-numbers="true"] .rdp-weekdays {
248
- grid-template-columns: repeat(8, 1fr);
249
- }
250
-
251
229
  .rdp-week_number {
252
- justify-content: center;
253
- align-items: center;
254
- display: flex;
255
-
256
230
  opacity: var(--rdp-week_number-opacity);
257
231
  font: var(--rdp-week_number-font);
258
232
  height: var(--rdp-week_number-height);
@@ -52,7 +52,7 @@
52
52
 
53
53
  --rdp-weekday-font: 500 smaller var(--rdp-font-family); /* The font of the weekday. */
54
54
  --rdp-weekday-opacity: 0.75; /* The opacity of the weekday. */
55
- --rdp-weekday-padding: 0.5rem 0.75rem; /* THe padding of the weekday. */
55
+ --rdp-weekday-padding: 0.5rem 0rem; /* The padding of the weekday. */
56
56
  --rdp-weekday-text-align: center; /* The text alignment of the weekday cells. */
57
57
 
58
58
  --rdp-gradient-direction: 90deg;
@@ -84,10 +84,6 @@
84
84
  }
85
85
 
86
86
  .day {
87
- justify-content: center;
88
- align-items: center;
89
- display: flex;
90
-
91
87
  width: var(--rdp-day-width);
92
88
  height: var(--rdp-day-height);
93
89
  font: var(--rdp-day-font);
@@ -222,15 +218,6 @@
222
218
  height: var(--rdp-nav-height);
223
219
  }
224
220
 
225
- .week {
226
- display: grid;
227
- grid-template-columns: repeat(7, 1fr);
228
- }
229
-
230
- .root[data-week-numbers="true"] .week {
231
- grid-template-columns: repeat(8, 1fr);
232
- }
233
-
234
221
  .weekday {
235
222
  opacity: var(--rdp-weekday-opacity);
236
223
  padding: var(--rdp-weekday-padding);
@@ -239,20 +226,7 @@
239
226
  text-transform: var(--rdp-weekday-text-transform);
240
227
  }
241
228
 
242
- .weekdays {
243
- display: grid;
244
- grid-template-columns: repeat(7, 1fr);
245
- }
246
-
247
- .root[data-week-numbers="true"] .weekdays {
248
- grid-template-columns: repeat(8, 1fr);
249
- }
250
-
251
229
  .week_number {
252
- justify-content: center;
253
- align-items: center;
254
- display: flex;
255
-
256
230
  opacity: var(--rdp-week_number-opacity);
257
231
  font: var(--rdp-week_number-font);
258
232
  height: var(--rdp-week_number-height);