@sunsama/event-calendar 0.4.0 → 0.4.1
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/lib/commonjs/components/zoom-provider.js +23 -4
- package/lib/commonjs/components/zoom-provider.js.map +1 -1
- package/lib/module/components/zoom-provider.js +23 -4
- package/lib/module/components/zoom-provider.js.map +1 -1
- package/lib/typescript/commonjs/components/zoom-provider.d.ts.map +1 -1
- package/lib/typescript/module/components/zoom-provider.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/zoom-provider.tsx +33 -7
|
@@ -27,7 +27,8 @@ const ZoomProvider = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
27
27
|
createY,
|
|
28
28
|
onCreateEvent,
|
|
29
29
|
maximumHour,
|
|
30
|
-
onZoomChange
|
|
30
|
+
onZoomChange,
|
|
31
|
+
fiveMinuteInterval
|
|
31
32
|
} = (0, _react.useContext)(_globals.ConfigProvider);
|
|
32
33
|
const previewScale = (0, _reactNativeReanimated.useSharedValue)(-1);
|
|
33
34
|
(0, _react.useEffect)(() => {
|
|
@@ -63,7 +64,16 @@ const ZoomProvider = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
63
64
|
if (!isDragging.value) {
|
|
64
65
|
return;
|
|
65
66
|
}
|
|
66
|
-
|
|
67
|
+
if (!fiveMinuteInterval) {
|
|
68
|
+
createY.value = Math.max(0, event.allTouches[0].y - _globals.TOP_MARGIN_PIXEL_OFFSET - zoomLevel.value * 60 / 2);
|
|
69
|
+
} else {
|
|
70
|
+
const normalizedY = event.allTouches[0].y - _globals.TOP_MARGIN_PIXEL_OFFSET - zoomLevel.value * 60 / 2;
|
|
71
|
+
const time = Math.floor(normalizedY / zoomLevel.value);
|
|
72
|
+
const hour = Math.floor(time / 60);
|
|
73
|
+
const minute = time - hour * 60;
|
|
74
|
+
const minuteInterval = Math.floor(minute / 5) * 5;
|
|
75
|
+
createY.value = (hour * 60 + minuteInterval) * zoomLevel.value;
|
|
76
|
+
}
|
|
67
77
|
}).onEnd((event, success) => {
|
|
68
78
|
"worklet";
|
|
69
79
|
|
|
@@ -84,12 +94,21 @@ const ZoomProvider = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
84
94
|
const time = Math.floor(normalizedY / zoomLevel.value);
|
|
85
95
|
const hour = Math.floor(time / 60);
|
|
86
96
|
const minute = time - hour * 60;
|
|
87
|
-
if (onCreateEvent) {
|
|
97
|
+
if (!onCreateEvent) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
if (fiveMinuteInterval) {
|
|
101
|
+
const minuteInterval = Math.floor(minute / 5) * 5;
|
|
88
102
|
(0, _reactNativeReanimated.runOnJS)(onCreateEvent)({
|
|
89
103
|
hour,
|
|
90
|
-
minute
|
|
104
|
+
minute: minuteInterval
|
|
91
105
|
});
|
|
106
|
+
return;
|
|
92
107
|
}
|
|
108
|
+
(0, _reactNativeReanimated.runOnJS)(onCreateEvent)({
|
|
109
|
+
hour,
|
|
110
|
+
minute
|
|
111
|
+
});
|
|
93
112
|
});
|
|
94
113
|
const combinedGesture = _reactNativeGestureHandler.Gesture.Simultaneous(pinchGesture, longPressGesture, (0, _doubleTapResetZoomGesture.default)(zoomLevel, initialZoomLevel, onZoomChange));
|
|
95
114
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.GestureDetector, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeReanimated","_interopRequireWildcard","require","_reactNativeGestureHandler","_react","_globals","_reactNative","_useIsEditing","_doubleTapResetZoomGesture","_interopRequireDefault","_jsxRuntime","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","fraction","ZoomProvider","forwardRef","children","refNewEvent","canCreateEvents","zoomLevel","initialZoomLevel","createY","onCreateEvent","maximumHour","onZoomChange","useContext","ConfigProvider","previewScale","useSharedValue","useEffect","value","pinchGesture","Gesture","Pinch","onUpdate","event","newScale","scale","Math","min","max","onEnd","runOnJS","yPosition","isEditing","useIsEditing","isDragging","useAnimatedReaction","zoom","longPressGesture","LongPress","enabled","withRef","numberOfPointers","minDuration","maxDistance","onStart","y","TOP_MARGIN_PIXEL_OFFSET","onTouchesMove","allTouches","
|
|
1
|
+
{"version":3,"names":["_reactNativeReanimated","_interopRequireWildcard","require","_reactNativeGestureHandler","_react","_globals","_reactNative","_useIsEditing","_doubleTapResetZoomGesture","_interopRequireDefault","_jsxRuntime","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","fraction","ZoomProvider","forwardRef","children","refNewEvent","canCreateEvents","zoomLevel","initialZoomLevel","createY","onCreateEvent","maximumHour","onZoomChange","fiveMinuteInterval","useContext","ConfigProvider","previewScale","useSharedValue","useEffect","value","pinchGesture","Gesture","Pinch","onUpdate","event","newScale","scale","Math","min","max","onEnd","runOnJS","yPosition","isEditing","useIsEditing","isDragging","useAnimatedReaction","zoom","longPressGesture","LongPress","enabled","withRef","numberOfPointers","minDuration","maxDistance","onStart","y","TOP_MARGIN_PIXEL_OFFSET","onTouchesMove","allTouches","normalizedY","time","floor","hour","minute","minuteInterval","success","combinedGesture","Simultaneous","doubleTapGesture","jsx","GestureDetector","gesture","View","style","styles","container","StyleSheet","create","flex","_default","exports"],"sourceRoot":"../../../src","sources":["components/zoom-provider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -20,7 +20,8 @@ const ZoomProvider = /*#__PURE__*/forwardRef(({
|
|
|
20
20
|
createY,
|
|
21
21
|
onCreateEvent,
|
|
22
22
|
maximumHour,
|
|
23
|
-
onZoomChange
|
|
23
|
+
onZoomChange,
|
|
24
|
+
fiveMinuteInterval
|
|
24
25
|
} = useContext(ConfigProvider);
|
|
25
26
|
const previewScale = useSharedValue(-1);
|
|
26
27
|
useEffect(() => {
|
|
@@ -56,7 +57,16 @@ const ZoomProvider = /*#__PURE__*/forwardRef(({
|
|
|
56
57
|
if (!isDragging.value) {
|
|
57
58
|
return;
|
|
58
59
|
}
|
|
59
|
-
|
|
60
|
+
if (!fiveMinuteInterval) {
|
|
61
|
+
createY.value = Math.max(0, event.allTouches[0].y - TOP_MARGIN_PIXEL_OFFSET - zoomLevel.value * 60 / 2);
|
|
62
|
+
} else {
|
|
63
|
+
const normalizedY = event.allTouches[0].y - TOP_MARGIN_PIXEL_OFFSET - zoomLevel.value * 60 / 2;
|
|
64
|
+
const time = Math.floor(normalizedY / zoomLevel.value);
|
|
65
|
+
const hour = Math.floor(time / 60);
|
|
66
|
+
const minute = time - hour * 60;
|
|
67
|
+
const minuteInterval = Math.floor(minute / 5) * 5;
|
|
68
|
+
createY.value = (hour * 60 + minuteInterval) * zoomLevel.value;
|
|
69
|
+
}
|
|
60
70
|
}).onEnd((event, success) => {
|
|
61
71
|
"worklet";
|
|
62
72
|
|
|
@@ -77,12 +87,21 @@ const ZoomProvider = /*#__PURE__*/forwardRef(({
|
|
|
77
87
|
const time = Math.floor(normalizedY / zoomLevel.value);
|
|
78
88
|
const hour = Math.floor(time / 60);
|
|
79
89
|
const minute = time - hour * 60;
|
|
80
|
-
if (onCreateEvent) {
|
|
90
|
+
if (!onCreateEvent) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
if (fiveMinuteInterval) {
|
|
94
|
+
const minuteInterval = Math.floor(minute / 5) * 5;
|
|
81
95
|
runOnJS(onCreateEvent)({
|
|
82
96
|
hour,
|
|
83
|
-
minute
|
|
97
|
+
minute: minuteInterval
|
|
84
98
|
});
|
|
99
|
+
return;
|
|
85
100
|
}
|
|
101
|
+
runOnJS(onCreateEvent)({
|
|
102
|
+
hour,
|
|
103
|
+
minute
|
|
104
|
+
});
|
|
86
105
|
});
|
|
87
106
|
const combinedGesture = Gesture.Simultaneous(pinchGesture, longPressGesture, doubleTapGesture(zoomLevel, initialZoomLevel, onZoomChange));
|
|
88
107
|
return /*#__PURE__*/_jsx(GestureDetector, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Animated","runOnJS","useAnimatedReaction","useSharedValue","Gesture","GestureDetector","forwardRef","useContext","useEffect","ConfigProvider","TOP_MARGIN_PIXEL_OFFSET","StyleSheet","useIsEditing","doubleTapGesture","jsx","_jsx","fraction","ZoomProvider","children","refNewEvent","canCreateEvents","zoomLevel","initialZoomLevel","createY","onCreateEvent","maximumHour","onZoomChange","previewScale","value","get","pinchGesture","Pinch","onUpdate","event","newScale","scale","Math","min","max","onEnd","yPosition","isEditing","isDragging","zoom","longPressGesture","LongPress","enabled","withRef","numberOfPointers","minDuration","maxDistance","onStart","y","onTouchesMove","allTouches","
|
|
1
|
+
{"version":3,"names":["Animated","runOnJS","useAnimatedReaction","useSharedValue","Gesture","GestureDetector","forwardRef","useContext","useEffect","ConfigProvider","TOP_MARGIN_PIXEL_OFFSET","StyleSheet","useIsEditing","doubleTapGesture","jsx","_jsx","fraction","ZoomProvider","children","refNewEvent","canCreateEvents","zoomLevel","initialZoomLevel","createY","onCreateEvent","maximumHour","onZoomChange","fiveMinuteInterval","previewScale","value","get","pinchGesture","Pinch","onUpdate","event","newScale","scale","Math","min","max","onEnd","yPosition","isEditing","isDragging","zoom","longPressGesture","LongPress","enabled","withRef","numberOfPointers","minDuration","maxDistance","onStart","y","onTouchesMove","allTouches","normalizedY","time","floor","hour","minute","minuteInterval","success","combinedGesture","Simultaneous","gesture","View","style","styles","container","create","flex"],"sourceRoot":"../../../src","sources":["components/zoom-provider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zoom-provider.d.ts","sourceRoot":"","sources":["../../../../src/components/zoom-provider.tsx"],"names":[],"mappings":"AAYA,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,GAAG,CAAC;CACf,CAAC;AAKF,QAAA,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"zoom-provider.d.ts","sourceRoot":"","sources":["../../../../src/components/zoom-provider.tsx"],"names":[],"mappings":"AAYA,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,GAAG,CAAC;CACf,CAAC;AAKF,QAAA,MAAM,YAAY,mGA+IjB,CAAC;AAQF,eAAe,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zoom-provider.d.ts","sourceRoot":"","sources":["../../../../src/components/zoom-provider.tsx"],"names":[],"mappings":"AAYA,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,GAAG,CAAC;CACf,CAAC;AAKF,QAAA,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"zoom-provider.d.ts","sourceRoot":"","sources":["../../../../src/components/zoom-provider.tsx"],"names":[],"mappings":"AAYA,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,GAAG,CAAC;CACf,CAAC;AAKF,QAAA,MAAM,YAAY,mGA+IjB,CAAC;AAQF,eAAe,YAAY,CAAC"}
|
package/package.json
CHANGED
|
@@ -27,6 +27,7 @@ const ZoomProvider = forwardRef<any, ZoomProviderProps>(
|
|
|
27
27
|
onCreateEvent,
|
|
28
28
|
maximumHour,
|
|
29
29
|
onZoomChange,
|
|
30
|
+
fiveMinuteInterval,
|
|
30
31
|
} = useContext(ConfigProvider);
|
|
31
32
|
const previewScale = useSharedValue(-1);
|
|
32
33
|
|
|
@@ -84,12 +85,25 @@ const ZoomProvider = forwardRef<any, ZoomProviderProps>(
|
|
|
84
85
|
return;
|
|
85
86
|
}
|
|
86
87
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
88
|
+
if (!fiveMinuteInterval) {
|
|
89
|
+
createY.value = Math.max(
|
|
90
|
+
0,
|
|
91
|
+
event.allTouches[0].y -
|
|
92
|
+
TOP_MARGIN_PIXEL_OFFSET -
|
|
93
|
+
(zoomLevel.value * 60) / 2
|
|
94
|
+
);
|
|
95
|
+
} else {
|
|
96
|
+
const normalizedY =
|
|
97
|
+
event.allTouches[0].y -
|
|
90
98
|
TOP_MARGIN_PIXEL_OFFSET -
|
|
91
|
-
(zoomLevel.value * 60) / 2
|
|
92
|
-
|
|
99
|
+
(zoomLevel.value * 60) / 2;
|
|
100
|
+
const time = Math.floor(normalizedY / zoomLevel.value);
|
|
101
|
+
const hour = Math.floor(time / 60);
|
|
102
|
+
const minute = time - hour * 60;
|
|
103
|
+
const minuteInterval = Math.floor(minute / 5) * 5;
|
|
104
|
+
|
|
105
|
+
createY.value = (hour * 60 + minuteInterval) * zoomLevel.value;
|
|
106
|
+
}
|
|
93
107
|
})
|
|
94
108
|
.onEnd((event, success) => {
|
|
95
109
|
"worklet";
|
|
@@ -114,12 +128,24 @@ const ZoomProvider = forwardRef<any, ZoomProviderProps>(
|
|
|
114
128
|
const hour = Math.floor(time / 60);
|
|
115
129
|
const minute = time - hour * 60;
|
|
116
130
|
|
|
117
|
-
if (onCreateEvent) {
|
|
131
|
+
if (!onCreateEvent) {
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
if (fiveMinuteInterval) {
|
|
136
|
+
const minuteInterval = Math.floor(minute / 5) * 5;
|
|
137
|
+
|
|
118
138
|
runOnJS(onCreateEvent)({
|
|
119
139
|
hour,
|
|
120
|
-
minute,
|
|
140
|
+
minute: minuteInterval,
|
|
121
141
|
});
|
|
142
|
+
return;
|
|
122
143
|
}
|
|
144
|
+
|
|
145
|
+
runOnJS(onCreateEvent)({
|
|
146
|
+
hour,
|
|
147
|
+
minute,
|
|
148
|
+
});
|
|
123
149
|
});
|
|
124
150
|
|
|
125
151
|
const combinedGesture = Gesture.Simultaneous(
|