rn-backstage 1.3.0 → 1.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.
Files changed (83) hide show
  1. package/README.md +27 -0
  2. package/lib/commonjs/Backstage.js +13 -2
  3. package/lib/commonjs/Backstage.js.map +1 -1
  4. package/lib/commonjs/bug-report.js +173 -0
  5. package/lib/commonjs/bug-report.js.map +1 -0
  6. package/lib/commonjs/components/BackstagePanel.js +82 -15
  7. package/lib/commonjs/components/BackstagePanel.js.map +1 -1
  8. package/lib/commonjs/components/BugReportComposer.js +510 -0
  9. package/lib/commonjs/components/BugReportComposer.js.map +1 -0
  10. package/lib/commonjs/components/FlagsTab.js +10 -2
  11. package/lib/commonjs/components/FlagsTab.js.map +1 -1
  12. package/lib/commonjs/components/LogsTab.js +1 -3
  13. package/lib/commonjs/components/LogsTab.js.map +1 -1
  14. package/lib/commonjs/components/NetworkTab.js +1 -2
  15. package/lib/commonjs/components/NetworkTab.js.map +1 -1
  16. package/lib/commonjs/components/StorageTab.js +207 -190
  17. package/lib/commonjs/components/StorageTab.js.map +1 -1
  18. package/lib/commonjs/constants.js +16 -0
  19. package/lib/commonjs/constants.js.map +1 -1
  20. package/lib/commonjs/index.js +7 -0
  21. package/lib/commonjs/index.js.map +1 -1
  22. package/lib/commonjs/types.js +1 -0
  23. package/lib/commonjs/types.js.map +1 -1
  24. package/lib/module/Backstage.js +13 -2
  25. package/lib/module/Backstage.js.map +1 -1
  26. package/lib/module/bug-report.js +164 -0
  27. package/lib/module/bug-report.js.map +1 -0
  28. package/lib/module/components/BackstagePanel.js +83 -16
  29. package/lib/module/components/BackstagePanel.js.map +1 -1
  30. package/lib/module/components/BugReportComposer.js +505 -0
  31. package/lib/module/components/BugReportComposer.js.map +1 -0
  32. package/lib/module/components/FlagsTab.js +12 -4
  33. package/lib/module/components/FlagsTab.js.map +1 -1
  34. package/lib/module/components/LogsTab.js +1 -3
  35. package/lib/module/components/LogsTab.js.map +1 -1
  36. package/lib/module/components/NetworkTab.js +1 -2
  37. package/lib/module/components/NetworkTab.js.map +1 -1
  38. package/lib/module/components/StorageTab.js +208 -191
  39. package/lib/module/components/StorageTab.js.map +1 -1
  40. package/lib/module/constants.js +16 -0
  41. package/lib/module/constants.js.map +1 -1
  42. package/lib/module/index.js +1 -0
  43. package/lib/module/index.js.map +1 -1
  44. package/lib/module/types.js +2 -0
  45. package/lib/module/types.js.map +1 -1
  46. package/lib/typescript/Backstage.d.ts.map +1 -1
  47. package/lib/typescript/bug-report.d.ts +12 -0
  48. package/lib/typescript/bug-report.d.ts.map +1 -0
  49. package/lib/typescript/components/BackstagePanel.d.ts +3 -1
  50. package/lib/typescript/components/BackstagePanel.d.ts.map +1 -1
  51. package/lib/typescript/components/BugReportComposer.d.ts +17 -0
  52. package/lib/typescript/components/BugReportComposer.d.ts.map +1 -0
  53. package/lib/typescript/components/FlagsTab.d.ts.map +1 -1
  54. package/lib/typescript/components/LogsTab.d.ts.map +1 -1
  55. package/lib/typescript/components/NetworkTab.d.ts.map +1 -1
  56. package/lib/typescript/components/StorageTab.d.ts.map +1 -1
  57. package/lib/typescript/constants.d.ts +15 -0
  58. package/lib/typescript/constants.d.ts.map +1 -1
  59. package/lib/typescript/index.d.ts +2 -1
  60. package/lib/typescript/index.d.ts.map +1 -1
  61. package/lib/typescript/types.d.ts +39 -0
  62. package/lib/typescript/types.d.ts.map +1 -1
  63. package/package.json +3 -3
  64. package/src/Backstage.tsx +0 -215
  65. package/src/ThemeContext.tsx +0 -38
  66. package/src/components/BackstagePanel.tsx +0 -277
  67. package/src/components/FlagsTab.tsx +0 -200
  68. package/src/components/FloatingPill.tsx +0 -247
  69. package/src/components/InfoTab.tsx +0 -231
  70. package/src/components/JsonTreeView.tsx +0 -239
  71. package/src/components/LogItem.tsx +0 -153
  72. package/src/components/LogsTab.tsx +0 -217
  73. package/src/components/NetworkItem.tsx +0 -425
  74. package/src/components/NetworkTab.tsx +0 -240
  75. package/src/components/StorageTab.tsx +0 -607
  76. package/src/components/TabBar.tsx +0 -154
  77. package/src/constants.ts +0 -190
  78. package/src/index.ts +0 -33
  79. package/src/log-interceptor.ts +0 -148
  80. package/src/network-interceptor.ts +0 -468
  81. package/src/types.ts +0 -235
  82. package/src/utils/formatTimestamp.ts +0 -22
  83. package/src/utils/stringify.ts +0 -90
