rn-backstage 1.2.0 → 1.3.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 (110) hide show
  1. package/README.md +84 -2
  2. package/lib/commonjs/Backstage.js +46 -33
  3. package/lib/commonjs/Backstage.js.map +1 -1
  4. package/lib/commonjs/ThemeContext.js +43 -0
  5. package/lib/commonjs/ThemeContext.js.map +1 -0
  6. package/lib/commonjs/components/BackstagePanel.js +35 -12
  7. package/lib/commonjs/components/BackstagePanel.js.map +1 -1
  8. package/lib/commonjs/components/FlagsTab.js +60 -57
  9. package/lib/commonjs/components/FlagsTab.js.map +1 -1
  10. package/lib/commonjs/components/FloatingPill.js +86 -24
  11. package/lib/commonjs/components/FloatingPill.js.map +1 -1
  12. package/lib/commonjs/components/InfoTab.js +77 -107
  13. package/lib/commonjs/components/InfoTab.js.map +1 -1
  14. package/lib/commonjs/components/JsonTreeView.js +39 -34
  15. package/lib/commonjs/components/JsonTreeView.js.map +1 -1
  16. package/lib/commonjs/components/LogItem.js +39 -29
  17. package/lib/commonjs/components/LogItem.js.map +1 -1
  18. package/lib/commonjs/components/LogsTab.js +39 -42
  19. package/lib/commonjs/components/LogsTab.js.map +1 -1
  20. package/lib/commonjs/components/NetworkItem.js +111 -135
  21. package/lib/commonjs/components/NetworkItem.js.map +1 -1
  22. package/lib/commonjs/components/NetworkTab.js +50 -49
  23. package/lib/commonjs/components/NetworkTab.js.map +1 -1
  24. package/lib/commonjs/components/StorageTab.js +655 -0
  25. package/lib/commonjs/components/StorageTab.js.map +1 -0
  26. package/lib/commonjs/components/TabBar.js +8 -5
  27. package/lib/commonjs/components/TabBar.js.map +1 -1
  28. package/lib/commonjs/constants.js +96 -7
  29. package/lib/commonjs/constants.js.map +1 -1
  30. package/lib/commonjs/index.js +96 -0
  31. package/lib/commonjs/index.js.map +1 -1
  32. package/lib/commonjs/types.js +1 -0
  33. package/lib/commonjs/types.js.map +1 -1
  34. package/lib/module/Backstage.js +46 -33
  35. package/lib/module/Backstage.js.map +1 -1
  36. package/lib/module/ThemeContext.js +37 -0
  37. package/lib/module/ThemeContext.js.map +1 -0
  38. package/lib/module/components/BackstagePanel.js +37 -14
  39. package/lib/module/components/BackstagePanel.js.map +1 -1
  40. package/lib/module/components/FlagsTab.js +61 -58
  41. package/lib/module/components/FlagsTab.js.map +1 -1
  42. package/lib/module/components/FloatingPill.js +90 -28
  43. package/lib/module/components/FloatingPill.js.map +1 -1
  44. package/lib/module/components/InfoTab.js +77 -107
  45. package/lib/module/components/InfoTab.js.map +1 -1
  46. package/lib/module/components/JsonTreeView.js +42 -38
  47. package/lib/module/components/JsonTreeView.js.map +1 -1
  48. package/lib/module/components/LogItem.js +41 -31
  49. package/lib/module/components/LogItem.js.map +1 -1
  50. package/lib/module/components/LogsTab.js +40 -43
  51. package/lib/module/components/LogsTab.js.map +1 -1
  52. package/lib/module/components/NetworkItem.js +113 -137
  53. package/lib/module/components/NetworkItem.js.map +1 -1
  54. package/lib/module/components/NetworkTab.js +51 -50
  55. package/lib/module/components/NetworkTab.js.map +1 -1
  56. package/lib/module/components/StorageTab.js +650 -0
  57. package/lib/module/components/StorageTab.js.map +1 -0
  58. package/lib/module/components/TabBar.js +10 -7
  59. package/lib/module/components/TabBar.js.map +1 -1
  60. package/lib/module/constants.js +95 -6
  61. package/lib/module/constants.js.map +1 -1
  62. package/lib/module/index.js +14 -0
  63. package/lib/module/index.js.map +1 -1
  64. package/lib/module/types.js +2 -0
  65. package/lib/module/types.js.map +1 -1
  66. package/lib/typescript/Backstage.d.ts.map +1 -1
  67. package/lib/typescript/ThemeContext.d.ts +11 -0
  68. package/lib/typescript/ThemeContext.d.ts.map +1 -0
  69. package/lib/typescript/components/BackstagePanel.d.ts +3 -1
  70. package/lib/typescript/components/BackstagePanel.d.ts.map +1 -1
  71. package/lib/typescript/components/FlagsTab.d.ts.map +1 -1
  72. package/lib/typescript/components/FloatingPill.d.ts +2 -0
  73. package/lib/typescript/components/FloatingPill.d.ts.map +1 -1
  74. package/lib/typescript/components/InfoTab.d.ts +1 -0
  75. package/lib/typescript/components/InfoTab.d.ts.map +1 -1
  76. package/lib/typescript/components/JsonTreeView.d.ts.map +1 -1
  77. package/lib/typescript/components/LogItem.d.ts +1 -0
  78. package/lib/typescript/components/LogItem.d.ts.map +1 -1
  79. package/lib/typescript/components/LogsTab.d.ts +1 -0
  80. package/lib/typescript/components/LogsTab.d.ts.map +1 -1
  81. package/lib/typescript/components/NetworkItem.d.ts +1 -0
  82. package/lib/typescript/components/NetworkItem.d.ts.map +1 -1
  83. package/lib/typescript/components/NetworkTab.d.ts +1 -0
  84. package/lib/typescript/components/NetworkTab.d.ts.map +1 -1
  85. package/lib/typescript/components/StorageTab.d.ts +9 -0
  86. package/lib/typescript/components/StorageTab.d.ts.map +1 -0
  87. package/lib/typescript/components/TabBar.d.ts.map +1 -1
  88. package/lib/typescript/constants.d.ts +60 -4
  89. package/lib/typescript/constants.d.ts.map +1 -1
  90. package/lib/typescript/index.d.ts +14 -1
  91. package/lib/typescript/index.d.ts.map +1 -1
  92. package/lib/typescript/types.d.ts +20 -0
  93. package/lib/typescript/types.d.ts.map +1 -1
  94. package/package.json +6 -4
  95. package/src/Backstage.tsx +45 -33
  96. package/src/ThemeContext.tsx +38 -0
  97. package/src/components/BackstagePanel.tsx +89 -61
  98. package/src/components/FlagsTab.tsx +125 -174
  99. package/src/components/FloatingPill.tsx +127 -30
  100. package/src/components/InfoTab.tsx +153 -186
  101. package/src/components/JsonTreeView.tsx +53 -73
  102. package/src/components/LogItem.tsx +64 -100
  103. package/src/components/LogsTab.tsx +110 -132
  104. package/src/components/NetworkItem.tsx +306 -417
  105. package/src/components/NetworkTab.tsx +129 -163
  106. package/src/components/StorageTab.tsx +607 -0
  107. package/src/components/TabBar.tsx +51 -47
  108. package/src/constants.ts +103 -4
  109. package/src/index.ts +17 -0
  110. package/src/types.ts +28 -0
