react-native-debug-toolkit 3.2.3 → 3.2.5

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 (74) hide show
  1. package/android/src/main/java/com/reactnativedebugtoolkit/DebugToolkitDevConnectModule.java +80 -10
  2. package/ios/DebugToolkitDevConnect.mm +84 -19
  3. package/lib/commonjs/core/initialize.js +15 -3
  4. package/lib/commonjs/core/initialize.js.map +1 -1
  5. package/lib/commonjs/features/devConnect/DevConnectTab.js +121 -58
  6. package/lib/commonjs/features/devConnect/DevConnectTab.js.map +1 -1
  7. package/lib/commonjs/features/devConnect/devConnectPreferences.js +6 -2
  8. package/lib/commonjs/features/devConnect/devConnectPreferences.js.map +1 -1
  9. package/lib/commonjs/features/devConnect/devConnectUtils.js +8 -0
  10. package/lib/commonjs/features/devConnect/devConnectUtils.js.map +1 -1
  11. package/lib/commonjs/features/devConnect/index.js +33 -5
  12. package/lib/commonjs/features/devConnect/index.js.map +1 -1
  13. package/lib/commonjs/features/devConnect/nativeDevConnect.js +26 -0
  14. package/lib/commonjs/features/devConnect/nativeDevConnect.js.map +1 -1
  15. package/lib/commonjs/ui/DebugView.js +10 -2
  16. package/lib/commonjs/ui/DebugView.js.map +1 -1
  17. package/lib/commonjs/utils/DaemonClient.js +5 -0
  18. package/lib/commonjs/utils/DaemonClient.js.map +1 -1
  19. package/lib/module/core/initialize.js +16 -4
  20. package/lib/module/core/initialize.js.map +1 -1
  21. package/lib/module/features/devConnect/DevConnectTab.js +122 -59
  22. package/lib/module/features/devConnect/DevConnectTab.js.map +1 -1
  23. package/lib/module/features/devConnect/devConnectPreferences.js +6 -2
  24. package/lib/module/features/devConnect/devConnectPreferences.js.map +1 -1
  25. package/lib/module/features/devConnect/devConnectUtils.js +7 -0
  26. package/lib/module/features/devConnect/devConnectUtils.js.map +1 -1
  27. package/lib/module/features/devConnect/index.js +30 -7
  28. package/lib/module/features/devConnect/index.js.map +1 -1
  29. package/lib/module/features/devConnect/nativeDevConnect.js +24 -0
  30. package/lib/module/features/devConnect/nativeDevConnect.js.map +1 -1
  31. package/lib/module/ui/DebugView.js +11 -3
  32. package/lib/module/ui/DebugView.js.map +1 -1
  33. package/lib/module/utils/DaemonClient.js +5 -0
  34. package/lib/module/utils/DaemonClient.js.map +1 -1
  35. package/lib/typescript/src/core/initialize.d.ts +4 -2
  36. package/lib/typescript/src/core/initialize.d.ts.map +1 -1
  37. package/lib/typescript/src/features/devConnect/DevConnectTab.d.ts +1 -1
  38. package/lib/typescript/src/features/devConnect/DevConnectTab.d.ts.map +1 -1
  39. package/lib/typescript/src/features/devConnect/devConnectPreferences.d.ts.map +1 -1
  40. package/lib/typescript/src/features/devConnect/devConnectUtils.d.ts +1 -0
  41. package/lib/typescript/src/features/devConnect/devConnectUtils.d.ts.map +1 -1
  42. package/lib/typescript/src/features/devConnect/index.d.ts +1 -0
  43. package/lib/typescript/src/features/devConnect/index.d.ts.map +1 -1
  44. package/lib/typescript/src/features/devConnect/nativeDevConnect.d.ts +2 -0
  45. package/lib/typescript/src/features/devConnect/nativeDevConnect.d.ts.map +1 -1
  46. package/lib/typescript/src/features/devConnect/types.d.ts +5 -1
  47. package/lib/typescript/src/features/devConnect/types.d.ts.map +1 -1
  48. package/lib/typescript/src/ui/DebugView.d.ts.map +1 -1
  49. package/lib/typescript/src/utils/DaemonClient.d.ts +2 -0
  50. package/lib/typescript/src/utils/DaemonClient.d.ts.map +1 -1
  51. package/package.json +2 -10
  52. package/src/core/initialize.ts +17 -5
  53. package/src/features/devConnect/DevConnectTab.tsx +120 -45
  54. package/src/features/devConnect/devConnectPreferences.ts +7 -2
  55. package/src/features/devConnect/devConnectUtils.ts +8 -0
  56. package/src/features/devConnect/index.ts +31 -7
  57. package/src/features/devConnect/nativeDevConnect.ts +28 -0
  58. package/src/features/devConnect/types.ts +9 -1
  59. package/src/ui/DebugView.tsx +12 -3
  60. package/src/utils/DaemonClient.ts +7 -0
  61. package/lib/commonjs/features/devConnect/DevConnectQrScanner.js +0 -248
  62. package/lib/commonjs/features/devConnect/DevConnectQrScanner.js.map +0 -1
  63. package/lib/commonjs/features/devConnect/cameraKit.js +0 -54
  64. package/lib/commonjs/features/devConnect/cameraKit.js.map +0 -1
  65. package/lib/module/features/devConnect/DevConnectQrScanner.js +0 -243
  66. package/lib/module/features/devConnect/DevConnectQrScanner.js.map +0 -1
  67. package/lib/module/features/devConnect/cameraKit.js +0 -49
  68. package/lib/module/features/devConnect/cameraKit.js.map +0 -1
  69. package/lib/typescript/src/features/devConnect/DevConnectQrScanner.d.ts +0 -10
  70. package/lib/typescript/src/features/devConnect/DevConnectQrScanner.d.ts.map +0 -1
  71. package/lib/typescript/src/features/devConnect/cameraKit.d.ts +0 -47
  72. package/lib/typescript/src/features/devConnect/cameraKit.d.ts.map +0 -1
  73. package/src/features/devConnect/DevConnectQrScanner.tsx +0 -214
  74. package/src/features/devConnect/cameraKit.ts +0 -93
