test
2 weeks ago
useCompleteOnboarding.js
2 weeks ago
useDateRangePicker.js
1 month ago
useEmail.ts
1 month ago
useEngagementChartData.js
1 month ago
useLicenseSettings.js
1 month ago
useLink.js
1 month ago
useMediaDetail.js
1 month ago
useMediaLibrary.js
1 month ago
useMediaList.ts
1 month ago
usePerformanceSettings.js
1 month ago
useRegisterActivePage.js
1 month ago
useSettingOption.js
1 month ago
useSimpleSettingsPage.js
1 month ago
useTopPerforming.js
1 month ago
useTopVideosPaginated.js
1 month ago
useUpgradeCTA.js
1 month ago
useUserDetail.js
1 month ago
useLink.js
22 lines
| 1 | import { useHistory } from "../router/router"; |
| 2 | import { addQueryArgs } from '@wordpress/url'; |
| 3 | import { runNavGuards } from '../pages/settings/shared/navigationGuard'; |
| 4 | |
| 5 | const useLink = (params) => { |
| 6 | const history = useHistory(); |
| 7 | |
| 8 | const href = addQueryArgs(window.location.pathname, params); |
| 9 | |
| 10 | const onClick = (event) => { |
| 11 | event.preventDefault(); |
| 12 | if ( runNavGuards( params ) ) { |
| 13 | return; |
| 14 | } |
| 15 | history.push(params); |
| 16 | }; |
| 17 | |
| 18 | return { href, onClick }; |
| 19 | }; |
| 20 | |
| 21 | export default useLink; |
| 22 |