@tanstack/router-devtools 0.0.1-beta.223 → 0.0.1-beta.225
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.
- package/build/cjs/Explorer.js +5 -6
- package/build/cjs/Explorer.js.map +1 -1
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +1 -3
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
- package/build/cjs/devtools.js +68 -74
- package/build/cjs/devtools.js.map +1 -1
- package/build/cjs/index.js +0 -2
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/styledComponents.js +0 -3
- package/build/cjs/styledComponents.js.map +1 -1
- package/build/cjs/theme.js +3 -9
- package/build/cjs/theme.js.map +1 -1
- package/build/cjs/useLocalStorage.js +4 -8
- package/build/cjs/useLocalStorage.js.map +1 -1
- package/build/cjs/useMediaQuery.js +3 -7
- package/build/cjs/useMediaQuery.js.map +1 -1
- package/build/cjs/utils.js +8 -14
- package/build/cjs/utils.js.map +1 -1
- package/build/esm/index.js +0 -1
- package/build/esm/index.js.map +1 -1
- package/build/stats-html.html +3494 -2700
- package/build/stats-react.json +149 -132
- package/build/types/Explorer.d.ts +3 -3
- package/build/types/styledComponents.d.ts +3 -3
- package/build/types/theme.d.ts +1 -1
- package/build/umd/index.development.js +113 -90
- package/build/umd/index.development.js.map +1 -1
- package/build/umd/index.production.js +2 -3
- package/build/umd/index.production.js.map +1 -1
- package/package.json +2 -2
package/build/cjs/Explorer.js
CHANGED
|
@@ -16,8 +16,7 @@ var _rollupPluginBabelHelpers = require('./_virtual/_rollupPluginBabelHelpers.js
|
|
|
16
16
|
var React = require('react');
|
|
17
17
|
var utils = require('./utils.js');
|
|
18
18
|
|
|
19
|
-
function
|
|
20
|
-
if (e && e.__esModule) return e;
|
|
19
|
+
function _interopNamespaceDefault(e) {
|
|
21
20
|
var n = Object.create(null);
|
|
22
21
|
if (e) {
|
|
23
22
|
Object.keys(e).forEach(function (k) {
|
|
@@ -30,11 +29,11 @@ function _interopNamespace(e) {
|
|
|
30
29
|
}
|
|
31
30
|
});
|
|
32
31
|
}
|
|
33
|
-
n
|
|
32
|
+
n.default = e;
|
|
34
33
|
return Object.freeze(n);
|
|
35
34
|
}
|
|
36
35
|
|
|
37
|
-
var React__namespace = /*#__PURE__*/
|
|
36
|
+
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
38
37
|
|
|
39
38
|
const Entry = utils.styled('div', {
|
|
40
39
|
fontFamily: 'Menlo, monospace',
|
|
@@ -188,7 +187,7 @@ function Explorer({
|
|
|
188
187
|
subEntries = filterSubEntries ? filterSubEntries(subEntries) : subEntries;
|
|
189
188
|
const subEntryPages = chunkArray(subEntries, pageSize);
|
|
190
189
|
return renderer({
|
|
191
|
-
handleEntry: entry => /*#__PURE__*/React__namespace.createElement(Explorer, _rollupPluginBabelHelpers
|
|
190
|
+
handleEntry: entry => /*#__PURE__*/React__namespace.createElement(Explorer, _rollupPluginBabelHelpers.extends({
|
|
192
191
|
key: entry.label,
|
|
193
192
|
value: value,
|
|
194
193
|
renderer: renderer,
|
|
@@ -215,5 +214,5 @@ exports.LabelButton = LabelButton;
|
|
|
215
214
|
exports.SubEntries = SubEntries;
|
|
216
215
|
exports.Value = Value;
|
|
217
216
|
exports.chunkArray = chunkArray;
|
|
218
|
-
exports
|
|
217
|
+
exports.default = Explorer;
|
|
219
218
|
//# sourceMappingURL=Explorer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Explorer.js","sources":["../../src/Explorer.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { displayValue, styled } from './utils'\n\nexport const Entry = styled('div', {\n fontFamily: 'Menlo, monospace',\n fontSize: '.7rem',\n lineHeight: '1.7',\n outline: 'none',\n wordBreak: 'break-word',\n})\n\nexport const Label = styled('span', {\n color: 'white',\n})\n\nexport const LabelButton = styled('button', {\n cursor: 'pointer',\n color: 'white',\n})\n\nexport const ExpandButton = styled('button', {\n cursor: 'pointer',\n color: 'inherit',\n font: 'inherit',\n outline: 'inherit',\n background: 'transparent',\n border: 'none',\n padding: 0,\n})\n\nexport const Value = styled('span', (_props, theme) => ({\n color: theme.danger,\n}))\n\nexport const SubEntries = styled('div', {\n marginLeft: '.1em',\n paddingLeft: '1em',\n borderLeft: '2px solid rgba(0,0,0,.15)',\n})\n\nexport const Info = styled('span', {\n color: 'grey',\n fontSize: '.7em',\n})\n\ntype ExpanderProps = {\n expanded: boolean\n style?: React.CSSProperties\n}\n\nexport const Expander = ({ expanded, style = {} }: ExpanderProps) => (\n <span\n style={{\n display: 'inline-block',\n transition: 'all .1s ease',\n transform: `rotate(${expanded ? 90 : 0}deg) ${style.transform || ''}`,\n ...style,\n }}\n >\n ▶\n </span>\n)\n\ntype Entry = {\n label: string\n}\n\ntype RendererProps = {\n handleEntry: HandleEntryFn\n label?: React.ReactNode\n value: unknown\n subEntries: Entry[]\n subEntryPages: Entry[][]\n type: string\n expanded: boolean\n toggleExpanded: () => void\n pageSize: number\n renderer?: Renderer\n filterSubEntries?: (subEntries: Property[]) => Property[]\n}\n\n/**\n * Chunk elements in the array by size\n *\n * when the array cannot be chunked evenly by size, the last chunk will be\n * filled with the remaining elements\n *\n * @example\n * chunkArray(['a','b', 'c', 'd', 'e'], 2) // returns [['a','b'], ['c', 'd'], ['e']]\n */\nexport function chunkArray<T>(array: T[], size: number): T[][] {\n if (size < 1) return []\n let i = 0\n const result: T[][] = []\n while (i < array.length) {\n result.push(array.slice(i, i + size))\n i = i + size\n }\n return result\n}\n\ntype Renderer = (props: RendererProps) => JSX.Element\n\nexport const DefaultRenderer: Renderer = ({\n handleEntry,\n label,\n value,\n subEntries = [],\n subEntryPages = [],\n type,\n expanded = false,\n toggleExpanded,\n pageSize,\n renderer,\n}) => {\n const [expandedPages, setExpandedPages] = React.useState<number[]>([])\n const [valueSnapshot, setValueSnapshot] = React.useState(undefined)\n\n const refreshValueSnapshot = () => {\n setValueSnapshot((value as () => any)())\n }\n\n return (\n <Entry>\n {subEntryPages.length ? (\n <>\n <ExpandButton onClick={() => toggleExpanded()}>\n <Expander expanded={expanded} /> {label}{' '}\n <Info>\n {String(type).toLowerCase() === 'iterable' ? '(Iterable) ' : ''}\n {subEntries.length} {subEntries.length > 1 ? `items` : `item`}\n </Info>\n </ExpandButton>\n {expanded ? (\n subEntryPages.length === 1 ? (\n <SubEntries>\n {subEntries.map((entry, index) => handleEntry(entry))}\n </SubEntries>\n ) : (\n <SubEntries>\n {subEntryPages.map((entries, index) => (\n <div key={index}>\n <Entry>\n <LabelButton\n onClick={() =>\n setExpandedPages((old) =>\n old.includes(index)\n ? old.filter((d) => d !== index)\n : [...old, index],\n )\n }\n >\n <Expander expanded={expanded} /> [{index * pageSize} ...{' '}\n {index * pageSize + pageSize - 1}]\n </LabelButton>\n {expandedPages.includes(index) ? (\n <SubEntries>\n {entries.map((entry) => handleEntry(entry))}\n </SubEntries>\n ) : null}\n </Entry>\n </div>\n ))}\n </SubEntries>\n )\n ) : null}\n </>\n ) : type === 'function' ? (\n <>\n <Explorer\n renderer={renderer}\n label={\n <button\n onClick={refreshValueSnapshot}\n style={{\n appearance: 'none',\n border: '0',\n background: 'transparent',\n }}\n >\n <Label>{label}</Label> 🔄{' '}\n </button>\n }\n value={valueSnapshot}\n defaultExpanded={{}}\n />\n </>\n ) : (\n <>\n <Label>{label}:</Label> <Value>{displayValue(value)}</Value>\n </>\n )}\n </Entry>\n )\n}\n\ntype HandleEntryFn = (entry: Entry) => JSX.Element\n\ntype ExplorerProps = Partial<RendererProps> & {\n renderer?: Renderer\n defaultExpanded?: true | Record<string, boolean>\n}\n\ntype Property = {\n defaultExpanded?: boolean | Record<string, boolean>\n label: string\n value: unknown\n}\n\nfunction isIterable(x: any): x is Iterable<unknown> {\n return Symbol.iterator in x\n}\n\nexport default function Explorer({\n value,\n defaultExpanded,\n renderer = DefaultRenderer,\n pageSize = 100,\n filterSubEntries,\n ...rest\n}: ExplorerProps) {\n const [expanded, setExpanded] = React.useState(Boolean(defaultExpanded))\n const toggleExpanded = React.useCallback(() => setExpanded((old) => !old), [])\n\n let type: string = typeof value\n let subEntries: Property[] = []\n\n const makeProperty = (sub: { label: string; value: unknown }): Property => {\n const subDefaultExpanded =\n defaultExpanded === true\n ? { [sub.label]: true }\n : defaultExpanded?.[sub.label]\n return {\n ...sub,\n defaultExpanded: subDefaultExpanded,\n }\n }\n\n if (Array.isArray(value)) {\n type = 'array'\n subEntries = value.map((d, i) =>\n makeProperty({\n label: i.toString(),\n value: d,\n }),\n )\n } else if (\n value !== null &&\n typeof value === 'object' &&\n isIterable(value) &&\n typeof value[Symbol.iterator] === 'function'\n ) {\n type = 'Iterable'\n subEntries = Array.from(value, (val, i) =>\n makeProperty({\n label: i.toString(),\n value: val,\n }),\n )\n } else if (typeof value === 'object' && value !== null) {\n type = 'object'\n subEntries = Object.entries(value).map(([key, val]) =>\n makeProperty({\n label: key,\n value: val,\n }),\n )\n }\n\n subEntries = filterSubEntries ? filterSubEntries(subEntries) : subEntries\n\n const subEntryPages = chunkArray(subEntries, pageSize)\n\n return renderer({\n handleEntry: (entry) => (\n <Explorer\n key={entry.label}\n value={value}\n renderer={renderer}\n filterSubEntries={filterSubEntries}\n {...rest}\n {...entry}\n />\n ),\n type,\n subEntries,\n subEntryPages,\n value,\n expanded,\n toggleExpanded,\n pageSize,\n ...rest,\n })\n}\n"],"names":["Entry","styled","fontFamily","fontSize","lineHeight","outline","wordBreak","Label","color","LabelButton","cursor","ExpandButton","font","background","border","padding","Value","_props","theme","danger","SubEntries","marginLeft","paddingLeft","borderLeft","Info","Expander","expanded","style","React","createElement","display","transition","transform","chunkArray","array","size","i","result","length","push","slice","DefaultRenderer","handleEntry","label","value","subEntries","subEntryPages","type","toggleExpanded","pageSize","renderer","expandedPages","setExpandedPages","useState","valueSnapshot","setValueSnapshot","undefined","refreshValueSnapshot","Fragment","onClick","String","toLowerCase","map","entry","index","entries","key","old","includes","filter","d","Explorer","appearance","defaultExpanded","displayValue","isIterable","x","Symbol","iterator","filterSubEntries","rest","setExpanded","Boolean","useCallback","makeProperty","sub","subDefaultExpanded","Array","isArray","toString","from","val","Object","_extends"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Explorer.js","sources":["../../src/Explorer.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { displayValue, styled } from './utils'\n\nexport const Entry = styled('div', {\n fontFamily: 'Menlo, monospace',\n fontSize: '.7rem',\n lineHeight: '1.7',\n outline: 'none',\n wordBreak: 'break-word',\n})\n\nexport const Label = styled('span', {\n color: 'white',\n})\n\nexport const LabelButton = styled('button', {\n cursor: 'pointer',\n color: 'white',\n})\n\nexport const ExpandButton = styled('button', {\n cursor: 'pointer',\n color: 'inherit',\n font: 'inherit',\n outline: 'inherit',\n background: 'transparent',\n border: 'none',\n padding: 0,\n})\n\nexport const Value = styled('span', (_props, theme) => ({\n color: theme.danger,\n}))\n\nexport const SubEntries = styled('div', {\n marginLeft: '.1em',\n paddingLeft: '1em',\n borderLeft: '2px solid rgba(0,0,0,.15)',\n})\n\nexport const Info = styled('span', {\n color: 'grey',\n fontSize: '.7em',\n})\n\ntype ExpanderProps = {\n expanded: boolean\n style?: React.CSSProperties\n}\n\nexport const Expander = ({ expanded, style = {} }: ExpanderProps) => (\n <span\n style={{\n display: 'inline-block',\n transition: 'all .1s ease',\n transform: `rotate(${expanded ? 90 : 0}deg) ${style.transform || ''}`,\n ...style,\n }}\n >\n ▶\n </span>\n)\n\ntype Entry = {\n label: string\n}\n\ntype RendererProps = {\n handleEntry: HandleEntryFn\n label?: React.ReactNode\n value: unknown\n subEntries: Entry[]\n subEntryPages: Entry[][]\n type: string\n expanded: boolean\n toggleExpanded: () => void\n pageSize: number\n renderer?: Renderer\n filterSubEntries?: (subEntries: Property[]) => Property[]\n}\n\n/**\n * Chunk elements in the array by size\n *\n * when the array cannot be chunked evenly by size, the last chunk will be\n * filled with the remaining elements\n *\n * @example\n * chunkArray(['a','b', 'c', 'd', 'e'], 2) // returns [['a','b'], ['c', 'd'], ['e']]\n */\nexport function chunkArray<T>(array: T[], size: number): T[][] {\n if (size < 1) return []\n let i = 0\n const result: T[][] = []\n while (i < array.length) {\n result.push(array.slice(i, i + size))\n i = i + size\n }\n return result\n}\n\ntype Renderer = (props: RendererProps) => JSX.Element\n\nexport const DefaultRenderer: Renderer = ({\n handleEntry,\n label,\n value,\n subEntries = [],\n subEntryPages = [],\n type,\n expanded = false,\n toggleExpanded,\n pageSize,\n renderer,\n}) => {\n const [expandedPages, setExpandedPages] = React.useState<number[]>([])\n const [valueSnapshot, setValueSnapshot] = React.useState(undefined)\n\n const refreshValueSnapshot = () => {\n setValueSnapshot((value as () => any)())\n }\n\n return (\n <Entry>\n {subEntryPages.length ? (\n <>\n <ExpandButton onClick={() => toggleExpanded()}>\n <Expander expanded={expanded} /> {label}{' '}\n <Info>\n {String(type).toLowerCase() === 'iterable' ? '(Iterable) ' : ''}\n {subEntries.length} {subEntries.length > 1 ? `items` : `item`}\n </Info>\n </ExpandButton>\n {expanded ? (\n subEntryPages.length === 1 ? (\n <SubEntries>\n {subEntries.map((entry, index) => handleEntry(entry))}\n </SubEntries>\n ) : (\n <SubEntries>\n {subEntryPages.map((entries, index) => (\n <div key={index}>\n <Entry>\n <LabelButton\n onClick={() =>\n setExpandedPages((old) =>\n old.includes(index)\n ? old.filter((d) => d !== index)\n : [...old, index],\n )\n }\n >\n <Expander expanded={expanded} /> [{index * pageSize} ...{' '}\n {index * pageSize + pageSize - 1}]\n </LabelButton>\n {expandedPages.includes(index) ? (\n <SubEntries>\n {entries.map((entry) => handleEntry(entry))}\n </SubEntries>\n ) : null}\n </Entry>\n </div>\n ))}\n </SubEntries>\n )\n ) : null}\n </>\n ) : type === 'function' ? (\n <>\n <Explorer\n renderer={renderer}\n label={\n <button\n onClick={refreshValueSnapshot}\n style={{\n appearance: 'none',\n border: '0',\n background: 'transparent',\n }}\n >\n <Label>{label}</Label> 🔄{' '}\n </button>\n }\n value={valueSnapshot}\n defaultExpanded={{}}\n />\n </>\n ) : (\n <>\n <Label>{label}:</Label> <Value>{displayValue(value)}</Value>\n </>\n )}\n </Entry>\n )\n}\n\ntype HandleEntryFn = (entry: Entry) => JSX.Element\n\ntype ExplorerProps = Partial<RendererProps> & {\n renderer?: Renderer\n defaultExpanded?: true | Record<string, boolean>\n}\n\ntype Property = {\n defaultExpanded?: boolean | Record<string, boolean>\n label: string\n value: unknown\n}\n\nfunction isIterable(x: any): x is Iterable<unknown> {\n return Symbol.iterator in x\n}\n\nexport default function Explorer({\n value,\n defaultExpanded,\n renderer = DefaultRenderer,\n pageSize = 100,\n filterSubEntries,\n ...rest\n}: ExplorerProps) {\n const [expanded, setExpanded] = React.useState(Boolean(defaultExpanded))\n const toggleExpanded = React.useCallback(() => setExpanded((old) => !old), [])\n\n let type: string = typeof value\n let subEntries: Property[] = []\n\n const makeProperty = (sub: { label: string; value: unknown }): Property => {\n const subDefaultExpanded =\n defaultExpanded === true\n ? { [sub.label]: true }\n : defaultExpanded?.[sub.label]\n return {\n ...sub,\n defaultExpanded: subDefaultExpanded,\n }\n }\n\n if (Array.isArray(value)) {\n type = 'array'\n subEntries = value.map((d, i) =>\n makeProperty({\n label: i.toString(),\n value: d,\n }),\n )\n } else if (\n value !== null &&\n typeof value === 'object' &&\n isIterable(value) &&\n typeof value[Symbol.iterator] === 'function'\n ) {\n type = 'Iterable'\n subEntries = Array.from(value, (val, i) =>\n makeProperty({\n label: i.toString(),\n value: val,\n }),\n )\n } else if (typeof value === 'object' && value !== null) {\n type = 'object'\n subEntries = Object.entries(value).map(([key, val]) =>\n makeProperty({\n label: key,\n value: val,\n }),\n )\n }\n\n subEntries = filterSubEntries ? filterSubEntries(subEntries) : subEntries\n\n const subEntryPages = chunkArray(subEntries, pageSize)\n\n return renderer({\n handleEntry: (entry) => (\n <Explorer\n key={entry.label}\n value={value}\n renderer={renderer}\n filterSubEntries={filterSubEntries}\n {...rest}\n {...entry}\n />\n ),\n type,\n subEntries,\n subEntryPages,\n value,\n expanded,\n toggleExpanded,\n pageSize,\n ...rest,\n })\n}\n"],"names":["Entry","styled","fontFamily","fontSize","lineHeight","outline","wordBreak","Label","color","LabelButton","cursor","ExpandButton","font","background","border","padding","Value","_props","theme","danger","SubEntries","marginLeft","paddingLeft","borderLeft","Info","Expander","expanded","style","React","createElement","display","transition","transform","chunkArray","array","size","i","result","length","push","slice","DefaultRenderer","handleEntry","label","value","subEntries","subEntryPages","type","toggleExpanded","pageSize","renderer","expandedPages","setExpandedPages","useState","valueSnapshot","setValueSnapshot","undefined","refreshValueSnapshot","Fragment","onClick","String","toLowerCase","map","entry","index","entries","key","old","includes","filter","d","Explorer","appearance","defaultExpanded","displayValue","isIterable","x","Symbol","iterator","filterSubEntries","rest","setExpanded","Boolean","useCallback","makeProperty","sub","subDefaultExpanded","Array","isArray","toString","from","val","Object","_extends"],"mappings":"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"}
|
|
@@ -10,8 +10,6 @@
|
|
|
10
10
|
*/
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
14
|
-
|
|
15
13
|
function _extends() {
|
|
16
14
|
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
17
15
|
for (var i = 1; i < arguments.length; i++) {
|
|
@@ -27,5 +25,5 @@ function _extends() {
|
|
|
27
25
|
return _extends.apply(this, arguments);
|
|
28
26
|
}
|
|
29
27
|
|
|
30
|
-
exports
|
|
28
|
+
exports.extends = _extends;
|
|
31
29
|
//# sourceMappingURL=_rollupPluginBabelHelpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_rollupPluginBabelHelpers.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"_rollupPluginBabelHelpers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/build/cjs/devtools.js
CHANGED
|
@@ -10,8 +10,6 @@
|
|
|
10
10
|
*/
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
14
|
-
|
|
15
13
|
var _rollupPluginBabelHelpers = require('./_virtual/_rollupPluginBabelHelpers.js');
|
|
16
14
|
var React = require('react');
|
|
17
15
|
var reactRouter = require('@tanstack/react-router');
|
|
@@ -21,13 +19,9 @@ var styledComponents = require('./styledComponents.js');
|
|
|
21
19
|
var theme = require('./theme.js');
|
|
22
20
|
var Explorer = require('./Explorer.js');
|
|
23
21
|
|
|
24
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
25
|
-
|
|
26
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
27
|
-
|
|
28
22
|
const isServer = typeof window === 'undefined';
|
|
29
23
|
function Logo(props) {
|
|
30
|
-
return /*#__PURE__*/
|
|
24
|
+
return /*#__PURE__*/React.createElement("div", _rollupPluginBabelHelpers.extends({}, props, {
|
|
31
25
|
style: {
|
|
32
26
|
...(props.style ?? {}),
|
|
33
27
|
display: 'flex',
|
|
@@ -37,11 +31,11 @@ function Logo(props) {
|
|
|
37
31
|
fontWeight: 'bolder',
|
|
38
32
|
lineHeight: '1'
|
|
39
33
|
}
|
|
40
|
-
}), /*#__PURE__*/
|
|
34
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
41
35
|
style: {
|
|
42
36
|
letterSpacing: '-0.05rem'
|
|
43
37
|
}
|
|
44
|
-
}, "TANSTACK"), /*#__PURE__*/
|
|
38
|
+
}, "TANSTACK"), /*#__PURE__*/React.createElement("div", {
|
|
45
39
|
style: {
|
|
46
40
|
backgroundImage: 'linear-gradient(to right, var(--tw-gradient-stops))',
|
|
47
41
|
// @ts-ignore
|
|
@@ -64,10 +58,10 @@ function TanStackRouterDevtools({
|
|
|
64
58
|
containerElement: Container = 'footer',
|
|
65
59
|
router
|
|
66
60
|
}) {
|
|
67
|
-
const rootRef =
|
|
68
|
-
const panelRef =
|
|
69
|
-
const [isOpen, setIsOpen] = useLocalStorage
|
|
70
|
-
const [devtoolsHeight, setDevtoolsHeight] = useLocalStorage
|
|
61
|
+
const rootRef = React.useRef(null);
|
|
62
|
+
const panelRef = React.useRef(null);
|
|
63
|
+
const [isOpen, setIsOpen] = useLocalStorage.default('tanstackRouterDevtoolsOpen', initialIsOpen);
|
|
64
|
+
const [devtoolsHeight, setDevtoolsHeight] = useLocalStorage.default('tanstackRouterDevtoolsHeight', null);
|
|
71
65
|
const [isResolvedOpen, setIsResolvedOpen] = utils.useSafeState(false);
|
|
72
66
|
const [isResizing, setIsResizing] = utils.useSafeState(false);
|
|
73
67
|
const isMounted = utils.useIsMounted();
|
|
@@ -97,13 +91,13 @@ function TanStackRouterDevtools({
|
|
|
97
91
|
document.addEventListener('mousemove', run);
|
|
98
92
|
document.addEventListener('mouseup', unsub);
|
|
99
93
|
};
|
|
100
|
-
|
|
94
|
+
React.useEffect(() => {
|
|
101
95
|
setIsResolvedOpen(isOpen ?? false);
|
|
102
96
|
}, [isOpen, isResolvedOpen, setIsResolvedOpen]);
|
|
103
97
|
|
|
104
98
|
// Toggle panel visibility before/after transition (depending on direction).
|
|
105
99
|
// Prevents focusing in a closed panel.
|
|
106
|
-
|
|
100
|
+
React.useEffect(() => {
|
|
107
101
|
const ref = panelRef.current;
|
|
108
102
|
if (ref) {
|
|
109
103
|
const handlePanelTransitionStart = () => {
|
|
@@ -125,7 +119,7 @@ function TanStackRouterDevtools({
|
|
|
125
119
|
}
|
|
126
120
|
return;
|
|
127
121
|
}, [isResolvedOpen]);
|
|
128
|
-
|
|
122
|
+
React[isServer ? 'useEffect' : 'useLayoutEffect'](() => {
|
|
129
123
|
if (isResolvedOpen) {
|
|
130
124
|
const previousValue = rootRef.current?.parentElement?.style.paddingBottom;
|
|
131
125
|
const run = () => {
|
|
@@ -164,12 +158,12 @@ function TanStackRouterDevtools({
|
|
|
164
158
|
|
|
165
159
|
// Do not render on the server
|
|
166
160
|
if (!isMounted()) return null;
|
|
167
|
-
return /*#__PURE__*/
|
|
161
|
+
return /*#__PURE__*/React.createElement(Container, {
|
|
168
162
|
ref: rootRef,
|
|
169
163
|
className: "TanStackRouterDevtools"
|
|
170
|
-
}, /*#__PURE__*/
|
|
164
|
+
}, /*#__PURE__*/React.createElement(theme.ThemeProvider, {
|
|
171
165
|
theme: theme.defaultTheme
|
|
172
|
-
}, /*#__PURE__*/
|
|
166
|
+
}, /*#__PURE__*/React.createElement(TanStackRouterDevtoolsPanel, _rollupPluginBabelHelpers.extends({
|
|
173
167
|
ref: panelRef
|
|
174
168
|
}, otherPanelProps, {
|
|
175
169
|
router: router,
|
|
@@ -205,7 +199,7 @@ function TanStackRouterDevtools({
|
|
|
205
199
|
isOpen: isResolvedOpen,
|
|
206
200
|
setIsOpen: setIsOpen,
|
|
207
201
|
handleDragStart: e => handleDragStart(panelRef.current, e)
|
|
208
|
-
})), isResolvedOpen ? /*#__PURE__*/
|
|
202
|
+
})), isResolvedOpen ? /*#__PURE__*/React.createElement(styledComponents.Button, _rollupPluginBabelHelpers.extends({
|
|
209
203
|
type: "button",
|
|
210
204
|
"aria-label": "Close TanStack Router Devtools"
|
|
211
205
|
}, otherCloseButtonProps, {
|
|
@@ -229,7 +223,7 @@ function TanStackRouterDevtools({
|
|
|
229
223
|
}),
|
|
230
224
|
...closeButtonStyle
|
|
231
225
|
}
|
|
232
|
-
}), "Close") : null), !isResolvedOpen ? /*#__PURE__*/
|
|
226
|
+
}), "Close") : null), !isResolvedOpen ? /*#__PURE__*/React.createElement("button", _rollupPluginBabelHelpers.extends({
|
|
233
227
|
type: "button"
|
|
234
228
|
}, otherToggleButtonProps, {
|
|
235
229
|
"aria-label": "Open TanStack Router Devtools",
|
|
@@ -264,7 +258,7 @@ function TanStackRouterDevtools({
|
|
|
264
258
|
}),
|
|
265
259
|
...toggleButtonStyle
|
|
266
260
|
}
|
|
267
|
-
}), /*#__PURE__*/
|
|
261
|
+
}), /*#__PURE__*/React.createElement(Logo, {
|
|
268
262
|
"aria-hidden": true
|
|
269
263
|
})) : null);
|
|
270
264
|
}
|
|
@@ -277,7 +271,7 @@ function RouteComp({
|
|
|
277
271
|
const router = reactRouter.useRouter();
|
|
278
272
|
const matches = router.state.status === 'pending' ? router.state.pendingMatches : router.state.matches;
|
|
279
273
|
const match = router.state.matches.find(d => d.routeId === route.id);
|
|
280
|
-
return /*#__PURE__*/
|
|
274
|
+
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
|
|
281
275
|
role: "button",
|
|
282
276
|
"aria-label": `Open match details for ${route.id}`,
|
|
283
277
|
onClick: () => {
|
|
@@ -292,7 +286,7 @@ function RouteComp({
|
|
|
292
286
|
alignItems: 'center',
|
|
293
287
|
background: route.id === activeRouteId ? 'rgba(255,255,255,.1)' : undefined
|
|
294
288
|
}
|
|
295
|
-
}, isRoot ? null : /*#__PURE__*/
|
|
289
|
+
}, isRoot ? null : /*#__PURE__*/React.createElement("div", {
|
|
296
290
|
style: {
|
|
297
291
|
flex: '0 0 auto',
|
|
298
292
|
width: '.7rem',
|
|
@@ -306,7 +300,7 @@ function RouteComp({
|
|
|
306
300
|
background: utils.getRouteStatusColor(matches, route, theme.defaultTheme),
|
|
307
301
|
opacity: match ? 1 : 0.3
|
|
308
302
|
}
|
|
309
|
-
}), /*#__PURE__*/
|
|
303
|
+
}), /*#__PURE__*/React.createElement(styledComponents.Code, {
|
|
310
304
|
style: {
|
|
311
305
|
flex: '1 0 auto',
|
|
312
306
|
display: 'flex',
|
|
@@ -316,25 +310,25 @@ function RouteComp({
|
|
|
316
310
|
opacity: match ? 1 : 0.7,
|
|
317
311
|
fontSize: '0.7rem'
|
|
318
312
|
}
|
|
319
|
-
}, /*#__PURE__*/
|
|
313
|
+
}, /*#__PURE__*/React.createElement("span", null, route.path || reactRouter.trimPath(route.id), " "), match ? /*#__PURE__*/React.createElement("span", {
|
|
320
314
|
style: {
|
|
321
315
|
opacity: 0.3
|
|
322
316
|
}
|
|
323
|
-
}, match.id) : null)), route.children?.length ? /*#__PURE__*/
|
|
317
|
+
}, match.id) : null)), route.children?.length ? /*#__PURE__*/React.createElement("div", {
|
|
324
318
|
style: {
|
|
325
319
|
marginLeft: isRoot ? 0 : '1rem',
|
|
326
320
|
borderLeft: isRoot ? '' : `solid 1px ${theme.defaultTheme.grayAlt}`
|
|
327
321
|
}
|
|
328
322
|
}, [...route.children].sort((a, b) => {
|
|
329
323
|
return a.rank - b.rank;
|
|
330
|
-
}).map(r => /*#__PURE__*/
|
|
324
|
+
}).map(r => /*#__PURE__*/React.createElement(RouteComp, {
|
|
331
325
|
key: r.id,
|
|
332
326
|
route: r,
|
|
333
327
|
activeRouteId: activeRouteId,
|
|
334
328
|
setActiveRouteId: setActiveRouteId
|
|
335
329
|
}))) : null);
|
|
336
330
|
}
|
|
337
|
-
const TanStackRouterDevtoolsPanel = /*#__PURE__*/
|
|
331
|
+
const TanStackRouterDevtoolsPanel = /*#__PURE__*/React.forwardRef(function TanStackRouterDevtoolsPanel(props, ref) {
|
|
338
332
|
const {
|
|
339
333
|
isOpen = true,
|
|
340
334
|
setIsOpen,
|
|
@@ -348,9 +342,9 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
348
342
|
|
|
349
343
|
// useStore(router.__store)
|
|
350
344
|
|
|
351
|
-
const [showMatches, setShowMatches] = useLocalStorage
|
|
352
|
-
const [activeRouteId, setActiveRouteId] = useLocalStorage
|
|
353
|
-
const activeMatch =
|
|
345
|
+
const [showMatches, setShowMatches] = useLocalStorage.default('tanstackRouterDevtoolsShowMatches', true);
|
|
346
|
+
const [activeRouteId, setActiveRouteId] = useLocalStorage.default('tanstackRouterDevtoolsActiveRouteId', '');
|
|
347
|
+
const activeMatch = React.useMemo(() => matches.find(d => d.routeId === activeRouteId), [matches, activeRouteId]);
|
|
354
348
|
const hasSearch = Object.keys(router.state.location.search || {}).length;
|
|
355
349
|
|
|
356
350
|
// const preloadMatches = matches.filter((match) => {
|
|
@@ -368,12 +362,12 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
368
362
|
// return () => clearInterval(interval)
|
|
369
363
|
// }, [router])
|
|
370
364
|
|
|
371
|
-
return /*#__PURE__*/
|
|
365
|
+
return /*#__PURE__*/React.createElement(theme.ThemeProvider, {
|
|
372
366
|
theme: theme.defaultTheme
|
|
373
|
-
}, /*#__PURE__*/
|
|
367
|
+
}, /*#__PURE__*/React.createElement(styledComponents.Panel, _rollupPluginBabelHelpers.extends({
|
|
374
368
|
ref: ref,
|
|
375
369
|
className: "TanStackRouterDevtoolsPanel"
|
|
376
|
-
}, panelProps), /*#__PURE__*/
|
|
370
|
+
}, panelProps), /*#__PURE__*/React.createElement("style", {
|
|
377
371
|
dangerouslySetInnerHTML: {
|
|
378
372
|
__html: `
|
|
379
373
|
|
|
@@ -419,7 +413,7 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
419
413
|
|
|
420
414
|
`
|
|
421
415
|
}
|
|
422
|
-
}), /*#__PURE__*/
|
|
416
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
423
417
|
style: {
|
|
424
418
|
position: 'absolute',
|
|
425
419
|
left: 0,
|
|
@@ -431,7 +425,7 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
431
425
|
zIndex: 100000
|
|
432
426
|
},
|
|
433
427
|
onMouseDown: handleDragStart
|
|
434
|
-
}), /*#__PURE__*/
|
|
428
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
435
429
|
style: {
|
|
436
430
|
flex: '1 1 500px',
|
|
437
431
|
minHeight: '40%',
|
|
@@ -441,7 +435,7 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
441
435
|
display: 'flex',
|
|
442
436
|
flexDirection: 'column'
|
|
443
437
|
}
|
|
444
|
-
}, /*#__PURE__*/
|
|
438
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
445
439
|
style: {
|
|
446
440
|
display: 'flex',
|
|
447
441
|
justifyContent: 'start',
|
|
@@ -450,27 +444,27 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
450
444
|
alignItems: 'center',
|
|
451
445
|
background: theme.defaultTheme.backgroundAlt
|
|
452
446
|
}
|
|
453
|
-
}, /*#__PURE__*/
|
|
447
|
+
}, /*#__PURE__*/React.createElement(Logo, {
|
|
454
448
|
"aria-hidden": true
|
|
455
|
-
}), /*#__PURE__*/
|
|
449
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
456
450
|
style: {
|
|
457
451
|
fontSize: 'clamp(.8rem, 2vw, 1.3rem)',
|
|
458
452
|
fontWeight: 'bold'
|
|
459
453
|
}
|
|
460
|
-
}, /*#__PURE__*/
|
|
454
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
461
455
|
style: {
|
|
462
456
|
fontWeight: 100
|
|
463
457
|
}
|
|
464
|
-
}, "Devtools"))), /*#__PURE__*/
|
|
458
|
+
}, "Devtools"))), /*#__PURE__*/React.createElement("div", {
|
|
465
459
|
style: {
|
|
466
460
|
overflowY: 'auto',
|
|
467
461
|
flex: '1'
|
|
468
462
|
}
|
|
469
|
-
}, /*#__PURE__*/
|
|
463
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
470
464
|
style: {
|
|
471
465
|
padding: '.5em'
|
|
472
466
|
}
|
|
473
|
-
}, /*#__PURE__*/
|
|
467
|
+
}, /*#__PURE__*/React.createElement(Explorer.default, {
|
|
474
468
|
label: "Router",
|
|
475
469
|
value: router,
|
|
476
470
|
defaultExpanded: {
|
|
@@ -480,7 +474,7 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
480
474
|
filterSubEntries: subEntries => {
|
|
481
475
|
return subEntries.filter(d => typeof d.value !== 'function');
|
|
482
476
|
}
|
|
483
|
-
})))), /*#__PURE__*/
|
|
477
|
+
})))), /*#__PURE__*/React.createElement("div", {
|
|
484
478
|
style: {
|
|
485
479
|
flex: '1 1 500px',
|
|
486
480
|
minHeight: '40%',
|
|
@@ -490,12 +484,12 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
490
484
|
display: 'flex',
|
|
491
485
|
flexDirection: 'column'
|
|
492
486
|
}
|
|
493
|
-
}, /*#__PURE__*/
|
|
487
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
494
488
|
style: {
|
|
495
489
|
flex: '1 1 auto',
|
|
496
490
|
overflowY: 'auto'
|
|
497
491
|
}
|
|
498
|
-
}, /*#__PURE__*/
|
|
492
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
499
493
|
style: {
|
|
500
494
|
padding: '.5em',
|
|
501
495
|
background: theme.defaultTheme.backgroundAlt,
|
|
@@ -507,30 +501,30 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
507
501
|
gap: '.5rem',
|
|
508
502
|
fontWeight: 'bold'
|
|
509
503
|
}
|
|
510
|
-
}, "Pathname", ' ', router.state.location.maskedLocation ? /*#__PURE__*/
|
|
504
|
+
}, "Pathname", ' ', router.state.location.maskedLocation ? /*#__PURE__*/React.createElement("div", {
|
|
511
505
|
style: {
|
|
512
506
|
padding: '.1rem .5rem',
|
|
513
507
|
background: theme.defaultTheme.warning,
|
|
514
508
|
color: 'black',
|
|
515
509
|
borderRadius: '.5rem'
|
|
516
510
|
}
|
|
517
|
-
}, "Masked") : null), /*#__PURE__*/
|
|
511
|
+
}, "Masked") : null), /*#__PURE__*/React.createElement("div", {
|
|
518
512
|
style: {
|
|
519
513
|
padding: '.5rem',
|
|
520
514
|
display: 'flex',
|
|
521
515
|
gap: '.5rem',
|
|
522
516
|
alignItems: 'center'
|
|
523
517
|
}
|
|
524
|
-
}, /*#__PURE__*/
|
|
518
|
+
}, /*#__PURE__*/React.createElement("code", {
|
|
525
519
|
style: {
|
|
526
520
|
opacity: 0.6
|
|
527
521
|
}
|
|
528
|
-
}, router.state.location.pathname), router.state.location.maskedLocation ? /*#__PURE__*/
|
|
522
|
+
}, router.state.location.pathname), router.state.location.maskedLocation ? /*#__PURE__*/React.createElement("code", {
|
|
529
523
|
style: {
|
|
530
524
|
color: theme.defaultTheme.warning,
|
|
531
525
|
fontWeight: 'bold'
|
|
532
526
|
}
|
|
533
|
-
}, router.state.location.maskedLocation.pathname) : null), /*#__PURE__*/
|
|
527
|
+
}, router.state.location.maskedLocation.pathname) : null), /*#__PURE__*/React.createElement("div", {
|
|
534
528
|
style: {
|
|
535
529
|
padding: '.5em',
|
|
536
530
|
background: theme.defaultTheme.backgroundAlt,
|
|
@@ -542,7 +536,7 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
542
536
|
gap: '.5rem',
|
|
543
537
|
fontWeight: 'bold'
|
|
544
538
|
}
|
|
545
|
-
}, /*#__PURE__*/
|
|
539
|
+
}, /*#__PURE__*/React.createElement("button", {
|
|
546
540
|
type: "button",
|
|
547
541
|
onClick: () => {
|
|
548
542
|
setShowMatches(false);
|
|
@@ -556,7 +550,7 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
556
550
|
color: 'inherit',
|
|
557
551
|
cursor: 'pointer'
|
|
558
552
|
}
|
|
559
|
-
}, "Routes"), "/", /*#__PURE__*/
|
|
553
|
+
}, "Routes"), "/", /*#__PURE__*/React.createElement("button", {
|
|
560
554
|
type: "button",
|
|
561
555
|
onClick: () => {
|
|
562
556
|
setShowMatches(true);
|
|
@@ -570,13 +564,13 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
570
564
|
color: 'inherit',
|
|
571
565
|
cursor: 'pointer'
|
|
572
566
|
}
|
|
573
|
-
}, "Matches")), !showMatches ? /*#__PURE__*/
|
|
567
|
+
}, "Matches")), !showMatches ? /*#__PURE__*/React.createElement(RouteComp, {
|
|
574
568
|
route: router.routeTree,
|
|
575
569
|
isRoot: true,
|
|
576
570
|
activeRouteId: activeRouteId,
|
|
577
571
|
setActiveRouteId: setActiveRouteId
|
|
578
|
-
}) : /*#__PURE__*/
|
|
579
|
-
return /*#__PURE__*/
|
|
572
|
+
}) : /*#__PURE__*/React.createElement("div", null, (router.state.status === 'pending' ? router.state.pendingMatches : router.state.matches).map((match, i) => {
|
|
573
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
580
574
|
key: match.routeId || i,
|
|
581
575
|
role: "button",
|
|
582
576
|
"aria-label": `Open match details for ${match.routeId}`,
|
|
@@ -588,7 +582,7 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
588
582
|
alignItems: 'center',
|
|
589
583
|
background: match === activeMatch ? 'rgba(255,255,255,.1)' : undefined
|
|
590
584
|
}
|
|
591
|
-
}, /*#__PURE__*/
|
|
585
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
592
586
|
style: {
|
|
593
587
|
flex: '0 0 auto',
|
|
594
588
|
width: '1.3rem',
|
|
@@ -601,13 +595,13 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
601
595
|
borderRadius: '.25rem',
|
|
602
596
|
transition: 'all .2s ease-out'
|
|
603
597
|
}
|
|
604
|
-
}), /*#__PURE__*/
|
|
598
|
+
}), /*#__PURE__*/React.createElement(styledComponents.Code, {
|
|
605
599
|
style: {
|
|
606
600
|
padding: '.5em',
|
|
607
601
|
fontSize: '0.7rem'
|
|
608
602
|
}
|
|
609
603
|
}, `${match.id}`));
|
|
610
|
-
})))), activeMatch ? /*#__PURE__*/
|
|
604
|
+
})))), activeMatch ? /*#__PURE__*/React.createElement(styledComponents.ActivePanel, null, /*#__PURE__*/React.createElement("div", {
|
|
611
605
|
style: {
|
|
612
606
|
padding: '.5em',
|
|
613
607
|
background: theme.defaultTheme.backgroundAlt,
|
|
@@ -616,23 +610,23 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
616
610
|
bottom: 0,
|
|
617
611
|
zIndex: 1
|
|
618
612
|
}
|
|
619
|
-
}, "Match Details"), /*#__PURE__*/
|
|
613
|
+
}, "Match Details"), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("table", null, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", {
|
|
620
614
|
style: {
|
|
621
615
|
opacity: '.5'
|
|
622
616
|
}
|
|
623
|
-
}, "ID"), /*#__PURE__*/
|
|
617
|
+
}, "ID"), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement(styledComponents.Code, {
|
|
624
618
|
style: {
|
|
625
619
|
lineHeight: '1.8em'
|
|
626
620
|
}
|
|
627
|
-
}, JSON.stringify(activeMatch.id, null, 2)))), /*#__PURE__*/
|
|
621
|
+
}, JSON.stringify(activeMatch.id, null, 2)))), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", {
|
|
628
622
|
style: {
|
|
629
623
|
opacity: '.5'
|
|
630
624
|
}
|
|
631
|
-
}, "Status"), /*#__PURE__*/
|
|
625
|
+
}, "Status"), /*#__PURE__*/React.createElement("td", null, activeMatch.status)), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", {
|
|
632
626
|
style: {
|
|
633
627
|
opacity: '.5'
|
|
634
628
|
}
|
|
635
|
-
}, "Last Updated"), /*#__PURE__*/
|
|
629
|
+
}, "Last Updated"), /*#__PURE__*/React.createElement("td", null, activeMatch.updatedAt ? new Date(activeMatch.updatedAt).toLocaleTimeString() : 'N/A'))))), activeMatch.loaderData ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
636
630
|
style: {
|
|
637
631
|
background: theme.defaultTheme.backgroundAlt,
|
|
638
632
|
padding: '.5em',
|
|
@@ -641,15 +635,15 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
641
635
|
bottom: 0,
|
|
642
636
|
zIndex: 1
|
|
643
637
|
}
|
|
644
|
-
}, "Loader Data"), /*#__PURE__*/
|
|
638
|
+
}, "Loader Data"), /*#__PURE__*/React.createElement("div", {
|
|
645
639
|
style: {
|
|
646
640
|
padding: '.5em'
|
|
647
641
|
}
|
|
648
|
-
}, /*#__PURE__*/
|
|
642
|
+
}, /*#__PURE__*/React.createElement(Explorer.default, {
|
|
649
643
|
label: "loaderData",
|
|
650
644
|
value: activeMatch.loaderData,
|
|
651
645
|
defaultExpanded: {}
|
|
652
|
-
}))) : null, /*#__PURE__*/
|
|
646
|
+
}))) : null, /*#__PURE__*/React.createElement("div", {
|
|
653
647
|
style: {
|
|
654
648
|
background: theme.defaultTheme.backgroundAlt,
|
|
655
649
|
padding: '.5em',
|
|
@@ -658,15 +652,15 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
658
652
|
bottom: 0,
|
|
659
653
|
zIndex: 1
|
|
660
654
|
}
|
|
661
|
-
}, "Explorer"), /*#__PURE__*/
|
|
655
|
+
}, "Explorer"), /*#__PURE__*/React.createElement("div", {
|
|
662
656
|
style: {
|
|
663
657
|
padding: '.5em'
|
|
664
658
|
}
|
|
665
|
-
}, /*#__PURE__*/
|
|
659
|
+
}, /*#__PURE__*/React.createElement(Explorer.default, {
|
|
666
660
|
label: "Match",
|
|
667
661
|
value: activeMatch,
|
|
668
662
|
defaultExpanded: {}
|
|
669
|
-
}))) : null, hasSearch ? /*#__PURE__*/
|
|
663
|
+
}))) : null, hasSearch ? /*#__PURE__*/React.createElement("div", {
|
|
670
664
|
style: {
|
|
671
665
|
flex: '1 1 500px',
|
|
672
666
|
minHeight: '40%',
|
|
@@ -676,7 +670,7 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
676
670
|
display: 'flex',
|
|
677
671
|
flexDirection: 'column'
|
|
678
672
|
}
|
|
679
|
-
}, /*#__PURE__*/
|
|
673
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
680
674
|
style: {
|
|
681
675
|
padding: '.5em',
|
|
682
676
|
background: theme.defaultTheme.backgroundAlt,
|
|
@@ -686,11 +680,11 @@ const TanStackRouterDevtoolsPanel = /*#__PURE__*/React__default["default"].forwa
|
|
|
686
680
|
zIndex: 1,
|
|
687
681
|
fontWeight: 'bold'
|
|
688
682
|
}
|
|
689
|
-
}, "Search Params"), /*#__PURE__*/
|
|
683
|
+
}, "Search Params"), /*#__PURE__*/React.createElement("div", {
|
|
690
684
|
style: {
|
|
691
685
|
padding: '.5em'
|
|
692
686
|
}
|
|
693
|
-
}, /*#__PURE__*/
|
|
687
|
+
}, /*#__PURE__*/React.createElement(Explorer.default, {
|
|
694
688
|
value: router.state.location.search || {},
|
|
695
689
|
defaultExpanded: Object.keys(router.state.location.search || {}).reduce((obj, next) => {
|
|
696
690
|
obj[next] = {};
|