@tanstack/react-router-devtools 0.0.1-beta.2 → 0.0.1-beta.30

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 (75) hide show
  1. package/build/cjs/{packages/react-router-devtools/src/Explorer.js → Explorer.js} +7 -18
  2. package/build/cjs/Explorer.js.map +1 -0
  3. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -5
  4. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  5. package/build/cjs/{packages/react-router-devtools/src/devtools.js → devtools.js} +46 -66
  6. package/build/cjs/devtools.js.map +1 -0
  7. package/build/cjs/{packages/react-router-devtools/src/index.js → index.js} +0 -0
  8. package/build/cjs/{packages/react-router-devtools/src/index.js.map → index.js.map} +0 -0
  9. package/build/cjs/{packages/react-router-devtools/src/styledComponents.js → styledComponents.js} +7 -3
  10. package/build/cjs/styledComponents.js.map +1 -0
  11. package/build/cjs/{packages/react-router-devtools/src/theme.js → theme.js} +4 -5
  12. package/build/cjs/theme.js.map +1 -0
  13. package/build/cjs/{packages/react-router-devtools/src/useLocalStorage.js → useLocalStorage.js} +0 -7
  14. package/build/cjs/useLocalStorage.js.map +1 -0
  15. package/build/cjs/{packages/react-router-devtools/src/useMediaQuery.js → useMediaQuery.js} +8 -8
  16. package/build/cjs/useMediaQuery.js.map +1 -0
  17. package/build/cjs/{packages/react-router-devtools/src/utils.js → utils.js} +11 -19
  18. package/build/cjs/utils.js.map +1 -0
  19. package/build/esm/index.js +79 -960
  20. package/build/esm/index.js.map +1 -1
  21. package/build/stats-html.html +59 -49
  22. package/build/stats-react.json +3009 -3003
  23. package/build/types/index.d.ts +3 -3
  24. package/build/umd/index.development.js +85 -132
  25. package/build/umd/index.development.js.map +1 -1
  26. package/build/umd/index.production.js +1 -1
  27. package/build/umd/index.production.js.map +1 -1
  28. package/package.json +4 -3
  29. package/src/devtools.tsx +28 -13
  30. package/src/utils.ts +1 -3
  31. package/build/cjs/node_modules/date-fns/esm/_lib/assign/index.js +0 -30
  32. package/build/cjs/node_modules/date-fns/esm/_lib/assign/index.js.map +0 -1
  33. package/build/cjs/node_modules/date-fns/esm/_lib/cloneObject/index.js +0 -22
  34. package/build/cjs/node_modules/date-fns/esm/_lib/cloneObject/index.js.map +0 -1
  35. package/build/cjs/node_modules/date-fns/esm/_lib/defaultLocale/index.js +0 -20
  36. package/build/cjs/node_modules/date-fns/esm/_lib/defaultLocale/index.js.map +0 -1
  37. package/build/cjs/node_modules/date-fns/esm/_lib/defaultOptions/index.js +0 -21
  38. package/build/cjs/node_modules/date-fns/esm/_lib/defaultOptions/index.js.map +0 -1
  39. package/build/cjs/node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js +0 -33
  40. package/build/cjs/node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js.map +0 -1
  41. package/build/cjs/node_modules/date-fns/esm/_lib/requiredArgs/index.js +0 -22
  42. package/build/cjs/node_modules/date-fns/esm/_lib/requiredArgs/index.js.map +0 -1
  43. package/build/cjs/node_modules/date-fns/esm/compareAsc/index.js +0 -67
  44. package/build/cjs/node_modules/date-fns/esm/compareAsc/index.js.map +0 -1
  45. package/build/cjs/node_modules/date-fns/esm/formatDistanceStrict/index.js +0 -207
  46. package/build/cjs/node_modules/date-fns/esm/formatDistanceStrict/index.js.map +0 -1
  47. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildFormatLongFn/index.js +0 -26
  48. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildFormatLongFn/index.js.map +0 -1
  49. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js +0 -39
  50. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js.map +0 -1
  51. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js +0 -65
  52. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js.map +0 -1
  53. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildMatchPatternFn/index.js +0 -34
  54. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildMatchPatternFn/index.js.map +0 -1
  55. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatDistance/index.js +0 -105
  56. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatDistance/index.js.map +0 -1
  57. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatLong/index.js +0 -52
  58. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatLong/index.js.map +0 -1
  59. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatRelative/index.js +0 -31
  60. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatRelative/index.js.map +0 -1
  61. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/localize/index.js +0 -164
  62. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/localize/index.js.map +0 -1
  63. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/match/index.js +0 -116
  64. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/match/index.js.map +0 -1
  65. package/build/cjs/node_modules/date-fns/esm/locale/en-US/index.js +0 -47
  66. package/build/cjs/node_modules/date-fns/esm/locale/en-US/index.js.map +0 -1
  67. package/build/cjs/node_modules/date-fns/esm/toDate/index.js +0 -70
  68. package/build/cjs/node_modules/date-fns/esm/toDate/index.js.map +0 -1
  69. package/build/cjs/packages/react-router-devtools/src/Explorer.js.map +0 -1
  70. package/build/cjs/packages/react-router-devtools/src/devtools.js.map +0 -1
  71. package/build/cjs/packages/react-router-devtools/src/styledComponents.js.map +0 -1
  72. package/build/cjs/packages/react-router-devtools/src/theme.js.map +0 -1
  73. package/build/cjs/packages/react-router-devtools/src/useLocalStorage.js.map +0 -1
  74. package/build/cjs/packages/react-router-devtools/src/useMediaQuery.js.map +0 -1
  75. package/build/cjs/packages/react-router-devtools/src/utils.js.map +0 -1
