@wordpress/block-editor
Version:
8 lines (7 loc) • 1.74 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../src/components/skip-to-selected-block/index.js"],
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { useBlockElementRef } from '../block-list/use-block-props/use-block-refs';\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/skip-to-selected-block/README.md\n */\nexport default function SkipToSelectedBlock() {\n\tconst selectedBlockClientId = useSelect(\n\t\t( select ) => select( blockEditorStore ).getBlockSelectionStart(),\n\t\t[]\n\t);\n\tconst ref = useRef();\n\tuseBlockElementRef( selectedBlockClientId, ref );\n\tconst onClick = () => {\n\t\tref.current?.focus();\n\t};\n\n\treturn selectedBlockClientId ? (\n\t\t<Button\n\t\t\t__next40pxDefaultSize\n\t\t\tvariant=\"secondary\"\n\t\t\tclassName=\"block-editor-skip-to-selected-block\"\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ __( 'Skip to the selected block' ) }\n\t\t</Button>\n\t) : null;\n}\n"],
"mappings": ";AAGA,SAAS,iBAAiB;AAC1B,SAAS,UAAU;AACnB,SAAS,cAAc;AACvB,SAAS,cAAc;AAKvB,SAAS,SAAS,wBAAwB;AAC1C,SAAS,0BAA0B;AAiBjC;AAZa,SAAR,sBAAuC;AAC7C,QAAM,wBAAwB;AAAA,IAC7B,CAAE,WAAY,OAAQ,gBAAiB,EAAE,uBAAuB;AAAA,IAChE,CAAC;AAAA,EACF;AACA,QAAM,MAAM,OAAO;AACnB,qBAAoB,uBAAuB,GAAI;AAC/C,QAAM,UAAU,MAAM;AACrB,QAAI,SAAS,MAAM;AAAA,EACpB;AAEA,SAAO,wBACN;AAAA,IAAC;AAAA;AAAA,MACA,uBAAqB;AAAA,MACrB,SAAQ;AAAA,MACR,WAAU;AAAA,MACV;AAAA,MAEE,aAAI,4BAA6B;AAAA;AAAA,EACpC,IACG;AACL;",
"names": []
}