pds-dev-kit-web 2.2.202 → 2.2.203

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.
Files changed (50) hide show
  1. package/dist/index.d.ts +2 -2
  2. package/dist/index.js +3 -2
  3. package/dist/src/common/services/i18n/resources/en.json +36 -0
  4. package/dist/src/common/services/i18n/resources/es.json +36 -0
  5. package/dist/src/common/services/i18n/resources/fil.json +36 -0
  6. package/dist/src/common/services/i18n/resources/index.d.ts +252 -0
  7. package/dist/src/common/services/i18n/resources/ja.json +36 -0
  8. package/dist/src/common/services/i18n/resources/ko.json +36 -0
  9. package/dist/src/common/services/i18n/resources/zh-cn.json +36 -0
  10. package/dist/src/common/services/i18n/resources/zh-tw.json +36 -0
  11. package/dist/src/common/utils/dateHelper.d.ts +3 -0
  12. package/dist/src/common/utils/dateHelper.js +37 -0
  13. package/dist/src/desktop/components/Calendar/AllDaySchedulesSection.d.ts +12 -0
  14. package/dist/src/desktop/components/Calendar/AllDaySchedulesSection.js +134 -0
  15. package/dist/src/desktop/components/Calendar/Calendar.d.ts +4 -0
  16. package/dist/src/desktop/components/Calendar/Calendar.js +399 -0
  17. package/dist/src/desktop/components/Calendar/CalendarContext.d.ts +51 -0
  18. package/dist/src/desktop/components/Calendar/CalendarContext.js +76 -0
  19. package/dist/src/desktop/components/Calendar/CurrentTimeIndicator.d.ts +7 -0
  20. package/dist/src/desktop/components/Calendar/CurrentTimeIndicator.js +48 -0
  21. package/dist/src/desktop/components/Calendar/DailyView.d.ts +2 -0
  22. package/dist/src/desktop/components/Calendar/DailyView.js +91 -0
  23. package/dist/src/desktop/components/Calendar/MonthlyView.d.ts +28 -0
  24. package/dist/src/desktop/components/Calendar/MonthlyView.js +381 -0
  25. package/dist/src/desktop/components/Calendar/MultiWeekSchedulesLayer.d.ts +21 -0
  26. package/dist/src/desktop/components/Calendar/MultiWeekSchedulesLayer.js +204 -0
  27. package/dist/src/desktop/components/Calendar/ScheduleItem.d.ts +25 -0
  28. package/dist/src/desktop/components/Calendar/ScheduleItem.js +56 -0
  29. package/dist/src/desktop/components/Calendar/TimeBasedScheduleItem.d.ts +12 -0
  30. package/dist/src/desktop/components/Calendar/TimeBasedScheduleItem.js +184 -0
  31. package/dist/src/desktop/components/Calendar/WeeklyView.d.ts +6 -0
  32. package/dist/src/desktop/components/Calendar/WeeklyView.js +114 -0
  33. package/dist/src/desktop/components/Calendar/YearlyView.d.ts +13 -0
  34. package/dist/src/desktop/components/Calendar/YearlyView.js +76 -0
  35. package/dist/src/desktop/components/Calendar/calendarUtils.d.ts +24 -0
  36. package/dist/src/desktop/components/Calendar/calendarUtils.js +87 -0
  37. package/dist/src/desktop/components/Calendar/constants.d.ts +1 -0
  38. package/dist/src/desktop/components/Calendar/constants.js +31 -0
  39. package/dist/src/desktop/components/Calendar/index.d.ts +14 -0
  40. package/dist/src/desktop/components/Calendar/index.js +42 -0
  41. package/dist/src/desktop/components/Calendar/timeFormatUtils.d.ts +16 -0
  42. package/dist/src/desktop/components/Calendar/timeFormatUtils.js +45 -0
  43. package/dist/src/desktop/components/Calendar/types.d.ts +61 -0
  44. package/dist/src/desktop/components/Calendar/types.js +2 -0
  45. package/dist/src/desktop/components/index.d.ts +2 -1
  46. package/dist/src/desktop/components/index.js +3 -1
  47. package/dist/src/desktop/index.d.ts +1 -1
  48. package/dist/src/desktop/index.js +2 -1
  49. package/package.json +1 -1
  50. package/release-note.md +2 -2
