govuk_tech_docs 3.4.0 → 3.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/lib/assets/stylesheets/_govuk_tech_docs.scss +13 -0
  4. data/lib/govuk_tech_docs/version.rb +1 -1
  5. data/lib/source/favicon.ico +0 -0
  6. data/lib/source/layouts/_header.erb +13 -15
  7. data/node_modules/govuk-frontend/govuk/all-ie8.scss +8 -0
  8. data/node_modules/govuk-frontend/govuk/all.js +4918 -3796
  9. data/node_modules/govuk-frontend/govuk/common/closest-attribute-value.js +54 -49
  10. data/node_modules/govuk-frontend/govuk/common/govuk-frontend-version.js +17 -0
  11. data/node_modules/govuk-frontend/govuk/common/index.js +172 -152
  12. data/node_modules/govuk-frontend/govuk/common/normalise-dataset.js +334 -321
  13. data/node_modules/govuk-frontend/govuk/common.js +171 -151
  14. data/node_modules/govuk-frontend/govuk/components/_all.scss +3 -2
  15. data/node_modules/govuk-frontend/govuk/components/accordion/_index.scss +26 -7
  16. data/node_modules/govuk-frontend/govuk/components/accordion/accordion.js +2203 -1650
  17. data/node_modules/govuk-frontend/govuk/components/back-link/_index.scss +24 -16
  18. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/_index.scss +34 -11
  19. data/node_modules/govuk-frontend/govuk/components/button/_index.scss +49 -9
  20. data/node_modules/govuk-frontend/govuk/components/button/button.js +961 -916
  21. data/node_modules/govuk-frontend/govuk/components/character-count/character-count.js +2142 -2038
  22. data/node_modules/govuk-frontend/govuk/components/checkboxes/_index.scss +6 -6
  23. data/node_modules/govuk-frontend/govuk/components/checkboxes/checkboxes.js +1204 -1145
  24. data/node_modules/govuk-frontend/govuk/components/details/details.js +826 -799
  25. data/node_modules/govuk-frontend/govuk/components/error-summary/error-summary.js +1097 -1044
  26. data/node_modules/govuk-frontend/govuk/components/exit-this-page/_exit-this-page.scss +2 -0
  27. data/node_modules/govuk-frontend/govuk/components/exit-this-page/_index.scss +97 -0
  28. data/node_modules/govuk-frontend/govuk/components/exit-this-page/exit-this-page.js +2120 -0
  29. data/node_modules/govuk-frontend/govuk/components/file-upload/_index.scss +6 -1
  30. data/node_modules/govuk-frontend/govuk/components/footer/_index.scss +0 -7
  31. data/node_modules/govuk-frontend/govuk/components/header/_index.scss +6 -0
  32. data/node_modules/govuk-frontend/govuk/components/header/header.js +683 -1003
  33. data/node_modules/govuk-frontend/govuk/components/input/_index.scss +15 -3
  34. data/node_modules/govuk-frontend/govuk/components/notification-banner/notification-banner.js +786 -751
  35. data/node_modules/govuk-frontend/govuk/components/radios/_index.scss +5 -5
  36. data/node_modules/govuk-frontend/govuk/components/radios/radios.js +1151 -1105
  37. data/node_modules/govuk-frontend/govuk/components/select/_index.scss +7 -1
  38. data/node_modules/govuk-frontend/govuk/components/skip-link/skip-link.js +1045 -1014
  39. data/node_modules/govuk-frontend/govuk/components/summary-list/_index.scss +107 -0
  40. data/node_modules/govuk-frontend/govuk/components/tabs/tabs.js +1514 -1268
  41. data/node_modules/govuk-frontend/govuk/components/tag/_index.scss +18 -18
  42. data/node_modules/govuk-frontend/govuk/components/textarea/_index.scss +8 -1
  43. data/node_modules/govuk-frontend/govuk/core/_all.scss +1 -0
  44. data/node_modules/govuk-frontend/govuk/core/_govuk-frontend-version.scss +5 -0
  45. data/node_modules/govuk-frontend/govuk/helpers/_colour.scss +5 -2
  46. data/node_modules/govuk-frontend/govuk/helpers/_focused.scss +1 -1
  47. data/node_modules/govuk-frontend/govuk/helpers/_font-faces.scss +1 -1
  48. data/node_modules/govuk-frontend/govuk/helpers/_visually-hidden.scss +12 -0
  49. data/node_modules/govuk-frontend/govuk/i18n.js +371 -364
  50. data/node_modules/govuk-frontend/govuk/objects/_template.scss +20 -0
  51. data/node_modules/govuk-frontend/govuk/objects/_width-container.scss +1 -1
  52. data/node_modules/govuk-frontend/govuk/settings/_colours-organisations.scss +4 -0
  53. data/node_modules/govuk-frontend/govuk/settings/_ie8.scss +16 -0
  54. data/node_modules/govuk-frontend/govuk/settings/_links.scss +5 -1
  55. data/node_modules/govuk-frontend/govuk/settings/_measurements.scss +5 -5
  56. data/node_modules/govuk-frontend/govuk/tools/_ie8.scss +38 -2
  57. data/node_modules/govuk-frontend/govuk/vendor/polyfills/DOMTokenList.js +243 -241
  58. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Date/now.js +14 -12
  59. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Document.js +18 -16
  60. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/classList.js +553 -545
  61. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/closest.js +40 -36
  62. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/dataset.js +257 -250
  63. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/matches.js +22 -20
  64. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/nextElementSibling.js +204 -197
  65. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/previousElementSibling.js +204 -197
  66. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element.js +109 -105
  67. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Event.js +407 -399
  68. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Function/prototype/bind.js +242 -238
  69. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Object/defineProperty.js +73 -71
  70. data/node_modules/govuk-frontend/govuk/vendor/polyfills/String/prototype/trim.js +15 -13
  71. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Window.js +18 -16
  72. data/node_modules/govuk-frontend/govuk-prototype-kit/init.js +1 -0
  73. data/package-lock.json +7 -7
  74. data/package.json +1 -1
  75. metadata +8 -3
