gov-uk-dashboards 26.14.0__tar.gz → 26.23.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. {gov_uk_dashboards-26.14.0/gov_uk_dashboards.egg-info → gov_uk_dashboards-26.23.0}/PKG-INFO +1 -1
  2. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/dashboard.css +114 -0
  3. gov_uk_dashboards-26.23.0/gov_uk_dashboards/assets/images/CHASE_icon.svg +17 -0
  4. gov_uk_dashboards-26.23.0/gov_uk_dashboards/assets/images/explore_data_logo.svg +87 -0
  5. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/colours.py +22 -0
  6. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/banners.py +20 -0
  7. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/data_quality_banner.py +3 -1
  8. gov_uk_dashboards-26.23.0/gov_uk_dashboards/components/dash/footer.py +129 -0
  9. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/header.py +44 -0
  10. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/leaflet/leaflet_choropleth_map.py +54 -25
  11. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/plotly/stacked_barchart.py +20 -15
  12. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/constants.py +14 -0
  13. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/http_headers.py +3 -2
  14. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/testing_functions/data_test_assertions.py +3 -3
  15. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/template.html +1 -1
  16. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/template.py +6 -0
  17. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0/gov_uk_dashboards.egg-info}/PKG-INFO +1 -1
  18. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards.egg-info/SOURCES.txt +2 -0
  19. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/setup.py +1 -1
  20. gov_uk_dashboards-26.14.0/gov_uk_dashboards/components/dash/footer.py +0 -86
  21. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/LICENSE +0 -0
  22. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/MANIFEST.in +0 -0
  23. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/README.md +0 -0
  24. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/__init__.py +0 -0
  25. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/__init__.py +0 -0
  26. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/attach-event-to-dash.js +0 -0
  27. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/custom_map_style_functions.js +0 -0
  28. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/download-map.js +0 -0
  29. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/fonts/bold-affa96571d-v2.woff +0 -0
  30. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/fonts/bold-b542beb274-v2.woff2 +0 -0
  31. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/fonts/light-94a07e06a1-v2.woff2 +0 -0
  32. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/fonts/light-f591b13f7d-v2.woff +0 -0
  33. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/get_assets_folder.py +0 -0
  34. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/govuk-frontend-3.14.0.min.js +0 -0
  35. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/DLUHC_WHITE_Master_AW_sm.png +0 -0
  36. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/MHCLG-favicon.png +0 -0
  37. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/MHCLG_favicon.png +0 -0
  38. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/dcms_coatofarms.png +0 -0
  39. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/dluhc_favicon.ico +0 -0
  40. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/gov_favicon.ico +0 -0
  41. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/govuk-crest.svg +0 -0
  42. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/hm-government-logo.png +0 -0
  43. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/mhclg_coat_of_arms.png +0 -0
  44. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/mhclg_white_no_background.png +0 -0
  45. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/oflog/MedianAbsolute.png +0 -0
  46. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/oflog/how_to_1_selecting_data.png +0 -0
  47. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/oflog/how_to_2_viewing_tabs.png +0 -0
  48. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/oflog/how_to_3_viewing_charts.png +0 -0
  49. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/oflog/how_to_4_viewing_trends.png +0 -0
  50. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/images/oflog/how_to_5_viewing_tables.png +0 -0
  51. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/index.html +0 -0
  52. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/mobile-nav.js +0 -0
  53. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/register_maps +0 -0
  54. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/scripts.js +0 -0
  55. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/topojson/usa_110m.json +0 -0
  56. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/assets/topojson/world_110m.json +0 -0
  57. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/__init__.py +0 -0
  58. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/__init__.py +0 -0
  59. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/apply_and_reset_filters_buttons.py +0 -0
  60. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/card.py +0 -0
  61. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/card_full_width.py +0 -0
  62. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/collapsible_panel.py +0 -0
  63. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/comparison_la_filter_button.py +0 -0
  64. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/context_banner.py +0 -0
  65. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/context_card.py +0 -0
  66. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/dashboard_container.py +0 -0
  67. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/details.py +0 -0
  68. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/download_button.py +0 -0
  69. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/filter_panel.py +0 -0
  70. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/graph.py +0 -0
  71. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/green_button.py +0 -0
  72. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/heading.py +0 -0
  73. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/home_page_link_button.py +0 -0
  74. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/html_list.py +0 -0
  75. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/key_value_pair.py +0 -0
  76. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/main_content.py +0 -0
  77. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/navbar.py +0 -0
  78. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/no_data_message.py +0 -0
  79. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/notification_banner.py +0 -0
  80. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/paragraph.py +0 -0
  81. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/phase_banner.py +0 -0
  82. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/row_component.py +0 -0
  83. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/side_navbar.py +0 -0
  84. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/table.py +0 -0
  85. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/tooltip.py +0 -0
  86. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/tooltip_title.py +0 -0
  87. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/visualisation_commentary.py +0 -0
  88. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/visualisation_title.py +0 -0
  89. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/dash/warning_text.py +0 -0
  90. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/helpers/__init__.py +0 -0
  91. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/helpers/display_chart_or_table_with_header.py +0 -0
  92. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/helpers/generate_dash_graph_from_figure.py +0 -0
  93. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/helpers/get_chart_for_download.py +0 -0
  94. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/helpers/plotting_helper_functions.py +0 -0
  95. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/helpers/update_layout_bgcolor_margin.py +0 -0
  96. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/leaflet/__init__.py +0 -0
  97. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/plotly/__init__.py +0 -0
  98. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/plotly/captioned_figure.py +0 -0
  99. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/plotly/choropleth_map.py +0 -0
  100. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/plotly/enums.py +0 -0
  101. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/components/plotly/time_series_chart.py +0 -0
  102. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/figures/__init__.py +0 -0
  103. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/figures/enums/__init__.py +0 -0
  104. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/figures/enums/dash_patterns.py +0 -0
  105. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/figures/line_chart.py +0 -0
  106. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/figures/styles/__init__.py +0 -0
  107. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/figures/styles/line_style.py +0 -0
  108. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/formatting/__init__.py +0 -0
  109. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/formatting/human_readable.py +0 -0
  110. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/formatting/number_formatting.py +0 -0
  111. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/formatting/round_and_add_prefix_and_suffix.py +0 -0
  112. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/formatting/rounding.py +0 -0
  113. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/formatting/text_functions.py +0 -0
  114. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/__init__.py +0 -0
  115. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/dap/__init__.py +0 -0
  116. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/dap/dap_deployment.py +0 -0
  117. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/dap/get_dataframe_from_cds.py +0 -0
  118. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/datetime_functions/__init__.py +0 -0
  119. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/datetime_functions/datetime_functions.py +0 -0
  120. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/download_functions/__init__.py +0 -0
  121. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/download_functions/convert_fig_to_image_and_download.py +0 -0
  122. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/download_functions/download_csv_with_headers.py +0 -0
  123. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/enable_basic_auth.py +0 -0
  124. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/logging.py +0 -0
  125. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/testing_functions/__init__.py +0 -0
  126. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/testing_functions/barchart_data_test_assertions.py +0 -0
  127. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/testing_functions/data_test_helper_functions.py +0 -0
  128. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/testing_functions/timeseries_data_test_assertions.py +0 -0
  129. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/lib/warning_text_sensitive.py +0 -0
  130. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/log_kpi.py +0 -0
  131. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards/symbols.py +0 -0
  132. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards.egg-info/dependency_links.txt +0 -0
  133. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards.egg-info/requires.txt +0 -0
  134. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/gov_uk_dashboards.egg-info/top_level.txt +0 -0
  135. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/pyproject.toml +0 -0
  136. {gov_uk_dashboards-26.14.0 → gov_uk_dashboards-26.23.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: gov_uk_dashboards
3
- Version: 26.14.0
3
+ Version: 26.23.0
4
4
  Summary: Provides access to functionality common to creating a data dashboard.
5
5
  Author: Department for Levelling Up, Housing and Communities
6
6
  Description-Content-Type: text/markdown
@@ -9414,4 +9414,118 @@ mark.expenditure {
9414
9414
 
9415
9415
  .govuk-table__body tr[id] {
9416
9416
  scroll-margin-top: 3rem;
9417
+ }
9418
+
9419
+ .feedback-container {
9420
+ background-color: rgb(244, 248, 251);
9421
+ border-top-color: rgb(142, 184, 220);
9422
+ border-top-style: solid;
9423
+ border-top-width: 0.8px;
9424
+ color: rgb(11, 12, 12);
9425
+ display: block;
9426
+ font-family: "GDS Transport", arial, sans-serif;
9427
+ outline-color: rgb(11, 12, 12);
9428
+ outline-style: none;
9429
+ outline-width: 0px;
9430
+ unicode-bidi: isolate;
9431
+ margin-right: 50px;
9432
+ margin-left: 50px;
9433
+ margin-top: 60px;
9434
+ }
9435
+
9436
+ .feedback-content {
9437
+ align-items: center;
9438
+ color: rgb(11, 12, 12);
9439
+ display: flex;
9440
+ flex-direction: row;
9441
+ align-items: center;
9442
+ font-family: "GDS Transport", arial, sans-serif;
9443
+ justify-content: space-between;
9444
+ padding-bottom: 0px;
9445
+ padding-left: 15px;
9446
+ padding-right: 15px;
9447
+ padding-top: 0px;
9448
+ unicode-bidi: isolate;
9449
+ }
9450
+
9451
+ .feedback-list {
9452
+ display: flex;
9453
+ align-items: center;
9454
+ gap: 15px;
9455
+ margin: 0;
9456
+ padding: 0;
9457
+ }
9458
+
9459
+ .feedback-questions {
9460
+ color: rgb(11, 12, 12);
9461
+ display: flex;
9462
+ align-items: center;
9463
+ font-family: "GDS Transport", arial, sans-serif;
9464
+ margin-bottom: 0px;
9465
+ margin-left: 15px;
9466
+ margin-right: 15px;
9467
+ margin-top: 0px;
9468
+ padding-bottom: 20px;
9469
+ padding-left: 0px;
9470
+ padding-right: 0px;
9471
+ padding-top: 20px;
9472
+ text-align: left;
9473
+ unicode-bidi: isolate;
9474
+ }
9475
+
9476
+ .feedback-question-answer {
9477
+ align-items: center;
9478
+ color: rgb(11, 12, 12);
9479
+ display: flex;
9480
+ font-family: "GDS Transport", arial, sans-serif;
9481
+ text-align: left;
9482
+ text-size-adjust: 100%;
9483
+ unicode-bidi: isolate;
9484
+ }
9485
+
9486
+ .feedback-list-item {
9487
+ display: flex; /* allow vertical centering */
9488
+ align-items: center; /* fixes button alignment */
9489
+ list-style-type: none;
9490
+ min-width: 100px;
9491
+ margin: 0;
9492
+ padding: 0;
9493
+ font-family: "GDS Transport", arial, sans-serif;
9494
+ }
9495
+
9496
+ .feedback-button {
9497
+ display: inline-flex;
9498
+ align-items: center;
9499
+ justify-content: center;
9500
+ margin-bottom: 0;
9501
+ background-color: rgba(0, 0, 0, 0);
9502
+ border-bottom-color: rgb(11, 12, 12);
9503
+ color: rgb(11, 12, 12) !important;
9504
+ border-bottom-left-radius: 0px;
9505
+ border-bottom-right-radius: 0px;
9506
+ border-bottom-style: solid;
9507
+ border-bottom-width: 0.8px;
9508
+ border-image-outset: 0;
9509
+ border-image-repeat: stretch;
9510
+ border-image-slice: 100%;
9511
+ border-image-source: none;
9512
+ border-image-width: 1;
9513
+ border-left-color: rgb(11, 12, 12);
9514
+ border-left-style: solid;
9515
+ border-left-width: 0.8px;
9516
+ border-right-color: rgb(11, 12, 12);
9517
+ border-right-style: solid;
9518
+ border-right-width: 0.8px;
9519
+ border-top-color: rgb(11, 12, 12);
9520
+ border-top-left-radius: 0px;
9521
+ border-top-right-radius: 0px;
9522
+ border-top-style: solid;
9523
+ border-top-width: 0.8px;
9524
+ width: 100%;
9525
+ }
9526
+
9527
+ .feedback-button:hover {
9528
+ background-color: #b1b4b6; /* GDS mid-grey hover */
9529
+ color: #0b0c0c; /* keep text black */
9530
+ border-color: #0b0c0c;
9417
9531
  }
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ width="650"
6
+ height="600"
7
+ viewBox="170 80 650 600"
8
+ version="1.1"
9
+ id="svg1"
10
+ xml:space="preserve"
11
+ xmlns="http://www.w3.org/2000/svg"
12
+ xmlns:svg="http://www.w3.org/2000/svg"><defs
13
+ id="defs1" /><g
14
+ id="layer1"><path
15
+ style="fill:#707070"
16
+ d="m 465.72986,662.78953 c -8.53077,-0.41356 -22.39849,-1.56559 -26,-2.1599 -2.01666,-0.33278 -5.90856,-0.93628 -8.64865,-1.3411 -12.79315,-1.89007 -36.69998,-7.99988 -49.68468,-12.69778 -2.2,-0.79596 -4.9,-1.83349 -6,-2.3056 -1.1,-0.47211 -5.6,-2.3109 -10,-4.08618 -4.4,-1.77529 -12.2,-5.36689 -17.33333,-7.98134 -13.33812,-6.79321 -17.79724,-9.35009 -28,-16.05529 -14.26665,-9.37598 -19.55136,-13.38402 -31.92999,-24.21644 -7.44985,-6.51929 -18.86557,-17.65959 -24.67209,-24.07684 -1.79782,-1.98691 -4.21654,-4.66256 -5.37495,-5.94589 -3.94223,-4.36735 -12.95897,-16.06777 -15.35631,-19.92684 -0.36666,-0.59024 -0.83493,-1.22316 -1.0406,-1.40649 -0.6425,-0.57275 -8.01419,-12.07986 -11.31762,-17.66667 -12.57476,-21.26662 -22.62655,-44.54459 -28.068,-65 -8.18096,-30.7537 -9.86079,-43.53381 -9.8581,-75 0.002,-28.01992 0.86951,-36.41646 6.33392,-61.33333 1.80061,-8.21047 2.67317,-11.35549 6.19619,-22.33333 3.41717,-10.64798 4.18664,-12.94761 4.79606,-14.33333 0.3225,-0.73334 1.96119,-4.63334 3.64153,-8.66667 1.68034,-4.03333 4.94878,-11.08333 7.26319,-15.66667 3.99983,-7.92104 5.13655,-10.03669 8.5071,-15.83333 0.79952,-1.375 1.95692,-3.45487 2.572,-4.62194 0.61508,-1.16707 2.21093,-3.64277 3.54633,-5.50155 1.3354,-1.85878 2.428,-3.51453 2.428,-3.67945 0,-0.16491 1.425,-2.29298 3.16667,-4.72903 1.74167,-2.43605 3.60932,-5.07543 4.15034,-5.86527 7.79243,-11.37639 27.5616,-33.0872 39.34966,-43.21441 2.38333,-2.04754 5.68333,-4.97819 7.33333,-6.51256 3.166,-2.94412 16.25962,-12.99355 21.33392,-16.37391 1.64968,-1.09897 3.14942,-2.15808 3.33275,-2.35358 0.46256,-0.49325 14.10408,-9.01634 15.33333,-9.58012 0.55,-0.25225 3.1,-1.64678 5.66667,-3.09897 2.56667,-1.45219 8.11667,-4.31252 12.33333,-6.35629 4.21667,-2.04377 8.45354,-4.1372 9.41526,-4.65206 2.70147,-1.44625 19.69831,-8.18739 24.91808,-9.88281 12.33995,-4.00808 19.87989,-6.19501 27,-7.83122 12.89883,-2.96417 18.87984,-4.00044 39,-6.75718 7.05727,-0.96694 53.08421,-0.96448 59.66666,0.003 2.75,0.40427 8.45,1.21134 12.66667,1.79349 7.72418,1.0664 17.90058,2.82813 20.29129,3.51282 1.25968,0.36076 1.26064,0.39224 0.0393,1.28533 -0.68862,0.50354 -1.64798,0.91552 -2.13189,0.91552 -0.48392,0 -2.15158,0.55489 -3.70592,1.23308 -1.55433,0.67819 -4.62606,1.90075 -6.82606,2.7168 -2.2,0.81606 -5.35,2.04987 -7,2.74182 -1.65,0.69195 -7.2,2.81453 -12.33334,4.71686 -5.13333,1.90233 -10.83333,4.04214 -12.66666,4.75512 -4.60623,1.79138 -11.35275,4.33204 -15.34906,5.78029 -2.41259,0.87432 -6.3273,1.3438 -14,1.67899 -19.35759,0.84566 -49.72228,5.71413 -60.31761,9.67092 -0.91667,0.34232 -4.36667,1.43299 -7.66667,2.4237 -23.57625,7.07796 -46.85465,18.49871 -70.28,34.48051 -2.57818,1.75895 -5.06989,3.56882 -5.53713,4.02194 -0.46724,0.45312 -1.89953,1.55411 -3.18287,2.44664 -1.28333,0.89253 -2.66703,1.93266 -3.07488,2.31139 -0.40786,0.37873 -2.49892,2.18861 -4.64681,4.02194 -10.86082,9.27027 -19.12955,17.15163 -27.27788,26 -6.99123,7.59186 -27.66709,35.5278 -27.66709,37.38206 0,0.22666 -0.59415,1.24651 -1.32033,2.26634 -1.80485,2.53468 -10.74538,20.058 -13.31608,26.09934 -4.21565,9.90708 -4.65846,11.02153 -6.59008,16.58559 -1.74379,5.02303 -3.3524,10.39792 -6.48445,21.66667 -2.53067,9.10502 -5.02993,24.28136 -6.31279,38.33333 -0.70877,7.76356 -0.70645,32.16168 0.004,40.33333 1.18255,13.60486 3.24259,26.1018 6.37395,38.66667 1.79341,7.19618 8.27524,27.31147 9.70328,30.11247 0.70179,1.37653 1.27599,2.79464 1.27599,3.15134 0,1.0002 9.66513,21.12248 12.52171,26.06952 14.53278,25.16799 31.34368,46.23658 49.47829,62.00964 3.48333,3.02973 7.53333,6.59176 9,7.91562 2.83733,2.56108 3.66252,2.91482 3.67349,1.57474 0.004,-0.45833 0.0788,-31.73333 0.16667,-69.5 l 0.15984,-68.66666 31.50025,-0.33334 31.50025,-0.33333 -2.5e-4,88.80988 -2.5e-4,88.80987 1.499,0.80224 c 2.67679,1.43258 18.12,6.75306 19.83433,6.83332 l 1.66667,0.078 v -119.50001 -119.5 l 32.16667,10e-6 h 32.16666 v 124.96066 c 0,99.24769 0.17148,125.06728 0.83334,125.47887 1.01506,0.63122 22.07406,0.56907 23.10517,-0.0682 0.53089,-0.32811 0.7317,-39.45169 0.72496,-141.24591 l -0.009,-140.79209 32.50625,-0.17287 32.50626,-0.17287 -0.18393,134.17287 c -0.10116,73.79507 -0.0125,134.87929 0.1969,135.74271 0.26488,1.09188 0.72683,1.46611 1.51726,1.22912 1.94223,-0.58232 16.39672,-5.76276 17.8031,-6.38057 0.73334,-0.32214 2.15834,-0.91664 3.16667,-1.3211 l 1.83333,-0.73538 V 468.2708 325.92318 h 30.94548 c 17.02001,0 31.42001,-0.1821 32,-0.40466 0.95923,-0.36809 1.05452,10.65685 1.05452,121.99999 0,110.40399 0.10187,122.40466 1.03905,122.40466 2.10442,0 16.84313,-13.89889 27.88178,-26.29306 5.66297,-6.35836 18.41251,-22.57118 18.41251,-23.41407 0,-0.16498 1.75131,-2.92337 3.89181,-6.12975 2.14049,-3.20638 4.10481,-6.27978 4.36514,-6.82978 0.26033,-0.55 1.20122,-2.2 2.09086,-3.66667 2.77721,-4.57851 12.78297,-25.10548 14.62334,-30 0.96508,-2.56667 2.07523,-5.41667 2.467,-6.33333 1.25493,-2.93632 5.73059,-16.83335 7.08528,-22 2.02273,-7.71444 4.05303,-17.67961 5.43305,-26.66667 0.36598,-2.38333 1.03551,-6.58333 1.48785,-9.33333 0.52679,-3.20263 0.82652,-12.54896 0.8338,-26 0.01,-18.30091 -0.18121,-22.32813 -1.48697,-31.33333 -0.82409,-5.68334 -1.76486,-11.53334 -2.0906,-13 -0.32575,-1.46667 -0.95532,-4.46667 -1.39905,-6.66667 -3.03372,-15.041 -8.60922,-32.12314 -15.77569,-48.33333 -3.09842,-7.00846 -11.22293,-22.54211 -12.5801,-24.0525 -0.52015,-0.57887 -0.94572,-1.24804 -0.94572,-1.48705 0,-0.23901 -1.125,-2.16539 -2.5,-4.28084 -1.375,-2.11545 -2.65,-4.17053 -2.83334,-4.56684 -2.12006,-4.58291 -19.86228,-26.68805 -29.16666,-36.33894 -4.125,-4.27862 -7.5,-8.11758 -7.5,-8.53102 0,-0.70903 1.53346,-4.8543 6.6869,-18.07614 1.21477,-3.11667 2.70746,-7.1501 3.31708,-8.96318 0.60962,-1.81308 1.42554,-3.40222 1.81316,-3.53143 1.87931,-0.62644 19.955,16.91391 31.42532,30.4946 15.84314,18.75805 28.43297,38.10903 38.16878,58.66667 1.82331,3.85 3.56383,7.46033 3.86783,8.02296 1.70945,3.16373 9.76139,24.62193 11.4987,30.64371 0.37025,1.28333 1.23681,4.28333 1.9257,6.66666 3.07725,10.64634 5.88608,24.31527 7.94562,38.66667 2.69334,18.76791 2.68232,53.10921 -0.0228,71 -2.32072,15.34848 -5.72154,32.05549 -7.80301,38.33333 -0.54707,1.65 -1.22782,4.05 -1.51278,5.33333 -0.73715,3.31984 -6.94743,20.82901 -8.59476,24.23193 -0.76033,1.57064 -1.38242,3.10601 -1.38242,3.41195 0,1.46667 -12.11111,25.45395 -16.82278,33.3192 -4.80907,8.02786 -12.37292,19.56047 -13.9794,21.31441 -0.64355,0.70262 -1.99219,2.50262 -2.99699,4 -1.00479,1.49738 -2.73603,3.79956 -3.8472,5.11596 -1.11116,1.31639 -3.9703,4.75112 -6.35363,7.63273 -5.02397,6.07431 -5.0065,6.05519 -13.33333,14.58947 -3.48334,3.57011 -8.28334,8.23464 -10.66667,10.36562 -13.5234,12.09154 -16.62533,14.76823 -19.45649,16.78926 -1.71773,1.22621 -6.74086,4.85447 -11.16251,8.0628 -4.42165,3.20834 -8.23791,5.83334 -8.48059,5.83334 -0.24267,0 -1.42452,0.75 -2.62633,1.66666 -1.20182,0.91667 -2.31006,1.66667 -2.46276,1.66667 -0.1527,0 -3.05195,1.67251 -6.44278,3.71668 -5.99486,3.61403 -18.28713,9.98781 -25.03521,12.98124 -1.83333,0.81326 -5.13333,2.2968 -7.33333,3.29675 -2.2,0.99995 -5.95,2.49812 -8.33333,3.32927 -2.38334,0.83115 -4.63334,1.73191 -5,2.00169 -0.36667,0.26979 -1.56667,0.70502 -2.66667,0.96719 -1.1,0.26216 -2.9,0.86054 -4,1.32972 -1.1,0.46917 -4.85,1.68488 -8.33333,2.70157 -3.48334,1.0167 -7.08334,2.09763 -8,2.40209 -1.62099,0.53838 -10.85318,2.74274 -20.35471,4.86006 -2.57842,0.57457 -6.62842,1.32781 -9,1.67385 -2.37158,0.34605 -7.46196,1.09043 -11.31196,1.65417 -12.47899,1.82727 -36.71275,2.72548 -52.66667,1.95208 z M 261.85534,410.71478 c -1.21433,-1.35205 -4.957,-5.60827 -8.31706,-9.45827 -3.36006,-3.85 -6.57531,-7.45 -7.145,-8 -0.56969,-0.55 -1.88744,-1.95339 -2.92833,-3.11865 l -1.89254,-2.11865 2.28686,-2.35471 c 1.25778,-1.29509 3.43913,-3.27041 4.84745,-4.3896 1.40831,-1.11919 4.41331,-3.75618 6.67776,-5.85997 6.11989,-5.68572 14.84277,-13.55358 17.54481,-15.82509 1.3085,-1.1 4.37112,-3.8 6.80584,-6 9.28112,-8.3864 16.99357,-15.42867 19.61047,-17.90644 1.49468,-1.41521 4.5176,-4.08415 6.7176,-5.93097 2.2,-1.84683 6.7,-5.83958 10,-8.87279 3.3,-3.03321 8.11946,-7.41427 10.70991,-9.73569 2.59045,-2.32143 7.24045,-6.50261 10.33333,-9.29152 3.09288,-2.78891 7.12342,-6.33674 8.95676,-7.88408 1.83333,-1.54733 3.78333,-3.31551 4.33333,-3.92929 0.55,-0.61377 2.93126,-2.76594 5.29169,-4.78258 2.36043,-2.01665 5.37886,-4.71664 6.70763,-5.99997 1.32878,-1.28333 3.78984,-3.53333 5.46904,-5 8.55128,-7.46898 12.29107,-10.87999 14.25304,-13 9.03641,-9.76429 26.11162,-26.66539 26.93447,-26.65981 0.55594,0.004 10.42019,9.46574 21.92055,21.0266 23.66191,23.78636 20.79809,22.0599 26.85347,16.18866 16.15375,-15.66255 27.04717,-26.12721 42.2171,-40.55545 29.00743,-27.58918 28.52693,-27.097 27.79015,-28.46558 -0.35563,-0.6606 -3.29947,-3.91546 -6.54187,-7.23302 -3.2424,-3.31757 -7.83823,-8.11757 -10.21295,-10.66667 -2.37473,-2.5491 -10.26029,-10.75917 -17.52346,-18.2446 -9.28312,-9.56718 -12.99635,-13.81931 -12.50073,-14.31493 0.38778,-0.38777 2.57333,-1.25095 4.85679,-1.91817 2.28346,-0.66721 5.50175,-1.63614 7.15175,-2.15317 1.65,-0.51703 5.2433,-1.57436 7.98512,-2.34963 2.74182,-0.77527 5.29182,-1.66279 5.66667,-1.97225 0.37485,-0.30946 1.88154,-0.77863 3.34821,-1.04258 1.46666,-0.26395 2.96666,-0.70616 3.33333,-0.98268 0.36667,-0.27651 1.71667,-0.72118 3,-0.98814 1.28333,-0.26697 4.43333,-1.17303 7,-2.01347 2.56667,-0.84044 9.31667,-2.93869 15,-4.66277 5.68333,-1.72408 13.48333,-4.12744 17.33333,-5.34079 3.85,-1.21336 9.25,-2.85969 12,-3.65851 2.75,-0.79883 5.6,-1.69971 6.33334,-2.00197 2.39617,-0.98763 12.3941,-3.99107 13.28559,-3.99107 0.47847,0 2.33494,-0.56689 4.12551,-1.25975 1.79056,-0.69286 4.60556,-1.63305 6.25556,-2.08929 3.90867,-1.08081 10.63987,-3.25089 12.33334,-3.97618 0.73333,-0.31408 2.23333,-0.7566 3.33333,-0.98338 1.1,-0.22679 5.15,-1.40413 9,-2.61633 3.85,-1.21219 9.25,-2.8757 12,-3.69667 2.75,-0.82097 6.46501,-2.06697 8.25557,-2.76887 1.79056,-0.70191 3.78128,-1.27619 4.42381,-1.27619 0.64254,0 3.60284,-0.870155 6.57846,-1.933674 2.97561,-1.063519 6.98489,-2.302806 8.90951,-2.753972 1.92463,-0.451165 3.84761,-1.095581 4.2733,-1.432034 0.45452,-0.359244 0.92661,-0.364768 1.14378,-0.01338 0.32899,0.53232 -0.33375,2.601588 -3.99272,12.46639 -0.54401,1.46667 -2.15136,5.96667 -3.57191,10 -1.42054,4.03333 -3.82076,10.78333 -5.33383,15 -1.51306,4.21667 -3.94077,11.11667 -5.3949,15.33333 -1.45414,4.21667 -2.92891,8.26667 -3.27728,9 -0.34837,0.73334 -1.51513,3.88334 -2.59279,7 -2.38122,6.88667 -7.78666,22.00382 -9.17763,25.66667 -0.55696,1.46667 -1.57336,4.31667 -2.25865,6.33333 -0.68529,2.01667 -2.33913,6.66667 -3.67521,10.33333 -3.31292,9.09186 -5.57043,15.54514 -6.41343,18.33334 -0.388,1.28333 -0.88896,2.63333 -1.11322,3 -0.22427,0.36666 -1.04348,2.46666 -1.82048,4.66666 -0.777,2.2 -3.13724,8.8 -5.24498,14.66667 -2.10775,5.86667 -4.41515,12.44645 -5.12757,14.62174 -0.71241,2.17529 -1.54631,4.27529 -1.8531,4.66666 -0.30679,0.39138 -0.72032,1.4616 -0.91894,2.37827 -0.68462,3.15951 -3.75168,10.97796 -4.38996,11.19072 -0.7529,0.25097 -3.02026,-1.99217 -13.7287,-13.58201 -4.37471,-4.73479 -12.04549,-12.80871 -17.04617,-17.94205 -5.00068,-5.13333 -10.99088,-11.35833 -13.31156,-13.83333 -2.32067,-2.475 -4.54686,-4.49856 -4.94707,-4.49681 -0.40022,0.002 -2.40684,1.72676 -4.45916,3.83334 -2.05232,2.10657 -6.25232,6.21274 -9.33333,9.12482 -3.08101,2.91207 -10.11322,9.66207 -15.62714,15 -5.51392,5.33792 -14.21392,13.67495 -19.33333,18.52673 -5.11942,4.85178 -13.05804,12.46075 -17.64137,16.90884 -11.67788,11.33327 -20.62679,19.52369 -21.90967,20.05263 -0.59968,0.24726 -3.77448,3.18632 -7.05511,6.53124 l -5.96478,6.08168 -20.37252,-20.36457 c -11.20489,-11.20051 -20.82074,-20.35977 -21.36856,-20.35392 -0.54781,0.006 -2.04603,0.92953 -3.32936,2.0526 -1.28333,1.12307 -3.23333,2.81585 -4.33333,3.76174 -1.1,0.94588 -3.8076,3.39721 -6.01688,5.4474 -2.20928,2.05019 -7.73113,7.02761 -12.27079,11.06095 -4.53965,4.03333 -9.32662,8.38333 -10.63772,9.66666 -1.3111,1.28334 -3.41763,3.16798 -4.68119,4.18811 -1.26356,1.02012 -4.69682,4.02012 -7.62947,6.66666 -6.42103,5.79459 -7.16584,6.46252 -12.42827,11.14523 -2.26633,2.01667 -6.28501,5.6771 -8.93041,8.13429 -2.6454,2.4572 -5.69165,5.1572 -6.76944,6 -1.07779,0.84281 -3.07876,2.6145 -4.4466,3.9371 -1.36784,1.32259 -4.35503,4.02259 -6.63821,6 -2.28317,1.9774 -5.96618,5.27601 -8.18446,7.33023 -2.21828,2.05422 -5.22244,4.75422 -6.67592,6 -1.45347,1.24577 -3.73862,3.31505 -5.0781,4.59838 -1.33949,1.28333 -3.68732,3.38333 -5.21741,4.66667 -1.53009,1.28333 -4.05773,3.53333 -5.61698,5 -3.20452,3.01424 -13.16272,12.00975 -15.95557,14.4131 -1.01424,0.87279 -3.56424,3.15508 -5.66666,5.07174 -2.10243,1.91666 -4.12259,3.47288 -4.48926,3.45827 -0.36666,-0.0146 -1.6602,-1.13279 -2.87452,-2.48484 z"
17
+ id="path1" /></g></svg>
@@ -0,0 +1,87 @@
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
3
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
4
+ <svg version="1.0" xmlns="http://www.w3.org/2000/svg"
5
+ width="500.000000pt" height="180.000000pt" viewBox="55 100 500.000000 180.000000"
6
+ preserveAspectRatio="xMidYMid meet">
7
+ <g transform="translate(0.000000,400.000000) scale(0.100000,-0.100000)"
8
+ fill="#0f6878" stroke="none">
9
+ <path d="M2459 2973 c0 -5 0 -381 1 -838 0 -456 0 -836 0 -842 0 -8 14 -13 35
10
+ -13 l35 0 0 850 0 850 -35 0 c-19 0 -35 -3 -36 -7z"/>
11
+ <path d="M805 2888 c-62 -55 -27 -158 54 -158 44 0 76 20 88 57 30 88 -73 160
12
+ -142 101z"/>
13
+ <path d="M990 2821 c0 -18 6 -21 48 -22 26 0 69 -8 96 -18 l48 -17 -60 -37
14
+ c-75 -46 -169 -147 -211 -227 -18 -33 -34 -60 -36 -60 -12 0 -38 122 -39 184
15
+ -1 56 -5 71 -17 74 -40 7 -29 -168 16 -267 l25 -53 -45 -51 c-55 -61 -108
16
+ -153 -129 -226 -20 -67 -20 -63 5 -59 15 2 26 19 42 68 22 64 74 157 103 180
17
+ 12 11 14 3 14 -51 0 -139 59 -284 160 -392 l55 -60 -70 7 c-61 7 -129 25 -187
18
+ 50 -11 5 -20 1 -27 -13 -10 -18 -6 -22 44 -40 71 -27 187 -45 240 -38 l41 6
19
+ 32 -70 c21 -45 56 -94 99 -140 62 -65 68 -69 80 -52 12 15 11 20 -11 36 -27
20
+ 19 -109 124 -132 168 l-13 27 70 -25 c40 -14 105 -26 152 -30 73 -5 112 -1
21
+ 221 23 l29 7 -24 -43 c-13 -23 -38 -59 -56 -80 -28 -33 -31 -40 -19 -55 12
22
+ -17 17 -13 61 46 26 35 58 85 71 111 13 26 36 55 50 64 24 16 26 16 55 -12 16
23
+ -15 28 -33 26 -39 -4 -10 38 -58 210 -237 98 -102 106 -108 144 -108 55 0 89
24
+ 34 89 90 0 39 -7 48 -156 206 -86 90 -160 161 -166 158 -5 -3 -22 6 -38 21
25
+ l-28 27 44 66 c68 101 104 219 104 340 0 28 9 59 25 86 31 53 65 150 65 186 0
26
+ 32 -26 48 -34 22 -2 -9 -8 -33 -11 -52 -9 -42 -45 -130 -54 -130 -4 0 -16 26
27
+ -26 57 -34 100 -115 207 -207 273 l-39 28 28 6 c73 14 112 16 160 8 40 -7 53
28
+ -6 57 4 3 8 -5 19 -17 26 -30 17 -182 14 -231 -4 -36 -13 -44 -13 -105 10 -84
29
+ 31 -240 40 -319 19 -51 -14 -56 -13 -115 11 -34 13 -90 27 -124 30 -59 4 -63
30
+ 3 -63 -17z m510 -151 c262 -50 418 -309 340 -563 -23 -73 -87 -167 -143 -210
31
+ -55 -42 -140 -78 -213 -90 -281 -48 -544 217 -494 500 31 178 164 321 332 358
32
+ 78 17 111 18 178 5z"/>
33
+ <path d="M2042 2774 c-36 -15 -52 -41 -52 -86 1 -87 115 -119 161 -45 48 77
34
+ -27 166 -109 131z"/>
35
+ <path d="M2860 2535 l0 -255 175 0 175 0 0 45 0 45 -125 0 -125 0 0 60 0 60
36
+ 110 0 110 0 0 40 0 40 -110 0 -110 0 0 65 0 65 125 0 125 0 0 45 0 45 -175 0
37
+ -175 0 0 -255z"/>
38
+ <path d="M4150 2535 l0 -255 50 0 50 0 1 238 c0 130 2 245 4 255 3 14 -5 17
39
+ -51 17 l-54 0 0 -255z"/>
40
+ <path d="M3270 2650 c0 -7 27 -50 60 -96 l61 -83 -66 -90 c-36 -50 -65 -93
41
+ -65 -96 0 -3 24 -5 54 -5 l55 0 33 55 c18 30 35 55 39 55 3 0 23 -25 43 -55
42
+ l36 -55 55 0 c30 0 55 2 55 5 0 3 -27 44 -60 92 -33 47 -60 90 -60 95 0 5 27
43
+ 47 59 93 33 46 57 86 54 89 -4 3 -27 6 -53 6 -46 0 -48 -1 -84 -56 l-37 -56
44
+ -37 54 c-36 51 -39 53 -90 56 -34 2 -52 -1 -52 -8z"/>
45
+ <path d="M3700 2400 l0 -260 50 0 50 0 0 85 0 85 23 -14 c81 -53 197 -14 248
46
+ 84 19 38 17 138 -5 183 -42 86 -154 124 -231 78 -44 -26 -45 -26 -45 -3 0 15
47
+ -9 19 -45 21 l-45 2 0 -261z m251 151 c24 -24 29 -38 29 -76 0 -51 -20 -99
48
+ -45 -109 -36 -13 -89 -6 -112 16 -19 18 -23 32 -23 83 0 62 9 84 45 103 36 20
49
+ 75 14 106 -17z"/>
50
+ <path d="M4440 2645 c-54 -25 -89 -64 -105 -119 -43 -143 67 -270 217 -253 95
51
+ 12 163 80 175 175 5 43 1 60 -20 104 -37 74 -81 102 -166 105 -44 2 -78 -2
52
+ -101 -12z m125 -79 c19 -8 41 -28 49 -45 56 -108 -71 -216 -155 -132 -52 52
53
+ -32 154 35 181 29 12 32 12 71 -4z"/>
54
+ <path d="M4796 2651 c-3 -5 -3 -90 1 -190 l6 -181 49 0 48 0 0 118 c0 112 1
55
+ 120 24 141 13 13 42 25 65 28 41 6 41 6 41 49 0 43 0 44 -35 44 -24 0 -45 -9
56
+ -70 -31 l-35 -31 0 31 c0 30 -1 31 -44 31 -25 0 -47 -4 -50 -9z"/>
57
+ <path d="M5148 2640 c-113 -60 -129 -239 -28 -323 70 -60 183 -61 255 -3 l30
58
+ 24 -29 31 -29 30 -29 -22 c-44 -32 -105 -27 -140 13 -16 17 -28 35 -28 40 0 6
59
+ 53 10 135 10 104 0 137 3 141 13 9 24 -17 111 -43 145 -14 19 -41 40 -59 48
60
+ -48 20 -132 17 -176 -6z m149 -82 c13 -12 23 -30 23 -40 0 -16 -9 -18 -80 -18
61
+ -72 0 -80 2 -80 19 0 27 47 61 83 61 18 0 41 -9 54 -22z"/>
62
+ <path d="M2860 1759 l0 -252 133 5 c185 7 257 41 304 146 22 46 25 65 21 121
63
+ -8 106 -50 170 -138 210 -38 17 -66 21 -182 21 l-138 0 0 -251z m280 142 c49
64
+ -26 74 -73 74 -138 0 -57 -17 -90 -68 -127 -21 -16 -46 -22 -107 -25 l-79 -3
65
+ 0 156 0 156 73 0 c51 0 82 -5 107 -19z"/>
66
+ <path d="M615 1968 c-22 -26 -26 -39 -21 -67 10 -68 74 -98 135 -66 33 16 41
67
+ 33 41 81 0 82 -102 116 -155 52z"/>
68
+ <path d="M3820 1940 c0 -47 -2 -50 -25 -50 -22 0 -25 -4 -25 -40 0 -36 3 -40
69
+ 25 -40 l25 0 0 -100 c0 -125 14 -164 67 -186 39 -17 127 -15 142 2 5 5 6 26 4
70
+ 47 -5 33 -8 37 -27 30 -31 -11 -67 -7 -77 9 -5 7 -9 55 -9 106 l0 92 50 0 50
71
+ 0 0 40 0 40 -50 0 -50 0 0 50 0 50 -50 0 -50 0 0 -50z"/>
72
+ <path d="M3469 1885 c-64 -20 -75 -35 -54 -74 18 -35 20 -36 55 -16 31 18 101
73
+ 19 122 3 9 -7 19 -23 23 -35 6 -22 4 -23 -65 -23 -120 0 -170 -35 -170 -120 0
74
+ -39 5 -51 31 -76 27 -26 37 -29 99 -29 51 0 73 4 88 18 19 17 20 17 25 -3 5
75
+ -18 12 -21 49 -18 l43 3 -4 145 c-4 158 -11 184 -63 214 -40 24 -123 29 -179
76
+ 11z m151 -226 c0 -33 -17 -56 -51 -68 -43 -15 -53 -14 -79 7 -17 14 -21 24
77
+ -15 41 9 28 37 40 98 40 41 1 47 -2 47 -20z"/>
78
+ <path d="M4190 1891 c-35 -11 -90 -40 -90 -47 0 -11 34 -64 41 -64 4 0 20 7
79
+ 35 15 45 23 110 20 128 -7 29 -41 21 -48 -49 -48 -104 0 -160 -34 -171 -101
80
+ -12 -76 42 -129 131 -129 32 0 62 7 82 19 31 19 31 19 36 0 4 -15 14 -19 46
81
+ -19 l41 0 0 143 c0 155 -9 186 -64 222 -29 19 -128 29 -166 16z m128 -243 c-2
82
+ -26 -11 -37 -40 -53 -50 -27 -93 -13 -93 30 0 36 31 55 93 55 43 0 43 0 40
83
+ -32z"/>
84
+ <path d="M1389 1525 c-80 -43 -46 -167 46 -167 92 0 125 125 45 167 -36 18
85
+ -57 18 -91 0z"/>
86
+ </g>
87
+ </svg>
@@ -60,6 +60,28 @@ class ONSAccessibleColours(Enum):
60
60
  # LIGHT_BLUE = "#27a0cc"
61
61
  ORANGE = "#f47738"
62
62
 
63
+ OCEAN_BLUE = "#206095"
64
+ SPRING_GREEN = "#a8bd3a"
65
+ BEETROOT_PURPLE = "#871a5b"
66
+ CORAL_PINK = "#f66068"
67
+ DARK_LEAF_GREEN = "#05341a"
68
+ SKY_BLUE = "#27a0cc"
69
+ NIGHT_BLUE = "#003c57"
70
+ MINT_GREEN = "#22d0b6"
71
+ LAVENDER_PURPLE = "#746cb1"
72
+
73
+ CATEGORICAL_MANY = [
74
+ OCEAN_BLUE,
75
+ SPRING_GREEN,
76
+ BEETROOT_PURPLE,
77
+ CORAL_PINK,
78
+ DARK_LEAF_GREEN,
79
+ SKY_BLUE,
80
+ NIGHT_BLUE,
81
+ MINT_GREEN,
82
+ LAVENDER_PURPLE,
83
+ ]
84
+
63
85
 
64
86
  class AFAccessibleColours(Enum):
65
87
  """Analysis Function colour palettes taken from
@@ -2,6 +2,8 @@
2
2
 
3
3
  from dash import html
4
4
 
5
+ from gov_uk_dashboards.constants import BANNER_STYLE, ERROR_MESSAGE_BANNER_STYLE
6
+
5
7
 
6
8
  def message_banner(category, message, style=None):
7
9
  """
@@ -30,3 +32,21 @@ def message_banner(category, message, style=None):
30
32
  className="change-log-banner govuk-!-margin-bottom-2",
31
33
  style=style,
32
34
  )
35
+
36
+
37
+ def get_warning_banner(banner_text: str) -> html.Div:
38
+ """Returns warning banner with banner_text displayed.
39
+
40
+ Args:
41
+ banner_text (str): Text to display on warning banner.
42
+ """
43
+ return html.Div(
44
+ [
45
+ message_banner(
46
+ "UPDATE",
47
+ html.Span(banner_text),
48
+ style=ERROR_MESSAGE_BANNER_STYLE,
49
+ )
50
+ ],
51
+ style=BANNER_STYLE,
52
+ )
@@ -58,7 +58,7 @@ class DataQualityLabels(Enum):
58
58
  )