package/README.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # rn-backstage
2
2
 
3
+ [![npm version](https://img.shields.io/npm/v/rn-backstage.svg)](https://www.npmjs.com/package/rn-backstage)
4
+ [![npm downloads](https://img.shields.io/npm/dm/rn-backstage.svg)](https://www.npmjs.com/package/rn-backstage)
5
+
3
6
  A zero-dependency developer/QA debug panel for React Native apps. Inspect device info, view state trees, monitor console logs, inspect network requests, and trigger custom actions — all from a sleek in-app panel.
4
7
 
5
8
  ## Features
@@ -127,6 +130,27 @@ import { storage } from './mmkv'
127
130
  />
128
131
  ```
129
132
 
133
+ ## Bug Report
134
+
135
+ Add a `bugReport` config to enable one-tap bug reporting. Tapping the 🐛 button in the panel header opens a composer that auto-attaches device info, logs, network activity, and state. Reports can be shared via the system share sheet or submitted to a webhook.
136
+
137
+ ```tsx
138
+ <Backstage
139
+ bugReport={{
140
+ onSubmit: report => {
141
+ // Full BugReport object with all context
142
+ console.log(report.title, report.severity, report.logs.length)
143
+ },
144
+ // Optional: POST to a webhook
145
+ webhookUrl: 'https://your-api.com/bugs',
146
+ // Optional: capture screenshot (requires a library like react-native-view-shot)
147
+ captureScreenshot: () => viewShotRef.current.capture(),
148
+ maxLogsInReport: 50,
149
+ maxNetworkEntriesInReport: 20,
150
+ }}
151
+ />
152
+ ```
153
+
130
154
  ## Props
131
155
 
132
156
  | Prop | Type | Default | Description |
@@ -157,6 +181,7 @@ import { storage } from './mmkv'
157
181
  | `pillWidth` | `number` | `60` | Width of the floating pill |
158
182
  | `pillHeight` | `number` | `32` | Height of the floating pill |
159
183
  | `extraTabs` | `BackstageTab[]` | `[]` | Additional custom tabs |
184
+ | `bugReport` | `BugReportConfig` | `undefined` | Bug report config (shows 🐛 button in header) |
160
185
  | `styles` | `BackstageStyleOverrides` | `undefined` | Custom style overrides |
161
186
  | `children` | `ReactNode` | `undefined` | Extra content in InfoTab |
162
187
 
@@ -168,6 +193,7 @@ const ref = useRef<BackstageRef>(null)
168
193
  ref.current?.open() // Open the panel
169
194
  ref.current?.close() // Close the panel
170
195
  ref.current?.clearLogs() // Clear all captured logs
196
+ ref.current?.submitBugReport() // Open bug report composer
171
197
  ```
172
198
 
173
199
  ## Individual Components
@@ -186,6 +212,7 @@ import {
186
212
  NetworkItem,
187
213
  FlagsTab,
188
214
  StorageTab,
215
+ BugReportComposer,
189
216
  JsonTreeView, // useful standalone for any JSON data
190
217
  } from 'rn-backstage'
191
218
  ```
@@ -44,7 +44,8 @@ const Backstage = exports.Backstage = /*#__PURE__*/(0, _react.forwardRef)(({
44
44
  maxNetworkBodySize,
45
45
  networkFilters,
46
46
  autoFilterNetworkLogs = true,
47
- jsonMaxDepth
47
+ jsonMaxDepth,
48
+ bugReport: bugReportConfig
48
49
  }, ref) => {
49
50
  const [panelVisible, setPanelVisible] = (0, _react.useState)(false);
50
51
  const [hasError, setHasError] = (0, _react.useState)(false);
@@ -128,10 +129,18 @@ const Backstage = exports.Backstage = /*#__PURE__*/(0, _react.forwardRef)(({
128
129
 
129
130
  // ── Expose ref methods ────────────────────────────────────
130
131
 
132
+ const openBugReportRef = (0, _react.useRef)(null);
131
133
  (0, _react.useImperativeHandle)(ref, () => ({
132
134
  open: openPanel,
133
135
  close: closePanel,
134
- clearLogs
136
+ clearLogs,
137
+ submitBugReport: () => {
138
+ if (bugReportConfig) {
139
+ openPanel();
140
+ // Small delay to let panel mount first
141
+ setTimeout(() => openBugReportRef.current?.(), 100);
142
+ }
143
+ }
135
144
  }));
136
145
 
137
146
  // ── Render ────────────────────────────────────────────────
@@ -173,6 +182,8 @@ const Backstage = exports.Backstage = /*#__PURE__*/(0, _react.forwardRef)(({
173
182
  extraTabs: extraTabs,
174
183
  jsonMaxDepth: jsonMaxDepth,
175
184
  storageAdapter: storageAdapter,
185
+ bugReportConfig: bugReportConfig,
186
+ bugReportOpenerRef: openBugReportRef,
176
187
  styles: propStyles,
177
188
  children: children
178
189
  })]
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_constants","_logInterceptor","_networkInterceptor","_FloatingPill","_BackstagePanel","_ThemeContext","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Backstage","exports","forwardRef","visible","theme","themePreference","appVersion","buildNumber","bundleId","deviceInfo","state","quickActions","featureFlags","onToggleFeatureFlag","storageAdapter","maxLogs","DEFAULT_MAX_LOGS","logFilters","onCopyLogs","extraTabs","children","styles","propStyles","initialX","initialY","pillText","pillWidth","pillHeight","enableNetworkInspector","maxNetworkEntries","DEFAULT_MAX_NETWORK_ENTRIES","maxNetworkBodySize","networkFilters","autoFilterNetworkLogs","jsonMaxDepth","ref","panelVisible","setPanelVisible","useState","hasError","setHasError","logs","setLogs","networkEntries","setNetworkEntries","logBuffer","useRef","LogBuffer","networkBuffer","NetworkBuffer","openPanel","useCallback","current","getAll","closePanel","clearLogs","clear","refreshLogs","refreshNetwork","clearNetwork","useEffect","handleLogEntry","entry","push","level","installInterceptor","uninstallInterceptor","handleNetworkEntry","upsert","installNetworkInterceptor","filters","maxBodySize","uninstallNetworkInterceptor","useImperativeHandle","open","close","displayText","jsx","BackstageThemeProvider","preference","jsxs","View","style","container","pointerEvents","FloatingPill","text","onPress","BackstagePanel","onClose","onRefreshLogs","onRefreshNetwork","onClearNetwork","onCopyNetwork","displayName","StyleSheet","create","absoluteFillObject","zIndex","elevation"],"sourceRoot":"../../src","sources":["Backstage.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_constants","_logInterceptor","_networkInterceptor","_FloatingPill","_BackstagePanel","_ThemeContext","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Backstage","exports","forwardRef","visible","theme","themePreference","appVersion","buildNumber","bundleId","deviceInfo","state","quickActions","featureFlags","onToggleFeatureFlag","storageAdapter","maxLogs","DEFAULT_MAX_LOGS","logFilters","onCopyLogs","extraTabs","children","styles","propStyles","initialX","initialY","pillText","pillWidth","pillHeight","enableNetworkInspector","maxNetworkEntries","DEFAULT_MAX_NETWORK_ENTRIES","maxNetworkBodySize","networkFilters","autoFilterNetworkLogs","jsonMaxDepth","bugReport","bugReportConfig","ref","panelVisible","setPanelVisible","useState","hasError","setHasError","logs","setLogs","networkEntries","setNetworkEntries","logBuffer","useRef","LogBuffer","networkBuffer","NetworkBuffer","openPanel","useCallback","current","getAll","closePanel","clearLogs","clear","refreshLogs","refreshNetwork","clearNetwork","useEffect","handleLogEntry","entry","push","level","installInterceptor","uninstallInterceptor","handleNetworkEntry","upsert","installNetworkInterceptor","filters","maxBodySize","uninstallNetworkInterceptor","openBugReportRef","useImperativeHandle","open","close","submitBugReport","setTimeout","displayText","jsx","BackstageThemeProvider","preference","jsxs","View","style","container","pointerEvents","FloatingPill","text","onPress","BackstagePanel","onClose","onRefreshLogs","onRefreshNetwork","onClearNetwork","onCopyNetwork","bugReportOpenerRef","displayName","StyleSheet","create","absoluteFillObject","zIndex","elevation"],"sourceRoot":"../../src","sources":["Backstage.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.buildDeviceInfo = buildDeviceInfo;
7
+ exports.composeBugReport = composeBugReport;
8
+ exports.formatDeviceInfoForReport = formatDeviceInfoForReport;
9
+ exports.formatLogsForReport = formatLogsForReport;
10
+ exports.formatNetworkForReport = formatNetworkForReport;
11
+ exports.formatStateForReport = formatStateForReport;
12
+ exports.submitToWebhook = submitToWebhook;
13
+ var _reactNative = require("react-native");
14
+ var _types = require("./types");
15
+ // ─── Report Composition ──────────────────────────────────────────────────────
16
+
17
+ const SEVERITY_LABELS = {
18
+ low: '🟢 Low',
19
+ medium: '🟡 Medium',
20
+ high: '🟠 High',
21
+ critical: '🔴 Critical'
22
+ };
23
+ function formatTimestamp(ts) {
24
+ const d = new Date(ts);
25
+ return d.toISOString().replace('T', ' ').substring(0, 19);
26
+ }
27
+ function formatLogLevel(level) {
28
+ switch (level) {
29
+ case _types.LogLevel.error:
30
+ return '❌ ERROR';
31
+ case _types.LogLevel.warn:
32
+ return '⚠️ WARN';
33
+ case _types.LogLevel.info:
34
+ return 'ℹ️ INFO';
35
+ case _types.LogLevel.debug:
36
+ return '🔍 DEBUG';
37
+ default:
38
+ return '📝 LOG';
39
+ }
40
+ }
41
+ function formatDeviceInfoForReport(items) {
42
+ if (items.length === 0) return '';
43
+ const lines = items.map(i => `- **${i.label}**: ${i.value}`);
44
+ return `## 📱 Device Info\n\n${lines.join('\n')}\n`;
45
+ }
46
+ function formatLogsForReport(logs) {
47
+ if (logs.length === 0) return '';
48
+ const lines = logs.map(l => `\`${formatTimestamp(l.timestamp)}\` ${formatLogLevel(l.level)} ${l.message}`);
49
+ return `## 📋 Console Logs (${logs.length})\n\n\`\`\`\n${lines.join('\n')}\n\`\`\`\n`;
50
+ }
51
+ function formatNetworkForReport(entries) {
52
+ if (entries.length === 0) return '';
53
+ const lines = entries.map(e => {
54
+ const status = e.status ?? '⏳';
55
+ const duration = e.duration ? `${e.duration}ms` : '...';
56
+ return `- \`${e.method}\` ${e.url} → ${status} (${duration})`;
57
+ });
58
+ return `## 🌐 Network Activity (${entries.length})\n\n${lines.join('\n')}\n`;
59
+ }
60
+ function formatStateForReport(state) {
61
+ try {
62
+ const json = JSON.stringify(state, null, 2);
63
+ // Truncate if too large
64
+ const truncated = json.length > 5000 ? json.substring(0, 5000) + '\n... (truncated)' : json;
65
+ return `## 🌳 State Snapshot\n\n\`\`\`json\n${truncated}\n\`\`\`\n`;
66
+ } catch {
67
+ return `## 🌳 State Snapshot\n\n\`[Could not serialize state]\`\n`;
68
+ }
69
+ }
70
+ function composeBugReport(report) {
71
+ const sections = [];
72
+ sections.push(`# 🐛 Bug Report: ${report.title}\n`);
73
+ sections.push(`**Severity**: ${SEVERITY_LABELS[report.severity]}`);
74
+ sections.push(`**Reported**: ${formatTimestamp(report.timestamp)}`);
75
+ sections.push(`**Platform**: ${_reactNative.Platform.OS} ${_reactNative.Platform.Version}\n`);
76
+ if (report.description) {
77
+ sections.push(`## Description\n\n${report.description}\n`);
78
+ }
79
+ if (report.deviceInfo.length > 0) {
80
+ sections.push(formatDeviceInfoForReport(report.deviceInfo));
81
+ }
82
+ if (report.logs.length > 0) {
83
+ sections.push(formatLogsForReport(report.logs));
84
+ }
85
+ if (report.networkEntries.length > 0) {
86
+ sections.push(formatNetworkForReport(report.networkEntries));
87
+ }
88
+ if (report.state && Object.keys(report.state).length > 0) {
89
+ sections.push(formatStateForReport(report.state));
90
+ }
91
+ if (report.screenshotUri) {
92
+ sections.push(`## 📸 Screenshot\n\nAttached: ${report.screenshotUri}\n`);
93
+ }
94
+ sections.push('---\n*Generated by rn-backstage*');
95
+ return sections.join('\n');
96
+ }
97
+
98
+ // ─── Webhook Submission ──────────────────────────────────────────────────────
99
+
100
+ async function submitToWebhook(webhookUrl, report) {
101
+ try {
102
+ const body = {
103
+ title: report.title,
104
+ description: report.description,
105
+ severity: report.severity,
106
+ platform: _reactNative.Platform.OS,
107
+ platformVersion: String(_reactNative.Platform.Version),
108
+ timestamp: report.timestamp,
109
+ deviceInfo: report.deviceInfo,
110
+ logs: report.logs.map(l => ({
111
+ level: l.level,
112
+ message: l.message,
113
+ timestamp: l.timestamp
114
+ })),
115
+ networkEntries: report.networkEntries.map(e => ({
116
+ method: e.method,
117
+ url: e.url,
118
+ status: e.status,
119
+ duration: e.duration
120
+ }))
121
+ };
122
+ if (report.state) {
123
+ body.state = report.state;
124
+ }
125
+ if (report.screenshotUri) {
126
+ body.screenshotUri = report.screenshotUri;
127
+ }
128
+ const response = await fetch(webhookUrl, {
129
+ method: 'POST',
130
+ headers: {
131
+ 'Content-Type': 'application/json'
132
+ },
133
+ body: JSON.stringify(body)
134
+ });
135
+ if (!response.ok) {
136
+ return {
137
+ success: false,
138
+ error: `HTTP ${response.status}`
139
+ };
140
+ }
141
+ return {
142
+ success: true
143
+ };
144
+ } catch (err) {
145
+ return {
146
+ success: false,
147
+ error: err instanceof Error ? err.message : 'Unknown error'
148
+ };
149
+ }
150
+ }
151
+
152
+ // ─── Device Info Builder ─────────────────────────────────────────────────────
153
+
154
+ function buildDeviceInfo(appVersion, buildNumber, bundleId, extraInfo = []) {
155
+ const info = [{
156
+ label: 'Platform',
157
+ value: `${_reactNative.Platform.OS} ${_reactNative.Platform.Version}`
158
+ }];
159
+ if (appVersion) info.push({
160
+ label: 'App Version',
161
+ value: appVersion
162
+ });
163
+ if (buildNumber) info.push({
164
+ label: 'Build Number',
165
+ value: buildNumber
166
+ });
167
+ if (bundleId) info.push({
168
+ label: 'Bundle ID',
169
+ value: bundleId
170
+ });
171
+ return [...info, ...extraInfo];
172
+ }
173
+ //# sourceMappingURL=bug-report.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_types","SEVERITY_LABELS","low","medium","high","critical","formatTimestamp","ts","d","Date","toISOString","replace","substring","formatLogLevel","level","LogLevel","error","warn","info","debug","formatDeviceInfoForReport","items","length","lines","map","i","label","value","join","formatLogsForReport","logs","l","timestamp","message","formatNetworkForReport","entries","e","status","duration","method","url","formatStateForReport","state","json","JSON","stringify","truncated","composeBugReport","report","sections","push","title","severity","Platform","OS","Version","description","deviceInfo","networkEntries","Object","keys","screenshotUri","submitToWebhook","webhookUrl","body","platform","platformVersion","String","response","fetch","headers","ok","success","err","Error","buildDeviceInfo","appVersion","buildNumber","bundleId","extraInfo"],"sourceRoot":"../../src","sources":["bug-report.ts"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAQA,IAAAC,MAAA,GAAAD,OAAA;AAEA;;AAEA,MAAME,eAAkD,GAAG;EACzDC,GAAG,EAAE,QAAQ;EACbC,MAAM,EAAE,WAAW;EACnBC,IAAI,EAAE,SAAS;EACfC,QAAQ,EAAE;AACZ,CAAC;AAED,SAASC,eAAeA,CAACC,EAAU,EAAU;EAC3C,MAAMC,CAAC,GAAG,IAAIC,IAAI,CAACF,EAAE,CAAC;EACtB,OAAOC,CAAC,CAACE,WAAW,CAAC,CAAC,CAACC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAACC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;AAC3D;AAEA,SAASC,cAAcA,CAACC,KAAe,EAAU;EAC/C,QAAQA,KAAK;IACX,KAAKC,eAAQ,CAACC,KAAK;MACjB,OAAO,SAAS;IAClB,KAAKD,eAAQ,CAACE,IAAI;MAChB,OAAO,SAAS;IAClB,KAAKF,eAAQ,CAACG,IAAI;MAChB,OAAO,SAAS;IAClB,KAAKH,eAAQ,CAACI,KAAK;MACjB,OAAO,UAAU;IACnB;MACE,OAAO,QAAQ;EACnB;AACF;AAEO,SAASC,yBAAyBA,CAACC,KAAoB,EAAU;EACtE,IAAIA,KAAK,CAACC,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE;EACjC,MAAMC,KAAK,GAAGF,KAAK,CAACG,GAAG,CAACC,CAAC,IAAI,OAAOA,CAAC,CAACC,KAAK,OAAOD,CAAC,CAACE,KAAK,EAAE,CAAC;EAC5D,OAAO,wBAAwBJ,KAAK,CAACK,IAAI,CAAC,IAAI,CAAC,IAAI;AACrD;AAEO,SAASC,mBAAmBA,CAACC,IAAgB,EAAU;EAC5D,IAAIA,IAAI,CAACR,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE;EAChC,MAAMC,KAAK,GAAGO,IAAI,CAACN,GAAG,CACpBO,CAAC,IAAI,KAAKzB,eAAe,CAACyB,CAAC,CAACC,SAAS,CAAC,MAAMnB,cAAc,CAACkB,CAAC,CAACjB,KAAK,CAAC,IAAIiB,CAAC,CAACE,OAAO,EAClF,CAAC;EACD,OAAO,uBAAuBH,IAAI,CAACR,MAAM,gBAAgBC,KAAK,CAACK,IAAI,CAAC,IAAI,CAAC,YAAY;AACvF;AAEO,SAASM,sBAAsBA,CAACC,OAAuB,EAAU;EACtE,IAAIA,OAAO,CAACb,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE;EACnC,MAAMC,KAAK,GAAGY,OAAO,CAACX,GAAG,CAACY,CAAC,IAAI;IAC7B,MAAMC,MAAM,GAAGD,CAAC,CAACC,MAAM,IAAI,GAAG;IAC9B,MAAMC,QAAQ,GAAGF,CAAC,CAACE,QAAQ,GAAG,GAAGF,CAAC,CAACE,QAAQ,IAAI,GAAG,KAAK;IACvD,OAAO,OAAOF,CAAC,CAACG,MAAM,MAAMH,CAAC,CAACI,GAAG,MAAMH,MAAM,KAAKC,QAAQ,GAAG;EAC/D,CAAC,CAAC;EACF,OAAO,2BAA2BH,OAAO,CAACb,MAAM,QAAQC,KAAK,CAACK,IAAI,CAAC,IAAI,CAAC,IAAI;AAC9E;AAEO,SAASa,oBAAoBA,CAACC,KAA8B,EAAU;EAC3E,IAAI;IACF,MAAMC,IAAI,GAAGC,IAAI,CAACC,SAAS,CAACH,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C;IACA,MAAMI,SAAS,GAAGH,IAAI,CAACrB,MAAM,GAAG,IAAI,GAAGqB,IAAI,CAAC/B,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,mBAAmB,GAAG+B,IAAI;IAC3F,OAAO,uCAAuCG,SAAS,YAAY;EACrE,CAAC,CAAC,MAAM;IACN,OAAO,2DAA2D;EACpE;AACF;AAEO,SAASC,gBAAgBA,CAACC,MAAiB,EAAU;EAC1D,MAAMC,QAAkB,GAAG,EAAE;EAE7BA,QAAQ,CAACC,IAAI,CAAC,oBAAoBF,MAAM,CAACG,KAAK,IAAI,CAAC;EACnDF,QAAQ,CAACC,IAAI,CAAC,iBAAiBjD,eAAe,CAAC+C,MAAM,CAACI,QAAQ,CAAC,EAAE,CAAC;EAClEH,QAAQ,CAACC,IAAI,CAAC,iBAAiB5C,eAAe,CAAC0C,MAAM,CAAChB,SAAS,CAAC,EAAE,CAAC;EACnEiB,QAAQ,CAACC,IAAI,CAAC,iBAAiBG,qBAAQ,CAACC,EAAE,IAAID,qBAAQ,CAACE,OAAO,IAAI,CAAC;EAEnE,IAAIP,MAAM,CAACQ,WAAW,EAAE;IACtBP,QAAQ,CAACC,IAAI,CAAC,qBAAqBF,MAAM,CAACQ,WAAW,IAAI,CAAC;EAC5D;EAEA,IAAIR,MAAM,CAACS,UAAU,CAACnC,MAAM,GAAG,CAAC,EAAE;IAChC2B,QAAQ,CAACC,IAAI,CAAC9B,yBAAyB,CAAC4B,MAAM,CAACS,UAAU,CAAC,CAAC;EAC7D;EAEA,IAAIT,MAAM,CAAClB,IAAI,CAACR,MAAM,GAAG,CAAC,EAAE;IAC1B2B,QAAQ,CAACC,IAAI,CAACrB,mBAAmB,CAACmB,MAAM,CAAClB,IAAI,CAAC,CAAC;EACjD;EAEA,IAAIkB,MAAM,CAACU,cAAc,CAACpC,MAAM,GAAG,CAAC,EAAE;IACpC2B,QAAQ,CAACC,IAAI,CAAChB,sBAAsB,CAACc,MAAM,CAACU,cAAc,CAAC,CAAC;EAC9D;EAEA,IAAIV,MAAM,CAACN,KAAK,IAAIiB,MAAM,CAACC,IAAI,CAACZ,MAAM,CAACN,KAAK,CAAC,CAACpB,MAAM,GAAG,CAAC,EAAE;IACxD2B,QAAQ,CAACC,IAAI,CAACT,oBAAoB,CAACO,MAAM,CAACN,KAAK,CAAC,CAAC;EACnD;EAEA,IAAIM,MAAM,CAACa,aAAa,EAAE;IACxBZ,QAAQ,CAACC,IAAI,CAAC,iCAAiCF,MAAM,CAACa,aAAa,IAAI,CAAC;EAC1E;EAEAZ,QAAQ,CAACC,IAAI,CAAC,kCAAkC,CAAC;EAEjD,OAAOD,QAAQ,CAACrB,IAAI,CAAC,IAAI,CAAC;AAC5B;;AAEA;;AAEO,eAAekC,eAAeA,CACnCC,UAAkB,EAClBf,MAAiB,EAC8B;EAC/C,IAAI;IACF,MAAMgB,IAA6B,GAAG;MACpCb,KAAK,EAAEH,MAAM,CAACG,KAAK;MACnBK,WAAW,EAAER,MAAM,CAACQ,WAAW;MAC/BJ,QAAQ,EAAEJ,MAAM,CAACI,QAAQ;MACzBa,QAAQ,EAAEZ,qBAAQ,CAACC,EAAE;MACrBY,eAAe,EAAEC,MAAM,CAACd,qBAAQ,CAACE,OAAO,CAAC;MACzCvB,SAAS,EAAEgB,MAAM,CAAChB,SAAS;MAC3ByB,UAAU,EAAET,MAAM,CAACS,UAAU;MAC7B3B,IAAI,EAAEkB,MAAM,CAAClB,IAAI,CAACN,GAAG,CAACO,CAAC,KAAK;QAC1BjB,KAAK,EAAEiB,CAAC,CAACjB,KAAK;QACdmB,OAAO,EAAEF,CAAC,CAACE,OAAO;QAClBD,SAAS,EAAED,CAAC,CAACC;MACf,CAAC,CAAC,CAAC;MACH0B,cAAc,EAAEV,MAAM,CAACU,cAAc,CAAClC,GAAG,CAACY,CAAC,KAAK;QAC9CG,MAAM,EAAEH,CAAC,CAACG,MAAM;QAChBC,GAAG,EAAEJ,CAAC,CAACI,GAAG;QACVH,MAAM,EAAED,CAAC,CAACC,MAAM;QAChBC,QAAQ,EAAEF,CAAC,CAACE;MACd,CAAC,CAAC;IACJ,CAAC;IAED,IAAIU,MAAM,CAACN,KAAK,EAAE;MAChBsB,IAAI,CAACtB,KAAK,GAAGM,MAAM,CAACN,KAAK;IAC3B;IAEA,IAAIM,MAAM,CAACa,aAAa,EAAE;MACxBG,IAAI,CAACH,aAAa,GAAGb,MAAM,CAACa,aAAa;IAC3C;IAEA,MAAMO,QAAQ,GAAG,MAAMC,KAAK,CAACN,UAAU,EAAE;MACvCxB,MAAM,EAAE,MAAM;MACd+B,OAAO,EAAE;QAAE,cAAc,EAAE;MAAmB,CAAC;MAC/CN,IAAI,EAAEpB,IAAI,CAACC,SAAS,CAACmB,IAAI;IAC3B,CAAC,CAAC;IAEF,IAAI,CAACI,QAAQ,CAACG,EAAE,EAAE;MAChB,OAAO;QAAEC,OAAO,EAAE,KAAK;QAAExD,KAAK,EAAE,QAAQoD,QAAQ,CAAC/B,MAAM;MAAG,CAAC;IAC7D;IAEA,OAAO;MAAEmC,OAAO,EAAE;IAAK,CAAC;EAC1B,CAAC,CAAC,OAAOC,GAAG,EAAE;IACZ,OAAO;MACLD,OAAO,EAAE,KAAK;MACdxD,KAAK,EAAEyD,GAAG,YAAYC,KAAK,GAAGD,GAAG,CAACxC,OAAO,GAAG;IAC9C,CAAC;EACH;AACF;;AAEA;;AAEO,SAAS0C,eAAeA,CAC7BC,UAAmB,EACnBC,WAAoB,EACpBC,QAAiB,EACjBC,SAAwB,GAAG,EAAE,EACd;EACf,MAAM7D,IAAmB,GAAG,CAC1B;IAAEQ,KAAK,EAAE,UAAU;IAAEC,KAAK,EAAE,GAAG0B,qBAAQ,CAACC,EAAE,IAAID,qBAAQ,CAACE,OAAO;EAAG,CAAC,CACnE;EAED,IAAIqB,UAAU,EAAE1D,IAAI,CAACgC,IAAI,CAAC;IAAExB,KAAK,EAAE,aAAa;IAAEC,KAAK,EAAEiD;EAAW,CAAC,CAAC;EACtE,IAAIC,WAAW,EAAE3D,IAAI,CAACgC,IAAI,CAAC;IAAExB,KAAK,EAAE,cAAc;IAAEC,KAAK,EAAEkD;EAAY,CAAC,CAAC;EACzE,IAAIC,QAAQ,EAAE5D,IAAI,CAACgC,IAAI,CAAC;IAAExB,KAAK,EAAE,WAAW;IAAEC,KAAK,EAAEmD;EAAS,CAAC,CAAC;EAEhE,OAAO,CAAC,GAAG5D,IAAI,EAAE,GAAG6D,SAAS,CAAC;AAChC","ignoreList":[]}
@@ -14,6 +14,7 @@ var _LogsTab = require("./LogsTab");
14
14
  var _NetworkTab = require("./NetworkTab");
15
15
  var _FlagsTab = require("./FlagsTab");
16
16
  var _StorageTab = require("./StorageTab");
17
+ var _BugReportComposer = require("./BugReportComposer");
17
18
  var _jsxRuntime = require("react/jsx-runtime");
18
19
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
19
20
  // ─── Types ───────────────────────────────────────────────────────────────────
@@ -68,13 +69,32 @@ const BackstagePanel = ({
68
69
  extraTabs = [],
69
70
  jsonMaxDepth,
70
71
  storageAdapter,
72
+ bugReportConfig,
73
+ bugReportOpenerRef,
71
74
  styles: propStyles,
72
75
  children
73
76
  }) => {
74
77
  const [activeTab, setActiveTab] = (0, _react.useState)('info');
78
+ const [bugReportVisible, setBugReportVisible] = (0, _react.useState)(false);
75
79
  const theme = (0, _ThemeContext.useBackstageTheme)();
76
80
  const styles = (0, _react.useMemo)(() => createStyles(theme), [theme]);
77
81
 
82
+ // Reset to Info tab when panel closes so indicator and content stay in sync
83
+ (0, _react.useEffect)(() => {
84
+ if (!visible) {
85
+ setActiveTab('info');
86
+ }
87
+ }, [visible]);
88
+
89
+ // Register opener callback for the parent ref
90
+ (0, _react.useEffect)(() => {
91
+ if (!bugReportOpenerRef) return;
92
+ bugReportOpenerRef.current = () => setBugReportVisible(true);
93
+ return () => {
94
+ bugReportOpenerRef.current = null;
95
+ };
96
+ }, [bugReportOpenerRef]);
97
+
78
98
  // Compose all tabs: built-in (conditionally including Flags) + extra
79
99
  const hasFlags = featureFlags && featureFlags.length > 0;
80
100
  const hasStorage = !!storageAdapter;
@@ -165,21 +185,39 @@ const BackstagePanel = ({
165
185
  style: [styles.headerTitle, propStyles?.headerTitleStyle],
166
186
  children: "Backstage"
167
187
  })]
168
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
169
- testID: _constants.TestIDs.header.closeButton,
170
- style: styles.closeButton,
171
- onPress: onClose,
172
- activeOpacity: 0.7,
173
- hitSlop: {
174
- top: 8,
175
- bottom: 8,
176
- left: 8,
177
- right: 8
178
- },
179
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
180
- style: styles.closeButtonText,
181
- children: "\u2715"
182
- })
188
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
189
+ style: styles.headerRight,
190
+ children: [bugReportConfig && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
191
+ testID: _constants.TestIDs.bugReport.triggerButton,
192
+ style: styles.headerButton,
193
+ onPress: () => setBugReportVisible(true),
194
+ activeOpacity: 0.7,
195
+ hitSlop: {
196
+ top: 8,
197
+ bottom: 8,
198
+ left: 8,
199
+ right: 8
200
+ },
201
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
202
+ style: styles.headerButtonText,
203
+ children: "\uD83D\uDC1B"
204
+ })
205
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
206
+ testID: _constants.TestIDs.header.closeButton,
207
+ style: styles.closeButton,
208
+ onPress: onClose,
209
+ activeOpacity: 0.7,
210
+ hitSlop: {
211
+ top: 8,
212
+ bottom: 8,
213
+ left: 8,
214
+ right: 8
215
+ },
216
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
217
+ style: styles.closeButtonText,
218
+ children: "\u2715"
219
+ })
220
+ })]
183
221
  })]
