@nationalarchives/frontend 0.1.36 → 0.1.38

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 (100) hide show
  1. package/LICENCE +1 -1
  2. package/nationalarchives/all.css +1 -1
  3. package/nationalarchives/all.css.map +1 -1
  4. package/nationalarchives/all.js +1 -1
  5. package/nationalarchives/all.js.map +1 -1
  6. package/nationalarchives/all.mjs +9 -0
  7. package/nationalarchives/components/_index.scss +1 -0
  8. package/nationalarchives/components/breadcrumbs/breadcrumbs.css.map +1 -1
  9. package/nationalarchives/components/breadcrumbs/breadcrumbs.js +1 -1
  10. package/nationalarchives/components/breadcrumbs/breadcrumbs.js.map +1 -1
  11. package/nationalarchives/components/button/button.css +1 -1
  12. package/nationalarchives/components/button/button.css.map +1 -1
  13. package/nationalarchives/components/card/card.css +1 -1
  14. package/nationalarchives/components/card/card.css.map +1 -1
  15. package/nationalarchives/components/card/fixtures.json +1 -1
  16. package/nationalarchives/components/card/template.njk +3 -3
  17. package/nationalarchives/components/checkboxes/checkboxes.css +1 -1
  18. package/nationalarchives/components/checkboxes/checkboxes.css.map +1 -1
  19. package/nationalarchives/components/compound-filters/compound-filters.css.map +1 -1
  20. package/nationalarchives/components/cookie-banner/cookie-banner.css +1 -1
  21. package/nationalarchives/components/cookie-banner/cookie-banner.css.map +1 -1
  22. package/nationalarchives/components/cookie-banner/cookie-banner.js +1 -1
  23. package/nationalarchives/components/cookie-banner/cookie-banner.js.map +1 -1
  24. package/nationalarchives/components/date-input/date-input.css +1 -1
  25. package/nationalarchives/components/date-input/date-input.css.map +1 -1
  26. package/nationalarchives/components/date-search/date-search.css +1 -1
  27. package/nationalarchives/components/date-search/date-search.css.map +1 -1
  28. package/nationalarchives/components/featured-records/featured-records.css.map +1 -1
  29. package/nationalarchives/components/filters/filters.css.map +1 -1
  30. package/nationalarchives/components/filters/filters.scss +9 -9
  31. package/nationalarchives/components/footer/fixtures.json +2 -2
  32. package/nationalarchives/components/footer/footer.css +1 -1
  33. package/nationalarchives/components/footer/footer.css.map +1 -1
  34. package/nationalarchives/components/footer/template.njk +37 -37
  35. package/nationalarchives/components/gallery/gallery.css +1 -1
  36. package/nationalarchives/components/gallery/gallery.css.map +1 -1
  37. package/nationalarchives/components/gallery/gallery.js +1 -1
  38. package/nationalarchives/components/gallery/gallery.js.map +1 -1
  39. package/nationalarchives/components/global-header/README.md +52 -0
  40. package/nationalarchives/components/global-header/_index.scss +1 -0
  41. package/nationalarchives/components/global-header/fixtures.json +46 -0
  42. package/nationalarchives/components/global-header/global-header.css +1 -0
  43. package/nationalarchives/components/global-header/global-header.css.map +1 -0
  44. package/nationalarchives/components/global-header/global-header.js +2 -0
  45. package/nationalarchives/components/global-header/global-header.js.map +1 -0
  46. package/nationalarchives/components/global-header/global-header.mjs +146 -0
  47. package/nationalarchives/components/global-header/global-header.scss +366 -0
  48. package/nationalarchives/components/global-header/global-header.stories.js +351 -0
  49. package/nationalarchives/components/global-header/macro-options.json +104 -0
  50. package/nationalarchives/components/global-header/macro.njk +3 -0
  51. package/nationalarchives/components/global-header/template.njk +65 -0
  52. package/nationalarchives/components/grid/grid.css.map +1 -1
  53. package/nationalarchives/components/header/fixtures.json +1 -1
  54. package/nationalarchives/components/header/header.css +1 -1
  55. package/nationalarchives/components/header/header.css.map +1 -1
  56. package/nationalarchives/components/header/header.js +1 -1
  57. package/nationalarchives/components/header/header.js.map +1 -1
  58. package/nationalarchives/components/header/header.scss +123 -137
  59. package/nationalarchives/components/header/header.stories.js +27 -30
  60. package/nationalarchives/components/header/template.njk +22 -19
  61. package/nationalarchives/components/hero/hero.css +1 -1
  62. package/nationalarchives/components/hero/hero.css.map +1 -1
  63. package/nationalarchives/components/hero/hero.scss +1 -1
  64. package/nationalarchives/components/index-grid/index-grid.css +1 -1
  65. package/nationalarchives/components/index-grid/index-grid.css.map +1 -1
  66. package/nationalarchives/components/message/message.css.map +1 -1
  67. package/nationalarchives/components/pagination/pagination.css.map +1 -1
  68. package/nationalarchives/components/phase-banner/phase-banner.css +1 -1
  69. package/nationalarchives/components/phase-banner/phase-banner.css.map +1 -1
  70. package/nationalarchives/components/phase-banner/phase-banner.scss +2 -4
  71. package/nationalarchives/components/picture/picture.css +1 -1
  72. package/nationalarchives/components/picture/picture.css.map +1 -1
  73. package/nationalarchives/components/picture/picture.js +1 -1
  74. package/nationalarchives/components/picture/picture.js.map +1 -1
  75. package/nationalarchives/components/picture/picture.scss +1 -3
  76. package/nationalarchives/components/radios/radios.css +1 -1
  77. package/nationalarchives/components/radios/radios.css.map +1 -1
  78. package/nationalarchives/components/search-field/fixtures.json +3 -3
  79. package/nationalarchives/components/search-field/search-field.css +1 -1
  80. package/nationalarchives/components/search-field/search-field.css.map +1 -1
  81. package/nationalarchives/components/search-field/template.njk +1 -1
  82. package/nationalarchives/components/select/select.css +1 -1
  83. package/nationalarchives/components/select/select.css.map +1 -1
  84. package/nationalarchives/components/sensitive-image/sensitive-image.css.map +1 -1
  85. package/nationalarchives/components/skip-link/skip-link.css.map +1 -1
  86. package/nationalarchives/components/tabs/tabs.css.map +1 -1
  87. package/nationalarchives/components/text-input/text-input.css +1 -1
  88. package/nationalarchives/components/text-input/text-input.css.map +1 -1
  89. package/nationalarchives/components/textarea/textarea.css +1 -1
  90. package/nationalarchives/components/textarea/textarea.css.map +1 -1
  91. package/nationalarchives/global-header-package.css +13 -0
  92. package/nationalarchives/global-header-package.css.map +1 -0
  93. package/nationalarchives/global-header-package.scss +9 -0
  94. package/nationalarchives/prototype-kit.css +1 -1
  95. package/nationalarchives/prototype-kit.css.map +1 -1
  96. package/nationalarchives/stories/utilities/colour-schemes/colour-combinations.stories.js +3 -3
  97. package/nationalarchives/stories/utilities/colour-schemes/colour-themes.stories.js +48 -14
  98. package/nationalarchives/stories/utilities/lists/lists.stories.js +5 -1
  99. package/nationalarchives/tools/_colour.scss +8 -0
  100. package/package.json +15 -16
