govuk_publishing_components 56.0.0 → 56.1.0
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.
- checksums.yaml +4 -4
- data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/pii-remover.js +5 -0
- data/app/assets/javascripts/govuk_publishing_components/vendor/lux/lux-reporter.js +54 -12
- data/app/assets/stylesheets/govuk_publishing_components/components/_attachment.scss +5 -7
- data/app/assets/stylesheets/govuk_publishing_components/components/_govspeak.scss +0 -89
- data/app/assets/stylesheets/govuk_publishing_components/components/_heading.scss +7 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/_metadata.scss +10 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_attachment.scss +17 -1
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_call-to-action.scss +7 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_charts.scss +14 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_footnotes.scss +8 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_fraction.scss +6 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_information-callout.scss +4 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_typography.scss +23 -16
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_warning-callout.scss +11 -0
- data/app/views/govuk_publishing_components/components/docs/attachment.yml +3 -1
- data/app/views/govuk_publishing_components/components/docs/govspeak.yml +23 -17
- data/lib/govuk_publishing_components/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: bb66b17c8f8b7baed193b221d9030b0e0d3d0153b1e7054ae96c315c0a315260
         | 
| 4 | 
            +
              data.tar.gz: 313ad24d6427bee1113293ba0cdefe3d1c2297052c54b70203d9a12b13265567
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 2ade02219d951f7f9170e9bcf1b7d5284c93dcdebe7f967c5d05c7ecfb4ea2d2c307439815d7334062f91adc1766b9efcb549e511c3cfffbe1d5e89734d44fce
         | 
| 7 | 
            +
              data.tar.gz: f38b14402f480377bf98570315b532554a33358747da8e3778dcc8920ff94bb83079abb81c50363aa30a989a2afa3e10a655384df20cf9cf93037a1e07bbb39d
         | 
| @@ -32,6 +32,10 @@ | |
| 32 32 | 
             
              var VISA_PATTERN_GWF = /GWF\d{9}/g
         | 
| 33 33 | 
             
              var VISA_PATTERN_GB = /GB\d{12}/g
         | 
| 34 34 |  | 
| 35 | 
            +
              // 2 valid letters - optional +/space - 6 digits with optional +/spaces every 2 digits (to account for '12 34 56') - optional +/space - 1 valid letter. Case insensitive.
         | 
| 36 | 
            +
              // e.g. 'AB123456A', 'AB 12 34 56 A', 'ab 123456 a', 'ab 12 34 56 a', 'AB+12+34+56+A'
         | 
| 37 | 
            +
              var NATIONAL_INSURANCE_NUMBER = /[A-CEGHJ-OPR-TW-Z]{2}(\s+|\++)?(\d{2}(\s+|\++)?){3}[A-D]/gi
         | 
| 38 | 
            +
             | 
| 35 39 | 
             
              function shouldStripDates () {
         | 
| 36 40 | 
             
                var metas = document.querySelectorAll('meta[name="govuk:ga4-strip-dates"]')
         | 
| 37 41 | 
             
                return metas.length > 0
         | 
| @@ -104,6 +108,7 @@ | |
| 104 108 | 
             
                stripped = stripped.replace(STATE_PATTERN, 'state=[state]')
         | 
| 105 109 | 
             
                stripped = stripped.replace(VISA_PATTERN_GWF, '[gwf number]')
         | 
| 106 110 | 
             
                stripped = stripped.replace(VISA_PATTERN_GB, '[gb eori number]')
         | 
| 111 | 
            +
                stripped = stripped.replace(NATIONAL_INSURANCE_NUMBER, '[ni number]')
         | 
| 107 112 | 
             
                stripped = this.stripQueryStringParameters(stripped)
         | 
| 108 113 |  | 
| 109 114 | 
             
                if (this.stripDatePII === true) {
         | 
| @@ -239,6 +239,7 @@ | |
| 239 239 | 
             
                NavigationStart: 41,
         | 
| 240 240 | 
             
                PerformanceEntryReceived: 42,
         | 
| 241 241 | 
             
                PerformanceEntryProcessed: 43,
         | 
| 242 | 
            +
                TrackingParamAdded: 44,
         | 
| 242 243 | 
             
                // Errors
         | 
| 243 244 | 
             
                PerformanceObserverError: 51,
         | 
| 244 245 | 
             
                InputEventPermissionError: 52,
         | 
| @@ -336,7 +337,7 @@ | |
| 336 337 | 
             
                return str;
         | 
| 337 338 | 
             
              }
         | 
| 338 339 |  | 
| 339 | 
            -
              var VERSION = "4.0. | 
| 340 | 
            +
              var VERSION = "4.0.32";
         | 
| 340 341 | 
             
              /**
         | 
| 341 342 | 
             
              * Returns the version of the script as a float to be stored in legacy systems that do not support
         | 
| 342 343 | 
             
              * string versions.
         | 
| @@ -667,6 +668,35 @@ | |
| 667 668 | 
             
                return selector;
         | 
| 668 669 | 
             
              }
         | 
| 669 670 |  | 
| 671 | 
            +
              var KNOWN_TRACKING_PARAMS = [
         | 
| 672 | 
            +
                "utm_source",
         | 
| 673 | 
            +
                "utm_campaign",
         | 
| 674 | 
            +
                "utm_medium",
         | 
| 675 | 
            +
                "utm_term",
         | 
| 676 | 
            +
                "utm_content",
         | 
| 677 | 
            +
              ];
         | 
| 678 | 
            +
              /**
         | 
| 679 | 
            +
              * Add known tracking parameters to the custom data storage.
         | 
| 680 | 
            +
              */
         | 
| 681 | 
            +
              function getTrackingParams() {
         | 
| 682 | 
            +
                var trackingParams = {};
         | 
| 683 | 
            +
                if (location.search && URLSearchParams) {
         | 
| 684 | 
            +
                  var p = new URLSearchParams(location.search);
         | 
| 685 | 
            +
                  for (
         | 
| 686 | 
            +
                    var _i = 0, KNOWN_TRACKING_PARAMS_1 = KNOWN_TRACKING_PARAMS;
         | 
| 687 | 
            +
                    _i < KNOWN_TRACKING_PARAMS_1.length;
         | 
| 688 | 
            +
                    _i++
         | 
| 689 | 
            +
                  ) {
         | 
| 690 | 
            +
                    var key = KNOWN_TRACKING_PARAMS_1[_i];
         | 
| 691 | 
            +
                    var value = p.get(key);
         | 
| 692 | 
            +
                    if (value) {
         | 
| 693 | 
            +
                      trackingParams[key] = value;
         | 
| 694 | 
            +
                    }
         | 
| 695 | 
            +
                  }
         | 
| 696 | 
            +
                }
         | 
| 697 | 
            +
                return trackingParams;
         | 
| 698 | 
            +
              }
         | 
| 699 | 
            +
             | 
| 670 700 | 
             
              var sessionValue = 0;
         | 
| 671 701 | 
             
              var sessionEntries = [];
         | 
| 672 702 | 
             
              var sessionAttributions = [];
         | 
| @@ -816,13 +846,11 @@ | |
| 816 846 | 
             
                    processingTime: clamp(floor(interaction.processingTime)),
         | 
| 817 847 | 
             
                    presentationDelay: clamp(floor(interaction.startTime + interaction.duration - interaction.processingEnd)),
         | 
| 818 848 | 
             
                  },
         | 