59
59
  EXPERIMENTAL_MI = DataQualityConfig(
60
60
  title="Experimental management information",
61
- text="Use only as a directional indicator, and seek expert advice before acting. ",
61
+ text="Indicative only, requires expert guidance on use.",
62
62
  style=NOTIFICATION_STYLE_ORANGE,
63
63
  title_color="black",
64
64
  )
@@ -78,6 +78,8 @@ def data_quality_notification_banner(label: DataQualityLabels):
78
78
  html.A(
79
79
  "glossary",
80
80
  href=config.glossary_url,
81
+ target="_blank",
82
+ rel="noopener noreferrer",
81
83
  ),
82
84
  ".",
83
85
  ]
@@ -0,0 +1,129 @@
1
+ """footer"""
2
+
3
+ from typing import Optional
4
+ from dash import html
5
+
6
+
7
+ def footer(footer_links: Optional[list[any]], include_logos: bool = False):
8
+ """
9
+ HTML component for a Gov.UK standard footer.
10
+
11
+ The footer provides copyright, licensing and other information about your
12
+ service and department.
13
+
14
+ Part of the Gov.UK Design System:
15
+ https://design-system.service.gov.uk/components/footer/
16
+
17
+ Returns:
18
+ html.Footer: A footer element with copyright information.
19
+ """
20
+ return html.Footer(
21
+ html.Div(
22
+ html.Div(
23
+ [
24
+ html.Div(
25
+ [
26
+ (
27
+ html.H2(
28
+ "Support Links", className="govuk-visually-hidden"
29
+ )
30
+ if footer_links
31
+ else None
32
+ ),
33
+ html.Div(
34
+ [
35
+ (
36
+ html.Ul(
37
+ children=[
38
+ html.Li(
39
+ item,
40
+ className="govuk-footer__inline-list-item",
41
+ )
42
+ for item in footer_links
43
+ ],
44
+ className=(
45
+ "govuk-footer__inline-list "
46
+ "govuk-!-display-none-print"
47
+ ),
48
+ )
49
+ if footer_links
50
+ else None
51
+ ),
52
+ html.Span(
53
+ [
54
+ "All content is available under the ",
55
+ html.A(
56
+ "Open Government Licence v3.0",
57
+ rel="license",
58
+ href="https://www.nationalarchives.gov.uk/doc/"
59
+ "open-government-licence/version/3/",
60
+ className="govuk-footer__link",
61
+ target="_blank",
62
+ ),
63
+ ", except where otherwise stated",
64
+ ],
65
+ className="govuk-footer__licence-description",
66
+ ),
67
+ (
68
+ (
69
+ html.Div(
70
+ [
71
+ html.Img(
72
+ src="assets\\images\\CHASE_icon.svg",
73
+ className="header-image",
74
+ style={"maxWidth": "100px"},
75
+ ),
76
+ html.Div(
77
+ [
78
+ html.B(
79
+ "CHASE",
80
+ style={
81
+ "font-size": "36px"
82
+ },
83
+ ),
84
+ ],
85
+ style={
86
+ "display": "flex",
87
+ "flex-direction": "column",
88
+ "align-items": "left",
89
+ "color": "#707070",
90
+ "maxWidth": "200px",
91
+ "padding-bottom": "10px",
92
+ },
93
+ ),
94
+ ],
95
+ style={
96
+ "display": "flex",
97
+ "flex-direction": "row",
98
+ "align-items": "center",
99
+ "padding-top": "30px",
100
+ },
101
+ )
102
+ )
103
+ if include_logos
104
+ else None
105
+ ),
106
+ ]
107
+ ),
108
+ ],
109
+ className="govuk-footer__meta-item govuk-footer__meta-item--grow",
110
+ ),
111
+ html.Div(
112
+ html.A(
113
+ "© Crown copyright",
114
+ className="govuk-footer__link pyvis-govuk-footer__copyright-logo",
115
+ href="https://www.nationalarchives.gov.uk/information-management/"
116
+ "re-using-public-sector-information/uk-government-licensing-framework/"
117
+ "crown-copyright/",
118
+ target="_blank",
119
+ ),
120
+ className="govuk-footer__meta-item",
121
+ ),
122
+ ],
123
+ className="govuk-footer__meta",
124
+ ),
125
+ className="govuk-width-container",
126
+ ),
127
+ className="govuk-footer",
128
+ role="contentinfo",
129
+ )
@@ -78,3 +78,47 @@ def header(
78
78
  | {"borderColor": "#000000", "backgroundColor": "rgb(0,98,94)"},
79
79
  **{"data-module": "govuk-header"},
80
80
  )
