, however it
- // is unlikely that the default or govuk-label--s class would be used in this
- // case.
-
- // This adjustment will not work in browsers that do not support :not().
- // Users with these browsers will see the default size margin (5px larger).
-
- .govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl) + .govuk-hint {
- margin-bottom: govuk-spacing(2);
- }
-
- // Reduces margin-bottom of hint when used after the default legend (no class)
- // or govuk-fieldset__legend--s for better vertical alignment.
-
- // This adjustment will not work when the legend is outside the
, however
- // it is unlikely that the default or govuk-fieldset__legend--s class would be
- // used in this case.
-
- // This adjustment will not work in browsers that do not support :not().
- // Users with these browsers will see the default size margin (5px larger).
-
- .govuk-fieldset__legend:not(.govuk-fieldset__legend--m):not(.govuk-fieldset__legend--l):not(.govuk-fieldset__legend--xl) + .govuk-hint {
- margin-bottom: govuk-spacing(2);
- }
-
- // Reduces visual spacing of legend when there is a hint
-
- .govuk-fieldset__legend + .govuk-hint,
- .govuk-fieldset__legend + .govuk-hint {
- margin-top: -(govuk-spacing(1));
- }
-}
diff --git a/app/templates/components/components/input/_input.scss b/app/templates/components/components/input/_input.scss
deleted file mode 100644
index 1dc1f06d3..000000000
--- a/app/templates/components/components/input/_input.scss
+++ /dev/null
@@ -1,77 +0,0 @@
-@import "../../settings/all";
-@import "../../tools/all";
-@import "../../helpers/all";
-
-@import "../error-message/error-message";
-@import "../hint/hint";
-@import "../label/label";
-
-@include govuk-exports("govuk/component/input") {
- .govuk-input {
- @include govuk-font($size: 19);
- @include govuk-focusable;
-
- box-sizing: border-box;
- width: 100%;
- height: 40px;
- margin-top: 0;
-
- padding: govuk-spacing(1);
- // setting any background-color makes text invisible when changing colours to dark backgrounds in Firefox (https://bugzilla.mozilla.org/show_bug.cgi?id=1335476)
- // as background-color and color need to always be set together, color should not be set either
- border: $govuk-border-width-form-element solid $govuk-input-border-colour;
- border-radius: 0;
-
- // Disable inner shadow and remove rounded corners
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none;
- }
-
- .govuk-input::-webkit-outer-spin-button,
- .govuk-input::-webkit-inner-spin-button {
- margin: 0;
- -webkit-appearance: none;
- }
-
- .govuk-input[type="number"] {
- -moz-appearance: textfield;
- }
-
- .govuk-input--error {
- border: $govuk-border-width-form-element-error solid $govuk-error-colour;
- }
-
- // The ex measurements are based on the number of W's that can fit inside the input
- // Extra space is left on the right hand side to allow for the Safari prefill icon
- // Linear regression estimation based on visual tests: y = 1.76 + 1.81x
-
- .govuk-input--width-30 {
- max-width: 56ex + 3ex;
- }
-
- .govuk-input--width-20 {
- max-width: 38ex + 3ex;
- }
-
- .govuk-input--width-10 {
- max-width: 20ex + 3ex;
- }
-
- .govuk-input--width-5 {
- max-width: 10.8ex;
- }
-
- .govuk-input--width-4 {
- max-width: 9ex;
- }
-
- .govuk-input--width-3 {
- max-width: 7.2ex;
- }
-
- .govuk-input--width-2 {
- max-width: 5.4ex;
- }
-
-}
diff --git a/app/templates/components/components/inset-text/_inset-text.scss b/app/templates/components/components/inset-text/_inset-text.scss
deleted file mode 100644
index 524dc50c8..000000000
--- a/app/templates/components/components/inset-text/_inset-text.scss
+++ /dev/null
@@ -1,28 +0,0 @@
-@import "../../settings/all";
-@import "../../tools/all";
-@import "../../helpers/all";
-
-@include govuk-exports("govuk/component/inset-text") {
- .govuk-inset-text {
- @include govuk-font($size: 19);
- @include govuk-text-colour;
- padding: govuk-spacing(3);
- // Margin top intended to collapse
- // This adds an additional 10px to the paragraph above
- @include govuk-responsive-margin(6, "top");
- @include govuk-responsive-margin(6, "bottom");
-
- clear: both;
-
- border-left: $govuk-border-width-wide solid $govuk-border-colour;
-
- > :first-child {
- margin-top: 0;
- }
-
- > :only-child,
- > :last-child {
- margin-bottom: 0;
- }
- }
-}
diff --git a/app/templates/components/components/label/_label.scss b/app/templates/components/components/label/_label.scss
deleted file mode 100644
index bfe400e57..000000000
--- a/app/templates/components/components/label/_label.scss
+++ /dev/null
@@ -1,45 +0,0 @@
-@import "../../settings/all";
-@import "../../tools/all";
-@import "../../helpers/all";
-
-@include govuk-exports("govuk/component/label") {
- .govuk-label {
- @include govuk-font($size: 19);
- @include govuk-text-colour;
-
- display: block;
-
- margin-bottom: govuk-spacing(1);
- }
-
- // Modifiers that make labels look more like their equivalent headings
-
- .govuk-label--xl {
- @include govuk-font($size: 48, $weight: bold);
- margin-bottom: govuk-spacing(3);
- }
-
- .govuk-label--l {
- @include govuk-font($size: 36, $weight: bold);
- margin-bottom: govuk-spacing(3);
- }
-
- .govuk-label--m {
- @include govuk-font($size: 24, $weight: bold);
- margin-bottom: govuk-spacing(2);
- }
-
- .govuk-label--s {
- @include govuk-font($size: 19, $weight: bold);
- }
-
- // When the label is nested inside a heading, override the heading so that it
- // does not have a margin. Effectively we want to be able to treat the heading
- // as if it is not there.
- //
- // This breaks BEM conventions because it exists as a parent of the 'block',
- // so we can't really consider an element.
- .govuk-label-wrapper {
- margin: 0;
- }
-}
diff --git a/app/templates/components/components/radio-label/_label.scss b/app/templates/components/components/radio-label/_label.scss
deleted file mode 100644
index bfe400e57..000000000
--- a/app/templates/components/components/radio-label/_label.scss
+++ /dev/null
@@ -1,45 +0,0 @@
-@import "../../settings/all";
-@import "../../tools/all";
-@import "../../helpers/all";
-
-@include govuk-exports("govuk/component/label") {
- .govuk-label {
- @include govuk-font($size: 19);
- @include govuk-text-colour;
-
- display: block;
-
- margin-bottom: govuk-spacing(1);
- }
-
- // Modifiers that make labels look more like their equivalent headings
-
- .govuk-label--xl {
- @include govuk-font($size: 48, $weight: bold);
- margin-bottom: govuk-spacing(3);
- }
-
- .govuk-label--l {
- @include govuk-font($size: 36, $weight: bold);
- margin-bottom: govuk-spacing(3);
- }
-
- .govuk-label--m {
- @include govuk-font($size: 24, $weight: bold);
- margin-bottom: govuk-spacing(2);
- }
-
- .govuk-label--s {
- @include govuk-font($size: 19, $weight: bold);
- }
-
- // When the label is nested inside a heading, override the heading so that it
- // does not have a margin. Effectively we want to be able to treat the heading
- // as if it is not there.
- //
- // This breaks BEM conventions because it exists as a parent of the 'block',
- // so we can't really consider an element.
- .govuk-label-wrapper {
- margin: 0;
- }
-}
diff --git a/app/templates/components/components/radios/_radios.scss b/app/templates/components/components/radios/_radios.scss
deleted file mode 100644
index 074bb53cc..000000000
--- a/app/templates/components/components/radios/_radios.scss
+++ /dev/null
@@ -1,348 +0,0 @@
-@import "../../settings/all";
-@import "../../tools/all";
-@import "../../helpers/all";
-
-@import "../error-message/error-message";
-@import "../fieldset/fieldset";
-@import "../hint/hint";
-@import "../label/label";
-
-@include govuk-exports("govuk/component/radios") {
-
- $govuk-touch-target-size: 44px;
- $govuk-radios-size: 40px;
- $govuk-small-radios-size: 24px;
- $govuk-radios-label-padding-left-right: govuk-spacing(3);
- // When the default focus width is used on a curved edge it looks visually smaller.
- // So for the circular radios we bump the default to make it look visually consistent.
- $govuk-radios-focus-width: $govuk-focus-width + 1px;
-
- .govuk-radios__item {
- @include govuk-font($size: 19);
-
- display: block;
- position: relative;
-
- min-height: $govuk-radios-size;
-
- margin-bottom: govuk-spacing(2);
- padding-left: $govuk-radios-size;
-
- clear: left;
- }
-
- .govuk-radios__item:last-child,
- .govuk-radios__item:last-of-type {
- margin-bottom: 0;
- }
-
- .govuk-radios__input {
- $input-offset: ($govuk-touch-target-size - $govuk-radios-size) / 2;
-
- cursor: pointer;
-
- // IE8 doesnβt support pseudo-elements, so we donβt want to hide native
- // elements there.
- @include govuk-not-ie8 {
- position: absolute;
-
- z-index: 1;
- top: $input-offset * -1;
- left: $input-offset * -1;
-
- width: $govuk-touch-target-size;
- height: $govuk-touch-target-size;
- margin: 0;
-
- opacity: 0;
- }
-
- @include govuk-if-ie8 {
- margin-top: 10px;
- margin-right: $govuk-radios-size / -2;
- margin-left: $govuk-radios-size / -2;
- float: left;
-
- // add focus outline to input
- &:focus {
- outline: $govuk-focus-width solid $govuk-focus-colour;
- }
- }
- }
-
- .govuk-radios__label {
- display: inline-block;
- margin-bottom: 0;
- padding: 8px $govuk-radios-label-padding-left-right govuk-spacing(1);
- cursor: pointer;
- // remove 300ms pause on mobile
- -ms-touch-action: manipulation;
- touch-action: manipulation;
- }
-
- // ( ) Radio ring
- .govuk-radios__label::before {
- content: "";
- box-sizing: border-box;
- position: absolute;
- top: 0;
- left: 0;
-
- width: $govuk-radios-size;
- height: $govuk-radios-size;
-
- border: $govuk-border-width-form-element solid currentColor;
- border-radius: 50%;
- background: transparent;
- }
-
- // β’ Radio button
- //
- // We create the 'button' entirely out of 'border' so that they remain
- // 'filled' even when colours are overridden in the browser.
- .govuk-radios__label::after {
- content: "";
-
- position: absolute;
- top: govuk-spacing(2);
- left: govuk-spacing(2);
-
- width: 0;
- height: 0;
-
- border: govuk-spacing(2) solid currentColor;
- border-radius: 50%;
- opacity: 0;
- background: currentColor;
- }
-
- .govuk-radios__hint {
- display: block;
- padding-right: $govuk-radios-label-padding-left-right;
- padding-left: $govuk-radios-label-padding-left-right;
- }
-
- // Focused state
- .govuk-radios__input:focus + .govuk-radios__label::before {
- // Since box-shadows are removed when users customise their colours we set a
- // transparent outline that is shown instead.
- // https://accessibility.blog.gov.uk/2017/03/27/how-users-change-colours-on-websites/
- outline: $govuk-focus-width solid transparent;
- outline-offset: $govuk-focus-width;
- box-shadow: 0 0 0 $govuk-radios-focus-width $govuk-focus-colour;
- }
-
- // Selected state
- .govuk-radios__input:checked + .govuk-radios__label::after {
- opacity: 1;
- }
-
- // Disabled state
- .govuk-radios__input:disabled,
- .govuk-radios__input:disabled + .govuk-radios__label {
- cursor: default;
- }
-
- .govuk-radios__input:disabled + .govuk-radios__label {
- opacity: .5;
- }
-
- // =========================================================
- // Inline radios
- // =========================================================
-
- .govuk-radios--inline {
- @include mq ($from: tablet) {
- @include govuk-clearfix;
-
- .govuk-radios__item {
- margin-right: govuk-spacing(4);
- float: left;
- clear: none;
- }
- }
-
- // Prevent inline modifier being used with conditional reveals
- &.govuk-radios--conditional {
- .govuk-radios__item {
- margin-right: 0;
- float: none;
- }
- }
- }
-
- // =========================================================
- // Dividers ('or')
- // =========================================================
-
- .govuk-radios__divider {
- $govuk-divider-size: $govuk-radios-size !default;
- @include govuk-font($size: 19);
- @include govuk-text-colour;
- width: $govuk-divider-size;
- margin-bottom: govuk-spacing(2);
- text-align: center;
- }
-
- // =========================================================
- // Conditional reveals
- // =========================================================
-
- $conditional-border-width: $govuk-border-width-mobile;
- // Calculate the amount of padding needed to keep the border centered against the radios.
- $conditional-border-padding: ($govuk-radios-size / 2) - ($conditional-border-width / 2);
- // Move the border centered with the radios
- $conditional-margin-left: $conditional-border-padding;
- // Move the contents of the conditional inline with the label
- $conditional-padding-left: $conditional-border-padding + $govuk-radios-label-padding-left-right;
-
- .govuk-radios__conditional {
- @include govuk-responsive-margin(4, "bottom");
- margin-left: $conditional-margin-left;
- padding-left: $conditional-padding-left;
- border-left: $conditional-border-width solid $govuk-border-colour;
-
- .js-enabled &--hidden {
- display: none;
- }
-
- & > :last-child {
- margin-bottom: 0;
- }
- }
-
- // =========================================================
- // Small checkboxes
- // =========================================================
-
- .govuk-radios--small {
-
- $input-offset: ($govuk-touch-target-size - $govuk-small-radios-size) / 2;
- $label-offset: $govuk-touch-target-size - $input-offset;
-
- .govuk-radios__item {
- @include govuk-clearfix;
- min-height: 0;
- margin-bottom: 0;
- padding-left: $label-offset;
- float: left;
- }
-
- // Shift the touch target into the left margin so that the visible edge of
- // the control is aligned
- //
- // βWhich colour is your favourite?
- // ββββββ
- // ββ() β Purple
- // βββ²βββ
- // β²βββ Radio pseudo element, aligned with margin
- // ββββ Touch target (invisible input), shifted into the margin
- .govuk-radios__input {
- @include govuk-not-ie8 {
- left: $input-offset * -1;
- }
-
- @include govuk-if-ie8 {
- margin-left: $govuk-small-radios-size * -1;
- }
- }
-
- // Adjust the size and position of the label.
- //
- // Unlike larger radios, we also have to float the label in order to
- // 'shrink' it, preventing the hover state from kicking in across the full
- // width of the parent element.
- .govuk-radios__label {
- margin-top: -2px;
- padding: 13px govuk-spacing(3) 13px 1px;
- float: left;
-
- @include govuk-media-query($from: tablet) {
- padding: 11px govuk-spacing(3) 10px 1px;
- }
- }
-
- // ( ) Radio ring
- //
- // Reduce the size of the control [1], vertically centering it within the
- // touch target [2]
- .govuk-radios__label::before {
- top: $input-offset - $govuk-border-width-form-element; // 2
- width: $govuk-small-radios-size; // 1
- height: $govuk-small-radios-size; // 1
- }
-
- // β’ Radio button
- //
- // Reduce the size of the 'button' and center it within the ring
- .govuk-radios__label::after {
- top: 14px;
- left: 6px;
- border-width: 6px;
- }
-
- // Fix position of hint with small radios
- //
- // Do not use hints with small radios β because they're within the input
- // wrapper they trigger the hover state, but clicking them doesn't actually
- // activate the control.
- //
- // (If you do use them, they won't look completely broken... but seriously,
- // don't use them)
- .govuk-radios__hint {
- padding: 0;
- clear: both;
- pointer-events: none;
- }
-
- // Align conditional reveals with small radios
- .govuk-radios__conditional {
- $margin-left: ($govuk-small-radios-size / 2) - ($conditional-border-width / 2);
- margin-left: $margin-left;
- padding-left: $label-offset - ($margin-left + $conditional-border-width);
- clear: both;
- }
-
- .govuk-radios__divider {
- width: $govuk-small-radios-size;
- margin-bottom: govuk-spacing(1);
- }
-
- // Hover state for small radios.
- //
- // We use a hover state for small radios because the touch target size
- // is so much larger than their visible size, and so we need to provide
- // feedback to the user as to which radio they will select when their
- // cursor is outside of the visible area.
- .govuk-radios__item:hover .govuk-radios__input:not(:disabled) + .govuk-radios__label::before {
- box-shadow: 0 0 0 $govuk-hover-width $govuk-hover-colour;
- }
-
- // Because we've overridden the border-shadow provided by the focus state,
- // we need to redefine that too.
- //
- // We use two box shadows, one that restores the original focus state [1]
- // and another that then applies the hover state [2].
- .govuk-radios__item:hover .govuk-radios__input:focus + .govuk-radios__label::before {
- // sass-lint:disable indentation
- box-shadow: 0 0 0 $govuk-radios-focus-width $govuk-focus-colour, // 1
- 0 0 0 $govuk-hover-width $govuk-hover-colour; // 2
- }
-
- // For devices that explicitly don't support hover, don't provide a hover
- // state (e.g. on touch devices like iOS).
- //
- // We can't use `@media (hover: hover)` because we wouldn't get the hover
- // state in browsers that don't support `@media (hover)` (like Internet
- // Explorer) β so we have to 'undo' the hover state instead.
- @media (hover: none), (pointer: coarse) {
- .govuk-radios__item:hover .govuk-radios__input:not(:disabled) + .govuk-radios__label::before {
- box-shadow: initial;
- }
-
- .govuk-radios__item:hover .govuk-radios__input:focus + .govuk-radios__label::before {
- box-shadow: 0 0 0 $govuk-radios-focus-width $govuk-focus-colour;
- }
- }
- }
-}
diff --git a/app/templates/components/components/skip-link/_skip-link.scss b/app/templates/components/components/skip-link/_skip-link.scss
deleted file mode 100644
index ddccb1d2e..000000000
--- a/app/templates/components/components/skip-link/_skip-link.scss
+++ /dev/null
@@ -1,26 +0,0 @@
-@import "../../settings/all";
-@import "../../tools/all";
-@import "../../helpers/all";
-
-@include govuk-exports("govuk/component/skip-link") {
- .govuk-skip-link {
- @include govuk-visually-hidden-focusable;
- @include govuk-link-common;
- @include govuk-link-style-text;
- @include govuk-typography-responsive($size: 16);
-
- display: block;
- padding: govuk-spacing(2) govuk-spacing(3);
-
- // Respect 'display cutout' safe area (avoids notches and rounded corners)
- @supports (padding: unquote("max(calc(0px))")) {
- $padding-safe-area-right: calc(#{govuk-spacing(3)} + env(safe-area-inset-right));
- $padding-safe-area-left: calc(#{govuk-spacing(3)} + env(safe-area-inset-left));
-
- // Use max() to pick largest padding, default or with safe area
- // Escaped due to Sass max() vs. CSS native max()
- padding-right: unquote("max(#{govuk-spacing(3)}, #{$padding-safe-area-right})");
- padding-left: unquote("max(#{govuk-spacing(3)}, #{$padding-safe-area-left})");
- }
- }
-}
diff --git a/app/templates/components/components/textarea/_textarea.scss b/app/templates/components/components/textarea/_textarea.scss
deleted file mode 100644
index d37145cc5..000000000
--- a/app/templates/components/components/textarea/_textarea.scss
+++ /dev/null
@@ -1,32 +0,0 @@
-@import "../../settings/all";
-@import "../../tools/all";
-@import "../../helpers/all";
-
-@import "../error-message/error-message";
-@import "../hint/hint";
-@import "../label/label";
-
-@include govuk-exports("govuk/component/textarea") {
- .govuk-textarea {
- @include govuk-font($size: 19, $line-height: 1.25);
- @include govuk-focusable;
-
- box-sizing: border-box; // should this be global?
- display: block;
- width: 100%;
- min-height: 40px;
- @include govuk-responsive-margin(6, "bottom");
- padding: govuk-spacing(1);
-
- resize: vertical;
-
- border: $govuk-border-width-form-element solid $govuk-input-border-colour;
- border-radius: 0;
-
- -webkit-appearance: none;
- }
-
- .govuk-textarea--error {
- border: $govuk-border-width-form-element-error solid $govuk-error-colour;
- }
-}
diff --git a/tests/app/main/views/test_platform_admin.py b/tests/app/main/views/test_platform_admin.py
index e85303058..f40c3c3d7 100644
--- a/tests/app/main/views/test_platform_admin.py
+++ b/tests/app/main/views/test_platform_admin.py
@@ -773,7 +773,7 @@ def test_clear_cache_shows_form(
"service-????????-????-????-????-????????????-template-????????-????-????-????-????????????-version-*" # noqa
),
call(
- "service-????????-????-????-????-????????????-template-????????-????-????-????-????????????-versions" # noqa
+ "service-????????-????-????-????-????????????-template-????????-????-????-????-????????????-versions" # noqa
),
],
"Removed 6 objects across 3 key formats for template",