calendar fixing update
This commit is contained in:
@@ -5,7 +5,7 @@ import EventCalendar from "./EventCalendar";
|
|||||||
|
|
||||||
export default function Calendar(){
|
export default function Calendar(){
|
||||||
|
|
||||||
const [draggedEvent, setDraggedEvent] = useState()
|
const [draggedEvent, setDraggedEvent] = useState('undroppable')
|
||||||
const handleDragStart = useCallback((event) => setDraggedEvent(event), [])
|
const handleDragStart = useCallback((event) => setDraggedEvent(event), [])
|
||||||
|
|
||||||
const dummyEvents = [
|
const dummyEvents = [
|
||||||
@@ -19,7 +19,6 @@ export default function Calendar(){
|
|||||||
<>
|
<>
|
||||||
<BreadcrumbComBS title='Calendar' paths={['Dashboard', 'Calendar']} />
|
<BreadcrumbComBS title='Calendar' paths={['Dashboard', 'Calendar']} />
|
||||||
<div className="row">
|
<div className="row">
|
||||||
{/*<div className="vh-100 col-12 flex align-items-center">Coming Soon</div>*/}
|
|
||||||
<div className="col-lg-12">
|
<div className="col-lg-12">
|
||||||
<div className="card card-statistics">
|
<div className="card card-statistics">
|
||||||
<div className="card-header">
|
<div className="card-header">
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ export default function EventCalendar({draggedEvent, setDraggedEvent}) {
|
|||||||
|
|
||||||
const moveEvent = useCallback(
|
const moveEvent = useCallback(
|
||||||
({ event, start, end, isAllDay: droppedOnAllDaySlot = false }) => {
|
({ event, start, end, isAllDay: droppedOnAllDaySlot = false }) => {
|
||||||
|
// console.log('yes')
|
||||||
const { allDay } = event
|
const { allDay } = event
|
||||||
if (!allDay && droppedOnAllDaySlot) {
|
if (!allDay && droppedOnAllDaySlot) {
|
||||||
event.allDay = true
|
event.allDay = true
|
||||||
@@ -28,6 +29,7 @@ export default function EventCalendar({draggedEvent, setDraggedEvent}) {
|
|||||||
const existing = prev.find((ev) => ev.id === event.id) ?? {}
|
const existing = prev.find((ev) => ev.id === event.id) ?? {}
|
||||||
const filtered = prev.filter((ev) => ev.id !== event.id)
|
const filtered = prev.filter((ev) => ev.id !== event.id)
|
||||||
return [...filtered, { ...existing, start, end, allDay: event.allDay }]
|
return [...filtered, { ...existing, start, end, allDay: event.allDay }]
|
||||||
|
// return [...prev, { ...event }]
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
[setMyEvents]
|
[setMyEvents]
|
||||||
@@ -35,14 +37,6 @@ export default function EventCalendar({draggedEvent, setDraggedEvent}) {
|
|||||||
|
|
||||||
const [displayDragItemInCell, setDisplayDragItemInCell] = useState(true)
|
const [displayDragItemInCell, setDisplayDragItemInCell] = useState(true)
|
||||||
|
|
||||||
const eventPropGetter = useCallback(
|
|
||||||
(event) => ({
|
|
||||||
...(event.isDraggable
|
|
||||||
? { className: 'isDraggable' }
|
|
||||||
: { className: 'nonDraggable' }),
|
|
||||||
}),
|
|
||||||
[]
|
|
||||||
)
|
|
||||||
|
|
||||||
const dragFromOutsideItem = useCallback(() => draggedEvent === 'undroppable' ? null : draggedEvent, [draggedEvent])
|
const dragFromOutsideItem = useCallback(() => draggedEvent === 'undroppable' ? null : draggedEvent, [draggedEvent])
|
||||||
|
|
||||||
@@ -61,6 +55,16 @@ export default function EventCalendar({draggedEvent, setDraggedEvent}) {
|
|||||||
[draggedEvent]
|
[draggedEvent]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
const eventPropGetter = useCallback(
|
||||||
|
(event) => ({
|
||||||
|
...(event.isDraggable
|
||||||
|
? { className: 'isDraggable' }
|
||||||
|
: { className: 'nonDraggable' }),
|
||||||
|
}),
|
||||||
|
[]
|
||||||
|
)
|
||||||
|
|
||||||
const newEvent = useCallback(
|
const newEvent = useCallback(
|
||||||
(event) => {
|
(event) => {
|
||||||
setMyEvents((prev) => {
|
setMyEvents((prev) => {
|
||||||
@@ -109,16 +113,18 @@ export default function EventCalendar({draggedEvent, setDraggedEvent}) {
|
|||||||
dragFromOutsideItem={
|
dragFromOutsideItem={
|
||||||
displayDragItemInCell ? dragFromOutsideItem : null
|
displayDragItemInCell ? dragFromOutsideItem : null
|
||||||
}
|
}
|
||||||
draggableAccessor="isDraggable"
|
eventPropGetter={eventPropGetter}
|
||||||
// eventPropGetter={eventPropGetter}
|
// draggableAccessor="isDraggable"
|
||||||
localizer={localizer}
|
localizer={localizer}
|
||||||
events={myEvents}
|
events={myEvents}
|
||||||
startAccessor="start"
|
startAccessor="start"
|
||||||
endAccessor="end"
|
endAccessor="end"
|
||||||
style={{ height: 500 }}
|
style={{ height: 500 }}
|
||||||
|
// onEventResize={resizeEvent}
|
||||||
|
resizable
|
||||||
onEventDrop={moveEvent}
|
onEventDrop={moveEvent}
|
||||||
onDropFromOutside={onDropFromOutside}
|
onDropFromOutside={onDropFromOutside}
|
||||||
onDragOverFromOutside={customOnDragOverFromOutside}
|
// onDragOverFromOutside={customOnDragOverFromOutside}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user