@naviedu/room-platform-react 0.0.68 → 0.0.69
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/index.esm.js +58 -9
- package/package.json +1 -1
package/index.esm.js
CHANGED
|
@@ -28656,6 +28656,7 @@ function _unsupported_iterable_to_array$5(o, minLen) {
|
|
|
28656
28656
|
}
|
|
28657
28657
|
var ACTIVITY_SELECTOR = '[data-room-control-activity]';
|
|
28658
28658
|
var LINE_HEIGHT_PX = 16;
|
|
28659
|
+
var SWIPE_THRESHOLD_PX = 12;
|
|
28659
28660
|
var getAspectRatio = function(aspectRatio) {
|
|
28660
28661
|
var _aspectRatio_split_map = _sliced_to_array$5(aspectRatio.split('/').map(Number), 2), width = _aspectRatio_split_map[0], height = _aspectRatio_split_map[1];
|
|
28661
28662
|
return Number.isFinite(width) && Number.isFinite(height) && width > 0 && height > 0 ? width / height : null;
|
|
@@ -28683,6 +28684,7 @@ var boundedDelta = function(deltaY, deltaMode, contentHeight) {
|
|
|
28683
28684
|
};
|
|
28684
28685
|
function RoomPlatformScreenShareInteractionSurface(param) {
|
|
28685
28686
|
var aspectRatio = param.aspectRatio, children = param.children, handlers = param.handlers;
|
|
28687
|
+
var activePointerRef = useRef(null);
|
|
28686
28688
|
var getCurrentContentRect = function(target) {
|
|
28687
28689
|
return getContentRect(target.getBoundingClientRect(), aspectRatio);
|
|
28688
28690
|
};
|
|
@@ -28696,22 +28698,69 @@ function RoomPlatformScreenShareInteractionSurface(param) {
|
|
|
28696
28698
|
deltaY: deltaY
|
|
28697
28699
|
});
|
|
28698
28700
|
};
|
|
28699
|
-
var
|
|
28700
|
-
var
|
|
28701
|
-
if (
|
|
28701
|
+
var releasePointerCapture = function(target, pointerId) {
|
|
28702
|
+
var _target_hasPointerCapture;
|
|
28703
|
+
if ((_target_hasPointerCapture = target.hasPointerCapture) === null || _target_hasPointerCapture === void 0 ? void 0 : _target_hasPointerCapture.call(target, pointerId)) target.releasePointerCapture(pointerId);
|
|
28704
|
+
};
|
|
28705
|
+
var handlePointerDown = function(event) {
|
|
28706
|
+
var _event_currentTarget_setPointerCapture, _event_currentTarget;
|
|
28707
|
+
if (activePointerRef.current || !event.isPrimary || event.button !== 0 || isActivityTarget(event.target)) {
|
|
28708
|
+
return;
|
|
28709
|
+
}
|
|
28710
|
+
activePointerRef.current = {
|
|
28711
|
+
pointerId: event.pointerId,
|
|
28712
|
+
pointerType: event.pointerType,
|
|
28713
|
+
startX: event.clientX,
|
|
28714
|
+
startY: event.clientY
|
|
28715
|
+
};
|
|
28716
|
+
(_event_currentTarget_setPointerCapture = (_event_currentTarget = event.currentTarget).setPointerCapture) === null || _event_currentTarget_setPointerCapture === void 0 ? void 0 : _event_currentTarget_setPointerCapture.call(_event_currentTarget, event.pointerId);
|
|
28717
|
+
};
|
|
28718
|
+
var handlePointerUp = function(event) {
|
|
28719
|
+
var _handlers_onWheel;
|
|
28720
|
+
var activePointer = activePointerRef.current;
|
|
28721
|
+
if (!activePointer || activePointer.pointerId !== event.pointerId) return;
|
|
28722
|
+
activePointerRef.current = null;
|
|
28723
|
+
releasePointerCapture(event.currentTarget, event.pointerId);
|
|
28702
28724
|
if (!Number.isFinite(event.clientX) || !Number.isFinite(event.clientY)) return;
|
|
28703
|
-
var
|
|
28704
|
-
|
|
28705
|
-
|
|
28706
|
-
|
|
28707
|
-
|
|
28725
|
+
var deltaX = event.clientX - activePointer.startX;
|
|
28726
|
+
var deltaY = event.clientY - activePointer.startY;
|
|
28727
|
+
if (!Number.isFinite(deltaX) || !Number.isFinite(deltaY)) return;
|
|
28728
|
+
var isTap = Math.abs(deltaX) < SWIPE_THRESHOLD_PX && Math.abs(deltaY) < SWIPE_THRESHOLD_PX;
|
|
28729
|
+
if (isTap) {
|
|
28730
|
+
var _handlers_onClick;
|
|
28731
|
+
var contentRect = getCurrentContentRect(event.currentTarget);
|
|
28732
|
+
if (contentRect) handlers === null || handlers === void 0 ? void 0 : (_handlers_onClick = handlers.onClick) === null || _handlers_onClick === void 0 ? void 0 : _handlers_onClick.call(handlers, {
|
|
28733
|
+
clientX: event.clientX,
|
|
28734
|
+
clientY: event.clientY,
|
|
28735
|
+
contentRect: contentRect
|
|
28736
|
+
});
|
|
28737
|
+
return;
|
|
28738
|
+
}
|
|
28739
|
+
var isVerticalTouchSwipe = activePointer.pointerType === 'touch' && Math.abs(deltaY) >= SWIPE_THRESHOLD_PX && Math.abs(deltaY) > Math.abs(deltaX);
|
|
28740
|
+
if (!isVerticalTouchSwipe) return;
|
|
28741
|
+
var contentRect1 = getCurrentContentRect(event.currentTarget);
|
|
28742
|
+
if (!contentRect1) return;
|
|
28743
|
+
var scrollDelta = boundedDelta(activePointer.startY - event.clientY, 0, contentRect1.height);
|
|
28744
|
+
if (scrollDelta !== null) handlers === null || handlers === void 0 ? void 0 : (_handlers_onWheel = handlers.onWheel) === null || _handlers_onWheel === void 0 ? void 0 : _handlers_onWheel.call(handlers, {
|
|
28745
|
+
deltaY: scrollDelta
|
|
28708
28746
|
});
|
|
28709
28747
|
};
|
|
28748
|
+
var handlePointerCancel = function(event) {
|
|
28749
|
+
var activePointer = activePointerRef.current;
|
|
28750
|
+
if (!activePointer || activePointer.pointerId !== event.pointerId) return;
|
|
28751
|
+
activePointerRef.current = null;
|
|
28752
|
+
releasePointerCapture(event.currentTarget, event.pointerId);
|
|
28753
|
+
};
|
|
28710
28754
|
return /*#__PURE__*/ jsx("div", {
|
|
28711
28755
|
"data-testid": "room-platform-screen-share-interaction-surface",
|
|
28712
28756
|
className: "absolute inset-0 z-10",
|
|
28713
|
-
|
|
28757
|
+
onPointerCancel: handlePointerCancel,
|
|
28758
|
+
onPointerDown: handlePointerDown,
|
|
28759
|
+
onPointerUp: handlePointerUp,
|
|
28714
28760
|
onWheel: handleWheel,
|
|
28761
|
+
style: {
|
|
28762
|
+
touchAction: 'none'
|
|
28763
|
+
},
|
|
28715
28764
|
children: children
|
|
28716
28765
|
});
|
|
28717
28766
|
}
|