@@ -11,7 +11,7 @@
11
11
  import React from 'react';
12
12
  import { Router } from '@tanstack/react-router';
13
13
 
14
- declare type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
14
+ type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
15
15
  interface DevtoolsOptions {
16
16
  /**
17
17
  * Set this true if you want the dev tools to default to being open
@@ -43,7 +43,7 @@ interface DevtoolsOptions {
43
43
  /**
44
44
  * A boolean variable indicating if the "lite" version of the library is being used
45
45
  */
46
- router: Router<any, any>;
46
+ router?: Router<any, any, any>;
47
47
  }
48
48
  interface DevtoolsPanelOptions {
49
49
  /**
@@ -69,7 +69,7 @@ interface DevtoolsPanelOptions {
69
69
  /**
70
70
  * A boolean variable indicating if the "lite" version of the library is being used
71
71
  */
72
- router: Router<any, any>;
72
+ router?: Router<any, any, any>;
73
73
  }
74
74
  declare function TanStackRouterDevtools({ initialIsOpen, panelProps, closeButtonProps, toggleButtonProps, position, containerElement: Container, router, }: DevtoolsOptions): React.ReactElement | null;
75
75
  declare const TanStackRouterDevtoolsPanel: React.ForwardRefExoticComponent<DevtoolsPanelOptions & React.RefAttributes<HTMLDivElement>>;
@@ -41,31 +41,26 @@
41
41
  _extends = Object.assign ? Object.assign.bind() : function (target) {
42
42
  for (var i = 1; i < arguments.length; i++) {
43
43
  var source = arguments[i];
44
-
45
44
  for (var key in source) {
46
45
  if (Object.prototype.hasOwnProperty.call(source, key)) {
47
46
  target[key] = source[key];
48
47
  }
49
48
  }
50
49
  }
51
-
52
50
  return target;
53
51
  };
54
52
  return _extends.apply(this, arguments);
55
53
  }
56
-
57
54
  function _objectWithoutPropertiesLoose(source, excluded) {
58
55
  if (source == null) return {};
59
56
  var target = {};
60
57
  var sourceKeys = Object.keys(source);
61
58
  var key, i;
62
-
63
59
  for (i = 0; i < sourceKeys.length; i++) {
64
60
  key = sourceKeys[i];
65
61
  if (excluded.indexOf(key) >= 0) continue;
66
62
  target[key] = source[key];
67
63
  }
68
-
69
64
  return target;
70
65
  }
71
66
 
@@ -75,6 +70,7 @@
75
70
  }
76
71
  }
77
72
 
