UNPKG

ra-core

Version:

Core components of react-admin, a frontend Framework for building admin applications on top of REST services, using ES6, React

26 lines 995 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useSplatPathBase = void 0; const useLocation_1 = require("./useLocation.cjs"); const useParams_1 = require("./useParams.cjs"); /** * Utility hook to get the base path of a splat path. * Compatible both with react-router v6 and v7. * * Example: * If a splat path is defined as `/posts/:id/show/*`, * and the current location is `/posts/12/show/3`, * this hook will return `/posts/12/show`. * * Solution inspired by * https://github.com/remix-run/react-router/issues/11052#issuecomment-1828470203 */ const useSplatPathBase = () => { const location = (0, useLocation_1.useLocation)(); const params = (0, useParams_1.useParams)(); const splatPathRelativePart = params['*']; const splatPathBase = location.pathname.replace(new RegExp(`/${splatPathRelativePart}$`), ''); return splatPathBase; }; exports.useSplatPathBase = useSplatPathBase; //# sourceMappingURL=useSplatPathBase.js.map