| 819 | 
            -
                  attribution:  | 
| 820 | 
            -
                  ? {
         | 
| 821 | 
            -
                    elementSelector: interaction.selector,
         | 
| 822 | 
            -
                    elementType: ((_a = interaction.target) === null || _a === void 0 ? void 0 : _a.nodeName) || "",
         | 
| 849 | 
            +
                  attribution: {
         | 
| 823 850 | 
             
                    eventType: interaction.name,
         | 
| 824 | 
            -
             | 
| 825 | 
            -
             | 
| 851 | 
            +
                    elementSelector: interaction.selector || null,
         | 
| 852 | 
            +
                    elementType: ((_a = interaction.target) === null || _a === void 0 ? void 0 : _a.nodeName) || null,
         | 
| 853 | 
            +
                  },
         | 
| 826 854 | 
             
                };
         | 
| 827 855 | 
             
              }
         | 
| 828 856 | 
             
              function getInteractionCount() {
         | 
| @@ -2085,13 +2113,18 @@ | |
| 2085 2113 | 
             
                }
         | 
| 2086 2114 | 
             
                // Return an array containing the top & left coordinates of the element.
         | 
| 2087 2115 | 
             
                // from http://www.quirksmode.org/js/findpos.html
         | 
| 2088 | 
            -
                function findPos( | 
| 2116 | 
            +
                function findPos(el) {
         | 
| 2089 2117 | 
             
                  var curleft = 0;
         | 
| 2090 2118 | 
             
                  var curtop = 0;
         | 
| 2091 | 
            -
                  while ( | 
| 2092 | 
            -
                     | 
| 2093 | 
            -
             | 
| 2094 | 
            -
             | 
| 2119 | 
            +
                  while (el) {
         | 
| 2120 | 
            +
                    try {
         | 
| 2121 | 
            +
                      curleft += el.offsetLeft;
         | 
| 2122 | 
            +
                      curtop += el.offsetTop;
         | 
| 2123 | 
            +
                      el = el.offsetParent;
         | 
| 2124 | 
            +
                    } catch (e) {
         | 
| 2125 | 
            +
                      // If we get an exception, just return the current values.
         | 
| 2126 | 
            +
                      return [curleft, curtop];
         | 
| 2127 | 
            +
                    }
         | 
| 2095 2128 | 
             
                  }
         | 
| 2096 2129 | 
             
                  return [curleft, curtop];
         | 
| 2097 2130 | 
             
                }
         | 
| @@ -2163,6 +2196,15 @@ | |
| 2163 2196 | 
             
                    // with LUX.markLoadTime()
         | 
| 2164 2197 | 
             
                    _markLoadTime();
         | 
| 2165 2198 | 
             
                  }
         | 
| 2199 | 
            +
                  // Store any tracking parameters as custom data
         | 
| 2200 | 
            +
                  var trackingParams = getTrackingParams();
         | 
| 2201 | 
            +
                  for (var key in trackingParams) {
         | 
| 2202 | 
            +
                    logger.logEvent(LogEvent.TrackingParamAdded, [
         | 
| 2203 | 
            +
                      key,
         | 
| 2204 | 
            +
                      trackingParams[key],
         | 
| 2205 | 
            +
                    ]);
         | 
| 2206 | 
            +
                    addCustomDataValue("_" + key, trackingParams[key]);
         | 
| 2207 | 
            +
                  }
         | 
| 2166 2208 | 
             
                  var sIx = "";
         | 
| 2167 2209 | 
             
                  var INP = getINPDetails();
         | 
| 2168 2210 | 
             
                  // If we haven't already sent an interaction beacon, check for interaction metrics and include
         | 
| @@ -67,17 +67,11 @@ $thumbnail-icon-border-colour: govuk-colour("mid-grey"); | |
| 67 67 | 
             
              margin: 0 0 govuk-spacing(3);
         | 
| 68 68 | 
             
              color: $govuk-secondary-text-colour;
         | 
| 69 69 | 
             
              @include govuk-font($size: 19);
         | 
| 70 | 
            +
              @include govuk-text-break-word;
         | 
| 70 71 |  | 
| 71 72 | 
             
              &:last-of-type {
         | 
| 72 73 | 
             
                margin-bottom: 0;
         | 
| 73 74 | 
             
              }
         | 
| 74 | 
            -
             | 
| 75 | 
            -
              .gem-c-attachment__attribute {
         | 
| 76 | 
            -
                // From the Design System
         | 
| 77 | 
            -
                // Automatic wrapping for unbreakable text (e.g. URLs)
         | 
| 78 | 
            -
                word-wrap: break-word; // Fallback for older browsers only
         | 
| 79 | 
            -
                overflow-wrap: break-word;
         | 
| 80 | 
            -
              }
         | 
| 81 75 | 
             
            }
         | 
