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.
- package/LICENSE +21 -0
- package/README.md +350 -0
- package/lib/commonjs/core/DebugBubble.js +139 -0
- package/lib/commonjs/core/DebugBubble.js.map +1 -0
- package/lib/commonjs/core/DebugOverlay.js +184 -0
- package/lib/commonjs/core/DebugOverlay.js.map +1 -0
- package/lib/commonjs/core/DebuggerProvider.js +174 -0
- package/lib/commonjs/core/DebuggerProvider.js.map +1 -0
- package/lib/commonjs/core/GestureDetector.js +83 -0
- package/lib/commonjs/core/GestureDetector.js.map +1 -0
- package/lib/commonjs/core/PluginRegistry.js +124 -0
- package/lib/commonjs/core/PluginRegistry.js.map +1 -0
- package/lib/commonjs/core/theme.js +50 -0
- package/lib/commonjs/core/theme.js.map +1 -0
- package/lib/commonjs/core/types.js +6 -0
- package/lib/commonjs/core/types.js.map +1 -0
- package/lib/commonjs/core/useDebugger.js +27 -0
- package/lib/commonjs/core/useDebugger.js.map +1 -0
- package/lib/commonjs/core/utils.js +239 -0
- package/lib/commonjs/core/utils.js.map +1 -0
- package/lib/commonjs/index.js +132 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/plugins/console/ConsoleInterceptor.js +103 -0
- package/lib/commonjs/plugins/console/ConsoleInterceptor.js.map +1 -0
- package/lib/commonjs/plugins/console/ConsoleViewerPlugin.js +269 -0
- package/lib/commonjs/plugins/console/ConsoleViewerPlugin.js.map +1 -0
- package/lib/commonjs/plugins/crashReporter/CrashReporterPlugin.js +363 -0
- package/lib/commonjs/plugins/crashReporter/CrashReporterPlugin.js.map +1 -0
- package/lib/commonjs/plugins/customActions/CustomActionsPlugin.js +218 -0
- package/lib/commonjs/plugins/customActions/CustomActionsPlugin.js.map +1 -0
- package/lib/commonjs/plugins/customActions/actionStore.js +46 -0
- package/lib/commonjs/plugins/customActions/actionStore.js.map +1 -0
- package/lib/commonjs/plugins/deepLinkTester/DeepLinkTesterPlugin.js +268 -0
- package/lib/commonjs/plugins/deepLinkTester/DeepLinkTesterPlugin.js.map +1 -0
- package/lib/commonjs/plugins/deviceInfo/DeviceInfoPlugin.js +184 -0
- package/lib/commonjs/plugins/deviceInfo/DeviceInfoPlugin.js.map +1 -0
- package/lib/commonjs/plugins/featureFlags/FeatureFlagsPlugin.js +381 -0
- package/lib/commonjs/plugins/featureFlags/FeatureFlagsPlugin.js.map +1 -0
- package/lib/commonjs/plugins/featureFlags/flagStore.js +125 -0
- package/lib/commonjs/plugins/featureFlags/flagStore.js.map +1 -0
- package/lib/commonjs/plugins/navigationInspector/NavigationInspectorPlugin.js +250 -0
- package/lib/commonjs/plugins/navigationInspector/NavigationInspectorPlugin.js.map +1 -0
- package/lib/commonjs/plugins/navigationInspector/navigationStore.js +65 -0
- package/lib/commonjs/plugins/navigationInspector/navigationStore.js.map +1 -0
- package/lib/commonjs/plugins/network/NetworkInspectorPlugin.js +709 -0
- package/lib/commonjs/plugins/network/NetworkInspectorPlugin.js.map +1 -0
- package/lib/commonjs/plugins/network/NetworkInterceptor.js +305 -0
- package/lib/commonjs/plugins/network/NetworkInterceptor.js.map +1 -0
- package/lib/commonjs/plugins/performance/PerformanceMonitorPlugin.js +261 -0
- package/lib/commonjs/plugins/performance/PerformanceMonitorPlugin.js.map +1 -0
- package/lib/commonjs/plugins/remoteConfig/RemoteConfigPlugin.js +265 -0
- package/lib/commonjs/plugins/remoteConfig/RemoteConfigPlugin.js.map +1 -0
- package/lib/commonjs/plugins/remoteConfig/remoteConfigStore.js +50 -0
- package/lib/commonjs/plugins/remoteConfig/remoteConfigStore.js.map +1 -0
- package/lib/commonjs/plugins/stateInspector/StateInspectorPlugin.js +378 -0
- package/lib/commonjs/plugins/stateInspector/StateInspectorPlugin.js.map +1 -0
- package/lib/commonjs/plugins/stateInspector/stateAdapterRegistry.js +62 -0
- package/lib/commonjs/plugins/stateInspector/stateAdapterRegistry.js.map +1 -0
- package/lib/commonjs/plugins/storageBrowser/StorageBrowserPlugin.js +496 -0
- package/lib/commonjs/plugins/storageBrowser/StorageBrowserPlugin.js.map +1 -0
- package/lib/commonjs/plugins/storageBrowser/storageAdapterRegistry.js +44 -0
- package/lib/commonjs/plugins/storageBrowser/storageAdapterRegistry.js.map +1 -0
- package/lib/commonjs/plugins/timeline/TimelinePlugin.js +294 -0
- package/lib/commonjs/plugins/timeline/TimelinePlugin.js.map +1 -0
- package/lib/commonjs/plugins/timeline/timelineStore.js +61 -0
- package/lib/commonjs/plugins/timeline/timelineStore.js.map +1 -0
- package/lib/module/core/DebugBubble.js +131 -0
- package/lib/module/core/DebugBubble.js.map +1 -0
- package/lib/module/core/DebugOverlay.js +176 -0
- package/lib/module/core/DebugOverlay.js.map +1 -0
- package/lib/module/core/DebuggerProvider.js +167 -0
- package/lib/module/core/DebuggerProvider.js.map +1 -0
- package/lib/module/core/GestureDetector.js +75 -0
- package/lib/module/core/GestureDetector.js.map +1 -0
- package/lib/module/core/PluginRegistry.js +116 -0
- package/lib/module/core/PluginRegistry.js.map +1 -0
- package/lib/module/core/theme.js +43 -0
- package/lib/module/core/theme.js.map +1 -0
- package/lib/module/core/types.js +2 -0
- package/lib/module/core/types.js.map +1 -0
- package/lib/module/core/useDebugger.js +21 -0
- package/lib/module/core/useDebugger.js.map +1 -0
- package/lib/module/core/utils.js +219 -0
- package/lib/module/core/utils.js.map +1 -0
- package/lib/module/index.js +44 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/plugins/console/ConsoleInterceptor.js +97 -0
- package/lib/module/plugins/console/ConsoleInterceptor.js.map +1 -0
- package/lib/module/plugins/console/ConsoleViewerPlugin.js +262 -0
- package/lib/module/plugins/console/ConsoleViewerPlugin.js.map +1 -0
- package/lib/module/plugins/crashReporter/CrashReporterPlugin.js +357 -0
- package/lib/module/plugins/crashReporter/CrashReporterPlugin.js.map +1 -0
- package/lib/module/plugins/customActions/CustomActionsPlugin.js +211 -0
- package/lib/module/plugins/customActions/CustomActionsPlugin.js.map +1 -0
- package/lib/module/plugins/customActions/actionStore.js +38 -0
- package/lib/module/plugins/customActions/actionStore.js.map +1 -0
- package/lib/module/plugins/deepLinkTester/DeepLinkTesterPlugin.js +261 -0
- package/lib/module/plugins/deepLinkTester/DeepLinkTesterPlugin.js.map +1 -0
- package/lib/module/plugins/deviceInfo/DeviceInfoPlugin.js +177 -0
- package/lib/module/plugins/deviceInfo/DeviceInfoPlugin.js.map +1 -0
- package/lib/module/plugins/featureFlags/FeatureFlagsPlugin.js +374 -0
- package/lib/module/plugins/featureFlags/FeatureFlagsPlugin.js.map +1 -0
- package/lib/module/plugins/featureFlags/flagStore.js +117 -0
- package/lib/module/plugins/featureFlags/flagStore.js.map +1 -0
- package/lib/module/plugins/navigationInspector/NavigationInspectorPlugin.js +243 -0
- package/lib/module/plugins/navigationInspector/NavigationInspectorPlugin.js.map +1 -0
- package/lib/module/plugins/navigationInspector/navigationStore.js +58 -0
- package/lib/module/plugins/navigationInspector/navigationStore.js.map +1 -0
- package/lib/module/plugins/network/NetworkInspectorPlugin.js +703 -0
- package/lib/module/plugins/network/NetworkInspectorPlugin.js.map +1 -0
- package/lib/module/plugins/network/NetworkInterceptor.js +299 -0
- package/lib/module/plugins/network/NetworkInterceptor.js.map +1 -0
- package/lib/module/plugins/performance/PerformanceMonitorPlugin.js +254 -0
- package/lib/module/plugins/performance/PerformanceMonitorPlugin.js.map +1 -0
- package/lib/module/plugins/remoteConfig/RemoteConfigPlugin.js +258 -0
- package/lib/module/plugins/remoteConfig/RemoteConfigPlugin.js.map +1 -0
- package/lib/module/plugins/remoteConfig/remoteConfigStore.js +43 -0
- package/lib/module/plugins/remoteConfig/remoteConfigStore.js.map +1 -0
- package/lib/module/plugins/stateInspector/StateInspectorPlugin.js +372 -0
- package/lib/module/plugins/stateInspector/StateInspectorPlugin.js.map +1 -0
- package/lib/module/plugins/stateInspector/stateAdapterRegistry.js +54 -0
- package/lib/module/plugins/stateInspector/stateAdapterRegistry.js.map +1 -0
- package/lib/module/plugins/storageBrowser/StorageBrowserPlugin.js +489 -0
- package/lib/module/plugins/storageBrowser/StorageBrowserPlugin.js.map +1 -0
- package/lib/module/plugins/storageBrowser/storageAdapterRegistry.js +36 -0
- package/lib/module/plugins/storageBrowser/storageAdapterRegistry.js.map +1 -0
- package/lib/module/plugins/timeline/TimelinePlugin.js +287 -0
- package/lib/module/plugins/timeline/TimelinePlugin.js.map +1 -0
- package/lib/module/plugins/timeline/timelineStore.js +54 -0
- package/lib/module/plugins/timeline/timelineStore.js.map +1 -0
- package/lib/typescript/core/DebugBubble.d.ts +22 -0
- package/lib/typescript/core/DebugBubble.d.ts.map +1 -0
- package/lib/typescript/core/DebugOverlay.d.ts +18 -0
- package/lib/typescript/core/DebugOverlay.d.ts.map +1 -0
- package/lib/typescript/core/DebuggerProvider.d.ts +25 -0
- package/lib/typescript/core/DebuggerProvider.d.ts.map +1 -0
- package/lib/typescript/core/GestureDetector.d.ts +20 -0
- package/lib/typescript/core/GestureDetector.d.ts.map +1 -0
- package/lib/typescript/core/PluginRegistry.d.ts +41 -0
- package/lib/typescript/core/PluginRegistry.d.ts.map +1 -0
- package/lib/typescript/core/theme.d.ts +11 -0
- package/lib/typescript/core/theme.d.ts.map +1 -0
- package/lib/typescript/core/types.d.ts +269 -0
- package/lib/typescript/core/types.d.ts.map +1 -0
- package/lib/typescript/core/useDebugger.d.ts +14 -0
- package/lib/typescript/core/useDebugger.d.ts.map +1 -0
- package/lib/typescript/core/utils.d.ts +46 -0
- package/lib/typescript/core/utils.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +23 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/plugins/console/ConsoleInterceptor.d.ts +32 -0
- package/lib/typescript/plugins/console/ConsoleInterceptor.d.ts.map +1 -0
- package/lib/typescript/plugins/console/ConsoleViewerPlugin.d.ts +3 -0
- package/lib/typescript/plugins/console/ConsoleViewerPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/crashReporter/CrashReporterPlugin.d.ts +3 -0
- package/lib/typescript/plugins/crashReporter/CrashReporterPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/customActions/CustomActionsPlugin.d.ts +3 -0
- package/lib/typescript/plugins/customActions/CustomActionsPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/customActions/actionStore.d.ts +16 -0
- package/lib/typescript/plugins/customActions/actionStore.d.ts.map +1 -0
- package/lib/typescript/plugins/deepLinkTester/DeepLinkTesterPlugin.d.ts +3 -0
- package/lib/typescript/plugins/deepLinkTester/DeepLinkTesterPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/deviceInfo/DeviceInfoPlugin.d.ts +3 -0
- package/lib/typescript/plugins/deviceInfo/DeviceInfoPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/featureFlags/FeatureFlagsPlugin.d.ts +3 -0
- package/lib/typescript/plugins/featureFlags/FeatureFlagsPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/featureFlags/flagStore.d.ts +45 -0
- package/lib/typescript/plugins/featureFlags/flagStore.d.ts.map +1 -0
- package/lib/typescript/plugins/navigationInspector/NavigationInspectorPlugin.d.ts +3 -0
- package/lib/typescript/plugins/navigationInspector/NavigationInspectorPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/navigationInspector/navigationStore.d.ts +30 -0
- package/lib/typescript/plugins/navigationInspector/navigationStore.d.ts.map +1 -0
- package/lib/typescript/plugins/network/NetworkInspectorPlugin.d.ts +3 -0
- package/lib/typescript/plugins/network/NetworkInspectorPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/network/NetworkInterceptor.d.ts +42 -0
- package/lib/typescript/plugins/network/NetworkInterceptor.d.ts.map +1 -0
- package/lib/typescript/plugins/performance/PerformanceMonitorPlugin.d.ts +3 -0
- package/lib/typescript/plugins/performance/PerformanceMonitorPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/remoteConfig/RemoteConfigPlugin.d.ts +3 -0
- package/lib/typescript/plugins/remoteConfig/RemoteConfigPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/remoteConfig/remoteConfigStore.d.ts +20 -0
- package/lib/typescript/plugins/remoteConfig/remoteConfigStore.d.ts.map +1 -0
- package/lib/typescript/plugins/stateInspector/StateInspectorPlugin.d.ts +3 -0
- package/lib/typescript/plugins/stateInspector/StateInspectorPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/stateInspector/stateAdapterRegistry.d.ts +34 -0
- package/lib/typescript/plugins/stateInspector/stateAdapterRegistry.d.ts.map +1 -0
- package/lib/typescript/plugins/storageBrowser/StorageBrowserPlugin.d.ts +3 -0
- package/lib/typescript/plugins/storageBrowser/StorageBrowserPlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/storageBrowser/storageAdapterRegistry.d.ts +16 -0
- package/lib/typescript/plugins/storageBrowser/storageAdapterRegistry.d.ts.map +1 -0
- package/lib/typescript/plugins/timeline/TimelinePlugin.d.ts +3 -0
- package/lib/typescript/plugins/timeline/TimelinePlugin.d.ts.map +1 -0
- package/lib/typescript/plugins/timeline/timelineStore.d.ts +24 -0
- package/lib/typescript/plugins/timeline/timelineStore.d.ts.map +1 -0
- package/package.json +131 -0
- package/src/core/DebugBubble.tsx +149 -0
- package/src/core/DebugOverlay.tsx +211 -0
- package/src/core/DebuggerProvider.tsx +211 -0
- package/src/core/GestureDetector.tsx +95 -0
- package/src/core/PluginRegistry.ts +118 -0
- package/src/core/theme.ts +41 -0
- package/src/core/types.ts +339 -0
- package/src/core/useDebugger.ts +24 -0
- package/src/core/utils.ts +221 -0
- package/src/index.ts +67 -0
- package/src/plugins/console/ConsoleInterceptor.ts +110 -0
- package/src/plugins/console/ConsoleViewerPlugin.tsx +241 -0
- package/src/plugins/crashReporter/CrashReporterPlugin.tsx +316 -0
- package/src/plugins/customActions/CustomActionsPlugin.tsx +199 -0
- package/src/plugins/customActions/actionStore.ts +49 -0
- package/src/plugins/deepLinkTester/DeepLinkTesterPlugin.tsx +213 -0
- package/src/plugins/deviceInfo/DeviceInfoPlugin.tsx +153 -0
- package/src/plugins/featureFlags/FeatureFlagsPlugin.tsx +338 -0
- package/src/plugins/featureFlags/flagStore.ts +118 -0
- package/src/plugins/navigationInspector/NavigationInspectorPlugin.tsx +170 -0
- package/src/plugins/navigationInspector/navigationStore.ts +70 -0
- package/src/plugins/network/NetworkInspectorPlugin.tsx +598 -0
- package/src/plugins/network/NetworkInterceptor.ts +344 -0
- package/src/plugins/performance/PerformanceMonitorPlugin.tsx +194 -0
- package/src/plugins/remoteConfig/RemoteConfigPlugin.tsx +205 -0
- package/src/plugins/remoteConfig/remoteConfigStore.ts +48 -0
- package/src/plugins/stateInspector/StateInspectorPlugin.tsx +342 -0
- package/src/plugins/stateInspector/stateAdapterRegistry.ts +66 -0
- package/src/plugins/storageBrowser/StorageBrowserPlugin.tsx +410 -0
- package/src/plugins/storageBrowser/storageAdapterRegistry.ts +47 -0
- package/src/plugins/timeline/TimelinePlugin.tsx +242 -0
- package/src/plugins/timeline/timelineStore.ts +65 -0
|
@@ -0,0 +1,378 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createStateInspectorPlugin = createStateInspectorPlugin;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _stateAdapterRegistry = require("./stateAdapterRegistry");
|
|
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
|
+
// ─── JSON Tree Viewer ───────────────────────────────────────────────────────
|
|
13
|
+
|
|
14
|
+
const JsonNode = /*#__PURE__*/_react.default.memo(({
|
|
15
|
+
keyName,
|
|
16
|
+
value,
|
|
17
|
+
depth,
|
|
18
|
+
theme,
|
|
19
|
+
searchQuery
|
|
20
|
+
}) => {
|
|
21
|
+
const [expanded, setExpanded] = (0, _react.useState)(depth < 2);
|
|
22
|
+
const isObject = typeof value === 'object' && value !== null;
|
|
23
|
+
const isArray = Array.isArray(value);
|
|
24
|
+
const entries = isObject ? Object.entries(value) : [];
|
|
25
|
+
const typeLabel = isArray ? `Array(${entries.length})` : `Object(${entries.length})`;
|
|
26
|
+
const matchesSearch = searchQuery && keyName.toLowerCase().includes(searchQuery.toLowerCase());
|
|
27
|
+
const valueDisplay = (0, _react.useMemo)(() => {
|
|
28
|
+
if (value === null) return 'null';
|
|
29
|
+
if (value === undefined) return 'undefined';
|
|
30
|
+
if (typeof value === 'boolean') return value ? 'true' : 'false';
|
|
31
|
+
if (typeof value === 'number') return String(value);
|
|
32
|
+
if (typeof value === 'string') return `"${value.length > 100 ? value.slice(0, 100) + '…' : value}"`;
|
|
33
|
+
return null;
|
|
34
|
+
}, [value]);
|
|
35
|
+
const valueColor = (0, _react.useMemo)(() => {
|
|
36
|
+
if (value === null || value === undefined) return theme.textMuted;
|
|
37
|
+
if (typeof value === 'boolean') return theme.accent;
|
|
38
|
+
if (typeof value === 'number') return theme.success;
|
|
39
|
+
if (typeof value === 'string') return theme.warning;
|
|
40
|
+
return theme.text;
|
|
41
|
+
}, [value, theme]);
|
|
42
|
+
if (!isObject) {
|
|
43
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
|
|
44
|
+
style: [styles.nodeRow, {
|
|
45
|
+
paddingLeft: depth * 16
|
|
46
|
+
}],
|
|
47
|
+
onLongPress: () => (0, _utils.copyToClipboard)((0, _utils.safeStringify)(value, 0)),
|
|
48
|
+
activeOpacity: 0.7
|
|
49
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
50
|
+
style: [styles.nodeKey, {
|
|
51
|
+
color: matchesSearch ? theme.accent : theme.info
|
|
52
|
+
}]
|
|
53
|
+
}, keyName, ":", ' '), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
54
|
+
style: [styles.nodeValue, {
|
|
55
|
+
color: valueColor
|
|
56
|
+
}]
|
|
57
|
+
}, valueDisplay));
|
|
58
|
+
}
|
|
59
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
|
|
60
|
+
style: [styles.nodeRow, {
|
|
61
|
+
paddingLeft: depth * 16
|
|
62
|
+
}],
|
|
63
|
+
onPress: () => setExpanded(!expanded),
|
|
64
|
+
onLongPress: () => (0, _utils.copyToClipboard)((0, _utils.safeStringify)(value)),
|
|
65
|
+
activeOpacity: 0.7
|
|
66
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
67
|
+
style: [styles.nodeExpander, {
|
|
68
|
+
color: theme.textMuted
|
|
69
|
+
}]
|
|
70
|
+
}, expanded ? '▼' : '▶', ' '), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
71
|
+
style: [styles.nodeKey, {
|
|
72
|
+
color: matchesSearch ? theme.accent : theme.info
|
|
73
|
+
}]
|
|
74
|
+
}, keyName), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
75
|
+
style: [styles.nodeType, {
|
|
76
|
+
color: theme.textMuted
|
|
77
|
+
}]
|
|
78
|
+
}, " ", typeLabel)), expanded && entries.map(([key, val]) => /*#__PURE__*/_react.default.createElement(JsonNode, {
|
|
79
|
+
key: key,
|
|
80
|
+
keyName: key,
|
|
81
|
+
value: val,
|
|
82
|
+
depth: depth + 1,
|
|
83
|
+
theme: theme,
|
|
84
|
+
searchQuery: searchQuery
|
|
85
|
+
})));
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
// ─── State Inspector Panel ──────────────────────────────────────────────────
|
|
89
|
+
|
|
90
|
+
const StateInspectorPanel = ({
|
|
91
|
+
theme
|
|
92
|
+
}) => {
|
|
93
|
+
const [adapters, setAdapters] = (0, _react.useState)(new Map());
|
|
94
|
+
const [states, setStates] = (0, _react.useState)(new Map());
|
|
95
|
+
const [activeStore, setActiveStore] = (0, _react.useState)(null);
|
|
96
|
+
const [searchQuery, setSearchQuery] = (0, _react.useState)('');
|
|
97
|
+
const [, forceUpdate] = (0, _react.useState)(0);
|
|
98
|
+
|
|
99
|
+
// Listen for adapter registry changes
|
|
100
|
+
(0, _react.useEffect)(() => {
|
|
101
|
+
const unsubscribe = _stateAdapterRegistry.stateAdapterRegistry.subscribe(() => {
|
|
102
|
+
setAdapters(_stateAdapterRegistry.stateAdapterRegistry.getAll());
|
|
103
|
+
});
|
|
104
|
+
setAdapters(_stateAdapterRegistry.stateAdapterRegistry.getAll());
|
|
105
|
+
return unsubscribe;
|
|
106
|
+
}, []);
|
|
107
|
+
|
|
108
|
+
// Subscribe to state changes from all adapters
|
|
109
|
+
(0, _react.useEffect)(() => {
|
|
110
|
+
const unsubscribers = [];
|
|
111
|
+
const refreshStates = () => {
|
|
112
|
+
const newStates = new Map();
|
|
113
|
+
for (const [id, adapter] of adapters) {
|
|
114
|
+
try {
|
|
115
|
+
newStates.set(id, adapter.getState());
|
|
116
|
+
} catch {
|
|
117
|
+
newStates.set(id, {
|
|
118
|
+
error: 'Failed to read state'
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
setStates(newStates);
|
|
123
|
+
};
|
|
124
|
+
refreshStates();
|
|
125
|
+
for (const [id, adapter] of adapters) {
|
|
126
|
+
if (adapter.subscribe) {
|
|
127
|
+
const unsub = adapter.subscribe(() => {
|
|
128
|
+
try {
|
|
129
|
+
setStates(prev => {
|
|
130
|
+
const next = new Map(prev);
|
|
131
|
+
next.set(id, adapter.getState());
|
|
132
|
+
return next;
|
|
133
|
+
});
|
|
134
|
+
} catch {
|
|
135
|
+
// ignore
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
unsubscribers.push(unsub);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
return () => unsubscribers.forEach(u => u());
|
|
142
|
+
}, [adapters]);
|
|
143
|
+
const handleRefresh = (0, _react.useCallback)(() => {
|
|
144
|
+
const newStates = new Map();
|
|
145
|
+
for (const [id, adapter] of adapters) {
|
|
146
|
+
try {
|
|
147
|
+
newStates.set(id, adapter.getState());
|
|
148
|
+
} catch {
|
|
149
|
+
newStates.set(id, {
|
|
150
|
+
error: 'Failed to read state'
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
setStates(newStates);
|
|
155
|
+
forceUpdate(n => n + 1);
|
|
156
|
+
}, [adapters]);
|
|
157
|
+
const handleCopyState = (0, _react.useCallback)(storeId => {
|
|
158
|
+
const state = states.get(storeId);
|
|
159
|
+
if (state) (0, _utils.copyToClipboard)((0, _utils.safeStringify)(state));
|
|
160
|
+
}, [states]);
|
|
161
|
+
const storeIds = (0, _react.useMemo)(() => Array.from(adapters.keys()), [adapters]);
|
|
162
|
+
const activeStoreId = activeStore || storeIds[0] || null;
|
|
163
|
+
const activeState = activeStoreId ? states.get(activeStoreId) : null;
|
|
164
|
+
const activeAdapter = activeStoreId ? adapters.get(activeStoreId) : null;
|
|
165
|
+
if (storeIds.length === 0) {
|
|
166
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
167
|
+
style: styles.emptyContainer
|
|
168
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
169
|
+
style: [styles.emptyIcon]
|
|
170
|
+
}, "\uD83D\uDD0D"), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
171
|
+
style: [styles.emptyTitle, {
|
|
172
|
+
color: theme.text
|
|
173
|
+
}]
|
|
174
|
+
}, "No State Stores Registered"), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
175
|
+
style: [styles.emptyDesc, {
|
|
176
|
+
color: theme.textMuted
|
|
177
|
+
}]
|
|
178
|
+
}, "Register your stores using:", '\n\n', /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
179
|
+
style: {
|
|
180
|
+
fontFamily: 'monospace',
|
|
181
|
+
color: theme.codeText
|
|
182
|
+
}
|
|
183
|
+
}, 'setStateAdapter("redux", {\n name: "Redux Store",\n getState: () => store.getState(),\n subscribe: (cb) => store.subscribe(cb)\n})')));
|
|
184
|
+
}
|
|
185
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
186
|
+
style: styles.container
|
|
187
|
+
}, storeIds.length > 1 && /*#__PURE__*/_react.default.createElement(_reactNative.ScrollView, {
|
|
188
|
+
horizontal: true,
|
|
189
|
+
showsHorizontalScrollIndicator: false,
|
|
190
|
+
style: [styles.storeBar, {
|
|
191
|
+
backgroundColor: theme.surface
|
|
192
|
+
}],
|
|
193
|
+
contentContainerStyle: styles.storeBarContent
|
|
194
|
+
}, storeIds.map(id => {
|
|
195
|
+
const adapter = adapters.get(id);
|
|
196
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
|
|
197
|
+
key: id,
|
|
198
|
+
style: [styles.storeChip, {
|
|
199
|
+
backgroundColor: id === activeStoreId ? theme.accent : theme.surfaceAlt,
|
|
200
|
+
borderColor: theme.border
|
|
201
|
+
}],
|
|
202
|
+
onPress: () => setActiveStore(id),
|
|
203
|
+
activeOpacity: 0.7
|
|
204
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
205
|
+
style: [styles.storeChipText, {
|
|
206
|
+
color: id === activeStoreId ? '#FFF' : theme.textSecondary
|
|
207
|
+
}]
|
|
208
|
+
}, adapter?.name || id));
|
|
209
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
210
|
+
style: [styles.actionBar, {
|
|
211
|
+
backgroundColor: theme.surface,
|
|
212
|
+
borderBottomColor: theme.border
|
|
213
|
+
}]
|
|
214
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
215
|
+
style: [styles.storeName, {
|
|
216
|
+
color: theme.text
|
|
217
|
+
}]
|
|
218
|
+
}, activeAdapter?.name || activeStoreId), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
219
|
+
style: styles.actionButtons
|
|
220
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
|
|
221
|
+
onPress: handleRefresh,
|
|
222
|
+
activeOpacity: 0.7,
|
|
223
|
+
style: styles.actionBtn
|
|
224
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
225
|
+
style: [styles.actionBtnText, {
|
|
226
|
+
color: theme.accent
|
|
227
|
+
}]
|
|
228
|
+
}, "\u21BB Refresh")), activeStoreId && /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
|
|
229
|
+
onPress: () => handleCopyState(activeStoreId),
|
|
230
|
+
activeOpacity: 0.7,
|
|
231
|
+
style: styles.actionBtn
|
|
232
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
233
|
+
style: [styles.actionBtnText, {
|
|
234
|
+
color: theme.accent
|
|
235
|
+
}]
|
|
236
|
+
}, "Copy")))), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
237
|
+
style: [styles.searchContainer, {
|
|
238
|
+
backgroundColor: theme.surface
|
|
239
|
+
}]
|
|
240
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.TextInput, {
|
|
241
|
+
style: [styles.searchInput, {
|
|
242
|
+
color: theme.text,
|
|
243
|
+
backgroundColor: theme.surfaceAlt,
|
|
244
|
+
borderColor: theme.border
|
|
245
|
+
}],
|
|
246
|
+
placeholder: "Search keys...",
|
|
247
|
+
placeholderTextColor: theme.textMuted,
|
|
248
|
+
value: searchQuery,
|
|
249
|
+
onChangeText: setSearchQuery,
|
|
250
|
+
autoCapitalize: "none"
|
|
251
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.ScrollView, {
|
|
252
|
+
style: styles.treeContainer
|
|
253
|
+
}, activeState && typeof activeState === 'object' ? Object.entries(activeState).map(([key, val]) => /*#__PURE__*/_react.default.createElement(JsonNode, {
|
|
254
|
+
key: key,
|
|
255
|
+
keyName: key,
|
|
256
|
+
value: val,
|
|
257
|
+
depth: 0,
|
|
258
|
+
theme: theme,
|
|
259
|
+
searchQuery: searchQuery
|
|
260
|
+
})) : /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
261
|
+
style: {
|
|
262
|
+
padding: 12
|
|
263
|
+
}
|
|
264
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
265
|
+
style: [styles.nodeValue, {
|
|
266
|
+
color: theme.text
|
|
267
|
+
}]
|
|
268
|
+
}, (0, _utils.safeStringify)(activeState)))));
|
|
269
|
+
};
|
|
270
|
+
const styles = _reactNative.StyleSheet.create({
|
|
271
|
+
container: {
|
|
272
|
+
flex: 1
|
|
273
|
+
},
|
|
274
|
+
emptyContainer: {
|
|
275
|
+
flex: 1,
|
|
276
|
+
alignItems: 'center',
|
|
277
|
+
justifyContent: 'center',
|
|
278
|
+
paddingHorizontal: 32
|
|
279
|
+
},
|
|
280
|
+
emptyIcon: {
|
|
281
|
+
fontSize: 48,
|
|
282
|
+
marginBottom: 16
|
|
283
|
+
},
|
|
284
|
+
emptyTitle: {
|
|
285
|
+
fontSize: 16,
|
|
286
|
+
fontWeight: '700',
|
|
287
|
+
marginBottom: 8
|
|
288
|
+
},
|
|
289
|
+
emptyDesc: {
|
|
290
|
+
fontSize: 13,
|
|
291
|
+
textAlign: 'center',
|
|
292
|
+
lineHeight: 20
|
|
293
|
+
},
|
|
294
|
+
storeBar: {
|
|
295
|
+
maxHeight: 44
|
|
296
|
+
},
|
|
297
|
+
storeBarContent: {
|
|
298
|
+
paddingHorizontal: 12,
|
|
299
|
+
paddingVertical: 8,
|
|
300
|
+
gap: 6
|
|
301
|
+
},
|
|
302
|
+
storeChip: {
|
|
303
|
+
paddingHorizontal: 12,
|
|
304
|
+
paddingVertical: 4,
|
|
305
|
+
borderRadius: 12,
|
|
306
|
+
borderWidth: 1
|
|
307
|
+
},
|
|
308
|
+
storeChipText: {
|
|
309
|
+
fontSize: 12,
|
|
310
|
+
fontWeight: '600'
|
|
311
|
+
},
|
|
312
|
+
actionBar: {
|
|
313
|
+
flexDirection: 'row',
|
|
314
|
+
justifyContent: 'space-between',
|
|
315
|
+
alignItems: 'center',
|
|
316
|
+
paddingHorizontal: 12,
|
|
317
|
+
paddingVertical: 8,
|
|
318
|
+
borderBottomWidth: _reactNative.StyleSheet.hairlineWidth
|
|
319
|
+
},
|
|
320
|
+
storeName: {
|
|
321
|
+
fontSize: 14,
|
|
322
|
+
fontWeight: '700'
|
|
323
|
+
},
|
|
324
|
+
actionButtons: {
|
|
325
|
+
flexDirection: 'row',
|
|
326
|
+
gap: 12
|
|
327
|
+
},
|
|
328
|
+
actionBtn: {},
|
|
329
|
+
actionBtnText: {
|
|
330
|
+
fontSize: 12,
|
|
331
|
+
fontWeight: '600'
|
|
332
|
+
},
|
|
333
|
+
searchContainer: {
|
|
334
|
+
paddingHorizontal: 12,
|
|
335
|
+
paddingVertical: 8
|
|
336
|
+
},
|
|
337
|
+
searchInput: {
|
|
338
|
+
height: 36,
|
|
339
|
+
borderRadius: 8,
|
|
340
|
+
paddingHorizontal: 12,
|
|
341
|
+
fontSize: 13,
|
|
342
|
+
borderWidth: 1
|
|
343
|
+
},
|
|
344
|
+
treeContainer: {
|
|
345
|
+
flex: 1
|
|
346
|
+
},
|
|
347
|
+
nodeRow: {
|
|
348
|
+
flexDirection: 'row',
|
|
349
|
+
alignItems: 'center',
|
|
350
|
+
paddingVertical: 4,
|
|
351
|
+
paddingRight: 12
|
|
352
|
+
},
|
|
353
|
+
nodeExpander: {
|
|
354
|
+
fontSize: 10
|
|
355
|
+
},
|
|
356
|
+
nodeKey: {
|
|
357
|
+
fontSize: 12,
|
|
358
|
+
fontWeight: '600'
|
|
359
|
+
},
|
|
360
|
+
nodeType: {
|
|
361
|
+
fontSize: 10,
|
|
362
|
+
fontStyle: 'italic'
|
|
363
|
+
},
|
|
364
|
+
nodeValue: {
|
|
365
|
+
fontSize: 12,
|
|
366
|
+
flex: 1
|
|
367
|
+
}
|
|
368
|
+
});
|
|
369
|
+
function createStateInspectorPlugin() {
|
|
370
|
+
return {
|
|
371
|
+
id: 'state-inspector',
|
|
372
|
+
name: 'State',
|
|
373
|
+
icon: '🔍',
|
|
374
|
+
component: StateInspectorPanel,
|
|
375
|
+
order: 30
|
|
376
|
+
};
|
|
377
|
+
}
|
|
378
|
+
//# sourceMappingURL=StateInspectorPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_stateAdapterRegistry","_utils","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","JsonNode","React","memo","keyName","value","depth","theme","searchQuery","expanded","setExpanded","useState","isObject","isArray","Array","entries","typeLabel","length","matchesSearch","toLowerCase","includes","valueDisplay","useMemo","undefined","String","slice","valueColor","textMuted","accent","success","warning","text","createElement","TouchableOpacity","style","styles","nodeRow","paddingLeft","onLongPress","copyToClipboard","safeStringify","activeOpacity","Text","nodeKey","color","info","nodeValue","View","onPress","nodeExpander","nodeType","map","key","val","StateInspectorPanel","adapters","setAdapters","Map","states","setStates","activeStore","setActiveStore","setSearchQuery","forceUpdate","useEffect","unsubscribe","stateAdapterRegistry","subscribe","getAll","unsubscribers","refreshStates","newStates","id","adapter","getState","error","unsub","prev","next","push","forEach","u","handleRefresh","useCallback","handleCopyState","storeId","state","storeIds","from","keys","activeStoreId","activeState","activeAdapter","emptyContainer","emptyIcon","emptyTitle","emptyDesc","fontFamily","codeText","container","ScrollView","horizontal","showsHorizontalScrollIndicator","storeBar","backgroundColor","surface","contentContainerStyle","storeBarContent","storeChip","surfaceAlt","borderColor","border","storeChipText","textSecondary","name","actionBar","borderBottomColor","storeName","actionButtons","actionBtn","actionBtnText","searchContainer","TextInput","searchInput","placeholder","placeholderTextColor","onChangeText","autoCapitalize","treeContainer","padding","StyleSheet","create","flex","alignItems","justifyContent","paddingHorizontal","fontSize","marginBottom","fontWeight","textAlign","lineHeight","maxHeight","paddingVertical","gap","borderRadius","borderWidth","flexDirection","borderBottomWidth","hairlineWidth","height","paddingRight","fontStyle","createStateInspectorPlugin","icon","component","order"],"sourceRoot":"../../../../src","sources":["plugins/stateInspector/StateInspectorPlugin.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.removeStateAdapter = removeStateAdapter;
|
|
7
|
+
exports.setStateAdapter = setStateAdapter;
|
|
8
|
+
exports.stateAdapterRegistry = void 0;
|
|
9
|
+
/**
|
|
10
|
+
* State Adapter Registry — Allows consumers to register their state stores.
|
|
11
|
+
*
|
|
12
|
+
* Supports Redux, Zustand, MobX, or any custom state store via a simple adapter interface.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
class StateAdapterRegistryClass {
|
|
16
|
+
adapters = new Map();
|
|
17
|
+
listeners = new Set();
|
|
18
|
+
|
|
19
|
+
/** Register a state adapter. */
|
|
20
|
+
set(id, adapter) {
|
|
21
|
+
this.adapters.set(id, adapter);
|
|
22
|
+
this.notify();
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/** Remove a state adapter. */
|
|
26
|
+
remove(id) {
|
|
27
|
+
this.adapters.delete(id);
|
|
28
|
+
this.notify();
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/** Get all registered adapters. */
|
|
32
|
+
getAll() {
|
|
33
|
+
return new Map(this.adapters);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/** Subscribe to adapter changes. */
|
|
37
|
+
subscribe(listener) {
|
|
38
|
+
this.listeners.add(listener);
|
|
39
|
+
return () => this.listeners.delete(listener);
|
|
40
|
+
}
|
|
41
|
+
notify() {
|
|
42
|
+
for (const listener of this.listeners) {
|
|
43
|
+
try {
|
|
44
|
+
listener();
|
|
45
|
+
} catch {
|
|
46
|
+
/* ignore */
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const stateAdapterRegistry = exports.stateAdapterRegistry = new StateAdapterRegistryClass();
|
|
52
|
+
|
|
53
|
+
/** Register a state store adapter. */
|
|
54
|
+
function setStateAdapter(id, adapter) {
|
|
55
|
+
stateAdapterRegistry.set(id, adapter);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/** Remove a state store adapter. */
|
|
59
|
+
function removeStateAdapter(id) {
|
|
60
|
+
stateAdapterRegistry.remove(id);
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=stateAdapterRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StateAdapterRegistryClass","adapters","Map","listeners","Set","set","id","adapter","notify","remove","delete","getAll","subscribe","listener","add","stateAdapterRegistry","exports","setStateAdapter","removeStateAdapter"],"sourceRoot":"../../../../src","sources":["plugins/stateInspector/stateAdapterRegistry.ts"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;;AAaA,MAAMA,yBAAyB,CAAC;EACtBC,QAAQ,GAA8B,IAAIC,GAAG,CAAC,CAAC;EAC/CC,SAAS,GAAyB,IAAIC,GAAG,CAAC,CAAC;;EAEnD;EACAC,GAAGA,CAACC,EAAU,EAAEC,OAAqB,EAAQ;IAC3C,IAAI,CAACN,QAAQ,CAACI,GAAG,CAACC,EAAE,EAAEC,OAAO,CAAC;IAC9B,IAAI,CAACC,MAAM,CAAC,CAAC;EACf;;EAEA;EACAC,MAAMA,CAACH,EAAU,EAAQ;IACvB,IAAI,CAACL,QAAQ,CAACS,MAAM,CAACJ,EAAE,CAAC;IACxB,IAAI,CAACE,MAAM,CAAC,CAAC;EACf;;EAEA;EACAG,MAAMA,CAAA,EAA8B;IAClC,OAAO,IAAIT,GAAG,CAAC,IAAI,CAACD,QAAQ,CAAC;EAC/B;;EAEA;EACAW,SAASA,CAACC,QAAyB,EAAc;IAC/C,IAAI,CAACV,SAAS,CAACW,GAAG,CAACD,QAAQ,CAAC;IAC5B,OAAO,MAAM,IAAI,CAACV,SAAS,CAACO,MAAM,CAACG,QAAQ,CAAC;EAC9C;EAEQL,MAAMA,CAAA,EAAS;IACrB,KAAK,MAAMK,QAAQ,IAAI,IAAI,CAACV,SAAS,EAAE;MACrC,IAAI;QACFU,QAAQ,CAAC,CAAC;MACZ,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ;EACF;AACF;AAEO,MAAME,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG,IAAIf,yBAAyB,CAAC,CAAC;;AAEnE;AACO,SAASiB,eAAeA,CAACX,EAAU,EAAEC,OAAqB,EAAQ;EACvEQ,oBAAoB,CAACV,GAAG,CAACC,EAAE,EAAEC,OAAO,CAAC;AACvC;;AAEA;AACO,SAASW,kBAAkBA,CAACZ,EAAU,EAAQ;EACnDS,oBAAoB,CAACN,MAAM,CAACH,EAAE,CAAC;AACjC","ignoreList":[]}
|