@@ -0,0 +1,51 @@
1
+ import React from 'react';
2
+ import type { Schedule, displayAllDayScheduleMode } from './types';
3
+ export interface ScheduleItemExtraProps {
4
+ onDragStart?: (e: React.DragEvent) => void;
5
+ onDragEnd?: () => void;
6
+ onClick?: (e: React.MouseEvent) => void;
7
+ style?: React.CSSProperties;
8
+ className?: string;
9
+ [key: string]: unknown;
10
+ }
11
+ interface CalendarContextValue {
12
+ renderScheduleItem: (schedule: Schedule, extraProps?: ScheduleItemExtraProps) => React.ReactNode;
13
+ handleScheduleClick: (schedule: Schedule, e?: React.MouseEvent) => void;
14
+ handleScheduleDragStart: (schedule: Schedule, e: React.DragEvent) => void;
15
+ handleScheduleDragEnd: () => void;
16
+ handleDateClick: (date: Date, e: React.MouseEvent) => void;
17
+ handleDateDragOver: (date: Date, e: React.DragEvent) => void;
18
+ handleDateDragLeave: () => void;
19
+ handleDateDrop: (date: Date, e: React.DragEvent) => void;
20
+ getSchedulesForDate: (date: Date) => Schedule[];
21
+ isToday: (date: Date) => boolean;
22
+ isPastDate: (date: Date) => boolean;
23
+ getDayTextByDate: (date: Date) => string;
24
+ selectedSchedules: Schedule[];
25
+ isDragOverDate: Date | null;
26
+ selectedDate: Date;
27
+ displayAllDayScheduleMode: displayAllDayScheduleMode;
28
+ isDraggable: boolean;
29
+ }
30
+ export declare const useCalendarContext: () => CalendarContextValue;
31
+ interface CalendarProviderProps {
32
+ children: React.ReactNode;
33
+ selectedSchedules: Schedule[];
34
+ isDraggable: boolean;
35
+ handleScheduleClick: (schedule: Schedule, e?: React.MouseEvent) => void;
36
+ handleScheduleDragStart: (schedule: Schedule, e: React.DragEvent) => void;
37
+ handleScheduleDragEnd: () => void;
38
+ handleDateClick: (date: Date, e: React.MouseEvent) => void;
39
+ handleDateDragOver: (date: Date, e: React.DragEvent) => void;
40
+ handleDateDragLeave: () => void;
41
+ handleDateDrop: (date: Date, e: React.DragEvent) => void;
42
+ getSchedulesForDate: (date: Date) => Schedule[];
43
+ isToday: (date: Date) => boolean;
44
+ isPastDate: (date: Date) => boolean;
45
+ getDayTextByDate: (date: Date) => string;
46
+ isDragOverDate: Date | null;
47
+ selectedDate: Date;
48
+ displayAllDayScheduleMode: displayAllDayScheduleMode;
49
+ }
50
+ export declare const CalendarProvider: React.FC<CalendarProviderProps>;
51
+ export {};
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.CalendarProvider = exports.useCalendarContext = void 0;
15
+ var jsx_runtime_1 = require("react/jsx-runtime");
16
+ var react_1 = require("react");
17
+ var calendarUtils_1 = require("./calendarUtils");
18
+ var ScheduleItem_1 = require("./ScheduleItem");
19
+ var CalendarContext = (0, react_1.createContext)(null);
20
+ var useCalendarContext = function () {
21
+ var context = (0, react_1.useContext)(CalendarContext);
22
+ if (!context) {
23
+ throw new Error('useCalendarContext must be used within a CalendarProvider');
24
+ }
25
+ return context;
26
+ };
27
+ exports.useCalendarContext = useCalendarContext;
28
+ var CalendarProvider = function (_a) {
29
+ var children = _a.children,
30
+ // 스케줄 관련
31
+ selectedSchedules = _a.selectedSchedules, isDraggable = _a.isDraggable, handleScheduleClick = _a.handleScheduleClick, handleScheduleDragStart = _a.handleScheduleDragStart, handleScheduleDragEnd = _a.handleScheduleDragEnd,
32
+ // 날짜 관련
33
+ handleDateClick = _a.handleDateClick, handleDateDragOver = _a.handleDateDragOver, handleDateDragLeave = _a.handleDateDragLeave, handleDateDrop = _a.handleDateDrop,
34
+ // 유틸리티 함수
35
+ getSchedulesForDate = _a.getSchedulesForDate, isToday = _a.isToday, isPastDate = _a.isPastDate, getDayTextByDate = _a.getDayTextByDate,
36
+ // 상태값
37
+ isDragOverDate = _a.isDragOverDate, selectedDate = _a.selectedDate, displayAllDayScheduleMode = _a.displayAllDayScheduleMode;
38
+ var renderScheduleItem = (0, react_1.useCallback)(function (schedule, extraProps) {
39
+ if (extraProps === void 0) { extraProps = {}; }
40
+ var isAllDay = (0, calendarUtils_1.calculateIsAllDay)(new Date(schedule.startDate), new Date(schedule.endDate));
41
+ var isSelected = selectedSchedules.some(function (s) { return s.id === schedule.id; });
42
+ return ((0, jsx_runtime_1.jsx)(ScheduleItem_1.ScheduleItem, { schedule: schedule, extraProps: extraProps, onDragStart: handleScheduleDragStart, onDragEnd: handleScheduleDragEnd, onClick: handleScheduleClick, isSelected: isSelected, isAllDay: isAllDay, isDraggable: isDraggable }));
43
+ }, [
44
+ selectedSchedules,
45
+ isDraggable,
46
+ handleScheduleClick,
47
+ handleScheduleDragStart,
48
+ handleScheduleDragEnd
49
+ ]);
50
+ var value = {
51
+ // 스케줄 렌더링 관련
52
+ renderScheduleItem: renderScheduleItem,
53
+ // 스케줄 이벤트 핸들러
54
+ handleScheduleClick: handleScheduleClick,
55
+ handleScheduleDragStart: handleScheduleDragStart,
56
+ handleScheduleDragEnd: handleScheduleDragEnd,
57
+ // 날짜 이벤트 핸들러
58
+ handleDateClick: handleDateClick,
59
+ handleDateDragOver: handleDateDragOver,
60
+ handleDateDragLeave: handleDateDragLeave,
61
+ handleDateDrop: handleDateDrop,
62
+ // 유틸리티 함수
63
+ getSchedulesForDate: getSchedulesForDate,
64
+ isToday: isToday,
65
+ isPastDate: isPastDate,
66
+ getDayTextByDate: getDayTextByDate,
67
+ // 상태값
68
+ selectedSchedules: selectedSchedules,
69
+ isDragOverDate: isDragOverDate,
70
+ selectedDate: selectedDate,
71
+ displayAllDayScheduleMode: displayAllDayScheduleMode,
72
+ isDraggable: isDraggable
73
+ };
74
+ return (0, jsx_runtime_1.jsx)(CalendarContext.Provider, __assign({ value: value }, { children: children }));
75
+ };
76
+ exports.CalendarProvider = CalendarProvider;
@@ -0,0 +1,7 @@
1
+ import type React from 'react';
2
+ interface CurrentTimeIndicatorProps {
3
+ show: boolean;
4
+ leftOffset?: string;
5
+ }
6
+ export declare const CurrentTimeIndicator: React.FC<CurrentTimeIndicatorProps>;
7
+ export {};
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.CurrentTimeIndicator = void 0;
11
+ var jsx_runtime_1 = require("react/jsx-runtime");
12
+ var react_1 = require("react");
13
+ var react_i18next_1 = require("react-i18next");
14
+ var styled_components_1 = __importDefault(require("styled-components"));
15
+ var constants_1 = require("./constants");
16
+ var CurrentTimeIndicator = function (_a) {
17
+ var show = _a.show, _b = _a.leftOffset, leftOffset = _b === void 0 ? '80px' : _b;
18
+ var i18n = (0, react_i18next_1.useTranslation)().i18n;
19
+ var getCurrentTime = (0, react_1.useCallback)(function () {
20
+ var now = new Date();
21
+ var locale = (0, constants_1.getLocaleFromLang)(i18n.language);
22
+ var timeInTimezone = new Date(now.toLocaleString(locale));
23
+ return {
24
+ hour: timeInTimezone.getHours(),
25
+ minute: timeInTimezone.getMinutes(),
26
+ percentage: ((timeInTimezone.getHours() * 60 + timeInTimezone.getMinutes()) / (24 * 60)) * 100
27
+ };
28
+ }, [i18n.language]);
29
+ var _c = (0, react_1.useState)(getCurrentTime()), currentTime = _c[0], setCurrentTime = _c[1];
30
+ (0, react_1.useEffect)(function () {
31
+ var updateTime = function () {
32
+ setCurrentTime(getCurrentTime());
33
+ };
34
+ updateTime();
35
+ var interval = setInterval(updateTime, 60000);
36
+ return function () { return clearInterval(interval); };
37
+ }, [getCurrentTime]);
38
+ return ((0, jsx_runtime_1.jsx)(S_CurrentTimeIndicator, { "$show": show, "$top": "".concat(currentTime.percentage, "%"), "$leftOffset": leftOffset }));
39
+ };
40
+ exports.CurrentTimeIndicator = CurrentTimeIndicator;
41
+ var S_CurrentTimeIndicator = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background: ", ";\n display: ", ";\n height: 2px;\n left: ", ";\n position: absolute;\n right: 0;\n top: ", ";\n z-index: 10;\n\n &::before {\n background: ", ";\n border-radius: 50%;\n content: '';\n height: 8px;\n left: -4px;\n position: absolute;\n top: -3px;\n width: 8px;\n }\n"], ["\n background: ", ";\n display: ", ";\n height: 2px;\n left: ", ";\n position: absolute;\n right: 0;\n top: ", ";\n z-index: 10;\n\n &::before {\n background: ", ";\n border-radius: 50%;\n content: '';\n height: 8px;\n left: -4px;\n position: absolute;\n top: -3px;\n width: 8px;\n }\n"])), function (_a) {
42
+ var theme = _a.theme;
43
+ return theme.ui_cpnt_sheet_border_07;
44
+ }, function (props) { return (props.$show ? 'block' : 'none'); }, function (props) { return props.$leftOffset; }, function (props) { return props.$top; }, function (_a) {
45
+ var theme = _a.theme;
46
+ return theme.ui_cpnt_sheet_border_07;
47
+ });
48
+ var templateObject_1;
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const DailyView: () => JSX.Element;
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.DailyView = void 0;
42
+ var jsx_runtime_1 = require("react/jsx-runtime");
43
+ var react_i18next_1 = require("react-i18next");
44
+ var styled_components_1 = __importStar(require("styled-components"));
45
+ var TextLabel_1 = require("../TextLabel");
46
+ var AllDaySchedulesSection_1 = require("./AllDaySchedulesSection");
47
+ var CalendarContext_1 = require("./CalendarContext");
48
+ var CurrentTimeIndicator_1 = require("./CurrentTimeIndicator");
49
+ var TimeBasedScheduleItem_1 = require("./TimeBasedScheduleItem");
50
+ var timeFormatUtils_1 = require("./timeFormatUtils");
51
+ var DailyView = function () {
52
+ var i18n = (0, react_i18next_1.useTranslation)().i18n;
53
+ var _a = (0, CalendarContext_1.useCalendarContext)(), selectedDate = _a.selectedDate, selectedSchedules = _a.selectedSchedules, displayAllDayScheduleMode = _a.displayAllDayScheduleMode, getSchedulesForDate = _a.getSchedulesForDate, isDragOverDate = _a.isDragOverDate, handleDateDragOver = _a.handleDateDragOver, handleDateDragLeave = _a.handleDateDragLeave, handleDateDrop = _a.handleDateDrop, handleDateClick = _a.handleDateClick, handleScheduleDragStart = _a.handleScheduleDragStart, handleScheduleDragEnd = _a.handleScheduleDragEnd, handleScheduleClick = _a.handleScheduleClick;
54
+ var currentDateForDaily = [selectedDate][0];
55
+ var HOURS_IN_DAY = Array.from({ length: 24 }, function (_, i) { return i; });
56
+ var getTimeSlotDate = function (baseDate, hour) {
57
+ var date = new Date(baseDate);
58
+ date.setHours(hour, 0, 0, 0);
59
+ return date;
60
+ };
61
+ return ((0, jsx_runtime_1.jsxs)(S_DailyContainer, { children: [(0, jsx_runtime_1.jsx)(AllDaySchedulesSection_1.AllDaySchedulesSection, { calendarDates: [selectedDate], displayAllDayScheduleMode: displayAllDayScheduleMode, getSchedulesForDate: getSchedulesForDate, handleDateDragOver: handleDateDragOver, handleDateDragLeave: handleDateDragLeave, handleDateDrop: handleDateDrop }), (0, jsx_runtime_1.jsxs)(S_DailyTimeGrid, __assign({ "$displayAllDayScheduleMode": displayAllDayScheduleMode }, { children: [(0, jsx_runtime_1.jsx)(CurrentTimeIndicator_1.CurrentTimeIndicator, { show: true, leftOffset: "80px" }), HOURS_IN_DAY.map(function (hour) {
62
+ var timeSlotDate = getTimeSlotDate(currentDateForDaily, hour);
63
+ var isDragOver = (isDragOverDate === null || isDragOverDate === void 0 ? void 0 : isDragOverDate.getTime()) === timeSlotDate.getTime();
64
+ return ((0, jsx_runtime_1.jsxs)(S_DailyTimeRow, { children: [(0, jsx_runtime_1.jsx)(S_DailyTimeLabel, { children: (0, jsx_runtime_1.jsx)(TextLabel_1.TextLabel, { styleTheme: "caption2Bold", text: (0, timeFormatUtils_1.formatHour)(hour, i18n.language), colorTheme: "sysTextTertiary" }) }), (0, jsx_runtime_1.jsx)(S_DailyTimeSlot, __assign({ "$isDragOver": isDragOver, onClick: function () { return handleDateClick(timeSlotDate, {}); }, onDragOver: function (e) { return handleDateDragOver(timeSlotDate, e); }, onDragLeave: handleDateDragLeave, onDrop: function (e) { return handleDateDrop(timeSlotDate, e); } }, { children: hour === 0 && ((0, jsx_runtime_1.jsx)(TimeBasedScheduleItem_1.TimeBasedScheduleItem, { schedules: getSchedulesForDate(currentDateForDaily), selectedSchedules: selectedSchedules, onClick: handleScheduleClick, handleScheduleDragStart: handleScheduleDragStart, handleScheduleDragEnd: handleScheduleDragEnd })) }))] }, hour));
65
+ })] }))] }));
66
+ };
67
+ exports.DailyView = DailyView;
68
+ var S_DailyContainer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n height: 100%;\n"], ["\n display: flex;\n flex-direction: column;\n height: 100%;\n"])));
69
+ var S_DailyTimeGrid = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n flex: 1;\n overflow-y: auto;\n position: relative;\n ", "\n"], ["\n flex: 1;\n overflow-y: auto;\n position: relative;\n ", "\n"])), function (_a) {
70
+ var $displayAllDayScheduleMode = _a.$displayAllDayScheduleMode;
71
+ return $displayAllDayScheduleMode === 'none' && (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n border-top: 1px solid ", ";\n "], ["\n border-top: 1px solid ", ";\n "])), function (_a) {
72
+ var theme = _a.theme;
73
+ return theme.ui_cpnt_divider;
74
+ });
75
+ });
76
+ var S_DailyTimeRow = styled_components_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n display: flex;\n min-height: 60px;\n"], ["\n display: flex;\n min-height: 60px;\n"])));
77
+ var S_DailyTimeLabel = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n align-items: center;\n border-bottom: 1px solid ", ";\n border-right: 1px solid ", ";\n display: flex;\n justify-content: center;\n min-width: 80px;\n padding: 8px;\n"], ["\n align-items: center;\n border-bottom: 1px solid ", ";\n border-right: 1px solid ", ";\n display: flex;\n justify-content: center;\n min-width: 80px;\n padding: 8px;\n"])), function (_a) {
78
+ var theme = _a.theme;
79
+ return theme.ui_cpnt_divider;
80
+ }, function (_a) {
81
+ var theme = _a.theme;
82
+ return theme.ui_cpnt_divider;
83
+ });
84
+ var S_DailyTimeSlot = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n background: ", ";\n border-bottom: 1px solid ", ";\n cursor: pointer;\n flex: 1;\n min-width: 0;\n overflow: visible;\n padding: 4px;\n position: relative;\n\n &:hover {\n background: ", ";\n }\n"], ["\n background: ", ";\n border-bottom: 1px solid ", ";\n cursor: pointer;\n flex: 1;\n min-width: 0;\n overflow: visible;\n padding: 4px;\n position: relative;\n\n &:hover {\n background: ", ";\n }\n"])), function (props) { return (props.$isDragOver ? props.theme.ui_72 : 'transparent'); }, function (_a) {
85
+ var theme = _a.theme;
86
+ return theme.ui_cpnt_divider;
87
+ }, function (_a) {
88
+ var theme = _a.theme;
89
+ return theme.ui_72;
90
+ });
91
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;
@@ -0,0 +1,28 @@
1
+ import type { Schedule } from './types';
2
+ import type React from 'react';
3
+ interface MonthlyViewProps {
4
+ getDayTextByDate: (date: Date) => string;
5
+ startOfWeek: 'sunday' | 'monday';
6
+ selectedDate: Date;
7
+ selectedDates: Date[];
8
+ dragStartDate: Date | null;
9
+ selectedSchedules: Schedule[];
10
+ dragEndDate: Date | null;
11
+ isDragOverDate: Date | null;
12
+ schedules: Schedule[];
13
+ getSchedulesForDate: (date: Date) => Schedule[];
14
+ isToday: (date: Date) => boolean;
15
+ isPastDate: (date: Date) => boolean;
16
+ handleDateClick: (date: Date, e: React.MouseEvent) => void;
17
+ handleScheduleClick?: (schedule: Schedule, e?: React.MouseEvent) => void;
18
+ handleMouseUp: () => void;
19
+ handleDateDragOver: (date: Date, e: React.DragEvent) => void;
20
+ handleDateDragLeave: () => void;
21
+ handleDateDrop: (date: Date, e: React.DragEvent) => void;
22
+ handleScheduleDragStart?: (schedule: Schedule, e: React.DragEvent) => void;
23
+ handleScheduleDragEnd?: () => void;
24
+ isDraggable?: boolean;
25
+ onSwitchToWeeklyView?: (date: Date) => void;
26
+ }
27
+ export declare const MonthlyView: React.FC<MonthlyViewProps>;
28
+ export {};