@tanstack/react-query-devtools 4.24.10 → 5.0.0-alpha.0

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 (86) hide show
  1. package/build/lib/Explorer.d.ts +4 -4
  2. package/build/lib/Explorer.esm.js +5 -15
  3. package/build/lib/Explorer.esm.js.map +1 -1
  4. package/build/lib/Explorer.js +11 -25
  5. package/build/lib/Explorer.js.map +1 -1
  6. package/build/lib/Explorer.mjs +5 -15
  7. package/build/lib/Explorer.mjs.map +1 -1
  8. package/build/lib/Logo.d.ts +0 -1
  9. package/build/lib/Logo.esm.js.map +1 -1
  10. package/build/lib/Logo.js +5 -6
  11. package/build/lib/Logo.js.map +1 -1
  12. package/build/lib/Logo.mjs.map +1 -1
  13. package/build/lib/__tests__/devtools.test.d.ts +0 -5
  14. package/build/lib/_virtual/_rollupPluginBabelHelpers.esm.js +0 -2
  15. package/build/lib/_virtual/_rollupPluginBabelHelpers.esm.js.map +1 -1
  16. package/build/lib/_virtual/_rollupPluginBabelHelpers.js +1 -5
  17. package/build/lib/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  18. package/build/lib/_virtual/_rollupPluginBabelHelpers.mjs +0 -2
  19. package/build/lib/_virtual/_rollupPluginBabelHelpers.mjs.map +1 -1
  20. package/build/lib/devtools.d.ts +12 -4
  21. package/build/lib/devtools.esm.js +73 -108
  22. package/build/lib/devtools.esm.js.map +1 -1
  23. package/build/lib/devtools.js +95 -133
  24. package/build/lib/devtools.js.map +1 -1
  25. package/build/lib/devtools.mjs +73 -108
  26. package/build/lib/devtools.mjs.map +1 -1
  27. package/build/lib/index.d.ts +2 -2
  28. package/build/lib/index.esm.js.map +1 -1
  29. package/build/lib/index.js +0 -2
  30. package/build/lib/index.js.map +1 -1
  31. package/build/lib/index.mjs.map +1 -1
  32. package/build/lib/index.prod.d.ts +2 -2
  33. package/build/lib/index.prod.esm.js +121 -176
  34. package/build/lib/index.prod.esm.js.map +1 -1
  35. package/build/lib/index.prod.js +126 -187
  36. package/build/lib/index.prod.js.map +1 -1
  37. package/build/lib/index.prod.mjs +121 -176
  38. package/build/lib/index.prod.mjs.map +1 -1
  39. package/build/lib/screenreader.d.ts +0 -1
  40. package/build/lib/screenreader.esm.js.map +1 -1
  41. package/build/lib/screenreader.js +4 -5
  42. package/build/lib/screenreader.js.map +1 -1
  43. package/build/lib/screenreader.mjs.map +1 -1
  44. package/build/lib/styledComponents.esm.js +17 -16
  45. package/build/lib/styledComponents.esm.js.map +1 -1
  46. package/build/lib/styledComponents.js +17 -18
  47. package/build/lib/styledComponents.js.map +1 -1
  48. package/build/lib/styledComponents.mjs +17 -16
  49. package/build/lib/styledComponents.mjs.map +1 -1
  50. package/build/lib/theme.esm.js.map +1 -1
  51. package/build/lib/theme.js +4 -7
  52. package/build/lib/theme.js.map +1 -1
  53. package/build/lib/theme.mjs.map +1 -1
  54. package/build/lib/useLocalStorage.esm.js +0 -7
  55. package/build/lib/useLocalStorage.esm.js.map +1 -1
  56. package/build/lib/useLocalStorage.js +4 -12
  57. package/build/lib/useLocalStorage.js.map +1 -1
  58. package/build/lib/useLocalStorage.mjs +0 -7
  59. package/build/lib/useLocalStorage.mjs.map +1 -1
  60. package/build/lib/useMediaQuery.esm.js +6 -6
  61. package/build/lib/useMediaQuery.esm.js.map +1 -1
  62. package/build/lib/useMediaQuery.js +10 -11
  63. package/build/lib/useMediaQuery.js.map +1 -1
  64. package/build/lib/useMediaQuery.mjs +6 -6
  65. package/build/lib/useMediaQuery.mjs.map +1 -1
  66. package/build/lib/utils.esm.js +20 -22
  67. package/build/lib/utils.esm.js.map +1 -1
  68. package/build/lib/utils.js +24 -32
  69. package/build/lib/utils.js.map +1 -1
  70. package/build/lib/utils.mjs +20 -22
  71. package/build/lib/utils.mjs.map +1 -1
  72. package/build/umd/index.development.js +124 -439
  73. package/build/umd/index.development.js.map +1 -1
  74. package/build/umd/index.production.js +1 -1
  75. package/build/umd/index.production.js.map +1 -1
  76. package/package.json +6 -10
  77. package/src/Explorer.tsx +4 -4
  78. package/src/__tests__/Explorer.test.tsx +5 -0
  79. package/src/__tests__/devtools.test.tsx +121 -175
  80. package/src/__tests__/utils.tsx +2 -2
  81. package/src/devtools.tsx +110 -116
  82. package/src/index.ts +2 -2
  83. package/build/lib/useSyncExternalStore.d.ts +0 -1
  84. package/build/lib/useSyncExternalStore.native.d.ts +0 -1
  85. package/src/useSyncExternalStore.native.ts +0 -3
  86. package/src/useSyncExternalStore.ts +0 -2
