@wordpress/edit-post 6.8.0 → 6.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +1 -1
  3. package/build/components/keyboard-shortcut-help-modal/config.js +12 -0
  4. package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  5. package/build/components/sidebar/plugin-post-status-info/index.js +2 -2
  6. package/build/components/sidebar/plugin-post-status-info/index.js.map +1 -1
  7. package/build/components/sidebar/post-schedule/index.js +6 -6
  8. package/build/components/sidebar/post-schedule/index.js.map +1 -1
  9. package/build/components/sidebar/post-status/index.js +4 -2
  10. package/build/components/sidebar/post-status/index.js.map +1 -1
  11. package/build/components/sidebar/post-template/create-modal.js +116 -0
  12. package/build/components/sidebar/post-template/create-modal.js.map +1 -0
  13. package/build/components/sidebar/post-template/form.js +123 -0
  14. package/build/components/sidebar/post-template/form.js.map +1 -0
  15. package/build/components/sidebar/post-template/index.js +123 -0
  16. package/build/components/sidebar/post-template/index.js.map +1 -0
  17. package/build/components/sidebar/settings-sidebar/index.js +1 -3
  18. package/build/components/sidebar/settings-sidebar/index.js.map +1 -1
  19. package/build/components/start-page-options/index.js +31 -13
  20. package/build/components/start-page-options/index.js.map +1 -1
  21. package/build/editor.js +1 -1
  22. package/build/editor.js.map +1 -1
  23. package/build/editor.native.js +1 -1
  24. package/build/editor.native.js.map +1 -1
  25. package/build/store/selectors.js +8 -8
  26. package/build/store/selectors.js.map +1 -1
  27. package/build-module/components/keyboard-shortcut-help-modal/config.js +12 -0
  28. package/build-module/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  29. package/build-module/components/sidebar/plugin-post-status-info/index.js +2 -2
  30. package/build-module/components/sidebar/plugin-post-status-info/index.js.map +1 -1
  31. package/build-module/components/sidebar/post-schedule/index.js +7 -4
  32. package/build-module/components/sidebar/post-schedule/index.js.map +1 -1
  33. package/build-module/components/sidebar/post-status/index.js +3 -2
  34. package/build-module/components/sidebar/post-status/index.js.map +1 -1
  35. package/build-module/components/sidebar/post-template/create-modal.js +104 -0
  36. package/build-module/components/sidebar/post-template/create-modal.js.map +1 -0
  37. package/build-module/components/sidebar/post-template/form.js +106 -0
  38. package/build-module/components/sidebar/post-template/form.js.map +1 -0
  39. package/build-module/components/sidebar/post-template/index.js +109 -0
  40. package/build-module/components/sidebar/post-template/index.js.map +1 -0
  41. package/build-module/components/sidebar/settings-sidebar/index.js +1 -2
  42. package/build-module/components/sidebar/settings-sidebar/index.js.map +1 -1
  43. package/build-module/components/start-page-options/index.js +32 -14
  44. package/build-module/components/start-page-options/index.js.map +1 -1
  45. package/build-module/editor.js +2 -2
  46. package/build-module/editor.js.map +1 -1
  47. package/build-module/editor.native.js +2 -2
  48. package/build-module/editor.native.js.map +1 -1
  49. package/build-module/store/selectors.js +8 -7
  50. package/build-module/store/selectors.js.map +1 -1
  51. package/build-style/style-rtl.css +56 -44
  52. package/build-style/style.css +56 -44
  53. package/package.json +27 -27
  54. package/src/components/keyboard-shortcut-help-modal/config.js +8 -0
  55. package/src/components/keyboard-shortcut-help-modal/test/__snapshots__/index.js.snap +14 -0
  56. package/src/components/sidebar/plugin-post-status-info/index.js +2 -2
  57. package/src/components/sidebar/post-schedule/index.js +5 -3
  58. package/src/components/sidebar/post-schedule/style.scss +18 -3
  59. package/src/components/sidebar/post-status/index.js +3 -1
  60. package/src/components/sidebar/post-template/create-modal.js +146 -0
  61. package/src/components/sidebar/post-template/form.js +140 -0
  62. package/src/components/sidebar/post-template/index.js +101 -0
  63. package/src/components/sidebar/post-template/style.scss +46 -0
  64. package/src/components/sidebar/post-visibility/style.scss +4 -4
  65. package/src/components/sidebar/settings-sidebar/index.js +0 -2
  66. package/src/components/start-page-options/index.js +46 -22
  67. package/src/editor.js +2 -2
  68. package/src/editor.native.js +2 -2
  69. package/src/store/selectors.js +5 -8
  70. package/src/style.scss +1 -1
  71. package/build/components/sidebar/template/actions.js +0 -172
  72. package/build/components/sidebar/template/actions.js.map +0 -1
  73. package/build/components/sidebar/template/index.js +0 -164
  74. package/build/components/sidebar/template/index.js.map +0 -1
  75. package/build-module/components/sidebar/template/actions.js +0 -158
  76. package/build-module/components/sidebar/template/actions.js.map +0 -1
  77. package/build-module/components/sidebar/template/index.js +0 -145
  78. package/build-module/components/sidebar/template/index.js.map +0 -1
  79. package/src/components/sidebar/template/actions.js +0 -206
  80. package/src/components/sidebar/template/index.js +0 -160
  81. package/src/components/sidebar/template/style.scss +0 -43
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/settings-sidebar/index.js"],"names":["SIDEBAR_ACTIVE_BY_DEFAULT","Platform","select","web","native","SettingsSidebar","sidebarName","keyboardShortcut","isTemplateMode","sidebar","interfaceStore","getActiveComplementaryArea","editPostStore","name","includes","blockEditorStore","getBlockSelectionStart","shortcut","keyboardShortcutsStore","getShortcutRepresentation","isEditingTemplate","cog"],"mappings":";;;;;;;;;AAQA;;AALA;;AAIA;;AAEA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AA/BA;AACA;AACA;;AAUA;AACA;AACA;AAmBA,MAAMA,yBAAyB,GAAGC,kBAASC,MAAT,CAAiB;AAClDC,EAAAA,GAAG,EAAE,IAD6C;AAElDC,EAAAA,MAAM,EAAE;AAF0C,CAAjB,CAAlC;;AAKA,MAAMC,eAAe,GAAG,MAAM;AAC7B,QAAM;AAAEC,IAAAA,WAAF;AAAeC,IAAAA,gBAAf;AAAiCC,IAAAA;AAAjC,MAAoD,qBACvDN,MAAF,IAAc;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAIO,OAAO,GAAGP,MAAM,CAAEQ,gBAAF,CAAN,CAAyBC,0BAAzB,CACbC,aAAcC,IADD,CAAd;;AAGA,QACC,CAAE,CAAE,oBAAF,EAAwB,iBAAxB,EAA4CC,QAA5C,CACDL,OADC,CADH,EAIE;AACD,UAAKP,MAAM,CAAEa,kBAAF,CAAN,CAA2BC,sBAA3B,EAAL,EAA2D;AAC1DP,QAAAA,OAAO,GAAG,iBAAV;AACA;;AACDA,MAAAA,OAAO,GAAG,oBAAV;AACA;;AACD,UAAMQ,QAAQ,GAAGf,MAAM,CACtBgB,wBADsB,CAAN,CAEfC,yBAFe,CAEY,+BAFZ,CAAjB;AAGA,WAAO;AACNb,MAAAA,WAAW,EAAEG,OADP;AAENF,MAAAA,gBAAgB,EAAEU,QAFZ;AAGNT,MAAAA,cAAc,EAAEN,MAAM,CAAEU,YAAF,CAAN,CAAwBQ,iBAAxB;AAHV,KAAP;AAKA,GA9BwD,EA+BzD,EA/ByD,CAA1D;AAkCA,SACC,4BAAC,sBAAD;AACC,IAAA,UAAU,EAAGd,WADd;AAEC,IAAA,MAAM,EAAG,4BAAC,uBAAD;AAAgB,MAAA,WAAW,EAAGA;AAA9B,MAFV;AAGC,IAAA,UAAU,EAAG,cAAI,gBAAJ,CAHd;AAIC,IAAA,eAAe,EAAC;AAChB;AALD;AAMC,IAAA,KAAK,EAAG,cAAI,UAAJ,CANT;AAOC,IAAA,cAAc,EAAGC,gBAPlB;AAQC,IAAA,IAAI,EAAGc,UARR;AASC,IAAA,iBAAiB,EAAGrB;AATrB,KAWG,CAAEQ,cAAF,IAAoBF,WAAW,KAAK,oBAApC,IACD,qDACC,4BAAC,mBAAD,OADD,EAEC,4BAAC,iBAAD,OAFD,EAGC,4BAAC,mCAAD,CAA4B,IAA5B,OAHD,EAIC,4BAAC,qBAAD,OAJD,EAKC,4BAAC,iBAAD,OALD,EAMC,4BAAC,uBAAD,OAND,EAOC,4BAAC,sBAAD,OAPD,EAQC,4BAAC,oBAAD,OARD,EASC,4BAAC,wBAAD,OATD,EAUC,4BAAC,uBAAD,OAVD,EAWC,4BAAC,kBAAD;AAAW,IAAA,QAAQ,EAAC;AAApB,IAXD,CAZF,EA0BGE,cAAc,IAAIF,WAAW,KAAK,oBAAlC,IACD,4BAAC,wBAAD,OA3BF,EA6BGA,WAAW,KAAK,iBAAhB,IAAqC,4BAAC,2BAAD,OA7BxC,CADD;AAiCA,CApED;;eAsEeD,e","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockInspector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { cog } from '@wordpress/icons';\nimport { Platform } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport SettingsHeader from '../settings-header';\nimport PostStatus from '../post-status';\nimport LastRevision from '../last-revision';\nimport PostTaxonomies from '../post-taxonomies';\nimport FeaturedImage from '../featured-image';\nimport PostExcerpt from '../post-excerpt';\nimport PostLink from '../post-link';\nimport DiscussionPanel from '../discussion-panel';\nimport PageAttributes from '../page-attributes';\nimport MetaBoxes from '../../meta-boxes';\nimport PluginDocumentSettingPanel from '../plugin-document-setting-panel';\nimport PluginSidebarEditPost from '../plugin-sidebar';\nimport Template from '../template';\nimport TemplateSummary from '../template-summary';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as editPostStore } from '../../../store';\n\nconst SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select( {\n\tweb: true,\n\tnative: false,\n} );\n\nconst SettingsSidebar = () => {\n\tconst { sidebarName, keyboardShortcut, isTemplateMode } = useSelect(\n\t\t( select ) => {\n\t\t\t// The settings sidebar is used by the edit-post/document and edit-post/block sidebars.\n\t\t\t// sidebarName represents the sidebar that is active or that should be active when the SettingsSidebar toggle button is pressed.\n\t\t\t// If one of the two sidebars is active the component will contain the content of that sidebar.\n\t\t\t// When neither of the the two sidebars is active we can not simply return null, because the PluginSidebarEditPost\n\t\t\t// component, besides being used to render the sidebar, also renders the toggle button. In that case sidebarName\n\t\t\t// should contain the sidebar that will be active when the toggle button is pressed. If a block\n\t\t\t// is selected, that should be edit-post/block otherwise it's edit-post/document.\n\t\t\tlet sidebar = select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditPostStore.name\n\t\t\t);\n\t\t\tif (\n\t\t\t\t! [ 'edit-post/document', 'edit-post/block' ].includes(\n\t\t\t\t\tsidebar\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tif ( select( blockEditorStore ).getBlockSelectionStart() ) {\n\t\t\t\t\tsidebar = 'edit-post/block';\n\t\t\t\t}\n\t\t\t\tsidebar = 'edit-post/document';\n\t\t\t}\n\t\t\tconst shortcut = select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getShortcutRepresentation( 'core/edit-post/toggle-sidebar' );\n\t\t\treturn {\n\t\t\t\tsidebarName: sidebar,\n\t\t\t\tkeyboardShortcut: shortcut,\n\t\t\t\tisTemplateMode: select( editPostStore ).isEditingTemplate(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\treturn (\n\t\t<PluginSidebarEditPost\n\t\t\tidentifier={ sidebarName }\n\t\t\theader={ <SettingsHeader sidebarName={ sidebarName } /> }\n\t\t\tcloseLabel={ __( 'Close settings' ) }\n\t\t\theaderClassName=\"edit-post-sidebar__panel-tabs\"\n\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\ttitle={ __( 'Settings' ) }\n\t\t\ttoggleShortcut={ keyboardShortcut }\n\t\t\ticon={ cog }\n\t\t\tisActiveByDefault={ SIDEBAR_ACTIVE_BY_DEFAULT }\n\t\t>\n\t\t\t{ ! isTemplateMode && sidebarName === 'edit-post/document' && (\n\t\t\t\t<>\n\t\t\t\t\t<PostStatus />\n\t\t\t\t\t<Template />\n\t\t\t\t\t<PluginDocumentSettingPanel.Slot />\n\t\t\t\t\t<LastRevision />\n\t\t\t\t\t<PostLink />\n\t\t\t\t\t<PostTaxonomies />\n\t\t\t\t\t<FeaturedImage />\n\t\t\t\t\t<PostExcerpt />\n\t\t\t\t\t<DiscussionPanel />\n\t\t\t\t\t<PageAttributes />\n\t\t\t\t\t<MetaBoxes location=\"side\" />\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ isTemplateMode && sidebarName === 'edit-post/document' && (\n\t\t\t\t<TemplateSummary />\n\t\t\t) }\n\t\t\t{ sidebarName === 'edit-post/block' && <BlockInspector /> }\n\t\t</PluginSidebarEditPost>\n\t);\n};\n\nexport default SettingsSidebar;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/settings-sidebar/index.js"],"names":["SIDEBAR_ACTIVE_BY_DEFAULT","Platform","select","web","native","SettingsSidebar","sidebarName","keyboardShortcut","isTemplateMode","sidebar","interfaceStore","getActiveComplementaryArea","editPostStore","name","includes","blockEditorStore","getBlockSelectionStart","shortcut","keyboardShortcutsStore","getShortcutRepresentation","isEditingTemplate","cog"],"mappings":";;;;;;;;;AAQA;;AALA;;AAIA;;AAEA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AA9BA;AACA;AACA;;AAUA;AACA;AACA;AAkBA,MAAMA,yBAAyB,GAAGC,kBAASC,MAAT,CAAiB;AAClDC,EAAAA,GAAG,EAAE,IAD6C;AAElDC,EAAAA,MAAM,EAAE;AAF0C,CAAjB,CAAlC;;AAKA,MAAMC,eAAe,GAAG,MAAM;AAC7B,QAAM;AAAEC,IAAAA,WAAF;AAAeC,IAAAA,gBAAf;AAAiCC,IAAAA;AAAjC,MAAoD,qBACvDN,MAAF,IAAc;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAIO,OAAO,GAAGP,MAAM,CAAEQ,gBAAF,CAAN,CAAyBC,0BAAzB,CACbC,aAAcC,IADD,CAAd;;AAGA,QACC,CAAE,CAAE,oBAAF,EAAwB,iBAAxB,EAA4CC,QAA5C,CACDL,OADC,CADH,EAIE;AACD,UAAKP,MAAM,CAAEa,kBAAF,CAAN,CAA2BC,sBAA3B,EAAL,EAA2D;AAC1DP,QAAAA,OAAO,GAAG,iBAAV;AACA;;AACDA,MAAAA,OAAO,GAAG,oBAAV;AACA;;AACD,UAAMQ,QAAQ,GAAGf,MAAM,CACtBgB,wBADsB,CAAN,CAEfC,yBAFe,CAEY,+BAFZ,CAAjB;AAGA,WAAO;AACNb,MAAAA,WAAW,EAAEG,OADP;AAENF,MAAAA,gBAAgB,EAAEU,QAFZ;AAGNT,MAAAA,cAAc,EAAEN,MAAM,CAAEU,YAAF,CAAN,CAAwBQ,iBAAxB;AAHV,KAAP;AAKA,GA9BwD,EA+BzD,EA/ByD,CAA1D;AAkCA,SACC,4BAAC,sBAAD;AACC,IAAA,UAAU,EAAGd,WADd;AAEC,IAAA,MAAM,EAAG,4BAAC,uBAAD;AAAgB,MAAA,WAAW,EAAGA;AAA9B,MAFV;AAGC,IAAA,UAAU,EAAG,cAAI,gBAAJ,CAHd;AAIC,IAAA,eAAe,EAAC;AAChB;AALD;AAMC,IAAA,KAAK,EAAG,cAAI,UAAJ,CANT;AAOC,IAAA,cAAc,EAAGC,gBAPlB;AAQC,IAAA,IAAI,EAAGc,UARR;AASC,IAAA,iBAAiB,EAAGrB;AATrB,KAWG,CAAEQ,cAAF,IAAoBF,WAAW,KAAK,oBAApC,IACD,qDACC,4BAAC,mBAAD,OADD,EAEC,4BAAC,mCAAD,CAA4B,IAA5B,OAFD,EAGC,4BAAC,qBAAD,OAHD,EAIC,4BAAC,iBAAD,OAJD,EAKC,4BAAC,uBAAD,OALD,EAMC,4BAAC,sBAAD,OAND,EAOC,4BAAC,oBAAD,OAPD,EAQC,4BAAC,wBAAD,OARD,EASC,4BAAC,uBAAD,OATD,EAUC,4BAAC,kBAAD;AAAW,IAAA,QAAQ,EAAC;AAApB,IAVD,CAZF,EAyBGE,cAAc,IAAIF,WAAW,KAAK,oBAAlC,IACD,4BAAC,wBAAD,OA1BF,EA4BGA,WAAW,KAAK,iBAAhB,IAAqC,4BAAC,2BAAD,OA5BxC,CADD;AAgCA,CAnED;;eAqEeD,e","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockInspector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { cog } from '@wordpress/icons';\nimport { Platform } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport SettingsHeader from '../settings-header';\nimport PostStatus from '../post-status';\nimport LastRevision from '../last-revision';\nimport PostTaxonomies from '../post-taxonomies';\nimport FeaturedImage from '../featured-image';\nimport PostExcerpt from '../post-excerpt';\nimport PostLink from '../post-link';\nimport DiscussionPanel from '../discussion-panel';\nimport PageAttributes from '../page-attributes';\nimport MetaBoxes from '../../meta-boxes';\nimport PluginDocumentSettingPanel from '../plugin-document-setting-panel';\nimport PluginSidebarEditPost from '../plugin-sidebar';\nimport TemplateSummary from '../template-summary';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as editPostStore } from '../../../store';\n\nconst SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select( {\n\tweb: true,\n\tnative: false,\n} );\n\nconst SettingsSidebar = () => {\n\tconst { sidebarName, keyboardShortcut, isTemplateMode } = useSelect(\n\t\t( select ) => {\n\t\t\t// The settings sidebar is used by the edit-post/document and edit-post/block sidebars.\n\t\t\t// sidebarName represents the sidebar that is active or that should be active when the SettingsSidebar toggle button is pressed.\n\t\t\t// If one of the two sidebars is active the component will contain the content of that sidebar.\n\t\t\t// When neither of the the two sidebars is active we can not simply return null, because the PluginSidebarEditPost\n\t\t\t// component, besides being used to render the sidebar, also renders the toggle button. In that case sidebarName\n\t\t\t// should contain the sidebar that will be active when the toggle button is pressed. If a block\n\t\t\t// is selected, that should be edit-post/block otherwise it's edit-post/document.\n\t\t\tlet sidebar = select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditPostStore.name\n\t\t\t);\n\t\t\tif (\n\t\t\t\t! [ 'edit-post/document', 'edit-post/block' ].includes(\n\t\t\t\t\tsidebar\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tif ( select( blockEditorStore ).getBlockSelectionStart() ) {\n\t\t\t\t\tsidebar = 'edit-post/block';\n\t\t\t\t}\n\t\t\t\tsidebar = 'edit-post/document';\n\t\t\t}\n\t\t\tconst shortcut = select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getShortcutRepresentation( 'core/edit-post/toggle-sidebar' );\n\t\t\treturn {\n\t\t\t\tsidebarName: sidebar,\n\t\t\t\tkeyboardShortcut: shortcut,\n\t\t\t\tisTemplateMode: select( editPostStore ).isEditingTemplate(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\treturn (\n\t\t<PluginSidebarEditPost\n\t\t\tidentifier={ sidebarName }\n\t\t\theader={ <SettingsHeader sidebarName={ sidebarName } /> }\n\t\t\tcloseLabel={ __( 'Close settings' ) }\n\t\t\theaderClassName=\"edit-post-sidebar__panel-tabs\"\n\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\ttitle={ __( 'Settings' ) }\n\t\t\ttoggleShortcut={ keyboardShortcut }\n\t\t\ticon={ cog }\n\t\t\tisActiveByDefault={ SIDEBAR_ACTIVE_BY_DEFAULT }\n\t\t>\n\t\t\t{ ! isTemplateMode && sidebarName === 'edit-post/document' && (\n\t\t\t\t<>\n\t\t\t\t\t<PostStatus />\n\t\t\t\t\t<PluginDocumentSettingPanel.Slot />\n\t\t\t\t\t<LastRevision />\n\t\t\t\t\t<PostLink />\n\t\t\t\t\t<PostTaxonomies />\n\t\t\t\t\t<FeaturedImage />\n\t\t\t\t\t<PostExcerpt />\n\t\t\t\t\t<DiscussionPanel />\n\t\t\t\t\t<PageAttributes />\n\t\t\t\t\t<MetaBoxes location=\"side\" />\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ isTemplateMode && sidebarName === 'edit-post/document' && (\n\t\t\t\t<TemplateSummary />\n\t\t\t) }\n\t\t\t{ sidebarName === 'edit-post/block' && <BlockInspector /> }\n\t\t</PluginSidebarEditPost>\n\t);\n};\n\nexport default SettingsSidebar;\n"]}
@@ -28,20 +28,40 @@ var _store = require("../../store");
28
28
  /**
29
29
  * Internal dependencies
30
30
  */
31
- function PatternSelection(_ref) {
32
- let {
33
- onChoosePattern
34
- } = _ref;
31
+ function useStartPatterns() {
32
+ // A pattern is a start pattern if it includes 'core/post-content' in its blockTypes,
33
+ // and it has no postTypes declares and the current post type is page or if
34
+ // the current post type is part of the postTypes declared.
35
35
  const {
36
- blockPatterns
36
+ blockPatternsWithPostContentBlockType,
37
+ postType
37
38
  } = (0, _data.useSelect)(select => {
38
39
  const {
39
40
  __experimentalGetPatternsByBlockTypes
40
41
  } = select(_blockEditor.store);
42
+ const {
43
+ getCurrentPostType
44
+ } = select(_editor.store);
41
45
  return {
42
- blockPatterns: __experimentalGetPatternsByBlockTypes('core/post-content')
46
+ // get pa
47
+ blockPatternsWithPostContentBlockType: __experimentalGetPatternsByBlockTypes('core/post-content'),
48
+ postType: getCurrentPostType()
43
49
  };
44
50
  }, []);
51
+ return (0, _element.useMemo)(() => {
52
+ // filter patterns without postTypes declared if the current postType is page
53
+ // or patterns that declare the current postType in its post type array.
54
+ return blockPatternsWithPostContentBlockType.filter(pattern => {
55
+ return postType === 'page' && !pattern.postTypes || Array.isArray(pattern.postTypes) && pattern.postTypes.includes(postType);
56
+ });
57
+ }, [postType, blockPatternsWithPostContentBlockType]);
58
+ }
59
+
60
+ function PatternSelection(_ref) {
61
+ let {
62
+ onChoosePattern
63
+ } = _ref;
64
+ const blockPatterns = useStartPatterns();
45
65
  const shownBlockPatterns = (0, _compose.useAsyncList)(blockPatterns);
46
66
  const {
47
67
  resetEditorBlocks
@@ -64,16 +84,14 @@ const START_PAGE_MODAL_STATES = {
64
84
 
65
85
  function StartPageOptions() {
66
86
  const [modalState, setModalState] = (0, _element.useState)(START_PAGE_MODAL_STATES.INITIAL);
87
+ const blockPatterns = useStartPatterns();
88
+ const hasStartPattern = blockPatterns.length > 0;
67
89
  const shouldOpenModel = (0, _data.useSelect)(select => {
68
- if (modalState !== START_PAGE_MODAL_STATES.INITIAL) {
90
+ if (!hasStartPattern || modalState !== START_PAGE_MODAL_STATES.INITIAL) {
69
91
  return false;
70
92
  }
71
93
 
72
94
  const {
73
- __experimentalGetPatternsByBlockTypes
74
- } = select(_blockEditor.store);
75
- const {
76
- getCurrentPostType,
77
95
  getEditedPostContent,
78
96
  isEditedPostSaveable
79
97
  } = select(_editor.store);
@@ -81,8 +99,8 @@ function StartPageOptions() {
81
99
  isEditingTemplate,
82
100
  isFeatureActive
83
101
  } = select(_store.store);
84
- return getCurrentPostType() === 'page' && !isEditedPostSaveable() && '' === getEditedPostContent() && !isEditingTemplate() && !isFeatureActive('welcomeGuide') && __experimentalGetPatternsByBlockTypes('core/post-content').length >= 1;
85
- }, [modalState]);
102
+ return !isEditedPostSaveable() && '' === getEditedPostContent() && !isEditingTemplate() && !isFeatureActive('welcomeGuide');
103
+ }, [modalState, hasStartPattern]);
86
104
  (0, _element.useEffect)(() => {
87
105
  if (shouldOpenModel) {
88
106
  setModalState(START_PAGE_MODAL_STATES.PATTERN);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/start-page-options/index.js"],"names":["PatternSelection","onChoosePattern","blockPatterns","select","__experimentalGetPatternsByBlockTypes","blockEditorStore","shownBlockPatterns","resetEditorBlocks","editorStore","_pattern","blocks","START_PAGE_MODAL_STATES","INITIAL","PATTERN","CLOSED","StartPageOptions","modalState","setModalState","shouldOpenModel","getCurrentPostType","getEditedPostContent","isEditedPostSaveable","isEditingTemplate","isFeatureActive","editPostStore","length"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useEffect } from '@wordpress/element';\nimport {\n\tstore as blockEditorStore,\n\t__experimentalBlockPatternsList as BlockPatternsList,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nfunction PatternSelection( { onChoosePattern } ) {\n\tconst { blockPatterns } = useSelect( ( select ) => {\n\t\tconst { __experimentalGetPatternsByBlockTypes } =\n\t\t\tselect( blockEditorStore );\n\t\treturn {\n\t\t\tblockPatterns:\n\t\t\t\t__experimentalGetPatternsByBlockTypes( 'core/post-content' ),\n\t\t};\n\t}, [] );\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\tconst { resetEditorBlocks } = useDispatch( editorStore );\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tblockPatterns={ blockPatterns }\n\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\tonClickPattern={ ( _pattern, blocks ) => {\n\t\t\t\tresetEditorBlocks( blocks );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nconst START_PAGE_MODAL_STATES = {\n\tINITIAL: 'INITIAL',\n\tPATTERN: 'PATTERN',\n\tCLOSED: 'CLOSED',\n};\n\nexport default function StartPageOptions() {\n\tconst [ modalState, setModalState ] = useState(\n\t\tSTART_PAGE_MODAL_STATES.INITIAL\n\t);\n\tconst shouldOpenModel = useSelect(\n\t\t( select ) => {\n\t\t\tif ( modalState !== START_PAGE_MODAL_STATES.INITIAL ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tconst { __experimentalGetPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst {\n\t\t\t\tgetCurrentPostType,\n\t\t\t\tgetEditedPostContent,\n\t\t\t\tisEditedPostSaveable,\n\t\t\t} = select( editorStore );\n\t\t\tconst { isEditingTemplate, isFeatureActive } =\n\t\t\t\tselect( editPostStore );\n\t\t\treturn (\n\t\t\t\tgetCurrentPostType() === 'page' &&\n\t\t\t\t! isEditedPostSaveable() &&\n\t\t\t\t'' === getEditedPostContent() &&\n\t\t\t\t! isEditingTemplate() &&\n\t\t\t\t! isFeatureActive( 'welcomeGuide' ) &&\n\t\t\t\t__experimentalGetPatternsByBlockTypes( 'core/post-content' )\n\t\t\t\t\t.length >= 1\n\t\t\t);\n\t\t},\n\t\t[ modalState ]\n\t);\n\n\tuseEffect( () => {\n\t\tif ( shouldOpenModel ) {\n\t\t\tsetModalState( START_PAGE_MODAL_STATES.PATTERN );\n\t\t}\n\t}, [ shouldOpenModel ] );\n\n\tif (\n\t\tmodalState === START_PAGE_MODAL_STATES.INITIAL ||\n\t\tmodalState === START_PAGE_MODAL_STATES.CLOSED\n\t) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"edit-post-start-page-options__modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\tonRequestClose={ () => {\n\t\t\t\tsetModalState( START_PAGE_MODAL_STATES.CLOSED );\n\t\t\t} }\n\t\t>\n\t\t\t<div className=\"edit-post-start-page-options__modal-content\">\n\t\t\t\t{ modalState === START_PAGE_MODAL_STATES.PATTERN && (\n\t\t\t\t\t<PatternSelection\n\t\t\t\t\t\tonChoosePattern={ () => {\n\t\t\t\t\t\t\tsetModalState( START_PAGE_MODAL_STATES.CLOSED );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/start-page-options/index.js"],"names":["useStartPatterns","blockPatternsWithPostContentBlockType","postType","select","__experimentalGetPatternsByBlockTypes","blockEditorStore","getCurrentPostType","editorStore","filter","pattern","postTypes","Array","isArray","includes","PatternSelection","onChoosePattern","blockPatterns","shownBlockPatterns","resetEditorBlocks","_pattern","blocks","START_PAGE_MODAL_STATES","INITIAL","PATTERN","CLOSED","StartPageOptions","modalState","setModalState","hasStartPattern","length","shouldOpenModel","getEditedPostContent","isEditedPostSaveable","isEditingTemplate","isFeatureActive","editPostStore"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\nimport {\n\tstore as blockEditorStore,\n\t__experimentalBlockPatternsList as BlockPatternsList,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nfunction useStartPatterns() {\n\t// A pattern is a start pattern if it includes 'core/post-content' in its blockTypes,\n\t// and it has no postTypes declares and the current post type is page or if\n\t// the current post type is part of the postTypes declared.\n\tconst { blockPatternsWithPostContentBlockType, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { __experimentalGetPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst { getCurrentPostType } = select( editorStore );\n\t\t\treturn {\n\t\t\t\t// get pa\n\t\t\t\tblockPatternsWithPostContentBlockType:\n\t\t\t\t\t__experimentalGetPatternsByBlockTypes(\n\t\t\t\t\t\t'core/post-content'\n\t\t\t\t\t),\n\t\t\t\tpostType: getCurrentPostType(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\treturn useMemo( () => {\n\t\t// filter patterns without postTypes declared if the current postType is page\n\t\t// or patterns that declare the current postType in its post type array.\n\t\treturn blockPatternsWithPostContentBlockType.filter( ( pattern ) => {\n\t\t\treturn (\n\t\t\t\t( postType === 'page' && ! pattern.postTypes ) ||\n\t\t\t\t( Array.isArray( pattern.postTypes ) &&\n\t\t\t\t\tpattern.postTypes.includes( postType ) )\n\t\t\t);\n\t\t} );\n\t}, [ postType, blockPatternsWithPostContentBlockType ] );\n}\n\nfunction PatternSelection( { onChoosePattern } ) {\n\tconst blockPatterns = useStartPatterns();\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\tconst { resetEditorBlocks } = useDispatch( editorStore );\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tblockPatterns={ blockPatterns }\n\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\tonClickPattern={ ( _pattern, blocks ) => {\n\t\t\t\tresetEditorBlocks( blocks );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nconst START_PAGE_MODAL_STATES = {\n\tINITIAL: 'INITIAL',\n\tPATTERN: 'PATTERN',\n\tCLOSED: 'CLOSED',\n};\n\nexport default function StartPageOptions() {\n\tconst [ modalState, setModalState ] = useState(\n\t\tSTART_PAGE_MODAL_STATES.INITIAL\n\t);\n\tconst blockPatterns = useStartPatterns();\n\tconst hasStartPattern = blockPatterns.length > 0;\n\tconst shouldOpenModel = useSelect(\n\t\t( select ) => {\n\t\t\tif (\n\t\t\t\t! hasStartPattern ||\n\t\t\t\tmodalState !== START_PAGE_MODAL_STATES.INITIAL\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tconst { getEditedPostContent, isEditedPostSaveable } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst { isEditingTemplate, isFeatureActive } =\n\t\t\t\tselect( editPostStore );\n\t\t\treturn (\n\t\t\t\t! isEditedPostSaveable() &&\n\t\t\t\t'' === getEditedPostContent() &&\n\t\t\t\t! isEditingTemplate() &&\n\t\t\t\t! isFeatureActive( 'welcomeGuide' )\n\t\t\t);\n\t\t},\n\t\t[ modalState, hasStartPattern ]\n\t);\n\n\tuseEffect( () => {\n\t\tif ( shouldOpenModel ) {\n\t\t\tsetModalState( START_PAGE_MODAL_STATES.PATTERN );\n\t\t}\n\t}, [ shouldOpenModel ] );\n\n\tif (\n\t\tmodalState === START_PAGE_MODAL_STATES.INITIAL ||\n\t\tmodalState === START_PAGE_MODAL_STATES.CLOSED\n\t) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"edit-post-start-page-options__modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\tonRequestClose={ () => {\n\t\t\t\tsetModalState( START_PAGE_MODAL_STATES.CLOSED );\n\t\t\t} }\n\t\t>\n\t\t\t<div className=\"edit-post-start-page-options__modal-content\">\n\t\t\t\t{ modalState === START_PAGE_MODAL_STATES.PATTERN && (\n\t\t\t\t\t<PatternSelection\n\t\t\t\t\t\tonChoosePattern={ () => {\n\t\t\t\t\t\t\tsetModalState( START_PAGE_MODAL_STATES.CLOSED );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n"]}
package/build/editor.js CHANGED
@@ -137,7 +137,7 @@ function Editor(_ref) {
137
137
  defaultAllowedBlockTypes: settings.allowedBlockTypes
138
138
  }; // Omit hidden block types if exists and non-empty.
139
139
 
140
- if ((0, _lodash.size)(hiddenBlockTypes) > 0) {
140
+ if (hiddenBlockTypes.length > 0) {
141
141
  // Defer to passed setting for `allowedBlockTypes` if provided as
142
142
  // anything other than `true` (where `true` is equivalent to allow
143
143
  // all block types).
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/editor.js"],"names":["Editor","postId","postType","settings","initialEdits","onError","props","hasFixedToolbar","focusMode","hasReducedUI","hasThemeStyles","post","preferredStyleVariations","hiddenBlockTypes","blockTypes","keepCaretInsideBlock","isTemplateMode","template","select","isFeatureActive","__experimentalGetPreviewDeviceType","isEditingTemplate","getEditedPostTemplate","getHiddenBlockTypes","editPostStore","getEntityRecord","getPostType","getEntityRecords","coreStore","getEditorSettings","editorStore","getBlockTypes","blocksStore","isTemplate","includes","postObject","posts","wp_id","supportsTemplateMode","isViewable","viewable","preferencesStore","get","updatePreferredStyleVariations","setIsInserterOpened","editorSettings","result","__experimentalPreferredStyleVariations","value","onChange","__experimentalSetIsInserterOpened","defaultAllowedBlockTypes","allowedBlockTypes","styles","themeStyles","presetStyles","style","__unstableType","push","defaultEditorStyles","length","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { forEach, size, map, without } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tEditorProvider,\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { StrictMode, useMemo } from '@wordpress/element';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport EditorInitialization from './components/editor-initialization';\nimport { store as editPostStore } from './store';\n\nfunction Editor( {\n\tpostId,\n\tpostType,\n\tsettings,\n\tinitialEdits,\n\tonError,\n\t...props\n} ) {\n\tconst {\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thasReducedUI,\n\t\thasThemeStyles,\n\t\tpost,\n\t\tpreferredStyleVariations,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tkeepCaretInsideBlock,\n\t\tisTemplateMode,\n\t\ttemplate,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisFeatureActive,\n\t\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\t\tisEditingTemplate,\n\t\t\t\tgetEditedPostTemplate,\n\t\t\t\tgetHiddenBlockTypes,\n\t\t\t} = select( editPostStore );\n\t\t\tconst { getEntityRecord, getPostType, getEntityRecords } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getEditorSettings } = select( editorStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst isTemplate = [ 'wp_template', 'wp_template_part' ].includes(\n\t\t\t\tpostType\n\t\t\t);\n\t\t\t// Ideally the initializeEditor function should be called using the ID of the REST endpoint.\n\t\t\t// to avoid the special case.\n\t\t\tlet postObject;\n\t\t\tif ( isTemplate ) {\n\t\t\t\tconst posts = getEntityRecords( 'postType', postType, {\n\t\t\t\t\twp_id: postId,\n\t\t\t\t} );\n\t\t\t\tpostObject = posts?.[ 0 ];\n\t\t\t} else {\n\t\t\t\tpostObject = getEntityRecord( 'postType', postType, postId );\n\t\t\t}\n\t\t\tconst supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode;\n\t\t\tconst isViewable = getPostType( postType )?.viewable ?? false;\n\n\t\t\treturn {\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tisFeatureActive( 'fixedToolbar' ) ||\n\t\t\t\t\t__experimentalGetPreviewDeviceType() !== 'Desktop',\n\t\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\t\thasReducedUI: isFeatureActive( 'reducedUI' ),\n\t\t\t\thasThemeStyles: isFeatureActive( 'themeStyles' ),\n\t\t\t\tpreferredStyleVariations: select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'preferredStyleVariations'\n\t\t\t\t),\n\t\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tkeepCaretInsideBlock: isFeatureActive( 'keepCaretInsideBlock' ),\n\t\t\t\tisTemplateMode: isEditingTemplate(),\n\t\t\t\ttemplate:\n\t\t\t\t\tsupportsTemplateMode && isViewable\n\t\t\t\t\t\t? getEditedPostTemplate()\n\t\t\t\t\t\t: null,\n\t\t\t\tpost: postObject,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst { updatePreferredStyleVariations, setIsInserterOpened } =\n\t\tuseDispatch( editPostStore );\n\n\tconst editorSettings = useMemo( () => {\n\t\tconst result = {\n\t\t\t...settings,\n\t\t\t__experimentalPreferredStyleVariations: {\n\t\t\t\tvalue: preferredStyleVariations,\n\t\t\t\tonChange: updatePreferredStyleVariations,\n\t\t\t},\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\thasReducedUI,\n\n\t\t\t// This is marked as experimental to give time for the quick inserter to mature.\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t\tkeepCaretInsideBlock,\n\t\t\t// Keep a reference of the `allowedBlockTypes` from the server to handle use cases\n\t\t\t// where we need to differentiate if a block is disabled by the user or some plugin.\n\t\t\tdefaultAllowedBlockTypes: settings.allowedBlockTypes,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( size( hiddenBlockTypes ) > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? map( blockTypes, 'name' )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\tresult.allowedBlockTypes = without(\n\t\t\t\tdefaultAllowedBlockTypes,\n\t\t\t\t...hiddenBlockTypes\n\t\t\t);\n\t\t}\n\n\t\treturn result;\n\t}, [\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thasReducedUI,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tpreferredStyleVariations,\n\t\tsetIsInserterOpened,\n\t\tupdatePreferredStyleVariations,\n\t\tkeepCaretInsideBlock,\n\t] );\n\n\tconst styles = useMemo( () => {\n\t\tconst themeStyles = [];\n\t\tconst presetStyles = [];\n\t\tforEach( settings.styles, ( style ) => {\n\t\t\tif ( ! style.__unstableType || style.__unstableType === 'theme' ) {\n\t\t\t\tthemeStyles.push( style );\n\t\t\t} else {\n\t\t\t\tpresetStyles.push( style );\n\t\t\t}\n\t\t} );\n\t\tconst defaultEditorStyles = [\n\t\t\t...settings.defaultEditorStyles,\n\t\t\t...presetStyles,\n\t\t];\n\t\treturn hasThemeStyles && themeStyles.length\n\t\t\t? settings.styles\n\t\t\t: defaultEditorStyles;\n\t}, [ settings, hasThemeStyles ] );\n\n\tif ( ! post ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StrictMode>\n\t\t\t<ShortcutProvider>\n\t\t\t\t<SlotFillProvider>\n\t\t\t\t\t<EditorProvider\n\t\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\t\tpost={ post }\n\t\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t\t__unstableTemplate={\n\t\t\t\t\t\t\tisTemplateMode ? template : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ErrorBoundary onError={ onError }>\n\t\t\t\t\t\t\t<EditorInitialization postId={ postId } />\n\t\t\t\t\t\t\t<Layout styles={ styles } />\n\t\t\t\t\t\t</ErrorBoundary>\n\t\t\t\t\t\t<PostLockedModal />\n\t\t\t\t\t</EditorProvider>\n\t\t\t\t</SlotFillProvider>\n\t\t\t</ShortcutProvider>\n\t\t</StrictMode>\n\t);\n}\n\nexport default Editor;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/editor.js"],"names":["Editor","postId","postType","settings","initialEdits","onError","props","hasFixedToolbar","focusMode","hasReducedUI","hasThemeStyles","post","preferredStyleVariations","hiddenBlockTypes","blockTypes","keepCaretInsideBlock","isTemplateMode","template","select","isFeatureActive","__experimentalGetPreviewDeviceType","isEditingTemplate","getEditedPostTemplate","getHiddenBlockTypes","editPostStore","getEntityRecord","getPostType","getEntityRecords","coreStore","getEditorSettings","editorStore","getBlockTypes","blocksStore","isTemplate","includes","postObject","posts","wp_id","supportsTemplateMode","isViewable","viewable","preferencesStore","get","updatePreferredStyleVariations","setIsInserterOpened","editorSettings","result","__experimentalPreferredStyleVariations","value","onChange","__experimentalSetIsInserterOpened","defaultAllowedBlockTypes","allowedBlockTypes","length","styles","themeStyles","presetStyles","style","__unstableType","push","defaultEditorStyles","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { forEach, map, without } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tEditorProvider,\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { StrictMode, useMemo } from '@wordpress/element';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport EditorInitialization from './components/editor-initialization';\nimport { store as editPostStore } from './store';\n\nfunction Editor( {\n\tpostId,\n\tpostType,\n\tsettings,\n\tinitialEdits,\n\tonError,\n\t...props\n} ) {\n\tconst {\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thasReducedUI,\n\t\thasThemeStyles,\n\t\tpost,\n\t\tpreferredStyleVariations,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tkeepCaretInsideBlock,\n\t\tisTemplateMode,\n\t\ttemplate,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisFeatureActive,\n\t\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\t\tisEditingTemplate,\n\t\t\t\tgetEditedPostTemplate,\n\t\t\t\tgetHiddenBlockTypes,\n\t\t\t} = select( editPostStore );\n\t\t\tconst { getEntityRecord, getPostType, getEntityRecords } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getEditorSettings } = select( editorStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst isTemplate = [ 'wp_template', 'wp_template_part' ].includes(\n\t\t\t\tpostType\n\t\t\t);\n\t\t\t// Ideally the initializeEditor function should be called using the ID of the REST endpoint.\n\t\t\t// to avoid the special case.\n\t\t\tlet postObject;\n\t\t\tif ( isTemplate ) {\n\t\t\t\tconst posts = getEntityRecords( 'postType', postType, {\n\t\t\t\t\twp_id: postId,\n\t\t\t\t} );\n\t\t\t\tpostObject = posts?.[ 0 ];\n\t\t\t} else {\n\t\t\t\tpostObject = getEntityRecord( 'postType', postType, postId );\n\t\t\t}\n\t\t\tconst supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode;\n\t\t\tconst isViewable = getPostType( postType )?.viewable ?? false;\n\n\t\t\treturn {\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tisFeatureActive( 'fixedToolbar' ) ||\n\t\t\t\t\t__experimentalGetPreviewDeviceType() !== 'Desktop',\n\t\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\t\thasReducedUI: isFeatureActive( 'reducedUI' ),\n\t\t\t\thasThemeStyles: isFeatureActive( 'themeStyles' ),\n\t\t\t\tpreferredStyleVariations: select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'preferredStyleVariations'\n\t\t\t\t),\n\t\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tkeepCaretInsideBlock: isFeatureActive( 'keepCaretInsideBlock' ),\n\t\t\t\tisTemplateMode: isEditingTemplate(),\n\t\t\t\ttemplate:\n\t\t\t\t\tsupportsTemplateMode && isViewable\n\t\t\t\t\t\t? getEditedPostTemplate()\n\t\t\t\t\t\t: null,\n\t\t\t\tpost: postObject,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst { updatePreferredStyleVariations, setIsInserterOpened } =\n\t\tuseDispatch( editPostStore );\n\n\tconst editorSettings = useMemo( () => {\n\t\tconst result = {\n\t\t\t...settings,\n\t\t\t__experimentalPreferredStyleVariations: {\n\t\t\t\tvalue: preferredStyleVariations,\n\t\t\t\tonChange: updatePreferredStyleVariations,\n\t\t\t},\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\thasReducedUI,\n\n\t\t\t// This is marked as experimental to give time for the quick inserter to mature.\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t\tkeepCaretInsideBlock,\n\t\t\t// Keep a reference of the `allowedBlockTypes` from the server to handle use cases\n\t\t\t// where we need to differentiate if a block is disabled by the user or some plugin.\n\t\t\tdefaultAllowedBlockTypes: settings.allowedBlockTypes,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes.length > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? map( blockTypes, 'name' )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\tresult.allowedBlockTypes = without(\n\t\t\t\tdefaultAllowedBlockTypes,\n\t\t\t\t...hiddenBlockTypes\n\t\t\t);\n\t\t}\n\n\t\treturn result;\n\t}, [\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thasReducedUI,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tpreferredStyleVariations,\n\t\tsetIsInserterOpened,\n\t\tupdatePreferredStyleVariations,\n\t\tkeepCaretInsideBlock,\n\t] );\n\n\tconst styles = useMemo( () => {\n\t\tconst themeStyles = [];\n\t\tconst presetStyles = [];\n\t\tforEach( settings.styles, ( style ) => {\n\t\t\tif ( ! style.__unstableType || style.__unstableType === 'theme' ) {\n\t\t\t\tthemeStyles.push( style );\n\t\t\t} else {\n\t\t\t\tpresetStyles.push( style );\n\t\t\t}\n\t\t} );\n\t\tconst defaultEditorStyles = [\n\t\t\t...settings.defaultEditorStyles,\n\t\t\t...presetStyles,\n\t\t];\n\t\treturn hasThemeStyles && themeStyles.length\n\t\t\t? settings.styles\n\t\t\t: defaultEditorStyles;\n\t}, [ settings, hasThemeStyles ] );\n\n\tif ( ! post ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StrictMode>\n\t\t\t<ShortcutProvider>\n\t\t\t\t<SlotFillProvider>\n\t\t\t\t\t<EditorProvider\n\t\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\t\tpost={ post }\n\t\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t\t__unstableTemplate={\n\t\t\t\t\t\t\tisTemplateMode ? template : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ErrorBoundary onError={ onError }>\n\t\t\t\t\t\t\t<EditorInitialization postId={ postId } />\n\t\t\t\t\t\t\t<Layout styles={ styles } />\n\t\t\t\t\t\t</ErrorBoundary>\n\t\t\t\t\t\t<PostLockedModal />\n\t\t\t\t\t</EditorProvider>\n\t\t\t\t</SlotFillProvider>\n\t\t\t</ShortcutProvider>\n\t\t</StrictMode>\n\t);\n}\n\nexport default Editor;\n"]}
@@ -74,7 +74,7 @@ class Editor extends _element.Component {
74
74
  focusMode
75
75
  }; // Omit hidden block types if exists and non-empty.
76
76
 
77
- if ((0, _lodash.size)(hiddenBlockTypes) > 0) {
77
+ if (hiddenBlockTypes.length > 0) {
78
78
  if (settings.allowedBlockTypes === undefined) {
79
79
  // If no specific flags for allowedBlockTypes are set, assume `true`
80
80
  // meaning allow all block types.
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/editor.native.js"],"names":["Editor","Component","constructor","props","arguments","galleryWithImageBlocks","window","wp","galleryBlockV2Enabled","initialHtmlModeEnabled","mode","switchEditorMode","getEditorSettings","maxSize","setTitleRef","bind","settings","hasFixedToolbar","focusMode","hiddenBlockTypes","blockTypes","isRTL","I18nManager","allowedBlockTypes","undefined","defaultAllowedBlockTypes","componentDidMount","editEntityRecord","postType","postId","subscriptionParentSetFocusOnTitle","postTitleRef","focus","focusTitleWhenAvailable","subscriptionParentFeaturedImageIdNativeUpdated","payload","featured_media","featuredImageId","undoIgnore","componentWillUnmount","remove","subscribeFeaturedImageIdNativeUpdated","titleRef","render","initialEdits","post","initialHtml","editorSettings","normalizedPost","id","title","raw","initialTitle","content","type","status","meta","select","isFeatureActive","getEditorMode","__experimentalGetPreviewDeviceType","getHiddenBlockTypes","editPostStore","getBlockTypes","blocksStore","dispatch","coreStore"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport memize from 'memize';\nimport { size, map, without } from 'lodash';\nimport { I18nManager } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { EditorProvider } from '@wordpress/editor';\nimport { parse, serialize, store as blocksStore } from '@wordpress/blocks';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport {\n\tsubscribeSetFocusOnTitle,\n\tsubscribeFeaturedImageIdNativeUpdated,\n} from '@wordpress/react-native-bridge';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport { store as editPostStore } from './store';\n\nclass Editor extends Component {\n\tconstructor( props ) {\n\t\tsuper( ...arguments );\n\n\t\t// need to set this globally to avoid race with deprecations\n\t\t// defaulting to true to avoid issues with a not-yet-cached value\n\t\tconst { galleryWithImageBlocks = true } = props;\n\t\twindow.wp.galleryBlockV2Enabled = galleryWithImageBlocks;\n\n\t\tif ( props.initialHtmlModeEnabled && props.mode === 'visual' ) {\n\t\t\t// Enable html mode if the initial mode the parent wants it but we're not already in it.\n\t\t\tthis.props.switchEditorMode( 'text' );\n\t\t}\n\n\t\tthis.getEditorSettings = memize( this.getEditorSettings, {\n\t\t\tmaxSize: 1,\n\t\t} );\n\n\t\tthis.setTitleRef = this.setTitleRef.bind( this );\n\t}\n\n\tgetEditorSettings(\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thiddenBlockTypes,\n\t\tblockTypes\n\t) {\n\t\tsettings = {\n\t\t\t...settings,\n\t\t\tisRTL: I18nManager.isRTL,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( size( hiddenBlockTypes ) > 0 ) {\n\t\t\tif ( settings.allowedBlockTypes === undefined ) {\n\t\t\t\t// If no specific flags for allowedBlockTypes are set, assume `true`\n\t\t\t\t// meaning allow all block types.\n\t\t\t\tsettings.allowedBlockTypes = true;\n\t\t\t}\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? map( blockTypes, 'name' )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\tsettings.allowedBlockTypes = without(\n\t\t\t\tdefaultAllowedBlockTypes,\n\t\t\t\t...hiddenBlockTypes\n\t\t\t);\n\t\t}\n\n\t\treturn settings;\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { editEntityRecord, postType, postId } = this.props;\n\n\t\tthis.subscriptionParentSetFocusOnTitle = subscribeSetFocusOnTitle(\n\t\t\t() => {\n\t\t\t\tif ( this.postTitleRef ) {\n\t\t\t\t\tthis.postTitleRef.focus();\n\t\t\t\t} else {\n\t\t\t\t\t// If the post title ref is not available, we postpone setting focus to when it's available.\n\t\t\t\t\tthis.focusTitleWhenAvailable = true;\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tthis.subscriptionParentFeaturedImageIdNativeUpdated =\n\t\t\tsubscribeFeaturedImageIdNativeUpdated( ( payload ) => {\n\t\t\t\teditEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId,\n\t\t\t\t\t{ featured_media: payload.featuredImageId },\n\t\t\t\t\t{\n\t\t\t\t\t\tundoIgnore: true,\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.subscriptionParentSetFocusOnTitle ) {\n\t\t\tthis.subscriptionParentSetFocusOnTitle.remove();\n\t\t}\n\n\t\tif ( this.subscribeFeaturedImageIdNativeUpdated ) {\n\t\t\tthis.subscribeFeaturedImageIdNativeUpdated.remove();\n\t\t}\n\t}\n\n\tsetTitleRef( titleRef ) {\n\t\tif ( this.focusTitleWhenAvailable && ! this.postTitleRef ) {\n\t\t\tthis.focusTitleWhenAvailable = false;\n\t\t\ttitleRef.focus();\n\t\t}\n\n\t\tthis.postTitleRef = titleRef;\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tsettings,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\tinitialEdits,\n\t\t\thiddenBlockTypes,\n\t\t\tblockTypes,\n\t\t\tpost,\n\t\t\tpostId,\n\t\t\tpostType,\n\t\t\tfeaturedImageId,\n\t\t\tinitialHtml,\n\t\t\t...props\n\t\t} = this.props;\n\n\t\tconst editorSettings = this.getEditorSettings(\n\t\t\tsettings,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\thiddenBlockTypes,\n\t\t\tblockTypes\n\t\t);\n\n\t\tconst normalizedPost = post || {\n\t\t\tid: postId,\n\t\t\ttitle: {\n\t\t\t\traw: props.initialTitle || '',\n\t\t\t},\n\t\t\tfeatured_media: featuredImageId,\n\t\t\tcontent: {\n\t\t\t\t// Make sure the post content is in sync with gutenberg store\n\t\t\t\t// to avoid marking the post as modified when simply loaded\n\t\t\t\t// For now, let's assume: serialize( parse( html ) ) !== html.\n\t\t\t\traw: serialize( parse( initialHtml || '' ) ),\n\t\t\t},\n\t\t\ttype: postType,\n\t\t\tstatus: 'draft',\n\t\t\tmeta: [],\n\t\t};\n\n\t\treturn (\n\t\t\t<SlotFillProvider>\n\t\t\t\t<EditorProvider\n\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\tpost={ normalizedPost }\n\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t<Layout setTitleRef={ this.setTitleRef } />\n\t\t\t\t</EditorProvider>\n\t\t\t</SlotFillProvider>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tgetEditorMode,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\tgetHiddenBlockTypes,\n\t\t} = select( editPostStore );\n\t\tconst { getBlockTypes } = select( blocksStore );\n\n\t\treturn {\n\t\t\thasFixedToolbar:\n\t\t\t\tisFeatureActive( 'fixedToolbar' ) ||\n\t\t\t\t__experimentalGetPreviewDeviceType() !== 'Desktop',\n\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\tmode: getEditorMode(),\n\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\tblockTypes: getBlockTypes(),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { switchEditorMode } = dispatch( editPostStore );\n\t\tconst { editEntityRecord } = dispatch( coreStore );\n\t\treturn {\n\t\t\tswitchEditorMode,\n\t\t\teditEntityRecord,\n\t\t};\n\t} ),\n] )( Editor );\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/editor.native.js"],"names":["Editor","Component","constructor","props","arguments","galleryWithImageBlocks","window","wp","galleryBlockV2Enabled","initialHtmlModeEnabled","mode","switchEditorMode","getEditorSettings","maxSize","setTitleRef","bind","settings","hasFixedToolbar","focusMode","hiddenBlockTypes","blockTypes","isRTL","I18nManager","length","allowedBlockTypes","undefined","defaultAllowedBlockTypes","componentDidMount","editEntityRecord","postType","postId","subscriptionParentSetFocusOnTitle","postTitleRef","focus","focusTitleWhenAvailable","subscriptionParentFeaturedImageIdNativeUpdated","payload","featured_media","featuredImageId","undoIgnore","componentWillUnmount","remove","subscribeFeaturedImageIdNativeUpdated","titleRef","render","initialEdits","post","initialHtml","editorSettings","normalizedPost","id","title","raw","initialTitle","content","type","status","meta","select","isFeatureActive","getEditorMode","__experimentalGetPreviewDeviceType","getHiddenBlockTypes","editPostStore","getBlockTypes","blocksStore","dispatch","coreStore"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport memize from 'memize';\nimport { map, without } from 'lodash';\nimport { I18nManager } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { EditorProvider } from '@wordpress/editor';\nimport { parse, serialize, store as blocksStore } from '@wordpress/blocks';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport {\n\tsubscribeSetFocusOnTitle,\n\tsubscribeFeaturedImageIdNativeUpdated,\n} from '@wordpress/react-native-bridge';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport { store as editPostStore } from './store';\n\nclass Editor extends Component {\n\tconstructor( props ) {\n\t\tsuper( ...arguments );\n\n\t\t// need to set this globally to avoid race with deprecations\n\t\t// defaulting to true to avoid issues with a not-yet-cached value\n\t\tconst { galleryWithImageBlocks = true } = props;\n\t\twindow.wp.galleryBlockV2Enabled = galleryWithImageBlocks;\n\n\t\tif ( props.initialHtmlModeEnabled && props.mode === 'visual' ) {\n\t\t\t// Enable html mode if the initial mode the parent wants it but we're not already in it.\n\t\t\tthis.props.switchEditorMode( 'text' );\n\t\t}\n\n\t\tthis.getEditorSettings = memize( this.getEditorSettings, {\n\t\t\tmaxSize: 1,\n\t\t} );\n\n\t\tthis.setTitleRef = this.setTitleRef.bind( this );\n\t}\n\n\tgetEditorSettings(\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thiddenBlockTypes,\n\t\tblockTypes\n\t) {\n\t\tsettings = {\n\t\t\t...settings,\n\t\t\tisRTL: I18nManager.isRTL,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes.length > 0 ) {\n\t\t\tif ( settings.allowedBlockTypes === undefined ) {\n\t\t\t\t// If no specific flags for allowedBlockTypes are set, assume `true`\n\t\t\t\t// meaning allow all block types.\n\t\t\t\tsettings.allowedBlockTypes = true;\n\t\t\t}\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? map( blockTypes, 'name' )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\tsettings.allowedBlockTypes = without(\n\t\t\t\tdefaultAllowedBlockTypes,\n\t\t\t\t...hiddenBlockTypes\n\t\t\t);\n\t\t}\n\n\t\treturn settings;\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { editEntityRecord, postType, postId } = this.props;\n\n\t\tthis.subscriptionParentSetFocusOnTitle = subscribeSetFocusOnTitle(\n\t\t\t() => {\n\t\t\t\tif ( this.postTitleRef ) {\n\t\t\t\t\tthis.postTitleRef.focus();\n\t\t\t\t} else {\n\t\t\t\t\t// If the post title ref is not available, we postpone setting focus to when it's available.\n\t\t\t\t\tthis.focusTitleWhenAvailable = true;\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tthis.subscriptionParentFeaturedImageIdNativeUpdated =\n\t\t\tsubscribeFeaturedImageIdNativeUpdated( ( payload ) => {\n\t\t\t\teditEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId,\n\t\t\t\t\t{ featured_media: payload.featuredImageId },\n\t\t\t\t\t{\n\t\t\t\t\t\tundoIgnore: true,\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.subscriptionParentSetFocusOnTitle ) {\n\t\t\tthis.subscriptionParentSetFocusOnTitle.remove();\n\t\t}\n\n\t\tif ( this.subscribeFeaturedImageIdNativeUpdated ) {\n\t\t\tthis.subscribeFeaturedImageIdNativeUpdated.remove();\n\t\t}\n\t}\n\n\tsetTitleRef( titleRef ) {\n\t\tif ( this.focusTitleWhenAvailable && ! this.postTitleRef ) {\n\t\t\tthis.focusTitleWhenAvailable = false;\n\t\t\ttitleRef.focus();\n\t\t}\n\n\t\tthis.postTitleRef = titleRef;\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tsettings,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\tinitialEdits,\n\t\t\thiddenBlockTypes,\n\t\t\tblockTypes,\n\t\t\tpost,\n\t\t\tpostId,\n\t\t\tpostType,\n\t\t\tfeaturedImageId,\n\t\t\tinitialHtml,\n\t\t\t...props\n\t\t} = this.props;\n\n\t\tconst editorSettings = this.getEditorSettings(\n\t\t\tsettings,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\thiddenBlockTypes,\n\t\t\tblockTypes\n\t\t);\n\n\t\tconst normalizedPost = post || {\n\t\t\tid: postId,\n\t\t\ttitle: {\n\t\t\t\traw: props.initialTitle || '',\n\t\t\t},\n\t\t\tfeatured_media: featuredImageId,\n\t\t\tcontent: {\n\t\t\t\t// Make sure the post content is in sync with gutenberg store\n\t\t\t\t// to avoid marking the post as modified when simply loaded\n\t\t\t\t// For now, let's assume: serialize( parse( html ) ) !== html.\n\t\t\t\traw: serialize( parse( initialHtml || '' ) ),\n\t\t\t},\n\t\t\ttype: postType,\n\t\t\tstatus: 'draft',\n\t\t\tmeta: [],\n\t\t};\n\n\t\treturn (\n\t\t\t<SlotFillProvider>\n\t\t\t\t<EditorProvider\n\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\tpost={ normalizedPost }\n\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t<Layout setTitleRef={ this.setTitleRef } />\n\t\t\t\t</EditorProvider>\n\t\t\t</SlotFillProvider>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tgetEditorMode,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\tgetHiddenBlockTypes,\n\t\t} = select( editPostStore );\n\t\tconst { getBlockTypes } = select( blocksStore );\n\n\t\treturn {\n\t\t\thasFixedToolbar:\n\t\t\t\tisFeatureActive( 'fixedToolbar' ) ||\n\t\t\t\t__experimentalGetPreviewDeviceType() !== 'Desktop',\n\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\tmode: getEditorMode(),\n\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\tblockTypes: getBlockTypes(),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { switchEditorMode } = dispatch( editPostStore );\n\t\tconst { editEntityRecord } = dispatch( coreStore );\n\t\treturn {\n\t\t\tswitchEditorMode,\n\t\t\teditEntityRecord,\n\t\t};\n\t} ),\n] )( Editor );\n"]}
@@ -28,8 +28,6 @@ exports.isSavingMetaBoxes = isSavingMetaBoxes;
28
28
 
29
29
  var _rememo = _interopRequireDefault(require("rememo"));
30
30
 
31
- var _lodash = require("lodash");
32
-
33
31
  var _data = require("@wordpress/data");
34
32
 
35
33
  var _interface = require("@wordpress/interface");
@@ -75,7 +73,7 @@ const getEditorMode = (0, _data.createRegistrySelector)(select => () => {
75
73
  exports.getEditorMode = getEditorMode;
76
74
  const isEditorSidebarOpened = (0, _data.createRegistrySelector)(select => () => {
77
75
  const activeGeneralSidebar = select(_interface.store).getActiveComplementaryArea('core/edit-post');
78
- return (0, _lodash.includes)(['edit-post/document', 'edit-post/block'], activeGeneralSidebar);
76
+ return ['edit-post/document', 'edit-post/block'].includes(activeGeneralSidebar);
79
77
  });
80
78
  /**
81
79
  * Returns true if the plugin sidebar is opened.
@@ -88,7 +86,7 @@ const isEditorSidebarOpened = (0, _data.createRegistrySelector)(select => () =>
88
86
  exports.isEditorSidebarOpened = isEditorSidebarOpened;
89
87
  const isPluginSidebarOpened = (0, _data.createRegistrySelector)(select => () => {
90
88
  const activeGeneralSidebar = select(_interface.store).getActiveComplementaryArea('core/edit-post');
91
- return !!activeGeneralSidebar && !(0, _lodash.includes)(['edit-post/document', 'edit-post/block'], activeGeneralSidebar);
89
+ return !!activeGeneralSidebar && !['edit-post/document', 'edit-post/block'].includes(activeGeneralSidebar);
92
90
  });
93
91
  /**
94
92
  * Returns the current active general sidebar name, or null if there is no
@@ -249,7 +247,7 @@ function isPublishSidebarOpened(state) {
249
247
 
250
248
 
251
249
  function isEditorPanelRemoved(state, panelName) {
252
- return (0, _lodash.includes)(state.removedPanels, panelName);
250
+ return state.removedPanels.includes(panelName);
253
251
  }
254
252
  /**
255
253
  * Returns true if the given panel is enabled, or false otherwise. Panels are
@@ -346,12 +344,14 @@ const getActiveMetaBoxLocations = (0, _rememo.default)(state => {
346
344
  exports.getActiveMetaBoxLocations = getActiveMetaBoxLocations;
347
345
 
348
346
  function isMetaBoxLocationVisible(state, location) {
349
- return isMetaBoxLocationActive(state, location) && (0, _lodash.some)(getMetaBoxesPerLocation(state, location), _ref2 => {
347
+ var _getMetaBoxesPerLocat;
348
+
349
+ return isMetaBoxLocationActive(state, location) && ((_getMetaBoxesPerLocat = getMetaBoxesPerLocation(state, location)) === null || _getMetaBoxesPerLocat === void 0 ? void 0 : _getMetaBoxesPerLocat.some(_ref2 => {
350
350
  let {
351
351
  id
352
352
  } = _ref2;
353
353
  return isEditorPanelEnabled(state, `meta-box-${id}`);
354
- });
354
+ }));
355
355
  }
356
356
  /**
357
357
  * Returns true if there is an active meta box in the given location, or false
@@ -391,7 +391,7 @@ function getMetaBoxesPerLocation(state, location) {
391
391
 
392
392
 
393
393
  const getAllMetaBoxes = (0, _rememo.default)(state => {
394
- return (0, _lodash.flatten)((0, _lodash.values)(state.metaBoxes.locations));
394
+ return Object.values(state.metaBoxes.locations).flat();
395
395
  }, state => [state.metaBoxes.locations]);
396
396
  /**
397
397
  * Returns true if the post is using Meta Boxes
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/store/selectors.js"],"names":["EMPTY_ARRAY","EMPTY_OBJECT","getEditorMode","select","preferencesStore","get","isEditorSidebarOpened","activeGeneralSidebar","interfaceStore","getActiveComplementaryArea","isPluginSidebarOpened","getActiveGeneralSidebarName","convertPanelsToOldFormat","inactivePanels","openPanels","panelsWithEnabledState","reduce","accumulatedPanels","panelName","enabled","panels","currentPanelState","opened","getPreferences","since","alternative","preferences","accumulatedPrefs","preferenceKey","value","getPreference","state","defaultValue","undefined","getHiddenBlockTypes","isPublishSidebarOpened","publishSidebarActive","isEditorPanelRemoved","removedPanels","isEditorPanelEnabled","includes","isEditorPanelOpened","isModalActive","modalName","activeModal","isFeatureActive","feature","isPluginItemPinned","pluginName","isItemPinned","getActiveMetaBoxLocations","Object","keys","metaBoxes","locations","filter","location","isMetaBoxLocationActive","isMetaBoxLocationVisible","getMetaBoxesPerLocation","id","length","getAllMetaBoxes","hasMetaBoxes","isSavingMetaBoxes","isSaving","__experimentalGetPreviewDeviceType","deviceType","isInserterOpened","blockInserterPanel","__experimentalGetInsertionPoint","rootClientId","insertionIndex","filterValue","isListViewOpened","listViewPanel","isEditingTemplate","areMetaBoxesInitialized","initialized","getEditedPostTemplate","currentTemplate","editorStore","getEditedPostAttribute","templateWithSameSlug","coreStore","getEntityRecords","per_page","find","template","slug","getEditedEntityRecord","post","getCurrentPost","link","__experimentalGetTemplateForLink"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport createSelector from 'rememo';\nimport { includes, some, flatten, values } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createRegistrySelector } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport deprecated from '@wordpress/deprecated';\n\nconst EMPTY_ARRAY = [];\nconst EMPTY_OBJECT = {};\n\n/**\n * Returns the current editing mode.\n *\n * @param {Object} state Global application state.\n *\n * @return {string} Editing mode.\n */\nexport const getEditorMode = createRegistrySelector(\n\t( select ) => () =>\n\t\tselect( preferencesStore ).get( 'core/edit-post', 'editorMode' ) ??\n\t\t'visual'\n);\n\n/**\n * Returns true if the editor sidebar is opened.\n *\n * @param {Object} state Global application state\n *\n * @return {boolean} Whether the editor sidebar is opened.\n */\nexport const isEditorSidebarOpened = createRegistrySelector(\n\t( select ) => () => {\n\t\tconst activeGeneralSidebar =\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\t'core/edit-post'\n\t\t\t);\n\t\treturn includes(\n\t\t\t[ 'edit-post/document', 'edit-post/block' ],\n\t\t\tactiveGeneralSidebar\n\t\t);\n\t}\n);\n\n/**\n * Returns true if the plugin sidebar is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the plugin sidebar is opened.\n */\nexport const isPluginSidebarOpened = createRegistrySelector(\n\t( select ) => () => {\n\t\tconst activeGeneralSidebar =\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\t'core/edit-post'\n\t\t\t);\n\t\treturn (\n\t\t\t!! activeGeneralSidebar &&\n\t\t\t! includes(\n\t\t\t\t[ 'edit-post/document', 'edit-post/block' ],\n\t\t\t\tactiveGeneralSidebar\n\t\t\t)\n\t\t);\n\t}\n);\n\n/**\n * Returns the current active general sidebar name, or null if there is no\n * general sidebar active. The active general sidebar is a unique name to\n * identify either an editor or plugin sidebar.\n *\n * Examples:\n *\n * - `edit-post/document`\n * - `my-plugin/insert-image-sidebar`\n *\n * @param {Object} state Global application state.\n *\n * @return {?string} Active general sidebar name.\n */\nexport const getActiveGeneralSidebarName = createRegistrySelector(\n\t( select ) => () => {\n\t\treturn select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t'core/edit-post'\n\t\t);\n\t}\n);\n\n/**\n * Converts panels from the new preferences store format to the old format\n * that the post editor previously used.\n *\n * The resultant converted data should look like this:\n * {\n * panelName: {\n * enabled: false,\n * opened: true,\n * },\n * anotherPanelName: {\n * opened: true\n * },\n * }\n *\n * @param {string[] | undefined} inactivePanels An array of inactive panel names.\n * @param {string[] | undefined} openPanels An array of open panel names.\n *\n * @return {Object} The converted panel data.\n */\nfunction convertPanelsToOldFormat( inactivePanels, openPanels ) {\n\t// First reduce the inactive panels.\n\tconst panelsWithEnabledState = inactivePanels?.reduce(\n\t\t( accumulatedPanels, panelName ) => ( {\n\t\t\t...accumulatedPanels,\n\t\t\t[ panelName ]: {\n\t\t\t\tenabled: false,\n\t\t\t},\n\t\t} ),\n\t\t{}\n\t);\n\n\t// Then reduce the open panels, passing in the result of the previous\n\t// reduction as the initial value so that both open and inactive\n\t// panel state is combined.\n\tconst panels = openPanels?.reduce( ( accumulatedPanels, panelName ) => {\n\t\tconst currentPanelState = accumulatedPanels?.[ panelName ];\n\t\treturn {\n\t\t\t...accumulatedPanels,\n\t\t\t[ panelName ]: {\n\t\t\t\t...currentPanelState,\n\t\t\t\topened: true,\n\t\t\t},\n\t\t};\n\t}, panelsWithEnabledState ?? {} );\n\n\t// The panels variable will only be set if openPanels wasn't `undefined`.\n\t// If it isn't set just return `panelsWithEnabledState`, and if that isn't\n\t// set return an empty object.\n\treturn panels ?? panelsWithEnabledState ?? EMPTY_OBJECT;\n}\n\n/**\n * Returns the preferences (these preferences are persisted locally).\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} Preferences Object.\n */\nexport const getPreferences = createRegistrySelector( ( select ) => () => {\n\tdeprecated( `select( 'core/edit-post' ).getPreferences`, {\n\t\tsince: '6.0',\n\t\talternative: `select( 'core/preferences' ).get`,\n\t} );\n\n\t// These preferences now exist in the preferences store.\n\t// Fetch them so that they can be merged into the post\n\t// editor preferences.\n\tconst preferences = [\n\t\t'hiddenBlockTypes',\n\t\t'editorMode',\n\t\t'preferredStyleVariations',\n\t].reduce( ( accumulatedPrefs, preferenceKey ) => {\n\t\tconst value = select( preferencesStore ).get(\n\t\t\t'core/edit-post',\n\t\t\tpreferenceKey\n\t\t);\n\n\t\treturn {\n\t\t\t...accumulatedPrefs,\n\t\t\t[ preferenceKey ]: value,\n\t\t};\n\t}, {} );\n\n\t// Panels were a preference, but the data structure changed when the state\n\t// was migrated to the preferences store. They need to be converted from\n\t// the new preferences store format to old format to ensure no breaking\n\t// changes for plugins.\n\tconst inactivePanels = select( preferencesStore ).get(\n\t\t'core/edit-post',\n\t\t'inactivePanels'\n\t);\n\tconst openPanels = select( preferencesStore ).get(\n\t\t'core/edit-post',\n\t\t'openPanels'\n\t);\n\tconst panels = convertPanelsToOldFormat( inactivePanels, openPanels );\n\n\treturn {\n\t\t...preferences,\n\t\tpanels,\n\t};\n} );\n\n/**\n *\n * @param {Object} state Global application state.\n * @param {string} preferenceKey Preference Key.\n * @param {*} defaultValue Default Value.\n *\n * @return {*} Preference Value.\n */\nexport function getPreference( state, preferenceKey, defaultValue ) {\n\tdeprecated( `select( 'core/edit-post' ).getPreference`, {\n\t\tsince: '6.0',\n\t\talternative: `select( 'core/preferences' ).get`,\n\t} );\n\n\t// Avoid using the `getPreferences` registry selector where possible.\n\tconst preferences = getPreferences( state );\n\tconst value = preferences[ preferenceKey ];\n\treturn value === undefined ? defaultValue : value;\n}\n\n/**\n * Returns an array of blocks that are hidden.\n *\n * @return {Array} A list of the hidden block types\n */\nexport const getHiddenBlockTypes = createRegistrySelector( ( select ) => () => {\n\treturn (\n\t\tselect( preferencesStore ).get(\n\t\t\t'core/edit-post',\n\t\t\t'hiddenBlockTypes'\n\t\t) ?? EMPTY_ARRAY\n\t);\n} );\n\n/**\n * Returns true if the publish sidebar is opened.\n *\n * @param {Object} state Global application state\n *\n * @return {boolean} Whether the publish sidebar is open.\n */\nexport function isPublishSidebarOpened( state ) {\n\treturn state.publishSidebarActive;\n}\n\n/**\n * Returns true if the given panel was programmatically removed, or false otherwise.\n * All panels are not removed by default.\n *\n * @param {Object} state Global application state.\n * @param {string} panelName A string that identifies the panel.\n *\n * @return {boolean} Whether or not the panel is removed.\n */\nexport function isEditorPanelRemoved( state, panelName ) {\n\treturn includes( state.removedPanels, panelName );\n}\n\n/**\n * Returns true if the given panel is enabled, or false otherwise. Panels are\n * enabled by default.\n *\n * @param {Object} state Global application state.\n * @param {string} panelName A string that identifies the panel.\n *\n * @return {boolean} Whether or not the panel is enabled.\n */\nexport const isEditorPanelEnabled = createRegistrySelector(\n\t( select ) => ( state, panelName ) => {\n\t\tconst inactivePanels = select( preferencesStore ).get(\n\t\t\t'core/edit-post',\n\t\t\t'inactivePanels'\n\t\t);\n\t\treturn (\n\t\t\t! isEditorPanelRemoved( state, panelName ) &&\n\t\t\t! inactivePanels?.includes( panelName )\n\t\t);\n\t}\n);\n\n/**\n * Returns true if the given panel is open, or false otherwise. Panels are\n * closed by default.\n *\n * @param {Object} state Global application state.\n * @param {string} panelName A string that identifies the panel.\n *\n * @return {boolean} Whether or not the panel is open.\n */\nexport const isEditorPanelOpened = createRegistrySelector(\n\t( select ) => ( state, panelName ) => {\n\t\tconst openPanels = select( preferencesStore ).get(\n\t\t\t'core/edit-post',\n\t\t\t'openPanels'\n\t\t);\n\t\treturn !! openPanels?.includes( panelName );\n\t}\n);\n\n/**\n * Returns true if a modal is active, or false otherwise.\n *\n * @param {Object} state Global application state.\n * @param {string} modalName A string that uniquely identifies the modal.\n *\n * @return {boolean} Whether the modal is active.\n */\nexport function isModalActive( state, modalName ) {\n\treturn state.activeModal === modalName;\n}\n\n/**\n * Returns whether the given feature is enabled or not.\n *\n * @param {Object} state Global application state.\n * @param {string} feature Feature slug.\n *\n * @return {boolean} Is active.\n */\nexport const isFeatureActive = createRegistrySelector(\n\t( select ) => ( state, feature ) => {\n\t\treturn !! select( preferencesStore ).get( 'core/edit-post', feature );\n\t}\n);\n\n/**\n * Returns true if the plugin item is pinned to the header.\n * When the value is not set it defaults to true.\n *\n * @param {Object} state Global application state.\n * @param {string} pluginName Plugin item name.\n *\n * @return {boolean} Whether the plugin item is pinned.\n */\nexport const isPluginItemPinned = createRegistrySelector(\n\t( select ) => ( state, pluginName ) => {\n\t\treturn select( interfaceStore ).isItemPinned(\n\t\t\t'core/edit-post',\n\t\t\tpluginName\n\t\t);\n\t}\n);\n\n/**\n * Returns an array of active meta box locations.\n *\n * @param {Object} state Post editor state.\n *\n * @return {string[]} Active meta box locations.\n */\nexport const getActiveMetaBoxLocations = createSelector(\n\t( state ) => {\n\t\treturn Object.keys( state.metaBoxes.locations ).filter( ( location ) =>\n\t\t\tisMetaBoxLocationActive( state, location )\n\t\t);\n\t},\n\t( state ) => [ state.metaBoxes.locations ]\n);\n\n/**\n * Returns true if a metabox location is active and visible\n *\n * @param {Object} state Post editor state.\n * @param {string} location Meta box location to test.\n *\n * @return {boolean} Whether the meta box location is active and visible.\n */\nexport function isMetaBoxLocationVisible( state, location ) {\n\treturn (\n\t\tisMetaBoxLocationActive( state, location ) &&\n\t\tsome( getMetaBoxesPerLocation( state, location ), ( { id } ) => {\n\t\t\treturn isEditorPanelEnabled( state, `meta-box-${ id }` );\n\t\t} )\n\t);\n}\n\n/**\n * Returns true if there is an active meta box in the given location, or false\n * otherwise.\n *\n * @param {Object} state Post editor state.\n * @param {string} location Meta box location to test.\n *\n * @return {boolean} Whether the meta box location is active.\n */\nexport function isMetaBoxLocationActive( state, location ) {\n\tconst metaBoxes = getMetaBoxesPerLocation( state, location );\n\treturn !! metaBoxes && metaBoxes.length !== 0;\n}\n\n/**\n * Returns the list of all the available meta boxes for a given location.\n *\n * @param {Object} state Global application state.\n * @param {string} location Meta box location to test.\n *\n * @return {?Array} List of meta boxes.\n */\nexport function getMetaBoxesPerLocation( state, location ) {\n\treturn state.metaBoxes.locations[ location ];\n}\n\n/**\n * Returns the list of all the available meta boxes.\n *\n * @param {Object} state Global application state.\n *\n * @return {Array} List of meta boxes.\n */\nexport const getAllMetaBoxes = createSelector(\n\t( state ) => {\n\t\treturn flatten( values( state.metaBoxes.locations ) );\n\t},\n\t( state ) => [ state.metaBoxes.locations ]\n);\n\n/**\n * Returns true if the post is using Meta Boxes\n *\n * @param {Object} state Global application state\n *\n * @return {boolean} Whether there are metaboxes or not.\n */\nexport function hasMetaBoxes( state ) {\n\treturn getActiveMetaBoxLocations( state ).length > 0;\n}\n\n/**\n * Returns true if the Meta Boxes are being saved.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the metaboxes are being saved.\n */\nexport function isSavingMetaBoxes( state ) {\n\treturn state.metaBoxes.isSaving;\n}\n\n/**\n * Returns the current editing canvas device type.\n *\n * @param {Object} state Global application state.\n *\n * @return {string} Device type.\n */\nexport function __experimentalGetPreviewDeviceType( state ) {\n\treturn state.deviceType;\n}\n\n/**\n * Returns true if the inserter is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the inserter is opened.\n */\nexport function isInserterOpened( state ) {\n\treturn !! state.blockInserterPanel;\n}\n\n/**\n * Get the insertion point for the inserter.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} The root client ID, index to insert at and starting filter value.\n */\nexport function __experimentalGetInsertionPoint( state ) {\n\tconst { rootClientId, insertionIndex, filterValue } =\n\t\tstate.blockInserterPanel;\n\treturn { rootClientId, insertionIndex, filterValue };\n}\n\n/**\n * Returns true if the list view is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the list view is opened.\n */\nexport function isListViewOpened( state ) {\n\treturn state.listViewPanel;\n}\n\n/**\n * Returns true if the template editing mode is enabled.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether we're editing the template.\n */\nexport function isEditingTemplate( state ) {\n\treturn state.isEditingTemplate;\n}\n\n/**\n * Returns true if meta boxes are initialized.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether meta boxes are initialized.\n */\nexport function areMetaBoxesInitialized( state ) {\n\treturn state.metaBoxes.initialized;\n}\n\n/**\n * Retrieves the template of the currently edited post.\n *\n * @return {Object?} Post Template.\n */\nexport const getEditedPostTemplate = createRegistrySelector(\n\t( select ) => () => {\n\t\tconst currentTemplate =\n\t\t\tselect( editorStore ).getEditedPostAttribute( 'template' );\n\t\tif ( currentTemplate ) {\n\t\t\tconst templateWithSameSlug = select( coreStore )\n\t\t\t\t.getEntityRecords( 'postType', 'wp_template', { per_page: -1 } )\n\t\t\t\t?.find( ( template ) => template.slug === currentTemplate );\n\t\t\tif ( ! templateWithSameSlug ) {\n\t\t\t\treturn templateWithSameSlug;\n\t\t\t}\n\t\t\treturn select( coreStore ).getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template',\n\t\t\t\ttemplateWithSameSlug.id\n\t\t\t);\n\t\t}\n\n\t\tconst post = select( editorStore ).getCurrentPost();\n\t\tif ( post.link ) {\n\t\t\treturn select( coreStore ).__experimentalGetTemplateForLink(\n\t\t\t\tpost.link\n\t\t\t);\n\t\t}\n\n\t\treturn null;\n\t}\n);\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/store/selectors.js"],"names":["EMPTY_ARRAY","EMPTY_OBJECT","getEditorMode","select","preferencesStore","get","isEditorSidebarOpened","activeGeneralSidebar","interfaceStore","getActiveComplementaryArea","includes","isPluginSidebarOpened","getActiveGeneralSidebarName","convertPanelsToOldFormat","inactivePanels","openPanels","panelsWithEnabledState","reduce","accumulatedPanels","panelName","enabled","panels","currentPanelState","opened","getPreferences","since","alternative","preferences","accumulatedPrefs","preferenceKey","value","getPreference","state","defaultValue","undefined","getHiddenBlockTypes","isPublishSidebarOpened","publishSidebarActive","isEditorPanelRemoved","removedPanels","isEditorPanelEnabled","isEditorPanelOpened","isModalActive","modalName","activeModal","isFeatureActive","feature","isPluginItemPinned","pluginName","isItemPinned","getActiveMetaBoxLocations","Object","keys","metaBoxes","locations","filter","location","isMetaBoxLocationActive","isMetaBoxLocationVisible","getMetaBoxesPerLocation","some","id","length","getAllMetaBoxes","values","flat","hasMetaBoxes","isSavingMetaBoxes","isSaving","__experimentalGetPreviewDeviceType","deviceType","isInserterOpened","blockInserterPanel","__experimentalGetInsertionPoint","rootClientId","insertionIndex","filterValue","isListViewOpened","listViewPanel","isEditingTemplate","areMetaBoxesInitialized","initialized","getEditedPostTemplate","currentTemplate","editorStore","getEditedPostAttribute","templateWithSameSlug","coreStore","getEntityRecords","per_page","find","template","slug","getEditedEntityRecord","post","getCurrentPost","link","__experimentalGetTemplateForLink"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAbA;AACA;AACA;;AAGA;AACA;AACA;AAQA,MAAMA,WAAW,GAAG,EAApB;AACA,MAAMC,YAAY,GAAG,EAArB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACO,MAAMC,aAAa,GAAG,kCAC1BC,MAAF,IAAc;AAAA;;AAAA,wBACbA,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,GAA3B,CAAgC,gBAAhC,EAAkD,YAAlD,CADa,qDAEb,QAFa;AAAA,CADc,CAAtB;AAMP;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAMC,qBAAqB,GAAG,kCAClCH,MAAF,IAAc,MAAM;AACnB,QAAMI,oBAAoB,GACzBJ,MAAM,CAAEK,gBAAF,CAAN,CAAyBC,0BAAzB,CACC,gBADD,CADD;AAIA,SAAO,CAAE,oBAAF,EAAwB,iBAAxB,EAA4CC,QAA5C,CACNH,oBADM,CAAP;AAGA,CATmC,CAA9B;AAYP;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAMI,qBAAqB,GAAG,kCAClCR,MAAF,IAAc,MAAM;AACnB,QAAMI,oBAAoB,GACzBJ,MAAM,CAAEK,gBAAF,CAAN,CAAyBC,0BAAzB,CACC,gBADD,CADD;AAIA,SACC,CAAC,CAAEF,oBAAH,IACA,CAAE,CAAE,oBAAF,EAAwB,iBAAxB,EAA4CG,QAA5C,CACDH,oBADC,CAFH;AAMA,CAZmC,CAA9B;AAeP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAMK,2BAA2B,GAAG,kCACxCT,MAAF,IAAc,MAAM;AACnB,SAAOA,MAAM,CAAEK,gBAAF,CAAN,CAAyBC,0BAAzB,CACN,gBADM,CAAP;AAGA,CALyC,CAApC;AAQP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AACA,SAASI,wBAAT,CAAmCC,cAAnC,EAAmDC,UAAnD,EAAgE;AAAA;;AAC/D;AACA,QAAMC,sBAAsB,GAAGF,cAAH,aAAGA,cAAH,uBAAGA,cAAc,CAAEG,MAAhB,CAC9B,CAAEC,iBAAF,EAAqBC,SAArB,MAAsC,EACrC,GAAGD,iBADkC;AAErC,KAAEC,SAAF,GAAe;AACdC,MAAAA,OAAO,EAAE;AADK;AAFsB,GAAtC,CAD8B,EAO9B,EAP8B,CAA/B,CAF+D,CAY/D;AACA;AACA;;AACA,QAAMC,MAAM,GAAGN,UAAH,aAAGA,UAAH,uBAAGA,UAAU,CAAEE,MAAZ,CAAoB,CAAEC,iBAAF,EAAqBC,SAArB,KAAoC;AACtE,UAAMG,iBAAiB,GAAGJ,iBAAH,aAAGA,iBAAH,uBAAGA,iBAAiB,CAAIC,SAAJ,CAA3C;AACA,WAAO,EACN,GAAGD,iBADG;AAEN,OAAEC,SAAF,GAAe,EACd,GAAGG,iBADW;AAEdC,QAAAA,MAAM,EAAE;AAFM;AAFT,KAAP;AAOA,GATc,EASZP,sBATY,aASZA,sBATY,cASZA,sBATY,GASc,EATd,CAAf,CAf+D,CA0B/D;AACA;AACA;;AACA,iBAAOK,MAAP,aAAOA,MAAP,cAAOA,MAAP,GAAiBL,sBAAjB,uCAA2Cf,YAA3C;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAMuB,cAAc,GAAG,kCAA0BrB,MAAF,IAAc,MAAM;AACzE,2BAAa,2CAAb,EAAyD;AACxDsB,IAAAA,KAAK,EAAE,KADiD;AAExDC,IAAAA,WAAW,EAAG;AAF0C,GAAzD,EADyE,CAMzE;AACA;AACA;;AACA,QAAMC,WAAW,GAAG,CACnB,kBADmB,EAEnB,YAFmB,EAGnB,0BAHmB,EAIlBV,MAJkB,CAIV,CAAEW,gBAAF,EAAoBC,aAApB,KAAuC;AAChD,UAAMC,KAAK,GAAG3B,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,GAA3B,CACb,gBADa,EAEbwB,aAFa,CAAd;AAKA,WAAO,EACN,GAAGD,gBADG;AAEN,OAAEC,aAAF,GAAmBC;AAFb,KAAP;AAIA,GAdmB,EAcjB,EAdiB,CAApB,CATyE,CAyBzE;AACA;AACA;AACA;;AACA,QAAMhB,cAAc,GAAGX,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,GAA3B,CACtB,gBADsB,EAEtB,gBAFsB,CAAvB;AAIA,QAAMU,UAAU,GAAGZ,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,GAA3B,CAClB,gBADkB,EAElB,YAFkB,CAAnB;AAIA,QAAMgB,MAAM,GAAGR,wBAAwB,CAAEC,cAAF,EAAkBC,UAAlB,CAAvC;AAEA,SAAO,EACN,GAAGY,WADG;AAENN,IAAAA;AAFM,GAAP;AAIA,CA3C6B,CAAvB;AA6CP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AACO,SAASU,aAAT,CAAwBC,KAAxB,EAA+BH,aAA/B,EAA8CI,YAA9C,EAA6D;AACnE,2BAAa,0CAAb,EAAwD;AACvDR,IAAAA,KAAK,EAAE,KADgD;AAEvDC,IAAAA,WAAW,EAAG;AAFyC,GAAxD,EADmE,CAMnE;;AACA,QAAMC,WAAW,GAAGH,cAAc,CAAEQ,KAAF,CAAlC;AACA,QAAMF,KAAK,GAAGH,WAAW,CAAEE,aAAF,CAAzB;AACA,SAAOC,KAAK,KAAKI,SAAV,GAAsBD,YAAtB,GAAqCH,KAA5C;AACA;AAED;AACA;AACA;AACA;AACA;;;AACO,MAAMK,mBAAmB,GAAG,kCAA0BhC,MAAF,IAAc,MAAM;AAAA;;AAC9E,yBACCA,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,GAA3B,CACC,gBADD,EAEC,kBAFD,CADD,uDAIML,WAJN;AAMA,CAPkC,CAA5B;AASP;AACA;AACA;AACA;AACA;AACA;AACA;;;;AACO,SAASoC,sBAAT,CAAiCJ,KAAjC,EAAyC;AAC/C,SAAOA,KAAK,CAACK,oBAAb;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,oBAAT,CAA+BN,KAA/B,EAAsCb,SAAtC,EAAkD;AACxD,SAAOa,KAAK,CAACO,aAAN,CAAoB7B,QAApB,CAA8BS,SAA9B,CAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAMqB,oBAAoB,GAAG,kCACjCrC,MAAF,IAAc,CAAE6B,KAAF,EAASb,SAAT,KAAwB;AACrC,QAAML,cAAc,GAAGX,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,GAA3B,CACtB,gBADsB,EAEtB,gBAFsB,CAAvB;AAIA,SACC,CAAEiC,oBAAoB,CAAEN,KAAF,EAASb,SAAT,CAAtB,IACA,EAAEL,cAAF,aAAEA,cAAF,eAAEA,cAAc,CAAEJ,QAAhB,CAA0BS,SAA1B,CAAF,CAFD;AAIA,CAVkC,CAA7B;AAaP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAMsB,mBAAmB,GAAG,kCAChCtC,MAAF,IAAc,CAAE6B,KAAF,EAASb,SAAT,KAAwB;AACrC,QAAMJ,UAAU,GAAGZ,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,GAA3B,CAClB,gBADkB,EAElB,YAFkB,CAAnB;AAIA,SAAO,CAAC,EAAEU,UAAF,aAAEA,UAAF,eAAEA,UAAU,CAAEL,QAAZ,CAAsBS,SAAtB,CAAF,CAAR;AACA,CAPiC,CAA5B;AAUP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AACO,SAASuB,aAAT,CAAwBV,KAAxB,EAA+BW,SAA/B,EAA2C;AACjD,SAAOX,KAAK,CAACY,WAAN,KAAsBD,SAA7B;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAME,eAAe,GAAG,kCAC5B1C,MAAF,IAAc,CAAE6B,KAAF,EAASc,OAAT,KAAsB;AACnC,SAAO,CAAC,CAAE3C,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,GAA3B,CAAgC,gBAAhC,EAAkDyC,OAAlD,CAAV;AACA,CAH6B,CAAxB;AAMP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAMC,kBAAkB,GAAG,kCAC/B5C,MAAF,IAAc,CAAE6B,KAAF,EAASgB,UAAT,KAAyB;AACtC,SAAO7C,MAAM,CAAEK,gBAAF,CAAN,CAAyByC,YAAzB,CACN,gBADM,EAEND,UAFM,CAAP;AAIA,CANgC,CAA3B;AASP;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAME,yBAAyB,GAAG,qBACtClB,KAAF,IAAa;AACZ,SAAOmB,MAAM,CAACC,IAAP,CAAapB,KAAK,CAACqB,SAAN,CAAgBC,SAA7B,EAAyCC,MAAzC,CAAmDC,QAAF,IACvDC,uBAAuB,CAAEzB,KAAF,EAASwB,QAAT,CADjB,CAAP;AAGA,CALuC,EAMtCxB,KAAF,IAAa,CAAEA,KAAK,CAACqB,SAAN,CAAgBC,SAAlB,CAN2B,CAAlC;AASP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AACO,SAASI,wBAAT,CAAmC1B,KAAnC,EAA0CwB,QAA1C,EAAqD;AAAA;;AAC3D,SACCC,uBAAuB,CAAEzB,KAAF,EAASwB,QAAT,CAAvB,8BACAG,uBAAuB,CAAE3B,KAAF,EAASwB,QAAT,CADvB,0DACA,sBAA4CI,IAA5C,CAAkD,SAAc;AAAA,QAAZ;AAAEC,MAAAA;AAAF,KAAY;AAC/D,WAAOrB,oBAAoB,CAAER,KAAF,EAAU,YAAY6B,EAAI,EAA1B,CAA3B;AACA,GAFD,CADA,CADD;AAMA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASJ,uBAAT,CAAkCzB,KAAlC,EAAyCwB,QAAzC,EAAoD;AAC1D,QAAMH,SAAS,GAAGM,uBAAuB,CAAE3B,KAAF,EAASwB,QAAT,CAAzC;AACA,SAAO,CAAC,CAAEH,SAAH,IAAgBA,SAAS,CAACS,MAAV,KAAqB,CAA5C;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASH,uBAAT,CAAkC3B,KAAlC,EAAyCwB,QAAzC,EAAoD;AAC1D,SAAOxB,KAAK,CAACqB,SAAN,CAAgBC,SAAhB,CAA2BE,QAA3B,CAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAMO,eAAe,GAAG,qBAC5B/B,KAAF,IAAa;AACZ,SAAOmB,MAAM,CAACa,MAAP,CAAehC,KAAK,CAACqB,SAAN,CAAgBC,SAA/B,EAA2CW,IAA3C,EAAP;AACA,CAH6B,EAI5BjC,KAAF,IAAa,CAAEA,KAAK,CAACqB,SAAN,CAAgBC,SAAlB,CAJiB,CAAxB;AAOP;AACA;AACA;AACA;AACA;AACA;AACA;;;;AACO,SAASY,YAAT,CAAuBlC,KAAvB,EAA+B;AACrC,SAAOkB,yBAAyB,CAAElB,KAAF,CAAzB,CAAmC8B,MAAnC,GAA4C,CAAnD;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASK,iBAAT,CAA4BnC,KAA5B,EAAoC;AAC1C,SAAOA,KAAK,CAACqB,SAAN,CAAgBe,QAAvB;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,kCAAT,CAA6CrC,KAA7C,EAAqD;AAC3D,SAAOA,KAAK,CAACsC,UAAb;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,gBAAT,CAA2BvC,KAA3B,EAAmC;AACzC,SAAO,CAAC,CAAEA,KAAK,CAACwC,kBAAhB;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,+BAAT,CAA0CzC,KAA1C,EAAkD;AACxD,QAAM;AAAE0C,IAAAA,YAAF;AAAgBC,IAAAA,cAAhB;AAAgCC,IAAAA;AAAhC,MACL5C,KAAK,CAACwC,kBADP;AAEA,SAAO;AAAEE,IAAAA,YAAF;AAAgBC,IAAAA,cAAhB;AAAgCC,IAAAA;AAAhC,GAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,gBAAT,CAA2B7C,KAA3B,EAAmC;AACzC,SAAOA,KAAK,CAAC8C,aAAb;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,iBAAT,CAA4B/C,KAA5B,EAAoC;AAC1C,SAAOA,KAAK,CAAC+C,iBAAb;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,uBAAT,CAAkChD,KAAlC,EAA0C;AAChD,SAAOA,KAAK,CAACqB,SAAN,CAAgB4B,WAAvB;AACA;AAED;AACA;AACA;AACA;AACA;;;AACO,MAAMC,qBAAqB,GAAG,kCAClC/E,MAAF,IAAc,MAAM;AACnB,QAAMgF,eAAe,GACpBhF,MAAM,CAAEiF,aAAF,CAAN,CAAsBC,sBAAtB,CAA8C,UAA9C,CADD;;AAEA,MAAKF,eAAL,EAAuB;AAAA;;AACtB,UAAMG,oBAAoB,4BAAGnF,MAAM,CAAEoF,eAAF,CAAN,CAC3BC,gBAD2B,CACT,UADS,EACG,aADH,EACkB;AAAEC,MAAAA,QAAQ,EAAE,CAAC;AAAb,KADlB,CAAH,0DAAG,sBAE1BC,IAF0B,CAElBC,QAAF,IAAgBA,QAAQ,CAACC,IAAT,KAAkBT,eAFd,CAA7B;;AAGA,QAAK,CAAEG,oBAAP,EAA8B;AAC7B,aAAOA,oBAAP;AACA;;AACD,WAAOnF,MAAM,CAAEoF,eAAF,CAAN,CAAoBM,qBAApB,CACN,UADM,EAEN,aAFM,EAGNP,oBAAoB,CAACzB,EAHf,CAAP;AAKA;;AAED,QAAMiC,IAAI,GAAG3F,MAAM,CAAEiF,aAAF,CAAN,CAAsBW,cAAtB,EAAb;;AACA,MAAKD,IAAI,CAACE,IAAV,EAAiB;AAChB,WAAO7F,MAAM,CAAEoF,eAAF,CAAN,CAAoBU,gCAApB,CACNH,IAAI,CAACE,IADC,CAAP;AAGA;;AAED,SAAO,IAAP;AACA,CA1BmC,CAA9B","sourcesContent":["/**\n * External dependencies\n */\nimport createSelector from 'rememo';\n\n/**\n * WordPress dependencies\n */\nimport { createRegistrySelector } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport deprecated from '@wordpress/deprecated';\n\nconst EMPTY_ARRAY = [];\nconst EMPTY_OBJECT = {};\n\n/**\n * Returns the current editing mode.\n *\n * @param {Object} state Global application state.\n *\n * @return {string} Editing mode.\n */\nexport const getEditorMode = createRegistrySelector(\n\t( select ) => () =>\n\t\tselect( preferencesStore ).get( 'core/edit-post', 'editorMode' ) ??\n\t\t'visual'\n);\n\n/**\n * Returns true if the editor sidebar is opened.\n *\n * @param {Object} state Global application state\n *\n * @return {boolean} Whether the editor sidebar is opened.\n */\nexport const isEditorSidebarOpened = createRegistrySelector(\n\t( select ) => () => {\n\t\tconst activeGeneralSidebar =\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\t'core/edit-post'\n\t\t\t);\n\t\treturn [ 'edit-post/document', 'edit-post/block' ].includes(\n\t\t\tactiveGeneralSidebar\n\t\t);\n\t}\n);\n\n/**\n * Returns true if the plugin sidebar is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the plugin sidebar is opened.\n */\nexport const isPluginSidebarOpened = createRegistrySelector(\n\t( select ) => () => {\n\t\tconst activeGeneralSidebar =\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\t'core/edit-post'\n\t\t\t);\n\t\treturn (\n\t\t\t!! activeGeneralSidebar &&\n\t\t\t! [ 'edit-post/document', 'edit-post/block' ].includes(\n\t\t\t\tactiveGeneralSidebar\n\t\t\t)\n\t\t);\n\t}\n);\n\n/**\n * Returns the current active general sidebar name, or null if there is no\n * general sidebar active. The active general sidebar is a unique name to\n * identify either an editor or plugin sidebar.\n *\n * Examples:\n *\n * - `edit-post/document`\n * - `my-plugin/insert-image-sidebar`\n *\n * @param {Object} state Global application state.\n *\n * @return {?string} Active general sidebar name.\n */\nexport const getActiveGeneralSidebarName = createRegistrySelector(\n\t( select ) => () => {\n\t\treturn select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t'core/edit-post'\n\t\t);\n\t}\n);\n\n/**\n * Converts panels from the new preferences store format to the old format\n * that the post editor previously used.\n *\n * The resultant converted data should look like this:\n * {\n * panelName: {\n * enabled: false,\n * opened: true,\n * },\n * anotherPanelName: {\n * opened: true\n * },\n * }\n *\n * @param {string[] | undefined} inactivePanels An array of inactive panel names.\n * @param {string[] | undefined} openPanels An array of open panel names.\n *\n * @return {Object} The converted panel data.\n */\nfunction convertPanelsToOldFormat( inactivePanels, openPanels ) {\n\t// First reduce the inactive panels.\n\tconst panelsWithEnabledState = inactivePanels?.reduce(\n\t\t( accumulatedPanels, panelName ) => ( {\n\t\t\t...accumulatedPanels,\n\t\t\t[ panelName ]: {\n\t\t\t\tenabled: false,\n\t\t\t},\n\t\t} ),\n\t\t{}\n\t);\n\n\t// Then reduce the open panels, passing in the result of the previous\n\t// reduction as the initial value so that both open and inactive\n\t// panel state is combined.\n\tconst panels = openPanels?.reduce( ( accumulatedPanels, panelName ) => {\n\t\tconst currentPanelState = accumulatedPanels?.[ panelName ];\n\t\treturn {\n\t\t\t...accumulatedPanels,\n\t\t\t[ panelName ]: {\n\t\t\t\t...currentPanelState,\n\t\t\t\topened: true,\n\t\t\t},\n\t\t};\n\t}, panelsWithEnabledState ?? {} );\n\n\t// The panels variable will only be set if openPanels wasn't `undefined`.\n\t// If it isn't set just return `panelsWithEnabledState`, and if that isn't\n\t// set return an empty object.\n\treturn panels ?? panelsWithEnabledState ?? EMPTY_OBJECT;\n}\n\n/**\n * Returns the preferences (these preferences are persisted locally).\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} Preferences Object.\n */\nexport const getPreferences = createRegistrySelector( ( select ) => () => {\n\tdeprecated( `select( 'core/edit-post' ).getPreferences`, {\n\t\tsince: '6.0',\n\t\talternative: `select( 'core/preferences' ).get`,\n\t} );\n\n\t// These preferences now exist in the preferences store.\n\t// Fetch them so that they can be merged into the post\n\t// editor preferences.\n\tconst preferences = [\n\t\t'hiddenBlockTypes',\n\t\t'editorMode',\n\t\t'preferredStyleVariations',\n\t].reduce( ( accumulatedPrefs, preferenceKey ) => {\n\t\tconst value = select( preferencesStore ).get(\n\t\t\t'core/edit-post',\n\t\t\tpreferenceKey\n\t\t);\n\n\t\treturn {\n\t\t\t...accumulatedPrefs,\n\t\t\t[ preferenceKey ]: value,\n\t\t};\n\t}, {} );\n\n\t// Panels were a preference, but the data structure changed when the state\n\t// was migrated to the preferences store. They need to be converted from\n\t// the new preferences store format to old format to ensure no breaking\n\t// changes for plugins.\n\tconst inactivePanels = select( preferencesStore ).get(\n\t\t'core/edit-post',\n\t\t'inactivePanels'\n\t);\n\tconst openPanels = select( preferencesStore ).get(\n\t\t'core/edit-post',\n\t\t'openPanels'\n\t);\n\tconst panels = convertPanelsToOldFormat( inactivePanels, openPanels );\n\n\treturn {\n\t\t...preferences,\n\t\tpanels,\n\t};\n} );\n\n/**\n *\n * @param {Object} state Global application state.\n * @param {string} preferenceKey Preference Key.\n * @param {*} defaultValue Default Value.\n *\n * @return {*} Preference Value.\n */\nexport function getPreference( state, preferenceKey, defaultValue ) {\n\tdeprecated( `select( 'core/edit-post' ).getPreference`, {\n\t\tsince: '6.0',\n\t\talternative: `select( 'core/preferences' ).get`,\n\t} );\n\n\t// Avoid using the `getPreferences` registry selector where possible.\n\tconst preferences = getPreferences( state );\n\tconst value = preferences[ preferenceKey ];\n\treturn value === undefined ? defaultValue : value;\n}\n\n/**\n * Returns an array of blocks that are hidden.\n *\n * @return {Array} A list of the hidden block types\n */\nexport const getHiddenBlockTypes = createRegistrySelector( ( select ) => () => {\n\treturn (\n\t\tselect( preferencesStore ).get(\n\t\t\t'core/edit-post',\n\t\t\t'hiddenBlockTypes'\n\t\t) ?? EMPTY_ARRAY\n\t);\n} );\n\n/**\n * Returns true if the publish sidebar is opened.\n *\n * @param {Object} state Global application state\n *\n * @return {boolean} Whether the publish sidebar is open.\n */\nexport function isPublishSidebarOpened( state ) {\n\treturn state.publishSidebarActive;\n}\n\n/**\n * Returns true if the given panel was programmatically removed, or false otherwise.\n * All panels are not removed by default.\n *\n * @param {Object} state Global application state.\n * @param {string} panelName A string that identifies the panel.\n *\n * @return {boolean} Whether or not the panel is removed.\n */\nexport function isEditorPanelRemoved( state, panelName ) {\n\treturn state.removedPanels.includes( panelName );\n}\n\n/**\n * Returns true if the given panel is enabled, or false otherwise. Panels are\n * enabled by default.\n *\n * @param {Object} state Global application state.\n * @param {string} panelName A string that identifies the panel.\n *\n * @return {boolean} Whether or not the panel is enabled.\n */\nexport const isEditorPanelEnabled = createRegistrySelector(\n\t( select ) => ( state, panelName ) => {\n\t\tconst inactivePanels = select( preferencesStore ).get(\n\t\t\t'core/edit-post',\n\t\t\t'inactivePanels'\n\t\t);\n\t\treturn (\n\t\t\t! isEditorPanelRemoved( state, panelName ) &&\n\t\t\t! inactivePanels?.includes( panelName )\n\t\t);\n\t}\n);\n\n/**\n * Returns true if the given panel is open, or false otherwise. Panels are\n * closed by default.\n *\n * @param {Object} state Global application state.\n * @param {string} panelName A string that identifies the panel.\n *\n * @return {boolean} Whether or not the panel is open.\n */\nexport const isEditorPanelOpened = createRegistrySelector(\n\t( select ) => ( state, panelName ) => {\n\t\tconst openPanels = select( preferencesStore ).get(\n\t\t\t'core/edit-post',\n\t\t\t'openPanels'\n\t\t);\n\t\treturn !! openPanels?.includes( panelName );\n\t}\n);\n\n/**\n * Returns true if a modal is active, or false otherwise.\n *\n * @param {Object} state Global application state.\n * @param {string} modalName A string that uniquely identifies the modal.\n *\n * @return {boolean} Whether the modal is active.\n */\nexport function isModalActive( state, modalName ) {\n\treturn state.activeModal === modalName;\n}\n\n/**\n * Returns whether the given feature is enabled or not.\n *\n * @param {Object} state Global application state.\n * @param {string} feature Feature slug.\n *\n * @return {boolean} Is active.\n */\nexport const isFeatureActive = createRegistrySelector(\n\t( select ) => ( state, feature ) => {\n\t\treturn !! select( preferencesStore ).get( 'core/edit-post', feature );\n\t}\n);\n\n/**\n * Returns true if the plugin item is pinned to the header.\n * When the value is not set it defaults to true.\n *\n * @param {Object} state Global application state.\n * @param {string} pluginName Plugin item name.\n *\n * @return {boolean} Whether the plugin item is pinned.\n */\nexport const isPluginItemPinned = createRegistrySelector(\n\t( select ) => ( state, pluginName ) => {\n\t\treturn select( interfaceStore ).isItemPinned(\n\t\t\t'core/edit-post',\n\t\t\tpluginName\n\t\t);\n\t}\n);\n\n/**\n * Returns an array of active meta box locations.\n *\n * @param {Object} state Post editor state.\n *\n * @return {string[]} Active meta box locations.\n */\nexport const getActiveMetaBoxLocations = createSelector(\n\t( state ) => {\n\t\treturn Object.keys( state.metaBoxes.locations ).filter( ( location ) =>\n\t\t\tisMetaBoxLocationActive( state, location )\n\t\t);\n\t},\n\t( state ) => [ state.metaBoxes.locations ]\n);\n\n/**\n * Returns true if a metabox location is active and visible\n *\n * @param {Object} state Post editor state.\n * @param {string} location Meta box location to test.\n *\n * @return {boolean} Whether the meta box location is active and visible.\n */\nexport function isMetaBoxLocationVisible( state, location ) {\n\treturn (\n\t\tisMetaBoxLocationActive( state, location ) &&\n\t\tgetMetaBoxesPerLocation( state, location )?.some( ( { id } ) => {\n\t\t\treturn isEditorPanelEnabled( state, `meta-box-${ id }` );\n\t\t} )\n\t);\n}\n\n/**\n * Returns true if there is an active meta box in the given location, or false\n * otherwise.\n *\n * @param {Object} state Post editor state.\n * @param {string} location Meta box location to test.\n *\n * @return {boolean} Whether the meta box location is active.\n */\nexport function isMetaBoxLocationActive( state, location ) {\n\tconst metaBoxes = getMetaBoxesPerLocation( state, location );\n\treturn !! metaBoxes && metaBoxes.length !== 0;\n}\n\n/**\n * Returns the list of all the available meta boxes for a given location.\n *\n * @param {Object} state Global application state.\n * @param {string} location Meta box location to test.\n *\n * @return {?Array} List of meta boxes.\n */\nexport function getMetaBoxesPerLocation( state, location ) {\n\treturn state.metaBoxes.locations[ location ];\n}\n\n/**\n * Returns the list of all the available meta boxes.\n *\n * @param {Object} state Global application state.\n *\n * @return {Array} List of meta boxes.\n */\nexport const getAllMetaBoxes = createSelector(\n\t( state ) => {\n\t\treturn Object.values( state.metaBoxes.locations ).flat();\n\t},\n\t( state ) => [ state.metaBoxes.locations ]\n);\n\n/**\n * Returns true if the post is using Meta Boxes\n *\n * @param {Object} state Global application state\n *\n * @return {boolean} Whether there are metaboxes or not.\n */\nexport function hasMetaBoxes( state ) {\n\treturn getActiveMetaBoxLocations( state ).length > 0;\n}\n\n/**\n * Returns true if the Meta Boxes are being saved.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the metaboxes are being saved.\n */\nexport function isSavingMetaBoxes( state ) {\n\treturn state.metaBoxes.isSaving;\n}\n\n/**\n * Returns the current editing canvas device type.\n *\n * @param {Object} state Global application state.\n *\n * @return {string} Device type.\n */\nexport function __experimentalGetPreviewDeviceType( state ) {\n\treturn state.deviceType;\n}\n\n/**\n * Returns true if the inserter is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the inserter is opened.\n */\nexport function isInserterOpened( state ) {\n\treturn !! state.blockInserterPanel;\n}\n\n/**\n * Get the insertion point for the inserter.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} The root client ID, index to insert at and starting filter value.\n */\nexport function __experimentalGetInsertionPoint( state ) {\n\tconst { rootClientId, insertionIndex, filterValue } =\n\t\tstate.blockInserterPanel;\n\treturn { rootClientId, insertionIndex, filterValue };\n}\n\n/**\n * Returns true if the list view is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the list view is opened.\n */\nexport function isListViewOpened( state ) {\n\treturn state.listViewPanel;\n}\n\n/**\n * Returns true if the template editing mode is enabled.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether we're editing the template.\n */\nexport function isEditingTemplate( state ) {\n\treturn state.isEditingTemplate;\n}\n\n/**\n * Returns true if meta boxes are initialized.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether meta boxes are initialized.\n */\nexport function areMetaBoxesInitialized( state ) {\n\treturn state.metaBoxes.initialized;\n}\n\n/**\n * Retrieves the template of the currently edited post.\n *\n * @return {Object?} Post Template.\n */\nexport const getEditedPostTemplate = createRegistrySelector(\n\t( select ) => () => {\n\t\tconst currentTemplate =\n\t\t\tselect( editorStore ).getEditedPostAttribute( 'template' );\n\t\tif ( currentTemplate ) {\n\t\t\tconst templateWithSameSlug = select( coreStore )\n\t\t\t\t.getEntityRecords( 'postType', 'wp_template', { per_page: -1 } )\n\t\t\t\t?.find( ( template ) => template.slug === currentTemplate );\n\t\t\tif ( ! templateWithSameSlug ) {\n\t\t\t\treturn templateWithSameSlug;\n\t\t\t}\n\t\t\treturn select( coreStore ).getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template',\n\t\t\t\ttemplateWithSameSlug.id\n\t\t\t);\n\t\t}\n\n\t\tconst post = select( editorStore ).getCurrentPost();\n\t\tif ( post.link ) {\n\t\t\treturn select( coreStore ).__experimentalGetTemplateForLink(\n\t\t\t\tpost.link\n\t\t\t);\n\t\t}\n\n\t\treturn null;\n\t}\n);\n"]}
@@ -37,5 +37,17 @@ export const textFormattingShortcuts = [{
37
37
  character: 'u'
38
38
  },
39
39
  description: __('Underline the selected text.')
40
+ }, {
41
+ keyCombination: {
42
+ modifier: 'access',
43
+ character: 'd'
44
+ },
45
+ description: __('Strikethrough the selected text.')
46
+ }, {
47
+ keyCombination: {
48
+ modifier: 'access',
49
+ character: 'x'
50
+ },
51
+ description: __('Make the selected text inline code.')
40
52
  }];
41
53
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/keyboard-shortcut-help-modal/config.js"],"names":["__","textFormattingShortcuts","keyCombination","modifier","character","description"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA,OAAO,MAAMC,uBAAuB,GAAG,CACtC;AACCC,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CADsC,EAKtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gCAAF;AAFhB,CALsC,EAStC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,wCAAF;AAFhB,CATsC,EAatC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,cAAZ;AAA4BC,IAAAA,SAAS,EAAE;AAAvC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gBAAF;AAFhB,CAbsC,EAiBtC;AACCE,EAAAA,cAAc,EAAE;AAAEE,IAAAA,SAAS,EAAE;AAAb,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,iCAAF;AAFhB,CAjBsC,EAqBtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CArBsC,CAAhC","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport const textFormattingShortcuts = [\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'b' },\n\t\tdescription: __( 'Make the selected text bold.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'i' },\n\t\tdescription: __( 'Make the selected text italic.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'k' },\n\t\tdescription: __( 'Convert the selected text into a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primaryShift', character: 'k' },\n\t\tdescription: __( 'Remove a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { character: '[[' },\n\t\tdescription: __( 'Insert a link to a post or page' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'u' },\n\t\tdescription: __( 'Underline the selected text.' ),\n\t},\n];\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/keyboard-shortcut-help-modal/config.js"],"names":["__","textFormattingShortcuts","keyCombination","modifier","character","description"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA,OAAO,MAAMC,uBAAuB,GAAG,CACtC;AACCC,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CADsC,EAKtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gCAAF;AAFhB,CALsC,EAStC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,wCAAF;AAFhB,CATsC,EAatC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,cAAZ;AAA4BC,IAAAA,SAAS,EAAE;AAAvC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gBAAF;AAFhB,CAbsC,EAiBtC;AACCE,EAAAA,cAAc,EAAE;AAAEE,IAAAA,SAAS,EAAE;AAAb,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,iCAAF;AAFhB,CAjBsC,EAqBtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CArBsC,EAyBtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,QAAZ;AAAsBC,IAAAA,SAAS,EAAE;AAAjC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,kCAAF;AAFhB,CAzBsC,EA6BtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,QAAZ;AAAsBC,IAAAA,SAAS,EAAE;AAAjC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,qCAAF;AAFhB,CA7BsC,CAAhC","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport const textFormattingShortcuts = [\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'b' },\n\t\tdescription: __( 'Make the selected text bold.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'i' },\n\t\tdescription: __( 'Make the selected text italic.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'k' },\n\t\tdescription: __( 'Convert the selected text into a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primaryShift', character: 'k' },\n\t\tdescription: __( 'Remove a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { character: '[[' },\n\t\tdescription: __( 'Insert a link to a post or page' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'u' },\n\t\tdescription: __( 'Underline the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'd' },\n\t\tdescription: __( 'Strikethrough the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'x' },\n\t\tdescription: __( 'Make the selected text inline code.' ),\n\t},\n];\n"]}
@@ -1,7 +1,7 @@
1
1
  import { createElement } from "@wordpress/element";
2
2
 
3
3
  /**
4
- * Defines as extensibility slot for the Status & visibility panel.
4
+ * Defines as extensibility slot for the Summary panel.
5
5
  */
6
6
 
7
7
  /**
@@ -13,7 +13,7 @@ export const {
13
13
  Slot
14
14
  } = createSlotFill('PluginPostStatusInfo');
15
15
  /**
16
- * Renders a row in the Status & visibility panel of the Document sidebar.
16
+ * Renders a row in the Summary panel of the Document sidebar.
17
17
  * It should be noted that this is named and implemented around the function it serves
18
18
  * and not its location, which may change in future iterations.
19
19
  *
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/plugin-post-status-info/index.js"],"names":["createSlotFill","PanelRow","Fill","Slot","PluginPostStatusInfo","children","className"],"mappings":";;AAAA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAASA,cAAT,EAAyBC,QAAzB,QAAyC,uBAAzC;AAEA,OAAO,MAAM;AAAEC,EAAAA,IAAF;AAAQC,EAAAA;AAAR,IAAiBH,cAAc,CAAE,sBAAF,CAArC;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMI,oBAAoB,GAAG;AAAA,MAAE;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,GAAF;AAAA,SAC5B,cAAC,IAAD,QACC,cAAC,QAAD;AAAU,IAAA,SAAS,EAAGA;AAAtB,KAAoCD,QAApC,CADD,CAD4B;AAAA,CAA7B;;AAMAD,oBAAoB,CAACD,IAArB,GAA4BA,IAA5B;AAEA,eAAeC,oBAAf","sourcesContent":["/**\n * Defines as extensibility slot for the Status & visibility panel.\n */\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelRow } from '@wordpress/components';\n\nexport const { Fill, Slot } = createSlotFill( 'PluginPostStatusInfo' );\n\n/**\n * Renders a row in the Status & visibility panel of the Document sidebar.\n * It should be noted that this is named and implemented around the function it serves\n * and not its location, which may change in future iterations.\n *\n * @param {Object} props Component properties.\n * @param {string} [props.className] An optional class name added to the row.\n * @param {WPElement} props.children Children to be rendered.\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var __ = wp.i18n.__;\n * var PluginPostStatusInfo = wp.editPost.PluginPostStatusInfo;\n *\n * function MyPluginPostStatusInfo() {\n * \treturn wp.element.createElement(\n * \t\tPluginPostStatusInfo,\n * \t\t{\n * \t\t\tclassName: 'my-plugin-post-status-info',\n * \t\t},\n * \t\t__( 'My post status info' )\n * \t)\n * }\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { __ } from '@wordpress/i18n';\n * import { PluginPostStatusInfo } from '@wordpress/edit-post';\n *\n * const MyPluginPostStatusInfo = () => (\n * \t<PluginPostStatusInfo\n * \t\tclassName=\"my-plugin-post-status-info\"\n * \t>\n * \t\t{ __( 'My post status info' ) }\n * \t</PluginPostStatusInfo>\n * );\n * ```\n *\n * @return {WPComponent} The component to be rendered.\n */\nconst PluginPostStatusInfo = ( { children, className } ) => (\n\t<Fill>\n\t\t<PanelRow className={ className }>{ children }</PanelRow>\n\t</Fill>\n);\n\nPluginPostStatusInfo.Slot = Slot;\n\nexport default PluginPostStatusInfo;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/plugin-post-status-info/index.js"],"names":["createSlotFill","PanelRow","Fill","Slot","PluginPostStatusInfo","children","className"],"mappings":";;AAAA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAASA,cAAT,EAAyBC,QAAzB,QAAyC,uBAAzC;AAEA,OAAO,MAAM;AAAEC,EAAAA,IAAF;AAAQC,EAAAA;AAAR,IAAiBH,cAAc,CAAE,sBAAF,CAArC;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMI,oBAAoB,GAAG;AAAA,MAAE;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,GAAF;AAAA,SAC5B,cAAC,IAAD,QACC,cAAC,QAAD;AAAU,IAAA,SAAS,EAAGA;AAAtB,KAAoCD,QAApC,CADD,CAD4B;AAAA,CAA7B;;AAMAD,oBAAoB,CAACD,IAArB,GAA4BA,IAA5B;AAEA,eAAeC,oBAAf","sourcesContent":["/**\n * Defines as extensibility slot for the Summary panel.\n */\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelRow } from '@wordpress/components';\n\nexport const { Fill, Slot } = createSlotFill( 'PluginPostStatusInfo' );\n\n/**\n * Renders a row in the Summary panel of the Document sidebar.\n * It should be noted that this is named and implemented around the function it serves\n * and not its location, which may change in future iterations.\n *\n * @param {Object} props Component properties.\n * @param {string} [props.className] An optional class name added to the row.\n * @param {WPElement} props.children Children to be rendered.\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var __ = wp.i18n.__;\n * var PluginPostStatusInfo = wp.editPost.PluginPostStatusInfo;\n *\n * function MyPluginPostStatusInfo() {\n * \treturn wp.element.createElement(\n * \t\tPluginPostStatusInfo,\n * \t\t{\n * \t\t\tclassName: 'my-plugin-post-status-info',\n * \t\t},\n * \t\t__( 'My post status info' )\n * \t)\n * }\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { __ } from '@wordpress/i18n';\n * import { PluginPostStatusInfo } from '@wordpress/edit-post';\n *\n * const MyPluginPostStatusInfo = () => (\n * \t<PluginPostStatusInfo\n * \t\tclassName=\"my-plugin-post-status-info\"\n * \t>\n * \t\t{ __( 'My post status info' ) }\n * \t</PluginPostStatusInfo>\n * );\n * ```\n *\n * @return {WPComponent} The component to be rendered.\n */\nconst PluginPostStatusInfo = ( { children, className } ) => (\n\t<Fill>\n\t\t<PanelRow className={ className }>{ children }</PanelRow>\n\t</Fill>\n);\n\nPluginPostStatusInfo.Slot = Slot;\n\nexport default PluginPostStatusInfo;\n"]}
@@ -6,9 +6,12 @@ import { createElement, Fragment } from "@wordpress/element";
6
6
  import { __ } from '@wordpress/i18n';
7
7
  import { PanelRow, Dropdown, Button } from '@wordpress/components';
8
8
  import { useRef } from '@wordpress/element';
9
- import { PostSchedule as PostScheduleForm, PostScheduleLabel, PostScheduleCheck } from '@wordpress/editor';
10
- export function PostSchedule() {
9
+ import { PostSchedule as PostScheduleForm, PostScheduleLabel, PostScheduleCheck, usePostScheduleLabel } from '@wordpress/editor';
10
+ export default function PostSchedule() {
11
11
  const anchorRef = useRef();
12
+ const fullLabel = usePostScheduleLabel({
13
+ full: true
14
+ });
12
15
  return createElement(PostScheduleCheck, null, createElement(PanelRow, {
13
16
  className: "edit-post-post-schedule",
14
17
  ref: anchorRef
@@ -27,7 +30,8 @@ export function PostSchedule() {
27
30
  className: "edit-post-post-schedule__toggle",
28
31
  onClick: onToggle,
29
32
  "aria-expanded": isOpen,
30
- variant: "tertiary"
33
+ variant: "tertiary",
34
+ label: fullLabel
31
35
  }, createElement(PostScheduleLabel, null)));
32
36
  },
33
37
  renderContent: _ref2 => {
@@ -40,5 +44,4 @@ export function PostSchedule() {
40
44
  }
41
45
  })));
42
46
  }
43
- export default PostSchedule;
44
47
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-schedule/index.js"],"names":["__","PanelRow","Dropdown","Button","useRef","PostSchedule","PostScheduleForm","PostScheduleLabel","PostScheduleCheck","anchorRef","onToggle","isOpen","onClose"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,QAAT,EAAmBC,QAAnB,EAA6BC,MAA7B,QAA2C,uBAA3C;AACA,SAASC,MAAT,QAAuB,oBAAvB;AACA,SACCC,YAAY,IAAIC,gBADjB,EAECC,iBAFD,EAGCC,iBAHD,QAIO,mBAJP;AAMA,OAAO,SAASH,YAAT,GAAwB;AAC9B,QAAMI,SAAS,GAAGL,MAAM,EAAxB;AAEA,SACC,cAAC,iBAAD,QACC,cAAC,QAAD;AAAU,IAAA,SAAS,EAAC,yBAApB;AAA8C,IAAA,GAAG,EAAGK;AAApD,KACC,4BAAQT,EAAE,CAAE,SAAF,CAAV,CADD,EAEC,cAAC,QAAD;AACC,IAAA,YAAY,EAAG;AAAES,MAAAA;AAAF,KADhB;AAEC,IAAA,QAAQ,EAAC,aAFV;AAGC,IAAA,gBAAgB,EAAC,iCAHlB;AAIC,IAAA,YAAY,EAAG;AAAA,UAAE;AAAEC,QAAAA,QAAF;AAAYC,QAAAA;AAAZ,OAAF;AAAA,aACd,8BACC,cAAC,MAAD;AACC,QAAA,SAAS,EAAC,iCADX;AAEC,QAAA,OAAO,EAAGD,QAFX;AAGC,yBAAgBC,MAHjB;AAIC,QAAA,OAAO,EAAC;AAJT,SAMC,cAAC,iBAAD,OAND,CADD,CADc;AAAA,KAJhB;AAgBC,IAAA,aAAa,EAAG;AAAA,UAAE;AAAEC,QAAAA;AAAF,OAAF;AAAA,aACf,cAAC,gBAAD;AAAkB,QAAA,OAAO,EAAGA;AAA5B,QADe;AAAA;AAhBjB,IAFD,CADD,CADD;AA2BA;AAED,eAAeP,YAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelRow, Dropdown, Button } from '@wordpress/components';\nimport { useRef } from '@wordpress/element';\nimport {\n\tPostSchedule as PostScheduleForm,\n\tPostScheduleLabel,\n\tPostScheduleCheck,\n} from '@wordpress/editor';\n\nexport function PostSchedule() {\n\tconst anchorRef = useRef();\n\n\treturn (\n\t\t<PostScheduleCheck>\n\t\t\t<PanelRow className=\"edit-post-post-schedule\" ref={ anchorRef }>\n\t\t\t\t<span>{ __( 'Publish' ) }</span>\n\t\t\t\t<Dropdown\n\t\t\t\t\tpopoverProps={ { anchorRef } }\n\t\t\t\t\tposition=\"bottom left\"\n\t\t\t\t\tcontentClassName=\"edit-post-post-schedule__dialog\"\n\t\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tclassName=\"edit-post-post-schedule__toggle\"\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostScheduleLabel />\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t\t<PostScheduleForm onClose={ onClose } />\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</PanelRow>\n\t\t</PostScheduleCheck>\n\t);\n}\n\nexport default PostSchedule;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-schedule/index.js"],"names":["__","PanelRow","Dropdown","Button","useRef","PostSchedule","PostScheduleForm","PostScheduleLabel","PostScheduleCheck","usePostScheduleLabel","anchorRef","fullLabel","full","onToggle","isOpen","onClose"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,QAAT,EAAmBC,QAAnB,EAA6BC,MAA7B,QAA2C,uBAA3C;AACA,SAASC,MAAT,QAAuB,oBAAvB;AACA,SACCC,YAAY,IAAIC,gBADjB,EAECC,iBAFD,EAGCC,iBAHD,EAICC,oBAJD,QAKO,mBALP;AAOA,eAAe,SAASJ,YAAT,GAAwB;AACtC,QAAMK,SAAS,GAAGN,MAAM,EAAxB;AAEA,QAAMO,SAAS,GAAGF,oBAAoB,CAAE;AAAEG,IAAAA,IAAI,EAAE;AAAR,GAAF,CAAtC;AAEA,SACC,cAAC,iBAAD,QACC,cAAC,QAAD;AAAU,IAAA,SAAS,EAAC,yBAApB;AAA8C,IAAA,GAAG,EAAGF;AAApD,KACC,4BAAQV,EAAE,CAAE,SAAF,CAAV,CADD,EAEC,cAAC,QAAD;AACC,IAAA,YAAY,EAAG;AAAEU,MAAAA;AAAF,KADhB;AAEC,IAAA,QAAQ,EAAC,aAFV;AAGC,IAAA,gBAAgB,EAAC,iCAHlB;AAIC,IAAA,YAAY,EAAG;AAAA,UAAE;AAAEG,QAAAA,QAAF;AAAYC,QAAAA;AAAZ,OAAF;AAAA,aACd,8BACC,cAAC,MAAD;AACC,QAAA,SAAS,EAAC,iCADX;AAEC,QAAA,OAAO,EAAGD,QAFX;AAGC,yBAAgBC,MAHjB;AAIC,QAAA,OAAO,EAAC,UAJT;AAKC,QAAA,KAAK,EAAGH;AALT,SAOC,cAAC,iBAAD,OAPD,CADD,CADc;AAAA,KAJhB;AAiBC,IAAA,aAAa,EAAG;AAAA,UAAE;AAAEI,QAAAA;AAAF,OAAF;AAAA,aACf,cAAC,gBAAD;AAAkB,QAAA,OAAO,EAAGA;AAA5B,QADe;AAAA;AAjBjB,IAFD,CADD,CADD;AA4BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelRow, Dropdown, Button } from '@wordpress/components';\nimport { useRef } from '@wordpress/element';\nimport {\n\tPostSchedule as PostScheduleForm,\n\tPostScheduleLabel,\n\tPostScheduleCheck,\n\tusePostScheduleLabel,\n} from '@wordpress/editor';\n\nexport default function PostSchedule() {\n\tconst anchorRef = useRef();\n\n\tconst fullLabel = usePostScheduleLabel( { full: true } );\n\n\treturn (\n\t\t<PostScheduleCheck>\n\t\t\t<PanelRow className=\"edit-post-post-schedule\" ref={ anchorRef }>\n\t\t\t\t<span>{ __( 'Publish' ) }</span>\n\t\t\t\t<Dropdown\n\t\t\t\t\tpopoverProps={ { anchorRef } }\n\t\t\t\t\tposition=\"bottom left\"\n\t\t\t\t\tcontentClassName=\"edit-post-post-schedule__dialog\"\n\t\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tclassName=\"edit-post-post-schedule__toggle\"\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tlabel={ fullLabel }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostScheduleLabel />\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t\t<PostScheduleForm onClose={ onClose } />\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</PanelRow>\n\t\t</PostScheduleCheck>\n\t);\n}\n"]}