import { useState, useEffect } from 'react'; var getValue = function (search, param) { return new URLSearchParams(search).get(param); }; var useSearchParam = function (param) { var location = window.location; var _a = useState(function () { return getValue(location.search, param); }), value = _a[0], setValue = _a[1]; useEffect(function () { var onChange = function () { setValue(getValue(location.search, param)); }; window.addEventListener('popstate', onChange); window.addEventListener('pushstate', onChange); window.addEventListener('replacestate', onChange); return function () { window.removeEventListener('popstate', onChange); window.removeEventListener('pushstate', onChange); window.removeEventListener('replacestate', onChange); }; }, []); return value; }; var useSearchParamServer = function () { return null; }; export default typeof window === 'object' ? useSearchParam : useSearchParamServer;