@@ -4,91 +4,93 @@
4
4
  (factory());
5
5
  }(this, (function () { 'use strict';
6
6
 
7
- (function(undefined) {
7
+ // @ts-nocheck
8
+ (function (undefined) {
8
9
 
9
- // Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Object/defineProperty/detect.js
10
- var detect = (
11
- // In IE8, defineProperty could only act on DOM elements, so full support
12
- // for the feature requires the ability to set a property on an arbitrary object
13
- 'defineProperty' in Object && (function() {
14
- try {
15
- var a = {};
16
- Object.defineProperty(a, 'test', {value:42});
17
- return true;
18
- } catch(e) {
19
- return false
20
- }
21
- }())
22
- );
10
+ // Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Object/defineProperty/detect.js
11
+ var detect = (
12
+ // In IE8, defineProperty could only act on DOM elements, so full support
13
+ // for the feature requires the ability to set a property on an arbitrary object
14
+ 'defineProperty' in Object && (function() {
15
+ try {
16
+ var a = {};
17
+ Object.defineProperty(a, 'test', {value:42});
18
+ return true;
19
+ } catch(e) {
20
+ return false
21
+ }
22
+ }())
23
+ );
23
24
 
24
- if (detect) return
25
+ if (detect) return
25
26
 
26
- // Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Object.defineProperty&flags=always
27
- (function (nativeDefineProperty) {
27
+ // Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Object.defineProperty&flags=always
28
+ (function (nativeDefineProperty) {
28
29
 
29
- var supportsAccessors = Object.prototype.hasOwnProperty('__defineGetter__');
30
- var ERR_ACCESSORS_NOT_SUPPORTED = 'Getters & setters cannot be defined on this javascript engine';
31
- var ERR_VALUE_ACCESSORS = 'A property cannot both have accessors and be writable or have a value';
30
+ var supportsAccessors = Object.prototype.hasOwnProperty('__defineGetter__');
31
+ var ERR_ACCESSORS_NOT_SUPPORTED = 'Getters & setters cannot be defined on this javascript engine';
32
+ var ERR_VALUE_ACCESSORS = 'A property cannot both have accessors and be writable or have a value';
32
33
 
33
- Object.defineProperty = function defineProperty(object, property, descriptor) {
34
+ Object.defineProperty = function defineProperty(object, property, descriptor) {
34
35
 
35
- // Where native support exists, assume it
36
- if (nativeDefineProperty && (object === window || object === document || object === Element.prototype || object instanceof Element)) {
37
- return nativeDefineProperty(object, property, descriptor);
38
- }
36
+ // Where native support exists, assume it
37
+ if (nativeDefineProperty && (object === window || object === document || object === Element.prototype || object instanceof Element)) {
38
+ return nativeDefineProperty(object, property, descriptor);
39
+ }
39
40
 
40
- if (object === null || !(object instanceof Object || typeof object === 'object')) {
41
- throw new TypeError('Object.defineProperty called on non-object');
42
- }
41
+ if (object === null || !(object instanceof Object || typeof object === 'object')) {
42
+ throw new TypeError('Object.defineProperty called on non-object');
43
+ }
43
44
 
44
- if (!(descriptor instanceof Object)) {
45
- throw new TypeError('Property description must be an object');
46
- }
45
+ if (!(descriptor instanceof Object)) {
46
+ throw new TypeError('Property description must be an object');
47
+ }
47
48
 
48
- var propertyString = String(property);
49
- var hasValueOrWritable = 'value' in descriptor || 'writable' in descriptor;
50
- var getterType = 'get' in descriptor && typeof descriptor.get;
51
- var setterType = 'set' in descriptor && typeof descriptor.set;
49
+ var propertyString = String(property);
50
+ var hasValueOrWritable = 'value' in descriptor || 'writable' in descriptor;
51
+ var getterType = 'get' in descriptor && typeof descriptor.get;
52
+ var setterType = 'set' in descriptor && typeof descriptor.set;
52
53
 
53
- // handle descriptor.get
54
- if (getterType) {
55
- if (getterType !== 'function') {
56
- throw new TypeError('Getter must be a function');
57
- }
58
- if (!supportsAccessors) {
59
- throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);
54
+ // handle descriptor.get
55
+ if (getterType) {
56
+ if (getterType !== 'function') {
57
+ throw new TypeError('Getter must be a function');
58
+ }
59
+ if (!supportsAccessors) {
60
+ throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);
61
+ }
62
+ if (hasValueOrWritable) {
63
+ throw new TypeError(ERR_VALUE_ACCESSORS);
64
+ }
65
+ Object.__defineGetter__.call(object, propertyString, descriptor.get);
66
+ } else {
67
+ object[propertyString] = descriptor.value;
60
68
  }
61
- if (hasValueOrWritable) {
62
- throw new TypeError(ERR_VALUE_ACCESSORS);
63
- }
64
- Object.__defineGetter__.call(object, propertyString, descriptor.get);
65
- } else {
66
- object[propertyString] = descriptor.value;
67
- }
68
69
 
69
- // handle descriptor.set
70
- if (setterType) {
71
- if (setterType !== 'function') {
72
- throw new TypeError('Setter must be a function');
73
- }
74
- if (!supportsAccessors) {
75
- throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);
70
+ // handle descriptor.set
71
+ if (setterType) {
72
+ if (setterType !== 'function') {
73
+ throw new TypeError('Setter must be a function');
74
+ }
75
+ if (!supportsAccessors) {
76
+ throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);
77
+ }
78
+ if (hasValueOrWritable) {
79
+ throw new TypeError(ERR_VALUE_ACCESSORS);
80
+ }
81
+ Object.__defineSetter__.call(object, propertyString, descriptor.set);
76
82
  }
77
- if (hasValueOrWritable) {
78
- throw new TypeError(ERR_VALUE_ACCESSORS);
79
- }
80
- Object.__defineSetter__.call(object, propertyString, descriptor.set);
81
- }
82
83
 
83
- // OK to define value unconditionally - if a getter has been specified as well, an error would be thrown above
84
- if ('value' in descriptor) {
85
- object[propertyString] = descriptor.value;
86
- }
84
+ // OK to define value unconditionally - if a getter has been specified as well, an error would be thrown above
85
+ if ('value' in descriptor) {
86
+ object[propertyString] = descriptor.value;
87
+ }
87
88
 
88
- return object;
89
- };
90
- }(Object.defineProperty));
91
- })
92
- .call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
89
+ return object;
90
+ };
91
+ }(Object.defineProperty));
92
+ })
93
+ .call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
93
94
 
94
95
  })));
