@govuk-one-login/frontend-ui 1.5.0 → 2.0.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.
package/README.md
CHANGED
|
@@ -165,3 +165,8 @@ If you need to use a component that incorporates frontend (ie. in-browser) code
|
|
|
165
165
|
useSpinner();
|
|
166
166
|
</script>
|
|
167
167
|
```
|
|
168
|
+
|
|
169
|
+
# Upgrading to V2
|
|
170
|
+
|
|
171
|
+
## On Page Load has now been added to basefiles
|
|
172
|
+
When upgrading to major version 2, GA4 on page load will be within the idenity and core basefiles, this will be a breaking change and implement some duplication on pages if GA4OPL is already being used on them
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
{% if MAY_2025_REBRAND_ENABLED %}
|
|
2
|
-
{% set govukRebrand = true %}
|
|
3
|
-
{% set assetPath = "/public/rebrand"%}
|
|
2
|
+
{% set govukRebrand = true %}
|
|
3
|
+
{% set assetPath = "/public/rebrand"%}
|
|
4
4
|
{% endif %}
|
|
5
5
|
|
|
6
|
+
{% set isPageDataSensitive = true %}
|
|
7
|
+
{% set taxLevel1 = 'web cri' %}
|
|
8
|
+
|
|
6
9
|
{% extends "form-template.njk" %}
|
|
7
10
|
|
|
11
|
+
{% from "frontend-analytics/components/ga4-opl/macro.njk" import ga4OnPageLoad %}
|
|
8
12
|
{% from "frontend-ui/build/components/cookie-banner/macro.njk" import frontendUiCookieBanner %}
|
|
9
13
|
{% from "frontend-ui/build/components/phase-banner/macro.njk" import frontendUiPhaseBanner %}
|
|
10
14
|
{% from "frontend-ui/build/components/header/macro.njk" import frontendUiHeader %}
|
|
@@ -16,12 +20,12 @@
|
|
|
16
20
|
{% endblock %}
|
|
17
21
|
|
|
18
22
|
{%- block pageTitle %}
|
|
19
|
-
|
|
23
|
+
{{- (translate("govuk.error", { default: "Error" }) + ": ") if errorlist.length }}{{ hmpoTitle | safe }}{{ " – " + govukServiceName | safe if govukServiceName !== " " }} – GOV.UK One Login
|
|
20
24
|
{%- endblock %}
|
|
21
25
|
|
|
22
26
|
{% block header %}
|
|
23
27
|
{% block cookieBanner %}
|
|
24
|
-
|
|
28
|
+
{{ frontendUiCookieBanner({
|
|
25
29
|
translations: translations.cookieBanner
|
|
26
30
|
}
|
|
27
31
|
)}}
|
|
@@ -36,7 +40,7 @@
|
|
|
36
40
|
{% endblock %}
|
|
37
41
|
|
|
38
42
|
{% block beforeContent %}
|
|
39
|
-
|
|
43
|
+
{{ frontendUiPhaseBanner({
|
|
40
44
|
translations: translations.phaseBanner,
|
|
41
45
|
url: currentUrl,
|
|
42
46
|
contactUrl: 'https://signin.account.gov.uk/contact-us'
|
|
@@ -47,18 +51,17 @@
|
|
|
47
51
|
url: currentUrl,
|
|
48
52
|
activeLanguage: htmlLang
|
|
49
53
|
}) }}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
54
|
+
{% if backLink %}
|
|
55
|
+
{% from "govuk/components/back-link/macro.njk" import govukBackLink %}
|
|
56
|
+
<span id="back">{{ govukBackLink({
|
|
53
57
|
text: translate("govuk.backLink"),
|
|
54
58
|
href: backLink}) }}
|
|
55
|
-
|
|
56
|
-
|
|
59
|
+
</span>
|
|
60
|
+
{% endif %}
|
|
57
61
|
|
|
58
62
|
{% endblock %}
|
|
59
63
|
{% endblock %}
|
|
60
64
|
|
|
61
|
-
|
|
62
65
|
{% block footer %}
|
|
63
66
|
{{ frontendUiFooter({
|
|
64
67
|
translations: translations.footer
|
|
@@ -70,31 +73,49 @@
|
|
|
70
73
|
<script type="text/javascript" src="/public/javascripts/all.js"></script>
|
|
71
74
|
<script type="text/javascript" src="/public/javascripts/analytics.js"></script>
|
|
72
75
|
<script type="text/javascript" {% if cspNonce %} nonce="{{ cspNonce }}"{% endif %}>
|
|
73
|
-
window
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
76
|
+
window
|
|
77
|
+
.GOVUKFrontend
|
|
78
|
+
.initAll()
|
|
79
|
+
window
|
|
80
|
+
.DI
|
|
81
|
+
.appInit({
|
|
82
|
+
ga4ContainerId: "{{ga4ContainerId}}",
|
|
83
|
+
uaContainerId: "{{uaContainerId}}"
|
|
84
|
+
}, {
|
|
85
|
+
enableGa4Tracking: {{ga4Enabled}},
|
|
86
|
+
enableUaTracking: {{uaEnabled}},
|
|
87
|
+
enablePageViewTracking: {{ga4PageViewEnabled}},
|
|
88
|
+
enableFormErrorTracking: {{ga4FormErrorEnabled}},
|
|
89
|
+
enableFormChangeTracking: {{ga4FormChangeEnabled}},
|
|
90
|
+
enableFormResponseTracking: {{ga4FormResponseEnabled}},
|
|
91
|
+
enableNavigationTracking: {{ga4NavigationEnabled}},
|
|
92
|
+
enableSelectContentTracking: {{ga4SelectContentEnabled}},
|
|
93
|
+
cookieDomain: "{{analyticsCookieDomain}}",
|
|
94
|
+
isDataSensitive: {{analyticsDataSensitive}},
|
|
95
|
+
isPageDataSensitive: {{isPageDataSensitive}}
|
|
96
|
+
});
|
|
89
97
|
</script>
|
|
90
98
|
|
|
91
99
|
{% if deviceIntelligenceEnabled %}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
100
|
+
<script type="module" src="/public/javascripts/deviceIntelligence.js"></script>
|
|
101
|
+
<script type="module" {% if cspNonce %} nonce="{{ cspNonce }}"{% endif %}>
|
|
102
|
+
import {setFingerprintCookie} from "/public/javascripts/deviceIntelligence.js";
|
|
103
|
+
setFingerprintCookie("{{deviceIntelligenceDomain}}")
|
|
104
|
+
</script>
|
|
97
105
|
{% endif %}
|
|
98
106
|
|
|
107
|
+
{{ ga4OnPageLoad({
|
|
108
|
+
nonce: cspNonce,
|
|
109
|
+
statusCode: statusCode,
|
|
110
|
+
dynamic: isPageDynamic,
|
|
111
|
+
englishPageTitle: pageTitleKey | translate,
|
|
112
|
+
taxonomyLevel1: taxLevel1,
|
|
113
|
+
taxonomyLevel2: taxLevel2,
|
|
114
|
+
taxonomyLevel3: taxLevel3,
|
|
115
|
+
taxonomyLevel4: taxLevel4,
|
|
116
|
+
taxonomyLevel5: taxLevel5,
|
|
117
|
+
contentId: contentID,
|
|
118
|
+
loggedInStatus: loggedInStatus
|
|
119
|
+
}) }}
|
|
99
120
|
{% endblock %}
|
|
100
|
-
{% endblock %}
|
|
121
|
+
{% endblock %}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
{% if MAY_2025_REBRAND_ENABLED %}
|
|
2
|
-
{% set govukRebrand = true %}
|
|
3
|
-
{% set assetPath = "/public/rebrand"%}
|
|
2
|
+
{% set govukRebrand = true %}
|
|
3
|
+
{% set assetPath = "/public/rebrand"%}
|
|
4
4
|
{% endif %}
|
|
5
5
|
|
|
6
|
+
{% set isPageDataSensitive = true %}
|
|
7
|
+
{% set taxLevel1 = 'web cri' %}
|
|
8
|
+
|
|
6
9
|
{% extends "hmpo-template.njk" %}
|
|
7
10
|
|
|
11
|
+
{% from "frontend-analytics/components/ga4-opl/macro.njk" import ga4OnPageLoad %}
|
|
8
12
|
{% from "frontend-ui/build/components/cookie-banner/macro.njk" import frontendUiCookieBanner %}
|
|
9
13
|
{% from "frontend-ui/build/components/phase-banner/macro.njk" import frontendUiPhaseBanner %}
|
|
10
14
|
{% from "frontend-ui/build/components/header/macro.njk" import frontendUiHeader %}
|
|
@@ -21,7 +25,7 @@
|
|
|
21
25
|
|
|
22
26
|
{% block header %}
|
|
23
27
|
{% block cookieBanner %}
|
|
24
|
-
|
|
28
|
+
{{ frontendUiCookieBanner({
|
|
25
29
|
translations: translations.cookieBanner
|
|
26
30
|
}
|
|
27
31
|
)}}
|
|
@@ -36,7 +40,7 @@
|
|
|
36
40
|
{% endblock %}
|
|
37
41
|
|
|
38
42
|
{% block beforeContent %}
|
|
39
|
-
|
|
43
|
+
{{ frontendUiPhaseBanner({
|
|
40
44
|
translations: translations.phaseBanner,
|
|
41
45
|
url: currentUrl,
|
|
42
46
|
contactUrl: 'https://signin.account.gov.uk/contact-us'
|
|
@@ -47,13 +51,13 @@
|
|
|
47
51
|
url: currentUrl,
|
|
48
52
|
activeLanguage: htmlLang
|
|
49
53
|
}) }}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
54
|
+
{% if backLink %}
|
|
55
|
+
{% from "govuk/components/back-link/macro.njk" import govukBackLink %}
|
|
56
|
+
<span id="back">{{ govukBackLink({
|
|
53
57
|
text: translate("govuk.backLink"),
|
|
54
58
|
href: backLink}) }}
|
|
55
|
-
|
|
56
|
-
|
|
59
|
+
</span>
|
|
60
|
+
{% endif %}
|
|
57
61
|
|
|
58
62
|
{% endblock %}
|
|
59
63
|
{% endblock %}
|
|
@@ -69,31 +73,49 @@
|
|
|
69
73
|
<script type="text/javascript" src="/public/javascripts/all.js"></script>
|
|
70
74
|
<script type="text/javascript" src="/public/javascripts/analytics.js"></script>
|
|
71
75
|
<script type="text/javascript" {% if cspNonce %} nonce="{{ cspNonce }}"{% endif %}>
|
|
72
|
-
window
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
76
|
+
window
|
|
77
|
+
.GOVUKFrontend
|
|
78
|
+
.initAll()
|
|
79
|
+
window
|
|
80
|
+
.DI
|
|
81
|
+
.appInit({
|
|
82
|
+
ga4ContainerId: "{{ga4ContainerId}}",
|
|
83
|
+
uaContainerId: "{{uaContainerId}}"
|
|
84
|
+
}, {
|
|
85
|
+
enableGa4Tracking: {{ga4Enabled}},
|
|
86
|
+
enableUaTracking: {{uaEnabled}},
|
|
87
|
+
enablePageViewTracking: {{ga4PageViewEnabled}},
|
|
88
|
+
enableFormErrorTracking: {{ga4FormErrorEnabled}},
|
|
89
|
+
enableFormChangeTracking: {{ga4FormChangeEnabled}},
|
|
90
|
+
enableFormResponseTracking: {{ga4FormResponseEnabled}},
|
|
91
|
+
enableNavigationTracking: {{ga4NavigationEnabled}},
|
|
92
|
+
enableSelectContentTracking: {{ga4SelectContentEnabled}},
|
|
93
|
+
cookieDomain: "{{analyticsCookieDomain}}",
|
|
94
|
+
isDataSensitive: {{analyticsDataSensitive}},
|
|
95
|
+
isPageDataSensitive: {{isPageDataSensitive}}
|
|
96
|
+
});
|
|
88
97
|
</script>
|
|
89
98
|
|
|
90
99
|
{% if deviceIntelligenceEnabled %}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
100
|
+
<script type="module" src="/public/javascripts/deviceIntelligence.js"></script>
|
|
101
|
+
<script type="module" {% if cspNonce %} nonce="{{ cspNonce }}"{% endif %}>
|
|
102
|
+
import {setFingerprintCookie} from "/public/javascripts/deviceIntelligence.js";
|
|
103
|
+
setFingerprintCookie("{{deviceIntelligenceDomain}}")
|
|
104
|
+
</script>
|
|
105
|
+
{% endif %}
|
|
97
106
|
|
|
107
|
+
{{ ga4OnPageLoad({
|
|
108
|
+
nonce: cspNonce,
|
|
109
|
+
statusCode: statusCode,
|
|
110
|
+
dynamic: isPageDynamic,
|
|
111
|
+
englishPageTitle: pageTitleKey | translate,
|
|
112
|
+
taxonomyLevel1: taxLevel1,
|
|
113
|
+
taxonomyLevel2: taxLevel2,
|
|
114
|
+
taxonomyLevel3: taxLevel3,
|
|
115
|
+
taxonomyLevel4: taxLevel4,
|
|
116
|
+
taxonomyLevel5: taxLevel5,
|
|
117
|
+
contentId: contentID,
|
|
118
|
+
loggedInStatus: loggedInStatus
|
|
119
|
+
}) }}
|
|
98
120
|
{% endblock %}
|
|
99
|
-
{% endblock %}
|
|
121
|
+
{% endblock %}
|
|
@@ -2,7 +2,10 @@
|
|
|
2
2
|
{% set govukRebrand = true %}
|
|
3
3
|
{% endif %}
|
|
4
4
|
|
|
5
|
-
{% set isPageDataSensitive =
|
|
5
|
+
{% set isPageDataSensitive = true %}
|
|
6
|
+
{% set taxLevel1 = 'web cri' %}
|
|
7
|
+
{% set taxLevel2 = 'pre cri' %}
|
|
8
|
+
|
|
6
9
|
|
|
7
10
|
{% extends "govuk/template.njk" %}
|
|
8
11
|
{% from "frontend-ui/build/components/cookie-banner/macro.njk" import frontendUiCookieBanner %}
|
|
@@ -10,9 +13,7 @@
|
|
|
10
13
|
{% from "frontend-ui/build/components/header/macro.njk" import frontendUiHeader %}
|
|
11
14
|
{% from "frontend-ui/build/components/footer/macro.njk" import frontendUiFooter %}
|
|
12
15
|
{% from "frontend-ui/build/components/language-select/macro.njk" import frontendUiLanguageSelect %}
|
|
13
|
-
{
|
|
14
|
-
|
|
15
|
-
{% from basePath ~ "/views/shared/ga4/on-page-load-macro.njk" import ga4OnPageLoad %}
|
|
16
|
+
{% from "frontend-analytics/components/ga4-opl/macro.njk" import ga4OnPageLoad %}
|
|
16
17
|
{% from "govuk/components/back-link/macro.njk" import govukBackLink %}
|
|
17
18
|
{% from "govuk/components/error-summary/macro.njk" import govukErrorSummary %}
|
|
18
19
|
{% from "govuk/components/notification-banner/macro.njk" import govukNotificationBanner %}
|
|
@@ -146,18 +147,24 @@
|
|
|
146
147
|
ga4ContainerId: "{{ ga4ContainerId }}",
|
|
147
148
|
uaContainerId: "{{ uaContainerId }}"
|
|
148
149
|
}, {
|
|
150
|
+
isDataSensitive: {{analyticsDataSensitive}},
|
|
151
|
+
isPageDataSensitive: {{isPageDataSensitive}},
|
|
149
152
|
enableGa4Tracking: {{isGa4Enabled}},
|
|
150
153
|
enableUaTracking: {{isUaEnabled}},
|
|
151
154
|
cookieDomain: "{{analyticsCookieDomain}}"
|
|
152
155
|
});
|
|
153
156
|
</script>
|
|
154
157
|
{{ ga4OnPageLoad({
|
|
155
|
-
cspNonce: cspNonce,
|
|
156
|
-
isPageDynamic: isPageDynamic,
|
|
157
|
-
englishPageTitle: pageTitleKey | translateToEnglish }) }}
|
|
158
|
-
{# {{ frontendAnalyticsGa4OnPageLoad({
|
|
159
158
|
nonce: cspNonce,
|
|
159
|
+
statusCode: statusCode,
|
|
160
160
|
dynamic: isPageDynamic,
|
|
161
|
-
englishPageTitle: pageTitleKey | translateToEnglish
|
|
161
|
+
englishPageTitle: pageTitleKey | translateToEnglish,
|
|
162
|
+
taxonomyLevel1: taxLevel1,
|
|
163
|
+
taxonomyLevel2: taxLevel2,
|
|
164
|
+
taxonomyLevel3: taxLevel3,
|
|
165
|
+
taxonomyLevel4: taxLevel4,
|
|
166
|
+
taxonomyLevel5: taxLevel5,
|
|
167
|
+
contentId: contentID
|
|
168
|
+
}) }}
|
|
162
169
|
|
|
163
170
|
{% endblock %}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@govuk-one-login/frontend-ui",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "build/cjs/backend/index.cjs",
|
|
6
6
|
"module": "build/esm/backend/index.js",
|
|
@@ -42,7 +42,8 @@
|
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|
|
44
44
|
"express": "^5.1.0 || >= 4.21.2",
|
|
45
|
-
"govuk-frontend": "^4.10.1 || ^5.0.0"
|
|
45
|
+
"govuk-frontend": "^4.10.1 || ^5.0.0",
|
|
46
|
+
"@govuk-one-login/frontend-analytics": " ^3.0.1 || ^4.0.3"
|
|
46
47
|
},
|
|
47
48
|
"exports": {
|
|
48
49
|
".": {
|