UNPKG

@tanstack/solid-router

Version:

Modern and scalable routing for Solid applications

1 lines 2.48 kB
{"version":3,"file":"scroll-restoration.cjs","names":["defaultGetScrollRestorationKey","escapeHtml","restoreScroll","storageKey","isServer","useRouter","ScriptOnce","ScrollRestoration","router","isScrollRestoring","options","scrollRestoration","shouldRestore","location","latestLocation","getKey","getScrollRestorationKey","userKey","resolvedKey","undefined","restoreScrollOptions","Parameters","shouldScrollRestoration","key","_$createComponent","children","toString","JSON","stringify"],"sources":["../../src/scroll-restoration.tsx"],"sourcesContent":["import {\n defaultGetScrollRestorationKey,\n escapeHtml,\n restoreScroll,\n storageKey,\n} from '@tanstack/router-core'\nimport { isServer } from '@tanstack/router-core/isServer'\nimport { useRouter } from './useRouter'\nimport { ScriptOnce } from './ScriptOnce'\n\nexport function ScrollRestoration() {\n const router = useRouter()\n if (!router.isScrollRestoring || !(isServer ?? router.isServer)) {\n return null\n }\n if (typeof router.options.scrollRestoration === 'function') {\n const shouldRestore = router.options.scrollRestoration({\n location: router.latestLocation,\n })\n if (!shouldRestore) {\n return null\n }\n }\n const getKey =\n router.options.getScrollRestorationKey || defaultGetScrollRestorationKey\n const userKey = getKey(router.latestLocation)\n const resolvedKey =\n userKey !== defaultGetScrollRestorationKey(router.latestLocation)\n ? userKey\n : undefined\n\n const restoreScrollOptions: Parameters<typeof restoreScroll>[0] = {\n storageKey,\n shouldScrollRestoration: true,\n }\n if (resolvedKey) {\n restoreScrollOptions.key = resolvedKey\n }\n\n return (\n <ScriptOnce\n children={`(${restoreScroll.toString()})(${escapeHtml(JSON.stringify(restoreScrollOptions))})`}\n />\n )\n}\n"],"mappings":";;;;;;;AAUA,SAAgBO,oBAAoB;CAClC,MAAMC,SAASH,kBAAAA,WAAW;AAC1B,KAAI,CAACG,OAAOC,qBAAqB,EAAEL,+BAAAA,YAAYI,OAAOJ,UACpD,QAAO;AAET,KAAI,OAAOI,OAAOE,QAAQC,sBAAsB;MAI1C,CAHkBH,OAAOE,QAAQC,kBAAkB,EACrDE,UAAUL,OAAOM,gBAClB,CAAC,CAEA,QAAO;;CAKX,MAAMG,WADJT,OAAOE,QAAQM,2BAA2BhB,sBAAAA,gCACrBQ,OAAOM,eAAe;CAC7C,MAAMI,cACJD,aAAAA,GAAAA,sBAAAA,gCAA2CT,OAAOM,eAAe,GAC7DG,UACAE,KAAAA;CAEN,MAAMC,uBAA4D;EAChEjB,YAAAA,sBAAAA;EACAmB,yBAAyB;EAC1B;AACD,KAAIJ,YACFE,sBAAqBG,MAAML;AAG7B,SAAA,GAAA,aAAA,iBACGZ,mBAAAA,YAAU,EAAA,IACTmB,WAAQ;AAAA,SAAE,IAAIvB,sBAAAA,cAAcwB,UAAU,CAAA,KAAA,GAAA,sBAAA,YAAgBC,KAAKC,UAAUR,qBAAqB,CAAC,CAAA;IAAG,CAAA"}