73
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
78
74
  /**
79
75
  * @name toDate
80
76
  * @category Common Helpers
@@ -110,7 +106,7 @@
110
106
  requiredArgs(1, arguments);
111
107
  var argStr = Object.prototype.toString.call(argument); // Clone the date
112
108
 
113
- if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') {
109
+ if (argument instanceof Date || _typeof(argument) === 'object' && argStr === '[object Date]') {
114
110
  // Prevent the date to lose the milliseconds when passed to new Date() in IE10
115
111
  return new Date(argument.getTime());
116
112
  } else if (typeof argument === 'number' || argStr === '[object Number]') {
@@ -261,7 +257,7 @@
261
257
  }
262
258
  };
263
259
 
264
- var formatDistance = function (token, count, options) {
260
+ var formatDistance = function formatDistance(token, count, options) {
265
261
  var result;
266
262
  var tokenValue = formatDistanceLocale[token];
267
263
 
@@ -339,7 +335,7 @@
339
335
  other: 'P'
340
336
  };
341
337
 
342
- var formatRelative = function (token, _date, _baseDate, _options) {
338
+ var formatRelative = function formatRelative(token, _date, _baseDate, _options) {
343
339
  return formatRelativeLocale[token];
344
340
  };
345
341
 
@@ -458,7 +454,7 @@
458
454
  }
459
455
  };
460
456
 
461
- var ordinalNumber = function (dirtyNumber, _options) {
457
+ var ordinalNumber = function ordinalNumber(dirtyNumber, _options) {
462
458
  var number = Number(dirtyNumber); // If ordinal numbers depend on context, for example,
463
459
  // if they are different for different grammatical genders,
464
460
  // use `options.unit`.
@@ -493,7 +489,7 @@
493
489
  quarter: buildLocalizeFn({
494
490
  values: quarterValues,
495
491
  defaultWidth: 'wide',
496
- argumentCallback: function (quarter) {
492
+ argumentCallback: function argumentCallback(quarter) {
497
493
  return quarter - 1;
498
494
  }
499
495
  }),
@@ -638,7 +634,7 @@
638
634
  ordinalNumber: buildMatchPatternFn({
639
635
  matchPattern: matchOrdinalNumberPattern,
640
636
  parsePattern: parseOrdinalNumberPattern,
641
- valueCallback: function (value) {
637
+ valueCallback: function valueCallback(value) {
642
638
  return parseInt(value, 10);
643
639
  }
644
640
  }),
@@ -653,7 +649,7 @@
653
649
  defaultMatchWidth: 'wide',
654
650
  parsePatterns: parseQuarterPatterns,
655
651
  defaultParseWidth: 'any',
656
- valueCallback: function (index) {
652
+ valueCallback: function valueCallback(index) {
657
653
  return index + 1;
658
654
  }
659
655
  }),
@@ -906,22 +902,18 @@
906
902
  const getItem = key => {
907
903
  try {
908
904
  const itemValue = localStorage.getItem(key);
909
-
910
905
  if (typeof itemValue === 'string') {
911
906
  return JSON.parse(itemValue);
912
907
  }
913
-
914
908
  return undefined;
915
909
  } catch (_unused) {
916
910
  return undefined;
917
911
  }
918
912
  };
919
-
920
913
  function useLocalStorage(key, defaultValue) {
921
914
  const [value, setValue] = React__default["default"].useState();
922
915
  React__default["default"].useEffect(() => {
923
916
  const initialValue = getItem(key);
924
-
925
917
  if (typeof initialValue === 'undefined' || initialValue === null) {
926
918
  setValue(typeof defaultValue === 'function' ? defaultValue() : defaultValue);
927
919
  } else {
@@ -931,15 +923,12 @@
931
923
  const setter = React__default["default"].useCallback(updater => {
932
924
  setValue(old => {
933
925
  let newVal = updater;
934
-
935
926
  if (typeof updater == 'function') {
936
927
  newVal = updater(old);
937
928
  }
938
-
939
929
  try {
940
930
  localStorage.setItem(key, JSON.stringify(newVal));
941
931
  } catch (_unused2) {}
942
-
943
932
  return newVal;
944
933
  });
945
934
  }, [key]);
@@ -963,10 +952,9 @@
963
952
  const ThemeContext = /*#__PURE__*/React__default["default"].createContext(defaultTheme);
964
953
  function ThemeProvider(_ref) {
965
954
  let {
966
- theme
967
- } = _ref,
968
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
969
-
955
+ theme
956
+ } = _ref,
957
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
970
958
  return /*#__PURE__*/React__default["default"].createElement(ThemeContext.Provider, _extends({
971
959
  value: theme
972
960
  }, rest));
@@ -981,34 +969,34 @@
981
969
  if (typeof window !== 'undefined') {
982
970
  return window.matchMedia && window.matchMedia(query).matches;
983
971
  }
984
-
985
972
  return;
986
- }); // Watch for changes
973
+ });
987
974
 
975
+ // Watch for changes
988
976
  React__default["default"].useEffect(() => {
989
977
  if (typeof window !== 'undefined') {
990
978
  if (!window.matchMedia) {
991
979
  return;
992
- } // Create a matcher
993
-
980
+ }
994
981
 
995
- const matcher = window.matchMedia(query); // Create our handler
982
+ // Create a matcher
983
+ const matcher = window.matchMedia(query);
996
984
 
985
+ // Create our handler
997
986
  const onChange = _ref => {
998
987
  let {
999
988
  matches
1000
989
  } = _ref;
1001
990
  return setIsMatch(matches);
1002
- }; // Listen for changes
1003
-
991
+ };
1004
992
 
993
+ // Listen for changes
1005
994
  matcher.addListener(onChange);
1006
995
  return () => {
1007
996
  // Stop listening for changes
1008
997
  matcher.removeListener(onChange);
1009
998
  };
1010
999
  }