| 82 76 |  | 
| 83 77 | 
             
            .govspeak,
         | 
| @@ -106,6 +100,10 @@ $thumbnail-icon-border-colour: govuk-colour("mid-grey"); | |
| 106 100 | 
             
                padding: 0;
         | 
| 107 101 | 
             
              }
         | 
| 108 102 |  | 
| 103 | 
            +
              .gem-c-attachment__metadata {
         | 
| 104 | 
            +
                color: $govuk-print-text-colour;
         | 
| 105 | 
            +
              }
         | 
| 106 | 
            +
             | 
| 109 107 | 
             
              .gem-c-attachment__metadata,
         | 
| 110 108 | 
             
              .gem-c-attachment__metadata .govuk-link::after {
         | 
| 111 109 | 
             
                font-size: 12pt;
         | 
| @@ -28,92 +28,3 @@ | |
| 28 28 | 
             
                text-align: start;
         | 
| 29 29 | 
             
              }
         | 
| 30 30 | 
             
            }
         | 
| 31 | 
            -
             | 
| 32 | 
            -
            @include govuk-media-query($media-type: print) {
         | 
| 33 | 
            -
              // stylelint-disable max-nesting-depth
         | 
| 34 | 
            -
             | 
| 35 | 
            -
              .gem-c-govspeak {
         | 
| 36 | 
            -
                a[href^="/"]:after,a[href^="http://"]:after,a[href^="https://"]:after {
         | 
| 37 | 
            -
                  content: " (" attr(href) ")";
         | 
| 38 | 
            -
                  font-size: 90%;
         | 
| 39 | 
            -
                  word-wrap: break-word;
         | 
| 40 | 
            -
                }
         | 
| 41 | 
            -
             | 
| 42 | 
            -
                .media-player {
         | 
| 43 | 
            -
                  display: none;
         | 
| 44 | 
            -
                }
         | 
| 45 | 
            -
             | 
| 46 | 
            -
                .info-notice,
         | 
| 47 | 
            -
                .help-notice,
         | 
| 48 | 
            -
                .call-to-action {
         | 
| 49 | 
            -
                  margin: govuk-spacing(3) 0;
         | 
| 50 | 
            -
                }
         | 
| 51 | 
            -
             | 
| 52 | 
            -
                .call-to-action {
         | 
| 53 | 
            -
                  background: none;
         | 
| 54 | 
            -
                  border: 1pt solid $govuk-border-colour;
         | 
| 55 | 
            -
                  padding: govuk-spacing(3);
         | 
| 56 | 
            -
                }
         | 
| 57 | 
            -
             | 
| 58 | 
            -
                .help-notice p {
         | 
| 59 | 
            -
                  font-weight: 700;
         | 
| 60 | 
            -
                }
         | 
| 61 | 
            -
             | 
| 62 | 
            -
                .fraction {
         | 
| 63 | 
            -
                  img {
         | 
| 64 | 
            -
                    display: inline-block;
         | 
| 65 | 
            -
                    margin-bottom: -7px;
         | 
| 66 | 
            -
                  }
         | 
| 67 | 
            -
                }
         | 
| 68 | 
            -
             | 
| 69 | 
            -
                .attachment {
         | 
| 70 | 
            -
                  margin: govuk-spacing(6) 0;
         | 
| 71 | 
            -
             | 
| 72 | 
            -
                  &:first-child {
         | 
| 73 | 
            -
                    margin-top: 0;
         | 
| 74 | 
            -
                  }
         | 
| 75 | 
            -
             | 
| 76 | 
            -
                  .attachment-thumb {
         | 
| 77 | 
            -
                    display: none;
         | 
| 78 | 
            -
                  }
         | 
| 79 | 
            -
             | 
| 80 | 
            -
                  .attachment-details {
         | 
| 81 | 
            -
                    .download {
         | 
| 82 | 
            -
                      display: block;
         | 
| 83 | 
            -
                    }
         | 
| 84 | 
            -
                  }
         | 
| 85 | 
            -
             | 
| 86 | 
            -
                  .accessibility-warning {
         | 
| 87 | 
            -
                    h2 {
         | 
| 88 | 
            -
                      @include govuk-font(16);
         | 
| 89 | 
            -
                    }
         | 
| 90 | 
            -
             | 
| 91 | 
            -
                    .toggler {
         | 
| 92 | 
            -
                      display: none;
         | 
| 93 | 
            -
                    }
         | 
| 94 | 
            -
                  }
         | 
| 95 | 
            -
                }
         | 
| 96 | 
            -
             | 
| 97 | 
            -
                .footnotes {
         | 
| 98 | 
            -
                  border-top: 1px solid $govuk-text-colour;
         | 
| 99 | 
            -
             | 
| 100 | 
            -
                  a[role="doc-backlink"] {
         | 
| 101 | 
            -
                    display: none;
         | 
| 102 | 
            -
                  }
         | 
| 103 | 
            -
                }
         | 
| 104 | 
            -
             | 
| 105 | 
            -
                .legislative-list {
         | 
| 106 | 
            -
                  padding-left: 0;
         | 
| 107 | 
            -
             | 
| 108 | 
            -
                  &,
         | 
| 109 | 
            -
                  ol {
         | 
| 110 | 
            -
                    list-style: none;
         | 
| 111 | 
            -
                  }
         | 
| 112 | 
            -
                }
         | 
| 113 | 
            -
             | 
| 114 | 
            -
                .mc-toggle-button,
         | 
| 115 | 
            -
                .mc-chart-container {
         | 
| 116 | 
            -
                  display: none;
         | 
| 117 | 
            -
                }
         | 
| 118 | 
            -
              }
         | 
| 119 | 
            -
            }
         | 
