@dayflow/core 3.4.3 → 3.5.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.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  import * as preact from 'preact';
2
2
  import { ComponentChildren, AnyComponent, RefObject, JSX } from 'preact';
3
3
  import { Temporal } from 'temporal-polyfill';
4
- import * as preact_compat from 'preact/compat';
5
- export { createPortal } from 'preact/compat';
4
+ export { ContextMenu, ContextMenuColorPicker, ContextMenuItem, ContextMenuLabel, ContextMenuSeparator } from '@dayflow/ui-context-menu';
6
5
  import { BlossomColorPickerOptions } from '@dayflow/blossom-color-picker';
6
+ export { RangePicker as DayflowRangePicker, RangePickerProps, ZonedRange } from '@dayflow/ui-range-picker';
7
+ export { createPortal } from 'preact/compat';
7
8
 
8
9
  type ViewSwitcherMode = 'buttons' | 'select';
9
10
 
@@ -219,6 +220,10 @@ interface Event {
219
220
  allDay?: boolean;
220
221
  icon?: boolean | ComponentChildren;
221
222
  calendarId?: string;
223
+ /** Multi-calendar support: list of calendar IDs this event belongs to.
224
+ * When present, takes precedence over calendarId for visibility and color rendering.
225
+ * The event is visible as long as at least one listed calendar is visible. */
226
+ calendarIds?: string[];
222
227
  meta?: Record<string, unknown>;
223
228
  day?: number;
224
229
  }
