{"version":3,"file":"RouterProvider.cjs","names":["ROUTER_REACT_CONTEXT","ROUTE_DEPTH_REACT_CONTEXT"],"sources":["../../../src/router/RouterProvider/RouterProvider.tsx"],"sourcesContent":["import { useBeforeMount } from '../../useBeforeMount';\nimport { ROUTER_REACT_CONTEXT, ROUTE_DEPTH_REACT_CONTEXT } from '../constants';\nimport type { RouterProviderProps } from './types';\n\n/**\n * Provides a tools `ViewRouter` through dedicated React context.\n *\n * Use this component when a subtree needs router hooks/components but you do\n * not want to install the router through `GlobalContext`.\n *\n * @param props - Router options plus children.\n * @returns Provider-wrapped React subtree.\n *\n * @example\n * ```tsx\n * <RouterProvider router={router}>\n *   <RouterView />\n * </RouterProvider>\n * ```\n */\nexport function RouterProvider(props: RouterProviderProps) {\n  const { router, base, children } = props;\n\n  useBeforeMount(() => {\n    if (base) router.setBase(base);\n  });\n\n  return (\n    <ROUTER_REACT_CONTEXT.Provider value={router}>\n      <ROUTE_DEPTH_REACT_CONTEXT.Provider value={-1}>\n        {children}\n      </ROUTE_DEPTH_REACT_CONTEXT.Provider>\n    </ROUTER_REACT_CONTEXT.Provider>\n  );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAoBA,SAAgB,eAAe,OAA4B;CACzD,MAAM,EAAE,QAAQ,MAAM,aAAa;CAEnC,sCAAA,qBAAqB;EACnB,IAAI,MAAM,OAAO,QAAQ,IAAI;CAC/B,CAAC;CAED,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACA,yBAAAA,qBAAqB,UAAtB;EAA+B,OAAO;YACpC,iBAAA,GAAA,kBAAA,IAAA,CAACC,yBAAAA,0BAA0B,UAA3B;GAAoC,OAAO;GACxC;EACiC,CAAA;CACP,CAAA;AAEnC"}