| @@ -51,5 +51,12 @@ | |
| 51 51 | 
             
              .gem-c-heading--padding[class*="--border-top"] {
         | 
| 52 52 | 
             
                padding-top: govuk-spacing(3);
         | 
| 53 53 | 
             
              }
         | 
| 54 | 
            +
             | 
| 55 | 
            +
              .gem-c-heading--inverse {
         | 
| 56 | 
            +
                .gem-c-heading__context,
         | 
| 57 | 
            +
                .gem-c-heading__text {
         | 
| 58 | 
            +
                  color: $govuk-print-text-colour;
         | 
| 59 | 
            +
                }
         | 
| 60 | 
            +
              }
         | 
| 54 61 | 
             
            }
         | 
| 55 62 | 
             
            // stylelint-enable declaration-no-important
         | 
| @@ -99,5 +99,15 @@ | |
| 99 99 | 
             
                  color: $govuk-print-text-colour !important;
         | 
| 100 100 | 
             
                }
         | 
| 101 101 | 
             
              }
         | 
| 102 | 
            +
             | 
| 103 | 
            +
              .gem-c-metadata--inverse-padded,
         | 
| 104 | 
            +
              .gem-c-metadata--inverse-padded .gem-c-metadata__title {
         | 
| 105 | 
            +
                padding: 0;
         | 
| 106 | 
            +
              }
         | 
| 107 | 
            +
             | 
| 108 | 
            +
              .gem-c-metadata--inverse-padded .gem-c-metadata__list {
         | 
| 109 | 
            +
                margin-left: 0;
         | 
| 110 | 
            +
                margin-right: 0;
         | 
| 111 | 
            +
              }
         | 
| 102 112 | 
             
            }
         | 
| 103 113 | 
             
            // stylelint-enable declaration-no-important
         | 
    
        data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_attachment.scss
    CHANGED
    
    | @@ -19,6 +19,10 @@ | |
| 19 19 |  | 
| 20 20 | 
             
                @include govuk-media-query($media-type: print) {
         | 
| 21 21 | 
             
                  padding-left: 0;
         | 
| 22 | 
            +
             | 
| 23 | 
            +
                  &:first-child {
         | 
| 24 | 
            +
                    margin-top: 0;
         | 
| 25 | 
            +
                  }
         | 
| 22 26 | 
             
                }
         | 
| 23 27 |  | 
| 24 28 | 
             
                .attachment-thumb {
         | 
| @@ -44,7 +48,7 @@ | |
| 44 48 | 
             
                  }
         | 
| 45 49 |  | 
| 46 50 | 
             
                  @include govuk-media-query($media-type: print) {
         | 
| 47 | 
            -
                     | 
| 51 | 
            +
                    display: none;
         | 
| 48 52 | 
             
                  }
         | 
| 49 53 | 
             
                }
         | 
| 50 54 |  | 
| @@ -82,6 +86,12 @@ | |
| 82 86 | 
             
                    }
         | 
| 83 87 | 
             
                  }
         | 
| 84 88 |  | 
| 89 | 
            +
                  @include govuk-media-query($media-type: print) {
         | 
| 90 | 
            +
                    .download {
         | 
| 91 | 
            +
                      display: block;
         | 
| 92 | 
            +
                    }
         | 
| 93 | 
            +
                  }
         | 