@@ -522,10 +527,6 @@ interface CalendarCallbacks {
522
527
  onEventDelete?: (eventId: string) => void | Promise<void>;
523
528
  onDateChange?: (date: Date) => void | Promise<void>;
524
529
  onRender?: () => void | Promise<void>;
525
- /**
526
- * @deprecated This method is retained for backward compatibility and will be removed in future releases. Use ``onVisibleRangeChange`` instead.
527
- */
528
- onVisibleMonthChange?: (date: Date) => void | Promise<void>;
529
530
  onVisibleRangeChange?: (start: Date, end: Date, reason: RangeChangeReason) => void | Promise<void>;
530
531
  onCalendarUpdate?: (calendar: CalendarType) => void | Promise<void>;
531
532
  onCalendarCreate?: (calendar: CalendarType) => void | Promise<void>;
@@ -535,6 +536,11 @@ interface CalendarCallbacks {
535
536
  onEventDoubleClick?: (event: Event, e: MouseEvent) => boolean | undefined | Promise<boolean | undefined>;
536
537
  onMoreEventsClick?: (date: Date) => void | Promise<void>;
537
538
  onDismissUI?: () => void | Promise<void>;
539
+ /**
540
+ * Toggle event detail panel or dialog.
541
+ * If eventId is null, closes the detail UI.
542
+ */
543
+ onEventDetailToggle?: (eventId: string | null) => void;
538
544
  }
539
545
  interface CalendarHeaderProps {
540
546
  calendar: ICalendarApp;
@@ -669,6 +675,7 @@ interface ICalendarApp {
669
675
  onEventClick: (event: Event) => void;
670
676
  onEventDoubleClick: (event: Event, e: MouseEvent) => boolean | undefined | Promise<boolean | undefined>;
671
677
  onMoreEventsClick: (date: Date) => void;
678
+ onEventDetailToggle: (eventId: string | null) => void;
672
679
  highlightEvent: (eventId: string | null) => void;
673
680
  selectEvent: (eventId: string | null) => void;
674
681
  getCalendars: () => CalendarType[];
@@ -836,6 +843,7 @@ interface DragRef {
836
843
  lastClientY: number;
837
844
  allDay: boolean;
838
845
  eventDate?: Date;
846
+ calendarIds?: string[];
839
847
  }
840
848
  /**
841
849
  * Event detail position interface
@@ -859,6 +867,12 @@ interface DragIndicatorProps {
859
867
  getDynamicPadding: (drag: DragRef) => string;
860
868
  locale?: string;
861
869
  isMobile?: boolean;
870
+ /** True when the indicator container has a light background (e.g. diagonal multi-calendar pattern).
871
+ * Renderers should use dark text instead of white when this is set. */
872
+ isLightBackground?: boolean;
873
+ /** Pre-computed line colors for all calendars on this event.
874
+ * Single-element array for single-calendar; multi-element for multi-calendar gradient bar. */
875
+ calendarLineColors?: string[];
862
876
  }
863
877
  interface DragIndicatorRenderer {
864
878
  renderAllDayContent: (props: DragIndicatorProps) => ComponentChildren;
@@ -895,6 +909,7 @@ interface UnifiedDragRef extends DragRef {
895
909
  initialIndicatorHeight?: number;
896
910
  indicatorContainer?: HTMLElement | null;
897
911
  calendarId?: string;
912
+ calendarIds?: string[];
898
913
  title?: string;
899
914
  }
900
915
  interface useDragProps extends Partial<DragConfig> {
@@ -1112,7 +1127,7 @@ interface EventDetailPanelProps {
1112
1127
  /** Whether the event is all-day */
1113
1128
  isAllDay: boolean;
1114
1129
  /** Event visibility state */
1115
- eventVisibility: 'visible' | 'sticky-top' | 'sticky-bottom' | 'sticky-left' | 'sticky-right';
1130
+ eventVisibility: 'standard' | 'sticky-top' | 'sticky-bottom' | 'sticky-left' | 'sticky-right';
1116
1131
  /** Calendar container reference */
1117
1132
  calendarRef: RefObject<HTMLDivElement>;
1118
1133
  /** Selected event element reference */
@@ -1540,6 +1555,51 @@ interface MobileEventProps {
1540
1555
  timeFormat?: '12h' | '24h';
1541
1556
  }
1542
1557
 
1558
+ type CalendarSearchEvent = Event & {
1559
+ color?: string;
1560
+ [key: string]: unknown;
1561
+ };
1562
+ interface CalendarSearchProps {
1563
+ /**
1564
+ * Debounce delay in ms
1565
+ * @default 300
1566
+ */
1567
+ debounceDelay?: number;
1568
+ /**
1569
+ * Async search method
1570
+ */
1571
+ onSearch?: (keyword: string) => Promise<CalendarSearchEvent[]>;
1572
+ /**
1573
+ * Custom search logic (takes over completely)
1574
+ */
1575
+ customSearch?: (params: {
1576
+ keyword: string;
1577
+ events: CalendarSearchEvent[];
1578
+ }) => CalendarSearchEvent[];
1579
+ /**
1580
+ * Search state callback
1581
+ */
1582
+ onSearchStateChange?: (state: {
1583
+ keyword: string;
1584
+ loading: boolean;
1585
+ results: CalendarSearchEvent[];
1586
+ }) => void;
1587
+ /**
1588
+ * Empty result text
1589
+ */
1590
+ emptyText?: string | Record<string, string>;
1591
+ /**
1592
+ * Custom handler for search result clicks
1593
+ */
1594
+ onResultClick?: (params: {
1595
+ event: CalendarSearchEvent;
1596
+ app: ICalendarApp;
1597
+ source: 'desktop' | 'mobile';
1598
+ defaultAction: () => void;
1599
+ closeSearch: () => void;
1600
+ }) => void | Promise<void>;
1601
+ }
1602
+
1543
1603
  declare class CalendarApp implements ICalendarApp {
1544
1604
  state: CalendarAppState;
1545
1605
  private callbacks;
@@ -1587,6 +1647,7 @@ declare class CalendarApp implements ICalendarApp {
1587
1647
  onEventClick: (event: Event) => void;
1588
1648
  onEventDoubleClick: (event: Event, e: MouseEvent) => boolean | undefined | Promise<boolean | undefined>;
1589
1649
  onMoreEventsClick: (date: Date) => void;
1650
+ onEventDetailToggle: (eventId: string | null) => void;
1590
1651
  highlightEvent: (eventId: string | null) => void;
1591
1652
  selectEvent: (eventId: string | null) => void;
1592
1653
  dismissUI: () => void;
@@ -1770,6 +1831,48 @@ declare const getSelectedBgColor: (calendarIdOrColor: string, registry?: Calenda
1770
1831
  * Now uses the calendar registry for color resolution
1771
1832
  */
1772
1833
  declare const getLineColor: (calendarIdOrColor: string, registry?: CalendarRegistry) => string;
1834
+ /**
1835
+ * Resolve the primary calendar ID for an event.
1836
+ * Uses calendarIds[0] when available, otherwise falls back to calendarId.
1837
+ */
1838
+ declare const getPrimaryCalendarId: (event: {
1839
+ calendarId?: string;
1840
+ calendarIds?: string[];
1841
+ }) => string;
1842
+ /**
1843
+ * Resolve all line colors for an event's calendar(s).
1844
+ * Returns an array with one entry per calendar ID.
1845
+ */
1846
+ declare const getCalendarLineColors: (event: {
1847
+ calendarId?: string;
1848
+ calendarIds?: string[];
1849
+ }, registry?: CalendarRegistry) => string[];
1850
+ /**
1851
+ * Build a CSS gradient string for the multi-calendar color bar.
1852
+ * For a single color it returns the plain color value (no gradient).
1853
+ * For multiple colors it builds an equal-segment `linear-gradient(to bottom, ...)`.
1854
+ */
1855
+ declare const buildColorBarGradient: (colors: string[]) => string;
1856
+ /**
1857
+ * Build a 45° repeating stripe for narrow multi-calendar color bars.
1858
+ * Uses the same angle and stripe width as the event background pattern, but
1859
+ * accepts line colors so the left bar remains stronger than the event fill.
1860
+ */
1861
+ declare const buildDiagonalColorBarGradient: (colors: string[], stripeWidth?: number) => string;
1862
+ /**
1863
+ * Resolve all eventColor values for an event's calendar(s).
1864
+ * Used to build the diagonal stripe background.
1865
+ */
1866
+ declare const getCalendarEventBgColors: (event: {
1867
+ calendarId?: string;
1868
+ calendarIds?: string[];
1869
+ }, registry?: CalendarRegistry) => string[];
1870
+ /**
1871
+ * Build a 45° repeating diagonal stripe CSS background for multi-calendar events.
1872
+ * For a single color returns the plain color value (no pattern).
1873
+ * Each stripe is `stripeWidth` px wide (default 6px).
1874
+ */
1875
+ declare const buildDiagonalPatternBackground: (colors: string[], stripeWidth?: number) => string;
1773
1876
 
1774
1877
  /**
1775
1878
  * Time Utilities
@@ -2286,14 +2389,6 @@ declare function now(timeZone?: string): Temporal.ZonedDateTime;
2286
2389
  */
2287
2390
  declare function today(timeZone?: string): Temporal.PlainDate;
2288
2391
 
2289
- declare const pad: (input: number) => string;
2290
- declare const mergeFormatTemplate: (dateFormat: string, timeFormat: string) => string;
2291
- declare const buildParseRegExp: (template: string) => RegExp;
2292
- declare const parseTemporalString: (input: string, regExp: RegExp, reference: Temporal.ZonedDateTime, zoneId: string) => Temporal.ZonedDateTime | null;
2293
- declare const getZoneId: (value: Temporal.ZonedDateTime) => string;
2294
- declare const normalizeToZoned: (input: Temporal.PlainDate | Temporal.PlainDateTime | Temporal.ZonedDateTime, fallbackZone?: string, fallbackTemporal?: Temporal.ZonedDateTime) => Temporal.ZonedDateTime;
2295
- declare const formatTemporal: (value: Temporal.ZonedDateTime, format: string, timeFormat: string) => string;
2296
-
2297
2392
  /**
2298
2393
  * Style Utility Functions
2299
2394
  *
@@ -2330,97 +2425,8 @@ declare function normalizeCssWidth(width?: number | string, defaultWidth?: strin
2330
2425
  */
2331
2426
  declare function scrollbarTakesSpace(): boolean;
2332
2427
 
2333
- /**
2334
- * Theme Utility Functions
2335
- *
2336
- * This module provides utility functions for working with theme-aware class names.
2337
- */
2338
- /**
2339
- * Combine class names with theme-specific variants
2340
- *
2341
- * @param base - Base class names (applied in both themes)
2342
- * @param light - Light mode specific class names
2343
- * @param dark - Dark mode specific class names (will be prefixed with 'dark:')
2344
- * @returns Combined class name string
2345
- *
2346
- * @example
2347
- * ```ts
2348
- * themeCn('p-4 rounded', 'bg-white text-black', 'bg-gray-900 text-white')
2349
- * // Returns: 'p-4 rounded bg-white text-black dark:bg-gray-900 dark:text-white'
2350
- * ```
2351
- */
2352
- declare const themeCn: (base: string, light: string, dark: string) => string;
2353
- /**
2354
- * Common theme class combinations
2355
- *
2356
- * Pre-defined class combinations for common UI elements.
2357
- * Use these for consistency across the application.
2358
- */
2359
- declare const themeClasses: {
2360
- container: string;
2361
- card: string;
2362
- sidebar: string;
2363
- text: string;
2364
- textMuted: string;
2365
- textSubtle: string;
2366
- textEmphasis: string;
2367
- border: string;
2368
- borderLight: string;
2369
- borderStrong: string;
2370
- bgPrimary: string;
2371
- bgSecondary: string;
2372
- bgTertiary: string;
2373
- bgMuted: string;
2374
- hover: string;
2375
- hoverSubtle: string;
2376
- active: string;
2377
- focus: string;
2378
- input: string;
2379
- inputFocus: string;
2380
- buttonPrimary: string;
2381
- buttonSecondary: string;
2382
- buttonDanger: string;
2383
- buttonSuccess: string;
2384
- shadow: string;
2385
- shadowMd: string;
2386
- shadowLg: string;
2387
- divider: string;
2388
- };
2389
- /**
2390
- * Conditional theme class
2391
- *
2392
- * Returns different class names based on a condition.
2393
- *
2394
- * @param condition - Condition to evaluate
2395
- * @param whenTrue - Class names when condition is true
2396
- * @param whenFalse - Class names when condition is false
2397
- * @returns Class name string based on condition
2398
- *
2399
- * @example
2400
- * ```ts
2401
- * conditionalTheme(isActive, 'bg-blue-500 dark:bg-blue-600', 'bg-gray-200 dark:bg-gray-700')
2402
- * ```
2403
- */
2404
- declare const conditionalTheme: (condition: boolean, whenTrue: string, whenFalse: string) => string;
2405
- /**
2406
- * Merge multiple class names, filtering out falsy values
2407
- *
2408
- * @param classes - Array of class names or falsy values
2409
- * @returns Merged class name string
2410
- *
2411
- * @example
2412
- * ```ts
2413
- * mergeClasses('p-4', isActive && 'bg-blue-500', 'rounded')
2414
- * // Returns: 'p-4 bg-blue-500 rounded' (if isActive is true)
2415
- * ```
2416
- */
2417
- declare const mergeClasses: (...classes: (string | undefined | null | false)[]) => string;
2418
2428
  /**
2419
2429
  * Resolve the currently applied theme on the document.
2420
- *
2421
- * This inspects common override hooks (like `data-dayflow-theme-override` or
2422
- * manual `dark`/`light` classes) so host applications can force a theme even
2423
- * when DayFlow is configured in `auto` mode.
2424
2430
  */
2425
2431
  declare const resolveAppliedTheme: (effectiveTheme: "light" | "dark") => "light" | "dark";
2426
2432
 
@@ -2548,29 +2554,6 @@ declare function createAllDayEvent(id: string, title: string, date: Date, option
2548
2554
  * Quick create timed event
2549
2555
  */
2550
2556
  declare function createTimedEvent(id: string, title: string, start: Date, end: Date, options?: Omit<CreateEventParams, 'id' | 'title' | 'start' | 'end'>): Event;
2551
- /**
2552
- * Convert legacy Date-based event to Temporal-based event
2553
- * @deprecated Use createEvent() directly with Date objects instead
2554
- */
2555
- declare function convertDateEvent(id: string, title: string, startDate: Date, endDate: Date, allDay?: boolean, options?: {
2556
- description?: string;
2557
- calendarId?: string;
2558
- meta?: Record<string, unknown>;
2559
- }): Event;
2560
- /**
2561
- * Convert legacy Date-based event to timezone-aware event
2562
- * @deprecated Use createTimezoneEvent() directly with Date objects instead
2563
- */
2564
- declare function convertDateEventWithTimeZone(id: string, title: string, startDate: Date, endDate: Date, timeZone: string, options?: {
2565
- description?: string;
2566
- calendarId?: string;
2567
- meta?: Record<string, unknown>;
2568
- }): Event;
2569
-
2570
- type CalendarSearchEvent = Event & {
2571
- color?: string;
2572
- [key: string]: unknown;
2573
- };
2574
2557
 
2575
2558
  /**
2576
2559
  * Helper to get date object from event start
@@ -2585,16 +2568,16 @@ declare const getDateObj: (dateInput: unknown) => Date;
2585
2568
  */
2586
2569
  declare const normalizeDate: (date: Date) => Date;
2587
2570
  /**
2588
- * Helper to get header text and color for a date group in search results
2571
+ * Helper to get header text and semantic tone for a date group in search results
2589
2572
  * @param groupDate The date of the group
2590
2573
  * @param today Reference today date (normalized)
2591
2574
  * @param locale Locale string
2592
2575
  * @param t Translation function
2593
- * @returns Object with title and colorClass
2576
+ * @returns Object with title and tone
2594
2577
  */
2595
2578
  declare const getSearchHeaderInfo: (groupDate: Date, today: Date, locale: string, t: (key: TranslationKey) => string) => {
2596
2579
  title: string;
2597
- colorClass: string;
2580
+ tone: "default" | "today" | "upcoming";
2598
2581
  };
2599
2582
  /**
2600
2583
  * Helper to group search results by date
@@ -2972,33 +2955,6 @@ type SidebarBridgeFn = (app: ICalendarApp) => SidebarBridgeReturn;
2972
2955
  declare function registerSidebarImplementation(fn: SidebarBridgeFn): void;
2973
2956
  declare function useSidebarBridge(app: ICalendarApp): SidebarBridgeReturn;
2974
2957
 
2975
- interface ContextMenuProps {
2976
- x: number;
2977
- y: number;
2978
- onClose: () => void;
2979
- children: ComponentChildren;
2980
- className?: string;
2981
- }
2982
- declare const ContextMenu: preact.FunctionalComponent<preact_compat.PropsWithoutRef<ContextMenuProps> & {
2983
- ref?: preact.Ref<HTMLDivElement> | undefined;
2984
- }>;
2985
- declare const ContextMenuItem: ({ onClick, children, icon, danger, disabled, }: {
2986
- onClick: () => void;
2987
- children: ComponentChildren;
2988
- icon?: ComponentChildren;
2989
- danger?: boolean;
2990
- disabled?: boolean;
2991
- }) => preact.JSX.Element;
2992
- declare const ContextMenuSeparator: () => preact.JSX.Element;
2993
- declare const ContextMenuLabel: ({ children, }: {
2994
- children: ComponentChildren;
2995
- }) => preact.JSX.Element;
2996
- declare const ContextMenuColorPicker: ({ selectedColor, onSelect, onCustomColor, }: {
2997
- selectedColor?: string;
2998
- onSelect: (color: string) => void;
2999
- onCustomColor?: () => void;
3000
- }) => preact.JSX.Element;
3001
-
3002
2958
  interface GridContextMenuProps {
3003
2959
  x: number;
3004
2960
  y: number;
@@ -3047,30 +3003,6 @@ interface DefaultColorPickerProps {
3047
3003
  }
3048
3004
  declare const DefaultColorPicker: ({ color, onChange, onClose, }: DefaultColorPickerProps) => preact.JSX.Element;
3049
3005
 
3050
- type ZonedRange = [Temporal.ZonedDateTime, Temporal.ZonedDateTime];
3051
- interface RangePickerProps {
3052
- value: [
3053
- Temporal.PlainDate | Temporal.PlainDateTime | Temporal.ZonedDateTime,
3054
- Temporal.PlainDate | Temporal.PlainDateTime | Temporal.ZonedDateTime
3055
- ];
3056
- format?: string;
3057
- showTimeFormat?: string;
3058
- showTime?: boolean | {
3059
- format?: string;
3060
- };
3061
- onChange?: (value: ZonedRange, dateString: [string, string]) => void;
3062
- onOk?: (value: ZonedRange, dateString: [string, string]) => void;
3063
- timeZone?: string;
3064
- disabled?: boolean;
3065
- placement?: 'bottomLeft' | 'bottomRight' | 'topLeft' | 'topRight';
3066
- autoAdjustOverflow?: boolean;
3067
- getPopupContainer?: () => HTMLElement;
3068
- matchTriggerWidth?: boolean;
3069
- locale?: string | Locale;
3070
- }
3071
-
3072
- declare const RangePicker: ({ value, format, showTimeFormat, showTime, onChange, onOk, timeZone, disabled, placement, autoAdjustOverflow, getPopupContainer, matchTriggerWidth, locale, }: RangePickerProps) => JSX.Element;
3073
-
3074
3006
  interface MiniCalendarProps {
3075
3007
  visibleMonth: Date;
3076
3008
  currentDate: Date;
@@ -3100,7 +3032,6 @@ interface DefaultEventDetailDialogProps extends EventDetailDialogProps {
3100
3032
  }
3101
3033
  /**
3102
3034
  * Default event detail dialog component (Dialog mode)
3103
- * Content is consistent with DefaultEventDetailPanel, but displayed using Dialog/Modal
3104
3035
  */
3105
3036
  declare const DefaultEventDetailDialog: ({ event, isOpen, onEventUpdate, onEventDelete, onClose, app, }: DefaultEventDetailDialogProps) => preact.VNode<any> | null;
3106
3037
 
@@ -3211,6 +3142,20 @@ interface CalendarEventProps {
3211
3142
 
3212
3143
  declare const CalendarEvent: ({ event, layout, isAllDay, allDayHeight, calendarRef, isBeingDragged, isBeingResized, viewType, isMultiDay, segment, yearSegment, columnsPerRow, segmentIndex, hourHeight, firstHour, selectedEventId, detailPanelEventId, onMoveStart, onResizeStart, onEventUpdate, onEventDelete, newlyCreatedEventId, onDetailPanelOpen, onEventSelect, onEventLongPress, onDetailPanelToggle, customDetailPanelContent, customEventDetailDialog, multiDaySegmentInfo, app, isMobile, isSlidingView, enableTouch, hideTime, timeFormat, styleOverride, className, disableDefaultStyle, renderVisualContent, resizeHandleOrientation, appTimeZone, }: CalendarEventProps) => preact.JSX.Element;
3213
3144
 
3145
+ interface LayoutCalculationParams {
3146
+ containerWidth?: number;
3147
+ viewType?: 'week' | 'day';
3148
+ }
3149
+
3150
+ declare const EventLayoutCalculator: {
3151
+ /**
3152
+ * Calculate layout for all events in a day
3153
+ * @param dayEvents Array of events for the day
3154
+ * @param params Layout calculation parameters
3155
+ */
3156
+ calculateDayEventLayouts(dayEvents: Event[], params?: LayoutCalculationParams): Map<string, EventLayout>;
3157
+ };
3158
+
3214
3159
  interface IconProps {
3215
3160
  className?: string;
3216
3161
  width?: number;
@@ -3231,27 +3176,27 @@ declare const AlertCircle: ({ className, width, height, }: IconProps) => preact.
3231
3176
  /**
3232
3177
  * Cancel button
3233
3178
  */
3234
- declare const cancelButton = "rounded-md bg-background border border-border px-3 py-2 text-xs font-medium text-gray-700 dark:text-gray-300 hover:bg-(--hover)";
3179
+ declare const cancelButton = "df-btn-sm df-btn-sm-ghost";
3235
3180
  /**
3236
3181
  * Calendar picker dropdown (for selecting calendar for an event)
3237
3182
  */
3238
- declare const calendarPickerDropdown = "df-portal bg-white dark:bg-gray-800 rounded-md shadow-lg border border-gray-200 dark:border-gray-700 overflow-hidden transition-all duration-200 origin-top-right df-animate-in df-fade-in df-zoom-in-95";
3183
+ declare const calendarPickerDropdown = "df-portal df-calendar-picker-dropdown df-animate-in df-fade-in df-zoom-in-95";
3239
3184
  /**
3240
3185
  * Sidebar container
3241
3186
  */
3242
- declare const sidebarContainer = "df-sidebar flex h-full flex-col border-r";
3187
+ declare const sidebarContainer = "df-sidebar";
3243
3188
  /**
3244
3189
  * Sidebar header
3245
3190
  */
3246
- declare const sidebarHeader = "df-sidebar-header flex items-center px-2 py-1";
3191
+ declare const sidebarHeader = "df-sidebar-header";
3247
3192
  /**
3248
3193
  * Sidebar header toggle button
3249
3194
  */
3250
- declare const sidebarHeaderToggle = "df-sidebar-header-toggle flex h-8 w-8 items-center justify-center rounded hover:bg-gray-100 dark:hover:bg-slate-800";
3195
+ declare const sidebarHeaderToggle = "df-sidebar-toggle";
3251
3196
  /**
3252
3197
  * Sidebar header title
3253
3198
  */
3254
- declare const sidebarHeaderTitle = "df-sidebar-header-title text-sm font-semibold text-gray-700 dark:text-gray-200";
3199
+ declare const sidebarHeaderTitle = "df-sidebar-header-title";
3255
3200
 
3256
- export { AlertCircle, AudioLines, BlossomColorPicker, CalendarApp, CalendarEvent, CalendarRegistry, CalendarRenderer, Check, ChevronDown, ChevronRight, ChevronsUpDown, ContentSlot, ContextMenu, ContextMenuColorPicker, ContextMenuItem, ContextMenuLabel, ContextMenuSeparator, CreateCalendarDialog, CustomRenderingStore, RangePicker as DayflowRangePicker, DefaultColorPicker, DefaultEventDetailDialog, DefaultEventDetailPanel, EventContextMenu, GridContextMenu, LAYOUT_CONFIG, LOCALES, Loader2, LoadingButton, LocaleContext, LocaleProvider, MiniCalendar, PanelRightClose, PanelRightOpen, Plus, TIME_STEP, TimeZone, VIRTUAL_MONTH_SCROLL_CONFIG, ViewType, WeekDataCache, addDays, buildParseRegExp, calculateDayIndex, calendarPickerDropdown, cancelButton, capitalize, clipboardStore, compareAllDayDisplayPriority, compareViews, conditionalTheme, convertDateEvent, convertDateEventWithTimeZone, convertToDayFlowEvent, createAllDayDisplayComparator, createAllDayEvent, createConfigSyncSnapshot, createDateWithHour, createDayView, createEvent, createEventWithDate, createEventWithPlainDateTime, createEventWithRealDate, createEventWithZonedDateTime, createEvents, createEventsPlugin, createMonthView, createNormalizedCalendarAppConfigGetter, createStandardViews, createTemporalWithHour, createTimedEvent, createTimezoneEvent, createTimezoneEvents, createWeekView, createYearView, dateToPlainDate, dateToPlainDateTime, dateToZonedDateTime, daysBetween, daysDifference, downloadICS, en, escapeICSValue, extractHourFromDate, extractHourFromTemporal, extractVEvents, foldLine, formatDate, formatDateConsistent, formatDateToICSTimestamp, formatEventTimeRange, formatICSDate, formatMonthYear, formatProperty, formatTemporal, formatTime, generateDayData, generateICS, generateSecondaryTimeSlots, generateUniKey, generateVEvent, generateWeekData, generateWeekRange, generateWeeksData, getAllDayEventsForDay, getAllDayRangeMetrics, getCalendarColorsForHex, getCallbackConfigUpdate, getCurrentWeekDates, getDateByDayIndex, getDateObj, getDayIndexByDate, getEndOfDay, getEndOfTemporal, getEventBgColor, getEventEndHour, getEventTextColor, getEventsForDay, getEventsForWeek, getIntlLabel, getLineColor, getMonthLabels, getMonthYearOfWeek, getNextHourRangeInTimeZone, getNowInTimeZone, getPlainDate, getSearchHeaderInfo, getSelectedBgColor, getStartOfDay, getStartOfTemporal, getSyncConfigUpdates, getTestEvents, getTimezoneDisplayLabel, getTodayInTimeZone, getWeekDaysLabels, getWeekNumber, getWeekRange, getZoneId, groupSearchResults, hasEventChanged, importICSFile, isDate, isDeepEqual, isEventDeepEqual, isEventInWeek, isMultiDayEvent, isMultiDayTemporalEvent, isPlainDate, isPlainDateTime, isSameDay, isSamePlainDate, isSameTemporal, isValidLocale, isZonedDateTime, mergeClasses, mergeFormatTemplate, monthNames, normalizeCssWidth, normalizeDate, normalizeLocale, normalizeTimeZoneValue, normalizeToZoned, now, pad, pad2, parseICS, parseICSDate, parseTemporalString, parseVEventLines, pickSyncableConfig, plainDateTimeToDate, plainDateToDate, recalculateEventDays, registerDragImplementation, registerLocale, registerSidebarImplementation, resolveAppliedTheme, restoreTimedDragFromAllDayTransition, restoreVisualEventToCanonical, restoreVisualTimedTemporalToCanonical, roundToTimeStep, scrollbarTakesSpace, setHourInTemporal, shortMonthNames, sidebarContainer, sidebarHeader, sidebarHeaderTitle, sidebarHeaderToggle, sortAllDayByTitle, subscribeCalendar, syncCalendarAppConfig, t, temporalToDate, temporalToVisualDate, temporalToVisualTemporal, themeClasses, themeCn, today, unescapeICSValue, updateEventDateAndDay, updateEventWithRealDate, useDragForView, useLocale, useSidebarBridge, weekDays, weekDaysFullName, zonedDateTimeToDate };
3257
- export type { AllDaySortComparator, BalanceStrategy, BaseViewProps, CalendarAppConfig, CalendarAppConfigSyncSnapshot, CalendarAppState, CalendarCallbacks, CalendarColors, CalendarConfig, CalendarEventProps, CalendarHeaderProps, CalendarPlugin, CalendarType, CalendarView, CalendarViewType, CalendarsConfig, ColorPickerProps, CreateCalendarDialogColorPickerProps, CreateCalendarDialogProps, CreateEventParams, CreateTimezoneEventParams, CustomRendering, DayData, DayViewConfig, DayViewProps, DragConfig, DragHookOptions, DragHookReturn, DragIndicatorProps, DragIndicatorRenderer, DragIntegrationProps, DragPluginConfig, DragRef, DragService, Event, EventChange, EventContentSlotArgs, EventContextMenuSlotArgs, EventDetailContentProps, EventDetailContentRenderer, EventDetailDialogProps, EventDetailDialogRenderer, EventDetailPanelProps, EventDetailPanelRenderer, EventDetailPosition, EventGroup, EventLayout, EventRelations, EventsPluginConfig, EventsService, GridContextMenuSlotArgs, ICSDateParams, ICSExportOptions, ICSImportOptions, ICSImportResult, ICSParseError, ICSVEvent, ICalendarApp, Locale, LocaleCode, LocaleContextValue, LocaleDict, LocaleMessages, LocaleProviderProps, MobileEventProps, MobileEventRenderer, Mode, MonthDragState, MonthEventDragState, MonthScrollConfig, MonthViewConfig, MonthViewProps, NestedLayer, RangeChangeReason, RangePickerProps, ReadOnlyConfig, SidebarBridgeReturn, SidebarHeaderSlotArgs, SpecialLayoutRule, SubscribeResult, SubtreeAnalysis, SupportedLang, SyncableCalendarAppConfig, TComponent, TNode, ThemeColors, ThemeConfig, ThemeMode, TimeZoneValue, TitleBarSlotProps, TransferOperation, TranslationKey, UnifiedDragRef, UseCalendarAppReturn, UseCalendarReturn, UseDragCommonReturn, UseDragHandlersParams, UseDragHandlersReturn, UseDragManagerReturn, UseDragStateReturn, UseMonthDragParams, UseMonthDragReturn, UseVirtualMonthScrollProps, UseVirtualMonthScrollReturn, UseVirtualScrollProps, UseVirtualScrollReturn, UseWeekDayDragParams, UseWeekDayDragReturn, ViewAdapterProps, ViewConfigComparison, ViewFactory, ViewFactoryConfig, VirtualItem, VirtualScrollIntegrationProps, VirtualWeekItem, WeekDayDragState, WeekViewConfig, WeekViewProps, WeeksData, YearViewConfig, YearViewProps, ZonedRange, useDragProps, useDragReturn };
3201
+ export { AlertCircle, AudioLines, BlossomColorPicker, CalendarApp, CalendarEvent, CalendarRegistry, CalendarRenderer, Check, ChevronDown, ChevronRight, ChevronsUpDown, ContentSlot, CreateCalendarDialog, CustomRenderingStore, DefaultColorPicker, DefaultEventDetailDialog, DefaultEventDetailPanel, EventContextMenu, EventLayoutCalculator, GridContextMenu, LAYOUT_CONFIG, LOCALES, Loader2, LoadingButton, LocaleContext, LocaleProvider, MiniCalendar, PanelRightClose, PanelRightOpen, Plus, TIME_STEP, TimeZone, VIRTUAL_MONTH_SCROLL_CONFIG, ViewType, WeekDataCache, addDays, buildColorBarGradient, buildDiagonalColorBarGradient, buildDiagonalPatternBackground, calculateDayIndex, calendarPickerDropdown, cancelButton, capitalize, clipboardStore, compareAllDayDisplayPriority, compareViews, convertToDayFlowEvent, createAllDayDisplayComparator, createAllDayEvent, createConfigSyncSnapshot, createDateWithHour, createDayView, createEvent, createEventWithDate, createEventWithPlainDateTime, createEventWithRealDate, createEventWithZonedDateTime, createEvents, createEventsPlugin, createMonthView, createNormalizedCalendarAppConfigGetter, createStandardViews, createTemporalWithHour, createTimedEvent, createTimezoneEvent, createTimezoneEvents, createWeekView, createYearView, dateToPlainDate, dateToPlainDateTime, dateToZonedDateTime, daysBetween, daysDifference, downloadICS, en, escapeICSValue, extractHourFromDate, extractHourFromTemporal, extractVEvents, foldLine, formatDate, formatDateConsistent, formatDateToICSTimestamp, formatEventTimeRange, formatICSDate, formatMonthYear, formatProperty, formatTime, generateDayData, generateICS, generateSecondaryTimeSlots, generateUniKey, generateVEvent, generateWeekData, generateWeekRange, generateWeeksData, getAllDayEventsForDay, getAllDayRangeMetrics, getCalendarColorsForHex, getCalendarEventBgColors, getCalendarLineColors, getCallbackConfigUpdate, getCurrentWeekDates, getDateByDayIndex, getDateObj, getDayIndexByDate, getEndOfDay, getEndOfTemporal, getEventBgColor, getEventEndHour, getEventTextColor, getEventsForDay, getEventsForWeek, getIntlLabel, getLineColor, getMonthLabels, getMonthYearOfWeek, getNextHourRangeInTimeZone, getNowInTimeZone, getPlainDate, getPrimaryCalendarId, getSearchHeaderInfo, getSelectedBgColor, getStartOfDay, getStartOfTemporal, getSyncConfigUpdates, getTestEvents, getTimezoneDisplayLabel, getTodayInTimeZone, getWeekDaysLabels, getWeekNumber, getWeekRange, groupSearchResults, hasEventChanged, importICSFile, isDate, isDeepEqual, isEventDeepEqual, isEventInWeek, isMultiDayEvent, isMultiDayTemporalEvent, isPlainDate, isPlainDateTime, isSameDay, isSamePlainDate, isSameTemporal, isValidLocale, isZonedDateTime, monthNames, normalizeCssWidth, normalizeDate, normalizeLocale, normalizeTimeZoneValue, now, pad2, parseICS, parseICSDate, parseVEventLines, pickSyncableConfig, plainDateTimeToDate, plainDateToDate, recalculateEventDays, registerDragImplementation, registerLocale, registerSidebarImplementation, resolveAppliedTheme, restoreTimedDragFromAllDayTransition, restoreVisualEventToCanonical, restoreVisualTimedTemporalToCanonical, roundToTimeStep, scrollbarTakesSpace, setHourInTemporal, shortMonthNames, sidebarContainer, sidebarHeader, sidebarHeaderTitle, sidebarHeaderToggle, sortAllDayByTitle, subscribeCalendar, syncCalendarAppConfig, t, temporalToDate, temporalToVisualDate, temporalToVisualTemporal, today, unescapeICSValue, updateEventDateAndDay, updateEventWithRealDate, useDragForView, useLocale, useSidebarBridge, weekDays, weekDaysFullName, zonedDateTimeToDate };
3202
+ export type { AllDaySortComparator, BalanceStrategy, BaseViewProps, CalendarAppConfig, CalendarAppConfigSyncSnapshot, CalendarAppState, CalendarCallbacks, CalendarColors, CalendarConfig, CalendarEventProps, CalendarHeaderProps, CalendarPlugin, CalendarSearchEvent, CalendarSearchProps, CalendarType, CalendarView, CalendarViewType, CalendarsConfig, ColorPickerProps, CreateCalendarDialogColorPickerProps, CreateCalendarDialogProps, CreateEventParams, CreateTimezoneEventParams, CustomRendering, DayData, DayViewConfig, DayViewProps, DragConfig, DragHookOptions, DragHookReturn, DragIndicatorProps, DragIndicatorRenderer, DragIntegrationProps, DragPluginConfig, DragRef, DragService, Event, EventChange, EventContentSlotArgs, EventContextMenuSlotArgs, EventDetailContentProps, EventDetailContentRenderer, EventDetailDialogProps, EventDetailDialogRenderer, EventDetailPanelProps, EventDetailPanelRenderer, EventDetailPosition, EventGroup, EventLayout, EventRelations, EventsPluginConfig, EventsService, GridContextMenuSlotArgs, ICSDateParams, ICSExportOptions, ICSImportOptions, ICSImportResult, ICSParseError, ICSVEvent, ICalendarApp, Locale, LocaleCode, LocaleContextValue, LocaleDict, LocaleMessages, LocaleProviderProps, MobileEventProps, MobileEventRenderer, Mode, MonthDragState, MonthEventDragState, MonthScrollConfig, MonthViewConfig, MonthViewProps, NestedLayer, RangeChangeReason, ReadOnlyConfig, SidebarBridgeReturn, SidebarHeaderSlotArgs, SpecialLayoutRule, SubscribeResult, SubtreeAnalysis, SupportedLang, SyncableCalendarAppConfig, TComponent, TNode, ThemeColors, ThemeConfig, ThemeMode, TimeZoneValue, TitleBarSlotProps, TransferOperation, TranslationKey, UnifiedDragRef, UseCalendarAppReturn, UseCalendarReturn, UseDragCommonReturn, UseDragHandlersParams, UseDragHandlersReturn, UseDragManagerReturn, UseDragStateReturn, UseMonthDragParams, UseMonthDragReturn, UseVirtualMonthScrollProps, UseVirtualMonthScrollReturn, UseVirtualScrollProps, UseVirtualScrollReturn, UseWeekDayDragParams, UseWeekDayDragReturn, ViewAdapterProps, ViewConfigComparison, ViewFactory, ViewFactoryConfig, VirtualItem, VirtualScrollIntegrationProps, VirtualWeekItem, WeekDayDragState, WeekViewConfig, WeekViewProps, WeeksData, YearViewConfig, YearViewProps, useDragProps, useDragReturn };