@kashifsaadat/react-scheduler 0.0.9 → 0.0.11

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/dist/index.d.ts CHANGED
@@ -47,6 +47,11 @@ export declare type Config = {
47
47
  maxZoom?: (typeof allZoomLevel)[number];
48
48
  dateFormat?: string;
49
49
  timeFormat?: string;
50
+ /**
51
+ * Enable drag and resize functionality for tiles
52
+ * @default false
53
+ */
54
+ editable?: boolean;
50
55
  };
51
56
 
52
57
  declare type LangCodes = "en" | "pl" | "de" | "lt";
@@ -63,7 +68,7 @@ declare type ParsedDatesRange = {
63
68
  endDate: Date;
64
69
  };
65
70
 
66
- export declare const Scheduler: ({ data, config, startDate, onRangeChange, onVisibleViewportChange, onTileClick, onFilterData, onClearFilterData, onItemClick, isLoading }: SchedulerProps) => JSX.Element;
71
+ export declare const Scheduler: ({ data, config, startDate, onRangeChange, onVisibleViewportChange, onZoomChange, onTileClick, onFilterData, onClearFilterData, onItemClick, onTileUpdate, isLoading }: SchedulerProps) => JSX.Element;
67
72
 
68
73
  export declare type SchedulerData = SchedulerRow[];
69
74
 
@@ -111,10 +116,17 @@ export declare type SchedulerProps = {
111
116
  startDate?: string;
112
117
  onRangeChange?: (range: ParsedDatesRange) => void;
113
118
  onVisibleViewportChange?: (viewport: ParsedDatesRange) => void;
119
+ onZoomChange?: (zoom: 0 | 1 | 2) => void;
114
120
  onTileClick?: (data: SchedulerProjectData) => void;
115
121
  onFilterData?: () => void;
116
122
  onClearFilterData?: () => void;
117
123
  onItemClick?: (data: SchedulerItemClickData) => void;
124
+ /**
125
+ * Callback when a tile is updated via drag or resize.
126
+ * Only called when config.editable is true.
127
+ * Returns the tile id, new start date, and new end date.
128
+ */
129
+ onTileUpdate?: (payload: TileUpdatePayload) => void;
118
130
  };
119
131
 
120
132
  declare type SchedulerRow = {
@@ -134,6 +146,12 @@ declare type Theme = {
134
146
  dark?: Partial<Record<ColorType, string>>;
135
147
  };
136
148
 
149
+ export declare type TileUpdatePayload = {
150
+ id: string;
151
+ startDate: Date;
152
+ endDate: Date;
153
+ };
154
+
137
155
  declare type Topbar = {
138
156
  filters: string;
139
157
  next: string;