UNPKG

@atlaskit/page-layout

Version:

A collection of components which let you compose an application's page layout.

26 lines 748 B
import { createContext, useContext, useEffect } from 'react'; import noop from '@atlaskit/ds-lib/noop'; // eslint-disable-next-line @repo/internal/react/require-jsdoc export const SkipLinksContext = /*#__PURE__*/createContext({ skipLinksData: [], registerSkipLink: noop, unregisterSkipLink: noop }); export const useSkipLinks = () => useContext(SkipLinksContext); export const useSkipLink = (id, skipLinkTitle) => { const { registerSkipLink, unregisterSkipLink } = useSkipLinks(); useEffect(() => { if (id && skipLinkTitle) { registerSkipLink({ id, skipLinkTitle }); } return () => { unregisterSkipLink(id); }; }, [id, skipLinkTitle, registerSkipLink, unregisterSkipLink]); };