@dayflow/core 3.4.2 → 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,18 +527,20 @@ 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>;
532
533
  onCalendarDelete?: (calendarId: string) => void | Promise<void>;
533
534
  onCalendarMerge?: (sourceId: string, targetId: string) => void | Promise<void>;
534
535
  onEventClick?: (event: Event) => void | Promise<void>;
536
+ onEventDoubleClick?: (event: Event, e: MouseEvent) => boolean | undefined | Promise<boolean | undefined>;
535
537
  onMoreEventsClick?: (date: Date) => void | Promise<void>;
536
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;
537
544
  }
538
545
  interface CalendarHeaderProps {
539
546
  calendar: ICalendarApp;
@@ -666,7 +673,9 @@ interface ICalendarApp {
666
673
  getEvents: () => Event[];
667
674
  getAllEvents: () => Event[];
668
675
  onEventClick: (event: Event) => void;
676
+ onEventDoubleClick: (event: Event, e: MouseEvent) => boolean | undefined | Promise<boolean | undefined>;
669
677
  onMoreEventsClick: (date: Date) => void;
678
+ onEventDetailToggle: (eventId: string | null) => void;
670
679
  highlightEvent: (eventId: string | null) => void;
671
680
  selectEvent: (eventId: string | null) => void;
672
681
  getCalendars: () => CalendarType[];
@@ -834,6 +843,7 @@ interface DragRef {
834
843
  lastClientY: number;
835
844
  allDay: boolean;
836
845
  eventDate?: Date;
846
+ calendarIds?: string[];
837
847
  }
838
848
  /**
839
849
  * Event detail position interface
@@ -857,6 +867,12 @@ interface DragIndicatorProps {
857
867
  getDynamicPadding: (drag: DragRef) => string;
858
868
  locale?: string;
859
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[];
860
876
  }
861
877
  interface DragIndicatorRenderer {
862
878
  renderAllDayContent: (props: DragIndicatorProps) => ComponentChildren;
@@ -893,6 +909,7 @@ interface UnifiedDragRef extends DragRef {
893
909
  initialIndicatorHeight?: number;
894
910
  indicatorContainer?: HTMLElement | null;
895
911
  calendarId?: string;
912
+ calendarIds?: string[];
896
913
  title?: string;
897
914
  }
898
915
  interface useDragProps extends Partial<DragConfig> {
@@ -1110,7 +1127,7 @@ interface EventDetailPanelProps {
1110
1127
  /** Whether the event is all-day */
1111
1128
  isAllDay: boolean;
1112
1129
  /** Event visibility state */
1113
- eventVisibility: 'visible' | 'sticky-top' | 'sticky-bottom' | 'sticky-left' | 'sticky-right';
1130
+ eventVisibility: 'standard' | 'sticky-top' | 'sticky-bottom' | 'sticky-left' | 'sticky-right';
1114
1131
  /** Calendar container reference */
1115
1132
  calendarRef: RefObject<HTMLDivElement>;
1116
1133
  /** Selected event element reference */
@@ -1538,6 +1555,51 @@ interface MobileEventProps {
1538
1555
  timeFormat?: '12h' | '24h';
1539
1556
  }
1540
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
+
1541
1603
  declare class CalendarApp implements ICalendarApp {
1542
1604
  state: CalendarAppState;
1543
1605
  private callbacks;
@@ -1583,7 +1645,9 @@ declare class CalendarApp implements ICalendarApp {
1583
1645
  getAllEvents: () => Event[];
1584
1646
  getEvents: () => Event[];
1585
1647
  onEventClick: (event: Event) => void;
1648
+ onEventDoubleClick: (event: Event, e: MouseEvent) => boolean | undefined | Promise<boolean | undefined>;
1586
1649
  onMoreEventsClick: (date: Date) => void;
1650
+ onEventDetailToggle: (eventId: string | null) => void;
1587
1651
  highlightEvent: (eventId: string | null) => void;
1588
1652
  selectEvent: (eventId: string | null) => void;
1589
1653
  dismissUI: () => void;
@@ -1767,6 +1831,48 @@ declare const getSelectedBgColor: (calendarIdOrColor: string, registry?: Calenda
1767
1831
  * Now uses the calendar registry for color resolution
1768
1832
  */
1769
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;
1770
1876
 
1771
1877
  /**
1772
1878
  * Time Utilities
@@ -2283,14 +2389,6 @@ declare function now(timeZone?: string): Temporal.ZonedDateTime;
2283
2389
  */
2284
2390
  declare function today(timeZone?: string): Temporal.PlainDate;
2285
2391
 
2286
- declare const pad: (input: number) => string;
2287
- declare const mergeFormatTemplate: (dateFormat: string, timeFormat: string) => string;
2288
- declare const buildParseRegExp: (template: string) => RegExp;
2289
- declare const parseTemporalString: (input: string, regExp: RegExp, reference: Temporal.ZonedDateTime, zoneId: string) => Temporal.ZonedDateTime | null;
2290
- declare const getZoneId: (value: Temporal.ZonedDateTime) => string;
2291
- declare const normalizeToZoned: (input: Temporal.PlainDate | Temporal.PlainDateTime | Temporal.ZonedDateTime, fallbackZone?: string, fallbackTemporal?: Temporal.ZonedDateTime) => Temporal.ZonedDateTime;
2292
- declare const formatTemporal: (value: Temporal.ZonedDateTime, format: string, timeFormat: string) => string;
2293
-
2294
2392
  /**
2295
2393
  * Style Utility Functions
2296
2394
  *
@@ -2327,97 +2425,8 @@ declare function normalizeCssWidth(width?: number | string, defaultWidth?: strin
2327
2425
  */
2328
2426
  declare function scrollbarTakesSpace(): boolean;
2329
2427
 
2330
- /**
2331
- * Theme Utility Functions
2332
- *
2333
- * This module provides utility functions for working with theme-aware class names.
2334
- */
2335
- /**
2336
- * Combine class names with theme-specific variants
2337
- *
2338
- * @param base - Base class names (applied in both themes)
2339
- * @param light - Light mode specific class names
2340
- * @param dark - Dark mode specific class names (will be prefixed with 'dark:')
2341
- * @returns Combined class name string
2342
- *
2343
- * @example
2344
- * ```ts
2345
- * themeCn('p-4 rounded', 'bg-white text-black', 'bg-gray-900 text-white')
2346
- * // Returns: 'p-4 rounded bg-white text-black dark:bg-gray-900 dark:text-white'
2347
- * ```
2348
- */
2349
- declare const themeCn: (base: string, light: string, dark: string) => string;
2350
- /**
2351
- * Common theme class combinations
2352
- *
2353
- * Pre-defined class combinations for common UI elements.
2354
- * Use these for consistency across the application.
2355
- */
2356
- declare const themeClasses: {
2357
- container: string;
2358
- card: string;
2359
- sidebar: string;
2360
- text: string;
2361
- textMuted: string;
2362
- textSubtle: string;
2363
- textEmphasis: string;
2364
- border: string;
2365
- borderLight: string;
2366
- borderStrong: string;
2367
- bgPrimary: string;
2368
- bgSecondary: string;
2369
- bgTertiary: string;
2370
- bgMuted: string;
2371
- hover: string;
2372
- hoverSubtle: string;
2373
- active: string;
2374
- focus: string;
2375
- input: string;
2376
- inputFocus: string;
2377
- buttonPrimary: string;
2378
- buttonSecondary: string;
2379
- buttonDanger: string;
2380
- buttonSuccess: string;
2381
- shadow: string;
2382
- shadowMd: string;
2383
- shadowLg: string;
2384
- divider: string;
2385
- };
2386
- /**
2387
- * Conditional theme class
2388
- *
2389
- * Returns different class names based on a condition.
2390
- *
2391
- * @param condition - Condition to evaluate
2392
- * @param whenTrue - Class names when condition is true
2393
- * @param whenFalse - Class names when condition is false
2394
- * @returns Class name string based on condition
2395
- *
2396
- * @example
2397
- * ```ts
2398
- * conditionalTheme(isActive, 'bg-blue-500 dark:bg-blue-600', 'bg-gray-200 dark:bg-gray-700')
2399
- * ```
2400
- */
2401
- declare const conditionalTheme: (condition: boolean, whenTrue: string, whenFalse: string) => string;
2402
- /**
2403
- * Merge multiple class names, filtering out falsy values
2404
- *
2405
- * @param classes - Array of class names or falsy values
2406
- * @returns Merged class name string
2407
- *
2408
- * @example
2409
- * ```ts
2410
- * mergeClasses('p-4', isActive && 'bg-blue-500', 'rounded')
2411
- * // Returns: 'p-4 bg-blue-500 rounded' (if isActive is true)
2412
- * ```
2413
- */
2414
- declare const mergeClasses: (...classes: (string | undefined | null | false)[]) => string;
2415
2428
  /**
2416
2429
  * Resolve the currently applied theme on the document.
2417
- *
2418
- * This inspects common override hooks (like `data-dayflow-theme-override` or
2419
- * manual `dark`/`light` classes) so host applications can force a theme even
2420
- * when DayFlow is configured in `auto` mode.
2421
2430
  */
2422
2431
  declare const resolveAppliedTheme: (effectiveTheme: "light" | "dark") => "light" | "dark";
2423
2432
 
@@ -2545,29 +2554,6 @@ declare function createAllDayEvent(id: string, title: string, date: Date, option
2545
2554
  * Quick create timed event
2546
2555
  */
2547
2556
  declare function createTimedEvent(id: string, title: string, start: Date, end: Date, options?: Omit<CreateEventParams, 'id' | 'title' | 'start' | 'end'>): Event;
2548
- /**
2549
- * Convert legacy Date-based event to Temporal-based event
2550
- * @deprecated Use createEvent() directly with Date objects instead
2551
- */
2552
- declare function convertDateEvent(id: string, title: string, startDate: Date, endDate: Date, allDay?: boolean, options?: {
2553
- description?: string;
2554
- calendarId?: string;
2555
- meta?: Record<string, unknown>;
2556
- }): Event;
2557
- /**
2558
- * Convert legacy Date-based event to timezone-aware event
2559
- * @deprecated Use createTimezoneEvent() directly with Date objects instead
2560
- */
2561
- declare function convertDateEventWithTimeZone(id: string, title: string, startDate: Date, endDate: Date, timeZone: string, options?: {
2562
- description?: string;
2563
- calendarId?: string;
2564
- meta?: Record<string, unknown>;
2565
- }): Event;
2566
-
2567
- type CalendarSearchEvent = Event & {
2568
- color?: string;
2569
- [key: string]: unknown;
2570
- };
2571
2557
 
2572
2558
  /**
2573
2559
  * Helper to get date object from event start
@@ -2582,16 +2568,16 @@ declare const getDateObj: (dateInput: unknown) => Date;
2582
2568
  */
2583
2569
  declare const normalizeDate: (date: Date) => Date;
2584
2570
  /**
2585
- * 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
2586
2572
  * @param groupDate The date of the group
2587
2573
  * @param today Reference today date (normalized)
2588
2574
  * @param locale Locale string
2589
2575
  * @param t Translation function
2590
- * @returns Object with title and colorClass
2576
+ * @returns Object with title and tone
2591
2577
  */
2592
2578
  declare const getSearchHeaderInfo: (groupDate: Date, today: Date, locale: string, t: (key: TranslationKey) => string) => {
2593
2579
  title: string;
2594
- colorClass: string;
2580
+ tone: "default" | "today" | "upcoming";
2595
2581
  };
2596
2582
  /**
2597
2583
  * Helper to group search results by date
@@ -2969,33 +2955,6 @@ type SidebarBridgeFn = (app: ICalendarApp) => SidebarBridgeReturn;
2969
2955
  declare function registerSidebarImplementation(fn: SidebarBridgeFn): void;
2970
2956
  declare function useSidebarBridge(app: ICalendarApp): SidebarBridgeReturn;
2971
2957
 
2972
- interface ContextMenuProps {
2973
- x: number;
2974
- y: number;
2975
- onClose: () => void;
2976
- children: ComponentChildren;
2977
- className?: string;
2978
- }
2979
- declare const ContextMenu: preact.FunctionalComponent<preact_compat.PropsWithoutRef<ContextMenuProps> & {
2980
- ref?: preact.Ref<HTMLDivElement> | undefined;
2981
- }>;
2982
- declare const ContextMenuItem: ({ onClick, children, icon, danger, disabled, }: {
2983
- onClick: () => void;
2984
- children: ComponentChildren;
2985
- icon?: ComponentChildren;
2986
- danger?: boolean;
2987
- disabled?: boolean;
2988
- }) => preact.JSX.Element;
2989
- declare const ContextMenuSeparator: () => preact.JSX.Element;
2990
- declare const ContextMenuLabel: ({ children, }: {
2991
- children: ComponentChildren;
2992
- }) => preact.JSX.Element;
2993
- declare const ContextMenuColorPicker: ({ selectedColor, onSelect, onCustomColor, }: {
2994
- selectedColor?: string;
2995
- onSelect: (color: string) => void;
2996
- onCustomColor?: () => void;
2997
- }) => preact.JSX.Element;
2998
-
2999
2958
  interface GridContextMenuProps {
3000
2959
  x: number;
3001
2960
  y: number;
@@ -3044,30 +3003,6 @@ interface DefaultColorPickerProps {
3044
3003
  }
3045
3004
  declare const DefaultColorPicker: ({ color, onChange, onClose, }: DefaultColorPickerProps) => preact.JSX.Element;
3046
3005
 
3047
- type ZonedRange = [Temporal.ZonedDateTime, Temporal.ZonedDateTime];
3048
- interface RangePickerProps {
3049
- value: [
3050
- Temporal.PlainDate | Temporal.PlainDateTime | Temporal.ZonedDateTime,
3051
- Temporal.PlainDate | Temporal.PlainDateTime | Temporal.ZonedDateTime
3052
- ];
3053
- format?: string;
3054
- showTimeFormat?: string;
3055
- showTime?: boolean | {
3056
- format?: string;
3057
- };
3058
- onChange?: (value: ZonedRange, dateString: [string, string]) => void;
3059
- onOk?: (value: ZonedRange, dateString: [string, string]) => void;
3060
- timeZone?: string;
3061
- disabled?: boolean;
3062
- placement?: 'bottomLeft' | 'bottomRight' | 'topLeft' | 'topRight';
3063
- autoAdjustOverflow?: boolean;
3064
- getPopupContainer?: () => HTMLElement;
3065
- matchTriggerWidth?: boolean;
3066
- locale?: string | Locale;
3067
- }
3068
-
3069
- declare const RangePicker: ({ value, format, showTimeFormat, showTime, onChange, onOk, timeZone, disabled, placement, autoAdjustOverflow, getPopupContainer, matchTriggerWidth, locale, }: RangePickerProps) => JSX.Element;
3070
-
3071
3006
  interface MiniCalendarProps {
3072
3007
  visibleMonth: Date;
3073
3008
  currentDate: Date;
@@ -3097,7 +3032,6 @@ interface DefaultEventDetailDialogProps extends EventDetailDialogProps {
3097
3032
  }
3098
3033
  /**
3099
3034
  * Default event detail dialog component (Dialog mode)
3100
- * Content is consistent with DefaultEventDetailPanel, but displayed using Dialog/Modal
3101
3035
  */
3102
3036
  declare const DefaultEventDetailDialog: ({ event, isOpen, onEventUpdate, onEventDelete, onClose, app, }: DefaultEventDetailDialogProps) => preact.VNode<any> | null;
3103
3037
 
@@ -3208,6 +3142,20 @@ interface CalendarEventProps {
3208
3142
 
3209
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;
3210
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
+
3211
3159
  interface IconProps {
3212
3160
  className?: string;
3213
3161
  width?: number;
@@ -3228,27 +3176,27 @@ declare const AlertCircle: ({ className, width, height, }: IconProps) => preact.
3228
3176
  /**
3229
3177
  * Cancel button
3230
3178
  */
3231
- 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";
3232
3180
  /**
3233
3181
  * Calendar picker dropdown (for selecting calendar for an event)
3234
3182
  */
3235
- 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";
3236
3184
  /**
3237
3185
  * Sidebar container
3238
3186
  */
3239
- declare const sidebarContainer = "df-sidebar flex h-full flex-col border-r";
3187
+ declare const sidebarContainer = "df-sidebar";
3240
3188
  /**
3241
3189
  * Sidebar header
3242
3190
  */
3243
- declare const sidebarHeader = "df-sidebar-header flex items-center px-2 py-1";
3191
+ declare const sidebarHeader = "df-sidebar-header";
3244
3192
  /**
3245
3193
  * Sidebar header toggle button
3246
3194
  */
3247
- 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";
3248
3196
  /**
3249
3197
  * Sidebar header title
3250
3198
  */
3251
- 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";
3252
3200
 
3253
- 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 };
3254
- 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 };