96
+ //# sourceMappingURL=defineProperty.js.map
@@ -1,21 +1,23 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory() :
3
- typeof define === 'function' && define.amd ? define('GOVUKFrontend', factory) :
4
- (factory());
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory() :
3
+ typeof define === 'function' && define.amd ? define('GOVUKFrontend', factory) :
4
+ (factory());
5
5
  }(this, (function () { 'use strict';
6
6
 
7
- (function(undefined) {
7
+ // @ts-nocheck
8
+ (function (undefined) {
8
9
 
9
- // Detection from https://github.com/mdn/content/blob/cf607d68522cd35ee7670782d3ee3a361eaef2e4/files/en-us/web/javascript/reference/global_objects/string/trim/index.md#polyfill
10
- var detect = ('trim' in String.prototype);
11
-
12
- if (detect) return
10
+ // Detection from https://github.com/mdn/content/blob/cf607d68522cd35ee7670782d3ee3a361eaef2e4/files/en-us/web/javascript/reference/global_objects/string/trim/index.md#polyfill
11
+ var detect = ('trim' in String.prototype);
13
12
 
14
- // Polyfill from https://github.com/mdn/content/blob/cf607d68522cd35ee7670782d3ee3a361eaef2e4/files/en-us/web/javascript/reference/global_objects/string/trim/index.md#polyfill
15
- String.prototype.trim = function () {
16
- return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
17
- };
13
+ if (detect) return
18
14
 
19
- }).call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
15
+ // Polyfill from https://github.com/mdn/content/blob/cf607d68522cd35ee7670782d3ee3a361eaef2e4/files/en-us/web/javascript/reference/global_objects/string/trim/index.md#polyfill
16
+ String.prototype.trim = function () {
17
+ return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
18
+ };
19
+
20
+ }).call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
20
21
 
21
22
  })));
