react-native-ll-calendar 0.1.1 → 0.1.3

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/README.md CHANGED
@@ -1,9 +1,97 @@
1
1
  # react-native-ll-calendar
2
2
 
3
- ReactNative Calendar Library
3
+ A horizontally scrollable monthly calendar component for React Native with event support.
4
4
 
5
5
  <img src="assets/screen-shot.png" width="320px">
6
6
 
7
+ ## Installation
8
+
9
+ ```sh
10
+ npm install react-native-ll-calendar
11
+ ```
12
+
13
+ or
14
+
15
+ ```sh
16
+ yarn add react-native-ll-calendar
17
+ ```
18
+
19
+ ## Usage
20
+
21
+ ```tsx
22
+ import { MonthCalendar, CalendarEvent } from 'react-native-ll-calendar';
23
+
24
+ const events: CalendarEvent[] = [
25
+ {
26
+ id: '1',
27
+ title: 'Meeting',
28
+ start: new Date(2025, 9, 5),
29
+ end: new Date(2025, 9, 5),
30
+ backgroundColor: '#ff6b6b',
31
+ borderColor: '#e55353',
32
+ color: '#0e0e0e',
33
+ },
34
+ {
35
+ id: '2',
36
+ title: 'Conference',
37
+ start: new Date(2025, 9, 10),
38
+ end: new Date(2025, 9, 12),
39
+ backgroundColor: '#4ecdc4',
40
+ borderColor: '#45b7aa',
41
+ color: '#0e0e0e',
42
+ },
43
+ ];
44
+
45
+ function App() {
46
+ const [date, setDate] = useState(new Date());
47
+
48
+ return (
49
+ <MonthCalendar
50
+ defaultDate={date}
51
+ weekStartsOn={1}
52
+ onChangeDate={(newDate) => setDate(newDate)}
53
+ events={events}
54
+ onPressEvent={(event) => console.log('Event pressed:', event.title)}
55
+ onPressCell={(date) => console.log('Cell pressed:', date)}
56
+ />
57
+ );
58
+ }
59
+ ```
60
+
61
+ ## API
62
+
63
+ ### MonthCalendar Props
64
+
65
+ | Prop | Type | Required | Default | Description |
66
+ |------|------|----------|---------|-------------|
67
+ | `defaultDate` | `Date` | Yes | - | Initial date to display |
68
+ | `weekStartsOn` | `0 \| 1` | No | `0` | Week start day (0 = Sunday, 1 = Monday) |
69
+ | `onChangeDate` | `(date: Date) => void` | No | - | Callback when month changes |
70
+ | `events` | `CalendarEvent[]` | Yes | - | Array of calendar events |
71
+ | `onPressEvent` | `(event: CalendarEvent) => void` | No | - | Callback when event is pressed |
72
+ | `onPressCell` | `(date: Date) => void` | No | - | Callback when date cell is pressed |
73
+
74
+ ### CalendarEvent
75
+
76
+ | Property | Type | Required | Description |
77
+ |----------|------|----------|-------------|
78
+ | `id` | `string` | Yes | Unique identifier |
79
+ | `title` | `string` | Yes | Event title |
80
+ | `start` | `Date` | Yes | Start date |
81
+ | `end` | `Date` | Yes | End date |
82
+ | `backgroundColor` | `string` | Yes | Background color |
83
+ | `borderColor` | `string` | Yes | Border color |
84
+ | `color` | `string` | Yes | Text color |
85
+
86
+ ## Features
87
+
88
+ - Horizontally scrollable month view
89
+ - Multi-day event support
90
+ - Customizable event colors
91
+ - Event and date cell press handlers
92
+ - Configurable week start day (Sunday or Monday)
93
+ - Spans 10 years before and after the default date
94
+
7
95
  ## License
8
96
 
9
97
  MIT
