@tanstack/router-devtools-core 1.132.47 → 1.132.50

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 (91) hide show
  1. package/dist/cjs/{packages/router-devtools-core/src/AgeTicker.cjs → AgeTicker.cjs} +2 -3
  2. package/dist/cjs/AgeTicker.cjs.map +1 -0
  3. package/dist/cjs/{packages/router-devtools-core/src/BaseTanStackRouterDevtoolsPanel.cjs → BaseTanStackRouterDevtoolsPanel.cjs} +66 -66
  4. package/dist/cjs/BaseTanStackRouterDevtoolsPanel.cjs.map +1 -0
  5. package/dist/cjs/{packages/router-devtools-core/src/Explorer.cjs → Explorer.cjs} +27 -27
  6. package/dist/cjs/Explorer.cjs.map +1 -0
  7. package/dist/cjs/{packages/router-devtools-core/src/FloatingTanStackRouterDevtools.cjs → FloatingTanStackRouterDevtools.cjs} +19 -19
  8. package/dist/cjs/FloatingTanStackRouterDevtools.cjs.map +1 -0
  9. package/dist/cjs/{packages/router-devtools-core/src/NavigateButton.cjs → NavigateButton.cjs} +2 -3
  10. package/dist/cjs/NavigateButton.cjs.map +1 -0
  11. package/dist/cjs/{packages/router-devtools-core/src/TanStackRouterDevtoolsCore.cjs → TanStackRouterDevtoolsCore.cjs} +7 -7
  12. package/dist/cjs/TanStackRouterDevtoolsCore.cjs.map +1 -0
  13. package/dist/cjs/{packages/router-devtools-core/src/TanStackRouterDevtoolsPanelCore.cjs → TanStackRouterDevtoolsPanelCore.cjs} +10 -10
  14. package/dist/cjs/TanStackRouterDevtoolsPanelCore.cjs.map +1 -0
  15. package/dist/cjs/{packages/router-devtools-core/src/context.cjs → context.cjs} +4 -4
  16. package/dist/cjs/context.cjs.map +1 -0
  17. package/dist/cjs/{packages/router-devtools-core/src/logo.cjs → logo.cjs} +3 -3
  18. package/dist/cjs/logo.cjs.map +1 -0
  19. package/dist/cjs/tokens.cjs.map +1 -0
  20. package/dist/cjs/{packages/router-devtools-core/src/useLocalStorage.cjs → useLocalStorage.cjs} +3 -3
  21. package/dist/cjs/useLocalStorage.cjs.map +1 -0
  22. package/dist/cjs/{packages/router-devtools-core/src/useStyles.cjs → useStyles.cjs} +3 -3
  23. package/dist/cjs/useStyles.cjs.map +1 -0
  24. package/dist/cjs/{packages/router-devtools-core/src/utils.cjs → utils.cjs} +4 -3
  25. package/dist/cjs/utils.cjs.map +1 -0
  26. package/dist/esm/{packages/router-devtools-core/src/AgeTicker.js → AgeTicker.js} +2 -3
  27. package/dist/esm/AgeTicker.js.map +1 -0
  28. package/dist/esm/{packages/router-devtools-core/src/BaseTanStackRouterDevtoolsPanel.js → BaseTanStackRouterDevtoolsPanel.js} +33 -33
  29. package/dist/esm/BaseTanStackRouterDevtoolsPanel.js.map +1 -0
  30. package/dist/esm/{packages/router-devtools-core/src/Explorer.js → Explorer.js} +15 -15
  31. package/dist/esm/Explorer.js.map +1 -0
  32. package/dist/esm/{packages/router-devtools-core/src/FloatingTanStackRouterDevtools.js → FloatingTanStackRouterDevtools.js} +3 -3
  33. package/dist/esm/FloatingTanStackRouterDevtools.js.map +1 -0
  34. package/dist/esm/{packages/router-devtools-core/src/NavigateButton.js → NavigateButton.js} +2 -3
  35. package/dist/esm/NavigateButton.js.map +1 -0
  36. package/dist/esm/{packages/router-devtools-core/src/TanStackRouterDevtoolsCore.js → TanStackRouterDevtoolsCore.js} +2 -2
  37. package/dist/esm/TanStackRouterDevtoolsCore.js.map +1 -0
  38. package/dist/esm/{packages/router-devtools-core/src/TanStackRouterDevtoolsPanelCore.js → TanStackRouterDevtoolsPanelCore.js} +3 -3
  39. package/dist/esm/TanStackRouterDevtoolsPanelCore.js.map +1 -0
  40. package/dist/esm/{packages/router-devtools-core/src/context.js → context.js} +1 -1
  41. package/dist/esm/context.js.map +1 -0
  42. package/dist/esm/{packages/router-devtools-core/src/logo.js → logo.js} +2 -2
  43. package/dist/esm/logo.js.map +1 -0
  44. package/dist/esm/tokens.js.map +1 -0
  45. package/dist/esm/{packages/router-devtools-core/src/useLocalStorage.js → useLocalStorage.js} +1 -1
  46. package/dist/esm/useLocalStorage.js.map +1 -0
  47. package/dist/esm/{packages/router-devtools-core/src/useStyles.js → useStyles.js} +1 -1
  48. package/dist/esm/useStyles.js.map +1 -0
  49. package/dist/esm/{packages/router-devtools-core/src/utils.js → utils.js} +2 -1
  50. package/dist/esm/utils.js.map +1 -0
  51. package/package.json +7 -6
  52. package/dist/cjs/node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.cjs +0 -792
  53. package/dist/cjs/node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.cjs.map +0 -1
  54. package/dist/cjs/node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.cjs +0 -675
  55. package/dist/cjs/node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.cjs.map +0 -1
  56. package/dist/cjs/packages/router-devtools-core/src/AgeTicker.cjs.map +0 -1
  57. package/dist/cjs/packages/router-devtools-core/src/BaseTanStackRouterDevtoolsPanel.cjs.map +0 -1
  58. package/dist/cjs/packages/router-devtools-core/src/Explorer.cjs.map +0 -1
  59. package/dist/cjs/packages/router-devtools-core/src/FloatingTanStackRouterDevtools.cjs.map +0 -1
  60. package/dist/cjs/packages/router-devtools-core/src/NavigateButton.cjs.map +0 -1
  61. package/dist/cjs/packages/router-devtools-core/src/TanStackRouterDevtoolsCore.cjs.map +0 -1
  62. package/dist/cjs/packages/router-devtools-core/src/TanStackRouterDevtoolsPanelCore.cjs.map +0 -1
  63. package/dist/cjs/packages/router-devtools-core/src/context.cjs.map +0 -1
  64. package/dist/cjs/packages/router-devtools-core/src/logo.cjs.map +0 -1
  65. package/dist/cjs/packages/router-devtools-core/src/tokens.cjs.map +0 -1
  66. package/dist/cjs/packages/router-devtools-core/src/useLocalStorage.cjs.map +0 -1
  67. package/dist/cjs/packages/router-devtools-core/src/useStyles.cjs.map +0 -1
  68. package/dist/cjs/packages/router-devtools-core/src/utils.cjs.map +0 -1
  69. package/dist/esm/node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.js +0 -792
  70. package/dist/esm/node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.js.map +0 -1
  71. package/dist/esm/node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.js +0 -676
  72. package/dist/esm/node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.js.map +0 -1
  73. package/dist/esm/packages/router-devtools-core/src/AgeTicker.js.map +0 -1
  74. package/dist/esm/packages/router-devtools-core/src/BaseTanStackRouterDevtoolsPanel.js.map +0 -1
  75. package/dist/esm/packages/router-devtools-core/src/Explorer.js.map +0 -1
  76. package/dist/esm/packages/router-devtools-core/src/FloatingTanStackRouterDevtools.js.map +0 -1
  77. package/dist/esm/packages/router-devtools-core/src/NavigateButton.js.map +0 -1
  78. package/dist/esm/packages/router-devtools-core/src/TanStackRouterDevtoolsCore.js.map +0 -1
  79. package/dist/esm/packages/router-devtools-core/src/TanStackRouterDevtoolsPanelCore.js.map +0 -1
  80. package/dist/esm/packages/router-devtools-core/src/context.js.map +0 -1
  81. package/dist/esm/packages/router-devtools-core/src/logo.js.map +0 -1
  82. package/dist/esm/packages/router-devtools-core/src/tokens.js.map +0 -1
  83. package/dist/esm/packages/router-devtools-core/src/useLocalStorage.js.map +0 -1
  84. package/dist/esm/packages/router-devtools-core/src/useStyles.js.map +0 -1
  85. package/dist/esm/packages/router-devtools-core/src/utils.js.map +0 -1
  86. /package/dist/cjs/{packages/router-devtools-core/src/index.cjs → index.cjs} +0 -0
  87. /package/dist/cjs/{packages/router-devtools-core/src/index.cjs.map → index.cjs.map} +0 -0
  88. /package/dist/cjs/{packages/router-devtools-core/src/tokens.cjs → tokens.cjs} +0 -0
  89. /package/dist/esm/{packages/router-devtools-core/src/index.js → index.js} +0 -0
  90. /package/dist/esm/{packages/router-devtools-core/src/index.js.map → index.js.map} +0 -0
  91. /package/dist/esm/{packages/router-devtools-core/src/tokens.js → tokens.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseTanStackRouterDevtoolsPanel.js","sources":["../../src/BaseTanStackRouterDevtoolsPanel.tsx"],"sourcesContent":["import { clsx as cx } from 'clsx'\nimport { default as invariant } from 'tiny-invariant'\nimport { interpolatePath, rootRouteId, trimPath } from '@tanstack/router-core'\nimport { Show, createMemo, createSignal, onCleanup } from 'solid-js'\nimport { useDevtoolsOnClose } from './context'\nimport { useStyles } from './useStyles'\nimport useLocalStorage from './useLocalStorage'\nimport { Explorer } from './Explorer'\nimport { getRouteStatusColor, getStatusColor, multiSortBy } from './utils'\nimport { AgeTicker } from './AgeTicker'\n// import type { DevtoolsPanelOptions } from './TanStackRouterDevtoolsPanel'\n\nimport { NavigateButton } from './NavigateButton'\nimport type {\n AnyContext,\n AnyRoute,\n AnyRouter,\n FileRouteTypes,\n MakeRouteMatchUnion,\n Route,\n RouterState,\n} from '@tanstack/router-core'\nimport type { Accessor, JSX } from 'solid-js'\n\nexport interface BaseDevtoolsPanelOptions {\n /**\n * The standard React style object used to style a component with inline styles\n */\n style?: Accessor<JSX.CSSProperties>\n /**\n * The standard React class property used to style a component with classes\n */\n className?: Accessor<string>\n /**\n * A boolean variable indicating whether the panel is open or closed\n */\n isOpen?: boolean\n /**\n * A function that toggles the open and close state of the panel\n */\n setIsOpen?: (isOpen: boolean) => void\n /**\n * Handles the opening and closing the devtools panel\n */\n handleDragStart?: (e: any) => void\n /**\n * A boolean variable indicating if the \"lite\" version of the library is being used\n */\n router: Accessor<AnyRouter>\n routerState: Accessor<any>\n /**\n * Use this to attach the devtool's styles to specific element in the DOM.\n */\n shadowDOMTarget?: ShadowRoot\n}\n\nfunction Logo(props: any) {\n const { className, ...rest } = props\n const styles = useStyles()\n return (\n <button {...rest} class={cx(styles().logo, className ? className() : '')}>\n <div class={styles().tanstackLogo}>TANSTACK</div>\n <div class={styles().routerLogo}>TanStack Router v1</div>\n </button>\n )\n}\n\nfunction NavigateLink(props: {\n class?: string\n left?: JSX.Element\n children?: JSX.Element\n right?: JSX.Element\n}) {\n return (\n <div\n class={props.class}\n style={{\n display: 'flex',\n 'align-items': 'center',\n width: '100%',\n }}\n >\n {props.left}\n <div style={{ 'flex-grow': 1, 'min-width': 0 }}>{props.children}</div>\n {props.right}\n </div>\n )\n}\n\nfunction RouteComp({\n routerState,\n router,\n route,\n isRoot,\n activeId,\n setActiveId,\n}: {\n routerState: Accessor<\n RouterState<\n Route<\n any,\n any,\n any,\n '/',\n '/',\n string,\n '__root__',\n undefined,\n {},\n {},\n AnyContext,\n AnyContext,\n {},\n undefined,\n any,\n FileRouteTypes,\n unknown,\n undefined\n >,\n MakeRouteMatchUnion\n >\n >\n router: Accessor<AnyRouter>\n route: AnyRoute\n isRoot?: boolean\n activeId: Accessor<string | undefined>\n setActiveId: (id: string) => void\n}) {\n const styles = useStyles()\n const matches = createMemo(\n () => routerState().pendingMatches || routerState().matches,\n )\n const match = createMemo(() =>\n routerState().matches.find((d) => d.routeId === route.id),\n )\n\n const param = createMemo(() => {\n try {\n if (match()?.params) {\n const p = match()?.params\n const r: string = route.path || trimPath(route.id)\n if (r.startsWith('$')) {\n const trimmed = r.slice(1)\n\n if (p[trimmed]) {\n return `(${p[trimmed]})`\n }\n }\n }\n return ''\n } catch (error) {\n return ''\n }\n })\n\n const navigationTarget = createMemo<string | undefined>(() => {\n if (isRoot) return undefined // rootRouteId has no path\n if (!route.path) return undefined // no path to navigate to\n\n // flatten all params in the router state, into a single object\n const allParams = Object.assign({}, ...matches().map((m) => m.params))\n\n // interpolatePath is used by router-core to generate the `to`\n // path for the navigate function in the router\n const interpolated = interpolatePath({\n path: route.fullPath,\n params: allParams,\n leaveWildcards: false,\n leaveParams: false,\n decodeCharMap: router().pathParamsDecodeCharMap,\n })\n\n // only if `interpolated` is not missing params, return the path since this\n // means that all the params are present for a successful navigation\n return !interpolated.isMissingParams\n ? interpolated.interpolatedPath\n : undefined\n })\n\n return (\n <div>\n <div\n role=\"button\"\n aria-label={`Open match details for ${route.id}`}\n onClick={() => {\n if (match()) {\n setActiveId(activeId() === route.id ? '' : route.id)\n }\n }}\n class={cx(\n styles().routesRowContainer(route.id === activeId(), !!match()),\n )}\n >\n <div\n class={cx(\n styles().matchIndicator(getRouteStatusColor(matches(), route)),\n )}\n />\n <NavigateLink\n class={cx(styles().routesRow(!!match()))}\n left={\n <Show when={navigationTarget()}>\n {(navigate) => <NavigateButton to={navigate()} router={router} />}\n </Show>\n }\n right={<AgeTicker match={match()} router={router} />}\n >\n <code class={styles().code}>\n {isRoot ? rootRouteId : route.path || trimPath(route.id)}{' '}\n </code>\n <code class={styles().routeParamInfo}>{param()}</code>\n </NavigateLink>\n </div>\n {route.children?.length ? (\n <div class={styles().nestedRouteRow(!!isRoot)}>\n {[...(route.children as Array<AnyRoute>)]\n .sort((a, b) => {\n return a.rank - b.rank\n })\n .map((r) => (\n <RouteComp\n routerState={routerState}\n router={router}\n route={r}\n activeId={activeId}\n setActiveId={setActiveId}\n />\n ))}\n </div>\n ) : null}\n </div>\n )\n}\n\nexport const BaseTanStackRouterDevtoolsPanel =\n function BaseTanStackRouterDevtoolsPanel({\n ...props\n }: BaseDevtoolsPanelOptions): JSX.Element {\n const {\n isOpen = true,\n setIsOpen,\n handleDragStart,\n router,\n routerState,\n shadowDOMTarget,\n ...panelProps\n } = props\n\n const { onCloseClick } = useDevtoolsOnClose()\n const styles = useStyles()\n const { className, style, ...otherPanelProps } = panelProps\n\n invariant(\n router,\n '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.',\n )\n\n // useStore(router.__store)\n\n const [showMatches, setShowMatches] = useLocalStorage(\n 'tanstackRouterDevtoolsShowMatches',\n true,\n )\n\n const [activeId, setActiveId] = useLocalStorage(\n 'tanstackRouterDevtoolsActiveRouteId',\n '',\n )\n\n const activeMatch = createMemo(() => {\n const matches = [\n ...(routerState().pendingMatches ?? []),\n ...routerState().matches,\n ...routerState().cachedMatches,\n ]\n return matches.find(\n (d) => d.routeId === activeId() || d.id === activeId(),\n )\n })\n\n const hasSearch = createMemo(\n () => Object.keys(routerState().location.search).length,\n )\n\n const explorerState = createMemo(() => {\n return {\n ...router(),\n state: routerState(),\n }\n })\n\n const routerExplorerValue = createMemo(() =>\n Object.fromEntries(\n multiSortBy(\n Object.keys(explorerState()),\n (\n [\n 'state',\n 'routesById',\n 'routesByPath',\n 'flatRoutes',\n 'options',\n 'manifest',\n ] as const\n ).map((d) => (dd) => dd !== d),\n )\n .map((key) => [key, (explorerState() as any)[key]])\n .filter(\n (d) =>\n typeof d[1] !== 'function' &&\n ![\n '__store',\n 'basepath',\n 'injectedHtml',\n 'subscribers',\n 'latestLoadPromise',\n 'navigateTimeout',\n 'resetNextScroll',\n 'tempLocationKey',\n 'latestLocation',\n 'routeTree',\n 'history',\n ].includes(d[0]),\n ),\n ),\n )\n const activeMatchLoaderData = createMemo(() => activeMatch()?.loaderData)\n const activeMatchValue = createMemo(() => activeMatch())\n const locationSearchValue = createMemo(() => routerState().location.search)\n\n return (\n <div\n class={cx(\n styles().devtoolsPanel,\n 'TanStackRouterDevtoolsPanel',\n className ? className() : '',\n )}\n style={style ? style() : ''}\n {...otherPanelProps}\n >\n {handleDragStart ? (\n <div class={styles().dragHandle} onMouseDown={handleDragStart}></div>\n ) : null}\n <button\n class={styles().panelCloseBtn}\n onClick={(e: any) => {\n if (setIsOpen) {\n setIsOpen(false)\n }\n onCloseClick(e)\n }}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"10\"\n height=\"6\"\n fill=\"none\"\n viewBox=\"0 0 10 6\"\n class={styles().panelCloseBtnIcon}\n >\n <path\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"1.667\"\n d=\"M1 1l4 4 4-4\"\n ></path>\n </svg>\n </button>\n <div class={styles().firstContainer}>\n <div class={styles().row}>\n <Logo\n aria-hidden\n onClick={(e: any) => {\n if (setIsOpen) {\n setIsOpen(false)\n }\n onCloseClick(e)\n }}\n />\n </div>\n <div class={styles().routerExplorerContainer}>\n <div class={styles().routerExplorer}>\n <Explorer\n label=\"Router\"\n value={routerExplorerValue}\n defaultExpanded={{\n state: {} as any,\n context: {} as any,\n options: {} as any,\n }}\n filterSubEntries={(subEntries) => {\n return subEntries.filter(\n (d: any) => typeof d.value() !== 'function',\n )\n }}\n />\n </div>\n </div>\n </div>\n <div class={styles().secondContainer}>\n <div class={styles().matchesContainer}>\n <div class={styles().detailsHeader}>\n <span>Pathname</span>\n {routerState().location.maskedLocation ? (\n <div class={styles().maskedBadgeContainer}>\n <span class={styles().maskedBadge}>masked</span>\n </div>\n ) : null}\n </div>\n <div class={styles().detailsContent}>\n <code>{routerState().location.pathname}</code>\n {routerState().location.maskedLocation ? (\n <code class={styles().maskedLocation}>\n {routerState().location.maskedLocation?.pathname}\n </code>\n ) : null}\n </div>\n <div class={styles().detailsHeader}>\n <div class={styles().routeMatchesToggle}>\n <button\n type=\"button\"\n onClick={() => {\n setShowMatches(false)\n }}\n disabled={!showMatches()}\n class={cx(\n styles().routeMatchesToggleBtn(!showMatches(), true),\n )}\n >\n Routes\n </button>\n <button\n type=\"button\"\n onClick={() => {\n setShowMatches(true)\n }}\n disabled={showMatches()}\n class={cx(\n styles().routeMatchesToggleBtn(!!showMatches(), false),\n )}\n >\n Matches\n </button>\n </div>\n <div class={styles().detailsHeaderInfo}>\n <div>age / staleTime / gcTime</div>\n </div>\n </div>\n <div class={cx(styles().routesContainer)}>\n {!showMatches() ? (\n <RouteComp\n routerState={routerState}\n router={router}\n route={router().routeTree}\n isRoot\n activeId={activeId}\n setActiveId={setActiveId}\n />\n ) : (\n <div>\n {(routerState().pendingMatches?.length\n ? routerState().pendingMatches\n : routerState().matches\n )?.map((match: any, _i: any) => {\n return (\n <div\n role=\"button\"\n aria-label={`Open match details for ${match.id}`}\n onClick={() =>\n setActiveId(activeId() === match.id ? '' : match.id)\n }\n class={cx(styles().matchRow(match === activeMatch()))}\n >\n <div\n class={cx(\n styles().matchIndicator(getStatusColor(match)),\n )}\n />\n <NavigateLink\n left={\n <NavigateButton\n to={match.pathname}\n params={match.params}\n search={match.search}\n router={router}\n />\n }\n right={<AgeTicker match={match} router={router} />}\n >\n <code class={styles().matchID}>\n {`${match.routeId === rootRouteId ? rootRouteId : match.pathname}`}\n </code>\n </NavigateLink>\n </div>\n )\n })}\n </div>\n )}\n </div>\n </div>\n {routerState().cachedMatches.length ? (\n <div class={styles().cachedMatchesContainer}>\n <div class={styles().detailsHeader}>\n <div>Cached Matches</div>\n <div class={styles().detailsHeaderInfo}>\n age / staleTime / gcTime\n </div>\n </div>\n <div>\n {routerState().cachedMatches.map((match: any) => {\n return (\n <div\n role=\"button\"\n aria-label={`Open match details for ${match.id}`}\n onClick={() =>\n setActiveId(activeId() === match.id ? '' : match.id)\n }\n class={cx(styles().matchRow(match === activeMatch()))}\n >\n <div\n class={cx(\n styles().matchIndicator(getStatusColor(match)),\n )}\n />\n <NavigateLink\n left={\n <NavigateButton\n to={match.pathname}\n params={match.params}\n search={match.search}\n router={router}\n />\n }\n right={<AgeTicker match={match} router={router} />}\n >\n <code class={styles().matchID}>{`${match.id}`}</code>\n </NavigateLink>\n </div>\n )\n })}\n </div>\n </div>\n ) : null}\n </div>\n {activeMatch() && activeMatch()?.status ? (\n <div class={styles().thirdContainer}>\n <div class={styles().detailsHeader}>Match Details</div>\n <div>\n <div class={styles().matchDetails}>\n <div\n class={styles().matchStatus(\n activeMatch()?.status,\n activeMatch()?.isFetching,\n )}\n >\n <div>\n {activeMatch()?.status === 'success' &&\n activeMatch()?.isFetching\n ? 'fetching'\n : activeMatch()?.status}\n </div>\n </div>\n <div class={styles().matchDetailsInfoLabel}>\n <div>ID:</div>\n <div class={styles().matchDetailsInfo}>\n <code>{activeMatch()?.id}</code>\n </div>\n </div>\n <div class={styles().matchDetailsInfoLabel}>\n <div>State:</div>\n <div class={styles().matchDetailsInfo}>\n {routerState().pendingMatches?.find(\n (d: any) => d.id === activeMatch()?.id,\n )\n ? 'Pending'\n : routerState().matches.find(\n (d: any) => d.id === activeMatch()?.id,\n )\n ? 'Active'\n : 'Cached'}\n </div>\n </div>\n <div class={styles().matchDetailsInfoLabel}>\n <div>Last Updated:</div>\n <div class={styles().matchDetailsInfo}>\n {activeMatch()?.updatedAt\n ? new Date(activeMatch()?.updatedAt).toLocaleTimeString()\n : 'N/A'}\n </div>\n </div>\n </div>\n </div>\n {activeMatchLoaderData() ? (\n <>\n <div class={styles().detailsHeader}>Loader Data</div>\n <div class={styles().detailsContent}>\n <Explorer\n label=\"loaderData\"\n value={activeMatchLoaderData}\n defaultExpanded={{}}\n />\n </div>\n </>\n ) : null}\n <div class={styles().detailsHeader}>Explorer</div>\n <div class={styles().detailsContent}>\n <Explorer\n label=\"Match\"\n value={activeMatchValue}\n defaultExpanded={{}}\n />\n </div>\n </div>\n ) : null}\n {hasSearch() ? (\n <div class={styles().fourthContainer}>\n <div class={styles().detailsHeader}>\n <span>Search Params</span>\n {typeof navigator !== 'undefined' ? (\n <span style=\"margin-left: 0.5rem;\">\n <CopyButton\n getValue={() => {\n const search = routerState().location.search\n return JSON.stringify(search)\n }}\n />\n </span>\n ) : null}\n </div>\n <div class={styles().detailsContent}>\n <Explorer\n value={locationSearchValue}\n defaultExpanded={Object.keys(\n routerState().location.search,\n ).reduce((obj: any, next) => {\n obj[next] = {}\n return obj\n }, {})}\n />\n </div>\n </div>\n ) : null}\n </div>\n )\n }\n\nfunction CopyButton({ getValue }: { getValue: () => string }) {\n const [copied, setCopied] = createSignal(false)\n\n let timeoutId: ReturnType<typeof setTimeout> | null = null\n\n const handleCopy = async () => {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (typeof navigator === 'undefined' || !navigator.clipboard?.writeText) {\n console.warn('TanStack Router Devtools: Clipboard API unavailable')\n return\n }\n try {\n const value = getValue()\n await navigator.clipboard.writeText(value)\n setCopied(true)\n if (timeoutId) clearTimeout(timeoutId)\n timeoutId = setTimeout(() => setCopied(false), 2500)\n } catch (e) {\n console.error('TanStack Router Devtools: Failed to copy', e)\n }\n }\n\n onCleanup(() => {\n if (timeoutId) clearTimeout(timeoutId)\n })\n\n return (\n <button\n type=\"button\"\n style=\"cursor: pointer;\"\n onClick={handleCopy}\n aria-label=\"Copy value to clipboard\"\n title={copied() ? 'Copied!' : 'Copy'}\n >\n {copied() ? '✅' : '📋'}\n </button>\n )\n}\n\nexport default BaseTanStackRouterDevtoolsPanel\n"],"names":["Logo","props","className","rest","styles","useStyles","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_$spread","_$mergeProps","cx","logo","_$effect","_p$","_v$","tanstackLogo","_v$2","routerLogo","e","_$className","t","undefined","NavigateLink","_el$4","_tmpl$2","_el$5","style","setProperty","_$insert","left","children","right","class","RouteComp","routerState","router","route","isRoot","activeId","setActiveId","matches","createMemo","pendingMatches","match","find","d","routeId","id","param","params","p","r","path","trimPath","startsWith","trimmed","slice","error","navigationTarget","allParams","Object","assign","map","m","interpolated","interpolatePath","fullPath","leaveWildcards","leaveParams","decodeCharMap","pathParamsDecodeCharMap","isMissingParams","interpolatedPath","_el$6","_tmpl$5","_el$7","_el$8","$$click","_$createComponent","routesRow","Show","when","navigate","NavigateButton","to","AgeTicker","_el$9","_tmpl$3","_el$0","rootRouteId","code","_el$1","_tmpl$4","routeParamInfo","_c$","_$memo","length","_el$10","_tmpl$6","sort","a","b","rank","nestedRouteRow","_v$3","_v$4","routesRowContainer","_v$5","matchIndicator","getRouteStatusColor","_$setAttribute","BaseTanStackRouterDevtoolsPanel","isOpen","setIsOpen","handleDragStart","shadowDOMTarget","panelProps","onCloseClick","useDevtoolsOnClose","otherPanelProps","invariant","showMatches","setShowMatches","useLocalStorage","activeMatch","cachedMatches","hasSearch","keys","location","search","explorerState","state","routerExplorerValue","fromEntries","multiSortBy","dd","key","filter","includes","activeMatchLoaderData","loaderData","activeMatchValue","locationSearchValue","_el$11","_tmpl$7","_el$12","_el$13","_el$14","_el$15","_el$16","_el$17","_el$18","_el$19","_el$20","_el$22","_el$23","_el$24","_el$25","_el$26","_el$27","_el$28","_el$29","devtoolsPanel","_el$30","_$addEventListener","dragHandle","onClick","Explorer","label","value","defaultExpanded","context","options","filterSubEntries","subEntries","_c$2","maskedLocation","_el$31","_tmpl$8","_el$32","_v$22","maskedBadgeContainer","_v$23","maskedBadge","pathname","_c$3","_el$33","_c$4","routeTree","_el$34","_i","_el$35","_tmpl$9","_el$36","_el$37","matchID","_v$24","_v$25","matchRow","_v$26","getStatusColor","_c$5","_el$38","_tmpl$0","_el$39","_el$40","_el$41","_el$42","_el$43","_el$44","_el$45","_v$30","_v$31","_v$32","_v$27","cachedMatchesContainer","_v$28","detailsHeader","_v$29","detailsHeaderInfo","_c$6","status","_el$46","_tmpl$1","_el$47","_el$48","_el$49","_el$50","_el$51","_el$52","_el$53","_el$54","_el$55","_el$56","_el$57","_el$58","_el$59","_el$60","_el$61","_el$62","_el$63","_c$8","isFetching","_c$9","_c$0","updatedAt","Date","toLocaleTimeString","_c$1","_el$64","_tmpl$10","_el$65","detailsContent","_v$33","thirdContainer","_v$34","_v$35","matchDetails","_v$36","matchStatus","_v$37","matchDetailsInfoLabel","_v$38","matchDetailsInfo","_v$39","_v$40","_v$41","_v$42","_v$43","_v$44","o","i","n","s","h","l","u","_c$7","_el$66","_tmpl$11","_el$67","_el$69","navigator","_el$70","_tmpl$12","CopyButton","getValue","JSON","stringify","reduce","obj","next","_v$45","fourthContainer","_v$46","_v$47","_v$6","panelCloseBtn","_v$7","panelCloseBtnIcon","_v$8","firstContainer","_v$9","row","_v$0","routerExplorerContainer","_v$1","routerExplorer","_v$10","secondContainer","_v$11","matchesContainer","_v$12","_v$13","_v$14","_v$15","routeMatchesToggle","_v$16","_v$17","routeMatchesToggleBtn","_v$18","_v$19","_v$20","_v$21","routesContainer","c","disabled","w","f","y","g","copied","setCopied","createSignal","timeoutId","handleCopy","clipboard","writeText","console","warn","setTimeout","onCleanup","_el$71","_tmpl$13","_$delegateEvents"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { delegateEvents, template, insert, className, setAttribute } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.js";
1
+ import { template, insert, memo, createComponent, effect, className, setAttribute, mergeProps, delegateEvents } from "solid-js/web";
2
2
  import { clsx } from "clsx";
3
3
  import * as goober from "goober";
4
- import { createSignal, createMemo, createComponent, createRenderEffect, useContext, mergeProps } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.js";
4
+ import { createSignal, createMemo, useContext } from "solid-js";
5
5
  import { tokens } from "./tokens.js";
6
6
  import { displayValue } from "./utils.js";
7
7
  import { ShadowDomTargetContext } from "./context.js";
@@ -13,7 +13,7 @@ const Expander = ({
13
13
  const styles = useStyles();
14
14
  return (() => {
15
15
  var _el$ = _tmpl$(), _el$2 = _el$.firstChild;
16
- createRenderEffect((_p$) => {
16
+ effect((_p$) => {
17
17
  var _v$ = styles().expander, _v$2 = clsx(styles().expanderIcon(expanded));
18
18
  _v$ !== _p$.e && className(_el$, _p$.e = _v$);
19
19
  _v$2 !== _p$.t && setAttribute(_el$2, "class", _p$.t = _v$2);
@@ -92,7 +92,7 @@ function Explorer({
92
92
  return (() => {
93
93
  var _el$3 = _tmpl$2();
94
94
  insert(_el$3, (() => {
95
- var _c$ = createMemo(() => !!subEntryPages().length);
95
+ var _c$ = memo(() => !!subEntryPages().length);
96
96
  return () => _c$() ? [(() => {
97
97
  var _el$4 = _tmpl$3(), _el$5 = _el$4.firstChild, _el$6 = _el$5.firstChild;
98
98
  _el$4.$$click = () => toggleExpanded();
@@ -105,7 +105,7 @@ function Explorer({
105
105
  insert(_el$5, () => String(type).toLowerCase() === "iterable" ? "(Iterable) " : "", _el$6);
106
106
  insert(_el$5, () => subEntries().length, _el$6);
107
107
  insert(_el$5, () => subEntries().length > 1 ? `items` : `item`, null);
108
- createRenderEffect((_p$) => {
108
+ effect((_p$) => {
109
109
  var _v$3 = styles().expandButton, _v$4 = styles().info;
110
110
  _v$3 !== _p$.e && className(_el$4, _p$.e = _v$3);
111
111
  _v$4 !== _p$.t && className(_el$5, _p$.t = _v$4);
@@ -115,10 +115,10 @@ function Explorer({
115
115
  t: void 0
116
116
  });
117
117
  return _el$4;
118
- })(), createMemo(() => createMemo(() => !!(expanded() ?? false))() ? createMemo(() => subEntryPages().length === 1)() ? (() => {
118
+ })(), memo(() => memo(() => !!(expanded() ?? false))() ? memo(() => subEntryPages().length === 1)() ? (() => {
119
119
  var _el$7 = _tmpl$2();
120
120
  insert(_el$7, () => subEntries().map((entry, index) => handleEntry(entry)));
121
- createRenderEffect(() => className(_el$7, styles().subEntries));
121
+ effect(() => className(_el$7, styles().subEntries));
122
122
  return _el$7;
123
123
  })() : (() => {
124
124
  var _el$8 = _tmpl$2();
@@ -135,15 +135,15 @@ function Explorer({
135
135
  insert(_el$1, index * pageSize, _el$15);
136
136
  insert(_el$1, index * pageSize + pageSize - 1, _el$16);
137
137
  insert(_el$0, (() => {
138
- var _c$3 = createMemo(() => !!expandedPages().includes(index));
138
+ var _c$3 = memo(() => !!expandedPages().includes(index));
139
139
  return () => _c$3() ? (() => {
140
140
  var _el$17 = _tmpl$2();
141
141
  insert(_el$17, () => entries.map((entry) => handleEntry(entry)));
142
- createRenderEffect(() => className(_el$17, styles().subEntries));
142
+ effect(() => className(_el$17, styles().subEntries));
143
143
  return _el$17;
144
144
  })() : null;
145
145
  })(), null);
146
- createRenderEffect((_p$) => {
146
+ effect((_p$) => {
147
147
  var _v$5 = styles().entry, _v$6 = clsx(styles().labelButton, "labelButton");
148
148
  _v$5 !== _p$.e && className(_el$0, _p$.e = _v$5);
149
149
  _v$6 !== _p$.t && className(_el$1, _p$.t = _v$6);
@@ -155,17 +155,17 @@ function Explorer({
155
155
  return _el$9;
156
156
  })();
157
157
  }));
158
- createRenderEffect(() => className(_el$8, styles().subEntries));
158
+ effect(() => className(_el$8, styles().subEntries));
159
159
  return _el$8;
160
160
  })() : null)] : (() => {
161
- var _c$2 = createMemo(() => type() === "function");
161
+ var _c$2 = memo(() => type() === "function");
162
162
  return () => _c$2() ? createComponent(Explorer, {
163
163
  get label() {
164
164
  return (() => {
165
165
  var _el$18 = _tmpl$5(), _el$19 = _el$18.firstChild;
166
166
  _el$18.$$click = refreshValueSnapshot;
167
167
  insert(_el$19, () => rest.label);
168
- createRenderEffect(() => className(_el$18, styles().refreshValueBtn));
168
+ effect(() => className(_el$18, styles().refreshValueBtn));
169
169
  return _el$18;
170
170
  })();
171
171
  },
@@ -178,12 +178,12 @@ function Explorer({
178
178
  })(), " ", (() => {
179
179
  var _el$22 = _tmpl$7();
180
180
  insert(_el$22, () => displayValue(value()));
181
- createRenderEffect(() => className(_el$22, styles().value));
181
+ effect(() => className(_el$22, styles().value));
182
182
  return _el$22;
183
183
  })()];
184
184
  })();
185
185
  })());
186
- createRenderEffect(() => className(_el$3, styles().entry));
186
+ effect(() => className(_el$3, styles().entry));
187
187
  return _el$3;
188
188
  })();
189
189
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Explorer.js","sources":["../../src/Explorer.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unnecessary-condition */\nimport { clsx as cx } from 'clsx'\nimport * as goober from 'goober'\nimport { createMemo, createSignal, useContext } from 'solid-js'\nimport { tokens } from './tokens'\nimport { displayValue } from './utils'\nimport { ShadowDomTargetContext } from './context'\nimport type { Accessor, JSX } from 'solid-js'\n\ntype ExpanderProps = {\n expanded: boolean\n style?: JSX.CSSProperties\n}\n\nexport const Expander = ({ expanded, style = {} }: ExpanderProps) => {\n const styles = useStyles()\n return (\n <span class={styles().expander}>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n class={cx(styles().expanderIcon(expanded))}\n >\n <path\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M9 18l6-6-6-6\"\n ></path>\n </svg>\n </span>\n )\n}\n\ntype Entry = {\n label: string\n}\n\ntype RendererProps = {\n handleEntry: HandleEntryFn\n label?: JSX.Element\n value: Accessor<unknown>\n subEntries: Array<Entry>\n subEntryPages: Array<Array<Entry>>\n type: string\n expanded: Accessor<boolean>\n toggleExpanded: () => void\n pageSize: number\n filterSubEntries?: (subEntries: Array<Property>) => Array<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: Array<T>, size: number): Array<Array<T>> {\n if (size < 1) return []\n let i = 0\n const result: Array<Array<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 HandleEntryFn = (entry: Entry) => JSX.Element\n\ntype ExplorerProps = Partial<RendererProps> & {\n defaultExpanded?: true | Record<string, boolean>\n value: Accessor<unknown>\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 function Explorer({\n value,\n defaultExpanded,\n pageSize = 100,\n filterSubEntries,\n ...rest\n}: ExplorerProps) {\n const [expanded, setExpanded] = createSignal(Boolean(defaultExpanded))\n const toggleExpanded = () => setExpanded((old) => !old)\n\n const type = createMemo(() => typeof value())\n const subEntries = createMemo(() => {\n let entries: Array<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 value: () => sub.value,\n defaultExpanded: subDefaultExpanded,\n }\n }\n\n if (Array.isArray(value())) {\n // any[]\n entries = (value() as Array<any>).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() as Iterable<unknown>)[Symbol.iterator] === 'function'\n ) {\n // Iterable<unknown>\n entries = Array.from(value() as Iterable<unknown>, (val, i) =>\n makeProperty({\n label: i.toString(),\n value: val,\n }),\n )\n } else if (typeof value() === 'object' && value() !== null) {\n // object\n entries = Object.entries(value() as object).map(([key, val]) =>\n makeProperty({\n label: key,\n value: val,\n }),\n )\n }\n\n return filterSubEntries ? filterSubEntries(entries) : entries\n })\n\n const subEntryPages = createMemo(() => chunkArray(subEntries(), pageSize))\n\n const [expandedPages, setExpandedPages] = createSignal<Array<number>>([])\n const [valueSnapshot, setValueSnapshot] = createSignal(undefined)\n const styles = useStyles()\n\n const refreshValueSnapshot = () => {\n setValueSnapshot((value() as () => any)())\n }\n\n const handleEntry = (entry: Entry) => (\n <Explorer\n value={value}\n filterSubEntries={filterSubEntries}\n {...rest}\n {...entry}\n />\n )\n\n return (\n <div class={styles().entry}>\n {subEntryPages().length ? (\n <>\n <button\n class={styles().expandButton}\n onClick={() => toggleExpanded()}\n >\n <Expander expanded={expanded() ?? false} />\n {rest.label}\n <span class={styles().info}>\n {String(type).toLowerCase() === 'iterable' ? '(Iterable) ' : ''}\n {subEntries().length} {subEntries().length > 1 ? `items` : `item`}\n </span>\n </button>\n {(expanded() ?? false) ? (\n subEntryPages().length === 1 ? (\n <div class={styles().subEntries}>\n {subEntries().map((entry, index) => handleEntry(entry))}\n </div>\n ) : (\n <div class={styles().subEntries}>\n {subEntryPages().map((entries, index) => {\n return (\n <div>\n <div class={styles().entry}>\n <button\n class={cx(styles().labelButton, 'labelButton')}\n onClick={() =>\n setExpandedPages((old) =>\n old.includes(index)\n ? old.filter((d) => d !== index)\n : [...old, index],\n )\n }\n >\n <Expander\n expanded={expandedPages().includes(index)}\n />{' '}\n [{index * pageSize} ...{' '}\n {index * pageSize + pageSize - 1}]\n </button>\n {expandedPages().includes(index) ? (\n <div class={styles().subEntries}>\n {entries.map((entry) => handleEntry(entry))}\n </div>\n ) : null}\n </div>\n </div>\n )\n })}\n </div>\n )\n ) : null}\n </>\n ) : type() === 'function' ? (\n <>\n <Explorer\n label={\n <button\n onClick={refreshValueSnapshot}\n class={styles().refreshValueBtn}\n >\n <span>{rest.label}</span> 🔄{' '}\n </button>\n }\n value={valueSnapshot}\n defaultExpanded={{}}\n />\n </>\n ) : (\n <>\n <span>{rest.label}:</span>{' '}\n <span class={styles().value}>{displayValue(value())}</span>\n </>\n )}\n </div>\n )\n}\n\nconst stylesFactory = (shadowDOMTarget?: ShadowRoot) => {\n const { colors, font, size, alpha, shadow, border } = tokens\n const { fontFamily, lineHeight, size: fontSize } = font\n const css = shadowDOMTarget\n ? goober.css.bind({ target: shadowDOMTarget })\n : goober.css\n\n return {\n entry: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n line-height: ${lineHeight.sm};\n outline: none;\n word-break: break-word;\n `,\n labelButton: css`\n cursor: pointer;\n color: inherit;\n font: inherit;\n outline: inherit;\n background: transparent;\n border: none;\n padding: 0;\n `,\n expander: css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ${size[3]};\n height: ${size[3]};\n padding-left: 3px;\n box-sizing: content-box;\n `,\n expanderIcon: (expanded: boolean) => {\n if (expanded) {\n return css`\n transform: rotate(90deg);\n transition: transform 0.1s ease;\n `\n }\n return css`\n transform: rotate(0deg);\n transition: transform 0.1s ease;\n `\n },\n expandButton: css`\n display: flex;\n gap: ${size[1]};\n align-items: center;\n cursor: pointer;\n color: inherit;\n font: inherit;\n outline: inherit;\n background: transparent;\n border: none;\n padding: 0;\n `,\n value: css`\n color: ${colors.purple[400]};\n `,\n subEntries: css`\n margin-left: ${size[2]};\n padding-left: ${size[2]};\n border-left: 2px solid ${colors.darkGray[400]};\n `,\n info: css`\n color: ${colors.gray[500]};\n font-size: ${fontSize['2xs']};\n padding-left: ${size[1]};\n `,\n refreshValueBtn: css`\n appearance: none;\n border: 0;\n cursor: pointer;\n background: transparent;\n color: inherit;\n padding: 0;\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n `,\n }\n}\n\nfunction useStyles() {\n const shadowDomTarget = useContext(ShadowDomTargetContext)\n const [_styles] = createSignal(stylesFactory(shadowDomTarget))\n return _styles\n}\n"],"names":["Expander","expanded","style","styles","useStyles","_el$","_tmpl$","_el$2","firstChild","_$effect","_p$","_v$","expander","_v$2","cx","expanderIcon","e","_$className","t","_$setAttribute","undefined","chunkArray","array","size","i","result","length","push","slice","isIterable","x","Symbol","iterator","Explorer","value","defaultExpanded","pageSize","filterSubEntries","rest","setExpanded","createSignal","Boolean","toggleExpanded","old","type","createMemo","subEntries","entries","makeProperty","sub","subDefaultExpanded","label","Array","isArray","map","d","toString","from","val","Object","key","subEntryPages","expandedPages","setExpandedPages","valueSnapshot","setValueSnapshot","refreshValueSnapshot","handleEntry","entry","_$createComponent","_$mergeProps","_el$3","_tmpl$2","_$insert","_c$","_$memo","_el$4","_tmpl$3","_el$5","_el$6","$$click","String","toLowerCase","_v$3","expandButton","_v$4","info","_el$7","index","_el$8","_el$9","_tmpl$4","_el$0","_el$1","_el$10","_el$15","nextSibling","_el$12","_el$16","includes","filter","_c$3","_el$17","_v$5","_v$6","labelButton","_c$2","_el$18","_tmpl$5","_el$19","refreshValueBtn","_el$20","_tmpl$6","_el$21","_el$22","_tmpl$7","displayValue","stylesFactory","shadowDOMTarget","colors","font","tokens","fontFamily","lineHeight","fontSize","css","goober","bind","target","mono","xs","sm","purple","darkGray","gray","shadowDomTarget","useContext","ShadowDomTargetContext","_styles","_$delegateEvents"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { template, spread, insert, className, Dynamic } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.js";
1
+ import { createComponent, Dynamic, mergeProps, template, spread, insert, effect, className } from "solid-js/web";
2
2
  import { clsx } from "clsx";
3
- import { createSignal, createEffect, createMemo, createComponent, mergeProps, createRenderEffect } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.js";
3
+ import { createSignal, createEffect, createMemo } from "solid-js";
4
4
  import { DevtoolsOnCloseContext } from "./context.js";
5
5
  import { useIsMounted } from "./utils.js";
6
6
  import { BaseTanStackRouterDevtoolsPanel } from "./BaseTanStackRouterDevtoolsPanel.js";
@@ -174,7 +174,7 @@ function FloatingTanStackRouterDevtools({
174
174
  }), false, true);
175
175
  insert(_el$3, createComponent(TanStackLogo, {}));
176
176
  insert(_el$4, createComponent(TanStackLogo, {}));
177
- createRenderEffect((_p$) => {
177
+ effect((_p$) => {
178
178
  var _v$ = styles().mainCloseBtnIconContainer, _v$2 = styles().mainCloseBtnIconOuter, _v$3 = styles().mainCloseBtnIconInner, _v$4 = styles().mainCloseBtnDivider, _v$5 = styles().routerLogoCloseButton;
179
179
  _v$ !== _p$.e && className(_el$2, _p$.e = _v$);
180
180
  _v$2 !== _p$.t && className(_el$3, _p$.t = _v$2);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FloatingTanStackRouterDevtools.js","sources":["../../src/FloatingTanStackRouterDevtools.tsx"],"sourcesContent":["import { clsx as cx } from 'clsx'\n\nimport { createEffect, createMemo, createSignal } from 'solid-js'\nimport { Dynamic } from 'solid-js/web'\n\nimport { DevtoolsOnCloseContext } from './context'\nimport { useIsMounted } from './utils'\nimport { BaseTanStackRouterDevtoolsPanel } from './BaseTanStackRouterDevtoolsPanel'\nimport useLocalStorage from './useLocalStorage'\nimport { TanStackLogo } from './logo'\nimport { useStyles } from './useStyles'\nimport type { Accessor, JSX } from 'solid-js'\nimport type { AnyRouter } from '@tanstack/router-core'\n\nexport interface FloatingDevtoolsOptions {\n /**\n * Set this true if you want the dev tools to default to being open\n */\n initialIsOpen?: boolean\n /**\n * Use this to add props to the panel. For example, you can add class, style (merge and override default style), etc.\n */\n panelProps?: any & {\n ref?: any\n }\n /**\n * Use this to add props to the close button. For example, you can add class, style (merge and override default style), onClick (extend default handler), etc.\n */\n closeButtonProps?: any & {\n ref?: any\n }\n /**\n * Use this to add props to the toggle button. For example, you can add class, style (merge and override default style), onClick (extend default handler), etc.\n */\n toggleButtonProps?: any & {\n ref?: any\n }\n /**\n * The position of the TanStack Router logo to open and close the devtools panel.\n * Defaults to 'bottom-left'.\n */\n position?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'\n /**\n * Use this to render the devtools inside a different type of container element for a11y purposes.\n * Any string which corresponds to a valid intrinsic JSX element is allowed.\n * Defaults to 'footer'.\n */\n containerElement?: string | any\n /**\n * A boolean variable indicating if the \"lite\" version of the library is being used\n */\n router: Accessor<AnyRouter>\n routerState: Accessor<any>\n /**\n * Use this to attach the devtool's styles to specific element in the DOM.\n */\n shadowDOMTarget?: ShadowRoot\n}\n\nexport function FloatingTanStackRouterDevtools({\n initialIsOpen,\n panelProps = {},\n closeButtonProps = {},\n toggleButtonProps = {},\n position = 'bottom-left',\n containerElement: Container = 'footer',\n router,\n routerState,\n shadowDOMTarget,\n}: FloatingDevtoolsOptions): JSX.Element | null {\n const [rootEl, setRootEl] = createSignal<HTMLDivElement>()\n\n // eslint-disable-next-line prefer-const\n let panelRef: HTMLDivElement | undefined = undefined\n\n const [isOpen, setIsOpen] = useLocalStorage(\n 'tanstackRouterDevtoolsOpen',\n initialIsOpen,\n )\n\n const [devtoolsHeight, setDevtoolsHeight] = useLocalStorage<number | null>(\n 'tanstackRouterDevtoolsHeight',\n null,\n )\n\n const [isResolvedOpen, setIsResolvedOpen] = createSignal(false)\n const [isResizing, setIsResizing] = createSignal(false)\n const isMounted = useIsMounted()\n const styles = useStyles()\n\n const handleDragStart = (\n panelElement: HTMLDivElement | undefined,\n startEvent: any,\n ) => {\n if (startEvent.button !== 0) return // Only allow left click for drag\n\n setIsResizing(true)\n\n const dragInfo = {\n originalHeight: panelElement?.getBoundingClientRect().height ?? 0,\n pageY: startEvent.pageY,\n }\n\n const run = (moveEvent: MouseEvent) => {\n const delta = dragInfo.pageY - moveEvent.pageY\n const newHeight = dragInfo.originalHeight + delta\n\n setDevtoolsHeight(newHeight)\n\n if (newHeight < 70) {\n setIsOpen(false)\n } else {\n setIsOpen(true)\n }\n }\n\n const unsub = () => {\n setIsResizing(false)\n document.removeEventListener('mousemove', run)\n document.removeEventListener('mouseUp', unsub)\n }\n\n document.addEventListener('mousemove', run)\n document.addEventListener('mouseup', unsub)\n }\n\n const isButtonClosed = isOpen() ?? false\n\n createEffect(() => {\n setIsResolvedOpen(isOpen() ?? false)\n })\n\n createEffect(() => {\n if (isResolvedOpen()) {\n const previousValue = rootEl()?.parentElement?.style.paddingBottom\n\n const run = () => {\n const containerHeight = panelRef!.getBoundingClientRect().height\n if (rootEl()?.parentElement) {\n setRootEl((prev) => {\n if (prev?.parentElement) {\n prev.parentElement.style.paddingBottom = `${containerHeight}px`\n }\n return prev\n })\n }\n }\n\n run()\n\n if (typeof window !== 'undefined') {\n window.addEventListener('resize', run)\n\n return () => {\n window.removeEventListener('resize', run)\n if (rootEl()?.parentElement && typeof previousValue === 'string') {\n setRootEl((prev) => {\n prev!.parentElement!.style.paddingBottom = previousValue\n return prev\n })\n }\n }\n }\n } else {\n // Reset padding when devtools are closed\n if (rootEl()?.parentElement) {\n setRootEl((prev) => {\n if (prev?.parentElement) {\n prev.parentElement.removeAttribute('style')\n }\n return prev\n })\n }\n }\n return\n })\n\n createEffect(() => {\n if (rootEl()) {\n const el = rootEl()\n const fontSize = getComputedStyle(el!).fontSize\n el?.style.setProperty('--tsrd-font-size', fontSize)\n }\n })\n\n const { style: panelStyle = {}, ...otherPanelProps } = panelProps as {\n style?: Record<string, any>\n }\n\n const {\n style: closeButtonStyle = {},\n onClick: onCloseClick,\n ...otherCloseButtonProps\n } = closeButtonProps\n\n const {\n onClick: onToggleClick,\n class: toggleButtonClassName,\n ...otherToggleButtonProps\n } = toggleButtonProps\n\n // Do not render on the server\n if (!isMounted()) return null\n\n const resolvedHeight = createMemo(() => devtoolsHeight() ?? 500)\n\n const basePanelClass = createMemo(() => {\n return cx(\n styles().devtoolsPanelContainer,\n styles().devtoolsPanelContainerVisibility(!!isOpen()),\n styles().devtoolsPanelContainerResizing(isResizing),\n styles().devtoolsPanelContainerAnimation(\n isResolvedOpen(),\n resolvedHeight() + 16,\n ),\n )\n })\n\n const basePanelStyle = createMemo(() => {\n return {\n height: `${resolvedHeight()}px`,\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n ...(panelStyle || {}),\n }\n })\n\n const buttonStyle = createMemo(() => {\n return cx(\n styles().mainCloseBtn,\n styles().mainCloseBtnPosition(position),\n styles().mainCloseBtnAnimation(!!isOpen()),\n toggleButtonClassName,\n )\n })\n\n return (\n <Dynamic\n component={Container}\n ref={setRootEl}\n class=\"TanStackRouterDevtools\"\n >\n <DevtoolsOnCloseContext.Provider\n value={{\n onCloseClick: onCloseClick ?? (() => {}),\n }}\n >\n {/* {router() ? ( */}\n <BaseTanStackRouterDevtoolsPanel\n ref={panelRef as any}\n {...otherPanelProps}\n router={router}\n routerState={routerState}\n className={basePanelClass}\n style={basePanelStyle}\n isOpen={isResolvedOpen()}\n setIsOpen={setIsOpen}\n handleDragStart={(e) => handleDragStart(panelRef, e)}\n shadowDOMTarget={shadowDOMTarget}\n />\n {/* ) : (\n <p>No router</p>\n )} */}\n </DevtoolsOnCloseContext.Provider>\n\n <button\n type=\"button\"\n {...otherToggleButtonProps}\n aria-label=\"Open TanStack Router Devtools\"\n onClick={(e) => {\n setIsOpen(true)\n onToggleClick && onToggleClick(e)\n }}\n class={buttonStyle()}\n >\n <div class={styles().mainCloseBtnIconContainer}>\n <div class={styles().mainCloseBtnIconOuter}>\n <TanStackLogo />\n </div>\n <div class={styles().mainCloseBtnIconInner}>\n <TanStackLogo />\n </div>\n </div>\n <div class={styles().mainCloseBtnDivider}>-</div>\n <div class={styles().routerLogoCloseButton}>TanStack Router</div>\n </button>\n </Dynamic>\n )\n}\n\nexport default FloatingTanStackRouterDevtools\n"],"names":["FloatingTanStackRouterDevtools","initialIsOpen","panelProps","closeButtonProps","toggleButtonProps","position","containerElement","Container","router","routerState","shadowDOMTarget","rootEl","setRootEl","createSignal","panelRef","undefined","isOpen","setIsOpen","useLocalStorage","devtoolsHeight","setDevtoolsHeight","isResolvedOpen","setIsResolvedOpen","isResizing","setIsResizing","isMounted","useIsMounted","styles","useStyles","handleDragStart","panelElement","startEvent","button","dragInfo","originalHeight","getBoundingClientRect","height","pageY","run","moveEvent","delta","newHeight","unsub","document","removeEventListener","addEventListener","createEffect","previousValue","parentElement","style","paddingBottom","containerHeight","prev","window","removeAttribute","el","fontSize","getComputedStyle","setProperty","panelStyle","otherPanelProps","closeButtonStyle","onClick","onCloseClick","otherCloseButtonProps","onToggleClick","class","toggleButtonClassName","otherToggleButtonProps","resolvedHeight","createMemo","basePanelClass","cx","devtoolsPanelContainer","devtoolsPanelContainerVisibility","devtoolsPanelContainerResizing","devtoolsPanelContainerAnimation","basePanelStyle","buttonStyle","mainCloseBtn","mainCloseBtnPosition","mainCloseBtnAnimation","_$createComponent","Dynamic","component","ref","children","DevtoolsOnCloseContext","Provider","value","BaseTanStackRouterDevtoolsPanel","_$mergeProps","r$","_ref$","className","e","_el$","_tmpl$","_el$2","firstChild","_el$3","_el$4","nextSibling","_el$5","_el$6","_$spread","_$insert","TanStackLogo","_$effect","_p$","_v$","mainCloseBtnIconContainer","_v$2","mainCloseBtnIconOuter","_v$3","mainCloseBtnIconInner","_v$4","mainCloseBtnDivider","_v$5","routerLogoCloseButton","_$className","t","a","o","i"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
- import { template, setAttribute, className, delegateEvents } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.js";
1
+ import { template, setAttribute, effect, className, delegateEvents } from "solid-js/web";
2
2
  import { useStyles } from "./useStyles.js";
3
- import { createRenderEffect } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.js";
4
3
  var _tmpl$ = /* @__PURE__ */ template(`<button type=button>➔`);
5
4
  function NavigateButton({
6
5
  to,
@@ -20,7 +19,7 @@ function NavigateButton({
20
19
  });
21
20
  };
22
21
  setAttribute(_el$, "title", `Navigate to ${to}`);
23
- createRenderEffect(() => className(_el$, styles().navigateButton));
22
+ effect(() => className(_el$, styles().navigateButton));
24
23
  return _el$;
25
24
  })();
26
25
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NavigateButton.js","sources":["../../src/NavigateButton.tsx"],"sourcesContent":["import { useStyles } from './useStyles'\nimport type { AnyRouter, NavigateOptions } from '@tanstack/router-core'\nimport type { Accessor } from 'solid-js'\n\ninterface Props extends NavigateOptions {\n router: Accessor<AnyRouter>\n}\n\nexport function NavigateButton({ to, params, search, router }: Props) {\n const styles = useStyles()\n\n return (\n <button\n type=\"button\"\n title={`Navigate to ${to}`}\n class={styles().navigateButton}\n onClick={(e) => {\n e.stopPropagation()\n router().navigate({ to, params, search })\n }}\n >\n ➔\n </button>\n )\n}\n"],"names":["NavigateButton","to","params","search","router","styles","useStyles","_el$","_tmpl$","$$click","e","stopPropagation","navigate","_$setAttribute","_$effect","_$className","navigateButton","_$delegateEvents"],"mappings":";;;AAQO,SAASA,eAAe;AAAA,EAAEC;AAAAA,EAAIC;AAAAA,EAAQC;AAAAA,EAAQC;AAAc,GAAG;AACpE,QAAMC,SAASC,UAAAA;AAEf,UAAA,MAAA;AAAA,QAAAC,OAAAC,OAAAA;AAAAD,SAAAE,UAKcC,CAAAA,MAAM;AACdA,QAAEC,gBAAAA;AACFP,aAAAA,EAASQ,SAAS;AAAA,QAAEX;AAAAA,QAAIC;AAAAA,QAAQC;AAAAA,MAAAA,CAAQ;AAAA,IAC1C;AAACU,iBAAAN,MAAA,SALM,eAAeN,EAAE,EAAE;AAAAa,WAAA,MAAAC,UAAAR,MACnBF,OAAAA,EAASW,cAAc,CAAA;AAAA,WAAAT;AAAAA,EAAA,GAAA;AASpC;AAACU,eAAA,CAAA,OAAA,CAAA;"}
@@ -1,5 +1,5 @@
1
- import { render } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.js";
2
- import { createSignal, lazy, createComponent } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.js";
1
+ import { render, createComponent } from "solid-js/web";
2
+ import { createSignal, lazy } from "solid-js";
3
3
  import { ShadowDomTargetContext } from "./context.js";
4
4
  class TanStackRouterDevtoolsCore {
5
5
  #router;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TanStackRouterDevtoolsCore.js","sources":["../../src/TanStackRouterDevtoolsCore.tsx"],"sourcesContent":["import { createSignal, lazy } from 'solid-js'\nimport { render } from 'solid-js/web'\nimport { ShadowDomTargetContext } from './context'\nimport type { AnyRouter } from '@tanstack/router-core'\nimport type { Signal } from 'solid-js'\n\ninterface DevtoolsOptions {\n /**\n * Set this true if you want the dev tools to default to being open\n */\n initialIsOpen?: boolean\n /**\n * Use this to add props to the panel. For example, you can add class, style (merge and override default style), etc.\n */\n panelProps?: any & {\n ref?: any\n }\n /**\n * Use this to add props to the close button. For example, you can add class, style (merge and override default style), onClick (extend default handler), etc.\n */\n closeButtonProps?: any & {\n ref?: any\n }\n /**\n * Use this to add props to the toggle button. For example, you can add class, style (merge and override default style), onClick (extend default handler), etc.\n */\n toggleButtonProps?: any & {\n ref?: any\n }\n /**\n * The position of the TanStack Router logo to open and close the devtools panel.\n * Defaults to 'bottom-left'.\n */\n position?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'\n /**\n * Use this to render the devtools inside a different type of container element for a11y purposes.\n * Any string which corresponds to a valid intrinsic JSX element is allowed.\n * Defaults to 'footer'.\n */\n containerElement?: string | any\n /**\n * A boolean variable indicating if the \"lite\" version of the library is being used\n */\n router: AnyRouter\n routerState: any\n /**\n * Use this to attach the devtool's styles to specific element in the DOM.\n */\n shadowDOMTarget?: ShadowRoot\n}\n\nclass TanStackRouterDevtoolsCore {\n #router: Signal<AnyRouter>\n #routerState: Signal<any>\n #position: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'\n #initialIsOpen: boolean\n #shadowDOMTarget?: ShadowRoot\n\n #panelProps: any\n #closeButtonProps: any\n #toggleButtonProps: any\n #containerElement?: string | any\n\n #isMounted = false\n #Component: any\n #dispose?: () => void\n\n constructor(config: DevtoolsOptions) {\n this.#router = createSignal(config.router)\n this.#routerState = createSignal(config.routerState)\n this.#position = config.position ?? 'bottom-left'\n this.#initialIsOpen = config.initialIsOpen ?? false\n this.#shadowDOMTarget = config.shadowDOMTarget\n\n this.#panelProps = config.panelProps\n this.#closeButtonProps = config.closeButtonProps\n this.#toggleButtonProps = config.toggleButtonProps\n this.#containerElement = config.containerElement\n }\n\n mount<T extends HTMLElement>(el: T) {\n if (this.#isMounted) {\n throw new Error('Devtools is already mounted')\n }\n\n const dispose = render(() => {\n const [router] = this.#router\n const [routerState] = this.#routerState\n const position = this.#position\n const initialIsOpen = this.#initialIsOpen\n const shadowDOMTarget = this.#shadowDOMTarget\n\n const panelProps = this.#panelProps\n const closeButtonProps = this.#closeButtonProps\n const toggleButtonProps = this.#toggleButtonProps\n const containerElement = this.#containerElement\n\n let Devtools\n\n if (this.#Component) {\n Devtools = this.#Component\n } else {\n Devtools = lazy(() => import('./FloatingTanStackRouterDevtools'))\n this.#Component = Devtools\n }\n\n return (\n <ShadowDomTargetContext.Provider value={shadowDOMTarget}>\n <Devtools\n position={position}\n initialIsOpen={initialIsOpen}\n router={router}\n routerState={routerState}\n shadowDOMTarget={shadowDOMTarget}\n panelProps={panelProps}\n closeButtonProps={closeButtonProps}\n toggleButtonProps={toggleButtonProps}\n containerElement={containerElement}\n />\n </ShadowDomTargetContext.Provider>\n )\n }, el)\n\n this.#isMounted = true\n this.#dispose = dispose\n }\n\n unmount() {\n if (!this.#isMounted) {\n throw new Error('Devtools is not mounted')\n }\n this.#dispose?.()\n this.#isMounted = false\n }\n\n setRouter(router: AnyRouter) {\n this.#router[1](router)\n }\n\n setRouterState(routerState: any) {\n this.#routerState[1](routerState)\n }\n\n setOptions(options: Partial<DevtoolsOptions>) {\n if (options.position !== undefined) {\n this.#position = options.position\n }\n\n if (options.initialIsOpen !== undefined) {\n this.#initialIsOpen = options.initialIsOpen\n }\n\n if (options.shadowDOMTarget !== undefined) {\n this.#shadowDOMTarget = options.shadowDOMTarget\n }\n\n if (options.containerElement !== undefined) {\n this.#containerElement = options.containerElement\n }\n }\n}\n\nexport { TanStackRouterDevtoolsCore }\n"],"names":["TanStackRouterDevtoolsCore","constructor","config","createSignal","router","routerState","position","initialIsOpen","shadowDOMTarget","panelProps","closeButtonProps","toggleButtonProps","containerElement","mount","el","Error","dispose","render","Devtools","lazy","_$createComponent","ShadowDomTargetContext","Provider","value","children","unmount","setRouter","setRouterState","setOptions","options","undefined"],"mappings":";;;AAmDA,MAAMA,2BAA2B;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA,aAAa;AAAA,EACb;AAAA,EACA;AAAA,EAEAC,YAAYC,QAAyB;AACnC,SAAK,UAAUC,aAAaD,OAAOE,MAAM;AACzC,SAAK,eAAeD,aAAaD,OAAOG,WAAW;AACnD,SAAK,YAAYH,OAAOI,YAAY;AACpC,SAAK,iBAAiBJ,OAAOK,iBAAiB;AAC9C,SAAK,mBAAmBL,OAAOM;AAE/B,SAAK,cAAcN,OAAOO;AAC1B,SAAK,oBAAoBP,OAAOQ;AAChC,SAAK,qBAAqBR,OAAOS;AACjC,SAAK,oBAAoBT,OAAOU;AAAAA,EAClC;AAAA,EAEAC,MAA6BC,IAAO;AAClC,QAAI,KAAK,YAAY;AACnB,YAAM,IAAIC,MAAM,6BAA6B;AAAA,IAC/C;AAEA,UAAMC,UAAUC,OAAO,MAAM;AAC3B,YAAM,CAACb,MAAM,IAAI,KAAK;AACtB,YAAM,CAACC,WAAW,IAAI,KAAK;AAC3B,YAAMC,WAAW,KAAK;AACtB,YAAMC,gBAAgB,KAAK;AAC3B,YAAMC,kBAAkB,KAAK;AAE7B,YAAMC,aAAa,KAAK;AACxB,YAAMC,mBAAmB,KAAK;AAC9B,YAAMC,oBAAoB,KAAK;AAC/B,YAAMC,mBAAmB,KAAK;AAE9B,UAAIM;AAEJ,UAAI,KAAK,YAAY;AACnBA,mBAAW,KAAK;AAAA,MAClB,OAAO;AACLA,mBAAWC,KAAK,MAAM,OAAO,qCAAkC,CAAC;AAChE,aAAK,aAAaD;AAAAA,MACpB;AAEA,aAAAE,gBACGC,uBAAuBC,UAAQ;AAAA,QAACC,OAAOf;AAAAA,QAAe,IAAAgB,WAAA;AAAA,iBAAAJ,gBACpDF,UAAQ;AAAA,YACPZ;AAAAA,YACAC;AAAAA,YACAH;AAAAA,YACAC;AAAAA,YACAG;AAAAA,YACAC;AAAAA,YACAC;AAAAA,YACAC;AAAAA,YACAC;AAAAA,UAAAA,CAAkC;AAAA,QAAA;AAAA,MAAA,CAAA;AAAA,IAI1C,GAAGE,EAAE;AAEL,SAAK,aAAa;AAClB,SAAK,WAAWE;AAAAA,EAClB;AAAA,EAEAS,UAAU;AACR,QAAI,CAAC,KAAK,YAAY;AACpB,YAAM,IAAIV,MAAM,yBAAyB;AAAA,IAC3C;AACA,SAAK,WAAA;AACL,SAAK,aAAa;AAAA,EACpB;AAAA,EAEAW,UAAUtB,QAAmB;AAC3B,SAAK,QAAQ,CAAC,EAAEA,MAAM;AAAA,EACxB;AAAA,EAEAuB,eAAetB,aAAkB;AAC/B,SAAK,aAAa,CAAC,EAAEA,WAAW;AAAA,EAClC;AAAA,EAEAuB,WAAWC,SAAmC;AAC5C,QAAIA,QAAQvB,aAAawB,QAAW;AAClC,WAAK,YAAYD,QAAQvB;AAAAA,IAC3B;AAEA,QAAIuB,QAAQtB,kBAAkBuB,QAAW;AACvC,WAAK,iBAAiBD,QAAQtB;AAAAA,IAChC;AAEA,QAAIsB,QAAQrB,oBAAoBsB,QAAW;AACzC,WAAK,mBAAmBD,QAAQrB;AAAAA,IAClC;AAEA,QAAIqB,QAAQjB,qBAAqBkB,QAAW;AAC1C,WAAK,oBAAoBD,QAAQjB;AAAAA,IACnC;AAAA,EACF;AACF;"}
@@ -1,6 +1,6 @@
1
- import { render } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.js";
2
- import { createSignal, lazy, createComponent } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.js";
3
- import { DevtoolsOnCloseContext, ShadowDomTargetContext } from "./context.js";
1
+ import { render, createComponent } from "solid-js/web";
2
+ import { createSignal, lazy } from "solid-js";
3
+ import { ShadowDomTargetContext, DevtoolsOnCloseContext } from "./context.js";
4
4
  class TanStackRouterDevtoolsPanelCore {
5
5
  #router;
6
6
  #routerState;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TanStackRouterDevtoolsPanelCore.js","sources":["../../src/TanStackRouterDevtoolsPanelCore.tsx"],"sourcesContent":["import { render } from 'solid-js/web'\nimport { createSignal, lazy } from 'solid-js'\nimport { DevtoolsOnCloseContext, ShadowDomTargetContext } from './context'\nimport type { JSX } from 'solid-js'\nimport type { AnyRouter } from '@tanstack/router-core'\n\ninterface TanStackRouterDevtoolsPanelCoreOptions {\n /**\n * The standard React style object used to style a component with inline styles\n */\n style?: JSX.CSSProperties\n /**\n * The standard React class property used to style a component with classes\n */\n className?: string\n /**\n * A boolean variable indicating whether the panel is open or closed\n */\n isOpen?: boolean\n /**\n * A function that toggles the open and close state of the panel\n */\n setIsOpen?: (isOpen: boolean) => void\n /**\n * Handles the opening and closing the devtools panel\n */\n handleDragStart?: (e: any) => void\n /**\n * A boolean variable indicating if the \"lite\" version of the library is being used\n */\n router: AnyRouter\n\n routerState: any\n /**\n * Use this to attach the devtool's styles to specific element in the DOM.\n */\n shadowDOMTarget?: ShadowRoot\n}\n\nclass TanStackRouterDevtoolsPanelCore {\n #router: any\n #routerState: any\n #style: any\n #className: any\n #shadowDOMTarget?: ShadowRoot\n #isMounted = false\n #setIsOpen?: (isOpen: boolean) => void\n #dispose?: () => void\n #Component: any\n\n constructor(config: TanStackRouterDevtoolsPanelCoreOptions) {\n const {\n router,\n routerState,\n shadowDOMTarget,\n setIsOpen,\n style,\n className,\n } = config\n\n this.#router = createSignal(router)\n this.#routerState = createSignal(routerState)\n this.#style = createSignal(style)\n this.#className = createSignal(className)\n this.#shadowDOMTarget = shadowDOMTarget\n this.#setIsOpen = setIsOpen\n }\n\n mount<T extends HTMLElement>(el: T) {\n if (this.#isMounted) {\n throw new Error('Devtools is already mounted')\n }\n\n const dispose = render(() => {\n const [router] = this.#router\n const [routerState] = this.#routerState\n const [style] = this.#style\n const [className] = this.#className\n const shadowDOMTarget = this.#shadowDOMTarget\n const setIsOpen = this.#setIsOpen\n\n let BaseTanStackRouterDevtoolsPanel\n\n if (this.#Component) {\n BaseTanStackRouterDevtoolsPanel = this.#Component\n } else {\n BaseTanStackRouterDevtoolsPanel = lazy(\n () => import('./BaseTanStackRouterDevtoolsPanel'),\n )\n this.#Component = BaseTanStackRouterDevtoolsPanel\n }\n\n return (\n <ShadowDomTargetContext.Provider value={shadowDOMTarget}>\n <DevtoolsOnCloseContext.Provider\n value={{\n onCloseClick: () => {},\n }}\n >\n <BaseTanStackRouterDevtoolsPanel\n router={router}\n routerState={routerState}\n shadowDOMTarget={shadowDOMTarget}\n setIsOpen={setIsOpen}\n style={style}\n className={className}\n />\n </DevtoolsOnCloseContext.Provider>\n </ShadowDomTargetContext.Provider>\n )\n }, el)\n\n this.#isMounted = true\n this.#dispose = dispose\n }\n\n unmount() {\n if (!this.#isMounted) {\n throw new Error('Devtools is not mounted')\n }\n this.#dispose?.()\n this.#isMounted = false\n }\n\n setRouter(router: AnyRouter) {\n this.#router[1](router)\n }\n\n setRouterState(routerState: any) {\n this.#routerState[1](routerState)\n }\n\n setStyle(style: any) {\n this.#style[1](style)\n }\n\n setClassName(className: any) {\n this.#className[1](className)\n }\n\n setOptions(options: Partial<TanStackRouterDevtoolsPanelCoreOptions>) {\n if (options.shadowDOMTarget !== undefined) {\n this.#shadowDOMTarget = options.shadowDOMTarget\n }\n if (options.router !== undefined) {\n this.setRouter(options.router)\n }\n if (options.routerState !== undefined) {\n this.setRouterState(options.routerState)\n }\n\n if (options.style !== undefined) {\n this.setStyle(options.style)\n }\n\n if (options.className !== undefined) {\n this.setClassName(options.className)\n }\n }\n}\n\nexport { TanStackRouterDevtoolsPanelCore }\n"],"names":["TanStackRouterDevtoolsPanelCore","constructor","config","router","routerState","shadowDOMTarget","setIsOpen","style","className","createSignal","mount","el","Error","dispose","render","BaseTanStackRouterDevtoolsPanel","lazy","_$createComponent","ShadowDomTargetContext","Provider","value","children","DevtoolsOnCloseContext","onCloseClick","unmount","setRouter","setRouterState","setStyle","setClassName","setOptions","options","undefined"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { useContext, createContext } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.js";
1
+ import { createContext, useContext } from "solid-js";
2
2
  const ShadowDomTargetContext = createContext(
3
3
  void 0
4
4
  );
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sources":["../../src/context.ts"],"sourcesContent":["import { createContext, useContext } from 'solid-js'\n\nexport const ShadowDomTargetContext = createContext<ShadowRoot | undefined>(\n undefined,\n)\n\nexport const DevtoolsOnCloseContext = createContext<\n | {\n onCloseClick: (\n e: MouseEvent & { currentTarget: HTMLButtonElement; target: Element },\n ) => void\n }\n | undefined\n>(undefined)\n\nexport const useDevtoolsOnClose = () => {\n const context = useContext(DevtoolsOnCloseContext)\n if (!context) {\n throw new Error(\n 'useDevtoolsOnClose must be used within a TanStackRouterDevtools component',\n )\n }\n return context\n}\n"],"names":[],"mappings":";AAEO,MAAM,yBAAyB;AAAA,EACpC;AACF;AAEO,MAAM,yBAAyB,cAOpC,MAAS;AAEJ,MAAM,qBAAqB,MAAM;AACtC,QAAM,UAAU,WAAW,sBAAsB;AACjD,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAAA,EAEJ;AACA,SAAO;AACT;"}
@@ -1,5 +1,5 @@
1
- import { template, setAttribute } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/web/dist/web.js";
2
- import { createUniqueId } from "../../../node_modules/.pnpm/solid-js@1.9.5/node_modules/solid-js/dist/solid.js";
1
+ import { template, setAttribute } from "solid-js/web";
2
+ import { createUniqueId } from "solid-js";
3
3
  var _tmpl$ = /* @__PURE__ */ template(`<svg xmlns=http://www.w3.org/2000/svg enable-background="new 0 0 634 633"viewBox="0 0 634 633"><g transform=translate(1)><linearGradient x1=-641.486 x2=-641.486 y1=856.648 y2=855.931 gradientTransform="matrix(633 0 0 -633 406377 542258)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#6bdaff></stop><stop offset=0.319 stop-color=#f9ffb5></stop><stop offset=0.706 stop-color=#ffa770></stop><stop offset=1 stop-color=#ff7373></stop></linearGradient><circle cx=316.5 cy=316.5 r=316.5 fill-rule=evenodd clip-rule=evenodd></circle><defs><filter width=454 height=396.9 x=-137.5 y=412 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=454 height=396.9 x=-137.5 y=412 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><ellipse cx=89.5 cy=610.5 fill=#015064 fill-rule=evenodd stroke=#00CFE2 stroke-width=25 clip-rule=evenodd rx=214.5 ry=186></ellipse><defs><filter width=454 height=396.9 x=316.5 y=412 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=454 height=396.9 x=316.5 y=412 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><ellipse cx=543.5 cy=610.5 fill=#015064 fill-rule=evenodd stroke=#00CFE2 stroke-width=25 clip-rule=evenodd rx=214.5 ry=186></ellipse><defs><filter width=454 height=396.9 x=-137.5 y=450 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=454 height=396.9 x=-137.5 y=450 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><ellipse cx=89.5 cy=648.5 fill=#015064 fill-rule=evenodd stroke=#00A8B8 stroke-width=25 clip-rule=evenodd rx=214.5 ry=186></ellipse><defs><filter width=454 height=396.9 x=316.5 y=450 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=454 height=396.9 x=316.5 y=450 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><ellipse cx=543.5 cy=648.5 fill=#015064 fill-rule=evenodd stroke=#00A8B8 stroke-width=25 clip-rule=evenodd rx=214.5 ry=186></ellipse><defs><filter width=454 height=396.9 x=-137.5 y=486 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=454 height=396.9 x=-137.5 y=486 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><ellipse cx=89.5 cy=684.5 fill=#015064 fill-rule=evenodd stroke=#007782 stroke-width=25 clip-rule=evenodd rx=214.5 ry=186></ellipse><defs><filter width=454 height=396.9 x=316.5 y=486 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=454 height=396.9 x=316.5 y=486 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><ellipse cx=543.5 cy=684.5 fill=#015064 fill-rule=evenodd stroke=#007782 stroke-width=25 clip-rule=evenodd rx=214.5 ry=186></ellipse><defs><filter width=176.9 height=129.3 x=272.2 y=308 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=176.9 height=129.3 x=272.2 y=308 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><g><path fill=none stroke=#000 stroke-linecap=round stroke-linejoin=bevel stroke-width=11 d="M436 403.2l-5 28.6m-140-90.3l-10.9 62m52.8-19.4l-4.3 27.1"></path><linearGradient x1=-645.656 x2=-646.499 y1=854.878 y2=854.788 gradientTransform="matrix(-184.159 -32.4722 11.4608 -64.9973 -128419.844 34938.836)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ee2700></stop><stop offset=1 stop-color=#ff008e></stop></linearGradient><path fill-rule=evenodd d="M344.1 363l97.7 17.2c5.8 2.1 8.2 6.2 7.1 12.1-1 5.9-4.7 9.2-11 9.9l-106-18.7-57.5-59.2c-3.2-4.8-2.9-9.1.8-12.8 3.7-3.7 8.3-4.4 13.7-2.1l55.2 53.6z"clip-rule=evenodd></path><path fill=#D8D8D8 fill-rule=evenodd stroke=#FFF stroke-linecap=round stroke-linejoin=bevel stroke-width=7 d="M428.3 384.5l.9-6.5m-33.9 1.5l.9-6.5m-34 .5l.9-6.1m-38.9-16.1l4.2-3.9m-25.2-16.1l4.2-3.9"clip-rule=evenodd></path></g><defs><filter width=280.6 height=317.4 x=73.2 y=113.9 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=280.6 height=317.4 x=73.2 y=113.9 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><g><linearGradient x1=-646.8 x2=-646.8 y1=854.844 y2=853.844 gradientTransform="matrix(-100.1751 48.8587 -97.9753 -200.879 19124.773 203538.61)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#a17500></stop><stop offset=1 stop-color=#5d2100></stop></linearGradient><path fill-rule=evenodd d="M192.3 203c8.1 37.3 14 73.6 17.8 109.1 3.8 35.4 2.8 75.2-2.9 119.2l61.2-16.7c-15.6-59-25.2-97.9-28.6-116.6-3.4-18.7-10.8-51.8-22.2-99.6l-25.3 4.6"clip-rule=evenodd></path><linearGradient x1=-635.467 x2=-635.467 y1=852.115 y2=851.115 gradientTransform="matrix(92.6873 4.8575 2.0257 -38.6535 57323.695 36176.047)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#2f8a00></stop><stop offset=1 stop-color=#90ff57></stop></linearGradient><path fill-rule=evenodd stroke=#2F8A00 stroke-width=13 d="M195 183.9s-12.6-22.1-36.5-29.9c-15.9-5.2-34.4-1.5-55.5 11.1 15.9 14.3 29.5 22.6 40.7 24.9 16.8 3.6 51.3-6.1 51.3-6.1z"clip-rule=evenodd></path><linearGradient x1=-636.573 x2=-636.573 y1=855.444 y2=854.444 gradientTransform="matrix(109.9945 5.7646 6.3597 -121.3507 64719.133 107659.336)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#2f8a00></stop><stop offset=1 stop-color=#90ff57></stop></linearGradient><path fill-rule=evenodd stroke=#2F8A00 stroke-width=13 d="M194.9 184.5s-47.5-8.5-83.2 15.7c-23.8 16.2-34.3 49.3-31.6 99.3 30.3-27.8 52.1-48.5 65.2-61.9 19.8-20 49.6-53.1 49.6-53.1z"clip-rule=evenodd></path><linearGradient x1=-632.145 x2=-632.145 y1=854.174 y2=853.174 gradientTransform="matrix(62.9558 3.2994 3.5021 -66.8246 37035.367 59284.227)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#2f8a00></stop><stop offset=1 stop-color=#90ff57></stop></linearGradient><path fill-rule=evenodd stroke=#2F8A00 stroke-width=13 d="M195 183.9c-.8-21.9 6-38 20.6-48.2 14.6-10.2 29.8-15.3 45.5-15.3-6.1 21.4-14.5 35.8-25.2 43.4-10.7 7.5-24.4 14.2-40.9 20.1z"clip-rule=evenodd></path><linearGradient x1=-638.224 x2=-638.224 y1=853.801 y2=852.801 gradientTransform="matrix(152.4666 7.9904 3.0934 -59.0251 94939.86 55646.855)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#2f8a00></stop><stop offset=1 stop-color=#90ff57></stop></linearGradient><path fill-rule=evenodd stroke=#2F8A00 stroke-width=13 d="M194.9 184.5c31.9-30 64.1-39.7 96.7-29 32.6 10.7 50.8 30.4 54.6 59.1-35.2-5.5-60.4-9.6-75.8-12.1-15.3-2.6-40.5-8.6-75.5-18z"clip-rule=evenodd></path><linearGradient x1=-637.723 x2=-637.723 y1=855.103 y2=854.103 gradientTransform="matrix(136.467 7.1519 5.2165 -99.5377 82830.875 89859.578)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#2f8a00></stop><stop offset=1 stop-color=#90ff57></stop></linearGradient><path fill-rule=evenodd stroke=#2F8A00 stroke-width=13 d="M194.9 184.5c35.8-7.6 65.6-.2 89.2 22 23.6 22.2 37.7 49 42.3 80.3-39.8-9.7-68.3-23.8-85.5-42.4-17.2-18.5-32.5-38.5-46-59.9z"clip-rule=evenodd></path><linearGradient x1=-631.79 x2=-631.79 y1=855.872 y2=854.872 gradientTransform="matrix(60.8683 3.19 8.7771 -167.4773 31110.818 145537.61)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#2f8a00></stop><stop offset=1 stop-color=#90ff57></stop></linearGradient><path fill-rule=evenodd stroke=#2F8A00 stroke-width=13 d="M194.9 184.5c-33.6 13.8-53.6 35.7-60.1 65.6-6.5 29.9-3.6 63.1 8.7 99.6 27.4-40.3 43.2-69.6 47.4-88 4.2-18.3 5.5-44.1 4-77.2z"clip-rule=evenodd></path><path fill=none stroke=#2F8A00 stroke-linecap=round stroke-width=8 d="M196.5 182.3c-14.8 21.6-25.1 41.4-30.8 59.4-5.7 18-9.4 33-11.1 45.1"></path><path fill=none stroke=#2F8A00 stroke-linecap=round stroke-width=8 d="M194.8 185.7c-24.4 1.7-43.8 9-58.1 21.8-14.3 12.8-24.7 25.4-31.3 37.8m99.1-68.9c29.7-6.7 52-8.4 67-5 15 3.4 26.9 8.7 35.8 15.9m-110.8-5.9c20.3 9.9 38.2 20.5 53.9 31.9 15.7 11.4 27.4 22.1 35.1 32"></path></g><defs><filter width=532 height=633 x=50.5 y=399 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=532 height=633 x=50.5 y=399 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><linearGradient x1=-641.104 x2=-641.278 y1=856.577 y2=856.183 gradientTransform="matrix(532 0 0 -633 341484.5 542657)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#fff400></stop><stop offset=1 stop-color=#3c8700></stop></linearGradient><ellipse cx=316.5 cy=715.5 fill-rule=evenodd clip-rule=evenodd rx=266 ry=316.5></ellipse><defs><filter width=288 height=283 x=391 y=-24 filterUnits=userSpaceOnUse><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix></filter></defs><mask width=288 height=283 x=391 y=-24 maskUnits=userSpaceOnUse><g><circle cx=316.5 cy=316.5 r=316.5 fill=#FFF fill-rule=evenodd clip-rule=evenodd></circle></g></mask><g><g transform="translate(397 -24)"><linearGradient x1=-1036.672 x2=-1036.672 y1=880.018 y2=879.018 gradientTransform="matrix(227 0 0 -227 235493 199764)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ffdf00></stop><stop offset=1 stop-color=#ff9d00></stop></linearGradient><circle cx=168.5 cy=113.5 r=113.5 fill-rule=evenodd clip-rule=evenodd></circle><linearGradient x1=-1017.329 x2=-1018.602 y1=658.003 y2=657.998 gradientTransform="matrix(30 0 0 -1 30558 771)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ffa400></stop><stop offset=1 stop-color=#ff5e00></stop></linearGradient><path fill=none stroke-linecap=round stroke-linejoin=bevel stroke-width=12 d="M30 113H0"></path><linearGradient x1=-1014.501 x2=-1015.774 y1=839.985 y2=839.935 gradientTransform="matrix(26.5 0 0 -5.5 26925 4696.5)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ffa400></stop><stop offset=1 stop-color=#ff5e00></stop></linearGradient><path fill=none stroke-linecap=round stroke-linejoin=bevel stroke-width=12 d="M33.5 79.5L7 74"></path><linearGradient x1=-1016.59 x2=-1017.862 y1=852.671 y2=852.595 gradientTransform="matrix(29 0 0 -8 29523 6971)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ffa400></stop><stop offset=1 stop-color=#ff5e00></stop></linearGradient><path fill=none stroke-linecap=round stroke-linejoin=bevel stroke-width=12 d="M34 146l-29 8"></path><linearGradient x1=-1011.984 x2=-1013.257 y1=863.523 y2=863.229 gradientTransform="matrix(24 0 0 -13 24339 11407)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ffa400></stop><stop offset=1 stop-color=#ff5e00></stop></linearGradient><path fill=none stroke-linecap=round stroke-linejoin=bevel stroke-width=12 d="M45 177l-24 13"></path><linearGradient x1=-1006.673 x2=-1007.946 y1=869.279 y2=868.376 gradientTransform="matrix(20 0 0 -19 20205 16720)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ffa400></stop><stop offset=1 stop-color=#ff5e00></stop></linearGradient><path fill=none stroke-linecap=round stroke-linejoin=bevel stroke-width=12 d="M67 204l-20 19"></path><linearGradient x1=-992.85 x2=-993.317 y1=871.258 y2=870.258 gradientTransform="matrix(13.8339 0 0 -22.8467 13825.796 20131.938)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ffa400></stop><stop offset=1 stop-color=#ff5e00></stop></linearGradient><path fill=none stroke-linecap=round stroke-linejoin=bevel stroke-width=12 d="M94.4 227l-13.8 22.8"></path><linearGradient x1=-953.835 x2=-953.965 y1=871.9 y2=870.9 gradientTransform="matrix(7.5 0 0 -24.5 7278 21605)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ffa400></stop><stop offset=1 stop-color=#ff5e00></stop></linearGradient><path fill=none stroke-linecap=round stroke-linejoin=bevel stroke-width=12 d="M127.5 243.5L120 268"></path><linearGradient x1=244.504 x2=244.496 y1=871.898 y2=870.898 gradientTransform="matrix(.5 0 0 -24.5 45.5 21614)"gradientUnits=userSpaceOnUse><stop offset=0 stop-color=#ffa400></stop><stop offset=1 stop-color=#ff5e00></stop></linearGradient><path fill=none stroke-linecap=round stroke-linejoin=bevel stroke-width=12 d="M167.5 252.5l.5 24.5">`);
4
4
  function TanStackLogo() {
5
5
  const id = createUniqueId();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logo.js","sources":["../../src/logo.tsx"],"sourcesContent":["import { createUniqueId } from 'solid-js'\n\nexport function TanStackLogo() {\n const id = createUniqueId()\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n enable-background=\"new 0 0 634 633\"\n viewBox=\"0 0 634 633\"\n >\n <g transform=\"translate(1)\">\n <linearGradient\n id={`a-${id}`}\n x1=\"-641.486\"\n x2=\"-641.486\"\n y1=\"856.648\"\n y2=\"855.931\"\n gradientTransform=\"matrix(633 0 0 -633 406377 542258)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#6bdaff\"></stop>\n <stop offset=\"0.319\" stop-color=\"#f9ffb5\"></stop>\n <stop offset=\"0.706\" stop-color=\"#ffa770\"></stop>\n <stop offset=\"1\" stop-color=\"#ff7373\"></stop>\n </linearGradient>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill={`url(#a-${id})`}\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n <defs>\n <filter\n id={`b-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"-137.5\"\n y=\"412\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`c-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"-137.5\"\n y=\"412\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#b-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <ellipse\n cx=\"89.5\"\n cy=\"610.5\"\n fill=\"#015064\"\n fill-rule=\"evenodd\"\n stroke=\"#00CFE2\"\n stroke-width=\"25\"\n clip-rule=\"evenodd\"\n mask={`url(#c-${id})`}\n rx=\"214.5\"\n ry=\"186\"\n ></ellipse>\n <defs>\n <filter\n id={`d-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"316.5\"\n y=\"412\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`e-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"316.5\"\n y=\"412\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#d-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <ellipse\n cx=\"543.5\"\n cy=\"610.5\"\n fill=\"#015064\"\n fill-rule=\"evenodd\"\n stroke=\"#00CFE2\"\n stroke-width=\"25\"\n clip-rule=\"evenodd\"\n mask={`url(#e-${id})`}\n rx=\"214.5\"\n ry=\"186\"\n ></ellipse>\n <defs>\n <filter\n id={`f-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"-137.5\"\n y=\"450\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`g-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"-137.5\"\n y=\"450\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#f-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <ellipse\n cx=\"89.5\"\n cy=\"648.5\"\n fill=\"#015064\"\n fill-rule=\"evenodd\"\n stroke=\"#00A8B8\"\n stroke-width=\"25\"\n clip-rule=\"evenodd\"\n mask={`url(#g-${id})`}\n rx=\"214.5\"\n ry=\"186\"\n ></ellipse>\n <defs>\n <filter\n id={`h-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"316.5\"\n y=\"450\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`i-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"316.5\"\n y=\"450\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#h-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <ellipse\n cx=\"543.5\"\n cy=\"648.5\"\n fill=\"#015064\"\n fill-rule=\"evenodd\"\n stroke=\"#00A8B8\"\n stroke-width=\"25\"\n clip-rule=\"evenodd\"\n mask={`url(#i-${id})`}\n rx=\"214.5\"\n ry=\"186\"\n ></ellipse>\n <defs>\n <filter\n id={`j-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"-137.5\"\n y=\"486\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`k-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"-137.5\"\n y=\"486\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#j-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <ellipse\n cx=\"89.5\"\n cy=\"684.5\"\n fill=\"#015064\"\n fill-rule=\"evenodd\"\n stroke=\"#007782\"\n stroke-width=\"25\"\n clip-rule=\"evenodd\"\n mask={`url(#k-${id})`}\n rx=\"214.5\"\n ry=\"186\"\n ></ellipse>\n <defs>\n <filter\n id={`l-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"316.5\"\n y=\"486\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`m-${id}`}\n width=\"454\"\n height=\"396.9\"\n x=\"316.5\"\n y=\"486\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#l-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <ellipse\n cx=\"543.5\"\n cy=\"684.5\"\n fill=\"#015064\"\n fill-rule=\"evenodd\"\n stroke=\"#007782\"\n stroke-width=\"25\"\n clip-rule=\"evenodd\"\n mask={`url(#m-${id})`}\n rx=\"214.5\"\n ry=\"186\"\n ></ellipse>\n <defs>\n <filter\n id={`n-${id}`}\n width=\"176.9\"\n height=\"129.3\"\n x=\"272.2\"\n y=\"308\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`o-${id}`}\n width=\"176.9\"\n height=\"129.3\"\n x=\"272.2\"\n y=\"308\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#n-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <g mask={`url(#o-${id})`}>\n <path\n fill=\"none\"\n stroke=\"#000\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"11\"\n d=\"M436 403.2l-5 28.6m-140-90.3l-10.9 62m52.8-19.4l-4.3 27.1\"\n ></path>\n <linearGradient\n id={`p-${id}`}\n x1=\"-645.656\"\n x2=\"-646.499\"\n y1=\"854.878\"\n y2=\"854.788\"\n gradientTransform=\"matrix(-184.159 -32.4722 11.4608 -64.9973 -128419.844 34938.836)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ee2700\"></stop>\n <stop offset=\"1\" stop-color=\"#ff008e\"></stop>\n </linearGradient>\n <path\n fill={`url(#p-${id})`}\n fill-rule=\"evenodd\"\n d=\"M344.1 363l97.7 17.2c5.8 2.1 8.2 6.2 7.1 12.1-1 5.9-4.7 9.2-11 9.9l-106-18.7-57.5-59.2c-3.2-4.8-2.9-9.1.8-12.8 3.7-3.7 8.3-4.4 13.7-2.1l55.2 53.6z\"\n clip-rule=\"evenodd\"\n ></path>\n <path\n fill=\"#D8D8D8\"\n fill-rule=\"evenodd\"\n stroke=\"#FFF\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"7\"\n d=\"M428.3 384.5l.9-6.5m-33.9 1.5l.9-6.5m-34 .5l.9-6.1m-38.9-16.1l4.2-3.9m-25.2-16.1l4.2-3.9\"\n clip-rule=\"evenodd\"\n ></path>\n </g>\n <defs>\n <filter\n id={`q-${id}`}\n width=\"280.6\"\n height=\"317.4\"\n x=\"73.2\"\n y=\"113.9\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`r-${id}`}\n width=\"280.6\"\n height=\"317.4\"\n x=\"73.2\"\n y=\"113.9\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#q-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <g mask={`url(#r-${id})`}>\n <linearGradient\n id={`s-${id}`}\n x1=\"-646.8\"\n x2=\"-646.8\"\n y1=\"854.844\"\n y2=\"853.844\"\n gradientTransform=\"matrix(-100.1751 48.8587 -97.9753 -200.879 19124.773 203538.61)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#a17500\"></stop>\n <stop offset=\"1\" stop-color=\"#5d2100\"></stop>\n </linearGradient>\n <path\n fill={`url(#s-${id})`}\n fill-rule=\"evenodd\"\n d=\"M192.3 203c8.1 37.3 14 73.6 17.8 109.1 3.8 35.4 2.8 75.2-2.9 119.2l61.2-16.7c-15.6-59-25.2-97.9-28.6-116.6-3.4-18.7-10.8-51.8-22.2-99.6l-25.3 4.6\"\n clip-rule=\"evenodd\"\n ></path>\n <linearGradient\n id={`t-${id}`}\n x1=\"-635.467\"\n x2=\"-635.467\"\n y1=\"852.115\"\n y2=\"851.115\"\n gradientTransform=\"matrix(92.6873 4.8575 2.0257 -38.6535 57323.695 36176.047)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#2f8a00\"></stop>\n <stop offset=\"1\" stop-color=\"#90ff57\"></stop>\n </linearGradient>\n <path\n fill={`url(#t-${id})`}\n fill-rule=\"evenodd\"\n stroke=\"#2F8A00\"\n stroke-width=\"13\"\n d=\"M195 183.9s-12.6-22.1-36.5-29.9c-15.9-5.2-34.4-1.5-55.5 11.1 15.9 14.3 29.5 22.6 40.7 24.9 16.8 3.6 51.3-6.1 51.3-6.1z\"\n clip-rule=\"evenodd\"\n ></path>\n <linearGradient\n id={`u-${id}`}\n x1=\"-636.573\"\n x2=\"-636.573\"\n y1=\"855.444\"\n y2=\"854.444\"\n gradientTransform=\"matrix(109.9945 5.7646 6.3597 -121.3507 64719.133 107659.336)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#2f8a00\"></stop>\n <stop offset=\"1\" stop-color=\"#90ff57\"></stop>\n </linearGradient>\n <path\n fill={`url(#u-${id})`}\n fill-rule=\"evenodd\"\n stroke=\"#2F8A00\"\n stroke-width=\"13\"\n d=\"M194.9 184.5s-47.5-8.5-83.2 15.7c-23.8 16.2-34.3 49.3-31.6 99.3 30.3-27.8 52.1-48.5 65.2-61.9 19.8-20 49.6-53.1 49.6-53.1z\"\n clip-rule=\"evenodd\"\n ></path>\n <linearGradient\n id={`v-${id}`}\n x1=\"-632.145\"\n x2=\"-632.145\"\n y1=\"854.174\"\n y2=\"853.174\"\n gradientTransform=\"matrix(62.9558 3.2994 3.5021 -66.8246 37035.367 59284.227)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#2f8a00\"></stop>\n <stop offset=\"1\" stop-color=\"#90ff57\"></stop>\n </linearGradient>\n <path\n fill={`url(#v-${id})`}\n fill-rule=\"evenodd\"\n stroke=\"#2F8A00\"\n stroke-width=\"13\"\n d=\"M195 183.9c-.8-21.9 6-38 20.6-48.2 14.6-10.2 29.8-15.3 45.5-15.3-6.1 21.4-14.5 35.8-25.2 43.4-10.7 7.5-24.4 14.2-40.9 20.1z\"\n clip-rule=\"evenodd\"\n ></path>\n <linearGradient\n id={`w-${id}`}\n x1=\"-638.224\"\n x2=\"-638.224\"\n y1=\"853.801\"\n y2=\"852.801\"\n gradientTransform=\"matrix(152.4666 7.9904 3.0934 -59.0251 94939.86 55646.855)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#2f8a00\"></stop>\n <stop offset=\"1\" stop-color=\"#90ff57\"></stop>\n </linearGradient>\n <path\n fill={`url(#w-${id})`}\n fill-rule=\"evenodd\"\n stroke=\"#2F8A00\"\n stroke-width=\"13\"\n d=\"M194.9 184.5c31.9-30 64.1-39.7 96.7-29 32.6 10.7 50.8 30.4 54.6 59.1-35.2-5.5-60.4-9.6-75.8-12.1-15.3-2.6-40.5-8.6-75.5-18z\"\n clip-rule=\"evenodd\"\n ></path>\n <linearGradient\n id={`x-${id}`}\n x1=\"-637.723\"\n x2=\"-637.723\"\n y1=\"855.103\"\n y2=\"854.103\"\n gradientTransform=\"matrix(136.467 7.1519 5.2165 -99.5377 82830.875 89859.578)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#2f8a00\"></stop>\n <stop offset=\"1\" stop-color=\"#90ff57\"></stop>\n </linearGradient>\n <path\n fill={`url(#x-${id})`}\n fill-rule=\"evenodd\"\n stroke=\"#2F8A00\"\n stroke-width=\"13\"\n d=\"M194.9 184.5c35.8-7.6 65.6-.2 89.2 22 23.6 22.2 37.7 49 42.3 80.3-39.8-9.7-68.3-23.8-85.5-42.4-17.2-18.5-32.5-38.5-46-59.9z\"\n clip-rule=\"evenodd\"\n ></path>\n <linearGradient\n id={`y-${id}`}\n x1=\"-631.79\"\n x2=\"-631.79\"\n y1=\"855.872\"\n y2=\"854.872\"\n gradientTransform=\"matrix(60.8683 3.19 8.7771 -167.4773 31110.818 145537.61)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#2f8a00\"></stop>\n <stop offset=\"1\" stop-color=\"#90ff57\"></stop>\n </linearGradient>\n <path\n fill={`url(#y-${id})`}\n fill-rule=\"evenodd\"\n stroke=\"#2F8A00\"\n stroke-width=\"13\"\n d=\"M194.9 184.5c-33.6 13.8-53.6 35.7-60.1 65.6-6.5 29.9-3.6 63.1 8.7 99.6 27.4-40.3 43.2-69.6 47.4-88 4.2-18.3 5.5-44.1 4-77.2z\"\n clip-rule=\"evenodd\"\n ></path>\n <path\n fill=\"none\"\n stroke=\"#2F8A00\"\n stroke-linecap=\"round\"\n stroke-width=\"8\"\n d=\"M196.5 182.3c-14.8 21.6-25.1 41.4-30.8 59.4-5.7 18-9.4 33-11.1 45.1\"\n ></path>\n <path\n fill=\"none\"\n stroke=\"#2F8A00\"\n stroke-linecap=\"round\"\n stroke-width=\"8\"\n d=\"M194.8 185.7c-24.4 1.7-43.8 9-58.1 21.8-14.3 12.8-24.7 25.4-31.3 37.8m99.1-68.9c29.7-6.7 52-8.4 67-5 15 3.4 26.9 8.7 35.8 15.9m-110.8-5.9c20.3 9.9 38.2 20.5 53.9 31.9 15.7 11.4 27.4 22.1 35.1 32\"\n ></path>\n </g>\n <defs>\n <filter\n id={`z-${id}`}\n width=\"532\"\n height=\"633\"\n x=\"50.5\"\n y=\"399\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`A-${id}`}\n width=\"532\"\n height=\"633\"\n x=\"50.5\"\n y=\"399\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#z-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <linearGradient\n id={`B-${id}`}\n x1=\"-641.104\"\n x2=\"-641.278\"\n y1=\"856.577\"\n y2=\"856.183\"\n gradientTransform=\"matrix(532 0 0 -633 341484.5 542657)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#fff400\"></stop>\n <stop offset=\"1\" stop-color=\"#3c8700\"></stop>\n </linearGradient>\n <ellipse\n cx=\"316.5\"\n cy=\"715.5\"\n fill={`url(#B-${id})`}\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n mask={`url(#A-${id})`}\n rx=\"266\"\n ry=\"316.5\"\n ></ellipse>\n <defs>\n <filter\n id={`C-${id}`}\n width=\"288\"\n height=\"283\"\n x=\"391\"\n y=\"-24\"\n filterUnits=\"userSpaceOnUse\"\n >\n <feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\"></feColorMatrix>\n </filter>\n </defs>\n <mask\n id={`D-${id}`}\n width=\"288\"\n height=\"283\"\n x=\"391\"\n y=\"-24\"\n maskUnits=\"userSpaceOnUse\"\n >\n <g filter={`url(#C-${id})`}>\n <circle\n cx=\"316.5\"\n cy=\"316.5\"\n r=\"316.5\"\n fill=\"#FFF\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n </g>\n </mask>\n <g mask={`url(#D-${id})`}>\n <g transform=\"translate(397 -24)\">\n <linearGradient\n id={`E-${id}`}\n x1=\"-1036.672\"\n x2=\"-1036.672\"\n y1=\"880.018\"\n y2=\"879.018\"\n gradientTransform=\"matrix(227 0 0 -227 235493 199764)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ffdf00\"></stop>\n <stop offset=\"1\" stop-color=\"#ff9d00\"></stop>\n </linearGradient>\n <circle\n cx=\"168.5\"\n cy=\"113.5\"\n r=\"113.5\"\n fill={`url(#E-${id})`}\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n ></circle>\n <linearGradient\n id={`F-${id}`}\n x1=\"-1017.329\"\n x2=\"-1018.602\"\n y1=\"658.003\"\n y2=\"657.998\"\n gradientTransform=\"matrix(30 0 0 -1 30558 771)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ffa400\"></stop>\n <stop offset=\"1\" stop-color=\"#ff5e00\"></stop>\n </linearGradient>\n <path\n fill=\"none\"\n stroke={`url(#F-${id})`}\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"12\"\n d=\"M30 113H0\"\n ></path>\n <linearGradient\n id={`G-${id}`}\n x1=\"-1014.501\"\n x2=\"-1015.774\"\n y1=\"839.985\"\n y2=\"839.935\"\n gradientTransform=\"matrix(26.5 0 0 -5.5 26925 4696.5)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ffa400\"></stop>\n <stop offset=\"1\" stop-color=\"#ff5e00\"></stop>\n </linearGradient>\n <path\n fill=\"none\"\n stroke={`url(#G-${id})`}\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"12\"\n d=\"M33.5 79.5L7 74\"\n ></path>\n <linearGradient\n id={`H-${id}`}\n x1=\"-1016.59\"\n x2=\"-1017.862\"\n y1=\"852.671\"\n y2=\"852.595\"\n gradientTransform=\"matrix(29 0 0 -8 29523 6971)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ffa400\"></stop>\n <stop offset=\"1\" stop-color=\"#ff5e00\"></stop>\n </linearGradient>\n <path\n fill=\"none\"\n stroke={`url(#H-${id})`}\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"12\"\n d=\"M34 146l-29 8\"\n ></path>\n <linearGradient\n id={`I-${id}`}\n x1=\"-1011.984\"\n x2=\"-1013.257\"\n y1=\"863.523\"\n y2=\"863.229\"\n gradientTransform=\"matrix(24 0 0 -13 24339 11407)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ffa400\"></stop>\n <stop offset=\"1\" stop-color=\"#ff5e00\"></stop>\n </linearGradient>\n <path\n fill=\"none\"\n stroke={`url(#I-${id})`}\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"12\"\n d=\"M45 177l-24 13\"\n ></path>\n <linearGradient\n id={`J-${id}`}\n x1=\"-1006.673\"\n x2=\"-1007.946\"\n y1=\"869.279\"\n y2=\"868.376\"\n gradientTransform=\"matrix(20 0 0 -19 20205 16720)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ffa400\"></stop>\n <stop offset=\"1\" stop-color=\"#ff5e00\"></stop>\n </linearGradient>\n <path\n fill=\"none\"\n stroke={`url(#J-${id})`}\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"12\"\n d=\"M67 204l-20 19\"\n ></path>\n <linearGradient\n id={`K-${id}`}\n x1=\"-992.85\"\n x2=\"-993.317\"\n y1=\"871.258\"\n y2=\"870.258\"\n gradientTransform=\"matrix(13.8339 0 0 -22.8467 13825.796 20131.938)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ffa400\"></stop>\n <stop offset=\"1\" stop-color=\"#ff5e00\"></stop>\n </linearGradient>\n <path\n fill=\"none\"\n stroke={`url(#K-${id})`}\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"12\"\n d=\"M94.4 227l-13.8 22.8\"\n ></path>\n <linearGradient\n id={`L-${id}`}\n x1=\"-953.835\"\n x2=\"-953.965\"\n y1=\"871.9\"\n y2=\"870.9\"\n gradientTransform=\"matrix(7.5 0 0 -24.5 7278 21605)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ffa400\"></stop>\n <stop offset=\"1\" stop-color=\"#ff5e00\"></stop>\n </linearGradient>\n <path\n fill=\"none\"\n stroke={`url(#L-${id})`}\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"12\"\n d=\"M127.5 243.5L120 268\"\n ></path>\n <linearGradient\n id={`M-${id}`}\n x1=\"244.504\"\n x2=\"244.496\"\n y1=\"871.898\"\n y2=\"870.898\"\n gradientTransform=\"matrix(.5 0 0 -24.5 45.5 21614)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stop-color=\"#ffa400\"></stop>\n <stop offset=\"1\" stop-color=\"#ff5e00\"></stop>\n </linearGradient>\n <path\n fill=\"none\"\n stroke={`url(#M-${id})`}\n stroke-linecap=\"round\"\n stroke-linejoin=\"bevel\"\n stroke-width=\"12\"\n d=\"M167.5 252.5l.5 24.5\"\n ></path>\n </g>\n </g>\n </g>\n </svg>\n )\n}\n"],"names":["TanStackLogo","id","createUniqueId","_el$","_tmpl$","_el$2","firstChild","_el$3","_el$4","nextSibling","_el$5","_el$6","_el$7","_el$8","_el$9","_el$0","_el$1","_el$10","_el$11","_el$12","_el$13","_el$14","_el$15","_el$16","_el$17","_el$18","_el$19","_el$20","_el$21","_el$22","_el$23","_el$24","_el$25","_el$26","_el$27","_el$28","_el$29","_el$30","_el$31","_el$32","_el$33","_el$34","_el$35","_el$36","_el$37","_el$38","_el$39","_el$40","_el$41","_el$42","_el$43","_el$44","_el$45","_el$46","_el$47","_el$48","_el$49","_el$50","_el$51","_el$52","_el$53","_el$54","_el$55","_el$56","_el$57","_el$58","_el$59","_el$60","_el$61","_el$62","_el$63","_el$64","_el$65","_el$66","_el$67","_el$68","_el$69","_el$70","_el$71","_el$72","_el$73","_el$74","_el$75","_el$76","_el$77","_el$78","_el$79","_el$80","_el$81","_el$82","_el$83","_el$84","_el$85","_el$86","_el$87","_el$88","_el$89","_$setAttribute"],"mappings":"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"}