@react-navigation/devtools 7.0.62 → 7.1.1

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.
@@ -59,7 +59,7 @@ export function useDevToolsBase(ref, callback) {
59
59
  // Ignore any errors from the last promise
60
60
  }).then(async () => {
61
61
  // eslint-disable-next-line promise/always-return
62
- if (data.stack) {
62
+ if ('stack' in data && data.stack) {
63
63
  let stack;
64
64
  try {
65
65
  stack = await symbolicate(data.stack);
@@ -79,6 +79,7 @@ export function useDevToolsBase(ref, callback) {
79
79
  let timer;
80
80
  let unsubscribeAction;
81
81
  let unsubscribeState;
82
+ let unsubscribeEvent;
82
83
  const initialize = async () => {
83
84
  if (!ref.current) {
84
85
  // If the navigation object isn't ready yet, wait for it
@@ -112,6 +113,12 @@ export function useDevToolsBase(ref, callback) {
112
113
  lastActionRef.current = e.data;
113
114
  }
114
115
  });
116
+ unsubscribeEvent = navigation.addListener('__unsafe_event__', e => {
117
+ send({
118
+ type: 'event',
119
+ event: e.data
120
+ });
121
+ });
115
122
  unsubscribeState = navigation.addListener('state', e => {
116
123
  // Don't show the action in dev tools if the state is what we sent to reset earlier
117
124
  if (lastResetRef.current && deepEqual(lastResetRef.current, e.data.state)) {
@@ -141,6 +148,7 @@ export function useDevToolsBase(ref, callback) {
141
148
  initialize();
142
149
  return () => {
143
150
  unsubscribeAction?.();
151
+ unsubscribeEvent?.();
144
152
  unsubscribeState?.();
145
153
  clearTimeout(timer);
146
154
  };
@@ -1 +1 @@
1
- {"version":3,"names":["deepEqual","React","parseErrorStack","useDevToolsBase","ref","callback","lastStateRef","useRef","undefined","lastActionRef","callbackRef","lastResetRef","useEffect","current","symbolicate","stack","frames","slice","filter","frame","file","urlMatch","match","url","URL","result","fetch","protocol","host","method","body","JSON","stringify","then","res","json","it","collapse","map","methodName","lineNumber","column","join","err","lines","split","line","trim","startsWith","includes","push","pendingPromiseRef","Promise","resolve","send","useCallback","data","catch","timer","unsubscribeAction","unsubscribeState","initialize","setInterval","clearTimeout","state","getRootState","type","navigation","addListener","e","action","noop","lastState","lastChange","resetRoot"],"sourceRoot":"../../src","sources":["useDevToolsBase.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["deepEqual","React","parseErrorStack","useDevToolsBase","ref","callback","lastStateRef","useRef","undefined","lastActionRef","callbackRef","lastResetRef","useEffect","current","symbolicate","stack","frames","slice","filter","frame","file","urlMatch","match","url","URL","result","fetch","protocol","host","method","body","JSON","stringify","then","res","json","it","collapse","map","methodName","lineNumber","column","join","err","lines","split","line","trim","startsWith","includes","push","pendingPromiseRef","Promise","resolve","send","useCallback","data","catch","timer","unsubscribeAction","unsubscribeState","unsubscribeEvent","initialize","setInterval","clearTimeout","state","getRootState","type","navigation","addListener","e","action","noop","event","lastState","lastChange","resetRoot"],"sourceRoot":"../../src","sources":["useDevToolsBase.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { NavigationAction, NavigationContainerRef, NavigationState } from '@react-navigation/core';
1
+ import type { NavigationAction, NavigationContainerEventMap, NavigationContainerRef, NavigationState } from '@react-navigation/core';
2
2
  import * as React from 'react';
3
3
  type InitData = {
4
4
  type: 'init';
@@ -10,7 +10,12 @@ type ActionData = {
10
10
  state: NavigationState | undefined;
11
11
  stack: string | undefined;
12
12
  };
13
- export declare function useDevToolsBase(ref: React.RefObject<NavigationContainerRef<any> | null>, callback: (result: InitData | ActionData) => void): {
13
+ type EventData = {
14
+ type: 'event';
15
+ event: NavigationContainerEventMap['__unsafe_event__']['data'];
16
+ };
17
+ type ResultData = InitData | ActionData | EventData;
18
+ export declare function useDevToolsBase(ref: React.RefObject<NavigationContainerRef<any> | null>, callback: (result: ResultData) => void): {
14
19
  resetRoot: (state: NavigationState) => void;
15
20
  };
16
21
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"useDevToolsBase.d.ts","sourceRoot":"","sources":["../../../src/useDevToolsBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAmB/B,KAAK,QAAQ,GAAG;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,eAAe,GAAG,SAAS,CAAC;CACpC,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,eAAe,GAAG,SAAS,CAAC;IACnC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,wBAAgB,eAAe,CAC7B,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EACxD,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,GAAG,UAAU,KAAK,IAAI;uBA+KvC,eAAe;EAU1B"}
1
+ {"version":3,"file":"useDevToolsBase.d.ts","sourceRoot":"","sources":["../../../src/useDevToolsBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,2BAA2B,EAC3B,sBAAsB,EACtB,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAmB/B,KAAK,QAAQ,GAAG;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,eAAe,GAAG,SAAS,CAAC;CACpC,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,eAAe,GAAG,SAAS,CAAC;IACnC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,2BAA2B,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;CAChE,CAAC;AAEF,KAAK,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;AAEpD,wBAAgB,eAAe,CAC7B,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EACxD,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI;uBAwL5B,eAAe;EAU1B"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@react-navigation/devtools",
3
3
  "description": "Developer tools for React Navigation",
4
- "version": "7.0.62",
4
+ "version": "7.1.1",
5
5
  "keywords": [
6
6
  "react",
7
7
  "react-native",
@@ -46,7 +46,7 @@
46
46
  "stacktrace-parser": "^0.1.11"
47
47
  },
48
48
  "devDependencies": {
49
- "@react-navigation/core": "^7.20.0",
49
+ "@react-navigation/core": "^7.21.1",
50
50
  "@types/react": "~19.0.10",
51
51
  "del-cli": "^6.0.0",
52
52
  "react": "19.1.0",
@@ -74,5 +74,5 @@
74
74
  ]
75
75
  ]
76
76
  },
77
- "gitHead": "d1f2a06597d7f2ae490d09b7ecc4f3531e5efc46"
77
+ "gitHead": "f4af3430155cdd765d02af4e654dcf79b1702b6d"
78
78
  }
@@ -1,5 +1,6 @@
1
1
  import type {
2
2
  NavigationAction,
3
+ NavigationContainerEventMap,
3
4
  NavigationContainerRef,
4
5
  NavigationState,
5
6
  } from '@react-navigation/core';
@@ -35,9 +36,16 @@ type ActionData = {
35
36
  stack: string | undefined;
36
37
  };
37
38
 
39
+ type EventData = {
40
+ type: 'event';
41
+ event: NavigationContainerEventMap['__unsafe_event__']['data'];
42
+ };
43
+
44
+ type ResultData = InitData | ActionData | EventData;
45
+
38
46
  export function useDevToolsBase(
39
47
  ref: React.RefObject<NavigationContainerRef<any> | null>,
40
- callback: (result: InitData | ActionData) => void
48
+ callback: (result: ResultData) => void
41
49
  ) {
42
50
  const lastStateRef = React.useRef<NavigationState | undefined>(undefined);
43
51
  const lastActionRef = React.useRef<
@@ -106,7 +114,7 @@ export function useDevToolsBase(
106
114
 
107
115
  const pendingPromiseRef = React.useRef<Promise<void>>(Promise.resolve());
108
116
 
109
- const send = React.useCallback((data: ActionData) => {
117
+ const send = React.useCallback((data: ResultData) => {
110
118
  // We need to make sure that our callbacks executed in the same order
111
119
  // So we add check if the last promise is settled before sending the next one
112
120
  pendingPromiseRef.current = pendingPromiseRef.current
@@ -115,7 +123,7 @@ export function useDevToolsBase(
115
123
  })
116
124
  .then(async () => {
117
125
  // eslint-disable-next-line promise/always-return
118
- if (data.stack) {
126
+ if ('stack' in data && data.stack) {
119
127
  let stack: string | undefined;
120
128
 
121
129
  try {
@@ -135,6 +143,7 @@ export function useDevToolsBase(
135
143
  let timer: any;
136
144
  let unsubscribeAction: (() => void) | undefined;
137
145
  let unsubscribeState: (() => void) | undefined;
146
+ let unsubscribeEvent: (() => void) | undefined;
138
147
 
139
148
  const initialize = async () => {
140
149
  if (!ref.current) {
@@ -171,6 +180,13 @@ export function useDevToolsBase(
171
180
  }
172
181
  });
173
182
 
183
+ unsubscribeEvent = navigation.addListener('__unsafe_event__', (e) => {
184
+ send({
185
+ type: 'event',
186
+ event: e.data,
187
+ });
188
+ });
189
+
174
190
  unsubscribeState = navigation.addListener('state', (e) => {
175
191
  // Don't show the action in dev tools if the state is what we sent to reset earlier
176
192
  if (
@@ -206,6 +222,7 @@ export function useDevToolsBase(
206
222
 
207
223
  return () => {
208
224
  unsubscribeAction?.();
225
+ unsubscribeEvent?.();
209
226
  unsubscribeState?.();
210
227
  clearTimeout(timer);
211
228
  };