diff --git a/R/dashboard_modules/03-subjects_and_standards.R b/R/dashboard_modules/03-subjects_and_standards.R index 21d1720..87f615c 100644 --- a/R/dashboard_modules/03-subjects_and_standards.R +++ b/R/dashboard_modules/03-subjects_and_standards.R @@ -1,5 +1,199 @@ -subjects_and_standards <- function() { +# Load data =================================================================== +# Functions used here are created in the R/read_data.R file +sas_parquet <- read_sas("data/apprenticeships_data_0.parquet") + +# Create static lists of options for dropdowns +sas_provider_choices <- data_choices(data = sas_parquet, column = "provider_name") +sas_year_choices <- data_choices(data = sas_parquet, column = "year") +sas_measure_choices <- data_choices(data = sas_parquet, column = "measure") + +subjects_standards_ui <- function(id) { div( h1("Subjects and standards"), + div( + class = "well", + style = "min-height: 100%; height: 100%; overflow-y: visible;", + bslib::layout_column_wrap( + width = "15rem", # Minimum width for each input box before wrapping + selectizeInput( + inputId = NS(id, "provider"), + label = NULL, + choices = NULL, + multiple = TRUE + ), + selectInput( + inputId = NS(id, "year"), + label = "Select academic year", + choices = c(sas_year_choices) + ), + selectInput( + inputId = NS(id, "measure"), + label = "Select measure", + choices = c(sas_measure_choices) + ) + ) + ), + card( + layout_columns( + col_widths = c(4, 8), + card( + card_header(textOutput(NS(id, "sas_provider_table_title"))), + card_body(reactable::reactableOutput(NS(id, "sas_provider_table"))) + ), + layout_column_wrap( + width = 1, + heights_equal = "row", + girafeOutput(NS(id, "subject_area_bar")), + reactable::reactableOutput(NS(id, "sas_subject_area_table")) + ) + ) + ) ) } + +subject_standards_server <- function(id) { + shiny::moduleServer(id, function(input, output, session) { + # Drop downs ============================================================== + # Using the server to power to the provider dropdown for increased speed + updateSelectizeInput( + session = session, + inputId = "provider", + label = "Search for provider", + choices = c(sas_provider_choices), + server = TRUE + ) + + subject_selection <- reactive({ + if (is.null(input$subject_area_bar_selected)) { + "all subjects" + } else { + input$subject_area_bar_selected + } + }) + + # Filter subject area data set based on inputs on this page. This reactive + # feeds the tables and chart. + subject_area_data <- reactive({ + data <- sas_parquet %>% + filter( + measure == input$measure, + year == input$year + ) + if (!(is.null(input$provider))) { + data <- data %>% + filter( + provider_name %in% input$provider + ) + } + data + }) + + # Adding a reactive to handle cleaning the selected SSA T1 Description from + # the bar chart. Removes the line wrapping I've added for the chart. + ssa_t1_selected <- reactive({ + gsub("\\n", " ", input$subject_area_bar_selected) + }) + + # Create dynamic title for the provider table + output$sas_provider_table_title <- renderText({ + paste( + input$measure, "for providers across", + ifelse( + length(ssa_t1_selected()) != 0, + paste0(ssa_t1_selected(), collapse = " / "), + "all subject areas" + ) + ) + }) + + provider_selection_table <- reactive({ + # Filter the data based on whether the user's selected any subject areas + # from the chart + if (!is.null(input$subject_area_bar_selected)) { + provider_data <- subject_area_data() %>% + filter(ssa_t1_desc %in% ssa_t1_selected()) + } else { + provider_data <- subject_area_data() + } + # Run a quick aggregate of numbers by provider name. + provider_data %>% + summarise( + values = sum(values), + .by = c("provider_name") + ) %>% + arrange(-values) %>% + rename( + `Provider name` = provider_name, + !!quo_name(input$measure) := values + ) + }) + + output$sas_provider_table <- renderReactable({ + dfe_reactable( + provider_selection_table(), + searchable = TRUE + ) + }) + + # Create an interactive chart showing the numbers broken down by subject + # area + output$subject_area_bar <- renderGirafe( + girafe( + ggobj = + subject_area_data() %>% + summarise( + values = sum(values), + .by = c("ssa_t1_desc") + ) %>% + mutate(ssa_t1_desc = str_wrap(ssa_t1_desc, 32)) %>% + ggplot( + aes( + x = reorder(ssa_t1_desc, values), + y = values, + tooltip = ssa_t1_desc, + data_id = ssa_t1_desc + ) + ) + + geom_col_interactive(fill = "#2073BC") + + theme_classic() + + coord_flip() + + xlab("") + + ylab(input$measure), + options = list(opts_selection( + type = "multiple", + css = "fill:#28A197;stroke:#28A197;r:5pt;" + )) + ) + ) + + # Expandable table of subject areas. + output$sas_subject_area_table <- renderReactable({ + subject_data <- subject_area_data() %>% + summarise( + values = sum(values), + .by = c("ssa_t1_desc", "ssa_t2_desc") + ) + if (!is.null(input$subject_area_bar_selected)) { + subject_data <- subject_data %>% + filter(ssa_t1_desc %in% ssa_t1_selected()) + } + reactable( + subject_data %>% + rename(`Subject area` = ssa_t1_desc) %>% + arrange(-values), + highlight = TRUE, + borderless = TRUE, + showSortIcon = FALSE, + style = list(fontSize = "16px"), + defaultColDef = colDef(headerClass = "bar-sort-header"), + groupBy = "Subject area", + columns = list( + values = colDef( + name = input$measure, + aggregate = "sum" + ) + ) + ) + }) + }) +} diff --git a/R/helper_functions.R b/R/helper_functions.R index f4e1ee9..a4f34e1 100644 --- a/R/helper_functions.R +++ b/R/helper_functions.R @@ -121,14 +121,23 @@ dfe_footer <- function(links_list) { } # dfe reactable =============================================================== -dfe_reactable <- function(data) { +dfe_reactable <- function(data, on_click = NULL, selection = NULL, row_style = NULL, searchable = FALSE) { reactable( data, + + # DfE styling highlight = TRUE, borderless = TRUE, showSortIcon = FALSE, style = list(fontSize = "16px"), - defaultColDef = colDef(headerClass = "bar-sort-header") + defaultColDef = colDef(headerClass = "bar-sort-header"), + + # Customiseable settings + # TODO: think about the best way to set this out for dfeshiny to allow flexibility while keeping defaults we want + rowStyle = row_style, + onClick = on_click, + selection = selection, + searchable = searchable ) } diff --git a/R/read_data.R b/R/read_data.R index 396c531..8efa1da 100644 --- a/R/read_data.R +++ b/R/read_data.R @@ -34,6 +34,31 @@ read_nps <- function(file_path) { select(-c(`order_ref`, `order_detailed`)) # unused columns } +## Subjects and standards -------------------------------------------------- +# Note that this does a 'lazy read', you need to use `%>% collect()` to pull the final table into memory +read_sas <- function(file_path) { + arrow::read_parquet(file_path) %>% + summarise( + starts = sum(starts), + enrolments = sum(enrolments), + achievements = sum(achievements), + .by = c( + "year", "apps_Level", "std_fwk_name", "ssa_t1_desc", + "ssa_t2_desc", "std_fwk_flag", "provider_type", "provider_name" + ) + ) %>% + pivot_longer( + c("starts", "enrolments", "achievements"), + names_to = "measure", + values_to = "values" + ) %>% + mutate( + provider_name = str_to_title(provider_name), + measure = str_to_sentence(measure) + ) +} + + # Create options lists for use in the dropdowns =============================== data_choices <- function(data, column) { data %>% diff --git a/global.R b/global.R index fc831ba..63ad664 100644 --- a/global.R +++ b/global.R @@ -32,6 +32,7 @@ shhh(library(treemapify)) shhh(library(arrow)) shhh(library(dplyr)) shhh(library(tidyr)) +shhh(library(stringr)) shhh(library(forcats)) ## Data downloads ------------------------------------------------------------- @@ -41,7 +42,6 @@ shhh(library(data.table)) ## Shiny extensions ----------------------------------------------------------- shhh(library(shinytitle)) shhh(library(metathis)) -shhh(library(shinytitle)) ## Testing dependencies ------------------------------------------------------- # These are not needed for the app itself but including them here keeps them in diff --git a/manifest.json b/manifest.json index 990001e..728ae04 100644 --- a/manifest.json +++ b/manifest.json @@ -119,14 +119,7 @@ "Date/Publication": "2024-06-15 19:40:02 UTC", "Encoding": "UTF-8", "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-06-16 04:59:25 UTC; windows", - "Archs": "x64", - "RemoteType": "standard", - "RemotePkgRef": "PKI", - "RemoteRef": "PKI", - "RemoteRepos": "https://packagemanager.posit.co/cran/latest", - "RemoteReposName": "CRAN", - "RemotePkgPlatform": "x86_64-w64-mingw32", - "RemoteSha": "0.1-14" + "Archs": "x64" } }, "R.cache": { @@ -149,10 +142,16 @@ "RoxygenNote": "7.2.1", "NeedsCompilation": "no", "Packaged": "2022-07-21 13:19:33 UTC; hb", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2022-07-21 16:20:02 UTC", - "Encoding": "UTF-8", - "Built": "R 4.4.0; ; 2024-04-25 19:48:03 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:54:16 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "R.cache", + "RemoteRef": "R.cache", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "0.16.0" } }, "R.methodsS3": { @@ -175,10 +174,16 @@ "BugReports": "https://github.com/HenrikBengtsson/R.methodsS3/issues", "NeedsCompilation": "no", "Packaged": "2022-06-13 18:23:35 UTC; hb", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2022-06-13 22:00:14 UTC", - "Encoding": "UTF-8", - "Built": "R 4.4.0; ; 2024-04-25 19:42:43 UTC; windows" + "Built": "R 4.4.0; ; 2024-04-23 00:24:06 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "R.methodsS3", + "RemoteRef": "R.methodsS3", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.8.2" } }, "R.oo": { @@ -201,10 +206,16 @@ "BugReports": "https://github.com/HenrikBengtsson/R.oo/issues", "NeedsCompilation": "no", "Packaged": "2024-01-24 02:17:13 UTC; henrik", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-01-24 05:12:50 UTC", - "Encoding": "UTF-8", - "Built": "R 4.4.0; ; 2024-04-25 19:44:10 UTC; windows" + "Built": "R 4.4.0; ; 2024-04-23 01:16:54 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "R.oo", + "RemoteRef": "R.oo", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.26.0" } }, "R.utils": { @@ -227,10 +238,16 @@ "BugReports": "https://github.com/HenrikBengtsson/R.utils/issues", "NeedsCompilation": "no", "Packaged": "2023-11-17 05:13:25 UTC; henrik", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-11-18 01:00:02 UTC", - "Encoding": "UTF-8", - "Built": "R 4.4.0; ; 2024-04-25 19:47:24 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:52:47 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "R.utils", + "RemoteRef": "R.utils", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "2.12.3" } }, "R6": { @@ -252,10 +269,16 @@ "Packaged": "2021-08-06 20:18:46 UTC; winston", "Author": "Winston Chang [aut, cre]", "Maintainer": "Winston Chang ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2021-08-19 14:00:05 UTC", - "Encoding": "UTF-8", - "Built": "R 4.4.0; ; 2024-04-25 19:39:56 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:52:18 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "R6", + "RemoteRef": "R6", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "2.5.1" } }, "RColorBrewer": { @@ -299,11 +322,17 @@ "Packaged": "2024-07-11 10:39:12 UTC; tomas", "Author": "CRAN Team [ctb, cre] (de facto maintainer since 2013),\n Duncan Temple Lang [aut] ()", "Maintainer": "CRAN Team ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-07-11 13:00:02 UTC", - "Encoding": "UTF-8", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-07-12 04:21:02 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-16 23:51:18 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "RCurl", + "RemoteRef": "RCurl", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.98-1.16" } }, "Rcpp": { @@ -327,10 +356,17 @@ "Encoding": "UTF-8", "NeedsCompilation": "yes", "Packaged": "2024-07-11 13:00:10 UTC; edd", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-07-17 15:50:06 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-07-18 04:28:04 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-26 08:00:20 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "Rcpp", + "RemoteRef": "Rcpp", + "RemoteRepos": "https://cloud.r-project.org", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "source", + "RemoteSha": "1.0.13" } }, "afcolours": { @@ -389,14 +425,7 @@ "Repository": "RSPM", "Date/Publication": "2024-05-25 22:10:02 UTC", "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-05-26 04:37:45 UTC; windows", - "Archs": "x64", - "RemoteType": "standard", - "RemotePkgRef": "arrow", - "RemoteRef": "arrow", - "RemoteRepos": "https://packagemanager.posit.co/cran/latest", - "RemoteReposName": "CRAN", - "RemotePkgPlatform": "x86_64-w64-mingw32", - "RemoteSha": "16.1.0" + "Archs": "x64" } }, "askpass": { @@ -448,14 +477,7 @@ "Repository": "RSPM", "Date/Publication": "2019-03-21 14:53:46 UTC", "Encoding": "UTF-8", - "Built": "R 4.4.0; ; 2024-04-25 19:54:15 UTC; windows", - "RemoteType": "standard", - "RemotePkgRef": "assertthat", - "RemoteRef": "assertthat", - "RemoteRepos": "https://packagemanager.posit.co/cran/latest", - "RemoteReposName": "CRAN", - "RemotePkgPlatform": "x86_64-w64-mingw32", - "RemoteSha": "0.2.1" + "Built": "R 4.4.0; ; 2024-04-25 19:54:15 UTC; windows" } }, "backports": { @@ -479,9 +501,9 @@ "RoxygenNote": "7.3.1", "Packaged": "2024-05-23 11:56:25 UTC; michel", "Author": "Michel Lang [cre, aut] (),\n Duncan Murdoch [aut],\n R Core Team [aut]", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-05-23 12:30:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-05-24 04:43:58 UTC; windows", + "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-05-24 23:50:37 UTC; windows", "Archs": "x64" } }, @@ -533,8 +555,15 @@ "Packaged": "2022-11-13 21:22:09 UTC; jo", "Repository": "CRAN", "Date/Publication": "2022-11-15 21:20:16 UTC", - "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-06-25 00:32:53 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:37 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "bit", + "RemoteRef": "bit", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "4.0.5" } }, "bit64": { @@ -562,8 +591,15 @@ "Date/Publication": "2020-08-30 07:20:02 UTC", "NeedsCompilation": "yes", "Packaged": "2020-08-29 10:56:45 UTC; jo", - "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-06-25 01:13:21 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 01:25:33 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "bit64", + "RemoteRef": "bit64", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "4.0.5" } }, "bitops": { @@ -582,11 +618,17 @@ "BugReports": "https://github.com/mmaechler/R-bitops/issues", "NeedsCompilation": "yes", "Packaged": "2021-04-13 20:50:22 UTC; maechler", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2021-04-24 11:40:08 UTC", - "Encoding": "UTF-8", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 18:30:25 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-23 00:24:57 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "bitops", + "RemoteRef": "bitops", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.0-7" } }, "brio": { @@ -791,10 +833,17 @@ "Packaged": "2024-06-21 17:24:00 UTC; gaborcsardi", "Author": "Gábor Csárdi [aut, cre],\n Hadley Wickham [ctb],\n Kirill Müller [ctb],\n Salim Brüggemann [ctb] (),\n Posit Software, PBC [cph, fnd]", "Maintainer": "Gábor Csárdi ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-06-21 21:00:07 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-06-22 04:44:10 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:16 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "cli", + "RemoteRef": "cli", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "3.6.3" } }, "codetools": { @@ -842,14 +891,14 @@ "Packaged": "2024-07-26 15:40:41 UTC; zeileis", "Author": "Ross Ihaka [aut],\n Paul Murrell [aut] (),\n Kurt Hornik [aut] (),\n Jason C. Fisher [aut] (),\n Reto Stauffer [aut] (),\n Claus O. Wilke [aut] (),\n Claire D. McWhite [aut] (),\n Achim Zeileis [aut, cre] ()", "Maintainer": "Achim Zeileis ", - "Repository": "CRAN", + "Repository": "RSPM", "Date/Publication": "2024-07-26 17:10:02 UTC", - "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-08-02 00:32:25 UTC; windows", + "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-07-27 04:42:47 UTC; windows", "Archs": "x64", "RemoteType": "standard", "RemotePkgRef": "colorspace", "RemoteRef": "colorspace", - "RemoteRepos": "https://cran.rstudio.com", + "RemoteRepos": "https://packagemanager.posit.co/cran/latest", "RemoteReposName": "CRAN", "RemotePkgPlatform": "x86_64-w64-mingw32", "RemoteSha": "2.1-1" @@ -906,9 +955,16 @@ "Packaged": "2023-12-01 19:16:04 UTC; davis", "Author": "Davis Vaughan [aut, cre] (),\n Jim Hester [aut] (),\n Romain François [aut] (),\n Benjamin Kietzman [ctb],\n Posit Software, PBC [cph, fnd]", "Maintainer": "Davis Vaughan ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-12-02 13:20:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 19:52:43 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:52:18 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "cpp11", + "RemoteRef": "cpp11", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "0.4.7" } }, "crayon": { @@ -933,9 +989,16 @@ "Packaged": "2024-06-20 11:49:08 UTC; gaborcsardi", "Author": "Gábor Csárdi [aut, cre],\n Brodie Gaslam [ctb],\n Posit Software, PBC [cph, fnd]", "Maintainer": "Gábor Csárdi ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-06-20 13:00:02 UTC", - "Built": "R 4.4.0; ; 2024-06-21 04:46:07 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:52:18 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "crayon", + "RemoteRef": "crayon", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.5.3" } }, "curl": { @@ -962,10 +1025,17 @@ "Packaged": "2024-02-26 21:12:31 UTC; jeroen", "Author": "Jeroen Ooms [aut, cre] (),\n Hadley Wickham [ctb],\n RStudio [cph]", "Maintainer": "Jeroen Ooms ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-03-01 23:22:46 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 19:51:31 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:28 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "curl", + "RemoteRef": "curl", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "5.2.1" } }, "cyclocomp": { @@ -1073,7 +1143,7 @@ "RoxygenNote": "7.3.1", "Author": "Cam Race [aut, cre],\n Laura Selby [aut],\n Adam Robinson [aut],\n Jen Machin [ctb],\n Rich Bielby [ctb] ()", "Maintainer": "Cam Race ", - "Built": "R 4.4.1; ; 2024-07-23 18:40:49 UTC; windows", + "Built": "R 4.4.1; ; 2024-08-06 08:52:17 UTC; windows", "RemoteType": "github", "RemoteHost": "api.github.com", "RemoteUsername": "dfe-analytical-services", @@ -1107,7 +1177,7 @@ "VignetteBuilder": "knitr", "Author": "Rich Bielby [aut, cre] (),\n Charlotte Foster [aut],\n Cam Race [aut]", "Maintainer": "Rich Bielby ", - "Built": "R 4.4.1; ; 2024-07-22 17:30:12 UTC; windows", + "Built": "R 4.4.1; ; 2024-08-05 11:36:04 UTC; windows", "RemoteType": "github", "RemoteHost": "api.github.com", "RemoteUsername": "dfe-analytical-services", @@ -1171,11 +1241,17 @@ "VignetteBuilder": "simplermarkdown", "NeedsCompilation": "yes", "Packaged": "2024-06-23 14:31:46 UTC; edd", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-06-23 16:40:02 UTC", - "Encoding": "UTF-8", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-06-24 04:53:44 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:18 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "digest", + "RemoteRef": "digest", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "0.6.36" } }, "dplyr": { @@ -1204,10 +1280,17 @@ "Packaged": "2023-11-16 21:48:56 UTC; hadleywickham", "Author": "Hadley Wickham [aut, cre] (),\n Romain François [aut] (),\n Lionel Henry [aut],\n Kirill Müller [aut] (),\n Davis Vaughan [aut] (),\n Posit Software, PBC [cph, fnd]", "Maintainer": "Hadley Wickham ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-11-17 16:50:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 20:33:28 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 02:17:41 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "dplyr", + "RemoteRef": "dplyr", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.1.4" } }, "evaluate": { @@ -1234,9 +1317,16 @@ "Packaged": "2024-06-10 13:33:57 UTC; hadleywickham", "Author": "Hadley Wickham [aut, cre],\n Yihui Xie [aut] (),\n Michael Lawrence [ctb],\n Thomas Kluyver [ctb],\n Jeroen Ooms [ctb],\n Barret Schloerke [ctb],\n Adam Ryczkowski [ctb],\n Hiroaki Yutani [ctb],\n Michel Lang [ctb],\n Karolis Koncevičius [ctb],\n Posit Software, PBC [cph, fnd]", "Maintainer": "Hadley Wickham ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-06-10 14:10:02 UTC", - "Built": "R 4.4.0; ; 2024-06-11 04:28:11 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:52:17 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "evaluate", + "RemoteRef": "evaluate", + "RemoteRepos": "https://cloud.r-project.org", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "0.24.0" } }, "fansi": { @@ -1262,10 +1352,17 @@ "Packaged": "2023-12-06 00:59:41 UTC; bg", "Author": "Brodie Gaslam [aut, cre],\n Elliott Sales De Andrade [ctb],\n R Core Team [cph] (UTF8 byte length calcs from src/util.c)", "Maintainer": "Brodie Gaslam ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-12-08 03:30:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 19:43:50 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:15 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "fansi", + "RemoteRef": "fansi", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.0.6" } }, "farver": { @@ -1376,14 +1473,7 @@ "Maintainer": "Hadley Wickham ", "Repository": "CRAN", "Date/Publication": "2023-01-29 22:20:02 UTC", - "Built": "R 4.4.1; ; 2024-07-09 02:00:43 UTC; windows", - "RemoteType": "standard", - "RemotePkgRef": "forcats", - "RemoteRef": "forcats", - "RemoteRepos": "https://cran.rstudio.com", - "RemoteReposName": "CRAN", - "RemotePkgPlatform": "x86_64-w64-mingw32", - "RemoteSha": "1.0.0" + "Built": "R 4.4.1; ; 2024-07-17 02:17:49 UTC; windows" } }, "fs": { @@ -1443,9 +1533,16 @@ "Packaged": "2022-07-05 14:52:13 UTC; davis", "Author": "Hadley Wickham [aut, cre],\n Max Kuhn [aut],\n Davis Vaughan [aut],\n RStudio [cph]", "Maintainer": "Hadley Wickham ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2022-07-05 19:40:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 19:40:35 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:52:18 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "generics", + "RemoteRef": "generics", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "0.1.3" } }, "ggfittext": { @@ -1574,9 +1671,9 @@ "Encoding": "UTF-8", "RoxygenNote": "7.2.3", "Packaged": "2023-11-26 16:10:10 UTC; stefan", - "Repository": "CRAN", + "Repository": "RSPM", "Date/Publication": "2023-11-26 16:50:05 UTC", - "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-06-25 00:34:23 UTC; windows", + "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 20:34:38 UTC; windows", "Archs": "x64" } }, @@ -1632,10 +1729,17 @@ "Packaged": "2024-01-08 16:10:57 UTC; jenny", "Author": "Jim Hester [aut] (),\n Jennifer Bryan [aut, cre] (),\n Posit Software, PBC [cph, fnd]", "Maintainer": "Jennifer Bryan ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-01-09 23:13:08 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 19:52:29 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:17 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "glue", + "RemoteRef": "glue", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.7.0" } }, "gridtext": { @@ -1727,9 +1831,9 @@ "Packaged": "2024-05-26 19:27:21 UTC; yihui", "Author": "Yihui Xie [aut, cre] (),\n Yixuan Qiu [aut],\n Christopher Gandrud [ctb],\n Qiang Li [ctb]", "Maintainer": "Yihui Xie ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-05-26 20:00:03 UTC", - "Built": "R 4.4.0; ; 2024-05-27 04:10:12 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 01:25:34 UTC; windows" } }, "htmltools": { @@ -1988,9 +2092,16 @@ "Packaged": "2024-07-05 23:22:15 UTC; yihui", "Author": "Yihui Xie [aut, cre] (),\n Abhraneel Sarma [ctb],\n Adam Vogt [ctb],\n Alastair Andrew [ctb],\n Alex Zvoleff [ctb],\n Amar Al-Zubaidi [ctb],\n Andre Simon [ctb] (the CSS files under inst/themes/ were derived from\n the Highlight package http://www.andre-simon.de),\n Aron Atkins [ctb],\n Aaron Wolen [ctb],\n Ashley Manton [ctb],\n Atsushi Yasumoto [ctb] (),\n Ben Baumer [ctb],\n Brian Diggs [ctb],\n Brian Zhang [ctb],\n Bulat Yapparov [ctb],\n Cassio Pereira [ctb],\n Christophe Dervieux [ctb],\n David Hall [ctb],\n David Hugh-Jones [ctb],\n David Robinson [ctb],\n Doug Hemken [ctb],\n Duncan Murdoch [ctb],\n Elio Campitelli [ctb],\n Ellis Hughes [ctb],\n Emily Riederer [ctb],\n Fabian Hirschmann [ctb],\n Fitch Simeon [ctb],\n Forest Fang [ctb],\n Frank E Harrell Jr [ctb] (the Sweavel package at inst/misc/Sweavel.sty),\n Garrick Aden-Buie [ctb],\n Gregoire Detrez [ctb],\n Hadley Wickham [ctb],\n Hao Zhu [ctb],\n Heewon Jeon [ctb],\n Henrik Bengtsson [ctb],\n Hiroaki Yutani [ctb],\n Ian Lyttle [ctb],\n Hodges Daniel [ctb],\n Jacob Bien [ctb],\n Jake Burkhead [ctb],\n James Manton [ctb],\n Jared Lander [ctb],\n Jason Punyon [ctb],\n Javier Luraschi [ctb],\n Jeff Arnold [ctb],\n Jenny Bryan [ctb],\n Jeremy Ashkenas [ctb, cph] (the CSS file at\n inst/misc/docco-classic.css),\n Jeremy Stephens [ctb],\n Jim Hester [ctb],\n Joe Cheng [ctb],\n Johannes Ranke [ctb],\n John Honaker [ctb],\n John Muschelli [ctb],\n Jonathan Keane [ctb],\n JJ Allaire [ctb],\n Johan Toloe [ctb],\n Jonathan Sidi [ctb],\n Joseph Larmarange [ctb],\n Julien Barnier [ctb],\n Kaiyin Zhong [ctb],\n Kamil Slowikowski [ctb],\n Karl Forner [ctb],\n Kevin K. Smith [ctb],\n Kirill Mueller [ctb],\n Kohske Takahashi [ctb],\n Lorenz Walthert [ctb],\n Lucas Gallindo [ctb],\n Marius Hofert [ctb],\n Martin Modrák [ctb],\n Michael Chirico [ctb],\n Michael Friendly [ctb],\n Michal Bojanowski [ctb],\n Michel Kuhlmann [ctb],\n Miller Patrick [ctb],\n Nacho Caballero [ctb],\n Nick Salkowski [ctb],\n Niels Richard Hansen [ctb],\n Noam Ross [ctb],\n Obada Mahdi [ctb],\n Pavel N. Krivitsky [ctb] (),\n Pedro Faria [ctb],\n Qiang Li [ctb],\n Ramnath Vaidyanathan [ctb],\n Richard Cotton [ctb],\n Robert Krzyzanowski [ctb],\n Rodrigo Copetti [ctb],\n Romain Francois [ctb],\n Ruaridh Williamson [ctb],\n Sagiru Mati [ctb] (),\n Scott Kostyshak [ctb],\n Sebastian Meyer [ctb],\n Sietse Brouwer [ctb],\n Simon de Bernard [ctb],\n Sylvain Rousseau [ctb],\n Taiyun Wei [ctb],\n Thibaut Assus [ctb],\n Thibaut Lamadon [ctb],\n Thomas Leeper [ctb],\n Tim Mastny [ctb],\n Tom Torsney-Weir [ctb],\n Trevor Davis [ctb],\n Viktoras Veitas [ctb],\n Weicheng Zhu [ctb],\n Wush Wu [ctb],\n Zachary Foster [ctb],\n Zhian N. Kamvar [ctb] (),\n Posit Software, PBC [cph, fnd]", "Maintainer": "Yihui Xie ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-07-07 14:00:01 UTC", - "Built": "R 4.4.0; ; 2024-07-08 04:44:53 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 01:42:45 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "knitr", + "RemoteRef": "knitr", + "RemoteRepos": "https://cloud.r-project.org", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.48" } }, "labeling": { @@ -2125,9 +2236,16 @@ "Packaged": "2023-11-06 16:07:36 UTC; lionel", "Author": "Lionel Henry [aut, cre],\n Hadley Wickham [aut] (),\n Posit Software, PBC [cph, fnd]", "Maintainer": "Lionel Henry ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-11-07 10:10:10 UTC", - "Built": "R 4.4.0; ; 2024-04-25 20:06:30 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 01:25:34 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "lifecycle", + "RemoteRef": "lifecycle", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.0.4" } }, "lintr": { @@ -2186,10 +2304,17 @@ "Packaged": "2022-03-29 09:34:37 UTC; lionel", "Author": "Stefan Milton Bache [aut, cph] (Original author and creator of\n magrittr),\n Hadley Wickham [aut],\n Lionel Henry [cre],\n RStudio [cph, fnd]", "Maintainer": "Lionel Henry ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2022-03-30 07:30:09 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 19:43:08 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:18 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "magrittr", + "RemoteRef": "magrittr", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "2.0.3" } }, "markdown": { @@ -2272,9 +2397,9 @@ "Packaged": "2023-07-11 03:04:57 UTC; garrick", "Author": "Garrick Aden-Buie [aut, cre] ()", "Maintainer": "Garrick Aden-Buie ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-07-11 12:00:09 UTC", - "Built": "R 4.4.0; ; 2024-04-25 20:15:40 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 02:04:31 UTC; windows" } }, "mgcv": { @@ -2444,14 +2569,7 @@ "Repository": "RSPM", "Date/Publication": "2024-07-23 20:50:01 UTC", "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-07-24 04:19:59 UTC; windows", - "Archs": "x64", - "RemoteType": "standard", - "RemotePkgRef": "openxlsx", - "RemoteRef": "openxlsx", - "RemoteRepos": "https://packagemanager.posit.co/cran/latest", - "RemoteReposName": "CRAN", - "RemotePkgPlatform": "x86_64-w64-mingw32", - "RemoteSha": "4.2.6.1" + "Archs": "x64" } }, "packrat": { @@ -2479,14 +2597,7 @@ "Maintainer": "Aron Atkins ", "Repository": "RSPM", "Date/Publication": "2023-09-05 13:00:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 19:01:46 UTC; windows", - "RemoteType": "standard", - "RemotePkgRef": "packrat", - "RemoteRef": "packrat", - "RemoteRepos": "https://packagemanager.posit.co/cran/latest", - "RemoteReposName": "CRAN", - "RemotePkgPlatform": "x86_64-w64-mingw32", - "RemoteSha": "0.9.2" + "Built": "R 4.4.0; ; 2024-04-25 19:01:46 UTC; windows" } }, "pillar": { @@ -2517,9 +2628,16 @@ "Packaged": "2023-03-21 08:42:46 UTC; kirill", "Author": "Kirill Müller [aut, cre] (),\n Hadley Wickham [aut],\n RStudio [cph]", "Maintainer": "Kirill Müller ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-03-22 08:10:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 20:17:40 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 01:59:48 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "pillar", + "RemoteRef": "pillar", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.9.0" } }, "pingr": { @@ -2598,9 +2716,16 @@ "Encoding": "UTF-8", "NeedsCompilation": "no", "Packaged": "2019-09-22 08:42:40 UTC; gaborcsardi", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2019-09-22 09:20:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 20:11:40 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:52:17 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "pkgconfig", + "RemoteRef": "pkgconfig", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "2.0.3" } }, "pkgload": { @@ -2628,9 +2753,16 @@ "Packaged": "2024-06-28 10:36:56 UTC; lionel", "Author": "Hadley Wickham [aut],\n Winston Chang [aut],\n Jim Hester [aut],\n Lionel Henry [aut, cre],\n Posit Software, PBC [cph, fnd],\n R Core team [ctb] (Some namespace and vignette code extracted from base\n R)", "Maintainer": "Lionel Henry ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-06-28 11:30:02 UTC", - "Built": "R 4.4.0; ; 2024-06-29 05:14:04 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 02:09:27 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "pkgload", + "RemoteRef": "pkgload", + "RemoteRepos": "https://cloud.r-project.org", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.4.0" } }, "png": { @@ -2763,10 +2895,17 @@ "Packaged": "2024-07-02 17:34:07 UTC; gaborcsardi", "Author": "Jay Loden [aut],\n Dave Daeschler [aut],\n Giampaolo Rodola' [aut],\n Gábor Csárdi [aut, cre],\n Posit Software, PBC [cph, fnd]", "Maintainer": "Gábor Csárdi ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-07-02 18:10:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-07-03 04:57:22 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:38 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "ps", + "RemoteRef": "ps", + "RemoteRepos": "https://cloud.r-project.org", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.7.7" } }, "purrr": { @@ -2795,10 +2934,17 @@ "Packaged": "2023-08-08 16:13:31 UTC; hadleywickham", "Author": "Hadley Wickham [aut, cre] (),\n Lionel Henry [aut],\n RStudio [cph, fnd]", "Maintainer": "Hadley Wickham ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-08-10 08:20:07 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-06-22 04:55:20 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 02:00:00 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "purrr", + "RemoteRef": "purrr", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.0.2" } }, "rappdirs": { @@ -2855,14 +3001,7 @@ "Author": "Facebook Inc [aut, cph] (React library in lib, https://reactjs.org/;\n see AUTHORS for full list of contributors),\n Michel Weststrate [aut, cph] (mobx library in lib,\n https://github.com/mobxjs),\n Kent Russell [aut, cre] (R interface),\n Alan Dipert [aut] (R interface)", "Repository": "RSPM", "Date/Publication": "2024-06-26 15:50:02 UTC", - "Built": "R 4.4.0; ; 2024-06-27 09:23:07 UTC; windows", - "RemoteType": "standard", - "RemotePkgRef": "reactR", - "RemoteRef": "reactR", - "RemoteRepos": "https://packagemanager.posit.co/cran/latest", - "RemoteReposName": "CRAN", - "RemotePkgPlatform": "x86_64-w64-mingw32", - "RemoteSha": "0.6.0" + "Built": "R 4.4.0; ; 2024-06-27 09:23:07 UTC; windows" } }, "reactable": { @@ -2890,14 +3029,7 @@ "Maintainer": "Greg Lin ", "Repository": "RSPM", "Date/Publication": "2023-03-12 10:00:10 UTC", - "Built": "R 4.4.0; ; 2024-04-25 21:12:30 UTC; windows", - "RemoteType": "standard", - "RemotePkgRef": "reactable", - "RemoteRef": "reactable", - "RemoteRepos": "https://packagemanager.posit.co/cran/latest", - "RemoteReposName": "CRAN", - "RemotePkgPlatform": "x86_64-w64-mingw32", - "RemoteSha": "0.4.4" + "Built": "R 4.4.0; ; 2024-04-25 21:12:30 UTC; windows" } }, "rematch2": { @@ -2951,9 +3083,16 @@ "Packaged": "2024-03-17 12:41:55 UTC; gaborcsardi", "Author": "Gábor Csárdi [aut, cre],\n Jim Hester [aut],\n Hadley Wickham [aut],\n Winston Chang [aut],\n Martin Morgan [aut],\n Dan Tenenbaum [aut],\n Posit Software, PBC [cph, fnd],\n Ascent Digital Services [cph]", "Maintainer": "Gábor Csárdi ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-03-17 13:20:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 21:56:59 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:53:50 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "remotes", + "RemoteRef": "remotes", + "RemoteRepos": "https://cloud.r-project.org", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "2.5.0" } }, "renv": { @@ -3041,10 +3180,17 @@ "Packaged": "2024-05-31 12:46:04 UTC; lionel", "Author": "Lionel Henry [aut, cre],\n Hadley Wickham [aut],\n mikefc [cph] (Hash implementation based on Mike's xxhashlite),\n Yann Collet [cph] (Author of the embedded xxHash library),\n Posit, PBC [cph, fnd]", "Maintainer": "Lionel Henry ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-06-04 09:45:03 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-06-05 11:29:11 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:18 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "rlang", + "RemoteRef": "rlang", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.1.4" } }, "rmarkdown": { @@ -3099,9 +3245,16 @@ "Packaged": "2023-11-05 06:47:23 UTC; kirill", "Author": "Kirill Müller [aut, cre] ()", "Maintainer": "Kirill Müller ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-11-05 10:20:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 19:45:07 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:52:46 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "rprojroot", + "RemoteRef": "rprojroot", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "2.0.4" } }, "rsconnect": { @@ -3132,14 +3285,7 @@ "Maintainer": "Aron Atkins ", "Repository": "RSPM", "Date/Publication": "2024-06-04 09:50:02 UTC", - "Built": "R 4.4.0; ; 2024-06-05 12:02:25 UTC; windows", - "RemoteType": "standard", - "RemotePkgRef": "rsconnect", - "RemoteRef": "rsconnect", - "RemoteRepos": "https://packagemanager.posit.co/cran/latest", - "RemoteReposName": "CRAN", - "RemotePkgPlatform": "x86_64-w64-mingw32", - "RemoteSha": "1.3.1" + "Built": "R 4.4.0; ; 2024-06-05 12:02:25 UTC; windows" } }, "rstudioapi": { @@ -3310,9 +3456,9 @@ "Packaged": "2022-02-22 10:37:36 UTC; rosswyatt", "Author": "Ross Wyatt [aut, cre]", "Maintainer": "Ross Wyatt ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2022-02-22 11:00:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 22:48:09 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 02:37:43 UTC; windows" } }, "shinyjs": { @@ -3451,10 +3597,17 @@ "NeedsCompilation": "yes", "Packaged": "2024-05-06 12:50:25 UTC; gagolews", "License_is_FOSS": "yes", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-05-06 15:00:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-05-07 04:34:26 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-05-06 23:50:54 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "stringi", + "RemoteRef": "stringi", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.8.4" } }, "stringr": { @@ -3482,9 +3635,16 @@ "Packaged": "2023-11-14 15:03:52 UTC; hadleywickham", "Author": "Hadley Wickham [aut, cre, cph],\n Posit Software, PBC [cph, fnd]", "Maintainer": "Hadley Wickham ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-11-14 23:10:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 20:18:44 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 01:59:49 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "stringr", + "RemoteRef": "stringr", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.5.1" } }, "styler": { @@ -3513,9 +3673,16 @@ "Packaged": "2024-04-07 19:04:20 UTC; lorenz", "Author": "Kirill Müller [aut] (),\n Lorenz Walthert [cre, aut],\n Indrajeet Patil [ctb] (,\n @patilindrajeets)", "Maintainer": "Lorenz Walthert ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-04-07 23:00:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 20:32:42 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 02:01:31 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "styler", + "RemoteRef": "styler", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.10.3" } }, "sys": { @@ -3571,9 +3738,9 @@ "Packaged": "2024-05-13 13:50:57 UTC; thomas", "Author": "Thomas Lin Pedersen [aut, cre]\n (),\n Jeroen Ooms [aut] (),\n Devon Govett [aut] (Author of font-manager),\n Posit, PBC [cph, fnd]", "Maintainer": "Thomas Lin Pedersen ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-05-15 11:10:03 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-05-16 04:36:21 UTC; windows", + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 01:25:44 UTC; windows", "Archs": "x64" } }, @@ -3638,10 +3805,17 @@ "Packaged": "2023-03-19 09:23:10 UTC; kirill", "Author": "Kirill Müller [aut, cre] (),\n Hadley Wickham [aut],\n Romain Francois [ctb],\n Jennifer Bryan [ctb],\n RStudio [cph, fnd]", "Maintainer": "Kirill Müller ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-03-20 06:30:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 20:22:42 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 02:09:20 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "tibble", + "RemoteRef": "tibble", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "3.2.1" } }, "tidyr": { @@ -3672,8 +3846,15 @@ "Maintainer": "Hadley Wickham ", "Repository": "CRAN", "Date/Publication": "2024-01-24 14:50:09 UTC", - "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-06-25 02:25:04 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 02:38:32 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "tidyr", + "RemoteRef": "tidyr", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.3.1" } }, "tidyselect": { @@ -3701,9 +3882,16 @@ "Packaged": "2024-03-11 11:46:04 UTC; lionel", "Author": "Lionel Henry [aut, cre],\n Hadley Wickham [aut],\n Posit Software, PBC [cph, fnd]", "Maintainer": "Lionel Henry ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-03-11 14:10:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 20:19:04 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 01:59:50 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "tidyselect", + "RemoteRef": "tidyselect", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.2.1" } }, "tinytex": { @@ -3727,9 +3915,16 @@ "Packaged": "2024-07-18 15:37:12 UTC; yihui", "Author": "Yihui Xie [aut, cre, cph] (),\n Posit Software, PBC [cph, fnd],\n Christophe Dervieux [ctb] (),\n Devon Ryan [ctb] (),\n Ethan Heinzen [ctb],\n Fernando Cagua [ctb]", "Maintainer": "Yihui Xie ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-07-18 16:20:02 UTC", - "Built": "R 4.4.0; ; 2024-07-19 04:27:07 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-26 08:01:56 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "tinytex", + "RemoteRef": "tinytex", + "RemoteRepos": "https://cloud.r-project.org", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "source", + "RemoteSha": "0.52" } }, "treemapify": { @@ -3790,10 +3985,17 @@ "Packaged": "2023-10-22 13:43:19 UTC; kirill", "Author": "Patrick O. Perry [aut, cph],\n Kirill Müller [cre],\n Unicode, Inc. [cph, dtc] (Unicode Character Database)", "Maintainer": "Kirill Müller ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-10-22 21:50:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 19:46:43 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:16 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "utf8", + "RemoteRef": "utf8", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "1.2.4" } }, "uuid": { @@ -3852,10 +4054,17 @@ "Packaged": "2023-12-01 16:27:12 UTC; davis", "Author": "Hadley Wickham [aut],\n Lionel Henry [aut],\n Davis Vaughan [aut, cre],\n data.table team [cph] (Radix sort based on data.table's forder() and\n their contribution to R's order()),\n Posit Software, PBC [cph, fnd]", "Maintainer": "Davis Vaughan ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-12-01 23:50:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 20:13:49 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 01:42:45 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "vctrs", + "RemoteRef": "vctrs", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "0.6.5" } }, "viridisLite": { @@ -3938,7 +4147,7 @@ "Maintainer": "Winston Chang ", "Repository": "RSPM", "Date/Publication": "2021-08-18 20:30:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-07-18 09:00:53 UTC; windows", + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-24 12:09:43 UTC; windows", "Archs": "x64" } }, @@ -3967,9 +4176,16 @@ "Packaged": "2024-01-16 10:22:29 UTC; lionel", "Author": "Jim Hester [aut],\n Lionel Henry [aut, cre],\n Kirill Müller [aut],\n Kevin Ushey [aut],\n Hadley Wickham [aut],\n Winston Chang [aut],\n Jennifer Bryan [ctb],\n Richard Cotton [ctb],\n Posit Software, PBC [cph, fnd]", "Maintainer": "Lionel Henry ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-01-16 14:20:02 UTC", - "Built": "R 4.4.0; ; 2024-04-25 19:44:56 UTC; windows" + "Built": "R 4.4.1; ; 2024-07-17 00:52:18 UTC; windows", + "RemoteType": "standard", + "RemotePkgRef": "withr", + "RemoteRef": "withr", + "RemoteRepos": "https://cran.rstudio.com", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "3.0.0" } }, "xfun": { @@ -3994,10 +4210,17 @@ "Packaged": "2024-07-18 04:00:14 UTC; yihui", "Author": "Yihui Xie [aut, cre, cph] (),\n Wush Wu [ctb],\n Daijiang Li [ctb],\n Xianying Tan [ctb],\n Salim Brüggemann [ctb] (),\n Christophe Dervieux [ctb],\n Posit Software, PBC [cph, fnd]", "Maintainer": "Yihui Xie ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-07-18 05:10:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-07-19 04:26:17 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-26 08:01:28 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "xfun", + "RemoteRef": "xfun", + "RemoteRepos": "https://cloud.r-project.org", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "source", + "RemoteSha": "0.46" } }, "xml2": { @@ -4026,9 +4249,9 @@ "Packaged": "2023-12-04 14:50:27 UTC; hadleywickham", "Author": "Hadley Wickham [aut, cre],\n Jim Hester [aut],\n Jeroen Ooms [aut],\n Posit Software, PBC [cph, fnd],\n R Foundation [ctb] (Copy of R-project homepage cached as example)", "Maintainer": "Hadley Wickham ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2023-12-04 16:30:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 20:10:22 UTC; windows", + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 01:25:46 UTC; windows", "Archs": "x64" } }, @@ -4101,11 +4324,17 @@ "BugReports": "https://github.com/vubiostat/r-yaml/issues", "NeedsCompilation": "yes", "Packaged": "2024-07-05 14:37:49 UTC; garbetsp", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-07-05 16:30:02 UTC", - "Encoding": "UTF-8", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-07-06 04:17:37 UTC; windows", - "Archs": "x64" + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:18 UTC; windows", + "Archs": "x64", + "RemoteType": "standard", + "RemotePkgRef": "yaml", + "RemoteRef": "yaml", + "RemoteRepos": "https://cloud.r-project.org", + "RemoteReposName": "CRAN", + "RemotePkgPlatform": "x86_64-w64-mingw32", + "RemoteSha": "2.3.9" } }, "zip": { @@ -4129,9 +4358,9 @@ "Packaged": "2024-01-27 09:28:29 UTC; gaborcsardi", "Author": "Gábor Csárdi [aut, cre],\n Kuba Podgórski [ctb],\n Rich Geldreich [ctb],\n Posit Software, PBC [cph, fnd]", "Maintainer": "Gábor Csárdi ", - "Repository": "RSPM", + "Repository": "CRAN", "Date/Publication": "2024-01-27 10:00:02 UTC", - "Built": "R 4.4.0; x86_64-w64-mingw32; 2024-04-25 19:40:03 UTC; windows", + "Built": "R 4.4.1; x86_64-w64-mingw32; 2024-07-17 00:52:40 UTC; windows", "Archs": "x64" } } @@ -4168,7 +4397,7 @@ "checksum": "21373c552fa1b0b8404341b9e3c127ac" }, ".Rprofile": { - "checksum": "e6488032e076ced7b48d022924f1f34a" + "checksum": "b4e5b4494a6c83a95f415db1950dce5d" }, "azure-pipelines.yml": { "checksum": "1dd237db3691665ae9b9b2150087ac75" @@ -4186,7 +4415,7 @@ "checksum": "398a532ecd8bf1ea54ba7612848ccaa7" }, "global.R": { - "checksum": "e1ae6db13f2b569bf43a6e4ffa522e74" + "checksum": "fc4ee3748856b4e75ad4623bc98ed2e7" }, "LICENSE": { "checksum": "0d474e35ec63c89eec5838348cd8d3c0" @@ -4198,7 +4427,7 @@ "checksum": "68c17e9641cc232a75915295f58bd9ba" }, "R/dashboard_modules/03-subjects_and_standards.R": { - "checksum": "8c780f36387d78fc7d58867071e46f22" + "checksum": "36a320b7e4d5d315b1947d92bc620aa6" }, "R/dashboard_modules/04-learner_characteristics.R": { }, @@ -4227,10 +4456,10 @@ "checksum": "4fb06508719a86445bed410f6640a071" }, "R/helper_functions.R": { - "checksum": "273b94472ee19f753e6ef356be3f8c5d" + "checksum": "b7861f411838da3474ad4c2e24792daf" }, "R/read_data.R": { - "checksum": "9091e30ab387c6854a04ab0f10dd2b1d" + "checksum": "3249a225dcb8184d8c40274a9e0e294c" }, "README.md": { "checksum": "db7305c1a434efa8d6dd90e522274c40" @@ -4239,7 +4468,7 @@ "checksum": "e916e4d237d715099c01dc748f6d8109" }, "server.R": { - "checksum": "b5f41c8aa2b7c59f3a883baab9a097f2" + "checksum": "e19993831b13d40ec3c5ce27d25e9d10" }, "sql/apprenticeships_data.sql": { "checksum": "1b5a3e2bce4596a8e0d92a078c2e458c" @@ -4253,6 +4482,24 @@ "tests/testthat.R": { "checksum": "12e9b09de5275bdc13bde6ae5a82f8b1" }, + "tests/testthat/_snaps/UI-03-sas/UI-03-sas-001.json": { + "checksum": "0f29a447d598fa05e5d4a7cbb30b1c85" + }, + "tests/testthat/_snaps/UI-03-sas/UI-03-sas-002.json": { + "checksum": "44311408a7b4b60df65eea9f7820b69f" + }, + "tests/testthat/_snaps/UI-03-sas/UI-03-sas-003.json": { + "checksum": "b056a3b25a2ffe8bf292b0aefb80bdd2" + }, + "tests/testthat/_snaps/UI-03-sas/UI-03-sas-004.json": { + "checksum": "488f9b009c259af54c8afb9a1a359473" + }, + "tests/testthat/_snaps/UI-03-sas/UI-03-sas-005.json": { + "checksum": "9ffd6ce1193ed78d28166bb64a1b5163" + }, + "tests/testthat/_snaps/UI-03-sas/UI-03-sas-006.json": { + "checksum": "079d3a0f281818def08b871c097c4ea5" + }, "tests/testthat/setup-shinytest2.R": { "checksum": "d3e71278de0398bd2acaa6e00ad59114" }, @@ -4263,13 +4510,16 @@ "checksum": "1fd753be5bbff3a1b07b6b6983483ca1" }, "tests/testthat/test-UI-00-basic_load_navigation.R": { - "checksum": "922d1ee2ed760eb586842d8cd713871c" + "checksum": "b6e81211e31608d392a8606980dab65d" + }, + "tests/testthat/test-UI-03-sas.R": { + "checksum": "9c63f44f3fe0fbf137692cdd5f47123b" }, "tests/testthat/test-UI-05-nps_downloads.R": { - "checksum": "fc8257db6b282a58fda2a63c8dcc526f" + "checksum": "409ca10b2d438db655ba2401ca14efc5" }, "ui.R": { - "checksum": "0c62e4c6db2706875b4a0220d4eda275" + "checksum": "9834739cb2352c30ea20a0b1c9308ba6" }, "www/dfe_logo.svg": { "checksum": "c23764dae2d73a45a55815d0327be6cb" diff --git a/server.R b/server.R index 997805f..f429f26 100644 --- a/server.R +++ b/server.R @@ -52,4 +52,5 @@ server <- function(input, output, session) { # Module calls ============================================================== learner_characteristics_server(id = "learner_characteristics") nps_server(id = "nps") + subject_standards_server(id = "sas") } diff --git a/tests/testthat/_snaps/UI-03-sas/UI-03-sas-001.json b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-001.json new file mode 100644 index 0000000..6fe10e5 --- /dev/null +++ b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-001.json @@ -0,0 +1,3214 @@ +{ + "input": { + "sas-measure": "Starts", + "sas-provider": null, + "sas-year": "2021/22", + "subjects_and_standards": 1 + }, + "output": { + "sas-sas_provider_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Provider name": [ + "Lifetime Training Group Limited", + "British Army", + "Kaplan Financial Limited", + "Hit Training Ltd", + "Bpp Professional Education Limited", + "Multiverse Group Limited", + "Babington Business College Limited", + "Paragon Education & Skills Limited", + "Realise Learning And Employment Limited", + "Corndel Limited", + "Marr Corporation Limited", + "Babcock Training Limited", + "Qa Limited", + "Qube Qualifications And Development Limited", + "British Telecommunications Public Limited Company", + "Royal Navy", + "Remit Group Limited", + "Jtl", + "Her Majesty's Prison & Probation Service (Hmpps), Ministry Of Justice (Moj)", + "Gp Strategies Training Limited", + "Royal Air Force", + "Impact Futures Training Limited", + "Parenta Training Limited", + "Total People Limited", + "The Child Care Company (Old Windsor) Limited", + "Capita Plc", + "Aspiration Training Limited", + "The Open University", + "Bc Arch Limited", + "Busy Bees Education & Training Limited", + "Bctg Limited", + "Buttercups Training Limited", + "Learning Curve Group Limited", + "Bridgwater And Taunton College", + "Hawk Management (Uk) Limited", + "Baltic Training Services Limited", + "Anglia Ruskin University Higher Education Corporation", + "Coventry University", + "First Intuition Limited", + "Estio Training Limited", + "Derwentside College", + "Exeter College", + "Let Me Play Limited", + "The Growth Company Limited", + "Dn Colleges Group", + "Medipro Limited", + "Chichester College Group", + "University Of Exeter", + "Luminate Education Group", + "Staffordshire University", + "Nottingham College", + "Leeds College Of Building", + "Dudley College Of Technology", + "Bpp University Limited", + "Teesside University", + "Temp Dent Dental Agency Limited", + "North Lancs. Training Group Limited(The)", + "Instep Uk Limited", + "Manchester Metropolitan University", + "West Suffolk College", + "Dcg", + "Activate Learning", + "Sheffield Hallam University", + "London South Bank University", + "The University Of Cumbria", + "Davies Learning Solutions Limited", + "Eden Training Solutions Limited", + "Pareto Law Limited", + "Acacia Training Limited", + "Train'd Up Railway Resourcing Limited", + "University Of Derby", + "Bournemouth And Poole College, The", + "Damar Limited", + "Captiva Learning Limited", + "Intec Business Colleges Limited", + "Skills Training Uk Limited", + "Cornwall College", + "Sheffield College, The", + "Middlesex University", + "Weston College Of Further And Higher Education", + "South Devon College", + "Wiltshire College And University Centre", + "Blackpool And The Fylde College", + "Smart Training And Recruitment Limited", + "Travis Perkins Plc", + "University Of The West Of England, Bristol", + "Walsall College", + "Best Practice Network Limited", + "Salford City College", + "Newcastle And Stafford Colleges Group", + "Middlesbrough College", + "Gloucestershire College", + "Ncg", + "East Sussex College Group", + "Heart Of England Training Limited", + "Lincoln College", + "Acorn Training Ltd", + "West Nottinghamshire College", + "Seetec Business Technology Centre Limited", + "Barnsley College", + "New College Durham", + "University Of Central Lancashire", + "Ixion Holdings (Contracts) Limited", + "Cambridge Spark Limited", + "University Of Salford, The", + "Bradford College", + "North Hertfordshire College", + "Bedford College", + "Specsavers Optical Superstores Limited", + "Harriet Ellis Training Solutions Limited", + "Dawn Hodge Associates Limited", + "Bae Systems Plc", + "Woodspeen Training Limited", + "Sr Apprenticeships Limited", + "University Of Northumbria At Newcastle", + "City Of Sunderland College", + "Wigan And Leigh College", + "University College Of Estate Management", + "Chesterfield College", + "P.t.p. Training Limited", + "Ernst & Young Llp", + "Tec Partnership", + "The Wkcic Group", + "The Equestrian Learning Academy Limited", + "Care First Training Limited", + "Skillnet Limited", + "The Apprentice Academy Limited", + "The University Of Kent", + "South West Association Of Training Providers Limited", + "Birmingham City University", + "Colchester Institute", + "Qualitrain Limited", + "Fuel Learning Limited", + "Kirklees College", + "Myerscough College", + "Ct Skills Limited", + "League Football Education", + "System Group Limited", + "N A College Trust", + "Preston College", + "The University Of Reading", + "City College Plymouth", + "City College Norwich", + "Careshield Limited", + "Genii Engineering & Technology Training Limited", + "Key Training Limited", + "Rnn Group", + "The Trafford College Group", + "Jga Limited", + "Nottingham Trent University", + "The Apprenticeship College Ltd", + "Poultec Training Limited", + "Liverpool John Moores University", + "Firebrand Training Limited", + "Yeovil College", + "Gk Apprenticeships Limited", + "The Education Training Collective", + "The Smb Group", + "South Essex College Of Further And Higher Education", + "Haddon Training Limited", + "Quest Vocational Training Limited", + "Heart Of Yorkshire Education Group", + "Lakes College West Cumbria", + "Training 2000 Limited", + "Umbrella Training And Employment Solutions Limited", + "System People Limited", + "Partnership Training Limited", + "Inspire Education Group", + "The College Of Animal Welfare Limited", + "The University Of Bolton", + "Cranfield University", + "York College", + "Hull College", + "Steadfast Training Ltd", + "University Of Sunderland", + "Burnley College", + "Truro And Penwith College", + "Staff Select Ltd", + "Kendal College", + "Swift Aci Limited", + "Buckinghamshire New University", + "Gateshead College", + "Calderdale College", + "The University Of Sheffield", + "University Of Gloucestershire", + "Htp Apprenticeship College Ltd", + "Saks (Education) Limited", + "Ekc Group", + "Riverside Training Limited", + "Warwickshire College", + "Fareport Training Organisation Limited", + "Trn (Train) Ltd.", + "City Of Portsmouth College", + "Total Training Provision Limited", + "Learning Skills Partnership Ltd", + "Leicester College", + "Skills To Group Limited", + "The College Of West Anglia", + "Petroc", + "Bespoke Professional Development And Training Limited", + "New College Swindon", + "Se Trains Limited", + "Keits Training Services Ltd", + "Darlington College", + "University Of Lincoln", + "Mbkb Ltd", + "Suffolk New College", + "Central Young Men's Christian Association", + "British Gas Services Limited", + "The University Of West London", + "Hartlepool College Of Further Education", + "Nine Dots Development Limited", + "The Skills Partnership Limited", + "Trs Training Limited", + "Dynamic Training Uk Limited", + "South Gloucestershire And Stroud College", + "Reaseheath College", + "London General Transport Services Limited", + "Raise The Bar Limited", + "The Oldham College", + "Just It Training Limited", + "Loughborough College", + "University Of Plymouth", + "House Of Clive (Hair And Beauty) Limited", + "Access Training (East Midlands) Ltd", + "University Of Wolverhampton", + "Nelson And Colne College", + "London South East Colleges", + "The London Hairdressing Apprenticeship Academy Limited", + "West Midlands Ambulance Service University Nhs Foundation Trust", + "Greenlight Training Limited", + "The University Of Warwick", + "North Warwickshire And South Leicestershire College", + "Shrewsbury Colleges Group", + "Leeds Beckett University", + "Birmingham Metropolitan College", + "South Staffordshire College", + "Cheshire College South And West", + "Crosby Management Training Ltd", + "Calex Uk Ltd", + "St Helens College", + "Springfield Training Limited", + "Juniper Training Limited", + "Bolton College", + "Wirral Metropolitan College", + "Heart Of Worcestershire College", + "Farnborough College Of Technology", + "Warrington & Vale Royal College", + "City Of Wolverhampton College", + "City Of Bristol College", + "First Intuition Cambridge Limited", + "Kids Planet Day Nurseries Limited", + "Decoded Limited", + "Cambridge Regional College", + "University Of East London", + "Exalt Training Ltd", + "Fareham College", + "Prevista Ltd", + "Always Consult Ltd", + "Milton Keynes College", + "Yorkshire Ambulance Service National Health Service Trust", + "The Opportunity Group Ltd", + "Learnmore Network Limited", + "Solihull College And University Centre", + "Sandwell College", + "Northern Care Training Limited", + "Derby Business College Limited", + "Dutton Fisher Associates Limited", + "Central Training Academy Limited", + "Askham Bryan College", + "Herefordshire And Worcestershire Group Training Association Limited", + "Provek Limited", + "Basingstoke College Of Technology", + "Glp Training Ltd", + "Linden Management (Uk) Limited", + "Lancaster And Morecambe College", + "South & City College Birmingham", + "The Care Learning Centre (Isle Of Wight) Limited", + "University Of South Wales/Prifysgol De Cymru", + "The University Of East Anglia", + "Leeds Trinity University", + "Blackburn College", + "Northern Training Academy Limited", + "Hugh Baird College", + "St Helens Chamber Limited", + "New City College", + "Education And Skills Training & Development Limited", + "Skills Edge Training Ltd", + "Hopwood Hall College", + "Training Works (Nw) Ltd", + "The University Of Birmingham", + "Babcock Skills Development And Training Limited", + "The University Of Law Limited", + "University College Birmingham", + "Telford College", + "Abingdon And Witney College", + "Didac Limited", + "In-Comm Training And Business Services Limited", + "Macclesfield College", + "The Recalvi Enterprise Ltd", + "Rewards Training Recruitment Consultancy Limited", + "Rochdale Training Association Limited", + "Ginger Nut Media Limited", + "Scl Education & Training Limited", + "Train Together Limited", + "Superdrug Stores Plc", + "Vision Training (North East) Limited", + "Knowledgebrief Limited", + "University Of Portsmouth", + "The Skills Network Limited", + "Vocational Training Services Care Sector Limited", + "Apprentify Limited", + "Global Skills Training Ltd", + "The National Logistics Academy Ltd", + "Bms Progress Llp", + "East Surrey College", + "Solent University, Southampton", + "Specialist Trade Courses Limited", + "Norton Webb Limited", + "Rentokil Initial (1896) Limited", + "Aspire Training Team Limited", + "Bauer Radio Limited", + "The Learning Foundry Limited", + "Cipfa Business Limited", + "Encompass Consultancy Limited", + "Sccu Ltd", + "East Coast College", + "Herefordshire, Ludlow, And North Shropshire College", + "Arden University Limited", + "University Of Hertfordshire", + "Peta Limited", + "Aston University", + "Tameside College", + "Queen Mary University Of London", + "De Montfort University", + "Northampton College", + "Bpif Training Limited", + "Achieving Excellence Uk Ltd", + "I & F Limited", + "Craven College", + "Training Event Safety Solutions Ltd", + "Bury College", + "Riverside College", + "Cambridge Marketing College Limited", + "Eastleigh College", + "Skills4stem Ltd.", + "Skills For Security Limited", + "Pgl Training (Plumbing) Limited", + "Wmc Training Ltd", + "The It Skills Management Company Limited", + "Coventry And Warwickshire Chambers Of Commerce Training Limited", + "Hcuc", + "The City Of Liverpool College", + "The Football Association Premier League Limited", + "Boom Training Limited", + "Impact Learning & Data Solutions Limited", + "Ntg Training Ltd", + "Citb", + "Optimum Skills Limited", + "Screwfix Direct Limited", + "Quest Training South East Ltd", + "First Intuition Leeds Limited", + "Eef Limited", + "Boston College", + "Barking And Dagenham College", + "Cheyne's (Management) Limited", + "Aurelia Training Limited", + "Oaklands College", + "The University Of Huddersfield", + "Achievement Training & Skills Ltd", + "Mid-Kent College", + "Ema Training Limited", + "First Intuition Bristol Limited", + "Excelsis Training Limited", + "Stoke On Trent College", + "The Educationwise Academy Ltd", + "Burton And South Derbyshire College", + "Provq Limited", + "Furness College", + "Sr Supply Chain Consultants Ltd", + "Strode College", + "Northern Trains Limited", + "Bath College", + "Hull Business Training Centre Limited", + "E-Training Limited", + "Southport College", + "Gateshead Council", + "Together Training Ltd", + "Essex County Council", + "Canterbury Christ Church University", + "Ldn Apprenticeships Ltd", + "Skills Team Ltd", + "Lean Education And Development Limited", + "Focus Training (Sw) Limited", + "Libra Europe Consulting Ltd", + "Tyne Coast College", + "Serco Holdings Limited", + "Accountancy Learning Ltd", + "York St John University", + "North East Surrey College Of Technology (Nescot)", + "Lighthouse (Training And Development) Ltd", + "Makers Academy Limited", + "Training Services 2000 Ltd", + "Showcase Training Ltd", + "Capella Associates Ltd", + "University Of Brighton", + "E-Qualitas Professional Services Limited", + "Sparsholt College", + "Fitch Learning Limited", + "Ips International Limited", + "Gtg Training Limited", + "Heathercroft Training Services Limited", + "Rhg Consult Ltd", + "Trans-Plant Training Limited", + "Intelligencia Training Limited", + "Wales England Care Ltd", + "Humberside Engineering Training Association Limited", + "Training Assessment & Consultancy Services Limited", + "Kwik-Fit (Gb) Limited", + "Runshaw College", + "Kingston Upon Hull City Council", + "Hays Travel Limited", + "Orange Moon Training Limited", + "Steve Willis Training Ltd.", + "Straight A Training Limited", + "East Durham College", + "Mercedes-Benz Cars Uk Limited", + "Isle Of Wight College", + "Clarkson Evans Training Limited", + "South Thames Colleges Group", + "Cqm Training And Consultancy Limited", + "Technical Professionals Limited", + "University Of Keele", + "Catch 22 Charity Limited", + "Voyage Group Limited", + "Birmingham Electrical Training Ltd", + "Mercia College Limited", + "Js Consult Limited", + "Harlow College", + "Juice Talent Development Limited", + "Francesco Group (Holdings) Limited", + "Hertford Regional College", + "Asset Training & Consultancy Limited", + "First Intuition Reading Limited", + "Meadowhall Training Limited", + "K S Training Limited", + "University Of Greenwich", + "Tiro Training Ltd", + "Norfolk County Council", + "Alliance Learning", + "Csr Scientific Training Limited", + "Selby College", + "Havant And South Downs College", + "Ensis Solutions Limited", + "Dove Nest Management Training And Development Limited", + "Sporting Futures Training (Uk) Ltd", + "Abm Training (Uk) Ltd", + "City Skills Limited", + "Simian Risk Management Limited", + "B L Training Limited", + "Chiltern Training Limited", + "Aylesbury College", + "Performance Learning Group Ltd", + "Kyp Know Your Potential Consultancy Ltd", + "Sapphire Logistics & Consultancy Ltd", + "Partners In Training (North West) Limited", + "Locomotivation Ltd.", + "Simply One Stop Limited", + "Greater Brighton Metropolitan College", + "Real Skills Training Ltd", + "Bottle Green Training Limited", + "University Of Chester", + "First Intuition Chelmsford Limited", + "The University Of Leeds", + "C.m.s. Vocational Training Limited", + "Mercuri International (Uk) Limited", + "Bpp Actuarial Education Limited", + "Somerset Skills & Learning Cic", + "Change Board Holdings Limited", + "Plumpton College", + "Football Family Limited", + "M I T Skills Limited", + "All Spring Media Limited", + "Starting Off Limited", + "S & B Automotive Academy Limited", + "Jarvis Training Management Limited", + "North Kent College", + "Csm Consulting Limited", + "Michael Mccormack", + "Get Set Academy Ltd.", + "Bespoke Consultancy & Education Limited", + "Coventry College", + "Southampton City College", + "Thelightbulb Ltd", + "Nowskills Limited", + "Weymouth College", + "Berkshire College Of Agriculture, The (Bca)", + "Cilex Law School Limited", + "Achievement Training Limited", + "The Mtc - Advanced Manufacturing Training Centre Limited", + "Toni & Guy Uk Training Limited", + "Webs Training Limited", + "Chelmsford College", + "West Berkshire Training Consortium", + "Jancett Childcare & Jace Training Limited", + "West Herts College", + "Grey Seal Academy Limited", + "Valkyrie Support Services Ltd", + "Jm Excellence In Training Ltd", + "Fw Solutions Limited", + "Bristol City Council", + "Momentum Training And Consultancy Ltd", + "Riverside Training (Spalding) Ltd", + "Group Horizon Limited", + "The University Of Manchester", + "Swarm Training C.i.c.", + "Sheffield City Council", + "Gordon Franks Training Limited", + "The Vocational Academy Essex Ltd", + "Cips Corporate Services Limited", + "Sysco Business Skills Academy Limited", + "Eliesha Training Limited", + "The University Of Westminster", + "Academy 1 Sports Ltd", + "Brighter Beginnings Day Nursery Limited", + "Ioda Limited", + "Wildes Education Limited", + "Professional Quality Management Services Limited", + "Access Training Limited", + "Independent Training Services Limited", + "J G W Training Limited", + "Avant Partnership Limited", + "Appris Charity Limited", + "United Colleges Group", + "Bishop Burton College", + "Meat East Anglia Trades (Ipswich) Limited", + "Morgan Training Services Limited", + "Aspire To Learn Limited", + "Agincare Group Limited", + "Penshaw View Training Limited", + "Tyne North Training Limited", + "Grantham College", + "Achieve Training (Staffordshire) Limited", + "University Of Winchester", + "Professional Apprenticeships Ltd", + "Axia Solutions Limited", + "Guard Business Solutions Limited", + "Mcarthur Dean Training Limited", + "Tui Uk Limited", + "Tdr Training Limited", + "Shipley College", + "Rm Training (Uk) Limited", + "The Nvq Training Centre Limited", + "Capital 4 Training Limited", + "University Of Suffolk", + "Northwest Education And Training Limited", + "Tq Education And Training Limited", + "The University Of Hull", + "Multi Trades Training Ltd", + "Creative Sport & Leisure Ltd", + "Crown Vocational Training Limited", + "Winnovation Limited", + "Childbase Partnership Limited", + "Clearline Recruitment Ltd", + "University Of Bedfordshire", + "Pier Technology Ltd", + "Professional Training Solutions Limited", + "Midland Group Training Services Limited", + "Thatcham Research", + "Writtle University College", + "Louise Setton", + "Northern Care Alliance Nhs Foundation Trust", + "Span Training & Development Limited", + "Ealing, Hammersmith & West London College", + "Construction And Plant Assessments Ltd", + "Wiser Academy Limited", + "Learning And Development Bureau Ltd", + "Absolute Care Training & Education Ltd", + "B & M Retail Limited", + "Well Associates Limited", + "The University Of Chichester", + "Reed Business School Limited", + "Bestland Solutions Limited", + "Millbrook Management Services Limited", + "Nationwide Energy Training Services Ltd", + "Accipio Limited", + "University College London", + "University Hospitals Of Leicester National Health Service Trust", + "Kingston University", + "Northeastern University - London", + "Csa (Services) Ltd", + "Youngsave Company Limited", + "Training Aim Academy Ltd", + "Vq Solutions Ltd", + "The Development Manager Ltd", + "Salford And Trafford Engineering Group Training Association Limited", + "Acacia Training And Development Ltd", + "Floortrain (Gb) Limited", + "The Windsor Forest Colleges Group", + "Projecting Success Ltd", + "Davidson Training Uk Limited", + "Skillwise Training Uk Ltd", + "Unique Training Solutions Limited", + "Activ First Limited", + "Holland & Barrett Retail Limited", + "Chrysos H.r. Solutions Limited", + "Complete Lean Solutions Limited", + "Croydon College", + "The Best Connection Group Limited", + "Capel Manor College", + "F-Tec Forklift Training Engineering Centre Ltd", + "University Of Nottingham, The", + "Training Plus (Merseyside) Limited", + "Chartered Institution Of Railway Operators", + "L&F Training Ltd.", + "Knights Training Academy Limited", + "The Ocm Group Limited", + "Greater Manchester Combined Authority", + "Runway Apprenticeships Limited", + "Trainplus Ltd", + "Workpays Limited", + "Lewtay Training Limited", + "Aspire Development (Uk) Ltd", + "Brooklands College", + "Uk College Of Business Limited", + "Sbc Training Limited", + "Aspire Training Solutions (Uk) Limited", + "Stockport Engineering Training Association Limited(The)", + "Rebus Training Ltd", + "Ada National College For Digital Skills", + "Pro-Active Safety Limited", + "Time2train Ltd", + "T3 Training & Development Ltd", + "Bosch Automotive Service Solutions Ltd", + "Fashion Retail Academy", + "Parkdean Resorts Uk Limited", + "Yorkshire Training Partnership Limited", + "Brs Education Limited", + "North West Ambulance Service National Health Service Trust", + "University Of Northampton, The", + "North West Training Council", + "Watson Martin Limited", + "Resources (N E) Limited", + "Sunderland Engineering Training Association Limited", + "Weir Training Limited", + "Forum For Sustainable New Venture", + "Dynamo Healthcare Training Ltd", + "First Avenue Training Limited", + "The Jcb Academy", + "London Underground Limited", + "London School Of Education And Management Limited", + "Jbc Skills Training Limited", + "Lancashire Teaching Hospitals Nhs Foundation Trust", + "The University Of Essex", + "Cogent Ssc Limited", + "Her Majesty's Revenue And Customs (Hmrc)", + "Nhbc Services Limited", + "Happy Computers Limited", + "B-Skill Limited", + "Access To Music Limited", + "Qdos Training Limited", + "W S Training Ltd.", + "London Vocational College Limited", + "Trade Skills4u Ltd", + "Stubbing Court Training Limited", + "Bournemouth University", + "City, University Of London", + "Floorskills Limited", + "Newbury College", + "Myf Training Limited", + "Waltham Forest Chamber Of Commerce Training Trust Limited", + "Professional Development And Training Ltd", + "Maritime + Engineering College North West", + "Lrtt Limited", + "Apprentice Team Ltd", + "Tempest Management Training Limited", + "East Lindsey Information Technology Centre", + "The Training Place Of Excellence Limited", + "Itec North East Limited", + "Jlms Management Ltd.", + "Northumbria Healthcare Nhs Foundation Trust", + "The West Midlands Creative Alliance Limited", + "The Chief Constable Of Thames Valley", + "Cambridge Professional Academy Limited", + "National Horseracing College Limited", + "Oxford Brookes University", + "J & E Training Consultants Limited", + "Halesowen College", + "First Intuition Maidstone Limited", + "Surrey County Council", + "Fit Uk Training & Education Ltd", + "United Church Schools Trust", + "Gloucestershire Engineering Training Limited", + "Alchemist Consultants Limited", + "Watertrain Limited", + "University Centre Quayside Limited", + "Uk Training & Development Limited", + "Waltham Forest College", + "Dentrain Professionals Ltd", + "Mercury Training Services Ltd", + "Althaus Digital Limited", + "Hampshire Hospitals Nhs Foundation Trust", + "Apprenticeship Recruitment Service Ltd", + "Doncaster Rotherham And District Motor Trades Group Training Association Limited", + "Waverley Borough Council", + "Sutton London Borough Council", + "Skern Lodge Limited", + "Andrew Collinge Training Limited", + "Simply Academy Ltd", + "Heritage Skills Academy Limited", + "Lite (Stockport) Limited", + "We Are Momentum Limited", + "Yorkshire College Of Beauty Limited", + "Stepping Stones Education And Training Limited", + "Hampshire County Council", + "Futures Advice, Skills And Employment Limited", + "Reach4skills Training Ltd", + "Mantra Learning Limited", + "Profile Development And Training Limited", + "Park Education And Training Centre Limited", + "Rwp Training Limited", + "Introtrain & Forum Limited", + "Cirencester College", + "Caroline Pauling", + "Leeds City Council", + "Primary Goal Ltd", + "Serco Limited", + "Bishop Fleming Llp", + "Kent County Council", + "Htft Partnership Limited", + "Solveway Limited", + "Anderson Stockley Accredited Training Ltd", + "Discovery Recruitment Limited", + "Loughborough University", + "Education And Training Skills Ltd", + "Innersummit Ltd", + "North West Community Services Training Ltd", + "Leigh Academies Trust", + "Lookfantastic Training Limited", + "Newham College Of Further Education", + "The Northumberland Council", + "Education Goals Ltd", + "Dexters London Limited", + "Southampton Engineering Training Association Limited (The)", + "Western Power Distribution (South West) Plc", + "Universal Skills Centre Limited", + "Engineering Trust Training Limited", + "Itec Training Solutions Ltd", + "Debut Training Academy Limited", + "Nishkam Civic Association", + "Derbyshire County Council", + "One To One Support Services Limited", + "Lagat Limited", + "Oxford Health Nhs Foundation Trust", + "Building Crafts College", + "Health Education England North East", + "The University Of Bradford", + "Nhta Limited", + "Choice Training Ltd.", + "Sandwell And West Birmingham Hospitals National Health Service Trust", + "Central Bedfordshire Council", + "Peach Orator Limited", + "Northern Regeneration Cic", + "Redsky Learning Limited", + "Bright Bees Nursery Ltd", + "Blue Sky Assessing & Consultancy Ltd", + "Bradford City Council", + "The Education And Skills Partnership Ltd", + "Apex Management Consultants Limited", + "Essex Partnership University Nhs Foundation Trust", + "Access Skills Ltd", + "Hcrg Care Services Ltd", + "Phemagrace Ltd", + "Abbeydale Vetlink Veterinary Training Limited", + "Excel Training Limited", + "Developing `U` Limited", + "Jc Training & Consultancy Ltd", + "Qommunicate Ltd", + "Oxford Professional Education Group Limited", + "Banham Academy Limited", + "London Metropolitan College Limited", + "Management Training & Development Ltd", + "Kiwi Education Ltd", + "Cornwall Marine Network Limited", + "Cellar Tapes Uk Ltd", + "Mercia Training Ltd", + "Thermal Insulation Contractors Association", + "Channel Training Limited", + "Auto-Assess Limited", + "Richard Huish College", + "Yellow Tree Workforce Development Ltd", + "Plymouth Argyle Football In The Community Trust", + "Digital Native (Uk) Limited", + "1st Care Training Limited", + "North London Garages Gta", + "Utility & Construction Training Limited", + "Merlin Supply Chain Solutions Limited", + "Sb Skills Solutions Ltd", + "Brathay Trust", + "Alpha Care Agency Limited", + "The Society Of Local Authority Chief Executives And Senior Managers (Solace Group) Ltd", + "Ignite Sport Uk Limited", + "North East Ambulance Service Nhs Foundation Trust", + "Gloucestershire Enterprise Limited", + "The Institute Of Revenues, Rating And Valuation", + "Bishop Grosseteste University", + "Intuitions Limited", + "Bragd Llp", + "Skillcert Limited", + "Awe Plc", + "Buckinghamshire Council", + "Profound Services Limited", + "Lincolnshire County Council", + "Raytheon Systems Limited", + "Abellio East Midlands Limited", + "Tes Institute Limited", + "Hair Academy South West Limited", + "Nottinghamshire Training Group Limited", + "Beats Learning Limited", + "Oldham Engineering Group Training Association Limited (The)", + "Faircroft & Meadows Consultancy Ltd", + "Positive Approach Academy For Hair Limited", + "North Bristol National Health Service Trust", + "Busy Bees Nurseries Limited", + "Sodexo Limited", + "Inspire Middlesex College Ltd", + "Northcoders Teched Limited", + "Edge Hill University", + "Anglia Professional Training Limited", + "A S Training (International) Limited", + "National Business College Limited", + "Peterborough Skills Limited", + "The Priory Federation Of Academies", + "Academies Enterprise Trust", + "Peterborough City Council", + "Nacro", + "Risual Limited", + "Crackerjack Training Limited", + "Dick White Referrals Limited", + "Workforce Training & Development Ltd", + "The Link Training Academy Limited", + "Newcastle Upon Tyne City Council", + "Excell For Training Limited", + "Fe Business Limited", + "Seymour Davies Ltd.", + "University Of Newcastle Upon Tyne", + "Compass Skills Training Limited", + "Halls Of Ivy Beauty Academy Limited", + "The White Rose School Of Beauty And Complementary Therapies Limited", + "Bishop Auckland College", + "Leaders In Business Ltd", + "Digital Marketing Mentor Ltd", + "Springboard Sunderland Trust", + "School Of Marketing London Ltd", + "North Of England Training Limited", + "Smart Gas Training & Assessment Centre Limited", + "Easi Hairdressing Academy Limited", + "Wow Hair Academy Limited", + "Em Skills Limited", + "Creative Process Digital Ltd", + "Ace Training And Consultancy Limited", + "National Grid Plc", + "Northern Powergrid (Yorkshire) Plc", + "Philips Hair Salons Limited", + "Brockenhurst College", + "Learning Innovations Training Team Limited", + "Averee Ltd", + "Mccrory Limited", + "Aire Vocational Training Limited", + "Deere Apprenticeships Ltd", + "Cvp Consult Ltd", + "London North Eastern Railway Limited", + "Manufacturing Excellence Limited", + "That Nail Place Limited", + "Barnet & Southgate College", + "London Metropolitan University", + "Inter Training Services Limited", + "Xtol Development Services Limited", + "Dc Reclamation Ltd", + "Academy For Project Management Ltd", + "The Chief Constable Of Sussex", + "University Of Cambridge", + "As Training Services Ltd", + "West Thames College", + "Gloucestershire County Council", + "Middlesbrough Council", + "Back 2 Work Complete Training Limited", + "S.w. Durham Training Limited", + "Awc Training Ltd", + "Oxford Energy Academy Limited", + "Adalta Development Ltd", + "Citrus Training Limited", + "The University Of Liverpool", + "Blyth Harbour Commissioners", + "Blue Lion Training Academy Limited", + "Kingston Maurward College", + "Transworld Publications Services Limited", + "Cleveland Youth Association", + "Hart Learning & Development Ltd", + "Assist Knowledge Development Limited", + "Royal Borough Of Greenwich", + "Big Creative Training Ltd", + "Ic Training Centre Limited", + "L.i.t.s. Limited", + "Dianthas Ltd", + "First Rung Limited", + "Manchester University Nhs Foundation Trust", + "Gem Partnership Limited", + "Ukfast.net Limited", + "University Academy Holbeach", + "City Of York Council", + "Careerwise Consultancy Ltd", + "Sport Structures Education Community Interest Company", + "Zenith People Limited", + "Braillard Training Limited", + "Siemens Mobility Limited", + "Hybrid Technical Services Limited", + "Yuzu Training Ltd", + "Lancashire Combined Fire Authority", + "Alan Hester Associates Limited", + "University Of Worcester", + "Luton Borough Council", + "Coventry City Council", + "Decidebloom Limited", + "Train 2 Train Limited", + "Derwent Training Association", + "Tte Training Limited", + "Lynwood Vets Limited", + "Evolve Academy Ltd", + "South Central Ambulance Service Nhs Foundation Trust", + "Richmond Upon Thames College", + "Stockton-On-Tees Borough Council", + "Yorkshire Fitness And Leisure Limited", + "The Learning Partnership For Cornwall And The Isles Of Scilly Limited", + "Our Training Department Ltd", + "Calderdale And Huddersfield Nhs Foundation Trust", + "Leslie Frances (Hair Fashions) Limited", + "Somerset County Council", + "Semester: Learning And Development Limited", + "Brunel University London", + "Relx (Uk) Limited", + "S.a.m.b.", + "Armonia Limited", + "Contracting Services (Education And Skills) Limited", + "Waltham International College Limited", + "Maybird Training Ltd", + "University Of Wales: Trinity Saint David", + "Ark Schools", + "Basingstoke Itec Limited", + "Gi Group Recruitment Ltd", + "London Learning Consortium Community Interest Company", + "Mobius Partners Limited", + "The Chief Constable Of West Yorkshire", + "The Coders Guild Ltd", + "Tarmac Trading Limited", + "Genius Software Solutions Limited", + "Equals Training Limited", + "Hya Training Limited", + "Merseyside Fire And Rescue Authority", + "Care Int Limited", + "Cadent Gas Limited", + "Apa Procurement Training Limited", + "Future Academies", + "Meridian Trust", + "Kreston Reeves Llp", + "Hob Salons Limited", + "Achieving For Children Community Interest Company", + "1st2 Achieve Training Limited", + "The Chief Constable Of Hampshire", + "Harper Adams University", + "Dyson Technical Training Limited", + "E.j.markham & Son Limited", + "County Durham Council", + "Darlington Borough Council", + "Ebor Academy Trust", + "Pizza Hut (U.k.) Limited", + "The Chartered Institute Of Housing", + "The Press Association Limited", + "Whyy? Change Limited", + "Cp Training Services Limited", + "Govia Thameslink Railway Limited", + "Bygrove Primary School", + "The Ashridge (Bonar Law Memorial) Trust", + "Hyper Island Limited", + "Severn Trent Plc", + "Mode Training Ltd", + "Oracle Training Consultants Limited", + "Birmingham Women's And Children's Nhs Foundation Trust", + "North Tyneside Metropolitan Borough Council", + "Rapid Response Medical Services Ltd", + "National College For Advanced Transport And Infrastructure", + "Involve Selection Limited", + "Sse Services Plc", + "United Utilities Water Limited", + "Leicestershire County Council", + "North Northamptonshire Council", + "Independent Training And Education Consultants Limited", + "The Training Initiative Group Ltd", + "The Specialists Hub Ltd", + "Altrad Babcock Limited", + "Lancaster Training Services Limited", + "Hertfordshire County Council", + "Rsr Sports Limited", + "Veolia Environnement Development Centre Limited", + "Rpc Containers Limited", + "Amber Healthcare Personnel Limited", + "Emma Wright", + "Lomax Training Services Limited", + "Kent School Of Veterinary Nursing Limited", + "North Staffordshire Engineering Group Training Association Limited", + "She Compliancy Limited", + "The Marine Society And Sea Cadets", + "8point8 Training Limited", + "Summerhouse Equestrian And Training Centre Llp", + "Escalla Ts Ltd", + "Reed Specialist Recruitment Limited", + "Drl Services Ltd", + "Hartpury College Of Further Education", + "Chamber Training (Humber) Limited", + "Master Cutters Limited", + "Jag Training Limited", + "Flm Training Ltd", + "Mybe Awards Ltd", + "Hair And Beauty Industry Training Limited", + "Elevated Knowledge Ltd", + "St. John Ambulance", + "Code Nation Limited", + "South Bank Colleges", + "Folkestone & Hythe District Council", + "Tendring District Council", + "Exertis (Uk) Ltd", + "Financial Services Training Partners Llp", + "Huddersfield Textile Training Limited", + "Homeserve Membership Limited", + "Alpha Development Partnership Ltd", + "Royal Free London Nhs Foundation Trust", + "Central Bedfordshire College", + "Barnardo's", + "Pre-School Learning Alliance", + "Universal Vibes Limited", + "London & South Eastern Railway Limited", + "Star Academies", + "Tchc Group Limited", + "Devon County Council", + "Redcar And Cleveland Borough Council", + "Sussex Partnership Nhs Foundation Trust", + "E.quality Training Limited", + "Lotus Education Ltd", + "Electrical Testing Limited", + "Digital Telecoms Network Academy Limited", + "First Step Education & Training Limited", + "Dorset Software Services Limited", + "The University Of Bath", + "Itec Learning Technologies Limited", + "Greater Manchester Mental Health Nhs Foundation Trust", + "Halifax Opportunities Trust", + "The Colleges' Partnership Limited", + "Phoenix4training Llp", + "The Constellation Trust", + "Virgin Active Limited", + "The Academy Hair & Beauty Ltd", + "Common Council Of The City Of London", + "Medway Council", + "Sigta Limited", + "Velocity 1st Limited", + "Tendean Limited", + "Ignite Training Ltd", + "Uk Power Networks (Operations) Limited", + "Metadata Limited", + "Lean Enabled Group Ltd", + "All Trades Training Limited", + "Best Choice Training Ltd", + "Pathway First Limited", + "Green Inc (Eu) Limited", + "Elev8 Training Limited", + "Marshall Of Cambridge (Holdings) Limited", + "Intertrain Uk Ltd.", + "Apt Health And Safety Training Solutions Ltd", + "Richmond Training Academy Limited", + "North Wales Training Ltd.", + "Mark Betts Hair Education Limited", + "Portsmouth City Council", + "Mitre Group Limited", + "North Humberside Motor Trades Group Training Association", + "Westminster City Council", + "Founders & Coders C.i.c.", + "Inspiring Futures Through Learning", + "Metagedu Apprenticeships Ltd", + "Clifford College Ltd", + "White Rose Training Limited", + "Network Rail Infrastructure Limited", + "Wandsworth London Borough Council", + "Geoseis Consultant Limited", + "Milton Keynes Council", + "Birmingham Community Healthcare Nhs Foundation Trust", + "Skills Office Network Ltd", + "Staffordshire Commissioner Fire And Rescue Authority", + "Chameleon Vocational Training Limited", + "Qts-Global Ltd", + "Merit Skills Limited", + "First For Apprenticeships Limited", + "Exceed Training Company Limited", + "Derby City Council", + "Thurrock Council", + "East Essex Vocational Training Limited", + "The Strategy & Architecture Group Limited", + "Vision Express (Uk) Limited", + "Innovative Alliance Ltd", + "Cvs (Uk) Limited", + "Community First Academy Trust", + "Eas Mechanical Limited", + "F E Associates Limited", + "Ripley St Thomas Church Of England Academy", + "Glass & Fenestration Training Solutions Ltd", + "Greendale Limited", + "The Skills Centre London Limited", + "Uk Skills Academy Limited", + "Optimum Training Solutions Limited", + "Cherith Simmons Learning & Development Llp", + "Pentland Assessment Centres Ltd", + "The Newcastle Upon Tyne Hospitals Nhs Foundation Trust", + "Plymouth Training And Consultancy Ltd", + "Hcf Catch Limited", + "University Of Durham", + "South Farnham Educational Trust", + "Harris Federation", + "Icon Vocational Training Limited", + "Oxford University Hospitals Nhs Foundation Trust", + "Lincolnshire Community Health Services Nhs Trust", + "Physical Education & Active Kids Ltd", + "Siemens Public Limited Company", + "Bedford Borough Council", + "Glas Business Solutions Limited", + "Took Us A Long Time Limited", + "Construction Works (Hull) Limited", + "Finance Cover & Training Limited", + "Michael D Akers Management Consulting", + "Martec Training Limited", + "Metro Bank Plc", + "Salutem Limited", + "Eastern Region Roof Training Group Limited", + "The London Institute Of Banking & Finance", + "Reading Borough Council", + "City Gateway", + "Barking & Dagenham London Borough Council", + "Alt Valley Community Trust Limited", + "Pma Ltd", + "Training Strategies Ltd.", + "London Ambulance Service Nhs Trust", + "The Royal Artillery Centre For Personal Development", + "Royal Holloway And Bedford New College", + "The University Of Lancaster", + "Popcorn Learning Media Limited", + "Omni Academy Of Beauty Limited", + "Kbm Training & Recruitment Ltd", + "East Suffolk And North Essex Nhs Foundation Trust", + "East Sussex County Council", + "Stoke-On-Trent City Council", + "Kmf Precision Sheet Metal Limited", + "Ibm United Kingdom Limited", + "Finning (Uk) Ltd.", + "Cambridgeshire County Council", + "Integer Training Limited", + "The Spencer Academies Trust", + "Oakthorpe Primary School", + "Chelsea And Westminster Hospital Nhs Foundation Trust", + "Aldridge Education", + "Shreeji Training Ltd", + "Excellence-Solutions Limited", + "Vogal Group Limited", + "Moor Training Limited", + "South West Construction Academy Limited", + "Warwickshire Garage & Transport Group Training Association Limited", + "Benson-Smith Limited", + "Functional Skills Uk Limited", + "University Of York", + "Mineral Products Qualifications Council", + "Bridgeway Consulting Limited", + "Sunderland City Metropolitan Borough Council", + "Rosewood Management Services Limited", + "Softools Limited", + "Plums Limited", + "Venture Forward Limited", + "Absolute Hr Solutions Ltd.", + "Worcestershire County Council", + "Cert C.i.c.", + "D N A Apprenticeships Ltd", + "Prospect Training Services (Gloucester) Limited", + "Nottinghamshire Combined Fire And Rescue Authority", + "Data Law Limited", + "Aj Bell Business Solutions Limited", + "Equestrian Training Limited", + "Port Of Tilbury London Limited", + "The Organisation For Professionals In Regulatory Affairs Limited", + "Vss Training And Development Limited", + "Azesta Limited", + "Sutton And District Training Limited", + "Synergy Health (Uk) Limited", + "South Tees Hospitals Nhs Foundation Trust", + "Sportscape Education Ltd", + "Dental Professional Education Ltd.", + "Croydonsam Training Ltd", + "Manor Green School", + "England And Wales Cricket Board Limited", + "Exceed Academies Trust", + "Live Better Locations Limited", + "Extel Limited", + "Edlounge Ltd", + "Bournemouth Christchurch And Poole Council", + "Prime Life Limited", + "Connective Care Education Ltd", + "Kidz Zone Club Ltd", + "Potential Realised - Hr & Training Limited", + "Lynher Training Limited", + "Keolis Amey Docklands Limited", + "Varsity Training Limited", + "Development Trading (Education) Limited", + "Consalia Limited", + "The Fernandes And Rosario Consulting Limited", + "Plt Training Ltd", + "Time Training Limited", + "Siemens Energy Industrial Turbomachinery Limited", + "Apprenticeship Learning Solutions Limited", + "Mosaic Spa And Health Clubs (Contract Management) Limited", + "The Management Academy Ltd", + "Goddard Veterinary Group Limited", + "Julie Maycock", + "Advance Care Training Limited", + "University Of Strathclyde", + "A W Jenkinson Transport Limited", + "Sumo Digital Ltd.", + "Unipres (Uk) Limited", + "Corserv Limited", + "Southend-On-Sea Borough Council", + "North Yorkshire County Council", + "British Printing Industries Federation Ltd", + "Associated Neighbour Training Limited", + "Goodwin Engineering Training Company Limited", + "Gower College Swansea", + "Pilot Ims Limited", + "Pet-Xi Training Limited", + "Claas Uk Limited", + "The Chief Constable Of Greater Manchester", + "Quality Of Care Limited", + "Tes Training Limited", + "London Examinations Board Limited", + "Divad Training Limited", + "Croydon London Borough Council", + "The Square Metre Limited", + "Day One Trust", + "Westcountry Schools Trust", + "University Hospital Southampton Nhs Foundation Trust", + "Campus Training Limited", + "Jarrold & Sons Limited", + "Orchard Hill College", + "Ravensbourne University London", + "Proactive In Partnership Training Limited", + "Cancer Research Uk", + "St Andrew's Healthcare", + "Road Haulage Association Limited", + "Medway Nhs Foundation Trust Charitable Fund", + "Shears Academy Limited", + "London Design And Engineering Utc", + "New Generation Training And Consultancy Limited", + "The Elliot Foundation Academies Trust", + "The Chief Constable Of Surrey", + "Skills College Uk Limited", + "Central Veterinary Services Limited", + "St Mary's University, Twickenham", + "Social Landlords Crime And Nuisance Group", + "Go Beyond Services Ltd", + "Lancashire Football Association Limited", + "Royal Devon University Healthcare Nhs Foundation Trust", + "3 Spirit Enterprise Uk Limited", + "Vision Rehabilitation Training Ltd", + "5 E Ltd.", + "Hartlepool Borough Council", + "Phx Training Limited", + "Essential Site Skills Ltd", + "Presidency London College Limited", + "London Vesta College Limited", + "Technical Education Academy Limited", + "Mary P's Ltd", + "Secom Plc", + "Fresh Commun-It Limited", + "Mvrrs Training Limited", + "Devonport Royal Dockyard Limited", + "Three Dimensional Training Limited", + "St. George's Hospital Medical School", + "Roehampton University", + "D.t.k. Business Services Limited", + "Keyturn Training Limited", + "Academy Training Hair And Beauty Limited", + "The Independent Windscreen Academy Ltd", + "Mainstream Training Limited", + "Leeds Teaching Hospitals National Health Service Trust", + "Trainingplatform Ltd", + "Empentis Limited", + "Fashion - Enter Ltd", + "The Chief Constable Of Merseyside", + "Sparshatt Truck & Van Limited", + "Npl Management Limited", + "Holy Family Catholic Primary School", + "Royal Mencap Society", + "Astro Martin Ltd", + "Approved Training Limited", + "Yh Training Services Limited", + "East Birmingham Community Forum Ltd.", + "The Voluntary And Community Sector Learning And Skills Consortium", + "Love And Tate Limited", + "One Housing Group Limited", + "Swiftool Precision Engineering Limited", + "Ashley Hunter Ltd", + "Itchen College", + "Evolve Your Future Limited", + "Aspire Procurement Training Ltd", + "Ctsw Skills Ltd", + "Tyne And Wear Fire And Rescue Authority", + "Train With Pride Limited", + "New London Educational Trust", + "Brooks And Kirk (Assessor Training) Limited", + "Flatworldworks Limited", + "The Side By Side Partnership Limited", + "Purple Beard Ltd", + "Caunton Engineering Limited", + "Sheldrake Training Limited", + "Leadership In Action Limited", + "Dave Shurmer", + "David Nieper Limited", + "Coleg Cambria", + "Odt Training Professionals Limited", + "Waltham Forest London Borough Council", + "Skills Republic Ltd", + "Tees, Esk And Wear Valleys Nhs Foundation Trust", + "Eglantine Catering Limited", + "Melanie Martin", + "Waterton Academy Trust", + "Atalian Servest Integrated Solutions Limited", + "Xavier Catholic Education Trust", + "Finchale Training College", + "Orthodontic Team Training Limited", + "The Forward Trust", + "Four Cs Mat", + "Learning Curve (Development) Limited", + "Crispin School Academy", + "The Chief Constable Of South Yorkshire", + "Dove House School", + "University Hospitals Of Derby And Burton Nhs Foundation Trust", + "Thames Marine Academy Limited", + "Rutland County Council", + "Everton In The Community", + "Nova Payroll Management Services Limited", + "All Dimension Limited", + "Centre For Leadership And Management Development Limited", + "Springfields Fuels Limited", + "Whitby & District Fishing Industry Training School Limited", + "The Procurement Academy Limited", + "Blue Screen It Limited", + "Call Of The Wild (Development) Limited", + "Digital Peninsula Network Limited", + "Forestry Commission", + "Med Learn Training Limited", + "Lancaster Girls' Grammar School", + "Hughes Driver Training Limited", + "The Association Of Health Professions In Ophthalmology", + "Develop Training Limited", + "Learning For Futures Ltd", + "The London College Of Beauty Therapy Limited", + "South East Coast Ambulance Service Nhs Foundation Trust", + "Central Medical Services Ltd", + "The University Of Buckingham", + "Talented Training Limited", + "Applied Business Academy Limited", + "Triage Central Limited", + "Netcom Training Ltd", + "R.e.a.l. Education Limited", + "University College London Hospitals Nhs Foundation Trust", + "Tte Technical (Uk) Ltd.", + "Uniper Technologies Limited", + "The Pennine Acute Hospitals National Health Service Trust", + "Keystone Training Ltd", + "Ultima Skills Ltd", + "Anglo American Technical & Sustainability Services Ltd", + "Aspens-Services Limited", + "Birkbeck College", + "Culture, Learning And Libraries (Midlands)", + "Qualia Aesthetics Limited", + "Learning For Excellence Ltd", + "Bright Direction Training Limited", + "Consortium Of Vocational And Educational Trainers Limited", + "Wealden Leisure Limited", + "Futures Training Academy Ltd.", + "Stanmore College", + "Eagle Education And Training Limited", + "Euro Garages Limited", + "Rove Limited", + "Further Training Limited", + "Freshfield Training Associates Ltd", + "Central And North West London Nhs Foundation Trust", + "Eyc Global Limited", + "The Training & Recruitment Partnership Limited", + "Hexam Training Limited", + "Tvs Education Limited", + "A R C Academy Uk Limited", + "Rapid Improvement Limited", + "Liga (Uk) Ltd", + "Consortia Training Limited", + "Pgl Travel Limited", + "Nebula Consultancy Services Ltd", + "Guy's And St Thomas' Nhs Foundation Trust", + "Certas Energy Uk Limited", + "Uganda Community Relief Association", + "Little Learners Montessori Ltd", + "Nextstep Training Limited", + "Luton International College Limited", + "Canal Engineering Limited", + "Jet2.Com Limited", + "Eden College Of Human Resource Development And Management Studies Limited", + "Lul Nominee Bcv Limited", + "Dudley Metropolitan Borough Council", + "Leonardo Uk Ltd", + "Mpower Training Solutions Ltd", + "Qinetiq Limited", + "Ashley Community & Housing Ltd", + "C2c Training Limited", + "Evolve Education Ltd", + "National Training & Skills Ltd", + "Heart Of England Young Men's Christian Association", + "Infra Skills Ltd", + "City College Of London Ltd", + "Cognitia Consulting Limited", + "Agility People Services Limited", + "Stanford Management Processes Limited", + "The Engagement Coach Limited", + "Apprenticeships & Training Services Consortium Limited", + "Oasis Care And Training Agency (Octa)", + "Impellam Group Plc", + "Astara Training Limited", + "My Home Move Ltd", + "New Model Business Academy Limited", + "University Of Ulster", + "Pearson College Limited", + "Verity Healthcare Limited", + "Bpp Holdings Limited", + "Institute Of Chartered Accountants Of Scotland (The)", + "Peter Symonds College", + "University Of St Mark & St John", + "National Tyre Service Limited", + "Dfs Trading Limited", + "Mayer Environmental Ltd.", + "Carole Plummer", + "Ld Training Services Limited", + "Elite Training European Limited", + "Leonardo Limited", + "H.l. Hutchinson Limited", + "Park Education & Training Limited", + "Otm Apprenticeships Ltd", + "Prospect Training (Yorkshire) Limited", + "Lawtonash Training Services Ltd", + "The Go-Ahead Group Plc", + "Streetgames Uk", + "Can Training Limited", + "The World Of Work Limited", + "British Academy Of Jewellery Limited", + "London Cactus Limited", + "E.q.v. (Uk) Limited", + "Harper Craven Associates Limited", + "Nsl Limited", + "Gedling Borough Council", + "Beacon Education Partnership Limited", + "University Hospital Plymouth Nhs Trust", + "Solvendis Ltd", + "Eden Training Ltd", + "Limm Skills Academy Limited", + "Bath Spa University", + "Glasgow Caledonian University", + "London Skills & Development Network Limited", + "Welcome Skills Limited", + "Ghq Training Limited", + "Azure Charitable Enterprises", + "Fleetmaster Training Limited", + "Genius Solutions Limited", + "The Prime College Limited", + "Next Level Impact Limited", + "West Yorkshire Learning Providers Ltd", + "Vita Skills Limited", + "Train4work Training Services Limited", + "Rainhill High School" + ], + "Starts": [ + 16723, + 8540, + 6241, + 5750, + 5451, + 4940, + 4420, + 4157, + 4001, + 3997, + 3970, + 3658, + 3644, + 2852, + 2832, + 2762, + 2625, + 2442, + 2387, + 2079, + 1664, + 1644, + 1639, + 1588, + 1535, + 1520, + 1448, + 1356, + 1353, + 1334, + 1318, + 1246, + 1225, + 1223, + 1217, + 1205, + 1183, + 1157, + 1147, + 1085, + 1084, + 1033, + 1027, + 1003, + 986, + 982, + 963, + 956, + 950, + 943, + 940, + 937, + 927, + 926, + 924, + 923, + 918, + 918, + 911, + 907, + 903, + 903, + 897, + 892, + 890, + 889, + 883, + 879, + 864, + 845, + 842, + 836, + 830, + 830, + 827, + 822, + 802, + 799, + 795, + 791, + 787, + 785, + 783, + 773, + 766, + 761, + 739, + 738, + 735, + 730, + 722, + 722, + 717, + 712, + 703, + 700, + 699, + 690, + 690, + 685, + 677, + 675, + 674, + 671, + 669, + 661, + 660, + 658, + 652, + 649, + 648, + 644, + 634, + 630, + 629, + 620, + 617, + 611, + 608, + 601, + 601, + 600, + 596, + 593, + 591, + 590, + 588, + 585, + 584, + 584, + 571, + 570, + 564, + 556, + 555, + 550, + 549, + 548, + 547, + 546, + 536, + 531, + 524, + 521, + 515, + 514, + 510, + 507, + 507, + 506, + 503, + 501, + 501, + 494, + 492, + 492, + 488, + 486, + 483, + 482, + 482, + 480, + 480, + 479, + 477, + 476, + 475, + 474, + 473, + 469, + 468, + 467, + 465, + 463, + 461, + 460, + 459, + 456, + 456, + 455, + 455, + 453, + 453, + 453, + 451, + 449, + 448, + 446, + 445, + 442, + 439, + 438, + 433, + 433, + 432, + 431, + 431, + 430, + 428, + 427, + 422, + 422, + 421, + 417, + 417, + 416, + 414, + 413, + 409, + 408, + 406, + 405, + 402, + 400, + 399, + 396, + 395, + 395, + 394, + 393, + 389, + 388, + 388, + 385, + 385, + 379, + 378, + 376, + 373, + 371, + 368, + 362, + 360, + 360, + 360, + 359, + 357, + 356, + 356, + 354, + 353, + 352, + 350, + 349, + 347, + 345, + 345, + 342, + 341, + 341, + 340, + 340, + 340, + 339, + 339, + 338, + 337, + 336, + 334, + 332, + 332, + 332, + 332, + 331, + 331, + 330, + 329, + 327, + 325, + 325, + 325, + 325, + 324, + 324, + 324, + 320, + 320, + 320, + 320, + 317, + 317, + 315, + 315, + 314, + 314, + 314, + 314, + 311, + 309, + 308, + 306, + 303, + 303, + 299, + 298, + 297, + 297, + 296, + 292, + 292, + 291, + 291, + 291, + 290, + 289, + 289, + 284, + 282, + 282, + 281, + 281, + 280, + 280, + 280, + 279, + 277, + 277, + 275, + 275, + 275, + 273, + 272, + 271, + 271, + 271, + 269, + 269, + 268, + 265, + 259, + 258, + 258, + 257, + 257, + 255, + 254, + 252, + 252, + 252, + 251, + 251, + 250, + 250, + 250, + 249, + 247, + 246, + 245, + 245, + 245, + 244, + 244, + 244, + 243, + 242, + 242, + 240, + 240, + 238, + 238, + 237, + 237, + 236, + 235, + 234, + 233, + 233, + 232, + 232, + 231, + 231, + 231, + 231, + 231, + 230, + 229, + 228, + 227, + 226, + 225, + 224, + 224, + 223, + 223, + 223, + 222, + 221, + 221, + 220, + 219, + 218, + 218, + 218, + 217, + 217, + 216, + 216, + 214, + 214, + 213, + 212, + 212, + 211, + 211, + 210, + 210, + 210, + 209, + 209, + 208, + 208, + 208, + 207, + 207, + 207, + 206, + 206, + 205, + 204, + 203, + 203, + 202, + 201, + 201, + 200, + 199, + 199, + 198, + 198, + 197, + 196, + 194, + 194, + 193, + 193, + 191, + 190, + 190, + 189, + 189, + 188, + 188, + 188, + 188, + 188, + 188, + 188, + 187, + 186, + 186, + 186, + 185, + 185, + 185, + 185, + 185, + 182, + 182, + 182, + 181, + 181, + 180, + 180, + 180, + 180, + 180, + 179, + 179, + 179, + 178, + 178, + 178, + 177, + 177, + 173, + 173, + 173, + 172, + 172, + 171, + 171, + 170, + 169, + 169, + 169, + 169, + 168, + 166, + 165, + 164, + 164, + 163, + 161, + 161, + 161, + 159, + 159, + 159, + 159, + 159, + 159, + 158, + 157, + 157, + 157, + 157, + 156, + 155, + 155, + 155, + 155, + 154, + 154, + 154, + 154, + 153, + 153, + 153, + 152, + 151, + 150, + 150, + 150, + 149, + 149, + 149, + 148, + 148, + 147, + 147, + 147, + 146, + 146, + 145, + 145, + 144, + 144, + 142, + 142, + 142, + 142, + 141, + 141, + 141, + 140, + 139, + 139, + 138, + 137, + 137, + 136, + 136, + 136, + 136, + 136, + 135, + 135, + 135, + 134, + 133, + 133, + 133, + 133, + 132, + 132, + 131, + 130, + 130, + 129, + 128, + 128, + 128, + 126, + 126, + 126, + 126, + 125, + 125, + 125, + 124, + 124, + 124, + 123, + 123, + 123, + 123, + 123, + 122, + 122, + 122, + 121, + 121, + 121, + 121, + 121, + 120, + 120, + 120, + 119, + 119, + 118, + 118, + 117, + 116, + 116, + 116, + 116, + 115, + 115, + 115, + 115, + 115, + 113, + 113, + 112, + 112, + 112, + 111, + 110, + 110, + 110, + 109, + 109, + 108, + 108, + 107, + 107, + 107, + 107, + 107, + 107, + 107, + 106, + 106, + 105, + 105, + 105, + 105, + 105, + 105, + 103, + 103, + 102, + 102, + 102, + 101, + 101, + 101, + 101, + 101, + 100, + 100, + 100, + 100, + 99, + 99, + 99, + 99, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 98, + 97, + 96, + 95, + 95, + 95, + 95, + 94, + 94, + 93, + 93, + 93, + 93, + 92, + 92, + 92, + 92, + 92, + 92, + 91, + 91, + 91, + 91, + 91, + 91, + 91, + 91, + 91, + 91, + 90, + 90, + 90, + 89, + 89, + 88, + 88, + 88, + 87, + 87, + 87, + 86, + 86, + 86, + 85, + 85, + 84, + 84, + 84, + 84, + 84, + 84, + 83, + 82, + 82, + 81, + 81, + 81, + 81, + 80, + 80, + 80, + 79, + 79, + 79, + 79, + 79, + 79, + 78, + 77, + 77, + 77, + 76, + 76, + 76, + 76, + 75, + 75, + 75, + 75, + 74, + 74, + 73, + 73, + 73, + 73, + 72, + 72, + 72, + 72, + 72, + 71, + 71, + 71, + 71, + 71, + 71, + 71, + 70, + 69, + 69, + 69, + 69, + 69, + 69, + 68, + 68, + 68, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 67, + 66, + 66, + 66, + 66, + 66, + 66, + 66, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 64, + 64, + 64, + 63, + 63, + 63, + 63, + 62, + 62, + 62, + 62, + 61, + 61, + 61, + 61, + 61, + 61, + 60, + 60, + 60, + 60, + 60, + 59, + 59, + 59, + 59, + 59, + 59, + 59, + 58, + 58, + 58, + 58, + 58, + 57, + 57, + 57, + 57, + 57, + 57, + 57, + 56, + 56, + 56, + 56, + 56, + 56, + 56, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 55, + 54, + 54, + 54, + 54, + 54, + 54, + 54, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 53, + 52, + 52, + 52, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 50, + 49, + 49, + 49, + 49, + 49, + 49, + 48, + 48, + 48, + 48, + 48, + 47, + 47, + 47, + 47, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 46, + 45, + 45, + 45, + 45, + 45, + 45, + 45, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 44, + 43, + 43, + 43, + 43, + 43, + 43, + 43, + 42, + 42, + 42, + 42, + 42, + 41, + 41, + 41, + 41, + 41, + 41, + 41, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 40, + 39, + 39, + 39, + 39, + 39, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 38, + 37, + 37, + 37, + 37, + 37, + 37, + 36, + 36, + 36, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 35, + 34, + 34, + 34, + 33, + 33, + 33, + 33, + 33, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 31, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 30, + 29, + 29, + 29, + 29, + 29, + 29, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 28, + 27, + 27, + 27, + 27, + 27, + 27, + 27, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 26, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 25, + 24, + 24, + 24, + 24, + 24, + 24, + 24, + 23, + 23, + 23, + 23, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 22, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 21, + 20, + 20, + 20, + 20, + 20, + 20, + 19, + 19, + 19, + 19, + 19, + 19, + 19, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 18, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 17, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 15, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 14, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 13, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 12, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 11, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 10, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 6, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 5, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + }, + "columns": [ + { + "id": "Provider name", + "name": "Provider name", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "Starts", + "name": "Starts", + "type": "numeric", + "headerClassName": "bar-sort-header" + } + ], + "searchable": true, + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "182e6c597782e692f97d80f243ffcc8a", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + }, + "sas-sas_provider_table_title": "Starts for providers across all subject areas", + "sas-sas_subject_area_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Subject area": [ + "Health, Public Services and Care", + "Business, Administration and Law", + "Engineering and Manufacturing Technologies", + "Construction, Planning and the Built Environment", + "Business, Administration and Law", + "Business, Administration and Law", + "Health, Public Services and Care", + "Information and Communication Technology", + "Health, Public Services and Care", + "Engineering and Manufacturing Technologies", + "Retail and Commercial Enterprise", + "Health, Public Services and Care", + "Retail and Commercial Enterprise", + "Retail and Commercial Enterprise", + "Engineering and Manufacturing Technologies", + "Education and Training", + "Education and Training", + "Retail and Commercial Enterprise", + "Leisure, Travel and Tourism", + "Agriculture, Horticulture and Animal Care", + "Business, Administration and Law", + "Health, Public Services and Care", + "Agriculture, Horticulture and Animal Care", + "Agriculture, Horticulture and Animal Care", + "Arts, Media and Publishing", + "Business, Administration and Law", + "Information and Communication Technology", + "Arts, Media and Publishing", + "Leisure, Travel and Tourism", + "Science and Mathematics", + "Agriculture, Horticulture and Animal Care", + "Social Sciences", + "Construction, Planning and the Built Environment", + "Construction, Planning and the Built Environment", + "Arts, Media and Publishing", + "Science and Mathematics", + "History, Philosophy and Theology", + "Arts, Media and Publishing" + ], + "ssa_t2_desc": [ + "Health and Social Care", + "Business Management", + "Engineering", + "Building and Construction", + "Administration", + "Accounting and Finance", + "Child Development and Well Being", + "ICT Practitioners", + "Public Services", + "Transportation Operations and Maintenance", + "Hospitality and Catering", + "Nursing and Subjects and Vocations Allied to Medicine", + "Service Enterprises", + "Retailing and Wholesaling", + "Manufacturing Technologies", + "Direct Learning Support", + "Teaching and Lecturing", + "Warehousing and Distribution", + "Sport, Leisure and Recreation", + "Animal Care and Veterinary Science", + "Marketing and Sales", + "Medicine and Dentistry", + "Agriculture", + "Horticulture and Forestry", + "Media and Communication", + "Law and Legal Services", + "ICT for Users", + "Crafts, Creative Arts and Design", + "Travel and Tourism", + "Science", + "Environmental Conservation", + "Economics", + "Urban, Rural and Regional Planning", + "Architecture", + "Publishing and Information Services", + "Mathematics and Statistics", + "Archaeology and Archaeological Sciences", + "Performing Arts" + ], + "values": [ + 47569, + 41727, + 26966, + 25658, + 25636, + 22916, + 22107, + 21754, + 16858, + 15163, + 13968, + 11049, + 9332, + 8590, + 6932, + 4217, + 4088, + 4002, + 3654, + 3533, + 2390, + 2206, + 1432, + 1412, + 1300, + 1217, + 1064, + 664, + 438, + 351, + 280, + 241, + 223, + 181, + 41, + 21, + 12, + 0 + ] + }, + "columns": [ + { + "id": "Subject area", + "name": "Subject area", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "ssa_t2_desc", + "name": "ssa_t2_desc", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "values", + "name": "Starts", + "type": "numeric", + "headerClassName": "bar-sort-header", + "aggregate": "sum" + } + ], + "groupBy": [ + "Subject area" + ], + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "eeca02ee86b89ec72c0d64bcf4ad3eb0", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + } + } +} diff --git a/tests/testthat/_snaps/UI-03-sas/UI-03-sas-002.json b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-002.json new file mode 100644 index 0000000..a12f137 --- /dev/null +++ b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-002.json @@ -0,0 +1,174 @@ +{ + "input": { + "sas-measure": "Starts", + "sas-provider": "Nottingham College", + "sas-year": "2021/22", + "subjects_and_standards": 1 + }, + "output": { + "sas-sas_provider_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Provider name": [ + "Nottingham College" + ], + "Starts": [ + 940 + ] + }, + "columns": [ + { + "id": "Provider name", + "name": "Provider name", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "Starts", + "name": "Starts", + "type": "numeric", + "headerClassName": "bar-sort-header" + } + ], + "searchable": true, + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "a5a4c339602530b4bad90a47abc8b1a4", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + }, + "sas-sas_provider_table_title": "Starts for providers across all subject areas", + "sas-sas_subject_area_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Subject area": [ + "Engineering and Manufacturing Technologies", + "Health, Public Services and Care", + "Construction, Planning and the Built Environment", + "Business, Administration and Law", + "Engineering and Manufacturing Technologies", + "Education and Training", + "Retail and Commercial Enterprise", + "Health, Public Services and Care", + "Retail and Commercial Enterprise", + "Business, Administration and Law", + "Leisure, Travel and Tourism", + "Business, Administration and Law", + "Engineering and Manufacturing Technologies", + "Information and Communication Technology", + "Retail and Commercial Enterprise", + "Health, Public Services and Care" + ], + "ssa_t2_desc": [ + "Transportation Operations and Maintenance", + "Health and Social Care", + "Building and Construction", + "Administration", + "Engineering", + "Direct Learning Support", + "Hospitality and Catering", + "Child Development and Well Being", + "Service Enterprises", + "Business Management", + "Sport, Leisure and Recreation", + "Accounting and Finance", + "Manufacturing Technologies", + "ICT Practitioners", + "Retailing and Wholesaling", + "Medicine and Dentistry" + ], + "values": [ + 306, + 143, + 126, + 118, + 71, + 47, + 32, + 31, + 17, + 14, + 12, + 8, + 7, + 4, + 2, + 2 + ] + }, + "columns": [ + { + "id": "Subject area", + "name": "Subject area", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "ssa_t2_desc", + "name": "ssa_t2_desc", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "values", + "name": "Starts", + "type": "numeric", + "headerClassName": "bar-sort-header", + "aggregate": "sum" + } + ], + "groupBy": [ + "Subject area" + ], + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "9aa96343be3103e44900971c33629485", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + } + } +} diff --git a/tests/testthat/_snaps/UI-03-sas/UI-03-sas-003.json b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-003.json new file mode 100644 index 0000000..19943a6 --- /dev/null +++ b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-003.json @@ -0,0 +1,194 @@ +{ + "input": { + "sas-measure": "Starts", + "sas-provider": [ + "Nottingham College", + "Tyne Coast College", + "Coventry College", + "The Fernandes And Rosario Consulting Limited" + ], + "sas-year": "2021/22", + "subjects_and_standards": 1 + }, + "output": { + "sas-sas_provider_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Provider name": [ + "Nottingham College", + "Tyne Coast College", + "Coventry College", + "The Fernandes And Rosario Consulting Limited" + ], + "Starts": [ + 940, + 216, + 163, + 11 + ] + }, + "columns": [ + { + "id": "Provider name", + "name": "Provider name", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "Starts", + "name": "Starts", + "type": "numeric", + "headerClassName": "bar-sort-header" + } + ], + "searchable": true, + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "a33fe384f44f61ff764897a7006aea65", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + }, + "sas-sas_provider_table_title": "Starts for providers across all subject areas", + "sas-sas_subject_area_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Subject area": [ + "Engineering and Manufacturing Technologies", + "Construction, Planning and the Built Environment", + "Health, Public Services and Care", + "Business, Administration and Law", + "Engineering and Manufacturing Technologies", + "Health, Public Services and Care", + "Education and Training", + "Retail and Commercial Enterprise", + "Retail and Commercial Enterprise", + "Business, Administration and Law", + "Business, Administration and Law", + "Engineering and Manufacturing Technologies", + "Information and Communication Technology", + "Leisure, Travel and Tourism", + "Retail and Commercial Enterprise", + "Health, Public Services and Care", + "Education and Training", + "Business, Administration and Law", + "Information and Communication Technology" + ], + "ssa_t2_desc": [ + "Transportation Operations and Maintenance", + "Building and Construction", + "Health and Social Care", + "Administration", + "Engineering", + "Child Development and Well Being", + "Direct Learning Support", + "Service Enterprises", + "Hospitality and Catering", + "Accounting and Finance", + "Business Management", + "Manufacturing Technologies", + "ICT Practitioners", + "Sport, Leisure and Recreation", + "Retailing and Wholesaling", + "Medicine and Dentistry", + "Teaching and Lecturing", + "Marketing and Sales", + "ICT for Users" + ], + "values": [ + 326, + 304, + 155, + 154, + 92, + 63, + 52, + 42, + 37, + 32, + 27, + 15, + 14, + 13, + 2, + 2, + 0, + 0, + 0 + ] + }, + "columns": [ + { + "id": "Subject area", + "name": "Subject area", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "ssa_t2_desc", + "name": "ssa_t2_desc", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "values", + "name": "Starts", + "type": "numeric", + "headerClassName": "bar-sort-header", + "aggregate": "sum" + } + ], + "groupBy": [ + "Subject area" + ], + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "378cbe1782608b35a857879d57d02c67", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + } + } +} diff --git a/tests/testthat/_snaps/UI-03-sas/UI-03-sas-004.json b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-004.json new file mode 100644 index 0000000..0e96058 --- /dev/null +++ b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-004.json @@ -0,0 +1,194 @@ +{ + "input": { + "sas-measure": "Enrolments", + "sas-provider": [ + "Nottingham College", + "Tyne Coast College", + "Coventry College", + "The Fernandes And Rosario Consulting Limited" + ], + "sas-year": "2021/22", + "subjects_and_standards": 1 + }, + "output": { + "sas-sas_provider_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Provider name": [ + "Nottingham College", + "Tyne Coast College", + "Coventry College", + "The Fernandes And Rosario Consulting Limited" + ], + "Enrolments": [ + 2093, + 488, + 362, + 15 + ] + }, + "columns": [ + { + "id": "Provider name", + "name": "Provider name", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "Enrolments", + "name": "Enrolments", + "type": "numeric", + "headerClassName": "bar-sort-header" + } + ], + "searchable": true, + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "27aebe0a71717e7862962cae68b09791", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + }, + "sas-sas_provider_table_title": "Enrolments for providers across all subject areas", + "sas-sas_subject_area_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Subject area": [ + "Engineering and Manufacturing Technologies", + "Construction, Planning and the Built Environment", + "Health, Public Services and Care", + "Engineering and Manufacturing Technologies", + "Business, Administration and Law", + "Engineering and Manufacturing Technologies", + "Health, Public Services and Care", + "Education and Training", + "Retail and Commercial Enterprise", + "Business, Administration and Law", + "Business, Administration and Law", + "Retail and Commercial Enterprise", + "Information and Communication Technology", + "Leisure, Travel and Tourism", + "Retail and Commercial Enterprise", + "Health, Public Services and Care", + "Education and Training", + "Business, Administration and Law", + "Information and Communication Technology" + ], + "ssa_t2_desc": [ + "Transportation Operations and Maintenance", + "Building and Construction", + "Health and Social Care", + "Engineering", + "Administration", + "Manufacturing Technologies", + "Child Development and Well Being", + "Direct Learning Support", + "Service Enterprises", + "Accounting and Finance", + "Business Management", + "Hospitality and Catering", + "ICT Practitioners", + "Sport, Leisure and Recreation", + "Retailing and Wholesaling", + "Medicine and Dentistry", + "Teaching and Lecturing", + "Marketing and Sales", + "ICT for Users" + ], + "values": [ + 695, + 560, + 318, + 315, + 285, + 146, + 143, + 105, + 102, + 80, + 80, + 68, + 31, + 17, + 9, + 2, + 1, + 1, + 0 + ] + }, + "columns": [ + { + "id": "Subject area", + "name": "Subject area", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "ssa_t2_desc", + "name": "ssa_t2_desc", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "values", + "name": "Enrolments", + "type": "numeric", + "headerClassName": "bar-sort-header", + "aggregate": "sum" + } + ], + "groupBy": [ + "Subject area" + ], + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "8c6897742c4c7bf4f944b8c414da8d77", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + } + } +} diff --git a/tests/testthat/_snaps/UI-03-sas/UI-03-sas-005.json b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-005.json new file mode 100644 index 0000000..780038b --- /dev/null +++ b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-005.json @@ -0,0 +1,194 @@ +{ + "input": { + "sas-measure": "Achievements", + "sas-provider": [ + "Nottingham College", + "Tyne Coast College", + "Coventry College", + "The Fernandes And Rosario Consulting Limited" + ], + "sas-year": "2021/22", + "subjects_and_standards": 1 + }, + "output": { + "sas-sas_provider_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Provider name": [ + "Nottingham College", + "Tyne Coast College", + "Coventry College", + "The Fernandes And Rosario Consulting Limited" + ], + "Achievements": [ + 360, + 117, + 46, + 0 + ] + }, + "columns": [ + { + "id": "Provider name", + "name": "Provider name", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "Achievements", + "name": "Achievements", + "type": "numeric", + "headerClassName": "bar-sort-header" + } + ], + "searchable": true, + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "8896c987afbd816d74ce6b8e5b66cc9d", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + }, + "sas-sas_provider_table_title": "Achievements for providers across all subject areas", + "sas-sas_subject_area_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Subject area": [ + "Engineering and Manufacturing Technologies", + "Engineering and Manufacturing Technologies", + "Health, Public Services and Care", + "Business, Administration and Law", + "Construction, Planning and the Built Environment", + "Engineering and Manufacturing Technologies", + "Education and Training", + "Retail and Commercial Enterprise", + "Business, Administration and Law", + "Retail and Commercial Enterprise", + "Business, Administration and Law", + "Health, Public Services and Care", + "Information and Communication Technology", + "Leisure, Travel and Tourism", + "Retail and Commercial Enterprise", + "Education and Training", + "Business, Administration and Law", + "Information and Communication Technology", + "Health, Public Services and Care" + ], + "ssa_t2_desc": [ + "Transportation Operations and Maintenance", + "Manufacturing Technologies", + "Health and Social Care", + "Administration", + "Building and Construction", + "Engineering", + "Direct Learning Support", + "Service Enterprises", + "Business Management", + "Hospitality and Catering", + "Accounting and Finance", + "Child Development and Well Being", + "ICT Practitioners", + "Sport, Leisure and Recreation", + "Retailing and Wholesaling", + "Teaching and Lecturing", + "Marketing and Sales", + "ICT for Users", + "Medicine and Dentistry" + ], + "values": [ + 114, + 75, + 66, + 49, + 45, + 44, + 27, + 24, + 22, + 21, + 12, + 11, + 10, + 2, + 1, + 0, + 0, + 0, + 0 + ] + }, + "columns": [ + { + "id": "Subject area", + "name": "Subject area", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "ssa_t2_desc", + "name": "ssa_t2_desc", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "values", + "name": "Achievements", + "type": "numeric", + "headerClassName": "bar-sort-header", + "aggregate": "sum" + } + ], + "groupBy": [ + "Subject area" + ], + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "ab9c0a3283c92101eb9f84d5ff8b6bca", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + } + } +} diff --git a/tests/testthat/_snaps/UI-03-sas/UI-03-sas-006.json b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-006.json new file mode 100644 index 0000000..d245786 --- /dev/null +++ b/tests/testthat/_snaps/UI-03-sas/UI-03-sas-006.json @@ -0,0 +1,185 @@ +{ + "input": { + "sas-measure": "Achievements", + "sas-provider": [ + "Nottingham College", + "Tyne Coast College", + "Coventry College", + "The Fernandes And Rosario Consulting Limited" + ], + "sas-year": "2022/23", + "subjects_and_standards": 1 + }, + "output": { + "sas-sas_provider_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Provider name": [ + "Nottingham College", + "Tyne Coast College", + "Coventry College", + "The Fernandes And Rosario Consulting Limited" + ], + "Achievements": [ + 342, + 87, + 85, + 5 + ] + }, + "columns": [ + { + "id": "Provider name", + "name": "Provider name", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "Achievements", + "name": "Achievements", + "type": "numeric", + "headerClassName": "bar-sort-header" + } + ], + "searchable": true, + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "fa78105aed91954b45d1506606d326f2", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + }, + "sas-sas_provider_table_title": "Achievements for providers across all subject areas", + "sas-sas_subject_area_table": { + "x": { + "tag": { + "name": "Reactable", + "attribs": { + "data": { + "Subject area": [ + "Engineering and Manufacturing Technologies", + "Business, Administration and Law", + "Construction, Planning and the Built Environment", + "Education and Training", + "Health, Public Services and Care", + "Health, Public Services and Care", + "Engineering and Manufacturing Technologies", + "Retail and Commercial Enterprise", + "Business, Administration and Law", + "Engineering and Manufacturing Technologies", + "Retail and Commercial Enterprise", + "Business, Administration and Law", + "Retail and Commercial Enterprise", + "Information and Communication Technology", + "Leisure, Travel and Tourism", + "Health, Public Services and Care" + ], + "ssa_t2_desc": [ + "Transportation Operations and Maintenance", + "Administration", + "Building and Construction", + "Direct Learning Support", + "Health and Social Care", + "Child Development and Well Being", + "Manufacturing Technologies", + "Service Enterprises", + "Accounting and Finance", + "Engineering", + "Hospitality and Catering", + "Business Management", + "Retailing and Wholesaling", + "ICT Practitioners", + "Sport, Leisure and Recreation", + "Medicine and Dentistry" + ], + "values": [ + 95, + 95, + 78, + 46, + 37, + 32, + 30, + 25, + 19, + 19, + 17, + 16, + 4, + 3, + 3, + 0 + ] + }, + "columns": [ + { + "id": "Subject area", + "name": "Subject area", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "ssa_t2_desc", + "name": "ssa_t2_desc", + "type": "character", + "headerClassName": "bar-sort-header" + }, + { + "id": "values", + "name": "Achievements", + "type": "numeric", + "headerClassName": "bar-sort-header", + "aggregate": "sum" + } + ], + "groupBy": [ + "Subject area" + ], + "highlight": true, + "borderless": true, + "showSortIcon": false, + "style": { + "fontSize": "16px" + }, + "dataKey": "0f4f6192a1b8e4af554afb10a757f8cb", + "static": false + }, + "children": [ + + ] + }, + "class": "reactR_markup" + }, + "evals": [ + + ], + "jsHooks": [ + + ], + "deps": [ + + ] + } + } +} diff --git a/tests/testthat/test-UI-00-basic_load_navigation.R b/tests/testthat/test-UI-00-basic_load_navigation.R index b8754d8..4e57099 100644 --- a/tests/testthat/test-UI-00-basic_load_navigation.R +++ b/tests/testthat/test-UI-00-basic_load_navigation.R @@ -28,57 +28,57 @@ test_that("App loads and title of app appears as expected", { # Title updates when changing tabs ============================================ test_that("Tab titles load when switching", { app$click("local_authority_district") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - local authority district") app$click("subjects_and_standards") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - subjects and standards") app$click("learner_characteristics") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - learner characteristics") app$click("national_provider_summary") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - national provider summary") app$click("user_guide") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - user guide") app$click("provider_breakdowns") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - provider breakdowns") }) # Footer links and backlinks work ============================================= test_that("Footer link and back links work", { app$click("footnotes") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - footnotes") app$click("footnotes_to_dashboard") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - provider breakdowns") app$click("support") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - support") app$click("support_to_dashboard") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - provider breakdowns") app$click("accessibility_statement") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - accessibility statement") app$click("accessibility_to_dashboard") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - provider breakdowns") app$click("cookies") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - cookies") app$click("cookies_to_dashboard") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(app$get_text("title"), "Apprenticeships provider dashboard - provider breakdowns") }) diff --git a/tests/testthat/test-UI-03-sas.R b/tests/testthat/test-UI-03-sas.R new file mode 100644 index 0000000..0cada7b --- /dev/null +++ b/tests/testthat/test-UI-03-sas.R @@ -0,0 +1,40 @@ +# Start an app running ======================================================== +app <- AppDriver$new( + name = "UI-03-sas", + load_timeout = 45 * 1000, + timeout = 20 * 1000, + expect_values_screenshot_args = FALSE +) + +# Setting useful SaS inputs and outputs +sas_inputs <- c("subjects_and_standards", "sas-measure", "sas-provider", "sas-year") +sas_outputs <- c("sas-sas_provider_table_title", "sas-sas_subject_area_table", "sas-sas_provider_table") + +# Test Subjects and standards tab loads +app$set_inputs(`learner_characteristics-provider` = "Total") +app$set_inputs(`nps-provider` = "All providers") +app$click("subjects_and_standards") +app$expect_values(input = sas_inputs, output = sas_outputs) + +# Check a single provider can be selected +app$set_inputs(`sas-provider` = "Nottingham College") +app$expect_values(input = sas_inputs, output = sas_outputs) + +# Check multiple providers can be selected +app$set_inputs(`sas-provider` = c( + "Nottingham College", "Tyne Coast College", "Coventry College", + "The Fernandes And Rosario Consulting Limited" +)) +app$expect_values(input = sas_inputs, output = sas_outputs) + +# Check the measure change to Enrolments changes the outputs +app$set_inputs(`sas-measure` = "Enrolments") +app$expect_values(input = sas_inputs, output = sas_outputs) + +# Check the measure change to Achievements changes the outputs +app$set_inputs(`sas-measure` = "Achievements") +app$expect_values(input = sas_inputs, output = sas_outputs) + +# Check the year change to 2022/23 changes the outputs +app$set_inputs(`sas-year` = "2022/23") +app$expect_values(input = sas_inputs, output = sas_outputs) diff --git a/tests/testthat/test-UI-05-nps_downloads.R b/tests/testthat/test-UI-05-nps_downloads.R index 958fa98..4a09ae4 100644 --- a/tests/testthat/test-UI-05-nps_downloads.R +++ b/tests/testthat/test-UI-05-nps_downloads.R @@ -11,9 +11,9 @@ app$set_inputs(left_nav = "national_provider_summary") app$set_inputs(provider_table_tabs = "Download data") test_that("Default download gives expected name", { - app$wait_for_idle(5) + app$wait_for_idle(50) download_info <- app$get_download("nps-download_data") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(basename(download_info), "allproviders-allyears-allcharacteristics-provider_summary.csv") }) @@ -25,17 +25,17 @@ test_that("Filename reacts to dropdowns", { `nps-characteristic` = "Sex - Male" ) - app$wait_for_idle(5) + app$wait_for_idle(50) download_info <- app$get_download("nps-download_data") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(basename(download_info), "darlingtoncollege-2021_22-sex-male-provider_summary.csv") }) # Try changing radio option --------------------------------------------------- test_that("File type radio button changes to XLSX download", { app$set_inputs(`nps-file_type` = "XLSX (Up to 1.76 MB)") - app$wait_for_idle(5) + app$wait_for_idle(50) download_info <- app$get_download("nps-download_data") - app$wait_for_idle(5) + app$wait_for_idle(50) expect_equal(basename(download_info), "darlingtoncollege-2021_22-sex-male-provider_summary.xlsx") }) diff --git a/ui.R b/ui.R index 353c6f0..73892bf 100644 --- a/ui.R +++ b/ui.R @@ -104,7 +104,7 @@ ui <- function(input, output, session) { id = "left_nav", nav_panel("provider_breakdowns", provider_breakdowns()), nav_panel("local_authority_district", local_authority_district()), - nav_panel("subjects_and_standards", subjects_and_standards()), + nav_panel("subjects_and_standards", subjects_standards_ui(id = "sas")), nav_panel("learner_characteristics", learner_characteristics_ui(id = "learner_characteristics")), nav_panel("national_provider_summary", nps_ui(id = "nps")), nav_panel("user_guide", user_guide())