react-native-prod-debugger 1.0.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 (227) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +350 -0
  3. package/lib/commonjs/core/DebugBubble.js +139 -0
  4. package/lib/commonjs/core/DebugBubble.js.map +1 -0
  5. package/lib/commonjs/core/DebugOverlay.js +184 -0
  6. package/lib/commonjs/core/DebugOverlay.js.map +1 -0
  7. package/lib/commonjs/core/DebuggerProvider.js +174 -0
  8. package/lib/commonjs/core/DebuggerProvider.js.map +1 -0
  9. package/lib/commonjs/core/GestureDetector.js +83 -0
  10. package/lib/commonjs/core/GestureDetector.js.map +1 -0
  11. package/lib/commonjs/core/PluginRegistry.js +124 -0
  12. package/lib/commonjs/core/PluginRegistry.js.map +1 -0
  13. package/lib/commonjs/core/theme.js +50 -0
  14. package/lib/commonjs/core/theme.js.map +1 -0
  15. package/lib/commonjs/core/types.js +6 -0
  16. package/lib/commonjs/core/types.js.map +1 -0
  17. package/lib/commonjs/core/useDebugger.js +27 -0
  18. package/lib/commonjs/core/useDebugger.js.map +1 -0
  19. package/lib/commonjs/core/utils.js +239 -0
  20. package/lib/commonjs/core/utils.js.map +1 -0
  21. package/lib/commonjs/index.js +132 -0
  22. package/lib/commonjs/index.js.map +1 -0
  23. package/lib/commonjs/plugins/console/ConsoleInterceptor.js +103 -0
  24. package/lib/commonjs/plugins/console/ConsoleInterceptor.js.map +1 -0
  25. package/lib/commonjs/plugins/console/ConsoleViewerPlugin.js +269 -0
  26. package/lib/commonjs/plugins/console/ConsoleViewerPlugin.js.map +1 -0
  27. package/lib/commonjs/plugins/crashReporter/CrashReporterPlugin.js +363 -0
  28. package/lib/commonjs/plugins/crashReporter/CrashReporterPlugin.js.map +1 -0
  29. package/lib/commonjs/plugins/customActions/CustomActionsPlugin.js +218 -0
  30. package/lib/commonjs/plugins/customActions/CustomActionsPlugin.js.map +1 -0
  31. package/lib/commonjs/plugins/customActions/actionStore.js +46 -0
  32. package/lib/commonjs/plugins/customActions/actionStore.js.map +1 -0
  33. package/lib/commonjs/plugins/deepLinkTester/DeepLinkTesterPlugin.js +268 -0
  34. package/lib/commonjs/plugins/deepLinkTester/DeepLinkTesterPlugin.js.map +1 -0
  35. package/lib/commonjs/plugins/deviceInfo/DeviceInfoPlugin.js +184 -0
  36. package/lib/commonjs/plugins/deviceInfo/DeviceInfoPlugin.js.map +1 -0
  37. package/lib/commonjs/plugins/featureFlags/FeatureFlagsPlugin.js +381 -0
  38. package/lib/commonjs/plugins/featureFlags/FeatureFlagsPlugin.js.map +1 -0
  39. package/lib/commonjs/plugins/featureFlags/flagStore.js +125 -0
  40. package/lib/commonjs/plugins/featureFlags/flagStore.js.map +1 -0
  41. package/lib/commonjs/plugins/navigationInspector/NavigationInspectorPlugin.js +250 -0
  42. package/lib/commonjs/plugins/navigationInspector/NavigationInspectorPlugin.js.map +1 -0
  43. package/lib/commonjs/plugins/navigationInspector/navigationStore.js +65 -0
  44. package/lib/commonjs/plugins/navigationInspector/navigationStore.js.map +1 -0
  45. package/lib/commonjs/plugins/network/NetworkInspectorPlugin.js +709 -0
  46. package/lib/commonjs/plugins/network/NetworkInspectorPlugin.js.map +1 -0
  47. package/lib/commonjs/plugins/network/NetworkInterceptor.js +305 -0
  48. package/lib/commonjs/plugins/network/NetworkInterceptor.js.map +1 -0
  49. package/lib/commonjs/plugins/performance/PerformanceMonitorPlugin.js +261 -0
  50. package/lib/commonjs/plugins/performance/PerformanceMonitorPlugin.js.map +1 -0
  51. package/lib/commonjs/plugins/remoteConfig/RemoteConfigPlugin.js +265 -0
  52. package/lib/commonjs/plugins/remoteConfig/RemoteConfigPlugin.js.map +1 -0
  53. package/lib/commonjs/plugins/remoteConfig/remoteConfigStore.js +50 -0
  54. package/lib/commonjs/plugins/remoteConfig/remoteConfigStore.js.map +1 -0
  55. package/lib/commonjs/plugins/stateInspector/StateInspectorPlugin.js +378 -0
  56. package/lib/commonjs/plugins/stateInspector/StateInspectorPlugin.js.map +1 -0
  57. package/lib/commonjs/plugins/stateInspector/stateAdapterRegistry.js +62 -0
  58. package/lib/commonjs/plugins/stateInspector/stateAdapterRegistry.js.map +1 -0
  59. package/lib/commonjs/plugins/storageBrowser/StorageBrowserPlugin.js +496 -0
  60. package/lib/commonjs/plugins/storageBrowser/StorageBrowserPlugin.js.map +1 -0
  61. package/lib/commonjs/plugins/storageBrowser/storageAdapterRegistry.js +44 -0
  62. package/lib/commonjs/plugins/storageBrowser/storageAdapterRegistry.js.map +1 -0
  63. package/lib/commonjs/plugins/timeline/TimelinePlugin.js +294 -0
  64. package/lib/commonjs/plugins/timeline/TimelinePlugin.js.map +1 -0
  65. package/lib/commonjs/plugins/timeline/timelineStore.js +61 -0
  66. package/lib/commonjs/plugins/timeline/timelineStore.js.map +1 -0
  67. package/lib/module/core/DebugBubble.js +131 -0
  68. package/lib/module/core/DebugBubble.js.map +1 -0
  69. package/lib/module/core/DebugOverlay.js +176 -0
  70. package/lib/module/core/DebugOverlay.js.map +1 -0
  71. package/lib/module/core/DebuggerProvider.js +167 -0
  72. package/lib/module/core/DebuggerProvider.js.map +1 -0
  73. package/lib/module/core/GestureDetector.js +75 -0
  74. package/lib/module/core/GestureDetector.js.map +1 -0
  75. package/lib/module/core/PluginRegistry.js +116 -0
  76. package/lib/module/core/PluginRegistry.js.map +1 -0
  77. package/lib/module/core/theme.js +43 -0
  78. package/lib/module/core/theme.js.map +1 -0
  79. package/lib/module/core/types.js +2 -0
  80. package/lib/module/core/types.js.map +1 -0
  81. package/lib/module/core/useDebugger.js +21 -0
  82. package/lib/module/core/useDebugger.js.map +1 -0
  83. package/lib/module/core/utils.js +219 -0
  84. package/lib/module/core/utils.js.map +1 -0
  85. package/lib/module/index.js +44 -0
  86. package/lib/module/index.js.map +1 -0
  87. package/lib/module/plugins/console/ConsoleInterceptor.js +97 -0
  88. package/lib/module/plugins/console/ConsoleInterceptor.js.map +1 -0
  89. package/lib/module/plugins/console/ConsoleViewerPlugin.js +262 -0
  90. package/lib/module/plugins/console/ConsoleViewerPlugin.js.map +1 -0
  91. package/lib/module/plugins/crashReporter/CrashReporterPlugin.js +357 -0
  92. package/lib/module/plugins/crashReporter/CrashReporterPlugin.js.map +1 -0
  93. package/lib/module/plugins/customActions/CustomActionsPlugin.js +211 -0
  94. package/lib/module/plugins/customActions/CustomActionsPlugin.js.map +1 -0
  95. package/lib/module/plugins/customActions/actionStore.js +38 -0
  96. package/lib/module/plugins/customActions/actionStore.js.map +1 -0
  97. package/lib/module/plugins/deepLinkTester/DeepLinkTesterPlugin.js +261 -0
  98. package/lib/module/plugins/deepLinkTester/DeepLinkTesterPlugin.js.map +1 -0
  99. package/lib/module/plugins/deviceInfo/DeviceInfoPlugin.js +177 -0
  100. package/lib/module/plugins/deviceInfo/DeviceInfoPlugin.js.map +1 -0
  101. package/lib/module/plugins/featureFlags/FeatureFlagsPlugin.js +374 -0
  102. package/lib/module/plugins/featureFlags/FeatureFlagsPlugin.js.map +1 -0
  103. package/lib/module/plugins/featureFlags/flagStore.js +117 -0
  104. package/lib/module/plugins/featureFlags/flagStore.js.map +1 -0
  105. package/lib/module/plugins/navigationInspector/NavigationInspectorPlugin.js +243 -0
  106. package/lib/module/plugins/navigationInspector/NavigationInspectorPlugin.js.map +1 -0
  107. package/lib/module/plugins/navigationInspector/navigationStore.js +58 -0
  108. package/lib/module/plugins/navigationInspector/navigationStore.js.map +1 -0
  109. package/lib/module/plugins/network/NetworkInspectorPlugin.js +703 -0
  110. package/lib/module/plugins/network/NetworkInspectorPlugin.js.map +1 -0
  111. package/lib/module/plugins/network/NetworkInterceptor.js +299 -0
  112. package/lib/module/plugins/network/NetworkInterceptor.js.map +1 -0
  113. package/lib/module/plugins/performance/PerformanceMonitorPlugin.js +254 -0
  114. package/lib/module/plugins/performance/PerformanceMonitorPlugin.js.map +1 -0
  115. package/lib/module/plugins/remoteConfig/RemoteConfigPlugin.js +258 -0
  116. package/lib/module/plugins/remoteConfig/RemoteConfigPlugin.js.map +1 -0
  117. package/lib/module/plugins/remoteConfig/remoteConfigStore.js +43 -0
  118. package/lib/module/plugins/remoteConfig/remoteConfigStore.js.map +1 -0
  119. package/lib/module/plugins/stateInspector/StateInspectorPlugin.js +372 -0
  120. package/lib/module/plugins/stateInspector/StateInspectorPlugin.js.map +1 -0
  121. package/lib/module/plugins/stateInspector/stateAdapterRegistry.js +54 -0
  122. package/lib/module/plugins/stateInspector/stateAdapterRegistry.js.map +1 -0
  123. package/lib/module/plugins/storageBrowser/StorageBrowserPlugin.js +489 -0
  124. package/lib/module/plugins/storageBrowser/StorageBrowserPlugin.js.map +1 -0
  125. package/lib/module/plugins/storageBrowser/storageAdapterRegistry.js +36 -0
  126. package/lib/module/plugins/storageBrowser/storageAdapterRegistry.js.map +1 -0
  127. package/lib/module/plugins/timeline/TimelinePlugin.js +287 -0
  128. package/lib/module/plugins/timeline/TimelinePlugin.js.map +1 -0
  129. package/lib/module/plugins/timeline/timelineStore.js +54 -0
  130. package/lib/module/plugins/timeline/timelineStore.js.map +1 -0
  131. package/lib/typescript/core/DebugBubble.d.ts +22 -0
  132. package/lib/typescript/core/DebugBubble.d.ts.map +1 -0
  133. package/lib/typescript/core/DebugOverlay.d.ts +18 -0
  134. package/lib/typescript/core/DebugOverlay.d.ts.map +1 -0
  135. package/lib/typescript/core/DebuggerProvider.d.ts +25 -0
  136. package/lib/typescript/core/DebuggerProvider.d.ts.map +1 -0
  137. package/lib/typescript/core/GestureDetector.d.ts +20 -0
  138. package/lib/typescript/core/GestureDetector.d.ts.map +1 -0
  139. package/lib/typescript/core/PluginRegistry.d.ts +41 -0
  140. package/lib/typescript/core/PluginRegistry.d.ts.map +1 -0
  141. package/lib/typescript/core/theme.d.ts +11 -0
  142. package/lib/typescript/core/theme.d.ts.map +1 -0
  143. package/lib/typescript/core/types.d.ts +269 -0
  144. package/lib/typescript/core/types.d.ts.map +1 -0
  145. package/lib/typescript/core/useDebugger.d.ts +14 -0
  146. package/lib/typescript/core/useDebugger.d.ts.map +1 -0
  147. package/lib/typescript/core/utils.d.ts +46 -0
  148. package/lib/typescript/core/utils.d.ts.map +1 -0
  149. package/lib/typescript/index.d.ts +23 -0
  150. package/lib/typescript/index.d.ts.map +1 -0
  151. package/lib/typescript/plugins/console/ConsoleInterceptor.d.ts +32 -0
  152. package/lib/typescript/plugins/console/ConsoleInterceptor.d.ts.map +1 -0
  153. package/lib/typescript/plugins/console/ConsoleViewerPlugin.d.ts +3 -0
  154. package/lib/typescript/plugins/console/ConsoleViewerPlugin.d.ts.map +1 -0
  155. package/lib/typescript/plugins/crashReporter/CrashReporterPlugin.d.ts +3 -0
  156. package/lib/typescript/plugins/crashReporter/CrashReporterPlugin.d.ts.map +1 -0
  157. package/lib/typescript/plugins/customActions/CustomActionsPlugin.d.ts +3 -0
  158. package/lib/typescript/plugins/customActions/CustomActionsPlugin.d.ts.map +1 -0
  159. package/lib/typescript/plugins/customActions/actionStore.d.ts +16 -0
  160. package/lib/typescript/plugins/customActions/actionStore.d.ts.map +1 -0
  161. package/lib/typescript/plugins/deepLinkTester/DeepLinkTesterPlugin.d.ts +3 -0
  162. package/lib/typescript/plugins/deepLinkTester/DeepLinkTesterPlugin.d.ts.map +1 -0
  163. package/lib/typescript/plugins/deviceInfo/DeviceInfoPlugin.d.ts +3 -0
  164. package/lib/typescript/plugins/deviceInfo/DeviceInfoPlugin.d.ts.map +1 -0
  165. package/lib/typescript/plugins/featureFlags/FeatureFlagsPlugin.d.ts +3 -0
  166. package/lib/typescript/plugins/featureFlags/FeatureFlagsPlugin.d.ts.map +1 -0
  167. package/lib/typescript/plugins/featureFlags/flagStore.d.ts +45 -0
  168. package/lib/typescript/plugins/featureFlags/flagStore.d.ts.map +1 -0
  169. package/lib/typescript/plugins/navigationInspector/NavigationInspectorPlugin.d.ts +3 -0
  170. package/lib/typescript/plugins/navigationInspector/NavigationInspectorPlugin.d.ts.map +1 -0
  171. package/lib/typescript/plugins/navigationInspector/navigationStore.d.ts +30 -0
  172. package/lib/typescript/plugins/navigationInspector/navigationStore.d.ts.map +1 -0
  173. package/lib/typescript/plugins/network/NetworkInspectorPlugin.d.ts +3 -0
  174. package/lib/typescript/plugins/network/NetworkInspectorPlugin.d.ts.map +1 -0
  175. package/lib/typescript/plugins/network/NetworkInterceptor.d.ts +42 -0
  176. package/lib/typescript/plugins/network/NetworkInterceptor.d.ts.map +1 -0
  177. package/lib/typescript/plugins/performance/PerformanceMonitorPlugin.d.ts +3 -0
  178. package/lib/typescript/plugins/performance/PerformanceMonitorPlugin.d.ts.map +1 -0
  179. package/lib/typescript/plugins/remoteConfig/RemoteConfigPlugin.d.ts +3 -0
  180. package/lib/typescript/plugins/remoteConfig/RemoteConfigPlugin.d.ts.map +1 -0
  181. package/lib/typescript/plugins/remoteConfig/remoteConfigStore.d.ts +20 -0
  182. package/lib/typescript/plugins/remoteConfig/remoteConfigStore.d.ts.map +1 -0
  183. package/lib/typescript/plugins/stateInspector/StateInspectorPlugin.d.ts +3 -0
  184. package/lib/typescript/plugins/stateInspector/StateInspectorPlugin.d.ts.map +1 -0
  185. package/lib/typescript/plugins/stateInspector/stateAdapterRegistry.d.ts +34 -0
  186. package/lib/typescript/plugins/stateInspector/stateAdapterRegistry.d.ts.map +1 -0
  187. package/lib/typescript/plugins/storageBrowser/StorageBrowserPlugin.d.ts +3 -0
  188. package/lib/typescript/plugins/storageBrowser/StorageBrowserPlugin.d.ts.map +1 -0
  189. package/lib/typescript/plugins/storageBrowser/storageAdapterRegistry.d.ts +16 -0
  190. package/lib/typescript/plugins/storageBrowser/storageAdapterRegistry.d.ts.map +1 -0
  191. package/lib/typescript/plugins/timeline/TimelinePlugin.d.ts +3 -0
  192. package/lib/typescript/plugins/timeline/TimelinePlugin.d.ts.map +1 -0
  193. package/lib/typescript/plugins/timeline/timelineStore.d.ts +24 -0
  194. package/lib/typescript/plugins/timeline/timelineStore.d.ts.map +1 -0
  195. package/package.json +131 -0
  196. package/src/core/DebugBubble.tsx +149 -0
  197. package/src/core/DebugOverlay.tsx +211 -0
  198. package/src/core/DebuggerProvider.tsx +211 -0
  199. package/src/core/GestureDetector.tsx +95 -0
  200. package/src/core/PluginRegistry.ts +118 -0
  201. package/src/core/theme.ts +41 -0
  202. package/src/core/types.ts +339 -0
  203. package/src/core/useDebugger.ts +24 -0
  204. package/src/core/utils.ts +221 -0
  205. package/src/index.ts +67 -0
  206. package/src/plugins/console/ConsoleInterceptor.ts +110 -0
  207. package/src/plugins/console/ConsoleViewerPlugin.tsx +241 -0
  208. package/src/plugins/crashReporter/CrashReporterPlugin.tsx +316 -0
  209. package/src/plugins/customActions/CustomActionsPlugin.tsx +199 -0
  210. package/src/plugins/customActions/actionStore.ts +49 -0
  211. package/src/plugins/deepLinkTester/DeepLinkTesterPlugin.tsx +213 -0
  212. package/src/plugins/deviceInfo/DeviceInfoPlugin.tsx +153 -0
  213. package/src/plugins/featureFlags/FeatureFlagsPlugin.tsx +338 -0
  214. package/src/plugins/featureFlags/flagStore.ts +118 -0
  215. package/src/plugins/navigationInspector/NavigationInspectorPlugin.tsx +170 -0
  216. package/src/plugins/navigationInspector/navigationStore.ts +70 -0
  217. package/src/plugins/network/NetworkInspectorPlugin.tsx +598 -0
  218. package/src/plugins/network/NetworkInterceptor.ts +344 -0
  219. package/src/plugins/performance/PerformanceMonitorPlugin.tsx +194 -0
  220. package/src/plugins/remoteConfig/RemoteConfigPlugin.tsx +205 -0
  221. package/src/plugins/remoteConfig/remoteConfigStore.ts +48 -0
  222. package/src/plugins/stateInspector/StateInspectorPlugin.tsx +342 -0
  223. package/src/plugins/stateInspector/stateAdapterRegistry.ts +66 -0
  224. package/src/plugins/storageBrowser/StorageBrowserPlugin.tsx +410 -0
  225. package/src/plugins/storageBrowser/storageAdapterRegistry.ts +47 -0
  226. package/src/plugins/timeline/TimelinePlugin.tsx +242 -0
  227. package/src/plugins/timeline/timelineStore.ts +65 -0
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.flagStore = void 0;
7
+ exports.getFlag = getFlag;
8
+ exports.registerFlag = registerFlag;
9
+ exports.resetFlags = resetFlags;
10
+ /**
11
+ * Feature Flag Store — In-memory registry for feature flags.
12
+ *
13
+ * Flags can be registered by the consumer app and toggled at runtime
14
+ * via the debugger overlay. Overrides persist in-memory (optionally in AsyncStorage).
15
+ */
16
+ class FlagStoreClass {
17
+ flags = new Map();
18
+ listeners = new Set();
19
+ changeCallbacks = new Map();
20
+
21
+ /** Register a feature flag. */
22
+ register(flag) {
23
+ const existing = this.flags.get(flag.key);
24
+ this.flags.set(flag.key, {
25
+ ...flag,
26
+ currentValue: existing?.currentValue ?? flag.currentValue ?? flag.defaultValue
27
+ });
28
+ this.notify();
29
+ }
30
+
31
+ /** Get a flag value. Returns the overridden value if set, otherwise the default. */
32
+ get(key) {
33
+ return this.flags.get(key)?.currentValue;
34
+ }
35
+
36
+ /** Get a flag definition. */
37
+ getFlag(key) {
38
+ return this.flags.get(key);
39
+ }
40
+
41
+ /** Get all flags. */
42
+ getAll() {
43
+ return Array.from(this.flags.values());
44
+ }
45
+
46
+ /** Override a flag value. */
47
+ override(key, value) {
48
+ const flag = this.flags.get(key);
49
+ if (!flag) return;
50
+ this.flags.set(key, {
51
+ ...flag,
52
+ currentValue: value
53
+ });
54
+ // Fire change callback
55
+ const cb = this.changeCallbacks.get(key);
56
+ if (cb) cb(value);
57
+ this.notify();
58
+ }
59
+
60
+ /** Reset a single flag to its default value. */
61
+ reset(key) {
62
+ const flag = this.flags.get(key);
63
+ if (!flag) return;
64
+ this.flags.set(key, {
65
+ ...flag,
66
+ currentValue: flag.defaultValue
67
+ });
68
+ const cb = this.changeCallbacks.get(key);
69
+ if (cb) cb(flag.defaultValue);
70
+ this.notify();
71
+ }
72
+
73
+ /** Reset all flags to defaults. */
74
+ resetAll() {
75
+ for (const [key, flag] of this.flags) {
76
+ this.flags.set(key, {
77
+ ...flag,
78
+ currentValue: flag.defaultValue
79
+ });
80
+ const cb = this.changeCallbacks.get(key);
81
+ if (cb) cb(flag.defaultValue);
82
+ }
83
+ this.notify();
84
+ }
85
+
86
+ /** Register a callback when a specific flag changes. */
87
+ onChange(key, callback) {
88
+ this.changeCallbacks.set(key, callback);
89
+ return () => this.changeCallbacks.delete(key);
90
+ }
91
+
92
+ /** Subscribe to all flag changes. */
93
+ subscribe(listener) {
94
+ this.listeners.add(listener);
95
+ listener(this.getAll());
96
+ return () => this.listeners.delete(listener);
97
+ }
98
+ notify() {
99
+ const snapshot = this.getAll();
100
+ for (const listener of this.listeners) {
101
+ try {
102
+ listener(snapshot);
103
+ } catch {
104
+ /* ignore */
105
+ }
106
+ }
107
+ }
108
+ }
109
+ const flagStore = exports.flagStore = new FlagStoreClass();
110
+
111
+ /** Register a feature flag. */
112
+ function registerFlag(flag) {
113
+ flagStore.register(flag);
114
+ }
115
+
116
+ /** Reset all flag overrides. */
117
+ function resetFlags() {
118
+ flagStore.resetAll();
119
+ }
120
+
121
+ /** Get a flag's current value. */
122
+ function getFlag(key) {
123
+ return flagStore.get(key);
124
+ }
125
+ //# sourceMappingURL=flagStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["FlagStoreClass","flags","Map","listeners","Set","changeCallbacks","register","flag","existing","get","key","set","currentValue","defaultValue","notify","getFlag","getAll","Array","from","values","override","value","cb","reset","resetAll","onChange","callback","delete","subscribe","listener","add","snapshot","flagStore","exports","registerFlag","resetFlags"],"sourceRoot":"../../../../src","sources":["plugins/featureFlags/flagStore.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,250 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createNavigationInspectorPlugin = createNavigationInspectorPlugin;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _navigationStore = require("./navigationStore");
10
+ var _utils = require("../../core/utils");
11
+ 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); }
12
+ const NavigationInspectorPanel = ({
13
+ theme
14
+ }) => {
15
+ const [state, setState] = (0, _react.useState)(null);
16
+ const [currentRoute, setCurrentRoute] = (0, _react.useState)(null);
17
+ const [history, setHistory] = (0, _react.useState)([]);
18
+ const [, forceUpdate] = (0, _react.useState)(0);
19
+ const refresh = (0, _react.useCallback)(() => {
20
+ setState(_navigationStore.navigationStore.getState());
21
+ setCurrentRoute(_navigationStore.navigationStore.getCurrentRoute());
22
+ setHistory(_navigationStore.navigationStore.getHistory());
23
+ forceUpdate(n => n + 1);
24
+ }, []);
25
+ (0, _react.useEffect)(() => {
26
+ const unsub = _navigationStore.navigationStore.subscribe(refresh);
27
+ refresh();
28
+ const interval = setInterval(refresh, 2000);
29
+ return () => {
30
+ unsub();
31
+ clearInterval(interval);
32
+ };
33
+ }, [refresh]);
34
+ const hasRef = !!_navigationStore.navigationStore.getRef();
35
+ if (!hasRef) {
36
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
37
+ style: styles.emptyContainer
38
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
39
+ style: styles.emptyIcon
40
+ }, "\uD83E\uDDED"), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
41
+ style: [styles.emptyTitle, {
42
+ color: theme.text
43
+ }]
44
+ }, "No Navigation Ref"), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
45
+ style: [styles.emptyDesc, {
46
+ color: theme.textMuted
47
+ }]
48
+ }, "Pass your navigation ref:", '\n\n', /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
49
+ style: {
50
+ fontFamily: 'monospace',
51
+ color: theme.codeText
52
+ }
53
+ }, 'setNavigationRef(navigationRef)')));
54
+ }
55
+ return /*#__PURE__*/_react.default.createElement(_reactNative.ScrollView, {
56
+ style: styles.container
57
+ }, currentRoute && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
58
+ style: [styles.section, {
59
+ backgroundColor: theme.surface
60
+ }]
61
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
62
+ style: [styles.sectionTitle, {
63
+ color: theme.textSecondary
64
+ }]
65
+ }, "CURRENT ROUTE"), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
66
+ style: [styles.routeCard, {
67
+ backgroundColor: theme.accent
68
+ }]
69
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
70
+ style: styles.routeName
71
+ }, currentRoute.name)), currentRoute.params && Object.keys(currentRoute.params).length > 0 && /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
72
+ style: [styles.paramsBlock, {
73
+ backgroundColor: theme.codeBackground
74
+ }],
75
+ onLongPress: () => (0, _utils.copyToClipboard)((0, _utils.safeStringify)(currentRoute.params)),
76
+ activeOpacity: 0.7
77
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
78
+ style: [styles.paramsTitle, {
79
+ color: theme.textSecondary
80
+ }]
81
+ }, "Params"), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
82
+ style: [styles.paramsText, {
83
+ color: theme.codeText
84
+ }],
85
+ selectable: true
86
+ }, (0, _utils.safeStringify)(currentRoute.params)))), state && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
87
+ style: [styles.section, {
88
+ backgroundColor: theme.surface
89
+ }]
90
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
91
+ style: styles.sectionHeader
92
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
93
+ style: [styles.sectionTitle, {
94
+ color: theme.textSecondary
95
+ }]
96
+ }, "STATE TREE"), /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
97
+ onPress: () => (0, _utils.copyToClipboard)((0, _utils.safeStringify)(state)),
98
+ activeOpacity: 0.7
99
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
100
+ style: [styles.copyBtn, {
101
+ color: theme.accent
102
+ }]
103
+ }, "Copy"))), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
104
+ style: [styles.codeBlock, {
105
+ backgroundColor: theme.codeBackground
106
+ }]
107
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
108
+ style: [styles.codeText, {
109
+ color: theme.codeText
110
+ }],
111
+ selectable: true
112
+ }, String((0, _utils.safeStringify)(state))))), history.length > 0 && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
113
+ style: [styles.section, {
114
+ backgroundColor: theme.surface
115
+ }]
116
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
117
+ style: [styles.sectionTitle, {
118
+ color: theme.textSecondary
119
+ }]
120
+ }, "ROUTE HISTORY"), history.map((entry, i) => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
121
+ key: i,
122
+ style: [styles.historyRow, {
123
+ borderBottomColor: theme.border
124
+ }]
125
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
126
+ style: styles.historyInfo
127
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
128
+ style: [styles.historyRoute, {
129
+ color: theme.text
130
+ }]
131
+ }, entry.name), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
132
+ style: [styles.historyTime, {
133
+ color: theme.textMuted
134
+ }]
135
+ }, (0, _utils.formatTimestamp)(entry.timestamp)))))), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
136
+ style: {
137
+ height: 40
138
+ }
139
+ }));
140
+ };
141
+ const styles = _reactNative.StyleSheet.create({
142
+ container: {
143
+ flex: 1
144
+ },
145
+ emptyContainer: {
146
+ flex: 1,
147
+ alignItems: 'center',
148
+ justifyContent: 'center',
149
+ paddingHorizontal: 32
150
+ },
151
+ emptyIcon: {
152
+ fontSize: 48,
153
+ marginBottom: 16
154
+ },
155
+ emptyTitle: {
156
+ fontSize: 16,
157
+ fontWeight: '700',
158
+ marginBottom: 8
159
+ },
160
+ emptyDesc: {
161
+ fontSize: 13,
162
+ textAlign: 'center',
163
+ lineHeight: 20
164
+ },
165
+ section: {
166
+ margin: 12,
167
+ borderRadius: 12,
168
+ padding: 12
169
+ },
170
+ sectionTitle: {
171
+ fontSize: 11,
172
+ fontWeight: '700',
173
+ textTransform: 'uppercase',
174
+ letterSpacing: 1,
175
+ marginBottom: 8
176
+ },
177
+ sectionHeader: {
178
+ flexDirection: 'row',
179
+ justifyContent: 'space-between',
180
+ alignItems: 'center',
181
+ marginBottom: 8
182
+ },
183
+ copyBtn: {
184
+ fontSize: 12,
185
+ fontWeight: '600'
186
+ },
187
+ routeCard: {
188
+ padding: 12,
189
+ borderRadius: 8,
190
+ alignItems: 'center'
191
+ },
192
+ routeName: {
193
+ fontSize: 18,
194
+ fontWeight: '800',
195
+ color: '#FFF'
196
+ },
197
+ paramsBlock: {
198
+ padding: 12,
199
+ borderRadius: 8,
200
+ marginTop: 8
201
+ },
202
+ paramsTitle: {
203
+ fontSize: 10,
204
+ fontWeight: '700',
205
+ marginBottom: 4,
206
+ textTransform: 'uppercase'
207
+ },
208
+ paramsText: {
209
+ fontSize: 11,
210
+ fontFamily: 'monospace',
211
+ lineHeight: 16
212
+ },
213
+ codeBlock: {
214
+ padding: 12,
215
+ borderRadius: 8
216
+ },
217
+ codeText: {
218
+ fontSize: 11,
219
+ fontFamily: 'monospace',
220
+ lineHeight: 16
221
+ },
222
+ historyRow: {
223
+ flexDirection: 'row',
224
+ alignItems: 'center',
225
+ paddingVertical: 8,
226
+ borderBottomWidth: _reactNative.StyleSheet.hairlineWidth
227
+ },
228
+ historyInfo: {
229
+ flex: 1,
230
+ flexDirection: 'row',
231
+ justifyContent: 'space-between'
232
+ },
233
+ historyRoute: {
234
+ fontSize: 13,
235
+ fontWeight: '600'
236
+ },
237
+ historyTime: {
238
+ fontSize: 10
239
+ }
240
+ });
241
+ function createNavigationInspectorPlugin() {
242
+ return {
243
+ id: 'navigation-inspector',
244
+ name: 'Nav',
245
+ icon: '🧭',
246
+ component: NavigationInspectorPanel,
247
+ order: 90
248
+ };
249
+ }
250
+ //# sourceMappingURL=NavigationInspectorPlugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_navigationStore","_utils","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","NavigationInspectorPanel","theme","state","setState","useState","currentRoute","setCurrentRoute","history","setHistory","forceUpdate","refresh","useCallback","navigationStore","getState","getCurrentRoute","getHistory","useEffect","unsub","subscribe","interval","setInterval","clearInterval","hasRef","getRef","createElement","View","style","styles","emptyContainer","Text","emptyIcon","emptyTitle","color","text","emptyDesc","textMuted","fontFamily","codeText","ScrollView","container","section","backgroundColor","surface","sectionTitle","textSecondary","routeCard","accent","routeName","name","params","keys","length","TouchableOpacity","paramsBlock","codeBackground","onLongPress","copyToClipboard","safeStringify","activeOpacity","paramsTitle","paramsText","selectable","sectionHeader","onPress","copyBtn","codeBlock","String","map","entry","key","historyRow","borderBottomColor","border","historyInfo","historyRoute","historyTime","formatTimestamp","timestamp","height","StyleSheet","create","flex","alignItems","justifyContent","paddingHorizontal","fontSize","marginBottom","fontWeight","textAlign","lineHeight","margin","borderRadius","padding","textTransform","letterSpacing","flexDirection","marginTop","paddingVertical","borderBottomWidth","hairlineWidth","createNavigationInspectorPlugin","id","icon","component","order"],"sourceRoot":"../../../../src","sources":["plugins/navigationInspector/NavigationInspectorPlugin.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.navigationStore = void 0;
7
+ exports.setNavigationRef = setNavigationRef;
8
+ class NavigationStoreClass {
9
+ ref = null;
10
+ history = [];
11
+ listeners = new Set();
12
+ maxHistory = 50;
13
+ setRef(ref) {
14
+ this.ref = ref;
15
+ this.notify();
16
+ }
17
+ getRef() {
18
+ return this.ref?.current;
19
+ }
20
+ addHistoryEntry(name, params) {
21
+ this.history = [{
22
+ name,
23
+ params,
24
+ timestamp: Date.now()
25
+ }, ...this.history].slice(0, this.maxHistory);
26
+ this.notify();
27
+ }
28
+ getHistory() {
29
+ return [...this.history];
30
+ }
31
+ getState() {
32
+ try {
33
+ const nav = this.ref?.current;
34
+ return nav?.getRootState?.() ?? null;
35
+ } catch {
36
+ return null;
37
+ }
38
+ }
39
+ getCurrentRoute() {
40
+ try {
41
+ const nav = this.ref?.current;
42
+ return nav?.getCurrentRoute?.() ?? null;
43
+ } catch {
44
+ return null;
45
+ }
46
+ }
47
+ subscribe(listener) {
48
+ this.listeners.add(listener);
49
+ return () => this.listeners.delete(listener);
50
+ }
51
+ notify() {
52
+ for (const l of this.listeners) {
53
+ try {
54
+ l();
55
+ } catch {
56
+ /* ignore */
57
+ }
58
+ }
59
+ }
60
+ }
61
+ const navigationStore = exports.navigationStore = new NavigationStoreClass();
62
+ function setNavigationRef(ref) {
63
+ navigationStore.setRef(ref);
64
+ }
65
+ //# sourceMappingURL=navigationStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["NavigationStoreClass","ref","history","listeners","Set","maxHistory","setRef","notify","getRef","current","addHistoryEntry","name","params","timestamp","Date","now","slice","getHistory","getState","nav","getRootState","getCurrentRoute","subscribe","listener","add","delete","l","navigationStore","exports","setNavigationRef"],"sourceRoot":"../../../../src","sources":["plugins/navigationInspector/navigationStore.ts"],"mappings":";;;;;;;AAEA,MAAMA,oBAAoB,CAAC;EACjBC,GAAG,GAAgC,IAAI;EACvCC,OAAO,GAA4E,EAAE;EACrFC,SAAS,GAAkB,IAAIC,GAAG,CAAC,CAAC;EACpCC,UAAU,GAAG,EAAE;EAEvBC,MAAMA,CAACL,GAAyB,EAAQ;IACtC,IAAI,CAACA,GAAG,GAAGA,GAAG;IACd,IAAI,CAACM,MAAM,CAAC,CAAC;EACf;EAEAC,MAAMA,CAAA,EAAY;IAChB,OAAO,IAAI,CAACP,GAAG,EAAEQ,OAAO;EAC1B;EAEAC,eAAeA,CAACC,IAAY,EAAEC,MAAgC,EAAQ;IACpE,IAAI,CAACV,OAAO,GAAG,CAAC;MAAES,IAAI;MAAEC,MAAM;MAAEC,SAAS,EAAEC,IAAI,CAACC,GAAG,CAAC;IAAE,CAAC,EAAE,GAAG,IAAI,CAACb,OAAO,CAAC,CAACc,KAAK,CAC7E,CAAC,EACD,IAAI,CAACX,UACP,CAAC;IACD,IAAI,CAACE,MAAM,CAAC,CAAC;EACf;EAEAU,UAAUA,CAAA,EAAG;IACX,OAAO,CAAC,GAAG,IAAI,CAACf,OAAO,CAAC;EAC1B;EAEAgB,QAAQA,CAAA,EAAY;IAClB,IAAI;MACF,MAAMC,GAAG,GAAG,IAAI,CAAClB,GAAG,EAAEQ,OAAuD;MAC7E,OAAOU,GAAG,EAAEC,YAAY,GAAG,CAAC,IAAI,IAAI;IACtC,CAAC,CAAC,MAAM;MACN,OAAO,IAAI;IACb;EACF;EAEAC,eAAeA,CAAA,EAA8D;IAC3E,IAAI;MACF,MAAMF,GAAG,GAAG,IAAI,CAAClB,GAAG,EAAEQ,OAET;MACb,OAAOU,GAAG,EAAEE,eAAe,GAAG,CAAC,IAAI,IAAI;IACzC,CAAC,CAAC,MAAM;MACN,OAAO,IAAI;IACb;EACF;EAEAC,SAASA,CAACC,QAAkB,EAAc;IACxC,IAAI,CAACpB,SAAS,CAACqB,GAAG,CAACD,QAAQ,CAAC;IAC5B,OAAO,MAAM,IAAI,CAACpB,SAAS,CAACsB,MAAM,CAACF,QAAQ,CAAC;EAC9C;EAEQhB,MAAMA,CAAA,EAAS;IACrB,KAAK,MAAMmB,CAAC,IAAI,IAAI,CAACvB,SAAS,EAAE;MAC9B,IAAI;QACFuB,CAAC,CAAC,CAAC;MACL,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ;EACF;AACF;AAEO,MAAMC,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,IAAI3B,oBAAoB,CAAC,CAAC;AAElD,SAAS6B,gBAAgBA,CAAC5B,GAAyB,EAAQ;EAChE0B,eAAe,CAACrB,MAAM,CAACL,GAAG,CAAC;AAC7B","ignoreList":[]}