UNPKG

@etsoo/react

Version:

TypeScript ReactJs UI Independent Framework

26 lines (25 loc) 830 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useSearchParamsWithCache = useSearchParamsWithCache; const shared_1 = require("@etsoo/shared"); const react_router_dom_1 = require("react-router-dom"); /** * Read search parameters with cache * @param cacheKey Cache key * @param storage Storage */ function useSearchParamsWithCache(cacheKey, storage) { const data = {}; if (cacheKey) { storage ?? (storage = new shared_1.WindowStorage()); const paras = storage.getObject(cacheKey); if (paras) { Object.assign(data, paras); } } if ((0, react_router_dom_1.useInRouterContext)()) { const [sp] = (0, react_router_dom_1.useSearchParams)(); Object.assign(data, Object.fromEntries(sp.entries())); } return data; }