*** Begin Patch
*** Update File: wp-includes/admin-bar.php
@@
 function wp_admin_bar_view_site_menu( $wp_admin_bar ) {
 	global $post;
 
 	if ( is_admin() ) {
 		$post_id = 0;
 		if ( isset( $_GET['post'] ) ) {
 			$post_id = (int) $_GET['post'];
 		} elseif ( isset( $_POST['post_ID'] ) ) {
 			$post_id = (int) $_POST['post_ID'];
 		}
 
 		if ( $post_id ) {
 			$post = get_post( $post_id );
-			if ( $post ) {
+			// Hide "View" link for wp_block (synced patterns) since they are not publicly viewable.
+			if ( $post && 'wp_block' !== $post->post_type ) {
 				$title = sprintf( __( 'View %s' ), wp_strip_all_tags( get_the_title( $post ) ) );
 				$wp_admin_bar->add_node(
 					array(
 						'id'    => 'view',
 						'title' => $title,
 						'href'  => get_permalink( $post ),
 					)
 				);
 			}
*** End Patch
