/opt/canhelp/node_modules/next/dist/esm/client/components
NameSizeModeActions
builtin/-0755rm
errors/-0755rm
http-access-fallback/-0755rm
metadata/-0755rm
router-reducer/-0755rm
segment-cache-impl/-0755rm
styles/-0755rm
app-router-announcer.js27570644editdlrm
app-router-announcer.js.map46600644editdlrm
app-router-headers.js16750644editdlrm
app-router-headers.js.map30140644editdlrm
app-router-instance.js130370644editdlrm
app-router-instance.js.map211310644editdlrm
app-router.js230670644editdlrm
app-router.js.map350120644editdlrm
bailout-to-client-rendering.js12360644editdlrm
bailout-to-client-rendering.js.map17060644editdlrm
bfcache.js45680644editdlrm
bfcache.js.map63940644editdlrm
client-page.js25190644editdlrm
client-page.js.map39190644editdlrm
client-segment.js21060644editdlrm
client-segment.js.map30990644editdlrm
dev-root-http-access-fallback-boundary.js9010644editdlrm
dev-root-http-access-fallback-boundary.js.map12920644editdlrm
error-boundary.js47300644editdlrm
error-boundary.js.map74540644editdlrm
forbidden.js15430644editdlrm
forbidden.js.map19880644editdlrm
handle-isr-error.js7090644editdlrm
handle-isr-error.js.map13160644editdlrm
hooks-server-context.js5340644editdlrm
hooks-server-context.js.map11330644editdlrm
is-next-router-error.js4810644editdlrm
is-next-router-error.js.map9220644editdlrm
layout-router.js264060644editdlrm
layout-router.js.map378500644editdlrm
links.js125330644editdlrm
links.js.map210600644editdlrm
match-segments.js5240644editdlrm
match-segments.js.map10340644editdlrm
nav-failure-handler.js16140644editdlrm
nav-failure-handler.js.map28270644editdlrm
navigation-untracked.js23970644editdlrm
navigation-untracked.js.map33740644editdlrm
navigation.js91180644editdlrm
navigation.js.map128070644editdlrm
navigation.react-server.js19440644editdlrm
navigation.react-server.js.map27680644editdlrm
noop-head.js940644editdlrm
noop-head.js.map2330644editdlrm
not-found.js13560644editdlrm
not-found.js.map17520644editdlrm
promise-queue.js37120644editdlrm
promise-queue.js.map35910644editdlrm
redirect-boundary.js22220644editdlrm
redirect-boundary.js.map39400644editdlrm
redirect-error.js11230644editdlrm
redirect-error.js.map21030644editdlrm
redirect-status-code.js4250644editdlrm
redirect-status-code.js.map3190644editdlrm
redirect.js38220644editdlrm
redirect.js.map58370644editdlrm
render-from-template-context.js4560644editdlrm
render-from-template-context.js.map6670644editdlrm
segment-cache.js60040644editdlrm
segment-cache.js.map88230644editdlrm
static-generation-bailout.js4660644editdlrm
static-generation-bailout.js.map8770644editdlrm
unauthorized.js15700644editdlrm
unauthorized.js.map20200644editdlrm
unrecognized-action-error.js9230644editdlrm
unrecognized-action-error.js.map14780644editdlrm
unresolved-thenable.js2270644editdlrm
unresolved-thenable.js.map4410644editdlrm
unstable-rethrow.browser.js4330644editdlrm
unstable-rethrow.browser.js.map8410644editdlrm
unstable-rethrow.js7120644editdlrm
unstable-rethrow.js.map11120644editdlrm
unstable-rethrow.server.js8540644editdlrm
unstable-rethrow.server.js.map15660644editdlrm
use-action-queue.js19210644editdlrm
use-action-queue.js.map32730644editdlrm
Edit: /opt/canhelp/node_modules/next/dist/esm/client/components/app-router-announcer.js.map (4660B)
{"version":3,"sources":["../../../src/client/components/app-router-announcer.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\nimport { createPortal } from 'react-dom'\nimport type { FlightRouterState } from '../../server/app-render/types'\n\nconst ANNOUNCER_TYPE = 'next-route-announcer'\nconst ANNOUNCER_ID = '__next-route-announcer__'\n\nfunction getAnnouncerNode() {\n const existingAnnouncer = document.getElementsByName(ANNOUNCER_TYPE)[0]\n if (existingAnnouncer?.shadowRoot?.childNodes[0]) {\n return existingAnnouncer.shadowRoot.childNodes[0] as HTMLElement\n } else {\n const container = document.createElement(ANNOUNCER_TYPE)\n container.style.cssText = 'position:absolute'\n const announcer = document.createElement('div')\n announcer.ariaLive = 'assertive'\n announcer.id = ANNOUNCER_ID\n announcer.role = 'alert'\n announcer.style.cssText =\n 'position:absolute;border:0;height:1px;margin:-1px;padding:0;width:1px;clip:rect(0 0 0 0);overflow:hidden;white-space:nowrap;word-wrap:normal'\n\n // Use shadow DOM here to avoid any potential CSS bleed\n const shadow = container.attachShadow({ mode: 'open' })\n shadow.appendChild(announcer)\n document.body.appendChild(container)\n return announcer\n }\n}\n\nexport function AppRouterAnnouncer({ tree }: { tree: FlightRouterState }) {\n const [portalNode, setPortalNode] = useState(null)\n\n useEffect(() => {\n const announcer = getAnnouncerNode()\n setPortalNode(announcer)\n return () => {\n const container = document.getElementsByTagName(ANNOUNCER_TYPE)[0]\n if (container?.isConnected) {\n document.body.removeChild(container)\n }\n }\n }, [])\n\n const [routeAnnouncement, setRouteAnnouncement] = useState('')\n const previousTitle = useRef(undefined)\n\n useEffect(() => {\n let currentTitle = ''\n if (document.title) {\n currentTitle = document.title\n } else {\n const pageHeader = document.querySelector('h1')\n if (pageHeader) {\n currentTitle = pageHeader.innerText || pageHeader.textContent || ''\n }\n }\n\n // Only announce the title change, but not for the first load because screen\n // readers do that automatically.\n if (\n previousTitle.current !== undefined &&\n previousTitle.current !== currentTitle\n ) {\n setRouteAnnouncement(currentTitle)\n }\n previousTitle.current = currentTitle\n }, [tree])\n\n return portalNode ? createPortal(routeAnnouncement, portalNode) : null\n}\n"],"names":["useEffect","useRef","useState","createPortal","ANNOUNCER_TYPE","ANNOUNCER_ID","getAnnouncerNode","existingAnnouncer","document","getElementsByName","shadowRoot","childNodes","container","createElement","style","cssText","announcer","ariaLive","id","role","shadow","attachShadow","mode","appendChild","body","AppRouterAnnouncer","tree","portalNode","setPortalNode","getElementsByTagName","isConnected","removeChild","routeAnnouncement","setRouteAnnouncement","previousTitle","undefined","currentTitle","title","pageHeader","querySelector","innerText","textContent","current"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,QAAO;AACnD,SAASC,YAAY,QAAQ,YAAW;AAGxC,MAAMC,iBAAiB;AACvB,MAAMC,eAAe;AAErB,SAASC;QAEHC;IADJ,MAAMA,oBAAoBC,SAASC,iBAAiB,CAACL,eAAe,CAAC,EAAE;IACvE,IAAIG,sCAAAA,gCAAAA,kBAAmBG,UAAU,qBAA7BH,8BAA+BI,UAAU,CAAC,EAAE,EAAE;QAChD,OAAOJ,kBAAkBG,UAAU,CAACC,UAAU,CAAC,EAAE;IACnD,OAAO;QACL,MAAMC,YAAYJ,SAASK,aAAa,CAACT;QACzCQ,UAAUE,KAAK,CAACC,OAAO,GAAG;QAC1B,MAAMC,YAAYR,SAASK,aAAa,CAAC;QACzCG,UAAUC,QAAQ,GAAG;QACrBD,UAAUE,EAAE,GAAGb;QACfW,UAAUG,IAAI,GAAG;QACjBH,UAAUF,KAAK,CAACC,OAAO,GACrB;QAEF,uDAAuD;QACvD,MAAMK,SAASR,UAAUS,YAAY,CAAC;YAAEC,MAAM;QAAO;QACrDF,OAAOG,WAAW,CAACP;QACnBR,SAASgB,IAAI,CAACD,WAAW,CAACX;QAC1B,OAAOI;IACT;AACF;AAEA,OAAO,SAASS,mBAAmB,KAAqC;IAArC,IAAA,EAAEC,IAAI,EAA+B,GAArC;IACjC,MAAM,CAACC,YAAYC,cAAc,GAAG1B,SAA6B;IAEjEF,UAAU;QACR,MAAMgB,YAAYV;QAClBsB,cAAcZ;QACd,OAAO;YACL,MAAMJ,YAAYJ,SAASqB,oBAAoB,CAACzB,eAAe,CAAC,EAAE;YAClE,IAAIQ,6BAAAA,UAAWkB,WAAW,EAAE;gBAC1BtB,SAASgB,IAAI,CAACO,WAAW,CAACnB;YAC5B;QACF;IACF,GAAG,EAAE;IAEL,MAAM,CAACoB,mBAAmBC,qBAAqB,GAAG/B,SAAS;IAC3D,MAAMgC,gBAAgBjC,OAA2BkC;IAEjDnC,UAAU;QACR,IAAIoC,eAAe;QACnB,IAAI5B,SAAS6B,KAAK,EAAE;YAClBD,eAAe5B,SAAS6B,KAAK;QAC/B,OAAO;YACL,MAAMC,aAAa9B,SAAS+B,aAAa,CAAC;YAC1C,IAAID,YAAY;gBACdF,eAAeE,WAAWE,SAAS,IAAIF,WAAWG,WAAW,IAAI;YACnE;QACF;QAEA,4EAA4E;QAC5E,iCAAiC;QACjC,IACEP,cAAcQ,OAAO,KAAKP,aAC1BD,cAAcQ,OAAO,KAAKN,cAC1B;YACAH,qBAAqBG;QACvB;QACAF,cAAcQ,OAAO,GAAGN;IAC1B,GAAG;QAACV;KAAK;IAET,OAAOC,2BAAaxB,aAAa6B,mBAAmBL,cAAc;AACpE","ignoreList":[0]}