@nationalarchives/frontend 0.1.23-prerelease → 0.1.25-prerelease

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 (159) hide show
  1. package/README.md +22 -0
  2. package/govuk-prototype-kit.config.json +4 -12
  3. package/nationalarchives/all.css +2 -2
  4. package/nationalarchives/all.css.map +1 -1
  5. package/nationalarchives/all.js +1 -1
  6. package/nationalarchives/all.js.map +1 -1
  7. package/nationalarchives/assets/fonts/OpenSans-Regular.ttf +0 -0
  8. package/nationalarchives/assets/fonts/RobotoMono-Medium.ttf +0 -0
  9. package/nationalarchives/components/_index.scss +1 -1
  10. package/nationalarchives/components/breadcrumbs/breadcrumbs.css +1 -1
  11. package/nationalarchives/components/breadcrumbs/breadcrumbs.css.map +1 -1
  12. package/nationalarchives/components/breadcrumbs/breadcrumbs.stories.js +1 -1
  13. package/nationalarchives/components/button/button.css +1 -1
  14. package/nationalarchives/components/button/button.css.map +1 -1
  15. package/nationalarchives/components/button/button.scss +12 -12
  16. package/nationalarchives/components/button/template.njk +2 -2
  17. package/nationalarchives/components/card/card.css +1 -1
  18. package/nationalarchives/components/card/card.css.map +1 -1
  19. package/nationalarchives/components/card/card.scss +9 -4
  20. package/nationalarchives/components/card/card.stories.js +27 -78
  21. package/nationalarchives/components/card/fixtures.json +17 -17
  22. package/nationalarchives/components/card/macro-options.json +47 -17
  23. package/nationalarchives/components/card/template.njk +47 -46
  24. package/nationalarchives/components/cookie-banner/cookie-banner.css +1 -1
  25. package/nationalarchives/components/cookie-banner/cookie-banner.css.map +1 -1
  26. package/nationalarchives/components/cookie-banner/cookie-banner.js +1 -1
  27. package/nationalarchives/components/cookie-banner/cookie-banner.js.map +1 -1
  28. package/nationalarchives/components/cookie-banner/cookie-banner.mjs +17 -16
  29. package/nationalarchives/components/cookie-banner/cookie-banner.scss +1 -1
  30. package/nationalarchives/components/cookie-banner/cookie-banner.stories.js +95 -45
  31. package/nationalarchives/components/cookie-banner/fixtures.json +84 -1
  32. package/nationalarchives/components/cookie-banner/macro-options.json +7 -1
  33. package/nationalarchives/components/cookie-banner/template.njk +4 -4
  34. package/nationalarchives/components/featured-records/_index.scss +1 -0
  35. package/nationalarchives/components/featured-records/featured-records.css +1 -0
  36. package/nationalarchives/components/featured-records/featured-records.css.map +1 -0
  37. package/nationalarchives/components/featured-records/featured-records.scss +95 -0
  38. package/nationalarchives/components/featured-records/featured-records.stories.js +51 -0
  39. package/nationalarchives/components/featured-records/fixtures.json +4 -0
  40. package/nationalarchives/components/featured-records/macro-options.json +70 -0
  41. package/nationalarchives/components/featured-records/macro.njk +3 -0
  42. package/nationalarchives/components/featured-records/template.njk +20 -0
  43. package/nationalarchives/components/filters/filters.css +1 -1
  44. package/nationalarchives/components/filters/filters.css.map +1 -1
  45. package/nationalarchives/components/filters/filters.scss +6 -6
  46. package/nationalarchives/components/filters/template.njk +1 -1
  47. package/nationalarchives/components/footer/footer.css +1 -1
  48. package/nationalarchives/components/footer/footer.css.map +1 -1
  49. package/nationalarchives/components/footer/footer.scss +2 -5
  50. package/nationalarchives/components/footer/footer.stories.js +1 -1
  51. package/nationalarchives/components/footer/template.njk +4 -4
  52. package/nationalarchives/components/gallery/gallery.css +1 -1
  53. package/nationalarchives/components/gallery/gallery.css.map +1 -1
  54. package/nationalarchives/components/gallery/gallery.scss +2 -2
  55. package/nationalarchives/components/gallery/gallery.stories.js +2 -2
  56. package/nationalarchives/components/grid/grid.css +1 -1
  57. package/nationalarchives/components/grid/grid.css.map +1 -1
  58. package/nationalarchives/components/grid/grid.scss +12 -0
  59. package/nationalarchives/components/grid/grid.stories.js +12 -0
  60. package/nationalarchives/components/header/header.css +1 -1
  61. package/nationalarchives/components/header/header.css.map +1 -1
  62. package/nationalarchives/components/header/header.scss +59 -27
  63. package/nationalarchives/components/header/header.stories.js +4 -6
  64. package/nationalarchives/components/header/macro-options.json +2 -2
  65. package/nationalarchives/components/header/template.njk +4 -4
  66. package/nationalarchives/components/hero/hero.css +1 -1
  67. package/nationalarchives/components/hero/hero.css.map +1 -1
  68. package/nationalarchives/components/hero/hero.scss +6 -6
  69. package/nationalarchives/components/hero/hero.stories.js +6 -0
  70. package/nationalarchives/components/index-grid/index-grid.css +1 -1
  71. package/nationalarchives/components/index-grid/index-grid.css.map +1 -1
  72. package/nationalarchives/components/index-grid/index-grid.scss +1 -1
  73. package/nationalarchives/components/index-grid/index-grid.stories.js +3 -1
  74. package/nationalarchives/components/message/message.css +1 -1
  75. package/nationalarchives/components/message/message.css.map +1 -1
  76. package/nationalarchives/components/pagination/macro-options.json +6 -0
  77. package/nationalarchives/components/pagination/pagination.css +1 -1
  78. package/nationalarchives/components/pagination/pagination.css.map +1 -1
  79. package/nationalarchives/components/pagination/pagination.scss +5 -1
  80. package/nationalarchives/components/pagination/pagination.stories.js +417 -2
  81. package/nationalarchives/components/pagination/template.njk +10 -3
  82. package/nationalarchives/components/phase-banner/fixtures.json +5 -41
  83. package/nationalarchives/components/phase-banner/macro-options.json +6 -0
  84. package/nationalarchives/components/phase-banner/phase-banner.css +1 -1
  85. package/nationalarchives/components/phase-banner/phase-banner.css.map +1 -1
  86. package/nationalarchives/components/phase-banner/phase-banner.scss +1 -1
  87. package/nationalarchives/components/phase-banner/phase-banner.stories.js +4 -28
  88. package/nationalarchives/components/phase-banner/template.njk +3 -1
  89. package/nationalarchives/components/picture/picture.css +1 -1
  90. package/nationalarchives/components/picture/picture.css.map +1 -1
  91. package/nationalarchives/components/picture/picture.scss +5 -4
  92. package/nationalarchives/components/sensitive-image/sensitive-image.css +1 -1
  93. package/nationalarchives/components/sensitive-image/sensitive-image.css.map +1 -1
  94. package/nationalarchives/components/sensitive-image/sensitive-image.stories.js +3 -0
  95. package/nationalarchives/components/skip-link/skip-link.css +1 -1
  96. package/nationalarchives/components/skip-link/skip-link.css.map +1 -1
  97. package/nationalarchives/components/skip-link/skip-link.stories.js +4 -1
  98. package/nationalarchives/components/tabs/tabs.css +1 -1
  99. package/nationalarchives/components/tabs/tabs.css.map +1 -1
  100. package/nationalarchives/components/tabs/tabs.js +1 -1
  101. package/nationalarchives/components/tabs/tabs.js.map +1 -1
  102. package/nationalarchives/components/tabs/tabs.mjs +0 -4
  103. package/nationalarchives/components/tabs/tabs.stories.js +6 -3
  104. package/nationalarchives/lib/cookies.mjs +165 -62
  105. package/nationalarchives/prototype-kit.css +23 -0
  106. package/nationalarchives/prototype-kit.css.map +1 -0
  107. package/nationalarchives/{_prototype-kit.scss → prototype-kit.scss} +3 -3
  108. package/nationalarchives/stories/utilities/colour-schemes/colour-schemes.stories.js +189 -74
  109. package/nationalarchives/stories/utilities/lists/lists.mdx +18 -0
  110. package/nationalarchives/stories/utilities/{typography → lists}/lists.stories.js +1 -1
  111. package/nationalarchives/stories/utilities/overrides/overrides.mdx +27 -20
  112. package/nationalarchives/stories/utilities/overrides/overrides.stories.js +19 -2
  113. package/nationalarchives/stories/utilities/tables/tables.mdx +8 -0
  114. package/nationalarchives/stories/utilities/tables/tables.stories.js +45 -0
  115. package/nationalarchives/stories/utilities/typography/heading-groups.stories.js +59 -19
  116. package/nationalarchives/stories/utilities/typography/typography.mdx +3 -25
  117. package/nationalarchives/stories/utilities/typography/typography.stories.js +28 -2
  118. package/nationalarchives/templates/layouts/_generic.njk +1 -0
  119. package/nationalarchives/templates/layouts/_prototype-kit.njk +4 -1
  120. package/nationalarchives/tests/cookies.test.js +427 -0
  121. package/nationalarchives/tests/uuid.test.js +17 -0
  122. package/nationalarchives/tools/_colour.scss +15 -20
  123. package/nationalarchives/tools/_spacing.scss +91 -2
  124. package/nationalarchives/tools/_typography.scss +15 -8
  125. package/nationalarchives/utilities/_a11y.scss +2 -1
  126. package/nationalarchives/utilities/_colour.scss +100 -0
  127. package/nationalarchives/utilities/_global.scss +2 -98
  128. package/nationalarchives/utilities/_index.scss +2 -0
  129. package/nationalarchives/utilities/_lists.scss +5 -0
  130. package/nationalarchives/utilities/_overrides.scss +16 -36
  131. package/nationalarchives/utilities/_tables.scss +86 -0
  132. package/nationalarchives/utilities/_typography.scss +150 -71
  133. package/nationalarchives/variables/_colour.scss +10 -8
  134. package/nationalarchives/variables/_spacing.scss +14 -9
  135. package/nationalarchives/variables/_typography.scss +10 -7
  136. package/package.json +14 -14
  137. package/nationalarchives/assets/fonts/OpenSans-Medium.ttf +0 -0
  138. package/nationalarchives/assets/fonts/fa-regular-400.ttf +0 -0
  139. package/nationalarchives/assets/fonts/fa-regular-400.woff2 +0 -0
  140. package/nationalarchives/components/profile/_index.scss +0 -1
  141. package/nationalarchives/components/profile/fixtures.json +0 -4
  142. package/nationalarchives/components/profile/macro-options.json +0 -14
  143. package/nationalarchives/components/profile/macro.njk +0 -3
  144. package/nationalarchives/components/profile/profile.css +0 -1
  145. package/nationalarchives/components/profile/profile.css.map +0 -1
  146. package/nationalarchives/components/profile/profile.scss +0 -5
  147. package/nationalarchives/components/profile/profile.stories.js +0 -31
  148. package/nationalarchives/components/profile/template.njk +0 -15
  149. package/nationalarchives/lib/font-awesome/regular.css +0 -5
  150. package/nationalarchives/lib/font-awesome/regular.css.map +0 -1
  151. package/nationalarchives/lib/font-awesome/regular.scss +0 -28
  152. package/nationalarchives/stories/development/about.mdx +0 -122
  153. package/nationalarchives/stories/development/contributing.mdx +0 -32
  154. package/nationalarchives/stories/development/cookies.mdx +0 -82
  155. package/nationalarchives/stories/development/publishing.mdx +0 -15
  156. package/nationalarchives/stories/development/structure.mdx +0 -88
  157. package/nationalarchives/stories/development/using/compiled.mdx +0 -9
  158. package/nationalarchives/stories/development/using/hosted.mdx +0 -53
  159. package/nationalarchives/stories/development/using/npm.mdx +0 -59
