UNPKG

@wordpress/block-editor

Version:
8 lines (7 loc) 1.7 kB
{ "version": 3, "sources": ["../../../src/components/list-view/use-list-view-collapse-items.js"], "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nexport default function useListViewCollapseItems( { collapseAll, expand } ) {\n\tconst { expandedBlock, getBlockParents } = useSelect( ( select ) => {\n\t\tconst { getBlockParents: _getBlockParents, getExpandedBlock } = unlock(\n\t\t\tselect( blockEditorStore )\n\t\t);\n\t\treturn {\n\t\t\texpandedBlock: getExpandedBlock(),\n\t\t\tgetBlockParents: _getBlockParents,\n\t\t};\n\t}, [] );\n\n\t// Collapse all but the specified block when the expanded block client Id changes.\n\tuseEffect( () => {\n\t\tif ( expandedBlock ) {\n\t\t\tconst blockParents = getBlockParents( expandedBlock, false );\n\t\t\t// Collapse all blocks and expand the block's parents.\n\t\t\tcollapseAll();\n\t\t\texpand( blockParents );\n\t\t}\n\t}, [ collapseAll, expand, expandedBlock, getBlockParents ] );\n}\n"], "mappings": ";AAGA,SAAS,iBAAiB;AAC1B,SAAS,iBAAiB;AAK1B,SAAS,SAAS,wBAAwB;AAC1C,SAAS,cAAc;AAER,SAAR,yBAA2C,EAAE,aAAa,OAAO,GAAI;AAC3E,QAAM,EAAE,eAAe,gBAAgB,IAAI,UAAW,CAAE,WAAY;AACnE,UAAM,EAAE,iBAAiB,kBAAkB,iBAAiB,IAAI;AAAA,MAC/D,OAAQ,gBAAiB;AAAA,IAC1B;AACA,WAAO;AAAA,MACN,eAAe,iBAAiB;AAAA,MAChC,iBAAiB;AAAA,IAClB;AAAA,EACD,GAAG,CAAC,CAAE;AAGN,YAAW,MAAM;AAChB,QAAK,eAAgB;AACpB,YAAM,eAAe,gBAAiB,eAAe,KAAM;AAE3D,kBAAY;AACZ,aAAQ,YAAa;AAAA,IACtB;AAAA,EACD,GAAG,CAAE,aAAa,QAAQ,eAAe,eAAgB,CAAE;AAC5D;", "names": [] }