81
+
82
+
83
+ def logo_header():
84
+ """
85
+ Create and return the application header containing the Explore Data logo.
86
+
87
+ This component renders a GOV.UK–styled header with an SVG logo.
88
+ The logo is loaded from the Dash assets directory and constrained
89
+ to a maximum height for consistent layout.
90
+
91
+ Returns
92
+ -------
93
+ dash.html.Header
94
+ A Dash Header component containing the styled logo container.
95
+ """
96
+ return html.Header(
97
+ html.Div(
98
+ html.Div(
99
+ [
100
+ html.Div(
101
+ [
102
+ html.Img(
103
+ src="/assets/images/explore_data_logo.svg",
104
+ className="header-image",
105
+ style={"maxHeight": "100px"},
106
+ ),
107
+ ],
108
+ style={
109
+ "display": "flex",
110
+ "flexDirection": "column",
111
+ "color": "#00625e",
112
+ "alignItems": "center",
113
+ "paddingBottom": "2px",
114
+ },
115
+ ),
116
+ ],
117
+ className="govuk-header__content",
118
+ ),
119
+ style={"borderBottom": "0px solid #000000", "borderColor": "#f3f2f1"},
120
+ className="govuk-header__container govuk-width-container",
121
+ ),
122
+ className="govuk-header",
123
+ style={"backgroundColor": "#f3f2f1", "borderColor": "#f3f2f1"},
124
+ )
@@ -42,8 +42,9 @@ class LeafletChoroplethMap:
42
42
  download_chart_button_id: Optional[str] = None,