1011
-
1012
1000
  return;
1013
1001
  }, [isMatch, query, setIsMatch]);
1014
1002
  return isMatch;
@@ -1017,8 +1005,10 @@
1017
1005
  const _excluded$2 = ["style"];
1018
1006
  const isServer$1 = typeof window === 'undefined';
1019
1007
  function getStatusColor(match, theme) {
1020
- return match.isPending ? theme.warning : match.isFetching ? theme.active : match.status === 'error' ? theme.danger : match.status === 'success' ? theme.success : theme.gray;
1021
- } // export function getQueryStatusLabel(query: Query) {
1008
+ return match.isFetching ? theme.active : match.status === 'error' ? theme.danger : match.status === 'success' ? theme.success : theme.gray;
1009
+ }
1010
+
1011
+ // export function getQueryStatusLabel(query: Query) {
1022
1012
  // return query.state.isFetching
1023
1013
  // ? 'fetching'
1024
1014
  // : !query.getObserversCount()
@@ -1032,13 +1022,11 @@
1032
1022
  if (queries === void 0) {
1033
1023
  queries = {};
1034
1024
  }
1035
-
1036
1025
  return /*#__PURE__*/React__default["default"].forwardRef((_ref, ref) => {
1037
1026
  let {
1038
- style
1039
- } = _ref,
1040
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
1041
-
1027
+ style
1028
+ } = _ref,
1029
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
1042
1030
  const theme = useTheme();
1043
1031
  const mediaStyles = Object.entries(queries).reduce((current, _ref2) => {
1044
1032
  let [key, value] = _ref2;
@@ -1062,22 +1050,22 @@
1062
1050
  }, []);
1063
1051
  return isMounted;
1064
1052
  }
1053
+
1065
1054
  /**
1066
1055
  * Displays a string regardless the type of the data
1067
1056
  * @param {unknown} value Value to be stringified
1068
1057
  */
1069
-
1070
1058
  const displayValue = value => {
1071
1059
  const name = Object.getOwnPropertyNames(Object(value));
1072
1060
  const newValue = typeof value === 'bigint' ? value.toString() + "n" : value;
1073
1061
  return JSON.stringify(newValue, name);
1074
1062
  };
1063
+
1075
1064
  /**
1076
1065
  * This hook is a safe useState version which schedules state updates in microtasks
1077
1066
  * to prevent updating a component state while React is rendering different components
1078
1067
  * or when the component is not mounted anymore.
1079
1068
  */
1080
-
1081
1069
  function useSafeState(initialState) {
1082
1070
  const isMounted = useIsMounted();
1083
1071
  const [state, setState] = React__default["default"].useState(initialState);
@@ -1090,45 +1078,37 @@
1090
1078
  }, [isMounted]);
1091
1079
  return [state, safeSetState];
1092
1080
  }
1081
+
1093
1082
  /**
1094
1083
  * Schedules a microtask.
1095
1084
  * This can be useful to schedule state updates after rendering.
1096
1085
  */
1097
-
1098
1086
  function scheduleMicrotask(callback) {
1099
1087
  Promise.resolve().then(callback).catch(error => setTimeout(() => {
1100
1088
  throw error;
1101
1089
  }));
1102
1090
  }
1103
-
1104
1091
  function multiSortBy(arr, accessors) {
1105
1092
  if (accessors === void 0) {
1106
1093
  accessors = [d => d];
1107
1094
  }
1108
-
1109
1095
  return arr.map((d, i) => [d, i]).sort((_ref3, _ref4) => {
1110
1096
  let [a, ai] = _ref3;
1111
1097
  let [b, bi] = _ref4;
1112
-
1113
1098
  for (const accessor of accessors) {
1114
1099
  const ao = accessor(a);
1115
1100
  const bo = accessor(b);
1116
-
1117
1101
  if (typeof ao === 'undefined') {
1118
1102
  if (typeof bo === 'undefined') {
1119
1103
  continue;
1120
1104
  }
1121
-
1122
1105
  return 1;
1123
1106
  }
1124
-
1125
1107
  if (ao === bo) {
1126
1108
  continue;
1127
1109
  }
1128
-
1129
1110
  return ao > bo ? 1 : -1;
1130
1111
  }
1131
-
1132
1112
  return ai - bi;
1133
1113
  }).map(_ref5 => {
1134
1114
  let [d] = _ref5;
@@ -1147,10 +1127,11 @@
1147
1127
  flexDirection: 'column'
1148
1128
  },
1149
1129
  '(max-width: 600px)': {
1150
- fontSize: '.9em' // flexDirection: 'column',
1151
-
1130
+ fontSize: '.9em'
1131
+ // flexDirection: 'column',
1152
1132
  }
1153
1133
  });
