@@ -3,20 +3,15 @@ import { useI18n } from '@wordpress/react-i18n';
33import { useCallback } from 'react' ;
44import { useSyncSites } from 'src/hooks/sync-sites' ;
55import { useAuth } from 'src/hooks/use-auth' ;
6- import { useContentTabs } from 'src/hooks/use-content-tabs' ;
76import { useSiteDetails } from 'src/hooks/use-site-details' ;
7+ import { generateCheckoutUrl } from 'src/lib/generate-checkout-url' ;
8+ import { getIpcApi } from 'src/lib/get-ipc-api' ;
89import { ConnectButton } from 'src/modules/sync/components/connect-button' ;
9- import { useAppDispatch } from 'src/stores' ;
10- import {
11- connectedSitesActions ,
12- useGetConnectedSitesForLocalSiteQuery ,
13- } from 'src/stores/sync/connected-sites' ;
10+ import { useGetConnectedSitesForLocalSiteQuery } from 'src/stores/sync/connected-sites' ;
1411
1512export const PublishSiteButton = ( ) => {
1613 const { __ } = useI18n ( ) ;
17- const dispatch = useAppDispatch ( ) ;
18- const { setSelectedTab } = useContentTabs ( ) ;
19- const { user, authenticate } = useAuth ( ) ;
14+ const { user } = useAuth ( ) ;
2015 const { selectedSite } = useSiteDetails ( ) ;
2116 const { data : connectedSites = [ ] } = useGetConnectedSitesForLocalSiteQuery ( {
2217 localSiteId : selectedSite ?. id ,
@@ -26,12 +21,8 @@ export const PublishSiteButton = () => {
2621 const isAnySiteSyncing = isAnySitePulling || isAnySitePushing ;
2722
2823 const handlePublishClick = useCallback ( ( ) => {
29- if ( ! user ) {
30- authenticate ( ) ;
31- }
32- dispatch ( connectedSitesActions . openModal ( 'push' ) ) ;
33- setSelectedTab ( 'sync' ) ;
34- } , [ user , setSelectedTab , dispatch , authenticate ] ) ;
24+ getIpcApi ( ) . openURL ( generateCheckoutUrl ( selectedSite ?? undefined ) ) ;
25+ } , [ selectedSite ] ) ;
3526
3627 if ( connectedSites . length !== 0 ) return null ;
3728
0 commit comments