43
43
  download_data_button_id: Optional[str] = None,
44
44
  color_scale_is_discrete: bool = True,
45
+ colorbar_title: str = None,
45
46
  show_tile_layer: bool = False,
46
- ):
47
+ ): # pylint: disable=too-many-locals
47
48
  self.geojson_data = geojson
48
49
  self.df = df
49
50
  self.hover_text_columns = hover_text_columns
@@ -56,6 +57,7 @@ class LeafletChoroplethMap:
56
57
  self.download_chart_button_id = download_chart_button_id
57
58
  self.download_data_button_id = download_data_button_id
58
59
  self.color_scale_is_discrete = color_scale_is_discrete
60
+ self.colorbar_title = self.resolve_colorbar_title(colorbar_title)
59
61
  self.show_tile_layer = show_tile_layer
60
62
  self._add_data_to_geojson()
61
63
  self.instance_number = instance_number
@@ -198,11 +200,28 @@ class LeafletChoroplethMap:
198
200
 
199
201
  def _get_colorscale(self):
200
202
  if self.color_scale_is_discrete:
201
- discrete_colours = ["#217847", "#23BBBE", "#8CCE69", "#FFEA80"]
202
203
  if len(self.df[self.column_to_plot].unique()) == 3:
203
- discrete_colours.pop(1)
204
- return discrete_colours
205
- return ["#B0F2BC", "#257D98"]
204
+ return ["#080C54", "#1F9EB7", "#CDE594"]
205
+ if len(self.df[self.column_to_plot].unique()) == 4:
206
+ return ["#080C54", "#1F9EB7", "#80C6A3", "#CDE594"]
207
+ if len(self.df[self.column_to_plot].unique()) == 5:
208
+ return [
209
+ "#080C54",
210
+ "#186290",
211
+ "#1F9EB7",
212
+ "#80C6A3",
213
+ "#CDE594",
214
+ ]
215
+ if len(self.df[self.column_to_plot].unique()) == 6:
216
+ return [
217
+ "#080C54",
218
+ "#186290",
219
+ "#1F9EB7",
220
+ "#80C6A3",
221
+ "#CDE594",
222
+ "#ffffcc",
223
+ ]
224
+ return ["#80C6A3", "#186290"]
206
225
 