@@ -58,14 +58,16 @@ export const MonthCalendar = props => {
58
58
  decelerationRate: 'fast',
59
59
  data: panels,
60
60
  renderItem: ({
61
- item
61
+ item,
62
+ index
62
63
  }) => {
63
64
  return /*#__PURE__*/_jsx(MonthCalendarViewItem, {
64
65
  month: item,
65
66
  weekStartsOn: weekStartsOn,
66
67
  events: events,
67
68
  onPressEvent: onPressEvent,
68
- onPressCell: onPressCell
69
+ onPressCell: onPressCell,
70
+ flatListIndex: index
69
71
  });
70
72
  },
71
73
  showsHorizontalScrollIndicator: false,
@@ -1 +1 @@
1
- {"version":3,"names":["useWindowDimensions","FlatList","dayjs","useState","MonthCalendarViewItem","jsx","_jsx","HALF_PANEL_LENGTH","MonthCalendar","props","defaultDate","weekStartsOn","onChangeDate","events","onPressEvent","onPressCell","dateState","_activeIndex","setActiveIndex","defaultDateDjs","startOfDefaultDateDjs","startOf","prevPanels","Array","from","length","_","i","subtract","format","nextPanels","add","panels","width","horizontal","pagingEnabled","getItemLayout","_data","index","offset","onMomentumScrollEnd","e","scrollX","nativeEvent","contentOffset","x","newIndex","Math","round","month","newDate","Date","initialScrollIndex","decelerationRate","data","renderItem","item","showsHorizontalScrollIndicator","scrollEnabled","windowSize","initialNumToRender","maxToRenderPerBatch","removeClippedSubviews"],"sourceRoot":"../../../../src","sources":["calendar/month-calendar/MonthCalendar.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useWindowDimensions","FlatList","dayjs","useState","MonthCalendarViewItem","jsx","_jsx","HALF_PANEL_LENGTH","MonthCalendar","props","defaultDate","weekStartsOn","onChangeDate","events","onPressEvent","onPressCell","dateState","_activeIndex","setActiveIndex","defaultDateDjs","startOfDefaultDateDjs","startOf","prevPanels","Array","from","length","_","i","subtract","format","nextPanels","add","panels","width","horizontal","pagingEnabled","getItemLayout","_data","index","offset","onMomentumScrollEnd","e","scrollX","nativeEvent","contentOffset","x","newIndex","Math","round","month","newDate","Date","initialScrollIndex","decelerationRate","data","renderItem","item","flatListIndex","showsHorizontalScrollIndicator","scrollEnabled","windowSize","initialNumToRender","maxToRenderPerBatch","removeClippedSubviews"],"sourceRoot":"../../../../src","sources":["calendar/month-calendar/MonthCalendar.tsx"],"mappings":"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","ignoreList":[]}
@@ -14,7 +14,8 @@ export const MonthCalendarViewItem = props => {
14
14
  weekStartsOn,
15
15
  events,
16
16
  onPressEvent,
17
- onPressCell
17
+ onPressCell,
18
+ flatListIndex
18
19
  } = props;
19
20
  const {
20
21
  width
@@ -50,7 +51,8 @@ export const MonthCalendarViewItem = props => {
50
51
  });
51
52
  return /*#__PURE__*/_jsxs(View, {
52
53
  style: [styles.container, {
53
- width
54
+ width,
55
+ zIndex: flatListIndex
54
56
  }],
55
57
  children: [/*#__PURE__*/_jsx(View, {
56
58
  style: styles.monthContainer,
@@ -1 +1 @@
1
- {"version":3,"names":["dayjs","StyleSheet","Text","View","useWindowDimensions","MonthCalendarWeekRow","MonthCalendarEventPosition","monthlyEndDate","monthlyStartDate","useEvents","CELL_BORDER_WIDTH","jsx","_jsx","jsxs","_jsxs","MonthCalendarViewItem","props","month","weekStartsOn","events","onPressEvent","onPressCell","width","eventPosition","date","Date","dateDjs","startDate","endDate","endDjs","weeks","currentDate","isBefore","week","Array","from","length","_","i","add","push","eventsGroupByWeekId","style","styles","container","children","monthContainer","monthText","format","dates","isWeekdayHeader","map","index","firstDayOfWeek","undefined","weekId","weekEvents","create","borderWidth","borderColor","alignSelf","padding","backgroundColor","textAlign"],"sourceRoot":"../../../../../src","sources":["calendar/month-calendar/view/MonthCalendarViewItem.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["dayjs","StyleSheet","Text","View","useWindowDimensions","MonthCalendarWeekRow","MonthCalendarEventPosition","monthlyEndDate","monthlyStartDate","useEvents","CELL_BORDER_WIDTH","jsx","_jsx","jsxs","_jsxs","MonthCalendarViewItem","props","month","weekStartsOn","events","onPressEvent","onPressCell","flatListIndex","width","eventPosition","date","Date","dateDjs","startDate","endDate","endDjs","weeks","currentDate","isBefore","week","Array","from","length","_","i","add","push","eventsGroupByWeekId","style","styles","container","zIndex","children","monthContainer","monthText","format","dates","isWeekdayHeader","map","index","firstDayOfWeek","undefined","weekId","weekEvents","create","borderWidth","borderColor","alignSelf","padding","backgroundColor","textAlign"],"sourceRoot":"../../../../../src","sources":["calendar/month-calendar/view/MonthCalendarViewItem.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"MonthCalendar.d.ts","sourceRoot":"","sources":["../../../../../src/calendar/month-calendar/MonthCalendar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAK9E,eAAO,MAAM,aAAa,GAAI,OAAO;IACnC,WAAW,EAAE,IAAI,CAAC;IAClB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACpC,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CACpC,4CA8EA,CAAC"}
1
+ {"version":3,"file":"MonthCalendar.d.ts","sourceRoot":"","sources":["../../../../../src/calendar/month-calendar/MonthCalendar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAK9E,eAAO,MAAM,aAAa,GAAI,OAAO;IACnC,WAAW,EAAE,IAAI,CAAC;IAClB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACpC,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CACpC,4CA+EA,CAAC"}
@@ -5,5 +5,6 @@ export declare const MonthCalendarViewItem: (props: {
5
5
  events: CalendarEvent[];
6
6
  onPressEvent?: (event: CalendarEvent) => void;
7
7
  onPressCell?: (date: Date) => void;
8
+ flatListIndex: number;
8
9
  }) => import("react/jsx-runtime").JSX.Element;
9
10
  //# sourceMappingURL=MonthCalendarViewItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MonthCalendarViewItem.d.ts","sourceRoot":"","sources":["../../../../../../src/calendar/month-calendar/view/MonthCalendarViewItem.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACb,MAAM,+BAA+B,CAAC;AAMvC,eAAO,MAAM,qBAAqB,GAAI,OAAO;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CACpC,4CAoDA,CAAC"}
1
+ {"version":3,"file":"MonthCalendarViewItem.d.ts","sourceRoot":"","sources":["../../../../../../src/calendar/month-calendar/view/MonthCalendarViewItem.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACb,MAAM,+BAA+B,CAAC;AAMvC,eAAO,MAAM,qBAAqB,GAAI,OAAO;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC,aAAa,EAAE,MAAM,CAAC;CACvB,4CA2DA,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-ll-calendar",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "ReactNative Calendar Library",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -72,7 +72,7 @@ export const MonthCalendar = (props: {
72
72
  initialScrollIndex={HALF_PANEL_LENGTH}
73
73
  decelerationRate={'fast'}
74
74
  data={panels}
75
- renderItem={({ item }) => {
75
+ renderItem={({ item, index }) => {
76
76
  return (
77
77
  <MonthCalendarViewItem
78
78
  month={item}
@@ -80,6 +80,7 @@ export const MonthCalendar = (props: {
80
80
  events={events}
81
81
  onPressEvent={onPressEvent}
82
82
  onPressCell={onPressCell}
83
+ flatListIndex={index}
83
84
  />
84
85
  );
85
86
  }}
@@ -16,8 +16,16 @@ export const MonthCalendarViewItem = (props: {
16
16
  events: CalendarEvent[];
17
17
  onPressEvent?: (event: CalendarEvent) => void;
18
18
  onPressCell?: (date: Date) => void;
19
+ flatListIndex: number;
19
20
  }) => {
20
- const { month, weekStartsOn, events, onPressEvent, onPressCell } = props;
21
+ const {
22
+ month,
23
+ weekStartsOn,
24
+ events,
25
+ onPressEvent,
26
+ onPressCell,
27
+ flatListIndex,
28
+ } = props;
21
29
  const { width } = useWindowDimensions();
22
30
  const eventPosition = new MonthCalendarEventPosition();
23
31
 
@@ -39,7 +47,7 @@ export const MonthCalendarViewItem = (props: {
39
47
  const { eventsGroupByWeekId } = useEvents({ events, weekStartsOn });
40
48
 
41
49
  return (
42
- <View style={[styles.container, { width }]}>
50
+ <View style={[styles.container, { width, zIndex: flatListIndex }]}>
43
51
  <View style={styles.monthContainer}>
44
52
  <Text style={styles.monthText}>{dateDjs.format('YYYY/MM')}</Text>
45
53
  </View>