@sunsama/event-calendar 0.2.3 → 0.2.5

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.
Files changed (44) hide show
  1. package/lib/commonjs/hooks/use-events.js +79 -0
  2. package/lib/commonjs/hooks/use-events.js.map +1 -0
  3. package/lib/commonjs/hooks/use-is-editing.js +6 -3
  4. package/lib/commonjs/hooks/use-is-editing.js.map +1 -1
  5. package/lib/commonjs/index.js +65 -35
  6. package/lib/commonjs/index.js.map +1 -1
  7. package/lib/module/hooks/use-events.js +72 -0
  8. package/lib/module/hooks/use-events.js.map +1 -0
  9. package/lib/module/hooks/use-is-editing.js +5 -2
  10. package/lib/module/hooks/use-is-editing.js.map +1 -1
  11. package/lib/module/index.js +65 -35
  12. package/lib/module/index.js.map +1 -1
  13. package/lib/typescript/commonjs/hooks/use-events.d.ts +31 -0
  14. package/lib/typescript/commonjs/hooks/use-events.d.ts.map +1 -0
  15. package/lib/typescript/commonjs/hooks/use-is-editing.d.ts.map +1 -1
  16. package/lib/typescript/commonjs/index.d.ts +4 -1
  17. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  18. package/lib/typescript/module/hooks/use-events.d.ts +31 -0
  19. package/lib/typescript/module/hooks/use-events.d.ts.map +1 -0
  20. package/lib/typescript/module/hooks/use-is-editing.d.ts.map +1 -1
  21. package/lib/typescript/module/index.d.ts +4 -1
  22. package/lib/typescript/module/index.d.ts.map +1 -1
  23. package/package.json +1 -1
  24. package/src/hooks/use-events.tsx +112 -0
  25. package/src/hooks/use-is-editing.tsx +9 -2
  26. package/src/index.tsx +92 -44
  27. package/lib/commonjs/hooks/use-cloned-events.js +0 -25
  28. package/lib/commonjs/hooks/use-cloned-events.js.map +0 -1
  29. package/lib/commonjs/hooks/use-events-layout.js +0 -34
  30. package/lib/commonjs/hooks/use-events-layout.js.map +0 -1
  31. package/lib/module/hooks/use-cloned-events.js +0 -21
  32. package/lib/module/hooks/use-cloned-events.js.map +0 -1
  33. package/lib/module/hooks/use-events-layout.js +0 -29
  34. package/lib/module/hooks/use-events-layout.js.map +0 -1
  35. package/lib/typescript/commonjs/hooks/use-cloned-events.d.ts +0 -11
  36. package/lib/typescript/commonjs/hooks/use-cloned-events.d.ts.map +0 -1
  37. package/lib/typescript/commonjs/hooks/use-events-layout.d.ts +0 -13
  38. package/lib/typescript/commonjs/hooks/use-events-layout.d.ts.map +0 -1
  39. package/lib/typescript/module/hooks/use-cloned-events.d.ts +0 -11
  40. package/lib/typescript/module/hooks/use-cloned-events.d.ts.map +0 -1
  41. package/lib/typescript/module/hooks/use-events-layout.d.ts +0 -13
  42. package/lib/typescript/module/hooks/use-events-layout.d.ts.map +0 -1
  43. package/src/hooks/use-cloned-events.ts +0 -26
  44. package/src/hooks/use-events-layout.ts +0 -55
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useEvents = exports.EventsProvider = void 0;
7
+ var _react = require("react");
8
+ var _lodash = require("lodash");
9
+ var _generateEventLayouts = _interopRequireDefault(require("../utils/generate-event-layouts.js"));
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ // Context to store both cloned events & event layouts
13
+ const EventsContext = /*#__PURE__*/(0, _react.createContext)(null);
14
+
15
+ /**
16
+ * Provider that manages both cloned events & event layouts independently.
17
+ */
18
+ const EventsProvider = ({
19
+ children,
20
+ initialProps,
21
+ updateLocalStateAfterEdit = true
22
+ }) => {
23
+ // Cloned Events State
24
+ const [clonedEvents, setClonedEvents] = (0, _react.useState)(initialProps.events);
25
+
26
+ // Event Layouts State
27
+ const [eventsLayout, setEventsLayout] = (0, _react.useState)({
28
+ allDayEventsLayout: [],
29
+ partDayEventsLayout: []
30
+ });
31
+
32
+ // Function to update cloned events
33
+ const updateClonedEvents = (0, _react.useCallback)(events => {
34
+ setClonedEvents(updateLocalStateAfterEdit ? (0, _lodash.cloneDeep)(events) : events);
35
+ }, [updateLocalStateAfterEdit]);
36
+
37
+ // Function to update event layouts
38
+ const updateEventsLayout = props => {
39
+ setEventsLayout((0, _generateEventLayouts.default)(props)[props.startCalendarDate] || {
40
+ partDayEventsLayout: [],
41
+ allDayEventsLayout: []
42
+ });
43
+ };
44
+
45
+ // Update both states when initialProps change
46
+ (0, _react.useEffect)(() => {
47
+ updateClonedEvents(initialProps.events);
48
+ updateEventsLayout(initialProps);
49
+ }, [initialProps, updateClonedEvents]);
50
+ (0, _react.useEffect)(() => {
51
+ updateEventsLayout({
52
+ ...initialProps,
53
+ events: clonedEvents
54
+ });
55
+ }, [initialProps, clonedEvents]);
56
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(EventsContext.Provider, {
57
+ value: {
58
+ clonedEvents,
59
+ updateClonedEvents: setClonedEvents,
60
+ eventsLayout,
61
+ updateEventsLayout
62
+ },
63
+ children: children
64
+ });
65
+ };
66
+
67
+ /**
68
+ * Hook to access cloned events and event layouts.
69
+ */
70
+ exports.EventsProvider = EventsProvider;
71
+ const useEvents = () => {
72
+ const context = (0, _react.useContext)(EventsContext);
73
+ if (!context) {
74
+ throw new Error("useEvents must be used within an EventsProvider");
75
+ }
76
+ return context;
77
+ };
78
+ exports.useEvents = useEvents;
79
+ //# sourceMappingURL=use-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_lodash","_generateEventLayouts","_interopRequireDefault","_jsxRuntime","e","__esModule","default","EventsContext","createContext","EventsProvider","children","initialProps","updateLocalStateAfterEdit","clonedEvents","setClonedEvents","useState","events","eventsLayout","setEventsLayout","allDayEventsLayout","partDayEventsLayout","updateClonedEvents","useCallback","cloneDeep","updateEventsLayout","props","generateEventLayouts","startCalendarDate","useEffect","jsx","Provider","value","exports","useEvents","context","useContext","Error"],"sourceRoot":"../../../src","sources":["hooks/use-events.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AASA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,qBAAA,GAAAC,sBAAA,CAAAH,OAAA;AAAmE,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAwBnE;AACA,MAAMG,aAAa,gBAAG,IAAAC,oBAAa,EAA2B,IAAI,CAAC;;AAEnE;AACA;AACA;AACO,MAAMC,cAAc,GAAGA,CAAC;EAC7BC,QAAQ;EACRC,YAAY;EACZC,yBAAyB,GAAG;AAK9B,CAAC,KAAK;EACJ;EACA,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAC,eAAQ,EAC9CJ,YAAY,CAACK,MACf,CAAC;;EAED;EACA,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAH,eAAQ,EAA0B;IACxEI,kBAAkB,EAAE,EAAE;IACtBC,mBAAmB,EAAE;EACvB,CAAC,CAAC;;EAEF;EACA,MAAMC,kBAAkB,GAAG,IAAAC,kBAAW,EACnCN,MAAuB,IAAK;IAC3BF,eAAe,CAACF,yBAAyB,GAAG,IAAAW,iBAAS,EAACP,MAAM,CAAC,GAAGA,MAAM,CAAC;EACzE,CAAC,EACD,CAACJ,yBAAyB,CAC5B,CAAC;;EAED;EACA,MAAMY,kBAAkB,GAAIC,KAAkB,IAAK;IACjDP,eAAe,CACb,IAAAQ,6BAAoB,EAACD,KAAK,CAAC,CAACA,KAAK,CAACE,iBAAiB,CAAC,IAAI;MACtDP,mBAAmB,EAAE,EAAE;MACvBD,kBAAkB,EAAE;IACtB,CACF,CAAC;EACH,CAAC;;EAED;EACA,IAAAS,gBAAS,EAAC,MAAM;IACdP,kBAAkB,CAACV,YAAY,CAACK,MAAM,CAAC;IACvCQ,kBAAkB,CAACb,YAAY,CAAC;EAClC,CAAC,EAAE,CAACA,YAAY,EAAEU,kBAAkB,CAAC,CAAC;EAEtC,IAAAO,gBAAS,EAAC,MAAM;IACdJ,kBAAkB,CAAC;MAAE,GAAGb,YAAY;MAAEK,MAAM,EAAEH;IAAa,CAAC,CAAC;EAC/D,CAAC,EAAE,CAACF,YAAY,EAAEE,YAAY,CAAC,CAAC;EAEhC,oBACE,IAAAV,WAAA,CAAA0B,GAAA,EAACtB,aAAa,CAACuB,QAAQ;IACrBC,KAAK,EAAE;MACLlB,YAAY;MACZQ,kBAAkB,EAAEP,eAAe;MACnCG,YAAY;MACZO;IACF,CAAE;IAAAd,QAAA,EAEDA;EAAQ,CACa,CAAC;AAE7B,CAAC;;AAED;AACA;AACA;AAFAsB,OAAA,CAAAvB,cAAA,GAAAA,cAAA;AAGO,MAAMwB,SAAS,GAAGA,CAAA,KAAM;EAC7B,MAAMC,OAAO,GAAG,IAAAC,iBAAU,EAAC5B,aAAa,CAAC;EACzC,IAAI,CAAC2B,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,iDAAiD,CAAC;EACpE;EACA,OAAOF,OAAO;AAChB,CAAC;AAACF,OAAA,CAAAC,SAAA,GAAAA,SAAA","ignoreList":[]}
@@ -8,8 +8,8 @@ var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNativeReanimated = require("react-native-reanimated");
9
9
  var _globals = require("../utils/globals.js");
