govuk_tech_docs 4.4.0 → 5.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.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -0
  3. data/example/config/tech-docs.yml +3 -0
  4. data/lib/govuk_tech_docs/meta_tags.rb +1 -1
  5. data/lib/govuk_tech_docs/version.rb +1 -1
  6. data/lib/source/layouts/_footer.erb +15 -0
  7. data/lib/source/layouts/_header.erb +19 -7
  8. data/lib/source/layouts/core.erb +8 -8
  9. data/node_modules/govuk-frontend/dist/govuk/all.bundle.js +9 -15
  10. data/node_modules/govuk-frontend/dist/govuk/all.bundle.mjs +9 -15
  11. data/node_modules/govuk-frontend/dist/govuk/assets/images/govuk-crest.svg +1 -1
  12. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/favicon.ico +0 -0
  13. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/favicon.svg +1 -0
  14. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-crest.svg +1 -0
  15. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-180.png +0 -0
  16. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-192.png +0 -0
  17. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-512.png +0 -0
  18. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-mask.svg +1 -0
  19. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-opengraph-image.png +0 -0
  20. data/node_modules/govuk-frontend/dist/govuk/common/govuk-frontend-version.mjs +1 -1
  21. data/node_modules/govuk-frontend/dist/govuk/common/index.mjs +1 -1
  22. data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.js +4 -1
  23. data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.mjs +4 -1
  24. data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.mjs +4 -1
  25. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_index.scss +7 -1
  26. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_index.scss +1 -0
  27. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.js +2 -12
  28. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.mjs +2 -12
  29. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.mjs +2 -12
  30. data/node_modules/govuk-frontend/dist/govuk/components/footer/_index.scss +53 -9
  31. data/node_modules/govuk-frontend/dist/govuk/components/header/_index.scss +201 -11
  32. data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.js +2 -1
  33. data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.mjs +2 -1
  34. data/node_modules/govuk-frontend/dist/govuk/components/header/header.mjs +1 -0
  35. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_index.scss +89 -8
  36. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.js +1 -1
  37. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.mjs +1 -1
  38. data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.js +1 -1
  39. data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.mjs +1 -1
  40. data/node_modules/govuk-frontend/dist/govuk/core/_govuk-frontend-properties.scss +5 -2
  41. data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.js +1 -1
  42. data/node_modules/govuk-frontend/dist/govuk/helpers/_colour.scss +11 -0
  43. data/node_modules/govuk-frontend/dist/govuk/helpers/_focused.scss +14 -4
  44. data/node_modules/govuk-frontend/dist/govuk/helpers/_typography.scss +1 -1
  45. data/node_modules/govuk-frontend/dist/govuk/objects/_template.scss +5 -1
  46. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-applied.scss +39 -1
  47. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-organisations.scss +0 -9
  48. data/node_modules/govuk-frontend/dist/govuk/settings/_index.scss +13 -0
  49. data/node_modules/govuk-frontend/dist/govuk/tools/_index.scss +1 -0
  50. data/node_modules/govuk-frontend/dist/govuk/tools/_rebrand.scss +65 -0
  51. data/node_modules/govuk-frontend/dist/govuk-prototype-kit/functions.js +25 -0
  52. data/package-lock.json +7 -7
  53. data/package.json +1 -1
  54. metadata +11 -1
@@ -3,5 +3,6 @@
3
3
  @import "image-url";
4
4
  @import "px-to-em";
5
5
  @import "px-to-rem";
6
+ @import "rebrand";
6
7
 
7
8
  /*# sourceMappingURL=_index.scss.map */
