diff --git a/src/views/components/common/CalendarGrid/CalendarGrid.module.scss b/src/views/components/common/CalendarGrid/CalendarGrid.module.scss new file mode 100644 index 00000000..3973d8b4 --- /dev/null +++ b/src/views/components/common/CalendarGrid/CalendarGrid.module.scss @@ -0,0 +1,61 @@ +:root { + --Primary-Colors-Burnt-Orange: #BF5700; +} + +.day-label-container { + display: flex; + height: 13px; + min-width: 40px; + min-height: 13px; + padding-bottom: 15px; + justify-content: center; + align-items: center; + gap: 10px; + flex: 1 0 0; +} + +.day-label { + color: var(--Primary-Colors-Burnt-Orange); + text-align: center; + font-family: Roboto; + font-size: 14.22px; + font-style: normal; + font-weight: 500; + line-height: normal; +} + +.calendar { + display: grid; + grid-template-columns: auto repeat(5, 1fr); + gap: 10px; +} + +.day { + display: grid; + grid-template-columns: auto repeat(14, 1fr); + gap: 5px; +} + +.time-block { + display: flex; + width: 50px; + height: 40.279px; + min-width: 50px; + max-width: 50px; + min-height: 40px; + flex-direction: column; + justify-content: flex-end; + align-items: flex-end; +} + +.time-label-container { + display: flex; + max-height: 20px; + flex-direction: column; + justify-content: flex-end; + align-items: flex-end; + gap: 17px; + flex: 1 0 0; + align-self: stretch; + border-radius: var(--border-radius-none, 0px); +} \ No newline at end of file diff --git a/src/views/components/common/CalendarGrid/CalendarGrid.tsx b/src/views/components/common/CalendarGrid/CalendarGrid.tsx new file mode 100644 index 00000000..d5a47709 --- /dev/null +++ b/src/views/components/common/CalendarGrid/CalendarGrid.tsx @@ -0,0 +1,31 @@ +import React from 'react'; +import styles from './CalendarGrid.module.scss'; +import CalendarCell from '../CalendarGridCell/CalendarGridCell'; + +const Calendar: React.FC = () => { + const daysOfWeek = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']; + const hoursOfDay = Array.from({ length: 14 }, (_, index) => index + 8); + + return ( +
+
+ {daysOfWeek.map((day, dayIndex) => ( +
+
+
{day}
+
+ {hoursOfDay.map((hour) => ( +
+
+ {hour}:00 +
+ +
+ ))} +
+ ))} +
+ ); + }; + + export default Calendar; \ No newline at end of file diff --git a/src/views/components/common/CalendarGridCell/CalendarGridCell.module.scss b/src/views/components/common/CalendarGridCell/CalendarGridCell.module.scss new file mode 100644 index 00000000..2a1b29fc --- /dev/null +++ b/src/views/components/common/CalendarGridCell/CalendarGridCell.module.scss @@ -0,0 +1,20 @@ +.calendar-cell { + display: flex; + width: 165px; + height: 52.231px; + min-width: 45px; + min-height: 40px; + flex-direction: column; + justify-content: center; + align-items: flex-start; + position: relative; + } + + .hour-line { + position: absolute; + left: 0; + right: 0; + top: 50%; + border-top: 1px solid black; /* Adjust line styles as needed */ + } + \ No newline at end of file diff --git a/src/views/components/common/CalendarGridCell/CalendarGridCell.tsx b/src/views/components/common/CalendarGridCell/CalendarGridCell.tsx new file mode 100644 index 00000000..17c9853f --- /dev/null +++ b/src/views/components/common/CalendarGridCell/CalendarGridCell.tsx @@ -0,0 +1,12 @@ +import React from 'react'; +import styles from './CalendarGridCell.module.scss'; + +const CalendarCell: React.FC = () => { + return ( +
+
+
+ ); +}; + +export default CalendarCell;