react-native-inapp-inspector 2.2.4 → 2.2.6
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/README.md +0 -10
- package/dist/commonjs/components/BrandSquareIcon.js +51 -117
- package/dist/commonjs/components/Inspector/InspectorHeader.js +0 -73
- package/dist/commonjs/components/Inspector/MainScreen.js +0 -4
- package/dist/commonjs/components/Inspector/SettingsPanel.js +2 -107
- package/dist/commonjs/constants/version.d.ts +1 -1
- package/dist/commonjs/constants/version.js +1 -1
- package/dist/commonjs/helpers/index.d.ts +0 -1
- package/dist/commonjs/helpers/index.js +0 -1
- package/dist/commonjs/index.d.ts +1 -1
- package/dist/commonjs/index.js +2 -19
- package/dist/commonjs/native/NativeInspector.js +50 -26
- package/dist/esm/components/BrandSquareIcon.js +52 -118
- package/dist/esm/components/Inspector/InspectorHeader.js +0 -73
- package/dist/esm/components/Inspector/MainScreen.js +0 -4
- package/dist/esm/components/Inspector/SettingsPanel.js +2 -107
- package/dist/esm/constants/version.d.ts +1 -1
- package/dist/esm/constants/version.js +1 -1
- package/dist/esm/helpers/index.d.ts +0 -1
- package/dist/esm/helpers/index.js +0 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +2 -12
- package/dist/esm/native/NativeInspector.js +51 -27
- package/ios/NetworkInspectorModule.mm +34 -19
- package/package.json +2 -2
- package/src/components/BrandSquareIcon.tsx +109 -118
- package/src/components/Inspector/InspectorHeader.tsx +0 -93
- package/src/components/Inspector/MainScreen.tsx +0 -4
- package/src/components/Inspector/SettingsPanel.tsx +2 -128
- package/src/constants/version.ts +1 -1
- package/src/helpers/index.ts +0 -1
- package/src/index.tsx +2 -24
- package/src/native/NativeInspector.ts +56 -24
- package/dist/commonjs/components/Inspector/TelemetryConsentModal.d.ts +0 -3
- package/dist/commonjs/components/Inspector/TelemetryConsentModal.js +0 -368
- package/dist/commonjs/helpers/telemetry.d.ts +0 -99
- package/dist/commonjs/helpers/telemetry.js +0 -398
- package/dist/esm/components/Inspector/TelemetryConsentModal.d.ts +0 -3
- package/dist/esm/components/Inspector/TelemetryConsentModal.js +0 -331
- package/dist/esm/helpers/telemetry.d.ts +0 -99
- package/dist/esm/helpers/telemetry.js +0 -380
- package/src/components/Inspector/TelemetryConsentModal.tsx +0 -416
- package/src/helpers/telemetry.ts +0 -505
package/README.md
CHANGED
|
@@ -371,16 +371,6 @@ npm run android
|
|
|
371
371
|
|
|
372
372
|
---
|
|
373
373
|
|
|
374
|
-
## 🔒 Anonymous Telemetry
|
|
375
|
-
|
|
376
|
-
`react-native-inapp-inspector` collects anonymous diagnostic usage telemetry (such as React Native framework version, OS platform, and feature interactions) to help maintainers prioritize features and track stability across architectures (e.g. Hermes vs. JSC, New Architecture vs. Paper).
|
|
377
|
-
|
|
378
|
-
- **Zero PII**: No personal data, user identities, authentication tokens, device names, or network request payloads are ever collected.
|
|
379
|
-
- **Fail-Safe & Non-Blocking**: Runs completely in the background without affecting app performance.
|
|
380
|
-
- **User Consent Dialog**: On initial launch, an in-app consent dialog prompts the developer to allow or decline anonymous telemetry.
|
|
381
|
-
|
|
382
|
-
---
|
|
383
|
-
|
|
384
374
|
## 🤝 Contributing
|
|
385
375
|
|
|
386
376
|
Contributions are welcome! Please check out our [Contributing Guidelines](CONTRIBUTING.md) to get started.
|
|
@@ -42,138 +42,72 @@ const react_native_svg_1 = __importStar(require("react-native-svg"));
|
|
|
42
42
|
const BrandSquareIcon = ({ size = 56 }) => {
|
|
43
43
|
return (<react_native_svg_1.default width={size} height={size} viewBox="0 0 256 256" fill="none">
|
|
44
44
|
<react_native_svg_1.Defs>
|
|
45
|
-
<react_native_svg_1.LinearGradient id="
|
|
46
|
-
<react_native_svg_1.Stop offset="0" stopColor="#
|
|
47
|
-
<react_native_svg_1.Stop offset="1" stopColor="#
|
|
45
|
+
<react_native_svg_1.LinearGradient id="bs_tile" x1="0" y1="0" x2="256" y2="256" gradientUnits="userSpaceOnUse">
|
|
46
|
+
<react_native_svg_1.Stop offset="0" stopColor="#1E1B4B"/>
|
|
47
|
+
<react_native_svg_1.Stop offset="1" stopColor="#0F172A"/>
|
|
48
48
|
</react_native_svg_1.LinearGradient>
|
|
49
|
-
<react_native_svg_1.LinearGradient id="
|
|
50
|
-
<react_native_svg_1.Stop offset="0" stopColor="#
|
|
51
|
-
<react_native_svg_1.Stop offset="
|
|
49
|
+
<react_native_svg_1.LinearGradient id="bs_beam" x1="0" y1="0" x2="256" y2="256" gradientUnits="userSpaceOnUse">
|
|
50
|
+
<react_native_svg_1.Stop offset="0" stopColor="#818CF8"/>
|
|
51
|
+
<react_native_svg_1.Stop offset="0.5" stopColor="#A855F7"/>
|
|
52
|
+
<react_native_svg_1.Stop offset="1" stopColor="#EC4899"/>
|
|
52
53
|
</react_native_svg_1.LinearGradient>
|
|
53
|
-
<react_native_svg_1.LinearGradient id="
|
|
54
|
-
<react_native_svg_1.Stop offset="0" stopColor="#
|
|
55
|
-
<react_native_svg_1.Stop offset="
|
|
56
|
-
<react_native_svg_1.Stop offset="1" stopColor="#A78BFA"/>
|
|
54
|
+
<react_native_svg_1.LinearGradient id="bs_body" x1="0" y1="0" x2="0" y2="256" gradientUnits="userSpaceOnUse">
|
|
55
|
+
<react_native_svg_1.Stop offset="0" stopColor="#312E81"/>
|
|
56
|
+
<react_native_svg_1.Stop offset="1" stopColor="#1E1B4B"/>
|
|
57
57
|
</react_native_svg_1.LinearGradient>
|
|
58
|
-
<react_native_svg_1.RadialGradient id="
|
|
59
|
-
<react_native_svg_1.Stop offset="0" stopColor="#
|
|
60
|
-
<react_native_svg_1.Stop offset="
|
|
58
|
+
<react_native_svg_1.RadialGradient id="bs_iris" cx="40%" cy="40%" r="60%">
|
|
59
|
+
<react_native_svg_1.Stop offset="0" stopColor="#FDE047"/>
|
|
60
|
+
<react_native_svg_1.Stop offset="0.7" stopColor="#F59E0B"/>
|
|
61
|
+
<react_native_svg_1.Stop offset="1" stopColor="#D97706"/>
|
|
61
62
|
</react_native_svg_1.RadialGradient>
|
|
62
|
-
<react_native_svg_1.LinearGradient id="
|
|
63
|
-
<react_native_svg_1.Stop offset="0" stopColor="#
|
|
64
|
-
<react_native_svg_1.Stop offset="1" stopColor="#
|
|
65
|
-
</react_native_svg_1.LinearGradient>
|
|
66
|
-
<react_native_svg_1.LinearGradient id="beakSquare" x1="120" y1="151" x2="136" y2="168" gradientUnits="userSpaceOnUse">
|
|
67
|
-
<react_native_svg_1.Stop offset="0" stopColor="#FCD34D"/>
|
|
68
|
-
<react_native_svg_1.Stop offset="1" stopColor="#FB923C"/>
|
|
69
|
-
</react_native_svg_1.LinearGradient>
|
|
70
|
-
<react_native_svg_1.RadialGradient id="irisSquare" cx="0.42" cy="0.38" r="0.72">
|
|
71
|
-
<react_native_svg_1.Stop offset="0" stopColor="#FDE68A"/>
|
|
72
|
-
<react_native_svg_1.Stop offset="0.5" stopColor="#FBBF24"/>
|
|
73
|
-
<react_native_svg_1.Stop offset="1" stopColor="#F59E0B"/>
|
|
74
|
-
</react_native_svg_1.RadialGradient>
|
|
75
|
-
<react_native_svg_1.RadialGradient id="blushSquare" cx="0.5" cy="0.5" r="0.5">
|
|
76
|
-
<react_native_svg_1.Stop offset="0" stopColor="#FB7185" stopOpacity={0.5}/>
|
|
77
|
-
<react_native_svg_1.Stop offset="1" stopColor="#FB7185" stopOpacity={0}/>
|
|
78
|
-
</react_native_svg_1.RadialGradient>
|
|
79
|
-
<react_native_svg_1.LinearGradient id="wingSquare" x1="70" y1="120" x2="190" y2="206" gradientUnits="userSpaceOnUse">
|
|
80
|
-
<react_native_svg_1.Stop offset="0" stopColor="#1A2545"/>
|
|
81
|
-
<react_native_svg_1.Stop offset="1" stopColor="#0E1530"/>
|
|
82
|
-
</react_native_svg_1.LinearGradient>
|
|
83
|
-
<react_native_svg_1.LinearGradient id="faceplateSquare" x1="70" y1="72" x2="186" y2="152" gradientUnits="userSpaceOnUse">
|
|
84
|
-
<react_native_svg_1.Stop offset="0" stopColor="#35497E"/>
|
|
85
|
-
<react_native_svg_1.Stop offset="1" stopColor="#1E2D4D"/>
|
|
86
|
-
</react_native_svg_1.LinearGradient>
|
|
87
|
-
<react_native_svg_1.RadialGradient id="lensglassSquare" cx="0.4" cy="0.32" r="0.75">
|
|
88
|
-
<react_native_svg_1.Stop offset="0" stopColor="#7DE8FF" stopOpacity={0.22}/>
|
|
89
|
-
<react_native_svg_1.Stop offset="0.7" stopColor="#7DE8FF" stopOpacity={0.05}/>
|
|
90
|
-
<react_native_svg_1.Stop offset="1" stopColor="#7DE8FF" stopOpacity={0}/>
|
|
91
|
-
</react_native_svg_1.RadialGradient>
|
|
92
|
-
<react_native_svg_1.LinearGradient id="bellySquare" x1="94" y1="126" x2="162" y2="212" gradientUnits="userSpaceOnUse">
|
|
93
|
-
<react_native_svg_1.Stop offset="0" stopColor="#33477A"/>
|
|
94
|
-
<react_native_svg_1.Stop offset="1" stopColor="#1D2B53"/>
|
|
63
|
+
<react_native_svg_1.LinearGradient id="bs_beak" x1="0" y1="0" x2="0" y2="20" gradientUnits="userSpaceOnUse">
|
|
64
|
+
<react_native_svg_1.Stop offset="0" stopColor="#FBBF24"/>
|
|
65
|
+
<react_native_svg_1.Stop offset="1" stopColor="#F97316"/>
|
|
95
66
|
</react_native_svg_1.LinearGradient>
|
|
96
67
|
</react_native_svg_1.Defs>
|
|
97
|
-
<react_native_svg_1.Rect x={8} y={8} width={240} height={240} rx={58} fill="url(#tileSquare)"/>
|
|
98
|
-
<react_native_svg_1.Rect x={8.6} y={8.6} width={238.8} height={238.8} rx={57.4} fill="none" stroke="url(#edgeSquare)" strokeOpacity={0.6} strokeWidth={1.2}/>
|
|
99
|
-
<react_native_svg_1.Circle cx={128} cy={128} r={104} fill="url(#haloSquare)"/>
|
|
100
|
-
<react_native_svg_1.G transform="translate(128 128) scale(1.16) translate(-128 -134)">
|
|
101
|
-
{/* wing 1 */}
|
|
102
|
-
<react_native_svg_1.Path d="M74 124 C58 154 60 190 86 204 C79 176 77 148 88 126 Z" fill="url(#wingSquare)" stroke="url(#beamSquare)" strokeWidth={2.5} strokeOpacity={0.45}/>
|
|
103
|
-
{/* wing 2 */}
|
|
104
|
-
<react_native_svg_1.Path d="M182 124 C198 154 196 190 170 204 C177 176 179 148 168 126 Z" fill="url(#wingSquare)" stroke="url(#beamSquare)" strokeWidth={2.5} strokeOpacity={0.45}/>
|
|
105
|
-
{/* body */}
|
|
106
|
-
<react_native_svg_1.Path d="M62 150 C58 104 70 70 90 58 L98 42 L116 62 Q128 57 140 62 L158 42 L166 58 C186 70 198 104 194 150 C198 180 184 204 152 212 C140 216 116 216 104 212 C72 204 58 180 62 150 Z" fill="url(#owlbodySquare)" stroke="url(#beamSquare)" strokeWidth={4} strokeLinejoin="round"/>
|
|
107
|
-
|
|
108
|
-
{/* inner-ear shadows */}
|
|
109
|
-
<react_native_svg_1.Path d="M99 48 L114 62 L104 63 L98 55 Z" fill="#080F22" opacity={0.5}/>
|
|
110
|
-
<react_native_svg_1.Path d="M157 48 L142 62 L152 63 L158 55 Z" fill="#080F22" opacity={0.5}/>
|
|
111
|
-
|
|
112
|
-
{/* wing feather lines */}
|
|
113
|
-
<react_native_svg_1.G stroke="#22325A" strokeWidth={2.2} fill="none" strokeLinecap="round" opacity={0.75}>
|
|
114
|
-
<react_native_svg_1.Path d="M80 138 q-5 26 3 50"/>
|
|
115
|
-
<react_native_svg_1.Path d="M90 134 q-4 26 3 48"/>
|
|
116
|
-
<react_native_svg_1.Path d="M176 138 q5 26 -3 50"/>
|
|
117
|
-
<react_native_svg_1.Path d="M166 134 q4 26 -3 48"/>
|
|
118
|
-
</react_native_svg_1.G>
|
|
119
68
|
|
|
120
|
-
|
|
121
|
-
|
|
69
|
+
{/* Rounded App Tile Background */}
|
|
70
|
+
<react_native_svg_1.Rect x="8" y="8" width="240" height="240" rx="54" fill="url(#bs_tile)"/>
|
|
71
|
+
<react_native_svg_1.Rect x="8" y="8" width="240" height="240" rx="54" fill="none" stroke="url(#bs_beam)" strokeWidth="3" strokeOpacity={0.4}/>
|
|
122
72
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
<react_native_svg_1.Path d="M110 154 Q118 162 126 154"/>
|
|
126
|
-
<react_native_svg_1.Path d="M126 154 Q134 162 142 154"/>
|
|
127
|
-
<react_native_svg_1.Path d="M142 154 Q150 162 158 154"/>
|
|
128
|
-
<react_native_svg_1.Path d="M102 172 Q110 180 118 172"/>
|
|
129
|
-
<react_native_svg_1.Path d="M150 172 Q158 180 166 172"/>
|
|
130
|
-
<react_native_svg_1.Path d="M112 190 Q120 198 128 190"/>
|
|
131
|
-
<react_native_svg_1.Path d="M128 190 Q136 198 144 190"/>
|
|
132
|
-
</react_native_svg_1.G>
|
|
73
|
+
{/* Owl Outer Body Contour */}
|
|
74
|
+
<react_native_svg_1.Path d="M64 148 C60 102 72 68 92 56 L100 40 L118 60 Q128 55 138 60 L156 40 L164 56 C184 68 196 102 192 148 C196 178 182 202 150 210 C138 214 118 214 106 210 C74 202 60 178 64 148 Z" fill="url(#bs_body)" stroke="url(#bs_beam)" strokeWidth="4" strokeLinejoin="round"/>
|
|
133
75
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
<react_native_svg_1.Path d="M122 170 L115 177 L122 184"/>
|
|
138
|
-
<react_native_svg_1.Path d="M134 170 L141 177 L134 184"/>
|
|
139
|
-
<react_native_svg_1.Path d="M130 168 L126 186"/>
|
|
140
|
-
</react_native_svg_1.G>
|
|
76
|
+
{/* Wings */}
|
|
77
|
+
<react_native_svg_1.Path d="M74 124 C58 154 60 190 86 204 C79 176 77 148 88 126 Z" fill="#1E1B4B" stroke="#818CF8" strokeWidth="2.5" strokeOpacity={0.6}/>
|
|
78
|
+
<react_native_svg_1.Path d="M182 124 C198 154 196 190 170 204 C177 176 179 148 168 126 Z" fill="#1E1B4B" stroke="#818CF8" strokeWidth="2.5" strokeOpacity={0.6}/>
|
|
141
79
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
80
|
+
{/* Belly Screen Plate */}
|
|
81
|
+
<react_native_svg_1.Rect x="105" y="160" width="46" height="34" rx="8" fill="#0B0F19" stroke="url(#bs_beam)" strokeWidth="2"/>
|
|
82
|
+
{/* Code Emblem on Chest */}
|
|
83
|
+
<react_native_svg_1.G stroke="#A5B4FC" strokeWidth="2.8" strokeLinecap="round" strokeLinejoin="round" fill="none">
|
|
84
|
+
<react_native_svg_1.Path d="M120 171 L114 177 L120 183"/>
|
|
85
|
+
<react_native_svg_1.Path d="M136 171 L142 177 L136 183"/>
|
|
86
|
+
<react_native_svg_1.Path d="M130 169 L126 185" stroke="#EC4899"/>
|
|
87
|
+
</react_native_svg_1.G>
|
|
146
88
|
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
<react_native_svg_1.Path d="M111 209 L105 224 M111 209 L111 226 M111 209 L117 224"/>
|
|
150
|
-
<react_native_svg_1.Path d="M145 209 L139 224 M145 209 L145 226 M145 209 L151 224"/>
|
|
151
|
-
</react_native_svg_1.G>
|
|
89
|
+
{/* Facial Disc & Mask */}
|
|
90
|
+
<react_native_svg_1.Path d="M128 92 C148 70 186 78 186 108 C186 134 160 152 128 152 C96 152 70 134 70 108 C70 78 108 70 128 92 Z" fill="#2E1065" stroke="#818CF8" strokeWidth="2" strokeOpacity={0.6}/>
|
|
152
91
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
92
|
+
{/* Right Eye (Normal Cute Eye) */}
|
|
93
|
+
<react_native_svg_1.Circle cx="154" cy="108" r="17" fill="url(#bs_iris)" stroke="#0F172A" strokeWidth="2"/>
|
|
94
|
+
<react_native_svg_1.Circle cx="154" cy="108" r="8.5" fill="#0F172A"/>
|
|
95
|
+
<react_native_svg_1.Circle cx="157" cy="105" r="3" fill="#FFFFFF"/>
|
|
96
|
+
<react_native_svg_1.Circle cx="151" cy="111" r="1.5" fill="#FFFFFF" opacity={0.8}/>
|
|
158
97
|
|
|
159
|
-
|
|
160
|
-
|
|
98
|
+
{/* Left Eye (Diagnostic Magnifier Lens) */}
|
|
99
|
+
<react_native_svg_1.Circle cx="96" cy="104" r="20" fill="url(#bs_iris)" stroke="#0F172A" strokeWidth="2"/>
|
|
100
|
+
<react_native_svg_1.Circle cx="96" cy="104" r="10" fill="#0F172A"/>
|
|
101
|
+
<react_native_svg_1.Circle cx="99.5" cy="100.5" r="3.5" fill="#FFFFFF"/>
|
|
102
|
+
<react_native_svg_1.Circle cx="92" cy="107" r="1.8" fill="#FFFFFF" opacity={0.8}/>
|
|
161
103
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
<react_native_svg_1.Circle cx={91} cy={107} r={1.8} fill="#ffffff" opacity={0.7}/>
|
|
167
|
-
<react_native_svg_1.Circle cx={95} cy={103} r={28} fill="url(#lensglassSquare)"/>
|
|
168
|
-
<react_native_svg_1.Path d="M77 87 A28 28 0 0 1 106 79" fill="none" stroke="#ffffff" strokeWidth={4} strokeLinecap="round" strokeOpacity={0.5}/>
|
|
169
|
-
<react_native_svg_1.Line x1={75} y1={123} x2={54} y2={147} stroke="#0A0F1C" strokeWidth={14} strokeLinecap="round"/>
|
|
170
|
-
<react_native_svg_1.Line x1={75} y1={123} x2={54} y2={147} stroke="url(#beamSquare)" strokeWidth={8.5} strokeLinecap="round"/>
|
|
171
|
-
<react_native_svg_1.Circle cx={95} cy={103} r={28} fill="none" stroke="url(#beamSquare)" strokeWidth={7}/>
|
|
104
|
+
{/* Magnifier Glass Ring & Handle */}
|
|
105
|
+
<react_native_svg_1.Line x1="76" y1="124" x2="55" y2="148" stroke="#0F172A" strokeWidth="12" strokeLinecap="round"/>
|
|
106
|
+
<react_native_svg_1.Line x1="76" y1="124" x2="55" y2="148" stroke="url(#bs_beam)" strokeWidth="7" strokeLinecap="round"/>
|
|
107
|
+
<react_native_svg_1.Circle cx="96" cy="104" r="28" fill="#38BDF8" fillOpacity={0.12} stroke="url(#bs_beam)" strokeWidth="6"/>
|
|
172
108
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
<react_native_svg_1.Ellipse cx={167} cy={122} rx={9} ry={6} fill="url(#blushSquare)"/>
|
|
176
|
-
</react_native_svg_1.G>
|
|
109
|
+
{/* Beak */}
|
|
110
|
+
<react_native_svg_1.Path d="M123.5 123 Q128 121 132.5 123 Q131 132 128 134.5 Q125 132 123.5 123 Z" fill="url(#bs_beak)"/>
|
|
177
111
|
</react_native_svg_1.default>);
|
|
178
112
|
};
|
|
179
113
|
exports.BrandSquareIcon = BrandSquareIcon;
|
|
@@ -48,37 +48,11 @@ const AppFonts_1 = require("../../styles/AppFonts");
|
|
|
48
48
|
const constants_1 = require("../../constants");
|
|
49
49
|
const constants_2 = require("../../constants");
|
|
50
50
|
const helpers_1 = require("../../helpers");
|
|
51
|
-
const telemetry_1 = require("../../helpers/telemetry");
|
|
52
51
|
const UpdateAvailableModal_1 = require("./UpdateAvailableModal");
|
|
53
52
|
const NetworkIcons_1 = require("../NetworkIcons");
|
|
54
53
|
const InspectorHeader = react_1.default.memo(() => {
|
|
55
54
|
const { modalHeightPercent, appIcon, selected, setSelected, selectedEvent, setSelectedEvent, selectedLog, setSelectedLog, selectedReduxSlice, setSelectedReduxSlice, selectedReduxAction, setSelectedReduxAction, reduxState, reduxLastActionMap, showHeaderInfo, setShowHeaderInfo, updateAvailable, latestNpmVersion, clearAnim, activePulseAnim, unreadPulseAnim, runClearAllWithAnimation, settingsPage, setSettingsPage, resetToDefaults, closeModal, detailTitle, activeTab, environment, visible, selectedCrash, setSelectedCrash, } = (0, InspectorContext_1.useInspector)();
|
|
56
55
|
const [showUpdateModal, setShowUpdateModal] = react_1.default.useState(false);
|
|
57
|
-
const [isTelemetryActive, setIsTelemetryActive] = react_1.default.useState(false);
|
|
58
|
-
const telemetryPulseAnim = react_1.default.useRef(new react_native_1.Animated.Value(1)).current;
|
|
59
|
-
react_1.default.useEffect(() => {
|
|
60
|
-
(0, telemetry_1.getTelemetryConsentStatus)().then(status => {
|
|
61
|
-
setIsTelemetryActive(status === 'granted');
|
|
62
|
-
});
|
|
63
|
-
}, [visible]);
|
|
64
|
-
react_1.default.useEffect(() => {
|
|
65
|
-
if (!isTelemetryActive)
|
|
66
|
-
return;
|
|
67
|
-
const pulse = react_native_1.Animated.loop(react_native_1.Animated.sequence([
|
|
68
|
-
react_native_1.Animated.timing(telemetryPulseAnim, {
|
|
69
|
-
toValue: 2.2,
|
|
70
|
-
duration: 1500,
|
|
71
|
-
useNativeDriver: true,
|
|
72
|
-
}),
|
|
73
|
-
react_native_1.Animated.timing(telemetryPulseAnim, {
|
|
74
|
-
toValue: 1,
|
|
75
|
-
duration: 0,
|
|
76
|
-
useNativeDriver: true,
|
|
77
|
-
}),
|
|
78
|
-
]));
|
|
79
|
-
pulse.start();
|
|
80
|
-
return () => pulse.stop();
|
|
81
|
-
}, [isTelemetryActive, telemetryPulseAnim]);
|
|
82
56
|
const envConfig = (0, react_1.useMemo)(() => {
|
|
83
57
|
const rawEnv = (environment || (__DEV__ ? 'DEV' : 'PROD')).trim();
|
|
84
58
|
const clean = rawEnv.toUpperCase();
|
|
@@ -371,53 +345,6 @@ const InspectorHeader = react_1.default.memo(() => {
|
|
|
371
345
|
●
|
|
372
346
|
</react_native_1.Text>)}
|
|
373
347
|
</react_native_1.Pressable>
|
|
374
|
-
|
|
375
|
-
{isTelemetryActive && (<react_native_1.Pressable onPress={() => react_native_1.Alert.alert('Anonymous Telemetry Active', 'Anonymous diagnostics (such as React Native version, JavaScript engine, and device model) are currently enabled to help improve library tooling.\n\nNo user data or network payloads are captured. You can toggle this anytime in Settings.', [{ text: 'Got it' }])} style={{
|
|
376
|
-
flexDirection: 'row',
|
|
377
|
-
alignItems: 'center',
|
|
378
|
-
backgroundColor: 'rgba(16, 185, 129, 0.22)',
|
|
379
|
-
borderRadius: 5,
|
|
380
|
-
paddingHorizontal: 5.5,
|
|
381
|
-
paddingVertical: 2,
|
|
382
|
-
gap: 4.5,
|
|
383
|
-
borderWidth: 1,
|
|
384
|
-
borderColor: 'rgba(52, 211, 153, 0.45)',
|
|
385
|
-
flexShrink: 0,
|
|
386
|
-
}}>
|
|
387
|
-
<react_native_1.View style={{
|
|
388
|
-
width: 6,
|
|
389
|
-
height: 6,
|
|
390
|
-
alignItems: 'center',
|
|
391
|
-
justifyContent: 'center',
|
|
392
|
-
}}>
|
|
393
|
-
<react_native_1.Animated.View style={{
|
|
394
|
-
position: 'absolute',
|
|
395
|
-
width: 6,
|
|
396
|
-
height: 6,
|
|
397
|
-
borderRadius: 3,
|
|
398
|
-
backgroundColor: '#34D399',
|
|
399
|
-
opacity: telemetryPulseAnim.interpolate({
|
|
400
|
-
inputRange: [1, 2.2],
|
|
401
|
-
outputRange: [0.8, 0],
|
|
402
|
-
}),
|
|
403
|
-
transform: [{ scale: telemetryPulseAnim }],
|
|
404
|
-
}}/>
|
|
405
|
-
<react_native_1.View style={{
|
|
406
|
-
width: 4,
|
|
407
|
-
height: 4,
|
|
408
|
-
borderRadius: 2,
|
|
409
|
-
backgroundColor: '#10B981',
|
|
410
|
-
}}/>
|
|
411
|
-
</react_native_1.View>
|
|
412
|
-
<react_native_1.Text style={{
|
|
413
|
-
fontFamily: AppFonts_1.AppFonts.interBold,
|
|
414
|
-
fontSize: 9,
|
|
415
|
-
color: '#6EE7B7',
|
|
416
|
-
letterSpacing: 0.2,
|
|
417
|
-
}}>
|
|
418
|
-
LIVE
|
|
419
|
-
</react_native_1.Text>
|
|
420
|
-
</react_native_1.Pressable>)}
|
|
421
348
|
</react_native_1.View>
|
|
422
349
|
</react_native_1.View>
|
|
423
350
|
</react_native_1.View>) : null}
|
|
@@ -58,7 +58,6 @@ const CrashDetail_1 = __importDefault(require("./CrashDetail"));
|
|
|
58
58
|
const DeviceInfoTab_1 = __importDefault(require("./DeviceInfoTab"));
|
|
59
59
|
const StorageTab_1 = __importDefault(require("./StorageTab"));
|
|
60
60
|
const SettingsPanel_1 = __importDefault(require("./SettingsPanel"));
|
|
61
|
-
const TelemetryConsentModal_1 = __importDefault(require("./TelemetryConsentModal"));
|
|
62
61
|
const NpmUpdateToast_1 = __importDefault(require("./NpmUpdateToast"));
|
|
63
62
|
const Toast_1 = __importDefault(require("../Toast"));
|
|
64
63
|
const styles_1 = __importDefault(require("../../styles"));
|
|
@@ -214,9 +213,6 @@ const MainScreen = () => {
|
|
|
214
213
|
|
|
215
214
|
{/* NPM Version Update Toast with timeout progress bar */}
|
|
216
215
|
<NpmUpdateToast_1.default />
|
|
217
|
-
|
|
218
|
-
{/* Anonymous Telemetry Consent Dialog shown ONLY when inspector is active */}
|
|
219
|
-
<TelemetryConsentModal_1.default />
|
|
220
216
|
</react_native_1.View>
|
|
221
217
|
</react_native_1.View>
|
|
222
218
|
</ErrorBoundary_1.default>)}
|
|
@@ -55,7 +55,6 @@ const performanceTracker_1 = require("../../customHooks/performanceTracker");
|
|
|
55
55
|
const reduxLogger_1 = require("../../customHooks/reduxLogger");
|
|
56
56
|
const analyticsLogger_2 = require("../../customHooks/analyticsLogger");
|
|
57
57
|
const i18n_1 = require("../../i18n");
|
|
58
|
-
const telemetry_1 = require("../../helpers/telemetry");
|
|
59
58
|
const NetworkIcons_1 = require("../NetworkIcons");
|
|
60
59
|
const constants_1 = require("../../constants");
|
|
61
60
|
const helpers_1 = require("../../helpers");
|
|
@@ -65,20 +64,6 @@ const SettingsPanel = () => {
|
|
|
65
64
|
const { t } = (0, i18n_1.useTranslation)();
|
|
66
65
|
const { settingsPage, setSettingsPage, settingsActiveSubTab, setSettingsActiveSubTab, tabVisibility, toggleTabVisibility, defaultTab, setDefaultTab, isDark, setIsDark, modalHeightPercent, setModalHeightPercent, modalAnimationType, setModalAnimationType, showDuplicateLogs, setShowDuplicateLogs, showUpdateToast, setShowUpdateToast, showConsoleLevels, setShowConsoleLevels, resetToDefaults, storage, logs, consoleLogs, analyticsEvents, reduxState, maxNetworkLogs, setMaxNetworkLogs, maxConsoleLogs, setMaxConsoleLogs, maxAnalyticsEventsLimit, setMaxAnalyticsEventsLimit, isAutoRamLimitEnabled, setIsAutoRamLimitEnabled, deviceFreeRamMb, reduxAutoRefresh, setReduxAutoRefreshState, reduxExpandDepth, setReduxExpandDepth, switchActiveTab, setSelected, setSelectedEvent, setReduxState, crashRecords, maxCrashLogs, setMaxCrashLogs, updateAvailable, latestNpmVersion, } = (0, InspectorContext_1.useInspector)();
|
|
67
66
|
const [stagedHeight, setStagedHeight] = (0, react_1.useState)(modalHeightPercent);
|
|
68
|
-
const [telemetryConsent, setTelemetryConsentState] = (0, react_1.useState)(true);
|
|
69
|
-
(0, react_1.useEffect)(() => {
|
|
70
|
-
(0, telemetry_1.getTelemetryConsentStatus)().then(status => {
|
|
71
|
-
setTelemetryConsentState(status === 'granted');
|
|
72
|
-
});
|
|
73
|
-
}, []);
|
|
74
|
-
const handleToggleTelemetry = async () => {
|
|
75
|
-
const nextVal = !telemetryConsent;
|
|
76
|
-
setTelemetryConsentState(nextVal);
|
|
77
|
-
await (0, telemetry_1.setTelemetryConsent)(nextVal);
|
|
78
|
-
if (nextVal) {
|
|
79
|
-
(0, telemetry_1.sendSessionTelemetryPing)({ force: true });
|
|
80
|
-
}
|
|
81
|
-
};
|
|
82
67
|
(0, react_1.useEffect)(() => {
|
|
83
68
|
setStagedHeight(modalHeightPercent);
|
|
84
69
|
}, [modalHeightPercent]);
|
|
@@ -1235,97 +1220,7 @@ const SettingsPanel = () => {
|
|
|
1235
1220
|
</react_native_1.View>
|
|
1236
1221
|
</react_native_1.View>
|
|
1237
1222
|
|
|
1238
|
-
{/* Section 4:
|
|
1239
|
-
<react_native_1.View style={{
|
|
1240
|
-
backgroundColor: AppColors_1.AppColors.primaryLight,
|
|
1241
|
-
borderRadius: 14,
|
|
1242
|
-
borderWidth: 1,
|
|
1243
|
-
borderColor: AppColors_1.AppColors.grayBorderSecondary,
|
|
1244
|
-
overflow: 'hidden',
|
|
1245
|
-
padding: 14,
|
|
1246
|
-
gap: 12,
|
|
1247
|
-
}}>
|
|
1248
|
-
<react_native_1.Text style={{
|
|
1249
|
-
fontFamily: AppFonts_1.AppFonts.interBold,
|
|
1250
|
-
fontSize: 11,
|
|
1251
|
-
lineHeight: 14,
|
|
1252
|
-
color: AppColors_1.AppColors.grayTextWeak,
|
|
1253
|
-
letterSpacing: 0.8,
|
|
1254
|
-
}}>
|
|
1255
|
-
PRIVACY & ANONYMOUS DIAGNOSTICS
|
|
1256
|
-
</react_native_1.Text>
|
|
1257
|
-
|
|
1258
|
-
<react_native_1.View style={{
|
|
1259
|
-
flexDirection: 'row',
|
|
1260
|
-
alignItems: 'center',
|
|
1261
|
-
justifyContent: 'space-between',
|
|
1262
|
-
}}>
|
|
1263
|
-
<react_native_1.View style={{
|
|
1264
|
-
flexDirection: 'row',
|
|
1265
|
-
alignItems: 'center',
|
|
1266
|
-
gap: 10,
|
|
1267
|
-
flex: 1,
|
|
1268
|
-
marginRight: 10,
|
|
1269
|
-
}}>
|
|
1270
|
-
<react_native_1.View style={{
|
|
1271
|
-
width: 32,
|
|
1272
|
-
height: 32,
|
|
1273
|
-
borderRadius: 8,
|
|
1274
|
-
backgroundColor: AppColors_1.AppColors.purpleShade50,
|
|
1275
|
-
alignItems: 'center',
|
|
1276
|
-
justifyContent: 'center',
|
|
1277
|
-
}}>
|
|
1278
|
-
<NetworkIcons_1.ShieldAlertIcon color={AppColors_1.AppColors.purple} size={15}/>
|
|
1279
|
-
</react_native_1.View>
|
|
1280
|
-
<react_native_1.View style={{ flex: 1 }}>
|
|
1281
|
-
<react_native_1.Text style={{
|
|
1282
|
-
fontFamily: AppFonts_1.AppFonts.interBold,
|
|
1283
|
-
fontSize: 13.5,
|
|
1284
|
-
lineHeight: 18,
|
|
1285
|
-
color: AppColors_1.AppColors.primaryBlack,
|
|
1286
|
-
}}>
|
|
1287
|
-
Help Improve In-App Inspector
|
|
1288
|
-
</react_native_1.Text>
|
|
1289
|
-
<react_native_1.Text style={{
|
|
1290
|
-
fontFamily: AppFonts_1.AppFonts.interRegular,
|
|
1291
|
-
fontSize: 11,
|
|
1292
|
-
lineHeight: 15,
|
|
1293
|
-
color: AppColors_1.AppColors.grayText,
|
|
1294
|
-
marginTop: 1,
|
|
1295
|
-
}}>
|
|
1296
|
-
Share non-identifiable technical metrics (RN version, JS
|
|
1297
|
-
engine, device model). No user data or network payloads
|
|
1298
|
-
are captured.
|
|
1299
|
-
</react_native_1.Text>
|
|
1300
|
-
</react_native_1.View>
|
|
1301
|
-
</react_native_1.View>
|
|
1302
|
-
|
|
1303
|
-
<TouchableScale_1.default accessible={true} accessibilityRole="switch" accessibilityLabel="Toggle Anonymous Telemetry" accessibilityState={{ checked: telemetryConsent }} onPress={handleToggleTelemetry} style={{
|
|
1304
|
-
width: 42,
|
|
1305
|
-
height: 24,
|
|
1306
|
-
borderRadius: 12,
|
|
1307
|
-
backgroundColor: telemetryConsent
|
|
1308
|
-
? AppColors_1.AppColors.purple
|
|
1309
|
-
: AppColors_1.AppColors.grayBorderSecondary,
|
|
1310
|
-
padding: 2,
|
|
1311
|
-
justifyContent: 'center',
|
|
1312
|
-
alignItems: telemetryConsent ? 'flex-end' : 'flex-start',
|
|
1313
|
-
}}>
|
|
1314
|
-
<react_native_1.View style={{
|
|
1315
|
-
width: 20,
|
|
1316
|
-
height: 20,
|
|
1317
|
-
borderRadius: 10,
|
|
1318
|
-
backgroundColor: AppColors_1.AppColors.white,
|
|
1319
|
-
shadowColor: AppColors_1.AppColors.black,
|
|
1320
|
-
shadowOpacity: 0.18,
|
|
1321
|
-
shadowRadius: 2,
|
|
1322
|
-
shadowOffset: { width: 0, height: 1 },
|
|
1323
|
-
}}/>
|
|
1324
|
-
</TouchableScale_1.default>
|
|
1325
|
-
</react_native_1.View>
|
|
1326
|
-
</react_native_1.View>
|
|
1327
|
-
|
|
1328
|
-
{/* Section 5: Notifications & Toasts */}
|
|
1223
|
+
{/* Section 4: Notifications & Toasts */}
|
|
1329
1224
|
<react_native_1.View style={{
|
|
1330
1225
|
backgroundColor: AppColors_1.AppColors.primaryLight,
|
|
1331
1226
|
borderRadius: 14,
|
|
@@ -1414,7 +1309,7 @@ const SettingsPanel = () => {
|
|
|
1414
1309
|
</react_native_1.View>
|
|
1415
1310
|
</react_native_1.View>
|
|
1416
1311
|
|
|
1417
|
-
{/* Section
|
|
1312
|
+
{/* Section 5: NPM Package & Updates */}
|
|
1418
1313
|
<react_native_1.View style={{
|
|
1419
1314
|
backgroundColor: AppColors_1.AppColors.primaryLight,
|
|
1420
1315
|
borderRadius: 14,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const LIB_VERSION = "2.2.
|
|
1
|
+
export declare const LIB_VERSION = "2.2.6";
|
|
@@ -3,4 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.LIB_VERSION = void 0;
|
|
4
4
|
// AUTO-GENERATED FILE — do not edit by hand.
|
|
5
5
|
// Regenerated from package.json on every build by scripts/gen-version.js.
|
|
6
|
-
exports.LIB_VERSION = '2.2.
|
|
6
|
+
exports.LIB_VERSION = '2.2.6';
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { NetworkLog, RouteInfo, DiffResult, JsonContent, StackFrameType } from '../types';
|
|
2
2
|
export * from './searchQueryParser';
|
|
3
|
-
export * from './telemetry';
|
|
4
3
|
export * from './memoryManager';
|
|
5
4
|
export declare const getDomainColor: (domain: string) => string;
|
|
6
5
|
export declare const formatDateTime: (timestamp: number) => string;
|
|
@@ -26,7 +26,6 @@ const AppColors_1 = require("../styles/AppColors");
|
|
|
26
26
|
// Constants
|
|
27
27
|
const constants_1 = require("../constants");
|
|
28
28
|
__exportStar(require("./searchQueryParser"), exports);
|
|
29
|
-
__exportStar(require("./telemetry"), exports);
|
|
30
29
|
__exportStar(require("./memoryManager"), exports);
|
|
31
30
|
const getDomainColor = (domain) => {
|
|
32
31
|
if (!domain)
|
package/dist/commonjs/index.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export { getEventCategory, registerGAPlugin, type GAPlugin, } from './helpers/ga
|
|
|
13
13
|
export { usePerformanceTracker, useComponentProfiler, useNavigationProfiler, trackComponentRender, trackNavigationTransition, trackHeavyTask, measureAsync, getHermesMemoryStats, registerComponentProfile, subscribeRenderProfiles, getRenderProfiles, logPerformanceEvent, clearPerformanceEvents, subscribePerformanceEvents, getPerformanceEvents, getInitialRenderProfiles, getInitialPerformanceEvents, generateFixSnippet, } from './customHooks/performanceTracker';
|
|
14
14
|
export { InspectLog, InspectTrackTime, InspectCatch, type InspectLogOptions, } from './decorators';
|
|
15
15
|
export { getNativeDeviceMetrics, enableNativeCrashProtection, subscribeNativeCrashes, showNativeFloatingButton, hideNativeFloatingButton, setNativeFloatingButtonBadge, subscribeNativeFloatingButtonPress, subscribeNativeDeviceShake, startNativeFpsMonitoring, stopNativeFpsMonitoring, getNativeFpsMetrics, getNativeStorageItem, setNativeStorageItem, isNativeModuleAvailable, type NativeDeviceMetrics, type NativeCrashEvent, type FloatingButtonOptions, type NativeFpsMetrics, } from './native/NativeInspector';
|
|
16
|
-
export {
|
|
16
|
+
export { setupMemoryWarningHandler, pruneAllLogs, subscribeMemoryWarning, type MemoryPruneSummary, } from './helpers';
|
|
17
17
|
export { setMaxNetworkLogsLimit, getMaxNetworkLogsLimit, pruneNetworkLogs, } from './customHooks/networkLogger';
|
|
18
18
|
export { setMaxConsoleLogsLimit, getMaxConsoleLogsLimit, pruneConsoleLogs, } from './customHooks/consoleLogger';
|
|
19
19
|
export { setMaxReduxHistoryLimit, getMaxReduxHistoryLimit, pruneReduxHistory, } from './customHooks/reduxLogger';
|
package/dist/commonjs/index.js
CHANGED
|
@@ -37,8 +37,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.registerComponentProfile = exports.getHermesMemoryStats = exports.measureAsync = exports.trackHeavyTask = exports.trackNavigationTransition = exports.trackComponentRender = exports.useNavigationProfiler = exports.useComponentProfiler = exports.usePerformanceTracker = exports.registerGAPlugin = exports.getEventCategory = exports.getLastActionForReducer = exports.clearActionHistory = exports.getActionHistory = exports.subscribeReduxState = exports.getReduxState = exports.inspectorReduxMiddleware = exports.connectReduxStore = exports.ErrorBoundary = exports.CrashTab = exports.computeCrashFingerprint = exports.recordUserActionBreadcrumb = exports.recordReduxBreadcrumb = exports.recordNetworkBreadcrumb = exports.recordNavigationBreadcrumb = exports.addCrashBreadcrumb = exports.recordCustomCrash = exports.parseCrashStackTrace = exports.exportCrashReport = exports.simulateTestCrash = exports.clearCrashRecords = exports.getCrashRecords = exports.emitCrashEvent = exports.subscribeCrashEvents = exports.setupGlobalCrashHandler = exports.getCollectionEnabled = exports.getDefaultEventParameters = exports.getCurrentUserId = exports.getCurrentUserProperties = exports.clearAnalyticsEvents = exports.subscribeAnalyticsEvents = exports.logAnalyticsEvent = exports.setupAnalyticsLogger = exports.subscribeConsoleLogs = exports.clearConsoleLogs = exports.setupConsoleLogger = exports.addAxiosInterceptors = exports.subscribeNetworkLogs = exports.clearNetworkLogs = exports.setupNetworkLogger = void 0;
|
|
40
|
-
exports.
|
|
41
|
-
exports.BreadcrumbType = exports.CrashFilterType = exports.CrashDetailSubTab = exports.CrashExportFormat = exports.CrashType = exports.PerformanceSubTab = exports.BundleSubTab = exports.DiffResultType = exports.StackFrameType = exports.GAEventCategory = exports.AnalyticsEventSource = exports.ConsoleLogType = exports.LogFilter = exports.SettingsSubTab = exports.SettingsPage = exports.ModalAnimationType = exports.LocalFilter = exports.SortOrder = exports.StatusFilter = exports.Method = exports.ActiveTab = exports.subscribeToStorageChanges = exports.clearStorageDriver = exports.removeStorageEntry = exports.setStorageEntry = exports.fetchStorageEntries = exports.getRegisteredMMKVInstanceIds = exports.isMMKVConnected = exports.isAsyncStorageConnected =
|
|
40
|
+
exports.connectMMKV = exports.connectAsyncStorage = exports.BrandCircleIcon = exports.BrandSquareIcon = exports.prunePerformanceEvents = exports.getMaxPerformanceEventsLimit = exports.setMaxPerformanceEventsLimit = exports.pruneCrashRecords = exports.getMaxCrashLogsLimit = exports.pruneAnalyticsLogs = exports.getMaxAnalyticsLogsLimit = exports.setMaxAnalyticsLogsLimit = exports.pruneReduxHistory = exports.getMaxReduxHistoryLimit = exports.setMaxReduxHistoryLimit = exports.pruneConsoleLogs = exports.getMaxConsoleLogsLimit = exports.setMaxConsoleLogsLimit = exports.pruneNetworkLogs = exports.getMaxNetworkLogsLimit = exports.setMaxNetworkLogsLimit = exports.subscribeMemoryWarning = exports.pruneAllLogs = exports.setupMemoryWarningHandler = exports.isNativeModuleAvailable = exports.setNativeStorageItem = exports.getNativeStorageItem = exports.getNativeFpsMetrics = exports.stopNativeFpsMonitoring = exports.startNativeFpsMonitoring = exports.subscribeNativeDeviceShake = exports.subscribeNativeFloatingButtonPress = exports.setNativeFloatingButtonBadge = exports.hideNativeFloatingButton = exports.showNativeFloatingButton = exports.subscribeNativeCrashes = exports.enableNativeCrashProtection = exports.getNativeDeviceMetrics = exports.InspectCatch = exports.InspectTrackTime = exports.InspectLog = exports.generateFixSnippet = exports.getInitialPerformanceEvents = exports.getInitialRenderProfiles = exports.getPerformanceEvents = exports.subscribePerformanceEvents = exports.clearPerformanceEvents = exports.logPerformanceEvent = exports.getRenderProfiles = exports.subscribeRenderProfiles = void 0;
|
|
41
|
+
exports.BreadcrumbType = exports.CrashFilterType = exports.CrashDetailSubTab = exports.CrashExportFormat = exports.CrashType = exports.PerformanceSubTab = exports.BundleSubTab = exports.DiffResultType = exports.StackFrameType = exports.GAEventCategory = exports.AnalyticsEventSource = exports.ConsoleLogType = exports.LogFilter = exports.SettingsSubTab = exports.SettingsPage = exports.ModalAnimationType = exports.LocalFilter = exports.SortOrder = exports.StatusFilter = exports.Method = exports.ActiveTab = exports.subscribeToStorageChanges = exports.clearStorageDriver = exports.removeStorageEntry = exports.setStorageEntry = exports.fetchStorageEntries = exports.getRegisteredMMKVInstanceIds = exports.isMMKVConnected = exports.isAsyncStorageConnected = void 0;
|
|
42
42
|
const react_1 = __importStar(require("react"));
|
|
43
43
|
const react_native_1 = require("react-native");
|
|
44
44
|
const native_1 = require("@react-navigation/native");
|
|
@@ -758,14 +758,6 @@ const NetworkInspector = ({ enabled = true, isEnabled = true, storage, navigatio
|
|
|
758
758
|
}, [unreadPulseAnim]);
|
|
759
759
|
const isNativeModule = (0, react_1.useMemo)(() => (0, NativeInspector_2.isNativeModuleAvailable)(), []);
|
|
760
760
|
const useNativeFab = (react_native_1.Platform.OS === 'ios' || react_native_1.Platform.OS === 'android') && isNativeModule;
|
|
761
|
-
// Send anonymous initialization heartbeat to GA4 Measurement Protocol
|
|
762
|
-
(0, react_1.useEffect)(() => {
|
|
763
|
-
(0, helpers_1.sendSessionTelemetryPing)({
|
|
764
|
-
environment,
|
|
765
|
-
hasNavigation: Boolean(navigationRef),
|
|
766
|
-
hasAppIcon: Boolean(appIcon),
|
|
767
|
-
});
|
|
768
|
-
}, [environment, navigationRef, appIcon]);
|
|
769
761
|
// 100% Native Main-Thread Floating Button Lifecycle
|
|
770
762
|
(0, react_1.useEffect)(() => {
|
|
771
763
|
if (!useNativeFab || !isEnabled || !enabled) {
|
|
@@ -820,8 +812,6 @@ const NetworkInspector = ({ enabled = true, isEnabled = true, storage, navigatio
|
|
|
820
812
|
? defaultTab
|
|
821
813
|
: 'apis';
|
|
822
814
|
setActiveTab(target);
|
|
823
|
-
// Track inspector opened event in GA4
|
|
824
|
-
(0, helpers_1.trackInspectorOpen)({ activeTab: target });
|
|
825
815
|
// Instant synchronization of data collected while modal was closed
|
|
826
816
|
if (latestNetworkLogsRef.current.length > 0) {
|
|
827
817
|
const deduped = (0, helpers_1.deduplicateLogs)(latestNetworkLogsRef.current);
|
|
@@ -1942,13 +1932,6 @@ Object.defineProperty(exports, "getNativeStorageItem", { enumerable: true, get:
|
|
|
1942
1932
|
Object.defineProperty(exports, "setNativeStorageItem", { enumerable: true, get: function () { return NativeInspector_3.setNativeStorageItem; } });
|
|
1943
1933
|
Object.defineProperty(exports, "isNativeModuleAvailable", { enumerable: true, get: function () { return NativeInspector_3.isNativeModuleAvailable; } });
|
|
1944
1934
|
var helpers_2 = require("./helpers");
|
|
1945
|
-
Object.defineProperty(exports, "sendSessionTelemetryPing", { enumerable: true, get: function () { return helpers_2.sendSessionTelemetryPing; } });
|
|
1946
|
-
Object.defineProperty(exports, "trackTelemetryEvent", { enumerable: true, get: function () { return helpers_2.trackTelemetryEvent; } });
|
|
1947
|
-
Object.defineProperty(exports, "trackInspectorOpen", { enumerable: true, get: function () { return helpers_2.trackInspectorOpen; } });
|
|
1948
|
-
Object.defineProperty(exports, "trackTabSwitch", { enumerable: true, get: function () { return helpers_2.trackTabSwitch; } });
|
|
1949
|
-
Object.defineProperty(exports, "trackLogExport", { enumerable: true, get: function () { return helpers_2.trackLogExport; } });
|
|
1950
|
-
Object.defineProperty(exports, "GA4_MEASUREMENT_ID", { enumerable: true, get: function () { return helpers_2.GA4_MEASUREMENT_ID; } });
|
|
1951
|
-
Object.defineProperty(exports, "GA4_API_SECRET", { enumerable: true, get: function () { return helpers_2.GA4_API_SECRET; } });
|
|
1952
1935
|
Object.defineProperty(exports, "setupMemoryWarningHandler", { enumerable: true, get: function () { return helpers_2.setupMemoryWarningHandler; } });
|
|
1953
1936
|
Object.defineProperty(exports, "pruneAllLogs", { enumerable: true, get: function () { return helpers_2.pruneAllLogs; } });
|
|
1954
1937
|
Object.defineProperty(exports, "subscribeMemoryWarning", { enumerable: true, get: function () { return helpers_2.subscribeMemoryWarning; } });
|