@wordpress/edit-widgets 6.8.5 → 6.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/sidebar/index.js +3 -3
- package/build/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar/index.js +3 -3
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-style/style-rtl.css +11 -1
- package/build-style/style.css +11 -1
- package/package.json +28 -28
- package/src/components/header/style.scss +1 -0
- package/src/components/sidebar/index.js +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -26,7 +26,7 @@ const SIDEBAR_ACTIVE_BY_DEFAULT = _element.Platform.select({
|
|
|
26
26
|
});
|
|
27
27
|
const BLOCK_INSPECTOR_IDENTIFIER = 'edit-widgets/block-inspector';
|
|
28
28
|
|
|
29
|
-
// Widget areas were
|
|
29
|
+
// Widget areas were once called block areas, so use 'edit-widgets/block-areas'
|
|
30
30
|
// for backwards compatibility.
|
|
31
31
|
const WIDGET_AREAS_IDENTIFIER = 'edit-widgets/block-areas';
|
|
32
32
|
|
|
@@ -155,10 +155,10 @@ function Sidebar() {
|
|
|
155
155
|
enableComplementaryArea
|
|
156
156
|
} = (0, _data.useDispatch)(_interface.store);
|
|
157
157
|
|
|
158
|
-
// `newSelectedTabId` could technically be
|
|
158
|
+
// `newSelectedTabId` could technically be falsy if no tab is selected (i.e.
|
|
159
159
|
// the initial render) or when we don't want a tab displayed (i.e. the
|
|
160
160
|
// sidebar is closed). These cases should both be covered by the `!!` check
|
|
161
|
-
// below, so we shouldn't need any additional
|
|
161
|
+
// below, so we shouldn't need any additional falsy handling.
|
|
162
162
|
const onTabSelect = (0, _element.useCallback)(newSelectedTabId => {
|
|
163
163
|
if (!!newSelectedTabId) {
|
|
164
164
|
enableComplementaryArea(_store.store.name, newSelectedTabId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_i18n","_interface","_blockEditor","_icons","_components","_data","_widgetAreas","_interopRequireDefault","_store","_lockUnlock","_jsxRuntime","SIDEBAR_ACTIVE_BY_DEFAULT","Platform","select","web","native","BLOCK_INSPECTOR_IDENTIFIER","WIDGET_AREAS_IDENTIFIER","Tabs","unlock","componentsPrivateApis","SidebarHeader","selectedWidgetAreaBlock","jsxs","TabList","children","jsx","Tab","tabId","attributes","name","__","SidebarContent","hasSelectedNonAreaBlock","currentArea","isGeneralSidebarOpen","enableComplementaryArea","useDispatch","interfaceStore","useEffect","tabsContextValue","useContext","Context","ComplementaryArea","className","header","Provider","value","headerClassName","title","closeLabel","scope","identifier","icon","isRTL","drawerLeft","drawerRight","isActiveByDefault","TabPanel","focusable","default","selectedWidgetAreaId","id","BlockInspector","Sidebar","useSelect","getSelectedBlock","getBlock","getBlockParentsByBlockName","blockEditorStore","getActiveComplementaryArea","selectedBlock","activeArea","editWidgetsStore","currentSelection","widgetAreaBlock","clientId","onTabSelect","useCallback","newSelectedTabId","selectedTabId","onSelect","selectOnMove"],"sources":["@wordpress/edit-widgets/src/components/sidebar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseEffect,\n\tPlatform,\n\tuseContext,\n\tuseCallback,\n} from '@wordpress/element';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport {\n\tBlockInspector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\nimport { drawerLeft, drawerRight } from '@wordpress/icons';\nimport { privateApis as componentsPrivateApis } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\nconst SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select( {\n\tweb: true,\n\tnative: false,\n} );\n\nconst BLOCK_INSPECTOR_IDENTIFIER = 'edit-widgets/block-inspector';\n\n// Widget areas were one called block areas, so use 'edit-widgets/block-areas'\n// for backwards compatibility.\nconst WIDGET_AREAS_IDENTIFIER = 'edit-widgets/block-areas';\n\n/**\n * Internal dependencies\n */\nimport WidgetAreas from './widget-areas';\nimport { store as editWidgetsStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction SidebarHeader( { selectedWidgetAreaBlock } ) {\n\treturn (\n\t\t<Tabs.TabList>\n\t\t\t<Tabs.Tab tabId={ WIDGET_AREAS_IDENTIFIER }>\n\t\t\t\t{ selectedWidgetAreaBlock\n\t\t\t\t\t? selectedWidgetAreaBlock.attributes.name\n\t\t\t\t\t: __( 'Widget Areas' ) }\n\t\t\t</Tabs.Tab>\n\t\t\t<Tabs.Tab tabId={ BLOCK_INSPECTOR_IDENTIFIER }>\n\t\t\t\t{ __( 'Block' ) }\n\t\t\t</Tabs.Tab>\n\t\t</Tabs.TabList>\n\t);\n}\n\nfunction SidebarContent( {\n\thasSelectedNonAreaBlock,\n\tcurrentArea,\n\tisGeneralSidebarOpen,\n\tselectedWidgetAreaBlock,\n} ) {\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\thasSelectedNonAreaBlock &&\n\t\t\tcurrentArea === WIDGET_AREAS_IDENTIFIER &&\n\t\t\tisGeneralSidebarOpen\n\t\t) {\n\t\t\tenableComplementaryArea(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\tBLOCK_INSPECTOR_IDENTIFIER\n\t\t\t);\n\t\t}\n\t\tif (\n\t\t\t! hasSelectedNonAreaBlock &&\n\t\t\tcurrentArea === BLOCK_INSPECTOR_IDENTIFIER &&\n\t\t\tisGeneralSidebarOpen\n\t\t) {\n\t\t\tenableComplementaryArea(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\tWIDGET_AREAS_IDENTIFIER\n\t\t\t);\n\t\t}\n\t\t// We're intentionally leaving `currentArea` and `isGeneralSidebarOpen`\n\t\t// out of the dep array because we want this effect to run based on\n\t\t// block selection changes, not sidebar state changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ hasSelectedNonAreaBlock, enableComplementaryArea ] );\n\n\tconst tabsContextValue = useContext( Tabs.Context );\n\n\treturn (\n\t\t<ComplementaryArea\n\t\t\tclassName=\"edit-widgets-sidebar\"\n\t\t\theader={\n\t\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t\t<SidebarHeader\n\t\t\t\t\t\tselectedWidgetAreaBlock={ selectedWidgetAreaBlock }\n\t\t\t\t\t/>\n\t\t\t\t</Tabs.Context.Provider>\n\t\t\t}\n\t\t\theaderClassName=\"edit-widgets-sidebar__panel-tabs\"\n\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\ttitle={ __( 'Settings' ) }\n\t\t\tcloseLabel={ __( 'Close Settings' ) }\n\t\t\tscope=\"core/edit-widgets\"\n\t\t\tidentifier={ currentArea }\n\t\t\ticon={ isRTL() ? drawerLeft : drawerRight }\n\t\t\tisActiveByDefault={ SIDEBAR_ACTIVE_BY_DEFAULT }\n\t\t>\n\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\ttabId={ WIDGET_AREAS_IDENTIFIER }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t<WidgetAreas\n\t\t\t\t\t\tselectedWidgetAreaId={\n\t\t\t\t\t\t\tselectedWidgetAreaBlock?.attributes.id\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\ttabId={ BLOCK_INSPECTOR_IDENTIFIER }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t{ hasSelectedNonAreaBlock ? (\n\t\t\t\t\t\t<BlockInspector />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t// Pretend that Widget Areas are part of the UI by not\n\t\t\t\t\t\t// showing the Block Inspector when one is selected.\n\t\t\t\t\t\t<span className=\"block-editor-block-inspector__no-blocks\">\n\t\t\t\t\t\t\t{ __( 'No block selected.' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t</Tabs.Context.Provider>\n\t\t</ComplementaryArea>\n\t);\n}\n\nexport default function Sidebar() {\n\tconst {\n\t\tcurrentArea,\n\t\thasSelectedNonAreaBlock,\n\t\tisGeneralSidebarOpen,\n\t\tselectedWidgetAreaBlock,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSelectedBlock, getBlock, getBlockParentsByBlockName } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\n\t\tconst selectedBlock = getSelectedBlock();\n\n\t\tconst activeArea = getActiveComplementaryArea( editWidgetsStore.name );\n\n\t\tlet currentSelection = activeArea;\n\t\tif ( ! currentSelection ) {\n\t\t\tif ( selectedBlock ) {\n\t\t\t\tcurrentSelection = BLOCK_INSPECTOR_IDENTIFIER;\n\t\t\t} else {\n\t\t\t\tcurrentSelection = WIDGET_AREAS_IDENTIFIER;\n\t\t\t}\n\t\t}\n\n\t\tlet widgetAreaBlock;\n\t\tif ( selectedBlock ) {\n\t\t\tif ( selectedBlock.name === 'core/widget-area' ) {\n\t\t\t\twidgetAreaBlock = selectedBlock;\n\t\t\t} else {\n\t\t\t\twidgetAreaBlock = getBlock(\n\t\t\t\t\tgetBlockParentsByBlockName(\n\t\t\t\t\t\tselectedBlock.clientId,\n\t\t\t\t\t\t'core/widget-area'\n\t\t\t\t\t)[ 0 ]\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tcurrentArea: currentSelection,\n\t\t\thasSelectedNonAreaBlock: !! (\n\t\t\t\tselectedBlock && selectedBlock.name !== 'core/widget-area'\n\t\t\t),\n\t\t\tisGeneralSidebarOpen: !! activeArea,\n\t\t\tselectedWidgetAreaBlock: widgetAreaBlock,\n\t\t};\n\t}, [] );\n\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\t// `newSelectedTabId` could technically be falsey if no tab is selected (i.e.\n\t// the initial render) or when we don't want a tab displayed (i.e. the\n\t// sidebar is closed). These cases should both be covered by the `!!` check\n\t// below, so we shouldn't need any additional falsey handling.\n\tconst onTabSelect = useCallback(\n\t\t( newSelectedTabId ) => {\n\t\t\tif ( !! newSelectedTabId ) {\n\t\t\t\tenableComplementaryArea(\n\t\t\t\t\teditWidgetsStore.name,\n\t\t\t\t\tnewSelectedTabId\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ enableComplementaryArea ]\n\t);\n\n\treturn (\n\t\t<Tabs\n\t\t\t// Due to how this component is controlled (via a value from the\n\t\t\t// `interfaceStore`), when the sidebar closes the currently selected\n\t\t\t// tab can't be found. This causes the component to continuously reset\n\t\t\t// the selection to `null` in an infinite loop. Proactively setting\n\t\t\t// the selected tab to `null` avoids that.\n\t\t\tselectedTabId={ isGeneralSidebarOpen ? currentArea : null }\n\t\t\tonSelect={ onTabSelect }\n\t\t\tselectOnMove={ false }\n\t\t>\n\t\t\t<SidebarContent\n\t\t\t\thasSelectedNonAreaBlock={ hasSelectedNonAreaBlock }\n\t\t\t\tcurrentArea={ currentArea }\n\t\t\t\tisGeneralSidebarOpen={ isGeneralSidebarOpen }\n\t\t\t\tselectedWidgetAreaBlock={ selectedWidgetAreaBlock }\n\t\t\t/>\n\t\t</Tabs>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_element","require","_i18n","_interface","_blockEditor","_icons","_components","_data","_widgetAreas","_interopRequireDefault","_store","_lockUnlock","_jsxRuntime","SIDEBAR_ACTIVE_BY_DEFAULT","Platform","select","web","native","BLOCK_INSPECTOR_IDENTIFIER","WIDGET_AREAS_IDENTIFIER","Tabs","unlock","componentsPrivateApis","SidebarHeader","selectedWidgetAreaBlock","jsxs","TabList","children","jsx","Tab","tabId","attributes","name","__","SidebarContent","hasSelectedNonAreaBlock","currentArea","isGeneralSidebarOpen","enableComplementaryArea","useDispatch","interfaceStore","useEffect","tabsContextValue","useContext","Context","ComplementaryArea","className","header","Provider","value","headerClassName","title","closeLabel","scope","identifier","icon","isRTL","drawerLeft","drawerRight","isActiveByDefault","TabPanel","focusable","default","selectedWidgetAreaId","id","BlockInspector","Sidebar","useSelect","getSelectedBlock","getBlock","getBlockParentsByBlockName","blockEditorStore","getActiveComplementaryArea","selectedBlock","activeArea","editWidgetsStore","currentSelection","widgetAreaBlock","clientId","onTabSelect","useCallback","newSelectedTabId","selectedTabId","onSelect","selectOnMove"],"sources":["@wordpress/edit-widgets/src/components/sidebar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseEffect,\n\tPlatform,\n\tuseContext,\n\tuseCallback,\n} from '@wordpress/element';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport {\n\tBlockInspector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\nimport { drawerLeft, drawerRight } from '@wordpress/icons';\nimport { privateApis as componentsPrivateApis } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\nconst SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select( {\n\tweb: true,\n\tnative: false,\n} );\n\nconst BLOCK_INSPECTOR_IDENTIFIER = 'edit-widgets/block-inspector';\n\n// Widget areas were once called block areas, so use 'edit-widgets/block-areas'\n// for backwards compatibility.\nconst WIDGET_AREAS_IDENTIFIER = 'edit-widgets/block-areas';\n\n/**\n * Internal dependencies\n */\nimport WidgetAreas from './widget-areas';\nimport { store as editWidgetsStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction SidebarHeader( { selectedWidgetAreaBlock } ) {\n\treturn (\n\t\t<Tabs.TabList>\n\t\t\t<Tabs.Tab tabId={ WIDGET_AREAS_IDENTIFIER }>\n\t\t\t\t{ selectedWidgetAreaBlock\n\t\t\t\t\t? selectedWidgetAreaBlock.attributes.name\n\t\t\t\t\t: __( 'Widget Areas' ) }\n\t\t\t</Tabs.Tab>\n\t\t\t<Tabs.Tab tabId={ BLOCK_INSPECTOR_IDENTIFIER }>\n\t\t\t\t{ __( 'Block' ) }\n\t\t\t</Tabs.Tab>\n\t\t</Tabs.TabList>\n\t);\n}\n\nfunction SidebarContent( {\n\thasSelectedNonAreaBlock,\n\tcurrentArea,\n\tisGeneralSidebarOpen,\n\tselectedWidgetAreaBlock,\n} ) {\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\thasSelectedNonAreaBlock &&\n\t\t\tcurrentArea === WIDGET_AREAS_IDENTIFIER &&\n\t\t\tisGeneralSidebarOpen\n\t\t) {\n\t\t\tenableComplementaryArea(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\tBLOCK_INSPECTOR_IDENTIFIER\n\t\t\t);\n\t\t}\n\t\tif (\n\t\t\t! hasSelectedNonAreaBlock &&\n\t\t\tcurrentArea === BLOCK_INSPECTOR_IDENTIFIER &&\n\t\t\tisGeneralSidebarOpen\n\t\t) {\n\t\t\tenableComplementaryArea(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\tWIDGET_AREAS_IDENTIFIER\n\t\t\t);\n\t\t}\n\t\t// We're intentionally leaving `currentArea` and `isGeneralSidebarOpen`\n\t\t// out of the dep array because we want this effect to run based on\n\t\t// block selection changes, not sidebar state changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ hasSelectedNonAreaBlock, enableComplementaryArea ] );\n\n\tconst tabsContextValue = useContext( Tabs.Context );\n\n\treturn (\n\t\t<ComplementaryArea\n\t\t\tclassName=\"edit-widgets-sidebar\"\n\t\t\theader={\n\t\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t\t<SidebarHeader\n\t\t\t\t\t\tselectedWidgetAreaBlock={ selectedWidgetAreaBlock }\n\t\t\t\t\t/>\n\t\t\t\t</Tabs.Context.Provider>\n\t\t\t}\n\t\t\theaderClassName=\"edit-widgets-sidebar__panel-tabs\"\n\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\ttitle={ __( 'Settings' ) }\n\t\t\tcloseLabel={ __( 'Close Settings' ) }\n\t\t\tscope=\"core/edit-widgets\"\n\t\t\tidentifier={ currentArea }\n\t\t\ticon={ isRTL() ? drawerLeft : drawerRight }\n\t\t\tisActiveByDefault={ SIDEBAR_ACTIVE_BY_DEFAULT }\n\t\t>\n\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\ttabId={ WIDGET_AREAS_IDENTIFIER }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t<WidgetAreas\n\t\t\t\t\t\tselectedWidgetAreaId={\n\t\t\t\t\t\t\tselectedWidgetAreaBlock?.attributes.id\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\ttabId={ BLOCK_INSPECTOR_IDENTIFIER }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t{ hasSelectedNonAreaBlock ? (\n\t\t\t\t\t\t<BlockInspector />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t// Pretend that Widget Areas are part of the UI by not\n\t\t\t\t\t\t// showing the Block Inspector when one is selected.\n\t\t\t\t\t\t<span className=\"block-editor-block-inspector__no-blocks\">\n\t\t\t\t\t\t\t{ __( 'No block selected.' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t</Tabs.Context.Provider>\n\t\t</ComplementaryArea>\n\t);\n}\n\nexport default function Sidebar() {\n\tconst {\n\t\tcurrentArea,\n\t\thasSelectedNonAreaBlock,\n\t\tisGeneralSidebarOpen,\n\t\tselectedWidgetAreaBlock,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSelectedBlock, getBlock, getBlockParentsByBlockName } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\n\t\tconst selectedBlock = getSelectedBlock();\n\n\t\tconst activeArea = getActiveComplementaryArea( editWidgetsStore.name );\n\n\t\tlet currentSelection = activeArea;\n\t\tif ( ! currentSelection ) {\n\t\t\tif ( selectedBlock ) {\n\t\t\t\tcurrentSelection = BLOCK_INSPECTOR_IDENTIFIER;\n\t\t\t} else {\n\t\t\t\tcurrentSelection = WIDGET_AREAS_IDENTIFIER;\n\t\t\t}\n\t\t}\n\n\t\tlet widgetAreaBlock;\n\t\tif ( selectedBlock ) {\n\t\t\tif ( selectedBlock.name === 'core/widget-area' ) {\n\t\t\t\twidgetAreaBlock = selectedBlock;\n\t\t\t} else {\n\t\t\t\twidgetAreaBlock = getBlock(\n\t\t\t\t\tgetBlockParentsByBlockName(\n\t\t\t\t\t\tselectedBlock.clientId,\n\t\t\t\t\t\t'core/widget-area'\n\t\t\t\t\t)[ 0 ]\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tcurrentArea: currentSelection,\n\t\t\thasSelectedNonAreaBlock: !! (\n\t\t\t\tselectedBlock && selectedBlock.name !== 'core/widget-area'\n\t\t\t),\n\t\t\tisGeneralSidebarOpen: !! activeArea,\n\t\t\tselectedWidgetAreaBlock: widgetAreaBlock,\n\t\t};\n\t}, [] );\n\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\t// `newSelectedTabId` could technically be falsy if no tab is selected (i.e.\n\t// the initial render) or when we don't want a tab displayed (i.e. the\n\t// sidebar is closed). These cases should both be covered by the `!!` check\n\t// below, so we shouldn't need any additional falsy handling.\n\tconst onTabSelect = useCallback(\n\t\t( newSelectedTabId ) => {\n\t\t\tif ( !! newSelectedTabId ) {\n\t\t\t\tenableComplementaryArea(\n\t\t\t\t\teditWidgetsStore.name,\n\t\t\t\t\tnewSelectedTabId\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ enableComplementaryArea ]\n\t);\n\n\treturn (\n\t\t<Tabs\n\t\t\t// Due to how this component is controlled (via a value from the\n\t\t\t// `interfaceStore`), when the sidebar closes the currently selected\n\t\t\t// tab can't be found. This causes the component to continuously reset\n\t\t\t// the selection to `null` in an infinite loop. Proactively setting\n\t\t\t// the selected tab to `null` avoids that.\n\t\t\tselectedTabId={ isGeneralSidebarOpen ? currentArea : null }\n\t\t\tonSelect={ onTabSelect }\n\t\t\tselectOnMove={ false }\n\t\t>\n\t\t\t<SidebarContent\n\t\t\t\thasSelectedNonAreaBlock={ hasSelectedNonAreaBlock }\n\t\t\t\tcurrentArea={ currentArea }\n\t\t\t\tisGeneralSidebarOpen={ isGeneralSidebarOpen }\n\t\t\t\tselectedWidgetAreaBlock={ selectedWidgetAreaBlock }\n\t\t\t/>\n\t\t</Tabs>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,7 +14,7 @@ const SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select({
|
|
|
14
14
|
});
|
|
15
15
|
const BLOCK_INSPECTOR_IDENTIFIER = 'edit-widgets/block-inspector';
|
|
16
16
|
|
|
17
|
-
// Widget areas were
|
|
17
|
+
// Widget areas were once called block areas, so use 'edit-widgets/block-areas'
|
|
18
18
|
// for backwards compatibility.
|
|
19
19
|
const WIDGET_AREAS_IDENTIFIER = 'edit-widgets/block-areas';
|
|
20
20
|
|
|
@@ -147,10 +147,10 @@ export default function Sidebar() {
|
|
|
147
147
|
enableComplementaryArea
|
|
148
148
|
} = useDispatch(interfaceStore);
|
|
149
149
|
|
|
150
|
-
// `newSelectedTabId` could technically be
|
|
150
|
+
// `newSelectedTabId` could technically be falsy if no tab is selected (i.e.
|
|
151
151
|
// the initial render) or when we don't want a tab displayed (i.e. the
|
|
152
152
|
// sidebar is closed). These cases should both be covered by the `!!` check
|
|
153
|
-
// below, so we shouldn't need any additional
|
|
153
|
+
// below, so we shouldn't need any additional falsy handling.
|
|
154
154
|
const onTabSelect = useCallback(newSelectedTabId => {
|
|
155
155
|
if (!!newSelectedTabId) {
|
|
156
156
|
enableComplementaryArea(editWidgetsStore.name, newSelectedTabId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","Platform","useContext","useCallback","isRTL","__","ComplementaryArea","store","interfaceStore","BlockInspector","blockEditorStore","drawerLeft","drawerRight","privateApis","componentsPrivateApis","useSelect","useDispatch","SIDEBAR_ACTIVE_BY_DEFAULT","select","web","native","BLOCK_INSPECTOR_IDENTIFIER","WIDGET_AREAS_IDENTIFIER","WidgetAreas","editWidgetsStore","unlock","jsx","_jsx","jsxs","_jsxs","Tabs","SidebarHeader","selectedWidgetAreaBlock","TabList","children","Tab","tabId","attributes","name","SidebarContent","hasSelectedNonAreaBlock","currentArea","isGeneralSidebarOpen","enableComplementaryArea","tabsContextValue","Context","className","header","Provider","value","headerClassName","title","closeLabel","scope","identifier","icon","isActiveByDefault","TabPanel","focusable","selectedWidgetAreaId","id","Sidebar","getSelectedBlock","getBlock","getBlockParentsByBlockName","getActiveComplementaryArea","selectedBlock","activeArea","currentSelection","widgetAreaBlock","clientId","onTabSelect","newSelectedTabId","selectedTabId","onSelect","selectOnMove"],"sources":["@wordpress/edit-widgets/src/components/sidebar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseEffect,\n\tPlatform,\n\tuseContext,\n\tuseCallback,\n} from '@wordpress/element';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport {\n\tBlockInspector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\nimport { drawerLeft, drawerRight } from '@wordpress/icons';\nimport { privateApis as componentsPrivateApis } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\nconst SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select( {\n\tweb: true,\n\tnative: false,\n} );\n\nconst BLOCK_INSPECTOR_IDENTIFIER = 'edit-widgets/block-inspector';\n\n// Widget areas were one called block areas, so use 'edit-widgets/block-areas'\n// for backwards compatibility.\nconst WIDGET_AREAS_IDENTIFIER = 'edit-widgets/block-areas';\n\n/**\n * Internal dependencies\n */\nimport WidgetAreas from './widget-areas';\nimport { store as editWidgetsStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction SidebarHeader( { selectedWidgetAreaBlock } ) {\n\treturn (\n\t\t<Tabs.TabList>\n\t\t\t<Tabs.Tab tabId={ WIDGET_AREAS_IDENTIFIER }>\n\t\t\t\t{ selectedWidgetAreaBlock\n\t\t\t\t\t? selectedWidgetAreaBlock.attributes.name\n\t\t\t\t\t: __( 'Widget Areas' ) }\n\t\t\t</Tabs.Tab>\n\t\t\t<Tabs.Tab tabId={ BLOCK_INSPECTOR_IDENTIFIER }>\n\t\t\t\t{ __( 'Block' ) }\n\t\t\t</Tabs.Tab>\n\t\t</Tabs.TabList>\n\t);\n}\n\nfunction SidebarContent( {\n\thasSelectedNonAreaBlock,\n\tcurrentArea,\n\tisGeneralSidebarOpen,\n\tselectedWidgetAreaBlock,\n} ) {\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\thasSelectedNonAreaBlock &&\n\t\t\tcurrentArea === WIDGET_AREAS_IDENTIFIER &&\n\t\t\tisGeneralSidebarOpen\n\t\t) {\n\t\t\tenableComplementaryArea(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\tBLOCK_INSPECTOR_IDENTIFIER\n\t\t\t);\n\t\t}\n\t\tif (\n\t\t\t! hasSelectedNonAreaBlock &&\n\t\t\tcurrentArea === BLOCK_INSPECTOR_IDENTIFIER &&\n\t\t\tisGeneralSidebarOpen\n\t\t) {\n\t\t\tenableComplementaryArea(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\tWIDGET_AREAS_IDENTIFIER\n\t\t\t);\n\t\t}\n\t\t// We're intentionally leaving `currentArea` and `isGeneralSidebarOpen`\n\t\t// out of the dep array because we want this effect to run based on\n\t\t// block selection changes, not sidebar state changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ hasSelectedNonAreaBlock, enableComplementaryArea ] );\n\n\tconst tabsContextValue = useContext( Tabs.Context );\n\n\treturn (\n\t\t<ComplementaryArea\n\t\t\tclassName=\"edit-widgets-sidebar\"\n\t\t\theader={\n\t\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t\t<SidebarHeader\n\t\t\t\t\t\tselectedWidgetAreaBlock={ selectedWidgetAreaBlock }\n\t\t\t\t\t/>\n\t\t\t\t</Tabs.Context.Provider>\n\t\t\t}\n\t\t\theaderClassName=\"edit-widgets-sidebar__panel-tabs\"\n\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\ttitle={ __( 'Settings' ) }\n\t\t\tcloseLabel={ __( 'Close Settings' ) }\n\t\t\tscope=\"core/edit-widgets\"\n\t\t\tidentifier={ currentArea }\n\t\t\ticon={ isRTL() ? drawerLeft : drawerRight }\n\t\t\tisActiveByDefault={ SIDEBAR_ACTIVE_BY_DEFAULT }\n\t\t>\n\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\ttabId={ WIDGET_AREAS_IDENTIFIER }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t<WidgetAreas\n\t\t\t\t\t\tselectedWidgetAreaId={\n\t\t\t\t\t\t\tselectedWidgetAreaBlock?.attributes.id\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\ttabId={ BLOCK_INSPECTOR_IDENTIFIER }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t{ hasSelectedNonAreaBlock ? (\n\t\t\t\t\t\t<BlockInspector />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t// Pretend that Widget Areas are part of the UI by not\n\t\t\t\t\t\t// showing the Block Inspector when one is selected.\n\t\t\t\t\t\t<span className=\"block-editor-block-inspector__no-blocks\">\n\t\t\t\t\t\t\t{ __( 'No block selected.' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t</Tabs.Context.Provider>\n\t\t</ComplementaryArea>\n\t);\n}\n\nexport default function Sidebar() {\n\tconst {\n\t\tcurrentArea,\n\t\thasSelectedNonAreaBlock,\n\t\tisGeneralSidebarOpen,\n\t\tselectedWidgetAreaBlock,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSelectedBlock, getBlock, getBlockParentsByBlockName } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\n\t\tconst selectedBlock = getSelectedBlock();\n\n\t\tconst activeArea = getActiveComplementaryArea( editWidgetsStore.name );\n\n\t\tlet currentSelection = activeArea;\n\t\tif ( ! currentSelection ) {\n\t\t\tif ( selectedBlock ) {\n\t\t\t\tcurrentSelection = BLOCK_INSPECTOR_IDENTIFIER;\n\t\t\t} else {\n\t\t\t\tcurrentSelection = WIDGET_AREAS_IDENTIFIER;\n\t\t\t}\n\t\t}\n\n\t\tlet widgetAreaBlock;\n\t\tif ( selectedBlock ) {\n\t\t\tif ( selectedBlock.name === 'core/widget-area' ) {\n\t\t\t\twidgetAreaBlock = selectedBlock;\n\t\t\t} else {\n\t\t\t\twidgetAreaBlock = getBlock(\n\t\t\t\t\tgetBlockParentsByBlockName(\n\t\t\t\t\t\tselectedBlock.clientId,\n\t\t\t\t\t\t'core/widget-area'\n\t\t\t\t\t)[ 0 ]\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tcurrentArea: currentSelection,\n\t\t\thasSelectedNonAreaBlock: !! (\n\t\t\t\tselectedBlock && selectedBlock.name !== 'core/widget-area'\n\t\t\t),\n\t\t\tisGeneralSidebarOpen: !! activeArea,\n\t\t\tselectedWidgetAreaBlock: widgetAreaBlock,\n\t\t};\n\t}, [] );\n\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\t// `newSelectedTabId` could technically be falsey if no tab is selected (i.e.\n\t// the initial render) or when we don't want a tab displayed (i.e. the\n\t// sidebar is closed). These cases should both be covered by the `!!` check\n\t// below, so we shouldn't need any additional falsey handling.\n\tconst onTabSelect = useCallback(\n\t\t( newSelectedTabId ) => {\n\t\t\tif ( !! newSelectedTabId ) {\n\t\t\t\tenableComplementaryArea(\n\t\t\t\t\teditWidgetsStore.name,\n\t\t\t\t\tnewSelectedTabId\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ enableComplementaryArea ]\n\t);\n\n\treturn (\n\t\t<Tabs\n\t\t\t// Due to how this component is controlled (via a value from the\n\t\t\t// `interfaceStore`), when the sidebar closes the currently selected\n\t\t\t// tab can't be found. This causes the component to continuously reset\n\t\t\t// the selection to `null` in an infinite loop. Proactively setting\n\t\t\t// the selected tab to `null` avoids that.\n\t\t\tselectedTabId={ isGeneralSidebarOpen ? currentArea : null }\n\t\t\tonSelect={ onTabSelect }\n\t\t\tselectOnMove={ false }\n\t\t>\n\t\t\t<SidebarContent\n\t\t\t\thasSelectedNonAreaBlock={ hasSelectedNonAreaBlock }\n\t\t\t\tcurrentArea={ currentArea }\n\t\t\t\tisGeneralSidebarOpen={ isGeneralSidebarOpen }\n\t\t\t\tselectedWidgetAreaBlock={ selectedWidgetAreaBlock }\n\t\t\t/>\n\t\t</Tabs>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useEffect","Platform","useContext","useCallback","isRTL","__","ComplementaryArea","store","interfaceStore","BlockInspector","blockEditorStore","drawerLeft","drawerRight","privateApis","componentsPrivateApis","useSelect","useDispatch","SIDEBAR_ACTIVE_BY_DEFAULT","select","web","native","BLOCK_INSPECTOR_IDENTIFIER","WIDGET_AREAS_IDENTIFIER","WidgetAreas","editWidgetsStore","unlock","jsx","_jsx","jsxs","_jsxs","Tabs","SidebarHeader","selectedWidgetAreaBlock","TabList","children","Tab","tabId","attributes","name","SidebarContent","hasSelectedNonAreaBlock","currentArea","isGeneralSidebarOpen","enableComplementaryArea","tabsContextValue","Context","className","header","Provider","value","headerClassName","title","closeLabel","scope","identifier","icon","isActiveByDefault","TabPanel","focusable","selectedWidgetAreaId","id","Sidebar","getSelectedBlock","getBlock","getBlockParentsByBlockName","getActiveComplementaryArea","selectedBlock","activeArea","currentSelection","widgetAreaBlock","clientId","onTabSelect","newSelectedTabId","selectedTabId","onSelect","selectOnMove"],"sources":["@wordpress/edit-widgets/src/components/sidebar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseEffect,\n\tPlatform,\n\tuseContext,\n\tuseCallback,\n} from '@wordpress/element';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport {\n\tBlockInspector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\nimport { drawerLeft, drawerRight } from '@wordpress/icons';\nimport { privateApis as componentsPrivateApis } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\nconst SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select( {\n\tweb: true,\n\tnative: false,\n} );\n\nconst BLOCK_INSPECTOR_IDENTIFIER = 'edit-widgets/block-inspector';\n\n// Widget areas were once called block areas, so use 'edit-widgets/block-areas'\n// for backwards compatibility.\nconst WIDGET_AREAS_IDENTIFIER = 'edit-widgets/block-areas';\n\n/**\n * Internal dependencies\n */\nimport WidgetAreas from './widget-areas';\nimport { store as editWidgetsStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction SidebarHeader( { selectedWidgetAreaBlock } ) {\n\treturn (\n\t\t<Tabs.TabList>\n\t\t\t<Tabs.Tab tabId={ WIDGET_AREAS_IDENTIFIER }>\n\t\t\t\t{ selectedWidgetAreaBlock\n\t\t\t\t\t? selectedWidgetAreaBlock.attributes.name\n\t\t\t\t\t: __( 'Widget Areas' ) }\n\t\t\t</Tabs.Tab>\n\t\t\t<Tabs.Tab tabId={ BLOCK_INSPECTOR_IDENTIFIER }>\n\t\t\t\t{ __( 'Block' ) }\n\t\t\t</Tabs.Tab>\n\t\t</Tabs.TabList>\n\t);\n}\n\nfunction SidebarContent( {\n\thasSelectedNonAreaBlock,\n\tcurrentArea,\n\tisGeneralSidebarOpen,\n\tselectedWidgetAreaBlock,\n} ) {\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\thasSelectedNonAreaBlock &&\n\t\t\tcurrentArea === WIDGET_AREAS_IDENTIFIER &&\n\t\t\tisGeneralSidebarOpen\n\t\t) {\n\t\t\tenableComplementaryArea(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\tBLOCK_INSPECTOR_IDENTIFIER\n\t\t\t);\n\t\t}\n\t\tif (\n\t\t\t! hasSelectedNonAreaBlock &&\n\t\t\tcurrentArea === BLOCK_INSPECTOR_IDENTIFIER &&\n\t\t\tisGeneralSidebarOpen\n\t\t) {\n\t\t\tenableComplementaryArea(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\tWIDGET_AREAS_IDENTIFIER\n\t\t\t);\n\t\t}\n\t\t// We're intentionally leaving `currentArea` and `isGeneralSidebarOpen`\n\t\t// out of the dep array because we want this effect to run based on\n\t\t// block selection changes, not sidebar state changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ hasSelectedNonAreaBlock, enableComplementaryArea ] );\n\n\tconst tabsContextValue = useContext( Tabs.Context );\n\n\treturn (\n\t\t<ComplementaryArea\n\t\t\tclassName=\"edit-widgets-sidebar\"\n\t\t\theader={\n\t\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t\t<SidebarHeader\n\t\t\t\t\t\tselectedWidgetAreaBlock={ selectedWidgetAreaBlock }\n\t\t\t\t\t/>\n\t\t\t\t</Tabs.Context.Provider>\n\t\t\t}\n\t\t\theaderClassName=\"edit-widgets-sidebar__panel-tabs\"\n\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\ttitle={ __( 'Settings' ) }\n\t\t\tcloseLabel={ __( 'Close Settings' ) }\n\t\t\tscope=\"core/edit-widgets\"\n\t\t\tidentifier={ currentArea }\n\t\t\ticon={ isRTL() ? drawerLeft : drawerRight }\n\t\t\tisActiveByDefault={ SIDEBAR_ACTIVE_BY_DEFAULT }\n\t\t>\n\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\ttabId={ WIDGET_AREAS_IDENTIFIER }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t<WidgetAreas\n\t\t\t\t\t\tselectedWidgetAreaId={\n\t\t\t\t\t\t\tselectedWidgetAreaBlock?.attributes.id\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\ttabId={ BLOCK_INSPECTOR_IDENTIFIER }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t{ hasSelectedNonAreaBlock ? (\n\t\t\t\t\t\t<BlockInspector />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t// Pretend that Widget Areas are part of the UI by not\n\t\t\t\t\t\t// showing the Block Inspector when one is selected.\n\t\t\t\t\t\t<span className=\"block-editor-block-inspector__no-blocks\">\n\t\t\t\t\t\t\t{ __( 'No block selected.' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t</Tabs.Context.Provider>\n\t\t</ComplementaryArea>\n\t);\n}\n\nexport default function Sidebar() {\n\tconst {\n\t\tcurrentArea,\n\t\thasSelectedNonAreaBlock,\n\t\tisGeneralSidebarOpen,\n\t\tselectedWidgetAreaBlock,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSelectedBlock, getBlock, getBlockParentsByBlockName } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\n\t\tconst selectedBlock = getSelectedBlock();\n\n\t\tconst activeArea = getActiveComplementaryArea( editWidgetsStore.name );\n\n\t\tlet currentSelection = activeArea;\n\t\tif ( ! currentSelection ) {\n\t\t\tif ( selectedBlock ) {\n\t\t\t\tcurrentSelection = BLOCK_INSPECTOR_IDENTIFIER;\n\t\t\t} else {\n\t\t\t\tcurrentSelection = WIDGET_AREAS_IDENTIFIER;\n\t\t\t}\n\t\t}\n\n\t\tlet widgetAreaBlock;\n\t\tif ( selectedBlock ) {\n\t\t\tif ( selectedBlock.name === 'core/widget-area' ) {\n\t\t\t\twidgetAreaBlock = selectedBlock;\n\t\t\t} else {\n\t\t\t\twidgetAreaBlock = getBlock(\n\t\t\t\t\tgetBlockParentsByBlockName(\n\t\t\t\t\t\tselectedBlock.clientId,\n\t\t\t\t\t\t'core/widget-area'\n\t\t\t\t\t)[ 0 ]\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tcurrentArea: currentSelection,\n\t\t\thasSelectedNonAreaBlock: !! (\n\t\t\t\tselectedBlock && selectedBlock.name !== 'core/widget-area'\n\t\t\t),\n\t\t\tisGeneralSidebarOpen: !! activeArea,\n\t\t\tselectedWidgetAreaBlock: widgetAreaBlock,\n\t\t};\n\t}, [] );\n\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\t// `newSelectedTabId` could technically be falsy if no tab is selected (i.e.\n\t// the initial render) or when we don't want a tab displayed (i.e. the\n\t// sidebar is closed). These cases should both be covered by the `!!` check\n\t// below, so we shouldn't need any additional falsy handling.\n\tconst onTabSelect = useCallback(\n\t\t( newSelectedTabId ) => {\n\t\t\tif ( !! newSelectedTabId ) {\n\t\t\t\tenableComplementaryArea(\n\t\t\t\t\teditWidgetsStore.name,\n\t\t\t\t\tnewSelectedTabId\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ enableComplementaryArea ]\n\t);\n\n\treturn (\n\t\t<Tabs\n\t\t\t// Due to how this component is controlled (via a value from the\n\t\t\t// `interfaceStore`), when the sidebar closes the currently selected\n\t\t\t// tab can't be found. This causes the component to continuously reset\n\t\t\t// the selection to `null` in an infinite loop. Proactively setting\n\t\t\t// the selected tab to `null` avoids that.\n\t\t\tselectedTabId={ isGeneralSidebarOpen ? currentArea : null }\n\t\t\tonSelect={ onTabSelect }\n\t\t\tselectOnMove={ false }\n\t\t>\n\t\t\t<SidebarContent\n\t\t\t\thasSelectedNonAreaBlock={ hasSelectedNonAreaBlock }\n\t\t\t\tcurrentArea={ currentArea }\n\t\t\t\tisGeneralSidebarOpen={ isGeneralSidebarOpen }\n\t\t\t\tselectedWidgetAreaBlock={ selectedWidgetAreaBlock }\n\t\t\t/>\n\t\t</Tabs>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
/**
|
|
30
30
|
* Fonts & basic variables.
|
|
31
31
|
*/
|
|
32
|
+
/**
|
|
33
|
+
* Typography
|
|
34
|
+
*/
|
|
32
35
|
/**
|
|
33
36
|
* Grid System.
|
|
34
37
|
* https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
|
|
@@ -43,7 +46,10 @@
|
|
|
43
46
|
* Dimensions.
|
|
44
47
|
*/
|
|
45
48
|
/**
|
|
46
|
-
*
|
|
49
|
+
* Mobile specific styles
|
|
50
|
+
*/
|
|
51
|
+
/**
|
|
52
|
+
* Editor styles.
|
|
47
53
|
*/
|
|
48
54
|
/**
|
|
49
55
|
* Block & Editor UI.
|
|
@@ -67,6 +73,9 @@
|
|
|
67
73
|
* Creates a fading overlay to signify that the content is longer
|
|
68
74
|
* than the space allows.
|
|
69
75
|
*/
|
|
76
|
+
/**
|
|
77
|
+
* Typography
|
|
78
|
+
*/
|
|
70
79
|
/**
|
|
71
80
|
* Breakpoint mixins
|
|
72
81
|
*/
|
|
@@ -590,6 +599,7 @@ body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .c
|
|
|
590
599
|
padding-left: 8px;
|
|
591
600
|
padding-right: 16px;
|
|
592
601
|
overflow: hidden;
|
|
602
|
+
height: 60px;
|
|
593
603
|
}
|
|
594
604
|
|
|
595
605
|
.edit-widgets-header__title {
|
package/build-style/style.css
CHANGED
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
/**
|
|
30
30
|
* Fonts & basic variables.
|
|
31
31
|
*/
|
|
32
|
+
/**
|
|
33
|
+
* Typography
|
|
34
|
+
*/
|
|
32
35
|
/**
|
|
33
36
|
* Grid System.
|
|
34
37
|
* https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
|
|
@@ -43,7 +46,10 @@
|
|
|
43
46
|
* Dimensions.
|
|
44
47
|
*/
|
|
45
48
|
/**
|
|
46
|
-
*
|
|
49
|
+
* Mobile specific styles
|
|
50
|
+
*/
|
|
51
|
+
/**
|
|
52
|
+
* Editor styles.
|
|
47
53
|
*/
|
|
48
54
|
/**
|
|
49
55
|
* Block & Editor UI.
|
|
@@ -67,6 +73,9 @@
|
|
|
67
73
|
* Creates a fading overlay to signify that the content is longer
|
|
68
74
|
* than the space allows.
|
|
69
75
|
*/
|
|
76
|
+
/**
|
|
77
|
+
* Typography
|
|
78
|
+
*/
|
|
70
79
|
/**
|
|
71
80
|
* Breakpoint mixins
|
|
72
81
|
*/
|
|
@@ -590,6 +599,7 @@ body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .c
|
|
|
590
599
|
padding-right: 8px;
|
|
591
600
|
padding-left: 16px;
|
|
592
601
|
overflow: hidden;
|
|
602
|
+
height: 60px;
|
|
593
603
|
}
|
|
594
604
|
|
|
595
605
|
.edit-widgets-header__title {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/edit-widgets",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.9.0",
|
|
4
4
|
"description": "Widgets Page module for WordPress..",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -28,32 +28,32 @@
|
|
|
28
28
|
"react-native": "src/index",
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@babel/runtime": "^7.16.0",
|
|
31
|
-
"@wordpress/api-fetch": "^7.
|
|
32
|
-
"@wordpress/block-editor": "^14.
|
|
33
|
-
"@wordpress/block-library": "^9.
|
|
34
|
-
"@wordpress/blocks": "^13.
|
|
35
|
-
"@wordpress/components": "^28.
|
|
36
|
-
"@wordpress/compose": "^7.
|
|
37
|
-
"@wordpress/core-data": "^7.
|
|
38
|
-
"@wordpress/data": "^10.
|
|
39
|
-
"@wordpress/deprecated": "^4.
|
|
40
|
-
"@wordpress/dom": "^4.
|
|
41
|
-
"@wordpress/element": "^6.
|
|
42
|
-
"@wordpress/hooks": "^4.
|
|
43
|
-
"@wordpress/i18n": "^5.
|
|
44
|
-
"@wordpress/icons": "^10.
|
|
45
|
-
"@wordpress/interface": "^6.
|
|
46
|
-
"@wordpress/keyboard-shortcuts": "^5.
|
|
47
|
-
"@wordpress/keycodes": "^4.
|
|
48
|
-
"@wordpress/media-utils": "^5.
|
|
49
|
-
"@wordpress/notices": "^5.
|
|
50
|
-
"@wordpress/patterns": "^2.
|
|
51
|
-
"@wordpress/plugins": "^7.
|
|
52
|
-
"@wordpress/preferences": "^4.
|
|
53
|
-
"@wordpress/private-apis": "^1.
|
|
54
|
-
"@wordpress/reusable-blocks": "^5.
|
|
55
|
-
"@wordpress/url": "^4.
|
|
56
|
-
"@wordpress/widgets": "^4.
|
|
31
|
+
"@wordpress/api-fetch": "^7.9.0",
|
|
32
|
+
"@wordpress/block-editor": "^14.4.0",
|
|
33
|
+
"@wordpress/block-library": "^9.9.0",
|
|
34
|
+
"@wordpress/blocks": "^13.9.0",
|
|
35
|
+
"@wordpress/components": "^28.9.0",
|
|
36
|
+
"@wordpress/compose": "^7.9.0",
|
|
37
|
+
"@wordpress/core-data": "^7.9.0",
|
|
38
|
+
"@wordpress/data": "^10.9.0",
|
|
39
|
+
"@wordpress/deprecated": "^4.9.0",
|
|
40
|
+
"@wordpress/dom": "^4.9.0",
|
|
41
|
+
"@wordpress/element": "^6.9.0",
|
|
42
|
+
"@wordpress/hooks": "^4.9.0",
|
|
43
|
+
"@wordpress/i18n": "^5.9.0",
|
|
44
|
+
"@wordpress/icons": "^10.9.0",
|
|
45
|
+
"@wordpress/interface": "^6.9.0",
|
|
46
|
+
"@wordpress/keyboard-shortcuts": "^5.9.0",
|
|
47
|
+
"@wordpress/keycodes": "^4.9.0",
|
|
48
|
+
"@wordpress/media-utils": "^5.9.0",
|
|
49
|
+
"@wordpress/notices": "^5.9.0",
|
|
50
|
+
"@wordpress/patterns": "^2.9.0",
|
|
51
|
+
"@wordpress/plugins": "^7.9.0",
|
|
52
|
+
"@wordpress/preferences": "^4.9.0",
|
|
53
|
+
"@wordpress/private-apis": "^1.9.0",
|
|
54
|
+
"@wordpress/reusable-blocks": "^5.9.0",
|
|
55
|
+
"@wordpress/url": "^4.9.0",
|
|
56
|
+
"@wordpress/widgets": "^4.9.0",
|
|
57
57
|
"clsx": "^2.1.1"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
@@ -63,5 +63,5 @@
|
|
|
63
63
|
"publishConfig": {
|
|
64
64
|
"access": "public"
|
|
65
65
|
},
|
|
66
|
-
"gitHead": "
|
|
66
|
+
"gitHead": "2e5495c635910cb34bfaca3c6258d2e989f66214"
|
|
67
67
|
}
|
|
@@ -28,7 +28,7 @@ const SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select( {
|
|
|
28
28
|
|
|
29
29
|
const BLOCK_INSPECTOR_IDENTIFIER = 'edit-widgets/block-inspector';
|
|
30
30
|
|
|
31
|
-
// Widget areas were
|
|
31
|
+
// Widget areas were once called block areas, so use 'edit-widgets/block-areas'
|
|
32
32
|
// for backwards compatibility.
|
|
33
33
|
const WIDGET_AREAS_IDENTIFIER = 'edit-widgets/block-areas';
|
|
34
34
|
|
|
@@ -192,10 +192,10 @@ export default function Sidebar() {
|
|
|
192
192
|
|
|
193
193
|
const { enableComplementaryArea } = useDispatch( interfaceStore );
|
|
194
194
|
|
|
195
|
-
// `newSelectedTabId` could technically be
|
|
195
|
+
// `newSelectedTabId` could technically be falsy if no tab is selected (i.e.
|
|
196
196
|
// the initial render) or when we don't want a tab displayed (i.e. the
|
|
197
197
|
// sidebar is closed). These cases should both be covered by the `!!` check
|
|
198
|
-
// below, so we shouldn't need any additional
|
|
198
|
+
// below, so we shouldn't need any additional falsy handling.
|
|
199
199
|
const onTabSelect = useCallback(
|
|
200
200
|
( newSelectedTabId ) => {
|
|
201
201
|
if ( !! newSelectedTabId ) {
|