@bugpulse/react-native 0.1.0 → 0.2.0

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 (52) hide show
  1. package/README.md +41 -0
  2. package/dist/AnnotationCanvas.d.ts +3 -1
  3. package/dist/AnnotationCanvas.d.ts.map +1 -1
  4. package/dist/AnnotationCanvas.js +34 -8
  5. package/dist/AnnotationCanvas.js.map +1 -1
  6. package/dist/BugReportModal.d.ts +3 -1
  7. package/dist/BugReportModal.d.ts.map +1 -1
  8. package/dist/BugReportModal.js +136 -47
  9. package/dist/BugReportModal.js.map +1 -1
  10. package/dist/BugReportProvider.d.ts +3 -1
  11. package/dist/BugReportProvider.d.ts.map +1 -1
  12. package/dist/BugReportProvider.js +9 -3
  13. package/dist/BugReportProvider.js.map +1 -1
  14. package/dist/DeviceInfo.d.ts.map +1 -1
  15. package/dist/DeviceInfo.js +13 -1
  16. package/dist/DeviceInfo.js.map +1 -1
  17. package/dist/NavigationTracker.d.ts +6 -1
  18. package/dist/NavigationTracker.d.ts.map +1 -1
  19. package/dist/NavigationTracker.js +58 -23
  20. package/dist/NavigationTracker.js.map +1 -1
  21. package/dist/ShakeDetector.d.ts.map +1 -1
  22. package/dist/ShakeDetector.js +50 -17
  23. package/dist/ShakeDetector.js.map +1 -1
  24. package/dist/StateCapture.d.ts.map +1 -1
  25. package/dist/StateCapture.js +8 -9
  26. package/dist/StateCapture.js.map +1 -1
  27. package/dist/__tests__/BugReportModal.test.d.ts +2 -0
  28. package/dist/__tests__/BugReportModal.test.d.ts.map +1 -0
  29. package/dist/__tests__/BugReportModal.test.js +168 -0
  30. package/dist/__tests__/BugReportModal.test.js.map +1 -0
  31. package/dist/__tests__/integrations/slack.test.js +1 -1
  32. package/dist/__tests__/integrations/slack.test.js.map +1 -1
  33. package/dist/__tests__/useThemeColors.test.d.ts +2 -0
  34. package/dist/__tests__/useThemeColors.test.d.ts.map +1 -0
  35. package/dist/__tests__/useThemeColors.test.js +38 -0
  36. package/dist/__tests__/useThemeColors.test.js.map +1 -0
  37. package/dist/index.d.ts +2 -0
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +3 -1
  40. package/dist/index.js.map +1 -1
  41. package/dist/integrations/slack.d.ts.map +1 -1
  42. package/dist/integrations/slack.js +41 -24
  43. package/dist/integrations/slack.js.map +1 -1
  44. package/dist/integrations/webhook.d.ts +1 -0
  45. package/dist/integrations/webhook.d.ts.map +1 -1
  46. package/dist/integrations/webhook.js +29 -6
  47. package/dist/integrations/webhook.js.map +1 -1
  48. package/dist/useThemeColors.d.ts +16 -0
  49. package/dist/useThemeColors.d.ts.map +1 -0
  50. package/dist/useThemeColors.js +36 -0
  51. package/dist/useThemeColors.js.map +1 -0
  52. package/package.json +10 -2