10
10
  var _lodash = require("lodash");
11
- var _useClonedEvents = require("../hooks/use-cloned-events.js");
12
11
  var _types = require("../types.js");
12
+ var _useEvents = require("./use-events.js");
13
13
  var _jsxRuntime = require("react/jsx-runtime");
14
14
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
15
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -32,6 +32,9 @@ const IsEditingProvider = ({
32
32
  onEventEdit,
33
33
  updateLocalStateAfterEdit
34
34
  } = (0, _react.useContext)(_globals.ConfigProvider);
35
+ const {
36
+ updateClonedEvents
37
+ } = (0, _useEvents.useEvents)();
35
38
  const [isEditing, baseSetIsEditing] = (0, _react.useState)(null);
36
39
  const currentY = (0, _reactNativeReanimated.useSharedValue)(0);
37
40
  const setIsEditing = (0, _react.useCallback)((newValue, updatedTimes) => {
@@ -50,7 +53,7 @@ const IsEditingProvider = ({
50
53
  });
51
54
  } else if (isEditing) {
52
55
  if (updateLocalStateAfterEdit) {
53
- (0, _useClonedEvents.updateClonedEvents)(events => {
56
+ updateClonedEvents(events => {
54
57
  if (!updatedTimes) {
55
58
  // This means we removed the event
56
59
  return events.filter(event => event.id !== isEditing.event.id);
@@ -69,7 +72,7 @@ const IsEditingProvider = ({
69
72
  });
70
73
  }
71
74
  baseSetIsEditing(newValue);
72
- }, [canEditEvent, isEditing, onEventEdit, updateLocalStateAfterEdit]);
75
+ }, [canEditEvent, isEditing, onEventEdit, updateClonedEvents, updateLocalStateAfterEdit]);
73
76
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(IsEditing.Provider, {
74
77
  value: {
75
78
  currentY,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeReanimated","_globals","_lodash","_useClonedEvents","_types","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","IsEditing","createContext","undefined","useIsEditing","context","useContext","Error","exports","IsEditingProvider","children","canEditEvent","onEventEdit","updateLocalStateAfterEdit","ConfigProvider","isEditing","baseSetIsEditing","useState","currentY","useSharedValue","setIsEditing","useCallback","newValue","updatedTimes","canEditEventParsed","isFunction","event","status","EditStatus","Start","updateClonedEvents","events","filter","id","map","start","updatedStart","end","updatedEnd","Finish","jsx","Provider","value"],"sourceRoot":"../../../src","sources":["hooks/use-is-editing.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAOA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAA8D,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAO,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAc9D,MAAMW,SAAS,gBAAG,IAAAC,oBAAa,EAA4BC,SAAS,CAAC;AAE9D,MAAMC,YAAY,GAAGA,CAAA,KAAM;EAChC,MAAMC,OAAO,GAAG,IAAAC,iBAAU,EAACL,SAAS,CAAC;EAErC,IAAI,CAACI,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,sDAAsD,CAAC;EACzE;EACA,OAAOF,OAAO;AAChB,CAAC;;AAED;AAAAG,OAAA,CAAAJ,YAAA,GAAAA,YAAA;AACO,MAAMK,iBAAiB,GAAGA,CAAC;EAAEC;AAAkC,CAAC,KAAK;EAC1E,MAAM;IAAEC,YAAY;IAAEC,WAAW;IAAEC;EAA0B,CAAC,GAC5D,IAAAP,iBAAU,EAACQ,uBAAc,CAAC;EAC5B,MAAM,CAACC,SAAS,EAAEC,gBAAgB,CAAC,GAAG,IAAAC,eAAQ,EAC5C,IACF,CAAC;EACD,MAAMC,QAAQ,GAAG,IAAAC,qCAAc,EAAC,CAAC,CAAC;EAElC,MAAMC,YAAY,GAAG,IAAAC,kBAAW,EAC9B,CACEC,QAAuC,EACvCC,YAGC,KACE;IACH,IAAID,QAAQ,EAAE;MACZ,IAAIP,SAAS,EAAE;QACb;QACA;MACF;MAEA,MAAMS,kBAAkB,GAAG,IAAAC,kBAAU,EAACd,YAAY,CAAC,GAC/CA,YAAY,CAACW,QAAQ,CAACI,KAAK,CAAC,GAC5Bf,YAAY;MAEhB,IAAI,CAACa,kBAAkB,EAAE;QACvB;MACF;MAEAZ,WAAW,GAAG;QACZc,KAAK,EAAEJ,QAAQ,CAACI,KAAK;QACrBC,MAAM,EAAEC,iBAAU,CAACC;MACrB,CAAC,CAAC;IACJ,CAAC,MAAM,IAAId,SAAS,EAAE;MACpB,IAAIF,yBAAyB,EAAE;QAC7B,IAAAiB,mCAAkB,EAAEC,MAAM,IAAK;UAC7B,IAAI,CAACR,YAAY,EAAE;YACjB;YACA,OAAOQ,MAAM,CAACC,MAAM,CAAEN,KAAK,IAAKA,KAAK,CAACO,EAAE,KAAKlB,SAAS,CAACW,KAAK,CAACO,EAAE,CAAC;UAClE;UAEA,OAAOF,MAAM,CAACG,GAAG,CAAER,KAAK,IACtBA,KAAK,CAACO,EAAE,KAAKlB,SAAS,CAACW,KAAK,CAACO,EAAE,GAC3B;YACE,GAAGP,KAAK;YACRS,KAAK,EAAEZ,YAAY,EAAEa,YAAY;YACjCC,GAAG,EAAEd,YAAY,EAAEe;UACrB,CAAC,GACDZ,KACN,CAAC;QACH,CAAC,CAAC;MACJ;MAEAd,WAAW,GAAG;QACZc,KAAK,EAAEX,SAAS,CAACW,KAAK;QACtBC,MAAM,EAAEC,iBAAU,CAACW,MAAM;QACzBhB;MACF,CAAC,CAAC;IACJ;IAEAP,gBAAgB,CAACM,QAAQ,CAAC;EAC5B,CAAC,EACD,CAACX,YAAY,EAAEI,SAAS,EAAEH,WAAW,EAAEC,yBAAyB,CAClE,CAAC;EAED,oBACE,IAAAjC,WAAA,CAAA4D,GAAA,EAACvC,SAAS,CAACwC,QAAQ;IAACC,KAAK,EAAE;MAAExB,QAAQ;MAAEH,SAAS;MAAEK;IAAa,CAAE;IAAAV,QAAA,EAC9DA;EAAQ,CACS,CAAC;AAEzB,CAAC;AAACF,OAAA,CAAAC,iBAAA,GAAAA,iBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeReanimated","_globals","_lodash","_types","_useEvents","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","IsEditing","createContext","undefined","useIsEditing","context","useContext","Error","exports","IsEditingProvider","children","canEditEvent","onEventEdit","updateLocalStateAfterEdit","ConfigProvider","updateClonedEvents","useEvents","isEditing","baseSetIsEditing","useState","currentY","useSharedValue","setIsEditing","useCallback","newValue","updatedTimes","canEditEventParsed","isFunction","event","status","EditStatus","Start","events","filter","id","map","start","updatedStart","end","updatedEnd","Finish","jsx","Provider","value"],"sourceRoot":"../../../src","sources":["hooks/use-is-editing.tsx"],"mappings":"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","ignoreList":[]}
@@ -11,12 +11,11 @@ var _reactNativeGestureHandler = require("react-native-gesture-handler");
11
11
  var _reactNativeReanimated = require("react-native-reanimated");
12
12
  var _zoomProvider = _interopRequireDefault(require("./components/zoom-provider.js"));
13
13
  var _timedEvents = _interopRequireDefault(require("./components/timed-events.js"));
14
- var _useEventsLayout = _interopRequireDefault(require("./hooks/use-events-layout.js"));
15
14
  var _globals = require("./utils/globals.js");
16
15
  var _momentTimezone = _interopRequireDefault(require("moment-timezone"));
17
16
  var _react = require("react");
18
17
  var _useIsEditing = require("./hooks/use-is-editing.js");
19
- var _useClonedEvents = _interopRequireDefault(require("./hooks/use-cloned-events.js"));
18
+ var _useEvents = require("./hooks/use-events.js");
20
19
  var _jsxRuntime = require("react/jsx-runtime");
21
20
  var _types = require("./types.js");
22
21
  Object.keys(_types).forEach(function (key) {
@@ -31,52 +30,41 @@ Object.keys(_types).forEach(function (key) {
31
30
  });
32
31
  });
33
32
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
34
- const EventCalendar = ({
35
- events,
36
- timeFormat = "HH:mm",
37
- dayDate,
38
- theme,
39
- initialZoomLevel = _globals.DEFAULT_MINUTE_HEIGHT,
40
- onCreateEvent,
41
- timezone = "UTC",
42
- renderEvent,
43
- onPressEvent,
44
- userCalendarId = "",
45
- showTimeIndicator,
46
- maxAllDayEvents = 2,
47
- canCreateEvents = true,
48
- renderNewEventContainer,
33
+ const EventCalendarContent = ({
34
+ canCreateEvents,
35
+ canEditEvent,
49
36
  fiveMinuteInterval,
50
- canEditEvent = true,
37
+ initialZoomLevel,
38
+ maxAllDayEvents,
39
+ onCreateEvent,
51
40
  onEventEdit,
41
+ onPressEvent,
52
42
  renderDragBars,
53
- updateLocalStateAfterEdit = true,
43
+ renderEvent,
44
+ renderNewEventContainer,
45
+ showTimeIndicator,
46
+ theme,
47
+ timeFormat,
48
+ timezone,
49
+ updateLocalStateAfterEdit,
54
50
  extraTimedComponents,
55
- onZoomChange
51
+ onZoomChange,
52
+ startCalendarDate
56
53
  }) => {
57
- const startCalendarDate = (0, _react.useMemo)(() => _momentTimezone.default.tz(dayDate, timezone).startOf("day"), [dayDate, timezone]);
58
- const clonedEvents = (0, _useClonedEvents.default)(events, updateLocalStateAfterEdit);
59
- const memoizedProps = (0, _react.useMemo)(() => ({
60
- startCalendarDate: startCalendarDate.format("YYYY-MM-DD"),
61
- calendarViewInterval: "1day",
62
- endCalendarDate: startCalendarDate.format("YYYY-MM-DD"),
63
- userCalendarId,
64
- timezone,
65
- startDayOfWeekOffset: 0,
66
- events: clonedEvents
67
- }), [startCalendarDate, userCalendarId, timezone, clonedEvents]);
68
- const layout = (0, _useEventsLayout.default)(memoizedProps);
69
54
  const zoomLevel = (0, _reactNativeReanimated.useSharedValue)(initialZoomLevel);
70
55
  const createY = (0, _reactNativeReanimated.useSharedValue)(-1);
71
56
  const maximumHour = (0, _reactNativeReanimated.useSharedValue)(0);
72
57
  const refNewEvent = (0, _react.useRef)(null);
58
+ const {
59
+ eventsLayout
60
+ } = (0, _useEvents.useEvents)();
73
61
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
74
62
  style: [styles.container, theme?.container],
75
63
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_globals.ConfigProvider.Provider, {
76
64
  value: {
77
65
  dayDate: startCalendarDate,
78
66
  timeFormat,
79
- layout,
67
+ layout: eventsLayout,
80
68
  zoomLevel,
81
69
  createY,
82
70
  initialZoomLevel,
@@ -93,9 +81,9 @@ const EventCalendar = ({
93
81
  onEventEdit,
94
82
  renderDragBars,
95
83
  maximumHour,
96
- updateLocalStateAfterEdit,
97
84
  extraTimedComponents,
98
- onZoomChange
85
+ onZoomChange,
86
+ updateLocalStateAfterEdit
99
87
  },
100
88
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_allDayEvents.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.ScrollView, {
101
89
  bounces: false,
@@ -115,6 +103,48 @@ const EventCalendar = ({
115
103
  })
116
104
  });
117
105
  };
106
+
107
+ /**
108
+ * Wraps `EventCalendarContent` inside `ClonedEventsProvider` to manage cloned events independently.
109
+ */
110
+ const EventCalendar = ({
111
+ timeFormat = "HH:mm",
112
+ dayDate,
113
+ events,
114
+ initialZoomLevel = _globals.DEFAULT_MINUTE_HEIGHT,
115
+ timezone = "UTC",
116
+ userCalendarId = "",
117
+ maxAllDayEvents = 2,
118
+ updateLocalStateAfterEdit = true,
119
+ canCreateEvents = true,
120
+ canEditEvent = true,
121
+ ...props
122
+ }) => {
123
+ const startCalendarDate = (0, _react.useMemo)(() => _momentTimezone.default.tz(dayDate, timezone).startOf("day"), [dayDate, timezone]);
124
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_useEvents.EventsProvider, {
125
+ initialProps: {
126
+ startCalendarDate: startCalendarDate.format("YYYY-MM-DD"),
127
+ calendarViewInterval: "1day",
128
+ endCalendarDate: startCalendarDate.format("YYYY-MM-DD"),
129
+ userCalendarId,
130
+ timezone,
131
+ startDayOfWeekOffset: 0,
132
+ events
133
+ },
134
+ updateLocalStateAfterEdit: !!updateLocalStateAfterEdit,
135
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(EventCalendarContent, {
136
+ ...props,
137
+ timeFormat: timeFormat,
138
+ initialZoomLevel: initialZoomLevel,
139
+ timezone: timezone,
140
+ maxAllDayEvents: maxAllDayEvents,
141
+ updateLocalStateAfterEdit: updateLocalStateAfterEdit,
142
+ startCalendarDate: startCalendarDate,
143
+ canCreateEvents: canCreateEvents,
144
+ canEditEvent: canEditEvent
145
+ })
146
+ });
147
+ };
118
148
  const styles = _reactNative.StyleSheet.create({
119
149
  container: {
120
150
  flex: 1,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_allDayEvents","_interopRequireDefault","_reactNativeGestureHandler","_reactNativeReanimated","_zoomProvider","_timedEvents","_useEventsLayout","_globals","_momentTimezone","_react","_useIsEditing","_useClonedEvents","_jsxRuntime","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","e","__esModule","default","EventCalendar","events","timeFormat","dayDate","theme","initialZoomLevel","DEFAULT_MINUTE_HEIGHT","onCreateEvent","timezone","renderEvent","onPressEvent","userCalendarId","showTimeIndicator","maxAllDayEvents","canCreateEvents","renderNewEventContainer","fiveMinuteInterval","canEditEvent","onEventEdit","renderDragBars","updateLocalStateAfterEdit","extraTimedComponents","onZoomChange","startCalendarDate","useMemo","moment","tz","startOf","clonedEvents","useClonedEvents","memoizedProps","format","calendarViewInterval","endCalendarDate","startDayOfWeekOffset","layout","useEventsLayout","zoomLevel","useSharedValue","createY","maximumHour","refNewEvent","useRef","jsx","View","style","styles","container","children","jsxs","ConfigProvider","Provider","value","ScrollView","bounces","keyboardShouldPersistTaps","scrollView","IsEditingProvider","ref","borderContainer","StyleSheet","create","flex","marginTop","borderTopWidth","hairlineWidth","borderTopColor","overflow","paddingTop","backgroundColor","position","height","left","top","width","borderLeftWidth","borderColor","_default"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_allDayEvents","_interopRequireDefault","_reactNativeGestureHandler","_reactNativeReanimated","_zoomProvider","_timedEvents","_globals","_momentTimezone","_react","_useIsEditing","_useEvents","_jsxRuntime","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","e","__esModule","default","EventCalendarContent","canCreateEvents","canEditEvent","fiveMinuteInterval","initialZoomLevel","maxAllDayEvents","onCreateEvent","onEventEdit","onPressEvent","renderDragBars","renderEvent","renderNewEventContainer","showTimeIndicator","theme","timeFormat","timezone","updateLocalStateAfterEdit","extraTimedComponents","onZoomChange","startCalendarDate","zoomLevel","useSharedValue","createY","maximumHour","refNewEvent","useRef","eventsLayout","useEvents","jsx","View","style","styles","container","children","jsxs","ConfigProvider","Provider","value","dayDate","layout","ScrollView","bounces","keyboardShouldPersistTaps","scrollView","IsEditingProvider","ref","borderContainer","EventCalendar","events","DEFAULT_MINUTE_HEIGHT","userCalendarId","props","useMemo","moment","tz","startOf","EventsProvider","initialProps","format","calendarViewInterval","endCalendarDate","startDayOfWeekOffset","StyleSheet","create","flex","marginTop","borderTopWidth","hairlineWidth","borderTopColor","overflow","paddingTop","backgroundColor","position","height","left","top","width","borderLeftWidth","borderColor","_default"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ import { createContext, useCallback, useContext, useEffect, useState } from "react";
4
+ import { cloneDeep } from "lodash";
5
+ import generateEventLayouts from "../utils/generate-event-layouts.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ // Context to store both cloned events & event layouts
8
+ const EventsContext = /*#__PURE__*/createContext(null);
9
+
10
+ /**
11
+ * Provider that manages both cloned events & event layouts independently.
12
+ */
13
+ export const EventsProvider = ({
14
+ children,
15
+ initialProps,
16
+ updateLocalStateAfterEdit = true
17
+ }) => {
18
+ // Cloned Events State
19
+ const [clonedEvents, setClonedEvents] = useState(initialProps.events);
20
+
21
+ // Event Layouts State
22
+ const [eventsLayout, setEventsLayout] = useState({
23
+ allDayEventsLayout: [],
24
+ partDayEventsLayout: []
25
+ });
26
+
27
+ // Function to update cloned events
28
+ const updateClonedEvents = useCallback(events => {
29
+ setClonedEvents(updateLocalStateAfterEdit ? cloneDeep(events) : events);
30
+ }, [updateLocalStateAfterEdit]);
31
+
32
+ // Function to update event layouts
33
+ const updateEventsLayout = props => {
34
+ setEventsLayout(generateEventLayouts(props)[props.startCalendarDate] || {
35
+ partDayEventsLayout: [],
36
+ allDayEventsLayout: []
37
+ });
38
+ };
39
+
40
+ // Update both states when initialProps change
41
+ useEffect(() => {
42
+ updateClonedEvents(initialProps.events);
43
+ updateEventsLayout(initialProps);
44
+ }, [initialProps, updateClonedEvents]);
45
+ useEffect(() => {
46
+ updateEventsLayout({
47
+ ...initialProps,
48
+ events: clonedEvents
49
+ });
50
+ }, [initialProps, clonedEvents]);
51
+ return /*#__PURE__*/_jsx(EventsContext.Provider, {
52
+ value: {
53
+ clonedEvents,
54
+ updateClonedEvents: setClonedEvents,
55
+ eventsLayout,
56
+ updateEventsLayout
57
+ },
58
+ children: children
59
+ });
60
+ };
61
+
62
+ /**
63
+ * Hook to access cloned events and event layouts.
64
+ */
65
+ export const useEvents = () => {
66
+ const context = useContext(EventsContext);
67
+ if (!context) {
68
+ throw new Error("useEvents must be used within an EventsProvider");
69
+ }
70
+ return context;
71
+ };
72
+ //# sourceMappingURL=use-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","useCallback","useContext","useEffect","useState","cloneDeep","generateEventLayouts","jsx","_jsx","EventsContext","EventsProvider","children","initialProps","updateLocalStateAfterEdit","clonedEvents","setClonedEvents","events","eventsLayout","setEventsLayout","allDayEventsLayout","partDayEventsLayout","updateClonedEvents","updateEventsLayout","props","startCalendarDate","Provider","value","useEvents","context","Error"],"sourceRoot":"../../../src","sources":["hooks/use-events.tsx"],"mappings":";;AAAA,SACEA,aAAa,EAGbC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,QAAQ,QACH,OAAO;AACd,SAASC,SAAS,QAAQ,QAAQ;AAClC,OAAOC,oBAAoB,MAAM,oCAAiC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAwBnE;AACA,MAAMC,aAAa,gBAAGT,aAAa,CAA2B,IAAI,CAAC;;AAEnE;AACA;AACA;AACA,OAAO,MAAMU,cAAc,GAAGA,CAAC;EAC7BC,QAAQ;EACRC,YAAY;EACZC,yBAAyB,GAAG;AAK9B,CAAC,KAAK;EACJ;EACA,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGX,QAAQ,CAC9CQ,YAAY,CAACI,MACf,CAAC;;EAED;EACA,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGd,QAAQ,CAA0B;IACxEe,kBAAkB,EAAE,EAAE;IACtBC,mBAAmB,EAAE;EACvB,CAAC,CAAC;;EAEF;EACA,MAAMC,kBAAkB,GAAGpB,WAAW,CACnCe,MAAuB,IAAK;IAC3BD,eAAe,CAACF,yBAAyB,GAAGR,SAAS,CAACW,MAAM,CAAC,GAAGA,MAAM,CAAC;EACzE,CAAC,EACD,CAACH,yBAAyB,CAC5B,CAAC;;EAED;EACA,MAAMS,kBAAkB,GAAIC,KAAkB,IAAK;IACjDL,eAAe,CACbZ,oBAAoB,CAACiB,KAAK,CAAC,CAACA,KAAK,CAACC,iBAAiB,CAAC,IAAI;MACtDJ,mBAAmB,EAAE,EAAE;MACvBD,kBAAkB,EAAE;IACtB,CACF,CAAC;EACH,CAAC;;EAED;EACAhB,SAAS,CAAC,MAAM;IACdkB,kBAAkB,CAACT,YAAY,CAACI,MAAM,CAAC;IACvCM,kBAAkB,CAACV,YAAY,CAAC;EAClC,CAAC,EAAE,CAACA,YAAY,EAAES,kBAAkB,CAAC,CAAC;EAEtClB,SAAS,CAAC,MAAM;IACdmB,kBAAkB,CAAC;MAAE,GAAGV,YAAY;MAAEI,MAAM,EAAEF;IAAa,CAAC,CAAC;EAC/D,CAAC,EAAE,CAACF,YAAY,EAAEE,YAAY,CAAC,CAAC;EAEhC,oBACEN,IAAA,CAACC,aAAa,CAACgB,QAAQ;IACrBC,KAAK,EAAE;MACLZ,YAAY;MACZO,kBAAkB,EAAEN,eAAe;MACnCE,YAAY;MACZK;IACF,CAAE;IAAAX,QAAA,EAEDA;EAAQ,CACa,CAAC;AAE7B,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMgB,SAAS,GAAGA,CAAA,KAAM;EAC7B,MAAMC,OAAO,GAAG1B,UAAU,CAACO,aAAa,CAAC;EACzC,IAAI,CAACmB,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,iDAAiD,CAAC;EACpE;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
@@ -4,8 +4,8 @@ import React, { createContext, useCallback, useContext, useState } from "react";
4
4
  import { useSharedValue } from "react-native-reanimated";
5
5
  import { ConfigProvider } from "../utils/globals.js";
6
6
  import { isFunction } from "lodash";
7
- import { updateClonedEvents } from "../hooks/use-cloned-events.js";
8
7
  import { EditStatus } from "../types.js";
8
+ import { useEvents } from "./use-events.js";
9
9
  import { jsx as _jsx } from "react/jsx-runtime";
10
10
  const IsEditing = /*#__PURE__*/createContext(undefined);
11
11
  export const useIsEditing = () => {
@@ -25,6 +25,9 @@ export const IsEditingProvider = ({
25
25
  onEventEdit,
26
26
  updateLocalStateAfterEdit
27
27
  } = useContext(ConfigProvider);
28
+ const {
29
+ updateClonedEvents
30
+ } = useEvents();
28
31
  const [isEditing, baseSetIsEditing] = useState(null);
29
32
  const currentY = useSharedValue(0);
30
33
  const setIsEditing = useCallback((newValue, updatedTimes) => {
@@ -62,7 +65,7 @@ export const IsEditingProvider = ({
62
65
  });
63
66
  }
64
67
  baseSetIsEditing(newValue);
65
- }, [canEditEvent, isEditing, onEventEdit, updateLocalStateAfterEdit]);
68
+ }, [canEditEvent, isEditing, onEventEdit, updateClonedEvents, updateLocalStateAfterEdit]);
66
69
  return /*#__PURE__*/_jsx(IsEditing.Provider, {
67
70
  value: {
68
71
  currentY,
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","useCallback","useContext","useState","useSharedValue","ConfigProvider","isFunction","updateClonedEvents","EditStatus","jsx","_jsx","IsEditing","undefined","useIsEditing","context","Error","IsEditingProvider","children","canEditEvent","onEventEdit","updateLocalStateAfterEdit","isEditing","baseSetIsEditing","currentY","setIsEditing","newValue","updatedTimes","canEditEventParsed","event","status","Start","events","filter","id","map","start","updatedStart","end","updatedEnd","Finish","Provider","value"],"sourceRoot":"../../../src","sources":["hooks/use-is-editing.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IACVC,aAAa,EAEbC,WAAW,EACXC,UAAU,EACVC,QAAQ,QACH,OAAO;AACd,SAAsBC,cAAc,QAAQ,yBAAyB;AACrE,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,UAAU,QAAQ,QAAQ;AACnC,SAASC,kBAAkB,QAAQ,+BAA4B;AAC/D,SAASC,UAAU,QAAgC,aAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAc9D,MAAMC,SAAS,gBAAGX,aAAa,CAA4BY,SAAS,CAAC;AAErE,OAAO,MAAMC,YAAY,GAAGA,CAAA,KAAM;EAChC,MAAMC,OAAO,GAAGZ,UAAU,CAACS,SAAS,CAAC;EAErC,IAAI,CAACG,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,sDAAsD,CAAC;EACzE;EACA,OAAOD,OAAO;AAChB,CAAC;;AAED;AACA,OAAO,MAAME,iBAAiB,GAAGA,CAAC;EAAEC;AAAkC,CAAC,KAAK;EAC1E,MAAM;IAAEC,YAAY;IAAEC,WAAW;IAAEC;EAA0B,CAAC,GAC5DlB,UAAU,CAACG,cAAc,CAAC;EAC5B,MAAM,CAACgB,SAAS,EAAEC,gBAAgB,CAAC,GAAGnB,QAAQ,CAC5C,IACF,CAAC;EACD,MAAMoB,QAAQ,GAAGnB,cAAc,CAAC,CAAC,CAAC;EAElC,MAAMoB,YAAY,GAAGvB,WAAW,CAC9B,CACEwB,QAAuC,EACvCC,YAGC,KACE;IACH,IAAID,QAAQ,EAAE;MACZ,IAAIJ,SAAS,EAAE;QACb;QACA;MACF;MAEA,MAAMM,kBAAkB,GAAGrB,UAAU,CAACY,YAAY,CAAC,GAC/CA,YAAY,CAACO,QAAQ,CAACG,KAAK,CAAC,GAC5BV,YAAY;MAEhB,IAAI,CAACS,kBAAkB,EAAE;QACvB;MACF;MAEAR,WAAW,GAAG;QACZS,KAAK,EAAEH,QAAQ,CAACG,KAAK;QACrBC,MAAM,EAAErB,UAAU,CAACsB;MACrB,CAAC,CAAC;IACJ,CAAC,MAAM,IAAIT,SAAS,EAAE;MACpB,IAAID,yBAAyB,EAAE;QAC7Bb,kBAAkB,CAAEwB,MAAM,IAAK;UAC7B,IAAI,CAACL,YAAY,EAAE;YACjB;YACA,OAAOK,MAAM,CAACC,MAAM,CAAEJ,KAAK,IAAKA,KAAK,CAACK,EAAE,KAAKZ,SAAS,CAACO,KAAK,CAACK,EAAE,CAAC;UAClE;UAEA,OAAOF,MAAM,CAACG,GAAG,CAAEN,KAAK,IACtBA,KAAK,CAACK,EAAE,KAAKZ,SAAS,CAACO,KAAK,CAACK,EAAE,GAC3B;YACE,GAAGL,KAAK;YACRO,KAAK,EAAET,YAAY,EAAEU,YAAY;YACjCC,GAAG,EAAEX,YAAY,EAAEY;UACrB,CAAC,GACDV,KACN,CAAC;QACH,CAAC,CAAC;MACJ;MAEAT,WAAW,GAAG;QACZS,KAAK,EAAEP,SAAS,CAACO,KAAK;QACtBC,MAAM,EAAErB,UAAU,CAAC+B,MAAM;QACzBb;MACF,CAAC,CAAC;IACJ;IAEAJ,gBAAgB,CAACG,QAAQ,CAAC;EAC5B,CAAC,EACD,CAACP,YAAY,EAAEG,SAAS,EAAEF,WAAW,EAAEC,yBAAyB,CAClE,CAAC;EAED,oBACEV,IAAA,CAACC,SAAS,CAAC6B,QAAQ;IAACC,KAAK,EAAE;MAAElB,QAAQ;MAAEF,SAAS;MAAEG;IAAa,CAAE;IAAAP,QAAA,EAC9DA;EAAQ,CACS,CAAC;AAEzB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useCallback","useContext","useState","useSharedValue","ConfigProvider","isFunction","EditStatus","useEvents","jsx","_jsx","IsEditing","undefined","useIsEditing","context","Error","IsEditingProvider","children","canEditEvent","onEventEdit","updateLocalStateAfterEdit","updateClonedEvents","isEditing","baseSetIsEditing","currentY","setIsEditing","newValue","updatedTimes","canEditEventParsed","event","status","Start","events","filter","id","map","start","updatedStart","end","updatedEnd","Finish","Provider","value"],"sourceRoot":"../../../src","sources":["hooks/use-is-editing.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IACVC,aAAa,EAEbC,WAAW,EACXC,UAAU,EACVC,QAAQ,QACH,OAAO;AACd,SAAsBC,cAAc,QAAQ,yBAAyB;AACrE,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,UAAU,QAAQ,QAAQ;AACnC,SAASC,UAAU,QAAgC,aAAU;AAC7D,SAASC,SAAS,QAAQ,iBAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAczC,MAAMC,SAAS,gBAAGX,aAAa,CAA4BY,SAAS,CAAC;AAErE,OAAO,MAAMC,YAAY,GAAGA,CAAA,KAAM;EAChC,MAAMC,OAAO,GAAGZ,UAAU,CAACS,SAAS,CAAC;EAErC,IAAI,CAACG,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,sDAAsD,CAAC;EACzE;EACA,OAAOD,OAAO;AAChB,CAAC;;AAED;AACA,OAAO,MAAME,iBAAiB,GAAGA,CAAC;EAAEC;AAAkC,CAAC,KAAK;EAC1E,MAAM;IAAEC,YAAY;IAAEC,WAAW;IAAEC;EAA0B,CAAC,GAC5DlB,UAAU,CAACG,cAAc,CAAC;EAC5B,MAAM;IAAEgB;EAAmB,CAAC,GAAGb,SAAS,CAAC,CAAC;EAC1C,MAAM,CAACc,SAAS,EAAEC,gBAAgB,CAAC,GAAGpB,QAAQ,CAC5C,IACF,CAAC;EACD,MAAMqB,QAAQ,GAAGpB,cAAc,CAAC,CAAC,CAAC;EAElC,MAAMqB,YAAY,GAAGxB,WAAW,CAC9B,CACEyB,QAAuC,EACvCC,YAGC,KACE;IACH,IAAID,QAAQ,EAAE;MACZ,IAAIJ,SAAS,EAAE;QACb;QACA;MACF;MAEA,MAAMM,kBAAkB,GAAGtB,UAAU,CAACY,YAAY,CAAC,GAC/CA,YAAY,CAACQ,QAAQ,CAACG,KAAK,CAAC,GAC5BX,YAAY;MAEhB,IAAI,CAACU,kBAAkB,EAAE;QACvB;MACF;MAEAT,WAAW,GAAG;QACZU,KAAK,EAAEH,QAAQ,CAACG,KAAK;QACrBC,MAAM,EAAEvB,UAAU,CAACwB;MACrB,CAAC,CAAC;IACJ,CAAC,MAAM,IAAIT,SAAS,EAAE;MACpB,IAAIF,yBAAyB,EAAE;QAC7BC,kBAAkB,CAAEW,MAAM,IAAK;UAC7B,IAAI,CAACL,YAAY,EAAE;YACjB;YACA,OAAOK,MAAM,CAACC,MAAM,CAAEJ,KAAK,IAAKA,KAAK,CAACK,EAAE,KAAKZ,SAAS,CAACO,KAAK,CAACK,EAAE,CAAC;UAClE;UAEA,OAAOF,MAAM,CAACG,GAAG,CAAEN,KAAK,IACtBA,KAAK,CAACK,EAAE,KAAKZ,SAAS,CAACO,KAAK,CAACK,EAAE,GAC3B;YACE,GAAGL,KAAK;YACRO,KAAK,EAAET,YAAY,EAAEU,YAAY;YACjCC,GAAG,EAAEX,YAAY,EAAEY;UACrB,CAAC,GACDV,KACN,CAAC;QACH,CAAC,CAAC;MACJ;MAEAV,WAAW,GAAG;QACZU,KAAK,EAAEP,SAAS,CAACO,KAAK;QACtBC,MAAM,EAAEvB,UAAU,CAACiC,MAAM;QACzBb;MACF,CAAC,CAAC;IACJ;IAEAJ,gBAAgB,CAACG,QAAQ,CAAC;EAC5B,CAAC,EACD,CACER,YAAY,EACZI,SAAS,EACTH,WAAW,EACXE,kBAAkB,EAClBD,yBAAyB,CAE7B,CAAC;EAED,oBACEV,IAAA,CAACC,SAAS,CAAC8B,QAAQ;IAACC,KAAK,EAAE;MAAElB,QAAQ;MAAEF,SAAS;MAAEG;IAAa,CAAE;IAAAR,QAAA,EAC9DA;EAAQ,CACS,CAAC;AAEzB,CAAC","ignoreList":[]}
@@ -6,60 +6,48 @@ import { ScrollView } from "react-native-gesture-handler";
6
6
  import { useSharedValue } from "react-native-reanimated";
7
7
  import ZoomProvider from "./components/zoom-provider.js";
8
8
  import TimedEvents from "./components/timed-events.js";
9
- import useEventsLayout from "./hooks/use-events-layout.js";
10
9
  import { ConfigProvider, DEFAULT_MINUTE_HEIGHT } from "./utils/globals.js";
11
10
  import moment from "moment-timezone";
12
11
  import { useMemo, useRef } from "react";
13
12
  import { IsEditingProvider } from "./hooks/use-is-editing.js";
14
- import useClonedEvents from "./hooks/use-cloned-events.js";
13
+ import { EventsProvider, useEvents } from "./hooks/use-events.js";
15
14
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
15
  export * from "./types.js";
17
- const EventCalendar = ({
18
- events,
19
- timeFormat = "HH:mm",
20
- dayDate,
21
- theme,
22
- initialZoomLevel = DEFAULT_MINUTE_HEIGHT,
23
- onCreateEvent,
24
- timezone = "UTC",
25
- renderEvent,
26
- onPressEvent,
27
- userCalendarId = "",
28
- showTimeIndicator,
29
- maxAllDayEvents = 2,
30
- canCreateEvents = true,
31
- renderNewEventContainer,
16
+ const EventCalendarContent = ({
17
+ canCreateEvents,
18
+ canEditEvent,
32
19
  fiveMinuteInterval,
33
- canEditEvent = true,
20
+ initialZoomLevel,
21
+ maxAllDayEvents,
22
+ onCreateEvent,
34
23
  onEventEdit,
24
+ onPressEvent,
35
25
  renderDragBars,
36
- updateLocalStateAfterEdit = true,
26
+ renderEvent,
27
+ renderNewEventContainer,
28
+ showTimeIndicator,
29
+ theme,
30
+ timeFormat,
31
+ timezone,
32
+ updateLocalStateAfterEdit,
37
33
  extraTimedComponents,
38
- onZoomChange
34
+ onZoomChange,
35
+ startCalendarDate
39
36
  }) => {
40
- const startCalendarDate = useMemo(() => moment.tz(dayDate, timezone).startOf("day"), [dayDate, timezone]);
41
- const clonedEvents = useClonedEvents(events, updateLocalStateAfterEdit);
42
- const memoizedProps = useMemo(() => ({
43
- startCalendarDate: startCalendarDate.format("YYYY-MM-DD"),
44
- calendarViewInterval: "1day",
45
- endCalendarDate: startCalendarDate.format("YYYY-MM-DD"),
46
- userCalendarId,
47
- timezone,
48
- startDayOfWeekOffset: 0,
49
- events: clonedEvents
50
- }), [startCalendarDate, userCalendarId, timezone, clonedEvents]);
51
- const layout = useEventsLayout(memoizedProps);
52
37
  const zoomLevel = useSharedValue(initialZoomLevel);
53
38
  const createY = useSharedValue(-1);
54
39
  const maximumHour = useSharedValue(0);
55
40
  const refNewEvent = useRef(null);
41
+ const {
42
+ eventsLayout
43
+ } = useEvents();
56
44
  return /*#__PURE__*/_jsx(View, {
57
45
  style: [styles.container, theme?.container],
58
46
  children: /*#__PURE__*/_jsxs(ConfigProvider.Provider, {
59
47
  value: {
60
48
  dayDate: startCalendarDate,
61
49
  timeFormat,
62
- layout,
50
+ layout: eventsLayout,
63
51
  zoomLevel,
64
52
  createY,
65
53
  initialZoomLevel,
@@ -76,9 +64,9 @@ const EventCalendar = ({
76
64
  onEventEdit,
77
65
  renderDragBars,
78
66
  maximumHour,
79
- updateLocalStateAfterEdit,
80
67
  extraTimedComponents,
81
- onZoomChange
68
+ onZoomChange,
69
+ updateLocalStateAfterEdit
82
70
  },
83
71
  children: [/*#__PURE__*/_jsx(AllDayEvents, {}), /*#__PURE__*/_jsx(ScrollView, {
84
72
  bounces: false,
@@ -98,6 +86,48 @@ const EventCalendar = ({
98
86
  })
99
87
  });
100
88
  };
89
+
90
+ /**
91
+ * Wraps `EventCalendarContent` inside `ClonedEventsProvider` to manage cloned events independently.
92
+ */
93
+ const EventCalendar = ({
94
+ timeFormat = "HH:mm",
95
+ dayDate,
96
+ events,
97
+ initialZoomLevel = DEFAULT_MINUTE_HEIGHT,
98
+ timezone = "UTC",
99
+ userCalendarId = "",
100
+ maxAllDayEvents = 2,
101
+ updateLocalStateAfterEdit = true,
102
+ canCreateEvents = true,
103
+ canEditEvent = true,
104
+ ...props
105
+ }) => {
106
+ const startCalendarDate = useMemo(() => moment.tz(dayDate, timezone).startOf("day"), [dayDate, timezone]);
107
+ return /*#__PURE__*/_jsx(EventsProvider, {
108
+ initialProps: {
109
+ startCalendarDate: startCalendarDate.format("YYYY-MM-DD"),
110
+ calendarViewInterval: "1day",
111
+ endCalendarDate: startCalendarDate.format("YYYY-MM-DD"),
112
+ userCalendarId,
113
+ timezone,
114
+ startDayOfWeekOffset: 0,
115
+ events
116
+ },
117
+ updateLocalStateAfterEdit: !!updateLocalStateAfterEdit,
118
+ children: /*#__PURE__*/_jsx(EventCalendarContent, {
119
+ ...props,
120
+ timeFormat: timeFormat,
121
+ initialZoomLevel: initialZoomLevel,
122
+ timezone: timezone,
123
+ maxAllDayEvents: maxAllDayEvents,
124
+ updateLocalStateAfterEdit: updateLocalStateAfterEdit,
125
+ startCalendarDate: startCalendarDate,
126
+ canCreateEvents: canCreateEvents,
127
+ canEditEvent: canEditEvent
128
+ })
129
+ });
130
+ };
101
131
  const styles = StyleSheet.create({
102
132
  container: {
103
133
  flex: 1,
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","View","AllDayEvents","ScrollView","useSharedValue","ZoomProvider","TimedEvents","useEventsLayout","ConfigProvider","DEFAULT_MINUTE_HEIGHT","moment","useMemo","useRef","IsEditingProvider","useClonedEvents","jsx","_jsx","jsxs","_jsxs","EventCalendar","events","timeFormat","dayDate","theme","initialZoomLevel","onCreateEvent","timezone","renderEvent","onPressEvent","userCalendarId","showTimeIndicator","maxAllDayEvents","canCreateEvents","renderNewEventContainer","fiveMinuteInterval","canEditEvent","onEventEdit","renderDragBars","updateLocalStateAfterEdit","extraTimedComponents","onZoomChange","startCalendarDate","tz","startOf","clonedEvents","memoizedProps","format","calendarViewInterval","endCalendarDate","startDayOfWeekOffset","layout","zoomLevel","createY","maximumHour","refNewEvent","style","styles","container","children","Provider","value","bounces","keyboardShouldPersistTaps","scrollView","ref","borderContainer","create","flex","marginTop","borderTopWidth","hairlineWidth","borderTopColor","overflow","paddingTop","backgroundColor","position","height","left","top","width","borderLeftWidth","borderColor"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["StyleSheet","View","AllDayEvents","ScrollView","useSharedValue","ZoomProvider","TimedEvents","ConfigProvider","DEFAULT_MINUTE_HEIGHT","moment","useMemo","useRef","IsEditingProvider","EventsProvider","useEvents","jsx","_jsx","jsxs","_jsxs","EventCalendarContent","canCreateEvents","canEditEvent","fiveMinuteInterval","initialZoomLevel","maxAllDayEvents","onCreateEvent","onEventEdit","onPressEvent","renderDragBars","renderEvent","renderNewEventContainer","showTimeIndicator","theme","timeFormat","timezone","updateLocalStateAfterEdit","extraTimedComponents","onZoomChange","startCalendarDate","zoomLevel","createY","maximumHour","refNewEvent","eventsLayout","style","styles","container","children","Provider","value","dayDate","layout","bounces","keyboardShouldPersistTaps","scrollView","ref","borderContainer","EventCalendar","events","userCalendarId","props","tz","startOf","initialProps","format","calendarViewInterval","endCalendarDate","startDayOfWeekOffset","create","flex","marginTop","borderTopWidth","hairlineWidth","borderTopColor","overflow","paddingTop","backgroundColor","position","height","left","top","width","borderLeftWidth","borderColor"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}