23
+ //# sourceMappingURL=trim.js.map
@@ -4,25 +4,27 @@
4
4
  (factory());
5
5
  }(this, (function () { 'use strict';
6
6
 
7
- (function(undefined) {
7
+ // @ts-nocheck
8
+ (function (undefined) {
8
9
 
9
- // Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Window/detect.js
10
- var detect = ('Window' in this);
10
+ // Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Window/detect.js
11
+ var detect = ('Window' in this);
11
12
 
12
- if (detect) return
13
+ if (detect) return
13
14
 
14
- // Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Window&flags=always
15
- if ((typeof WorkerGlobalScope === "undefined") && (typeof importScripts !== "function")) {
16
- (function (global) {
17
- if (global.constructor) {
18
- global.Window = global.constructor;
19
- } else {
20
- (global.Window = global.constructor = new Function('return function Window() {}')()).prototype = this;
21
- }
22
- }(this));
23
- }
15
+ // Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Window&flags=always
16
+ if ((typeof WorkerGlobalScope === "undefined") && (typeof importScripts !== "function")) {
17
+ (function (global) {
18
+ if (global.constructor) {
19
+ global.Window = global.constructor;
20
+ } else {
21
+ (global.Window = global.constructor = new Function('return function Window() {}')()).prototype = this;
22
+ }
23
+ }(this));
24
+ }
24
25
 
25
- })
26
- .call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
26
+ })
27
+ .call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
27
28
 
28
29
  })));
30
+ //# sourceMappingURL=Window.js.map
@@ -1,3 +1,4 @@
1
+ // @ts-nocheck
1
2
  if (window.GOVUKPrototypeKit &&
2
3
  window.GOVUKPrototypeKit.documentReady &&
3
4
  window.GOVUKPrototypeKit.majorVersion >= 13) {
data/package-lock.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "name": "tech-docs-gem",
8
8
  "license": "MIT",
9
9
  "dependencies": {
10
- "govuk-frontend": "^4.4.1"
10
+ "govuk-frontend": "~4.7.0"
11
11
  },
12
12
  "devDependencies": {
13
13
  "standard": "^14.3.4"
@@ -1053,9 +1053,9 @@
1053
1053
  }
1054
1054
  },
1055
1055
  "node_modules/govuk-frontend": {
1056
- "version": "4.4.1",
1057
- "resolved": "https://registry.npmjs.org/govuk-frontend/-/govuk-frontend-4.4.1.tgz",
1058
- "integrity": "sha512-Jm1LUWiH9vy47b6HSH/ksSb4ueBrtTTgyLBk+3X2qqAmmFUc1AXWLSYHid07YYu1tvn9RnodWk5Bac5Ywqk6tA==",
1056
+ "version": "4.7.0",
1057
+ "resolved": "https://registry.npmjs.org/govuk-frontend/-/govuk-frontend-4.7.0.tgz",
1058
+ "integrity": "sha512-0OsdCusF5qvLWwKziU8zqxiC0nq6WP0ZQuw51ymZ/1V0tO71oIKMlSLN2S9bm8RcEGSoidPt2A34gKxePrLjvg==",
1059
1059
  "engines": {
1060
1060
  "node": ">= 4.2.0"
1061
1061
  }
@@ -3508,9 +3508,9 @@
3508
3508
  }
