react-native-debug-toolkit 3.2.1 → 3.2.3

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 (66) hide show
  1. package/README.md +13 -2
  2. package/README.zh-CN.md +13 -2
  3. package/android/build.gradle +34 -0
  4. package/android/src/main/AndroidManifest.xml +1 -0
  5. package/android/src/main/java/com/reactnativedebugtoolkit/DebugToolkitDevConnectModule.java +154 -0
  6. package/android/src/main/java/com/reactnativedebugtoolkit/ReactNativeDebugToolkitPackage.java +25 -0
  7. package/ios/DebugToolkitDevConnect.mm +81 -0
  8. package/lib/commonjs/features/devConnect/DevConnectQrScanner.js +115 -70
  9. package/lib/commonjs/features/devConnect/DevConnectQrScanner.js.map +1 -1
  10. package/lib/commonjs/features/devConnect/DevConnectTab.js +232 -161
  11. package/lib/commonjs/features/devConnect/DevConnectTab.js.map +1 -1
  12. package/lib/commonjs/features/devConnect/devConnectPreferences.js +35 -5
  13. package/lib/commonjs/features/devConnect/devConnectPreferences.js.map +1 -1
  14. package/lib/commonjs/features/devConnect/devConnectUtils.js +99 -15
  15. package/lib/commonjs/features/devConnect/devConnectUtils.js.map +1 -1
  16. package/lib/commonjs/features/devConnect/index.js +39 -2
  17. package/lib/commonjs/features/devConnect/index.js.map +1 -1
  18. package/lib/commonjs/features/devConnect/nativeDevConnect.js +108 -0
  19. package/lib/commonjs/features/devConnect/nativeDevConnect.js.map +1 -0
  20. package/lib/commonjs/features/devConnect/platformDetect.js +7 -11
  21. package/lib/commonjs/features/devConnect/platformDetect.js.map +1 -1
  22. package/lib/commonjs/utils/debugPreferences.js +43 -6
  23. package/lib/commonjs/utils/debugPreferences.js.map +1 -1
  24. package/lib/module/features/devConnect/DevConnectQrScanner.js +116 -71
  25. package/lib/module/features/devConnect/DevConnectQrScanner.js.map +1 -1
  26. package/lib/module/features/devConnect/DevConnectTab.js +235 -164
  27. package/lib/module/features/devConnect/DevConnectTab.js.map +1 -1
  28. package/lib/module/features/devConnect/devConnectPreferences.js +33 -6
  29. package/lib/module/features/devConnect/devConnectPreferences.js.map +1 -1
  30. package/lib/module/features/devConnect/devConnectUtils.js +94 -15
  31. package/lib/module/features/devConnect/devConnectUtils.js.map +1 -1
  32. package/lib/module/features/devConnect/index.js +11 -3
  33. package/lib/module/features/devConnect/index.js.map +1 -1
  34. package/lib/module/features/devConnect/nativeDevConnect.js +102 -0
  35. package/lib/module/features/devConnect/nativeDevConnect.js.map +1 -0
  36. package/lib/module/features/devConnect/platformDetect.js +8 -12
  37. package/lib/module/features/devConnect/platformDetect.js.map +1 -1
  38. package/lib/module/utils/debugPreferences.js +43 -6
  39. package/lib/module/utils/debugPreferences.js.map +1 -1
  40. package/lib/typescript/src/features/devConnect/DevConnectQrScanner.d.ts +3 -2
  41. package/lib/typescript/src/features/devConnect/DevConnectQrScanner.d.ts.map +1 -1
  42. package/lib/typescript/src/features/devConnect/DevConnectTab.d.ts.map +1 -1
  43. package/lib/typescript/src/features/devConnect/devConnectPreferences.d.ts +6 -0
  44. package/lib/typescript/src/features/devConnect/devConnectPreferences.d.ts.map +1 -1
  45. package/lib/typescript/src/features/devConnect/devConnectUtils.d.ts +18 -1
  46. package/lib/typescript/src/features/devConnect/devConnectUtils.d.ts.map +1 -1
  47. package/lib/typescript/src/features/devConnect/index.d.ts +2 -2
  48. package/lib/typescript/src/features/devConnect/index.d.ts.map +1 -1
  49. package/lib/typescript/src/features/devConnect/nativeDevConnect.d.ts +17 -0
  50. package/lib/typescript/src/features/devConnect/nativeDevConnect.d.ts.map +1 -0
  51. package/lib/typescript/src/features/devConnect/platformDetect.d.ts.map +1 -1
  52. package/lib/typescript/src/features/devConnect/types.d.ts +3 -0
  53. package/lib/typescript/src/features/devConnect/types.d.ts.map +1 -1
  54. package/lib/typescript/src/utils/debugPreferences.d.ts +2 -0
  55. package/lib/typescript/src/utils/debugPreferences.d.ts.map +1 -1
  56. package/package.json +4 -1
  57. package/react-native-debug-toolkit.podspec +18 -0
  58. package/src/features/devConnect/DevConnectQrScanner.tsx +101 -60
  59. package/src/features/devConnect/DevConnectTab.tsx +227 -105
  60. package/src/features/devConnect/devConnectPreferences.ts +50 -5
  61. package/src/features/devConnect/devConnectUtils.ts +122 -15
  62. package/src/features/devConnect/index.ts +13 -0
  63. package/src/features/devConnect/nativeDevConnect.ts +126 -0
  64. package/src/features/devConnect/platformDetect.ts +8 -13
  65. package/src/features/devConnect/types.ts +3 -0
  66. package/src/utils/debugPreferences.ts +49 -4
