govuk_frontend_toolkit 7.6.0 → 9.0.1
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/README.md +9 -0
- data/app/assets/.ruby-version +1 -1
- data/app/assets/CHANGELOG.md +37 -0
- data/app/assets/Gemfile +0 -1
- data/app/assets/Gruntfile.js +0 -3
- data/app/assets/README.md +7 -21
- data/app/assets/VERSION.txt +1 -1
- data/app/assets/docs/mixins.md +1 -1
- data/app/assets/javascripts/govuk/show-hide-content.js +1 -7
- data/app/assets/javascripts/stageprompt.js +7 -1
- data/app/assets/package-lock.json +2471 -0
- data/app/assets/spec/unit/show-hide-content.spec.js +57 -0
- data/app/assets/spec/unit/stageprompt.spec.js +170 -0
- data/app/assets/stylesheets/colours/_organisation.scss +1 -1
- data/govuk_frontend_toolkit.gemspec +0 -3
- data/publish.sh +1 -2
- metadata +5 -49
- data/Rakefile +0 -10
- data/app/assets/docs/analytics.md +0 -272
- data/app/assets/javascripts/govuk/analytics/analytics.js +0 -153
- data/app/assets/javascripts/govuk/analytics/download-link-tracker.js +0 -41
- data/app/assets/javascripts/govuk/analytics/error-tracking.js +0 -51
- data/app/assets/javascripts/govuk/analytics/external-link-tracker.js +0 -56
- data/app/assets/javascripts/govuk/analytics/google-analytics-universal-tracker.js +0 -176
- data/app/assets/javascripts/govuk/analytics/govuk-tracker.js +0 -134
- data/app/assets/javascripts/govuk/analytics/mailto-link-tracker.js +0 -38
- data/app/assets/javascripts/govuk/analytics/print-intent.js +0 -39
- data/app/assets/spec/unit/analytics/analytics.spec.js +0 -403
- data/app/assets/spec/unit/analytics/download-link-tracker.spec.js +0 -72
- data/app/assets/spec/unit/analytics/error-tracking.spec.js +0 -65
- data/app/assets/spec/unit/analytics/external-link-tracker.spec.js +0 -109
- data/app/assets/spec/unit/analytics/google-analytics-universal-tracker.spec.js +0 -187
- data/app/assets/spec/unit/analytics/govuk-tracker.spec.js +0 -171
- data/app/assets/spec/unit/analytics/mailto-link-tracker.spec.js +0 -62
@@ -32,6 +32,18 @@ describe('show-hide-content', function () {
|
|
32
32
|
'<div id="show-hide-radios" class="panel js-hidden" />' +
|
33
33
|
'</form>' +
|
34
34
|
|
35
|
+
'<form>' +
|
36
|
+
'<div class="multiple-choice" data-target="show-hide-radios--name-with-characters-to-escape">' +
|
37
|
+
'<input type="radio" name="test.single[option1=\'value1\'][option2=\'value2\']" value="yes">' +
|
38
|
+
'<label>Yes</label>' +
|
39
|
+
'</div>' +
|
40
|
+
'<div class="multiple-choice">' +
|
41
|
+
'<input type="radio" name="test.single[option1=\'value1\'][option2=\'value2\']" value="no">' +
|
42
|
+
'<label>No</label>' +
|
43
|
+
'</div>' +
|
44
|
+
'<div id="show-hide-radios--name-with-characters-to-escape" class="panel js-hidden" />' +
|
45
|
+
'</form>' +
|
46
|
+
|
35
47
|
// Checkboxes (multiple values)
|
36
48
|
'<form>' +
|
37
49
|
'<div class="multiple-choice" data-target="show-hide-checkboxes">' +
|
@@ -58,6 +70,10 @@ describe('show-hide-content', function () {
|
|
58
70
|
this.$radio1 = $radios.eq(0)
|
59
71
|
this.$radio2 = $radios.eq(1)
|
60
72
|
|
73
|
+
// Two more radios, with name attributes that include periods
|
74
|
+
this.$radio3 = $radios.eq(2)
|
75
|
+
this.$radio4 = $radios.eq(3)
|
76
|
+
|
61
77
|
// Three checkboxes
|
62
78
|
this.$checkbox1 = $checkboxes.eq(0)
|
63
79
|
this.$checkbox2 = $checkboxes.eq(1)
|
@@ -68,6 +84,7 @@ describe('show-hide-content', function () {
|
|
68
84
|
|
69
85
|
// Show/Hide content
|
70
86
|
this.$radioShowHide = $('#show-hide-radios')
|
87
|
+
this.$radioShowHide_nameWithCharactersToEscape = $('#show-hide-radios--name-with-characters-to-escape')
|
71
88
|
this.$checkboxShowHide = $('#show-hide-checkboxes')
|
72
89
|
|
73
90
|
// Add show/hide content support
|
@@ -79,25 +96,36 @@ describe('show-hide-content', function () {
|
|
79
96
|
it('should add the aria attributes to inputs with show/hide content', function () {
|
80
97
|
expect(this.$radio1.attr('aria-expanded')).toBe('false')
|
81
98
|
expect(this.$radio1.attr('aria-controls')).toBe('show-hide-radios')
|
99
|
+
|
100
|
+
expect(this.$radio3.attr('aria-expanded')).toBe('false')
|
101
|
+
expect(this.$radio3.attr('aria-controls')).toBe('show-hide-radios--name-with-characters-to-escape')
|
82
102
|
})
|
83
103
|
|
84
104
|
it('should add the aria attributes to show/hide content', function () {
|
85
105
|
expect(this.$radioShowHide.attr('aria-hidden')).toBe('true')
|
86
106
|
expect(this.$radioShowHide.hasClass('js-hidden')).toEqual(true)
|
107
|
+
|
108
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.attr('aria-hidden')).toBe('true')
|
109
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.hasClass('js-hidden')).toEqual(true)
|
87
110
|
})
|
88
111
|
|
89
112
|
it('should hide the show/hide content visually', function () {
|
90
113
|
expect(this.$radioShowHide.hasClass('js-hidden')).toEqual(true)
|
114
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.hasClass('js-hidden')).toEqual(true)
|
91
115
|
})
|
92
116
|
|
93
117
|
it('should do nothing if no radios are checked', function () {
|
94
118
|
expect(this.$radio1.attr('aria-expanded')).toBe('false')
|
95
119
|
expect(this.$radio2.attr('aria-expanded')).toBe(undefined)
|
120
|
+
expect(this.$radio3.attr('aria-expanded')).toBe('false')
|
121
|
+
expect(this.$radio4.attr('aria-expanded')).toBe(undefined)
|
96
122
|
})
|
97
123
|
|
98
124
|
it('should do nothing if no checkboxes are checked', function () {
|
99
125
|
expect(this.$radio1.attr('aria-expanded')).toBe('false')
|
100
126
|
expect(this.$radio2.attr('aria-expanded')).toBe(undefined)
|
127
|
+
expect(this.$radio3.attr('aria-expanded')).toBe('false')
|
128
|
+
expect(this.$radio4.attr('aria-expanded')).toBe(undefined)
|
101
129
|
})
|
102
130
|
|
103
131
|
describe('with non-default markup', function () {
|
@@ -107,12 +135,18 @@ describe('show-hide-content', function () {
|
|
107
135
|
|
108
136
|
it('should do nothing if a radio without show/hide content is checked', function () {
|
109
137
|
this.$radio2.prop('checked', true)
|
138
|
+
this.$radio4.prop('checked', true)
|
110
139
|
|
111
140
|
// Defaults changed, initialise again
|
112
141
|
this.showHideContent = new GOVUK.ShowHideContent().init()
|
113
142
|
expect(this.$radio1.attr('aria-expanded')).toBe('false')
|
143
|
+
expect(this.$radio3.attr('aria-expanded')).toBe('false')
|
144
|
+
|
114
145
|
expect(this.$radioShowHide.attr('aria-hidden')).toBe('true')
|
146
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.attr('aria-hidden')).toBe('true')
|
147
|
+
|
115
148
|
expect(this.$radioShowHide.hasClass('js-hidden')).toEqual(true)
|
149
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.hasClass('js-hidden')).toEqual(true)
|
116
150
|
})
|
117
151
|
|
118
152
|
it('should do nothing if a checkbox without show/hide content is checked', function () {
|
@@ -138,12 +172,18 @@ describe('show-hide-content', function () {
|
|
138
172
|
|
139
173
|
it('should make the show/hide content visible if its radio is checked', function () {
|
140
174
|
this.$radio1.prop('checked', true)
|
175
|
+
this.$radio3.prop('checked', true)
|
141
176
|
|
142
177
|
// Defaults changed, initialise again
|
143
178
|
this.showHideContent = new GOVUK.ShowHideContent().init()
|
144
179
|
expect(this.$radio1.attr('aria-expanded')).toBe('true')
|
180
|
+
expect(this.$radio3.attr('aria-expanded')).toBe('true')
|
181
|
+
|
145
182
|
expect(this.$radioShowHide.attr('aria-hidden')).toBe('false')
|
183
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.attr('aria-hidden')).toBe('false')
|
184
|
+
|
146
185
|
expect(this.$radioShowHide.hasClass('js-hidden')).toEqual(false)
|
186
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.hasClass('js-hidden')).toEqual(false)
|
147
187
|
})
|
148
188
|
|
149
189
|
it('should make the show/hide content visible if its checkbox is checked', function () {
|
@@ -160,14 +200,23 @@ describe('show-hide-content', function () {
|
|
160
200
|
describe('and a show/hide radio receives a click', function () {
|
161
201
|
it('should make the show/hide content visible', function () {
|
162
202
|
this.$radio1.click()
|
203
|
+
this.$radio3.click()
|
163
204
|
expect(this.$radioShowHide.hasClass('js-hidden')).toEqual(false)
|
205
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.hasClass('js-hidden')).toEqual(false)
|
164
206
|
})
|
165
207
|
|
166
208
|
it('should add the aria attributes to show/hide content', function () {
|
167
209
|
this.$radio1.click()
|
210
|
+
this.$radio3.click()
|
211
|
+
|
168
212
|
expect(this.$radio1.attr('aria-expanded')).toBe('true')
|
213
|
+
expect(this.$radio3.attr('aria-expanded')).toBe('true')
|
214
|
+
|
169
215
|
expect(this.$radioShowHide.attr('aria-hidden')).toBe('false')
|
216
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.attr('aria-hidden')).toBe('false')
|
217
|
+
|
170
218
|
expect(this.$radioShowHide.hasClass('js-hidden')).toEqual(false)
|
219
|
+
expect(this.$radioShowHide_nameWithCharactersToEscape.hasClass('js-hidden')).toEqual(false)
|
171
220
|
})
|
172
221
|
})
|
173
222
|
|
@@ -223,6 +272,10 @@ describe('show-hide-content', function () {
|
|
223
272
|
namespace: 'ShowHideContent',
|
224
273
|
selector: 'input[type="radio"][name="single"]'
|
225
274
|
}))
|
275
|
+
expect(events && events.click).toContain(jasmine.objectContaining({
|
276
|
+
namespace: 'ShowHideContent',
|
277
|
+
selector: 'input[type="radio"][name="test.single[option1=\'value1\'][option2=\'value2\']"]'
|
278
|
+
}))
|
226
279
|
expect(events && events.click).toContain(jasmine.objectContaining({
|
227
280
|
namespace: 'ShowHideContent',
|
228
281
|
selector: '[data-target] > input[type="checkbox"]'
|
@@ -241,6 +294,10 @@ describe('show-hide-content', function () {
|
|
241
294
|
namespace: 'ShowHideContent',
|
242
295
|
selector: 'input[type="radio"][name="single"]'
|
243
296
|
}))
|
297
|
+
expect(events && events.click).not.toContain(jasmine.objectContaining({
|
298
|
+
namespace: 'ShowHideContent',
|
299
|
+
selector: 'input[type="radio"][name="test.single[option1=\'value1\'][option2=\'value2\']"]'
|
300
|
+
}))
|
244
301
|
expect(events && events.click).not.toContain(jasmine.objectContaining({
|
245
302
|
namespace: 'ShowHideContent',
|
246
303
|
selector: '[data-target] > input[type="checkbox"]'
|
@@ -0,0 +1,170 @@
|
|
1
|
+
/* global describe it expect beforeEach afterEach jasmine */
|
2
|
+
|
3
|
+
var $ = window.jQuery
|
4
|
+
|
5
|
+
describe('stageprompt', function () {
|
6
|
+
'use strict'
|
7
|
+
var GOVUK = window.GOVUK
|
8
|
+
|
9
|
+
var analyticsCallback
|
10
|
+
|
11
|
+
beforeEach(function () {
|
12
|
+
$('<div id="sandbox"></div>').appendTo('body')
|
13
|
+
})
|
14
|
+
|
15
|
+
afterEach(function () {
|
16
|
+
$('#sandbox').remove()
|
17
|
+
})
|
18
|
+
|
19
|
+
it('should exist in a namespace', function () {
|
20
|
+
expect(GOVUK.performance.stageprompt).not.toBeNull()
|
21
|
+
})
|
22
|
+
|
23
|
+
it('should not blow up if there are no data-journey tags', function () {
|
24
|
+
expect($('[data-journey]').length).toBe(0)
|
25
|
+
GOVUK.performance.stageprompt.setup(function () {})
|
26
|
+
})
|
27
|
+
|
28
|
+
describe('fire the analytics callback when a data-journey tag is found', function () {
|
29
|
+
beforeEach(function () {
|
30
|
+
analyticsCallback = jasmine.createSpy()
|
31
|
+
$('<div id="sandbox"></div>').appendTo('body')
|
32
|
+
})
|
33
|
+
|
34
|
+
afterEach(function () {
|
35
|
+
$('#sandbox').remove()
|
36
|
+
$('[data-journey]').removeAttr('data-journey')
|
37
|
+
})
|
38
|
+
|
39
|
+
it('should send an event if the page has a data-journey tag on the body', function () {
|
40
|
+
$('body').attr('data-journey', 'test-journey:someStage')
|
41
|
+
GOVUK.performance.stageprompt.setup(analyticsCallback)
|
42
|
+
|
43
|
+
expect(analyticsCallback).toHaveBeenCalledWith('test-journey', 'someStage')
|
44
|
+
})
|
45
|
+
|
46
|
+
it('should send an event if the page has a data-journey tag on another tag', function () {
|
47
|
+
$('#sandbox').attr('data-journey', 'test-journey:nextStep')
|
48
|
+
|
49
|
+
GOVUK.performance.stageprompt.setup(analyticsCallback)
|
50
|
+
|
51
|
+
expect(analyticsCallback).toHaveBeenCalledWith('test-journey', 'nextStep')
|
52
|
+
})
|
53
|
+
|
54
|
+
it('should send one event if the page has multiple elements with data-journey attribute', function () {
|
55
|
+
$('#sandbox').attr('data-journey', 'test-journey:stuff')
|
56
|
+
$('#sandbox').html('<p id="foo" data-journey="test-journey:moreStuff">something</p>')
|
57
|
+
|
58
|
+
GOVUK.performance.stageprompt.setup(analyticsCallback)
|
59
|
+
|
60
|
+
expect(analyticsCallback.calls.count()).toBe(1)
|
61
|
+
})
|
62
|
+
})
|
63
|
+
|
64
|
+
describe('callback arguments', function () {
|
65
|
+
var analyticsCallback
|
66
|
+
|
67
|
+
beforeEach(function () {
|
68
|
+
analyticsCallback = jasmine.createSpy()
|
69
|
+
$('<div id="sandbox"></div>').appendTo('body')
|
70
|
+
})
|
71
|
+
|
72
|
+
afterEach(function () {
|
73
|
+
$('#sandbox').remove()
|
74
|
+
$('[data-journey]').removeAttr('data-journey')
|
75
|
+
})
|
76
|
+
|
77
|
+
it('should pass action parts as separate arguments to the callback', function () {
|
78
|
+
$('#sandbox').attr('data-journey', 'part-1:part-2')
|
79
|
+
|
80
|
+
GOVUK.performance.stageprompt.setup(analyticsCallback)
|
81
|
+
|
82
|
+
expect(analyticsCallback).toHaveBeenCalledWith('part-1', 'part-2')
|
83
|
+
})
|
84
|
+
|
85
|
+
it('should pass a single-part action as one argument', function () {
|
86
|
+
$('#sandbox').attr('data-journey', 'single-part')
|
87
|
+
|
88
|
+
GOVUK.performance.stageprompt.setup(analyticsCallback)
|
89
|
+
|
90
|
+
expect(analyticsCallback).toHaveBeenCalledWith('single-part')
|
91
|
+
})
|
92
|
+
|
93
|
+
it('should pass at most three arguments to the callback', function () {
|
94
|
+
$('#sandbox').attr('data-journey', 'part-1:part-2:part-3:additional-content')
|
95
|
+
|
96
|
+
GOVUK.performance.stageprompt.setup(analyticsCallback)
|
97
|
+
|
98
|
+
expect(analyticsCallback).toHaveBeenCalledWith('part-1', 'part-2', 'part-3:additional-content')
|
99
|
+
})
|
100
|
+
})
|
101
|
+
|
102
|
+
describe('sending events for click actions', function () {
|
103
|
+
beforeEach(function () {
|
104
|
+
analyticsCallback = jasmine.createSpy()
|
105
|
+
$('<div id="sandbox"></div>').appendTo('body')
|
106
|
+
})
|
107
|
+
|
108
|
+
afterEach(function () {
|
109
|
+
$('#sandbox').remove()
|
110
|
+
})
|
111
|
+
|
112
|
+
it('should send an event when a help link is clicked', function () {
|
113
|
+
$('#sandbox').attr('data-journey-click', 'test-journey:stuff:help')
|
114
|
+
GOVUK.performance.stageprompt.setup(analyticsCallback)
|
115
|
+
|
116
|
+
$('#sandbox').click()
|
117
|
+
|
118
|
+
expect(analyticsCallback).toHaveBeenCalledWith('test-journey', 'stuff', 'help')
|
119
|
+
})
|
120
|
+
|
121
|
+
it('should send events for multiple help elements on the same page', function () {
|
122
|
+
$('#sandbox').append('<a href="#" id="1" data-journey-click="a">foo</a>')
|
123
|
+
$('#sandbox').append('<a href="#" id="2" data-journey-click="b">bar</a>')
|
124
|
+
|
125
|
+
GOVUK.performance.stageprompt.setup(analyticsCallback)
|
126
|
+
$('#1').click()
|
127
|
+
$('#2').click()
|
128
|
+
|
129
|
+
expect(analyticsCallback).toHaveBeenCalledWith('a')
|
130
|
+
expect(analyticsCallback).toHaveBeenCalledWith('b')
|
131
|
+
})
|
132
|
+
|
133
|
+
it('should send one event per click on tagged item', function () {
|
134
|
+
$('#sandbox').append('<a href="#" id="1" data-journey-click="a">foo</a>')
|
135
|
+
GOVUK.performance.stageprompt.setup(analyticsCallback)
|
136
|
+
|
137
|
+
$('#1').click()
|
138
|
+
$('#1').click()
|
139
|
+
|
140
|
+
expect(analyticsCallback.calls.count()).toBe(2)
|
141
|
+
})
|
142
|
+
})
|
143
|
+
|
144
|
+
describe('out-of-the-box Google Analytics setup', function () {
|
145
|
+
beforeEach(function () {
|
146
|
+
$('<div id="gaTest" data-journey="thisIsATest"></div>').appendTo('body')
|
147
|
+
})
|
148
|
+
|
149
|
+
afterEach(function () {
|
150
|
+
$('#gaTest').remove()
|
151
|
+
})
|
152
|
+
|
153
|
+
it('should get set up to send events to google analytics using ga() if it exists', function () {
|
154
|
+
window.ga = jasmine.createSpy('ga')
|
155
|
+
|
156
|
+
GOVUK.performance.stageprompt.setupForGoogleAnalytics()
|
157
|
+
|
158
|
+
expect(window.ga).toHaveBeenCalledWith('send', 'event', 'thisIsATest', undefined, undefined, { nonInteraction: true })
|
159
|
+
})
|
160
|
+
|
161
|
+
it('should get set up to send events to google analytics using gaq.push() if ga() does not exist', function () {
|
162
|
+
delete window.ga
|
163
|
+
window._gaq = {push: jasmine.createSpy('_gaq.push')}
|
164
|
+
|
165
|
+
GOVUK.performance.stageprompt.setupForGoogleAnalytics()
|
166
|
+
|
167
|
+
expect(window._gaq.push).toHaveBeenCalledWith(['_trackEvent', 'thisIsATest', undefined, undefined, undefined, true])
|
168
|
+
})
|
169
|
+
})
|
170
|
+
})
|
@@ -9,7 +9,7 @@ $cabinet-office-websafe: #347da4;
|
|
9
9
|
$civil-service: #af292e;
|
10
10
|
$department-for-business-innovation-skills: #003479;
|
11
11
|
$department-for-business-innovation-skills-websafe: #347da4;
|
12
|
-
$department-for-communities-and-local-government: #
|
12
|
+
$department-for-communities-and-local-government: #009999;
|
13
13
|
$department-for-communities-and-local-government-websafe: #37836e;
|
14
14
|
$department-for-culture-media-sport: #d40072;
|
15
15
|
$department-for-culture-media-sport-websafe: #a03155;
|
data/publish.sh
CHANGED
@@ -18,9 +18,8 @@ git submodule foreach git pull origin master
|
|
18
18
|
# The version of the toolkit defined in the submodules master branch
|
19
19
|
NEW_SUBMODULE_VERSION=`cat app/assets/VERSION.txt`
|
20
20
|
|
21
|
-
#
|
21
|
+
# Check we can install gem dependencies
|
22
22
|
bundle install
|
23
|
-
bundle exec rake
|
24
23
|
|
25
24
|
# If the submodule has a new version string
|
26
25
|
if [ "$PINNED_SUBMODULE_VERSION" != "$NEW_SUBMODULE_VERSION" ]; then
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: govuk_frontend_toolkit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 9.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Government Digital Service
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-06-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: railties
|
@@ -24,34 +24,6 @@ dependencies:
|
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 3.1.0
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: sass
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ">="
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: 3.2.0
|
34
|
-
type: :runtime
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - ">="
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: 3.2.0
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: rake
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - '='
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: 0.9.2.2
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - '='
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: 0.9.2.2
|
55
27
|
description:
|
56
28
|
email:
|
57
29
|
- govuk-dev@digital.cabinet-office.gov.uk
|
@@ -69,7 +41,6 @@ files:
|
|
69
41
|
- Gemfile
|
70
42
|
- LICENCE
|
71
43
|
- README.md
|
72
|
-
- Rakefile
|
73
44
|
- app/assets/.gitignore
|
74
45
|
- app/assets/.ruby-version
|
75
46
|
- app/assets/.travis.yml
|
@@ -85,7 +56,6 @@ files:
|
|
85
56
|
- app/assets/README.md
|
86
57
|
- app/assets/VERSION.txt
|
87
58
|
- app/assets/create-release.sh
|
88
|
-
- app/assets/docs/analytics.md
|
89
59
|
- app/assets/docs/functions.md
|
90
60
|
- app/assets/docs/javascript.md
|
91
61
|
- app/assets/docs/mixins.md
|
@@ -217,14 +187,6 @@ files:
|
|
217
187
|
- app/assets/images/player-icon-volume.png
|
218
188
|
- app/assets/images/separator-2x.png
|
219
189
|
- app/assets/images/separator.png
|
220
|
-
- app/assets/javascripts/govuk/analytics/analytics.js
|
221
|
-
- app/assets/javascripts/govuk/analytics/download-link-tracker.js
|
222
|
-
- app/assets/javascripts/govuk/analytics/error-tracking.js
|
223
|
-
- app/assets/javascripts/govuk/analytics/external-link-tracker.js
|
224
|
-
- app/assets/javascripts/govuk/analytics/google-analytics-universal-tracker.js
|
225
|
-
- app/assets/javascripts/govuk/analytics/govuk-tracker.js
|
226
|
-
- app/assets/javascripts/govuk/analytics/mailto-link-tracker.js
|
227
|
-
- app/assets/javascripts/govuk/analytics/print-intent.js
|
228
190
|
- app/assets/javascripts/govuk/details.polyfill.js
|
229
191
|
- app/assets/javascripts/govuk/modules.js
|
230
192
|
- app/assets/javascripts/govuk/modules/auto-track-event.js
|
@@ -238,6 +200,7 @@ files:
|
|
238
200
|
- app/assets/javascripts/stageprompt.js
|
239
201
|
- app/assets/javascripts/vendor/jquery/jquery.player.min.js
|
240
202
|
- app/assets/javascripts/vendor/polyfills/bind.js
|
203
|
+
- app/assets/package-lock.json
|
241
204
|
- app/assets/package.json
|
242
205
|
- app/assets/spec/manifest.js
|
243
206
|
- app/assets/spec/stylesheets/_colour_contrast_spec.scss
|
@@ -245,13 +208,6 @@ files:
|
|
245
208
|
- app/assets/spec/support/console-runner.js
|
246
209
|
- app/assets/spec/support/load.js
|
247
210
|
- app/assets/spec/support/run_jasmine_test.js
|
248
|
-
- app/assets/spec/unit/analytics/analytics.spec.js
|
249
|
-
- app/assets/spec/unit/analytics/download-link-tracker.spec.js
|
250
|
-
- app/assets/spec/unit/analytics/error-tracking.spec.js
|
251
|
-
- app/assets/spec/unit/analytics/external-link-tracker.spec.js
|
252
|
-
- app/assets/spec/unit/analytics/google-analytics-universal-tracker.spec.js
|
253
|
-
- app/assets/spec/unit/analytics/govuk-tracker.spec.js
|
254
|
-
- app/assets/spec/unit/analytics/mailto-link-tracker.spec.js
|
255
211
|
- app/assets/spec/unit/details.polyfill.spec.js
|
256
212
|
- app/assets/spec/unit/modules.spec.js
|
257
213
|
- app/assets/spec/unit/modules/auto-track-event.spec.js
|
@@ -259,6 +215,7 @@ files:
|
|
259
215
|
- app/assets/spec/unit/selection-button.spec.js
|
260
216
|
- app/assets/spec/unit/shim-links-with-button-role.spec.js
|
261
217
|
- app/assets/spec/unit/show-hide-content.spec.js
|
218
|
+
- app/assets/spec/unit/stageprompt.spec.js
|
262
219
|
- app/assets/spec/unit/stick-at-top-when-scrolling.spec.js
|
263
220
|
- app/assets/stylesheets/.gitkeep
|
264
221
|
- app/assets/stylesheets/_colours.scss
|
@@ -304,8 +261,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
304
261
|
- !ruby/object:Gem::Version
|
305
262
|
version: '0'
|
306
263
|
requirements: []
|
307
|
-
|
308
|
-
rubygems_version: 2.7.7
|
264
|
+
rubygems_version: 3.0.8
|
309
265
|
signing_key:
|
310
266
|
specification_version: 4
|
311
267
|
summary: Tools for building frontend applications
|