| 94 | 
            +
             | 
| 85 95 | 
             
                  .preview {
         | 
| 86 96 | 
             
                    padding-right: govuk-spacing(3);
         | 
| 87 97 | 
             
                  }
         | 
| @@ -98,6 +108,12 @@ | |
| 98 108 | 
             
                      margin: 0;
         | 
| 99 109 | 
             
                      @include govuk-font($size: 16);
         | 
| 100 110 | 
             
                    }
         | 
| 111 | 
            +
             | 
| 112 | 
            +
                    @include govuk-media-query($media-type: print) {
         | 
| 113 | 
            +
                      .toggler {
         | 
| 114 | 
            +
                        display: none;
         | 
| 115 | 
            +
                      }
         | 
| 116 | 
            +
                    }
         | 
| 101 117 | 
             
                  }
         | 
| 102 118 |  | 
| 103 119 | 
             
                  .js-hidden {
         | 
    
        data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_call-to-action.scss
    CHANGED
    
    | @@ -13,5 +13,12 @@ | |
| 13 13 | 
             
                background-color: govuk-colour("light-grey");
         | 
| 14 14 | 
             
                padding: govuk-spacing(6);
         | 
| 15 15 | 
             
                padding-bottom: govuk-spacing(2);
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                @include govuk-media-query($media-type: print) {
         | 
| 18 | 
            +
                  background: none;
         | 
| 19 | 
            +
                  border: 1pt solid $govuk-border-colour;
         | 
| 20 | 
            +
                  padding: govuk-spacing(3);
         | 
| 21 | 
            +
                  margin: govuk-spacing(3) 0;
         | 
| 22 | 
            +
                }
         | 
| 16 23 | 
             
              }
         | 
| 17 24 | 
             
            }
         | 
| @@ -310,4 +310,18 @@ | |
| 310 310 | 
             
                // It's reapplied to captions because Firefox can't hide
         | 
| 311 311 | 
             
                // table captions unless it's applied directly to it. Go figure.
         | 
| 312 312 | 
             
              }
         | 
| 313 | 
            +
             | 
| 314 | 
            +
              @include govuk-media-query($media-type: print) {
         | 
| 315 | 
            +
                .mc-toggle-button,
         | 
| 316 | 
            +
                .mc-chart-container {
         | 
| 317 | 
            +
                  display: none;
         | 
| 318 | 
            +
                }
         | 
| 319 | 
            +
             | 
| 320 | 
            +
                // stylelint-disable selector-no-qualifying-type
         | 
| 321 | 
            +
                // Displays the original table when printing
         | 
| 322 | 
            +
                table.js-barchart-table,
         | 
| 323 | 
            +
                table.js-barchart-table caption {
         | 
| 324 | 
            +
                  display: block;
         | 
| 325 | 
            +
                }
         | 
| 326 | 
            +
              }
         | 
| 313 327 | 
             
            }
         | 
| @@ -6,6 +6,8 @@ | |
| 6 6 | 
             
            // - alphagov/whitehall: ✔︎
         | 
| 7 7 | 
             
            // - alphagov/govspeak: ✘
         | 
| 8 8 |  | 
| 9 | 
            +
            // stylelint-disable max-nesting-depth
         | 
| 10 | 
            +
             | 
| 9 11 | 
             
            .govspeak, // Legacy class name that's still used in some content items - needs to be kept until `.govspeak` is removed from the content items.
         | 
| 10 12 | 
             
            .gem-c-govspeak {
         | 
| 11 13 | 
             
              .fraction {
         | 
| @@ -18,6 +20,10 @@ | |
| 18 20 | 
             
                  display: inline-block;
         | 
| 19 21 | 
             
                  width: auto;
         | 
| 20 22 | 
             
                  margin: 0 0 -5px;
         | 
| 23 | 
            +
             | 
| 24 | 
            +
                  @include govuk-media-query($media-type: print) {
         | 
| 25 | 
            +
                    margin-bottom: -7px;
         | 
| 26 | 
            +
                  }
         | 
| 21 27 | 
             
                }
         | 
| 22 28 | 
             
              }
         | 
| 23 29 | 
             
            }
         | 
| @@ -12,5 +12,9 @@ | |
| 12 12 | 
             
                border-left: 10px solid govuk-colour("mid-grey");
         | 
| 13 13 | 
             
                padding: govuk-spacing(4) 0 0.1234px govuk-spacing(4); // non-zero padding on bottom keeps margin of last element inside parent, simulating padding
         | 
| 14 14 | 
             
                margin: 0 0 govuk-spacing(4) 0;
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                @include govuk-media-query($media-type: print) {
         | 
| 17 | 
            +
                  margin: govuk-spacing(3) 0;
         | 
| 18 | 
            +
                }
         | 
| 15 19 | 
             
              }
         | 
| 16 20 | 
             
            }
         | 
    
        data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_typography.scss
    CHANGED
    
    | @@ -33,29 +33,20 @@ | |
| 33 33 | 
             
              // Block quotes
         | 