@@ -1,7 +1,5 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
3
  var _rollupPluginBabelHelpers = require('./_virtual/_rollupPluginBabelHelpers.js');
6
4
  var React = require('react');
7
5
  var reactQuery = require('@tanstack/react-query');
@@ -13,10 +11,8 @@ var screenreader = require('./screenreader.js');
13
11
  var theme = require('./theme.js');
14
12
  var Explorer = require('./Explorer.js');
15
13
  var Logo = require('./Logo.js');
16
- var index_js = require('use-sync-external-store/shim/index.js');
17
14
 
18
- function _interopNamespace(e) {
19
- if (e && e.__esModule) return e;
15
+ function _interopNamespaceDefault(e) {
20
16
  var n = Object.create(null);
21
17
  if (e) {
22
18
  Object.keys(e).forEach(function (k) {
@@ -29,11 +25,11 @@ function _interopNamespace(e) {
29
25
  }
30
26
  });
31
27
  }
32
- n["default"] = e;
28
+ n.default = e;
33
29
  return Object.freeze(n);
34
30
  }
35
31
 
36
- var React__namespace = /*#__PURE__*/_interopNamespace(React);
32
+ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
37
33
 
38
34
  function ReactQueryDevtools({
39
35
  initialIsOpen,
@@ -42,24 +38,22 @@ function ReactQueryDevtools({
42
38
  toggleButtonProps = {},
43
39
  position = 'bottom-left',
44
40
  containerElement: Container = 'aside',
45
- context,
41
+ queryClient,
46
42
  styleNonce,
47
43
  panelPosition: initialPanelPosition = 'bottom'
48
44
  }) {
49
45
  const rootRef = React__namespace.useRef(null);
50
46
  const panelRef = React__namespace.useRef(null);
51
- const [isOpen, setIsOpen] = useLocalStorage["default"]('reactQueryDevtoolsOpen', initialIsOpen);
52
- const [devtoolsHeight, setDevtoolsHeight] = useLocalStorage["default"]('reactQueryDevtoolsHeight', utils.defaultPanelSize);
53
- const [devtoolsWidth, setDevtoolsWidth] = useLocalStorage["default"]('reactQueryDevtoolsWidth', utils.defaultPanelSize);
54
- const [panelPosition = 'bottom', setPanelPosition] = useLocalStorage["default"]('reactQueryDevtoolsPanelPosition', initialPanelPosition);
47
+ const [isOpen, setIsOpen] = useLocalStorage.default('reactQueryDevtoolsOpen', initialIsOpen);
48
+ const [devtoolsHeight, setDevtoolsHeight] = useLocalStorage.default('reactQueryDevtoolsHeight', utils.defaultPanelSize);
49
+ const [devtoolsWidth, setDevtoolsWidth] = useLocalStorage.default('reactQueryDevtoolsWidth', utils.defaultPanelSize);
50
+ const [panelPosition = 'bottom', setPanelPosition] = useLocalStorage.default('reactQueryDevtoolsPanelPosition', initialPanelPosition);
55
51
  const [isResolvedOpen, setIsResolvedOpen] = React__namespace.useState(false);
56
52
  const [isResizing, setIsResizing] = React__namespace.useState(false);
57
53
  const isMounted = utils.useIsMounted();
58
-
59
54
  const handleDragStart = (panelElement, startEvent) => {
60
55
  if (!panelElement) return;
61
56
  if (startEvent.button !== 0) return; // Only allow left click for drag
62
-
63
57
  const isVertical = utils.isVerticalSide(panelPosition);
64
58
  setIsResizing(true);
65
59
  const {
@@ -69,12 +63,12 @@ function ReactQueryDevtools({
69
63
  const startX = startEvent.clientX;
70
64
  const startY = startEvent.clientY;
71
65
  let newSize = 0;
72
-
73
66
  const run = moveEvent => {
74
67
  // prevent mouse selecting stuff with mouse drag
75
- moveEvent.preventDefault(); // calculate the correct size based on mouse position and current panel position
76
- // hint: it is different formula for the opposite sides
68
+ moveEvent.preventDefault();
77
69
 
70
+ // calculate the correct size based on mouse position and current panel position
71
+ // hint: it is different formula for the opposite sides
78
72
  if (isVertical) {
79
73
  newSize = width + (panelPosition === 'right' ? startX - moveEvent.clientX : moveEvent.clientX - startX);
80
74
  setDevtoolsWidth(newSize);
@@ -82,48 +76,41 @@ function ReactQueryDevtools({
82
76
  newSize = height + (panelPosition === 'bottom' ? startY - moveEvent.clientY : moveEvent.clientY - startY);
83
77
  setDevtoolsHeight(newSize);
84
78
  }
85
-
86
79
  if (newSize < utils.minPanelSize) {
87
80
  setIsOpen(false);
88
81
  } else {
89
82
  setIsOpen(true);
90
83
  }
91
84
  };
92
-
93
85
  const unsub = () => {
94
86
  if (isResizing) {
95
87
  setIsResizing(false);
96
88
  }
97
-
98
89
  document.removeEventListener('mousemove', run, false);
99
90
  document.removeEventListener('mouseUp', unsub, false);
100
91
  };
101
-
102
92
  document.addEventListener('mousemove', run, false);
103
93
  document.addEventListener('mouseup', unsub, false);
104
94
  };
105
-
106
95
  React__namespace.useEffect(() => {
107
- setIsResolvedOpen(isOpen != null ? isOpen : false);
108
- }, [isOpen, isResolvedOpen, setIsResolvedOpen]); // Toggle panel visibility before/after transition (depending on direction).
109
- // Prevents focusing in a closed panel.
96
+ setIsResolvedOpen(isOpen ?? false);
97
+ }, [isOpen, isResolvedOpen, setIsResolvedOpen]);
110
98
 
99
+ // Toggle panel visibility before/after transition (depending on direction).
100
+ // Prevents focusing in a closed panel.
111
101
  React__namespace.useEffect(() => {
112
102
  const ref = panelRef.current;
113
-
114
103
  if (ref) {
115
104
  const handlePanelTransitionStart = () => {
116
105
  if (isResolvedOpen) {
117
106
  ref.style.visibility = 'visible';
118
107
  }
119
108
  };
120
-
121
109
  const handlePanelTransitionEnd = () => {
122
110
  if (!isResolvedOpen) {
123
111
  ref.style.visibility = 'hidden';
124
112
  }
125
113
  };
126
-
127
114
  ref.addEventListener('transitionstart', handlePanelTransitionStart);
128
115
  ref.addEventListener('transitionend', handlePanelTransitionEnd);
129
116
  return () => {
@@ -131,19 +118,15 @@ function ReactQueryDevtools({
131
118
  ref.removeEventListener('transitionend', handlePanelTransitionEnd);
132
119
  };
133
120
  }
134
-
135
121
  return;
136
122
  }, [isResolvedOpen]);
137
123
  React__namespace.useEffect(() => {
138
- var _rootRef$current;
139
-
140
- if (isResolvedOpen && (_rootRef$current = rootRef.current) != null && _rootRef$current.parentElement) {
124
+ if (isResolvedOpen && rootRef.current?.parentElement) {
141
125
  const {
142
126
  parentElement
143
127
  } = rootRef.current;
144
128
  const styleProp = utils.getSidedProp('padding', panelPosition);
145
129
  const isVertical = utils.isVerticalSide(panelPosition);
146
-
147
130
  const previousPaddings = (({
148
131
  padding,
149
132
  paddingTop,
@@ -157,20 +140,18 @@ function ReactQueryDevtools({
157
140
  paddingLeft,
158
141
  paddingRight
159
142
  }))(parentElement.style);
160
-
161
143
  const run = () => {
162
144
  // reset the padding
163
145
  parentElement.style.padding = '0px';
164
146
  parentElement.style.paddingTop = '0px';
165
147
  parentElement.style.paddingBottom = '0px';
166
148
  parentElement.style.paddingLeft = '0px';
167
- parentElement.style.paddingRight = '0px'; // set the new padding based on the new panel position
149
+ parentElement.style.paddingRight = '0px';
150
+ // set the new padding based on the new panel position
168
151
 
169
- parentElement.style[styleProp] = (isVertical ? devtoolsWidth : devtoolsHeight) + "px";
152
+ parentElement.style[styleProp] = `${isVertical ? devtoolsWidth : devtoolsHeight}px`;
170
153
  };
171
-
172
154
  run();
173
-
174
155
  if (typeof window !== 'undefined') {
175
156
  window.addEventListener('resize', run);
176
157
  return () => {
@@ -181,7 +162,6 @@ function ReactQueryDevtools({
181
162
  };
182
163
  }
183
164
  }
184
-
185
165
  return;
186
166
  }, [isResolvedOpen, panelPosition, devtoolsHeight, devtoolsWidth]);
187
167
  const {
@@ -192,8 +172,9 @@ function ReactQueryDevtools({
192
172
  style: toggleButtonStyle = {},
193
173
  onClick: onToggleClick,
194
174
  ...otherToggleButtonProps
195
- } = toggleButtonProps; // get computed style based on panel position
175
+ } = toggleButtonProps;
196
176
 
177
+ // get computed style based on panel position
197
178
  const style = utils.getSidePanelStyle({
198
179
  position: panelPosition,
199
180
  devtoolsTheme: theme.defaultTheme,
@@ -202,8 +183,9 @@ function ReactQueryDevtools({
202
183
  width: devtoolsWidth,
203
184
  isResizing,
204
185
  panelStyle
205
- }); // Do not render on the server
186
+ });
206
187
 
188
+ // Do not render on the server
207
189
  if (!isMounted()) return null;
208
190
  return /*#__PURE__*/React__namespace.createElement(Container, {
209
191
  ref: rootRef,
@@ -211,9 +193,9 @@ function ReactQueryDevtools({
211
193
  "aria-label": "React Query Devtools"
212
194
  }, /*#__PURE__*/React__namespace.createElement(theme.ThemeProvider, {
213
195
  theme: theme.defaultTheme
214
- }, /*#__PURE__*/React__namespace.createElement(ReactQueryDevtoolsPanel, _rollupPluginBabelHelpers["extends"]({
196
+ }, /*#__PURE__*/React__namespace.createElement(ReactQueryDevtoolsPanel, _rollupPluginBabelHelpers.extends({
215
197
  ref: panelRef,
216
- context: context,
198
+ queryClient: queryClient,
217
199
  styleNonce: styleNonce,
218
200
  position: panelPosition,
219
201
  onPositionChange: setPanelPosition,
@@ -224,7 +206,7 @@ function ReactQueryDevtools({
224
206
  isOpen: isResolvedOpen,
225
207
  setIsOpen: setIsOpen,
226
208
  onDragStart: e => handleDragStart(panelRef.current, e)
227
- }))), !isResolvedOpen ? /*#__PURE__*/React__namespace.createElement("button", _rollupPluginBabelHelpers["extends"]({
209
+ }))), !isResolvedOpen ? /*#__PURE__*/React__namespace.createElement("button", _rollupPluginBabelHelpers.extends({
228
210
  type: "button"
229
211
  }, otherToggleButtonProps, {
230
212
  "aria-label": "Open React Query Devtools",
@@ -233,7 +215,7 @@ function ReactQueryDevtools({
233
215
  "aria-expanded": "false",
234
216
  onClick: e => {
235
217
  setIsOpen(true);
236
- onToggleClick == null ? void 0 : onToggleClick(e);
218
+ onToggleClick?.(e);
237
219
  },
238
220
  style: {
239
221
  background: 'none',
@@ -261,28 +243,26 @@ function ReactQueryDevtools({
261
243
  }),
262
244
  ...toggleButtonStyle
263
245
  }
264
- }), /*#__PURE__*/React__namespace.createElement(Logo["default"], {
246
+ }), /*#__PURE__*/React__namespace.createElement(Logo.default, {
265
247
  "aria-hidden": true
266
- }), /*#__PURE__*/React__namespace.createElement(screenreader["default"], {
248
+ }), /*#__PURE__*/React__namespace.createElement(screenreader.default, {
267
249
  text: "Open React Query Devtools"
268
250
  })) : null);
269
251
  }
270
-
271
252
  const useSubscribeToQueryCache = (queryCache, getSnapshot, skip = false) => {
272
- return index_js.useSyncExternalStore(React__namespace.useCallback(onStoreChange => {
253
+ return React__namespace.useSyncExternalStore(React__namespace.useCallback(onStoreChange => {
273
254
  if (!skip) return queryCache.subscribe(reactQuery.notifyManager.batchCalls(onStoreChange));
274
255
  return () => {
275
256
  return;
276
257
  };
277
258
  }, [queryCache, skip]), getSnapshot, getSnapshot);
278
259
  };
279
-
280
260
  const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(function ReactQueryDevtoolsPanel(props, ref) {
281
261
  const {
282
262
  isOpen = true,
283
263
  styleNonce,
284
264
  setIsOpen,
285
- context,
265
+ queryClient,
286
266
  onDragStart,
287
267
  onPositionChange,
288
268
  showCloseButton,
@@ -294,23 +274,19 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
294
274
  onClick: onCloseClick,
295
275
  ...otherCloseButtonProps
296
276
  } = closeButtonProps;
297
- const queryClient = reactQuery.useQueryClient({
298
- context
299
- });
300
- const queryCache = queryClient.getQueryCache();
301
- const [sort, setSort] = useLocalStorage["default"]('reactQueryDevtoolsSortFn', Object.keys(utils.sortFns)[0]);
302
- const [filter, setFilter] = useLocalStorage["default"]('reactQueryDevtoolsFilter', '');
303
- const [baseSort, setBaseSort] = useLocalStorage["default"]('reactQueryDevtoolsBaseSort', 1);
277
+ const client = reactQuery.useQueryClient(queryClient);
278
+ const queryCache = client.getQueryCache();
279
+ const [sort, setSort] = useLocalStorage.default('reactQueryDevtoolsSortFn', Object.keys(utils.sortFns)[0]);
280
+ const [filter, setFilter] = useLocalStorage.default('reactQueryDevtoolsFilter', '');
281
+ const [baseSort, setBaseSort] = useLocalStorage.default('reactQueryDevtoolsBaseSort', 1);
304
282
  const sortFn = React__namespace.useMemo(() => utils.sortFns[sort], [sort]);
305
283
  const queriesCount = useSubscribeToQueryCache(queryCache, () => queryCache.getAll().length, !isOpen);
306
- const [activeQueryHash, setActiveQueryHash] = useLocalStorage["default"]('reactQueryDevtoolsActiveQueryHash', '');
284
+ const [activeQueryHash, setActiveQueryHash] = useLocalStorage.default('reactQueryDevtoolsActiveQueryHash', '');
307
285
  const queries = React__namespace.useMemo(() => {
308
286
  const unsortedQueries = queryCache.getAll();
309
-
310
287
  if (queriesCount === 0) {
311
288
  return [];
312
289
  }
313
-
314
290
  const filtered = filter ? unsortedQueries.filter(item => matchSorterUtils.rankItem(item.queryHash, filter).passed) : [...unsortedQueries];
315
291
  const sorted = sortFn ? filtered.sort((a, b) => sortFn(a, b) * baseSort) : filtered;
316
292
  return sorted;
@@ -318,7 +294,7 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
318
294
  const [isMockOffline, setMockOffline] = React__namespace.useState(false);
319
295
  return /*#__PURE__*/React__namespace.createElement(theme.ThemeProvider, {
320
296
  theme: theme.defaultTheme
321
- }, /*#__PURE__*/React__namespace.createElement(styledComponents.Panel, _rollupPluginBabelHelpers["extends"]({
297
+ }, /*#__PURE__*/React__namespace.createElement(styledComponents.Panel, _rollupPluginBabelHelpers.extends({
322
298
  ref: ref,
323
299
  className: "ReactQueryDevtoolsPanel",
324
300
  "aria-label": "React Query Devtools Panel",
@@ -332,7 +308,26 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
332
308
  }), /*#__PURE__*/React__namespace.createElement("style", {
333
309
  nonce: styleNonce,
334
310
  dangerouslySetInnerHTML: {
335
- __html: "\n .ReactQueryDevtoolsPanel * {\n scrollbar-color: " + theme.defaultTheme.backgroundAlt + " " + theme.defaultTheme.gray + ";\n }\n\n .ReactQueryDevtoolsPanel *::-webkit-scrollbar, .ReactQueryDevtoolsPanel scrollbar {\n width: 1em;\n height: 1em;\n }\n\n .ReactQueryDevtoolsPanel *::-webkit-scrollbar-track, .ReactQueryDevtoolsPanel scrollbar-track {\n background: " + theme.defaultTheme.backgroundAlt + ";\n }\n\n .ReactQueryDevtoolsPanel *::-webkit-scrollbar-thumb, .ReactQueryDevtoolsPanel scrollbar-thumb {\n background: " + theme.defaultTheme.gray + ";\n border-radius: .5em;\n border: 3px solid " + theme.defaultTheme.backgroundAlt + ";\n }\n "
311
+ __html: `
312
+ .ReactQueryDevtoolsPanel * {
313
+ scrollbar-color: ${theme.defaultTheme.backgroundAlt} ${theme.defaultTheme.gray};
314
+ }
315
+
316
+ .ReactQueryDevtoolsPanel *::-webkit-scrollbar, .ReactQueryDevtoolsPanel scrollbar {
317
+ width: 1em;
318
+ height: 1em;
319
+ }
320
+
321
+ .ReactQueryDevtoolsPanel *::-webkit-scrollbar-track, .ReactQueryDevtoolsPanel scrollbar-track {
322
+ background: ${theme.defaultTheme.backgroundAlt};
323
+ }
324
+
325
+ .ReactQueryDevtoolsPanel *::-webkit-scrollbar-thumb, .ReactQueryDevtoolsPanel scrollbar-thumb {
326
+ background: ${theme.defaultTheme.gray};
327
+ border-radius: .5em;
328
+ border: 3px solid ${theme.defaultTheme.backgroundAlt};
329
+ }
330
+ `
336
331
  }
337
332
  }), /*#__PURE__*/React__namespace.createElement("div", {
338
333
  style: utils.getResizeHandleStyle(position),
@@ -343,7 +338,7 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
343
338
  minHeight: '40%',
344
339
  maxHeight: '100%',
345
340
  overflow: 'auto',
346
- borderRight: "1px solid " + theme.defaultTheme.grayAlt,
341
+ borderRight: `1px solid ${theme.defaultTheme.grayAlt}`,
347
342
  display: 'flex',
348
343
  flexDirection: 'column'
349
344
  }
@@ -370,9 +365,9 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
370
365
  marginRight: '.5em',
371
366
  cursor: 'pointer'
372
367
  }
373
- }, /*#__PURE__*/React__namespace.createElement(Logo["default"], {
368
+ }, /*#__PURE__*/React__namespace.createElement(Logo.default, {
374
369
  "aria-hidden": true
375
- }), /*#__PURE__*/React__namespace.createElement(screenreader["default"], {
370
+ }), /*#__PURE__*/React__namespace.createElement(screenreader.default, {
376
371
  text: "Close React Query Devtools"
377
372
  })), /*#__PURE__*/React__namespace.createElement("div", {
378
373
  style: {
@@ -411,7 +406,7 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
411
406
  }, /*#__PURE__*/React__namespace.createElement(styledComponents.Input, {
412
407
  placeholder: "Filter",
413
408
  "aria-label": "Filter by queryhash",
414
- value: filter != null ? filter : '',
409
+ value: filter ?? '',
415
410
  onChange: e => setFilter(e.target.value),
416
411
  onKeyDown: e => {
417
412
  if (e.key === 'Escape') setFilter('');
@@ -421,7 +416,7 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
421
416
  marginRight: '.5em',
422
417
  width: '100%'
423
418
  }
424
- }), !filter ? /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(styledComponents.Select, {
419
+ }), /*#__PURE__*/React__namespace.createElement(styledComponents.Select, {
425
420
  "aria-label": "Sort queries",
426
421
  value: sort,
427
422
  onChange: e => setSort(e.target.value),
@@ -500,9 +495,9 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
500
495
  d: "M6.343 12.343a8 8 0 0 1 11.314 0"
501
496
  }), /*#__PURE__*/React__namespace.createElement("path", {
502
497
  d: "M3.515 9.515c4.686 -4.687 12.284 -4.687 17 0"
503
- }))), /*#__PURE__*/React__namespace.createElement(screenreader["default"], {
498
+ }))), /*#__PURE__*/React__namespace.createElement(screenreader.default, {
504
499
  text: isMockOffline ? 'Restore offline mock' : 'Mock offline behavior'
505
- }))) : null))), /*#__PURE__*/React__namespace.createElement("div", {
500
+ }))))), /*#__PURE__*/React__namespace.createElement("div", {
506
501
  style: {
507
502
  overflowY: 'auto',
508
503
  flex: '1'
@@ -518,8 +513,8 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
518
513
  }))), activeQueryHash && isOpen ? /*#__PURE__*/React__namespace.createElement(ActiveQuery, {
519
514
  activeQueryHash: activeQueryHash,
520
515
  queryCache: queryCache,
521
- queryClient: queryClient
522
- }) : null, showCloseButton ? /*#__PURE__*/React__namespace.createElement(styledComponents.Button, _rollupPluginBabelHelpers["extends"]({
516
+ queryClient: client
517
+ }) : null, showCloseButton ? /*#__PURE__*/React__namespace.createElement(styledComponents.Button, _rollupPluginBabelHelpers.extends({
523
518
  type: "button",
524
519
  "aria-controls": "ReactQueryDevtoolsPanel",
525
520
  "aria-haspopup": "true",
@@ -535,44 +530,26 @@ const ReactQueryDevtoolsPanel = /*#__PURE__*/React__namespace.forwardRef(functio
535
530
  },
536
531
  onClick: e => {
537
532
  setIsOpen(false);
538
- onCloseClick == null ? void 0 : onCloseClick(e);
533
+ onCloseClick?.(e);
539
534
  }
540
535
  }), "Close") : null));
541
536
  });
542
-
543
537
  const ActiveQuery = ({
544
538
  queryCache,
545
539
  activeQueryHash,
546
540
  queryClient
547
541
  }) => {
548
- var _useSubscribeToQueryC, _useSubscribeToQueryC2;
549
-
550
542
  const activeQuery = useSubscribeToQueryCache(queryCache, () => queryCache.getAll().find(query => query.queryHash === activeQueryHash));
551
- const activeQueryState = useSubscribeToQueryCache(queryCache, () => {
552
- var _queryCache$getAll$fi;
553
-
554
- return (_queryCache$getAll$fi = queryCache.getAll().find(query => query.queryHash === activeQueryHash)) == null ? void 0 : _queryCache$getAll$fi.state;
555
- });
556
- const isStale = (_useSubscribeToQueryC = useSubscribeToQueryCache(queryCache, () => {
557
- var _queryCache$getAll$fi2;
558
-
559
- return (_queryCache$getAll$fi2 = queryCache.getAll().find(query => query.queryHash === activeQueryHash)) == null ? void 0 : _queryCache$getAll$fi2.isStale();
560
- })) != null ? _useSubscribeToQueryC : false;
561
- const observerCount = (_useSubscribeToQueryC2 = useSubscribeToQueryCache(queryCache, () => {
562
- var _queryCache$getAll$fi3;
563
-
564
- return (_queryCache$getAll$fi3 = queryCache.getAll().find(query => query.queryHash === activeQueryHash)) == null ? void 0 : _queryCache$getAll$fi3.getObserversCount();
565
- })) != null ? _useSubscribeToQueryC2 : 0;
566
-
543
+ const activeQueryState = useSubscribeToQueryCache(queryCache, () => queryCache.getAll().find(query => query.queryHash === activeQueryHash)?.state);
544
+ const isStale = useSubscribeToQueryCache(queryCache, () => queryCache.getAll().find(query => query.queryHash === activeQueryHash)?.isStale()) ?? false;
545
+ const observerCount = useSubscribeToQueryCache(queryCache, () => queryCache.getAll().find(query => query.queryHash === activeQueryHash)?.getObserversCount()) ?? 0;
567
546
  const handleRefetch = () => {
568
- const promise = activeQuery == null ? void 0 : activeQuery.fetch();
569
- promise == null ? void 0 : promise.catch(noop);
547
+ const promise = activeQuery?.fetch();
548
+ promise?.catch(noop);
570
549
  };
571
-
572
550
  if (!activeQuery || !activeQueryState) {
573
551
  return null;
574
552
  }
575
-
576
553
  return /*#__PURE__*/React__namespace.createElement(styledComponents.ActiveQueryPanel, null, /*#__PURE__*/React__namespace.createElement("div", {
577
554
  style: {
578
555
  padding: '.5em',
@@ -679,7 +656,7 @@ const ActiveQuery = ({
679
656
  style: {
680
657
  padding: '.5em'
681
658
  }
682
- }, /*#__PURE__*/React__namespace.createElement(Explorer["default"], {
659
+ }, /*#__PURE__*/React__namespace.createElement(Explorer.default, {
683
660
  label: "Data",
684
661
  value: activeQueryState.data,
685
662
  defaultExpanded: {},
@@ -696,7 +673,7 @@ const ActiveQuery = ({
696
673
  style: {
697
674
  padding: '.5em'
698
675
  }
699
- }, /*#__PURE__*/React__namespace.createElement(Explorer["default"], {
676
+ }, /*#__PURE__*/React__namespace.createElement(Explorer.default, {
700
677
  label: "Query",
701
678
  value: activeQuery,
702
679
  defaultExpanded: {
@@ -704,7 +681,6 @@ const ActiveQuery = ({
704
681
  }
705
682
  })));
706
683
  };
707
-
708
684
  const QueryStatusCount = ({
709
685
  queryCache
710
686
  }) => {
@@ -742,52 +718,37 @@ const QueryStatusCount = ({
742
718
  }
743
719
  }, "inactive ", /*#__PURE__*/React__namespace.createElement(styledComponents.Code, null, "(", hasInactive, ")")));
744
720
  };
745
-
746
721
  const QueryRow = /*#__PURE__*/React__namespace.memo(({
747
722
  queryKey,
748
723
  setActiveQueryHash,
749
724
  activeQueryHash,
750
725
  queryCache
751
726
  }) => {
752
- var _useSubscribeToQueryC3, _useSubscribeToQueryC4, _useSubscribeToQueryC5, _useSubscribeToQueryC6;
753
-
754
- const queryHash = (_useSubscribeToQueryC3 = useSubscribeToQueryCache(queryCache, () => {
755
- var _queryCache$find;
756
-
757
- return (_queryCache$find = queryCache.find(queryKey)) == null ? void 0 : _queryCache$find.queryHash;
758
- })) != null ? _useSubscribeToQueryC3 : '';
759
- const queryState = useSubscribeToQueryCache(queryCache, () => {
760
- var _queryCache$find2;
761
-
762
- return (_queryCache$find2 = queryCache.find(queryKey)) == null ? void 0 : _queryCache$find2.state;
763
- });
764
- const isStale = (_useSubscribeToQueryC4 = useSubscribeToQueryCache(queryCache, () => {
765
- var _queryCache$find3;
766
-
767
- return (_queryCache$find3 = queryCache.find(queryKey)) == null ? void 0 : _queryCache$find3.isStale();
768
- })) != null ? _useSubscribeToQueryC4 : false;
769
- const isDisabled = (_useSubscribeToQueryC5 = useSubscribeToQueryCache(queryCache, () => {
770
- var _queryCache$find4;
771
-
772
- return (_queryCache$find4 = queryCache.find(queryKey)) == null ? void 0 : _queryCache$find4.isDisabled();
773
- })) != null ? _useSubscribeToQueryC5 : false;
774
- const observerCount = (_useSubscribeToQueryC6 = useSubscribeToQueryCache(queryCache, () => {
775
- var _queryCache$find5;
776
-
777
- return (_queryCache$find5 = queryCache.find(queryKey)) == null ? void 0 : _queryCache$find5.getObserversCount();
778
- })) != null ? _useSubscribeToQueryC6 : 0;
779
-
727
+ const queryHash = useSubscribeToQueryCache(queryCache, () => queryCache.find({
728
+ queryKey
729
+ })?.queryHash) ?? '';
730
+ const queryState = useSubscribeToQueryCache(queryCache, () => queryCache.find({
731
+ queryKey
732
+ })?.state);
733
+ const isStale = useSubscribeToQueryCache(queryCache, () => queryCache.find({
734
+ queryKey
735
+ })?.isStale()) ?? false;
736
+ const isDisabled = useSubscribeToQueryCache(queryCache, () => queryCache.find({
737
+ queryKey
738
+ })?.isDisabled()) ?? false;
739
+ const observerCount = useSubscribeToQueryCache(queryCache, () => queryCache.find({
740
+ queryKey
741
+ })?.getObserversCount()) ?? 0;
780
742
  if (!queryState) {
781
743
  return null;
782
744
  }
783
-
784
745
  return /*#__PURE__*/React__namespace.createElement("div", {
785
746
  role: "button",
786
- "aria-label": "Open query details for " + queryHash,
747
+ "aria-label": `Open query details for ${queryHash}`,
787
748
  onClick: () => setActiveQueryHash(activeQueryHash === queryHash ? '' : queryHash),
788
749
  style: {
789
750
  display: 'flex',
790
- borderBottom: "solid 1px " + theme.defaultTheme.grayAlt,
751
+ borderBottom: `solid 1px ${theme.defaultTheme.grayAlt}`,
791
752
  cursor: 'pointer',
792
753
  background: queryHash === activeQueryHash ? 'rgba(255,255,255,.1)' : undefined
793
754
  }
@@ -823,9 +784,10 @@ const QueryRow = /*#__PURE__*/React__namespace.memo(({
823
784
  style: {
824
785
  padding: '.5em'
825
786
  }
826
- }, "" + queryHash));
827
- }); // eslint-disable-next-line @typescript-eslint/no-empty-function
787
+ }, `${queryHash}`));
788
+ });
828
789
 
790
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
829
791
  function noop() {}
830
792
 
831
793
  exports.ReactQueryDevtools = ReactQueryDevtools;