UNPKG

@wordpress/block-editor

Version:
8 lines (7 loc) 1.83 kB
{ "version": 3, "sources": ["../../../src/components/block-lock/menu-item.js"], "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useReducer } from '@wordpress/element';\nimport { MenuItem } from '@wordpress/components';\nimport { lockOutline, unlock } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport useBlockLock from './use-block-lock';\nimport BlockLockModal from './modal';\n\nexport default function BlockLockMenuItem( { clientId } ) {\n\tconst { canLock, isLocked } = useBlockLock( clientId );\n\n\tconst [ isModalOpen, toggleModal ] = useReducer(\n\t\t( isActive ) => ! isActive,\n\t\tfalse\n\t);\n\n\tif ( ! canLock ) {\n\t\treturn null;\n\t}\n\n\tconst label = isLocked ? __( 'Unlock' ) : __( 'Lock' );\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem\n\t\t\t\ticon={ isLocked ? unlock : lockOutline }\n\t\t\t\tonClick={ toggleModal }\n\t\t\t\taria-expanded={ isModalOpen }\n\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t>\n\t\t\t\t{ label }\n\t\t\t</MenuItem>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<BlockLockModal clientId={ clientId } onClose={ toggleModal } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n"], "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAmB;AACnB,qBAA2B;AAC3B,wBAAyB;AACzB,mBAAoC;AAKpC,4BAAyB;AACzB,mBAA2B;AAiBzB;AAfa,SAAR,kBAAoC,EAAE,SAAS,GAAI;AACzD,QAAM,EAAE,SAAS,SAAS,QAAI,sBAAAA,SAAc,QAAS;AAErD,QAAM,CAAE,aAAa,WAAY,QAAI;AAAA,IACpC,CAAE,aAAc,CAAE;AAAA,IAClB;AAAA,EACD;AAEA,MAAK,CAAE,SAAU;AAChB,WAAO;AAAA,EACR;AAEA,QAAM,QAAQ,eAAW,gBAAI,QAAS,QAAI,gBAAI,MAAO;AAErD,SACC,4EACC;AAAA;AAAA,MAAC;AAAA;AAAA,QACA,MAAO,WAAW,sBAAS;AAAA,QAC3B,SAAU;AAAA,QACV,iBAAgB;AAAA,QAChB,iBAAc;AAAA,QAEZ;AAAA;AAAA,IACH;AAAA,IACE,eACD,4CAAC,aAAAC,SAAA,EAAe,UAAsB,SAAU,aAAc;AAAA,KAEhE;AAEF;", "names": ["useBlockLock", "BlockLockModal"] }