@super-calendar/dom 2.3.1 → 2.4.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/dist/index.d.mts +80 -222
- package/dist/index.d.ts +80 -222
- package/dist/index.js +429 -69
- package/dist/index.mjs +432 -72
- package/package.json +2 -2
- package/src/Calendar.tsx +192 -50
- package/src/ResourceTimeline.tsx +215 -9
- package/src/TimeGrid.tsx +345 -72
package/dist/index.d.mts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Locale } from "date-fns";
|
|
2
2
|
import { CSSProperties, ComponentType, ReactElement, ReactNode } from "react";
|
|
3
3
|
import { BusinessHours, BusinessHours as BusinessHours$1, CalendarColors, CalendarEvent, CalendarEvent as CalendarEvent$1, CalendarMode, CalendarMode as CalendarMode$1, DateRange, DateRange as DateRange$1, DateSelectionConstraints, DateSelectionConstraints as DateSelectionConstraints$1, DaySelectionState, EventAccessibilityLabelContext, EventAccessibilityLabeler, EventAccessibilityLabeler as EventAccessibilityLabeler$1, ICalEvent, ICalendarEvent, MonthGrid, MonthGridDay, MonthGridWeek, MonthGridWeekday, PositionedEvent, RecurrenceFrequency, RecurrenceRule, TimeGridMode, TimeGridMode as TimeGridMode$1, ToICalendarOptions, UseDateRangeOptions, UseMonthGridOptions, WeekStartsOn, WeekStartsOn as WeekStartsOn$1, WeekdayFormat, WeekdayFormat as WeekdayFormat$1, buildMonthGrid, daySelectionState, expandRecurringEvents, getViewDays, isAllDayEvent, isDateSelectable, isRangeEndpoint, isWithinDateRange, layoutDayEvents, nextDateRange, parseICalendar, toICalendar, useDateRange, useMonthGrid, weekdayFormatToken } from "@super-calendar/core";
|
|
4
|
-
|
|
5
4
|
//#region src/slots.d.ts
|
|
6
5
|
/**
|
|
7
6
|
* Per-slot styling overrides. Give a slot a Tailwind/CSS class and/or an inline
|
|
@@ -37,14 +36,17 @@ interface ResolvedSlot {
|
|
|
37
36
|
* `@super-calendar/core` with the DOM-specific pixel metrics and font stack.
|
|
38
37
|
*/
|
|
39
38
|
type DomCalendarTheme = CalendarColors & {
|
|
40
|
-
/** Row height of a day cell, in px. */
|
|
39
|
+
/** Row height of a day cell, in px. */
|
|
40
|
+
cellHeight: number;
|
|
41
|
+
/** Diameter of the day badge, in px. */
|
|
41
42
|
dayBadgeSize: number;
|
|
42
43
|
/**
|
|
43
44
|
* Height of the selection band strip, in px (the default pill look). The pill's
|
|
44
45
|
* corner radius is half this. Ignored when `fillCellOnSelection` is set, where
|
|
45
46
|
* the band fills the whole cell instead.
|
|
46
47
|
*/
|
|
47
|
-
rangeBandHeight: number;
|
|
48
|
+
rangeBandHeight: number;
|
|
49
|
+
/** Font stack for the calendar. */
|
|
48
50
|
fontFamily: string;
|
|
49
51
|
};
|
|
50
52
|
/** The default light theme: the core light palette plus the DOM metrics. */
|
|
@@ -117,22 +119,7 @@ interface AgendaProps<T = unknown> extends SlotStyleProps<AgendaSlot> {
|
|
|
117
119
|
* <Agenda events={events} onPressEvent={(e) => console.log(e.title)} />
|
|
118
120
|
* ```
|
|
119
121
|
*/
|
|
120
|
-
declare function Agenda<T = unknown>({
|
|
121
|
-
events,
|
|
122
|
-
locale,
|
|
123
|
-
ampm,
|
|
124
|
-
activeDate,
|
|
125
|
-
theme: themeOverrides,
|
|
126
|
-
height,
|
|
127
|
-
renderEvent,
|
|
128
|
-
eventAccessibilityLabel,
|
|
129
|
-
onPressEvent,
|
|
130
|
-
onPressDay,
|
|
131
|
-
className,
|
|
132
|
-
style,
|
|
133
|
-
classNames,
|
|
134
|
-
styles
|
|
135
|
-
}: AgendaProps<T>): ReactElement;
|
|
122
|
+
declare function Agenda<T = unknown>({ events, locale, ampm, activeDate, theme: themeOverrides, height, renderEvent, eventAccessibilityLabel, onPressEvent, onPressDay, className, style, classNames, styles }: AgendaProps<T>): ReactElement;
|
|
136
123
|
//#endregion
|
|
137
124
|
//#region src/MonthView.d.ts
|
|
138
125
|
/**
|
|
@@ -231,44 +218,14 @@ interface MonthViewInternalProps<T = unknown> extends MonthViewProps<T> {
|
|
|
231
218
|
* <MonthView date={new Date()} events={events} onPressDay={(d) => setDate(d)} />
|
|
232
219
|
* ```
|
|
233
220
|
*/
|
|
234
|
-
declare function MonthView<T = unknown>({
|
|
235
|
-
date,
|
|
236
|
-
weekStartsOn,
|
|
237
|
-
weekdayFormat,
|
|
238
|
-
events,
|
|
239
|
-
eventsByDay: eventsByDayProp,
|
|
240
|
-
renderEvent,
|
|
241
|
-
eventAccessibilityLabel,
|
|
242
|
-
maxVisibleEventCount,
|
|
243
|
-
moreLabel,
|
|
244
|
-
onPressEvent,
|
|
245
|
-
onPressMore,
|
|
246
|
-
selectedRange,
|
|
247
|
-
selectedDates,
|
|
248
|
-
showAdjacentMonths,
|
|
249
|
-
fillCellOnSelection,
|
|
250
|
-
showTitle,
|
|
251
|
-
showWeekdays,
|
|
252
|
-
locale,
|
|
253
|
-
theme: themeOverrides,
|
|
254
|
-
minDate,
|
|
255
|
-
maxDate,
|
|
256
|
-
isDateDisabled,
|
|
257
|
-
onPressDay,
|
|
258
|
-
onCreateEvent,
|
|
259
|
-
keyboardDayNavigation,
|
|
260
|
-
className,
|
|
261
|
-
style,
|
|
262
|
-
classNames,
|
|
263
|
-
styles
|
|
264
|
-
}: MonthViewInternalProps<T>): ReactElement;
|
|
221
|
+
declare function MonthView<T = unknown>({ date, weekStartsOn, weekdayFormat, events, eventsByDay: eventsByDayProp, renderEvent, eventAccessibilityLabel, maxVisibleEventCount, moreLabel, onPressEvent, onPressMore, selectedRange, selectedDates, showAdjacentMonths, fillCellOnSelection, showTitle, showWeekdays, locale, theme: themeOverrides, minDate, maxDate, isDateDisabled, onPressDay, onCreateEvent, keyboardDayNavigation, className, style, classNames, styles }: MonthViewInternalProps<T>): ReactElement;
|
|
265
222
|
//#endregion
|
|
266
223
|
//#region src/TimeGrid.d.ts
|
|
267
224
|
/**
|
|
268
225
|
* Styleable parts of {@link TimeGrid}. Pass a class or inline style per slot via
|
|
269
226
|
* the `classNames` / `styles` props.
|
|
270
227
|
*/
|
|
271
|
-
type TimeGridSlot = "header" | "columnHeader" | "columnHeaderWeekday" | "columnHeaderDate" | "allDayLane" | "allDayLabel" | "allDayColumn" | "allDayEvent" | "hourGutter" | "hourLabel" | "dayColumn" | "gridLines" | "businessHours" | "event" | "eventBox" | "nowIndicator" | "createGhost";
|
|
228
|
+
type TimeGridSlot = "header" | "weekNumber" | "columnHeader" | "columnHeaderWeekday" | "columnHeaderDate" | "allDayLane" | "allDayLabel" | "allDayColumn" | "allDayEvent" | "hourGutter" | "hourLabel" | "dayColumn" | "gridLines" | "businessHours" | "event" | "eventBox" | "nowIndicator" | "createGhost";
|
|
272
229
|
/** Props passed to a custom time-grid event renderer. */
|
|
273
230
|
interface DomRenderEventArgs<T = unknown> {
|
|
274
231
|
/** The event to render. */
|
|
@@ -320,6 +277,16 @@ interface TimeGridProps<T = unknown> extends SlotStyleProps<TimeGridSlot> {
|
|
|
320
277
|
ampm?: boolean;
|
|
321
278
|
/** Sub-divisions per hour for the grid lines, e.g. 2 for half-hour (default 1). */
|
|
322
279
|
timeslots?: number;
|
|
280
|
+
/** First hour shown (0–23). Default 0. */
|
|
281
|
+
minHour?: number;
|
|
282
|
+
/** Last hour shown, exclusive (1–24). Default 24. */
|
|
283
|
+
maxHour?: number;
|
|
284
|
+
/** Hide the left hour-axis column (lines stay, labels/gutter go). Default false. */
|
|
285
|
+
hideHours?: boolean;
|
|
286
|
+
/** Show the ISO week number in the header gutter. Default false. */
|
|
287
|
+
showWeekNumber?: boolean;
|
|
288
|
+
/** Prefix for the week number, e.g. "W" → "W28". Default "W". */
|
|
289
|
+
weekNumberPrefix?: string;
|
|
323
290
|
/** Shade the hours outside business hours; `null` shades the whole day. */
|
|
324
291
|
businessHours?: BusinessHours$1;
|
|
325
292
|
/** Show the current-time indicator on today's column (default true). */
|
|
@@ -343,6 +310,14 @@ interface TimeGridProps<T = unknown> extends SlotStyleProps<TimeGridSlot> {
|
|
|
343
310
|
eventAccessibilityLabel?: EventAccessibilityLabeler$1<T>;
|
|
344
311
|
/** Replace the hour-axis label. Receives the hour (0-23) and the `ampm` flag. */
|
|
345
312
|
hourComponent?: (hour: number, ampm: boolean) => ReactNode;
|
|
313
|
+
/**
|
|
314
|
+
* Add arrow-key navigation between events. Up/Down move between a day's events by
|
|
315
|
+
* time, Left/Right jump to the nearest event in the adjacent day, Home/End go to
|
|
316
|
+
* the day's first/last event; Enter/Space activate. Additive: every event stays
|
|
317
|
+
* individually tabbable (so screen-reader users keep full access), so this is a
|
|
318
|
+
* convenience for sighted keyboard users. Default false.
|
|
319
|
+
*/
|
|
320
|
+
keyboardEventNavigation?: boolean;
|
|
346
321
|
/** Tap an event. */
|
|
347
322
|
onPressEvent?: (event: CalendarEvent$1<T>) => void;
|
|
348
323
|
/** Tap a day's column header. */
|
|
@@ -374,41 +349,7 @@ interface TimeGridProps<T = unknown> extends SlotStyleProps<TimeGridSlot> {
|
|
|
374
349
|
* <TimeGrid mode="week" date={new Date()} events={events} />
|
|
375
350
|
* ```
|
|
376
351
|
*/
|
|
377
|
-
declare function TimeGrid<T = unknown>({
|
|
378
|
-
date,
|
|
379
|
-
events,
|
|
380
|
-
mode,
|
|
381
|
-
numberOfDays,
|
|
382
|
-
weekStartsOn,
|
|
383
|
-
weekdayFormat,
|
|
384
|
-
hourHeight: initialHourHeight,
|
|
385
|
-
scrollOffsetMinutes,
|
|
386
|
-
zoomable,
|
|
387
|
-
minHourHeight,
|
|
388
|
-
maxHourHeight,
|
|
389
|
-
dragStepMinutes,
|
|
390
|
-
ampm,
|
|
391
|
-
timeslots,
|
|
392
|
-
businessHours,
|
|
393
|
-
showNowIndicator,
|
|
394
|
-
showAllDayEventCell,
|
|
395
|
-
locale,
|
|
396
|
-
theme: themeOverrides,
|
|
397
|
-
height,
|
|
398
|
-
renderEvent,
|
|
399
|
-
eventAccessibilityLabel,
|
|
400
|
-
hourComponent,
|
|
401
|
-
onPressEvent,
|
|
402
|
-
onPressDateHeader,
|
|
403
|
-
onPressCell,
|
|
404
|
-
onCreateEvent,
|
|
405
|
-
onDragStart,
|
|
406
|
-
onDragEvent,
|
|
407
|
-
className,
|
|
408
|
-
style,
|
|
409
|
-
classNames,
|
|
410
|
-
styles
|
|
411
|
-
}: TimeGridProps<T>): ReactElement;
|
|
352
|
+
declare function TimeGrid<T = unknown>({ date, events, mode, numberOfDays, weekStartsOn, weekdayFormat, hourHeight: initialHourHeight, scrollOffsetMinutes, zoomable, minHourHeight, maxHourHeight, dragStepMinutes, ampm, timeslots, minHour, maxHour, hideHours, showWeekNumber, weekNumberPrefix, keyboardEventNavigation, businessHours, showNowIndicator, showAllDayEventCell, locale, theme: themeOverrides, height, renderEvent, eventAccessibilityLabel, hourComponent, onPressEvent, onPressDateHeader, onPressCell, onCreateEvent, onDragStart, onDragEvent, className, style, classNames, styles }: TimeGridProps<T>): ReactElement;
|
|
412
353
|
//#endregion
|
|
413
354
|
//#region src/Calendar.d.ts
|
|
414
355
|
/**
|
|
@@ -426,6 +367,13 @@ interface CalendarProps<T = unknown> extends DateSelectionConstraints$1, SlotSty
|
|
|
426
367
|
mode?: "month" | "schedule" | TimeGridMode$1;
|
|
427
368
|
/** Controlled anchor date. Change it (e.g. from your own header) to navigate. */
|
|
428
369
|
date: Date;
|
|
370
|
+
/**
|
|
371
|
+
* Fires with the next/previous period's date when the user pages the focused
|
|
372
|
+
* calendar with **PageDown** / **PageUp** (a month in `month`, a week in
|
|
373
|
+
* `schedule`, else the view's day span). It's controlled, so update `date` in
|
|
374
|
+
* response. Omit it to leave paging to your own controls.
|
|
375
|
+
*/
|
|
376
|
+
onChangeDate?: (date: Date) => void;
|
|
429
377
|
/** Your events. */
|
|
430
378
|
events?: CalendarEvent$1<T>[];
|
|
431
379
|
/** First day of the week. Sunday = 0 (default) … Saturday = 6. */
|
|
@@ -434,6 +382,12 @@ interface CalendarProps<T = unknown> extends DateSelectionConstraints$1, SlotSty
|
|
|
434
382
|
numberOfDays?: number;
|
|
435
383
|
/** date-fns locale for titles, headers, and time labels. */
|
|
436
384
|
locale?: Locale;
|
|
385
|
+
/**
|
|
386
|
+
* Display events in this IANA time zone (e.g. `"America/New_York"`), DST-correct
|
|
387
|
+
* and independent of the device zone. Display-only: it shifts the wall-clock the
|
|
388
|
+
* grid lays out from, it doesn't change your `Date`s. Uses `eventsInTimeZone`.
|
|
389
|
+
*/
|
|
390
|
+
timeZone?: string;
|
|
437
391
|
/** Theme overrides; falls back to the default light theme. */
|
|
438
392
|
theme?: Partial<DomCalendarTheme>;
|
|
439
393
|
/** Height of the scroll viewport, in px. */
|
|
@@ -458,6 +412,16 @@ interface CalendarProps<T = unknown> extends DateSelectionConstraints$1, SlotSty
|
|
|
458
412
|
scrollOffsetMinutes?: number;
|
|
459
413
|
/** Sub-divisions per hour for the grid lines. */
|
|
460
414
|
timeslots?: number;
|
|
415
|
+
/** First hour shown (0–23). Default 0. */
|
|
416
|
+
minHour?: number;
|
|
417
|
+
/** Last hour shown, exclusive (1–24). Default 24. */
|
|
418
|
+
maxHour?: number;
|
|
419
|
+
/** Hide the left hour-axis column (lines stay, labels/gutter go). Default false. */
|
|
420
|
+
hideHours?: boolean;
|
|
421
|
+
/** Show the ISO week number in the header gutter. Default false. */
|
|
422
|
+
showWeekNumber?: boolean;
|
|
423
|
+
/** Prefix for the week number, e.g. "W" → "W28". Default "W". */
|
|
424
|
+
weekNumberPrefix?: string;
|
|
461
425
|
/** Shade the hours outside business hours. */
|
|
462
426
|
businessHours?: BusinessHours$1;
|
|
463
427
|
/** Show the current-time indicator (default true). */
|
|
@@ -480,6 +444,11 @@ interface CalendarProps<T = unknown> extends DateSelectionConstraints$1, SlotSty
|
|
|
480
444
|
renderTimeEvent?: DomRenderEvent<T>;
|
|
481
445
|
/** Replace the hour-axis label. Receives the hour (0–23) and the `ampm` flag. */
|
|
482
446
|
hourComponent?: (hour: number, ampm: boolean) => ReactNode;
|
|
447
|
+
/**
|
|
448
|
+
* Add arrow-key navigation between time-grid events (a convenience for sighted
|
|
449
|
+
* keyboard users; every event stays individually tabbable). Time-grid modes only.
|
|
450
|
+
*/
|
|
451
|
+
keyboardEventNavigation?: boolean;
|
|
483
452
|
/** Max chips per day before a "+N more" row. */
|
|
484
453
|
maxVisibleEventCount?: number;
|
|
485
454
|
/** Overflow row template; `{moreCount}` is replaced. */
|
|
@@ -520,52 +489,7 @@ interface CalendarProps<T = unknown> extends DateSelectionConstraints$1, SlotSty
|
|
|
520
489
|
* <Calendar mode="week" date={new Date()} events={events} />
|
|
521
490
|
* ```
|
|
522
491
|
*/
|
|
523
|
-
declare function Calendar<T = unknown>({
|
|
524
|
-
mode,
|
|
525
|
-
date,
|
|
526
|
-
events,
|
|
527
|
-
weekStartsOn,
|
|
528
|
-
numberOfDays,
|
|
529
|
-
locale,
|
|
530
|
-
theme,
|
|
531
|
-
height,
|
|
532
|
-
className,
|
|
533
|
-
style,
|
|
534
|
-
onPressEvent,
|
|
535
|
-
eventAccessibilityLabel,
|
|
536
|
-
ampm,
|
|
537
|
-
hourHeight,
|
|
538
|
-
scrollOffsetMinutes,
|
|
539
|
-
timeslots,
|
|
540
|
-
businessHours,
|
|
541
|
-
showNowIndicator,
|
|
542
|
-
showAllDayEventCell,
|
|
543
|
-
dragStepMinutes,
|
|
544
|
-
onPressCell,
|
|
545
|
-
onCreateEvent,
|
|
546
|
-
onDragStart,
|
|
547
|
-
onDragEvent,
|
|
548
|
-
onPressDateHeader,
|
|
549
|
-
renderTimeEvent,
|
|
550
|
-
hourComponent,
|
|
551
|
-
maxVisibleEventCount,
|
|
552
|
-
moreLabel,
|
|
553
|
-
showAdjacentMonths,
|
|
554
|
-
weekdayFormat,
|
|
555
|
-
fillCellOnSelection,
|
|
556
|
-
selectedRange,
|
|
557
|
-
selectedDates,
|
|
558
|
-
minDate,
|
|
559
|
-
maxDate,
|
|
560
|
-
isDateDisabled,
|
|
561
|
-
keyboardDayNavigation,
|
|
562
|
-
onPressDay,
|
|
563
|
-
onPressMore,
|
|
564
|
-
renderMonthEvent,
|
|
565
|
-
renderScheduleEvent,
|
|
566
|
-
classNames,
|
|
567
|
-
styles
|
|
568
|
-
}: CalendarProps<T>): ReactElement;
|
|
492
|
+
declare function Calendar<T = unknown>({ mode, date, events, onChangeDate, weekStartsOn, numberOfDays, locale, timeZone, theme, height, className, style, onPressEvent, eventAccessibilityLabel, ampm, hourHeight, scrollOffsetMinutes, timeslots, minHour, maxHour, hideHours, showWeekNumber, weekNumberPrefix, businessHours, showNowIndicator, showAllDayEventCell, dragStepMinutes, onPressCell, onCreateEvent, onDragStart, onDragEvent, onPressDateHeader, renderTimeEvent, hourComponent, keyboardEventNavigation, maxVisibleEventCount, moreLabel, showAdjacentMonths, weekdayFormat, fillCellOnSelection, selectedRange, selectedDates, minDate, maxDate, isDateDisabled, keyboardDayNavigation, onPressDay, onPressMore, renderMonthEvent, renderScheduleEvent, classNames, styles }: CalendarProps<T>): ReactElement;
|
|
569
493
|
//#endregion
|
|
570
494
|
//#region src/MonthList.d.ts
|
|
571
495
|
/**
|
|
@@ -634,35 +558,7 @@ interface MonthListProps<T = unknown> extends DateSelectionConstraints$1, SlotSt
|
|
|
634
558
|
* Legend List's DOM renderer and the library's headless grid logic. Selection is
|
|
635
559
|
* controlled, pass `selectedRange` (or `selectedDates`) and handle `onPressDay`.
|
|
636
560
|
*/
|
|
637
|
-
declare function MonthList<T = unknown>({
|
|
638
|
-
date,
|
|
639
|
-
pastMonths,
|
|
640
|
-
futureMonths,
|
|
641
|
-
weekdayFormat,
|
|
642
|
-
weekStartsOn,
|
|
643
|
-
events,
|
|
644
|
-
renderEvent,
|
|
645
|
-
eventAccessibilityLabel,
|
|
646
|
-
maxVisibleEventCount,
|
|
647
|
-
moreLabel,
|
|
648
|
-
onPressEvent,
|
|
649
|
-
onPressMore,
|
|
650
|
-
selectedRange,
|
|
651
|
-
selectedDates,
|
|
652
|
-
fillCellOnSelection,
|
|
653
|
-
locale,
|
|
654
|
-
theme: themeOverrides,
|
|
655
|
-
height,
|
|
656
|
-
minDate,
|
|
657
|
-
maxDate,
|
|
658
|
-
isDateDisabled,
|
|
659
|
-
keyboardDayNavigation,
|
|
660
|
-
onPressDay,
|
|
661
|
-
className,
|
|
662
|
-
style,
|
|
663
|
-
classNames,
|
|
664
|
-
styles
|
|
665
|
-
}: MonthListProps<T>): ReactElement;
|
|
561
|
+
declare function MonthList<T = unknown>({ date, pastMonths, futureMonths, weekdayFormat, weekStartsOn, events, renderEvent, eventAccessibilityLabel, maxVisibleEventCount, moreLabel, onPressEvent, onPressMore, selectedRange, selectedDates, fillCellOnSelection, locale, theme: themeOverrides, height, minDate, maxDate, isDateDisabled, keyboardDayNavigation, onPressDay, className, style, classNames, styles }: MonthListProps<T>): ReactElement;
|
|
666
562
|
//#endregion
|
|
667
563
|
//#region src/DateRangePicker.d.ts
|
|
668
564
|
/** Styleable chrome of the pickers (the calendar's own slots forward through too). */
|
|
@@ -703,23 +599,7 @@ interface DatePickerProps extends PickerBaseProps {
|
|
|
703
599
|
* <DatePicker value={value} onChange={setValue} />
|
|
704
600
|
* ```
|
|
705
601
|
*/
|
|
706
|
-
declare function DatePicker({
|
|
707
|
-
value,
|
|
708
|
-
onChange,
|
|
709
|
-
formatLabel,
|
|
710
|
-
weekStartsOn,
|
|
711
|
-
height,
|
|
712
|
-
placeholder,
|
|
713
|
-
disabled,
|
|
714
|
-
theme: themeOverrides,
|
|
715
|
-
className,
|
|
716
|
-
style,
|
|
717
|
-
classNames,
|
|
718
|
-
styles,
|
|
719
|
-
minDate,
|
|
720
|
-
maxDate,
|
|
721
|
-
isDateDisabled
|
|
722
|
-
}: DatePickerProps): ReactElement;
|
|
602
|
+
declare function DatePicker({ value, onChange, formatLabel, weekStartsOn, height, placeholder, disabled, theme: themeOverrides, className, style, classNames, styles, minDate, maxDate, isDateDisabled }: DatePickerProps): ReactElement;
|
|
723
603
|
/** Props for {@link DateRangePicker}. */
|
|
724
604
|
interface DateRangePickerProps extends PickerBaseProps {
|
|
725
605
|
/** The selected range, or `null`. `end` is `null` while only the start is picked. */
|
|
@@ -740,23 +620,7 @@ interface DateRangePickerProps extends PickerBaseProps {
|
|
|
740
620
|
* <DateRangePicker value={range} onChange={setRange} />
|
|
741
621
|
* ```
|
|
742
622
|
*/
|
|
743
|
-
declare function DateRangePicker({
|
|
744
|
-
value,
|
|
745
|
-
onChange,
|
|
746
|
-
formatLabel,
|
|
747
|
-
weekStartsOn,
|
|
748
|
-
height,
|
|
749
|
-
placeholder,
|
|
750
|
-
disabled,
|
|
751
|
-
theme: themeOverrides,
|
|
752
|
-
className,
|
|
753
|
-
style,
|
|
754
|
-
classNames,
|
|
755
|
-
styles,
|
|
756
|
-
minDate,
|
|
757
|
-
maxDate,
|
|
758
|
-
isDateDisabled
|
|
759
|
-
}: DateRangePickerProps): ReactElement;
|
|
623
|
+
declare function DateRangePicker({ value, onChange, formatLabel, weekStartsOn, height, placeholder, disabled, theme: themeOverrides, className, style, classNames, styles, minDate, maxDate, isDateDisabled }: DateRangePickerProps): ReactElement;
|
|
760
624
|
//#endregion
|
|
761
625
|
//#region src/ResourceTimeline.d.ts
|
|
762
626
|
/**
|
|
@@ -774,15 +638,27 @@ interface Resource {
|
|
|
774
638
|
/** Props passed to a custom resource-timeline event renderer. */
|
|
775
639
|
interface ResourceEventArgs<T = unknown> {
|
|
776
640
|
event: CalendarEvent$1<T>;
|
|
777
|
-
/**
|
|
641
|
+
/**
|
|
642
|
+
* Pixel width of the event bar. In the vertical orientation the columns flex
|
|
643
|
+
* to the container, so this is 0 there; size against `height` instead.
|
|
644
|
+
*/
|
|
778
645
|
width: number;
|
|
646
|
+
/** Pixel height of the event bar; set in the vertical orientation. */
|
|
647
|
+
height?: number;
|
|
779
648
|
onPress: () => void;
|
|
780
649
|
}
|
|
781
650
|
/** Props for {@link ResourceTimeline}. */
|
|
782
651
|
interface ResourceTimelineProps<T = unknown> extends SlotStyleProps<ResourceTimelineSlot> {
|
|
783
|
-
/** The day to lay out along the
|
|
652
|
+
/** The day to lay out along the time axis. */
|
|
784
653
|
date: Date;
|
|
785
|
-
/**
|
|
654
|
+
/**
|
|
655
|
+
* Lay the day out along the horizontal axis with resources as rows (the
|
|
656
|
+
* default), or down the vertical axis with resources as columns, like the
|
|
657
|
+
* time grid. Vertical reads better on narrow screens: the columns share the
|
|
658
|
+
* width instead of the axis scrolling sideways.
|
|
659
|
+
*/
|
|
660
|
+
orientation?: "horizontal" | "vertical";
|
|
661
|
+
/** The resource lanes: rows when horizontal, columns when vertical. */
|
|
786
662
|
resources: Resource[];
|
|
787
663
|
/** Events; each is placed in the row named by `resourceId(event)`. */
|
|
788
664
|
events: CalendarEvent$1<T>[];
|
|
@@ -792,11 +668,13 @@ interface ResourceTimelineProps<T = unknown> extends SlotStyleProps<ResourceTime
|
|
|
792
668
|
startHour?: number;
|
|
793
669
|
/** Last hour shown, exclusive (default 24). */
|
|
794
670
|
endHour?: number;
|
|
795
|
-
/** Pixels per hour along the axis (default 80). */
|
|
671
|
+
/** Pixels per hour along the horizontal axis (default 80). Horizontal only. */
|
|
796
672
|
hourWidth?: number;
|
|
797
|
-
/**
|
|
673
|
+
/** Pixels per hour down the vertical axis (default 48). Vertical only. */
|
|
674
|
+
hourHeight?: number;
|
|
675
|
+
/** Height of each resource row in px (default 56). Horizontal only. */
|
|
798
676
|
rowHeight?: number;
|
|
799
|
-
/** Width of the left resource-label column in px (default 140). */
|
|
677
|
+
/** Width of the left resource-label column in px (default 140). Horizontal only. */
|
|
800
678
|
labelWidth?: number;
|
|
801
679
|
/** 12-hour AM/PM axis labels (default false). */
|
|
802
680
|
ampm?: boolean;
|
|
@@ -834,26 +712,6 @@ interface ResourceTimelineProps<T = unknown> extends SlotStyleProps<ResourceTime
|
|
|
834
712
|
* />
|
|
835
713
|
* ```
|
|
836
714
|
*/
|
|
837
|
-
declare function ResourceTimeline<T = unknown>({
|
|
838
|
-
date,
|
|
839
|
-
resources,
|
|
840
|
-
events,
|
|
841
|
-
resourceId,
|
|
842
|
-
startHour,
|
|
843
|
-
endHour,
|
|
844
|
-
hourWidth,
|
|
845
|
-
rowHeight,
|
|
846
|
-
labelWidth,
|
|
847
|
-
ampm,
|
|
848
|
-
theme: themeOverrides,
|
|
849
|
-
renderEvent,
|
|
850
|
-
onPressEvent,
|
|
851
|
-
onDragEvent,
|
|
852
|
-
dragStepMinutes,
|
|
853
|
-
className,
|
|
854
|
-
style,
|
|
855
|
-
classNames,
|
|
856
|
-
styles
|
|
857
|
-
}: ResourceTimelineProps<T>): ReactElement;
|
|
715
|
+
declare function ResourceTimeline<T = unknown>({ date, orientation, resources, events, resourceId, startHour, endHour, hourWidth, hourHeight, rowHeight, labelWidth, ampm, theme: themeOverrides, renderEvent, onPressEvent, onDragEvent, dragStepMinutes, className, style, classNames, styles }: ResourceTimelineProps<T>): ReactElement;
|
|
858
716
|
//#endregion
|
|
859
717
|
export { Agenda, type AgendaProps, type AgendaSlot, type BusinessHours, Calendar, type CalendarEvent, type CalendarMode, type CalendarProps, type CalendarSlot, DatePicker, type DatePickerProps, type DatePickerSlot, type DateRange, DateRangePicker, type DateRangePickerProps, type DateSelectionConstraints, type DaySelectionState, type DomAgendaEvent, type DomAgendaEventArgs, type DomCalendarTheme, type DomMonthEvent, type DomMonthEventArgs, type DomRenderEvent, type DomRenderEventArgs, type EventAccessibilityLabelContext, type EventAccessibilityLabeler, type ICalEvent, type ICalendarEvent, type MonthGrid, type MonthGridDay, type MonthGridWeek, type MonthGridWeekday, MonthList, type MonthListProps, type MonthListSlot, MonthView, type MonthViewProps, type MonthViewSlot, type PositionedEvent, type RecurrenceFrequency, type RecurrenceRule, type ResolvedSlot, type Resource, type ResourceEventArgs, ResourceTimeline, type ResourceTimelineProps, type ResourceTimelineSlot, type SlotDefault, type SlotStyleProps, TimeGrid, type TimeGridMode, type TimeGridProps, type TimeGridSlot, type ToICalendarOptions, type UseDateRangeOptions, type UseMonthGridOptions, type WeekStartsOn, type WeekdayFormat, buildMonthGrid, darkDomTheme, daySelectionState, defaultDomTheme, expandRecurringEvents, getViewDays, isAllDayEvent, isDateSelectable, isRangeEndpoint, isWithinDateRange, layoutDayEvents, mergeDomTheme, nextDateRange, parseICalendar, toICalendar, useDateRange, useMonthGrid, weekdayFormatToken };
|