Repository: Hacker0x01/react-datepicker (ts)

Issue:
calendarStartDay and showWeekPicker, selected week is not active
**Describe the bug**
A clear and concise description of what the bug is.
When showWeekPicker is set true and calendarStartDay is set to 1, then only the first day of the week gets active state.
If calendarStartDay prop is removed it works as intended. 

**To Reproduce**
Steps to reproduce the behavior:
1. Create datepicker as following:
2.  `<DatePicker selected={date} startDate={x} onChange={setDate} showWeekPicker={true} />`
3.  Check that after selecing week and reopening calendar it is in selected state
4. add calendarStartDay prop:  `<DatePicker calendarStartDay={1} selected={x} startDate={x} onChange={setX} showWeekPicker={true} />`
5. select week
6. selected week is not in active state

**Expected behavior**
A clear and concise description of what you expected to happen.
selected week should be in active state 

**Screenshots**
If applicable, add screenshots to help explain your problem.
<img width="232" alt="Screenshot 2024-01-14 at 23 53 56" src="https://github.com/Hacker0x01/react-datepicker/assets/5435960/40cbe8f7-a30a-4b74-8c69-32506bc20480">
<img width="232" alt="Screenshot 2024-01-14 at 23 54 21" src="https://github.com/Hacker0x01/react-datepicker/assets/5435960/eaa784b5-a78d-4551-a0f9-bbb1a79ef13b">


**Desktop (please complete the following information):**

- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**

- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.


Pull request description:
fix: #4455 Pass calendarStartDay props from week to day.
## Description
**Linked issue**: close #4455

**Problem**
See issue #4455

**Changes**
- Pass calendarStartDay props from week to day.

## Screenshots
<!-- If applicable, add screenshots to help explain your improvements -->

## To reviewers
<!-- Additional comments for reviewers -->

## Contribution checklist
- [x] I have followed the [contributing guidelines](https://github.com/Hacker0x01/react-datepicker/blob/main/CONTRIBUTING.md).
- [x] I have added sufficient test coverage for my changes.
- [x] I have formatted my code with Prettier and checked for linting issues with ESLint for code readability.


Patch:
diff --git a/src/week.jsx b/src/week.jsx
index a2ed19b6..37206df4 100644
--- a/src/week.jsx
+++ b/src/week.jsx
@@ -153,6 +153,7 @@ export default class Week extends React.Component {
             onMouseEnter={this.handleDayMouseEnter.bind(this, day)}
             minDate={this.props.minDate}
             maxDate={this.props.maxDate}
+            calendarStartDay={this.props.calendarStartDay}
             excludeDates={this.props.excludeDates}
             excludeDateIntervals={this.props.excludeDateIntervals}
             includeDates={this.props.includeDates}


Test patch:
diff --git a/test/week_test.test.js b/test/week_test.test.js
index 6fdcde41..043d5644 100644
--- a/test/week_test.test.js
+++ b/test/week_test.test.js
@@ -344,4 +344,41 @@ describe("Week", () => {
       ).toBeNull();
     });
   });
+  describe("selected and calendarStartDay", () => {
+    it("shoud starts the selected day on the Wednesday immediately preceding that day, When the calendarStartDay Props is 3.", () => {
+      const calendarStartDay = 3;
+      const currentWeek = utils.getStartOfWeek(
+        utils.newDate("2024-03-01"),
+        null,
+        calendarStartDay,
+      );
+      const selected = utils.addWeeks(currentWeek, 0);
+      const { container } = render(
+        <Week
+          day={currentWeek}
+          selected={selected}
+          preSelection={currentWeek}
+          calendarStartDay={calendarStartDay}
+          showWeekPicker
+        />,
+      );
+      const week = container.querySelector(".react-datepicker__week--selected");
+
+      expect(week).not.toBeNull();
+
+      const days = container.querySelectorAll(
+        ".react-datepicker__day--selected",
+      );
+
+      expect(days).toHaveLength(7);
+      // 2024-02-28 to 2024-03-05
+      expect(days[0].textContent).toBe("28");
+      expect(days[1].textContent).toBe("29");
+      expect(days[2].textContent).toBe("1");
+      expect(days[3].textContent).toBe("2");
+      expect(days[4].textContent).toBe("3");
+      expect(days[5].textContent).toBe("4");
+      expect(days[6].textContent).toBe("5");
+    });
+  });
 });