Analytics Flag: Remove performance indicators when disabled (https://github.com/woocommerce/woocommerce-admin/pull/7234)

* remove performance indicators if analytics off

* changelog

* Hide the display option if there is only content for a single column
This commit is contained in:
Paul Sealock 2021-07-01 11:16:11 +12:00 committed by GitHub
parent 8c1db8a2cf
commit 1701b6ce15
3 changed files with 76 additions and 46 deletions

View File

@ -47,12 +47,20 @@ const LAYOUTS = [
];
export const DisplayOptions = () => {
const { defaultHomescreenLayout } = useSelect( ( select ) => {
const {
defaultHomescreenLayout,
taskListComplete,
isTaskListHidden,
} = useSelect( ( select ) => {
const { getOption } = select( OPTIONS_STORE_NAME );
return {
defaultHomescreenLayout:
getOption( 'woocommerce_default_homepage_layout' ) ||
'single_column',
taskListComplete:
getOption( 'woocommerce_task_list_complete' ) === 'yes',
isTaskListHidden:
getOption( 'woocommerce_task_list_hidden' ) === 'yes',
};
} );
const {
@ -60,9 +68,18 @@ export const DisplayOptions = () => {
homepage_layout: layout,
} = useUserPreferences();
const shouldShowStoreLinks = taskListComplete || isTaskListHidden;
const hasTwoColumnContent =
shouldShowStoreLinks || window.wcAdminFeatures.analytics;
return (
<Slot>
{ ( fills ) => (
{ ( fills ) => {
// If there is no fill to render and only single column content, don't render the display.
if ( fills.length === 0 && ! hasTwoColumnContent ) {
return null;
}
return (
<DropdownMenu
icon={ <DisplayIcon /> }
/* translators: button label text should, if possible, be under 16 characters. */
@ -74,15 +91,20 @@ export const DisplayOptions = () => {
recordEvent( 'homescreen_display_click' ),
} }
popoverProps={ {
className: 'woocommerce-layout__activity-panel-popover',
className:
'woocommerce-layout__activity-panel-popover',
} }
>
{ ( { onClose } ) => (
<>
{ fills }
{ hasTwoColumnContent ? (
<MenuGroup
className="woocommerce-layout__homescreen-display-options"
label={ __( 'Layout', 'woocommerce-admin' ) }
label={ __(
'Layout',
'woocommerce-admin'
) }
>
<MenuItemsChoice
choices={ LAYOUTS }
@ -98,13 +120,18 @@ export const DisplayOptions = () => {
}
);
} }
value={ layout || defaultHomescreenLayout }
value={
layout ||
defaultHomescreenLayout
}
/>
</MenuGroup>
) : null }
</>
) }
</DropdownMenu>
) }
);
} }
</Slot>
);
};

View File

@ -57,9 +57,12 @@ export const Layout = ( {
updateOptions,
} ) => {
const userPrefs = useUserPreferences();
const shouldShowStoreLinks = taskListComplete || isTaskListHidden;
const hasTwoColumnContent =
shouldShowStoreLinks || window.wcAdminFeatures.analytics;
const twoColumns =
( userPrefs.homepage_layout || defaultHomescreenLayout ) ===
'two_columns';
'two_columns' && hasTwoColumnContent;
const [ showInbox, setShowInbox ] = useState( true );
const isTaskListEnabled = bothTaskListsHidden === false;
@ -84,7 +87,6 @@ export const Layout = ( {
}, [ maybeToggleColumns ] );
const shouldStickColumns = isWideViewport.current && twoColumns;
const shouldShowStoreLinks = taskListComplete || isTaskListHidden;
const renderColumns = () => {
return (
@ -103,7 +105,7 @@ export const Layout = ( {
<InboxPanel />
</Column>
<Column shouldStick={ shouldStickColumns }>
<StatsOverview />
{ window.wcAdminFeatures.analytics && <StatsOverview /> }
{ shouldShowStoreLinks && <StoreManagementLinks /> }
</Column>
</>

View File

@ -100,6 +100,7 @@ Release and roadmap notes are available on the [WooCommerce Developers Blog](htt
- Fix: Currency display on Orders activity card on homescreen #7181
- Fix: Report export filtering bug. #7165
- Fix: Use tab char for the CSV injection prevention. #7154
- Tweak: Remove performance indicators when Analytics Flag disabled #7234
- Tweak: Revert Card component removal #7167
- Tweak: Removed unused feature flags #7233
- Update: Notes to use a date range. #7222