/** * WordPress dependencies */ import { Button, SelectControl, Spinner, TextControl, } from '@safe-wordpress/components'; import { _x } from '@safe-wordpress/i18n'; /** * External dependencies */ import { noop } from 'lodash'; import { usePostTypes } from '@nelio-content/data'; import { Maybe } from '@nelio-content/types'; /** * Internal dependencies */ import { AnalyticsRefreshButton } from './analytics-refresh-button'; import type { ConnectionMode, GA4Property } from './config'; type ConnectionProps = { readonly className?: string; readonly name: string; readonly currentProperty: Maybe< GA4Property >; readonly mode: ConnectionMode; readonly selectedProperty: Maybe< GA4Property >; readonly properties: ReadonlyArray< GA4Property >; readonly onChangeAccount: () => void; readonly onSelectProperty: ( property: GA4Property ) => void; }; export const Connection = ( { className = '', name, currentProperty, mode, selectedProperty, properties, onSelectProperty, onChangeAccount, }: ConnectionProps ): JSX.Element | null => { const hasAnalytics = usePostTypes( 'analytics' ).length > 0; if ( ! hasAnalytics ) { return null; } switch ( mode ) { case 'init': return (
{ _x( 'Selected account doesn’t have any properties. Please select a different account.', 'user', 'nelio-content' ) }
) }