Skip to contents

Creates the main UI for the upload module displaying an artwork table organized by collection tabs with action buttons (edit, view, download, delete) and an "Add" button that triggers the wizard modal.

Usage

modUploadUI(id)

Arguments

id

Character scalar. Shiny namespace ID for the module. Used by [shiny::NS()] to create unique element IDs and prevent conflicts with other modules or the parent app. Must match between UI and server calls.

Value

A `shiny.tag.list` containing the complete upload module UI with artwork table, collection tabs, and action buttons.

Details

Includes module-specific CSS and JavaScript scoped to prevent conflicts with parent applications. Uses waiter for loading screens and shinyjs for dynamic UI updates.

See also

* [modUploadServer()] for server logic * [new_art_modal_ui()] for the wizard modal * [updateProjectUI()] for the sub-module UI

Other upload-core: modUploadServer()

Examples

if (FALSE) { # \dontrun{
# In appPlatform UI
library(shiny)
library(bslib)

ui <- bslib::page_fluid(
  modUploadUI("upload")
)

server <- function(input, output, session) {
  r <- reactiveValues(artist = "746b8207-...")
  observe({
    r$appdata <- artutils::get_appdata(r$artist, r$artwork)
  })
  modUploadServer("upload", r)
}

shinyApp(ui, server)
} # }