207
226
  def _get_color_bar_categories(self):
208
227
  return (
@@ -215,10 +234,10 @@ class LeafletChoroplethMap:
215
234
  )
216
235
 
217
236
  def _get_colorbar(self):
237
+ top_margin = ("100px" if self.colorbar_title else None,)
218
238
  if self.color_scale_is_discrete:
219
- self._get_color_bar_categories()
220
239
  return dlx.categorical_colorbar(
221
- categories=self._get_color_bar_categories(), # reversed order
240
+ categories=self._get_color_bar_categories(),
222
241
  colorscale=self._get_colorscale()[::-1],
223
242
  width=30,
224
243
  height=200,
@@ -228,8 +247,10 @@ class LeafletChoroplethMap:
228
247
  "backgroundColor": "white",
229
248
  "borderRadius": "4px",
230
249
  "fontSize": "16px",
250
+ "marginTop": top_margin,
231
251
  },
232
252
  )
253
+
233
254
  min_value = self.df.select(pl.min(self.column_to_plot)).item()
234
255
  colorbar_min = min(min_value, 0)
235
256
  max_value = self.df.select(pl.max(self.column_to_plot)).item()
@@ -268,27 +289,35 @@ class LeafletChoroplethMap:
268
289
  "backgroundColor": "white",
