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 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useGetRecordId = useGetRecordId; const controller_1 = require("../controller/index.cjs"); const routing_1 = require("../routing/index.cjs"); /** * Helper hook to get the current `recordId`. * * `recordId` is obtained from parameters if passed as a parameter, or from the `RecordContext` if there is one, or, lastly, from the router URL. * * @param {any} recordId optional if used inside a RecordContextProvider or if recordId can be guessed from the URL * * @returns The `recordId` determined in this manner. * * @example * const recordId = useGetRecordId(); */ function useGetRecordId(recordId) { const contextRecord = (0, controller_1.useRecordContext)(); const { id: routeId } = (0, routing_1.useParams)(); const actualRecordId = recordId ?? contextRecord?.id ?? routeId; if (actualRecordId == null) throw new Error(`useGetRecordId could not find the current record id. You need to use it inside a RecordContextProvider, or inside a supported route, or provide the record id to the hook yourself.`); return actualRecordId; } //# sourceMappingURL=useGetRecordId.js.map