@kne/react-calendar 1.0.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/README.md +949 -0
- package/dist/en-US.d.ts +36 -0
- package/dist/index.css +843 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.ts +115 -0
- package/dist/index.js +1760 -0
- package/dist/index.js.map +1 -0
- package/dist/index.modern.js +1721 -0
- package/dist/index.modern.js.map +1 -0
- package/dist/locale/en-US.js +38 -0
- package/dist/locale/en-US.js.map +1 -0
- package/dist/locale/en-US.modern.js +38 -0
- package/dist/locale/en-US.modern.js.map +1 -0
- package/dist/locale/zh-CN.js +38 -0
- package/dist/locale/zh-CN.js.map +1 -0
- package/dist/locale/zh-CN.modern.js +38 -0
- package/dist/locale/zh-CN.modern.js.map +1 -0
- package/dist/zh-CN.d.ts +36 -0
- package/package.json +112 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["style.module.scss"],"names":[],"mappings":"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","file":"index.css","sourcesContent":[".schedule-calendar-shell {\n width: 100%;\n border-radius: var(--schedule-calendar-radius, 16px);\n box-shadow: var(--schedule-calendar-shadow, 0 18px 48px rgba(15, 23, 42, 0.08));\n}\n\n.schedule-calendar {\n --schedule-calendar-border: #eceef3;\n --schedule-calendar-surface: #fff;\n --schedule-calendar-panel-bg: #f2f3f6;\n --schedule-calendar-radius: 16px;\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: stretch;\n width: 100%;\n min-height: 560px;\n max-height: 100%;\n overflow: hidden;\n border: 1px solid var(--schedule-calendar-border);\n border-radius: var(--schedule-calendar-radius);\n background: var(--schedule-calendar-surface);\n}\n\n.calendar-side {\n flex: 0 0 50%;\n width: 50%;\n min-width: 0;\n padding: 18px 22px 22px;\n background: var(--schedule-calendar-surface);\n}\n\n.panel-side {\n position: absolute;\n top: 0;\n right: 0;\n width: 50%;\n height: 100%;\n min-width: 0;\n min-height: 0;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n background: var(--schedule-calendar-panel-bg);\n}\n\n.panel-side > * {\n flex: 1 1 auto;\n min-height: 0;\n height: 100%;\n overflow: hidden;\n}\n\n.schedule-calendar-stacked {\n flex-direction: column;\n min-height: 0;\n height: auto;\n}\n\n.schedule-calendar-stacked .calendar-side {\n flex: none;\n width: 100%;\n position: relative;\n z-index: 1;\n}\n\n.schedule-calendar-stacked .panel-side {\n top: var(--schedule-panel-top, 0);\n right: auto;\n left: 0;\n width: 100%;\n height: var(--schedule-panel-height, 560px);\n border-bottom-left-radius: var(--schedule-calendar-radius);\n border-bottom-right-radius: var(--schedule-calendar-radius);\n}\n\n.schedule-calendar :global(.ant-picker-calendar) {\n background: transparent;\n}\n\n.schedule-calendar :global(.ant-picker-calendar .ant-picker-panel) {\n border: 0;\n}\n\n.schedule-calendar :global(.ant-picker-calendar .ant-picker-content th) {\n height: 36px;\n color: #27272a;\n font-size: 12px;\n font-weight: 700;\n letter-spacing: 0.08em;\n}\n\n.schedule-calendar :global(.ant-picker-calendar .ant-picker-content) {\n table-layout: fixed;\n width: 100%;\n}\n\n.schedule-calendar :global(.ant-picker-calendar .ant-picker-cell) {\n padding: 3px;\n vertical-align: top;\n}\n\n.schedule-calendar :global(.ant-picker-calendar .ant-picker-cell-inner) {\n display: block;\n width: 100%;\n height: auto;\n min-height: 0;\n padding: 0;\n margin: 0;\n line-height: normal;\n}\n\n.schedule-calendar :global(.ant-picker-calendar .ant-picker-cell::before) {\n display: none;\n}\n\n.schedule-calendar :global(.ant-picker-cell-in-view.ant-picker-cell-selected) {\n background: transparent;\n}"]}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { CSSProperties, FC, ReactNode } from 'react';
|
|
2
|
+
|
|
3
|
+
export type DateLike = string | Date;
|
|
4
|
+
|
|
5
|
+
export type CalendarMode = 'view' | 'schedule';
|
|
6
|
+
|
|
7
|
+
export type CalendarEvent = {
|
|
8
|
+
id: string | number;
|
|
9
|
+
title: string;
|
|
10
|
+
detail?: ReactNode;
|
|
11
|
+
date?: DateLike;
|
|
12
|
+
start: DateLike;
|
|
13
|
+
end: DateLike;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
color?: string;
|
|
16
|
+
raw?: unknown;
|
|
17
|
+
onClick?: (event: CalendarEvent, ctx: { date: Date; mode: CalendarMode }) => void;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export type TimeSlot = {
|
|
21
|
+
key: string;
|
|
22
|
+
date: string;
|
|
23
|
+
start: Date;
|
|
24
|
+
end: Date;
|
|
25
|
+
status: 'free' | 'occupied' | 'disabled';
|
|
26
|
+
disabledReason?: ReactNode;
|
|
27
|
+
events: CalendarEvent[];
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export type ScheduleDateTimeRuleContext = {
|
|
31
|
+
date: Date;
|
|
32
|
+
slot?: {
|
|
33
|
+
start: Date;
|
|
34
|
+
end: Date;
|
|
35
|
+
};
|
|
36
|
+
mode: CalendarMode;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export type ScheduleChangeInfo = {
|
|
40
|
+
source: 'date' | 'today';
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export type CurrentChangeInfo = {
|
|
44
|
+
source: 'prevMonth' | 'nextMonth' | 'picker' | 'today';
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
export type SlotRangeChangeInfo = {
|
|
48
|
+
action: 'select' | 'clear';
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export type ScheduleCalendarProps = {
|
|
52
|
+
mode?: CalendarMode;
|
|
53
|
+
locale?: 'zh-CN' | 'en-US' | string;
|
|
54
|
+
value?: DateLike;
|
|
55
|
+
defaultValue?: DateLike;
|
|
56
|
+
onChange?: (date: Date, info: ScheduleChangeInfo) => void;
|
|
57
|
+
onDateChange?: (date: Date, info: ScheduleChangeInfo) => void;
|
|
58
|
+
onEventClick?: (event: CalendarEvent, ctx: { date: Date; mode: CalendarMode }) => void;
|
|
59
|
+
current?: DateLike;
|
|
60
|
+
defaultCurrent?: DateLike;
|
|
61
|
+
onCurrentChange?: (date: Date, info: CurrentChangeInfo) => void;
|
|
62
|
+
events?: CalendarEvent[];
|
|
63
|
+
loading?: boolean;
|
|
64
|
+
disabledDate?: (date: Date) => boolean;
|
|
65
|
+
disabledDateTime?: (ctx: ScheduleDateTimeRuleContext) => boolean | { disabled?: boolean; reason?: ReactNode };
|
|
66
|
+
availableDateTime?: (ctx: ScheduleDateTimeRuleContext) => boolean;
|
|
67
|
+
badgeMaxCount?: number;
|
|
68
|
+
timeUnit?: number;
|
|
69
|
+
dayStart?: string;
|
|
70
|
+
dayEnd?: string;
|
|
71
|
+
allowMultiSelect?: boolean;
|
|
72
|
+
renderEventItem?: (event: CalendarEvent, ctx: { date: Date; mode: CalendarMode; onEventClick?: ScheduleCalendarProps['onEventClick'] }) => ReactNode;
|
|
73
|
+
renderDateCell?: (date: Date, ctx: { events: CalendarEvent[]; selected: boolean; currentMonth: boolean }) => ReactNode;
|
|
74
|
+
renderTimeSlot?: (slot: TimeSlot, ctx: { selected: boolean }) => ReactNode;
|
|
75
|
+
renderOccupiedSlot?: (slot: TimeSlot, ctx: { events: CalendarEvent[] }) => ReactNode;
|
|
76
|
+
renderPanelHeader?: (ctx: { date: Date; mode: CalendarMode; events: CalendarEvent[] }) => ReactNode;
|
|
77
|
+
formInner?: ReactNode;
|
|
78
|
+
formProps?: Record<string, unknown>;
|
|
79
|
+
defaultFormValues?: Record<string, unknown> | ((ctx: { date: Date; slots: TimeSlot[] }) => Record<string, unknown>);
|
|
80
|
+
onFreeSlotClick?: (slot: TimeSlot) => void;
|
|
81
|
+
onSlotRangeChange?: (slots: TimeSlot[], info: SlotRangeChangeInfo) => void;
|
|
82
|
+
onCreate?: (values: Record<string, unknown>, ctx: { date: Date; slots: TimeSlot[] }) => void | Promise<void>;
|
|
83
|
+
className?: string;
|
|
84
|
+
style?: CSSProperties;
|
|
85
|
+
stackAt?: number;
|
|
86
|
+
calendarProps?: Record<string, unknown>;
|
|
87
|
+
panelProps?: Record<string, unknown>;
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
export type GenerateTimeSlotsOptions = {
|
|
91
|
+
date: DateLike;
|
|
92
|
+
events?: CalendarEvent[];
|
|
93
|
+
timeUnit?: number;
|
|
94
|
+
dayStart?: string;
|
|
95
|
+
dayEnd?: string;
|
|
96
|
+
disabledDate?: (date: Date) => boolean;
|
|
97
|
+
disabledDateTime?: ScheduleCalendarProps['disabledDateTime'];
|
|
98
|
+
availableDateTime?: ScheduleCalendarProps['availableDateTime'];
|
|
99
|
+
mode?: CalendarMode;
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
export declare const ScheduleCalendar: FC<ScheduleCalendarProps>;
|
|
103
|
+
export declare const ReactCalendar: FC<ScheduleCalendarProps>;
|
|
104
|
+
|
|
105
|
+
export declare function groupEventsByDate(events: CalendarEvent[]): Record<string, CalendarEvent[]>;
|
|
106
|
+
export declare function generateTimeSlots(options: GenerateTimeSlotsOptions): TimeSlot[];
|
|
107
|
+
export declare function normalizeEvent(event: CalendarEvent): CalendarEvent & {
|
|
108
|
+
start: import('dayjs').Dayjs | null;
|
|
109
|
+
end: import('dayjs').Dayjs | null;
|
|
110
|
+
};
|
|
111
|
+
export declare function sortEventsByStart(events: CalendarEvent[]): CalendarEvent[];
|
|
112
|
+
export declare function dedupeEventsById(events: CalendarEvent[]): CalendarEvent[];
|
|
113
|
+
|
|
114
|
+
declare const _default: FC<ScheduleCalendarProps>;
|
|
115
|
+
export default _default;
|