269
290
  "padding": "5px",
270
291
  "borderRadius": "4px",
271
- "marginTop": "100px",
292
+ "marginTop": top_margin,
272
293
  },
273
294
  tickValues=tick_values,
274
295
  tickText=tick_text, # Optional, makes labels look cleaner
275
296
  )
276
297
 
277
298
  def _get_colorbar_title(self, enable_zoom: bool = False):
278
- if self.color_scale_is_discrete:
279
- return None
280
- top = "70px" if enable_zoom is False else "140px"
281
- return html.Div(
282
- self.hover_text_columns[0],
283
- style={
284
- "position": "absolute",
285
- "top": top, # Adjusted to place above the colorbar
286
- "left": "10px", # Align with the left side of the colorbar
287
- "background": "white",
288
- "padding": "2px 6px",
289
- "borderRadius": "5px",
290
- "fontWeight": "bold",
291
- "fontSize": "14px",
292
- "zIndex": "999", # Ensure it appears above map elements
293
- },
294
- )
299
+ if self.colorbar_title:
300
+ top = "70px" if enable_zoom is False else "140px"
301
+ return html.Div(
302
+ self.colorbar_title,
303
+ style={
304
+ "position": "absolute",
305
+ "top": top, # Adjusted to place above the colorbar
306
+ "left": "10px", # Align with the left side of the colorbar
307
+ "background": "white",
308
+ "padding": "2px 6px",
309
+ "borderRadius": "5px",
310
+ "fontWeight": "bold",
311
+ "fontSize": "14px",
312
+ "zIndex": "999", # Ensure it appears above map elements
313
+ },
314
+ )
315
+ return None
316
+
317
+ def resolve_colorbar_title(self, colorbar_title: str):
318
+ """Returns text for colorbar title."""
319
+ if colorbar_title is None:
320
+ return None # exclude title
321
+ if colorbar_title == "default":
322
+ return self.hover_text_columns[0]
323
+ return colorbar_title # custom title