@@ -53,14 +53,7 @@
53
53
  --accent-link-visited: #{brand-colour("white")} !important;
54
54
  --accent-keyline: #{brand-colour("white", 0.5)} !important;
55
55
  --accent-keyline-dark: #{brand-colour("white", 0.8)} !important;
56
-
57
- @if $colour == "black" {
58
- // --accent: #{brand-colour("light-grey")} !important;
59
- // --accent-background: #{brand-colour("black")} !important;
60
- // --accent-background-light: #{brand-colour("light-grey")} !important;
61
- // --button-accent-text: #{brand-colour("black")} !important;
62
- // --button-accent-background: #{brand-colour("grey")} !important;
63
- } @else {
56
+ @if $colour != "black" {
64
57
  --button-accent-text: #{brand-colour("white")} !important;
65
58
  @if $colour == "pink" {
66
59
  --accent: #{brand-colour("pink")} !important;
@@ -204,7 +197,7 @@
204
197
  @extend %plain;
205
198
  }
206
199
 
207
- %invert {
200
+ %contrast {
208
201
  --background: var(--contrast-background);
209
202
  --font-base: var(--contrast-font-base);
210
203
  --font-dark: var(--contrast-font-dark);
@@ -224,11 +217,11 @@
224
217
  @include colour-font("font-base", false, colour.$colour-palette-dark);
225
218
  }
226
219
 
227
- @mixin invert {
228
- @extend %invert;
220
+ @mixin contrast {
221
+ @extend %contrast;
229
222
  }
230
223
 
231
- %invert-on-mobile {
224
+ %contrast-on-mobile {
232
225
  @include media.on-mobile {
233
226
  --background: var(--contrast-background);
234
227
  --font-base: var(--contrast-font-base);
@@ -250,8 +243,8 @@
250
243
  }
251
244
  }
252
245
 
253
- @mixin invert-on-mobile {
254
- @extend %invert-on-mobile;
246
+ @mixin contrast-on-mobile {
247
+ @extend %contrast-on-mobile;
255
248
  }
256
249
 
257
250
  %accent {
@@ -274,12 +267,13 @@
274
267
  @extend %accent;
275
268
  }
276
269
 
277
- %tint-background {
270
+ %tint {
278
271
  @include colour-background("background-tint");
272
+ @include colour-font("font-base");
279
273
  }
280
274
 
281
- @mixin tint-background {
282
- @extend %tint-background;
275
+ @mixin tint {
276
+ @extend %tint;
283
277
  }
284
278
 
285
279
  %accent-background {
@@ -290,7 +284,7 @@
290
284
  @extend %accent-background;
291
285
  }
292
286
 
293
- %light-accent-background {
287
+ %accent-light {
294
288
  --background: var(--accent-background-light);
295
289
  --font-base: #{map.get(colour.$colour-palette-default, "font-base")};
296
290
  --font-dark: #{map.get(colour.$colour-palette-default, "font-dark")};
@@ -314,10 +308,11 @@
314
308
  )};
315
309
 
316
310
  @include colour-background("background");
311
+ @include colour-font("font-base");
317
312
  }
318
313
 
319
- @mixin light-accent-background {
320
- @extend %light-accent-background;
314
+ @mixin accent-light {
315
+ @extend %accent-light;
321
316
  }
322
317
 
323
318
  @mixin on-high-contrast {
@@ -1,5 +1,6 @@
1
1
  @use "sass:map";
2
2
  @use "../variables/spacing";
3
+ @use "../tools/media";
3
4
 
4
5
  %space-above {
5
6
  margin-top: 2rem;
@@ -13,10 +14,98 @@
13
14
  @extend %space-above;
14
15
  }
15
16
 
16
- @function spacing($size) {
17
+ @function space($size) {
17
18
  @return map.get(spacing.$spacing, $size);
18
19
  }
19
20
 
20
- @function spacing-mobile($size) {
21
+ @function space-mobile($size) {
21
22
  @return map.get(spacing.$spacing-mobile, $size);
22
23
  }
24
+
25
+ @mixin no-spacing-generator($suffix: "") {
26
+ @if $suffix != "" {
27
+ $suffix: "-" + $suffix;
28
+ }
29
+ @each $property in margin, padding {
30
+ @each $direction in top, bottom {
31
+ $combined-direction: "";
32
+ @if $direction == top or $direction == bottom {
33
+ $combined-direction: vertical;
34
+ } @else if $direction == right or $direction == left {
35
+ $combined-direction: horizontal;
36
+ }
37
+ @if $combined-direction {
38
+ .tna-\!--no-#{$property}-#{$direction}#{$suffix},
39
+ .tna-\!--no-#{$property}-#{$combined-direction}#{$suffix} {
40
+ #{$property}-#{$direction}: 0 !important;
41
+ }
42
+ } @else {
43
+ .tna-\!--no-#{$property}-#{$direction}#{$suffix} {
44
+ #{$property}-#{$direction}: 0 !important;
45
+ }
46
+ }
47
+ }
48
+ }
49
+ }
50
+
51
+ @mixin spacing-generator($suffix: "") {
52
+ @each $property in margin, padding {
53
+ @each $direction in top, bottom {
54
+ @each $size, $amount in spacing.$spacing {
55
+ @if $direction == all {
56
+ .tna-\!--#{$property}-#{$size} {
57
+ #{$property}: #{$amount} !important;
58
+ }
59
+ } @else {
60
+ $combined-direction: "";
61
+ @if $direction == top or $direction == bottom {
62
+ $combined-direction: vertical;
63
+ } @else if $direction == right or $direction == left {
64
+ $combined-direction: horizontal;
65
+ }
66
+ @if $combined-direction {
67
+ .tna-\!--#{$property}-#{$direction}-#{$size},
68
+ .tna-\!--#{$property}-#{$combined-direction}-#{$size} {
69
+ #{$property}-#{$direction}: #{$amount} !important;
70
+ }
71
+ } @else {
72
+ .tna-\!--#{$property}-#{$direction}-#{$size} {
73
+ #{$property}-#{$direction}: #{$amount} !important;
74
+ }
75
+ }
76
+ }
77
+ }
78
+ }
79
+ }
80
+
81
+ @include media.on-mobile {
82
+ @each $property in margin, padding {
83
+ @each $direction in top, bottom {
84
+ @each $size, $amount in spacing.$spacing-mobile {
85
+ @if $direction == all {
86
+ .tna-\!--#{$property}-#{$size} {
87
+ #{$property}: #{$amount} !important;
88
+ }
89
+ } @else {
90
+ $combined-direction: "";
91
+ @if $direction == top or $direction == bottom {
92
+ $combined-direction: vertical;
93
+ } @else if $direction == right or $direction == left {
94
+ $combined-direction: horizontal;
95
+ }
96
+ @if $combined-direction {
97
+ .tna-\!--#{$property}-#{$direction}-#{$size},
98
+ .tna-\!--#{$property}-#{$combined-direction}-#{$size} {
99
+ #{$property}-#{$direction}: #{$amount} !important;
100
+ }
101
+ } @else {
102
+ .tna-\!--#{$property}-#{$direction}-#{$size} {
103
+ #{$property}-#{$direction}: #{$amount} !important;
104
+ }
105
+ }
106
+ }
107
+ }
108
+ }
109
+ }
110
+ }
111
+ }
@@ -12,30 +12,37 @@
12
12
  }
13
13
 
14
14
  @mixin main-font-weight {
15
- font-weight: typography.$font-weight-main;
15
+ font-weight: typography.$main-font-weight;
16
16
  }
17
17
 
18
18
  @mixin main-font-weight-bold {
19
- font-weight: typography.$font-weight-main-bold;
19
+ font-weight: typography.$main-font-weight-bold;
20
20
  }
21
21
 
22
22
  @mixin main-font {
23
- font-family: typography.$font-family-main;
23
+ font-family: typography.$main-font-family;
24
24
  @include main-font-weight;
25
25
  }
26
26
 
27
27
  @mixin heading-font {
28
- font-family: typography.$font-family-heading;
29
- font-weight: typography.$font-weight-heading;
28
+ font-family: typography.$heading-font-family;
29
+ font-weight: typography.$heading-font-weight;
30
+ }
31
+
32
+ @mixin detail-font-weight {
33
+ font-weight: typography.$detail-font-weight;
34
+ }
35
+
36
+ @mixin detail-font-weight-bold {
37
+ font-weight: typography.$detail-font-weight-bold;
30
38
  }
31
39
 
32
40
  @mixin detail-font {
33
- font-family: typography.$font-family-detail;
34
- font-weight: typography.$font-weight-detail;
41
+ font-family: typography.$detail-font-family;
42
+ @include detail-font-weight;
35
43
  }
36
44
 
37
45
  @mixin detail-font-small {
38
- @include colour.colour-font("font-dark");
39
46
  @include detail-font;
40
47
  @include relative-font-size(14);
41
48
  text-transform: uppercase;
@@ -1,6 +1,7 @@
1
1
  @use "../tools/colour";
2
2
 
3
- .tna-visually-hidden {
3
+ .tna-visually-hidden,
4
+ .tna-\!--visually-hidden {
4
5
  width: 1px !important;
5
6
  height: 1px !important;
6
7
  margin: 0 !important;
@@ -0,0 +1,100 @@
1
+ @use "../tools/colour";
2
+
3
+ :root {
4
+ @include colour.colour-css-vars;
5
+ }
6
+
7
+ .tna-template {
8
+ @include colour.colour-background("page-background");
9
+
10
+ accent-color: var(--accent);
11
+
12
+ &--system-theme {
13
+ @include colour.colour-css-vars;
14
+
15
+ @media (prefers-color-scheme: dark) {
16
+ @include colour.colour-css-vars-dark;
17
+ }
18
+
19
+ @media (prefers-contrast: more) {
20
+ @include colour.colour-css-vars-high-contrast;
21
+
22
+ * {
23
+ background-image: none !important;
24
+ }
25
+ }
26
+
27
+ @media (prefers-contrast: more) and (prefers-color-scheme: dark) {
28
+ @include colour.colour-css-vars-high-contrast-dark;
29
+ }
30
+ }
31
+
32
+ &--light-theme {
33
+ @include colour.colour-css-vars;
34
+ }
35
+
36
+ &--dark-theme {
37
+ @include colour.colour-css-vars-dark;
38
+ }
39
+
40
+ &--high-contrast-theme {
41
+ @include colour.colour-css-vars-high-contrast;
42
+
43
+ * {
44
+ background-image: none !important;
45
+ }
46
+
47
+ &.tna-template--dark-theme {
48
+ @include colour.colour-css-vars-high-contrast-dark;
49
+ }
50
+ }
51
+
52
+ &--black-accent {
53
+ @include colour.accent-css-vars("black");
54
+ }
55
+
56
+ &--yellow-accent {
57
+ @include colour.accent-css-vars("yellow");
58
+ }
59
+
60
+ &--pink-accent {
61
+ @include colour.accent-css-vars("pink");
62
+ }
63
+
64
+ &--orange-accent {
65
+ @include colour.accent-css-vars("orange");
66
+ }
67
+
68
+ &--green-accent {
69
+ @include colour.accent-css-vars("green");
70
+ }
71
+
72
+ &--blue-accent {
73
+ @include colour.accent-css-vars("blue");
74
+ }
75
+
76
+ @media (prefers-reduced-motion) {
77
+ * {
78
+ animation: none !important;
79
+ transition: none !important;
80
+ }
81
+ }
82
+ }
83
+
84
+ .tna-background {
85
+ &-tint {
86
+ @include colour.tint;
87
+ }
88
+
89
+ &-contrast {
90
+ @include colour.contrast;
91
+ }
92
+
93
+ &-accent {
94
+ @include colour.accent;
95
+ }
96
+
97
+ &-accent-light {
98
+ @include colour.accent-light;
99
+ }
100
+ }
@@ -3,10 +3,6 @@
3
3
  @use "../tools/spacing";
4
4
  @use "../variables/typography";
5
5
 
6
- :root {
7
- @include colour.colour-css-vars;
8
- }
9
-
10
6
  .tna-template {
11
7
  min-width: 320px;
12
8
  width: 100%;
@@ -23,81 +19,6 @@
23
19
  -webkit-overflow-scrolling: touch;
24
20
 
25
21
  font-size: #{typography.$relative-1rem-px}px;
26
-
27
- @include colour.colour-background("page-background");
28
-
29
- accent-color: var(--accent);
30
-
31
- &--system-theme {
32
- @include colour.colour-css-vars;
33
-
34
- @media (prefers-color-scheme: dark) {
35
- @include colour.colour-css-vars-dark;
36
- }
37
-
38
- @media (prefers-contrast: more) {
39
- @include colour.colour-css-vars-high-contrast;
40
-
41
- * {
42
- background-image: none !important;
43
- }
44
- }
45
-
46
- @media (prefers-contrast: more) and (prefers-color-scheme: dark) {
47
- @include colour.colour-css-vars-high-contrast-dark;
48
- }
49
- }
50
-
51
- &--light-theme {
52
- @include colour.colour-css-vars;
53
- }
54
-
55
- &--dark-theme {
56
- @include colour.colour-css-vars-dark;
57
- }
58
-
59
- &--high-contrast-theme {
60
- @include colour.colour-css-vars-high-contrast;
61
-
62
- * {
63
- background-image: none !important;
64
- }
65
-
66
- &.tna-template--dark-theme {
67
- @include colour.colour-css-vars-high-contrast-dark;
68
- }
69
- }
70
-
71
- &--black-accent {
72
- @include colour.accent-css-vars("black");
73
- }
74
-
75
- &--yellow-accent {
76
- @include colour.accent-css-vars("yellow");
77
- }
78
-
79
- &--pink-accent {
80
- @include colour.accent-css-vars("pink");
81
- }
82
-
83
- &--orange-accent {
84
- @include colour.accent-css-vars("orange");
85
- }
86
-
87
- &--green-accent {
88
- @include colour.accent-css-vars("green");
89
- }
90
-
91
- &--blue-accent {
92
- @include colour.accent-css-vars("blue");
93
- }
94
-
95
- @media (prefers-reduced-motion) {
96
- * {
97
- animation: none !important;
98
- transition: none !important;
99
- }
100
- }
101
22
  }
102
23
 
103
24
  .tna-template__body {
@@ -109,7 +30,7 @@
109
30
  display: flex;
110
31
  flex-direction: column;
111
32
 
112
- #main-content[role="main"] {
33
+ #main-content {
113
34
  flex: 1;
114
35
  }
115
36
  }
@@ -121,6 +42,7 @@ picture,
121
42
  video,
122
43
  canvas {
123
44
  max-width: 100%;
45
+ height: auto;
124
46
 
125
47
  display: block;
126
48
  }
@@ -169,21 +91,3 @@ hr {
169
91
  padding: 1rem;
170
92
  }
171
93
  }
172
-
173
- .tna-background {
174
- &--contrast {
175
- @include colour.invert;
176
- }
177
-
178
- &--accent {
179
- @include colour.accent;
180
- }
181
-
182
- &--accent-light {
183
- @include colour.light-accent-background;
184
- }
185
-
186
- &--tint {
187
- @include colour.tint-background;
188
- }
189
- }
@@ -1,7 +1,9 @@
1
1
  @use "a11y";
2
+ @use "colour";
2
3
  @use "columns";
3
4
  @use "debug";
4
5
  @use "global";
5
6
  @use "lists";
6
7
  @use "overrides";
8
+ @use "tables";
7
9
  @use "typography";
@@ -22,6 +22,11 @@
22
22
 
23
23
  list-style: none;
24
24
  }
25
+
26
+ .tna-ul,
27
+ .tna-ol {
28
+ margin-top: 0;
29
+ }
25
30
  }
26
31
 
27
32
  .tna-dl {
@@ -1,52 +1,32 @@
1
- @use "../variables/spacing";
1
+ @use "sass:map";
2
2
  @use "../tools/media";
3
+ @use "../tools/spacing";
3
4
 
4
- @mixin no-spacing-generator($suffix: "") {
5
- @if $suffix != "" {
6
- $suffix: "-" + $suffix;
7
- }
8
-
9
- @each $property in margin, padding {
10
- @each $direction in top, bottom {
11
- .tna-\!--no-#{$property}-#{$direction}#{$suffix},
12
- .tna-\!--no-#{$property}-vertical#{$suffix} {
13
- #{$property}-#{$direction}: 0 !important;
14
- }
15
- }
5
+ @mixin hide-on($suffix) {
6
+ .tna-\!--hide-on-#{$suffix} {
7
+ display: none;
16
8
  }
17
9
  }
18
10
 
19
- @mixin overrides($spacing, $suffix: "") {
20
- @if $suffix != "" {
21
- $suffix: "-" + $suffix;
22
- }
11
+ @include spacing.no-spacing-generator;
12
+ @include spacing.spacing-generator;
23
13
 
24
- @each $property in margin, padding {
25
- @each $direction in top, bottom {
26
- @each $size, $amount in $spacing {
27
- .tna-\!--#{$property}-#{$direction}-#{$size}#{$suffix},
28
- .tna-\!--#{$property}-vertical-#{$size}#{$suffix} {
29
- #{$property}-#{$direction}: #{$amount} !important;
30
- }
31
- }
32
- }
33
- }
14
+ @include media.on-large {
15
+ @include spacing.no-spacing-generator("large");
16
+ @include hide-on("large");
34
17
  }
35
18
 
36
- @include no-spacing-generator;
37
- @include overrides(spacing.$spacing);
38
-
39
19
  @include media.on-medium {
40
- @include no-spacing-generator("medium");
41
- @include overrides(spacing.$spacing, "medium");
20
+ @include spacing.no-spacing-generator("medium");
21
+ @include hide-on("medium");
42
22
  }
43
23
 
44
24
  @include media.on-small {
45
- @include no-spacing-generator("small");
46
- @include overrides(spacing.$spacing-mobile, "small");
25
+ @include spacing.no-spacing-generator("small");
26
+ @include hide-on("small");
47
27
  }
48
28
 
49
29
  @include media.on-tiny {
50
- @include no-spacing-generator("tiny");
51
- @include overrides(spacing.$spacing-mobile, "tiny");
30
+ @include spacing.no-spacing-generator("tiny");
31
+ @include hide-on("tiny");
52
32
  }
@@ -0,0 +1,86 @@
1
+ @use "sass:math";
2
+ @use "sass:selector";
3
+ @use "../tools/colour";
4
+ @use "../tools/media";
5
+ @use "../tools/spacing";
6
+ @use "../tools/typography";
7
+ @use "../variables/assets";
8
+ @use "../variables/grid";
9
+
10
+ .tna-table {
11
+ width: 100%;
12
+ @include spacing.space-above;
13
+
14
+ border-collapse: collapse;
15
+
16
+ text-align: left;
17
+
18
+ &:first-child {
19
+ margin-top: 0;
20
+ }
21
+
22
+ &__caption {
23
+ text-align: left;
24
+
25
+ @include typography.main-font-weight-bold;
26
+ }
27
+
28
+ &__head {
29
+ }
30
+
31
+ &__header {
32
+ }
33
+
34
+ &__body {
35
+ }
36
+
37
+ &__row {
38
+ }
39
+
40
+ &__cell {
41
+ }
42
+
43
+ &__header,
44
+ &__cell {
45
+ padding: 0.25rem 1rem;
46
+
47
+ @include colour.colour-border("keyline", 1px, solid, bottom);
48
+
49
+ &:first-child {
50
+ padding-left: 0;
51
+ }
52
+
53
+ &:last-child {
54
+ padding-right: 0;
55
+ }
56
+ }
57
+
58
+ &__head &__header {
59
+ @include colour.colour-border("keyline-dark", 0.25rem, solid, bottom);
60
+ }
61
+
62
+ p {
63
+ + p {
64
+ margin-top: 0.25rem;
65
+ }
66
+ }
67
+ }
68
+
69
+ .tna-table-wrapper {
70
+ width: 100%;
71
+ @include spacing.space-above;
72
+ padding-left: grid.$gutter-width;
73
+ padding-right: grid.$gutter-width;
74
+
75
+ position: relative;
76
+ left: -#{grid.$gutter-width};
77
+
78
+ overflow: auto;
79
+
80
+ @include media.on-tiny {
81
+ padding-left: grid.$gutter-width-tiny;
82
+ padding-right: grid.$gutter-width-tiny;
83
+
84
+ left: -#{grid.$gutter-width-tiny};
85
+ }
86
+ }