package/README.md CHANGED
@@ -4,15 +4,16 @@ A zero-dependency developer/QA debug panel for React Native apps. Inspect device
4
4
 
5
5
  ## Features
6
6
 
7
- - 🎯 **Draggable floating pill** — always accessible, repositionable trigger
7
+ - 🎯 **Draggable floating pill** — always accessible, repositionable trigger with safe area bounds
8
8
  - 📱 **Device & build info** — OS version, app version, build number, and custom data
9
9
  - 🌳 **State tree inspector** — visualize Redux, Zustand, or any store state
10
10
  - 📋 **Console log viewer** — intercepts all console methods with search & filtering
11
11
  - 🌐 **Network inspector** — intercepts fetch & XMLHttpRequest with request/response details, headers, body, timing, and copy-as-cURL
12
12
  - 🎚 **Feature flag toggle** — render switches to toggle flags in real-time without restarting
13
+ - 🗄 **Storage viewer** — inspect, edit, and delete AsyncStorage/MMKV entries via a pluggable adapter
13
14
  - ⚡ **Quick actions** — add custom buttons (logout, clear cache, etc.)
14
15
  - 🔌 **Extensible tabs** — add custom tabs for app-specific debugging tools
15
- - 🎨 **Dark glassmorphism UI** — beautiful, professional developer tool aesthetic
16
+ - 🎨 **Light & dark theme** — auto-follows device setting, or override manually
16
17
  - 📦 **Zero dependencies** — only peer deps are `react` and `react-native`
