@wordpress/edit-post 7.17.0 → 7.17.1

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.
@@ -105,7 +105,7 @@ const PluginDocumentSettingPanel = ({
105
105
  toggleEditorPanelOpened
106
106
  } = (0, _data.useDispatch)(_store.store);
107
107
  if (undefined === name) {
108
- typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? (0, _warning.default)('PluginDocumentSettingPanel requires a name property.') : void 0;
108
+ typeof SCRIPT_DEBUG !== "undefined" && SCRIPT_DEBUG === true ? (0, _warning.default)('PluginDocumentSettingPanel requires a name property.') : void 0;
109
109
  }
110
110
  return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_options.EnablePluginDocumentSettingPanelOption, {
111
111
  label: title,
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_plugins","_data","_warning","_interopRequireDefault","_options","_store","Fill","Slot","createSlotFill","PluginDocumentSettingPanel","name","className","title","icon","children","pluginName","usePluginContext","panelName","opened","isEnabled","useSelect","select","isEditorPanelOpened","isEditorPanelEnabled","editPostStore","toggleEditorPanelOpened","useDispatch","undefined","process","env","NODE_ENV","warning","_element","createElement","Fragment","EnablePluginDocumentSettingPanelOption","label","PanelBody","onToggle","_default","exports","default"],"sources":["@wordpress/edit-post/src/components/sidebar/plugin-document-setting-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { usePluginContext } from '@wordpress/plugins';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport { EnablePluginDocumentSettingPanelOption } from '../../preferences-modal/options';\nimport { store as editPostStore } from '../../../store';\n\nconst { Fill, Slot } = createSlotFill( 'PluginDocumentSettingPanel' );\n\n/**\n * Renders items below the Status & Availability panel in the Document Sidebar.\n *\n * @param {Object} props Component properties.\n * @param {string} props.name Required. A machine-friendly name for the panel.\n * @param {string} [props.className] An optional class name added to the row.\n * @param {string} [props.title] The title of the panel\n * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element, to be rendered when the sidebar is pinned to toolbar.\n * @param {WPElement} props.children Children to be rendered\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var el = wp.element.createElement;\n * var __ = wp.i18n.__;\n * var registerPlugin = wp.plugins.registerPlugin;\n * var PluginDocumentSettingPanel = wp.editPost.PluginDocumentSettingPanel;\n *\n * function MyDocumentSettingPlugin() {\n * \treturn el(\n * \t\tPluginDocumentSettingPanel,\n * \t\t{\n * \t\t\tclassName: 'my-document-setting-plugin',\n * \t\t\ttitle: 'My Panel',\n * \t\t\tname: 'my-panel',\n * \t\t},\n * \t\t__( 'My Document Setting Panel' )\n * \t);\n * }\n *\n * registerPlugin( 'my-document-setting-plugin', {\n * \t\trender: MyDocumentSettingPlugin\n * } );\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { registerPlugin } from '@wordpress/plugins';\n * import { PluginDocumentSettingPanel } from '@wordpress/edit-post';\n *\n * const MyDocumentSettingTest = () => (\n * \t\t<PluginDocumentSettingPanel className=\"my-document-setting-plugin\" title=\"My Panel\" name=\"my-panel\">\n *\t\t\t<p>My Document Setting Panel</p>\n *\t\t</PluginDocumentSettingPanel>\n *\t);\n *\n * registerPlugin( 'document-setting-test', { render: MyDocumentSettingTest } );\n * ```\n *\n * @return {WPComponent} The component to be rendered.\n */\nconst PluginDocumentSettingPanel = ( {\n\tname,\n\tclassName,\n\ttitle,\n\ticon,\n\tchildren,\n} ) => {\n\tconst { name: pluginName } = usePluginContext();\n\tconst panelName = `${ pluginName }/${ name }`;\n\tconst { opened, isEnabled } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorPanelOpened, isEditorPanelEnabled } =\n\t\t\t\tselect( editPostStore );\n\n\t\t\treturn {\n\t\t\t\topened: isEditorPanelOpened( panelName ),\n\t\t\t\tisEnabled: isEditorPanelEnabled( panelName ),\n\t\t\t};\n\t\t},\n\t\t[ panelName ]\n\t);\n\tconst { toggleEditorPanelOpened } = useDispatch( editPostStore );\n\n\tif ( undefined === name ) {\n\t\twarning( 'PluginDocumentSettingPanel requires a name property.' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<EnablePluginDocumentSettingPanelOption\n\t\t\t\tlabel={ title }\n\t\t\t\tpanelName={ panelName }\n\t\t\t/>\n\t\t\t<Fill>\n\t\t\t\t{ isEnabled && (\n\t\t\t\t\t<PanelBody\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\topened={ opened }\n\t\t\t\t\t\tonToggle={ () => toggleEditorPanelOpened( panelName ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</Fill>\n\t\t</>\n\t);\n};\n\nPluginDocumentSettingPanel.Slot = Slot;\n\nexport default PluginDocumentSettingPanel;\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAC,sBAAA,CAAAJ,OAAA;AAKA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAZA;AACA;AACA;;AAMA;AACA;AACA;;AAIA,MAAM;EAAEO,IAAI;EAAEC;AAAK,CAAC,GAAG,IAAAC,0BAAc,EAAE,4BAA6B,CAAC;;AAErE;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,GAAGA,CAAE;EACpCC,IAAI;EACJC,SAAS;EACTC,KAAK;EACLC,IAAI;EACJC;AACD,CAAC,KAAM;EACN,MAAM;IAAEJ,IAAI,EAAEK;EAAW,CAAC,GAAG,IAAAC,yBAAgB,EAAC,CAAC;EAC/C,MAAMC,SAAS,GAAI,GAAGF,UAAY,IAAIL,IAAM,EAAC;EAC7C,MAAM;IAAEQ,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,eAAS,EACpCC,MAAM,IAAM;IACb,MAAM;MAAEC,mBAAmB;MAAEC;IAAqB,CAAC,GAClDF,MAAM,CAAEG,YAAc,CAAC;IAExB,OAAO;MACNN,MAAM,EAAEI,mBAAmB,CAAEL,SAAU,CAAC;MACxCE,SAAS,EAAEI,oBAAoB,CAAEN,SAAU;IAC5C,CAAC;EACF,CAAC,EACD,CAAEA,SAAS,CACZ,CAAC;EACD,MAAM;IAAEQ;EAAwB,CAAC,GAAG,IAAAC,iBAAW,EAAEF,YAAc,CAAC;EAEhE,IAAKG,SAAS,KAAKjB,IAAI,EAAG;IACzB,OAAAkB,OAAA,oBAAAA,OAAA,CAAAC,GAAA,IAAAD,OAAA,CAAAC,GAAA,CAAAC,QAAA,wBAAAC,gBAAO,EAAE,sDAAuD,CAAC;EAClE;EAEA,OACC,IAAAC,QAAA,CAAAC,aAAA,EAAAD,QAAA,CAAAE,QAAA,QACC,IAAAF,QAAA,CAAAC,aAAA,EAAC7B,QAAA,CAAA+B,sCAAsC;IACtCC,KAAK,EAAGxB,KAAO;IACfK,SAAS,EAAGA;EAAW,CACvB,CAAC,EACF,IAAAe,QAAA,CAAAC,aAAA,EAAC3B,IAAI,QACFa,SAAS,IACV,IAAAa,QAAA,CAAAC,aAAA,EAACnC,WAAA,CAAAuC,SAAS;IACT1B,SAAS,EAAGA,SAAW;IACvBC,KAAK,EAAGA,KAAO;IACfC,IAAI,EAAGA,IAAM;IACbK,MAAM,EAAGA,MAAQ;IACjBoB,QAAQ,EAAGA,CAAA,KAAMb,uBAAuB,CAAER,SAAU;EAAG,GAErDH,QACQ,CAEP,CACL,CAAC;AAEL,CAAC;AAEDL,0BAA0B,CAACF,IAAI,GAAGA,IAAI;AAAC,IAAAgC,QAAA,GAExB9B,0BAA0B;AAAA+B,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
1
+ {"version":3,"names":["_components","require","_plugins","_data","_warning","_interopRequireDefault","_options","_store","Fill","Slot","createSlotFill","PluginDocumentSettingPanel","name","className","title","icon","children","pluginName","usePluginContext","panelName","opened","isEnabled","useSelect","select","isEditorPanelOpened","isEditorPanelEnabled","editPostStore","toggleEditorPanelOpened","useDispatch","undefined","SCRIPT_DEBUG","warning","_element","createElement","Fragment","EnablePluginDocumentSettingPanelOption","label","PanelBody","onToggle","_default","exports","default"],"sources":["@wordpress/edit-post/src/components/sidebar/plugin-document-setting-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { usePluginContext } from '@wordpress/plugins';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport { EnablePluginDocumentSettingPanelOption } from '../../preferences-modal/options';\nimport { store as editPostStore } from '../../../store';\n\nconst { Fill, Slot } = createSlotFill( 'PluginDocumentSettingPanel' );\n\n/**\n * Renders items below the Status & Availability panel in the Document Sidebar.\n *\n * @param {Object} props Component properties.\n * @param {string} props.name Required. A machine-friendly name for the panel.\n * @param {string} [props.className] An optional class name added to the row.\n * @param {string} [props.title] The title of the panel\n * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element, to be rendered when the sidebar is pinned to toolbar.\n * @param {WPElement} props.children Children to be rendered\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var el = wp.element.createElement;\n * var __ = wp.i18n.__;\n * var registerPlugin = wp.plugins.registerPlugin;\n * var PluginDocumentSettingPanel = wp.editPost.PluginDocumentSettingPanel;\n *\n * function MyDocumentSettingPlugin() {\n * \treturn el(\n * \t\tPluginDocumentSettingPanel,\n * \t\t{\n * \t\t\tclassName: 'my-document-setting-plugin',\n * \t\t\ttitle: 'My Panel',\n * \t\t\tname: 'my-panel',\n * \t\t},\n * \t\t__( 'My Document Setting Panel' )\n * \t);\n * }\n *\n * registerPlugin( 'my-document-setting-plugin', {\n * \t\trender: MyDocumentSettingPlugin\n * } );\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { registerPlugin } from '@wordpress/plugins';\n * import { PluginDocumentSettingPanel } from '@wordpress/edit-post';\n *\n * const MyDocumentSettingTest = () => (\n * \t\t<PluginDocumentSettingPanel className=\"my-document-setting-plugin\" title=\"My Panel\" name=\"my-panel\">\n *\t\t\t<p>My Document Setting Panel</p>\n *\t\t</PluginDocumentSettingPanel>\n *\t);\n *\n * registerPlugin( 'document-setting-test', { render: MyDocumentSettingTest } );\n * ```\n *\n * @return {WPComponent} The component to be rendered.\n */\nconst PluginDocumentSettingPanel = ( {\n\tname,\n\tclassName,\n\ttitle,\n\ticon,\n\tchildren,\n} ) => {\n\tconst { name: pluginName } = usePluginContext();\n\tconst panelName = `${ pluginName }/${ name }`;\n\tconst { opened, isEnabled } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorPanelOpened, isEditorPanelEnabled } =\n\t\t\t\tselect( editPostStore );\n\n\t\t\treturn {\n\t\t\t\topened: isEditorPanelOpened( panelName ),\n\t\t\t\tisEnabled: isEditorPanelEnabled( panelName ),\n\t\t\t};\n\t\t},\n\t\t[ panelName ]\n\t);\n\tconst { toggleEditorPanelOpened } = useDispatch( editPostStore );\n\n\tif ( undefined === name ) {\n\t\twarning( 'PluginDocumentSettingPanel requires a name property.' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<EnablePluginDocumentSettingPanelOption\n\t\t\t\tlabel={ title }\n\t\t\t\tpanelName={ panelName }\n\t\t\t/>\n\t\t\t<Fill>\n\t\t\t\t{ isEnabled && (\n\t\t\t\t\t<PanelBody\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\topened={ opened }\n\t\t\t\t\t\tonToggle={ () => toggleEditorPanelOpened( panelName ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</Fill>\n\t\t</>\n\t);\n};\n\nPluginDocumentSettingPanel.Slot = Slot;\n\nexport default PluginDocumentSettingPanel;\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAC,sBAAA,CAAAJ,OAAA;AAKA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAZA;AACA;AACA;;AAMA;AACA;AACA;;AAIA,MAAM;EAAEO,IAAI;EAAEC;AAAK,CAAC,GAAG,IAAAC,0BAAc,EAAE,4BAA6B,CAAC;;AAErE;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,GAAGA,CAAE;EACpCC,IAAI;EACJC,SAAS;EACTC,KAAK;EACLC,IAAI;EACJC;AACD,CAAC,KAAM;EACN,MAAM;IAAEJ,IAAI,EAAEK;EAAW,CAAC,GAAG,IAAAC,yBAAgB,EAAC,CAAC;EAC/C,MAAMC,SAAS,GAAI,GAAGF,UAAY,IAAIL,IAAM,EAAC;EAC7C,MAAM;IAAEQ,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,eAAS,EACpCC,MAAM,IAAM;IACb,MAAM;MAAEC,mBAAmB;MAAEC;IAAqB,CAAC,GAClDF,MAAM,CAAEG,YAAc,CAAC;IAExB,OAAO;MACNN,MAAM,EAAEI,mBAAmB,CAAEL,SAAU,CAAC;MACxCE,SAAS,EAAEI,oBAAoB,CAAEN,SAAU;IAC5C,CAAC;EACF,CAAC,EACD,CAAEA,SAAS,CACZ,CAAC;EACD,MAAM;IAAEQ;EAAwB,CAAC,GAAG,IAAAC,iBAAW,EAAEF,YAAc,CAAC;EAEhE,IAAKG,SAAS,KAAKjB,IAAI,EAAG;IACzB,OAAAkB,YAAA,oBAAAA,YAAA,gBAAAC,gBAAO,EAAE,sDAAuD,CAAC;EAClE;EAEA,OACC,IAAAC,QAAA,CAAAC,aAAA,EAAAD,QAAA,CAAAE,QAAA,QACC,IAAAF,QAAA,CAAAC,aAAA,EAAC3B,QAAA,CAAA6B,sCAAsC;IACtCC,KAAK,EAAGtB,KAAO;IACfK,SAAS,EAAGA;EAAW,CACvB,CAAC,EACF,IAAAa,QAAA,CAAAC,aAAA,EAACzB,IAAI,QACFa,SAAS,IACV,IAAAW,QAAA,CAAAC,aAAA,EAACjC,WAAA,CAAAqC,SAAS;IACTxB,SAAS,EAAGA,SAAW;IACvBC,KAAK,EAAGA,KAAO;IACfC,IAAI,EAAGA,IAAM;IACbK,MAAM,EAAGA,MAAQ;IACjBkB,QAAQ,EAAGA,CAAA,KAAMX,uBAAuB,CAAER,SAAU;EAAG,GAErDH,QACQ,CAEP,CACL,CAAC;AAEL,CAAC;AAEDL,0BAA0B,CAACF,IAAI,GAAGA,IAAI;AAAC,IAAA8B,QAAA,GAExB5B,0BAA0B;AAAA6B,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _element = require("@wordpress/element");
8
- var _compose = require("@wordpress/compose");
9
8
  var _components = require("@wordpress/components");
10
9
  var _data = require("@wordpress/data");
11
10
  var _store = require("../../../store");
@@ -18,12 +17,27 @@ var _store = require("../../../store");
18
17
  */
19
18
 
20
19
  function TaxonomyPanel({
21
- isEnabled,
22
20
  taxonomy,
23
- isOpened,
24
- onTogglePanel,
25
21
  children
26
22
  }) {
23
+ const slug = taxonomy?.slug;
24
+ const panelName = slug ? `taxonomy-panel-${slug}` : '';
25
+ const {
26
+ isEnabled,
27
+ isOpened
28
+ } = (0, _data.useSelect)(select => {
29
+ const {
30
+ isEditorPanelEnabled,
31
+ isEditorPanelOpened
32
+ } = select(_store.store);
33
+ return {
34
+ isEnabled: slug ? isEditorPanelEnabled(panelName) : false,
35
+ isOpened: slug ? isEditorPanelOpened(panelName) : false
36
+ };
37
+ }, [panelName, slug]);
38
+ const {
39
+ toggleEditorPanelOpened
40
+ } = (0, _data.useDispatch)(_store.store);
27
41
  if (!isEnabled) {
28
42
  return null;
29
43
  }
@@ -34,21 +48,9 @@ function TaxonomyPanel({
34
48
  return (0, _element.createElement)(_components.PanelBody, {
35
49
  title: taxonomyMenuName,
36
50
  opened: isOpened,
37
- onToggle: onTogglePanel
51
+ onToggle: () => toggleEditorPanelOpened(panelName)
38
52
  }, children);
39
53
  }
40
- var _default = (0, _compose.compose)((0, _data.withSelect)((select, ownProps) => {
41
- const slug = ownProps.taxonomy?.slug;
42
- const panelName = slug ? `taxonomy-panel-${slug}` : '';
43
- return {
44
- panelName,
45
- isEnabled: slug ? select(_store.store).isEditorPanelEnabled(panelName) : false,
46
- isOpened: slug ? select(_store.store).isEditorPanelOpened(panelName) : false
47
- };
48
- }), (0, _data.withDispatch)((dispatch, ownProps) => ({
49
- onTogglePanel: () => {
50
- dispatch(_store.store).toggleEditorPanelOpened(ownProps.panelName);
51
- }
52
- })))(TaxonomyPanel);
54
+ var _default = TaxonomyPanel;
53
55
  exports.default = _default;
54
56
  //# sourceMappingURL=taxonomy-panel.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_compose","require","_components","_data","_store","TaxonomyPanel","isEnabled","taxonomy","isOpened","onTogglePanel","children","taxonomyMenuName","labels","menu_name","_element","createElement","PanelBody","title","opened","onToggle","_default","compose","withSelect","select","ownProps","slug","panelName","editPostStore","isEditorPanelEnabled","isEditorPanelOpened","withDispatch","dispatch","toggleEditorPanelOpened","exports","default"],"sources":["@wordpress/edit-post/src/components/sidebar/post-taxonomies/taxonomy-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { PanelBody } from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\n\nfunction TaxonomyPanel( {\n\tisEnabled,\n\ttaxonomy,\n\tisOpened,\n\tonTogglePanel,\n\tchildren,\n} ) {\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\tconst taxonomyMenuName = taxonomy?.labels?.menu_name;\n\tif ( ! taxonomyMenuName ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={ taxonomyMenuName }\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ onTogglePanel }\n\t\t>\n\t\t\t{ children }\n\t\t</PanelBody>\n\t);\n}\n\nexport default compose(\n\twithSelect( ( select, ownProps ) => {\n\t\tconst slug = ownProps.taxonomy?.slug;\n\t\tconst panelName = slug ? `taxonomy-panel-${ slug }` : '';\n\t\treturn {\n\t\t\tpanelName,\n\t\t\tisEnabled: slug\n\t\t\t\t? select( editPostStore ).isEditorPanelEnabled( panelName )\n\t\t\t\t: false,\n\t\t\tisOpened: slug\n\t\t\t\t? select( editPostStore ).isEditorPanelOpened( panelName )\n\t\t\t\t: false,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => ( {\n\t\tonTogglePanel: () => {\n\t\t\tdispatch( editPostStore ).toggleEditorPanelOpened(\n\t\t\t\townProps.panelName\n\t\t\t);\n\t\t},\n\t} ) )\n)( TaxonomyPanel );\n"],"mappings":";;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAKA,IAAAG,MAAA,GAAAH,OAAA;AAVA;AACA;AACA;;AAKA;AACA;AACA;;AAGA,SAASI,aAAaA,CAAE;EACvBC,SAAS;EACTC,QAAQ;EACRC,QAAQ;EACRC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,IAAK,CAAEJ,SAAS,EAAG;IAClB,OAAO,IAAI;EACZ;EAEA,MAAMK,gBAAgB,GAAGJ,QAAQ,EAAEK,MAAM,EAAEC,SAAS;EACpD,IAAK,CAAEF,gBAAgB,EAAG;IACzB,OAAO,IAAI;EACZ;EAEA,OACC,IAAAG,QAAA,CAAAC,aAAA,EAACb,WAAA,CAAAc,SAAS;IACTC,KAAK,EAAGN,gBAAkB;IAC1BO,MAAM,EAAGV,QAAU;IACnBW,QAAQ,EAAGV;EAAe,GAExBC,QACQ,CAAC;AAEd;AAAC,IAAAU,QAAA,GAEc,IAAAC,gBAAO,EACrB,IAAAC,gBAAU,EAAE,CAAEC,MAAM,EAAEC,QAAQ,KAAM;EACnC,MAAMC,IAAI,GAAGD,QAAQ,CAACjB,QAAQ,EAAEkB,IAAI;EACpC,MAAMC,SAAS,GAAGD,IAAI,GAAI,kBAAkBA,IAAM,EAAC,GAAG,EAAE;EACxD,OAAO;IACNC,SAAS;IACTpB,SAAS,EAAEmB,IAAI,GACZF,MAAM,CAAEI,YAAc,CAAC,CAACC,oBAAoB,CAAEF,SAAU,CAAC,GACzD,KAAK;IACRlB,QAAQ,EAAEiB,IAAI,GACXF,MAAM,CAAEI,YAAc,CAAC,CAACE,mBAAmB,CAAEH,SAAU,CAAC,GACxD;EACJ,CAAC;AACF,CAAE,CAAC,EACH,IAAAI,kBAAY,EAAE,CAAEC,QAAQ,EAAEP,QAAQ,MAAQ;EACzCf,aAAa,EAAEA,CAAA,KAAM;IACpBsB,QAAQ,CAAEJ,YAAc,CAAC,CAACK,uBAAuB,CAChDR,QAAQ,CAACE,SACV,CAAC;EACF;AACD,CAAC,CAAG,CACL,CAAC,CAAErB,aAAc,CAAC;AAAA4B,OAAA,CAAAC,OAAA,GAAAd,QAAA"}
1
+ {"version":3,"names":["_components","require","_data","_store","TaxonomyPanel","taxonomy","children","slug","panelName","isEnabled","isOpened","useSelect","select","isEditorPanelEnabled","isEditorPanelOpened","editPostStore","toggleEditorPanelOpened","useDispatch","taxonomyMenuName","labels","menu_name","_element","createElement","PanelBody","title","opened","onToggle","_default","exports","default"],"sources":["@wordpress/edit-post/src/components/sidebar/post-taxonomies/taxonomy-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { PanelBody } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\n\nfunction TaxonomyPanel( { taxonomy, children } ) {\n\tconst slug = taxonomy?.slug;\n\tconst panelName = slug ? `taxonomy-panel-${ slug }` : '';\n\tconst { isEnabled, isOpened } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorPanelEnabled, isEditorPanelOpened } =\n\t\t\t\tselect( editPostStore );\n\t\t\treturn {\n\t\t\t\tisEnabled: slug ? isEditorPanelEnabled( panelName ) : false,\n\t\t\t\tisOpened: slug ? isEditorPanelOpened( panelName ) : false,\n\t\t\t};\n\t\t},\n\t\t[ panelName, slug ]\n\t);\n\tconst { toggleEditorPanelOpened } = useDispatch( editPostStore );\n\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\tconst taxonomyMenuName = taxonomy?.labels?.menu_name;\n\tif ( ! taxonomyMenuName ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={ taxonomyMenuName }\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ () => toggleEditorPanelOpened( panelName ) }\n\t\t>\n\t\t\t{ children }\n\t\t</PanelBody>\n\t);\n}\n\nexport default TaxonomyPanel;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,MAAA,GAAAF,OAAA;AATA;AACA;AACA;;AAIA;AACA;AACA;;AAGA,SAASG,aAAaA,CAAE;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EAChD,MAAMC,IAAI,GAAGF,QAAQ,EAAEE,IAAI;EAC3B,MAAMC,SAAS,GAAGD,IAAI,GAAI,kBAAkBA,IAAM,EAAC,GAAG,EAAE;EACxD,MAAM;IAAEE,SAAS;IAAEC;EAAS,CAAC,GAAG,IAAAC,eAAS,EACtCC,MAAM,IAAM;IACb,MAAM;MAAEC,oBAAoB;MAAEC;IAAoB,CAAC,GAClDF,MAAM,CAAEG,YAAc,CAAC;IACxB,OAAO;MACNN,SAAS,EAAEF,IAAI,GAAGM,oBAAoB,CAAEL,SAAU,CAAC,GAAG,KAAK;MAC3DE,QAAQ,EAAEH,IAAI,GAAGO,mBAAmB,CAAEN,SAAU,CAAC,GAAG;IACrD,CAAC;EACF,CAAC,EACD,CAAEA,SAAS,EAAED,IAAI,CAClB,CAAC;EACD,MAAM;IAAES;EAAwB,CAAC,GAAG,IAAAC,iBAAW,EAAEF,YAAc,CAAC;EAEhE,IAAK,CAAEN,SAAS,EAAG;IAClB,OAAO,IAAI;EACZ;EAEA,MAAMS,gBAAgB,GAAGb,QAAQ,EAAEc,MAAM,EAAEC,SAAS;EACpD,IAAK,CAAEF,gBAAgB,EAAG;IACzB,OAAO,IAAI;EACZ;EAEA,OACC,IAAAG,QAAA,CAAAC,aAAA,EAACtB,WAAA,CAAAuB,SAAS;IACTC,KAAK,EAAGN,gBAAkB;IAC1BO,MAAM,EAAGf,QAAU;IACnBgB,QAAQ,EAAGA,CAAA,KAAMV,uBAAuB,CAAER,SAAU;EAAG,GAErDF,QACQ,CAAC;AAEd;AAAC,IAAAqB,QAAA,GAEcvB,aAAa;AAAAwB,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
@@ -441,7 +441,7 @@ function isInserterOpened(state) {
441
441
  * @return {Object} The root client ID, index to insert at and starting filter value.
442
442
  */
443
443
  function __experimentalGetInsertionPoint(state) {
444
- if (typeof state === 'boolean') {
444
+ if (typeof state.blockInserterPanel === 'boolean') {
445
445
  return EMPTY_INSERTION_POINT;
446
446
  }
447
447
  return state.blockInserterPanel;
@@ -1 +1 @@
1
- {"version":3,"names":["_rememo","_interopRequireDefault","require","_data","_interface","_preferences","_coreData","_editor","_deprecated","EMPTY_ARRAY","EMPTY_OBJECT","EMPTY_INSERTION_POINT","rootClientId","undefined","insertionIndex","filterValue","getEditorMode","createRegistrySelector","select","_select$get","preferencesStore","get","exports","isEditorSidebarOpened","activeGeneralSidebar","interfaceStore","getActiveComplementaryArea","includes","isPluginSidebarOpened","getActiveGeneralSidebarName","convertPanelsToOldFormat","inactivePanels","openPanels","_ref","panelsWithEnabledState","reduce","accumulatedPanels","panelName","enabled","panels","currentPanelState","opened","getPreferences","deprecated","since","alternative","preferences","accumulatedPrefs","preferenceKey","value","getPreference","state","defaultValue","getHiddenBlockTypes","_select$get2","isPublishSidebarOpened","publishSidebarActive","isEditorPanelRemoved","removedPanels","isEditorPanelEnabled","isEditorPanelOpened","isModalActive","modalName","isFeatureActive","feature","isPluginItemPinned","pluginName","isItemPinned","getActiveMetaBoxLocations","createSelector","Object","keys","metaBoxes","locations","filter","location","isMetaBoxLocationActive","isMetaBoxLocationVisible","getMetaBoxesPerLocation","some","id","length","getAllMetaBoxes","values","flat","hasMetaBoxes","isSavingMetaBoxes","isSaving","__experimentalGetPreviewDeviceType","deviceType","isInserterOpened","blockInserterPanel","__experimentalGetInsertionPoint","isListViewOpened","listViewPanel","isEditingTemplate","areMetaBoxesInitialized","initialized","getEditedPostTemplate","currentTemplate","editorStore","getEditedPostAttribute","templateWithSameSlug","coreStore","getEntityRecords","per_page","find","template","slug","getEditedEntityRecord","post","getCurrentPost","link","__experimentalGetTemplateForLink"],"sources":["@wordpress/edit-post/src/store/selectors.js"],"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 = {};\nconst EMPTY_INSERTION_POINT = {\n\trootClientId: undefined,\n\tinsertionIndex: undefined,\n\tfilterValue: undefined,\n};\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 * @deprecated since WP 6.3 use `core/interface` store's selector with the same name instead.\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 const isModalActive = createRegistrySelector(\n\t( select ) => ( state, modalName ) => {\n\t\tdeprecated( `select( 'core/edit-post' ).isModalActive`, {\n\t\t\tsince: '6.3',\n\t\t\talternative: `select( 'core/interface' ).isModalActive`,\n\t\t} );\n\t\treturn !! select( interfaceStore ).isModalActive( modalName );\n\t}\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\tif ( typeof state === 'boolean' ) {\n\t\treturn EMPTY_INSERTION_POINT;\n\t}\n\n\treturn state.blockInserterPanel;\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"],"mappings":"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"}
1
+ {"version":3,"names":["_rememo","_interopRequireDefault","require","_data","_interface","_preferences","_coreData","_editor","_deprecated","EMPTY_ARRAY","EMPTY_OBJECT","EMPTY_INSERTION_POINT","rootClientId","undefined","insertionIndex","filterValue","getEditorMode","createRegistrySelector","select","_select$get","preferencesStore","get","exports","isEditorSidebarOpened","activeGeneralSidebar","interfaceStore","getActiveComplementaryArea","includes","isPluginSidebarOpened","getActiveGeneralSidebarName","convertPanelsToOldFormat","inactivePanels","openPanels","_ref","panelsWithEnabledState","reduce","accumulatedPanels","panelName","enabled","panels","currentPanelState","opened","getPreferences","deprecated","since","alternative","preferences","accumulatedPrefs","preferenceKey","value","getPreference","state","defaultValue","getHiddenBlockTypes","_select$get2","isPublishSidebarOpened","publishSidebarActive","isEditorPanelRemoved","removedPanels","isEditorPanelEnabled","isEditorPanelOpened","isModalActive","modalName","isFeatureActive","feature","isPluginItemPinned","pluginName","isItemPinned","getActiveMetaBoxLocations","createSelector","Object","keys","metaBoxes","locations","filter","location","isMetaBoxLocationActive","isMetaBoxLocationVisible","getMetaBoxesPerLocation","some","id","length","getAllMetaBoxes","values","flat","hasMetaBoxes","isSavingMetaBoxes","isSaving","__experimentalGetPreviewDeviceType","deviceType","isInserterOpened","blockInserterPanel","__experimentalGetInsertionPoint","isListViewOpened","listViewPanel","isEditingTemplate","areMetaBoxesInitialized","initialized","getEditedPostTemplate","currentTemplate","editorStore","getEditedPostAttribute","templateWithSameSlug","coreStore","getEntityRecords","per_page","find","template","slug","getEditedEntityRecord","post","getCurrentPost","link","__experimentalGetTemplateForLink"],"sources":["@wordpress/edit-post/src/store/selectors.js"],"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 = {};\nconst EMPTY_INSERTION_POINT = {\n\trootClientId: undefined,\n\tinsertionIndex: undefined,\n\tfilterValue: undefined,\n};\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 * @deprecated since WP 6.3 use `core/interface` store's selector with the same name instead.\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 const isModalActive = createRegistrySelector(\n\t( select ) => ( state, modalName ) => {\n\t\tdeprecated( `select( 'core/edit-post' ).isModalActive`, {\n\t\t\tsince: '6.3',\n\t\t\talternative: `select( 'core/interface' ).isModalActive`,\n\t\t} );\n\t\treturn !! select( interfaceStore ).isModalActive( modalName );\n\t}\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\tif ( typeof state.blockInserterPanel === 'boolean' ) {\n\t\treturn EMPTY_INSERTION_POINT;\n\t}\n\n\treturn state.blockInserterPanel;\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"],"mappings":"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"}
@@ -97,7 +97,7 @@ const PluginDocumentSettingPanel = ({
97
97
  toggleEditorPanelOpened
98
98
  } = useDispatch(editPostStore);
99
99
  if (undefined === name) {
100
- typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? warning('PluginDocumentSettingPanel requires a name property.') : void 0;
100
+ typeof SCRIPT_DEBUG !== "undefined" && SCRIPT_DEBUG === true ? warning('PluginDocumentSettingPanel requires a name property.') : void 0;
101
101
  }
102
102
  return createElement(Fragment, null, createElement(EnablePluginDocumentSettingPanelOption, {
103
103
  label: title,
@@ -1 +1 @@
1
- {"version":3,"names":["createSlotFill","PanelBody","usePluginContext","useDispatch","useSelect","warning","EnablePluginDocumentSettingPanelOption","store","editPostStore","Fill","Slot","PluginDocumentSettingPanel","name","className","title","icon","children","pluginName","panelName","opened","isEnabled","select","isEditorPanelOpened","isEditorPanelEnabled","toggleEditorPanelOpened","undefined","process","env","NODE_ENV","createElement","Fragment","label","onToggle"],"sources":["@wordpress/edit-post/src/components/sidebar/plugin-document-setting-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { usePluginContext } from '@wordpress/plugins';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport { EnablePluginDocumentSettingPanelOption } from '../../preferences-modal/options';\nimport { store as editPostStore } from '../../../store';\n\nconst { Fill, Slot } = createSlotFill( 'PluginDocumentSettingPanel' );\n\n/**\n * Renders items below the Status & Availability panel in the Document Sidebar.\n *\n * @param {Object} props Component properties.\n * @param {string} props.name Required. A machine-friendly name for the panel.\n * @param {string} [props.className] An optional class name added to the row.\n * @param {string} [props.title] The title of the panel\n * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element, to be rendered when the sidebar is pinned to toolbar.\n * @param {WPElement} props.children Children to be rendered\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var el = wp.element.createElement;\n * var __ = wp.i18n.__;\n * var registerPlugin = wp.plugins.registerPlugin;\n * var PluginDocumentSettingPanel = wp.editPost.PluginDocumentSettingPanel;\n *\n * function MyDocumentSettingPlugin() {\n * \treturn el(\n * \t\tPluginDocumentSettingPanel,\n * \t\t{\n * \t\t\tclassName: 'my-document-setting-plugin',\n * \t\t\ttitle: 'My Panel',\n * \t\t\tname: 'my-panel',\n * \t\t},\n * \t\t__( 'My Document Setting Panel' )\n * \t);\n * }\n *\n * registerPlugin( 'my-document-setting-plugin', {\n * \t\trender: MyDocumentSettingPlugin\n * } );\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { registerPlugin } from '@wordpress/plugins';\n * import { PluginDocumentSettingPanel } from '@wordpress/edit-post';\n *\n * const MyDocumentSettingTest = () => (\n * \t\t<PluginDocumentSettingPanel className=\"my-document-setting-plugin\" title=\"My Panel\" name=\"my-panel\">\n *\t\t\t<p>My Document Setting Panel</p>\n *\t\t</PluginDocumentSettingPanel>\n *\t);\n *\n * registerPlugin( 'document-setting-test', { render: MyDocumentSettingTest } );\n * ```\n *\n * @return {WPComponent} The component to be rendered.\n */\nconst PluginDocumentSettingPanel = ( {\n\tname,\n\tclassName,\n\ttitle,\n\ticon,\n\tchildren,\n} ) => {\n\tconst { name: pluginName } = usePluginContext();\n\tconst panelName = `${ pluginName }/${ name }`;\n\tconst { opened, isEnabled } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorPanelOpened, isEditorPanelEnabled } =\n\t\t\t\tselect( editPostStore );\n\n\t\t\treturn {\n\t\t\t\topened: isEditorPanelOpened( panelName ),\n\t\t\t\tisEnabled: isEditorPanelEnabled( panelName ),\n\t\t\t};\n\t\t},\n\t\t[ panelName ]\n\t);\n\tconst { toggleEditorPanelOpened } = useDispatch( editPostStore );\n\n\tif ( undefined === name ) {\n\t\twarning( 'PluginDocumentSettingPanel requires a name property.' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<EnablePluginDocumentSettingPanelOption\n\t\t\t\tlabel={ title }\n\t\t\t\tpanelName={ panelName }\n\t\t\t/>\n\t\t\t<Fill>\n\t\t\t\t{ isEnabled && (\n\t\t\t\t\t<PanelBody\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\topened={ opened }\n\t\t\t\t\t\tonToggle={ () => toggleEditorPanelOpened( panelName ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</Fill>\n\t\t</>\n\t);\n};\n\nPluginDocumentSettingPanel.Slot = Slot;\n\nexport default PluginDocumentSettingPanel;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,cAAc,EAAEC,SAAS,QAAQ,uBAAuB;AACjE,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,OAAOC,OAAO,MAAM,oBAAoB;;AAExC;AACA;AACA;AACA,SAASC,sCAAsC,QAAQ,iCAAiC;AACxF,SAASC,KAAK,IAAIC,aAAa,QAAQ,gBAAgB;AAEvD,MAAM;EAAEC,IAAI;EAAEC;AAAK,CAAC,GAAGV,cAAc,CAAE,4BAA6B,CAAC;;AAErE;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMW,0BAA0B,GAAGA,CAAE;EACpCC,IAAI;EACJC,SAAS;EACTC,KAAK;EACLC,IAAI;EACJC;AACD,CAAC,KAAM;EACN,MAAM;IAAEJ,IAAI,EAAEK;EAAW,CAAC,GAAGf,gBAAgB,CAAC,CAAC;EAC/C,MAAMgB,SAAS,GAAI,GAAGD,UAAY,IAAIL,IAAM,EAAC;EAC7C,MAAM;IAAEO,MAAM;IAAEC;EAAU,CAAC,GAAGhB,SAAS,CACpCiB,MAAM,IAAM;IACb,MAAM;MAAEC,mBAAmB;MAAEC;IAAqB,CAAC,GAClDF,MAAM,CAAEb,aAAc,CAAC;IAExB,OAAO;MACNW,MAAM,EAAEG,mBAAmB,CAAEJ,SAAU,CAAC;MACxCE,SAAS,EAAEG,oBAAoB,CAAEL,SAAU;IAC5C,CAAC;EACF,CAAC,EACD,CAAEA,SAAS,CACZ,CAAC;EACD,MAAM;IAAEM;EAAwB,CAAC,GAAGrB,WAAW,CAAEK,aAAc,CAAC;EAEhE,IAAKiB,SAAS,KAAKb,IAAI,EAAG;IACzB,OAAAc,OAAA,oBAAAA,OAAA,CAAAC,GAAA,IAAAD,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAAvB,OAAO,CAAE,sDAAuD,CAAC;EAClE;EAEA,OACCwB,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACvB,sCAAsC;IACtCyB,KAAK,EAAGjB,KAAO;IACfI,SAAS,EAAGA;EAAW,CACvB,CAAC,EACFW,aAAA,CAACpB,IAAI,QACFW,SAAS,IACVS,aAAA,CAAC5B,SAAS;IACTY,SAAS,EAAGA,SAAW;IACvBC,KAAK,EAAGA,KAAO;IACfC,IAAI,EAAGA,IAAM;IACbI,MAAM,EAAGA,MAAQ;IACjBa,QAAQ,EAAGA,CAAA,KAAMR,uBAAuB,CAAEN,SAAU;EAAG,GAErDF,QACQ,CAEP,CACL,CAAC;AAEL,CAAC;AAEDL,0BAA0B,CAACD,IAAI,GAAGA,IAAI;AAEtC,eAAeC,0BAA0B"}
1
+ {"version":3,"names":["createSlotFill","PanelBody","usePluginContext","useDispatch","useSelect","warning","EnablePluginDocumentSettingPanelOption","store","editPostStore","Fill","Slot","PluginDocumentSettingPanel","name","className","title","icon","children","pluginName","panelName","opened","isEnabled","select","isEditorPanelOpened","isEditorPanelEnabled","toggleEditorPanelOpened","undefined","SCRIPT_DEBUG","createElement","Fragment","label","onToggle"],"sources":["@wordpress/edit-post/src/components/sidebar/plugin-document-setting-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { usePluginContext } from '@wordpress/plugins';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport { EnablePluginDocumentSettingPanelOption } from '../../preferences-modal/options';\nimport { store as editPostStore } from '../../../store';\n\nconst { Fill, Slot } = createSlotFill( 'PluginDocumentSettingPanel' );\n\n/**\n * Renders items below the Status & Availability panel in the Document Sidebar.\n *\n * @param {Object} props Component properties.\n * @param {string} props.name Required. A machine-friendly name for the panel.\n * @param {string} [props.className] An optional class name added to the row.\n * @param {string} [props.title] The title of the panel\n * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element, to be rendered when the sidebar is pinned to toolbar.\n * @param {WPElement} props.children Children to be rendered\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var el = wp.element.createElement;\n * var __ = wp.i18n.__;\n * var registerPlugin = wp.plugins.registerPlugin;\n * var PluginDocumentSettingPanel = wp.editPost.PluginDocumentSettingPanel;\n *\n * function MyDocumentSettingPlugin() {\n * \treturn el(\n * \t\tPluginDocumentSettingPanel,\n * \t\t{\n * \t\t\tclassName: 'my-document-setting-plugin',\n * \t\t\ttitle: 'My Panel',\n * \t\t\tname: 'my-panel',\n * \t\t},\n * \t\t__( 'My Document Setting Panel' )\n * \t);\n * }\n *\n * registerPlugin( 'my-document-setting-plugin', {\n * \t\trender: MyDocumentSettingPlugin\n * } );\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { registerPlugin } from '@wordpress/plugins';\n * import { PluginDocumentSettingPanel } from '@wordpress/edit-post';\n *\n * const MyDocumentSettingTest = () => (\n * \t\t<PluginDocumentSettingPanel className=\"my-document-setting-plugin\" title=\"My Panel\" name=\"my-panel\">\n *\t\t\t<p>My Document Setting Panel</p>\n *\t\t</PluginDocumentSettingPanel>\n *\t);\n *\n * registerPlugin( 'document-setting-test', { render: MyDocumentSettingTest } );\n * ```\n *\n * @return {WPComponent} The component to be rendered.\n */\nconst PluginDocumentSettingPanel = ( {\n\tname,\n\tclassName,\n\ttitle,\n\ticon,\n\tchildren,\n} ) => {\n\tconst { name: pluginName } = usePluginContext();\n\tconst panelName = `${ pluginName }/${ name }`;\n\tconst { opened, isEnabled } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorPanelOpened, isEditorPanelEnabled } =\n\t\t\t\tselect( editPostStore );\n\n\t\t\treturn {\n\t\t\t\topened: isEditorPanelOpened( panelName ),\n\t\t\t\tisEnabled: isEditorPanelEnabled( panelName ),\n\t\t\t};\n\t\t},\n\t\t[ panelName ]\n\t);\n\tconst { toggleEditorPanelOpened } = useDispatch( editPostStore );\n\n\tif ( undefined === name ) {\n\t\twarning( 'PluginDocumentSettingPanel requires a name property.' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<EnablePluginDocumentSettingPanelOption\n\t\t\t\tlabel={ title }\n\t\t\t\tpanelName={ panelName }\n\t\t\t/>\n\t\t\t<Fill>\n\t\t\t\t{ isEnabled && (\n\t\t\t\t\t<PanelBody\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\topened={ opened }\n\t\t\t\t\t\tonToggle={ () => toggleEditorPanelOpened( panelName ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</Fill>\n\t\t</>\n\t);\n};\n\nPluginDocumentSettingPanel.Slot = Slot;\n\nexport default PluginDocumentSettingPanel;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,cAAc,EAAEC,SAAS,QAAQ,uBAAuB;AACjE,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,OAAOC,OAAO,MAAM,oBAAoB;;AAExC;AACA;AACA;AACA,SAASC,sCAAsC,QAAQ,iCAAiC;AACxF,SAASC,KAAK,IAAIC,aAAa,QAAQ,gBAAgB;AAEvD,MAAM;EAAEC,IAAI;EAAEC;AAAK,CAAC,GAAGV,cAAc,CAAE,4BAA6B,CAAC;;AAErE;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMW,0BAA0B,GAAGA,CAAE;EACpCC,IAAI;EACJC,SAAS;EACTC,KAAK;EACLC,IAAI;EACJC;AACD,CAAC,KAAM;EACN,MAAM;IAAEJ,IAAI,EAAEK;EAAW,CAAC,GAAGf,gBAAgB,CAAC,CAAC;EAC/C,MAAMgB,SAAS,GAAI,GAAGD,UAAY,IAAIL,IAAM,EAAC;EAC7C,MAAM;IAAEO,MAAM;IAAEC;EAAU,CAAC,GAAGhB,SAAS,CACpCiB,MAAM,IAAM;IACb,MAAM;MAAEC,mBAAmB;MAAEC;IAAqB,CAAC,GAClDF,MAAM,CAAEb,aAAc,CAAC;IAExB,OAAO;MACNW,MAAM,EAAEG,mBAAmB,CAAEJ,SAAU,CAAC;MACxCE,SAAS,EAAEG,oBAAoB,CAAEL,SAAU;IAC5C,CAAC;EACF,CAAC,EACD,CAAEA,SAAS,CACZ,CAAC;EACD,MAAM;IAAEM;EAAwB,CAAC,GAAGrB,WAAW,CAAEK,aAAc,CAAC;EAEhE,IAAKiB,SAAS,KAAKb,IAAI,EAAG;IACzB,OAAAc,YAAA,oBAAAA,YAAA,YAAArB,OAAO,CAAE,sDAAuD,CAAC;EAClE;EAEA,OACCsB,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACrB,sCAAsC;IACtCuB,KAAK,EAAGf,KAAO;IACfI,SAAS,EAAGA;EAAW,CACvB,CAAC,EACFS,aAAA,CAAClB,IAAI,QACFW,SAAS,IACVO,aAAA,CAAC1B,SAAS;IACTY,SAAS,EAAGA,SAAW;IACvBC,KAAK,EAAGA,KAAO;IACfC,IAAI,EAAGA,IAAM;IACbI,MAAM,EAAGA,MAAQ;IACjBW,QAAQ,EAAGA,CAAA,KAAMN,uBAAuB,CAAEN,SAAU;EAAG,GAErDF,QACQ,CAEP,CACL,CAAC;AAEL,CAAC;AAEDL,0BAA0B,CAACD,IAAI,GAAGA,IAAI;AAEtC,eAAeC,0BAA0B"}
@@ -2,21 +2,35 @@ import { createElement } from "@wordpress/element";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
5
- import { compose } from '@wordpress/compose';
6
5
  import { PanelBody } from '@wordpress/components';
7
- import { withSelect, withDispatch } from '@wordpress/data';
6
+ import { useSelect, useDispatch } from '@wordpress/data';
8
7
 
9
8
  /**
10
9
  * Internal dependencies
11
10
  */
12
11
  import { store as editPostStore } from '../../../store';
13
12
  function TaxonomyPanel({
14
- isEnabled,
15
13
  taxonomy,
16
- isOpened,
17
- onTogglePanel,
18
14
  children
19
15
  }) {
16
+ const slug = taxonomy?.slug;
17
+ const panelName = slug ? `taxonomy-panel-${slug}` : '';
18
+ const {
19
+ isEnabled,
20
+ isOpened
21
+ } = useSelect(select => {
22
+ const {
23
+ isEditorPanelEnabled,
24
+ isEditorPanelOpened
25
+ } = select(editPostStore);
26
+ return {
27
+ isEnabled: slug ? isEditorPanelEnabled(panelName) : false,
28
+ isOpened: slug ? isEditorPanelOpened(panelName) : false
29
+ };
30
+ }, [panelName, slug]);
31
+ const {
32
+ toggleEditorPanelOpened
33
+ } = useDispatch(editPostStore);
20
34
  if (!isEnabled) {
21
35
  return null;
22
36
  }
@@ -27,20 +41,8 @@ function TaxonomyPanel({
27
41
  return createElement(PanelBody, {
28
42
  title: taxonomyMenuName,
29
43
  opened: isOpened,
30
- onToggle: onTogglePanel
44
+ onToggle: () => toggleEditorPanelOpened(panelName)
31
45
  }, children);
32
46
  }
33
- export default compose(withSelect((select, ownProps) => {
34
- const slug = ownProps.taxonomy?.slug;
35
- const panelName = slug ? `taxonomy-panel-${slug}` : '';
36
- return {
37
- panelName,
38
- isEnabled: slug ? select(editPostStore).isEditorPanelEnabled(panelName) : false,
39
- isOpened: slug ? select(editPostStore).isEditorPanelOpened(panelName) : false
40
- };
41
- }), withDispatch((dispatch, ownProps) => ({
42
- onTogglePanel: () => {
43
- dispatch(editPostStore).toggleEditorPanelOpened(ownProps.panelName);
44
- }
45
- })))(TaxonomyPanel);
47
+ export default TaxonomyPanel;
46
48
  //# sourceMappingURL=taxonomy-panel.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["compose","PanelBody","withSelect","withDispatch","store","editPostStore","TaxonomyPanel","isEnabled","taxonomy","isOpened","onTogglePanel","children","taxonomyMenuName","labels","menu_name","createElement","title","opened","onToggle","select","ownProps","slug","panelName","isEditorPanelEnabled","isEditorPanelOpened","dispatch","toggleEditorPanelOpened"],"sources":["@wordpress/edit-post/src/components/sidebar/post-taxonomies/taxonomy-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { PanelBody } from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\n\nfunction TaxonomyPanel( {\n\tisEnabled,\n\ttaxonomy,\n\tisOpened,\n\tonTogglePanel,\n\tchildren,\n} ) {\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\tconst taxonomyMenuName = taxonomy?.labels?.menu_name;\n\tif ( ! taxonomyMenuName ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={ taxonomyMenuName }\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ onTogglePanel }\n\t\t>\n\t\t\t{ children }\n\t\t</PanelBody>\n\t);\n}\n\nexport default compose(\n\twithSelect( ( select, ownProps ) => {\n\t\tconst slug = ownProps.taxonomy?.slug;\n\t\tconst panelName = slug ? `taxonomy-panel-${ slug }` : '';\n\t\treturn {\n\t\t\tpanelName,\n\t\t\tisEnabled: slug\n\t\t\t\t? select( editPostStore ).isEditorPanelEnabled( panelName )\n\t\t\t\t: false,\n\t\t\tisOpened: slug\n\t\t\t\t? select( editPostStore ).isEditorPanelOpened( panelName )\n\t\t\t\t: false,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => ( {\n\t\tonTogglePanel: () => {\n\t\t\tdispatch( editPostStore ).toggleEditorPanelOpened(\n\t\t\t\townProps.panelName\n\t\t\t);\n\t\t},\n\t} ) )\n)( TaxonomyPanel );\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,SAAS,QAAQ,uBAAuB;AACjD,SAASC,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;;AAE1D;AACA;AACA;AACA,SAASC,KAAK,IAAIC,aAAa,QAAQ,gBAAgB;AAEvD,SAASC,aAAaA,CAAE;EACvBC,SAAS;EACTC,QAAQ;EACRC,QAAQ;EACRC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,IAAK,CAAEJ,SAAS,EAAG;IAClB,OAAO,IAAI;EACZ;EAEA,MAAMK,gBAAgB,GAAGJ,QAAQ,EAAEK,MAAM,EAAEC,SAAS;EACpD,IAAK,CAAEF,gBAAgB,EAAG;IACzB,OAAO,IAAI;EACZ;EAEA,OACCG,aAAA,CAACd,SAAS;IACTe,KAAK,EAAGJ,gBAAkB;IAC1BK,MAAM,EAAGR,QAAU;IACnBS,QAAQ,EAAGR;EAAe,GAExBC,QACQ,CAAC;AAEd;AAEA,eAAeX,OAAO,CACrBE,UAAU,CAAE,CAAEiB,MAAM,EAAEC,QAAQ,KAAM;EACnC,MAAMC,IAAI,GAAGD,QAAQ,CAACZ,QAAQ,EAAEa,IAAI;EACpC,MAAMC,SAAS,GAAGD,IAAI,GAAI,kBAAkBA,IAAM,EAAC,GAAG,EAAE;EACxD,OAAO;IACNC,SAAS;IACTf,SAAS,EAAEc,IAAI,GACZF,MAAM,CAAEd,aAAc,CAAC,CAACkB,oBAAoB,CAAED,SAAU,CAAC,GACzD,KAAK;IACRb,QAAQ,EAAEY,IAAI,GACXF,MAAM,CAAEd,aAAc,CAAC,CAACmB,mBAAmB,CAAEF,SAAU,CAAC,GACxD;EACJ,CAAC;AACF,CAAE,CAAC,EACHnB,YAAY,CAAE,CAAEsB,QAAQ,EAAEL,QAAQ,MAAQ;EACzCV,aAAa,EAAEA,CAAA,KAAM;IACpBe,QAAQ,CAAEpB,aAAc,CAAC,CAACqB,uBAAuB,CAChDN,QAAQ,CAACE,SACV,CAAC;EACF;AACD,CAAC,CAAG,CACL,CAAC,CAAEhB,aAAc,CAAC"}
1
+ {"version":3,"names":["PanelBody","useSelect","useDispatch","store","editPostStore","TaxonomyPanel","taxonomy","children","slug","panelName","isEnabled","isOpened","select","isEditorPanelEnabled","isEditorPanelOpened","toggleEditorPanelOpened","taxonomyMenuName","labels","menu_name","createElement","title","opened","onToggle"],"sources":["@wordpress/edit-post/src/components/sidebar/post-taxonomies/taxonomy-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { PanelBody } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\n\nfunction TaxonomyPanel( { taxonomy, children } ) {\n\tconst slug = taxonomy?.slug;\n\tconst panelName = slug ? `taxonomy-panel-${ slug }` : '';\n\tconst { isEnabled, isOpened } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorPanelEnabled, isEditorPanelOpened } =\n\t\t\t\tselect( editPostStore );\n\t\t\treturn {\n\t\t\t\tisEnabled: slug ? isEditorPanelEnabled( panelName ) : false,\n\t\t\t\tisOpened: slug ? isEditorPanelOpened( panelName ) : false,\n\t\t\t};\n\t\t},\n\t\t[ panelName, slug ]\n\t);\n\tconst { toggleEditorPanelOpened } = useDispatch( editPostStore );\n\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\tconst taxonomyMenuName = taxonomy?.labels?.menu_name;\n\tif ( ! taxonomyMenuName ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={ taxonomyMenuName }\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ () => toggleEditorPanelOpened( panelName ) }\n\t\t>\n\t\t\t{ children }\n\t\t</PanelBody>\n\t);\n}\n\nexport default TaxonomyPanel;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,uBAAuB;AACjD,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;;AAExD;AACA;AACA;AACA,SAASC,KAAK,IAAIC,aAAa,QAAQ,gBAAgB;AAEvD,SAASC,aAAaA,CAAE;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EAChD,MAAMC,IAAI,GAAGF,QAAQ,EAAEE,IAAI;EAC3B,MAAMC,SAAS,GAAGD,IAAI,GAAI,kBAAkBA,IAAM,EAAC,GAAG,EAAE;EACxD,MAAM;IAAEE,SAAS;IAAEC;EAAS,CAAC,GAAGV,SAAS,CACtCW,MAAM,IAAM;IACb,MAAM;MAAEC,oBAAoB;MAAEC;IAAoB,CAAC,GAClDF,MAAM,CAAER,aAAc,CAAC;IACxB,OAAO;MACNM,SAAS,EAAEF,IAAI,GAAGK,oBAAoB,CAAEJ,SAAU,CAAC,GAAG,KAAK;MAC3DE,QAAQ,EAAEH,IAAI,GAAGM,mBAAmB,CAAEL,SAAU,CAAC,GAAG;IACrD,CAAC;EACF,CAAC,EACD,CAAEA,SAAS,EAAED,IAAI,CAClB,CAAC;EACD,MAAM;IAAEO;EAAwB,CAAC,GAAGb,WAAW,CAAEE,aAAc,CAAC;EAEhE,IAAK,CAAEM,SAAS,EAAG;IAClB,OAAO,IAAI;EACZ;EAEA,MAAMM,gBAAgB,GAAGV,QAAQ,EAAEW,MAAM,EAAEC,SAAS;EACpD,IAAK,CAAEF,gBAAgB,EAAG;IACzB,OAAO,IAAI;EACZ;EAEA,OACCG,aAAA,CAACnB,SAAS;IACToB,KAAK,EAAGJ,gBAAkB;IAC1BK,MAAM,EAAGV,QAAU;IACnBW,QAAQ,EAAGA,CAAA,KAAMP,uBAAuB,CAAEN,SAAU;EAAG,GAErDF,QACQ,CAAC;AAEd;AAEA,eAAeF,aAAa"}
@@ -402,7 +402,7 @@ export function isInserterOpened(state) {
402
402
  * @return {Object} The root client ID, index to insert at and starting filter value.
403
403
  */
404
404
  export function __experimentalGetInsertionPoint(state) {
405
- if (typeof state === 'boolean') {
405
+ if (typeof state.blockInserterPanel === 'boolean') {
406
406
  return EMPTY_INSERTION_POINT;
407
407
  }
408
408
  return state.blockInserterPanel;
@@ -1 +1 @@
1
- {"version":3,"names":["createSelector","createRegistrySelector","store","interfaceStore","preferencesStore","coreStore","editorStore","deprecated","EMPTY_ARRAY","EMPTY_OBJECT","EMPTY_INSERTION_POINT","rootClientId","undefined","insertionIndex","filterValue","getEditorMode","select","_select$get","get","isEditorSidebarOpened","activeGeneralSidebar","getActiveComplementaryArea","includes","isPluginSidebarOpened","getActiveGeneralSidebarName","convertPanelsToOldFormat","inactivePanels","openPanels","_ref","panelsWithEnabledState","reduce","accumulatedPanels","panelName","enabled","panels","currentPanelState","opened","getPreferences","since","alternative","preferences","accumulatedPrefs","preferenceKey","value","getPreference","state","defaultValue","getHiddenBlockTypes","_select$get2","isPublishSidebarOpened","publishSidebarActive","isEditorPanelRemoved","removedPanels","isEditorPanelEnabled","isEditorPanelOpened","isModalActive","modalName","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","isListViewOpened","listViewPanel","isEditingTemplate","areMetaBoxesInitialized","initialized","getEditedPostTemplate","currentTemplate","getEditedPostAttribute","templateWithSameSlug","getEntityRecords","per_page","find","template","slug","getEditedEntityRecord","post","getCurrentPost","link","__experimentalGetTemplateForLink"],"sources":["@wordpress/edit-post/src/store/selectors.js"],"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 = {};\nconst EMPTY_INSERTION_POINT = {\n\trootClientId: undefined,\n\tinsertionIndex: undefined,\n\tfilterValue: undefined,\n};\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 * @deprecated since WP 6.3 use `core/interface` store's selector with the same name instead.\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 const isModalActive = createRegistrySelector(\n\t( select ) => ( state, modalName ) => {\n\t\tdeprecated( `select( 'core/edit-post' ).isModalActive`, {\n\t\t\tsince: '6.3',\n\t\t\talternative: `select( 'core/interface' ).isModalActive`,\n\t\t} );\n\t\treturn !! select( interfaceStore ).isModalActive( modalName );\n\t}\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\tif ( typeof state === 'boolean' ) {\n\t\treturn EMPTY_INSERTION_POINT;\n\t}\n\n\treturn state.blockInserterPanel;\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"],"mappings":"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"}
1
+ {"version":3,"names":["createSelector","createRegistrySelector","store","interfaceStore","preferencesStore","coreStore","editorStore","deprecated","EMPTY_ARRAY","EMPTY_OBJECT","EMPTY_INSERTION_POINT","rootClientId","undefined","insertionIndex","filterValue","getEditorMode","select","_select$get","get","isEditorSidebarOpened","activeGeneralSidebar","getActiveComplementaryArea","includes","isPluginSidebarOpened","getActiveGeneralSidebarName","convertPanelsToOldFormat","inactivePanels","openPanels","_ref","panelsWithEnabledState","reduce","accumulatedPanels","panelName","enabled","panels","currentPanelState","opened","getPreferences","since","alternative","preferences","accumulatedPrefs","preferenceKey","value","getPreference","state","defaultValue","getHiddenBlockTypes","_select$get2","isPublishSidebarOpened","publishSidebarActive","isEditorPanelRemoved","removedPanels","isEditorPanelEnabled","isEditorPanelOpened","isModalActive","modalName","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","isListViewOpened","listViewPanel","isEditingTemplate","areMetaBoxesInitialized","initialized","getEditedPostTemplate","currentTemplate","getEditedPostAttribute","templateWithSameSlug","getEntityRecords","per_page","find","template","slug","getEditedEntityRecord","post","getCurrentPost","link","__experimentalGetTemplateForLink"],"sources":["@wordpress/edit-post/src/store/selectors.js"],"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 = {};\nconst EMPTY_INSERTION_POINT = {\n\trootClientId: undefined,\n\tinsertionIndex: undefined,\n\tfilterValue: undefined,\n};\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 * @deprecated since WP 6.3 use `core/interface` store's selector with the same name instead.\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 const isModalActive = createRegistrySelector(\n\t( select ) => ( state, modalName ) => {\n\t\tdeprecated( `select( 'core/edit-post' ).isModalActive`, {\n\t\t\tsince: '6.3',\n\t\t\talternative: `select( 'core/interface' ).isModalActive`,\n\t\t} );\n\t\treturn !! select( interfaceStore ).isModalActive( modalName );\n\t}\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\tif ( typeof state.blockInserterPanel === 'boolean' ) {\n\t\treturn EMPTY_INSERTION_POINT;\n\t}\n\n\treturn state.blockInserterPanel;\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"],"mappings":"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"}
@@ -1424,9 +1424,10 @@ body.is-fullscreen-mode .edit-post-layout .components-editor-notices__snackbar {
1424
1424
  }
1425
1425
  .edit-post-editor__document-overview-panel .components-tab-panel__tabs .edit-post-sidebar__panel-tab {
1426
1426
  width: 50%;
1427
+ margin-bottom: -1px;
1427
1428
  }
1428
1429
  .edit-post-editor__document-overview-panel .components-tab-panel__tab-content {
1429
- height: calc(100% - 48px);
1430
+ height: calc(100% - 47px);
1430
1431
  }
1431
1432
 
1432
1433
  .edit-post-editor__inserter-panel-header {
@@ -1424,9 +1424,10 @@ body.is-fullscreen-mode .edit-post-layout .components-editor-notices__snackbar {
1424
1424
  }
1425
1425
  .edit-post-editor__document-overview-panel .components-tab-panel__tabs .edit-post-sidebar__panel-tab {
1426
1426
  width: 50%;
1427
+ margin-bottom: -1px;
1427
1428
  }
1428
1429
  .edit-post-editor__document-overview-panel .components-tab-panel__tab-content {
1429
- height: calc(100% - 48px);
1430
+ height: calc(100% - 47px);
1430
1431
  }
1431
1432
 
1432
1433
  .edit-post-editor__inserter-panel-header {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/edit-post",
3
- "version": "7.17.0",
3
+ "version": "7.17.1",
4
4
  "description": "Edit Post module for WordPress.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -27,36 +27,36 @@
27
27
  "react-native": "src/index",
28
28
  "dependencies": {
29
29
  "@babel/runtime": "^7.16.0",
30
- "@wordpress/a11y": "^3.40.0",
31
- "@wordpress/api-fetch": "^6.37.0",
32
- "@wordpress/block-editor": "^12.8.0",
33
- "@wordpress/block-library": "^8.17.0",
34
- "@wordpress/blocks": "^12.17.0",
35
- "@wordpress/commands": "^0.11.0",
36
- "@wordpress/components": "^25.6.0",
37
- "@wordpress/compose": "^6.17.0",
38
- "@wordpress/core-commands": "^0.9.0",
39
- "@wordpress/core-data": "^6.17.0",
40
- "@wordpress/data": "^9.10.0",
41
- "@wordpress/deprecated": "^3.40.0",
42
- "@wordpress/dom": "^3.40.0",
43
- "@wordpress/editor": "^13.17.0",
44
- "@wordpress/element": "^5.17.0",
45
- "@wordpress/hooks": "^3.40.0",
46
- "@wordpress/i18n": "^4.40.0",
47
- "@wordpress/icons": "^9.31.0",
48
- "@wordpress/interface": "^5.17.0",
49
- "@wordpress/keyboard-shortcuts": "^4.17.0",
50
- "@wordpress/keycodes": "^3.40.0",
51
- "@wordpress/media-utils": "^4.31.0",
52
- "@wordpress/notices": "^4.8.0",
53
- "@wordpress/plugins": "^6.8.0",
54
- "@wordpress/preferences": "^3.17.0",
55
- "@wordpress/private-apis": "^0.22.0",
56
- "@wordpress/url": "^3.41.0",
57
- "@wordpress/viewport": "^5.17.0",
58
- "@wordpress/warning": "^2.40.0",
59
- "@wordpress/widgets": "^3.17.0",
30
+ "@wordpress/a11y": "^3.40.1",
31
+ "@wordpress/api-fetch": "^6.37.1",
32
+ "@wordpress/block-editor": "^12.8.1",
33
+ "@wordpress/block-library": "^8.17.1",
34
+ "@wordpress/blocks": "^12.17.1",
35
+ "@wordpress/commands": "^0.11.1",
36
+ "@wordpress/components": "^25.6.1",
37
+ "@wordpress/compose": "^6.17.1",
38
+ "@wordpress/core-commands": "^0.9.1",
39
+ "@wordpress/core-data": "^6.17.1",
40
+ "@wordpress/data": "^9.10.1",
41
+ "@wordpress/deprecated": "^3.40.1",
42
+ "@wordpress/dom": "^3.40.1",
43
+ "@wordpress/editor": "^13.17.1",
44
+ "@wordpress/element": "^5.17.1",
45
+ "@wordpress/hooks": "^3.40.1",
46
+ "@wordpress/i18n": "^4.40.1",
47
+ "@wordpress/icons": "^9.31.1",
48
+ "@wordpress/interface": "^5.17.1",
49
+ "@wordpress/keyboard-shortcuts": "^4.17.1",
50
+ "@wordpress/keycodes": "^3.40.1",
51
+ "@wordpress/media-utils": "^4.31.1",
52
+ "@wordpress/notices": "^4.8.1",
53
+ "@wordpress/plugins": "^6.8.1",
54
+ "@wordpress/preferences": "^3.17.1",
55
+ "@wordpress/private-apis": "^0.22.1",
56
+ "@wordpress/url": "^3.41.1",
57
+ "@wordpress/viewport": "^5.17.1",
58
+ "@wordpress/warning": "^2.40.1",
59
+ "@wordpress/widgets": "^3.17.1",
60
60
  "classnames": "^2.3.1",
61
61
  "memize": "^2.1.0",
62
62
  "rememo": "^4.0.2"
@@ -68,5 +68,5 @@
68
68
  "publishConfig": {
69
69
  "access": "public"
70
70
  },
71
- "gitHead": "78a288d55b83a713b2f7d98d5a855c0771a2afc6"
71
+ "gitHead": "bb1fbf87bb0f451744530fc6a85de2dff1263bed"
72
72
  }
@@ -24,16 +24,20 @@ describe( 'EditPostPreferencesModal', () => {
24
24
  useSelect.mockImplementation( () => [ true, true, false ] );
25
25
  useViewportMatch.mockImplementation( () => true );
26
26
  render( <EditPostPreferencesModal /> );
27
+ await screen.findByRole( 'tab', {
28
+ name: 'General',
29
+ selected: true,
30
+ } );
27
31
  expect(
28
- await screen.findByRole( 'dialog', { name: 'Preferences' } )
32
+ screen.getByRole( 'dialog', { name: 'Preferences' } )
29
33
  ).toMatchSnapshot();
30
34
  } );
31
- it( 'small viewports', async () => {
35
+ it( 'small viewports', () => {
32
36
  useSelect.mockImplementation( () => [ true, true, false ] );
33
37
  useViewportMatch.mockImplementation( () => false );
34
38
  render( <EditPostPreferencesModal /> );
35
39
  expect(
36
- await screen.findByRole( 'dialog', { name: 'Preferences' } )
40
+ screen.getByRole( 'dialog', { name: 'Preferences' } )
37
41
  ).toMatchSnapshot();
38
42
  } );
39
43
  } );
@@ -35,11 +35,12 @@
35
35
 
36
36
  .edit-post-sidebar__panel-tab {
37
37
  width: 50%;
38
+ margin-bottom: -$border-width;
38
39
  }
39
40
  }
40
41
 
41
42
  .components-tab-panel__tab-content {
42
- height: calc(100% - #{$grid-unit-60});
43
+ height: calc(100% - #{$grid-unit-60 - $border-width});
43
44
  }
44
45
  }
45
46
 
@@ -1,22 +1,30 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { compose } from '@wordpress/compose';
5
4
  import { PanelBody } from '@wordpress/components';
6
- import { withSelect, withDispatch } from '@wordpress/data';
5
+ import { useSelect, useDispatch } from '@wordpress/data';
7
6
 
8
7
  /**
9
8
  * Internal dependencies
10
9
  */
11
10
  import { store as editPostStore } from '../../../store';
12
11
 
13
- function TaxonomyPanel( {
14
- isEnabled,
15
- taxonomy,
16
- isOpened,
17
- onTogglePanel,
18
- children,
19
- } ) {
12
+ function TaxonomyPanel( { taxonomy, children } ) {
13
+ const slug = taxonomy?.slug;
14
+ const panelName = slug ? `taxonomy-panel-${ slug }` : '';
15
+ const { isEnabled, isOpened } = useSelect(
16
+ ( select ) => {
17
+ const { isEditorPanelEnabled, isEditorPanelOpened } =
18
+ select( editPostStore );
19
+ return {
20
+ isEnabled: slug ? isEditorPanelEnabled( panelName ) : false,
21
+ isOpened: slug ? isEditorPanelOpened( panelName ) : false,
22
+ };
23
+ },
24
+ [ panelName, slug ]
25
+ );
26
+ const { toggleEditorPanelOpened } = useDispatch( editPostStore );
27
+
20
28
  if ( ! isEnabled ) {
21
29
  return null;
22
30
  }
@@ -30,32 +38,11 @@ function TaxonomyPanel( {
30
38
  <PanelBody
31
39
  title={ taxonomyMenuName }
32
40
  opened={ isOpened }
33
- onToggle={ onTogglePanel }
41
+ onToggle={ () => toggleEditorPanelOpened( panelName ) }
34
42
  >
35
43
  { children }
36
44
  </PanelBody>
37
45
  );
38
46
  }
39
47
 
40
- export default compose(
41
- withSelect( ( select, ownProps ) => {
42
- const slug = ownProps.taxonomy?.slug;
43
- const panelName = slug ? `taxonomy-panel-${ slug }` : '';
44
- return {
45
- panelName,
46
- isEnabled: slug
47
- ? select( editPostStore ).isEditorPanelEnabled( panelName )
48
- : false,
49
- isOpened: slug
50
- ? select( editPostStore ).isEditorPanelOpened( panelName )
51
- : false,
52
- };
53
- } ),
54
- withDispatch( ( dispatch, ownProps ) => ( {
55
- onTogglePanel: () => {
56
- dispatch( editPostStore ).toggleEditorPanelOpened(
57
- ownProps.panelName
58
- );
59
- },
60
- } ) )
61
- )( TaxonomyPanel );
48
+ export default TaxonomyPanel;
@@ -477,7 +477,7 @@ export function isInserterOpened( state ) {
477
477
  * @return {Object} The root client ID, index to insert at and starting filter value.
478
478
  */
479
479
  export function __experimentalGetInsertionPoint( state ) {
480
- if ( typeof state === 'boolean' ) {
480
+ if ( typeof state.blockInserterPanel === 'boolean' ) {
481
481
  return EMPTY_INSERTION_POINT;
482
482
  }
483
483