| 34 34 |  | 
| 35 35 | 
             
              blockquote {
         | 
| 36 | 
            -
                padding: 0 0 0 govuk-spacing( | 
| 37 | 
            -
                margin: 0;
         | 
| 36 | 
            +
                padding: 0 0 0 govuk-spacing(6);
         | 
| 37 | 
            +
                margin: 0 0 govuk-spacing(4) 0;
         | 
| 38 38 | 
             
                border: 0;
         | 
| 39 39 |  | 
| 40 | 
            -
                @include govuk-media-query($from: desktop) {
         | 
| 41 | 
            -
                  margin: 0 0 0 (- govuk-spacing(6));
         | 
| 42 | 
            -
                }
         | 
| 43 | 
            -
             | 
| 44 40 | 
             
                p {
         | 
| 45 | 
            -
                   | 
| 46 | 
            -
             | 
| 47 | 
            -
                  @include govuk-media-query($from: tablet) {
         | 
| 48 | 
            -
                    padding-left: govuk-spacing(6);
         | 
| 49 | 
            -
                  }
         | 
| 41 | 
            +
                  position: relative;
         | 
| 50 42 |  | 
| 51 | 
            -
                   | 
| 43 | 
            +
                  &:first-of-type::before {
         | 
| 52 44 | 
             
                    content: "\201C";
         | 
| 53 | 
            -
                     | 
| 54 | 
            -
                     | 
| 55 | 
            -
                    margin-left: (- govuk-spacing(3));
         | 
| 45 | 
            +
                    position: absolute;
         | 
| 46 | 
            +
                    right: 100%;
         | 
| 56 47 | 
             
                  }
         | 
| 57 48 |  | 
| 58 | 
            -
                  &:last- | 
| 49 | 
            +
                  &:last-of-type::after {
         | 
| 59 50 | 
             
                    content: "\201D";
         | 
| 60 51 | 
             
                  }
         | 
| 61 52 | 
             
                }
         | 
| @@ -97,6 +88,14 @@ | |
| 97 88 | 
             
                font-style: normal;
         | 
| 98 89 | 
             
                font-weight: inherit;
         | 
| 99 90 | 
             
              }
         | 
| 91 | 
            +
             | 
| 92 | 
            +
              @include govuk-media-query($media-type: print) {
         | 
| 93 | 
            +
                a[href^="/"]:after,a[href^="http://"]:after,a[href^="https://"]:after {
         | 
| 94 | 
            +
                  content: " (" attr(href) ")";
         | 
| 95 | 
            +
                  font-size: 90%;
         | 
| 96 | 
            +
                  word-wrap: break-word;
         | 
| 97 | 
            +
                }
         | 
| 98 | 
            +
              }
         | 
| 100 99 | 
             
            }
         | 
| 101 100 |  | 
| 102 101 | 
             
            .gem-c-govspeak--inverse {
         | 
| @@ -106,4 +105,12 @@ | |
| 106 105 | 
             
                @include govuk-link-common;
         | 
| 107 106 | 
             
                @include govuk-link-style-inverse;
         | 
| 108 107 | 
             
              }
         | 
| 108 | 
            +
             | 
| 109 | 
            +
              @include govuk-media-query($media-type: print) {
         | 
| 110 | 
            +
                color: $govuk-print-text-colour;
         | 
| 111 | 
            +
             | 
| 112 | 
            +
                a:link {
         | 
| 113 | 
            +
                  color: $govuk-print-text-colour;
         | 
| 114 | 
            +
                }
         | 
| 115 | 
            +
              }
         | 
| 109 116 | 
             
            }
         | 
    
        data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_warning-callout.scss
    CHANGED
    
    | @@ -6,6 +6,8 @@ | |
| 6 6 | 
             
            // - alphagov/whitehall: ✔︎
         | 
| 7 7 | 
             
            // - alphagov/govspeak: ✔︎
         | 
| 8 8 |  | 
| 9 | 
            +
            // stylelint-disable max-nesting-depth
         | 
| 10 | 
            +
             | 
| 9 11 | 
             
            .govspeak, // Legacy class name that's still used in some content items - needs to be kept until `.govspeak` is removed from the content items.
         | 
| 10 12 | 
             
            .gem-c-govspeak {
         | 
| 11 13 | 
             
              @import "govuk/components/warning-text/warning-text";
         | 
| @@ -27,5 +29,14 @@ | |
| 27 29 | 
             
                p {
         | 
| 28 30 | 
             
                  @include govuk-font($size: 19, $weight: bold);
         | 
| 29 31 | 
             
                }
         | 
| 32 | 
            +
             | 
| 33 | 
            +
                @include govuk-media-query($media-type: print) {
         | 
| 34 | 
            +
                  margin: govuk-spacing(3) 0;
         | 
| 35 | 
            +
             | 
| 36 | 
            +
                  &::before {
         | 
| 37 | 
            +
                    background-color: govuk-colour("white");
         | 
| 38 | 
            +
                    color: $govuk-print-text-colour;
         | 
| 39 | 
            +
                  }
         | 
| 40 | 
            +
                }
         | 
| 30 41 | 
             
              }
         | 
| 31 42 | 
             
            }
         | 
| @@ -225,8 +225,10 @@ examples: | |
| 225 225 | 
             
                    url: https://www.gov.uk/government/publications/smart-meters-unlocking-the-future/smart-meters-unlocking-the-future
         | 
| 226 226 | 
             
                    type: html
         | 
| 227 227 | 
             
              external_attachment:
         | 