1134
+
1154
1135
  const ActivePanel = styled('div', () => ({
1155
1136
  flex: '1 1 500px',
1156
1137
  display: 'flex',
@@ -1173,10 +1154,13 @@
1173
1154
  padding: '.5em',
1174
1155
  opacity: props.disabled ? '.5' : undefined,
1175
1156
  cursor: 'pointer'
1176
- })); // export const QueryKeys = styled('span', {
1157
+ }));
1158
+
1159
+ // export const QueryKeys = styled('span', {
1177
1160
  // display: 'inline-block',
1178
1161
  // fontSize: '0.9em',
1179
1162
  // })
1163
+
1180
1164
  // export const QueryKey = styled('span', {
1181
1165
  // display: 'inline-flex',
1182
1166
  // alignItems: 'center',
@@ -1271,7 +1255,6 @@
1271
1255
  }, style)
1272
1256
  }, "\u25B6");
1273
1257
  };
1274
-
1275
1258
  /**
1276
1259
  * Chunk elements in the array by size
1277
1260
  *
@@ -1285,12 +1268,10 @@
1285
1268
  if (size < 1) return [];
1286
1269
  let i = 0;
1287
1270
  const result = [];
1288
-
1289
1271
  while (i < array.length) {
1290
1272
  result.push(array.slice(i, i + size));
1291
1273
  i = i + size;
1292
1274
  }
1293
-
1294
1275
  return result;
1295
1276
  }
1296
1277
  const DefaultRenderer = _ref2 => {
@@ -1308,11 +1289,9 @@
1308
1289
  } = _ref2;
1309
1290
  const [expandedPages, setExpandedPages] = React__namespace.useState([]);
1310
1291
  const [valueSnapshot, setValueSnapshot] = React__namespace.useState(undefined);
1311
-
1312
1292
  const refreshValueSnapshot = () => {
1313
1293
  setValueSnapshot(value());
1314
1294
  };
1315
-
1316
1295
  return /*#__PURE__*/React__namespace.createElement(Entry, null, subEntryPages.length ? /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(ExpandButton, {
1317
1296
  onClick: () => toggleExpanded()
1318
1297
  }, /*#__PURE__*/React__namespace.createElement(Expander, {
@@ -1337,25 +1316,21 @@
1337
1316
  defaultExpanded: {}
1338
1317
  })) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Label, null, label, ":"), " ", /*#__PURE__*/React__namespace.createElement(Value, null, displayValue(value))));
1339
1318
  };
1340
-
1341
1319
  function isIterable(x) {
1342
1320
  return Symbol.iterator in x;
1343
1321
  }
1344
-
1345
1322
  function Explorer(_ref3) {
1346
1323
  let {
1347
- value,
1348
- defaultExpanded,
1349
- renderer = DefaultRenderer,
1350
- pageSize = 100
1351
- } = _ref3,
1352
- rest = _objectWithoutPropertiesLoose(_ref3, _excluded$1);
1353
-
1324
+ value,
1325
+ defaultExpanded,
1326
+ renderer = DefaultRenderer,
1327
+ pageSize = 100
1328
+ } = _ref3,
1329
+ rest = _objectWithoutPropertiesLoose(_ref3, _excluded$1);
1354
1330
  const [expanded, setExpanded] = React__namespace.useState(Boolean(defaultExpanded));
1355
1331
  const toggleExpanded = React__namespace.useCallback(() => setExpanded(old => !old), []);
1356
1332
  let type = typeof value;
1357
1333
  let subEntries = [];
1358
-
1359
1334
  const makeProperty = sub => {
1360
1335
  const subDefaultExpanded = defaultExpanded === true ? {
1361
1336
  [sub.label]: true
@@ -1364,7 +1339,6 @@
1364
1339
  defaultExpanded: subDefaultExpanded
1365
1340
  });
1366
1341
  };
1367
-
1368
1342
  if (Array.isArray(value)) {
1369
1343
  type = 'array';
1370
1344
  subEntries = value.map((d, i) => makeProperty({
@@ -1387,7 +1361,6 @@
1387
1361
  });
1388
1362
  });
