react-native-debug-toolkit 3.3.3 → 3.3.8

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 (98) hide show
  1. package/README.md +48 -13
  2. package/README.zh-CN.md +48 -13
  3. package/android/src/main/java/com/reactnativedebugtoolkit/DebugToolkitDevConnectModule.java +0 -187
  4. package/bin/debug-toolkit.js +1 -16
  5. package/ios/DebugToolkitDevConnect.h +0 -12
  6. package/ios/DebugToolkitDevConnect.mm +0 -354
  7. package/lib/commonjs/core/initialize.js +8 -1
  8. package/lib/commonjs/core/initialize.js.map +1 -1
  9. package/lib/commonjs/features/devConnect/DevConnectTab.js +18 -470
  10. package/lib/commonjs/features/devConnect/DevConnectTab.js.map +1 -1
  11. package/lib/commonjs/features/devConnect/devConnectPreferences.js +0 -12
  12. package/lib/commonjs/features/devConnect/devConnectPreferences.js.map +1 -1
  13. package/lib/commonjs/features/devConnect/devConnectUtils.js +2 -57
  14. package/lib/commonjs/features/devConnect/devConnectUtils.js.map +1 -1
  15. package/lib/commonjs/features/devConnect/index.js +1 -23
  16. package/lib/commonjs/features/devConnect/index.js.map +1 -1
  17. package/lib/commonjs/features/devConnect/nativeDevConnect.js +1 -103
  18. package/lib/commonjs/features/devConnect/nativeDevConnect.js.map +1 -1
  19. package/lib/commonjs/index.js +7 -0
  20. package/lib/commonjs/index.js.map +1 -1
  21. package/lib/commonjs/ui/DebugView.js +2 -0
  22. package/lib/commonjs/ui/DebugView.js.map +1 -1
  23. package/lib/commonjs/ui/panel/FloatPanelView.js +22 -10
  24. package/lib/commonjs/ui/panel/FloatPanelView.js.map +1 -1
  25. package/lib/commonjs/ui/panel/tabPersistence.js +17 -0
  26. package/lib/commonjs/ui/panel/tabPersistence.js.map +1 -0
  27. package/lib/commonjs/utils/createDebugTab.js +21 -0
  28. package/lib/commonjs/utils/createDebugTab.js.map +1 -0
  29. package/lib/commonjs/utils/debugPreferences.js +0 -1
  30. package/lib/commonjs/utils/debugPreferences.js.map +1 -1
  31. package/lib/module/core/initialize.js +8 -1
  32. package/lib/module/core/initialize.js.map +1 -1
  33. package/lib/module/features/devConnect/DevConnectTab.js +21 -473
  34. package/lib/module/features/devConnect/DevConnectTab.js.map +1 -1
  35. package/lib/module/features/devConnect/devConnectPreferences.js +1 -12
  36. package/lib/module/features/devConnect/devConnectPreferences.js.map +1 -1
  37. package/lib/module/features/devConnect/devConnectUtils.js +1 -53
  38. package/lib/module/features/devConnect/devConnectUtils.js.map +1 -1
  39. package/lib/module/features/devConnect/index.js +5 -9
  40. package/lib/module/features/devConnect/index.js.map +1 -1
  41. package/lib/module/features/devConnect/nativeDevConnect.js +1 -100
  42. package/lib/module/features/devConnect/nativeDevConnect.js.map +1 -1
  43. package/lib/module/index.js +1 -0
  44. package/lib/module/index.js.map +1 -1
  45. package/lib/module/ui/DebugView.js +2 -0
  46. package/lib/module/ui/DebugView.js.map +1 -1
  47. package/lib/module/ui/panel/FloatPanelView.js +22 -10
  48. package/lib/module/ui/panel/FloatPanelView.js.map +1 -1
  49. package/lib/module/ui/panel/tabPersistence.js +13 -0
  50. package/lib/module/ui/panel/tabPersistence.js.map +1 -0
  51. package/lib/module/utils/createDebugTab.js +17 -0
  52. package/lib/module/utils/createDebugTab.js.map +1 -0
  53. package/lib/module/utils/debugPreferences.js +0 -1
  54. package/lib/module/utils/debugPreferences.js.map +1 -1
  55. package/lib/typescript/src/core/initialize.d.ts +2 -0
  56. package/lib/typescript/src/core/initialize.d.ts.map +1 -1
  57. package/lib/typescript/src/features/devConnect/DevConnectTab.d.ts.map +1 -1
  58. package/lib/typescript/src/features/devConnect/devConnectPreferences.d.ts +0 -2
  59. package/lib/typescript/src/features/devConnect/devConnectPreferences.d.ts.map +1 -1
  60. package/lib/typescript/src/features/devConnect/devConnectUtils.d.ts +0 -20
  61. package/lib/typescript/src/features/devConnect/devConnectUtils.d.ts.map +1 -1
  62. package/lib/typescript/src/features/devConnect/index.d.ts +2 -2
  63. package/lib/typescript/src/features/devConnect/index.d.ts.map +1 -1
  64. package/lib/typescript/src/features/devConnect/nativeDevConnect.d.ts +0 -25
  65. package/lib/typescript/src/features/devConnect/nativeDevConnect.d.ts.map +1 -1
  66. package/lib/typescript/src/features/devConnect/types.d.ts +1 -3
  67. package/lib/typescript/src/features/devConnect/types.d.ts.map +1 -1
  68. package/lib/typescript/src/index.d.ts +2 -0
  69. package/lib/typescript/src/index.d.ts.map +1 -1
  70. package/lib/typescript/src/ui/DebugView.d.ts +4 -2
  71. package/lib/typescript/src/ui/DebugView.d.ts.map +1 -1
  72. package/lib/typescript/src/ui/panel/FloatPanelView.d.ts.map +1 -1
  73. package/lib/typescript/src/ui/panel/tabPersistence.d.ts +3 -0
  74. package/lib/typescript/src/ui/panel/tabPersistence.d.ts.map +1 -0
  75. package/lib/typescript/src/utils/createDebugTab.d.ts +18 -0
  76. package/lib/typescript/src/utils/createDebugTab.d.ts.map +1 -0
  77. package/lib/typescript/src/utils/debugPreferences.d.ts +0 -1
  78. package/lib/typescript/src/utils/debugPreferences.d.ts.map +1 -1
  79. package/package.json +2 -4
  80. package/src/core/initialize.ts +17 -1
  81. package/src/features/devConnect/DevConnectTab.tsx +17 -381
  82. package/src/features/devConnect/devConnectPreferences.ts +0 -15
  83. package/src/features/devConnect/devConnectUtils.ts +1 -81
  84. package/src/features/devConnect/index.ts +2 -9
  85. package/src/features/devConnect/nativeDevConnect.ts +1 -136
  86. package/src/features/devConnect/types.ts +1 -3
  87. package/src/index.ts +2 -0
  88. package/src/ui/DebugView.tsx +5 -1
  89. package/src/ui/panel/FloatPanelView.tsx +22 -10
  90. package/src/ui/panel/tabPersistence.ts +22 -0
  91. package/src/utils/createDebugTab.ts +32 -0
  92. package/src/utils/debugPreferences.ts +0 -1
  93. package/scripts/android-debug-bundle.gradle +0 -23
  94. package/scripts/eas-postinstall.sh +0 -6
  95. package/scripts/embed-android.js +0 -116
  96. package/scripts/embed-expo.js +0 -109
  97. package/scripts/embed-ios.js +0 -119
  98. package/scripts/embed.js +0 -224
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ export function resolveStoredTabIndex(features, storedTab) {
4
+ if (!storedTab) return 0;
5
+ const nameIndex = features.findIndex(feature => feature.name === storedTab);
6
+ if (nameIndex >= 0) return nameIndex;
7
+ const legacyIndex = Number(storedTab);
8
+ if (Number.isInteger(legacyIndex) && legacyIndex >= 0 && legacyIndex < features.length) {
9
+ return legacyIndex;
10
+ }
11
+ return 0;
12
+ }
13
+ //# sourceMappingURL=tabPersistence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["resolveStoredTabIndex","features","storedTab","nameIndex","findIndex","feature","name","legacyIndex","Number","isInteger","length"],"sourceRoot":"../../../../src","sources":["ui/panel/tabPersistence.ts"],"mappings":";;AAEA,OAAO,SAASA,qBAAqBA,CACnCC,QAA2B,EAC3BC,SAAwB,EAChB;EACR,IAAI,CAACA,SAAS,EAAE,OAAO,CAAC;EAExB,MAAMC,SAAS,GAAGF,QAAQ,CAACG,SAAS,CAAEC,OAAO,IAAKA,OAAO,CAACC,IAAI,KAAKJ,SAAS,CAAC;EAC7E,IAAIC,SAAS,IAAI,CAAC,EAAE,OAAOA,SAAS;EAEpC,MAAMI,WAAW,GAAGC,MAAM,CAACN,SAAS,CAAC;EACrC,IACEM,MAAM,CAACC,SAAS,CAACF,WAAW,CAAC,IAC7BA,WAAW,IAAI,CAAC,IAChBA,WAAW,GAAGN,QAAQ,CAACS,MAAM,EAC7B;IACA,OAAOH,WAAW;EACpB;EAEA,OAAO,CAAC;AACV","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ const noop = () => {};
4
+ export function createDebugTab(options) {
5
+ return {
6
+ name: options.name,
7
+ label: options.label,
8
+ setup: options.setup ?? noop,
9
+ cleanup: options.cleanup ?? noop,
10
+ getSnapshot: options.getSnapshot,
11
+ clear: options.clear,
12
+ subscribe: options.subscribe,
13
+ renderContent: options.render,
14
+ badge: options.badge
15
+ };
16
+ }
17
+ //# sourceMappingURL=createDebugTab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["noop","createDebugTab","options","name","label","setup","cleanup","getSnapshot","clear","subscribe","renderContent","render","badge"],"sourceRoot":"../../../src","sources":["utils/createDebugTab.ts"],"mappings":";;AAeA,MAAMA,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,OAAO,SAASC,cAAcA,CAC5BC,OAAyC,EAChB;EACzB,OAAO;IACLC,IAAI,EAAED,OAAO,CAACC,IAAI;IAClBC,KAAK,EAAEF,OAAO,CAACE,KAAK;IACpBC,KAAK,EAAEH,OAAO,CAACG,KAAK,IAAIL,IAAI;IAC5BM,OAAO,EAAEJ,OAAO,CAACI,OAAO,IAAIN,IAAI;IAChCO,WAAW,EAAEL,OAAO,CAACK,WAAW;IAChCC,KAAK,EAAEN,OAAO,CAACM,KAAK;IACpBC,SAAS,EAAEP,OAAO,CAACO,SAAS;IAC5BC,aAAa,EAAER,OAAO,CAACS,MAAM;IAC7BC,KAAK,EAAEV,OAAO,CAACU;EACjB,CAAC;AACH","ignoreList":[]}
@@ -78,7 +78,6 @@ export const KEYS = {
78
78
  networkLogs: '@react_native_debug_toolkit/network_logs',
79
79
  trackLogs: '@react_native_debug_toolkit/track_logs',
80
80
  computerHost: '@react_native_debug_toolkit/computer_host',
81
- metroPort: '@react_native_debug_toolkit/metro_port',
82
81
  daemonPort: '@react_native_debug_toolkit/daemon_port'
83
82
  };