| 228 | 
            +
                description: |
         | 
| 229 | 
            +
                  The word break helper (`govuk-text-break-word`) is used from the design system to forcibly break URLs across multiple lines when they wouldn't otherwise fit.
         | 
| 228 230 | 
             
                data:
         | 
| 229 231 | 
             
                  attachment:
         | 
| 230 232 | 
             
                    title: "Architects Registration Board annual report 2021"
         | 
| 231 | 
            -
                    url: https://arb.org.uk/ | 
| 233 | 
            +
                    url: https://arb.org.uk/wpcontent/uploads/ARBAnnualReportandFinancialStatement2021published.pdf
         | 
| 232 234 | 
             
                    type: external
         | 
| @@ -50,7 +50,12 @@ examples: | |
| 50 50 | 
             
                    </ul>
         | 
| 51 51 | 
             
                    <p>A paragraph of text following the list. I'm not going to talk about the words anymore.</p>
         | 
| 52 52 | 
             
                    <blockquote>
         | 
| 53 | 
            -
                      <p>This text is inside a blockquote.</p>
         | 
| 53 | 
            +
                      <p>This text is inside a blockquote. It is being made deliberately long so as to wrap onto a second line, which hopefully has happened by now.</p>
         | 
| 54 | 
            +
                    </blockquote>
         | 
| 55 | 
            +
                    <blockquote>
         | 
| 56 | 
            +
                      <p>This text is inside a blockquote with a citation.</p>
         | 
| 57 | 
            +
                      <p>It contains more than one paragraph, and also has extra words in order to make it wrap onto a second line so we can check that everything's okay.</p>
         | 
| 58 | 
            +
                      <cite>John Blockquote, inventor of the blockquote</cite>
         | 
| 54 59 | 
             
                    </blockquote>
         | 
| 55 60 | 
             
                    <p>Yet another paragraph of text. This is starting to sound familiar.</p>
         | 
| 56 61 | 
             
                    <ol>
         | 
| @@ -465,8 +470,9 @@ examples: | |
| 465 470 | 
             
                data:
         | 
| 466 471 | 
             
                  block: |
         | 
| 467 472 | 
             
                    <blockquote>
         | 
| 468 | 
            -
                      <p> | 
| 469 | 
            -
                      <p | 
| 473 | 
            +
                      <p>This text is inside a blockquote with a citation.</p>
         | 
| 474 | 
            +
                      <p>It contains more than one paragraph, and also has extra words in order to make it wrap onto a second line so we can check that everything's okay.</p>
         | 
| 475 | 
            +
                      <cite>John Blockquote, inventor of the blockquote</cite>
         | 
| 470 476 | 
             
                    </blockquote>
         | 
| 471 477 | 
             
              buttons:
         | 
| 472 478 | 
             
                data:
         | 
| @@ -680,40 +686,40 @@ examples: | |
| 680 686 |  | 
| 681 687 | 
             
                    <ul>
         | 
| 682 688 | 
             
                    <li>recognise, find, name and write fractions <span class="fraction">
         | 
| 683 | 
            -
                      <img alt="1/3" height="27" src="https:// | 
| 689 | 
            +
                      <img alt="1/3" height="27" src="https://www.gov.uk/assets/whitehall/fractions/1_3-fe69761729c6cdf616c7982b834026ddcac0bd05f5260eec5786a64000b31871.png"></span>
         | 
| 684 690 | 
             
                    , <span class="fraction">
         | 
| 685 | 
            -
                      <img alt="1/4" height="27" src="https:// | 
| 691 | 
            +
                      <img alt="1/4" height="27" src="https://www.gov.uk/assets/whitehall/fractions/1_4-052eceefaa4c6b9ceb93a968cd43c98abda997f5cc0921cba6da54a6939e27be.png"></span>
         | 
| 686 692 | 
             
                    , <span class="fraction">
         | 
| 687 | 
            -
                      <img alt="2/4" height="27" src="https:// | 
| 693 | 
            +
                      <img alt="2/4" height="27" src="https://www.gov.uk/assets/whitehall/fractions/2_4-36475f1a745ea7815d30bb31eef87e8f4986a7a3114eda2b3f381051a07e01e0.png"></span>
         | 
| 688 694 | 
             
                     and <span class="fraction">
         | 
| 689 | 
            -
                      <img alt="3/4" height="27" src="https:// | 
| 695 | 
            +
                      <img alt="3/4" height="27" src="https://www.gov.uk/assets/whitehall/fractions/3_4-281b1fd73cc0a0d5c11f7b2c413ae1d8186d41b31413cad7d7ee3c6f495c7f02.png"></span>
         | 
| 690 696 | 
             
                     of a length, shape, set of objects or quantity</li>
         | 
| 691 697 | 
             
                      <li>write simple fractions, for example <span class="fraction">
         | 
| 692 | 
            -
                      <img alt="1/2" height="27" src="https:// | 
| 698 | 
            +
                      <img alt="1/2" height="27" src="https://www.gov.uk/assets/whitehall/fractions/1_2-fd84dcded290cee401a0758d5f78a2e031b1c601271d74c7e783e31dfce026d0.png"></span>
         | 
| 693 699 | 
             
                     of 6 = 3 and recognise the equivalence of <span class="fraction">
         | 
