akfatimeline 1.0.6 → 1.2.0
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 +98 -35
- package/dist/Timeline.js +4309 -1677
- package/dist/components/Timeline/AutocompleteSelect.js +150 -0
- package/dist/components/Timeline/ContextMenu.js +149 -0
- package/dist/components/Timeline/DailyView.js +255 -0
- package/dist/components/Timeline/DatePickerComponent.js +13 -0
- package/{public/dist/dist → dist}/components/Timeline/DragAndDropHandler.js +34 -34
- package/dist/components/Timeline/EventBadge.js +26 -0
- package/dist/components/Timeline/EventDetailModal.js +138 -0
- package/dist/components/Timeline/EventIcon.js +47 -0
- package/dist/{dist/components → components}/Timeline/EventTooltip.js +206 -206
- package/dist/components/Timeline/FilterPanel.js +179 -0
- package/dist/{dist/components → components}/Timeline/Indicator.js +26 -26
- package/dist/components/Timeline/LoadingSpinner.js +48 -0
- package/dist/{dist/components → components}/Timeline/MasterHeader.js +104 -68
- package/{public/dist/dist → dist}/components/Timeline/Resources.js +53 -53
- package/dist/{dist/components → components}/Timeline/ResourcesHeader.js +14 -14
- package/dist/components/Timeline/Timeline.css +2491 -0
- package/dist/components/Timeline/Timeline.js +607 -0
- package/dist/{dist/components → components}/Timeline/TimelineCell.js +8 -8
- package/dist/components/Timeline/TimelineContent.js +838 -0
- package/{public/dist/dist → dist}/components/Timeline/TimelineEvents.js +114 -114
- package/dist/components/Timeline/TimelineHeader.js +54 -0
- package/{public/dist/dist → dist}/components/Timeline/TimelineMonthContainer.js +29 -29
- package/{public/dist/dist → dist}/components/Timeline/TimelineResources.js +16 -16
- package/{public/dist/dist → dist}/hooks/useDragAndDrop.js +80 -80
- package/dist/{dist/hooks → hooks}/useEventDragDrop.js +126 -126
- package/dist/hooks/useEventManagement.js +173 -0
- package/dist/hooks/useEventSelection.js +82 -0
- package/{public/dist/dist → dist}/hooks/useExtendEvent.js +28 -28
- package/dist/hooks/useKeyboardShortcuts.js +158 -0
- package/dist/hooks/useTouchGestures.js +90 -0
- package/dist/utils/conflictUtils.js +105 -0
- package/dist/{dist/utils → utils}/dateUtils.js +36 -36
- package/dist/{dist/utils → utils}/filterTimelineData.js +20 -20
- package/dist/utils/filterUtils.js +106 -0
- package/dist/utils/timeUtils.js +179 -0
- package/dist/{dist/utils → utils}/timelineUtils.js +39 -39
- package/dist/utils/viewModeUtils.js +54 -0
- package/package.json +89 -19
- package/src/App.js +300 -19
- package/src/components/Timeline/AutocompleteSelect.js +150 -0
- package/src/components/Timeline/ContextMenu.js +149 -0
- package/src/components/Timeline/DailyView.js +255 -0
- package/src/components/Timeline/DatePickerComponent.js +13 -17
- package/src/components/Timeline/DragAndDropHandler.js +34 -34
- package/src/components/Timeline/EventBadge.js +26 -0
- package/src/components/Timeline/EventDetailModal.js +138 -0
- package/src/components/Timeline/EventIcon.js +47 -0
- package/src/components/Timeline/EventTooltip.js +206 -206
- package/src/components/Timeline/FilterPanel.js +179 -0
- package/src/components/Timeline/Indicator.js +26 -26
- package/src/components/Timeline/LoadingSpinner.js +48 -0
- package/src/components/Timeline/MasterHeader.js +104 -68
- package/src/components/Timeline/Resources.js +53 -53
- package/src/components/Timeline/ResourcesHeader.js +14 -14
- package/src/components/Timeline/Timeline.css +2491 -616
- package/src/components/Timeline/Timeline.js +607 -309
- package/src/components/Timeline/TimelineCell.js +8 -8
- package/src/components/Timeline/TimelineContent.js +838 -446
- package/src/components/Timeline/TimelineEvents.js +114 -114
- package/src/components/Timeline/TimelineHeader.js +54 -43
- package/src/components/Timeline/TimelineMonthContainer.js +29 -29
- package/src/components/Timeline/TimelineResources.js +16 -16
- package/src/demo.css +4 -0
- package/src/hooks/useDragAndDrop.js +80 -80
- package/src/hooks/useEventDragDrop.js +126 -126
- package/src/hooks/useEventManagement.js +173 -0
- package/src/hooks/useEventSelection.js +82 -0
- package/src/hooks/useExtendEvent.js +28 -28
- package/src/hooks/useKeyboardShortcuts.js +158 -0
- package/src/hooks/useTouchGestures.js +90 -0
- package/src/index.js +1 -7
- package/src/library.js +26 -0
- package/src/utils/conflictUtils.js +105 -0
- package/src/utils/dateUtils.js +36 -36
- package/src/utils/filterTimelineData.js +20 -20
- package/src/utils/filterUtils.js +106 -0
- package/src/utils/timeUtils.js +179 -0
- package/src/utils/timelineUtils.js +39 -39
- package/src/utils/viewModeUtils.js +54 -0
- package/.babelrc +0 -6
- package/babel.config.json +0 -4
- package/dist/dist/components/Timeline/DatePickerComponent.js +0 -17
- package/dist/dist/components/Timeline/DragAndDropHandler.js +0 -35
- package/dist/dist/components/Timeline/Resources.js +0 -53
- package/dist/dist/components/Timeline/Timeline.css +0 -616
- package/dist/dist/components/Timeline/Timeline.js +0 -309
- package/dist/dist/components/Timeline/TimelineContent.js +0 -446
- package/dist/dist/components/Timeline/TimelineEvents.js +0 -114
- package/dist/dist/components/Timeline/TimelineHeader.js +0 -43
- package/dist/dist/components/Timeline/TimelineMonthContainer.js +0 -29
- package/dist/dist/components/Timeline/TimelineResources.js +0 -16
- package/dist/dist/hooks/useDragAndDrop.js +0 -80
- package/dist/dist/hooks/useExtendEvent.js +0 -28
- package/public/dist/Timeline.js +0 -3277
- package/public/dist/dist/components/Timeline/DatePickerComponent.js +0 -17
- package/public/dist/dist/components/Timeline/EventTooltip.js +0 -206
- package/public/dist/dist/components/Timeline/Indicator.js +0 -29
- package/public/dist/dist/components/Timeline/MasterHeader.js +0 -68
- package/public/dist/dist/components/Timeline/ResourcesHeader.js +0 -14
- package/public/dist/dist/components/Timeline/Timeline.css +0 -616
- package/public/dist/dist/components/Timeline/Timeline.js +0 -304
- package/public/dist/dist/components/Timeline/TimelineCell.js +0 -8
- package/public/dist/dist/components/Timeline/TimelineContent.js +0 -447
- package/public/dist/dist/components/Timeline/TimelineHeader.js +0 -43
- package/public/dist/dist/hooks/useEventDragDrop.js +0 -126
- package/public/dist/dist/utils/HorizontalVirtualScroll.js +0 -0
- package/public/dist/dist/utils/dateUtils.js +0 -36
- package/public/dist/dist/utils/filterTimelineData.js +0 -21
- package/public/dist/dist/utils/timelineUtils.js +0 -40
- package/public/favicon.ico +0 -0
- package/public/index kutuphane /304/261c/304/261n.html" +0 -43
- package/public/index tasarim icin.html +0 -20
- package/public/index.html +0 -43
- package/public/logo192.png +0 -0
- package/public/logo512.png +0 -0
- package/public/manifest.json +0 -25
- package/public/robots.txt +0 -3
- package/src/App.css +0 -38
- package/src/App.test.js +0 -8
- package/src/dist/Timeline.js +0 -277
- package/src/index.css +0 -13
- package/src/logo.svg +0 -1
- package/src/reportWebVitals.js +0 -13
- package/src/setupTests.js +0 -5
- package/webpack.config.js +0 -49
- /package/dist/{dist/utils → utils}/HorizontalVirtualScroll.js +0 -0
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
// src/hooks/useDragAndDrop.js
|
|
2
|
-
import { useState } from "react";
|
|
3
|
-
import { parseDate } from "../utils/dateUtils"; // Named import
|
|
4
|
-
|
|
5
|
-
const useDragAndDrop = (initialEvents = []) => {
|
|
6
|
-
const [isDragging, setIsDragging] = useState(false);
|
|
7
|
-
const [dragStart, setDragStart] = useState(null);
|
|
8
|
-
const [dragEnd, setDragEnd] = useState(null);
|
|
9
|
-
const [events, setEvents] = useState(initialEvents);
|
|
10
|
-
|
|
11
|
-
// Sürükleme başlat
|
|
12
|
-
const startDrag = (resourceId, date) => {
|
|
13
|
-
setIsDragging(true);
|
|
14
|
-
setDragStart({ resourceId, date });
|
|
15
|
-
setDragEnd({ resourceId, date });
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
// Sürükleme hareketi
|
|
19
|
-
const updateDrag = (resourceId, date) => {
|
|
20
|
-
if (!isDragging) return;
|
|
21
|
-
setDragEnd({ resourceId, date });
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
// Sürükleme bitişi
|
|
25
|
-
const endDrag = (dates) => {
|
|
26
|
-
if (!isDragging || !dragStart || !dragEnd) return;
|
|
27
|
-
if (dragStart.resourceId !== dragEnd.resourceId) {
|
|
28
|
-
resetDrag();
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
const startDateIndex = dates.findIndex(
|
|
33
|
-
(d) => parseDate(d.fullDate).toDateString() === parseDate(dragStart.date.fullDate).toDateString()
|
|
34
|
-
);
|
|
35
|
-
const endDateIndex = dates.findIndex(
|
|
36
|
-
(d) => parseDate(d.fullDate).toDateString() === parseDate(dragEnd.date.fullDate).toDateString()
|
|
37
|
-
);
|
|
38
|
-
|
|
39
|
-
if (startDateIndex === -1 || endDateIndex === -1) {
|
|
40
|
-
resetDrag();
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
const sortedStartIndex = Math.min(startDateIndex, endDateIndex);
|
|
45
|
-
const sortedEndIndex = Math.max(startDateIndex, endDateIndex);
|
|
46
|
-
const startDate = dates[sortedStartIndex].fullDate;
|
|
47
|
-
const endDate = dates[sortedEndIndex].fullDate;
|
|
48
|
-
|
|
49
|
-
const newEvent = {
|
|
50
|
-
id: Date.now(),
|
|
51
|
-
title: "Yeni Etkinlik",
|
|
52
|
-
resourceId: dragStart.resourceId,
|
|
53
|
-
startDate: startDate,
|
|
54
|
-
endDate: endDate,
|
|
55
|
-
color: "#ff7f50",
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
setEvents((prev) => [...prev, newEvent]);
|
|
59
|
-
resetDrag();
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
const resetDrag = () => {
|
|
63
|
-
setIsDragging(false);
|
|
64
|
-
setDragStart(null);
|
|
65
|
-
setDragEnd(null);
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
return {
|
|
69
|
-
events,
|
|
70
|
-
isDragging,
|
|
71
|
-
dragStart,
|
|
72
|
-
dragEnd,
|
|
73
|
-
startDrag,
|
|
74
|
-
updateDrag,
|
|
75
|
-
endDrag,
|
|
76
|
-
setEvents,
|
|
77
|
-
};
|
|
78
|
-
};
|
|
79
|
-
|
|
80
|
-
export default useDragAndDrop;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { useCallback } from "react";
|
|
2
|
-
|
|
3
|
-
const useExtendEvent = (events, setEvents) => {
|
|
4
|
-
/**
|
|
5
|
-
* Etkinliği uzatmak veya kısaltmak için kullanılan işlev.
|
|
6
|
-
* @param {number} eventId - Güncellenmesi gereken etkinliğin ID'si.
|
|
7
|
-
* @param {Date} newEndDate - Etkinliğin yeni bitiş tarihi.
|
|
8
|
-
*/
|
|
9
|
-
const extendEvent = useCallback(
|
|
10
|
-
(eventId, newEndDate) => {
|
|
11
|
-
setEvents((prevEvents) =>
|
|
12
|
-
prevEvents.map((event) =>
|
|
13
|
-
event.id === eventId
|
|
14
|
-
? {
|
|
15
|
-
...event,
|
|
16
|
-
endDate: newEndDate, // Yeni bitiş tarihini günceller
|
|
17
|
-
}
|
|
18
|
-
: event // Diğer etkinlikler aynı kalır
|
|
19
|
-
)
|
|
20
|
-
);
|
|
21
|
-
},
|
|
22
|
-
[setEvents]
|
|
23
|
-
);
|
|
24
|
-
|
|
25
|
-
return { extendEvent };
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
export default useExtendEvent;
|