@getuserfeedback/react-native 1.3.17 → 1.3.22
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/dist/provider-widget-host-overlay.js +52 -11
- package/dist/version.js +1 -1
- package/package.json +3 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createElement, useCallback, useRef, } from "react";
|
|
1
|
+
import { createElement, useCallback, useMemo, useRef, } from "react";
|
|
2
2
|
const HIDDEN_WIDGET_HOST_STYLE = {
|
|
3
3
|
bottom: 0,
|
|
4
4
|
left: 0,
|
|
@@ -40,6 +40,7 @@ const WIDGET_SHEET_STYLE = {
|
|
|
40
40
|
};
|
|
41
41
|
const WIDGET_SHEET_DRAG_HANDLE_TOUCH_STYLE = {
|
|
42
42
|
alignItems: "center",
|
|
43
|
+
elevation: 19,
|
|
43
44
|
height: 32,
|
|
44
45
|
justifyContent: "center",
|
|
45
46
|
left: 0,
|
|
@@ -88,10 +89,21 @@ const VISIBLE_WIDGET_HOST_LAYOUT_STYLE_KEYS = new Set([
|
|
|
88
89
|
"width",
|
|
89
90
|
]);
|
|
90
91
|
const LOADER_FLOATING_CONTAINER_MIN_HEIGHT = 120;
|
|
91
|
-
const WIDGET_SHEET_SWIPE_DISMISS_DISTANCE =
|
|
92
|
-
function
|
|
92
|
+
const WIDGET_SHEET_SWIPE_DISMISS_DISTANCE = 24;
|
|
93
|
+
function resolveNativePanResponder() {
|
|
93
94
|
var _a;
|
|
94
|
-
|
|
95
|
+
try {
|
|
96
|
+
const reactNativeModule = require("react-native");
|
|
97
|
+
return (_a = reactNativeModule.PanResponder) !== null && _a !== void 0 ? _a : null;
|
|
98
|
+
}
|
|
99
|
+
catch (_b) {
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
function toResponderPageY(event) {
|
|
104
|
+
var _a, _b, _c;
|
|
105
|
+
const nativeEvent = event === null || event === void 0 ? void 0 : event.nativeEvent;
|
|
106
|
+
const value = (_a = nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.pageY) !== null && _a !== void 0 ? _a : (_c = (_b = nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.changedTouches) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.pageY;
|
|
95
107
|
return typeof value === "number" && Number.isFinite(value)
|
|
96
108
|
? value
|
|
97
109
|
: undefined;
|
|
@@ -160,6 +172,41 @@ export function ProviderWidgetHostOverlay({ children, isVisible, nativeView, onR
|
|
|
160
172
|
}
|
|
161
173
|
onRequestDismiss();
|
|
162
174
|
}, [onRequestDismiss]);
|
|
175
|
+
const dragHandleGestureProps = useMemo(() => {
|
|
176
|
+
const panResponder = resolveNativePanResponder();
|
|
177
|
+
if (panResponder) {
|
|
178
|
+
try {
|
|
179
|
+
return panResponder.create({
|
|
180
|
+
onMoveShouldSetPanResponder: (_event, gestureState) => typeof gestureState.dy === "number" &&
|
|
181
|
+
gestureState.dy >=
|
|
182
|
+
Math.min(12, WIDGET_SHEET_SWIPE_DISMISS_DISTANCE),
|
|
183
|
+
onPanResponderGrant: handleDragGrant,
|
|
184
|
+
onPanResponderRelease: (_event, gestureState) => {
|
|
185
|
+
if (!gestureState) {
|
|
186
|
+
handleDragRelease(_event);
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
if (typeof gestureState.dy !== "number" ||
|
|
190
|
+
gestureState.dy < WIDGET_SHEET_SWIPE_DISMISS_DISTANCE) {
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
onRequestDismiss();
|
|
194
|
+
},
|
|
195
|
+
onStartShouldSetPanResponder: () => true,
|
|
196
|
+
}).panHandlers;
|
|
197
|
+
}
|
|
198
|
+
catch (_a) {
|
|
199
|
+
// Fall back to the plain responder/touch path below.
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
return {
|
|
203
|
+
onResponderGrant: handleDragGrant,
|
|
204
|
+
onResponderRelease: handleDragRelease,
|
|
205
|
+
onStartShouldSetResponder: () => true,
|
|
206
|
+
onTouchEnd: handleDragRelease,
|
|
207
|
+
onTouchStart: handleDragGrant,
|
|
208
|
+
};
|
|
209
|
+
}, [handleDragGrant, handleDragRelease, onRequestDismiss]);
|
|
163
210
|
const widgetSheetStyle = sheetHostViewport
|
|
164
211
|
? Object.assign(Object.assign({}, WIDGET_SHEET_STYLE), { height: sheetHostViewport.height }) : HIDDEN_WIDGET_HOST_STYLE;
|
|
165
212
|
const isSheetVisible = isVisible && sheetHostViewport !== undefined;
|
|
@@ -181,13 +228,7 @@ export function ProviderWidgetHostOverlay({ children, isVisible, nativeView, onR
|
|
|
181
228
|
style: isSheetVisible ? widgetSheetStyle : HIDDEN_WIDGET_HOST_STYLE,
|
|
182
229
|
testID: "gx-widget-host-sheet",
|
|
183
230
|
}, children, isSheetVisible
|
|
184
|
-
? createElement(nativeView, {
|
|
185
|
-
onResponderGrant: handleDragGrant,
|
|
186
|
-
onResponderRelease: handleDragRelease,
|
|
187
|
-
onStartShouldSetResponder: () => true,
|
|
188
|
-
style: WIDGET_SHEET_DRAG_HANDLE_TOUCH_STYLE,
|
|
189
|
-
testID: "gx-widget-host-drag-handle",
|
|
190
|
-
}, createElement(nativeView, {
|
|
231
|
+
? createElement(nativeView, Object.assign(Object.assign({}, dragHandleGestureProps), { style: WIDGET_SHEET_DRAG_HANDLE_TOUCH_STYLE, testID: "gx-widget-host-drag-handle" }), createElement(nativeView, {
|
|
191
232
|
style: WIDGET_SHEET_DRAG_HANDLE_INDICATOR_STYLE,
|
|
192
233
|
testID: "gx-widget-host-drag-handle-indicator",
|
|
193
234
|
}))
|
package/dist/version.js
CHANGED
|
@@ -3,4 +3,4 @@ const reactNativeSdkVersion = typeof __GX_REACT_NATIVE_SDK_VERSION__ === "string
|
|
|
3
3
|
: "";
|
|
4
4
|
// Build scripts patch this fallback to the package version for published artifacts.
|
|
5
5
|
// Source-linked workspace usage keeps the local fallback.
|
|
6
|
-
export const REACT_NATIVE_SDK_VERSION = reactNativeSdkVersion.length > 0 ? reactNativeSdkVersion : "1.3.
|
|
6
|
+
export const REACT_NATIVE_SDK_VERSION = reactNativeSdkVersion.length > 0 ? reactNativeSdkVersion : "1.3.22";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getuserfeedback/react-native",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.22",
|
|
4
4
|
"description": "getuserfeedback React Native SDK",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"getuserfeedback",
|
|
@@ -44,8 +44,8 @@
|
|
|
44
44
|
"lint": "ultracite check ."
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@getuserfeedback/protocol": "^
|
|
48
|
-
"@getuserfeedback/sdk": "^0.8.
|
|
47
|
+
"@getuserfeedback/protocol": "^3.0.2",
|
|
48
|
+
"@getuserfeedback/sdk": "^0.8.4",
|
|
49
49
|
"robot3": "^1.2.0"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
@@ -62,7 +62,6 @@
|
|
|
62
62
|
}
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
|
-
"rimraf": "^6.0.0",
|
|
66
65
|
"typescript": "^5.8.3"
|
|
67
66
|
}
|
|
68
67
|
}
|