17
18
 
18
19
  ## Installation
@@ -55,6 +56,7 @@ export default function App() {
55
56
  The Network tab automatically intercepts all `fetch()` and `XMLHttpRequest` traffic — including libraries built on top of them like **Axios**, **Apisauce**, **ky**, and **Apollo Client**.
56
57
 
57
58
  Each request shows:
59
+
58
60
  - Method, URL, status code, and duration
59
61
  - Request & response headers
60
62
  - Request & response body (auto-parsed JSON with tree view)
@@ -74,6 +76,7 @@ Each request shows:
74
76
  autoFilterNetworkLogs={true}
75
77
  />
76
78
  ```
79
+
77
80
  ## Feature Flag Toggle
78
81
 
79
82
  Pass feature flags to render a dedicated **Flags** tab with toggle switches. The tab only appears when at least one flag is provided. Toggling calls your callback in real-time — no app restart needed.
@@ -92,11 +95,44 @@ const [flags, setFlags] = useState([
92
95
  />
93
96
  ```
94
97
 
98
+ ## Storage Viewer
99
+
100
+ Pass a `storageAdapter` to render a **Storage** tab that lets you browse, edit, add, and delete key-value entries. The tab only appears when an adapter is provided. Works with any storage backend — zero dependencies.
101
+
102
+ ```tsx
103
+ import AsyncStorage from '@react-native-async-storage/async-storage'
104
+
105
+ ;<Backstage
106
+ storageAdapter={{
107
+ getAllKeys: () => AsyncStorage.getAllKeys(),
108
+ getItem: key => AsyncStorage.getItem(key),
109
+ setItem: (key, value) => AsyncStorage.setItem(key, value),
110
+ removeItem: key => AsyncStorage.removeItem(key),
111
+ }}
112
+ />
113
+ ```
114
+
115
+ MMKV example:
116
+
117
+ ```tsx
118
+ import { storage } from './mmkv'
119
+
120
+ ;<Backstage
121
+ storageAdapter={{
122
+ getAllKeys: () => Promise.resolve(storage.getAllKeys()),
123
+ getItem: key => Promise.resolve(storage.getString(key) ?? null),
124
+ setItem: (key, value) => Promise.resolve(storage.set(key, value)),
125
+ removeItem: key => Promise.resolve(storage.delete(key)),
126
+ }}
127
+ />
128
+ ```
129
+
95
130
  ## Props
96
131
 
97
132
  | Prop | Type | Default | Description |
98
133
  | ------------------------ | ----------------------------- | ----------- | ----------------------------------------------- |
99
134
  | `visible` | `boolean` | `true` | Show/hide the floating pill |
135
+ | `theme` | `'light' \| 'dark' \| 'auto'` | `'auto'` | Theme preference; auto follows device setting |
100
136
  | `appVersion` | `string` | `undefined` | App version to display |
101
137
  | `buildNumber` | `string` | `undefined` | Build number |
102
138
  | `bundleId` | `string` | `undefined` | Bundle identifier |
@@ -105,6 +141,7 @@ const [flags, setFlags] = useState([
105
141
  | `quickActions` | `QuickAction[]` | `[]` | Custom action buttons |
106
142
  | `featureFlags` | `FeatureFlag[]` | `[]` | Feature flags with toggle switches |
107
143
  | `onToggleFeatureFlag` | `(key, val: boolean) => void` | `undefined` | Callback when a flag is toggled |
144
+ | `storageAdapter` | `StorageAdapter` | `undefined` | Storage adapter for the Storage Viewer tab |
108
145
  | `maxLogs` | `number` | `500` | Maximum logs to retain |
109
146
  | `logFilters` | `string[]` | `[]` | Messages to exclude from logs |
110
147
  | `onCopyLogs` | `(logs: string) => void` | `undefined` | Callback when copying logs |
@@ -113,7 +150,14 @@ const [flags, setFlags] = useState([
113
150
  | `maxNetworkBodySize` | `number` | `65536` | Max body size (bytes) to capture per request |
114
151
  | `networkFilters` | `string[]` | `[]` | URL substrings to exclude from capture |
115
152
  | `autoFilterNetworkLogs` | `boolean` | `true` | Auto-filter network callback logs from Logs tab |
153
+ | `jsonMaxDepth` | `number` | `10` | Max nesting depth for all JSON tree views |
154
+ | `initialX` | `number` | `undefined` | Initial X position for the floating pill |
155
+ | `initialY` | `number` | `undefined` | Initial Y position for the floating pill |
156
+ | `pillText` | `string` | `undefined` | Text on the pill (defaults to version or "DEV") |
157
+ | `pillWidth` | `number` | `60` | Width of the floating pill |
158
+ | `pillHeight` | `number` | `32` | Height of the floating pill |
116
159
  | `extraTabs` | `BackstageTab[]` | `[]` | Additional custom tabs |
160
+ | `styles` | `BackstageStyleOverrides` | `undefined` | Custom style overrides |
117
161
  | `children` | `ReactNode` | `undefined` | Extra content in InfoTab |
118
162
 
119
163
  ## Ref Methods
@@ -126,6 +170,44 @@ ref.current?.close() // Close the panel
126
170
  ref.current?.clearLogs() // Clear all captured logs
127
171
  ```
128
172
 
173
+ ## Individual Components
174
+
175
+ All internal components are exported for advanced use cases — compose your own custom debug UI:
176
+
177
+ ```tsx
178
+ import {
179
+ BackstagePanel,
180
+ FloatingPill,
181
+ TabBar,
182
+ InfoTab,
183
+ LogsTab,
184
+ LogItem,
185
+ NetworkTab,
186
+ NetworkItem,
187
+ FlagsTab,
188
+ StorageTab,
189
+ JsonTreeView, // useful standalone for any JSON data
190
+ } from 'rn-backstage'
191
+ ```
192
+
193
+ ## TestIDs
194
+
195
+ All interactive elements have consistent `testID` attributes for E2E testing. Import the `TestIDs` object to reference them:
196
+
197
+ ```tsx
198
+ import { TestIDs } from 'rn-backstage'
199
+
200
+ // Static IDs
201
+ TestIDs.floatingPill // 'backstage.floating-pill'
202
+ TestIDs.panel // 'backstage.panel'
203
+ TestIDs.header.closeButton // 'backstage.header.close'
204
+
205
+ // Dynamic IDs (for items in lists)
206
+ TestIDs.logItem.container(id) // 'backstage.log-item.{id}'
207
+ TestIDs.flagsTab.flagSwitch(key) // 'backstage.flag.{key}'
208
+ TestIDs.storageTab.entryRow(key) // 'backstage.storage.entry.{key}'
209
+ ```
210
+
129
211
  ## License
130
212
 
131
213
  MIT
@@ -11,12 +11,14 @@ var _logInterceptor = require("./log-interceptor");
11
11
  var _networkInterceptor = require("./network-interceptor");
12
12
  var _FloatingPill = require("./components/FloatingPill");
13
13
  var _BackstagePanel = require("./components/BackstagePanel");
14
+ var _ThemeContext = require("./ThemeContext");
14
15
  var _jsxRuntime = require("react/jsx-runtime");
15
16
  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); }
16
17
  // ─── Component ───────────────────────────────────────────────────────────────
17
18
 
18
19
  const Backstage = exports.Backstage = /*#__PURE__*/(0, _react.forwardRef)(({
19
20
  visible = true,
21
+ theme: themePreference = 'auto',
20
22
  appVersion,
21
23
  buildNumber,
22
24
  bundleId,
@@ -25,6 +27,7 @@ const Backstage = exports.Backstage = /*#__PURE__*/(0, _react.forwardRef)(({
25
27
  quickActions,
26
28
  featureFlags,
27
29
  onToggleFeatureFlag,
30
+ storageAdapter,
28
31
  maxLogs = _constants.DEFAULT_MAX_LOGS,
29
32
  logFilters,
30
33
  onCopyLogs,
@@ -34,11 +37,14 @@ const Backstage = exports.Backstage = /*#__PURE__*/(0, _react.forwardRef)(({
34
37
  initialX,
35
38
  initialY,
36
39
  pillText,
40
+ pillWidth,
41
+ pillHeight,
37
42
  enableNetworkInspector = true,
38
43
  maxNetworkEntries = _constants.DEFAULT_MAX_NETWORK_ENTRIES,
39
44
  maxNetworkBodySize,
40
45
  networkFilters,
41
- autoFilterNetworkLogs = true
46
+ autoFilterNetworkLogs = true,
47
+ jsonMaxDepth
42
48
  }, ref) => {
43
49
  const [panelVisible, setPanelVisible] = (0, _react.useState)(false);
44
50
  const [hasError, setHasError] = (0, _react.useState)(false);
@@ -132,38 +138,45 @@ const Backstage = exports.Backstage = /*#__PURE__*/(0, _react.forwardRef)(({
132
138
 
133
139
  if (!visible) return null;
134
140
  const displayText = pillText || (appVersion ? `v${appVersion}` : 'DEV');
135
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
136
- style: styles.container,
137
- pointerEvents: "box-none",
138
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FloatingPill.FloatingPill, {
139
- text: displayText,
140
- hasError: hasError,
141
- onPress: openPanel,
142
- initialX: initialX,
143
- initialY: initialY,
144
- styles: propStyles
145
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_BackstagePanel.BackstagePanel, {
146
- visible: panelVisible,
147
- onClose: closePanel,
148
- appVersion: appVersion,
149
- buildNumber: buildNumber,
150
- bundleId: bundleId,
151
- deviceInfo: deviceInfo,
152
- state: state,
153
- quickActions: quickActions,
154
- featureFlags: featureFlags,
155
- onToggleFeatureFlag: onToggleFeatureFlag,
156
- logs: logs,
157
- onRefreshLogs: refreshLogs,
158
- onCopyLogs: onCopyLogs,
159
- networkEntries: networkEntries,
160
- onRefreshNetwork: refreshNetwork,
161
- onClearNetwork: clearNetwork,
162
- onCopyNetwork: onCopyLogs,
163
- extraTabs: extraTabs,
164
- styles: propStyles,
165
- children: children
166
- })]
141
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ThemeContext.BackstageThemeProvider, {
142
+ preference: themePreference,
143
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
144
+ style: styles.container,
145
+ pointerEvents: "box-none",
146
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FloatingPill.FloatingPill, {
147
+ text: displayText,
148
+ hasError: hasError,
149
+ onPress: openPanel,
150
+ initialX: initialX,
151
+ initialY: initialY,
152
+ pillWidth: pillWidth,
153
+ pillHeight: pillHeight,
154
+ styles: propStyles
155
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_BackstagePanel.BackstagePanel, {
156
+ visible: panelVisible,
157
+ onClose: closePanel,
158
+ appVersion: appVersion,
159
+ buildNumber: buildNumber,
160
+ bundleId: bundleId,
161
+ deviceInfo: deviceInfo,
162
+ state: state,
163
+ quickActions: quickActions,
164
+ featureFlags: featureFlags,
165
+ onToggleFeatureFlag: onToggleFeatureFlag,
166
+ logs: logs,
167
+ onRefreshLogs: refreshLogs,
168
+ onCopyLogs: onCopyLogs,
169
+ networkEntries: networkEntries,
170
+ onRefreshNetwork: refreshNetwork,
171
+ onClearNetwork: clearNetwork,
172
+ onCopyNetwork: onCopyLogs,
173
+ extraTabs: extraTabs,
174
+ jsonMaxDepth: jsonMaxDepth,
175
+ storageAdapter: storageAdapter,
176
+ styles: propStyles,
177
+ children: children
178
+ })]
179
+ })
167
180
  });
168
181
  });
169
182
  Backstage.displayName = 'Backstage';
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_constants","_logInterceptor","_networkInterceptor","_FloatingPill","_BackstagePanel","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Backstage","exports","forwardRef","visible","appVersion","buildNumber","bundleId","deviceInfo","state","quickActions","featureFlags","onToggleFeatureFlag","maxLogs","DEFAULT_MAX_LOGS","logFilters","onCopyLogs","extraTabs","children","styles","propStyles","initialX","initialY","pillText","enableNetworkInspector","maxNetworkEntries","DEFAULT_MAX_NETWORK_ENTRIES","maxNetworkBodySize","networkFilters","autoFilterNetworkLogs","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","jsxs","View","style","container","pointerEvents","jsx","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","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":[]}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BackstageThemeProvider = void 0;
7
+ exports.useBackstageTheme = useBackstageTheme;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _reactNative = require("react-native");
10
+ var _constants = require("./constants");
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ 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); }
13
+ // ─── Theme Preference ────────────────────────────────────────────────────────
14
+
15
+ // ─── Context ─────────────────────────────────────────────────────────────────
16
+
17
+ const ThemeContext = /*#__PURE__*/(0, _react.createContext)(_constants.DarkTheme);
18
+
19
+ // ─── Provider ────────────────────────────────────────────────────────────────
20
+
21
+ const BackstageThemeProvider = ({
22
+ preference,
23
+ children
24
+ }) => {
25
+ const systemScheme = (0, _reactNative.useColorScheme)();
26
+ const theme = (0, _react.useMemo)(() => {
27
+ if (preference === 'light') return _constants.LightTheme;
28
+ if (preference === 'dark') return _constants.DarkTheme;
29
+ // 'auto' — follow system, fallback to dark
30
+ return systemScheme === 'light' ? _constants.LightTheme : _constants.DarkTheme;
31
+ }, [preference, systemScheme]);
32
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(ThemeContext.Provider, {
33
+ value: theme,
34
+ children: children
35
+ });
36
+ };
37
+
38
+ // ─── Hook ────────────────────────────────────────────────────────────────────
39
+ exports.BackstageThemeProvider = BackstageThemeProvider;
40
+ function useBackstageTheme() {
41
+ return (0, _react.useContext)(ThemeContext);
42
+ }
43
+ //# sourceMappingURL=ThemeContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_constants","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ThemeContext","createContext","DarkTheme","BackstageThemeProvider","preference","children","systemScheme","useColorScheme","theme","useMemo","LightTheme","jsx","Provider","value","exports","useBackstageTheme","useContext"],"sourceRoot":"../../src","sources":["ThemeContext.tsx"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAAmD,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAD,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,CAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGnD;;AAIA;;AAEA,MAAMkB,YAAY,gBAAG,IAAAC,oBAAa,EAAiBC,oBAAS,CAAC;;AAE7D;;AAOO,MAAMC,sBAAoD,GAAGA,CAAC;EAAEC,UAAU;EAAEC;AAAS,CAAC,KAAK;EAChG,MAAMC,YAAY,GAAG,IAAAC,2BAAc,EAAC,CAAC;EAErC,MAAMC,KAAK,GAAG,IAAAC,cAAO,EAAC,MAAM;IAC1B,IAAIL,UAAU,KAAK,OAAO,EAAE,OAAOM,qBAAU;IAC7C,IAAIN,UAAU,KAAK,MAAM,EAAE,OAAOF,oBAAS;IAC3C;IACA,OAAOI,YAAY,KAAK,OAAO,GAAGI,qBAAU,GAAGR,oBAAS;EAC1D,CAAC,EAAE,CAACE,UAAU,EAAEE,YAAY,CAAC,CAAC;EAE9B,oBAAO,IAAA1B,WAAA,CAAA+B,GAAA,EAACX,YAAY,CAACY,QAAQ;IAACC,KAAK,EAAEL,KAAM;IAAAH,QAAA,EAAEA;EAAQ,CAAwB,CAAC;AAChF,CAAC;;AAED;AAAAS,OAAA,CAAAX,sBAAA,GAAAA,sBAAA;AAEO,SAASY,iBAAiBA,CAAA,EAAmB;EAClD,OAAO,IAAAC,iBAAU,EAAChB,YAAY,CAAC;AACjC","ignoreList":[]}
@@ -7,11 +7,13 @@ exports.BackstagePanel = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _constants = require("../constants");
10
+ var _ThemeContext = require("../ThemeContext");
10
11
  var _TabBar = require("./TabBar");
11
12
  var _InfoTab = require("./InfoTab");
12
13
  var _LogsTab = require("./LogsTab");
13
14
  var _NetworkTab = require("./NetworkTab");
14
15
  var _FlagsTab = require("./FlagsTab");
16
+ var _StorageTab = require("./StorageTab");
15
17
  var _jsxRuntime = require("react/jsx-runtime");
16
18
  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); }
17
19
  // ─── Types ───────────────────────────────────────────────────────────────────
@@ -32,6 +34,11 @@ const FLAGS_TAB = {
32
34
  title: 'Flags',
33
35
  icon: '🎚'
34
36
  };
37
+ const STORAGE_TAB = {
38
+ key: 'storage',
39
+ title: 'Storage',
40
+ icon: '🗄'
41
+ };
35
42
  const LOGS_TAB = {
36
43
  key: 'logs',
37
44
  title: 'Logs',
@@ -59,14 +66,19 @@ const BackstagePanel = ({
59
66
  onClearNetwork,
60
67
  onCopyNetwork,
61
68
  extraTabs = [],
69
+ jsonMaxDepth,
70
+ storageAdapter,
62
71
  styles: propStyles,
63
72
  children
64
73
  }) => {
65
74
  const [activeTab, setActiveTab] = (0, _react.useState)('info');
75
+ const theme = (0, _ThemeContext.useBackstageTheme)();
76
+ const styles = (0, _react.useMemo)(() => createStyles(theme), [theme]);
66
77
 
67
78
  // Compose all tabs: built-in (conditionally including Flags) + extra
68
79
  const hasFlags = featureFlags && featureFlags.length > 0;
69
- const allTabs = [...ALWAYS_ON_TABS, ...(hasFlags ? [FLAGS_TAB] : []), LOGS_TAB, ...extraTabs.map(t => ({
80
+ const hasStorage = !!storageAdapter;
81
+ const allTabs = [...ALWAYS_ON_TABS, ...(hasFlags ? [FLAGS_TAB] : []), ...(hasStorage ? [STORAGE_TAB] : []), LOGS_TAB, ...extraTabs.map(t => ({
70
82
  key: t.key,
71
83
  title: t.title,
72
84
  icon: t.icon
@@ -83,6 +95,7 @@ const BackstagePanel = ({
83
95
  deviceInfo: deviceInfo,
84
96
  state: state,
85
97
  quickActions: quickActions,
98
+ jsonMaxDepth: jsonMaxDepth,
86
99
  onClosePanel: onClose,
87
100
  styles: propStyles,
88
101
  children: children
@@ -92,18 +105,25 @@ const BackstagePanel = ({
92
105
  flags: featureFlags ?? [],
93
106
  onToggle: onToggleFeatureFlag
94
107
  });
108
+ case 'storage':
109
+ return storageAdapter ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_StorageTab.StorageTab, {
110
+ adapter: storageAdapter,
111
+ jsonMaxDepth: jsonMaxDepth
112
+ }) : null;
95
113
  case 'network':
96
114
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_NetworkTab.NetworkTab, {
97
115
  entries: networkEntries,
98
116
  onRefresh: onRefreshNetwork,
99
117
  onClear: onClearNetwork,
100
- onCopy: onCopyNetwork
118
+ onCopy: onCopyNetwork,
119
+ jsonMaxDepth: jsonMaxDepth
101
120
  });
102
121
  case 'logs':
103
122
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_LogsTab.LogsTab, {
104
123
  logs: logs,
105
124
  onRefresh: onRefreshLogs,
106
125
  onCopyLogs: onCopyLogs,
126
+ jsonMaxDepth: jsonMaxDepth,
107
127
  styles: propStyles
108
128
  });
109
129
  default:
@@ -120,18 +140,20 @@ const BackstagePanel = ({
120
140
  }
121
141
  };
122
142
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Modal, {
123
- testID: _constants.TestIDs.panel,
143
+ testID: _constants.TestIDs.panelModal,
124
144
  animationType: "slide",
125
145
  transparent: false,
126
146
  visible: visible,
127
147
  onRequestClose: onClose,
128
148
  statusBarTranslucent: true,
129
149
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.StatusBar, {
130
- barStyle: "light-content",
131
- backgroundColor: _constants.DarkTheme.background
150
+ barStyle: theme.background < '#888' ? 'light-content' : 'dark-content',
151
+ backgroundColor: theme.background
132
152
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.SafeAreaView, {
153
+ testID: _constants.TestIDs.panel,
133
154
  style: [styles.safeArea, propStyles?.panelStyle],
134
155
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
156
+ testID: _constants.TestIDs.header.container,
135
157
  style: styles.header,
136
158
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
137
159
  style: styles.headerLeft,
@@ -139,6 +161,7 @@ const BackstagePanel = ({
139
161
  style: styles.headerBrand,
140
162
  children: "\u2699"
141
163
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
164
+ testID: _constants.TestIDs.header.title,
142
165
  style: [styles.headerTitle, propStyles?.headerTitleStyle],
143
166
  children: "Backstage"
144
167
  })]
@@ -172,10 +195,10 @@ const BackstagePanel = ({
172
195
 
173
196
  // ─── Styles ──────────────────────────────────────────────────────────────────
174
197
  exports.BackstagePanel = BackstagePanel;
175
- const styles = _reactNative.StyleSheet.create({
198
+ const createStyles = t => _reactNative.StyleSheet.create({
176
199
  safeArea: {
177
200
  flex: 1,
178
- backgroundColor: _constants.DarkTheme.background
201
+ backgroundColor: t.background
179
202
  },
180
203
  header: {
181
204
  flexDirection: 'row',
@@ -184,7 +207,7 @@ const styles = _reactNative.StyleSheet.create({
184
207
  paddingHorizontal: 16,
185
208
  paddingVertical: 12,
186
209
  borderBottomWidth: 1,
187
- borderBottomColor: _constants.DarkTheme.border
210
+ borderBottomColor: t.border
188
211
  },
189
212
  headerLeft: {
190
213
  flexDirection: 'row',
@@ -198,22 +221,22 @@ const styles = _reactNative.StyleSheet.create({
198
221
  fontFamily: _constants.MonospaceFont,
199
222
  fontSize: 18,
200
223
  fontWeight: '800',
201
- color: _constants.DarkTheme.text,
224
+ color: t.text,
202
225
  letterSpacing: 1
203
226
  },
204
227
  closeButton: {
205
228
  width: 32,
206
229
  height: 32,
207
230
  borderRadius: 16,
208
- backgroundColor: _constants.DarkTheme.surfaceElevated,
231
+ backgroundColor: t.surfaceElevated,
209
232
  borderWidth: 1,
210
- borderColor: _constants.DarkTheme.border,
233
+ borderColor: t.border,
211
234
  alignItems: 'center',
212
235
  justifyContent: 'center'
213
236
  },
214
237
  closeButtonText: {
215
238
  fontSize: 14,
216
- color: _constants.DarkTheme.textSecondary,
239
+ color: t.textSecondary,
217
240
  fontWeight: '700'
218
241
  },
219
242
  content: {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_constants","_TabBar","_InfoTab","_LogsTab","_NetworkTab","_FlagsTab","_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","LOGS_TAB","BackstagePanel","visible","onClose","appVersion","buildNumber","bundleId","deviceInfo","state","quickActions","featureFlags","onToggleFeatureFlag","logs","onRefreshLogs","onCopyLogs","networkEntries","onRefreshNetwork","onClearNetwork","onCopyNetwork","extraTabs","styles","propStyles","children","activeTab","setActiveTab","useState","hasFlags","length","allTabs","map","renderTabContent","jsx","InfoTab","onClosePanel","FlagsTab","flags","onToggle","NetworkTab","entries","onRefresh","onClear","onCopy","LogsTab","extraTab","find","Fragment","render","jsxs","Modal","testID","TestIDs","panel","animationType","transparent","onRequestClose","statusBarTranslucent","StatusBar","barStyle","backgroundColor","DarkTheme","background","SafeAreaView","style","safeArea","panelStyle","View","header","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","_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":[]}