package/README.md CHANGED
@@ -148,6 +148,7 @@ const MyIntegration: Integration = {
148
148
  | `shakeThreshold` | `number` | `1.8` | Accelerometer sensitivity |
149
149
  | `shakeEnabled` | `boolean` | `true` | Enable/disable shake trigger |
150
150
  | `screenNameProvider` | `() => string` | auto-detect | Current screen name |
151
+ | `colorScheme` | `'light' \| 'dark'` | auto-detect | Override dark/light mode |
151
152
  | `enabled` | `boolean` | `true` | Enable/disable the SDK entirely |
152
153
 
153
154
  ## Programmatic Trigger
@@ -173,6 +174,46 @@ function SettingsScreen() {
173
174
  5. User adds a description
174
175
  6. SDK collects device info, attaches diagnostics, and sends to your integrations
175
176
 
177
+ ## Dark Mode
178
+
179
+ The bug report modal automatically adapts to the device's color scheme. To override:
180
+
181
+ ```tsx
182
+ <BugReportProvider colorScheme="dark" integrations={[...]}>
183
+ ```
184
+
185
+ ## Optional Dependencies
186
+
187
+ These add extra functionality but aren't required:
188
+
189
+ | Package | What it adds |
190
+ |---------|-------------|
191
+ | `expo-router` | Auto navigation tracking |
192
+ | `expo-haptics` | Haptic feedback on shake detection |
193
+ | `expo-clipboard` | Copy-to-clipboard fallback when send fails |
194
+ | `@react-native-community/netinfo` | Offline detection warning |
195
+
196
+ Install any you want:
197
+
198
+ ```bash
199
+ npx expo install expo-haptics expo-clipboard @react-native-community/netinfo
200
+ ```
201
+
202
+ ## Timeline Viewer
203
+
204
+ Every bug report includes diagnostics as structured JSON. Open `viewer/index.html` in a browser and paste the JSON to see a visual timeline of navigation, state changes, and errors.
205
+
206
+ ## Security
207
+
208
+ **Webhook URL and API key exposure:** Slack webhook URLs and imgbb API keys configured in the SDK live in the app's JavaScript bundle. Anyone with access to your app binary could extract them. This is a known limitation of the zero-backend architecture.
209
+
210
+ Mitigations:
211
+ - Slack webhooks are write-only (can't read channel history)
212
+ - Rotate webhook URLs if compromised (Slack settings)
213
+ - For production apps handling sensitive data, consider routing reports through a serverless proxy (e.g., Cloudflare Worker) that holds credentials server-side
214
+
215
+ **State snapshot privacy:** State snapshots are sent as-is. Do not track stores containing passwords, auth tokens, or PII. A redaction API is planned for a future release.
216
+
176
217
  ## Requirements
177
218
 
178
219
  - Expo SDK 50+
@@ -1,11 +1,13 @@
1
1
  import React from 'react';
2
+ import { type ColorSchemeName } from 'react-native';
2
3
  interface AnnotationCanvasProps {
3
4
  screenshotUri: string;
4
5
  onAnnotationComplete: (annotatedUri: string) => void;
5
6
  onSkip: () => void;
6
7
  width: number;
7
8
  height: number;
9
+ colorScheme?: ColorSchemeName;
8
10
  }
9
- export declare function AnnotationCanvas({ screenshotUri, onAnnotationComplete, onSkip, width, height, }: AnnotationCanvasProps): React.JSX.Element;
11
+ export declare function AnnotationCanvas({ screenshotUri, onAnnotationComplete, onSkip, width, height, colorScheme, }: AnnotationCanvasProps): React.JSX.Element;
10
12
  export {};
11
13
  //# sourceMappingURL=AnnotationCanvas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AnnotationCanvas.d.ts","sourceRoot":"","sources":["../src/AnnotationCanvas.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAU7D,UAAU,qBAAqB;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAgB,gBAAgB,CAAC,EAC/B,aAAa,EACb,oBAAoB,EACpB,MAAM,EACN,KAAK,EACL,MAAM,GACP,EAAE,qBAAqB,qBA2KvB"}
1
+ {"version":3,"file":"AnnotationCanvas.d.ts","sourceRoot":"","sources":["../src/AnnotationCanvas.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAC7D,OAAO,EAAuC,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAUzF,UAAU,qBAAqB;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AASD,wBAAgB,gBAAgB,CAAC,EAC/B,aAAa,EACb,oBAAoB,EACpB,MAAM,EACN,KAAK,EACL,MAAM,EACN,WAAW,GACZ,EAAE,qBAAqB,qBA4MvB"}
@@ -39,12 +39,19 @@ const react_native_1 = require("react-native");
39
39
  const react_native_svg_1 = __importStar(require("react-native-svg"));
40
40
  const react_native_gesture_handler_1 = require("react-native-gesture-handler");
41
41
  const react_native_view_shot_1 = require("react-native-view-shot");
42
- function AnnotationCanvas({ screenshotUri, onAnnotationComplete, onSkip, width, height, }) {
42
+ const useThemeColors_1 = require("./useThemeColors");
43
+ const PEN_COLORS = ['#FF3B30', '#007AFF', '#FFCC00', '#FFFFFF'];
44
+ function AnnotationCanvas({ screenshotUri, onAnnotationComplete, onSkip, width, height, colorScheme, }) {
45
+ const colors = (0, useThemeColors_1.useThemeColors)(colorScheme);
43
46
  const [paths, setPaths] = (0, react_1.useState)([]);
44
47
  const [currentPath, setCurrentPath] = (0, react_1.useState)('');
48
+ const [selectedColor, setSelectedColor] = (0, react_1.useState)(PEN_COLORS[0]);
45
49
  const currentPathRef = (0, react_1.useRef)('');
50
+ const selectedColorRef = (0, react_1.useRef)(selectedColor);
46
51
  const compositeRef = (0, react_1.useRef)(null);
47
52
  const [isSaving, setIsSaving] = (0, react_1.useState)(false);
53
+ // Keep ref in sync with state for gesture handler
54
+ selectedColorRef.current = selectedColor;
48
55
  const panGesture = react_native_gesture_handler_1.Gesture.Pan()
49
56
  .onStart((event) => {
50
57
  const newPath = `M${event.x},${event.y}`;
@@ -59,7 +66,7 @@ function AnnotationCanvas({ screenshotUri, onAnnotationComplete, onSkip, width,
59
66
  .onEnd(() => {
60
67
  const pathToSave = currentPathRef.current;
61
68
  if (pathToSave) {
62
- setPaths((prev) => [...prev, { d: pathToSave }]);
69
+ setPaths((prev) => [...prev, { d: pathToSave, color: selectedColorRef.current }]);
63
70
  currentPathRef.current = '';
64
71
  setCurrentPath('');
65
72
  }
@@ -102,23 +109,29 @@ function AnnotationCanvas({ screenshotUri, onAnnotationComplete, onSkip, width,
102
109
  width,
103
110
  height,
104
111
  }}>
105
- {paths.map((path, index) => (<react_native_svg_1.Path key={index} d={path.d} stroke="#FF3B30" strokeWidth={3} fill="none" strokeLinecap="round" strokeLinejoin="round"/>))}
106
- {currentPath ? (<react_native_svg_1.Path d={currentPath} stroke="#FF3B30" strokeWidth={3} fill="none" strokeLinecap="round" strokeLinejoin="round"/>) : null}
112
+ {paths.map((path, index) => (<react_native_svg_1.Path key={index} d={path.d} stroke={path.color} strokeWidth={3} fill="none" strokeLinecap="round" strokeLinejoin="round"/>))}
113
+ {currentPath ? (<react_native_svg_1.Path d={currentPath} stroke={selectedColor} strokeWidth={3} fill="none" strokeLinecap="round" strokeLinejoin="round"/>) : null}
107
114
  </react_native_svg_1.default>
108
115
  </react_native_gesture_handler_1.GestureDetector>
109
116
  </react_native_1.View>
110
117
 
118
+ {/* Toolbar */}
111
119
  <react_native_1.View style={{
112
120
  flexDirection: 'row',
113
121
  justifyContent: 'space-between',
122
+ alignItems: 'center',
114
123
  paddingHorizontal: 16,
115
124
  paddingVertical: 12,
125
+ backgroundColor: colors.background,
126
+ borderTopWidth: 1,
127
+ borderTopColor: colors.border,
116
128
  }}>
129
+ {/* Left: Undo + Clear */}
117
130
  <react_native_1.View style={{ flexDirection: 'row', gap: 12 }}>
118
131
  <react_native_1.TouchableOpacity onPress={handleUndo} disabled={paths.length === 0} accessibilityRole="button" accessibilityLabel="Undo last drawing">
119
132
  <react_native_1.Text style={{
120
133
  fontSize: 16,
121
- color: paths.length === 0 ? '#ccc' : '#007AFF',
134
+ color: paths.length === 0 ? colors.disabled : colors.primary,
122
135
  }}>
123
136
  Undo
124
137
  </react_native_1.Text>
@@ -126,22 +139,35 @@ function AnnotationCanvas({ screenshotUri, onAnnotationComplete, onSkip, width,
126
139
  <react_native_1.TouchableOpacity onPress={handleClear} disabled={paths.length === 0} accessibilityRole="button" accessibilityLabel="Clear all drawings">
127
140
  <react_native_1.Text style={{
128
141
  fontSize: 16,
129
- color: paths.length === 0 ? '#ccc' : '#FF3B30',
142
+ color: paths.length === 0 ? colors.disabled : colors.error,
130
143
  }}>
131
144
  Clear
132
145
  </react_native_1.Text>
133
146
  </react_native_1.TouchableOpacity>
134
147
  </react_native_1.View>
135
148
 
149
+ {/* Center: Color picker */}
150
+ <react_native_1.View style={{ flexDirection: 'row', gap: 8 }}>
151
+ {PEN_COLORS.map((color) => (<react_native_1.TouchableOpacity key={color} onPress={() => setSelectedColor(color)} accessibilityRole="button" accessibilityLabel={`Select ${color} pen color`} style={{
152
+ width: 24,
153
+ height: 24,
154
+ borderRadius: 12,
155
+ backgroundColor: color,
156
+ borderWidth: selectedColor === color ? 2 : 1,
157
+ borderColor: selectedColor === color ? colors.primary : colors.border,
158
+ }}/>))}
159
+ </react_native_1.View>
160
+
161
+ {/* Right: Skip + Done */}
136
162
  <react_native_1.View style={{ flexDirection: 'row', gap: 12 }}>
137
163
  <react_native_1.TouchableOpacity onPress={onSkip} accessibilityRole="button" accessibilityLabel="Skip annotation">
138
- <react_native_1.Text style={{ fontSize: 16, color: '#8E8E93' }}>Skip</react_native_1.Text>
164
+ <react_native_1.Text style={{ fontSize: 16, color: colors.textSecondary }}>Skip</react_native_1.Text>
139
165
  </react_native_1.TouchableOpacity>
140
166
  <react_native_1.TouchableOpacity onPress={handleDone} disabled={isSaving} accessibilityRole="button" accessibilityLabel="Done annotating">
141
167
  <react_native_1.Text style={{
142
168
  fontSize: 16,
143
169
  fontWeight: '600',
144
- color: isSaving ? '#ccc' : '#007AFF',
170
+ color: isSaving ? colors.disabled : colors.primary,
145
171
  }}>
146
172
  Done
147
173
  </react_native_1.Text>
@@ -1 +1 @@
1
- {"version":3,"file":"AnnotationCanvas.js","sourceRoot":"","sources":["../src/AnnotationCanvas.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnnotationCanvas.js","sourceRoot":"","sources":["../src/AnnotationCanvas.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import { type ColorSchemeName } from 'react-native';
2
3
  import type { Integration, BugReport } from './integrations/types';
3
4
  interface BugReportModalProps {
4
5
  visible: boolean;
@@ -6,10 +7,11 @@ interface BugReportModalProps {
6
7
  integrations: Integration[];
7
8
  metadata: Record<string, string> | (() => Record<string, string>);
8
9
  screenNameProvider: () => string;
10
+ colorScheme?: ColorSchemeName;
9
11
  onClose: () => void;
10
12
  onSubmitSuccess?: () => void;
11
13
  onError?: (error: Error, report: BugReport) => void;
12
14
  }
13
- export declare function BugReportModal({ visible, screenshotUri, integrations, metadata, screenNameProvider, onClose, onSubmitSuccess, onError, }: BugReportModalProps): React.JSX.Element;
15
+ export declare function BugReportModal({ visible, screenshotUri, integrations, metadata, screenNameProvider, colorScheme, onClose, onSubmitSuccess, onError, }: BugReportModalProps): React.JSX.Element;
14
16
  export {};
15
17
  //# sourceMappingURL=BugReportModal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BugReportModal.d.ts","sourceRoot":"","sources":["../src/BugReportModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAmBhE,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEnE,UAAU,mBAAmB;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClE,kBAAkB,EAAE,MAAM,MAAM,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;CACrD;AAMD,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,eAAe,EACf,OAAO,GACR,EAAE,mBAAmB,qBA+XrB"}
1
+ {"version":3,"file":"BugReportModal.d.ts","sourceRoot":"","sources":["../src/BugReportModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAChE,OAAO,EAWL,KAAK,eAAe,EACrB,MAAM,cAAc,CAAC;AAOtB,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAoBnE,UAAU,mBAAmB;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClE,kBAAkB,EAAE,MAAM,MAAM,CAAC;IACjC,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;CACrD;AA6BD,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,WAAW,EACX,OAAO,EACP,eAAe,EACf,OAAO,GACR,EAAE,mBAAmB,qBAwbrB"}
@@ -36,23 +36,63 @@ Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.BugReportModal = BugReportModal;
37
37
  const react_1 = __importStar(require("react"));
38
38
  const react_native_1 = require("react-native");
39
- const Clipboard = __importStar(require("expo-clipboard"));
40
39
  const AnnotationCanvas_1 = require("./AnnotationCanvas");
41
40
  const DeviceInfo_1 = require("./DeviceInfo");
42
41
  const StateCapture_1 = require("./StateCapture");
43
42
  const NavigationTracker_1 = require("./NavigationTracker");
44
43
  const ErrorBoundary_1 = require("./ErrorBoundary");
44
+ const useThemeColors_1 = require("./useThemeColors");
45
+ // Optional dep: expo-clipboard (only used for copy-to-clipboard fallback)
46
+ let Clipboard = null;
47
+ try {
48
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
49
+ Clipboard = require('expo-clipboard');
50
+ }
51
+ catch {
52
+ // expo-clipboard not installed — copy to clipboard disabled
53
+ }
54
+ // Optional dep: @react-native-community/netinfo
55
+ let NetInfo = null;
56
+ try {
57
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
58
+ NetInfo = require('@react-native-community/netinfo').default;
59
+ }
60
+ catch {
61
+ // netinfo not installed — offline detection disabled
62
+ }
45
63
  const MAX_RETRIES = 3;
46
- function BugReportModal({ visible, screenshotUri, integrations, metadata, screenNameProvider, onClose, onSubmitSuccess, onError, }) {
64
+ function DiagnosticsSummary({ colorScheme }) {
65
+ const colors = (0, useThemeColors_1.useThemeColors)(colorScheme);
66
+ const stateSnapshots = (0, StateCapture_1.getStateSnapshot)();
67
+ const navHistory = (0, NavigationTracker_1.getNavHistory)();
68
+ const lastError = (0, ErrorBoundary_1.getLastError)();
69
+ const parts = [];
70
+ if (stateSnapshots.length > 0)
71
+ parts.push(`${stateSnapshots.length} state snapshot${stateSnapshots.length === 1 ? '' : 's'}`);
72
+ if (navHistory.length > 0)
73
+ parts.push(`${navHistory.length} nav event${navHistory.length === 1 ? '' : 's'}`);
74
+ if (lastError)
75
+ parts.push('1 error');
76
+ if (parts.length === 0)
77
+ return null;
78
+ return (<react_native_1.View style={{ backgroundColor: colors.surface, borderRadius: 8, padding: 10, marginBottom: 12 }}>
79
+ <react_native_1.Text style={{ fontSize: 12, color: colors.textSecondary, textAlign: 'center' }}>
80
+ Including: {parts.join(', ')}, device info
81
+ {'\n'}Just describe what you saw.
82
+ </react_native_1.Text>
83
+ </react_native_1.View>);
84
+ }
85
+ function BugReportModal({ visible, screenshotUri, integrations, metadata, screenNameProvider, colorScheme, onClose, onSubmitSuccess, onError, }) {
86
+ const colors = (0, useThemeColors_1.useThemeColors)(colorScheme);
47
87
  const [step, setStep] = (0, react_1.useState)(screenshotUri ? 'annotate' : 'describe');
48
88
  const [annotatedUri, setAnnotatedUri] = (0, react_1.useState)(null);
49
89
  const [description, setDescription] = (0, react_1.useState)('');
50
90
  const [isSubmitting, setIsSubmitting] = (0, react_1.useState)(false);
51
91
  const [errorMessage, setErrorMessage] = (0, react_1.useState)('');
52
92
  const [retryCount, setRetryCount] = (0, react_1.useState)(0);
93
+ const [offlineWarning, setOfflineWarning] = (0, react_1.useState)(false);
53
94
  const { width: screenWidth } = react_native_1.Dimensions.get('window');
54
95
  const canvasHeight = screenWidth * 1.5;
55
- // Reset step when modal opens/closes or screenshot changes
56
96
  (0, react_1.useEffect)(() => {
57
97
  if (visible) {
58
98
  setStep(screenshotUri ? 'annotate' : 'describe');
@@ -60,8 +100,21 @@ function BugReportModal({ visible, screenshotUri, integrations, metadata, screen
60
100
  setDescription('');
61
101
  setErrorMessage('');
62
102
  setRetryCount(0);
103
+ setOfflineWarning(false);
63
104
  }
64
105
  }, [visible, screenshotUri]);
106
+ // Check connectivity when modal opens on describe step
107
+ (0, react_1.useEffect)(() => {
108
+ if (visible && step === 'describe' && NetInfo) {
109
+ NetInfo.fetch().then((state) => {
110
+ if (state.isConnected === false) {
111
+ setOfflineWarning(true);
112
+ }
113
+ }).catch(() => {
114
+ // NetInfo fetch failed — skip check
115
+ });
116
+ }
117
+ }, [visible, step]);
65
118
  const handleAnnotationComplete = (0, react_1.useCallback)((uri) => {
66
119
  setAnnotatedUri(uri);
67
120
  setStep('describe');
@@ -108,9 +161,18 @@ function BugReportModal({ visible, screenshotUri, integrations, metadata, screen
108
161
  return;
109
162
  setIsSubmitting(true);
110
163
  setErrorMessage('');
111
- const success = await sendReport();
112
- setStep(success ? 'success' : 'error');
113
- setIsSubmitting(false);
164
+ try {
165
+ const success = await sendReport();
166
+ setStep(success ? 'success' : 'error');
167
+ }
168
+ catch (error) {
169
+ const msg = error instanceof Error ? error.message : 'Unexpected error building report';
170
+ setErrorMessage(msg);
171
+ setStep('error');
172
+ }
173
+ finally {
174
+ setIsSubmitting(false);
175
+ }
114
176
  }, [isSubmitting, sendReport]);
115
177
  const handleRetry = (0, react_1.useCallback)(async () => {
116
178
  if (retryCount >= MAX_RETRIES || isSubmitting)
@@ -118,22 +180,34 @@ function BugReportModal({ visible, screenshotUri, integrations, metadata, screen
118
180
  setRetryCount((prev) => prev + 1);
119
181
  setIsSubmitting(true);
120
182
  setErrorMessage('');
121
- const success = await sendReport();
122
- if (success) {
123
- setStep('success');
183
+ try {
184
+ const success = await sendReport();
185
+ if (success) {
186
+ setStep('success');
187
+ }
188
+ }
189
+ catch (error) {
190
+ const msg = error instanceof Error ? error.message : 'Unexpected error';
191
+ setErrorMessage(msg);
192
+ }
193
+ finally {
194
+ setIsSubmitting(false);
124
195
  }
125
- setIsSubmitting(false);
126
- }, [retryCount, sendReport]);
127
- // handleClose defined before handleCopyToClipboard to avoid reference issue
196
+ }, [retryCount, sendReport, isSubmitting]);
128
197
  const handleClose = (0, react_1.useCallback)(() => {
129
198
  setStep(screenshotUri ? 'annotate' : 'describe');
130
199
  setAnnotatedUri(null);
131
200
  setDescription('');
132
201
  setErrorMessage('');
133
202
  setRetryCount(0);
203
+ setOfflineWarning(false);
134
204
  onClose();
135
205
  }, [onClose, screenshotUri]);
136
206
  const handleCopyToClipboard = (0, react_1.useCallback)(async () => {
207
+ if (!Clipboard) {
208
+ handleClose();
209
+ return;
210
+ }
137
211
  const report = buildReport();
138
212
  const text = [
139
213
  `Bug Report - ${report.screen}`,
@@ -149,7 +223,7 @@ function BugReportModal({ visible, screenshotUri, integrations, metadata, screen
149
223
  handleClose();
150
224
  }, [buildReport, handleClose]);
151
225
  return (<react_native_1.Modal visible={visible} animationType="slide" presentationStyle="pageSheet" onRequestClose={handleClose}>
152
- <react_native_1.KeyboardAvoidingView behavior={react_native_1.Platform.OS === 'ios' ? 'padding' : 'height'} style={{ flex: 1, backgroundColor: '#fff' }}>
226
+ <react_native_1.KeyboardAvoidingView behavior={react_native_1.Platform.OS === 'ios' ? 'padding' : 'height'} style={{ flex: 1, backgroundColor: colors.background }}>
153
227
  {/* Header */}
154
228
  <react_native_1.View style={{
155
229
  flexDirection: 'row',
@@ -158,25 +232,37 @@ function BugReportModal({ visible, screenshotUri, integrations, metadata, screen
158
232
  paddingHorizontal: 20,
159
233
  paddingVertical: 16,
160
234
  borderBottomWidth: 1,
161
- borderBottomColor: '#E5E5EA',
235
+ borderBottomColor: colors.border,
162
236
  }}>
163
- <react_native_1.Text style={{ fontSize: 18, fontWeight: '700', color: '#000' }}>
237
+ <react_native_1.Text style={{ fontSize: 18, fontWeight: '700', color: colors.text }}>
164
238
  Bug Report
165
239
  </react_native_1.Text>
166
240
  <react_native_1.TouchableOpacity onPress={handleClose} hitSlop={{ top: 10, bottom: 10, left: 10, right: 10 }} accessibilityRole="button" accessibilityLabel="Close bug report">
167
- <react_native_1.Text style={{ fontSize: 16, color: '#8E8E93' }}>Close</react_native_1.Text>
241
+ <react_native_1.Text style={{ fontSize: 16, color: colors.textSecondary }}>Close</react_native_1.Text>
168
242
  </react_native_1.TouchableOpacity>
169
243
  </react_native_1.View>
170
244
 
171
- {step === 'annotate' && screenshotUri ? (<AnnotationCanvas_1.AnnotationCanvas screenshotUri={screenshotUri} onAnnotationComplete={handleAnnotationComplete} onSkip={handleSkipAnnotation} width={screenWidth} height={canvasHeight}/>) : step === 'describe' ? (<react_native_1.View style={{ flex: 1, padding: 20 }}>
245
+ {step === 'annotate' && screenshotUri ? (<AnnotationCanvas_1.AnnotationCanvas screenshotUri={screenshotUri} onAnnotationComplete={handleAnnotationComplete} onSkip={handleSkipAnnotation} width={screenWidth} height={canvasHeight} colorScheme={colorScheme}/>) : step === 'describe' ? (<react_native_1.View style={{ flex: 1, padding: 20 }}>
246
+ {/* Offline warning */}
247
+ {offlineWarning ? (<react_native_1.View style={{
248
+ backgroundColor: colors.error + '18',
249
+ borderRadius: 8,
250
+ padding: 12,
251
+ marginBottom: 12,
252
+ }}>
253
+ <react_native_1.Text style={{ fontSize: 13, color: colors.error, textAlign: 'center' }}>
254
+ You appear to be offline. Your report may not be delivered.
255
+ </react_native_1.Text>
256
+ </react_native_1.View>) : null}
257
+
172
258
  {/* Expo Go info banner */}
173
259
  {!screenshotUri && !annotatedUri ? (<react_native_1.View style={{
174
- backgroundColor: '#F2F2F7',
260
+ backgroundColor: colors.surface,
175
261
  borderRadius: 8,
176
262
  padding: 12,
177
263
  marginBottom: 16,
178
264
  }}>
179
- <react_native_1.Text style={{ fontSize: 13, color: '#8E8E93', textAlign: 'center' }}>
265
+ <react_native_1.Text style={{ fontSize: 13, color: colors.textSecondary, textAlign: 'center' }}>
180
266
  Screenshot unavailable in Expo Go — description and device info still collected
181
267
  </react_native_1.Text>
182
268
  </react_native_1.View>) : null}
@@ -188,28 +274,31 @@ function BugReportModal({ visible, screenshotUri, integrations, metadata, screen
188
274
  height: 180,
189
275
  borderRadius: 8,
190
276
  borderWidth: 1,
191
- borderColor: '#E5E5EA',
277
+ borderColor: colors.border,
192
278
  }} resizeMode="cover" accessibilityLabel="Screenshot preview"/>
193
279
  </react_native_1.View>) : null}
194
280
 
195
- <react_native_1.Text style={{ fontSize: 13, color: '#8E8E93', marginBottom: 12 }}>
281
+ {/* Diagnostics summary */}
282
+ <DiagnosticsSummary colorScheme={colorScheme}/>
283
+
284
+ <react_native_1.Text style={{ fontSize: 13, color: colors.textSecondary, marginBottom: 12 }}>
196
285
  Screen: {screenNameProvider()}
197
286
  </react_native_1.Text>
198
287
 
199
- <react_native_1.TextInput value={description} onChangeText={setDescription} placeholder="What went wrong?" placeholderTextColor="#C7C7CC" multiline numberOfLines={5} textAlignVertical="top" style={{
288
+ <react_native_1.TextInput value={description} onChangeText={setDescription} placeholder="What went wrong?" placeholderTextColor={colors.textTertiary} multiline numberOfLines={5} textAlignVertical="top" style={{
200
289
  borderWidth: 1,
201
- borderColor: '#E5E5EA',
290
+ borderColor: colors.inputBorder,
202
291
  borderRadius: 12,
203
292
  padding: 16,
204
293
  fontSize: 16,
205
- color: '#000',
206
- backgroundColor: '#F2F2F7',
294
+ color: colors.text,
295
+ backgroundColor: colors.inputBackground,
207
296
  minHeight: 120,
208
297
  marginBottom: 16,
209
298
  }} accessibilityLabel="Bug description" autoFocus/>
210
299
 
211
300
  <react_native_1.TouchableOpacity onPress={handleSubmit} disabled={isSubmitting} style={{
212
- backgroundColor: isSubmitting ? '#C7C7CC' : '#007AFF',
301
+ backgroundColor: isSubmitting ? colors.disabled : colors.primary,
213
302
  borderRadius: 12,
214
303
  paddingVertical: 16,
215
304
  alignItems: 'center',
@@ -227,20 +316,20 @@ function BugReportModal({ visible, screenshotUri, integrations, metadata, screen
227
316
  <react_native_1.Text style={{
228
317
  fontSize: 22,
229
318
  fontWeight: '700',
230
- color: '#000',
319
+ color: colors.text,
231
320
  marginBottom: 8,
232
321
  }}>
233
322
  Sent!
234
323
  </react_native_1.Text>
235
324
  <react_native_1.Text style={{
236
325
  fontSize: 16,
237
- color: '#8E8E93',
326
+ color: colors.textSecondary,
238
327
  textAlign: 'center',
239
328
  }}>
240
329
  Bug report submitted. Thanks for helping improve the app.
241
330
  </react_native_1.Text>
242
331
  <react_native_1.TouchableOpacity onPress={handleClose} style={{
243
- backgroundColor: '#007AFF',
332
+ backgroundColor: colors.primary,
244
333
  borderRadius: 12,
245
334
  paddingVertical: 16,
246
335
  paddingHorizontal: 40,
@@ -259,43 +348,43 @@ function BugReportModal({ visible, screenshotUri, integrations, metadata, screen
259
348
  <react_native_1.Text style={{
260
349
  fontSize: 18,
261
350
  fontWeight: '600',
262
- color: '#FF3B30',
351
+ color: colors.error,
263
352
  marginBottom: 8,
264
353
  }}>
265
354
  Failed to send
266
355
  </react_native_1.Text>
267
356
  <react_native_1.Text style={{
268
357
  fontSize: 14,
269
- color: '#8E8E93',
358
+ color: colors.textSecondary,
270
359
  textAlign: 'center',
271
360
  marginBottom: 24,
272
361
  }}>
273
362
  {errorMessage}
274
363
  </react_native_1.Text>
275
364
 
276
- {retryCount < MAX_RETRIES ? (<react_native_1.TouchableOpacity onPress={handleRetry} style={{
277
- backgroundColor: '#007AFF',
365
+ {retryCount < MAX_RETRIES ? (<react_native_1.TouchableOpacity onPress={handleRetry} disabled={isSubmitting} style={{
366
+ backgroundColor: colors.primary,
278
367
  borderRadius: 12,
279
368
  paddingVertical: 16,
280
369
  paddingHorizontal: 40,
281
370
  marginBottom: 12,
282
371
  }} accessibilityRole="button" accessibilityLabel="Retry sending">
283
- <react_native_1.Text style={{ fontSize: 16, fontWeight: '600', color: '#fff' }}>
284
- Retry
285
- </react_native_1.Text>
372
+ {isSubmitting ? (<react_native_1.ActivityIndicator size="small" color="#fff"/>) : (<react_native_1.Text style={{ fontSize: 16, fontWeight: '600', color: '#fff' }}>
373
+ Retry
374
+ </react_native_1.Text>)}
286
375
  </react_native_1.TouchableOpacity>) : null}
287
376
 
288
- <react_native_1.TouchableOpacity onPress={handleCopyToClipboard} style={{
289
- borderWidth: 1,
290
- borderColor: '#007AFF',
291
- borderRadius: 12,
292
- paddingVertical: 16,
293
- paddingHorizontal: 40,
294
- }} accessibilityRole="button" accessibilityLabel="Copy report to clipboard">
295
- <react_native_1.Text style={{ fontSize: 16, fontWeight: '600', color: '#007AFF' }}>
296
- Copy to Clipboard
297
- </react_native_1.Text>
298
- </react_native_1.TouchableOpacity>
377
+ {Clipboard ? (<react_native_1.TouchableOpacity onPress={handleCopyToClipboard} style={{
378
+ borderWidth: 1,
379
+ borderColor: colors.primary,
380
+ borderRadius: 12,
381
+ paddingVertical: 16,
382
+ paddingHorizontal: 40,
383
+ }} accessibilityRole="button" accessibilityLabel="Copy report to clipboard">
384
+ <react_native_1.Text style={{ fontSize: 16, fontWeight: '600', color: colors.primary }}>
385
+ Copy to Clipboard
386
+ </react_native_1.Text>
387
+ </react_native_1.TouchableOpacity>) : null}
299
388
  </react_native_1.View>) : null}
300
389
  </react_native_1.KeyboardAvoidingView>
301
390
  </react_native_1.Modal>);
@@ -1 +1 @@
1
- {"version":3,"file":"BugReportModal.js","sourceRoot":"","sources":["../src/BugReportModal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BugReportModal.js","sourceRoot":"","sources":["../src/BugReportModal.tsx"],"names":[],"mappings":"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"}