#' Activate the records of the specified data frame.
#' 
#' This helper function is used in the context of a Slowly Changing Dimension
#' (SCD) to mark new records of a data frame as active with a start date.
#' 
#' @param dataframe `data.frame`. The data frame to activate.
#' 
#' @return The specified data frame with ACTIVE set to TRUE, START_DATE set to
#'   current time, and END_DATE set to NA.
#'
#' @importFrom checkmate assert_data_frame
#' @importFrom dplyr mutate
#'
#' @keywords internal
#' @noRd
#' 
.activate <- function(dataframe) {

  assert_data_frame(dataframe)
  
  activatedDataframe_ <- dataframe |> mutate(
    IS_ACTIVE = TRUE,
    START_DATE = Sys.time(),
    END_DATE = as.Date(NA)
  )

  return(activatedDataframe_)
}
