R/generate_markdown_for_projects.R

Defines functions generate_markdown_for_projects

Documented in generate_markdown_for_projects

#' Generate markdown for projects
#'
#' Generate markdown block for `codensr` projects.
#'
#' @param project A `condensr` project object. If a link is available (i.e.
#' `!is.na(project$link)`), then a hyperlink will be inserted.
#' @return No return value, function will output text directly into markdown
#' document using `cat`.
#' 
#' @examples 
#' 
#' example_project <- project(
#'        id = "joes-model",
#'        name = "Joe's Blogging Model",
#'        related_staff = "joe-bloggs"
#'    )
#' generate_markdown_for_projects(example_project)
#'
#' @export
generate_markdown_for_projects <- function(project) {
    if (!"project" %in% class(project)) {
        stop("Input project must have class project")
    }

    if (is.na(project$link)) {
        cat(
            glue::glue("* {project$name}"),
            sep = "\n"
        )
    } else {
        cat(
            glue::glue("* [{project$name}]({project$link})"),
            sep = "\n"
        )
    }

    return (invisible(NULL))
}

Try the condensr package in your browser

Any scripts or data that you put into this service are public.

condensr documentation built on Aug. 30, 2023, 5:13 p.m.