1389
1363
  }
1390
-
1391
1364
  const subEntryPages = chunkArray(subEntries, pageSize);
1392
1365
  return renderer(_extends({
1393
1366
  handleEntry: entry => /*#__PURE__*/React__namespace.createElement(Explorer, _extends({
@@ -1406,21 +1379,19 @@
1406
1379
  }
1407
1380
 
1408
1381
  const _excluded = ["style"],
1409
- _excluded2 = ["style", "onClick"],
1410
- _excluded3 = ["style", "onClick"],
1411
- _excluded4 = ["isOpen", "setIsOpen", "handleDragStart", "router"];
1382
+ _excluded2 = ["style", "onClick"],
1383
+ _excluded3 = ["style", "onClick"],
1384
+ _excluded4 = ["isOpen", "setIsOpen", "handleDragStart", "router"];
1412
1385
  const isServer = typeof window === 'undefined';
1413
-
1414
1386
  function Logo(props) {
1415
1387
  var _props$style;
1416
-
1417
1388
  return /*#__PURE__*/React__default["default"].createElement("div", _extends({}, props, {
1418
1389
  style: _extends({}, (_props$style = props.style) != null ? _props$style : {}, {
1419
1390
  display: 'flex',
1420
1391
  alignItems: 'center',
1421
1392
  flexDirection: 'column',
1422
- fontSize: '0.7rem',
1423
- fontWeight: '900',
1393
+ fontSize: '0.8rem',
1394
+ fontWeight: 'bolder',
1424
1395
  lineHeight: '1'
1425
1396
  })
1426
1397
  }), /*#__PURE__*/React__default["default"].createElement("div", {
@@ -1428,14 +1399,19 @@
1428
1399
  letterSpacing: '-0.05rem'
1429
1400
  }
1430
1401
  }, "TANSTACK"), /*#__PURE__*/React__default["default"].createElement("div", {
1431
- className: "text-transparent bg-clip-text bg-gradient-to-r from-lime-500 to-emerald-500",
1432
1402
  style: {
1403
+ backgroundImage: 'linear-gradient(to right, var(--tw-gradient-stops))',
1404
+ // @ts-ignore
1405
+ '--tw-gradient-from': '#84cc16',
1406
+ '--tw-gradient-stops': 'var(--tw-gradient-from), var(--tw-gradient-to)',
1407
+ '--tw-gradient-to': '#10b981',
1408
+ WebkitBackgroundClip: 'text',
1409
+ color: 'transparent',
1433
1410
  letterSpacing: '0.1rem',
1434
1411
  marginRight: '-0.2rem'
1435
1412
  }
1436
1413
  }, "ROUTER"));
1437
1414
  }
1438
-
1439
1415
  function TanStackRouterDevtools(_ref) {
1440
1416
  let {
1441
1417
  initialIsOpen,
@@ -1453,10 +1429,8 @@
1453
1429
  const [isResolvedOpen, setIsResolvedOpen] = useSafeState(false);
1454
1430
  const [isResizing, setIsResizing] = useSafeState(false);
1455
1431
  const isMounted = useIsMounted();
1456
-
1457
1432
  const _handleDragStart = (panelElement, startEvent) => {
1458
1433
  var _panelElement$getBoun;
1459
-
1460
1434
  if (startEvent.button !== 0) return; // Only allow left click for drag
1461
1435
 
1462
1436
  setIsResizing(true);
@@ -1464,50 +1438,43 @@
1464
1438
  originalHeight: (_panelElement$getBoun = panelElement == null ? void 0 : panelElement.getBoundingClientRect().height) != null ? _panelElement$getBoun : 0,
1465
1439
  pageY: startEvent.pageY
1466
1440
  };
1467
-
1468
1441
  const run = moveEvent => {
1469
1442
  const delta = dragInfo.pageY - moveEvent.pageY;
1470
1443
  const newHeight = (dragInfo == null ? void 0 : dragInfo.originalHeight) + delta;
1471
1444
  setDevtoolsHeight(newHeight);
1472
-
1473
1445
  if (newHeight < 70) {
1474
1446
  setIsOpen(false);
1475
1447
  } else {
1476
1448
  setIsOpen(true);
1477
1449
  }
1478
1450
  };
1479
-
1480
1451
  const unsub = () => {
1481
1452
  setIsResizing(false);
1482
1453
  document.removeEventListener('mousemove', run);
1483
1454
  document.removeEventListener('mouseUp', unsub);
1484
1455
  };
1485
-
1486
1456
  document.addEventListener('mousemove', run);
1487
1457
  document.addEventListener('mouseup', unsub);
1488
1458
  };
1489
-
1490
1459
  React__default["default"].useEffect(() => {
1491
1460
  setIsResolvedOpen(isOpen != null ? isOpen : false);
1492
- }, [isOpen, isResolvedOpen, setIsResolvedOpen]); // Toggle panel visibility before/after transition (depending on direction).
1493
- // Prevents focusing in a closed panel.
1461
+ }, [isOpen, isResolvedOpen, setIsResolvedOpen]);
1494
1462
 
1463
+ // Toggle panel visibility before/after transition (depending on direction).
1464
+ // Prevents focusing in a closed panel.
1495
1465
  React__default["default"].useEffect(() => {
1496
1466
  const ref = panelRef.current;
1497
-
1498
1467
  if (ref) {
1499
1468
  const handlePanelTransitionStart = () => {
1500
1469
  if (ref && isResolvedOpen) {
1501
1470
  ref.style.visibility = 'visible';
1502
1471
  }
1503
1472
  };
1504
-
1505
1473
  const handlePanelTransitionEnd = () => {
1506
1474
  if (ref && !isResolvedOpen) {
1507
1475
  ref.style.visibility = 'hidden';
1508
1476
  }
1509
1477
  };
1510
-
1511
1478
  ref.addEventListener('transitionstart', handlePanelTransitionStart);
1512
1479
  ref.addEventListener('transitionend', handlePanelTransitionEnd);
1513
1480
  return () => {
@@ -1515,62 +1482,49 @@
1515
1482
  ref.removeEventListener('transitionend', handlePanelTransitionEnd);
1516
1483
  };
1517
1484
  }
1518
-
1519
1485
  return;
1520
1486
  }, [isResolvedOpen]);
1521
1487
  React__default["default"][isServer ? 'useEffect' : 'useLayoutEffect'](() => {
1522
1488
  if (isResolvedOpen) {
1523
1489
  var _rootRef$current, _rootRef$current$pare;
1524
-
1525
1490
  const previousValue = (_rootRef$current = rootRef.current) == null ? void 0 : (_rootRef$current$pare = _rootRef$current.parentElement) == null ? void 0 : _rootRef$current$pare.style.paddingBottom;
1526
-
1527
1491
  const run = () => {
1528
1492
  var _panelRef$current, _rootRef$current2;
1529
-
1530
1493
  const containerHeight = (_panelRef$current = panelRef.current) == null ? void 0 : _panelRef$current.getBoundingClientRect().height;
1531
-
1532
1494
  if ((_rootRef$current2 = rootRef.current) != null && _rootRef$current2.parentElement) {
1533
1495
  rootRef.current.parentElement.style.paddingBottom = containerHeight + "px";
1534
1496
  }
1535
1497
  };
1536
-
1537
1498
  run();
1538
-
1539
1499
  if (typeof window !== 'undefined') {
1540
1500
  window.addEventListener('resize', run);
1541
1501
  return () => {
1542
1502
  var _rootRef$current3;
1543
-
1544
1503
  window.removeEventListener('resize', run);
1545
-
1546
1504
  if ((_rootRef$current3 = rootRef.current) != null && _rootRef$current3.parentElement && typeof previousValue === 'string') {
1547
1505
  rootRef.current.parentElement.style.paddingBottom = previousValue;
1548
1506
  }
1549
1507
  };
1550
1508
  }
1551
1509
  }
1552
-
1553
1510
  return;
1554
1511
  }, [isResolvedOpen]);
1555
-
1556
1512
  const {
1557
- style: panelStyle = {}
1558
- } = panelProps,
1559
- otherPanelProps = _objectWithoutPropertiesLoose(panelProps, _excluded);
1560
-
1513
+ style: panelStyle = {}
1514
+ } = panelProps,
1515
+ otherPanelProps = _objectWithoutPropertiesLoose(panelProps, _excluded);
1561
1516
  const {
1562
- style: closeButtonStyle = {},
1563
- onClick: onCloseClick
1564
- } = closeButtonProps,
1565
- otherCloseButtonProps = _objectWithoutPropertiesLoose(closeButtonProps, _excluded2);
1566
-
1517
+ style: closeButtonStyle = {},
1518
+ onClick: onCloseClick
1519
+ } = closeButtonProps,
1520
+ otherCloseButtonProps = _objectWithoutPropertiesLoose(closeButtonProps, _excluded2);
1567
1521
  const {
1568
- style: toggleButtonStyle = {},
1569
- onClick: onToggleClick
1570
- } = toggleButtonProps,
1571
- otherToggleButtonProps = _objectWithoutPropertiesLoose(toggleButtonProps, _excluded3); // Do not render on the server
1572
-
1522
+ style: toggleButtonStyle = {},
1523
+ onClick: onToggleClick
1524
+ } = toggleButtonProps,
1525
+ otherToggleButtonProps = _objectWithoutPropertiesLoose(toggleButtonProps, _excluded3);
1573
1526
 
