react-native-agenda-kit 0.1.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/LICENSE +21 -0
- package/README.md +364 -0
- package/lib/commonjs/agenda/AgendaBackdrop.js +68 -0
- package/lib/commonjs/agenda/AgendaBackdrop.js.map +1 -0
- package/lib/commonjs/agenda/AgendaList.js +354 -0
- package/lib/commonjs/agenda/AgendaList.js.map +1 -0
- package/lib/commonjs/agenda/AgendaSlot.js +88 -0
- package/lib/commonjs/agenda/AgendaSlot.js.map +1 -0
- package/lib/commonjs/agenda/AgendaWindow.js +171 -0
- package/lib/commonjs/agenda/AgendaWindow.js.map +1 -0
- package/lib/commonjs/agenda/StickyHeaderOverlay.js +125 -0
- package/lib/commonjs/agenda/StickyHeaderOverlay.js.map +1 -0
- package/lib/commonjs/agenda/buildAgendaLayout.js +100 -0
- package/lib/commonjs/agenda/buildAgendaLayout.js.map +1 -0
- package/lib/commonjs/agenda/constants.js +29 -0
- package/lib/commonjs/agenda/constants.js.map +1 -0
- package/lib/commonjs/agenda/heights.js +49 -0
- package/lib/commonjs/agenda/heights.js.map +1 -0
- package/lib/commonjs/agenda/useAgendaScrollSync.js +204 -0
- package/lib/commonjs/agenda/useAgendaScrollSync.js.map +1 -0
- package/lib/commonjs/core/ArrowGlyph.js +65 -0
- package/lib/commonjs/core/ArrowGlyph.js.map +1 -0
- package/lib/commonjs/core/CalendarContext.js +32 -0
- package/lib/commonjs/core/CalendarContext.js.map +1 -0
- package/lib/commonjs/core/CalendarProvider.js +141 -0
- package/lib/commonjs/core/CalendarProvider.js.map +1 -0
- package/lib/commonjs/core/CalendarStore.js +70 -0
- package/lib/commonjs/core/CalendarStore.js.map +1 -0
- package/lib/commonjs/core/KitText.js +23 -0
- package/lib/commonjs/core/KitText.js.map +1 -0
- package/lib/commonjs/core/TodayButton.js +136 -0
- package/lib/commonjs/core/TodayButton.js.map +1 -0
- package/lib/commonjs/core/civil.js +101 -0
- package/lib/commonjs/core/civil.js.map +1 -0
- package/lib/commonjs/core/dateKey.js +56 -0
- package/lib/commonjs/core/dateKey.js.map +1 -0
- package/lib/commonjs/core/motion.js +56 -0
- package/lib/commonjs/core/motion.js.map +1 -0
- package/lib/commonjs/core/worklets.js +44 -0
- package/lib/commonjs/core/worklets.js.map +1 -0
- package/lib/commonjs/expandable/DayCell.js +120 -0
- package/lib/commonjs/expandable/DayCell.js.map +1 -0
- package/lib/commonjs/expandable/ExpandableCalendar.js +280 -0
- package/lib/commonjs/expandable/ExpandableCalendar.js.map +1 -0
- package/lib/commonjs/expandable/Knob.js +72 -0
- package/lib/commonjs/expandable/Knob.js.map +1 -0
- package/lib/commonjs/expandable/MonthPager.js +180 -0
- package/lib/commonjs/expandable/MonthPager.js.map +1 -0
- package/lib/commonjs/expandable/WeekStrip.js +451 -0
- package/lib/commonjs/expandable/WeekStrip.js.map +1 -0
- package/lib/commonjs/expandable/calendarCells.js +152 -0
- package/lib/commonjs/expandable/calendarCells.js.map +1 -0
- package/lib/commonjs/expandable/geometry.js +62 -0
- package/lib/commonjs/expandable/geometry.js.map +1 -0
- package/lib/commonjs/expandable/useExpandGesture.js +124 -0
- package/lib/commonjs/expandable/useExpandGesture.js.map +1 -0
- package/lib/commonjs/expandable/useHorizontalPager.js +97 -0
- package/lib/commonjs/expandable/useHorizontalPager.js.map +1 -0
- package/lib/commonjs/index.js +167 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/theme/ThemeProvider.js +73 -0
- package/lib/commonjs/theme/ThemeProvider.js.map +1 -0
- package/lib/commonjs/theme/index.js +75 -0
- package/lib/commonjs/theme/index.js.map +1 -0
- package/lib/commonjs/theme/theme.js +79 -0
- package/lib/commonjs/theme/theme.js.map +1 -0
- package/lib/commonjs/theme/tokens.js +54 -0
- package/lib/commonjs/theme/tokens.js.map +1 -0
- package/lib/commonjs/timeline/DayColumn.js +95 -0
- package/lib/commonjs/timeline/DayColumn.js.map +1 -0
- package/lib/commonjs/timeline/DayPager.js +250 -0
- package/lib/commonjs/timeline/DayPager.js.map +1 -0
- package/lib/commonjs/timeline/EventBlock.js +91 -0
- package/lib/commonjs/timeline/EventBlock.js.map +1 -0
- package/lib/commonjs/timeline/GridLines.js +47 -0
- package/lib/commonjs/timeline/GridLines.js.map +1 -0
- package/lib/commonjs/timeline/HourGrid.js +96 -0
- package/lib/commonjs/timeline/HourGrid.js.map +1 -0
- package/lib/commonjs/timeline/NowIndicator.js +132 -0
- package/lib/commonjs/timeline/NowIndicator.js.map +1 -0
- package/lib/commonjs/timeline/TimelineDay.js +126 -0
- package/lib/commonjs/timeline/TimelineDay.js.map +1 -0
- package/lib/commonjs/timeline/packEvents.js +102 -0
- package/lib/commonjs/timeline/packEvents.js.map +1 -0
- package/lib/commonjs/timeline/timelineGeometry.js +27 -0
- package/lib/commonjs/timeline/timelineGeometry.js.map +1 -0
- package/lib/commonjs/timeline/timelineMath.js +82 -0
- package/lib/commonjs/timeline/timelineMath.js.map +1 -0
- package/lib/commonjs/types.js +71 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/module/agenda/AgendaBackdrop.js +63 -0
- package/lib/module/agenda/AgendaBackdrop.js.map +1 -0
- package/lib/module/agenda/AgendaList.js +349 -0
- package/lib/module/agenda/AgendaList.js.map +1 -0
- package/lib/module/agenda/AgendaSlot.js +84 -0
- package/lib/module/agenda/AgendaSlot.js.map +1 -0
- package/lib/module/agenda/AgendaWindow.js +167 -0
- package/lib/module/agenda/AgendaWindow.js.map +1 -0
- package/lib/module/agenda/StickyHeaderOverlay.js +120 -0
- package/lib/module/agenda/StickyHeaderOverlay.js.map +1 -0
- package/lib/module/agenda/buildAgendaLayout.js +95 -0
- package/lib/module/agenda/buildAgendaLayout.js.map +1 -0
- package/lib/module/agenda/constants.js +25 -0
- package/lib/module/agenda/constants.js.map +1 -0
- package/lib/module/agenda/heights.js +42 -0
- package/lib/module/agenda/heights.js.map +1 -0
- package/lib/module/agenda/useAgendaScrollSync.js +200 -0
- package/lib/module/agenda/useAgendaScrollSync.js.map +1 -0
- package/lib/module/core/ArrowGlyph.js +60 -0
- package/lib/module/core/ArrowGlyph.js.map +1 -0
- package/lib/module/core/CalendarContext.js +26 -0
- package/lib/module/core/CalendarContext.js.map +1 -0
- package/lib/module/core/CalendarProvider.js +136 -0
- package/lib/module/core/CalendarProvider.js.map +1 -0
- package/lib/module/core/CalendarStore.js +66 -0
- package/lib/module/core/CalendarStore.js.map +1 -0
- package/lib/module/core/KitText.js +19 -0
- package/lib/module/core/KitText.js.map +1 -0
- package/lib/module/core/TodayButton.js +133 -0
- package/lib/module/core/TodayButton.js.map +1 -0
- package/lib/module/core/civil.js +88 -0
- package/lib/module/core/civil.js.map +1 -0
- package/lib/module/core/dateKey.js +47 -0
- package/lib/module/core/dateKey.js.map +1 -0
- package/lib/module/core/motion.js +49 -0
- package/lib/module/core/motion.js.map +1 -0
- package/lib/module/core/worklets.js +38 -0
- package/lib/module/core/worklets.js.map +1 -0
- package/lib/module/expandable/DayCell.js +116 -0
- package/lib/module/expandable/DayCell.js.map +1 -0
- package/lib/module/expandable/ExpandableCalendar.js +275 -0
- package/lib/module/expandable/ExpandableCalendar.js.map +1 -0
- package/lib/module/expandable/Knob.js +67 -0
- package/lib/module/expandable/Knob.js.map +1 -0
- package/lib/module/expandable/MonthPager.js +175 -0
- package/lib/module/expandable/MonthPager.js.map +1 -0
- package/lib/module/expandable/WeekStrip.js +446 -0
- package/lib/module/expandable/WeekStrip.js.map +1 -0
- package/lib/module/expandable/calendarCells.js +142 -0
- package/lib/module/expandable/calendarCells.js.map +1 -0
- package/lib/module/expandable/geometry.js +58 -0
- package/lib/module/expandable/geometry.js.map +1 -0
- package/lib/module/expandable/useExpandGesture.js +118 -0
- package/lib/module/expandable/useExpandGesture.js.map +1 -0
- package/lib/module/expandable/useHorizontalPager.js +92 -0
- package/lib/module/expandable/useHorizontalPager.js.map +1 -0
- package/lib/module/index.js +35 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/theme/ThemeProvider.js +65 -0
- package/lib/module/theme/ThemeProvider.js.map +1 -0
- package/lib/module/theme/index.js +6 -0
- package/lib/module/theme/index.js.map +1 -0
- package/lib/module/theme/theme.js +74 -0
- package/lib/module/theme/theme.js.map +1 -0
- package/lib/module/theme/tokens.js +50 -0
- package/lib/module/theme/tokens.js.map +1 -0
- package/lib/module/timeline/DayColumn.js +91 -0
- package/lib/module/timeline/DayColumn.js.map +1 -0
- package/lib/module/timeline/DayPager.js +245 -0
- package/lib/module/timeline/DayPager.js.map +1 -0
- package/lib/module/timeline/EventBlock.js +87 -0
- package/lib/module/timeline/EventBlock.js.map +1 -0
- package/lib/module/timeline/GridLines.js +43 -0
- package/lib/module/timeline/GridLines.js.map +1 -0
- package/lib/module/timeline/HourGrid.js +94 -0
- package/lib/module/timeline/HourGrid.js.map +1 -0
- package/lib/module/timeline/NowIndicator.js +126 -0
- package/lib/module/timeline/NowIndicator.js.map +1 -0
- package/lib/module/timeline/TimelineDay.js +122 -0
- package/lib/module/timeline/TimelineDay.js.map +1 -0
- package/lib/module/timeline/packEvents.js +97 -0
- package/lib/module/timeline/packEvents.js.map +1 -0
- package/lib/module/timeline/timelineGeometry.js +22 -0
- package/lib/module/timeline/timelineGeometry.js.map +1 -0
- package/lib/module/timeline/timelineMath.js +75 -0
- package/lib/module/timeline/timelineMath.js.map +1 -0
- package/lib/module/types.js +67 -0
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/commonjs/agenda/AgendaBackdrop.d.ts +20 -0
- package/lib/typescript/commonjs/agenda/AgendaBackdrop.d.ts.map +1 -0
- package/lib/typescript/commonjs/agenda/AgendaList.d.ts +12 -0
- package/lib/typescript/commonjs/agenda/AgendaList.d.ts.map +1 -0
- package/lib/typescript/commonjs/agenda/AgendaSlot.d.ts +45 -0
- package/lib/typescript/commonjs/agenda/AgendaSlot.d.ts.map +1 -0
- package/lib/typescript/commonjs/agenda/AgendaWindow.d.ts +49 -0
- package/lib/typescript/commonjs/agenda/AgendaWindow.d.ts.map +1 -0
- package/lib/typescript/commonjs/agenda/StickyHeaderOverlay.d.ts +39 -0
- package/lib/typescript/commonjs/agenda/StickyHeaderOverlay.d.ts.map +1 -0
- package/lib/typescript/commonjs/agenda/buildAgendaLayout.d.ts +57 -0
- package/lib/typescript/commonjs/agenda/buildAgendaLayout.d.ts.map +1 -0
- package/lib/typescript/commonjs/agenda/constants.d.ts +19 -0
- package/lib/typescript/commonjs/agenda/constants.d.ts.map +1 -0
- package/lib/typescript/commonjs/agenda/heights.d.ts +20 -0
- package/lib/typescript/commonjs/agenda/heights.d.ts.map +1 -0
- package/lib/typescript/commonjs/agenda/useAgendaScrollSync.d.ts +44 -0
- package/lib/typescript/commonjs/agenda/useAgendaScrollSync.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/ArrowGlyph.d.ts +14 -0
- package/lib/typescript/commonjs/core/ArrowGlyph.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/CalendarContext.d.ts +35 -0
- package/lib/typescript/commonjs/core/CalendarContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/CalendarProvider.d.ts +41 -0
- package/lib/typescript/commonjs/core/CalendarProvider.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/CalendarStore.d.ts +28 -0
- package/lib/typescript/commonjs/core/CalendarStore.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/KitText.d.ts +10 -0
- package/lib/typescript/commonjs/core/KitText.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/TodayButton.d.ts +18 -0
- package/lib/typescript/commonjs/core/TodayButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/civil.d.ts +26 -0
- package/lib/typescript/commonjs/core/civil.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/dateKey.d.ts +21 -0
- package/lib/typescript/commonjs/core/dateKey.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/motion.d.ts +18 -0
- package/lib/typescript/commonjs/core/motion.d.ts.map +1 -0
- package/lib/typescript/commonjs/core/worklets.d.ts +12 -0
- package/lib/typescript/commonjs/core/worklets.d.ts.map +1 -0
- package/lib/typescript/commonjs/expandable/DayCell.d.ts +22 -0
- package/lib/typescript/commonjs/expandable/DayCell.d.ts.map +1 -0
- package/lib/typescript/commonjs/expandable/ExpandableCalendar.d.ts +40 -0
- package/lib/typescript/commonjs/expandable/ExpandableCalendar.d.ts.map +1 -0
- package/lib/typescript/commonjs/expandable/Knob.d.ts +19 -0
- package/lib/typescript/commonjs/expandable/Knob.d.ts.map +1 -0
- package/lib/typescript/commonjs/expandable/MonthPager.d.ts +35 -0
- package/lib/typescript/commonjs/expandable/MonthPager.d.ts.map +1 -0
- package/lib/typescript/commonjs/expandable/WeekStrip.d.ts +34 -0
- package/lib/typescript/commonjs/expandable/WeekStrip.d.ts.map +1 -0
- package/lib/typescript/commonjs/expandable/calendarCells.d.ts +52 -0
- package/lib/typescript/commonjs/expandable/calendarCells.d.ts.map +1 -0
- package/lib/typescript/commonjs/expandable/geometry.d.ts +43 -0
- package/lib/typescript/commonjs/expandable/geometry.d.ts.map +1 -0
- package/lib/typescript/commonjs/expandable/useExpandGesture.d.ts +35 -0
- package/lib/typescript/commonjs/expandable/useExpandGesture.d.ts.map +1 -0
- package/lib/typescript/commonjs/expandable/useHorizontalPager.d.ts +35 -0
- package/lib/typescript/commonjs/expandable/useHorizontalPager.d.ts.map +1 -0
- package/lib/typescript/commonjs/index.d.ts +26 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/theme/ThemeProvider.d.ts +27 -0
- package/lib/typescript/commonjs/theme/ThemeProvider.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/index.d.ts +4 -0
- package/lib/typescript/commonjs/theme/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/theme.d.ts +62 -0
- package/lib/typescript/commonjs/theme/theme.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/tokens.d.ts +46 -0
- package/lib/typescript/commonjs/theme/tokens.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/DayColumn.d.ts +32 -0
- package/lib/typescript/commonjs/timeline/DayColumn.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/DayPager.d.ts +32 -0
- package/lib/typescript/commonjs/timeline/DayPager.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/EventBlock.d.ts +17 -0
- package/lib/typescript/commonjs/timeline/EventBlock.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/GridLines.d.ts +5 -0
- package/lib/typescript/commonjs/timeline/GridLines.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/HourGrid.d.ts +12 -0
- package/lib/typescript/commonjs/timeline/HourGrid.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/NowIndicator.d.ts +28 -0
- package/lib/typescript/commonjs/timeline/NowIndicator.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/TimelineDay.d.ts +14 -0
- package/lib/typescript/commonjs/timeline/TimelineDay.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/packEvents.d.ts +25 -0
- package/lib/typescript/commonjs/timeline/packEvents.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/timelineGeometry.d.ts +14 -0
- package/lib/typescript/commonjs/timeline/timelineGeometry.d.ts.map +1 -0
- package/lib/typescript/commonjs/timeline/timelineMath.d.ts +32 -0
- package/lib/typescript/commonjs/timeline/timelineMath.d.ts.map +1 -0
- package/lib/typescript/commonjs/types.d.ts +237 -0
- package/lib/typescript/commonjs/types.d.ts.map +1 -0
- package/lib/typescript/module/agenda/AgendaBackdrop.d.ts +20 -0
- package/lib/typescript/module/agenda/AgendaBackdrop.d.ts.map +1 -0
- package/lib/typescript/module/agenda/AgendaList.d.ts +12 -0
- package/lib/typescript/module/agenda/AgendaList.d.ts.map +1 -0
- package/lib/typescript/module/agenda/AgendaSlot.d.ts +45 -0
- package/lib/typescript/module/agenda/AgendaSlot.d.ts.map +1 -0
- package/lib/typescript/module/agenda/AgendaWindow.d.ts +49 -0
- package/lib/typescript/module/agenda/AgendaWindow.d.ts.map +1 -0
- package/lib/typescript/module/agenda/StickyHeaderOverlay.d.ts +39 -0
- package/lib/typescript/module/agenda/StickyHeaderOverlay.d.ts.map +1 -0
- package/lib/typescript/module/agenda/buildAgendaLayout.d.ts +57 -0
- package/lib/typescript/module/agenda/buildAgendaLayout.d.ts.map +1 -0
- package/lib/typescript/module/agenda/constants.d.ts +19 -0
- package/lib/typescript/module/agenda/constants.d.ts.map +1 -0
- package/lib/typescript/module/agenda/heights.d.ts +20 -0
- package/lib/typescript/module/agenda/heights.d.ts.map +1 -0
- package/lib/typescript/module/agenda/useAgendaScrollSync.d.ts +44 -0
- package/lib/typescript/module/agenda/useAgendaScrollSync.d.ts.map +1 -0
- package/lib/typescript/module/core/ArrowGlyph.d.ts +14 -0
- package/lib/typescript/module/core/ArrowGlyph.d.ts.map +1 -0
- package/lib/typescript/module/core/CalendarContext.d.ts +35 -0
- package/lib/typescript/module/core/CalendarContext.d.ts.map +1 -0
- package/lib/typescript/module/core/CalendarProvider.d.ts +41 -0
- package/lib/typescript/module/core/CalendarProvider.d.ts.map +1 -0
- package/lib/typescript/module/core/CalendarStore.d.ts +28 -0
- package/lib/typescript/module/core/CalendarStore.d.ts.map +1 -0
- package/lib/typescript/module/core/KitText.d.ts +10 -0
- package/lib/typescript/module/core/KitText.d.ts.map +1 -0
- package/lib/typescript/module/core/TodayButton.d.ts +18 -0
- package/lib/typescript/module/core/TodayButton.d.ts.map +1 -0
- package/lib/typescript/module/core/civil.d.ts +26 -0
- package/lib/typescript/module/core/civil.d.ts.map +1 -0
- package/lib/typescript/module/core/dateKey.d.ts +21 -0
- package/lib/typescript/module/core/dateKey.d.ts.map +1 -0
- package/lib/typescript/module/core/motion.d.ts +18 -0
- package/lib/typescript/module/core/motion.d.ts.map +1 -0
- package/lib/typescript/module/core/worklets.d.ts +12 -0
- package/lib/typescript/module/core/worklets.d.ts.map +1 -0
- package/lib/typescript/module/expandable/DayCell.d.ts +22 -0
- package/lib/typescript/module/expandable/DayCell.d.ts.map +1 -0
- package/lib/typescript/module/expandable/ExpandableCalendar.d.ts +40 -0
- package/lib/typescript/module/expandable/ExpandableCalendar.d.ts.map +1 -0
- package/lib/typescript/module/expandable/Knob.d.ts +19 -0
- package/lib/typescript/module/expandable/Knob.d.ts.map +1 -0
- package/lib/typescript/module/expandable/MonthPager.d.ts +35 -0
- package/lib/typescript/module/expandable/MonthPager.d.ts.map +1 -0
- package/lib/typescript/module/expandable/WeekStrip.d.ts +34 -0
- package/lib/typescript/module/expandable/WeekStrip.d.ts.map +1 -0
- package/lib/typescript/module/expandable/calendarCells.d.ts +52 -0
- package/lib/typescript/module/expandable/calendarCells.d.ts.map +1 -0
- package/lib/typescript/module/expandable/geometry.d.ts +43 -0
- package/lib/typescript/module/expandable/geometry.d.ts.map +1 -0
- package/lib/typescript/module/expandable/useExpandGesture.d.ts +35 -0
- package/lib/typescript/module/expandable/useExpandGesture.d.ts.map +1 -0
- package/lib/typescript/module/expandable/useHorizontalPager.d.ts +35 -0
- package/lib/typescript/module/expandable/useHorizontalPager.d.ts.map +1 -0
- package/lib/typescript/module/index.d.ts +26 -0
- package/lib/typescript/module/index.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/theme/ThemeProvider.d.ts +27 -0
- package/lib/typescript/module/theme/ThemeProvider.d.ts.map +1 -0
- package/lib/typescript/module/theme/index.d.ts +4 -0
- package/lib/typescript/module/theme/index.d.ts.map +1 -0
- package/lib/typescript/module/theme/theme.d.ts +62 -0
- package/lib/typescript/module/theme/theme.d.ts.map +1 -0
- package/lib/typescript/module/theme/tokens.d.ts +46 -0
- package/lib/typescript/module/theme/tokens.d.ts.map +1 -0
- package/lib/typescript/module/timeline/DayColumn.d.ts +32 -0
- package/lib/typescript/module/timeline/DayColumn.d.ts.map +1 -0
- package/lib/typescript/module/timeline/DayPager.d.ts +32 -0
- package/lib/typescript/module/timeline/DayPager.d.ts.map +1 -0
- package/lib/typescript/module/timeline/EventBlock.d.ts +17 -0
- package/lib/typescript/module/timeline/EventBlock.d.ts.map +1 -0
- package/lib/typescript/module/timeline/GridLines.d.ts +5 -0
- package/lib/typescript/module/timeline/GridLines.d.ts.map +1 -0
- package/lib/typescript/module/timeline/HourGrid.d.ts +12 -0
- package/lib/typescript/module/timeline/HourGrid.d.ts.map +1 -0
- package/lib/typescript/module/timeline/NowIndicator.d.ts +28 -0
- package/lib/typescript/module/timeline/NowIndicator.d.ts.map +1 -0
- package/lib/typescript/module/timeline/TimelineDay.d.ts +14 -0
- package/lib/typescript/module/timeline/TimelineDay.d.ts.map +1 -0
- package/lib/typescript/module/timeline/packEvents.d.ts +25 -0
- package/lib/typescript/module/timeline/packEvents.d.ts.map +1 -0
- package/lib/typescript/module/timeline/timelineGeometry.d.ts +14 -0
- package/lib/typescript/module/timeline/timelineGeometry.d.ts.map +1 -0
- package/lib/typescript/module/timeline/timelineMath.d.ts +32 -0
- package/lib/typescript/module/timeline/timelineMath.d.ts.map +1 -0
- package/lib/typescript/module/types.d.ts +237 -0
- package/lib/typescript/module/types.d.ts.map +1 -0
- package/package.json +105 -0
- package/src/agenda/AgendaBackdrop.tsx +55 -0
- package/src/agenda/AgendaList.tsx +370 -0
- package/src/agenda/AgendaSlot.tsx +88 -0
- package/src/agenda/AgendaWindow.tsx +183 -0
- package/src/agenda/StickyHeaderOverlay.tsx +126 -0
- package/src/agenda/buildAgendaLayout.ts +110 -0
- package/src/agenda/constants.ts +22 -0
- package/src/agenda/heights.ts +44 -0
- package/src/agenda/useAgendaScrollSync.ts +251 -0
- package/src/core/ArrowGlyph.tsx +53 -0
- package/src/core/CalendarContext.ts +47 -0
- package/src/core/CalendarProvider.tsx +165 -0
- package/src/core/CalendarStore.ts +64 -0
- package/src/core/KitText.tsx +10 -0
- package/src/core/TodayButton.tsx +121 -0
- package/src/core/civil.ts +92 -0
- package/src/core/dateKey.ts +52 -0
- package/src/core/motion.ts +51 -0
- package/src/core/worklets.ts +37 -0
- package/src/expandable/DayCell.tsx +97 -0
- package/src/expandable/ExpandableCalendar.tsx +278 -0
- package/src/expandable/Knob.tsx +67 -0
- package/src/expandable/MonthPager.tsx +208 -0
- package/src/expandable/WeekStrip.tsx +439 -0
- package/src/expandable/calendarCells.ts +155 -0
- package/src/expandable/geometry.ts +51 -0
- package/src/expandable/useExpandGesture.ts +147 -0
- package/src/expandable/useHorizontalPager.ts +116 -0
- package/src/index.ts +62 -0
- package/src/theme/ThemeProvider.tsx +85 -0
- package/src/theme/index.ts +18 -0
- package/src/theme/theme.ts +110 -0
- package/src/theme/tokens.ts +50 -0
- package/src/timeline/DayColumn.tsx +84 -0
- package/src/timeline/DayPager.tsx +295 -0
- package/src/timeline/EventBlock.tsx +76 -0
- package/src/timeline/GridLines.tsx +36 -0
- package/src/timeline/HourGrid.tsx +90 -0
- package/src/timeline/NowIndicator.tsx +123 -0
- package/src/timeline/TimelineDay.tsx +112 -0
- package/src/timeline/packEvents.ts +118 -0
- package/src/timeline/timelineGeometry.ts +23 -0
- package/src/timeline/timelineMath.ts +86 -0
- package/src/types.ts +252 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_index","require","_tokens","_react","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_reactNativeWorklets","_CalendarContext","_dateKey","_KitText","_motion","_calendarCells","_geometry","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AnimatedTextInput","Animated","createAnimatedComponent","TextInput","DOT_INSET","DAY_CELL","DOT_SIZE","DOT_TOP","DAY_TEXT_MARGIN_TOP","DAY_LINE_HEIGHT","DOT_MARGIN_TOP","FIRST_SHIFT","FIRST_OF_MONTH_TEXT_TOP","WeekRow","memo","week","width","lefts","labels","ordinals","monthShortLabels","dots","todayIndex","minIndex","maxIndex","onDayPress","styles","useKitStyles","makeStyles","start","cells","bandFrom","bandTo","col","length","left","columnEdge","right","push","jsx","View","style","band","first","undefined","tone","labelDisabled","labelToday","KitText","monthLabel","children","labelFirst","label","dot","dotFirst","backgroundColor","dotDefault","Pressable","row","top","WEEK_ROW_HEIGHT","onPress","columnAt","nativeEvent","locationX","pointerEvents","StyleSheet","absoluteFill","displayName","SelectionPill","index","fade","leavingFrom","widthSV","hasDot","firstOfMonth","frame","useAnimatedStyle","value","opacity","transform","translateX","cellLeft","translateY","Math","floor","content","labelProps","useAnimatedProps","text","defaultValue","dotStyle","pill","jsxs","pillContent","animatedProps","editable","caretHidden","contextMenuHidden","allowFontScaling","maxFontSizeMultiplier","underlineColorAndroid","accessible","importantForAccessibility","pillLabel","pillDot","WeekStripInner","animatedStyle","interactive","range","store","dateRef","setDate","reduceMotion","useCalendarContext","dayIndex","weekCount","days","initialIndex","useState","clampIndex","dayIndexOf","current","weekPos","useSharedValue","weekTarget","previous","useEffect","slide","kitDuration","ANIMATION","slow","crossfade","base","useAnimatedReaction","idx","last","far","abs","withTiming","duration","easing","KIT_EASING","withSequence","onSwipe","useCallback","target","ymdAt","swipe","useMemo","Gesture","Pan","enabled","activeOffsetX","failOffsetY","onEnd","dx","translationX","PAN_THRESHOLD","velocityX","SNAP_VELOCITY","runOnJS","map","d","rows","out","w","tapeStyle","GestureDetector","gesture","root","tape","height","WeekStrip","exports","colors","fonts","position","textAlign","fontFamily","regular","fontSize","FONT_SIZE","sm","lineHeight","borderRadius","RADIUS","full","create","overflow","surface","canvas","WEEK_ROW_V_MARGIN","color","accent","textMuted","MONTH_LABEL_TOP","xxs","MONTH_LABEL_LINE_HEIGHT","accentFill","absoluteFillObject","padding","includeFontPadding","onAccentFill"],"sourceRoot":"../../../src","sources":["expandable/WeekStrip.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.pageOfIndex = exports.columnEdge = exports.columnAt = exports.cellLefts = exports.cellLeft = exports.buildDots = exports.buildCalendarCells = void 0;
|
|
7
|
+
var _civil = require("../core/civil.js");
|
|
8
|
+
var _dateKey = require("../core/dateKey.js");
|
|
9
|
+
var _geometry = require("./geometry.js");
|
|
10
|
+
/**
|
|
11
|
+
* Per-range tables the week strip and month grid render from, built in ONE
|
|
12
|
+
* integer pass over the range (no `Date`, no string parsing) and read by index.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/** '1'…'31', so labels are shared strings rather than one allocation per day. */
|
|
16
|
+
const DAY_OF_MONTH_LABEL = Array.from({
|
|
17
|
+
length: 32
|
|
18
|
+
}, (_, i) => String(i));
|
|
19
|
+
/**
|
|
20
|
+
* Month pages span the SELECTABLE window only: the range is padded to whole
|
|
21
|
+
* weeks, and paging to a month with no selectable day would be a dead page.
|
|
22
|
+
*/
|
|
23
|
+
const buildCalendarCells = range => {
|
|
24
|
+
const {
|
|
25
|
+
days,
|
|
26
|
+
startEpochDay,
|
|
27
|
+
minIndex,
|
|
28
|
+
maxIndex
|
|
29
|
+
} = range;
|
|
30
|
+
const labels = new Array(days);
|
|
31
|
+
const ordinalByIndex = new Array(days);
|
|
32
|
+
const c0 = (0, _civil.civilOf)(startEpochDay);
|
|
33
|
+
let y = Math.floor(c0 / 10000);
|
|
34
|
+
let m = Math.floor(c0 / 100) % 100;
|
|
35
|
+
let d = c0 % 100;
|
|
36
|
+
let dim = (0, _civil.daysInMonth)(y, m);
|
|
37
|
+
for (let i = 0; i < days; i += 1) {
|
|
38
|
+
labels[i] = DAY_OF_MONTH_LABEL[d];
|
|
39
|
+
ordinalByIndex[i] = y * 12 + m - 1;
|
|
40
|
+
if (d === dim) {
|
|
41
|
+
d = 1;
|
|
42
|
+
if (m === 12) {
|
|
43
|
+
m = 1;
|
|
44
|
+
y += 1;
|
|
45
|
+
} else {
|
|
46
|
+
m += 1;
|
|
47
|
+
}
|
|
48
|
+
dim = (0, _civil.daysInMonth)(y, m);
|
|
49
|
+
} else {
|
|
50
|
+
d += 1;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
const firstOrdinal = ordinalByIndex[minIndex];
|
|
54
|
+
const count = ordinalByIndex[maxIndex] - firstOrdinal + 1;
|
|
55
|
+
const rawPageByIndex = new Array(days);
|
|
56
|
+
for (let i = 0; i < days; i += 1) {
|
|
57
|
+
const p = ordinalByIndex[i] - firstOrdinal;
|
|
58
|
+
rawPageByIndex[i] = p < 0 ? -1 : p >= count ? count : p;
|
|
59
|
+
}
|
|
60
|
+
const weeksByPage = new Array(count);
|
|
61
|
+
const monthStartByPage = new Array(count);
|
|
62
|
+
const gridStartByPage = new Array(count);
|
|
63
|
+
for (let p = 0; p < count; p += 1) {
|
|
64
|
+
const ordinal = firstOrdinal + p;
|
|
65
|
+
const py = Math.floor(ordinal / 12);
|
|
66
|
+
const pm = ordinal % 12 + 1;
|
|
67
|
+
const start = (0, _civil.epochDayOf)(py, pm, 1) - startEpochDay;
|
|
68
|
+
// Index 0 is a `firstDay`, so the week containing any index starts at the
|
|
69
|
+
// previous multiple of 7.
|
|
70
|
+
const gridStart = start - (start % 7 + 7) % 7;
|
|
71
|
+
monthStartByPage[p] = start;
|
|
72
|
+
gridStartByPage[p] = gridStart;
|
|
73
|
+
weeksByPage[p] = Math.ceil((start - gridStart + (0, _civil.daysInMonth)(py, pm)) / 7);
|
|
74
|
+
}
|
|
75
|
+
return {
|
|
76
|
+
labels,
|
|
77
|
+
ordinalByIndex,
|
|
78
|
+
pages: {
|
|
79
|
+
count,
|
|
80
|
+
weeksByPage,
|
|
81
|
+
monthStartByPage,
|
|
82
|
+
gridStartByPage,
|
|
83
|
+
rawPageByIndex
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
/** Page of a day index, clamped to `[0, count)` — for paging, never for the grid test. */
|
|
89
|
+
exports.buildCalendarCells = buildCalendarCells;
|
|
90
|
+
const pageOfIndex = (pages, idx) => {
|
|
91
|
+
'worklet';
|
|
92
|
+
|
|
93
|
+
const p = pages.rawPageByIndex[idx];
|
|
94
|
+
if (p === undefined) return 0;
|
|
95
|
+
return p < 0 ? 0 : p >= pages.count ? pages.count - 1 : p;
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Dot colour per index: `null` = no dot, `''` = marked with no colour given
|
|
100
|
+
* (render the default token), otherwise the caller's colour.
|
|
101
|
+
*/
|
|
102
|
+
exports.pageOfIndex = pageOfIndex;
|
|
103
|
+
const buildDots = (range, marked) => {
|
|
104
|
+
const out = new Array(range.days).fill(null);
|
|
105
|
+
if (!marked) return out;
|
|
106
|
+
for (const ymd in marked) {
|
|
107
|
+
const entry = marked[ymd];
|
|
108
|
+
if (!entry?.marked) continue;
|
|
109
|
+
const i = (0, _dateKey.dayIndexOf)(range, ymd);
|
|
110
|
+
if (i >= 0 && i < range.days) out[i] = entry.dotColor ?? '';
|
|
111
|
+
}
|
|
112
|
+
return out;
|
|
113
|
+
};
|
|
114
|
+
exports.buildDots = buildDots;
|
|
115
|
+
const columnWidth = width => {
|
|
116
|
+
'worklet';
|
|
117
|
+
|
|
118
|
+
return (width - _geometry.WEEK_ROW_H_PADDING * 2) / 7;
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
/** Left edge of weekday COLUMN `col` (0…7) — where the strip's month band starts and stops. */
|
|
122
|
+
const columnEdge = (width, col) => _geometry.WEEK_ROW_H_PADDING + col * columnWidth(width);
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Left edge of weekday column `col`'s CELL: seven `flex: 1` columns inside 15 px side
|
|
126
|
+
* padding, each centring a 32 px cell — the library's layout, so strip, grid and
|
|
127
|
+
* pill share one formula and cannot sit a pixel apart.
|
|
128
|
+
*/
|
|
129
|
+
exports.columnEdge = columnEdge;
|
|
130
|
+
const cellLeft = (width, col) => {
|
|
131
|
+
'worklet';
|
|
132
|
+
|
|
133
|
+
const column = columnWidth(width);
|
|
134
|
+
return _geometry.WEEK_ROW_H_PADDING + col * column + (column - _geometry.DAY_CELL) / 2;
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
/** The seven column lefts for one width — build once per width, not per cell. */
|
|
138
|
+
exports.cellLeft = cellLeft;
|
|
139
|
+
const cellLefts = width => {
|
|
140
|
+
const out = new Array(7);
|
|
141
|
+
for (let col = 0; col < 7; col += 1) out[col] = cellLeft(width, col);
|
|
142
|
+
return out;
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
/** Column under an x coordinate within a row — the inverse, for page-level taps. */
|
|
146
|
+
exports.cellLefts = cellLefts;
|
|
147
|
+
const columnAt = (width, x) => {
|
|
148
|
+
const col = Math.floor((x - _geometry.WEEK_ROW_H_PADDING) / columnWidth(width));
|
|
149
|
+
return col < 0 ? 0 : col > 6 ? 6 : col;
|
|
150
|
+
};
|
|
151
|
+
exports.columnAt = columnAt;
|
|
152
|
+
//# sourceMappingURL=calendarCells.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_civil","require","_dateKey","_geometry","DAY_OF_MONTH_LABEL","Array","from","length","_","i","String","buildCalendarCells","range","days","startEpochDay","minIndex","maxIndex","labels","ordinalByIndex","c0","civilOf","y","Math","floor","m","d","dim","daysInMonth","firstOrdinal","count","rawPageByIndex","p","weeksByPage","monthStartByPage","gridStartByPage","ordinal","py","pm","start","epochDayOf","gridStart","ceil","pages","exports","pageOfIndex","idx","undefined","buildDots","marked","out","fill","ymd","entry","dayIndexOf","dotColor","columnWidth","width","WEEK_ROW_H_PADDING","columnEdge","col","cellLeft","column","DAY_CELL","cellLefts","columnAt","x"],"sourceRoot":"../../../src","sources":["expandable/calendarCells.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.calendarHeights = exports.WEEK_ROW_V_MARGIN = exports.WEEK_ROW_H_PADDING = exports.WEEK_ROW_HEIGHT = exports.SNAP_VELOCITY = exports.PAN_THRESHOLD = exports.MONTH_LABEL_TOP = exports.MONTH_LABEL_LINE_HEIGHT = exports.MAX_WEEKS = exports.KNOB_WIDTH = exports.KNOB_HEIGHT = exports.KNOB_CONTAINER_HEIGHT = exports.FIRST_OF_MONTH_TEXT_TOP = exports.DOT_SIZE = exports.DOT_MARGIN_TOP = exports.DAY_TEXT_MARGIN_TOP = exports.DAY_LINE_HEIGHT = exports.DAY_CELL = void 0;
|
|
7
|
+
var _tokens = require("../theme/tokens.js");
|
|
8
|
+
/**
|
|
9
|
+
* The expandable calendar's geometry — numbers only, never a colour. Transcribed
|
|
10
|
+
* from `react-native-calendars`' style files (`calendar/day/basic/style.js`,
|
|
11
|
+
* `expandableCalendar/style.js`, `calendar/style.js`), then resized on
|
|
12
|
+
* 2026-09-11 toward the owner's Teams reference: a 40 px circle (was 32) with a
|
|
13
|
+
* month's short name above its 1st, in a row 2 px taller.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/** The selection circle and the tap target of a day. */
|
|
17
|
+
const DAY_CELL = exports.DAY_CELL = 40;
|
|
18
|
+
const WEEK_ROW_V_MARGIN = exports.WEEK_ROW_V_MARGIN = 4;
|
|
19
|
+
/** The cell plus its two margins — the library's `WEEK_HEIGHT` shape. */
|
|
20
|
+
const WEEK_ROW_HEIGHT = exports.WEEK_ROW_HEIGHT = DAY_CELL + WEEK_ROW_V_MARGIN * 2;
|
|
21
|
+
const WEEK_ROW_H_PADDING = exports.WEEK_ROW_H_PADDING = 15;
|
|
22
|
+
/**
|
|
23
|
+
* Declared, never measured: the strip positions its dots absolutely and the grid
|
|
24
|
+
* flows them under the text, and an undeclared line box put them ~1.6 px apart.
|
|
25
|
+
* Inter's line box is fontSize × 1.21.
|
|
26
|
+
*/
|
|
27
|
+
const DAY_LINE_HEIGHT = exports.DAY_LINE_HEIGHT = Math.round(_tokens.FONT_SIZE.sm * 1.21);
|
|
28
|
+
const DOT_SIZE = exports.DOT_SIZE = 4;
|
|
29
|
+
const DOT_MARGIN_TOP = exports.DOT_MARGIN_TOP = 1;
|
|
30
|
+
/** Number and dot centred in the cell. */
|
|
31
|
+
const DAY_TEXT_MARGIN_TOP = exports.DAY_TEXT_MARGIN_TOP = Math.round((DAY_CELL - DAY_LINE_HEIGHT - DOT_MARGIN_TOP - DOT_SIZE) / 2);
|
|
32
|
+
|
|
33
|
+
/** The strip's month name over a 1st, from the cell top; that cell's number and dot move under it. */
|
|
34
|
+
const MONTH_LABEL_TOP = exports.MONTH_LABEL_TOP = 1;
|
|
35
|
+
const MONTH_LABEL_LINE_HEIGHT = exports.MONTH_LABEL_LINE_HEIGHT = Math.round(_tokens.FONT_SIZE.xxs * 1.21);
|
|
36
|
+
const FIRST_OF_MONTH_TEXT_TOP = exports.FIRST_OF_MONTH_TEXT_TOP = MONTH_LABEL_TOP + MONTH_LABEL_LINE_HEIGHT;
|
|
37
|
+
const KNOB_CONTAINER_HEIGHT = exports.KNOB_CONTAINER_HEIGHT = 24;
|
|
38
|
+
const KNOB_WIDTH = exports.KNOB_WIDTH = 40;
|
|
39
|
+
const KNOB_HEIGHT = exports.KNOB_HEIGHT = 4;
|
|
40
|
+
|
|
41
|
+
/** The month layer is laid out once at the largest month's height. */
|
|
42
|
+
const MAX_WEEKS = exports.MAX_WEEKS = 6;
|
|
43
|
+
|
|
44
|
+
/** px a drag must travel before release commits to the other end. */
|
|
45
|
+
const PAN_THRESHOLD = exports.PAN_THRESHOLD = 30;
|
|
46
|
+
/** px/s: a faster flick decides the direction regardless of distance. */
|
|
47
|
+
const SNAP_VELOCITY = exports.SNAP_VELOCITY = 300;
|
|
48
|
+
|
|
49
|
+
/** Closed (one week), open on a `weeks`-row month, and the distance between; knob band included. */
|
|
50
|
+
const calendarHeights = weeks => {
|
|
51
|
+
'worklet';
|
|
52
|
+
|
|
53
|
+
const closed = WEEK_ROW_HEIGHT + KNOB_CONTAINER_HEIGHT;
|
|
54
|
+
const travel = WEEK_ROW_HEIGHT * (weeks - 1);
|
|
55
|
+
return {
|
|
56
|
+
closed,
|
|
57
|
+
full: closed + travel,
|
|
58
|
+
travel
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
exports.calendarHeights = calendarHeights;
|
|
62
|
+
//# sourceMappingURL=geometry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_tokens","require","DAY_CELL","exports","WEEK_ROW_V_MARGIN","WEEK_ROW_HEIGHT","WEEK_ROW_H_PADDING","DAY_LINE_HEIGHT","Math","round","FONT_SIZE","sm","DOT_SIZE","DOT_MARGIN_TOP","DAY_TEXT_MARGIN_TOP","MONTH_LABEL_TOP","MONTH_LABEL_LINE_HEIGHT","xxs","FIRST_OF_MONTH_TEXT_TOP","KNOB_CONTAINER_HEIGHT","KNOB_WIDTH","KNOB_HEIGHT","MAX_WEEKS","PAN_THRESHOLD","SNAP_VELOCITY","calendarHeights","weeks","closed","travel","full"],"sourceRoot":"../../../src","sources":["expandable/geometry.ts"],"mappings":";;;;;;AAQA,IAAAA,OAAA,GAAAC,OAAA;AARA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACO,MAAMC,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG,EAAE;AACnB,MAAME,iBAAiB,GAAAD,OAAA,CAAAC,iBAAA,GAAG,CAAC;AAClC;AACO,MAAMC,eAAe,GAAAF,OAAA,CAAAE,eAAA,GAAGH,QAAQ,GAAGE,iBAAiB,GAAG,CAAC;AACxD,MAAME,kBAAkB,GAAAH,OAAA,CAAAG,kBAAA,GAAG,EAAE;AACpC;AACA;AACA;AACA;AACA;AACO,MAAMC,eAAe,GAAAJ,OAAA,CAAAI,eAAA,GAAGC,IAAI,CAACC,KAAK,CAACC,iBAAS,CAACC,EAAE,GAAG,IAAI,CAAC;AACvD,MAAMC,QAAQ,GAAAT,OAAA,CAAAS,QAAA,GAAG,CAAC;AAClB,MAAMC,cAAc,GAAAV,OAAA,CAAAU,cAAA,GAAG,CAAC;AAC/B;AACO,MAAMC,mBAAmB,GAAAX,OAAA,CAAAW,mBAAA,GAAGN,IAAI,CAACC,KAAK,CAAC,CAACP,QAAQ,GAAGK,eAAe,GAAGM,cAAc,GAAGD,QAAQ,IAAI,CAAC,CAAC;;AAE3G;AACO,MAAMG,eAAe,GAAAZ,OAAA,CAAAY,eAAA,GAAG,CAAC;AACzB,MAAMC,uBAAuB,GAAAb,OAAA,CAAAa,uBAAA,GAAGR,IAAI,CAACC,KAAK,CAACC,iBAAS,CAACO,GAAG,GAAG,IAAI,CAAC;AAChE,MAAMC,uBAAuB,GAAAf,OAAA,CAAAe,uBAAA,GAAGH,eAAe,GAAGC,uBAAuB;AAEzE,MAAMG,qBAAqB,GAAAhB,OAAA,CAAAgB,qBAAA,GAAG,EAAE;AAChC,MAAMC,UAAU,GAAAjB,OAAA,CAAAiB,UAAA,GAAG,EAAE;AACrB,MAAMC,WAAW,GAAAlB,OAAA,CAAAkB,WAAA,GAAG,CAAC;;AAE5B;AACO,MAAMC,SAAS,GAAAnB,OAAA,CAAAmB,SAAA,GAAG,CAAC;;AAE1B;AACO,MAAMC,aAAa,GAAApB,OAAA,CAAAoB,aAAA,GAAG,EAAE;AAC/B;AACO,MAAMC,aAAa,GAAArB,OAAA,CAAAqB,aAAA,GAAG,GAAG;;AAEhC;AACO,MAAMC,eAAe,GAAIC,KAAa,IAAK;EAChD,SAAS;;EACT,MAAMC,MAAM,GAAGtB,eAAe,GAAGc,qBAAqB;EACtD,MAAMS,MAAM,GAAGvB,eAAe,IAAIqB,KAAK,GAAG,CAAC,CAAC;EAC5C,OAAO;IAAEC,MAAM;IAAEE,IAAI,EAAEF,MAAM,GAAGC,MAAM;IAAEA;EAAO,CAAC;AAClD,CAAC;AAACzB,OAAA,CAAAsB,eAAA,GAAAA,eAAA","ignoreList":[]}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useExpandGesture = exports.snap = void 0;
|
|
7
|
+
var _tokens = require("../theme/tokens.js");
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
var _reactNativeGestureHandler = require("react-native-gesture-handler");
|
|
10
|
+
var _reactNativeReanimated = require("react-native-reanimated");
|
|
11
|
+
var _reactNativeWorklets = require("react-native-worklets");
|
|
12
|
+
var _motion = require("../core/motion.js");
|
|
13
|
+
var _worklets = require("../core/worklets.js");
|
|
14
|
+
var _geometry = require("./geometry.js");
|
|
15
|
+
/**
|
|
16
|
+
* Drag the calendar open and closed. `progress` moves (0 closed, 1 open); every
|
|
17
|
+
* layer reads it as a transform or opacity. Follows `ChartSheet.tsx`: remember
|
|
18
|
+
* where this drag began, clamp while dragging, land on an end. `activeOffsetY(±8)`
|
|
19
|
+
* and `failOffsetX(±12)` settle the axis against the horizontal pagers inside the
|
|
20
|
+
* same detector within the first few pixels.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
const finish = (lastReported, target, onToggled) => {
|
|
24
|
+
'worklet';
|
|
25
|
+
|
|
26
|
+
if (lastReported.value === target) return;
|
|
27
|
+
lastReported.value = target;
|
|
28
|
+
(0, _reactNativeWorklets.runOnJS)(onToggled)(target === 1);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Snap to an end and report a CHANGE of end once it lands. Module scope, so the
|
|
33
|
+
* plugin workletizes it unconditionally. The duration scales with the distance
|
|
34
|
+
* left, so a release two pixels from open does not take the full animation.
|
|
35
|
+
*/
|
|
36
|
+
const snap = (progress, lastReported, target, reduceMotion, onToggled) => {
|
|
37
|
+
'worklet';
|
|
38
|
+
|
|
39
|
+
if (progress.value === target) {
|
|
40
|
+
finish(lastReported, target, onToggled);
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
const duration = reduceMotion ? 0 : (0, _worklets.clampNum)(Math.abs(target - progress.value) * _tokens.ANIMATION.slow, _tokens.ANIMATION.base, _tokens.ANIMATION.slow);
|
|
44
|
+
progress.value = (0, _reactNativeReanimated.withTiming)(target, {
|
|
45
|
+
duration,
|
|
46
|
+
easing: _motion.KIT_EASING
|
|
47
|
+
}, done => {
|
|
48
|
+
'worklet';
|
|
49
|
+
|
|
50
|
+
if (done) finish(lastReported, target, onToggled);
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
exports.snap = snap;
|
|
54
|
+
const useExpandGesture = ({
|
|
55
|
+
progress,
|
|
56
|
+
travel,
|
|
57
|
+
enabled,
|
|
58
|
+
openThreshold = _geometry.PAN_THRESHOLD,
|
|
59
|
+
closeThreshold = _geometry.PAN_THRESHOLD,
|
|
60
|
+
reduceMotion,
|
|
61
|
+
initialOpen,
|
|
62
|
+
onToggled
|
|
63
|
+
}) => {
|
|
64
|
+
const start = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
65
|
+
/** 1 once `onEnd` ran for this gesture, so `onFinalize` does not snap twice. */
|
|
66
|
+
const ended = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
67
|
+
/** The end last reported: `onToggled` fires on a change only. */
|
|
68
|
+
const lastReported = (0, _reactNativeReanimated.useSharedValue)(initialOpen ? 1 : 0);
|
|
69
|
+
const pan = (0, _react.useMemo)(() => _reactNativeGestureHandler.Gesture.Pan().enabled(enabled).activeOffsetY([-8, 8]).failOffsetX([-12, 12]).onBegin(() => {
|
|
70
|
+
'worklet';
|
|
71
|
+
|
|
72
|
+
// Catch the calendar mid-snap rather than letting it finish under the finger.
|
|
73
|
+
(0, _reactNativeReanimated.cancelAnimation)(progress);
|
|
74
|
+
start.value = progress.value;
|
|
75
|
+
ended.value = 0;
|
|
76
|
+
}).onUpdate(e => {
|
|
77
|
+
'worklet';
|
|
78
|
+
|
|
79
|
+
// Closed and dragging up: hold at 0, which reads as the end of the travel.
|
|
80
|
+
if (start.value === 0 && e.translationY < 0) {
|
|
81
|
+
progress.value = 0;
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
progress.value = (0, _worklets.clampNum)(start.value + e.translationY / travel.value, 0, 1);
|
|
85
|
+
}).onEnd(e => {
|
|
86
|
+
'worklet';
|
|
87
|
+
|
|
88
|
+
ended.value = 1;
|
|
89
|
+
const deltaPx = (progress.value - start.value) * travel.value;
|
|
90
|
+
let target;
|
|
91
|
+
if (Math.abs(e.velocityY) > _geometry.SNAP_VELOCITY) {
|
|
92
|
+
target = e.velocityY > 0 ? 1 : 0;
|
|
93
|
+
} else if (start.value < 0.5) {
|
|
94
|
+
target = deltaPx > openThreshold ? 1 : 0;
|
|
95
|
+
} else {
|
|
96
|
+
target = -deltaPx > closeThreshold ? 0 : 1;
|
|
97
|
+
}
|
|
98
|
+
snap(progress, lastReported, target, reduceMotion, onToggled);
|
|
99
|
+
}).onFinalize(() => {
|
|
100
|
+
'worklet';
|
|
101
|
+
|
|
102
|
+
if (ended.value === 1) return;
|
|
103
|
+
// Cancelled before activating (a day tap, a pager claiming the touch):
|
|
104
|
+
// land on the nearer end rather than freezing where `onBegin` caught it.
|
|
105
|
+
snap(progress, lastReported, progress.value >= 0.5 ? 1 : 0, reduceMotion, onToggled);
|
|
106
|
+
}),
|
|
107
|
+
// Shared values are stable for the hook's life; only these rebuild the gesture.
|
|
108
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
109
|
+
[closeThreshold, enabled, onToggled, openThreshold, reduceMotion]);
|
|
110
|
+
|
|
111
|
+
/** `undefined` toggles. Returns the end moved TO — the library's `toggleCalendarPosition` contract. */
|
|
112
|
+
const snapTo = (0, _react.useCallback)(target => {
|
|
113
|
+
const to = target ?? (progress.value >= 0.5 ? 0 : 1);
|
|
114
|
+
(0, _reactNativeWorklets.runOnUI)(snap)(progress, lastReported, to, reduceMotion, onToggled);
|
|
115
|
+
return to === 1;
|
|
116
|
+
}, [lastReported, onToggled, progress, reduceMotion]);
|
|
117
|
+
return {
|
|
118
|
+
pan,
|
|
119
|
+
snapTo,
|
|
120
|
+
lastReported
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
exports.useExpandGesture = useExpandGesture;
|
|
124
|
+
//# sourceMappingURL=useExpandGesture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_tokens","require","_react","_reactNativeGestureHandler","_reactNativeReanimated","_reactNativeWorklets","_motion","_worklets","_geometry","finish","lastReported","target","onToggled","value","runOnJS","snap","progress","reduceMotion","duration","clampNum","Math","abs","ANIMATION","slow","base","withTiming","easing","KIT_EASING","done","exports","useExpandGesture","travel","enabled","openThreshold","PAN_THRESHOLD","closeThreshold","initialOpen","start","useSharedValue","ended","pan","useMemo","Gesture","Pan","activeOffsetY","failOffsetX","onBegin","cancelAnimation","onUpdate","e","translationY","onEnd","deltaPx","velocityY","SNAP_VELOCITY","onFinalize","snapTo","useCallback","to","runOnUI"],"sourceRoot":"../../../src","sources":["expandable/useExpandGesture.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useHorizontalPager = exports.PAGER_SCROLL_THROTTLE = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNativeReanimated = require("react-native-reanimated");
|
|
9
|
+
var _reactNativeWorklets = require("react-native-worklets");
|
|
10
|
+
var _CalendarContext = require("../core/CalendarContext.js");
|
|
11
|
+
/**
|
|
12
|
+
* The month pager's horizontal paging over the kit's index space. The week strip
|
|
13
|
+
* shared it until it became a vertical tape (2026-09-11).
|
|
14
|
+
*
|
|
15
|
+
* A programmatic move pages to its day instantly; moves stamped with the pager's
|
|
16
|
+
* own `origin` are ignored. A doctor's swipe commits at momentum end, and only
|
|
17
|
+
* when it left its start page.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
/** The pager reads only drag begin and momentum end; the scroll events between are waste. */
|
|
21
|
+
const PAGER_SCROLL_THROTTLE = exports.PAGER_SCROLL_THROTTLE = 100;
|
|
22
|
+
/** A new width moved every page: land back on the one that was showing. */
|
|
23
|
+
const reland = (ref, widthSV, page, ready, width) => {
|
|
24
|
+
'worklet';
|
|
25
|
+
|
|
26
|
+
widthSV.value = width;
|
|
27
|
+
if (ready.value === 1) (0, _reactNativeReanimated.scrollTo)(ref, page.value * width, 0, false);
|
|
28
|
+
};
|
|
29
|
+
const useHorizontalPager = ({
|
|
30
|
+
width,
|
|
31
|
+
initialPage,
|
|
32
|
+
origin,
|
|
33
|
+
pageOf,
|
|
34
|
+
page: callerPage,
|
|
35
|
+
onSettled
|
|
36
|
+
}) => {
|
|
37
|
+
const {
|
|
38
|
+
store
|
|
39
|
+
} = (0, _CalendarContext.useCalendarContext)();
|
|
40
|
+
const ref = (0, _reactNativeReanimated.useAnimatedRef)();
|
|
41
|
+
const widthSV = (0, _reactNativeReanimated.useSharedValue)(width);
|
|
42
|
+
const ownPage = (0, _reactNativeReanimated.useSharedValue)(initialPage);
|
|
43
|
+
const page = callerPage ?? ownPage;
|
|
44
|
+
const dragStartPage = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
45
|
+
const userDriven = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
46
|
+
const ready = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
47
|
+
|
|
48
|
+
// Read once: the native ScrollView re-applies `contentOffset` whenever its value
|
|
49
|
+
// changes, which would throw the pager back to its mount page on a width change.
|
|
50
|
+
const [contentOffset] = (0, _react.useState)(() => ({
|
|
51
|
+
x: initialPage * width,
|
|
52
|
+
y: 0
|
|
53
|
+
}));
|
|
54
|
+
const laidOutWidth = (0, _react.useRef)(width);
|
|
55
|
+
(0, _react.useEffect)(() => {
|
|
56
|
+
if (laidOutWidth.current === width) return;
|
|
57
|
+
laidOutWidth.current = width;
|
|
58
|
+
(0, _reactNativeWorklets.runOnUI)(reland)(ref, widthSV, page, ready, width);
|
|
59
|
+
}, [page, ready, ref, width, widthSV]);
|
|
60
|
+
const onLayout = (0, _react.useCallback)(() => {
|
|
61
|
+
ready.value = 1;
|
|
62
|
+
}, [ready]);
|
|
63
|
+
const move = store.move;
|
|
64
|
+
(0, _reactNativeReanimated.useAnimatedReaction)(() => move.value.seq, (seq, prev) => {
|
|
65
|
+
if (prev === null || seq === prev) return;
|
|
66
|
+
const m = move.value;
|
|
67
|
+
if (m.origin === origin) return;
|
|
68
|
+
const target = pageOf(m.idx);
|
|
69
|
+
if (page.value !== target) page.value = target;
|
|
70
|
+
if (ready.value === 1) {
|
|
71
|
+
userDriven.value = 0;
|
|
72
|
+
(0, _reactNativeReanimated.scrollTo)(ref, target * widthSV.value, 0, false);
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
const onScroll = (0, _reactNativeReanimated.useAnimatedScrollHandler)({
|
|
76
|
+
onBeginDrag: () => {
|
|
77
|
+
userDriven.value = 1;
|
|
78
|
+
dragStartPage.value = page.value;
|
|
79
|
+
},
|
|
80
|
+
onMomentumEnd: e => {
|
|
81
|
+
const landed = Math.round(e.contentOffset.x / widthSV.value);
|
|
82
|
+
const wasUser = userDriven.value === 1;
|
|
83
|
+
userDriven.value = 0;
|
|
84
|
+
if (page.value !== landed) page.value = landed;
|
|
85
|
+
if (wasUser && landed !== dragStartPage.value) (0, _reactNativeWorklets.runOnJS)(onSettled)(landed);
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
return {
|
|
89
|
+
ref,
|
|
90
|
+
onScroll,
|
|
91
|
+
onLayout,
|
|
92
|
+
contentOffset,
|
|
93
|
+
widthSV
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
exports.useHorizontalPager = useHorizontalPager;
|
|
97
|
+
//# sourceMappingURL=useHorizontalPager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNativeReanimated","_reactNativeWorklets","_CalendarContext","PAGER_SCROLL_THROTTLE","exports","reland","ref","widthSV","page","ready","width","value","scrollTo","useHorizontalPager","initialPage","origin","pageOf","callerPage","onSettled","store","useCalendarContext","useAnimatedRef","useSharedValue","ownPage","dragStartPage","userDriven","contentOffset","useState","x","y","laidOutWidth","useRef","useEffect","current","runOnUI","onLayout","useCallback","move","useAnimatedReaction","seq","prev","m","target","idx","onScroll","useAnimatedScrollHandler","onBeginDrag","onMomentumEnd","e","landed","Math","round","wasUser","runOnJS"],"sourceRoot":"../../../src","sources":["expandable/useHorizontalPager.ts"],"mappings":"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","ignoreList":[]}
|