UNPKG

@wordpress/editor

Version:
8 lines (7 loc) 3.42 kB
{ "version": 3, "sources": ["../../../src/components/collab-sidebar/comment-menu-item.js"], "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { getUnregisteredTypeHandlerName } from '@wordpress/blocks';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { CommentIconSlotFill } = unlock( blockEditorPrivateApis );\n\nconst AddCommentMenuItem = ( { clientId, onClick, isDistractionFree } ) => {\n\tconst block = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( blockEditorStore ).getBlock( clientId );\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst shortcut = useSelect(\n\t\t( select ) =>\n\t\t\tselect( keyboardShortcutsStore ).getShortcutRepresentation(\n\t\t\t\t'core/editor/new-note'\n\t\t\t),\n\t\t[]\n\t);\n\n\tif (\n\t\t! block?.isValid ||\n\t\tblock?.name === getUnregisteredTypeHandlerName()\n\t) {\n\t\treturn null;\n\t}\n\n\tconst isDisabled = isDistractionFree || block?.name === 'core/freeform';\n\n\tlet infoText;\n\n\tif ( isDistractionFree ) {\n\t\tinfoText = __( 'Notes are disabled in distraction free mode.' );\n\t} else if ( block?.name === 'core/freeform' ) {\n\t\tinfoText = __( 'Convert to blocks to add notes.' );\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ onClick }\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdisabled={ isDisabled }\n\t\t\tinfo={ infoText }\n\t\t\tshortcut={ shortcut }\n\t\t>\n\t\t\t{ __( 'Add note' ) }\n\t\t</MenuItem>\n\t);\n};\n\nconst AddCommentMenuItemFill = ( { onClick, isDistractionFree } ) => {\n\treturn (\n\t\t<CommentIconSlotFill.Fill>\n\t\t\t{ ( { clientId, onClose } ) => (\n\t\t\t\t<AddCommentMenuItem\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisDistractionFree={ isDistractionFree }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tonClick( clientId );\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</CommentIconSlotFill.Fill>\n\t);\n};\n\nexport default AddCommentMenuItemFill;\n"], "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,wBAAyB;AACzB,kBAAmB;AACnB,0BAGO;AACP,kBAA0B;AAC1B,oBAA+C;AAC/C,gCAAgD;AAKhD,yBAAuB;AAqCrB;AAnCF,IAAM,EAAE,oBAAoB,QAAI,2BAAQ,oBAAAA,WAAuB;AAE/D,IAAM,qBAAqB,CAAE,EAAE,UAAU,SAAS,kBAAkB,MAAO;AAC1E,QAAM,YAAQ;AAAA,IACb,CAAE,WAAY;AACb,aAAO,OAAQ,oBAAAC,KAAiB,EAAE,SAAU,QAAS;AAAA,IACtD;AAAA,IACA,CAAE,QAAS;AAAA,EACZ;AACA,QAAM,eAAW;AAAA,IAChB,CAAE,WACD,OAAQ,0BAAAC,KAAuB,EAAE;AAAA,MAChC;AAAA,IACD;AAAA,IACD,CAAC;AAAA,EACF;AAEA,MACC,CAAE,OAAO,WACT,OAAO,aAAS,8CAA+B,GAC9C;AACD,WAAO;AAAA,EACR;AAEA,QAAM,aAAa,qBAAqB,OAAO,SAAS;AAExD,MAAI;AAEJ,MAAK,mBAAoB;AACxB,mBAAW,gBAAI,8CAA+C;AAAA,EAC/D,WAAY,OAAO,SAAS,iBAAkB;AAC7C,mBAAW,gBAAI,iCAAkC;AAAA,EAClD;AAEA,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,iBAAc;AAAA,MACd,UAAW;AAAA,MACX,MAAO;AAAA,MACP;AAAA,MAEE,8BAAI,UAAW;AAAA;AAAA,EAClB;AAEF;AAEA,IAAM,yBAAyB,CAAE,EAAE,SAAS,kBAAkB,MAAO;AACpE,SACC,4CAAC,oBAAoB,MAApB,EACE,WAAE,EAAE,UAAU,QAAQ,MACvB;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA,SAAU,MAAM;AACf,gBAAS,QAAS;AAClB,gBAAQ;AAAA,MACT;AAAA;AAAA,EACD,GAEF;AAEF;AAEA,IAAO,4BAAQ;", "names": ["blockEditorPrivateApis", "blockEditorStore", "keyboardShortcutsStore"] }