$row */ public function to_fix( array $row ): Fix { $progress = new FixProgress( state: FixState::from( RowColumns::text( $row, 'state' ) ), links_done: RowColumns::whole_number( $row, 'links_done' ), places_total: RowColumns::whole_number( $row, 'places_total' ), places_done: RowColumns::whole_number( $row, 'places_done' ), places_failed: RowColumns::whole_number( $row, 'places_failed' ), journal: $this->fix_json_columns->decode_journal( RowColumns::text( $row, 'journal' ) ) ); return new Fix( id: RowColumns::whole_number( $row, 'id' ), action: FixAction::from( RowColumns::text( $row, 'action' ) ), created_at: RowColumns::whole_number( $row, 'created_at' ), new_url: $row['new_url'] ?? null, first_url: RowColumns::text( $row, 'first_url' ), link_ids: $this->fix_json_columns->decode_link_ids( RowColumns::text( $row, 'link_ids' ) ), progress: $progress ); } }