1527
+ // Do not render on the server
1574
1528
  if (!isMounted()) return null;
1575
1529
  return /*#__PURE__*/React__default["default"].createElement(Container, {
1576
1530
  ref: rootRef,
@@ -1671,19 +1625,20 @@
1671
1625
  }
1672
1626
  const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwardRef(function TanStackRouterDevtoolsPanel(props, ref) {
1673
1627
  var _Object$values$find$m, _Object$values, _Object$values$find, _router$state$matches, _router$state$pending, _router$state$pending2, _last, _last2, _last3, _last4, _last5, _last6;
1674
-
1675
1628
  const {
1676
- isOpen = true,
1677
- handleDragStart,
1678
- router
1679
- } = props,
1680
- panelProps = _objectWithoutPropertiesLoose(props, _excluded4);
1681
-
1629
+ isOpen = true,
1630
+ handleDragStart,
1631
+ router: userRouter
1632
+ } = props,
1633
+ panelProps = _objectWithoutPropertiesLoose(props, _excluded4);
1634
+ const routerContextValue = React__default["default"].useContext(reactRouter.routerContext);
1635
+ const router = userRouter != null ? userRouter : routerContextValue == null ? void 0 : routerContextValue.router;
1636
+ reactRouter.invariant(router, 'No router was found for the TanStack Router Devtools. Please place the devtools in the <RouterProvider> component tree or pass the router instance to the devtools manually.');
1682
1637
  const rerender = React__default["default"].useReducer(() => ({}), {})[1];
1683
1638
  React__default["default"].useEffect(() => {
1684
1639
  let interval = setInterval(() => {
1685
- router.cleanMatchCache(); // router.notify()
1686
-
1640
+ router.cleanMatchCache();
1641
+ // router.notify()
1687
1642
  rerender();
1688
1643
  }, 250);
1689
1644
  return () => {
@@ -1702,9 +1657,7 @@
1702
1657
  }).map(key => router.matchCache[key]), [d => d.match.isFetching ? -1 : 1, d => -d.match.updatedAt]);
1703
1658
  return /*#__PURE__*/React__default["default"].createElement(ThemeProvider, {
1704
1659
  theme: defaultTheme
1705
- }, /*#__PURE__*/React__default["default"].createElement("script", {
1706
- src: "https://cdn.tailwindcss.com"
1707
- }), /*#__PURE__*/React__default["default"].createElement(Panel, _extends({
1660
+ }, /*#__PURE__*/React__default["default"].createElement(Panel, _extends({
1708
1661
  ref: ref,
1709
1662
  className: "TanStackRouterDevtoolsPanel"
1710
1663
  }, panelProps), /*#__PURE__*/React__default["default"].createElement("style", {
@@ -1734,8 +1687,12 @@
1734
1687
  flexDirection: 'column'
1735
1688
  }
1736
1689
  }, /*#__PURE__*/React__default["default"].createElement("div", {
1737
- className: "flex justify-start gap-2 p-2 items-center",
1738
1690
  style: {
1691
+ display: 'flex',
1692
+ justifyContent: 'start',
1693
+ gap: '1rem',
1694
+ padding: '1rem',
1695
+ alignItems: 'center',
1739
1696
  background: defaultTheme.backgroundAlt
1740
1697
  }
1741
1698
  }, /*#__PURE__*/React__default["default"].createElement(Logo, {
@@ -1943,10 +1900,6 @@
1943
1900
  style: {
1944
1901
  opacity: '.5'
1945
1902
  }
1946
- }, "Pending"), /*#__PURE__*/React__default["default"].createElement("td", null, activeMatch.isPending.toString())), /*#__PURE__*/React__default["default"].createElement("tr", null, /*#__PURE__*/React__default["default"].createElement("td", {
1947
- style: {
1948
- opacity: '.5'
1949
- }
1950
1903
  }, "Invalid"), /*#__PURE__*/React__default["default"].createElement("td", null, activeMatch.isInvalid.toString())), /*#__PURE__*/React__default["default"].createElement("tr", null, /*#__PURE__*/React__default["default"].createElement("td", {
1951
1904
  style: {
1952
1905
  opacity: '.5'