84
83
  //# sourceMappingURL=debugPreferences.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["memoryStore","Map","loadAsyncStorage","mod","require","getItem","loadNativePreferences","NativeModules","DebugToolkitDevConnect","getPreference","setPreference","key","value","set","AsyncStorage","setItem","nativePreferences","val","get","KEYS","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;AAEA,OAAO,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;AAEA,OAAO,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;AAEA,OAAO,MAAMQ,IAAI,GAAG;EAClBC,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
+ {"version":3,"names":["memoryStore","Map","loadAsyncStorage","mod","require","getItem","loadNativePreferences","NativeModules","DebugToolkitDevConnect","getPreference","setPreference","key","value","set","AsyncStorage","setItem","nativePreferences","val","get","KEYS","fabPosition","lastTab","consoleLogs","networkLogs","trackLogs","computerHost","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;AAEA,OAAO,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;AAEA,OAAO,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;AAEA,OAAO,MAAMQ,IAAI,GAAG;EAClBC,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,UAAU,EAAE;AACd,CAAU","ignoreList":[]}
@@ -5,6 +5,7 @@ import type { ZustandFeatureConfig } from '../features/zustand';
5
5
  import type { NavigationFeatureConfig } from '../features/navigation';
6
6
  import type { TrackFeatureConfig } from '../features/track';
7
7
  import { createEnvironmentFeature } from '../features/environment';
8
+ import type { AnyDebugFeature } from '../types';
8
9
  /** Feature-specific configuration map */
9
10
  export interface FeatureConfigs {
10
11
  network?: boolean | NetworkFeatureConfig;
@@ -18,6 +19,7 @@ export interface FeatureConfigs {
18
19
  }
19
20
  export interface InitializeOptions {
20
21
  features?: FeatureConfigs;
22
+ customFeatures?: AnyDebugFeature[];
21
23
  enabled?: boolean;
22
24
  }
23
25
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"initialize.d.ts","sourceRoot":"","sources":["../../../../src/core/initialize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAQnE,yCAAyC;AACzC,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAC;IACzC,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAC;IACzC,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAC;IACzC,UAAU,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;IAC/C,KAAK,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAAC;IACrC,WAAW,CAAC,EAAE,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAqDD;;;;;;;;;;GAUG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,OAAO,YAAY,CAAC,CA8C9B"}
1
+ {"version":3,"file":"initialize.d.ts","sourceRoot":"","sources":["../../../../src/core/initialize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAInE,OAAO,KAAK,EAAE,eAAe,EAAsB,MAAM,UAAU,CAAC;AAIpE,yCAAyC;AACzC,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAC;IACzC,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAC;IACzC,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAC;IACzC,UAAU,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;IAC/C,KAAK,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAAC;IACrC,WAAW,CAAC,EAAE,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,cAAc,CAAC,EAAE,eAAe,EAAE,CAAC;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAgED;;;;;;;;;;GAUG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,OAAO,YAAY,CAAC,CAkD9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"DevConnectTab.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/DevConnectTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAYjF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AA+B3D,OAAO,KAAK,EAAsD,eAAe,EAAE,MAAM,SAAS,CAAC;AA0BnG,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,uBAAuB,CAAC,eAAe,CAAC,qBAojB5F"}
1
+ {"version":3,"file":"DevConnectTab.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/DevConnectTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAYxE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAqB3D,OAAO,KAAK,EAAsD,eAAe,EAAE,MAAM,SAAS,CAAC;AAUnG,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,uBAAuB,CAAC,eAAe,CAAC,qBA0S5F"}
@@ -1,13 +1,11 @@
1
1
  import { type ParsedComputerTarget } from './devConnectUtils';
2
2
  export interface DevConnectPreferences {
3
3
  computerHost: string;
4
- metroPort: string;
5
4
  daemonPort: string;
6
5
  }
7
6
  export declare function loadDevConnectPreferences(): Promise<DevConnectPreferences>;
8
7
  export declare function saveComputerTarget(value: string): Promise<ParsedComputerTarget | null>;
9
8
  export declare function saveComputerHost(value: string): Promise<string | null>;
10
- export declare function saveMetroPort(value: string): Promise<string | null>;
11
9
  export declare function saveDaemonPort(value: string): Promise<string | null>;
12
10
  export declare function restoreDevConnectSettingsToDaemon(): Promise<void>;
13
11
  //# sourceMappingURL=devConnectPreferences.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"devConnectPreferences.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/devConnectPreferences.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAG3B,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAShF;AAED,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAS5F;AAED,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQ5E;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQzE;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQ1E;AAED,wBAAsB,iCAAiC,IAAI,OAAO,CAAC,IAAI,CAAC,CAWvE"}
1
+ {"version":3,"file":"devConnectPreferences.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/devConnectPreferences.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAG3B,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAOhF;AAED,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAQ5F;AAED,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQ5E;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQ1E;AAED,wBAAsB,iCAAiC,IAAI,OAAO,CAAC,IAAI,CAAC,CAWvE"}
@@ -1,30 +1,10 @@
1
- export declare const DEFAULT_METRO_PORT = "8081";
2
1
  export declare const DEFAULT_DAEMON_PORT = "3799";
3
- export interface MetroUrls {
4
- expUrl: string;
5
- httpUrl: string;
6
- }
7
- export interface MetroTarget {
8
- host: string;
9
- port: string;
10
- hostPort: string;
11
- statusUrl: string;
12
- }
13
2
  export interface ParsedComputerTarget {
14
3
  computerHost: string;
15
- metroPort: string;
16
- }
17
- export interface ParsedMetroQrPayload {
18
- computerHost: string;
19
- metroPort: string;
20
- source: string;
21
4
  }
22
5
  export declare function normalizeComputerHost(raw: string): string | null;
23
6
  export declare function normalizePort(raw: string): string | null;
24
7
  export declare function parseComputerTarget(raw: string): ParsedComputerTarget | null;
25
- export declare function buildMetroTarget(rawHost: string, rawPort?: string): MetroTarget | null;
26
- export declare function buildMetroUrls(rawHost: string, rawPort?: string): MetroUrls | null;
27
- export declare function parseMetroQrPayload(payload: string): ParsedMetroQrPayload | null;
28
8
  export declare function buildDaemonDeviceHost(computerHost: string, daemonPort: string): string;
29
9
  export declare function extractSubnetPrefix(ip: string): string | null;
30
10
  //# sourceMappingURL=devConnectUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"devConnectUtils.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/devConnectUtils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,SAAS,CAAC;AACzC,eAAO,MAAM,mBAAmB,SAAS,CAAC;AAE1C,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AA0CD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOhE;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWxD;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAiB5E;AAaD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,SAAqB,GAAG,WAAW,GAAG,IAAI,CAiBlG;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,SAAqB,GAAG,SAAS,GAAG,IAAI,CAU9F;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAMhF;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAQtF;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM7D"}
1
+ {"version":3,"file":"devConnectUtils.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/devConnectUtils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,SAAS,CAAC;AAE1C,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;CACtB;AA0CD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOhE;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWxD;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAO5E;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAQtF;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM7D"}
@@ -1,8 +1,8 @@
1
1
  import type { DebugFeature } from '../../types';
2
2
  import type { DevConnectState } from './types';
3
3
  export type { DevConnectState } from './types';
4
- export { buildMetroUrls, normalizeComputerHost, normalizePort, parseComputerTarget, parseMetroQrPayload, } from './devConnectUtils';
5
- export { loadDevConnectPreferences, restoreDevConnectSettingsToDaemon, saveComputerHost, saveComputerTarget, saveDaemonPort, saveMetroPort, } from './devConnectPreferences';
4
+ export { normalizeComputerHost, normalizePort, parseComputerTarget, } from './devConnectUtils';
5
+ export { loadDevConnectPreferences, restoreDevConnectSettingsToDaemon, saveComputerHost, saveComputerTarget, saveDaemonPort, } from './devConnectPreferences';
6
6
  export { nativeIsDebugBuild } from './nativeDevConnect';
7
7
  export declare const createDevConnectFeature: () => DebugFeature<DevConnectState>;
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAwB,MAAM,aAAa,CAAC;AACtE,OAAO,KAAK,EAAsD,eAAe,EAAE,MAAM,SAAS,CAAC;AAEnG,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,yBAAyB,EACzB,iCAAiC,EACjC,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,eAAO,MAAM,uBAAuB,QAAO,YAAY,CAAC,eAAe,CAyEtE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAwB,MAAM,aAAa,CAAC;AACtE,OAAO,KAAK,EAAsD,eAAe,EAAE,MAAM,SAAS,CAAC;AAEnG,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,yBAAyB,EACzB,iCAAiC,EACjC,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,eAAO,MAAM,uBAAuB,QAAO,YAAY,CAAC,eAAe,CAqEtE,CAAC"}
@@ -1,29 +1,4 @@
1
- export interface NativeDiagnostics {
2
- persistedMetroHost: string | null;
3
- appDelegateClass: string;
4
- isDebugBuild: boolean;
5
- hasEmbeddedBundle?: boolean;
6
- embeddedFirstHookInstalled?: boolean;
7
- packagerHookInstalled?: boolean;
8
- bundleRootHookInstalled?: boolean;
9
- }
10
- type MetroBundleFailureReason = 'invalid_target' | 'native_unavailable' | 'fetch_unavailable' | 'metro_unreachable' | 'native_error';
11
- export type MetroBundleResult = {
12
- ok: true;
13
- hostPort: string;
14
- } | {
15
- ok: false;
16
- reason: MetroBundleFailureReason;
17
- error?: string;
18
- statusUrl?: string;
19
- };
20
1
  export declare function isNativeDevConnectAvailable(): boolean;
21
- export declare function applyMetroBundle(host: string, port: string): Promise<MetroBundleResult>;
22
- export declare function resetMetroBundle(): Promise<MetroBundleResult | {
23
- ok: true;
24
- }>;
25
2
  export declare function getDeviceLocalIp(): Promise<string | null>;
26
3
  export declare function nativeIsDebugBuild(): Promise<boolean | null>;
27
- export declare function getNativeDiagnostics(): Promise<NativeDiagnostics | null>;
28
- export {};
29
4
  //# sourceMappingURL=nativeDevConnect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nativeDevConnect.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/nativeDevConnect.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IAGzB,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAYD,KAAK,wBAAwB,GACzB,gBAAgB,GAChB,oBAAoB,GACpB,mBAAmB,GACnB,mBAAmB,GACnB,cAAc,CAAC;AAEnB,MAAM,MAAM,iBAAiB,GACzB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,wBAAwB,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAsBxF,wBAAgB,2BAA2B,IAAI,OAAO,CAErD;AAmCD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA6B7F;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,iBAAiB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAC,CAgBlF;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAW/D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAWlE;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAU9E"}
1
+ {"version":3,"file":"nativeDevConnect.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/nativeDevConnect.ts"],"names":[],"mappings":"AAgBA,wBAAgB,2BAA2B,IAAI,OAAO,CAErD;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAW/D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAWlE"}
@@ -1,13 +1,11 @@
1
1
  export interface DevConnectState {
2
2
  isSimulator: boolean;
3
3
  computerHost: string;
4
- metroPort: string;
5
4
  daemonPort: string;
6
5
  subnetPrefix?: string;
7
- nativeMetroAvailable: boolean;
8
6
  streaming: boolean;
9
7
  }
10
- export type DevConnectSettingsPatch = Partial<Pick<DevConnectState, 'computerHost' | 'metroPort' | 'daemonPort'>>;
8
+ export type DevConnectSettingsPatch = Partial<Pick<DevConnectState, 'computerHost' | 'daemonPort'>>;
11
9
  export interface DevConnectFeatureControls {
12
10
  updateSettings?: (patch: DevConnectSettingsPatch) => void;
13
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAC3C,IAAI,CAAC,eAAe,EAAE,cAAc,GAAG,WAAW,GAAG,YAAY,CAAC,CACnE,CAAC;AAEF,MAAM,WAAW,yBAAyB;IACxC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,IAAI,CAAC;CAC3D"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/features/devConnect/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAC3C,IAAI,CAAC,eAAe,EAAE,cAAc,GAAG,YAAY,CAAC,CACrD,CAAC;AAEF,MAAM,WAAW,yBAAyB;IACxC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,IAAI,CAAC;CAC3D"}
@@ -21,6 +21,8 @@ export { createDevConnectFeature } from './features/devConnect';
21
21
  export type { DevConnectState } from './features/devConnect';
22
22
  export { useNavigationLogger } from './features/navigation/useNavigationLogger';
23
23
  export { safeStringify } from './utils/safeStringify';
24
+ export { createDebugTab } from './utils/createDebugTab';
25
+ export type { CreateDebugTabOptions } from './utils/createDebugTab';
24
26
  export { copyToComputer, logToComputer, fmt } from './utils/copyToComputer';
25
27
  export type { CopyResult, CopyOptions, CopyMethod } from './utils/copyToComputer';
26
28
  export { createDebugDeviceReport } from './utils/deviceReport';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAG3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClG,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACrF,YAAY,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,YAAY,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAGhF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC5E,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAClE,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,EACtB,YAAY,EACZ,qBAAqB,EACrB,YAAY,EACZ,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAGhE,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,sBAAsB,IAAI,OAAO,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAG3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClG,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACrF,YAAY,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,YAAY,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAGhF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,YAAY,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC5E,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAClE,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,EACtB,YAAY,EACZ,qBAAqB,EACrB,YAAY,EACZ,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAGhE,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,sBAAsB,IAAI,OAAO,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import type { FeatureConfigs } from '../core/initialize';
3
- import type { EnvironmentConfig, NavigationContainerRef } from '../types';
3
+ import type { AnyDebugFeature, EnvironmentConfig, NavigationContainerRef } from '../types';
4
4
  export interface DebugViewProps {
5
5
  children: React.ReactNode;
6
6
  /**
@@ -8,6 +8,8 @@ export interface DebugViewProps {
8
8
  * Set to `false` to disable a feature.
9
9
  */
10
10
  features?: Partial<FeatureConfigs>;
11
+ /** Custom tabs/features appended after built-in features. */
12
+ customFeatures?: AnyDebugFeature[];
11
13
  /** Navigation container ref for route tracking. */
12
14
  navigationRef?: React.RefObject<NavigationContainerRef | null>;
13
15
  /** Environment configs for runtime host switching. */
@@ -15,5 +17,5 @@ export interface DebugViewProps {
15
17
  /** Force enable/disable (default: `__DEV__`). */
16
18
  enabled?: boolean;
17
19
  }
18
- export declare function DebugView({ children, features, navigationRef, environments, enabled, }: DebugViewProps): React.JSX.Element;
20
+ export declare function DebugView({ children, features, customFeatures, navigationRef, environments, enabled, }: DebugViewProps): React.JSX.Element;
19
21
  //# sourceMappingURL=DebugView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DebugView.d.ts","sourceRoot":"","sources":["../../../../src/ui/DebugView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAI1E,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACnC,mDAAmD;IACnD,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;IAC/D,sDAAsD;IACtD,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACnC,iDAAiD;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAeD,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,OAAO,GACR,EAAE,cAAc,qBA8ChB"}
1
+ {"version":3,"file":"DebugView.d.ts","sourceRoot":"","sources":["../../../../src/ui/DebugView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAI3F,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACnC,6DAA6D;IAC7D,cAAc,CAAC,EAAE,eAAe,EAAE,CAAC;IACnC,mDAAmD;IACnD,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;IAC/D,sDAAsD;IACtD,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACnC,iDAAiD;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAeD,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,aAAa,EACb,YAAY,EACZ,OAAO,GACR,EAAE,cAAc,qBA+ChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"FloatPanelView.d.ts","sourceRoot":"","sources":["../../../../../src/ui/panel/FloatPanelView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8D,MAAM,OAAO,CAAC;AAOnF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAkCnD,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,mBAAmB,qBAmGjH"}
1
+ {"version":3,"file":"FloatPanelView.d.ts","sourceRoot":"","sources":["../../../../../src/ui/panel/FloatPanelView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8D,MAAM,OAAO,CAAC;AAOnF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAmCnD,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,mBAAmB,qBA8GjH"}
@@ -0,0 +1,3 @@
1
+ import type { AnyDebugFeature } from '../../types';
2
+ export declare function resolveStoredTabIndex(features: AnyDebugFeature[], storedTab: string | null): number;
3
+ //# sourceMappingURL=tabPersistence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabPersistence.d.ts","sourceRoot":"","sources":["../../../../../src/ui/panel/tabPersistence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,eAAe,EAAE,EAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,GACvB,MAAM,CAgBR"}
@@ -0,0 +1,18 @@
1
+ import type { ComponentType } from 'react';
2
+ import type { DebugFeature, DebugFeatureListener, DebugFeatureRenderProps } from '../types';
3
+ export interface CreateDebugTabOptions<TSnapshot> {
4
+ name: string;
5
+ label: string;
6
+ getSnapshot: () => TSnapshot;
7
+ render?: ComponentType<DebugFeatureRenderProps<TSnapshot>>;
8
+ setup?: () => void;
9
+ cleanup?: () => void;
10
+ clear?: () => void;
11
+ subscribe?: (listener: DebugFeatureListener) => () => void;
12
+ badge?: () => {
13
+ label: string;
14
+ color: string;
15
+ } | null;
16
+ }
17
+ export declare function createDebugTab<TSnapshot>(options: CreateDebugTabOptions<TSnapshot>): DebugFeature<TSnapshot>;
18
+ //# sourceMappingURL=createDebugTab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDebugTab.d.ts","sourceRoot":"","sources":["../../../../src/utils/createDebugTab.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAE5F,MAAM,WAAW,qBAAqB,CAAC,SAAS;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,SAAS,CAAC;IAC7B,MAAM,CAAC,EAAE,aAAa,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3D,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,MAAM,IAAI,CAAC;IAC3D,KAAK,CAAC,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACvD;AAID,wBAAgB,cAAc,CAAC,SAAS,EACtC,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC,GACxC,YAAY,CAAC,SAAS,CAAC,CAYzB"}
@@ -7,7 +7,6 @@ export declare const KEYS: {
7
7
  readonly networkLogs: "@react_native_debug_toolkit/network_logs";
8
8
  readonly trackLogs: "@react_native_debug_toolkit/track_logs";
9
9
  readonly computerHost: "@react_native_debug_toolkit/computer_host";
10
- readonly metroPort: "@react_native_debug_toolkit/metro_port";
11
10
  readonly daemonPort: "@react_native_debug_toolkit/daemon_port";
12
11
  };
13
12
  //# sourceMappingURL=debugPreferences.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"debugPreferences.d.ts","sourceRoot":"","sources":["../../../../src/utils/debugPreferences.ts"],"names":[],"mappings":"AAkCA,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB7E;AAED,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA0BvE;AAED,eAAO,MAAM,IAAI;;;;;;;;;CASP,CAAC"}
1
+ {"version":3,"file":"debugPreferences.d.ts","sourceRoot":"","sources":["../../../../src/utils/debugPreferences.ts"],"names":[],"mappings":"AAkCA,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB7E;AAED,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA0BvE;AAED,eAAO,MAAM,IAAI;;;;;;;;CAQP,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-debug-toolkit",
3
- "version": "3.3.3",
3
+ "version": "3.3.8",
4
4
  "description": "A local-first React Native debug toolkit with Web Console, HTTP API, and MCP support for AI-readable app logs",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -10,7 +10,6 @@
10
10
  "lib",
11
11
  "bin",
12
12
  "node",
13
- "scripts",
14
13
  "ios",
15
14
  "android",
16
15
  "react-native-debug-toolkit.podspec",
@@ -94,7 +93,6 @@
94
93
  ]
95
94
  },
96
95
  "dependencies": {
97
- "@babel/runtime": "^7.29.2",
98
- "pbxproj": "^0.0.5"
96
+ "@babel/runtime": "^7.29.2"
99
97
  }
100
98
  }
@@ -31,6 +31,7 @@ export interface FeatureConfigs {
31
31
 
32
32
  export interface InitializeOptions {
33
33
  features?: FeatureConfigs;
34
+ customFeatures?: AnyDebugFeature[];
34
35
  enabled?: boolean;
35
36
  }
36
37
 
@@ -85,6 +86,17 @@ function resolveDefaultFeatures(): AnyDebugFeature[] {
85
86
  return DEFAULT_FEATURES.map((name) => featureRegistry[name]!());
86
87
  }
87
88
 
89
+ function appendCustomFeatures(
90
+ builtInFeatures: AnyDebugFeature[],
91
+ customFeatures?: AnyDebugFeature[],
92
+ ): AnyDebugFeature[] {
93
+ if (!customFeatures || customFeatures.length === 0) {
94
+ return builtInFeatures;
95
+ }
96
+
97
+ return [...builtInFeatures, ...customFeatures];
98
+ }
99
+
88
100
  /**
89
101
  * Initialize the debug toolkit.
90
102
  *
@@ -111,9 +123,13 @@ export async function initializeDebugToolkit(
111
123
  }
112
124
  }
113
125
 
114
- const resolvedFeatures = options?.features
126
+ const resolvedBuiltInFeatures = options?.features
115
127
  ? resolveFeatureConfigs(options.features)
116
128
  : resolveDefaultFeatures();
129
+ const resolvedFeatures = appendCustomFeatures(
130
+ resolvedBuiltInFeatures,
131
+ options?.customFeatures,
132
+ );
117
133
 
118
134
  try {
119
135
  DebugToolkit.setEnabled(enabled);