@@ -0,0 +1,65 @@
1
+ ////
2
+ /// @group tools
3
+ ////
4
+
5
+ /// Wraps rebranded properties in the feature flag selector
6
+ ///
7
+ /// @example scss - Wrap a block of multiple properties
8
+ /// .foo {
9
+ /// border-width: 1px;
10
+ /// border-colour: #fff;
11
+ ///
12
+ /// @include _govuk-rebrand() {
13
+ /// border-width: 10px;
14
+ /// border-colour: #000;
15
+ /// }
16
+ /// }
17
+ ///
18
+ /// @example scss - Wrap a single property
19
+ /// .foo {
20
+ /// @include _govuk-rebrand("background-color", $from: #fff, $to: #000)
21
+ /// }
22
+ ///
23
+ ///
24
+ /// @param {String} $property - The name of the property being rebranded
25
+ /// @param {String} $from - The original value of the property
26
+ /// @param {String} $to - The rebranded value of the property
27
+ /// @throw if `$property` is set but `$from` or `$to` are missing
28
+ /// @access private
29
+ @mixin _govuk-rebrand($property: null, $from: null, $to: null) {
30
+ @if $property {
31
+ @if not $from {
32
+ @error "`_govuk-rebrand` needs the original value, `$from`";
33
+ }
34
+
35
+ @if not $to {
36
+ @error "`_govuk-rebrand` needs the rebranded value, `$to`";
37
+ }
38
+
39
+ #{$property}: #{$from};
40
+
41
+ @include _govuk-rebrand-wrapper {
42
+ #{$property}: #{$to};
43
+ }
44
+ } @else {
45
+ @include _govuk-rebrand-wrapper {
46
+ @content;
47
+ }
48
+ }
49
+ }
50
+
51
+ @mixin _govuk-rebrand-wrapper() {
52
+ $selector: "#{&}";
53
+
54
+ @if $selector == ".govuk-template" {
55
+ @at-root .govuk-template--rebranded {
56
+ @content;
57
+ }
58
+ } @else {
59
+ .govuk-template--rebranded & {
60
+ @content;
61
+ }
62
+ }
63
+ }
64
+
65
+ /*# sourceMappingURL=_rebrand.scss.map */
@@ -0,0 +1,25 @@
1
+ const { addFunction } = require('govuk-prototype-kit').views
2
+ const config = require('govuk-prototype-kit/lib/config.js').getConfig()
3
+
4
+ /**
5
+ * Adds a global function to the nunjucks env of prototypes to define the state
6
+ * of `govukRebrand`.
7
+ *
8
+ * Only applies the rebrand if the following is present in a user's prototype config:
9
+ *
10
+ * "plugins": {
11
+ * "govuk-frontend": {
12
+ * "rebrand": true
13
+ * }
14
+ * }
15
+ *
16
+ * Steps through each required param to check that they're present, then returns
17
+ * the state of `rebrand`. If any of the params aren't present or `rebrand` is
18
+ * falsey, return a falsey value.
19
+ *
20
+ * We're finicky about checking each param because, besides the fact that we don't
21
+ * know if each param might be present, `getConfig` by default swallows the error
22
+ * if ./app/config.json isn't present so this makes sure that a user's prototype
23
+ * still runs even if their config doesn't exist for some reason.
24
+ */
25
+ addFunction('govukRebrand', () => config?.plugins?.['govuk-frontend']?.rebrand)
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": "~5.9.0"
10
+ "govuk-frontend": "~5.11.0"
11
11
  },
12
12
  "devDependencies": {
13
13
  "jasmine-browser-runner": "^2.5.0",
@@ -1663,9 +1663,9 @@
1663
1663
  }
1664
1664
  },