| 694 | 
            -
                      <img alt="2/4" height="27" src="https:// | 
| 700 | 
            +
                      <img alt="2/4" height="27" src="https://www.gov.uk/assets/whitehall/fractions/2_4-36475f1a745ea7815d30bb31eef87e8f4986a7a3114eda2b3f381051a07e01e0.png"></span>
         | 
| 695 701 | 
             
                    and <span class="fraction">
         | 
| 696 | 
            -
                      <img alt="1/2" height="27" src="https:// | 
| 702 | 
            +
                      <img alt="1/2" height="27" src="https://www.gov.uk/assets/whitehall/fractions/1_2-fd84dcded290cee401a0758d5f78a2e031b1c601271d74c7e783e31dfce026d0.png"></span>
         | 
| 697 703 | 
             
                    </li>
         | 
| 698 704 | 
             
                    </ul>
         | 
| 699 705 | 
             
                    <div class="call-to-action">
         | 
| 700 706 | 
             
                      <h4>Notes and guidance (non-statutory)</h4>
         | 
| 701 707 |  | 
| 702 708 | 
             
                      <p>Pupils use fractions as ‘fractions of’ discrete and continuous quantities by solving problems using shapes, objects and quantities. They connect unit fractions to equal sharing and grouping, to numbers when they can be calculated, and to measures, finding fractions of lengths, quantities, sets of objects or shapes. They meet <span class="fraction">
         | 
| 703 | 
            -
                        <img alt="3/4" height="27" src="https:// | 
| 709 | 
            +
                        <img alt="3/4" height="27" src="https://www.gov.uk/assets/whitehall/fractions/3_4-281b1fd73cc0a0d5c11f7b2c413ae1d8186d41b31413cad7d7ee3c6f495c7f02.png"></span>
         | 
| 704 710 | 
             
                       as the first example of a non-unit fraction.<br><br>
         | 
| 705 711 | 
             
                      Pupils should count in fractions up to 10, starting from any number and using the <span class="fraction">
         | 
| 706 | 
            -
                          <img alt="1/2" height="27" src="https:// | 
| 712 | 
            +
                          <img alt="1/2" height="27" src="https://www.gov.uk/assets/whitehall/fractions/1_2-fd84dcded290cee401a0758d5f78a2e031b1c601271d74c7e783e31dfce026d0.png"></span>
         | 
| 707 713 | 
             
                       and <span class="fraction">
         | 
| 708 | 
            -
                          <img alt="2/4" height="27" src="https:// | 
| 714 | 
            +
                          <img alt="2/4" height="27" src="https://www.gov.uk/assets/whitehall/fractions/2_4-36475f1a745ea7815d30bb31eef87e8f4986a7a3114eda2b3f381051a07e01e0.png"></span>
         | 
| 709 715 | 
             
                        equivalence on the number line (for example, 1<span class="fraction">
         | 
| 710 | 
            -
                          <img alt="1/4" height="27" src="https:// | 
| 716 | 
            +
                          <img alt="1/4" height="27" src="https://www.gov.uk/assets/whitehall/fractions/1_4-052eceefaa4c6b9ceb93a968cd43c98abda997f5cc0921cba6da54a6939e27be.png"></span>
         | 
| 711 717 | 
             
                      , 1<span class="fraction">
         | 
| 712 | 
            -
                          <img alt="2/4" height="27" src="https:// | 
| 718 | 
            +
                          <img alt="2/4" height="27" src="https://www.gov.uk/assets/whitehall/fractions/2_4-36475f1a745ea7815d30bb31eef87e8f4986a7a3114eda2b3f381051a07e01e0.png"></span>
         | 
| 713 719 | 
             
                       (or 1<span class="fraction">
         | 
| 714 | 
            -
                          <img alt="1/2" height="27" src="https:// | 
| 720 | 
            +
                          <img alt="1/2" height="27" src="https://www.gov.uk/assets/whitehall/fractions/1_2-fd84dcded290cee401a0758d5f78a2e031b1c601271d74c7e783e31dfce026d0.png"></span>
         | 
| 715 721 | 
             
                      ), 1<span class="fraction">
         | 
| 716 | 
            -
                          <img alt="3/4" height="27" src="https:// | 
| 722 | 
            +
                          <img alt="3/4" height="27" src="https://www.gov.uk/assets/whitehall/fractions/3_4-281b1fd73cc0a0d5c11f7b2c413ae1d8186d41b31413cad7d7ee3c6f495c7f02.png"></span>
         | 
| 717 723 | 
             
                      , 2). This reinforces the concept of fractions as numbers and that they can add up to more than 1.
         | 
| 718 724 | 
             
                      </p>
         | 
| 719 725 | 
             
                    </div>
         | 
    
        metadata
    CHANGED
    
    | @@ -1,13 +1,13 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: govuk_publishing_components
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 56. | 
| 4 | 
            +
              version: 56.1.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - GOV.UK Dev
         | 
| 8 8 | 
             
            bindir: bin
         | 
| 9 9 | 
             
            cert_chain: []
         | 
| 10 | 
            -
            date: 2025-03- | 
| 10 | 
            +
            date: 2025-03-31 00:00:00.000000000 Z
         | 
| 11 11 | 
             
            dependencies:
         | 
| 12 12 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 13 13 | 
             
              name: govuk_app_config
         |