public function admin_bar_menu( \WP_Admin_Bar $wp_admin_bar ): void {

		if ( ! apply_filters( 'laps_can_see', current_user_can( 'manage_options' ) ) ) {
			return;
		}

		global $timestart;

		$wp_admin_bar->add_node( [
			'id'    => 'laps',
			'title' => sprintf( 'Lap: %ss', round( microtime( true ) - $timestart, 3 ) ),
		] );

		$wp_admin_bar->add_node( [
			'id'     => 'laps_output',
			'parent' => 'laps',
			'meta'   => [ // TODO consider doing render lazily, but might not be worth the effort.
				'html' => $this->mustache->render( 'laps', [
					'timelines' => new Timeline_Iterator( new Recursive_Record_Iterator( $this->collector->get_records() ) ),
				] ),
			],
		] );
	}