1665
1665
  "node_modules/govuk-frontend": {
1666
- "version": "5.9.0",
1667
- "resolved": "https://registry.npmjs.org/govuk-frontend/-/govuk-frontend-5.9.0.tgz",
1668
- "integrity": "sha512-8NzmyoDtRFYyHs413DfNPR8Zo6qw6Q02Mruxml/Yfy+EueaOI/JZ4gVM8d0pqzJmTiMcJuHhvxqYEgBRmqeoyA==",
1666
+ "version": "5.11.0",
1667
+ "resolved": "https://registry.npmjs.org/govuk-frontend/-/govuk-frontend-5.11.0.tgz",
1668
+ "integrity": "sha512-RYZDEF1J6nVw5XauQGH+91qplExgHUXfXII7dtIme6I4u3eSvU59yZ0/EFKEwRgTslSqlhJODOnAi5rnQFU5Gw==",
1669
1669
  "license": "MIT",
1670
1670
  "engines": {
1671
1671
  "node": ">= 4.2.0"
@@ -5546,9 +5546,9 @@
5546
5546
  "dev": true
5547
5547
  },
5548
5548
  "govuk-frontend": {
5549
- "version": "5.9.0",
5550
- "resolved": "https://registry.npmjs.org/govuk-frontend/-/govuk-frontend-5.9.0.tgz",
5551
- "integrity": "sha512-8NzmyoDtRFYyHs413DfNPR8Zo6qw6Q02Mruxml/Yfy+EueaOI/JZ4gVM8d0pqzJmTiMcJuHhvxqYEgBRmqeoyA=="
5549
+ "version": "5.11.0",
5550
+ "resolved": "https://registry.npmjs.org/govuk-frontend/-/govuk-frontend-5.11.0.tgz",
5551
+ "integrity": "sha512-RYZDEF1J6nVw5XauQGH+91qplExgHUXfXII7dtIme6I4u3eSvU59yZ0/EFKEwRgTslSqlhJODOnAi5rnQFU5Gw=="
5552
5552
  },
5553
5553
  "graceful-fs": {
5554
5554
  "version": "4.2.6",
data/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "test-server": "jasmine-browser-runner serve --config=spec/javascripts/support/jasmine-browser.mjs"
9
9
  },
10
10
  "dependencies": {
11
- "govuk-frontend": "~5.9.0"
11
+ "govuk-frontend": "~5.11.0"
12
12
  },
13
13
  "devDependencies": {
14
14
  "jasmine-browser-runner": "^2.5.0",
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: govuk_tech_docs
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.4.0
4
+ version: 5.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Government Digital Service
@@ -489,6 +489,7 @@ files:
489
489
  - lib/source/layouts/layout.erb
490
490
  - lib/source/search/index.html.erb
491
491
  - lib/source/stylesheets/manifest.css
492
+ - node_modules/govuk-frontend/dist/govuk-prototype-kit/functions.js
492
493
  - node_modules/govuk-frontend/dist/govuk-prototype-kit/init.js
493
494
  - node_modules/govuk-frontend/dist/govuk-prototype-kit/init.scss
494
495
  - node_modules/govuk-frontend/dist/govuk/_base.scss
@@ -509,6 +510,14 @@ files:
509
510
  - node_modules/govuk-frontend/dist/govuk/assets/images/govuk-icon-mask.svg
510
511
  - node_modules/govuk-frontend/dist/govuk/assets/images/govuk-opengraph-image.png
511
512
  - node_modules/govuk-frontend/dist/govuk/assets/manifest.json
513
+ - node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/favicon.ico
514
+ - node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/favicon.svg
515
+ - node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-crest.svg
516
+ - node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-180.png
517
+ - node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-192.png
518
+ - node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-512.png
519
+ - node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-mask.svg
520
+ - node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-opengraph-image.png
512
521
  - node_modules/govuk-frontend/dist/govuk/common/closest-attribute-value.mjs
513
522
  - node_modules/govuk-frontend/dist/govuk/common/configuration.mjs
514
523
  - node_modules/govuk-frontend/dist/govuk/common/govuk-frontend-version.mjs
@@ -693,6 +702,7 @@ files:
693
702
  - node_modules/govuk-frontend/dist/govuk/tools/_index.scss
694
703
  - node_modules/govuk-frontend/dist/govuk/tools/_px-to-em.scss
695
704
  - node_modules/govuk-frontend/dist/govuk/tools/_px-to-rem.scss
705
+ - node_modules/govuk-frontend/dist/govuk/tools/_rebrand.scss
696
706
  - node_modules/govuk-frontend/dist/govuk/utilities/_all.scss
697
707
  - node_modules/govuk-frontend/dist/govuk/utilities/_clearfix.scss
698
708
  - node_modules/govuk-frontend/dist/govuk/utilities/_index.scss