@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
@@ -1 +1 @@
1
- {"version":3,"file":"slack.test.js","sourceRoot":"","sources":["../../../src/__tests__/integrations/slack.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack.test.js","sourceRoot":"","sources":["../../../src/__tests__/integrations/slack.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=useThemeColors.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useThemeColors.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/useThemeColors.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const react_native_1 = require("@testing-library/react-native");
4
+ const useThemeColors_1 = require("../useThemeColors");
5
+ // Mock useColorScheme
6
+ let mockColorScheme = 'light';
7
+ jest.mock('react-native', () => {
8
+ const actual = jest.requireActual('react-native');
9
+ return {
10
+ ...actual,
11
+ useColorScheme: () => mockColorScheme,
12
+ };
13
+ });
14
+ describe('useThemeColors', () => {
15
+ it('returns light colors by default', () => {
16
+ mockColorScheme = 'light';
17
+ const { result } = (0, react_native_1.renderHook)(() => (0, useThemeColors_1.useThemeColors)());
18
+ expect(result.current.background).toBe('#fff');
19
+ expect(result.current.text).toBe('#000');
20
+ });
21
+ it('returns dark colors when device is dark', () => {
22
+ mockColorScheme = 'dark';
23
+ const { result } = (0, react_native_1.renderHook)(() => (0, useThemeColors_1.useThemeColors)());
24
+ expect(result.current.background).toBe('#1C1C1E');
25
+ expect(result.current.text).toBe('#fff');
26
+ });
27
+ it('respects override parameter', () => {
28
+ mockColorScheme = 'dark';
29
+ const { result } = (0, react_native_1.renderHook)(() => (0, useThemeColors_1.useThemeColors)('light'));
30
+ expect(result.current.background).toBe('#fff');
31
+ });
32
+ it('override dark on light device', () => {
33
+ mockColorScheme = 'light';
34
+ const { result } = (0, react_native_1.renderHook)(() => (0, useThemeColors_1.useThemeColors)('dark'));
35
+ expect(result.current.background).toBe('#1C1C1E');
36
+ });
37
+ });
38
+ //# sourceMappingURL=useThemeColors.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useThemeColors.test.js","sourceRoot":"","sources":["../../src/__tests__/useThemeColors.test.ts"],"names":[],"mappings":";;AAAA,gEAA2D;AAC3D,sDAAmD;AAEnD,sBAAsB;AACtB,IAAI,eAAe,GAAqB,OAAO,CAAC;AAChD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE;IAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IAClD,OAAO;QACL,GAAG,MAAM;QACT,cAAc,EAAE,GAAG,EAAE,CAAC,eAAe;KACtC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,eAAe,GAAG,OAAO,CAAC;QAC1B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,yBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,+BAAc,GAAE,CAAC,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,eAAe,GAAG,MAAM,CAAC;QACzB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,yBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,+BAAc,GAAE,CAAC,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,eAAe,GAAG,MAAM,CAAC;QACzB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,yBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,+BAAc,EAAC,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,eAAe,GAAG,OAAO,CAAC;QAC1B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,yBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,+BAAc,EAAC,MAAM,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -4,5 +4,7 @@ export { WebhookIntegration } from './integrations/webhook';
4
4
  export { trackStore, untrackStore } from './StateCapture';
5
5
  export { useNavigationTracker } from './NavigationTracker';
6
6
  export { BugPulseErrorBoundary } from './ErrorBoundary';
7
+ export { useThemeColors } from './useThemeColors';
8
+ export type { ThemeColors } from './useThemeColors';
7
9
  export type { Integration, BugReport, DeviceInfo, SendResult, Diagnostics, StateSnapshot, NavEntry, ErrorInfo, } from './integrations/types';
8
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,YAAY,EACV,WAAW,EACX,SAAS,EACT,UAAU,EACV,UAAU,EACV,WAAW,EACX,aAAa,EACb,QAAQ,EACR,SAAS,GACV,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,YAAY,EACV,WAAW,EACX,SAAS,EACT,UAAU,EACV,UAAU,EACV,WAAW,EACX,aAAa,EACb,QAAQ,EACR,SAAS,GACV,MAAM,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BugPulseErrorBoundary = exports.useNavigationTracker = exports.untrackStore = exports.trackStore = exports.WebhookIntegration = exports.SlackIntegration = exports.useBugReport = exports.BugReportProvider = void 0;
3
+ exports.useThemeColors = exports.BugPulseErrorBoundary = exports.useNavigationTracker = exports.untrackStore = exports.trackStore = exports.WebhookIntegration = exports.SlackIntegration = exports.useBugReport = exports.BugReportProvider = void 0;
4
4
  var BugReportProvider_1 = require("./BugReportProvider");
5
5
  Object.defineProperty(exports, "BugReportProvider", { enumerable: true, get: function () { return BugReportProvider_1.BugReportProvider; } });
6
6
  Object.defineProperty(exports, "useBugReport", { enumerable: true, get: function () { return BugReportProvider_1.useBugReport; } });
@@ -15,4 +15,6 @@ var NavigationTracker_1 = require("./NavigationTracker");
15
15
  Object.defineProperty(exports, "useNavigationTracker", { enumerable: true, get: function () { return NavigationTracker_1.useNavigationTracker; } });
16
16
  var ErrorBoundary_1 = require("./ErrorBoundary");
17
17
  Object.defineProperty(exports, "BugPulseErrorBoundary", { enumerable: true, get: function () { return ErrorBoundary_1.BugPulseErrorBoundary; } });
18
+ var useThemeColors_1 = require("./useThemeColors");
19
+ Object.defineProperty(exports, "useThemeColors", { enumerable: true, get: function () { return useThemeColors_1.useThemeColors; } });
18
20
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,yDAAsE;AAA7D,sHAAA,iBAAiB,OAAA;AAAE,iHAAA,YAAY,OAAA;AACxC,8CAAwD;AAA/C,yGAAA,gBAAgB,OAAA;AACzB,kDAA4D;AAAnD,6GAAA,kBAAkB,OAAA;AAC3B,+CAA0D;AAAjD,0GAAA,UAAU,OAAA;AAAE,4GAAA,YAAY,OAAA;AACjC,yDAA2D;AAAlD,yHAAA,oBAAoB,OAAA;AAC7B,iDAAwD;AAA/C,sHAAA,qBAAqB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,yDAAsE;AAA7D,sHAAA,iBAAiB,OAAA;AAAE,iHAAA,YAAY,OAAA;AACxC,8CAAwD;AAA/C,yGAAA,gBAAgB,OAAA;AACzB,kDAA4D;AAAnD,6GAAA,kBAAkB,OAAA;AAC3B,+CAA0D;AAAjD,0GAAA,UAAU,OAAA;AAAE,4GAAA,YAAY,OAAA;AACjC,yDAA2D;AAAlD,yHAAA,oBAAoB,OAAA;AAC7B,iDAAwD;AAA/C,sHAAA,qBAAqB,OAAA;AAC9B,mDAAkD;AAAzC,gHAAA,cAAc,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../../src/integrations/slack.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,WAAW,EAAc,MAAM,SAAS,CAAC;AAElE,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAyHD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAgDjE"}
1
+ {"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../../src/integrations/slack.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,WAAW,EAAc,MAAM,SAAS,CAAC;AAElE,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAyID,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAgDjE"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SlackIntegration = SlackIntegration;
4
4
  const fileToBase64_1 = require("../utils/fileToBase64");
5
5
  const DEFAULT_IMGBB_URL = 'https://api.imgbb.com/1/upload';
6
+ const MAX_BLOCK_TEXT = 3000; // Slack Block Kit limit
6
7
  async function uploadImage(uri, apiKey, uploadUrl) {
7
8
  try {
8
9
  const base64 = await (0, fileToBase64_1.fileToBase64)(uri);
@@ -27,32 +28,48 @@ function truncateString(str, maxLen) {
27
28
  return str;
28
29
  return str.slice(0, maxLen) + '...';
29
30
  }
30
- function formatDiagnosticsForSlack(report) {
31
+ function formatTimeline(report) {
32
+ if (!report.diagnostics)
33
+ return '';
34
+ const { stateSnapshots, navHistory, lastError } = report.diagnostics;
31
35
  const lines = [];
32
- if (report.diagnostics) {
33
- const { stateSnapshots, navHistory, lastError } = report.diagnostics;
34
- if (lastError) {
35
- lines.push(`*Last Error:* ${lastError.message}`);
36
- if (lastError.stack) {
37
- lines.push(`\`${truncateString(lastError.stack.split('\n')[0] ?? '', 200)}\``);
36
+ // Build a chronological narrative
37
+ if (navHistory.length > 0) {
38
+ const route = navHistory.map((e) => e.pathname).join(' → ');
39
+ lines.push(`*Navigation:* ${truncateString(route, 500)}`);
40
+ }
41
+ if (lastError) {
42
+ lines.push('');
43
+ lines.push(`*Error:* \`${truncateString(lastError.message, 200)}\``);
44
+ if (lastError.stack) {
45
+ const firstLine = lastError.stack.split('\n')[0] ?? '';
46
+ if (firstLine !== lastError.message) {
47
+ lines.push(`\`${truncateString(firstLine, 200)}\``);
38
48
  }
39
49
  }
40
- if (navHistory.length > 0) {
41
- const recentRoutes = navHistory.slice(-5);
42
- lines.push(`*Nav History (last ${recentRoutes.length}):*`);
43
- for (const entry of recentRoutes) {
44
- lines.push(` ${entry.pathname}`);
45
- }
50
+ if (lastError.componentStack) {
51
+ const component = lastError.componentStack.trim().split('\n')[0] ?? '';
52
+ lines.push(`_Component:_ ${truncateString(component, 200)}`);
46
53
  }
47
- if (stateSnapshots.length > 0) {
48
- const recentStates = stateSnapshots.slice(-3);
49
- lines.push(`*State Snapshots (last ${recentStates.length}):*`);
50
- for (const snap of recentStates) {
51
- lines.push(` _${snap.name}:_ ${truncateString(snap.state, 200)}${snap.truncated ? ' [TRUNCATED]' : ''}`);
52
- }
54
+ }
55
+ if (stateSnapshots.length > 0) {
56
+ lines.push('');
57
+ lines.push(`*App State* (${stateSnapshots.length} snapshot${stateSnapshots.length === 1 ? '' : 's'}):`);
58
+ // Show most recent snapshots, grouped by store name
59
+ const byStore = new Map();
60
+ for (const snap of stateSnapshots) {
61
+ const existing = byStore.get(snap.name) ?? [];
62
+ existing.push(snap);
63
+ byStore.set(snap.name, existing);
64
+ }
65
+ for (const [name, snaps] of byStore) {
66
+ const latest = snaps[snaps.length - 1];
67
+ const statePreview = truncateString(latest.state, 150);
68
+ lines.push(` _${name}:_ \`${statePreview}\`${latest.truncated ? ' [TRUNCATED]' : ''}`);
53
69
  }
54
70
  }
55
- return lines.join('\n');
71
+ const result = lines.join('\n');
72
+ return truncateString(result, MAX_BLOCK_TEXT);
56
73
  }
57
74
  function formatSlackMessage(report, screenshotUrl) {
58
75
  const fields = [
@@ -79,11 +96,11 @@ function formatSlackMessage(report, screenshotUrl) {
79
96
  text: { type: 'mrkdwn', text: fields.join('\n') },
80
97
  },
81
98
  ];
82
- const diagnosticsText = formatDiagnosticsForSlack(report);
83
- if (diagnosticsText) {
99
+ const timeline = formatTimeline(report);
100
+ if (timeline) {
84
101
  blocks.push({
85
102
  type: 'section',
86
- text: { type: 'mrkdwn', text: diagnosticsText },
103
+ text: { type: 'mrkdwn', text: timeline },
87
104
  });
88
105
  }
89
106
  if (screenshotUrl) {
@@ -103,7 +120,7 @@ function SlackIntegration(config) {
103
120
  let screenshotUrl = null;
104
121
  const imageUri = report.annotatedScreenshot ?? report.screenshot;
105
122
  if (imageUri && !config.imageUploadKey) {
106
- console.warn('[expo-bug-report] Screenshot available but no imageUploadKey configured. ' +
123
+ console.warn('[BugPulse] Screenshot available but no imageUploadKey configured. ' +
107
124
  'Bug report will be sent without the screenshot image. ' +
108
125
  'Add imageUploadKey to SlackIntegration config to include screenshots.');
109
126
  }
@@ -1 +1 @@
1
- {"version":3,"file":"slack.js","sourceRoot":"","sources":["../../src/integrations/slack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack.js","sourceRoot":"","sources":["../../src/integrations/slack.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { Integration } from './types';
2
2
  interface WebhookConfig {
3
3
  url: string;
4
4
  headers?: Record<string, string>;
5
+ maxPayloadBytes?: number;
5
6
  }
6
7
  export declare function WebhookIntegration(config: WebhookConfig): Integration;
7
8
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../src/integrations/webhook.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,WAAW,EAAc,MAAM,SAAS,CAAC;AAElE,UAAU,aAAa;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,WAAW,CA0CrE"}
1
+ {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../src/integrations/webhook.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,WAAW,EAAc,MAAM,SAAS,CAAC;AAElE,UAAU,aAAa;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAeD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,WAAW,CA0DrE"}
@@ -2,20 +2,43 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.WebhookIntegration = WebhookIntegration;
4
4
  const fileToBase64_1 = require("../utils/fileToBase64");
5
+ const DEFAULT_MAX_PAYLOAD_BYTES = 1000000; // 1MB
6
+ async function safeFileToBase64(uri) {
7
+ if (!uri)
8
+ return null;
9
+ try {
10
+ return await (0, fileToBase64_1.fileToBase64)(uri);
11
+ }
12
+ catch (error) {
13
+ const reason = error instanceof Error ? error.message : 'unknown error';
14
+ console.warn(`[BugPulse] Failed to encode file as base64: ${reason}. Sending report without this image.`);
15
+ return null;
16
+ }
17
+ }
5
18
  function WebhookIntegration(config) {
19
+ const maxBytes = config.maxPayloadBytes ?? DEFAULT_MAX_PAYLOAD_BYTES;
6
20
  return {
7
21
  name: 'webhook',
8
22
  async send(report) {
9
23
  try {
24
+ let screenshotBase64 = await safeFileToBase64(report.screenshot);
25
+ let annotatedScreenshotBase64 = await safeFileToBase64(report.annotatedScreenshot);
26
+ // Check if base64 images exceed size limit
27
+ const screenshotSize = screenshotBase64?.length ?? 0;
28
+ const annotatedSize = annotatedScreenshotBase64?.length ?? 0;
29
+ let screenshotSkipped = false;
30
+ if (screenshotSize + annotatedSize > maxBytes) {
31
+ console.warn(`[BugPulse] Screenshot base64 exceeds ${Math.round(maxBytes / 1024)}KB limit. Sending report without screenshot.`);
32
+ screenshotBase64 = null;
33
+ annotatedScreenshotBase64 = null;
34
+ screenshotSkipped = true;
35
+ }
10
36
  const payload = {
11
37
  ...report,
12
- screenshotBase64: report.screenshot
13
- ? await (0, fileToBase64_1.fileToBase64)(report.screenshot)
14
- : null,
15
- annotatedScreenshotBase64: report.annotatedScreenshot
16
- ? await (0, fileToBase64_1.fileToBase64)(report.annotatedScreenshot)
17
- : null,
38
+ screenshotBase64,
39
+ annotatedScreenshotBase64,
18
40
  diagnostics: report.diagnostics ?? null,
41
+ ...(screenshotSkipped && { screenshotSkipped: true }),
19
42
  };
20
43
  const response = await fetch(config.url, {
21
44
  method: 'POST',
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../src/integrations/webhook.ts"],"names":[],"mappings":";;AAQA,gDA0CC;AAlDD,wDAAqD;AAQrD,SAAgB,kBAAkB,CAAC,MAAqB;IACtD,OAAO;QACL,IAAI,EAAE,SAAS;QACf,KAAK,CAAC,IAAI,CAAC,MAAiB;YAC1B,IAAI,CAAC;gBACH,MAAM,OAAO,GAA4B;oBACvC,GAAG,MAAM;oBACT,gBAAgB,EAAE,MAAM,CAAC,UAAU;wBACjC,CAAC,CAAC,MAAM,IAAA,2BAAY,EAAC,MAAM,CAAC,UAAU,CAAC;wBACvC,CAAC,CAAC,IAAI;oBACR,yBAAyB,EAAE,MAAM,CAAC,mBAAmB;wBACnD,CAAC,CAAC,MAAM,IAAA,2BAAY,EAAC,MAAM,CAAC,mBAAmB,CAAC;wBAChD,CAAC,CAAC,IAAI;oBACR,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;iBACxC,CAAC;gBAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE;oBACvC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;wBAClC,GAAG,MAAM,CAAC,OAAO;qBAClB;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;iBAC9B,CAAC,CAAC;gBAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,oBAAoB,QAAQ,CAAC,MAAM,EAAE;qBAC7C,CAAC;gBACJ,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EACH,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB;iBACjE,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../src/integrations/webhook.ts"],"names":[],"mappings":";;AAsBA,gDA0DC;AAhFD,wDAAqD;AASrD,MAAM,yBAAyB,GAAG,OAAS,CAAC,CAAC,MAAM;AAEnD,KAAK,UAAU,gBAAgB,CAAC,GAAkB;IAChD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,MAAM,IAAA,2BAAY,EAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,+CAA+C,MAAM,sCAAsC,CAAC,CAAC;QAC1G,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAgB,kBAAkB,CAAC,MAAqB;IACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,eAAe,IAAI,yBAAyB,CAAC;IAErE,OAAO;QACL,IAAI,EAAE,SAAS;QACf,KAAK,CAAC,IAAI,CAAC,MAAiB;YAC1B,IAAI,CAAC;gBACH,IAAI,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACjE,IAAI,yBAAyB,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBAEnF,2CAA2C;gBAC3C,MAAM,cAAc,GAAG,gBAAgB,EAAE,MAAM,IAAI,CAAC,CAAC;gBACrD,MAAM,aAAa,GAAG,yBAAyB,EAAE,MAAM,IAAI,CAAC,CAAC;gBAE7D,IAAI,iBAAiB,GAAG,KAAK,CAAC;gBAC9B,IAAI,cAAc,GAAG,aAAa,GAAG,QAAQ,EAAE,CAAC;oBAC9C,OAAO,CAAC,IAAI,CACV,wCAAwC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,8CAA8C,CAClH,CAAC;oBACF,gBAAgB,GAAG,IAAI,CAAC;oBACxB,yBAAyB,GAAG,IAAI,CAAC;oBACjC,iBAAiB,GAAG,IAAI,CAAC;gBAC3B,CAAC;gBAED,MAAM,OAAO,GAA4B;oBACvC,GAAG,MAAM;oBACT,gBAAgB;oBAChB,yBAAyB;oBACzB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;oBACvC,GAAG,CAAC,iBAAiB,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;iBACtD,CAAC;gBAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE;oBACvC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;wBAClC,GAAG,MAAM,CAAC,OAAO;qBAClB;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;iBAC9B,CAAC,CAAC;gBAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,oBAAoB,QAAQ,CAAC,MAAM,EAAE;qBAC7C,CAAC;gBACJ,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EACH,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB;iBACjE,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { type ColorSchemeName } from 'react-native';
2
+ export interface ThemeColors {
3
+ background: string;
4
+ surface: string;
5
+ border: string;
6
+ text: string;
7
+ textSecondary: string;
8
+ textTertiary: string;
9
+ inputBackground: string;
10
+ inputBorder: string;
11
+ primary: string;
12
+ error: string;
13
+ disabled: string;
14
+ }
15
+ export declare function useThemeColors(override?: ColorSchemeName): ThemeColors;
16
+ //# sourceMappingURL=useThemeColors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useThemeColors.d.ts","sourceRoot":"","sources":["../src/useThemeColors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpE,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AA8BD,wBAAgB,cAAc,CAAC,QAAQ,CAAC,EAAE,eAAe,GAAG,WAAW,CAItE"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useThemeColors = useThemeColors;
4
+ const react_native_1 = require("react-native");
5
+ const lightColors = {
6
+ background: '#fff',
7
+ surface: '#F2F2F7',
8
+ border: '#E5E5EA',
9
+ text: '#000',
10
+ textSecondary: '#8E8E93',
11
+ textTertiary: '#C7C7CC',
12
+ inputBackground: '#F2F2F7',
13
+ inputBorder: '#E5E5EA',
14
+ primary: '#007AFF',
15
+ error: '#FF3B30',
16
+ disabled: '#C7C7CC',
17
+ };
18
+ const darkColors = {
19
+ background: '#1C1C1E',
20
+ surface: '#2C2C2E',
21
+ border: '#38383A',
22
+ text: '#fff',
23
+ textSecondary: '#8E8E93',
24
+ textTertiary: '#48484A',
25
+ inputBackground: '#2C2C2E',
26
+ inputBorder: '#38383A',
27
+ primary: '#0A84FF',
28
+ error: '#FF453A',
29
+ disabled: '#48484A',
30
+ };
31
+ function useThemeColors(override) {
32
+ const deviceScheme = (0, react_native_1.useColorScheme)();
33
+ const scheme = override ?? deviceScheme;
34
+ return scheme === 'dark' ? darkColors : lightColors;
35
+ }
36
+ //# sourceMappingURL=useThemeColors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useThemeColors.js","sourceRoot":"","sources":["../src/useThemeColors.ts"],"names":[],"mappings":";;AA4CA,wCAIC;AAhDD,+CAAoE;AAgBpE,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,MAAM;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,MAAM;IACZ,aAAa,EAAE,SAAS;IACxB,YAAY,EAAE,SAAS;IACvB,eAAe,EAAE,SAAS;IAC1B,WAAW,EAAE,SAAS;IACtB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,SAAS;CACpB,CAAC;AAEF,MAAM,UAAU,GAAgB;IAC9B,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,MAAM;IACZ,aAAa,EAAE,SAAS;IACxB,YAAY,EAAE,SAAS;IACvB,eAAe,EAAE,SAAS;IAC1B,WAAW,EAAE,SAAS;IACtB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,SAAS;CACpB,CAAC;AAEF,SAAgB,cAAc,CAAC,QAA0B;IACvD,MAAM,YAAY,GAAG,IAAA,6BAAc,GAAE,CAAC;IACtC,MAAM,MAAM,GAAG,QAAQ,IAAI,YAAY,CAAC;IACxC,OAAO,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;AACtD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bugpulse/react-native",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Lightweight in-app bug reporting for React Native & Expo. Shake to report. Screenshot annotation. Pluggable integrations.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -22,7 +22,6 @@
22
22
  "author": "Sambulo Senda",
23
23
  "license": "MIT",
24
24
  "peerDependencies": {
25
- "expo-clipboard": ">=5.0.0",
26
25
  "expo-constants": ">=16.0.0",
27
26
  "expo-device": ">=6.0.0",
28
27
  "expo-file-system": ">=16.0.0",
@@ -37,6 +36,15 @@
37
36
  "peerDependenciesMeta": {
38
37
  "expo-router": {
39
38
  "optional": true
39
+ },
40
+ "expo-clipboard": {
41
+ "optional": true
42
+ },
43
+ "expo-haptics": {
44
+ "optional": true
45
+ },
46
+ "@react-native-community/netinfo": {
47
+ "optional": true
40
48
  }
41
49
  },
42
50
  "devDependencies": {