3509
3509
  },
3510
3510
  "govuk-frontend": {
3511
- "version": "4.4.1",
3512
- "resolved": "https://registry.npmjs.org/govuk-frontend/-/govuk-frontend-4.4.1.tgz",
3513
- "integrity": "sha512-Jm1LUWiH9vy47b6HSH/ksSb4ueBrtTTgyLBk+3X2qqAmmFUc1AXWLSYHid07YYu1tvn9RnodWk5Bac5Ywqk6tA=="
3511
+ "version": "4.7.0",
3512
+ "resolved": "https://registry.npmjs.org/govuk-frontend/-/govuk-frontend-4.7.0.tgz",
3513
+ "integrity": "sha512-0OsdCusF5qvLWwKziU8zqxiC0nq6WP0ZQuw51ymZ/1V0tO71oIKMlSLN2S9bm8RcEGSoidPt2A34gKxePrLjvg=="
3514
3514
  },
3515
3515
  "graceful-fs": {
3516
3516
  "version": "4.2.6",
data/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "lint": "standard"
7
7
  },
8
8
  "dependencies": {
9
- "govuk-frontend": "^4.4.1"
9
+ "govuk-frontend": "~4.7.0"
10
10
  },
11
11
  "devDependencies": {
12
12
  "standard": "^14.3.4"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: govuk_tech_docs
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.0
4
+ version: 3.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Government Digital Service
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-06-07 00:00:00.000000000 Z
11
+ date: 2024-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: autoprefixer-rails
@@ -427,6 +427,7 @@ files:
427
427
  - node_modules/govuk-frontend/govuk/assets/images/govuk-opengraph-image.png
428
428
  - node_modules/govuk-frontend/govuk/common.js
429
429
  - node_modules/govuk-frontend/govuk/common/closest-attribute-value.js
430
+ - node_modules/govuk-frontend/govuk/common/govuk-frontend-version.js
430
431
  - node_modules/govuk-frontend/govuk/common/index.js
431
432
  - node_modules/govuk-frontend/govuk/common/normalise-dataset.js
432
433
  - node_modules/govuk-frontend/govuk/components/_all.scss
@@ -458,6 +459,9 @@ files:
458
459
  - node_modules/govuk-frontend/govuk/components/error-summary/_error-summary.scss
459
460
  - node_modules/govuk-frontend/govuk/components/error-summary/_index.scss
460
461
  - node_modules/govuk-frontend/govuk/components/error-summary/error-summary.js
462
+ - node_modules/govuk-frontend/govuk/components/exit-this-page/_exit-this-page.scss
463
+ - node_modules/govuk-frontend/govuk/components/exit-this-page/_index.scss
464
+ - node_modules/govuk-frontend/govuk/components/exit-this-page/exit-this-page.js
461
465
  - node_modules/govuk-frontend/govuk/components/fieldset/_fieldset.scss
462
466
  - node_modules/govuk-frontend/govuk/components/fieldset/_index.scss
463
467
  - node_modules/govuk-frontend/govuk/components/file-upload/_file-upload.scss
@@ -507,6 +511,7 @@ files:
507
511
  - node_modules/govuk-frontend/govuk/components/warning-text/_warning-text.scss
508
512
  - node_modules/govuk-frontend/govuk/core/_all.scss
509
513
  - node_modules/govuk-frontend/govuk/core/_global-styles.scss
514
+ - node_modules/govuk-frontend/govuk/core/_govuk-frontend-version.scss
510
515
  - node_modules/govuk-frontend/govuk/core/_links.scss
511
516
  - node_modules/govuk-frontend/govuk/core/_lists.scss
512
517
  - node_modules/govuk-frontend/govuk/core/_section-break.scss
@@ -602,7 +607,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
602
607
  - !ruby/object:Gem::Version
603
608
  version: '0'
604
609
  requirements: []
605
- rubygems_version: 3.4.10
610
+ rubygems_version: 3.5.3
606
611
  signing_key:
607
612
  specification_version: 4
608
613
  summary: Gem to distribute the GOV.UK Tech Docs Template