@@ -1 +1 @@
1
- {"version":3,"names":["DebugToolkit","createNetworkFeature","addToBlacklist","createConsoleLogFeature","createZustandLogFeature","createNavigationLogFeature","createTrackFeature","createEnvironmentFeature","createClipboardFeature","createDevConnectFeature","restoreDevConnectSettingsToDaemon","daemonClient","isDebugMode","__DEV__","featureRegistry","network","console","zustand","navigation","track","environment","clipboard","devConnect","DEFAULT_FEATURES","resolveFeatureConfigs","configs","features","entries","Object","name","config","creator","warn","undefined","push","resolveDefaultFeatures","map","initializeDebugToolkit","options","enabled","resolvedFeatures","setEnabled","reset","replaceFeatures","setEndpointDetector","url","hasFeatures","showLauncher","hideLauncher","then","restore","catch","error"],"sourceRoot":"../../../src","sources":["core/initialize.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DebugToolkit","createNetworkFeature","addToBlacklist","createConsoleLogFeature","createZustandLogFeature","createNavigationLogFeature","createTrackFeature","createEnvironmentFeature","createClipboardFeature","createDevConnectFeature","restoreDevConnectSettingsToDaemon","nativeIsDebugBuild","daemonClient","isDebugMode","__DEV__","featureRegistry","network","console","zustand","navigation","track","environment","clipboard","devConnect","DEFAULT_FEATURES","resolveFeatureConfigs","configs","features","entries","Object","name","config","creator","warn","undefined","push","resolveDefaultFeatures","map","initializeDebugToolkit","options","enabled","nativeResult","resolvedFeatures","setEnabled","reset","replaceFeatures","setEndpointDetector","url","hasFeatures","showLauncher","hideLauncher","then","restore","catch","error"],"sourceRoot":"../../../src","sources":["core/initialize.ts"],"mappings":"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","ignoreList":[]}
@@ -5,9 +5,8 @@ import { KeyboardAvoidingView, Platform, ScrollView, StyleSheet, Text, TextInput
5
5
  import { Colors } from '../../ui/theme/colors';
6
6
  import { buildDeviceDaemonEndpoint, daemonClient, getDefaultDaemonEndpoint, normalizeDaemonSettings } from '../../utils/DaemonClient';
7
7
  import { DEFAULT_DAEMON_PORT, DEFAULT_METRO_PORT, buildDaemonDeviceHost, buildMetroTarget, buildMetroUrls, normalizeComputerHost, normalizePort, parseComputerTarget } from './devConnectUtils';
8
- import { saveComputerTarget, saveDaemonPort, saveMetroPort } from './devConnectPreferences';
8
+ import { saveComputerHost, saveComputerTarget, saveDaemonPort, saveMetroPort } from './devConnectPreferences';
9
9
  import { applyMetroBundle, resetMetroBundle } from './nativeDevConnect';
10
- import { DevConnectQrScanner } from './DevConnectQrScanner';
11
10
  import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
12
11
  const CONNECTION_TIMEOUT_MS = 2000;
13
12
  function getSimulatorMetroHost() {
@@ -29,7 +28,8 @@ function describeMetroFailure(result) {
29
28
  return result.error ? `Metro switch failed: ${result.error}` : 'Metro switch failed.';
30
29
  }
31
30
  export function DevConnectTab({
32
- snapshot
31
+ snapshot,
32
+ feature
33
33
  }) {
34
34
  const inputRef = useRef(null);
35
35
  const [computerHost, setComputerHost] = useState(snapshot.computerHost);
@@ -40,15 +40,23 @@ export function DevConnectTab({
40
40
  const [message, setMessage] = useState(null);
41
41
  const [sending, setSending] = useState(false);
42
42
  const [metroBusy, setMetroBusy] = useState(false);
43
- const [qrVisible, setQrVisible] = useState(false);
44
43
  const isSim = snapshot.isSimulator;
44
+ const updateFeatureSettings = useCallback(patch => {
45
+ feature.updateSettings?.(patch);
46
+ }, [feature]);
45
47
  useEffect(() => {
46
48
  setComputerHost(snapshot.computerHost);
49
+ }, [snapshot.computerHost]);
50
+ useEffect(() => {
47
51
  setMetroPort(snapshot.metroPort);
52
+ }, [snapshot.metroPort]);
53
+ useEffect(() => {
48
54
  setDaemonPort(snapshot.daemonPort);
55
+ }, [snapshot.daemonPort]);
56
+ useEffect(() => {
49
57
  setStreaming(snapshot.streaming);
50
58
  setSyncState(snapshot.streaming ? 'running' : 'idle');
51
- }, [snapshot.computerHost, snapshot.daemonPort, snapshot.metroPort, snapshot.streaming]);
59
+ }, [snapshot.streaming]);
52
60
  const metroHost = isSim ? getSimulatorMetroHost() : computerHost;
53
61
  const metroTarget = useMemo(() => buildMetroTarget(metroHost, metroPort), [metroHost, metroPort]);
54
62
  const metroUrls = useMemo(() => buildMetroUrls(metroHost, metroPort), [metroHost, metroPort]);
@@ -57,33 +65,88 @@ export function DevConnectTab({
57
65
  const target = parseComputerTarget(value);
58
66
  if (target) {
59
67
  setMetroPort(target.metroPort);
60
- saveComputerTarget(value).catch(() => {});
68
+ saveComputerTarget(value).then(savedTarget => {
69
+ if (savedTarget) {
70
+ updateFeatureSettings({
71
+ computerHost: savedTarget.computerHost,
72
+ metroPort: savedTarget.metroPort
73
+ });
74
+ }
75
+ }).catch(() => {});
61
76
  }
62
77
  setSyncState(prev => prev === 'failed' ? 'idle' : prev);
63
78
  setMessage(null);
64
- }, []);
79
+ }, [updateFeatureSettings]);
65
80
  const handleMetroPortChange = useCallback(value => {
66
81
  setMetroPort(value);
67
82
  const normalized = normalizePort(value);
68
83
  if (normalized) {
69
- saveMetroPort(normalized).catch(() => {});
84
+ saveMetroPort(normalized).then(() => updateFeatureSettings({
85
+ metroPort: normalized
86
+ })).catch(() => {});
70
87
  }
71
88
  setMessage(null);
72
- }, []);
89
+ }, [updateFeatureSettings]);
73
90
  const handleDaemonPortChange = useCallback(value => {
74
91
  setDaemonPort(value);
75
92
  const normalized = normalizePort(value);
76
93
  if (normalized) {
77
- saveDaemonPort(normalized).catch(() => {});
94
+ saveDaemonPort(normalized).then(() => updateFeatureSettings({
95
+ daemonPort: normalized
96
+ })).catch(() => {});
78
97
  }
79
98
  setMessage(null);
80
- }, []);
81
- const handleQrTarget = useCallback(target => {
82
- setComputerHost(target.computerHost);
83
- setMetroPort(target.metroPort);
84
- saveComputerTarget(`${target.computerHost}:${target.metroPort}`).catch(() => {});
85
- setMessage('Computer IP updated from QR code.');
86
- }, []);
99
+ }, [updateFeatureSettings]);
100
+ const persistConnectionSettings = useCallback(async () => {
101
+ const normalizedDaemonPort = normalizePort(daemonPort);
102
+ if (!normalizedDaemonPort) {
103
+ setMessage('Enter a valid desktop logs port.');
104
+ return false;
105
+ }
106
+ const patch = {
107
+ daemonPort: normalizedDaemonPort
108
+ };
109
+ const writes = [saveDaemonPort(normalizedDaemonPort)];
110
+ setDaemonPort(normalizedDaemonPort);
111
+ if (!isSim) {
112
+ const normalizedHost = normalizeComputerHost(computerHost);
113
+ if (!normalizedHost) {
114
+ setMessage('Enter your computer IP first.');
115
+ return false;
116
+ }
117
+ patch.computerHost = normalizedHost;
118
+ writes.push(saveComputerHost(normalizedHost));
119
+ setComputerHost(normalizedHost);
120
+ }
121
+ const normalizedMetroPort = normalizePort(metroPort);
122
+ if (normalizedMetroPort) {
123
+ patch.metroPort = normalizedMetroPort;
124
+ writes.push(saveMetroPort(normalizedMetroPort));
125
+ setMetroPort(normalizedMetroPort);
126
+ }
127
+ await Promise.all(writes);
128
+ updateFeatureSettings(patch);
129
+ return true;
130
+ }, [computerHost, daemonPort, isSim, metroPort, updateFeatureSettings]);
131
+ const persistMetroSettings = useCallback(async () => {
132
+ if (!metroTarget) {
133
+ setMessage('Enter a valid computer IP and Metro port.');
134
+ return false;
135
+ }
136
+ const patch = {
137
+ metroPort: metroTarget.port
138
+ };
139
+ const writes = [saveMetroPort(metroTarget.port)];
140
+ setMetroPort(metroTarget.port);
141
+ if (!isSim) {
142
+ patch.computerHost = metroTarget.host;
143
+ writes.push(saveComputerTarget(metroTarget.hostPort));
144
+ setComputerHost(metroTarget.host);
145
+ }
146
+ await Promise.all(writes);
147
+ updateFeatureSettings(patch);
148
+ return true;
149
+ }, [isSim, metroTarget, updateFeatureSettings]);
87
150
  const validateSettings = useCallback(() => {
88
151
  if (!isSim && !normalizeComputerHost(computerHost)) {
89
152
  setMessage('Enter your computer IP first.');
@@ -125,6 +188,9 @@ export function DevConnectTab({
125
188
  if (!validateSettings()) {
126
189
  return;
127
190
  }
191
+ if (!(await persistConnectionSettings())) {
192
+ return;
193
+ }
128
194
  const daemonOptions = configureDaemon();
129
195
  setMessage('Checking desktop connection...');
130
196
  setSyncState('checking');
@@ -160,11 +226,14 @@ export function DevConnectTab({
160
226
  }
161
227
  });
162
228
  setStreaming(true);
163
- }, [configureDaemon, streaming, validateSettings]);
229
+ }, [configureDaemon, persistConnectionSettings, streaming, validateSettings]);
164
230
  const sendOnce = useCallback(async () => {
165
231
  if (!validateSettings()) {
166
232
  return;
167
233
  }
234
+ if (!(await persistConnectionSettings())) {
235
+ return;
236
+ }
168
237
  const daemonOptions = configureDaemon();
169
238
  setSending(true);
170
239
  setMessage('Checking desktop connection...');
@@ -191,7 +260,7 @@ export function DevConnectTab({
191
260
  } finally {
192
261
  setSending(false);
193
262
  }
194
- }, [configureDaemon, validateSettings]);
263
+ }, [configureDaemon, persistConnectionSettings, validateSettings]);
195
264
  const applyRemoteBundle = useCallback(async () => {
196
265
  if (!metroTarget) {
197
266
  setMessage('Enter a valid computer IP and Metro port.');
@@ -206,6 +275,9 @@ export function DevConnectTab({
206
275
  setMetroBusy(true);
207
276
  setMessage('Checking Metro...');
208
277
  try {
278
+ if (!(await persistMetroSettings())) {
279
+ return;
280
+ }
209
281
  const result = await applyMetroBundle(metroTarget.host, metroTarget.port);
210
282
  if (result.ok) {
211
283
  setMessage(`Using Metro at ${result.hostPort}. Reloading...`);
@@ -215,7 +287,7 @@ export function DevConnectTab({
215
287
  } finally {
216
288
  setMetroBusy(false);
217
289
  }
218
- }, [metroTarget, snapshot.nativeMetroAvailable]);
290
+ }, [metroTarget, persistMetroSettings, snapshot.nativeMetroAvailable]);
219
291
  const resetRemoteBundle = useCallback(async () => {
220
292
  if (!snapshot.nativeMetroAvailable) {
221
293
  setMessage(describeMetroFailure({
@@ -238,10 +310,12 @@ export function DevConnectTab({
238
310
  const canConnect = isSim || Boolean(normalizeComputerHost(computerHost)) && Boolean(normalizePort(daemonPort));
239
311
  const canUseMetro = Boolean(metroTarget) && snapshot.nativeMetroAvailable && !metroBusy;
240
312
  const busy = sending || syncState === 'checking';
241
- return /*#__PURE__*/_jsxs(KeyboardAvoidingView, {
313
+ const subnetPrefix = snapshot.subnetPrefix;
314
+ const ipPlaceholder = subnetPrefix ? `${subnetPrefix}...` : '192.168.1.10';
315
+ return /*#__PURE__*/_jsx(KeyboardAvoidingView, {
242
316
  style: styles.container,
243
317
  behavior: Platform.OS === 'ios' ? 'padding' : undefined,
244
- children: [/*#__PURE__*/_jsxs(ScrollView, {
318
+ children: /*#__PURE__*/_jsxs(ScrollView, {
245
319
  keyboardShouldPersistTaps: "handled",
246
320
  showsVerticalScrollIndicator: false,
247
321
  contentContainerStyle: styles.scrollContent,
@@ -256,14 +330,14 @@ export function DevConnectTab({
256
330
  children: [/*#__PURE__*/_jsx(Text, {
257
331
  style: styles.label,
258
332
  children: "Computer IP"
259
- }), /*#__PURE__*/_jsxs(View, {
333
+ }), /*#__PURE__*/_jsx(View, {
260
334
  style: styles.inputRow,
261
- children: [/*#__PURE__*/_jsx(TextInput, {
335
+ children: /*#__PURE__*/_jsx(TextInput, {
262
336
  ref: inputRef,
263
337
  style: styles.input,
264
338
  value: computerHost,
265
339
  onChangeText: handleHostChange,
266
- placeholder: "192.168.1.10",
340
+ placeholder: ipPlaceholder,
267
341
  placeholderTextColor: Colors.textLight,
268
342
  autoCapitalize: "none",
269
343
  autoCorrect: false,
@@ -271,17 +345,19 @@ export function DevConnectTab({
271
345
  returnKeyType: "done",
272
346
  onSubmitEditing: () => inputRef.current?.blur(),
273
347
  editable: !streaming
274
- }), snapshot.qrAvailable ? /*#__PURE__*/_jsx(TouchableOpacity, {
275
- style: styles.scanButton,
276
- onPress: () => setQrVisible(true),
277
- disabled: streaming,
278
- activeOpacity: 0.7,
279
- children: /*#__PURE__*/_jsx(Text, {
280
- style: styles.scanButtonText,
281
- children: "Scan"
282
- })
283
- }) : null]
284
- })]
348
+ })
349
+ }), subnetPrefix && !computerHost ? /*#__PURE__*/_jsx(TouchableOpacity, {
350
+ style: styles.subnetHint,
351
+ onPress: () => {
352
+ setComputerHost(subnetPrefix);
353
+ inputRef.current?.focus();
354
+ },
355
+ activeOpacity: 0.6,
356
+ children: /*#__PURE__*/_jsxs(Text, {
357
+ style: styles.subnetHintText,
358
+ children: ["Tap to fill: ", subnetPrefix]
359
+ })
360
+ }) : null]
285
361
  }), /*#__PURE__*/_jsxs(View, {
286
362
  style: styles.section,
287
363
  children: [/*#__PURE__*/_jsx(Text, {
@@ -410,11 +486,7 @@ export function DevConnectTab({
410
486
  children: "Native DevConnect requires pod install / Gradle sync and app rebuild."
411
487
  }) : null]
412
488
  })]
413
- }), /*#__PURE__*/_jsx(DevConnectQrScanner, {
414
- visible: qrVisible,
415
- onClose: () => setQrVisible(false),
416
- onScanTarget: handleQrTarget
417
- })]
489
+ })
418
490
  });
419
491
  }
420
492
  const styles = StyleSheet.create({
@@ -463,8 +535,15 @@ const styles = StyleSheet.create({
463
535
  },
464
536
  inputRow: {
465
537
  flexDirection: 'row',
466
- alignItems: 'center',
467
- gap: 8
538
+ alignItems: 'center'
539
+ },
540
+ subnetHint: {
541
+ marginTop: 6
542
+ },
543
+ subnetHintText: {
544
+ fontSize: 12,
545
+ color: Colors.primary,
546
+ fontWeight: '500'
468
547
  },
469
548
  input: {
470
549
  flex: 1,
@@ -478,22 +557,6 @@ const styles = StyleSheet.create({
478
557
  color: Colors.text,
479
558
  fontFamily: 'Courier'
480
559
  },
481
- scanButton: {
482
- minWidth: 62,
483
- alignItems: 'center',
484
- justifyContent: 'center',
485
- paddingHorizontal: 12,
486
- paddingVertical: 10,
487
- borderRadius: 8,
488
- backgroundColor: Colors.surface,
489
- borderWidth: 1,
490
- borderColor: Colors.primary
491
- },
492
- scanButtonText: {
493
- color: Colors.primary,
494
- fontSize: 13,
495
- fontWeight: '600'
496
- },
497
560
  portRow: {
498
561
  flexDirection: 'row',
499
562
  gap: 10
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","KeyboardAvoidingView","Platform","ScrollView","StyleSheet","Text","TextInput","TouchableOpacity","View","Colors","buildDeviceDaemonEndpoint","daemonClient","getDefaultDaemonEndpoint","normalizeDaemonSettings","DEFAULT_DAEMON_PORT","DEFAULT_METRO_PORT","buildDaemonDeviceHost","buildMetroTarget","buildMetroUrls","normalizeComputerHost","normalizePort","parseComputerTarget","saveComputerTarget","saveDaemonPort","saveMetroPort","applyMetroBundle","resetMetroBundle","DevConnectQrScanner","jsxs","_jsxs","jsx","_jsx","CONNECTION_TIMEOUT_MS","getSimulatorMetroHost","OS","describeMetroFailure","result","reason","error","DevConnectTab","snapshot","inputRef","computerHost","setComputerHost","metroPort","setMetroPort","daemonPort","setDaemonPort","streaming","setStreaming","syncState","setSyncState","message","setMessage","sending","setSending","metroBusy","setMetroBusy","qrVisible","setQrVisible","isSim","isSimulator","metroHost","metroTarget","metroUrls","handleHostChange","value","target","catch","prev","handleMetroPortChange","normalized","handleDaemonPortChange","handleQrTarget","validateSettings","configureDaemon","normalizedHost","normalizedDaemonPort","deviceHost","settings","mode","endpoint","token","configure","toggleLiveSync","disconnect","setStreamingEnabled","daemonOptions","connection","checkConnection","timeoutMs","ok","connect","onStatus","status","state","sendOnce","reportOnce","totalLogs","Object","values","logCount","reduce","total","count","applyRemoteBundle","nativeMetroAvailable","host","port","hostPort","resetRemoteBundle","canConnect","Boolean","canUseMetro","busy","style","styles","container","behavior","undefined","children","keyboardShouldPersistTaps","showsVerticalScrollIndicator","contentContainerStyle","scrollContent","badge","badgeText","section","label","inputRow","ref","input","onChangeText","placeholder","placeholderTextColor","textLight","autoCapitalize","autoCorrect","keyboardType","returnKeyType","onSubmitEditing","current","blur","editable","qrAvailable","scanButton","onPress","disabled","activeOpacity","scanButtonText","portRow","portField","portLabel","portInput","actions","primaryButton","buttonDisabled","primaryButtonText","secondaryButton","secondaryButtonText","sectionTitle","sectionDesc","stepCard","stepHint","urlRow","urlLabel","urlText","numberOfLines","httpUrl","expUrl","hint","visible","onClose","onScanTarget","create","flex","paddingHorizontal","paddingTop","paddingBottom","paddingVertical","borderRadius","backgroundColor","primary","borderWidth","borderColor","marginBottom","fontSize","fontWeight","color","text","textSecondary","lineHeight","flexDirection","alignItems","gap","surface","border","fontFamily","minWidth","justifyContent","marginTop","opacity","padding","marginRight","textAlign","borderBottomWidth","hairlineWidth","borderBottomColor"],"sourceRoot":"../../../../src","sources":["features/devConnect/DevConnectTab.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","KeyboardAvoidingView","Platform","ScrollView","StyleSheet","Text","TextInput","TouchableOpacity","View","Colors","buildDeviceDaemonEndpoint","daemonClient","getDefaultDaemonEndpoint","normalizeDaemonSettings","DEFAULT_DAEMON_PORT","DEFAULT_METRO_PORT","buildDaemonDeviceHost","buildMetroTarget","buildMetroUrls","normalizeComputerHost","normalizePort","parseComputerTarget","saveComputerHost","saveComputerTarget","saveDaemonPort","saveMetroPort","applyMetroBundle","resetMetroBundle","jsxs","_jsxs","jsx","_jsx","CONNECTION_TIMEOUT_MS","getSimulatorMetroHost","OS","describeMetroFailure","result","reason","error","DevConnectTab","snapshot","feature","inputRef","computerHost","setComputerHost","metroPort","setMetroPort","daemonPort","setDaemonPort","streaming","setStreaming","syncState","setSyncState","message","setMessage","sending","setSending","metroBusy","setMetroBusy","isSim","isSimulator","updateFeatureSettings","patch","updateSettings","metroHost","metroTarget","metroUrls","handleHostChange","value","target","then","savedTarget","catch","prev","handleMetroPortChange","normalized","handleDaemonPortChange","persistConnectionSettings","normalizedDaemonPort","writes","normalizedHost","push","normalizedMetroPort","Promise","all","persistMetroSettings","port","host","hostPort","validateSettings","configureDaemon","deviceHost","settings","mode","endpoint","token","configure","toggleLiveSync","disconnect","setStreamingEnabled","daemonOptions","connection","checkConnection","timeoutMs","ok","connect","onStatus","status","state","sendOnce","reportOnce","totalLogs","Object","values","logCount","reduce","total","count","applyRemoteBundle","nativeMetroAvailable","resetRemoteBundle","canConnect","Boolean","canUseMetro","busy","subnetPrefix","ipPlaceholder","style","styles","container","behavior","undefined","children","keyboardShouldPersistTaps","showsVerticalScrollIndicator","contentContainerStyle","scrollContent","badge","badgeText","section","label","inputRow","ref","input","onChangeText","placeholder","placeholderTextColor","textLight","autoCapitalize","autoCorrect","keyboardType","returnKeyType","onSubmitEditing","current","blur","editable","subnetHint","onPress","focus","activeOpacity","subnetHintText","portRow","portField","portLabel","portInput","actions","primaryButton","buttonDisabled","disabled","primaryButtonText","secondaryButton","secondaryButtonText","sectionTitle","sectionDesc","stepCard","stepHint","urlRow","urlLabel","urlText","numberOfLines","httpUrl","expUrl","hint","create","flex","paddingHorizontal","paddingTop","paddingBottom","paddingVertical","borderRadius","backgroundColor","primary","borderWidth","borderColor","marginBottom","fontSize","fontWeight","color","text","textSecondary","lineHeight","flexDirection","alignItems","marginTop","surface","border","fontFamily","gap","justifyContent","opacity","padding","minWidth","marginRight","textAlign","borderBottomWidth","hairlineWidth","borderBottomColor"],"sourceRoot":"../../../../src","sources":["features/devConnect/DevConnectTab.tsx"],"mappings":"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","ignoreList":[]}
@@ -24,8 +24,12 @@ export async function saveComputerTarget(value) {
24
24
  return target;
25
25
  }
26
26
  export async function saveComputerHost(value) {
27
- const target = await saveComputerTarget(value);
28
- return target?.computerHost ?? null;
27
+ const host = normalizeComputerHost(value);
28
+ if (!host) {
29
+ return null;
30
+ }
31
+ await setPreference(KEYS.computerHost, host);
32
+ return host;
29
33
  }
30
34
  export async function saveMetroPort(value) {
31
35
  const normalized = normalizePort(value);
@@ -1 +1 @@
1
- {"version":3,"names":["daemonClient","getPreference","KEYS","setPreference","DEFAULT_DAEMON_PORT","DEFAULT_METRO_PORT","buildDaemonDeviceHost","normalizeComputerHost","normalizePort","parseComputerTarget","isSimulator","loadDevConnectPreferences","storedHost","computerHost","storedMetroPort","metroPort","storedDaemonPort","daemonPort","saveComputerTarget","value","target","saveComputerHost","saveMetroPort","normalized","saveDaemonPort","restoreDevConnectSettingsToDaemon","preferences","mode","configure","endpoint","deviceHost","token"],"sourceRoot":"../../../../src","sources":["features/devConnect/devConnectPreferences.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,0BAA0B;AACvD,SAASC,aAAa,EAAEC,IAAI,EAAEC,aAAa,QAAQ,8BAA8B;AACjF,SACEC,mBAAmB,EACnBC,kBAAkB,EAClBC,qBAAqB,EACrBC,qBAAqB,EACrBC,aAAa,EACbC,mBAAmB,QAEd,mBAAmB;AAC1B,SAASC,WAAW,QAAQ,kBAAkB;AAQ9C,OAAO,eAAeC,yBAAyBA,CAAA,EAAmC;EAChF,MAAMC,UAAU,GAAG,MAAMX,aAAa,CAACC,IAAI,CAACW,YAAY,CAAC;EACzD,MAAMC,eAAe,GAAG,MAAMb,aAAa,CAACC,IAAI,CAACa,SAAS,CAAC;EAC3D,MAAMC,gBAAgB,GAAG,MAAMf,aAAa,CAACC,IAAI,CAACe,UAAU,CAAC;EAC7D,OAAO;IACLJ,YAAY,EAAED,UAAU,GAAGL,qBAAqB,CAACK,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE;IACvEG,SAAS,EAAED,eAAe,GAAGN,aAAa,CAACM,eAAe,CAAC,IAAIT,kBAAkB,GAAGA,kBAAkB;IACtGY,UAAU,EAAED,gBAAgB,GAAGR,aAAa,CAACQ,gBAAgB,CAAC,IAAIZ,mBAAmB,GAAGA;EAC1F,CAAC;AACH;AAEA,OAAO,eAAec,kBAAkBA,CAACC,KAAa,EAAwC;EAC5F,MAAMC,MAAM,GAAGX,mBAAmB,CAACU,KAAK,CAAC;EACzC,IAAI,CAACC,MAAM,EAAE;IACX,OAAO,IAAI;EACb;EAEA,MAAMjB,aAAa,CAACD,IAAI,CAACW,YAAY,EAAEO,MAAM,CAACP,YAAY,CAAC;EAC3D,MAAMV,aAAa,CAACD,IAAI,CAACa,SAAS,EAAEK,MAAM,CAACL,SAAS,CAAC;EACrD,OAAOK,MAAM;AACf;AAEA,OAAO,eAAeC,gBAAgBA,CAACF,KAAa,EAA0B;EAC5E,MAAMC,MAAM,GAAG,MAAMF,kBAAkB,CAACC,KAAK,CAAC;EAC9C,OAAOC,MAAM,EAAEP,YAAY,IAAI,IAAI;AACrC;AAEA,OAAO,eAAeS,aAAaA,CAACH,KAAa,EAA0B;EACzE,MAAMI,UAAU,GAAGf,aAAa,CAACW,KAAK,CAAC;EACvC,IAAI,CAACI,UAAU,EAAE;IACf,OAAO,IAAI;EACb;EAEA,MAAMpB,aAAa,CAACD,IAAI,CAACa,SAAS,EAAEQ,UAAU,CAAC;EAC/C,OAAOA,UAAU;AACnB;AAEA,OAAO,eAAeC,cAAcA,CAACL,KAAa,EAA0B;EAC1E,MAAMI,UAAU,GAAGf,aAAa,CAACW,KAAK,CAAC;EACvC,IAAI,CAACI,UAAU,EAAE;IACf,OAAO,IAAI;EACb;EAEA,MAAMpB,aAAa,CAACD,IAAI,CAACe,UAAU,EAAEM,UAAU,CAAC;EAChD,OAAOA,UAAU;AACnB;AAEA,OAAO,eAAeE,iCAAiCA,CAAA,EAAkB;EACvE,MAAMC,WAAW,GAAG,MAAMf,yBAAyB,CAAC,CAAC;EACrD,MAAMgB,IAAI,GAAGjB,WAAW,CAAC,CAAC,GAAG,WAAW,GAAY,QAAiB;EACrEV,YAAY,CAAC4B,SAAS,CAAC;IACrBD,IAAI;IACJE,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAEH,IAAI,KAAK,WAAW,GAC5B,EAAE,GACFrB,qBAAqB,CAACoB,WAAW,CAACb,YAAY,EAAEa,WAAW,CAACT,UAAU,CAAC;IAC3Ec,KAAK,EAAE;EACT,CAAC,CAAC;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["daemonClient","getPreference","KEYS","setPreference","DEFAULT_DAEMON_PORT","DEFAULT_METRO_PORT","buildDaemonDeviceHost","normalizeComputerHost","normalizePort","parseComputerTarget","isSimulator","loadDevConnectPreferences","storedHost","computerHost","storedMetroPort","metroPort","storedDaemonPort","daemonPort","saveComputerTarget","value","target","saveComputerHost","host","saveMetroPort","normalized","saveDaemonPort","restoreDevConnectSettingsToDaemon","preferences","mode","configure","endpoint","deviceHost","token"],"sourceRoot":"../../../../src","sources":["features/devConnect/devConnectPreferences.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,0BAA0B;AACvD,SAASC,aAAa,EAAEC,IAAI,EAAEC,aAAa,QAAQ,8BAA8B;AACjF,SACEC,mBAAmB,EACnBC,kBAAkB,EAClBC,qBAAqB,EACrBC,qBAAqB,EACrBC,aAAa,EACbC,mBAAmB,QAEd,mBAAmB;AAC1B,SAASC,WAAW,QAAQ,kBAAkB;AAQ9C,OAAO,eAAeC,yBAAyBA,CAAA,EAAmC;EAChF,MAAMC,UAAU,GAAG,MAAMX,aAAa,CAACC,IAAI,CAACW,YAAY,CAAC;EACzD,MAAMC,eAAe,GAAG,MAAMb,aAAa,CAACC,IAAI,CAACa,SAAS,CAAC;EAC3D,MAAMC,gBAAgB,GAAG,MAAMf,aAAa,CAACC,IAAI,CAACe,UAAU,CAAC;EAC7D,OAAO;IACLJ,YAAY,EAAED,UAAU,GAAGL,qBAAqB,CAACK,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE;IACvEG,SAAS,EAAED,eAAe,GAAGN,aAAa,CAACM,eAAe,CAAC,IAAIT,kBAAkB,GAAGA,kBAAkB;IACtGY,UAAU,EAAED,gBAAgB,GAAGR,aAAa,CAACQ,gBAAgB,CAAC,IAAIZ,mBAAmB,GAAGA;EAC1F,CAAC;AACH;AAEA,OAAO,eAAec,kBAAkBA,CAACC,KAAa,EAAwC;EAC5F,MAAMC,MAAM,GAAGX,mBAAmB,CAACU,KAAK,CAAC;EACzC,IAAI,CAACC,MAAM,EAAE;IACX,OAAO,IAAI;EACb;EAEA,MAAMjB,aAAa,CAACD,IAAI,CAACW,YAAY,EAAEO,MAAM,CAACP,YAAY,CAAC;EAC3D,MAAMV,aAAa,CAACD,IAAI,CAACa,SAAS,EAAEK,MAAM,CAACL,SAAS,CAAC;EACrD,OAAOK,MAAM;AACf;AAEA,OAAO,eAAeC,gBAAgBA,CAACF,KAAa,EAA0B;EAC5E,MAAMG,IAAI,GAAGf,qBAAqB,CAACY,KAAK,CAAC;EACzC,IAAI,CAACG,IAAI,EAAE;IACT,OAAO,IAAI;EACb;EAEA,MAAMnB,aAAa,CAACD,IAAI,CAACW,YAAY,EAAES,IAAI,CAAC;EAC5C,OAAOA,IAAI;AACb;AAEA,OAAO,eAAeC,aAAaA,CAACJ,KAAa,EAA0B;EACzE,MAAMK,UAAU,GAAGhB,aAAa,CAACW,KAAK,CAAC;EACvC,IAAI,CAACK,UAAU,EAAE;IACf,OAAO,IAAI;EACb;EAEA,MAAMrB,aAAa,CAACD,IAAI,CAACa,SAAS,EAAES,UAAU,CAAC;EAC/C,OAAOA,UAAU;AACnB;AAEA,OAAO,eAAeC,cAAcA,CAACN,KAAa,EAA0B;EAC1E,MAAMK,UAAU,GAAGhB,aAAa,CAACW,KAAK,CAAC;EACvC,IAAI,CAACK,UAAU,EAAE;IACf,OAAO,IAAI;EACb;EAEA,MAAMrB,aAAa,CAACD,IAAI,CAACe,UAAU,EAAEO,UAAU,CAAC;EAChD,OAAOA,UAAU;AACnB;AAEA,OAAO,eAAeE,iCAAiCA,CAAA,EAAkB;EACvE,MAAMC,WAAW,GAAG,MAAMhB,yBAAyB,CAAC,CAAC;EACrD,MAAMiB,IAAI,GAAGlB,WAAW,CAAC,CAAC,GAAG,WAAW,GAAY,QAAiB;EACrEV,YAAY,CAAC6B,SAAS,CAAC;IACrBD,IAAI;IACJE,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAEH,IAAI,KAAK,WAAW,GAC5B,EAAE,GACFtB,qBAAqB,CAACqB,WAAW,CAACd,YAAY,EAAEc,WAAW,CAACV,UAAU,CAAC;IAC3Ee,KAAK,EAAE;EACT,CAAC,CAAC;AACJ","ignoreList":[]}
@@ -123,4 +123,11 @@ export function buildDaemonDeviceHost(computerHost, daemonPort) {
123
123
  const port = normalizePort(daemonPort) ?? DEFAULT_DAEMON_PORT;
124
124
  return port === DEFAULT_DAEMON_PORT ? host : `${host}:${port}`;
125
125
  }
126
+ export function extractSubnetPrefix(ip) {
127
+ if (!isValidIpv4(ip)) {
128
+ return null;
129
+ }
130
+ const parts = ip.split('.');
131
+ return `${parts[0]}.${parts[1]}.${parts[2]}.`;
132
+ }
126
133
  //# sourceMappingURL=devConnectUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_METRO_PORT","DEFAULT_DAEMON_PORT","isValidIpv4","host","parts","split","length","every","part","test","value","Number","String","toUrlInput","raw","trimmed","trim","parseHostAndPort","parsed","URL","hostname","port","normalizeComputerHost","normalizePort","isInteger","parseComputerTarget","metroPort","computerHost","normalizeMetroHost","rawHost","buildMetroTarget","rawPort","hostPort","statusUrl","buildMetroUrls","target","expUrl","httpUrl","parseMetroQrPayload","payload","source","buildDaemonDeviceHost","daemonPort"],"sourceRoot":"../../../../src","sources":["features/devConnect/devConnectUtils.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DEFAULT_METRO_PORT","DEFAULT_DAEMON_PORT","isValidIpv4","host","parts","split","length","every","part","test","value","Number","String","toUrlInput","raw","trimmed","trim","parseHostAndPort","parsed","URL","hostname","port","normalizeComputerHost","normalizePort","isInteger","parseComputerTarget","metroPort","computerHost","normalizeMetroHost","rawHost","buildMetroTarget","rawPort","hostPort","statusUrl","buildMetroUrls","target","expUrl","httpUrl","parseMetroQrPayload","payload","source","buildDaemonDeviceHost","daemonPort","extractSubnetPrefix","ip"],"sourceRoot":"../../../../src","sources":["features/devConnect/devConnectUtils.ts"],"mappings":"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","ignoreList":[]}
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
 
3
3
  import { DevConnectTab } from './DevConnectTab';
4
- import { isCameraKitAvailable } from './cameraKit';
5
4
  import { loadDevConnectPreferences } from './devConnectPreferences';
6
- import { DEFAULT_DAEMON_PORT, DEFAULT_METRO_PORT } from './devConnectUtils';
7
- import { isNativeDevConnectAvailable } from './nativeDevConnect';
5
+ import { DEFAULT_DAEMON_PORT, DEFAULT_METRO_PORT, extractSubnetPrefix } from './devConnectUtils';
6
+ import { getDeviceLocalIp, isNativeDevConnectAvailable } from './nativeDevConnect';
8
7
  import { isSimulator } from './platformDetect';
9
8
  import { daemonClient } from '../../utils/DaemonClient';
10
9
  export { buildMetroUrls, normalizeComputerHost, normalizePort, parseComputerTarget, parseMetroQrPayload } from './devConnectUtils';
11
10
  export { loadDevConnectPreferences, restoreDevConnectSettingsToDaemon, saveComputerHost, saveComputerTarget, saveDaemonPort, saveMetroPort } from './devConnectPreferences';
11
+ export { nativeIsDebugBuild } from './nativeDevConnect';
12
12
  export const createDevConnectFeature = () => {
13
13
  const listeners = new Set();
14
14
  let state = {
@@ -16,7 +16,6 @@ export const createDevConnectFeature = () => {
16
16
  computerHost: '',
17
17
  metroPort: DEFAULT_METRO_PORT,
18
18
  daemonPort: DEFAULT_DAEMON_PORT,
19
- qrAvailable: isCameraKitAvailable(),
20
19
  nativeMetroAvailable: isNativeDevConnectAvailable(),
21
20
  streaming: daemonClient.isConnected()
22
21
  };
@@ -27,12 +26,20 @@ export const createDevConnectFeature = () => {
27
26
  };
28
27
  listeners.forEach(listener => listener());
29
28
  };
30
- return {
29
+ const updateSettings = patch => {
30
+ state = {
31
+ ...state,
32
+ ...patch
33
+ };
34
+ notify();
35
+ };
36
+ const feature = {
31
37
  name: 'devConnect',
32
38
  label: 'DevConnect',
33
39
  renderContent: DevConnectTab,
34
40
  setup() {
35
- loadDevConnectPreferences().then(preferences => {
41
+ daemonClient.setOnConnectionChange(() => notify());
42
+ loadDevConnectPreferences().then(async preferences => {
36
43
  state = {
37
44
  ...state,
38
45
  computerHost: preferences.computerHost,
@@ -40,6 +47,20 @@ export const createDevConnectFeature = () => {
40
47
  daemonPort: preferences.daemonPort,
41
48
  nativeMetroAvailable: isNativeDevConnectAvailable()
42
49
  };
50
+ if (!state.isSimulator) {
51
+ try {
52
+ const localIp = await getDeviceLocalIp();
53
+ if (localIp) {
54
+ const prefix = extractSubnetPrefix(localIp);
55
+ if (prefix) {
56
+ state = {
57
+ ...state,
58
+ subnetPrefix: prefix
59
+ };
60
+ }
61
+ }
62
+ } catch {/* subnetPrefix stays undefined */}
63
+ }
43
64
  notify();
44
65
  }).catch(() => {
45
66
  notify();
@@ -54,7 +75,9 @@ export const createDevConnectFeature = () => {
54
75
  return () => {
55
76
  listeners.delete(listener);
56
77
  };
57
- }
78
+ },
79
+ updateSettings
58
80
  };
81
+ return feature;
59
82
  };
60
83
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DevConnectTab","isCameraKitAvailable","loadDevConnectPreferences","DEFAULT_DAEMON_PORT","DEFAULT_METRO_PORT","isNativeDevConnectAvailable","isSimulator","daemonClient","buildMetroUrls","normalizeComputerHost","normalizePort","parseComputerTarget","parseMetroQrPayload","restoreDevConnectSettingsToDaemon","saveComputerHost","saveComputerTarget","saveDaemonPort","saveMetroPort","createDevConnectFeature","listeners","Set","state","computerHost","metroPort","daemonPort","qrAvailable","nativeMetroAvailable","streaming","isConnected","notify","forEach","listener","name","label","renderContent","setup","then","preferences","catch","getSnapshot","cleanup","clear","subscribe","add","delete"],"sourceRoot":"../../../../src","sources":["features/devConnect/index.ts"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,oBAAoB,QAAQ,aAAa;AAClD,SAASC,yBAAyB,QAAQ,yBAAyB;AACnE,SAASC,mBAAmB,EAAEC,kBAAkB,QAAQ,mBAAmB;AAC3E,SAASC,2BAA2B,QAAQ,oBAAoB;AAChE,SAASC,WAAW,QAAQ,kBAAkB;AAC9C,SAASC,YAAY,QAAQ,0BAA0B;AAKvD,SACEC,cAAc,EACdC,qBAAqB,EACrBC,aAAa,EACbC,mBAAmB,EACnBC,mBAAmB,QACd,mBAAmB;AAC1B,SACEV,yBAAyB,EACzBW,iCAAiC,EACjCC,gBAAgB,EAChBC,kBAAkB,EAClBC,cAAc,EACdC,aAAa,QACR,yBAAyB;AAEhC,OAAO,MAAMC,uBAAuB,GAAGA,CAAA,KAAqC;EAC1E,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAAuB,CAAC;EACjD,IAAIC,KAAsB,GAAG;IAC3Bf,WAAW,EAAEA,WAAW,CAAC,CAAC;IAC1BgB,YAAY,EAAE,EAAE;IAChBC,SAAS,EAAEnB,kBAAkB;IAC7BoB,UAAU,EAAErB,mBAAmB;IAC/BsB,WAAW,EAAExB,oBAAoB,CAAC,CAAC;IACnCyB,oBAAoB,EAAErB,2BAA2B,CAAC,CAAC;IACnDsB,SAAS,EAAEpB,YAAY,CAACqB,WAAW,CAAC;EACtC,CAAC;EAED,MAAMC,MAAM,GAAGA,CAAA,KAAM;IACnBR,KAAK,GAAG;MACN,GAAGA,KAAK;MACRM,SAAS,EAAEpB,YAAY,CAACqB,WAAW,CAAC;IACtC,CAAC;IACDT,SAAS,CAACW,OAAO,CAAEC,QAAQ,IAAKA,QAAQ,CAAC,CAAC,CAAC;EAC7C,CAAC;EAED,OAAO;IACLC,IAAI,EAAE,YAAY;IAClBC,KAAK,EAAE,YAAY;IACnBC,aAAa,EAAElC,aAAa;IAC5BmC,KAAKA,CAAA,EAAG;MACNjC,yBAAyB,CAAC,CAAC,CAACkC,IAAI,CAAEC,WAAW,IAAK;QAChDhB,KAAK,GAAG;UACN,GAAGA,KAAK;UACRC,YAAY,EAAEe,WAAW,CAACf,YAAY;UACtCC,SAAS,EAAEc,WAAW,CAACd,SAAS;UAChCC,UAAU,EAAEa,WAAW,CAACb,UAAU;UAClCE,oBAAoB,EAAErB,2BAA2B,CAAC;QACpD,CAAC;QACDwB,MAAM,CAAC,CAAC;MACV,CAAC,CAAC,CAACS,KAAK,CAAC,MAAM;QACbT,MAAM,CAAC,CAAC;MACV,CAAC,CAAC;IACJ,CAAC;IACDU,WAAW,EAAEA,CAAA,KAAMlB,KAAK;IACxBmB,OAAOA,CAAA,EAAG;MACRrB,SAAS,CAACsB,KAAK,CAAC,CAAC;IACnB,CAAC;IACDC,SAASA,CAACX,QAAQ,EAAE;MAClBZ,SAAS,CAACwB,GAAG,CAACZ,QAAQ,CAAC;MACvB,OAAO,MAAM;QACXZ,SAAS,CAACyB,MAAM,CAACb,QAAQ,CAAC;MAC5B,CAAC;IACH;EACF,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["DevConnectTab","loadDevConnectPreferences","DEFAULT_DAEMON_PORT","DEFAULT_METRO_PORT","extractSubnetPrefix","getDeviceLocalIp","isNativeDevConnectAvailable","isSimulator","daemonClient","buildMetroUrls","normalizeComputerHost","normalizePort","parseComputerTarget","parseMetroQrPayload","restoreDevConnectSettingsToDaemon","saveComputerHost","saveComputerTarget","saveDaemonPort","saveMetroPort","nativeIsDebugBuild","createDevConnectFeature","listeners","Set","state","computerHost","metroPort","daemonPort","nativeMetroAvailable","streaming","isConnected","notify","forEach","listener","updateSettings","patch","feature","name","label","renderContent","setup","setOnConnectionChange","then","preferences","localIp","prefix","subnetPrefix","catch","getSnapshot","cleanup","clear","subscribe","add","delete"],"sourceRoot":"../../../../src","sources":["features/devConnect/index.ts"],"mappings":"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","ignoreList":[]}