@govuk-one-login/frontend-ui 4.1.2 → 4.1.4

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 (94) hide show
  1. package/package.json +1 -1
  2. package/build/all.css +0 -1
  3. package/build/cjs/backend/index.cjs +0 -259
  4. package/build/cjs/backend/index.d.cts +0 -166
  5. package/build/cjs/backend/index.d.ts +0 -166
  6. package/build/cjs/backend/index.d.ts.map +0 -1
  7. package/build/cjs/backend/lib/helmet.d.ts +0 -31
  8. package/build/cjs/backend/lib/helmet.d.ts.map +0 -1
  9. package/build/cjs/backend/lib/index.d.ts +0 -4
  10. package/build/cjs/backend/lib/index.d.ts.map +0 -1
  11. package/build/cjs/backend/lib/locals.d.ts +0 -11
  12. package/build/cjs/backend/lib/locals.d.ts.map +0 -1
  13. package/build/cjs/backend/lib/settings.d.ts +0 -21
  14. package/build/cjs/backend/lib/settings.d.ts.map +0 -1
  15. package/build/cjs/backend/utils/logger.d.ts +0 -9
  16. package/build/cjs/backend/utils/logger.d.ts.map +0 -1
  17. package/build/cjs/frontend/index.cjs +0 -439
  18. package/build/cjs/frontend/index.d.cts +0 -4
  19. package/build/cjs/frontend/index.d.ts +0 -4
  20. package/build/cjs/frontend/index.d.ts.map +0 -1
  21. package/build/cjs/frontend/progress-button/progress-button.d.ts +0 -2
  22. package/build/cjs/frontend/progress-button/progress-button.d.ts.map +0 -1
  23. package/build/cjs/frontend/spinner/__tests__/spinner.test.d.ts +0 -2
  24. package/build/cjs/frontend/spinner/__tests__/spinner.test.d.ts.map +0 -1
  25. package/build/cjs/frontend/spinner/spinner.d.ts +0 -64
  26. package/build/cjs/frontend/spinner/spinner.d.ts.map +0 -1
  27. package/build/cjs/frontend/utils/types.d.ts +0 -108
  28. package/build/cjs/frontend/utils/types.d.ts.map +0 -1
  29. package/build/components/_all.scss +0 -6
  30. package/build/components/bases/auth/auth-base.njk +0 -136
  31. package/build/components/bases/home/home-base.njk +0 -133
  32. package/build/components/bases/identity/identity-base-form.njk +0 -123
  33. package/build/components/bases/identity/identity-base-page.njk +0 -123
  34. package/build/components/bases/ipv-core/ipv-core-base.njk +0 -172
  35. package/build/components/bases/mobile/mobile-base.njk +0 -181
  36. package/build/components/cookie-banner/cookie-banner.yaml +0 -6
  37. package/build/components/cookie-banner/macro.njk +0 -1
  38. package/build/components/cookie-banner/template.njk +0 -106
  39. package/build/components/footer/_index.scss +0 -28
  40. package/build/components/footer/footer.yaml +0 -5
  41. package/build/components/footer/macro.njk +0 -1
  42. package/build/components/footer/template.njk +0 -12
  43. package/build/components/header/README.md +0 -34
  44. package/build/components/header/_index.scss +0 -102
  45. package/build/components/header/header.yaml +0 -16
  46. package/build/components/header/macro.njk +0 -3
  47. package/build/components/header/template.njk +0 -39
  48. package/build/components/language-select/_index.scss +0 -35
  49. package/build/components/language-select/language-select.yaml +0 -43
  50. package/build/components/language-select/macro.njk +0 -2
  51. package/build/components/language-select/template.njk +0 -38
  52. package/build/components/macros/logo.njk +0 -75
  53. package/build/components/phase-banner/_index.scss +0 -28
  54. package/build/components/phase-banner/macro.njk +0 -3
  55. package/build/components/phase-banner/phase-banner.yaml +0 -17
  56. package/build/components/phase-banner/tag/macro.njk +0 -3
  57. package/build/components/phase-banner/tag/template.njk +0 -3
  58. package/build/components/phase-banner/template.njk +0 -27
  59. package/build/components/progress-button/_index.scss +0 -51
  60. package/build/components/progress-button/macro.njk +0 -2
  61. package/build/components/progress-button/progress-button.yaml +0 -13
  62. package/build/components/progress-button/template.njk +0 -112
  63. package/build/components/skip-link/README.md +0 -10
  64. package/build/components/skip-link/macro.njk +0 -3
  65. package/build/components/skip-link/skip-link.yaml +0 -5
  66. package/build/components/skip-link/template.njk +0 -14
  67. package/build/components/spinner/README.md +0 -130
  68. package/build/components/spinner/_index.scss +0 -55
  69. package/build/components/spinner/macro.njk +0 -3
  70. package/build/components/spinner/template.njk +0 -18
  71. package/build/esm/backend/index.d.ts +0 -166
  72. package/build/esm/backend/index.d.ts.map +0 -1
  73. package/build/esm/backend/index.js +0 -249
  74. package/build/esm/backend/lib/helmet.d.ts +0 -31
  75. package/build/esm/backend/lib/helmet.d.ts.map +0 -1
  76. package/build/esm/backend/lib/index.d.ts +0 -4
  77. package/build/esm/backend/lib/index.d.ts.map +0 -1
  78. package/build/esm/backend/lib/locals.d.ts +0 -11
  79. package/build/esm/backend/lib/locals.d.ts.map +0 -1
  80. package/build/esm/backend/lib/settings.d.ts +0 -21
  81. package/build/esm/backend/lib/settings.d.ts.map +0 -1
  82. package/build/esm/backend/utils/logger.d.ts +0 -9
  83. package/build/esm/backend/utils/logger.d.ts.map +0 -1
  84. package/build/esm/frontend/index.d.ts +0 -4
  85. package/build/esm/frontend/index.d.ts.map +0 -1
  86. package/build/esm/frontend/index.js +0 -436
  87. package/build/esm/frontend/progress-button/progress-button.d.ts +0 -2
  88. package/build/esm/frontend/progress-button/progress-button.d.ts.map +0 -1
  89. package/build/esm/frontend/spinner/__tests__/spinner.test.d.ts +0 -2
  90. package/build/esm/frontend/spinner/__tests__/spinner.test.d.ts.map +0 -1
  91. package/build/esm/frontend/spinner/spinner.d.ts +0 -64
  92. package/build/esm/frontend/spinner/spinner.d.ts.map +0 -1
  93. package/build/esm/frontend/utils/types.d.ts +0 -108
  94. package/build/esm/frontend/utils/types.d.ts.map +0 -1