@@ -72,17 +72,17 @@ const Template = () => {
72
72
  `${blockOutput}<div class="tna-colour-contrast-demo__example tna-template ${theme} ${accent}">
73
73
  <div class="tna-template__body">
74
74
  <div class="tna-colour-contrast-demo__example-content ${block}">
75
- <p><strong>Text / <span class="dark-text">Dark</span> / <span class="light-text">Light</span></strong> / <i class="fa-solid fa-heart"></i> <i class="fa-solid fa-heart light-icon"></i></p>
75
+ <p><strong>Text / <span class="dark-text">Dark</span> / <span class="light-text">Light</span></strong> / <i class="fa-solid fa-heart" aria-hidden="true"></i> <i class="fa-solid fa-heart light-icon" aria-hidden="true"></i></p>
76
76
  <p><a href="#"><strong>Link</strong></a> / <a href="#" class="tna-colour-contrast-demo__link--visited"><strong>Link (visited)</strong></a></p>
77
77
  <ul class="tna-chip-list">
78
78
  <li class="tna-chip-list__item">
79
79
  <span class="tna-chip">Chip</span>
80
80
  </li>
81
81
  <li class="tna-chip-list__item">
82
- <span class="tna-chip"><i class="fa-solid fa-heart"></i>Chip</span>
82
+ <span class="tna-chip"><i class="fa-solid fa-heart" aria-hidden="true"></i>Chip</span>
83
83
  </li>
84
84
  <li class="tna-chip-list__item">
85
- <span class="tna-chip tna-chip--plain"><i class="fa-solid fa-heart"></i>Chip</span>
85
+ <span class="tna-chip tna-chip--plain"><i class="fa-solid fa-heart" aria-hidden="true"></i>Chip</span>
86
86
  </li>
87
87
  </ul>
88
88
  ${TextInput({
@@ -6,7 +6,7 @@ import Checkboxes from "../../../components/checkboxes/template.njk";
6
6
  import FeaturedRecords from "../../../components/featured-records/template.njk";
7
7
  import Footer from "../../../components/footer/template.njk";
8
8
  import Gallery from "../../../components/gallery/template.njk";
9
- import Header from "../../../components/header/template.njk";
9
+ import GlobalHeader from "../../../components/global-header/template.njk";
10
10
  import Hero from "../../../components/hero/template.njk";
11
11
  import IndexGrid from "../../../components/index-grid/template.njk";
12
12
  import Message from "../../../components/message/template.njk";
@@ -43,6 +43,12 @@ export default {
43
43
  };
44
44
 
45
45
  const Template = ({ theme, accent }) => {
46
+ document.documentElement.classList.remove(
47
+ "tna-template",
48
+ "tna-template--light-theme",
49
+ "tna-template--yellow-accent",
50
+ );
51
+
46
52
  const cardDefaultOptions = {
47
53
  supertitle: "Card supertitle",
48
54
  title: "Card title",
@@ -104,25 +110,53 @@ const Template = ({ theme, accent }) => {
104
110
  accent: true,
105
111
  },
106
112
  })}
107
- ${Header({
113
+ ${GlobalHeader({
108
114
  params: {
109
115
  logo: {
110
116
  strapline: "Colours",
111
117
  href: "#/",
112
118
  },
119
+ topNavigation: [
120
+ {
121
+ text: "Search",
122
+ href: "#/search",
123
+ icon: "search",
124
+ },
125
+ {
126
+ text: "Shop",
127
+ href: "#/shop",
128
+ icon: "bag-shopping",
129
+ },
130
+ {
131
+ text: "Sign in",
132
+ href: "#/sign-in",
133
+ icon: "user",
134
+ },
135
+ ],
113
136
  navigation: [
114
137
  {
115
- text: "Alpha",
116
- href: "#/alpha",
117
- selected: true,
138
+ text: "Visit",
139
+ href: "#/visit",
140
+ },
141
+ {
142
+ text: "What's on",
143
+ href: "#/whats-on",
144
+ },
145
+ {
146
+ text: "Explore the collection",
147
+ href: "#/explore-the-collection",
148
+ },
149
+ {
150
+ text: "Using the archives",
151
+ href: "#/using-the-archives",
118
152
  },
119
153
  {
120
- text: "Beta",
121
- href: "#/beta",
154
+ text: "Learn",
155
+ href: "#/learn",
122
156
  },
123
157
  {
124
- text: "Gamma",
125
- href: "#/gamma",
158
+ text: "Professional guidance & services",
159
+ href: "#/professional-guidance-and-services",
126
160
  },
127
161
  ],
128
162
  },
@@ -355,17 +389,17 @@ const Template = ({ theme, accent }) => {
355
389
  </h3>
356
390
  <dl class="tna-dl tna-dl--icon-padding ">
357
391
  <dt>
358
- <i class="fa-solid fa-landmark"></i>
392
+ <i class="fa-solid fa-landmark" aria-hidden="true"></i>
359
393
  Held by
360
394
  </dt>
361
395
  <dd>The National Archives, Kew</dd>
362
396
  <dt>
363
- <i class="fa-solid fa-calendar"></i>
397
+ <i class="fa-solid fa-calendar" aria-hidden="true"></i>
364
398
  Date
365
399
  </dt>
366
400
  <dd>1972–1979</dd>
367
401
  <dt>
368
- <i class="fa-solid fa-database"></i>
402
+ <i class="fa-solid fa-database" aria-hidden="true"></i>
369
403
  Reference
370
404
  </dt>
371
405
  <dd>LC 4</dd>
@@ -379,7 +413,7 @@ const Template = ({ theme, accent }) => {
379
413
  </li>
380
414
  <li class="tna-chip-list__item">
381
415
  <a href="#" class="tna-chip">
382
- <i class="fa-solid fa-heart"></i>
416
+ <i class="fa-solid fa-heart" aria-hidden="true"></i>
383
417
  Chip 2
384
418
  </a>
385
419
  </li>
@@ -388,7 +422,7 @@ const Template = ({ theme, accent }) => {
388
422
  </li>
389
423
  <li class="tna-chip-list__item">
390
424
  <a href="#" class="tna-chip tna-chip--plain">
391
- <i class="fa-solid fa-heart"></i>
425
+ <i class="fa-solid fa-heart" aria-hidden="true"></i>
392
426
  Chip 4
393
427
  </a>
394
428
  </li>
@@ -45,7 +45,11 @@ const DescriptionListTemplate = ({ items, plain, classes }) =>
45
45
  } ${classes}">${items.reduce(
46
46
  (list, item) => `${list}
47
47
  <dt>
48
- ${item.icon ? `<i class="fa-solid fa-${item.icon}"></i>` : ""}
48
+ ${
49
+ item.icon
50
+ ? `<i class="fa-solid fa-${item.icon}" aria-hidden="true"></i>`
51
+ : ""
52
+ }
49
53
  ${item.title}
50
54
  </dt>
51
55
  ${
@@ -156,6 +156,10 @@
156
156
  @media (prefers-contrast: more) {
157
157
  @include colour-css-vars-high-contrast;
158
158
  }
159
+
160
+ .tna-template--high-contrast-theme & {
161
+ @include colour-css-vars-high-contrast;
162
+ }
159
163
  }
160
164
 
161
165
  @mixin light {
@@ -168,6 +172,10 @@
168
172
  @media (prefers-contrast: more) {
169
173
  @include colour-css-vars-high-contrast-dark;
170
174
  }
175
+
176
+ .tna-template--high-contrast-theme & {
177
+ @include colour-css-vars-high-contrast-dark;
178
+ }
171
179
  }
172
180
 
173
181
  @mixin dark {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nationalarchives/frontend",
3
- "version": "0.1.36",
3
+ "version": "0.1.38",
4
4
  "description": "The National Archives frontend styles",
5
5
  "scripts": {
6
6
  "start": "storybook dev -p 6006",
@@ -38,23 +38,22 @@
38
38
  "devDependencies": {
39
39
  "@babel/core": "^7.23.2",
40
40
  "@babel/preset-env": "^7.23.2",
41
- "@chromaui/addon-visual-tests": "^0.0.124",
42
41
  "@mdx-js/react": "^3.0.0",
43
- "@storybook/addon-a11y": "^7.6.6",
44
- "@storybook/addon-docs": "^7.6.6",
45
- "@storybook/addon-essentials": "^7.6.6",
46
- "@storybook/addon-interactions": "^7.6.6",
47
- "@storybook/addon-links": "^7.6.6",
48
- "@storybook/addon-mdx-gfm": "^7.6.6",
49
- "@storybook/html": "^7.6.6",
50
- "@storybook/html-webpack5": "^7.6.6",
51
- "@storybook/test": "^8.0.0-alpha.5",
42
+ "@storybook/addon-a11y": "^7.6.15",
43
+ "@storybook/addon-docs": "^7.6.15",
44
+ "@storybook/addon-essentials": "^7.6.15",
45
+ "@storybook/addon-interactions": "^7.6.15",
46
+ "@storybook/addon-links": "^7.6.15",
47
+ "@storybook/addon-mdx-gfm": "^7.6.15",
48
+ "@storybook/html": "^7.6.15",
49
+ "@storybook/html-webpack5": "^7.6.15",
50
+ "@storybook/test": "^7.6.15",
52
51
  "@storybook/test-runner": "^0.16.0",
53
- "axe-playwright": "^1.2.3",
52
+ "axe-playwright": "^2.0.1",
54
53
  "babel-jest": "^29.7.0",
55
54
  "babel-loader": "^9.0.1",
56
55
  "chromatic": "^10.1.0",
57
- "copy-webpack-plugin": "^11.0.0",
56
+ "copy-webpack-plugin": "^12.0.2",
58
57
  "css-loader": "^6.7.1",
59
58
  "diff": "^5.1.0",
60
59
  "eslint": "^8.52.0",
@@ -69,12 +68,12 @@
69
68
  "react": "^18.2.0",
70
69
  "react-dom": "^18.2.0",
71
70
  "sass": "^1.69.4",
72
- "sass-loader": "^13.0.2",
71
+ "sass-loader": "^14.1.0",
73
72
  "simple-nunjucks-loader": "^3.2.0",
74
- "storybook": "^7.6.6",
73
+ "storybook": "^7.6.15",
75
74
  "style-loader": "^3.3.1",
76
75
  "stylelint": "^16.0.2",
77
- "stylelint-config-standard-scss": "^12.0.0",
76
+ "stylelint-config-standard-scss": "^13.0.0",
78
77
  "stylelint-selector-bem-pattern": "^3.0.0",
79
78
  "webpack": "^5.89.0",
80
79
  "webpack-cli": "^5.1.4"