@@ -6,14 +6,27 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.KEYS = void 0;
7
7
  exports.getPreference = getPreference;
8
8
  exports.setPreference = setPreference;
9
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
-
11
9
  const memoryStore = new Map();
12
10
  function loadAsyncStorage() {
13
11
  try {
14
- // eslint-disable-next-line @typescript-eslint/no-require-imports
15
12
  const mod = require('@react-native-async-storage/async-storage');
16
- if (mod && typeof mod.getItem === 'function') return mod;
13
+ if (mod && typeof mod.getItem === 'function') {
14
+ return mod;
15
+ }
16
+ return null;
17
+ } catch {
18
+ return null;
19
+ }
20
+ }
21
+ function loadNativePreferences() {
22
+ try {
23
+ const {
24
+ NativeModules
25
+ } = require('react-native');
26
+ const mod = NativeModules?.DebugToolkitDevConnect;
27
+ if (mod && typeof mod.getPreference === 'function' && typeof mod.setPreference === 'function') {
28
+ return mod;
29
+ }
17
30
  return null;
18
31
  } catch {
19
32
  return null;
@@ -25,6 +38,15 @@ async function setPreference(key, value) {
25
38
  if (AsyncStorage) {
26
39
  try {
27
40
  await AsyncStorage.setItem(key, value);
41
+ return;
42
+ } catch {
43
+ // degrade to memory only
44
+ }
45
+ }
46
+ const nativePreferences = loadNativePreferences();
47
+ if (nativePreferences) {
48
+ try {
49
+ await nativePreferences.setPreference(key, value);
28
50
  } catch {
29
51
  // degrade to memory only
30
52
  }
@@ -35,7 +57,20 @@ async function getPreference(key) {
35
57
  if (AsyncStorage) {
36
58
  try {
37
59
  const val = await AsyncStorage.getItem(key);
38
- if (val !== null) return val;
60
+ if (val !== null) {
61
+ return val;
62
+ }
63
+ } catch {
64
+ // fall through to memory
65
+ }
66
+ }
67
+ const nativePreferences = loadNativePreferences();
68
+ if (nativePreferences) {
69
+ try {
70
+ const val = await nativePreferences.getPreference(key);
71
+ if (val !== null) {
72
+ return val;
73
+ }
39
74
  } catch {
40
75
  // fall through to memory
41
76
  }
@@ -48,6 +83,8 @@ const KEYS = exports.KEYS = {
48
83
  consoleLogs: '@react_native_debug_toolkit/console_logs',
49
84
  networkLogs: '@react_native_debug_toolkit/network_logs',
50
85
  trackLogs: '@react_native_debug_toolkit/track_logs',
51
- computerHost: '@react_native_debug_toolkit/computer_host'
86
+ computerHost: '@react_native_debug_toolkit/computer_host',
87
+ metroPort: '@react_native_debug_toolkit/metro_port',
88
+ daemonPort: '@react_native_debug_toolkit/daemon_port'
52
89
  };
53
90
  //# sourceMappingURL=debugPreferences.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["memoryStore","Map","loadAsyncStorage","mod","require","getItem","setPreference","key","value","set","AsyncStorage","setItem","getPreference","val","get","KEYS","exports","fabPosition","lastTab","consoleLogs","networkLogs","trackLogs","computerHost"],"sourceRoot":"../../../src","sources":["utils/debugPreferences.ts"],"mappings":";;;;;;;;AAAA;;AAGA,MAAMA,WAAW,GAAG,IAAIC,GAAG,CAAiB,CAAC;AAE7C,SAASC,gBAAgBA,CAAA,EAA4B;EACnD,IAAI;IACF;IACA,MAAMC,GAAG,GAAGC,OAAO,CAAC,2CAA2C,CAAC;IAChE,IAAID,GAAG,IAAI,OAAOA,GAAG,CAACE,OAAO,KAAK,UAAU,EAAE,OAAOF,GAAG;IACxD,OAAO,IAAI;EACb,CAAC,CAAC,MAAM;IACN,OAAO,IAAI;EACb;AACF;AAEO,eAAeG,aAAaA,CAACC,GAAW,EAAEC,KAAa,EAAiB;EAC7ER,WAAW,CAACS,GAAG,CAACF,GAAG,EAAEC,KAAK,CAAC;EAC3B,MAAME,YAAY,GAAGR,gBAAgB,CAAC,CAAC;EACvC,IAAIQ,YAAY,EAAE;IAChB,IAAI;MACF,MAAMA,YAAY,CAACC,OAAO,CAACJ,GAAG,EAAEC,KAAK,CAAC;IACxC,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;AACF;AAEO,eAAeI,aAAaA,CAACL,GAAW,EAA0B;EACvE,MAAMG,YAAY,GAAGR,gBAAgB,CAAC,CAAC;EACvC,IAAIQ,YAAY,EAAE;IAChB,IAAI;MACF,MAAMG,GAAG,GAAG,MAAMH,YAAY,CAACL,OAAO,CAACE,GAAG,CAAC;MAC3C,IAAIM,GAAG,KAAK,IAAI,EAAE,OAAOA,GAAG;IAC9B,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EACA,OAAOb,WAAW,CAACc,GAAG,CAACP,GAAG,CAAC,IAAI,IAAI;AACrC;AAEO,MAAMQ,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,WAAW,EAAE,0CAA0C;EACvDC,OAAO,EAAE,sCAAsC;EAC/CC,WAAW,EAAE,0CAA0C;EACvDC,WAAW,EAAE,0CAA0C;EACvDC,SAAS,EAAE,wCAAwC;EACnDC,YAAY,EAAE;AAChB,CAAU","ignoreList":[]}
1
+ {"version":3,"names":["memoryStore","Map","loadAsyncStorage","mod","require","getItem","loadNativePreferences","NativeModules","DebugToolkitDevConnect","getPreference","setPreference","key","value","set","AsyncStorage","setItem","nativePreferences","val","get","KEYS","exports","fabPosition","lastTab","consoleLogs","networkLogs","trackLogs","computerHost","metroPort","daemonPort"],"sourceRoot":"../../../src","sources":["utils/debugPreferences.ts"],"mappings":";;;;;;;;AAGA,MAAMA,WAAW,GAAG,IAAIC,GAAG,CAAiB,CAAC;AAE7C,SAASC,gBAAgBA,CAAA,EAA4B;EACnD,IAAI;IACF,MAAMC,GAAG,GAAGC,OAAO,CAAC,2CAA2C,CAAC;IAChE,IAAID,GAAG,IAAI,OAAOA,GAAG,CAACE,OAAO,KAAK,UAAU,EAAE;MAC5C,OAAOF,GAAG;IACZ;IACA,OAAO,IAAI;EACb,CAAC,CAAC,MAAM;IACN,OAAO,IAAI;EACb;AACF;AAEA,SAASG,qBAAqBA,CAAA,EAAiC;EAC7D,IAAI;IACF,MAAM;MAAEC;IAAc,CAAC,GAAGH,OAAO,CAAC,cAAc,CAAoF;IACpI,MAAMD,GAAG,GAAGI,aAAa,EAAEC,sBAAsB;IACjD,IACEL,GAAG,IACH,OAAOA,GAAG,CAACM,aAAa,KAAK,UAAU,IACvC,OAAON,GAAG,CAACO,aAAa,KAAK,UAAU,EACvC;MACA,OAAOP,GAAG;IACZ;IACA,OAAO,IAAI;EACb,CAAC,CAAC,MAAM;IACN,OAAO,IAAI;EACb;AACF;AAEO,eAAeO,aAAaA,CAACC,GAAW,EAAEC,KAAa,EAAiB;EAC7EZ,WAAW,CAACa,GAAG,CAACF,GAAG,EAAEC,KAAK,CAAC;EAC3B,MAAME,YAAY,GAAGZ,gBAAgB,CAAC,CAAC;EACvC,IAAIY,YAAY,EAAE;IAChB,IAAI;MACF,MAAMA,YAAY,CAACC,OAAO,CAACJ,GAAG,EAAEC,KAAK,CAAC;MACtC;IACF,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,MAAMI,iBAAiB,GAAGV,qBAAqB,CAAC,CAAC;EACjD,IAAIU,iBAAiB,EAAE;IACrB,IAAI;MACF,MAAMA,iBAAiB,CAACN,aAAa,CAACC,GAAG,EAAEC,KAAK,CAAC;IACnD,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;AACF;AAEO,eAAeH,aAAaA,CAACE,GAAW,EAA0B;EACvE,MAAMG,YAAY,GAAGZ,gBAAgB,CAAC,CAAC;EACvC,IAAIY,YAAY,EAAE;IAChB,IAAI;MACF,MAAMG,GAAG,GAAG,MAAMH,YAAY,CAACT,OAAO,CAACM,GAAG,CAAC;MAC3C,IAAIM,GAAG,KAAK,IAAI,EAAE;QAChB,OAAOA,GAAG;MACZ;IACF,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,MAAMD,iBAAiB,GAAGV,qBAAqB,CAAC,CAAC;EACjD,IAAIU,iBAAiB,EAAE;IACrB,IAAI;MACF,MAAMC,GAAG,GAAG,MAAMD,iBAAiB,CAACP,aAAa,CAACE,GAAG,CAAC;MACtD,IAAIM,GAAG,KAAK,IAAI,EAAE;QAChB,OAAOA,GAAG;MACZ;IACF,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,OAAOjB,WAAW,CAACkB,GAAG,CAACP,GAAG,CAAC,IAAI,IAAI;AACrC;AAEO,MAAMQ,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,WAAW,EAAE,0CAA0C;EACvDC,OAAO,EAAE,sCAAsC;EAC/CC,WAAW,EAAE,0CAA0C;EACvDC,WAAW,EAAE,0CAA0C;EACvDC,SAAS,EAAE,wCAAwC;EACnDC,YAAY,EAAE,2CAA2C;EACzDC,SAAS,EAAE,wCAAwC;EACnDC,UAAU,EAAE;AACd,CAAU","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import React, { Component, useCallback, useEffect, useRef, useState } from 'react';
4
- import { Modal, Pressable, StyleSheet, Text, TouchableOpacity, View } from 'react-native';
4
+ import { Modal, StyleSheet, Text, TouchableOpacity, View } from 'react-native';
5
5
  import { Colors } from '../../ui/theme/colors';
6
6
  import { getScannerModule } from './cameraKit';
7
7
  import { parseMetroQrPayload } from './devConnectUtils';
@@ -22,7 +22,9 @@ class CameraErrorBoundary extends Component {
22
22
  this.props.onCameraError(error.message || 'Camera failed to initialize.');
23
23
  }
24
24
  render() {
25
- if (this.state.hasError) return null;
25
+ if (this.state.hasError) {
26
+ return null;
27
+ }
26
28
  return this.props.children;
27
29
  }
28
30
  }
@@ -32,7 +34,7 @@ class CameraErrorBoundary extends Component {
32
34
  export function DevConnectQrScanner({
33
35
  visible,
34
36
  onClose,
35
- onScanHost
37
+ onScanTarget
36
38
  }) {
37
39
  const scannedRef = useRef(false);
38
40
  const [error, setError] = useState(null);
@@ -46,8 +48,12 @@ export function DevConnectQrScanner({
46
48
  }
47
49
  }, [visible]);
48
50
  const handleScanned = useCallback(rawValue => {
49
- if (scannedRef.current) return;
50
- if (typeof rawValue !== 'string') return;
51
+ if (scannedRef.current) {
52
+ return;
53
+ }
54
+ if (typeof rawValue !== 'string') {
55
+ return;
56
+ }
51
57
  const parsed = parseMetroQrPayload(rawValue);
52
58
  if (!parsed) {
53
59
  setError('QR code does not contain a supported Metro URL.');
@@ -55,9 +61,12 @@ export function DevConnectQrScanner({
55
61
  }
56
62
  scannedRef.current = true;
57
63
  setError(null);
58
- onScanHost(parsed.computerHost);
64
+ onScanTarget({
65
+ computerHost: parsed.computerHost,
66
+ metroPort: parsed.metroPort
67
+ });
59
68
  onClose();
60
- }, [onClose, onScanHost]);
69
+ }, [onClose, onScanTarget]);
61
70
  const handleCameraKitRead = useCallback(event => {
62
71
  handleScanned(event.nativeEvent?.codeStringValue ?? '');
63
72
  }, [handleScanned]);
@@ -67,63 +76,71 @@ export function DevConnectQrScanner({
67
76
  const handleCameraError = useCallback(_msg => {
68
77
  setCameraFailed(true);
69
78
  }, []);
70
- if (!visible || !scanner) return null;
79
+ if (!visible || !scanner) {
80
+ return null;
81
+ }
71
82
  return /*#__PURE__*/_jsx(Modal, {
72
83
  visible: visible,
73
84
  animationType: "slide",
85
+ presentationStyle: "fullScreen",
74
86
  onRequestClose: onClose,
75
87
  children: /*#__PURE__*/_jsxs(View, {
76
88
  style: styles.container,
77
- children: [!cameraFailed && /*#__PURE__*/_jsx(CameraErrorBoundary, {
78
- onCameraError: handleCameraError,
79
- children: scanner.kind === 'camera-kit' && scanner.CameraKit ? /*#__PURE__*/_jsx(scanner.CameraKit.Camera, {
80
- style: styles.camera,
81
- cameraType: scanner.CameraKit.CameraType?.Back,
82
- scanBarcode: true,
83
- onReadCode: handleCameraKitRead,
84
- showFrame: true,
85
- laserColor: Colors.primary,
86
- frameColor: Colors.primary,
87
- allowedBarcodeTypes: ['qr']
88
- }) : scanner.kind === 'expo-camera' && scanner.ExpoCamera ? /*#__PURE__*/_jsx(scanner.ExpoCamera.Camera, {
89
- style: styles.camera,
90
- onBarCodeScanned: handleExpoScanned,
91
- barCodeScannerSettings: {
92
- barCodeTypes: ['qr']
93
- }
94
- }) : null
95
- }), cameraFailed && /*#__PURE__*/_jsxs(View, {
96
- style: styles.cameraFallback,
97
- children: [/*#__PURE__*/_jsx(Text, {
98
- style: styles.cameraFallbackText,
99
- children: "Camera unavailable."
100
- }), /*#__PURE__*/_jsx(Text, {
101
- style: styles.cameraFallbackHint,
102
- children: "Please enter computer IP manually."
89
+ children: [/*#__PURE__*/_jsxs(View, {
90
+ style: styles.previewLayer,
91
+ children: [!cameraFailed && /*#__PURE__*/_jsx(CameraErrorBoundary, {
92
+ onCameraError: handleCameraError,
93
+ children: scanner.kind === 'camera-kit' && scanner.CameraKit ? /*#__PURE__*/_jsx(scanner.CameraKit.Camera, {
94
+ style: styles.camera,
95
+ cameraType: scanner.CameraKit.CameraType?.Back,
96
+ scanBarcode: true,
97
+ onReadCode: handleCameraKitRead,
98
+ showFrame: true,
99
+ laserColor: Colors.primary,
100
+ frameColor: Colors.primary,
101
+ allowedBarcodeTypes: ['qr']
102
+ }) : scanner.kind === 'expo-camera' && scanner.ExpoCamera ? /*#__PURE__*/_jsx(scanner.ExpoCamera.Camera, {
103
+ style: styles.camera,
104
+ onBarCodeScanned: handleExpoScanned,
105
+ barCodeScannerSettings: {
106
+ barCodeTypes: ['qr']
107
+ }
108
+ }) : null
109
+ }), cameraFailed && /*#__PURE__*/_jsxs(View, {
110
+ style: styles.cameraFallback,
111
+ children: [/*#__PURE__*/_jsx(Text, {
112
+ style: styles.cameraFallbackText,
113
+ children: "Camera unavailable."
114
+ }), /*#__PURE__*/_jsx(Text, {
115
+ style: styles.cameraFallbackHint,
116
+ children: "Please enter computer IP manually."
117
+ })]
103
118
  })]
104
119
  }), /*#__PURE__*/_jsxs(View, {
105
- style: styles.footer,
106
- children: [!cameraFailed && !error && /*#__PURE__*/_jsx(Text, {
107
- style: styles.hint,
108
- children: "Scan a Metro QR code."
109
- }), error && /*#__PURE__*/_jsx(Text, {
110
- style: styles.error,
111
- children: error
120
+ style: styles.topBar,
121
+ children: [/*#__PURE__*/_jsxs(View, {
122
+ style: styles.titleGroup,
123
+ children: [/*#__PURE__*/_jsx(Text, {
124
+ style: styles.title,
125
+ children: "Scan Metro QR"
126
+ }), /*#__PURE__*/_jsx(Text, {
127
+ style: styles.subtitle,
128
+ children: "Expo or Metro URL"
129
+ })]
112
130
  }), /*#__PURE__*/_jsx(TouchableOpacity, {
113
131
  style: styles.closeButton,
114
132
  onPress: onClose,
115
- activeOpacity: 0.7,
133
+ activeOpacity: 0.75,
116
134
  children: /*#__PURE__*/_jsx(Text, {
117
135
  style: styles.closeButtonText,
118
136
  children: "Close"
119
137
  })
120
138
  })]
121
- }), /*#__PURE__*/_jsx(Pressable, {
122
- style: styles.topClose,
123
- onPress: onClose,
139
+ }), /*#__PURE__*/_jsx(View, {
140
+ style: [styles.statusPill, error && styles.statusPillError],
124
141
  children: /*#__PURE__*/_jsx(Text, {
125
- style: styles.topCloseText,
126
- children: "Close"
142
+ style: [styles.statusText, error && styles.statusTextError],
143
+ children: error ?? 'Point the camera at exp:// or http:// Metro URL.'
127
144
  })
128
145
  })]
129
146
  })
@@ -134,11 +151,14 @@ const styles = StyleSheet.create({
134
151
  flex: 1,
135
152
  backgroundColor: '#000'
136
153
  },
154
+ previewLayer: {
155
+ ...StyleSheet.absoluteFillObject
156
+ },
137
157
  camera: {
138
- flex: 1
158
+ ...StyleSheet.absoluteFillObject
139
159
  },
140
160
  cameraFallback: {
141
- flex: 1,
161
+ ...StyleSheet.absoluteFillObject,
142
162
  justifyContent: 'center',
143
163
  alignItems: 'center',
144
164
  padding: 24
@@ -154,45 +174,70 @@ const styles = StyleSheet.create({
154
174
  color: 'rgba(255,255,255,0.6)',
155
175
  textAlign: 'center'
156
176
  },
157
- footer: {
158
- padding: 16,
159
- backgroundColor: Colors.surface
177
+ topBar: {
178
+ position: 'absolute',
179
+ top: 44,
180
+ left: 16,
181
+ right: 16,
182
+ flexDirection: 'row',
183
+ alignItems: 'center',
184
+ justifyContent: 'space-between',
185
+ paddingLeft: 14,
186
+ paddingRight: 8,
187
+ paddingVertical: 8,
188
+ borderRadius: 12,
189
+ backgroundColor: 'rgba(0,0,0,0.62)'
160
190
  },
161
- hint: {
162
- fontSize: 13,
163
- color: Colors.textSecondary,
164
- marginBottom: 12
191
+ titleGroup: {
192
+ flex: 1,
193
+ paddingRight: 10
165
194
  },
166
- error: {
167
- fontSize: 13,
168
- color: Colors.error,
169
- marginBottom: 12
195
+ title: {
196
+ color: '#fff',
197
+ fontSize: 15,
198
+ fontWeight: '700'
199
+ },
200
+ subtitle: {
201
+ color: 'rgba(255,255,255,0.68)',
202
+ fontSize: 11,
203
+ marginTop: 2
170
204
  },
171
205
  closeButton: {
172
206
  alignItems: 'center',
173
207
  justifyContent: 'center',
174
- paddingVertical: 11,
175
- borderRadius: 10,
176
- backgroundColor: Colors.primary
208
+ paddingHorizontal: 12,
209
+ paddingVertical: 8,
210
+ borderRadius: 8,
211
+ backgroundColor: 'rgba(255,255,255,0.14)'
177
212
  },
178
213
  closeButtonText: {
179
214
  color: '#fff',
180
215
  fontSize: 14,
181
216
  fontWeight: '600'
182
217
  },
183
- topClose: {
218
+ statusPill: {
184
219
  position: 'absolute',
185
- top: 48,
220
+ left: 16,
186
221
  right: 16,
187
- paddingHorizontal: 12,
188
- paddingVertical: 8,
189
- borderRadius: 8,
190
- backgroundColor: 'rgba(0,0,0,0.55)'
222
+ bottom: 30,
223
+ paddingHorizontal: 14,
224
+ paddingVertical: 11,
225
+ borderRadius: 12,
226
+ backgroundColor: 'rgba(0,0,0,0.62)'
191
227
  },
192
- topCloseText: {
228
+ statusPillError: {
229
+ backgroundColor: `${Colors.error}22`,
230
+ borderWidth: 1,
231
+ borderColor: `${Colors.error}66`
232
+ },
233
+ statusText: {
193
234
  color: '#fff',
194
235
  fontSize: 13,
195
- fontWeight: '600'
236
+ textAlign: 'center',
237
+ lineHeight: 18
238
+ },
239
+ statusTextError: {
240
+ color: '#fff'
196
241
  }
197
242
  });
198
243
  //# sourceMappingURL=DevConnectQrScanner.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","useCallback","useEffect","useRef","useState","Modal","Pressable","StyleSheet","Text","TouchableOpacity","View","Colors","getScannerModule","parseMetroQrPayload","jsx","_jsx","jsxs","_jsxs","CameraErrorBoundary","state","hasError","getDerivedStateFromError","componentDidCatch","error","console","warn","message","props","onCameraError","render","children","DevConnectQrScanner","visible","onClose","onScanHost","scannedRef","setError","cameraFailed","setCameraFailed","scanner","current","handleScanned","rawValue","parsed","computerHost","handleCameraKitRead","event","nativeEvent","codeStringValue","handleExpoScanned","result","value","handleCameraError","_msg","animationType","onRequestClose","style","styles","container","kind","CameraKit","Camera","camera","cameraType","CameraType","Back","scanBarcode","onReadCode","showFrame","laserColor","primary","frameColor","allowedBarcodeTypes","ExpoCamera","onBarCodeScanned","barCodeScannerSettings","barCodeTypes","cameraFallback","cameraFallbackText","cameraFallbackHint","footer","hint","closeButton","onPress","activeOpacity","closeButtonText","topClose","topCloseText","create","flex","backgroundColor","justifyContent","alignItems","padding","fontSize","color","fontWeight","marginBottom","textAlign","surface","textSecondary","paddingVertical","borderRadius","position","top","right","paddingHorizontal"],"sourceRoot":"../../../../src","sources":["features/devConnect/DevConnectQrScanner.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","useCallback","useEffect","useRef","useState","Modal","StyleSheet","Text","TouchableOpacity","View","Colors","getScannerModule","parseMetroQrPayload","jsx","_jsx","jsxs","_jsxs","CameraErrorBoundary","state","hasError","getDerivedStateFromError","componentDidCatch","error","console","warn","message","props","onCameraError","render","children","DevConnectQrScanner","visible","onClose","onScanTarget","scannedRef","setError","cameraFailed","setCameraFailed","scanner","current","handleScanned","rawValue","parsed","computerHost","metroPort","handleCameraKitRead","event","nativeEvent","codeStringValue","handleExpoScanned","result","value","handleCameraError","_msg","animationType","presentationStyle","onRequestClose","style","styles","container","previewLayer","kind","CameraKit","Camera","camera","cameraType","CameraType","Back","scanBarcode","onReadCode","showFrame","laserColor","primary","frameColor","allowedBarcodeTypes","ExpoCamera","onBarCodeScanned","barCodeScannerSettings","barCodeTypes","cameraFallback","cameraFallbackText","cameraFallbackHint","topBar","titleGroup","title","subtitle","closeButton","onPress","activeOpacity","closeButtonText","statusPill","statusPillError","statusText","statusTextError","create","flex","backgroundColor","absoluteFillObject","justifyContent","alignItems","padding","fontSize","color","fontWeight","marginBottom","textAlign","position","top","left","right","flexDirection","paddingLeft","paddingRight","paddingVertical","borderRadius","marginTop","paddingHorizontal","bottom","borderWidth","borderColor","lineHeight"],"sourceRoot":"../../../../src","sources":["features/devConnect/DevConnectQrScanner.tsx"],"mappings":"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","ignoreList":[]}