@@ -1,39 +0,0 @@
1
- {% from "../macros/logo.njk" import govukLogo %}
2
- {% set header = params.translations %}
3
-
4
- {%if MAY_2025_REBRAND_ENABLED%}
5
- {%- set _rebrand = params.rebrand | default(govukRebrand() if govukRebrand is callable else govukRebrand) -%}
6
- {% endif %}
7
- <header class="govuk-header {%- if params.classes %} {{ params.classes }}{% endif %}" data-module="govuk-header">
8
- <div class="frontendUi_header__signOut govuk-header__container {{ params.containerClasses | default("govuk-width-container", true) }}">
9
- <div class="govuk-header__logo">
10
- {% if params.isEmbeddedMobileApp %}
11
- <span class="govuk-header__link govuk-header__link--homepage" style="pointer-events: none;">
12
- {% else %}
13
- <a href="{{ params.homepageUrl | default('https://www.gov.uk/') }}" class="govuk-header__link govuk-header__link--homepage">
14
- {% endif %}
15
- {{ govukLogo({
16
- classes: "govuk-header__logotype",
17
- ariaLabelText: "GOV.UK",
18
- useTudorCrown: params.useTudorCrown,
19
- rebrand: MAY_2025_REBRAND_ENABLED
20
- }) | trim | indent(8) }}
21
- {% if not params.isEmbeddedMobileApp %}
22
- </a>
23
- {% endif %}
24
- </div>
25
- {% if params.signOutLink %}
26
- <div class="frontendUi-header__content govuk-header__content">
27
- <nav aria-label="{{header.ariaLabel}}" class="govuk-header__navigation {{ govuk-header__navigation--signOut if params.MAY_2025_REBRAND_ENABLED }}">
28
- <ul id="navigation" class="frontendUi_header__signOut govuk-header__navigation-list">
29
- <li class="{{ 'frontendUi_header_signOut-item--rebrand' if MAY_2025_REBRAND_ENABLED }} {{'frontendUi_header_signOut-item' if not MAY_2025_REBRAND_ENABLED}} govuk-header__navigation-item{{ ' govuk-header__navigation-item--active' if item.active }}">
30
- <a aria-label="{{header.signOutAriaLabel}}" class="govuk-header__link" href="{{params.signOutLink}}">
31
- {{header.signOut}}
32
- </a>
33
- </li>
34
- </ul>
35
- </nav>
36
- </div>
37
- {% endif %}
38
- </div>
39
- </header>
@@ -1,35 +0,0 @@
1
- .language-select {
2
- margin: 15px 0 15px 0;
3
- }
4
-
5
- .language-select__list {
6
- margin-top: 1em;
7
- text-align: right;
8
- }
9
-
10
- .language-select__list-item {
11
- display: inline-block;
12
- }
13
-
14
- .language-select__list-item:first-child::after {
15
- content: "";
16
- display: inline-block;
17
- position: relative;
18
- top: 0.1875em;
19
- height: 1em;
20
- border-right: 0.09375em solid black;
21
- }
22
-
23
- .language-select__list-item a,
24
- .language-select__list-item [aria-current] {
25
- padding: 0.3125em;
26
- }
27
-
28
- @media screen and (max-width: 641px) {
29
- .language-select__list {
30
- float: none;
31
- text-align: left;
32
- padding-bottom: 10px;
33
- border-bottom: 1px solid #b1b4b6;
34
- }
35
- }
@@ -1,43 +0,0 @@
1
- params:
2
- - name: translations
3
- type: string
4
- required: true
5
- description: translations from middleware
6
- - name: activeLanguage
7
- type: string
8
- required: true
9
- description: currently selected language
10
- - name: currentUrl
11
- type: string
12
- required: true
13
- description: current url to be used to append langauge variable
14
- - name: ariaLabel
15
- type: string
16
- required: false
17
- description: aria label for the nav tag
18
- - name: class
19
- type: string
20
- required: false
21
- description: css class you can add
22
- - name: languages
23
- type: array
24
- required: false
25
- description: array of languages object
26
- params:
27
- - name: language
28
- type: object
29
- required: false
30
- description: language object
31
- params:
32
- - name: code
33
- type: string
34
- required: true
35
- description: language code
36
- - name: text
37
- type: string
38
- required: true
39
- description: language text
40
- - name: visuallyHidden
41
- type: string
42
- required: false
43
- description: language text
@@ -1,2 +0,0 @@
1
- {% macro frontendUiLanguageSelect(params) %} {%- include "./template.njk" -%} {% endmacro
2
- %}
@@ -1,38 +0,0 @@
1
- {% set languageSelect = params.translations %}
2
- {% if params.languages %}
3
- {% set languages = params.languages %}
4
- {% else %}
5
- {% set languages = [
6
- { code: "en", text: "English", visuallyHidden: "Change to English" },
7
- { code: "cy", text: "Cymraeg", visuallyHidden: "Newid yr iaith ir Gymraeg" }
8
- ] %}
9
- {% endif %}
10
-
11
- <nav
12
- class="language-select {{params.class}}"
13
- aria-label="{{languageSelect.ariaLabel}}"
14
- role="navigation"
15
- >
16
- <ul
17
- class="govuk-list language-select__list govuk-body-s govuk-!-margin-0"
18
- role="list"
19
- >
20
- {% for lang in languages %}
21
- <li class="language-select__list-item" role="listitem">
22
- {% if params.activeLanguage == lang.code %}
23
- <span aria-current="true">{{ lang.text }}</span>
24
- {% else %}
25
- <a
26
- class="govuk-link govuk-link--no-visited-state"
27
- href="{{ addLanguageParam(lang.code, params.url)}}"
28
- data-journey-click="link - click:lang-select:{{ lang.code }}"
29
- rel="alternate"
30
- hreflang="{{ lang.code }}"
31
- lang="{{lang.code}}"
32
- role="link"
33
- >{{ lang.text }}<div class="govuk-visually-hidden">{{ lang.visuallyHidden }}</div></a>
34
- {% endif %}
35
- </li>
36
- {% endfor %}
37
- </ul>
38
- </nav>
@@ -1,75 +0,0 @@
1
- {#- This macro is for interal use within GOV.UK Frontend. It isn't intended for
2
- external use and may receive undocumented breaking changes in non-breaking
3
- releases of Frontend. #}
4
-
5
- {% macro govukLogo(params) %}
6
- {#- Default options #}
7
- {%- set rebrand = params.rebrand | default(false) %}
8
- {%- set useLogotype = params.useLogotype | default(true) %}
9
- {%- set useTudorCrown = params.useTudorCrown | default(true) %}
10
-
11
- {# Force use of Tudor Crown if rebrand flag is on. #}
12
- {%- set useTudorCrown = true if rebrand else useTudorCrown %}
13
-
14
- {#- Calculate how wide the logo needs to be for the given parameters. #}
15
- {%- set svgWidth = 32 if useTudorCrown else 36 %}
16
- {%- set svgWidth = svgWidth + 116 if (useLogotype and not rebrand) else svgWidth %}
17
- {%- set svgWidth = svgWidth + 130 if (useLogotype and rebrand) else svgWidth %}
18
-
19
- {#- Charles III's Tudor Crown icon has been the default since February 2024. #}
20
- {%- set _tudorCrown %}
21
- <g>
22
- <circle cx="20" cy="17.6" r="3.7"/>
23
- <circle cx="10.2" cy="23.5" r="3.7"/>
24
- <circle cx="3.7" cy="33.2" r="3.7"/>
25
- <circle cx="31.7" cy="30.6" r="3.7"/>
26
- <circle cx="43.3" cy="17.6" r="3.7"/>
27
- <circle cx="53.2" cy="23.5" r="3.7"/>
28
- <circle cx="59.7" cy="33.2" r="3.7"/>
29
- <circle cx="31.7" cy="30.6" r="3.7"/>
30
- <path d="M33.1,9.8c.2-.1.3-.3.5-.5l4.6,2.4v-6.8l-4.6,1.5c-.1-.2-.3-.3-.5-.5l1.9-5.9h-6.7l1.9,5.9c-.2.1-.3.3-.5.5l-4.6-1.5v6.8l4.6-2.4c.1.2.3.3.5.5l-2.6,8c-.9,2.8,1.2,5.7,4.1,5.7h0c3,0,5.1-2.9,4.1-5.7l-2.6-8ZM37,37.9s-3.4,3.8-4.1,6.1c2.2,0,4.2-.5,6.4-2.8l-.7,8.5c-2-2.8-4.4-4.1-5.7-3.8.1,3.1.5,6.7,5.8,7.2,3.7.3,6.7-1.5,7-3.8.4-2.6-2-4.3-3.7-1.6-1.4-4.5,2.4-6.1,4.9-3.2-1.9-4.5-1.8-7.7,2.4-10.9,3,4,2.6,7.3-1.2,11.1,2.4-1.3,6.2,0,4,4.6-1.2-2.8-3.7-2.2-4.2.2-.3,1.7.7,3.7,3,4.2,1.9.3,4.7-.9,7-5.9-1.3,0-2.4.7-3.9,1.7l2.4-8c.6,2.3,1.4,3.7,2.2,4.5.6-1.6.5-2.8,0-5.3l5,1.8c-2.6,3.6-5.2,8.7-7.3,17.5-7.4-1.1-15.7-1.7-24.5-1.7h0c-8.8,0-17.1.6-24.5,1.7-2.1-8.9-4.7-13.9-7.3-17.5l5-1.8c-.5,2.5-.6,3.7,0,5.3.8-.8,1.6-2.3,2.2-4.5l2.4,8c-1.5-1-2.6-1.7-3.9-1.7,2.3,5,5.2,6.2,7,5.9,2.3-.4,3.3-2.4,3-4.2-.5-2.4-3-3.1-4.2-.2-2.2-4.6,1.6-6,4-4.6-3.7-3.7-4.2-7.1-1.2-11.1,4.2,3.2,4.3,6.4,2.4,10.9,2.5-2.8,6.3-1.3,4.9,3.2-1.8-2.7-4.1-1-3.7,1.6.3,2.3,3.3,4.1,7,3.8,5.4-.5,5.7-4.2,5.8-7.2-1.3-.2-3.7,1-5.7,3.8l-.7-8.5c2.2,2.3,4.2,2.7,6.4,2.8-.7-2.3-4.1-6.1-4.1-6.1h10.6,0Z"/>
31
- </g>
32
- {%- endset %}
33
-
34
- {#- St. Edward's Crown was the logo under Elizabeth II. It's included to avoid
35
- a breaking change in services. It can be removed in Frontend v6. #}
36
- {%- set _stEdwardsCrown %}
37
- <path d="M13.4,22.3c2,.8,4.2-.2,5-2s-.2-4.2-2-5c-2-.8-4.2.2-5,2-.8,2,0,4.2,2,5M4.8,27.3c2,.8,4.2-.2,5-2s-.2-4.2-2-5c-2-.8-4.2.2-5,2-1,2,0,4.2,2,5M2.2,36.9c2,.8,4.2-.2,5-2,.8-2-.2-4.2-2-5-2-.8-4.2.2-5,2-.8,2,0,4.2,2,5M23,25.3c2,.8,4.2-.2,5-2s-.2-4.2-2-5c-2-.8-4.2.2-5,2s0,4.2,2,5M57.8,22.3c-2,.8-4.2-.2-5-2s.2-4.2,2-5c2-.8,4.2.2,5,2,1,2,0,4.2-2,5M66.4,27.3c-2,.8-4.2-.2-5-2s.2-4.2,2-5c2-.8,4.2.2,5,2,1,2,0,4.2-2,5M69,36.9c-2,.8-4.2-.2-5-2-.8-2,.2-4.2,2-5,2-.8,4.2.2,5,2,.8,2,0,4.2-2,5M48.2,25.3c-2,.8-4.2-.2-5-2s.2-4.2,2-5c2-.8,4.2.2,5,2s0,4.2-2,5M37.6,15.5l4.8,2.6v-7.2l-4.8,1.6c-.2-.2-.2-.4-.4-.4s2-6,2-6h-6.8l2,6c-.2.2-.4.2-.4.4-.2.2-4.8-1.4-4.8-1.4v7l4.8-2.6c-.2.2,0,.4.2.6l-2.8,8.4c-.2.4-.2.8-.2,1.4,0,2.2,1.6,4.2,3.8,4.4h1.2c2.2-.4,3.8-2.2,3.8-4.4s0-.8-.2-1.4l-2.8-8.4c.4-.2.6-.4.6-.6M35.6,56.1c9.2,0,17.8.6,25.6,1.8,2.2-9.2,4.8-14.4,7.6-18.2l-5.2-1.8c.6,2.6.6,3.8,0,5.6-.8-.8-1.6-2.4-2.2-4.8l-2.4,8.4c1.6-1,2.8-1.8,4-1.8-2.4,5.2-5.4,6.4-7.2,6-2.4-.4-3.4-2.6-3-4.4.6-2.6,3.2-3.2,4.4-.2,2.4-4.8-1.6-6.2-4.2-4.8,3.8-3.8,4.4-7.2,1.2-11.4-4.4,3.4-4.4,6.6-2.4,11.2-2.6-3-6.6-1.4-5,3.4,1.8-2.8,4.2-1,4,1.6-.4,2.4-3.4,4.2-7.4,4-5.6-.4-6-4.4-6-7.4,1.4-.2,3.8,1,6,4l.8-8.8c-2.2,2.4-4.4,2.8-6.6,2.8.8-2.4,4.2-6.2,4.2-6.2h-11s3.6,4,4.2,6.2c-2.2,0-4.4-.6-6.6-2.8l.8,8.8c2.2-3,4.6-4.2,6-4-.2,3.2-.4,7-6,7.4-3.8.4-7-1.6-7.4-4-.4-2.6,2-4.4,3.8-1.6,1.4-4.8-2.6-6.2-5.2-3.4,2-4.6,2-8-2.4-11.2-3.2,4.2-2.6,7.6,1.2,11.4-2.6-1.4-6.4,0-4.2,4.8,1.2-3,3.8-2.2,4.4.2.4,1.8-.8,3.8-3,4.4-2,.4-5-1-7.4-6,1.4,0,2.6.8,4,1.8l-3-8.4c-.6,2.4-1.4,3.8-2.4,4.8-.6-1.6-.4-3,0-5.6l-5.2,1.8c3,3.8,5.6,9,7.8,18.2,7.6-1,16.4-1.8,25.4-1.8"/>
38
- {%- endset %}
39
-
40
- {#- The GOV.UK logotype with standard dot. This needs to be slightly offset if
41
- using the St. Edward's Crown, as that crown is wider. #}
42
- {%- set _logotype %}
43
- <path {%- if not useTudorCrown %} transform="translate(8 0)"{% endif %} d="M88.6,33.2c0,1.8.2,3.4.6,5s1.2,3,2,4.4c1,1.2,2,2.2,3.4,3s3,1.2,5,1.2,3.4-.2,4.6-.8,2.2-1.4,3-2.2,1.2-1.8,1.6-3c.2-1,.4-2,.4-3v-.4h-10.6v-6.4h18.8v23h-7.4v-5c-.6.8-1.2,1.6-2,2.2-.8.6-1.6,1.2-2.6,1.8-1,.4-2,.8-3.2,1.2s-2.4.4-3.6.4c-3,0-5.8-.6-8-1.6-2.4-1.2-4.4-2.6-6-4.6s-2.8-4.2-3.6-6.8c-.6-2.8-1-5.6-1-8.6s.4-5.8,1.4-8.4,2.2-4.8,4-6.8,3.8-3.4,6.2-4.6c2.4-1.2,5.2-1.6,8.2-1.6s3.8.2,5.6.6c1.8.4,3.4,1.2,4.8,2s2.8,1.8,3.8,3c1.2,1.2,2,2.6,2.8,4l-7.4,4.2c-.4-.8-1-1.8-1.6-2.4-.6-.8-1.2-1.4-2-2s-1.6-1-2.6-1.4-2.2-.4-3.4-.4c-2,0-3.6.4-5,1.2-1.4.8-2.6,1.8-3.4,3-1,1.2-1.6,2.8-2,4.4-.6,1.6-.8,3.8-.8,5.4ZM161.4,24.6c-.8-2.6-2.2-4.8-4-6.8s-3.8-3.4-6.2-4.6c-2.4-1.2-5.2-1.6-8.4-1.6s-5.8.6-8.4,1.6c-2.2,1.2-4.4,2.8-6,4.6-1.8,2-3,4.2-4,6.8-.8,2.6-1.4,5.4-1.4,8.4s.4,5.8,1.4,8.4c.8,2.6,2.2,4.8,4,6.8s3.8,3.4,6.2,4.6c2.4,1.2,5.2,1.6,8.4,1.6s5.8-.6,8.4-1.6c2.4-1.2,4.6-2.6,6.2-4.6,1.8-2,3-4.2,4-6.8.8-2.6,1.4-5.4,1.4-8.4-.2-3-.6-5.8-1.6-8.4h0ZM154,33.2c0,2-.2,3.8-.8,5.4-.4,1.6-1.2,3.2-2.2,4.4s-2.2,2.2-3.4,2.8c-1.4.6-3,1-4.8,1s-3.4-.4-4.8-1-2.6-1.6-3.4-2.8c-1-1.2-1.6-2.6-2.2-4.4-.4-1.6-.8-3.4-.8-5.4v-.2c0-2,.2-3.8.8-5.4.4-1.6,1.2-3.2,2.2-4.4,1-1.2,2.2-2.2,3.4-2.8,1.4-.6,3-1,4.8-1s3.4.4,4.8,1,2.6,1.6,3.4,2.8c1,1.2,1.6,2.6,2.2,4.4.4,1.6.8,3.4.8,5.4v.2ZM177.8,54l-11.8-42h9.4l8,31.4h.2l8-31.4h9.4l-11.8,42h-11.4,0ZM235.4,46.7c1.2,0,2.4-.2,3.4-.6,1-.4,2-.8,2.8-1.6s1.4-1.6,1.8-2.8c.4-1.2.6-2.4.6-4V11.8h8.2v27.2c0,2.4-.4,4.4-1.2,6.2s-2,3.4-3.6,4.8c-1.4,1.4-3.2,2.4-5.4,3-2,.8-4.4,1-6.8,1s-4.8-.4-6.8-1c-2-.8-3.8-1.8-5.4-3-1.6-1.4-2.6-3-3.6-4.8-.8-1.8-1.2-4-1.2-6.2V11.7h8.4v26c0,1.6.2,2.8.6,4,.4,1.2,1,2,1.8,2.8s1.6,1.2,2.8,1.6c1.2.4,2.2.6,3.6.6h0ZM261.4,11.9h8.4v18.2l14.8-18.2h10.4l-14.4,16.8,15.4,25.2h-9.8l-11-18.8-5.4,6v12.8h-8.4V11.9h0ZM206.2,44.2c-3,0-5.4,2.4-5.4,5.4s2.4,5.4,5.4,5.4,5.4-2.4,5.4-5.4-2.4-5.4-5.4-5.4Z"/>
44
- {%- endset %}
45
-
46
- {#- The GOV.UK logotype with raised and coloured dot. This is only intended for
47
- use alongide the Tudor Crown, so don't bother with offsetting for the
48
- St. Edward's Crown. #}
49
- {%- set _dotLogotype %}
50
- <circle class="govuk-logo-dot" cx="227" cy="36" r="7.3"/>
51
- <path d="M94.7,36.1c0,1.9.2,3.6.7,5.4.5,1.7,1.2,3.2,2.1,4.5.9,1.3,2.2,2.4,3.6,3.2,1.5.8,3.2,1.2,5.3,1.2s3.6-.3,4.9-.9c1.3-.6,2.3-1.4,3.1-2.3.8-.9,1.3-2,1.6-3,.3-1.1.5-2.1.5-3v-.4h-11v-6.6h19.5v24h-7.7v-5.4c-.5.8-1.2,1.6-2,2.3-.8.7-1.7,1.3-2.7,1.8-1,.5-2.1.9-3.3,1.2-1.2.3-2.5.4-3.8.4-3.2,0-6-.6-8.4-1.7-2.5-1.1-4.5-2.7-6.2-4.7-1.7-2-3-4.4-3.8-7.1-.9-2.7-1.3-5.6-1.3-8.7s.5-6,1.5-8.7,2.4-5.1,4.2-7.1c1.8-2,4-3.6,6.5-4.7s5.4-1.7,8.6-1.7,4,.2,5.9.7c1.8.5,3.5,1.1,5.1,2,1.5.9,2.9,1.9,4,3.2,1.2,1.2,2.1,2.6,2.8,4.1l-7.7,4.3c-.5-.9-1-1.8-1.6-2.6-.6-.8-1.3-1.5-2.2-2.1-.8-.6-1.7-1-2.8-1.4-1-.3-2.2-.5-3.5-.5-2,0-3.8.4-5.3,1.2s-2.7,1.9-3.6,3.2c-.9,1.3-1.7,2.8-2.1,4.6s-.7,3.5-.7,5.3v.3h0ZM152.9,13.7c3.2,0,6.1.6,8.7,1.7,2.6,1.2,4.7,2.7,6.5,4.7,1.8,2,3.1,4.4,4.1,7.1s1.4,5.6,1.4,8.7-.5,6-1.4,8.7c-.9,2.7-2.3,5.1-4.1,7.1s-4,3.6-6.5,4.7c-2.6,1.1-5.5,1.7-8.7,1.7s-6.1-.6-8.7-1.7c-2.6-1.1-4.7-2.7-6.5-4.7-1.8-2-3.1-4.4-4.1-7.1-.9-2.7-1.4-5.6-1.4-8.7s.5-6,1.4-8.7,2.3-5.1,4.1-7.1c1.8-2,4-3.6,6.5-4.7s5.4-1.7,8.7-1.7h0ZM152.9,50.4c1.9,0,3.6-.4,5-1.1,1.4-.7,2.7-1.7,3.6-3,1-1.3,1.7-2.8,2.2-4.5.5-1.7.8-3.6.8-5.7v-.2c0-2-.3-3.9-.8-5.7-.5-1.7-1.3-3.3-2.2-4.5-1-1.3-2.2-2.3-3.6-3-1.4-.7-3.1-1.1-5-1.1s-3.6.4-5,1.1c-1.5.7-2.7,1.7-3.6,3s-1.7,2.8-2.2,4.5c-.5,1.7-.8,3.6-.8,5.7v.2c0,2.1.3,4,.8,5.7.5,1.7,1.2,3.2,2.2,4.5,1,1.3,2.2,2.3,3.6,3,1.5.7,3.1,1.1,5,1.1ZM189.1,58l-12.3-44h9.8l8.4,32.9h.3l8.2-32.9h9.7l-12.3,44M262.9,50.4c1.3,0,2.5-.2,3.6-.6,1.1-.4,2-.9,2.8-1.7.8-.8,1.4-1.7,1.9-2.9.5-1.2.7-2.5.7-4.1V14h8.6v28.5c0,2.4-.4,4.6-1.3,6.6-.9,2-2.1,3.6-3.7,5-1.6,1.4-3.4,2.4-5.6,3.2-2.2.7-4.5,1.1-7.1,1.1s-4.9-.4-7.1-1.1c-2.2-.7-4-1.8-5.6-3.2s-2.8-3-3.7-5c-.9-2-1.3-4.1-1.3-6.6V14h8.7v27.2c0,1.6.2,2.9.7,4.1.5,1.2,1.1,2.1,1.9,2.9.8.8,1.7,1.3,2.8,1.7s2.3.6,3.6.6h0ZM288.5,14h8.7v19.1l15.5-19.1h10.8l-15.1,17.6,16.1,26.4h-10.2l-11.5-19.7-5.6,6.3v13.5h-8.7"/>
52
- {%- endset %}
53
-
54
- {#- The SVG needs `focusable="false"` so that Internet Explorer does not treat
55
- it as an interactive element - without this it will be 'focusable' when using
56
- the keyboard to navigate. #}
57
- <svg
58
- focusable="false"
59
- role="{{ "img" if params.ariaLabelText else "presentation" }}"
60
- xmlns="http://www.w3.org/2000/svg"
61
- {#- The viewbox is 2x the actual display dimensions #}
62
- viewBox="0 0 {{ svgWidth * 2 }} 60"
63
- height="30"
64
- width="{{ svgWidth }}"
65
- fill="currentcolor"
66
- {%- if params.classes %} class="{{ params.classes }}"{% endif %}
67
- {%- if params.ariaLabelText %} aria-label="{{ params.ariaLabelText }}"{% endif %}
68
- >
69
- {%- if params.ariaLabelText %}<title>{{ params.ariaLabelText }}</title>{% endif %}
70
- {{ (_stEdwardsCrown if not useTudorCrown else _tudorCrown) | safe | trim | indent(2) }}
71
- {% if useLogotype %}
72
- {{ (_dotLogotype if rebrand else _logotype) | safe | trim | indent(2) }}
73
- {% endif %}
74
- </svg>
75
- {% endmacro %}
@@ -1,28 +0,0 @@
1
- @import "../../../../node_modules/govuk-frontend/govuk/helpers/_colour.scss";
2
- // Temporarily overwrite the tag component styling to match pre-v5 appearance.
3
- // This ensures a cohesive phase banner across One Login applications during the transition.
4
- .govuk-tag {
5
- font-size: 16px;
6
- font-weight: bold;
7
- line-height: 1;
8
- display: inline-block;
9
- padding-top: 5px;
10
- padding-right: 8px;
11
- padding-bottom: 4px;
12
- padding-left: 8px;
13
- // Accessibility: Ensure visibility for users customizing colours.
14
- outline: 2px solid transparent;
15
- outline-offset: -2px;
16
- // Key properties to maintain the old appearance:
17
- color: govuk-colour("white") !important;
18
- background-color: govuk-colour("blue") !important;
19
- letter-spacing: 1px !important;
20
- text-decoration: none !important;
21
- text-transform: uppercase !important;
22
- }
23
-
24
- @media (max-width: 256px) {
25
- .govuk-phase-banner__content{
26
- display: block;
27
- }
28
- }
@@ -1,3 +0,0 @@
1
- {% macro frontendUiPhaseBanner(params) %}
2
- {%- include "./template.njk" -%}
3
- {% endmacro %}
@@ -1,17 +0,0 @@
1
- params:
2
- - name: translations
3
- type: string
4
- required: true
5
- description: translations from middleware
6
- - name: url
7
- type: string
8
- required: true
9
- description: current page url
10
- - name: tag
11
- type: string
12
- required: false
13
- description: tag override
14
- - name: contactUrl
15
- type: string
16
- required: false
17
- description: contactUsUrl override
@@ -1,3 +0,0 @@
1
- {% macro frontendUiTag(params) %}
2
- {%- include "./template.njk" -%}
3
- {% endmacro %}
@@ -1,3 +0,0 @@
1
- <strong class="govuk-tag{% if params.classes %} {{ params.classes }}{% endif %}"{% for attribute, value in params.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>
2
- {{ params.html | safe if params.html}}
3
- </strong>
@@ -1,27 +0,0 @@
1
- {% set phaseBanner = params.translations %}
2
- {% from "./tag/macro.njk" import frontendUiTag -%}
3
-
4
- <div role="region" class="govuk-phase-banner
5
- {%- if params.classes %} {{ params.classes }}{% endif %}"{% for attribute, value in params.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>
6
- <p class="govuk-phase-banner__content">
7
- {{ frontendUiTag({
8
- html: params.tag or phaseBanner.tag,
9
- classes: "govuk-phase-banner__content__tag" + (" " + params.tag.classes if params.tag.classes)
10
- }) | indent(4) | trim }}
11
-
12
- <span class="govuk-phase-banner__text">
13
- {% if params.phaseBannerText %}
14
- {{ params.phaseBannerText }}
15
- {% else %}
16
- {{ phaseBanner.text }}
17
- {% endif %}
18
- <a class="govuk-link"
19
- rel="noopener"
20
- target="_blank"
21
- {% if params.noAppend %} href="{{ params.contactUrl }}" {% endif %}
22
- {% if params.noAppend != 'true' %} href="{{ contactUsUrl(params.contactUrl, params.url) or contactUsUrl('https://signin.account.gov.uk/contact-us', params.url) }}" {% endif %}>
23
- {{ phaseBanner.link }}
24
- </a>
25
- </span>
26
- </p>
27
- </div>
@@ -1,51 +0,0 @@
1
- .govuk-button--progress{
2
- position: relative;
3
- }
4
-
5
- .govuk-button--progress-loading{
6
- background-color: #505A5F !important;
7
- color: #fff !important;
8
- pointer-events: none !important;
9
- padding-left: 40px !important;
10
- }
11
-
12
- @keyframes rotate {
13
- from {
14
- transform: rotate(0);
15
- }
16
-
17
- to {
18
- transform: rotate(360deg);
19
- }
20
- }
21
-
22
-
23
- .govuk-button--progress-loading::before {
24
- content: "";
25
- border: 3px solid rgba(255, 255, 255, 0.35);
26
- border-top: 3px solid #fff;
27
- border-radius: 50%;
28
- width: 20px;
29
- height: 20px;
30
- animation: rotate 1s infinite linear;
31
- position: absolute;
32
- top: 12% !important;
33
- left: 8px;
34
- }
35
-
36
- .govuk-progress-button--disabled{
37
- opacity: 1 !important;
38
- }
39
-
40
- @media (prefers-reduced-motion: reduce) {
41
- .govuk-button--progress-loading {
42
- padding-left: 10px !important;
43
-
44
- &::before {
45
- display: none;
46
- }
47
- }
48
- }
49
-
50
-
51
-
@@ -1,2 +0,0 @@
1
- {% macro frontendUiProgressButton(params) %} {%- include "./template.njk" -%} {% endmacro
2
- %}
@@ -1,13 +0,0 @@
1
- params:
2
- - name: translations
3
- type: string
4
- required: true
5
- description: translations from middleware
6
- - name: href
7
- type: string
8
- required: true
9
- description: URL for the button to link to
10
- - name: errorPage
11
- type: string
12
- required: true
13
- description: URL for the error help page
@@ -1,112 +0,0 @@
1
- {% set progressButton = params.translations %}
2
- <noscript>
3
- <style>
4
- .noscript {
5
- border: #F3F3F3 3px solid;
6
- padding-top: 28px;
7
- padding-left: 12px;
8
- padding-right: 12px;
9
- margin-bottom: 12px;
10
- }
11
- </style>
12
- </noscript>
13
-
14
- {# Set classes for this component #}
15
- {%- set classNames = "govuk-button govuk-button--progress" -%}
16
-
17
- {%- if params.classes %}
18
- {% set classNames = classNames + " " + params.classes %}
19
- {% endif %}
20
- {% if params.disabled %}
21
- {% set classNames = classNames + " govuk-button--disabled" %}
22
- {% endif -%}
23
-
24
- {%- if params.element %}
25
- {% set element = params.element | lower %}
26
- {% else %}
27
- {% if params.href %}
28
- {% set element = 'a' %}
29
- {% else %}
30
- {% set element = 'button' %}
31
- {% endif %}
32
- {% endif -%}
33
-
34
- {% if params.isStartButton %}
35
- {% set iconHtml %}
36
- {#- The SVG needs `focusable="false"` so that Internet Explorer does not
37
- treat it as an interactive element - without this it will be
38
- 'focusable' when using the keyboard to navigate. #}
39
- <svg class="govuk-button__start-icon" xmlns="http://www.w3.org/2000/svg" width="17.5" height="19" viewBox="0 0 33 40" aria-hidden="true" focusable="false">
40
- <path fill="currentColor" d="M0 0h13l20 20-20 20H0l20-20z"/>
41
- </svg>
42
- {% endset %}
43
- {% set classNames = classNames + " govuk-button--start" %}
44
- {% endif %}
45
-
46
- {#- Define common attributes that we can use across all element types #}
47
-
48
- {%- set commonAttributes %} data-module="govuk-button"{% for attribute, value in params.attributes %}
49
- {{attribute}}="{{value}}"{% endfor %}
50
- {% if params.id %} id="{{ params.id }}"{% endif %}
51
- {% endset %}
52
-
53
- {#- Define common attributes we can use for both button and input types #}
54
-
55
- {%- set buttonAttributes %}
56
- {% if params.name %} name="{{ params.name }}"{% endif %}
57
- {% if params.disabled %} disabled="disabled" aria-disabled="true"{% endif %}
58
- {% if params.preventDoubleClick !== undefined %} data-prevent-double-click="{{params.preventDoubleClick}}"{% endif %}{% endset %}
59
-
60
- {%- if element == 'a' %}
61
- <div class="noscript">
62
- <noscript>
63
- <div class="govuk-body" >
64
- {{ progressButton.noJavascriptMessage }}
65
- </div>
66
- </noscript>
67
-
68
- <a href="{{ params.href if params.href else '#' }}" role="button" draggable="false" {{- commonAttributes | safe }} class = "{{ classNames }}" data-frontendui="di-progress-button" data-waiting-text="{{ progressButton.waitingText }}" data-long-waiting-text="{{ progressButton.longWaitingText }}" data-error-page="{{ params.errorPage | default('#') }}" >
69
- {% if params.html %}
70
- {{ params.html | safe }}
71
- {% elseif params.text %}
72
- {{ params.text | safe }}
73
- {% else %}
74
- {{ progressButton.text }}
75
- {% endif %}
76
- {{- iconHtml | safe | trim | indent(2, true) if iconHtml -}}
77
- </a>
78
- </div>
79
-
80
- {%- elseif element == 'button' %}
81
- <div class="noscript">
82
- <noscript>
83
- <div class="govuk-body" >
84
- {{ progressButton.noJavascriptMessage }}
85
- </div>
86
- </noscript>
87
-
88
- <button {%- if params.value %} value="{{ params.value }}"{% endif %}{%- if params.type %} type="{{ params.type }}"{% endif %} {{- buttonAttributes | safe }} {{- commonAttributes | safe }} class = "{{ classNames }}" data-frontendui="di-progress-button" data-waiting-text="{{ progressButton.waitingText }}" data-long-waiting-text="{{ progressButton.longWaitingText }}" data-error-page="{{ params.errorPage | default('#') }}" >
89
- {% if params.html %}
90
- {{ params.html | safe }}
91
- {% elseif params.text %}
92
- {{ params.text | safe }}
93
- {% else %}
94
- {{ progressButton.text }}
95
- {% endif %}
96
- {{- iconHtml | safe | trim | indent(2, true) if iconHtml -}}
97
-
98
- </button>
99
- </div>
100
-
101
- {%- elseif element == 'input' %}
102
- <div class="noscript">
103
- <noscript>
104
- <div class="govuk-body" >
105
- {{ progressButton.noJavascriptMessage }}
106
- </div>
107
- </noscript>
108
- <input value="{{ params.value }}" type="{{ params.type if params.type else 'submit'}}"{{- buttonAttributes | safe }} {{- commonAttributes | safe }} class = "{{ classNames }}" data-frontendui="di-progress-button" data-waiting-text="{{ progressButton.waitingText }}" data-long-waiting-text="{{ progressButton.longWaitingText }}" data-error-page="{{ params.errorPage | default('#') }}" >
109
- {{- iconHtml | safe | trim | indent(2, true) if iconHtml -}}
110
- </div>
111
-
112
- {% endif %}
@@ -1,10 +0,0 @@
1
- # Skip Link
2
-
3
- ## Translations
4
-
5
- For translations to be enabled, the param `skipLink: translations` should be passed into `frontendUiSkipLink` in the `skipLink` block.
6
-
7
- ```html
8
- {% block skipLink %} {{ frontendUiSkipLink({ skipLink: translations }) }} {%
9
- endblock %}
10
- ```
@@ -1,3 +0,0 @@
1
- {% macro frontendUiSkipLink(params) %}
2
- {%- include "./template.njk" -%}
3
- {% endmacro %}
@@ -1,5 +0,0 @@
1
- params:
2
- - name: translations
3
- type: string
4
- required: true
5
- description: translations from middleware
@@ -1,14 +0,0 @@
1
- {% from "govuk/components/skip-link/macro.njk" import govukSkipLink %}
2
-
3
- {% set skipLink = params.translations %}
4
-
5
- {{ govukSkipLink({
6
- href: "#main-content",
7
- text: skipLink.title,
8
- attributes: {
9
- "role": "button",
10
- "aria-label": skipLink.title
11
- }
12
- }) }}
13
-
14
-