184
222
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TabBar.TabBar, {
185
223
  tabs: allTabs,
@@ -189,6 +227,17 @@ const BackstagePanel = ({
189
227
  style: styles.content,
190
228
  children: renderTabContent()
191
229
  })]
230
+ }), bugReportConfig && /*#__PURE__*/(0, _jsxRuntime.jsx)(_BugReportComposer.BugReportComposer, {
231
+ visible: bugReportVisible,
232
+ onClose: () => setBugReportVisible(false),
233
+ config: bugReportConfig,
234
+ logs: logs,
235
+ networkEntries: networkEntries,
236
+ state: state,
237
+ appVersion: appVersion,
238
+ buildNumber: buildNumber,
239
+ bundleId: bundleId,
240
+ deviceInfo: deviceInfo
192
241
  })]
193
242
  });
194
243
  };
@@ -239,6 +288,24 @@ const createStyles = t => _reactNative.StyleSheet.create({
239
288
  color: t.textSecondary,
240
289
  fontWeight: '700'
241
290
  },
291
+ headerRight: {
292
+ flexDirection: 'row',
293
+ alignItems: 'center',
294
+ gap: 8
295
+ },
296
+ headerButton: {
297
+ width: 32,
298
+ height: 32,
299
+ borderRadius: 16,
300
+ backgroundColor: t.surfaceElevated,
301
+ borderWidth: 1,
302
+ borderColor: t.border,
303
+ alignItems: 'center',
304
+ justifyContent: 'center'
305
+ },
306
+ headerButtonText: {
307
+ fontSize: 16
308
+ },
242
309
  content: {
243
310
  flex: 1
244
311
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_constants","_ThemeContext","_TabBar","_InfoTab","_LogsTab","_NetworkTab","_FlagsTab","_StorageTab","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ALWAYS_ON_TABS","key","title","icon","FLAGS_TAB","STORAGE_TAB","LOGS_TAB","BackstagePanel","visible","onClose","appVersion","buildNumber","bundleId","deviceInfo","state","quickActions","featureFlags","onToggleFeatureFlag","logs","onRefreshLogs","onCopyLogs","networkEntries","onRefreshNetwork","onClearNetwork","onCopyNetwork","extraTabs","jsonMaxDepth","storageAdapter","styles","propStyles","children","activeTab","setActiveTab","useState","theme","useBackstageTheme","useMemo","createStyles","hasFlags","length","hasStorage","allTabs","map","renderTabContent","jsx","InfoTab","onClosePanel","FlagsTab","flags","onToggle","StorageTab","adapter","NetworkTab","entries","onRefresh","onClear","onCopy","LogsTab","extraTab","find","Fragment","render","jsxs","Modal","testID","TestIDs","panelModal","animationType","transparent","onRequestClose","statusBarTranslucent","StatusBar","barStyle","background","backgroundColor","SafeAreaView","panel","style","safeArea","panelStyle","View","header","container","headerLeft","Text","headerBrand","headerTitle","headerTitleStyle","TouchableOpacity","closeButton","onPress","activeOpacity","hitSlop","top","bottom","left","right","closeButtonText","TabBar","tabs","onTabChange","content","exports","StyleSheet","create","flex","flexDirection","alignItems","justifyContent","paddingHorizontal","paddingVertical","borderBottomWidth","borderBottomColor","border","fontSize","marginRight","fontFamily","MonospaceFont","fontWeight","color","text","letterSpacing","width","height","borderRadius","surfaceElevated","borderWidth","borderColor","textSecondary"],"sourceRoot":"../../../src","sources":["components/BackstagePanel.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_constants","_ThemeContext","_TabBar","_InfoTab","_LogsTab","_NetworkTab","_FlagsTab","_StorageTab","_BugReportComposer","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ALWAYS_ON_TABS","key","title","icon","FLAGS_TAB","STORAGE_TAB","LOGS_TAB","BackstagePanel","visible","onClose","appVersion","buildNumber","bundleId","deviceInfo","state","quickActions","featureFlags","onToggleFeatureFlag","logs","onRefreshLogs","onCopyLogs","networkEntries","onRefreshNetwork","onClearNetwork","onCopyNetwork","extraTabs","jsonMaxDepth","storageAdapter","bugReportConfig","bugReportOpenerRef","styles","propStyles","children","activeTab","setActiveTab","useState","bugReportVisible","setBugReportVisible","theme","useBackstageTheme","useMemo","createStyles","useEffect","current","hasFlags","length","hasStorage","allTabs","map","renderTabContent","jsx","InfoTab","onClosePanel","FlagsTab","flags","onToggle","StorageTab","adapter","NetworkTab","entries","onRefresh","onClear","onCopy","LogsTab","extraTab","find","Fragment","render","jsxs","Modal","testID","TestIDs","panelModal","animationType","transparent","onRequestClose","statusBarTranslucent","StatusBar","barStyle","background","backgroundColor","SafeAreaView","panel","style","safeArea","panelStyle","View","header","container","headerLeft","Text","headerBrand","headerTitle","headerTitleStyle","headerRight","TouchableOpacity","bugReport","triggerButton","headerButton","onPress","activeOpacity","hitSlop","top","bottom","left","right","headerButtonText","closeButton","closeButtonText","TabBar","tabs","onTabChange","content","BugReportComposer","config","exports","StyleSheet","create","flex","flexDirection","alignItems","justifyContent","paddingHorizontal","paddingVertical","borderBottomWidth","borderBottomColor","border","fontSize","marginRight","fontFamily","MonospaceFont","fontWeight","color","text","letterSpacing","width","height","borderRadius","surfaceElevated","borderWidth","borderColor","textSecondary","gap"],"sourceRoot":"../../../src","sources":["components/BackstagePanel.tsx"],"mappings":"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","ignoreList":[]}