@wordpress/editor
Version:
Enhanced block editor for WordPress posts.
8 lines (7 loc) • 3.38 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../src/components/template-content-panel/index.js"],
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { TEMPLATE_POST_TYPE } from '../../store/constants';\nimport { store as editorStore } from '../../store';\nimport usePostContentBlockTypes from '../provider/use-post-content-block-types';\n\nconst { BlockQuickNavigation } = unlock( blockEditorPrivateApis );\n\nconst TEMPLATE_PART_BLOCK = 'core/template-part';\n\nfunction TemplateContentPanelInner( { postType } ) {\n\tconst postContentBlockTypes = usePostContentBlockTypes();\n\n\tconst clientIds = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getPostBlocksByName } = unlock( select( editorStore ) );\n\t\t\treturn getPostBlocksByName(\n\t\t\t\tTEMPLATE_POST_TYPE === postType\n\t\t\t\t\t? TEMPLATE_PART_BLOCK\n\t\t\t\t\t: postContentBlockTypes\n\t\t\t);\n\t\t},\n\t\t[ postType, postContentBlockTypes ]\n\t);\n\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tif ( clientIds.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Content' ) }>\n\t\t\t<BlockQuickNavigation\n\t\t\t\tclientIds={ clientIds }\n\t\t\t\tonSelect={ () => {\n\t\t\t\t\tenableComplementaryArea( 'core', 'edit-post/document' );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nexport default function TemplateContentPanel() {\n\tconst { postType, renderingMode } = useSelect( ( select ) => {\n\t\tconst { getCurrentPostType, getRenderingMode } = unlock(\n\t\t\tselect( editorStore )\n\t\t);\n\t\treturn {\n\t\t\tpostType: getCurrentPostType(),\n\t\t\trenderingMode: getRenderingMode(),\n\t\t};\n\t}, [] );\n\n\tif ( renderingMode === 'post-only' && postType !== TEMPLATE_POST_TYPE ) {\n\t\treturn null;\n\t}\n\n\treturn <TemplateContentPanelInner postType={ postType } />;\n}\n"],
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAuC;AACvC,0BAAsD;AACtD,wBAA0B;AAC1B,kBAAmB;AACnB,uBAAwC;AAKxC,yBAAuB;AACvB,uBAAmC;AACnC,mBAAqC;AACrC,0CAAqC;AA6BlC;AA3BH,IAAM,EAAE,qBAAqB,QAAI,2BAAQ,oBAAAA,WAAuB;AAEhE,IAAM,sBAAsB;AAE5B,SAAS,0BAA2B,EAAE,SAAS,GAAI;AAClD,QAAM,4BAAwB,oCAAAC,SAAyB;AAEvD,QAAM,gBAAY;AAAA,IACjB,CAAE,WAAY;AACb,YAAM,EAAE,oBAAoB,QAAI,2BAAQ,OAAQ,aAAAC,KAAY,CAAE;AAC9D,aAAO;AAAA,QACN,wCAAuB,WACpB,sBACA;AAAA,MACJ;AAAA,IACD;AAAA,IACA,CAAE,UAAU,qBAAsB;AAAA,EACnC;AAEA,QAAM,EAAE,wBAAwB,QAAI,yBAAa,iBAAAC,KAAe;AAEhE,MAAK,UAAU,WAAW,GAAI;AAC7B,WAAO;AAAA,EACR;AAEA,SACC,4CAAC,+BAAU,WAAQ,gBAAI,SAAU,GAChC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,UAAW,MAAM;AAChB,gCAAyB,QAAQ,oBAAqB;AAAA,MACvD;AAAA;AAAA,EACD,GACD;AAEF;AAEe,SAAR,uBAAwC;AAC9C,QAAM,EAAE,UAAU,cAAc,QAAI,uBAAW,CAAE,WAAY;AAC5D,UAAM,EAAE,oBAAoB,iBAAiB,QAAI;AAAA,MAChD,OAAQ,aAAAD,KAAY;AAAA,IACrB;AACA,WAAO;AAAA,MACN,UAAU,mBAAmB;AAAA,MAC7B,eAAe,iBAAiB;AAAA,IACjC;AAAA,EACD,GAAG,CAAC,CAAE;AAEN,MAAK,kBAAkB,eAAe,aAAa,qCAAqB;AACvE,WAAO;AAAA,EACR;AAEA,SAAO,4CAAC,6BAA0B,UAAsB;AACzD;",
"names": ["blockEditorPrivateApis", "usePostContentBlockTypes", "editorStore", "interfaceStore"]
}